@danske/sapphire-angular 3.8.2 → 3.9.3
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/esm2020/lib/avatar/src/avatar.component.mjs +2 -2
- package/esm2020/lib/badge/src/badge.component.mjs +2 -2
- package/esm2020/lib/button/src/button.component.mjs +9 -6
- package/esm2020/lib/button/src/icon-button.component.mjs +9 -6
- package/esm2020/lib/button/src/toggle-button.component.mjs +9 -6
- package/esm2020/lib/field/public_api.mjs +2 -1
- package/esm2020/lib/field/src/field-error.directive.mjs +1 -1
- package/esm2020/lib/field/src/field.component.mjs +83 -20
- package/esm2020/lib/field/src/field.module.mjs +7 -5
- package/esm2020/lib/list/src/list.component.mjs +2 -2
- package/esm2020/lib/listbox/src/listbox.component.mjs +2 -2
- package/esm2020/lib/menu/src/menu.component.mjs +2 -2
- package/esm2020/lib/modal/src/dialog/confirmation-dialog.component.mjs +3 -3
- package/esm2020/lib/modal/src/dialog/danger-dialog.component.mjs +3 -3
- package/esm2020/lib/modal/src/layout/modal-layout.component.mjs +2 -2
- package/esm2020/lib/modal/src/modal-trigger.directive.mjs +2 -3
- package/esm2020/lib/modal/src/panel/panel.component.mjs +2 -2
- package/esm2020/lib/radio/src/segmented/segmented-radio-group.component.mjs +2 -2
- package/esm2020/lib/radio/src/shared/radio-base.mjs +12 -8
- package/esm2020/lib/radio/src/shared/radio-group-base.mjs +7 -3
- package/esm2020/lib/segmented-tabs/src/segmented-tab.component.mjs +2 -2
- package/esm2020/lib/segmented-tabs/src/segmented-tabs.component.mjs +2 -2
- package/esm2020/lib/select/src/select/select.component.mjs +3 -3
- package/esm2020/lib/switch/src/switch.component.mjs +2 -2
- package/esm2020/lib/table/src/table.component.mjs +2 -2
- package/esm2020/lib/theme/src/themes.mjs +4 -4
- package/esm2020/lib/tooltip/src/truncated-with-tooltip.directive.mjs +6 -3
- package/fesm2015/danske-sapphire-angular.mjs +199 -107
- package/fesm2015/danske-sapphire-angular.mjs.map +1 -1
- package/fesm2020/danske-sapphire-angular.mjs +189 -107
- package/fesm2020/danske-sapphire-angular.mjs.map +1 -1
- package/lib/field/public_api.d.ts +1 -0
- package/lib/field/src/field-error.directive.d.ts +9 -1
- package/lib/field/src/field.component.d.ts +10 -2
- package/lib/field/src/field.module.d.ts +1 -1
- package/package.json +3 -3
|
@@ -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, forwardRef, Inject, 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 {
|
|
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";
|
|
@@ -28,11 +28,21 @@ class FieldIconSizeProvider {
|
|
|
28
28
|
return this.field.size === 'lg' ? 'md' : 'sm';
|
|
29
29
|
}
|
|
30
30
|
}
|
|
31
|
-
FieldIconSizeProvider.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.0", ngImport: i0, type: FieldIconSizeProvider, deps: [{ token: FieldComponent }], target: i0.ɵɵFactoryTarget.Injectable });
|
|
31
|
+
FieldIconSizeProvider.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.0", ngImport: i0, type: FieldIconSizeProvider, deps: [{ token: forwardRef(() => FieldComponent) }], target: i0.ɵɵFactoryTarget.Injectable });
|
|
32
32
|
FieldIconSizeProvider.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "15.2.0", ngImport: i0, type: FieldIconSizeProvider });
|
|
33
33
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.0", ngImport: i0, type: FieldIconSizeProvider, decorators: [{
|
|
34
34
|
type: Injectable
|
|
35
|
-
}], ctorParameters: function () { return [{ type: FieldComponent
|
|
35
|
+
}], ctorParameters: function () { return [{ type: FieldComponent, decorators: [{
|
|
36
|
+
type: Inject,
|
|
37
|
+
args: [forwardRef(() => FieldComponent)]
|
|
38
|
+
}] }]; } });
|
|
39
|
+
const fieldHostBinding = {
|
|
40
|
+
class: 'sapphire-field',
|
|
41
|
+
'[class.sapphire-field--label-placement-side]': 'labelPlacement === "side"',
|
|
42
|
+
'[class.sapphire-field--no-width]': 'noDefaultWidth || !controlHasDefaultWidth()',
|
|
43
|
+
'[class.sapphire-field--label-alignment-top]': 'labelPlacement === "side" && hasRadioGroupChild()',
|
|
44
|
+
'[class.sapphire-field--md]': 'size === "md"',
|
|
45
|
+
};
|
|
36
46
|
/**
|
|
37
47
|
* A field is a common container for labelable controls such as select, radio group, text field,
|
|
38
48
|
* etc.
|
|
@@ -56,8 +66,9 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.0", ngImpor
|
|
|
56
66
|
* is determined based on the presence of @angular/form's {@link RequiredValidator}.
|
|
57
67
|
*/
|
|
58
68
|
export class FieldComponent {
|
|
59
|
-
constructor(changeDetectorRef, iconRegistry) {
|
|
69
|
+
constructor(changeDetectorRef, iconRegistry, fieldset) {
|
|
60
70
|
this.changeDetectorRef = changeDetectorRef;
|
|
71
|
+
this.fieldset = fieldset;
|
|
61
72
|
/**
|
|
62
73
|
* Label placement with respect to the form control.
|
|
63
74
|
* @default "above"
|
|
@@ -111,10 +122,36 @@ export class FieldComponent {
|
|
|
111
122
|
}
|
|
112
123
|
/**
|
|
113
124
|
* Whether the field contains an error message (sp-field-error).
|
|
125
|
+
* Also checks if a parent fieldset has an error.
|
|
114
126
|
*/
|
|
115
127
|
hasError(targetField) {
|
|
116
|
-
|
|
117
|
-
|
|
128
|
+
// Check if this field has its own error
|
|
129
|
+
if (this._hasOwnError(targetField)) {
|
|
130
|
+
return true;
|
|
131
|
+
}
|
|
132
|
+
// Check if parent fieldset has an error targetting this field
|
|
133
|
+
if (this.fieldset) {
|
|
134
|
+
return this.fieldset.hasError(targetField);
|
|
135
|
+
}
|
|
136
|
+
return false;
|
|
137
|
+
}
|
|
138
|
+
_hasOwnError(targetField) {
|
|
139
|
+
if (!this.error) {
|
|
140
|
+
return false;
|
|
141
|
+
}
|
|
142
|
+
const { target } = this.error;
|
|
143
|
+
// If no target is specified, error applies to all controls
|
|
144
|
+
if (!target) {
|
|
145
|
+
return true;
|
|
146
|
+
}
|
|
147
|
+
// If the target is a FieldControl, check if it matches
|
|
148
|
+
if (this._isFieldControl(target)) {
|
|
149
|
+
return target === targetField;
|
|
150
|
+
}
|
|
151
|
+
return false;
|
|
152
|
+
}
|
|
153
|
+
_isFieldControl(target) {
|
|
154
|
+
return (typeof target === 'object' && target !== null && 'isDisabled' in target);
|
|
118
155
|
}
|
|
119
156
|
/**
|
|
120
157
|
* If there are multiple controls, the field is only disabled when all of them are disabled
|
|
@@ -169,13 +206,13 @@ export class FieldComponent {
|
|
|
169
206
|
this.changed = true;
|
|
170
207
|
}
|
|
171
208
|
}
|
|
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 });
|
|
209
|
+
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
210
|
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
211
|
{
|
|
175
212
|
provide: ICON_SIZE_PROVIDER,
|
|
176
213
|
useClass: FieldIconSizeProvider,
|
|
177
214
|
},
|
|
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"] }] });
|
|
215
|
+
], 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
216
|
__decorate([
|
|
180
217
|
CoerceBoolean
|
|
181
218
|
], FieldComponent.prototype, "necessityIndicator", void 0);
|
|
@@ -187,19 +224,17 @@ __decorate([
|
|
|
187
224
|
], FieldComponent.prototype, "allowNoteAndError", void 0);
|
|
188
225
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.0", ngImport: i0, type: FieldComponent, decorators: [{
|
|
189
226
|
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: [
|
|
227
|
+
args: [{ selector: 'sp-field', host: fieldHostBinding, hostDirectives: [UseComponentStylesOnHost], providers: [
|
|
197
228
|
{
|
|
198
229
|
provide: ICON_SIZE_PROVIDER,
|
|
199
230
|
useClass: FieldIconSizeProvider,
|
|
200
231
|
},
|
|
201
232
|
], 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 }
|
|
233
|
+
}], ctorParameters: function () { return [{ type: i0.ChangeDetectorRef }, { type: i1.IconRegistry }, { type: FieldsetComponent, decorators: [{
|
|
234
|
+
type: Optional
|
|
235
|
+
}, {
|
|
236
|
+
type: SkipSelf
|
|
237
|
+
}] }]; }, propDecorators: { necessityIndicator: [{
|
|
203
238
|
type: Input
|
|
204
239
|
}], labelPlacement: [{
|
|
205
240
|
type: Input
|
|
@@ -220,10 +255,10 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.0", ngImpor
|
|
|
220
255
|
args: [LabelComponent]
|
|
221
256
|
}], _fieldLabel: [{
|
|
222
257
|
type: ContentChild,
|
|
223
|
-
args: [FieldLabelDirective]
|
|
258
|
+
args: [FieldLabelDirective, { descendants: false }]
|
|
224
259
|
}], controls: [{
|
|
225
260
|
type: ContentChildren,
|
|
226
|
-
args: [FieldControl]
|
|
261
|
+
args: [FieldControl, { descendants: true }]
|
|
227
262
|
}], radioGroup: [{
|
|
228
263
|
type: ContentChild,
|
|
229
264
|
args: [RadioGroupComponent]
|
|
@@ -237,4 +272,32 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.0", ngImpor
|
|
|
237
272
|
type: ViewChildren,
|
|
238
273
|
args: [CdkPortalOutlet]
|
|
239
274
|
}] } });
|
|
240
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmllbGQuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vc3JjL2xpYi9maWVsZC9zcmMvZmllbGQuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vc3JjL2xpYi9maWVsZC9zcmMvZmllbGQuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IjtBQUFBLE9BQU8sRUFJTCxTQUFTLEVBQ1QsWUFBWSxFQUNaLGVBQWUsRUFDZixVQUFVLEVBQ1YsS0FBSyxFQUNMLFNBQVMsRUFFVCxTQUFTLEVBQ1QsWUFBWSxHQUNiLE1BQU0sZUFBZSxDQUFDO0FBQ3ZCLE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxNQUFNLHdCQUF3QixDQUFDO0FBQzVELE9BQU8sRUFBRSxtQkFBbUIsRUFBRSxNQUFNLHlCQUF5QixDQUFDO0FBQzlELE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSxpQ0FBaUMsQ0FBQztBQUNqRSxPQUFPLEVBQWdCLHFCQUFxQixFQUFFLE1BQU0sdUJBQXVCLENBQUM7QUFDNUUsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLHVDQUF1QyxDQUFDO0FBQ3RFLE9BQU8sRUFBRSxTQUFTLEVBQUUsaUJBQWlCLEVBQUUsVUFBVSxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFDMUUsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQy9DLE9BQU8sRUFBRSxtQkFBbUIsRUFBRSxNQUFNLHlCQUF5QixDQUFDO0FBQzlELE9BQU8sRUFBRSxlQUFlLEVBQWEsTUFBTSxxQkFBcUIsQ0FBQztBQUNqRSxPQUFPLEVBQUUsd0JBQXdCLEVBQUUsTUFBTSwwQ0FBMEMsQ0FBQztBQUNwRixPQUFPLEVBQ0wsa0JBQWtCLEdBRW5CLE1BQU0sbUNBQW1DLENBQUM7QUFDM0MsT0FBTyxFQUFFLG1CQUFtQixFQUFFLE1BQU0sdUNBQXVDLENBQUM7QUFFNUUsT0FBTyxFQUNMLFdBQVcsRUFDWCxTQUFTLEVBQ1Qsb0JBQW9CLEdBQ3JCLE1BQU0sMkJBQTJCLENBQUM7Ozs7Ozs7O0FBRW5DLE1BQ00scUJBQXFCO0lBQ3pCLFlBQW9CLEtBQXFCO1FBQXJCLFVBQUssR0FBTCxLQUFLLENBQWdCO0lBQUcsQ0FBQztJQUU3QyxJQUFJLElBQUk7UUFDTixPQUFPLElBQUksQ0FBQyxLQUFLLENBQUMsSUFBSSxLQUFLLElBQUksQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUM7SUFDaEQsQ0FBQzs7a0hBTEcscUJBQXFCO3NIQUFyQixxQkFBcUI7MkZBQXJCLHFCQUFxQjtrQkFEMUIsVUFBVTs7QUFTWDs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0dBcUJHO0FBdUJILE1BQU0sT0FBTyxjQUFjO0lBOEV6QixZQUNVLGlCQUFvQyxFQUM1QyxZQUEwQjtRQURsQixzQkFBaUIsR0FBakIsaUJBQWlCLENBQW1CO1FBckU5Qzs7O1dBR0c7UUFFSCxtQkFBYyxHQUFzQixPQUFPLENBQUM7UUFpQjVDOztXQUVHO1FBRUgsU0FBSSxHQUFpQixJQUFJLENBQUM7UUErQmxCLHVCQUFrQixHQUFzQyxJQUFJLENBQUM7UUFFckU7Ozs7V0FJRztRQUNILHNCQUFpQixHQUFrQyxJQUFJLENBQUM7UUFFaEQsWUFBTyxHQUFZLEtBQUssQ0FBQztRQU0vQixZQUFZLENBQUMsWUFBWSxDQUFDLG9CQUFvQixDQUFDLENBQUM7UUFDaEQsWUFBWSxDQUFDLFlBQVksQ0FBQyxXQUFXLENBQUMsQ0FBQztRQUN2QyxZQUFZLENBQUMsWUFBWSxDQUFDLFNBQVMsQ0FBQyxDQUFDO0lBQ3ZDLENBQUM7SUFFRCxrQkFBa0I7UUFDaEIsSUFBSSxDQUFDLElBQUksQ0FBQyxRQUFRLElBQUksU0FBUyxFQUFFLEVBQUU7WUFDakMsTUFBTSxJQUFJLEtBQUssQ0FDYixzR0FBc0csQ0FDdkcsQ0FBQztTQUNIO0lBQ0gsQ0FBQztJQUVELGVBQWU7UUFDYixJQUFJLENBQUMsa0JBQW1CLENBQUMsT0FBTyxDQUFDLFNBQVMsQ0FBQyxHQUFHLEVBQUU7WUFDOUMsSUFBSSxJQUFJLENBQUMsaUJBQWlCLEVBQUUsVUFBVSxLQUFLLEtBQUssRUFBRTtnQkFDaEQsb0ZBQW9GO2dCQUNwRiw0RkFBNEY7Z0JBQzVGLDBEQUEwRDtnQkFDMUQsSUFBSSxDQUFDLGtCQUFrQixFQUFFLEtBQUssRUFBRSxNQUFNLEVBQUUsQ0FBQztnQkFDekMsSUFBSSxDQUFDLGtCQUFrQixFQUFFLEtBQUssRUFBRSxNQUFNLENBQUMsSUFBSSxDQUFDLGlCQUFpQixDQUFDLENBQUM7YUFDaEU7UUFDSCxDQUFDLENBQUMsQ0FBQztJQUNMLENBQUM7SUFFRCxrQkFBa0I7UUFDaEI7Ozs7Ozs7V0FPRztRQUNILElBQUksSUFBSSxDQUFDLE9BQU8sRUFBRTtZQUNoQixJQUFJLENBQUMsaUJBQWlCLENBQUMsYUFBYSxFQUFFLENBQUM7WUFDdkMsSUFBSSxDQUFDLE9BQU8sR0FBRyxLQUFLLENBQUM7U0FDdEI7SUFDSCxDQUFDO0lBRUQ7O09BRUc7SUFDSCxRQUFRLENBQUMsV0FBMEI7UUFDakMsT0FBTyxDQUNMLElBQUksQ0FBQyxLQUFLLEtBQUssU0FBUztZQUN4QixDQUFDLENBQUMsV0FBVyxJQUFJLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxNQUFNLElBQUksSUFBSSxDQUFDLEtBQUssQ0FBQyxNQUFNLEtBQUssV0FBVyxDQUFDLENBQzFFLENBQUM7SUFDSixDQUFDO0lBRUQ7O09BRUc7SUFDSCxVQUFVO1FBQ1IsSUFBSSxDQUFDLElBQUksQ0FBQyxRQUFRLElBQUksSUFBSSxDQUFDLFFBQVEsQ0FBQyxNQUFNLEtBQUssQ0FBQyxFQUFFO1lBQ2hELE9BQU8sS0FBSyxDQUFDO1NBQ2Q7UUFFRCxPQUFPLElBQUksQ0FBQyxRQUFRLEVBQUUsT0FBTyxFQUFFLENBQUMsS0FBSyxDQUFDLENBQUMsT0FBTyxFQUFFLEVBQUUsQ0FBQyxPQUFPLENBQUMsVUFBVSxFQUFFLENBQUMsQ0FBQztJQUMzRSxDQUFDO0lBRUQ7O09BRUc7SUFDSCxzQkFBc0I7UUFDcEIsSUFBSSxDQUFDLElBQUksQ0FBQyxRQUFRLElBQUksSUFBSSxDQUFDLFFBQVEsQ0FBQyxNQUFNLEtBQUssQ0FBQyxFQUFFO1lBQ2hELE9BQU8sS0FBSyxDQUFDO1NBQ2Q7UUFFRCxPQUFPLElBQUksQ0FBQyxRQUFRLEVBQUUsT0FBTyxFQUFFLENBQUMsSUFBSSxDQUFDLENBQUMsT0FBTyxFQUFFLEVBQUUsQ0FBQyxPQUFPLENBQUMsZUFBZSxDQUFDLENBQUM7SUFDN0UsQ0FBQztJQUVEOztPQUVHO0lBQ0gsSUFBSSxPQUFPO1FBQ1QsT0FBTyxJQUFJLENBQUMsUUFBUSxFQUFFLE1BQU0sS0FBSyxDQUFDLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxRQUFRLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQyxTQUFTLENBQUM7SUFDdkUsQ0FBQztJQUVELElBQUksT0FBTztRQUNULE9BQU8sSUFBSSxDQUFDLFFBQVEsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxNQUFNLEdBQUcsQ0FBQyxDQUFDLENBQUMsQ0FBQyxLQUFLLENBQUM7SUFDMUQsQ0FBQztJQUVEOztPQUVHO0lBQ0gsa0JBQWtCO1FBQ2hCLE9BQU8sSUFBSSxDQUFDLFVBQVUsSUFBSSxTQUFTLENBQUM7SUFDdEMsQ0FBQztJQUVELElBQUksdUJBQXVCO1FBQ3pCLElBQUksSUFBSSxDQUFDLGtCQUFrQixFQUFFO1lBQzNCLE9BQU8scUJBQXFCLENBQUMsSUFBSSxDQUFDLGlCQUFpQixFQUFFLFFBQVEsQ0FBQztnQkFDNUQsSUFBSSxDQUFDLFNBQVMsRUFBRSxPQUFPLEVBQUUsWUFBWSxDQUFDLFVBQVUsQ0FBQyxRQUFRLENBQUM7Z0JBQzFELENBQUMsQ0FBQyxVQUFVO2dCQUNaLENBQUMsQ0FBQyxVQUFVLENBQUM7U0FDaEI7UUFDRCxPQUFPLFNBQVMsQ0FBQztJQUNuQixDQUFDO0lBRUQsZ0JBQWdCLENBQUMsTUFBcUM7UUFDcEQsSUFBSSxJQUFJLENBQUMsaUJBQWlCLEVBQUUsVUFBVSxFQUFFO1lBQ3RDLElBQUksQ0FBQyxpQkFBaUIsQ0FBQyxNQUFNLEVBQUUsQ0FBQztZQUNoQyxpRkFBaUY7WUFDakYsc0RBQXNEO1lBQ3RELElBQUksQ0FBQyxpQkFBaUIsQ0FBQyxPQUFPLENBQUMsTUFBTSxFQUFFLENBQUM7U0FDekM7UUFDRCxJQUFJLENBQUMsaUJBQWlCLEdBQUcsTUFBTSxDQUFDO1FBQ2hDLElBQUksQ0FBQyxPQUFPLEdBQUcsSUFBSSxDQUFDO0lBQ3RCLENBQUM7OzJHQS9MVSxjQUFjOytGQUFkLGNBQWMsZ2tCQVJkO1FBQ1Q7WUFDRSxPQUFPLEVBQUUsa0JBQWtCO1lBQzNCLFFBQVEsRUFBRSxxQkFBcUI7U0FDaEM7S0FDRiw0REF5Q2Esa0JBQWtCLHdFQUdsQixtQkFBbUIsOEVBTW5CLG1CQUFtQiw2RUFVbkIsbUJBQW1CLDRFQUduQixTQUFTLG9GQUdULGlCQUFpQiw4REFUZCxZQUFZLG9FQVZsQixjQUFjLHdFQXNCWCxlQUFlLDhHQzNKL0IsMmlFQWdFQTtBRGlDRTtJQURDLGFBQWE7MERBQ29CO0FBY2xDO0lBREMsYUFBYTtzREFDZ0I7QUFROUI7SUFEQyxhQUFhO3lEQUNtQjsyRkE5QnRCLGNBQWM7a0JBdEIxQixTQUFTOytCQUNFLFVBQVUsUUFHZDt3QkFDSixLQUFLLEVBQUUsZ0JBQWdCO3dCQUN2Qiw4Q0FBOEMsRUFBRSwyQkFBMkI7d0JBQzNFLGtDQUFrQyxFQUNoQyw2Q0FBNkM7d0JBQy9DLDZDQUE2QyxFQUMzQyxtREFBbUQ7d0JBQ3JELDRCQUE0QixFQUFFLGVBQWU7cUJBQzlDLGtCQUNlLENBQUMsd0JBQXdCLENBQUMsYUFDL0I7d0JBQ1Q7NEJBQ0UsT0FBTyxFQUFFLGtCQUFrQjs0QkFDM0IsUUFBUSxFQUFFLHFCQUFxQjt5QkFDaEM7cUJBQ0YsY0FDVyxLQUFLO21JQVVqQixrQkFBa0I7c0JBRmpCLEtBQUs7Z0JBU04sY0FBYztzQkFEYixLQUFLO2dCQVFOLGNBQWM7c0JBRmIsS0FBSztnQkFVTixpQkFBaUI7c0JBRmhCLEtBQUs7Z0JBUU4sSUFBSTtzQkFESCxLQUFLO2dCQUlOLElBQUk7c0JBREgsWUFBWTt1QkFBQyxrQkFBa0I7Z0JBSWhDLEtBQUs7c0JBREosWUFBWTt1QkFBQyxtQkFBbUI7Z0JBSWpDLEtBQUs7c0JBREosU0FBUzt1QkFBQyxjQUFjO2dCQUl6QixXQUFXO3NCQURWLFlBQVk7dUJBQUMsbUJBQW1CO2dCQVFqQyxRQUFRO3NCQURQLGVBQWU7dUJBQUMsWUFBWTtnQkFJN0IsVUFBVTtzQkFEVCxZQUFZO3VCQUFDLG1CQUFtQjtnQkFJekIsU0FBUztzQkFEaEIsWUFBWTt1QkFBQyxTQUFTLEVBQUUsRUFBRSxXQUFXLEVBQUUsSUFBSSxFQUFFO2dCQUl0QyxpQkFBaUI7c0JBRHhCLFlBQVk7dUJBQUMsaUJBQWlCLEVBQUUsRUFBRSxXQUFXLEVBQUUsSUFBSSxFQUFFO2dCQUk5QyxrQkFBa0I7c0JBRHpCLFlBQVk7dUJBQUMsZUFBZSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XG4gIEFmdGVyQ29udGVudEluaXQsXG4gIEFmdGVyVmlld0NoZWNrZWQsXG4gIENoYW5nZURldGVjdG9yUmVmLFxuICBDb21wb25lbnQsXG4gIENvbnRlbnRDaGlsZCxcbiAgQ29udGVudENoaWxkcmVuLFxuICBJbmplY3RhYmxlLFxuICBJbnB1dCxcbiAgaXNEZXZNb2RlLFxuICBRdWVyeUxpc3QsXG4gIFZpZXdDaGlsZCxcbiAgVmlld0NoaWxkcmVuLFxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IEZpZWxkTm90ZURpcmVjdGl2ZSB9IGZyb20gJy4vZmllbGQtbm90ZS5kaXJlY3RpdmUnO1xuaW1wb3J0IHsgRmllbGRFcnJvckRpcmVjdGl2ZSB9IGZyb20gJy4vZmllbGQtZXJyb3IuZGlyZWN0aXZlJztcbmltcG9ydCB7IExhYmVsQ29tcG9uZW50IH0gZnJvbSAnLi4vLi4vbGFiZWwvc3JjL2xhYmVsLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBCb29sZWFuSW5wdXQsIGNvZXJjZUJvb2xlYW5Qcm9wZXJ0eSB9IGZyb20gJ0Bhbmd1bGFyL2Nkay9jb2VyY2lvbic7XG5pbXBvcnQgeyBDb2VyY2VCb29sZWFuIH0gZnJvbSAnLi4vLi4vY29tbW9uL2NvZXJjZS1ib29sZWFuLmRlY29yYXRvcic7XG5pbXBvcnQgeyBOZ0NvbnRyb2wsIFJlcXVpcmVkVmFsaWRhdG9yLCBWYWxpZGF0b3JzIH0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xuaW1wb3J0IHsgRmllbGRDb250cm9sIH0gZnJvbSAnLi9maWVsZC1jb250cm9sJztcbmltcG9ydCB7IEZpZWxkTGFiZWxEaXJlY3RpdmUgfSBmcm9tICcuL2ZpZWxkLWxhYmVsLmRpcmVjdGl2ZSc7XG5pbXBvcnQgeyBDZGtQb3J0YWxPdXRsZXQsIERvbVBvcnRhbCB9IGZyb20gJ0Bhbmd1bGFyL2Nkay9wb3J0YWwnO1xuaW1wb3J0IHsgVXNlQ29tcG9uZW50U3R5bGVzT25Ib3N0IH0gZnJvbSAnLi4vLi4vY29tbW9uL3NhcHBoaXJlLXZpZXctZW5jYXBzdWxhdGlvbic7XG5pbXBvcnQge1xuICBJQ09OX1NJWkVfUFJPVklERVIsXG4gIEljb25TaXplUHJvdmlkZXIsXG59IGZyb20gJy4uLy4uL2ljb24vc3JjL2ljb24tc2l6ZS1wcm92aWRlcic7XG5pbXBvcnQgeyBSYWRpb0dyb3VwQ29tcG9uZW50IH0gZnJvbSAnLi4vLi4vcmFkaW8vc3JjL3JhZGlvLWdyb3VwLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBJY29uUmVnaXN0cnkgfSBmcm9tICcuLi8uLi9pY29uL3B1YmxpY19hcGknO1xuaW1wb3J0IHtcbiAgaWNvbldhcm5pbmcsXG4gIGljb25FcnJvcixcbiAgaWNvbkNoZWNrbWFya091dGxpbmUsXG59IGZyb20gJ0BkYW5za2Uvc2FwcGhpcmUtaWNvbnMvanMnO1xuXG5ASW5qZWN0YWJsZSgpXG5jbGFzcyBGaWVsZEljb25TaXplUHJvdmlkZXIge1xuICBjb25zdHJ1Y3Rvcihwcml2YXRlIGZpZWxkOiBGaWVsZENvbXBvbmVudCkge31cblxuICBnZXQgc2l6ZSgpIHtcbiAgICByZXR1cm4gdGhpcy5maWVsZC5zaXplID09PSAnbGcnID8gJ21kJyA6ICdzbSc7XG4gIH1cbn1cblxuLyoqXG4gKiBBIGZpZWxkIGlzIGEgY29tbW9uIGNvbnRhaW5lciBmb3IgbGFiZWxhYmxlIGNvbnRyb2xzIHN1Y2ggYXMgc2VsZWN0LCByYWRpbyBncm91cCwgdGV4dCBmaWVsZCxcbiAqIGV0Yy5cbiAqIEluIGFkZGl0aW9uIHRvIHRoZSBmaWVsZCBjb250cm9sIChzcC1zZWxlY3QsIHNwLXJhZGlvLWdyb3VwLCBzcC10ZXh0LWZpZWxkKSwgdGhlIGZvbGxvd2luZ1xuICogY29tcG9uZW50cyBjYW4gYmUgdXNlZCBpbnNpZGUgYSBmaWVsZDpcbiAqIC0gc3AtZmllbGQtbGFiZWw6IGlzIHVzZWQgdG8gcHJvdmlkZSB0aGUgbGFiZWwgdGV4dCBmb3IgdGhlIGZpZWxkLlxuICogLSBzcC1oZWxwLWJ1dHRvbjogaXMgcGxhY2VkIGluIHRoZSBsYWJlbCBhcmVhLCBuZXh0IHRvIHRoZSBsYWJlbCB0ZXh0XG4gKiAtIHNwLWZpZWxkLWVycm9yOiBpcyB1c2VkIHRvIHByb3ZpZGUgYW4gZXJyb3IgbWVzc2FnZSwgd2hpY2ggaXMgcGxhY2VkIGJlbG93IHRoZSBmaWVsZCdzXG4gKiBjb250cm9sLlxuICogLSBzcC1maWVsZC1ub3RlOiBpcyB1c2VkIHRvIHByb3ZpZGUgYSBub3RlLCB3aGljaCBpcyBwbGFjZWQgYmVsb3cgdGhlIGZpZWxkJ3MgY29udHJvbC4gT25seVxuICogc2hvd25cbiAqICAgd2hlbiB0aGVyZSBpcyBubyBlcnJvclxuICogLSBzcC1maWVsZC1ub3RlLXN1ZmZpeDogaXMgdXNlZCB0byBwcm92aWRlIGEgc3VmZml4LCB3aGljaCBpcyBwbGFjZWQgb24gdGhlIHJpZ2h0IHNpZGUgb2YgdGhlXG4gKiBub3RlIGFyZWEuXG4gKlxuICogQWRkaXRpb25hbGx5LCBmaWVsZCBzdXBwb3J0czpcbiAqIC0gTGFiZWwgcGxhY2VtZW50IGVpdGhlciBhYm92ZSAoZGVmYXVsdCkgb3Igb24gdGhlIHNpZGUgb2YgdGhlIGNvbnRyb2wuXG4gKiAtIEFzc29jaWF0aW5nIGxhYmVsIHdpdGggdGhlIGNvbnRyb2wsIHNvIHRoYXQgY2xpY2tpbmcgdGhlIGxhYmVsIGZvY3VzZXMgdGhlIGNvbnRyb2wsIHNob3dpbmdcbiAqICAgZm9jdXMgcmluZy5cbiAqIC0gT3B0aW9uYWxseSBzaG93aW5nIG5lY2Vzc2l0eSBpbmRpY2F0b3IgaW4gdGhlIGxhYmVsLiBGaWVsZHMgbmVjZXNzaXR5IChyZXF1aXJlZCBvciBvcHRpb25hbClcbiAqICAgaXMgZGV0ZXJtaW5lZCBiYXNlZCBvbiB0aGUgcHJlc2VuY2Ugb2YgQGFuZ3VsYXIvZm9ybSdzIHtAbGluayBSZXF1aXJlZFZhbGlkYXRvcn0uXG4gKi9cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ3NwLWZpZWxkJyxcbiAgdGVtcGxhdGVVcmw6ICcuL2ZpZWxkLmNvbXBvbmVudC5odG1sJyxcbiAgc3R5bGVVcmxzOiBbJy4vZmllbGQuY29tcG9uZW50LnNjc3MnXSxcbiAgaG9zdDoge1xuICAgIGNsYXNzOiAnc2FwcGhpcmUtZmllbGQnLFxuICAgICdbY2xhc3Muc2FwcGhpcmUtZmllbGQtLWxhYmVsLXBsYWNlbWVudC1zaWRlXSc6ICdsYWJlbFBsYWNlbWVudCA9PT0gXCJzaWRlXCInLFxuICAgICdbY2xhc3Muc2FwcGhpcmUtZmllbGQtLW5vLXdpZHRoXSc6XG4gICAgICAnbm9EZWZhdWx0V2lkdGggfHwgIWNvbnRyb2xIYXNEZWZhdWx0V2lkdGgoKScsXG4gICAgJ1tjbGFzcy5zYXBwaGlyZS1maWVsZC0tbGFiZWwtYWxpZ25tZW50LXRvcF0nOlxuICAgICAgJ2xhYmVsUGxhY2VtZW50ID09PSBcInNpZGVcIiAmJiBoYXNSYWRpb0dyb3VwQ2hpbGQoKScsXG4gICAgJ1tjbGFzcy5zYXBwaGlyZS1maWVsZC0tbWRdJzogJ3NpemUgPT09IFwibWRcIicsXG4gIH0sXG4gIGhvc3REaXJlY3RpdmVzOiBbVXNlQ29tcG9uZW50U3R5bGVzT25Ib3N0XSxcbiAgcHJvdmlkZXJzOiBbXG4gICAge1xuICAgICAgcHJvdmlkZTogSUNPTl9TSVpFX1BST1ZJREVSLFxuICAgICAgdXNlQ2xhc3M6IEZpZWxkSWNvblNpemVQcm92aWRlcixcbiAgICB9LFxuICBdLFxuICBzdGFuZGFsb25lOiBmYWxzZSxcbn0pXG5leHBvcnQgY2xhc3MgRmllbGRDb21wb25lbnRcbiAgaW1wbGVtZW50cyBBZnRlckNvbnRlbnRJbml0LCBBZnRlclZpZXdDaGVja2VkLCBJY29uU2l6ZVByb3ZpZGVyXG57XG4gIC8qKlxuICAgKiBXaGV0aGVyIHRoZSBuZWNlc3NpdHkgaW5kaWNhdG9yIHNob3VsZCBiZSB2aXNpYmxlLlxuICAgKi9cbiAgQElucHV0KClcbiAgQENvZXJjZUJvb2xlYW5cbiAgbmVjZXNzaXR5SW5kaWNhdG9yPzogQm9vbGVhbklucHV0O1xuXG4gIC8qKlxuICAgKiBMYWJlbCBwbGFjZW1lbnQgd2l0aCByZXNwZWN0IHRvIHRoZSBmb3JtIGNvbnRyb2wuXG4gICAqIEBkZWZhdWx0IFwiYWJvdmVcIlxuICAgKi9cbiAgQElucHV0KClcbiAgbGFiZWxQbGFjZW1lbnQ/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
|
|
275
|
+
export class FieldsetComponent extends FieldComponent {
|
|
276
|
+
}
|
|
277
|
+
FieldsetComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.0", ngImport: i0, type: FieldsetComponent, deps: null, target: i0.ɵɵFactoryTarget.Component });
|
|
278
|
+
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: [
|
|
279
|
+
{
|
|
280
|
+
provide: ICON_SIZE_PROVIDER,
|
|
281
|
+
useFactory: (fieldset) => ({
|
|
282
|
+
get size() {
|
|
283
|
+
return fieldset.size === 'lg' ? 'md' : 'sm';
|
|
284
|
+
},
|
|
285
|
+
}),
|
|
286
|
+
deps: [FieldsetComponent],
|
|
287
|
+
},
|
|
288
|
+
], 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"] }] });
|
|
289
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.0", ngImport: i0, type: FieldsetComponent, decorators: [{
|
|
290
|
+
type: Component,
|
|
291
|
+
args: [{ selector: 'sp-fieldset', host: fieldHostBinding, hostDirectives: [UseComponentStylesOnHost], providers: [
|
|
292
|
+
{
|
|
293
|
+
provide: ICON_SIZE_PROVIDER,
|
|
294
|
+
useFactory: (fieldset) => ({
|
|
295
|
+
get size() {
|
|
296
|
+
return fieldset.size === 'lg' ? 'md' : 'sm';
|
|
297
|
+
},
|
|
298
|
+
}),
|
|
299
|
+
deps: [FieldsetComponent],
|
|
300
|
+
},
|
|
301
|
+
], 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"] }]
|
|
302
|
+
}] });
|
|
303
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmllbGQuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vc3JjL2xpYi9maWVsZC9zcmMvZmllbGQuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vc3JjL2xpYi9maWVsZC9zcmMvZmllbGQuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IjtBQUFBLE9BQU8sRUFJTCxTQUFTLEVBQ1QsWUFBWSxFQUNaLGVBQWUsRUFDZixVQUFVLEVBQ1YsTUFBTSxFQUNOLFVBQVUsRUFDVixLQUFLLEVBQ0wsU0FBUyxFQUNULFFBQVEsRUFFUixRQUFRLEVBQ1IsU0FBUyxFQUNULFlBQVksR0FDYixNQUFNLGVBQWUsQ0FBQztBQUN2QixPQUFPLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSx3QkFBd0IsQ0FBQztBQUM1RCxPQUFPLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSx5QkFBeUIsQ0FBQztBQUM5RCxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0saUNBQWlDLENBQUM7QUFDakUsT0FBTyxFQUFnQixxQkFBcUIsRUFBRSxNQUFNLHVCQUF1QixDQUFDO0FBQzVFLE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSx1Q0FBdUMsQ0FBQztBQUN0RSxPQUFPLEVBQUUsU0FBUyxFQUFFLGlCQUFpQixFQUFFLFVBQVUsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQzFFLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUMvQyxPQUFPLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSx5QkFBeUIsQ0FBQztBQUM5RCxPQUFPLEVBQUUsZUFBZSxFQUFhLE1BQU0scUJBQXFCLENBQUM7QUFDakUsT0FBTyxFQUFFLHdCQUF3QixFQUFFLE1BQU0sMENBQTBDLENBQUM7QUFDcEYsT0FBTyxFQUNMLGtCQUFrQixHQUVuQixNQUFNLG1DQUFtQyxDQUFDO0FBQzNDLE9BQU8sRUFBRSxtQkFBbUIsRUFBRSxNQUFNLHVDQUF1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OlsiaW1wb3J0IHtcbiAgQWZ0ZXJDb250ZW50SW5pdCxcbiAgQWZ0ZXJWaWV3Q2hlY2tlZCxcbiAgQ2hhbmdlRGV0ZWN0b3JSZWYsXG4gIENvbXBvbmVudCxcbiAgQ29udGVudENoaWxkLFxuICBDb250ZW50Q2hpbGRyZW4sXG4gIGZvcndhcmRSZWYsXG4gIEluamVjdCxcbiAgSW5qZWN0YWJsZSxcbiAgSW5wdXQsXG4gIGlzRGV2TW9kZSxcbiAgT3B0aW9uYWwsXG4gIFF1ZXJ5TGlzdCxcbiAgU2tpcFNlbGYsXG4gIFZpZXdDaGlsZCxcbiAgVmlld0NoaWxkcmVuLFxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IEZpZWxkTm90ZURpcmVjdGl2ZSB9IGZyb20gJy4vZmllbGQtbm90ZS5kaXJlY3RpdmUnO1xuaW1wb3J0IHsgRmllbGRFcnJvckRpcmVjdGl2ZSB9IGZyb20gJy4vZmllbGQtZXJyb3IuZGlyZWN0aXZlJztcbmltcG9ydCB7IExhYmVsQ29tcG9uZW50IH0gZnJvbSAnLi4vLi4vbGFiZWwvc3JjL2xhYmVsLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBCb29sZWFuSW5wdXQsIGNvZXJjZUJvb2xlYW5Qcm9wZXJ0eSB9IGZyb20gJ0Bhbmd1bGFyL2Nkay9jb2VyY2lvbic7XG5pbXBvcnQgeyBDb2VyY2VCb29sZWFuIH0gZnJvbSAnLi4vLi4vY29tbW9uL2NvZXJjZS1ib29sZWFuLmRlY29yYXRvcic7XG5pbXBvcnQgeyBOZ0NvbnRyb2wsIFJlcXVpcmVkVmFsaWRhdG9yLCBWYWxpZGF0b3JzIH0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xuaW1wb3J0IHsgRmllbGRDb250cm9sIH0gZnJvbSAnLi9maWVsZC1jb250cm9sJztcbmltcG9ydCB7IEZpZWxkTGFiZWxEaXJlY3RpdmUgfSBmcm9tICcuL2ZpZWxkLWxhYmVsLmRpcmVjdGl2ZSc7XG5pbXBvcnQgeyBDZGtQb3J0YWxPdXRsZXQsIERvbVBvcnRhbCB9IGZyb20gJ0Bhbmd1bGFyL2Nkay9wb3J0YWwnO1xuaW1wb3J0IHsgVXNlQ29tcG9uZW50U3R5bGVzT25Ib3N0IH0gZnJvbSAnLi4vLi4vY29tbW9uL3NhcHBoaXJlLXZpZXctZW5jYXBzdWxhdGlvbic7XG5pbXBvcnQge1xuICBJQ09OX1NJWkVfUFJPVklERVIsXG4gIEljb25TaXplUHJvdmlkZXIsXG59IGZyb20gJy4uLy4uL2ljb24vc3JjL2ljb24tc2l6ZS1wcm92aWRlcic7XG5pbXBvcnQgeyBSYWRpb0dyb3VwQ29tcG9uZW50IH0gZnJvbSAnLi4vLi4vcmFkaW8vc3JjL3JhZGlvLWdyb3VwLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBJY29uUmVnaXN0cnkgfSBmcm9tICcuLi8uLi9pY29uL3B1YmxpY19hcGknO1xuaW1wb3J0IHtcbiAgaWNvbkNoZWNrbWFya091dGxpbmUsXG4gIGljb25FcnJvcixcbiAgaWNvbldhcm5pbmcsXG59IGZyb20gJ0BkYW5za2Uvc2FwcGhpcmUtaWNvbnMvanMnO1xuXG5ASW5qZWN0YWJsZSgpXG5jbGFzcyBGaWVsZEljb25TaXplUHJvdmlkZXIge1xuICBjb25zdHJ1Y3RvcihcbiAgICBASW5qZWN0KGZvcndhcmRSZWYoKCkgPT4gRmllbGRDb21wb25lbnQpKSBwcml2YXRlIGZpZWxkOiBGaWVsZENvbXBvbmVudFxuICApIHt9XG5cbiAgZ2V0IHNpemUoKSB7XG4gICAgcmV0dXJuIHRoaXMuZmllbGQuc2l6ZSA9PT0gJ2xnJyA/ICdtZCcgOiAnc20nO1xuICB9XG59XG5cbmNvbnN0IGZpZWxkSG9zdEJpbmRpbmcgPSB7XG4gIGNsYXNzOiAnc2FwcGhpcmUtZmllbGQnLFxuICAnW2NsYXNzLnNhcHBoaXJlLWZpZWxkLS1sYWJlbC1wbGFjZW1lbnQtc2lkZV0nOiAnbGFiZWxQbGFjZW1lbnQgPT09IFwic2lkZVwiJyxcbiAgJ1tjbGFzcy5zYXBwaGlyZS1maWVsZC0tbm8td2lkdGhdJzpcbiAgICAnbm9EZWZhdWx0V2lkdGggfHwgIWNvbnRyb2xIYXNEZWZhdWx0V2lkdGgoKScsXG4gICdbY2xhc3Muc2FwcGhpcmUtZmllbGQtLWxhYmVsLWFsaWdubWVudC10b3BdJzpcbiAgICAnbGFiZWxQbGFjZW1lbnQgPT09IFwic2lkZVwiICYmIGhhc1JhZGlvR3JvdXBDaGlsZCgpJyxcbiAgJ1tjbGFzcy5zYXBwaGlyZS1maWVsZC0tbWRdJzogJ3NpemUgPT09IFwibWRcIicsXG59O1xuXG4vKipcbiAqIEEgZmllbGQgaXMgYSBjb21tb24gY29udGFpbmVyIGZvciBsYWJlbGFibGUgY29udHJvbHMgc3VjaCBhcyBzZWxlY3QsIHJhZGlvIGdyb3VwLCB0ZXh0IGZpZWxkLFxuICogZXRjLlxuICogSW4gYWRkaXRpb24gdG8gdGhlIGZpZWxkIGNvbnRyb2wgKHNwLXNlbGVjdCwgc3AtcmFkaW8tZ3JvdXAsIHNwLXRleHQtZmllbGQpLCB0aGUgZm9sbG93aW5nXG4gKiBjb21wb25lbnRzIGNhbiBiZSB1c2VkIGluc2lkZSBhIGZpZWxkOlxuICogLSBzcC1maWVsZC1sYWJlbDogaXMgdXNlZCB0byBwcm92aWRlIHRoZSBsYWJlbCB0ZXh0IGZvciB0aGUgZmllbGQuXG4gKiAtIHNwLWhlbHAtYnV0dG9uOiBpcyBwbGFjZWQgaW4gdGhlIGxhYmVsIGFyZWEsIG5leHQgdG8gdGhlIGxhYmVsIHRleHRcbiAqIC0gc3AtZmllbGQtZXJyb3I6IGlzIHVzZWQgdG8gcHJvdmlkZSBhbiBlcnJvciBtZXNzYWdlLCB3aGljaCBpcyBwbGFjZWQgYmVsb3cgdGhlIGZpZWxkJ3NcbiAqIGNvbnRyb2wuXG4gKiAtIHNwLWZpZWxkLW5vdGU6IGlzIHVzZWQgdG8gcHJvdmlkZSBhIG5vdGUsIHdoaWNoIGlzIHBsYWNlZCBiZWxvdyB0aGUgZmllbGQncyBjb250cm9sLiBPbmx5XG4gKiBzaG93blxuICogICB3aGVuIHRoZXJlIGlzIG5vIGVycm9yXG4gKiAtIHNwLWZpZWxkLW5vdGUtc3VmZml4OiBpcyB1c2VkIHRvIHByb3ZpZGUgYSBzdWZmaXgsIHdoaWNoIGlzIHBsYWNlZCBvbiB0aGUgcmlnaHQgc2lkZSBvZiB0aGVcbiAqIG5vdGUgYXJlYS5cbiAqXG4gKiBBZGRpdGlvbmFsbHksIGZpZWxkIHN1cHBvcnRzOlxuICogLSBMYWJlbCBwbGFjZW1lbnQgZWl0aGVyIGFib3ZlIChkZWZhdWx0KSBvciBvbiB0aGUgc2lkZSBvZiB0aGUgY29udHJvbC5cbiAqIC0gQXNzb2NpYXRpbmcgbGFiZWwgd2l0aCB0aGUgY29udHJvbCwgc28gdGhhdCBjbGlja2luZyB0aGUgbGFiZWwgZm9jdXNlcyB0aGUgY29udHJvbCwgc2hvd2luZ1xuICogICBmb2N1cyByaW5nLlxuICogLSBPcHRpb25hbGx5IHNob3dpbmcgbmVjZXNzaXR5IGluZGljYXRvciBpbiB0aGUgbGFiZWwuIEZpZWxkcyBuZWNlc3NpdHkgKHJlcXVpcmVkIG9yIG9wdGlvbmFsKVxuICogICBpcyBkZXRlcm1pbmVkIGJhc2VkIG9uIHRoZSBwcmVzZW5jZSBvZiBAYW5ndWxhci9mb3JtJ3Mge0BsaW5rIFJlcXVpcmVkVmFsaWRhdG9yfS5cbiAqL1xuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnc3AtZmllbGQnLFxuICB0ZW1wbGF0ZVVybDogJy4vZmllbGQuY29tcG9uZW50Lmh0bWwnLFxuICBzdHlsZVVybHM6IFsnLi9maWVsZC5jb21wb25lbnQuc2NzcyddLFxuICBob3N0OiBmaWVsZEhvc3RCaW5kaW5nLFxuICBob3N0RGlyZWN0aXZlczogW1VzZUNvbXBvbmVudFN0eWxlc09uSG9zdF0sXG4gIHByb3ZpZGVyczogW1xuICAgIHtcbiAgICAgIHByb3ZpZGU6IElDT05fU0laRV9QUk9WSURFUixcbiAgICAgIHVzZUNsYXNzOiBGaWVsZEljb25TaXplUHJvdmlkZXIsXG4gICAgfSxcbiAgXSxcbiAgc3RhbmRhbG9uZTogZmFsc2UsXG59KVxuZXhwb3J0IGNsYXNzIEZpZWxkQ29tcG9uZW50XG4gIGltcGxlbWVudHMgQWZ0ZXJDb250ZW50SW5pdCwgQWZ0ZXJWaWV3Q2hlY2tlZCwgSWNvblNpemVQcm92aWRlclxue1xuICAvKipcbiAgICogV2hldGhlciB0aGUgbmVjZXNzaXR5IGluZGljYXRvciBzaG91bGQgYmUgdmlzaWJsZS5cbiAgICovXG4gIEBJbnB1dCgpXG4gIEBDb2VyY2VCb29sZWFuXG4gIG5lY2Vzc2l0eUluZGljYXRvcj86IEJvb2xlYW5JbnB1dDtcblxuICAvKipcbiAgICogTGFiZWwgcGxhY2VtZW50IHdpdGggcmVzcGVjdCB0byB0aGUgZm9ybSBjb250cm9sLlxuICAgKiBAZGVmYXVsdCBcImFib3ZlXCJcbiAgICovXG4gIEBJbnB1dCgpXG4gIGxhYmVsUGxhY2VtZW50PzogJ3NpZGUnIHwgJ2Fib3ZlJyA9ICdhYm92ZSc7XG5cbiAgLyoqXG4gICAqIEF2b2lkIHRoZSBkZWZhdWx0IHdpZHRoXG4gICAqL1xuICBASW5wdXQoKVxuICBAQ29lcmNlQm9vbGVhblxuICBub0RlZmF1bHRXaWR0aD86IEJvb2xlYW5JbnB1dDtcblxuICAvKipcbiAgICogQWxsb3cgYm90aCBub3RlIGFuZCBlcnJvciBhdCB0aGUgc2FtZSB0aW1lXG4gICAqIEBkZWZhdWx0IGZhbHNlXG4gICAqL1xuICBASW5wdXQoKVxuICBAQ29lcmNlQm9vbGVhblxuICBhbGxvd05vdGVBbmRFcnJvcj86IEJvb2xlYW5JbnB1dDtcblxuICAvKipcbiAgICogQGRlZmF1bHQgXCJsZ1wiXG4gICAqL1xuICBASW5wdXQoKVxuICBzaXplPzogJ2xnJyB8ICdtZCcgPSAnbGcnO1xuXG4gIEBDb250ZW50Q2hpbGQoRmllbGROb3RlRGlyZWN0aXZlKVxuICBub3RlPzogRmllbGROb3RlRGlyZWN0aXZlO1xuXG4gIEBDb250ZW50Q2hpbGQoRmllbGRFcnJvckRpcmVjdGl2ZSlcbiAgZXJyb3I/OiBGaWVsZEVycm9yRGlyZWN0aXZlO1xuXG4gIEBWaWV3Q2hpbGQoTGFiZWxDb21wb25lbnQpXG4gIGxhYmVsPzogTGFiZWxDb21wb25lbnQ7XG5cbiAgQENvbnRlbnRDaGlsZChGaWVsZExhYmVsRGlyZWN0aXZlLCB7IGRlc2NlbmRhbnRzOiBmYWxzZSB9KVxuICBfZmllbGRMYWJlbD86IEZpZWxkTGFiZWxEaXJlY3RpdmU7XG5cbiAgLyoqXG4gICAqIEZvY3VzYWJsZSwgbGFiZWxhYmxlIGNvbnRyb2wuIENvbXBvbmVudHMgbGlrZSBTZWxlY3QsIFJhZGlvR3JvdXAgb3IgVGV4dEZpZWxkLFxuICAgKiB0aGF0IGFyZSBtZWFudCB0byByZW5kZXJlZCBpbnNpZGUgc3AtZmllbGQsIHByb3ZpZGUgRmllbGRDb250cm9sLlxuICAgKi9cbiAgQENvbnRlbnRDaGlsZHJlbihGaWVsZENvbnRyb2wsIHsgZGVzY2VuZGFudHM6IHRydWUgfSlcbiAgY29udHJvbHM/OiBRdWVyeUxpc3Q8RmllbGRDb250cm9sPjtcblxuICBAQ29udGVudENoaWxkKFJhZGlvR3JvdXBDb21wb25lbnQpXG4gIHJhZGlvR3JvdXA/OiBSYWRpb0dyb3VwQ29tcG9uZW50O1xuXG4gIEBDb250ZW50Q2hpbGQoTmdDb250cm9sLCB7IGRlc2NlbmRhbnRzOiB0cnVlIH0pXG4gIHByaXZhdGUgbmdDb250cm9sPzogTmdDb250cm9sO1xuXG4gIEBDb250ZW50Q2hpbGQoUmVxdWlyZWRWYWxpZGF0b3IsIHsgZGVzY2VuZGFudHM6IHRydWUgfSlcbiAgcHJpdmF0ZSByZXF1aXJlZFZhbGlkYXRvcj86IFJlcXVpcmVkVmFsaWRhdG9yO1xuXG4gIEBWaWV3Q2hpbGRyZW4oQ2RrUG9ydGFsT3V0bGV0KVxuICBwcml2YXRlIHN1ZmZpeFBvcnRhbE91dGxldDogUXVlcnlMaXN0PENka1BvcnRhbE91dGxldD4gfCBudWxsID0gbnVsbDtcblxuICAvKipcbiAgICogSXMgc2V0IHZpYSBmaWVsZC1ub3RlLWFmZml4IGRpcmVjdGl2ZS4gQ29udGVudENoaWxkIHF1ZXJ5IGNhbid0IGJlIHVzZWQgc2luY2Ugd2UgbmVlZFxuICAgKiB0byBxdWVyeSBmcm9tIGNvbnRlbnQgLT4gdmlldyBpbiBzb21lIGNhc2VzLlxuICAgKiBAaW50ZXJuYWxcbiAgICovXG4gIF9ub3RlU3VmZml4UG9ydGFsOiBEb21Qb3J0YWw8SFRNTEVsZW1lbnQ+IHwgbnVsbCA9IG51bGw7XG5cbiAgcHJpdmF0ZSBjaGFuZ2VkOiBib29sZWFuID0gZmFsc2U7XG5cbiAgY29uc3RydWN0b3IoXG4gICAgcHJpdmF0ZSBjaGFuZ2VEZXRlY3RvclJlZjogQ2hhbmdlRGV0ZWN0b3JSZWYsXG4gICAgaWNvblJlZ2lzdHJ5OiBJY29uUmVnaXN0cnksXG4gICAgQE9wdGlvbmFsKCkgQFNraXBTZWxmKCkgcHJpdmF0ZSBmaWVsZHNldD86IEZpZWxkc2V0Q29tcG9uZW50XG4gICkge1xuICAgIGljb25SZWdpc3RyeS5yZWdpc3Rlckljb24oaWNvbkNoZWNrbWFya091dGxpbmUpO1xuICAgIGljb25SZWdpc3RyeS5yZWdpc3Rlckljb24oaWNvbldhcm5pbmcpO1xuICAgIGljb25SZWdpc3RyeS5yZWdpc3Rlckljb24oaWNvbkVycm9yKTtcbiAgfVxuXG4gIG5nQWZ0ZXJDb250ZW50SW5pdCgpIHtcbiAgICBpZiAoIXRoaXMuY29udHJvbHMgJiYgaXNEZXZNb2RlKCkpIHtcbiAgICAgIHRocm93IG5ldyBFcnJvcihcbiAgICAgICAgJ3NwLWZpZWxkIGlzIHJlbmRlcmVkIHdpdGhvdXQgYW55IGNvbnRyb2wgbGlrZSBzcC1zZWxlY3QsIHNwLXRleHQtZmllbGQsIG9yIHNwLXJhZGlvLWdyb3VwIGluc2lkZSBpdC4nXG4gICAgICApO1xuICAgIH1cbiAgfVxuXG4gIG5nQWZ0ZXJWaWV3SW5pdCgpIHtcbiAgICB0aGlzLnN1ZmZpeFBvcnRhbE91dGxldCEuY2hhbmdlcy5zdWJzY3JpYmUoKCkgPT4ge1xuICAgICAgaWYgKHRoaXMuX25vdGVTdWZmaXhQb3J0YWw/LmlzQXR0YWNoZWQgPT09IGZhbHNlKSB7XG4gICAgICAgIC8vIEl0IG1pZ2h0IGJlIGEgYnVnIGluIEBhbmd1bGFyL2Nkay9wb3J0YWwsIGJ1dCB3aGVuIHRoZSBwb3J0YWwgb3V0bGV0IHRoYXQgcmVuZGVyc1xuICAgICAgICAvLyBhIERvbVBvcnRhbCBpcyBjaGFuZ2VkLCB0aGUgRG9tUG9ydGFsIGdldHMgZGV0YWNoZWQgYW5kIG5vdCByZWF0dGFjaGVkIHRvIHRoZSBuZXcgb3V0bGV0LlxuICAgICAgICAvLyBUaGUgZm9sbG93aW5nIHJlYXR0YWNoaW5nIGlzIHRvIHdvcmsgYXJvdW5kIHRoaXMgaXNzdWUuXG4gICAgICAgIHRoaXMuc3VmZml4UG9ydGFsT3V0bGV0Py5maXJzdD8uZGV0YWNoKCk7XG4gICAgICAgIHRoaXMuc3VmZml4UG9ydGFsT3V0bGV0Py5maXJzdD8uYXR0YWNoKHRoaXMuX25vdGVTdWZmaXhQb3J0YWwpO1xuICAgICAgfVxuICAgIH0pO1xuICB9XG5cbiAgbmdBZnRlclZpZXdDaGVja2VkKCkge1xuICAgIC8qKlxuICAgICAqIFNpbmNlIG5vdGUgc3VmZml4IHBvcnRhbCBpcyBjaGFuZ2VkIGJ5IEZpZWxkTm90ZVN1ZmZpeERpcmVjdGl2ZSxcbiAgICAgKiBpdCBjcmVhdGVzIGEgY2FzZSBvZiBFeHByZXNzaW9uQ2hhbmdlZEFmdGVySXRIYXNCZWVuQ2hlY2tlZEVycm9yLlxuICAgICAqIFNvIHdlIG5lZWQgdG8gbWFudWFsbHkgZGV0ZWN0IGNoYW5nZXMgd2hlbiBzdWZmaXggcG9ydGFsIGlzIGNoYW5nZWQuXG4gICAgICogV2UgV291bGRuJ3QgbmVlZCB0byBkbyBzbywgaWYgd2UgY291bGQgcXVlcnkgRmllbGROb3RlU3VmZml4RGlyZWN0aXZlXG4gICAgICogdmlhIEBDb250ZW50Q2hpbGQsIGJ1dCB3ZSBjYW4ndCBiZWNhdXNlIGl0IGNhbiBiZSBpbiB0aGUgdmlldyBvZiBhIGNvbnRlbnRcbiAgICAgKiBjaGlsZCwgd2hpY2ggbWFrZXMgaXQgbm90IHF1ZXJ5LWFibGUuXG4gICAgICovXG4gICAgaWYgKHRoaXMuY2hhbmdlZCkge1xuICAgICAgdGhpcy5jaGFuZ2VEZXRlY3RvclJlZi5kZXRlY3RDaGFuZ2VzKCk7XG4gICAgICB0aGlzLmNoYW5nZWQgPSBmYWxzZTtcbiAgICB9XG4gIH1cblxuICAvKipcbiAgICogV2hldGhlciB0aGUgZmllbGQgY29udGFpbnMgYW4gZXJyb3IgbWVzc2FnZSAoc3AtZmllbGQtZXJyb3IpLlxuICAgKiBBbHNvIGNoZWNrcyBpZiBhIHBhcmVudCBmaWVsZHNldCBoYXMgYW4gZXJyb3IuXG4gICAqL1xuICBoYXNFcnJvcih0YXJnZXRGaWVsZD86IEZpZWxkQ29udHJvbCk6IGJvb2xlYW4ge1xuICAgIC8vIENoZWNrIGlmIHRoaXMgZmllbGQgaGFzIGl0cyBvd24gZXJyb3JcbiAgICBpZiAodGhpcy5faGFzT3duRXJyb3IodGFyZ2V0RmllbGQpKSB7XG4gICAgICByZXR1cm4gdHJ1ZTtcbiAgICB9XG5cbiAgICAvLyBDaGVjayBpZiBwYXJlbnQgZmllbGRzZXQgaGFzIGFuIGVycm9yIHRhcmdldHRpbmcgdGhpcyBmaWVsZFxuICAgIGlmICh0aGlzLmZpZWxkc2V0KSB7XG4gICAgICByZXR1cm4gdGhpcy5maWVsZHNldC5oYXNFcnJvcih0YXJnZXRGaWVsZCk7XG4gICAgfVxuXG4gICAgcmV0dXJuIGZhbHNlO1xuICB9XG5cbiAgcHJpdmF0ZSBfaGFzT3duRXJyb3IodGFyZ2V0RmllbGQ/OiBGaWVsZENvbnRyb2wpOiBib29sZWFuIHtcbiAgICBpZiAoIXRoaXMuZXJyb3IpIHtcbiAgICAgIHJldHVybiBmYWxzZTtcbiAgICB9XG5cbiAgICBjb25zdCB7IHRhcmdldCB9ID0gdGhpcy5lcnJvcjtcblxuICAgIC8vIElmIG5vIHRhcmdldCBpcyBzcGVjaWZpZWQsIGVycm9yIGFwcGxpZXMgdG8gYWxsIGNvbnRyb2xzXG4gICAgaWYgKCF0YXJnZXQpIHtcbiAgICAgIHJldHVybiB0cnVlO1xuICAgIH1cblxuICAgIC8vIElmIHRoZSB0YXJnZXQgaXMgYSBGaWVsZENvbnRyb2wsIGNoZWNrIGlmIGl0IG1hdGNoZXNcbiAgICBpZiAodGhpcy5faXNGaWVsZENvbnRyb2wodGFyZ2V0KSkge1xuICAgICAgcmV0dXJuIHRhcmdldCA9PT0gdGFyZ2V0RmllbGQ7XG4gICAgfVxuXG4gICAgcmV0dXJuIGZhbHNlO1xuICB9XG5cbiAgcHJpdmF0ZSBfaXNGaWVsZENvbnRyb2wodGFyZ2V0OiB1bmtub3duKTogdGFyZ2V0IGlzIEZpZWxkQ29udHJvbCB7XG4gICAgcmV0dXJuIChcbiAgICAgIHR5cGVvZiB0YXJnZXQgPT09ICdvYmplY3QnICYmIHRhcmdldCAhPT0gbnVsbCAmJiAnaXNEaXNhYmxlZCcgaW4gdGFyZ2V0XG4gICAgKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBJZiB0aGVyZSBhcmUgbXVsdGlwbGUgY29udHJvbHMsIHRoZSBmaWVsZCBpcyBvbmx5IGRpc2FibGVkIHdoZW4gYWxsIG9mIHRoZW0gYXJlIGRpc2FibGVkXG4gICAqL1xuICBpc0Rpc2FibGVkKCk6IGJvb2xlYW4ge1xuICAgIGlmICghdGhpcy5jb250cm9scyB8fCB0aGlzLmNvbnRyb2xzLmxlbmd0aCA9PT0gMCkge1xuICAgICAgcmV0dXJuIGZhbHNlO1xuICAgIH1cblxuICAgIHJldHVybiB0aGlzLmNvbnRyb2xzPy50b0FycmF5KCkuZXZlcnkoKGNvbnRyb2wpID0+IGNvbnRyb2wuaXNEaXNhYmxlZCgpKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBJZiBhbnkgb2YgdGhlIGNvbnRyb2xzIHNob3VsZCBiZSBjb25zdHJhaW5lZCBieSB0aGUgZmllbGQncyBkZWZhdWx0IHdpZGh0XG4gICAqL1xuICBjb250cm9sSGFzRGVmYXVsdFdpZHRoKCk6IGJvb2xlYW4ge1xuICAgIGlmICghdGhpcy5jb250cm9scyB8fCB0aGlzLmNvbnRyb2xzLmxlbmd0aCA9PT0gMCkge1xuICAgICAgcmV0dXJuIGZhbHNlO1xuICAgIH1cblxuICAgIHJldHVybiB0aGlzLmNvbnRyb2xzPy50b0FycmF5KCkuc29tZSgoY29udHJvbCkgPT4gY29udHJvbC5oYXNEZWZhdWx0V2lkdGgpO1xuICB9XG5cbiAgLyoqXG4gICAqIE9ubHkgc3VwcG9ydCBmZWF0dXJlcyBsaWtlIGBmb3JgIG9yIGBsYWJlbENsaWNrYCBpZiB0aGUgZmllbGQgaGFzIG9uZSBjb250cm9sLlxuICAgKi9cbiAgZ2V0IGNvbnRyb2woKTogRmllbGRDb250cm9sIHwgdW5kZWZpbmVkIHtcbiAgICByZXR1cm4gdGhpcy5jb250cm9scz8ubGVuZ3RoID09PSAxID8gdGhpcy5jb250cm9scy5maXJzdCA6IHVuZGVmaW5lZDtcbiAgfVxuXG4gIGdldCBpc0dyb3VwKCk6IGJvb2xlYW4ge1xuICAgIHJldHVybiB0aGlzLmNvbnRyb2xzID8gdGhpcy5jb250cm9scy5sZW5ndGggPiAxIDogZmFsc2U7XG4gIH1cblxuICAvKipcbiAgICogV2hldGhlciB0aGUgZmllbGQgY29udHJvbCBpcyByYWRpbyBncm91cCAoc3AtcmFkaW8tZ3JvdXApLlxuICAgKi9cbiAgaGFzUmFkaW9Hcm91cENoaWxkKCk6IGJvb2xlYW4ge1xuICAgIHJldHVybiB0aGlzLnJhZGlvR3JvdXAgIT0gdW5kZWZpbmVkO1xuICB9XG5cbiAgZ2V0IGxhYmVsTmVjZXNzaXR5SW5kaWNhdG9yKCk6IExhYmVsQ29tcG9uZW50WyduZWNlc3NpdHlJbmRpY2F0b3InXSB7XG4gICAgaWYgKHRoaXMubmVjZXNzaXR5SW5kaWNhdG9yKSB7XG4gICAgICByZXR1cm4gY29lcmNlQm9vbGVhblByb3BlcnR5KHRoaXMucmVxdWlyZWRWYWxpZGF0b3I/LnJlcXVpcmVkKSB8fFxuICAgICAgICB0aGlzLm5nQ29udHJvbD8uY29udHJvbD8uaGFzVmFsaWRhdG9yKFZhbGlkYXRvcnMucmVxdWlyZWQpXG4gICAgICAgID8gJ3JlcXVpcmVkJ1xuICAgICAgICA6ICdvcHRpb25hbCc7XG4gICAgfVxuICAgIHJldHVybiB1bmRlZmluZWQ7XG4gIH1cblxuICBfc2V0U3VmZml4UG9ydGFsKHBvcnRhbDogRG9tUG9ydGFsPEhUTUxFbGVtZW50PiB8IG51bGwpIHtcbiAgICBpZiAodGhpcy5fbm90ZVN1ZmZpeFBvcnRhbD8uaXNBdHRhY2hlZCkge1xuICAgICAgdGhpcy5fbm90ZVN1ZmZpeFBvcnRhbC5kZXRhY2goKTtcbiAgICAgIC8vIGNhbGxpbmcgZGV0YWNoIHdpbGwgbW92ZSB0aGUgZWxlbWVudCBiYWNrIHRvIHRoZSBET00uIENvdWxkbid0IGZpbmQgYW55IGJldHRlclxuICAgICAgLy8gd2F5IHRoYW4gaW1wZXJhdGl2ZWx5IHJlbW92aW5nIHRoZSBET00gZWxlbWVudCB0b28uXG4gICAgICB0aGlzLl9ub3RlU3VmZml4UG9ydGFsLmVsZW1lbnQucmVtb3ZlKCk7XG4gICAgfVxuICAgIHRoaXMuX25vdGVTdWZmaXhQb3J0YWwgPSBwb3J0YWw7XG4gICAgdGhpcy5jaGFuZ2VkID0gdHJ1ZTtcbiAgfVxufVxuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdzcC1maWVsZHNldCcsXG4gIHRlbXBsYXRlVXJsOiAnLi9maWVsZC5jb21wb25lbnQuaHRtbCcsXG4gIHN0eWxlVXJsczogWycuL2ZpZWxkLmNvbXBvbmVudC5zY3NzJ10sXG4gIGhvc3Q6IGZpZWxkSG9zdEJpbmRpbmcsXG4gIGhvc3REaXJlY3RpdmVzOiBbVXNlQ29tcG9uZW50U3R5bGVzT25Ib3N0XSxcbiAgcHJvdmlkZXJzOiBbXG4gICAge1xuICAgICAgcHJvdmlkZTogSUNPTl9TSVpFX1BST1ZJREVSLFxuICAgICAgdXNlRmFjdG9yeTogKGZpZWxkc2V0OiBGaWVsZHNldENvbXBvbmVudCk6IEljb25TaXplUHJvdmlkZXIgPT4gKHtcbiAgICAgICAgZ2V0IHNpemUoKSB7XG4gICAgICAgICAgcmV0dXJuIGZpZWxkc2V0LnNpemUgPT09ICdsZycgPyAnbWQnIDogJ3NtJztcbiAgICAgICAgfSxcbiAgICAgIH0pLFxuICAgICAgZGVwczogW0ZpZWxkc2V0Q29tcG9uZW50XSxcbiAgICB9LFxuICBdLFxuICBzdGFuZGFsb25lOiBmYWxzZSxcbn0pXG5leHBvcnQgY2xhc3MgRmllbGRzZXRDb21wb25lbnQgZXh0ZW5kcyBGaWVsZENvbXBvbmVudCB7fVxuIiwiPGRpdiBjbGFzcz1cInNhcHBoaXJlLWZpZWxkX19sYWJlbFwiICpuZ0lmPVwiX2ZpZWxkTGFiZWxcIj5cbiAgPHNwLWxhYmVsXG4gICAgW25lY2Vzc2l0eUluZGljYXRvcl09XCJsYWJlbE5lY2Vzc2l0eUluZGljYXRvclwiXG4gICAgW2Zvcl09XCJjb250cm9sPy5nZXRJZD8uKClcIlxuICAgIFtkaXNhYmxlZF09XCJpc0Rpc2FibGVkKClcIlxuICAgIChsYWJlbENsaWNrKT1cImNvbnRyb2w/LmZvY3VzPy4oJ2tleWJvYXJkJylcIlxuICAgIFtzaXplXT1cInNpemVcIlxuICA+XG4gICAgPG5nLWNvbnRlbnQgc2VsZWN0PVwic3AtZmllbGQtbGFiZWxcIj48L25nLWNvbnRlbnQ+XG4gICAgPG5nLWNvbnRlbnRcbiAgICAgIHNlbGVjdD1cInNwLWhlbHAtYnV0dG9uXCJcbiAgICAgIG5nUHJvamVjdEFzPVwic3AtaGVscC1idXR0b25cIlxuICAgID48L25nLWNvbnRlbnQ+XG4gIDwvc3AtbGFiZWw+XG48L2Rpdj5cbjxkaXZcbiAgY2xhc3M9XCJzYXBwaGlyZS1maWVsZF9fY29udHJvbFwiXG4gIFtuZ0NsYXNzXT1cIntcbiAgICAnc2FwcGhpcmUtZmllbGRfX2NvbnRyb2wtLWdyb3VwJzogaXNHcm91cFxuICB9XCJcbj5cbiAgPG5nLWNvbnRlbnQ+PC9uZy1jb250ZW50PlxuPC9kaXY+XG48ZGl2IGNsYXNzPVwic2FwcGhpcmUtZmllbGRfX21lc3NhZ2VcIiAqbmdJZj1cIm5vdGUgfHwgZXJyb3IgfHwgX25vdGVTdWZmaXhQb3J0YWxcIj5cbiAgPGRpdiBjbGFzcz1cInNhcHBoaXJlLWZpZWxkX19ub3RlLXJvdyBzYXBwaGlyZS10ZXh0LS1uZWdhdGl2ZVwiICpuZ0lmPVwiZXJyb3JcIj5cbiAgICA8c3BhbiBjbGFzcz1cInNhcHBoaXJlLWZpZWxkX19ub3RlLWljb25cIj5cbiAgICAgIDxzcC1pY29uIG5hbWU9XCJlcnJvclwiIHNpemU9XCJzbVwiPjwvc3AtaWNvbj5cbiAgICA8L3NwYW4+XG4gICAgPGRpdiBjbGFzcz1cInNhcHBoaXJlLWZpZWxkX19ub3RlXCI+XG4gICAgICA8bmctY29udGVudCBzZWxlY3Q9XCJzcC1maWVsZC1lcnJvclwiPjwvbmctY29udGVudD5cbiAgICA8L2Rpdj5cblxuICAgIDxuZy1jb250YWluZXIgKm5nSWY9XCJfbm90ZVN1ZmZpeFBvcnRhbFwiPlxuICAgICAgPG5nLWNvbnRhaW5lciAqY2RrUG9ydGFsT3V0bGV0PVwiX25vdGVTdWZmaXhQb3J0YWxcIj48L25nLWNvbnRhaW5lcj5cbiAgICA8L25nLWNvbnRhaW5lcj5cbiAgPC9kaXY+XG4gIDxkaXZcbiAgICBjbGFzcz1cInNhcHBoaXJlLWZpZWxkX19ub3RlLXJvd1wiXG4gICAgW25nQ2xhc3NdPVwie1xuICAgICAgJ3NhcHBoaXJlLXRleHQtLXBvc2l0aXZlJzogbm90ZT8udmFyaWFudCA9PT0gJ3N1Y2Nlc3MnLFxuICAgICAgJ3NhcHBoaXJlLXRleHQtLXdhcm5pbmcnOiBub3RlPy52YXJpYW50ID09PSAnd2FybmluZydcbiAgICB9XCJcbiAgICAqbmdJZj1cIm5vdGUgJiYgKCFlcnJvciB8fCBhbGxvd05vdGVBbmRFcnJvcilcIlxuICA+XG4gICAgPHNwYW4gY2xhc3M9XCJzYXBwaGlyZS1maWVsZF9fbm90ZS1pY29uXCIgKm5nSWY9XCJub3RlPy5pY29uXCI+XG4gICAgICA8c3AtaWNvbiBbbmFtZV09XCJub3RlPy5pY29uXCIgc2l6ZT1cInNtXCI+PC9zcC1pY29uPlxuICAgIDwvc3Bhbj5cbiAgICA8ZGl2IGNsYXNzPVwic2FwcGhpcmUtZmllbGRfX25vdGVcIj5cbiAgICAgIDxuZy1jb250ZW50IHNlbGVjdD1cInNwLWZpZWxkLW5vdGVcIj48L25nLWNvbnRlbnQ+XG4gICAgPC9kaXY+XG5cbiAgICA8bmctY29udGFpbmVyICpuZ0lmPVwiIWVycm9yICYmIF9ub3RlU3VmZml4UG9ydGFsXCI+XG4gICAgICA8bmctY29udGFpbmVyICpjZGtQb3J0YWxPdXRsZXQ9XCJfbm90ZVN1ZmZpeFBvcnRhbFwiPjwvbmctY29udGFpbmVyPlxuICAgIDwvbmctY29udGFpbmVyPlxuICA8L2Rpdj5cbiAgPGRpdlxuICAgIGNsYXNzPVwic2FwcGhpcmUtZmllbGRfX25vdGUtcm93XCJcbiAgICAqbmdJZj1cIiFub3RlICYmICFlcnJvciAmJiBfbm90ZVN1ZmZpeFBvcnRhbFwiXG4gID5cbiAgICA8bmctY29udGFpbmVyPlxuICAgICAgPG5nLWNvbnRhaW5lciAqY2RrUG9ydGFsT3V0bGV0PVwiX25vdGVTdWZmaXhQb3J0YWxcIj48L25nLWNvbnRhaW5lcj5cbiAgICA8L25nLWNvbnRhaW5lcj5cbiAgPC9kaXY+XG48L2Rpdj5cbiJdfQ==
|
|
@@ -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,
|
|
58
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmllbGQubW9kdWxlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vc3JjL2xpYi9maWVsZC9zcmMvZmllbGQubW9kdWxlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDekMsT0FBTyxFQUFFLG1CQUFtQixFQUFFLE1BQU0seUJBQXlCLENBQUM7QUFDOUQsT0FBTyxFQUFFLGtCQUFrQixFQUFFLE1BQU0sd0JBQXdCLENBQUM7QUFDNUQsT0FBTyxFQUFFLHdCQUF3QixFQUFFLE1BQU0sK0JBQStCLENBQUM7QUFDekUsT0FBTyxFQUFFLG1CQUFtQixFQUFFLE1BQU0seUJBQXlCLENBQUM7QUFFOUQsT0FBTyxFQUFFLGNBQWMsRUFBRSxpQkFBaUIsRUFBRSxNQUFNLG1CQUFtQixDQUFDO0FBQ3RFLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxxQkFBcUIsQ0FBQztBQUNuRCxPQUFPLEVBQUUsWUFBWSxFQUFFLElBQUksRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQ3JELE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSx3QkFBd0IsQ0FBQztBQUN4RCxPQUFPLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSx1QkFBdUIsQ0FBQzs7QUF3QjNELE1BQU0sT0FBTyxtQkFBbUI7O2dIQUFuQixtQkFBbUI7aUhBQW5CLG1CQUFtQixpQkFyQmYsY0FBYyxFQUFFLGlCQUFpQixhQUU5QyxJQUFJO1FBQ0osbUJBQW1CO1FBQ25CLGtCQUFrQjtRQUNsQix3QkFBd0I7UUFDeEIsbUJBQW1CO1FBQ25CLFlBQVk7UUFDWixjQUFjO1FBQ2QsWUFBWTtRQUNaLGtCQUFrQixhQUdsQixtQkFBbUI7UUFDbkIsa0JBQWtCO1FBQ2xCLHdCQUF3QjtRQUN4QixtQkFBbUI7UUFDbkIsY0FBYztRQUNkLGlCQUFpQjtpSEFHUixtQkFBbUIsWUFkNUIsWUFBWTtRQUNaLGNBQWM7UUFDZCxZQUFZO1FBQ1osa0JBQWtCOzJGQVdULG1CQUFtQjtrQkF0Qi9CLFFBQVE7bUJBQUM7b0JBQ1IsWUFBWSxFQUFFLENBQUMsY0FBYyxFQUFFLGlCQUFpQixDQUFDO29CQUNqRCxPQUFPLEVBQUU7d0JBQ1AsSUFBSTt3QkFDSixtQkFBbUI7d0JBQ25CLGtCQUFrQjt3QkFDbEIsd0JBQXdCO3dCQUN4QixtQkFBbUI7d0JBQ25CLFlBQVk7d0JBQ1osY0FBYzt3QkFDZCxZQUFZO3dCQUNaLGtCQUFrQjtxQkFDbkI7b0JBQ0QsT0FBTyxFQUFFO3dCQUNQLG1CQUFtQjt3QkFDbkIsa0JBQWtCO3dCQUNsQix3QkFBd0I7d0JBQ3hCLG1CQUFtQjt3QkFDbkIsY0FBYzt3QkFDZCxpQkFBaUI7cUJBQ2xCO2lCQUNGIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgTmdNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IEZpZWxkTGFiZWxEaXJlY3RpdmUgfSBmcm9tICcuL2ZpZWxkLWxhYmVsLmRpcmVjdGl2ZSc7XG5pbXBvcnQgeyBGaWVsZE5vdGVEaXJlY3RpdmUgfSBmcm9tICcuL2ZpZWxkLW5vdGUuZGlyZWN0aXZlJztcbmltcG9ydCB7IEZpZWxkTm90ZVN1ZmZpeERpcmVjdGl2ZSB9IGZyb20gJy4vZmllbGQtbm90ZS1zdWZmaXguZGlyZWN0aXZlJztcbmltcG9ydCB7IEZpZWxkRXJyb3JEaXJlY3RpdmUgfSBmcm9tICcuL2ZpZWxkLWVycm9yLmRpcmVjdGl2ZSc7XG5cbmltcG9ydCB7IEZpZWxkQ29tcG9uZW50LCBGaWVsZHNldENvbXBvbmVudCB9IGZyb20gJy4vZmllbGQuY29tcG9uZW50JztcbmltcG9ydCB7IFBvcnRhbE1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2Nkay9wb3J0YWwnO1xuaW1wb3J0IHsgQ29tbW9uTW9kdWxlLCBOZ0lmIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcbmltcG9ydCB7IExhYmVsQ29tcG9uZW50IH0gZnJvbSAnLi4vLi4vbGFiZWwvcHVibGljX2FwaSc7XG5pbXBvcnQgeyBTYXBwaGlyZUljb25Nb2R1bGUgfSBmcm9tICcuLi8uLi9pY29uL3B1YmxpY19hcGknO1xuXG5ATmdNb2R1bGUoe1xuICBkZWNsYXJhdGlvbnM6IFtGaWVsZENvbXBvbmVudCwgRmllbGRzZXRDb21wb25lbnRdLFxuICBpbXBvcnRzOiBbXG4gICAgTmdJZixcbiAgICBGaWVsZExhYmVsRGlyZWN0aXZlLFxuICAgIEZpZWxkTm90ZURpcmVjdGl2ZSxcbiAgICBGaWVsZE5vdGVTdWZmaXhEaXJlY3RpdmUsXG4gICAgRmllbGRFcnJvckRpcmVjdGl2ZSxcbiAgICBQb3J0YWxNb2R1bGUsXG4gICAgTGFiZWxDb21wb25lbnQsXG4gICAgQ29tbW9uTW9kdWxlLFxuICAgIFNhcHBoaXJlSWNvbk1vZHVsZSxcbiAgXSxcbiAgZXhwb3J0czogW1xuICAgIEZpZWxkTGFiZWxEaXJlY3RpdmUsXG4gICAgRmllbGROb3RlRGlyZWN0aXZlLFxuICAgIEZpZWxkTm90ZVN1ZmZpeERpcmVjdGl2ZSxcbiAgICBGaWVsZEVycm9yRGlyZWN0aXZlLFxuICAgIEZpZWxkQ29tcG9uZW50LFxuICAgIEZpZWxkc2V0Q29tcG9uZW50LFxuICBdLFxufSlcbmV4cG9ydCBjbGFzcyBTYXBwaGlyZUZpZWxkTW9kdWxlIHt9XG4iXX0=
|
|
@@ -23,7 +23,7 @@ export class ListComponent {
|
|
|
23
23
|
}
|
|
24
24
|
}
|
|
25
25
|
ListComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.0", ngImport: i0, type: ListComponent, deps: [{ token: i0.ElementRef }], target: i0.ɵɵFactoryTarget.Component });
|
|
26
|
-
ListComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.0", type: ListComponent, isStandalone: true, selector: "[sp-list]", inputs: { hideLastDivider: "hideLastDivider", hasNegativeSideMargin: "hasNegativeSideMargin" }, host: { properties: { "class.sapphire-list--without-last-divider": "hideLastDivider", "class.sapphire-list--negative-margin-self": "hasNegativeSideMargin", "attr.role": "!isListElement ? \"list\" : undefined" }, classAttribute: "sapphire-list" }, providers: [ViewEncapsulationProvider], queries: [{ propertyName: "listItems", predicate: i0.forwardRef(function () { return ListItemComponent; }), descendants: true }], hostDirectives: [{ directive: i1.UseComponentStylesOnHost }], ngImport: i0, template: `<ng-content></ng-content>`, isInline: true, styles: [".sapphire-list{box-sizing:border-box;width:100%;padding:0;margin:0;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;list-style:none}.sapphire-list__item{position:relative;display:flex;justify-content:space-between;padding:var(--sapphire-semantic-size-spacing-sm) var(--sapphire-semantic-size-spacing-md);background:var(--sapphire-semantic-color-background-action-tertiary-default);outline:none;font-family:var(--sapphire-semantic-font-name-default)}.sapphire-list__item--interactive{border:none;outline:none;text-decoration:none;box-sizing:border-box;width:100%;transition-property:opacity,background-color,color;transition-duration:var(--sapphire-semantic-time-fade-quick);transition-timing-function:ease-in-out;cursor:pointer}.sapphire-list__item:has(.sapphire-list__item--interactive){padding:0}.sapphire-list__item:focus-within{z-index:1}.sapphire-list__item>.sapphire-list__item--interactive{display:flex;justify-content:space-between;width:100%;padding:var(--sapphire-semantic-size-spacing-sm) var(--sapphire-semantic-size-spacing-md);text-decoration:none;background:inherit;color:inherit;font-family:inherit;font-size:inherit;font-weight:inherit;border:none;text-align:inherit;align-items:inherit}.sapphire-list__item>.sapphire-list__item--selected{background:var(--sapphire-semantic-color-background-action-select-secondary-default)}.sapphire-list--negative-margin-self{margin-left:calc(var(--sapphire-semantic-size-spacing-md) * -1);width:calc(100% + var(--sapphire-semantic-size-spacing-md) * 2)}.sapphire-list__item--interactive:disabled,.sapphire-list__item--interactive[aria-disabled=true],.sapphire-list__item[aria-disabled=true] .sapphire-list__item--interactive{cursor:not-allowed;opacity:var(--sapphire-semantic-opacity-disabled)}.sapphire-list__item--interactive:not(.is-focus,:not(.js-focus):focus),.sapphire-list__item:not(:has(.sapphire-list__item--interactive)){box-shadow:inset 0 -1px 0 0 var(--sapphire-semantic-color-border-secondary)}.sapphire-list--without-last-divider:not(:has([role=presentation] > [role=presentation])) .sapphire-list__item:last-child .sapphire-list__item--interactive:not(.is-focus):not(:focus),.sapphire-list--without-last-divider:not(:has([role=presentation] > [role=presentation])) .sapphire-list__item:not(.sapphire-list__item--interactive):last-child,.sapphire-list--without-last-divider [role=presentation]:last-child>.sapphire-list__item .sapphire-list__item--interactive:not(.is-focus):not(:focus),.sapphire-list--without-last-divider [role=presentation]:last-child>.sapphire-list__item,.sapphire-list__item:has(+ .sapphire-list__item > .sapphire-list__item--interactive.is-focus)>.sapphire-list__item--interactive:not(.is-focus,:not(.js-focus):focus),.sapphire-list__item:has(+ .sapphire-list__item > .sapphire-list__item--interactive:not(.js-focus):focus)>.sapphire-list__item-ineractive:not(.is-focus,:not(.js-focus):focus),.sapphire-list__item:has(+ .sapphire-list__item > .sapphire-list__item--interactive.is-focus),.sapphire-list__item:has(+ .sapphire-list__item > .sapphire-list__item--interactive:not(.js-focus):focus){box-shadow:none}.sapphire-list__item.sapphire-list__item--interactive:not(.is-focus,:not(.js-focus):focus).sapphire-list__item--without-divider{box-shadow:none}.sapphire-list__item--interactive.is-hover:not(.is-active):not(:has(.is-hover)),.sapphire-list__item--interactive:not(.js-hover):not([aria-disabled=true]):not(:disabled):not(:active):not(:has(:focus-within)):hover{background:var(--sapphire-semantic-color-background-action-tertiary-hover)}.sapphire-list__item--selected.is-hover:not(.is-active):not(:has(.is-hover)),.sapphire-list__item--selected:not(.js-hover):not([aria-disabled=true]):not(:disabled):not(:active):not(:has(:focus-within)):hover{background:var(--sapphire-semantic-color-background-action-select-secondary-hover)}.sapphire-list__item-content-interactive:focus,.sapphire-list__item-content-interactive:focus-visible{outline:none}.sapphire-list__item--interactive.is-focus,.sapphire-list__item--interactive:not(.js-focus):focus{outline:none;box-shadow:inset 0 0 0 var(--sapphire-semantic-size-focus-ring) var(--sapphire-semantic-color-focus-ring);border:0;border-radius:var(--sapphire-semantic-size-radius-sm)}.sapphire-list__item--interactive:not(.is-disabled).is-active:not(:has(.is-active)),.sapphire-list__item--interactive:not([aria-disabled=true]):not(:disabled):not(:has(:focus-within,button[aria-expanded=true])):active{background-color:var(--sapphire-semantic-color-background-action-secondary-hover)}.sapphire-list__item--selected:not(.is-disabled).is-active:not(:has(.is-active)),.sapphire-list__item--selected:not([aria-disabled=true]):not(:disabled):not(:has(:focus-within,button[aria-expanded=true])):active{background-color:var(--sapphire-semantic-color-background-action-select-secondary-active)}.sapphire-list__item[aria-disabled=true] .sapphire-list__item--interactive:active,.sapphire-list__item--interactive:focus-visible{background:inherit}.sapphire-list__item-content-left{display:flex;align-items:center;margin-right:var(--sapphire-semantic-size-spacing-sm);min-width:0;gap:var(--sapphire-semantic-size-spacing-sm)}.sapphire-list__item-content-right{display:flex;align-items:center;text-align:right;margin-left:var(--sapphire-semantic-size-spacing-sm);color:var(--sapphire-semantic-color-foreground-primary);gap:var(--sapphire-semantic-size-spacing-sm)}.sapphire-list__item-text{display:flex;flex-direction:column;font-family:var(--sapphire-semantic-font-name-default);min-width:0;overflow-wrap:break-word;gap:var(--sapphire-semantic-size-spacing-4xs)}.sapphire-list__item-text-label{color:var(--sapphire-semantic-color-foreground-secondary);line-height:var(--sapphire-semantic-size-line-height-md);font-size:var(--sapphire-semantic-size-font-body-sm)}.sapphire-list__item-text--reversedOrder{flex-direction:column-reverse}.sapphire-list__item-text-primary{color:var(--sapphire-semantic-color-foreground-primary);line-height:var(--sapphire-semantic-size-line-height-md);font-size:var(--sapphire-semantic-size-font-body-md);font-weight:var(--sapphire-semantic-font-weight-default-medium)}.sapphire-list__item-text-secondary{color:var(--sapphire-semantic-color-foreground-secondary);line-height:var(--sapphire-semantic-size-line-height-md);font-size:var(--sapphire-semantic-size-font-body-sm)}\n"] });
|
|
26
|
+
ListComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.0", type: ListComponent, isStandalone: true, selector: "[sp-list]", inputs: { hideLastDivider: "hideLastDivider", hasNegativeSideMargin: "hasNegativeSideMargin" }, host: { properties: { "class.sapphire-list--without-last-divider": "hideLastDivider", "class.sapphire-list--negative-margin-self": "hasNegativeSideMargin", "attr.role": "!isListElement ? \"list\" : undefined" }, classAttribute: "sapphire-list" }, providers: [ViewEncapsulationProvider], queries: [{ propertyName: "listItems", predicate: i0.forwardRef(function () { return ListItemComponent; }), descendants: true }], hostDirectives: [{ directive: i1.UseComponentStylesOnHost }], ngImport: i0, template: `<ng-content></ng-content>`, isInline: true, styles: [".sapphire-list{box-sizing:border-box;width:100%;padding:0;margin:0;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;list-style:none}.sapphire-list__item{position:relative;display:flex;justify-content:space-between;padding:var(--sapphire-semantic-size-spacing-sm) var(--sapphire-semantic-size-spacing-md);background:var(--sapphire-semantic-color-background-action-tertiary-default);outline:none;font-family:var(--sapphire-semantic-font-name-default)}.sapphire-list__item--interactive{border:none;outline:none;text-decoration:none;box-sizing:border-box;width:100%;transition-property:opacity,background-color,color;transition-duration:var(--sapphire-semantic-time-fade-quick);transition-timing-function:ease-in-out;cursor:pointer}.sapphire-list__item:has(.sapphire-list__item--interactive){padding:0}.sapphire-list__item:focus-within{z-index:1}.sapphire-list__item>.sapphire-list__item--interactive{display:flex;justify-content:space-between;width:100%;padding:var(--sapphire-semantic-size-spacing-sm) var(--sapphire-semantic-size-spacing-md);text-decoration:none;background:inherit;color:inherit;font-family:inherit;font-size:inherit;font-weight:inherit;border:none;text-align:inherit;align-items:inherit}.sapphire-list__item>.sapphire-list__item--selected{background:var(--sapphire-semantic-color-background-action-select-secondary-default);-webkit-backdrop-filter:var(--sapphire-semantic-backdrop-filter-blur);backdrop-filter:var(--sapphire-semantic-backdrop-filter-blur)}.sapphire-list--negative-margin-self{margin-left:calc(var(--sapphire-semantic-size-spacing-md) * -1);width:calc(100% + var(--sapphire-semantic-size-spacing-md) * 2)}.sapphire-list__item--interactive:disabled,.sapphire-list__item--interactive[aria-disabled=true],.sapphire-list__item[aria-disabled=true] .sapphire-list__item--interactive{cursor:not-allowed;opacity:var(--sapphire-semantic-opacity-disabled)}.sapphire-list__item--interactive:not(.is-focus,:not(.js-focus):focus),.sapphire-list__item:not(:has(.sapphire-list__item--interactive)){box-shadow:inset 0 -1px 0 0 var(--sapphire-semantic-color-border-secondary)}.sapphire-list--without-last-divider:not(:has([role=presentation] > [role=presentation])) .sapphire-list__item:last-child .sapphire-list__item--interactive:not(.is-focus):not(:focus),.sapphire-list--without-last-divider:not(:has([role=presentation] > [role=presentation])) .sapphire-list__item:not(.sapphire-list__item--interactive):last-child,.sapphire-list--without-last-divider [role=presentation]:last-child>.sapphire-list__item .sapphire-list__item--interactive:not(.is-focus):not(:focus),.sapphire-list--without-last-divider [role=presentation]:last-child>.sapphire-list__item,.sapphire-list__item:has(+ .sapphire-list__item > .sapphire-list__item--interactive.is-focus)>.sapphire-list__item--interactive:not(.is-focus,:not(.js-focus):focus),.sapphire-list__item:has(+ .sapphire-list__item > .sapphire-list__item--interactive:not(.js-focus):focus)>.sapphire-list__item-ineractive:not(.is-focus,:not(.js-focus):focus),.sapphire-list__item:has(+ .sapphire-list__item > .sapphire-list__item--interactive.is-focus),.sapphire-list__item:has(+ .sapphire-list__item > .sapphire-list__item--interactive:not(.js-focus):focus){box-shadow:none}.sapphire-list__item.sapphire-list__item--interactive:not(.is-focus,:not(.js-focus):focus).sapphire-list__item--without-divider{box-shadow:none}.sapphire-list__item--interactive.is-hover:not(.is-active):not(:has(.is-hover)),.sapphire-list__item--interactive:not(.js-hover):not([aria-disabled=true]):not(:disabled):not(:active):not(:has(:focus-within)):hover{background:var(--sapphire-semantic-color-background-action-tertiary-hover);-webkit-backdrop-filter:var(--sapphire-semantic-backdrop-filter-blur);backdrop-filter:var(--sapphire-semantic-backdrop-filter-blur)}.sapphire-list__item--selected.is-hover:not(.is-active):not(:has(.is-hover)),.sapphire-list__item--selected:not(.js-hover):not([aria-disabled=true]):not(:disabled):not(:active):not(:has(:focus-within)):hover{background:var(--sapphire-semantic-color-background-action-select-secondary-hover);-webkit-backdrop-filter:var(--sapphire-semantic-backdrop-filter-blur);backdrop-filter:var(--sapphire-semantic-backdrop-filter-blur)}.sapphire-list__item-content-interactive:focus,.sapphire-list__item-content-interactive:focus-visible{outline:none}.sapphire-list__item--interactive.is-focus,.sapphire-list__item--interactive:not(.js-focus):focus{outline:none;box-shadow:inset 0 0 0 var(--sapphire-semantic-size-focus-ring) var(--sapphire-semantic-color-focus-ring);border:0;border-radius:var(--sapphire-semantic-size-radius-sm)}.sapphire-list__item--interactive:not(.is-disabled).is-active:not(:has(.is-active)),.sapphire-list__item--interactive:not([aria-disabled=true]):not(:disabled):not(:has(:focus-within,button[aria-expanded=true])):active{background-color:var(--sapphire-semantic-color-background-action-secondary-hover);-webkit-backdrop-filter:var(--sapphire-semantic-backdrop-filter-blur);backdrop-filter:var(--sapphire-semantic-backdrop-filter-blur)}.sapphire-list__item--selected:not(.is-disabled).is-active:not(:has(.is-active)),.sapphire-list__item--selected:not([aria-disabled=true]):not(:disabled):not(:has(:focus-within,button[aria-expanded=true])):active{background-color:var(--sapphire-semantic-color-background-action-select-secondary-active);-webkit-backdrop-filter:var(--sapphire-semantic-backdrop-filter-blur);backdrop-filter:var(--sapphire-semantic-backdrop-filter-blur)}.sapphire-list__item[aria-disabled=true] .sapphire-list__item--interactive:active,.sapphire-list__item--interactive:focus-visible{background:inherit}.sapphire-list__item-content-left{display:flex;align-items:center;margin-right:var(--sapphire-semantic-size-spacing-sm);min-width:0;gap:var(--sapphire-semantic-size-spacing-sm)}.sapphire-list__item-content-right{display:flex;align-items:center;text-align:right;margin-left:var(--sapphire-semantic-size-spacing-sm);color:var(--sapphire-semantic-color-foreground-primary);gap:var(--sapphire-semantic-size-spacing-sm)}.sapphire-list__item-text{display:flex;flex-direction:column;font-family:var(--sapphire-semantic-font-name-default);min-width:0;overflow-wrap:break-word;gap:var(--sapphire-semantic-size-spacing-4xs)}.sapphire-list__item-text-label{color:var(--sapphire-semantic-color-foreground-secondary);line-height:var(--sapphire-semantic-size-line-height-md);font-size:var(--sapphire-semantic-size-font-body-sm)}.sapphire-list__item-text--reversedOrder{flex-direction:column-reverse}.sapphire-list__item-text-primary{color:var(--sapphire-semantic-color-foreground-primary);line-height:var(--sapphire-semantic-size-line-height-md);font-size:var(--sapphire-semantic-size-font-body-md);font-weight:var(--sapphire-semantic-font-weight-default-medium)}.sapphire-list__item-text-secondary{color:var(--sapphire-semantic-color-foreground-secondary);line-height:var(--sapphire-semantic-size-line-height-md);font-size:var(--sapphire-semantic-size-font-body-sm)}\n"] });
|
|
27
27
|
__decorate([
|
|
28
28
|
CoerceBoolean
|
|
29
29
|
], ListComponent.prototype, "hideLastDivider", void 0);
|
|
@@ -37,7 +37,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.0", ngImpor
|
|
|
37
37
|
'[class.sapphire-list--without-last-divider]': 'hideLastDivider',
|
|
38
38
|
'[class.sapphire-list--negative-margin-self]': 'hasNegativeSideMargin',
|
|
39
39
|
'[attr.role]': `!isListElement ? "list" : undefined`,
|
|
40
|
-
}, hostDirectives: [UseComponentStylesOnHost], providers: [ViewEncapsulationProvider], imports: [UseComponentStylesOnHost], styles: [".sapphire-list{box-sizing:border-box;width:100%;padding:0;margin:0;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;list-style:none}.sapphire-list__item{position:relative;display:flex;justify-content:space-between;padding:var(--sapphire-semantic-size-spacing-sm) var(--sapphire-semantic-size-spacing-md);background:var(--sapphire-semantic-color-background-action-tertiary-default);outline:none;font-family:var(--sapphire-semantic-font-name-default)}.sapphire-list__item--interactive{border:none;outline:none;text-decoration:none;box-sizing:border-box;width:100%;transition-property:opacity,background-color,color;transition-duration:var(--sapphire-semantic-time-fade-quick);transition-timing-function:ease-in-out;cursor:pointer}.sapphire-list__item:has(.sapphire-list__item--interactive){padding:0}.sapphire-list__item:focus-within{z-index:1}.sapphire-list__item>.sapphire-list__item--interactive{display:flex;justify-content:space-between;width:100%;padding:var(--sapphire-semantic-size-spacing-sm) var(--sapphire-semantic-size-spacing-md);text-decoration:none;background:inherit;color:inherit;font-family:inherit;font-size:inherit;font-weight:inherit;border:none;text-align:inherit;align-items:inherit}.sapphire-list__item>.sapphire-list__item--selected{background:var(--sapphire-semantic-color-background-action-select-secondary-default)}.sapphire-list--negative-margin-self{margin-left:calc(var(--sapphire-semantic-size-spacing-md) * -1);width:calc(100% + var(--sapphire-semantic-size-spacing-md) * 2)}.sapphire-list__item--interactive:disabled,.sapphire-list__item--interactive[aria-disabled=true],.sapphire-list__item[aria-disabled=true] .sapphire-list__item--interactive{cursor:not-allowed;opacity:var(--sapphire-semantic-opacity-disabled)}.sapphire-list__item--interactive:not(.is-focus,:not(.js-focus):focus),.sapphire-list__item:not(:has(.sapphire-list__item--interactive)){box-shadow:inset 0 -1px 0 0 var(--sapphire-semantic-color-border-secondary)}.sapphire-list--without-last-divider:not(:has([role=presentation] > [role=presentation])) .sapphire-list__item:last-child .sapphire-list__item--interactive:not(.is-focus):not(:focus),.sapphire-list--without-last-divider:not(:has([role=presentation] > [role=presentation])) .sapphire-list__item:not(.sapphire-list__item--interactive):last-child,.sapphire-list--without-last-divider [role=presentation]:last-child>.sapphire-list__item .sapphire-list__item--interactive:not(.is-focus):not(:focus),.sapphire-list--without-last-divider [role=presentation]:last-child>.sapphire-list__item,.sapphire-list__item:has(+ .sapphire-list__item > .sapphire-list__item--interactive.is-focus)>.sapphire-list__item--interactive:not(.is-focus,:not(.js-focus):focus),.sapphire-list__item:has(+ .sapphire-list__item > .sapphire-list__item--interactive:not(.js-focus):focus)>.sapphire-list__item-ineractive:not(.is-focus,:not(.js-focus):focus),.sapphire-list__item:has(+ .sapphire-list__item > .sapphire-list__item--interactive.is-focus),.sapphire-list__item:has(+ .sapphire-list__item > .sapphire-list__item--interactive:not(.js-focus):focus){box-shadow:none}.sapphire-list__item.sapphire-list__item--interactive:not(.is-focus,:not(.js-focus):focus).sapphire-list__item--without-divider{box-shadow:none}.sapphire-list__item--interactive.is-hover:not(.is-active):not(:has(.is-hover)),.sapphire-list__item--interactive:not(.js-hover):not([aria-disabled=true]):not(:disabled):not(:active):not(:has(:focus-within)):hover{background:var(--sapphire-semantic-color-background-action-tertiary-hover)}.sapphire-list__item--selected.is-hover:not(.is-active):not(:has(.is-hover)),.sapphire-list__item--selected:not(.js-hover):not([aria-disabled=true]):not(:disabled):not(:active):not(:has(:focus-within)):hover{background:var(--sapphire-semantic-color-background-action-select-secondary-hover)}.sapphire-list__item-content-interactive:focus,.sapphire-list__item-content-interactive:focus-visible{outline:none}.sapphire-list__item--interactive.is-focus,.sapphire-list__item--interactive:not(.js-focus):focus{outline:none;box-shadow:inset 0 0 0 var(--sapphire-semantic-size-focus-ring) var(--sapphire-semantic-color-focus-ring);border:0;border-radius:var(--sapphire-semantic-size-radius-sm)}.sapphire-list__item--interactive:not(.is-disabled).is-active:not(:has(.is-active)),.sapphire-list__item--interactive:not([aria-disabled=true]):not(:disabled):not(:has(:focus-within,button[aria-expanded=true])):active{background-color:var(--sapphire-semantic-color-background-action-secondary-hover)}.sapphire-list__item--selected:not(.is-disabled).is-active:not(:has(.is-active)),.sapphire-list__item--selected:not([aria-disabled=true]):not(:disabled):not(:has(:focus-within,button[aria-expanded=true])):active{background-color:var(--sapphire-semantic-color-background-action-select-secondary-active)}.sapphire-list__item[aria-disabled=true] .sapphire-list__item--interactive:active,.sapphire-list__item--interactive:focus-visible{background:inherit}.sapphire-list__item-content-left{display:flex;align-items:center;margin-right:var(--sapphire-semantic-size-spacing-sm);min-width:0;gap:var(--sapphire-semantic-size-spacing-sm)}.sapphire-list__item-content-right{display:flex;align-items:center;text-align:right;margin-left:var(--sapphire-semantic-size-spacing-sm);color:var(--sapphire-semantic-color-foreground-primary);gap:var(--sapphire-semantic-size-spacing-sm)}.sapphire-list__item-text{display:flex;flex-direction:column;font-family:var(--sapphire-semantic-font-name-default);min-width:0;overflow-wrap:break-word;gap:var(--sapphire-semantic-size-spacing-4xs)}.sapphire-list__item-text-label{color:var(--sapphire-semantic-color-foreground-secondary);line-height:var(--sapphire-semantic-size-line-height-md);font-size:var(--sapphire-semantic-size-font-body-sm)}.sapphire-list__item-text--reversedOrder{flex-direction:column-reverse}.sapphire-list__item-text-primary{color:var(--sapphire-semantic-color-foreground-primary);line-height:var(--sapphire-semantic-size-line-height-md);font-size:var(--sapphire-semantic-size-font-body-md);font-weight:var(--sapphire-semantic-font-weight-default-medium)}.sapphire-list__item-text-secondary{color:var(--sapphire-semantic-color-foreground-secondary);line-height:var(--sapphire-semantic-size-line-height-md);font-size:var(--sapphire-semantic-size-font-body-sm)}\n"] }]
|
|
40
|
+
}, hostDirectives: [UseComponentStylesOnHost], providers: [ViewEncapsulationProvider], imports: [UseComponentStylesOnHost], styles: [".sapphire-list{box-sizing:border-box;width:100%;padding:0;margin:0;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;list-style:none}.sapphire-list__item{position:relative;display:flex;justify-content:space-between;padding:var(--sapphire-semantic-size-spacing-sm) var(--sapphire-semantic-size-spacing-md);background:var(--sapphire-semantic-color-background-action-tertiary-default);outline:none;font-family:var(--sapphire-semantic-font-name-default)}.sapphire-list__item--interactive{border:none;outline:none;text-decoration:none;box-sizing:border-box;width:100%;transition-property:opacity,background-color,color;transition-duration:var(--sapphire-semantic-time-fade-quick);transition-timing-function:ease-in-out;cursor:pointer}.sapphire-list__item:has(.sapphire-list__item--interactive){padding:0}.sapphire-list__item:focus-within{z-index:1}.sapphire-list__item>.sapphire-list__item--interactive{display:flex;justify-content:space-between;width:100%;padding:var(--sapphire-semantic-size-spacing-sm) var(--sapphire-semantic-size-spacing-md);text-decoration:none;background:inherit;color:inherit;font-family:inherit;font-size:inherit;font-weight:inherit;border:none;text-align:inherit;align-items:inherit}.sapphire-list__item>.sapphire-list__item--selected{background:var(--sapphire-semantic-color-background-action-select-secondary-default);-webkit-backdrop-filter:var(--sapphire-semantic-backdrop-filter-blur);backdrop-filter:var(--sapphire-semantic-backdrop-filter-blur)}.sapphire-list--negative-margin-self{margin-left:calc(var(--sapphire-semantic-size-spacing-md) * -1);width:calc(100% + var(--sapphire-semantic-size-spacing-md) * 2)}.sapphire-list__item--interactive:disabled,.sapphire-list__item--interactive[aria-disabled=true],.sapphire-list__item[aria-disabled=true] .sapphire-list__item--interactive{cursor:not-allowed;opacity:var(--sapphire-semantic-opacity-disabled)}.sapphire-list__item--interactive:not(.is-focus,:not(.js-focus):focus),.sapphire-list__item:not(:has(.sapphire-list__item--interactive)){box-shadow:inset 0 -1px 0 0 var(--sapphire-semantic-color-border-secondary)}.sapphire-list--without-last-divider:not(:has([role=presentation] > [role=presentation])) .sapphire-list__item:last-child .sapphire-list__item--interactive:not(.is-focus):not(:focus),.sapphire-list--without-last-divider:not(:has([role=presentation] > [role=presentation])) .sapphire-list__item:not(.sapphire-list__item--interactive):last-child,.sapphire-list--without-last-divider [role=presentation]:last-child>.sapphire-list__item .sapphire-list__item--interactive:not(.is-focus):not(:focus),.sapphire-list--without-last-divider [role=presentation]:last-child>.sapphire-list__item,.sapphire-list__item:has(+ .sapphire-list__item > .sapphire-list__item--interactive.is-focus)>.sapphire-list__item--interactive:not(.is-focus,:not(.js-focus):focus),.sapphire-list__item:has(+ .sapphire-list__item > .sapphire-list__item--interactive:not(.js-focus):focus)>.sapphire-list__item-ineractive:not(.is-focus,:not(.js-focus):focus),.sapphire-list__item:has(+ .sapphire-list__item > .sapphire-list__item--interactive.is-focus),.sapphire-list__item:has(+ .sapphire-list__item > .sapphire-list__item--interactive:not(.js-focus):focus){box-shadow:none}.sapphire-list__item.sapphire-list__item--interactive:not(.is-focus,:not(.js-focus):focus).sapphire-list__item--without-divider{box-shadow:none}.sapphire-list__item--interactive.is-hover:not(.is-active):not(:has(.is-hover)),.sapphire-list__item--interactive:not(.js-hover):not([aria-disabled=true]):not(:disabled):not(:active):not(:has(:focus-within)):hover{background:var(--sapphire-semantic-color-background-action-tertiary-hover);-webkit-backdrop-filter:var(--sapphire-semantic-backdrop-filter-blur);backdrop-filter:var(--sapphire-semantic-backdrop-filter-blur)}.sapphire-list__item--selected.is-hover:not(.is-active):not(:has(.is-hover)),.sapphire-list__item--selected:not(.js-hover):not([aria-disabled=true]):not(:disabled):not(:active):not(:has(:focus-within)):hover{background:var(--sapphire-semantic-color-background-action-select-secondary-hover);-webkit-backdrop-filter:var(--sapphire-semantic-backdrop-filter-blur);backdrop-filter:var(--sapphire-semantic-backdrop-filter-blur)}.sapphire-list__item-content-interactive:focus,.sapphire-list__item-content-interactive:focus-visible{outline:none}.sapphire-list__item--interactive.is-focus,.sapphire-list__item--interactive:not(.js-focus):focus{outline:none;box-shadow:inset 0 0 0 var(--sapphire-semantic-size-focus-ring) var(--sapphire-semantic-color-focus-ring);border:0;border-radius:var(--sapphire-semantic-size-radius-sm)}.sapphire-list__item--interactive:not(.is-disabled).is-active:not(:has(.is-active)),.sapphire-list__item--interactive:not([aria-disabled=true]):not(:disabled):not(:has(:focus-within,button[aria-expanded=true])):active{background-color:var(--sapphire-semantic-color-background-action-secondary-hover);-webkit-backdrop-filter:var(--sapphire-semantic-backdrop-filter-blur);backdrop-filter:var(--sapphire-semantic-backdrop-filter-blur)}.sapphire-list__item--selected:not(.is-disabled).is-active:not(:has(.is-active)),.sapphire-list__item--selected:not([aria-disabled=true]):not(:disabled):not(:has(:focus-within,button[aria-expanded=true])):active{background-color:var(--sapphire-semantic-color-background-action-select-secondary-active);-webkit-backdrop-filter:var(--sapphire-semantic-backdrop-filter-blur);backdrop-filter:var(--sapphire-semantic-backdrop-filter-blur)}.sapphire-list__item[aria-disabled=true] .sapphire-list__item--interactive:active,.sapphire-list__item--interactive:focus-visible{background:inherit}.sapphire-list__item-content-left{display:flex;align-items:center;margin-right:var(--sapphire-semantic-size-spacing-sm);min-width:0;gap:var(--sapphire-semantic-size-spacing-sm)}.sapphire-list__item-content-right{display:flex;align-items:center;text-align:right;margin-left:var(--sapphire-semantic-size-spacing-sm);color:var(--sapphire-semantic-color-foreground-primary);gap:var(--sapphire-semantic-size-spacing-sm)}.sapphire-list__item-text{display:flex;flex-direction:column;font-family:var(--sapphire-semantic-font-name-default);min-width:0;overflow-wrap:break-word;gap:var(--sapphire-semantic-size-spacing-4xs)}.sapphire-list__item-text-label{color:var(--sapphire-semantic-color-foreground-secondary);line-height:var(--sapphire-semantic-size-line-height-md);font-size:var(--sapphire-semantic-size-font-body-sm)}.sapphire-list__item-text--reversedOrder{flex-direction:column-reverse}.sapphire-list__item-text-primary{color:var(--sapphire-semantic-color-foreground-primary);line-height:var(--sapphire-semantic-size-line-height-md);font-size:var(--sapphire-semantic-size-font-body-md);font-weight:var(--sapphire-semantic-font-weight-default-medium)}.sapphire-list__item-text-secondary{color:var(--sapphire-semantic-color-foreground-secondary);line-height:var(--sapphire-semantic-size-line-height-md);font-size:var(--sapphire-semantic-size-font-body-sm)}\n"] }]
|
|
41
41
|
}], ctorParameters: function () { return [{ type: i0.ElementRef }]; }, propDecorators: { hideLastDivider: [{
|
|
42
42
|
type: Input
|
|
43
43
|
}], hasNegativeSideMargin: [{
|