cax-design-system 2.8.4 → 3.0.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 (681) hide show
  1. package/README.md +46 -46
  2. package/api/confirmation.d.ts +4 -10
  3. package/api/message.d.ts +0 -1
  4. package/autocomplete/autocomplete.d.ts +23 -6
  5. package/autocomplete/autocomplete.module.d.ts +8 -7
  6. package/avatar/avatar.d.ts +23 -1
  7. package/badge/badge.d.ts +4 -0
  8. package/button/button.d.ts +8 -1
  9. package/button/button.directive.d.ts +3 -1
  10. package/calendar/calendar.d.ts +33 -11
  11. package/card/card.d.ts +2 -6
  12. package/cascadeselect/cascadeselect.d.ts +32 -2
  13. package/categorycard/categorycard.d.ts +11 -0
  14. package/categorycard/categorycard.module.d.ts +7 -0
  15. package/categorycard/index.d.ts +5 -0
  16. package/categorycard/public_api.d.ts +2 -0
  17. package/checkbox/checkbox.d.ts +2 -2
  18. package/chip/chip.d.ts +3 -4
  19. package/commentbox/commentbox.d.ts +1 -1
  20. package/comments/comments.d.ts +83 -0
  21. package/comments/comments.module.d.ts +7 -0
  22. package/{chips → comments}/index.d.ts +1 -1
  23. package/comments/public_api.d.ts +2 -0
  24. package/comparecard/comaparecard.module.d.ts +11 -0
  25. package/comparecard/comparecard.component.d.ts +44 -0
  26. package/comparecard/index.d.ts +5 -0
  27. package/comparecard/public_api.d.ts +2 -0
  28. package/confirmdialog/confirmdialog.d.ts +13 -22
  29. package/divider/divider.d.ts +9 -1
  30. package/dom/domhandler.d.ts +2 -2
  31. package/dropdown/dropdown-item.d.ts +2 -1
  32. package/dropdown/dropdown.d.ts +24 -2
  33. package/editor/editor.d.ts +6 -1
  34. package/fesm2022/cax-design-system-accordion.mjs +22 -17
  35. package/fesm2022/cax-design-system-accordion.mjs.map +1 -1
  36. package/fesm2022/cax-design-system-animate.mjs +7 -7
  37. package/fesm2022/cax-design-system-animate.mjs.map +1 -1
  38. package/fesm2022/cax-design-system-animateonscroll.mjs +7 -7
  39. package/fesm2022/cax-design-system-animateonscroll.mjs.map +1 -1
  40. package/fesm2022/cax-design-system-api.mjs +37 -37
  41. package/fesm2022/cax-design-system-api.mjs.map +1 -1
  42. package/fesm2022/cax-design-system-autocomplete.mjs +101 -47
  43. package/fesm2022/cax-design-system-autocomplete.mjs.map +1 -1
  44. package/fesm2022/cax-design-system-autofocus.mjs +7 -7
  45. package/fesm2022/cax-design-system-autofocus.mjs.map +1 -1
  46. package/fesm2022/cax-design-system-avatar.mjs +39 -8
  47. package/fesm2022/cax-design-system-avatar.mjs.map +1 -1
  48. package/fesm2022/cax-design-system-avatargroup.mjs +8 -8
  49. package/fesm2022/cax-design-system-avatargroup.mjs.map +1 -1
  50. package/fesm2022/cax-design-system-badge.mjs +16 -12
  51. package/fesm2022/cax-design-system-badge.mjs.map +1 -1
  52. package/fesm2022/cax-design-system-baseicon.mjs +3 -3
  53. package/fesm2022/cax-design-system-baseicon.mjs.map +1 -1
  54. package/fesm2022/cax-design-system-blockui.mjs +7 -7
  55. package/fesm2022/cax-design-system-blockui.mjs.map +1 -1
  56. package/fesm2022/cax-design-system-breadcrumb.mjs +10 -11
  57. package/fesm2022/cax-design-system-breadcrumb.mjs.map +1 -1
  58. package/fesm2022/cax-design-system-button.mjs +93 -39
  59. package/fesm2022/cax-design-system-button.mjs.map +1 -1
  60. package/fesm2022/cax-design-system-buttongroup.mjs +7 -7
  61. package/fesm2022/cax-design-system-buttongroup.mjs.map +1 -1
  62. package/fesm2022/cax-design-system-calendar.mjs +388 -100
  63. package/fesm2022/cax-design-system-calendar.mjs.map +1 -1
  64. package/fesm2022/cax-design-system-card.mjs +12 -25
  65. package/fesm2022/cax-design-system-card.mjs.map +1 -1
  66. package/fesm2022/cax-design-system-carousel.mjs +7 -7
  67. package/fesm2022/cax-design-system-carousel.mjs.map +1 -1
  68. package/fesm2022/cax-design-system-cascadeselect.mjs +90 -30
  69. package/fesm2022/cax-design-system-cascadeselect.mjs.map +1 -1
  70. package/fesm2022/cax-design-system-categorycard.mjs +57 -0
  71. package/fesm2022/cax-design-system-categorycard.mjs.map +1 -0
  72. package/fesm2022/cax-design-system-chart.mjs +7 -7
  73. package/fesm2022/cax-design-system-chart.mjs.map +1 -1
  74. package/fesm2022/cax-design-system-checkbox.mjs +15 -14
  75. package/fesm2022/cax-design-system-checkbox.mjs.map +1 -1
  76. package/fesm2022/cax-design-system-chip.mjs +14 -12
  77. package/fesm2022/cax-design-system-chip.mjs.map +1 -1
  78. package/fesm2022/cax-design-system-colorpicker.mjs +8 -8
  79. package/fesm2022/cax-design-system-colorpicker.mjs.map +1 -1
  80. package/fesm2022/cax-design-system-commentbox.mjs +8 -8
  81. package/fesm2022/cax-design-system-commentbox.mjs.map +1 -1
  82. package/fesm2022/cax-design-system-comments.mjs +385 -0
  83. package/fesm2022/cax-design-system-comments.mjs.map +1 -0
  84. package/fesm2022/cax-design-system-comparecard.mjs +143 -0
  85. package/fesm2022/cax-design-system-comparecard.mjs.map +1 -0
  86. package/fesm2022/cax-design-system-confirmdialog.mjs +54 -50
  87. package/fesm2022/cax-design-system-confirmdialog.mjs.map +1 -1
  88. package/fesm2022/cax-design-system-confirmpopup.mjs +8 -8
  89. package/fesm2022/cax-design-system-confirmpopup.mjs.map +1 -1
  90. package/fesm2022/cax-design-system-contextmenu.mjs +10 -10
  91. package/fesm2022/cax-design-system-contextmenu.mjs.map +1 -1
  92. package/fesm2022/cax-design-system-dataview.mjs +10 -10
  93. package/fesm2022/cax-design-system-dataview.mjs.map +1 -1
  94. package/fesm2022/cax-design-system-defer.mjs +7 -7
  95. package/fesm2022/cax-design-system-defer.mjs.map +1 -1
  96. package/fesm2022/cax-design-system-dialog.mjs +12 -13
  97. package/fesm2022/cax-design-system-dialog.mjs.map +1 -1
  98. package/fesm2022/cax-design-system-divider.mjs +21 -11
  99. package/fesm2022/cax-design-system-divider.mjs.map +1 -1
  100. package/fesm2022/cax-design-system-dock.mjs +7 -7
  101. package/fesm2022/cax-design-system-dock.mjs.map +1 -1
  102. package/fesm2022/cax-design-system-dom.mjs +16 -6
  103. package/fesm2022/cax-design-system-dom.mjs.map +1 -1
  104. package/fesm2022/cax-design-system-dragdrop.mjs +10 -10
  105. package/fesm2022/cax-design-system-dragdrop.mjs.map +1 -1
  106. package/fesm2022/cax-design-system-dropdown.mjs +57 -22
  107. package/fesm2022/cax-design-system-dropdown.mjs.map +1 -1
  108. package/fesm2022/cax-design-system-dynamicdialog.mjs +15 -15
  109. package/fesm2022/cax-design-system-dynamicdialog.mjs.map +1 -1
  110. package/fesm2022/cax-design-system-editor.mjs +55 -15
  111. package/fesm2022/cax-design-system-editor.mjs.map +1 -1
  112. package/fesm2022/cax-design-system-fieldset.mjs +8 -8
  113. package/fesm2022/cax-design-system-fieldset.mjs.map +1 -1
  114. package/fesm2022/cax-design-system-fileupload.mjs +7 -7
  115. package/fesm2022/cax-design-system-fileupload.mjs.map +1 -1
  116. package/fesm2022/cax-design-system-floatlabel.mjs +7 -7
  117. package/fesm2022/cax-design-system-floatlabel.mjs.map +1 -1
  118. package/fesm2022/cax-design-system-focustrap.mjs +7 -7
  119. package/fesm2022/cax-design-system-focustrap.mjs.map +1 -1
  120. package/fesm2022/cax-design-system-galleria.mjs +19 -19
  121. package/fesm2022/cax-design-system-galleria.mjs.map +1 -1
  122. package/fesm2022/cax-design-system-iconfield.mjs +7 -7
  123. package/fesm2022/cax-design-system-iconfield.mjs.map +1 -1
  124. package/fesm2022/cax-design-system-icons-angledoubledown.mjs +3 -3
  125. package/fesm2022/cax-design-system-icons-angledoubledown.mjs.map +1 -1
  126. package/fesm2022/cax-design-system-icons-angledoubleleft.mjs +3 -3
  127. package/fesm2022/cax-design-system-icons-angledoubleleft.mjs.map +1 -1
  128. package/fesm2022/cax-design-system-icons-angledoubleright.mjs +3 -3
  129. package/fesm2022/cax-design-system-icons-angledoubleright.mjs.map +1 -1
  130. package/fesm2022/cax-design-system-icons-angledoubleup.mjs +3 -3
  131. package/fesm2022/cax-design-system-icons-angledoubleup.mjs.map +1 -1
  132. package/fesm2022/cax-design-system-icons-angledown.mjs +4 -4
  133. package/fesm2022/cax-design-system-icons-angledown.mjs.map +1 -1
  134. package/fesm2022/cax-design-system-icons-angleleft.mjs +3 -3
  135. package/fesm2022/cax-design-system-icons-angleleft.mjs.map +1 -1
  136. package/fesm2022/cax-design-system-icons-angleright.mjs +3 -3
  137. package/fesm2022/cax-design-system-icons-angleright.mjs.map +1 -1
  138. package/fesm2022/cax-design-system-icons-angleup.mjs +4 -4
  139. package/fesm2022/cax-design-system-icons-angleup.mjs.map +1 -1
  140. package/fesm2022/cax-design-system-icons-arrowdown.mjs +4 -4
  141. package/fesm2022/cax-design-system-icons-arrowdown.mjs.map +1 -1
  142. package/fesm2022/cax-design-system-icons-arrowdownleft.mjs +3 -3
  143. package/fesm2022/cax-design-system-icons-arrowdownleft.mjs.map +1 -1
  144. package/fesm2022/cax-design-system-icons-arrowdownright.mjs +3 -3
  145. package/fesm2022/cax-design-system-icons-arrowdownright.mjs.map +1 -1
  146. package/fesm2022/cax-design-system-icons-arrowleft.mjs +3 -3
  147. package/fesm2022/cax-design-system-icons-arrowleft.mjs.map +1 -1
  148. package/fesm2022/cax-design-system-icons-arrowright.mjs +3 -3
  149. package/fesm2022/cax-design-system-icons-arrowright.mjs.map +1 -1
  150. package/fesm2022/cax-design-system-icons-arrowup.mjs +4 -4
  151. package/fesm2022/cax-design-system-icons-arrowup.mjs.map +1 -1
  152. package/fesm2022/cax-design-system-icons-ban.mjs +3 -3
  153. package/fesm2022/cax-design-system-icons-ban.mjs.map +1 -1
  154. package/fesm2022/cax-design-system-icons-bars.mjs +3 -3
  155. package/fesm2022/cax-design-system-icons-bars.mjs.map +1 -1
  156. package/fesm2022/cax-design-system-icons-blank.mjs +4 -4
  157. package/fesm2022/cax-design-system-icons-blank.mjs.map +1 -1
  158. package/fesm2022/cax-design-system-icons-calendar.mjs +4 -4
  159. package/fesm2022/cax-design-system-icons-calendar.mjs.map +1 -1
  160. package/fesm2022/cax-design-system-icons-caretleft.mjs +3 -3
  161. package/fesm2022/cax-design-system-icons-caretleft.mjs.map +1 -1
  162. package/fesm2022/cax-design-system-icons-caretright.mjs +3 -3
  163. package/fesm2022/cax-design-system-icons-caretright.mjs.map +1 -1
  164. package/fesm2022/cax-design-system-icons-check.mjs +4 -4
  165. package/fesm2022/cax-design-system-icons-check.mjs.map +1 -1
  166. package/fesm2022/cax-design-system-icons-chevrondown.mjs +4 -4
  167. package/fesm2022/cax-design-system-icons-chevrondown.mjs.map +1 -1
  168. package/fesm2022/cax-design-system-icons-chevronleft.mjs +3 -3
  169. package/fesm2022/cax-design-system-icons-chevronleft.mjs.map +1 -1
  170. package/fesm2022/cax-design-system-icons-chevronright.mjs +4 -4
  171. package/fesm2022/cax-design-system-icons-chevronright.mjs.map +1 -1
  172. package/fesm2022/cax-design-system-icons-chevronup.mjs +4 -4
  173. package/fesm2022/cax-design-system-icons-chevronup.mjs.map +1 -1
  174. package/fesm2022/cax-design-system-icons-exclamationtriangle.mjs +3 -3
  175. package/fesm2022/cax-design-system-icons-exclamationtriangle.mjs.map +1 -1
  176. package/fesm2022/cax-design-system-icons-eye.mjs +4 -4
  177. package/fesm2022/cax-design-system-icons-eye.mjs.map +1 -1
  178. package/fesm2022/cax-design-system-icons-eyeslash.mjs +3 -3
  179. package/fesm2022/cax-design-system-icons-eyeslash.mjs.map +1 -1
  180. package/fesm2022/cax-design-system-icons-filter.mjs +3 -3
  181. package/fesm2022/cax-design-system-icons-filter.mjs.map +1 -1
  182. package/fesm2022/cax-design-system-icons-filterslash.mjs +4 -4
  183. package/fesm2022/cax-design-system-icons-filterslash.mjs.map +1 -1
  184. package/fesm2022/cax-design-system-icons-home.mjs +3 -3
  185. package/fesm2022/cax-design-system-icons-home.mjs.map +1 -1
  186. package/fesm2022/cax-design-system-icons-infocircle.mjs +3 -3
  187. package/fesm2022/cax-design-system-icons-infocircle.mjs.map +1 -1
  188. package/fesm2022/cax-design-system-icons-minus.mjs +3 -3
  189. package/fesm2022/cax-design-system-icons-minus.mjs.map +1 -1
  190. package/fesm2022/cax-design-system-icons-pencil.mjs +3 -3
  191. package/fesm2022/cax-design-system-icons-pencil.mjs.map +1 -1
  192. package/fesm2022/cax-design-system-icons-plus.mjs +4 -4
  193. package/fesm2022/cax-design-system-icons-plus.mjs.map +1 -1
  194. package/fesm2022/cax-design-system-icons-refresh.mjs +4 -4
  195. package/fesm2022/cax-design-system-icons-refresh.mjs.map +1 -1
  196. package/fesm2022/cax-design-system-icons-search.mjs +4 -4
  197. package/fesm2022/cax-design-system-icons-search.mjs.map +1 -1
  198. package/fesm2022/cax-design-system-icons-searchminus.mjs +4 -4
  199. package/fesm2022/cax-design-system-icons-searchminus.mjs.map +1 -1
  200. package/fesm2022/cax-design-system-icons-searchplus.mjs +4 -4
  201. package/fesm2022/cax-design-system-icons-searchplus.mjs.map +1 -1
  202. package/fesm2022/cax-design-system-icons-sortalt.mjs +3 -3
  203. package/fesm2022/cax-design-system-icons-sortalt.mjs.map +1 -1
  204. package/fesm2022/cax-design-system-icons-sortamountdown.mjs +3 -3
  205. package/fesm2022/cax-design-system-icons-sortamountdown.mjs.map +1 -1
  206. package/fesm2022/cax-design-system-icons-sortamountupalt.mjs +3 -3
  207. package/fesm2022/cax-design-system-icons-sortamountupalt.mjs.map +1 -1
  208. package/fesm2022/cax-design-system-icons-spinner.mjs +4 -4
  209. package/fesm2022/cax-design-system-icons-spinner.mjs.map +1 -1
  210. package/fesm2022/cax-design-system-icons-star.mjs +3 -3
  211. package/fesm2022/cax-design-system-icons-star.mjs.map +1 -1
  212. package/fesm2022/cax-design-system-icons-starfill.mjs +3 -3
  213. package/fesm2022/cax-design-system-icons-starfill.mjs.map +1 -1
  214. package/fesm2022/cax-design-system-icons-thlarge.mjs +3 -3
  215. package/fesm2022/cax-design-system-icons-thlarge.mjs.map +1 -1
  216. package/fesm2022/cax-design-system-icons-times.mjs +4 -4
  217. package/fesm2022/cax-design-system-icons-times.mjs.map +1 -1
  218. package/fesm2022/cax-design-system-icons-timescircle.mjs +4 -4
  219. package/fesm2022/cax-design-system-icons-timescircle.mjs.map +1 -1
  220. package/fesm2022/cax-design-system-icons-trash.mjs +4 -4
  221. package/fesm2022/cax-design-system-icons-trash.mjs.map +1 -1
  222. package/fesm2022/cax-design-system-icons-undo.mjs +4 -4
  223. package/fesm2022/cax-design-system-icons-undo.mjs.map +1 -1
  224. package/fesm2022/cax-design-system-icons-upload.mjs +3 -3
  225. package/fesm2022/cax-design-system-icons-upload.mjs.map +1 -1
  226. package/fesm2022/cax-design-system-icons-windowmaximize.mjs +3 -3
  227. package/fesm2022/cax-design-system-icons-windowmaximize.mjs.map +1 -1
  228. package/fesm2022/cax-design-system-icons-windowminimize.mjs +3 -3
  229. package/fesm2022/cax-design-system-icons-windowminimize.mjs.map +1 -1
  230. package/fesm2022/cax-design-system-image.mjs +8 -8
  231. package/fesm2022/cax-design-system-image.mjs.map +1 -1
  232. package/fesm2022/cax-design-system-inplace.mjs +13 -13
  233. package/fesm2022/cax-design-system-inplace.mjs.map +1 -1
  234. package/fesm2022/{cax-design-system-chips.mjs → cax-design-system-inputchips.mjs} +66 -27
  235. package/fesm2022/cax-design-system-inputchips.mjs.map +1 -0
  236. package/fesm2022/cax-design-system-inputgroup.mjs +54 -10
  237. package/fesm2022/cax-design-system-inputgroup.mjs.map +1 -1
  238. package/fesm2022/cax-design-system-inputgroupaddon.mjs +8 -8
  239. package/fesm2022/cax-design-system-inputgroupaddon.mjs.map +1 -1
  240. package/fesm2022/cax-design-system-inputicon.mjs +7 -7
  241. package/fesm2022/cax-design-system-inputicon.mjs.map +1 -1
  242. package/fesm2022/cax-design-system-inputmask.mjs +33 -20
  243. package/fesm2022/cax-design-system-inputmask.mjs.map +1 -1
  244. package/fesm2022/cax-design-system-inputnumber.mjs +64 -30
  245. package/fesm2022/cax-design-system-inputnumber.mjs.map +1 -1
  246. package/fesm2022/cax-design-system-inputotp.mjs +7 -7
  247. package/fesm2022/cax-design-system-inputotp.mjs.map +1 -1
  248. package/fesm2022/cax-design-system-inputswitch.mjs +7 -7
  249. package/fesm2022/cax-design-system-inputswitch.mjs.map +1 -1
  250. package/fesm2022/cax-design-system-inputtext.mjs +30 -14
  251. package/fesm2022/cax-design-system-inputtext.mjs.map +1 -1
  252. package/fesm2022/cax-design-system-inputtextarea.mjs +49 -18
  253. package/fesm2022/cax-design-system-inputtextarea.mjs.map +1 -1
  254. package/fesm2022/cax-design-system-keyfilter.mjs +7 -7
  255. package/fesm2022/cax-design-system-keyfilter.mjs.map +1 -1
  256. package/fesm2022/cax-design-system-knob.mjs +7 -7
  257. package/fesm2022/cax-design-system-knob.mjs.map +1 -1
  258. package/fesm2022/cax-design-system-listbox.mjs +39 -369
  259. package/fesm2022/cax-design-system-listbox.mjs.map +1 -1
  260. package/fesm2022/cax-design-system-logo.mjs +8 -8
  261. package/fesm2022/cax-design-system-logo.mjs.map +1 -1
  262. package/fesm2022/cax-design-system-logocard.mjs +37 -0
  263. package/fesm2022/cax-design-system-logocard.mjs.map +1 -0
  264. package/fesm2022/cax-design-system-megamenu.mjs +10 -10
  265. package/fesm2022/cax-design-system-megamenu.mjs.map +1 -1
  266. package/fesm2022/cax-design-system-menu.mjs +15 -15
  267. package/fesm2022/cax-design-system-menu.mjs.map +1 -1
  268. package/fesm2022/cax-design-system-menubar.mjs +13 -13
  269. package/fesm2022/cax-design-system-menubar.mjs.map +1 -1
  270. package/fesm2022/cax-design-system-message.mjs +7 -7
  271. package/fesm2022/cax-design-system-message.mjs.map +1 -1
  272. package/fesm2022/cax-design-system-messages.mjs +17 -44
  273. package/fesm2022/cax-design-system-messages.mjs.map +1 -1
  274. package/fesm2022/cax-design-system-metergroup.mjs +10 -10
  275. package/fesm2022/cax-design-system-metergroup.mjs.map +1 -1
  276. package/fesm2022/cax-design-system-multiselect.mjs +58 -24
  277. package/fesm2022/cax-design-system-multiselect.mjs.map +1 -1
  278. package/fesm2022/cax-design-system-navigation.mjs +193 -105
  279. package/fesm2022/cax-design-system-navigation.mjs.map +1 -1
  280. package/fesm2022/cax-design-system-orderlist.mjs +7 -7
  281. package/fesm2022/cax-design-system-orderlist.mjs.map +1 -1
  282. package/fesm2022/cax-design-system-organizationchart.mjs +11 -11
  283. package/fesm2022/cax-design-system-organizationchart.mjs.map +1 -1
  284. package/fesm2022/cax-design-system-overlay.mjs +8 -8
  285. package/fesm2022/cax-design-system-overlay.mjs.map +1 -1
  286. package/fesm2022/cax-design-system-overlaypanel.mjs +17 -11
  287. package/fesm2022/cax-design-system-overlaypanel.mjs.map +1 -1
  288. package/fesm2022/cax-design-system-paginator.mjs +8 -8
  289. package/fesm2022/cax-design-system-paginator.mjs.map +1 -1
  290. package/fesm2022/cax-design-system-panel.mjs +8 -8
  291. package/fesm2022/cax-design-system-panel.mjs.map +1 -1
  292. package/fesm2022/cax-design-system-panelmenu.mjs +14 -14
  293. package/fesm2022/cax-design-system-panelmenu.mjs.map +1 -1
  294. package/fesm2022/cax-design-system-password.mjs +14 -14
  295. package/fesm2022/cax-design-system-password.mjs.map +1 -1
  296. package/fesm2022/cax-design-system-picklist.mjs +7 -7
  297. package/fesm2022/cax-design-system-picklist.mjs.map +1 -1
  298. package/fesm2022/cax-design-system-productcard.mjs +90 -0
  299. package/fesm2022/cax-design-system-productcard.mjs.map +1 -0
  300. package/fesm2022/cax-design-system-progressbar.mjs +31 -9
  301. package/fesm2022/cax-design-system-progressbar.mjs.map +1 -1
  302. package/fesm2022/cax-design-system-progressspinner.mjs +17 -15
  303. package/fesm2022/cax-design-system-progressspinner.mjs.map +1 -1
  304. package/fesm2022/cax-design-system-radiobutton.mjs +27 -15
  305. package/fesm2022/cax-design-system-radiobutton.mjs.map +1 -1
  306. package/fesm2022/cax-design-system-rating.mjs +7 -7
  307. package/fesm2022/cax-design-system-rating.mjs.map +1 -1
  308. package/fesm2022/cax-design-system-ripple.mjs +7 -7
  309. package/fesm2022/cax-design-system-ripple.mjs.map +1 -1
  310. package/fesm2022/cax-design-system-scroller.mjs +8 -8
  311. package/fesm2022/cax-design-system-scroller.mjs.map +1 -1
  312. package/fesm2022/cax-design-system-scrollpanel.mjs +7 -7
  313. package/fesm2022/cax-design-system-scrollpanel.mjs.map +1 -1
  314. package/fesm2022/cax-design-system-scrolltop.mjs +8 -8
  315. package/fesm2022/cax-design-system-scrolltop.mjs.map +1 -1
  316. package/fesm2022/cax-design-system-selectbutton.mjs +79 -9
  317. package/fesm2022/cax-design-system-selectbutton.mjs.map +1 -1
  318. package/fesm2022/cax-design-system-sidebar.mjs +10 -10
  319. package/fesm2022/cax-design-system-sidebar.mjs.map +1 -1
  320. package/fesm2022/cax-design-system-skeleton.mjs +11 -10
  321. package/fesm2022/cax-design-system-skeleton.mjs.map +1 -1
  322. package/fesm2022/cax-design-system-slidemenu.mjs +10 -10
  323. package/fesm2022/cax-design-system-slidemenu.mjs.map +1 -1
  324. package/fesm2022/cax-design-system-slider.mjs +14 -199
  325. package/fesm2022/cax-design-system-slider.mjs.map +1 -1
  326. package/fesm2022/cax-design-system-speeddial.mjs +16 -9
  327. package/fesm2022/cax-design-system-speeddial.mjs.map +1 -1
  328. package/fesm2022/cax-design-system-spinner.mjs +7 -7
  329. package/fesm2022/cax-design-system-spinner.mjs.map +1 -1
  330. package/fesm2022/cax-design-system-splitbutton.mjs +10 -13
  331. package/fesm2022/cax-design-system-splitbutton.mjs.map +1 -1
  332. package/fesm2022/cax-design-system-splitter.mjs +8 -8
  333. package/fesm2022/cax-design-system-splitter.mjs.map +1 -1
  334. package/fesm2022/cax-design-system-stepper.mjs +20 -20
  335. package/fesm2022/cax-design-system-stepper.mjs.map +1 -1
  336. package/fesm2022/cax-design-system-steps.mjs +30 -11
  337. package/fesm2022/cax-design-system-steps.mjs.map +1 -1
  338. package/fesm2022/cax-design-system-styleclass.mjs +7 -7
  339. package/fesm2022/cax-design-system-styleclass.mjs.map +1 -1
  340. package/fesm2022/cax-design-system-subscriptioncard.mjs +97 -0
  341. package/fesm2022/cax-design-system-subscriptioncard.mjs.map +1 -0
  342. package/fesm2022/cax-design-system-table-paginator.mjs +129 -0
  343. package/fesm2022/cax-design-system-table-paginator.mjs.map +1 -0
  344. package/fesm2022/cax-design-system-table.mjs +284 -400
  345. package/fesm2022/cax-design-system-table.mjs.map +1 -1
  346. package/fesm2022/cax-design-system-tableconfiguration.mjs +19 -10
  347. package/fesm2022/cax-design-system-tableconfiguration.mjs.map +1 -1
  348. package/fesm2022/cax-design-system-tabmenu.mjs +7 -7
  349. package/fesm2022/cax-design-system-tabmenu.mjs.map +1 -1
  350. package/fesm2022/cax-design-system-tabview.mjs +168 -95
  351. package/fesm2022/cax-design-system-tabview.mjs.map +1 -1
  352. package/fesm2022/cax-design-system-tag.mjs +71 -15
  353. package/fesm2022/cax-design-system-tag.mjs.map +1 -1
  354. package/fesm2022/cax-design-system-terminal.mjs +14 -14
  355. package/fesm2022/cax-design-system-terminal.mjs.map +1 -1
  356. package/fesm2022/cax-design-system-tieredmenu.mjs +21 -14
  357. package/fesm2022/cax-design-system-tieredmenu.mjs.map +1 -1
  358. package/fesm2022/cax-design-system-timeline.mjs +8 -8
  359. package/fesm2022/cax-design-system-timeline.mjs.map +1 -1
  360. package/fesm2022/cax-design-system-toast.mjs +13 -25
  361. package/fesm2022/cax-design-system-toast.mjs.map +1 -1
  362. package/fesm2022/cax-design-system-togglebutton.mjs +9 -9
  363. package/fesm2022/cax-design-system-togglebutton.mjs.map +1 -1
  364. package/fesm2022/cax-design-system-toggleswitch.mjs +26 -8
  365. package/fesm2022/cax-design-system-toggleswitch.mjs.map +1 -1
  366. package/fesm2022/cax-design-system-toolbar.mjs +7 -7
  367. package/fesm2022/cax-design-system-toolbar.mjs.map +1 -1
  368. package/fesm2022/cax-design-system-tooltip.mjs +40 -20
  369. package/fesm2022/cax-design-system-tooltip.mjs.map +1 -1
  370. package/fesm2022/cax-design-system-tree.mjs +12 -12
  371. package/fesm2022/cax-design-system-tree.mjs.map +1 -1
  372. package/fesm2022/cax-design-system-treeselect.mjs +8 -8
  373. package/fesm2022/cax-design-system-treeselect.mjs.map +1 -1
  374. package/fesm2022/cax-design-system-treetable.mjs +55 -55
  375. package/fesm2022/cax-design-system-treetable.mjs.map +1 -1
  376. package/fesm2022/cax-design-system-tristatecheckbox.mjs +8 -8
  377. package/fesm2022/cax-design-system-tristatecheckbox.mjs.map +1 -1
  378. package/fesm2022/cax-design-system-upload.mjs +209 -96
  379. package/fesm2022/cax-design-system-upload.mjs.map +1 -1
  380. package/fesm2022/cax-design-system-utils.mjs.map +1 -1
  381. package/fesm2022/cax-design-system-virtualscroller.mjs +7 -7
  382. package/fesm2022/cax-design-system-virtualscroller.mjs.map +1 -1
  383. package/fonts/Inter/Inter-Italic-VariableFont_opsz,wght.ttf +0 -0
  384. package/fonts/Inter/Inter-VariableFont_opsz,wght.ttf +0 -0
  385. package/fonts/Inter/OFL.txt +93 -0
  386. package/fonts/Inter/README.txt +118 -0
  387. package/fonts/Inter/static/Inter_18pt-Black.ttf +0 -0
  388. package/fonts/Inter/static/Inter_18pt-BlackItalic.ttf +0 -0
  389. package/fonts/Inter/static/Inter_18pt-Bold.ttf +0 -0
  390. package/fonts/Inter/static/Inter_18pt-BoldItalic.ttf +0 -0
  391. package/fonts/Inter/static/Inter_18pt-ExtraBold.ttf +0 -0
  392. package/fonts/Inter/static/Inter_18pt-ExtraBoldItalic.ttf +0 -0
  393. package/fonts/Inter/static/Inter_18pt-ExtraLight.ttf +0 -0
  394. package/fonts/Inter/static/Inter_18pt-ExtraLightItalic.ttf +0 -0
  395. package/fonts/Inter/static/Inter_18pt-Italic.ttf +0 -0
  396. package/fonts/Inter/static/Inter_18pt-Light.ttf +0 -0
  397. package/fonts/Inter/static/Inter_18pt-LightItalic.ttf +0 -0
  398. package/fonts/Inter/static/Inter_18pt-Medium.ttf +0 -0
  399. package/fonts/Inter/static/Inter_18pt-MediumItalic.ttf +0 -0
  400. package/fonts/Inter/static/Inter_18pt-Regular.ttf +0 -0
  401. package/fonts/Inter/static/Inter_18pt-SemiBold.ttf +0 -0
  402. package/fonts/Inter/static/Inter_18pt-SemiBoldItalic.ttf +0 -0
  403. package/fonts/Inter/static/Inter_18pt-Thin.ttf +0 -0
  404. package/fonts/Inter/static/Inter_18pt-ThinItalic.ttf +0 -0
  405. package/fonts/Inter/static/Inter_24pt-Black.ttf +0 -0
  406. package/fonts/Inter/static/Inter_24pt-BlackItalic.ttf +0 -0
  407. package/fonts/Inter/static/Inter_24pt-Bold.ttf +0 -0
  408. package/fonts/Inter/static/Inter_24pt-BoldItalic.ttf +0 -0
  409. package/fonts/Inter/static/Inter_24pt-ExtraBold.ttf +0 -0
  410. package/fonts/Inter/static/Inter_24pt-ExtraBoldItalic.ttf +0 -0
  411. package/fonts/Inter/static/Inter_24pt-ExtraLight.ttf +0 -0
  412. package/fonts/Inter/static/Inter_24pt-ExtraLightItalic.ttf +0 -0
  413. package/fonts/Inter/static/Inter_24pt-Italic.ttf +0 -0
  414. package/fonts/Inter/static/Inter_24pt-Light.ttf +0 -0
  415. package/fonts/Inter/static/Inter_24pt-LightItalic.ttf +0 -0
  416. package/fonts/Inter/static/Inter_24pt-Medium.ttf +0 -0
  417. package/fonts/Inter/static/Inter_24pt-MediumItalic.ttf +0 -0
  418. package/fonts/Inter/static/Inter_24pt-Regular.ttf +0 -0
  419. package/fonts/Inter/static/Inter_24pt-SemiBold.ttf +0 -0
  420. package/fonts/Inter/static/Inter_24pt-SemiBoldItalic.ttf +0 -0
  421. package/fonts/Inter/static/Inter_24pt-Thin.ttf +0 -0
  422. package/fonts/Inter/static/Inter_24pt-ThinItalic.ttf +0 -0
  423. package/fonts/Inter/static/Inter_28pt-Black.ttf +0 -0
  424. package/fonts/Inter/static/Inter_28pt-BlackItalic.ttf +0 -0
  425. package/fonts/Inter/static/Inter_28pt-Bold.ttf +0 -0
  426. package/fonts/Inter/static/Inter_28pt-BoldItalic.ttf +0 -0
  427. package/fonts/Inter/static/Inter_28pt-ExtraBold.ttf +0 -0
  428. package/fonts/Inter/static/Inter_28pt-ExtraBoldItalic.ttf +0 -0
  429. package/fonts/Inter/static/Inter_28pt-ExtraLight.ttf +0 -0
  430. package/fonts/Inter/static/Inter_28pt-ExtraLightItalic.ttf +0 -0
  431. package/fonts/Inter/static/Inter_28pt-Italic.ttf +0 -0
  432. package/fonts/Inter/static/Inter_28pt-Light.ttf +0 -0
  433. package/fonts/Inter/static/Inter_28pt-LightItalic.ttf +0 -0
  434. package/fonts/Inter/static/Inter_28pt-Medium.ttf +0 -0
  435. package/fonts/Inter/static/Inter_28pt-MediumItalic.ttf +0 -0
  436. package/fonts/Inter/static/Inter_28pt-Regular.ttf +0 -0
  437. package/fonts/Inter/static/Inter_28pt-SemiBold.ttf +0 -0
  438. package/fonts/Inter/static/Inter_28pt-SemiBoldItalic.ttf +0 -0
  439. package/fonts/Inter/static/Inter_28pt-Thin.ttf +0 -0
  440. package/fonts/Inter/static/Inter_28pt-ThinItalic.ttf +0 -0
  441. package/inputchips/index.d.ts +5 -0
  442. package/{chips/chips.d.ts → inputchips/inputchips.d.ts} +24 -6
  443. package/{chips/chips.interface.d.ts → inputchips/inputchips.interface.d.ts} +1 -1
  444. package/inputchips/inputchips.module.d.ts +14 -0
  445. package/inputchips/public_api.d.ts +3 -0
  446. package/inputgroup/inputgroup.d.ts +32 -1
  447. package/inputmask/inputmask.d.ts +9 -3
  448. package/inputnumber/inputnumber.d.ts +30 -4
  449. package/inputtext/inputtext.component.d.ts +2 -1
  450. package/inputtext/inputtext.directive.d.ts +3 -1
  451. package/inputtextarea/inputtextarea.component.d.ts +8 -1
  452. package/inputtextarea/inputtextarea.directive.d.ts +12 -1
  453. package/listbox/listbox.d.ts +14 -16
  454. package/listbox/listbox.module.d.ts +14 -0
  455. package/listbox/public_api.d.ts +1 -0
  456. package/logocard/index.d.ts +5 -0
  457. package/logocard/logocard.d.ts +6 -0
  458. package/logocard/logocard.module.d.ts +7 -0
  459. package/logocard/public_api.d.ts +2 -0
  460. package/messages/messages.d.ts +2 -11
  461. package/messages/messages.interface.d.ts +0 -2
  462. package/multiselect/multiselect.d.ts +28 -2
  463. package/navigation/navigation.d.ts +17 -12
  464. package/overlaypanel/overlaypanel.d.ts +6 -1
  465. package/package.json +240 -220
  466. package/productcard/index.d.ts +5 -0
  467. package/productcard/productcard.d.ts +19 -0
  468. package/productcard/productcard.module.d.ts +7 -0
  469. package/productcard/public_api.d.ts +2 -0
  470. package/progressbar/progressbar.d.ts +17 -2
  471. package/radiobutton/radiobutton.d.ts +1 -0
  472. package/resources/cax.min.scss +6351 -1
  473. package/resources/cax.scss +11281 -12539
  474. package/resources/components/accordion/accordion.scss +0 -46
  475. package/resources/components/autocomplete/autocomplete.scss +249 -184
  476. package/resources/components/avatar/avatar.scss +30 -34
  477. package/resources/components/avatargroup/avatargroup.scss +10 -10
  478. package/resources/components/badge/badge.scss +68 -67
  479. package/resources/components/blockui/blockui.css +26 -26
  480. package/resources/components/breadcrumb/breadcrumb.scss +36 -33
  481. package/resources/components/button/button.scss +160 -163
  482. package/resources/components/calendar/calendar.scss +368 -231
  483. package/resources/components/card/card.scss +9 -50
  484. package/resources/components/carousel/carousel.css +71 -71
  485. package/resources/components/cascadeselect/cascadeselect.scss +104 -105
  486. package/resources/components/categorycard/categorycard.scss +46 -0
  487. package/resources/components/checkbox/checkbox.scss +30 -30
  488. package/resources/components/chip/chip.scss +6 -6
  489. package/resources/components/colorpicker/colorpicker-images.scss +7 -7
  490. package/resources/components/colorpicker/colorpicker.scss +82 -82
  491. package/resources/components/commentbox/commentbox.scss +621 -611
  492. package/resources/components/comments/comments.scss +0 -0
  493. package/resources/components/common/common.scss +183 -183
  494. package/resources/components/comparecard/comparecard.component.scss +50 -0
  495. package/resources/components/confirmpopup/confirmpopup.css +53 -53
  496. package/resources/components/contextmenu/contextmenu.css +42 -42
  497. package/resources/components/dataview/dataview.css +13 -13
  498. package/resources/components/dialog/dialog.scss +193 -171
  499. package/resources/components/divider/divider.scss +0 -86
  500. package/resources/components/dock/dock.css +107 -107
  501. package/resources/components/dropdown/dropdown.scss +93 -94
  502. package/resources/components/editor/editor.scss +97 -4
  503. package/resources/components/fieldset/fieldset.css +30 -30
  504. package/resources/components/fileupload/fileupload.css +47 -47
  505. package/resources/components/galleria/galleria.css +281 -281
  506. package/resources/components/iconfield/iconfield.css +5 -5
  507. package/resources/components/image/image.scss +97 -92
  508. package/resources/components/inplace/inplace.css +19 -19
  509. package/resources/components/{chips/chips.scss → inputchips/inputchips.scss} +181 -205
  510. package/resources/components/inputicon/inputicon.css +6 -6
  511. package/resources/components/inputmask/inputmask.scss +48 -12
  512. package/resources/components/inputnumber/inputnumber.scss +109 -109
  513. package/resources/components/inputotp/inputotp.css +2 -2
  514. package/resources/components/inputswitch/inputswitch.css +23 -23
  515. package/resources/components/inputtext/inputtext.scss +138 -145
  516. package/resources/components/inputtextarea/inputtextarea.scss +15 -10
  517. package/resources/components/knob/knob.css +20 -20
  518. package/resources/components/listbox/listbox.scss +49 -0
  519. package/resources/components/logocard/logocard.scss +6 -0
  520. package/resources/components/megamenu/megamenu.css +108 -108
  521. package/resources/components/menu/menu.scss +31 -31
  522. package/resources/components/menubar/menubar.css +81 -81
  523. package/resources/components/message/message.css +17 -17
  524. package/resources/components/messages/messages.scss +53 -55
  525. package/resources/components/multiselect/multiselect.scss +132 -132
  526. package/resources/components/navigation/navigation.scss +236 -197
  527. package/resources/components/orderlist/orderlist.css +78 -78
  528. package/resources/components/organizationchart/organizationchart.css +62 -62
  529. package/resources/components/overlay/overlay.scss +80 -80
  530. package/resources/components/overlaypanel/overlaypanel.scss +84 -66
  531. package/resources/components/paginator/paginator.scss +41 -41
  532. package/resources/components/panel/panel.css +29 -29
  533. package/resources/components/panelmenu/panelmenu.css +45 -45
  534. package/resources/components/password/password.css +54 -54
  535. package/resources/components/picklist/picklist.css +60 -60
  536. package/resources/components/productcard/productcard.scss +95 -0
  537. package/resources/components/progressbar/progressbar.scss +107 -107
  538. package/resources/components/progressspinner/progressspinner.scss +0 -94
  539. package/resources/components/radiobutton/radiobutton.scss +34 -34
  540. package/resources/components/rating/rating.css +15 -15
  541. package/resources/components/ripple/ripple.scss +29 -29
  542. package/resources/components/scroller/scroller.scss +58 -58
  543. package/resources/components/scrollpanel/scrollpanel.css +50 -50
  544. package/resources/components/scrolltop/scrolltop.css +18 -18
  545. package/resources/components/sidebar/sidebar.scss +117 -117
  546. package/resources/components/skeleton/skeleton.scss +24 -25
  547. package/resources/components/slidemenu/slidemenu.css +100 -100
  548. package/resources/components/slider/{slider.css → slider.scss} +41 -41
  549. package/resources/components/speeddial/speeddial.scss +131 -122
  550. package/resources/components/spinner/spinner.css +63 -63
  551. package/resources/components/splitbutton/splitbutton.scss +57 -53
  552. package/resources/components/splitter/splitter.scss +73 -73
  553. package/resources/components/stepper/stepper.css +9 -9
  554. package/resources/components/steps/steps.scss +49 -50
  555. package/resources/components/subscriptioncard/subscriptioncard.component.scss +65 -0
  556. package/resources/components/table/table.scss +511 -458
  557. package/resources/components/table-paginator/table-paginator.component.scss +72 -0
  558. package/resources/components/tableconfiguration/tableconfiguration.scss +3 -125
  559. package/resources/components/tabmenu/tabmenu.css +80 -80
  560. package/resources/components/tabview/tabview.scss +206 -198
  561. package/resources/components/tag/tag.scss +7 -23
  562. package/resources/components/terminal/terminal.css +24 -24
  563. package/resources/components/tieredmenu/tieredmenu.scss +55 -55
  564. package/resources/components/timeline/timeline.scss +128 -128
  565. package/resources/components/toast/toast.scss +78 -87
  566. package/resources/components/toggleswitch/toggleswitch.scss +45 -36
  567. package/resources/components/toolbar/toolbar.css +19 -19
  568. package/resources/components/tooltip/tooltip.scss +124 -124
  569. package/resources/components/tree/tree.scss +154 -154
  570. package/resources/components/treeselect/treeselect.scss +114 -114
  571. package/resources/components/treetable/treetable.css +205 -205
  572. package/resources/components/upload/upload.component.scss +84 -145
  573. package/resources/fonts/Inter/Inter-Italic-VariableFont_opsz,wght.ttf +0 -0
  574. package/resources/fonts/Inter/Inter-VariableFont_opsz,wght.ttf +0 -0
  575. package/resources/fonts/Inter/OFL.txt +93 -0
  576. package/resources/fonts/Inter/README.txt +118 -0
  577. package/resources/fonts/Inter/static/Inter_18pt-Black.ttf +0 -0
  578. package/resources/fonts/Inter/static/Inter_18pt-BlackItalic.ttf +0 -0
  579. package/resources/fonts/Inter/static/Inter_18pt-Bold.ttf +0 -0
  580. package/resources/fonts/Inter/static/Inter_18pt-BoldItalic.ttf +0 -0
  581. package/resources/fonts/Inter/static/Inter_18pt-ExtraBold.ttf +0 -0
  582. package/resources/fonts/Inter/static/Inter_18pt-ExtraBoldItalic.ttf +0 -0
  583. package/resources/fonts/Inter/static/Inter_18pt-ExtraLight.ttf +0 -0
  584. package/resources/fonts/Inter/static/Inter_18pt-ExtraLightItalic.ttf +0 -0
  585. package/resources/fonts/Inter/static/Inter_18pt-Italic.ttf +0 -0
  586. package/resources/fonts/Inter/static/Inter_18pt-Light.ttf +0 -0
  587. package/resources/fonts/Inter/static/Inter_18pt-LightItalic.ttf +0 -0
  588. package/resources/fonts/Inter/static/Inter_18pt-Medium.ttf +0 -0
  589. package/resources/fonts/Inter/static/Inter_18pt-MediumItalic.ttf +0 -0
  590. package/resources/fonts/Inter/static/Inter_18pt-Regular.ttf +0 -0
  591. package/resources/fonts/Inter/static/Inter_18pt-SemiBold.ttf +0 -0
  592. package/resources/fonts/Inter/static/Inter_18pt-SemiBoldItalic.ttf +0 -0
  593. package/resources/fonts/Inter/static/Inter_18pt-Thin.ttf +0 -0
  594. package/resources/fonts/Inter/static/Inter_18pt-ThinItalic.ttf +0 -0
  595. package/resources/fonts/Inter/static/Inter_24pt-Black.ttf +0 -0
  596. package/resources/fonts/Inter/static/Inter_24pt-BlackItalic.ttf +0 -0
  597. package/resources/fonts/Inter/static/Inter_24pt-Bold.ttf +0 -0
  598. package/resources/fonts/Inter/static/Inter_24pt-BoldItalic.ttf +0 -0
  599. package/resources/fonts/Inter/static/Inter_24pt-ExtraBold.ttf +0 -0
  600. package/resources/fonts/Inter/static/Inter_24pt-ExtraBoldItalic.ttf +0 -0
  601. package/resources/fonts/Inter/static/Inter_24pt-ExtraLight.ttf +0 -0
  602. package/resources/fonts/Inter/static/Inter_24pt-ExtraLightItalic.ttf +0 -0
  603. package/resources/fonts/Inter/static/Inter_24pt-Italic.ttf +0 -0
  604. package/resources/fonts/Inter/static/Inter_24pt-Light.ttf +0 -0
  605. package/resources/fonts/Inter/static/Inter_24pt-LightItalic.ttf +0 -0
  606. package/resources/fonts/Inter/static/Inter_24pt-Medium.ttf +0 -0
  607. package/resources/fonts/Inter/static/Inter_24pt-MediumItalic.ttf +0 -0
  608. package/resources/fonts/Inter/static/Inter_24pt-Regular.ttf +0 -0
  609. package/resources/fonts/Inter/static/Inter_24pt-SemiBold.ttf +0 -0
  610. package/resources/fonts/Inter/static/Inter_24pt-SemiBoldItalic.ttf +0 -0
  611. package/resources/fonts/Inter/static/Inter_24pt-Thin.ttf +0 -0
  612. package/resources/fonts/Inter/static/Inter_24pt-ThinItalic.ttf +0 -0
  613. package/resources/fonts/Inter/static/Inter_28pt-Black.ttf +0 -0
  614. package/resources/fonts/Inter/static/Inter_28pt-BlackItalic.ttf +0 -0
  615. package/resources/fonts/Inter/static/Inter_28pt-Bold.ttf +0 -0
  616. package/resources/fonts/Inter/static/Inter_28pt-BoldItalic.ttf +0 -0
  617. package/resources/fonts/Inter/static/Inter_28pt-ExtraBold.ttf +0 -0
  618. package/resources/fonts/Inter/static/Inter_28pt-ExtraBoldItalic.ttf +0 -0
  619. package/resources/fonts/Inter/static/Inter_28pt-ExtraLight.ttf +0 -0
  620. package/resources/fonts/Inter/static/Inter_28pt-ExtraLightItalic.ttf +0 -0
  621. package/resources/fonts/Inter/static/Inter_28pt-Italic.ttf +0 -0
  622. package/resources/fonts/Inter/static/Inter_28pt-Light.ttf +0 -0
  623. package/resources/fonts/Inter/static/Inter_28pt-LightItalic.ttf +0 -0
  624. package/resources/fonts/Inter/static/Inter_28pt-Medium.ttf +0 -0
  625. package/resources/fonts/Inter/static/Inter_28pt-MediumItalic.ttf +0 -0
  626. package/resources/fonts/Inter/static/Inter_28pt-Regular.ttf +0 -0
  627. package/resources/fonts/Inter/static/Inter_28pt-SemiBold.ttf +0 -0
  628. package/resources/fonts/Inter/static/Inter_28pt-SemiBoldItalic.ttf +0 -0
  629. package/resources/fonts/Inter/static/Inter_28pt-Thin.ttf +0 -0
  630. package/resources/fonts/Inter/static/Inter_28pt-ThinItalic.ttf +0 -0
  631. package/resources/logo/cax-intro-logo.svg +75 -0
  632. package/resources/logo/cax-sidebar-logo.svg +6 -0
  633. package/resources/logo/dataX-dark.svg +12 -12
  634. package/resources/logo/dataX-icon-dark.svg +5 -5
  635. package/resources/logo/dataX-icon.svg +5 -5
  636. package/resources/logo/dataX.svg +12 -12
  637. package/resources/styles/colors.scss +568 -397
  638. package/resources/styles/fonts.scss +15 -0
  639. package/resources/styles/transitions.scss +23 -0
  640. package/resources/styles/typography.scss +555 -116
  641. package/resources/styles/variables.scss +85 -0
  642. package/selectbutton/selectbutton.d.ts +50 -1
  643. package/slider/public_api.d.ts +1 -0
  644. package/slider/slider.d.ts +1 -8
  645. package/slider/slider.module.d.ts +9 -0
  646. package/speeddial/speeddial.d.ts +6 -1
  647. package/splitbutton/splitbutton.d.ts +2 -2
  648. package/steps/steps.d.ts +11 -4
  649. package/steps/steps.module.d.ts +2 -1
  650. package/subscriptioncard/index.d.ts +5 -0
  651. package/subscriptioncard/public_api.d.ts +2 -0
  652. package/subscriptioncard/subscriptioncard.component.d.ts +33 -0
  653. package/subscriptioncard/subscriptioncard.module.d.ts +11 -0
  654. package/table/components/column-filter/column-filter.d.ts +0 -34
  655. package/table/components/table-header-checkbox/table-header-checkbox.d.ts +3 -1
  656. package/table/directives/cell-extend.directive.d.ts +14 -0
  657. package/table/directives/cell-highlight.directive.d.ts +4 -6
  658. package/table/public_api.d.ts +1 -0
  659. package/table/table.d.ts +34 -60
  660. package/table/table.interface.d.ts +21 -0
  661. package/table/table.module.d.ts +4 -3
  662. package/table-paginator/index.d.ts +5 -0
  663. package/table-paginator/public_api.d.ts +3 -0
  664. package/table-paginator/table-paginator.component.d.ts +28 -0
  665. package/table-paginator/table-paginator.interface.d.ts +21 -0
  666. package/table-paginator/table-paginator.module.d.ts +9 -0
  667. package/tableconfiguration/tableconfiguration.d.ts +3 -1
  668. package/tabview/tabview.d.ts +14 -12
  669. package/tabview/tabview.module.d.ts +2 -1
  670. package/tag/tag.d.ts +43 -5
  671. package/terminal/terminal.d.ts +1 -1
  672. package/tieredmenu/tieredmenu.d.ts +6 -1
  673. package/toast/toast.d.ts +1 -9
  674. package/toggleswitch/toggleswitch.d.ts +5 -0
  675. package/upload/upload.component.d.ts +51 -19
  676. package/chips/chips.module.d.ts +0 -14
  677. package/chips/public_api.d.ts +0 -3
  678. package/fesm2022/cax-design-system-chips.mjs.map +0 -1
  679. package/resources/components/listbox/listbox.css +0 -40
  680. package/resources/styles/shadow-blur.scss +0 -22
  681. package/resources/styles/space-radius-border.scss +0 -49
