forked from angular/angular
-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathconfig.ts
More file actions
37 lines (33 loc) · 1.17 KB
/
config.ts
File metadata and controls
37 lines (33 loc) · 1.17 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
/**
* @license
* Copyright Google LLC All Rights Reserved.
*
* Use of this source code is governed by an MIT-style license that can be
* found in the LICENSE file at https://angular.dev/license
*/
import {MissingTranslationStrategy, ViewEncapsulation} from './core';
import {noUndefined} from './util';
export class CompilerConfig {
public defaultEncapsulation: ViewEncapsulation | null;
public preserveWhitespaces: boolean;
public strictInjectionParameters: boolean;
constructor({
defaultEncapsulation = ViewEncapsulation.Emulated,
preserveWhitespaces,
strictInjectionParameters,
}: {
defaultEncapsulation?: ViewEncapsulation;
preserveWhitespaces?: boolean;
strictInjectionParameters?: boolean;
} = {}) {
this.defaultEncapsulation = defaultEncapsulation;
this.preserveWhitespaces = preserveWhitespacesDefault(noUndefined(preserveWhitespaces));
this.strictInjectionParameters = strictInjectionParameters === true;
}
}
export function preserveWhitespacesDefault(
preserveWhitespacesOption: boolean | null,
defaultSetting = false,
): boolean {
return preserveWhitespacesOption === null ? defaultSetting : preserveWhitespacesOption;
}