@skyux/forms 11.0.0-alpha.8 → 11.0.0-beta.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (105) hide show
  1. package/documentation.json +4266 -4566
  2. package/esm2022/index.mjs +13 -12
  3. package/esm2022/lib/modules/character-counter/character-counter-indicator.component.mjs +5 -5
  4. package/esm2022/lib/modules/character-counter/character-counter-screen-reader.pipe.mjs +3 -3
  5. package/esm2022/lib/modules/character-counter/character-counter.directive.mjs +3 -3
  6. package/esm2022/lib/modules/character-counter/character-counter.module.mjs +4 -4
  7. package/esm2022/lib/modules/checkbox/checkbox-group.component.mjs +6 -6
  8. package/esm2022/lib/modules/checkbox/checkbox-label-text-label.component.mjs +5 -6
  9. package/esm2022/lib/modules/checkbox/checkbox-label.component.mjs +3 -3
  10. package/esm2022/lib/modules/checkbox/checkbox.component.mjs +6 -21
  11. package/esm2022/lib/modules/checkbox/checkbox.module.mjs +4 -4
  12. package/esm2022/lib/modules/field-group/field-group.component.mjs +5 -6
  13. package/esm2022/lib/modules/field-group/field-group.module.mjs +4 -4
  14. package/esm2022/lib/modules/file-attachment/file-attachment/file-attachment-change.mjs +2 -0
  15. package/esm2022/lib/modules/file-attachment/file-attachment/file-attachment-click.mjs +2 -0
  16. package/esm2022/lib/modules/file-attachment/file-attachment/file-attachment-join-ids.pipe.mjs +22 -0
  17. package/esm2022/lib/modules/file-attachment/file-attachment/file-attachment-label.component.mjs +31 -0
  18. package/esm2022/lib/modules/file-attachment/file-attachment/file-attachment.component.mjs +479 -0
  19. package/esm2022/lib/modules/file-attachment/file-attachment/file-attachment.module.mjs +24 -0
  20. package/esm2022/lib/modules/file-attachment/file-attachment/file-attachment.service.mjs +103 -0
  21. package/esm2022/lib/modules/file-attachment/file-attachments.module.mjs +12 -75
  22. package/esm2022/lib/modules/file-attachment/file-drop/file-drop-change.mjs +2 -0
  23. package/esm2022/lib/modules/file-attachment/file-drop/file-drop.component.mjs +329 -0
  24. package/esm2022/lib/modules/file-attachment/file-drop/file-drop.module.mjs +18 -0
  25. package/esm2022/lib/modules/file-attachment/file-drop/file-item.component.mjs +156 -0
  26. package/esm2022/lib/modules/file-attachment/file-drop/file-link.mjs +2 -0
  27. package/esm2022/lib/modules/file-attachment/shared/file-item-error-type.mjs +2 -0
  28. package/esm2022/lib/modules/file-attachment/shared/file-item.mjs +2 -0
  29. package/esm2022/lib/modules/file-attachment/shared/file-item.service.mjs +71 -0
  30. package/esm2022/lib/modules/file-attachment/shared/file-size.pipe.mjs +61 -0
  31. package/esm2022/lib/modules/file-attachment/shared/file-validate-function.mjs +2 -0
  32. package/esm2022/lib/modules/form-error/form-error.component.mjs +24 -24
  33. package/esm2022/lib/modules/form-error/form-error.module.mjs +4 -4
  34. package/esm2022/lib/modules/form-error/form-errors.component.mjs +18 -20
  35. package/esm2022/lib/modules/form-error/form-errors.module.mjs +4 -4
  36. package/esm2022/lib/modules/input-box/input-box-adapter.service.mjs +3 -3
  37. package/esm2022/lib/modules/input-box/input-box-control.directive.mjs +3 -3
  38. package/esm2022/lib/modules/input-box/input-box-hint-text.pipe.mjs +3 -3
  39. package/esm2022/lib/modules/input-box/input-box-host.service.mjs +21 -4
  40. package/esm2022/lib/modules/input-box/input-box.component.mjs +22 -27
  41. package/esm2022/lib/modules/input-box/input-box.module.mjs +4 -4
  42. package/esm2022/lib/modules/radio/radio-group-id.service.mjs +3 -3
  43. package/esm2022/lib/modules/radio/radio-group.component.mjs +6 -21
  44. package/esm2022/lib/modules/radio/radio-label.component.mjs +3 -3
  45. package/esm2022/lib/modules/radio/radio.component.mjs +6 -20
  46. package/esm2022/lib/modules/radio/radio.module.mjs +4 -4
  47. package/esm2022/lib/modules/required-state/required-state.directive.mjs +3 -3
  48. package/esm2022/lib/modules/selection-box/selection-box-adapter.service.mjs +3 -3
  49. package/esm2022/lib/modules/selection-box/selection-box-description.component.mjs +3 -3
  50. package/esm2022/lib/modules/selection-box/selection-box-grid.component.mjs +4 -4
  51. package/esm2022/lib/modules/selection-box/selection-box-header.component.mjs +3 -3
  52. package/esm2022/lib/modules/selection-box/selection-box.component.mjs +3 -3
  53. package/esm2022/lib/modules/selection-box/selection-box.module.mjs +4 -4
  54. package/esm2022/lib/modules/shared/sky-forms-resources.module.mjs +6 -8
  55. package/esm2022/lib/modules/toggle-switch/toggle-switch-label.component.mjs +3 -3
  56. package/esm2022/lib/modules/toggle-switch/toggle-switch.component.mjs +7 -21
  57. package/esm2022/lib/modules/toggle-switch/toggle-switch.module.mjs +4 -4
  58. package/esm2022/testing/checkbox/checkbox-harness.mjs +2 -6
  59. package/fesm2022/skyux-forms-testing.mjs +1 -5
  60. package/fesm2022/skyux-forms-testing.mjs.map +1 -1
  61. package/fesm2022/skyux-forms.mjs +394 -448
  62. package/fesm2022/skyux-forms.mjs.map +1 -1
  63. package/index.d.ts +21 -19
  64. package/lib/modules/checkbox/checkbox.component.d.ts +2 -4
  65. package/lib/modules/file-attachment/{types → file-attachment}/file-attachment-change.d.ts +1 -1
  66. package/lib/modules/file-attachment/{types → file-attachment}/file-attachment-click.d.ts +1 -1
  67. package/lib/modules/file-attachment/file-attachment/file-attachment-join-ids.pipe.d.ts +11 -0
  68. package/lib/modules/file-attachment/{file-attachment-label.component.d.ts → file-attachment/file-attachment-label.component.d.ts} +7 -5
  69. package/lib/modules/file-attachment/{file-attachment.component.d.ts → file-attachment/file-attachment.component.d.ts} +14 -14
  70. package/lib/modules/file-attachment/file-attachment/file-attachment.module.d.ts +9 -0
  71. package/lib/modules/file-attachment/{file-attachment.service.d.ts → file-attachment/file-attachment.service.d.ts} +2 -2
  72. package/lib/modules/file-attachment/file-attachments.module.d.ts +6 -15
  73. package/lib/modules/file-attachment/{types → file-drop}/file-drop-change.d.ts +1 -1
  74. package/lib/modules/file-attachment/{file-drop.component.d.ts → file-drop/file-drop.component.d.ts} +6 -8
  75. package/lib/modules/file-attachment/file-drop/file-drop.module.d.ts +9 -0
  76. package/lib/modules/file-attachment/{file-item.component.d.ts → file-drop/file-item.component.d.ts} +3 -3
  77. package/lib/modules/file-attachment/{file-size.pipe.d.ts → shared/file-size.pipe.d.ts} +2 -3
  78. package/lib/modules/form-error/form-errors.component.d.ts +9 -5
  79. package/lib/modules/input-box/input-box-host.service.d.ts +10 -1
  80. package/lib/modules/input-box/input-box.component.d.ts +1 -7
  81. package/lib/modules/radio/radio-group.component.d.ts +2 -4
  82. package/lib/modules/radio/radio.component.d.ts +2 -4
  83. package/lib/modules/toggle-switch/toggle-switch.component.d.ts +3 -5
  84. package/package.json +14 -14
  85. package/esm2022/lib/modules/file-attachment/file-attachment-label.component.mjs +0 -28
  86. package/esm2022/lib/modules/file-attachment/file-attachment.component.mjs +0 -475
  87. package/esm2022/lib/modules/file-attachment/file-attachment.service.mjs +0 -103
  88. package/esm2022/lib/modules/file-attachment/file-drop.component.mjs +0 -328
  89. package/esm2022/lib/modules/file-attachment/file-item-error-type.mjs +0 -2
  90. package/esm2022/lib/modules/file-attachment/file-item.component.mjs +0 -155
  91. package/esm2022/lib/modules/file-attachment/file-item.mjs +0 -2
  92. package/esm2022/lib/modules/file-attachment/file-item.service.mjs +0 -70
  93. package/esm2022/lib/modules/file-attachment/file-link.mjs +0 -2
  94. package/esm2022/lib/modules/file-attachment/file-size.pipe.mjs +0 -61
  95. package/esm2022/lib/modules/file-attachment/file-validate-function.mjs +0 -2
  96. package/esm2022/lib/modules/file-attachment/types/file-attachment-change.mjs +0 -2
  97. package/esm2022/lib/modules/file-attachment/types/file-attachment-click.mjs +0 -2
  98. package/esm2022/lib/modules/file-attachment/types/file-drop-change.mjs +0 -2
  99. package/esm2022/lib/modules/shared/form-field-label-text-required.service.mjs +0 -19
  100. package/lib/modules/shared/form-field-label-text-required.service.d.ts +0 -10
  101. /package/lib/modules/file-attachment/{file-link.d.ts → file-drop/file-link.d.ts} +0 -0
  102. /package/lib/modules/file-attachment/{file-item-error-type.d.ts → shared/file-item-error-type.d.ts} +0 -0
  103. /package/lib/modules/file-attachment/{file-item.d.ts → shared/file-item.d.ts} +0 -0
  104. /package/lib/modules/file-attachment/{file-item.service.d.ts → shared/file-item.service.d.ts} +0 -0
  105. /package/lib/modules/file-attachment/{file-validate-function.d.ts → shared/file-validate-function.d.ts} +0 -0
@@ -1,44 +1,42 @@
1
- import { coerceBooleanProperty } from '@angular/cdk/coercion';
2
- import { CommonModule } from '@angular/common';
3
- import { ChangeDetectionStrategy, Component, HostBinding, Input, } from '@angular/core';
1
+ import { ChangeDetectionStrategy, Component, HostBinding, Input, booleanAttribute, } from '@angular/core';
4
2
  import { SkyIdModule } from '@skyux/core';
5
3
  import { SkyFormsResourcesModule } from '../shared/sky-forms-resources.module';
6
4
  import { SkyFormErrorComponent } from './form-error.component';
7
5
  import * as i0 from "@angular/core";
8
- import * as i1 from "@angular/common";
9
- import * as i2 from "@skyux/i18n";
6
+ import * as i1 from "@skyux/i18n";
10
7
  /**
11
8
  * @internal
12
9
  */
