@acorex/components 21.1.0-next.2 → 22.0.0-next.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (218) hide show
  1. package/fesm2022/acorex-components-accordion.mjs +47 -30
  2. package/fesm2022/acorex-components-accordion.mjs.map +1 -1
  3. package/fesm2022/acorex-components-action-sheet.mjs +46 -31
  4. package/fesm2022/acorex-components-action-sheet.mjs.map +1 -1
  5. package/fesm2022/acorex-components-alert.mjs +24 -17
  6. package/fesm2022/acorex-components-alert.mjs.map +1 -1
  7. package/fesm2022/acorex-components-aspect-ratio.mjs +10 -8
  8. package/fesm2022/acorex-components-aspect-ratio.mjs.map +1 -1
  9. package/fesm2022/acorex-components-audio-wave.mjs +13 -10
  10. package/fesm2022/acorex-components-audio-wave.mjs.map +1 -1
  11. package/fesm2022/acorex-components-autocomplete.mjs +24 -17
  12. package/fesm2022/acorex-components-autocomplete.mjs.map +1 -1
  13. package/fesm2022/acorex-components-avatar.mjs +20 -16
  14. package/fesm2022/acorex-components-avatar.mjs.map +1 -1
  15. package/fesm2022/acorex-components-badge.mjs +11 -10
  16. package/fesm2022/acorex-components-badge.mjs.map +1 -1
  17. package/fesm2022/acorex-components-bottom-navigation.mjs +19 -16
  18. package/fesm2022/acorex-components-bottom-navigation.mjs.map +1 -1
  19. package/fesm2022/acorex-components-breadcrumbs.mjs +16 -14
  20. package/fesm2022/acorex-components-breadcrumbs.mjs.map +1 -1
  21. package/fesm2022/acorex-components-button-group.mjs +17 -16
  22. package/fesm2022/acorex-components-button-group.mjs.map +1 -1
  23. package/fesm2022/acorex-components-button.mjs +38 -29
  24. package/fesm2022/acorex-components-button.mjs.map +1 -1
  25. package/fesm2022/acorex-components-calendar.mjs +44 -30
  26. package/fesm2022/acorex-components-calendar.mjs.map +1 -1
  27. package/fesm2022/acorex-components-check-box.mjs +12 -11
  28. package/fesm2022/acorex-components-check-box.mjs.map +1 -1
  29. package/fesm2022/acorex-components-chips.mjs +11 -10
  30. package/fesm2022/acorex-components-chips.mjs.map +1 -1
  31. package/fesm2022/acorex-components-circular-progress.mjs +19 -14
  32. package/fesm2022/acorex-components-circular-progress.mjs.map +1 -1
  33. package/fesm2022/acorex-components-code-editor.mjs +42 -26
  34. package/fesm2022/acorex-components-code-editor.mjs.map +1 -1
  35. package/fesm2022/acorex-components-color-box.mjs +20 -15
  36. package/fesm2022/acorex-components-color-box.mjs.map +1 -1
  37. package/fesm2022/acorex-components-color-palette.mjs +45 -43
  38. package/fesm2022/acorex-components-color-palette.mjs.map +1 -1
  39. package/fesm2022/acorex-components-command.mjs +25 -16
  40. package/fesm2022/acorex-components-command.mjs.map +1 -1
  41. package/fesm2022/acorex-components-comment.mjs +42 -41
  42. package/fesm2022/acorex-components-comment.mjs.map +1 -1
  43. package/fesm2022/{acorex-components-conversation-composer-action-choice-dialog.component-C28hl7iD.mjs → acorex-components-conversation-composer-action-choice-dialog.component-CNHiM1Sp.mjs} +17 -12
  44. package/fesm2022/acorex-components-conversation-composer-action-choice-dialog.component-CNHiM1Sp.mjs.map +1 -0
  45. package/fesm2022/{acorex-components-conversation-open-composer-picker-for-files-Duvap4M4.mjs → acorex-components-conversation-open-composer-picker-for-files-Hh5Oyp3p.mjs} +2 -2
  46. package/fesm2022/{acorex-components-conversation-open-composer-picker-for-files-Duvap4M4.mjs.map → acorex-components-conversation-open-composer-picker-for-files-Hh5Oyp3p.mjs.map} +1 -1
  47. package/fesm2022/acorex-components-conversation.mjs +1620 -1156
  48. package/fesm2022/acorex-components-conversation.mjs.map +1 -1
  49. package/fesm2022/acorex-components-cron-job.mjs +56 -51
  50. package/fesm2022/acorex-components-cron-job.mjs.map +1 -1
  51. package/fesm2022/acorex-components-data-list.mjs +61 -33
  52. package/fesm2022/acorex-components-data-list.mjs.map +1 -1
  53. package/fesm2022/acorex-components-data-pager.mjs +42 -47
  54. package/fesm2022/acorex-components-data-pager.mjs.map +1 -1
  55. package/fesm2022/acorex-components-data-table.mjs +110 -96
  56. package/fesm2022/acorex-components-data-table.mjs.map +1 -1
  57. package/fesm2022/acorex-components-datetime-box.mjs +42 -26
  58. package/fesm2022/acorex-components-datetime-box.mjs.map +1 -1
  59. package/fesm2022/acorex-components-datetime-input.mjs +38 -24
  60. package/fesm2022/acorex-components-datetime-input.mjs.map +1 -1
  61. package/fesm2022/acorex-components-datetime-picker.mjs +50 -30
  62. package/fesm2022/acorex-components-datetime-picker.mjs.map +1 -1
  63. package/fesm2022/acorex-components-decorators.mjs +53 -45
  64. package/fesm2022/acorex-components-decorators.mjs.map +1 -1
  65. package/fesm2022/acorex-components-dialog.mjs +17 -15
  66. package/fesm2022/acorex-components-dialog.mjs.map +1 -1
  67. package/fesm2022/acorex-components-drawer.mjs +33 -24
  68. package/fesm2022/acorex-components-drawer.mjs.map +1 -1
  69. package/fesm2022/acorex-components-dropdown-button.mjs +10 -10
  70. package/fesm2022/acorex-components-dropdown-button.mjs.map +1 -1
  71. package/fesm2022/acorex-components-dropdown.mjs +24 -20
  72. package/fesm2022/acorex-components-dropdown.mjs.map +1 -1
  73. package/fesm2022/acorex-components-editor.mjs +16 -13
  74. package/fesm2022/acorex-components-editor.mjs.map +1 -1
  75. package/fesm2022/acorex-components-fab.mjs +27 -18
  76. package/fesm2022/acorex-components-fab.mjs.map +1 -1
  77. package/fesm2022/acorex-components-file-viewer.mjs +149 -99
  78. package/fesm2022/acorex-components-file-viewer.mjs.map +1 -1
  79. package/fesm2022/acorex-components-flow-chart.mjs +53 -37
  80. package/fesm2022/acorex-components-flow-chart.mjs.map +1 -1
  81. package/fesm2022/acorex-components-form.mjs +45 -34
  82. package/fesm2022/acorex-components-form.mjs.map +1 -1
  83. package/fesm2022/acorex-components-grid-layout-builder.mjs +23 -21
  84. package/fesm2022/acorex-components-grid-layout-builder.mjs.map +1 -1
  85. package/fesm2022/acorex-components-image-editor.mjs +182 -135
  86. package/fesm2022/acorex-components-image-editor.mjs.map +1 -1
  87. package/fesm2022/acorex-components-image.mjs +14 -12
  88. package/fesm2022/acorex-components-image.mjs.map +1 -1
  89. package/fesm2022/acorex-components-json-viewer.mjs +15 -11
  90. package/fesm2022/acorex-components-json-viewer.mjs.map +1 -1
  91. package/fesm2022/acorex-components-kanban.mjs +41 -22
  92. package/fesm2022/acorex-components-kanban.mjs.map +1 -1
  93. package/fesm2022/acorex-components-kbd.mjs +23 -16
  94. package/fesm2022/acorex-components-kbd.mjs.map +1 -1
  95. package/fesm2022/acorex-components-label.mjs +10 -10
  96. package/fesm2022/acorex-components-label.mjs.map +1 -1
  97. package/fesm2022/acorex-components-list.mjs +26 -18
  98. package/fesm2022/acorex-components-list.mjs.map +1 -1
  99. package/fesm2022/acorex-components-loading-dialog.mjs +26 -19
  100. package/fesm2022/acorex-components-loading-dialog.mjs.map +1 -1
  101. package/fesm2022/acorex-components-loading.mjs +20 -20
  102. package/fesm2022/acorex-components-loading.mjs.map +1 -1
  103. package/fesm2022/acorex-components-map.mjs +79 -47
  104. package/fesm2022/acorex-components-map.mjs.map +1 -1
  105. package/fesm2022/acorex-components-media-viewer.mjs +126 -86
  106. package/fesm2022/acorex-components-media-viewer.mjs.map +1 -1
  107. package/fesm2022/acorex-components-menu.mjs +71 -52
  108. package/fesm2022/acorex-components-menu.mjs.map +1 -1
  109. package/fesm2022/{acorex-components-modal-acorex-components-modal-dF5HUEBH.mjs → acorex-components-modal-acorex-components-modal-Djl-uo9b.mjs} +34 -30
  110. package/fesm2022/acorex-components-modal-acorex-components-modal-Djl-uo9b.mjs.map +1 -0
  111. package/fesm2022/{acorex-components-modal-modal-content.component-BGTYje3j.mjs → acorex-components-modal-modal-content.component-BpUsCI8D.mjs} +73 -40
  112. package/fesm2022/acorex-components-modal-modal-content.component-BpUsCI8D.mjs.map +1 -0
  113. package/fesm2022/acorex-components-modal.mjs +1 -1
  114. package/fesm2022/acorex-components-navbar.mjs +9 -9
  115. package/fesm2022/acorex-components-navbar.mjs.map +1 -1
  116. package/fesm2022/acorex-components-notification.mjs +41 -27
  117. package/fesm2022/acorex-components-notification.mjs.map +1 -1
  118. package/fesm2022/acorex-components-number-box.mjs +32 -21
  119. package/fesm2022/acorex-components-number-box.mjs.map +1 -1
  120. package/fesm2022/acorex-components-otp.mjs +18 -14
  121. package/fesm2022/acorex-components-otp.mjs.map +1 -1
  122. package/fesm2022/acorex-components-page.mjs +10 -10
  123. package/fesm2022/acorex-components-paint.mjs +79 -55
  124. package/fesm2022/acorex-components-paint.mjs.map +1 -1
  125. package/fesm2022/acorex-components-password-box.mjs +46 -30
  126. package/fesm2022/acorex-components-password-box.mjs.map +1 -1
  127. package/fesm2022/acorex-components-pdf-reader.mjs +11 -10
  128. package/fesm2022/acorex-components-pdf-reader.mjs.map +1 -1
  129. package/fesm2022/acorex-components-phone-box.mjs +31 -21
  130. package/fesm2022/acorex-components-phone-box.mjs.map +1 -1
  131. package/fesm2022/acorex-components-picker.mjs +44 -31
  132. package/fesm2022/acorex-components-picker.mjs.map +1 -1
  133. package/fesm2022/acorex-components-popover.mjs +14 -12
  134. package/fesm2022/acorex-components-popover.mjs.map +1 -1
  135. package/fesm2022/acorex-components-popup.mjs +32 -24
  136. package/fesm2022/acorex-components-popup.mjs.map +1 -1
  137. package/fesm2022/acorex-components-progress-bar.mjs +9 -9
  138. package/fesm2022/acorex-components-progress-bar.mjs.map +1 -1
  139. package/fesm2022/acorex-components-qrcode.mjs +28 -19
  140. package/fesm2022/acorex-components-qrcode.mjs.map +1 -1
  141. package/fesm2022/acorex-components-query-builder.mjs +19 -14
  142. package/fesm2022/acorex-components-query-builder.mjs.map +1 -1
  143. package/fesm2022/acorex-components-radio.mjs +10 -10
  144. package/fesm2022/acorex-components-radio.mjs.map +1 -1
  145. package/fesm2022/acorex-components-rail-navigation.mjs +44 -30
  146. package/fesm2022/acorex-components-rail-navigation.mjs.map +1 -1
  147. package/fesm2022/acorex-components-range-slider.mjs +60 -35
  148. package/fesm2022/acorex-components-range-slider.mjs.map +1 -1
  149. package/fesm2022/acorex-components-rate-picker.mjs +30 -20
  150. package/fesm2022/acorex-components-rate-picker.mjs.map +1 -1
  151. package/fesm2022/acorex-components-rest-api-generator.mjs +50 -39
  152. package/fesm2022/acorex-components-rest-api-generator.mjs.map +1 -1
  153. package/fesm2022/acorex-components-result.mjs +9 -9
  154. package/fesm2022/acorex-components-result.mjs.map +1 -1
  155. package/fesm2022/acorex-components-routing-progress.mjs +9 -9
  156. package/fesm2022/acorex-components-routing-progress.mjs.map +1 -1
  157. package/fesm2022/acorex-components-rrule.mjs +52 -35
  158. package/fesm2022/acorex-components-rrule.mjs.map +1 -1
  159. package/fesm2022/acorex-components-scheduler-picker.mjs +205 -152
  160. package/fesm2022/acorex-components-scheduler-picker.mjs.map +1 -1
  161. package/fesm2022/acorex-components-scheduler.mjs +504 -275
  162. package/fesm2022/acorex-components-scheduler.mjs.map +1 -1
  163. package/fesm2022/acorex-components-search-box.mjs +14 -12
  164. package/fesm2022/acorex-components-search-box.mjs.map +1 -1
  165. package/fesm2022/acorex-components-select-box.mjs +32 -21
  166. package/fesm2022/acorex-components-select-box.mjs.map +1 -1
  167. package/fesm2022/acorex-components-selection-list-2.mjs +16 -13
  168. package/fesm2022/acorex-components-selection-list-2.mjs.map +1 -1
  169. package/fesm2022/acorex-components-selection-list.mjs +14 -12
  170. package/fesm2022/acorex-components-selection-list.mjs.map +1 -1
  171. package/fesm2022/acorex-components-side-menu.mjs +74 -46
  172. package/fesm2022/acorex-components-side-menu.mjs.map +1 -1
  173. package/fesm2022/acorex-components-sidebar.mjs +89 -63
  174. package/fesm2022/acorex-components-sidebar.mjs.map +1 -1
  175. package/fesm2022/acorex-components-skeleton.mjs +7 -7
  176. package/fesm2022/acorex-components-skeleton.mjs.map +1 -1
  177. package/fesm2022/acorex-components-slider.mjs +10 -10
  178. package/fesm2022/acorex-components-slider.mjs.map +1 -1
  179. package/fesm2022/acorex-components-sliding-item.mjs +31 -22
  180. package/fesm2022/acorex-components-sliding-item.mjs.map +1 -1
  181. package/fesm2022/acorex-components-step-wizard.mjs +66 -41
  182. package/fesm2022/acorex-components-step-wizard.mjs.map +1 -1
  183. package/fesm2022/acorex-components-switch.mjs +13 -13
  184. package/fesm2022/acorex-components-switch.mjs.map +1 -1
  185. package/fesm2022/acorex-components-tabs.mjs +27 -23
  186. package/fesm2022/acorex-components-tabs.mjs.map +1 -1
  187. package/fesm2022/acorex-components-tag-box.mjs +30 -20
  188. package/fesm2022/acorex-components-tag-box.mjs.map +1 -1
  189. package/fesm2022/acorex-components-tag.mjs +9 -9
  190. package/fesm2022/acorex-components-tag.mjs.map +1 -1
  191. package/fesm2022/acorex-components-text-area.mjs +10 -10
  192. package/fesm2022/acorex-components-text-area.mjs.map +1 -1
  193. package/fesm2022/acorex-components-text-box.mjs +14 -12
  194. package/fesm2022/acorex-components-text-box.mjs.map +1 -1
  195. package/fesm2022/acorex-components-time-duration.mjs +46 -28
  196. package/fesm2022/acorex-components-time-duration.mjs.map +1 -1
  197. package/fesm2022/acorex-components-time-line.mjs +27 -20
  198. package/fesm2022/acorex-components-time-line.mjs.map +1 -1
  199. package/fesm2022/acorex-components-toast.mjs +37 -25
  200. package/fesm2022/acorex-components-toast.mjs.map +1 -1
  201. package/fesm2022/acorex-components-toolbar.mjs +17 -13
  202. package/fesm2022/acorex-components-toolbar.mjs.map +1 -1
  203. package/fesm2022/acorex-components-tooltip.mjs +18 -15
  204. package/fesm2022/acorex-components-tooltip.mjs.map +1 -1
  205. package/fesm2022/acorex-components-tree-view.mjs +106 -59
  206. package/fesm2022/acorex-components-tree-view.mjs.map +1 -1
  207. package/fesm2022/acorex-components-uploader.mjs +15 -14
  208. package/fesm2022/acorex-components-uploader.mjs.map +1 -1
  209. package/fesm2022/acorex-components-video-player.mjs +11 -10
  210. package/fesm2022/acorex-components-video-player.mjs.map +1 -1
  211. package/fesm2022/acorex-components-wysiwyg.mjs +67 -53
  212. package/fesm2022/acorex-components-wysiwyg.mjs.map +1 -1
  213. package/package.json +3 -3
  214. package/types/acorex-components-rrule.d.ts +3 -2
  215. package/types/acorex-components-side-menu.d.ts +1 -1
  216. package/fesm2022/acorex-components-conversation-composer-action-choice-dialog.component-C28hl7iD.mjs.map +0 -1
  217. package/fesm2022/acorex-components-modal-acorex-components-modal-dF5HUEBH.mjs.map +0 -1
  218. package/fesm2022/acorex-components-modal-modal-content.component-BGTYje3j.mjs.map +0 -1
