UNPKG

4.95 kBTypeScriptView Raw
1/**
2 * Karma target options for Build Facade.
3 */
4export interface Schema {
5 /**
6 * List of static application assets.
7 */
8 assets?: AssetPattern[];
9 /**
10 * Override which browsers tests are run against.
11 */
12 browsers?: string;
13 /**
14 * Output a code coverage report.
15 */
16 codeCoverage?: boolean;
17 /**
18 * Globs to exclude from code coverage.
19 */
20 codeCoverageExclude?: string[];
21 /**
22 * Globs of files to exclude, relative to the project root.
23 */
24 exclude?: string[];
25 /**
26 * Replace compilation source files with other compilation source files in the build.
27 */
28 fileReplacements?: FileReplacement[];
29 /**
30 * Globs of files to include, relative to project root.
31 * There are 2 special cases:
32 * - when a path to directory is provided, all spec files ending ".spec.@(ts|tsx)" will be
33 * included
34 * - when a path to a file is provided, and a matching spec file exists it will be included
35 * instead.
36 */
37 include?: string[];
38 /**
39 * The stylesheet language to use for the application's inline component styles.
40 */
41 inlineStyleLanguage?: InlineStyleLanguage;
42 /**
43 * The name of the Karma configuration file.
44 */
45 karmaConfig?: string;
46 /**
47 * The name of the main entry-point file.
48 */
49 main?: string;
50 /**
51 * Enable and define the file watching poll time period in milliseconds.
52 */
53 poll?: number;
54 /**
55 * Polyfills to be included in the build.
56 */
57 polyfills?: Polyfills;
58 /**
59 * Do not use the real path when resolving modules. If unset then will default to `true` if
60 * NodeJS option --preserve-symlinks is set.
61 */
62 preserveSymlinks?: boolean;
63 /**
64 * Log progress to the console while building.
65 */
66 progress?: boolean;
67 /**
68 * Karma reporters to use. Directly passed to the karma runner.
69 */
70 reporters?: string[];
71 /**
72 * Global scripts to be included in the build.
73 */
74 scripts?: ScriptElement[];
75 /**
76 * Output source maps for scripts and styles. For more information, see
77 * https://angular.io/guide/workspace-config#source-map-configuration.
78 */
79 sourceMap?: SourceMapUnion;
80 /**
81 * Options to pass to style preprocessors
82 */
83 stylePreprocessorOptions?: StylePreprocessorOptions;
84 /**
85 * Global styles to be included in the build.
86 */
87 styles?: StyleElement[];
88 /**
89 * The name of the TypeScript configuration file.
90 */
91 tsConfig: string;
92 /**
93 * Run build when files change.
94 */
95 watch?: boolean;
96 /**
97 * TypeScript configuration for Web Worker modules.
98 */
99 webWorkerTsConfig?: string;
100}
101export type AssetPattern = AssetPatternClass | string;
102export interface AssetPatternClass {
103 /**
104 * The pattern to match.
105 */
106 glob: string;
107 /**
108 * An array of globs to ignore.
109 */
110 ignore?: string[];
111 /**
112 * The input directory path in which to apply 'glob'. Defaults to the project root.
113 */
114 input: string;
115 /**
116 * Absolute path within the output.
117 */
118 output: string;
119}
120export interface FileReplacement {
121 replace?: string;
122 replaceWith?: string;
123 src?: string;
124 with?: string;
125}
126/**
127 * The stylesheet language to use for the application's inline component styles.
128 */
129export declare enum InlineStyleLanguage {
130 Css = "css",
131 Less = "less",
132 Sass = "sass",
133 Scss = "scss"
134}
135/**
136 * Polyfills to be included in the build.
137 */
138export type Polyfills = string[] | string;
139export type ScriptElement = ScriptClass | string;
140export interface ScriptClass {
141 /**
142 * The bundle name for this extra entry point.
143 */
144 bundleName?: string;
145 /**
146 * If the bundle will be referenced in the HTML file.
147 */
148 inject?: boolean;
149 /**
150 * The file to include.
151 */
152 input: string;
153}
154/**
155 * Output source maps for scripts and styles. For more information, see
156 * https://angular.io/guide/workspace-config#source-map-configuration.
157 */
158export type SourceMapUnion = boolean | SourceMapClass;
159export interface SourceMapClass {
160 /**
161 * Output source maps for all scripts.
162 */
163 scripts?: boolean;
164 /**
165 * Output source maps for all styles.
166 */
167 styles?: boolean;
168 /**
169 * Resolve vendor packages source maps.
170 */
171 vendor?: boolean;
172}
173/**
174 * Options to pass to style preprocessors
175 */
176export interface StylePreprocessorOptions {
177 /**
178 * Paths to include. Paths will be resolved to workspace root.
179 */
180 includePaths?: string[];
181}
182export type StyleElement = StyleClass | string;
183export interface StyleClass {
184 /**
185 * The bundle name for this extra entry point.
186 */
187 bundleName?: string;
188 /**
189 * If the bundle will be referenced in the HTML file.
190 */
191 inject?: boolean;
192 /**
193 * The file to include.
194 */
195 input: string;
196}