13
10
  export class SkyFormErrorsComponent {
14
11
  constructor() {
15
12
  /**
16
- * Indicates whether to show error messages, which might only be true if the
17
- * form control is touched or dirty.
13
+ * Indicates whether the parent component's control is touched
18
14
  */
19
- this.showErrors = true;
15
+ this.touched = false;
16
+ /**
17
+ * Indicates whether the parent component's control is dirty
18
+ */
19
+ this.dirty = false;
20
20
  this.ariaAtomic = 'true';
21
21
  this.ariaLive = 'assertive';
22
22
  this.ariaRelevant = 'all';
23
23
  }
24
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.1.2", ngImport: i0, type: SkyFormErrorsComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
25
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "16.1.0", version: "18.1.2", type: SkyFormErrorsComponent, isStandalone: true, selector: "sky-form-errors", inputs: { errors: "errors", labelText: "labelText", showErrors: ["showErrors", "showErrors", coerceBooleanProperty] }, host: { properties: { "attr.aria-atomic": "this.ariaAtomic", "attr.aria-live": "this.ariaLive", "attr.aria-relevant": "this.ariaRelevant" } }, ngImport: i0, template: "<ng-container *ngIf=\"labelText && showErrors\">\n <ng-container *ngIf=\"errors\">\n <sky-form-error\n *ngIf=\"errors['required']\"\n errorName=\"required\"\n [errorText]=\"'skyux_form_error_required' | skyLibResources: labelText\"\n />\n\n <sky-form-error\n *ngIf=\"errors['maxlength'] as maxLengthError\"\n errorName=\"maxlength\"\n [errorText]=\"\n 'skyux_form_error_maxlength'\n | skyLibResources: labelText : maxLengthError.requiredLength\n \"\n />\n\n <sky-form-error\n *ngIf=\"errors['minlength'] as minLengthError\"\n errorName=\"minlength\"\n [errorText]=\"\n 'skyux_form_error_minlength'\n | skyLibResources: labelText : minLengthError.requiredLength\n \"\n />\n\n <sky-form-error\n *ngIf=\"errors['skyDate'] && errors['skyDate']['invalid']\"\n errorName=\"invalidDate\"\n [errorText]=\"'skyux_form_error_date' | skyLibResources\"\n />\n\n <sky-form-error\n *ngIf=\"errors['skyDate'] && errors['skyDate']['minDate']\"\n errorName=\"minDate\"\n [errorText]=\"'skyux_form_error_date_min' | skyLibResources\"\n />\n\n <sky-form-error\n *ngIf=\"errors['skyDate'] && errors['skyDate']['maxDate']\"\n errorName=\"maxDate\"\n [errorText]=\"'skyux_form_error_date_max' | skyLibResources\"\n />\n\n <sky-form-error\n *ngIf=\"errors['skyFuzzyDate'] && errors['skyFuzzyDate']['futureDisabled']\"\n errorName=\"fuzzyFutureDisabled\"\n [errorText]=\"\n 'skyux_form_error_fuzzy_date_future_disabled' | skyLibResources\n \"\n />\n\n <sky-form-error\n *ngIf=\"errors['skyFuzzyDate'] && errors['skyFuzzyDate']['invalid']\"\n errorName=\"fuzzyInvalidDate\"\n [errorText]=\"'skyux_form_error_fuzzy_date_invalid' | skyLibResources\"\n />\n\n <sky-form-error\n *ngIf=\"errors['skyFuzzyDate'] && errors['skyFuzzyDate']['maxDate']\"\n errorName=\"fuzzyMaxDate\"\n [errorText]=\"'skyux_form_error_fuzzy_date_max_date' | skyLibResources\"\n />\n\n <sky-form-error\n *ngIf=\"errors['skyFuzzyDate'] && errors['skyFuzzyDate']['minDate']\"\n errorName=\"fuzzyMinDate\"\n [errorText]=\"'skyux_form_error_fuzzy_date_min_date' | skyLibResources\"\n />\n\n <sky-form-error\n *ngIf=\"errors['skyFuzzyDate'] && errors['skyFuzzyDate']['yearRequired']\"\n errorName=\"fuzzyYearRequired\"\n [errorText]=\"\n 'skyux_form_error_fuzzy_date_year_required' | skyLibResources\n \"\n />\n\n <sky-form-error\n *ngIf=\"errors['skyEmail']\"\n errorName=\"email\"\n [errorText]=\"'skyux_form_error_email' | skyLibResources\"\n />\n\n <sky-form-error\n *ngIf=\"errors['skyPhoneField']\"\n errorName=\"phone\"\n [errorText]=\"'skyux_form_error_phone' | skyLibResources\"\n />\n\n <sky-form-error\n *ngIf=\"errors['skyTime']\"\n errorName=\"time\"\n [errorText]=\"'skyux_form_error_time' | skyLibResources\"\n />\n\n <sky-form-error\n *ngIf=\"errors['skyUrl']\"\n errorName=\"url\"\n [errorText]=\"'skyux_form_error_url' | skyLibResources\"\n />\n </ng-container>\n <ng-content />\n</ng-container>\n", styles: [":host,sky-status-indicator{display:block;line-height:normal}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "ngmodule", type: SkyIdModule }, { kind: "component", type: SkyFormErrorComponent, selector: "sky-form-error", inputs: ["errorName", "errorText"] }, { kind: "ngmodule", type: SkyFormsResourcesModule }, { kind: "pipe", type: i2.SkyLibResourcesPipe, name: "skyLibResources" }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
24
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.3", ngImport: i0, type: SkyFormErrorsComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
25
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.3", type: SkyFormErrorsComponent, isStandalone: true, selector: "sky-form-errors", inputs: { errors: "errors", labelText: "labelText", touched: ["touched", "touched", booleanAttribute], dirty: ["dirty", "dirty", booleanAttribute] }, host: { properties: { "attr.aria-atomic": "this.ariaAtomic", "attr.aria-live": "this.ariaLive", "attr.aria-relevant": "this.ariaRelevant" } }, ngImport: i0, template: "@if (labelText) {\n @if (touched) {\n @if (errors?.['required']) {\n <sky-form-error\n errorName=\"required\"\n [errorText]=\"'skyux_form_error_required' | skyLibResources: labelText\"\n />\n }\n\n @if (errors?.['minlength']; as minLengthError) {\n <sky-form-error\n errorName=\"minlength\"\n [errorText]=\"\n 'skyux_form_error_minlength'\n | skyLibResources: labelText : minLengthError.requiredLength\n \"\n />\n }\n\n @if (errors?.['skyDate'] && errors?.['skyDate']['invalid']) {\n <sky-form-error\n errorName=\"invalidDate\"\n [errorText]=\"'skyux_form_error_date' | skyLibResources\"\n />\n }\n\n @if (errors?.['skyDate'] && errors?.['skyDate']['minDate']) {\n <sky-form-error\n errorName=\"minDate\"\n [errorText]=\"'skyux_form_error_date_min' | skyLibResources\"\n />\n }\n\n @if (errors?.['skyDate'] && errors?.['skyDate']['maxDate']) {\n <sky-form-error\n errorName=\"maxDate\"\n [errorText]=\"'skyux_form_error_date_max' | skyLibResources\"\n />\n }\n\n @if (\n errors?.['skyFuzzyDate'] && errors?.['skyFuzzyDate']['futureDisabled']\n ) {\n <sky-form-error\n errorName=\"fuzzyFutureDisabled\"\n [errorText]=\"\n 'skyux_form_error_fuzzy_date_future_disabled' | skyLibResources\n \"\n />\n }\n\n @if (errors?.['skyFuzzyDate'] && errors?.['skyFuzzyDate']['invalid']) {\n <sky-form-error\n errorName=\"fuzzyInvalidDate\"\n [errorText]=\"'skyux_form_error_fuzzy_date_invalid' | skyLibResources\"\n />\n }\n\n @if (errors?.['skyFuzzyDate'] && errors?.['skyFuzzyDate']['maxDate']) {\n <sky-form-error\n errorName=\"fuzzyMaxDate\"\n [errorText]=\"'skyux_form_error_fuzzy_date_max_date' | skyLibResources\"\n />\n }\n\n @if (errors?.['skyFuzzyDate'] && errors?.['skyFuzzyDate']['minDate']) {\n <sky-form-error\n errorName=\"fuzzyMinDate\"\n [errorText]=\"'skyux_form_error_fuzzy_date_min_date' | skyLibResources\"\n />\n }\n\n @if (errors?.['skyFuzzyDate'] && errors?.['skyFuzzyDate']['yearRequired']) {\n <sky-form-error\n errorName=\"fuzzyYearRequired\"\n [errorText]=\"\n 'skyux_form_error_fuzzy_date_year_required' | skyLibResources\n \"\n />\n }\n\n @if (errors?.['skyEmail']) {\n <sky-form-error\n errorName=\"email\"\n [errorText]=\"'skyux_form_error_email' | skyLibResources\"\n />\n }\n\n @if (errors?.['skyPhoneField']) {\n <sky-form-error\n errorName=\"phone\"\n [errorText]=\"'skyux_form_error_phone' | skyLibResources\"\n />\n }\n\n @if (errors?.['skyTime']) {\n <sky-form-error\n errorName=\"time\"\n [errorText]=\"'skyux_form_error_time' | skyLibResources\"\n />\n }\n\n @if (errors?.['skyUrl']) {\n <sky-form-error\n errorName=\"url\"\n [errorText]=\"'skyux_form_error_url' | skyLibResources\"\n />\n }\n }\n\n @if (touched || dirty) {\n @if (errors?.['maxlength']; as maxLengthError) {\n <sky-form-error\n errorName=\"maxlength\"\n [errorText]=\"\n 'skyux_form_error_maxlength'\n | skyLibResources: labelText : maxLengthError.requiredLength\n \"\n />\n }\n <ng-content />\n }\n}\n", styles: ["sky-status-indicator{display:block;line-height:normal}\n"], dependencies: [{ kind: "ngmodule", type: SkyIdModule }, { kind: "component", type: SkyFormErrorComponent, selector: "sky-form-error", inputs: ["errorName", "errorText"] }, { kind: "ngmodule", type: SkyFormsResourcesModule }, { kind: "pipe", type: i1.SkyLibResourcesPipe, name: "skyLibResources" }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
26
26
  }
27
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.1.2", ngImport: i0, type: SkyFormErrorsComponent, decorators: [{
27
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.3", ngImport: i0, type: SkyFormErrorsComponent, decorators: [{
28
28
  type: Component,
29
- args: [{ selector: 'sky-form-errors', standalone: true, imports: [
30
- CommonModule,
31
- SkyIdModule,
32
- SkyFormErrorComponent,
33
- SkyFormsResourcesModule,
34
- ], changeDetection: ChangeDetectionStrategy.OnPush, template: "<ng-container *ngIf=\"labelText && showErrors\">\n <ng-container *ngIf=\"errors\">\n <sky-form-error\n *ngIf=\"errors['required']\"\n errorName=\"required\"\n [errorText]=\"'skyux_form_error_required' | skyLibResources: labelText\"\n />\n\n <sky-form-error\n *ngIf=\"errors['maxlength'] as maxLengthError\"\n errorName=\"maxlength\"\n [errorText]=\"\n 'skyux_form_error_maxlength'\n | skyLibResources: labelText : maxLengthError.requiredLength\n \"\n />\n\n <sky-form-error\n *ngIf=\"errors['minlength'] as minLengthError\"\n errorName=\"minlength\"\n [errorText]=\"\n 'skyux_form_error_minlength'\n | skyLibResources: labelText : minLengthError.requiredLength\n \"\n />\n\n <sky-form-error\n *ngIf=\"errors['skyDate'] && errors['skyDate']['invalid']\"\n errorName=\"invalidDate\"\n [errorText]=\"'skyux_form_error_date' | skyLibResources\"\n />\n\n <sky-form-error\n *ngIf=\"errors['skyDate'] && errors['skyDate']['minDate']\"\n errorName=\"minDate\"\n [errorText]=\"'skyux_form_error_date_min' | skyLibResources\"\n />\n\n <sky-form-error\n *ngIf=\"errors['skyDate'] && errors['skyDate']['maxDate']\"\n errorName=\"maxDate\"\n [errorText]=\"'skyux_form_error_date_max' | skyLibResources\"\n />\n\n <sky-form-error\n *ngIf=\"errors['skyFuzzyDate'] && errors['skyFuzzyDate']['futureDisabled']\"\n errorName=\"fuzzyFutureDisabled\"\n [errorText]=\"\n 'skyux_form_error_fuzzy_date_future_disabled' | skyLibResources\n \"\n />\n\n <sky-form-error\n *ngIf=\"errors['skyFuzzyDate'] && errors['skyFuzzyDate']['invalid']\"\n errorName=\"fuzzyInvalidDate\"\n [errorText]=\"'skyux_form_error_fuzzy_date_invalid' | skyLibResources\"\n />\n\n <sky-form-error\n *ngIf=\"errors['skyFuzzyDate'] && errors['skyFuzzyDate']['maxDate']\"\n errorName=\"fuzzyMaxDate\"\n [errorText]=\"'skyux_form_error_fuzzy_date_max_date' | skyLibResources\"\n />\n\n <sky-form-error\n *ngIf=\"errors['skyFuzzyDate'] && errors['skyFuzzyDate']['minDate']\"\n errorName=\"fuzzyMinDate\"\n [errorText]=\"'skyux_form_error_fuzzy_date_min_date' | skyLibResources\"\n />\n\n <sky-form-error\n *ngIf=\"errors['skyFuzzyDate'] && errors['skyFuzzyDate']['yearRequired']\"\n errorName=\"fuzzyYearRequired\"\n [errorText]=\"\n 'skyux_form_error_fuzzy_date_year_required' | skyLibResources\n \"\n />\n\n <sky-form-error\n *ngIf=\"errors['skyEmail']\"\n errorName=\"email\"\n [errorText]=\"'skyux_form_error_email' | skyLibResources\"\n />\n\n <sky-form-error\n *ngIf=\"errors['skyPhoneField']\"\n errorName=\"phone\"\n [errorText]=\"'skyux_form_error_phone' | skyLibResources\"\n />\n\n <sky-form-error\n *ngIf=\"errors['skyTime']\"\n errorName=\"time\"\n [errorText]=\"'skyux_form_error_time' | skyLibResources\"\n />\n\n <sky-form-error\n *ngIf=\"errors['skyUrl']\"\n errorName=\"url\"\n [errorText]=\"'skyux_form_error_url' | skyLibResources\"\n />\n </ng-container>\n <ng-content />\n</ng-container>\n", styles: [":host,sky-status-indicator{display:block;line-height:normal}\n"] }]
29
+ args: [{ selector: 'sky-form-errors', standalone: true, imports: [SkyIdModule, SkyFormErrorComponent, SkyFormsResourcesModule], changeDetection: ChangeDetectionStrategy.OnPush, template: "@if (labelText) {\n @if (touched) {\n @if (errors?.['required']) {\n <sky-form-error\n errorName=\"required\"\n [errorText]=\"'skyux_form_error_required' | skyLibResources: labelText\"\n />\n }\n\n @if (errors?.['minlength']; as minLengthError) {\n <sky-form-error\n errorName=\"minlength\"\n [errorText]=\"\n 'skyux_form_error_minlength'\n | skyLibResources: labelText : minLengthError.requiredLength\n \"\n />\n }\n\n @if (errors?.['skyDate'] && errors?.['skyDate']['invalid']) {\n <sky-form-error\n errorName=\"invalidDate\"\n [errorText]=\"'skyux_form_error_date' | skyLibResources\"\n />\n }\n\n @if (errors?.['skyDate'] && errors?.['skyDate']['minDate']) {\n <sky-form-error\n errorName=\"minDate\"\n [errorText]=\"'skyux_form_error_date_min' | skyLibResources\"\n />\n }\n\n @if (errors?.['skyDate'] && errors?.['skyDate']['maxDate']) {\n <sky-form-error\n errorName=\"maxDate\"\n [errorText]=\"'skyux_form_error_date_max' | skyLibResources\"\n />\n }\n\n @if (\n errors?.['skyFuzzyDate'] && errors?.['skyFuzzyDate']['futureDisabled']\n ) {\n <sky-form-error\n errorName=\"fuzzyFutureDisabled\"\n [errorText]=\"\n 'skyux_form_error_fuzzy_date_future_disabled' | skyLibResources\n \"\n />\n }\n\n @if (errors?.['skyFuzzyDate'] && errors?.['skyFuzzyDate']['invalid']) {\n <sky-form-error\n errorName=\"fuzzyInvalidDate\"\n [errorText]=\"'skyux_form_error_fuzzy_date_invalid' | skyLibResources\"\n />\n }\n\n @if (errors?.['skyFuzzyDate'] && errors?.['skyFuzzyDate']['maxDate']) {\n <sky-form-error\n errorName=\"fuzzyMaxDate\"\n [errorText]=\"'skyux_form_error_fuzzy_date_max_date' | skyLibResources\"\n />\n }\n\n @if (errors?.['skyFuzzyDate'] && errors?.['skyFuzzyDate']['minDate']) {\n <sky-form-error\n errorName=\"fuzzyMinDate\"\n [errorText]=\"'skyux_form_error_fuzzy_date_min_date' | skyLibResources\"\n />\n }\n\n @if (errors?.['skyFuzzyDate'] && errors?.['skyFuzzyDate']['yearRequired']) {\n <sky-form-error\n errorName=\"fuzzyYearRequired\"\n [errorText]=\"\n 'skyux_form_error_fuzzy_date_year_required' | skyLibResources\n \"\n />\n }\n\n @if (errors?.['skyEmail']) {\n <sky-form-error\n errorName=\"email\"\n [errorText]=\"'skyux_form_error_email' | skyLibResources\"\n />\n }\n\n @if (errors?.['skyPhoneField']) {\n <sky-form-error\n errorName=\"phone\"\n [errorText]=\"'skyux_form_error_phone' | skyLibResources\"\n />\n }\n\n @if (errors?.['skyTime']) {\n <sky-form-error\n errorName=\"time\"\n [errorText]=\"'skyux_form_error_time' | skyLibResources\"\n />\n }\n\n @if (errors?.['skyUrl']) {\n <sky-form-error\n errorName=\"url\"\n [errorText]=\"'skyux_form_error_url' | skyLibResources\"\n />\n }\n }\n\n @if (touched || dirty) {\n @if (errors?.['maxlength']; as maxLengthError) {\n <sky-form-error\n errorName=\"maxlength\"\n [errorText]=\"\n 'skyux_form_error_maxlength'\n | skyLibResources: labelText : maxLengthError.requiredLength\n \"\n />\n }\n <ng-content />\n }\n}\n", styles: ["sky-status-indicator{display:block;line-height:normal}\n"] }]
35
30
  }], propDecorators: { errors: [{
36
31
  type: Input
37
32
  }], labelText: [{
38
33
  type: Input
39
- }], showErrors: [{
34
+ }], touched: [{
35
+ type: Input,
36
+ args: [{ transform: booleanAttribute }]
37
+ }], dirty: [{
40
38
  type: Input,
41
- args: [{ transform: coerceBooleanProperty }]
39
+ args: [{ transform: booleanAttribute }]
42
40
  }], ariaAtomic: [{
43
41
  type: HostBinding,
44
42
  args: ['attr.aria-atomic']
@@ -49,4 +47,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.1.2", ngImpor
49
47
  type: HostBinding,
50
48
  args: ['attr.aria-relevant']
51
49
  }] } });
52
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZm9ybS1lcnJvcnMuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9jb21wb25lbnRzL2Zvcm1zL3NyYy9saWIvbW9kdWxlcy9mb3JtLWVycm9yL2Zvcm0tZXJyb3JzLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvY29tcG9uZW50cy9mb3Jtcy9zcmMvbGliL21vZHVsZXMvZm9ybS1lcnJvci9mb3JtLWVycm9ycy5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUscUJBQXFCLEVBQUUsTUFBTSx1QkFBdUIsQ0FBQztBQUM5RCxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDL0MsT0FBTyxFQUNMLHVCQUF1QixFQUN2QixTQUFTLEVBQ1QsV0FBVyxFQUNYLEtBQUssR0FDTixNQUFNLGVBQWUsQ0FBQztBQUV2QixPQUFPLEVBQUUsV0FBVyxFQUFFLE1BQU0sYUFBYSxDQUFDO0FBRTFDLE9BQU8sRUFBRSx1QkFBdUIsRUFBRSxNQUFNLHNDQUFzQyxDQUFDO0FBRS9FLE9BQU8sRUFBRSxxQkFBcUIsRUFBRSxNQUFNLHdCQUF3QixDQUFDOzs7O0FBRS9EOztHQUVHO0FBY0gsTUFBTSxPQUFPLHNCQUFzQjtJQWJuQztRQTBCRTs7O1dBR0c7UUFFSSxlQUFVLEdBQUcsSUFBSSxDQUFDO1FBR04sZUFBVSxHQUFHLE1BQU0sQ0FBQztRQUdwQixhQUFRLEdBQUcsV0FBVyxDQUFDO1FBR3ZCLGlCQUFZLEdBQUcsS0FBSyxDQUFDO0tBQ3pDOzhHQTVCWSxzQkFBc0I7a0dBQXRCLHNCQUFzQixnSkFpQmIscUJBQXFCLDRLQ2hEM0MsMnFHQXdHQSx1SERsRkksWUFBWSxrSUFDWixXQUFXLCtCQUNYLHFCQUFxQiw4RkFDckIsdUJBQXVCOzsyRkFNZCxzQkFBc0I7a0JBYmxDLFNBQVM7K0JBQ0UsaUJBQWlCLGNBQ2YsSUFBSSxXQUNQO3dCQUNQLFlBQVk7d0JBQ1osV0FBVzt3QkFDWCxxQkFBcUI7d0JBQ3JCLHVCQUF1QjtxQkFDeEIsbUJBR2dCLHVCQUF1QixDQUFDLE1BQU07OEJBT3hDLE1BQU07c0JBRFosS0FBSztnQkFPQyxTQUFTO3NCQURmLEtBQUs7Z0JBUUMsVUFBVTtzQkFEaEIsS0FBSzt1QkFBQyxFQUFFLFNBQVMsRUFBRSxxQkFBcUIsRUFBRTtnQkFJeEIsVUFBVTtzQkFENUIsV0FBVzt1QkFBQyxrQkFBa0I7Z0JBSVosUUFBUTtzQkFEMUIsV0FBVzt1QkFBQyxnQkFBZ0I7Z0JBSVYsWUFBWTtzQkFEOUIsV0FBVzt1QkFBQyxvQkFBb0IiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBjb2VyY2VCb29sZWFuUHJvcGVydHkgfSBmcm9tICdAYW5ndWxhci9jZGsvY29lcmNpb24nO1xuaW1wb3J0IHsgQ29tbW9uTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcbmltcG9ydCB7XG4gIENoYW5nZURldGVjdGlvblN0cmF0ZWd5LFxuICBDb21wb25lbnQsXG4gIEhvc3RCaW5kaW5nLFxuICBJbnB1dCxcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBWYWxpZGF0aW9uRXJyb3JzIH0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xuaW1wb3J0IHsgU2t5SWRNb2R1bGUgfSBmcm9tICdAc2t5dXgvY29yZSc7XG5cbmltcG9ydCB7IFNreUZvcm1zUmVzb3VyY2VzTW9kdWxlIH0gZnJvbSAnLi4vc2hhcmVkL3NreS1mb3Jtcy1yZXNvdXJjZXMubW9kdWxlJztcblxuaW1wb3J0IHsgU2t5Rm9ybUVycm9yQ29tcG9uZW50IH0gZnJvbSAnLi9mb3JtLWVycm9yLmNvbXBvbmVudCc7XG5cbi8qKlxuICogQGludGVybmFsXG4gKi9cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ3NreS1mb3JtLWVycm9ycycsXG4gIHN0YW5kYWxvbmU6IHRydWUsXG4gIGltcG9ydHM6IFtcbiAgICBDb21tb25Nb2R1bGUsXG4gICAgU2t5SWRNb2R1bGUsXG4gICAgU2t5Rm9ybUVycm9yQ29tcG9uZW50LFxuICAgIFNreUZvcm1zUmVzb3VyY2VzTW9kdWxlLFxuICBdLFxuICB0ZW1wbGF0ZVVybDogJy4vZm9ybS1lcnJvcnMuY29tcG9uZW50Lmh0bWwnLFxuICBzdHlsZVVybHM6IFsnLi9mb3JtLWVycm9ycy5jb21wb25lbnQuc2NzcyddLFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbn0pXG5leHBvcnQgY2xhc3MgU2t5Rm9ybUVycm9yc0NvbXBvbmVudCB7XG4gIC8qKlxuICAgKiBUaGUgdmFsaWRhdGlvbiBlcnJvcnMgZnJvbSB0aGUgZm9ybSBjb250cm9sLlxuICAgKi9cbiAgQElucHV0KClcbiAgcHVibGljIGVycm9yczogVmFsaWRhdGlvbkVycm9ycyB8IG51bGwgfCB1bmRlZmluZWQ7XG5cbiAgLyoqXG4gICAqIElucHV0IGxhYmVsIHRleHQgdG8gZGlzcGxheSBpbiB0aGUgZXJyb3IgbWVzc2FnZXMuXG4gICAqL1xuICBASW5wdXQoKVxuICBwdWJsaWMgbGFiZWxUZXh0OiBzdHJpbmcgfCB1bmRlZmluZWQ7XG5cbiAgLyoqXG4gICAqIEluZGljYXRlcyB3aGV0aGVyIHRvIHNob3cgZXJyb3IgbWVzc2FnZXMsIHdoaWNoIG1pZ2h0IG9ubHkgYmUgdHJ1ZSBpZiB0aGVcbiAgICogZm9ybSBjb250cm9sIGlzIHRvdWNoZWQgb3IgZGlydHkuXG4gICAqL1xuICBASW5wdXQoeyB0cmFuc2Zvcm06IGNvZXJjZUJvb2xlYW5Qcm9wZXJ0eSB9KVxuICBwdWJsaWMgc2hvd0Vycm9ycyA9IHRydWU7XG5cbiAgQEhvc3RCaW5kaW5nKCdhdHRyLmFyaWEtYXRvbWljJylcbiAgcHJvdGVjdGVkIHJlYWRvbmx5IGFyaWFBdG9taWMgPSAndHJ1ZSc7XG5cbiAgQEhvc3RCaW5kaW5nKCdhdHRyLmFyaWEtbGl2ZScpXG4gIHByb3RlY3RlZCByZWFkb25seSBhcmlhTGl2ZSA9ICdhc3NlcnRpdmUnO1xuXG4gIEBIb3N0QmluZGluZygnYXR0ci5hcmlhLXJlbGV2YW50JylcbiAgcHJvdGVjdGVkIHJlYWRvbmx5IGFyaWFSZWxldmFudCA9ICdhbGwnO1xufVxuIiwiPG5nLWNvbnRhaW5lciAqbmdJZj1cImxhYmVsVGV4dCAmJiBzaG93RXJyb3JzXCI+XG4gIDxuZy1jb250YWluZXIgKm5nSWY9XCJlcnJvcnNcIj5cbiAgICA8c2t5LWZvcm0tZXJyb3JcbiAgICAgICpuZ0lmPVwiZXJyb3JzWydyZXF1aXJlZCddXCJcbiAgICAgIGVycm9yTmFtZT1cInJlcXVpcmVkXCJcbiAgICAgIFtlcnJvclRleHRdPVwiJ3NreXV4X2Zvcm1fZXJyb3JfcmVxdWlyZWQnIHwgc2t5TGliUmVzb3VyY2VzOiBsYWJlbFRleHRcIlxuICAgIC8+XG5cbiAgICA8c2t5LWZvcm0tZXJyb3JcbiAgICAgICpuZ0lmPVwiZXJyb3JzWydtYXhsZW5ndGgnXSBhcyBtYXhMZW5ndGhFcnJvclwiXG4gICAgICBlcnJvck5hbWU9XCJtYXhsZW5ndGhcIlxuICAgICAgW2Vycm9yVGV4dF09XCJcbiAgICAgICAgJ3NreXV4X2Zvcm1fZXJyb3JfbWF4bGVuZ3RoJ1xuICAgICAgICAgIHwgc2t5TGliUmVzb3VyY2VzOiBsYWJlbFRleHQgOiBtYXhMZW5ndGhFcnJvci5yZXF1aXJlZExlbmd0aFxuICAgICAgXCJcbiAgICAvPlxuXG4gICAgPHNreS1mb3JtLWVycm9yXG4gICAgICAqbmdJZj1cImVycm9yc1snbWlubGVuZ3RoJ10gYXMgbWluTGVuZ3RoRXJyb3JcIlxuICAgICAgZXJyb3JOYW1lPVwibWlubGVuZ3RoXCJcbiAgICAgIFtlcnJvclRleHRdPVwiXG4gICAgICAgICdza3l1eF9mb3JtX2Vycm9yX21pbmxlbmd0aCdcbiAgICAgICAgICB8IHNreUxpYlJlc291cmNlczogbGFiZWxUZXh0IDogbWluTGVuZ3RoRXJyb3IucmVxdWlyZWRMZW5ndGhcbiAgICAgIFwiXG4gICAgLz5cblxuICAgIDxza3ktZm9ybS1lcnJvclxuICAgICAgKm5nSWY9XCJlcnJvcnNbJ3NreURhdGUnXSAmJiBlcnJvcnNbJ3NreURhdGUnXVsnaW52YWxpZCddXCJcbiAgICAgIGVycm9yTmFtZT1cImludmFsaWREYXRlXCJcbiAgICAgIFtlcnJvclRleHRdPVwiJ3NreXV4X2Zvcm1fZXJyb3JfZGF0ZScgfCBza3lMaWJSZXNvdXJjZXNcIlxuICAgIC8+XG5cbiAgICA8c2t5LWZvcm0tZXJyb3JcbiAgICAgICpuZ0lmPVwiZXJyb3JzWydza3lEYXRlJ10gJiYgZXJyb3JzWydza3lEYXRlJ11bJ21pbkRhdGUnXVwiXG4gICAgICBlcnJvck5hbWU9XCJtaW5EYXRlXCJcbiAgICAgIFtlcnJvclRleHRdPVwiJ3NreXV4X2Zvcm1fZXJyb3JfZGF0ZV9taW4nIHwgc2t5TGliUmVzb3VyY2VzXCJcbiAgICAvPlxuXG4gICAgPHNreS1mb3JtLWVycm9yXG4gICAgICAqbmdJZj1cImVycm9yc1snc2t5RGF0ZSddICYmIGVycm9yc1snc2t5RGF0ZSddWydtYXhEYXRlJ11cIlxuICAgICAgZXJyb3JOYW1lPVwibWF4RGF0ZVwiXG4gICAgICBbZXJyb3JUZXh0XT1cIidza3l1eF9mb3JtX2Vycm9yX2RhdGVfbWF4JyB8IHNreUxpYlJlc291cmNlc1wiXG4gICAgLz5cblxuICAgIDxza3ktZm9ybS1lcnJvclxuICAgICAgKm5nSWY9XCJlcnJvcnNbJ3NreUZ1enp5RGF0ZSddICYmIGVycm9yc1snc2t5RnV6enlEYXRlJ11bJ2Z1dHVyZURpc2FibGVkJ11cIlxuICAgICAgZXJyb3JOYW1lPVwiZnV6enlGdXR1cmVEaXNhYmxlZFwiXG4gICAgICBbZXJyb3JUZXh0XT1cIlxuICAgICAgICAnc2t5dXhfZm9ybV9lcnJvcl9mdXp6eV9kYXRlX2Z1dHVyZV9kaXNhYmxlZCcgfCBza3lMaWJSZXNvdXJjZXNcbiAgICAgIFwiXG4gICAgLz5cblxuICAgIDxza3ktZm9ybS1lcnJvclxuICAgICAgKm5nSWY9XCJlcnJvcnNbJ3NreUZ1enp5RGF0ZSddICYmIGVycm9yc1snc2t5RnV6enlEYXRlJ11bJ2ludmFsaWQnXVwiXG4gICAgICBlcnJvck5hbWU9XCJmdXp6eUludmFsaWREYXRlXCJcbiAgICAgIFtlcnJvclRleHRdPVwiJ3NreXV4X2Zvcm1fZXJyb3JfZnV6enlfZGF0ZV9pbnZhbGlkJyB8IHNreUxpYlJlc291cmNlc1wiXG4gICAgLz5cblxuICAgIDxza3ktZm9ybS1lcnJvclxuICAgICAgKm5nSWY9XCJlcnJvcnNbJ3NreUZ1enp5RGF0ZSddICYmIGVycm9yc1snc2t5RnV6enlEYXRlJ11bJ21heERhdGUnXVwiXG4gICAgICBlcnJvck5hbWU9XCJmdXp6eU1heERhdGVcIlxuICAgICAgW2Vycm9yVGV4dF09XCInc2t5dXhfZm9ybV9lcnJvcl9mdXp6eV9kYXRlX21heF9kYXRlJyB8IHNreUxpYlJlc291cmNlc1wiXG4gICAgLz5cblxuICAgIDxza3ktZm9ybS1lcnJvclxuICAgICAgKm5nSWY9XCJlcnJvcnNbJ3NreUZ1enp5RGF0ZSddICYmIGVycm9yc1snc2t5RnV6enlEYXRlJ11bJ21pbkRhdGUnXVwiXG4gICAgICBlcnJvck5hbWU9XCJmdXp6eU1pbkRhdGVcIlxuICAgICAgW2Vycm9yVGV4dF09XCInc2t5dXhfZm9ybV9lcnJvcl9mdXp6eV9kYXRlX21pbl9kYXRlJyB8IHNreUxpYlJlc291cmNlc1wiXG4gICAgLz5cblxuICAgIDxza3ktZm9ybS1lcnJvclxuICAgICAgKm5nSWY9XCJlcnJvcnNbJ3NreUZ1enp5RGF0ZSddICYmIGVycm9yc1snc2t5RnV6enlEYXRlJ11bJ3llYXJSZXF1aXJlZCddXCJcbiAgICAgIGVycm9yTmFtZT1cImZ1enp5WWVhclJlcXVpcmVkXCJcbiAgICAgIFtlcnJvclRleHRdPVwiXG4gICAgICAgICdza3l1eF9mb3JtX2Vycm9yX2Z1enp5X2RhdGVfeWVhcl9yZXF1aXJlZCcgfCBza3lMaWJSZXNvdXJjZXNcbiAgICAgIFwiXG4gICAgLz5cblxuICAgIDxza3ktZm9ybS1lcnJvclxuICAgICAgKm5nSWY9XCJlcnJvcnNbJ3NreUVtYWlsJ11cIlxuICAgICAgZXJyb3JOYW1lPVwiZW1haWxcIlxuICAgICAgW2Vycm9yVGV4dF09XCInc2t5dXhfZm9ybV9lcnJvcl9lbWFpbCcgfCBza3lMaWJSZXNvdXJjZXNcIlxuICAgIC8+XG5cbiAgICA8c2t5LWZvcm0tZXJyb3JcbiAgICAgICpuZ0lmPVwiZXJyb3JzWydza3lQaG9uZUZpZWxkJ11cIlxuICAgICAgZXJyb3JOYW1lPVwicGhvbmVcIlxuICAgICAgW2Vycm9yVGV4dF09XCInc2t5dXhfZm9ybV9lcnJvcl9waG9uZScgfCBza3lMaWJSZXNvdXJjZXNcIlxuICAgIC8+XG5cbiAgICA8c2t5LWZvcm0tZXJyb3JcbiAgICAgICpuZ0lmPVwiZXJyb3JzWydza3lUaW1lJ11cIlxuICAgICAgZXJyb3JOYW1lPVwidGltZVwiXG4gICAgICBbZXJyb3JUZXh0XT1cIidza3l1eF9mb3JtX2Vycm9yX3RpbWUnIHwgc2t5TGliUmVzb3VyY2VzXCJcbiAgICAvPlxuXG4gICAgPHNreS1mb3JtLWVycm9yXG4gICAgICAqbmdJZj1cImVycm9yc1snc2t5VXJsJ11cIlxuICAgICAgZXJyb3JOYW1lPVwidXJsXCJcbiAgICAgIFtlcnJvclRleHRdPVwiJ3NreXV4X2Zvcm1fZXJyb3JfdXJsJyB8IHNreUxpYlJlc291cmNlc1wiXG4gICAgLz5cbiAgPC9uZy1jb250YWluZXI+XG4gIDxuZy1jb250ZW50IC8+XG48L25nLWNvbnRhaW5lcj5cbiJdfQ==
50
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZm9ybS1lcnJvcnMuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9jb21wb25lbnRzL2Zvcm1zL3NyYy9saWIvbW9kdWxlcy9mb3JtLWVycm9yL2Zvcm0tZXJyb3JzLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvY29tcG9uZW50cy9mb3Jtcy9zcmMvbGliL21vZHVsZXMvZm9ybS1lcnJvci9mb3JtLWVycm9ycy5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQ0wsdUJBQXVCLEVBQ3ZCLFNBQVMsRUFDVCxXQUFXLEVBQ1gsS0FBSyxFQUNMLGdCQUFnQixHQUNqQixNQUFNLGVBQWUsQ0FBQztBQUV2QixPQUFPLEVBQUUsV0FBVyxFQUFFLE1BQU0sYUFBYSxDQUFDO0FBRTFDLE9BQU8sRUFBRSx1QkFBdUIsRUFBRSxNQUFNLHNDQUFzQyxDQUFDO0FBRS9FLE9BQU8sRUFBRSxxQkFBcUIsRUFBRSxNQUFNLHdCQUF3QixDQUFDOzs7QUFFL0Q7O0dBRUc7QUFTSCxNQUFNLE9BQU8sc0JBQXNCO0lBUm5DO1FBcUJFOztXQUVHO1FBRUksWUFBTyxHQUFHLEtBQUssQ0FBQztRQUV2Qjs7V0FFRztRQUVJLFVBQUssR0FBRyxLQUFLLENBQUM7UUFHRixlQUFVLEdBQUcsTUFBTSxDQUFDO1FBR3BCLGFBQVEsR0FBRyxXQUFXLENBQUM7UUFHdkIsaUJBQVksR0FBRyxLQUFLLENBQUM7S0FDekM7OEdBakNZLHNCQUFzQjtrR0FBdEIsc0JBQXNCLHVJQWdCYixnQkFBZ0IsNkJBTWhCLGdCQUFnQiw0S0MvQ3RDLDAzR0EySEEsaUhEdkdZLFdBQVcsK0JBQUUscUJBQXFCLDhGQUFFLHVCQUF1Qjs7MkZBSzFELHNCQUFzQjtrQkFSbEMsU0FBUzsrQkFDRSxpQkFBaUIsY0FDZixJQUFJLFdBQ1AsQ0FBQyxXQUFXLEVBQUUscUJBQXFCLEVBQUUsdUJBQXVCLENBQUMsbUJBR3JELHVCQUF1QixDQUFDLE1BQU07OEJBT3hDLE1BQU07c0JBRFosS0FBSztnQkFPQyxTQUFTO3NCQURmLEtBQUs7Z0JBT0MsT0FBTztzQkFEYixLQUFLO3VCQUFDLEVBQUUsU0FBUyxFQUFFLGdCQUFnQixFQUFFO2dCQU8vQixLQUFLO3NCQURYLEtBQUs7dUJBQUMsRUFBRSxTQUFTLEVBQUUsZ0JBQWdCLEVBQUU7Z0JBSW5CLFVBQVU7c0JBRDVCLFdBQVc7dUJBQUMsa0JBQWtCO2dCQUlaLFFBQVE7c0JBRDFCLFdBQVc7dUJBQUMsZ0JBQWdCO2dCQUlWLFlBQVk7c0JBRDlCLFdBQVc7dUJBQUMsb0JBQW9CIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcbiAgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksXG4gIENvbXBvbmVudCxcbiAgSG9zdEJpbmRpbmcsXG4gIElucHV0LFxuICBib29sZWFuQXR0cmlidXRlLFxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IFZhbGlkYXRpb25FcnJvcnMgfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XG5pbXBvcnQgeyBTa3lJZE1vZHVsZSB9IGZyb20gJ0Bza3l1eC9jb3JlJztcblxuaW1wb3J0IHsgU2t5Rm9ybXNSZXNvdXJjZXNNb2R1bGUgfSBmcm9tICcuLi9zaGFyZWQvc2t5LWZvcm1zLXJlc291cmNlcy5tb2R1bGUnO1xuXG5pbXBvcnQgeyBTa3lGb3JtRXJyb3JDb21wb25lbnQgfSBmcm9tICcuL2Zvcm0tZXJyb3IuY29tcG9uZW50JztcblxuLyoqXG4gKiBAaW50ZXJuYWxcbiAqL1xuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnc2t5LWZvcm0tZXJyb3JzJyxcbiAgc3RhbmRhbG9uZTogdHJ1ZSxcbiAgaW1wb3J0czogW1NreUlkTW9kdWxlLCBTa3lGb3JtRXJyb3JDb21wb25lbnQsIFNreUZvcm1zUmVzb3VyY2VzTW9kdWxlXSxcbiAgdGVtcGxhdGVVcmw6ICcuL2Zvcm0tZXJyb3JzLmNvbXBvbmVudC5odG1sJyxcbiAgc3R5bGVVcmxzOiBbJy4vZm9ybS1lcnJvcnMuY29tcG9uZW50LnNjc3MnXSxcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG59KVxuZXhwb3J0IGNsYXNzIFNreUZvcm1FcnJvcnNDb21wb25lbnQge1xuICAvKipcbiAgICogVGhlIHZhbGlkYXRpb24gZXJyb3JzIGZyb20gdGhlIGZvcm0gY29udHJvbC5cbiAgICovXG4gIEBJbnB1dCgpXG4gIHB1YmxpYyBlcnJvcnM6IFZhbGlkYXRpb25FcnJvcnMgfCBudWxsIHwgdW5kZWZpbmVkO1xuXG4gIC8qKlxuICAgKiBJbnB1dCBsYWJlbCB0ZXh0IHRvIGRpc3BsYXkgaW4gdGhlIGVycm9yIG1lc3NhZ2VzLlxuICAgKi9cbiAgQElucHV0KClcbiAgcHVibGljIGxhYmVsVGV4dDogc3RyaW5nIHwgdW5kZWZpbmVkO1xuXG4gIC8qKlxuICAgKiBJbmRpY2F0ZXMgd2hldGhlciB0aGUgcGFyZW50IGNvbXBvbmVudCdzIGNvbnRyb2wgaXMgdG91Y2hlZFxuICAgKi9cbiAgQElucHV0KHsgdHJhbnNmb3JtOiBib29sZWFuQXR0cmlidXRlIH0pXG4gIHB1YmxpYyB0b3VjaGVkID0gZmFsc2U7XG5cbiAgLyoqXG4gICAqIEluZGljYXRlcyB3aGV0aGVyIHRoZSBwYXJlbnQgY29tcG9uZW50J3MgY29udHJvbCBpcyBkaXJ0eVxuICAgKi9cbiAgQElucHV0KHsgdHJhbnNmb3JtOiBib29sZWFuQXR0cmlidXRlIH0pXG4gIHB1YmxpYyBkaXJ0eSA9IGZhbHNlO1xuXG4gIEBIb3N0QmluZGluZygnYXR0ci5hcmlhLWF0b21pYycpXG4gIHByb3RlY3RlZCByZWFkb25seSBhcmlhQXRvbWljID0gJ3RydWUnO1xuXG4gIEBIb3N0QmluZGluZygnYXR0ci5hcmlhLWxpdmUnKVxuICBwcm90ZWN0ZWQgcmVhZG9ubHkgYXJpYUxpdmUgPSAnYXNzZXJ0aXZlJztcblxuICBASG9zdEJpbmRpbmcoJ2F0dHIuYXJpYS1yZWxldmFudCcpXG4gIHByb3RlY3RlZCByZWFkb25seSBhcmlhUmVsZXZhbnQgPSAnYWxsJztcbn1cbiIsIkBpZiAobGFiZWxUZXh0KSB7XG4gIEBpZiAodG91Y2hlZCkge1xuICAgIEBpZiAoZXJyb3JzPy5bJ3JlcXVpcmVkJ10pIHtcbiAgICAgIDxza3ktZm9ybS1lcnJvclxuICAgICAgICBlcnJvck5hbWU9XCJyZXF1aXJlZFwiXG4gICAgICAgIFtlcnJvclRleHRdPVwiJ3NreXV4X2Zvcm1fZXJyb3JfcmVxdWlyZWQnIHwgc2t5TGliUmVzb3VyY2VzOiBsYWJlbFRleHRcIlxuICAgICAgLz5cbiAgICB9XG5cbiAgICBAaWYgKGVycm9ycz8uWydtaW5sZW5ndGgnXTsgYXMgbWluTGVuZ3RoRXJyb3IpIHtcbiAgICAgIDxza3ktZm9ybS1lcnJvclxuICAgICAgICBlcnJvck5hbWU9XCJtaW5sZW5ndGhcIlxuICAgICAgICBbZXJyb3JUZXh0XT1cIlxuICAgICAgICAgICdza3l1eF9mb3JtX2Vycm9yX21pbmxlbmd0aCdcbiAgICAgICAgICAgIHwgc2t5TGliUmVzb3VyY2VzOiBsYWJlbFRleHQgOiBtaW5MZW5ndGhFcnJvci5yZXF1aXJlZExlbmd0aFxuICAgICAgICBcIlxuICAgICAgLz5cbiAgICB9XG5cbiAgICBAaWYgKGVycm9ycz8uWydza3lEYXRlJ10gJiYgZXJyb3JzPy5bJ3NreURhdGUnXVsnaW52YWxpZCddKSB7XG4gICAgICA8c2t5LWZvcm0tZXJyb3JcbiAgICAgICAgZXJyb3JOYW1lPVwiaW52YWxpZERhdGVcIlxuICAgICAgICBbZXJyb3JUZXh0XT1cIidza3l1eF9mb3JtX2Vycm9yX2RhdGUnIHwgc2t5TGliUmVzb3VyY2VzXCJcbiAgICAgIC8+XG4gICAgfVxuXG4gICAgQGlmIChlcnJvcnM/Llsnc2t5RGF0ZSddICYmIGVycm9ycz8uWydza3lEYXRlJ11bJ21pbkRhdGUnXSkge1xuICAgICAgPHNreS1mb3JtLWVycm9yXG4gICAgICAgIGVycm9yTmFtZT1cIm1pbkRhdGVcIlxuICAgICAgICBbZXJyb3JUZXh0XT1cIidza3l1eF9mb3JtX2Vycm9yX2RhdGVfbWluJyB8IHNreUxpYlJlc291cmNlc1wiXG4gICAgICAvPlxuICAgIH1cblxuICAgIEBpZiAoZXJyb3JzPy5bJ3NreURhdGUnXSAmJiBlcnJvcnM/Llsnc2t5RGF0ZSddWydtYXhEYXRlJ10pIHtcbiAgICAgIDxza3ktZm9ybS1lcnJvclxuICAgICAgICBlcnJvck5hbWU9XCJtYXhEYXRlXCJcbiAgICAgICAgW2Vycm9yVGV4dF09XCInc2t5dXhfZm9ybV9lcnJvcl9kYXRlX21heCcgfCBza3lMaWJSZXNvdXJjZXNcIlxuICAgICAgLz5cbiAgICB9XG5cbiAgICBAaWYgKFxuICAgICAgZXJyb3JzPy5bJ3NreUZ1enp5RGF0ZSddICYmIGVycm9ycz8uWydza3lGdXp6eURhdGUnXVsnZnV0dXJlRGlzYWJsZWQnXVxuICAgICkge1xuICAgICAgPHNreS1mb3JtLWVycm9yXG4gICAgICAgIGVycm9yTmFtZT1cImZ1enp5RnV0dXJlRGlzYWJsZWRcIlxuICAgICAgICBbZXJyb3JUZXh0XT1cIlxuICAgICAgICAgICdza3l1eF9mb3JtX2Vycm9yX2Z1enp5X2RhdGVfZnV0dXJlX2Rpc2FibGVkJyB8IHNreUxpYlJlc291cmNlc1xuICAgICAgICBcIlxuICAgICAgLz5cbiAgICB9XG5cbiAgICBAaWYgKGVycm9ycz8uWydza3lGdXp6eURhdGUnXSAmJiBlcnJvcnM/Llsnc2t5RnV6enlEYXRlJ11bJ2ludmFsaWQnXSkge1xuICAgICAgPHNreS1mb3JtLWVycm9yXG4gICAgICAgIGVycm9yTmFtZT1cImZ1enp5SW52YWxpZERhdGVcIlxuICAgICAgICBbZXJyb3JUZXh0XT1cIidza3l1eF9mb3JtX2Vycm9yX2Z1enp5X2RhdGVfaW52YWxpZCcgfCBza3lMaWJSZXNvdXJjZXNcIlxuICAgICAgLz5cbiAgICB9XG5cbiAgICBAaWYgKGVycm9ycz8uWydza3lGdXp6eURhdGUnXSAmJiBlcnJvcnM/Llsnc2t5RnV6enlEYXRlJ11bJ21heERhdGUnXSkge1xuICAgICAgPHNreS1mb3JtLWVycm9yXG4gICAgICAgIGVycm9yTmFtZT1cImZ1enp5TWF4RGF0ZVwiXG4gICAgICAgIFtlcnJvclRleHRdPVwiJ3NreXV4X2Zvcm1fZXJyb3JfZnV6enlfZGF0ZV9tYXhfZGF0ZScgfCBza3lMaWJSZXNvdXJjZXNcIlxuICAgICAgLz5cbiAgICB9XG5cbiAgICBAaWYgKGVycm9ycz8uWydza3lGdXp6eURhdGUnXSAmJiBlcnJvcnM/Llsnc2t5RnV6enlEYXRlJ11bJ21pbkRhdGUnXSkge1xuICAgICAgPHNreS1mb3JtLWVycm9yXG4gICAgICAgIGVycm9yTmFtZT1cImZ1enp5TWluRGF0ZVwiXG4gICAgICAgIFtlcnJvclRleHRdPVwiJ3NreXV4X2Zvcm1fZXJyb3JfZnV6enlfZGF0ZV9taW5fZGF0ZScgfCBza3lMaWJSZXNvdXJjZXNcIlxuICAgICAgLz5cbiAgICB9XG5cbiAgICBAaWYgKGVycm9ycz8uWydza3lGdXp6eURhdGUnXSAmJiBlcnJvcnM/Llsnc2t5RnV6enlEYXRlJ11bJ3llYXJSZXF1aXJlZCddKSB7XG4gICAgICA8c2t5LWZvcm0tZXJyb3JcbiAgICAgICAgZXJyb3JOYW1lPVwiZnV6enlZZWFyUmVxdWlyZWRcIlxuICAgICAgICBbZXJyb3JUZXh0XT1cIlxuICAgICAgICAgICdza3l1eF9mb3JtX2Vycm9yX2Z1enp5X2RhdGVfeWVhcl9yZXF1aXJlZCcgfCBza3lMaWJSZXNvdXJjZXNcbiAgICAgICAgXCJcbiAgICAgIC8+XG4gICAgfVxuXG4gICAgQGlmIChlcnJvcnM/Llsnc2t5RW1haWwnXSkge1xuICAgICAgPHNreS1mb3JtLWVycm9yXG4gICAgICAgIGVycm9yTmFtZT1cImVtYWlsXCJcbiAgICAgICAgW2Vycm9yVGV4dF09XCInc2t5dXhfZm9ybV9lcnJvcl9lbWFpbCcgfCBza3lMaWJSZXNvdXJjZXNcIlxuICAgICAgLz5cbiAgICB9XG5cbiAgICBAaWYgKGVycm9ycz8uWydza3lQaG9uZUZpZWxkJ10pIHtcbiAgICAgIDxza3ktZm9ybS1lcnJvclxuICAgICAgICBlcnJvck5hbWU9XCJwaG9uZVwiXG4gICAgICAgIFtlcnJvclRleHRdPVwiJ3NreXV4X2Zvcm1fZXJyb3JfcGhvbmUnIHwgc2t5TGliUmVzb3VyY2VzXCJcbiAgICAgIC8+XG4gICAgfVxuXG4gICAgQGlmIChlcnJvcnM/Llsnc2t5VGltZSddKSB7XG4gICAgICA8c2t5LWZvcm0tZXJyb3JcbiAgICAgICAgZXJyb3JOYW1lPVwidGltZVwiXG4gICAgICAgIFtlcnJvclRleHRdPVwiJ3NreXV4X2Zvcm1fZXJyb3JfdGltZScgfCBza3lMaWJSZXNvdXJjZXNcIlxuICAgICAgLz5cbiAgICB9XG5cbiAgICBAaWYgKGVycm9ycz8uWydza3lVcmwnXSkge1xuICAgICAgPHNreS1mb3JtLWVycm9yXG4gICAgICAgIGVycm9yTmFtZT1cInVybFwiXG4gICAgICAgIFtlcnJvclRleHRdPVwiJ3NreXV4X2Zvcm1fZXJyb3JfdXJsJyB8IHNreUxpYlJlc291cmNlc1wiXG4gICAgICAvPlxuICAgIH1cbiAgfVxuXG4gIEBpZiAodG91Y2hlZCB8fCBkaXJ0eSkge1xuICAgIEBpZiAoZXJyb3JzPy5bJ21heGxlbmd0aCddOyBhcyBtYXhMZW5ndGhFcnJvcikge1xuICAgICAgPHNreS1mb3JtLWVycm9yXG4gICAgICAgIGVycm9yTmFtZT1cIm1heGxlbmd0aFwiXG4gICAgICAgIFtlcnJvclRleHRdPVwiXG4gICAgICAgICAgJ3NreXV4X2Zvcm1fZXJyb3JfbWF4bGVuZ3RoJ1xuICAgICAgICAgICAgfCBza3lMaWJSZXNvdXJjZXM6IGxhYmVsVGV4dCA6IG1heExlbmd0aEVycm9yLnJlcXVpcmVkTGVuZ3RoXG4gICAgICAgIFwiXG4gICAgICAvPlxuICAgIH1cbiAgICA8bmctY29udGVudCAvPlxuICB9XG59XG4iXX0=
@@ -6,11 +6,11 @@ import * as i0 from "@angular/core";
6
6
  * @internal
7
7
  */
8
8
  export class SkyFormErrorsModule {
9
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.1.2", ngImport: i0, type: SkyFormErrorsModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
10
- static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "18.1.2", ngImport: i0, type: SkyFormErrorsModule, imports: [SkyFormErrorsComponent, SkyFormErrorComponent], exports: [SkyFormErrorsComponent] }); }
11
- static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "18.1.2", ngImport: i0, type: SkyFormErrorsModule, imports: [SkyFormErrorsComponent, SkyFormErrorComponent] }); }
9
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.3", ngImport: i0, type: SkyFormErrorsModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
10
+ static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "18.2.3", ngImport: i0, type: SkyFormErrorsModule, imports: [SkyFormErrorsComponent, SkyFormErrorComponent], exports: [SkyFormErrorsComponent] }); }
11
+ static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "18.2.3", ngImport: i0, type: SkyFormErrorsModule, imports: [SkyFormErrorsComponent, SkyFormErrorComponent] }); }
12
12
  }
