@spartan-ng/brain 0.0.1-alpha.373 → 0.0.1-alpha.379

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 (398) hide show
  1. package/accordion/README.md +3 -0
  2. package/accordion/index.d.ts +13 -0
  3. package/accordion/lib/brn-accordion-content.component.d.ts +15 -0
  4. package/accordion/lib/brn-accordion.directive.d.ts +47 -0
  5. package/alert-dialog/README.md +3 -0
  6. package/alert-dialog/index.d.ts +25 -0
  7. package/alert-dialog/lib/brn-alert-dialog-content.directive.d.ts +6 -0
  8. package/alert-dialog/lib/brn-alert-dialog-description.directive.d.ts +6 -0
  9. package/alert-dialog/lib/brn-alert-dialog-overlay.component.d.ts +6 -0
  10. package/alert-dialog/lib/brn-alert-dialog-title.directive.d.ts +6 -0
  11. package/alert-dialog/lib/brn-alert-dialog-trigger.directive.d.ts +8 -0
  12. package/alert-dialog/lib/brn-alert-dialog.component.d.ts +7 -0
  13. package/avatar/README.md +3 -0
  14. package/avatar/index.d.ts +17 -0
  15. package/avatar/lib/brn-avatar.component.d.ts +7 -0
  16. package/avatar/lib/fallback/brn-avatar-fallback.directive.d.ts +11 -0
  17. package/avatar/lib/fallback/index.d.ts +1 -0
  18. package/avatar/lib/image/brn-avatar-image.directive.d.ts +9 -0
  19. package/avatar/lib/image/index.d.ts +1 -0
  20. package/avatar/lib/util/hex-color-for.d.ts +1 -0
  21. package/avatar/lib/util/index.d.ts +3 -0
  22. package/avatar/lib/util/initials.pipe.d.ts +7 -0
  23. package/avatar/lib/util/is-bright.d.ts +1 -0
  24. package/calendar/README.md +3 -0
  25. package/calendar/index.d.ts +36 -0
  26. package/calendar/lib/brn-calendar-cell-button.directive.d.ts +59 -0
  27. package/calendar/lib/brn-calendar-cell.directive.d.ts +5 -0
  28. package/calendar/lib/brn-calendar-grid.directive.d.ts +7 -0
  29. package/calendar/lib/brn-calendar-header.directive.d.ts +7 -0
  30. package/calendar/lib/brn-calendar-next-button.directive.d.ts +13 -0
  31. package/calendar/lib/brn-calendar-previous-button.directive.d.ts +13 -0
  32. package/calendar/lib/brn-calendar-week.directive.d.ts +25 -0
  33. package/calendar/lib/brn-calendar-weekday.directive.d.ts +25 -0
  34. package/calendar/lib/brn-calendar.directive.d.ts +55 -0
  35. package/calendar/lib/brn-calendar.token.d.ts +8 -0
  36. package/calendar/lib/i18n/calendar-i18n.d.ts +17 -0
  37. package/checkbox/lib/brn-checkbox.component.d.ts +1 -1
  38. package/collapsible/README.md +3 -0
  39. package/collapsible/index.d.ts +16 -0
  40. package/collapsible/lib/brn-collapsible-content.component.d.ts +19 -0
  41. package/collapsible/lib/brn-collapsible-trigger.directive.d.ts +12 -0
  42. package/collapsible/lib/brn-collapsible.component.d.ts +11 -0
  43. package/command/README.md +3 -0
  44. package/command/index.d.ts +33 -0
  45. package/command/lib/brn-command-empty.directive.d.ts +6 -0
  46. package/command/lib/brn-command-group.component.d.ts +6 -0
  47. package/command/lib/brn-command-input.directive.d.ts +6 -0
  48. package/command/lib/brn-command-item.directive.d.ts +6 -0
  49. package/command/lib/brn-command-list.component.d.ts +6 -0
  50. package/command/lib/brn-command-loader.directive.d.ts +6 -0
  51. package/command/lib/brn-command-separator.component.d.ts +6 -0
  52. package/command/lib/brn-command.component.d.ts +6 -0
  53. package/date-time/README.md +3 -0
  54. package/date-time/index.d.ts +2 -0
  55. package/date-time/lib/date-adapter.d.ts +176 -0
  56. package/date-time/lib/native-date-adapter.d.ts +103 -0
  57. package/date-time-luxon/README.md +3 -0
  58. package/date-time-luxon/index.d.ts +1 -0
  59. package/date-time-luxon/lib/date-adapter.d.ts +29 -0
  60. package/dialog/README.md +3 -0
  61. package/dialog/index.d.ts +33 -0
  62. package/dialog/lib/brn-dialog-close.directive.d.ts +10 -0
  63. package/dialog/lib/brn-dialog-content.directive.d.ts +12 -0
  64. package/dialog/lib/brn-dialog-description.directive.d.ts +8 -0
  65. package/dialog/lib/brn-dialog-options.d.ts +26 -0
  66. package/dialog/lib/brn-dialog-overlay.component.d.ts +8 -0
  67. package/dialog/lib/brn-dialog-ref.d.ts +24 -0
  68. package/dialog/lib/brn-dialog-state.d.ts +1 -0
  69. package/dialog/lib/brn-dialog-title.directive.d.ts +8 -0
  70. package/dialog/lib/brn-dialog-trigger.directive.d.ts +16 -0
  71. package/dialog/lib/brn-dialog-utils.d.ts +1 -0
  72. package/dialog/lib/brn-dialog.component.d.ts +56 -0
  73. package/dialog/lib/brn-dialog.service.d.ts +22 -0
  74. package/esm2022/accordion/index.mjs +31 -0
  75. package/esm2022/accordion/lib/brn-accordion-content.component.mjs +50 -0
  76. package/esm2022/accordion/lib/brn-accordion.directive.mjs +180 -0
  77. package/esm2022/accordion/spartan-ng-brain-accordion.mjs +5 -0
  78. package/esm2022/alert-dialog/index.mjs +45 -0
  79. package/esm2022/alert-dialog/lib/brn-alert-dialog-content.directive.mjs +17 -0
  80. package/esm2022/alert-dialog/lib/brn-alert-dialog-description.directive.mjs +18 -0
  81. package/esm2022/alert-dialog/lib/brn-alert-dialog-overlay.component.mjs +20 -0
  82. package/esm2022/alert-dialog/lib/brn-alert-dialog-title.directive.mjs +18 -0
  83. package/esm2022/alert-dialog/lib/brn-alert-dialog-trigger.directive.mjs +27 -0
  84. package/esm2022/alert-dialog/lib/brn-alert-dialog.component.mjs +40 -0
  85. package/esm2022/alert-dialog/spartan-ng-brain-alert-dialog.mjs +5 -0
  86. package/esm2022/avatar/index.mjs +23 -0
  87. package/esm2022/avatar/lib/brn-avatar.component.mjs +31 -0
  88. package/esm2022/avatar/lib/fallback/brn-avatar-fallback.directive.mjs +21 -0
  89. package/esm2022/avatar/lib/fallback/index.mjs +2 -0
  90. package/esm2022/avatar/lib/image/brn-avatar-image.directive.mjs +29 -0
  91. package/esm2022/avatar/lib/image/index.mjs +2 -0
  92. package/esm2022/avatar/lib/util/hex-color-for.mjs +22 -0
  93. package/esm2022/avatar/lib/util/index.mjs +4 -0
  94. package/esm2022/avatar/lib/util/initials.pipe.mjs +27 -0
  95. package/esm2022/avatar/lib/util/is-bright.mjs +12 -0
  96. package/esm2022/avatar/spartan-ng-brain-avatar.mjs +5 -0
  97. package/esm2022/calendar/index.mjs +62 -0
  98. package/esm2022/calendar/lib/brn-calendar-cell-button.directive.mjs +160 -0
  99. package/esm2022/calendar/lib/brn-calendar-cell.directive.mjs +17 -0
  100. package/esm2022/calendar/lib/brn-calendar-grid.directive.mjs +21 -0
  101. package/esm2022/calendar/lib/brn-calendar-header.directive.mjs +22 -0
  102. package/esm2022/calendar/lib/brn-calendar-next-button.directive.mjs +42 -0
  103. package/esm2022/calendar/lib/brn-calendar-previous-button.directive.mjs +42 -0
  104. package/esm2022/calendar/lib/brn-calendar-week.directive.mjs +64 -0
  105. package/esm2022/calendar/lib/brn-calendar-weekday.directive.mjs +48 -0
  106. package/esm2022/calendar/lib/brn-calendar.directive.mjs +154 -0
  107. package/esm2022/calendar/lib/brn-calendar.token.mjs +12 -0
  108. package/esm2022/calendar/lib/i18n/calendar-i18n.mjs +33 -0
  109. package/esm2022/calendar/spartan-ng-brain-calendar.mjs +5 -0
  110. package/esm2022/checkbox/lib/brn-checkbox.component.mjs +1 -1
  111. package/esm2022/collapsible/index.mjs +30 -0
  112. package/esm2022/collapsible/lib/brn-collapsible-content.component.mjs +61 -0
  113. package/esm2022/collapsible/lib/brn-collapsible-trigger.directive.mjs +35 -0
  114. package/esm2022/collapsible/lib/brn-collapsible.component.mjs +33 -0
  115. package/esm2022/collapsible/spartan-ng-brain-collapsible.mjs +5 -0
  116. package/esm2022/command/index.mjs +64 -0
  117. package/esm2022/command/lib/brn-command-empty.directive.mjs +29 -0
  118. package/esm2022/command/lib/brn-command-group.component.mjs +45 -0
  119. package/esm2022/command/lib/brn-command-input.directive.mjs +29 -0
  120. package/esm2022/command/lib/brn-command-item.directive.mjs +36 -0
  121. package/esm2022/command/lib/brn-command-list.component.mjs +35 -0
  122. package/esm2022/command/lib/brn-command-loader.directive.mjs +29 -0
  123. package/esm2022/command/lib/brn-command-separator.component.mjs +30 -0
  124. package/esm2022/command/lib/brn-command.component.mjs +21 -0
  125. package/esm2022/command/spartan-ng-brain-command.mjs +5 -0
  126. package/esm2022/date-time/index.mjs +3 -0
  127. package/esm2022/date-time/lib/date-adapter.mjs +16 -0
  128. package/esm2022/date-time/lib/native-date-adapter.mjs +155 -0
  129. package/esm2022/date-time/spartan-ng-brain-date-time.mjs +5 -0
  130. package/esm2022/date-time-luxon/index.mjs +2 -0
  131. package/esm2022/date-time-luxon/lib/date-adapter.mjs +85 -0
  132. package/esm2022/date-time-luxon/spartan-ng-brain-date-time-luxon.mjs +5 -0
  133. package/esm2022/dialog/index.mjs +55 -0
  134. package/esm2022/dialog/lib/brn-dialog-close.directive.mjs +29 -0
  135. package/esm2022/dialog/lib/brn-dialog-content.directive.mjs +41 -0
  136. package/esm2022/dialog/lib/brn-dialog-description.directive.mjs +25 -0
  137. package/esm2022/dialog/lib/brn-dialog-options.mjs +19 -0
  138. package/esm2022/dialog/lib/brn-dialog-overlay.component.mjs +29 -0
  139. package/esm2022/dialog/lib/brn-dialog-ref.mjs +53 -0
  140. package/esm2022/dialog/lib/brn-dialog-state.mjs +2 -0
  141. package/esm2022/dialog/lib/brn-dialog-title.directive.mjs +25 -0
  142. package/esm2022/dialog/lib/brn-dialog-trigger.directive.mjs +39 -0
  143. package/esm2022/dialog/lib/brn-dialog-utils.mjs +12 -0
  144. package/esm2022/dialog/lib/brn-dialog.component.mjs +208 -0
  145. package/esm2022/dialog/lib/brn-dialog.service.mjs +127 -0
  146. package/esm2022/dialog/spartan-ng-brain-dialog.mjs +5 -0
  147. package/esm2022/form-field/index.mjs +2 -0
  148. package/esm2022/form-field/lib/brn-form-field-control.mjs +14 -0
  149. package/esm2022/form-field/spartan-ng-brain-form-field.mjs +5 -0
  150. package/esm2022/forms/index.mjs +4 -0
  151. package/esm2022/forms/lib/control-value-accessor.mjs +2 -0
  152. package/esm2022/forms/lib/error-options.mjs +26 -0
  153. package/esm2022/forms/lib/error-state-tracker.mjs +29 -0
  154. package/esm2022/forms/spartan-ng-brain-forms.mjs +5 -0
  155. package/esm2022/hover-card/index.mjs +29 -0
  156. package/esm2022/hover-card/lib/brn-hover-card-content.service.mjs +205 -0
  157. package/esm2022/hover-card/lib/brn-hover-card.component.mjs +34 -0
  158. package/esm2022/hover-card/lib/createHoverObservable.mjs +19 -0
  159. package/esm2022/hover-card/spartan-ng-brain-hover-card.mjs +5 -0
  160. package/esm2022/label/index.mjs +17 -0
  161. package/esm2022/label/lib/brn-label.directive.mjs +49 -0
  162. package/esm2022/label/spartan-ng-brain-label.mjs +5 -0
  163. package/esm2022/menu/index.mjs +100 -0
  164. package/esm2022/menu/lib/brn-context-menu-trigger.directive.mjs +40 -0
  165. package/esm2022/menu/lib/brn-menu-align.mjs +15 -0
  166. package/esm2022/menu/lib/brn-menu-bar.directive.mjs +17 -0
  167. package/esm2022/menu/lib/brn-menu-group.directive.mjs +17 -0
  168. package/esm2022/menu/lib/brn-menu-item-checkbox.directive.mjs +30 -0
  169. package/esm2022/menu/lib/brn-menu-item-radio.directive.mjs +30 -0
  170. package/esm2022/menu/lib/brn-menu-item.directive.mjs +27 -0
  171. package/esm2022/menu/lib/brn-menu-trigger.directive.mjs +36 -0
  172. package/esm2022/menu/lib/brn-menu.directive.mjs +50 -0
  173. package/esm2022/menu/spartan-ng-brain-menu.mjs +5 -0
  174. package/esm2022/popover/index.mjs +35 -0
  175. package/esm2022/popover/lib/brn-popover-close.directive.mjs +15 -0
  176. package/esm2022/popover/lib/brn-popover-content.directive.mjs +17 -0
  177. package/esm2022/popover/lib/brn-popover-trigger.directive.mjs +37 -0
  178. package/esm2022/popover/lib/brn-popover.component.mjs +81 -0
  179. package/esm2022/popover/spartan-ng-brain-popover.mjs +5 -0
  180. package/esm2022/progress/index.mjs +21 -0
  181. package/esm2022/progress/lib/brn-progress-indicator.component.mjs +22 -0
  182. package/esm2022/progress/lib/brn-progress.component.mjs +61 -0
  183. package/esm2022/progress/lib/brn-progress.token.mjs +9 -0
  184. package/esm2022/progress/spartan-ng-brain-progress.mjs +5 -0
  185. package/esm2022/radio-group/index.mjs +20 -0
  186. package/esm2022/radio-group/lib/brn-radio-group.component.mjs +90 -0
  187. package/esm2022/radio-group/lib/brn-radio-group.token.mjs +9 -0
  188. package/esm2022/radio-group/lib/brn-radio.component.mjs +185 -0
  189. package/esm2022/radio-group/spartan-ng-brain-radio-group.mjs +5 -0
  190. package/esm2022/select/index.mjs +56 -0
  191. package/esm2022/select/lib/brn-select-content.component.mjs +204 -0
  192. package/esm2022/select/lib/brn-select-group.directive.mjs +19 -0
  193. package/esm2022/select/lib/brn-select-label.directive.mjs +23 -0
  194. package/esm2022/select/lib/brn-select-option.directive.mjs +65 -0
  195. package/esm2022/select/lib/brn-select-value.component.mjs +46 -0
  196. package/esm2022/select/lib/brn-select.component.mjs +358 -0
  197. package/esm2022/select/lib/brn-select.service.mjs +197 -0
  198. package/esm2022/select/spartan-ng-brain-select.mjs +5 -0
  199. package/esm2022/separator/index.mjs +17 -0
  200. package/esm2022/separator/lib/brn-separator.component.mjs +24 -0
  201. package/esm2022/separator/spartan-ng-brain-separator.mjs +5 -0
  202. package/esm2022/sheet/index.mjs +50 -0
  203. package/esm2022/sheet/lib/brn-sheet-close.directive.mjs +15 -0
  204. package/esm2022/sheet/lib/brn-sheet-content.directive.mjs +25 -0
  205. package/esm2022/sheet/lib/brn-sheet-description.directive.mjs +18 -0
  206. package/esm2022/sheet/lib/brn-sheet-overlay.component.mjs +20 -0
  207. package/esm2022/sheet/lib/brn-sheet-title.directive.mjs +18 -0
  208. package/esm2022/sheet/lib/brn-sheet-trigger.directive.mjs +26 -0
  209. package/esm2022/sheet/lib/brn-sheet.component.mjs +55 -0
  210. package/esm2022/sheet/spartan-ng-brain-sheet.mjs +5 -0
  211. package/esm2022/slider/index.mjs +13 -0
  212. package/esm2022/slider/lib/brn-slider-thumb.directive.mjs +41 -0
  213. package/esm2022/slider/lib/brn-slider-tick-mark.directive.mjs +37 -0
  214. package/esm2022/slider/lib/brn-slider-track-active-fill.directive.mjs +29 -0
  215. package/esm2022/slider/lib/brn-slider-track.directive.mjs +290 -0
  216. package/esm2022/slider/spartan-ng-brain-slider.mjs +5 -0
  217. package/esm2022/switch/index.mjs +20 -0
  218. package/esm2022/switch/lib/brn-switch-thumb.component.mjs +16 -0
  219. package/esm2022/switch/lib/brn-switch.component.mjs +236 -0
  220. package/esm2022/switch/spartan-ng-brain-switch.mjs +5 -0
  221. package/esm2022/table/index.mjs +47 -0
  222. package/esm2022/table/lib/brn-cell-def.directive.mjs +22 -0
  223. package/esm2022/table/lib/brn-column-def.component.mjs +82 -0
  224. package/esm2022/table/lib/brn-column-manager.mjs +61 -0
  225. package/esm2022/table/lib/brn-footer-def.directive.mjs +22 -0
  226. package/esm2022/table/lib/brn-header-def.directive.mjs +22 -0
  227. package/esm2022/table/lib/brn-paginator.directive.mjs +109 -0
  228. package/esm2022/table/lib/brn-table.component.mjs +169 -0
  229. package/esm2022/table/spartan-ng-brain-table.mjs +5 -0
  230. package/esm2022/tabs/index.mjs +32 -0
  231. package/esm2022/tabs/lib/brn-tabs-list.directive.mjs +65 -0
  232. package/esm2022/tabs/lib/brn-tabs-paginated-list.directive.mjs +525 -0
  233. package/esm2022/tabs/lib/brn-tabs-trigger.directive.mjs +134 -0
  234. package/esm2022/tabs/spartan-ng-brain-tabs.mjs +5 -0
  235. package/esm2022/toggle/index.mjs +31 -0
  236. package/esm2022/toggle/lib/brn-toggle-group.component.mjs +159 -0
  237. package/esm2022/toggle/lib/brn-toggle-group.token.mjs +9 -0
  238. package/esm2022/toggle/lib/brn-toggle.directive.mjs +65 -0
  239. package/esm2022/toggle/spartan-ng-brain-toggle.mjs +5 -0
  240. package/esm2022/tooltip/index.mjs +35 -0
  241. package/esm2022/tooltip/lib/brn-tooltip-content.component.mjs +228 -0
  242. package/esm2022/tooltip/lib/brn-tooltip-content.directive.mjs +22 -0
  243. package/esm2022/tooltip/lib/brn-tooltip-trigger.directive.mjs +689 -0
  244. package/esm2022/tooltip/lib/brn-tooltip.directive.mjs +15 -0
  245. package/esm2022/tooltip/spartan-ng-brain-tooltip.mjs +5 -0
  246. package/fesm2022/spartan-ng-brain-accordion.mjs +259 -0
  247. package/fesm2022/spartan-ng-brain-accordion.mjs.map +1 -0
  248. package/fesm2022/spartan-ng-brain-alert-dialog.mjs +162 -0
  249. package/fesm2022/spartan-ng-brain-alert-dialog.mjs.map +1 -0
  250. package/fesm2022/spartan-ng-brain-avatar.mjs +156 -0
  251. package/fesm2022/spartan-ng-brain-avatar.mjs.map +1 -0
  252. package/fesm2022/spartan-ng-brain-calendar.mjs +629 -0
  253. package/fesm2022/spartan-ng-brain-calendar.mjs.map +1 -0
  254. package/fesm2022/spartan-ng-brain-checkbox.mjs.map +1 -1
  255. package/fesm2022/spartan-ng-brain-collapsible.mjs +152 -0
  256. package/fesm2022/spartan-ng-brain-collapsible.mjs.map +1 -0
  257. package/fesm2022/spartan-ng-brain-command.mjs +284 -0
  258. package/fesm2022/spartan-ng-brain-command.mjs.map +1 -0
  259. package/fesm2022/spartan-ng-brain-date-time-luxon.mjs +92 -0
  260. package/fesm2022/spartan-ng-brain-date-time-luxon.mjs.map +1 -0
  261. package/fesm2022/spartan-ng-brain-date-time.mjs +177 -0
  262. package/fesm2022/spartan-ng-brain-date-time.mjs.map +1 -0
  263. package/fesm2022/spartan-ng-brain-dialog.mjs +617 -0
  264. package/fesm2022/spartan-ng-brain-dialog.mjs.map +1 -0
  265. package/fesm2022/spartan-ng-brain-form-field.mjs +21 -0
  266. package/fesm2022/spartan-ng-brain-form-field.mjs.map +1 -0
  267. package/fesm2022/spartan-ng-brain-forms.mjs +61 -0
  268. package/fesm2022/spartan-ng-brain-forms.mjs.map +1 -0
  269. package/fesm2022/spartan-ng-brain-hover-card.mjs +274 -0
  270. package/fesm2022/spartan-ng-brain-hover-card.mjs.map +1 -0
  271. package/fesm2022/spartan-ng-brain-label.mjs +69 -0
  272. package/fesm2022/spartan-ng-brain-label.mjs.map +1 -0
  273. package/fesm2022/spartan-ng-brain-menu.mjs +316 -0
  274. package/fesm2022/spartan-ng-brain-menu.mjs.map +1 -0
  275. package/fesm2022/spartan-ng-brain-popover.mjs +173 -0
  276. package/fesm2022/spartan-ng-brain-popover.mjs.map +1 -0
  277. package/fesm2022/spartan-ng-brain-progress.mjs +108 -0
  278. package/fesm2022/spartan-ng-brain-progress.mjs.map +1 -0
  279. package/fesm2022/spartan-ng-brain-radio-group.mjs +299 -0
  280. package/fesm2022/spartan-ng-brain-radio-group.mjs.map +1 -0
  281. package/fesm2022/spartan-ng-brain-select.mjs +928 -0
  282. package/fesm2022/spartan-ng-brain-select.mjs.map +1 -0
  283. package/fesm2022/spartan-ng-brain-separator.mjs +44 -0
  284. package/fesm2022/spartan-ng-brain-separator.mjs.map +1 -0
  285. package/fesm2022/spartan-ng-brain-sheet.mjs +197 -0
  286. package/fesm2022/spartan-ng-brain-sheet.mjs.map +1 -0
  287. package/fesm2022/spartan-ng-brain-slider.mjs +399 -0
  288. package/fesm2022/spartan-ng-brain-slider.mjs.map +1 -0
  289. package/fesm2022/spartan-ng-brain-switch.mjs +271 -0
  290. package/fesm2022/spartan-ng-brain-switch.mjs.map +1 -0
  291. package/fesm2022/spartan-ng-brain-table.mjs +506 -0
  292. package/fesm2022/spartan-ng-brain-table.mjs.map +1 -0
  293. package/fesm2022/spartan-ng-brain-tabs.mjs +748 -0
  294. package/fesm2022/spartan-ng-brain-tabs.mjs.map +1 -0
  295. package/fesm2022/spartan-ng-brain-toggle.mjs +260 -0
  296. package/fesm2022/spartan-ng-brain-toggle.mjs.map +1 -0
  297. package/fesm2022/spartan-ng-brain-tooltip.mjs +975 -0
  298. package/fesm2022/spartan-ng-brain-tooltip.mjs.map +1 -0
  299. package/form-field/README.md +3 -0
  300. package/form-field/index.d.ts +1 -0
  301. package/form-field/lib/brn-form-field-control.d.ts +11 -0
  302. package/forms/README.md +3 -0
  303. package/forms/index.d.ts +3 -0
  304. package/forms/lib/control-value-accessor.d.ts +2 -0
  305. package/forms/lib/error-options.d.ts +14 -0
  306. package/forms/lib/error-state-tracker.d.ts +15 -0
  307. package/hover-card/README.md +3 -0
  308. package/hover-card/index.d.ts +14 -0
  309. package/hover-card/lib/brn-hover-card-content.service.d.ts +65 -0
  310. package/hover-card/lib/brn-hover-card.component.d.ts +9 -0
  311. package/hover-card/lib/createHoverObservable.d.ts +4 -0
  312. package/label/README.md +3 -0
  313. package/label/index.d.ts +8 -0
  314. package/label/lib/brn-label.directive.d.ts +15 -0
  315. package/menu/README.md +3 -0
  316. package/menu/index.d.ts +49 -0
  317. package/menu/lib/brn-context-menu-trigger.directive.d.ts +13 -0
  318. package/menu/lib/brn-menu-align.d.ts +3 -0
  319. package/menu/lib/brn-menu-bar.directive.d.ts +6 -0
  320. package/menu/lib/brn-menu-group.directive.d.ts +6 -0
  321. package/menu/lib/brn-menu-item-checkbox.directive.d.ts +11 -0
  322. package/menu/lib/brn-menu-item-radio.directive.d.ts +11 -0
  323. package/menu/lib/brn-menu-item.directive.d.ts +10 -0
  324. package/menu/lib/brn-menu-trigger.directive.d.ts +10 -0
  325. package/menu/lib/brn-menu.directive.d.ts +11 -0
  326. package/package.json +182 -9
  327. package/popover/README.md +3 -0
  328. package/popover/index.d.ts +19 -0
  329. package/popover/lib/brn-popover-close.directive.d.ts +6 -0
  330. package/popover/lib/brn-popover-content.directive.d.ts +6 -0
  331. package/popover/lib/brn-popover-trigger.directive.d.ts +10 -0
  332. package/popover/lib/brn-popover.component.d.ts +14 -0
  333. package/progress/README.md +3 -0
  334. package/progress/index.d.ts +14 -0
  335. package/progress/lib/brn-progress-indicator.component.d.ts +6 -0
  336. package/progress/lib/brn-progress.component.d.ts +15 -0
  337. package/progress/lib/brn-progress.token.d.ts +4 -0
  338. package/radio-group/README.md +3 -0
  339. package/radio-group/index.d.ts +13 -0
  340. package/radio-group/lib/brn-radio-group.component.d.ts +57 -0
  341. package/radio-group/lib/brn-radio-group.token.d.ts +4 -0
  342. package/radio-group/lib/brn-radio.component.d.ts +58 -0
  343. package/select/README.md +3 -0
  344. package/select/index.d.ts +28 -0
  345. package/select/lib/brn-select-content.component.d.ts +50 -0
  346. package/select/lib/brn-select-group.directive.d.ts +6 -0
  347. package/select/lib/brn-select-label.directive.d.ts +9 -0
  348. package/select/lib/brn-select-option.directive.d.ts +25 -0
  349. package/select/lib/brn-select-value.component.d.ts +11 -0
  350. package/select/lib/brn-select.component.d.ts +82 -0
  351. package/select/lib/brn-select.service.d.ts +67 -0
  352. package/separator/README.md +3 -0
  353. package/separator/index.d.ts +8 -0
  354. package/separator/lib/brn-separator.component.d.ts +11 -0
  355. package/sheet/README.md +3 -0
  356. package/sheet/index.d.ts +28 -0
  357. package/sheet/lib/brn-sheet-close.directive.d.ts +6 -0
  358. package/sheet/lib/brn-sheet-content.directive.d.ts +8 -0
  359. package/sheet/lib/brn-sheet-description.directive.d.ts +6 -0
  360. package/sheet/lib/brn-sheet-overlay.component.d.ts +6 -0
  361. package/sheet/lib/brn-sheet-title.directive.d.ts +6 -0
  362. package/sheet/lib/brn-sheet-trigger.directive.d.ts +9 -0
  363. package/sheet/lib/brn-sheet.component.d.ts +9 -0
  364. package/slider/README.md +3 -0
  365. package/slider/index.d.ts +7 -0
  366. package/slider/lib/brn-slider-thumb.directive.d.ts +17 -0
  367. package/slider/lib/brn-slider-tick-mark.directive.d.ts +15 -0
  368. package/slider/lib/brn-slider-track-active-fill.directive.d.ts +10 -0
  369. package/slider/lib/brn-slider-track.directive.d.ts +139 -0
  370. package/switch/README.md +3 -0
  371. package/switch/index.d.ts +13 -0
  372. package/switch/lib/brn-switch-thumb.component.d.ts +5 -0
  373. package/switch/lib/brn-switch.component.d.ts +58 -0
  374. package/table/README.md +3 -0
  375. package/table/index.d.ts +26 -0
  376. package/table/lib/brn-cell-def.directive.d.ts +9 -0
  377. package/table/lib/brn-column-def.component.d.ts +18 -0
  378. package/table/lib/brn-column-manager.d.ts +26 -0
  379. package/table/lib/brn-footer-def.directive.d.ts +9 -0
  380. package/table/lib/brn-header-def.directive.d.ts +9 -0
  381. package/table/lib/brn-paginator.directive.d.ts +41 -0
  382. package/table/lib/brn-table.component.d.ts +37 -0
  383. package/tabs/README.md +3 -0
  384. package/tabs/index.d.ts +14 -0
  385. package/tabs/lib/brn-tabs-list.directive.d.ts +17 -0
  386. package/tabs/lib/brn-tabs-paginated-list.directive.d.ts +196 -0
  387. package/tabs/lib/brn-tabs-trigger.directive.d.ts +61 -0
  388. package/toggle/README.md +3 -0
  389. package/toggle/index.d.ts +15 -0
  390. package/toggle/lib/brn-toggle-group.component.d.ts +68 -0
  391. package/toggle/lib/brn-toggle-group.token.d.ts +4 -0
  392. package/toggle/lib/brn-toggle.directive.d.ts +25 -0
  393. package/tooltip/README.md +3 -0
  394. package/tooltip/index.d.ts +19 -0
  395. package/tooltip/lib/brn-tooltip-content.component.d.ts +73 -0
  396. package/tooltip/lib/brn-tooltip-content.directive.d.ts +8 -0
  397. package/tooltip/lib/brn-tooltip-trigger.directive.d.ts +177 -0
  398. package/tooltip/lib/brn-tooltip.directive.d.ts +7 -0
