@ethlete/cdk 4.4.0 → 4.5.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (337) hide show
  1. package/CHANGELOG.md +12 -2
  2. package/esm2022/lib/components/accordion/components/accordion/accordion.component.mjs +3 -3
  3. package/esm2022/lib/components/accordion/components/accordion-group/accordion-group.component.mjs +3 -3
  4. package/esm2022/lib/components/accordion/partials/accordion-hint/accordion-hint.directive.mjs +3 -3
  5. package/esm2022/lib/components/accordion/partials/accordion-hint-wrapper/accordion-hint-wrapper.directive.mjs +3 -3
  6. package/esm2022/lib/components/accordion/partials/accordion-label/accordion-label.directive.mjs +3 -3
  7. package/esm2022/lib/components/accordion/partials/accordion-label-wrapper/accordion-label-wrapper.directive.mjs +3 -3
  8. package/esm2022/lib/components/bracket/components/bracket/bracket.component.mjs +3 -3
  9. package/esm2022/lib/components/bracket/directives/bracket-match/bracket-match.directive.mjs +3 -3
  10. package/esm2022/lib/components/bracket/directives/bracket-round/bracket-round.directive.mjs +3 -3
  11. package/esm2022/lib/components/bracket/partials/bracket-match/bracket-match.component.mjs +3 -3
  12. package/esm2022/lib/components/bracket/partials/bracket-round-header/bracket-round-header.component.mjs +3 -3
  13. package/esm2022/lib/components/button/components/button/button.component.mjs +3 -3
  14. package/esm2022/lib/components/button/components/query-button/query-button.component.mjs +3 -3
  15. package/esm2022/lib/components/button/directives/button/button.directive.mjs +3 -3
  16. package/esm2022/lib/components/button/directives/query-button/query-button.directive.mjs +3 -3
  17. package/esm2022/lib/components/filter/filter-overlay/components/filter-overlay-page-outlet/filter-overlay-page-outlet.component.mjs +3 -3
  18. package/esm2022/lib/components/filter/filter-overlay/directives/filter-overlay-back-or-close/filter-overlay-back-or-close.directive.mjs +3 -3
  19. package/esm2022/lib/components/filter/filter-overlay/directives/filter-overlay-link/filter-overlay-link.directive.mjs +3 -3
  20. package/esm2022/lib/components/filter/filter-overlay/directives/filter-overlay-reset/filter-overlay-reset.directive.mjs +3 -3
  21. package/esm2022/lib/components/filter/filter-overlay/directives/filter-overlay-submit/filter-overlay-submit.directive.mjs +3 -3
  22. package/esm2022/lib/components/filter/filter-overlay/services/filter-overlay.service.mjs +3 -3
  23. package/esm2022/lib/components/filter/rich-filter/components/rich-filter-host/rich-filter-host.component.mjs +3 -3
  24. package/esm2022/lib/components/filter/rich-filter/directives/rich-filter-button/rich-filter-button.directive.mjs +3 -3
  25. package/esm2022/lib/components/filter/rich-filter/directives/rich-filter-button-slot/rich-filter-button-slot.directive.mjs +3 -3
  26. package/esm2022/lib/components/filter/rich-filter/directives/rich-filter-content/rich-filter-content.directive.mjs +3 -3
  27. package/esm2022/lib/components/filter/rich-filter/directives/rich-filter-top/rich-filter-top.directive.mjs +3 -3
  28. package/esm2022/lib/components/forms/components/checkbox/components/checkbox/checkbox.component.mjs +3 -3
  29. package/esm2022/lib/components/forms/components/checkbox/components/checkbox-field/checkbox-field.component.mjs +3 -3
  30. package/esm2022/lib/components/forms/components/checkbox/components/checkbox-group/checkbox-group.component.mjs +3 -3
  31. package/esm2022/lib/components/forms/components/checkbox/directives/checkbox/checkbox.directive.mjs +3 -3
  32. package/esm2022/lib/components/forms/components/checkbox/directives/checkbox-field/checkbox-field.directive.mjs +6 -6
  33. package/esm2022/lib/components/forms/components/checkbox/directives/checkbox-group/checkbox-group.directive.mjs +3 -3
  34. package/esm2022/lib/components/forms/components/checkbox/directives/checkbox-group-control/checkbox-group-control.directive.mjs +3 -3
  35. package/esm2022/lib/components/forms/components/error/components/error/error.component.mjs +3 -3
  36. package/esm2022/lib/components/forms/components/input/components/date-input/date-input.component.mjs +5 -5
  37. package/esm2022/lib/components/forms/components/input/components/date-time-input/date-time-input.component.mjs +23 -0
  38. package/esm2022/lib/components/forms/components/input/components/date-time-input/public-api.mjs +2 -0
  39. package/esm2022/lib/components/forms/components/input/components/email-input/email-input.component.mjs +3 -3
  40. package/esm2022/lib/components/forms/components/input/components/input-field/input-field.component.mjs +3 -3
  41. package/esm2022/lib/components/forms/components/input/components/number-input/number-input.component.mjs +3 -3
  42. package/esm2022/lib/components/forms/components/input/components/password-input/password-input.component.mjs +3 -3
  43. package/esm2022/lib/components/forms/components/input/components/public-api.mjs +2 -1
  44. package/esm2022/lib/components/forms/components/input/components/search-input/search-input.component.mjs +3 -3
  45. package/esm2022/lib/components/forms/components/input/components/text-input/text-input.component.mjs +3 -3
  46. package/esm2022/lib/components/forms/components/input/components/textarea-input/textarea-input.component.mjs +5 -5
  47. package/esm2022/lib/components/forms/components/input/directives/autosize-textarea/autosize-textarea.directive.mjs +3 -3
  48. package/esm2022/lib/components/forms/components/input/directives/date-input/date-input.directive.mjs +10 -10
  49. package/esm2022/lib/components/forms/components/input/directives/date-time-input/date-time-input.directive.mjs +61 -0
  50. package/esm2022/lib/components/forms/components/input/directives/date-time-input/public-api.mjs +2 -0
  51. package/esm2022/lib/components/forms/components/input/directives/email-input/email-input.directive.mjs +3 -3
  52. package/esm2022/lib/components/forms/components/input/directives/number-input/number-input.directive.mjs +3 -3
  53. package/esm2022/lib/components/forms/components/input/directives/password-input/password-input.directive.mjs +3 -3
  54. package/esm2022/lib/components/forms/components/input/directives/public-api.mjs +3 -1
  55. package/esm2022/lib/components/forms/components/input/directives/search-input/search-input.directive.mjs +3 -3
  56. package/esm2022/lib/components/forms/components/input/directives/show-picker-trigger/public-api.mjs +2 -0
  57. package/esm2022/lib/components/forms/components/input/directives/show-picker-trigger/show-picker-trigger.directive.mjs +42 -0
  58. package/esm2022/lib/components/forms/components/input/directives/text-input/text-input.directive.mjs +3 -3
  59. package/esm2022/lib/components/forms/components/input/directives/textarea-input/textarea-input.directive.mjs +3 -3
  60. package/esm2022/lib/components/forms/components/input/input.imports.mjs +5 -2
  61. package/esm2022/lib/components/forms/components/input/partials/password-input-toggle/password-input-toggle.component.mjs +3 -3
  62. package/esm2022/lib/components/forms/components/input/partials/search-input-clear/search-input-clear.component.mjs +3 -3
  63. package/esm2022/lib/components/forms/components/label/components/label/label.component.mjs +3 -3
  64. package/esm2022/lib/components/forms/components/label/directives/label-suffix/label-suffix.directive.mjs +3 -3
  65. package/esm2022/lib/components/forms/components/radio/components/radio/radio.component.mjs +3 -3
  66. package/esm2022/lib/components/forms/components/radio/components/radio-field/radio-field.component.mjs +3 -3
  67. package/esm2022/lib/components/forms/components/radio/components/radio-group/radio-group.component.mjs +3 -3
  68. package/esm2022/lib/components/forms/components/radio/directives/radio/radio.directive.mjs +3 -3
  69. package/esm2022/lib/components/forms/components/radio/directives/radio-field/radio-field.directive.mjs +3 -3
  70. package/esm2022/lib/components/forms/components/radio/directives/radio-group/radio-group.directive.mjs +3 -3
  71. package/esm2022/lib/components/forms/components/segmented-button/components/segmented-button/segmented-button.component.mjs +3 -3
  72. package/esm2022/lib/components/forms/components/segmented-button/components/segmented-button-field/segmented-button-field.component.mjs +3 -3
  73. package/esm2022/lib/components/forms/components/segmented-button/components/segmented-button-group/segmented-button-group.component.mjs +3 -3
  74. package/esm2022/lib/components/forms/components/segmented-button/directives/segmented-button/segmented-button.directive.mjs +3 -3
  75. package/esm2022/lib/components/forms/components/segmented-button/directives/segmented-button-field/segmented-button-field.directive.mjs +3 -3
  76. package/esm2022/lib/components/forms/components/segmented-button/directives/segmented-button-group/segmented-button-group.directive.mjs +5 -5
  77. package/esm2022/lib/components/forms/components/select/components/combobox/components/combobox/combobox.component.mjs +3 -3
  78. package/esm2022/lib/components/forms/components/select/components/combobox/directives/combobox/combobox.directive.mjs +3 -3
  79. package/esm2022/lib/components/forms/components/select/components/combobox/directives/combobox-body-empty-template/combobox-body-empty-template.directive.mjs +3 -3
  80. package/esm2022/lib/components/forms/components/select/components/combobox/directives/combobox-body-error-template/combobox-body-error-template.directive.mjs +3 -3
  81. package/esm2022/lib/components/forms/components/select/components/combobox/directives/combobox-body-loading-template/combobox-body-loading-template.directive.mjs +3 -3
  82. package/esm2022/lib/components/forms/components/select/components/combobox/directives/combobox-body-more-items-hint-template/combobox-body-more-items-hint-template.directive.mjs +3 -3
  83. package/esm2022/lib/components/forms/components/select/components/combobox/directives/combobox-option-template/combobox-option-template.directive.mjs +3 -3
  84. package/esm2022/lib/components/forms/components/select/components/combobox/directives/combobox-selected-option-template/combobox-selected-option-template.directive.mjs +3 -3
  85. package/esm2022/lib/components/forms/components/select/components/combobox/partials/combobox-body/combobox-body.component.mjs +3 -3
  86. package/esm2022/lib/components/forms/components/select/components/combobox/partials/combobox-option/combobox-option.component.mjs +3 -3
  87. package/esm2022/lib/components/forms/components/select/components/native-select/components/native-select/native-select.component.mjs +3 -3
  88. package/esm2022/lib/components/forms/components/select/components/native-select/directives/native-select-input/native-select-input.directive.mjs +3 -3
  89. package/esm2022/lib/components/forms/components/select/components/native-select/directives/native-select-option/native-select-option.directive.mjs +3 -3
  90. package/esm2022/lib/components/forms/components/select/components/native-select/partials/native-select-option/native-select-option.component.mjs +3 -3
  91. package/esm2022/lib/components/forms/components/select/components/select/components/select/select.component.mjs +3 -3
  92. package/esm2022/lib/components/forms/components/select/components/select/directives/select/select.directive.mjs +3 -3
  93. package/esm2022/lib/components/forms/components/select/components/select/directives/select-body/select-body.directive.mjs +3 -3
  94. package/esm2022/lib/components/forms/components/select/components/select/directives/select-option/select-option.directive.mjs +3 -3
  95. package/esm2022/lib/components/forms/components/select/components/select/partials/select-body/select-body.component.mjs +3 -3
  96. package/esm2022/lib/components/forms/components/select/components/select/partials/select-option/select-option.component.mjs +3 -3
  97. package/esm2022/lib/components/forms/components/select/components/select-field/select-field.component.mjs +3 -3
  98. package/esm2022/lib/components/forms/components/select/directives/select-field/select-field.directive.mjs +3 -3
  99. package/esm2022/lib/components/forms/components/selection-list/components/selection-list-field/selection-list-field.component.mjs +3 -3
  100. package/esm2022/lib/components/forms/components/selection-list/components/selection-list-option/selection-list-option.component.mjs +3 -3
  101. package/esm2022/lib/components/forms/components/selection-list/directives/selection-list-field/selection-list-field.directive.mjs +3 -3
  102. package/esm2022/lib/components/forms/components/selection-list/directives/selection-list-option/selection-list-option.directive.mjs +3 -3
  103. package/esm2022/lib/components/forms/components/slide-toggle/components/slide-toggle/slide-toggle.component.mjs +3 -3
  104. package/esm2022/lib/components/forms/components/slide-toggle/components/slide-toggle-field/slide-toggle-field.component.mjs +3 -3
  105. package/esm2022/lib/components/forms/components/slide-toggle/directives/slide-toggle/slide-toggle.directive.mjs +3 -3
  106. package/esm2022/lib/components/forms/components/slider/components/slider/slider.component.mjs +3 -3
  107. package/esm2022/lib/components/forms/components/slider/components/slider-field/slider-field.component.mjs +3 -3
  108. package/esm2022/lib/components/forms/directives/dynamic-form-field/dynamic-form-field.directive.mjs +3 -3
  109. package/esm2022/lib/components/forms/directives/dynamic-form-group/dynamic-form-group.directive.mjs +3 -3
  110. package/esm2022/lib/components/forms/directives/expose-input-vars/expose-input-vars.directive.mjs +3 -3
  111. package/esm2022/lib/components/forms/directives/if-input-empty/if-input-empty.directive.mjs +3 -3
  112. package/esm2022/lib/components/forms/directives/if-input-filled/if-input-filled.directive.mjs +3 -3
  113. package/esm2022/lib/components/forms/directives/input/input.directive.mjs +3 -3
  114. package/esm2022/lib/components/forms/directives/input-prefix/input-prefix.directive.mjs +3 -3
  115. package/esm2022/lib/components/forms/directives/input-suffix/input-suffix.directive.mjs +3 -3
  116. package/esm2022/lib/components/forms/directives/native-input-ref/native-input-ref.directive.mjs +3 -3
  117. package/esm2022/lib/components/forms/directives/static-form-field/static-form-field.directive.mjs +3 -3
  118. package/esm2022/lib/components/forms/directives/static-form-group/static-form-group.directive.mjs +3 -3
  119. package/esm2022/lib/components/forms/directives/writeable-input/writeable-input.directive.mjs +3 -3
  120. package/esm2022/lib/components/forms/index.mjs +2 -0
  121. package/esm2022/lib/components/forms/services/default-validator-errors.service.mjs +3 -3
  122. package/esm2022/lib/components/forms/services/form-field-state.service.mjs +3 -3
  123. package/esm2022/lib/components/forms/services/form-group-state.service.mjs +3 -3
  124. package/esm2022/lib/components/forms/services/input-state.service.mjs +3 -3
  125. package/esm2022/lib/components/forms/utils/decorated-form-field.base.mjs +3 -3
  126. package/esm2022/lib/components/forms/utils/decorated-input.base.mjs +3 -3
  127. package/esm2022/lib/components/forms/utils/input.base.mjs +3 -3
  128. package/esm2022/lib/components/icons/chevron-icon/chevron-icon.component.mjs +3 -3
  129. package/esm2022/lib/components/masonry/components/masonry/masonry.component.mjs +3 -3
  130. package/esm2022/lib/components/masonry/partials/masonry-item/masonry-item.component.mjs +3 -3
  131. package/esm2022/lib/components/overlay/components/bottom-sheet/components/bottom-sheet-container/bottom-sheet-container.component.mjs +3 -3
  132. package/esm2022/lib/components/overlay/components/bottom-sheet/partials/bottom-sheet-container-base/bottom-sheet-container-base.component.mjs +3 -3
  133. package/esm2022/lib/components/overlay/components/bottom-sheet/partials/bottom-sheet-drag-handle/bottom-sheet-drag-handle.component.mjs +3 -3
  134. package/esm2022/lib/components/overlay/components/bottom-sheet/partials/bottom-sheet-title/bottom-sheet-title.directive.mjs +3 -3
  135. package/esm2022/lib/components/overlay/components/bottom-sheet/services/bottom-sheet-base.service.mjs +3 -3
  136. package/esm2022/lib/components/overlay/components/bottom-sheet/services/bottom-sheet-swipe-handler.service.mjs +3 -3
  137. package/esm2022/lib/components/overlay/components/bottom-sheet/services/bottom-sheet.service.mjs +3 -3
  138. package/esm2022/lib/components/overlay/components/dialog/components/dialog-container/dialog-container.component.mjs +3 -3
  139. package/esm2022/lib/components/overlay/components/dialog/partials/dialog-close/dialog-close.directive.mjs +3 -3
  140. package/esm2022/lib/components/overlay/components/dialog/partials/dialog-container-base/dialog-container-base.component.mjs +3 -3
  141. package/esm2022/lib/components/overlay/components/dialog/partials/dialog-title/dialog-title.directive.mjs +3 -3
  142. package/esm2022/lib/components/overlay/components/dialog/services/dialog-base.service.mjs +3 -3
  143. package/esm2022/lib/components/overlay/components/dialog/services/dialog.service.mjs +3 -3
  144. package/esm2022/lib/components/overlay/components/menu/components/index.mjs +2 -0
  145. package/esm2022/lib/components/overlay/components/menu/components/menu/menu.component.mjs +168 -0
  146. package/esm2022/lib/components/overlay/components/menu/components/menu/public-api.mjs +2 -0
  147. package/esm2022/lib/components/overlay/components/menu/components/menu-checkbox-item/menu-checkbox-item.component.mjs +68 -0
  148. package/esm2022/lib/components/overlay/components/menu/components/menu-checkbox-item/public-api.mjs +2 -0
  149. package/esm2022/lib/components/overlay/components/menu/components/menu-container/menu-container.component.mjs +47 -0
  150. package/esm2022/lib/components/overlay/components/menu/components/menu-container/public-api.mjs +2 -0
  151. package/esm2022/lib/components/overlay/components/menu/components/menu-radio-item/menu-radio-item.component.mjs +61 -0
  152. package/esm2022/lib/components/overlay/components/menu/components/menu-radio-item/public-api.mjs +2 -0
  153. package/esm2022/lib/components/overlay/components/menu/components/public-api.mjs +5 -0
  154. package/esm2022/lib/components/overlay/components/menu/directives/index.mjs +2 -0
  155. package/esm2022/lib/components/overlay/components/menu/directives/menu-checkbox-group/menu-checkbox-group.directive.mjs +31 -0
  156. package/esm2022/lib/components/overlay/components/menu/directives/menu-checkbox-group/public-api.mjs +2 -0
  157. package/esm2022/lib/components/overlay/components/menu/directives/menu-group/index.mjs +2 -0
  158. package/esm2022/lib/components/overlay/components/menu/directives/menu-group/menu-group.directive.mjs +43 -0
  159. package/esm2022/lib/components/overlay/components/menu/directives/menu-group/public-api.mjs +2 -0
  160. package/esm2022/lib/components/overlay/components/menu/directives/menu-group-title/index.mjs +2 -0
  161. package/esm2022/lib/components/overlay/components/menu/directives/menu-group-title/menu-group-title.directive.mjs +41 -0
  162. package/esm2022/lib/components/overlay/components/menu/directives/menu-group-title/public-api.mjs +2 -0
  163. package/esm2022/lib/components/overlay/components/menu/directives/menu-item/menu-item.directive.mjs +97 -0
  164. package/esm2022/lib/components/overlay/components/menu/directives/menu-item/public-api.mjs +2 -0
  165. package/esm2022/lib/components/overlay/components/menu/directives/menu-radio-group/menu-radio-group.directive.mjs +42 -0
  166. package/esm2022/lib/components/overlay/components/menu/directives/menu-radio-group/public-api.mjs +2 -0
  167. package/esm2022/lib/components/overlay/components/menu/directives/menu-trigger/index.mjs +2 -0
  168. package/esm2022/lib/components/overlay/components/menu/directives/menu-trigger/menu-trigger.directive.mjs +145 -0
  169. package/esm2022/lib/components/overlay/components/menu/directives/menu-trigger/public-api.mjs +2 -0
  170. package/esm2022/lib/components/overlay/components/menu/directives/public-api.mjs +7 -0
  171. package/esm2022/lib/components/overlay/components/menu/menu.imports.mjs +14 -0
  172. package/esm2022/lib/components/overlay/components/menu/public-api.mjs +4 -17
  173. package/esm2022/lib/components/overlay/components/menu-deprecated/context-menu-trigger.mjs +166 -0
  174. package/esm2022/lib/components/overlay/components/menu-deprecated/menu-aim.mjs +140 -0
  175. package/esm2022/lib/components/overlay/components/menu-deprecated/menu-bar.mjs +116 -0
  176. package/esm2022/lib/components/overlay/components/menu-deprecated/menu-base.mjs +176 -0
  177. package/esm2022/lib/components/overlay/components/menu-deprecated/menu-errors.mjs +7 -0
  178. package/esm2022/lib/components/overlay/components/menu-deprecated/menu-group.mjs +29 -0
  179. package/esm2022/lib/components/overlay/components/menu-deprecated/menu-interface.mjs +3 -0
  180. package/esm2022/lib/components/overlay/components/menu-deprecated/menu-item-checkbox.mjs +42 -0
  181. package/esm2022/lib/components/overlay/components/menu-deprecated/menu-item-radio.mjs +59 -0
  182. package/esm2022/lib/components/overlay/components/menu-deprecated/menu-item-selectable.mjs +38 -0
  183. package/esm2022/lib/components/overlay/components/menu-deprecated/menu-item.mjs +216 -0
  184. package/esm2022/lib/components/overlay/components/menu-deprecated/menu-module.mjs +58 -0
  185. package/esm2022/lib/components/overlay/components/menu-deprecated/menu-stack.mjs +104 -0
  186. package/esm2022/lib/components/overlay/components/menu-deprecated/menu-trigger-base.mjs +80 -0
  187. package/esm2022/lib/components/overlay/components/menu-deprecated/menu-trigger.mjs +243 -0
  188. package/esm2022/lib/components/overlay/components/menu-deprecated/menu.mjs +119 -0
  189. package/esm2022/lib/components/overlay/components/menu-deprecated/pointer-focus-tracker.mjs +29 -0
  190. package/esm2022/lib/components/overlay/components/menu-deprecated/public-api.mjs +17 -0
  191. package/esm2022/lib/components/overlay/components/overlay/components/overlay-container/overlay-container.component.mjs +3 -3
  192. package/esm2022/lib/components/overlay/components/overlay/partials/overlay-body/overlay-body.component.mjs +3 -3
  193. package/esm2022/lib/components/overlay/components/overlay/partials/overlay-close/overlay-close.directive.mjs +3 -3
  194. package/esm2022/lib/components/overlay/components/overlay/partials/overlay-footer/overlay-footer.directive.mjs +3 -3
  195. package/esm2022/lib/components/overlay/components/overlay/partials/overlay-header/overlay-header.directive.mjs +3 -3
  196. package/esm2022/lib/components/overlay/components/overlay/partials/overlay-title/overlay-title.directive.mjs +3 -3
  197. package/esm2022/lib/components/overlay/components/overlay/services/overlay.service.mjs +3 -3
  198. package/esm2022/lib/components/overlay/components/public-api.mjs +2 -1
  199. package/esm2022/lib/components/overlay/components/toggletip/components/toggletip/toggletip.component.mjs +3 -3
  200. package/esm2022/lib/components/overlay/components/toggletip/directives/toggletip/toggletip.directive.mjs +3 -3
  201. package/esm2022/lib/components/overlay/components/tooltip/components/tooltip/tooltip.component.mjs +3 -3
  202. package/esm2022/lib/components/overlay/components/tooltip/directives/tooltip/tooltip.directive.mjs +3 -3
  203. package/esm2022/lib/components/overlay/directives/dynamic-overlay-title/dynamic-overlay-title.directive.mjs +3 -3
  204. package/esm2022/lib/components/overlay/directives/overlay-close-auto-blocker/overlay-close-auto-blocker.directive.mjs +3 -3
  205. package/esm2022/lib/components/overlay/services/dynamic-overlay.service.mjs +3 -3
  206. package/esm2022/lib/components/pagination/components/pagination/pagination.component.mjs +3 -3
  207. package/esm2022/lib/components/pagination/partials/pagination-link/pagination-link.directive.mjs +3 -3
  208. package/esm2022/lib/components/pagination/services/pagination-head.service.mjs +3 -3
  209. package/esm2022/lib/components/picture/picture-data.directive.mjs +3 -3
  210. package/esm2022/lib/components/picture/picture.component.mjs +3 -3
  211. package/esm2022/lib/components/picture/pipes/normalize-source/normalize-source.pipe.mjs +3 -3
  212. package/esm2022/lib/components/progress-spinner/progress-spinner.component.mjs +3 -3
  213. package/esm2022/lib/components/query-error/components/query-error/query-error.component.mjs +3 -3
  214. package/esm2022/lib/components/query-error/directives/query-error/query-error.directive.mjs +3 -3
  215. package/esm2022/lib/components/scrollable/components/scrollable/scrollable.component.mjs +3 -3
  216. package/esm2022/lib/components/scrollable/directives/scrollable-ignore-child/scrollable-ignore-child.directive.mjs +3 -3
  217. package/esm2022/lib/components/scrollable/directives/scrollable-is-active-child/scrollable-is-active-child.directive.mjs +3 -3
  218. package/esm2022/lib/components/skeleton/components/skeleton/skeleton.component.mjs +3 -3
  219. package/esm2022/lib/components/skeleton/partials/skeleton-item/skeleton-item.component.mjs +3 -3
  220. package/esm2022/lib/components/sort/components/sort-header/sort-header.component.mjs +3 -3
  221. package/esm2022/lib/components/sort/partials/sort/sort.directive.mjs +3 -3
  222. package/esm2022/lib/components/sort/services/sort-header-intl.mjs +3 -3
  223. package/esm2022/lib/components/table/components/table/table.component.mjs +3 -3
  224. package/esm2022/lib/components/table/partials/cells/cell/cell.directive.mjs +3 -3
  225. package/esm2022/lib/components/table/partials/cells/cell-def/cell-def.directive.mjs +3 -3
  226. package/esm2022/lib/components/table/partials/cells/column-def/column-def.directive.mjs +3 -3
  227. package/esm2022/lib/components/table/partials/cells/footer-cell/footer-cell.directive.mjs +3 -3
  228. package/esm2022/lib/components/table/partials/cells/footer-cell-def/footer-cell-def.directive.mjs +3 -3
  229. package/esm2022/lib/components/table/partials/cells/header-cell/header-cell.directive.mjs +3 -3
  230. package/esm2022/lib/components/table/partials/cells/header-cell-def/header-cell-def.directive.mjs +3 -3
  231. package/esm2022/lib/components/table/partials/cells/text-column/text-column.component.mjs +3 -3
  232. package/esm2022/lib/components/table/partials/rows/footer-row/footer-row.component.mjs +3 -3
  233. package/esm2022/lib/components/table/partials/rows/footer-row-def/footer-row-def.directive.mjs +3 -3
  234. package/esm2022/lib/components/table/partials/rows/header-row/header-row.component.mjs +3 -3
  235. package/esm2022/lib/components/table/partials/rows/header-row-def/header-row-def.directive.mjs +3 -3
  236. package/esm2022/lib/components/table/partials/rows/no-data-row/no-data-row.directive.mjs +3 -3
  237. package/esm2022/lib/components/table/partials/rows/recycle-rows/recycle-rows.directive.mjs +3 -3
  238. package/esm2022/lib/components/table/partials/rows/row/row.component.mjs +3 -3
  239. package/esm2022/lib/components/table/partials/rows/row-def/row-def.directive.mjs +3 -3
  240. package/esm2022/lib/components/table/partials/table-busy/table-busy.directive.mjs +3 -3
  241. package/esm2022/lib/components/table/partials/table-busy-outlet/table-busy-outlet.directive.mjs +3 -3
  242. package/esm2022/lib/components/tabs/components/inline-tabs/inline-tabs.component.mjs +3 -3
  243. package/esm2022/lib/components/tabs/components/nav-tabs/nav-tabs.component.mjs +3 -3
  244. package/esm2022/lib/components/tabs/partials/inline-tabs/inline-tab/inline-tab.component.mjs +3 -3
  245. package/esm2022/lib/components/tabs/partials/inline-tabs/inline-tab-body/inline-tab-body.component.mjs +3 -3
  246. package/esm2022/lib/components/tabs/partials/inline-tabs/inline-tab-body-host/inline-tab-body-host.directive.mjs +3 -3
  247. package/esm2022/lib/components/tabs/partials/inline-tabs/inline-tab-content/inline-tab-content.directive.mjs +3 -3
  248. package/esm2022/lib/components/tabs/partials/inline-tabs/inline-tab-header/inline-tab-header.component.mjs +3 -3
  249. package/esm2022/lib/components/tabs/partials/inline-tabs/inline-tab-label/inline-tab-label.directive.mjs +3 -3
  250. package/esm2022/lib/components/tabs/partials/inline-tabs/inline-tab-label-wrapper/inline-tab-label-wrapper.directive.mjs +3 -3
  251. package/esm2022/lib/components/tabs/partials/nav-tabs/nav-tab-link/nav-tab-link.directive.mjs +3 -3
  252. package/esm2022/lib/components/tabs/partials/nav-tabs/nav-tabs-outlet/nav-tabs-outlet.component.mjs +3 -3
  253. package/esm2022/lib/components/tabs/utils/active-tab-underline.util.mjs +3 -3
  254. package/esm2022/lib/components/tabs/utils/paginated-tab-header.directive.mjs +3 -3
  255. package/esm2022/lib/services/swipe-handler.service.mjs +3 -3
  256. package/fesm2022/ethlete-cdk.mjs +8879 -8050
  257. package/fesm2022/ethlete-cdk.mjs.map +1 -1
  258. package/lib/components/forms/components/checkbox/directives/checkbox-field/checkbox-field.directive.d.ts +2 -2
  259. package/lib/components/forms/components/input/components/date-input/date-input.component.d.ts +1 -1
  260. package/lib/components/forms/components/input/components/date-time-input/date-time-input.component.d.ts +10 -0
  261. package/lib/components/forms/components/input/components/date-time-input/public-api.d.ts +1 -0
  262. package/lib/components/forms/components/input/components/public-api.d.ts +1 -0
  263. package/lib/components/forms/components/input/components/textarea-input/textarea-input.component.d.ts +1 -1
  264. package/lib/components/forms/components/input/directives/date-input/date-input.directive.d.ts +1 -2
  265. package/lib/components/forms/components/input/directives/date-time-input/date-time-input.directive.d.ts +20 -0
  266. package/lib/components/forms/components/input/directives/date-time-input/public-api.d.ts +1 -0
  267. package/lib/components/forms/components/input/directives/public-api.d.ts +2 -0
  268. package/lib/components/forms/components/input/directives/show-picker-trigger/public-api.d.ts +1 -0
  269. package/lib/components/forms/components/input/directives/show-picker-trigger/show-picker-trigger.directive.d.ts +10 -0
  270. package/lib/components/forms/components/input/input.imports.d.ts +3 -2
  271. package/lib/components/forms/index.d.ts +1 -0
  272. package/lib/components/overlay/components/menu/components/index.d.ts +1 -0
  273. package/lib/components/overlay/components/menu/components/menu/menu.component.d.ts +35 -0
  274. package/lib/components/overlay/components/menu/components/menu/public-api.d.ts +1 -0
  275. package/lib/components/overlay/components/menu/components/menu-checkbox-item/menu-checkbox-item.component.d.ts +23 -0
  276. package/lib/components/overlay/components/menu/components/menu-checkbox-item/public-api.d.ts +1 -0
  277. package/lib/components/overlay/components/menu/components/menu-container/menu-container.component.d.ts +20 -0
  278. package/lib/components/overlay/components/menu/components/menu-container/public-api.d.ts +1 -0
  279. package/lib/components/overlay/components/menu/components/menu-radio-item/menu-radio-item.component.d.ts +21 -0
  280. package/lib/components/overlay/components/menu/components/menu-radio-item/public-api.d.ts +1 -0
  281. package/lib/components/overlay/components/menu/components/public-api.d.ts +4 -0
  282. package/lib/components/overlay/components/menu/directives/index.d.ts +1 -0
  283. package/lib/components/overlay/components/menu/directives/menu-checkbox-group/menu-checkbox-group.directive.d.ts +9 -0
  284. package/lib/components/overlay/components/menu/directives/menu-checkbox-group/public-api.d.ts +1 -0
  285. package/lib/components/overlay/components/menu/directives/menu-group/index.d.ts +1 -0
  286. package/lib/components/overlay/components/menu/directives/menu-group/menu-group.directive.d.ts +15 -0
  287. package/lib/components/overlay/components/menu/directives/menu-group/public-api.d.ts +1 -0
  288. package/lib/components/overlay/components/menu/directives/menu-group-title/index.d.ts +1 -0
  289. package/lib/components/overlay/components/menu/directives/menu-group-title/menu-group-title.directive.d.ts +11 -0
  290. package/lib/components/overlay/components/menu/directives/menu-group-title/public-api.d.ts +1 -0
  291. package/lib/components/overlay/components/menu/directives/menu-item/menu-item.directive.d.ts +32 -0
  292. package/lib/components/overlay/components/menu/directives/menu-item/public-api.d.ts +1 -0
  293. package/lib/components/overlay/components/menu/directives/menu-radio-group/menu-radio-group.directive.d.ts +12 -0
  294. package/lib/components/overlay/components/menu/directives/menu-radio-group/public-api.d.ts +1 -0
  295. package/lib/components/overlay/components/menu/directives/menu-trigger/index.d.ts +1 -0
  296. package/lib/components/overlay/components/menu/directives/menu-trigger/menu-trigger.directive.d.ts +39 -0
  297. package/lib/components/overlay/components/menu/directives/menu-trigger/public-api.d.ts +1 -0
  298. package/lib/components/overlay/components/menu/directives/public-api.d.ts +6 -0
  299. package/lib/components/overlay/components/menu/menu.imports.d.ts +3 -0
  300. package/lib/components/overlay/components/menu/public-api.d.ts +3 -16
  301. package/lib/components/overlay/components/{menu → menu-deprecated}/context-menu-trigger.d.ts +3 -0
  302. package/lib/components/overlay/components/{menu → menu-deprecated}/menu-bar.d.ts +3 -0
  303. package/lib/components/overlay/components/{menu → menu-deprecated}/menu-base.d.ts +3 -0
  304. package/lib/components/overlay/components/{menu → menu-deprecated}/menu-group.d.ts +3 -0
  305. package/lib/components/overlay/components/{menu → menu-deprecated}/menu-item-checkbox.d.ts +3 -0
  306. package/lib/components/overlay/components/{menu → menu-deprecated}/menu-item-radio.d.ts +3 -0
  307. package/lib/components/overlay/components/{menu → menu-deprecated}/menu-item-selectable.d.ts +3 -0
  308. package/lib/components/overlay/components/{menu → menu-deprecated}/menu-item.d.ts +3 -0
  309. package/lib/components/overlay/components/{menu → menu-deprecated}/menu-module.d.ts +3 -0
  310. package/lib/components/overlay/components/{menu → menu-deprecated}/menu-stack.d.ts +3 -0
  311. package/lib/components/overlay/components/{menu → menu-deprecated}/menu-trigger-base.d.ts +3 -0
  312. package/lib/components/overlay/components/{menu → menu-deprecated}/menu-trigger.d.ts +3 -0
  313. package/lib/components/overlay/components/{menu → menu-deprecated}/menu.d.ts +3 -0
  314. package/lib/components/overlay/components/{menu → menu-deprecated}/pointer-focus-tracker.d.ts +3 -0
  315. package/lib/components/overlay/components/menu-deprecated/public-api.d.ts +16 -0
  316. package/lib/components/overlay/components/public-api.d.ts +1 -0
  317. package/package.json +8 -8
  318. package/esm2022/lib/components/overlay/components/menu/context-menu-trigger.mjs +0 -163
  319. package/esm2022/lib/components/overlay/components/menu/menu-aim.mjs +0 -140
  320. package/esm2022/lib/components/overlay/components/menu/menu-bar.mjs +0 -113
  321. package/esm2022/lib/components/overlay/components/menu/menu-base.mjs +0 -173
  322. package/esm2022/lib/components/overlay/components/menu/menu-errors.mjs +0 -7
  323. package/esm2022/lib/components/overlay/components/menu/menu-group.mjs +0 -26
  324. package/esm2022/lib/components/overlay/components/menu/menu-interface.mjs +0 -3
  325. package/esm2022/lib/components/overlay/components/menu/menu-item-checkbox.mjs +0 -39
  326. package/esm2022/lib/components/overlay/components/menu/menu-item-radio.mjs +0 -56
  327. package/esm2022/lib/components/overlay/components/menu/menu-item-selectable.mjs +0 -35
  328. package/esm2022/lib/components/overlay/components/menu/menu-item.mjs +0 -213
  329. package/esm2022/lib/components/overlay/components/menu/menu-module.mjs +0 -52
  330. package/esm2022/lib/components/overlay/components/menu/menu-stack.mjs +0 -101
  331. package/esm2022/lib/components/overlay/components/menu/menu-trigger-base.mjs +0 -77
  332. package/esm2022/lib/components/overlay/components/menu/menu-trigger.mjs +0 -240
  333. package/esm2022/lib/components/overlay/components/menu/menu.mjs +0 -116
  334. package/esm2022/lib/components/overlay/components/menu/pointer-focus-tracker.mjs +0 -26
  335. /package/lib/components/overlay/components/{menu → menu-deprecated}/menu-aim.d.ts +0 -0
  336. /package/lib/components/overlay/components/{menu → menu-deprecated}/menu-errors.d.ts +0 -0
  337. /package/lib/components/overlay/components/{menu → menu-deprecated}/menu-interface.d.ts +0 -0
