@danske/sapphire-angular 3.8.2 → 3.9.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,8 +1,9 @@
1
1
  export { SapphireFieldModule } from './src/field.module';
2
2
  export { FieldComponent } from './src/field.component';
3
+ export { FieldsetComponent } from './src/field.component';
3
4
  export { FieldNoteDirective } from './src/field-note.directive';
4
5
  export { FieldErrorDirective } from './src/field-error.directive';
5
6
  export { FieldLabelDirective } from './src/field-label.directive';
6
7
  export { FieldControl } from './src/field-control';
7
8
  export { FieldNoteSuffixDirective } from './src/field-note-suffix.directive';
8
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHVibGljX2FwaS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9saWIvZmllbGQvcHVibGljX2FwaS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSxvQkFBb0IsQ0FBQztBQUN6RCxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0sdUJBQXVCLENBQUM7QUFDdkQsT0FBTyxFQUFFLGtCQUFrQixFQUFFLE1BQU0sNEJBQTRCLENBQUM7QUFDaEUsT0FBTyxFQUFFLG1CQUFtQixFQUFFLE1BQU0sNkJBQTZCLENBQUM7QUFDbEUsT0FBTyxFQUFFLG1CQUFtQixFQUFFLE1BQU0sNkJBQTZCLENBQUM7QUFDbEUsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLHFCQUFxQixDQUFDO0FBQ25ELE9BQU8sRUFBRSx3QkFBd0IsRUFBRSxNQUFNLG1DQUFtQyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0IHsgU2FwcGhpcmVGaWVsZE1vZHVsZSB9IGZyb20gJy4vc3JjL2ZpZWxkLm1vZHVsZSc7XG5leHBvcnQgeyBGaWVsZENvbXBvbmVudCB9IGZyb20gJy4vc3JjL2ZpZWxkLmNvbXBvbmVudCc7XG5leHBvcnQgeyBGaWVsZE5vdGVEaXJlY3RpdmUgfSBmcm9tICcuL3NyYy9maWVsZC1ub3RlLmRpcmVjdGl2ZSc7XG5leHBvcnQgeyBGaWVsZEVycm9yRGlyZWN0aXZlIH0gZnJvbSAnLi9zcmMvZmllbGQtZXJyb3IuZGlyZWN0aXZlJztcbmV4cG9ydCB7IEZpZWxkTGFiZWxEaXJlY3RpdmUgfSBmcm9tICcuL3NyYy9maWVsZC1sYWJlbC5kaXJlY3RpdmUnO1xuZXhwb3J0IHsgRmllbGRDb250cm9sIH0gZnJvbSAnLi9zcmMvZmllbGQtY29udHJvbCc7XG5leHBvcnQgeyBGaWVsZE5vdGVTdWZmaXhEaXJlY3RpdmUgfSBmcm9tICcuL3NyYy9maWVsZC1ub3RlLXN1ZmZpeC5kaXJlY3RpdmUnO1xuIl19
9
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHVibGljX2FwaS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9saWIvZmllbGQvcHVibGljX2FwaS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSxvQkFBb0IsQ0FBQztBQUN6RCxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0sdUJBQXVCLENBQUM7QUFDdkQsT0FBTyxFQUFFLGlCQUFpQixFQUFFLE1BQU0sdUJBQXVCLENBQUM7QUFDMUQsT0FBTyxFQUFFLGtCQUFrQixFQUFFLE1BQU0sNEJBQTRCLENBQUM7QUFDaEUsT0FBTyxFQUFFLG1CQUFtQixFQUFFLE1BQU0sNkJBQTZCLENBQUM7QUFDbEUsT0FBTyxFQUFFLG1CQUFtQixFQUFFLE1BQU0sNkJBQTZCLENBQUM7QUFDbEUsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLHFCQUFxQixDQUFDO0FBQ25ELE9BQU8sRUFBRSx3QkFBd0IsRUFBRSxNQUFNLG1DQUFtQyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0IHsgU2FwcGhpcmVGaWVsZE1vZHVsZSB9IGZyb20gJy4vc3JjL2ZpZWxkLm1vZHVsZSc7XG5leHBvcnQgeyBGaWVsZENvbXBvbmVudCB9IGZyb20gJy4vc3JjL2ZpZWxkLmNvbXBvbmVudCc7XG5leHBvcnQgeyBGaWVsZHNldENvbXBvbmVudCB9IGZyb20gJy4vc3JjL2ZpZWxkLmNvbXBvbmVudCc7XG5leHBvcnQgeyBGaWVsZE5vdGVEaXJlY3RpdmUgfSBmcm9tICcuL3NyYy9maWVsZC1ub3RlLmRpcmVjdGl2ZSc7XG5leHBvcnQgeyBGaWVsZEVycm9yRGlyZWN0aXZlIH0gZnJvbSAnLi9zcmMvZmllbGQtZXJyb3IuZGlyZWN0aXZlJztcbmV4cG9ydCB7IEZpZWxkTGFiZWxEaXJlY3RpdmUgfSBmcm9tICcuL3NyYy9maWVsZC1sYWJlbC5kaXJlY3RpdmUnO1xuZXhwb3J0IHsgRmllbGRDb250cm9sIH0gZnJvbSAnLi9zcmMvZmllbGQtY29udHJvbCc7XG5leHBvcnQgeyBGaWVsZE5vdGVTdWZmaXhEaXJlY3RpdmUgfSBmcm9tICcuL3NyYy9maWVsZC1ub3RlLXN1ZmZpeC5kaXJlY3RpdmUnO1xuIl19
@@ -35,4 +35,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.0", ngImpor
35
35
  }], target: [{
36
36
  type: Input
37
37
  }] } });
38
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmllbGQtZXJyb3IuZGlyZWN0aXZlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vc3JjL2xpYi9maWVsZC9zcmMvZmllbGQtZXJyb3IuZGlyZWN0aXZlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLFdBQVcsRUFBRSxLQUFLLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDOUQsT0FBTyxFQUFFLE1BQU0sRUFBRSxNQUFNLGdDQUFnQyxDQUFDOztBQUd4RDs7R0FFRztBQVFILE1BQU0sT0FBTyxtQkFBbUI7SUFQaEM7UUFRRTs7O1dBR0c7UUFJSCxPQUFFLEdBQUcsRUFBRSxDQUFDO0tBR1Q7O2dIQVhZLG1CQUFtQjtvR0FBbkIsbUJBQW1CO0FBUTlCO0lBREMsTUFBTSxFQUFFOytDQUNEOzJGQVJHLG1CQUFtQjtrQkFQL0IsU0FBUzttQkFBQztvQkFDVCxRQUFRLEVBQUUsZ0JBQWdCO29CQUMxQixVQUFVLEVBQUUsSUFBSTtvQkFDaEIsSUFBSSxFQUFFO3dCQUNKLEtBQUssRUFBRSxzQkFBc0I7cUJBQzlCO2lCQUNGOzhCQVNDLEVBQUU7c0JBSEQsV0FBVzs7c0JBQ1gsS0FBSztnQkFJRyxNQUFNO3NCQUFkLEtBQUsiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBEaXJlY3RpdmUsIEhvc3RCaW5kaW5nLCBJbnB1dCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgQXV0b0lkIH0gZnJvbSAnLi4vLi4vY29tbW9uL2F1dG8taWQuZGVjb3JhdG9yJztcbmltcG9ydCB7IEZpZWxkQ29udHJvbCB9IGZyb20gJy4vZmllbGQtY29udHJvbCc7XG5cbi8qKlxuICogVXNlZCBpbnNpZGUgc3AtZmllbGQgdG8gcHJvdmlkZSBhbiBlcnJvciBtZXNzYWdlIGZvciB0aGUgZmllbGQuXG4gKi9cbkBEaXJlY3RpdmUoe1xuICBzZWxlY3RvcjogJ3NwLWZpZWxkLWVycm9yJyxcbiAgc3RhbmRhbG9uZTogdHJ1ZSxcbiAgaG9zdDoge1xuICAgIGNsYXNzOiAnc2FwcGhpcmUtZmllbGRfX25vdGUnLFxuICB9LFxufSlcbmV4cG9ydCBjbGFzcyBGaWVsZEVycm9yRGlyZWN0aXZlIHtcbiAgLyoqXG4gICAqIEEgdW5pcXVlIGlkIGZvciB0aGUgaG9zdCBET00gZWxlbWVudC5cbiAgICogSWYgbm9uZSBpcyBzdXBwbGllZCwgaXQgd2lsbCBiZSBhdXRvLWdlbmVyYXRlZC5cbiAgICovXG4gIEBIb3N0QmluZGluZygpXG4gIEBJbnB1dCgpXG4gIEBBdXRvSWQoKVxuICBpZCA9ICcnO1xuXG4gIEBJbnB1dCgpIHRhcmdldD86IEZpZWxkQ29udHJvbDtcbn1cbiJdfQ==
38
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmllbGQtZXJyb3IuZGlyZWN0aXZlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vc3JjL2xpYi9maWVsZC9zcmMvZmllbGQtZXJyb3IuZGlyZWN0aXZlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLFdBQVcsRUFBRSxLQUFLLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDOUQsT0FBTyxFQUFFLE1BQU0sRUFBRSxNQUFNLGdDQUFnQyxDQUFDOztBQUd4RDs7R0FFRztBQVFILE1BQU0sT0FBTyxtQkFBbUI7SUFQaEM7UUFRRTs7O1dBR0c7UUFJSCxPQUFFLEdBQUcsRUFBRSxDQUFDO0tBT1Q7O2dIQWZZLG1CQUFtQjtvR0FBbkIsbUJBQW1CO0FBUTlCO0lBREMsTUFBTSxFQUFFOytDQUNEOzJGQVJHLG1CQUFtQjtrQkFQL0IsU0FBUzttQkFBQztvQkFDVCxRQUFRLEVBQUUsZ0JBQWdCO29CQUMxQixVQUFVLEVBQUUsSUFBSTtvQkFDaEIsSUFBSSxFQUFFO3dCQUNKLEtBQUssRUFBRSxzQkFBc0I7cUJBQzlCO2lCQUNGOzhCQVNDLEVBQUU7c0JBSEQsV0FBVzs7c0JBQ1gsS0FBSztnQkFRRyxNQUFNO3NCQUFkLEtBQUsiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBEaXJlY3RpdmUsIEhvc3RCaW5kaW5nLCBJbnB1dCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgQXV0b0lkIH0gZnJvbSAnLi4vLi4vY29tbW9uL2F1dG8taWQuZGVjb3JhdG9yJztcbmltcG9ydCB7IEZpZWxkQ29udHJvbCB9IGZyb20gJy4vZmllbGQtY29udHJvbCc7XG5cbi8qKlxuICogVXNlZCBpbnNpZGUgc3AtZmllbGQgdG8gcHJvdmlkZSBhbiBlcnJvciBtZXNzYWdlIGZvciB0aGUgZmllbGQuXG4gKi9cbkBEaXJlY3RpdmUoe1xuICBzZWxlY3RvcjogJ3NwLWZpZWxkLWVycm9yJyxcbiAgc3RhbmRhbG9uZTogdHJ1ZSxcbiAgaG9zdDoge1xuICAgIGNsYXNzOiAnc2FwcGhpcmUtZmllbGRfX25vdGUnLFxuICB9LFxufSlcbmV4cG9ydCBjbGFzcyBGaWVsZEVycm9yRGlyZWN0aXZlIHtcbiAgLyoqXG4gICAqIEEgdW5pcXVlIGlkIGZvciB0aGUgaG9zdCBET00gZWxlbWVudC5cbiAgICogSWYgbm9uZSBpcyBzdXBwbGllZCwgaXQgd2lsbCBiZSBhdXRvLWdlbmVyYXRlZC5cbiAgICovXG4gIEBIb3N0QmluZGluZygpXG4gIEBJbnB1dCgpXG4gIEBBdXRvSWQoKVxuICBpZCA9ICcnO1xuXG4gIC8qKlxuICAgKiBUYXJnZXQgZm9yIHRoZSBlcnJvci4gQ2FuIGJlIGVpdGhlciBhIHNwZWNpZmljIGNvbnRyb2wgb3IgYSBuZXN0ZWQgZmllbGQuXG4gICAqIFdoZW4gc2V0LCBvbmx5IHRoZSB0YXJnZXRlZCBjb250cm9sL2ZpZWxkIHdpbGwgc2hvdyB0aGUgZXJyb3Igc3RhdGUuXG4gICAqL1xuICBASW5wdXQoKSB0YXJnZXQ/OiBGaWVsZENvbnRyb2wgfCB7IGNvbnRyb2xzPzogeyB0b0FycmF5KCk6IEZpZWxkQ29udHJvbFtdIH0gfTtcbn1cbiJdfQ==
@@ -1,5 +1,5 @@
1
1
  import { __decorate } from "tslib";
2
- import { Component, ContentChild, ContentChildren, Injectable, Input, isDevMode, ViewChild, ViewChildren, } from '@angular/core';
2
+ import { Component, ContentChild, ContentChildren, Injectable, Input, isDevMode, Optional, SkipSelf, ViewChild, ViewChildren, } from '@angular/core';
3
3
  import { FieldNoteDirective } from './field-note.directive';
4
4
  import { FieldErrorDirective } from './field-error.directive';
5
5
  import { LabelComponent } from '../../label/src/label.component';
@@ -12,7 +12,7 @@ import { CdkPortalOutlet } from '@angular/cdk/portal';
12
12
  import { UseComponentStylesOnHost } from '../../common/sapphire-view-encapsulation';
13
13
  import { ICON_SIZE_PROVIDER, } from '../../icon/src/icon-size-provider';
14
14
  import { RadioGroupComponent } from '../../radio/src/radio-group.component';
15
- import { iconWarning, iconError, iconCheckmarkOutline, } from '@danske/sapphire-icons/js';
15
+ import { iconCheckmarkOutline, iconError, iconWarning, } from '@danske/sapphire-icons/js';
16
16
  import * as i0 from "@angular/core";
17
17
  import * as i1 from "../../icon/public_api";
18
18
  import * as i2 from "../../common/sapphire-view-encapsulation";
@@ -33,6 +33,13 @@ FieldIconSizeProvider.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0"
33
33
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.0", ngImport: i0, type: FieldIconSizeProvider, decorators: [{
34
34
  type: Injectable
35
35
  }], ctorParameters: function () { return [{ type: FieldComponent }]; } });
36
+ const fieldHostBinding = {
37
+ class: 'sapphire-field',
38
+ '[class.sapphire-field--label-placement-side]': 'labelPlacement === "side"',
39
+ '[class.sapphire-field--no-width]': 'noDefaultWidth || !controlHasDefaultWidth()',
40
+ '[class.sapphire-field--label-alignment-top]': 'labelPlacement === "side" && hasRadioGroupChild()',
41
+ '[class.sapphire-field--md]': 'size === "md"',
42
+ };
36
43
  /**
37
44
  * A field is a common container for labelable controls such as select, radio group, text field,
38
45
  * etc.
@@ -56,8 +63,9 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.0", ngImpor
56
63
  * is determined based on the presence of @angular/form's {@link RequiredValidator}.
57
64
  */