@@ -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 ChangeDetectionStrategy,\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 changeDetection: ChangeDetectionStrategy.OnPush,\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 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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"}
@@ -3,18 +3,24 @@ import * as i1$1 from '@acorex/components/decorators';
3
3
  import { AXDecoratorModule } from '@acorex/components/decorators';
4
4
  import { NgTemplateOutlet } from '@angular/common';
5
5
  import * as i0 from '@angular/core';
6
- import { input, model, viewChild, signal, effect, output, ChangeDetectionStrategy, ViewEncapsulation, Component, inject, computed } from '@angular/core';
6
+ import { input, model, viewChild, signal, effect, output, ViewEncapsulation, Component, inject, computed } from '@angular/core';
7
7
  import * as i1 from '@acorex/components/popover';
8
8
  import { AXPopoverComponent, AXPopoverModule } from '@acorex/components/popover';
9
9
 
10
10
  class AXFabComponent {
11
11
  constructor() {
12
- this.label = input(null, ...(ngDevMode ? [{ debugName: "label" }] : /* istanbul ignore next */ []));
13
- this.popupStyle = input('bubble', ...(ngDevMode ? [{ debugName: "popupStyle" }] : /* istanbul ignore next */ []));
14
- this.popupPlacement = model(null, ...(ngDevMode ? [{ debugName: "popupPlacement" }] : /* istanbul ignore next */ []));
15
- this.size = input('md', ...(ngDevMode ? [{ debugName: "size" }] : /* istanbul ignore next */ []));
16
- this.popoverRef = viewChild(AXPopoverComponent, ...(ngDevMode ? [{ debugName: "popoverRef" }] : /* istanbul ignore next */ []));
17
- this.offsetPopover = signal(null, ...(ngDevMode ? [{ debugName: "offsetPopover" }] : /* istanbul ignore next */ []));
12
+ this.label = input(null, /* @ts-ignore */
13
+ ...(ngDevMode ? [{ debugName: "label" }] : /* istanbul ignore next */ []));
14
+ this.popupStyle = input('bubble', /* @ts-ignore */
15
+ ...(ngDevMode ? [{ debugName: "popupStyle" }] : /* istanbul ignore next */ []));
16
+ this.popupPlacement = model(null, /* @ts-ignore */
17
+ ...(ngDevMode ? [{ debugName: "popupPlacement" }] : /* istanbul ignore next */ []));
18
+ this.size = input('md', /* @ts-ignore */
19
+ ...(ngDevMode ? [{ debugName: "size" }] : /* istanbul ignore next */ []));
20
+ this.popoverRef = viewChild(AXPopoverComponent, /* @ts-ignore */
21
+ ...(ngDevMode ? [{ debugName: "popoverRef" }] : /* istanbul ignore next */ []));
22
+ this.offsetPopover = signal(null, /* @ts-ignore */
23
+ ...(ngDevMode ? [{ debugName: "offsetPopover" }] : /* istanbul ignore next */ []));
18
24
  this.#eff = effect(() => {
19
25
  if (this.popupStyle() === 'box') {
20
26
  this.popupPlacement.set('top-end');
@@ -24,7 +30,8 @@ class AXFabComponent {
24
30
  this.popupPlacement.set('top');
25
31
  this.offsetPopover.set(-2);
26
32
  }
27
- }, ...(ngDevMode ? [{ debugName: "#eff" }] : /* istanbul ignore next */ []));
33
+ }, /* @ts-ignore */
34
+ ...(ngDevMode ? [{ debugName: "#eff" }] : /* istanbul ignore next */ []));
28
35
  /**
29
36
  * Fires each time the user clicks the button.
30
37
  * @event
@@ -63,17 +70,18 @@ class AXFabComponent {
63
70
  close() {
64
71
  this.popoverRef().close();
65
72
  }
66
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.9", ngImport: i0, type: AXFabComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
67
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.2.0", version: "21.2.9", type: AXFabComponent, isStandalone: true, selector: "ax-fab", inputs: { label: { classPropertyName: "label", publicName: "label", isSignal: true, isRequired: false, transformFunction: null }, popupStyle: { classPropertyName: "popupStyle", publicName: "popupStyle", isSignal: true, isRequired: false, transformFunction: null }, popupPlacement: { classPropertyName: "popupPlacement", publicName: "popupPlacement", isSignal: true, isRequired: false, transformFunction: null }, size: { classPropertyName: "size", publicName: "size", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { popupPlacement: "popupPlacementChange", onClick: "onClick", onOpened: "onOpened", onClosed: "onClosed" }, viewQueries: [{ propertyName: "popoverRef", first: true, predicate: AXPopoverComponent, descendants: true, isSignal: true }], ngImport: i0, template: "<ax-button class=\"ax-{{ size() }}\" #btn (onClick)=\"onClick.emit($event)\" color=\"primary\" look=\"solid\" [text]=\"label()\">\n <ng-content select=\"ax-icon\"> </ng-content>\n</ax-button>\n\n<ax-popover\n (onOpened)=\"openPopover()\"\n (onClosed)=\"closePopover()\"\n [disablePanelClass]=\"true\"\n [offsetY]=\"offsetPopover()\"\n [placement]=\"popupPlacement()\"\n [target]=\"btn\"\n>\n <div class=\"ax-fab-item-container\">\n <ng-content select=\"ax-fab-item\"> </ng-content>\n </div>\n</ax-popover>\n", styles: ["@layer properties;@layer components{ax-fab ax-button{border-radius:1000vmax}.ax-fab-item-container{display:flex;flex-direction:column;gap:calc(var(--spacing, .25rem) * 1);padding-block:calc(var(--spacing, .25rem) * 2)}.ax-fab-item-container.ax-fab-box-style{background-color:rgba(var(--ax-sys-color-lightest-surface));border-radius:var(--ax-sys-border-radius);border:1px solid rgba(var(--ax-sys-color-border-lightest-surface))}.ax-fab-item-container ax-popover{display:none}.ax-fab-item-container ax-button{border-radius:1000vmax}.ax-fab-item-container ax-text{font-size:var(--text-sm, .875rem);line-height:var(--tw-leading, var(--text-sm--line-height, calc(1.25 / .875)));--tw-leading: calc(var(--spacing, .25rem) * 5);line-height:calc(var(--spacing, .25rem) * 5);--tw-font-weight: var(--font-weight-medium, 500);font-weight:var(--font-weight-medium, 500)}.ax-fab-item-container .ax-fab-box{display:flex;min-width:calc(var(--spacing, .25rem) * 40);align-items:center;gap:calc(var(--spacing, .25rem) * 2);padding-inline:calc(var(--spacing, .25rem) * 3.5);padding-block:calc(var(--spacing, .25rem) * 1)}.ax-fab-item-container .ax-fab-box:hover{cursor:pointer;background-color:rgba(var(--ax-sys-color-surface))}}@property --tw-leading{syntax: \"*\"; inherits: false;}@property --tw-font-weight{syntax: \"*\"; inherits: false;}@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-leading: initial;--tw-font-weight: initial}}}\n/*! tailwindcss v4.1.16 | MIT License | https://tailwindcss.com */\n"], dependencies: [{ kind: "component", type: AXButtonComponent, selector: "ax-button", inputs: ["disabled", "size", "tabIndex", "color", "look", "text", "toggleable", "selected", "iconOnly", "type", "loadingText"], outputs: ["onBlur", "onFocus", "onClick", "selectedChange", "toggleableChange", "lookChange", "colorChange", "disabledChange", "loadingTextChange"] }, { kind: "ngmodule", type: AXPopoverModule }, { kind: "component", type: i1.AXPopoverComponent, selector: "ax-popover", inputs: ["width", "disablePanelClass", "disabled", "offsetX", "offsetY", "target", "placement", "content", "openOn", "closeOn", "hasBackdrop", "openAfter", "closeAfter", "closeOnScroll", "backdropClass", "panelClass", "adaptivityEnabled"], outputs: ["onOpened", "onClosed"] }, { kind: "ngmodule", type: AXDecoratorModule }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
73
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "22.0.8", ngImport: i0, type: AXFabComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
74
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.2.0", version: "22.0.8", type: AXFabComponent, isStandalone: true, selector: "ax-fab", inputs: { label: { classPropertyName: "label", publicName: "label", isSignal: true, isRequired: false, transformFunction: null }, popupStyle: { classPropertyName: "popupStyle", publicName: "popupStyle", isSignal: true, isRequired: false, transformFunction: null }, popupPlacement: { classPropertyName: "popupPlacement", publicName: "popupPlacement", isSignal: true, isRequired: false, transformFunction: null }, size: { classPropertyName: "size", publicName: "size", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { popupPlacement: "popupPlacementChange", onClick: "onClick", onOpened: "onOpened", onClosed: "onClosed" }, viewQueries: [{ propertyName: "popoverRef", first: true, predicate: AXPopoverComponent, descendants: true, isSignal: true }], ngImport: i0, template: "<ax-button class=\"ax-{{ size() }}\" #btn (onClick)=\"onClick.emit($event)\" color=\"primary\" look=\"solid\" [text]=\"label()\">\n <ng-content select=\"ax-icon\"> </ng-content>\n</ax-button>\n\n<ax-popover\n (onOpened)=\"openPopover()\"\n (onClosed)=\"closePopover()\"\n [disablePanelClass]=\"true\"\n [offsetY]=\"offsetPopover()\"\n [placement]=\"popupPlacement()\"\n [target]=\"btn\"\n>\n <div class=\"ax-fab-item-container\">\n <ng-content select=\"ax-fab-item\"> </ng-content>\n </div>\n</ax-popover>\n", styles: ["@layer properties;@layer components{ax-fab ax-button{border-radius:1000vmax}.ax-fab-item-container{display:flex;flex-direction:column;gap:calc(var(--spacing, .25rem) * 1);padding-block:calc(var(--spacing, .25rem) * 2)}.ax-fab-item-container.ax-fab-box-style{background-color:rgba(var(--ax-sys-color-lightest-surface));border-radius:var(--ax-sys-border-radius);border:1px solid rgba(var(--ax-sys-color-border-lightest-surface))}.ax-fab-item-container ax-popover{display:none}.ax-fab-item-container ax-button{border-radius:1000vmax}.ax-fab-item-container ax-text{font-size:var(--text-sm, .875rem);line-height:var(--tw-leading, var(--text-sm--line-height, calc(1.25 / .875)));--tw-leading: calc(var(--spacing, .25rem) * 5);line-height:calc(var(--spacing, .25rem) * 5);--tw-font-weight: var(--font-weight-medium, 500);font-weight:var(--font-weight-medium, 500)}.ax-fab-item-container .ax-fab-box{display:flex;min-width:calc(var(--spacing, .25rem) * 40);align-items:center;gap:calc(var(--spacing, .25rem) * 2);padding-inline:calc(var(--spacing, .25rem) * 3.5);padding-block:calc(var(--spacing, .25rem) * 1)}.ax-fab-item-container .ax-fab-box:hover{cursor:pointer;background-color:rgba(var(--ax-sys-color-surface))}}@property --tw-leading{syntax: \"*\"; inherits: false;}@property --tw-font-weight{syntax: \"*\"; inherits: false;}@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-leading: initial;--tw-font-weight: initial}}}\n/*! tailwindcss v4.1.16 | MIT License | https://tailwindcss.com */\n"], dependencies: [{ kind: "component", type: AXButtonComponent, selector: "ax-button", inputs: ["disabled", "size", "tabIndex", "color", "look", "text", "toggleable", "selected", "iconOnly", "type", "loadingText"], outputs: ["onBlur", "onFocus", "onClick", "selectedChange", "toggleableChange", "lookChange", "colorChange", "disabledChange", "loadingTextChange"] }, { kind: "ngmodule", type: AXPopoverModule }, { kind: "component", type: i1.AXPopoverComponent, selector: "ax-popover", inputs: ["width", "disablePanelClass", "disabled", "offsetX", "offsetY", "target", "placement", "content", "openOn", "closeOn", "hasBackdrop", "openAfter", "closeAfter", "closeOnScroll", "backdropClass", "panelClass", "adaptivityEnabled"], outputs: ["onOpened", "onClosed"] }, { kind: "ngmodule", type: AXDecoratorModule }], encapsulation: i0.ViewEncapsulation.None }); }
68
75
  }
