@acorex/components 22.1.8 → 22.2.0-next.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 (317) hide show
  1. package/emoji/README.md +3 -0
  2. package/emojipicker/README.md +3 -0
  3. package/fesm2022/acorex-components-accordion.mjs +10 -10
  4. package/fesm2022/acorex-components-accordion.mjs.map +1 -1
  5. package/fesm2022/acorex-components-action-sheet.mjs +15 -14
  6. package/fesm2022/acorex-components-action-sheet.mjs.map +1 -1
  7. package/fesm2022/acorex-components-alert.mjs +7 -7
  8. package/fesm2022/acorex-components-alert.mjs.map +1 -1
  9. package/fesm2022/acorex-components-aspect-ratio.mjs +3 -3
  10. package/fesm2022/acorex-components-aspect-ratio.mjs.map +1 -1
  11. package/fesm2022/acorex-components-audio-wave.mjs +32 -11
  12. package/fesm2022/acorex-components-audio-wave.mjs.map +1 -1
  13. package/fesm2022/acorex-components-autocomplete.mjs +9 -8
  14. package/fesm2022/acorex-components-autocomplete.mjs.map +1 -1
  15. package/fesm2022/acorex-components-avatar.mjs +10 -10
  16. package/fesm2022/acorex-components-avatar.mjs.map +1 -1
  17. package/fesm2022/acorex-components-badge.mjs +7 -7
  18. package/fesm2022/acorex-components-badge.mjs.map +1 -1
  19. package/fesm2022/acorex-components-bottom-navigation.mjs +10 -10
  20. package/fesm2022/acorex-components-bottom-navigation.mjs.map +1 -1
  21. package/fesm2022/acorex-components-breadcrumbs.mjs +10 -10
  22. package/fesm2022/acorex-components-breadcrumbs.mjs.map +1 -1
  23. package/fesm2022/acorex-components-bubble.mjs +71 -0
  24. package/fesm2022/acorex-components-bubble.mjs.map +1 -0
  25. package/fesm2022/acorex-components-button-group.mjs +10 -10
  26. package/fesm2022/acorex-components-button-group.mjs.map +1 -1
  27. package/fesm2022/acorex-components-button.mjs +365 -55
  28. package/fesm2022/acorex-components-button.mjs.map +1 -1
  29. package/fesm2022/acorex-components-calendar.mjs +40 -37
  30. package/fesm2022/acorex-components-calendar.mjs.map +1 -1
  31. package/fesm2022/acorex-components-check-box.mjs +7 -7
  32. package/fesm2022/acorex-components-check-box.mjs.map +1 -1
  33. package/fesm2022/acorex-components-chips.mjs +7 -7
  34. package/fesm2022/acorex-components-chips.mjs.map +1 -1
  35. package/fesm2022/acorex-components-circular-progress.mjs +7 -7
  36. package/fesm2022/acorex-components-circular-progress.mjs.map +1 -1
  37. package/fesm2022/acorex-components-code-editor.mjs +44 -19
  38. package/fesm2022/acorex-components-code-editor.mjs.map +1 -1
  39. package/fesm2022/acorex-components-color-box.mjs +7 -7
  40. package/fesm2022/acorex-components-color-box.mjs.map +1 -1
  41. package/fesm2022/acorex-components-color-palette.mjs +28 -28
  42. package/fesm2022/acorex-components-color-palette.mjs.map +1 -1
  43. package/fesm2022/acorex-components-combo-box.mjs +158 -31
  44. package/fesm2022/acorex-components-combo-box.mjs.map +1 -1
  45. package/fesm2022/acorex-components-command.mjs +11 -7
  46. package/fesm2022/acorex-components-command.mjs.map +1 -1
  47. package/fesm2022/acorex-components-comment.mjs +28 -28
  48. package/fesm2022/acorex-components-comment.mjs.map +1 -1
  49. package/fesm2022/{acorex-components-conversation-acorex-components-conversation-Cl_dlCTX.mjs → acorex-components-conversation-acorex-components-conversation-C1Lf9tAe.mjs} +2889 -1016
  50. package/fesm2022/acorex-components-conversation-acorex-components-conversation-C1Lf9tAe.mjs.map +1 -0
  51. package/fesm2022/{acorex-components-conversation-composer-action-choice-dialog.component-COUB9zrM.mjs → acorex-components-conversation-composer-action-choice-dialog.component-F5fLD_SK.mjs} +4 -4
  52. package/fesm2022/{acorex-components-conversation-composer-action-choice-dialog.component-COUB9zrM.mjs.map → acorex-components-conversation-composer-action-choice-dialog.component-F5fLD_SK.mjs.map} +1 -1
  53. package/fesm2022/acorex-components-conversation-emoji-categories-C7Gm95V0.mjs.map +1 -1
  54. package/fesm2022/acorex-components-conversation-image-picker-editor-dialog.component-Bk3ixvt2.mjs +87 -0
  55. package/fesm2022/acorex-components-conversation-image-picker-editor-dialog.component-Bk3ixvt2.mjs.map +1 -0
  56. package/fesm2022/{acorex-components-conversation-picker-rename-file-dialog.component-_F-fv3Ti.mjs → acorex-components-conversation-picker-rename-file-dialog.component-DyOC1WEb.mjs} +5 -5
  57. package/fesm2022/{acorex-components-conversation-picker-rename-file-dialog.component-_F-fv3Ti.mjs.map → acorex-components-conversation-picker-rename-file-dialog.component-DyOC1WEb.mjs.map} +1 -1
  58. package/fesm2022/acorex-components-conversation.mjs +1 -1
  59. package/fesm2022/acorex-components-cron-job.mjs +47 -47
  60. package/fesm2022/acorex-components-cron-job.mjs.map +1 -1
  61. package/fesm2022/acorex-components-data-list.mjs +3 -3
  62. package/fesm2022/acorex-components-data-list.mjs.map +1 -1
  63. package/fesm2022/acorex-components-data-pager.mjs +181 -183
  64. package/fesm2022/acorex-components-data-pager.mjs.map +1 -1
  65. package/fesm2022/acorex-components-data-table.mjs +777 -160
  66. package/fesm2022/acorex-components-data-table.mjs.map +1 -1
  67. package/fesm2022/acorex-components-datetime-box.mjs +7 -7
  68. package/fesm2022/acorex-components-datetime-box.mjs.map +1 -1
  69. package/fesm2022/acorex-components-datetime-input.mjs +7 -7
  70. package/fesm2022/acorex-components-datetime-input.mjs.map +1 -1
  71. package/fesm2022/acorex-components-datetime-picker.mjs +8 -8
  72. package/fesm2022/acorex-components-datetime-picker.mjs.map +1 -1
  73. package/fesm2022/acorex-components-decorators.mjs +59 -117
  74. package/fesm2022/acorex-components-decorators.mjs.map +1 -1
  75. package/fesm2022/acorex-components-dialog.mjs +10 -10
  76. package/fesm2022/acorex-components-dialog.mjs.map +1 -1
  77. package/fesm2022/acorex-components-drawer.mjs +11 -11
  78. package/fesm2022/acorex-components-drawer.mjs.map +1 -1
  79. package/fesm2022/acorex-components-dropdown-button.mjs +9 -8
  80. package/fesm2022/acorex-components-dropdown-button.mjs.map +1 -1
  81. package/fesm2022/acorex-components-dropdown.mjs +19 -14
  82. package/fesm2022/acorex-components-dropdown.mjs.map +1 -1
  83. package/fesm2022/acorex-components-editor.mjs +15 -14
  84. package/fesm2022/acorex-components-editor.mjs.map +1 -1
  85. package/fesm2022/acorex-components-emoji.mjs +74 -0
  86. package/fesm2022/acorex-components-emoji.mjs.map +1 -0
  87. package/fesm2022/acorex-components-emojipicker.mjs +425 -0
  88. package/fesm2022/acorex-components-emojipicker.mjs.map +1 -0
  89. package/fesm2022/acorex-components-fab.mjs +6 -6
  90. package/fesm2022/acorex-components-fab.mjs.map +1 -1
  91. package/fesm2022/acorex-components-file-viewer.mjs +226 -127
  92. package/fesm2022/acorex-components-file-viewer.mjs.map +1 -1
  93. package/fesm2022/acorex-components-form.mjs +16 -16
  94. package/fesm2022/acorex-components-form.mjs.map +1 -1
  95. package/fesm2022/acorex-components-grid-layout-builder.mjs +10 -10
  96. package/fesm2022/acorex-components-grid-layout-builder.mjs.map +1 -1
  97. package/fesm2022/acorex-components-highlight.mjs +80 -0
  98. package/fesm2022/acorex-components-highlight.mjs.map +1 -0
  99. package/fesm2022/acorex-components-image-editor.mjs +217 -79
  100. package/fesm2022/acorex-components-image-editor.mjs.map +1 -1
  101. package/fesm2022/acorex-components-image.mjs +7 -7
  102. package/fesm2022/acorex-components-image.mjs.map +1 -1
  103. package/fesm2022/acorex-components-inline-reaction.mjs +111 -0
  104. package/fesm2022/acorex-components-inline-reaction.mjs.map +1 -0
  105. package/fesm2022/acorex-components-json-viewer.mjs +7 -7
  106. package/fesm2022/acorex-components-json-viewer.mjs.map +1 -1
  107. package/fesm2022/acorex-components-kanban.mjs +3 -3
  108. package/fesm2022/acorex-components-kanban.mjs.map +1 -1
  109. package/fesm2022/acorex-components-kbd.mjs +6 -6
  110. package/fesm2022/acorex-components-kbd.mjs.map +1 -1
  111. package/fesm2022/acorex-components-label.mjs +7 -7
  112. package/fesm2022/acorex-components-label.mjs.map +1 -1
  113. package/fesm2022/acorex-components-list.mjs +28 -9
  114. package/fesm2022/acorex-components-list.mjs.map +1 -1
  115. package/fesm2022/acorex-components-loading-dialog.mjs +10 -10
  116. package/fesm2022/acorex-components-loading-dialog.mjs.map +1 -1
  117. package/fesm2022/acorex-components-loading.mjs +16 -16
  118. package/fesm2022/acorex-components-loading.mjs.map +1 -1
  119. package/fesm2022/acorex-components-lookup.mjs +771 -148
  120. package/fesm2022/acorex-components-lookup.mjs.map +1 -1
  121. package/fesm2022/acorex-components-map.mjs +20 -13
  122. package/fesm2022/acorex-components-map.mjs.map +1 -1
  123. package/fesm2022/acorex-components-media-viewer.mjs +215 -218
  124. package/fesm2022/acorex-components-media-viewer.mjs.map +1 -1
  125. package/fesm2022/acorex-components-menu.mjs +146 -45
  126. package/fesm2022/acorex-components-menu.mjs.map +1 -1
  127. package/fesm2022/acorex-components-message-status.mjs +71 -0
  128. package/fesm2022/acorex-components-message-status.mjs.map +1 -0
  129. package/fesm2022/acorex-components-message-time.mjs +36 -0
  130. package/fesm2022/acorex-components-message-time.mjs.map +1 -0
  131. package/fesm2022/acorex-components-message.mjs +120 -0
  132. package/fesm2022/acorex-components-message.mjs.map +1 -0
  133. package/fesm2022/acorex-components-navbar.mjs +7 -7
  134. package/fesm2022/acorex-components-navbar.mjs.map +1 -1
  135. package/fesm2022/acorex-components-notification.mjs +13 -14
  136. package/fesm2022/acorex-components-notification.mjs.map +1 -1
  137. package/fesm2022/acorex-components-number-box.mjs +17 -10
  138. package/fesm2022/acorex-components-number-box.mjs.map +1 -1
  139. package/fesm2022/acorex-components-otp.mjs +7 -7
  140. package/fesm2022/acorex-components-otp.mjs.map +1 -1
  141. package/fesm2022/acorex-components-page.mjs +10 -10
  142. package/fesm2022/acorex-components-page.mjs.map +1 -1
  143. package/fesm2022/acorex-components-paint.mjs +25 -25
  144. package/fesm2022/acorex-components-paint.mjs.map +1 -1
  145. package/fesm2022/acorex-components-password-box.mjs +10 -10
  146. package/fesm2022/acorex-components-password-box.mjs.map +1 -1
  147. package/fesm2022/acorex-components-pdf-reader.mjs +7 -7
  148. package/fesm2022/acorex-components-pdf-reader.mjs.map +1 -1
  149. package/fesm2022/acorex-components-phone-box.mjs +7 -7
  150. package/fesm2022/acorex-components-phone-box.mjs.map +1 -1
  151. package/fesm2022/acorex-components-picker.mjs +13 -13
  152. package/fesm2022/acorex-components-picker.mjs.map +1 -1
  153. package/fesm2022/acorex-components-popover.mjs +61 -13
  154. package/fesm2022/acorex-components-popover.mjs.map +1 -1
  155. package/fesm2022/acorex-components-popup.mjs +631 -167
  156. package/fesm2022/acorex-components-popup.mjs.map +1 -1
  157. package/fesm2022/acorex-components-progress-bar.mjs +7 -7
  158. package/fesm2022/acorex-components-progress-bar.mjs.map +1 -1
  159. package/fesm2022/acorex-components-qrcode.mjs +7 -7
  160. package/fesm2022/acorex-components-qrcode.mjs.map +1 -1
  161. package/fesm2022/acorex-components-radio.mjs +7 -7
  162. package/fesm2022/acorex-components-radio.mjs.map +1 -1
  163. package/fesm2022/acorex-components-rail-navigation.mjs +13 -13
  164. package/fesm2022/acorex-components-rail-navigation.mjs.map +1 -1
  165. package/fesm2022/acorex-components-range-slider.mjs +7 -7
  166. package/fesm2022/acorex-components-range-slider.mjs.map +1 -1
  167. package/fesm2022/acorex-components-rate-picker.mjs +7 -7
  168. package/fesm2022/acorex-components-rate-picker.mjs.map +1 -1
  169. package/fesm2022/acorex-components-reaction.mjs +144 -0
  170. package/fesm2022/acorex-components-reaction.mjs.map +1 -0
  171. package/fesm2022/acorex-components-rest-api-generator.mjs +23 -23
  172. package/fesm2022/acorex-components-rest-api-generator.mjs.map +1 -1
  173. package/fesm2022/acorex-components-result.mjs +7 -7
  174. package/fesm2022/acorex-components-result.mjs.map +1 -1
  175. package/fesm2022/acorex-components-routing-progress.mjs +7 -7
  176. package/fesm2022/acorex-components-routing-progress.mjs.map +1 -1
  177. package/fesm2022/acorex-components-rrule.mjs +9 -9
  178. package/fesm2022/acorex-components-rrule.mjs.map +1 -1
  179. package/fesm2022/acorex-components-scheduler-picker.mjs +54 -54
  180. package/fesm2022/acorex-components-scheduler-picker.mjs.map +1 -1
  181. package/fesm2022/acorex-components-scheduler.mjs +35 -35
  182. package/fesm2022/acorex-components-scheduler.mjs.map +1 -1
  183. package/fesm2022/acorex-components-search-box.mjs +7 -7
  184. package/fesm2022/acorex-components-search-box.mjs.map +1 -1
  185. package/fesm2022/acorex-components-select-box.mjs +9 -8
  186. package/fesm2022/acorex-components-select-box.mjs.map +1 -1
  187. package/fesm2022/acorex-components-selection-list.mjs +7 -7
  188. package/fesm2022/acorex-components-selection-list.mjs.map +1 -1
  189. package/fesm2022/acorex-components-side-menu.mjs +55 -42
  190. package/fesm2022/acorex-components-side-menu.mjs.map +1 -1
  191. package/fesm2022/acorex-components-sidebar.mjs +28 -28
  192. package/fesm2022/acorex-components-sidebar.mjs.map +1 -1
  193. package/fesm2022/acorex-components-skeleton.mjs +7 -7
  194. package/fesm2022/acorex-components-skeleton.mjs.map +1 -1
  195. package/fesm2022/acorex-components-slider.mjs +7 -7
  196. package/fesm2022/acorex-components-slider.mjs.map +1 -1
  197. package/fesm2022/acorex-components-sliding-item.mjs +13 -13
  198. package/fesm2022/acorex-components-sliding-item.mjs.map +1 -1
  199. package/fesm2022/acorex-components-step-wizard.mjs +16 -18
  200. package/fesm2022/acorex-components-step-wizard.mjs.map +1 -1
  201. package/fesm2022/acorex-components-switch.mjs +10 -10
  202. package/fesm2022/acorex-components-switch.mjs.map +1 -1
  203. package/fesm2022/acorex-components-tabs.mjs +367 -72
  204. package/fesm2022/acorex-components-tabs.mjs.map +1 -1
  205. package/fesm2022/acorex-components-tag-box.mjs +7 -7
  206. package/fesm2022/acorex-components-tag-box.mjs.map +1 -1
  207. package/fesm2022/acorex-components-tag.mjs +7 -7
  208. package/fesm2022/acorex-components-tag.mjs.map +1 -1
  209. package/fesm2022/acorex-components-text-area.mjs +7 -7
  210. package/fesm2022/acorex-components-text-area.mjs.map +1 -1
  211. package/fesm2022/acorex-components-text-box.mjs +7 -7
  212. package/fesm2022/acorex-components-text-box.mjs.map +1 -1
  213. package/fesm2022/acorex-components-time-duration.mjs +7 -7
  214. package/fesm2022/acorex-components-time-duration.mjs.map +1 -1
  215. package/fesm2022/acorex-components-time-line.mjs +10 -10
  216. package/fesm2022/acorex-components-time-line.mjs.map +1 -1
  217. package/fesm2022/acorex-components-toast.mjs +14 -14
  218. package/fesm2022/acorex-components-toast.mjs.map +1 -1
  219. package/fesm2022/acorex-components-toolbar.mjs +7 -7
  220. package/fesm2022/acorex-components-toolbar.mjs.map +1 -1
  221. package/fesm2022/acorex-components-tooltip.mjs +10 -10
  222. package/fesm2022/acorex-components-tooltip.mjs.map +1 -1
  223. package/fesm2022/acorex-components-tree-view.mjs +54 -14
  224. package/fesm2022/acorex-components-tree-view.mjs.map +1 -1
  225. package/fesm2022/acorex-components-uploader.mjs +13 -13
  226. package/fesm2022/acorex-components-uploader.mjs.map +1 -1
  227. package/fesm2022/acorex-components-video-player.mjs +7 -7
  228. package/fesm2022/acorex-components-video-player.mjs.map +1 -1
  229. package/fesm2022/acorex-components-wysiwyg.mjs +691 -295
  230. package/fesm2022/acorex-components-wysiwyg.mjs.map +1 -1
  231. package/fesm2022/acorex-components.mjs.map +1 -1
  232. package/highlight/README.md +13 -0
  233. package/inline-reaction/README.md +3 -0
  234. package/lookup/README.md +1 -1
  235. package/message/README.md +3 -0
  236. package/message-status/README.md +3 -0
  237. package/message-time/README.md +3 -0
  238. package/package.json +48 -13
  239. package/reaction/README.md +3 -0
  240. package/types/acorex-components-action-sheet.d.ts +1 -1
  241. package/types/acorex-components-audio-wave.d.ts +8 -0
  242. package/types/acorex-components-bubble.d.ts +31 -0
  243. package/types/acorex-components-button.d.ts +74 -9
  244. package/types/acorex-components-calendar.d.ts +13 -4
  245. package/types/acorex-components-check-box.d.ts +1 -1
  246. package/types/acorex-components-code-editor.d.ts +4 -1
  247. package/types/acorex-components-color-box.d.ts +1 -1
  248. package/types/acorex-components-color-palette.d.ts +2 -2
  249. package/types/acorex-components-combo-box.d.ts +8 -2
  250. package/types/acorex-components-command.d.ts +3 -1
  251. package/types/acorex-components-conversation.d.ts +418 -119
  252. package/types/acorex-components-cron-job.d.ts +6 -6
  253. package/types/acorex-components-data-pager.d.ts +27 -9
  254. package/types/acorex-components-data-table.d.ts +221 -21
  255. package/types/acorex-components-datetime-box.d.ts +1 -1
  256. package/types/acorex-components-datetime-picker.d.ts +1 -1
  257. package/types/acorex-components-decorators.d.ts +15 -33
  258. package/types/acorex-components-dialog.d.ts +1 -1
  259. package/types/acorex-components-dropdown-button.d.ts +2 -1
  260. package/types/acorex-components-dropdown.d.ts +6 -1
  261. package/types/acorex-components-editor.d.ts +1 -1
  262. package/types/acorex-components-emoji.d.ts +42 -0
  263. package/types/acorex-components-emojipicker.d.ts +146 -0
  264. package/types/acorex-components-file-viewer.d.ts +13 -2
  265. package/types/acorex-components-highlight.d.ts +31 -0
  266. package/types/acorex-components-image-editor.d.ts +19 -2
  267. package/types/acorex-components-inline-reaction.d.ts +52 -0
  268. package/types/acorex-components-list.d.ts +12 -0
  269. package/types/acorex-components-loading-dialog.d.ts +1 -1
  270. package/types/acorex-components-loading.d.ts +1 -1
  271. package/types/acorex-components-lookup.d.ts +214 -79
  272. package/types/acorex-components-map.d.ts +7 -2
  273. package/types/acorex-components-media-viewer.d.ts +4 -3
  274. package/types/acorex-components-menu.d.ts +17 -5
  275. package/types/acorex-components-message-status.d.ts +23 -0
  276. package/types/acorex-components-message-time.d.ts +19 -0
  277. package/types/acorex-components-message.d.ts +59 -0
  278. package/types/acorex-components-notification.d.ts +1 -1
  279. package/types/acorex-components-number-box.d.ts +2 -1
  280. package/types/acorex-components-otp.d.ts +1 -1
  281. package/types/acorex-components-page.d.ts +2 -2
  282. package/types/acorex-components-paint.d.ts +2 -2
  283. package/types/acorex-components-password-box.d.ts +1 -1
  284. package/types/acorex-components-phone-box.d.ts +1 -1
  285. package/types/acorex-components-popover.d.ts +13 -1
  286. package/types/acorex-components-popup.d.ts +183 -50
  287. package/types/acorex-components-rail-navigation.d.ts +1 -1
  288. package/types/acorex-components-range-slider.d.ts +1 -1
  289. package/types/acorex-components-reaction.d.ts +85 -0
  290. package/types/acorex-components-rest-api-generator.d.ts +1 -1
  291. package/types/acorex-components-rrule.d.ts +1 -1
  292. package/types/acorex-components-scheduler-picker.d.ts +1 -1
  293. package/types/acorex-components-scheduler.d.ts +1 -1
  294. package/types/acorex-components-search-box.d.ts +1 -1
  295. package/types/acorex-components-side-menu.d.ts +6 -8
  296. package/types/acorex-components-slider.d.ts +1 -1
  297. package/types/acorex-components-step-wizard.d.ts +4 -4
  298. package/types/acorex-components-switch.d.ts +1 -1
  299. package/types/acorex-components-tabs.d.ts +106 -19
  300. package/types/acorex-components-tag-box.d.ts +2 -2
  301. package/types/acorex-components-text-area.d.ts +1 -1
  302. package/types/acorex-components-text-box.d.ts +1 -1
  303. package/types/acorex-components-time-duration.d.ts +1 -1
  304. package/types/acorex-components-toast.d.ts +1 -1
  305. package/types/acorex-components-tree-view.d.ts +23 -1
  306. package/types/acorex-components-wysiwyg.d.ts +426 -77
  307. package/fesm2022/acorex-components-conversation-acorex-components-conversation-Cl_dlCTX.mjs.map +0 -1
  308. package/fesm2022/acorex-components-conversation-image-picker-editor-dialog.component-AO1evM19.mjs +0 -85
  309. package/fesm2022/acorex-components-conversation-image-picker-editor-dialog.component-AO1evM19.mjs.map +0 -1
  310. package/fesm2022/acorex-components-flow-chart.mjs +0 -735
  311. package/fesm2022/acorex-components-flow-chart.mjs.map +0 -1
  312. package/fesm2022/acorex-components-query-builder.mjs +0 -267
  313. package/fesm2022/acorex-components-query-builder.mjs.map +0 -1
  314. package/flow-chart/README.md +0 -3
  315. package/query-builder/README.md +0 -3
  316. package/types/acorex-components-flow-chart.d.ts +0 -187
  317. package/types/acorex-components-query-builder.d.ts +0 -52