58
65
  export class FieldComponent {
59
- constructor(changeDetectorRef, iconRegistry) {
66
+ constructor(changeDetectorRef, iconRegistry, fieldset) {
60
67
  this.changeDetectorRef = changeDetectorRef;
68
+ this.fieldset = fieldset;
61
69
  /**
62
70
  * Label placement with respect to the form control.
63
71
  * @default "above"
@@ -111,10 +119,36 @@ export class FieldComponent {
111
119
  }
112
120
  /**
113
121
  * Whether the field contains an error message (sp-field-error).
122
+ * Also checks if a parent fieldset has an error.
114
123
  */
115
124
  hasError(targetField) {
116
- return (this.error !== undefined &&
117
- (!targetField || !this.error.target || this.error.target === targetField));
125
+ // Check if this field has its own error
126
+ if (this._hasOwnError(targetField)) {
127
+ return true;
128
+ }
129
+ // Check if parent fieldset has an error targetting this field
130
+ if (this.fieldset) {
131
+ return this.fieldset.hasError(targetField);
132
+ }
133
+ return false;
134
+ }
135
+ _hasOwnError(targetField) {
136
+ if (!this.error) {
137
+ return false;
138
+ }
139
+ const { target } = this.error;
140
+ // If no target is specified, error applies to all controls
141
+ if (!target) {
142
+ return true;
143
+ }
144
+ // If the target is a FieldControl, check if it matches
145
+ if (this._isFieldControl(target)) {
146
+ return target === targetField;
147
+ }
148
+ return false;
149
+ }
150
+ _isFieldControl(target) {
151
+ return (typeof target === 'object' && target !== null && 'isDisabled' in target);
118
152
  }
119
153
  /**
120
154
  * If there are multiple controls, the field is only disabled when all of them are disabled
@@ -169,13 +203,13 @@ export class FieldComponent {
169
203
  this.changed = true;
170
204
  }
171
205
  }
172
- FieldComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.0", ngImport: i0, type: FieldComponent, deps: [{ token: i0.ChangeDetectorRef }, { token: i1.IconRegistry }], target: i0.ɵɵFactoryTarget.Component });
206
+ FieldComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.0", ngImport: i0, type: FieldComponent, deps: [{ token: i0.ChangeDetectorRef }, { token: i1.IconRegistry }, { token: FieldsetComponent, optional: true, skipSelf: true }], target: i0.ɵɵFactoryTarget.Component });
173
207
  FieldComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.0", type: FieldComponent, selector: "sp-field", inputs: { necessityIndicator: "necessityIndicator", labelPlacement: "labelPlacement", noDefaultWidth: "noDefaultWidth", allowNoteAndError: "allowNoteAndError", size: "size" }, host: { properties: { "class.sapphire-field--label-placement-side": "labelPlacement === \"side\"", "class.sapphire-field--no-width": "noDefaultWidth || !controlHasDefaultWidth()", "class.sapphire-field--label-alignment-top": "labelPlacement === \"side\" && hasRadioGroupChild()", "class.sapphire-field--md": "size === \"md\"" }, classAttribute: "sapphire-field" }, providers: [
174
208
  {
175
209
  provide: ICON_SIZE_PROVIDER,
176
210
  useClass: FieldIconSizeProvider,
177
211
  },
178
- ], queries: [{ propertyName: "note", first: true, predicate: FieldNoteDirective, descendants: true }, { propertyName: "error", first: true, predicate: FieldErrorDirective, descendants: true }, { propertyName: "_fieldLabel", first: true, predicate: FieldLabelDirective, descendants: true }, { propertyName: "radioGroup", first: true, predicate: RadioGroupComponent, descendants: true }, { propertyName: "ngControl", first: true, predicate: NgControl, descendants: true }, { propertyName: "requiredValidator", first: true, predicate: RequiredValidator, descendants: true }, { propertyName: "controls", predicate: FieldControl }], viewQueries: [{ propertyName: "label", first: true, predicate: LabelComponent, descendants: true }, { propertyName: "suffixPortalOutlet", predicate: CdkPortalOutlet, descendants: true }], hostDirectives: [{ directive: i2.UseComponentStylesOnHost }], ngImport: i0, template: "<div class=\"sapphire-field__label\" *ngIf=\"_fieldLabel\">\n <sp-label\n [necessityIndicator]=\"labelNecessityIndicator\"\n [for]=\"control?.getId?.()\"\n [disabled]=\"isDisabled()\"\n (labelClick)=\"control?.focus?.('keyboard')\"\n [size]=\"size\"\n >\n <ng-content select=\"sp-field-label\"></ng-content>\n <ng-content\n select=\"sp-help-button\"\n ngProjectAs=\"sp-help-button\"\n ></ng-content>\n </sp-label>\n</div>\n<div\n class=\"sapphire-field__control\"\n [ngClass]=\"{\n 'sapphire-field__control--group': isGroup\n }\"\n>\n <ng-content></ng-content>\n</div>\n<div class=\"sapphire-field__message\" *ngIf=\"note || error || _noteSuffixPortal\">\n <div class=\"sapphire-field__note-row sapphire-text--negative\" *ngIf=\"error\">\n <span class=\"sapphire-field__note-icon\">\n <sp-icon name=\"error\" size=\"sm\"></sp-icon>\n </span>\n <div class=\"sapphire-field__note\">\n <ng-content select=\"sp-field-error\"></ng-content>\n </div>\n\n <ng-container *ngIf=\"_noteSuffixPortal\">\n <ng-container *cdkPortalOutlet=\"_noteSuffixPortal\"></ng-container>\n </ng-container>\n </div>\n <div\n class=\"sapphire-field__note-row\"\n [ngClass]=\"{\n 'sapphire-text--positive': note?.variant === 'success',\n 'sapphire-text--warning': note?.variant === 'warning'\n }\"\n *ngIf=\"note && (!error || allowNoteAndError)\"\n >\n <span class=\"sapphire-field__note-icon\" *ngIf=\"note?.icon\">\n <sp-icon [name]=\"note?.icon\" size=\"sm\"></sp-icon>\n </span>\n <div class=\"sapphire-field__note\">\n <ng-content select=\"sp-field-note\"></ng-content>\n </div>\n\n <ng-container *ngIf=\"!error && _noteSuffixPortal\">\n <ng-container *cdkPortalOutlet=\"_noteSuffixPortal\"></ng-container>\n </ng-container>\n </div>\n <div\n class=\"sapphire-field__note-row\"\n *ngIf=\"!note && !error && _noteSuffixPortal\"\n >\n <ng-container>\n <ng-container *cdkPortalOutlet=\"_noteSuffixPortal\"></ng-container>\n </ng-container>\n </div>\n</div>\n", styles: [".sapphire-field{display:inline-grid;grid-template-columns:auto;row-gap:var(--sapphire-semantic-size-spacing-2xs);column-gap:var(--sapphire-semantic-size-spacing-md);font-family:var(--sapphire-semantic-font-name-default);grid-auto-rows:min-content;width:var(--sapphire-semantic-size-width-field);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;box-sizing:border-box}.sapphire-field--no-width{width:auto}fieldset.sapphire-field{border:0;margin:0;padding:0}.sapphire-field__label{order:1;justify-content:end}legend.sapphire-field__label{padding:0;float:left}.sapphire-field__control{order:2;width:100%;min-width:0;line-height:var(--sapphire-semantic-size-line-height-md);font-size:var(--sapphire-semantic-size-font-control-lg)}.sapphire-field--md .sapphire-field__control{font-size:var(--sapphire-semantic-size-font-control-md)}.sapphire-field__control--group{display:flex;gap:var(--sapphire-semantic-size-spacing-xs)}.sapphire-field--md .sapphire-field__control--group{gap:var(--sapphire-semantic-size-spacing-2xs)}.sapphire-field--no-shrink .sapphire-field__control{min-width:initial}.sapphire-field__message{min-width:100%;max-width:min-content;order:3;display:flex;flex-direction:column;gap:var(--sapphire-semantic-size-spacing-4xs);padding:var(--sapphire-semantic-size-spacing-4xs) 0}.sapphire-field__note-row{display:flex;align-items:flex-start;gap:var(--sapphire-semantic-size-spacing-xs);font-size:var(--sapphire-semantic-size-font-label-md);line-height:var(--sapphire-semantic-size-line-height-md);color:var(--sapphire-semantic-color-foreground-secondary)}.sapphire-field--md .sapphire-field__note-row{font-size:var(--sapphire-semantic-size-font-label-sm);line-height:var(--sapphire-semantic-size-line-height-sm);gap:var(--sapphire-semantic-size-spacing-2xs)}.sapphire-field__note{flex:1}.sapphire-field__note-icon{display:inline-flex;line-height:0;padding-top:var(--sapphire-semantic-size-spacing-4xs)}.sapphire-field--md .sapphire-field__note-icon{padding-top:0}.sapphire-field.is-disabled .sapphire-field__control{opacity:var(--sapphire-semantic-opacity-disabled);cursor:not-allowed}.sapphire-field.is-disabled .sapphire-field__control *{cursor:inherit}.sapphire-field--label-placement-side{grid-template-columns:max-content auto;width:auto}.sapphire-field--label-placement-side:not(.sapphire-field--no-width) .sapphire-field__control{width:var(--sapphire-semantic-size-width-field)}.sapphire-field--label-placement-side .sapphire-field__message{grid-column:2}.sapphire-field--label-placement-side .sapphire-field__label{display:flex;align-items:center;max-height:var(--sapphire-semantic-size-height-control-lg)}.sapphire-field--label-placement-side.sapphire-field--md .sapphire-field__label{max-height:var(--sapphire-semantic-size-height-control-md)}.sapphire-field--label-placement-side.sapphire-field--label-alignment-top .sapphire-field__label{align-items:flex-start;max-height:unset}.sapphire-fieldset{display:inline-flex;flex-direction:column;width:min-content;gap:var(--sapphire-semantic-size-spacing-lg)}.sapphire-fieldset .sapphire-field--label-placement-side{grid-template-columns:1fr min-content}.sapphire-fieldset .sapphire-field--label-placement-side .sapphire-field__label{white-space:nowrap}.sapphire-text{font-family:var(--sapphire-semantic-font-name-default);color:var(--sapphire-semantic-color-foreground-primary);font-weight:var(--sapphire-semantic-font-weight-default-regular);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.sapphire-text--strong{font-weight:var(--sapphire-semantic-font-weight-default-bold)}.sapphire-text--semibold{font-weight:var(--sapphire-semantic-font-weight-default-medium)}.sapphire-text--underlined{text-decoration:underline}.sapphire-text--secondary{color:var(--sapphire-semantic-color-foreground-secondary)}.sapphire-text--informative{color:var(--sapphire-semantic-color-foreground-accent)}.sapphire-text--positive{color:var(--sapphire-semantic-color-foreground-positive)}.sapphire-text--warning{color:var(--sapphire-semantic-color-foreground-warning)}.sapphire-text--negative{color:var(--sapphire-semantic-color-foreground-negative)}.sapphire-text--heading-2xl,.sapphire-text--heading-xl,.sapphire-text--heading-lg,.sapphire-text--heading-md,.sapphire-text--heading-sm,.sapphire-text--heading-xs{margin-top:0;margin-bottom:0;line-height:var(--sapphire-global-size-line-height-sm);letter-spacing:-.01em}.sapphire-text--heading-2xl{font-weight:var(--sapphire-semantic-font-weight-default-regular);font-size:var(--sapphire-semantic-size-font-heading-2xl)}.sapphire-text--heading-xl{font-weight:var(--sapphire-semantic-font-weight-default-medium);font-size:var(--sapphire-semantic-size-font-heading-xl)}.sapphire-text--heading-lg{font-weight:var(--sapphire-semantic-font-weight-default-medium);font-size:var(--sapphire-semantic-size-font-heading-lg)}.sapphire-text--heading-md{font-weight:var(--sapphire-semantic-font-weight-default-medium);font-size:var(--sapphire-semantic-size-font-heading-md)}.sapphire-text--heading-sm{font-weight:var(--sapphire-semantic-font-weight-default-medium);font-size:var(--sapphire-semantic-size-font-heading-sm)}.sapphire-text--heading-xs{font-weight:var(--sapphire-semantic-font-weight-default-medium);font-size:var(--sapphire-semantic-size-font-heading-xs)}.sapphire-text--subheading-md,.sapphire-text--subheading-sm{line-height:var(--sapphire-global-size-line-height-sm)}.sapphire-text--subheading-md{font-size:var(--sapphire-semantic-size-font-body-sm)}.sapphire-text--subheading-sm{font-size:var(--sapphire-semantic-size-font-body-xs)}.sapphire-text--body-lg,.sapphire-text--body-md,.sapphire-text--body-sm,.sapphire-text--body-xs{line-height:var(--sapphire-global-size-line-height-md);margin-top:0;margin-bottom:0}.sapphire-text--body-lg{font-size:var(--sapphire-semantic-size-font-body-lg)}.sapphire-text--body-md{font-size:var(--sapphire-semantic-size-font-body-md)}.sapphire-text--body-sm{font-size:var(--sapphire-semantic-size-font-body-sm)}.sapphire-text--body-xs{font-size:var(--sapphire-semantic-size-font-body-xs)}.sapphire-text--caption-md,.sapphire-text--caption-sm{font-weight:var(--sapphire-semantic-font-weight-default-bold);line-height:var(--sapphire-global-size-line-height-sm)}.sapphire-text--caption-md{font-size:var(--sapphire-semantic-size-font-body-sm)}.sapphire-text--caption-sm{font-size:var(--sapphire-semantic-size-font-body-xs)}\n"], dependencies: [{ kind: "directive", type: i3.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i4.CdkPortalOutlet, selector: "[cdkPortalOutlet]", inputs: ["cdkPortalOutlet"], outputs: ["attached"], exportAs: ["cdkPortalOutlet"] }, { kind: "component", type: i5.LabelComponent, selector: "sp-label", inputs: ["id", "for", "disabled", "necessityIndicator", "size"], outputs: ["labelClick"] }, { kind: "directive", type: i3.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "component", type: i6.IconComponent, selector: "sp-icon", inputs: ["name", "size", "color"] }] });
212
+ ], queries: [{ propertyName: "note", first: true, predicate: FieldNoteDirective, descendants: true }, { propertyName: "error", first: true, predicate: FieldErrorDirective, descendants: true }, { propertyName: "_fieldLabel", first: true, predicate: FieldLabelDirective }, { propertyName: "radioGroup", first: true, predicate: RadioGroupComponent, descendants: true }, { propertyName: "ngControl", first: true, predicate: NgControl, descendants: true }, { propertyName: "requiredValidator", first: true, predicate: RequiredValidator, descendants: true }, { propertyName: "controls", predicate: FieldControl, descendants: true }], viewQueries: [{ propertyName: "label", first: true, predicate: LabelComponent, descendants: true }, { propertyName: "suffixPortalOutlet", predicate: CdkPortalOutlet, descendants: true }], hostDirectives: [{ directive: i2.UseComponentStylesOnHost }], ngImport: i0, template: "<div class=\"sapphire-field__label\" *ngIf=\"_fieldLabel\">\n <sp-label\n [necessityIndicator]=\"labelNecessityIndicator\"\n [for]=\"control?.getId?.()\"\n [disabled]=\"isDisabled()\"\n (labelClick)=\"control?.focus?.('keyboard')\"\n [size]=\"size\"\n >\n <ng-content select=\"sp-field-label\"></ng-content>\n <ng-content\n select=\"sp-help-button\"\n ngProjectAs=\"sp-help-button\"\n ></ng-content>\n </sp-label>\n</div>\n<div\n class=\"sapphire-field__control\"\n [ngClass]=\"{\n 'sapphire-field__control--group': isGroup\n }\"\n>\n <ng-content></ng-content>\n</div>\n<div class=\"sapphire-field__message\" *ngIf=\"note || error || _noteSuffixPortal\">\n <div class=\"sapphire-field__note-row sapphire-text--negative\" *ngIf=\"error\">\n <span class=\"sapphire-field__note-icon\">\n <sp-icon name=\"error\" size=\"sm\"></sp-icon>\n </span>\n <div class=\"sapphire-field__note\">\n <ng-content select=\"sp-field-error\"></ng-content>\n </div>\n\n <ng-container *ngIf=\"_noteSuffixPortal\">\n <ng-container *cdkPortalOutlet=\"_noteSuffixPortal\"></ng-container>\n </ng-container>\n </div>\n <div\n class=\"sapphire-field__note-row\"\n [ngClass]=\"{\n 'sapphire-text--positive': note?.variant === 'success',\n 'sapphire-text--warning': note?.variant === 'warning'\n }\"\n *ngIf=\"note && (!error || allowNoteAndError)\"\n >\n <span class=\"sapphire-field__note-icon\" *ngIf=\"note?.icon\">\n <sp-icon [name]=\"note?.icon\" size=\"sm\"></sp-icon>\n </span>\n <div class=\"sapphire-field__note\">\n <ng-content select=\"sp-field-note\"></ng-content>\n </div>\n\n <ng-container *ngIf=\"!error && _noteSuffixPortal\">\n <ng-container *cdkPortalOutlet=\"_noteSuffixPortal\"></ng-container>\n </ng-container>\n </div>\n <div\n class=\"sapphire-field__note-row\"\n *ngIf=\"!note && !error && _noteSuffixPortal\"\n >\n <ng-container>\n <ng-container *cdkPortalOutlet=\"_noteSuffixPortal\"></ng-container>\n </ng-container>\n </div>\n</div>\n", styles: [".sapphire-field{display:inline-grid;grid-template-columns:auto;row-gap:var(--sapphire-semantic-size-spacing-2xs);column-gap:var(--sapphire-semantic-size-spacing-md);font-family:var(--sapphire-semantic-font-name-default);grid-auto-rows:min-content;width:var(--sapphire-semantic-size-width-field);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;box-sizing:border-box}.sapphire-field--no-width{width:auto}fieldset.sapphire-field{border:0;margin:0;padding:0}.sapphire-field__label{order:1;justify-content:end}legend.sapphire-field__label{padding:0;float:left}.sapphire-field__control{order:2;width:100%;min-width:0;line-height:var(--sapphire-semantic-size-line-height-md);font-size:var(--sapphire-semantic-size-font-control-lg)}.sapphire-field--md .sapphire-field__control{font-size:var(--sapphire-semantic-size-font-control-md)}.sapphire-field__control--group{display:flex;gap:var(--sapphire-semantic-size-spacing-xs)}.sapphire-field--md .sapphire-field__control--group{gap:var(--sapphire-semantic-size-spacing-2xs)}.sapphire-field--no-shrink .sapphire-field__control{min-width:initial}.sapphire-field__message{min-width:100%;max-width:min-content;order:3;display:flex;flex-direction:column;gap:var(--sapphire-semantic-size-spacing-4xs);padding:var(--sapphire-semantic-size-spacing-4xs) 0}.sapphire-field__note-row{display:flex;align-items:flex-start;gap:var(--sapphire-semantic-size-spacing-xs);font-size:var(--sapphire-semantic-size-font-label-md);line-height:var(--sapphire-semantic-size-line-height-md);color:var(--sapphire-semantic-color-foreground-secondary)}.sapphire-field--md .sapphire-field__note-row{font-size:var(--sapphire-semantic-size-font-label-sm);line-height:var(--sapphire-semantic-size-line-height-sm);gap:var(--sapphire-semantic-size-spacing-2xs)}.sapphire-field__note{flex:1}.sapphire-field__note-icon{display:inline-flex;line-height:0;padding-top:var(--sapphire-semantic-size-spacing-4xs)}.sapphire-field--md .sapphire-field__note-icon{padding-top:0}.sapphire-field.is-disabled .sapphire-field__control{opacity:var(--sapphire-semantic-opacity-disabled);cursor:not-allowed}.sapphire-field.is-disabled .sapphire-field__control *{cursor:inherit}.sapphire-field--label-placement-side{grid-template-columns:max-content auto;width:auto}.sapphire-field--label-placement-side:not(.sapphire-field--no-width) .sapphire-field__control{width:var(--sapphire-semantic-size-width-field)}.sapphire-field--label-placement-side .sapphire-field__message{grid-column:2}.sapphire-field--label-placement-side .sapphire-field__label{display:flex;align-items:center;max-height:var(--sapphire-semantic-size-height-control-lg)}.sapphire-field--label-placement-side.sapphire-field--md .sapphire-field__label{max-height:var(--sapphire-semantic-size-height-control-md)}.sapphire-field--label-placement-side.sapphire-field--label-alignment-top .sapphire-field__label{align-items:flex-start;max-height:unset}.sapphire-fieldset{display:inline-flex;flex-direction:column;width:min-content;gap:var(--sapphire-semantic-size-spacing-lg)}.sapphire-fieldset .sapphire-field--label-placement-side{grid-template-columns:1fr min-content}.sapphire-fieldset .sapphire-field--label-placement-side .sapphire-field__label{white-space:nowrap}.sapphire-text{font-family:var(--sapphire-semantic-font-name-default);color:var(--sapphire-semantic-color-foreground-primary);font-weight:var(--sapphire-semantic-font-weight-default-regular);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.sapphire-text--strong{font-weight:var(--sapphire-semantic-font-weight-default-bold)}.sapphire-text--semibold{font-weight:var(--sapphire-semantic-font-weight-default-medium)}.sapphire-text--underlined{text-decoration:underline}.sapphire-text--secondary{color:var(--sapphire-semantic-color-foreground-secondary)}.sapphire-text--informative{color:var(--sapphire-semantic-color-foreground-accent)}.sapphire-text--positive{color:var(--sapphire-semantic-color-foreground-positive)}.sapphire-text--warning{color:var(--sapphire-semantic-color-foreground-warning)}.sapphire-text--negative{color:var(--sapphire-semantic-color-foreground-negative)}.sapphire-text--heading-2xl,.sapphire-text--heading-xl,.sapphire-text--heading-lg,.sapphire-text--heading-md,.sapphire-text--heading-sm,.sapphire-text--heading-xs{margin-top:0;margin-bottom:0;line-height:var(--sapphire-global-size-line-height-sm);letter-spacing:-.01em}.sapphire-text--heading-2xl{font-weight:var(--sapphire-semantic-font-weight-default-regular);font-size:var(--sapphire-semantic-size-font-heading-2xl)}.sapphire-text--heading-xl{font-weight:var(--sapphire-semantic-font-weight-default-medium);font-size:var(--sapphire-semantic-size-font-heading-xl)}.sapphire-text--heading-lg{font-weight:var(--sapphire-semantic-font-weight-default-medium);font-size:var(--sapphire-semantic-size-font-heading-lg)}.sapphire-text--heading-md{font-weight:var(--sapphire-semantic-font-weight-default-medium);font-size:var(--sapphire-semantic-size-font-heading-md)}.sapphire-text--heading-sm{font-weight:var(--sapphire-semantic-font-weight-default-medium);font-size:var(--sapphire-semantic-size-font-heading-sm)}.sapphire-text--heading-xs{font-weight:var(--sapphire-semantic-font-weight-default-medium);font-size:var(--sapphire-semantic-size-font-heading-xs)}.sapphire-text--subheading-md,.sapphire-text--subheading-sm{line-height:var(--sapphire-global-size-line-height-sm)}.sapphire-text--subheading-md{font-size:var(--sapphire-semantic-size-font-body-sm)}.sapphire-text--subheading-sm{font-size:var(--sapphire-semantic-size-font-body-xs)}.sapphire-text--body-lg,.sapphire-text--body-md,.sapphire-text--body-sm,.sapphire-text--body-xs{line-height:var(--sapphire-global-size-line-height-md);margin-top:0;margin-bottom:0}.sapphire-text--body-lg{font-size:var(--sapphire-semantic-size-font-body-lg)}.sapphire-text--body-md{font-size:var(--sapphire-semantic-size-font-body-md)}.sapphire-text--body-sm{font-size:var(--sapphire-semantic-size-font-body-sm)}.sapphire-text--body-xs{font-size:var(--sapphire-semantic-size-font-body-xs)}.sapphire-text--caption-md,.sapphire-text--caption-sm{font-weight:var(--sapphire-semantic-font-weight-default-bold);line-height:var(--sapphire-global-size-line-height-sm)}.sapphire-text--caption-md{font-size:var(--sapphire-semantic-size-font-body-sm)}.sapphire-text--caption-sm{font-size:var(--sapphire-semantic-size-font-body-xs)}\n"], dependencies: [{ kind: "directive", type: i3.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i4.CdkPortalOutlet, selector: "[cdkPortalOutlet]", inputs: ["cdkPortalOutlet"], outputs: ["attached"], exportAs: ["cdkPortalOutlet"] }, { kind: "component", type: i5.LabelComponent, selector: "sp-label", inputs: ["id", "for", "disabled", "necessityIndicator", "size"], outputs: ["labelClick"] }, { kind: "directive", type: i3.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "component", type: i6.IconComponent, selector: "sp-icon", inputs: ["name", "size", "color"] }] });
179
213
  __decorate([
180
214
  CoerceBoolean
181
215
  ], FieldComponent.prototype, "necessityIndicator", void 0);
@@ -187,19 +221,17 @@ __decorate([
187
221
  ], FieldComponent.prototype, "allowNoteAndError", void 0);
188
222
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.0", ngImport: i0, type: FieldComponent, decorators: [{
189
223
  type: Component,
190
- args: [{ selector: 'sp-field', host: {
191
- class: 'sapphire-field',
192
- '[class.sapphire-field--label-placement-side]': 'labelPlacement === "side"',
193
- '[class.sapphire-field--no-width]': 'noDefaultWidth || !controlHasDefaultWidth()',
194
- '[class.sapphire-field--label-alignment-top]': 'labelPlacement === "side" && hasRadioGroupChild()',
195
- '[class.sapphire-field--md]': 'size === "md"',
196
- }, hostDirectives: [UseComponentStylesOnHost], providers: [
224
+ args: [{ selector: 'sp-field', host: fieldHostBinding, hostDirectives: [UseComponentStylesOnHost], providers: [
197
225
  {
198
226
  provide: ICON_SIZE_PROVIDER,
199
227
  useClass: FieldIconSizeProvider,
200
228
  },
201
229
  ], standalone: false, template: "<div class=\"sapphire-field__label\" *ngIf=\"_fieldLabel\">\n <sp-label\n [necessityIndicator]=\"labelNecessityIndicator\"\n [for]=\"control?.getId?.()\"\n [disabled]=\"isDisabled()\"\n (labelClick)=\"control?.focus?.('keyboard')\"\n [size]=\"size\"\n >\n <ng-content select=\"sp-field-label\"></ng-content>\n <ng-content\n select=\"sp-help-button\"\n ngProjectAs=\"sp-help-button\"\n ></ng-content>\n </sp-label>\n</div>\n<div\n class=\"sapphire-field__control\"\n [ngClass]=\"{\n 'sapphire-field__control--group': isGroup\n }\"\n>\n <ng-content></ng-content>\n</div>\n<div class=\"sapphire-field__message\" *ngIf=\"note || error || _noteSuffixPortal\">\n <div class=\"sapphire-field__note-row sapphire-text--negative\" *ngIf=\"error\">\n <span class=\"sapphire-field__note-icon\">\n <sp-icon name=\"error\" size=\"sm\"></sp-icon>\n </span>\n <div class=\"sapphire-field__note\">\n <ng-content select=\"sp-field-error\"></ng-content>\n </div>\n\n <ng-container *ngIf=\"_noteSuffixPortal\">\n <ng-container *cdkPortalOutlet=\"_noteSuffixPortal\"></ng-container>\n </ng-container>\n </div>\n <div\n class=\"sapphire-field__note-row\"\n [ngClass]=\"{\n 'sapphire-text--positive': note?.variant === 'success',\n 'sapphire-text--warning': note?.variant === 'warning'\n }\"\n *ngIf=\"note && (!error || allowNoteAndError)\"\n >\n <span class=\"sapphire-field__note-icon\" *ngIf=\"note?.icon\">\n <sp-icon [name]=\"note?.icon\" size=\"sm\"></sp-icon>\n </span>\n <div class=\"sapphire-field__note\">\n <ng-content select=\"sp-field-note\"></ng-content>\n </div>\n\n <ng-container *ngIf=\"!error && _noteSuffixPortal\">\n <ng-container *cdkPortalOutlet=\"_noteSuffixPortal\"></ng-container>\n </ng-container>\n </div>\n <div\n class=\"sapphire-field__note-row\"\n *ngIf=\"!note && !error && _noteSuffixPortal\"\n >\n <ng-container>\n <ng-container *cdkPortalOutlet=\"_noteSuffixPortal\"></ng-container>\n </ng-container>\n </div>\n</div>\n", styles: [".sapphire-field{display:inline-grid;grid-template-columns:auto;row-gap:var(--sapphire-semantic-size-spacing-2xs);column-gap:var(--sapphire-semantic-size-spacing-md);font-family:var(--sapphire-semantic-font-name-default);grid-auto-rows:min-content;width:var(--sapphire-semantic-size-width-field);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;box-sizing:border-box}.sapphire-field--no-width{width:auto}fieldset.sapphire-field{border:0;margin:0;padding:0}.sapphire-field__label{order:1;justify-content:end}legend.sapphire-field__label{padding:0;float:left}.sapphire-field__control{order:2;width:100%;min-width:0;line-height:var(--sapphire-semantic-size-line-height-md);font-size:var(--sapphire-semantic-size-font-control-lg)}.sapphire-field--md .sapphire-field__control{font-size:var(--sapphire-semantic-size-font-control-md)}.sapphire-field__control--group{display:flex;gap:var(--sapphire-semantic-size-spacing-xs)}.sapphire-field--md .sapphire-field__control--group{gap:var(--sapphire-semantic-size-spacing-2xs)}.sapphire-field--no-shrink .sapphire-field__control{min-width:initial}.sapphire-field__message{min-width:100%;max-width:min-content;order:3;display:flex;flex-direction:column;gap:var(--sapphire-semantic-size-spacing-4xs);padding:var(--sapphire-semantic-size-spacing-4xs) 0}.sapphire-field__note-row{display:flex;align-items:flex-start;gap:var(--sapphire-semantic-size-spacing-xs);font-size:var(--sapphire-semantic-size-font-label-md);line-height:var(--sapphire-semantic-size-line-height-md);color:var(--sapphire-semantic-color-foreground-secondary)}.sapphire-field--md .sapphire-field__note-row{font-size:var(--sapphire-semantic-size-font-label-sm);line-height:var(--sapphire-semantic-size-line-height-sm);gap:var(--sapphire-semantic-size-spacing-2xs)}.sapphire-field__note{flex:1}.sapphire-field__note-icon{display:inline-flex;line-height:0;padding-top:var(--sapphire-semantic-size-spacing-4xs)}.sapphire-field--md .sapphire-field__note-icon{padding-top:0}.sapphire-field.is-disabled .sapphire-field__control{opacity:var(--sapphire-semantic-opacity-disabled);cursor:not-allowed}.sapphire-field.is-disabled .sapphire-field__control *{cursor:inherit}.sapphire-field--label-placement-side{grid-template-columns:max-content auto;width:auto}.sapphire-field--label-placement-side:not(.sapphire-field--no-width) .sapphire-field__control{width:var(--sapphire-semantic-size-width-field)}.sapphire-field--label-placement-side .sapphire-field__message{grid-column:2}.sapphire-field--label-placement-side .sapphire-field__label{display:flex;align-items:center;max-height:var(--sapphire-semantic-size-height-control-lg)}.sapphire-field--label-placement-side.sapphire-field--md .sapphire-field__label{max-height:var(--sapphire-semantic-size-height-control-md)}.sapphire-field--label-placement-side.sapphire-field--label-alignment-top .sapphire-field__label{align-items:flex-start;max-height:unset}.sapphire-fieldset{display:inline-flex;flex-direction:column;width:min-content;gap:var(--sapphire-semantic-size-spacing-lg)}.sapphire-fieldset .sapphire-field--label-placement-side{grid-template-columns:1fr min-content}.sapphire-fieldset .sapphire-field--label-placement-side .sapphire-field__label{white-space:nowrap}.sapphire-text{font-family:var(--sapphire-semantic-font-name-default);color:var(--sapphire-semantic-color-foreground-primary);font-weight:var(--sapphire-semantic-font-weight-default-regular);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.sapphire-text--strong{font-weight:var(--sapphire-semantic-font-weight-default-bold)}.sapphire-text--semibold{font-weight:var(--sapphire-semantic-font-weight-default-medium)}.sapphire-text--underlined{text-decoration:underline}.sapphire-text--secondary{color:var(--sapphire-semantic-color-foreground-secondary)}.sapphire-text--informative{color:var(--sapphire-semantic-color-foreground-accent)}.sapphire-text--positive{color:var(--sapphire-semantic-color-foreground-positive)}.sapphire-text--warning{color:var(--sapphire-semantic-color-foreground-warning)}.sapphire-text--negative{color:var(--sapphire-semantic-color-foreground-negative)}.sapphire-text--heading-2xl,.sapphire-text--heading-xl,.sapphire-text--heading-lg,.sapphire-text--heading-md,.sapphire-text--heading-sm,.sapphire-text--heading-xs{margin-top:0;margin-bottom:0;line-height:var(--sapphire-global-size-line-height-sm);letter-spacing:-.01em}.sapphire-text--heading-2xl{font-weight:var(--sapphire-semantic-font-weight-default-regular);font-size:var(--sapphire-semantic-size-font-heading-2xl)}.sapphire-text--heading-xl{font-weight:var(--sapphire-semantic-font-weight-default-medium);font-size:var(--sapphire-semantic-size-font-heading-xl)}.sapphire-text--heading-lg{font-weight:var(--sapphire-semantic-font-weight-default-medium);font-size:var(--sapphire-semantic-size-font-heading-lg)}.sapphire-text--heading-md{font-weight:var(--sapphire-semantic-font-weight-default-medium);font-size:var(--sapphire-semantic-size-font-heading-md)}.sapphire-text--heading-sm{font-weight:var(--sapphire-semantic-font-weight-default-medium);font-size:var(--sapphire-semantic-size-font-heading-sm)}.sapphire-text--heading-xs{font-weight:var(--sapphire-semantic-font-weight-default-medium);font-size:var(--sapphire-semantic-size-font-heading-xs)}.sapphire-text--subheading-md,.sapphire-text--subheading-sm{line-height:var(--sapphire-global-size-line-height-sm)}.sapphire-text--subheading-md{font-size:var(--sapphire-semantic-size-font-body-sm)}.sapphire-text--subheading-sm{font-size:var(--sapphire-semantic-size-font-body-xs)}.sapphire-text--body-lg,.sapphire-text--body-md,.sapphire-text--body-sm,.sapphire-text--body-xs{line-height:var(--sapphire-global-size-line-height-md);margin-top:0;margin-bottom:0}.sapphire-text--body-lg{font-size:var(--sapphire-semantic-size-font-body-lg)}.sapphire-text--body-md{font-size:var(--sapphire-semantic-size-font-body-md)}.sapphire-text--body-sm{font-size:var(--sapphire-semantic-size-font-body-sm)}.sapphire-text--body-xs{font-size:var(--sapphire-semantic-size-font-body-xs)}.sapphire-text--caption-md,.sapphire-text--caption-sm{font-weight:var(--sapphire-semantic-font-weight-default-bold);line-height:var(--sapphire-global-size-line-height-sm)}.sapphire-text--caption-md{font-size:var(--sapphire-semantic-size-font-body-sm)}.sapphire-text--caption-sm{font-size:var(--sapphire-semantic-size-font-body-xs)}\n"] }]
202
- }], ctorParameters: function () { return [{ type: i0.ChangeDetectorRef }, { type: i1.IconRegistry }]; }, propDecorators: { necessityIndicator: [{
230
+ }], ctorParameters: function () { return [{ type: i0.ChangeDetectorRef }, { type: i1.IconRegistry }, { type: FieldsetComponent, decorators: [{
231
+ type: Optional
232
+ }, {
233
+ type: SkipSelf
234
+ }] }]; }, propDecorators: { necessityIndicator: [{
203
235
  type: Input
204
236
  }], labelPlacement: [{
205
237
  type: Input
@@ -220,10 +252,10 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.0", ngImpor
220
252
  args: [LabelComponent]
221
253
  }], _fieldLabel: [{
222
254
  type: ContentChild,
223
- args: [FieldLabelDirective]
255
+ args: [FieldLabelDirective, { descendants: false }]
224
256
  }], controls: [{
225
257
  type: ContentChildren,
226
- args: [FieldControl]
258
+ args: [FieldControl, { descendants: true }]
227
259
  }], radioGroup: [{
228
260
  type: ContentChild,
229
261
  args: [RadioGroupComponent]
@@ -237,4 +269,32 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.0", ngImpor
237
269
  type: ViewChildren,
238
270
  args: [CdkPortalOutlet]
239
271
  }] } });
240
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmllbGQuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vc3JjL2xpYi9maWVsZC9zcmMvZmllbGQuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vc3JjL2xpYi9maWVsZC9zcmMvZmllbGQuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IjtBQUFBLE9BQU8sRUFJTCxTQUFTLEVBQ1QsWUFBWSxFQUNaLGVBQWUsRUFDZixVQUFVLEVBQ1YsS0FBSyxFQUNMLFNBQVMsRUFFVCxTQUFTLEVBQ1QsWUFBWSxHQUNiLE1BQU0sZUFBZSxDQUFDO0FBQ3ZCLE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxNQUFNLHdCQUF3QixDQUFDO0FBQzVELE9BQU8sRUFBRSxtQkFBbUIsRUFBRSxNQUFNLHlCQUF5QixDQUFDO0FBQzlELE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSxpQ0FBaUMsQ0FBQztBQUNqRSxPQUFPLEVBQWdCLHFCQUFxQixFQUFFLE1BQU0sdUJBQXVCLENBQUM7QUFDNUUsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLHVDQUF1QyxDQUFDO0FBQ3RFLE9BQU8sRUFBRSxTQUFTLEVBQUUsaUJBQWlCLEVBQUUsVUFBVSxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFDMUUsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQy9DLE9BQU8sRUFBRSxtQkFBbUIsRUFBRSxNQUFNLHlCQUF5QixDQUFDO0FBQzlELE9BQU8sRUFBRSxlQUFlLEVBQWEsTUFBTSxxQkFBcUIsQ0FBQztBQUNqRSxPQUFPLEVBQUUsd0JBQXdCLEVBQUUsTUFBTSwwQ0FBMEMsQ0FBQztBQUNwRixPQUFPLEVBQ0wsa0JBQWtCLEdBRW5CLE1BQU0sbUNBQW1DLENBQUM7QUFDM0MsT0FBTyxFQUFFLG1CQUFtQixFQUFFLE1BQU0sdUNBQXVDLENBQUM7QUFFNUUsT0FBTyxFQUNMLFdBQVcsRUFDWCxTQUFTLEVB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QkFBa0I7Z0JBSWhDLEtBQUs7c0JBREosWUFBWTt1QkFBQyxtQkFBbUI7Z0JBSWpDLEtBQUs7c0JBREosU0FBUzt1QkFBQyxjQUFjO2dCQUl6QixXQUFXO3NCQURWLFlBQVk7dUJBQUMsbUJBQW1CO2dCQVFqQyxRQUFRO3NCQURQLGVBQWU7dUJBQUMsWUFBWTtnQkFJN0IsVUFBVTtzQkFEVCxZQUFZO3VCQUFDLG1CQUFtQjtnQkFJekIsU0FBUztzQkFEaEIsWUFBWTt1QkFBQyxTQUFTLEVBQUUsRUFBRSxXQUFXLEVBQUUsSUFBSSxFQUFFO2dCQUl0QyxpQkFBaUI7c0JBRHhCLFlBQVk7dUJBQUMsaUJBQWlCLEVBQUUsRUFBRSxXQUFXLEVBQUUsSUFBSSxFQUFFO2dCQUk5QyxrQkFBa0I7c0JBRHpCLFlBQVk7dUJBQUMsZUFBZSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XG4gIEFmdGVyQ29udGVudEluaXQsXG4gIEFmdGVyVmlld0NoZWNrZWQsXG4gIENoYW5nZURldGVjdG9yUmVmLFxuICBDb21wb25lbnQsXG4gIENvbnRlbnRDaGlsZCxcbiAgQ29udGVudENoaWxkcmVuLFxuICBJbmplY3RhYmxlLFxuICBJbnB1dCxcbiAgaXNEZXZNb2RlLFxuICBRdWVyeUxpc3QsXG4gIFZpZXdDaGlsZCxcbiAgVmlld0NoaWxkcmVuLFxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IEZpZWxkTm90ZURpcmVjdGl2ZSB9IGZyb20gJy4vZmllbGQtbm90ZS5kaXJlY3RpdmUnO1xuaW1wb3J0IHsgRmllbGRFcnJvckRpcmVjdGl2ZSB9IGZyb20gJy4vZmllbGQtZXJyb3IuZGlyZWN0aXZlJztcbmltcG9ydCB7IExhYmVsQ29tcG9uZW50IH0gZnJvbSAnLi4vLi4vbGFiZWwvc3JjL2xhYmVsLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBCb29sZWFuSW5wdXQsIGNvZXJjZUJvb2xlYW5Qcm9wZXJ0eSB9IGZyb20gJ0Bhbmd1bGFyL2Nkay9jb2VyY2lvbic7XG5pbXBvcnQgeyBDb2VyY2VCb29sZWFuIH0gZnJvbSAnLi4vLi4vY29tbW9uL2NvZXJjZS1ib29sZWFuLmRlY29yYXRvcic7XG5pbXBvcnQgeyBOZ0NvbnRyb2wsIFJlcXVpcmVkVmFsaWRhdG9yLCBWYWxpZGF0b3JzIH0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xuaW1wb3J0IHsgRmllbGRDb250cm9sIH0gZnJvbSAnLi9maWVsZC1jb250cm9sJztcbmltcG9ydCB7IEZpZWxkTGFiZWxEaXJlY3RpdmUgfSBmcm9tICcuL2ZpZWxkLWxhYmVsLmRpcmVjdGl2ZSc7XG5pbXBvcnQgeyBDZGtQb3J0YWxPdXRsZXQsIERvbVBvcnRhbCB9IGZyb20gJ0Bhbmd1bGFyL2Nkay9wb3J0YWwnO1xuaW1wb3J0IHsgVXNlQ29tcG9uZW50U3R5bGVzT25Ib3N0IH0gZnJvbSAnLi4vLi4vY29tbW9uL3NhcHBoaXJlLXZpZXctZW5jYXBzdWxhdGlvbic7XG5pbXBvcnQge1xuICBJQ09OX1NJWkVfUFJPVklERVIsXG4gIEljb25TaXplUHJvdmlkZXIsXG59IGZyb20gJy4uLy4uL2ljb24vc3JjL2ljb24tc2l6ZS1wcm92aWRlcic7XG5pbXBvcnQgeyBSYWRpb0dyb3VwQ29tcG9uZW50IH0gZnJvbSAnLi4vLi4vcmFkaW8vc3JjL3JhZGlvLWdyb3VwLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBJY29uUmVnaXN0cnkgfSBmcm9tICcuLi8uLi9pY29uL3B1YmxpY19hcGknO1xuaW1wb3J0IHtcbiAgaWNvbldhcm5pbmcsXG4gIGljb25FcnJvcixcbiAgaWNvbkNoZWNrbWFya091dGxpbmUsXG59IGZyb20gJ0BkYW5za2Uvc2FwcGhpcmUtaWNvbnMvanMnO1xuXG5ASW5qZWN0YWJsZSgpXG5jbGFzcyBGaWVsZEljb25TaXplUHJvdmlkZXIge1xuICBjb25zdHJ1Y3Rvcihwcml2YXRlIGZpZWxkOiBGaWVsZENvbXBvbmVudCkge31cblxuICBnZXQgc2l6ZSgpIHtcbiAgICByZXR1cm4gdGhpcy5maWVsZC5zaXplID09PSAnbGcnID8gJ21kJyA6ICdzbSc7XG4gIH1cbn1cblxuLyoqXG4gKiBBIGZpZWxkIGlzIGEgY29tbW9uIGNvbnRhaW5lciBmb3IgbGFiZWxhYmxlIGNvbnRyb2xzIHN1Y2ggYXMgc2VsZWN0LCByYWRpbyBncm91cCwgdGV4dCBmaWVsZCxcbiAqIGV0Yy5cbiAqIEluIGFkZGl0aW9uIHRvIHRoZSBmaWVsZCBjb250cm9sIChzcC1zZWxlY3QsIHNwLXJhZGlvLWdyb3VwLCBzcC10ZXh0LWZpZWxkKSwgdGhlIGZvbGxvd2luZ1xuICogY29tcG9uZW50cyBjYW4gYmUgdXNlZCBpbnNpZGUgYSBmaWVsZDpcbiAqIC0gc3AtZmllbGQtbGFiZWw6IGlzIHVzZWQgdG8gcHJvdmlkZSB0aGUgbGFiZWwgdGV4dCBmb3IgdGhlIGZpZWxkLlxuICogLSBzcC1oZWxwLWJ1dHRvbjogaXMgcGxhY2VkIGluIHRoZSBsYWJlbCBhcmVhLCBuZXh0IHRvIHRoZSBsYWJlbCB0ZXh0XG4gKiAtIHNwLWZpZWxkLWVycm9yOiBpcyB1c2VkIHRvIHByb3ZpZGUgYW4gZXJyb3IgbWVzc2FnZSwgd2hpY2ggaXMgcGxhY2VkIGJlbG93IHRoZSBmaWVsZCdzXG4gKiBjb250cm9sLlxuICogLSBzcC1maWVsZC1ub3RlOiBpcyB1c2VkIHRvIHByb3ZpZGUgYSBub3RlLCB3aGljaCBpcyBwbGFjZWQgYmVsb3cgdGhlIGZpZWxkJ3MgY29udHJvbC4gT25seVxuICogc2hvd25cbiAqICAgd2hlbiB0aGVyZSBpcyBubyBlcnJvclxuICogLSBzcC1maWVsZC1ub3RlLXN1ZmZpeDogaXMgdXNlZCB0byBwcm92aWRlIGEgc3VmZml4LCB3aGljaCBpcyBwbGFjZWQgb24gdGhlIHJpZ2h0IHNpZGUgb2YgdGhlXG4gKiBub3RlIGFyZWEuXG4gKlxuICogQWRkaXRpb25hbGx5LCBmaWVsZCBzdXBwb3J0czpcbiAqIC0gTGFiZWwgcGxhY2VtZW50IGVpdGhlciBhYm92ZSAoZGVmYXVsdCkgb3Igb24gdGhlIHNpZGUgb2YgdGhlIGNvbnRyb2wuXG4gKiAtIEFzc29jaWF0aW5nIGxhYmVsIHdpdGggdGhlIGNvbnRyb2wsIHNvIHRoYXQgY2xpY2tpbmcgdGhlIGxhYmVsIGZvY3VzZXMgdGhlIGNvbnRyb2wsIHNob3dpbmdcbiAqICAgZm9jdXMgcmluZy5cbiAqIC0gT3B0aW9uYWxseSBzaG93aW5nIG5lY2Vzc2l0eSBpbmRpY2F0b3IgaW4gdGhlIGxhYmVsLiBGaWVsZHMgbmVjZXNzaXR5IChyZXF1aXJlZCBvciBvcHRpb25hbClcbiAqICAgaXMgZGV0ZXJtaW5lZCBiYXNlZCBvbiB0aGUgcHJlc2VuY2Ugb2YgQGFuZ3VsYXIvZm9ybSdzIHtAbGluayBSZXF1aXJlZFZhbGlkYXRvcn0uXG4gKi9cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ3NwLWZpZWxkJyxcbiAgdGVtcGxhdGVVcmw6ICcuL2ZpZWxkLmNvbXBvbmVudC5odG1sJyxcbiAgc3R5bGVVcmxzOiBbJy4vZmllbGQuY29tcG9uZW50LnNjc3MnXSxcbiAgaG9zdDoge1xuICAgIGNsYXNzOiAnc2FwcGhpcmUtZmllbGQnLFxuICAgICdbY2xhc3Muc2FwcGhpcmUtZmllbGQtLWxhYmVsLXBsYWNlbWVudC1zaWRlXSc6ICdsYWJlbFBsYWNlbWVudCA9PT0gXCJzaWRlXCInLFxuICAgICdbY2xhc3Muc2FwcGhpcmUtZmllbGQtLW5vLXdpZHRoXSc6XG4gICAgICAnbm9EZWZhdWx0V2lkdGggfHwgIWNvbnRyb2xIYXNEZWZhdWx0V2lkdGgoKScsXG4gICAgJ1tjbGFzcy5zYXBwaGlyZS1maWVsZC0tbGFiZWwtYWxpZ25tZW50LXRvcF0nOlxuICAgICAgJ2xhYmVsUGxhY2VtZW50ID09PSBcInNpZGVcIiAmJiBoYXNSYWRpb0dyb3VwQ2hpbGQoKScsXG4gICAgJ1tjbGFzcy5zYXBwaGlyZS1maWVsZC0tbWRdJzogJ3NpemUgPT09IFwibWRcIicsXG4gIH0sXG4gIGhvc3REaXJlY3RpdmVzOiBbVXNlQ29tcG9uZW50U3R5bGVzT25Ib3N0XSxcbiAgcHJvdmlkZXJzOiBbXG4gICAge1xuICAgICAgcHJvdmlkZTogSUNPTl9TSVpFX1BST1ZJREVSLFxuICAgICAgdXNlQ2xhc3M6IEZpZWxkSWNvblNpemVQcm92aWRlcixcbiAgICB9LFxuICBdLFxuICBzdGFuZGFsb25lOiBmYWxzZSxcbn0pXG5leHBvcnQgY2xhc3MgRmllbGRDb21wb25lbnRcbiAgaW1wbGVtZW50cyBBZnRlckNvbnRlbnRJbml0LCBBZnRlclZpZXdDaGVja2VkLCBJY29uU2l6ZVByb3ZpZGVyXG57XG4gIC8qKlxuICAgKiBXaGV0aGVyIHRoZSBuZWNlc3NpdHkgaW5kaWNhdG9yIHNob3VsZCBiZSB2aXNpYmxlLlxuICAgKi9cbiAgQElucHV0KClcbiAgQENvZXJjZUJvb2xlYW5cbiAgbmVjZXNzaXR5SW5kaWNhdG9yPzogQm9vbGVhbklucHV0O1xuXG4gIC8qKlxuICAgKiBMYWJlbCBwbGFjZW1lbnQgd2l0aCByZXNwZWN0IHRvIHRoZSBmb3JtIGNvbnRyb2wuXG4gICAqIEBkZWZhdWx0IFwiYWJvdmVcIlxuICAgKi9cbiAgQElucHV0KClcbiAgbGFiZWxQbGFjZW1lbnQ/OiAnc2lkZScgfCAnYWJvdmUnID0gJ2Fib3ZlJztcblxuICAvKipcbiAgICogQXZvaWQgdGhlIGRlZmF1bHQgd2lkdGhcbiAgICovXG4gIEBJbnB1dCgpXG4gIEBDb2VyY2VCb29sZWFuXG4gIG5vRGVmYXVsdFdpZHRoPzogQm9vbGVhbklucHV0O1xuXG4gIC8qKlxuICAgKiBBbGxvdyBib3RoIG5vdGUgYW5kIGVycm9yIGF0IHRoZSBzYW1lIHRpbWVcbiAgICogQGRlZmF1bHQgZmFsc2VcbiAgICovXG4gIEBJbnB1dCgpXG4gIEBDb2VyY2VCb29sZWFuXG4gIGFsbG93Tm90ZUFuZEVycm9yPzogQm9vbGVhbklucHV0O1xuXG4gIC8qKlxuICAgKiBAZGVmYXVsdCBcImxnXCJcbiAgICovXG4gIEBJbnB1dCgpXG4gIHNpemU/OiAnbGcnIHwgJ21kJyA9ICdsZyc7XG5cbiAgQENvbnRlbnRDaGlsZChGaWVsZE5vdGVEaXJlY3RpdmUpXG4gIG5vdGU/OiBGaWVsZE5vdGVEaXJlY3RpdmU7XG5cbiAgQENvbnRlbnRDaGlsZChGaWVsZEVycm9yRGlyZWN0aXZlKVxuICBlcnJvcj86IEZpZWxkRXJyb3JEaXJlY3RpdmU7XG5cbiAgQFZpZXdDaGlsZChMYWJlbENvbXBvbmVudClcbiAgbGFiZWw/OiBMYWJlbENvbXBvbmVudDtcblxuICBAQ29udGVudENoaWxkKEZpZWxkTGFiZWxEaXJlY3RpdmUpXG4gIF9maWVsZExhYmVsPzogRmllbGRMYWJlbERpcmVjdGl2ZTtcblxuICAvKipcbiAgICogRm9jdXNhYmxlLCBsYWJlbGFibGUgY29udHJvbC4gQ29tcG9uZW50cyBsaWtlIFNlbGVjdCwgUmFkaW9Hcm91cCBvciBUZXh0RmllbGQsXG4gICAqIHRoYXQgYXJlIG1lYW50IHRvIHJlbmRlcmVkIGluc2lkZSBzcC1maWVsZCwgcHJvdmlkZSBGaWVsZENvbnRyb2wuXG4gICAqL1xuICBAQ29udGVudENoaWxkcmVuKEZpZWxkQ29udHJvbClcbiAgY29udHJvbHM/OiBRdWVyeUxpc3Q8RmllbGRDb250cm9sPjtcblxuICBAQ29udGVudENoaWxkKFJhZGlvR3JvdXBDb21wb25lbnQpXG4gIHJhZGlvR3JvdXA/OiBSYWRpb0dyb3VwQ29tcG9uZW50O1xuXG4gIEBDb250ZW50Q2hpbGQoTmdDb250cm9sLCB7IGRlc2NlbmRhbnRzOiB0cnVlIH0pXG4gIHByaXZhdGUgbmdDb250cm9sPzogTmdDb250cm9sO1xuXG4gIEBDb250ZW50Q2hpbGQoUmVxdWlyZWRWYWxpZGF0b3IsIHsgZGVzY2VuZGFudHM6IHRydWUgfSlcbiAgcHJpdmF0ZSByZXF1aXJlZFZhbGlkYXRvcj86IFJlcXVpcmVkVmFsaWRhdG9yO1xuXG4gIEBWaWV3Q2hpbGRyZW4oQ2RrUG9ydGFsT3V0bGV0KVxuICBwcml2YXRlIHN1ZmZpeFBvcnRhbE91dGxldDogUXVlcnlMaXN0PENka1BvcnRhbE91dGxldD4gfCBudWxsID0gbnVsbDtcblxuICAvKipcbiAgICogSXMgc2V0IHZpYSBmaWVsZC1ub3RlLWFmZml4IGRpcmVjdGl2ZS4gQ29udGVudENoaWxkIHF1ZXJ5IGNhbid0IGJlIHVzZWQgc2luY2Ugd2UgbmVlZFxuICAgKiB0byBxdWVyeSBmcm9tIGNvbnRlbnQgLT4gdmlldyBpbiBzb21lIGNhc2VzLlxuICAgKiBAaW50ZXJuYWxcbiAgICovXG4gIF9ub3RlU3VmZml4UG9ydGFsOiBEb21Qb3J0YWw8SFRNTEVsZW1lbnQ+IHwgbnVsbCA9IG51bGw7XG5cbiAgcHJpdmF0ZSBjaGFuZ2VkOiBib29sZWFuID0gZmFsc2U7XG5cbiAgY29uc3RydWN0b3IoXG4gICAgcHJpdmF0ZSBjaGFuZ2VEZXRlY3RvclJlZjogQ2hhbmdlRGV0ZWN0b3JSZWYsXG4gICAgaWNvblJlZ2lzdHJ5OiBJY29uUmVnaXN0cnlcbiAgKSB7XG4gICAgaWNvblJlZ2lzdHJ5LnJlZ2lzdGVySWNvbihpY29uQ2hlY2ttYXJrT3V0bGluZSk7XG4gICAgaWNvblJlZ2lzdHJ5LnJlZ2lzdGVySWNvbihpY29uV2FybmluZyk7XG4gICAgaWNvblJlZ2lzdHJ5LnJlZ2lzdGVySWNvbihpY29uRXJyb3IpO1xuICB9XG5cbiAgbmdBZnRlckNvbnRlbnRJbml0KCkge1xuICAgIGlmICghdGhpcy5jb250cm9scyAmJiBpc0Rldk1vZGUoKSkge1xuICAgICAgdGhyb3cgbmV3IEVycm9yKFxuICAgICAgICAnc3AtZmllbGQgaXMgcmVuZGVyZWQgd2l0aG91dCBhbnkgY29udHJvbCBsaWtlIHNwLXNlbGVjdCwgc3AtdGV4dC1maWVsZCwgb3Igc3AtcmFkaW8tZ3JvdXAgaW5zaWRlIGl0LidcbiAgICAgICk7XG4gICAgfVxuICB9XG5cbiAgbmdBZnRlclZpZXdJbml0KCkge1xuICAgIHRoaXMuc3VmZml4UG9ydGFsT3V0bGV0IS5jaGFuZ2VzLnN1YnNjcmliZSgoKSA9PiB7XG4gICAgICBpZiAodGhpcy5fbm90ZVN1ZmZpeFBvcnRhbD8uaXNBdHRhY2hlZCA9PT0gZmFsc2UpIHtcbiAgICAgICAgLy8gSXQgbWlnaHQgYmUgYSBidWcgaW4gQGFuZ3VsYXIvY2RrL3BvcnRhbCwgYnV0IHdoZW4gdGhlIHBvcnRhbCBvdXRsZXQgdGhhdCByZW5kZXJzXG4gICAgICAgIC8vIGEgRG9tUG9ydGFsIGlzIGNoYW5nZWQsIHRoZSBEb21Qb3J0YWwgZ2V0cyBkZXRhY2hlZCBhbmQgbm90IHJlYXR0YWNoZWQgdG8gdGhlIG5ldyBvdXRsZXQuXG4gICAgICAgIC8vIFRoZSBmb2xsb3dpbmcgcmVhdHRhY2hpbmcgaXMgdG8gd29yayBhcm91bmQgdGhpcyBpc3N1ZS5cbiAgICAgICAgdGhpcy5zdWZmaXhQb3J0YWxPdXRsZXQ/LmZpcnN0Py5kZXRhY2goKTtcbiAgICAgICAgdGhpcy5zdWZmaXhQb3J0YWxPdXRsZXQ/LmZpcnN0Py5hdHRhY2godGhpcy5fbm90ZVN1ZmZpeFBvcnRhbCk7XG4gICAgICB9XG4gICAgfSk7XG4gIH1cblxuICBuZ0FmdGVyVmlld0NoZWNrZWQoKSB7XG4gICAgLyoqXG4gICAgICogU2luY2Ugbm90ZSBzdWZmaXggcG9ydGFsIGlzIGNoYW5nZWQgYnkgRmllbGROb3RlU3VmZml4RGlyZWN0aXZlLFxuICAgICAqIGl0IGNyZWF0ZXMgYSBjYXNlIG9mIEV4cHJlc3Npb25DaGFuZ2VkQWZ0ZXJJdEhhc0JlZW5DaGVja2VkRXJyb3IuXG4gICAgICogU28gd2UgbmVlZCB0byBtYW51YWxseSBkZXRlY3QgY2hhbmdlcyB3aGVuIHN1ZmZpeCBwb3J0YWwgaXMgY2hhbmdlZC5cbiAgICAgKiBXZSBXb3VsZG4ndCBuZWVkIHRvIGRvIHNvLCBpZiB3ZSBjb3VsZCBxdWVyeSBGaWVsZE5vdGVTdWZmaXhEaXJlY3RpdmVcbiAgICAgKiB2aWEgQENvbnRlbnRDaGlsZCwgYnV0IHdlIGNhbid0IGJlY2F1c2UgaXQgY2FuIGJlIGluIHRoZSB2aWV3IG9mIGEgY29udGVudFxuICAgICAqIGNoaWxkLCB3aGljaCBtYWtlcyBpdCBub3QgcXVlcnktYWJsZS5cbiAgICAgKi9cbiAgICBpZiAodGhpcy5jaGFuZ2VkKSB7XG4gICAgICB0aGlzLmNoYW5nZURldGVjdG9yUmVmLmRldGVjdENoYW5nZXMoKTtcbiAgICAgIHRoaXMuY2hhbmdlZCA9IGZhbHNlO1xuICAgIH1cbiAgfVxuXG4gIC8qKlxuICAgKiBXaGV0aGVyIHRoZSBmaWVsZCBjb250YWlucyBhbiBlcnJvciBtZXNzYWdlIChzcC1maWVsZC1lcnJvcikuXG4gICAqL1xuICBoYXNFcnJvcih0YXJnZXRGaWVsZD86IEZpZWxkQ29udHJvbCk6IGJvb2xlYW4ge1xuICAgIHJldHVybiAoXG4gICAgICB0aGlzLmVycm9yICE9PSB1bmRlZmluZWQgJiZcbiAgICAgICghdGFyZ2V0RmllbGQgfHwgIXRoaXMuZXJyb3IudGFyZ2V0IHx8IHRoaXMuZXJyb3IudGFyZ2V0ID09PSB0YXJnZXRGaWVsZClcbiAgICApO1xuICB9XG5cbiAgLyoqXG4gICAqIElmIHRoZXJlIGFyZSBtdWx0aXBsZSBjb250cm9scywgdGhlIGZpZWxkIGlzIG9ubHkgZGlzYWJsZWQgd2hlbiBhbGwgb2YgdGhlbSBhcmUgZGlzYWJsZWRcbiAgICovXG4gIGlzRGlzYWJsZWQoKTogYm9vbGVhbiB7XG4gICAgaWYgKCF0aGlzLmNvbnRyb2xzIHx8IHRoaXMuY29udHJvbHMubGVuZ3RoID09PSAwKSB7XG4gICAgICByZXR1cm4gZmFsc2U7XG4gICAgfVxuXG4gICAgcmV0dXJuIHRoaXMuY29udHJvbHM/LnRvQXJyYXkoKS5ldmVyeSgoY29udHJvbCkgPT4gY29udHJvbC5pc0Rpc2FibGVkKCkpO1xuICB9XG5cbiAgLyoqXG4gICAqIElmIGFueSBvZiB0aGUgY29udHJvbHMgc2hvdWxkIGJlIGNvbnN0cmFpbmVkIGJ5IHRoZSBmaWVsZCdzIGRlZmF1bHQgd2lkaHRcbiAgICovXG4gIGNvbnRyb2xIYXNEZWZhdWx0V2lkdGgoKTogYm9vbGVhbiB7XG4gICAgaWYgKCF0aGlzLmNvbnRyb2xzIHx8IHRoaXMuY29udHJvbHMubGVuZ3RoID09PSAwKSB7XG4gICAgICByZXR1cm4gZmFsc2U7XG4gICAgfVxuXG4gICAgcmV0dXJuIHRoaXMuY29udHJvbHM/LnRvQXJyYXkoKS5zb21lKChjb250cm9sKSA9PiBjb250cm9sLmhhc0RlZmF1bHRXaWR0aCk7XG4gIH1cblxuICAvKipcbiAgICogT25seSBzdXBwb3J0IGZlYXR1cmVzIGxpa2UgYGZvcmAgb3IgYGxhYmVsQ2xpY2tgIGlmIHRoZSBmaWVsZCBoYXMgb25lIGNvbnRyb2wuXG4gICAqL1xuICBnZXQgY29udHJvbCgpOiBGaWVsZENvbnRyb2wgfCB1bmRlZmluZWQge1xuICAgIHJldHVybiB0aGlzLmNvbnRyb2xzPy5sZW5ndGggPT09IDEgPyB0aGlzLmNvbnRyb2xzLmZpcnN0IDogdW5kZWZpbmVkO1xuICB9XG5cbiAgZ2V0IGlzR3JvdXAoKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuIHRoaXMuY29udHJvbHMgPyB0aGlzLmNvbnRyb2xzLmxlbmd0aCA+IDEgOiBmYWxzZTtcbiAgfVxuXG4gIC8qKlxuICAgKiBXaGV0aGVyIHRoZSBmaWVsZCBjb250cm9sIGlzIHJhZGlvIGdyb3VwIChzcC1yYWRpby1ncm91cCkuXG4gICAqL1xuICBoYXNSYWRpb0dyb3VwQ2hpbGQoKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuIHRoaXMucmFkaW9Hcm91cCAhPSB1bmRlZmluZWQ7XG4gIH1cblxuICBnZXQgbGFiZWxOZWNlc3NpdHlJbmRpY2F0b3IoKTogTGFiZWxDb21wb25lbnRbJ25lY2Vzc2l0eUluZGljYXRvciddIHtcbiAgICBpZiAodGhpcy5uZWNlc3NpdHlJbmRpY2F0b3IpIHtcbiAgICAgIHJldHVybiBjb2VyY2VCb29sZWFuUHJvcGVydHkodGhpcy5yZXF1aXJlZFZhbGlkYXRvcj8ucmVxdWlyZWQpIHx8XG4gICAgICAgIHRoaXMubmdDb250cm9sPy5jb250cm9sPy5oYXNWYWxpZGF0b3IoVmFsaWRhdG9ycy5yZXF1aXJlZClcbiAgICAgICAgPyAncmVxdWlyZWQnXG4gICAgICAgIDogJ29wdGlvbmFsJztcbiAgICB9XG4gICAgcmV0dXJuIHVuZGVmaW5lZDtcbiAgfVxuXG4gIF9zZXRTdWZmaXhQb3J0YWwocG9ydGFsOiBEb21Qb3J0YWw8SFRNTEVsZW1lbnQ+IHwgbnVsbCkge1xuICAgIGlmICh0aGlzLl9ub3RlU3VmZml4UG9ydGFsPy5pc0F0dGFjaGVkKSB7XG4gICAgICB0aGlzLl9ub3RlU3VmZml4UG9ydGFsLmRldGFjaCgpO1xuICAgICAgLy8gY2FsbGluZyBkZXRhY2ggd2lsbCBtb3ZlIHRoZSBlbGVtZW50IGJhY2sgdG8gdGhlIERPTS4gQ291bGRuJ3QgZmluZCBhbnkgYmV0dGVyXG4gICAgICAvLyB3YXkgdGhhbiBpbXBlcmF0aXZlbHkgcmVtb3ZpbmcgdGhlIERPTSBlbGVtZW50IHRvby5cbiAgICAgIHRoaXMuX25vdGVTdWZmaXhQb3J0YWwuZWxlbWVudC5yZW1vdmUoKTtcbiAgICB9XG4gICAgdGhpcy5fbm90ZVN1ZmZpeFBvcnRhbCA9IHBvcnRhbDtcbiAgICB0aGlzLmNoYW5nZWQgPSB0cnVlO1xuICB9XG59XG4iLCI8ZGl2IGNsYXNzPVwic2FwcGhpcmUtZmllbGRfX2xhYmVsXCIgKm5nSWY9XCJfZmllbGRMYWJlbFwiPlxuICA8c3AtbGFiZWxcbiAgICBbbmVjZXNzaXR5SW5kaWNhdG9yXT1cImxhYmVsTmVjZXNzaXR5SW5kaWNhdG9yXCJcbiAgICBbZm9yXT1cImNvbnRyb2w/LmdldElkPy4oKVwiXG4gICAgW2Rpc2FibGVkXT1cImlzRGlzYWJsZWQoKVwiXG4gICAgKGxhYmVsQ2xpY2spPVwiY29udHJvbD8uZm9jdXM/Ligna2V5Ym9hcmQnKVwiXG4gICAgW3NpemVdPVwic2l6ZVwiXG4gID5cbiAgICA8bmctY29udGVudCBzZWxlY3Q9XCJzcC1maWVsZC1sYWJlbFwiPjwvbmctY29udGVudD5cbiAgICA8bmctY29udGVudFxuICAgICAgc2VsZWN0PVwic3AtaGVscC1idXR0b25cIlxuICAgICAgbmdQcm9qZWN0QXM9XCJzcC1oZWxwLWJ1dHRvblwiXG4gICAgPjwvbmctY29udGVudD5cbiAgPC9zcC1sYWJlbD5cbjwvZGl2PlxuPGRpdlxuICBjbGFzcz1cInNhcHBoaXJlLWZpZWxkX19jb250cm9sXCJcbiAgW25nQ2xhc3NdPVwie1xuICAgICdzYXBwaGlyZS1maWVsZF9fY29udHJvbC0tZ3JvdXAnOiBpc0dyb3VwXG4gIH1cIlxuPlxuICA8bmctY29udGVudD48L25nLWNvbnRlbnQ+XG48L2Rpdj5cbjxkaXYgY2xhc3M9XCJzYXBwaGlyZS1maWVsZF9fbWVzc2FnZVwiICpuZ0lmPVwibm90ZSB8fCBlcnJvciB8fCBfbm90ZVN1ZmZpeFBvcnRhbFwiPlxuICA8ZGl2IGNsYXNzPVwic2FwcGhpcmUtZmllbGRfX25vdGUtcm93IHNhcHBoaXJlLXRleHQtLW5lZ2F0aXZlXCIgKm5nSWY9XCJlcnJvclwiPlxuICAgIDxzcGFuIGNsYXNzPVwic2FwcGhpcmUtZmllbGRfX25vdGUtaWNvblwiPlxuICAgICAgPHNwLWljb24gbmFtZT1cImVycm9yXCIgc2l6ZT1cInNtXCI+PC9zcC1pY29uPlxuICAgIDwvc3Bhbj5cbiAgICA8ZGl2IGNsYXNzPVwic2FwcGhpcmUtZmllbGRfX25vdGVcIj5cbiAgICAgIDxuZy1jb250ZW50IHNlbGVjdD1cInNwLWZpZWxkLWVycm9yXCI+PC9uZy1jb250ZW50PlxuICAgIDwvZGl2PlxuXG4gICAgPG5nLWNvbnRhaW5lciAqbmdJZj1cIl9ub3RlU3VmZml4UG9ydGFsXCI+XG4gICAgICA8bmctY29udGFpbmVyICpjZGtQb3J0YWxPdXRsZXQ9XCJfbm90ZVN1ZmZpeFBvcnRhbFwiPjwvbmctY29udGFpbmVyPlxuICAgIDwvbmctY29udGFpbmVyPlxuICA8L2Rpdj5cbiAgPGRpdlxuICAgIGNsYXNzPVwic2FwcGhpcmUtZmllbGRfX25vdGUtcm93XCJcbiAgICBbbmdDbGFzc109XCJ7XG4gICAgICAnc2FwcGhpcmUtdGV4dC0tcG9zaXRpdmUnOiBub3RlPy52YXJpYW50ID09PSAnc3VjY2VzcycsXG4gICAgICAnc2FwcGhpcmUtdGV4dC0td2FybmluZyc6IG5vdGU/LnZhcmlhbnQgPT09ICd3YXJuaW5nJ1xuICAgIH1cIlxuICAgICpuZ0lmPVwibm90ZSAmJiAoIWVycm9yIHx8IGFsbG93Tm90ZUFuZEVycm9yKVwiXG4gID5cbiAgICA8c3BhbiBjbGFzcz1cInNhcHBoaXJlLWZpZWxkX19ub3RlLWljb25cIiAqbmdJZj1cIm5vdGU/Lmljb25cIj5cbiAgICAgIDxzcC1pY29uIFtuYW1lXT1cIm5vdGU/Lmljb25cIiBzaXplPVwic21cIj48L3NwLWljb24+XG4gICAgPC9zcGFuPlxuICAgIDxkaXYgY2xhc3M9XCJzYXBwaGlyZS1maWVsZF9fbm90ZVwiPlxuICAgICAgPG5nLWNvbnRlbnQgc2VsZWN0PVwic3AtZmllbGQtbm90ZVwiPjwvbmctY29udGVudD5cbiAgICA8L2Rpdj5cblxuICAgIDxuZy1jb250YWluZXIgKm5nSWY9XCIhZXJyb3IgJiYgX25vdGVTdWZmaXhQb3J0YWxcIj5cbiAgICAgIDxuZy1jb250YWluZXIgKmNka1BvcnRhbE91dGxldD1cIl9ub3RlU3VmZml4UG9ydGFsXCI+PC9uZy1jb250YWluZXI+XG4gICAgPC9uZy1jb250YWluZXI+XG4gIDwvZGl2PlxuICA8ZGl2XG4gICAgY2xhc3M9XCJzYXBwaGlyZS1maWVsZF9fbm90ZS1yb3dcIlxuICAgICpuZ0lmPVwiIW5vdGUgJiYgIWVycm9yICYmIF9ub3RlU3VmZml4UG9ydGFsXCJcbiAgPlxuICAgIDxuZy1jb250YWluZXI+XG4gICAgICA8bmctY29udGFpbmVyICpjZGtQb3J0YWxPdXRsZXQ9XCJfbm90ZVN1ZmZpeFBvcnRhbFwiPjwvbmctY29udGFpbmVyPlxuICAgIDwvbmctY29udGFpbmVyPlxuICA8L2Rpdj5cbjwvZGl2PlxuIl19
272
+ export class FieldsetComponent extends FieldComponent {
273
+ }
274
+ FieldsetComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.0", ngImport: i0, type: FieldsetComponent, deps: null, target: i0.ɵɵFactoryTarget.Component });
275
+ FieldsetComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.0", type: FieldsetComponent, selector: "sp-fieldset", host: { properties: { "class.sapphire-field--label-placement-side": "labelPlacement === \"side\"", "class.sapphire-field--no-width": "noDefaultWidth || !controlHasDefaultWidth()", "class.sapphire-field--label-alignment-top": "labelPlacement === \"side\" && hasRadioGroupChild()", "class.sapphire-field--md": "size === \"md\"" }, classAttribute: "sapphire-field" }, providers: [
276
+ {
277
+ provide: ICON_SIZE_PROVIDER,
278
+ useFactory: (fieldset) => ({
279
+ get size() {
280
+ return fieldset.size === 'lg' ? 'md' : 'sm';
281
+ },
282
+ }),
283
+ deps: [FieldsetComponent],
284
+ },
285
+ ], usesInheritance: true, hostDirectives: [{ directive: i2.UseComponentStylesOnHost }], ngImport: i0, template: "<div class=\"sapphire-field__label\" *ngIf=\"_fieldLabel\">\n <sp-label\n [necessityIndicator]=\"labelNecessityIndicator\"\n [for]=\"control?.getId?.()\"\n [disabled]=\"isDisabled()\"\n (labelClick)=\"control?.focus?.('keyboard')\"\n [size]=\"size\"\n >\n <ng-content select=\"sp-field-label\"></ng-content>\n <ng-content\n select=\"sp-help-button\"\n ngProjectAs=\"sp-help-button\"\n ></ng-content>\n </sp-label>\n</div>\n<div\n class=\"sapphire-field__control\"\n [ngClass]=\"{\n 'sapphire-field__control--group': isGroup\n }\"\n>\n <ng-content></ng-content>\n</div>\n<div class=\"sapphire-field__message\" *ngIf=\"note || error || _noteSuffixPortal\">\n <div class=\"sapphire-field__note-row sapphire-text--negative\" *ngIf=\"error\">\n <span class=\"sapphire-field__note-icon\">\n <sp-icon name=\"error\" size=\"sm\"></sp-icon>\n </span>\n <div class=\"sapphire-field__note\">\n <ng-content select=\"sp-field-error\"></ng-content>\n </div>\n\n <ng-container *ngIf=\"_noteSuffixPortal\">\n <ng-container *cdkPortalOutlet=\"_noteSuffixPortal\"></ng-container>\n </ng-container>\n </div>\n <div\n class=\"sapphire-field__note-row\"\n [ngClass]=\"{\n 'sapphire-text--positive': note?.variant === 'success',\n 'sapphire-text--warning': note?.variant === 'warning'\n }\"\n *ngIf=\"note && (!error || allowNoteAndError)\"\n >\n <span class=\"sapphire-field__note-icon\" *ngIf=\"note?.icon\">\n <sp-icon [name]=\"note?.icon\" size=\"sm\"></sp-icon>\n </span>\n <div class=\"sapphire-field__note\">\n <ng-content select=\"sp-field-note\"></ng-content>\n </div>\n\n <ng-container *ngIf=\"!error && _noteSuffixPortal\">\n <ng-container *cdkPortalOutlet=\"_noteSuffixPortal\"></ng-container>\n </ng-container>\n </div>\n <div\n class=\"sapphire-field__note-row\"\n *ngIf=\"!note && !error && _noteSuffixPortal\"\n >\n <ng-container>\n <ng-container *cdkPortalOutlet=\"_noteSuffixPortal\"></ng-container>\n </ng-container>\n </div>\n</div>\n", styles: [".sapphire-field{display:inline-grid;grid-template-columns:auto;row-gap:var(--sapphire-semantic-size-spacing-2xs);column-gap:var(--sapphire-semantic-size-spacing-md);font-family:var(--sapphire-semantic-font-name-default);grid-auto-rows:min-content;width:var(--sapphire-semantic-size-width-field);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;box-sizing:border-box}.sapphire-field--no-width{width:auto}fieldset.sapphire-field{border:0;margin:0;padding:0}.sapphire-field__label{order:1;justify-content:end}legend.sapphire-field__label{padding:0;float:left}.sapphire-field__control{order:2;width:100%;min-width:0;line-height:var(--sapphire-semantic-size-line-height-md);font-size:var(--sapphire-semantic-size-font-control-lg)}.sapphire-field--md .sapphire-field__control{font-size:var(--sapphire-semantic-size-font-control-md)}.sapphire-field__control--group{display:flex;gap:var(--sapphire-semantic-size-spacing-xs)}.sapphire-field--md .sapphire-field__control--group{gap:var(--sapphire-semantic-size-spacing-2xs)}.sapphire-field--no-shrink .sapphire-field__control{min-width:initial}.sapphire-field__message{min-width:100%;max-width:min-content;order:3;display:flex;flex-direction:column;gap:var(--sapphire-semantic-size-spacing-4xs);padding:var(--sapphire-semantic-size-spacing-4xs) 0}.sapphire-field__note-row{display:flex;align-items:flex-start;gap:var(--sapphire-semantic-size-spacing-xs);font-size:var(--sapphire-semantic-size-font-label-md);line-height:var(--sapphire-semantic-size-line-height-md);color:var(--sapphire-semantic-color-foreground-secondary)}.sapphire-field--md .sapphire-field__note-row{font-size:var(--sapphire-semantic-size-font-label-sm);line-height:var(--sapphire-semantic-size-line-height-sm);gap:var(--sapphire-semantic-size-spacing-2xs)}.sapphire-field__note{flex:1}.sapphire-field__note-icon{display:inline-flex;line-height:0;padding-top:var(--sapphire-semantic-size-spacing-4xs)}.sapphire-field--md .sapphire-field__note-icon{padding-top:0}.sapphire-field.is-disabled .sapphire-field__control{opacity:var(--sapphire-semantic-opacity-disabled);cursor:not-allowed}.sapphire-field.is-disabled .sapphire-field__control *{cursor:inherit}.sapphire-field--label-placement-side{grid-template-columns:max-content auto;width:auto}.sapphire-field--label-placement-side:not(.sapphire-field--no-width) .sapphire-field__control{width:var(--sapphire-semantic-size-width-field)}.sapphire-field--label-placement-side .sapphire-field__message{grid-column:2}.sapphire-field--label-placement-side .sapphire-field__label{display:flex;align-items:center;max-height:var(--sapphire-semantic-size-height-control-lg)}.sapphire-field--label-placement-side.sapphire-field--md .sapphire-field__label{max-height:var(--sapphire-semantic-size-height-control-md)}.sapphire-field--label-placement-side.sapphire-field--label-alignment-top .sapphire-field__label{align-items:flex-start;max-height:unset}.sapphire-fieldset{display:inline-flex;flex-direction:column;width:min-content;gap:var(--sapphire-semantic-size-spacing-lg)}.sapphire-fieldset .sapphire-field--label-placement-side{grid-template-columns:1fr min-content}.sapphire-fieldset .sapphire-field--label-placement-side .sapphire-field__label{white-space:nowrap}.sapphire-text{font-family:var(--sapphire-semantic-font-name-default);color:var(--sapphire-semantic-color-foreground-primary);font-weight:var(--sapphire-semantic-font-weight-default-regular);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.sapphire-text--strong{font-weight:var(--sapphire-semantic-font-weight-default-bold)}.sapphire-text--semibold{font-weight:var(--sapphire-semantic-font-weight-default-medium)}.sapphire-text--underlined{text-decoration:underline}.sapphire-text--secondary{color:var(--sapphire-semantic-color-foreground-secondary)}.sapphire-text--informative{color:var(--sapphire-semantic-color-foreground-accent)}.sapphire-text--positive{color:var(--sapphire-semantic-color-foreground-positive)}.sapphire-text--warning{color:var(--sapphire-semantic-color-foreground-warning)}.sapphire-text--negative{color:var(--sapphire-semantic-color-foreground-negative)}.sapphire-text--heading-2xl,.sapphire-text--heading-xl,.sapphire-text--heading-lg,.sapphire-text--heading-md,.sapphire-text--heading-sm,.sapphire-text--heading-xs{margin-top:0;margin-bottom:0;line-height:var(--sapphire-global-size-line-height-sm);letter-spacing:-.01em}.sapphire-text--heading-2xl{font-weight:var(--sapphire-semantic-font-weight-default-regular);font-size:var(--sapphire-semantic-size-font-heading-2xl)}.sapphire-text--heading-xl{font-weight:var(--sapphire-semantic-font-weight-default-medium);font-size:var(--sapphire-semantic-size-font-heading-xl)}.sapphire-text--heading-lg{font-weight:var(--sapphire-semantic-font-weight-default-medium);font-size:var(--sapphire-semantic-size-font-heading-lg)}.sapphire-text--heading-md{font-weight:var(--sapphire-semantic-font-weight-default-medium);font-size:var(--sapphire-semantic-size-font-heading-md)}.sapphire-text--heading-sm{font-weight:var(--sapphire-semantic-font-weight-default-medium);font-size:var(--sapphire-semantic-size-font-heading-sm)}.sapphire-text--heading-xs{font-weight:var(--sapphire-semantic-font-weight-default-medium);font-size:var(--sapphire-semantic-size-font-heading-xs)}.sapphire-text--subheading-md,.sapphire-text--subheading-sm{line-height:var(--sapphire-global-size-line-height-sm)}.sapphire-text--subheading-md{font-size:var(--sapphire-semantic-size-font-body-sm)}.sapphire-text--subheading-sm{font-size:var(--sapphire-semantic-size-font-body-xs)}.sapphire-text--body-lg,.sapphire-text--body-md,.sapphire-text--body-sm,.sapphire-text--body-xs{line-height:var(--sapphire-global-size-line-height-md);margin-top:0;margin-bottom:0}.sapphire-text--body-lg{font-size:var(--sapphire-semantic-size-font-body-lg)}.sapphire-text--body-md{font-size:var(--sapphire-semantic-size-font-body-md)}.sapphire-text--body-sm{font-size:var(--sapphire-semantic-size-font-body-sm)}.sapphire-text--body-xs{font-size:var(--sapphire-semantic-size-font-body-xs)}.sapphire-text--caption-md,.sapphire-text--caption-sm{font-weight:var(--sapphire-semantic-font-weight-default-bold);line-height:var(--sapphire-global-size-line-height-sm)}.sapphire-text--caption-md{font-size:var(--sapphire-semantic-size-font-body-sm)}.sapphire-text--caption-sm{font-size:var(--sapphire-semantic-size-font-body-xs)}\n"], dependencies: [{ kind: "directive", type: i3.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i4.CdkPortalOutlet, selector: "[cdkPortalOutlet]", inputs: ["cdkPortalOutlet"], outputs: ["attached"], exportAs: ["cdkPortalOutlet"] }, { kind: "component", type: i5.LabelComponent, selector: "sp-label", inputs: ["id", "for", "disabled", "necessityIndicator", "size"], outputs: ["labelClick"] }, { kind: "directive", type: i3.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "component", type: i6.IconComponent, selector: "sp-icon", inputs: ["name", "size", "color"] }] });
286
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.0", ngImport: i0, type: FieldsetComponent, decorators: [{
287
+ type: Component,
288
+ args: [{ selector: 'sp-fieldset', host: fieldHostBinding, hostDirectives: [UseComponentStylesOnHost], providers: [
289
+ {
290
+ provide: ICON_SIZE_PROVIDER,
291
+ useFactory: (fieldset) => ({
292
+ get size() {
293
+ return fieldset.size === 'lg' ? 'md' : 'sm';
294
+ },
295
+ }),
296
+ deps: [FieldsetComponent],
297
+ },
298
+ ], standalone: false, template: "<div class=\"sapphire-field__label\" *ngIf=\"_fieldLabel\">\n <sp-label\n [necessityIndicator]=\"labelNecessityIndicator\"\n [for]=\"control?.getId?.()\"\n [disabled]=\"isDisabled()\"\n (labelClick)=\"control?.focus?.('keyboard')\"\n [size]=\"size\"\n >\n <ng-content select=\"sp-field-label\"></ng-content>\n <ng-content\n select=\"sp-help-button\"\n ngProjectAs=\"sp-help-button\"\n ></ng-content>\n </sp-label>\n</div>\n<div\n class=\"sapphire-field__control\"\n [ngClass]=\"{\n 'sapphire-field__control--group': isGroup\n }\"\n>\n <ng-content></ng-content>\n</div>\n<div class=\"sapphire-field__message\" *ngIf=\"note || error || _noteSuffixPortal\">\n <div class=\"sapphire-field__note-row sapphire-text--negative\" *ngIf=\"error\">\n <span class=\"sapphire-field__note-icon\">\n <sp-icon name=\"error\" size=\"sm\"></sp-icon>\n </span>\n <div class=\"sapphire-field__note\">\n <ng-content select=\"sp-field-error\"></ng-content>\n </div>\n\n <ng-container *ngIf=\"_noteSuffixPortal\">\n <ng-container *cdkPortalOutlet=\"_noteSuffixPortal\"></ng-container>\n </ng-container>\n </div>\n <div\n class=\"sapphire-field__note-row\"\n [ngClass]=\"{\n 'sapphire-text--positive': note?.variant === 'success',\n 'sapphire-text--warning': note?.variant === 'warning'\n }\"\n *ngIf=\"note && (!error || allowNoteAndError)\"\n >\n <span class=\"sapphire-field__note-icon\" *ngIf=\"note?.icon\">\n <sp-icon [name]=\"note?.icon\" size=\"sm\"></sp-icon>\n </span>\n <div class=\"sapphire-field__note\">\n <ng-content select=\"sp-field-note\"></ng-content>\n </div>\n\n <ng-container *ngIf=\"!error && _noteSuffixPortal\">\n <ng-container *cdkPortalOutlet=\"_noteSuffixPortal\"></ng-container>\n </ng-container>\n </div>\n <div\n class=\"sapphire-field__note-row\"\n *ngIf=\"!note && !error && _noteSuffixPortal\"\n >\n <ng-container>\n <ng-container *cdkPortalOutlet=\"_noteSuffixPortal\"></ng-container>\n </ng-container>\n </div>\n</div>\n", styles: [".sapphire-field{display:inline-grid;grid-template-columns:auto;row-gap:var(--sapphire-semantic-size-spacing-2xs);column-gap:var(--sapphire-semantic-size-spacing-md);font-family:var(--sapphire-semantic-font-name-default);grid-auto-rows:min-content;width:var(--sapphire-semantic-size-width-field);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;box-sizing:border-box}.sapphire-field--no-width{width:auto}fieldset.sapphire-field{border:0;margin:0;padding:0}.sapphire-field__label{order:1;justify-content:end}legend.sapphire-field__label{padding:0;float:left}.sapphire-field__control{order:2;width:100%;min-width:0;line-height:var(--sapphire-semantic-size-line-height-md);font-size:var(--sapphire-semantic-size-font-control-lg)}.sapphire-field--md .sapphire-field__control{font-size:var(--sapphire-semantic-size-font-control-md)}.sapphire-field__control--group{display:flex;gap:var(--sapphire-semantic-size-spacing-xs)}.sapphire-field--md .sapphire-field__control--group{gap:var(--sapphire-semantic-size-spacing-2xs)}.sapphire-field--no-shrink .sapphire-field__control{min-width:initial}.sapphire-field__message{min-width:100%;max-width:min-content;order:3;display:flex;flex-direction:column;gap:var(--sapphire-semantic-size-spacing-4xs);padding:var(--sapphire-semantic-size-spacing-4xs) 0}.sapphire-field__note-row{display:flex;align-items:flex-start;gap:var(--sapphire-semantic-size-spacing-xs);font-size:var(--sapphire-semantic-size-font-label-md);line-height:var(--sapphire-semantic-size-line-height-md);color:var(--sapphire-semantic-color-foreground-secondary)}.sapphire-field--md .sapphire-field__note-row{font-size:var(--sapphire-semantic-size-font-label-sm);line-height:var(--sapphire-semantic-size-line-height-sm);gap:var(--sapphire-semantic-size-spacing-2xs)}.sapphire-field__note{flex:1}.sapphire-field__note-icon{display:inline-flex;line-height:0;padding-top:var(--sapphire-semantic-size-spacing-4xs)}.sapphire-field--md .sapphire-field__note-icon{padding-top:0}.sapphire-field.is-disabled .sapphire-field__control{opacity:var(--sapphire-semantic-opacity-disabled);cursor:not-allowed}.sapphire-field.is-disabled .sapphire-field__control *{cursor:inherit}.sapphire-field--label-placement-side{grid-template-columns:max-content auto;width:auto}.sapphire-field--label-placement-side:not(.sapphire-field--no-width) .sapphire-field__control{width:var(--sapphire-semantic-size-width-field)}.sapphire-field--label-placement-side .sapphire-field__message{grid-column:2}.sapphire-field--label-placement-side .sapphire-field__label{display:flex;align-items:center;max-height:var(--sapphire-semantic-size-height-control-lg)}.sapphire-field--label-placement-side.sapphire-field--md .sapphire-field__label{max-height:var(--sapphire-semantic-size-height-control-md)}.sapphire-field--label-placement-side.sapphire-field--label-alignment-top .sapphire-field__label{align-items:flex-start;max-height:unset}.sapphire-fieldset{display:inline-flex;flex-direction:column;width:min-content;gap:var(--sapphire-semantic-size-spacing-lg)}.sapphire-fieldset .sapphire-field--label-placement-side{grid-template-columns:1fr min-content}.sapphire-fieldset .sapphire-field--label-placement-side .sapphire-field__label{white-space:nowrap}.sapphire-text{font-family:var(--sapphire-semantic-font-name-default);color:var(--sapphire-semantic-color-foreground-primary);font-weight:var(--sapphire-semantic-font-weight-default-regular);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.sapphire-text--strong{font-weight:var(--sapphire-semantic-font-weight-default-bold)}.sapphire-text--semibold{font-weight:var(--sapphire-semantic-font-weight-default-medium)}.sapphire-text--underlined{text-decoration:underline}.sapphire-text--secondary{color:var(--sapphire-semantic-color-foreground-secondary)}.sapphire-text--informative{color:var(--sapphire-semantic-color-foreground-accent)}.sapphire-text--positive{color:var(--sapphire-semantic-color-foreground-positive)}.sapphire-text--warning{color:var(--sapphire-semantic-color-foreground-warning)}.sapphire-text--negative{color:var(--sapphire-semantic-color-foreground-negative)}.sapphire-text--heading-2xl,.sapphire-text--heading-xl,.sapphire-text--heading-lg,.sapphire-text--heading-md,.sapphire-text--heading-sm,.sapphire-text--heading-xs{margin-top:0;margin-bottom:0;line-height:var(--sapphire-global-size-line-height-sm);letter-spacing:-.01em}.sapphire-text--heading-2xl{font-weight:var(--sapphire-semantic-font-weight-default-regular);font-size:var(--sapphire-semantic-size-font-heading-2xl)}.sapphire-text--heading-xl{font-weight:var(--sapphire-semantic-font-weight-default-medium);font-size:var(--sapphire-semantic-size-font-heading-xl)}.sapphire-text--heading-lg{font-weight:var(--sapphire-semantic-font-weight-default-medium);font-size:var(--sapphire-semantic-size-font-heading-lg)}.sapphire-text--heading-md{font-weight:var(--sapphire-semantic-font-weight-default-medium);font-size:var(--sapphire-semantic-size-font-heading-md)}.sapphire-text--heading-sm{font-weight:var(--sapphire-semantic-font-weight-default-medium);font-size:var(--sapphire-semantic-size-font-heading-sm)}.sapphire-text--heading-xs{font-weight:var(--sapphire-semantic-font-weight-default-medium);font-size:var(--sapphire-semantic-size-font-heading-xs)}.sapphire-text--subheading-md,.sapphire-text--subheading-sm{line-height:var(--sapphire-global-size-line-height-sm)}.sapphire-text--subheading-md{font-size:var(--sapphire-semantic-size-font-body-sm)}.sapphire-text--subheading-sm{font-size:var(--sapphire-semantic-size-font-body-xs)}.sapphire-text--body-lg,.sapphire-text--body-md,.sapphire-text--body-sm,.sapphire-text--body-xs{line-height:var(--sapphire-global-size-line-height-md);margin-top:0;margin-bottom:0}.sapphire-text--body-lg{font-size:var(--sapphire-semantic-size-font-body-lg)}.sapphire-text--body-md{font-size:var(--sapphire-semantic-size-font-body-md)}.sapphire-text--body-sm{font-size:var(--sapphire-semantic-size-font-body-sm)}.sapphire-text--body-xs{font-size:var(--sapphire-semantic-size-font-body-xs)}.sapphire-text--caption-md,.sapphire-text--caption-sm{font-weight:var(--sapphire-semantic-font-weight-default-bold);line-height:var(--sapphire-global-size-line-height-sm)}.sapphire-text--caption-md{font-size:var(--sapphire-semantic-size-font-body-sm)}.sapphire-text--caption-sm{font-size:var(--sapphire-semantic-size-font-body-xs)}\n"] }]
299
+ }] });
300
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmllbGQuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vc3JjL2xpYi9maWVsZC9zcmMvZmllbGQuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vc3JjL2xpYi9maWVsZC9zcmMvZmllbGQuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IjtBQUFBLE9BQU8sRUFJTCxTQUFTLEVBQ1QsWUFBWSxFQUNaLGVBQWUsRUFDZixVQUFVLEVBQ1YsS0FBSyxFQUNMLFNBQVMsRUFDVCxRQUFRLEVBRVIsUUFBUSxFQUNSLFNBQVMsRUFDVCxZQUFZLEdBQ2IsTUFBTSxlQUFlLENBQUM7QUFDdkIsT0FBTyxFQUFFLGtCQUFrQixFQUFFLE1BQU0sd0JBQXdCLENBQUM7QUFDNUQsT0FBTyxFQUFFLG1CQUFtQixFQUFFLE1BQU0seUJBQXlCLENBQUM7QUFDOUQsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLGlDQUFpQyxDQUFDO0FBQ2pFLE9BQU8sRUFBZ0IscUJBQXFCLEVBQUUsTUFBTSx1QkFBdUIsQ0FBQztBQUM1RSxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sdUNBQXVDLENBQUM7QUFDdEUsT0FBTyxFQUFFLFNBQVMsRUFBRSxpQkFBaUIsRUFBRSxVQUFVLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUMxRSxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDL0MsT0FBTyxFQUFFLG1CQUFtQixFQUFFLE1BQU0seUJBQXlCLENBQUM7QUFDOUQsT0FBTyxFQUFFLGVBQWUsRUFBYSxNQUFNLHFCQUFxQixDQUFDO0FBQ2pFLE9BQU8sRUFBRSx3QkFBd0IsRUFBRSxNQUFNLDBDQUEwQyxDQUFDO0FBQ3BGLE9BQU8sRUFDTCxrQkFBa0IsR0FFbkIsTUFBTSxtQ0FBbUMsQ0FBQztBQUMzQyxPQUFPLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSx1Q0FBdUMsQ0FBQztBQUU1RSxPQUFPLEVB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QUUsSUFBSSxFQUFFO2dCQUl0QyxpQkFBaUI7c0JBRHhCLFlBQVk7dUJBQUMsaUJBQWlCLEVBQUUsRUFBRSxXQUFXLEVBQUUsSUFBSSxFQUFFO2dCQUk5QyxrQkFBa0I7c0JBRHpCLFlBQVk7dUJBQUMsZUFBZTs7QUFzTC9CLE1BQU0sT0FBTyxpQkFBa0IsU0FBUSxjQUFjOzs4R0FBeEMsaUJBQWlCO2tHQUFqQixpQkFBaUIsbVpBYmpCO1FBQ1Q7WUFDRSxPQUFPLEVBQUUsa0JBQWtCO1lBQzNCLFVBQVUsRUFBRSxDQUFDLFFBQTJCLEVBQW9CLEVBQUUsQ0FBQyxDQUFDO2dCQUM5RCxJQUFJLElBQUk7b0JBQ04sT0FBTyxRQUFRLENBQUMsSUFBSSxLQUFLLElBQUksQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUM7Z0JBQzlDLENBQUM7YUFDRixDQUFDO1lBQ0YsSUFBSSxFQUFFLENBQUMsaUJBQWlCLENBQUM7U0FDMUI7S0FDRiwrR0NsVkgsMmlFQWdFQTsyRkRxUmEsaUJBQWlCO2tCQW5CN0IsU0FBUzsrQkFDRSxhQUFhLFFBR2pCLGdCQUFnQixrQkFDTixDQUFDLHdCQUF3QixDQUFDLGFBQy9CO3dCQUNUOzRCQUNFLE9BQU8sRUFBRSxrQkFBa0I7NEJBQzNCLFVBQVUsRUFBRSxDQUFDLFFBQTJCLEVBQW9CLEVBQUUsQ0FBQyxDQUFDO2dDQUM5RCxJQUFJLElBQUk7b0NBQ04sT0FBTyxRQUFRLENBQUMsSUFBSSxLQUFLLElBQUksQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUM7Z0NBQzlDLENBQUM7NkJBQ0YsQ0FBQzs0QkFDRixJQUFJLEVBQUUsbUJBQW1CO3lCQUMxQjtxQkFDRixjQUNXLEtBQUsiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xuICBBZnRlckNvbnRlbnRJbml0LFxuICBBZnRlclZpZXdDaGVja2VkLFxuICBDaGFuZ2VEZXRlY3RvclJlZixcbiAgQ29tcG9uZW50LFxuICBDb250ZW50Q2hpbGQsXG4gIENvbnRlbnRDaGlsZHJlbixcbiAgSW5qZWN0YWJsZSxcbiAgSW5wdXQsXG4gIGlzRGV2TW9kZSxcbiAgT3B0aW9uYWwsXG4gIFF1ZXJ5TGlzdCxcbiAgU2tpcFNlbGYsXG4gIFZpZXdDaGlsZCxcbiAgVmlld0NoaWxkcmVuLFxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IEZpZWxkTm90ZURpcmVjdGl2ZSB9IGZyb20gJy4vZmllbGQtbm90ZS5kaXJlY3RpdmUnO1xuaW1wb3J0IHsgRmllbGRFcnJvckRpcmVjdGl2ZSB9IGZyb20gJy4vZmllbGQtZXJyb3IuZGlyZWN0aXZlJztcbmltcG9ydCB7IExhYmVsQ29tcG9uZW50IH0gZnJvbSAnLi4vLi4vbGFiZWwvc3JjL2xhYmVsLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBCb29sZWFuSW5wdXQsIGNvZXJjZUJvb2xlYW5Qcm9wZXJ0eSB9IGZyb20gJ0Bhbmd1bGFyL2Nkay9jb2VyY2lvbic7XG5pbXBvcnQgeyBDb2VyY2VCb29sZWFuIH0gZnJvbSAnLi4vLi4vY29tbW9uL2NvZXJjZS1ib29sZWFuLmRlY29yYXRvcic7XG5pbXBvcnQgeyBOZ0NvbnRyb2wsIFJlcXVpcmVkVmFsaWRhdG9yLCBWYWxpZGF0b3JzIH0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xuaW1wb3J0IHsgRmllbGRDb250cm9sIH0gZnJvbSAnLi9maWVsZC1jb250cm9sJztcbmltcG9ydCB7IEZpZWxkTGFiZWxEaXJlY3RpdmUgfSBmcm9tICcuL2ZpZWxkLWxhYmVsLmRpcmVjdGl2ZSc7XG5pbXBvcnQgeyBDZGtQb3J0YWxPdXRsZXQsIERvbVBvcnRhbCB9IGZyb20gJ0Bhbmd1bGFyL2Nkay9wb3J0YWwnO1xuaW1wb3J0IHsgVXNlQ29tcG9uZW50U3R5bGVzT25Ib3N0IH0gZnJvbSAnLi4vLi4vY29tbW9uL3NhcHBoaXJlLXZpZXctZW5jYXBzdWxhdGlvbic7XG5pbXBvcnQge1xuICBJQ09OX1NJWkVfUFJPVklERVIsXG4gIEljb25TaXplUHJvdmlkZXIsXG59IGZyb20gJy4uLy4uL2ljb24vc3JjL2ljb24tc2l6ZS1wcm92aWRlcic7XG5pbXBvcnQgeyBSYWRpb0dyb3VwQ29tcG9uZW50IH0gZnJvbSAnLi4vLi4vcmFkaW8vc3JjL3JhZGlvLWdyb3VwLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBJY29uUmVnaXN0cnkgfSBmcm9tICcuLi8uLi9pY29uL3B1YmxpY19hcGknO1xuaW1wb3J0IHtcbiAgaWNvbkNoZWNrbWFya091dGxpbmUsXG4gIGljb25FcnJvcixcbiAgaWNvbldhcm5pbmcsXG59IGZyb20gJ0BkYW5za2Uvc2FwcGhpcmUtaWNvbnMvanMnO1xuXG5ASW5qZWN0YWJsZSgpXG5jbGFzcyBGaWVsZEljb25TaXplUHJvdmlkZXIge1xuICBjb25zdHJ1Y3Rvcihwcml2YXRlIGZpZWxkOiBGaWVsZENvbXBvbmVudCkge31cblxuICBnZXQgc2l6ZSgpIHtcbiAgICByZXR1cm4gdGhpcy5maWVsZC5zaXplID09PSAnbGcnID8gJ21kJyA6ICdzbSc7XG4gIH1cbn1cblxuY29uc3QgZmllbGRIb3N0QmluZGluZyA9IHtcbiAgY2xhc3M6ICdzYXBwaGlyZS1maWVsZCcsXG4gICdbY2xhc3Muc2FwcGhpcmUtZmllbGQtLWxhYmVsLXBsYWNlbWVudC1zaWRlXSc6ICdsYWJlbFBsYWNlbWVudCA9PT0gXCJzaWRlXCInLFxuICAnW2NsYXNzLnNhcHBoaXJlLWZpZWxkLS1uby13aWR0aF0nOlxuICAgICdub0RlZmF1bHRXaWR0aCB8fCAhY29udHJvbEhhc0RlZmF1bHRXaWR0aCgpJyxcbiAgJ1tjbGFzcy5zYXBwaGlyZS1maWVsZC0tbGFiZWwtYWxpZ25tZW50LXRvcF0nOlxuICAgICdsYWJlbFBsYWNlbWVudCA9PT0gXCJzaWRlXCIgJiYgaGFzUmFkaW9Hcm91cENoaWxkKCknLFxuICAnW2NsYXNzLnNhcHBoaXJlLWZpZWxkLS1tZF0nOiAnc2l6ZSA9PT0gXCJtZFwiJyxcbn07XG5cbi8qKlxuICogQSBmaWVsZCBpcyBhIGNvbW1vbiBjb250YWluZXIgZm9yIGxhYmVsYWJsZSBjb250cm9scyBzdWNoIGFzIHNlbGVjdCwgcmFkaW8gZ3JvdXAsIHRleHQgZmllbGQsXG4gKiBldGMuXG4gKiBJbiBhZGRpdGlvbiB0byB0aGUgZmllbGQgY29udHJvbCAoc3Atc2VsZWN0LCBzcC1yYWRpby1ncm91cCwgc3AtdGV4dC1maWVsZCksIHRoZSBmb2xsb3dpbmdcbiAqIGNvbXBvbmVudHMgY2FuIGJlIHVzZWQgaW5zaWRlIGEgZmllbGQ6XG4gKiAtIHNwLWZpZWxkLWxhYmVsOiBpcyB1c2VkIHRvIHByb3ZpZGUgdGhlIGxhYmVsIHRleHQgZm9yIHRoZSBmaWVsZC5cbiAqIC0gc3AtaGVscC1idXR0b246IGlzIHBsYWNlZCBpbiB0aGUgbGFiZWwgYXJlYSwgbmV4dCB0byB0aGUgbGFiZWwgdGV4dFxuICogLSBzcC1maWVsZC1lcnJvcjogaXMgdXNlZCB0byBwcm92aWRlIGFuIGVycm9yIG1lc3NhZ2UsIHdoaWNoIGlzIHBsYWNlZCBiZWxvdyB0aGUgZmllbGQnc1xuICogY29udHJvbC5cbiAqIC0gc3AtZmllbGQtbm90ZTogaXMgdXNlZCB0byBwcm92aWRlIGEgbm90ZSwgd2hpY2ggaXMgcGxhY2VkIGJlbG93IHRoZSBmaWVsZCdzIGNvbnRyb2wuIE9ubHlcbiAqIHNob3duXG4gKiAgIHdoZW4gdGhlcmUgaXMgbm8gZXJyb3JcbiAqIC0gc3AtZmllbGQtbm90ZS1zdWZmaXg6IGlzIHVzZWQgdG8gcHJvdmlkZSBhIHN1ZmZpeCwgd2hpY2ggaXMgcGxhY2VkIG9uIHRoZSByaWdodCBzaWRlIG9mIHRoZVxuICogbm90ZSBhcmVhLlxuICpcbiAqIEFkZGl0aW9uYWxseSwgZmllbGQgc3VwcG9ydHM6XG4gKiAtIExhYmVsIHBsYWNlbWVudCBlaXRoZXIgYWJvdmUgKGRlZmF1bHQpIG9yIG9uIHRoZSBzaWRlIG9mIHRoZSBjb250cm9sLlxuICogLSBBc3NvY2lhdGluZyBsYWJlbCB3aXRoIHRoZSBjb250cm9sLCBzbyB0aGF0IGNsaWNraW5nIHRoZSBsYWJlbCBmb2N1c2VzIHRoZSBjb250cm9sLCBzaG93aW5nXG4gKiAgIGZvY3VzIHJpbmcuXG4gKiAtIE9wdGlvbmFsbHkgc2hvd2luZyBuZWNlc3NpdHkgaW5kaWNhdG9yIGluIHRoZSBsYWJlbC4gRmllbGRzIG5lY2Vzc2l0eSAocmVxdWlyZWQgb3Igb3B0aW9uYWwpXG4gKiAgIGlzIGRldGVybWluZWQgYmFzZWQgb24gdGhlIHByZXNlbmNlIG9mIEBhbmd1bGFyL2Zvcm0ncyB7QGxpbmsgUmVxdWlyZWRWYWxpZGF0b3J9LlxuICovXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdzcC1maWVsZCcsXG4gIHRlbXBsYXRlVXJsOiAnLi9maWVsZC5jb21wb25lbnQuaHRtbCcsXG4gIHN0eWxlVXJsczogWycuL2ZpZWxkLmNvbXBvbmVudC5zY3NzJ10sXG4gIGhvc3Q6IGZpZWxkSG9zdEJpbmRpbmcsXG4gIGhvc3REaXJlY3RpdmVzOiBbVXNlQ29tcG9uZW50U3R5bGVzT25Ib3N0XSxcbiAgcHJvdmlkZXJzOiBbXG4gICAge1xuICAgICAgcHJvdmlkZTogSUNPTl9TSVpFX1BST1ZJREVSLFxuICAgICAgdXNlQ2xhc3M6IEZpZWxkSWNvblNpemVQcm92aWRlcixcbiAgICB9LFxuICBdLFxuICBzdGFuZGFsb25lOiBmYWxzZSxcbn0pXG5leHBvcnQgY2xhc3MgRmllbGRDb21wb25lbnRcbiAgaW1wbGVtZW50cyBBZnRlckNvbnRlbnRJbml0LCBBZnRlclZpZXdDaGVja2VkLCBJY29uU2l6ZVByb3ZpZGVyXG57XG4gIC8qKlxuICAgKiBXaGV0aGVyIHRoZSBuZWNlc3NpdHkgaW5kaWNhdG9yIHNob3VsZCBiZSB2aXNpYmxlLlxuICAgKi9cbiAgQElucHV0KClcbiAgQENvZXJjZUJvb2xlYW5cbiAgbmVjZXNzaXR5SW5kaWNhdG9yPzogQm9vbGVhbklucHV0O1xuXG4gIC8qKlxuICAgKiBMYWJlbCBwbGFjZW1lbnQgd2l0aCByZXNwZWN0IHRvIHRoZSBmb3JtIGNvbnRyb2wuXG4gICAqIEBkZWZhdWx0IFwiYWJvdmVcIlxuICAgKi9cbiAgQElucHV0KClcbiAgbGFiZWxQbGFjZW1lbnQ/OiAnc2lkZScgfCAnYWJvdmUnID0gJ2Fib3ZlJztcblxuICAvKipcbiAgICogQXZvaWQgdGhlIGRlZmF1bHQgd2lkdGhcbiAgICovXG4gIEBJbnB1dCgpXG4gIEBDb2VyY2VCb29sZWFuXG4gIG5vRGVmYXVsdFdpZHRoPzogQm9vbGVhbklucHV0O1xuXG4gIC8qKlxuICAgKiBBbGxvdyBib3RoIG5vdGUgYW5kIGVycm9yIGF0IHRoZSBzYW1lIHRpbWVcbiAgICogQGRlZmF1bHQgZmFsc2VcbiAgICovXG4gIEBJbnB1dCgpXG4gIEBDb2VyY2VCb29sZWFuXG4gIGFsbG93Tm90ZUFuZEVycm9yPzogQm9vbGVhbklucHV0O1xuXG4gIC8qKlxuICAgKiBAZGVmYXVsdCBcImxnXCJcbiAgICovXG4gIEBJbnB1dCgpXG4gIHNpemU/OiAnbGcnIHwgJ21kJyA9ICdsZyc7XG5cbiAgQENvbnRlbnRDaGlsZChGaWVsZE5vdGVEaXJlY3RpdmUpXG4gIG5vdGU/OiBGaWVsZE5vdGVEaXJlY3RpdmU7XG5cbiAgQENvbnRlbnRDaGlsZChGaWVsZEVycm9yRGlyZWN0aXZlKVxuICBlcnJvcj86IEZpZWxkRXJyb3JEaXJlY3RpdmU7XG5cbiAgQFZpZXdDaGlsZChMYWJlbENvbXBvbmVudClcbiAgbGFiZWw/OiBMYWJlbENvbXBvbmVudDtcblxuICBAQ29udGVudENoaWxkKEZpZWxkTGFiZWxEaXJlY3RpdmUsIHsgZGVzY2VuZGFudHM6IGZhbHNlIH0pXG4gIF9maWVsZExhYmVsPzogRmllbGRMYWJlbERpcmVjdGl2ZTtcblxuICAvKipcbiAgICogRm9jdXNhYmxlLCBsYWJlbGFibGUgY29udHJvbC4gQ29tcG9uZW50cyBsaWtlIFNlbGVjdCwgUmFkaW9Hcm91cCBvciBUZXh0RmllbGQsXG4gICAqIHRoYXQgYXJlIG1lYW50IHRvIHJlbmRlcmVkIGluc2lkZSBzcC1maWVsZCwgcHJvdmlkZSBGaWVsZENvbnRyb2wuXG4gICAqL1xuICBAQ29udGVudENoaWxkcmVuKEZpZWxkQ29udHJvbCwgeyBkZXNjZW5kYW50czogdHJ1ZSB9KVxuICBjb250cm9scz86IFF1ZXJ5TGlzdDxGaWVsZENvbnRyb2w+O1xuXG4gIEBDb250ZW50Q2hpbGQoUmFkaW9Hcm91cENvbXBvbmVudClcbiAgcmFkaW9Hcm91cD86IFJhZGlvR3JvdXBDb21wb25lbnQ7XG5cbiAgQENvbnRlbnRDaGlsZChOZ0NvbnRyb2wsIHsgZGVzY2VuZGFudHM6IHRydWUgfSlcbiAgcHJpdmF0ZSBuZ0NvbnRyb2w/OiBOZ0NvbnRyb2w7XG5cbiAgQENvbnRlbnRDaGlsZChSZXF1aXJlZFZhbGlkYXRvciwgeyBkZXNjZW5kYW50czogdHJ1ZSB9KVxuICBwcml2YXRlIHJlcXVpcmVkVmFsaWRhdG9yPzogUmVxdWlyZWRWYWxpZGF0b3I7XG5cbiAgQFZpZXdDaGlsZHJlbihDZGtQb3J0YWxPdXRsZXQpXG4gIHByaXZhdGUgc3VmZml4UG9ydGFsT3V0bGV0OiBRdWVyeUxpc3Q8Q2RrUG9ydGFsT3V0bGV0PiB8IG51bGwgPSBudWxsO1xuXG4gIC8qKlxuICAgKiBJcyBzZXQgdmlhIGZpZWxkLW5vdGUtYWZmaXggZGlyZWN0aXZlLiBDb250ZW50Q2hpbGQgcXVlcnkgY2FuJ3QgYmUgdXNlZCBzaW5jZSB3ZSBuZWVkXG4gICAqIHRvIHF1ZXJ5IGZyb20gY29udGVudCAtPiB2aWV3IGluIHNvbWUgY2FzZXMuXG4gICAqIEBpbnRlcm5hbFxuICAgKi9cbiAgX25vdGVTdWZmaXhQb3J0YWw6IERvbVBvcnRhbDxIVE1MRWxlbWVudD4gfCBudWxsID0gbnVsbDtcblxuICBwcml2YXRlIGNoYW5nZWQ6IGJvb2xlYW4gPSBmYWxzZTtcblxuICBjb25zdHJ1Y3RvcihcbiAgICBwcml2YXRlIGNoYW5nZURldGVjdG9yUmVmOiBDaGFuZ2VEZXRlY3RvclJlZixcbiAgICBpY29uUmVnaXN0cnk6IEljb25SZWdpc3RyeSxcbiAgICBAT3B0aW9uYWwoKSBAU2tpcFNlbGYoKSBwcml2YXRlIGZpZWxkc2V0PzogRmllbGRzZXRDb21wb25lbnRcbiAgKSB7XG4gICAgaWNvblJlZ2lzdHJ5LnJlZ2lzdGVySWNvbihpY29uQ2hlY2ttYXJrT3V0bGluZSk7XG4gICAgaWNvblJlZ2lzdHJ5LnJlZ2lzdGVySWNvbihpY29uV2FybmluZyk7XG4gICAgaWNvblJlZ2lzdHJ5LnJlZ2lzdGVySWNvbihpY29uRXJyb3IpO1xuICB9XG5cbiAgbmdBZnRlckNvbnRlbnRJbml0KCkge1xuICAgIGlmICghdGhpcy5jb250cm9scyAmJiBpc0Rldk1vZGUoKSkge1xuICAgICAgdGhyb3cgbmV3IEVycm9yKFxuICAgICAgICAnc3AtZmllbGQgaXMgcmVuZGVyZWQgd2l0aG91dCBhbnkgY29udHJvbCBsaWtlIHNwLXNlbGVjdCwgc3AtdGV4dC1maWVsZCwgb3Igc3AtcmFkaW8tZ3JvdXAgaW5zaWRlIGl0LidcbiAgICAgICk7XG4gICAgfVxuICB9XG5cbiAgbmdBZnRlclZpZXdJbml0KCkge1xuICAgIHRoaXMuc3VmZml4UG9ydGFsT3V0bGV0IS5jaGFuZ2VzLnN1YnNjcmliZSgoKSA9PiB7XG4gICAgICBpZiAodGhpcy5fbm90ZVN1ZmZpeFBvcnRhbD8uaXNBdHRhY2hlZCA9PT0gZmFsc2UpIHtcbiAgICAgICAgLy8gSXQgbWlnaHQgYmUgYSBidWcgaW4gQGFuZ3VsYXIvY2RrL3BvcnRhbCwgYnV0IHdoZW4gdGhlIHBvcnRhbCBvdXRsZXQgdGhhdCByZW5kZXJzXG4gICAgICAgIC8vIGEgRG9tUG9ydGFsIGlzIGNoYW5nZWQsIHRoZSBEb21Qb3J0YWwgZ2V0cyBkZXRhY2hlZCBhbmQgbm90IHJlYXR0YWNoZWQgdG8gdGhlIG5ldyBvdXRsZXQuXG4gICAgICAgIC8vIFRoZSBmb2xsb3dpbmcgcmVhdHRhY2hpbmcgaXMgdG8gd29yayBhcm91bmQgdGhpcyBpc3N1ZS5cbiAgICAgICAgdGhpcy5zdWZmaXhQb3J0YWxPdXRsZXQ/LmZpcnN0Py5kZXRhY2goKTtcbiAgICAgICAgdGhpcy5zdWZmaXhQb3J0YWxPdXRsZXQ/LmZpcnN0Py5hdHRhY2godGhpcy5fbm90ZVN1ZmZpeFBvcnRhbCk7XG4gICAgICB9XG4gICAgfSk7XG4gIH1cblxuICBuZ0FmdGVyVmlld0NoZWNrZWQoKSB7XG4gICAgLyoqXG4gICAgICogU2luY2Ugbm90ZSBzdWZmaXggcG9ydGFsIGlzIGNoYW5nZWQgYnkgRmllbGROb3RlU3VmZml4RGlyZWN0aXZlLFxuICAgICAqIGl0IGNyZWF0ZXMgYSBjYXNlIG9mIEV4cHJlc3Npb25DaGFuZ2VkQWZ0ZXJJdEhhc0JlZW5DaGVja2VkRXJyb3IuXG4gICAgICogU28gd2UgbmVlZCB0byBtYW51YWxseSBkZXRlY3QgY2hhbmdlcyB3aGVuIHN1ZmZpeCBwb3J0YWwgaXMgY2hhbmdlZC5cbiAgICAgKiBXZSBXb3VsZG4ndCBuZWVkIHRvIGRvIHNvLCBpZiB3ZSBjb3VsZCBxdWVyeSBGaWVsZE5vdGVTdWZmaXhEaXJlY3RpdmVcbiAgICAgKiB2aWEgQENvbnRlbnRDaGlsZCwgYnV0IHdlIGNhbid0IGJlY2F1c2UgaXQgY2FuIGJlIGluIHRoZSB2aWV3IG9mIGEgY29udGVudFxuICAgICAqIGNoaWxkLCB3aGljaCBtYWtlcyBpdCBub3QgcXVlcnktYWJsZS5cbiAgICAgKi9cbiAgICBpZiAodGhpcy5jaGFuZ2VkKSB7XG4gICAgICB0aGlzLmNoYW5nZURldGVjdG9yUmVmLmRldGVjdENoYW5nZXMoKTtcbiAgICAgIHRoaXMuY2hhbmdlZCA9IGZhbHNlO1xuICAgIH1cbiAgfVxuXG4gIC8qKlxuICAgKiBXaGV0aGVyIHRoZSBmaWVsZCBjb250YWlucyBhbiBlcnJvciBtZXNzYWdlIChzcC1maWVsZC1lcnJvcikuXG4gICAqIEFsc28gY2hlY2tzIGlmIGEgcGFyZW50IGZpZWxkc2V0IGhhcyBhbiBlcnJvci5cbiAgICovXG4gIGhhc0Vycm9yKHRhcmdldEZpZWxkPzogRmllbGRDb250cm9sKTogYm9vbGVhbiB7XG4gICAgLy8gQ2hlY2sgaWYgdGhpcyBmaWVsZCBoYXMgaXRzIG93biBlcnJvclxuICAgIGlmICh0aGlzLl9oYXNPd25FcnJvcih0YXJnZXRGaWVsZCkpIHtcbiAgICAgIHJldHVybiB0cnVlO1xuICAgIH1cblxuICAgIC8vIENoZWNrIGlmIHBhcmVudCBmaWVsZHNldCBoYXMgYW4gZXJyb3IgdGFyZ2V0dGluZyB0aGlzIGZpZWxkXG4gICAgaWYgKHRoaXMuZmllbGRzZXQpIHtcbiAgICAgIHJldHVybiB0aGlzLmZpZWxkc2V0Lmhhc0Vycm9yKHRhcmdldEZpZWxkKTtcbiAgICB9XG5cbiAgICByZXR1cm4gZmFsc2U7XG4gIH1cblxuICBwcml2YXRlIF9oYXNPd25FcnJvcih0YXJnZXRGaWVsZD86IEZpZWxkQ29udHJvbCk6IGJvb2xlYW4ge1xuICAgIGlmICghdGhpcy5lcnJvcikge1xuICAgICAgcmV0dXJuIGZhbHNlO1xuICAgIH1cblxuICAgIGNvbnN0IHsgdGFyZ2V0IH0gPSB0aGlzLmVycm9yO1xuXG4gICAgLy8gSWYgbm8gdGFyZ2V0IGlzIHNwZWNpZmllZCwgZXJyb3IgYXBwbGllcyB0byBhbGwgY29udHJvbHNcbiAgICBpZiAoIXRhcmdldCkge1xuICAgICAgcmV0dXJuIHRydWU7XG4gICAgfVxuXG4gICAgLy8gSWYgdGhlIHRhcmdldCBpcyBhIEZpZWxkQ29udHJvbCwgY2hlY2sgaWYgaXQgbWF0Y2hlc1xuICAgIGlmICh0aGlzLl9pc0ZpZWxkQ29udHJvbCh0YXJnZXQpKSB7XG4gICAgICByZXR1cm4gdGFyZ2V0ID09PSB0YXJnZXRGaWVsZDtcbiAgICB9XG5cbiAgICByZXR1cm4gZmFsc2U7XG4gIH1cblxuICBwcml2YXRlIF9pc0ZpZWxkQ29udHJvbCh0YXJnZXQ6IHVua25vd24pOiB0YXJnZXQgaXMgRmllbGRDb250cm9sIHtcbiAgICByZXR1cm4gKFxuICAgICAgdHlwZW9mIHRhcmdldCA9PT0gJ29iamVjdCcgJiYgdGFyZ2V0ICE9PSBudWxsICYmICdpc0Rpc2FibGVkJyBpbiB0YXJnZXRcbiAgICApO1xuICB9XG5cbiAgLyoqXG4gICAqIElmIHRoZXJlIGFyZSBtdWx0aXBsZSBjb250cm9scywgdGhlIGZpZWxkIGlzIG9ubHkgZGlzYWJsZWQgd2hlbiBhbGwgb2YgdGhlbSBhcmUgZGlzYWJsZWRcbiAgICovXG4gIGlzRGlzYWJsZWQoKTogYm9vbGVhbiB7XG4gICAgaWYgKCF0aGlzLmNvbnRyb2xzIHx8IHRoaXMuY29udHJvbHMubGVuZ3RoID09PSAwKSB7XG4gICAgICByZXR1cm4gZmFsc2U7XG4gICAgfVxuXG4gICAgcmV0dXJuIHRoaXMuY29udHJvbHM/LnRvQXJyYXkoKS5ldmVyeSgoY29udHJvbCkgPT4gY29udHJvbC5pc0Rpc2FibGVkKCkpO1xuICB9XG5cbiAgLyoqXG4gICAqIElmIGFueSBvZiB0aGUgY29udHJvbHMgc2hvdWxkIGJlIGNvbnN0cmFpbmVkIGJ5IHRoZSBmaWVsZCdzIGRlZmF1bHQgd2lkaHRcbiAgICovXG4gIGNvbnRyb2xIYXNEZWZhdWx0V2lkdGgoKTogYm9vbGVhbiB7XG4gICAgaWYgKCF0aGlzLmNvbnRyb2xzIHx8IHRoaXMuY29udHJvbHMubGVuZ3RoID09PSAwKSB7XG4gICAgICByZXR1cm4gZmFsc2U7XG4gICAgfVxuXG4gICAgcmV0dXJuIHRoaXMuY29udHJvbHM/LnRvQXJyYXkoKS5zb21lKChjb250cm9sKSA9PiBjb250cm9sLmhhc0RlZmF1bHRXaWR0aCk7XG4gIH1cblxuICAvKipcbiAgICogT25seSBzdXBwb3J0IGZlYXR1cmVzIGxpa2UgYGZvcmAgb3IgYGxhYmVsQ2xpY2tgIGlmIHRoZSBmaWVsZCBoYXMgb25lIGNvbnRyb2wuXG4gICAqL1xuICBnZXQgY29udHJvbCgpOiBGaWVsZENvbnRyb2wgfCB1bmRlZmluZWQge1xuICAgIHJldHVybiB0aGlzLmNvbnRyb2xzPy5sZW5ndGggPT09IDEgPyB0aGlzLmNvbnRyb2xzLmZpcnN0IDogdW5kZWZpbmVkO1xuICB9XG5cbiAgZ2V0IGlzR3JvdXAoKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuIHRoaXMuY29udHJvbHMgPyB0aGlzLmNvbnRyb2xzLmxlbmd0aCA+IDEgOiBmYWxzZTtcbiAgfVxuXG4gIC8qKlxuICAgKiBXaGV0aGVyIHRoZSBmaWVsZCBjb250cm9sIGlzIHJhZGlvIGdyb3VwIChzcC1yYWRpby1ncm91cCkuXG4gICAqL1xuICBoYXNSYWRpb0dyb3VwQ2hpbGQoKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuIHRoaXMucmFkaW9Hcm91cCAhPSB1bmRlZmluZWQ7XG4gIH1cblxuICBnZXQgbGFiZWxOZWNlc3NpdHlJbmRpY2F0b3IoKTogTGFiZWxDb21wb25lbnRbJ25lY2Vzc2l0eUluZGljYXRvciddIHtcbiAgICBpZiAodGhpcy5uZWNlc3NpdHlJbmRpY2F0b3IpIHtcbiAgICAgIHJldHVybiBjb2VyY2VCb29sZWFuUHJvcGVydHkodGhpcy5yZXF1aXJlZFZhbGlkYXRvcj8ucmVxdWlyZWQpIHx8XG4gICAgICAgIHRoaXMubmdDb250cm9sPy5jb250cm9sPy5oYXNWYWxpZGF0b3IoVmFsaWRhdG9ycy5yZXF1aXJlZClcbiAgICAgICAgPyAncmVxdWlyZWQnXG4gICAgICAgIDogJ29wdGlvbmFsJztcbiAgICB9XG4gICAgcmV0dXJuIHVuZGVmaW5lZDtcbiAgfVxuXG4gIF9zZXRTdWZmaXhQb3J0YWwocG9ydGFsOiBEb21Qb3J0YWw8SFRNTEVsZW1lbnQ+IHwgbnVsbCkge1xuICAgIGlmICh0aGlzLl9ub3RlU3VmZml4UG9ydGFsPy5pc0F0dGFjaGVkKSB7XG4gICAgICB0aGlzLl9ub3RlU3VmZml4UG9ydGFsLmRldGFjaCgpO1xuICAgICAgLy8gY2FsbGluZyBkZXRhY2ggd2lsbCBtb3ZlIHRoZSBlbGVtZW50IGJhY2sgdG8gdGhlIERPTS4gQ291bGRuJ3QgZmluZCBhbnkgYmV0dGVyXG4gICAgICAvLyB3YXkgdGhhbiBpbXBlcmF0aXZlbHkgcmVtb3ZpbmcgdGhlIERPTSBlbGVtZW50IHRvby5cbiAgICAgIHRoaXMuX25vdGVTdWZmaXhQb3J0YWwuZWxlbWVudC5yZW1vdmUoKTtcbiAgICB9XG4gICAgdGhpcy5fbm90ZVN1ZmZpeFBvcnRhbCA9IHBvcnRhbDtcbiAgICB0aGlzLmNoYW5nZWQgPSB0cnVlO1xuICB9XG59XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ3NwLWZpZWxkc2V0JyxcbiAgdGVtcGxhdGVVcmw6ICcuL2ZpZWxkLmNvbXBvbmVudC5odG1sJyxcbiAgc3R5bGVVcmxzOiBbJy4vZmllbGQuY29tcG9uZW50LnNjc3MnXSxcbiAgaG9zdDogZmllbGRIb3N0QmluZGluZyxcbiAgaG9zdERpcmVjdGl2ZXM6IFtVc2VDb21wb25lbnRTdHlsZXNPbkhvc3RdLFxuICBwcm92aWRlcnM6IFtcbiAgICB7XG4gICAgICBwcm92aWRlOiBJQ09OX1NJWkVfUFJPVklERVIsXG4gICAgICB1c2VGYWN0b3J5OiAoZmllbGRzZXQ6IEZpZWxkc2V0Q29tcG9uZW50KTogSWNvblNpemVQcm92aWRlciA9PiAoe1xuICAgICAgICBnZXQgc2l6ZSgpIHtcbiAgICAgICAgICByZXR1cm4gZmllbGRzZXQuc2l6ZSA9PT0gJ2xnJyA/ICdtZCcgOiAnc20nO1xuICAgICAgICB9LFxuICAgICAgfSksXG4gICAgICBkZXBzOiBbRmllbGRzZXRDb21wb25lbnRdLFxuICAgIH0sXG4gIF0sXG4gIHN0YW5kYWxvbmU6IGZhbHNlLFxufSlcbmV4cG9ydCBjbGFzcyBGaWVsZHNldENvbXBvbmVudCBleHRlbmRzIEZpZWxkQ29tcG9uZW50IHt9XG4iLCI8ZGl2IGNsYXNzPVwic2FwcGhpcmUtZmllbGRfX2xhYmVsXCIgKm5nSWY9XCJfZmllbGRMYWJlbFwiPlxuICA8c3AtbGFiZWxcbiAgICBbbmVjZXNzaXR5SW5kaWNhdG9yXT1cImxhYmVsTmVjZXNzaXR5SW5kaWNhdG9yXCJcbiAgICBbZm9yXT1cImNvbnRyb2w/LmdldElkPy4oKVwiXG4gICAgW2Rpc2FibGVkXT1cImlzRGlzYWJsZWQoKVwiXG4gICAgKGxhYmVsQ2xpY2spPVwiY29udHJvbD8uZm9jdXM/Ligna2V5Ym9hcmQnKVwiXG4gICAgW3NpemVdPVwic2l6ZVwiXG4gID5cbiAgICA8bmctY29udGVudCBzZWxlY3Q9XCJzcC1maWVsZC1sYWJlbFwiPjwvbmctY29udGVudD5cbiAgICA8bmctY29udGVudFxuICAgICAgc2VsZWN0PVwic3AtaGVscC1idXR0b25cIlxuICAgICAgbmdQcm9qZWN0QXM9XCJzcC1oZWxwLWJ1dHRvblwiXG4gICAgPjwvbmctY29udGVudD5cbiAgPC9zcC1sYWJlbD5cbjwvZGl2PlxuPGRpdlxuICBjbGFzcz1cInNhcHBoaXJlLWZpZWxkX19jb250cm9sXCJcbiAgW25nQ2xhc3NdPVwie1xuICAgICdzYXBwaGlyZS1maWVsZF9fY29udHJvbC0tZ3JvdXAnOiBpc0dyb3VwXG4gIH1cIlxuPlxuICA8bmctY29udGVudD48L25nLWNvbnRlbnQ+XG48L2Rpdj5cbjxkaXYgY2xhc3M9XCJzYXBwaGlyZS1maWVsZF9fbWVzc2FnZVwiICpuZ0lmPVwibm90ZSB8fCBlcnJvciB8fCBfbm90ZVN1ZmZpeFBvcnRhbFwiPlxuICA8ZGl2IGNsYXNzPVwic2FwcGhpcmUtZmllbGRfX25vdGUtcm93IHNhcHBoaXJlLXRleHQtLW5lZ2F0aXZlXCIgKm5nSWY9XCJlcnJvclwiPlxuICAgIDxzcGFuIGNsYXNzPVwic2FwcGhpcmUtZmllbGRfX25vdGUtaWNvblwiPlxuICAgICAgPHNwLWljb24gbmFtZT1cImVycm9yXCIgc2l6ZT1cInNtXCI+PC9zcC1pY29uPlxuICAgIDwvc3Bhbj5cbiAgICA8ZGl2IGNsYXNzPVwic2FwcGhpcmUtZmllbGRfX25vdGVcIj5cbiAgICAgIDxuZy1jb250ZW50IHNlbGVjdD1cInNwLWZpZWxkLWVycm9yXCI+PC9uZy1jb250ZW50PlxuICAgIDwvZGl2PlxuXG4gICAgPG5nLWNvbnRhaW5lciAqbmdJZj1cIl9ub3RlU3VmZml4UG9ydGFsXCI+XG4gICAgICA8bmctY29udGFpbmVyICpjZGtQb3J0YWxPdXRsZXQ9XCJfbm90ZVN1ZmZpeFBvcnRhbFwiPjwvbmctY29udGFpbmVyPlxuICAgIDwvbmctY29udGFpbmVyPlxuICA8L2Rpdj5cbiAgPGRpdlxuICAgIGNsYXNzPVwic2FwcGhpcmUtZmllbGRfX25vdGUtcm93XCJcbiAgICBbbmdDbGFzc109XCJ7XG4gICAgICAnc2FwcGhpcmUtdGV4dC0tcG9zaXRpdmUnOiBub3RlPy52YXJpYW50ID09PSAnc3VjY2VzcycsXG4gICAgICAnc2FwcGhpcmUtdGV4dC0td2FybmluZyc6IG5vdGU/LnZhcmlhbnQgPT09ICd3YXJuaW5nJ1xuICAgIH1cIlxuICAgICpuZ0lmPVwibm90ZSAmJiAoIWVycm9yIHx8IGFsbG93Tm90ZUFuZEVycm9yKVwiXG4gID5cbiAgICA8c3BhbiBjbGFzcz1cInNhcHBoaXJlLWZpZWxkX19ub3RlLWljb25cIiAqbmdJZj1cIm5vdGU/Lmljb25cIj5cbiAgICAgIDxzcC1pY29uIFtuYW1lXT1cIm5vdGU/Lmljb25cIiBzaXplPVwic21cIj48L3NwLWljb24+XG4gICAgPC9zcGFuPlxuICAgIDxkaXYgY2xhc3M9XCJzYXBwaGlyZS1maWVsZF9fbm90ZVwiPlxuICAgICAgPG5nLWNvbnRlbnQgc2VsZWN0PVwic3AtZmllbGQtbm90ZVwiPjwvbmctY29udGVudD5cbiAgICA8L2Rpdj5cblxuICAgIDxuZy1jb250YWluZXIgKm5nSWY9XCIhZXJyb3IgJiYgX25vdGVTdWZmaXhQb3J0YWxcIj5cbiAgICAgIDxuZy1jb250YWluZXIgKmNka1BvcnRhbE91dGxldD1cIl9ub3RlU3VmZml4UG9ydGFsXCI+PC9uZy1jb250YWluZXI+XG4gICAgPC9uZy1jb250YWluZXI+XG4gIDwvZGl2PlxuICA8ZGl2XG4gICAgY2xhc3M9XCJzYXBwaGlyZS1maWVsZF9fbm90ZS1yb3dcIlxuICAgICpuZ0lmPVwiIW5vdGUgJiYgIWVycm9yICYmIF9ub3RlU3VmZml4UG9ydGFsXCJcbiAgPlxuICAgIDxuZy1jb250YWluZXI+XG4gICAgICA8bmctY29udGFpbmVyICpjZGtQb3J0YWxPdXRsZXQ9XCJfbm90ZVN1ZmZpeFBvcnRhbFwiPjwvbmctY29udGFpbmVyPlxuICAgIDwvbmctY29udGFpbmVyPlxuICA8L2Rpdj5cbjwvZGl2PlxuIl19
@@ -3,7 +3,7 @@ import { FieldLabelDirective } from './field-label.directive';
3
3
  import { FieldNoteDirective } from './field-note.directive';
4
4
  import { FieldNoteSuffixDirective } from './field-note-suffix.directive';
5
5
  import { FieldErrorDirective } from './field-error.directive';
6
- import { FieldComponent } from './field.component';
6
+ import { FieldComponent, FieldsetComponent } from './field.component';
7
7
  import { PortalModule } from '@angular/cdk/portal';
8
8
  import { CommonModule, NgIf } from '@angular/common';
9
9
  import { LabelComponent } from '../../label/public_api';
@@ -12,7 +12,7 @@ import * as i0 from "@angular/core";
12
12
  export class SapphireFieldModule {
13
13
  }
14
14
  SapphireFieldModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.0", ngImport: i0, type: SapphireFieldModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
15
- SapphireFieldModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "15.2.0", ngImport: i0, type: SapphireFieldModule, declarations: [FieldComponent], imports: [NgIf,
15
+ SapphireFieldModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "15.2.0", ngImport: i0, type: SapphireFieldModule, declarations: [FieldComponent, FieldsetComponent], imports: [NgIf,
16
16
  FieldLabelDirective,
17
17
  FieldNoteDirective,
18
18
  FieldNoteSuffixDirective,
@@ -24,7 +24,8 @@ SapphireFieldModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", ver
24
24
  FieldNoteDirective,
25
25
  FieldNoteSuffixDirective,
26
26
  FieldErrorDirective,
27
- FieldComponent] });
27
+ FieldComponent,
28
+ FieldsetComponent] });
28
29
  SapphireFieldModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "15.2.0", ngImport: i0, type: SapphireFieldModule, imports: [PortalModule,
29
30
  LabelComponent,
30
31
  CommonModule,
@@ -32,7 +33,7 @@ SapphireFieldModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", ver
32
33
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.0", ngImport: i0, type: SapphireFieldModule, decorators: [{
33
34
  type: NgModule,
34
35
  args: [{
35
- declarations: [FieldComponent],
36
+ declarations: [FieldComponent, FieldsetComponent],
36
37
  imports: [
37
38
  NgIf,
38
39
  FieldLabelDirective,
@@ -50,7 +51,8 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.0", ngImpor
50
51
  FieldNoteSuffixDirective,
51
52
  FieldErrorDirective,
52
53
  FieldComponent,
54
+ FieldsetComponent,
53
55
  ],
54
56
  }]
55
57
  }] });
56
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmllbGQubW9kdWxlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vc3JjL2xpYi9maWVsZC9zcmMvZmllbGQubW9kdWxlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDekMsT0FBTyxFQUFFLG1CQUFtQixFQUFFLE1BQU0seUJBQXlCLENBQUM7QUFDOUQsT0FBTyxFQUFFLGtCQUFrQixFQUFFLE1BQU0sd0JBQXdCLENBQUM7QUFDNUQsT0FBTyxFQUFFLHdCQUF3QixFQUFFLE1BQU0sK0JBQStCLENBQUM7QUFDekUsT0FBTyxFQUFFLG1CQUFtQixFQUFFLE1BQU0seUJBQXlCLENBQUM7QUFFOUQsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLG1CQUFtQixDQUFDO0FBQ25ELE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxxQkFBcUIsQ0FBQztBQUNuRCxPQUFPLEVBQUUsWUFBWSxFQUFFLElBQUksRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQ3JELE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSx3QkFBd0IsQ0FBQztBQUN4RCxPQUFPLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSx1QkFBdUIsQ0FBQzs7QUF1QjNELE1BQU0sT0FBTyxtQkFBbUI7O2dIQUFuQixtQkFBbUI7aUhBQW5CLG1CQUFtQixpQkFwQmYsY0FBYyxhQUUzQixJQUFJO1FBQ0osbUJBQW1CO1FBQ25CLGtCQUFrQjtRQUNsQix3QkFBd0I7UUFDeEIsbUJBQW1CO1FBQ25CLFlBQVk7UUFDWixjQUFjO1FBQ2QsWUFBWTtRQUNaLGtCQUFrQixhQUdsQixtQkFBbUI7UUFDbkIsa0JBQWtCO1FBQ2xCLHdCQUF3QjtRQUN4QixtQkFBbUI7UUFDbkIsY0FBYztpSEFHTCxtQkFBbUIsWUFiNUIsWUFBWTtRQUNaLGNBQWM7UUFDZCxZQUFZO1FBQ1osa0JBQWtCOzJGQVVULG1CQUFtQjtrQkFyQi9CLFFBQVE7bUJBQUM7b0JBQ1IsWUFBWSxFQUFFLENBQUMsY0FBYyxDQUFDO29CQUM5QixPQUFPLEVBQUU7d0JBQ1AsSUFBSTt3QkFDSixtQkFBbUI7d0JBQ25CLGtCQUFrQjt3QkFDbEIsd0JBQXdCO3dCQUN4QixtQkFBbUI7d0JBQ25CLFlBQVk7d0JBQ1osY0FBYzt3QkFDZCxZQUFZO3dCQUNaLGtCQUFrQjtxQkFDbkI7b0JBQ0QsT0FBTyxFQUFFO3dCQUNQLG1CQUFtQjt3QkFDbkIsa0JBQWtCO3dCQUNsQix3QkFBd0I7d0JBQ3hCLG1CQUFtQjt3QkFDbkIsY0FBYztxQkFDZjtpQkFDRiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IE5nTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBGaWVsZExhYmVsRGlyZWN0aXZlIH0gZnJvbSAnLi9maWVsZC1sYWJlbC5kaXJlY3RpdmUnO1xuaW1wb3J0IHsgRmllbGROb3RlRGlyZWN0aXZlIH0gZnJvbSAnLi9maWVsZC1ub3RlLmRpcmVjdGl2ZSc7XG5pbXBvcnQgeyBGaWVsZE5vdGVTdWZmaXhEaXJlY3RpdmUgfSBmcm9tICcuL2ZpZWxkLW5vdGUtc3VmZml4LmRpcmVjdGl2ZSc7XG5pbXBvcnQgeyBGaWVsZEVycm9yRGlyZWN0aXZlIH0gZnJvbSAnLi9maWVsZC1lcnJvci5kaXJlY3RpdmUnO1xuXG5pbXBvcnQgeyBGaWVsZENvbXBvbmVudCB9IGZyb20gJy4vZmllbGQuY29tcG9uZW50JztcbmltcG9ydCB7IFBvcnRhbE1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2Nkay9wb3J0YWwnO1xuaW1wb3J0IHsgQ29tbW9uTW9kdWxlLCBOZ0lmIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcbmltcG9ydCB7IExhYmVsQ29tcG9uZW50IH0gZnJvbSAnLi4vLi4vbGFiZWwvcHVibGljX2FwaSc7XG5pbXBvcnQgeyBTYXBwaGlyZUljb25Nb2R1bGUgfSBmcm9tICcuLi8uLi9pY29uL3B1YmxpY19hcGknO1xuXG5ATmdNb2R1bGUoe1xuICBkZWNsYXJhdGlvbnM6IFtGaWVsZENvbXBvbmVudF0sXG4gIGltcG9ydHM6IFtcbiAgICBOZ0lmLFxuICAgIEZpZWxkTGFiZWxEaXJlY3RpdmUsXG4gICAgRmllbGROb3RlRGlyZWN0aXZlLFxuICAgIEZpZWxkTm90ZVN1ZmZpeERpcmVjdGl2ZSxcbiAgICBGaWVsZEVycm9yRGlyZWN0aXZlLFxuICAgIFBvcnRhbE1vZHVsZSxcbiAgICBMYWJlbENvbXBvbmVudCxcbiAgICBDb21tb25Nb2R1bGUsXG4gICAgU2FwcGhpcmVJY29uTW9kdWxlLFxuICBdLFxuICBleHBvcnRzOiBbXG4gICAgRmllbGRMYWJlbERpcmVjdGl2ZSxcbiAgICBGaWVsZE5vdGVEaXJlY3RpdmUsXG4gICAgRmllbGROb3RlU3VmZml4RGlyZWN0aXZlLFxuICAgIEZpZWxkRXJyb3JEaXJlY3RpdmUsXG4gICAgRmllbGRDb21wb25lbnQsXG4gIF0sXG59KVxuZXhwb3J0IGNsYXNzIFNhcHBoaXJlRmllbGRNb2R1bGUge31cbiJdfQ==
58
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmllbGQubW9kdWxlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vc3JjL2xpYi9maWVsZC9zcmMvZmllbGQubW9kdWxlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDekMsT0FBTyxFQUFFLG1CQUFtQixFQUFFLE1BQU0seUJBQXlCLENBQUM7QUFDOUQsT0FBTyxFQUFFLGtCQUFrQixFQUFFLE1BQU0sd0JBQXdCLENBQUM7QUFDNUQsT0FBTyxFQUFFLHdCQUF3QixFQUFFLE1BQU0sK0JBQStCLENBQUM7QUFDekUsT0FBTyxFQUFFLG1CQUFtQixFQUFFLE1BQU0seUJBQXlCLENBQUM7QUFFOUQsT0FBTyxFQUFFLGNBQWMsRUFBRSxpQkFBaUIsRUFBRSxNQUFNLG1CQUFtQixDQUFDO0FBQ3RFLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxxQkFBcUIsQ0FBQztBQUNuRCxPQUFPLEVBQUUsWUFBWSxFQUFFLElBQUksRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQ3JELE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSx3QkFBd0IsQ0FBQztBQUN4RCxPQUFPLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSx1QkFBdUIsQ0FBQzs7QUF3QjNELE1BQU0sT0FBTyxtQkFBbUI7O2dIQUFuQixtQkFBbUI7aUhBQW5CLG1CQUFtQixpQkFyQmYsY0FBYyxFQUFFLGlCQUFpQixhQUU5QyxJQUFJO1FBQ0osbUJBQW1CO1FBQ25CLGtCQUFrQjtRQUNsQix3QkFBd0I7UUFDeEIsbUJBQW1CO1FBQ25CLFlBQVk7UUFDWixjQUFjO1FBQ2QsWUFBWTtRQUNaLGtCQUFrQixhQUdsQixtQkFBbUI7UUFDbkIsa0JBQWtCO1FBQ2xCLHdCQUF3QjtRQUN4QixtQkFBbUI7UUFDbkIsY0FBYztRQUNkLGlCQUFpQjtpSEFHUixtQkFBbUIsWUFkNUIsWUFBWTtRQUNaLGNBQWM7UUFDZCxZQUFZO1FBQ1osa0JBQWtCOzJGQVdULG1CQUFtQjtrQkF0Qi9CLFFBQVE7bUJBQUM7b0JBQ1IsWUFBWSxFQUFFLENBQUMsY0FBYyxFQUFFLGlCQUFpQixDQUFDO29CQUNqRCxPQUFPLEVBQUU7d0JBQ1AsSUFBSTt3QkFDSixtQkFBbUI7d0JBQ25CLGtCQUFrQjt3QkFDbEIsd0JBQXdCO3dCQUN4QixtQkFBbUI7d0JBQ25CLFlBQVk7d0JBQ1osY0FBYzt3QkFDZCxZQUFZO3dCQUNaLGtCQUFrQjtxQkFDbkI7b0JBQ0QsT0FBTyxFQUFFO3dCQUNQLG1CQUFtQjt3QkFDbkIsa0JBQWtCO3dCQUNsQix3QkFBd0I7d0JBQ3hCLG1CQUFtQjt3QkFDbkIsY0FBYzt3QkFDZCxpQkFBaUI7cUJBQ2xCO2lCQUNGIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgTmdNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IEZpZWxkTGFiZWxEaXJlY3RpdmUgfSBmcm9tICcuL2ZpZWxkLWxhYmVsLmRpcmVjdGl2ZSc7XG5pbXBvcnQgeyBGaWVsZE5vdGVEaXJlY3RpdmUgfSBmcm9tICcuL2ZpZWxkLW5vdGUuZGlyZWN0aXZlJztcbmltcG9ydCB7IEZpZWxkTm90ZVN1ZmZpeERpcmVjdGl2ZSB9IGZyb20gJy4vZmllbGQtbm90ZS1zdWZmaXguZGlyZWN0aXZlJztcbmltcG9ydCB7IEZpZWxkRXJyb3JEaXJlY3RpdmUgfSBmcm9tICcuL2ZpZWxkLWVycm9yLmRpcmVjdGl2ZSc7XG5cbmltcG9ydCB7IEZpZWxkQ29tcG9uZW50LCBGaWVsZHNldENvbXBvbmVudCB9IGZyb20gJy4vZmllbGQuY29tcG9uZW50JztcbmltcG9ydCB7IFBvcnRhbE1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2Nkay9wb3J0YWwnO1xuaW1wb3J0IHsgQ29tbW9uTW9kdWxlLCBOZ0lmIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcbmltcG9ydCB7IExhYmVsQ29tcG9uZW50IH0gZnJvbSAnLi4vLi4vbGFiZWwvcHVibGljX2FwaSc7XG5pbXBvcnQgeyBTYXBwaGlyZUljb25Nb2R1bGUgfSBmcm9tICcuLi8uLi9pY29uL3B1YmxpY19hcGknO1xuXG5ATmdNb2R1bGUoe1xuICBkZWNsYXJhdGlvbnM6IFtGaWVsZENvbXBvbmVudCwgRmllbGRzZXRDb21wb25lbnRdLFxuICBpbXBvcnRzOiBbXG4gICAgTmdJZixcbiAgICBGaWVsZExhYmVsRGlyZWN0aXZlLFxuICAgIEZpZWxkTm90ZURpcmVjdGl2ZSxcbiAgICBGaWVsZE5vdGVTdWZmaXhEaXJlY3RpdmUsXG4gICAgRmllbGRFcnJvckRpcmVjdGl2ZSxcbiAgICBQb3J0YWxNb2R1bGUsXG4gICAgTGFiZWxDb21wb25lbnQsXG4gICAgQ29tbW9uTW9kdWxlLFxuICAgIFNhcHBoaXJlSWNvbk1vZHVsZSxcbiAgXSxcbiAgZXhwb3J0czogW1xuICAgIEZpZWxkTGFiZWxEaXJlY3RpdmUsXG4gICAgRmllbGROb3RlRGlyZWN0aXZlLFxuICAgIEZpZWxkTm90ZVN1ZmZpeERpcmVjdGl2ZSxcbiAgICBGaWVsZEVycm9yRGlyZWN0aXZlLFxuICAgIEZpZWxkQ29tcG9uZW50LFxuICAgIEZpZWxkc2V0Q29tcG9uZW50LFxuICBdLFxufSlcbmV4cG9ydCBjbGFzcyBTYXBwaGlyZUZpZWxkTW9kdWxlIHt9XG4iXX0=
@@ -3,7 +3,6 @@ import { coerceBooleanProperty } from '@angular/cdk/coercion';
3
3
  import { ModalService } from './modal.service';
4
4
  import { ThemeBaseDirective } from '../../theme/public_api';
5
5
  import { CdkMenuItem } from '@angular/cdk/menu';
6
- import { delay } from 'rxjs/internal/operators';
7
6
  import * as i0 from "@angular/core";
8
7
  /**
9
8
  * Makes a clickable element a trigger for a modal
@@ -33,7 +32,7 @@ export class ModalTriggerDirective {
33
32
  this.dialogRef?.close();
34
33
  }
35
34
  ngOnInit() {
36
- this.menuItem?.triggered.pipe(delay(10)).subscribe(() => {
35
+ this.menuItem?.triggered.subscribe(() => {
37
36
  this.open();
38
37
  });
39
38
  }
@@ -57,4 +56,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.0", ngImpor
57
56
  type: HostListener,
58
57
  args: ['click']
59
58
  }] } });
60
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibW9kYWwtdHJpZ2dlci5kaXJlY3RpdmUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9zcmMvbGliL21vZGFsL3NyYy9tb2RhbC10cmlnZ2VyLmRpcmVjdGl2ZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQ0wsU0FBUyxFQUNULFlBQVksRUFDWixNQUFNLEdBR1AsTUFBTSxlQUFlLENBQUM7QUFFdkIsT0FBTyxFQUFnQixxQkFBcUIsRUFBRSxNQUFNLHVCQUF1QixDQUFDO0FBQzVFLE9BQU8sRUFBZ0IsWUFBWSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDN0QsT0FBTyxFQUFFLGtCQUFrQixFQUFFLE1BQU0sd0JBQXdCLENBQUM7QUFDNUQsT0FBTyxFQUFFLFdBQVcsRUFBRSxNQUFNLG1CQUFtQixDQUFDO0FBQ2hELE9BQU8sRUFBRSxLQUFLLEVBQUUsTUFBTSx5QkFBeUIsQ0FBQzs7QUFFaEQ7O0dBRUc7QUFPSCxNQUFNLE9BQWdCLHFCQUFxQjtJQU4zQztRQU9ZLGdCQUFXLEdBQWdDLElBQUksQ0FBQztRQVNsRCxpQkFBWSxHQUFZLEtBQUssQ0FBQztRQVE5Qiw2QkFBd0IsR0FBWSxLQUFLLENBQUM7UUFFakMsYUFBUSxHQUFHLE1BQU0sQ0FBQyxXQUFXLEVBQUUsRUFBRSxRQUFRLEVBQUUsSUFBSSxFQUFFLENBQUMsQ0FBQztRQUMxRCxpQkFBWSxHQUFHLE1BQU0sQ0FBQyxZQUFZLENBQUMsQ0FBQztRQUM5QixVQUFLLEdBQUcsTUFBTSxDQUFDLGtCQUFrQixDQUFDLENBQUM7S0FtQnBEO0lBckNDLElBQUksV0FBVztRQUNiLE9BQU8sSUFBSSxDQUFDLFlBQVksQ0FBQztJQUMzQixDQUFDO0lBQ0QsSUFBSSxXQUFXLENBQUMsS0FBbUI7UUFDakMsSUFBSSxDQUFDLFlBQVksR0FBRyxxQkFBcUIsQ0FBQyxLQUFLLENBQUMsQ0FBQztJQUNuRCxDQUFDO0lBR0QsSUFBSSx1QkFBdUI7UUFDekIsT0FBTyxJQUFJLENBQUMsd0JBQXdCLENBQUM7SUFDdkMsQ0FBQztJQUNELElBQUksdUJBQXVCLENBQUMsS0FBbUI7UUFDN0MsSUFBSSxDQUFDLHdCQUF3QixHQUFHLHFCQUFxQixDQUFDLEtBQUssQ0FBQyxDQUFDO0lBQy9ELENBQUM7SUFRRCxLQUFLO1FBQ0gsSUFBSSxDQUFDLFNBQVMsRUFBRSxLQUFLLEVBQUUsQ0FBQztJQUMxQixDQUFDO0lBRUQsUUFBUTtRQUNOLElBQUksQ0FBQyxRQUFRLEVBQUUsU0FBUyxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQyxTQUFTLENBQUMsR0FBRyxFQUFFO1lBQ3RELElBQUksQ0FBQyxJQUFJLEVBQUUsQ0FBQztRQUNkLENBQUMsQ0FBQyxDQUFDO0lBQ0wsQ0FBQztJQUdELFFBQVE7UUFDTixJQUFJLENBQUMsSUFBSSxDQUFDLFFBQVEsRUFBRTtZQUNsQixJQUFJLENBQUMsSUFBSSxFQUFFLENBQUM7U0FDYjtJQUNILENBQUM7O2tIQXhDbUIscUJBQXFCO3NHQUFyQixxQkFBcUI7MkZBQXJCLHFCQUFxQjtrQkFOMUMsU0FBUzttQkFBQztvQkFDVCxJQUFJLEVBQUU7d0JBQ0osc0JBQXNCLEVBQUUsdUJBQXVCO3FCQUNoRDtvQkFDRCxVQUFVLEVBQUUsSUFBSTtpQkFDakI7OEJBcUNDLFFBQVE7c0JBRFAsWUFBWTt1QkFBQyxPQUFPIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcbiAgRGlyZWN0aXZlLFxuICBIb3N0TGlzdGVuZXIsXG4gIGluamVjdCxcbiAgT25Jbml0LFxuICBUZW1wbGF0ZVJlZixcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBEaWFsb2dSZWYgfSBmcm9tICdAYW5ndWxhci9jZGsvZGlhbG9nJztcbmltcG9ydCB7IEJvb2xlYW5JbnB1dCwgY29lcmNlQm9vbGVhblByb3BlcnR5IH0gZnJvbSAnQGFuZ3VsYXIvY2RrL2NvZXJjaW9uJztcbmltcG9ydCB7IE1vZGFsT3B0aW9ucywgTW9kYWxTZXJ2aWNlIH0gZnJvbSAnLi9tb2RhbC5zZXJ2aWNlJztcbmltcG9ydCB7IFRoZW1lQmFzZURpcmVjdGl2ZSB9IGZyb20gJy4uLy4uL3RoZW1lL3B1YmxpY19hcGknO1xuaW1wb3J0IHsgQ2RrTWVudUl0ZW0gfSBmcm9tICdAYW5ndWxhci9jZGsvbWVudSc7XG5pbXBvcnQgeyBkZWxheSB9IGZyb20gJ3J4anMvaW50ZXJuYWwvb3BlcmF0b3JzJztcblxuLyoqXG4gKiBNYWtlcyBhIGNsaWNrYWJsZSBlbGVtZW50IGEgdHJpZ2dlciBmb3IgYSBtb2RhbFxuICovXG5ARGlyZWN0aXZlKHtcbiAgaG9zdDoge1xuICAgICdbYXR0ci5hcmlhLWNvbnRyb2xzXSc6ICdkaWFsb2dSZWY/LmlkID8/IG51bGwnLFxuICB9LFxuICBzdGFuZGFsb25lOiB0cnVlLFxufSlcbmV4cG9ydCBhYnN0cmFjdCBjbGFzcyBNb2RhbFRyaWdnZXJEaXJlY3RpdmUgaW1wbGVtZW50cyBNb2RhbE9wdGlvbnMsIE9uSW5pdCB7XG4gIHByb3RlY3RlZCB0ZW1wbGF0ZVJlZjogVGVtcGxhdGVSZWY8dW5rbm93bj4gfCBudWxsID0gbnVsbDtcbiAgcHJvdGVjdGVkIGRpYWxvZ1JlZj86IERpYWxvZ1JlZjtcblxuICBnZXQgZGlzbWlzc2FibGUoKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuIHRoaXMuX2Rpc21pc3NhYmxlO1xuICB9XG4gIHNldCBkaXNtaXNzYWJsZSh2YWx1ZTogQm9vbGVhbklucHV0KSB7XG4gICAgdGhpcy5fZGlzbWlzc2FibGUgPSBjb2VyY2VCb29sZWFuUHJvcGVydHkodmFsdWUpO1xuICB9XG4gIHByaXZhdGUgX2Rpc21pc3NhYmxlOiBib29sZWFuID0gZmFsc2U7XG5cbiAgZ2V0IGtleWJvYXJkRGlzbWlzc0Rpc2FibGVkKCk6IGJvb2xlYW4ge1xuICAgIHJldHVybiB0aGlzLl9rZXlib2FyZERpc21pc3NEaXNhYmxlZDtcbiAgfVxuICBzZXQga2V5Ym9hcmREaXNtaXNzRGlzYWJsZWQodmFsdWU6IEJvb2xlYW5JbnB1dCkge1xuICAgIHRoaXMuX2tleWJvYXJkRGlzbWlzc0Rpc2FibGVkID0gY29lcmNlQm9vbGVhblByb3BlcnR5KHZhbHVlKTtcbiAgfVxuICBwcml2YXRlIF9rZXlib2FyZERpc21pc3NEaXNhYmxlZDogYm9vbGVhbiA9IGZhbHNlO1xuXG4gIHByaXZhdGUgcmVhZG9ubHkgbWVudUl0ZW0gPSBpbmplY3QoQ2RrTWVudUl0ZW0sIHsgb3B0aW9uYWw6IHRydWUgfSk7XG4gIHByb3RlY3RlZCBtb2RhbFNlcnZpY2UgPSBpbmplY3QoTW9kYWxTZXJ2aWNlKTtcbiAgcHVibGljIHJlYWRvbmx5IHRoZW1lID0gaW5qZWN0KFRoZW1lQmFzZURpcmVjdGl2ZSk7XG4gIGFic3RyYWN0IG9wZW4oKTogdm9pZDtcblxuICBjbG9zZSgpIHtcbiAgICB0aGlzLmRpYWxvZ1JlZj8uY2xvc2UoKTtcbiAgfVxuXG4gIG5nT25Jbml0KCkge1xuICAgIHRoaXMubWVudUl0ZW0/LnRyaWdnZXJlZC5waXBlKGRlbGF5KDEwKSkuc3Vic2NyaWJlKCgpID0+IHtcbiAgICAgIHRoaXMub3BlbigpO1xuICAgIH0pO1xuICB9XG5cbiAgQEhvc3RMaXN0ZW5lcignY2xpY2snKVxuICBfb25DbGljaygpIHtcbiAgICBpZiAoIXRoaXMubWVudUl0ZW0pIHtcbiAgICAgIHRoaXMub3BlbigpO1xuICAgIH1cbiAgfVxufVxuIl19
59
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibW9kYWwtdHJpZ2dlci5kaXJlY3RpdmUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9zcmMvbGliL21vZGFsL3NyYy9tb2RhbC10cmlnZ2VyLmRpcmVjdGl2ZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQ0wsU0FBUyxFQUNULFlBQVksRUFDWixNQUFNLEdBR1AsTUFBTSxlQUFlLENBQUM7QUFFdkIsT0FBTyxFQUFnQixxQkFBcUIsRUFBRSxNQUFNLHVCQUF1QixDQUFDO0FBQzVFLE9BQU8sRUFBZ0IsWUFBWSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDN0QsT0FBTyxFQUFFLGtCQUFrQixFQUFFLE1BQU0sd0JBQXdCLENBQUM7QUFDNUQsT0FBTyxFQUFFLFdBQVcsRUFBRSxNQUFNLG1CQUFtQixDQUFDOztBQUVoRDs7R0FFRztBQU9ILE1BQU0sT0FBZ0IscUJBQXFCO0lBTjNDO1FBT1ksZ0JBQVcsR0FBZ0MsSUFBSSxDQUFDO1FBU2xELGlCQUFZLEdBQVksS0FBSyxDQUFDO1FBUTlCLDZCQUF3QixHQUFZLEtBQUssQ0FBQztRQUVqQyxhQUFRLEdBQUcsTUFBTSxDQUFDLFdBQVcsRUFBRSxFQUFFLFFBQVEsRUFBRSxJQUFJLEVBQUUsQ0FBQyxDQUFDO1FBQzFELGlCQUFZLEdBQUcsTUFBTSxDQUFDLFlBQVksQ0FBQyxDQUFDO1FBQzlCLFVBQUssR0FBRyxNQUFNLENBQUMsa0JBQWtCLENBQUMsQ0FBQztLQW1CcEQ7SUFyQ0MsSUFBSSxXQUFXO1FBQ2IsT0FBTyxJQUFJLENBQUMsWUFBWSxDQUFDO0lBQzNCLENBQUM7SUFDRCxJQUFJLFdBQVcsQ0FBQyxLQUFtQjtRQUNqQyxJQUFJLENBQUMsWUFBWSxHQUFHLHFCQUFxQixDQUFDLEtBQUssQ0FBQyxDQUFDO0lBQ25ELENBQUM7SUFHRCxJQUFJLHVCQUF1QjtRQUN6QixPQUFPLElBQUksQ0FBQyx3QkFBd0IsQ0FBQztJQUN2QyxDQUFDO0lBQ0QsSUFBSSx1QkFBdUIsQ0FBQyxLQUFtQjtRQUM3QyxJQUFJLENBQUMsd0JBQXdCLEdBQUcscUJBQXFCLENBQUMsS0FBSyxDQUFDLENBQUM7SUFDL0QsQ0FBQztJQVFELEtBQUs7UUFDSCxJQUFJLENBQUMsU0FBUyxFQUFFLEtBQUssRUFBRSxDQUFDO0lBQzFCLENBQUM7SUFFRCxRQUFRO1FBQ04sSUFBSSxDQUFDLFFBQVEsRUFBRSxTQUFTLENBQUMsU0FBUyxDQUFDLEdBQUcsRUFBRTtZQUN0QyxJQUFJLENBQUMsSUFBSSxFQUFFLENBQUM7UUFDZCxDQUFDLENBQUMsQ0FBQztJQUNMLENBQUM7SUFHRCxRQUFRO1FBQ04sSUFBSSxDQUFDLElBQUksQ0FBQyxRQUFRLEVBQUU7WUFDbEIsSUFBSSxDQUFDLElBQUksRUFBRSxDQUFDO1NBQ2I7SUFDSCxDQUFDOztrSEF4Q21CLHFCQUFxQjtzR0FBckIscUJBQXFCOzJGQUFyQixxQkFBcUI7a0JBTjFDLFNBQVM7bUJBQUM7b0JBQ1QsSUFBSSxFQUFFO3dCQUNKLHNCQUFzQixFQUFFLHVCQUF1QjtxQkFDaEQ7b0JBQ0QsVUFBVSxFQUFFLElBQUk7aUJBQ2pCOzhCQXFDQyxRQUFRO3NCQURQLFlBQVk7dUJBQUMsT0FBTyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XG4gIERpcmVjdGl2ZSxcbiAgSG9zdExpc3RlbmVyLFxuICBpbmplY3QsXG4gIE9uSW5pdCxcbiAgVGVtcGxhdGVSZWYsXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgRGlhbG9nUmVmIH0gZnJvbSAnQGFuZ3VsYXIvY2RrL2RpYWxvZyc7XG5pbXBvcnQgeyBCb29sZWFuSW5wdXQsIGNvZXJjZUJvb2xlYW5Qcm9wZXJ0eSB9IGZyb20gJ0Bhbmd1bGFyL2Nkay9jb2VyY2lvbic7XG5pbXBvcnQgeyBNb2RhbE9wdGlvbnMsIE1vZGFsU2VydmljZSB9IGZyb20gJy4vbW9kYWwuc2VydmljZSc7XG5pbXBvcnQgeyBUaGVtZUJhc2VEaXJlY3RpdmUgfSBmcm9tICcuLi8uLi90aGVtZS9wdWJsaWNfYXBpJztcbmltcG9ydCB7IENka01lbnVJdGVtIH0gZnJvbSAnQGFuZ3VsYXIvY2RrL21lbnUnO1xuXG4vKipcbiAqIE1ha2VzIGEgY2xpY2thYmxlIGVsZW1lbnQgYSB0cmlnZ2VyIGZvciBhIG1vZGFsXG4gKi9cbkBEaXJlY3RpdmUoe1xuICBob3N0OiB7XG4gICAgJ1thdHRyLmFyaWEtY29udHJvbHNdJzogJ2RpYWxvZ1JlZj8uaWQgPz8gbnVsbCcsXG4gIH0sXG4gIHN0YW5kYWxvbmU6IHRydWUsXG59KVxuZXhwb3J0IGFic3RyYWN0IGNsYXNzIE1vZGFsVHJpZ2dlckRpcmVjdGl2ZSBpbXBsZW1lbnRzIE1vZGFsT3B0aW9ucywgT25Jbml0IHtcbiAgcHJvdGVjdGVkIHRlbXBsYXRlUmVmOiBUZW1wbGF0ZVJlZjx1bmtub3duPiB8IG51bGwgPSBudWxsO1xuICBwcm90ZWN0ZWQgZGlhbG9nUmVmPzogRGlhbG9nUmVmO1xuXG4gIGdldCBkaXNtaXNzYWJsZSgpOiBib29sZWFuIHtcbiAgICByZXR1cm4gdGhpcy5fZGlzbWlzc2FibGU7XG4gIH1cbiAgc2V0IGRpc21pc3NhYmxlKHZhbHVlOiBCb29sZWFuSW5wdXQpIHtcbiAgICB0aGlzLl9kaXNtaXNzYWJsZSA9IGNvZXJjZUJvb2xlYW5Qcm9wZXJ0eSh2YWx1ZSk7XG4gIH1cbiAgcHJpdmF0ZSBfZGlzbWlzc2FibGU6IGJvb2xlYW4gPSBmYWxzZTtcblxuICBnZXQga2V5Ym9hcmREaXNtaXNzRGlzYWJsZWQoKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuIHRoaXMuX2tleWJvYXJkRGlzbWlzc0Rpc2FibGVkO1xuICB9XG4gIHNldCBrZXlib2FyZERpc21pc3NEaXNhYmxlZCh2YWx1ZTogQm9vbGVhbklucHV0KSB7XG4gICAgdGhpcy5fa2V5Ym9hcmREaXNtaXNzRGlzYWJsZWQgPSBjb2VyY2VCb29sZWFuUHJvcGVydHkodmFsdWUpO1xuICB9XG4gIHByaXZhdGUgX2tleWJvYXJkRGlzbWlzc0Rpc2FibGVkOiBib29sZWFuID0gZmFsc2U7XG5cbiAgcHJpdmF0ZSByZWFkb25seSBtZW51SXRlbSA9IGluamVjdChDZGtNZW51SXRlbSwgeyBvcHRpb25hbDogdHJ1ZSB9KTtcbiAgcHJvdGVjdGVkIG1vZGFsU2VydmljZSA9IGluamVjdChNb2RhbFNlcnZpY2UpO1xuICBwdWJsaWMgcmVhZG9ubHkgdGhlbWUgPSBpbmplY3QoVGhlbWVCYXNlRGlyZWN0aXZlKTtcbiAgYWJzdHJhY3Qgb3BlbigpOiB2b2lkO1xuXG4gIGNsb3NlKCkge1xuICAgIHRoaXMuZGlhbG9nUmVmPy5jbG9zZSgpO1xuICB9XG5cbiAgbmdPbkluaXQoKSB7XG4gICAgdGhpcy5tZW51SXRlbT8udHJpZ2dlcmVkLnN1YnNjcmliZSgoKSA9PiB7XG4gICAgICB0aGlzLm9wZW4oKTtcbiAgICB9KTtcbiAgfVxuXG4gIEBIb3N0TGlzdGVuZXIoJ2NsaWNrJylcbiAgX29uQ2xpY2soKSB7XG4gICAgaWYgKCF0aGlzLm1lbnVJdGVtKSB7XG4gICAgICB0aGlzLm9wZW4oKTtcbiAgICB9XG4gIH1cbn1cbiJdfQ==