@impartner/design-components 2.0.1 → 2.1.1

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 (155) hide show
  1. package/README.md +2 -1
  2. package/esm2022/lib/badge/badge.component.mjs +17 -1
  3. package/esm2022/lib/datetime-picker/components/datepicker-nav/datepicker-nav.component.mjs +105 -0
  4. package/esm2022/lib/datetime-picker/components/datepicker-nav/index.mjs +2 -0
  5. package/esm2022/lib/datetime-picker/components/datepicker-template-host/datepicker-template-host.component.mjs +30 -0
  6. package/esm2022/lib/datetime-picker/components/datepicker-template-host/index.mjs +2 -0
  7. package/esm2022/lib/datetime-picker/components/datetime-picker/datetime-picker.component.mjs +370 -0
  8. package/esm2022/lib/datetime-picker/components/datetime-picker/index.mjs +2 -0
  9. package/esm2022/lib/datetime-picker/components/datetime-picker-input/datetime-picker-input.component.mjs +367 -0
  10. package/esm2022/lib/datetime-picker/components/datetime-picker-input/index.mjs +2 -0
  11. package/esm2022/lib/datetime-picker/components/datetime-picker-input-footer/datetime-picker-input-footer.component.mjs +68 -0
  12. package/esm2022/lib/datetime-picker/components/datetime-picker-input-footer/index.mjs +2 -0
  13. package/esm2022/lib/datetime-picker/components/index.mjs +6 -0
  14. package/esm2022/lib/datetime-picker/constants/datetime-picker-defaults.mjs +12 -0
  15. package/esm2022/lib/datetime-picker/constants/index.mjs +2 -0
  16. package/esm2022/lib/datetime-picker/datetime-picker.module.mjs +22 -0
  17. package/esm2022/lib/datetime-picker/index.mjs +4 -0
  18. package/esm2022/lib/datetime-picker/services/datetime-formatter/datetime-formatter.service.mjs +40 -0
  19. package/esm2022/lib/datetime-picker/services/datetime-formatter/index.mjs +2 -0
  20. package/esm2022/lib/datetime-picker/services/index.mjs +2 -0
  21. package/esm2022/lib/datetime-picker/types/datetime-picker-value.interface.mjs +2 -0
  22. package/esm2022/lib/datetime-picker/types/index.mjs +2 -0
  23. package/esm2022/lib/design-components.module.mjs +20 -7
  24. package/esm2022/lib/form-field/component/directives/corner-hint.directive.mjs +15 -0
  25. package/esm2022/lib/form-field/component/directives/error.directive.mjs +27 -0
  26. package/esm2022/lib/form-field/component/directives/form-root.directive.mjs +93 -0
  27. package/esm2022/lib/form-field/component/directives/hint.directive.mjs +25 -0
  28. package/esm2022/lib/form-field/component/directives/index.mjs +25 -0
  29. package/esm2022/lib/form-field/component/directives/label.directive.mjs +15 -0
  30. package/esm2022/lib/form-field/component/directives/prefix.directive.mjs +25 -0
  31. package/esm2022/lib/form-field/component/directives/suffix.directive.mjs +25 -0
  32. package/esm2022/lib/form-field/component/form-field.component.mjs +131 -0
  33. package/esm2022/lib/form-field/component/form-field.module.mjs +24 -0
  34. package/esm2022/lib/form-field/component/index.mjs +4 -0
  35. package/esm2022/lib/form-field/controls/checkbox/checkbox.component.mjs +14 -6
  36. package/esm2022/lib/form-field/controls/checkbox/checkbox.module.mjs +4 -7
  37. package/esm2022/lib/form-field/controls/index.mjs +2 -1
  38. package/esm2022/lib/form-field/controls/input/input.directive.mjs +4 -3
  39. package/esm2022/lib/form-field/controls/radio/radio-button/radio-button.component.mjs +6 -4
  40. package/esm2022/lib/form-field/controls/radio/radio-group/radio-group.directive.mjs +4 -3
  41. package/esm2022/lib/form-field/controls/radio/radio.module.mjs +4 -7
  42. package/esm2022/lib/form-field/controls/select/index.mjs +6 -3
  43. package/esm2022/lib/form-field/controls/select/interfaces/index.mjs +2 -0
  44. package/esm2022/lib/form-field/controls/select/interfaces/select-option.interface.mjs +2 -0
  45. package/esm2022/lib/form-field/controls/select/option/index.mjs +2 -2
  46. package/esm2022/lib/form-field/controls/select/option/select-option.component.mjs +33 -128
  47. package/esm2022/lib/form-field/controls/select/option-display/index.mjs +2 -0
  48. package/esm2022/lib/form-field/controls/select/option-display/select-option-display.component.mjs +162 -0
  49. package/esm2022/lib/form-field/controls/select/option-group/index.mjs +2 -0
  50. package/esm2022/lib/form-field/controls/select/option-group/select-option-group.component.mjs +35 -0
  51. package/esm2022/lib/form-field/controls/select/option-parent.mjs +2 -1
  52. package/esm2022/lib/form-field/controls/select/select.component.mjs +348 -148
  53. package/esm2022/lib/form-field/controls/select/select.module.mjs +20 -13
  54. package/esm2022/lib/form-field/controls/select/value-tags-display/index.mjs +2 -0
  55. package/esm2022/lib/form-field/controls/select/value-tags-display/select-value-tags-display.component.mjs +91 -0
  56. package/esm2022/lib/form-field/controls/shared/toggle/components/toggle-input/toggle-input.component.mjs +3 -3
  57. package/esm2022/lib/form-field/controls/shared/toggle/toggle.component.mjs +19 -3
  58. package/esm2022/lib/form-field/controls/shared/toggle/toggle.module.mjs +4 -6
  59. package/esm2022/lib/form-field/controls/tag-select/index.mjs +2 -0
  60. package/esm2022/lib/form-field/controls/tag-select/tag-select.component.mjs +146 -0
  61. package/esm2022/lib/form-field/impdc-forms.mjs +2 -3
  62. package/esm2022/lib/form-field/impdc-forms.module.mjs +32 -47
  63. package/esm2022/lib/form-field/shared/error-state.mixin.mjs +1 -1
  64. package/esm2022/lib/icon/icon.component.mjs +12 -5
  65. package/esm2022/lib/index.mjs +3 -1
  66. package/esm2022/lib/pagination/pagination.component.mjs +6 -6
  67. package/esm2022/lib/select-icon/select-icon.component.mjs +6 -6
  68. package/esm2022/lib/select-icon/select-icon.module.mjs +5 -1
  69. package/esm2022/lib/table/containers/table.component.mjs +3 -3
  70. package/esm2022/lib/tag/index.mjs +2 -0
  71. package/esm2022/lib/tag/tag.component.mjs +104 -0
  72. package/esm2022/lib/text-highlight/text-highlight.component.mjs +52 -37
  73. package/esm2022/lib/text-highlight/text-highlight.module.mjs +4 -6
  74. package/fesm2022/impartner-design-components.mjs +5620 -3983
  75. package/fesm2022/impartner-design-components.mjs.map +1 -1
  76. package/lib/badge/badge.component.d.ts +15 -1
  77. package/lib/datetime-picker/components/datepicker-nav/datepicker-nav.component.d.ts +31 -0
  78. package/lib/datetime-picker/components/datepicker-nav/index.d.ts +1 -0
  79. package/lib/datetime-picker/components/datepicker-template-host/datepicker-template-host.component.d.ts +14 -0
  80. package/lib/datetime-picker/components/datepicker-template-host/index.d.ts +1 -0
  81. package/lib/datetime-picker/components/datetime-picker/datetime-picker.component.d.ts +157 -0
  82. package/lib/datetime-picker/components/datetime-picker/index.d.ts +1 -0
  83. package/lib/datetime-picker/components/datetime-picker-input/datetime-picker-input.component.d.ts +160 -0
  84. package/lib/datetime-picker/components/datetime-picker-input/index.d.ts +1 -0
  85. package/lib/datetime-picker/components/datetime-picker-input-footer/datetime-picker-input-footer.component.d.ts +24 -0
  86. package/lib/datetime-picker/components/datetime-picker-input-footer/index.d.ts +1 -0
  87. package/lib/datetime-picker/components/index.d.ts +5 -0
  88. package/lib/datetime-picker/constants/datetime-picker-defaults.d.ts +4 -0
  89. package/lib/datetime-picker/constants/index.d.ts +1 -0
  90. package/lib/datetime-picker/datetime-picker.module.d.ts +8 -0
  91. package/lib/datetime-picker/index.d.ts +4 -0
  92. package/lib/datetime-picker/services/datetime-formatter/datetime-formatter.service.d.ts +20 -0
  93. package/lib/datetime-picker/services/datetime-formatter/index.d.ts +1 -0
  94. package/lib/datetime-picker/services/index.d.ts +1 -0
  95. package/lib/datetime-picker/types/datetime-picker-value.interface.d.ts +5 -0
  96. package/lib/datetime-picker/types/index.d.ts +1 -0
  97. package/lib/design-components.module.d.ts +14 -12
  98. package/lib/form-field/{directives → component/directives}/corner-hint.directive.d.ts +1 -1
  99. package/lib/form-field/{directives → component/directives}/error.directive.d.ts +1 -1
  100. package/lib/form-field/{directives → component/directives}/form-root.directive.d.ts +2 -2
  101. package/lib/form-field/{directives → component/directives}/hint.directive.d.ts +1 -1
  102. package/lib/form-field/component/directives/index.d.ts +15 -0
  103. package/lib/form-field/{directives → component/directives}/label.directive.d.ts +1 -1
  104. package/lib/form-field/{directives → component/directives}/prefix.directive.d.ts +1 -1
  105. package/lib/form-field/{directives → component/directives}/suffix.directive.d.ts +1 -1
  106. package/lib/form-field/{form-field.component.d.ts → component/form-field.component.d.ts} +3 -5
  107. package/lib/form-field/component/form-field.module.d.ts +14 -0
  108. package/lib/form-field/component/index.d.ts +3 -0
  109. package/lib/form-field/controls/checkbox/checkbox.component.d.ts +6 -2
  110. package/lib/form-field/controls/checkbox/checkbox.module.d.ts +1 -3
  111. package/lib/form-field/controls/index.d.ts +1 -0
  112. package/lib/form-field/controls/input/input.directive.d.ts +2 -2
  113. package/lib/form-field/controls/radio/radio-button/radio-button.component.d.ts +1 -1
  114. package/lib/form-field/controls/radio/radio-group/radio-group.directive.d.ts +2 -2
  115. package/lib/form-field/controls/radio/radio.module.d.ts +1 -3
  116. package/lib/form-field/controls/select/index.d.ts +6 -2
  117. package/lib/form-field/controls/select/interfaces/index.d.ts +1 -0
  118. package/lib/form-field/controls/select/interfaces/select-option.interface.d.ts +6 -0
  119. package/lib/form-field/controls/select/option/index.d.ts +1 -1
  120. package/lib/form-field/controls/select/option/select-option.component.d.ts +10 -49
  121. package/lib/form-field/controls/select/option-display/index.d.ts +1 -0
  122. package/lib/form-field/controls/select/option-display/select-option-display.component.d.ts +64 -0
  123. package/lib/form-field/controls/select/option-group/index.d.ts +1 -0
  124. package/lib/form-field/controls/select/option-group/select-option-group.component.d.ts +11 -0
  125. package/lib/form-field/controls/select/option-parent.d.ts +12 -1
  126. package/lib/form-field/controls/select/select.component.d.ts +113 -51
  127. package/lib/form-field/controls/select/select.module.d.ts +5 -6
  128. package/lib/form-field/controls/select/value-tags-display/index.d.ts +1 -0
  129. package/lib/form-field/controls/select/value-tags-display/select-value-tags-display.component.d.ts +46 -0
  130. package/lib/form-field/controls/shared/toggle/components/toggle-input/toggle-input.component.d.ts +1 -1
  131. package/lib/form-field/controls/shared/toggle/toggle.component.d.ts +4 -1
  132. package/lib/form-field/controls/shared/toggle/toggle.module.d.ts +1 -2
  133. package/lib/form-field/controls/tag-select/index.d.ts +1 -0
  134. package/lib/form-field/controls/tag-select/tag-select.component.d.ts +43 -0
  135. package/lib/form-field/impdc-forms.d.ts +1 -2
  136. package/lib/form-field/impdc-forms.module.d.ts +8 -14
  137. package/lib/form-field/shared/error-state.mixin.d.ts +4 -4
  138. package/lib/icon/icon.component.d.ts +5 -3
  139. package/lib/index.d.ts +2 -0
  140. package/lib/select-icon/select-icon.module.d.ts +4 -3
  141. package/lib/tag/index.d.ts +1 -0
  142. package/lib/tag/tag.component.d.ts +54 -0
  143. package/lib/text-highlight/text-highlight.component.d.ts +12 -6
  144. package/lib/text-highlight/text-highlight.module.d.ts +1 -2
  145. package/package.json +2 -2
  146. package/esm2022/lib/form-field/directives/corner-hint.directive.mjs +0 -14
  147. package/esm2022/lib/form-field/directives/error.directive.mjs +0 -26
  148. package/esm2022/lib/form-field/directives/form-root.directive.mjs +0 -91
  149. package/esm2022/lib/form-field/directives/hint.directive.mjs +0 -24
  150. package/esm2022/lib/form-field/directives/index.mjs +0 -8
  151. package/esm2022/lib/form-field/directives/label.directive.mjs +0 -14
  152. package/esm2022/lib/form-field/directives/prefix.directive.mjs +0 -24
  153. package/esm2022/lib/form-field/directives/suffix.directive.mjs +0 -24
  154. package/esm2022/lib/form-field/form-field.component.mjs +0 -132
  155. package/lib/form-field/directives/index.d.ts +0 -7
@@ -1,30 +1,37 @@
1
- import { CommonModule } from '@angular/common';
2
1
  import { NgModule } from '@angular/core';
3
- import { NgbDropdownModule } from '@ng-bootstrap/ng-bootstrap';
4
- import { IconModule } from '../../../icon';
5
- import { SelectOptionComponent } from './option/select-option.component';
2
+ import { SelectOptionGroupComponent } from './option-group';
3
+ import { SelectOptionComponent } from './option';
4
+ import { SelectValueTagsDisplayComponent } from './value-tags-display';
6
5
  import { SelectComponent } from './select.component';
7
6
  import * as i0 from "@angular/core";
8
7
  export class SelectModule {
9
8
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.0.1", ngImport: i0, type: SelectModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
10
- static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "17.0.1", ngImport: i0, type: SelectModule, declarations: [SelectOptionComponent, SelectComponent], imports: [CommonModule, NgbDropdownModule, IconModule], exports: [NgbDropdownModule,
11
- IconModule,
9
+ static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "17.0.1", ngImport: i0, type: SelectModule, imports: [SelectOptionGroupComponent,
12
10
  SelectOptionComponent,
11
+ SelectValueTagsDisplayComponent,
12
+ SelectComponent], exports: [SelectOptionGroupComponent,
13
+ SelectOptionComponent,
14
+ SelectValueTagsDisplayComponent,
15
+ SelectComponent] }); }
16
+ static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "17.0.1", ngImport: i0, type: SelectModule, imports: [SelectOptionGroupComponent,
17
+ SelectValueTagsDisplayComponent,
13
18
  SelectComponent] }); }
14
- static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "17.0.1", ngImport: i0, type: SelectModule, imports: [CommonModule, NgbDropdownModule, IconModule, NgbDropdownModule,
15
- IconModule] }); }
16
19
  }
17
20
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.0.1", ngImport: i0, type: SelectModule, decorators: [{
18
21
  type: NgModule,
19
22
  args: [{
20
- imports: [CommonModule, NgbDropdownModule, IconModule],
21
- declarations: [SelectOptionComponent, SelectComponent],
23
+ imports: [
24
+ SelectOptionGroupComponent,
25
+ SelectOptionComponent,
26
+ SelectValueTagsDisplayComponent,
27
+ SelectComponent
28
+ ],
22
29
  exports: [
23
- NgbDropdownModule,
24
- IconModule,
30
+ SelectOptionGroupComponent,
25
31
  SelectOptionComponent,
32
+ SelectValueTagsDisplayComponent,
26
33
  SelectComponent
27
34
  ]
28
35
  }]
29
36
  }] });
