@daffodil/design 0.87.1 → 0.88.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 (215) hide show
  1. package/accordion/accordion/accordion-item/accordion-item.component.d.ts +1 -9
  2. package/accordion/accordion/accordion-item-title/accordion-item-title.directive.d.ts +0 -4
  3. package/article/article/article.component.d.ts +0 -8
  4. package/article/article-meta/article-meta.directive.d.ts +0 -4
  5. package/atoms/form/form-field/form-field/form-field.component.d.ts +3 -2
  6. package/atoms/form/form-field/form-field-control.d.ts +3 -1
  7. package/atoms/form/native-select/native-select.component.d.ts +11 -0
  8. package/breadcrumb/breadcrumb/breadcrumb.component.d.ts +0 -4
  9. package/breadcrumb/breadcrumb-item/breadcrumb-item.directive.d.ts +0 -12
  10. package/button/button/basic/button.component.d.ts +0 -4
  11. package/button/button/button-base.directive.d.ts +0 -18
  12. package/button/button/flat/flat.component.d.ts +0 -4
  13. package/button/button/icon/icon.component.d.ts +0 -4
  14. package/button/button/stroked/stroked.component.d.ts +0 -4
  15. package/button/button/underline/underline.component.d.ts +0 -4
  16. package/button/src/button/button-base.scss +3 -3
  17. package/callout/README.md +38 -40
  18. package/callout/callout/callout.component.d.ts +13 -5
  19. package/callout/callout-body/callout-body.directive.d.ts +9 -4
  20. package/callout/callout-icon/callout-icon.directive.d.ts +9 -4
  21. package/callout/callout-subtitle/callout-subtitle.directive.d.ts +8 -4
  22. package/callout/callout-tagline/callout-tagline.directive.d.ts +8 -4
  23. package/callout/callout-title/callout-title.directive.d.ts +8 -4
  24. package/card/README.md +52 -44
  25. package/card/card/basic/basic.component.d.ts +18 -4
  26. package/card/card/raised/raised.component.d.ts +3 -4
  27. package/card/card/stroked/stroked.component.d.ts +18 -4
  28. package/card/card-actions/card-actions.directive.d.ts +8 -4
  29. package/card/card-base.directive.d.ts +8 -16
  30. package/card/card-content/card-content.directive.d.ts +9 -4
  31. package/card/card-icon/card-icon.directive.d.ts +8 -4
  32. package/card/card-image/card-image.directive.d.ts +8 -4
  33. package/card/card-tagline/card-tagline.directive.d.ts +8 -4
  34. package/card/card-title/card-title.directive.d.ts +8 -4
  35. package/card/card.d.ts +1 -0
  36. package/card/examples/elevated-card/elevated-card.component.d.ts +5 -0
  37. package/card/examples/public_api.d.ts +3 -3
  38. package/card/helpers/card-orientation.d.ts +17 -0
  39. package/card/public_api.d.ts +9 -8
  40. package/card/src/card-base-theme.scss +40 -58
  41. package/container/container/container.component.d.ts +0 -4
  42. package/core/public_api.d.ts +1 -0
  43. package/core/sticky/public_api.d.ts +1 -0
  44. package/core/sticky/sticky-tracker.directive.d.ts +23 -0
  45. package/fesm2022/daffodil-design-accordion.mjs +13 -55
  46. package/fesm2022/daffodil-design-accordion.mjs.map +1 -1
  47. package/fesm2022/daffodil-design-article.mjs +14 -32
  48. package/fesm2022/daffodil-design-article.mjs.map +1 -1
  49. package/fesm2022/daffodil-design-breadcrumb.mjs +15 -38
  50. package/fesm2022/daffodil-design-breadcrumb.mjs.map +1 -1
  51. package/fesm2022/daffodil-design-button.mjs +41 -108
  52. package/fesm2022/daffodil-design-button.mjs.map +1 -1
  53. package/fesm2022/daffodil-design-callout.mjs +91 -73
  54. package/fesm2022/daffodil-design-callout.mjs.map +1 -1
  55. package/fesm2022/daffodil-design-card-examples.mjs +17 -32
  56. package/fesm2022/daffodil-design-card-examples.mjs.map +1 -1
  57. package/fesm2022/daffodil-design-card.mjs +167 -145
  58. package/fesm2022/daffodil-design-card.mjs.map +1 -1
  59. package/fesm2022/daffodil-design-container.mjs +7 -13
  60. package/fesm2022/daffodil-design-container.mjs.map +1 -1
  61. package/fesm2022/daffodil-design-form-field-examples.mjs +7 -7
  62. package/fesm2022/daffodil-design-form-field-examples.mjs.map +1 -1
  63. package/fesm2022/daffodil-design-hero-examples.mjs +18 -1
  64. package/fesm2022/daffodil-design-hero-examples.mjs.map +1 -1
  65. package/fesm2022/daffodil-design-hero.mjs +102 -71
  66. package/fesm2022/daffodil-design-hero.mjs.map +1 -1
  67. package/fesm2022/daffodil-design-image.mjs +5 -12
  68. package/fesm2022/daffodil-design-image.mjs.map +1 -1
  69. package/fesm2022/daffodil-design-input-examples.mjs +6 -6
  70. package/fesm2022/daffodil-design-input-examples.mjs.map +1 -1
  71. package/fesm2022/daffodil-design-input.mjs +60 -35
  72. package/fesm2022/daffodil-design-input.mjs.map +1 -1
  73. package/fesm2022/daffodil-design-list-examples.mjs +14 -10
  74. package/fesm2022/daffodil-design-list-examples.mjs.map +1 -1
  75. package/fesm2022/daffodil-design-list.mjs +111 -98
  76. package/fesm2022/daffodil-design-list.mjs.map +1 -1
  77. package/fesm2022/daffodil-design-media-gallery.mjs +7 -17
  78. package/fesm2022/daffodil-design-media-gallery.mjs.map +1 -1
  79. package/fesm2022/daffodil-design-menu.mjs +26 -63
  80. package/fesm2022/daffodil-design-menu.mjs.map +1 -1
  81. package/fesm2022/daffodil-design-modal.mjs +63 -130
  82. package/fesm2022/daffodil-design-modal.mjs.map +1 -1
  83. package/fesm2022/daffodil-design-navbar.mjs +7 -20
  84. package/fesm2022/daffodil-design-navbar.mjs.map +1 -1
  85. package/fesm2022/daffodil-design-notification-examples.mjs +16 -41
  86. package/fesm2022/daffodil-design-notification-examples.mjs.map +1 -1
  87. package/fesm2022/daffodil-design-notification.mjs +112 -116
  88. package/fesm2022/daffodil-design-notification.mjs.map +1 -1
  89. package/fesm2022/daffodil-design-paginator.mjs +8 -21
  90. package/fesm2022/daffodil-design-paginator.mjs.map +1 -1
  91. package/fesm2022/daffodil-design-progress-bar-examples.mjs +6 -6
  92. package/fesm2022/daffodil-design-progress-bar-examples.mjs.map +1 -1
  93. package/fesm2022/daffodil-design-progress-bar.mjs +74 -115
  94. package/fesm2022/daffodil-design-progress-bar.mjs.map +1 -1
  95. package/fesm2022/daffodil-design-quantity-field.mjs +11 -3
  96. package/fesm2022/daffodil-design-quantity-field.mjs.map +1 -1
  97. package/fesm2022/daffodil-design-select-examples.mjs +4 -4
  98. package/fesm2022/daffodil-design-select-examples.mjs.map +1 -1
  99. package/fesm2022/daffodil-design-select.mjs +50 -117
  100. package/fesm2022/daffodil-design-select.mjs.map +1 -1
  101. package/fesm2022/daffodil-design-sidebar-examples.mjs +29 -3
  102. package/fesm2022/daffodil-design-sidebar-examples.mjs.map +1 -1
  103. package/fesm2022/daffodil-design-sidebar.mjs +39 -78
  104. package/fesm2022/daffodil-design-sidebar.mjs.map +1 -1
  105. package/fesm2022/daffodil-design-sticky-examples.mjs +25 -0
  106. package/fesm2022/daffodil-design-sticky-examples.mjs.map +1 -0
  107. package/fesm2022/daffodil-design-tabs.mjs +54 -131
  108. package/fesm2022/daffodil-design-tabs.mjs.map +1 -1
  109. package/fesm2022/daffodil-design-text-snippet.mjs +17 -8
  110. package/fesm2022/daffodil-design-text-snippet.mjs.map +1 -1
  111. package/fesm2022/daffodil-design-textarea-examples.mjs +3 -3
  112. package/fesm2022/daffodil-design-textarea-examples.mjs.map +1 -1
  113. package/fesm2022/daffodil-design-textarea.mjs +49 -25
  114. package/fesm2022/daffodil-design-textarea.mjs.map +1 -1
  115. package/fesm2022/daffodil-design-toast.mjs +42 -128
  116. package/fesm2022/daffodil-design-toast.mjs.map +1 -1
  117. package/fesm2022/daffodil-design-tree.mjs +26 -70
  118. package/fesm2022/daffodil-design-tree.mjs.map +1 -1
  119. package/fesm2022/daffodil-design.mjs +164 -17
  120. package/fesm2022/daffodil-design.mjs.map +1 -1
  121. package/hero/README.md +39 -25
  122. package/hero/examples/basic-hero/basic-hero.component.d.ts +6 -0
  123. package/hero/examples/public_api.d.ts +1 -0
  124. package/hero/hero/hero.component.d.ts +21 -4
  125. package/hero/hero-body/hero-body.directive.d.ts +10 -4
  126. package/hero/hero-icon/hero-icon.directive.d.ts +10 -4
  127. package/hero/hero-subtitle/hero-subtitle.directive.d.ts +8 -4
  128. package/hero/hero-tagline/hero-tagline.directive.d.ts +8 -4
  129. package/hero/hero-title/hero-title.directive.d.ts +8 -4
  130. package/image/image/image.component.d.ts +0 -4
  131. package/input/input.component.d.ts +29 -9
  132. package/list/README.md +43 -13
  133. package/list/examples/multiline-list/multiline-list.component.d.ts +1 -0
  134. package/list/list/list.component.d.ts +12 -24
  135. package/list/list-item/list-item.component.d.ts +13 -20
  136. package/list/list-item-title/list-item-title.directive.d.ts +13 -0
  137. package/list/list.d.ts +8 -2
  138. package/list/list.module.d.ts +4 -3
  139. package/list/nav-list/nav-list.component.d.ts +17 -0
  140. package/list/public_api.d.ts +5 -2
  141. package/list/src/list-base.scss +40 -0
  142. package/list/src/list-theme.scss +5 -0
  143. package/media-gallery/media-gallery/media-gallery.component.d.ts +0 -6
  144. package/menu/menu/menu.component.d.ts +0 -12
  145. package/menu/menu-activator/menu-activator.component.d.ts +4 -5
  146. package/menu/menu-item/menu-item.component.d.ts +0 -10
  147. package/modal/modal/modal.component.d.ts +12 -33
  148. package/modal/modal-actions/modal-actions.component.d.ts +0 -4
  149. package/modal/modal-close/modal-close.directive.d.ts +1 -8
  150. package/modal/modal-content/modal-content.component.d.ts +0 -4
  151. package/modal/modal-header/modal-header.component.d.ts +0 -4
  152. package/modal/modal-title/modal-title.directive.d.ts +0 -11
  153. package/navbar/navbar/navbar.component.d.ts +0 -8
  154. package/navbar/src/navbar-theme.scss +2 -1
  155. package/notification/README.md +39 -24
  156. package/notification/examples/default-notification/default-notification.component.d.ts +0 -2
  157. package/notification/examples/public_api.d.ts +1 -5
  158. package/notification/helpers/notification-orientation.d.ts +17 -0
  159. package/notification/notification/notification.component.d.ts +39 -23
  160. package/notification/notification-actions/notification-actions.directive.d.ts +11 -4
  161. package/notification/notification-message/notification-message.directive.d.ts +9 -4
  162. package/notification/notification-subtitle/notification-subtitle.directive.d.ts +3 -4
  163. package/notification/notification-title/notification-title.directive.d.ts +8 -4
  164. package/notification/public_api.d.ts +6 -5
  165. package/package.json +1 -1
  166. package/paginator/paginator/paginator.component.d.ts +0 -11
  167. package/progress-bar/README.md +31 -8
  168. package/progress-bar/progress-bar-label/progress-bar-label.directive.d.ts +9 -5
  169. package/progress-bar/progress-bar.component.d.ts +39 -35
  170. package/progress-bar/public_api.d.ts +2 -2
  171. package/quantity-field/quantity-field.component.d.ts +10 -0
  172. package/scss/global.scss +0 -1
  173. package/select/select/select.component.d.ts +13 -25
  174. package/select/select.d.ts +1 -2
  175. package/sidebar/README.md +67 -72
  176. package/sidebar/examples/over-and-under-sidebars/over-and-under-sidebars.component.d.ts +0 -1
  177. package/sidebar/examples/sidebar-sides/sidebar-sides.component.d.ts +11 -0
  178. package/sidebar/sidebar/sidebar.component.d.ts +0 -9
  179. package/sidebar/sidebar-footer/sidebar-footer.component.d.ts +0 -4
  180. package/sidebar/sidebar-header/sidebar-header-action/sidebar-header-action.directive.d.ts +3 -0
  181. package/sidebar/sidebar-header/sidebar-header.component.d.ts +0 -4
  182. package/sidebar/sidebar-viewport/sidebar-viewport.component.d.ts +0 -17
  183. package/sticky/examples/basic-sticky/basic-sticky.component.d.ts +5 -0
  184. package/sticky/examples/index.d.ts +1 -0
  185. package/sticky/examples/public_api.d.ts +2 -0
  186. package/tabs/README.md +38 -14
  187. package/tabs/tabs/tab/tab.component.d.ts +4 -16
  188. package/tabs/tabs/tab-activator/tab-activator.component.d.ts +6 -27
  189. package/tabs/tabs/tab-label/tab-label.component.d.ts +5 -2
  190. package/tabs/tabs/tab-panel/tab-panel.component.d.ts +7 -24
  191. package/tabs/tabs/tabs.component.d.ts +5 -11
  192. package/text-snippet/README.md +31 -3
  193. package/text-snippet/text-snippet.component.d.ts +17 -2
  194. package/textarea/textarea.component.d.ts +25 -5
  195. package/toast/README.md +47 -21
  196. package/toast/interfaces/toast-action.d.ts +4 -5
  197. package/toast/interfaces/toast-options.d.ts +3 -1
  198. package/toast/interfaces/toast.d.ts +22 -7
  199. package/toast/service/toast.service.d.ts +3 -3
  200. package/toast/toast/toast-config.d.ts +7 -3
  201. package/toast/toast/toast-template.component.d.ts +1 -1
  202. package/toast/toast/toast.component.d.ts +0 -2
  203. package/toast/toast-actions/toast-actions.directive.d.ts +0 -4
  204. package/toast/toast-message/toast-message.directive.d.ts +0 -4
  205. package/toast/toast-title/toast-title.directive.d.ts +0 -4
  206. package/tree/tree/tree.component.d.ts +0 -6
  207. package/tree/tree-item/tree-item.directive.d.ts +7 -35
  208. package/accordion/accordion/animation/accordion-animation-state.d.ts +0 -1
  209. package/accordion/accordion/animation/accordion-animation.d.ts +0 -4
  210. package/card/examples/raised-card/raised-card.component.d.ts +0 -11
  211. package/notification/examples/notification-with-actions/notification-with-actions.component.d.ts +0 -8
  212. package/progress-bar/animation/progress-bar-animation.d.ts +0 -4
  213. package/select/animation/select-animation-state.d.ts +0 -7
  214. package/select/animation/select-animation.d.ts +0 -4
  215. package/select/animation/state.enum.d.ts +0 -4
