@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.
@@ -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": "handleChangeEvent($event.target.checked)" } }, providers: [
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
- '(mdChange)': 'handleChangeEvent($event.target.checked)'
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
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmFkaW8tdmFsdWUtYWNjZXNzb3IuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvZGlyZWN0aXZlcy9yYWRpby12YWx1ZS1hY2Nlc3Nvci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFjLE1BQU0sZUFBZSxDQUFDO0FBQ3RELE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBRW5ELE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSxrQkFBa0IsQ0FBQzs7QUFnQmpELE1BQU0sT0FBTyxrQkFBbUIsU0FBUSxhQUFhO0lBQ25ELFlBQVksRUFBYztRQUN4QixLQUFLLENBQUMsRUFBRSxDQUFDLENBQUM7SUFDWixDQUFDOytHQUhVLGtCQUFrQjttR0FBbEIsa0JBQWtCLHdJQVJsQjtZQUNUO2dCQUNFLE9BQU8sRUFBRSxpQkFBaUI7Z0JBQzFCLFdBQVcsRUFBRSxrQkFBa0I7Z0JBQy9CLEtBQUssRUFBRSxJQUFJO2FBQ1o7U0FDRjs7NEZBRVUsa0JBQWtCO2tCQWQ5QixTQUFTO21CQUFDO29CQUNULGlEQUFpRDtvQkFDakQsUUFBUSxFQUFFLFVBQVU7b0JBQ3BCLElBQUksRUFBRTt3QkFDSixZQUFZLEVBQUUsMENBQTBDO3FCQUN6RDtvQkFDRCxTQUFTLEVBQUU7d0JBQ1Q7NEJBQ0UsT0FBTyxFQUFFLGlCQUFpQjs0QkFDMUIsV0FBVyxvQkFBb0I7NEJBQy9CLEtBQUssRUFBRSxJQUFJO3lCQUNaO3FCQUNGLEVBQUMsVUFBVSxFQUFFLElBQUk7aUJBQ25CIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgRGlyZWN0aXZlLCBFbGVtZW50UmVmIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBOR19WQUxVRV9BQ0NFU1NPUiB9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcblxuaW1wb3J0IHsgVmFsdWVBY2Nlc3NvciB9IGZyb20gJy4vdmFsdWUtYWNjZXNzb3InO1xuXG5ARGlyZWN0aXZlKHtcbiAgLyogdHNsaW50OmRpc2FibGUtbmV4dC1saW5lOmRpcmVjdGl2ZS1zZWxlY3RvciAqL1xuICBzZWxlY3RvcjogJ21kLXJhZGlvJyxcbiAgaG9zdDoge1xuICAgICcobWRDaGFuZ2UpJzogJ2hhbmRsZUNoYW5nZUV2ZW50KCRldmVudC50YXJnZXQuY2hlY2tlZCknXG4gIH0sXG4gIHByb3ZpZGVyczogW1xuICAgIHtcbiAgICAgIHByb3ZpZGU6IE5HX1ZBTFVFX0FDQ0VTU09SLFxuICAgICAgdXNlRXhpc3Rpbmc6IFJhZGlvVmFsdWVBY2Nlc3NvcixcbiAgICAgIG11bHRpOiB0cnVlXG4gICAgfVxuICBdLHN0YW5kYWxvbmU6IHRydWVcbn0pXG5leHBvcnQgY2xhc3MgUmFkaW9WYWx1ZUFjY2Vzc29yIGV4dGVuZHMgVmFsdWVBY2Nlc3NvciB7XG4gIGNvbnN0cnVjdG9yKGVsOiBFbGVtZW50UmVmKSB7XG4gICAgc3VwZXIoZWwpO1xuICB9XG59XG4iXX0=
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-multi-select, md-date-picker, md-time-picker", host: { listeners: { "mdChange": "handleChangeEvent($event.target.value)" } }, providers: [
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-multi-select, md-date-picker, md-time-picker',
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,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2VsZWN0LXZhbHVlLWFjY2Vzc29yLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL2RpcmVjdGl2ZXMvc2VsZWN0LXZhbHVlLWFjY2Vzc29yLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQWMsTUFBTSxlQUFlLENBQUM7QUFDdEQsT0FBTyxFQUFFLGlCQUFpQixFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFFbkQsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLGtCQUFrQixDQUFDOztBQWdCakQsTUFBTSxPQUFPLG1CQUFvQixTQUFRLGFBQWE7SUFDcEQsWUFBWSxFQUFjO1FBQ3hCLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQztJQUNaLENBQUM7K0dBSFUsbUJBQW1CO21HQUFuQixtQkFBbUIsd0xBUm5CO1lBQ1Q7Z0JBQ0UsT0FBTyxFQUFFLGlCQUFpQjtnQkFDMUIsV0FBVyxFQUFFLG1CQUFtQjtnQkFDaEMsS0FBSyxFQUFFLElBQUk7YUFDWjtTQUNGOzs0RkFFVSxtQkFBbUI7a0JBZC9CLFNBQVM7bUJBQUM7b0JBQ1QsaURBQWlEO29CQUNqRCxRQUFRLEVBQUUsNERBQTREO29CQUN0RSxJQUFJLEVBQUU7d0JBQ0osWUFBWSxFQUFFLHdDQUF3QztxQkFDdkQ7b0JBQ0QsU0FBUyxFQUFFO3dCQUNUOzRCQUNFLE9BQU8sRUFBRSxpQkFBaUI7NEJBQzFCLFdBQVcscUJBQXFCOzRCQUNoQyxLQUFLLEVBQUUsSUFBSTt5QkFDWjtxQkFDRixFQUFDLFVBQVUsRUFBRSxJQUFJO2lCQUNuQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IERpcmVjdGl2ZSwgRWxlbWVudFJlZiB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgTkdfVkFMVUVfQUNDRVNTT1IgfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XG5cbmltcG9ydCB7IFZhbHVlQWNjZXNzb3IgfSBmcm9tICcuL3ZhbHVlLWFjY2Vzc29yJztcblxuQERpcmVjdGl2ZSh7XG4gIC8qIHRzbGludDpkaXNhYmxlLW5leHQtbGluZTpkaXJlY3RpdmUtc2VsZWN0b3IgKi9cbiAgc2VsZWN0b3I6ICdtZC1zZWxlY3QsIG1kLW11bHRpLXNlbGVjdCwgbWQtZGF0ZS1waWNrZXIsIG1kLXRpbWUtcGlja2VyJyxcbiAgaG9zdDoge1xuICAgICcobWRDaGFuZ2UpJzogJ2hhbmRsZUNoYW5nZUV2ZW50KCRldmVudC50YXJnZXQudmFsdWUpJ1xuICB9LFxuICBwcm92aWRlcnM6IFtcbiAgICB7XG4gICAgICBwcm92aWRlOiBOR19WQUxVRV9BQ0NFU1NPUixcbiAgICAgIHVzZUV4aXN0aW5nOiBTZWxlY3RWYWx1ZUFjY2Vzc29yLFxuICAgICAgbXVsdGk6IHRydWVcbiAgICB9XG4gIF0sc3RhbmRhbG9uZTogdHJ1ZVxufSlcbmV4cG9ydCBjbGFzcyBTZWxlY3RWYWx1ZUFjY2Vzc29yIGV4dGVuZHMgVmFsdWVBY2Nlc3NvciB7XG4gIGNvbnN0cnVjdG9yKGVsOiBFbGVtZW50UmVmKSB7XG4gICAgc3VwZXIoZWwpO1xuICB9XG59XG4iXX0=
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
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFdBQVcsRUFBRSxZQUFZLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUM1RCxjQUFjLG9CQUFvQixDQUFDO0FBQ25DLGNBQWMsc0JBQXNCLENBQUM7QUFFckMsMkVBQTJFO0FBQzNFLDJFQUEyRTtBQUMzRSx3REFBd0Q7QUFDeEQsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQ2xELE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSw2QkFBNkIsQ0FBQztBQUM1RCxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSxrQ0FBa0MsQ0FBQztBQUNyRSxPQUFPLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSxvQ0FBb0MsQ0FBQztBQUN6RSxPQUFPLEVBQUUsb0JBQW9CLEVBQUUsTUFBTSxxQ0FBcUMsQ0FBQztBQUMzRSxPQUFPLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSxtQ0FBbUMsQ0FBQztBQUN2RSxPQUFPLEVBQUUsb0JBQW9CLEVBQUUsTUFBTSxvQ0FBb0MsQ0FBQztBQUMxRSxPQUFPLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSxvQ0FBb0MsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCB7IEF3Y1VpTW9kdWxlLCBwcm92aWRlQXdjVWkgfSBmcm9tICcuL2F3Yy11aS5tb2R1bGUnO1xuZXhwb3J0ICogZnJvbSAnLi9kaXJlY3RpdmVzL2luZGV4JztcbmV4cG9ydCAqIGZyb20gJy4vZGlyZWN0aXZlcy9wcm94aWVzJztcblxuLy8gVmFsdWUgYWNjZXNzb3JzIG11c3QgYmUgZXhwb3J0ZWQgZnJvbSB0aGUgdG9wLWxldmVsIGVudHJ5cG9pbnQ6IHRoZXkgYXJlXG4vLyB2aXNpYmxlIHRvIGNvbnN1bWVycyB0aHJvdWdoIEF3Y1VpTW9kdWxlLCBhbmQgQW5ndWxhcidzIHBhcnRpYWwgY29tcGlsZXJcbi8vIHJlamVjdHMgYSBkZWNsYXJlZC1idXQtdW5leHBvcnRlZCBkaXJlY3RpdmUgKE5HMzAwMSkuXG5leHBvcnQgeyBWQUxVRV9BQ0NFU1NPUlMgfSBmcm9tICcuL2F3Yy11aS5tb2R1bGUnO1xuZXhwb3J0IHsgVmFsdWVBY2Nlc3NvciB9IGZyb20gJy4vZGlyZWN0aXZlcy92YWx1ZS1hY2Nlc3Nvcic7XG5leHBvcnQgeyBUZXh0VmFsdWVBY2Nlc3NvciB9IGZyb20gJy4vZGlyZWN0aXZlcy90ZXh0LXZhbHVlLWFjY2Vzc29yJztcbmV4cG9ydCB7IFNlbGVjdFZhbHVlQWNjZXNzb3IgfSBmcm9tICcuL2RpcmVjdGl2ZXMvc2VsZWN0LXZhbHVlLWFjY2Vzc29yJztcbmV4cG9ydCB7IEJvb2xlYW5WYWx1ZUFjY2Vzc29yIH0gZnJvbSAnLi9kaXJlY3RpdmVzL2Jvb2xlYW4tdmFsdWUtYWNjZXNzb3InO1xuZXhwb3J0IHsgUmFkaW9WYWx1ZUFjY2Vzc29yIH0gZnJvbSAnLi9kaXJlY3RpdmVzL3JhZGlvLXZhbHVlLWFjY2Vzc29yJztcbmV4cG9ydCB7IE51bWVyaWNWYWx1ZUFjY2Vzc29yIH0gZnJvbSAnLi9kaXJlY3RpdmVzL251bWJlci12YWx1ZS1hY2Nlc3Nvcic7XG5leHBvcnQgeyBTd2l0Y2hWYWx1ZUFjY2Vzc29yIH0gZnJvbSAnLi9kaXJlY3RpdmVzL3N3aXRjaC12YWx1ZS1hY2Nlc3Nvcic7XG4iXX0=
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-multi-select, md-date-picker, md-time-picker", host: { listeners: { "mdChange": "handleChangeEvent($event.target.value)" } }, providers: [
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-multi-select, md-date-picker, md-time-picker',
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
- 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 }); }
2581
- static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "17.3.12", type: RadioValueAccessor, isStandalone: true, selector: "md-radio", host: { listeners: { "mdChange": "handleChangeEvent($event.target.checked)" } }, providers: [
2582
- {
2583
- provide: NG_VALUE_ACCESSOR,
2584
- useExisting: RadioValueAccessor,
2585
- multi: true
2586
- }
2587
- ], usesInheritance: true, ngImport: i0 }); }
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
- '(mdChange)': 'handleChangeEvent($event.target.checked)'
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
- * // Standalone app
2727
- * bootstrapApplication(AppComponent, {
2728
- * providers: [provideAwcUi(), importProvidersFrom(AwcUiModule)],
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