30
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2VsZWN0Lm1vZHVsZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2Rlc2lnbi1jb21wb25lbnRzL3NyYy9saWIvZm9ybS1maWVsZC9jb250cm9scy9zZWxlY3Qvc2VsZWN0Lm1vZHVsZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDL0MsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUN6QyxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSw0QkFBNEIsQ0FBQztBQUMvRCxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQzNDLE9BQU8sRUFBRSxxQkFBcUIsRUFBRSxNQUFNLGtDQUFrQyxDQUFDO0FBQ3pFLE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSxvQkFBb0IsQ0FBQzs7QUFZckQsTUFBTSxPQUFPLFlBQVk7OEdBQVosWUFBWTsrR0FBWixZQUFZLGlCQVJSLHFCQUFxQixFQUFFLGVBQWUsYUFEM0MsWUFBWSxFQUFFLGlCQUFpQixFQUFFLFVBQVUsYUFHbkQsaUJBQWlCO1lBQ2pCLFVBQVU7WUFDVixxQkFBcUI7WUFDckIsZUFBZTsrR0FHTixZQUFZLFlBVGIsWUFBWSxFQUFFLGlCQUFpQixFQUFFLFVBQVUsRUFHbkQsaUJBQWlCO1lBQ2pCLFVBQVU7OzJGQUtELFlBQVk7a0JBVnhCLFFBQVE7bUJBQUM7b0JBQ1IsT0FBTyxFQUFFLENBQUMsWUFBWSxFQUFFLGlCQUFpQixFQUFFLFVBQVUsQ0FBQztvQkFDdEQsWUFBWSxFQUFFLENBQUMscUJBQXFCLEVBQUUsZUFBZSxDQUFDO29CQUN0RCxPQUFPLEVBQUU7d0JBQ1AsaUJBQWlCO3dCQUNqQixVQUFVO3dCQUNWLHFCQUFxQjt3QkFDckIsZUFBZTtxQkFDaEI7aUJBQ0YiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21tb25Nb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xuaW1wb3J0IHsgTmdNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IE5nYkRyb3Bkb3duTW9kdWxlIH0gZnJvbSAnQG5nLWJvb3RzdHJhcC9uZy1ib290c3RyYXAnO1xuaW1wb3J0IHsgSWNvbk1vZHVsZSB9IGZyb20gJy4uLy4uLy4uL2ljb24nO1xuaW1wb3J0IHsgU2VsZWN0T3B0aW9uQ29tcG9uZW50IH0gZnJvbSAnLi9vcHRpb24vc2VsZWN0LW9wdGlvbi5jb21wb25lbnQnO1xuaW1wb3J0IHsgU2VsZWN0Q29tcG9uZW50IH0gZnJvbSAnLi9zZWxlY3QuY29tcG9uZW50JztcblxuQE5nTW9kdWxlKHtcbiAgaW1wb3J0czogW0NvbW1vbk1vZHVsZSwgTmdiRHJvcGRvd25Nb2R1bGUsIEljb25Nb2R1bGVdLFxuICBkZWNsYXJhdGlvbnM6IFtTZWxlY3RPcHRpb25Db21wb25lbnQsIFNlbGVjdENvbXBvbmVudF0sXG4gIGV4cG9ydHM6IFtcbiAgICBOZ2JEcm9wZG93bk1vZHVsZSxcbiAgICBJY29uTW9kdWxlLFxuICAgIFNlbGVjdE9wdGlvbkNvbXBvbmVudCxcbiAgICBTZWxlY3RDb21wb25lbnRcbiAgXVxufSlcbmV4cG9ydCBjbGFzcyBTZWxlY3RNb2R1bGUge31cbiJdfQ==
37
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2VsZWN0Lm1vZHVsZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2Rlc2lnbi1jb21wb25lbnRzL3NyYy9saWIvZm9ybS1maWVsZC9jb250cm9scy9zZWxlY3Qvc2VsZWN0Lm1vZHVsZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ3pDLE9BQU8sRUFBRSwwQkFBMEIsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQzVELE9BQU8sRUFBRSxxQkFBcUIsRUFBRSxNQUFNLFVBQVUsQ0FBQztBQUNqRCxPQUFPLEVBQUUsK0JBQStCLEVBQUUsTUFBTSxzQkFBc0IsQ0FBQztBQUN2RSxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sb0JBQW9CLENBQUM7O0FBZ0JyRCxNQUFNLE9BQU8sWUFBWTs4R0FBWixZQUFZOytHQUFaLFlBQVksWUFackIsMEJBQTBCO1lBQzFCLHFCQUFxQjtZQUNyQiwrQkFBK0I7WUFDL0IsZUFBZSxhQUdmLDBCQUEwQjtZQUMxQixxQkFBcUI7WUFDckIsK0JBQStCO1lBQy9CLGVBQWU7K0dBR04sWUFBWSxZQVpyQiwwQkFBMEI7WUFFMUIsK0JBQStCO1lBQy9CLGVBQWU7OzJGQVNOLFlBQVk7a0JBZHhCLFFBQVE7bUJBQUM7b0JBQ1IsT0FBTyxFQUFFO3dCQUNQLDBCQUEwQjt3QkFDMUIscUJBQXFCO3dCQUNyQiwrQkFBK0I7d0JBQy9CLGVBQWU7cUJBQ2hCO29CQUNELE9BQU8sRUFBRTt3QkFDUCwwQkFBMEI7d0JBQzFCLHFCQUFxQjt3QkFDckIsK0JBQStCO3dCQUMvQixlQUFlO3FCQUNoQjtpQkFDRiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IE5nTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBTZWxlY3RPcHRpb25Hcm91cENvbXBvbmVudCB9IGZyb20gJy4vb3B0aW9uLWdyb3VwJztcbmltcG9ydCB7IFNlbGVjdE9wdGlvbkNvbXBvbmVudCB9IGZyb20gJy4vb3B0aW9uJztcbmltcG9ydCB7IFNlbGVjdFZhbHVlVGFnc0Rpc3BsYXlDb21wb25lbnQgfSBmcm9tICcuL3ZhbHVlLXRhZ3MtZGlzcGxheSc7XG5pbXBvcnQgeyBTZWxlY3RDb21wb25lbnQgfSBmcm9tICcuL3NlbGVjdC5jb21wb25lbnQnO1xuXG5ATmdNb2R1bGUoe1xuICBpbXBvcnRzOiBbXG4gICAgU2VsZWN0T3B0aW9uR3JvdXBDb21wb25lbnQsXG4gICAgU2VsZWN0T3B0aW9uQ29tcG9uZW50LFxuICAgIFNlbGVjdFZhbHVlVGFnc0Rpc3BsYXlDb21wb25lbnQsXG4gICAgU2VsZWN0Q29tcG9uZW50XG4gIF0sXG4gIGV4cG9ydHM6IFtcbiAgICBTZWxlY3RPcHRpb25Hcm91cENvbXBvbmVudCxcbiAgICBTZWxlY3RPcHRpb25Db21wb25lbnQsXG4gICAgU2VsZWN0VmFsdWVUYWdzRGlzcGxheUNvbXBvbmVudCxcbiAgICBTZWxlY3RDb21wb25lbnRcbiAgXVxufSlcbmV4cG9ydCBjbGFzcyBTZWxlY3RNb2R1bGUge31cbiJdfQ==
@@ -0,0 +1,2 @@
1
+ export * from './select-value-tags-display.component';
2
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9kZXNpZ24tY29tcG9uZW50cy9zcmMvbGliL2Zvcm0tZmllbGQvY29udHJvbHMvc2VsZWN0L3ZhbHVlLXRhZ3MtZGlzcGxheS9pbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxjQUFjLHVDQUF1QyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0ICogZnJvbSAnLi9zZWxlY3QtdmFsdWUtdGFncy1kaXNwbGF5LmNvbXBvbmVudCc7XG4iXX0=
@@ -0,0 +1,91 @@
1
+ import { NgClass } from '@angular/common';
2
+ import { ChangeDetectionStrategy, ChangeDetectorRef, Component, Input, booleanAttribute, inject } from '@angular/core';
3
+ import { IMPDC_SELECT_VALUE_BADGES_PARENT_COMPONENT } from '../option-parent';
4
+ import { Subject, merge, takeUntil } from 'rxjs';
5
+ import { ComponentTheme } from '../../../../../types';
6
+ import { TagComponent } from '../../../../tag';
7
+ import * as i0 from "@angular/core";
8
+ export class SelectValueTagsDisplayComponent {
9
+ constructor() {
10
+ this._changeDetector = inject(ChangeDetectorRef);
11
+ this._parentSelect = inject(IMPDC_SELECT_VALUE_BADGES_PARENT_COMPONENT, { optional: true });
12
+ this._destroy$ = new Subject();
13
+ this.BadgeTheme = ComponentTheme;
14
+ this.truncate = true;
15
+ this.rounded = false;
16
+ this._select = this._parentSelect;
17
+ /**
18
+ * Render the control is a readonly state.
19
+ *
20
+ * Semantically distinct from `disabled`, `readonly` controls will still have their values bound in
21
+ * Angular forms and `FormGroup`s, whereas a disabled control's value would be omitted.
22
+ */
23
+ this.readonly = false;
24
+ /**
25
+ * Text to be shown when displayed values are truncated, allowing the user to view all selected values.
26
+ */
27
+ this.showMoreLabel = 'Show more...';
28
+ /**
29
+ * Text to be shown when displayed values have been expanded beyond the truncation threshold, allowing
30
+ * the user collapse the view again.
31
+ */
32
+ this.showLessLabel = 'Show less...';
33
+ }
34
+ get select() {
35
+ return this._select;
36
+ }
37
+ set select(value) {
38
+ this._select = value || this._parentSelect;
39
+ }
40
+ get resolvedSelect() {
41
+ return this.select || this._parentSelect;
42
+ }
43
+ ngOnInit() {
44
+ if (this.select) {
45
+ this.observeStateChanges(this.select);
46
+ }
47
+ }
48
+ ngOnChanges() {
49
+ this._destroy$.next();
50
+ if (this.select) {
51
+ this.observeStateChanges(this.select);
52
+ }
53
+ }
54
+ ngOnDestroy() {
55
+ this._destroy$.next();
56
+ this._destroy$.complete();
57
+ }
58
+ toggleTruncate() {
59
+ this.truncate = !this.truncate;
60
+ }
61
+ observeStateChanges(select) {
62
+ merge(select.selectionChange, select.stateChanges)
63
+ .pipe(takeUntil(this._destroy$))
64
+ .subscribe(() => {
65
+ this._changeDetector.detectChanges();
66
+ });
67
+ }
68
+ selectedIsMultiple(selected) {
69
+ return Array.isArray(selected);
70
+ }
71
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.0.1", ngImport: i0, type: SelectValueTagsDisplayComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
72
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "17.0.1", type: SelectValueTagsDisplayComponent, isStandalone: true, selector: "impdc-select-value-tags-display", inputs: { rounded: ["rounded", "rounded", booleanAttribute], select: "select", readonly: "readonly", truncateThreshold: "truncateThreshold", showMoreLabel: "showMoreLabel", showLessLabel: "showLessLabel" }, usesOnChanges: true, ngImport: i0, template: "<ng-content></ng-content>\n@if (!!select && selectedIsMultiple(select.selected)) { @for (selectedOpt of\nselect.selected; track selectedOpt) { @if (!truncate || !truncateThreshold ||\n(truncateThreshold > 0 && $index < truncateThreshold)) {\n<impdc-tag\n [rounded]=\"rounded\"\n [withButton]=\"!readonly && !select.disabled\"\n (buttonClick)=\"select.deselectOption(selectedOpt)\">\n {{ selectedOpt.label }}\n</impdc-tag>\n} } @if (!!truncateThreshold && truncateThreshold > 0 && select.selected.length\n> truncateThreshold) {\n<a\n class=\"impdc-select-value-tags-display--truncate-toggle link-primary\"\n (click)=\"toggleTruncate()\">\n {{ truncate ? showMoreLabel : showLessLabel }}\n</a>\n} }\n", styles: [":host{align-items:baseline;display:flex;flex-wrap:wrap;gap:var(--impdc-select-value-badges--gap, var(--impd-size-1));width:100%}.impdc-select-value-tags-display--truncate-toggle{font-size:var(--impd-font-size-xs);font-weight:var(--impd-font-weight-medium);line-height:var(--impd-size-4)}\n"], dependencies: [{ kind: "component", type: TagComponent, selector: "impdc-tag", inputs: ["disabled", "tabIndex", "theme", "rounded", "withButton", "buttonIcon"], outputs: ["buttonClick"], exportAs: ["impdcTag"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
73
+ }
74
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.0.1", ngImport: i0, type: SelectValueTagsDisplayComponent, decorators: [{
75
+ type: Component,
76
+ args: [{ selector: 'impdc-select-value-tags-display', standalone: true, imports: [TagComponent, NgClass], changeDetection: ChangeDetectionStrategy.OnPush, template: "<ng-content></ng-content>\n@if (!!select && selectedIsMultiple(select.selected)) { @for (selectedOpt of\nselect.selected; track selectedOpt) { @if (!truncate || !truncateThreshold ||\n(truncateThreshold > 0 && $index < truncateThreshold)) {\n<impdc-tag\n [rounded]=\"rounded\"\n [withButton]=\"!readonly && !select.disabled\"\n (buttonClick)=\"select.deselectOption(selectedOpt)\">\n {{ selectedOpt.label }}\n</impdc-tag>\n} } @if (!!truncateThreshold && truncateThreshold > 0 && select.selected.length\n> truncateThreshold) {\n<a\n class=\"impdc-select-value-tags-display--truncate-toggle link-primary\"\n (click)=\"toggleTruncate()\">\n {{ truncate ? showMoreLabel : showLessLabel }}\n</a>\n} }\n", styles: [":host{align-items:baseline;display:flex;flex-wrap:wrap;gap:var(--impdc-select-value-badges--gap, var(--impd-size-1));width:100%}.impdc-select-value-tags-display--truncate-toggle{font-size:var(--impd-font-size-xs);font-weight:var(--impd-font-weight-medium);line-height:var(--impd-size-4)}\n"] }]
77
+ }], propDecorators: { rounded: [{
78
+ type: Input,
79
+ args: [{ transform: booleanAttribute }]
80
+ }], select: [{
81
+ type: Input
82
+ }], readonly: [{
83
+ type: Input
84
+ }], truncateThreshold: [{
85
+ type: Input
86
+ }], showMoreLabel: [{
87
+ type: Input
88
+ }], showLessLabel: [{
89
+ type: Input
90
+ }] } });
91
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2VsZWN0LXZhbHVlLXRhZ3MtZGlzcGxheS5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9kZXNpZ24tY29tcG9uZW50cy9zcmMvbGliL2Zvcm0tZmllbGQvY29udHJvbHMvc2VsZWN0L3ZhbHVlLXRhZ3MtZGlzcGxheS9zZWxlY3QtdmFsdWUtdGFncy1kaXNwbGF5LmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2Rlc2lnbi1jb21wb25lbnRzL3NyYy9saWIvZm9ybS1maWVsZC9jb250cm9scy9zZWxlY3QvdmFsdWUtdGFncy1kaXNwbGF5L3NlbGVjdC12YWx1ZS10YWdzLWRpc3BsYXkuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLE9BQU8sRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQzFDLE9BQU8sRUFDTCx1QkFBdUIsRUFDdkIsaUJBQWlCLEVBQ2pCLFNBQVMsRUFDVCxLQUFLLEVBSUwsZ0JBQWdCLEVBQ2hCLE1BQU0sRUFDUCxNQUFNLGVBQWUsQ0FBQztBQUN2QixPQUFPLEVBQ0wsMENBQTBDLEVBRTNDLE1BQU0sa0JBQWtCLENBQUM7QUFDMUIsT0FBTyxFQUFFLE9BQU8sRUFBRSxLQUFLLEVBQUUsU0FBUyxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBQ2pELE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSxzQkFBc0IsQ0FBQztBQUN0RCxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0saUJBQWlCLENBQUM7O0FBVy9DLE1BQU0sT0FBTywrQkFBK0I7SUFSNUM7UUFXbUIsb0JBQWUsR0FBRyxNQUFNLENBQUMsaUJBQWlCLENBQUMsQ0FBQztRQUM1QyxrQkFBYSxHQUFHLE1BQU0sQ0FDckMsMENBQTBDLEVBQzFDLEVBQUUsUUFBUSxFQUFFLElBQUksRUFBRSxDQUNuQixDQUFDO1FBQ2UsY0FBUyxHQUFHLElBQUksT0FBTyxFQUFRLENBQUM7UUFDOUIsZUFBVSxHQUFHLGNBQWMsQ0FBQztRQUNyQyxhQUFRLEdBQUcsSUFBSSxDQUFDO1FBR25CLFlBQU8sR0FBRyxLQUFLLENBQUM7UUFTZixZQUFPLEdBQ2IsSUFBSSxDQUFDLGFBQWEsQ0FBQztRQU1yQjs7Ozs7V0FLRztRQUVJLGFBQVEsR0FBWSxLQUFLLENBQUM7UUFRakM7O1dBRUc7UUFFSSxrQkFBYSxHQUFHLGNBQWMsQ0FBQztRQUV0Qzs7O1dBR0c7UUFFSSxrQkFBYSxHQUFHLGNBQWMsQ0FBQztLQXdDdkM7SUFoRkMsSUFDVyxNQUFNO1FBQ2YsT0FBTyxJQUFJLENBQUMsT0FBTyxDQUFDO0lBQ3RCLENBQUM7SUFDRCxJQUFXLE1BQU0sQ0FBQyxLQUErQztRQUMvRCxJQUFJLENBQUMsT0FBTyxHQUFHLEtBQUssSUFBSSxJQUFJLENBQUMsYUFBYSxDQUFDO0lBQzdDLENBQUM7SUFJRCxJQUFjLGNBQWM7UUFDMUIsT0FBTyxJQUFJLENBQUMsTUFBTSxJQUFJLElBQUksQ0FBQyxhQUFhLENBQUM7SUFDM0MsQ0FBQztJQThCTSxRQUFRO1FBQ2IsSUFBSSxJQUFJLENBQUMsTUFBTSxFQUFFO1lBQ2YsSUFBSSxDQUFDLG1CQUFtQixDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsQ0FBQztTQUN2QztJQUNILENBQUM7SUFFTSxXQUFXO1FBQ2hCLElBQUksQ0FBQyxTQUFTLENBQUMsSUFBSSxFQUFFLENBQUM7UUFFdEIsSUFBSSxJQUFJLENBQUMsTUFBTSxFQUFFO1lBQ2YsSUFBSSxDQUFDLG1CQUFtQixDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsQ0FBQztTQUN2QztJQUNILENBQUM7SUFFTSxXQUFXO1FBQ2hCLElBQUksQ0FBQyxTQUFTLENBQUMsSUFBSSxFQUFFLENBQUM7UUFDdEIsSUFBSSxDQUFDLFNBQVMsQ0FBQyxRQUFRLEVBQUUsQ0FBQztJQUM1QixDQUFDO0lBRVMsY0FBYztRQUN0QixJQUFJLENBQUMsUUFBUSxHQUFHLENBQUMsSUFBSSxDQUFDLFFBQVEsQ0FBQztJQUNqQyxDQUFDO0lBRVMsbUJBQW1CLENBQzNCLE1BQXlDO1FBRXpDLEtBQUssQ0FBQyxNQUFNLENBQUMsZUFBZSxFQUFFLE1BQU0sQ0FBQyxZQUFZLENBQUM7YUFDL0MsSUFBSSxDQUFDLFNBQVMsQ0FBQyxJQUFJLENBQUMsU0FBUyxDQUFDLENBQUM7YUFDL0IsU0FBUyxDQUFDLEdBQUcsRUFBRTtZQUNkLElBQUksQ0FBQyxlQUFlLENBQUMsYUFBYSxFQUFFLENBQUM7UUFDdkMsQ0FBQyxDQUFDLENBQUM7SUFDUCxDQUFDO0lBRVMsa0JBQWtCLENBQzFCLFFBQXlDO1FBRXpDLE9BQU8sS0FBSyxDQUFDLE9BQU8sQ0FBQyxRQUFRLENBQUMsQ0FBQztJQUNqQyxDQUFDOzhHQTlGVSwrQkFBK0I7a0dBQS9CLCtCQUErQiw2R0FZdEIsZ0JBQWdCLGtNQ3pDdEMsbXNCQWtCQSwyVkRNWSxZQUFZOzsyRkFLWCwrQkFBK0I7a0JBUjNDLFNBQVM7K0JBQ0UsaUNBQWlDLGNBQy9CLElBQUksV0FDUCxDQUFDLFlBQVksRUFBRSxPQUFPLENBQUMsbUJBR2YsdUJBQXVCLENBQUMsTUFBTTs4QkFleEMsT0FBTztzQkFEYixLQUFLO3VCQUFDLEVBQUUsU0FBUyxFQUFFLGdCQUFnQixFQUFFO2dCQUkzQixNQUFNO3NCQURoQixLQUFLO2dCQXFCQyxRQUFRO3NCQURkLEtBQUs7Z0JBT0MsaUJBQWlCO3NCQUR2QixLQUFLO2dCQU9DLGFBQWE7c0JBRG5CLEtBQUs7Z0JBUUMsYUFBYTtzQkFEbkIsS0FBSyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IE5nQ2xhc3MgfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xuaW1wb3J0IHtcbiAgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksXG4gIENoYW5nZURldGVjdG9yUmVmLFxuICBDb21wb25lbnQsXG4gIElucHV0LFxuICBPbkNoYW5nZXMsXG4gIE9uRGVzdHJveSxcbiAgT25Jbml0LFxuICBib29sZWFuQXR0cmlidXRlLFxuICBpbmplY3Rcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQge1xuICBJTVBEQ19TRUxFQ1RfVkFMVUVfQkFER0VTX1BBUkVOVF9DT01QT05FTlQsXG4gIElTZWxlY3RWYWx1ZUJhZGdlc1BhcmVudENvbXBvbmVudFxufSBmcm9tICcuLi9vcHRpb24tcGFyZW50JztcbmltcG9ydCB7IFN1YmplY3QsIG1lcmdlLCB0YWtlVW50aWwgfSBmcm9tICdyeGpzJztcbmltcG9ydCB7IENvbXBvbmVudFRoZW1lIH0gZnJvbSAnLi4vLi4vLi4vLi4vLi4vdHlwZXMnO1xuaW1wb3J0IHsgVGFnQ29tcG9uZW50IH0gZnJvbSAnLi4vLi4vLi4vLi4vdGFnJztcbmltcG9ydCB7IElTZWxlY3RPcHRpb24gfSBmcm9tICcuLi9pbnRlcmZhY2VzJztcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnaW1wZGMtc2VsZWN0LXZhbHVlLXRhZ3MtZGlzcGxheScsXG4gIHN0YW5kYWxvbmU6IHRydWUsXG4gIGltcG9ydHM6IFtUYWdDb21wb25lbnQsIE5nQ2xhc3NdLFxuICBzdHlsZVVybDogJy4vc2VsZWN0LXZhbHVlLXRhZ3MtZGlzcGxheS5jb21wb25lbnQuc2NzcycsXG4gIHRlbXBsYXRlVXJsOiAnLi9zZWxlY3QtdmFsdWUtdGFncy1kaXNwbGF5LmNvbXBvbmVudC5odG1sJyxcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2hcbn0pXG5leHBvcnQgY2xhc3MgU2VsZWN0VmFsdWVUYWdzRGlzcGxheUNvbXBvbmVudFxuICBpbXBsZW1lbnRzIE9uSW5pdCwgT25DaGFuZ2VzLCBPbkRlc3Ryb3lcbntcbiAgcHJpdmF0ZSByZWFkb25seSBfY2hhbmdlRGV0ZWN0b3IgPSBpbmplY3QoQ2hhbmdlRGV0ZWN0b3JSZWYpO1xuICBwcml2YXRlIHJlYWRvbmx5IF9wYXJlbnRTZWxlY3QgPSBpbmplY3QoXG4gICAgSU1QRENfU0VMRUNUX1ZBTFVFX0JBREdFU19QQVJFTlRfQ09NUE9ORU5ULFxuICAgIHsgb3B0aW9uYWw6IHRydWUgfVxuICApO1xuICBwcml2YXRlIHJlYWRvbmx5IF9kZXN0cm95JCA9IG5ldyBTdWJqZWN0PHZvaWQ+KCk7XG4gIHByb3RlY3RlZCByZWFkb25seSBCYWRnZVRoZW1lID0gQ29tcG9uZW50VGhlbWU7XG4gIHByb3RlY3RlZCB0cnVuY2F0ZSA9IHRydWU7XG5cbiAgQElucHV0KHsgdHJhbnNmb3JtOiBib29sZWFuQXR0cmlidXRlIH0pXG4gIHB1YmxpYyByb3VuZGVkID0gZmFsc2U7XG5cbiAgQElucHV0KClcbiAgcHVibGljIGdldCBzZWxlY3QoKTogSVNlbGVjdFZhbHVlQmFkZ2VzUGFyZW50Q29tcG9uZW50IHwgbnVsbCB7XG4gICAgcmV0dXJuIHRoaXMuX3NlbGVjdDtcbiAgfVxuICBwdWJsaWMgc2V0IHNlbGVjdCh2YWx1ZTogSVNlbGVjdFZhbHVlQmFkZ2VzUGFyZW50Q29tcG9uZW50IHwgbnVsbCkge1xuICAgIHRoaXMuX3NlbGVjdCA9IHZhbHVlIHx8IHRoaXMuX3BhcmVudFNlbGVjdDtcbiAgfVxuICBwcml2YXRlIF9zZWxlY3Q6IElTZWxlY3RWYWx1ZUJhZGdlc1BhcmVudENvbXBvbmVudCB8IG51bGwgPVxuICAgIHRoaXMuX3BhcmVudFNlbGVjdDtcblxuICBwcm90ZWN0ZWQgZ2V0IHJlc29sdmVkU2VsZWN0KCk6IElTZWxlY3RWYWx1ZUJhZGdlc1BhcmVudENvbXBvbmVudCB8IG51bGwge1xuICAgIHJldHVybiB0aGlzLnNlbGVjdCB8fCB0aGlzLl9wYXJlbnRTZWxlY3Q7XG4gIH1cblxuICAvKipcbiAgICogUmVuZGVyIHRoZSBjb250cm9sIGlzIGEgcmVhZG9ubHkgc3RhdGUuXG4gICAqXG4gICAqIFNlbWFudGljYWxseSBkaXN0aW5jdCBmcm9tIGBkaXNhYmxlZGAsIGByZWFkb25seWAgY29udHJvbHMgd2lsbCBzdGlsbCBoYXZlIHRoZWlyIHZhbHVlcyBib3VuZCBpblxuICAgKiBBbmd1bGFyIGZvcm1zIGFuZCBgRm9ybUdyb3VwYHMsIHdoZXJlYXMgYSBkaXNhYmxlZCBjb250cm9sJ3MgdmFsdWUgd291bGQgYmUgb21pdHRlZC5cbiAgICovXG4gIEBJbnB1dCgpXG4gIHB1YmxpYyByZWFkb25seTogYm9vbGVhbiA9IGZhbHNlO1xuXG4gIC8qKlxuICAgKiBUaGUgbWF4aW11bSBudW1iZXIgb2YgdmFsdWVzIHRoYXQgd2lsbCBiZSBkaXNwbGF5ZWQgaW5saW5lIGJlZm9yZSB0cnVuY2F0aW9uIG9jY3Vycy5cbiAgICovXG4gIEBJbnB1dCgpXG4gIHB1YmxpYyB0cnVuY2F0ZVRocmVzaG9sZDogbnVtYmVyIHwgdW5kZWZpbmVkO1xuXG4gIC8qKlxuICAgKiBUZXh0IHRvIGJlIHNob3duIHdoZW4gZGlzcGxheWVkIHZhbHVlcyBhcmUgdHJ1bmNhdGVkLCBhbGxvd2luZyB0aGUgdXNlciB0byB2aWV3IGFsbCBzZWxlY3RlZCB2YWx1ZXMuXG4gICAqL1xuICBASW5wdXQoKVxuICBwdWJsaWMgc2hvd01vcmVMYWJlbCA9ICdTaG93IG1vcmUuLi4nO1xuXG4gIC8qKlxuICAgKiBUZXh0IHRvIGJlIHNob3duIHdoZW4gZGlzcGxheWVkIHZhbHVlcyBoYXZlIGJlZW4gZXhwYW5kZWQgYmV5b25kIHRoZSB0cnVuY2F0aW9uIHRocmVzaG9sZCwgYWxsb3dpbmdcbiAgICogdGhlIHVzZXIgY29sbGFwc2UgdGhlIHZpZXcgYWdhaW4uXG4gICAqL1xuICBASW5wdXQoKVxuICBwdWJsaWMgc2hvd0xlc3NMYWJlbCA9ICdTaG93IGxlc3MuLi4nO1xuXG4gIHB1YmxpYyBuZ09uSW5pdCgpOiB2b2lkIHtcbiAgICBpZiAodGhpcy5zZWxlY3QpIHtcbiAgICAgIHRoaXMub2JzZXJ2ZVN0YXRlQ2hhbmdlcyh0aGlzLnNlbGVjdCk7XG4gICAgfVxuICB9XG5cbiAgcHVibGljIG5nT25DaGFuZ2VzKCk6IHZvaWQge1xuICAgIHRoaXMuX2Rlc3Ryb3kkLm5leHQoKTtcblxuICAgIGlmICh0aGlzLnNlbGVjdCkge1xuICAgICAgdGhpcy5vYnNlcnZlU3RhdGVDaGFuZ2VzKHRoaXMuc2VsZWN0KTtcbiAgICB9XG4gIH1cblxuICBwdWJsaWMgbmdPbkRlc3Ryb3koKTogdm9pZCB7XG4gICAgdGhpcy5fZGVzdHJveSQubmV4dCgpO1xuICAgIHRoaXMuX2Rlc3Ryb3kkLmNvbXBsZXRlKCk7XG4gIH1cblxuICBwcm90ZWN0ZWQgdG9nZ2xlVHJ1bmNhdGUoKTogdm9pZCB7XG4gICAgdGhpcy50cnVuY2F0ZSA9ICF0aGlzLnRydW5jYXRlO1xuICB9XG5cbiAgcHJvdGVjdGVkIG9ic2VydmVTdGF0ZUNoYW5nZXMoXG4gICAgc2VsZWN0OiBJU2VsZWN0VmFsdWVCYWRnZXNQYXJlbnRDb21wb25lbnRcbiAgKTogdm9pZCB7XG4gICAgbWVyZ2Uoc2VsZWN0LnNlbGVjdGlvbkNoYW5nZSwgc2VsZWN0LnN0YXRlQ2hhbmdlcylcbiAgICAgIC5waXBlKHRha2VVbnRpbCh0aGlzLl9kZXN0cm95JCkpXG4gICAgICAuc3Vic2NyaWJlKCgpID0+IHtcbiAgICAgICAgdGhpcy5fY2hhbmdlRGV0ZWN0b3IuZGV0ZWN0Q2hhbmdlcygpO1xuICAgICAgfSk7XG4gIH1cblxuICBwcm90ZWN0ZWQgc2VsZWN0ZWRJc011bHRpcGxlKFxuICAgIHNlbGVjdGVkOiBJU2VsZWN0T3B0aW9uIHwgSVNlbGVjdE9wdGlvbltdXG4gICk6IHNlbGVjdGVkIGlzIElTZWxlY3RPcHRpb25bXSB7XG4gICAgcmV0dXJuIEFycmF5LmlzQXJyYXkoc2VsZWN0ZWQpO1xuICB9XG59XG4iLCI8bmctY29udGVudD48L25nLWNvbnRlbnQ+XG5AaWYgKCEhc2VsZWN0ICYmIHNlbGVjdGVkSXNNdWx0aXBsZShzZWxlY3Quc2VsZWN0ZWQpKSB7IEBmb3IgKHNlbGVjdGVkT3B0IG9mXG5zZWxlY3Quc2VsZWN0ZWQ7IHRyYWNrIHNlbGVjdGVkT3B0KSB7IEBpZiAoIXRydW5jYXRlIHx8ICF0cnVuY2F0ZVRocmVzaG9sZCB8fFxuKHRydW5jYXRlVGhyZXNob2xkID4gMCAmJiAkaW5kZXggPCB0cnVuY2F0ZVRocmVzaG9sZCkpIHtcbjxpbXBkYy10YWdcbiAgW3JvdW5kZWRdPVwicm91bmRlZFwiXG4gIFt3aXRoQnV0dG9uXT1cIiFyZWFkb25seSAmJiAhc2VsZWN0LmRpc2FibGVkXCJcbiAgKGJ1dHRvbkNsaWNrKT1cInNlbGVjdC5kZXNlbGVjdE9wdGlvbihzZWxlY3RlZE9wdClcIj5cbiAge3sgc2VsZWN0ZWRPcHQubGFiZWwgfX1cbjwvaW1wZGMtdGFnPlxufSB9IEBpZiAoISF0cnVuY2F0ZVRocmVzaG9sZCAmJiB0cnVuY2F0ZVRocmVzaG9sZCA+IDAgJiYgc2VsZWN0LnNlbGVjdGVkLmxlbmd0aFxuPiB0cnVuY2F0ZVRocmVzaG9sZCkge1xuPGFcbiAgY2xhc3M9XCJpbXBkYy1zZWxlY3QtdmFsdWUtdGFncy1kaXNwbGF5LS10cnVuY2F0ZS10b2dnbGUgbGluay1wcmltYXJ5XCJcbiAgKGNsaWNrKT1cInRvZ2dsZVRydW5jYXRlKClcIj5cbiAge3sgdHJ1bmNhdGUgPyBzaG93TW9yZUxhYmVsIDogc2hvd0xlc3NMYWJlbCB9fVxuPC9hPlxufSB9XG4iXX0=
@@ -5,13 +5,13 @@ export class ToggleInputComponent {
5
5
  this.classFormCheck = true;
6
6
  }
