@awc-ui/angular 1.0.0-beta.9 → 1.0.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +40 -22
- package/awc-ui.module.d.ts +15 -14
- package/directives/boolean-value-accessor.d.ts +1 -1
- package/directives/index.d.ts +1 -1
- package/directives/multi-select-value-accessor.d.ts +10 -0
- package/directives/number-value-accessor.d.ts +1 -1
- package/directives/proxies.d.ts +4 -4
- package/directives/radio-value-accessor.d.ts +36 -5
- package/directives/select-value-accessor.d.ts +2 -2
- package/directives/switch-value-accessor.d.ts +1 -1
- package/directives/text-value-accessor.d.ts +1 -1
- package/esm2022/awc-ui.module.mjs +8 -5
- package/esm2022/directives/multi-select-value-accessor.mjs +23 -0
- package/esm2022/directives/proxies.mjs +17 -16
- package/esm2022/directives/radio-value-accessor.mjs +94 -24
- package/esm2022/directives/select-value-accessor.mjs +3 -3
- package/esm2022/index.mjs +2 -1
- package/fesm2022/awc-ui-angular.mjs +138 -46
- package/fesm2022/awc-ui-angular.mjs.map +1 -1
- package/index.d.ts +12 -11
- package/package.json +4 -3
|
@@ -1,35 +1,105 @@
|
|
|
1
|
-
import { Directive } from '@angular/core';
|
|
2
|
-
import { NG_VALUE_ACCESSOR } from '@angular/forms';
|
|
1
|
+
import { Directive, Injectable, Input } from '@angular/core';
|
|
2
|
+
import { NG_VALUE_ACCESSOR, NgControl } from '@angular/forms';
|
|
3
3
|
import { ValueAccessor } from './value-accessor';
|
|
4
4
|
import * as i0 from "@angular/core";
|
|
5
|
+
/** Coordinates radios that share an Angular control or a named form group. */
|
|
6
|
+
export class RadioValueAccessorRegistry {
|
|
7
|
+
constructor() {
|
|
8
|
+
this.accessors = new Set();
|
|
9
|
+
}
|
|
10
|
+
add(accessor) { this.accessors.add(accessor); }
|
|
11
|
+
remove(accessor) { this.accessors.delete(accessor); }
|
|
12
|
+
select(accessor) {
|
|
13
|
+
for (const other of this.accessors) {
|
|
14
|
+
if (other !== accessor && accessor.isSameGroup(other))
|
|
15
|
+
other.uncheck(accessor.value);
|
|
16
|
+
}
|
|
17
|
+
}
|
|
18
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: RadioValueAccessorRegistry, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
|
|
19
|
+
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: RadioValueAccessorRegistry, providedIn: 'root' }); }
|
|
20
|
+
}
|
|
21
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: RadioValueAccessorRegistry, decorators: [{
|
|
22
|
+
type: Injectable,
|
|
23
|
+
args: [{ providedIn: 'root' }]
|
|
24
|
+
}] });
|
|
25
|
+
/**
|
|
26
|
+
* A radio's value identifies its option; the form model chooses which option
|
|
27
|
+
* is checked. Kept outside valueAccessorConfigs so Stencil cannot replace this
|
|
28
|
+
* with its generic accessor, which writes the model over the option's value.
|
|
29
|
+
*/
|
|
5
30
|
export class RadioValueAccessor extends ValueAccessor {
|
|
6
|
-
constructor(el) {
|
|
31
|
+
constructor(el, registry, injector) {
|
|
7
32
|
super(el);
|
|
33
|
+
this.registry = registry;
|
|
34
|
+
this.injector = injector;
|
|
35
|
+
this.control = null;
|
|
36
|
+
this.hasModelValue = false;
|
|
37
|
+
}
|
|
38
|
+
get value() { return this.optionValue ?? this.el.nativeElement.value; }
|
|
39
|
+
set value(value) {
|
|
40
|
+
this.optionValue = value;
|
|
41
|
+
this.el.nativeElement.value = value;
|
|
42
|
+
if (this.hasModelValue)
|
|
43
|
+
this.updateChecked();
|
|
44
|
+
}
|
|
45
|
+
get name() { return this.optionName ?? this.el.nativeElement.name ?? ''; }
|
|
46
|
+
set name(name) {
|
|
47
|
+
this.optionName = name;
|
|
48
|
+
this.el.nativeElement.name = name;
|
|
49
|
+
}
|
|
50
|
+
ngOnInit() {
|
|
51
|
+
// Resolve after construction: NG_VALUE_ACCESSOR is itself needed while
|
|
52
|
+
// Angular constructs NgControl, so injecting NgControl directly is cyclic.
|
|
53
|
+
this.control = this.injector.get(NgControl, null, { self: true });
|
|
54
|
+
if (this.control)
|
|
55
|
+
this.registry.add(this);
|
|
56
|
+
}
|
|
57
|
+
ngOnDestroy() { this.registry.remove(this); }
|
|
58
|
+
writeValue(value) {
|
|
59
|
+
this.hasModelValue = true;
|
|
60
|
+
this.lastValue = value;
|
|
61
|
+
this.updateChecked();
|
|
62
|
+
}
|
|
63
|
+
updateChecked() {
|
|
64
|
+
this.el.nativeElement.checked = this.lastValue != null && Object.is(this.lastValue, this.value);
|
|
65
|
+
}
|
|
66
|
+
handleRadioChange(event) {
|
|
67
|
+
if (!this.control || event.target !== this.el.nativeElement || !this.el.nativeElement.checked || this.el.nativeElement.disabled)
|
|
68
|
+
return;
|
|
69
|
+
this.registry.select(this);
|
|
70
|
+
super.handleChangeEvent(this.value);
|
|
71
|
+
}
|
|
72
|
+
uncheck(selectedValue) {
|
|
73
|
+
this.lastValue = selectedValue;
|
|
74
|
+
this.el.nativeElement.checked = false;
|
|
75
|
+
}
|
|
76
|
+
isSameGroup(other) {
|
|
77
|
+
const control = this.control?.control;
|
|
78
|
+
const otherControl = other.control?.control;
|
|
79
|
+
if (control && control === otherControl)
|
|
80
|
+
return true;
|
|
81
|
+
if (!this.name || this.name !== other.name)
|
|
82
|
+
return false;
|
|
83
|
+
if (control?.parent || otherControl?.parent)
|
|
84
|
+
return !!control?.parent && control.parent === otherControl?.parent;
|
|
85
|
+
const element = this.el.nativeElement;
|
|
86
|
+
const otherElement = other.el.nativeElement;
|
|
87
|
+
return element.getRootNode() === otherElement.getRootNode() && element.closest('form') === otherElement.closest('form');
|
|
8
88
|
}
|
|
9
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: RadioValueAccessor, deps: [{ token: i0.ElementRef }], target: i0.ɵɵFactoryTarget.Directive }); }
|
|
10
|
-
static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "17.3.12", type: RadioValueAccessor, isStandalone: true, selector: "md-radio", host: { listeners: { "mdChange": "
|
|
11
|
-
{
|
|
12
|
-
provide: NG_VALUE_ACCESSOR,
|
|
13
|
-
useExisting: RadioValueAccessor,
|
|
14
|
-
multi: true
|
|
15
|
-
}
|
|
16
|
-
], usesInheritance: true, ngImport: i0 }); }
|
|
89
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: RadioValueAccessor, deps: [{ token: i0.ElementRef }, { token: RadioValueAccessorRegistry }, { token: i0.Injector }], target: i0.ɵɵFactoryTarget.Directive }); }
|
|
90
|
+
static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "17.3.12", type: RadioValueAccessor, isStandalone: true, selector: "md-radio", inputs: { value: "value", name: "name" }, host: { listeners: { "mdChange": "handleRadioChange($event)" } }, providers: [{ provide: NG_VALUE_ACCESSOR, useExisting: RadioValueAccessor, multi: true }], usesInheritance: true, ngImport: i0 }); }
|
|
17
91
|
}
|
|
18
92
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: RadioValueAccessor, decorators: [{
|
|
19
93
|
type: Directive,
|
|
20
94
|
args: [{
|
|
21
|
-
/* tslint:disable-next-line:directive-selector */
|
|
22
95
|
selector: 'md-radio',
|
|
23
|
-
host: {
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
providers: [
|
|
27
|
-
{
|
|
28
|
-
provide: NG_VALUE_ACCESSOR,
|
|
29
|
-
useExisting: RadioValueAccessor,
|
|
30
|
-
multi: true
|
|
31
|
-
}
|
|
32
|
-
], standalone: true
|
|
96
|
+
host: { '(mdChange)': 'handleRadioChange($event)' },
|
|
97
|
+
providers: [{ provide: NG_VALUE_ACCESSOR, useExisting: RadioValueAccessor, multi: true }],
|
|
98
|
+
standalone: true,
|
|
33
99
|
}]
|
|
34
|
-
}], ctorParameters: () => [{ type: i0.ElementRef }]
|
|
35
|
-
|
|
100
|
+
}], ctorParameters: () => [{ type: i0.ElementRef }, { type: RadioValueAccessorRegistry }, { type: i0.Injector }], propDecorators: { value: [{
|
|
101
|
+
type: Input
|
|
102
|
+
}], name: [{
|
|
103
|
+
type: Input
|
|
104
|
+
}] } });
|
|
105
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmFkaW8tdmFsdWUtYWNjZXNzb3IuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvZGlyZWN0aXZlcy9yYWRpby12YWx1ZS1hY2Nlc3Nvci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFjLFVBQVUsRUFBWSxLQUFLLEVBQXFCLE1BQU0sZUFBZSxDQUFDO0FBQ3RHLE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxTQUFTLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUM5RCxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sa0JBQWtCLENBQUM7O0FBRWpELDhFQUE4RTtBQUU5RSxNQUFNLE9BQU8sMEJBQTBCO0lBRHZDO1FBRW1CLGNBQVMsR0FBRyxJQUFJLEdBQUcsRUFBc0IsQ0FBQztLQVU1RDtJQVJDLEdBQUcsQ0FBQyxRQUE0QixJQUFJLElBQUksQ0FBQyxTQUFTLENBQUMsR0FBRyxDQUFDLFFBQVEsQ0FBQyxDQUFDLENBQUMsQ0FBQztJQUNuRSxNQUFNLENBQUMsUUFBNEIsSUFBSSxJQUFJLENBQUMsU0FBUyxDQUFDLE1BQU0sQ0FBQyxRQUFRLENBQUMsQ0FBQyxDQUFDLENBQUM7SUFFekUsTUFBTSxDQUFDLFFBQTRCO1FBQ2pDLEtBQUssTUFBTSxLQUFLLElBQUksSUFBSSxDQUFDLFNBQVMsRUFBRSxDQUFDO1lBQ25DLElBQUksS0FBSyxLQUFLLFFBQVEsSUFBSSxRQUFRLENBQUMsV0FBVyxDQUFDLEtBQUssQ0FBQztnQkFBRSxLQUFLLENBQUMsT0FBTyxDQUFDLFFBQVEsQ0FBQyxLQUFLLENBQUMsQ0FBQztRQUN2RixDQUFDO0lBQ0gsQ0FBQzsrR0FWVSwwQkFBMEI7bUhBQTFCLDBCQUEwQixjQURiLE1BQU07OzRGQUNuQiwwQkFBMEI7a0JBRHRDLFVBQVU7bUJBQUMsRUFBRSxVQUFVLEVBQUUsTUFBTSxFQUFFOztBQWNsQzs7OztHQUlHO0FBT0gsTUFBTSxPQUFPLGtCQUFtQixTQUFRLGFB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SUFBSTtpQkFDakI7NElBWUssS0FBSztzQkFEUixLQUFLO2dCQVNGLElBQUk7c0JBRFAsS0FBSyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IERpcmVjdGl2ZSwgRWxlbWVudFJlZiwgSW5qZWN0YWJsZSwgSW5qZWN0b3IsIElucHV0LCBPbkRlc3Ryb3ksIE9uSW5pdCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgTkdfVkFMVUVfQUNDRVNTT1IsIE5nQ29udHJvbCB9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcbmltcG9ydCB7IFZhbHVlQWNjZXNzb3IgfSBmcm9tICcuL3ZhbHVlLWFjY2Vzc29yJztcblxuLyoqIENvb3JkaW5hdGVzIHJhZGlvcyB0aGF0IHNoYXJlIGFuIEFuZ3VsYXIgY29udHJvbCBvciBhIG5hbWVkIGZvcm0gZ3JvdXAuICovXG5ASW5qZWN0YWJsZSh7IHByb3ZpZGVkSW46ICdyb290JyB9KVxuZXhwb3J0IGNsYXNzIFJhZGlvVmFsdWVBY2Nlc3NvclJlZ2lzdHJ5IHtcbiAgcHJpdmF0ZSByZWFkb25seSBhY2Nlc3NvcnMgPSBuZXcgU2V0PFJhZGlvVmFsdWVBY2Nlc3Nvcj4oKTtcblxuICBhZGQoYWNjZXNzb3I6IFJhZGlvVmFsdWVBY2Nlc3NvcikgeyB0aGlzLmFjY2Vzc29ycy5hZGQoYWNjZXNzb3IpOyB9XG4gIHJlbW92ZShhY2Nlc3NvcjogUmFkaW9WYWx1ZUFjY2Vzc29yKSB7IHRoaXMuYWNjZXNzb3JzLmRlbGV0ZShhY2Nlc3Nvcik7IH1cblxuICBzZWxlY3QoYWNjZXNzb3I6IFJhZGlvVmFsdWVBY2Nlc3Nvcikge1xuICAgIGZvciAoY29uc3Qgb3RoZXIgb2YgdGhpcy5hY2Nlc3NvcnMpIHtcbiAgICAgIGlmIChvdGhlciAhPT0gYWNjZXNzb3IgJiYgYWNjZXNzb3IuaXNTYW1lR3JvdXAob3RoZXIpKSBvdGhlci51bmNoZWNrKGFjY2Vzc29yLnZhbHVlKTtcbiAgICB9XG4gIH1cbn1cblxuLyoqXG4gKiBBIHJhZGlvJ3MgdmFsdWUgaWRlbnRpZmllcyBpdHMgb3B0aW9uOyB0aGUgZm9ybSBtb2RlbCBjaG9vc2VzIHdoaWNoIG9wdGlvblxuICogaXMgY2hlY2tlZC4gS2VwdCBvdXRzaWRlIHZhbHVlQWNjZXNzb3JDb25maWdzIHNvIFN0ZW5jaWwgY2Fubm90IHJlcGxhY2UgdGhpc1xuICogd2l0aCBpdHMgZ2VuZXJpYyBhY2Nlc3Nvciwgd2hpY2ggd3JpdGVzIHRoZSBtb2RlbCBvdmVyIHRoZSBvcHRpb24ncyB2YWx1ZS5cbiAqL1xuQERpcmVjdGl2ZSh7XG4gIHNlbGVjdG9yOiAnbWQtcmFkaW8nLFxuICBob3N0OiB7ICcobWRDaGFuZ2UpJzogJ2hhbmRsZVJhZGlvQ2hhbmdlKCRldmVudCknIH0sXG4gIHByb3ZpZGVyczogW3sgcHJvdmlkZTogTkdfVkFMVUVfQUNDRVNTT1IsIHVzZUV4aXN0aW5nOiBSYWRpb1ZhbHVlQWNjZXNzb3IsIG11bHRpOiB0cnVlIH1dLFxuICBzdGFuZGFsb25lOiB0cnVlLFxufSlcbmV4cG9ydCBjbGFzcyBSYWRpb1ZhbHVlQWNjZXNzb3IgZXh0ZW5kcyBWYWx1ZUFjY2Vzc29yIGltcGxlbWVudHMgT25Jbml0LCBPbkRlc3Ryb3kge1xuICBwcml2YXRlIGNvbnRyb2w6IE5nQ29udHJvbCB8IG51bGwgPSBudWxsO1xuICBwcml2YXRlIGhhc01vZGVsVmFsdWUgPSBmYWxzZTtcbiAgcHJpdmF0ZSBvcHRpb25WYWx1ZTogdW5rbm93bjtcbiAgcHJpdmF0ZSBvcHRpb25OYW1lOiBzdHJpbmcgfCB1bmRlZmluZWQ7XG5cbiAgY29uc3RydWN0b3IoZWw6IEVsZW1lbnRSZWYsIHByaXZhdGUgcmVnaXN0cnk6IFJhZGlvVmFsdWVBY2Nlc3NvclJlZ2lzdHJ5LCBwcml2YXRlIGluamVjdG9yOiBJbmplY3Rvcikge1xuICAgIHN1cGVyKGVsKTtcbiAgfVxuXG4gIEBJbnB1dCgpXG4gIGdldCB2YWx1ZSgpOiB1bmtub3duIHsgcmV0dXJuIHRoaXMub3B0aW9uVmFsdWUgPz8gdGhpcy5lbC5uYXRpdmVFbGVtZW50LnZhbHVlOyB9XG4gIHNldCB2YWx1ZSh2YWx1ZTogdW5rbm93bikge1xuICAgIHRoaXMub3B0aW9uVmFsdWUgPSB2YWx1ZTtcbiAgICB0aGlzLmVsLm5hdGl2ZUVsZW1lbnQudmFsdWUgPSB2YWx1ZTtcbiAgICBpZiAodGhpcy5oYXNNb2RlbFZhbHVlKSB0aGlzLnVwZGF0ZUNoZWNrZWQoKTtcbiAgfVxuXG4gIEBJbnB1dCgpXG4gIGdldCBuYW1lKCk6IHN0cmluZyB7IHJldHVybiB0aGlzLm9wdGlvbk5hbWUgPz8gdGhpcy5lbC5uYXRpdmVFbGVtZW50Lm5hbWUgPz8gJyc7IH1cbiAgc2V0IG5hbWUobmFtZTogc3RyaW5nKSB7XG4gICAgdGhpcy5vcHRpb25OYW1lID0gbmFtZTtcbiAgICB0aGlzLmVsLm5hdGl2ZUVsZW1lbnQubmFtZSA9IG5hbWU7XG4gIH1cblxuICBuZ09uSW5pdCgpIHtcbiAgICAvLyBSZXNvbHZlIGFmdGVyIGNvbnN0cnVjdGlvbjogTkdfVkFMVUVfQUNDRVNTT1IgaXMgaXRzZWxmIG5lZWRlZCB3aGlsZVxuICAgIC8vIEFuZ3VsYXIgY29uc3RydWN0cyBOZ0NvbnRyb2wsIHNvIGluamVjdGluZyBOZ0NvbnRyb2wgZGlyZWN0bHkgaXMgY3ljbGljLlxuICAgIHRoaXMuY29udHJvbCA9IHRoaXMuaW5qZWN0b3IuZ2V0KE5nQ29udHJvbCwgbnVsbCwgeyBzZWxmOiB0cnVlIH0pO1xuICAgIGlmICh0aGlzLmNvbnRyb2wpIHRoaXMucmVnaXN0cnkuYWRkKHRoaXMpO1xuICB9XG5cbiAgbmdPbkRlc3Ryb3koKSB7IHRoaXMucmVnaXN0cnkucmVtb3ZlKHRoaXMpOyB9XG5cbiAgb3ZlcnJpZGUgd3JpdGVWYWx1ZSh2YWx1ZTogdW5rbm93bikge1xuICAgIHRoaXMuaGFzTW9kZWxWYWx1ZSA9IHRydWU7XG4gICAgdGhpcy5sYXN0VmFsdWUgPSB2YWx1ZTtcbiAgICB0aGlzLnVwZGF0ZUNoZWNrZWQoKTtcbiAgfVxuXG4gIHByaXZhdGUgdXBkYXRlQ2hlY2tlZCgpIHtcbiAgICB0aGlzLmVsLm5hdGl2ZUVsZW1lbnQuY2hlY2tlZCA9IHRoaXMubGFzdFZhbHVlICE9IG51bGwgJiYgT2JqZWN0LmlzKHRoaXMubGFzdFZhbHVlLCB0aGlzLnZhbHVlKTtcbiAgfVxuXG4gIGhhbmRsZVJhZGlvQ2hhbmdlKGV2ZW50OiBFdmVudCkge1xuICAgIGlmICghdGhpcy5jb250cm9sIHx8IGV2ZW50LnRhcmdldCAhPT0gdGhpcy5lbC5uYXRpdmVFbGVtZW50IHx8ICF0aGlzLmVsLm5hdGl2ZUVsZW1lbnQuY2hlY2tlZCB8fCB0aGlzLmVsLm5hdGl2ZUVsZW1lbnQuZGlzYWJsZWQpIHJldHVybjtcbiAgICB0aGlzLnJlZ2lzdHJ5LnNlbGVjdCh0aGlzKTtcbiAgICBzdXBlci5oYW5kbGVDaGFuZ2VFdmVudCh0aGlzLnZhbHVlKTtcbiAgfVxuXG4gIHVuY2hlY2soc2VsZWN0ZWRWYWx1ZTogdW5rbm93bikge1xuICAgIHRoaXMubGFzdFZhbHVlID0gc2VsZWN0ZWRWYWx1ZTtcbiAgICB0aGlzLmVsLm5hdGl2ZUVsZW1lbnQuY2hlY2tlZCA9IGZhbHNlO1xuICB9XG5cbiAgaXNTYW1lR3JvdXAob3RoZXI6IFJhZGlvVmFsdWVBY2Nlc3Nvcik6IGJvb2xlYW4ge1xuICAgIGNvbnN0IGNvbnRyb2wgPSB0aGlzLmNvbnRyb2w/LmNvbnRyb2w7XG4gICAgY29uc3Qgb3RoZXJDb250cm9sID0gb3RoZXIuY29udHJvbD8uY29udHJvbDtcbiAgICBpZiAoY29udHJvbCAmJiBjb250cm9sID09PSBvdGhlckNvbnRyb2wpIHJldHVybiB0cnVlO1xuICAgIGlmICghdGhpcy5uYW1lIHx8IHRoaXMubmFtZSAhPT0gb3RoZXIubmFtZSkgcmV0dXJuIGZhbHNlO1xuICAgIGlmIChjb250cm9sPy5wYXJlbnQgfHwgb3RoZXJDb250cm9sPy5wYXJlbnQpIHJldHVybiAhIWNvbnRyb2w/LnBhcmVudCAmJiBjb250cm9sLnBhcmVudCA9PT0gb3RoZXJDb250cm9sPy5wYXJlbnQ7XG4gICAgY29uc3QgZWxlbWVudCA9IHRoaXMuZWwubmF0aXZlRWxlbWVudDtcbiAgICBjb25zdCBvdGhlckVsZW1lbnQgPSBvdGhlci5lbC5uYXRpdmVFbGVtZW50O1xuICAgIHJldHVybiBlbGVtZW50LmdldFJvb3ROb2RlKCkgPT09IG90aGVyRWxlbWVudC5nZXRSb290Tm9kZSgpICYmIGVsZW1lbnQuY2xvc2VzdCgnZm9ybScpID09PSBvdGhlckVsZW1lbnQuY2xvc2VzdCgnZm9ybScpO1xuICB9XG59XG4iXX0=
|
|
@@ -7,7 +7,7 @@ export class SelectValueAccessor extends ValueAccessor {
|
|
|
7
7
|
super(el);
|
|
8
8
|
}
|
|
9
9
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: SelectValueAccessor, deps: [{ token: i0.ElementRef }], target: i0.ɵɵFactoryTarget.Directive }); }
|
|
10
|
-
static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "17.3.12", type: SelectValueAccessor, isStandalone: true, selector: "md-select, md-
|
|
10
|
+
static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "17.3.12", type: SelectValueAccessor, isStandalone: true, selector: "md-select, md-date-picker, md-time-picker", host: { listeners: { "mdChange": "handleChangeEvent($event.target.value)" } }, providers: [
|
|
11
11
|
{
|
|
12
12
|
provide: NG_VALUE_ACCESSOR,
|
|
13
13
|
useExisting: SelectValueAccessor,
|
|
@@ -19,7 +19,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImpo
|
|
|
19
19
|
type: Directive,
|
|
20
20
|
args: [{
|
|
21
21
|
/* tslint:disable-next-line:directive-selector */
|
|
22
|
-
selector: 'md-select, md-
|
|
22
|
+
selector: 'md-select, md-date-picker, md-time-picker',
|
|
23
23
|
host: {
|
|
24
24
|
'(mdChange)': 'handleChangeEvent($event.target.value)'
|
|
25
25
|
},
|
|
@@ -32,4 +32,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImpo
|
|
|
32
32
|
], standalone: true
|
|
33
33
|
}]
|
|
34
34
|
}], ctorParameters: () => [{ type: i0.ElementRef }] });
|
|
35
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
35
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2VsZWN0LXZhbHVlLWFjY2Vzc29yLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL2RpcmVjdGl2ZXMvc2VsZWN0LXZhbHVlLWFjY2Vzc29yLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQWMsTUFBTSxlQUFlLENBQUM7QUFDdEQsT0FBTyxFQUFFLGlCQUFpQixFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFFbkQsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLGtCQUFrQixDQUFDOztBQWdCakQsTUFBTSxPQUFPLG1CQUFvQixTQUFRLGFBQWE7SUFDcEQsWUFBWSxFQUFjO1FBQ3hCLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQztJQUNaLENBQUM7K0dBSFUsbUJBQW1CO21HQUFuQixtQkFBbUIsdUtBUm5CO1lBQ1Q7Z0JBQ0UsT0FBTyxFQUFFLGlCQUFpQjtnQkFDMUIsV0FBVyxFQUFFLG1CQUFtQjtnQkFDaEMsS0FBSyxFQUFFLElBQUk7YUFDWjtTQUNGOzs0RkFFVSxtQkFBbUI7a0JBZC9CLFNBQVM7bUJBQUM7b0JBQ1QsaURBQWlEO29CQUNqRCxRQUFRLEVBQUUsMkNBQTJDO29CQUNyRCxJQUFJLEVBQUU7d0JBQ0osWUFBWSxFQUFFLHdDQUF3QztxQkFDdkQ7b0JBQ0QsU0FBUyxFQUFFO3dCQUNUOzRCQUNFLE9BQU8sRUFBRSxpQkFBaUI7NEJBQzFCLFdBQVcscUJBQXFCOzRCQUNoQyxLQUFLLEVBQUUsSUFBSTt5QkFDWjtxQkFDRixFQUFDLFVBQVUsRUFBRSxJQUFJO2lCQUNuQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IERpcmVjdGl2ZSwgRWxlbWVudFJlZiB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgTkdfVkFMVUVfQUNDRVNTT1IgfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XG5cbmltcG9ydCB7IFZhbHVlQWNjZXNzb3IgfSBmcm9tICcuL3ZhbHVlLWFjY2Vzc29yJztcblxuQERpcmVjdGl2ZSh7XG4gIC8qIHRzbGludDpkaXNhYmxlLW5leHQtbGluZTpkaXJlY3RpdmUtc2VsZWN0b3IgKi9cbiAgc2VsZWN0b3I6ICdtZC1zZWxlY3QsIG1kLWRhdGUtcGlja2VyLCBtZC10aW1lLXBpY2tlcicsXG4gIGhvc3Q6IHtcbiAgICAnKG1kQ2hhbmdlKSc6ICdoYW5kbGVDaGFuZ2VFdmVudCgkZXZlbnQudGFyZ2V0LnZhbHVlKSdcbiAgfSxcbiAgcHJvdmlkZXJzOiBbXG4gICAge1xuICAgICAgcHJvdmlkZTogTkdfVkFMVUVfQUNDRVNTT1IsXG4gICAgICB1c2VFeGlzdGluZzogU2VsZWN0VmFsdWVBY2Nlc3NvcixcbiAgICAgIG11bHRpOiB0cnVlXG4gICAgfVxuICBdLHN0YW5kYWxvbmU6IHRydWVcbn0pXG5leHBvcnQgY2xhc3MgU2VsZWN0VmFsdWVBY2Nlc3NvciBleHRlbmRzIFZhbHVlQWNjZXNzb3Ige1xuICBjb25zdHJ1Y3RvcihlbDogRWxlbWVudFJlZikge1xuICAgIHN1cGVyKGVsKTtcbiAgfVxufVxuIl19
|
package/esm2022/index.mjs
CHANGED
|
@@ -12,4 +12,5 @@ export { BooleanValueAccessor } from './directives/boolean-value-accessor';
|
|
|
12
12
|
export { RadioValueAccessor } from './directives/radio-value-accessor';
|
|
13
13
|
export { NumericValueAccessor } from './directives/number-value-accessor';
|
|
14
14
|
export { SwitchValueAccessor } from './directives/switch-value-accessor';
|
|
15
|
-
|
|
15
|
+
export { MultiSelectValueAccessor } from './directives/multi-select-value-accessor';
|
|
16
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFdBQVcsRUFBRSxZQUFZLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUM1RCxjQUFjLG9CQUFvQixDQUFDO0FBQ25DLGNBQWMsc0JBQXNCLENBQUM7QUFFckMsMkVBQTJFO0FBQzNFLDJFQUEyRTtBQUMzRSx3REFBd0Q7QUFDeEQsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQ2xELE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSw2QkFBNkIsQ0FBQztBQUM1RCxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSxrQ0FBa0MsQ0FBQztBQUNyRSxPQUFPLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSxvQ0FBb0MsQ0FBQztBQUN6RSxPQUFPLEVBQUUsb0JBQW9CLEVBQUUsTUFBTSxxQ0FBcUMsQ0FBQztBQUMzRSxPQUFPLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSxtQ0FBbUMsQ0FBQztBQUN2RSxPQUFPLEVBQUUsb0JBQW9CLEVBQUUsTUFBTSxvQ0FBb0MsQ0FBQztBQUMxRSxPQUFPLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSxvQ0FBb0MsQ0FBQztBQUN6RSxPQUFPLEVBQUUsd0JBQXdCLEVBQUUsTUFBTSwwQ0FBMEMsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCB7IEF3Y1VpTW9kdWxlLCBwcm92aWRlQXdjVWkgfSBmcm9tICcuL2F3Yy11aS5tb2R1bGUnO1xuZXhwb3J0ICogZnJvbSAnLi9kaXJlY3RpdmVzL2luZGV4JztcbmV4cG9ydCAqIGZyb20gJy4vZGlyZWN0aXZlcy9wcm94aWVzJztcblxuLy8gVmFsdWUgYWNjZXNzb3JzIG11c3QgYmUgZXhwb3J0ZWQgZnJvbSB0aGUgdG9wLWxldmVsIGVudHJ5cG9pbnQ6IHRoZXkgYXJlXG4vLyB2aXNpYmxlIHRvIGNvbnN1bWVycyB0aHJvdWdoIEF3Y1VpTW9kdWxlLCBhbmQgQW5ndWxhcidzIHBhcnRpYWwgY29tcGlsZXJcbi8vIHJlamVjdHMgYSBkZWNsYXJlZC1idXQtdW5leHBvcnRlZCBkaXJlY3RpdmUgKE5HMzAwMSkuXG5leHBvcnQgeyBWQUxVRV9BQ0NFU1NPUlMgfSBmcm9tICcuL2F3Yy11aS5tb2R1bGUnO1xuZXhwb3J0IHsgVmFsdWVBY2Nlc3NvciB9IGZyb20gJy4vZGlyZWN0aXZlcy92YWx1ZS1hY2Nlc3Nvcic7XG5leHBvcnQgeyBUZXh0VmFsdWVBY2Nlc3NvciB9IGZyb20gJy4vZGlyZWN0aXZlcy90ZXh0LXZhbHVlLWFjY2Vzc29yJztcbmV4cG9ydCB7IFNlbGVjdFZhbHVlQWNjZXNzb3IgfSBmcm9tICcuL2RpcmVjdGl2ZXMvc2VsZWN0LXZhbHVlLWFjY2Vzc29yJztcbmV4cG9ydCB7IEJvb2xlYW5WYWx1ZUFjY2Vzc29yIH0gZnJvbSAnLi9kaXJlY3RpdmVzL2Jvb2xlYW4tdmFsdWUtYWNjZXNzb3InO1xuZXhwb3J0IHsgUmFkaW9WYWx1ZUFjY2Vzc29yIH0gZnJvbSAnLi9kaXJlY3RpdmVzL3JhZGlvLXZhbHVlLWFjY2Vzc29yJztcbmV4cG9ydCB7IE51bWVyaWNWYWx1ZUFjY2Vzc29yIH0gZnJvbSAnLi9kaXJlY3RpdmVzL251bWJlci12YWx1ZS1hY2Nlc3Nvcic7XG5leHBvcnQgeyBTd2l0Y2hWYWx1ZUFjY2Vzc29yIH0gZnJvbSAnLi9kaXJlY3RpdmVzL3N3aXRjaC12YWx1ZS1hY2Nlc3Nvcic7XG5leHBvcnQgeyBNdWx0aVNlbGVjdFZhbHVlQWNjZXNzb3IgfSBmcm9tICcuL2RpcmVjdGl2ZXMvbXVsdGktc2VsZWN0LXZhbHVlLWFjY2Vzc29yJztcbiJdfQ==
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import * as i0 from '@angular/core';
|
|
2
|
-
import { ChangeDetectionStrategy, Component, HostListener, Directive, APP_INITIALIZER, CUSTOM_ELEMENTS_SCHEMA, NgModule } from '@angular/core';
|
|
2
|
+
import { ChangeDetectionStrategy, Component, HostListener, Directive, Injectable, Input, APP_INITIALIZER, CUSTOM_ELEMENTS_SCHEMA, NgModule } from '@angular/core';
|
|
3
3
|
import { CommonModule } from '@angular/common';
|
|
4
4
|
import { defineCustomElements } from '@awc-ui/core/loader';
|
|
5
5
|
import { __decorate } from 'tslib';
|
|
@@ -85,7 +85,7 @@ import { defineCustomElement as defineCustomElement$1e } from '@awc-ui/core/dist
|
|
|
85
85
|
import { defineCustomElement as defineCustomElement$1f } from '@awc-ui/core/dist/components/md-toolbar.js';
|
|
86
86
|
import { defineCustomElement as defineCustomElement$1g } from '@awc-ui/core/dist/components/md-tooltip.js';
|
|
87
87
|
import { defineCustomElement as defineCustomElement$1h } from '@awc-ui/core/dist/components/md-transfer-list.js';
|
|
88
|
-
import { NG_VALUE_ACCESSOR } from '@angular/forms';
|
|
88
|
+
import { NG_VALUE_ACCESSOR, NgControl } from '@angular/forms';
|
|
89
89
|
|
|
90
90
|
/* eslint-disable */
|
|
91
91
|
/* tslint:disable */
|
|
@@ -591,12 +591,12 @@ let MdColorPicker = class MdColorPicker {
|
|
|
591
591
|
proxyOutputs(this, this.el, ['mdInput', 'mdChange', 'mdOpenChange']);
|
|
592
592
|
}
|
|
593
593
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: MdColorPicker, deps: [{ token: i0.ChangeDetectorRef }, { token: i0.ElementRef }, { token: i0.NgZone }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
594
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.12", type: MdColorPicker, isStandalone: true, selector: "md-color-picker", inputs: { alpha: "alpha", ariaLabelProp: "ariaLabelProp", density: "density", disabled: "disabled", dismissOnOutsideClick: "dismissOnOutsideClick", format: "format", open: "open", presets: "presets", showHex: "showHex", showInputs: "showInputs", value: "value", variant: "variant" }, ngImport: i0, template: '<ng-content></ng-content>', isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
|
|
594
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.12", type: MdColorPicker, isStandalone: true, selector: "md-color-picker", inputs: { alpha: "alpha", ariaLabelProp: "ariaLabelProp", density: "density", disabled: "disabled", dismissOnOutsideClick: "dismissOnOutsideClick", format: "format", locale: "locale", open: "open", presets: "presets", showHex: "showHex", showInputs: "showInputs", value: "value", variant: "variant" }, ngImport: i0, template: '<ng-content></ng-content>', isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
|
|
595
595
|
};
|
|
596
596
|
MdColorPicker = __decorate([
|
|
597
597
|
ProxyCmp({
|
|
598
598
|
defineCustomElementFn: defineCustomElement$h,
|
|
599
|
-
inputs: ['alpha', 'ariaLabelProp', 'density', 'disabled', 'dismissOnOutsideClick', 'format', 'open', 'presets', 'showHex', 'showInputs', 'value', 'variant'],
|
|
599
|
+
inputs: ['alpha', 'ariaLabelProp', 'density', 'disabled', 'dismissOnOutsideClick', 'format', 'locale', 'open', 'presets', 'showHex', 'showInputs', 'value', 'variant'],
|
|
600
600
|
methods: ['show', 'close']
|
|
601
601
|
})
|
|
602
602
|
], MdColorPicker);
|
|
@@ -607,7 +607,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImpo
|
|
|
607
607
|
changeDetection: ChangeDetectionStrategy.OnPush,
|
|
608
608
|
template: '<ng-content></ng-content>',
|
|
609
609
|
// eslint-disable-next-line @angular-eslint/no-inputs-metadata-property
|
|
610
|
-
inputs: ['alpha', 'ariaLabelProp', 'density', 'disabled', 'dismissOnOutsideClick', 'format', 'open', 'presets', 'showHex', 'showInputs', 'value', 'variant'],
|
|
610
|
+
inputs: ['alpha', 'ariaLabelProp', 'density', 'disabled', 'dismissOnOutsideClick', 'format', 'locale', 'open', 'presets', 'showHex', 'showInputs', 'value', 'variant'],
|
|
611
611
|
standalone: true
|
|
612
612
|
}]
|
|
613
613
|
}], ctorParameters: () => [{ type: i0.ChangeDetectorRef }, { type: i0.ElementRef }, { type: i0.NgZone }] });
|
|
@@ -653,7 +653,7 @@ MdDialog = __decorate([
|
|
|
653
653
|
ProxyCmp({
|
|
654
654
|
defineCustomElementFn: defineCustomElement$j,
|
|
655
655
|
inputs: ['cancelLabel', 'closeLabel', 'density', 'divider', 'fullscreen', 'headerDivider', 'headline', 'icon', 'locale', 'okLabel', 'open', 'scrimDismissible'],
|
|
656
|
-
methods: ['show', 'close']
|
|
656
|
+
methods: ['show', 'whenClosed', 'close']
|
|
657
657
|
})
|
|
658
658
|
], MdDialog);
|
|
659
659
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: MdDialog, decorators: [{
|
|
@@ -706,7 +706,8 @@ let MdFab = class MdFab {
|
|
|
706
706
|
MdFab = __decorate([
|
|
707
707
|
ProxyCmp({
|
|
708
708
|
defineCustomElementFn: defineCustomElement$l,
|
|
709
|
-
inputs: ['density', 'disabled', 'extended', 'icon', 'label', 'lowered', 'ripple', 'size', 'softDisabled', 'variant']
|
|
709
|
+
inputs: ['density', 'disabled', 'extended', 'icon', 'label', 'lowered', 'ripple', 'size', 'softDisabled', 'variant'],
|
|
710
|
+
methods: ['setMenuIcon']
|
|
710
711
|
})
|
|
711
712
|
], MdFab);
|
|
712
713
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: MdFab, decorators: [{
|
|
@@ -734,7 +735,7 @@ MdFabMenu = __decorate([
|
|
|
734
735
|
ProxyCmp({
|
|
735
736
|
defineCustomElementFn: defineCustomElement$m,
|
|
736
737
|
inputs: ['anchor', 'density', 'menuLabel', 'open', 'placement', 'quick', 'variant'],
|
|
737
|
-
methods: ['show', 'close']
|
|
738
|
+
methods: ['show', 'whenClosed', 'close']
|
|
738
739
|
})
|
|
739
740
|
], MdFabMenu);
|
|
740
741
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: MdFabMenu, decorators: [{
|
|
@@ -926,7 +927,7 @@ MdMenu = __decorate([
|
|
|
926
927
|
ProxyCmp({
|
|
927
928
|
defineCustomElementFn: defineCustomElement$t,
|
|
928
929
|
inputs: ['anchor', 'autoFocus', 'density', 'emptyText', 'layout', 'listLabel', 'listbox', 'matchAnchorWidth', 'maxHeight', 'open', 'persistent', 'placement', 'quick', 'responsive', 'useGap', 'variant'],
|
|
929
|
-
methods: ['setComboboxElement', 'setVirtualProvider', 'getScrollViewport', 'show', 'reposition', 'close']
|
|
930
|
+
methods: ['setComboboxElement', 'setVirtualProvider', 'getScrollViewport', 'show', 'reposition', 'whenClosed', 'close']
|
|
930
931
|
})
|
|
931
932
|
], MdMenu);
|
|
932
933
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: MdMenu, decorators: [{
|
|
@@ -1394,7 +1395,7 @@ MdSearch = __decorate([
|
|
|
1394
1395
|
ProxyCmp({
|
|
1395
1396
|
defineCustomElementFn: defineCustomElement$K,
|
|
1396
1397
|
inputs: ['announceResults', 'debounce', 'density', 'disabled', 'dismissOnOutsideClick', 'elevation', 'escapeCloses', 'fullWidth', 'initialFocus', 'inputAriaLabel', 'layout', 'leadingIcon', 'loading', 'loadingLabel', 'maxBlockSize', 'noResultsLabel', 'open', 'openLeadingIcon', 'placeholder', 'resultsLabel', 'scrollShadow', 'showClearButton', 'throttle', 'trigger', 'triggerElement', 'triggerFor', 'triggerIcon', 'value', 'variant', 'voiceSearch'],
|
|
1397
|
-
methods: ['show', 'close', 'toggle', 'focusInput', 'startVoice', 'stopVoice']
|
|
1398
|
+
methods: ['show', 'close', 'whenClosed', 'toggle', 'focusInput', 'startVoice', 'stopVoice']
|
|
1398
1399
|
})
|
|
1399
1400
|
], MdSearch);
|
|
1400
1401
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: MdSearch, decorators: [{
|
|
@@ -1531,7 +1532,7 @@ MdSideSheet = __decorate([
|
|
|
1531
1532
|
ProxyCmp({
|
|
1532
1533
|
defineCustomElementFn: defineCustomElement$P,
|
|
1533
1534
|
inputs: ['bottomDivider', 'closeable', 'density', 'detached', 'headline', 'open', 'scrimDismissible', 'sheetAriaLabel', 'showBack', 'side', 'topDivider', 'variant'],
|
|
1534
|
-
methods: ['show', 'close']
|
|
1535
|
+
methods: ['show', 'whenClosed', 'close']
|
|
1535
1536
|
})
|
|
1536
1537
|
], MdSideSheet);
|
|
1537
1538
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: MdSideSheet, decorators: [{
|
|
@@ -2142,12 +2143,12 @@ let MdTableSortLabel = class MdTableSortLabel {
|
|
|
2142
2143
|
proxyOutputs(this, this.el, ['mdSortRequest']);
|
|
2143
2144
|
}
|
|
2144
2145
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: MdTableSortLabel, deps: [{ token: i0.ChangeDetectorRef }, { token: i0.ElementRef }, { token: i0.NgZone }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
2145
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.12", type: MdTableSortLabel, isStandalone: true, selector: "md-table-sort-label", inputs: { active: "active", column: "column", defaultOrder: "defaultOrder", density: "density", disabled: "disabled", icon: "icon", iconPosition: "iconPosition", inactiveIcon: "inactiveIcon", order: "order" }, ngImport: i0, template: '<ng-content></ng-content>', isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
|
|
2146
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.12", type: MdTableSortLabel, isStandalone: true, selector: "md-table-sort-label", inputs: { active: "active", column: "column", defaultOrder: "defaultOrder", density: "density", disabled: "disabled", icon: "icon", iconPosition: "iconPosition", inactiveIcon: "inactiveIcon", order: "order", sortedAscendingLabel: "sortedAscendingLabel", sortedDescendingLabel: "sortedDescendingLabel" }, ngImport: i0, template: '<ng-content></ng-content>', isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
|
|
2146
2147
|
};
|
|
2147
2148
|
MdTableSortLabel = __decorate([
|
|
2148
2149
|
ProxyCmp({
|
|
2149
2150
|
defineCustomElementFn: defineCustomElement$1a,
|
|
2150
|
-
inputs: ['active', 'column', 'defaultOrder', 'density', 'disabled', 'icon', 'iconPosition', 'inactiveIcon', 'order']
|
|
2151
|
+
inputs: ['active', 'column', 'defaultOrder', 'density', 'disabled', 'icon', 'iconPosition', 'inactiveIcon', 'order', 'sortedAscendingLabel', 'sortedDescendingLabel']
|
|
2151
2152
|
})
|
|
2152
2153
|
], MdTableSortLabel);
|
|
2153
2154
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: MdTableSortLabel, decorators: [{
|
|
@@ -2157,7 +2158,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImpo
|
|
|
2157
2158
|
changeDetection: ChangeDetectionStrategy.OnPush,
|
|
2158
2159
|
template: '<ng-content></ng-content>',
|
|
2159
2160
|
// eslint-disable-next-line @angular-eslint/no-inputs-metadata-property
|
|
2160
|
-
inputs: ['active', 'column', 'defaultOrder', 'density', 'disabled', 'icon', 'iconPosition', 'inactiveIcon', 'order'],
|
|
2161
|
+
inputs: ['active', 'column', 'defaultOrder', 'density', 'disabled', 'icon', 'iconPosition', 'inactiveIcon', 'order', 'sortedAscendingLabel', 'sortedDescendingLabel'],
|
|
2161
2162
|
standalone: true
|
|
2162
2163
|
}]
|
|
2163
2164
|
}], ctorParameters: () => [{ type: i0.ChangeDetectorRef }, { type: i0.ElementRef }, { type: i0.NgZone }] });
|
|
@@ -2223,12 +2224,12 @@ let MdTextField = class MdTextField {
|
|
|
2223
2224
|
proxyOutputs(this, this.el, ['mdInput', 'mdChange', 'mdSearch', 'mdClear', 'mdPasswordToggle', 'mdSpeechResult', 'mdValidityChange']);
|
|
2224
2225
|
}
|
|
2225
2226
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: MdTextField, deps: [{ token: i0.ChangeDetectorRef }, { token: i0.ElementRef }, { token: i0.NgZone }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
2226
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.12", type: MdTextField, isStandalone: true, selector: "md-text-field", inputs: { appearFocused: "appearFocused", autoCapitalize: "autoCapitalize", autocomplete: "autocomplete", chipsWrap: "chipsWrap", clearable: "clearable", debounce: "debounce", density: "density", disabled: "disabled", enterKeyHint: "enterKeyHint", error: "error", errorText: "errorText", focusBorderWidth: "focusBorderWidth", formatOn: "formatOn", formatter: "formatter", inputAriaAutocomplete: "inputAriaAutocomplete", inputExpanded: "inputExpanded", inputMode: "inputMode", inputRole: "inputRole", label: "label", max: "max", maxLength: "maxLength", min: "min", minLength: "minLength", multiline: "multiline", name: "name", parser: "parser", passwordToggle: "passwordToggle", pattern: "pattern", placeholder: "placeholder", prefixText: "prefixText", readOnly: "readOnly", required: "required", reserveSupportingSpace: "reserveSupportingSpace", restrict: "restrict", rows: "rows", speechLang: "speechLang", speechToText: "speechToText", spellcheck: "spellcheck", step: "step", suffixText: "suffixText", supportingText: "supportingText", throttle: "throttle", type: "type", value: "value", variant: "variant" }, ngImport: i0, template: '<ng-content></ng-content>', isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
|
|
2227
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.12", type: MdTextField, isStandalone: true, selector: "md-text-field", inputs: { appearFocused: "appearFocused", autoCapitalize: "autoCapitalize", autocomplete: "autocomplete", chipsWrap: "chipsWrap", clearable: "clearable", debounce: "debounce", density: "density", disabled: "disabled", enterKeyHint: "enterKeyHint", error: "error", errorText: "errorText", focusBorderWidth: "focusBorderWidth", formatOn: "formatOn", formatter: "formatter", hidePasswordLabel: "hidePasswordLabel", inputAriaAutocomplete: "inputAriaAutocomplete", inputExpanded: "inputExpanded", inputMode: "inputMode", inputRole: "inputRole", label: "label", max: "max", maxLength: "maxLength", min: "min", minLength: "minLength", multiline: "multiline", name: "name", parser: "parser", passwordToggle: "passwordToggle", pattern: "pattern", placeholder: "placeholder", prefixText: "prefixText", readOnly: "readOnly", required: "required", reserveSupportingSpace: "reserveSupportingSpace", restrict: "restrict", rows: "rows", showPasswordLabel: "showPasswordLabel", speechLang: "speechLang", speechToText: "speechToText", spellcheck: "spellcheck", step: "step", suffixText: "suffixText", supportingText: "supportingText", throttle: "throttle", type: "type", value: "value", variant: "variant" }, ngImport: i0, template: '<ng-content></ng-content>', isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
|
|
2227
2228
|
};
|
|
2228
2229
|
MdTextField = __decorate([
|
|
2229
2230
|
ProxyCmp({
|
|
2230
2231
|
defineCustomElementFn: defineCustomElement$1d,
|
|
2231
|
-
inputs: ['appearFocused', 'autoCapitalize', 'autocomplete', 'chipsWrap', 'clearable', 'debounce', 'density', 'disabled', 'enterKeyHint', 'error', 'errorText', 'focusBorderWidth', 'formatOn', 'formatter', 'inputAriaAutocomplete', 'inputExpanded', 'inputMode', 'inputRole', 'label', 'max', 'maxLength', 'min', 'minLength', 'multiline', 'name', 'parser', 'passwordToggle', 'pattern', 'placeholder', 'prefixText', 'readOnly', 'required', 'reserveSupportingSpace', 'restrict', 'rows', 'speechLang', 'speechToText', 'spellcheck', 'step', 'suffixText', 'supportingText', 'throttle', 'type', 'value', 'variant'],
|
|
2232
|
+
inputs: ['appearFocused', 'autoCapitalize', 'autocomplete', 'chipsWrap', 'clearable', 'debounce', 'density', 'disabled', 'enterKeyHint', 'error', 'errorText', 'focusBorderWidth', 'formatOn', 'formatter', 'hidePasswordLabel', 'inputAriaAutocomplete', 'inputExpanded', 'inputMode', 'inputRole', 'label', 'max', 'maxLength', 'min', 'minLength', 'multiline', 'name', 'parser', 'passwordToggle', 'pattern', 'placeholder', 'prefixText', 'readOnly', 'required', 'reserveSupportingSpace', 'restrict', 'rows', 'showPasswordLabel', 'speechLang', 'speechToText', 'spellcheck', 'step', 'suffixText', 'supportingText', 'throttle', 'type', 'value', 'variant'],
|
|
2232
2233
|
methods: ['setFocus', 'select', 'getInputElement', 'getValidity', 'setCustomValidity', 'checkValidity', 'reportValidity']
|
|
2233
2234
|
})
|
|
2234
2235
|
], MdTextField);
|
|
@@ -2239,7 +2240,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImpo
|
|
|
2239
2240
|
changeDetection: ChangeDetectionStrategy.OnPush,
|
|
2240
2241
|
template: '<ng-content></ng-content>',
|
|
2241
2242
|
// eslint-disable-next-line @angular-eslint/no-inputs-metadata-property
|
|
2242
|
-
inputs: ['appearFocused', 'autoCapitalize', 'autocomplete', 'chipsWrap', 'clearable', 'debounce', 'density', 'disabled', 'enterKeyHint', 'error', 'errorText', 'focusBorderWidth', 'formatOn', 'formatter', 'inputAriaAutocomplete', 'inputExpanded', 'inputMode', 'inputRole', 'label', 'max', 'maxLength', 'min', 'minLength', 'multiline', 'name', 'parser', 'passwordToggle', 'pattern', 'placeholder', 'prefixText', 'readOnly', 'required', 'reserveSupportingSpace', 'restrict', 'rows', 'speechLang', 'speechToText', 'spellcheck', 'step', 'suffixText', 'supportingText', 'throttle', 'type', 'value', 'variant'],
|
|
2243
|
+
inputs: ['appearFocused', 'autoCapitalize', 'autocomplete', 'chipsWrap', 'clearable', 'debounce', 'density', 'disabled', 'enterKeyHint', 'error', 'errorText', 'focusBorderWidth', 'formatOn', 'formatter', 'hidePasswordLabel', 'inputAriaAutocomplete', 'inputExpanded', 'inputMode', 'inputRole', 'label', 'max', 'maxLength', 'min', 'minLength', 'multiline', 'name', 'parser', 'passwordToggle', 'pattern', 'placeholder', 'prefixText', 'readOnly', 'required', 'reserveSupportingSpace', 'restrict', 'rows', 'showPasswordLabel', 'speechLang', 'speechToText', 'spellcheck', 'step', 'suffixText', 'supportingText', 'throttle', 'type', 'value', 'variant'],
|
|
2243
2244
|
standalone: true
|
|
2244
2245
|
}]
|
|
2245
2246
|
}], ctorParameters: () => [{ type: i0.ChangeDetectorRef }, { type: i0.ElementRef }, { type: i0.NgZone }] });
|
|
@@ -2513,7 +2514,7 @@ class SelectValueAccessor extends ValueAccessor {
|
|
|
2513
2514
|
super(el);
|
|
2514
2515
|
}
|
|
2515
2516
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: SelectValueAccessor, deps: [{ token: i0.ElementRef }], target: i0.ɵɵFactoryTarget.Directive }); }
|
|
2516
|
-
static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "17.3.12", type: SelectValueAccessor, isStandalone: true, selector: "md-select, md-
|
|
2517
|
+
static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "17.3.12", type: SelectValueAccessor, isStandalone: true, selector: "md-select, md-date-picker, md-time-picker", host: { listeners: { "mdChange": "handleChangeEvent($event.target.value)" } }, providers: [
|
|
2517
2518
|
{
|
|
2518
2519
|
provide: NG_VALUE_ACCESSOR,
|
|
2519
2520
|
useExisting: SelectValueAccessor,
|
|
@@ -2525,7 +2526,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImpo
|
|
|
2525
2526
|
type: Directive,
|
|
2526
2527
|
args: [{
|
|
2527
2528
|
/* tslint:disable-next-line:directive-selector */
|
|
2528
|
-
selector: 'md-select, md-
|
|
2529
|
+
selector: 'md-select, md-date-picker, md-time-picker',
|
|
2529
2530
|
host: {
|
|
2530
2531
|
'(mdChange)': 'handleChangeEvent($event.target.value)'
|
|
2531
2532
|
},
|
|
@@ -2573,36 +2574,125 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImpo
|
|
|
2573
2574
|
}]
|
|
2574
2575
|
}], ctorParameters: () => [{ type: i0.ElementRef }] });
|
|
2575
2576
|
|
|
2577
|
+
/** Angular reset() writes null; a multi-select's empty value must remain an array. */
|
|
2578
|
+
class MultiSelectValueAccessor extends ValueAccessor {
|
|
2579
|
+
constructor(el) { super(el); }
|
|
2580
|
+
writeValue(value) {
|
|
2581
|
+
this.el.nativeElement.value = this.lastValue = value ?? [];
|
|
2582
|
+
}
|
|
2583
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: MultiSelectValueAccessor, deps: [{ token: i0.ElementRef }], target: i0.ɵɵFactoryTarget.Directive }); }
|
|
2584
|
+
static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "17.3.12", type: MultiSelectValueAccessor, isStandalone: true, selector: "md-multi-select", host: { listeners: { "mdChange": "handleChangeEvent($event.target.value)" } }, providers: [{ provide: NG_VALUE_ACCESSOR, useExisting: MultiSelectValueAccessor, multi: true }], usesInheritance: true, ngImport: i0 }); }
|
|
2585
|
+
}
|
|
2586
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: MultiSelectValueAccessor, decorators: [{
|
|
2587
|
+
type: Directive,
|
|
2588
|
+
args: [{
|
|
2589
|
+
selector: 'md-multi-select',
|
|
2590
|
+
host: { '(mdChange)': 'handleChangeEvent($event.target.value)' },
|
|
2591
|
+
providers: [{ provide: NG_VALUE_ACCESSOR, useExisting: MultiSelectValueAccessor, multi: true }],
|
|
2592
|
+
standalone: true,
|
|
2593
|
+
}]
|
|
2594
|
+
}], ctorParameters: () => [{ type: i0.ElementRef }] });
|
|
2595
|
+
|
|
2596
|
+
/** Coordinates radios that share an Angular control or a named form group. */
|
|
2597
|
+
class RadioValueAccessorRegistry {
|
|
2598
|
+
constructor() {
|
|
2599
|
+
this.accessors = new Set();
|
|
2600
|
+
}
|
|
2601
|
+
add(accessor) { this.accessors.add(accessor); }
|
|
2602
|
+
remove(accessor) { this.accessors.delete(accessor); }
|
|
2603
|
+
select(accessor) {
|
|
2604
|
+
for (const other of this.accessors) {
|
|
2605
|
+
if (other !== accessor && accessor.isSameGroup(other))
|
|
2606
|
+
other.uncheck(accessor.value);
|
|
2607
|
+
}
|
|
2608
|
+
}
|
|
2609
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: RadioValueAccessorRegistry, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
|
|
2610
|
+
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: RadioValueAccessorRegistry, providedIn: 'root' }); }
|
|
2611
|
+
}
|
|
2612
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: RadioValueAccessorRegistry, decorators: [{
|
|
2613
|
+
type: Injectable,
|
|
2614
|
+
args: [{ providedIn: 'root' }]
|
|
2615
|
+
}] });
|
|
2616
|
+
/**
|
|
2617
|
+
* A radio's value identifies its option; the form model chooses which option
|
|
2618
|
+
* is checked. Kept outside valueAccessorConfigs so Stencil cannot replace this
|
|
2619
|
+
* with its generic accessor, which writes the model over the option's value.
|
|
2620
|
+
*/
|
|
2576
2621
|
class RadioValueAccessor extends ValueAccessor {
|
|
2577
|
-
constructor(el) {
|
|
2622
|
+
constructor(el, registry, injector) {
|
|
2578
2623
|
super(el);
|
|
2579
|
-
|
|
2580
|
-
|
|
2581
|
-
|
|
2582
|
-
|
|
2583
|
-
|
|
2584
|
-
|
|
2585
|
-
|
|
2586
|
-
|
|
2587
|
-
|
|
2624
|
+
this.registry = registry;
|
|
2625
|
+
this.injector = injector;
|
|
2626
|
+
this.control = null;
|
|
2627
|
+
this.hasModelValue = false;
|
|
2628
|
+
}
|
|
2629
|
+
get value() { return this.optionValue ?? this.el.nativeElement.value; }
|
|
2630
|
+
set value(value) {
|
|
2631
|
+
this.optionValue = value;
|
|
2632
|
+
this.el.nativeElement.value = value;
|
|
2633
|
+
if (this.hasModelValue)
|
|
2634
|
+
this.updateChecked();
|
|
2635
|
+
}
|
|
2636
|
+
get name() { return this.optionName ?? this.el.nativeElement.name ?? ''; }
|
|
2637
|
+
set name(name) {
|
|
2638
|
+
this.optionName = name;
|
|
2639
|
+
this.el.nativeElement.name = name;
|
|
2640
|
+
}
|
|
2641
|
+
ngOnInit() {
|
|
2642
|
+
// Resolve after construction: NG_VALUE_ACCESSOR is itself needed while
|
|
2643
|
+
// Angular constructs NgControl, so injecting NgControl directly is cyclic.
|
|
2644
|
+
this.control = this.injector.get(NgControl, null, { self: true });
|
|
2645
|
+
if (this.control)
|
|
2646
|
+
this.registry.add(this);
|
|
2647
|
+
}
|
|
2648
|
+
ngOnDestroy() { this.registry.remove(this); }
|
|
2649
|
+
writeValue(value) {
|
|
2650
|
+
this.hasModelValue = true;
|
|
2651
|
+
this.lastValue = value;
|
|
2652
|
+
this.updateChecked();
|
|
2653
|
+
}
|
|
2654
|
+
updateChecked() {
|
|
2655
|
+
this.el.nativeElement.checked = this.lastValue != null && Object.is(this.lastValue, this.value);
|
|
2656
|
+
}
|
|
2657
|
+
handleRadioChange(event) {
|
|
2658
|
+
if (!this.control || event.target !== this.el.nativeElement || !this.el.nativeElement.checked || this.el.nativeElement.disabled)
|
|
2659
|
+
return;
|
|
2660
|
+
this.registry.select(this);
|
|
2661
|
+
super.handleChangeEvent(this.value);
|
|
2662
|
+
}
|
|
2663
|
+
uncheck(selectedValue) {
|
|
2664
|
+
this.lastValue = selectedValue;
|
|
2665
|
+
this.el.nativeElement.checked = false;
|
|
2666
|
+
}
|
|
2667
|
+
isSameGroup(other) {
|
|
2668
|
+
const control = this.control?.control;
|
|
2669
|
+
const otherControl = other.control?.control;
|
|
2670
|
+
if (control && control === otherControl)
|
|
2671
|
+
return true;
|
|
2672
|
+
if (!this.name || this.name !== other.name)
|
|
2673
|
+
return false;
|
|
2674
|
+
if (control?.parent || otherControl?.parent)
|
|
2675
|
+
return !!control?.parent && control.parent === otherControl?.parent;
|
|
2676
|
+
const element = this.el.nativeElement;
|
|
2677
|
+
const otherElement = other.el.nativeElement;
|
|
2678
|
+
return element.getRootNode() === otherElement.getRootNode() && element.closest('form') === otherElement.closest('form');
|
|
2679
|
+
}
|
|
2680
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: RadioValueAccessor, deps: [{ token: i0.ElementRef }, { token: RadioValueAccessorRegistry }, { token: i0.Injector }], target: i0.ɵɵFactoryTarget.Directive }); }
|
|
2681
|
+
static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "17.3.12", type: RadioValueAccessor, isStandalone: true, selector: "md-radio", inputs: { value: "value", name: "name" }, host: { listeners: { "mdChange": "handleRadioChange($event)" } }, providers: [{ provide: NG_VALUE_ACCESSOR, useExisting: RadioValueAccessor, multi: true }], usesInheritance: true, ngImport: i0 }); }
|
|
2588
2682
|
}
|
|
2589
2683
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: RadioValueAccessor, decorators: [{
|
|
2590
2684
|
type: Directive,
|
|
2591
2685
|
args: [{
|
|
2592
|
-
/* tslint:disable-next-line:directive-selector */
|
|
2593
2686
|
selector: 'md-radio',
|
|
2594
|
-
host: {
|
|
2595
|
-
|
|
2596
|
-
|
|
2597
|
-
providers: [
|
|
2598
|
-
{
|
|
2599
|
-
provide: NG_VALUE_ACCESSOR,
|
|
2600
|
-
useExisting: RadioValueAccessor,
|
|
2601
|
-
multi: true
|
|
2602
|
-
}
|
|
2603
|
-
], standalone: true
|
|
2687
|
+
host: { '(mdChange)': 'handleRadioChange($event)' },
|
|
2688
|
+
providers: [{ provide: NG_VALUE_ACCESSOR, useExisting: RadioValueAccessor, multi: true }],
|
|
2689
|
+
standalone: true,
|
|
2604
2690
|
}]
|
|
2605
|
-
}], ctorParameters: () => [{ type: i0.ElementRef }]
|
|
2691
|
+
}], ctorParameters: () => [{ type: i0.ElementRef }, { type: RadioValueAccessorRegistry }, { type: i0.Injector }], propDecorators: { value: [{
|
|
2692
|
+
type: Input
|
|
2693
|
+
}], name: [{
|
|
2694
|
+
type: Input
|
|
2695
|
+
}] } });
|
|
2606
2696
|
|
|
2607
2697
|
class NumericValueAccessor extends ValueAccessor {
|
|
2608
2698
|
constructor(el) {
|
|
@@ -2698,6 +2788,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImpo
|
|
|
2698
2788
|
const VALUE_ACCESSORS = [
|
|
2699
2789
|
TextValueAccessor,
|
|
2700
2790
|
SelectValueAccessor,
|
|
2791
|
+
MultiSelectValueAccessor,
|
|
2701
2792
|
BooleanValueAccessor,
|
|
2702
2793
|
RadioValueAccessor,
|
|
2703
2794
|
NumericValueAccessor,
|
|
@@ -2723,10 +2814,9 @@ const VALUE_ACCESSORS = [
|
|
|
2723
2814
|
* })
|
|
2724
2815
|
* export class AppModule {}
|
|
2725
2816
|
*
|
|
2726
|
-
* //
|
|
2727
|
-
*
|
|
2728
|
-
*
|
|
2729
|
-
* });
|
|
2817
|
+
* // Raw custom elements without imported proxies:
|
|
2818
|
+
* // AppComponent uses CUSTOM_ELEMENTS_SCHEMA; add the loader at bootstrap.
|
|
2819
|
+
* bootstrapApplication(AppComponent, { providers: [provideAwcUi()] });
|
|
2730
2820
|
*
|
|
2731
2821
|
* SSR-safe: it is a no-op when `window` is not available.
|
|
2732
2822
|
*/
|
|
@@ -2762,11 +2852,13 @@ class AwcUiModule {
|
|
|
2762
2852
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: AwcUiModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
|
|
2763
2853
|
static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "17.3.12", ngImport: i0, type: AwcUiModule, imports: [CommonModule, MdAccordion, MdAccordionItem, MdAppBar, MdAreaChart, MdAutocomplete, MdAvatar, MdBadge, MdBarChart, MdBottomSheet, MdBreadcrumbItem, MdBreadcrumbs, MdButton, MdButtonGroup, MdCard, MdCheckbox, MdChip, MdColorPicker, MdDatePicker, MdDialog, MdDivider, MdFab, MdFabMenu, MdFabMenuItem, MdIconButton, MdLineChart, MdList, MdListItem, MdLoadingIndicator, MdMenu, MdMenuItem, MdMenuItemGroup, MdMeter, MdMultiSelect, MdNavigationBar, MdNavigationRail, MdNavigationRailTab, MdNavigationTab, MdNumberField, MdOrganizationChart, MdOtpField, MdPieChart, MdProgressIndicator, MdRadio, MdRating, MdRipple, MdSearch, MdSegmentedButton, MdSegmentedButtonSet, MdSelect, MdSelectOption, MdSideSheet, MdSkeleton, MdSlider, MdSnackbar, MdSparkline, MdSplitButton, MdStatusDot, MdStep, MdStepper, MdSubMenuItem, MdSwitch, MdTab, MdTabPanel, MdTabPanels, MdTable, MdTableBody, MdTableCell, MdTableContainer, MdTableExpandToggle, MdTableFoot, MdTableHead, MdTablePagination, MdTableRow, MdTableSortLabel, MdTableToolbar, MdTabs, MdTextField, MdTimePicker, MdToolbar, MdTooltip, MdTransferList, TextValueAccessor,
|
|
2764
2854
|
SelectValueAccessor,
|
|
2855
|
+
MultiSelectValueAccessor,
|
|
2765
2856
|
BooleanValueAccessor,
|
|
2766
2857
|
RadioValueAccessor,
|
|
2767
2858
|
NumericValueAccessor,
|
|
2768
2859
|
SwitchValueAccessor], exports: [MdAccordion, MdAccordionItem, MdAppBar, MdAreaChart, MdAutocomplete, MdAvatar, MdBadge, MdBarChart, MdBottomSheet, MdBreadcrumbItem, MdBreadcrumbs, MdButton, MdButtonGroup, MdCard, MdCheckbox, MdChip, MdColorPicker, MdDatePicker, MdDialog, MdDivider, MdFab, MdFabMenu, MdFabMenuItem, MdIconButton, MdLineChart, MdList, MdListItem, MdLoadingIndicator, MdMenu, MdMenuItem, MdMenuItemGroup, MdMeter, MdMultiSelect, MdNavigationBar, MdNavigationRail, MdNavigationRailTab, MdNavigationTab, MdNumberField, MdOrganizationChart, MdOtpField, MdPieChart, MdProgressIndicator, MdRadio, MdRating, MdRipple, MdSearch, MdSegmentedButton, MdSegmentedButtonSet, MdSelect, MdSelectOption, MdSideSheet, MdSkeleton, MdSlider, MdSnackbar, MdSparkline, MdSplitButton, MdStatusDot, MdStep, MdStepper, MdSubMenuItem, MdSwitch, MdTab, MdTabPanel, MdTabPanels, MdTable, MdTableBody, MdTableCell, MdTableContainer, MdTableExpandToggle, MdTableFoot, MdTableHead, MdTablePagination, MdTableRow, MdTableSortLabel, MdTableToolbar, MdTabs, MdTextField, MdTimePicker, MdToolbar, MdTooltip, MdTransferList, TextValueAccessor,
|
|
2769
2860
|
SelectValueAccessor,
|
|
2861
|
+
MultiSelectValueAccessor,
|
|
2770
2862
|
BooleanValueAccessor,
|
|
2771
2863
|
RadioValueAccessor,
|
|
2772
2864
|
NumericValueAccessor,
|
|
@@ -2786,5 +2878,5 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImpo
|
|
|
2786
2878
|
* Generated bundle index. Do not edit.
|
|
2787
2879
|
*/
|
|
2788
2880
|
|
|
2789
|
-
export { AwcUiModule, BooleanValueAccessor, DIRECTIVES, MdAccordion, MdAccordionItem, MdAppBar, MdAreaChart, MdAutocomplete, MdAvatar, MdBadge, MdBarChart, MdBottomSheet, MdBreadcrumbItem, MdBreadcrumbs, MdButton, MdButtonGroup, MdCard, MdCheckbox, MdChip, MdColorPicker, MdDatePicker, MdDialog, MdDivider, MdFab, MdFabMenu, MdFabMenuItem, MdIconButton, MdLineChart, MdList, MdListItem, MdLoadingIndicator, MdMenu, MdMenuItem, MdMenuItemGroup, MdMeter, MdMultiSelect, MdNavigationBar, MdNavigationRail, MdNavigationRailTab, MdNavigationTab, MdNumberField, MdOrganizationChart, MdOtpField, MdPieChart, MdProgressIndicator, MdRadio, MdRating, MdRipple, MdSearch, MdSegmentedButton, MdSegmentedButtonSet, MdSelect, MdSelectOption, MdSideSheet, MdSkeleton, MdSlider, MdSnackbar, MdSparkline, MdSplitButton, MdStatusDot, MdStep, MdStepper, MdSubMenuItem, MdSwitch, MdTab, MdTabPanel, MdTabPanels, MdTable, MdTableBody, MdTableCell, MdTableContainer, MdTableExpandToggle, MdTableFoot, MdTableHead, MdTablePagination, MdTableRow, MdTableSortLabel, MdTableToolbar, MdTabs, MdTextField, MdTimePicker, MdToolbar, MdTooltip, MdTransferList, NumericValueAccessor, RadioValueAccessor, SelectValueAccessor, SwitchValueAccessor, TextValueAccessor, VALUE_ACCESSORS, ValueAccessor, provideAwcUi };
|
|
2881
|
+
export { AwcUiModule, BooleanValueAccessor, DIRECTIVES, MdAccordion, MdAccordionItem, MdAppBar, MdAreaChart, MdAutocomplete, MdAvatar, MdBadge, MdBarChart, MdBottomSheet, MdBreadcrumbItem, MdBreadcrumbs, MdButton, MdButtonGroup, MdCard, MdCheckbox, MdChip, MdColorPicker, MdDatePicker, MdDialog, MdDivider, MdFab, MdFabMenu, MdFabMenuItem, MdIconButton, MdLineChart, MdList, MdListItem, MdLoadingIndicator, MdMenu, MdMenuItem, MdMenuItemGroup, MdMeter, MdMultiSelect, MdNavigationBar, MdNavigationRail, MdNavigationRailTab, MdNavigationTab, MdNumberField, MdOrganizationChart, MdOtpField, MdPieChart, MdProgressIndicator, MdRadio, MdRating, MdRipple, MdSearch, MdSegmentedButton, MdSegmentedButtonSet, MdSelect, MdSelectOption, MdSideSheet, MdSkeleton, MdSlider, MdSnackbar, MdSparkline, MdSplitButton, MdStatusDot, MdStep, MdStepper, MdSubMenuItem, MdSwitch, MdTab, MdTabPanel, MdTabPanels, MdTable, MdTableBody, MdTableCell, MdTableContainer, MdTableExpandToggle, MdTableFoot, MdTableHead, MdTablePagination, MdTableRow, MdTableSortLabel, MdTableToolbar, MdTabs, MdTextField, MdTimePicker, MdToolbar, MdTooltip, MdTransferList, MultiSelectValueAccessor, NumericValueAccessor, RadioValueAccessor, SelectValueAccessor, SwitchValueAccessor, TextValueAccessor, VALUE_ACCESSORS, ValueAccessor, provideAwcUi };
|
|
2790
2882
|
//# sourceMappingURL=awc-ui-angular.mjs.map
|