13
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.1.2", ngImport: i0, type: SkyFormErrorsModule, decorators: [{
13
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.3", ngImport: i0, type: SkyFormErrorsModule, decorators: [{
14
14
  type: NgModule,
15
15
  args: [{
16
16
  imports: [SkyFormErrorsComponent, SkyFormErrorComponent],
@@ -54,10 +54,10 @@ export class SkyInputBoxAdapterService {
54
54
  this.#renderer.setAttribute(inputEl, ARIA_DESCRIBEDBY_ATTR, describedByIds.join(' '));
55
55
  }
56
56
  }
57
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.1.2", ngImport: i0, type: SkyInputBoxAdapterService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
58
- static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "18.1.2", ngImport: i0, type: SkyInputBoxAdapterService }); }
57
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.3", ngImport: i0, type: SkyInputBoxAdapterService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
58
+ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "18.2.3", ngImport: i0, type: SkyInputBoxAdapterService }); }
59
59
  }
60
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.1.2", ngImport: i0, type: SkyInputBoxAdapterService, decorators: [{
60
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.3", ngImport: i0, type: SkyInputBoxAdapterService, decorators: [{
61
61
  type: Injectable
62
62
  }] });
63
63
  //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5wdXQtYm94LWFkYXB0ZXIuc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvY29tcG9uZW50cy9mb3Jtcy9zcmMvbGliL21vZHVsZXMvaW5wdXQtYm94L2lucHV0LWJveC1hZGFwdGVyLnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUVMLFVBQVUsRUFDVixnQkFBZ0IsRUFDaEIsTUFBTSxHQUNQLE1BQU0sZUFBZSxDQUFDOztBQUV2QixNQUFNLHFCQUFxQixHQUFHLGtCQUFrQixDQUFDO0FBRWpEOztHQUVHO0FBRUgsTUFBTSxPQUFPLHlCQUF5QjtJQUNwQyxTQUFTLEdBQUcsTUFBTSxDQUFDLGdCQUFnQixDQUFDLENBQUMsY0FBYyxDQUFDLFNBQVMsRUFBRSxJQUFJLENBQUMsQ0FBQztJQUU5RCxZQUFZLENBQUMsS0FBaUI7UUFDbkMsTUFBTSxPQUFPLEdBQUcsS0FBSyxDQUFDLGFBQWEsQ0FBQyxhQUFhLENBQUMsbUJBQW1CLENBQUMsQ0FBQztRQUN2RSwwQkFBMEI7UUFDMUIsSUFBSSxPQUFPLEVBQUUsQ0FBQztZQUNaLE9BQU8sQ0FBQyxLQUFLLEVBQUUsQ0FBQztRQUNsQixDQUFDO0lBQ0gsQ0FBQztJQUVEOztPQUVHO0lBQ0ksb0JBQW9CLENBQUMsS0FBaUI7UUFDM0MsT0FBTyxLQUFLLENBQUMsYUFBYSxDQUFDLGFBQWEsQ0FBQyxtQkFBbUIsQ0FBQyxDQUFDO0lBQ2hFLENBQUM7SUFFRDs7T0FFRztJQUNJLGdCQUFnQixDQUFDLEVBQWU7UUFDckMsSUFBSSxFQUFFLEVBQUUsQ0FBQztZQUNQLE9BQU8sQ0FDTCxFQUFFLEtBQUssUUFBUSxDQUFDLGFBQWEsSUFBSSxFQUFFLENBQUMsUUFBUSxDQUFDLFFBQVEsQ0FBQyxhQUFhLENBQUMsQ0FDckUsQ0FBQztRQUNKLENBQUM7UUFDRCxPQUFPLEtBQUssQ0FBQztJQUNmLENBQUM7SUFFTSxpQkFBaUIsQ0FDdEIsUUFBb0IsRUFDcEIsVUFBa0IsRUFDbEIsUUFBNEI7UUFFNUIsTUFBTSxPQUFPLEdBQUcsUUFBUSxDQUFDLGFBQTRCLENBQUM7UUFFdEQsTUFBTSxjQUFjLEdBQ2xCLE9BQU87YUFDSixZQUFZLENBQUMscUJBQXFCLENBQUM7WUFDcEMsRUFBRSxLQUFLLENBQUMsR0FBRyxDQUFDO2FBQ1gsR0FBRyxDQUFDLENBQUMsRUFBRSxFQUFFLEVBQUUsQ0FBQyxFQUFFLENBQUMsSUFBSSxFQUFFLENBQUMsSUFBSSxFQUFFLENBQUM7UUFFbEMsTUFBTSxlQUFlLEdBQUcsY0FBYyxDQUFDLE9BQU8sQ0FBQyxVQUFVLENBQUMsQ0FBQztRQUMzRCxNQUFNLGFBQWEsR0FBRyxjQUFjLENBQUMsTUFBTSxDQUFDO1FBRTVDLElBQUksUUFBUSxJQUFJLGVBQWUsR0FBRyxDQUFDLEVBQUUsQ0FBQztZQUNwQyxjQUFjLENBQUMsSUFBSSxDQUFDLFVBQVUsQ0FBQyxDQUFDO1FBQ2xDLENBQUM7YUFBTSxJQUFJLENBQUMsUUFBUSxJQUFJLGVBQWUsSUFBSSxDQUFDLEVBQUUsQ0FBQztZQUM3QyxjQUFjLENBQUMsTUFBTSxDQUFDLGVBQWUsRUFBRSxDQUFDLENBQUMsQ0FBQztRQUM1QyxDQUFDO1FBRUQsSUFBSSxjQUFjLENBQUMsTUFBTSxLQUFLLGFBQWEsRUFBRSxDQUFDO1lBQzVDLElBQUksQ0FBQyxrQkFBa0IsQ0FBQyxPQUFPLEVBQUUsY0FBYyxDQUFDLENBQUM7UUFDbkQsQ0FBQztJQUNILENBQUM7SUFFRCxrQkFBa0IsQ0FBQyxPQUFvQixFQUFFLGNBQXdCO1FBQy9ELElBQUksY0FBYyxDQUFDLE1BQU0sS0FBSyxDQUFDLEVBQUUsQ0FBQztZQUNoQyxJQUFJLENBQUMsU0FBUyxDQUFDLGVBQWUsQ0FBQyxPQUFPLEVBQUUscUJBQXFCLENBQUMsQ0FBQztRQUNqRSxDQUFDO2FBQU0sQ0FBQztZQUNOLElBQUksQ0FBQyxTQUFTLENBQUMsWUFBWSxDQUN6QixPQUFPLEVBQ1AscUJBQXFCLEVBQ3JCLGNBQWMsQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLENBQ3pCLENBQUM7UUFDSixDQUFDO0lBQ0gsQ0FBQzs4R0FuRVUseUJBQXlCO2tIQUF6Qix5QkFBeUI7OzJGQUF6Qix5QkFBeUI7a0JBRHJDLFVBQVUiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xuICBFbGVtZW50UmVmLFxuICBJbmplY3RhYmxlLFxuICBSZW5kZXJlckZhY3RvcnkyLFxuICBpbmplY3QsXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuXG5jb25zdCBBUklBX0RFU0NSSUJFREJZX0FUVFIgPSAnYXJpYS1kZXNjcmliZWRieSc7XG5cbi8qKlxuICogQGludGVybmFsXG4gKi9cbkBJbmplY3RhYmxlKClcbmV4cG9ydCBjbGFzcyBTa3lJbnB1dEJveEFkYXB0ZXJTZXJ2aWNlIHtcbiAgI3JlbmRlcmVyID0gaW5qZWN0KFJlbmRlcmVyRmFjdG9yeTIpLmNyZWF0ZVJlbmRlcmVyKHVuZGVmaW5lZCwgbnVsbCk7XG5cbiAgcHVibGljIGZvY3VzQ29udHJvbChlbFJlZjogRWxlbWVudFJlZik6IHZvaWQge1xuICAgIGNvbnN0IGNvbnRyb2wgPSBlbFJlZi5uYXRpdmVFbGVtZW50LnF1ZXJ5U2VsZWN0b3IoJy5za3ktZm9ybS1jb250cm9sJyk7XG4gICAgLyogaXN0YW5idWwgaWdub3JlIGVsc2UgKi9cbiAgICBpZiAoY29udHJvbCkge1xuICAgICAgY29udHJvbC5mb2N1cygpO1xuICAgIH1cbiAgfVxuXG4gIC8qKlxuICAgKiBSZXR1cm5zIHRoZSBpbmxpbmUgaGVscCBlbGVtZW50LlxuICAgKi9cbiAgcHVibGljIGdldElubGluZUhlbHBFbGVtZW50KGVsUmVmOiBFbGVtZW50UmVmKTogSFRNTEVsZW1lbnQge1xuICAgIHJldHVybiBlbFJlZi5uYXRpdmVFbGVtZW50LnF1ZXJ5U2VsZWN0b3IoJy5za3ktY29udHJvbC1oZWxwJyk7XG4gIH1cblxuICAvKipcbiAgICogUmV0dXJucyB0cnVlIGlmIHRoZSBwcm92aWRlZCBlbGVtZW50IGNvbnRhaW5zIHRoZSBmb2N1c2VkIGVsZW1lbnQuXG4gICAqL1xuICBwdWJsaWMgaXNGb2N1c0luRWxlbWVudChlbDogSFRNTEVsZW1lbnQpOiBib29sZWFuIHtcbiAgICBpZiAoZWwpIHtcbiAgICAgIHJldHVybiAoXG4gICAgICAgIGVsID09PSBkb2N1bWVudC5hY3RpdmVFbGVtZW50IHx8IGVsLmNvbnRhaW5zKGRvY3VtZW50LmFjdGl2ZUVsZW1lbnQpXG4gICAgICApO1xuICAgIH1cbiAgICByZXR1cm4gZmFsc2U7XG4gIH1cblxuICBwdWJsaWMgdXBkYXRlRGVzY3JpYmVkQnkoXG4gICAgaW5wdXRSZWY6IEVsZW1lbnRSZWYsXG4gICAgaGludFRleHRJZDogc3RyaW5nLFxuICAgIGhpbnRUZXh0OiBzdHJpbmcgfCB1bmRlZmluZWQsXG4gICk6IHZvaWQge1xuICAgIGNvbnN0IGlucHV0RWwgPSBpbnB1dFJlZi5uYXRpdmVFbGVtZW50IGFzIEhUTUxFbGVtZW50O1xuXG4gICAgY29uc3QgZGVzY3JpYmVkQnlJZHMgPVxuICAgICAgaW5wdXRFbFxuICAgICAgICAuZ2V0QXR0cmlidXRlKEFSSUFfREVTQ1JJQkVEQllfQVRUUilcbiAgICAgICAgPy5zcGxpdCgnICcpXG4gICAgICAgIC5tYXAoKGlkKSA9PiBpZC50cmltKCkpID8/IFtdO1xuXG4gICAgY29uc3QgaGludFRleHRJZEluZGV4ID0gZGVzY3JpYmVkQnlJZHMuaW5kZXhPZihoaW50VGV4dElkKTtcbiAgICBjb25zdCBwcmV2aW91c0NvdW50ID0gZGVzY3JpYmVkQnlJZHMubGVuZ3RoO1xuXG4gICAgaWYgKGhpbnRUZXh0ICYmIGhpbnRUZXh0SWRJbmRleCA8IDApIHtcbiAgICAgIGRlc2NyaWJlZEJ5SWRzLnB1c2goaGludFRleHRJZCk7XG4gICAgfSBlbHNlIGlmICghaGludFRleHQgJiYgaGludFRleHRJZEluZGV4ID49IDApIHtcbiAgICAgIGRlc2NyaWJlZEJ5SWRzLnNwbGljZShoaW50VGV4dElkSW5kZXgsIDEpO1xuICAgIH1cblxuICAgIGlmIChkZXNjcmliZWRCeUlkcy5sZW5ndGggIT09IHByZXZpb3VzQ291bnQpIHtcbiAgICAgIHRoaXMuI3NldERlc2NyaWJlZEJ5SWRzKGlucHV0RWwsIGRlc2NyaWJlZEJ5SWRzKTtcbiAgICB9XG4gIH1cblxuICAjc2V0RGVzY3JpYmVkQnlJZHMoaW5wdXRFbDogSFRNTEVsZW1lbnQsIGRlc2NyaWJlZEJ5SWRzOiBzdHJpbmdbXSk6IHZvaWQge1xuICAgIGlmIChkZXNjcmliZWRCeUlkcy5sZW5ndGggPT09IDApIHtcbiAgICAgIHRoaXMuI3JlbmRlcmVyLnJlbW92ZUF0dHJpYnV0ZShpbnB1dEVsLCBBUklBX0RFU0NSSUJFREJZX0FUVFIpO1xuICAgIH0gZWxzZSB7XG4gICAgICB0aGlzLiNyZW5kZXJlci5zZXRBdHRyaWJ1dGUoXG4gICAgICAgIGlucHV0RWwsXG4gICAgICAgIEFSSUFfREVTQ1JJQkVEQllfQVRUUixcbiAgICAgICAgZGVzY3JpYmVkQnlJZHMuam9pbignICcpLFxuICAgICAgKTtcbiAgICB9XG4gIH1cbn1cbiJdfQ==