7
7
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.0.1", ngImport: i0, type: ToggleInputComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
8
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.0.1", type: ToggleInputComponent, selector: "input[impdc-toggle-input]", host: { properties: { "class.form-check-input": "this.classFormCheck" } }, ngImport: i0, template: '', isInline: true, styles: [""] }); }
8
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.0.1", type: ToggleInputComponent, isStandalone: true, selector: "input[impdc-toggle-input]", host: { properties: { "class.form-check-input": "this.classFormCheck" } }, ngImport: i0, template: '', isInline: true, styles: [""] }); }
9
9
  }
10
10
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.0.1", ngImport: i0, type: ToggleInputComponent, decorators: [{
11
11
  type: Component,
12
- args: [{ selector: 'input[impdc-toggle-input]', template: '' }]
12
+ args: [{ selector: 'input[impdc-toggle-input]', standalone: true, template: '' }]
13
13
  }], propDecorators: { classFormCheck: [{
14
14
  type: HostBinding,
15
15
  args: ['class.form-check-input']
16
16
  }] } });
17
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidG9nZ2xlLWlucHV0LmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2Rlc2lnbi1jb21wb25lbnRzL3NyYy9saWIvZm9ybS1maWVsZC9jb250cm9scy9zaGFyZWQvdG9nZ2xlL2NvbXBvbmVudHMvdG9nZ2xlLWlucHV0L3RvZ2dsZS1pbnB1dC5jb21wb25lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxXQUFXLEVBQUUsTUFBTSxlQUFlLENBQUM7O0FBUXZELE1BQU0sT0FBTyxvQkFBb0I7SUFOakM7UUFPeUMsbUJBQWMsR0FBRyxJQUFJLENBQUM7S0FDOUQ7OEdBRlksb0JBQW9CO2tHQUFwQixvQkFBb0IsNElBSHJCLEVBQUU7OzJGQUdELG9CQUFvQjtrQkFOaEMsU0FBUzsrQkFFRSwyQkFBMkIsWUFDM0IsRUFBRTs4QkFJMkIsY0FBYztzQkFBcEQsV0FBVzt1QkFBQyx3QkFBd0IiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQsIEhvc3RCaW5kaW5nIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5cbkBDb21wb25lbnQoe1xuICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQGFuZ3VsYXItZXNsaW50L2NvbXBvbmVudC1zZWxlY3RvclxuICBzZWxlY3RvcjogJ2lucHV0W2ltcGRjLXRvZ2dsZS1pbnB1dF0nLFxuICB0ZW1wbGF0ZTogJycsXG4gIHN0eWxlVXJsczogWycuL3RvZ2dsZS1pbnB1dC5jb21wb25lbnQuc2NzcyddXG59KVxuZXhwb3J0IGNsYXNzIFRvZ2dsZUlucHV0Q29tcG9uZW50IHtcbiAgQEhvc3RCaW5kaW5nKCdjbGFzcy5mb3JtLWNoZWNrLWlucHV0JykgY2xhc3NGb3JtQ2hlY2sgPSB0cnVlO1xufVxuIl19
17
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidG9nZ2xlLWlucHV0LmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2Rlc2lnbi1jb21wb25lbnRzL3NyYy9saWIvZm9ybS1maWVsZC9jb250cm9scy9zaGFyZWQvdG9nZ2xlL2NvbXBvbmVudHMvdG9nZ2xlLWlucHV0L3RvZ2dsZS1pbnB1dC5jb21wb25lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxXQUFXLEVBQUUsTUFBTSxlQUFlLENBQUM7O0FBU3ZELE1BQU0sT0FBTyxvQkFBb0I7SUFQakM7UUFReUMsbUJBQWMsR0FBRyxJQUFJLENBQUM7S0FDOUQ7OEdBRlksb0JBQW9CO2tHQUFwQixvQkFBb0IsZ0tBSHJCLEVBQUU7OzJGQUdELG9CQUFvQjtrQkFQaEMsU0FBUzsrQkFFRSwyQkFBMkIsY0FDekIsSUFBSSxZQUNOLEVBQUU7OEJBSTJCLGNBQWM7c0JBQXBELFdBQVc7dUJBQUMsd0JBQXdCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBIb3N0QmluZGluZyB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuXG5AQ29tcG9uZW50KHtcbiAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEBhbmd1bGFyLWVzbGludC9jb21wb25lbnQtc2VsZWN0b3JcbiAgc2VsZWN0b3I6ICdpbnB1dFtpbXBkYy10b2dnbGUtaW5wdXRdJyxcbiAgc3RhbmRhbG9uZTogdHJ1ZSxcbiAgdGVtcGxhdGU6ICcnLFxuICBzdHlsZVVybHM6IFsnLi90b2dnbGUtaW5wdXQuY29tcG9uZW50LnNjc3MnXVxufSlcbmV4cG9ydCBjbGFzcyBUb2dnbGVJbnB1dENvbXBvbmVudCB7XG4gIEBIb3N0QmluZGluZygnY2xhc3MuZm9ybS1jaGVjay1pbnB1dCcpIGNsYXNzRm9ybUNoZWNrID0gdHJ1ZTtcbn1cbiJdfQ==
@@ -1,3 +1,4 @@
1
+ import { CommonModule } from '@angular/common';
1
2
  import { Component, Input, HostBinding, ElementRef, ContentChild } from '@angular/core';
2
3
  import { nanoid } from 'nanoid';
3
4
  import { ToggleInputComponent } from './components';