@@ -1 +1 @@
1
- {"version":3,"file":"cax-design-system-tieredmenu.mjs","sources":["../../src/app/components/tieredmenu/tieredmenu.ts","../../src/app/components/tieredmenu/tiredmenu.module.ts","../../src/app/components/tieredmenu/cax-design-system-tieredmenu.ts"],"sourcesContent":["import { AnimationEvent, animate, style, transition, trigger } from '@angular/animations';\nimport { DOCUMENT, isPlatformBrowser } from '@angular/common';\nimport {\n AfterContentInit,\n ChangeDetectionStrategy,\n ChangeDetectorRef,\n Component,\n ContentChildren,\n ElementRef,\n EventEmitter,\n Inject,\n Input,\n OnDestroy,\n OnInit,\n Output,\n PLATFORM_ID,\n QueryList,\n Renderer2,\n TemplateRef,\n ViewChild,\n ViewEncapsulation,\n ViewRef,\n booleanAttribute,\n effect,\n forwardRef,\n input,\n numberAttribute,\n signal\n} from '@angular/core';\nimport { MenuItem, OverlayService, caxConfig, CaxTemplate, SharedModule } from 'cax-design-system/api';\nimport { ConnectedOverlayScrollHandler, DomHandler } from 'cax-design-system/dom';\nimport { Nullable, VoidListener } from 'cax-design-system/ts-helpers';\nimport { ObjectUtils, UniqueComponentId, ZIndexUtils } from 'cax-design-system/utils';\n\n@Component({\n selector: 'cax-tieredMenuSub',\n template: `\n <ul\n #sublist\n role=\"menu\"\n [ngClass]=\"{ 'cax-submenu-list': !root, 'cax-tieredmenu-root-list': root }\"\n [id]=\"menuId + '_list'\"\n [tabindex]=\"tabindex\"\n [attr.aria-label]=\"ariaLabel\"\n [attr.aria-labelledBy]=\"ariaLabelledBy\"\n [attr.aria-activedescendant]=\"focusedItemId\"\n [attr.aria-orientation]=\"'vertical'\"\n [attr.data-pc-section]=\"'menu'\"\n (keydown)=\"menuKeydown.emit($event)\"\n (focus)=\"menuFocus.emit($event)\"\n (blur)=\"menuBlur.emit($event)\"\n >\n <ng-template ngFor let-processedItem [ngForOf]=\"items\" let-index=\"index\">\n <li\n *ngIf=\"isItemVisible(processedItem) && getItemProp(processedItem, 'separator')\"\n [attr.id]=\"getItemId(processedItem)\"\n [ngStyle]=\"getItemProp(processedItem, 'style')\"\n [ngClass]=\"getSeparatorItemClass(processedItem)\"\n role=\"separator\"\n [attr.data-pc-section]=\"'separator'\"\n ></li>\n <li\n #listItem\n *ngIf=\"isItemVisible(processedItem) && !getItemProp(processedItem, 'separator')\"\n role=\"menuitem\"\n [attr.id]=\"getItemId(processedItem)\"\n [attr.data-pc-section]=\"'menuitem'\"\n [attr.data-cax-highlight]=\"isItemActive(processedItem)\"\n [attr.data-cax-focused]=\"isItemFocused(processedItem)\"\n [attr.data-cax-disabled]=\"isItemDisabled(processedItem)\"\n [attr.aria-label]=\"getItemLabel(processedItem)\"\n [attr.aria-disabled]=\"isItemDisabled(processedItem) || undefined\"\n [attr.aria-haspopup]=\"isItemGroup(processedItem) && !getItemProp(processedItem, 'to') ? 'menu' : undefined\"\n [attr.aria-expanded]=\"isItemGroup(processedItem) ? isItemActive(processedItem) : undefined\"\n [attr.aria-setsize]=\"getAriaSetSize()\"\n [attr.aria-posinset]=\"getAriaPosInset(index)\"\n [ngStyle]=\"getItemProp(processedItem, 'style')\"\n [ngClass]=\"getItemClass(processedItem)\"\n [class]=\"getItemProp(processedItem, 'styleClass')\"\n [caxTooltip]=\"getItemProp(processedItem, 'tooltip')\"\n [tooltipOptions]=\"getItemProp(processedItem, 'tooltipOptions')\"\n >\n <div [attr.data-pc-section]=\"'content'\" class=\"cax-menuitem-content\" (click)=\"onItemClick($event, processedItem)\" (mouseenter)=\"onItemMouseEnter({ $event, processedItem })\">\n <ng-container *ngIf=\"!itemTemplate\">\n <a\n *ngIf=\"!getItemProp(processedItem, 'routerLink')\"\n [attr.href]=\"getItemProp(processedItem, 'url')\"\n [attr.data-automationid]=\"getItemProp(processedItem, 'automationId')\"\n [attr.data-pc-section]=\"'action'\"\n [target]=\"getItemProp(processedItem, 'target')\"\n [ngClass]=\"{ 'cax-menuitem-link': true, 'cax-disabled': getItemProp(processedItem, 'disabled') }\"\n [attr.tabindex]=\"-1\"\n pRipple\n >\n <span\n *ngIf=\"getItemProp(processedItem, 'icon')\"\n class=\"cax-menuitem-icon\"\n [ngClass]=\"getItemProp(processedItem, 'icon')\"\n [ngStyle]=\"getItemProp(processedItem, 'iconStyle')\"\n [attr.data-pc-section]=\"'icon'\"\n [attr.tabindex]=\"-1\"\n >\n </span>\n <span *ngIf=\"getItemProp(processedItem, 'escape'); else htmlLabel\" class=\"cax-menuitem-text\" [attr.data-pc-section]=\"'label'\">\n {{ getItemLabel(processedItem) }}\n </span>\n <ng-template #htmlLabel>\n <span class=\"cax-menuitem-text\" [innerHTML]=\"getItemLabel(processedItem)\" [attr.data-pc-section]=\"'label'\"></span>\n </ng-template>\n <span class=\"cax-menuitem-badge\" *ngIf=\"getItemProp(processedItem, 'badge')\" [ngClass]=\"getItemProp(processedItem, 'badgeStyleClass')\">{{ getItemProp(processedItem, 'badge') }}</span>\n\n <ng-container *ngIf=\"isItemGroup(processedItem)\">\n <AngleRightIcon *ngIf=\"!tieredMenu.submenuIconTemplate\" [styleClass]=\"'cax-submenu-icon'\" [attr.data-pc-section]=\"'submenuicon'\" [attr.aria-hidden]=\"true\" />\n <ng-template *ngTemplateOutlet=\"tieredMenu.submenuIconTemplate\" [attr.data-pc-section]=\"'submenuicon'\" [attr.aria-hidden]=\"true\"></ng-template>\n </ng-container>\n </a>\n <a\n *ngIf=\"getItemProp(processedItem, 'routerLink')\"\n [routerLink]=\"getItemProp(processedItem, 'routerLink')\"\n [attr.data-automationid]=\"getItemProp(processedItem, 'automationId')\"\n [attr.tabindex]=\"-1\"\n [attr.data-pc-section]=\"'action'\"\n [queryParams]=\"getItemProp(processedItem, 'queryParams')\"\n [routerLinkActive]=\"'cax-menuitem-link-active'\"\n [routerLinkActiveOptions]=\"getItemProp(processedItem, 'routerLinkActiveOptions') || { exact: false }\"\n [target]=\"getItemProp(processedItem, 'target')\"\n [ngClass]=\"{ 'cax-menuitem-link': true, 'cax-disabled': getItemProp(processedItem, 'disabled') }\"\n [fragment]=\"getItemProp(processedItem, 'fragment')\"\n [queryParamsHandling]=\"getItemProp(processedItem, 'queryParamsHandling')\"\n [preserveFragment]=\"getItemProp(processedItem, 'preserveFragment')\"\n [skipLocationChange]=\"getItemProp(processedItem, 'skipLocationChange')\"\n [replaceUrl]=\"getItemProp(processedItem, 'replaceUrl')\"\n [state]=\"getItemProp(processedItem, 'state')\"\n pRipple\n >\n <span\n *ngIf=\"getItemProp(processedItem, 'icon')\"\n class=\"cax-menuitem-icon\"\n [ngClass]=\"getItemProp(processedItem, 'icon')\"\n [ngStyle]=\"getItemProp(processedItem, 'iconStyle')\"\n [attr.data-pc-section]=\"'icon'\"\n [attr.aria-hidden]=\"true\"\n [attr.tabindex]=\"-1\"\n >\n </span>\n <span *ngIf=\"getItemProp(processedItem, 'escape'); else htmlLabel\" class=\"cax-menuitem-text\" [attr.data-pc-section]=\"'label'\">\n {{ getItemLabel(processedItem) }}\n </span>\n <ng-template #htmlLabel>\n <span class=\"cax-menuitem-text\" [innerHTML]=\"getItemLabel(processedItem)\" [attr.data-pc-section]=\"'label'\"></span>\n </ng-template>\n <span class=\"cax-menuitem-badge\" *ngIf=\"getItemProp(processedItem, 'badge')\" [ngClass]=\"getItemProp(processedItem, 'badgeStyleClass')\">{{ getItemProp(processedItem, 'badge') }}</span>\n\n <ng-container *ngIf=\"isItemGroup(processedItem)\">\n <AngleRightIcon *ngIf=\"!tieredMenu.submenuIconTemplate\" [styleClass]=\"'cax-submenu-icon'\" [attr.data-pc-section]=\"'submenuicon'\" [attr.aria-hidden]=\"true\" />\n <ng-template *ngTemplateOutlet=\"tieredMenu.submenuIconTemplate\" [attr.data-pc-section]=\"'submenuicon'\" [attr.aria-hidden]=\"true\"></ng-template>\n </ng-container>\n </a>\n </ng-container>\n <ng-container *ngIf=\"itemTemplate\">\n <ng-template *ngTemplateOutlet=\"itemTemplate; context: { $implicit: processedItem.item, hasSubmenu: getItemProp(processedItem, 'items') }\"></ng-template>\n </ng-container>\n </div>\n\n <cax-tieredMenuSub\n *ngIf=\"isItemVisible(processedItem) && isItemGroup(processedItem)\"\n [items]=\"processedItem.items\"\n [itemTemplate]=\"itemTemplate\"\n [autoDisplay]=\"autoDisplay\"\n [menuId]=\"menuId\"\n [activeItemPath]=\"activeItemPath()\"\n [focusedItemId]=\"focusedItemId\"\n [ariaLabelledBy]=\"getItemId(processedItem)\"\n [level]=\"level + 1\"\n (itemClick)=\"itemClick.emit($event)\"\n (itemMouseEnter)=\"onItemMouseEnter($event)\"\n ></cax-tieredMenuSub>\n </li>\n </ng-template>\n </ul>\n `,\n encapsulation: ViewEncapsulation.None,\n standalone: false,\n host: {\n class: 'cax-element'\n }\n})\nexport class TieredMenuSub {\n @Input() items: any[];\n\n @Input() itemTemplate: HTMLElement | undefined;\n\n @Input({ transform: booleanAttribute }) root: boolean | undefined = false;\n\n @Input({ transform: booleanAttribute }) autoDisplay: boolean | undefined;\n\n @Input({ transform: booleanAttribute }) autoZIndex: boolean = true;\n\n @Input({ transform: numberAttribute }) baseZIndex: number = 0;\n\n @Input({ transform: booleanAttribute }) popup: boolean | undefined;\n\n @Input() menuId: string | undefined;\n\n @Input() ariaLabel: string | undefined;\n\n @Input() ariaLabelledBy: string | undefined;\n\n @Input({ transform: numberAttribute }) level: number = 0;\n\n @Input() focusedItemId: string | undefined;\n\n activeItemPath = input<any[]>([]);\n\n @Input({ transform: numberAttribute }) tabindex: number = 0;\n\n @Output() itemClick: EventEmitter<any> = new EventEmitter();\n\n @Output() itemMouseEnter: EventEmitter<any> = new EventEmitter();\n\n @Output() menuFocus: EventEmitter<any> = new EventEmitter();\n\n @Output() menuBlur: EventEmitter<any> = new EventEmitter();\n\n @Output() menuKeydown: EventEmitter<any> = new EventEmitter();\n\n @ViewChild('sublist', { static: true }) sublistViewChild: ElementRef;\n\n constructor(\n public el: ElementRef,\n public renderer: Renderer2,\n @Inject(forwardRef(() => TieredMenu)) public tieredMenu: TieredMenu\n ) {\n effect(() => {\n const path = this.activeItemPath();\n if (ObjectUtils.isNotEmpty(path)) {\n this.positionSubmenu();\n }\n });\n }\n\n positionSubmenu() {\n if (isPlatformBrowser(this.tieredMenu.platformId)) {\n const sublist = this.sublistViewChild && this.sublistViewChild.nativeElement;\n if (sublist) {\n const parentItem = sublist.parentElement.parentElement;\n const containerOffset = DomHandler.getOffset(parentItem);\n const viewport = DomHandler.getViewport();\n const sublistWidth = sublist.offsetParent ? sublist.offsetWidth : DomHandler.getOuterWidth(sublist);\n const itemOuterWidth = DomHandler.getOuterWidth(parentItem.children[0]);\n const sublistFlippedClass = 'cax-submenu-list-flipped';\n if (parseInt(containerOffset.left, 10) + itemOuterWidth + sublistWidth > viewport.width - DomHandler.calculateScrollbarWidth()) {\n DomHandler.addClass(sublist, sublistFlippedClass);\n } else if (DomHandler.hasClass(sublist, sublistFlippedClass)) {\n DomHandler.removeClass(sublist, sublistFlippedClass);\n }\n }\n }\n }\n\n getItemProp(processedItem: any, name: string, params: any | null = null) {\n return processedItem && processedItem.item ? ObjectUtils.getItemValue(processedItem.item[name], params) : undefined;\n }\n\n getItemId(processedItem: any): string {\n return processedItem.item?.id ?? `${this.menuId}_${processedItem.key}`;\n }\n\n getItemKey(processedItem: any): string {\n return this.getItemId(processedItem);\n }\n\n getItemClass(processedItem: any) {\n return {\n ...this.getItemProp(processedItem, 'class'),\n 'cax-menuitem': true,\n 'cax-highlight': this.isItemActive(processedItem),\n 'cax-menuitem-active': this.isItemActive(processedItem),\n 'cax-focus': this.isItemFocused(processedItem),\n 'cax-disabled': this.isItemDisabled(processedItem)\n };\n }\n\n getItemLabel(processedItem: any): string {\n return this.getItemProp(processedItem, 'label');\n }\n\n getSeparatorItemClass(processedItem: any) {\n return {\n ...this.getItemProp(processedItem, 'class'),\n 'cax-menuitem-separator': true\n };\n }\n\n getAriaSetSize() {\n return this.items.filter((processedItem) => this.isItemVisible(processedItem) && !this.getItemProp(processedItem, 'separator')).length;\n }\n\n getAriaPosInset(index: number) {\n return (\n index -\n this.items.slice(0, index).filter((processedItem) => {\n const isItemVisible = this.isItemVisible(processedItem);\n const isVisibleSeparator = isItemVisible && this.getItemProp(processedItem, 'separator');\n return !isItemVisible || isVisibleSeparator;\n }).length +\n 1\n );\n }\n\n isItemVisible(processedItem: any): boolean {\n return this.getItemProp(processedItem, 'visible') !== false;\n }\n\n isItemActive(processedItem: any): boolean {\n if (this.activeItemPath()) {\n return this.activeItemPath().some((path) => path.key === processedItem.key);\n }\n }\n\n isItemDisabled(processedItem: any): boolean {\n return this.getItemProp(processedItem, 'disabled');\n }\n\n isItemFocused(processedItem: any): boolean {\n return this.focusedItemId === this.getItemId(processedItem);\n }\n\n isItemGroup(processedItem: any): boolean {\n return ObjectUtils.isNotEmpty(processedItem.items);\n }\n\n onItemMouseEnter(param: any) {\n if (this.autoDisplay) {\n const { event, processedItem } = param;\n this.itemMouseEnter.emit({ originalEvent: event, processedItem });\n }\n }\n\n onItemClick(event: any, processedItem: any) {\n this.getItemProp(processedItem, 'command', { originalEvent: event, item: processedItem.item });\n this.itemClick.emit({ originalEvent: event, processedItem, isFocus: true });\n }\n}\n/**\n * TieredMenu displays submenus in nested overlays.\n * @group Components\n */\n@Component({\n selector: 'cax-tieredMenu',\n template: `\n <div\n #container\n [attr.data-pc-section]=\"'root'\"\n [attr.data-pc-name]=\"'tieredmenu'\"\n [id]=\"id\"\n [ngClass]=\"{ 'cax-tieredmenu cax-component': true, 'cax-tieredmenu-overlay': popup }\"\n [class]=\"styleClass\"\n [ngStyle]=\"style\"\n (click)=\"onOverlayClick($event)\"\n [@overlayAnimation]=\"{ value: 'visible', params: { showTransitionParams: showTransitionOptions, hideTransitionParams: hideTransitionOptions } }\"\n [@.disabled]=\"popup !== true\"\n (@overlayAnimation.start)=\"onOverlayAnimationStart($event)\"\n (@overlayAnimation.done)=\"onOverlayAnimationEnd($event)\"\n *ngIf=\"!popup || visible\"\n >\n <cax-tieredMenuSub\n #rootmenu\n [root]=\"true\"\n [items]=\"processedItems\"\n [itemTemplate]=\"itemTemplate\"\n [menuId]=\"id\"\n [tabindex]=\"!disabled ? tabindex : -1\"\n [ariaLabel]=\"ariaLabel\"\n [ariaLabelledBy]=\"ariaLabelledBy\"\n [baseZIndex]=\"baseZIndex\"\n [autoZIndex]=\"autoZIndex\"\n [autoDisplay]=\"autoDisplay\"\n [popup]=\"popup\"\n [focusedItemId]=\"focused ? focusedItemId : undefined\"\n [activeItemPath]=\"activeItemPath()\"\n (itemClick)=\"onItemClick($event)\"\n (menuFocus)=\"onMenuFocus($event)\"\n (menuBlur)=\"onMenuBlur($event)\"\n (menuKeydown)=\"onKeyDown($event)\"\n (itemMouseEnter)=\"onItemMouseEnter($event)\"\n ></cax-tieredMenuSub>\n </div>\n `,\n animations: [trigger('overlayAnimation', [transition(':enter', [style({ opacity: 0, transform: 'scaleY(0.8)' }), animate('{{showTransitionParams}}')]), transition(':leave', [animate('{{hideTransitionParams}}', style({ opacity: 0 }))])])],\n changeDetection: ChangeDetectionStrategy.OnPush,\n encapsulation: ViewEncapsulation.None,\n styleUrls: ['./tieredmenu.scss'],\n standalone: false,\n host: {\n class: 'cax-element'\n }\n})\nexport class TieredMenu implements OnInit, AfterContentInit, OnDestroy {\n /**\n * An array of menuitems.\n * @group Props\n */\n @Input() set model(value: MenuItem[] | undefined) {\n this._model = value;\n this._processedItems = this.createProcessedItems(this._model || []);\n }\n get model(): MenuItem[] | undefined {\n return this._model;\n }\n /**\n * Defines if menu would displayed as a popup.\n * @group Props\n */\n @Input({ transform: booleanAttribute }) popup: boolean | undefined;\n /**\n * Inline style of the component.\n * @group Props\n */\n @Input() style: { [klass: string]: any } | null | undefined;\n /**\n * Style class of the component.\n * @group Props\n */\n @Input() styleClass: string | undefined;\n /**\n * Target element to attach the overlay, valid values are \"body\" or a local ng-template variable of another element.\n * @group Props\n */\n @Input() appendTo: HTMLElement | ElementRef | TemplateRef<any> | string | null | undefined | any;\n /**\n * Whether to automatically manage layering.\n * @group Props\n */\n @Input({ transform: booleanAttribute }) autoZIndex: boolean = true;\n /**\n * Base zIndex value to use in layering.\n * @group Props\n */\n @Input({ transform: numberAttribute }) baseZIndex: number = 0;\n /**\n * Whether to show a root submenu on mouse over.\n * @defaultValue true\n * @group Props\n */\n @Input({ transform: booleanAttribute }) autoDisplay: boolean | undefined = true;\n /**\n * Transition options of the show animation.\n * @group Props\n */\n @Input() showTransitionOptions: string = '.12s cubic-bezier(0, 0, 0.2, 1)';\n /**\n * Transition options of the hide animation.\n * @group Props\n */\n @Input() hideTransitionOptions: string = '.1s linear';\n /**\n * Current id state as a string.\n * @group Props\n */\n @Input() id: string | undefined;\n /**\n * Defines a string value that labels an interactive element.\n * @group Props\n */\n @Input() ariaLabel: string | undefined;\n /**\n * Identifier of the underlying input element.\n * @group Props\n */\n @Input() ariaLabelledBy: string | undefined;\n /**\n * When present, it specifies that the component should be disabled.\n * @group Props\n */\n @Input({ transform: booleanAttribute }) disabled: boolean = false;\n /**\n * Index of the element in tabbing order.\n * @group Props\n */\n @Input({ transform: numberAttribute }) tabindex: number = 0;\n /**\n * Callback to invoke when overlay menu is shown.\n * @group Emits\n */\n @Output() onShow: EventEmitter<any> = new EventEmitter<any>();\n /**\n * Callback to invoke when overlay menu is hidden.\n * @group Emits\n */\n @Output() onHide: EventEmitter<any> = new EventEmitter<any>();\n\n @ContentChildren(CaxTemplate) templates: QueryList<CaxTemplate> | undefined;\n\n @ViewChild('rootmenu') rootmenu: TieredMenuSub | undefined;\n\n @ViewChild('container') containerViewChild: ElementRef<any> | undefined;\n\n submenuIconTemplate: Nullable<TemplateRef<any>>;\n\n itemTemplate: Nullable<TemplateRef<any>>;\n\n container: HTMLDivElement | undefined;\n\n outsideClickListener: VoidListener;\n\n resizeListener: VoidListener;\n\n scrollHandler: Nullable<ConnectedOverlayScrollHandler>;\n\n target: any;\n\n relatedTarget: any;\n\n visible: boolean | undefined;\n\n relativeAlign: boolean | undefined;\n\n dirty: boolean = false;\n\n focused: boolean = false;\n\n activeItemPath = signal<any>([]);\n\n number = signal<number>(0);\n\n focusedItemInfo = signal<any>({ index: -1, level: 0, parentKey: '', item: null });\n\n searchValue: string = '';\n\n searchTimeout: any;\n\n _processedItems: any[];\n\n _model: MenuItem[] | undefined;\n\n get visibleItems() {\n const processedItem = this.activeItemPath().find((p) => p.key === this.focusedItemInfo().parentKey);\n return processedItem ? processedItem.items : this.processedItems;\n }\n\n get processedItems() {\n if (!this._processedItems || !this._processedItems.length) {\n this._processedItems = this.createProcessedItems(this.model || []);\n }\n return this._processedItems;\n }\n\n get focusedItemId() {\n const focusedItemInfo = this.focusedItemInfo();\n return focusedItemInfo.item?.id ? focusedItemInfo.item.id : focusedItemInfo.index !== -1 ? `${this.id}${ObjectUtils.isNotEmpty(focusedItemInfo.parentKey) ? '_' + focusedItemInfo.parentKey : ''}_${focusedItemInfo.index}` : null;\n }\n\n constructor(\n @Inject(DOCUMENT) private document: Document,\n @Inject(PLATFORM_ID) public platformId: any,\n public el: ElementRef,\n public renderer: Renderer2,\n public cd: ChangeDetectorRef,\n public config: caxConfig,\n public overlayService: OverlayService\n ) {\n effect(() => {\n const path = this.activeItemPath();\n\n if (ObjectUtils.isNotEmpty(path)) {\n this.bindOutsideClickListener();\n this.bindResizeListener();\n } else {\n this.unbindOutsideClickListener();\n this.unbindResizeListener();\n }\n });\n }\n\n ngOnInit() {\n this.id = this.id || UniqueComponentId();\n }\n\n ngAfterContentInit() {\n this.templates?.forEach((item) => {\n switch (item.getType()) {\n case 'submenuicon':\n this.submenuIconTemplate = item.template;\n break;\n\n case 'item':\n this.itemTemplate = item.template;\n break;\n\n default:\n this.itemTemplate = item.template;\n break;\n }\n });\n }\n\n createProcessedItems(items: any, level: number = 0, parent: any = {}, parentKey: any = '') {\n const processedItems = [];\n\n items &&\n items.forEach((item, index) => {\n const key = (parentKey !== '' ? parentKey + '_' : '') + index;\n const newItem = {\n item,\n index,\n level,\n key,\n parent,\n parentKey\n };\n\n newItem['items'] = this.createProcessedItems(item.items, level + 1, newItem, key);\n processedItems.push(newItem);\n });\n\n return processedItems;\n }\n\n getItemProp(item: any, name: string) {\n return item ? ObjectUtils.getItemValue(item[name]) : undefined;\n }\n\n getProccessedItemLabel(processedItem: any) {\n return processedItem ? this.getItemLabel(processedItem.item) : undefined;\n }\n\n getItemLabel(item: any) {\n return this.getItemProp(item, 'label');\n }\n\n isProcessedItemGroup(processedItem: any): boolean {\n return processedItem && ObjectUtils.isNotEmpty(processedItem.items);\n }\n\n isSelected(processedItem: any): boolean {\n return this.activeItemPath().some((p) => p.key === processedItem.key);\n }\n\n isValidSelectedItem(processedItem: any): boolean {\n return this.isValidItem(processedItem) && this.isSelected(processedItem);\n }\n\n isValidItem(processedItem: any): boolean {\n return !!processedItem && !this.isItemDisabled(processedItem.item) && !this.isItemSeparator(processedItem.item) && this.isItemVisible(processedItem.item);\n }\n\n isItemDisabled(item: any): boolean {\n return this.getItemProp(item, 'disabled');\n }\n\n isItemVisible(item: any): boolean {\n return this.getItemProp(item, 'visible') !== false;\n }\n\n isItemSeparator(item: any): boolean {\n return this.getItemProp(item, 'separator');\n }\n\n isItemMatched(processedItem: any): boolean {\n return this.isValidItem(processedItem) && this.getProccessedItemLabel(processedItem).toLocaleLowerCase().startsWith(this.searchValue.toLocaleLowerCase());\n }\n\n isProccessedItemGroup(processedItem: any): boolean {\n return processedItem && ObjectUtils.isNotEmpty(processedItem.items);\n }\n\n onOverlayClick(event: MouseEvent) {\n if (this.popup) {\n this.overlayService.add({\n originalEvent: event,\n target: this.el.nativeElement\n });\n }\n }\n\n onItemClick(event: any) {\n const { originalEvent, processedItem } = event;\n const grouped = this.isProcessedItemGroup(processedItem);\n const root = ObjectUtils.isEmpty(processedItem.parent);\n const selected = this.isSelected(processedItem);\n\n if (selected) {\n const { index, key, level, parentKey, item } = processedItem;\n\n this.activeItemPath.set(this.activeItemPath().filter((p) => key !== p.key && key.startsWith(p.key)));\n this.focusedItemInfo.set({ index, level, parentKey, item });\n\n this.dirty = true;\n DomHandler.focus(this.rootmenu.sublistViewChild.nativeElement);\n } else {\n if (grouped) {\n this.onItemChange(event);\n } else {\n const rootProcessedItem = root ? processedItem : this.activeItemPath().find((p) => p.parentKey === '');\n this.hide(originalEvent);\n this.changeFocusedItemIndex(originalEvent, rootProcessedItem ? rootProcessedItem.index : -1);\n\n DomHandler.focus(this.rootmenu.sublistViewChild.nativeElement);\n }\n }\n }\n\n onItemMouseEnter(event: any) {\n if (!DomHandler.isTouchDevice()) {\n if (this.autoDisplay) {\n this.dirty = true;\n }\n if (this.dirty) {\n this.onItemChange(event);\n }\n } else {\n this.onItemChange({ event, processedItem: event.processedItem, focus: this.autoDisplay });\n }\n }\n\n onKeyDown(event: KeyboardEvent) {\n const metaKey = event.metaKey || event.ctrlKey;\n\n switch (event.code) {\n case 'ArrowDown':\n this.onArrowDownKey(event);\n break;\n\n case 'ArrowUp':\n this.onArrowUpKey(event);\n break;\n\n case 'ArrowLeft':\n this.onArrowLeftKey(event);\n break;\n\n case 'ArrowRight':\n this.onArrowRightKey(event);\n break;\n\n case 'Home':\n this.onHomeKey(event);\n break;\n\n case 'End':\n this.onEndKey(event);\n break;\n\n case 'Space':\n this.onSpaceKey(event);\n break;\n\n case 'Enter':\n this.onEnterKey(event);\n break;\n\n case 'Escape':\n this.onEscapeKey(event);\n break;\n\n case 'Tab':\n this.onTabKey(event);\n break;\n\n case 'PageDown':\n case 'PageUp':\n case 'Backspace':\n case 'ShiftLeft':\n case 'ShiftRight':\n //NOOP\n break;\n\n default:\n if (!metaKey && ObjectUtils.isPrintableCharacter(event.key)) {\n this.searchItems(event, event.key);\n }\n\n break;\n }\n }\n\n onArrowDownKey(event: KeyboardEvent) {\n const itemIndex = this.focusedItemInfo().index !== -1 ? this.findNextItemIndex(this.focusedItemInfo().index) : this.findFirstFocusedItemIndex();\n\n this.changeFocusedItemIndex(event, itemIndex);\n event.preventDefault();\n }\n\n onArrowRightKey(event: KeyboardEvent) {\n const processedItem = this.visibleItems[this.focusedItemInfo().index];\n const grouped = this.isProccessedItemGroup(processedItem);\n const item = processedItem?.item;\n\n if (grouped) {\n this.onItemChange({ originalEvent: event, processedItem });\n this.focusedItemInfo.set({ index: -1, parentKey: processedItem.key, item });\n this.searchValue = '';\n this.onArrowDownKey(event);\n }\n\n event.preventDefault();\n }\n\n onArrowUpKey(event: KeyboardEvent) {\n if (event.altKey) {\n if (this.focusedItemInfo().index !== -1) {\n const processedItem = this.visibleItems[this.focusedItemInfo().index];\n const grouped = this.isProccessedItemGroup(processedItem);\n\n !grouped && this.onItemChange({ originalEvent: event, processedItem });\n }\n\n this.popup && this.hide(event, true);\n event.preventDefault();\n } else {\n const itemIndex = this.focusedItemInfo().index !== -1 ? this.findPrevItemIndex(this.focusedItemInfo().index) : this.findLastFocusedItemIndex();\n\n this.changeFocusedItemIndex(event, itemIndex);\n event.preventDefault();\n }\n }\n\n onArrowLeftKey(event: KeyboardEvent) {\n const processedItem = this.visibleItems[this.focusedItemInfo().index];\n const parentItem = this.activeItemPath().find((p) => p.key === processedItem.parentKey);\n const root = ObjectUtils.isEmpty(processedItem.parent);\n\n if (!root) {\n this.focusedItemInfo.set({ index: -1, parentKey: parentItem ? parentItem.parentKey : '', item: processedItem.item });\n this.searchValue = '';\n this.onArrowDownKey(event);\n }\n\n const activeItemPath = this.activeItemPath().filter((p) => p.parentKey !== this.focusedItemInfo().parentKey);\n this.activeItemPath.set(activeItemPath);\n\n event.preventDefault();\n }\n\n onHomeKey(event: KeyboardEvent) {\n this.changeFocusedItemIndex(event, this.findFirstItemIndex());\n event.preventDefault();\n }\n\n onEndKey(event: KeyboardEvent) {\n this.changeFocusedItemIndex(event, this.findLastItemIndex());\n event.preventDefault();\n }\n\n onSpaceKey(event: KeyboardEvent) {\n this.onEnterKey(event);\n }\n\n onEscapeKey(event: KeyboardEvent) {\n this.hide(event, true);\n this.focusedItemInfo().index = this.findFirstFocusedItemIndex();\n\n event.preventDefault();\n }\n\n onTabKey(event: KeyboardEvent) {\n if (this.focusedItemInfo().index !== -1) {\n const processedItem = this.visibleItems[this.focusedItemInfo().index];\n const grouped = this.isProccessedItemGroup(processedItem);\n\n !grouped && this.onItemChange({ originalEvent: event, processedItem });\n }\n\n this.hide();\n }\n\n onEnterKey(event: KeyboardEvent) {\n if (this.focusedItemInfo().index !== -1) {\n const element = DomHandler.findSingle(this.rootmenu.el.nativeElement, `li[id=\"${`${this.focusedItemId}`}\"]`);\n const anchorElement = element && DomHandler.findSingle(element, 'a[data-pc-section=\"action\"]');\n\n anchorElement ? anchorElement.click() : element && element.click();\n\n if (!this.popup) {\n const processedItem = this.visibleItems[this.focusedItemInfo().index];\n const grouped = this.isProccessedItemGroup(processedItem);\n\n !grouped && (this.focusedItemInfo().index = this.findFirstFocusedItemIndex());\n }\n }\n\n event.preventDefault();\n }\n\n onItemChange(event: any) {\n const { processedItem, isFocus } = event;\n\n if (ObjectUtils.isEmpty(processedItem)) return;\n\n const { index, key, level, parentKey, items, item } = processedItem;\n const grouped = ObjectUtils.isNotEmpty(items);\n const activeItemPath = this.activeItemPath().filter((p) => p.parentKey !== parentKey && p.parentKey !== key);\n\n grouped && activeItemPath.push(processedItem);\n this.focusedItemInfo.set({ index, level, parentKey, item });\n this.activeItemPath.set(activeItemPath);\n\n grouped && (this.dirty = true);\n isFocus && DomHandler.focus(this.rootmenu.sublistViewChild.nativeElement);\n }\n\n onMenuFocus(event: any) {\n this.focused = true;\n if (this.focusedItemInfo().index === -1 && !this.popup) {\n // this.onArrowDownKey(event);\n }\n }\n\n onMenuBlur(event: any) {\n this.focused = false;\n this.focusedItemInfo.set({ index: -1, level: 0, parentKey: '', item: null });\n this.searchValue = '';\n this.dirty = false;\n }\n\n onOverlayAnimationStart(event: AnimationEvent) {\n switch (event.toState) {\n case 'visible':\n if (this.popup) {\n this.container = event.element;\n this.moveOnTop();\n this.onShow.emit({});\n this.appendOverlay();\n this.alignOverlay();\n this.bindOutsideClickListener();\n this.bindResizeListener();\n this.bindScrollListener();\n DomHandler.focus(this.rootmenu.sublistViewChild.nativeElement);\n this.scrollInView();\n }\n break;\n\n case 'void':\n this.onOverlayHide();\n this.onHide.emit({});\n break;\n }\n }\n\n alignOverlay() {\n if (this.relativeAlign) DomHandler.relativePosition(this.container, this.target);\n else DomHandler.absolutePosition(this.container, this.target);\n }\n\n onOverlayAnimationEnd(event: AnimationEvent) {\n switch (event.toState) {\n case 'void':\n ZIndexUtils.clear(event.element);\n break;\n }\n }\n\n appendOverlay() {\n if (this.appendTo) {\n if (this.appendTo === 'body') this.renderer.appendChild(this.document.body, this.container);\n else DomHandler.appendChild(this.container, this.appendTo);\n }\n }\n\n restoreOverlayAppend() {\n if (this.container && this.appendTo) {\n this.renderer.appendChild(this.el.nativeElement, this.container);\n }\n }\n\n moveOnTop() {\n if (this.autoZIndex) {\n ZIndexUtils.set('menu', this.container, this.baseZIndex + this.config.zIndex.menu);\n }\n }\n\n /**\n * Hides the popup menu.\n * @group Method\n */\n hide(event?, isFocus?: boolean) {\n if (this.popup) {\n this.onHide.emit({});\n this.visible = false;\n }\n this.activeItemPath.set([]);\n this.focusedItemInfo.set({ index: -1, level: 0, parentKey: '' });\n\n isFocus && DomHandler.focus(this.relatedTarget || this.target || this.rootmenu.sublistViewChild.nativeElement);\n this.dirty = false;\n }\n\n /**\n * Toggles the visibility of the popup menu.\n * @param {Event} event - Browser event.\n * @group Method\n */\n toggle(event: any) {\n this.visible ? this.hide(event, true) : this.show(event);\n }\n\n /**\n * Displays the popup menu.\n * @param {Event} even - Browser event.\n * @group Method\n */\n show(event: any, isFocus?) {\n if (this.popup) {\n this.visible = true;\n this.target = this.target || event.currentTarget;\n this.relatedTarget = event.relatedTarget || null;\n this.relativeAlign = event?.relativeAlign || null;\n }\n\n this.focusedItemInfo.set({ index: -1, level: 0, parentKey: '' });\n\n isFocus && DomHandler.focus(this.rootmenu.sublistViewChild.nativeElement);\n\n this.cd.markForCheck();\n }\n\n searchItems(event: any, char: string) {\n this.searchValue = (this.searchValue || '') + char;\n\n let itemIndex = -1;\n let matched = false;\n\n if (this.focusedItemInfo().index !== -1) {\n itemIndex = this.visibleItems.slice(this.focusedItemInfo().index).findIndex((processedItem) => this.isItemMatched(processedItem));\n itemIndex = itemIndex === -1 ? this.visibleItems.slice(0, this.focusedItemInfo().index).findIndex((processedItem) => this.isItemMatched(processedItem)) : itemIndex + this.focusedItemInfo().index;\n } else {\n itemIndex = this.visibleItems.findIndex((processedItem) => this.isItemMatched(processedItem));\n }\n\n if (itemIndex !== -1) {\n matched = true;\n }\n\n if (itemIndex === -1 && this.focusedItemInfo().index === -1) {\n itemIndex = this.findFirstFocusedItemIndex();\n }\n\n if (itemIndex !== -1) {\n this.changeFocusedItemIndex(event, itemIndex);\n }\n\n if (this.searchTimeout) {\n clearTimeout(this.searchTimeout);\n }\n\n this.searchTimeout = setTimeout(() => {\n this.searchValue = '';\n this.searchTimeout = null;\n }, 500);\n\n return matched;\n }\n\n findLastFocusedItemIndex() {\n const selectedIndex = this.findSelectedItemIndex();\n return selectedIndex < 0 ? this.findLastItemIndex() : selectedIndex;\n }\n\n findLastItemIndex() {\n return ObjectUtils.findLastIndex(this.visibleItems, (processedItem) => this.isValidItem(processedItem));\n }\n\n findPrevItemIndex(index: number) {\n const matchedItemIndex = index > 0 ? ObjectUtils.findLastIndex(this.visibleItems.slice(0, index), (processedItem) => this.isValidItem(processedItem)) : -1;\n\n return matchedItemIndex > -1 ? matchedItemIndex : index;\n }\n\n findNextItemIndex(index: number) {\n const matchedItemIndex = index < this.visibleItems.length - 1 ? this.visibleItems.slice(index + 1).findIndex((processedItem) => this.isValidItem(processedItem)) : -1;\n\n return matchedItemIndex > -1 ? matchedItemIndex + index + 1 : index;\n }\n\n findFirstFocusedItemIndex() {\n const selectedIndex = this.findSelectedItemIndex();\n\n return selectedIndex < 0 ? this.findFirstItemIndex() : selectedIndex;\n }\n\n findFirstItemIndex() {\n return this.visibleItems.findIndex((processedItem) => this.isValidItem(processedItem));\n }\n\n findSelectedItemIndex() {\n return this.visibleItems.findIndex((processedItem) => this.isValidSelectedItem(processedItem));\n }\n\n changeFocusedItemIndex(event: any, index: number) {\n if (this.focusedItemInfo().index !== index) {\n const focusedItemInfo = this.focusedItemInfo();\n this.focusedItemInfo.set({ ...focusedItemInfo, item: this.visibleItems[index].item, index });\n this.scrollInView();\n }\n }\n\n scrollInView(index: number = -1) {\n const id = index !== -1 ? `${this.id}_${index}` : this.focusedItemId;\n const element = DomHandler.findSingle(this.rootmenu.el.nativeElement, `li[id=\"${id}\"]`);\n\n if (element) {\n element.scrollIntoView && element.scrollIntoView({ block: 'nearest', inline: 'nearest' });\n }\n }\n\n bindScrollListener() {\n if (!this.scrollHandler) {\n this.scrollHandler = new ConnectedOverlayScrollHandler(this.target, (event) => {\n if (this.visible) {\n this.hide(event, true);\n }\n });\n }\n\n this.scrollHandler.bindScrollListener();\n }\n\n unbindScrollListener() {\n if (this.scrollHandler) {\n this.scrollHandler.unbindScrollListener();\n this.scrollHandler = null;\n }\n }\n\n bindResizeListener() {\n if (isPlatformBrowser(this.platformId)) {\n if (!this.resizeListener) {\n this.resizeListener = this.renderer.listen(this.document.defaultView, 'resize', (event) => {\n if (!DomHandler.isTouchDevice()) {\n this.hide(event, true);\n }\n });\n }\n }\n }\n\n bindOutsideClickListener() {\n if (isPlatformBrowser(this.platformId)) {\n if (!this.outsideClickListener) {\n this.outsideClickListener = this.renderer.listen(this.document, 'click', (event) => {\n const isOutsideContainer = this.containerViewChild && !this.containerViewChild.nativeElement.contains(event.target);\n const isOutsideTarget = this.popup ? !(this.target && (this.target === event.target || this.target.contains(event.target))) : true;\n if (isOutsideContainer && isOutsideTarget) {\n this.hide();\n }\n });\n }\n }\n }\n\n unbindOutsideClickListener() {\n if (this.outsideClickListener) {\n document.removeEventListener('click', this.outsideClickListener);\n this.outsideClickListener = null;\n }\n }\n\n unbindResizeListener() {\n if (this.resizeListener) {\n this.resizeListener();\n this.resizeListener = null;\n }\n }\n\n onOverlayHide() {\n this.unbindOutsideClickListener();\n this.unbindResizeListener();\n this.unbindScrollListener();\n\n if (!(this.cd as ViewRef).destroyed) {\n this.target = null;\n }\n }\n\n ngOnDestroy() {\n if (this.popup) {\n if (this.scrollHandler) {\n this.scrollHandler.destroy();\n this.scrollHandler = null;\n }\n\n if (this.container && this.autoZIndex) {\n ZIndexUtils.clear(this.container);\n }\n\n this.restoreOverlayAppend();\n this.onOverlayHide();\n }\n }\n}\n","import { CommonModule } from '@angular/common';\nimport { NgModule } from '@angular/core';\nimport { RouterModule } from '@angular/router';\nimport { SharedModule } from 'cax-design-system/api';\nimport { AngleRightIcon } from 'cax-design-system/icons/angleright';\nimport { RippleModule } from 'cax-design-system/ripple';\nimport { TooltipModule } from 'cax-design-system/tooltip';\nimport { TieredMenu, TieredMenuSub } from './tieredmenu';\n\n@NgModule({\n imports: [CommonModule, RouterModule, RippleModule, TooltipModule, AngleRightIcon, SharedModule],\n exports: [TieredMenu, RouterModule, TooltipModule, SharedModule],\n declarations: [TieredMenu, TieredMenuSub]\n})\nexport class TieredMenuModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public_api';\n"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"cax-design-system-tieredmenu.mjs","sources":["../../src/app/components/tieredmenu/tieredmenu.ts","../../src/app/components/tieredmenu/tiredmenu.module.ts","../../src/app/components/tieredmenu/cax-design-system-tieredmenu.ts"],"sourcesContent":["import { AnimationEvent, animate, style, transition, trigger } from '@angular/animations';\nimport { DOCUMENT, isPlatformBrowser } from '@angular/common';\nimport {\n AfterContentInit,\n ChangeDetectionStrategy,\n ChangeDetectorRef,\n Component,\n ContentChildren,\n ElementRef,\n EventEmitter,\n Inject,\n Input,\n OnDestroy,\n OnInit,\n Output,\n PLATFORM_ID,\n QueryList,\n Renderer2,\n TemplateRef,\n ViewChild,\n ViewEncapsulation,\n ViewRef,\n booleanAttribute,\n effect,\n forwardRef,\n input,\n numberAttribute,\n signal\n} from '@angular/core';\nimport { MenuItem, OverlayService, caxConfig, CaxTemplate, SharedModule } from 'cax-design-system/api';\nimport { ConnectedOverlayScrollHandler, DomHandler } from 'cax-design-system/dom';\nimport { Nullable, VoidListener } from 'cax-design-system/ts-helpers';\nimport { ObjectUtils, UniqueComponentId, ZIndexUtils } from 'cax-design-system/utils';\n\n@Component({\n selector: 'cax-tieredMenuSub',\n template: `\n <ul\n #sublist\n role=\"menu\"\n [ngClass]=\"{ 'cax-submenu-list': !root, 'cax-tieredmenu-root-list': root }\"\n [id]=\"menuId + '_list'\"\n [tabindex]=\"tabindex\"\n [attr.aria-label]=\"ariaLabel\"\n [attr.aria-labelledBy]=\"ariaLabelledBy\"\n [attr.aria-activedescendant]=\"focusedItemId\"\n [attr.aria-orientation]=\"'vertical'\"\n [attr.data-pc-section]=\"'menu'\"\n (keydown)=\"menuKeydown.emit($event)\"\n (focus)=\"menuFocus.emit($event)\"\n (blur)=\"menuBlur.emit($event)\"\n >\n <ng-template ngFor let-processedItem [ngForOf]=\"items\" let-index=\"index\">\n <li\n *ngIf=\"isItemVisible(processedItem) && getItemProp(processedItem, 'separator')\"\n [attr.id]=\"getItemId(processedItem)\"\n [ngStyle]=\"getItemProp(processedItem, 'style')\"\n [ngClass]=\"getSeparatorItemClass(processedItem)\"\n role=\"separator\"\n [attr.data-pc-section]=\"'separator'\"\n ></li>\n <li\n #listItem\n *ngIf=\"isItemVisible(processedItem) && !getItemProp(processedItem, 'separator')\"\n role=\"menuitem\"\n [attr.id]=\"getItemId(processedItem)\"\n [attr.data-pc-section]=\"'menuitem'\"\n [attr.data-cax-highlight]=\"isItemActive(processedItem)\"\n [attr.data-cax-focused]=\"isItemFocused(processedItem)\"\n [attr.data-cax-disabled]=\"isItemDisabled(processedItem)\"\n [attr.aria-label]=\"getItemLabel(processedItem)\"\n [attr.aria-disabled]=\"isItemDisabled(processedItem) || undefined\"\n [attr.aria-haspopup]=\"isItemGroup(processedItem) && !getItemProp(processedItem, 'to') ? 'menu' : undefined\"\n [attr.aria-expanded]=\"isItemGroup(processedItem) ? isItemActive(processedItem) : undefined\"\n [attr.aria-setsize]=\"getAriaSetSize()\"\n [attr.aria-posinset]=\"getAriaPosInset(index)\"\n [ngStyle]=\"getItemProp(processedItem, 'style')\"\n [ngClass]=\"getItemClass(processedItem)\"\n [class]=\"getItemProp(processedItem, 'styleClass')\"\n [caxTooltip]=\"getItemProp(processedItem, 'tooltip')\"\n [tooltipOptions]=\"getItemProp(processedItem, 'tooltipOptions')\"\n >\n <div [attr.data-pc-section]=\"'content'\" class=\"cax-menuitem-content\" (click)=\"onItemClick($event, processedItem)\" (mouseenter)=\"onItemMouseEnter({ $event, processedItem })\">\n <ng-container *ngIf=\"!itemTemplate\">\n <a\n *ngIf=\"!getItemProp(processedItem, 'routerLink')\"\n [attr.href]=\"getItemProp(processedItem, 'url')\"\n [attr.data-automationid]=\"getItemProp(processedItem, 'automationId')\"\n [attr.data-pc-section]=\"'action'\"\n [target]=\"getItemProp(processedItem, 'target')\"\n [ngClass]=\"{ 'cax-menuitem-link': true, 'cax-disabled': getItemProp(processedItem, 'disabled') }\"\n [attr.tabindex]=\"-1\"\n pRipple\n >\n <span\n *ngIf=\"getItemProp(processedItem, 'icon')\"\n class=\"cax-menuitem-icon\"\n [ngClass]=\"getItemProp(processedItem, 'icon')\"\n [ngStyle]=\"getItemProp(processedItem, 'iconStyle')\"\n [attr.data-pc-section]=\"'icon'\"\n [attr.tabindex]=\"-1\"\n >\n </span>\n <span *ngIf=\"getItemProp(processedItem, 'escape'); else htmlLabel\" class=\"cax-menuitem-text\" [attr.data-pc-section]=\"'label'\">\n {{ getItemLabel(processedItem) }}\n </span>\n <ng-template #htmlLabel>\n <span class=\"cax-menuitem-text\" [innerHTML]=\"getItemLabel(processedItem)\" [attr.data-pc-section]=\"'label'\"></span>\n </ng-template>\n <span class=\"cax-menuitem-badge\" *ngIf=\"getItemProp(processedItem, 'badge')\" [ngClass]=\"getItemProp(processedItem, 'badgeStyleClass')\">{{ getItemProp(processedItem, 'badge') }}</span>\n\n <ng-container *ngIf=\"isItemGroup(processedItem)\">\n <AngleRightIcon *ngIf=\"!tieredMenu.submenuIconTemplate\" [styleClass]=\"'cax-submenu-icon'\" [attr.data-pc-section]=\"'submenuicon'\" [attr.aria-hidden]=\"true\" />\n <ng-template *ngTemplateOutlet=\"tieredMenu.submenuIconTemplate\" [attr.data-pc-section]=\"'submenuicon'\" [attr.aria-hidden]=\"true\"></ng-template>\n </ng-container>\n </a>\n <a\n *ngIf=\"getItemProp(processedItem, 'routerLink')\"\n [routerLink]=\"getItemProp(processedItem, 'routerLink')\"\n [attr.data-automationid]=\"getItemProp(processedItem, 'automationId')\"\n [attr.tabindex]=\"-1\"\n [attr.data-pc-section]=\"'action'\"\n [queryParams]=\"getItemProp(processedItem, 'queryParams')\"\n [routerLinkActive]=\"'cax-menuitem-link-active'\"\n [routerLinkActiveOptions]=\"getItemProp(processedItem, 'routerLinkActiveOptions') || { exact: false }\"\n [target]=\"getItemProp(processedItem, 'target')\"\n [ngClass]=\"{ 'cax-menuitem-link': true, 'cax-disabled': getItemProp(processedItem, 'disabled') }\"\n [fragment]=\"getItemProp(processedItem, 'fragment')\"\n [queryParamsHandling]=\"getItemProp(processedItem, 'queryParamsHandling')\"\n [preserveFragment]=\"getItemProp(processedItem, 'preserveFragment')\"\n [skipLocationChange]=\"getItemProp(processedItem, 'skipLocationChange')\"\n [replaceUrl]=\"getItemProp(processedItem, 'replaceUrl')\"\n [state]=\"getItemProp(processedItem, 'state')\"\n pRipple\n >\n <span\n *ngIf=\"getItemProp(processedItem, 'icon')\"\n class=\"cax-menuitem-icon\"\n [ngClass]=\"getItemProp(processedItem, 'icon')\"\n [ngStyle]=\"getItemProp(processedItem, 'iconStyle')\"\n [attr.data-pc-section]=\"'icon'\"\n [attr.aria-hidden]=\"true\"\n [attr.tabindex]=\"-1\"\n >\n </span>\n <span *ngIf=\"getItemProp(processedItem, 'escape'); else htmlLabel\" class=\"cax-menuitem-text\" [attr.data-pc-section]=\"'label'\">\n {{ getItemLabel(processedItem) }}\n </span>\n <ng-template #htmlLabel>\n <span class=\"cax-menuitem-text\" [innerHTML]=\"getItemLabel(processedItem)\" [attr.data-pc-section]=\"'label'\"></span>\n </ng-template>\n <span class=\"cax-menuitem-badge\" *ngIf=\"getItemProp(processedItem, 'badge')\" [ngClass]=\"getItemProp(processedItem, 'badgeStyleClass')\">{{ getItemProp(processedItem, 'badge') }}</span>\n\n <ng-container *ngIf=\"isItemGroup(processedItem)\">\n <AngleRightIcon *ngIf=\"!tieredMenu.submenuIconTemplate\" [styleClass]=\"'cax-submenu-icon'\" [attr.data-pc-section]=\"'submenuicon'\" [attr.aria-hidden]=\"true\" />\n <ng-template *ngTemplateOutlet=\"tieredMenu.submenuIconTemplate\" [attr.data-pc-section]=\"'submenuicon'\" [attr.aria-hidden]=\"true\"></ng-template>\n </ng-container>\n </a>\n </ng-container>\n <ng-container *ngIf=\"itemTemplate\">\n <ng-template *ngTemplateOutlet=\"itemTemplate; context: { $implicit: processedItem.item, hasSubmenu: getItemProp(processedItem, 'items') }\"></ng-template>\n </ng-container>\n </div>\n\n <cax-tieredMenuSub\n *ngIf=\"isItemVisible(processedItem) && isItemGroup(processedItem)\"\n [items]=\"processedItem.items\"\n [itemTemplate]=\"itemTemplate\"\n [autoDisplay]=\"autoDisplay\"\n [menuId]=\"menuId\"\n [activeItemPath]=\"activeItemPath()\"\n [focusedItemId]=\"focusedItemId\"\n [ariaLabelledBy]=\"getItemId(processedItem)\"\n [level]=\"level + 1\"\n (itemClick)=\"itemClick.emit($event)\"\n (itemMouseEnter)=\"onItemMouseEnter($event)\"\n ></cax-tieredMenuSub>\n </li>\n </ng-template>\n </ul>\n `,\n encapsulation: ViewEncapsulation.None,\n standalone: false,\n host: {\n class: 'cax-element'\n }\n})\nexport class TieredMenuSub {\n @Input() items: any[];\n\n @Input() itemTemplate: HTMLElement | undefined;\n\n @Input({ transform: booleanAttribute }) root: boolean | undefined = false;\n\n @Input({ transform: booleanAttribute }) autoDisplay: boolean | undefined;\n\n @Input({ transform: booleanAttribute }) autoZIndex: boolean = true;\n\n @Input({ transform: numberAttribute }) baseZIndex: number = 0;\n\n @Input({ transform: booleanAttribute }) popup: boolean | undefined;\n\n @Input() menuId: string | undefined;\n\n @Input() ariaLabel: string | undefined;\n\n @Input() ariaLabelledBy: string | undefined;\n\n @Input({ transform: numberAttribute }) level: number = 0;\n\n @Input() focusedItemId: string | undefined;\n\n activeItemPath = input<any[]>([]);\n\n @Input({ transform: numberAttribute }) tabindex: number = 0;\n\n @Output() itemClick: EventEmitter<any> = new EventEmitter();\n\n @Output() itemMouseEnter: EventEmitter<any> = new EventEmitter();\n\n @Output() menuFocus: EventEmitter<any> = new EventEmitter();\n\n @Output() menuBlur: EventEmitter<any> = new EventEmitter();\n\n @Output() menuKeydown: EventEmitter<any> = new EventEmitter();\n\n @ViewChild('sublist', { static: true }) sublistViewChild: ElementRef;\n\n constructor(\n public el: ElementRef,\n public renderer: Renderer2,\n @Inject(forwardRef(() => TieredMenu)) public tieredMenu: TieredMenu\n ) {\n effect(() => {\n const path = this.activeItemPath();\n if (ObjectUtils.isNotEmpty(path)) {\n this.positionSubmenu();\n }\n });\n }\n\n positionSubmenu() {\n if (isPlatformBrowser(this.tieredMenu.platformId)) {\n const sublist = this.sublistViewChild && this.sublistViewChild.nativeElement;\n if (sublist) {\n const parentItem = sublist.parentElement.parentElement;\n const containerOffset = DomHandler.getOffset(parentItem);\n const viewport = DomHandler.getViewport();\n const sublistWidth = sublist.offsetParent ? sublist.offsetWidth : DomHandler.getOuterWidth(sublist);\n const itemOuterWidth = DomHandler.getOuterWidth(parentItem.children[0]);\n const sublistFlippedClass = 'cax-submenu-list-flipped';\n if (parseInt(containerOffset.left, 10) + itemOuterWidth + sublistWidth > viewport.width - DomHandler.calculateScrollbarWidth()) {\n DomHandler.addClass(sublist, sublistFlippedClass);\n } else if (DomHandler.hasClass(sublist, sublistFlippedClass)) {\n DomHandler.removeClass(sublist, sublistFlippedClass);\n }\n }\n }\n }\n\n getItemProp(processedItem: any, name: string, params: any | null = null) {\n return processedItem && processedItem.item ? ObjectUtils.getItemValue(processedItem.item[name], params) : undefined;\n }\n\n getItemId(processedItem: any): string {\n return processedItem.item?.id ?? `${this.menuId}_${processedItem.key}`;\n }\n\n getItemKey(processedItem: any): string {\n return this.getItemId(processedItem);\n }\n\n getItemClass(processedItem: any) {\n return {\n ...this.getItemProp(processedItem, 'class'),\n 'cax-menuitem': true,\n 'cax-highlight': this.isItemActive(processedItem),\n 'cax-menuitem-active': this.isItemActive(processedItem),\n 'cax-focus': this.isItemFocused(processedItem),\n 'cax-disabled': this.isItemDisabled(processedItem)\n };\n }\n\n getItemLabel(processedItem: any): string {\n return this.getItemProp(processedItem, 'label');\n }\n\n getSeparatorItemClass(processedItem: any) {\n return {\n ...this.getItemProp(processedItem, 'class'),\n 'cax-menuitem-separator': true\n };\n }\n\n getAriaSetSize() {\n return this.items.filter((processedItem) => this.isItemVisible(processedItem) && !this.getItemProp(processedItem, 'separator')).length;\n }\n\n getAriaPosInset(index: number) {\n return (\n index -\n this.items.slice(0, index).filter((processedItem) => {\n const isItemVisible = this.isItemVisible(processedItem);\n const isVisibleSeparator = isItemVisible && this.getItemProp(processedItem, 'separator');\n return !isItemVisible || isVisibleSeparator;\n }).length +\n 1\n );\n }\n\n isItemVisible(processedItem: any): boolean {\n return this.getItemProp(processedItem, 'visible') !== false;\n }\n\n isItemActive(processedItem: any): boolean {\n if (this.activeItemPath()) {\n return this.activeItemPath().some((path) => path.key === processedItem.key);\n }\n }\n\n isItemDisabled(processedItem: any): boolean {\n return this.getItemProp(processedItem, 'disabled');\n }\n\n isItemFocused(processedItem: any): boolean {\n return this.focusedItemId === this.getItemId(processedItem);\n }\n\n isItemGroup(processedItem: any): boolean {\n return ObjectUtils.isNotEmpty(processedItem.items);\n }\n\n onItemMouseEnter(param: any) {\n if (this.autoDisplay) {\n const { event, processedItem } = param;\n this.itemMouseEnter.emit({ originalEvent: event, processedItem });\n }\n }\n\n onItemClick(event: any, processedItem: any) {\n this.getItemProp(processedItem, 'command', { originalEvent: event, item: processedItem.item });\n this.itemClick.emit({ originalEvent: event, processedItem, isFocus: true });\n }\n}\n/**\n * TieredMenu displays submenus in nested overlays.\n * @group Components\n */\n@Component({\n selector: 'cax-tieredMenu',\n template: `\n <div\n #container\n [attr.data-pc-section]=\"'root'\"\n [attr.data-pc-name]=\"'tieredmenu'\"\n [id]=\"id\"\n [ngClass]=\"{ 'cax-tieredmenu cax-component': true, 'cax-tieredmenu-overlay': popup }\"\n [class]=\"styleClass\"\n [ngStyle]=\"style\"\n (click)=\"onOverlayClick($event)\"\n [@overlayAnimation]=\"{ value: 'visible', params: { showTransitionParams: showTransitionOptions, hideTransitionParams: hideTransitionOptions } }\"\n [@.disabled]=\"popup !== true\"\n (@overlayAnimation.start)=\"onOverlayAnimationStart($event)\"\n (@overlayAnimation.done)=\"onOverlayAnimationEnd($event)\"\n *ngIf=\"!popup || visible\"\n >\n <cax-tieredMenuSub\n #rootmenu\n [root]=\"true\"\n [items]=\"processedItems\"\n [itemTemplate]=\"itemTemplate\"\n [menuId]=\"id\"\n [tabindex]=\"!disabled ? tabindex : -1\"\n [ariaLabel]=\"ariaLabel\"\n [ariaLabelledBy]=\"ariaLabelledBy\"\n [baseZIndex]=\"baseZIndex\"\n [autoZIndex]=\"autoZIndex\"\n [autoDisplay]=\"autoDisplay\"\n [popup]=\"popup\"\n [focusedItemId]=\"focused ? focusedItemId : undefined\"\n [activeItemPath]=\"activeItemPath()\"\n (itemClick)=\"onItemClick($event)\"\n (menuFocus)=\"onMenuFocus($event)\"\n (menuBlur)=\"onMenuBlur($event)\"\n (menuKeydown)=\"onKeyDown($event)\"\n (itemMouseEnter)=\"onItemMouseEnter($event)\"\n ></cax-tieredMenuSub>\n </div>\n `,\n animations: [trigger('overlayAnimation', [transition(':enter', [style({ opacity: 0, transform: 'scaleY(0.8)' }), animate('{{showTransitionParams}}')]), transition(':leave', [animate('{{hideTransitionParams}}', style({ opacity: 0 }))])])],\n changeDetection: ChangeDetectionStrategy.OnPush,\n encapsulation: ViewEncapsulation.None,\n styleUrls: ['./tieredmenu.scss'],\n standalone: false,\n host: {\n class: 'cax-element'\n }\n})\nexport class TieredMenu implements OnInit, AfterContentInit, OnDestroy {\n /**\n * An array of menuitems.\n * @group Props\n */\n @Input() set model(value: MenuItem[] | undefined) {\n this._model = value;\n this._processedItems = this.createProcessedItems(this._model || []);\n }\n get model(): MenuItem[] | undefined {\n return this._model;\n }\n /**\n * Defines if menu would displayed as a popup.\n * @group Props\n */\n @Input({ transform: booleanAttribute }) popup: boolean | undefined;\n /**\n * Inline style of the component.\n * @group Props\n */\n @Input() style: { [klass: string]: any } | null | undefined;\n /**\n * Style class of the component.\n * @group Props\n */\n @Input() styleClass: string | undefined;\n /**\n * Target element to attach the overlay, valid values are \"body\" or a local ng-template variable of another element.\n * @group Props\n */\n @Input() appendTo: HTMLElement | ElementRef | TemplateRef<any> | string | null | undefined | any;\n /**\n * Whether to automatically manage layering.\n * @group Props\n */\n @Input({ transform: booleanAttribute }) autoZIndex: boolean = true;\n /**\n * Base zIndex value to use in layering.\n * @group Props\n */\n @Input({ transform: numberAttribute }) baseZIndex: number = 0;\n /**\n * Whether to show a root submenu on mouse over.\n * @defaultValue true\n * @group Props\n */\n @Input({ transform: booleanAttribute }) autoDisplay: boolean | undefined = true;\n /**\n * Transition options of the show animation.\n * @group Props\n */\n @Input() showTransitionOptions: string = '.12s cubic-bezier(0, 0, 0.2, 1)';\n /**\n * Transition options of the hide animation.\n * @group Props\n */\n @Input() hideTransitionOptions: string = '.1s linear';\n /**\n * Current id state as a string.\n * @group Props\n */\n @Input() id: string | undefined;\n /**\n * Defines a string value that labels an interactive element.\n * @group Props\n */\n @Input() ariaLabel: string | undefined;\n /**\n * Identifier of the underlying input element.\n * @group Props\n */\n @Input() ariaLabelledBy: string | undefined;\n /**\n * When present, it specifies that the component should be disabled.\n * @group Props\n */\n @Input({ transform: booleanAttribute }) disabled: boolean = false;\n /**\n * Index of the element in tabbing order.\n * @group Props\n */\n @Input({ transform: numberAttribute }) tabindex: number = 0;\n /**\n * Alignment of the overlay menu.\n * @group Props\n */\n @Input() align: 'left' | 'right' = 'left';\n /**\n * Callback to invoke when overlay menu is shown.\n * @group Emits\n */\n @Output() onShow: EventEmitter<any> = new EventEmitter<any>();\n /**\n * Callback to invoke when overlay menu is hidden.\n * @group Emits\n */\n @Output() onHide: EventEmitter<any> = new EventEmitter<any>();\n\n @ContentChildren(CaxTemplate) templates: QueryList<CaxTemplate> | undefined;\n\n @ViewChild('rootmenu') rootmenu: TieredMenuSub | undefined;\n\n @ViewChild('container') containerViewChild: ElementRef<any> | undefined;\n\n submenuIconTemplate: Nullable<TemplateRef<any>>;\n\n itemTemplate: Nullable<TemplateRef<any>>;\n\n container: HTMLDivElement | undefined;\n\n outsideClickListener: VoidListener;\n\n resizeListener: VoidListener;\n\n scrollHandler: Nullable<ConnectedOverlayScrollHandler>;\n\n target: any;\n\n relatedTarget: any;\n\n visible: boolean | undefined;\n\n relativeAlign: boolean | undefined;\n\n dirty: boolean = false;\n\n focused: boolean = false;\n\n activeItemPath = signal<any>([]);\n\n number = signal<number>(0);\n\n focusedItemInfo = signal<any>({ index: -1, level: 0, parentKey: '', item: null });\n\n searchValue: string = '';\n\n searchTimeout: any;\n\n _processedItems: any[];\n\n _model: MenuItem[] | undefined;\n\n get visibleItems() {\n const processedItem = this.activeItemPath().find((p) => p.key === this.focusedItemInfo().parentKey);\n return processedItem ? processedItem.items : this.processedItems;\n }\n\n get processedItems() {\n if (!this._processedItems || !this._processedItems.length) {\n this._processedItems = this.createProcessedItems(this.model || []);\n }\n return this._processedItems;\n }\n\n get focusedItemId() {\n const focusedItemInfo = this.focusedItemInfo();\n return focusedItemInfo.item?.id ? focusedItemInfo.item.id : focusedItemInfo.index !== -1 ? `${this.id}${ObjectUtils.isNotEmpty(focusedItemInfo.parentKey) ? '_' + focusedItemInfo.parentKey : ''}_${focusedItemInfo.index}` : null;\n }\n\n constructor(\n @Inject(DOCUMENT) private document: Document,\n @Inject(PLATFORM_ID) public platformId: any,\n public el: ElementRef,\n public renderer: Renderer2,\n public cd: ChangeDetectorRef,\n public config: caxConfig,\n public overlayService: OverlayService\n ) {\n effect(() => {\n const path = this.activeItemPath();\n\n if (ObjectUtils.isNotEmpty(path)) {\n this.bindOutsideClickListener();\n this.bindResizeListener();\n } else {\n this.unbindOutsideClickListener();\n this.unbindResizeListener();\n }\n });\n }\n\n ngOnInit() {\n this.id = this.id || UniqueComponentId();\n }\n\n ngAfterContentInit() {\n this.templates?.forEach((item) => {\n switch (item.getType()) {\n case 'submenuicon':\n this.submenuIconTemplate = item.template;\n break;\n\n case 'item':\n this.itemTemplate = item.template;\n break;\n\n default:\n this.itemTemplate = item.template;\n break;\n }\n });\n }\n\n createProcessedItems(items: any, level: number = 0, parent: any = {}, parentKey: any = '') {\n const processedItems = [];\n\n items &&\n items.forEach((item, index) => {\n const key = (parentKey !== '' ? parentKey + '_' : '') + index;\n const newItem = {\n item,\n index,\n level,\n key,\n parent,\n parentKey\n };\n\n newItem['items'] = this.createProcessedItems(item.items, level + 1, newItem, key);\n processedItems.push(newItem);\n });\n\n return processedItems;\n }\n\n getItemProp(item: any, name: string) {\n return item ? ObjectUtils.getItemValue(item[name]) : undefined;\n }\n\n getProccessedItemLabel(processedItem: any) {\n return processedItem ? this.getItemLabel(processedItem.item) : undefined;\n }\n\n getItemLabel(item: any) {\n return this.getItemProp(item, 'label');\n }\n\n isProcessedItemGroup(processedItem: any): boolean {\n return processedItem && ObjectUtils.isNotEmpty(processedItem.items);\n }\n\n isSelected(processedItem: any): boolean {\n return this.activeItemPath().some((p) => p.key === processedItem.key);\n }\n\n isValidSelectedItem(processedItem: any): boolean {\n return this.isValidItem(processedItem) && this.isSelected(processedItem);\n }\n\n isValidItem(processedItem: any): boolean {\n return !!processedItem && !this.isItemDisabled(processedItem.item) && !this.isItemSeparator(processedItem.item) && this.isItemVisible(processedItem.item);\n }\n\n isItemDisabled(item: any): boolean {\n return this.getItemProp(item, 'disabled');\n }\n\n isItemVisible(item: any): boolean {\n return this.getItemProp(item, 'visible') !== false;\n }\n\n isItemSeparator(item: any): boolean {\n return this.getItemProp(item, 'separator');\n }\n\n isItemMatched(processedItem: any): boolean {\n return this.isValidItem(processedItem) && this.getProccessedItemLabel(processedItem).toLocaleLowerCase().startsWith(this.searchValue.toLocaleLowerCase());\n }\n\n isProccessedItemGroup(processedItem: any): boolean {\n return processedItem && ObjectUtils.isNotEmpty(processedItem.items);\n }\n\n onOverlayClick(event: MouseEvent) {\n if (this.popup) {\n this.overlayService.add({\n originalEvent: event,\n target: this.el.nativeElement\n });\n }\n }\n\n onItemClick(event: any) {\n const { originalEvent, processedItem } = event;\n const grouped = this.isProcessedItemGroup(processedItem);\n const root = ObjectUtils.isEmpty(processedItem.parent);\n const selected = this.isSelected(processedItem);\n\n if (selected) {\n const { index, key, level, parentKey, item } = processedItem;\n\n this.activeItemPath.set(this.activeItemPath().filter((p) => key !== p.key && key.startsWith(p.key)));\n this.focusedItemInfo.set({ index, level, parentKey, item });\n\n this.dirty = true;\n DomHandler.focus(this.rootmenu?.sublistViewChild?.nativeElement);\n } else {\n if (grouped) {\n this.onItemChange(event);\n } else {\n const rootProcessedItem = root ? processedItem : this.activeItemPath().find((p) => p.parentKey === '');\n this.hide(originalEvent);\n this.changeFocusedItemIndex(originalEvent, rootProcessedItem ? rootProcessedItem.index : -1);\n\n DomHandler.focus(this.rootmenu?.sublistViewChild?.nativeElement);\n }\n }\n }\n\n onItemMouseEnter(event: any) {\n if (!DomHandler.isTouchDevice()) {\n if (this.autoDisplay) {\n this.dirty = true;\n }\n if (this.dirty) {\n this.onItemChange(event);\n }\n } else {\n this.onItemChange({ event, processedItem: event.processedItem, focus: this.autoDisplay });\n }\n }\n\n onKeyDown(event: KeyboardEvent) {\n const metaKey = event.metaKey || event.ctrlKey;\n\n switch (event.code) {\n case 'ArrowDown':\n this.onArrowDownKey(event);\n break;\n\n case 'ArrowUp':\n this.onArrowUpKey(event);\n break;\n\n case 'ArrowLeft':\n this.onArrowLeftKey(event);\n break;\n\n case 'ArrowRight':\n this.onArrowRightKey(event);\n break;\n\n case 'Home':\n this.onHomeKey(event);\n break;\n\n case 'End':\n this.onEndKey(event);\n break;\n\n case 'Space':\n this.onSpaceKey(event);\n break;\n\n case 'Enter':\n this.onEnterKey(event);\n break;\n\n case 'Escape':\n this.onEscapeKey(event);\n break;\n\n case 'Tab':\n this.onTabKey(event);\n break;\n\n case 'PageDown':\n case 'PageUp':\n case 'Backspace':\n case 'ShiftLeft':\n case 'ShiftRight':\n //NOOP\n break;\n\n default:\n if (!metaKey && ObjectUtils.isPrintableCharacter(event.key)) {\n this.searchItems(event, event.key);\n }\n\n break;\n }\n }\n\n onArrowDownKey(event: KeyboardEvent) {\n const itemIndex = this.focusedItemInfo().index !== -1 ? this.findNextItemIndex(this.focusedItemInfo().index) : this.findFirstFocusedItemIndex();\n\n this.changeFocusedItemIndex(event, itemIndex);\n event.preventDefault();\n }\n\n onArrowRightKey(event: KeyboardEvent) {\n const processedItem = this.visibleItems[this.focusedItemInfo().index];\n const grouped = this.isProccessedItemGroup(processedItem);\n const item = processedItem?.item;\n\n if (grouped) {\n this.onItemChange({ originalEvent: event, processedItem });\n this.focusedItemInfo.set({ index: -1, parentKey: processedItem.key, item });\n this.searchValue = '';\n this.onArrowDownKey(event);\n }\n\n event.preventDefault();\n }\n\n onArrowUpKey(event: KeyboardEvent) {\n if (event.altKey) {\n if (this.focusedItemInfo().index !== -1) {\n const processedItem = this.visibleItems[this.focusedItemInfo().index];\n const grouped = this.isProccessedItemGroup(processedItem);\n\n !grouped && this.onItemChange({ originalEvent: event, processedItem });\n }\n\n this.popup && this.hide(event, true);\n event.preventDefault();\n } else {\n const itemIndex = this.focusedItemInfo().index !== -1 ? this.findPrevItemIndex(this.focusedItemInfo().index) : this.findLastFocusedItemIndex();\n\n this.changeFocusedItemIndex(event, itemIndex);\n event.preventDefault();\n }\n }\n\n onArrowLeftKey(event: KeyboardEvent) {\n const processedItem = this.visibleItems[this.focusedItemInfo().index];\n const parentItem = this.activeItemPath().find((p) => p.key === processedItem.parentKey);\n const root = ObjectUtils.isEmpty(processedItem.parent);\n\n if (!root) {\n this.focusedItemInfo.set({ index: -1, parentKey: parentItem ? parentItem.parentKey : '', item: processedItem.item });\n this.searchValue = '';\n this.onArrowDownKey(event);\n }\n\n const activeItemPath = this.activeItemPath().filter((p) => p.parentKey !== this.focusedItemInfo().parentKey);\n this.activeItemPath.set(activeItemPath);\n\n event.preventDefault();\n }\n\n onHomeKey(event: KeyboardEvent) {\n this.changeFocusedItemIndex(event, this.findFirstItemIndex());\n event.preventDefault();\n }\n\n onEndKey(event: KeyboardEvent) {\n this.changeFocusedItemIndex(event, this.findLastItemIndex());\n event.preventDefault();\n }\n\n onSpaceKey(event: KeyboardEvent) {\n this.onEnterKey(event);\n }\n\n onEscapeKey(event: KeyboardEvent) {\n this.hide(event, true);\n this.focusedItemInfo().index = this.findFirstFocusedItemIndex();\n\n event.preventDefault();\n }\n\n onTabKey(event: KeyboardEvent) {\n if (this.focusedItemInfo().index !== -1) {\n const processedItem = this.visibleItems[this.focusedItemInfo().index];\n const grouped = this.isProccessedItemGroup(processedItem);\n\n !grouped && this.onItemChange({ originalEvent: event, processedItem });\n }\n\n this.hide();\n }\n\n onEnterKey(event: KeyboardEvent) {\n if (this.focusedItemInfo().index !== -1) {\n const element = DomHandler.findSingle(this.rootmenu.el.nativeElement, `li[id=\"${`${this.focusedItemId}`}\"]`);\n const anchorElement = element && DomHandler.findSingle(element, 'a[data-pc-section=\"action\"]');\n\n anchorElement ? anchorElement.click() : element && element.click();\n\n if (!this.popup) {\n const processedItem = this.visibleItems[this.focusedItemInfo().index];\n const grouped = this.isProccessedItemGroup(processedItem);\n\n !grouped && (this.focusedItemInfo().index = this.findFirstFocusedItemIndex());\n }\n }\n\n event.preventDefault();\n }\n\n onItemChange(event: any) {\n const { processedItem, isFocus } = event;\n\n if (ObjectUtils.isEmpty(processedItem)) return;\n\n const { index, key, level, parentKey, items, item } = processedItem;\n const grouped = ObjectUtils.isNotEmpty(items);\n const activeItemPath = this.activeItemPath().filter((p) => p.parentKey !== parentKey && p.parentKey !== key);\n\n grouped && activeItemPath.push(processedItem);\n this.focusedItemInfo.set({ index, level, parentKey, item });\n this.activeItemPath.set(activeItemPath);\n\n grouped && (this.dirty = true);\n isFocus && DomHandler.focus(this.rootmenu.sublistViewChild.nativeElement);\n }\n\n onMenuFocus(event: any) {\n this.focused = true;\n if (this.focusedItemInfo().index === -1 && !this.popup) {\n // this.onArrowDownKey(event);\n }\n }\n\n onMenuBlur(event: any) {\n this.focused = false;\n this.focusedItemInfo.set({ index: -1, level: 0, parentKey: '', item: null });\n this.searchValue = '';\n this.dirty = false;\n }\n\n onOverlayAnimationStart(event: AnimationEvent) {\n switch (event.toState) {\n case 'visible':\n if (this.popup) {\n this.container = event.element;\n this.moveOnTop();\n this.onShow.emit({});\n this.appendOverlay();\n this.alignOverlay();\n this.bindOutsideClickListener();\n this.bindResizeListener();\n this.bindScrollListener();\n DomHandler.focus(this.rootmenu.sublistViewChild.nativeElement);\n this.scrollInView();\n }\n break;\n\n case 'void':\n this.onOverlayHide();\n this.onHide.emit({});\n break;\n }\n }\n\n alignOverlay() {\n if (this.relativeAlign) DomHandler.relativePosition(this.container, this.target, true, this.align);\n else DomHandler.absolutePosition(this.container, this.target, true, this.align);\n }\n\n onOverlayAnimationEnd(event: AnimationEvent) {\n switch (event.toState) {\n case 'void':\n ZIndexUtils.clear(event.element);\n break;\n }\n }\n\n appendOverlay() {\n if (this.appendTo) {\n if (this.appendTo === 'body') this.renderer.appendChild(this.document.body, this.container);\n else DomHandler.appendChild(this.container, this.appendTo);\n }\n }\n\n restoreOverlayAppend() {\n if (this.container && this.appendTo) {\n this.renderer.appendChild(this.el.nativeElement, this.container);\n }\n }\n\n moveOnTop() {\n if (this.autoZIndex) {\n ZIndexUtils.set('menu', this.container, this.baseZIndex + this.config.zIndex.menu);\n }\n }\n\n /**\n * Hides the popup menu.\n * @group Method\n */\n hide(event?, isFocus?: boolean) {\n if (this.popup) {\n this.onHide.emit({});\n this.visible = false;\n }\n this.activeItemPath.set([]);\n this.focusedItemInfo.set({ index: -1, level: 0, parentKey: '' });\n\n isFocus && DomHandler.focus(this.relatedTarget || this.target || this.rootmenu.sublistViewChild.nativeElement);\n this.dirty = false;\n }\n\n /**\n * Toggles the visibility of the popup menu.\n * @param {Event} event - Browser event.\n * @group Method\n */\n toggle(event: any) {\n this.visible ? this.hide(event, true) : this.show(event);\n }\n\n /**\n * Displays the popup menu.\n * @param {Event} even - Browser event.\n * @group Method\n */\n show(event: any, isFocus?) {\n if (this.popup) {\n this.visible = true;\n this.target = this.target || event.currentTarget;\n this.relatedTarget = event.relatedTarget || null;\n this.relativeAlign = event?.relativeAlign || null;\n }\n\n this.focusedItemInfo.set({ index: -1, level: 0, parentKey: '' });\n\n isFocus && DomHandler.focus(this.rootmenu.sublistViewChild.nativeElement);\n\n this.cd.markForCheck();\n }\n\n searchItems(event: any, char: string) {\n this.searchValue = (this.searchValue || '') + char;\n\n let itemIndex = -1;\n let matched = false;\n\n if (this.focusedItemInfo().index !== -1) {\n itemIndex = this.visibleItems.slice(this.focusedItemInfo().index).findIndex((processedItem) => this.isItemMatched(processedItem));\n itemIndex = itemIndex === -1 ? this.visibleItems.slice(0, this.focusedItemInfo().index).findIndex((processedItem) => this.isItemMatched(processedItem)) : itemIndex + this.focusedItemInfo().index;\n } else {\n itemIndex = this.visibleItems.findIndex((processedItem) => this.isItemMatched(processedItem));\n }\n\n if (itemIndex !== -1) {\n matched = true;\n }\n\n if (itemIndex === -1 && this.focusedItemInfo().index === -1) {\n itemIndex = this.findFirstFocusedItemIndex();\n }\n\n if (itemIndex !== -1) {\n this.changeFocusedItemIndex(event, itemIndex);\n }\n\n if (this.searchTimeout) {\n clearTimeout(this.searchTimeout);\n }\n\n this.searchTimeout = setTimeout(() => {\n this.searchValue = '';\n this.searchTimeout = null;\n }, 500);\n\n return matched;\n }\n\n findLastFocusedItemIndex() {\n const selectedIndex = this.findSelectedItemIndex();\n return selectedIndex < 0 ? this.findLastItemIndex() : selectedIndex;\n }\n\n findLastItemIndex() {\n return ObjectUtils.findLastIndex(this.visibleItems, (processedItem) => this.isValidItem(processedItem));\n }\n\n findPrevItemIndex(index: number) {\n const matchedItemIndex = index > 0 ? ObjectUtils.findLastIndex(this.visibleItems.slice(0, index), (processedItem) => this.isValidItem(processedItem)) : -1;\n\n return matchedItemIndex > -1 ? matchedItemIndex : index;\n }\n\n findNextItemIndex(index: number) {\n const matchedItemIndex = index < this.visibleItems.length - 1 ? this.visibleItems.slice(index + 1).findIndex((processedItem) => this.isValidItem(processedItem)) : -1;\n\n return matchedItemIndex > -1 ? matchedItemIndex + index + 1 : index;\n }\n\n findFirstFocusedItemIndex() {\n const selectedIndex = this.findSelectedItemIndex();\n\n return selectedIndex < 0 ? this.findFirstItemIndex() : selectedIndex;\n }\n\n findFirstItemIndex() {\n return this.visibleItems.findIndex((processedItem) => this.isValidItem(processedItem));\n }\n\n findSelectedItemIndex() {\n return this.visibleItems.findIndex((processedItem) => this.isValidSelectedItem(processedItem));\n }\n\n changeFocusedItemIndex(event: any, index: number) {\n if (this.focusedItemInfo().index !== index) {\n const focusedItemInfo = this.focusedItemInfo();\n this.focusedItemInfo.set({ ...focusedItemInfo, item: this.visibleItems[index].item, index });\n this.scrollInView();\n }\n }\n\n scrollInView(index: number = -1) {\n const id = index !== -1 ? `${this.id}_${index}` : this.focusedItemId;\n const element = DomHandler.findSingle(this.rootmenu.el.nativeElement, `li[id=\"${id}\"]`);\n\n if (element) {\n element.scrollIntoView && element.scrollIntoView({ block: 'nearest', inline: 'nearest' });\n }\n }\n\n bindScrollListener() {\n if (!this.scrollHandler) {\n this.scrollHandler = new ConnectedOverlayScrollHandler(this.target, (event) => {\n if (this.visible) {\n this.hide(event, true);\n }\n });\n }\n\n this.scrollHandler.bindScrollListener();\n }\n\n unbindScrollListener() {\n if (this.scrollHandler) {\n this.scrollHandler.unbindScrollListener();\n this.scrollHandler = null;\n }\n }\n\n bindResizeListener() {\n if (isPlatformBrowser(this.platformId)) {\n if (!this.resizeListener) {\n this.resizeListener = this.renderer.listen(this.document.defaultView, 'resize', (event) => {\n if (!DomHandler.isTouchDevice()) {\n this.hide(event, true);\n }\n });\n }\n }\n }\n\n bindOutsideClickListener() {\n if (isPlatformBrowser(this.platformId)) {\n if (!this.outsideClickListener) {\n this.outsideClickListener = this.renderer.listen(this.document, 'click', (event) => {\n const isOutsideContainer = this.containerViewChild && !this.containerViewChild.nativeElement.contains(event.target);\n const isOutsideTarget = this.popup ? !(this.target && (this.target === event.target || this.target.contains(event.target))) : true;\n if (isOutsideContainer && isOutsideTarget) {\n this.hide();\n }\n });\n }\n }\n }\n\n unbindOutsideClickListener() {\n if (this.outsideClickListener) {\n document.removeEventListener('click', this.outsideClickListener);\n this.outsideClickListener = null;\n }\n }\n\n unbindResizeListener() {\n if (this.resizeListener) {\n this.resizeListener();\n this.resizeListener = null;\n }\n }\n\n onOverlayHide() {\n this.unbindOutsideClickListener();\n this.unbindResizeListener();\n this.unbindScrollListener();\n\n if (!(this.cd as ViewRef).destroyed) {\n this.target = null;\n }\n }\n\n ngOnDestroy() {\n if (this.popup) {\n if (this.scrollHandler) {\n this.scrollHandler.destroy();\n this.scrollHandler = null;\n }\n\n if (this.container && this.autoZIndex) {\n ZIndexUtils.clear(this.container);\n }\n\n this.restoreOverlayAppend();\n this.onOverlayHide();\n }\n }\n}\n","import { CommonModule } from '@angular/common';\nimport { NgModule } from '@angular/core';\nimport { RouterModule } from '@angular/router';\nimport { SharedModule } from 'cax-design-system/api';\nimport { AngleRightIcon } from 'cax-design-system/icons/angleright';\nimport { RippleModule } from 'cax-design-system/ripple';\nimport { TooltipModule } from 'cax-design-system/tooltip';\nimport { TieredMenu, TieredMenuSub } from './tieredmenu';\n\n@NgModule({\n imports: [CommonModule, RouterModule, RippleModule, TooltipModule, AngleRightIcon, SharedModule],\n exports: [TieredMenu, RouterModule, TooltipModule, SharedModule],\n declarations: [TieredMenu, TieredMenuSub]\n})\nexport class TieredMenuModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public_api';\n"],"names":[],"mappings":"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"}
@@ -60,14 +60,14 @@ class Timeline {
60
60
  }
61
61
  });