@@ -1 +1 @@
1
- {"version":3,"file":"daffodil-design-quantity-field.mjs","sources":["../../../libs/design/quantity-field/src/quantity-input/quantity-input.component.ts","../../../libs/design/quantity-field/src/quantity-input/quantity-input.component.html","../../../libs/design/quantity-field/src/quantity-select/quantity-select.component.ts","../../../libs/design/quantity-field/src/quantity-select/quantity-select.component.html","../../../libs/design/quantity-field/src/quantity-field.component.ts","../../../libs/design/quantity-field/src/quantity-field.component.html","../../../libs/design/quantity-field/src/quantity-field.module.ts","../../../libs/design/quantity-field/src/daffodil-design-quantity-field.ts"],"sourcesContent":["import { coerceNumberProperty } from '@angular/cdk/coercion';\nimport {\n Component,\n Input,\n ViewChild,\n ChangeDetectionStrategy,\n ChangeDetectorRef,\n OnInit,\n OnDestroy,\n} from '@angular/core';\nimport {\n UntypedFormControl,\n NgControl,\n ReactiveFormsModule,\n} from '@angular/forms';\nimport { Subject } from 'rxjs';\nimport { takeUntil } from 'rxjs/operators';\n\nimport { DaffInputComponent } from '@daffodil/design/input';\n\n@Component({\n selector: 'daff-quantity-input',\n templateUrl: './quantity-input.component.html',\n changeDetection: ChangeDetectionStrategy.OnPush,\n imports: [\n DaffInputComponent,\n ReactiveFormsModule,\n ],\n})\nexport class DaffQuantityInputComponent implements OnInit, OnDestroy {\n @ViewChild(DaffInputComponent) input: DaffInputComponent;\n\n /**\n * @docs\n * The minimum number for the quantity input field\n */\n @Input() min = 1;\n\n /**\n * @docs\n * The maximum number for the quantity input field\n */\n @Input() max = 10;\n\n /**\n * A new control for the nested native input.\n * We don't bind the native input directly to the inherited form control\n * to avoid triggering updates on the input event.\n * Instead, we listen for the change event and manually patch form control values.\n */\n _inputControl = new UntypedFormControl();\n\n get focused(): boolean {\n return this.input?.focused;\n }\n\n _destroyed = new Subject();\n\n get value() {\n return this.ngControl.control.value;\n }\n set value(value) {\n const val = Math.min(Math.round(coerceNumberProperty(value)), this.max);\n this.ngControl.control.patchValue(val);\n this._inputControl.patchValue(val);\n this.changeDetectorRef.markForCheck();\n }\n\n get disabled() {\n return this.ngControl.control.disabled;\n }\n\n constructor(\n public ngControl: NgControl,\n private changeDetectorRef: ChangeDetectorRef,\n ) {}\n\n /**\n * @docs-private\n */\n ngOnInit() {\n this._inputControl.patchValue(this.ngControl.control.value);\n this.setInputDisabled();\n this.ngControl.statusChanges.pipe(\n takeUntil(this._destroyed),\n ).subscribe(() => {\n this.setInputDisabled();\n });\n }\n\n ngOnDestroy() {\n this._destroyed.next(true);\n }\n\n focus() {\n this.input.focus();\n }\n\n onFocus() {\n this.ngControl.control.markAsTouched();\n }\n\n onBlur() {\n if (this.value === null || this.value === undefined) {\n this.value = 1;\n this.changeDetectorRef.markForCheck();\n }\n }\n\n /**\n * Callback function fired when the value changes.\n * Used to pass the value back up to the ngControl.\n */\n onValueChange(e: any) {\n this.value = e.target.value;\n }\n\n private setInputDisabled() {\n // eslint-disable-next-line @typescript-eslint/no-unused-expressions\n this.ngControl.disabled\n ? this._inputControl.disable()\n : this._inputControl.enable();\n }\n}\n","<input daff-input\n type=\"number\"\n [attr.max]=\"max\"\n [attr.min]=\"min\"\n [attr.step]=\"1\"\n (focus)=\"onFocus()\"\n (blur)=\"onBlur()\"\n (change)=\"onValueChange($event)\"\n [formControl]=\"_inputControl\"\n>\n","import {\n NgFor,\n NgIf,\n} from '@angular/common';\nimport {\n Component,\n Input,\n ChangeDetectionStrategy,\n ChangeDetectorRef,\n ViewChild,\n} from '@angular/core';\nimport {\n NgControl,\n ReactiveFormsModule,\n} from '@angular/forms';\n\nimport {\n DaffNativeSelectComponent,\n DaffNativeSelectModule,\n} from '@daffodil/design';\n\n/**\n * Create an array of numbers from min to max, not including max.\n */\nexport const makeValueArray = (min: number, max: number, increment: number) =>\n Array(max - min).fill(0).map((x, i) => (i * increment) + min);\n\n@Component({\n selector: 'daff-quantity-select',\n templateUrl: './quantity-select.component.html',\n changeDetection: ChangeDetectionStrategy.OnPush,\n imports: [\n DaffNativeSelectModule,\n ReactiveFormsModule,\n NgFor,\n NgIf,\n ],\n})\nexport class DaffQuantitySelectComponent {\n\n @ViewChild(DaffNativeSelectComponent) select: DaffNativeSelectComponent;\n\n /**\n * @docs\n * The minimum number selectable.\n */\n @Input() min = 1;\n\n /**\n * @docs\n * The maximum number selectable;\n */\n @Input() max = 10;\n\n /**\n * @docs\n * Property used to determine whether or not the DaffQuantitySelectComponent is\n * used in a situation whether the `max` isn't a true max.\n */\n @Input() extendable = true;\n\n /**\n * The amount to increment between \"min\" and \"max\".\n */\n private increment = 1;\n\n _value = 1;\n\n get value() {\n return this._value;\n }\n set value(value) {\n this._value = value;\n this.ngControl.control.patchValue(this._value);\n this.changeDetectorRef.markForCheck();\n }\n\n constructor(public ngControl: NgControl, private changeDetectorRef: ChangeDetectorRef) {}\n\n /**\n * Callback function fired when the value changes.\n * Used to pass the value back up to the ngControl.\n */\n onValueChange(e) {\n this.value = e.target.value;\n }\n\n get focused(): boolean {\n return this.select.focused;\n }\n\n focus() {\n this.select.focus();\n }\n\n onFocus() {\n this.ngControl.control.markAsTouched();\n }\n\n /**\n * A helper function for easily making options for the `select`.\n */\n get valueArray() {\n return makeValueArray(this.min, this.max, this.increment);\n }\n}\n","<select daff-native-select\n [formControl]=\"ngControl.control\"\n (focus)=\"onFocus()\"\n>\n <option *ngFor=\"let item of valueArray\" [value]=\"item\">{{ item }}</option>\n @if (extendable) {\n <option [value]=\"max\">{{ max }}+</option>\n } @else {\n <option [value]=\"max\">{{ max }}</option>\n }\n</select>\n","import { coerceNumberProperty } from '@angular/cdk/coercion';\nimport {\n Component,\n Input,\n ChangeDetectionStrategy,\n Optional,\n Self,\n ViewChild,\n ChangeDetectorRef,\n} from '@angular/core';\nimport {\n ControlValueAccessor,\n NgControl,\n} from '@angular/forms';\n\nimport { DaffFormFieldControl } from '@daffodil/design';\n\nimport { DaffQuantityInputComponent } from './quantity-input/quantity-input.component';\nimport { DaffQuantitySelectComponent } from './quantity-select/quantity-select.component';\n\n@Component({\n selector: 'daff-quantity-field',\n templateUrl: './quantity-field.component.html',\n providers: [\n {\n provide: DaffFormFieldControl,\n // eslint-disable-next-line @typescript-eslint/no-use-before-define\n useExisting: DaffQuantityFieldComponent,\n },\n ],\n changeDetection: ChangeDetectionStrategy.OnPush,\n imports: [\n DaffQuantityInputComponent,\n DaffQuantitySelectComponent,\n ],\n})\nexport class DaffQuantityFieldComponent extends DaffFormFieldControl<number> implements ControlValueAccessor, DaffFormFieldControl<number> {\n\n @ViewChild(DaffQuantityInputComponent) input: DaffQuantityInputComponent;\n @ViewChild(DaffQuantitySelectComponent) select: DaffQuantitySelectComponent;\n\n /**\n * @docs\n * The minimum valid value of the quantity field.\n * Must be greater than or equal to 1.\n */\n @Input() min = 1;\n\n /**\n * @docs\n * The maximum valid value of the quantity field.\n * Must be greater than min.\n */\n @Input() max = 500;\n\n /**\n * @docs\n * The range of numbers acceptable in a quantity dropdown\n * before it becomes an input element.\n */\n @Input() selectMax = 10;\n\n @Input() id = '';\n\n get focused(): boolean {\n return !!(this.input?.focused || this.select?.focused);\n }\n\n disabled = false;\n private _quantity = 1;\n private _inputHasBeenShown = false;\n\n get quantity() {\n return this._quantity;\n }\n set quantity(value: number) {\n this._quantity = coerceNumberProperty(value, 1);\n }\n\n /**\n * Returns the lesser of max and selectMax.\n */\n get _maxFloor(): number {\n return Math.min(this.max, this.selectMax);\n }\n\n get controlType() {\n // TODO: use enum\n return this.showInputField\n ? 'native-input'\n : 'native-select';\n }\n\n get showInputField(): boolean {\n const ret = this._inputHasBeenShown || (this.ngControl\n ? this.ngControl.value >= this.selectMax\n : this.quantity >= this.selectMax);\n\n if (ret) {\n this._inputHasBeenShown = true;\n }\n\n return ret;\n }\n\n get showSelectField(): boolean {\n return !this.showInputField;\n }\n\n constructor(\n @Optional() @Self() public ngControl: NgControl,\n private cd: ChangeDetectorRef,\n ) {\n super(ngControl);\n\n if (this.ngControl != null) {\n this.ngControl.valueAccessor = this;\n }\n }\n\n private onChange(quantity: number): void {};\n private onTouched(quantity: number): void {};\n\n writeValue(quantity: number): void {\n this.quantity = quantity;\n this.cd.markForCheck();\n }\n\n registerOnChange(fn: (quantity: number) => void): void {\n this.onChange = fn;\n }\n\n registerOnTouched(fn: any): void {\n this.onTouched = fn;\n }\n\n setDisabledState(isDisabled: boolean): void {\n this.disabled = isDisabled;\n }\n\n focus() {\n if(this.select) {\n this.select.focus();\n }\n if(this.input) {\n this.input.focus();\n }\n }\n\n get value() {\n if(this.select) {\n return this.select.value;\n }\n if(this.input) {\n return this.input.value;\n }\n }\n}\n","@if (showSelectField) {\n <daff-quantity-select\n [min]=\"min\"\n [max]=\"_maxFloor\"\n [extendable]=\"max > selectMax\"\n [id]=\"id\">\n </daff-quantity-select>\n}\n@if (showInputField) {\n <daff-quantity-input\n [min]=\"min\"\n [max]=\"max\"\n [id]=\"id\">\n </daff-quantity-input>\n}\n","import { CommonModule } from '@angular/common';\nimport { NgModule } from '@angular/core';\n\nimport { DaffQuantityFieldComponent } from './quantity-field.component';\n\n/**\n * @deprecated in favor of standalone components. Deprecated in version 0.84.0. Will be removed in version 1.0.0.\n */\n@NgModule({\n imports: [\n CommonModule,\n DaffQuantityFieldComponent,\n ],\n exports: [\n DaffQuantityFieldComponent,\n ],\n})\nexport class DaffQuantityFieldModule { }\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"daffodil-design-quantity-field.mjs","sources":["../../../libs/design/quantity-field/src/quantity-input/quantity-input.component.ts","../../../libs/design/quantity-field/src/quantity-input/quantity-input.component.html","../../../libs/design/quantity-field/src/quantity-select/quantity-select.component.ts","../../../libs/design/quantity-field/src/quantity-select/quantity-select.component.html","../../../libs/design/quantity-field/src/quantity-field.component.ts","../../../libs/design/quantity-field/src/quantity-field.component.html","../../../libs/design/quantity-field/src/quantity-field.module.ts","../../../libs/design/quantity-field/src/daffodil-design-quantity-field.ts"],"sourcesContent":["import { coerceNumberProperty } from '@angular/cdk/coercion';\nimport {\n Component,\n Input,\n ViewChild,\n ChangeDetectionStrategy,\n ChangeDetectorRef,\n OnInit,\n OnDestroy,\n} from '@angular/core';\nimport {\n UntypedFormControl,\n NgControl,\n ReactiveFormsModule,\n} from '@angular/forms';\nimport { Subject } from 'rxjs';\nimport { takeUntil } from 'rxjs/operators';\n\nimport { DaffInputComponent } from '@daffodil/design/input';\n\n@Component({\n selector: 'daff-quantity-input',\n templateUrl: './quantity-input.component.html',\n changeDetection: ChangeDetectionStrategy.OnPush,\n imports: [\n DaffInputComponent,\n ReactiveFormsModule,\n ],\n})\nexport class DaffQuantityInputComponent implements OnInit, OnDestroy {\n @ViewChild(DaffInputComponent) input: DaffInputComponent;\n\n /**\n * @docs\n * The minimum number for the quantity input field\n */\n @Input() min = 1;\n\n /**\n * @docs\n * The maximum number for the quantity input field\n */\n @Input() max = 10;\n\n /**\n * A new control for the nested native input.\n * We don't bind the native input directly to the inherited form control\n * to avoid triggering updates on the input event.\n * Instead, we listen for the change event and manually patch form control values.\n */\n _inputControl = new UntypedFormControl();\n\n get focused(): boolean {\n return this.input?.focused;\n }\n\n _destroyed = new Subject();\n\n get value() {\n return this.ngControl.control.value;\n }\n set value(value) {\n const val = Math.min(Math.round(coerceNumberProperty(value)), this.max);\n this.ngControl.control.patchValue(val);\n this._inputControl.patchValue(val);\n this.changeDetectorRef.markForCheck();\n }\n\n get disabled() {\n return this.ngControl.control.disabled;\n }\n\n constructor(\n public ngControl: NgControl,\n private changeDetectorRef: ChangeDetectorRef,\n ) {}\n\n /**\n * @docs-private\n */\n ngOnInit() {\n this._inputControl.patchValue(this.ngControl.control.value);\n this.setInputDisabled();\n this.ngControl.statusChanges.pipe(\n takeUntil(this._destroyed),\n ).subscribe(() => {\n this.setInputDisabled();\n });\n }\n\n ngOnDestroy() {\n this._destroyed.next(true);\n }\n\n focus() {\n this.input.focus();\n }\n\n onFocus() {\n this.ngControl.control.markAsTouched();\n }\n\n onBlur() {\n if (this.value === null || this.value === undefined) {\n this.value = 1;\n this.changeDetectorRef.markForCheck();\n }\n }\n\n /**\n * Callback function fired when the value changes.\n * Used to pass the value back up to the ngControl.\n */\n onValueChange(e: any) {\n this.value = e.target.value;\n }\n\n private setInputDisabled() {\n // eslint-disable-next-line @typescript-eslint/no-unused-expressions\n this.ngControl.disabled\n ? this._inputControl.disable()\n : this._inputControl.enable();\n }\n}\n","<input daff-input\n type=\"number\"\n [attr.max]=\"max\"\n [attr.min]=\"min\"\n [attr.step]=\"1\"\n (focus)=\"onFocus()\"\n (blur)=\"onBlur()\"\n (change)=\"onValueChange($event)\"\n [formControl]=\"_inputControl\"\n>\n","import {\n NgFor,\n NgIf,\n} from '@angular/common';\nimport {\n Component,\n Input,\n ChangeDetectionStrategy,\n ChangeDetectorRef,\n ViewChild,\n} from '@angular/core';\nimport {\n NgControl,\n ReactiveFormsModule,\n} from '@angular/forms';\n\nimport {\n DaffNativeSelectComponent,\n DaffNativeSelectModule,\n} from '@daffodil/design';\n\n/**\n * Create an array of numbers from min to max, not including max.\n */\nexport const makeValueArray = (min: number, max: number, increment: number) =>\n Array(max - min).fill(0).map((x, i) => (i * increment) + min);\n\n@Component({\n selector: 'daff-quantity-select',\n templateUrl: './quantity-select.component.html',\n changeDetection: ChangeDetectionStrategy.OnPush,\n imports: [\n DaffNativeSelectModule,\n ReactiveFormsModule,\n NgFor,\n NgIf,\n ],\n})\nexport class DaffQuantitySelectComponent {\n\n @ViewChild(DaffNativeSelectComponent) select: DaffNativeSelectComponent;\n\n /**\n * @docs\n * The minimum number selectable.\n */\n @Input() min = 1;\n\n /**\n * @docs\n * The maximum number selectable;\n */\n @Input() max = 10;\n\n /**\n * @docs\n * Property used to determine whether or not the DaffQuantitySelectComponent is\n * used in a situation whether the `max` isn't a true max.\n */\n @Input() extendable = true;\n\n /**\n * The amount to increment between \"min\" and \"max\".\n */\n private increment = 1;\n\n _value = 1;\n\n get value() {\n return this._value;\n }\n set value(value) {\n this._value = value;\n this.ngControl.control.patchValue(this._value);\n this.changeDetectorRef.markForCheck();\n }\n\n constructor(public ngControl: NgControl, private changeDetectorRef: ChangeDetectorRef) {}\n\n /**\n * Callback function fired when the value changes.\n * Used to pass the value back up to the ngControl.\n */\n onValueChange(e) {\n this.value = e.target.value;\n }\n\n get focused(): boolean {\n return this.select.focused;\n }\n\n focus() {\n this.select.focus();\n }\n\n onFocus() {\n this.ngControl.control.markAsTouched();\n }\n\n /**\n * A helper function for easily making options for the `select`.\n */\n get valueArray() {\n return makeValueArray(this.min, this.max, this.increment);\n }\n}\n","<select daff-native-select\n [formControl]=\"ngControl.control\"\n (focus)=\"onFocus()\"\n>\n <option *ngFor=\"let item of valueArray\" [value]=\"item\">{{ item }}</option>\n @if (extendable) {\n <option [value]=\"max\">{{ max }}+</option>\n } @else {\n <option [value]=\"max\">{{ max }}</option>\n }\n</select>\n","import { coerceNumberProperty } from '@angular/cdk/coercion';\nimport {\n Component,\n Input,\n ChangeDetectionStrategy,\n Optional,\n Self,\n ViewChild,\n ChangeDetectorRef,\n} from '@angular/core';\nimport {\n ControlValueAccessor,\n NgControl,\n} from '@angular/forms';\n\nimport { DaffFormFieldControl } from '@daffodil/design';\n\nimport { DaffQuantityInputComponent } from './quantity-input/quantity-input.component';\nimport { DaffQuantitySelectComponent } from './quantity-select/quantity-select.component';\n\n@Component({\n selector: 'daff-quantity-field',\n templateUrl: './quantity-field.component.html',\n providers: [\n {\n provide: DaffFormFieldControl,\n\n useExisting: DaffQuantityFieldComponent,\n },\n ],\n changeDetection: ChangeDetectionStrategy.OnPush,\n imports: [\n DaffQuantityInputComponent,\n DaffQuantitySelectComponent,\n ],\n})\nexport class DaffQuantityFieldComponent extends DaffFormFieldControl<number> implements ControlValueAccessor, DaffFormFieldControl<number> {\n\n @ViewChild(DaffQuantityInputComponent) input: DaffQuantityInputComponent;\n @ViewChild(DaffQuantitySelectComponent) select: DaffQuantitySelectComponent;\n\n /**\n * @docs\n * The minimum valid value of the quantity field.\n * Must be greater than or equal to 1.\n */\n @Input() min = 1;\n\n /**\n * @docs\n * The maximum valid value of the quantity field.\n * Must be greater than min.\n */\n @Input() max = 500;\n\n /**\n * @docs\n * The range of numbers acceptable in a quantity dropdown\n * before it becomes an input element.\n */\n @Input() selectMax = 10;\n\n @Input() id = '';\n\n get focused(): boolean {\n return !!(this.input?.focused || this.select?.focused);\n }\n\n /**\n * @docs-private\n *\n * TODO: Update functionality to match other control during refactor.\n */\n disabled = false;\n\n /**\n * @docs-private\n * TODO: Update functionality to match other control during refactor.\n */\n required = false;\n\n private _quantity = 1;\n private _inputHasBeenShown = false;\n\n get quantity() {\n return this._quantity;\n }\n set quantity(value: number) {\n this._quantity = coerceNumberProperty(value, 1);\n }\n\n /**\n * Returns the lesser of max and selectMax.\n */\n get _maxFloor(): number {\n return Math.min(this.max, this.selectMax);\n }\n\n get controlType() {\n // TODO: use enum\n return this.showInputField\n ? 'native-input'\n : 'native-select';\n }\n\n get showInputField(): boolean {\n const ret = this._inputHasBeenShown || (this.ngControl\n ? this.ngControl.value >= this.selectMax\n : this.quantity >= this.selectMax);\n\n if (ret) {\n this._inputHasBeenShown = true;\n }\n\n return ret;\n }\n\n get showSelectField(): boolean {\n return !this.showInputField;\n }\n\n constructor(\n @Optional() @Self() public ngControl: NgControl,\n private cd: ChangeDetectorRef,\n ) {\n super(ngControl);\n\n if (this.ngControl != null) {\n this.ngControl.valueAccessor = this;\n }\n }\n\n private onChange(quantity: number): void {};\n private onTouched(quantity: number): void {};\n\n writeValue(quantity: number): void {\n this.quantity = quantity;\n this.cd.markForCheck();\n }\n\n registerOnChange(fn: (quantity: number) => void): void {\n this.onChange = fn;\n }\n\n registerOnTouched(fn: any): void {\n this.onTouched = fn;\n }\n\n setDisabledState(isDisabled: boolean): void {\n this.disabled = isDisabled;\n }\n\n focus() {\n if(this.select) {\n this.select.focus();\n }\n if(this.input) {\n this.input.focus();\n }\n }\n\n get value() {\n if(this.select) {\n return this.select.value;\n }\n if(this.input) {\n return this.input.value;\n }\n }\n}\n","@if (showSelectField) {\n <daff-quantity-select\n [min]=\"min\"\n [max]=\"_maxFloor\"\n [extendable]=\"max > selectMax\"\n [id]=\"id\">\n </daff-quantity-select>\n}\n@if (showInputField) {\n <daff-quantity-input\n [min]=\"min\"\n [max]=\"max\"\n [id]=\"id\">\n </daff-quantity-input>\n}\n","import { CommonModule } from '@angular/common';\nimport { NgModule } from '@angular/core';\n\nimport { DaffQuantityFieldComponent } from './quantity-field.component';\n\n/**\n * @deprecated in favor of standalone components. Deprecated in version 0.84.0. Will be removed in version 1.0.0.\n */\n@NgModule({\n imports: [\n CommonModule,\n DaffQuantityFieldComponent,\n ],\n exports: [\n DaffQuantityFieldComponent,\n ],\n})\nexport class DaffQuantityFieldModule { }\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}
@@ -38,7 +38,7 @@ class DefaultSelectComponent {
38
38
  this.options = SELECT_EXAMPLE_ADDRESSES;
39
39
  }
40
40
  /** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.11", ngImport: i0, type: DefaultSelectComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
41
- /** @nocollapse */ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "19.2.11", type: DefaultSelectComponent, isStandalone: true, selector: "default-select", ngImport: i0, template: "<daff-form-field>\n <daff-form-label>Select an address</daff-form-label>\n <daff-select [options]=\"options\" [formControl]=\"control\">\n <ng-template daffSelectOption let-option=\"option\">\n <div>{{option.name}}</div>\n <div>{{option.street}}</div>\n <div>{{option.city}}, {{option.state}} {{option.postcode}}</div>\n </ng-template>\n </daff-select>\n</daff-form-field>\n\n<div class=\"default-select__selected-value\" *ngIf=\"control.value\">\n Selected Address:\n <div>{{control.value.name}}</div>\n <div>{{control.value.street}}</div>\n <div>{{control.value.city}}, {{control.value.state}} {{control.value.postcode}}</div>\n</div>", styles: [".default-select__selected-value{margin:16px 0 0}\n"], dependencies: [{ kind: "ngmodule", type: ReactiveFormsModule }, { kind: "directive", type: i1.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1.FormControlDirective, selector: "[formControl]", inputs: ["formControl", "disabled", "ngModel"], outputs: ["ngModelChange"], exportAs: ["ngForm"] }, { kind: "directive", type: NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i2.DaffSelectComponent, selector: "daff-select", inputs: ["disabled", "options", "optionsId"] }, { kind: "directive", type: i2.DaffSelectOptionDirective, selector: "[daffSelectOption]" }, { kind: "component", type: i3.DaffFormFieldComponent, selector: "daff-form-field", inputs: ["appearance", "id"] }, { kind: "directive", type: i3.DaffFormFieldLabelDirective, selector: "daff-form-label" }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
41
+ /** @nocollapse */ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "19.2.11", type: DefaultSelectComponent, isStandalone: true, selector: "default-select", ngImport: i0, template: "<daff-form-field>\n <daff-form-label>Select an address</daff-form-label>\n <daff-select [options]=\"options\" [formControl]=\"control\">\n <ng-template daffSelectOption let-option=\"option\">\n <div>{{option.name}}</div>\n <div>{{option.street}}</div>\n <div>{{option.city}}, {{option.state}} {{option.postcode}}</div>\n </ng-template>\n </daff-select>\n</daff-form-field>\n\n<div class=\"default-select__selected-value\" *ngIf=\"control.value\">\n Selected Address:\n <div>{{control.value.name}}</div>\n <div>{{control.value.street}}</div>\n <div>{{control.value.city}}, {{control.value.state}} {{control.value.postcode}}</div>\n</div>", styles: [".default-select__selected-value{margin:16px 0 0}\n"], dependencies: [{ kind: "ngmodule", type: ReactiveFormsModule }, { kind: "directive", type: i1.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1.FormControlDirective, selector: "[formControl]", inputs: ["formControl", "disabled", "ngModel"], outputs: ["ngModelChange"], exportAs: ["ngForm"] }, { kind: "directive", type: NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i2.DaffSelectComponent, selector: "daff-select", inputs: ["disabled", "required", "options", "optionsId"] }, { kind: "directive", type: i2.DaffSelectOptionDirective, selector: "[daffSelectOption]" }, { kind: "component", type: i3.DaffFormFieldComponent, selector: "daff-form-field", inputs: ["appearance", "id"] }, { kind: "directive", type: i3.DaffFormFieldLabelDirective, selector: "daff-form-label" }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
42
42
  }
43
43
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.11", ngImport: i0, type: DefaultSelectComponent, decorators: [{
44
44
  type: Component,
@@ -56,7 +56,7 @@ class DisabledSelectComponent {
56
56
  this.options = SELECT_EXAMPLE_ADDRESSES;
57
57
  }
58
58
  /** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.11", ngImport: i0, type: DisabledSelectComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
59
- /** @nocollapse */ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "19.2.11", type: DisabledSelectComponent, isStandalone: true, selector: "disabled-select", ngImport: i0, template: "<daff-form-field>\n <label daffFormLabel>Select an address</label>\n <daff-select [options]=\"options\" [formControl]=\"disabled\">\n <ng-template daffSelectOption let-option=\"option\"></ng-template>\n </daff-select>\n</daff-form-field>", dependencies: [{ kind: "ngmodule", type: ReactiveFormsModule }, { kind: "directive", type: i1.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1.FormControlDirective, selector: "[formControl]", inputs: ["formControl", "disabled", "ngModel"], outputs: ["ngModelChange"], exportAs: ["ngForm"] }, { kind: "component", type: i2.DaffSelectComponent, selector: "daff-select", inputs: ["disabled", "options", "optionsId"] }, { kind: "directive", type: i2.DaffSelectOptionDirective, selector: "[daffSelectOption]" }, { kind: "directive", type: i3.DaffFormLabelDirective, selector: "[daffFormLabel]" }, { kind: "component", type: i3.DaffFormFieldComponent, selector: "daff-form-field", inputs: ["appearance", "id"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
59
+ /** @nocollapse */ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "19.2.11", type: DisabledSelectComponent, isStandalone: true, selector: "disabled-select", ngImport: i0, template: "<daff-form-field>\n <label daffFormLabel>Select an address</label>\n <daff-select [options]=\"options\" [formControl]=\"disabled\">\n <ng-template daffSelectOption let-option=\"option\"></ng-template>\n </daff-select>\n</daff-form-field>", dependencies: [{ kind: "ngmodule", type: ReactiveFormsModule }, { kind: "directive", type: i1.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1.FormControlDirective, selector: "[formControl]", inputs: ["formControl", "disabled", "ngModel"], outputs: ["ngModelChange"], exportAs: ["ngForm"] }, { kind: "component", type: i2.DaffSelectComponent, selector: "daff-select", inputs: ["disabled", "required", "options", "optionsId"] }, { kind: "directive", type: i2.DaffSelectOptionDirective, selector: "[daffSelectOption]" }, { kind: "component", type: i3.DaffFormFieldComponent, selector: "daff-form-field", inputs: ["appearance", "id"] }, { kind: "directive", type: i3.DaffFormLabelDirective, selector: "[daffFormLabel]" }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
60
60
  }
61
61
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.11", ngImport: i0, type: DisabledSelectComponent, decorators: [{
62
62
  type: Component,
@@ -73,7 +73,7 @@ class SelectWithErrorComponent {
73
73
  this.options = SELECT_EXAMPLE_ADDRESSES;
74
74
  }
75
75
  /** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.11", ngImport: i0, type: SelectWithErrorComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
76
- /** @nocollapse */ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "19.2.11", type: SelectWithErrorComponent, isStandalone: true, selector: "select-with-error", ngImport: i0, template: "<daff-form-field>\n <label daffFormLabel>Select an address</label>\n <daff-select [options]=\"options\" [formControl]=\"control\">\n <ng-template daffSelectOption let-option=\"option\">\n <div>{{option.name}}</div>\n <div>{{option.street}}</div>\n <div>{{option.city}}, {{option.state}} {{option.postcode}}</div>\n </ng-template>\n </daff-select>\n <daff-error-message *ngIf=\"control.invalid\">This field is required</daff-error-message>\n</daff-form-field>", dependencies: [{ kind: "directive", type: NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "ngmodule", type: ReactiveFormsModule }, { kind: "directive", type: i1.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1.FormControlDirective, selector: "[formControl]", inputs: ["formControl", "disabled", "ngModel"], outputs: ["ngModelChange"], exportAs: ["ngForm"] }, { kind: "component", type: i2.DaffSelectComponent, selector: "daff-select", inputs: ["disabled", "options", "optionsId"] }, { kind: "directive", type: i2.DaffSelectOptionDirective, selector: "[daffSelectOption]" }, { kind: "component", type: i3.DaffErrorMessageComponent, selector: "daff-error-message" }, { kind: "directive", type: i3.DaffFormLabelDirective, selector: "[daffFormLabel]" }, { kind: "component", type: i3.DaffFormFieldComponent, selector: "daff-form-field", inputs: ["appearance", "id"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
76
+ /** @nocollapse */ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "19.2.11", type: SelectWithErrorComponent, isStandalone: true, selector: "select-with-error", ngImport: i0, template: "<daff-form-field>\n <label daffFormLabel>Select an address</label>\n <daff-select [options]=\"options\" [formControl]=\"control\">\n <ng-template daffSelectOption let-option=\"option\">\n <div>{{option.name}}</div>\n <div>{{option.street}}</div>\n <div>{{option.city}}, {{option.state}} {{option.postcode}}</div>\n </ng-template>\n </daff-select>\n <daff-error-message *ngIf=\"control.invalid\">This field is required</daff-error-message>\n</daff-form-field>", dependencies: [{ kind: "directive", type: NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "ngmodule", type: ReactiveFormsModule }, { kind: "directive", type: i1.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1.FormControlDirective, selector: "[formControl]", inputs: ["formControl", "disabled", "ngModel"], outputs: ["ngModelChange"], exportAs: ["ngForm"] }, { kind: "component", type: i2.DaffSelectComponent, selector: "daff-select", inputs: ["disabled", "required", "options", "optionsId"] }, { kind: "directive", type: i2.DaffSelectOptionDirective, selector: "[daffSelectOption]" }, { kind: "component", type: i3.DaffFormFieldComponent, selector: "daff-form-field", inputs: ["appearance", "id"] }, { kind: "component", type: i3.DaffErrorMessageComponent, selector: "daff-error-message" }, { kind: "directive", type: i3.DaffFormLabelDirective, selector: "[daffFormLabel]" }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
77
77
  }
78
78
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.11", ngImport: i0, type: SelectWithErrorComponent, decorators: [{
79
79
  type: Component,
@@ -91,7 +91,7 @@ class SkeletonSelectComponent {
91
91
  this.options = SELECT_EXAMPLE_ADDRESSES;
92
92
  }
93
93
  /** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.11", ngImport: i0, type: SkeletonSelectComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
94
- /** @nocollapse */ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "19.2.11", type: SkeletonSelectComponent, isStandalone: true, selector: "skeleton-select", ngImport: i0, template: "<daff-form-field [skeleton]=\"true\">\n <label daffFormLabel>Select an address</label>\n <daff-select [options]=\"options\" [formControl]=\"control\">\n <ng-template daffSelectOption let-option=\"option\">\n </ng-template>\n </daff-select>\n</daff-form-field>", dependencies: [{ kind: "ngmodule", type: ReactiveFormsModule }, { kind: "directive", type: i1.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1.FormControlDirective, selector: "[formControl]", inputs: ["formControl", "disabled", "ngModel"], outputs: ["ngModelChange"], exportAs: ["ngForm"] }, { kind: "component", type: i2.DaffSelectComponent, selector: "daff-select", inputs: ["disabled", "options", "optionsId"] }, { kind: "directive", type: i2.DaffSelectOptionDirective, selector: "[daffSelectOption]" }, { kind: "directive", type: i3.DaffFormLabelDirective, selector: "[daffFormLabel]" }, { kind: "component", type: i3.DaffFormFieldComponent, selector: "daff-form-field", inputs: ["appearance", "id"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
94
+ /** @nocollapse */ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "19.2.11", type: SkeletonSelectComponent, isStandalone: true, selector: "skeleton-select", ngImport: i0, template: "<daff-form-field [skeleton]=\"true\">\n <label daffFormLabel>Select an address</label>\n <daff-select [options]=\"options\" [formControl]=\"control\">\n <ng-template daffSelectOption let-option=\"option\">\n </ng-template>\n </daff-select>\n</daff-form-field>", dependencies: [{ kind: "ngmodule", type: ReactiveFormsModule }, { kind: "directive", type: i1.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1.FormControlDirective, selector: "[formControl]", inputs: ["formControl", "disabled", "ngModel"], outputs: ["ngModelChange"], exportAs: ["ngForm"] }, { kind: "component", type: i2.DaffSelectComponent, selector: "daff-select", inputs: ["disabled", "required", "options", "optionsId"] }, { kind: "directive", type: i2.DaffSelectOptionDirective, selector: "[daffSelectOption]" }, { kind: "component", type: i3.DaffFormFieldComponent, selector: "daff-form-field", inputs: ["appearance", "id"] }, { kind: "directive", type: i3.DaffFormLabelDirective, selector: "[daffFormLabel]" }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
95
95
  }
96
96
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.11", ngImport: i0, type: SkeletonSelectComponent, decorators: [{
97
97
  type: Component,
@@ -1 +1 @@
1
- {"version":3,"file":"daffodil-design-select-examples.mjs","sources":["../../../libs/design/select/examples/src/models/addresses.ts","../../../libs/design/select/examples/src/default-select/default-select.component.ts","../../../libs/design/select/examples/src/default-select/default-select.component.html","../../../libs/design/select/examples/src/disabled-select/disabled-select.component.ts","../../../libs/design/select/examples/src/disabled-select/disabled-select.component.html","../../../libs/design/select/examples/src/select-with-error/select-with-error.component.ts","../../../libs/design/select/examples/src/select-with-error/select-with-error.component.html","../../../libs/design/select/examples/src/skeleton-select/skeleton-select.component.ts","../../../libs/design/select/examples/src/skeleton-select/skeleton-select.component.html","../../../libs/design/select/examples/src/public_api.ts","../../../libs/design/select/examples/src/daffodil-design-select-examples.ts"],"sourcesContent":["import { SelectExampleAddress } from './address.type';\n\nexport const SELECT_EXAMPLE_ADDRESSES: SelectExampleAddress[] = [\n {\n name: 'John Doe',\n street: '123 New St',\n city: 'New York',\n state: 'NY',\n postcode: '10001',\n },\n {\n name: 'Srinivasa Ramanujan',\n street: '1729 Hardy Blvd',\n city: 'New York',\n state: 'NY',\n postcode: '10001',\n },\n {\n name: 'Bob the Builder',\n street: '525 Coal Ave',\n city: 'Morgantown',\n state: 'WV',\n postcode: '26501',\n },\n];\n","import { NgIf } from '@angular/common';\nimport {\n ChangeDetectionStrategy,\n Component,\n} from '@angular/core';\nimport {\n FormControl,\n ReactiveFormsModule,\n} from '@angular/forms';\n\nimport { DAFF_FORM_FIELD_COMPONENTS } from '@daffodil/design';\nimport { DAFF_SELECT_COMPONENTS } from '@daffodil/design/select';\n\nimport { SELECT_EXAMPLE_ADDRESSES } from '../models/addresses';\n\n@Component({\n // eslint-disable-next-line @angular-eslint/component-selector\n selector: 'default-select',\n templateUrl: './default-select.component.html',\n styleUrls: ['./default-select.component.scss'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n standalone: true,\n imports: [\n ReactiveFormsModule,\n NgIf,\n DAFF_SELECT_COMPONENTS,\n DAFF_FORM_FIELD_COMPONENTS,\n ],\n})\nexport class DefaultSelectComponent {\n control = new FormControl();\n\n options = SELECT_EXAMPLE_ADDRESSES;\n}\n","<daff-form-field>\n <daff-form-label>Select an address</daff-form-label>\n <daff-select [options]=\"options\" [formControl]=\"control\">\n <ng-template daffSelectOption let-option=\"option\">\n <div>{{option.name}}</div>\n <div>{{option.street}}</div>\n <div>{{option.city}}, {{option.state}} {{option.postcode}}</div>\n </ng-template>\n </daff-select>\n</daff-form-field>\n\n<div class=\"default-select__selected-value\" *ngIf=\"control.value\">\n Selected Address:\n <div>{{control.value.name}}</div>\n <div>{{control.value.street}}</div>\n <div>{{control.value.city}}, {{control.value.state}} {{control.value.postcode}}</div>\n</div>","import {\n ChangeDetectionStrategy,\n Component,\n} from '@angular/core';\nimport {\n ReactiveFormsModule,\n UntypedFormControl,\n} from '@angular/forms';\n\nimport { DAFF_FORM_FIELD_COMPONENTS } from '@daffodil/design';\nimport { DAFF_SELECT_COMPONENTS } from '@daffodil/design/select';\n\nimport { SELECT_EXAMPLE_ADDRESSES } from '../models/addresses';\n\n@Component({\n // eslint-disable-next-line @angular-eslint/component-selector\n selector: 'disabled-select',\n templateUrl: './disabled-select.component.html',\n changeDetection: ChangeDetectionStrategy.OnPush,\n standalone: true,\n imports: [\n ReactiveFormsModule,\n DAFF_SELECT_COMPONENTS,\n DAFF_FORM_FIELD_COMPONENTS,\n ],\n})\nexport class DisabledSelectComponent {\n disabled = new UntypedFormControl({ value : '' , disabled: true });\n\n options = SELECT_EXAMPLE_ADDRESSES;\n}\n","<daff-form-field>\n <label daffFormLabel>Select an address</label>\n <daff-select [options]=\"options\" [formControl]=\"disabled\">\n <ng-template daffSelectOption let-option=\"option\"></ng-template>\n </daff-select>\n</daff-form-field>","import { NgIf } from '@angular/common';\nimport {\n ChangeDetectionStrategy,\n Component,\n} from '@angular/core';\nimport {\n FormControl,\n ReactiveFormsModule,\n Validators,\n} from '@angular/forms';\n\nimport { DAFF_FORM_FIELD_COMPONENTS } from '@daffodil/design';\nimport { DAFF_SELECT_COMPONENTS } from '@daffodil/design/select';\n\nimport { SELECT_EXAMPLE_ADDRESSES } from '../models/addresses';\n\n@Component({\n // eslint-disable-next-line @angular-eslint/component-selector\n selector: 'select-with-error',\n templateUrl: './select-with-error.component.html',\n changeDetection: ChangeDetectionStrategy.OnPush,\n standalone: true,\n imports: [\n NgIf,\n ReactiveFormsModule,\n DAFF_SELECT_COMPONENTS,\n DAFF_FORM_FIELD_COMPONENTS,\n ],\n})\nexport class SelectWithErrorComponent {\n control = new FormControl('', [Validators.required]);\n\n options = SELECT_EXAMPLE_ADDRESSES;\n}\n","<daff-form-field>\n <label daffFormLabel>Select an address</label>\n <daff-select [options]=\"options\" [formControl]=\"control\">\n <ng-template daffSelectOption let-option=\"option\">\n <div>{{option.name}}</div>\n <div>{{option.street}}</div>\n <div>{{option.city}}, {{option.state}} {{option.postcode}}</div>\n </ng-template>\n </daff-select>\n <daff-error-message *ngIf=\"control.invalid\">This field is required</daff-error-message>\n</daff-form-field>","import {\n ChangeDetectionStrategy,\n Component,\n} from '@angular/core';\nimport {\n FormControl,\n ReactiveFormsModule,\n} from '@angular/forms';\n\nimport { DAFF_FORM_FIELD_COMPONENTS } from '@daffodil/design';\nimport { DAFF_SELECT_COMPONENTS } from '@daffodil/design/select';\n\nimport { SELECT_EXAMPLE_ADDRESSES } from '../models/addresses';\n\n@Component({\n // eslint-disable-next-line @angular-eslint/component-selector\n selector: 'skeleton-select',\n templateUrl: './skeleton-select.component.html',\n changeDetection: ChangeDetectionStrategy.OnPush,\n standalone: true,\n imports: [\n ReactiveFormsModule,\n DAFF_SELECT_COMPONENTS,\n DAFF_FORM_FIELD_COMPONENTS,\n ],\n})\nexport class SkeletonSelectComponent {\n control = new FormControl();\n\n options = SELECT_EXAMPLE_ADDRESSES;\n}\n","<daff-form-field [skeleton]=\"true\">\n <label daffFormLabel>Select an address</label>\n <daff-select [options]=\"options\" [formControl]=\"control\">\n <ng-template daffSelectOption let-option=\"option\">\n </ng-template>\n </daff-select>\n</daff-form-field>","import { DefaultSelectComponent } from './default-select/default-select.component';\nimport { DisabledSelectComponent } from './disabled-select/disabled-select.component';\nimport { SelectWithErrorComponent } from './select-with-error/select-with-error.component';\nimport { SkeletonSelectComponent } from './skeleton-select/skeleton-select.component';\n\nexport const SELECT_EXAMPLES = [\n DefaultSelectComponent,\n DisabledSelectComponent,\n SkeletonSelectComponent,\n SelectWithErrorComponent,\n];\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"daffodil-design-select-examples.mjs","sources":["../../../libs/design/select/examples/src/models/addresses.ts","../../../libs/design/select/examples/src/default-select/default-select.component.ts","../../../libs/design/select/examples/src/default-select/default-select.component.html","../../../libs/design/select/examples/src/disabled-select/disabled-select.component.ts","../../../libs/design/select/examples/src/disabled-select/disabled-select.component.html","../../../libs/design/select/examples/src/select-with-error/select-with-error.component.ts","../../../libs/design/select/examples/src/select-with-error/select-with-error.component.html","../../../libs/design/select/examples/src/skeleton-select/skeleton-select.component.ts","../../../libs/design/select/examples/src/skeleton-select/skeleton-select.component.html","../../../libs/design/select/examples/src/public_api.ts","../../../libs/design/select/examples/src/daffodil-design-select-examples.ts"],"sourcesContent":["import { SelectExampleAddress } from './address.type';\n\nexport const SELECT_EXAMPLE_ADDRESSES: SelectExampleAddress[] = [\n {\n name: 'John Doe',\n street: '123 New St',\n city: 'New York',\n state: 'NY',\n postcode: '10001',\n },\n {\n name: 'Srinivasa Ramanujan',\n street: '1729 Hardy Blvd',\n city: 'New York',\n state: 'NY',\n postcode: '10001',\n },\n {\n name: 'Bob the Builder',\n street: '525 Coal Ave',\n city: 'Morgantown',\n state: 'WV',\n postcode: '26501',\n },\n];\n","import { NgIf } from '@angular/common';\nimport {\n ChangeDetectionStrategy,\n Component,\n} from '@angular/core';\nimport {\n FormControl,\n ReactiveFormsModule,\n} from '@angular/forms';\n\nimport { DAFF_FORM_FIELD_COMPONENTS } from '@daffodil/design';\nimport { DAFF_SELECT_COMPONENTS } from '@daffodil/design/select';\n\nimport { SELECT_EXAMPLE_ADDRESSES } from '../models/addresses';\n\n@Component({\n // eslint-disable-next-line @angular-eslint/component-selector\n selector: 'default-select',\n templateUrl: './default-select.component.html',\n styleUrls: ['./default-select.component.scss'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n standalone: true,\n imports: [\n ReactiveFormsModule,\n NgIf,\n DAFF_SELECT_COMPONENTS,\n DAFF_FORM_FIELD_COMPONENTS,\n ],\n})\nexport class DefaultSelectComponent {\n control = new FormControl();\n\n options = SELECT_EXAMPLE_ADDRESSES;\n}\n","<daff-form-field>\n <daff-form-label>Select an address</daff-form-label>\n <daff-select [options]=\"options\" [formControl]=\"control\">\n <ng-template daffSelectOption let-option=\"option\">\n <div>{{option.name}}</div>\n <div>{{option.street}}</div>\n <div>{{option.city}}, {{option.state}} {{option.postcode}}</div>\n </ng-template>\n </daff-select>\n</daff-form-field>\n\n<div class=\"default-select__selected-value\" *ngIf=\"control.value\">\n Selected Address:\n <div>{{control.value.name}}</div>\n <div>{{control.value.street}}</div>\n <div>{{control.value.city}}, {{control.value.state}} {{control.value.postcode}}</div>\n</div>","import {\n ChangeDetectionStrategy,\n Component,\n} from '@angular/core';\nimport {\n ReactiveFormsModule,\n UntypedFormControl,\n} from '@angular/forms';\n\nimport { DAFF_FORM_FIELD_COMPONENTS } from '@daffodil/design';\nimport { DAFF_SELECT_COMPONENTS } from '@daffodil/design/select';\n\nimport { SELECT_EXAMPLE_ADDRESSES } from '../models/addresses';\n\n@Component({\n // eslint-disable-next-line @angular-eslint/component-selector\n selector: 'disabled-select',\n templateUrl: './disabled-select.component.html',\n changeDetection: ChangeDetectionStrategy.OnPush,\n standalone: true,\n imports: [\n ReactiveFormsModule,\n DAFF_SELECT_COMPONENTS,\n DAFF_FORM_FIELD_COMPONENTS,\n ],\n})\nexport class DisabledSelectComponent {\n disabled = new UntypedFormControl({ value : '' , disabled: true });\n\n options = SELECT_EXAMPLE_ADDRESSES;\n}\n","<daff-form-field>\n <label daffFormLabel>Select an address</label>\n <daff-select [options]=\"options\" [formControl]=\"disabled\">\n <ng-template daffSelectOption let-option=\"option\"></ng-template>\n </daff-select>\n</daff-form-field>","import { NgIf } from '@angular/common';\nimport {\n ChangeDetectionStrategy,\n Component,\n} from '@angular/core';\nimport {\n FormControl,\n ReactiveFormsModule,\n Validators,\n} from '@angular/forms';\n\nimport { DAFF_FORM_FIELD_COMPONENTS } from '@daffodil/design';\nimport { DAFF_SELECT_COMPONENTS } from '@daffodil/design/select';\n\nimport { SELECT_EXAMPLE_ADDRESSES } from '../models/addresses';\n\n@Component({\n // eslint-disable-next-line @angular-eslint/component-selector\n selector: 'select-with-error',\n templateUrl: './select-with-error.component.html',\n changeDetection: ChangeDetectionStrategy.OnPush,\n standalone: true,\n imports: [\n NgIf,\n ReactiveFormsModule,\n DAFF_SELECT_COMPONENTS,\n DAFF_FORM_FIELD_COMPONENTS,\n ],\n})\nexport class SelectWithErrorComponent {\n control = new FormControl('', [Validators.required]);\n\n options = SELECT_EXAMPLE_ADDRESSES;\n}\n","<daff-form-field>\n <label daffFormLabel>Select an address</label>\n <daff-select [options]=\"options\" [formControl]=\"control\">\n <ng-template daffSelectOption let-option=\"option\">\n <div>{{option.name}}</div>\n <div>{{option.street}}</div>\n <div>{{option.city}}, {{option.state}} {{option.postcode}}</div>\n </ng-template>\n </daff-select>\n <daff-error-message *ngIf=\"control.invalid\">This field is required</daff-error-message>\n</daff-form-field>","import {\n ChangeDetectionStrategy,\n Component,\n} from '@angular/core';\nimport {\n FormControl,\n ReactiveFormsModule,\n} from '@angular/forms';\n\nimport { DAFF_FORM_FIELD_COMPONENTS } from '@daffodil/design';\nimport { DAFF_SELECT_COMPONENTS } from '@daffodil/design/select';\n\nimport { SELECT_EXAMPLE_ADDRESSES } from '../models/addresses';\n\n@Component({\n // eslint-disable-next-line @angular-eslint/component-selector\n selector: 'skeleton-select',\n templateUrl: './skeleton-select.component.html',\n changeDetection: ChangeDetectionStrategy.OnPush,\n standalone: true,\n imports: [\n ReactiveFormsModule,\n DAFF_SELECT_COMPONENTS,\n DAFF_FORM_FIELD_COMPONENTS,\n ],\n})\nexport class SkeletonSelectComponent {\n control = new FormControl();\n\n options = SELECT_EXAMPLE_ADDRESSES;\n}\n","<daff-form-field [skeleton]=\"true\">\n <label daffFormLabel>Select an address</label>\n <daff-select [options]=\"options\" [formControl]=\"control\">\n <ng-template daffSelectOption let-option=\"option\">\n </ng-template>\n </daff-select>\n</daff-form-field>","import { DefaultSelectComponent } from './default-select/default-select.component';\nimport { DisabledSelectComponent } from './disabled-select/disabled-select.component';\nimport { SelectWithErrorComponent } from './select-with-error/select-with-error.component';\nimport { SkeletonSelectComponent } from './skeleton-select/skeleton-select.component';\n\nexport const SELECT_EXAMPLES = [\n DefaultSelectComponent,\n DisabledSelectComponent,\n SkeletonSelectComponent,\n SelectWithErrorComponent,\n];\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}
@@ -4,44 +4,12 @@ import * as i4 from '@angular/cdk/portal';
4
4
  import { PortalModule } from '@angular/cdk/portal';
5
5
  import { DOCUMENT, NgTemplateOutlet } from '@angular/common';
6
6
  import * as i0 from '@angular/core';
7
- import { Optional, Directive, ElementRef, ContentChild, ViewChild, Input, HostBinding, Inject, Self, ChangeDetectionStrategy, ViewEncapsulation, Component } from '@angular/core';
7
+ import { Optional, Directive, ElementRef, booleanAttribute, ContentChild, ViewChild, Input, Inject, Self, ChangeDetectionStrategy, ViewEncapsulation, Component } from '@angular/core';
8
8
  import * as i1 from '@angular/forms';
9
- import { Subject, merge, of, map, takeUntil, delay } from 'rxjs';
9
+ import { Validators } from '@angular/forms';
10
+ import { Subject, merge, of, map, tap, takeUntil, delay } from 'rxjs';
10
11
  import * as i3 from '@daffodil/design';
11
- import { DaffFormFieldControl, DaffOpenableDirective, DaffErrorMessageComponent, DaffFormLabelDirective } from '@daffodil/design';
12
- import { trigger, state, style } from '@angular/animations';
13
-
14
- var DaffSelectAnimationState;
15
- (function (DaffSelectAnimationState) {
16
- DaffSelectAnimationState["OPEN"] = "open";
17
- DaffSelectAnimationState["CLOSED"] = "closed";
18
- })(DaffSelectAnimationState || (DaffSelectAnimationState = {}));
19
- ;
20
-
21
- const daffSelectAnimations = {
22
- openSelect: trigger('openSelect', [
23
- state(DaffSelectAnimationState.OPEN, style({
24
- height: '*',
25
- })),
26
- state(DaffSelectAnimationState.CLOSED, style({
27
- height: '0',
28
- })),
29
- ]),
30
- };
31
-
32
- /**
33
- * Turns a boolean into a string of 'open' or 'close'.
34
- *
35
- * @param open A boolean representing the open status of an select.
36
- */
37
- const getAnimationState = (open) => {
38
- if (open) {
39
- return DaffSelectAnimationState.OPEN;
40
- }
41
- else {
42
- return DaffSelectAnimationState.CLOSED;
43
- }
44
- };
12
+ import { DaffFormFieldControl, DaffOpenableDirective } from '@daffodil/design';
45
13
 
46
14
  /**
47
15
  * The directive provides the template for a list of options inside the select dropdown.
@@ -88,20 +56,25 @@ class DaffSelectComponent extends DaffFormFieldControl {
88
56
  }
89
57
  /** @docs-private */
90
58
  blur() {
91
- this.buttonElement?.nativeElement?.blur();
92
- this.emitState();
59
+ this.onTouched();
60
+ this.emitState(true);
93
61
  }
94
62
  /**
95
63
  * @docs-private
64
+ *
65
+ * Implemented as part of DaffFormFieldControl.
96
66
  */
97
- get isOpen() {
98
- return this.openDirective.open;
67
+ get required() {
68
+ return this.ngControl?.control?.hasValidator(Validators.required) ?? this._required;
69
+ }
70
+ set required(value) {
71
+ this._required = value;
99
72
  }
100
73
  /**
101
74
  * @docs-private
102
75
  */
103
- get disabledClass() {
104
- return this.disabled || this._disabled;
76
+ get isOpen() {
77
+ return this.openDirective.open;
105
78
  }
106
79
  constructor(cd, document, ngControl, overlay, openDirective, formField) {
107
80
  super(ngControl);
@@ -120,17 +93,14 @@ class DaffSelectComponent extends DaffFormFieldControl {
120
93
  this._destroyed = new Subject();
121
94
  this._value = null;
122
95
  this._highlighted = 0;
123
- this._animationFinishCallbackQueue = [];
124
96
  /**
125
97
  * @docs-private
98
+ *
99
+ * Implemented as part of DaffFormFieldControl.
126
100
  */
127
- this._disabled = false;
128
101
  this.disabled = false;
102
+ this._required = false;
129
103
  this.options = [];
130
- /**
131
- * @docs-private
132
- */
133
- this.class = true;
134
104
  /**
135
105
  * @docs-private
136
106
  *
@@ -141,6 +111,9 @@ class DaffSelectComponent extends DaffFormFieldControl {
141
111
  * The unique id of the select options. Defaults to an autogenerated value.
142
112
  */
143
113
  this.optionsId = 'daff-select-options' + '-' + ++daffSelectOtionsId;
114
+ if (!this.formField) {
115
+ throw new Error('DaffSelectComponent needs to be used with the DaffFormFieldComponent.');
116
+ }
144
117
  this.ariaLabelledBy = this.formField.id;
145
118
  this.openDirective.stateless = false;
146
119
  this.document.addEventListener('keydown', (event) => {
@@ -154,12 +127,6 @@ class DaffSelectComponent extends DaffFormFieldControl {
154
127
  this.ngControl.valueAccessor = this;
155
128
  }
156
129
  }
157
- /**
158
- * @docs-private
159
- */
160
- get animationState() {
161
- return this._animationState;
162
- }
163
130
  /**
164
131
  * @docs-private
165
132
  */
@@ -191,7 +158,7 @@ class DaffSelectComponent extends DaffFormFieldControl {
191
158
  }
192
159
  onChange(value) { }
193
160
  ;
194
- onTouched(value) { }
161
+ onTouched() { }
195
162
  ;
196
163
  /**
197
164
  * @docs-private
@@ -212,12 +179,6 @@ class DaffSelectComponent extends DaffFormFieldControl {
212
179
  registerOnTouched(fn) {
213
180
  this.onTouched = fn;
214
181
  }
215
- /**
216
- * @docs-private
217
- */
218
- setDisabledState(isDisabled) {
219
- this._disabled = isDisabled;
220
- }
221
182
  /**
222
183
  * @docs-private
223
184
  */
@@ -228,17 +189,7 @@ class DaffSelectComponent extends DaffFormFieldControl {
228
189
  * @docs-private
229
190
  */
230
191
  ngOnInit() {
231
- this.stateChanges = merge(this._stateChanges.asObservable(), this.ngControl ? this.ngControl.statusChanges : of(undefined)).pipe(map(() => this.state));
232
- this._animationState = getAnimationState(this.openDirective.open);
233
- }
234
- /**
235
- * @docs-private
236
- */
237
- animationFinished() {
238
- this._animationFinishCallbackQueue.forEach((cb) => {
239
- cb();
240
- });
241
- this._animationFinishCallbackQueue = [];
192
+ this.stateChanges = merge(this._stateChanges.asObservable(), this.ngControl ? this.ngControl.statusChanges : of(undefined)).pipe(map(() => this.state), tap((state) => this.disabled = state.disabled));
242
193
  }
243
194
  /**
244
195
  * Opens the options list.
@@ -248,21 +199,20 @@ class DaffSelectComponent extends DaffFormFieldControl {
248
199
  event?.stopPropagation();
249
200
  if (!this.openDirective.open) {
250
201
  this.openDirective.open = true;
251
- this._animationState = getAnimationState(this.openDirective.open);
252
202
  if (this._value) {
253
203
  this._highlighted = this.options.findIndex((v) => v === this._value);
254
204
  }
255
- // Get the width of the button element to use for the overlay
256
- const buttonWidth = this.buttonElement.nativeElement.getBoundingClientRect().width;
205
+ const formFieldEl = this.formField.elementRef.nativeElement;
206
+ const formFieldWidth = formFieldEl.getBoundingClientRect().width;
257
207
  this._overlay = this.overlay.create({
258
208
  hasBackdrop: true,
259
209
  backdropClass: 'cdk-overlay-transparent-backdrop',
260
210
  scrollStrategy: this.overlay.scrollStrategies.block(),
261
211
  disposeOnNavigation: true,
262
- width: `${buttonWidth}px`, // Set the exact width of the button element
212
+ width: `${formFieldWidth}px`,
263
213
  positionStrategy: this.overlay
264
214
  .position()
265
- .flexibleConnectedTo(this.buttonElement)
215
+ .flexibleConnectedTo(formFieldEl)
266
216
  .withPositions([
267
217
  {
268
218
  originX: 'start',
@@ -284,9 +234,7 @@ class DaffSelectComponent extends DaffFormFieldControl {
284
234
  this.focusOptionsList();
285
235
  });
286
236
  this._overlay.attach(this.optionsTemplatePortal);
287
- this._overlay.backdropClick().pipe(takeUntil(this._destroyed)).subscribe(() => {
288
- this.close();
289
- });
237
+ this._overlay.backdropClick().pipe(takeUntil(this._destroyed)).subscribe(() => this.close());
290
238
  this.cd.markForCheck();
291
239
  }
292
240
  }
@@ -298,14 +246,11 @@ class DaffSelectComponent extends DaffFormFieldControl {
298
246
  event?.stopPropagation();
299
247
  if (this.openDirective.open) {
300
248
  this.openDirective.open = false;
301
- this._animationState = getAnimationState(this.openDirective.open);
302
249
  this.cd.markForCheck();
303
250
  // do we actually have to dispose and recreate the overlay every time we want to close the dropdown?
304
- this._animationFinishCallbackQueue.push(() => {
305
- this._overlay?.dispose();
306
- this._overlay = null;
307
- this.focusButton();
308
- });
251
+ this._overlay?.dispose();
252
+ this._overlay = null;
253
+ this.focusButton();
309
254
  }
310
255
  }
311
256
  /**
@@ -321,12 +266,8 @@ class DaffSelectComponent extends DaffFormFieldControl {
321
266
  * Selects an option.
322
267
  */
323
268
  selectOption(option) {
324
- if (this.ngControl?.control) {
325
- this.ngControl.control.setValue(option);
326
- }
327
- else {
328
- this.writeValue(option);
329
- }
269
+ this._value = option;
270
+ this.onChange(this._value);
330
271
  this.close();
331
272
  }
332
273
  /**
@@ -356,30 +297,27 @@ class DaffSelectComponent extends DaffFormFieldControl {
356
297
  this._highlighted = this._highlighted > 0 ? this._highlighted - 1 : this.options.length - 1;
357
298
  (event?.target).children[this._highlighted].scrollIntoView();
358
299
  }
359
- /** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.11", ngImport: i0, type: DaffSelectComponent, deps: [{ token: i0.ChangeDetectorRef }, { token: DOCUMENT }, { token: i1.NgControl, optional: true, self: true }, { token: i2.Overlay }, { token: i3.DaffOpenableDirective }, { token: i3.DaffFormFieldComponent }], target: i0.ɵɵFactoryTarget.Component }); }
360
- /** @nocollapse */ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "19.2.11", type: DaffSelectComponent, isStandalone: true, selector: "daff-select", inputs: { disabled: "disabled", options: "options", optionsId: "optionsId" }, host: { properties: { "class.daff-select": "this.class", "class.disabled": "this.disabledClass", "attr.aria-labelledby": "this.ariaLabelledBy" } }, providers: [
361
- // eslint-disable-next-line @typescript-eslint/no-use-before-define
300
+ /** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.11", ngImport: i0, type: DaffSelectComponent, deps: [{ token: i0.ChangeDetectorRef }, { token: DOCUMENT }, { token: i1.NgControl, optional: true, self: true }, { token: i2.Overlay }, { token: i3.DaffOpenableDirective }, { token: i3.DaffFormFieldComponent, optional: true }], target: i0.ɵɵFactoryTarget.Component }); }
301
+ /** @nocollapse */ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "19.2.11", type: DaffSelectComponent, isStandalone: true, selector: "daff-select", inputs: { disabled: ["disabled", "disabled", booleanAttribute], required: ["required", "required", booleanAttribute], options: "options", optionsId: "optionsId" }, host: { properties: { "attr.aria-labelledby": "ariaLabelledBy" }, classAttribute: "daff-select" }, providers: [
362
302
  { provide: DaffFormFieldControl, useExisting: DaffSelectComponent },
363
- ], queries: [{ propertyName: "optionTemplate", first: true, predicate: DaffSelectOptionDirective, descendants: true }], viewQueries: [{ propertyName: "buttonElement", first: true, predicate: ["field"], descendants: true }, { propertyName: "optionsTemplatePortal", first: true, predicate: ["optionsTemplate"], descendants: true }, { propertyName: "optionsElement", first: true, predicate: ["optionsEl"], descendants: true, read: (ElementRef) }], usesInheritance: true, hostDirectives: [{ directive: i3.DaffOpenableDirective }], ngImport: i0, template: "<button #field class=\"daff-select__field\"\n type=\"button\"\n (click)=\"open($event)\"\n (focus)=\"focus()\"\n (blur)=\"blur()\"\n [disabled]=\"disabled || _disabled\"\n role=\"combobox\"\n aria-haspopup=\"listbox\"\n [attr.aria-expanded]=\"isOpen\"\n [attr.aria-controls]=\"optionsId\"\n (keydown.arrowdown)=\"open($event)\"\n (keydown.arrowup)=\"open($event)\"\n (keydown.alt.arrowup)=\"open($event)\"\n (keydown.alt.arrowdown)=\"open($event)\"\n (keydown.space)=\"open($event)\"\n (keydown.enter)=\"open($event)\">\n @if (value) {\n <ng-container\n [ngTemplateOutlet]=\"optionTemplate?.templateRef\"\n [ngTemplateOutletContext]=\"{option: value}\"><div></div>\n </ng-container>\n }\n</button>\n<ng-template cdkPortal #optionsTemplate=\"cdkPortal\">\n <div class=\"daff-select__options\" #optionsEl\n [id]=\"optionsId\"\n tabindex=\"0\"\n role=\"listbox\"\n [@openSelect]=\"animationState\"\n (@openSelect.done)=\"animationFinished()\"\n (keydown.enter)=\"selectHighlighted($event)\"\n (keydown.space)=\"selectHighlighted($event)\"\n (keydown.escape)=\"close($event)\"\n (keydown.arrowdown)=\"highlightNext($event)\"\n (keydown.arrowup)=\"highlightPrevious($event)\">\n @for (option of options; track $index; let i = $index) {\n <div class=\"daff-select__option\"\n [class.selected]=\"value === option\"\n [class.highlighted]=\"highlighted === i\"\n (click)=\"selectOption(option)\">\n <ng-container\n [ngTemplateOutlet]=\"optionTemplate?.templateRef\"\n [ngTemplateOutletContext]=\"{\n isSelected: value === option,\n isHighlighted: highlighted === i,\n option\n }\">\n </ng-container>\n </div>\n }\n </div>\n</ng-template>\n", styles: [".daff-select{display:inline-block;width:100%}.daff-select.daff-open .daff-select__field:after{top:56%;transform:translateY(-50%) rotate(225deg)}.daff-select.disabled .daff-select__field{cursor:not-allowed}.daff-select__field{cursor:pointer;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;appearance:none;background:none;border:none;font-size:1rem;line-height:1.25rem;min-height:3.5rem;margin:0;padding:1.5rem 1rem .5rem;text-align:left;width:100%;position:relative}.daff-select__field:after{content:\"\";position:absolute;top:48%;right:1rem;display:inline-block;border-right:2px solid currentColor;border-bottom:2px solid currentColor;width:.5rem;height:.5rem;transform:translateY(-50%) rotate(45deg);transition:transform .15s}.daff-select__options{width:100%}.daff-select__option{cursor:pointer;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;display:block;appearance:none;background:none;border:none;font-size:1rem;line-height:1.25rem;margin:0;padding:.5rem;text-align:left;width:100%}.daff-select__option:first-of-type{border-radius:.25rem .25rem 0 0}.daff-select__option:last-of-type{border-radius:0 0 .25rem .25rem}\n"], dependencies: [{ kind: "directive", type: NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "ngmodule", type: OverlayModule }, { kind: "ngmodule", type: PortalModule }, { kind: "directive", type: i4.CdkPortal, selector: "[cdkPortal]", exportAs: ["cdkPortal"] }], animations: [
364
- daffSelectAnimations.openSelect,
365
- ], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
303
+ ], queries: [{ propertyName: "optionTemplate", first: true, predicate: DaffSelectOptionDirective, descendants: true }], viewQueries: [{ propertyName: "buttonElement", first: true, predicate: ["field"], descendants: true }, { propertyName: "optionsTemplatePortal", first: true, predicate: ["optionsTemplate"], descendants: true }, { propertyName: "optionsElement", first: true, predicate: ["optionsEl"], descendants: true, read: (ElementRef) }], usesInheritance: true, hostDirectives: [{ directive: i3.DaffOpenableDirective }], ngImport: i0, template: "<button #field class=\"daff-select__field\"\n type=\"button\"\n (click)=\"open($event)\"\n (focus)=\"focus()\"\n [disabled]=\"disabled\"\n role=\"combobox\"\n aria-haspopup=\"listbox\"\n [attr.aria-expanded]=\"isOpen\"\n [attr.aria-controls]=\"optionsId\"\n (keydown.arrowdown)=\"open($event)\"\n (keydown.arrowup)=\"open($event)\"\n (keydown.alt.arrowup)=\"open($event)\"\n (keydown.alt.arrowdown)=\"open($event)\"\n (keydown.space)=\"open($event)\"\n (keydown.enter)=\"open($event)\">\n @if (value) {\n <ng-container\n [ngTemplateOutlet]=\"optionTemplate?.templateRef\"\n [ngTemplateOutletContext]=\"\n {\n option: value,\n isSelected: true,\n isHighlighted: true,\n }\n \"><div></div>\n </ng-container>\n }\n</button>\n<ng-template cdkPortal #optionsTemplate=\"cdkPortal\">\n <div class=\"daff-select__options\" #optionsEl\n [id]=\"optionsId\"\n tabindex=\"0\"\n role=\"listbox\"\n (blur)=\"blur()\"\n (keydown.enter)=\"selectHighlighted($event)\"\n (keydown.space)=\"selectHighlighted($event)\"\n (keydown.escape)=\"close($event)\"\n (keydown.arrowdown)=\"highlightNext($event)\"\n (keydown.arrowup)=\"highlightPrevious($event)\">\n @for (option of options; track $index; let i = $index) {\n <div class=\"daff-select__option\"\n [class.selected]=\"value === option\"\n [class.highlighted]=\"highlighted === i\"\n (click)=\"selectOption(option)\">\n <ng-container\n [ngTemplateOutlet]=\"optionTemplate?.templateRef\"\n [ngTemplateOutletContext]=\"{\n isSelected: value === option,\n isHighlighted: highlighted === i,\n option\n }\">\n </ng-container>\n </div>\n }\n </div>\n</ng-template>\n", styles: [".daff-select{display:inline-block;width:100%}.daff-select.daff-open .daff-select__field:after{top:56%;transform:translateY(-50%) rotate(225deg)}.daff-select__field{cursor:pointer;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;appearance:none;background:none;border:none;font-size:1rem;line-height:1.25rem;min-height:3.5rem;margin:0;outline:none;padding:1.5rem 0 .5rem;text-align:left;width:100%;position:relative}.daff-select__field[disabled]{cursor:not-allowed}.daff-select__field:after{content:\"\";position:absolute;top:48%;right:2px;display:inline-block;border-right:2px solid currentColor;border-bottom:2px solid currentColor;width:.5rem;height:.5rem;transform:translateY(-50%) rotate(45deg);transition:transform .15s}.daff-select__options{width:100%}.daff-select__option{cursor:pointer;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;display:block;appearance:none;background:none;border:none;font-size:1rem;line-height:1.25rem;margin:0;padding:.5rem;text-align:left;width:100%}.daff-select__option:first-of-type{border-radius:.25rem .25rem 0 0}.daff-select__option:last-of-type{border-radius:0 0 .25rem .25rem}\n"], dependencies: [{ kind: "directive", type: NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "ngmodule", type: OverlayModule }, { kind: "ngmodule", type: PortalModule }, { kind: "directive", type: i4.CdkPortal, selector: "[cdkPortal]", exportAs: ["cdkPortal"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
366
304
  }
367
305
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.11", ngImport: i0, type: DaffSelectComponent, decorators: [{
368
306
  type: Component,
369
- args: [{ selector: 'daff-select', encapsulation: ViewEncapsulation.None, changeDetection: ChangeDetectionStrategy.OnPush, animations: [
370
- daffSelectAnimations.openSelect,
371
- ], hostDirectives: [
307
+ args: [{ selector: 'daff-select', encapsulation: ViewEncapsulation.None, changeDetection: ChangeDetectionStrategy.OnPush, hostDirectives: [
372
308
  {
373
309
  directive: DaffOpenableDirective,
374
310
  },
375
- ], providers: [
376
- // eslint-disable-next-line @typescript-eslint/no-use-before-define
311
+ ], host: {
312
+ class: 'daff-select',
313
+ '[attr.aria-labelledby]': 'ariaLabelledBy',
314
+ }, providers: [
377
315
  { provide: DaffFormFieldControl, useExisting: DaffSelectComponent },
378
316
  ], imports: [
379
317
  NgTemplateOutlet,
380
318
  OverlayModule,
381
319
  PortalModule,
382
- ], template: "<button #field class=\"daff-select__field\"\n type=\"button\"\n (click)=\"open($event)\"\n (focus)=\"focus()\"\n (blur)=\"blur()\"\n [disabled]=\"disabled || _disabled\"\n role=\"combobox\"\n aria-haspopup=\"listbox\"\n [attr.aria-expanded]=\"isOpen\"\n [attr.aria-controls]=\"optionsId\"\n (keydown.arrowdown)=\"open($event)\"\n (keydown.arrowup)=\"open($event)\"\n (keydown.alt.arrowup)=\"open($event)\"\n (keydown.alt.arrowdown)=\"open($event)\"\n (keydown.space)=\"open($event)\"\n (keydown.enter)=\"open($event)\">\n @if (value) {\n <ng-container\n [ngTemplateOutlet]=\"optionTemplate?.templateRef\"\n [ngTemplateOutletContext]=\"{option: value}\"><div></div>\n </ng-container>\n }\n</button>\n<ng-template cdkPortal #optionsTemplate=\"cdkPortal\">\n <div class=\"daff-select__options\" #optionsEl\n [id]=\"optionsId\"\n tabindex=\"0\"\n role=\"listbox\"\n [@openSelect]=\"animationState\"\n (@openSelect.done)=\"animationFinished()\"\n (keydown.enter)=\"selectHighlighted($event)\"\n (keydown.space)=\"selectHighlighted($event)\"\n (keydown.escape)=\"close($event)\"\n (keydown.arrowdown)=\"highlightNext($event)\"\n (keydown.arrowup)=\"highlightPrevious($event)\">\n @for (option of options; track $index; let i = $index) {\n <div class=\"daff-select__option\"\n [class.selected]=\"value === option\"\n [class.highlighted]=\"highlighted === i\"\n (click)=\"selectOption(option)\">\n <ng-container\n [ngTemplateOutlet]=\"optionTemplate?.templateRef\"\n [ngTemplateOutletContext]=\"{\n isSelected: value === option,\n isHighlighted: highlighted === i,\n option\n }\">\n </ng-container>\n </div>\n }\n </div>\n</ng-template>\n", styles: [".daff-select{display:inline-block;width:100%}.daff-select.daff-open .daff-select__field:after{top:56%;transform:translateY(-50%) rotate(225deg)}.daff-select.disabled .daff-select__field{cursor:not-allowed}.daff-select__field{cursor:pointer;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;appearance:none;background:none;border:none;font-size:1rem;line-height:1.25rem;min-height:3.5rem;margin:0;padding:1.5rem 1rem .5rem;text-align:left;width:100%;position:relative}.daff-select__field:after{content:\"\";position:absolute;top:48%;right:1rem;display:inline-block;border-right:2px solid currentColor;border-bottom:2px solid currentColor;width:.5rem;height:.5rem;transform:translateY(-50%) rotate(45deg);transition:transform .15s}.daff-select__options{width:100%}.daff-select__option{cursor:pointer;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;display:block;appearance:none;background:none;border:none;font-size:1rem;line-height:1.25rem;margin:0;padding:.5rem;text-align:left;width:100%}.daff-select__option:first-of-type{border-radius:.25rem .25rem 0 0}.daff-select__option:last-of-type{border-radius:0 0 .25rem .25rem}\n"] }]
320
+ ], template: "<button #field class=\"daff-select__field\"\n type=\"button\"\n (click)=\"open($event)\"\n (focus)=\"focus()\"\n [disabled]=\"disabled\"\n role=\"combobox\"\n aria-haspopup=\"listbox\"\n [attr.aria-expanded]=\"isOpen\"\n [attr.aria-controls]=\"optionsId\"\n (keydown.arrowdown)=\"open($event)\"\n (keydown.arrowup)=\"open($event)\"\n (keydown.alt.arrowup)=\"open($event)\"\n (keydown.alt.arrowdown)=\"open($event)\"\n (keydown.space)=\"open($event)\"\n (keydown.enter)=\"open($event)\">\n @if (value) {\n <ng-container\n [ngTemplateOutlet]=\"optionTemplate?.templateRef\"\n [ngTemplateOutletContext]=\"\n {\n option: value,\n isSelected: true,\n isHighlighted: true,\n }\n \"><div></div>\n </ng-container>\n }\n</button>\n<ng-template cdkPortal #optionsTemplate=\"cdkPortal\">\n <div class=\"daff-select__options\" #optionsEl\n [id]=\"optionsId\"\n tabindex=\"0\"\n role=\"listbox\"\n (blur)=\"blur()\"\n (keydown.enter)=\"selectHighlighted($event)\"\n (keydown.space)=\"selectHighlighted($event)\"\n (keydown.escape)=\"close($event)\"\n (keydown.arrowdown)=\"highlightNext($event)\"\n (keydown.arrowup)=\"highlightPrevious($event)\">\n @for (option of options; track $index; let i = $index) {\n <div class=\"daff-select__option\"\n [class.selected]=\"value === option\"\n [class.highlighted]=\"highlighted === i\"\n (click)=\"selectOption(option)\">\n <ng-container\n [ngTemplateOutlet]=\"optionTemplate?.templateRef\"\n [ngTemplateOutletContext]=\"{\n isSelected: value === option,\n isHighlighted: highlighted === i,\n option\n }\">\n </ng-container>\n </div>\n }\n </div>\n</ng-template>\n", styles: [".daff-select{display:inline-block;width:100%}.daff-select.daff-open .daff-select__field:after{top:56%;transform:translateY(-50%) rotate(225deg)}.daff-select__field{cursor:pointer;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;appearance:none;background:none;border:none;font-size:1rem;line-height:1.25rem;min-height:3.5rem;margin:0;outline:none;padding:1.5rem 0 .5rem;text-align:left;width:100%;position:relative}.daff-select__field[disabled]{cursor:not-allowed}.daff-select__field:after{content:\"\";position:absolute;top:48%;right:2px;display:inline-block;border-right:2px solid currentColor;border-bottom:2px solid currentColor;width:.5rem;height:.5rem;transform:translateY(-50%) rotate(45deg);transition:transform .15s}.daff-select__options{width:100%}.daff-select__option{cursor:pointer;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;display:block;appearance:none;background:none;border:none;font-size:1rem;line-height:1.25rem;margin:0;padding:.5rem;text-align:left;width:100%}.daff-select__option:first-of-type{border-radius:.25rem .25rem 0 0}.daff-select__option:last-of-type{border-radius:0 0 .25rem .25rem}\n"] }]
383
321
  }], ctorParameters: () => [{ type: i0.ChangeDetectorRef }, { type: Document, decorators: [{
384
322
  type: Inject,
385
323
  args: [DOCUMENT]
@@ -387,19 +325,16 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.11", ngImpo
387
325
  type: Optional
388
326
  }, {
389
327
  type: Self
390
- }] }, { type: i2.Overlay }, { type: i3.DaffOpenableDirective }, { type: i3.DaffFormFieldComponent }], propDecorators: { disabled: [{
391
- type: Input
328
+ }] }, { type: i2.Overlay }, { type: i3.DaffOpenableDirective }, { type: i3.DaffFormFieldComponent, decorators: [{
329
+ type: Optional
330
+ }] }], propDecorators: { disabled: [{
331
+ type: Input,
332
+ args: [{ transform: booleanAttribute }]
333
+ }], required: [{
334
+ type: Input,
335
+ args: [{ transform: booleanAttribute }]
392
336
  }], options: [{
393
337
  type: Input
394
- }], class: [{
395
- type: HostBinding,
396
- args: ['class.daff-select']
397
- }], disabledClass: [{
398
- type: HostBinding,
399
- args: ['class.disabled']
400
- }], ariaLabelledBy: [{
401
- type: HostBinding,
402
- args: ['attr.aria-labelledby']
403
338
  }], optionsId: [{
404
339
  type: Input
405
340
  }], buttonElement: [{
@@ -419,8 +354,6 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.11", ngImpo
419
354
  const DAFF_SELECT_COMPONENTS = [
420
355
  DaffSelectComponent,
421
356
  DaffSelectOptionDirective,
422
- DaffErrorMessageComponent,
423
- DaffFormLabelDirective,
424
357
  ];
425
358
 
426
359
  /**