@@ -19,6 +20,12 @@ export class ToggleComponent {
19
20
  get classBranded() {
20
21
  return this.branded;
21
22
  }
23
+ get classFlexRowReverse() {
24
+ return this.layout === 'check-end';
25
+ }
26
+ get classJustifyContentEnd() {
27
+ return this.layout === 'check-end';
28
+ }
22
29
  get id() {
23
30
  return this._id;
24
31
  }
@@ -39,6 +46,7 @@ export class ToggleComponent {
39
46
  this.description = '';
40
47
  this.inline = false;
41
48
  this.switchIcons = false;
49
+ this.layout = 'check-start';
42
50
  // we don't want this to be brandable yet
43
51
  // @Input()
44
52
  this.branded = false;
@@ -56,11 +64,11 @@ export class ToggleComponent {
56
64
  this.changeDetectorRef.detectChanges();
57
65
  }
58
66
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.0.1", ngImport: i0, type: ToggleComponent, deps: [{ token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Component }); }
59
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.0.1", type: ToggleComponent, selector: "impdc-toggle", inputs: { isSwitch: "isSwitch", label: "label", description: "description", inline: "inline", switchIcons: "switchIcons" }, host: { properties: { "class": "this.classDefaults", "class.impdc-toggle-has-description": "this.classHasDescription", "class.form-switch": "this.classFormSwitch", "class.form-check-inline": "this.classFormCheckInline", "class.form-switch-icons": "this.classFormSwitchIcons", "class.branded": "this.classBranded" } }, queries: [{ propertyName: "inputRef", first: true, predicate: ToggleInputComponent, descendants: true, read: ElementRef }], ngImport: i0, template: "<div class=\"impdc-toggle-input\">\n <ng-content select=\"[impdc-toggle-input]\"></ng-content>\n</div>\n<div *ngIf=\"label\" class=\"impdc-toggle-info\">\n <label\n *ngIf=\"label\"\n class=\"form-check-label impdc-toggle-label\"\n [attr.for]=\"id\"\n >{{ label }}</label\n >\n <label\n *ngIf=\"showDescription\"\n class=\"impdc-toggle-description\"\n [attr.for]=\"id\"\n >{{ description }}</label\n >\n</div>\n", styles: [":host(.impdc.form-check) .impdc-toggle-input{display:flex}:host(.impdc.form-check) .impdc-toggle-info{display:flex;flex-direction:column}:host(.impdc.form-check) .impdc-toggle-label,:host(.impdc.form-check) .impdc-toggle-description{font-size:var(--impd-font-size-sm, 1.4rem);line-height:var(--impd-size-5, 2rem)}:host(.impdc.form-check) .impdc-toggle-description{color:var(--impd-color-gray-500, #6b7280)}:host(.impdc.form-check).impdc-toggle-has-description .impdc-toggle-input{margin-top:.2rem;align-self:flex-start}\n"], dependencies: [{ kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }] }); }
67
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.0.1", type: ToggleComponent, isStandalone: true, selector: "impdc-toggle", inputs: { isSwitch: "isSwitch", label: "label", description: "description", inline: "inline", switchIcons: "switchIcons", layout: "layout" }, host: { properties: { "class": "this.classDefaults", "class.impdc-toggle-has-description": "this.classHasDescription", "class.form-switch": "this.classFormSwitch", "class.form-check-inline": "this.classFormCheckInline", "class.form-switch-icons": "this.classFormSwitchIcons", "class.branded": "this.classBranded", "class.flex-row-reverse": "this.classFlexRowReverse", "class.justify-content-end": "this.classJustifyContentEnd" } }, queries: [{ propertyName: "inputRef", first: true, predicate: ToggleInputComponent, descendants: true, read: ElementRef }], ngImport: i0, template: "<div class=\"impdc-toggle-input\">\n <ng-content select=\"[impdc-toggle-input]\"></ng-content>\n</div>\n<div *ngIf=\"label\" class=\"impdc-toggle-info\">\n <label\n *ngIf=\"label\"\n class=\"form-check-label impdc-toggle-label\"\n [attr.for]=\"id\"\n >{{ label }}</label\n >\n <label\n *ngIf=\"showDescription\"\n class=\"impdc-toggle-description\"\n [attr.for]=\"id\"\n >{{ description }}</label\n >\n</div>\n", styles: [":host(.impdc.form-check) .impdc-toggle-input{display:flex}:host(.impdc.form-check) .impdc-toggle-info{display:flex;flex-direction:column}:host(.impdc.form-check) .impdc-toggle-label,:host(.impdc.form-check) .impdc-toggle-description{font-size:var(--impd-font-size-sm, 1.4rem);line-height:var(--impd-size-5, 2rem)}:host(.impdc.form-check) .impdc-toggle-description{color:var(--impd-color-gray-500, #6b7280)}:host(.impdc.form-check).impdc-toggle-has-description .impdc-toggle-input{margin-top:.2rem;align-self:flex-start}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }] }); }
60
68
  }
61
69
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.0.1", ngImport: i0, type: ToggleComponent, decorators: [{
62
70
  type: Component,
63
- args: [{ selector: 'impdc-toggle', template: "<div class=\"impdc-toggle-input\">\n <ng-content select=\"[impdc-toggle-input]\"></ng-content>\n</div>\n<div *ngIf=\"label\" class=\"impdc-toggle-info\">\n <label\n *ngIf=\"label\"\n class=\"form-check-label impdc-toggle-label\"\n [attr.for]=\"id\"\n >{{ label }}</label\n >\n <label\n *ngIf=\"showDescription\"\n class=\"impdc-toggle-description\"\n [attr.for]=\"id\"\n >{{ description }}</label\n >\n</div>\n", styles: [":host(.impdc.form-check) .impdc-toggle-input{display:flex}:host(.impdc.form-check) .impdc-toggle-info{display:flex;flex-direction:column}:host(.impdc.form-check) .impdc-toggle-label,:host(.impdc.form-check) .impdc-toggle-description{font-size:var(--impd-font-size-sm, 1.4rem);line-height:var(--impd-size-5, 2rem)}:host(.impdc.form-check) .impdc-toggle-description{color:var(--impd-color-gray-500, #6b7280)}:host(.impdc.form-check).impdc-toggle-has-description .impdc-toggle-input{margin-top:.2rem;align-self:flex-start}\n"] }]
71
+ args: [{ selector: 'impdc-toggle', standalone: true, imports: [CommonModule, ToggleInputComponent], template: "<div class=\"impdc-toggle-input\">\n <ng-content select=\"[impdc-toggle-input]\"></ng-content>\n</div>\n<div *ngIf=\"label\" class=\"impdc-toggle-info\">\n <label\n *ngIf=\"label\"\n class=\"form-check-label impdc-toggle-label\"\n [attr.for]=\"id\"\n >{{ label }}</label\n >\n <label\n *ngIf=\"showDescription\"\n class=\"impdc-toggle-description\"\n [attr.for]=\"id\"\n >{{ description }}</label\n >\n</div>\n", styles: [":host(.impdc.form-check) .impdc-toggle-input{display:flex}:host(.impdc.form-check) .impdc-toggle-info{display:flex;flex-direction:column}:host(.impdc.form-check) .impdc-toggle-label,:host(.impdc.form-check) .impdc-toggle-description{font-size:var(--impd-font-size-sm, 1.4rem);line-height:var(--impd-size-5, 2rem)}:host(.impdc.form-check) .impdc-toggle-description{color:var(--impd-color-gray-500, #6b7280)}:host(.impdc.form-check).impdc-toggle-has-description .impdc-toggle-input{margin-top:.2rem;align-self:flex-start}\n"] }]
64
72
  }], ctorParameters: () => [{ type: i0.ChangeDetectorRef }], propDecorators: { isSwitch: [{
65
73
  type: Input
66
74
  }], label: [{
@@ -71,6 +79,8 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.0.1", ngImpor
71
79
  type: Input
72
80
  }], switchIcons: [{
73
81
  type: Input
82
+ }], layout: [{
83
+ type: Input
74
84
  }], classDefaults: [{
75
85
  type: HostBinding,
76
86
  args: ['class']
@@ -89,8 +99,14 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.0.1", ngImpor
89
99
  }], classBranded: [{
90
100
  type: HostBinding,
91
101
  args: ['class.branded']
102
+ }], classFlexRowReverse: [{
103
+ type: HostBinding,
104
+ args: ['class.flex-row-reverse']
105
+ }], classJustifyContentEnd: [{
106
+ type: HostBinding,
107
+ args: ['class.justify-content-end']
92
108
  }], inputRef: [{
93
109
  type: ContentChild,
94
110
  args: [ToggleInputComponent, { read: ElementRef }]
95
111
  }] } });
