Skip to content

Commit f43b638

Browse files
authored
Track Angular scripts build option (#886)
1 parent d29ec34 commit f43b638

File tree

3 files changed

+11
-1
lines changed

3 files changed

+11
-1
lines changed

packages/knip/fixtures/plugins/angular/angular.json

+3-1
Original file line numberDiff line numberDiff line change
@@ -32,7 +32,9 @@
3232
"styles": [
3333
"src/styles.scss"
3434
],
35-
"scripts": []
35+
"scripts": [
36+
"src/script.js"
37+
]
3638
},
3739
"configurations": {
3840
"production": {

packages/knip/fixtures/plugins/angular/src/script.js

Whitespace-only changes.

packages/knip/src/plugins/angular/index.ts

+8
Original file line numberDiff line numberDiff line change
@@ -51,6 +51,12 @@ const resolveConfig: ResolveConfig<AngularCLIWorkspaceConfiguration> = async (co
5151
inputs.add(toEntry(fileReplacedBy));
5252
}
5353
}
54+
if ('scripts' in opts && opts.scripts && Array.isArray(opts.scripts)) {
55+
for (const scriptStringOrObject of opts.scripts as AngularScriptsBuildOption) {
56+
const script = typeof scriptStringOrObject === 'string' ? scriptStringOrObject : scriptStringOrObject.input;
57+
inputs.add(toProductionEntry(script));
58+
}
59+
}
5460
}
5561
if (configs) {
5662
for (const [configName, config] of Object.entries(configs)) {
@@ -96,6 +102,8 @@ const resolveConfig: ResolveConfig<AngularCLIWorkspaceConfiguration> = async (co
96102
return Array.from(inputs);
97103
};
98104

105+
type AngularScriptsBuildOption = Exclude<WebpackBrowserSchemaForBuildFacade['scripts'], undefined>;
106+
99107
const filesReplacedBy = (
100108
//👇 Using Webpack-based browser schema to support old `replaceWith` file replacements
101109
fileReplacements: Exclude<WebpackBrowserSchemaForBuildFacade['fileReplacements'], undefined>

0 commit comments

Comments
 (0)