@@ -0,0 +1,205 @@
1
+ import { Overlay, OverlayPositionBuilder, } from '@angular/cdk/overlay';
2
+ import { TemplatePortal } from '@angular/cdk/portal';
3
+ import { ElementRef, Injectable, NgZone, TemplateRef, ViewContainerRef, inject, signal, } from '@angular/core';
4
+ import { toSignal } from '@angular/core/rxjs-interop';
5
+ import { provideExposedSideProviderExisting, provideExposesStateProviderExisting, } from '@spartan-ng/ui-core';
6
+ import { BehaviorSubject, Subject, filter, map, of, switchMap } from 'rxjs';
7
+ import { createHoverObservable } from './createHoverObservable';
8
+ /**
9
+ * We are building on shoulders of giants here and use the implementation provided by the incredible TaigaUI
10
+ * team: https://github.com/taiga-family/taiga-ui/blob/main/projects/core/directives/dropdown/dropdown-hover.directive.ts
11
+ * Check them out! Give them a try! Leave a star! Their work is incredible!
12
+ */
13
+ import { FocusMonitor } from '@angular/cdk/a11y';
14
+ import { Directive, Input } from '@angular/core';
15
+ import { delay, distinctUntilChanged, fromEvent, merge, share, takeUntil, tap } from 'rxjs';
16
+ import * as i0 from "@angular/core";
17
+ export class BrnHoverCardContentDirective {
18
+ _contentService = inject(BrnHoverCardContentService);
19
+ state = this._contentService.state;
20
+ side = this._contentService.side;
21
+ template = inject(TemplateRef);
22
+ /** @nocollapse */ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.5", ngImport: i0, type: BrnHoverCardContentDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive });
23
+ /** @nocollapse */ static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "18.2.5", type: BrnHoverCardContentDirective, isStandalone: true, selector: "[brnHoverCardContent]", providers: [
24
+ provideExposedSideProviderExisting((() => BrnHoverCardContentDirective)),
25
+ provideExposesStateProviderExisting((() => BrnHoverCardContentDirective)),
26
+ ], exportAs: ["brnHoverCardContent"], ngImport: i0 });
27
+ }
28
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.5", ngImport: i0, type: BrnHoverCardContentDirective, decorators: [{
29
+ type: Directive,
30
+ args: [{
31
+ selector: '[brnHoverCardContent]',
32
+ standalone: true,
33
+ exportAs: 'brnHoverCardContent',
34
+ providers: [
35
+ provideExposedSideProviderExisting((() => BrnHoverCardContentDirective)),
36
+ provideExposesStateProviderExisting((() => BrnHoverCardContentDirective)),
37
+ ],
38
+ }]
39
+ }] });
40
+ const topFirstPositions = [
41
+ {
42
+ originX: 'center',
43
+ originY: 'top',
44
+ overlayX: 'center',
45
+ overlayY: 'bottom',
46
+ },
47
+ {
48
+ originX: 'center',
49
+ originY: 'bottom',
50
+ overlayX: 'center',
51
+ overlayY: 'top',
52
+ },
53
+ ];
54
+ const bottomFirstPositions = [
55
+ {
56
+ originX: 'center',
57
+ originY: 'bottom',
58
+ overlayX: 'center',
59
+ overlayY: 'top',
60
+ },
61
+ {
62
+ originX: 'center',
63
+ originY: 'top',
64
+ overlayX: 'center',
65
+ overlayY: 'bottom',
66
+ },
67
+ ];
68
+ export class BrnHoverCardContentService {
69
+ _overlay = inject(Overlay);
70
+ _zone = inject(NgZone);
71
+ _psBuilder = inject(OverlayPositionBuilder);
72
+ _content = signal(null);
73
+ _state = signal('closed');
74
+ _config = {};
75
+ _overlayRef;
76
+ _positionStrategy;
77
+ _destroyed$ = new Subject();
78
+ _positionChangesObservables$ = new BehaviorSubject(undefined);
79
+ _overlayHoveredObservables$ = new BehaviorSubject(undefined);
80
+ positionChanges$ = this._positionChangesObservables$.pipe(switchMap((positionChangeObservable) => (positionChangeObservable ? positionChangeObservable : of(undefined))), filter((change) => change !== undefined && change !== null));
81
+ hovered$ = this._overlayHoveredObservables$.pipe(switchMap((overlayHoveredObservable) => (overlayHoveredObservable ? overlayHoveredObservable : of(false))));
82
+ state = this._state.asReadonly();
83
+ side = toSignal(this.positionChanges$.pipe(map((change) =>
84
+ // todo: better translation or adjusting hlm to take that into account
85
+ change.connectionPair.originY === 'center'
86
+ ? change.connectionPair.originX === 'start'
87
+ ? 'left'
88
+ : 'right'
89
+ : change.connectionPair.originY)), { initialValue: 'bottom' });
90
+ setConfig(config) {
91
+ this._config = config;
92
+ if (config.attachTo) {
93
+ this._positionStrategy = this._psBuilder
94
+ .flexibleConnectedTo(config.attachTo)
95
+ .withPositions((config.attachPositions ?? config.align === 'top') ? topFirstPositions : bottomFirstPositions)
96
+ .withDefaultOffsetY(config.sideOffset ?? 0);
97
+ this._config = {
98
+ ...this._config,
99
+ positionStrategy: this._positionStrategy,
100
+ scrollStrategy: this._overlay.scrollStrategies.reposition(),
101
+ };
102
+ this._positionChangesObservables$.next(this._positionStrategy.positionChanges);
103
+ }
104
+ this._overlayRef = this._overlay.create(this._config);
105
+ }
106
+ setContent(value, vcr) {
107
+ this._content.set(new TemplatePortal(value instanceof TemplateRef ? value : value.template, vcr));
108
+ if (!this._overlayRef) {
109
+ this._overlayRef = this._overlay.create(this._config);
110
+ }
111
+ }
112
+ setState(newState) {
113
+ this._state.set(newState);
114
+ }
115
+ show() {
116
+ const content = this._content();
117
+ if (!content || !this._overlayRef)
118
+ return;
119
+ this._overlayRef?.detach();
120
+ this._overlayRef?.attach(content);
121
+ this._destroyed$ = new Subject();
122
+ this._overlayHoveredObservables$.next(createHoverObservable(this._overlayRef.hostElement, this._zone, this._destroyed$));
123
+ }
124
+ hide() {
125
+ this._overlayRef?.detach();
126
+ this._destroyed$.next();
127
+ this._destroyed$.complete();
128
+ this._destroyed$ = new Subject();
129
+ }
130
+ /** @nocollapse */ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.5", ngImport: i0, type: BrnHoverCardContentService, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
131
+ /** @nocollapse */ static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "18.2.5", ngImport: i0, type: BrnHoverCardContentService });
132
+ }
133
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.5", ngImport: i0, type: BrnHoverCardContentService, decorators: [{
134
+ type: Injectable
135
+ }] });
136
+ export class BrnHoverCardTriggerDirective {
137
+ _destroy$ = new Subject();
138
+ _vcr = inject(ViewContainerRef);
139
+ _zone = inject(NgZone);
140
+ _el = inject(ElementRef);
141
+ _contentService = inject(BrnHoverCardContentService);
142
+ _focusMonitor = inject(FocusMonitor);
143
+ focused$ = this._focusMonitor.monitor(this._el).pipe(map((e) => e !== null));
144
+ hovered$ = merge(fromEvent(this._el.nativeElement, 'click').pipe(map(() => false)), createHoverObservable(this._el.nativeElement, this._zone, this._destroy$), this._contentService.hovered$, this.focused$).pipe(distinctUntilChanged());
145
+ showing$ = this.hovered$.pipe(
146
+ // we set the state to open here because we are about to open show the content
147
+ tap((visible) => visible && this._contentService.setState('open')), switchMap((visible) => {
148
+ // we are delaying based on the configure-able input
149
+ return of(visible).pipe(delay(visible ? this.showDelay : this.hideDelay));
150
+ }), switchMap((visible) => {
151
+ // don't do anything when we are in the process of showing the content
152
+ if (visible)
153
+ return of(visible);
154
+ // we set the state to closed here to trigger any animations for the element leaving
155
+ this._contentService.setState('closed');
156
+ // then delay to wait for the leaving animation to finish
157
+ return of(visible).pipe(delay(this.animationDelay));
158
+ }), distinctUntilChanged(), share(), takeUntil(this._destroy$));
159
+ showDelay = 300;
160
+ hideDelay = 500;
161
+ animationDelay = 100;
162
+ sideOffset = 5;
163
+ align = 'bottom';
164
+ set brnHoverCardTriggerFor(value) {
165
+ this._contentService.setContent(value, this._vcr);
166
+ }
167
+ ngOnInit() {
168
+ this._contentService.setConfig({ attachTo: this._el, align: this.align, sideOffset: this.sideOffset });
169
+ this.showing$.subscribe((isHovered) => {
170
+ if (isHovered) {
171
+ this._contentService.show();
172
+ }
173
+ else {
174
+ this._contentService.hide();
175
+ }
176
+ });
177
+ }
178
+ ngOnDestroy() {
179
+ this._destroy$.next();
180
+ this._destroy$.complete();
181
+ }
182
+ /** @nocollapse */ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.5", ngImport: i0, type: BrnHoverCardTriggerDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive });
183
+ /** @nocollapse */ static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "18.2.5", type: BrnHoverCardTriggerDirective, isStandalone: true, selector: "[brnHoverCardTrigger]:not(ng-container),[brnHoverCardTriggerFor]:not(ng-container)", inputs: { showDelay: "showDelay", hideDelay: "hideDelay", animationDelay: "animationDelay", sideOffset: "sideOffset", align: "align", brnHoverCardTriggerFor: "brnHoverCardTriggerFor" }, exportAs: ["brnHoverCardTrigger"], ngImport: i0 });
184
+ }
185
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.5", ngImport: i0, type: BrnHoverCardTriggerDirective, decorators: [{
186
+ type: Directive,
187
+ args: [{
188
+ selector: '[brnHoverCardTrigger]:not(ng-container),[brnHoverCardTriggerFor]:not(ng-container)',
189
+ standalone: true,
190
+ exportAs: 'brnHoverCardTrigger',
191
+ }]
192
+ }], propDecorators: { showDelay: [{
193
+ type: Input
194
+ }], hideDelay: [{
195
+ type: Input
196
+ }], animationDelay: [{
197
+ type: Input
198
+ }], sideOffset: [{
199
+ type: Input
200
+ }], align: [{
201
+ type: Input
202
+ }], brnHoverCardTriggerFor: [{
203
+ type: Input
204
+ }] } });
205
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYnJuLWhvdmVyLWNhcmQtY29udGVudC5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9icmFpbi9ob3Zlci1jYXJkL3NyYy9saWIvYnJuLWhvdmVyLWNhcmQtY29udGVudC5zZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFJTixPQUFPLEVBRVAsc0JBQXNCLEdBRXRCLE1BQU0sc0JBQXNCLENBQUM7QUFDOUIsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLHFCQUFxQixDQUFDO0FBQ3JELE9BQU8sRUFDTixVQUFVLEVBQ1YsVUFBVSxFQUNWLE1BQU0sRUFFTixXQUFXLEVBQ1gsZ0JBQWdCLEVBQ2hCLE1BQU0sRUFDTixNQUFNLEdBQ04sTUFBTSxlQUFlLENBQUM7QUFDdkIsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLDRCQUE0QixDQUFDO0FBQ3RELE9BQU8sRUFHTixrQ0FBa0MsRUFDbEMsbUNBQW1DLEdBQ25DLE1BQU0scUJBQXFCLENBQUM7QUFDN0IsT0FBTyxFQUFFLGVBQWUsRUFBbUIsT0FBTyxFQUFFLE1BQU0sRUFBRSxHQUFHLEVBQUUsRUFBRSxFQUFFLFNBQVMsRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUM3RixPQUFPLEVBQUUscUJBQXFCLEVBQUUsTUFBTSx5QkFBeUIsQ0FBQztBQWtCaEU7Ozs7R0FJRztBQUVILE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxtQkFBbUIsQ0FBQztBQUNqRCxPQUFPLEVBQUUsU0FBUyxFQUFFLEtBQUssRUFBK0IsTUFBTSxlQUFlLENBQUM7QUFDOUUsT0FBTyxFQUFFLEtBQUssRUFBRSxvQkFBb0IsRUFBRSxTQUFTLEVBQUUsS0FBSyxFQUFFLEtBQUssRUFBRSxTQUFTLEVBQUUsR0FBRyxFQUFFLE1BQU0sTUFBTSxDQUFDOztBQWY1RixNQUFNLE9BQU8sNEJBQTRCO0lBQ3ZCLGVBQWUsR0FBRyxNQUFNLENBQUMsMEJBQTBC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SUssc0JBQXNCO3NCQURoQyxLQUFLIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcblx0dHlwZSBDb25uZWN0ZWRPdmVybGF5UG9zaXRpb25DaGFuZ2UsXG5cdHR5cGUgQ29ubmVjdGVkUG9zaXRpb24sXG5cdHR5cGUgRmxleGlibGVDb25uZWN0ZWRQb3NpdGlvblN0cmF0ZWd5LFxuXHRPdmVybGF5LFxuXHR0eXBlIE92ZXJsYXlDb25maWcsXG5cdE92ZXJsYXlQb3NpdGlvbkJ1aWxkZXIsXG5cdHR5cGUgT3ZlcmxheVJlZixcbn0gZnJvbSAnQGFuZ3VsYXIvY2RrL292ZXJsYXknO1xuaW1wb3J0IHsgVGVtcGxhdGVQb3J0YWwgfSBmcm9tICdAYW5ndWxhci9jZGsvcG9ydGFsJztcbmltcG9ydCB7XG5cdEVsZW1lbnRSZWYsXG5cdEluamVjdGFibGUsXG5cdE5nWm9uZSxcblx0dHlwZSBTaWduYWwsXG5cdFRlbXBsYXRlUmVmLFxuXHRWaWV3Q29udGFpbmVyUmVmLFxuXHRpbmplY3QsXG5cdHNpZ25hbCxcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyB0b1NpZ25hbCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUvcnhqcy1pbnRlcm9wJztcbmltcG9ydCB7XG5cdHR5cGUgRXhwb3Nlc1NpZGUsXG5cdHR5cGUgRXhwb3Nlc1N0YXRlLFxuXHRwcm92aWRlRXhwb3NlZFNpZGVQcm92aWRlckV4aXN0aW5nLFxuXHRwcm92aWRlRXhwb3Nlc1N0YXRlUHJvdmlkZXJFeGlzdGluZyxcbn0gZnJvbSAnQHNwYXJ0YW4tbmcvdWktY29yZSc7XG5pbXBvcnQgeyBCZWhhdmlvclN1YmplY3QsIHR5cGUgT2JzZXJ2YWJsZSwgU3ViamVjdCwgZmlsdGVyLCBtYXAsIG9mLCBzd2l0Y2hNYXAgfSBmcm9tICdyeGpzJztcbmltcG9ydCB7IGNyZWF0ZUhvdmVyT2JzZXJ2YWJsZSB9IGZyb20gJy4vY3JlYXRlSG92ZXJPYnNlcnZhYmxlJztcblxuQERpcmVjdGl2ZSh7XG5cdHNlbGVjdG9yOiAnW2JybkhvdmVyQ2FyZENvbnRlbnRdJyxcblx0c3RhbmRhbG9uZTogdHJ1ZSxcblx0ZXhwb3J0QXM6ICdicm5Ib3ZlckNhcmRDb250ZW50Jyxcblx0cHJvdmlkZXJzOiBbXG5cdFx0cHJvdmlkZUV4cG9zZWRTaWRlUHJvdmlkZXJFeGlzdGluZygoKSA9PiBCcm5Ib3ZlckNhcmRDb250ZW50RGlyZWN0aXZlKSxcblx0XHRwcm92aWRlRXhwb3Nlc1N0YXRlUHJvdmlkZXJFeGlzdGluZygoKSA9PiBCcm5Ib3ZlckNhcmRDb250ZW50RGlyZWN0aXZlKSxcblx0XSxcbn0pXG5leHBvcnQgY2xhc3MgQnJuSG92ZXJDYXJkQ29udGVudERpcmVjdGl2ZSBpbXBsZW1lbnRzIEV4cG9zZXNTdGF0ZSwgRXhwb3Nlc1NpZGUge1xuXHRwcml2YXRlIHJlYWRvbmx5IF9jb250ZW50U2VydmljZSA9IGluamVjdChCcm5Ib3ZlckNhcmRDb250ZW50U2VydmljZSk7XG5cdHB1YmxpYyByZWFkb25seSBzdGF0ZSA9IHRoaXMuX2NvbnRlbnRTZXJ2aWNlLnN0YXRlO1xuXHRwdWJsaWMgcmVhZG9ubHkgc2lkZSA9IHRoaXMuX2NvbnRlbnRTZXJ2aWNlLnNpZGU7XG5cdHB1YmxpYyByZWFkb25seSB0ZW1wbGF0ZSA9IGluamVjdChUZW1wbGF0ZVJlZik7XG59XG5cbi8qKlxuICogV2UgYXJlIGJ1aWxkaW5nIG9uIHNob3VsZGVycyBvZiBnaWFudHMgaGVyZSBhbmQgdXNlIHRoZSBpbXBsZW1lbnRhdGlvbiBwcm92aWRlZCBieSB0aGUgaW5jcmVkaWJsZSBUYWlnYVVJXG4gKiB0ZWFtOiBodHRwczovL2dpdGh1Yi5jb20vdGFpZ2EtZmFtaWx5L3RhaWdhLXVpL2Jsb2IvbWFpbi9wcm9qZWN0cy9jb3JlL2RpcmVjdGl2ZXMvZHJvcGRvd24vZHJvcGRvd24taG92ZXIuZGlyZWN0aXZlLnRzXG4gKiBDaGVjayB0aGVtIG91dCEgR2l2ZSB0aGVtIGEgdHJ5ISBMZWF2ZSBhIHN0YXIhIFRoZWlyIHdvcmsgaXMgaW5jcmVkaWJsZSFcbiAqL1xuXG5pbXBvcnQgeyBGb2N1c01vbml0b3IgfSBmcm9tICdAYW5ndWxhci9jZGsvYTExeSc7XG5pbXBvcnQgeyBEaXJlY3RpdmUsIElucHV0LCB0eXBlIE9uRGVzdHJveSwgdHlwZSBPbkluaXQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IGRlbGF5LCBkaXN0aW5jdFVudGlsQ2hhbmdlZCwgZnJvbUV2ZW50LCBtZXJnZSwgc2hhcmUsIHRha2VVbnRpbCwgdGFwIH0gZnJvbSAncnhqcyc7XG5cbmV4cG9ydCB0eXBlIEJybkhvdmVyQ2FyZE9wdGlvbnMgPSBQYXJ0aWFsPFxuXHR7XG5cdFx0YXR0YWNoVG86IEVsZW1lbnRSZWY7XG5cdFx0YXR0YWNoUG9zaXRpb25zOiBDb25uZWN0ZWRQb3NpdGlvbltdO1xuXHRcdGFsaWduOiAndG9wJyB8ICdib3R0b20nO1xuXHRcdHNpZGVPZmZzZXQ6IG51bWJlcjtcblx0fSAmIE92ZXJsYXlDb25maWdcbj47XG5cbmNvbnN0IHRvcEZpcnN0UG9zaXRpb25zOiBDb25uZWN0ZWRQb3NpdGlvbltdID0gW1xuXHR7XG5cdFx0b3JpZ2luWDogJ2NlbnRlcicsXG5cdFx0b3JpZ2luWTogJ3RvcCcsXG5cdFx0b3ZlcmxheVg6ICdjZW50ZXInLFxuXHRcdG92ZXJsYXlZOiAnYm90dG9tJyxcblx0fSxcblx0e1xuXHRcdG9yaWdpblg6ICdjZW50ZXInLFxuXHRcdG9yaWdpblk6ICdib3R0b20nLFxuXHRcdG92ZXJsYXlYOiAnY2VudGVyJyxcblx0XHRvdmVybGF5WTogJ3RvcCcsXG5cdH0sXG5dO1xuY29uc3QgYm90dG9tRmlyc3RQb3NpdGlvbnM6IENvbm5lY3RlZFBvc2l0aW9uW10gPSBbXG5cdHtcblx0XHRvcmlnaW5YOiAnY2VudGVyJyxcblx0XHRvcmlnaW5ZOiAnYm90dG9tJyxcblx0XHRvdmVybGF5WDogJ2NlbnRlcicsXG5cdFx0b3ZlcmxheVk6ICd0b3AnLFxuXHR9LFxuXHR7XG5cdFx0b3JpZ2luWDogJ2NlbnRlcicsXG5cdFx0b3JpZ2luWTogJ3RvcCcsXG5cdFx0b3ZlcmxheVg6ICdjZW50ZXInLFxuXHRcdG92ZXJsYXlZOiAnYm90dG9tJyxcblx0fSxcbl07XG5cbkBJbmplY3RhYmxlKClcbmV4cG9ydCBjbGFzcyBCcm5Ib3ZlckNhcmRDb250ZW50U2VydmljZSB7XG5cdHByaXZhdGUgcmVhZG9ubHkgX292ZXJsYXkgPSBpbmplY3QoT3ZlcmxheSk7XG5cdHByaXZhdGUgcmVhZG9ubHkgX3pvbmUgPSBpbmplY3QoTmdab25lKTtcblx0cHJpdmF0ZSByZWFkb25seSBfcHNCdWlsZGVyID0gaW5qZWN0KE92ZXJsYXlQb3NpdGlvbkJ1aWxkZXIpO1xuXG5cdHByaXZhdGUgcmVhZG9ubHkgX2NvbnRlbnQgPSBzaWduYWw8VGVtcGxhdGVQb3J0YWw8dW5rbm93bj4gfCBudWxsPihudWxsKTtcblx0cHJpdmF0ZSByZWFkb25seSBfc3RhdGUgPSBzaWduYWw8J29wZW4nIHwgJ2Nsb3NlZCc+KCdjbG9zZWQnKTtcblxuXHRwcml2YXRlIF9jb25maWc6IEJybkhvdmVyQ2FyZE9wdGlvbnMgPSB7fTtcblx0cHJpdmF0ZSBfb3ZlcmxheVJlZj86IE92ZXJsYXlSZWY7XG5cdHByaXZhdGUgX3Bvc2l0aW9uU3RyYXRlZ3k/OiBGbGV4aWJsZUNvbm5lY3RlZFBvc2l0aW9uU3RyYXRlZ3k7XG5cdHByaXZhdGUgX2Rlc3Ryb3llZCQgPSBuZXcgU3ViamVjdDx2b2lkPigpO1xuXG5cdHByaXZhdGUgcmVhZG9ubHkgX3Bvc2l0aW9uQ2hhbmdlc09ic2VydmFibGVzJCA9IG5ldyBCZWhhdmlvclN1YmplY3Q8XG5cdFx0T2JzZXJ2YWJsZTxDb25uZWN0ZWRPdmVybGF5UG9zaXRpb25DaGFuZ2U+IHwgdW5kZWZpbmVkXG5cdD4odW5kZWZpbmVkKTtcblx0cHJpdmF0ZSByZWFkb25seSBfb3ZlcmxheUhvdmVyZWRPYnNlcnZhYmxlcyQgPSBuZXcgQmVoYXZpb3JTdWJqZWN0PE9ic2VydmFibGU8Ym9vbGVhbj4gfCB1bmRlZmluZWQ+KHVuZGVmaW5lZCk7XG5cblx0cHVibGljIHJlYWRvbmx5IHBvc2l0aW9uQ2hhbmdlcyQ6IE9ic2VydmFibGU8Q29ubmVjdGVkT3ZlcmxheVBvc2l0aW9uQ2hhbmdlPiA9IHRoaXMuX3Bvc2l0aW9uQ2hhbmdlc09ic2VydmFibGVzJC5waXBlKFxuXHRcdHN3aXRjaE1hcCgocG9zaXRpb25DaGFuZ2VPYnNlcnZhYmxlKSA9PiAocG9zaXRpb25DaGFuZ2VPYnNlcnZhYmxlID8gcG9zaXRpb25DaGFuZ2VPYnNlcnZhYmxlIDogb2YodW5kZWZpbmVkKSkpLFxuXHRcdGZpbHRlcigoY2hhbmdlKTogY2hhbmdlIGlzIE5vbk51bGxhYmxlPENvbm5lY3RlZE92ZXJsYXlQb3NpdGlvbkNoYW5nZT4gPT4gY2hhbmdlICE9PSB1bmRlZmluZWQgJiYgY2hhbmdlICE9PSBudWxsKSxcblx0KTtcblx0cHVibGljIHJlYWRvbmx5IGhvdmVyZWQkOiBPYnNlcnZhYmxlPGJvb2xlYW4+ID0gdGhpcy5fb3ZlcmxheUhvdmVyZWRPYnNlcnZhYmxlcyQucGlwZShcblx0XHRzd2l0Y2hNYXAoKG92ZXJsYXlIb3ZlcmVkT2JzZXJ2YWJsZSkgPT4gKG92ZXJsYXlIb3ZlcmVkT2JzZXJ2YWJsZSA/IG92ZXJsYXlIb3ZlcmVkT2JzZXJ2YWJsZSA6IG9mKGZhbHNlKSkpLFxuXHQpO1xuXG5cdHB1YmxpYyByZWFkb25seSBzdGF0ZSA9IHRoaXMuX3N0YXRlLmFzUmVhZG9ubHkoKTtcblx0cHVibGljIHJlYWRvbmx5IHNpZGU6IFNpZ25hbDwndG9wJyB8ICdib3R0b20nIHwgJ2xlZnQnIHwgJ3JpZ2h0Jz4gPSB0b1NpZ25hbChcblx0XHR0aGlzLnBvc2l0aW9uQ2hhbmdlcyQucGlwZShcblx0XHRcdG1hcDxDb25uZWN0ZWRPdmVybGF5UG9zaXRpb25DaGFuZ2UsICd0b3AnIHwgJ2JvdHRvbScgfCAnbGVmdCcgfCAncmlnaHQnPigoY2hhbmdlKSA9PlxuXHRcdFx0XHQvLyB0b2RvOiBiZXR0ZXIgdHJhbnNsYXRpb24gb3IgYWRqdXN0aW5nIGhsbSB0byB0YWtlIHRoYXQgaW50byBhY2NvdW50XG5cdFx0XHRcdGNoYW5nZS5jb25uZWN0aW9uUGFpci5vcmlnaW5ZID09PSAnY2VudGVyJ1xuXHRcdFx0XHRcdD8gY2hhbmdlLmNvbm5lY3Rpb25QYWlyLm9yaWdpblggPT09ICdzdGFydCdcblx0XHRcdFx0XHRcdD8gJ2xlZnQnXG5cdFx0XHRcdFx0XHQ6ICdyaWdodCdcblx0XHRcdFx0XHQ6IGNoYW5nZS5jb25uZWN0aW9uUGFpci5vcmlnaW5ZLFxuXHRcdFx0KSxcblx0XHQpLFxuXHRcdHsgaW5pdGlhbFZhbHVlOiAnYm90dG9tJyB9LFxuXHQpO1xuXG5cdHB1YmxpYyBzZXRDb25maWcoY29uZmlnOiBCcm5Ib3ZlckNhcmRPcHRpb25zKSB7XG5cdFx0dGhpcy5fY29uZmlnID0gY29uZmlnO1xuXHRcdGlmIChjb25maWcuYXR0YWNoVG8pIHtcblx0XHRcdHRoaXMuX3Bvc2l0aW9uU3RyYXRlZ3kgPSB0aGlzLl9wc0J1aWxkZXJcblx0XHRcdFx0LmZsZXhpYmxlQ29ubmVjdGVkVG8oY29uZmlnLmF0dGFjaFRvKVxuXHRcdFx0XHQud2l0aFBvc2l0aW9ucygoY29uZmlnLmF0dGFjaFBvc2l0aW9ucyA/PyBjb25maWcuYWxpZ24gPT09ICd0b3AnKSA/IHRvcEZpcnN0UG9zaXRpb25zIDogYm90dG9tRmlyc3RQb3NpdGlvbnMpXG5cdFx0XHRcdC53aXRoRGVmYXVsdE9mZnNldFkoY29uZmlnLnNpZGVPZmZzZXQgPz8gMCk7XG5cdFx0XHR0aGlzLl9jb25maWcgPSB7XG5cdFx0XHRcdC4uLnRoaXMuX2NvbmZpZyxcblx0XHRcdFx0cG9zaXRpb25TdHJhdGVneTogdGhpcy5fcG9zaXRpb25TdHJhdGVneSxcblx0XHRcdFx0c2Nyb2xsU3RyYXRlZ3k6IHRoaXMuX292ZXJsYXkuc2Nyb2xsU3RyYXRlZ2llcy5yZXBvc2l0aW9uKCksXG5cdFx0XHR9O1xuXHRcdFx0dGhpcy5fcG9zaXRpb25DaGFuZ2VzT2JzZXJ2YWJsZXMkLm5leHQodGhpcy5fcG9zaXRpb25TdHJhdGVneS5wb3NpdGlvbkNoYW5nZXMpO1xuXHRcdH1cblx0XHR0aGlzLl9vdmVybGF5UmVmID0gdGhpcy5fb3ZlcmxheS5jcmVhdGUodGhpcy5fY29uZmlnKTtcblx0fVxuXG5cdHB1YmxpYyBzZXRDb250ZW50KHZhbHVlOiBUZW1wbGF0ZVJlZjx1bmtub3duPiB8IEJybkhvdmVyQ2FyZENvbnRlbnREaXJlY3RpdmUsIHZjcjogVmlld0NvbnRhaW5lclJlZikge1xuXHRcdHRoaXMuX2NvbnRlbnQuc2V0KG5ldyBUZW1wbGF0ZVBvcnRhbDx1bmtub3duPih2YWx1ZSBpbnN0YW5jZW9mIFRlbXBsYXRlUmVmID8gdmFsdWUgOiB2YWx1ZS50ZW1wbGF0ZSwgdmNyKSk7XG5cblx0XHRpZiAoIXRoaXMuX292ZXJsYXlSZWYpIHtcblx0XHRcdHRoaXMuX292ZXJsYXlSZWYgPSB0aGlzLl9vdmVybGF5LmNyZWF0ZSh0aGlzLl9jb25maWcpO1xuXHRcdH1cblx0fVxuXG5cdHB1YmxpYyBzZXRTdGF0ZShuZXdTdGF0ZTogJ29wZW4nIHwgJ2Nsb3NlZCcpIHtcblx0XHR0aGlzLl9zdGF0ZS5zZXQobmV3U3RhdGUpO1xuXHR9XG5cblx0cHVibGljIHNob3coKSB7XG5cdFx0Y29uc3QgY29udGVudCA9IHRoaXMuX2NvbnRlbnQoKTtcblx0XHRpZiAoIWNvbnRlbnQgfHwgIXRoaXMuX292ZXJsYXlSZWYpIHJldHVybjtcblxuXHRcdHRoaXMuX292ZXJsYXlSZWY/LmRldGFjaCgpO1xuXHRcdHRoaXMuX292ZXJsYXlSZWY/LmF0dGFjaChjb250ZW50KTtcblxuXHRcdHRoaXMuX2Rlc3Ryb3llZCQgPSBuZXcgU3ViamVjdDx2b2lkPigpO1xuXG5cdFx0dGhpcy5fb3ZlcmxheUhvdmVyZWRPYnNlcnZhYmxlcyQubmV4dChcblx0XHRcdGNyZWF0ZUhvdmVyT2JzZXJ2YWJsZSh0aGlzLl9vdmVybGF5UmVmLmhvc3RFbGVtZW50LCB0aGlzLl96b25lLCB0aGlzLl9kZXN0cm95ZWQkKSxcblx0XHQpO1xuXHR9XG5cblx0cHVibGljIGhpZGUoKSB7XG5cdFx0dGhpcy5fb3ZlcmxheVJlZj8uZGV0YWNoKCk7XG5cdFx0dGhpcy5fZGVzdHJveWVkJC5uZXh0KCk7XG5cdFx0dGhpcy5fZGVzdHJveWVkJC5jb21wbGV0ZSgpO1xuXHRcdHRoaXMuX2Rlc3Ryb3llZCQgPSBuZXcgU3ViamVjdDx2b2lkPigpO1xuXHR9XG59XG5cbkBEaXJlY3RpdmUoe1xuXHRzZWxlY3RvcjogJ1ticm5Ib3ZlckNhcmRUcmlnZ2VyXTpub3QobmctY29udGFpbmVyKSxbYnJuSG92ZXJDYXJkVHJpZ2dlckZvcl06bm90KG5nLWNvbnRhaW5lciknLFxuXHRzdGFuZGFsb25lOiB0cnVlLFxuXHRleHBvcnRBczogJ2JybkhvdmVyQ2FyZFRyaWdnZXInLFxufSlcbmV4cG9ydCBjbGFzcyBCcm5Ib3ZlckNhcmRUcmlnZ2VyRGlyZWN0aXZlIGltcGxlbWVudHMgT25Jbml0LCBPbkRlc3Ryb3kge1xuXHRwcml2YXRlIHJlYWRvbmx5IF9kZXN0cm95JCA9IG5ldyBTdWJqZWN0PHZvaWQ+KCk7XG5cdHByaXZhdGUgcmVhZG9ubHkgX3ZjciA9IGluamVjdChWaWV3Q29udGFpbmVyUmVmKTtcblx0cHJpdmF0ZSByZWFkb25seSBfem9uZSA9IGluamVjdChOZ1pvbmUpO1xuXHRwcml2YXRlIHJlYWRvbmx5IF9lbCA9IGluamVjdChFbGVtZW50UmVmKTtcblx0cHJpdmF0ZSByZWFkb25seSBfY29udGVudFNlcnZpY2UgPSBpbmplY3QoQnJuSG92ZXJDYXJkQ29udGVudFNlcnZpY2UpO1xuXHRwcml2YXRlIHJlYWRvbmx5IF9mb2N1c01vbml0b3IgPSBpbmplY3QoRm9jdXNNb25pdG9yKTtcblxuXHRwdWJsaWMgcmVhZG9ubHkgZm9jdXNlZCQ6IE9ic2VydmFibGU8Ym9vbGVhbj4gPSB0aGlzLl9mb2N1c01vbml0b3IubW9uaXRvcih0aGlzLl9lbCkucGlwZShtYXAoKGUpID0+IGUgIT09IG51bGwpKTtcblxuXHRwdWJsaWMgcmVhZG9ubHkgaG92ZXJlZCQ6IE9ic2VydmFibGU8Ym9vbGVhbj4gPSBtZXJnZShcblx0XHRmcm9tRXZlbnQodGhpcy5fZWwubmF0aXZlRWxlbWVudCwgJ2NsaWNrJykucGlwZShtYXAoKCkgPT4gZmFsc2UpKSxcblx0XHRjcmVhdGVIb3Zlck9ic2VydmFibGUodGhpcy5fZWwubmF0aXZlRWxlbWVudCwgdGhpcy5fem9uZSwgdGhpcy5fZGVzdHJveSQpLFxuXHRcdHRoaXMuX2NvbnRlbnRTZXJ2aWNlLmhvdmVyZWQkLFxuXHRcdHRoaXMuZm9jdXNlZCQsXG5cdCkucGlwZShkaXN0aW5jdFVudGlsQ2hhbmdlZCgpKTtcblx0cHVibGljIHJlYWRvbmx5IHNob3dpbmckOiBPYnNlcnZhYmxlPGJvb2xlYW4+ID0gdGhpcy5ob3ZlcmVkJC5waXBlKFxuXHRcdC8vIHdlIHNldCB0aGUgc3RhdGUgdG8gb3BlbiBoZXJlIGJlY2F1c2Ugd2UgYXJlIGFib3V0IHRvIG9wZW4gc2hvdyB0aGUgY29udGVudFxuXHRcdHRhcCgodmlzaWJsZSkgPT4gdmlzaWJsZSAmJiB0aGlzLl9jb250ZW50U2VydmljZS5zZXRTdGF0ZSgnb3BlbicpKSxcblx0XHRzd2l0Y2hNYXAoKHZpc2libGUpID0+IHtcblx0XHRcdC8vIHdlIGFyZSBkZWxheWluZyBiYXNlZCBvbiB0aGUgY29uZmlndXJlLWFibGUgaW5wdXRcblx0XHRcdHJldHVybiBvZih2aXNpYmxlKS5waXBlKGRlbGF5KHZpc2libGUgPyB0aGlzLnNob3dEZWxheSA6IHRoaXMuaGlkZURlbGF5KSk7XG5cdFx0fSksXG5cdFx0c3dpdGNoTWFwKCh2aXNpYmxlKSA9PiB7XG5cdFx0XHQvLyBkb24ndCBkbyBhbnl0aGluZyB3aGVuIHdlIGFyZSBpbiB0aGUgcHJvY2VzcyBvZiBzaG93aW5nIHRoZSBjb250ZW50XG5cdFx0XHRpZiAodmlzaWJsZSkgcmV0dXJuIG9mKHZpc2libGUpO1xuXHRcdFx0Ly8gd2Ugc2V0IHRoZSBzdGF0ZSB0byBjbG9zZWQgaGVyZSB0byB0cmlnZ2VyIGFueSBhbmltYXRpb25zIGZvciB0aGUgZWxlbWVudCBsZWF2aW5nXG5cdFx0XHR0aGlzLl9jb250ZW50U2VydmljZS5zZXRTdGF0ZSgnY2xvc2VkJyk7XG5cdFx0XHQvLyB0aGVuIGRlbGF5IHRvIHdhaXQgZm9yIHRoZSBsZWF2aW5nIGFuaW1hdGlvbiB0byBmaW5pc2hcblx0XHRcdHJldHVybiBvZih2aXNpYmxlKS5waXBlKGRlbGF5KHRoaXMuYW5pbWF0aW9uRGVsYXkpKTtcblx0XHR9KSxcblx0XHRkaXN0aW5jdFVudGlsQ2hhbmdlZCgpLFxuXHRcdHNoYXJlKCksXG5cdFx0dGFrZVVudGlsKHRoaXMuX2Rlc3Ryb3kkKSxcblx0KTtcblxuXHRASW5wdXQoKVxuXHRwdWJsaWMgc2hvd0RlbGF5ID0gMzAwO1xuXHRASW5wdXQoKVxuXHRwdWJsaWMgaGlkZURlbGF5ID0gNTAwO1xuXHRASW5wdXQoKVxuXHRwdWJsaWMgYW5pbWF0aW9uRGVsYXkgPSAxMDA7XG5cdEBJbnB1dCgpXG5cdHB1YmxpYyBzaWRlT2Zmc2V0ID0gNTtcblxuXHRASW5wdXQoKVxuXHRwdWJsaWMgYWxpZ246ICd0b3AnIHwgJ2JvdHRvbScgPSAnYm90dG9tJztcblxuXHRASW5wdXQoKVxuXHRwdWJsaWMgc2V0IGJybkhvdmVyQ2FyZFRyaWdnZXJGb3IodmFsdWU6IFRlbXBsYXRlUmVmPHVua25vd24+IHwgQnJuSG92ZXJDYXJkQ29udGVudERpcmVjdGl2ZSkge1xuXHRcdHRoaXMuX2NvbnRlbnRTZXJ2aWNlLnNldENvbnRlbnQodmFsdWUsIHRoaXMuX3Zjcik7XG5cdH1cblxuXHRwdWJsaWMgbmdPbkluaXQoKSB7XG5cdFx0dGhpcy5fY29udGVudFNlcnZpY2Uuc2V0Q29uZmlnKHsgYXR0YWNoVG86IHRoaXMuX2VsLCBhbGlnbjogdGhpcy5hbGlnbiwgc2lkZU9mZnNldDogdGhpcy5zaWRlT2Zmc2V0IH0pO1xuXHRcdHRoaXMuc2hvd2luZyQuc3Vic2NyaWJlKChpc0hvdmVyZWQpID0+IHtcblx0XHRcdGlmIChpc0hvdmVyZWQpIHtcblx0XHRcdFx0dGhpcy5fY29udGVudFNlcnZpY2Uuc2hvdygpO1xuXHRcdFx0fSBlbHNlIHtcblx0XHRcdFx0dGhpcy5fY29udGVudFNlcnZpY2UuaGlkZSgpO1xuXHRcdFx0fVxuXHRcdH0pO1xuXHR9XG5cblx0cHVibGljIG5nT25EZXN0cm95KCkge1xuXHRcdHRoaXMuX2Rlc3Ryb3kkLm5leHQoKTtcblx0XHR0aGlzLl9kZXN0cm95JC5jb21wbGV0ZSgpO1xuXHR9XG59XG4iXX0=
@@ -0,0 +1,34 @@
1
+ import { Component, ContentChild } from '@angular/core';
2
+ import { BrnHoverCardContentDirective, BrnHoverCardContentService, BrnHoverCardTriggerDirective, } from './brn-hover-card-content.service';
3
+ import * as i0 from "@angular/core";
4
+ export class BrnHoverCardComponent {
5
+ _trigger;
6
+ _content;
7
+ ngAfterContentInit() {
8
+ if (!this._trigger || !this._content)
9
+ return;
10
+ this._trigger.brnHoverCardTriggerFor = this._content;
11
+ }
12
+ /** @nocollapse */ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.5", ngImport: i0, type: BrnHoverCardComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
13
+ /** @nocollapse */ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.5", type: BrnHoverCardComponent, isStandalone: true, selector: "brn-hover-card", providers: [BrnHoverCardContentService], queries: [{ propertyName: "_trigger", first: true, predicate: BrnHoverCardTriggerDirective, descendants: true, static: true }, { propertyName: "_content", first: true, predicate: BrnHoverCardContentDirective, descendants: true, static: true }], ngImport: i0, template: `
14
+ <ng-content />
15
+ `, isInline: true });
16
+ }
17
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.5", ngImport: i0, type: BrnHoverCardComponent, decorators: [{
18
+ type: Component,
19
+ args: [{
20
+ selector: 'brn-hover-card',
21
+ standalone: true,
22
+ providers: [BrnHoverCardContentService],
23
+ template: `
24
+ <ng-content />
25
+ `,
26
+ }]
27
+ }], propDecorators: { _trigger: [{
28
+ type: ContentChild,
29
+ args: [BrnHoverCardTriggerDirective, { static: true }]
30
+ }], _content: [{
31
+ type: ContentChild,
32
+ args: [BrnHoverCardContentDirective, { static: true }]
33
+ }] } });
34
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYnJuLWhvdmVyLWNhcmQuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9icmFpbi9ob3Zlci1jYXJkL3NyYy9saWIvYnJuLWhvdmVyLWNhcmQuY29tcG9uZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBeUIsU0FBUyxFQUFFLFlBQVksRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUMvRSxPQUFPLEVBQ04sNEJBQTRCLEVBQzVCLDBCQUEwQixFQUMxQiw0QkFBNEIsR0FDNUIsTUFBTSxrQ0FBa0MsQ0FBQzs7QUFVMUMsTUFBTSxPQUFPLHFCQUFxQjtJQUVoQixRQUFRLENBQWdDO0lBRXhDLFFBQVEsQ0FBZ0M7SUFFbEQsa0JBQWtCO1FBQ3hCLElBQUksQ0FBQyxJQUFJLENBQUMsUUFBUSxJQUFJLENBQUMsSUFBSSxDQUFDLFFBQVE7WUFBRSxPQUFPO1FBQzdDLElBQUksQ0FBQyxRQUFRLENBQUMsc0JBQXNCLEdBQUcsSUFBSSxDQUFDLFFBQVEsQ0FBQztJQUN0RCxDQUFDOzBIQVRXLHFCQUFxQjs4R0FBckIscUJBQXFCLDZEQUx0QixDQUFDLDBCQUEwQixDQUFDLGdFQU16Qiw0QkFBNEIseUZBRTVCLDRCQUE0Qiw4REFQaEM7O0VBRVQ7OzJGQUVXLHFCQUFxQjtrQkFSakMsU0FBUzttQkFBQztvQkFDVixRQUFRLEVBQUUsZ0JBQWdCO29CQUMxQixVQUFVLEVBQUUsSUFBSTtvQkFDaEIsU0FBUyxFQUFFLENBQUMsMEJBQTBCLENBQUM7b0JBQ3ZDLFFBQVEsRUFBRTs7RUFFVDtpQkFDRDs4QkFHaUIsUUFBUTtzQkFEeEIsWUFBWTt1QkFBQyw0QkFBNEIsRUFBRSxFQUFFLE1BQU0sRUFBRSxJQUFJLEVBQUU7Z0JBRzNDLFFBQVE7c0JBRHhCLFlBQVk7dUJBQUMsNEJBQTRCLEVBQUUsRUFBRSxNQUFNLEVBQUUsSUFBSSxFQUFFIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgdHlwZSBBZnRlckNvbnRlbnRJbml0LCBDb21wb25lbnQsIENvbnRlbnRDaGlsZCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHtcblx0QnJuSG92ZXJDYXJkQ29udGVudERpcmVjdGl2ZSxcblx0QnJuSG92ZXJDYXJkQ29udGVudFNlcnZpY2UsXG5cdEJybkhvdmVyQ2FyZFRyaWdnZXJEaXJlY3RpdmUsXG59IGZyb20gJy4vYnJuLWhvdmVyLWNhcmQtY29udGVudC5zZXJ2aWNlJztcblxuQENvbXBvbmVudCh7XG5cdHNlbGVjdG9yOiAnYnJuLWhvdmVyLWNhcmQnLFxuXHRzdGFuZGFsb25lOiB0cnVlLFxuXHRwcm92aWRlcnM6IFtCcm5Ib3ZlckNhcmRDb250ZW50U2VydmljZV0sXG5cdHRlbXBsYXRlOiBgXG5cdFx0PG5nLWNvbnRlbnQgLz5cblx0YCxcbn0pXG5leHBvcnQgY2xhc3MgQnJuSG92ZXJDYXJkQ29tcG9uZW50IGltcGxlbWVudHMgQWZ0ZXJDb250ZW50SW5pdCB7XG5cdEBDb250ZW50Q2hpbGQoQnJuSG92ZXJDYXJkVHJpZ2dlckRpcmVjdGl2ZSwgeyBzdGF0aWM6IHRydWUgfSlcblx0cHJpdmF0ZSByZWFkb25seSBfdHJpZ2dlcj86IEJybkhvdmVyQ2FyZFRyaWdnZXJEaXJlY3RpdmU7XG5cdEBDb250ZW50Q2hpbGQoQnJuSG92ZXJDYXJkQ29udGVudERpcmVjdGl2ZSwgeyBzdGF0aWM6IHRydWUgfSlcblx0cHJpdmF0ZSByZWFkb25seSBfY29udGVudD86IEJybkhvdmVyQ2FyZENvbnRlbnREaXJlY3RpdmU7XG5cblx0cHVibGljIG5nQWZ0ZXJDb250ZW50SW5pdCgpIHtcblx0XHRpZiAoIXRoaXMuX3RyaWdnZXIgfHwgIXRoaXMuX2NvbnRlbnQpIHJldHVybjtcblx0XHR0aGlzLl90cmlnZ2VyLmJybkhvdmVyQ2FyZFRyaWdnZXJGb3IgPSB0aGlzLl9jb250ZW50O1xuXHR9XG59XG4iXX0=
@@ -0,0 +1,19 @@
1
+ import { brnZoneOptimized } from '@spartan-ng/ui-core';
2
+ import { distinctUntilChanged, filter, fromEvent, map, merge, takeUntil } from 'rxjs';
3
+ function movedOut({ currentTarget, relatedTarget }) {
4
+ return !isElement(relatedTarget) || !isElement(currentTarget) || !currentTarget.contains(relatedTarget);
5
+ }
6
+ export function isElement(node) {
7
+ return !!node && 'nodeType' in node && node.nodeType === Node.ELEMENT_NODE;
8
+ }
9
+ export const createHoverObservable = (nativeElement, zone, destroyed$) => {
10
+ return merge(fromEvent(nativeElement, 'mouseenter').pipe(map(() => true)), fromEvent(nativeElement, 'mouseleave').pipe(map(() => false)),
11
+ // Hello, Safari
12
+ fromEvent(nativeElement, 'mouseout').pipe(filter(movedOut), map(() => false)),
13
+ /**
14
+ * NOTE: onmouseout events don't trigger when objects move under mouse in Safari
15
+ * https://bugs.webkit.org/show_bug.cgi?id=4117
16
+ */
17
+ fromEvent(nativeElement, 'transitionend').pipe(map(() => nativeElement.matches(':hover')))).pipe(distinctUntilChanged(), brnZoneOptimized(zone), takeUntil(destroyed$));
18
+ };
19
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY3JlYXRlSG92ZXJPYnNlcnZhYmxlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9icmFpbi9ob3Zlci1jYXJkL3NyYy9saWIvY3JlYXRlSG92ZXJPYnNlcnZhYmxlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUNBLE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLHFCQUFxQixDQUFDO0FBQ3ZELE9BQU8sRUFBaUMsb0JBQW9CLEVBQUUsTUFBTSxFQUFFLFNBQVMsRUFBRSxHQUFHLEVBQUUsS0FBSyxFQUFFLFNBQVMsRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUVySCxTQUFTLFFBQVEsQ0FBQyxFQUFFLGFBQWEsRUFBRSxhQUFhLEVBQWM7SUFDN0QsT0FBTyxDQUFDLFNBQVMsQ0FBQyxhQUFhLENBQUMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxhQUFhLENBQUMsSUFBSSxDQUFDLGFBQWEsQ0FBQyxRQUFRLENBQUMsYUFBYSxDQUFDLENBQUM7QUFDekcsQ0FBQztBQUVELE1BQU0sVUFBVSxTQUFTLENBQUMsSUFBMEM7SUFDbkUsT0FBTyxDQUFDLENBQUMsSUFBSSxJQUFJLFVBQVUsSUFBSSxJQUFJLElBQUksSUFBSSxDQUFDLFFBQVEsS0FBSyxJQUFJLENBQUMsWUFBWSxDQUFDO0FBQzVFLENBQUM7QUFFRCxNQUFNLENBQUMsTUFBTSxxQkFBcUIsR0FBRyxDQUNwQyxhQUEwQixFQUMxQixJQUFZLEVBQ1osVUFBeUIsRUFDSCxFQUFFO0lBQ3hCLE9BQU8sS0FBSyxDQUNYLFNBQVMsQ0FBQyxhQUFhLEVBQUUsWUFBWSxDQUFDLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxHQUFHLEVBQUUsQ0FBQyxJQUFJLENBQUMsQ0FBQyxFQUM1RCxTQUFTLENBQUMsYUFBYSxFQUFFLFlBQVksQ0FBQyxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsR0FBRyxFQUFFLENBQUMsS0FBSyxDQUFDLENBQUM7SUFDN0QsZ0JBQWdCO0lBQ2hCLFNBQVMsQ0FBYSxhQUFhLEVBQUUsVUFBVSxDQUFDLENBQUMsSUFBSSxDQUNwRCxNQUFNLENBQUMsUUFBUSxDQUFDLEVBQ2hCLEdBQUcsQ0FBQyxHQUFHLEVBQUUsQ0FBQyxLQUFLLENBQUMsQ0FDaEI7SUFDRDs7O09BR0c7SUFDSCxTQUFTLENBQUMsYUFBYSxFQUFFLGVBQWUsQ0FBQyxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsR0FBRyxFQUFFLENBQUMsYUFBYSxDQUFDLE9BQU8sQ0FBQyxRQUFRLENBQUMsQ0FBQyxDQUFDLENBQzFGLENBQUMsSUFBSSxDQUFDLG9CQUFvQixFQUFFLEVBQUUsZ0JBQWdCLENBQUMsSUFBSSxDQUFDLEVBQUUsU0FBUyxDQUFDLFVBQVUsQ0FBQyxDQUFDLENBQUM7QUFDL0UsQ0FBQyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHR5cGUgeyBOZ1pvbmUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IGJyblpvbmVPcHRpbWl6ZWQgfSBmcm9tICdAc3BhcnRhbi1uZy91aS1jb3JlJztcbmltcG9ydCB7IHR5cGUgT2JzZXJ2YWJsZSwgdHlwZSBTdWJqZWN0LCBkaXN0aW5jdFVudGlsQ2hhbmdlZCwgZmlsdGVyLCBmcm9tRXZlbnQsIG1hcCwgbWVyZ2UsIHRha2VVbnRpbCB9IGZyb20gJ3J4anMnO1xuXG5mdW5jdGlvbiBtb3ZlZE91dCh7IGN1cnJlbnRUYXJnZXQsIHJlbGF0ZWRUYXJnZXQgfTogTW91c2VFdmVudCk6IGJvb2xlYW4ge1xuXHRyZXR1cm4gIWlzRWxlbWVudChyZWxhdGVkVGFyZ2V0KSB8fCAhaXNFbGVtZW50KGN1cnJlbnRUYXJnZXQpIHx8ICFjdXJyZW50VGFyZ2V0LmNvbnRhaW5zKHJlbGF0ZWRUYXJnZXQpO1xufVxuXG5leHBvcnQgZnVuY3Rpb24gaXNFbGVtZW50KG5vZGU/OiBFbGVtZW50IHwgRXZlbnRUYXJnZXQgfCBOb2RlIHwgbnVsbCk6IG5vZGUgaXMgRWxlbWVudCB7XG5cdHJldHVybiAhIW5vZGUgJiYgJ25vZGVUeXBlJyBpbiBub2RlICYmIG5vZGUubm9kZVR5cGUgPT09IE5vZGUuRUxFTUVOVF9OT0RFO1xufVxuXG5leHBvcnQgY29uc3QgY3JlYXRlSG92ZXJPYnNlcnZhYmxlID0gKFxuXHRuYXRpdmVFbGVtZW50OiBIVE1MRWxlbWVudCxcblx0em9uZTogTmdab25lLFxuXHRkZXN0cm95ZWQkOiBTdWJqZWN0PHZvaWQ+LFxuKTogT2JzZXJ2YWJsZTxib29sZWFuPiA9PiB7XG5cdHJldHVybiBtZXJnZShcblx0XHRmcm9tRXZlbnQobmF0aXZlRWxlbWVudCwgJ21vdXNlZW50ZXInKS5waXBlKG1hcCgoKSA9PiB0cnVlKSksXG5cdFx0ZnJvbUV2ZW50KG5hdGl2ZUVsZW1lbnQsICdtb3VzZWxlYXZlJykucGlwZShtYXAoKCkgPT4gZmFsc2UpKSxcblx0XHQvLyBIZWxsbywgU2FmYXJpXG5cdFx0ZnJvbUV2ZW50PE1vdXNlRXZlbnQ+KG5hdGl2ZUVsZW1lbnQsICdtb3VzZW91dCcpLnBpcGUoXG5cdFx0XHRmaWx0ZXIobW92ZWRPdXQpLFxuXHRcdFx0bWFwKCgpID0+IGZhbHNlKSxcblx0XHQpLFxuXHRcdC8qKlxuXHRcdCAqIE5PVEU6IG9ubW91c2VvdXQgZXZlbnRzIGRvbid0IHRyaWdnZXIgd2hlbiBvYmplY3RzIG1vdmUgdW5kZXIgbW91c2UgaW4gU2FmYXJpXG5cdFx0ICogaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTQxMTdcblx0XHQgKi9cblx0XHRmcm9tRXZlbnQobmF0aXZlRWxlbWVudCwgJ3RyYW5zaXRpb25lbmQnKS5waXBlKG1hcCgoKSA9PiBuYXRpdmVFbGVtZW50Lm1hdGNoZXMoJzpob3ZlcicpKSksXG5cdCkucGlwZShkaXN0aW5jdFVudGlsQ2hhbmdlZCgpLCBicm5ab25lT3B0aW1pemVkKHpvbmUpLCB0YWtlVW50aWwoZGVzdHJveWVkJCkpO1xufTtcbiJdfQ==
@@ -0,0 +1,5 @@
1
+ /**
2
+ * Generated bundle index. Do not edit.
3
+ */
4
+ export * from './index';
5
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3BhcnRhbi1uZy1icmFpbi1ob3Zlci1jYXJkLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vbGlicy9icmFpbi9ob3Zlci1jYXJkL3NyYy9zcGFydGFuLW5nLWJyYWluLWhvdmVyLWNhcmQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7O0dBRUc7QUFFSCxjQUFjLFNBQVMsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbIi8qKlxuICogR2VuZXJhdGVkIGJ1bmRsZSBpbmRleC4gRG8gbm90IGVkaXQuXG4gKi9cblxuZXhwb3J0ICogZnJvbSAnLi9pbmRleCc7XG4iXX0=
@@ -0,0 +1,17 @@
1
+ import { NgModule } from '@angular/core';
2
+ import { BrnLabelDirective } from './lib/brn-label.directive';
3
+ import * as i0 from "@angular/core";
4
+ export * from './lib/brn-label.directive';
5
+ export class BrnLabelModule {
6
+ /** @nocollapse */ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.5", ngImport: i0, type: BrnLabelModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
7
+ /** @nocollapse */ static ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "18.2.5", ngImport: i0, type: BrnLabelModule, imports: [BrnLabelDirective], exports: [BrnLabelDirective] });
8
+ /** @nocollapse */ static ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "18.2.5", ngImport: i0, type: BrnLabelModule });
9
+ }
10
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.5", ngImport: i0, type: BrnLabelModule, decorators: [{
11
+ type: NgModule,
12
+ args: [{
13
+ imports: [BrnLabelDirective],
14
+ exports: [BrnLabelDirective],
15
+ }]
16
+ }] });
17
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9saWJzL2JyYWluL2xhYmVsL3NyYy9pbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ3pDLE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxNQUFNLDJCQUEyQixDQUFDOztBQUU5RCxjQUFjLDJCQUEyQixDQUFDO0FBTTFDLE1BQU0sT0FBTyxjQUFjOzBIQUFkLGNBQWM7MkhBQWQsY0FBYyxZQUhoQixpQkFBaUIsYUFDakIsaUJBQWlCOzJIQUVmLGNBQWM7OzJGQUFkLGNBQWM7a0JBSjFCLFFBQVE7bUJBQUM7b0JBQ1QsT0FBTyxFQUFFLENBQUMsaUJBQWlCLENBQUM7b0JBQzVCLE9BQU8sRUFBRSxDQUFDLGlCQUFpQixDQUFDO2lCQUM1QiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IE5nTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBCcm5MYWJlbERpcmVjdGl2ZSB9IGZyb20gJy4vbGliL2Jybi1sYWJlbC5kaXJlY3RpdmUnO1xuXG5leHBvcnQgKiBmcm9tICcuL2xpYi9icm4tbGFiZWwuZGlyZWN0aXZlJztcblxuQE5nTW9kdWxlKHtcblx0aW1wb3J0czogW0JybkxhYmVsRGlyZWN0aXZlXSxcblx0ZXhwb3J0czogW0JybkxhYmVsRGlyZWN0aXZlXSxcbn0pXG5leHBvcnQgY2xhc3MgQnJuTGFiZWxNb2R1bGUge31cbiJdfQ==
@@ -0,0 +1,49 @@
1
+ import { isPlatformBrowser } from '@angular/common';
2
+ import { Directive, ElementRef, PLATFORM_ID, inject, input, signal } from '@angular/core';
3
+ import { NgControl } from '@angular/forms';
4
+ import * as i0 from "@angular/core";
5
+ let nextId = 0;
6
+ export class BrnLabelDirective {
7
+ _ngControl = inject(NgControl, { optional: true });
8
+ id = input(`brn-label-${nextId++}`);
9
+ _isBrowser = isPlatformBrowser(inject(PLATFORM_ID));
10
+ _element = inject(ElementRef).nativeElement;
11
+ _changes;
12
+ _dataDisabled = signal('auto');
13
+ dataDisabled = this._dataDisabled.asReadonly();
14
+ ngOnInit() {
15
+ if (!this._isBrowser)
16
+ return;
17
+ this._changes = new MutationObserver((mutations) => {
18
+ mutations.forEach((mutation) => {
19
+ if (mutation.attributeName !== 'data-disabled')
20
+ return;
21
+ // eslint-disable-next-line
22
+ const state = mutation.target.attributes.getNamedItem(mutation.attributeName)?.value === 'true';
23
+ this._dataDisabled.set(state ?? 'auto');
24
+ });
25
+ });
26
+ this._changes?.observe(this._element, {
27
+ attributes: true,
28
+ childList: true,
29
+ characterData: true,
30
+ });
31
+ }
32
+ /** @nocollapse */ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.5", ngImport: i0, type: BrnLabelDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive });
33
+ /** @nocollapse */ static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "17.1.0", version: "18.2.5", type: BrnLabelDirective, isStandalone: true, selector: "[brnLabel]", inputs: { id: { classPropertyName: "id", publicName: "id", isSignal: true, isRequired: false, transformFunction: null } }, host: { properties: { "id": "id()", "class.ng-invalid": "this._ngControl?.invalid || null", "class.ng-dirty": "this._ngControl?.dirty || null", "class.ng-valid": "this._ngControl?.valid || null", "class.ng-touched": "this._ngControl?.touched || null" } }, ngImport: i0 });
34
+ }
35
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.5", ngImport: i0, type: BrnLabelDirective, decorators: [{
36
+ type: Directive,
37
+ args: [{
38
+ selector: '[brnLabel]',
39
+ standalone: true,
40
+ host: {
41
+ '[id]': 'id()',
42
+ '[class.ng-invalid]': 'this._ngControl?.invalid || null',
43
+ '[class.ng-dirty]': 'this._ngControl?.dirty || null',
44
+ '[class.ng-valid]': 'this._ngControl?.valid || null',
45
+ '[class.ng-touched]': 'this._ngControl?.touched || null',
46
+ },
47
+ }]
48
+ }] });
49
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYnJuLWxhYmVsLmRpcmVjdGl2ZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvYnJhaW4vbGFiZWwvc3JjL2xpYi9icm4tbGFiZWwuZGlyZWN0aXZlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQ3BELE9BQU8sRUFBRSxTQUFTLEVBQUUsVUFBVSxFQUFlLFdBQVcsRUFBRSxNQUFNLEVBQUUsS0FBSyxFQUFFLE1BQU0sRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUN2RyxPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7O0FBRTNDLElBQUksTUFBTSxHQUFHLENBQUMsQ0FBQztBQWFmLE1BQU0sT0FBTyxpQkFBaUI7SUFDVixVQUFVLEdBQUcsTUFBTSxDQUFDLFNBQVMsRUFBRSxFQUFFLFFBQVEsRUFBRSxJQUFJLEVBQUUsQ0FBQyxDQUFDO0lBRXRELEVBQUUsR0FBRyxLQUFLLENBQVMsYUFBYSxNQUFNLEVBQUUsRUFBRSxDQUFDLENBQUM7SUFFM0MsVUFBVSxHQUFHLGlCQUFpQixDQUFDLE1BQU0sQ0FBQyxXQUFXLENBQUMsQ0FBQyxDQUFDO0lBQ3BELFFBQVEsR0FBRyxNQUFNLENBQUMsVUFBVSxDQUFDLENBQUMsYUFBYSxDQUFDO0lBQ3JELFFBQVEsQ0FBb0I7SUFDbkIsYUFBYSxHQUFHLE1BQU0sQ0FBbUIsTUFBTSxDQUFDLENBQUM7SUFDbEQsWUFBWSxHQUFHLElBQUksQ0FBQyxhQUFhLENBQUMsVUFBVSxFQUFFLENBQUM7SUFFL0QsUUFBUTtRQUNQLElBQUksQ0FBQyxJQUFJLENBQUMsVUFBVTtZQUFFLE9BQU87UUFDN0IsSUFBSSxDQUFDLFFBQVEsR0FBRyxJQUFJLGdCQUFnQixDQUFDLENBQUMsU0FBMkIsRUFBRSxFQUFFO1lBQ3BFLFNBQVMsQ0FBQyxPQUFPLENBQUMsQ0FBQyxRQUF3QixFQUFFLEVBQUU7Z0JBQzlDLElBQUksUUFBUSxDQUFDLGFBQWEsS0FBSyxlQUFlO29CQUFFLE9BQU87Z0JBQ3ZELDJCQUEyQjtnQkFDM0IsTUFBTSxLQUFLLEdBQUksUUFBUSxDQUFDLE1BQWMsQ0FBQyxVQUFVLENBQUMsWUFBWSxDQUFDLFFBQVEsQ0FBQyxhQUFhLENBQUMsRUFBRSxLQUFLLEtBQUssTUFBTSxDQUFDO2dCQUN6RyxJQUFJLENBQUMsYUFBYSxDQUFDLEdBQUcsQ0FBQyxLQUFLLElBQUksTUFBTSxDQUFDLENBQUM7WUFDekMsQ0FBQyxDQUFDLENBQUM7UUFDSixDQUFDLENBQUMsQ0FBQztRQUNILElBQUksQ0FBQyxRQUFRLEVBQUUsT0FBTyxDQUFDLElBQUksQ0FBQyxRQUFRLEVBQUU7WUFDckMsVUFBVSxFQUFFLElBQUk7WUFDaEIsU0FBUyxFQUFFLElBQUk7WUFDZixhQUFhLEVBQUUsSUFBSTtTQUNuQixDQUFDLENBQUM7SUFDSixDQUFDOzBIQTFCVyxpQkFBaUI7OEdBQWpCLGlCQUFpQjs7MkZBQWpCLGlCQUFpQjtrQkFYN0IsU0FBUzttQkFBQztvQkFDVixRQUFRLEVBQUUsWUFBWTtvQkFDdEIsVUFBVSxFQUFFLElBQUk7b0JBQ2hCLElBQUksRUFBRTt3QkFDTCxNQUFNLEVBQUUsTUFBTTt3QkFDZCxvQkFBb0IsRUFBRSxrQ0FBa0M7d0JBQ3hELGtCQUFrQixFQUFFLGdDQUFnQzt3QkFDcEQsa0JBQWtCLEVBQUUsZ0NBQWdDO3dCQUNwRCxvQkFBb0IsRUFBRSxrQ0FBa0M7cUJBQ3hEO2lCQUNEIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgaXNQbGF0Zm9ybUJyb3dzZXIgfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xuaW1wb3J0IHsgRGlyZWN0aXZlLCBFbGVtZW50UmVmLCB0eXBlIE9uSW5pdCwgUExBVEZPUk1fSUQsIGluamVjdCwgaW5wdXQsIHNpZ25hbCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgTmdDb250cm9sIH0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xuXG5sZXQgbmV4dElkID0gMDtcblxuQERpcmVjdGl2ZSh7XG5cdHNlbGVjdG9yOiAnW2JybkxhYmVsXScsXG5cdHN0YW5kYWxvbmU6IHRydWUsXG5cdGhvc3Q6IHtcblx0XHQnW2lkXSc6ICdpZCgpJyxcblx0XHQnW2NsYXNzLm5nLWludmFsaWRdJzogJ3RoaXMuX25nQ29udHJvbD8uaW52YWxpZCB8fCBudWxsJyxcblx0XHQnW2NsYXNzLm5nLWRpcnR5XSc6ICd0aGlzLl9uZ0NvbnRyb2w/LmRpcnR5IHx8IG51bGwnLFxuXHRcdCdbY2xhc3MubmctdmFsaWRdJzogJ3RoaXMuX25nQ29udHJvbD8udmFsaWQgfHwgbnVsbCcsXG5cdFx0J1tjbGFzcy5uZy10b3VjaGVkXSc6ICd0aGlzLl9uZ0NvbnRyb2w/LnRvdWNoZWQgfHwgbnVsbCcsXG5cdH0sXG59KVxuZXhwb3J0IGNsYXNzIEJybkxhYmVsRGlyZWN0aXZlIGltcGxlbWVudHMgT25Jbml0IHtcblx0cHJvdGVjdGVkIHJlYWRvbmx5IF9uZ0NvbnRyb2wgPSBpbmplY3QoTmdDb250cm9sLCB7IG9wdGlvbmFsOiB0cnVlIH0pO1xuXG5cdHB1YmxpYyByZWFkb25seSBpZCA9IGlucHV0PHN0cmluZz4oYGJybi1sYWJlbC0ke25leHRJZCsrfWApO1xuXG5cdHByaXZhdGUgcmVhZG9ubHkgX2lzQnJvd3NlciA9IGlzUGxhdGZvcm1Ccm93c2VyKGluamVjdChQTEFURk9STV9JRCkpO1xuXHRwcml2YXRlIHJlYWRvbmx5IF9lbGVtZW50ID0gaW5qZWN0KEVsZW1lbnRSZWYpLm5hdGl2ZUVsZW1lbnQ7XG5cdHByaXZhdGUgX2NoYW5nZXM/OiBNdXRhdGlvbk9ic2VydmVyO1xuXHRwcml2YXRlIHJlYWRvbmx5IF9kYXRhRGlzYWJsZWQgPSBzaWduYWw8Ym9vbGVhbiB8ICdhdXRvJz4oJ2F1dG8nKTtcblx0cHVibGljIHJlYWRvbmx5IGRhdGFEaXNhYmxlZCA9IHRoaXMuX2RhdGFEaXNhYmxlZC5hc1JlYWRvbmx5KCk7XG5cblx0bmdPbkluaXQoKTogdm9pZCB7XG5cdFx0aWYgKCF0aGlzLl9pc0Jyb3dzZXIpIHJldHVybjtcblx0XHR0aGlzLl9jaGFuZ2VzID0gbmV3IE11dGF0aW9uT2JzZXJ2ZXIoKG11dGF0aW9uczogTXV0YXRpb25SZWNvcmRbXSkgPT4ge1xuXHRcdFx0bXV0YXRpb25zLmZvckVhY2goKG11dGF0aW9uOiBNdXRhdGlvblJlY29yZCkgPT4ge1xuXHRcdFx0XHRpZiAobXV0YXRpb24uYXR0cmlidXRlTmFtZSAhPT0gJ2RhdGEtZGlzYWJsZWQnKSByZXR1cm47XG5cdFx0XHRcdC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZVxuXHRcdFx0XHRjb25zdCBzdGF0ZSA9IChtdXRhdGlvbi50YXJnZXQgYXMgYW55KS5hdHRyaWJ1dGVzLmdldE5hbWVkSXRlbShtdXRhdGlvbi5hdHRyaWJ1dGVOYW1lKT8udmFsdWUgPT09ICd0cnVlJztcblx0XHRcdFx0dGhpcy5fZGF0YURpc2FibGVkLnNldChzdGF0ZSA/PyAnYXV0bycpO1xuXHRcdFx0fSk7XG5cdFx0fSk7XG5cdFx0dGhpcy5fY2hhbmdlcz8ub2JzZXJ2ZSh0aGlzLl9lbGVtZW50LCB7XG5cdFx0XHRhdHRyaWJ1dGVzOiB0cnVlLFxuXHRcdFx0Y2hpbGRMaXN0OiB0cnVlLFxuXHRcdFx0Y2hhcmFjdGVyRGF0YTogdHJ1ZSxcblx0XHR9KTtcblx0fVxufVxuIl19
@@ -0,0 +1,5 @@
1
+ /**
2
+ * Generated bundle index. Do not edit.
3
+ */
4
+ export * from './index';
5
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3BhcnRhbi1uZy1icmFpbi1sYWJlbC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL2xpYnMvYnJhaW4vbGFiZWwvc3JjL3NwYXJ0YW4tbmctYnJhaW4tbGFiZWwudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7O0dBRUc7QUFFSCxjQUFjLFNBQVMsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbIi8qKlxuICogR2VuZXJhdGVkIGJ1bmRsZSBpbmRleC4gRG8gbm90IGVkaXQuXG4gKi9cblxuZXhwb3J0ICogZnJvbSAnLi9pbmRleCc7XG4iXX0=
@@ -0,0 +1,100 @@
1
+ import { NgModule } from '@angular/core';
2
+ import { BrnContextMenuTriggerDirective } from './lib/brn-context-menu-trigger.directive';
3
+ import { BrnMenuBarDirective } from './lib/brn-menu-bar.directive';
4
+ import { BrnMenuGroupDirective } from './lib/brn-menu-group.directive';
5
+ import { BrnMenuItemCheckboxDirective } from './lib/brn-menu-item-checkbox.directive';
6
+ import { BrnMenuItemRadioDirective } from './lib/brn-menu-item-radio.directive';
7
+ import { BrnMenuItemDirective } from './lib/brn-menu-item.directive';
8
+ import { BrnMenuTriggerDirective } from './lib/brn-menu-trigger.directive';
9
+ import { BrnMenuDirective } from './lib/brn-menu.directive';
10
+ import * as i0 from "@angular/core";
11
+ export * from './lib/brn-context-menu-trigger.directive';
12
+ export * from './lib/brn-menu-bar.directive';
13
+ export * from './lib/brn-menu-group.directive';
14
+ export * from './lib/brn-menu-item-checkbox.directive';
15
+ export * from './lib/brn-menu-item-radio.directive';
16
+ export * from './lib/brn-menu-item.directive';
17
+ export * from './lib/brn-menu-trigger.directive';
18
+ export * from './lib/brn-menu.directive';
19
+ export const BrnMenuItemImports = [
20
+ BrnMenuGroupDirective,
21
+ BrnMenuItemDirective,
22
+ BrnMenuItemRadioDirective,
23
+ BrnMenuItemCheckboxDirective,
24
+ ];
25
+ export const BrnMenuImports = [BrnMenuTriggerDirective, BrnMenuDirective, ...BrnMenuItemImports];
26
+ export const BrnMenuBarImports = [...BrnMenuImports, BrnMenuBarDirective];
27
+ export const BrnContextMenuImports = [...BrnMenuImports, BrnContextMenuTriggerDirective];
28
+ export class BrnMenuItemModule {
29
+ /** @nocollapse */ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.5", ngImport: i0, type: BrnMenuItemModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
30
+ /** @nocollapse */ static ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "18.2.5", ngImport: i0, type: BrnMenuItemModule, imports: [BrnMenuGroupDirective,
31
+ BrnMenuItemDirective,
32
+ BrnMenuItemRadioDirective,
33
+ BrnMenuItemCheckboxDirective], exports: [BrnMenuGroupDirective,
34
+ BrnMenuItemDirective,
35
+ BrnMenuItemRadioDirective,
36
+ BrnMenuItemCheckboxDirective] });
37
+ /** @nocollapse */ static ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "18.2.5", ngImport: i0, type: BrnMenuItemModule });
38
+ }
39
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.5", ngImport: i0, type: BrnMenuItemModule, decorators: [{
40
+ type: NgModule,
41
+ args: [{
42
+ imports: [...BrnMenuItemImports],
43
+ exports: [...BrnMenuItemImports],
44
+ }]
45
+ }] });
46
+ export class BrnMenuModule {
47
+ /** @nocollapse */ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.5", ngImport: i0, type: BrnMenuModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
48
+ /** @nocollapse */ static ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "18.2.5", ngImport: i0, type: BrnMenuModule, imports: [BrnMenuTriggerDirective, BrnMenuDirective, BrnMenuGroupDirective,
49
+ BrnMenuItemDirective,
50
+ BrnMenuItemRadioDirective,
51
+ BrnMenuItemCheckboxDirective], exports: [BrnMenuTriggerDirective, BrnMenuDirective, BrnMenuGroupDirective,
52
+ BrnMenuItemDirective,
53
+ BrnMenuItemRadioDirective,
54
+ BrnMenuItemCheckboxDirective] });
55
+ /** @nocollapse */ static ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "18.2.5", ngImport: i0, type: BrnMenuModule });
56
+ }
57
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.5", ngImport: i0, type: BrnMenuModule, decorators: [{
58
+ type: NgModule,
59
+ args: [{
60
+ imports: [...BrnMenuImports],
61
+ exports: [...BrnMenuImports],
62
+ }]
63
+ }] });
64
+ export class BrnMenuBarModule {
65
+ /** @nocollapse */ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.5", ngImport: i0, type: BrnMenuBarModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
66
+ /** @nocollapse */ static ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "18.2.5", ngImport: i0, type: BrnMenuBarModule, imports: [BrnMenuTriggerDirective, BrnMenuDirective, BrnMenuGroupDirective,
67
+ BrnMenuItemDirective,
68
+ BrnMenuItemRadioDirective,
69
+ BrnMenuItemCheckboxDirective, BrnMenuBarDirective], exports: [BrnMenuTriggerDirective, BrnMenuDirective, BrnMenuGroupDirective,
70
+ BrnMenuItemDirective,
71
+ BrnMenuItemRadioDirective,
72
+ BrnMenuItemCheckboxDirective, BrnMenuBarDirective] });
73
+ /** @nocollapse */ static ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "18.2.5", ngImport: i0, type: BrnMenuBarModule });
74
+ }
75
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.5", ngImport: i0, type: BrnMenuBarModule, decorators: [{
76
+ type: NgModule,
77
+ args: [{
78
+ imports: [...BrnMenuBarImports],
79
+ exports: [...BrnMenuBarImports],
80
+ }]
81
+ }] });
82
+ export class BrnContextMenuModule {
83
+ /** @nocollapse */ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.5", ngImport: i0, type: BrnContextMenuModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
84
+ /** @nocollapse */ static ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "18.2.5", ngImport: i0, type: BrnContextMenuModule, imports: [BrnMenuTriggerDirective, BrnMenuDirective, BrnMenuGroupDirective,
85
+ BrnMenuItemDirective,
86
+ BrnMenuItemRadioDirective,
87
+ BrnMenuItemCheckboxDirective, BrnContextMenuTriggerDirective], exports: [BrnMenuTriggerDirective, BrnMenuDirective, BrnMenuGroupDirective,
88
+ BrnMenuItemDirective,
89
+ BrnMenuItemRadioDirective,
90
+ BrnMenuItemCheckboxDirective, BrnContextMenuTriggerDirective] });
91
+ /** @nocollapse */ static ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "18.2.5", ngImport: i0, type: BrnContextMenuModule });
92
+ }
93
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.5", ngImport: i0, type: BrnContextMenuModule, decorators: [{
94
+ type: NgModule,
95
+ args: [{
96
+ imports: [...BrnContextMenuImports],
97
+ exports: [...BrnContextMenuImports],
98
+ }]
99
+ }] });
100
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9saWJzL2JyYWluL21lbnUvc3JjL2luZGV4LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFFekMsT0FBTyxFQUFFLDhCQUE4QixFQUFFLE1BQU0sMENBQTBDLENBQUM7QUFDMUYsT0FBTyxFQUFFLG1CQUFtQixFQUFFLE1BQU0sOEJBQThCLENBQUM7QUFDbkUsT0FBTyxFQUFFLHFCQUFxQixFQUFFLE1BQU0sZ0NBQWdDLENBQUM7QUFDdkUsT0FBTyxFQUFFLDRCQUE0QixFQUFFLE1BQU0sd0NBQXdDLENBQUM7QUFDdEYsT0FBTyxFQUFFLHlCQUF5QixFQUFFLE1BQU0scUNBQXFDLENBQUM7QUFDaEYsT0FBTyxFQUFFLG9CQUFvQixFQUFFLE1BQU0sK0JBQStCLENBQUM7QUFDckUsT0FBTyxFQUFFLHVCQUF1QixFQUFFLE1BQU0sa0NBQWtDLENBQUM7QUFDM0UsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0sMEJBQTBCLENBQUM7O0FBRTVELGNBQWMsMENBQTBDLENBQUM7QUFDekQsY0FBYyw4QkFBOEIsQ0FBQztBQUM3QyxjQUFjLGdDQUFnQyxDQUFDO0FBQy9DLGNBQWMsd0NBQXdDLENBQUM7QUFDdkQsY0FBYyxxQ0FBcUMsQ0FBQztBQUNwRCxjQUFjLCtCQUErQixDQUFDO0FBQzlDLGNBQWMsa0NBQWtDLENBQUM7QUFDakQsY0FBYywwQkFBMEIsQ0FBQztBQUV6QyxNQUFNLENBQUMsTUFBTSxrQkFBa0IsR0FBRztJQUNqQyxxQkFBcUI7SUFDckIsb0JBQW9CO0lBQ3BCLHlCQUF5QjtJQUN6Qiw0QkFBNEI7Q0FDbkIsQ0FBQztBQUNYLE1BQU0sQ0FBQyxNQUFNLGNBQWMsR0FBRyxDQUFDLHVCQUF1QixFQUFFLGdCQUFnQixFQUFFLEdBQUcsa0JBQWtCLENBQVUsQ0FBQztBQUMxRyxNQUFNLENBQUMsTUFBTSxpQkFBaUIsR0FBRyxDQUFDLEdBQUcsY0FBYyxFQUFFLG1CQUFtQixDQUFVLENBQUM7QUFDbkYsTUFBTSxDQUFDLE1BQU0scUJBQXFCLEdBQUcsQ0FBQyxHQUFHLGNBQWMsRUFBRSw4QkFBOEIsQ0FBVSxDQUFDO0FBTWxHLE1BQU0sT0FBTyxpQkFBaUI7MEhBQWpCLGlCQUFpQjsySEFBakIsaUJBQWlCLFlBYjdCLHFCQUFxQjtZQUNyQixvQkFBb0I7WUFDcEIseUJBQXlCO1lBQ3pCLDRCQUE0QixhQUg1QixxQkFBcUI7WUFDckIsb0JBQW9CO1lBQ3BCLHlCQUF5QjtZQUN6Qiw0QkFBNEI7MkhBVWhCLGlCQUFpQjs7MkZBQWpCLGlCQUFpQjtrQkFKN0IsUUFBUTttQkFBQztvQkFDVCxPQUFPLEVBQUUsQ0FBQyxHQUFHLGtCQUFrQixDQUFDO29CQUNoQyxPQUFPLEVBQUUsQ0FBQyxHQUFHLGtCQUFrQixDQUFDO2lCQUNoQzs7QUFPRCxNQUFNLE9BQU8sYUFBYTswSEFBYixhQUFhOzJIQUFiLGFBQWEsWUFkSyx1QkFBdUIsRUFBRSxnQkFBZ0IsRUFMdkUscUJBQXFCO1lBQ3JCLG9CQUFvQjtZQUNwQix5QkFBeUI7WUFDekIsNEJBQTRCLGFBRUUsdUJBQXVCLEVBQUUsZ0JBQWdCLEVBTHZFLHFCQUFxQjtZQUNyQixvQkFBb0I7WUFDcEIseUJBQXlCO1lBQ3pCLDRCQUE0QjsySEFnQmhCLGFBQWE7OzJGQUFiLGFBQWE7a0JBSnpCLFFBQVE7bUJBQUM7b0JBQ1QsT0FBTyxFQUFFLENBQUMsR0FBRyxjQUFjLENBQUM7b0JBQzVCLE9BQU8sRUFBRSxDQUFDLEdBQUcsY0FBYyxDQUFDO2lCQUM1Qjs7QUFPRCxNQUFNLE9BQU8sZ0JBQWdCOzBIQUFoQixnQkFBZ0I7MkhBQWhCLGdCQUFnQixZQXBCRSx1QkFBdUIsRUFBRSxnQkFBZ0IsRUFMdkUscUJBQXFCO1lBQ3JCLG9CQUFvQjtZQUNwQix5QkFBeUI7WUFDekIsNEJBQTRCLEVBR3dCLG1CQUFtQixhQUR6Qyx1QkFBdUIsRUFBRSxnQkFBZ0IsRUFMdkUscUJBQXFCO1lBQ3JCLG9CQUFvQjtZQUNwQix5QkFBeUI7WUFDekIsNEJBQTRCLEVBR3dCLG1CQUFtQjsySEFtQjNELGdCQUFnQjs7MkZBQWhCLGdCQUFnQjtrQkFKNUIsUUFBUTttQkFBQztvQkFDVCxPQUFPLEVBQUUsQ0FBQyxHQUFHLGlCQUFpQixDQUFDO29CQUMvQixPQUFPLEVBQUUsQ0FBQyxHQUFHLGlCQUFpQixDQUFDO2lCQUMvQjs7QUFPRCxNQUFNLE9BQU8sb0JBQW9COzBIQUFwQixvQkFBb0I7MkhBQXBCLG9CQUFvQixZQTFCRix1QkFBdUIsRUFBRSxnQkFBZ0IsRUFMdkUscUJBQXFCO1lBQ3JCLG9CQUFvQjtZQUNwQix5QkFBeUI7WUFDekIsNEJBQTRCLEVBSTRCLDhCQUE4QixhQUZ4RCx1QkFBdUIsRUFBRSxnQkFBZ0IsRUFMdkUscUJBQXFCO1lBQ3JCLG9CQUFvQjtZQUNwQix5QkFBeUI7WUFDekIsNEJBQTRCLEVBSTRCLDhCQUE4QjsySEF3QjFFLG9CQUFvQjs7MkZBQXBCLG9CQUFvQjtrQkFKaEMsUUFBUTttQkFBQztvQkFDVCxPQUFPLEVBQUUsQ0FBQyxHQUFHLHFCQUFxQixDQUFDO29CQUNuQyxPQUFPLEVBQUUsQ0FBQyxHQUFHLHFCQUFxQixDQUFDO2lCQUNuQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IE5nTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5cbmltcG9ydCB7IEJybkNvbnRleHRNZW51VHJpZ2dlckRpcmVjdGl2ZSB9IGZyb20gJy4vbGliL2Jybi1jb250ZXh0LW1lbnUtdHJpZ2dlci5kaXJlY3RpdmUnO1xuaW1wb3J0IHsgQnJuTWVudUJhckRpcmVjdGl2ZSB9IGZyb20gJy4vbGliL2Jybi1tZW51LWJhci5kaXJlY3RpdmUnO1xuaW1wb3J0IHsgQnJuTWVudUdyb3VwRGlyZWN0aXZlIH0gZnJvbSAnLi9saWIvYnJuLW1lbnUtZ3JvdXAuZGlyZWN0aXZlJztcbmltcG9ydCB7IEJybk1lbnVJdGVtQ2hlY2tib3hEaXJlY3RpdmUgfSBmcm9tICcuL2xpYi9icm4tbWVudS1pdGVtLWNoZWNrYm94LmRpcmVjdGl2ZSc7XG5pbXBvcnQgeyBCcm5NZW51SXRlbVJhZGlvRGlyZWN0aXZlIH0gZnJvbSAnLi9saWIvYnJuLW1lbnUtaXRlbS1yYWRpby5kaXJlY3RpdmUnO1xuaW1wb3J0IHsgQnJuTWVudUl0ZW1EaXJlY3RpdmUgfSBmcm9tICcuL2xpYi9icm4tbWVudS1pdGVtLmRpcmVjdGl2ZSc7XG5pbXBvcnQgeyBCcm5NZW51VHJpZ2dlckRpcmVjdGl2ZSB9IGZyb20gJy4vbGliL2Jybi1tZW51LXRyaWdnZXIuZGlyZWN0aXZlJztcbmltcG9ydCB7IEJybk1lbnVEaXJlY3RpdmUgfSBmcm9tICcuL2xpYi9icm4tbWVudS5kaXJlY3RpdmUnO1xuXG5leHBvcnQgKiBmcm9tICcuL2xpYi9icm4tY29udGV4dC1tZW51LXRyaWdnZXIuZGlyZWN0aXZlJztcbmV4cG9ydCAqIGZyb20gJy4vbGliL2Jybi1tZW51LWJhci5kaXJlY3RpdmUnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvYnJuLW1lbnUtZ3JvdXAuZGlyZWN0aXZlJztcbmV4cG9ydCAqIGZyb20gJy4vbGliL2Jybi1tZW51LWl0ZW0tY2hlY2tib3guZGlyZWN0aXZlJztcbmV4cG9ydCAqIGZyb20gJy4vbGliL2Jybi1tZW51LWl0ZW0tcmFkaW8uZGlyZWN0aXZlJztcbmV4cG9ydCAqIGZyb20gJy4vbGliL2Jybi1tZW51LWl0ZW0uZGlyZWN0aXZlJztcbmV4cG9ydCAqIGZyb20gJy4vbGliL2Jybi1tZW51LXRyaWdnZXIuZGlyZWN0aXZlJztcbmV4cG9ydCAqIGZyb20gJy4vbGliL2Jybi1tZW51LmRpcmVjdGl2ZSc7XG5cbmV4cG9ydCBjb25zdCBCcm5NZW51SXRlbUltcG9ydHMgPSBbXG5cdEJybk1lbnVHcm91cERpcmVjdGl2ZSxcblx0QnJuTWVudUl0ZW1EaXJlY3RpdmUsXG5cdEJybk1lbnVJdGVtUmFkaW9EaXJlY3RpdmUsXG5cdEJybk1lbnVJdGVtQ2hlY2tib3hEaXJlY3RpdmUsXG5dIGFzIGNvbnN0O1xuZXhwb3J0IGNvbnN0IEJybk1lbnVJbXBvcnRzID0gW0Jybk1lbnVUcmlnZ2VyRGlyZWN0aXZlLCBCcm5NZW51RGlyZWN0aXZlLCAuLi5Ccm5NZW51SXRlbUltcG9ydHNdIGFzIGNvbnN0O1xuZXhwb3J0IGNvbnN0IEJybk1lbnVCYXJJbXBvcnRzID0gWy4uLkJybk1lbnVJbXBvcnRzLCBCcm5NZW51QmFyRGlyZWN0aXZlXSBhcyBjb25zdDtcbmV4cG9ydCBjb25zdCBCcm5Db250ZXh0TWVudUltcG9ydHMgPSBbLi4uQnJuTWVudUltcG9ydHMsIEJybkNvbnRleHRNZW51VHJpZ2dlckRpcmVjdGl2ZV0gYXMgY29uc3Q7XG5cbkBOZ01vZHVsZSh7XG5cdGltcG9ydHM6IFsuLi5Ccm5NZW51SXRlbUltcG9ydHNdLFxuXHRleHBvcnRzOiBbLi4uQnJuTWVudUl0ZW1JbXBvcnRzXSxcbn0pXG5leHBvcnQgY2xhc3MgQnJuTWVudUl0ZW1Nb2R1bGUge31cblxuQE5nTW9kdWxlKHtcblx0aW1wb3J0czogWy4uLkJybk1lbnVJbXBvcnRzXSxcblx0ZXhwb3J0czogWy4uLkJybk1lbnVJbXBvcnRzXSxcbn0pXG5leHBvcnQgY2xhc3MgQnJuTWVudU1vZHVsZSB7fVxuXG5ATmdNb2R1bGUoe1xuXHRpbXBvcnRzOiBbLi4uQnJuTWVudUJhckltcG9ydHNdLFxuXHRleHBvcnRzOiBbLi4uQnJuTWVudUJhckltcG9ydHNdLFxufSlcbmV4cG9ydCBjbGFzcyBCcm5NZW51QmFyTW9kdWxlIHt9XG5cbkBOZ01vZHVsZSh7XG5cdGltcG9ydHM6IFsuLi5Ccm5Db250ZXh0TWVudUltcG9ydHNdLFxuXHRleHBvcnRzOiBbLi4uQnJuQ29udGV4dE1lbnVJbXBvcnRzXSxcbn0pXG5leHBvcnQgY2xhc3MgQnJuQ29udGV4dE1lbnVNb2R1bGUge31cbiJdfQ==
@@ -0,0 +1,40 @@
1
+ import { CdkContextMenuTrigger } from '@angular/cdk/menu';
2
+ import { Directive, effect, inject, input } from '@angular/core';
3
+ import { takeUntilDestroyed } from '@angular/core/rxjs-interop';
4
+ import { getBrnMenuAlign } from './brn-menu-align';
5
+ import * as i0 from "@angular/core";
6
+ import * as i1 from "@angular/cdk/menu";
7
+ export class BrnContextMenuTriggerDirective {
8
+ _cdkTrigger = inject(CdkContextMenuTrigger, { host: true });
9
+ brnCtxMenuTriggerFor = input(null);
10
+ brnCtxMenuTriggerData = input(undefined);
11
+ align = input(undefined);
12
+ constructor() {
13
+ // once the trigger opens we wait until the next tick and then grab the last position
14
+ // used to position the menu. we store this in our trigger which the brnMenu directive has
15
+ // access to through DI
16
+ this._cdkTrigger.opened.pipe(takeUntilDestroyed()).subscribe(() => setTimeout(() =>
17
+ // eslint-disable-next-line
18
+ (this._cdkTrigger._spartanLastPosition = // eslint-disable-next-line
19
+ this._cdkTrigger.overlayRef._positionStrategy._lastPosition)));
20
+ effect(() => (this._cdkTrigger.menuTemplateRef = this.brnCtxMenuTriggerFor()));
21
+ effect(() => (this._cdkTrigger.menuData = this.brnCtxMenuTriggerData()));
22
+ effect(() => {
23
+ const align = this.align();
24
+ if (!align)
25
+ return;
26
+ this._cdkTrigger.menuPosition = getBrnMenuAlign(align);
27
+ });
28
+ }
29
+ /** @nocollapse */ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.5", ngImport: i0, type: BrnContextMenuTriggerDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive });
30
+ /** @nocollapse */ static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "17.1.0", version: "18.2.5", type: BrnContextMenuTriggerDirective, isStandalone: true, selector: "[brnCtxMenuTriggerFor]", inputs: { brnCtxMenuTriggerFor: { classPropertyName: "brnCtxMenuTriggerFor", publicName: "brnCtxMenuTriggerFor", isSignal: true, isRequired: false, transformFunction: null }, brnCtxMenuTriggerData: { classPropertyName: "brnCtxMenuTriggerData", publicName: "brnCtxMenuTriggerData", isSignal: true, isRequired: false, transformFunction: null }, align: { classPropertyName: "align", publicName: "align", isSignal: true, isRequired: false, transformFunction: null } }, hostDirectives: [{ directive: i1.CdkContextMenuTrigger }], ngImport: i0 });
31
+ }
32
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.5", ngImport: i0, type: BrnContextMenuTriggerDirective, decorators: [{
33
+ type: Directive,
34
+ args: [{
35
+ selector: '[brnCtxMenuTriggerFor]',
36
+ standalone: true,
37
+ hostDirectives: [CdkContextMenuTrigger],
38
+ }]
39
+ }], ctorParameters: () => [] });
40
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYnJuLWNvbnRleHQtbWVudS10cmlnZ2VyLmRpcmVjdGl2ZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvYnJhaW4vbWVudS9zcmMvbGliL2Jybi1jb250ZXh0LW1lbnUtdHJpZ2dlci5kaXJlY3RpdmUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLHFCQUFxQixFQUFFLE1BQU0sbUJBQW1CLENBQUM7QUFDMUQsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLEVBQUUsTUFBTSxFQUFFLEtBQUssRUFBb0IsTUFBTSxlQUFlLENBQUM7QUFDbkYsT0FBTyxFQUFFLGtCQUFrQixFQUFFLE1BQU0sNEJBQTRCLENBQUM7QUFDaEUsT0FBTyxFQUFnQixlQUFlLEVBQUUsTUFBTSxrQkFBa0IsQ0FBQzs7O0FBT2pFLE1BQU0sT0FBTyw4QkFBOEI7SUFDekIsV0FBVyxHQUFHLE1BQU0sQ0FBQyxxQkFBcUIsRUFBRSxFQUFFLElBQUksRUFBRSxJQUFJLEVBQUUsQ0FBQyxDQUFDO0lBQ3RFLG9CQUFvQixHQUFHLEtBQUssQ0FBOEIsSUFBSSxDQUFDLENBQUM7SUFDaEUscUJBQXFCLEdBQUcsS0FBSyxDQUFVLFNBQVMsQ0FBQyxDQUFDO0lBQ3pDLEtBQUssR0FBRyxLQUFLLENBQWUsU0FBUyxDQUFDLENBQUM7SUFFdkQ7UUFDQyxxRkFBcUY7UUFDckYsMEZBQTBGO1FBQzFGLHVCQUF1QjtRQUN2QixJQUFJLENBQUMsV0FBVyxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsa0JBQWtCLEVBQUUsQ0FBQyxDQUFDLFNBQVMsQ0FBQyxHQUFHLEVBQUUsQ0FDakUsVUFBVSxDQUNULEdBQUcsRUFBRTtRQUNKLDJCQUEyQjtRQUMzQixDQUFFLElBQUksQ0FBQyxXQUFtQixDQUFDLG9CQUFvQixHQUFHLDJCQUEyQjtZQUMzRSxJQUFJLENBQUMsV0FBbUIsQ0FBQyxVQUFVLENBQUMsaUJBQWlCLENBQUMsYUFBYSxDQUFDLENBQ3ZFLENBQ0QsQ0FBQztRQUVGLE1BQU0sQ0FBQyxHQUFHLEVBQUUsQ0FBQyxDQUFDLElBQUksQ0FBQyxXQUFXLENBQUMsZUFBZSxHQUFHLElBQUksQ0FBQyxvQkFBb0IsRUFBRSxDQUFDLENBQUMsQ0FBQztRQUMvRSxNQUFNLENBQUMsR0FBRyxFQUFFLENBQUMsQ0FBQyxJQUFJLENBQUMsV0FBVyxDQUFDLFFBQVEsR0FBRyxJQUFJLENBQUMscUJBQXFCLEVBQUUsQ0FBQyxDQUFDLENBQUM7UUFDekUsTUFBTSxDQUFDLEdBQUcsRUFBRTtZQUNYLE1BQU0sS0FBSyxHQUFHLElBQUksQ0FBQyxLQUFLLEVBQUUsQ0FBQztZQUMzQixJQUFJLENBQUMsS0FBSztnQkFBRSxPQUFPO1lBQ25CLElBQUksQ0FBQyxXQUFXLENBQUMsWUFBWSxHQUFHLGVBQWUsQ0FBQyxLQUFLLENBQUMsQ0FBQztRQUN4RCxDQUFDLENBQUMsQ0FBQztJQUNKLENBQUM7MEhBMUJXLDhCQUE4Qjs4R0FBOUIsOEJBQThCOzsyRkFBOUIsOEJBQThCO2tCQUwxQyxTQUFTO21CQUFDO29CQUNWLFFBQVEsRUFBRSx3QkFBd0I7b0JBQ2xDLFVBQVUsRUFBRSxJQUFJO29CQUNoQixjQUFjLEVBQUUsQ0FBQyxxQkFBcUIsQ0FBQztpQkFDdkMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDZGtDb250ZXh0TWVudVRyaWdnZXIgfSBmcm9tICdAYW5ndWxhci9jZGsvbWVudSc7XG5pbXBvcnQgeyBEaXJlY3RpdmUsIGVmZmVjdCwgaW5qZWN0LCBpbnB1dCwgdHlwZSBUZW1wbGF0ZVJlZiB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgdGFrZVVudGlsRGVzdHJveWVkIH0gZnJvbSAnQGFuZ3VsYXIvY29yZS9yeGpzLWludGVyb3AnO1xuaW1wb3J0IHsgQnJuTWVudUFsaWduLCBnZXRCcm5NZW51QWxpZ24gfSBmcm9tICcuL2Jybi1tZW51LWFsaWduJztcblxuQERpcmVjdGl2ZSh7XG5cdHNlbGVjdG9yOiAnW2JybkN0eE1lbnVUcmlnZ2VyRm9yXScsXG5cdHN0YW5kYWxvbmU6IHRydWUsXG5cdGhvc3REaXJlY3RpdmVzOiBbQ2RrQ29udGV4dE1lbnVUcmlnZ2VyXSxcbn0pXG5leHBvcnQgY2xhc3MgQnJuQ29udGV4dE1lbnVUcmlnZ2VyRGlyZWN0aXZlIHtcblx0cHJpdmF0ZSByZWFkb25seSBfY2RrVHJpZ2dlciA9IGluamVjdChDZGtDb250ZXh0TWVudVRyaWdnZXIsIHsgaG9zdDogdHJ1ZSB9KTtcblx0cHVibGljIGJybkN0eE1lbnVUcmlnZ2VyRm9yID0gaW5wdXQ8VGVtcGxhdGVSZWY8dW5rbm93bj4gfCBudWxsPihudWxsKTtcblx0cHVibGljIGJybkN0eE1lbnVUcmlnZ2VyRGF0YSA9IGlucHV0PHVua25vd24+KHVuZGVmaW5lZCk7XG5cdHB1YmxpYyByZWFkb25seSBhbGlnbiA9IGlucHV0PEJybk1lbnVBbGlnbj4odW5kZWZpbmVkKTtcblxuXHRjb25zdHJ1Y3RvcigpIHtcblx0XHQvLyBvbmNlIHRoZSB0cmlnZ2VyIG9wZW5zIHdlIHdhaXQgdW50aWwgdGhlIG5leHQgdGljayBhbmQgdGhlbiBncmFiIHRoZSBsYXN0IHBvc2l0aW9uXG5cdFx0Ly8gdXNlZCB0byBwb3NpdGlvbiB0aGUgbWVudS4gd2Ugc3RvcmUgdGhpcyBpbiBvdXIgdHJpZ2dlciB3aGljaCB0aGUgYnJuTWVudSBkaXJlY3RpdmUgaGFzXG5cdFx0Ly8gYWNjZXNzIHRvIHRocm91Z2ggRElcblx0XHR0aGlzLl9jZGtUcmlnZ2VyLm9wZW5lZC5waXBlKHRha2VVbnRpbERlc3Ryb3llZCgpKS5zdWJzY3JpYmUoKCkgPT5cblx0XHRcdHNldFRpbWVvdXQoXG5cdFx0XHRcdCgpID0+XG5cdFx0XHRcdFx0Ly8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lXG5cdFx0XHRcdFx0KCh0aGlzLl9jZGtUcmlnZ2VyIGFzIGFueSkuX3NwYXJ0YW5MYXN0UG9zaXRpb24gPSAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmVcblx0XHRcdFx0XHRcdCh0aGlzLl9jZGtUcmlnZ2VyIGFzIGFueSkub3ZlcmxheVJlZi5fcG9zaXRpb25TdHJhdGVneS5fbGFzdFBvc2l0aW9uKSxcblx0XHRcdCksXG5cdFx0KTtcblxuXHRcdGVmZmVjdCgoKSA9PiAodGhpcy5fY2RrVHJpZ2dlci5tZW51VGVtcGxhdGVSZWYgPSB0aGlzLmJybkN0eE1lbnVUcmlnZ2VyRm9yKCkpKTtcblx0XHRlZmZlY3QoKCkgPT4gKHRoaXMuX2Nka1RyaWdnZXIubWVudURhdGEgPSB0aGlzLmJybkN0eE1lbnVUcmlnZ2VyRGF0YSgpKSk7XG5cdFx0ZWZmZWN0KCgpID0+IHtcblx0XHRcdGNvbnN0IGFsaWduID0gdGhpcy5hbGlnbigpO1xuXHRcdFx0aWYgKCFhbGlnbikgcmV0dXJuO1xuXHRcdFx0dGhpcy5fY2RrVHJpZ2dlci5tZW51UG9zaXRpb24gPSBnZXRCcm5NZW51QWxpZ24oYWxpZ24pO1xuXHRcdH0pO1xuXHR9XG59XG4iXX0=
@@ -0,0 +1,15 @@
1
+ export const getBrnMenuAlign = (align) => [
2
+ {
3
+ originX: align,
4
+ originY: 'bottom',
5
+ overlayX: align,
6
+ overlayY: 'top',
7
+ },
8
+ {
9
+ originX: align,
10
+ originY: 'top',
11
+ overlayX: align,
12
+ overlayY: 'bottom',
13
+ },
14
+ ];
15
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYnJuLW1lbnUtYWxpZ24uanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9saWJzL2JyYWluL21lbnUvc3JjL2xpYi9icm4tbWVudS1hbGlnbi50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFHQSxNQUFNLENBQUMsTUFBTSxlQUFlLEdBQUcsQ0FBQyxLQUF1QyxFQUF1QixFQUFFLENBQUM7SUFDaEc7UUFDQyxPQUFPLEVBQUUsS0FBSztRQUNkLE9BQU8sRUFBRSxRQUFRO1FBQ2pCLFFBQVEsRUFBRSxLQUFLO1FBQ2YsUUFBUSxFQUFFLEtBQUs7S0FDZjtJQUNEO1FBQ0MsT0FBTyxFQUFFLEtBQUs7UUFDZCxPQUFPLEVBQUUsS0FBSztRQUNkLFFBQVEsRUFBRSxLQUFLO1FBQ2YsUUFBUSxFQUFFLFFBQVE7S0FDbEI7Q0FDRCxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29ubmVjdGVkUG9zaXRpb24gfSBmcm9tICdAYW5ndWxhci9jZGsvb3ZlcmxheSc7XG5cbmV4cG9ydCB0eXBlIEJybk1lbnVBbGlnbiA9ICdzdGFydCcgfCAnY2VudGVyJyB8ICdlbmQnIHwgdW5kZWZpbmVkO1xuZXhwb3J0IGNvbnN0IGdldEJybk1lbnVBbGlnbiA9IChhbGlnbjogRXhjbHVkZTxCcm5NZW51QWxpZ24sIHVuZGVmaW5lZD4pOiBDb25uZWN0ZWRQb3NpdGlvbltdID0+IFtcblx0e1xuXHRcdG9yaWdpblg6IGFsaWduLFxuXHRcdG9yaWdpblk6ICdib3R0b20nLFxuXHRcdG92ZXJsYXlYOiBhbGlnbixcblx0XHRvdmVybGF5WTogJ3RvcCcsXG5cdH0sXG5cdHtcblx0XHRvcmlnaW5YOiBhbGlnbixcblx0XHRvcmlnaW5ZOiAndG9wJyxcblx0XHRvdmVybGF5WDogYWxpZ24sXG5cdFx0b3ZlcmxheVk6ICdib3R0b20nLFxuXHR9LFxuXTtcbiJdfQ==
@@ -0,0 +1,17 @@
1
+ import { CdkMenuBar } from '@angular/cdk/menu';
2
+ import { Directive } from '@angular/core';
3
+ import * as i0 from "@angular/core";
4
+ import * as i1 from "@angular/cdk/menu";
5
+ export class BrnMenuBarDirective {
6
+ /** @nocollapse */ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.5", ngImport: i0, type: BrnMenuBarDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive });
7
+ /** @nocollapse */ static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "18.2.5", type: BrnMenuBarDirective, isStandalone: true, selector: "[brnMenuBar]", hostDirectives: [{ directive: i1.CdkMenuBar }], ngImport: i0 });
8
+ }
9
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.5", ngImport: i0, type: BrnMenuBarDirective, decorators: [{
10
+ type: Directive,
11
+ args: [{
12
+ selector: '[brnMenuBar]',
13
+ standalone: true,
14
+ hostDirectives: [CdkMenuBar],
15
+ }]
16
+ }] });
17
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYnJuLW1lbnUtYmFyLmRpcmVjdGl2ZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvYnJhaW4vbWVudS9zcmMvbGliL2Jybi1tZW51LWJhci5kaXJlY3RpdmUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLG1CQUFtQixDQUFDO0FBQy9DLE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSxlQUFlLENBQUM7OztBQU8xQyxNQUFNLE9BQU8sbUJBQW1COzBIQUFuQixtQkFBbUI7OEdBQW5CLG1CQUFtQjs7MkZBQW5CLG1CQUFtQjtrQkFML0IsU0FBUzttQkFBQztvQkFDVixRQUFRLEVBQUUsY0FBYztvQkFDeEIsVUFBVSxFQUFFLElBQUk7b0JBQ2hCLGNBQWMsRUFBRSxDQUFDLFVBQVUsQ0FBQztpQkFDNUIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDZGtNZW51QmFyIH0gZnJvbSAnQGFuZ3VsYXIvY2RrL21lbnUnO1xuaW1wb3J0IHsgRGlyZWN0aXZlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5cbkBEaXJlY3RpdmUoe1xuXHRzZWxlY3RvcjogJ1ticm5NZW51QmFyXScsXG5cdHN0YW5kYWxvbmU6IHRydWUsXG5cdGhvc3REaXJlY3RpdmVzOiBbQ2RrTWVudUJhcl0sXG59KVxuZXhwb3J0IGNsYXNzIEJybk1lbnVCYXJEaXJlY3RpdmUge31cbiJdfQ==