69
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.9", ngImport: i0, type: AXFabComponent, decorators: [{
76
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.0.8", ngImport: i0, type: AXFabComponent, decorators: [{
70
77
  type: Component,
71
- args: [{ selector: 'ax-fab', encapsulation: ViewEncapsulation.None, changeDetection: ChangeDetectionStrategy.OnPush, imports: [AXButtonComponent, AXPopoverModule, AXDecoratorModule], template: "<ax-button class=\"ax-{{ size() }}\" #btn (onClick)=\"onClick.emit($event)\" color=\"primary\" look=\"solid\" [text]=\"label()\">\n <ng-content select=\"ax-icon\"> </ng-content>\n</ax-button>\n\n<ax-popover\n (onOpened)=\"openPopover()\"\n (onClosed)=\"closePopover()\"\n [disablePanelClass]=\"true\"\n [offsetY]=\"offsetPopover()\"\n [placement]=\"popupPlacement()\"\n [target]=\"btn\"\n>\n <div class=\"ax-fab-item-container\">\n <ng-content select=\"ax-fab-item\"> </ng-content>\n </div>\n</ax-popover>\n", styles: ["@layer properties;@layer components{ax-fab ax-button{border-radius:1000vmax}.ax-fab-item-container{display:flex;flex-direction:column;gap:calc(var(--spacing, .25rem) * 1);padding-block:calc(var(--spacing, .25rem) * 2)}.ax-fab-item-container.ax-fab-box-style{background-color:rgba(var(--ax-sys-color-lightest-surface));border-radius:var(--ax-sys-border-radius);border:1px solid rgba(var(--ax-sys-color-border-lightest-surface))}.ax-fab-item-container ax-popover{display:none}.ax-fab-item-container ax-button{border-radius:1000vmax}.ax-fab-item-container ax-text{font-size:var(--text-sm, .875rem);line-height:var(--tw-leading, var(--text-sm--line-height, calc(1.25 / .875)));--tw-leading: calc(var(--spacing, .25rem) * 5);line-height:calc(var(--spacing, .25rem) * 5);--tw-font-weight: var(--font-weight-medium, 500);font-weight:var(--font-weight-medium, 500)}.ax-fab-item-container .ax-fab-box{display:flex;min-width:calc(var(--spacing, .25rem) * 40);align-items:center;gap:calc(var(--spacing, .25rem) * 2);padding-inline:calc(var(--spacing, .25rem) * 3.5);padding-block:calc(var(--spacing, .25rem) * 1)}.ax-fab-item-container .ax-fab-box:hover{cursor:pointer;background-color:rgba(var(--ax-sys-color-surface))}}@property --tw-leading{syntax: \"*\"; inherits: false;}@property --tw-font-weight{syntax: \"*\"; inherits: false;}@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-leading: initial;--tw-font-weight: initial}}}\n/*! tailwindcss v4.1.16 | MIT License | https://tailwindcss.com */\n"] }]
78
+ args: [{ selector: 'ax-fab', encapsulation: ViewEncapsulation.None, imports: [AXButtonComponent, AXPopoverModule, AXDecoratorModule], template: "<ax-button class=\"ax-{{ size() }}\" #btn (onClick)=\"onClick.emit($event)\" color=\"primary\" look=\"solid\" [text]=\"label()\">\n <ng-content select=\"ax-icon\"> </ng-content>\n</ax-button>\n\n<ax-popover\n (onOpened)=\"openPopover()\"\n (onClosed)=\"closePopover()\"\n [disablePanelClass]=\"true\"\n [offsetY]=\"offsetPopover()\"\n [placement]=\"popupPlacement()\"\n [target]=\"btn\"\n>\n <div class=\"ax-fab-item-container\">\n <ng-content select=\"ax-fab-item\"> </ng-content>\n </div>\n</ax-popover>\n", styles: ["@layer properties;@layer components{ax-fab ax-button{border-radius:1000vmax}.ax-fab-item-container{display:flex;flex-direction:column;gap:calc(var(--spacing, .25rem) * 1);padding-block:calc(var(--spacing, .25rem) * 2)}.ax-fab-item-container.ax-fab-box-style{background-color:rgba(var(--ax-sys-color-lightest-surface));border-radius:var(--ax-sys-border-radius);border:1px solid rgba(var(--ax-sys-color-border-lightest-surface))}.ax-fab-item-container ax-popover{display:none}.ax-fab-item-container ax-button{border-radius:1000vmax}.ax-fab-item-container ax-text{font-size:var(--text-sm, .875rem);line-height:var(--tw-leading, var(--text-sm--line-height, calc(1.25 / .875)));--tw-leading: calc(var(--spacing, .25rem) * 5);line-height:calc(var(--spacing, .25rem) * 5);--tw-font-weight: var(--font-weight-medium, 500);font-weight:var(--font-weight-medium, 500)}.ax-fab-item-container .ax-fab-box{display:flex;min-width:calc(var(--spacing, .25rem) * 40);align-items:center;gap:calc(var(--spacing, .25rem) * 2);padding-inline:calc(var(--spacing, .25rem) * 3.5);padding-block:calc(var(--spacing, .25rem) * 1)}.ax-fab-item-container .ax-fab-box:hover{cursor:pointer;background-color:rgba(var(--ax-sys-color-surface))}}@property --tw-leading{syntax: \"*\"; inherits: false;}@property --tw-font-weight{syntax: \"*\"; inherits: false;}@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-leading: initial;--tw-font-weight: initial}}}\n/*! tailwindcss v4.1.16 | MIT License | https://tailwindcss.com */\n"] }]
72
79
  }], propDecorators: { label: [{ type: i0.Input, args: [{ isSignal: true, alias: "label", required: false }] }], popupStyle: [{ type: i0.Input, args: [{ isSignal: true, alias: "popupStyle", required: false }] }], popupPlacement: [{ type: i0.Input, args: [{ isSignal: true, alias: "popupPlacement", required: false }] }, { type: i0.Output, args: ["popupPlacementChange"] }], size: [{ type: i0.Input, args: [{ isSignal: true, alias: "size", required: false }] }], popoverRef: [{ type: i0.ViewChild, args: [i0.forwardRef(() => AXPopoverComponent), { isSignal: true }] }], onClick: [{ type: i0.Output, args: ["onClick"] }], onOpened: [{ type: i0.Output, args: ["onOpened"] }], onClosed: [{ type: i0.Output, args: ["onClosed"] }] } });