96
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidG9nZ2xlLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2Rlc2lnbi1jb21wb25lbnRzL3NyYy9saWIvZm9ybS1maWVsZC9jb250cm9scy9zaGFyZWQvdG9nZ2xlL3RvZ2dsZS5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9kZXNpZ24tY29tcG9uZW50cy9zcmMvbGliL2Zvcm0tZmllbGQvY29udHJvbHMvc2hhcmVkL3RvZ2dsZS90b2dnbGUuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUNMLFNBQVMsRUFDVCxLQUFLLEVBRUwsV0FBVyxFQUNYLFVBQVUsRUFHVixZQUFZLEVBQ2IsTUFBTSxlQUFlLENBQUM7QUFDdkIsT0FBTyxFQUFFLE1BQU0sRUFBRSxNQUFNLFFBQVEsQ0FBQztBQUNoQyxPQUFPLEVBQUUsb0JBQW9CLEVBQUUsTUFBTSxjQUFjLENBQUM7OztBQU9wRCxNQUFNLE9BQU8sZUFBZTtJQXdCMUIsSUFDWSxtQkFBbUI7UUFDN0IsT0FBTyxJQUFJLENBQUMsZUFBZSxDQUFDO0lBQzlCLENBQUM7SUFFRCxJQUE4QyxlQUFlO1FBQzNELE9BQU8sSUFBSSxDQUFDLFVBQVUsSUFBSSxJQUFJLENBQUMsUUFBUSxDQUFDO0lBQzFDLENBQUM7SUFFRCxJQUFvRCxvQkFBb0I7UUFDdEUsT0FBTyxJQUFJLENBQUMsTUFBTSxDQUFDO0lBQ3JCLENBQUM7SUFFRCxJQUFvRCxvQkFBb0I7UUFDdEUsT0FBTyxJQUFJLENBQUMsVUFBVSxJQUFJLElBQUksQ0FBQyxRQUFRLElBQUksSUFBSSxDQUFDLFdBQVcsQ0FBQztJQUM5RCxDQUFDO0lBRUQsSUFBMEMsWUFBWTtRQUNwRCxPQUFPLElBQUksQ0FBQyxPQUFPLENBQUM7SUFDdEIsQ0FBQztJQUtELElBQUksRUFBRTtRQUNKLE9BQU8sSUFBSSxDQUFDLEdBQUcsQ0FBQztJQUNsQixDQUFDO0lBRUQsSUFBSSxVQUFVO1FBQ1osSUFBSSxDQUFDLElBQUksQ0FBQyxRQUFRLEVBQUU7WUFDbEIsT0FBTyxLQUFLLENBQUM7U0FDZDtRQUVELE9BQU8sSUFBSSxDQUFDLFFBQVEsQ0FBQyxhQUFhLENBQUMsWUFBWSxDQUFDLE1BQU0sQ0FBQyxLQUFLLFVBQVUsQ0FBQztJQUN6RSxDQUFDO0lBRUQsSUFBSSxlQUFlO1FBQ2pCLE9BQU8sQ0FBQyxJQUFJLENBQUMsTUFBTSxJQUFJLENBQUMsQ0FBQyxJQUFJLENBQUMsS0FBSyxJQUFJLENBQUMsQ0FBQyxJQUFJLENBQUMsV0FBVyxDQUFDO0lBQzVELENBQUM7SUFFRCxZQUFvQixpQkFBb0M7UUFBcEMsc0JBQWlCLEdBQWpCLGlCQUFpQixDQUFtQjtRQS9EaEQsUUFBRyxHQUFHLGdCQUFnQixNQUFNLEVBQUUsRUFBRSxDQUFDO1FBR3pDLGFBQVEsR0FBRyxLQUFLLENBQUM7UUFHakIsVUFBSyxHQUFHLEVBQUUsQ0FBQztRQUdYLGdCQUFXLEdBQUcsRUFBRSxDQUFDO1FBR2pCLFdBQU0sR0FBRyxLQUFLLENBQUM7UUFHZixnQkFBVyxHQUFHLEtBQUssQ0FBQztRQUVwQix5Q0FBeUM7UUFDekMsV0FBVztRQUNYLFlBQU8sR0FBRyxLQUFLLENBQUM7UUFFYyxrQkFBYSxHQUFHLGtCQUFrQixDQUFDO0lBMENOLENBQUM7SUFFNUQsa0JBQWtCO1FBQ2hCLElBQUksSUFBSSxDQUFDLFFBQVEsRUFBRTtZQUNqQixJQUFJLENBQUMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxhQUFhLENBQUMsRUFBRSxFQUFFO2dCQUNuQyxJQUFJLENBQUMsUUFBUSxDQUFDLGFBQWEsQ0FBQyxFQUFFLEdBQUcsSUFBSSxDQUFDLEdBQUcsQ0FBQzthQUMzQztpQkFBTSxJQUFJLElBQUksQ0FBQyxHQUFHLEtBQUssSUFBSSxDQUFDLFFBQVEsQ0FBQyxhQUFhLENBQUMsRUFBRSxFQUFFO2dCQUN0RCxJQUFJLENBQUMsR0FBRyxHQUFHLElBQUksQ0FBQyxRQUFRLENBQUMsYUFBYSxDQUFDLEVBQUUsQ0FBQzthQUMzQztTQUNGO1FBRUQsSUFBSSxDQUFDLGlCQUFpQixDQUFDLGFBQWEsRUFBRSxDQUFDO0lBQ3pDLENBQUM7OEdBNUVVLGVBQWU7a0dBQWYsZUFBZSxvaEJBNkNaLG9CQUFvQiwyQkFBVSxVQUFVLDZCQy9EeEQseWJBaUJBOzsyRkRDYSxlQUFlO2tCQUwzQixTQUFTOytCQUNFLGNBQWM7c0ZBUXhCLFFBQVE7c0JBRFAsS0FBSztnQkFJTixLQUFLO3NCQURKLEtBQUs7Z0JBSU4sV0FBVztzQkFEVixLQUFLO2dCQUlOLE1BQU07c0JBREwsS0FBSztnQkFJTixXQUFXO3NCQURWLEtBQUs7Z0JBT3dCLGFBQWE7c0JBQTFDLFdBQVc7dUJBQUMsT0FBTztnQkFHUixtQkFBbUI7c0JBRDlCLFdBQVc7dUJBQUMsb0NBQW9DO2dCQUtILGVBQWU7c0JBQTVELFdBQVc7dUJBQUMsbUJBQW1CO2dCQUlvQixvQkFBb0I7c0JBQXZFLFdBQVc7dUJBQUMseUJBQXlCO2dCQUljLG9CQUFvQjtzQkFBdkUsV0FBVzt1QkFBQyx5QkFBeUI7Z0JBSUksWUFBWTtzQkFBckQsV0FBVzt1QkFBQyxlQUFlO2dCQUs1QixRQUFRO3NCQURQLFlBQVk7dUJBQUMsb0JBQW9CLEVBQUUsRUFBRSxJQUFJLEVBQUUsVUFBVSxFQUFFIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcbiAgQ29tcG9uZW50LFxuICBJbnB1dCxcbiAgVmlld0VuY2Fwc3VsYXRpb24sXG4gIEhvc3RCaW5kaW5nLFxuICBFbGVtZW50UmVmLFxuICBDaGFuZ2VEZXRlY3RvclJlZixcbiAgQWZ0ZXJWaWV3Q2hlY2tlZCxcbiAgQ29udGVudENoaWxkXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgbmFub2lkIH0gZnJvbSAnbmFub2lkJztcbmltcG9ydCB7IFRvZ2dsZUlucHV0Q29tcG9uZW50IH0gZnJvbSAnLi9jb21wb25lbnRzJztcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnaW1wZGMtdG9nZ2xlJyxcbiAgdGVtcGxhdGVVcmw6ICcuL3RvZ2dsZS5jb21wb25lbnQuaHRtbCcsXG4gIHN0eWxlVXJsczogWycuL3RvZ2dsZS5jb21wb25lbnQuc2NzcyddXG59KVxuZXhwb3J0IGNsYXNzIFRvZ2dsZUNvbXBvbmVudCBpbXBsZW1lbnRzIEFmdGVyVmlld0NoZWNrZWQge1xuICBwcml2YXRlIF9pZCA9IGBpbXBkYy10b2dnbGUtJHtuYW5vaWQoKX1gO1xuXG4gIEBJbnB1dCgpXG4gIGlzU3dpdGNoID0gZmFsc2U7XG5cbiAgQElucHV0KClcbiAgbGFiZWwgPSAnJztcblxuICBASW5wdXQoKVxuICBkZXNjcmlwdGlvbiA9ICcnO1xuXG4gIEBJbnB1dCgpXG4gIGlubGluZSA9IGZhbHNlO1xuXG4gIEBJbnB1dCgpXG4gIHN3aXRjaEljb25zID0gZmFsc2U7XG5cbiAgLy8gd2UgZG9uJ3Qgd2FudCB0aGlzIHRvIGJlIGJyYW5kYWJsZSB5ZXRcbiAgLy8gQElucHV0KClcbiAgYnJhbmRlZCA9IGZhbHNlO1xuXG4gIEBIb3N0QmluZGluZygnY2xhc3MnKSBwcml2YXRlIGNsYXNzRGVmYXVsdHMgPSAnaW1wZGMgZm9ybS1jaGVjayc7XG5cbiAgQEhvc3RCaW5kaW5nKCdjbGFzcy5pbXBkYy10b2dnbGUtaGFzLWRlc2NyaXB0aW9uJylcbiAgcHJpdmF0ZSBnZXQgY2xhc3NIYXNEZXNjcmlwdGlvbigpIHtcbiAgICByZXR1cm4gdGhpcy5zaG93RGVzY3JpcHRpb247XG4gIH1cblxuICBASG9zdEJpbmRpbmcoJ2NsYXNzLmZvcm0tc3dpdGNoJykgcHJpdmF0ZSBnZXQgY2xhc3NGb3JtU3dpdGNoKCkge1xuICAgIHJldHVybiB0aGlzLmlzQ2hlY2tib3ggJiYgdGhpcy5pc1N3aXRjaDtcbiAgfVxuXG4gIEBIb3N0QmluZGluZygnY2xhc3MuZm9ybS1jaGVjay1pbmxpbmUnKSBwcml2YXRlIGdldCBjbGFzc0Zvcm1DaGVja0lubGluZSgpIHtcbiAgICByZXR1cm4gdGhpcy5pbmxpbmU7XG4gIH1cblxuICBASG9zdEJpbmRpbmcoJ2NsYXNzLmZvcm0tc3dpdGNoLWljb25zJykgcHJpdmF0ZSBnZXQgY2xhc3NGb3JtU3dpdGNoSWNvbnMoKSB7XG4gICAgcmV0dXJuIHRoaXMuaXNDaGVja2JveCAmJiB0aGlzLmlzU3dpdGNoICYmIHRoaXMuc3dpdGNoSWNvbnM7XG4gIH1cblxuICBASG9zdEJpbmRpbmcoJ2NsYXNzLmJyYW5kZWQnKSBwcml2YXRlIGdldCBjbGFzc0JyYW5kZWQoKSB7XG4gICAgcmV0dXJuIHRoaXMuYnJhbmRlZDtcbiAgfVxuXG4gIEBDb250ZW50Q2hpbGQoVG9nZ2xlSW5wdXRDb21wb25lbnQsIHsgcmVhZDogRWxlbWVudFJlZiB9KVxuICBpbnB1dFJlZj86IEVsZW1lbnRSZWY8SFRNTElucHV0RWxlbWVudD47XG5cbiAgZ2V0IGlkKCk6IHN0cmluZyB7XG4gICAgcmV0dXJuIHRoaXMuX2lkO1xuICB9XG5cbiAgZ2V0IGlzQ2hlY2tib3goKTogYm9vbGVhbiB7XG4gICAgaWYgKCF0aGlzLmlucHV0UmVmKSB7XG4gICAgICByZXR1cm4gZmFsc2U7XG4gICAgfVxuXG4gICAgcmV0dXJuIHRoaXMuaW5wdXRSZWYubmF0aXZlRWxlbWVudC5nZXRBdHRyaWJ1dGUoJ3R5cGUnKSA9PT0gJ2NoZWNrYm94JztcbiAgfVxuXG4gIGdldCBzaG93RGVzY3JpcHRpb24oKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuICF0aGlzLmlubGluZSAmJiAhIXRoaXMubGFiZWwgJiYgISF0aGlzLmRlc2NyaXB0aW9uO1xuICB9XG5cbiAgY29uc3RydWN0b3IocHJpdmF0ZSBjaGFuZ2VEZXRlY3RvclJlZjogQ2hhbmdlRGV0ZWN0b3JSZWYpIHt9XG5cbiAgbmdBZnRlclZpZXdDaGVja2VkKCk6IHZvaWQge1xuICAgIGlmICh0aGlzLmlucHV0UmVmKSB7XG4gICAgICBpZiAoIXRoaXMuaW5wdXRSZWYubmF0aXZlRWxlbWVudC5pZCkge1xuICAgICAgICB0aGlzLmlucHV0UmVmLm5hdGl2ZUVsZW1lbnQuaWQgPSB0aGlzLl9pZDtcbiAgICAgIH0gZWxzZSBpZiAodGhpcy5faWQgIT09IHRoaXMuaW5wdXRSZWYubmF0aXZlRWxlbWVudC5pZCkge1xuICAgICAgICB0aGlzLl9pZCA9IHRoaXMuaW5wdXRSZWYubmF0aXZlRWxlbWVudC5pZDtcbiAgICAgIH1cbiAgICB9XG5cbiAgICB0aGlzLmNoYW5nZURldGVjdG9yUmVmLmRldGVjdENoYW5nZXMoKTtcbiAgfVxufVxuIiwiPGRpdiBjbGFzcz1cImltcGRjLXRvZ2dsZS1pbnB1dFwiPlxuICA8bmctY29udGVudCBzZWxlY3Q9XCJbaW1wZGMtdG9nZ2xlLWlucHV0XVwiPjwvbmctY29udGVudD5cbjwvZGl2PlxuPGRpdiAqbmdJZj1cImxhYmVsXCIgY2xhc3M9XCJpbXBkYy10b2dnbGUtaW5mb1wiPlxuICA8bGFiZWxcbiAgICAqbmdJZj1cImxhYmVsXCJcbiAgICBjbGFzcz1cImZvcm0tY2hlY2stbGFiZWwgaW1wZGMtdG9nZ2xlLWxhYmVsXCJcbiAgICBbYXR0ci5mb3JdPVwiaWRcIlxuICAgID57eyBsYWJlbCB9fTwvbGFiZWxcbiAgPlxuICA8bGFiZWxcbiAgICAqbmdJZj1cInNob3dEZXNjcmlwdGlvblwiXG4gICAgY2xhc3M9XCJpbXBkYy10b2dnbGUtZGVzY3JpcHRpb25cIlxuICAgIFthdHRyLmZvcl09XCJpZFwiXG4gICAgPnt7IGRlc2NyaXB0aW9uIH19PC9sYWJlbFxuICA+XG48L2Rpdj5cbiJdfQ==
112
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidG9nZ2xlLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2Rlc2lnbi1jb21wb25lbnRzL3NyYy9saWIvZm9ybS1maWVsZC9jb250cm9scy9zaGFyZWQvdG9nZ2xlL3RvZ2dsZS5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9kZXNpZ24tY29tcG9uZW50cy9zcmMvbGliL2Zvcm0tZmllbGQvY29udHJvbHMvc2hhcmVkL3RvZ2dsZS90b2dnbGUuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQy9DLE9BQU8sRUFDTCxTQUFTLEVBQ1QsS0FBSyxFQUNMLFdBQVcsRUFDWCxVQUFVLEVBR1YsWUFBWSxFQUNiLE1BQU0sZUFBZSxDQUFDO0FBQ3ZCLE9BQU8sRUFBRSxNQUFNLEVBQUUsTUFBTSxRQUFRLENBQUM7QUFDaEMsT0FBTyxFQUFFLG9CQUFvQixFQUFFLE1BQU0sY0FBYyxDQUFDOzs7QUFTcEQsTUFBTSxPQUFPLGVBQWU7SUEyQjFCLElBQ1ksbUJBQW1CO1FBQzdCLE9BQU8sSUFBSSxDQUFDLGVBQWUsQ0FBQztJQUM5QixDQUFDO0lBRUQsSUFBOEMsZUFBZTtRQUMzRCxPQUFPLElBQUksQ0FBQyxVQUFVLElBQUksSUFBSSxDQUFDLFFBQVEsQ0FBQztJQUMxQyxDQUFDO0lBRUQsSUFBb0Qsb0JBQW9CO1FBQ3RFLE9BQU8sSUFBSSxDQUFDLE1BQU0sQ0FBQztJQUNyQixDQUFDO0lBRUQsSUFBb0Qsb0JBQW9CO1FBQ3RFLE9BQU8sSUFBSSxDQUFDLFVBQVUsSUFBSSxJQUFJLENBQUMsUUFBUSxJQUFJLElBQUksQ0FBQyxXQUFXLENBQUM7SUFDOUQsQ0FBQztJQUVELElBQTBDLFlBQVk7UUFDcEQsT0FBTyxJQUFJLENBQUMsT0FB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QyxRQUFRO3NCQURQLFlBQVk7dUJBQUMsb0JBQW9CLEVBQUUsRUFBRSxJQUFJLEVBQUUsVUFBVSxFQUFFIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tbW9uTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcbmltcG9ydCB7XG4gIENvbXBvbmVudCxcbiAgSW5wdXQsXG4gIEhvc3RCaW5kaW5nLFxuICBFbGVtZW50UmVmLFxuICBDaGFuZ2VEZXRlY3RvclJlZixcbiAgQWZ0ZXJWaWV3Q2hlY2tlZCxcbiAgQ29udGVudENoaWxkXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgbmFub2lkIH0gZnJvbSAnbmFub2lkJztcbmltcG9ydCB7IFRvZ2dsZUlucHV0Q29tcG9uZW50IH0gZnJvbSAnLi9jb21wb25lbnRzJztcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnaW1wZGMtdG9nZ2xlJyxcbiAgc3RhbmRhbG9uZTogdHJ1ZSxcbiAgaW1wb3J0czogW0NvbW1vbk1vZHVsZSwgVG9nZ2xlSW5wdXRDb21wb25lbnRdLFxuICB0ZW1wbGF0ZVVybDogJy4vdG9nZ2xlLmNvbXBvbmVudC5odG1sJyxcbiAgc3R5bGVVcmxzOiBbJy4vdG9nZ2xlLmNvbXBvbmVudC5zY3NzJ11cbn0pXG5leHBvcnQgY2xhc3MgVG9nZ2xlQ29tcG9uZW50IGltcGxlbWVudHMgQWZ0ZXJWaWV3Q2hlY2tlZCB7XG4gIHByaXZhdGUgX2lkID0gYGltcGRjLXRvZ2dsZS0ke25hbm9pZCgpfWA7XG5cbiAgQElucHV0KClcbiAgaXNTd2l0Y2ggPSBmYWxzZTtcblxuICBASW5wdXQoKVxuICBsYWJlbCA9ICcnO1xuXG4gIEBJbnB1dCgpXG4gIGRlc2NyaXB0aW9uID0gJyc7XG5cbiAgQElucHV0KClcbiAgaW5saW5lID0gZmFsc2U7XG5cbiAgQElucHV0KClcbiAgc3dpdGNoSWNvbnMgPSBmYWxzZTtcblxuICBASW5wdXQoKVxuICBsYXlvdXQ6ICdjaGVjay1zdGFydCcgfCAnY2hlY2stZW5kJyA9ICdjaGVjay1zdGFydCc7XG5cbiAgLy8gd2UgZG9uJ3Qgd2FudCB0aGlzIHRvIGJlIGJyYW5kYWJsZSB5ZXRcbiAgLy8gQElucHV0KClcbiAgYnJhbmRlZCA9IGZhbHNlO1xuXG4gIEBIb3N0QmluZGluZygnY2xhc3MnKSBwcml2YXRlIGNsYXNzRGVmYXVsdHMgPSAnaW1wZGMgZm9ybS1jaGVjayc7XG5cbiAgQEhvc3RCaW5kaW5nKCdjbGFzcy5pbXBkYy10b2dnbGUtaGFzLWRlc2NyaXB0aW9uJylcbiAgcHJpdmF0ZSBnZXQgY2xhc3NIYXNEZXNjcmlwdGlvbigpIHtcbiAgICByZXR1cm4gdGhpcy5zaG93RGVzY3JpcHRpb247XG4gIH1cblxuICBASG9zdEJpbmRpbmcoJ2NsYXNzLmZvcm0tc3dpdGNoJykgcHJpdmF0ZSBnZXQgY2xhc3NGb3JtU3dpdGNoKCkge1xuICAgIHJldHVybiB0aGlzLmlzQ2hlY2tib3ggJiYgdGhpcy5pc1N3aXRjaDtcbiAgfVxuXG4gIEBIb3N0QmluZGluZygnY2xhc3MuZm9ybS1jaGVjay1pbmxpbmUnKSBwcml2YXRlIGdldCBjbGFzc0Zvcm1DaGVja0lubGluZSgpIHtcbiAgICByZXR1cm4gdGhpcy5pbmxpbmU7XG4gIH1cblxuICBASG9zdEJpbmRpbmcoJ2NsYXNzLmZvcm0tc3dpdGNoLWljb25zJykgcHJpdmF0ZSBnZXQgY2xhc3NGb3JtU3dpdGNoSWNvbnMoKSB7XG4gICAgcmV0dXJuIHRoaXMuaXNDaGVja2JveCAmJiB0aGlzLmlzU3dpdGNoICYmIHRoaXMuc3dpdGNoSWNvbnM7XG4gIH1cblxuICBASG9zdEJpbmRpbmcoJ2NsYXNzLmJyYW5kZWQnKSBwcml2YXRlIGdldCBjbGFzc0JyYW5kZWQoKSB7XG4gICAgcmV0dXJuIHRoaXMuYnJhbmRlZDtcbiAgfVxuXG4gIEBIb3N0QmluZGluZygnY2xhc3MuZmxleC1yb3ctcmV2ZXJzZScpIHByaXZhdGUgZ2V0IGNsYXNzRmxleFJvd1JldmVyc2UoKSB7XG4gICAgcmV0dXJuIHRoaXMubGF5b3V0ID09PSAnY2hlY2stZW5kJztcbiAgfVxuXG4gIEBIb3N0QmluZGluZygnY2xhc3MuanVzdGlmeS1jb250ZW50LWVuZCcpXG4gIHByaXZhdGUgZ2V0IGNsYXNzSnVzdGlmeUNvbnRlbnRFbmQoKSB7XG4gICAgcmV0dXJuIHRoaXMubGF5b3V0ID09PSAnY2hlY2stZW5kJztcbiAgfVxuXG4gIEBDb250ZW50Q2hpbGQoVG9nZ2xlSW5wdXRDb21wb25lbnQsIHsgcmVhZDogRWxlbWVudFJlZiB9KVxuICBpbnB1dFJlZj86IEVsZW1lbnRSZWY8SFRNTElucHV0RWxlbWVudD47XG5cbiAgZ2V0IGlkKCk6IHN0cmluZyB7XG4gICAgcmV0dXJuIHRoaXMuX2lkO1xuICB9XG5cbiAgZ2V0IGlzQ2hlY2tib3goKTogYm9vbGVhbiB7XG4gICAgaWYgKCF0aGlzLmlucHV0UmVmKSB7XG4gICAgICByZXR1cm4gZmFsc2U7XG4gICAgfVxuXG4gICAgcmV0dXJuIHRoaXMuaW5wdXRSZWYubmF0aXZlRWxlbWVudC5nZXRBdHRyaWJ1dGUoJ3R5cGUnKSA9PT0gJ2NoZWNrYm94JztcbiAgfVxuXG4gIGdldCBzaG93RGVzY3JpcHRpb24oKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuICF0aGlzLmlubGluZSAmJiAhIXRoaXMubGFiZWwgJiYgISF0aGlzLmRlc2NyaXB0aW9uO1xuICB9XG5cbiAgY29uc3RydWN0b3IocHJpdmF0ZSBjaGFuZ2VEZXRlY3RvclJlZjogQ2hhbmdlRGV0ZWN0b3JSZWYpIHt9XG5cbiAgbmdBZnRlclZpZXdDaGVja2VkKCk6IHZvaWQge1xuICAgIGlmICh0aGlzLmlucHV0UmVmKSB7XG4gICAgICBpZiAoIXRoaXMuaW5wdXRSZWYubmF0aXZlRWxlbWVudC5pZCkge1xuICAgICAgICB0aGlzLmlucHV0UmVmLm5hdGl2ZUVsZW1lbnQuaWQgPSB0aGlzLl9pZDtcbiAgICAgIH0gZWxzZSBpZiAodGhpcy5faWQgIT09IHRoaXMuaW5wdXRSZWYubmF0aXZlRWxlbWVudC5pZCkge1xuICAgICAgICB0aGlzLl9pZCA9IHRoaXMuaW5wdXRSZWYubmF0aXZlRWxlbWVudC5pZDtcbiAgICAgIH1cbiAgICB9XG5cbiAgICB0aGlzLmNoYW5nZURldGVjdG9yUmVmLmRldGVjdENoYW5nZXMoKTtcbiAgfVxufVxuIiwiPGRpdiBjbGFzcz1cImltcGRjLXRvZ2dsZS1pbnB1dFwiPlxuICA8bmctY29udGVudCBzZWxlY3Q9XCJbaW1wZGMtdG9nZ2xlLWlucHV0XVwiPjwvbmctY29udGVudD5cbjwvZGl2PlxuPGRpdiAqbmdJZj1cImxhYmVsXCIgY2xhc3M9XCJpbXBkYy10b2dnbGUtaW5mb1wiPlxuICA8bGFiZWxcbiAgICAqbmdJZj1cImxhYmVsXCJcbiAgICBjbGFzcz1cImZvcm0tY2hlY2stbGFiZWwgaW1wZGMtdG9nZ2xlLWxhYmVsXCJcbiAgICBbYXR0ci5mb3JdPVwiaWRcIlxuICAgID57eyBsYWJlbCB9fTwvbGFiZWxcbiAgPlxuICA8bGFiZWxcbiAgICAqbmdJZj1cInNob3dEZXNjcmlwdGlvblwiXG4gICAgY2xhc3M9XCJpbXBkYy10b2dnbGUtZGVzY3JpcHRpb25cIlxuICAgIFthdHRyLmZvcl09XCJpZFwiXG4gICAgPnt7IGRlc2NyaXB0aW9uIH19PC9sYWJlbFxuICA+XG48L2Rpdj5cbiJdfQ==
@@ -1,4 +1,3 @@
1
- import { CommonModule } from '@angular/common';
2
1
  import { NgModule } from '@angular/core';
3
2
  import { ToggleComponent } from './toggle.component';
4
3
  import { ToggleInputComponent } from './components';
@@ -6,15 +5,14 @@ import * as i0 from "@angular/core";
6
5
  export class ToggleModule {
7
6
  constructor() { }
8
7
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.0.1", ngImport: i0, type: ToggleModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
9
- static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "17.0.1", ngImport: i0, type: ToggleModule, declarations: [ToggleComponent, ToggleInputComponent], imports: [CommonModule], exports: [ToggleComponent, ToggleInputComponent] }); }
10
- static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "17.0.1", ngImport: i0, type: ToggleModule, imports: [CommonModule] }); }
8
+ static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "17.0.1", ngImport: i0, type: ToggleModule, imports: [ToggleComponent, ToggleInputComponent], exports: [ToggleComponent, ToggleInputComponent] }); }
9
+ static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "17.0.1", ngImport: i0, type: ToggleModule, imports: [ToggleComponent] }); }
11
10
  }
12
11
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.0.1", ngImport: i0, type: ToggleModule, decorators: [{
13
12
  type: NgModule,
14
13
  args: [{
15
- imports: [CommonModule],
16
- declarations: [ToggleComponent, ToggleInputComponent],
14
+ imports: [ToggleComponent, ToggleInputComponent],
17
15
  exports: [ToggleComponent, ToggleInputComponent]
18
16
  }]
19
17
  }], ctorParameters: () => [] });