@@ -1 +1 @@
1
- {"version":3,"file":"acorex-components-dropdown.mjs","sources":["../../../../packages/components/dropdown/src/lib/dropdown-box.class.ts","../../../../packages/components/dropdown/src/lib/dropdown-box.component.ts","../../../../packages/components/dropdown/src/lib/dropdown-box.component.html","../../../../packages/components/dropdown/src/lib/dropdown-panel.component.ts","../../../../packages/components/dropdown/src/lib/dropdown-panel.component.html","../../../../packages/components/dropdown/src/lib/dropdown.module.ts","../../../../packages/components/dropdown/src/acorex-components-dropdown.ts"],"sourcesContent":["import { AXEvent, MXInteractiveComponent } from '@acorex/cdk/common';\nimport { EventEmitter, Injectable } from '@angular/core';\nimport { AXDropdownBoxComponent } from './dropdown-box.component';\n\n@Injectable()\n/**\n * Base behavior for components that manage a dropdown/popup via an internal `AXDropdownBoxComponent`.\n *\n * Extends MXInteractiveComponent to inherit interactive features (focus, blur, disabled, tabIndex)\n * and exposes a consistent API to open/close/toggle the dropdown as well as events for open/close lifecycle.\n */\nexport abstract class MXDropdownBoxBaseComponent extends MXInteractiveComponent {\n /**\n * Emitted when the dropdown/popup is opened.\n *\n * @event\n */\n onOpened: EventEmitter<AXEvent> = new EventEmitter<AXEvent>();\n\n /**\n * Emits the `onOpened` event with component context.\n * @ignore\n */\n protected emitOnOpenedEvent(): void {\n this.onOpened.emit({\n component: this,\n htmlElement: this.getHostElement(),\n });\n }\n\n /**\n * Emitted when the dropdown/popup is closed.\n *\n * @event\n */\n onClosed: EventEmitter<AXEvent> = new EventEmitter<AXEvent>();\n\n /**\n * Emits the `onClosed` event with component context.\n * @ignore\n */\n protected emitOnClosedEvent(): void {\n this.onClosed.emit({\n component: this,\n htmlElement: this.getHostElement(),\n });\n }\n\n /**\n * Reference to the underlying dropdown controller.\n */\n protected abstract dropdown: AXDropdownBoxComponent;\n\n /**\n * Toggles the dropdown if the component is not disabled.\n *\n * @returns void - No return value. Switches between open and closed states.\n */\n toggle() {\n if (this.disabled !== true) {\n this.dropdown.toggle();\n }\n }\n\n /**\n * Closes the dropdown if it is open and the component is not disabled, then focuses the host.\n *\n * @returns void - No return value. Dropdown is closed and focus returns to the host.\n */\n close() {\n if (!this.isOpen || this.disabled) {\n return;\n }\n this.dropdown.close();\n this.focus();\n }\n\n /**\n * Opens the dropdown if it is not already open and the component is not disabled, then focuses the dropdown.\n *\n * @returns void - No return value. Dropdown becomes open and receives focus.\n */\n open() {\n if (this.isOpen || this.disabled) {\n return;\n }\n this.dropdown.open();\n this.dropdown.focus();\n }\n\n /**\n * Indicates whether the dropdown is currently open.\n *\n * @returns boolean - True if open; otherwise false.\n */\n get isOpen(): boolean {\n return this.dropdown?.isOpen;\n }\n}\n","import { AXComponent, AXEvent, MXInteractiveComponent, MXLookComponent, convertToPlacement } from '@acorex/cdk/common';\nimport { AXPopoverComponent } from '@acorex/components/popover';\nimport { AXPlatform } from '@acorex/core/platform';\nimport {\n Component,\n EventEmitter,\n HostBinding,\n HostListener,\n OnInit,\n Output,\n ViewChild,\n inject,\n input,\n} from '@angular/core';\nimport { classes } from 'polytype';\nimport { startWith } from 'rxjs';\n\n@Component({\n selector: 'ax-dropdown-box',\n templateUrl: 'dropdown-box.component.html',\n inputs: ['disabled', 'look'],\n outputs: ['disabledChange', 'onBlur', 'onFocus', 'onClick'],\n host: { ngSkipHydration: 'true' },\n imports: [AXPopoverComponent],\n\n providers: [{ provide: AXComponent, useExisting: AXDropdownBoxComponent }],\n})\nexport class AXDropdownBoxComponent extends classes(MXInteractiveComponent, MXLookComponent) implements OnInit {\n readonly hasInput = input(true);\n\n readonly popoverWidth = input<string>('auto');\n\n private _platform: AXPlatform = inject(AXPlatform);\n\n /**\n * @ignore\n */\n protected _target: HTMLDivElement;\n\n /**\n * @ignore\n */\n protected _popoverTitle: string;\n\n /**\n * @ignore\n */\n protected _popoverWidth = '180px';\n\n /**\n * @ignore\n */\n protected _placement = convertToPlacement('bottom-start');\n\n /**\n * @ignore\n */\n @ViewChild(AXPopoverComponent, { static: true })\n protected _popover: AXPopoverComponent;\n\n /**\n * Emitted when the drawer is opened.\n *\n * @event\n */\n @Output()\n onOpened: EventEmitter<AXEvent> = new EventEmitter<AXEvent>();\n\n /**\n * Emitted when the drawer is closed.\n *\n * @event\n */\n @Output()\n onClosed: EventEmitter<AXEvent> = new EventEmitter<AXEvent>();\n\n /**\n * @ignore\n */\n override ngOnInit() {\n super.ngOnInit();\n this._target = this.getHostElement();\n this._platform.resize.pipe(startWith()).subscribe(() => {\n if (!this.isActionsheetStyle) this.close();\n });\n }\n\n /**\n * @ignore\n */\n protected _handlePopupOnOpened(e: AXEvent) {\n this._popover?.focus();\n this.onOpened.emit({\n component: this,\n isUserInteraction: e.isUserInteraction,\n });\n }\n\n /**\n * @ignore\n */\n protected _handlePopupOnClosed(e: AXEvent) {\n this.focus();\n this.onClosed.emit({\n component: this,\n isUserInteraction: e.isUserInteraction,\n });\n }\n\n /**\n * @ignore\n */\n @HostListener('keydown', ['$event'])\n protected _handleKeydown(e: KeyboardEvent) {\n if (e.code === 'Space' || e.code === 'Enter') {\n this.open();\n }\n if (e.ctrlKey && e.code === 'ArrowDown') {\n e.preventDefault();\n this.open();\n }\n if (e.code === 'Escape') {\n e.preventDefault();\n this.close();\n }\n }\n\n /**\n * Updates the position of the popover.\n * @ignore\n */\n updatePosition() {\n this._popover?.updatePosition();\n }\n\n /**\n * Toggles the popover open or closed, if not disabled.\n * @ignore\n */\n toggle() {\n if (this.disabled !== true) {\n this._popover.toggle();\n }\n }\n\n /**\n * Closes the popover if it's open and not disabled, then focuses the element.\n * @ignore\n */\n close() {\n if (!this.isOpen || this.disabled) {\n return;\n }\n this._popover.close();\n this.focus();\n }\n\n /**\n * Opens the popover if it's not already open and not disabled, then focuses the popover.\n * @ignore\n */\n open() {\n if (this.isOpen || this.disabled) {\n return;\n }\n this._popover.open();\n this._popover.focus();\n }\n\n /**\n * Indicates if the popover is currently open.\n * @ignore\n */\n get isOpen(): boolean {\n return this._popover?.isOpen;\n }\n\n /**\n * Indicates if the popover is styled as an actionsheet.\n */\n get isActionsheetStyle(): boolean {\n return this._platform.is('SM');\n }\n\n /**\n * @ignore\n */\n @HostBinding('class')\n private get __hostClass(): string {\n return this.hasInput()\n ? `ax-editor-container ax-default ${this.look} ${this.disabled ? 'ax-state-disabled' : ''}`\n : '';\n }\n}\n","<ng-content select=\"[input]\"> </ng-content>\n<ax-popover\n [adaptivityEnabled]=\"true\"\n [target]=\"_target\"\n [placement]=\"_placement\"\n [openOn]=\"'manual'\"\n [closeOn]=\"'clickOut'\"\n [closeOnScroll]=\"!isActionsheetStyle\"\n [width]=\"popoverWidth()\"\n visualContextScope=\"theme\"\n (onOpened)=\"_handlePopupOnOpened($event)\"\n (onClosed)=\"_handlePopupOnClosed($event)\"\n #popover\n>\n <div aria-modal=\"true\" (keydown)=\"_handleKeydown($event)\">\n <ng-content select=\"[panel]\"> </ng-content>\n </div>\n</ax-popover>\n","import {\n Component,\n EventEmitter,\n HostBinding,\n Input,\n OnDestroy,\n Output,\n ViewChild,\n ViewEncapsulation,\n effect,\n inject,\n input,\n} from '@angular/core';\n\nimport {\n AXClosableComponent,\n AXComponent,\n AXEvent,\n MXInteractiveComponent,\n convertToPlacement,\n} from '@acorex/cdk/common';\nimport { AXPopoverComponent } from '@acorex/components/popover';\nimport { AXPlatform, isBrowser } from '@acorex/core/platform';\nimport { Subscription, startWith } from 'rxjs';\n\n/**\n * A panel for displaying dropdown content with configurable width and positioning.\n *\n * @category Components\n */\n@Component({\n selector: 'ax-dropdown-panel',\n templateUrl: './dropdown-panel.component.html',\n styleUrls: ['./dropdown-panel.component.css'],\n inputs: ['isOpen', 'fitParent', 'dropdownWidth', 'position'],\n outputs: ['onOpened', 'onClosed'],\n\n encapsulation: ViewEncapsulation.None,\n providers: [\n {\n provide: AXClosableComponent,\n useExisting: AXDropdownPanelComponent,\n },\n { provide: AXComponent, useExisting: AXDropdownPanelComponent },\n ],\n host: { ngSkipHydration: 'true' },\n imports: [AXPopoverComponent],\n})\nexport class AXDropdownPanelComponent extends MXInteractiveComponent implements OnDestroy {\n protected _platform: AXPlatform = inject(AXPlatform);\n\n /**\n * @ignore\n */\n protected _isMobile = false;\n\n /**\n * @ignore\n */\n protected _popoverTitle: string;\n\n /**\n * @ignore\n */\n protected _placement = convertToPlacement('bottom-start');\n\n readonly placement = input<'bottom-start' | 'bottom-end'>('bottom-start');\n\n #effect = effect(() => {\n if (!this.placement()) return;\n this._placement = convertToPlacement(this.placement());\n });\n\n /**\n * @ignore\n */\n _subs: Subscription[] = [];\n\n /**\n * @ignore\n */\n private __target: HTMLDivElement;\n\n /**\n * Gets the target HTML element for the dropdown panel.\n */\n @Input()\n public get _target(): HTMLDivElement {\n return this.__target;\n }\n\n /**\n * Sets the target HTML element for the dropdown panel.\n */\n public set _target(v: HTMLDivElement) {\n this.__target = v;\n }\n\n /**\n * @ignore\n */\n @ViewChild(AXPopoverComponent)\n protected _popover: AXPopoverComponent;\n\n /**\n * Emitted when the dropdown panel is opened.\n *\n * @event\n */\n @Output()\n onOpened: EventEmitter<AXEvent> = new EventEmitter<AXEvent>();\n\n /**\n * Emitted when the dropdown panel is closed.\n *\n * @event\n */\n @Output()\n onClosed: EventEmitter<AXEvent> = new EventEmitter<AXEvent>();\n\n /**\n * Determines if adaptivity is enabled for the component.\n *\n * @defaultValue false\n */\n @Input()\n adaptivityEnabled = false;\n\n /**\n * @ignore\n */\n constructor() {\n super();\n }\n\n /**\n * @ignore\n */\n override ngOnInit() {\n if (isBrowser()) {\n super.ngOnInit();\n if (!this._target) {\n this._target = this.getHostElement()?.parentElement as HTMLDivElement;\n }\n this._platform.resize.pipe(startWith(null)).subscribe(() => {\n this._isMobile = this._platform.is('SM');\n this._popover?.close();\n });\n }\n }\n\n /**\n * @ignore\n */\n ngAfterViewInit(): void {\n [this._target, this.getHostElement()].forEach((el) => {\n el?.addEventListener('keydown', (e) => {\n if (e.code == 'Escape' && this.isOpen) {\n e.stopPropagation();\n this.close();\n }\n });\n });\n }\n\n /**\n * @ignore\n */\n ngOnDestroy(): void {\n this._subs.forEach((s) => {\n s?.unsubscribe();\n });\n }\n\n /**\n * @ignore\n */\n protected _handlePopupOnOpened(e: AXEvent) {\n this._popover?.focus();\n this.onOpened.emit({\n component: this,\n isUserInteraction: e.isUserInteraction,\n });\n }\n\n /**\n * @ignore\n */\n protected _handlePopupOnClosed(e: AXEvent) {\n this._target.focus();\n this.onClosed.emit({\n component: this,\n isUserInteraction: e.isUserInteraction,\n });\n }\n\n /**\n * Toggles the popover open or closed, if not disabled.\n * @ignore\n */\n toggle() {\n if (this.disabled !== true) {\n this._popover.toggle();\n }\n }\n\n /**\n * Closes the popover if it is open and not disabled.\n * @ignore\n */\n close() {\n if (!this.isOpen || this.disabled) {\n return;\n }\n this._popover.close();\n this.focus();\n }\n\n /**\n * Opens the popover if it is not already open and not disabled.\n * @ignore\n */\n open() {\n if (this.isOpen || this.disabled) {\n return;\n }\n this._popover.open();\n this._popover.focus();\n }\n\n /**\n * Gets whether the popover is currently open.\n * @ignore\n */\n get isOpen(): boolean {\n return this._popover?.isOpen;\n }\n\n /**\n * @ignore\n */\n @HostBinding('class')\n private get __hostClass(): string[] {\n return ['ax-dropdown-panel'];\n }\n}\n","<ax-popover\n [target]=\"_target\"\n [placement]=\"_placement\"\n [openOn]=\"'toggle'\"\n [closeOn]=\"'clickOut'\"\n [adaptivityEnabled]=\"adaptivityEnabled\"\n visualContextScope=\"theme\"\n (onOpened)=\"_handlePopupOnOpened($event)\"\n (onClosed)=\"_handlePopupOnClosed($event)\"\n>\n <div>\n <ng-content> </ng-content>\n </div>\n</ax-popover>\n","import { AXCommonModule } from '@acorex/cdk/common';\nimport { AXDecoratorModule } from '@acorex/components/decorators';\nimport { AXPopoverModule } from '@acorex/components/popover';\nimport { A11yModule } from '@angular/cdk/a11y';\nimport { CommonModule } from '@angular/common';\nimport { NgModule } from '@angular/core';\nimport { AXDropdownBoxComponent } from './dropdown-box.component';\nimport { AXDropdownPanelComponent } from './dropdown-panel.component';\n\n@NgModule({\n imports: [\n CommonModule,\n AXCommonModule,\n A11yModule,\n AXDecoratorModule,\n AXPopoverModule,\n AXDropdownPanelComponent,\n AXDropdownBoxComponent,\n ],\n exports: [AXDropdownPanelComponent, AXDropdownBoxComponent],\n providers: [],\n})\nexport class AXDropdownModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"acorex-components-dropdown.mjs","sources":["../../../../packages/components/dropdown/src/lib/dropdown-box.class.ts","../../../../packages/components/dropdown/src/lib/dropdown-box.component.ts","../../../../packages/components/dropdown/src/lib/dropdown-box.component.html","../../../../packages/components/dropdown/src/lib/dropdown-panel.component.ts","../../../../packages/components/dropdown/src/lib/dropdown-panel.component.html","../../../../packages/components/dropdown/src/lib/dropdown.module.ts","../../../../packages/components/dropdown/src/acorex-components-dropdown.ts"],"sourcesContent":["import { AXEvent, MXInteractiveComponent } from '@acorex/cdk/common';\nimport { EventEmitter, Injectable } from '@angular/core';\nimport { AXDropdownBoxComponent } from './dropdown-box.component';\n\n@Injectable()\n/**\n * Base behavior for components that manage a dropdown/popup via an internal `AXDropdownBoxComponent`.\n *\n * Extends MXInteractiveComponent to inherit interactive features (focus, blur, disabled, tabIndex)\n * and exposes a consistent API to open/close/toggle the dropdown as well as events for open/close lifecycle.\n */\nexport abstract class MXDropdownBoxBaseComponent extends MXInteractiveComponent {\n /**\n * Emitted when the dropdown/popup is opened.\n *\n * @event\n */\n onOpened: EventEmitter<AXEvent> = new EventEmitter<AXEvent>();\n\n /**\n * Emits the `onOpened` event with component context.\n * @ignore\n */\n protected emitOnOpenedEvent(): void {\n this.onOpened.emit({\n component: this,\n htmlElement: this.getHostElement(),\n });\n }\n\n /**\n * Emitted when the dropdown/popup is closed.\n *\n * @event\n */\n onClosed: EventEmitter<AXEvent> = new EventEmitter<AXEvent>();\n\n /**\n * Emits the `onClosed` event with component context.\n * @ignore\n */\n protected emitOnClosedEvent(): void {\n this.onClosed.emit({\n component: this,\n htmlElement: this.getHostElement(),\n });\n }\n\n /**\n * Reference to the underlying dropdown controller.\n */\n protected abstract dropdown: AXDropdownBoxComponent;\n\n /**\n * Toggles the dropdown if the component is not disabled.\n *\n * @returns void - No return value. Switches between open and closed states.\n */\n toggle() {\n if (this.disabled !== true) {\n this.dropdown.toggle();\n }\n }\n\n /**\n * Closes the dropdown if it is open and the component is not disabled, then focuses the host.\n *\n * @returns void - No return value. Dropdown is closed and focus returns to the host.\n */\n close() {\n if (!this.isOpen || this.disabled) {\n return;\n }\n this.dropdown.close();\n this.focus();\n }\n\n /**\n * Opens the dropdown if it is not already open and the component is not disabled, then focuses the dropdown.\n *\n * @returns void - No return value. Dropdown becomes open and receives focus.\n */\n open() {\n if (this.isOpen || this.disabled) {\n return;\n }\n this.dropdown.open();\n this.dropdown.focus();\n }\n\n /**\n * Indicates whether the dropdown is currently open.\n *\n * @returns boolean - True if open; otherwise false.\n */\n get isOpen(): boolean {\n return this.dropdown?.isOpen;\n }\n}\n","import { AXComponent, AXEvent, MXInteractiveComponent, MXLookComponent, convertToPlacement } from '@acorex/cdk/common';\nimport { AXPopoverComponent } from '@acorex/components/popover';\nimport { AXPlatform } from '@acorex/core/platform';\nimport {\n Component,\n EventEmitter,\n HostBinding,\n HostListener,\n OnInit,\n Output,\n ViewChild,\n inject,\n input,\n} from '@angular/core';\nimport { classes } from 'polytype';\nimport { startWith } from 'rxjs';\n\n@Component({\n selector: 'ax-dropdown-box',\n templateUrl: 'dropdown-box.component.html',\n inputs: ['disabled', 'look'],\n outputs: ['disabledChange', 'onBlur', 'onFocus', 'onClick'],\n host: { ngSkipHydration: 'true' },\n imports: [AXPopoverComponent],\n\n providers: [{ provide: AXComponent, useExisting: AXDropdownBoxComponent }],\n})\nexport class AXDropdownBoxComponent extends classes(MXInteractiveComponent, MXLookComponent) implements OnInit {\n readonly hasInput = input(true);\n\n readonly popoverWidth = input<string>('auto');\n\n private _platform: AXPlatform = inject(AXPlatform);\n\n /**\n * @ignore\n */\n protected _target: HTMLDivElement;\n\n /**\n * @ignore\n */\n protected _popoverTitle: string;\n\n /**\n * @ignore\n */\n protected _popoverWidth = '180px';\n\n /**\n * @ignore\n */\n protected _placement = convertToPlacement('bottom-start');\n\n /**\n * @ignore\n */\n @ViewChild(AXPopoverComponent, { static: true })\n protected _popover: AXPopoverComponent;\n\n /**\n * Emitted when the drawer is opened.\n *\n * @event\n */\n @Output()\n onOpened: EventEmitter<AXEvent> = new EventEmitter<AXEvent>();\n\n /**\n * Emitted when the drawer is closed.\n *\n * @event\n */\n @Output()\n onClosed: EventEmitter<AXEvent> = new EventEmitter<AXEvent>();\n\n /**\n * @ignore\n */\n override ngOnInit() {\n super.ngOnInit();\n this._target = this.getHostElement();\n this._platform.resize.pipe(startWith()).subscribe(() => {\n if (!this.isActionsheetStyle) this.close();\n });\n }\n\n /**\n * @ignore\n */\n protected _handlePopupOnOpened(e: AXEvent) {\n this._popover?.focus();\n this.onOpened.emit({\n component: this,\n isUserInteraction: e.isUserInteraction,\n });\n }\n\n /**\n * @ignore\n */\n protected _handlePopupOnClosed(e: AXEvent) {\n this.focus();\n this.onClosed.emit({\n component: this,\n isUserInteraction: e.isUserInteraction,\n });\n }\n\n /**\n * @ignore\n */\n @HostListener('keydown', ['$event'])\n protected _handleKeydown(e: KeyboardEvent) {\n if (e.code === 'Space' || e.code === 'Enter') {\n this.open();\n }\n if (e.ctrlKey && e.code === 'ArrowDown') {\n e.preventDefault();\n this.open();\n }\n if (e.code === 'Escape') {\n e.preventDefault();\n this.close();\n }\n }\n\n /**\n * Updates the position of the popover.\n * @ignore\n */\n updatePosition() {\n this._popover?.updatePosition();\n }\n\n /**\n * Toggles the popover open or closed, if not disabled.\n * @ignore\n */\n toggle() {\n if (this.disabled !== true) {\n this._popover.toggle();\n }\n }\n\n /**\n * Closes the popover if it's open and not disabled, then focuses the element.\n * @ignore\n */\n close() {\n if (!this.isOpen || this.disabled) {\n return;\n }\n this._popover.close();\n this.focus();\n }\n\n /**\n * Opens the popover if it's not already open and not disabled, then focuses the popover.\n * @ignore\n */\n open() {\n if (this.isOpen || this.disabled) {\n return;\n }\n this._popover.open();\n this._popover.focus();\n }\n\n /**\n * Indicates if the popover is currently open.\n * @ignore\n */\n get isOpen(): boolean {\n return this._popover?.isOpen;\n }\n\n /**\n * Indicates if the popover is styled as an actionsheet.\n */\n get isActionsheetStyle(): boolean {\n return this._platform.is('SM');\n }\n\n /**\n * @ignore\n */\n @HostBinding('class')\n private get __hostClass(): string {\n return this.hasInput()\n ? `ax-editor-container ax-default ${this.look} ${this.disabled ? 'ax-state-disabled' : ''}`\n : '';\n }\n}\n","<ng-content select=\"[input]\"> </ng-content>\n<ax-popover\n [adaptivityEnabled]=\"true\"\n [target]=\"_target\"\n [placement]=\"_placement\"\n [openOn]=\"'manual'\"\n [closeOn]=\"'clickOut'\"\n [closeOnScroll]=\"!isActionsheetStyle\"\n [width]=\"popoverWidth()\"\n visualContextScope=\"theme\"\n (onOpened)=\"_handlePopupOnOpened($event)\"\n (onClosed)=\"_handlePopupOnClosed($event)\"\n #popover\n>\n <div aria-modal=\"true\" (keydown)=\"_handleKeydown($event)\">\n <ng-content select=\"[panel]\"> </ng-content>\n </div>\n</ax-popover>\n","import {\n Component,\n EventEmitter,\n HostBinding,\n Input,\n OnDestroy,\n Output,\n ViewChild,\n ViewEncapsulation,\n effect,\n inject,\n input,\n} from '@angular/core';\n\nimport {\n AXClosableComponent,\n AXComponent,\n AXEvent,\n MXInteractiveComponent,\n convertToPlacement,\n} from '@acorex/cdk/common';\nimport { AXPopoverComponent } from '@acorex/components/popover';\nimport { AXPlatform, isBrowser } from '@acorex/core/platform';\nimport { Subscription, startWith } from 'rxjs';\n\n/**\n * A panel for displaying dropdown content with configurable width and positioning.\n *\n * Do not compose this component inside `ax-button` for menu triggers; use\n * `AXDropdownButtonComponent` from `@acorex/components/dropdown-button` instead. That pattern is\n * deprecated. `ax-dropdown-panel` remains supported for other hosts (for example `ax-dropdown-box`)\n * and for internal use by `ax-dropdown-button`.\n *\n * @category Components\n */\n@Component({\n selector: 'ax-dropdown-panel',\n templateUrl: './dropdown-panel.component.html',\n styleUrls: ['./dropdown-panel.component.css'],\n inputs: ['isOpen', 'fitParent', 'dropdownWidth', 'position'],\n outputs: ['onOpened', 'onClosed'],\n\n encapsulation: ViewEncapsulation.None,\n providers: [\n {\n provide: AXClosableComponent,\n useExisting: AXDropdownPanelComponent,\n },\n { provide: AXComponent, useExisting: AXDropdownPanelComponent },\n ],\n host: { ngSkipHydration: 'true' },\n imports: [AXPopoverComponent],\n})\nexport class AXDropdownPanelComponent extends MXInteractiveComponent implements OnDestroy {\n protected _platform: AXPlatform = inject(AXPlatform);\n\n /**\n * @ignore\n */\n protected _isMobile = false;\n\n /**\n * @ignore\n */\n protected _popoverTitle: string;\n\n /**\n * @ignore\n */\n protected _placement = convertToPlacement('bottom-start');\n\n readonly placement = input<'bottom-start' | 'bottom-end'>('bottom-start');\n\n #effect = effect(() => {\n if (!this.placement()) return;\n this._placement = convertToPlacement(this.placement());\n });\n\n /**\n * @ignore\n */\n _subs: Subscription[] = [];\n\n /**\n * @ignore\n */\n private __target: HTMLDivElement;\n\n /**\n * Gets the target HTML element for the dropdown panel.\n */\n @Input()\n public get _target(): HTMLDivElement {\n return this.__target;\n }\n\n /**\n * Sets the target HTML element for the dropdown panel.\n */\n public set _target(v: HTMLDivElement) {\n this.__target = v;\n }\n\n /**\n * @ignore\n */\n @ViewChild(AXPopoverComponent)\n protected _popover: AXPopoverComponent;\n\n /**\n * Emitted when the dropdown panel is opened.\n *\n * @event\n */\n @Output()\n onOpened: EventEmitter<AXEvent> = new EventEmitter<AXEvent>();\n\n /**\n * Emitted when the dropdown panel is closed.\n *\n * @event\n */\n @Output()\n onClosed: EventEmitter<AXEvent> = new EventEmitter<AXEvent>();\n\n /**\n * Determines if adaptivity is enabled for the component.\n *\n * @defaultValue false\n */\n @Input()\n adaptivityEnabled = false;\n\n /**\n * @ignore\n */\n constructor() {\n super();\n }\n\n /**\n * @ignore\n */\n override ngOnInit() {\n if (isBrowser()) {\n super.ngOnInit();\n if (!this._target) {\n this._target = this.getHostElement()?.parentElement as HTMLDivElement;\n }\n this._platform.resize.pipe(startWith(null)).subscribe(() => {\n this._isMobile = this._platform.is('SM');\n this._popover?.close();\n });\n }\n }\n\n /**\n * @ignore\n */\n ngAfterViewInit(): void {\n [this._target, this.getHostElement()].forEach((el) => {\n el?.addEventListener('keydown', (e) => {\n if (e.code == 'Escape' && this.isOpen) {\n e.stopPropagation();\n this.close();\n }\n });\n });\n }\n\n /**\n * @ignore\n */\n ngOnDestroy(): void {\n this._subs.forEach((s) => {\n s?.unsubscribe();\n });\n }\n\n /**\n * @ignore\n */\n protected _handlePopupOnOpened(e: AXEvent) {\n this._popover?.focus();\n this.onOpened.emit({\n component: this,\n isUserInteraction: e.isUserInteraction,\n });\n }\n\n /**\n * @ignore\n */\n protected _handlePopupOnClosed(e: AXEvent) {\n this._target.focus();\n this.onClosed.emit({\n component: this,\n isUserInteraction: e.isUserInteraction,\n });\n }\n\n /**\n * Toggles the popover open or closed, if not disabled.\n * @ignore\n */\n toggle() {\n if (this.disabled !== true) {\n this._popover.toggle();\n }\n }\n\n /**\n * Closes the popover if it is open and not disabled.\n * @ignore\n */\n close() {\n if (!this.isOpen || this.disabled) {\n return;\n }\n this._popover.close();\n this.focus();\n }\n\n /**\n * Opens the popover if it is not already open and not disabled.\n * @ignore\n */\n open() {\n if (this.isOpen || this.disabled) {\n return;\n }\n this._popover.open();\n this._popover.focus();\n }\n\n /**\n * Gets whether the popover is currently open.\n * @ignore\n */\n get isOpen(): boolean {\n return this._popover?.isOpen;\n }\n\n /**\n * @ignore\n */\n @HostBinding('class')\n private get __hostClass(): string[] {\n return ['ax-dropdown-panel'];\n }\n}\n","<ax-popover\n [target]=\"_target\"\n [placement]=\"_placement\"\n [openOn]=\"'toggle'\"\n [closeOn]=\"'clickOut'\"\n [adaptivityEnabled]=\"adaptivityEnabled\"\n visualContextScope=\"theme\"\n (onOpened)=\"_handlePopupOnOpened($event)\"\n (onClosed)=\"_handlePopupOnClosed($event)\"\n>\n <div>\n <ng-content> </ng-content>\n </div>\n</ax-popover>\n","import { AXCommonModule } from '@acorex/cdk/common';\nimport { AXDecoratorModule } from '@acorex/components/decorators';\nimport { AXPopoverModule } from '@acorex/components/popover';\nimport { A11yModule } from '@angular/cdk/a11y';\nimport { CommonModule } from '@angular/common';\nimport { NgModule } from '@angular/core';\nimport { AXDropdownBoxComponent } from './dropdown-box.component';\nimport { AXDropdownPanelComponent } from './dropdown-panel.component';\n\n@NgModule({\n imports: [\n CommonModule,\n AXCommonModule,\n A11yModule,\n AXDecoratorModule,\n AXPopoverModule,\n AXDropdownPanelComponent,\n AXDropdownBoxComponent,\n ],\n exports: [AXDropdownPanelComponent, AXDropdownBoxComponent],\n providers: [],\n})\nexport class AXDropdownModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}
@@ -75,13 +75,14 @@ class AXEditorComponent extends classes((MXInputBaseValueComponent), MXLookCompo
75
75
  tools['image'].config = this.imageConfig();
76
76
  }
77
77
  if (tools['codeBox']) {
78
- let theme;
79
- if (this.platform.themeMode() === 'dark' || this.platform.themeMode() === 'light') {
80
- theme = this.platform.themeMode();
81
- }
82
- else {
83
- theme = 'light';
84
- }
78
+ const mode = this.platform.themeMode();
79
+ const theme = mode === 'dark' || mode === 'system-dark'
80
+ ? 'dark'
81
+ : mode === 'light' || mode === 'system-light'
82
+ ? 'light'
83
+ : this.platform.isDark()
84
+ ? 'dark'
85
+ : 'light';
85
86
  tools['codeBox'].config = { useDefaultTheme: theme };
86
87
  }
87
88
  const EditorJS = (await import('@editorjs/editorjs')).default;
@@ -130,8 +131,8 @@ class AXEditorComponent extends classes((MXInputBaseValueComponent), MXLookCompo
130
131
  get __hostName() {
131
132
  return this.name;
132
133
  }
133
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "22.0.8", ngImport: i0, type: AXEditorComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
134
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.2.0", version: "22.0.8", type: AXEditorComponent, isStandalone: true, selector: "ax-editor", inputs: { look: { classPropertyName: "look", publicName: "look", isSignal: false, isRequired: false, transformFunction: null }, readonly: { classPropertyName: "readonly", publicName: "readonly", isSignal: false, isRequired: false, transformFunction: null }, disabled: { classPropertyName: "disabled", publicName: "disabled", isSignal: false, isRequired: false, transformFunction: null }, value: { classPropertyName: "value", publicName: "value", isSignal: false, isRequired: false, transformFunction: null }, modules: { classPropertyName: "modules", publicName: "modules", isSignal: true, isRequired: false, transformFunction: null }, imageConfig: { classPropertyName: "imageConfig", publicName: "imageConfig", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { onValueChanged: "onValueChanged" }, host: { properties: { "class": "this.__hostClass", "attr.name": "this.__hostName" } }, providers: [
134
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "22.1.6", ngImport: i0, type: AXEditorComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
135
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.2.0", version: "22.1.6", type: AXEditorComponent, isStandalone: true, selector: "ax-editor", inputs: { look: { classPropertyName: "look", publicName: "look", isSignal: false, isRequired: false, transformFunction: null }, readonly: { classPropertyName: "readonly", publicName: "readonly", isSignal: false, isRequired: false, transformFunction: null }, disabled: { classPropertyName: "disabled", publicName: "disabled", isSignal: false, isRequired: false, transformFunction: null }, value: { classPropertyName: "value", publicName: "value", isSignal: false, isRequired: false, transformFunction: null }, modules: { classPropertyName: "modules", publicName: "modules", isSignal: true, isRequired: false, transformFunction: null }, imageConfig: { classPropertyName: "imageConfig", publicName: "imageConfig", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { onValueChanged: "onValueChanged" }, host: { properties: { "class": "this.__hostClass", "attr.name": "this.__hostName" } }, providers: [
135
136
  { provide: AXComponent, useExisting: AXEditorComponent },
136
137
  { provide: AXFocusableComponent, useExisting: AXEditorComponent },
137
138
  { provide: AXValuableComponent, useExisting: AXEditorComponent },
@@ -148,7 +149,7 @@ class AXEditorComponent extends classes((MXInputBaseValueComponent), MXLookCompo
148
149
  <div class="ax-error-container"></div>
149
150
  `, isInline: true, styles: ["@layer properties;@layer components{ax-editor{display:block}ax-editor>.ax-editor-container{display:block;height:fit-content!important}ax-editor.ax-rtl .ce-toolbar__actions{right:auto;width:100%}ax-editor.ax-disable{cursor:not-allowed;opacity:50%}ax-editor .ce-inline-toolbar{background-color:rgba(var(--ax-sys-color-surface))!important}ax-editor .colorPlugin svg{fill:rgba(var(--ax-sys-color-on-surface))!important}ax-editor .ce-inline-toolbar{border-style:var(--tw-border-style)!important;border-width:1px!important;border-color:rgba(var(--ax-sys-color-border-surface))!important}ax-editor .ce-toolbar__plus{color:unset!important}ax-editor .ce-popover{background-color:rgba(var(--ax-sys-color-darker-surface))!important}ax-editor .ce-popover-item{color:unset!important}ax-editor .ce-popover--opened{border-style:var(--tw-border-style)!important;border-width:1px!important;border-color:rgba(var(--ax-sys-color-border-surface))!important}ax-editor .ce-popover-item__icon,ax-editor .cdx-search-field{background-color:unset!important}ax-editor .ce-popover-item:hover:not(.ce-popover-item--no-hover){background-color:rgba(var(--ax-sys-color-lightest-surface))!important}ax-editor .ce-toolbar__plus:hover{background-color:rgba(var(--ax-sys-color-darkest-surface))!important}}@property --tw-border-style{syntax: \"*\"; inherits: false; initial-value: solid;}@layer properties{@supports ((-webkit-hyphens: none) and (not (margin-trim: inline))) or ((-moz-orient: inline) and (not (color:rgb(from red r g b)))){*,:before,:after,::backdrop{--tw-border-style: solid}}}\n/*! tailwindcss v4.1.16 | MIT License | https://tailwindcss.com */\n"], encapsulation: i0.ViewEncapsulation.None }); }
150
151
  }
151
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.0.8", ngImport: i0, type: AXEditorComponent, decorators: [{
152
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.1.6", ngImport: i0, type: AXEditorComponent, decorators: [{
152
153
  type: Component,
153
154
  args: [{ selector: 'ax-editor', template: `
154
155
  <div class="ax-editor-container ax-default {{ look }}">
@@ -177,11 +178,11 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.0.8", ngImpor
177
178
  const COMPONENT = [AXEditorComponent];
178
179
  const MODULES = [];
179
180
  class EditorModule {
180
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "22.0.8", ngImport: i0, type: EditorModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
181
- static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "22.0.8", ngImport: i0, type: EditorModule, imports: [AXEditorComponent], exports: [AXEditorComponent] }); }
182
- static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "22.0.8", ngImport: i0, type: EditorModule, imports: [MODULES] }); }
181
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "22.1.6", ngImport: i0, type: EditorModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
182
+ static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "22.1.6", ngImport: i0, type: EditorModule, imports: [AXEditorComponent], exports: [AXEditorComponent] }); }
183
+ static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "22.1.6", ngImport: i0, type: EditorModule, imports: [MODULES] }); }
183
184
  }