73
80
 
74
81
  class AXFabItemComponent {
75
82
  constructor() {
76
- this.label = input(null, ...(ngDevMode ? [{ debugName: "label" }] : /* istanbul ignore next */ []));
83
+ this.label = input(null, /* @ts-ignore */
84
+ ...(ngDevMode ? [{ debugName: "label" }] : /* istanbul ignore next */ []));
77
85
  this.parent = inject(AXFabComponent);
78
86
  this.buttonSize = computed(() => {
79
87
  switch (this.parent.size()) {
@@ -88,7 +96,8 @@ class AXFabItemComponent {
88
96
  case 'xs':
89
97
  return 'xs';
90
98
  }
91
- }, ...(ngDevMode ? [{ debugName: "buttonSize" }] : /* istanbul ignore next */ []));
99
+ }, /* @ts-ignore */
100
+ ...(ngDevMode ? [{ debugName: "buttonSize" }] : /* istanbul ignore next */ []));
92
101
  /**
93
102
  * Fires each time the user clicks the button.
94
103
  * @event
@@ -98,12 +107,12 @@ class AXFabItemComponent {
98
107
  clickHandler() {
99
108
  this.onClick.emit({ component: this });
100
109
  }
101
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.9", ngImport: i0, type: AXFabItemComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
102
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.2.9", type: AXFabItemComponent, isStandalone: true, selector: "ax-fab-item", inputs: { label: { classPropertyName: "label", publicName: "label", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { onClick: "onClick" }, ngImport: i0, template: "<ng-template #iconTpl>\n <ng-content select=\"ax-icon\"></ng-content>\n</ng-template>\n\n@if (parent.popupStyle() === 'bubble') {\n <ax-button class=\"ax-{{ buttonSize() }}\" [text]=\"label()\" (onClick)=\"clickHandler()\">\n <ng-container *ngTemplateOutlet=\"iconTpl\"></ng-container>\n </ax-button>\n} @else {\n <button (click)=\"clickHandler()\" class=\"ax-fab-box\">\n <ng-container *ngTemplateOutlet=\"iconTpl\"></ng-container>\n <ax-text> {{ label() }}</ax-text>\n </button>\n}\n", dependencies: [{ kind: "component", type: AXButtonComponent, selector: "ax-button", inputs: ["disabled", "size", "tabIndex", "color", "look", "text", "toggleable", "selected", "iconOnly", "type", "loadingText"], outputs: ["onBlur", "onFocus", "onClick", "selectedChange", "toggleableChange", "lookChange", "colorChange", "disabledChange", "loadingTextChange"] }, { kind: "ngmodule", type: AXDecoratorModule }, { kind: "component", type: i1$1.AXDecoratorGenericComponent, selector: "ax-footer, ax-header, ax-content, ax-divider, ax-form-hint, ax-prefix, ax-suffix, ax-text, ax-title, ax-subtitle, ax-placeholder, ax-overlay" }, { kind: "directive", type: NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
110
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "22.0.8", ngImport: i0, type: AXFabItemComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
111
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "22.0.8", type: AXFabItemComponent, isStandalone: true, selector: "ax-fab-item", inputs: { label: { classPropertyName: "label", publicName: "label", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { onClick: "onClick" }, ngImport: i0, template: "<ng-template #iconTpl>\n <ng-content select=\"ax-icon\"></ng-content>\n</ng-template>\n\n@if (parent.popupStyle() === 'bubble') {\n <ax-button class=\"ax-{{ buttonSize() }}\" [text]=\"label()\" (onClick)=\"clickHandler()\">\n <ng-container *ngTemplateOutlet=\"iconTpl\"></ng-container>\n </ax-button>\n} @else {\n <button (click)=\"clickHandler()\" class=\"ax-fab-box\">\n <ng-container *ngTemplateOutlet=\"iconTpl\"></ng-container>\n <ax-text> {{ label() }}</ax-text>\n </button>\n}\n", dependencies: [{ kind: "component", type: AXButtonComponent, selector: "ax-button", inputs: ["disabled", "size", "tabIndex", "color", "look", "text", "toggleable", "selected", "iconOnly", "type", "loadingText"], outputs: ["onBlur", "onFocus", "onClick", "selectedChange", "toggleableChange", "lookChange", "colorChange", "disabledChange", "loadingTextChange"] }, { kind: "ngmodule", type: AXDecoratorModule }, { kind: "component", type: i1$1.AXDecoratorGenericComponent, selector: "ax-footer, ax-header, ax-content, ax-divider, ax-form-hint, ax-prefix, ax-suffix, ax-text, ax-title, ax-subtitle, ax-placeholder, ax-overlay" }, { kind: "directive", type: NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }], encapsulation: i0.ViewEncapsulation.None }); }
103
112
  }
104
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.9", ngImport: i0, type: AXFabItemComponent, decorators: [{
113
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.0.8", ngImport: i0, type: AXFabItemComponent, decorators: [{
105
114
  type: Component,
106
- args: [{ selector: 'ax-fab-item', encapsulation: ViewEncapsulation.None, changeDetection: ChangeDetectionStrategy.OnPush, imports: [AXButtonComponent, AXDecoratorModule, NgTemplateOutlet], template: "<ng-template #iconTpl>\n <ng-content select=\"ax-icon\"></ng-content>\n</ng-template>\n\n@if (parent.popupStyle() === 'bubble') {\n <ax-button class=\"ax-{{ buttonSize() }}\" [text]=\"label()\" (onClick)=\"clickHandler()\">\n <ng-container *ngTemplateOutlet=\"iconTpl\"></ng-container>\n </ax-button>\n} @else {\n <button (click)=\"clickHandler()\" class=\"ax-fab-box\">\n <ng-container *ngTemplateOutlet=\"iconTpl\"></ng-container>\n <ax-text> {{ label() }}</ax-text>\n </button>\n}\n" }]
115
+ args: [{ selector: 'ax-fab-item', encapsulation: ViewEncapsulation.None, imports: [AXButtonComponent, AXDecoratorModule, NgTemplateOutlet], template: "<ng-template #iconTpl>\n <ng-content select=\"ax-icon\"></ng-content>\n</ng-template>\n\n@if (parent.popupStyle() === 'bubble') {\n <ax-button class=\"ax-{{ buttonSize() }}\" [text]=\"label()\" (onClick)=\"clickHandler()\">\n <ng-container *ngTemplateOutlet=\"iconTpl\"></ng-container>\n </ax-button>\n} @else {\n <button (click)=\"clickHandler()\" class=\"ax-fab-box\">\n <ng-container *ngTemplateOutlet=\"iconTpl\"></ng-container>\n <ax-text> {{ label() }}</ax-text>\n </button>\n}\n" }]
107
116
  }], propDecorators: { label: [{ type: i0.Input, args: [{ isSignal: true, alias: "label", required: false }] }], onClick: [{ type: i0.Output, args: ["onClick"] }] } });
108
117
 
109
118
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"acorex-components-fab.mjs","sources":["../../../../packages/components/fab/src/lib/fab.component.ts","../../../../packages/components/fab/src/lib/fab.component.html","../../../../packages/components/fab/src/lib/fab-item/fab-item.component.ts","../../../../packages/components/fab/src/lib/fab-item/fab-item.component.html","../../../../packages/components/fab/src/acorex-components-fab.ts"],"sourcesContent":["import { AXClickEvent, AXEvent, AXPlacementType } from '@acorex/cdk/common';\nimport { AXButtonComponent } from '@acorex/components/button';\nimport { AXDecoratorModule } from '@acorex/components/decorators';\nimport { AXPopoverComponent, AXPopoverModule } from '@acorex/components/popover';\nimport {\n ChangeDetectionStrategy,\n Component,\n effect,\n input,\n model,\n output,\n signal,\n viewChild,\n ViewEncapsulation,\n} from '@angular/core';\n\n@Component({\n selector: 'ax-fab',\n templateUrl: './fab.component.html',\n styleUrls: ['./fab.component.css'],\n encapsulation: ViewEncapsulation.None,\n changeDetection: ChangeDetectionStrategy.OnPush,\n imports: [AXButtonComponent, AXPopoverModule, AXDecoratorModule],\n})\nexport class AXFabComponent {\n label = input<string>(null);\n\n popupStyle = input<'bubble' | 'box'>('bubble');\n\n popupPlacement = model<AXPlacementType>(null);\n\n size = input<'xs' | 'sm' | 'md' | 'lg' | 'xl'>('md');\n\n protected popoverRef = viewChild(AXPopoverComponent);\n\n protected offsetPopover = signal<number>(null);\n\n #eff = effect(() => {\n if (this.popupStyle() === 'box') {\n this.popupPlacement.set('top-end');\n this.offsetPopover.set(-10);\n } else {\n this.popupPlacement.set('top');\n this.offsetPopover.set(-2);\n }\n });\n\n /**\n * Fires each time the user clicks the button.\n * @event\n */\n onClick = output<AXClickEvent>();\n\n /**\n * Emits when the popover is opened.\n * @event\n */\n onOpened = output<AXEvent>();\n\n /**\n * Emits when the popover is closed.\n * @event\n */\n onClosed = output<AXEvent>();\n\n private addStyleClass() {\n const fabItemContainer = document.querySelector('.ax-fab-item-container');\n if (!fabItemContainer) return;\n if (this.popupStyle() === 'box') {\n fabItemContainer.classList.add('ax-fab-box-style');\n } else {\n fabItemContainer.classList.add('ax-fab-bubble-style');\n }\n }\n\n protected openPopover() {\n this.addStyleClass();\n this.onOpened.emit({ component: this });\n }\n\n protected closePopover() {\n this.onClosed.emit({ component: this });\n }\n\n public close() {\n this.popoverRef().close();\n }\n}\n","<ax-button class=\"ax-{{ size() }}\" #btn (onClick)=\"onClick.emit($event)\" color=\"primary\" look=\"solid\" [text]=\"label()\">\n <ng-content select=\"ax-icon\"> </ng-content>\n</ax-button>\n\n<ax-popover\n (onOpened)=\"openPopover()\"\n (onClosed)=\"closePopover()\"\n [disablePanelClass]=\"true\"\n [offsetY]=\"offsetPopover()\"\n [placement]=\"popupPlacement()\"\n [target]=\"btn\"\n>\n <div class=\"ax-fab-item-container\">\n <ng-content select=\"ax-fab-item\"> </ng-content>\n </div>\n</ax-popover>\n","import { AXClickEvent } from '@acorex/cdk/common';\nimport { AXButtonComponent } from '@acorex/components/button';\nimport { AXDecoratorModule } from '@acorex/components/decorators';\nimport { NgTemplateOutlet } from '@angular/common';\nimport { ChangeDetectionStrategy, Component, computed, inject, input, output, ViewEncapsulation } from '@angular/core';\nimport { AXFabComponent } from '../fab.component';\n\n@Component({\n selector: 'ax-fab-item',\n templateUrl: './fab-item.component.html',\n encapsulation: ViewEncapsulation.None,\n changeDetection: ChangeDetectionStrategy.OnPush,\n imports: [AXButtonComponent, AXDecoratorModule, NgTemplateOutlet],\n})\nexport class AXFabItemComponent {\n label = input<string>(null);\n\n protected parent = inject(AXFabComponent);\n\n protected buttonSize = computed(() => {\n switch (this.parent.size()) {\n case 'xl':\n return 'lg';\n case 'lg':\n return 'md';\n case 'md':\n return 'sm';\n case 'sm':\n return 'xs';\n case 'xs':\n return 'xs';\n }\n });\n\n /**\n * Fires each time the user clicks the button.\n * @event\n */\n onClick = output<AXClickEvent>();\n\n protected clickHandler() {\n this.onClick.emit({ component: this });\n }\n}\n","<ng-template #iconTpl>\n <ng-content select=\"ax-icon\"></ng-content>\n</ng-template>\n\n@if (parent.popupStyle() === 'bubble') {\n <ax-button class=\"ax-{{ buttonSize() }}\" [text]=\"label()\" (onClick)=\"clickHandler()\">\n <ng-container *ngTemplateOutlet=\"iconTpl\"></ng-container>\n </ax-button>\n} @else {\n <button (click)=\"clickHandler()\" class=\"ax-fab-box\">\n <ng-container *ngTemplateOutlet=\"iconTpl\"></ng-container>\n <ax-text> {{ label() }}</ax-text>\n </button>\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"acorex-components-fab.mjs","sources":["../../../../packages/components/fab/src/lib/fab.component.ts","../../../../packages/components/fab/src/lib/fab.component.html","../../../../packages/components/fab/src/lib/fab-item/fab-item.component.ts","../../../../packages/components/fab/src/lib/fab-item/fab-item.component.html","../../../../packages/components/fab/src/acorex-components-fab.ts"],"sourcesContent":["import { AXClickEvent, AXEvent, AXPlacementType } from '@acorex/cdk/common';\nimport { AXButtonComponent } from '@acorex/components/button';\nimport { AXDecoratorModule } from '@acorex/components/decorators';\nimport { AXPopoverComponent, AXPopoverModule } from '@acorex/components/popover';\nimport { Component, effect, input, model, output, signal, viewChild, ViewEncapsulation } from '@angular/core';\n\n@Component({\n selector: 'ax-fab',\n templateUrl: './fab.component.html',\n styleUrls: ['./fab.component.css'],\n encapsulation: ViewEncapsulation.None,\n\n imports: [AXButtonComponent, AXPopoverModule, AXDecoratorModule],\n})\nexport class AXFabComponent {\n label = input<string>(null);\n\n popupStyle = input<'bubble' | 'box'>('bubble');\n\n popupPlacement = model<AXPlacementType>(null);\n\n size = input<'xs' | 'sm' | 'md' | 'lg' | 'xl'>('md');\n\n protected popoverRef = viewChild(AXPopoverComponent);\n\n protected offsetPopover = signal<number>(null);\n\n #eff = effect(() => {\n if (this.popupStyle() === 'box') {\n this.popupPlacement.set('top-end');\n this.offsetPopover.set(-10);\n } else {\n this.popupPlacement.set('top');\n this.offsetPopover.set(-2);\n }\n });\n\n /**\n * Fires each time the user clicks the button.\n * @event\n */\n onClick = output<AXClickEvent>();\n\n /**\n * Emits when the popover is opened.\n * @event\n */\n onOpened = output<AXEvent>();\n\n /**\n * Emits when the popover is closed.\n * @event\n */\n onClosed = output<AXEvent>();\n\n private addStyleClass() {\n const fabItemContainer = document.querySelector('.ax-fab-item-container');\n if (!fabItemContainer) return;\n if (this.popupStyle() === 'box') {\n fabItemContainer.classList.add('ax-fab-box-style');\n } else {\n fabItemContainer.classList.add('ax-fab-bubble-style');\n }\n }\n\n protected openPopover() {\n this.addStyleClass();\n this.onOpened.emit({ component: this });\n }\n\n protected closePopover() {\n this.onClosed.emit({ component: this });\n }\n\n public close() {\n this.popoverRef().close();\n }\n}\n","<ax-button class=\"ax-{{ size() }}\" #btn (onClick)=\"onClick.emit($event)\" color=\"primary\" look=\"solid\" [text]=\"label()\">\n <ng-content select=\"ax-icon\"> </ng-content>\n</ax-button>\n\n<ax-popover\n (onOpened)=\"openPopover()\"\n (onClosed)=\"closePopover()\"\n [disablePanelClass]=\"true\"\n [offsetY]=\"offsetPopover()\"\n [placement]=\"popupPlacement()\"\n [target]=\"btn\"\n>\n <div class=\"ax-fab-item-container\">\n <ng-content select=\"ax-fab-item\"> </ng-content>\n </div>\n</ax-popover>\n","import { AXClickEvent } from '@acorex/cdk/common';\nimport { AXButtonComponent } from '@acorex/components/button';\nimport { AXDecoratorModule } from '@acorex/components/decorators';\nimport { NgTemplateOutlet } from '@angular/common';\nimport { Component, computed, inject, input, output, ViewEncapsulation } from '@angular/core';\nimport { AXFabComponent } from '../fab.component';\n\n@Component({\n selector: 'ax-fab-item',\n templateUrl: './fab-item.component.html',\n encapsulation: ViewEncapsulation.None,\n\n imports: [AXButtonComponent, AXDecoratorModule, NgTemplateOutlet],\n})\nexport class AXFabItemComponent {\n label = input<string>(null);\n\n protected parent = inject(AXFabComponent);\n\n protected buttonSize = computed(() => {\n switch (this.parent.size()) {\n case 'xl':\n return 'lg';\n case 'lg':\n return 'md';\n case 'md':\n return 'sm';\n case 'sm':\n return 'xs';\n case 'xs':\n return 'xs';\n }\n });\n\n /**\n * Fires each time the user clicks the button.\n * @event\n */\n onClick = output<AXClickEvent>();\n\n protected clickHandler() {\n this.onClick.emit({ component: this });\n }\n}\n","<ng-template #iconTpl>\n <ng-content select=\"ax-icon\"></ng-content>\n</ng-template>\n\n@if (parent.popupStyle() === 'bubble') {\n <ax-button class=\"ax-{{ buttonSize() }}\" [text]=\"label()\" (onClick)=\"clickHandler()\">\n <ng-container *ngTemplateOutlet=\"iconTpl\"></ng-container>\n </ax-button>\n} @else {\n <button (click)=\"clickHandler()\" class=\"ax-fab-box\">\n <ng-container *ngTemplateOutlet=\"iconTpl\"></ng-container>\n <ax-text> {{ label() }}</ax-text>\n </button>\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}