20
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidG9nZ2xlLm1vZHVsZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2Rlc2lnbi1jb21wb25lbnRzL3NyYy9saWIvZm9ybS1maWVsZC9jb250cm9scy9zaGFyZWQvdG9nZ2xlL3RvZ2dsZS5tb2R1bGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQy9DLE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDekMsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLG9CQUFvQixDQUFDO0FBQ3JELE9BQU8sRUFBRSxvQkFBb0IsRUFBRSxNQUFNLGNBQWMsQ0FBQzs7QUFPcEQsTUFBTSxPQUFPLFlBQVk7SUFDdkIsZ0JBQWUsQ0FBQzs4R0FETCxZQUFZOytHQUFaLFlBQVksaUJBSFIsZUFBZSxFQUFFLG9CQUFvQixhQUQxQyxZQUFZLGFBRVosZUFBZSxFQUFFLG9CQUFvQjsrR0FFcEMsWUFBWSxZQUpiLFlBQVk7OzJGQUlYLFlBQVk7a0JBTHhCLFFBQVE7bUJBQUM7b0JBQ1IsT0FBTyxFQUFFLENBQUMsWUFBWSxDQUFDO29CQUN2QixZQUFZLEVBQUUsQ0FBQyxlQUFlLEVBQUUsb0JBQW9CLENBQUM7b0JBQ3JELE9BQU8sRUFBRSxDQUFDLGVBQWUsRUFBRSxvQkFBb0IsQ0FBQztpQkFDakQiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21tb25Nb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xuaW1wb3J0IHsgTmdNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IFRvZ2dsZUNvbXBvbmVudCB9IGZyb20gJy4vdG9nZ2xlLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBUb2dnbGVJbnB1dENvbXBvbmVudCB9IGZyb20gJy4vY29tcG9uZW50cyc7XG5cbkBOZ01vZHVsZSh7XG4gIGltcG9ydHM6IFtDb21tb25Nb2R1bGVdLFxuICBkZWNsYXJhdGlvbnM6IFtUb2dnbGVDb21wb25lbnQsIFRvZ2dsZUlucHV0Q29tcG9uZW50XSxcbiAgZXhwb3J0czogW1RvZ2dsZUNvbXBvbmVudCwgVG9nZ2xlSW5wdXRDb21wb25lbnRdXG59KVxuZXhwb3J0IGNsYXNzIFRvZ2dsZU1vZHVsZSB7XG4gIGNvbnN0cnVjdG9yKCkge31cbn1cbiJdfQ==
18
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidG9nZ2xlLm1vZHVsZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2Rlc2lnbi1jb21wb25lbnRzL3NyYy9saWIvZm9ybS1maWVsZC9jb250cm9scy9zaGFyZWQvdG9nZ2xlL3RvZ2dsZS5tb2R1bGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUN6QyxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sb0JBQW9CLENBQUM7QUFDckQsT0FBTyxFQUFFLG9CQUFvQixFQUFFLE1BQU0sY0FBYyxDQUFDOztBQU1wRCxNQUFNLE9BQU8sWUFBWTtJQUN2QixnQkFBZSxDQUFDOzhHQURMLFlBQVk7K0dBQVosWUFBWSxZQUhiLGVBQWUsRUFBRSxvQkFBb0IsYUFDckMsZUFBZSxFQUFFLG9CQUFvQjsrR0FFcEMsWUFBWSxZQUhiLGVBQWU7OzJGQUdkLFlBQVk7a0JBSnhCLFFBQVE7bUJBQUM7b0JBQ1IsT0FBTyxFQUFFLENBQUMsZUFBZSxFQUFFLG9CQUFvQixDQUFDO29CQUNoRCxPQUFPLEVBQUUsQ0FBQyxlQUFlLEVBQUUsb0JBQW9CLENBQUM7aUJBQ2pEIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgTmdNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IFRvZ2dsZUNvbXBvbmVudCB9IGZyb20gJy4vdG9nZ2xlLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBUb2dnbGVJbnB1dENvbXBvbmVudCB9IGZyb20gJy4vY29tcG9uZW50cyc7XG5cbkBOZ01vZHVsZSh7XG4gIGltcG9ydHM6IFtUb2dnbGVDb21wb25lbnQsIFRvZ2dsZUlucHV0Q29tcG9uZW50XSxcbiAgZXhwb3J0czogW1RvZ2dsZUNvbXBvbmVudCwgVG9nZ2xlSW5wdXRDb21wb25lbnRdXG59KVxuZXhwb3J0IGNsYXNzIFRvZ2dsZU1vZHVsZSB7XG4gIGNvbnN0cnVjdG9yKCkge31cbn1cbiJdfQ==
@@ -0,0 +1,2 @@
1
+ export * from './tag-select.component';
2
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9kZXNpZ24tY29tcG9uZW50cy9zcmMvbGliL2Zvcm0tZmllbGQvY29udHJvbHMvdGFnLXNlbGVjdC9pbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxjQUFjLHdCQUF3QixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0ICogZnJvbSAnLi90YWctc2VsZWN0LmNvbXBvbmVudCc7XG4iXX0=
@@ -0,0 +1,146 @@
1
+ import { AsyncPipe, CommonModule } from '@angular/common';
2
+ import { Attribute, ChangeDetectionStrategy, Component, Input, booleanAttribute, numberAttribute } from '@angular/core';
3
+ import { ReactiveFormsModule } from '@angular/forms';
4
+ import { NgbDropdownModule } from '@ng-bootstrap/ng-bootstrap';
5
+ import { nanoid } from 'nanoid';
6
+ import { IconModule } from '../../../icon';
7
+ import { TagComponent } from '../../../tag';
8
+ import { FormFieldModule } from '../../component';
9
+ import { ImpdcFormFieldControl } from '../../shared';
10
+ import { _SelectComponentBase } from '../select/select.component';
11
+ import { InputDirective } from '../input';
12
+ import { IMPDC_SELECT_OPTION_PARENT_COMPONENT, IMPDC_SELECT_VALUE_BADGES_PARENT_COMPONENT, SelectOptionDisplayComponent, SelectValueTagsDisplayComponent } from '../select';
13
+ import * as i0 from "@angular/core";
14
+ import * as i1 from "@angular/common";
15
+ import * as i2 from "@angular/forms";
16
+ import * as i3 from "@ng-bootstrap/ng-bootstrap";
17
+ import * as i4 from "../../../icon/icon.component";
18
+ import * as i5 from "../../component/form-field.component";
19
+ import * as i6 from "../../component/directives/prefix.directive";
20
+ import * as i7 from "../../component/directives/suffix.directive";
21
+ /**
22
+ * The `TagSelectComponent` (`<impdc-tag-select>`) is a form control where multiple "tag"-like values can
23
+ * be picked from a list of *unique* available options. This component can be used within a `FormFieldComponent`
24
+ * (`<impdc-form-field>`) component or on its own. To use, add `TagSelectComponent` to the `imports` array of
25
+ * the relevant `NgModule` or standalone component.
26
+ */
27
+ export class TagSelectComponent extends _SelectComponentBase {
28
+ constructor(tabIndex) {
29
+ super(`impdc-tag-select-${nanoid()}`, tabIndex);
30
+ this.controlType = 'impdc-tag-select';
31
+ this.supportsAffixes = false;
32
+ /**
33
+ * Render the control is a readonly state.
34
+ *
35
+ * Semantically distinct from `disabled`, `readonly` controls will still have their values bound in
36
+ * Angular forms and `FormGroup`s, whereas a disabled control's value would be omitted.
37
+ */
38
+ this.readonly = false;
39
+ /**
40
+ * The maximum number of values that will be displayed inline before truncation occurs.
41
+ */
42
+ this.truncateThreshold = 8;
43
+ /**
44
+ * Text to be shown when displayed values are truncated, allowing the user to view all selected values.
45
+ */
46
+ this.showMoreLabel = 'Show more...';
47
+ /**
48
+ * Text to be shown when displayed values have been expanded beyond the truncation threshold, allowing
49
+ * the user collapse the view again.
50
+ */
51
+ this.showLessLabel = 'Show less...';
52
+ this._multiple = true;
53
+ this._placeholder = 'Add Tags';
54
+ }
55
+ /** @ignore */
56
+ deselectOption(option) {
57
+ this._deselectOption(option);
58
+ }
59
+ toggleDropdown(evt) {
60
+ if (!this.ngbDropdown || this.disabled) {
61
+ return;
62
+ }
63
+ evt.stopPropagation();
64
+ evt.preventDefault();
65
+ this.ngbDropdown.toggle();
66
+ }
67
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.0.1", ngImport: i0, type: TagSelectComponent, deps: [{ token: 'tabindex', attribute: true }], target: i0.ɵɵFactoryTarget.Component }); }
68
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "17.0.1", type: TagSelectComponent, isStandalone: true, selector: "impdc-tag-select", inputs: { disabled: "disabled", tabIndex: ["tabIndex", "tabIndex", numberAttribute], search: "search", placeholder: "placeholder", required: ["required", "required", booleanAttribute], compareWith: "compareWith", dropdownContainer: "dropdownContainer", errorStateMatcher: "errorStateMatcher", readonly: ["readonly", "readonly", booleanAttribute], truncateThreshold: ["truncateThreshold", "truncateThreshold", numberAttribute], showMoreLabel: "showMoreLabel", showLessLabel: "showLessLabel" }, outputs: { selectionChange: "selectionChange", valueChange: "valueChange", searchTextChanges: "searchTextChanges" }, host: { listeners: { "focus": "onFocus(); focus()" }, properties: { "attr.id": "id", "attr.tabindex": "tabIndex", "attr.aria-required": "required.toString()", "attr.aria-disabled": "disabled.toString()", "attr.aria-invalid": "errorState", "class.is-invalid": "errorState", "class.impdc-form-field-control": "true", "class.impdc-tag-select--required": "required", "class.impdc-tag-select--disabled": "disabled", "class.impdc-tag-select--invalid": "errorState", "class.impdc-tag-select--empty": "empty" } }, providers: [
69
+ {
70
+ provide: ImpdcFormFieldControl,
71
+ useExisting: TagSelectComponent
72
+ },
73
+ {
74
+ provide: IMPDC_SELECT_OPTION_PARENT_COMPONENT,
75
+ useExisting: TagSelectComponent
76
+ },
77
+ {
78
+ provide: IMPDC_SELECT_VALUE_BADGES_PARENT_COMPONENT,
79
+ useExisting: TagSelectComponent
80
+ }
81
+ ], exportAs: ["impdcTagSelect"], usesInheritance: true, ngImport: i0, template: "<impdc-select-value-tags-display\n rounded=\"true\"\n [readonly]=\"readonly\"\n [truncateThreshold]=\"truncateThreshold\"\n [showMoreLabel]=\"showMoreLabel\"\n [showLessLabel]=\"showLessLabel\">\n <div\n ngbDropdown\n #dropdown=\"ngbDropdown\"\n [class.d-none]=\"readonly || disabled\"\n autoClose=\"outside\"\n [container]=\"dropdownContainer\"\n [dropdownClass]=\"dropdownContainer === 'body' ? 'impartner-hex' : ''\"\n (openChange)=\"handleOpenChange($event)\">\n @if (!readonly && !disabled) {\n <impdc-tag\n #toggleButton\n class=\"impdc-tag-select--toggle no-caret\"\n theme=\"outline\"\n [rounded]=\"true\"\n (focus)=\"onFocus()\"\n (click)=\"toggleDropdown($event)\"\n ngbDropdownAnchor>\n {{ empty ? placeholder : '' }}\n <impdc-icon name=\"plus\" theme=\"light\" />\n </impdc-tag>\n }\n <div\n ngbDropdownMenu\n class=\"impdc-tag-select--dropdown-menu bg-white text-gray-600\"\n role=\"listbox\"\n tabindex=\"-1\">\n <div *ngIf=\"search !== 'none'\" class=\"impdc-tag-select--search\">\n <impdc-form-field>\n <span impdcTextPrefix (click)=\"searchInput.focus()\">\n <impdc-icon name=\"search\"></impdc-icon>\n </span>\n <input\n #searchInput\n impdcInput\n [formControl]=\"searchControl\"\n class=\"impdc-tag-select--search-input\"\n type=\"search\"\n (keydown.enter)=\"handleSearchSubmit($event)\"\n (keydown.arrowdown)=\"handleSearchUpDown($event, 'up')\"\n (keydown.arrowup)=\"handleSearchUpDown($event, 'down')\" />\n <span impdcTextSuffix>\n <button\n *ngIf=\"searchControl.value\"\n type=\"button\"\n class=\"impdc-tag-select--clear-btn btn btn-xs btn-link text-gray-400 ms-auto\"\n (click)=\"searchControl.reset(); searchInput.focus()\">\n <impdc-icon name=\"times\" [size]=\"16\"></impdc-icon>\n </button>\n </span>\n </impdc-form-field>\n </div>\n <div class=\"impdc-tag-select--options\">\n @for (option of filteredOptions$ | async; track option.value; let idx =\n $index; let first = $first) { @if (option.groupLabel &&\n option.showGroupLabel) {\n <div class=\"impdc-tag-select--option-group-label\">\n {{ option.groupLabel }}\n </div>\n }\n <impdc-select-option-display\n [class.impdc-select-option--active]=\"idx === activeIndex\"\n [class.impdc-select-option--grouped]=\"!!option.groupLabel\"\n [groupLabel]=\"option.groupLabel\"\n [label]=\"option.label\"\n [value]=\"option.value\"\n [disabled]=\"!!option.disabled\"\n [selected]=\"option.selected\"\n [highlightText]=\"searchControl.value\"\n (mouseenter)=\"markActive(idx)\"\n (focus)=\"markActive(idx)\" />\n }\n </div>\n </div>\n </div>\n</impdc-select-value-tags-display>\n", styles: [".impdc-tag-select--clear-btn{align-items:center;color:var(--impd-color-gray-400);display:inline-flex;justify-content:center;padding:0;height:2rem;width:2rem;box-shadow:none!important}.impdc-tag-select--clear-btn:focus-visible{box-shadow:var(--impartner-hex-btn-box-shadow),var(--impartner-hex-btn-focus-box-shadow)!important}.impdc-tag-select--clear-btn impdc-icon{line-height:1}.impdc-tag-select--dropdown-menu{overflow:hidden}.impdc-tag-select--search{padding-left:var(--impd-size-2);padding-right:var(--impd-size-2)}.impdc-tag-select--search [impdcTextSuffix]{min-width:3.4rem;width:3.4rem}.impdc-tag-select--options{overflow-y:auto;overflow-x:hidden;max-height:var(--impd-size-72)}.impdc-tag-select--option-group-label{color:var(--impd-color-gray-600);font-size:var(--impd-size-2_5);font-weight:var(--impd-font-weight-semibold);line-height:var(--impd-size-4);padding:var(--impd-size-1) var(--impd-size-4);text-transform:uppercase;white-space:nowrap}.impdc-tag-select--option-group-label:not(:first-child){margin-top:var(--impd-size-2)}button[ngbDropdownToggle].dropdown-toggle:after{display:none}:host{--impdc-select-value-tags--gap: var(--impd-size-1);--impdc-tag-select--border-color: var(--impd-color-gray-400);--impdc-tag-select--color: var(--impd-color-gray-900);--impdc-tag-select--icon-color: var(--impd-color-gray-500);opacity:var(--impartner-hex-input-opacity, 1)}:host.is-invalid{--impdc-tag-select--border-color: var(--impd-color-red-400);--impdc-tag-select--color: var(--impd-color-red-600);--impdc-tag-select--icon-color: var(--impd-color-red-500)}impdc-tag.impdc-tag-select--toggle{border-style:dashed;cursor:pointer}impdc-tag.impdc-tag-select--toggle.disabled{pointer-events:none}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "pipe", type: i1.AsyncPipe, name: "async" }, { kind: "ngmodule", type: ReactiveFormsModule }, { kind: "directive", type: i2.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i2.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i2.FormControlDirective, selector: "[formControl]", inputs: ["formControl", "disabled", "ngModel"], outputs: ["ngModelChange"], exportAs: ["ngForm"] }, { kind: "ngmodule", type: NgbDropdownModule }, { kind: "directive", type: i3.NgbDropdown, selector: "[ngbDropdown]", inputs: ["autoClose", "dropdownClass", "open", "placement", "popperOptions", "container", "display"], outputs: ["openChange"], exportAs: ["ngbDropdown"] }, { kind: "directive", type: i3.NgbDropdownAnchor, selector: "[ngbDropdownAnchor]" }, { kind: "directive", type: i3.NgbDropdownMenu, selector: "[ngbDropdownMenu]" }, { kind: "ngmodule", type: IconModule }, { kind: "component", type: i4.IconComponent, selector: "impdc-icon, [impdc-icon]", inputs: ["name", "theme", "size"] }, { kind: "component", type: SelectOptionDisplayComponent, selector: "impdc-select-option-display", inputs: ["selected", "value", "label", "groupLabel", "highlightText", "id", "disabled"], outputs: ["onSelectionChange"] }, { kind: "component", type: SelectValueTagsDisplayComponent, selector: "impdc-select-value-tags-display", inputs: ["rounded", "select", "readonly", "truncateThreshold", "showMoreLabel", "showLessLabel"] }, { kind: "ngmodule", type: FormFieldModule }, { kind: "component", type: i5.FormFieldComponent, selector: "impdc-form-field", exportAs: ["impdcFormField"] }, { kind: "directive", type: i6.PrefixDirective, selector: "[impdcPrefix], [impdcTextPrefix]", inputs: ["impdcTextPrefix"] }, { kind: "directive", type: i7.SuffixDirective, selector: "[impdcSuffix], [impdcTextSuffix]", inputs: ["impdcTextSuffix"] }, { kind: "directive", type: InputDirective, selector: "input[impdcInput], textarea[impdcInput], select[impdcNativeSelect]", inputs: ["disabled", "id", "type", "required", "readonly", "errorStateMatcher", "value"], exportAs: ["impdcInput"] }, { kind: "component", type: TagComponent, selector: "impdc-tag", inputs: ["disabled", "tabIndex", "theme", "rounded", "withButton", "buttonIcon"], outputs: ["buttonClick"], exportAs: ["impdcTag"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
82
+ }
83
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.0.1", ngImport: i0, type: TagSelectComponent, decorators: [{
84
+ type: Component,
85
+ args: [{ selector: 'impdc-tag-select', exportAs: 'impdcTagSelect', standalone: true, imports: [
86
+ CommonModule,
87
+ AsyncPipe,
88
+ ReactiveFormsModule,
89
+ NgbDropdownModule,
90
+ IconModule,
91
+ SelectOptionDisplayComponent,
92
+ SelectValueTagsDisplayComponent,
93
+ FormFieldModule,
94
+ InputDirective,
95
+ TagComponent
96
+ ], inputs: [
97
+ 'disabled',
98
+ { name: 'tabIndex', transform: numberAttribute },
99
+ 'search',
100
+ 'placeholder',
101
+ { name: 'required', transform: booleanAttribute },
102
+ 'compareWith',
103
+ 'dropdownContainer',
104
+ 'errorStateMatcher'
105
+ ], outputs: ['selectionChange', 'valueChange', 'searchTextChanges'], changeDetection: ChangeDetectionStrategy.OnPush, host: {
106
+ '[attr.id]': 'id',
107
+ '[attr.tabindex]': 'tabIndex',
108
+ '[attr.aria-required]': 'required.toString()',
109
+ '[attr.aria-disabled]': 'disabled.toString()',
110
+ '[attr.aria-invalid]': 'errorState',
111
+ '[class.is-invalid]': 'errorState',
112
+ '[class.impdc-form-field-control]': 'true',
113
+ '[class.impdc-tag-select--required]': 'required',
114
+ '[class.impdc-tag-select--disabled]': 'disabled',
115
+ '[class.impdc-tag-select--invalid]': 'errorState',
116
+ '[class.impdc-tag-select--empty]': 'empty',
117
+ '(focus)': 'onFocus(); focus()'
118
+ }, providers: [
119
+ {
120
+ provide: ImpdcFormFieldControl,
121
+ useExisting: TagSelectComponent
122
+ },
123
+ {
124
+ provide: IMPDC_SELECT_OPTION_PARENT_COMPONENT,
125
+ useExisting: TagSelectComponent
126
+ },
127
+ {
128
+ provide: IMPDC_SELECT_VALUE_BADGES_PARENT_COMPONENT,
129
+ useExisting: TagSelectComponent
130
+ }
131
+ ], template: "<impdc-select-value-tags-display\n rounded=\"true\"\n [readonly]=\"readonly\"\n [truncateThreshold]=\"truncateThreshold\"\n [showMoreLabel]=\"showMoreLabel\"\n [showLessLabel]=\"showLessLabel\">\n <div\n ngbDropdown\n #dropdown=\"ngbDropdown\"\n [class.d-none]=\"readonly || disabled\"\n autoClose=\"outside\"\n [container]=\"dropdownContainer\"\n [dropdownClass]=\"dropdownContainer === 'body' ? 'impartner-hex' : ''\"\n (openChange)=\"handleOpenChange($event)\">\n @if (!readonly && !disabled) {\n <impdc-tag\n #toggleButton\n class=\"impdc-tag-select--toggle no-caret\"\n theme=\"outline\"\n [rounded]=\"true\"\n (focus)=\"onFocus()\"\n (click)=\"toggleDropdown($event)\"\n ngbDropdownAnchor>\n {{ empty ? placeholder : '' }}\n <impdc-icon name=\"plus\" theme=\"light\" />\n </impdc-tag>\n }\n <div\n ngbDropdownMenu\n class=\"impdc-tag-select--dropdown-menu bg-white text-gray-600\"\n role=\"listbox\"\n tabindex=\"-1\">\n <div *ngIf=\"search !== 'none'\" class=\"impdc-tag-select--search\">\n <impdc-form-field>\n <span impdcTextPrefix (click)=\"searchInput.focus()\">\n <impdc-icon name=\"search\"></impdc-icon>\n </span>\n <input\n #searchInput\n impdcInput\n [formControl]=\"searchControl\"\n class=\"impdc-tag-select--search-input\"\n type=\"search\"\n (keydown.enter)=\"handleSearchSubmit($event)\"\n (keydown.arrowdown)=\"handleSearchUpDown($event, 'up')\"\n (keydown.arrowup)=\"handleSearchUpDown($event, 'down')\" />\n <span impdcTextSuffix>\n <button\n *ngIf=\"searchControl.value\"\n type=\"button\"\n class=\"impdc-tag-select--clear-btn btn btn-xs btn-link text-gray-400 ms-auto\"\n (click)=\"searchControl.reset(); searchInput.focus()\">\n <impdc-icon name=\"times\" [size]=\"16\"></impdc-icon>\n </button>\n </span>\n </impdc-form-field>\n </div>\n <div class=\"impdc-tag-select--options\">\n @for (option of filteredOptions$ | async; track option.value; let idx =\n $index; let first = $first) { @if (option.groupLabel &&\n option.showGroupLabel) {\n <div class=\"impdc-tag-select--option-group-label\">\n {{ option.groupLabel }}\n </div>\n }\n <impdc-select-option-display\n [class.impdc-select-option--active]=\"idx === activeIndex\"\n [class.impdc-select-option--grouped]=\"!!option.groupLabel\"\n [groupLabel]=\"option.groupLabel\"\n [label]=\"option.label\"\n [value]=\"option.value\"\n [disabled]=\"!!option.disabled\"\n [selected]=\"option.selected\"\n [highlightText]=\"searchControl.value\"\n (mouseenter)=\"markActive(idx)\"\n (focus)=\"markActive(idx)\" />\n }\n </div>\n </div>\n </div>\n</impdc-select-value-tags-display>\n", styles: [".impdc-tag-select--clear-btn{align-items:center;color:var(--impd-color-gray-400);display:inline-flex;justify-content:center;padding:0;height:2rem;width:2rem;box-shadow:none!important}.impdc-tag-select--clear-btn:focus-visible{box-shadow:var(--impartner-hex-btn-box-shadow),var(--impartner-hex-btn-focus-box-shadow)!important}.impdc-tag-select--clear-btn impdc-icon{line-height:1}.impdc-tag-select--dropdown-menu{overflow:hidden}.impdc-tag-select--search{padding-left:var(--impd-size-2);padding-right:var(--impd-size-2)}.impdc-tag-select--search [impdcTextSuffix]{min-width:3.4rem;width:3.4rem}.impdc-tag-select--options{overflow-y:auto;overflow-x:hidden;max-height:var(--impd-size-72)}.impdc-tag-select--option-group-label{color:var(--impd-color-gray-600);font-size:var(--impd-size-2_5);font-weight:var(--impd-font-weight-semibold);line-height:var(--impd-size-4);padding:var(--impd-size-1) var(--impd-size-4);text-transform:uppercase;white-space:nowrap}.impdc-tag-select--option-group-label:not(:first-child){margin-top:var(--impd-size-2)}button[ngbDropdownToggle].dropdown-toggle:after{display:none}:host{--impdc-select-value-tags--gap: var(--impd-size-1);--impdc-tag-select--border-color: var(--impd-color-gray-400);--impdc-tag-select--color: var(--impd-color-gray-900);--impdc-tag-select--icon-color: var(--impd-color-gray-500);opacity:var(--impartner-hex-input-opacity, 1)}:host.is-invalid{--impdc-tag-select--border-color: var(--impd-color-red-400);--impdc-tag-select--color: var(--impd-color-red-600);--impdc-tag-select--icon-color: var(--impd-color-red-500)}impdc-tag.impdc-tag-select--toggle{border-style:dashed;cursor:pointer}impdc-tag.impdc-tag-select--toggle.disabled{pointer-events:none}\n"] }]
132
+ }], ctorParameters: () => [{ type: undefined, decorators: [{
133
+ type: Attribute,
134
+ args: ['tabindex']
135
+ }] }], propDecorators: { readonly: [{
136
+ type: Input,
137
+ args: [{ transform: booleanAttribute }]
138
+ }], truncateThreshold: [{
139
+ type: Input,
140
+ args: [{ transform: numberAttribute }]
141
+ }], showMoreLabel: [{
142
+ type: Input
143
+ }], showLessLabel: [{
144
+ type: Input
145
+ }] } });
146
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGFnLXNlbGVjdC5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9kZXNpZ24tY29tcG9uZW50cy9zcmMvbGliL2Zvcm0tZmllbGQvY29udHJvbHMvdGFnLXNlbGVjdC90YWctc2VsZWN0LmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2Rlc2lnbi1jb21wb25lbnRzL3NyYy9saWIvZm9ybS1maWVsZC9jb250cm9scy90YWctc2VsZWN0L3RhZy1zZWxlY3QuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxZQUFZLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUMxRCxPQUFPLEVBQ0wsU0FBUyxFQUNULHVCQUF1QixFQUN2QixTQUFTLEVBQ1QsS0FBSyxFQUNMLGdCQUFnQixFQUNoQixlQUFlLEVBQ2hCLE1BQU0sZUFBZSxDQUFDO0FBQ3ZCLE9BQU8sRUFBRSxtQkFBbUIsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQ3JELE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxNQUFNLDRCQUE0QixDQUFDO0FBQy9ELE9BQU8sRUFBRSxNQUFNLEVBQUUsTUFBTSxRQUFRLENBQUM7QUFDaEMsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUMzQyxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0sY0FBYyxDQUFDO0FBQzVDLE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUNsRCxPQUFPLEVBQUUscUJBQXFCLEVBQUUsTUFBTSxjQUFjLENBQUM7QUFDckQsT0FBTyxFQUFFLG9CQUFvQixFQUFFLE1BQU0sNEJBQTRCLENBQUM7QUFDbEUsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLFVBQVUsQ0FBQztBQUMxQyxPQUFPLEVBQ0wsb0NBQW9DLEVBQ3BDLDBDQUEw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LE1BQU07d0JBQzFDLG9DQUFvQyxFQUFFLFVBQVU7d0JBQ2hELG9DQUFvQyxFQUFFLFVBQVU7d0JBQ2hELG1DQUFtQyxFQUFFLFlBQVk7d0JBQ2pELGlDQUFpQyxFQUFFLE9BQU87d0JBQzFDLFNBQVMsRUFBRSxvQkFBb0I7cUJBQ2hDLGFBQ1U7d0JBQ1Q7NEJBQ0UsT0FBTyxFQUFFLHFCQUFxQjs0QkFDOUIsV0FBVyxvQkFBb0I7eUJBQ2hDO3dCQUNEOzRCQUNFLE9BQU8sRUFBRSxvQ0FBb0M7NEJBQzdDLFdBQVcsb0JBQW9CO3lCQUNoQzt3QkFDRDs0QkFDRSxPQUFPLEVBQUUsMENBQTBDOzRCQUNuRCxXQUFXLG9CQUFvQjt5QkFDaEM7cUJBQ0Y7OzBCQXFDWSxTQUFTOzJCQUFDLFVBQVU7eUNBckIxQixRQUFRO3NCQURkLEtBQUs7dUJBQUMsRUFBRSxTQUFTLEVBQUUsZ0JBQWdCLEVBQUU7Z0JBTy9CLGlCQUFpQjtzQkFEdkIsS0FBSzt1QkFBQyxFQUFFLFNBQVMsRUFBRSxlQUFlLEVBQUU7Z0JBTzlCLGFBQWE7c0JBRG5CLEtBQUs7Z0JBUUMsYUFBYTtzQkFEbkIsS0FBSyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEFzeW5jUGlwZSwgQ29tbW9uTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcbmltcG9ydCB7XG4gIEF0dHJpYnV0ZSxcbiAgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksXG4gIENvbXBvbmVudCxcbiAgSW5wdXQsXG4gIGJvb2xlYW5BdHRyaWJ1dGUsXG4gIG51bWJlckF0dHJpYnV0ZVxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IFJlYWN0aXZlRm9ybXNNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XG5pbXBvcnQgeyBOZ2JEcm9wZG93bk1vZHVsZSB9IGZyb20gJ0BuZy1ib290c3RyYXAvbmctYm9vdHN0cmFwJztcbmltcG9ydCB7IG5hbm9pZCB9IGZyb20gJ25hbm9pZCc7XG5pbXBvcnQgeyBJY29uTW9kdWxlIH0gZnJvbSAnLi4vLi4vLi4vaWNvbic7XG5pbXBvcnQgeyBUYWdDb21wb25lbnQgfSBmcm9tICcuLi8uLi8uLi90YWcnO1xuaW1wb3J0IHsgRm9ybUZpZWxkTW9kdWxlIH0gZnJvbSAnLi4vLi4vY29tcG9uZW50JztcbmltcG9ydCB7IEltcGRjRm9ybUZpZWxkQ29udHJvbCB9IGZyb20gJy4uLy4uL3NoYXJlZCc7XG5pbXBvcnQgeyBfU2VsZWN0Q29tcG9uZW50QmFzZSB9IGZyb20gJy4uL3NlbGVjdC9zZWxlY3QuY29tcG9uZW50JztcbmltcG9ydCB7IElucHV0RGlyZWN0aXZlIH0gZnJvbSAnLi4vaW5wdXQnO1xuaW1wb3J0IHtcbiAgSU1QRENfU0VMRUNUX09QVElPTl9QQVJFTlRfQ09NUE9ORU5ULFxuICBJTVBEQ19TRUxFQ1RfVkFMVUVfQkFER0VTX1BBUkVOVF9DT01QT05FTlQsXG4gIElTZWxlY3RPcHRpb24sXG4gIElTZWxlY3RWYWx1ZUJhZGdlc1BhcmVudENvbXBvbmVudCxcbiAgU2VsZWN0T3B0aW9uRGlzcGxheUNvbXBvbmVudCxcbiAgU2VsZWN0VmFsdWVUYWdzRGlzcGxheUNvbXBvbmVudFxufSBmcm9tICcuLi9zZWxlY3QnO1xuXG4vKipcbiAqIFRoZSBgVGFnU2VsZWN0Q29tcG9uZW50YCAoYDxpbXBkYy10YWctc2VsZWN0PmApIGlzIGEgZm9ybSBjb250cm9sIHdoZXJlIG11bHRpcGxlIFwidGFnXCItbGlrZSB2YWx1ZXMgY2FuXG4gKiBiZSBwaWNrZWQgZnJvbSBhIGxpc3Qgb2YgKnVuaXF1ZSogYXZhaWxhYmxlIG9wdGlvbnMuIFRoaXMgY29tcG9uZW50IGNhbiBiZSB1c2VkIHdpdGhpbiBhIGBGb3JtRmllbGRDb21wb25lbnRgXG4gKiAoYDxpbXBkYy1mb3JtLWZpZWxkPmApIGNvbXBvbmVudCBvciBvbiBpdHMgb3duLiBUbyB1c2UsIGFkZCBgVGFnU2VsZWN0Q29tcG9uZW50YCB0byB0aGUgYGltcG9ydHNgIGFycmF5IG9mXG4gKiB0aGUgcmVsZXZhbnQgYE5nTW9kdWxlYCBvciBzdGFuZGFsb25lIGNvbXBvbmVudC5cbiAqL1xuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnaW1wZGMtdGFnLXNlbGVjdCcsXG4gIGV4cG9ydEFzOiAnaW1wZGNUYWdTZWxlY3QnLFxuICBzdGFuZGFsb25lOiB0cnVlLFxuICBpbXBvcnRzOiBbXG4gICAgQ29tbW9uTW9kdWxlLFxuICAgIEFzeW5jUGlwZSxcbiAgICBSZWFjdGl2ZUZvcm1zTW9kdWxlLFxuICAgIE5nYkRyb3Bkb3duTW9kdWxlLFxuICAgIEljb25Nb2R1bGUsXG4gICAgU2VsZWN0T3B0aW9uRGlzcGxheUNvbXBvbmVudCxcbiAgICBTZWxlY3RWYWx1ZVRhZ3NEaXNwbGF5Q29tcG9uZW50LFxuICAgIEZvcm1GaWVsZE1vZHVsZSxcbiAgICBJbnB1dERpcmVjdGl2ZSxcbiAgICBUYWdDb21wb25lbnRcbiAgXSxcbiAgc3R5bGVVcmw6ICcuL3RhZy1zZWxlY3QuY29tcG9uZW50LnNjc3MnLFxuICB0ZW1wbGF0ZVVybDogJy4vdGFnLXNlbGVjdC5jb21wb25lbnQuaHRtbCcsXG4gIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAYW5ndWxhci1lc2xpbnQvbm8taW5wdXRzLW1ldGFkYXRhLXByb3BlcnR5XG4gIGlucHV0czogW1xuICAgICdkaXNhYmxlZCcsXG4gICAgeyBuYW1lOiAndGFiSW5kZXgnLCB0cmFuc2Zvcm06IG51bWJlckF0dHJpYnV0ZSB9LFxuICAgICdzZWFyY2gnLFxuICAgICdwbGFjZWhvbGRlcicsXG4gICAgeyBuYW1lOiAncmVxdWlyZWQnLCB0cmFuc2Zvcm06IGJvb2xlYW5BdHRyaWJ1dGUgfSxcbiAgICAnY29tcGFyZVdpdGgnLFxuICAgICdkcm9wZG93bkNvbnRhaW5lcicsXG4gICAgJ2Vycm9yU3RhdGVNYXRjaGVyJ1xuICBdLFxuICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQGFuZ3VsYXItZXNsaW50L25vLW91dHB1dHMtbWV0YWRhdGEtcHJvcGVydHlcbiAgb3V0cHV0czogWydzZWxlY3Rpb25DaGFuZ2UnLCAndmFsdWVDaGFuZ2UnLCAnc2VhcmNoVGV4dENoYW5nZXMnXSxcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG4gIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAYW5ndWxhci1lc2xpbnQvbm8taG9zdC1tZXRhZGF0YS1wcm9wZXJ0eVxuICBob3N0OiB7XG4gICAgJ1thdHRyLmlkXSc6ICdpZCcsXG4gICAgJ1thdHRyLnRhYmluZGV4XSc6ICd0YWJJbmRleCcsXG4gICAgJ1thdHRyLmFyaWEtcmVxdWlyZWRdJzogJ3JlcXVpcmVkLnRvU3RyaW5nKCknLFxuICAgICdbYXR0ci5hcmlhLWRpc2FibGVkXSc6ICdkaXNhYmxlZC50b1N0cmluZygpJyxcbiAgICAnW2F0dHIuYXJpYS1pbnZhbGlkXSc6ICdlcnJvclN0YXRlJyxcbiAgICAnW2NsYXNzLmlzLWludmFsaWRdJzogJ2Vycm9yU3RhdGUnLFxuICAgICdbY2xhc3MuaW1wZGMtZm9ybS1maWVsZC1jb250cm9sXSc6ICd0cnVlJyxcbiAgICAnW2NsYXNzLmltcGRjLXRhZy1zZWxlY3QtLXJlcXVpcmVkXSc6ICdyZXF1aXJlZCcsXG4gICAgJ1tjbGFzcy5pbXBkYy10YWctc2VsZWN0LS1kaXNhYmxlZF0nOiAnZGlzYWJsZWQnLFxuICAgICdbY2xhc3MuaW1wZGMtdGFnLXNlbGVjdC0taW52YWxpZF0nOiAnZXJyb3JTdGF0ZScsXG4gICAgJ1tjbGFzcy5pbXBkYy10YWctc2VsZWN0LS1lbXB0eV0nOiAnZW1wdHknLFxuICAgICcoZm9jdXMpJzogJ29uRm9jdXMoKTsgZm9jdXMoKSdcbiAgfSxcbiAgcHJvdmlkZXJzOiBbXG4gICAge1xuICAgICAgcHJvdmlkZTogSW1wZGNGb3JtRmllbGRDb250cm9sLFxuICAgICAgdXNlRXhpc3Rpbmc6IFRhZ1NlbGVjdENvbXBvbmVudFxuICAgIH0sXG4gICAge1xuICAgICAgcHJvdmlkZTogSU1QRENfU0VMRUNUX09QVElPTl9QQVJFTlRfQ09NUE9ORU5ULFxuICAgICAgdXNlRXhpc3Rpbmc6IFRhZ1NlbGVjdENvbXBvbmVudFxuICAgIH0sXG4gICAge1xuICAgICAgcHJvdmlkZTogSU1QRENfU0VMRUNUX1ZBTFVFX0JBREdFU19QQVJFTlRfQ09NUE9ORU5ULFxuICAgICAgdXNlRXhpc3Rpbmc6IFRhZ1NlbGVjdENvbXBvbmVudFxuICAgIH1cbiAgXVxufSlcbmV4cG9ydCBjbGFzcyBUYWdTZWxlY3RDb21wb25lbnRcbiAgZXh0ZW5kcyBfU2VsZWN0Q29tcG9uZW50QmFzZVxuICBpbXBsZW1lbnRzIElTZWxlY3RWYWx1ZUJhZGdlc1BhcmVudENvbXBvbmVudFxue1xuICBwdWJsaWMgcmVhZG9ubHkgY29udHJvbFR5cGU6IHN0cmluZyA9ICdpbXBkYy10YWctc2VsZWN0JztcbiAgcHVibGljIHJlYWRvbmx5IHN1cHBvcnRzQWZmaXhlczogYm9vbGVhbiA9IGZhbHNlO1xuXG4gIC8qKlxuICAgKiBSZW5kZXIgdGhlIGNvbnRyb2wgaXMgYSByZWFkb25seSBzdGF0ZS5cbiAgICpcbiAgICogU2VtYW50aWNhbGx5IGRpc3RpbmN0IGZyb20gYGRpc2FibGVkYCwgYHJlYWRvbmx5YCBjb250cm9scyB3aWxsIHN0aWxsIGhhdmUgdGhlaXIgdmFsdWVzIGJvdW5kIGluXG4gICAqIEFuZ3VsYXIgZm9ybXMgYW5kIGBGb3JtR3JvdXBgcywgd2hlcmVhcyBhIGRpc2FibGVkIGNvbnRyb2wncyB2YWx1ZSB3b3VsZCBiZSBvbWl0dGVkLlxuICAgKi9cbiAgQElucHV0KHsgdHJhbnNmb3JtOiBib29sZWFuQXR0cmlidXRlIH0pXG4gIHB1YmxpYyByZWFkb25seSA9IGZhbHNlO1xuXG4gIC8qKlxuICAgKiBUaGUgbWF4aW11bSBudW1iZXIgb2YgdmFsdWVzIHRoYXQgd2lsbCBiZSBkaXNwbGF5ZWQgaW5saW5lIGJlZm9yZSB0cnVuY2F0aW9uIG9jY3Vycy5cbiAgICovXG4gIEBJbnB1dCh7IHRyYW5zZm9ybTogbnVtYmVyQXR0cmlidXRlIH0pXG4gIHB1YmxpYyB0cnVuY2F0ZVRocmVzaG9sZCA9IDg7XG5cbiAgLyoqXG4gICAqIFRleHQgdG8gYmUgc2hvd24gd2hlbiBkaXNwbGF5ZWQgdmFsdWVzIGFyZSB0cnVuY2F0ZWQsIGFsbG93aW5nIHRoZSB1c2VyIHRvIHZpZXcgYWxsIHNlbGVjdGVkIHZhbHVlcy5cbiAgICovXG4gIEBJbnB1dCgpXG4gIHB1YmxpYyBzaG93TW9yZUxhYmVsID0gJ1Nob3cgbW9yZS4uLic7XG5cbiAgLyoqXG4gICAqIFRleHQgdG8gYmUgc2hvd24gd2hlbiBkaXNwbGF5ZWQgdmFsdWVzIGhhdmUgYmVlbiBleHBhbmRlZCBiZXlvbmQgdGhlIHRydW5jYXRpb24gdGhyZXNob2xkLCBhbGxvd2luZ1xuICAgKiB0aGUgdXNlciBjb2xsYXBzZSB0aGUgdmlldyBhZ2Fpbi5cbiAgICovXG4gIEBJbnB1dCgpXG4gIHB1YmxpYyBzaG93TGVzc0xhYmVsID0gJ1Nob3cgbGVzcy4uLic7XG5cbiAgY29uc3RydWN0b3IoQEF0dHJpYnV0ZSgndGFiaW5kZXgnKSB0YWJJbmRleD86IHN0cmluZykge1xuICAgIHN1cGVyKGBpbXBkYy10YWctc2VsZWN0LSR7bmFub2lkKCl9YCwgdGFiSW5kZXgpO1xuXG4gICAgdGhpcy5fbXVsdGlwbGUgPSB0cnVlO1xuICAgIHRoaXMuX3BsYWNlaG9sZGVyID0gJ0FkZCBUYWdzJztcbiAgfVxuXG4gIC8qKiBAaWdub3JlICovXG4gIHB1YmxpYyBkZXNlbGVjdE9wdGlvbihvcHRpb246IElTZWxlY3RPcHRpb24pOiB2b2lkIHtcbiAgICB0aGlzLl9kZXNlbGVjdE9wdGlvbihvcHRpb24pO1xuICB9XG5cbiAgcHJvdGVjdGVkIHRvZ2dsZURyb3Bkb3duKGV2dDogRXZlbnQpOiB2b2lkIHtcbiAgICBpZiAoIXRoaXMubmdiRHJvcGRvd24gfHwgdGhpcy5kaXNhYmxlZCkge1xuICAgICAgcmV0dXJuO1xuICAgIH1cblxuICAgIGV2dC5zdG9wUHJvcGFnYXRpb24oKTtcbiAgICBldnQucHJldmVudERlZmF1bHQoKTtcbiAgICB0aGlzLm5nYkRyb3Bkb3duLnRvZ2dsZSgpO1xuICB9XG59XG4iLCI8aW1wZGMtc2VsZWN0LXZhbHVlLXRhZ3MtZGlzcGxheVxuICByb3VuZGVkPVwidHJ1ZVwiXG4gIFtyZWFkb25seV09XCJyZWFkb25seVwiXG4gIFt0cnVuY2F0ZVRocmVzaG9sZF09XCJ0cnVuY2F0ZVRocmVzaG9sZFwiXG4gIFtzaG93TW9yZUxhYmVsXT1cInNob3dNb3JlTGFiZWxcIlxuICBbc2hvd0xlc3NMYWJlbF09XCJzaG93TGVzc0xhYmVsXCI+XG4gIDxkaXZcbiAgICBuZ2JEcm9wZG93blxuICAgICNkcm9wZG93bj1cIm5nYkRyb3Bkb3duXCJcbiAgICBbY2xhc3MuZC1ub25lXT1cInJlYWRvbmx5IHx8IGRpc2FibGVkXCJcbiAgICBhdXRvQ2xvc2U9XCJvdXRzaWRlXCJcbiAgICBbY29udGFpbmVyXT1cImRyb3Bkb3duQ29udGFpbmVyXCJcbiAgICBbZHJvcGRvd25DbGFzc109XCJkcm9wZG93bkNvbnRhaW5lciA9PT0gJ2JvZHknID8gJ2ltcGFydG5lci1oZXgnIDogJydcIlxuICAgIChvcGVuQ2hhbmdlKT1cImhhbmRsZU9wZW5DaGFuZ2UoJGV2ZW50KVwiPlxuICAgIEBpZiAoIXJlYWRvbmx5ICYmICFkaXNhYmxlZCkge1xuICAgIDxpbXBkYy10YWdcbiAgICAgICN0b2dnbGVCdXR0b25cbiAgICAgIGNsYXNzPVwiaW1wZGMtdGFnLXNlbGVjdC0tdG9nZ2xlIG5vLWNhcmV0XCJcbiAgICAgIHRoZW1lPVwib3V0bGluZVwiXG4gICAgICBbcm91bmRlZF09XCJ0cnVlXCJcbiAgICAgIChmb2N1cyk9XCJvbkZvY3VzKClcIlxuICAgICAgKGNsaWNrKT1cInRvZ2dsZURyb3Bkb3duKCRldmVudClcIlxuICAgICAgbmdiRHJvcGRvd25BbmNob3I+XG4gICAgICB7eyBlbXB0eSA/IHBsYWNlaG9sZGVyIDogJycgfX1cbiAgICAgIDxpbXBkYy1pY29uIG5hbWU9XCJwbHVzXCIgdGhlbWU9XCJsaWdodFwiIC8+XG4gICAgPC9pbXBkYy10YWc+XG4gICAgfVxuICAgIDxkaXZcbiAgICAgIG5nYkRyb3Bkb3duTWVudVxuICAgICAgY2xhc3M9XCJpbXBkYy10YWctc2VsZWN0LS1kcm9wZG93bi1tZW51IGJnLXdoaXRlIHRleHQtZ3JheS02MDBcIlxuICAgICAgcm9sZT1cImxpc3Rib3hcIlxuICAgICAgdGFiaW5kZXg9XCItMVwiPlxuICAgICAgPGRpdiAqbmdJZj1cInNlYXJjaCAhPT0gJ25vbmUnXCIgY2xhc3M9XCJpbXBkYy10YWctc2VsZWN0LS1zZWFyY2hcIj5cbiAgICAgICAgPGltcGRjLWZvcm0tZmllbGQ+XG4gICAgICAgICAgPHNwYW4gaW1wZGNUZXh0UHJlZml4IChjbGljayk9XCJzZWFyY2hJbnB1dC5mb2N1cygpXCI+XG4gICAgICAgICAgICA8aW1wZGMtaWNvbiBuYW1lPVwic2VhcmNoXCI+PC9pbXBkYy1pY29uPlxuICAgICAgICAgIDwvc3Bhbj5cbiAgICAgICAgICA8aW5wdXRcbiAgICAgICAgICAgICNzZWFyY2hJbnB1dFxuICAgICAgICAgICAgaW1wZGNJbnB1dFxuICAgICAgICAgICAgW2Zvcm1Db250cm9sXT1cInNlYXJjaENvbnRyb2xcIlxuICAgICAgICAgICAgY2xhc3M9XCJpbXBkYy10YWctc2VsZWN0LS1zZWFyY2gtaW5wdXRcIlxuICAgICAgICAgICAgdHlwZT1cInNlYXJjaFwiXG4gICAgICAgICAgICAoa2V5ZG93bi5lbnRlcik9XCJoYW5kbGVTZWFyY2hTdWJtaXQoJGV2ZW50KVwiXG4gICAgICAgICAgICAoa2V5ZG93bi5hcnJvd2Rvd24pPVwiaGFuZGxlU2VhcmNoVXBEb3duKCRldmVudCwgJ3VwJylcIlxuICAgICAgICAgICAgKGtleWRvd24uYXJyb3d1cCk9XCJoYW5kbGVTZWFyY2hVcERvd24oJGV2ZW50LCAnZG93bicpXCIgLz5cbiAgICAgICAgICA8c3BhbiBpbXBkY1RleHRTdWZmaXg+XG4gICAgICAgICAgICA8YnV0dG9uXG4gICAgICAgICAgICAgICpuZ0lmPVwic2VhcmNoQ29udHJvbC52YWx1ZVwiXG4gICAgICAgICAgICAgIHR5cGU9XCJidXR0b25cIlxuICAgICAgICAgICAgICBjbGFzcz1cImltcGRjLXRhZy1zZWxlY3QtLWNsZWFyLWJ0biBidG4gYnRuLXhzIGJ0bi1saW5rIHRleHQtZ3JheS00MDAgbXMtYXV0b1wiXG4gICAgICAgICAgICAgIChjbGljayk9XCJzZWFyY2hDb250cm9sLnJlc2V0KCk7IHNlYXJjaElucHV0LmZvY3VzKClcIj5cbiAgICAgICAgICAgICAgPGltcGRjLWljb24gbmFtZT1cInRpbWVzXCIgW3NpemVdPVwiMTZcIj48L2ltcGRjLWljb24+XG4gICAgICAgICAgICA8L2J1dHRvbj5cbiAgICAgICAgICA8L3NwYW4+XG4gICAgICAgIDwvaW1wZGMtZm9ybS1maWVsZD5cbiAgICAgIDwvZGl2PlxuICAgICAgPGRpdiBjbGFzcz1cImltcGRjLXRhZy1zZWxlY3QtLW9wdGlvbnNcIj5cbiAgICAgICAgQGZvciAob3B0aW9uIG9mIGZpbHRlcmVkT3B0aW9ucyQgfCBhc3luYzsgdHJhY2sgb3B0aW9uLnZhbHVlOyBsZXQgaWR4ID1cbiAgICAgICAgJGluZGV4OyBsZXQgZmlyc3QgPSAkZmlyc3QpIHsgQGlmIChvcHRpb24uZ3JvdXBMYWJlbCAmJlxuICAgICAgICBvcHRpb24uc2hvd0dyb3VwTGFiZWwpIHtcbiAgICAgICAgPGRpdiBjbGFzcz1cImltcGRjLXRhZy1zZWxlY3QtLW9wdGlvbi1ncm91cC1sYWJlbFwiPlxuICAgICAgICAgIHt7IG9wdGlvbi5ncm91cExhYmVsIH19XG4gICAgICAgIDwvZGl2PlxuICAgICAgICB9XG4gICAgICAgIDxpbXBkYy1zZWxlY3Qtb3B0aW9uLWRpc3BsYXlcbiAgICAgICAgICBbY2xhc3MuaW1wZGMtc2VsZWN0LW9wdGlvbi0tYWN0aXZlXT1cImlkeCA9PT0gYWN0aXZlSW5kZXhcIlxuICAgICAgICAgIFtjbGFzcy5pbXBkYy1zZWxlY3Qtb3B0aW9uLS1ncm91cGVkXT1cIiEhb3B0aW9uLmdyb3VwTGFiZWxcIlxuICAgICAgICAgIFtncm91cExhYmVsXT1cIm9wdGlvbi5ncm91cExhYmVsXCJcbiAgICAgICAgICBbbGFiZWxdPVwib3B0aW9uLmxhYmVsXCJcbiAgICAgICAgICBbdmFsdWVdPVwib3B0aW9uLnZhbHVlXCJcbiAgICAgICAgICBbZGlzYWJsZWRdPVwiISFvcHRpb24uZGlzYWJsZWRcIlxuICAgICAgICAgIFtzZWxlY3RlZF09XCJvcHRpb24uc2VsZWN0ZWRcIlxuICAgICAgICAgIFtoaWdobGlnaHRUZXh0XT1cInNlYXJjaENvbnRyb2wudmFsdWVcIlxuICAgICAgICAgIChtb3VzZWVudGVyKT1cIm1hcmtBY3RpdmUoaWR4KVwiXG4gICAgICAgICAgKGZvY3VzKT1cIm1hcmtBY3RpdmUoaWR4KVwiIC8+XG4gICAgICAgIH1cbiAgICAgIDwvZGl2PlxuICAgIDwvZGl2PlxuICA8L2Rpdj5cbjwvaW1wZGMtc2VsZWN0LXZhbHVlLXRhZ3MtZGlzcGxheT5cbiJdfQ==
@@ -1,8 +1,7 @@
1
+ export * from './component';
1
2
  export * from './controls';
