Skip to content
Open
Show file tree
Hide file tree
Changes from 4 commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion dist/index.js

Large diffs are not rendered by default.

13 changes: 10 additions & 3 deletions src/main.ts
Original file line number Diff line number Diff line change
Expand Up @@ -10,12 +10,19 @@ async function run() {
const output: string[] = [];
const token = core.getInput('token', {required: false});
const filtersInput = core.getInput('filters', {required: true});
const filters = filtersInput.split('\n').map(s => s.trim()).filter(s => s.length > 0);
const filters = filtersInput.split('\n').map(s => s.trim()).filter(s => s.length > 0).
map(s => {
const parts = s.split(':', 2)
const idx = parts.length == 2
? Math.max(parseInt(parts[1], 10), 1) - 1
Comment thread
giautm marked this conversation as resolved.
Outdated
: 0
return [parts[0], idx] as const
});
const changes = await getFileChanges(token);
filters.forEach((filter) => {
filters.forEach(([filter, idx]) => {
const matchList = match(changes, filter);
matchList.forEach(potentialMatch => {
const baseFolder = potentialMatch.split("/")[0];
const baseFolder = potentialMatch.split("/").slice(0, idx).join("/");
if (output.indexOf(baseFolder) === -1) {
output.push(baseFolder);
}
Expand Down
Loading