184
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.0.8", ngImport: i0, type: EditorModule, decorators: [{
185
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.1.6", ngImport: i0, type: EditorModule, decorators: [{
185
186
  type: NgModule,
186
187
  args: [{
187
188
  imports: [...MODULES, ...COMPONENT],
@@ -1 +1 @@
1
- {"version":3,"file":"acorex-components-editor.mjs","sources":["../../../../packages/components/editor/src/lib/editor.component.ts","../../../../packages/components/editor/src/lib/editor.module.ts","../../../../packages/components/editor/src/acorex-components-editor.ts"],"sourcesContent":["import {\n AXComponent,\n AXFocusableComponent,\n AXValuableComponent,\n MXInputBaseValueComponent,\n MXLookComponent,\n} from '@acorex/cdk/common';\nimport { AXPlatform } from '@acorex/core/platform';\nimport { AXHtmlUtil } from '@acorex/core/utils';\nimport {\n afterNextRender,\n Component,\n ElementRef,\n forwardRef,\n HostBinding,\n inject,\n input,\n viewChild,\n ViewEncapsulation,\n} from '@angular/core';\nimport { NG_VALUE_ACCESSOR } from '@angular/forms';\nimport type EditorJS from '@editorjs/editorjs';\nimport type { OutputData } from '@editorjs/editorjs';\nimport { classes } from 'polytype';\nimport { EditorJsTool, type ImageToolConfig } from './editor.type';\n\n@Component({\n selector: 'ax-editor',\n template: `\n <div class=\"ax-editor-container ax-default {{ look }}\">\n <div class=\"ax-editor-holder\" #r></div>\n </div>\n <ng-content select=\"ax-validation-rule\"> </ng-content>\n <div class=\"ax-error-container\"></div>\n `,\n styleUrl: './editor.component.css',\n providers: [\n { provide: AXComponent, useExisting: AXEditorComponent },\n { provide: AXFocusableComponent, useExisting: AXEditorComponent },\n { provide: AXValuableComponent, useExisting: AXEditorComponent },\n {\n provide: NG_VALUE_ACCESSOR,\n useExisting: forwardRef(() => AXEditorComponent),\n multi: true,\n },\n ],\n inputs: ['look', 'readonly', 'disabled', 'value'],\n outputs: ['onValueChanged'],\n encapsulation: ViewEncapsulation.None,\n})\nexport class AXEditorComponent extends classes(MXInputBaseValueComponent<OutputData>, MXLookComponent) {\n private toolLoaders: Record<EditorJsTool, () => Promise<any>> = {\n header: () => import('@editorjs/header'),\n list: () => import('@editorjs/list'),\n raw: () => import('@editorjs/raw'),\n quote: () => import('@editorjs/quote'),\n codeBox: () => import('@bomdi/codebox'),\n underline: () => import('@editorjs/underline'),\n color: () => import('editorjs-text-color-plugin'),\n image: () => import('@editorjs/image'),\n // linkTool: () => import('@editorjs/link'),\n // table: () => import('@editorjs/table'),\n // attaches: () => import('@editorjs/attaches'),\n // alignmentTuneTool: () => import('editorjs-text-alignment-blocktune'),\n // hyperlink: () => import('editorjs-hyperlink'),\n // delimiter: () => import('@editorjs/delimiter'),\n // inlineCode: () => import('@editorjs/inline-code'),\n // embed: () => import('@editorjs/embed'),\n // warning: () => import('@editorjs/warning'),\n // checklist: () => import('@editorjs/checklist'),\n // marker: () => import('@editorjs/marker'),\n // dragDrop: () => import('editorjs-drag-drop'),\n // undo: () => import('editorjs-undo'),\n // nestedList: () => import('@editorjs/nested-list'),\n // tooltip: () => import('editorjs-tooltip'),\n // paragraphWithAlignment: () => import('editorjs-paragraph-with-alignment'),\n };\n\n private editorHolder = viewChild<ElementRef<HTMLDivElement>>('r');\n\n private platform = inject(AXPlatform);\n\n modules = input<EditorJsTool[]>(['header', 'list', 'codeBox', 'underline', 'color']);\n\n imageConfig = input<ImageToolConfig>();\n\n protected editorClass: EditorJS;\n\n private colorConfig: any = {\n defaultColor: '#FF1300',\n type: 'text',\n customPicker: true,\n colorCollections: [\n '#EC7878',\n '#9C27B0',\n '#673AB7',\n '#3F51B5',\n '#0070FF',\n '#03A9F4',\n '#00BCD4',\n '#4CAF50',\n '#8BC34A',\n '#CDDC39',\n '#FFF',\n ],\n };\n\n private markerConfig: any = {\n defaultColor: '#FFBF00',\n type: 'marker',\n };\n\n private async loadEditorJsTools(selectedTools: EditorJsTool[]): Promise<Record<string, any>> {\n const results = await Promise.all(\n selectedTools.map(async (name) => {\n try {\n const mod = await this.toolLoaders[name]();\n const ToolClass = mod.default || mod;\n return [name, ToolClass];\n } catch (error) {\n console.error(`❌ Failed to load ${name}:`, error);\n return null;\n }\n }),\n );\n\n return Object.fromEntries(results.filter((r) => r).map(([key, value]) => [key, { class: value }]));\n }\n\n #init = afterNextRender(async () => {\n const tools = await this.loadEditorJsTools(this.modules());\n\n if (tools['color']) {\n tools['marker'] = { ...tools['color'] };\n tools['color'].config = this.colorConfig;\n tools['marker'].config = this.markerConfig;\n }\n\n if (tools['image'] && this.imageConfig()) {\n tools['image'].config = this.imageConfig();\n }\n\n if (tools['codeBox']) {\n let theme: any;\n if (this.platform.themeMode() === 'dark' || this.platform.themeMode() === 'light') {\n theme = this.platform.themeMode();\n } else {\n theme = 'light';\n }\n tools['codeBox'].config = { useDefaultTheme: theme };\n }\n\n const EditorJS = (await import('@editorjs/editorjs')).default;\n\n if (tools['codeBox'].class.default) tools['codeBox'].class = tools['codeBox'].class.default;\n\n this.editorClass = new EditorJS({\n holder: this.editorHolder().nativeElement,\n tools,\n onChange: async (e) => {\n const content = await e.saver.save();\n if (content.blocks.length) {\n this.commitValue(content, true);\n } else {\n this.commitValue(null, true);\n }\n },\n data: this.value,\n readOnly: this.readonly || this.disabled,\n });\n });\n\n @HostBinding('class')\n private get __hostClass(): string[] {\n const style = [];\n if (this.disabled) style.push('ax-disable');\n if (AXHtmlUtil.isRtl()) style.push('ax-rtl');\n return style;\n }\n\n @HostBinding('attr.name')\n private get __hostName(): string {\n return this.name;\n }\n}\n","import { NgModule } from '@angular/core';\nimport { AXEditorComponent } from './editor.component';\n\nconst COMPONENT = [AXEditorComponent];\n\nconst MODULES = [];\n\n@NgModule({\n imports: [...MODULES, ...COMPONENT],\n exports: [...COMPONENT],\n providers: [],\n})\nexport class EditorModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"acorex-components-editor.mjs","sources":["../../../../packages/components/editor/src/lib/editor.component.ts","../../../../packages/components/editor/src/lib/editor.module.ts","../../../../packages/components/editor/src/acorex-components-editor.ts"],"sourcesContent":["import {\n AXComponent,\n AXFocusableComponent,\n AXValuableComponent,\n MXInputBaseValueComponent,\n MXLookComponent,\n} from '@acorex/cdk/common';\nimport { AXPlatform } from '@acorex/core/platform';\nimport { AXHtmlUtil } from '@acorex/core/utils';\nimport {\n afterNextRender,\n Component,\n ElementRef,\n forwardRef,\n HostBinding,\n inject,\n input,\n viewChild,\n ViewEncapsulation,\n} from '@angular/core';\nimport { NG_VALUE_ACCESSOR } from '@angular/forms';\nimport type EditorJS from '@editorjs/editorjs';\nimport type { OutputData } from '@editorjs/editorjs';\nimport { classes } from 'polytype';\nimport { EditorJsTool, type ImageToolConfig } from './editor.type';\n\n@Component({\n selector: 'ax-editor',\n template: `\n <div class=\"ax-editor-container ax-default {{ look }}\">\n <div class=\"ax-editor-holder\" #r></div>\n </div>\n <ng-content select=\"ax-validation-rule\"> </ng-content>\n <div class=\"ax-error-container\"></div>\n `,\n styleUrl: './editor.component.css',\n providers: [\n { provide: AXComponent, useExisting: AXEditorComponent },\n { provide: AXFocusableComponent, useExisting: AXEditorComponent },\n { provide: AXValuableComponent, useExisting: AXEditorComponent },\n {\n provide: NG_VALUE_ACCESSOR,\n useExisting: forwardRef(() => AXEditorComponent),\n multi: true,\n },\n ],\n inputs: ['look', 'readonly', 'disabled', 'value'],\n outputs: ['onValueChanged'],\n encapsulation: ViewEncapsulation.None,\n})\nexport class AXEditorComponent extends classes(MXInputBaseValueComponent<OutputData>, MXLookComponent) {\n private toolLoaders: Record<EditorJsTool, () => Promise<any>> = {\n header: () => import('@editorjs/header'),\n list: () => import('@editorjs/list'),\n raw: () => import('@editorjs/raw'),\n quote: () => import('@editorjs/quote'),\n codeBox: () => import('@bomdi/codebox'),\n underline: () => import('@editorjs/underline'),\n color: () => import('editorjs-text-color-plugin'),\n image: () => import('@editorjs/image'),\n // linkTool: () => import('@editorjs/link'),\n // table: () => import('@editorjs/table'),\n // attaches: () => import('@editorjs/attaches'),\n // alignmentTuneTool: () => import('editorjs-text-alignment-blocktune'),\n // hyperlink: () => import('editorjs-hyperlink'),\n // delimiter: () => import('@editorjs/delimiter'),\n // inlineCode: () => import('@editorjs/inline-code'),\n // embed: () => import('@editorjs/embed'),\n // warning: () => import('@editorjs/warning'),\n // checklist: () => import('@editorjs/checklist'),\n // marker: () => import('@editorjs/marker'),\n // dragDrop: () => import('editorjs-drag-drop'),\n // undo: () => import('editorjs-undo'),\n // nestedList: () => import('@editorjs/nested-list'),\n // tooltip: () => import('editorjs-tooltip'),\n // paragraphWithAlignment: () => import('editorjs-paragraph-with-alignment'),\n };\n\n private editorHolder = viewChild<ElementRef<HTMLDivElement>>('r');\n\n private platform = inject(AXPlatform);\n\n modules = input<EditorJsTool[]>(['header', 'list', 'codeBox', 'underline', 'color']);\n\n imageConfig = input<ImageToolConfig>();\n\n protected editorClass: EditorJS;\n\n private colorConfig: any = {\n defaultColor: '#FF1300',\n type: 'text',\n customPicker: true,\n colorCollections: [\n '#EC7878',\n '#9C27B0',\n '#673AB7',\n '#3F51B5',\n '#0070FF',\n '#03A9F4',\n '#00BCD4',\n '#4CAF50',\n '#8BC34A',\n '#CDDC39',\n '#FFF',\n ],\n };\n\n private markerConfig: any = {\n defaultColor: '#FFBF00',\n type: 'marker',\n };\n\n private async loadEditorJsTools(selectedTools: EditorJsTool[]): Promise<Record<string, any>> {\n const results = await Promise.all(\n selectedTools.map(async (name) => {\n try {\n const mod = await this.toolLoaders[name]();\n const ToolClass = mod.default || mod;\n return [name, ToolClass];\n } catch (error) {\n console.error(`❌ Failed to load ${name}:`, error);\n return null;\n }\n }),\n );\n\n return Object.fromEntries(results.filter((r) => r).map(([key, value]) => [key, { class: value }]));\n }\n\n #init = afterNextRender(async () => {\n const tools = await this.loadEditorJsTools(this.modules());\n\n if (tools['color']) {\n tools['marker'] = { ...tools['color'] };\n tools['color'].config = this.colorConfig;\n tools['marker'].config = this.markerConfig;\n }\n\n if (tools['image'] && this.imageConfig()) {\n tools['image'].config = this.imageConfig();\n }\n\n if (tools['codeBox']) {\n const mode = this.platform.themeMode();\n const theme =\n mode === 'dark' || mode === 'system-dark'\n ? 'dark'\n : mode === 'light' || mode === 'system-light'\n ? 'light'\n : this.platform.isDark()\n ? 'dark'\n : 'light';\n tools['codeBox'].config = { useDefaultTheme: theme };\n }\n\n const EditorJS = (await import('@editorjs/editorjs')).default;\n\n if (tools['codeBox'].class.default) tools['codeBox'].class = tools['codeBox'].class.default;\n\n this.editorClass = new EditorJS({\n holder: this.editorHolder().nativeElement,\n tools,\n onChange: async (e) => {\n const content = await e.saver.save();\n if (content.blocks.length) {\n this.commitValue(content, true);\n } else {\n this.commitValue(null, true);\n }\n },\n data: this.value,\n readOnly: this.readonly || this.disabled,\n });\n });\n\n @HostBinding('class')\n private get __hostClass(): string[] {\n const style = [];\n if (this.disabled) style.push('ax-disable');\n if (AXHtmlUtil.isRtl()) style.push('ax-rtl');\n return style;\n }\n\n @HostBinding('attr.name')\n private get __hostName(): string {\n return this.name;\n }\n}\n","import { NgModule } from '@angular/core';\nimport { AXEditorComponent } from './editor.component';\n\nconst COMPONENT = [AXEditorComponent];\n\nconst MODULES = [];\n\n@NgModule({\n imports: [...MODULES, ...COMPONENT],\n exports: [...COMPONENT],\n providers: [],\n})\nexport class EditorModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}