@@ -13,10 +13,10 @@ export class SkyInputBoxControlDirective {
13
13
  }
14
14
  #_autocomplete;
15
15
  #hostSvc = inject(SkyInputBoxHostService, { optional: true });
16
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.1.2", ngImport: i0, type: SkyInputBoxControlDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
17
- static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "18.1.2", type: SkyInputBoxControlDirective, isStandalone: true, selector: "input:not([skyId]):not(.sky-form-control),select:not([skyId]):not(.sky-form-control),textarea:not([skyId]):not(.sky-form-control)", inputs: { autocomplete: "autocomplete" }, host: { properties: { "autocomplete": "this.autocomplete" } }, ngImport: i0 }); }
16
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.3", ngImport: i0, type: SkyInputBoxControlDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
17
+ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "18.2.3", type: SkyInputBoxControlDirective, isStandalone: true, selector: "input:not([skyId]):not(.sky-form-control),select:not([skyId]):not(.sky-form-control),textarea:not([skyId]):not(.sky-form-control)", inputs: { autocomplete: "autocomplete" }, host: { properties: { "autocomplete": "this.autocomplete" } }, ngImport: i0 }); }
18
18
  }
19
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.1.2", ngImport: i0, type: SkyInputBoxControlDirective, decorators: [{
19
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.3", ngImport: i0, type: SkyInputBoxControlDirective, decorators: [{
20
20
  type: Directive,