2
- export * from './directives';
3
3
  export * from './services';
4
4
  export * from './shared';
5
5
  export * from './form-field-errors';
6
- export { IMPDC_FORM_FIELD, FormFieldComponent } from './form-field.component';
7
6
  export { ImpdcFormsModule } from './impdc-forms.module';
8
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW1wZGMtZm9ybXMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9kZXNpZ24tY29tcG9uZW50cy9zcmMvbGliL2Zvcm0tZmllbGQvaW1wZGMtZm9ybXMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsY0FBYyxZQUFZLENBQUM7QUFDM0IsY0FBYyxjQUFjLENBQUM7QUFDN0IsY0FBYyxZQUFZLENBQUM7QUFDM0IsY0FBYyxVQUFVLENBQUM7QUFDekIsY0FBYyxxQkFBcUIsQ0FBQztBQUNwQyxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSx3QkFBd0IsQ0FBQztBQUM5RSxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSxzQkFBc0IsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCAqIGZyb20gJy4vY29udHJvbHMnO1xuZXhwb3J0ICogZnJvbSAnLi9kaXJlY3RpdmVzJztcbmV4cG9ydCAqIGZyb20gJy4vc2VydmljZXMnO1xuZXhwb3J0ICogZnJvbSAnLi9zaGFyZWQnO1xuZXhwb3J0ICogZnJvbSAnLi9mb3JtLWZpZWxkLWVycm9ycyc7XG5leHBvcnQgeyBJTVBEQ19GT1JNX0ZJRUxELCBGb3JtRmllbGRDb21wb25lbnQgfSBmcm9tICcuL2Zvcm0tZmllbGQuY29tcG9uZW50JztcbmV4cG9ydCB7IEltcGRjRm9ybXNNb2R1bGUgfSBmcm9tICcuL2ltcGRjLWZvcm1zLm1vZHVsZSc7XG4iXX0=
7
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW1wZGMtZm9ybXMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9kZXNpZ24tY29tcG9uZW50cy9zcmMvbGliL2Zvcm0tZmllbGQvaW1wZGMtZm9ybXMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsY0FBYyxhQUFhLENBQUM7QUFDNUIsY0FBYyxZQUFZLENBQUM7QUFDM0IsY0FBYyxZQUFZLENBQUM7QUFDM0IsY0FBYyxVQUFVLENBQUM7QUFDekIsY0FBYyxxQkFBcUIsQ0FBQztBQUNwQyxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSxzQkFBc0IsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCAqIGZyb20gJy4vY29tcG9uZW50JztcbmV4cG9ydCAqIGZyb20gJy4vY29udHJvbHMnO1xuZXhwb3J0ICogZnJvbSAnLi9zZXJ2aWNlcyc7XG5leHBvcnQgKiBmcm9tICcuL3NoYXJlZCc7XG5leHBvcnQgKiBmcm9tICcuL2Zvcm0tZmllbGQtZXJyb3JzJztcbmV4cG9ydCB7IEltcGRjRm9ybXNNb2R1bGUgfSBmcm9tICcuL2ltcGRjLWZvcm1zLm1vZHVsZSc7XG4iXX0=