Skip to content

Commit 47b4bf0

Browse files
committed
fix: preserve "at" after path resolution
The "at" resolution actually happens after path resolution. Apply same as in resolveFilters() entryPoints definition
1 parent cb53409 commit 47b4bf0

File tree

1 file changed

+23
-3
lines changed

1 file changed

+23
-3
lines changed

src/command/render/filters.ts

Lines changed: 23 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -888,9 +888,29 @@ async function resolveFilterExtension(
888888
// Return any contributed plugins
889889
if (filteredExtensions.length > 0) {
890890
// This matches an extension, use the contributed filters
891-
const filters = extensions[0].contributes.filters;
892-
if (filters) {
893-
return filters;
891+
const extensionFilters = extensions[0].contributes.filters;
892+
if (extensionFilters) {
893+
// After "path" resolution, "at" needs to be preserved
894+
if (typeof filter === "string") {
895+
return extensionFilters;
896+
} else if (isFilterEntryPoint(filter)) {
897+
return extensionFilters.map(extFilter => {
898+
if (typeof extFilter === "string") {
899+
return {
900+
type: extFilter.endsWith(".lua") ? "lua" : "json",
901+
path: extFilter,
902+
at: filter.at
903+
};
904+
} else {
905+
return {
906+
...extFilter,
907+
at: filter.at
908+
};
909+
}
910+
});
911+
} else {
912+
return extensionFilters;
913+
}
894914
} else {
895915
return filter;
896916
}

0 commit comments

Comments
 (0)