21
21
  args: [{
22
22
  selector:
@@ -10,10 +10,10 @@ export class SkyInputBoxHintTextPipe {
10
10
  }
11
11
  return hintText || hostHintText;
12
12
  }
13
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.1.2", ngImport: i0, type: SkyInputBoxHintTextPipe, deps: [], target: i0.ɵɵFactoryTarget.Pipe }); }
14
- static { this.ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "14.0.0", version: "18.1.2", ngImport: i0, type: SkyInputBoxHintTextPipe, isStandalone: true, name: "skyInputBoxHintText" }); }
13
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.3", ngImport: i0, type: SkyInputBoxHintTextPipe, deps: [], target: i0.ɵɵFactoryTarget.Pipe }); }
14
+ static { this.ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "14.0.0", version: "18.2.3", ngImport: i0, type: SkyInputBoxHintTextPipe, isStandalone: true, name: "skyInputBoxHintText" }); }
15
15
  }
16
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.1.2", ngImport: i0, type: SkyInputBoxHintTextPipe, decorators: [{
16
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.3", ngImport: i0, type: SkyInputBoxHintTextPipe, decorators: [{
17
17
  type: Pipe,
18
18
  args: [{
19
19
  standalone: true,
@@ -1,10 +1,16 @@
1
1
  import { Injectable } from '@angular/core';
2
+ import { BehaviorSubject } from 'rxjs';
2
3
  import * as i0 from "@angular/core";
3
4
  /**
4
5
  * @internal
5
6
  */
6
7
  export class SkyInputBoxHostService {
8
+ constructor() {
9
+ this.#requiredSubject = new BehaviorSubject(false);
10
+ this.required = this.#requiredSubject.asObservable();
11
+ }
7
12
  #host;
13
+ #requiredSubject;
8
14
  get controlId() {
9
15
  return this.#host?.controlId ?? '';
10
16
  }
@@ -22,6 +28,9 @@ export class SkyInputBoxHostService {
22
28
  this.#host = host;
23
29
  this.#ariaDescribedBy = host.ariaDescribedBy.asObservable();
24
30
  }
31
+ ngOnDestroy() {
32
+ this.#requiredSubject.complete();
33
+ }
25
34
  populate(args) {
26
35
  if (!this.#host) {
27
36
  throw new Error('Cannot populate the input box because `SkyInputBoxHostService` has not yet been initialized. Try running the `populate` method within an Angular lifecycle hook, such as `ngOnInit`.');
@@ -46,10 +55,18 @@ export class SkyInputBoxHostService {
46
55
  }
47
56
  this.#host.setHintTextScreenReaderOnly(hide);
48
57
  }
49
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.1.2", ngImport: i0, type: SkyInputBoxHostService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
50
- static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "18.1.2", ngImport: i0, type: SkyInputBoxHostService }); }
58
+ /**
59
+ * Set required so that input box displays the label correctly. When the input is supplied by the consumer it is a content
60
+ * child that input box can read required from and this is unnecessary. When the input is supplied internally by the
61
+ * component the input box does not have a ref to it, so the component needs to inform the input box of its required state.
62
+ */
63
+ setRequired(required) {
64
+ this.#requiredSubject.next(required);
65
+ }
66
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.3", ngImport: i0, type: SkyInputBoxHostService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
67
+ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "18.2.3", ngImport: i0, type: SkyInputBoxHostService }); }
51
68
  }