@@ -0,0 +1,168 @@
1
+ import { DOWN_ARROW, END, HOME, LEFT_ARROW, RIGHT_ARROW, TAB, UP_ARROW } from '@angular/cdk/keycodes';
2
+ import { ChangeDetectionStrategy, Component, ContentChildren, ElementRef, InjectionToken, Input, ViewEncapsulation, booleanAttribute, effect, inject, signal, } from '@angular/core';
3
+ import { takeUntilDestroyed } from '@angular/core/rxjs-interop';
4
+ import { TypedQueryList, signalHostAttributes } from '@ethlete/core';
5
+ import { fromEvent, tap } from 'rxjs';
6
+ import { ScrollableComponent } from '../../../../../scrollable';
7
+ import { MENU_ITEM_TOKEN, MENU_TRIGGER_TOKEN } from '../../directives';
8
+ import * as i0 from "@angular/core";
9
+ export const MENU = new InjectionToken('ET_MENU');
10
+ let uniqueId = 0;
11
+ export class MenuComponent {
12
+ set __id(value) {
13
+ this.id.set(value);
14
+ }
15
+ set __renderScrollableMasks(v) {
16
+ this.renderScrollableMasks.set(v);
17
+ }
18
+ set __renderScrollableButtons(v) {
19
+ this.renderScrollableButtons.set(v);
20
+ }
21
+ set _scrollableClass(v) {
22
+ this.scrollableClass.set(v);
23
+ }
24
+ set __menuItemList(value) {
25
+ this._menuItemList.set(value);
26
+ }
27
+ set __orientation(value) {
28
+ this.orientation.set(value);
29
+ }
30
+ constructor() {
31
+ this._elementRef = inject(ElementRef);
32
+ this._trigger = inject(MENU_TRIGGER_TOKEN);
33
+ this.id = signal(`et-menu-${uniqueId++}`);
34
+ this.renderScrollableMasks = signal(false);
35
+ this.renderScrollableButtons = signal(false);
36
+ this.scrollableClass = signal(null);
37
+ this._menuItemList = signal(null);
38
+ this.orientation = signal('vertical');
39
+ this.hostAttributeBindings = signalHostAttributes({
40
+ id: this.id,
41
+ 'aria-orientation': this.orientation,
42
+ });
43
+ this._trigger._connectWithMenu(this);
44
+ fromEvent(this._elementRef.nativeElement, 'focus')
45
+ .pipe(takeUntilDestroyed(), tap(() => this.focusFirstItem()))
46
+ .subscribe();
47
+ fromEvent(this._elementRef.nativeElement, 'keydown')
48
+ .pipe(takeUntilDestroyed(), tap((e) => this._handleKeydown(e)))
49
+ .subscribe();
50
+ const initialFocusEffectRef = effect(() => {
51
+ const items = this._menuItemList();
52
+ const firstItem = items?.first;
53
+ if (firstItem) {
54
+ firstItem.focus();
55
+ initialFocusEffectRef.destroy();
56
+ }
57
+ }, { allowSignalWrites: true });
58
+ }
59
+ ngOnDestroy() {
60
+ this._trigger._clearMenuConnection();
61
+ }
62
+ focusFirstItem() {
63
+ this._menuItemList()?.first?.focus();
64
+ }
65
+ focusLastItem() {
66
+ this._menuItemList()?.last?.focus();
67
+ }
68
+ focusNextItem() {
69
+ const items = this._menuItemList()?.toArray();
70
+ if (!items)
71
+ return;
72
+ const activeItem = items.findIndex((item) => item.isFocused());
73
+ if (activeItem === -1) {
74
+ this.focusFirstItem();
75
+ return;
76
+ }
77
+ const nextItem = items[activeItem + 1];
78
+ if (nextItem) {
79
+ nextItem.focus();
80
+ }
81
+ else {
82
+ this.focusFirstItem();
83
+ }
84
+ }
85
+ focusPreviousItem() {
86
+ const items = this._menuItemList()?.toArray();
87
+ if (!items)
88
+ return;
89
+ const activeItem = items.findIndex((item) => item.isFocused());
90
+ if (activeItem === -1) {
91
+ this.focusLastItem();
92
+ return;
93
+ }
94
+ const previousItem = items[activeItem - 1];
95
+ if (previousItem) {
96
+ previousItem.focus();
97
+ }
98
+ else {
99
+ this.focusLastItem();
100
+ }
101
+ }
102
+ _handleKeydown(event) {
103
+ const keyCode = event.keyCode;
104
+ switch (keyCode) {
105
+ case DOWN_ARROW:
106
+ case RIGHT_ARROW:
107
+ this.focusNextItem();
108
+ event.preventDefault();
109
+ break;
110
+ case UP_ARROW:
111
+ case LEFT_ARROW:
112
+ this.focusPreviousItem();
113
+ event.preventDefault();
114
+ break;
115
+ case HOME:
116
+ this.focusFirstItem();
117
+ event.preventDefault();
118
+ break;
119
+ case END:
120
+ this.focusLastItem();
121
+ event.preventDefault();
122
+ break;
123
+ case TAB:
124
+ this._trigger.unmount(false);
125
+ break;
126
+ }
127
+ }
128
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.0.9", ngImport: i0, type: MenuComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
129
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "16.1.0", version: "17.0.9", type: MenuComponent, isStandalone: true, selector: "et-menu", inputs: { __id: ["id", "__id"], __renderScrollableMasks: ["renderScrollableMasks", "__renderScrollableMasks", booleanAttribute], __renderScrollableButtons: ["renderScrollableButtons", "__renderScrollableButtons", booleanAttribute], _scrollableClass: ["scrollableClass", "_scrollableClass"], __orientation: ["orientation", "__orientation"] }, host: { attributes: { "role": "menu" }, properties: { "id": "id", "attr.aria-labelledby": "_trigger.id" }, classAttribute: "et-menu" }, providers: [
130
+ {
131
+ provide: MENU,
132
+ useExisting: MenuComponent,
133
+ },
134
+ ], queries: [{ propertyName: "__menuItemList", predicate: MENU_ITEM_TOKEN, descendants: true }], ngImport: i0, template: "<et-scrollable\n [direction]=\"orientation()\"\n [renderButtons]=\"renderScrollableButtons()\"\n [renderMasks]=\"renderScrollableMasks()\"\n [cursorDragScroll]=\"orientation() === 'horizontal'\"\n [scrollableClass]=\"scrollableClass()\"\n renderScrollbars\n>\n <ng-content />\n</et-scrollable>\n", styles: [".et-menu{--et-menu-max-inline-size: 300px;--et-menu-max-block-size: 200px;--et-menu-background-color: #b3b3b3;--et-menu-border-radius: 10px}.et-scrollable-container-outer{max-inline-size:var(--et-menu-max-inline-size);max-block-size:min(var(--et-menu-max-block-size),var(--et-floating-max-height, var(--et-menu-max-block-size)));background-color:var(--et-menu-background-color);border-radius:var(--et-menu-border-radius);box-sizing:border-box}\n"], dependencies: [{ kind: "component", type: ScrollableComponent, selector: "et-scrollable", inputs: ["itemSize", "direction", "scrollableRole", "scrollableClass", "renderNavigation", "renderMasks", "renderButtons", "renderScrollbars", "stickyButtons", "cursorDragScroll", "disableActiveElementScrolling", "scrollMode", "snap", "scrollMargin"], outputs: ["scrollStateChange", "intersectionChange"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
135
+ }
136
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.0.9", ngImport: i0, type: MenuComponent, decorators: [{
137
+ type: Component,
138
+ args: [{ selector: 'et-menu', standalone: true, changeDetection: ChangeDetectionStrategy.OnPush, encapsulation: ViewEncapsulation.None, host: {
139
+ class: 'et-menu',
140
+ role: 'menu',
141
+ '[id]': 'id',
142
+ '[attr.aria-labelledby]': '_trigger.id',
143
+ }, imports: [ScrollableComponent], providers: [
144
+ {
145
+ provide: MENU,
146
+ useExisting: MenuComponent,
147
+ },
148
+ ], template: "<et-scrollable\n [direction]=\"orientation()\"\n [renderButtons]=\"renderScrollableButtons()\"\n [renderMasks]=\"renderScrollableMasks()\"\n [cursorDragScroll]=\"orientation() === 'horizontal'\"\n [scrollableClass]=\"scrollableClass()\"\n renderScrollbars\n>\n <ng-content />\n</et-scrollable>\n", styles: [".et-menu{--et-menu-max-inline-size: 300px;--et-menu-max-block-size: 200px;--et-menu-background-color: #b3b3b3;--et-menu-border-radius: 10px}.et-scrollable-container-outer{max-inline-size:var(--et-menu-max-inline-size);max-block-size:min(var(--et-menu-max-block-size),var(--et-floating-max-height, var(--et-menu-max-block-size)));background-color:var(--et-menu-background-color);border-radius:var(--et-menu-border-radius);box-sizing:border-box}\n"] }]
149
+ }], ctorParameters: () => [], propDecorators: { __id: [{
150
+ type: Input,
151
+ args: [{ alias: 'id' }]
152
+ }], __renderScrollableMasks: [{
153
+ type: Input,
154
+ args: [{ transform: booleanAttribute, alias: 'renderScrollableMasks' }]
155
+ }], __renderScrollableButtons: [{
156
+ type: Input,
157
+ args: [{ transform: booleanAttribute, alias: 'renderScrollableButtons' }]
158
+ }], _scrollableClass: [{
159
+ type: Input,
160
+ args: [{ alias: 'scrollableClass' }]
161
+ }], __menuItemList: [{
162
+ type: ContentChildren,
163
+ args: [MENU_ITEM_TOKEN, { descendants: true }]
164
+ }], __orientation: [{
165
+ type: Input,
166
+ args: [{ alias: 'orientation' }]
167
+ }] } });
168
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWVudS5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL2Nkay9zcmMvbGliL2NvbXBvbmVudHMvb3ZlcmxheS9jb21wb25lbnRzL21lbnUvY29tcG9uZW50cy9tZW51L21lbnUuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9jZGsvc3JjL2xpYi9jb21wb25lbnRzL292ZXJsYXkvY29tcG9uZW50cy9tZW51L2NvbXBvbmVudHMvbWVudS9tZW51LmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxVQUFVLEVBQUUsR0FBRyxFQUFFLElBQUksRUFBRSxVQUFVLEVBQUUsV0FBVyxFQUFFLEdBQUcsRUFBRSxRQUFRLEVBQUUsTUFBTSx1QkFBdUIsQ0FBQztBQUN0RyxPQUFPLEVBQ0wsdUJBQXVCLEVBQ3ZCLFNBQVMsRUFDVCxlQUFlLEVBQ2YsVUFBVSxFQUNWLGNBQWMsRUFDZCxLQUFLLEVBRUwsaUJBQWlCLEVBQ2pCLGdCQUFnQixFQUNoQixNQUFNLEVBQ04sTUFBTSxFQUNOLE1BQU0sR0FDUCxNQUFNLGVBQWUsQ0FBQztBQUN2QixPQUFPLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSw0QkFBNEIsQ0FBQztBQUNoRSxPQUFPLEVBQWUsY0FBYyxFQUFFLG9CQUFvQixFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ2xGLE9BQU8sRUFBRSxTQUFTLEVBQUUsR0FBRyxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBQ3RDLE9BQU8sRUFBRSxtQkFBbUIsRUFBRSxNQUFNLDJCQUEyQixDQUFDO0FBQ2hFLE9BQU8sRUFBRSxlQUFlLEVBQUUsa0JBQWtCLEVBQXFCLE1BQU0sa0JBQWtCLENBQUM7O0FBRTFGLE1BQU0sQ0FBQyxNQUFNLElBQUksR0FBRyxJQUFJLGNBQWMsQ0FBZ0IsU0FBUyxDQUFDLENBQUM7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YTtrQkFyQnpCLFNBQVM7K0JBQ0UsU0FBUyxjQUdQLElBQUksbUJBQ0MsdUJBQXVCLENBQUMsTUFBTSxpQkFDaEMsaUJBQWlCLENBQUMsSUFBSSxRQUMvQjt3QkFDSixLQUFLLEVBQUUsU0FBUzt3QkFDaEIsSUFBSSxFQUFFLE1BQU07d0JBQ1osTUFBTSxFQUFFLElBQUk7d0JBQ1osd0JBQXdCLEVBQUUsYUFBYTtxQkFDeEMsV0FDUSxDQUFDLG1CQUFtQixDQUFDLGFBQ25CO3dCQUNUOzRCQUNFLE9BQU8sRUFBRSxJQUFJOzRCQUNiLFdBQVcsZUFBZTt5QkFDM0I7cUJBQ0Y7d0RBT1csSUFBSTtzQkFEZixLQUFLO3VCQUFDLEVBQUUsS0FBSyxFQUFFLElBQUksRUFBRTtnQkFPVix1QkFBdUI7c0JBRGxDLEtBQUs7dUJBQUMsRUFBRSxTQUFTLEVBQUUsZ0JBQWdCLEVBQUUsS0FBSyxFQUFFLHVCQUF1QixFQUFFO2dCQU8xRCx5QkFBeUI7c0JBRHBDLEtBQUs7dUJBQUMsRUFBRSxTQUFTLEVBQUUsZ0JBQWdCLEVBQUUsS0FBSyxFQUFFLHlCQUF5QixFQUFFO2dCQU9wRSxnQkFBZ0I7c0JBRG5CLEtBQUs7dUJBQUMsRUFBRSxLQUFLLEVBQUUsaUJBQWlCLEVBQUU7Z0JBT3ZCLGNBQWM7c0JBRHpCLGVBQWU7dUJBQUMsZUFBZSxFQUFFLEVBQUUsV0FBVyxFQUFFLElBQUksRUFBRTtnQkFPM0MsYUFBYTtzQkFEeEIsS0FBSzt1QkFBQyxFQUFFLEtBQUssRUFBRSxhQUFhLEVBQUUiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBET1dOX0FSUk9XLCBFTkQsIEhPTUUsIExFRlRfQVJST1csIFJJR0hUX0FSUk9XLCBUQUIsIFVQX0FSUk9XIH0gZnJvbSAnQGFuZ3VsYXIvY2RrL2tleWNvZGVzJztcbmltcG9ydCB7XG4gIENoYW5nZURldGVjdGlvblN0cmF0ZWd5LFxuICBDb21wb25lbnQsXG4gIENvbnRlbnRDaGlsZHJlbixcbiAgRWxlbWVudFJlZixcbiAgSW5qZWN0aW9uVG9rZW4sXG4gIElucHV0LFxuICBPbkRlc3Ryb3ksXG4gIFZpZXdFbmNhcHN1bGF0aW9uLFxuICBib29sZWFuQXR0cmlidXRlLFxuICBlZmZlY3QsXG4gIGluamVjdCxcbiAgc2lnbmFsLFxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IHRha2VVbnRpbERlc3Ryb3llZCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUvcnhqcy1pbnRlcm9wJztcbmltcG9ydCB7IE5nQ2xhc3NUeXBlLCBUeXBlZFF1ZXJ5TGlzdCwgc2lnbmFsSG9zdEF0dHJpYnV0ZXMgfSBmcm9tICdAZXRobGV0ZS9jb3JlJztcbmltcG9ydCB7IGZyb21FdmVudCwgdGFwIH0gZnJvbSAncnhqcyc7XG5pbXBvcnQgeyBTY3JvbGxhYmxlQ29tcG9uZW50IH0gZnJvbSAnLi4vLi4vLi4vLi4vLi4vc2Nyb2xsYWJsZSc7XG5pbXBvcnQgeyBNRU5VX0lURU1fVE9LRU4sIE1FTlVfVFJJR0dFUl9UT0tFTiwgTWVudUl0ZW1EaXJlY3RpdmUgfSBmcm9tICcuLi8uLi9kaXJlY3RpdmVzJztcblxuZXhwb3J0IGNvbnN0IE1FTlUgPSBuZXcgSW5qZWN0aW9uVG9rZW48TWVudUNvbXBvbmVudD4oJ0VUX01FTlUnKTtcblxubGV0IHVuaXF1ZUlkID0gMDtcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnZXQtbWVudScsXG4gIHRlbXBsYXRlVXJsOiAnLi9tZW51LmNvbXBvbmVudC5odG1sJyxcbiAgc3R5bGVVcmw6ICcuL21lbnUuY29tcG9uZW50LnNjc3MnLFxuICBzdGFuZGFsb25lOiB0cnVlLFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbiAgZW5jYXBzdWxhdGlvbjogVmlld0VuY2Fwc3VsYXRpb24uTm9uZSxcbiAgaG9zdDoge1xuICAgIGNsYXNzOiAnZXQtbWVudScsXG4gICAgcm9sZTogJ21lbnUnLFxuICAgICdbaWRdJzogJ2lkJyxcbiAgICAnW2F0dHIuYXJpYS1sYWJlbGxlZGJ5XSc6ICdfdHJpZ2dlci5pZCcsXG4gIH0sXG4gIGltcG9ydHM6IFtTY3JvbGxhYmxlQ29tcG9uZW50XSxcbiAgcHJvdmlkZXJzOiBbXG4gICAge1xuICAgICAgcHJvdmlkZTogTUVOVSxcbiAgICAgIHVzZUV4aXN0aW5nOiBNZW51Q29tcG9uZW50LFxuICAgIH0sXG4gIF0sXG59KVxuZXhwb3J0IGNsYXNzIE1lbnVDb21wb25lbnQgaW1wbGVtZW50cyBPbkRlc3Ryb3kge1xuICBwcml2YXRlIHJlYWRvbmx5IF9lbGVtZW50UmVmID0gaW5qZWN0PEVsZW1lbnRSZWY8SFRNTEVsZW1lbnQ+PihFbGVtZW50UmVmKTtcbiAgcmVhZG9ubHkgX3RyaWdnZXIgPSBpbmplY3QoTUVOVV9UUklHR0VSX1RPS0VOKTtcblxuICBASW5wdXQoeyBhbGlhczogJ2lkJyB9KVxuICBwcml2YXRlIHNldCBfX2lkKHZhbHVlOiBzdHJpbmcpIHtcbiAgICB0aGlzLmlkLnNldCh2YWx1ZSk7XG4gIH1cbiAgcmVhZG9ubHkgaWQgPSBzaWduYWw8c3RyaW5nPihgZXQtbWVudS0ke3VuaXF1ZUlkKyt9YCk7XG5cbiAgQElucHV0KHsgdHJhbnNmb3JtOiBib29sZWFuQXR0cmlidXRlLCBhbGlhczogJ3JlbmRlclNjcm9sbGFibGVNYXNrcycgfSlcbiAgcHJpdmF0ZSBzZXQgX19yZW5kZXJTY3JvbGxhYmxlTWFza3ModjogYm9vbGVhbikge1xuICAgIHRoaXMucmVuZGVyU2Nyb2xsYWJsZU1hc2tzLnNldCh2KTtcbiAgfVxuICByZWFkb25seSByZW5kZXJTY3JvbGxhYmxlTWFza3MgPSBzaWduYWwoZmFsc2UpO1xuXG4gIEBJbnB1dCh7IHRyYW5zZm9ybTogYm9vbGVhbkF0dHJpYnV0ZSwgYWxpYXM6ICdyZW5kZXJTY3JvbGxhYmxlQnV0dG9ucycgfSlcbiAgcHJpdmF0ZSBzZXQgX19yZW5kZXJTY3JvbGxhYmxlQnV0dG9ucyh2OiBib29sZWFuKSB7XG4gICAgdGhpcy5yZW5kZXJTY3JvbGxhYmxlQnV0dG9ucy5zZXQodik7XG4gIH1cbiAgcmVhZG9ubHkgcmVuZGVyU2Nyb2xsYWJsZUJ1dHRvbnMgPSBzaWduYWwoZmFsc2UpO1xuXG4gIEBJbnB1dCh7IGFsaWFzOiAnc2Nyb2xsYWJsZUNsYXNzJyB9KVxuICBzZXQgX3Njcm9sbGFibGVDbGFzcyh2OiBOZ0NsYXNzVHlwZSB8IG51bGwpIHtcbiAgICB0aGlzLnNjcm9sbGFibGVDbGFzcy5zZXQodik7XG4gIH1cbiAgcmVhZG9ubHkgc2Nyb2xsYWJsZUNsYXNzID0gc2lnbmFsPE5nQ2xhc3NUeXBlIHwgbnVsbD4obnVsbCk7XG5cbiAgQENvbnRlbnRDaGlsZHJlbihNRU5VX0lURU1fVE9LRU4sIHsgZGVzY2VuZGFudHM6IHRydWUgfSlcbiAgcHJpdmF0ZSBzZXQgX19tZW51SXRlbUxpc3QodmFsdWU6IFR5cGVkUXVlcnlMaXN0PE1lbnVJdGVtRGlyZWN0aXZlPikge1xuICAgIHRoaXMuX21lbnVJdGVtTGlzdC5zZXQodmFsdWUpO1xuICB9XG4gIHByaXZhdGUgcmVhZG9ubHkgX21lbnVJdGVtTGlzdCA9IHNpZ25hbDxUeXBlZFF1ZXJ5TGlzdDxNZW51SXRlbURpcmVjdGl2ZT4gfCBudWxsPihudWxsKTtcblxuICBASW5wdXQoeyBhbGlhczogJ29yaWVudGF0aW9uJyB9KVxuICBwcml2YXRlIHNldCBfX29yaWVudGF0aW9uKHZhbHVlOiAnaG9yaXpvbnRhbCcgfCAndmVydGljYWwnKSB7XG4gICAgdGhpcy5vcmllbnRhdGlvbi5zZXQodmFsdWUpO1xuICB9XG4gIHJlYWRvbmx5IG9yaWVudGF0aW9uID0gc2lnbmFsPCdob3Jpem9udGFsJyB8ICd2ZXJ0aWNhbCc+KCd2ZXJ0aWNhbCcpO1xuXG4gIHJlYWRvbmx5IGhvc3RBdHRyaWJ1dGVCaW5kaW5ncyA9IHNpZ25hbEhvc3RBdHRyaWJ1dGVzKHtcbiAgICBpZDogdGhpcy5pZCxcbiAgICAnYXJpYS1vcmllbnRhdGlvbic6IHRoaXMub3JpZW50YXRpb24sXG4gIH0pO1xuXG4gIGNvbnN0cnVjdG9yKCkge1xuICAgIHRoaXMuX3RyaWdnZXIuX2Nvbm5lY3RXaXRoTWVudSh0aGlzKTtcblxuICAgIGZyb21FdmVudCh0aGlzLl9lbGVtZW50UmVmLm5hdGl2ZUVsZW1lbnQsICdmb2N1cycpXG4gICAgICAucGlwZShcbiAgICAgICAgdGFrZVVudGlsRGVzdHJveWVkKCksXG4gICAgICAgIHRhcCgoKSA9PiB0aGlzLmZvY3VzRmlyc3RJdGVtKCkpLFxuICAgICAgKVxuICAgICAgLnN1YnNjcmliZSgpO1xuXG4gICAgZnJvbUV2ZW50PEtleWJvYXJkRXZlbnQ+KHRoaXMuX2VsZW1lbnRSZWYubmF0aXZlRWxlbWVudCwgJ2tleWRvd24nKVxuICAgICAgLnBpcGUoXG4gICAgICAgIHRha2VVbnRpbERlc3Ryb3llZCgpLFxuICAgICAgICB0YXAoKGUpID0+IHRoaXMuX2hhbmRsZUtleWRvd24oZSkpLFxuICAgICAgKVxuICAgICAgLnN1YnNjcmliZSgpO1xuXG4gICAgY29uc3QgaW5pdGlhbEZvY3VzRWZmZWN0UmVmID0gZWZmZWN0KFxuICAgICAgKCkgPT4ge1xuICAgICAgICBjb25zdCBpdGVtcyA9IHRoaXMuX21lbnVJdGVtTGlzdCgpO1xuICAgICAgICBjb25zdCBmaXJzdEl0ZW0gPSBpdGVtcz8uZmlyc3Q7XG5cbiAgICAgICAgaWYgKGZpcnN0SXRlbSkge1xuICAgICAgICAgIGZpcnN0SXRlbS5mb2N1cygpO1xuICAgICAgICAgIGluaXRpYWxGb2N1c0VmZmVjdFJlZi5kZXN0cm95KCk7XG4gICAgICAgIH1cbiAgICAgIH0sXG4gICAgICB7IGFsbG93U2lnbmFsV3JpdGVzOiB0cnVlIH0sXG4gICAgKTtcbiAgfVxuXG4gIG5nT25EZXN0cm95KCk6IHZvaWQge1xuICAgIHRoaXMuX3RyaWdnZXIuX2NsZWFyTWVudUNvbm5lY3Rpb24oKTtcbiAgfVxuXG4gIGZvY3VzRmlyc3RJdGVtKCkge1xuICAgIHRoaXMuX21lbnVJdGVtTGlzdCgpPy5maXJzdD8uZm9jdXMoKTtcbiAgfVxuXG4gIGZvY3VzTGFzdEl0ZW0oKSB7XG4gICAgdGhpcy5fbWVudUl0ZW1MaXN0KCk/Lmxhc3Q/LmZvY3VzKCk7XG4gIH1cblxuICBmb2N1c05leHRJdGVtKCkge1xuICAgIGNvbnN0IGl0ZW1zID0gdGhpcy5fbWVudUl0ZW1MaXN0KCk/LnRvQXJyYXkoKTtcblxuICAgIGlmICghaXRlbXMpIHJldHVybjtcblxuICAgIGNvbnN0IGFjdGl2ZUl0ZW0gPSBpdGVtcy5maW5kSW5kZXgoKGl0ZW0pID0+IGl0ZW0uaXNGb2N1c2VkKCkpO1xuXG4gICAgaWYgKGFjdGl2ZUl0ZW0gPT09IC0xKSB7XG4gICAgICB0aGlzLmZvY3VzRmlyc3RJdGVtKCk7XG4gICAgICByZXR1cm47XG4gICAgfVxuXG4gICAgY29uc3QgbmV4dEl0ZW0gPSBpdGVtc1thY3RpdmVJdGVtICsgMV07XG5cbiAgICBpZiAobmV4dEl0ZW0pIHtcbiAgICAgIG5leHRJdGVtLmZvY3VzKCk7XG4gICAgfSBlbHNlIHtcbiAgICAgIHRoaXMuZm9jdXNGaXJzdEl0ZW0oKTtcbiAgICB9XG4gIH1cblxuICBmb2N1c1ByZXZpb3VzSXRlbSgpIHtcbiAgICBjb25zdCBpdGVtcyA9IHRoaXMuX21lbnVJdGVtTGlzdCgpPy50b0FycmF5KCk7XG5cbiAgICBpZiAoIWl0ZW1zKSByZXR1cm47XG5cbiAgICBjb25zdCBhY3RpdmVJdGVtID0gaXRlbXMuZmluZEluZGV4KChpdGVtKSA9PiBpdGVtLmlzRm9jdXNlZCgpKTtcblxuICAgIGlmIChhY3RpdmVJdGVtID09PSAtMSkge1xuICAgICAgdGhpcy5mb2N1c0xhc3RJdGVtKCk7XG4gICAgICByZXR1cm47XG4gICAgfVxuXG4gICAgY29uc3QgcHJldmlvdXNJdGVtID0gaXRlbXNbYWN0aXZlSXRlbSAtIDFdO1xuXG4gICAgaWYgKHByZXZpb3VzSXRlbSkge1xuICAgICAgcHJldmlvdXNJdGVtLmZvY3VzKCk7XG4gICAgfSBlbHNlIHtcbiAgICAgIHRoaXMuZm9jdXNMYXN0SXRlbSgpO1xuICAgIH1cbiAgfVxuXG4gIF9oYW5kbGVLZXlkb3duKGV2ZW50OiBLZXlib2FyZEV2ZW50KSB7XG4gICAgY29uc3Qga2V5Q29kZSA9IGV2ZW50LmtleUNvZGU7XG5cbiAgICBzd2l0Y2ggKGtleUNvZGUpIHtcbiAgICAgIGNhc2UgRE9XTl9BUlJPVzpcbiAgICAgIGNhc2UgUklHSFRfQVJST1c6XG4gICAgICAgIHRoaXMuZm9jdXNOZXh0SXRlbSgpO1xuICAgICAgICBldmVudC5wcmV2ZW50RGVmYXVsdCgpO1xuICAgICAgICBicmVhaztcblxuICAgICAgY2FzZSBVUF9BUlJPVzpcbiAgICAgIGNhc2UgTEVGVF9BUlJPVzpcbiAgICAgICAgdGhpcy5mb2N1c1ByZXZpb3VzSXRlbSgpO1xuICAgICAgICBldmVudC5wcmV2ZW50RGVmYXVsdCgpO1xuICAgICAgICBicmVhaztcblxuICAgICAgY2FzZSBIT01FOlxuICAgICAgICB0aGlzLmZvY3VzRmlyc3RJdGVtKCk7XG4gICAgICAgIGV2ZW50LnByZXZlbnREZWZhdWx0KCk7XG4gICAgICAgIGJyZWFrO1xuXG4gICAgICBjYXNlIEVORDpcbiAgICAgICAgdGhpcy5mb2N1c0xhc3RJdGVtKCk7XG4gICAgICAgIGV2ZW50LnByZXZlbnREZWZhdWx0KCk7XG4gICAgICAgIGJyZWFrO1xuXG4gICAgICBjYXNlIFRBQjpcbiAgICAgICAgdGhpcy5fdHJpZ2dlci51bm1vdW50KGZhbHNlKTtcbiAgICAgICAgYnJlYWs7XG4gICAgfVxuICB9XG59XG4iLCI8ZXQtc2Nyb2xsYWJsZVxuICBbZGlyZWN0aW9uXT1cIm9yaWVudGF0aW9uKClcIlxuICBbcmVuZGVyQnV0dG9uc109XCJyZW5kZXJTY3JvbGxhYmxlQnV0dG9ucygpXCJcbiAgW3JlbmRlck1hc2tzXT1cInJlbmRlclNjcm9sbGFibGVNYXNrcygpXCJcbiAgW2N1cnNvckRyYWdTY3JvbGxdPVwib3JpZW50YXRpb24oKSA9PT0gJ2hvcml6b250YWwnXCJcbiAgW3Njcm9sbGFibGVDbGFzc109XCJzY3JvbGxhYmxlQ2xhc3MoKVwiXG4gIHJlbmRlclNjcm9sbGJhcnNcbj5cbiAgPG5nLWNvbnRlbnQgLz5cbjwvZXQtc2Nyb2xsYWJsZT5cbiJdfQ==
@@ -0,0 +1,2 @@
1
+ export * from './menu.component';
2
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHVibGljLWFwaS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvY2RrL3NyYy9saWIvY29tcG9uZW50cy9vdmVybGF5L2NvbXBvbmVudHMvbWVudS9jb21wb25lbnRzL21lbnUvcHVibGljLWFwaS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxjQUFjLGtCQUFrQixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0ICogZnJvbSAnLi9tZW51LmNvbXBvbmVudCc7XG4iXX0=
@@ -0,0 +1,68 @@
1
+ import { ENTER, SPACE } from '@angular/cdk/keycodes';
2
+ import { AsyncPipe, NgClass } from '@angular/common';
3
+ import { ChangeDetectionStrategy, Component, ElementRef, ViewEncapsulation, forwardRef, inject, } from '@angular/core';
4
+ import { takeUntilDestroyed, toSignal } from '@angular/core/rxjs-interop';
5
+ import { signalHostAttributes } from '@ethlete/core';
6
+ import { combineLatest, filter, fromEvent, map, merge } from 'rxjs';
7
+ import { CHECKBOX_TOKEN, CheckboxDirective, DynamicFormFieldDirective, InputBase, InputDirective, NativeInputRefDirective, StaticFormFieldDirective, WriteableInputDirective, } from '../../../../../forms';
8
+ import { MENU_ITEM_TOKEN, MENU_TRIGGER_TOKEN, MenuItemDirective } from '../../directives';
9
+ import * as i0 from "@angular/core";
10
+ import * as i1 from "../../../../../forms/directives/native-input-ref/native-input-ref.directive";
11
+ import * as i2 from "../../../../../forms/directives/static-form-field/static-form-field.directive";
12
+ import * as i3 from "../../../../../forms/directives/writeable-input/writeable-input.directive";
13
+ import * as i4 from "../../directives/menu-item/menu-item.directive";
14
+ import * as i5 from "../../../../../forms/directives/dynamic-form-field/dynamic-form-field.directive";
15
+ import * as i6 from "../../../../../forms/components/checkbox/directives/checkbox/checkbox.directive";
16
+ import * as i7 from "../../../../../forms/directives/input/input.directive";
17
+ export class MenuCheckboxItemComponent extends InputBase {
18
+ constructor() {
19
+ super();
20
+ this._elementRef = inject(ElementRef);
21
+ this._trigger = inject(MENU_TRIGGER_TOKEN);
22
+ this.checkbox = inject(CHECKBOX_TOKEN);
23
+ this.menuItem = inject(MENU_ITEM_TOKEN);
24
+ this.hostAttributeBindings = signalHostAttributes({
25
+ 'aria-checked': toSignal(combineLatest([this.checkbox.checked$, this.checkbox.indeterminate$]).pipe(map(([checked, indeterminate]) => (checked ? true : indeterminate ? 'mixed' : false)))),
26
+ 'aria-required': toSignal(this.input.required$),
27
+ 'aria-disabled': toSignal(this.input.disabled$),
28
+ 'aria-describedby': toSignal(this.input.describedBy$),
29
+ });
30
+ merge(fromEvent(this._elementRef.nativeElement, 'click'), fromEvent(this._elementRef.nativeElement, 'keydown').pipe(filter((e) => e.keyCode === SPACE || e.keyCode === ENTER)))
31
+ .pipe(takeUntilDestroyed())
32
+ .subscribe((e) => {
33
+ if ('keyCode' in e) {
34
+ e.preventDefault();
35
+ if (e.keyCode === ENTER) {
36
+ this._trigger.unmount();
37
+ }
38
+ }
39
+ this.checkbox._onInputInteraction(e);
40
+ });
41
+ fromEvent(this._elementRef.nativeElement, 'blur')
42
+ .pipe(takeUntilDestroyed())
43
+ .subscribe(() => this.checkbox._controlTouched());
44
+ this.menuItem._disableCloseOnInteraction();
45
+ }
46
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.0.9", ngImport: i0, type: MenuCheckboxItemComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
47
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.0.9", type: MenuCheckboxItemComponent, isStandalone: true, selector: "et-menu-checkbox-item", host: { attributes: { "role": "menuitemcheckbox" }, properties: { "id": "input.id" }, classAttribute: "et-menu-checkbox-item" }, usesInheritance: true, hostDirectives: [{ directive: i1.NativeInputRefDirective }, { directive: i2.StaticFormFieldDirective }, { directive: i3.WriteableInputDirective }, { directive: i4.MenuItemDirective }, { directive: i0.forwardRef(() => i5.DynamicFormFieldDirective), inputs: ["hideErrorMessage", "hideErrorMessage"] }, { directive: i6.CheckboxDirective }, { directive: i7.InputDirective, inputs: ["autocomplete", "autocomplete"] }], ngImport: i0, template: "<div class=\"et-menu-checkbox\">\n <div [ngClass]=\"{ 'et-menu-checkbox-check--active': checkbox.checked$ | async }\" class=\"et-menu-checkbox-check\"></div>\n <div\n [ngClass]=\"{ 'et-menu-checkbox-indeterminate--active': checkbox.indeterminate$ | async }\"\n class=\"et-menu-checkbox-indeterminate\"\n ></div>\n</div>\n\n<ng-content />\n", styles: [":where(.et-menu-checkbox){--et-menu-checkbox-size: 25px;--et-menu-checkbox-check-size: 10px;--et-menu-checkbox-border-color: #e5e5e5;--et-menu-checkbox-state-color: #e5e5e5;--et-menu-checkbox-indeterminate-width: 10px;--et-menu-checkbox-indeterminate-height: 2px;inline-size:var(--et-menu-checkbox-size);block-size:var(--et-menu-checkbox-size);border:1px solid var(--et-menu-checkbox-border-color);display:inline-grid}:where(.et-menu-checkbox-check){inline-size:var(--et-menu-checkbox-check-size);block-size:var(--et-menu-checkbox-check-size)}:where(.et-menu-checkbox-check).et-menu-checkbox-check--active{background-color:var(--et-menu-checkbox-state-color)}:where(.et-menu-checkbox-indeterminate){inline-size:var(--et-menu-checkbox-indeterminate-width);block-size:var(--et-menu-checkbox-indeterminate-height)}:where(.et-menu-checkbox-indeterminate).et-menu-checkbox-indeterminate--active{background-color:var(--et-menu-checkbox-state-color)}.et-menu-checkbox-item{display:block}.et-menu-checkbox{position:relative;align-items:center;justify-items:center}.et-menu-checkbox-check,.et-menu-checkbox-indeterminate{grid-area:1/1/2/2}\n"], dependencies: [{ kind: "directive", type: NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "pipe", type: AsyncPipe, name: "async" }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
48
+ }
49
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.0.9", ngImport: i0, type: MenuCheckboxItemComponent, decorators: [{
50
+ type: Component,
51
+ args: [{ selector: 'et-menu-checkbox-item', standalone: true, changeDetection: ChangeDetectionStrategy.OnPush, encapsulation: ViewEncapsulation.None, host: {
52
+ class: 'et-menu-checkbox-item',
53
+ role: 'menuitemcheckbox',
54
+ '[id]': 'input.id',
55
+ }, imports: [NgClass, AsyncPipe], hostDirectives: [
56
+ NativeInputRefDirective,
57
+ StaticFormFieldDirective,
58
+ WriteableInputDirective,
59
+ MenuItemDirective,
60
+ {
61
+ directive: forwardRef(() => DynamicFormFieldDirective),
62
+ inputs: ['hideErrorMessage'],
63
+ },
64
+ CheckboxDirective,
65
+ { directive: InputDirective, inputs: ['autocomplete'] },
66
+ ], template: "<div class=\"et-menu-checkbox\">\n <div [ngClass]=\"{ 'et-menu-checkbox-check--active': checkbox.checked$ | async }\" class=\"et-menu-checkbox-check\"></div>\n <div\n [ngClass]=\"{ 'et-menu-checkbox-indeterminate--active': checkbox.indeterminate$ | async }\"\n class=\"et-menu-checkbox-indeterminate\"\n ></div>\n</div>\n\n<ng-content />\n", styles: [":where(.et-menu-checkbox){--et-menu-checkbox-size: 25px;--et-menu-checkbox-check-size: 10px;--et-menu-checkbox-border-color: #e5e5e5;--et-menu-checkbox-state-color: #e5e5e5;--et-menu-checkbox-indeterminate-width: 10px;--et-menu-checkbox-indeterminate-height: 2px;inline-size:var(--et-menu-checkbox-size);block-size:var(--et-menu-checkbox-size);border:1px solid var(--et-menu-checkbox-border-color);display:inline-grid}:where(.et-menu-checkbox-check){inline-size:var(--et-menu-checkbox-check-size);block-size:var(--et-menu-checkbox-check-size)}:where(.et-menu-checkbox-check).et-menu-checkbox-check--active{background-color:var(--et-menu-checkbox-state-color)}:where(.et-menu-checkbox-indeterminate){inline-size:var(--et-menu-checkbox-indeterminate-width);block-size:var(--et-menu-checkbox-indeterminate-height)}:where(.et-menu-checkbox-indeterminate).et-menu-checkbox-indeterminate--active{background-color:var(--et-menu-checkbox-state-color)}.et-menu-checkbox-item{display:block}.et-menu-checkbox{position:relative;align-items:center;justify-items:center}.et-menu-checkbox-check,.et-menu-checkbox-indeterminate{grid-area:1/1/2/2}\n"] }]
67
+ }], ctorParameters: () => [] });
68
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWVudS1jaGVja2JveC1pdGVtLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvY2RrL3NyYy9saWIvY29tcG9uZW50cy9vdmVybGF5L2NvbXBvbmVudHMvbWVudS9jb21wb25lbnRzL21lbnUtY2hlY2tib3gtaXRlbS9tZW51LWNoZWNrYm94LWl0ZW0uY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9jZGsvc3JjL2xpYi9jb21wb25lbnRzL292ZXJsYXkvY29tcG9uZW50cy9tZW51L2NvbXBvbmVudHMvbWVudS1jaGVja2JveC1pdGVtL21lbnUtY2hlY2tib3gtaXRlbS5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsS0FBSyxFQUFFLEtBQUssRUFBRSxNQUFNLHVCQUF1QixDQUFDO0FBQ3JELE9BQU8sRUFBRSxTQUFTLEVBQUUsT0FBTyxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDckQsT0FBTyxFQUNMLHVCQUF1QixFQUN2QixTQUFTLEVBQ1QsVUFBVSxFQUVWLGlCQUFpQixFQUNqQixVQUFVLEVBQ1YsTUFBTSxHQUNQLE1BQU0sZUFBZSxDQUFDO0FBQ3ZCLE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxRQUFRLEVBQUUsTUFBTSw0QkFBNEIsQ0FBQztBQUMxRSxPQUFPLEVBQUUsb0JBQW9CLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDckQsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLEVBQUUsU0FBUyxFQUFFLEdBQUcsRUFBRSxLQUFLLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFDcEUsT0FBTyxFQUNMLGNBQWMsRUFDZCxpQkFBaUIsRUFDakIseUJBQXlCLEVBQ3pCLFNBQVMsRUFDVCxjQUFjLEVBQ2QsdUJBQXVCLEVBQ3ZCLHdCQUF3QixFQUN4Qix1QkFBdUIsR0FDeEIsTUFB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Q3hCLE1BQU0sRUFBRSxVQUFVO3FCQUNuQixXQUNRLENBQUMsT0FBTyxFQUFFLFNBQVMsQ0FBQyxrQkFDYjt3QkFDZCx1QkFBdUI7d0JBQ3ZCLHdCQUF3Qjt3QkFDeEIsdUJBQXVCO3dCQUN2QixpQkFBaUI7d0JBQ2pCOzRCQUNFLFNBQVMsRUFBRSxVQUFVLENBQUMsR0FBRyxFQUFFLENBQUMseUJBQXlCLENBQW9DOzRCQUN6RixNQUFNLEVBQUUsQ0FBQyxrQkFBa0IsQ0FBQzt5QkFDN0I7d0JBQ0QsaUJBQWlCO3dCQUNqQixFQUFFLFNBQVMsRUFBRSxjQUFjLEVBQUUsTUFBTSxFQUFFLENBQUMsY0FBYyxDQUFDLEVBQUU7cUJBQ3hEIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgRU5URVIsIFNQQUNFIH0gZnJvbSAnQGFuZ3VsYXIvY2RrL2tleWNvZGVzJztcbmltcG9ydCB7IEFzeW5jUGlwZSwgTmdDbGFzcyB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XG5pbXBvcnQge1xuICBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSxcbiAgQ29tcG9uZW50LFxuICBFbGVtZW50UmVmLFxuICBUeXBlLFxuICBWaWV3RW5jYXBzdWxhdGlvbixcbiAgZm9yd2FyZFJlZixcbiAgaW5qZWN0LFxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IHRha2VVbnRpbERlc3Ryb3llZCwgdG9TaWduYWwgfSBmcm9tICdAYW5ndWxhci9jb3JlL3J4anMtaW50ZXJvcCc7XG5pbXBvcnQgeyBzaWduYWxIb3N0QXR0cmlidXRlcyB9IGZyb20gJ0BldGhsZXRlL2NvcmUnO1xuaW1wb3J0IHsgY29tYmluZUxhdGVzdCwgZmlsdGVyLCBmcm9tRXZlbnQsIG1hcCwgbWVyZ2UgfSBmcm9tICdyeGpzJztcbmltcG9ydCB7XG4gIENIRUNLQk9YX1RPS0VOLFxuICBDaGVja2JveERpcmVjdGl2ZSxcbiAgRHluYW1pY0Zvcm1GaWVsZERpcmVjdGl2ZSxcbiAgSW5wdXRCYXNlLFxuICBJbnB1dERpcmVjdGl2ZSxcbiAgTmF0aXZlSW5wdXRSZWZEaXJlY3RpdmUsXG4gIFN0YXRpY0Zvcm1GaWVsZERpcmVjdGl2ZSxcbiAgV3JpdGVhYmxlSW5wdXREaXJlY3RpdmUsXG59IGZyb20gJy4uLy4uLy4uLy4uLy4uL2Zvcm1zJztcbmltcG9ydCB7IE1FTlVfSVRFTV9UT0tFTiwgTUVOVV9UUklHR0VSX1RPS0VOLCBNZW51SXRlbURpcmVjdGl2ZSB9IGZyb20gJy4uLy4uL2RpcmVjdGl2ZXMnO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdldC1tZW51LWNoZWNrYm94LWl0ZW0nLFxuICB0ZW1wbGF0ZVVybDogJy4vbWVudS1jaGVja2JveC1pdGVtLmNvbXBvbmVudC5odG1sJyxcbiAgc3R5bGVVcmw6ICcuL21lbnUtY2hlY2tib3gtaXRlbS5jb21wb25lbnQuc2NzcycsXG4gIHN0YW5kYWxvbmU6IHRydWUsXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxuICBlbmNhcHN1bGF0aW9uOiBWaWV3RW5jYXBzdWxhdGlvbi5Ob25lLFxuICBob3N0OiB7XG4gICAgY2xhc3M6ICdldC1tZW51LWNoZWNrYm94LWl0ZW0nLFxuICAgIHJvbGU6ICdtZW51aXRlbWNoZWNrYm94JyxcbiAgICAnW2lkXSc6ICdpbnB1dC5pZCcsXG4gIH0sXG4gIGltcG9ydHM6IFtOZ0NsYXNzLCBBc3luY1BpcGVdLFxuICBob3N0RGlyZWN0aXZlczogW1xuICAgIE5hdGl2ZUlucHV0UmVmRGlyZWN0aXZlLFxuICAgIFN0YXRpY0Zvcm1GaWVsZERpcmVjdGl2ZSxcbiAgICBXcml0ZWFibGVJbnB1dERpcmVjdGl2ZSxcbiAgICBNZW51SXRlbURpcmVjdGl2ZSxcbiAgICB7XG4gICAgICBkaXJlY3RpdmU6IGZvcndhcmRSZWYoKCkgPT4gRHluYW1pY0Zvcm1GaWVsZERpcmVjdGl2ZSkgYXMgVHlwZTxEeW5hbWljRm9ybUZpZWxkRGlyZWN0aXZlPixcbiAgICAgIGlucHV0czogWydoaWRlRXJyb3JNZXNzYWdlJ10sXG4gICAgfSxcbiAgICBDaGVja2JveERpcmVjdGl2ZSxcbiAgICB7IGRpcmVjdGl2ZTogSW5wdXREaXJlY3RpdmUsIGlucHV0czogWydhdXRvY29tcGxldGUnXSB9LFxuICBdLFxufSlcbmV4cG9ydCBjbGFzcyBNZW51Q2hlY2tib3hJdGVtQ29tcG9uZW50IGV4dGVuZHMgSW5wdXRCYXNlIHtcbiAgcHJpdmF0ZSByZWFkb25seSBfZWxlbWVudFJlZiA9IGluamVjdDxFbGVtZW50UmVmPEhUTUxFbGVtZW50Pj4oRWxlbWVudFJlZik7XG4gIHByaXZhdGUgcmVhZG9ubHkgX3RyaWdnZXIgPSBpbmplY3QoTUVOVV9UUklHR0VSX1RPS0VOKTtcblxuICBwcm90ZWN0ZWQgcmVhZG9ubHkgY2hlY2tib3ggPSBpbmplY3QoQ0hFQ0tCT1hfVE9LRU4pO1xuICBwcm90ZWN0ZWQgcmVhZG9ubHkgbWVudUl0ZW0gPSBpbmplY3QoTUVOVV9JVEVNX1RPS0VOKTtcblxuICByZWFkb25seSBob3N0QXR0cmlidXRlQmluZGluZ3MgPSBzaWduYWxIb3N0QXR0cmlidXRlcyh7XG4gICAgJ2FyaWEtY2hlY2tlZCc6IHRvU2lnbmFsKFxuICAgICAgY29tYmluZUxhdGVzdChbdGhpcy5jaGVja2JveC5jaGVja2VkJCwgdGhpcy5jaGVja2JveC5pbmRldGVybWluYXRlJF0pLnBpcGUoXG4gICAgICAgIG1hcCgoW2NoZWNrZWQsIGluZGV0ZXJtaW5hdGVdKSA9PiAoY2hlY2tlZCA/IHRydWUgOiBpbmRldGVybWluYXRlID8gJ21peGVkJyA6IGZhbHNlKSksXG4gICAgICApLFxuICAgICksXG4gICAgJ2FyaWEtcmVxdWlyZWQnOiB0b1NpZ25hbCh0aGlzLmlucHV0LnJlcXVpcmVkJCksXG4gICAgJ2FyaWEtZGlzYWJsZWQnOiB0b1NpZ25hbCh0aGlzLmlucHV0LmRpc2FibGVkJCksXG4gICAgJ2FyaWEtZGVzY3JpYmVkYnknOiB0b1NpZ25hbCh0aGlzLmlucHV0LmRlc2NyaWJlZEJ5JCksXG4gIH0pO1xuXG4gIGNvbnN0cnVjdG9yKCkge1xuICAgIHN1cGVyKCk7XG5cbiAgICBtZXJnZShcbiAgICAgIGZyb21FdmVudCh0aGlzLl9lbGVtZW50UmVmLm5hdGl2ZUVsZW1lbnQsICdjbGljaycpLFxuICAgICAgZnJvbUV2ZW50PEtleWJvYXJkRXZlbnQ+KHRoaXMuX2VsZW1lbnRSZWYubmF0aXZlRWxlbWVudCwgJ2tleWRvd24nKS5waXBlKFxuICAgICAgICBmaWx0ZXIoKGUpID0+IGUua2V5Q29kZSA9PT0gU1BBQ0UgfHwgZS5rZXlDb2RlID09PSBFTlRFUiksXG4gICAgICApLFxuICAgIClcbiAgICAgIC5waXBlKHRha2VVbnRpbERlc3Ryb3llZCgpKVxuICAgICAgLnN1YnNjcmliZSgoZSkgPT4ge1xuICAgICAgICBpZiAoJ2tleUNvZGUnIGluIGUpIHtcbiAgICAgICAgICBlLnByZXZlbnREZWZhdWx0KCk7XG5cbiAgICAgICAgICBpZiAoZS5rZXlDb2RlID09PSBFTlRFUikge1xuICAgICAgICAgICAgdGhpcy5fdHJpZ2dlci51bm1vdW50KCk7XG4gICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgdGhpcy5jaGVja2JveC5fb25JbnB1dEludGVyYWN0aW9uKGUpO1xuICAgICAgfSk7XG5cbiAgICBmcm9tRXZlbnQodGhpcy5fZWxlbWVudFJlZi5uYXRpdmVFbGVtZW50LCAnYmx1cicpXG4gICAgICAucGlwZSh0YWtlVW50aWxEZXN0cm95ZWQoKSlcbiAgICAgIC5zdWJzY3JpYmUoKCkgPT4gdGhpcy5jaGVja2JveC5fY29udHJvbFRvdWNoZWQoKSk7XG5cbiAgICB0aGlzLm1lbnVJdGVtLl9kaXNhYmxlQ2xvc2VPbkludGVyYWN0aW9uKCk7XG4gIH1cbn1cbiIsIjxkaXYgY2xhc3M9XCJldC1tZW51LWNoZWNrYm94XCI+XG4gIDxkaXYgW25nQ2xhc3NdPVwieyAnZXQtbWVudS1jaGVja2JveC1jaGVjay0tYWN0aXZlJzogY2hlY2tib3guY2hlY2tlZCQgfCBhc3luYyB9XCIgY2xhc3M9XCJldC1tZW51LWNoZWNrYm94LWNoZWNrXCI+PC9kaXY+XG4gIDxkaXZcbiAgICBbbmdDbGFzc109XCJ7ICdldC1tZW51LWNoZWNrYm94LWluZGV0ZXJtaW5hdGUtLWFjdGl2ZSc6IGNoZWNrYm94LmluZGV0ZXJtaW5hdGUkIHwgYXN5bmMgfVwiXG4gICAgY2xhc3M9XCJldC1tZW51LWNoZWNrYm94LWluZGV0ZXJtaW5hdGVcIlxuICA+PC9kaXY+XG48L2Rpdj5cblxuPG5nLWNvbnRlbnQgLz5cbiJdfQ==
@@ -0,0 +1,2 @@
1
+ export * from './menu-checkbox-item.component';
2
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHVibGljLWFwaS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvY2RrL3NyYy9saWIvY29tcG9uZW50cy9vdmVybGF5L2NvbXBvbmVudHMvbWVudS9jb21wb25lbnRzL21lbnUtY2hlY2tib3gtaXRlbS9wdWJsaWMtYXBpLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLGNBQWMsZ0NBQWdDLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgKiBmcm9tICcuL21lbnUtY2hlY2tib3gtaXRlbS5jb21wb25lbnQnO1xuIl19
@@ -0,0 +1,47 @@
1
+ import { NgTemplateOutlet } from '@angular/common';
2
+ import { ChangeDetectionStrategy, ChangeDetectorRef, Component, ElementRef, InjectionToken, Injector, ViewChild, ViewEncapsulation, inject, } from '@angular/core';
3
+ import { ANIMATED_LIFECYCLE_TOKEN, AnimatedLifecycleDirective } from '@ethlete/core';
4
+ import { ProvideThemeDirective, THEME_PROVIDER } from '@ethlete/theming';
5
+ import { MENU_TRIGGER_TOKEN } from '../../directives';
6
+ import * as i0 from "@angular/core";
7
+ import * as i1 from "@ethlete/theming";
8
+ export const MENU_CONTAINER = new InjectionToken('ET_MENU_CONTAINER');
9
+ export const MENU_TEMPLATE = new InjectionToken('MENU_TEMPLATE');
10
+ export class MenuContainerComponent {
11
+ constructor() {
12
+ this._themeProvider = inject(THEME_PROVIDER);
13
+ this.injector = inject(Injector);
14
+ this._cdr = inject(ChangeDetectorRef);
15
+ this._trigger = inject(MENU_TRIGGER_TOKEN);
16
+ this._elementRef = inject(ElementRef);
17
+ this._menuTemplate = inject(MENU_TEMPLATE);
18
+ }
19
+ _markForCheck() {
20
+ this._cdr.markForCheck();
21
+ }
22
+ _setThemeFromProvider(provider) {
23
+ this._themeProvider.syncWithProvider(provider);
24
+ }
25
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.0.9", ngImport: i0, type: MenuContainerComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
26
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.0.9", type: MenuContainerComponent, isStandalone: true, selector: "et-menu-container", host: { classAttribute: "et-menu-container" }, providers: [
27
+ {
28
+ provide: MENU_CONTAINER,
29
+ useExisting: MenuContainerComponent,
30
+ },
31
+ ], viewQueries: [{ propertyName: "_animatedLifecycle", first: true, predicate: ANIMATED_LIFECYCLE_TOKEN, descendants: true, static: true }], hostDirectives: [{ directive: i1.ProvideThemeDirective }], ngImport: i0, template: "<div class=\"et-menu-body\" etAnimatedLifecycle>\n <ng-container *ngTemplateOutlet=\"_menuTemplate; injector: injector\" />\n</div>\n", styles: [".et-menu-container{display:block;transform:var(--et-floating-translate);will-change:transform}.et-menu-container .et-menu-body.et-animation-enter-from,.et-menu-container .et-menu-body.et-animation-leave-to{opacity:0;transform:scale(0)}.et-menu-container .et-menu-body.et-animation-enter-active{transition:transform .25s var(--ease-out-5),opacity .25s var(--ease-out-5)}@supports (transition-timing-function: linear(0,1)){.et-menu-container .et-menu-body.et-animation-enter-active{transition:transform .25s var(--ease-spring-1),opacity .25s var(--ease-spring-1)}}.et-menu-container .et-menu-body.et-animation-leave-active{transition:transform .1s var(--ease-in-5),opacity .1s var(--ease-in-5)}.et-menu-container[et-floating-placement=bottom] .et-menu-body.et-animation-enter-to,.et-menu-container[et-floating-placement=bottom] .et-menu-body.et-animation-leave-to{transform-origin:top center}.et-menu-container[et-floating-placement=bottom-start] .et-menu-body.et-animation-enter-to,.et-menu-container[et-floating-placement=bottom-start] .et-menu-body.et-animation-leave-to{transform-origin:top left}.et-menu-container[et-floating-placement=bottom-end] .et-menu-body.et-animation-enter-to,.et-menu-container[et-floating-placement=bottom-end] .et-menu-body.et-animation-leave-to{transform-origin:top right}.et-menu-container[et-floating-placement=top] .et-menu-body.et-animation-enter-to,.et-menu-container[et-floating-placement=top] .et-menu-body.et-animation-leave-to{transform-origin:bottom center}.et-menu-container[et-floating-placement=top-start] .et-menu-body.et-animation-enter-to,.et-menu-container[et-floating-placement=top-start] .et-menu-body.et-animation-leave-to{transform-origin:bottom left}.et-menu-container[et-floating-placement=top-end] .et-menu-body.et-animation-enter-to,.et-menu-container[et-floating-placement=top-end] .et-menu-body.et-animation-leave-to{transform-origin:bottom right}\n"], dependencies: [{ kind: "directive", type: AnimatedLifecycleDirective, selector: "[etAnimatedLifecycle]", exportAs: ["etAnimatedLifecycle"] }, { kind: "directive", type: NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
32
+ }
33
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.0.9", ngImport: i0, type: MenuContainerComponent, decorators: [{
34
+ type: Component,
35
+ args: [{ selector: 'et-menu-container', standalone: true, changeDetection: ChangeDetectionStrategy.OnPush, encapsulation: ViewEncapsulation.None, host: {
36
+ class: 'et-menu-container',
37
+ }, imports: [AnimatedLifecycleDirective, NgTemplateOutlet], hostDirectives: [ProvideThemeDirective], providers: [
38
+ {
39
+ provide: MENU_CONTAINER,
40
+ useExisting: MenuContainerComponent,
41
+ },
42
+ ], template: "<div class=\"et-menu-body\" etAnimatedLifecycle>\n <ng-container *ngTemplateOutlet=\"_menuTemplate; injector: injector\" />\n</div>\n", styles: [".et-menu-container{display:block;transform:var(--et-floating-translate);will-change:transform}.et-menu-container .et-menu-body.et-animation-enter-from,.et-menu-container .et-menu-body.et-animation-leave-to{opacity:0;transform:scale(0)}.et-menu-container .et-menu-body.et-animation-enter-active{transition:transform .25s var(--ease-out-5),opacity .25s var(--ease-out-5)}@supports (transition-timing-function: linear(0,1)){.et-menu-container .et-menu-body.et-animation-enter-active{transition:transform .25s var(--ease-spring-1),opacity .25s var(--ease-spring-1)}}.et-menu-container .et-menu-body.et-animation-leave-active{transition:transform .1s var(--ease-in-5),opacity .1s var(--ease-in-5)}.et-menu-container[et-floating-placement=bottom] .et-menu-body.et-animation-enter-to,.et-menu-container[et-floating-placement=bottom] .et-menu-body.et-animation-leave-to{transform-origin:top center}.et-menu-container[et-floating-placement=bottom-start] .et-menu-body.et-animation-enter-to,.et-menu-container[et-floating-placement=bottom-start] .et-menu-body.et-animation-leave-to{transform-origin:top left}.et-menu-container[et-floating-placement=bottom-end] .et-menu-body.et-animation-enter-to,.et-menu-container[et-floating-placement=bottom-end] .et-menu-body.et-animation-leave-to{transform-origin:top right}.et-menu-container[et-floating-placement=top] .et-menu-body.et-animation-enter-to,.et-menu-container[et-floating-placement=top] .et-menu-body.et-animation-leave-to{transform-origin:bottom center}.et-menu-container[et-floating-placement=top-start] .et-menu-body.et-animation-enter-to,.et-menu-container[et-floating-placement=top-start] .et-menu-body.et-animation-leave-to{transform-origin:bottom left}.et-menu-container[et-floating-placement=top-end] .et-menu-body.et-animation-enter-to,.et-menu-container[et-floating-placement=top-end] .et-menu-body.et-animation-leave-to{transform-origin:bottom right}\n"] }]
43
+ }], propDecorators: { _animatedLifecycle: [{
44
+ type: ViewChild,
45
+ args: [ANIMATED_LIFECYCLE_TOKEN, { static: true }]
46
+ }] } });
47
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWVudS1jb250YWluZXIuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9jZGsvc3JjL2xpYi9jb21wb25lbnRzL292ZXJsYXkvY29tcG9uZW50cy9tZW51L2NvbXBvbmVudHMvbWVudS1jb250YWluZXIvbWVudS1jb250YWluZXIuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9jZGsvc3JjL2xpYi9jb21wb25lbnRzL292ZXJsYXkvY29tcG9uZW50cy9tZW51L2NvbXBvbmVudHMvbWVudS1jb250YWluZXIvbWVudS1jb250YWluZXIuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDbkQsT0FBTyxFQUNMLHVCQUF1QixFQUN2QixpQkFBaUIsRUFDakIsU0FBUyxFQUNULFVBQVUsRUFDVixjQUFjLEVBQ2QsUUFBUSxFQUVSLFNBQVMsRUFDVCxpQkFBaUIsRUFDakIsTUFBTSxHQUNQLE1BQU0sZUFBZSxDQUFDO0FBQ3ZCLE9BQU8sRUFBRSx3QkFBd0IsRUFBRSwwQkFBMEIsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUNyRixPQUFPLEVBQUUscUJBQXFCLEVBQUUsY0FBYyxFQUFFLE1BQU0sa0JBQWtCLENBQUM7QUFDekUsT0FBTyxFQUFFLGtCQUFrQixFQUFFLE1BQU0sa0JBQWtCLENBQUM7OztBQUV0RCxNQUFNLENBQUMsTUFBTSxjQUFjLEdBQUcsSUFBSSxjQUFjLENBQXlCLG1CQUFtQixDQUFDLENBQUM7QUFDOUYsTUFBTSxDQUFDLE1BQU0sYUFBYSxHQUFHLElBQUksY0FBYyxDQUF1QixlQUFlLENBQUMsQ0FBQztBQXFCdkYsTUFBTSxPQUFPLHNCQUFzQjtJQW5CbkM7UUF1Qm1CLG1CQUFjLEdBQUcsTUFBTSxDQUFDLGNBQWMsQ0FBQyxDQUFDO1FBQ3RDLGFBQVEsR0FBRyxNQUFNLENBQUMsUUFBUSxDQUFDLENBQUM7UUFDOUIsU0FBSSxHQUFHLE1BQU0sQ0FBQyxpQkFBaUIsQ0FBQyxDQUFDO1FBQ3pDLGFBQVEsR0FBRyxNQUFNLENBQUMsa0JBQWtCLENBQUMsQ0FBQztRQUN0QyxnQkFBVyxHQUFHLE1BQU0sQ0FBMEIsVUFBVSxDQUFDLENBQUM7UUFFMUQsa0JBQWEsR0FBRyxNQUFNLENBQUMsYUFBYSxDQUFDLENBQUM7S0FTaEQ7SUFQQyxhQUFhO1FBQ1gsSUFBSSxDQUFDLElBQUksQ0FBQyxZQUFZLEVBQUUsQ0FBQztJQUMzQixDQUFDO0lBRUQscUJBQXFCLENBQUMsUUFBK0I7UUFDbkQsSUFBSSxDQUFDLGNBQWMsQ0FBQyxnQkFBZ0IsQ0FBQyxRQUFRLENBQUMsQ0FBQztJQUNqRCxDQUFDOzhHQWxCVSxzQkFBc0I7a0dBQXRCLHNCQUFzQiwrR0FQdEI7WUFDVDtnQkFDRSxPQUFPLEVBQUUsY0FBYztnQkFDdkIsV0FBVyxFQUFFLHNCQUFzQjthQUNwQztTQUNGLDhFQUdVLHdCQUF3Qix5SEN4Q3JDLHdJQUdBLDY2REQyQlksMEJBQTBCLHFHQUFFLGdCQUFnQjs7MkZBUzNDLHNCQUFzQjtrQkFuQmxDLFNBQVM7K0JBQ0UsbUJBQW1CLGNBR2pCLElBQUksbUJBQ0MsdUJBQXVCLENBQUMsTUFBTSxpQkFDaEMsaUJBQWlCLENBQUMsSUFBSSxRQUMvQjt3QkFDSixLQUFLLEVBQUUsbUJBQW1CO3FCQUMzQixXQUNRLENBQUMsMEJBQTBCLEVBQUUsZ0JBQWdCLENBQUMsa0JBQ3ZDLENBQUMscUJBQXFCLENBQUMsYUFDNUI7d0JBQ1Q7NEJBQ0UsT0FBTyxFQUFFLGNBQWM7NEJBQ3ZCLFdBQVcsd0JBQXdCO3lCQUNwQztxQkFDRjs4QkFJUSxrQkFBa0I7c0JBRDFCLFNBQVM7dUJBQUMsd0JBQXdCLEVBQUUsRUFBRSxNQUFNLEVBQUUsSUFBSSxFQUFFIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgTmdUZW1wbGF0ZU91dGxldCB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XG5pbXBvcnQge1xuICBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSxcbiAgQ2hhbmdlRGV0ZWN0b3JSZWYsXG4gIENvbXBvbmVudCxcbiAgRWxlbWVudFJlZixcbiAgSW5qZWN0aW9uVG9rZW4sXG4gIEluamVjdG9yLFxuICBUZW1wbGF0ZVJlZixcbiAgVmlld0NoaWxkLFxuICBWaWV3RW5jYXBzdWxhdGlvbixcbiAgaW5qZWN0LFxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IEFOSU1BVEVEX0xJRkVDWUNMRV9UT0tFTiwgQW5pbWF0ZWRMaWZlY3ljbGVEaXJlY3RpdmUgfSBmcm9tICdAZXRobGV0ZS9jb3JlJztcbmltcG9ydCB7IFByb3ZpZGVUaGVtZURpcmVjdGl2ZSwgVEhFTUVfUFJPVklERVIgfSBmcm9tICdAZXRobGV0ZS90aGVtaW5nJztcbmltcG9ydCB7IE1FTlVfVFJJR0dFUl9UT0tFTiB9IGZyb20gJy4uLy4uL2RpcmVjdGl2ZXMnO1xuXG5leHBvcnQgY29uc3QgTUVOVV9DT05UQUlORVIgPSBuZXcgSW5qZWN0aW9uVG9rZW48TWVudUNvbnRhaW5lckNvbXBvbmVudD4oJ0VUX01FTlVfQ09OVEFJTkVSJyk7XG5leHBvcnQgY29uc3QgTUVOVV9URU1QTEFURSA9IG5ldyBJbmplY3Rpb25Ub2tlbjxUZW1wbGF0ZVJlZjx1bmtub3duPj4oJ01FTlVfVEVNUExBVEUnKTtcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnZXQtbWVudS1jb250YWluZXInLFxuICB0ZW1wbGF0ZVVybDogJy4vbWVudS1jb250YWluZXIuY29tcG9uZW50Lmh0bWwnLFxuICBzdHlsZVVybDogJy4vbWVudS1jb250YWluZXIuY29tcG9uZW50LnNjc3MnLFxuICBzdGFuZGFsb25lOiB0cnVlLFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbiAgZW5jYXBzdWxhdGlvbjogVmlld0VuY2Fwc3VsYXRpb24uTm9uZSxcbiAgaG9zdDoge1xuICAgIGNsYXNzOiAnZXQtbWVudS1jb250YWluZXInLFxuICB9LFxuICBpbXBvcnRzOiBbQW5pbWF0ZWRMaWZlY3ljbGVEaXJlY3RpdmUsIE5nVGVtcGxhdGVPdXRsZXRdLFxuICBob3N0RGlyZWN0aXZlczogW1Byb3ZpZGVUaGVtZURpcmVjdGl2ZV0sXG4gIHByb3ZpZGVyczogW1xuICAgIHtcbiAgICAgIHByb3ZpZGU6IE1FTlVfQ09OVEFJTkVSLFxuICAgICAgdXNlRXhpc3Rpbmc6IE1lbnVDb250YWluZXJDb21wb25lbnQsXG4gICAgfSxcbiAgXSxcbn0pXG5leHBvcnQgY2xhc3MgTWVudUNvbnRhaW5lckNvbXBvbmVudCB7XG4gIEBWaWV3Q2hpbGQoQU5JTUFURURfTElGRUNZQ0xFX1RPS0VOLCB7IHN0YXRpYzogdHJ1ZSB9KVxuICByZWFkb25seSBfYW5pbWF0ZWRMaWZlY3ljbGU/OiBBbmltYXRlZExpZmVjeWNsZURpcmVjdGl2ZTtcblxuICBwcml2YXRlIHJlYWRvbmx5IF90aGVtZVByb3ZpZGVyID0gaW5qZWN0KFRIRU1FX1BST1ZJREVSKTtcbiAgcHJvdGVjdGVkIHJlYWRvbmx5IGluamVjdG9yID0gaW5qZWN0KEluamVjdG9yKTtcbiAgcHJpdmF0ZSByZWFkb25seSBfY2RyID0gaW5qZWN0KENoYW5nZURldGVjdG9yUmVmKTtcbiAgcmVhZG9ubHkgX3RyaWdnZXIgPSBpbmplY3QoTUVOVV9UUklHR0VSX1RPS0VOKTtcbiAgcmVhZG9ubHkgX2VsZW1lbnRSZWYgPSBpbmplY3Q8RWxlbWVudFJlZjxIVE1MRWxlbWVudD4+KEVsZW1lbnRSZWYpO1xuXG4gIHJlYWRvbmx5IF9tZW51VGVtcGxhdGUgPSBpbmplY3QoTUVOVV9URU1QTEFURSk7XG5cbiAgX21hcmtGb3JDaGVjaygpIHtcbiAgICB0aGlzLl9jZHIubWFya0ZvckNoZWNrKCk7XG4gIH1cblxuICBfc2V0VGhlbWVGcm9tUHJvdmlkZXIocHJvdmlkZXI6IFByb3ZpZGVUaGVtZURpcmVjdGl2ZSkge1xuICAgIHRoaXMuX3RoZW1lUHJvdmlkZXIuc3luY1dpdGhQcm92aWRlcihwcm92aWRlcik7XG4gIH1cbn1cbiIsIjxkaXYgY2xhc3M9XCJldC1tZW51LWJvZHlcIiBldEFuaW1hdGVkTGlmZWN5Y2xlPlxuICA8bmctY29udGFpbmVyICpuZ1RlbXBsYXRlT3V0bGV0PVwiX21lbnVUZW1wbGF0ZTsgaW5qZWN0b3I6IGluamVjdG9yXCIgLz5cbjwvZGl2PlxuIl19
@@ -0,0 +1,2 @@
1
+ export * from './menu-container.component';
2
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHVibGljLWFwaS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvY2RrL3NyYy9saWIvY29tcG9uZW50cy9vdmVybGF5L2NvbXBvbmVudHMvbWVudS9jb21wb25lbnRzL21lbnUtY29udGFpbmVyL3B1YmxpYy1hcGkudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsY0FBYyw0QkFBNEIsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCAqIGZyb20gJy4vbWVudS1jb250YWluZXIuY29tcG9uZW50JztcbiJdfQ==
@@ -0,0 +1,61 @@
1
+ import { ENTER, SPACE } from '@angular/cdk/keycodes';
2
+ import { AsyncPipe, NgClass } from '@angular/common';
3
+ import { ChangeDetectionStrategy, Component, ElementRef, ViewEncapsulation, inject } from '@angular/core';
4
+ import { takeUntilDestroyed, toSignal } from '@angular/core/rxjs-interop';
5
+ import { signalHostAttributes } from '@ethlete/core';
6
+ import { filter, fromEvent, merge } from 'rxjs';
7
+ import { InputBase, InputDirective, NativeInputRefDirective, RADIO_TOKEN, RadioDirective, StaticFormFieldDirective, } from '../../../../../forms';
8
+ import { MENU_ITEM_TOKEN, MENU_TRIGGER_TOKEN, MenuItemDirective } from '../../directives';
9
+ import * as i0 from "@angular/core";
10
+ import * as i1 from "../../../../../forms/directives/native-input-ref/native-input-ref.directive";
11
+ import * as i2 from "../../../../../forms/directives/static-form-field/static-form-field.directive";
12
+ import * as i3 from "../../directives/menu-item/menu-item.directive";
13
+ import * as i4 from "../../../../../forms/components/radio/directives/radio/radio.directive";
14
+ import * as i5 from "../../../../../forms/directives/input/input.directive";
15
+ export class MenuRadioItemComponent extends InputBase {
16
+ constructor() {
17
+ super();
18
+ this._elementRef = inject(ElementRef);
19
+ this._trigger = inject(MENU_TRIGGER_TOKEN);
20
+ this.radio = inject(RADIO_TOKEN);
21
+ this.menuItem = inject(MENU_ITEM_TOKEN);
22
+ this.hostAttributeBindings = signalHostAttributes({
23
+ 'aria-checked': toSignal(this.radio.checked$),
24
+ 'aria-required': toSignal(this.input.required$),
25
+ 'aria-disabled': toSignal(this.input.disabled$),
26
+ 'aria-describedby': toSignal(this.input.describedBy$),
27
+ });
28
+ merge(fromEvent(this._elementRef.nativeElement, 'click'), fromEvent(this._elementRef.nativeElement, 'keydown').pipe(filter((e) => e.keyCode === SPACE || e.keyCode === ENTER)))
29
+ .pipe(takeUntilDestroyed())
30
+ .subscribe((e) => {
31
+ if ('keyCode' in e) {
32
+ e.preventDefault();
33
+ if (e.keyCode === ENTER) {
34
+ this._trigger.unmount();
35
+ }
36
+ }
37
+ this.radio._onInputInteraction(e);
38
+ });
39
+ fromEvent(this._elementRef.nativeElement, 'blur')
40
+ .pipe(takeUntilDestroyed())
41
+ .subscribe(() => this.radio._controlTouched());
42
+ this.menuItem._disableCloseOnInteraction();
43
+ }
44
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.0.9", ngImport: i0, type: MenuRadioItemComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
45
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.0.9", type: MenuRadioItemComponent, isStandalone: true, selector: "et-menu-radio-item", host: { attributes: { "role": "menuitemradio" }, properties: { "id": "input.id" }, classAttribute: "et-menu-radio-item" }, usesInheritance: true, hostDirectives: [{ directive: i1.NativeInputRefDirective }, { directive: i2.StaticFormFieldDirective }, { directive: i3.MenuItemDirective }, { directive: i4.RadioDirective, inputs: ["value", "value", "disabled", "disabled"] }, { directive: i5.InputDirective, inputs: ["autocomplete", "autocomplete"] }], ngImport: i0, template: "<div class=\"et-menu-radio\">\n <div [ngClass]=\"{ 'et-menu-radio-check--active': radio.checked$ | async }\" class=\"et-menu-radio-check\"></div>\n</div>\n\n<ng-content />\n", styles: [":where(.et-menu-radio){--et-menu-radio-size: 25px;--et-menu-radio-check-size: 10px;--et-menu-radio-border-radius: 50%;--et-menu-radio-border-color: #e5e5e5;--et-menu-radio-state-color: #e5e5e5;inline-size:var(--et-menu-radio-size);block-size:var(--et-menu-radio-size);border:1px solid var(--et-menu-radio-border-color);border-radius:var(--et-menu-radio-border-radius);display:inline-grid}:where(.et-menu-radio-check){inline-size:var(--et-menu-radio-check-size);block-size:var(--et-menu-radio-check-size);border-radius:var(--et-menu-radio-border-radius)}:where(.et-menu-radio-check).et-menu-radio-check--active{background-color:var(--et-menu-radio-state-color)}.et-menu-radio-item{display:block}.et-menu-radio{position:relative;align-items:center;justify-items:center}.et-menu-radio-check{grid-area:1/1/2/2}\n"], dependencies: [{ kind: "directive", type: NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "pipe", type: AsyncPipe, name: "async" }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
46
+ }
47
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.0.9", ngImport: i0, type: MenuRadioItemComponent, decorators: [{
48
+ type: Component,
49
+ args: [{ selector: 'et-menu-radio-item', standalone: true, changeDetection: ChangeDetectionStrategy.OnPush, encapsulation: ViewEncapsulation.None, host: {
50
+ class: 'et-menu-radio-item',
51
+ role: 'menuitemradio',
52
+ '[id]': 'input.id',
53
+ }, imports: [NgClass, AsyncPipe], hostDirectives: [
54
+ NativeInputRefDirective,
55
+ StaticFormFieldDirective,
56
+ MenuItemDirective,
57
+ { directive: RadioDirective, inputs: ['value', 'disabled'] },
58
+ { directive: InputDirective, inputs: ['autocomplete'] },
59
+ ], template: "<div class=\"et-menu-radio\">\n <div [ngClass]=\"{ 'et-menu-radio-check--active': radio.checked$ | async }\" class=\"et-menu-radio-check\"></div>\n</div>\n\n<ng-content />\n", styles: [":where(.et-menu-radio){--et-menu-radio-size: 25px;--et-menu-radio-check-size: 10px;--et-menu-radio-border-radius: 50%;--et-menu-radio-border-color: #e5e5e5;--et-menu-radio-state-color: #e5e5e5;inline-size:var(--et-menu-radio-size);block-size:var(--et-menu-radio-size);border:1px solid var(--et-menu-radio-border-color);border-radius:var(--et-menu-radio-border-radius);display:inline-grid}:where(.et-menu-radio-check){inline-size:var(--et-menu-radio-check-size);block-size:var(--et-menu-radio-check-size);border-radius:var(--et-menu-radio-border-radius)}:where(.et-menu-radio-check).et-menu-radio-check--active{background-color:var(--et-menu-radio-state-color)}.et-menu-radio-item{display:block}.et-menu-radio{position:relative;align-items:center;justify-items:center}.et-menu-radio-check{grid-area:1/1/2/2}\n"] }]
60
+ }], ctorParameters: () => [] });
61
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWVudS1yYWRpby1pdGVtLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvY2RrL3NyYy9saWIvY29tcG9uZW50cy9vdmVybGF5L2NvbXBvbmVudHMvbWVudS9jb21wb25lbnRzL21lbnUtcmFkaW8taXRlbS9tZW51LXJhZGlvLWl0ZW0uY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9jZGsvc3JjL2xpYi9jb21wb25lbnRzL292ZXJsYXkvY29tcG9uZW50cy9tZW51L2NvbXBvbmVudHMvbWVudS1yYWRpby1pdGVtL21lbnUtcmFkaW8taXRlbS5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsS0FBSyxFQUFFLEtBQUssRUFBRSxNQUFNLHVCQUF1QixDQUFDO0FBQ3JELE9BQU8sRUFBRSxTQUFTLEVBQUUsT0FBTyxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDckQsT0FBTyxFQUFFLHVCQUF1QixFQUFFLFNBQVMsRUFBRSxVQUFVLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQzFHLE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxRQUFRLEVBQUUsTUFBTSw0QkFBNEIsQ0FBQztBQUMxRSxPQUFPLEVBQUUsb0JBQW9CLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDckQsT0FBTyxFQUFFLE1BQU0sRUFBRSxTQUFTLEVBQUUsS0FBSyxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBQ2hELE9BQU8sRUFDTCxTQUFTLEVBQ1QsY0FBYyxFQUNkLHVCQUF1QixFQUN2QixXQUFXLEVBQ1gsY0FBYyxFQUNkLHdCQUF3QixHQUN6QixNQUFNLHNCQUFzQixDQUFDO0FBQzlCLE9BQU8sRUFBRSxlQUFlLEVBQUUsa0JBQWtCLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSxrQkFBa0IsQ0FBQzs7Ozs7OztBQXVCMUYsTUFBTSxPQUFPLHNCQUF1QixTQUFRLFNBQVM7SUFjbkQ7UUFDRSxLQUFLLEVBQUUsQ0FBQztRQWRPLGdCQUFXLEdBQUcsTUFBTSxDQUEwQixVQUFVLENBQUMsQ0FBQztRQUMxRCxhQUFRLEdBQUcsTUFBTSxDQUFDLGtCQUFrQixDQUFDLENBQUM7UUFFcEMsVUFBSyxHQUFHLE1BQU0sQ0FBQyxXQUFXLENBQUMsQ0FBQztRQUM1QixhQUFRLEdBQUcsTUFBTSxDQUFDLGVBQWUsQ0FBQyxDQUFDO1FBRTdDLDBCQUFxQixHQUFHLG9CQUFvQixDQUFDO1lBQ3BELGNBQWMsRUFBRSxRQUFRLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxRQUFRLENBQUM7WUFDN0MsZUFBZSxFQUFFLFFBQVEsQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLFNBQVMsQ0FBQztZQUMvQyxlQUFlLEVBQUUsUUFBUSxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsU0FBUyxDQUFDO1lBQy9DLGtCQUFrQixFQUFFLFFBQVEsQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLFlBQVksQ0FBQztTQUN0RCxDQUFDLENBQUM7UUFLRCxLQUFLLENBQ0gsU0FBUyxDQUFDLElBQUksQ0FBQyxXQUFXLENBQUMsYUFBYSxFQUFFLE9BQU8sQ0FBQyxFQUNsRCxTQUFTLENBQWdCLElBQUksQ0FBQyxXQUFXLENBQUMsYUFBYSxFQUFFLFNBQVMsQ0FBQyxDQUFDLElBQUksQ0FDdEUsTUFBTSxDQUFDLENBQUMsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxDQUFDLENBQUMsT0FBTyxLQUFLLEtBQUssSUFBSSxDQUFDLENBQUMsT0FBTyxLQUFLLEtBQUssQ0FBQyxDQUMxRCxDQUNGO2FBQ0UsSUFBSSxDQUFDLGtCQUFrQixFQUFFLENBQUM7YUFDMUIsU0FBUyxDQUFDLENBQUMsQ0FBQyxFQUFFLEVBQUU7WUFDZixJQUFJLFNBQVMsSUFBSSxDQUFDLEVBQUU7Z0JBQ2xCLENBQUMsQ0FBQyxjQUFjLEVBQUUsQ0FBQztnQkFFbkIsSUFBSSxDQUFDLENBQUMsT0FBTyxLQUFLLEtBQUssRUFBRTtvQkFDdkIsSUFBSSxDQUFDLFFBQVEsQ0FBQyxPQUFPLEVBQUUsQ0FBQztpQkFDekI7YUFDRjtZQUVELElBQUksQ0FBQyxLQUFLLENBQUMsbUJBQW1CLENBQUMsQ0FBQyxDQUFDLENBQUM7UUFDcEMsQ0FBQyxDQUFDLENBQUM7UUFFTCxTQUFTLENBQUMsSUFBSSxDQUFDLFdBQVcsQ0FBQyxhQUFhLEVBQUUsTUFBTSxDQUFDO2FBQzlDLElBQUksQ0FBQyxrQkFBa0IsRUFBRSxDQUFDO2FBQzFCLFNBQVMsQ0FBQyxHQUFHLEVBQUUsQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLGVBQWUsRUFBRSxDQUFDLENBQUM7UUFFakQsSUFBSSxDQUFDLFFBQVEsQ0FBQywwQkFBMEIsRUFBRSxDQUFDO0lBQzdDLENBQUM7OEdBekNVLHNCQUFzQjtrR0FBdEIsc0JBQXNCLGdoQkNyQ25DLGdMQUtBLGsyQkR1QlksT0FBTywrRUFBRSxTQUFTOzsyRkFTakIsc0JBQXNCO2tCQXJCbEMsU0FBUzsrQkFDRSxvQkFBb0IsY0FHbEIsSUFBSSxtQkFDQyx1QkFBdUIsQ0FBQyxNQUFNLGlCQUNoQyxpQkFBaUIsQ0FBQyxJQUFJLFFBQy9CO3dCQUNKLEtBQUssRUFBRSxvQkFBb0I7d0JBQzNCLElBQUksRUFBRSxlQUFlO3dCQUNyQixNQUFNLEVBQUUsVUFBVTtxQkFDbkIsV0FDUSxDQUFDLE9BQU8sRUFBRSxTQUFTLENBQUMsa0JBQ2I7d0JBQ2QsdUJBQXVCO3dCQUN2Qix3QkFBd0I7d0JBQ3hCLGlCQUFpQjt3QkFDakIsRUFBRSxTQUFTLEVBQUUsY0FBYyxFQUFFLE1BQU0sRUFBRSxDQUFDLE9BQU8sRUFBRSxVQUFVLENBQUMsRUFBRTt3QkFDNUQsRUFBRSxTQUFTLEVBQUUsY0FBYyxFQUFFLE1BQU0sRUFBRSxDQUFDLGNBQWMsQ0FBQyxFQUFFO3FCQUN4RCIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEVOVEVSLCBTUEFDRSB9IGZyb20gJ0Bhbmd1bGFyL2Nkay9rZXljb2Rlcyc7XG5pbXBvcnQgeyBBc3luY1BpcGUsIE5nQ2xhc3MgfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xuaW1wb3J0IHsgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksIENvbXBvbmVudCwgRWxlbWVudFJlZiwgVmlld0VuY2Fwc3VsYXRpb24sIGluamVjdCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgdGFrZVVudGlsRGVzdHJveWVkLCB0b1NpZ25hbCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUvcnhqcy1pbnRlcm9wJztcbmltcG9ydCB7IHNpZ25hbEhvc3RBdHRyaWJ1dGVzIH0gZnJvbSAnQGV0aGxldGUvY29yZSc7XG5pbXBvcnQgeyBmaWx0ZXIsIGZyb21FdmVudCwgbWVyZ2UgfSBmcm9tICdyeGpzJztcbmltcG9ydCB7XG4gIElucHV0QmFzZSxcbiAgSW5wdXREaXJlY3RpdmUsXG4gIE5hdGl2ZUlucHV0UmVmRGlyZWN0aXZlLFxuICBSQURJT19UT0tFTixcbiAgUmFkaW9EaXJlY3RpdmUsXG4gIFN0YXRpY0Zvcm1GaWVsZERpcmVjdGl2ZSxcbn0gZnJvbSAnLi4vLi4vLi4vLi4vLi4vZm9ybXMnO1xuaW1wb3J0IHsgTUVOVV9JVEVNX1RPS0VOLCBNRU5VX1RSSUdHRVJfVE9LRU4sIE1lbnVJdGVtRGlyZWN0aXZlIH0gZnJvbSAnLi4vLi4vZGlyZWN0aXZlcyc7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2V0LW1lbnUtcmFkaW8taXRlbScsXG4gIHRlbXBsYXRlVXJsOiAnLi9tZW51LXJhZGlvLWl0ZW0uY29tcG9uZW50Lmh0bWwnLFxuICBzdHlsZVVybDogJy4vbWVudS1yYWRpby1pdGVtLmNvbXBvbmVudC5zY3NzJyxcbiAgc3RhbmRhbG9uZTogdHJ1ZSxcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG4gIGVuY2Fwc3VsYXRpb246IFZpZXdFbmNhcHN1bGF0aW9uLk5vbmUsXG4gIGhvc3Q6IHtcbiAgICBjbGFzczogJ2V0LW1lbnUtcmFkaW8taXRlbScsXG4gICAgcm9sZTogJ21lbnVpdGVtcmFkaW8nLFxuICAgICdbaWRdJzogJ2lucHV0LmlkJyxcbiAgfSxcbiAgaW1wb3J0czogW05nQ2xhc3MsIEFzeW5jUGlwZV0sXG4gIGhvc3REaXJlY3RpdmVzOiBbXG4gICAgTmF0aXZlSW5wdXRSZWZEaXJlY3RpdmUsXG4gICAgU3RhdGljRm9ybUZpZWxkRGlyZWN0aXZlLFxuICAgIE1lbnVJdGVtRGlyZWN0aXZlLFxuICAgIHsgZGlyZWN0aXZlOiBSYWRpb0RpcmVjdGl2ZSwgaW5wdXRzOiBbJ3ZhbHVlJywgJ2Rpc2FibGVkJ10gfSxcbiAgICB7IGRpcmVjdGl2ZTogSW5wdXREaXJlY3RpdmUsIGlucHV0czogWydhdXRvY29tcGxldGUnXSB9LFxuICBdLFxufSlcbmV4cG9ydCBjbGFzcyBNZW51UmFkaW9JdGVtQ29tcG9uZW50IGV4dGVuZHMgSW5wdXRCYXNlIHtcbiAgcHJpdmF0ZSByZWFkb25seSBfZWxlbWVudFJlZiA9IGluamVjdDxFbGVtZW50UmVmPEhUTUxFbGVtZW50Pj4oRWxlbWVudFJlZik7XG4gIHByaXZhdGUgcmVhZG9ubHkgX3RyaWdnZXIgPSBpbmplY3QoTUVOVV9UUklHR0VSX1RPS0VOKTtcblxuICBwcm90ZWN0ZWQgcmVhZG9ubHkgcmFkaW8gPSBpbmplY3QoUkFESU9fVE9LRU4pO1xuICBwcm90ZWN0ZWQgcmVhZG9ubHkgbWVudUl0ZW0gPSBpbmplY3QoTUVOVV9JVEVNX1RPS0VOKTtcblxuICByZWFkb25seSBob3N0QXR0cmlidXRlQmluZGluZ3MgPSBzaWduYWxIb3N0QXR0cmlidXRlcyh7XG4gICAgJ2FyaWEtY2hlY2tlZCc6IHRvU2lnbmFsKHRoaXMucmFkaW8uY2hlY2tlZCQpLFxuICAgICdhcmlhLXJlcXVpcmVkJzogdG9TaWduYWwodGhpcy5pbnB1dC5yZXF1aXJlZCQpLFxuICAgICdhcmlhLWRpc2FibGVkJzogdG9TaWduYWwodGhpcy5pbnB1dC5kaXNhYmxlZCQpLFxuICAgICdhcmlhLWRlc2NyaWJlZGJ5JzogdG9TaWduYWwodGhpcy5pbnB1dC5kZXNjcmliZWRCeSQpLFxuICB9KTtcblxuICBjb25zdHJ1Y3RvcigpIHtcbiAgICBzdXBlcigpO1xuXG4gICAgbWVyZ2UoXG4gICAgICBmcm9tRXZlbnQodGhpcy5fZWxlbWVudFJlZi5uYXRpdmVFbGVtZW50LCAnY2xpY2snKSxcbiAgICAgIGZyb21FdmVudDxLZXlib2FyZEV2ZW50Pih0aGlzLl9lbGVtZW50UmVmLm5hdGl2ZUVsZW1lbnQsICdrZXlkb3duJykucGlwZShcbiAgICAgICAgZmlsdGVyKChlKSA9PiBlLmtleUNvZGUgPT09IFNQQUNFIHx8IGUua2V5Q29kZSA9PT0gRU5URVIpLFxuICAgICAgKSxcbiAgICApXG4gICAgICAucGlwZSh0YWtlVW50aWxEZXN0cm95ZWQoKSlcbiAgICAgIC5zdWJzY3JpYmUoKGUpID0+IHtcbiAgICAgICAgaWYgKCdrZXlDb2RlJyBpbiBlKSB7XG4gICAgICAgICAgZS5wcmV2ZW50RGVmYXVsdCgpO1xuXG4gICAgICAgICAgaWYgKGUua2V5Q29kZSA9PT0gRU5URVIpIHtcbiAgICAgICAgICAgIHRoaXMuX3RyaWdnZXIudW5tb3VudCgpO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIHRoaXMucmFkaW8uX29uSW5wdXRJbnRlcmFjdGlvbihlKTtcbiAgICAgIH0pO1xuXG4gICAgZnJvbUV2ZW50KHRoaXMuX2VsZW1lbnRSZWYubmF0aXZlRWxlbWVudCwgJ2JsdXInKVxuICAgICAgLnBpcGUodGFrZVVudGlsRGVzdHJveWVkKCkpXG4gICAgICAuc3Vic2NyaWJlKCgpID0+IHRoaXMucmFkaW8uX2NvbnRyb2xUb3VjaGVkKCkpO1xuXG4gICAgdGhpcy5tZW51SXRlbS5fZGlzYWJsZUNsb3NlT25JbnRlcmFjdGlvbigpO1xuICB9XG59XG4iLCI8ZGl2IGNsYXNzPVwiZXQtbWVudS1yYWRpb1wiPlxuICA8ZGl2IFtuZ0NsYXNzXT1cInsgJ2V0LW1lbnUtcmFkaW8tY2hlY2stLWFjdGl2ZSc6IHJhZGlvLmNoZWNrZWQkIHwgYXN5bmMgfVwiIGNsYXNzPVwiZXQtbWVudS1yYWRpby1jaGVja1wiPjwvZGl2PlxuPC9kaXY+XG5cbjxuZy1jb250ZW50IC8+XG4iXX0=
@@ -0,0 +1,2 @@
1
+ export * from './menu-radio-item.component';
2
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHVibGljLWFwaS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvY2RrL3NyYy9saWIvY29tcG9uZW50cy9vdmVybGF5L2NvbXBvbmVudHMvbWVudS9jb21wb25lbnRzL21lbnUtcmFkaW8taXRlbS9wdWJsaWMtYXBpLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLGNBQWMsNkJBQTZCLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgKiBmcm9tICcuL21lbnUtcmFkaW8taXRlbS5jb21wb25lbnQnO1xuIl19
@@ -0,0 +1,5 @@
1
+ export * from './menu-checkbox-item/public-api';
2
+ export * from './menu-container/public-api';
3
+ export * from './menu-radio-item/public-api';
4
+ export * from './menu/public-api';
5
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHVibGljLWFwaS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvY2RrL3NyYy9saWIvY29tcG9uZW50cy9vdmVybGF5L2NvbXBvbmVudHMvbWVudS9jb21wb25lbnRzL3B1YmxpYy1hcGkudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsY0FBYyxpQ0FBaUMsQ0FBQztBQUNoRCxjQUFjLDZCQUE2QixDQUFDO0FBQzVDLGNBQWMsOEJBQThCLENBQUM7QUFDN0MsY0FBYyxtQkFBbUIsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCAqIGZyb20gJy4vbWVudS1jaGVja2JveC1pdGVtL3B1YmxpYy1hcGknO1xuZXhwb3J0ICogZnJvbSAnLi9tZW51LWNvbnRhaW5lci9wdWJsaWMtYXBpJztcbmV4cG9ydCAqIGZyb20gJy4vbWVudS1yYWRpby1pdGVtL3B1YmxpYy1hcGknO1xuZXhwb3J0ICogZnJvbSAnLi9tZW51L3B1YmxpYy1hcGknO1xuIl19
@@ -0,0 +1,2 @@
1
+ export * from './public-api';
2
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL2Nkay9zcmMvbGliL2NvbXBvbmVudHMvb3ZlcmxheS9jb21wb25lbnRzL21lbnUvZGlyZWN0aXZlcy9pbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxjQUFjLGNBQWMsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCAqIGZyb20gJy4vcHVibGljLWFwaSc7XG4iXX0=
@@ -0,0 +1,31 @@
1
+ import { Directive, InjectionToken } from '@angular/core';
2
+ import { CheckboxGroupDirective } from '../../../../../forms';
3
+ import { MenuGroupDirective } from '../menu-group';
4
+ import * as i0 from "@angular/core";
5
+ import * as i1 from "../menu-group/menu-group.directive";
6
+ import * as i2 from "../../../../../forms/components/checkbox/directives/checkbox-group/checkbox-group.directive";
7
+ export const MENU_CHECKBOX_GROUP_TOKEN = new InjectionToken('MENU_CHECKBOX_GROUP_TOKEN');
8
+ export class MenuCheckboxGroupDirective {
9
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.0.9", ngImport: i0, type: MenuCheckboxGroupDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
10
+ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "17.0.9", type: MenuCheckboxGroupDirective, isStandalone: true, selector: "et-menu-checkbox-group, [et-menu-checkbox-group], [etMenuCheckboxGroup]", providers: [
11
+ {
12
+ provide: MENU_CHECKBOX_GROUP_TOKEN,
13
+ useExisting: MenuCheckboxGroupDirective,
14
+ },
15
+ ], hostDirectives: [{ directive: i1.MenuGroupDirective }, { directive: i2.CheckboxGroupDirective }], ngImport: i0 }); }
16
+ }
17
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.0.9", ngImport: i0, type: MenuCheckboxGroupDirective, decorators: [{
18
+ type: Directive,
19
+ args: [{
20
+ selector: 'et-menu-checkbox-group, [et-menu-checkbox-group], [etMenuCheckboxGroup]',
21
+ standalone: true,
22
+ providers: [
23
+ {
24
+ provide: MENU_CHECKBOX_GROUP_TOKEN,
25
+ useExisting: MenuCheckboxGroupDirective,
26
+ },
27
+ ],
28
+ hostDirectives: [MenuGroupDirective, CheckboxGroupDirective],
29
+ }]
30
+ }] });
31
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWVudS1jaGVja2JveC1ncm91cC5kaXJlY3RpdmUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL2Nkay9zcmMvbGliL2NvbXBvbmVudHMvb3ZlcmxheS9jb21wb25lbnRzL21lbnUvZGlyZWN0aXZlcy9tZW51LWNoZWNrYm94LWdyb3VwL21lbnUtY2hlY2tib3gtZ3JvdXAuZGlyZWN0aXZlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsY0FBYyxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQzFELE9BQU8sRUFBRSxzQkFBc0IsRUFBRSxNQUFNLHNCQUFzQixDQUFDO0FBQzlELE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxNQUFNLGVBQWUsQ0FBQzs7OztBQUVuRCxNQUFNLENBQUMsTUFBTSx5QkFBeUIsR0FBRyxJQUFJLGNBQWMsQ0FBNkIsMkJBQTJCLENBQUMsQ0FBQztBQWFySCxNQUFNLE9BQU8sMEJBQTBCOzhHQUExQiwwQkFBMEI7a0dBQTFCLDBCQUEwQixzSEFSMUI7WUFDVDtnQkFDRSxPQUFPLEVBQUUseUJBQXlCO2dCQUNsQyxXQUFXLEVBQUUsMEJBQTBCO2FBQ3hDO1NBQ0Y7OzJGQUdVLDBCQUEwQjtrQkFYdEMsU0FBUzttQkFBQztvQkFDVCxRQUFRLEVBQUUseUVBQXlFO29CQUNuRixVQUFVLEVBQUUsSUFBSTtvQkFDaEIsU0FBUyxFQUFFO3dCQUNUOzRCQUNFLE9BQU8sRUFBRSx5QkFBeUI7NEJBQ2xDLFdBQVcsNEJBQTRCO3lCQUN4QztxQkFDRjtvQkFDRCxjQUFjLEVBQUUsQ0FBQyxrQkFBa0IsRUFBRSxzQkFBc0IsQ0FBQztpQkFDN0QiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBEaXJlY3RpdmUsIEluamVjdGlvblRva2VuIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBDaGVja2JveEdyb3VwRGlyZWN0aXZlIH0gZnJvbSAnLi4vLi4vLi4vLi4vLi4vZm9ybXMnO1xuaW1wb3J0IHsgTWVudUdyb3VwRGlyZWN0aXZlIH0gZnJvbSAnLi4vbWVudS1ncm91cCc7XG5cbmV4cG9ydCBjb25zdCBNRU5VX0NIRUNLQk9YX0dST1VQX1RPS0VOID0gbmV3IEluamVjdGlvblRva2VuPE1lbnVDaGVja2JveEdyb3VwRGlyZWN0aXZlPignTUVOVV9DSEVDS0JPWF9HUk9VUF9UT0tFTicpO1xuXG5ARGlyZWN0aXZlKHtcbiAgc2VsZWN0b3I6ICdldC1tZW51LWNoZWNrYm94LWdyb3VwLCBbZXQtbWVudS1jaGVja2JveC1ncm91cF0sIFtldE1lbnVDaGVja2JveEdyb3VwXScsXG4gIHN0YW5kYWxvbmU6IHRydWUsXG4gIHByb3ZpZGVyczogW1xuICAgIHtcbiAgICAgIHByb3ZpZGU6IE1FTlVfQ0hFQ0tCT1hfR1JPVVBfVE9LRU4sXG4gICAgICB1c2VFeGlzdGluZzogTWVudUNoZWNrYm94R3JvdXBEaXJlY3RpdmUsXG4gICAgfSxcbiAgXSxcbiAgaG9zdERpcmVjdGl2ZXM6IFtNZW51R3JvdXBEaXJlY3RpdmUsIENoZWNrYm94R3JvdXBEaXJlY3RpdmVdLFxufSlcbmV4cG9ydCBjbGFzcyBNZW51Q2hlY2tib3hHcm91cERpcmVjdGl2ZSB7fVxuIl19
@@ -0,0 +1,2 @@
1
+ export * from './menu-checkbox-group.directive';
2
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHVibGljLWFwaS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvY2RrL3NyYy9saWIvY29tcG9uZW50cy9vdmVybGF5L2NvbXBvbmVudHMvbWVudS9kaXJlY3RpdmVzL21lbnUtY2hlY2tib3gtZ3JvdXAvcHVibGljLWFwaS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxjQUFjLGlDQUFpQyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0ICogZnJvbSAnLi9tZW51LWNoZWNrYm94LWdyb3VwLmRpcmVjdGl2ZSc7XG4iXX0=
@@ -0,0 +1,2 @@
1
+ export * from './public-api';
2
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL2Nkay9zcmMvbGliL2NvbXBvbmVudHMvb3ZlcmxheS9jb21wb25lbnRzL21lbnUvZGlyZWN0aXZlcy9tZW51LWdyb3VwL2luZGV4LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLGNBQWMsY0FBYyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0ICogZnJvbSAnLi9wdWJsaWMtYXBpJztcbiJdfQ==
@@ -0,0 +1,43 @@
1
+ import { Directive, InjectionToken, computed, signal } from '@angular/core';
2
+ import { signalHostAttributes } from '@ethlete/core';
3
+ import * as i0 from "@angular/core";
4
+ export const MENU_GROUP_TOKEN = new InjectionToken('MENU_GROUP_TOKEN');
5
+ export class MenuGroupDirective {
6
+ constructor() {
7
+ this._currentTitle = signal(null);
8
+ this.hostAttributeBindings = signalHostAttributes({
9
+ 'aria-labelledby': computed(() => this._currentTitle()?.id),
10
+ });
11
+ }
12
+ _connectWithTitle(title) {
13
+ this._currentTitle.set(title);
14
+ }
15
+ _clearTitleConnection() {
16
+ this._currentTitle.set(null);
17
+ }
18
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.0.9", ngImport: i0, type: MenuGroupDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
19
+ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "17.0.9", type: MenuGroupDirective, isStandalone: true, selector: "et-menu-group, [et-menu-group], [etMenuGroup]", host: { attributes: { "role": "group" }, classAttribute: "et-menu-group" }, providers: [
20
+ {
21
+ provide: MENU_GROUP_TOKEN,
22
+ useExisting: MenuGroupDirective,
23
+ },
24
+ ], ngImport: i0 }); }
25
+ }
26
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.0.9", ngImport: i0, type: MenuGroupDirective, decorators: [{
27
+ type: Directive,
28
+ args: [{
29
+ selector: 'et-menu-group, [et-menu-group], [etMenuGroup]',
30
+ standalone: true,
31
+ providers: [
32
+ {
33
+ provide: MENU_GROUP_TOKEN,
34
+ useExisting: MenuGroupDirective,
35
+ },
36
+ ],
37
+ host: {
38
+ role: 'group',
39
+ class: 'et-menu-group',
40
+ },
41
+ }]
42
+ }] });
43
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWVudS1ncm91cC5kaXJlY3RpdmUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL2Nkay9zcmMvbGliL2NvbXBvbmVudHMvb3ZlcmxheS9jb21wb25lbnRzL21lbnUvZGlyZWN0aXZlcy9tZW51LWdyb3VwL21lbnUtZ3JvdXAuZGlyZWN0aXZlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsY0FBYyxFQUFFLFFBQVEsRUFBRSxNQUFNLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDNUUsT0FBTyxFQUFFLG9CQUFvQixFQUFFLE1BQU0sZUFBZSxDQUFDOztBQUdyRCxNQUFNLENBQUMsTUFBTSxnQkFBZ0IsR0FBRyxJQUFJLGNBQWMsQ0FBcUIsa0JBQWtCLENBQUMsQ0FBQztBQWdCM0YsTUFBTSxPQUFPLGtCQUFrQjtJQWQvQjtRQWVtQixrQkFBYSxHQUFHLE1BQU0sQ0FBaUMsSUFBSSxDQUFDLENBQUM7UUFFckUsMEJBQXFCLEdBQUcsb0JBQW9CLENBQUM7WUFDcEQsaUJBQWlCLEVBQUUsUUFBUSxDQUFDLEdBQUcsRUFBRSxDQUFDLElBQUksQ0FBQyxhQUFhLEVBQUUsRUFBRSxFQUFFLENBQUM7U0FDNUQsQ0FBQyxDQUFDO0tBU0o7SUFQQyxpQkFBaUIsQ0FBQyxLQUE4QjtRQUM5QyxJQUFJLENBQUMsYUFBYSxDQUFDLEdBQUcsQ0FBQyxLQUFLLENBQUMsQ0FBQztJQUNoQyxDQUFDO0lBRUQscUJBQXFCO1FBQ25CLElBQUksQ0FBQyxhQUFhLENBQUMsR0FBRyxDQUFDLElBQUksQ0FBQyxDQUFDO0lBQy9CLENBQUM7OEdBYlUsa0JBQWtCO2tHQUFsQixrQkFBa0Isd0tBWGxCO1lBQ1Q7Z0JBQ0UsT0FBTyxFQUFFLGdCQUFnQjtnQkFDekIsV0FBVyxFQUFFLGtCQUFrQjthQUNoQztTQUNGOzsyRkFNVSxrQkFBa0I7a0JBZDlCLFNBQVM7bUJBQUM7b0JBQ1QsUUFBUSxFQUFFLCtDQUErQztvQkFDekQsVUFBVSxFQUFFLElBQUk7b0JBQ2hCLFNBQVMsRUFBRTt3QkFDVDs0QkFDRSxPQUFPLEVBQUUsZ0JBQWdCOzRCQUN6QixXQUFXLG9CQUFvQjt5QkFDaEM7cUJBQ0Y7b0JBQ0QsSUFBSSxFQUFFO3dCQUNKLElBQUksRUFBRSxPQUFPO3dCQUNiLEtBQUssRUFBRSxlQUFlO3FCQUN2QjtpQkFDRiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IERpcmVjdGl2ZSwgSW5qZWN0aW9uVG9rZW4sIGNvbXB1dGVkLCBzaWduYWwgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IHNpZ25hbEhvc3RBdHRyaWJ1dGVzIH0gZnJvbSAnQGV0aGxldGUvY29yZSc7XG5pbXBvcnQgeyBNZW51R3JvdXBUaXRsZURpcmVjdGl2ZSB9IGZyb20gJy4uL21lbnUtZ3JvdXAtdGl0bGUnO1xuXG5leHBvcnQgY29uc3QgTUVOVV9HUk9VUF9UT0tFTiA9IG5ldyBJbmplY3Rpb25Ub2tlbjxNZW51R3JvdXBEaXJlY3RpdmU+KCdNRU5VX0dST1VQX1RPS0VOJyk7XG5cbkBEaXJlY3RpdmUoe1xuICBzZWxlY3RvcjogJ2V0LW1lbnUtZ3JvdXAsIFtldC1tZW51LWdyb3VwXSwgW2V0TWVudUdyb3VwXScsXG4gIHN0YW5kYWxvbmU6IHRydWUsXG4gIHByb3ZpZGVyczogW1xuICAgIHtcbiAgICAgIHByb3ZpZGU6IE1FTlVfR1JPVVBfVE9LRU4sXG4gICAgICB1c2VFeGlzdGluZzogTWVudUdyb3VwRGlyZWN0aXZlLFxuICAgIH0sXG4gIF0sXG4gIGhvc3Q6IHtcbiAgICByb2xlOiAnZ3JvdXAnLFxuICAgIGNsYXNzOiAnZXQtbWVudS1ncm91cCcsXG4gIH0sXG59KVxuZXhwb3J0IGNsYXNzIE1lbnVHcm91cERpcmVjdGl2ZSB7XG4gIHByaXZhdGUgcmVhZG9ubHkgX2N1cnJlbnRUaXRsZSA9IHNpZ25hbDxNZW51R3JvdXBUaXRsZURpcmVjdGl2ZSB8IG51bGw+KG51bGwpO1xuXG4gIHJlYWRvbmx5IGhvc3RBdHRyaWJ1dGVCaW5kaW5ncyA9IHNpZ25hbEhvc3RBdHRyaWJ1dGVzKHtcbiAgICAnYXJpYS1sYWJlbGxlZGJ5JzogY29tcHV0ZWQoKCkgPT4gdGhpcy5fY3VycmVudFRpdGxlKCk/LmlkKSxcbiAgfSk7XG5cbiAgX2Nvbm5lY3RXaXRoVGl0bGUodGl0bGU6IE1lbnVHcm91cFRpdGxlRGlyZWN0aXZlKSB7XG4gICAgdGhpcy5fY3VycmVudFRpdGxlLnNldCh0aXRsZSk7XG4gIH1cblxuICBfY2xlYXJUaXRsZUNvbm5lY3Rpb24oKSB7XG4gICAgdGhpcy5fY3VycmVudFRpdGxlLnNldChudWxsKTtcbiAgfVxufVxuIl19
@@ -0,0 +1,2 @@
1
+ export * from './menu-group.directive';
2
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHVibGljLWFwaS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvY2RrL3NyYy9saWIvY29tcG9uZW50cy9vdmVybGF5L2NvbXBvbmVudHMvbWVudS9kaXJlY3RpdmVzL21lbnUtZ3JvdXAvcHVibGljLWFwaS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxjQUFjLHdCQUF3QixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0ICogZnJvbSAnLi9tZW51LWdyb3VwLmRpcmVjdGl2ZSc7XG4iXX0=
@@ -0,0 +1,2 @@
1
+ export * from './public-api';
2
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL2Nkay9zcmMvbGliL2NvbXBvbmVudHMvb3ZlcmxheS9jb21wb25lbnRzL21lbnUvZGlyZWN0aXZlcy9tZW51LWdyb3VwLXRpdGxlL2luZGV4LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLGNBQWMsY0FBYyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0ICogZnJvbSAnLi9wdWJsaWMtYXBpJztcbiJdfQ==