62
62
  }
63
- static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.16", ngImport: i0, type: Timeline, deps: [{ token: i0.ElementRef }], target: i0.ɵɵFactoryTarget.Component });
64
- static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "19.2.16", type: Timeline, isStandalone: false, selector: "cax-timeline", inputs: { value: "value", style: "style", styleClass: "styleClass", align: "align", layout: "layout" }, host: { classAttribute: "cax-element" }, queries: [{ propertyName: "templates", predicate: CaxTemplate }], ngImport: i0, template: "<div\r\n [class]=\"styleClass\"\r\n [ngStyle]=\"style\"\r\n [ngClass]=\"{\r\n 'cax-timeline cax-component': true,\r\n 'cax-timeline-left': align === 'left',\r\n 'cax-timeline-right': align === 'right',\r\n 'cax-timeline-top': align === 'top',\r\n 'cax-timeline-bottom': align === 'bottom',\r\n 'cax-timeline-alternate': align === 'alternate',\r\n 'cax-timeline-vertical': layout === 'vertical',\r\n 'cax-timeline-horizontal': layout === 'horizontal'\r\n }\"\r\n [attr.data-pc-name]=\"'timeline'\"\r\n [attr.data-pc-section]=\"'root'\"\r\n>\r\n <div *ngFor=\"let event of value; let last = last; let i = index\" class=\"cax-timeline-event\" [attr.data-pc-section]=\"'event'\">\r\n <div class=\"cax-timeline-event-opposite\" [attr.data-pc-section]=\"'opposite'\">\r\n <ng-container *ngTemplateOutlet=\"oppositeTemplate; context: { $implicit: event }\"></ng-container>\r\n </div>\r\n <div class=\"cax-timeline-event-separator\" [attr.data-pc-section]=\"'separator'\">\r\n <ng-container *ngIf=\"markerTemplate; else marker\">\r\n <ng-container *ngTemplateOutlet=\"markerTemplate; context: { $implicit: event, index: i }\"></ng-container>\r\n </ng-container>\r\n <ng-template #marker>\r\n <div class=\"cax-timeline-event-marker\" [attr.data-pc-section]=\"'marker'\">\r\n {{ i + 1 }}\r\n </div>\r\n </ng-template>\r\n <div *ngIf=\"!last\" class=\"cax-timeline-event-connector\"></div>\r\n </div>\r\n <div class=\"cax-timeline-event-content\" [attr.data-pc-section]=\"'content'\">\r\n <ng-container *ngTemplateOutlet=\"contentTemplate; context: { $implicit: event }\"></ng-container>\r\n </div>\r\n </div>\r\n</div>", styles: ["@layer cax{.cax-timeline{display:flex;flex-grow:1;flex-direction:column}.cax-timeline-left .cax-timeline-event-opposite{text-align:right}.cax-timeline-left .cax-timeline-event-content{text-align:left}.cax-timeline-right .cax-timeline-event{flex-direction:row-reverse}.cax-timeline-right .cax-timeline-event-opposite{text-align:left}.cax-timeline-right .cax-timeline-event-content{text-align:right}.cax-timeline-vertical.cax-timeline-alternate .cax-timeline-event:nth-child(2n){flex-direction:row-reverse!important}.cax-timeline-vertical.cax-timeline-alternate .cax-timeline-event:nth-child(odd) .cax-timeline-event-opposite{text-align:right}.cax-timeline-vertical.cax-timeline-alternate .cax-timeline-event:nth-child(odd) .cax-timeline-event-content{text-align:left}.cax-timeline-vertical.cax-timeline-alternate .cax-timeline-event:nth-child(2n) .cax-timeline-event-opposite{text-align:left}.cax-timeline-vertical.cax-timeline-alternate .cax-timeline-event:nth-child(2n) .cax-timeline-event-content{text-align:right}.cax-timeline-event{display:flex;position:relative}.cax-timeline-event:last-child{min-height:0}.cax-timeline-event-content{padding:0 1rem;min-width:100px;border-radius:8px}.cax-timeline-event-opposite:empty{display:none}.cax-timeline-event-separator{flex:0;display:flex;align-items:center;flex-direction:column}.cax-timeline-event-marker{display:flex;align-self:baseline}.cax-timeline-event-connector{flex-grow:1}.cax-timeline-horizontal{flex-direction:row}.cax-timeline-horizontal.cax-timeline-bottom{align-items:end!important}.cax-timeline-horizontal.cax-timeline-top{align-items:start!important}.cax-timeline-horizontal .cax-timeline-event{flex-direction:column;flex:1}.cax-timeline-horizontal .cax-timeline-event:last-child{flex:0}.cax-timeline-horizontal .cax-timeline-event-separator{flex-direction:row}.cax-timeline-horizontal .cax-timeline-event-connector{width:100%}.cax-timeline-bottom .cax-timeline-event{flex-direction:column-reverse}.cax-timeline-horizontal.cax-timeline-alternate .cax-timeline-event:nth-child(2n){flex-direction:column-reverse}.cax-timeline-event-marker{display:flex;justify-content:center;align-items:center;width:24px;height:24px;border-radius:50%}}\n"], dependencies: [{ kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i1.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "directive", type: i1.NgStyle, selector: "[ngStyle]", inputs: ["ngStyle"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
63
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.21", ngImport: i0, type: Timeline, deps: [{ token: i0.ElementRef }], target: i0.ɵɵFactoryTarget.Component });
64
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "19.2.21", type: Timeline, isStandalone: false, selector: "cax-timeline", inputs: { value: "value", style: "style", styleClass: "styleClass", align: "align", layout: "layout" }, host: { classAttribute: "cax-element" }, queries: [{ propertyName: "templates", predicate: CaxTemplate }], ngImport: i0, template: "<div\n [class]=\"styleClass\"\n [ngStyle]=\"style\"\n [ngClass]=\"{\n 'cax-timeline cax-component': true,\n 'cax-timeline-left': align === 'left',\n 'cax-timeline-right': align === 'right',\n 'cax-timeline-top': align === 'top',\n 'cax-timeline-bottom': align === 'bottom',\n 'cax-timeline-alternate': align === 'alternate',\n 'cax-timeline-vertical': layout === 'vertical',\n 'cax-timeline-horizontal': layout === 'horizontal'\n }\"\n [attr.data-pc-name]=\"'timeline'\"\n [attr.data-pc-section]=\"'root'\"\n>\n <div *ngFor=\"let event of value; let last = last; let i = index\" class=\"cax-timeline-event\" [attr.data-pc-section]=\"'event'\">\n <div class=\"cax-timeline-event-opposite\" [attr.data-pc-section]=\"'opposite'\">\n <ng-container *ngTemplateOutlet=\"oppositeTemplate; context: { $implicit: event }\"></ng-container>\n </div>\n <div class=\"cax-timeline-event-separator\" [attr.data-pc-section]=\"'separator'\">\n <ng-container *ngIf=\"markerTemplate; else marker\">\n <ng-container *ngTemplateOutlet=\"markerTemplate; context: { $implicit: event, index: i }\"></ng-container>\n </ng-container>\n <ng-template #marker>\n <div class=\"cax-timeline-event-marker\" [attr.data-pc-section]=\"'marker'\">{{ i + 1 }}</div>\n </ng-template>\n <div *ngIf=\"!last\" class=\"cax-timeline-event-connector\"></div>\n </div>\n <div class=\"cax-timeline-event-content cax-text-body-sm-medium\" [attr.data-pc-section]=\"'content'\">\n <ng-container *ngTemplateOutlet=\"contentTemplate; context: { $implicit: event }\"></ng-container>\n </div>\n </div>\n</div>\n", styles: ["@layer cax{.cax-timeline{display:flex;flex-grow:1;flex-direction:column}.cax-timeline-left .cax-timeline-event-opposite{text-align:right}.cax-timeline-left .cax-timeline-event-content{text-align:left}.cax-timeline-right .cax-timeline-event{flex-direction:row-reverse}.cax-timeline-right .cax-timeline-event-opposite{text-align:left}.cax-timeline-right .cax-timeline-event-content{text-align:right}.cax-timeline-vertical.cax-timeline-alternate .cax-timeline-event:nth-child(2n){flex-direction:row-reverse!important}.cax-timeline-vertical.cax-timeline-alternate .cax-timeline-event:nth-child(odd) .cax-timeline-event-opposite{text-align:right}.cax-timeline-vertical.cax-timeline-alternate .cax-timeline-event:nth-child(odd) .cax-timeline-event-content{text-align:left}.cax-timeline-vertical.cax-timeline-alternate .cax-timeline-event:nth-child(2n) .cax-timeline-event-opposite{text-align:left}.cax-timeline-vertical.cax-timeline-alternate .cax-timeline-event:nth-child(2n) .cax-timeline-event-content{text-align:right}.cax-timeline-event{display:flex;position:relative;gap:8px}.cax-timeline-event:last-child{min-height:0}.cax-timeline-event-content{padding:0 1rem;min-width:100px;border-radius:8px}.cax-timeline-event-opposite:empty{display:none}.cax-timeline-event-separator{flex:0;display:flex;align-items:center;flex-direction:column;position:relative;top:4px}.cax-timeline-event-marker{display:flex;align-self:baseline}.cax-timeline-event-connector{flex-grow:1}.cax-timeline-horizontal{flex-direction:row}.cax-timeline-horizontal.cax-timeline-bottom{align-items:end!important}.cax-timeline-horizontal.cax-timeline-top{align-items:start!important}.cax-timeline-horizontal .cax-timeline-event{flex-direction:column;flex:1}.cax-timeline-horizontal .cax-timeline-event:last-child{flex:0}.cax-timeline-horizontal .cax-timeline-event-separator{flex-direction:row}.cax-timeline-horizontal .cax-timeline-event-connector{width:100%}.cax-timeline-bottom .cax-timeline-event{flex-direction:column-reverse}.cax-timeline-horizontal.cax-timeline-alternate .cax-timeline-event:nth-child(2n){flex-direction:column-reverse}.cax-timeline-event-marker{display:flex;justify-content:center;align-items:center;width:24px;height:24px;border-radius:50%}}\n"], dependencies: [{ kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i1.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "directive", type: i1.NgStyle, selector: "[ngStyle]", inputs: ["ngStyle"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
65
65
  }
66
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.16", ngImport: i0, type: Timeline, decorators: [{
66
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.21", ngImport: i0, type: Timeline, decorators: [{
67
67
  type: Component,
68
68
  args: [{ selector: 'cax-timeline', changeDetection: ChangeDetectionStrategy.OnPush, encapsulation: ViewEncapsulation.None, standalone: false, host: {
69
69
  class: 'cax-element'
70
- }, template: "<div\r\n [class]=\"styleClass\"\r\n [ngStyle]=\"style\"\r\n [ngClass]=\"{\r\n 'cax-timeline cax-component': true,\r\n 'cax-timeline-left': align === 'left',\r\n 'cax-timeline-right': align === 'right',\r\n 'cax-timeline-top': align === 'top',\r\n 'cax-timeline-bottom': align === 'bottom',\r\n 'cax-timeline-alternate': align === 'alternate',\r\n 'cax-timeline-vertical': layout === 'vertical',\r\n 'cax-timeline-horizontal': layout === 'horizontal'\r\n }\"\r\n [attr.data-pc-name]=\"'timeline'\"\r\n [attr.data-pc-section]=\"'root'\"\r\n>\r\n <div *ngFor=\"let event of value; let last = last; let i = index\" class=\"cax-timeline-event\" [attr.data-pc-section]=\"'event'\">\r\n <div class=\"cax-timeline-event-opposite\" [attr.data-pc-section]=\"'opposite'\">\r\n <ng-container *ngTemplateOutlet=\"oppositeTemplate; context: { $implicit: event }\"></ng-container>\r\n </div>\r\n <div class=\"cax-timeline-event-separator\" [attr.data-pc-section]=\"'separator'\">\r\n <ng-container *ngIf=\"markerTemplate; else marker\">\r\n <ng-container *ngTemplateOutlet=\"markerTemplate; context: { $implicit: event, index: i }\"></ng-container>\r\n </ng-container>\r\n <ng-template #marker>\r\n <div class=\"cax-timeline-event-marker\" [attr.data-pc-section]=\"'marker'\">\r\n {{ i + 1 }}\r\n </div>\r\n </ng-template>\r\n <div *ngIf=\"!last\" class=\"cax-timeline-event-connector\"></div>\r\n </div>\r\n <div class=\"cax-timeline-event-content\" [attr.data-pc-section]=\"'content'\">\r\n <ng-container *ngTemplateOutlet=\"contentTemplate; context: { $implicit: event }\"></ng-container>\r\n </div>\r\n </div>\r\n</div>", styles: ["@layer cax{.cax-timeline{display:flex;flex-grow:1;flex-direction:column}.cax-timeline-left .cax-timeline-event-opposite{text-align:right}.cax-timeline-left .cax-timeline-event-content{text-align:left}.cax-timeline-right .cax-timeline-event{flex-direction:row-reverse}.cax-timeline-right .cax-timeline-event-opposite{text-align:left}.cax-timeline-right .cax-timeline-event-content{text-align:right}.cax-timeline-vertical.cax-timeline-alternate .cax-timeline-event:nth-child(2n){flex-direction:row-reverse!important}.cax-timeline-vertical.cax-timeline-alternate .cax-timeline-event:nth-child(odd) .cax-timeline-event-opposite{text-align:right}.cax-timeline-vertical.cax-timeline-alternate .cax-timeline-event:nth-child(odd) .cax-timeline-event-content{text-align:left}.cax-timeline-vertical.cax-timeline-alternate .cax-timeline-event:nth-child(2n) .cax-timeline-event-opposite{text-align:left}.cax-timeline-vertical.cax-timeline-alternate .cax-timeline-event:nth-child(2n) .cax-timeline-event-content{text-align:right}.cax-timeline-event{display:flex;position:relative}.cax-timeline-event:last-child{min-height:0}.cax-timeline-event-content{padding:0 1rem;min-width:100px;border-radius:8px}.cax-timeline-event-opposite:empty{display:none}.cax-timeline-event-separator{flex:0;display:flex;align-items:center;flex-direction:column}.cax-timeline-event-marker{display:flex;align-self:baseline}.cax-timeline-event-connector{flex-grow:1}.cax-timeline-horizontal{flex-direction:row}.cax-timeline-horizontal.cax-timeline-bottom{align-items:end!important}.cax-timeline-horizontal.cax-timeline-top{align-items:start!important}.cax-timeline-horizontal .cax-timeline-event{flex-direction:column;flex:1}.cax-timeline-horizontal .cax-timeline-event:last-child{flex:0}.cax-timeline-horizontal .cax-timeline-event-separator{flex-direction:row}.cax-timeline-horizontal .cax-timeline-event-connector{width:100%}.cax-timeline-bottom .cax-timeline-event{flex-direction:column-reverse}.cax-timeline-horizontal.cax-timeline-alternate .cax-timeline-event:nth-child(2n){flex-direction:column-reverse}.cax-timeline-event-marker{display:flex;justify-content:center;align-items:center;width:24px;height:24px;border-radius:50%}}\n"] }]
70
+ }, template: "<div\n [class]=\"styleClass\"\n [ngStyle]=\"style\"\n [ngClass]=\"{\n 'cax-timeline cax-component': true,\n 'cax-timeline-left': align === 'left',\n 'cax-timeline-right': align === 'right',\n 'cax-timeline-top': align === 'top',\n 'cax-timeline-bottom': align === 'bottom',\n 'cax-timeline-alternate': align === 'alternate',\n 'cax-timeline-vertical': layout === 'vertical',\n 'cax-timeline-horizontal': layout === 'horizontal'\n }\"\n [attr.data-pc-name]=\"'timeline'\"\n [attr.data-pc-section]=\"'root'\"\n>\n <div *ngFor=\"let event of value; let last = last; let i = index\" class=\"cax-timeline-event\" [attr.data-pc-section]=\"'event'\">\n <div class=\"cax-timeline-event-opposite\" [attr.data-pc-section]=\"'opposite'\">\n <ng-container *ngTemplateOutlet=\"oppositeTemplate; context: { $implicit: event }\"></ng-container>\n </div>\n <div class=\"cax-timeline-event-separator\" [attr.data-pc-section]=\"'separator'\">\n <ng-container *ngIf=\"markerTemplate; else marker\">\n <ng-container *ngTemplateOutlet=\"markerTemplate; context: { $implicit: event, index: i }\"></ng-container>\n </ng-container>\n <ng-template #marker>\n <div class=\"cax-timeline-event-marker\" [attr.data-pc-section]=\"'marker'\">{{ i + 1 }}</div>\n </ng-template>\n <div *ngIf=\"!last\" class=\"cax-timeline-event-connector\"></div>\n </div>\n <div class=\"cax-timeline-event-content cax-text-body-sm-medium\" [attr.data-pc-section]=\"'content'\">\n <ng-container *ngTemplateOutlet=\"contentTemplate; context: { $implicit: event }\"></ng-container>\n </div>\n </div>\n</div>\n", styles: ["@layer cax{.cax-timeline{display:flex;flex-grow:1;flex-direction:column}.cax-timeline-left .cax-timeline-event-opposite{text-align:right}.cax-timeline-left .cax-timeline-event-content{text-align:left}.cax-timeline-right .cax-timeline-event{flex-direction:row-reverse}.cax-timeline-right .cax-timeline-event-opposite{text-align:left}.cax-timeline-right .cax-timeline-event-content{text-align:right}.cax-timeline-vertical.cax-timeline-alternate .cax-timeline-event:nth-child(2n){flex-direction:row-reverse!important}.cax-timeline-vertical.cax-timeline-alternate .cax-timeline-event:nth-child(odd) .cax-timeline-event-opposite{text-align:right}.cax-timeline-vertical.cax-timeline-alternate .cax-timeline-event:nth-child(odd) .cax-timeline-event-content{text-align:left}.cax-timeline-vertical.cax-timeline-alternate .cax-timeline-event:nth-child(2n) .cax-timeline-event-opposite{text-align:left}.cax-timeline-vertical.cax-timeline-alternate .cax-timeline-event:nth-child(2n) .cax-timeline-event-content{text-align:right}.cax-timeline-event{display:flex;position:relative;gap:8px}.cax-timeline-event:last-child{min-height:0}.cax-timeline-event-content{padding:0 1rem;min-width:100px;border-radius:8px}.cax-timeline-event-opposite:empty{display:none}.cax-timeline-event-separator{flex:0;display:flex;align-items:center;flex-direction:column;position:relative;top:4px}.cax-timeline-event-marker{display:flex;align-self:baseline}.cax-timeline-event-connector{flex-grow:1}.cax-timeline-horizontal{flex-direction:row}.cax-timeline-horizontal.cax-timeline-bottom{align-items:end!important}.cax-timeline-horizontal.cax-timeline-top{align-items:start!important}.cax-timeline-horizontal .cax-timeline-event{flex-direction:column;flex:1}.cax-timeline-horizontal .cax-timeline-event:last-child{flex:0}.cax-timeline-horizontal .cax-timeline-event-separator{flex-direction:row}.cax-timeline-horizontal .cax-timeline-event-connector{width:100%}.cax-timeline-bottom .cax-timeline-event{flex-direction:column-reverse}.cax-timeline-horizontal.cax-timeline-alternate .cax-timeline-event:nth-child(2n){flex-direction:column-reverse}.cax-timeline-event-marker{display:flex;justify-content:center;align-items:center;width:24px;height:24px;border-radius:50%}}\n"] }]
71
71
  }], ctorParameters: () => [{ type: i0.ElementRef }], propDecorators: { value: [{
72
72
  type: Input
73
73
  }], style: [{
@@ -84,11 +84,11 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.16", ngImpo
84
84
  }] } });