52
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.1.2", ngImport: i0, type: SkyInputBoxHostService, decorators: [{
69
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.3", ngImport: i0, type: SkyInputBoxHostService, decorators: [{
53
70
  type: Injectable
54
71
  }] });
55
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5wdXQtYm94LWhvc3Quc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvY29tcG9uZW50cy9mb3Jtcy9zcmMvbGliL21vZHVsZXMvaW5wdXQtYm94L2lucHV0LWJveC1ob3N0LnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQzs7QUFPM0M7O0dBRUc7QUFFSCxNQUFNLE9BQU8sc0JBQXNCO0lBQ2pDLEtBQUssQ0FBbUM7SUFFeEMsSUFBVyxTQUFTO1FBQ2xCLE9BQU8sSUFBSSxDQUFDLEtBQUssRUFBRSxTQUFTLElBQUksRUFBRSxDQUFDO0lBQ3JDLENBQUM7SUFFRCxJQUFXLE9BQU87UUFDaEIsT0FBTyxJQUFJLENBQUMsS0FBSyxFQUFFLFNBQVMsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxPQUFPLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQztJQUN6RCxDQUFDO0lBRUQsSUFBVyxTQUFTO1FBQ2xCLE9BQU8sSUFBSSxDQUFDLEtBQUssRUFBRSxTQUFTLElBQUksRUFBRSxDQUFDO0lBQ3JDLENBQUM7SUFFRCxJQUFXLGVBQWU7UUFDeEIsT0FBTyxJQUFJLENBQUMsZ0JBQWdCLENBQUM7SUFDL0IsQ0FBQztJQUVELGdCQUFnQixDQUE2QztJQUV0RCxJQUFJLENBQUMsSUFBMEI7UUFDcEMsSUFBSSxDQUFDLEtBQUssR0FBRyxJQUFJLENBQUM7UUFDbEIsSUFBSSxDQUFDLGdCQUFnQixHQUFHLElBQUksQ0FBQyxlQUFlLENBQUMsWUFBWSxFQUFFLENBQUM7SUFDOUQsQ0FBQztJQUVNLFFBQVEsQ0FBQyxJQUE2QjtRQUMzQyxJQUFJLENBQUMsSUFBSSxDQUFDLEtBQUssRUFBRSxDQUFDO1lBQ2hCLE1BQU0sSUFBSSxLQUFLLENBQ2Isc0xBQXNMLENBQ3ZMLENBQUM7UUFDSixDQUFDO1FBRUQsSUFBSSxDQUFDLEtBQUssQ0FBQyxRQUFRLENBQUMsSUFBSSxDQUFDLENBQUM7SUFDNUIsQ0FBQztJQUVNLFdBQVcsQ0FBQyxRQUE0QjtRQUM3QyxJQUFJLENBQUMsSUFBSSxDQUFDLEtBQUssRUFBRSxDQUFDO1lBQ2hCLE1BQU0sSUFBSSxLQUFLLENBQ2Isc0dBQXNHLENBQ3ZHLENBQUM7UUFDSixDQUFDO1FBRUQsSUFBSSxDQUFDLEtBQUssQ0FBQyxlQUFlLENBQUMsUUFBUSxDQUFDLENBQUM7SUFDdkMsQ0FBQztJQUVNLGlCQUFpQixDQUFDLElBQWE7UUFDcEMsSUFBSSxDQUFDLElBQUksQ0FBQyxLQUFLLEVBQUUsQ0FBQztZQUNoQixNQUFNLElBQUksS0FBSyxDQUNiLHVHQUF1RyxDQUN4RyxDQUFDO1FBQ0osQ0FBQztRQUVELElBQUksQ0FBQyxLQUFLLENBQUMsaUJBQWlCLENBQUMsSUFBSSxDQUFDLENBQUM7SUFDckMsQ0FBQztJQUVNLDJCQUEyQixDQUFDLElBQWE7UUFDOUMsSUFBSSxDQUFDLElBQUksQ0FBQyxLQUFLLEVBQUUsQ0FBQztZQUNoQixNQUFNLElBQUksS0FBSyxDQUNiLHlHQUF5RyxDQUMxRyxDQUFDO1FBQ0osQ0FBQztRQUVELElBQUksQ0FBQyxLQUFLLENBQUMsMkJBQTJCLENBQUMsSUFBSSxDQUFDLENBQUM7SUFDL0MsQ0FBQzs4R0FoRVUsc0JBQXNCO2tIQUF0QixzQkFBc0I7OzJGQUF0QixzQkFBc0I7a0JBRGxDLFVBQVUiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJbmplY3RhYmxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5cbmltcG9ydCB7IE9ic2VydmFibGUgfSBmcm9tICdyeGpzJztcblxuaW1wb3J0IHsgU2t5SW5wdXRCb3hQb3B1bGF0ZUFyZ3MgfSBmcm9tICcuL2lucHV0LWJveC1wb3B1bGF0ZS1hcmdzJztcbmltcG9ydCB7IFNreUlucHV0Qm94Q29tcG9uZW50IH0gZnJvbSAnLi9pbnB1dC1ib3guY29tcG9uZW50JztcblxuLyoqXG4gKiBAaW50ZXJuYWxcbiAqL1xuQEluamVjdGFibGUoKVxuZXhwb3J0IGNsYXNzIFNreUlucHV0Qm94SG9zdFNlcnZpY2Uge1xuICAjaG9zdDogU2t5SW5wdXRCb3hDb21wb25lbnQgfCB1bmRlZmluZWQ7XG5cbiAgcHVibGljIGdldCBjb250cm9sSWQoKTogc3RyaW5nIHtcbiAgICByZXR1cm4gdGhpcy4jaG9zdD8uY29udHJvbElkID8/ICcnO1xuICB9XG5cbiAgcHVibGljIGdldCBsYWJlbElkKCk6IHN0cmluZyB7XG4gICAgcmV0dXJuIHRoaXMuI2hvc3Q/LmxhYmVsVGV4dCA/IHRoaXMuI2hvc3QubGFiZWxJZCA6ICcnO1xuICB9XG5cbiAgcHVibGljIGdldCBsYWJlbFRleHQoKTogc3RyaW5nIHtcbiAgICByZXR1cm4gdGhpcy4jaG9zdD8ubGFiZWxUZXh0ID8/ICcnO1xuICB9XG5cbiAgcHVibGljIGdldCBhcmlhRGVzY3JpYmVkQnkoKTogT2JzZXJ2YWJsZTxzdHJpbmcgfCB1bmRlZmluZWQ+IHwgdW5kZWZpbmVkIHtcbiAgICByZXR1cm4gdGhpcy4jYXJpYURlc2NyaWJlZEJ5O1xuICB9XG5cbiAgI2FyaWFEZXNjcmliZWRCeTogT2JzZXJ2YWJsZTxzdHJpbmcgfCB1bmRlZmluZWQ+IHwgdW5kZWZpbmVkO1xuXG4gIHB1YmxpYyBpbml0KGhvc3Q6IFNreUlucHV0Qm94Q29tcG9uZW50KTogdm9pZCB7XG4gICAgdGhpcy4jaG9zdCA9IGhvc3Q7XG4gICAgdGhpcy4jYXJpYURlc2NyaWJlZEJ5ID0gaG9zdC5hcmlhRGVzY3JpYmVkQnkuYXNPYnNlcnZhYmxlKCk7XG4gIH1cblxuICBwdWJsaWMgcG9wdWxhdGUoYXJnczogU2t5SW5wdXRCb3hQb3B1bGF0ZUFyZ3MpOiB2b2lkIHtcbiAgICBpZiAoIXRoaXMuI2hvc3QpIHtcbiAgICAgIHRocm93IG5ldyBFcnJvcihcbiAgICAgICAgJ0Nhbm5vdCBwb3B1bGF0ZSB0aGUgaW5wdXQgYm94IGJlY2F1c2UgYFNreUlucHV0Qm94SG9zdFNlcnZpY2VgIGhhcyBub3QgeWV0IGJlZW4gaW5pdGlhbGl6ZWQuIFRyeSBydW5uaW5nIHRoZSBgcG9wdWxhdGVgIG1ldGhvZCB3aXRoaW4gYW4gQW5ndWxhciBsaWZlY3ljbGUgaG9vaywgc3VjaCBhcyBgbmdPbkluaXRgLicsXG4gICAgICApO1xuICAgIH1cblxuICAgIHRoaXMuI2hvc3QucG9wdWxhdGUoYXJncyk7XG4gIH1cblxuICBwdWJsaWMgc2V0SGludFRleHQoaGludFRleHQ6IHN0cmluZyB8IHVuZGVmaW5lZCk6IHZvaWQge1xuICAgIGlmICghdGhpcy4jaG9zdCkge1xuICAgICAgdGhyb3cgbmV3IEVycm9yKFxuICAgICAgICAnQ2Fubm90IHNldCBoaW50IHRleHQgb24gdGhlIGlucHV0IGJveCBiZWNhdXNlIGBTa3lJbnB1dEJveEhvc3RTZXJ2aWNlYCBoYXMgbm90IHlldCBiZWVuIGluaXRpYWxpemVkLicsXG4gICAgICApO1xuICAgIH1cblxuICAgIHRoaXMuI2hvc3Quc2V0SG9zdEhpbnRUZXh0KGhpbnRUZXh0KTtcbiAgfVxuXG4gIHB1YmxpYyBzZXRIaW50VGV4dEhpZGRlbihoaWRlOiBib29sZWFuKTogdm9pZCB7XG4gICAgaWYgKCF0aGlzLiNob3N0KSB7XG4gICAgICB0aHJvdyBuZXcgRXJyb3IoXG4gICAgICAgICdDYW5ub3QgaGlkZSBoaW50IHRleHQgb24gdGhlIGlucHV0IGJveCBiZWNhdXNlIGBTa3lJbnB1dEJveEhvc3RTZXJ2aWNlYCBoYXMgbm90IHlldCBiZWVuIGluaXRpYWxpemVkLicsXG4gICAgICApO1xuICAgIH1cblxuICAgIHRoaXMuI2hvc3Quc2V0SGludFRleHRIaWRkZW4oaGlkZSk7XG4gIH1cblxuICBwdWJsaWMgc2V0SGludFRleHRTY3JlZW5SZWFkZXJPbmx5KGhpZGU6IGJvb2xlYW4pOiB2b2lkIHtcbiAgICBpZiAoIXRoaXMuI2hvc3QpIHtcbiAgICAgIHRocm93IG5ldyBFcnJvcihcbiAgICAgICAgJ0Nhbm5vdCByZW1vdmUgaGludCB0ZXh0IG9uIHRoZSBpbnB1dCBib3ggYmVjYXVzZSBgU2t5SW5wdXRCb3hIb3N0U2VydmljZWAgaGFzIG5vdCB5ZXQgYmVlbiBpbml0aWFsaXplZC4nLFxuICAgICAgKTtcbiAgICB9XG5cbiAgICB0aGlzLiNob3N0LnNldEhpbnRUZXh0U2NyZWVuUmVhZGVyT25seShoaWRlKTtcbiAgfVxufVxuIl19
72
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5wdXQtYm94LWhvc3Quc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvY29tcG9uZW50cy9mb3Jtcy9zcmMvbGliL21vZHVsZXMvaW5wdXQtYm94L2lucHV0LWJveC1ob3N0LnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFVBQVUsRUFBYSxNQUFNLGVBQWUsQ0FBQztBQUV0RCxPQUFPLEVBQUUsZUFBZSxFQUFjLE1BQU0sTUFBTSxDQUFDOztBQUtuRDs7R0FFRztBQUVILE1BQU0sT0FBTyxzQkFBc0I7SUFEbkM7UUFHRSxxQkFBZ0IsR0FBRyxJQUFJLGVBQWUsQ0FBVSxLQUFLLENBQUMsQ0FBQztRQUVoRCxhQUFRLEdBQUcsSUFBSSxDQUFDLGdCQUFnQixDQUFDLFlBQVksRUFBRSxDQUFDO0tBNkV4RDtJQWhGQyxLQUFLLENBQW1DO0lBQ3hDLGdCQUFnQixDQUF1QztJQUl2RCxJQUFXLFNBQVM7UUFDbEIsT0FBTyxJQUFJLENBQUMsS0FBSyxFQUFFLFNBQVMsSUFBSSxFQUFFLENBQUM7SUFDckMsQ0FBQztJQUVELElBQVcsT0FBTztRQUNoQixPQUFPLElBQUksQ0FBQyxLQUFLLEVBQUUsU0FBUyxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLE9BQU8sQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDO0lBQ3pELENBQUM7SUFFRCxJQUFXLFNBQVM7UUFDbEIsT0FBTyxJQUFJLENBQUMsS0FBSyxFQUFFLFNBQVMsSUFBSSxFQUFFLENBQUM7SUFDckMsQ0FBQztJQUVELElBQVcsZUFBZTtRQUN4QixPQUFPLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQztJQUMvQixDQUFDO0lBRUQsZ0JBQWdCLENBQTZDO0lBRXRELElBQUksQ0FBQyxJQUEwQjtRQUNwQyxJQUFJLENBQUMsS0FBSyxHQUFHLElBQUksQ0FBQztRQUNsQixJQUFJLENBQUMsZ0JBQWdCLEdBQUcsSUFBSSxDQUFDLGVBQWUsQ0FBQyxZQUFZLEVBQUUsQ0FBQztJQUM5RCxDQUFDO0lBRU0sV0FBVztRQUNoQixJQUFJLENBQUMsZ0JBQWdCLENBQUMsUUFBUSxFQUFFLENBQUM7SUFDbkMsQ0FBQztJQUVNLFFBQVEsQ0FBQyxJQUE2QjtRQUMzQyxJQUFJLENBQUMsSUFBSSxDQUFDLEtBQUssRUFBRSxDQUFDO1lBQ2hCLE1BQU0sSUFBSSxLQUFLLENBQ2Isc0xBQXNMLENBQ3ZMLENBQUM7UUFDSixDQUFDO1FBRUQsSUFBSSxDQUFDLEtBQUssQ0FBQyxRQUFRLENBQUMsSUFBSSxDQUFDLENBQUM7SUFDNUIsQ0FBQztJQUVNLFdBQVcsQ0FBQyxRQUE0QjtRQUM3QyxJQUFJLENBQUMsSUFBSSxDQUFDLEtBQUssRUFBRSxDQUFDO1lBQ2hCLE1BQU0sSUFBSSxLQUFLLENBQ2Isc0dBQXNHLENBQ3ZHLENBQUM7UUFDSixDQUFDO1FBRUQsSUFBSSxDQUFDLEtBQUssQ0FBQyxlQUFlLENBQUMsUUFBUSxDQUFDLENBQUM7SUFDdkMsQ0FBQztJQUVNLGlCQUFpQixDQUFDLElBQWE7UUFDcEMsSUFBSSxDQUFDLElBQUksQ0FBQyxLQUFLLEVBQUUsQ0FBQztZQUNoQixNQUFNLElBQUksS0FBSyxDQUNiLHVHQUF1RyxDQUN4RyxDQUFDO1FBQ0osQ0FBQztRQUVELElBQUksQ0FBQyxLQUFLLENBQUMsaUJBQWlCLENBQUMsSUFBSSxDQUFDLENBQUM7SUFDckMsQ0FBQztJQUVNLDJCQUEyQixDQUFDLElBQWE7UUFDOUMsSUFBSSxDQUFDLElBQUksQ0FBQyxLQUFLLEVBQUUsQ0FBQztZQUNoQixNQUFNLElBQUksS0FBSyxDQUNiLHlHQUF5RyxDQUMxRyxDQUFDO1FBQ0osQ0FBQztRQUVELElBQUksQ0FBQyxLQUFLLENBQUMsMkJBQTJCLENBQUMsSUFBSSxDQUFDLENBQUM7SUFDL0MsQ0FBQztJQUVEOzs7O09BSUc7SUFDSSxXQUFXLENBQUMsUUFBaUI7UUFDbEMsSUFBSSxDQUFDLGdCQUFnQixDQUFDLElBQUksQ0FBQyxRQUFRLENBQUMsQ0FBQztJQUN2QyxDQUFDOzhHQWhGVSxzQkFBc0I7a0hBQXRCLHNCQUFzQjs7MkZBQXRCLHNCQUFzQjtrQkFEbEMsVUFBVSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEluamVjdGFibGUsIE9uRGVzdHJveSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuXG5pbXBvcnQgeyBCZWhhdmlvclN1YmplY3QsIE9ic2VydmFibGUgfSBmcm9tICdyeGpzJztcblxuaW1wb3J0IHsgU2t5SW5wdXRCb3hQb3B1bGF0ZUFyZ3MgfSBmcm9tICcuL2lucHV0LWJveC1wb3B1bGF0ZS1hcmdzJztcbmltcG9ydCB7IFNreUlucHV0Qm94Q29tcG9uZW50IH0gZnJvbSAnLi9pbnB1dC1ib3guY29tcG9uZW50JztcblxuLyoqXG4gKiBAaW50ZXJuYWxcbiAqL1xuQEluamVjdGFibGUoKVxuZXhwb3J0IGNsYXNzIFNreUlucHV0Qm94SG9zdFNlcnZpY2UgaW1wbGVtZW50cyBPbkRlc3Ryb3kge1xuICAjaG9zdDogU2t5SW5wdXRCb3hDb21wb25lbnQgfCB1bmRlZmluZWQ7XG4gICNyZXF1aXJlZFN1YmplY3QgPSBuZXcgQmVoYXZpb3JTdWJqZWN0PGJvb2xlYW4+KGZhbHNlKTtcblxuICBwdWJsaWMgcmVxdWlyZWQgPSB0aGlzLiNyZXF1aXJlZFN1YmplY3QuYXNPYnNlcnZhYmxlKCk7XG5cbiAgcHVibGljIGdldCBjb250cm9sSWQoKTogc3RyaW5nIHtcbiAgICByZXR1cm4gdGhpcy4jaG9zdD8uY29udHJvbElkID8/ICcnO1xuICB9XG5cbiAgcHVibGljIGdldCBsYWJlbElkKCk6IHN0cmluZyB7XG4gICAgcmV0dXJuIHRoaXMuI2hvc3Q/LmxhYmVsVGV4dCA/IHRoaXMuI2hvc3QubGFiZWxJZCA6ICcnO1xuICB9XG5cbiAgcHVibGljIGdldCBsYWJlbFRleHQoKTogc3RyaW5nIHtcbiAgICByZXR1cm4gdGhpcy4jaG9zdD8ubGFiZWxUZXh0ID8/ICcnO1xuICB9XG5cbiAgcHVibGljIGdldCBhcmlhRGVzY3JpYmVkQnkoKTogT2JzZXJ2YWJsZTxzdHJpbmcgfCB1bmRlZmluZWQ+IHwgdW5kZWZpbmVkIHtcbiAgICByZXR1cm4gdGhpcy4jYXJpYURlc2NyaWJlZEJ5O1xuICB9XG5cbiAgI2FyaWFEZXNjcmliZWRCeTogT2JzZXJ2YWJsZTxzdHJpbmcgfCB1bmRlZmluZWQ+IHwgdW5kZWZpbmVkO1xuXG4gIHB1YmxpYyBpbml0KGhvc3Q6IFNreUlucHV0Qm94Q29tcG9uZW50KTogdm9pZCB7XG4gICAgdGhpcy4jaG9zdCA9IGhvc3Q7XG4gICAgdGhpcy4jYXJpYURlc2NyaWJlZEJ5ID0gaG9zdC5hcmlhRGVzY3JpYmVkQnkuYXNPYnNlcnZhYmxlKCk7XG4gIH1cblxuICBwdWJsaWMgbmdPbkRlc3Ryb3koKTogdm9pZCB7XG4gICAgdGhpcy4jcmVxdWlyZWRTdWJqZWN0LmNvbXBsZXRlKCk7XG4gIH1cblxuICBwdWJsaWMgcG9wdWxhdGUoYXJnczogU2t5SW5wdXRCb3hQb3B1bGF0ZUFyZ3MpOiB2b2lkIHtcbiAgICBpZiAoIXRoaXMuI2hvc3QpIHtcbiAgICAgIHRocm93IG5ldyBFcnJvcihcbiAgICAgICAgJ0Nhbm5vdCBwb3B1bGF0ZSB0aGUgaW5wdXQgYm94IGJlY2F1c2UgYFNreUlucHV0Qm94SG9zdFNlcnZpY2VgIGhhcyBub3QgeWV0IGJlZW4gaW5pdGlhbGl6ZWQuIFRyeSBydW5uaW5nIHRoZSBgcG9wdWxhdGVgIG1ldGhvZCB3aXRoaW4gYW4gQW5ndWxhciBsaWZlY3ljbGUgaG9vaywgc3VjaCBhcyBgbmdPbkluaXRgLicsXG4gICAgICApO1xuICAgIH1cblxuICAgIHRoaXMuI2hvc3QucG9wdWxhdGUoYXJncyk7XG4gIH1cblxuICBwdWJsaWMgc2V0SGludFRleHQoaGludFRleHQ6IHN0cmluZyB8IHVuZGVmaW5lZCk6IHZvaWQge1xuICAgIGlmICghdGhpcy4jaG9zdCkge1xuICAgICAgdGhyb3cgbmV3IEVycm9yKFxuICAgICAgICAnQ2Fubm90IHNldCBoaW50IHRleHQgb24gdGhlIGlucHV0IGJveCBiZWNhdXNlIGBTa3lJbnB1dEJveEhvc3RTZXJ2aWNlYCBoYXMgbm90IHlldCBiZWVuIGluaXRpYWxpemVkLicsXG4gICAgICApO1xuICAgIH1cblxuICAgIHRoaXMuI2hvc3Quc2V0SG9zdEhpbnRUZXh0KGhpbnRUZXh0KTtcbiAgfVxuXG4gIHB1YmxpYyBzZXRIaW50VGV4dEhpZGRlbihoaWRlOiBib29sZWFuKTogdm9pZCB7XG4gICAgaWYgKCF0aGlzLiNob3N0KSB7XG4gICAgICB0aHJvdyBuZXcgRXJyb3IoXG4gICAgICAgICdDYW5ub3QgaGlkZSBoaW50IHRleHQgb24gdGhlIGlucHV0IGJveCBiZWNhdXNlIGBTa3lJbnB1dEJveEhvc3RTZXJ2aWNlYCBoYXMgbm90IHlldCBiZWVuIGluaXRpYWxpemVkLicsXG4gICAgICApO1xuICAgIH1cblxuICAgIHRoaXMuI2hvc3Quc2V0SGludFRleHRIaWRkZW4oaGlkZSk7XG4gIH1cblxuICBwdWJsaWMgc2V0SGludFRleHRTY3JlZW5SZWFkZXJPbmx5KGhpZGU6IGJvb2xlYW4pOiB2b2lkIHtcbiAgICBpZiAoIXRoaXMuI2hvc3QpIHtcbiAgICAgIHRocm93IG5ldyBFcnJvcihcbiAgICAgICAgJ0Nhbm5vdCByZW1vdmUgaGludCB0ZXh0IG9uIHRoZSBpbnB1dCBib3ggYmVjYXVzZSBgU2t5SW5wdXRCb3hIb3N0U2VydmljZWAgaGFzIG5vdCB5ZXQgYmVlbiBpbml0aWFsaXplZC4nLFxuICAgICAgKTtcbiAgICB9XG5cbiAgICB0aGlzLiNob3N0LnNldEhpbnRUZXh0U2NyZWVuUmVhZGVyT25seShoaWRlKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBTZXQgcmVxdWlyZWQgc28gdGhhdCBpbnB1dCBib3ggZGlzcGxheXMgdGhlIGxhYmVsIGNvcnJlY3RseS4gV2hlbiB0aGUgaW5wdXQgaXMgc3VwcGxpZWQgYnkgdGhlIGNvbnN1bWVyIGl0IGlzIGEgY29udGVudFxuICAgKiBjaGlsZCB0aGF0IGlucHV0IGJveCBjYW4gcmVhZCByZXF1aXJlZCBmcm9tIGFuZCB0aGlzIGlzIHVubmVjZXNzYXJ5LiBXaGVuIHRoZSBpbnB1dCBpcyBzdXBwbGllZCBpbnRlcm5hbGx5IGJ5IHRoZVxuICAgKiBjb21wb25lbnQgdGhlIGlucHV0IGJveCBkb2VzIG5vdCBoYXZlIGEgcmVmIHRvIGl0LCBzbyB0aGUgY29tcG9uZW50IG5lZWRzIHRvIGluZm9ybSB0aGUgaW5wdXQgYm94IG9mIGl0cyByZXF1aXJlZCBzdGF0ZS5cbiAgICovXG4gIHB1YmxpYyBzZXRSZXF1aXJlZChyZXF1aXJlZDogYm9vbGVhbik6IHZvaWQge1xuICAgIHRoaXMuI3JlcXVpcmVkU3ViamVjdC5uZXh0KHJlcXVpcmVkKTtcbiAgfVxufVxuIl19