85
85
 
86
86
  class TimelineModule {
87
- static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.16", ngImport: i0, type: TimelineModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
88
- static ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "19.2.16", ngImport: i0, type: TimelineModule, declarations: [Timeline], imports: [CommonModule], exports: [Timeline, SharedModule] });
89
- static ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "19.2.16", ngImport: i0, type: TimelineModule, imports: [CommonModule, SharedModule] });
87
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.21", ngImport: i0, type: TimelineModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
88
+ static ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "19.2.21", ngImport: i0, type: TimelineModule, declarations: [Timeline], imports: [CommonModule], exports: [Timeline, SharedModule] });
89
+ static ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "19.2.21", ngImport: i0, type: TimelineModule, imports: [CommonModule, SharedModule] });
90
90
  }
91
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.16", ngImport: i0, type: TimelineModule, decorators: [{
91
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.21", ngImport: i0, type: TimelineModule, decorators: [{
92
92
  type: NgModule,
93
93
  args: [{
94
94
  imports: [CommonModule],
@@ -1 +1 @@
1
- {"version":3,"file":"cax-design-system-timeline.mjs","sources":["../../src/app/components/timeline/timeline.ts","../../src/app/components/timeline/timeline.html","../../src/app/components/timeline/timeline.module.ts","../../src/app/components/timeline/cax-design-system-timeline.ts"],"sourcesContent":["import { CommonModule } from '@angular/common';\nimport { AfterContentInit, ChangeDetectionStrategy, Component, ContentChildren, ElementRef, Input, NgModule, QueryList, TemplateRef, ViewEncapsulation } from '@angular/core';\nimport { BlockableUI, CaxTemplate, SharedModule } from 'cax-design-system/api';\nimport { Nullable } from 'cax-design-system/ts-helpers';\n/**\n * Timeline visualizes a series of chained events.\n * @group Components\n */\n@Component({\n selector: 'cax-timeline',\n templateUrl: `./timeline.html`,\n changeDetection: ChangeDetectionStrategy.OnPush,\n encapsulation: ViewEncapsulation.None,\n styleUrls: ['./timeline.scss'],\n standalone: false,\n host: {\n class: 'cax-element'\n }\n})\nexport class Timeline implements AfterContentInit, BlockableUI {\n /**\n * An array of events to display.\n * @group Props\n */\n @Input() value: any[] | undefined;\n /**\n * Inline style of the component.\n * @group Props\n */\n @Input() style: { [klass: string]: any } | null | undefined;\n /**\n * Style class of the component.\n * @group Props\n */\n @Input() styleClass: string | undefined;\n /**\n * Position of the timeline bar relative to the content. Valid values are \"left\", \"right\" for vertical layout and \"top\", \"bottom\" for horizontal layout.\n * @group Props\n */\n @Input() align: string = 'left';\n /**\n * Orientation of the timeline.\n * @group Props\n */\n @Input() layout: 'vertical' | 'horizontal' = 'vertical';\n\n @ContentChildren(CaxTemplate) templates: Nullable<QueryList<any>>;\n\n contentTemplate: Nullable<TemplateRef<any>>;\n\n oppositeTemplate: Nullable<TemplateRef<any>>;\n\n markerTemplate: Nullable<TemplateRef<any>>;\n\n constructor(private el: ElementRef) {}\n\n getBlockableElement(): HTMLElement {\n return this.el.nativeElement.children[0];\n }\n\n ngAfterContentInit() {\n (this.templates as QueryList<CaxTemplate>).forEach((item) => {\n switch (item.getType()) {\n case 'content':\n this.contentTemplate = item.template;\n break;\n\n case 'opposite':\n this.oppositeTemplate = item.template;\n break;\n\n case 'marker':\n this.markerTemplate = item.template;\n break;\n }\n });\n }\n}\n","<div\r\n [class]=\"styleClass\"\r\n [ngStyle]=\"style\"\r\n [ngClass]=\"{\r\n 'cax-timeline cax-component': true,\r\n 'cax-timeline-left': align === 'left',\r\n 'cax-timeline-right': align === 'right',\r\n 'cax-timeline-top': align === 'top',\r\n 'cax-timeline-bottom': align === 'bottom',\r\n 'cax-timeline-alternate': align === 'alternate',\r\n 'cax-timeline-vertical': layout === 'vertical',\r\n 'cax-timeline-horizontal': layout === 'horizontal'\r\n }\"\r\n [attr.data-pc-name]=\"'timeline'\"\r\n [attr.data-pc-section]=\"'root'\"\r\n>\r\n <div *ngFor=\"let event of value; let last = last; let i = index\" class=\"cax-timeline-event\" [attr.data-pc-section]=\"'event'\">\r\n <div class=\"cax-timeline-event-opposite\" [attr.data-pc-section]=\"'opposite'\">\r\n <ng-container *ngTemplateOutlet=\"oppositeTemplate; context: { $implicit: event }\"></ng-container>\r\n </div>\r\n <div class=\"cax-timeline-event-separator\" [attr.data-pc-section]=\"'separator'\">\r\n <ng-container *ngIf=\"markerTemplate; else marker\">\r\n <ng-container *ngTemplateOutlet=\"markerTemplate; context: { $implicit: event, index: i }\"></ng-container>\r\n </ng-container>\r\n <ng-template #marker>\r\n <div class=\"cax-timeline-event-marker\" [attr.data-pc-section]=\"'marker'\">\r\n {{ i + 1 }}\r\n </div>\r\n </ng-template>\r\n <div *ngIf=\"!last\" class=\"cax-timeline-event-connector\"></div>\r\n </div>\r\n <div class=\"cax-timeline-event-content\" [attr.data-pc-section]=\"'content'\">\r\n <ng-container *ngTemplateOutlet=\"contentTemplate; context: { $implicit: event }\"></ng-container>\r\n </div>\r\n </div>\r\n</div>","import { CommonModule } from '@angular/common';\nimport { SharedModule } from 'cax-design-system/api';\nimport { NgModule } from '@angular/core';\nimport { Timeline } from './timeline';\n\n@NgModule({\n imports: [CommonModule],\n exports: [Timeline, SharedModule],\n declarations: [Timeline]\n})\nexport class TimelineModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public_api';\n"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"cax-design-system-timeline.mjs","sources":["../../src/app/components/timeline/timeline.ts","../../src/app/components/timeline/timeline.html","../../src/app/components/timeline/timeline.module.ts","../../src/app/components/timeline/cax-design-system-timeline.ts"],"sourcesContent":["import { CommonModule } from '@angular/common';\nimport { AfterContentInit, ChangeDetectionStrategy, Component, ContentChildren, ElementRef, Input, NgModule, QueryList, TemplateRef, ViewEncapsulation } from '@angular/core';\nimport { BlockableUI, CaxTemplate, SharedModule } from 'cax-design-system/api';\nimport { Nullable } from 'cax-design-system/ts-helpers';\n/**\n * Timeline visualizes a series of chained events.\n * @group Components\n */\n@Component({\n selector: 'cax-timeline',\n templateUrl: `./timeline.html`,\n changeDetection: ChangeDetectionStrategy.OnPush,\n encapsulation: ViewEncapsulation.None,\n styleUrls: ['./timeline.scss'],\n standalone: false,\n host: {\n class: 'cax-element'\n }\n})\nexport class Timeline implements AfterContentInit, BlockableUI {\n /**\n * An array of events to display.\n * @group Props\n */\n @Input() value: any[] | undefined;\n /**\n * Inline style of the component.\n * @group Props\n */\n @Input() style: { [klass: string]: any } | null | undefined;\n /**\n * Style class of the component.\n * @group Props\n */\n @Input() styleClass: string | undefined;\n /**\n * Position of the timeline bar relative to the content. Valid values are \"left\", \"right\" for vertical layout and \"top\", \"bottom\" for horizontal layout.\n * @group Props\n */\n @Input() align: string = 'left';\n /**\n * Orientation of the timeline.\n * @group Props\n */\n @Input() layout: 'vertical' | 'horizontal' = 'vertical';\n\n @ContentChildren(CaxTemplate) templates: Nullable<QueryList<any>>;\n\n contentTemplate: Nullable<TemplateRef<any>>;\n\n oppositeTemplate: Nullable<TemplateRef<any>>;\n\n markerTemplate: Nullable<TemplateRef<any>>;\n\n constructor(private el: ElementRef) {}\n\n getBlockableElement(): HTMLElement {\n return this.el.nativeElement.children[0];\n }\n\n ngAfterContentInit() {\n (this.templates as QueryList<CaxTemplate>).forEach((item) => {\n switch (item.getType()) {\n case 'content':\n this.contentTemplate = item.template;\n break;\n\n case 'opposite':\n this.oppositeTemplate = item.template;\n break;\n\n case 'marker':\n this.markerTemplate = item.template;\n break;\n }\n });\n }\n}\n","<div\n [class]=\"styleClass\"\n [ngStyle]=\"style\"\n [ngClass]=\"{\n 'cax-timeline cax-component': true,\n 'cax-timeline-left': align === 'left',\n 'cax-timeline-right': align === 'right',\n 'cax-timeline-top': align === 'top',\n 'cax-timeline-bottom': align === 'bottom',\n 'cax-timeline-alternate': align === 'alternate',\n 'cax-timeline-vertical': layout === 'vertical',\n 'cax-timeline-horizontal': layout === 'horizontal'\n }\"\n [attr.data-pc-name]=\"'timeline'\"\n [attr.data-pc-section]=\"'root'\"\n>\n <div *ngFor=\"let event of value; let last = last; let i = index\" class=\"cax-timeline-event\" [attr.data-pc-section]=\"'event'\">\n <div class=\"cax-timeline-event-opposite\" [attr.data-pc-section]=\"'opposite'\">\n <ng-container *ngTemplateOutlet=\"oppositeTemplate; context: { $implicit: event }\"></ng-container>\n </div>\n <div class=\"cax-timeline-event-separator\" [attr.data-pc-section]=\"'separator'\">\n <ng-container *ngIf=\"markerTemplate; else marker\">\n <ng-container *ngTemplateOutlet=\"markerTemplate; context: { $implicit: event, index: i }\"></ng-container>\n </ng-container>\n <ng-template #marker>\n <div class=\"cax-timeline-event-marker\" [attr.data-pc-section]=\"'marker'\">{{ i + 1 }}</div>\n </ng-template>\n <div *ngIf=\"!last\" class=\"cax-timeline-event-connector\"></div>\n </div>\n <div class=\"cax-timeline-event-content cax-text-body-sm-medium\" [attr.data-pc-section]=\"'content'\">\n <ng-container *ngTemplateOutlet=\"contentTemplate; context: { $implicit: event }\"></ng-container>\n </div>\n </div>\n</div>\n","import { CommonModule } from '@angular/common';\nimport { SharedModule } from 'cax-design-system/api';\nimport { NgModule } from '@angular/core';\nimport { Timeline } from './timeline';\n\n@NgModule({\n imports: [CommonModule],\n exports: [Timeline, SharedModule],\n declarations: [Timeline]\n})\nexport class TimelineModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public_api';\n"],"names":[],"mappings":"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"}