@acorex/platform 18.1.5 → 18.1.6

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 (350) hide show
  1. package/common/lib/app/application.types.d.ts +1 -1
  2. package/common/lib/common.module.d.ts +3 -6
  3. package/common/lib/data/data-provider.types.d.ts +1 -0
  4. package/common/lib/data/data.types.d.ts +14 -0
  5. package/common/lib/data/dexie-storage.service.d.ts +6 -20
  6. package/common/lib/data/entity-data-seeder.d.ts +12 -0
  7. package/common/lib/data/entity-storage-service.d.ts +59 -15
  8. package/common/lib/data/index.d.ts +2 -1
  9. package/common/lib/layout/menu/index.d.ts +2 -0
  10. package/common/lib/layout/menu/menu.provider.d.ts +15 -0
  11. package/common/lib/layout/menu/menu.service.d.ts +12 -0
  12. package/common/lib/layout/menu/menu.types.d.ts +8 -1
  13. package/common/lib/schema/widgets/dateTime/dateTime-widget-filter.component.d.ts +2 -0
  14. package/common/lib/schema/widgets/lookup/lookup-widget-edit.component.d.ts +1 -0
  15. package/common/lib/settings/settings.service.d.ts +3 -3
  16. package/common/lib/store/common.actions.d.ts +1 -8
  17. package/common/lib/store/common.effects.d.ts +3 -6
  18. package/common/lib/workflows/common.workflow.d.ts +2 -0
  19. package/core/utils/data-conditioner.d.ts +2 -5
  20. package/esm2022/common/lib/app/app-startup.service.mjs +3 -3
  21. package/esm2022/common/lib/app/application.types.mjs +1 -1
  22. package/esm2022/common/lib/common.module.mjs +38 -31
  23. package/esm2022/common/lib/data/data-provider.types.mjs +1 -1
  24. package/esm2022/common/lib/data/data.types.mjs +2 -0
  25. package/esm2022/common/lib/data/dexie-storage.service.mjs +95 -83
  26. package/esm2022/common/lib/data/entity-data-seeder.mjs +25 -0
  27. package/esm2022/common/lib/data/entity-storage-service.mjs +59 -1
  28. package/esm2022/common/lib/data/index.mjs +3 -2
  29. package/esm2022/common/lib/layout/menu/index.mjs +3 -1
  30. package/esm2022/common/lib/layout/menu/menu.provider.mjs +60 -0
  31. package/esm2022/common/lib/layout/menu/menu.service.mjs +73 -0
  32. package/esm2022/common/lib/layout/menu/menu.types.mjs +1 -1
  33. package/esm2022/common/lib/layout/theme/store/admin-layout.reducers.mjs +24 -19
  34. package/esm2022/common/lib/schema/widgets/avatar/avatar-widget-edit.component.mjs +8 -2
  35. package/esm2022/common/lib/schema/widgets/common-widget-filter/boolean-widget-filter.component.mjs +2 -2
  36. package/esm2022/common/lib/schema/widgets/common-widget-filter/number-widget-filter.component.mjs +2 -2
  37. package/esm2022/common/lib/schema/widgets/common-widget-filter/string-widget-filter.component.mjs +2 -2
  38. package/esm2022/common/lib/schema/widgets/dateTime/dateTime-widget-filter.component.mjs +27 -5
  39. package/esm2022/common/lib/schema/widgets/gallery/gallery-widget-edit.component.mjs +3 -3
  40. package/esm2022/common/lib/schema/widgets/gallery/gallery-widget-view.component.mjs +3 -3
  41. package/esm2022/common/lib/schema/widgets/lookup/lookup-widget-edit.component.mjs +2 -2
  42. package/esm2022/common/lib/schema/widgets/lookup/lookup-widget-filter.component.mjs +3 -3
  43. package/esm2022/common/lib/settings/settings.service.mjs +10 -7
  44. package/esm2022/common/lib/store/common.actions.mjs +2 -4
  45. package/esm2022/common/lib/store/common.effects.mjs +8 -9
  46. package/esm2022/common/lib/workflows/common.workflow.mjs +7 -4
  47. package/esm2022/core/utils/data-conditioner.mjs +3 -3
  48. package/esm2022/layout/builder/lib/builder/builder.service.mjs +8 -1
  49. package/esm2022/layout/builder/lib/builder/widget-catalog.mjs +2 -1
  50. package/esm2022/layout/builder/lib/builder/widget-container.component.mjs +12 -8
  51. package/esm2022/layout/builder/lib/builder/widget-renderer.component.directive.mjs +2 -1
  52. package/esm2022/layout/builder/lib/builder/widget.types.mjs +12 -8
  53. package/esm2022/layout/designer/index.mjs +3 -1
  54. package/esm2022/layout/designer/lib/designer/components/board/board.component.mjs +7 -3
  55. package/esm2022/layout/designer/lib/designer/components/header-menu/header-menu.component.mjs +66 -5
  56. package/esm2022/layout/designer/lib/designer/components/size-mode/view-size-toolbar.component.mjs +54 -0
  57. package/esm2022/layout/designer/lib/designer/components/widget-picker/widget-picker.component.mjs +24 -15
  58. package/esm2022/layout/designer/lib/designer/designer.component.mjs +17 -56
  59. package/esm2022/layout/designer/lib/designer/shared/designer.service.mjs +27 -5
  60. package/esm2022/layout/designer/lib/designer/shared/widget-designer-renderer.directive.mjs +1 -1
  61. package/esm2022/layout/designer/lib/preview/preview-frame.component.mjs +75 -0
  62. package/esm2022/layout/designer/lib/preview/preview-viewer.component.mjs +58 -0
  63. package/esm2022/layout/designer/lib/preview/preview.component.mjs +67 -9
  64. package/esm2022/layout/entity/lib/entity-detail-list.viewmodel.mjs +48 -36
  65. package/esm2022/layout/entity/lib/entity-master-list.viewmodel.mjs +3 -3
  66. package/esm2022/layout/entity/lib/entity-master-single.viewmodel.mjs +1 -2
  67. package/esm2022/layout/entity/lib/entity-registery.service.mjs +5 -5
  68. package/esm2022/layout/entity/lib/entity.config.mjs +28 -2
  69. package/esm2022/layout/entity/lib/widgets/lookup-widget/lookup-widget-edit.component.mjs +5 -5
  70. package/esm2022/layout/entity/lib/widgets/lookup-widget/lookup-widget-selector.viewmodel.mjs +2 -2
  71. package/esm2022/layout/entity/lib/widgets/lookup-widget/lookup-widget-view.component.mjs +4 -4
  72. package/esm2022/layout/entity/lib/widgets/widget-selector/widget-selector-widget.config.mjs +2 -1
  73. package/esm2022/layout/entity/lib/workflows/create-entity.workflow.mjs +3 -3
  74. package/esm2022/layout/entity/lib/workflows/delete-entity.workflow.mjs +18 -9
  75. package/esm2022/layout/entity/lib/workflows/modify-section.workflow.mjs +7 -5
  76. package/esm2022/layouts/lib/admin/entity-layout/entity-details-view/entity-details-view.component.mjs +3 -3
  77. package/esm2022/layouts/lib/admin/entity-layout/entity-list-view/components/entity-custom-view/entity-custom-view.component.mjs +1 -1
  78. package/esm2022/layouts/lib/admin/entity-layout/entity-list-view/components/list-view-option-conditions/list-view-option-conditions.component.mjs +1 -1
  79. package/esm2022/layouts/lib/admin/entity-layout/entity-list-view/entity-list-view.component.mjs +3 -3
  80. package/esm2022/layouts/lib/admin/entity-layout/entity-list-view/list-view.config.mjs +9 -5
  81. package/esm2022/layouts/lib/admin/entity-layout/workflows/delete-entity.workflow.mjs +2 -2
  82. package/esm2022/layouts/lib/admin/entity-layout/workflows/modify-entity.workflow.mjs +5 -3
  83. package/esm2022/themes/default/lib/layouts/entity-layouts/entity-detail-list-view/entity-detail-list-view.component.mjs +10 -7
  84. package/esm2022/themes/default/lib/layouts/entity-layouts/entity-master-list-view/entity-master-list-view.component.mjs +13 -9
  85. package/esm2022/themes/default/lib/layouts/entity-layouts/entity-master-modify-view/entity-master-modify-view.component.mjs +3 -3
  86. package/esm2022/themes/default/lib/layouts/entity-layouts/entity-master-single-view/entity-master-single-view.component.mjs +11 -8
  87. package/esm2022/themes/default/lib/layouts/entity-layouts/entity-master-single-view/overview/entity-single-overview.component.mjs +1 -1
  88. package/esm2022/themes/default/lib/layouts/root-layout/components/menu/root-menu.component.mjs +39 -0
  89. package/esm2022/themes/default/lib/layouts/root-layout/index.mjs +2 -1
  90. package/esm2022/themes/default/lib/layouts/root-layout/root-layout.component.mjs +13 -31
  91. package/esm2022/themes/default/lib/layouts/root-layout/root-layout.module.mjs +5 -2
  92. package/esm2022/themes/shared/lib/comments/comment-list-view.component.mjs +28 -20
  93. package/esm2022/themes/shared/lib/comments/comments.service.mjs +3 -2
  94. package/esm2022/themes/shared/lib/comments/comments.type.mjs +1 -1
  95. package/esm2022/themes/shared/lib/components/theme-slot.component.mjs +85 -88
  96. package/esm2022/themes/shared/lib/services/theme.service.mjs +20 -13
  97. package/esm2022/themes/shared/lib/shared.module.mjs +5 -9
  98. package/esm2022/widgets/lib/widgets/advance/gallery/gallery-widget-edit.component.mjs +3 -3
  99. package/esm2022/widgets/lib/widgets/advance/gallery/gallery-widget-view.component.mjs +3 -3
  100. package/esm2022/widgets/lib/widgets/advance/qrcode/qrcode-widget-view.component.mjs +4 -4
  101. package/esm2022/widgets/lib/widgets/editors/color/color-box-widget-column.component.mjs +26 -5
  102. package/esm2022/widgets/lib/widgets/editors/contact/contact-widget-column.component.mjs +18 -4
  103. package/esm2022/widgets/lib/widgets/editors/contact/contact-widget-edit.component.mjs +7 -10
  104. package/esm2022/widgets/lib/widgets/editors/contact/contact-widget.config.mjs +2 -6
  105. package/esm2022/widgets/lib/widgets/editors/date-time/date-time-box-widget-column.component.mjs +18 -8
  106. package/esm2022/widgets/lib/widgets/editors/large-text/large-text-widget-edit.component.mjs +1 -1
  107. package/esm2022/widgets/lib/widgets/editors/large-text/large-text-widget-view.component.mjs +1 -1
  108. package/esm2022/widgets/lib/widgets/editors/rich-text/rich-text-widget-edit.component.mjs +16 -11
  109. package/esm2022/widgets/lib/widgets/editors/select/select-box-widget-view.component.mjs +15 -19
  110. package/esm2022/widgets/lib/widgets/editors/select/select-box-widget.config.mjs +3 -2
  111. package/esm2022/widgets/lib/widgets/index.mjs +2 -1
  112. package/esm2022/widgets/lib/widgets/layout/block/block-widget-view.component.mjs +36 -15
  113. package/esm2022/widgets/lib/widgets/layout/grid/grid-widget-designer.component.mjs +2 -2
  114. package/esm2022/widgets/lib/widgets/layout/repeater/repeater-widget-edit.component.mjs +42 -10
  115. package/esm2022/widgets/lib/widgets/layout/template/index.mjs +5 -0
  116. package/esm2022/widgets/lib/widgets/layout/template/template-widget-designer.component.mjs +70 -0
  117. package/esm2022/widgets/lib/widgets/layout/template/template-widget-edit.component.mjs +55 -0
  118. package/esm2022/widgets/lib/widgets/layout/template/template-widget-view.component.mjs +56 -0
  119. package/esm2022/widgets/lib/widgets/layout/template/template-widget.config.mjs +30 -0
  120. package/esm2022/widgets/lib/widgets/layout/template/template.provider.mjs +41 -0
  121. package/esm2022/widgets/lib/widgets.module.mjs +4 -1
  122. package/fesm2022/{acorex-platform-common-avatar-widget-edit.component-CSSz-dqg.mjs → acorex-platform-common-avatar-widget-edit.component-WAlG5E_9.mjs} +15 -6
  123. package/fesm2022/acorex-platform-common-avatar-widget-edit.component-WAlG5E_9.mjs.map +1 -0
  124. package/fesm2022/{acorex-platform-common-avatar-widget-view.component-WofmamJK.mjs → acorex-platform-common-avatar-widget-view.component-DRyB3UWf.mjs} +8 -5
  125. package/fesm2022/acorex-platform-common-avatar-widget-view.component-DRyB3UWf.mjs.map +1 -0
  126. package/fesm2022/{acorex-platform-common-boolean-widget-filter.component-ByoMpVAs.mjs → acorex-platform-common-boolean-widget-filter.component-DY4oTjC-.mjs} +8 -6
  127. package/fesm2022/acorex-platform-common-boolean-widget-filter.component-DY4oTjC-.mjs.map +1 -0
  128. package/fesm2022/{acorex-platform-common-checkbox-widget-column.component-BAK1Wlh_.mjs → acorex-platform-common-checkbox-widget-column.component-NSXcrUwU.mjs} +8 -5
  129. package/fesm2022/{acorex-platform-common-checkbox-widget-column.component-BAK1Wlh_.mjs.map → acorex-platform-common-checkbox-widget-column.component-NSXcrUwU.mjs.map} +1 -1
  130. package/fesm2022/{acorex-platform-common-checkbox-widget-edit.component-C1PgHZsE.mjs → acorex-platform-common-checkbox-widget-edit.component-BU7qV5Cm.mjs} +8 -5
  131. package/fesm2022/acorex-platform-common-checkbox-widget-edit.component-BU7qV5Cm.mjs.map +1 -0
  132. package/fesm2022/{acorex-platform-common-checkbox-widget-view.component-B4BG4mCQ.mjs → acorex-platform-common-checkbox-widget-view.component-2Du2IzDS.mjs} +8 -5
  133. package/fesm2022/{acorex-platform-common-checkbox-widget-view.component-B4BG4mCQ.mjs.map → acorex-platform-common-checkbox-widget-view.component-2Du2IzDS.mjs.map} +1 -1
  134. package/fesm2022/{acorex-platform-common-dateTime-widget-column.component-BnW8m1wn.mjs → acorex-platform-common-dateTime-widget-column.component-Dd7fgwu3.mjs} +8 -5
  135. package/fesm2022/acorex-platform-common-dateTime-widget-column.component-Dd7fgwu3.mjs.map +1 -0
  136. package/fesm2022/{acorex-platform-common-dateTime-widget-edit.component-DCYX2iyT.mjs → acorex-platform-common-dateTime-widget-edit.component-B4AelVJp.mjs} +8 -5
  137. package/fesm2022/{acorex-platform-common-dateTime-widget-edit.component-DCYX2iyT.mjs.map → acorex-platform-common-dateTime-widget-edit.component-B4AelVJp.mjs.map} +1 -1
  138. package/fesm2022/{acorex-platform-common-dateTime-widget-filter.component-Dbxz84tm.mjs → acorex-platform-common-dateTime-widget-filter.component-Ytm-TwOP.mjs} +33 -9
  139. package/fesm2022/acorex-platform-common-dateTime-widget-filter.component-Ytm-TwOP.mjs.map +1 -0
  140. package/fesm2022/{acorex-platform-common-dateTime-widget-view.component-Bg1h8xAj.mjs → acorex-platform-common-dateTime-widget-view.component-BKdqOPkb.mjs} +8 -5
  141. package/fesm2022/{acorex-platform-common-dateTime-widget-view.component-Bg1h8xAj.mjs.map → acorex-platform-common-dateTime-widget-view.component-BKdqOPkb.mjs.map} +1 -1
  142. package/fesm2022/{acorex-platform-common-email-widget-column.component-BqRR2jW9.mjs → acorex-platform-common-email-widget-column.component-CDKqwlPD.mjs} +8 -5
  143. package/fesm2022/acorex-platform-common-email-widget-column.component-CDKqwlPD.mjs.map +1 -0
  144. package/fesm2022/{acorex-platform-common-email-widget-edit.component-C7oCyByG.mjs → acorex-platform-common-email-widget-edit.component-BT2rJjaW.mjs} +8 -5
  145. package/fesm2022/{acorex-platform-common-email-widget-edit.component-C7oCyByG.mjs.map → acorex-platform-common-email-widget-edit.component-BT2rJjaW.mjs.map} +1 -1
  146. package/fesm2022/{acorex-platform-common-email-widget-view.component-hfVZnW_L.mjs → acorex-platform-common-email-widget-view.component-DbhRWpB1.mjs} +8 -5
  147. package/fesm2022/{acorex-platform-common-email-widget-view.component-hfVZnW_L.mjs.map → acorex-platform-common-email-widget-view.component-DbhRWpB1.mjs.map} +1 -1
  148. package/fesm2022/{acorex-platform-common-file-widget-column.component-Dt2mR6hJ.mjs → acorex-platform-common-file-widget-column.component-8U76QgEQ.mjs} +7 -4
  149. package/fesm2022/acorex-platform-common-file-widget-column.component-8U76QgEQ.mjs.map +1 -0
  150. package/fesm2022/{acorex-platform-common-file-widget-edit.component-DQol3UN8.mjs → acorex-platform-common-file-widget-edit.component-OFmiYz_5.mjs} +8 -5
  151. package/fesm2022/{acorex-platform-common-file-widget-edit.component-DQol3UN8.mjs.map → acorex-platform-common-file-widget-edit.component-OFmiYz_5.mjs.map} +1 -1
  152. package/fesm2022/{acorex-platform-common-file-widget-filter.component-CGd1mY-z.mjs → acorex-platform-common-file-widget-filter.component-ZLnpXMXK.mjs} +8 -5
  153. package/fesm2022/acorex-platform-common-file-widget-filter.component-ZLnpXMXK.mjs.map +1 -0
  154. package/fesm2022/{acorex-platform-common-file-widget-view.component-lKWnGSSb.mjs → acorex-platform-common-file-widget-view.component-BcrM4XrO.mjs} +8 -5
  155. package/fesm2022/{acorex-platform-common-file-widget-view.component-lKWnGSSb.mjs.map → acorex-platform-common-file-widget-view.component-BcrM4XrO.mjs.map} +1 -1
  156. package/fesm2022/{acorex-platform-common-gallery-widget-edit.component-DgjY3ZWk.mjs → acorex-platform-common-gallery-widget-edit.component-pBBjrjDP.mjs} +9 -6
  157. package/fesm2022/{acorex-platform-common-gallery-widget-edit.component-DgjY3ZWk.mjs.map → acorex-platform-common-gallery-widget-edit.component-pBBjrjDP.mjs.map} +1 -1
  158. package/fesm2022/{acorex-platform-common-gallery-widget-filter.component-CUw4kxTW.mjs → acorex-platform-common-gallery-widget-filter.component-Cp7t9ovC.mjs} +8 -5
  159. package/fesm2022/acorex-platform-common-gallery-widget-filter.component-Cp7t9ovC.mjs.map +1 -0
  160. package/fesm2022/{acorex-platform-common-gallery-widget-view.component-DK52JTds.mjs → acorex-platform-common-gallery-widget-view.component-CPS-h3cq.mjs} +9 -6
  161. package/fesm2022/{acorex-platform-common-gallery-widget-view.component-DK52JTds.mjs.map → acorex-platform-common-gallery-widget-view.component-CPS-h3cq.mjs.map} +1 -1
  162. package/fesm2022/{acorex-platform-common-largetext-widget-edit.component-7bbHUOnp.mjs → acorex-platform-common-largetext-widget-edit.component-DA6r3rVA.mjs} +8 -5
  163. package/fesm2022/acorex-platform-common-largetext-widget-edit.component-DA6r3rVA.mjs.map +1 -0
  164. package/fesm2022/{acorex-platform-common-lookup-widget-column.component-PGf5qjC4.mjs → acorex-platform-common-lookup-widget-column.component-Cxv1yZvE.mjs} +8 -5
  165. package/fesm2022/acorex-platform-common-lookup-widget-column.component-Cxv1yZvE.mjs.map +1 -0
  166. package/fesm2022/{acorex-platform-common-lookup-widget-edit.component-CGZf6rH2.mjs → acorex-platform-common-lookup-widget-edit.component-CUtGoAGX.mjs} +9 -6
  167. package/fesm2022/acorex-platform-common-lookup-widget-edit.component-CUtGoAGX.mjs.map +1 -0
  168. package/fesm2022/{acorex-platform-common-lookup-widget-filter.component-CUBdIuu9.mjs → acorex-platform-common-lookup-widget-filter.component-DJZqB3vj.mjs} +9 -7
  169. package/fesm2022/acorex-platform-common-lookup-widget-filter.component-DJZqB3vj.mjs.map +1 -0
  170. package/fesm2022/{acorex-platform-common-lookup-widget-view.component-dmGctRc9.mjs → acorex-platform-common-lookup-widget-view.component-CghJK1C4.mjs} +8 -5
  171. package/fesm2022/acorex-platform-common-lookup-widget-view.component-CghJK1C4.mjs.map +1 -0
  172. package/fesm2022/{acorex-platform-common-map-widget-edit.component-Cyi6AF9u.mjs → acorex-platform-common-map-widget-edit.component-oSb3kVMc.mjs} +8 -5
  173. package/fesm2022/acorex-platform-common-map-widget-edit.component-oSb3kVMc.mjs.map +1 -0
  174. package/fesm2022/{acorex-platform-common-map-widget-view.component-Cbl1KClC.mjs → acorex-platform-common-map-widget-view.component-BrYwr914.mjs} +8 -5
  175. package/fesm2022/acorex-platform-common-map-widget-view.component-BrYwr914.mjs.map +1 -0
  176. package/fesm2022/{acorex-platform-common-messenger-widget-column.component-BGiTw0jL.mjs → acorex-platform-common-messenger-widget-column.component-DIJAffxy.mjs} +8 -5
  177. package/fesm2022/acorex-platform-common-messenger-widget-column.component-DIJAffxy.mjs.map +1 -0
  178. package/fesm2022/{acorex-platform-common-messenger-widget-edit.component-BBSmai_5.mjs → acorex-platform-common-messenger-widget-edit.component-DpGvbM4a.mjs} +8 -5
  179. package/fesm2022/acorex-platform-common-messenger-widget-edit.component-DpGvbM4a.mjs.map +1 -0
  180. package/fesm2022/{acorex-platform-common-messenger-widget-view.component-C15KdEZ6.mjs → acorex-platform-common-messenger-widget-view.component-CeuDEI-j.mjs} +8 -5
  181. package/fesm2022/{acorex-platform-common-messenger-widget-view.component-C15KdEZ6.mjs.map → acorex-platform-common-messenger-widget-view.component-CeuDEI-j.mjs.map} +1 -1
  182. package/fesm2022/{acorex-platform-common-number-widget-edit.component-CGmS-gd7.mjs → acorex-platform-common-number-widget-edit.component-B1YGwr60.mjs} +8 -5
  183. package/fesm2022/acorex-platform-common-number-widget-edit.component-B1YGwr60.mjs.map +1 -0
  184. package/fesm2022/{acorex-platform-common-number-widget-filter.component-8RC01k_0.mjs → acorex-platform-common-number-widget-filter.component-BmmgPy1w.mjs} +9 -6
  185. package/fesm2022/acorex-platform-common-number-widget-filter.component-BmmgPy1w.mjs.map +1 -0
  186. package/fesm2022/{acorex-platform-common-number-widget-view.component-DGPcZ-yE.mjs → acorex-platform-common-number-widget-view.component-bqylVHOz.mjs} +8 -5
  187. package/fesm2022/acorex-platform-common-number-widget-view.component-bqylVHOz.mjs.map +1 -0
  188. package/fesm2022/{acorex-platform-common-password-widget-column.component-O3L2DvZq.mjs → acorex-platform-common-password-widget-column.component-DVdZh7s4.mjs} +8 -5
  189. package/fesm2022/{acorex-platform-common-password-widget-column.component-O3L2DvZq.mjs.map → acorex-platform-common-password-widget-column.component-DVdZh7s4.mjs.map} +1 -1
  190. package/fesm2022/{acorex-platform-common-password-widget-edit.component-DZz6rAL3.mjs → acorex-platform-common-password-widget-edit.component-OjHwMT5d.mjs} +8 -5
  191. package/fesm2022/acorex-platform-common-password-widget-edit.component-OjHwMT5d.mjs.map +1 -0
  192. package/fesm2022/{acorex-platform-common-password-widget-view.component-OxinnOs8.mjs → acorex-platform-common-password-widget-view.component-BeSk1OgU.mjs} +8 -5
  193. package/fesm2022/{acorex-platform-common-password-widget-view.component-OxinnOs8.mjs.map → acorex-platform-common-password-widget-view.component-BeSk1OgU.mjs.map} +1 -1
  194. package/fesm2022/{acorex-platform-common-phone-widget-column.component-D9AXNMVq.mjs → acorex-platform-common-phone-widget-column.component-DOfzGKBi.mjs} +8 -5
  195. package/fesm2022/{acorex-platform-common-phone-widget-column.component-D9AXNMVq.mjs.map → acorex-platform-common-phone-widget-column.component-DOfzGKBi.mjs.map} +1 -1
  196. package/fesm2022/{acorex-platform-common-phone-widget-edit.component-CKvODAMQ.mjs → acorex-platform-common-phone-widget-edit.component-BJ-iEyLP.mjs} +7 -5
  197. package/fesm2022/{acorex-platform-common-phone-widget-edit.component-CKvODAMQ.mjs.map → acorex-platform-common-phone-widget-edit.component-BJ-iEyLP.mjs.map} +1 -1
  198. package/fesm2022/{acorex-platform-common-phone-widget-view.component-Cx-SrpUs.mjs → acorex-platform-common-phone-widget-view.component-DW4AHCE6.mjs} +8 -5
  199. package/fesm2022/{acorex-platform-common-phone-widget-view.component-Cx-SrpUs.mjs.map → acorex-platform-common-phone-widget-view.component-DW4AHCE6.mjs.map} +1 -1
  200. package/fesm2022/{acorex-platform-common-rich-text-widget-column.component-C7IqYbqM.mjs → acorex-platform-common-rich-text-widget-column.component-2zZBG6Ze.mjs} +8 -5
  201. package/fesm2022/{acorex-platform-common-rich-text-widget-column.component-C7IqYbqM.mjs.map → acorex-platform-common-rich-text-widget-column.component-2zZBG6Ze.mjs.map} +1 -1
  202. package/fesm2022/{acorex-platform-common-rich-text-widget-edit.component-DtEcLWte.mjs → acorex-platform-common-rich-text-widget-edit.component-BJveJgHZ.mjs} +8 -5
  203. package/fesm2022/acorex-platform-common-rich-text-widget-edit.component-BJveJgHZ.mjs.map +1 -0
  204. package/fesm2022/{acorex-platform-common-rich-text-widget-view.component-DI4I6wII.mjs → acorex-platform-common-rich-text-widget-view.component-CiViWpBX.mjs} +8 -5
  205. package/fesm2022/acorex-platform-common-rich-text-widget-view.component-CiViWpBX.mjs.map +1 -0
  206. package/fesm2022/{acorex-platform-common-selection-list-widget-column.component-CHDTopqW.mjs → acorex-platform-common-selection-list-widget-column.component-D9lsVFgo.mjs} +8 -5
  207. package/fesm2022/{acorex-platform-common-selection-list-widget-column.component-CHDTopqW.mjs.map → acorex-platform-common-selection-list-widget-column.component-D9lsVFgo.mjs.map} +1 -1
  208. package/fesm2022/{acorex-platform-common-selection-list-widget-edit.component-Ds7Pc22g.mjs → acorex-platform-common-selection-list-widget-edit.component-ocEwyUP7.mjs} +8 -5
  209. package/fesm2022/acorex-platform-common-selection-list-widget-edit.component-ocEwyUP7.mjs.map +1 -0
  210. package/fesm2022/{acorex-platform-common-selection-list-widget-filter.component-D7h2tUqB.mjs → acorex-platform-common-selection-list-widget-filter.component-CS0f_jCx.mjs} +7 -5
  211. package/fesm2022/acorex-platform-common-selection-list-widget-filter.component-CS0f_jCx.mjs.map +1 -0
  212. package/fesm2022/{acorex-platform-common-selection-list-widget-view.component-DGuotR-q.mjs → acorex-platform-common-selection-list-widget-view.component-C65lbpo_.mjs} +8 -5
  213. package/fesm2022/acorex-platform-common-selection-list-widget-view.component-C65lbpo_.mjs.map +1 -0
  214. package/fesm2022/{acorex-platform-common-signature-pad-widget-edit.component-DPr0hCtB.mjs → acorex-platform-common-signature-pad-widget-edit.component-DbfQSGxm.mjs} +7 -4
  215. package/fesm2022/{acorex-platform-common-signature-pad-widget-edit.component-DPr0hCtB.mjs.map → acorex-platform-common-signature-pad-widget-edit.component-DbfQSGxm.mjs.map} +1 -1
  216. package/fesm2022/{acorex-platform-common-signature-pad-widget-view.component-CdqZ17tU.mjs → acorex-platform-common-signature-pad-widget-view.component-CDY3JdP-.mjs} +8 -5
  217. package/fesm2022/acorex-platform-common-signature-pad-widget-view.component-CDY3JdP-.mjs.map +1 -0
  218. package/fesm2022/{acorex-platform-common-string-widget-filter.component-Ctde9CDD.mjs → acorex-platform-common-string-widget-filter.component-BW2ehdOx.mjs} +9 -6
  219. package/fesm2022/acorex-platform-common-string-widget-filter.component-BW2ehdOx.mjs.map +1 -0
  220. package/fesm2022/{acorex-platform-common-text-widget-column.component-BHd_WWKq.mjs → acorex-platform-common-text-widget-column.component-bhx0QWAX.mjs} +8 -5
  221. package/fesm2022/{acorex-platform-common-text-widget-column.component-BHd_WWKq.mjs.map → acorex-platform-common-text-widget-column.component-bhx0QWAX.mjs.map} +1 -1
  222. package/fesm2022/{acorex-platform-common-text-widget-edit.component-BwfelIOW.mjs → acorex-platform-common-text-widget-edit.component-Cb1k59hs.mjs} +8 -5
  223. package/fesm2022/acorex-platform-common-text-widget-edit.component-Cb1k59hs.mjs.map +1 -0
  224. package/fesm2022/{acorex-platform-common-text-widget-view.component-SHWXqKZS.mjs → acorex-platform-common-text-widget-view.component-CGwY9c2O.mjs} +8 -5
  225. package/fesm2022/{acorex-platform-common-text-widget-view.component-SHWXqKZS.mjs.map → acorex-platform-common-text-widget-view.component-CGwY9c2O.mjs.map} +1 -1
  226. package/fesm2022/{acorex-platform-common-toggle-widget-column.component-Dc_Ahdvn.mjs → acorex-platform-common-toggle-widget-column.component-BxAwa7jw.mjs} +8 -5
  227. package/fesm2022/{acorex-platform-common-toggle-widget-column.component-Dc_Ahdvn.mjs.map → acorex-platform-common-toggle-widget-column.component-BxAwa7jw.mjs.map} +1 -1
  228. package/fesm2022/{acorex-platform-common-toggle-widget-edit.component-BnPyXdAA.mjs → acorex-platform-common-toggle-widget-edit.component-CT2fRAKm.mjs} +8 -5
  229. package/fesm2022/acorex-platform-common-toggle-widget-edit.component-CT2fRAKm.mjs.map +1 -0
  230. package/fesm2022/{acorex-platform-common-toggle-widget-view.component-D14GMwWe.mjs → acorex-platform-common-toggle-widget-view.component-9tquFHhE.mjs} +8 -5
  231. package/fesm2022/{acorex-platform-common-toggle-widget-view.component-D14GMwWe.mjs.map → acorex-platform-common-toggle-widget-view.component-9tquFHhE.mjs.map} +1 -1
  232. package/fesm2022/acorex-platform-common.mjs +639 -434
  233. package/fesm2022/acorex-platform-common.mjs.map +1 -1
  234. package/fesm2022/acorex-platform-core.mjs +2 -2
  235. package/fesm2022/acorex-platform-core.mjs.map +1 -1
  236. package/fesm2022/acorex-platform-layout-builder.mjs +28 -11
  237. package/fesm2022/acorex-platform-layout-builder.mjs.map +1 -1
  238. package/fesm2022/acorex-platform-layout-designer.mjs +365 -67
  239. package/fesm2022/acorex-platform-layout-designer.mjs.map +1 -1
  240. package/fesm2022/acorex-platform-layout-entity.mjs +103 -57
  241. package/fesm2022/acorex-platform-layout-entity.mjs.map +1 -1
  242. package/fesm2022/acorex-platform-layouts.mjs +16 -11
  243. package/fesm2022/acorex-platform-layouts.mjs.map +1 -1
  244. package/fesm2022/{acorex-platform-themes-default-entity-master-create-view.component-Q8eTfAVx.mjs → acorex-platform-themes-default-entity-master-create-view.component-i6vjEhti.mjs} +3 -3
  245. package/fesm2022/{acorex-platform-themes-default-entity-master-create-view.component-Q8eTfAVx.mjs.map → acorex-platform-themes-default-entity-master-create-view.component-i6vjEhti.mjs.map} +1 -1
  246. package/fesm2022/{acorex-platform-themes-default-entity-master-list-view.component-CNXG0nP4.mjs → acorex-platform-themes-default-entity-master-list-view.component-BGKWaCth.mjs} +22 -18
  247. package/fesm2022/acorex-platform-themes-default-entity-master-list-view.component-BGKWaCth.mjs.map +1 -0
  248. package/fesm2022/{acorex-platform-themes-default-entity-master-modify-view.component-BijYXMme.mjs → acorex-platform-themes-default-entity-master-modify-view.component-B3phYOIw.mjs} +5 -5
  249. package/fesm2022/acorex-platform-themes-default-entity-master-modify-view.component-B3phYOIw.mjs.map +1 -0
  250. package/fesm2022/{acorex-platform-themes-default-entity-master-single-view.component-Bnrabotu.mjs → acorex-platform-themes-default-entity-master-single-view.component-DyZHE0o-.mjs} +16 -13
  251. package/fesm2022/acorex-platform-themes-default-entity-master-single-view.component-DyZHE0o-.mjs.map +1 -0
  252. package/fesm2022/acorex-platform-themes-default.mjs +75 -57
  253. package/fesm2022/acorex-platform-themes-default.mjs.map +1 -1
  254. package/fesm2022/acorex-platform-themes-shared.mjs +130 -121
  255. package/fesm2022/acorex-platform-themes-shared.mjs.map +1 -1
  256. package/fesm2022/acorex-platform-widgets-template-widget-edit.component-gvAh-gH1.mjs +96 -0
  257. package/fesm2022/acorex-platform-widgets-template-widget-edit.component-gvAh-gH1.mjs.map +1 -0
  258. package/fesm2022/acorex-platform-widgets.mjs +369 -86
  259. package/fesm2022/acorex-platform-widgets.mjs.map +1 -1
  260. package/layout/builder/lib/builder/widget-container.component.d.ts +3 -2
  261. package/layout/builder/lib/builder/widget.types.d.ts +4 -1
  262. package/layout/designer/index.d.ts +2 -0
  263. package/layout/designer/lib/designer/components/board/board.component.d.ts +1 -0
  264. package/layout/designer/lib/designer/components/header-menu/header-menu.component.d.ts +1 -0
  265. package/layout/designer/lib/designer/components/size-mode/view-size-toolbar.component.d.ts +6 -0
  266. package/layout/designer/lib/designer/components/widget-picker/widget-picker.component.d.ts +1 -1
  267. package/layout/designer/lib/designer/designer.component.d.ts +1 -1
  268. package/layout/designer/lib/designer/shared/designer.service.d.ts +6 -1
  269. package/layout/designer/lib/preview/preview-frame.component.d.ts +8 -0
  270. package/layout/designer/lib/preview/preview-viewer.component.d.ts +14 -0
  271. package/layout/designer/lib/preview/preview.component.d.ts +17 -3
  272. package/layout/entity/lib/entity-detail-list.viewmodel.d.ts +4 -4
  273. package/layout/entity/lib/entity-master-create.viewmodel.d.ts +1 -1
  274. package/layout/entity/lib/entity-master-single.viewmodel.d.ts +1 -5
  275. package/layout/entity/lib/entity-master-update.viewmodel.d.ts +1 -1
  276. package/layout/entity/lib/entity-registery.service.d.ts +1 -1
  277. package/layout/entity/lib/entity.config.d.ts +7 -0
  278. package/layout/entity/lib/entity.viewmodel.d.ts +1 -1
  279. package/layout/entity/lib/widgets/lookup-widget/lookup-widget-edit.component.d.ts +2 -1
  280. package/layout/entity/lib/widgets/lookup-widget/lookup-widget-view.component.d.ts +2 -1
  281. package/layout/entity/lib/workflows/delete-entity.workflow.d.ts +1 -0
  282. package/layout/entity/lib/workflows/modify-section.workflow.d.ts +1 -0
  283. package/layouts/lib/admin/entity-layout/workflows/modify-entity.workflow.d.ts +1 -0
  284. package/package.json +13 -13
  285. package/themes/default/lib/layouts/entity-layouts/entity-master-single-view/entity-master-single-view.component.d.ts +1 -1
  286. package/themes/default/lib/layouts/root-layout/components/menu/root-menu.component.d.ts +22 -0
  287. package/themes/default/lib/layouts/root-layout/index.d.ts +1 -0
  288. package/themes/default/lib/layouts/root-layout/root-layout.component.d.ts +0 -4
  289. package/themes/default/lib/layouts/root-layout/root-layout.module.d.ts +17 -16
  290. package/themes/shared/lib/comments/comment-list-view.component.d.ts +16 -11
  291. package/themes/shared/lib/comments/comments.service.d.ts +4 -7
  292. package/themes/shared/lib/comments/comments.type.d.ts +23 -19
  293. package/themes/shared/lib/components/theme-slot.component.d.ts +1 -1
  294. package/themes/shared/lib/services/theme.service.d.ts +1 -1
  295. package/themes/shared/lib/shared.module.d.ts +0 -1
  296. package/widgets/lib/widgets/advance/qrcode/qrcode-widget-view.component.d.ts +1 -1
  297. package/widgets/lib/widgets/editors/color/color-box-widget-column.component.d.ts +3 -0
  298. package/widgets/lib/widgets/editors/contact/contact-widget-column.component.d.ts +2 -0
  299. package/widgets/lib/widgets/editors/contact/contact-widget-edit.component.d.ts +1 -1
  300. package/widgets/lib/widgets/editors/contact/contact-widget-view.component.d.ts +1 -1
  301. package/widgets/lib/widgets/editors/date-time/date-time-box-widget-column.component.d.ts +3 -0
  302. package/widgets/lib/widgets/editors/rich-text/rich-text-widget-edit.component.d.ts +3 -2
  303. package/widgets/lib/widgets/index.d.ts +1 -0
  304. package/widgets/lib/widgets/layout/block/block-widget-view.component.d.ts +4 -2
  305. package/widgets/lib/widgets/layout/repeater/repeater-widget-edit.component.d.ts +1 -0
  306. package/widgets/lib/widgets/layout/template/index.d.ts +4 -0
  307. package/widgets/lib/widgets/layout/template/template-widget-designer.component.d.ts +11 -0
  308. package/widgets/lib/widgets/layout/template/template-widget-edit.component.d.ts +10 -0
  309. package/widgets/lib/widgets/layout/template/template-widget-view.component.d.ts +10 -0
  310. package/widgets/lib/widgets/layout/template/template-widget.config.d.ts +7 -0
  311. package/widgets/lib/widgets/layout/template/template.provider.d.ts +21 -0
  312. package/common/lib/data/entity-data-provider.d.ts +0 -14
  313. package/esm2022/common/lib/data/entity-data-provider.mjs +0 -26
  314. package/fesm2022/acorex-platform-common-avatar-widget-edit.component-CSSz-dqg.mjs.map +0 -1
  315. package/fesm2022/acorex-platform-common-avatar-widget-view.component-WofmamJK.mjs.map +0 -1
  316. package/fesm2022/acorex-platform-common-boolean-widget-filter.component-ByoMpVAs.mjs.map +0 -1
  317. package/fesm2022/acorex-platform-common-checkbox-widget-edit.component-C1PgHZsE.mjs.map +0 -1
  318. package/fesm2022/acorex-platform-common-dateTime-widget-column.component-BnW8m1wn.mjs.map +0 -1
  319. package/fesm2022/acorex-platform-common-dateTime-widget-filter.component-Dbxz84tm.mjs.map +0 -1
  320. package/fesm2022/acorex-platform-common-email-widget-column.component-BqRR2jW9.mjs.map +0 -1
  321. package/fesm2022/acorex-platform-common-file-widget-column.component-Dt2mR6hJ.mjs.map +0 -1
  322. package/fesm2022/acorex-platform-common-file-widget-filter.component-CGd1mY-z.mjs.map +0 -1
  323. package/fesm2022/acorex-platform-common-gallery-widget-filter.component-CUw4kxTW.mjs.map +0 -1
  324. package/fesm2022/acorex-platform-common-largetext-widget-edit.component-7bbHUOnp.mjs.map +0 -1
  325. package/fesm2022/acorex-platform-common-lookup-widget-column.component-PGf5qjC4.mjs.map +0 -1
  326. package/fesm2022/acorex-platform-common-lookup-widget-edit.component-CGZf6rH2.mjs.map +0 -1
  327. package/fesm2022/acorex-platform-common-lookup-widget-filter.component-CUBdIuu9.mjs.map +0 -1
  328. package/fesm2022/acorex-platform-common-lookup-widget-view.component-dmGctRc9.mjs.map +0 -1
  329. package/fesm2022/acorex-platform-common-map-widget-edit.component-Cyi6AF9u.mjs.map +0 -1
  330. package/fesm2022/acorex-platform-common-map-widget-view.component-Cbl1KClC.mjs.map +0 -1
  331. package/fesm2022/acorex-platform-common-messenger-widget-column.component-BGiTw0jL.mjs.map +0 -1
  332. package/fesm2022/acorex-platform-common-messenger-widget-edit.component-BBSmai_5.mjs.map +0 -1
  333. package/fesm2022/acorex-platform-common-number-widget-edit.component-CGmS-gd7.mjs.map +0 -1
  334. package/fesm2022/acorex-platform-common-number-widget-filter.component-8RC01k_0.mjs.map +0 -1
  335. package/fesm2022/acorex-platform-common-number-widget-view.component-DGPcZ-yE.mjs.map +0 -1
  336. package/fesm2022/acorex-platform-common-password-widget-edit.component-DZz6rAL3.mjs.map +0 -1
  337. package/fesm2022/acorex-platform-common-rich-text-widget-edit.component-DtEcLWte.mjs.map +0 -1
  338. package/fesm2022/acorex-platform-common-rich-text-widget-view.component-DI4I6wII.mjs.map +0 -1
  339. package/fesm2022/acorex-platform-common-selection-list-widget-edit.component-Ds7Pc22g.mjs.map +0 -1
  340. package/fesm2022/acorex-platform-common-selection-list-widget-filter.component-D7h2tUqB.mjs.map +0 -1
  341. package/fesm2022/acorex-platform-common-selection-list-widget-view.component-DGuotR-q.mjs.map +0 -1
  342. package/fesm2022/acorex-platform-common-signature-pad-widget-view.component-CdqZ17tU.mjs.map +0 -1
  343. package/fesm2022/acorex-platform-common-string-widget-filter.component-Ctde9CDD.mjs.map +0 -1
  344. package/fesm2022/acorex-platform-common-text-widget-edit.component-BwfelIOW.mjs.map +0 -1
  345. package/fesm2022/acorex-platform-common-toggle-widget-edit.component-BnPyXdAA.mjs.map +0 -1
  346. package/fesm2022/acorex-platform-layout-designer-preview.component-CaRHf4x_.mjs +0 -23
  347. package/fesm2022/acorex-platform-layout-designer-preview.component-CaRHf4x_.mjs.map +0 -1
  348. package/fesm2022/acorex-platform-themes-default-entity-master-list-view.component-CNXG0nP4.mjs.map +0 -1
  349. package/fesm2022/acorex-platform-themes-default-entity-master-modify-view.component-BijYXMme.mjs.map +0 -1
  350. package/fesm2022/acorex-platform-themes-default-entity-master-single-view.component-Bnrabotu.mjs.map +0 -1
@@ -1 +1 @@
1
- {"version":3,"file":"acorex-platform-widgets.mjs","sources":["../../../../libs/platform/widgets/src/lib/widgets/actions/button/button-widget-view.component.ts","../../../../libs/platform/widgets/src/lib/properties/groups.ts","../../../../libs/platform/widgets/src/lib/properties/data-source.props.ts","../../../../libs/platform/widgets/src/lib/properties/general.props.ts","../../../../libs/platform/widgets/src/lib/properties/editors.props.ts","../../../../libs/platform/widgets/src/lib/properties/layout.props.ts","../../../../libs/platform/widgets/src/lib/properties/table-column.props.ts","../../../../libs/platform/widgets/src/lib/widgets/actions/button/button-widget.config.ts","../../../../libs/platform/widgets/src/lib/widgets/editors/checkbox/checkbox-widget-edit.component.ts","../../../../libs/platform/widgets/src/lib/widgets/editors/checkbox/checkbox-widget.config.ts","../../../../libs/platform/widgets/src/lib/widgets/editors/contact/contact-widget-column.component.ts","../../../../libs/platform/widgets/src/lib/widgets/editors/contact/popup-component.ts","../../../../libs/platform/widgets/src/lib/widgets/editors/contact/contact-widget-edit.component.ts","../../../../libs/platform/widgets/src/lib/widgets/editors/contact/contact-widget-print.component.ts","../../../../libs/platform/widgets/src/lib/widgets/editors/contact/contact-widget-view.component.ts","../../../../libs/platform/widgets/src/lib/widgets/editors/contact/contact-widget.config.ts","../../../../libs/platform/widgets/src/lib/widgets/editors/date-time/date-time-box-widget-view.component.ts","../../../../libs/platform/widgets/src/lib/widgets/editors/date-time/date-time-box-widget-edit.component.ts","../../../../libs/platform/widgets/src/lib/widgets/editors/date-time/date-time-box-widget-filter.component.ts","../../../../libs/platform/widgets/src/lib/widgets/editors/date-time/date-time-box-widget-column.component.ts","../../../../libs/platform/widgets/src/lib/widgets/editors/date-time/date-time-box-widget-print.component.ts","../../../../libs/platform/widgets/src/lib/widgets/editors/date-time/date-time-box-widget.config.ts","../../../../libs/platform/widgets/src/lib/widgets/editors/email/email-box-widget-view.component.ts","../../../../libs/platform/widgets/src/lib/widgets/editors/email/email-box-widget-edit.component.ts","../../../../libs/platform/widgets/src/lib/widgets/editors/email/email-box-widget-filter.component.ts","../../../../libs/platform/widgets/src/lib/widgets/editors/email/email-box-widget-column.component.ts","../../../../libs/platform/widgets/src/lib/widgets/editors/email/email-box-widget-print.component.ts","../../../../libs/platform/widgets/src/lib/widgets/editors/email/email-box-widget.config.ts","../../../../libs/platform/widgets/src/lib/widgets/editors/large-text/large-text-widget-view.component.ts","../../../../libs/platform/widgets/src/lib/widgets/editors/large-text/large-text-widget-edit.component.ts","../../../../libs/platform/widgets/src/lib/widgets/editors/large-text/large-text-widget-filter.component.ts","../../../../libs/platform/widgets/src/lib/widgets/editors/large-text/large-text-widget-column.component.ts","../../../../libs/platform/widgets/src/lib/widgets/editors/large-text/large-text-widget-print.component.ts","../../../../libs/platform/widgets/src/lib/widgets/editors/large-text/large-text-widget.config.ts","../../../../libs/platform/widgets/src/lib/widgets/editors/link/link-widget-view.component.ts","../../../../libs/platform/widgets/src/lib/widgets/editors/link/link-widget-edit.component.ts","../../../../libs/platform/widgets/src/lib/widgets/editors/link/link-widget-filter.component.ts","../../../../libs/platform/widgets/src/lib/widgets/editors/link/link-widget-column.component.ts","../../../../libs/platform/widgets/src/lib/widgets/editors/link/link-widget-print.component.ts","../../../../libs/platform/widgets/src/lib/widgets/editors/link/link-widget.config.ts","../../../../libs/platform/widgets/src/lib/widgets/editors/number/number-box-widget-view.component.ts","../../../../libs/platform/widgets/src/lib/widgets/editors/number/number-box-widget-edit.component.ts","../../../../libs/platform/widgets/src/lib/widgets/editors/number/number-box-widget-filter.component.ts","../../../../libs/platform/widgets/src/lib/widgets/editors/number/number-box-widget-column.component.ts","../../../../libs/platform/widgets/src/lib/widgets/editors/number/number-box-widget-print.component.ts","../../../../libs/platform/widgets/src/lib/widgets/editors/number/number-box-widget.config.ts","../../../../libs/platform/widgets/src/lib/widgets/editors/password/password-box-widget-view.component.ts","../../../../libs/platform/widgets/src/lib/widgets/editors/password/password-box-widget-edit.component.ts","../../../../libs/platform/widgets/src/lib/widgets/editors/password/password-box-widget-filter.component.ts","../../../../libs/platform/widgets/src/lib/widgets/editors/password/password-box-widget-column.component.ts","../../../../libs/platform/widgets/src/lib/widgets/editors/password/password-box-widget-print.component.ts","../../../../libs/platform/widgets/src/lib/widgets/editors/password/password-box-widget.config.ts","../../../../libs/platform/widgets/src/lib/widgets/editors/phone/phone-box-widget-view.component.ts","../../../../libs/platform/widgets/src/lib/widgets/editors/phone/phone-box-widget-edit.component.ts","../../../../libs/platform/widgets/src/lib/widgets/editors/phone/phone-box-widget-filter.component.ts","../../../../libs/platform/widgets/src/lib/widgets/editors/phone/phone-box-widget-column.component.ts","../../../../libs/platform/widgets/src/lib/widgets/editors/phone/phone-box-widget-print.component.ts","../../../../libs/platform/widgets/src/lib/widgets/editors/phone/phone-box-widget.config.ts","../../../../libs/platform/widgets/src/lib/widgets/editors/rich-text/rich-text-widget-view.component.ts","../../../../libs/platform/widgets/src/lib/widgets/editors/rich-text/rich-text-widget-edit.component.ts","../../../../libs/platform/widgets/src/lib/widgets/editors/rich-text/rich-text-widget-filter.component.ts","../../../../libs/platform/widgets/src/lib/widgets/editors/rich-text/rich-text-widget-column.component.ts","../../../../libs/platform/widgets/src/lib/widgets/editors/rich-text/rich-text-widget-print.component.ts","../../../../libs/platform/widgets/src/lib/widgets/editors/rich-text/rich-text-widget.config.ts","../../../../libs/platform/widgets/src/lib/widgets/editors/select/select-box-widget-view.component.ts","../../../../libs/platform/widgets/src/lib/widgets/editors/select/select-box-widget-edit.component.ts","../../../../libs/platform/widgets/src/lib/widgets/editors/select/select-box-widget-filter.component.ts","../../../../libs/platform/widgets/src/lib/widgets/editors/select/select-box-widget-column.component.ts","../../../../libs/platform/widgets/src/lib/widgets/editors/select/select-box-widget-print.component.ts","../../../../libs/platform/widgets/src/lib/widgets/editors/select/select-box-widget.config.ts","../../../../libs/platform/widgets/src/lib/widgets/editors/selection-list/selection-list-widget-view.component.ts","../../../../libs/platform/widgets/src/lib/widgets/editors/selection-list/selection-list-widget-designer.component.ts","../../../../libs/platform/widgets/src/lib/widgets/editors/selection-list/selection-list-widget-edit.component.ts","../../../../libs/platform/widgets/src/lib/widgets/editors/selection-list/selection-list-widget-filter.component.ts","../../../../libs/platform/widgets/src/lib/widgets/editors/selection-list/selection-list-widget-column.component.ts","../../../../libs/platform/widgets/src/lib/widgets/editors/selection-list/selection-list-widget-print.component.ts","../../../../libs/platform/widgets/src/lib/widgets/editors/selection-list/selection-list-widget.config.ts","../../../../libs/platform/widgets/src/lib/widgets/editors/text/text-box-widget-view.component.ts","../../../../libs/platform/widgets/src/lib/widgets/editors/text/text-box-widget-edit.component.ts","../../../../libs/platform/widgets/src/lib/widgets/editors/text/text-box-widget-filter.component.ts","../../../../libs/platform/widgets/src/lib/widgets/editors/text/text-box-widget-column.component.ts","../../../../libs/platform/widgets/src/lib/widgets/editors/text/text-box-widget-print.component.ts","../../../../libs/platform/widgets/src/lib/widgets/editors/text/text-box-widget.config.ts","../../../../libs/platform/widgets/src/lib/widgets/editors/toggle/toggle-widget-view.component.ts","../../../../libs/platform/widgets/src/lib/widgets/editors/toggle/toggle-widget-edit.component.ts","../../../../libs/platform/widgets/src/lib/widgets/editors/toggle/toggle-widget-filter.component.ts","../../../../libs/platform/widgets/src/lib/widgets/editors/toggle/toggle-widget-column.component.ts","../../../../libs/platform/widgets/src/lib/widgets/editors/toggle/toggle-widget-print.component.ts","../../../../libs/platform/widgets/src/lib/widgets/editors/toggle/toggle-widget.config.ts","../../../../libs/platform/widgets/src/lib/widgets/advance/file/file-box-widget-column.component.ts","../../../../libs/platform/widgets/src/lib/widgets/advance/file/file-box-widget.service.ts","../../../../libs/platform/widgets/src/lib/widgets/advance/file/file-box-widget-edit.component.ts","../../../../libs/platform/widgets/src/lib/widgets/advance/file/file-box-widget-filter.component.ts","../../../../libs/platform/widgets/src/lib/widgets/advance/file/file-box-widget-print.component.ts","../../../../libs/platform/widgets/src/lib/widgets/advance/file/file-box-widget-view.component.ts","../../../../libs/platform/widgets/src/lib/widgets/advance/file/file-box-widget.config.ts","../../../../libs/platform/widgets/src/lib/widgets/advance/gallery/gallery-widget-view.component.ts","../../../../libs/platform/widgets/src/lib/widgets/advance/gallery/gallery-widget-edit.component.ts","../../../../libs/platform/widgets/src/lib/widgets/advance/gallery/gallery-widget-filter.component.ts","../../../../libs/platform/widgets/src/lib/widgets/advance/gallery/gallery-widget-column.component.ts","../../../../libs/platform/widgets/src/lib/widgets/advance/gallery/gallery-widget-print.component.ts","../../../../libs/platform/widgets/src/lib/widgets/advance/gallery/gallery-widget.config.ts","../../../../libs/platform/widgets/src/lib/widgets/advance/map/map-box-widget-view.component.ts","../../../../libs/platform/widgets/src/lib/widgets/advance/map/map-box-widget-edit.component.ts","../../../../libs/platform/widgets/src/lib/widgets/advance/map/map-box-widget.config.ts","../../../../libs/platform/widgets/src/lib/widgets/advance/signature/signature-pad-widget-column.component.ts","../../../../libs/platform/widgets/src/lib/widgets/advance/signature/signature-pad-widget-edit.component.ts","../../../../libs/platform/widgets/src/lib/widgets/advance/signature/signature-pad-widget-filter.component.ts","../../../../libs/platform/widgets/src/lib/widgets/advance/signature/signature-pad-widget-print.component.ts","../../../../libs/platform/widgets/src/lib/widgets/advance/signature/signature-pad-widget-view.component.ts","../../../../libs/platform/widgets/src/lib/widgets/advance/signature/signature-pad-widget.config.ts","../../../../libs/platform/widgets/src/lib/widgets/layout/block/block-widget-designer.component.ts","../../../../libs/platform/widgets/src/lib/widgets/layout/block/block-widget-view.component.ts","../../../../libs/platform/widgets/src/lib/widgets/layout/block/block-widget.config.ts","../../../../libs/platform/widgets/src/lib/widgets/layout/page/page-widget-view.component.ts","../../../../libs/platform/widgets/src/lib/widgets/layout/page/page-widget.config.ts","../../../../libs/platform/widgets/src/lib/widgets/layout/repeater/repeater-widget-view.component.ts","../../../../libs/platform/widgets/src/lib/widgets/layout/repeater/repeater-widget-edit.component.ts","../../../../libs/platform/widgets/src/lib/widgets/layout/repeater/repeater-widget-print.component.ts","../../../../libs/platform/widgets/src/lib/widgets/layout/repeater/repeater-widget-designer.component.ts","../../../../libs/platform/widgets/src/lib/widgets/layout/repeater/repeater-widget.config.ts","../../../../libs/platform/widgets/src/lib/widgets/advance/qrcode/qrcode-widget-view.component.ts","../../../../libs/platform/widgets/src/lib/widgets/advance/qrcode/qrcode-widget.config.ts","../../../../libs/platform/widgets/src/lib/widgets/editors/color/color-box-widget-view.component.ts","../../../../libs/platform/widgets/src/lib/widgets/editors/color/color-box-widget-edit.component.ts","../../../../libs/platform/widgets/src/lib/widgets/editors/color/color-box-widget-filter.component.ts","../../../../libs/platform/widgets/src/lib/widgets/editors/color/color-box-widget-column.component.ts","../../../../libs/platform/widgets/src/lib/widgets/editors/color/color-box-widget-print.component.ts","../../../../libs/platform/widgets/src/lib/widgets/editors/color/color-box-widget.config.ts","../../../../libs/platform/widgets/src/lib/widgets/layout/document/document-widget.config.ts","../../../../libs/platform/widgets/src/lib/widgets/layout/form-field/form-field-widget-view.component.ts","../../../../libs/platform/widgets/src/lib/widgets/layout/form-field/form-field-widget-designer.component.ts","../../../../libs/platform/widgets/src/lib/widgets/layout/form-field/form-field-widget.config.ts","../../../../libs/platform/widgets/src/lib/widgets/layout/grid/grid-widget-view.component.ts","../../../../libs/platform/widgets/src/lib/widgets/layout/grid/grid-widget-print.component.ts","../../../../libs/platform/widgets/src/lib/widgets/layout/grid/grid-widget-designer.component.ts","../../../../libs/platform/widgets/src/lib/widgets/layout/grid/grid-widget.config.ts","../../../../libs/platform/widgets/src/lib/widgets/layout/grid-item/grid-item-widget-view.component.ts","../../../../libs/platform/widgets/src/lib/widgets/layout/grid-item/grid-item-widget-print.component.ts","../../../../libs/platform/widgets/src/lib/widgets/layout/grid-item/grid-item-widget-designer.component.ts","../../../../libs/platform/widgets/src/lib/widgets/layout/grid-item/grid-item-widget.config.ts","../../../../libs/platform/widgets/src/lib/widgets/layout/grid-row/grid-row-widget-view.component.ts","../../../../libs/platform/widgets/src/lib/widgets/layout/grid-row/grid-row-widget-print.component.ts","../../../../libs/platform/widgets/src/lib/widgets/layout/grid-row/grid-row-widget-designer.component.ts","../../../../libs/platform/widgets/src/lib/widgets/layout/grid-row/grid-row-widget.config.ts","../../../../libs/platform/widgets/src/lib/widgets/layout/text-block/text-block-widget-view.component.ts","../../../../libs/platform/widgets/src/lib/widgets/layout/text-block/text-block-widget.config.ts","../../../../libs/platform/widgets/src/lib/widgets.module.ts","../../../../libs/platform/widgets/src/acorex-platform-widgets.ts"],"sourcesContent":["import { AXBadgeModule } from '@acorex/components/badge';\nimport { AXButtonModule } from '@acorex/components/button';\nimport { AXClickEvent, AXStyleColorType, AXStyleLookType } from '@acorex/components/common';\nimport { AXDecoratorModule } from '@acorex/components/decorators';\nimport { AXLoadingModule } from '@acorex/components/loading';\nimport { AXPLayoutElementAPI, AXPWidgetComponent } from '@acorex/platform/layout/builder';\nimport { CommonModule } from '@angular/common';\nimport { ChangeDetectionStrategy, Component, computed, EventEmitter } from '@angular/core';\n@Component({\n selector: 'axp-button-widget',\n template: `\n <ax-button [disabled]=\"disabled()\" [color]=\"color()\" [look]=\"look()\" [text]=\"text()\">\n @if(icon() && text()){\n <ax-prefix\n ><ax-icon> <i class=\"fa-solid\" [class]=\"icon()\"></i> </ax-icon\n ></ax-prefix>\n } @else if(icon() && !text()) {\n <ax-icon> <i class=\"fa-solid\" [class]=\"icon()\"></i> </ax-icon>\n } @if(loading()){\n <ax-loading> </ax-loading>\n }\n </ax-button>\n `,\n standalone: true,\n changeDetection: ChangeDetectionStrategy.OnPush,\n imports: [CommonModule, AXButtonModule, AXLoadingModule, AXDecoratorModule, AXBadgeModule],\n})\nexport class AXPButtonWidgetViewComponent extends AXPWidgetComponent<any> {\n protected disabled = computed<boolean>(() => this.options()['disabled']);\n protected color = computed<AXStyleColorType>(() => this.options()['color']?.id ?? 'primary');\n protected look = computed<AXStyleLookType>(() => this.options()['look']?.id ?? 'solid');\n protected text = computed<string | undefined>(() => this.options()['text']);\n protected loading = computed<boolean>(() => this.options()['loading'] ?? false);\n protected icon = computed<string | undefined>(() => this.options()['icon']);\n\n public onClick = new EventEmitter<AXClickEvent>();\n\n protected handleClick(e: AXClickEvent) {\n this.onClick.emit(e);\n }\n\n override api(): AXPLayoutElementAPI {\n return {\n onClick: this.onClick,\n };\n }\n}\n","import { AXPWidgetPropertyGroup } from \"@acorex/platform/layout/builder\"\n\nexport const AXP_STYLING_PROPERTY_GROUP: AXPWidgetPropertyGroup = {\n name: \"styling\",\n order: 1,\n title: \"Styling\"\n}\n\nexport const AXP_DATA_PROPERTY_GROUP: AXPWidgetPropertyGroup = {\n name: \"data\",\n order: 3,\n title: \"Data\"\n}\n\nexport const AXP_BEHAVIOR_PROPERTY_GROUP: AXPWidgetPropertyGroup = {\n name: \"behavior\",\n order: 2,\n title: \"Behavior\"\n}\n\n\nexport const AXP_WIDGET_PROPERTY_GROUP: AXPWidgetPropertyGroup = {\n name: \"widget\",\n order: 0,\n title: \"Widget\"\n}","import { AXPWidgetProperty, AXPWidgetsCatalog } from \"@acorex/platform/layout/builder\";\nimport { AXP_DATA_PROPERTY_GROUP } from \"./groups\";\n\nexport const AXP_DATA_SOURCE_PROPERTY: AXPWidgetProperty = {\n name: 'dataSource',\n title: 'Data Source',\n group: AXP_DATA_PROPERTY_GROUP,\n schema: {\n dataType: 'object',\n interface: {\n name: 'dataSource',\n path: 'options.dataSource',\n type: AXPWidgetsCatalog.select,\n options: {\n dataSource: \"{{ methods.getDataSourceNames() }}\",\n hasClearButton: true,\n },\n },\n },\n visible: true,\n};","import { AXPWidgetProperty, AXPWidgetsCatalog, createStringProperty } from '@acorex/platform/layout/builder';\nimport { AXP_STYLING_PROPERTY_GROUP, AXP_WIDGET_PROPERTY_GROUP } from './groups';\n\n\nexport const AXP_NAME_PROPERTY = createStringProperty({\n name: 'name',\n title: 'Name',\n group: AXP_WIDGET_PROPERTY_GROUP,\n})\n\nexport const AXP_THEME_PROPERTY: AXPWidgetProperty = {\n name: 'theme',\n title: 'Theme',\n group: AXP_STYLING_PROPERTY_GROUP,\n schema: {\n dataType: 'string',\n defaultValue: { id: 'default' },\n interface: {\n name: 'theme',\n path: 'options.theme',\n type: AXPWidgetsCatalog.select,\n options: {\n hasClearButton: false,\n dataSource: [\n {\n id: 'default',\n title: 'Default',\n },\n {\n id: 'light',\n title: 'Light',\n },\n {\n id: 'dark',\n title: 'Dark',\n },\n ],\n },\n },\n },\n visible: true,\n};\n\nexport const AXP_DIRECTION_PROPERTY: AXPWidgetProperty = {\n name: 'direction',\n title: 'Direction',\n group: AXP_STYLING_PROPERTY_GROUP,\n schema: {\n dataType: 'string',\n defaultValue: { id: 'horizontal' },\n interface: {\n name: 'direction',\n path: 'options.direction',\n type: AXPWidgetsCatalog.select,\n options: {\n hasClearButton: false,\n dataSource: [\n {\n id: 'horizontal',\n title: 'Horizontal',\n },\n {\n id: 'vertical',\n title: 'Vertical',\n },\n ],\n },\n },\n },\n visible: true,\n};\n\nexport const AXP_COLOR_PROPERTY: AXPWidgetProperty = {\n name: 'color',\n title: 'Color',\n group: AXP_STYLING_PROPERTY_GROUP,\n schema: {\n dataType: 'string',\n interface: {\n path: 'options.color',\n options: {\n hasClearButton: true,\n },\n type: AXPWidgetsCatalog.color,\n },\n },\n visible: true,\n};\n\nexport const AXP_FONT_SIZE_PROPERTY: AXPWidgetProperty = {\n name: 'fontSize',\n title: 'Font Size',\n group: AXP_STYLING_PROPERTY_GROUP,\n schema: {\n dataType: 'string',\n defaultValue: '12px',\n interface: {\n name: 'fontSize',\n path: 'options.fontSize',\n type: AXPWidgetsCatalog.text,\n },\n },\n visible: true,\n};\n\n\n\nexport const AXP_BG_COLOR_PROPERTY: AXPWidgetProperty = {\n name: 'backgroundColor',\n title: 'Background Color',\n group: AXP_STYLING_PROPERTY_GROUP,\n schema: {\n dataType: 'string',\n interface: {\n path: 'options.backgroundColor',\n options: {\n hasClearButton: true,\n },\n type: AXPWidgetsCatalog.color,\n },\n },\n visible: true,\n};\n","import { AX_STYLE_COLOR_TYPES, AX_STYLE_LOOK_TYPES } from '@acorex/components/common';\nimport {\n AXPWidgetProperty,\n AXPWidgetsCatalog,\n createBooleanProperty,\n createSelectProperty,\n createStringProperty,\n} from '@acorex/platform/layout/builder';\nimport { AXP_BEHAVIOR_PROPERTY_GROUP, AXP_DATA_PROPERTY_GROUP, AXP_STYLING_PROPERTY_GROUP } from './groups';\n\nexport const AXP_VALIDATION_PROPERTY: AXPWidgetProperty = {\n name: 'validationRules',\n title: 'Validation Rules',\n group: AXP_DATA_PROPERTY_GROUP,\n schema: {\n dataType: 'array',\n defaultValue: [],\n interface: {\n type: AXPWidgetsCatalog.text,\n path: 'validationRules',\n },\n },\n visible: true,\n};\n\nexport const AXP_CONTENT_PROPERTY = createStringProperty({\n name: 'content',\n title: 'Content',\n path: 'options.content',\n group: AXP_DATA_PROPERTY_GROUP,\n});\n\nexport const AXP_PLACEHOLDER_PROPERTY = createStringProperty({\n name: 'placeholder',\n title: 'Placeholder',\n path: 'options.placeholder',\n group: AXP_BEHAVIOR_PROPERTY_GROUP,\n});\n\nexport const AXP_DATA_PATH_PROPERTY = createStringProperty({\n name: 'path',\n title: 'Data Path',\n group: AXP_DATA_PROPERTY_GROUP,\n});\n\nexport const AXP_DISABLED_PROPERTY = createBooleanProperty({\n name: 'disabled',\n title: 'Disabled',\n path: 'options.disabled',\n group: AXP_BEHAVIOR_PROPERTY_GROUP,\n});\n\nexport const AXP_READONLY_PROPERTY = createBooleanProperty({\n name: 'readonly',\n title: 'Readonly',\n path: 'options.readonly',\n group: AXP_BEHAVIOR_PROPERTY_GROUP,\n});\n\nexport const AXP_ALLOW_MULTIPLE_PROPERTY = createBooleanProperty({\n name: 'multiple',\n title: 'Multiple',\n path: 'options.multiple',\n group: AXP_BEHAVIOR_PROPERTY_GROUP,\n});\n\nexport const AXP_HAS_LABEL_PROPERTY = createBooleanProperty({\n name: 'hasLabel',\n title: 'Label',\n path: 'options.hasLabel',\n group: AXP_BEHAVIOR_PROPERTY_GROUP,\n defaultValue: true,\n});\n\nexport const AXP_HAS_ICON_PROPERTY = createBooleanProperty({\n name: 'hasIcon',\n title: 'Icon',\n path: 'options.hasIcon',\n group: AXP_BEHAVIOR_PROPERTY_GROUP,\n defaultValue: true,\n});\n\nexport const AXP_ICON_PROPERTY = createStringProperty({\n name: 'icon',\n title: 'Icon Name',\n group: AXP_BEHAVIOR_PROPERTY_GROUP,\n path: 'options.icon',\n});\n\nexport const AXP_IS_LOADING_PROPERTY = createBooleanProperty({\n name: 'loading',\n title: 'Is Loading',\n group: AXP_BEHAVIOR_PROPERTY_GROUP,\n path: 'options.loading',\n});\n\nexport const AXP_HAS_CLEAR_BUTTON_PROPERTY = createBooleanProperty({\n name: 'hasClearButton',\n title: 'Clear Button',\n path: 'options.hasClearButton',\n group: AXP_BEHAVIOR_PROPERTY_GROUP,\n defaultValue: true,\n});\n\nexport const AXP_HAS_COPY_ICON_PROPERTY = createBooleanProperty({\n name: 'hasCopyIcon',\n title: 'Copy Icon',\n path: 'options.hasCopyIcon',\n group: AXP_BEHAVIOR_PROPERTY_GROUP,\n defaultValue: true,\n});\n\nexport const AXP_HAS_EYE_ICON_PROPERTY = createBooleanProperty({\n name: 'hasEyeIcon',\n title: 'Eye Icon',\n path: 'options.hasEyeIcon',\n group: AXP_BEHAVIOR_PROPERTY_GROUP,\n defaultValue: true,\n});\n\nexport const AXP_DOWNLOADABLE_PROPERTY = createBooleanProperty({\n name: 'downloadable',\n title: 'Downloadable',\n path: 'options.downloadable',\n group: AXP_BEHAVIOR_PROPERTY_GROUP,\n defaultValue: true,\n});\n\n// Converted with createStringProperty\nexport const AXP_TRULY_TEXT_PROPERTY = createStringProperty({\n name: 'trulyText',\n title: 'Truly Text',\n path: 'options.trulyText',\n group: AXP_BEHAVIOR_PROPERTY_GROUP,\n});\n\nexport const AXP_FALSY_TEXT_PROPERTY = createStringProperty({\n name: 'falsyText',\n title: 'Falsy Text',\n path: 'options.falsyText',\n group: AXP_BEHAVIOR_PROPERTY_GROUP,\n});\n\nexport const AXP_TEXT_PROPERTY = createStringProperty({\n name: 'text',\n title: 'Text',\n path: 'options.text',\n group: AXP_BEHAVIOR_PROPERTY_GROUP,\n});\n\nexport const AXP_TITLE_PROPERTY = createStringProperty({\n name: 'title',\n title: 'Title',\n path: 'options.title',\n group: AXP_BEHAVIOR_PROPERTY_GROUP,\n});\n\nexport const AXP_LABEL_PROPERTY = createStringProperty({\n name: 'label',\n title: 'Label',\n path: 'options.label',\n group: AXP_BEHAVIOR_PROPERTY_GROUP,\n defaultValue: 'Sample Label',\n});\n\nexport const AXP_VALUE_FIELD_PROPERTY = createStringProperty({\n name: 'valueField',\n title: 'Value Field',\n path: 'options.valueField',\n group: AXP_DATA_PROPERTY_GROUP,\n});\n\nexport const AXP_TEXT_FIELD_PROPERTY = createStringProperty({\n name: 'textField',\n title: 'Text Field',\n path: 'options.textField',\n group: AXP_DATA_PROPERTY_GROUP,\n});\n\nexport const AXP_DESCRIPTION_PROPERTY = createStringProperty({\n name: 'description',\n title: 'Description',\n path: 'options.description',\n group: AXP_BEHAVIOR_PROPERTY_GROUP,\n});\n\nexport const AXP_STYLE_COLOR_PROPERTY = createSelectProperty({\n name: 'color',\n title: 'Color',\n dataSource: AX_STYLE_COLOR_TYPES,\n defaultValue: 'primary',\n path: 'options.color',\n group: AXP_STYLING_PROPERTY_GROUP,\n});\n\nexport const AXP_STYLE_LOOK_PROPERTY = createSelectProperty({\n name: 'look',\n title: 'Look',\n dataSource: AX_STYLE_LOOK_TYPES,\n defaultValue: 'solid',\n path: 'options.look',\n group: AXP_STYLING_PROPERTY_GROUP,\n});\n\nexport const AXP_DATE_FORMAT_PROPERTY = createSelectProperty({\n name: 'format',\n title: 'Format',\n dataSource: [\n { id: 'date', title: 'Date' },\n { id: 'datetime', title: 'DateTime' },\n { id: 'time', title: 'Time' },\n ],\n defaultValue: { id: 'date', title: 'date' },\n path: 'options.format',\n group: AXP_BEHAVIOR_PROPERTY_GROUP,\n});\n\nexport function booleanDefaultProperty(defaultValue: boolean = false): AXPWidgetProperty {\n return {\n name: 'defaultValue',\n title: 'Default Value',\n group: AXP_DATA_PROPERTY_GROUP,\n schema: {\n dataType: 'boolean',\n defaultValue: defaultValue,\n interface: {\n name: 'defaultValue',\n path: 'defaultValue',\n type: AXPWidgetsCatalog.toggle,\n },\n },\n visible: true,\n };\n}\n\nexport function plainTextDefaultProperty(): AXPWidgetProperty {\n return {\n name: 'defaultValue',\n title: 'Default Value',\n group: AXP_DATA_PROPERTY_GROUP,\n schema: {\n dataType: 'string',\n interface: {\n name: 'defaultValue',\n path: 'defaultValue',\n type: AXPWidgetsCatalog.text,\n },\n },\n visible: true,\n };\n}\n\nexport function largeTextDefaultProperty(): AXPWidgetProperty {\n return {\n name: 'defaultValue',\n title: 'Default Value',\n group: AXP_DATA_PROPERTY_GROUP,\n schema: {\n dataType: 'string',\n interface: {\n name: 'defaultValue',\n path: 'defaultValue',\n type: AXPWidgetsCatalog.largeText,\n },\n },\n visible: true,\n };\n}\n\nexport function numberDefaultProperty(): AXPWidgetProperty {\n return {\n name: 'defaultValue',\n title: 'Default Value',\n group: AXP_DATA_PROPERTY_GROUP,\n schema: {\n dataType: 'number',\n interface: {\n name: 'defaultValue',\n path: 'defaultValue',\n type: AXPWidgetsCatalog.number,\n },\n },\n visible: true,\n };\n}\n","import { AXPWidgetProperty, AXPWidgetPropertyGroup, AXPWidgetsCatalog, cloneProperty } from '@acorex/platform/layout/builder';\n\n\nexport const AXP_LAYOUT_GRID_PROPERTY_GROUP: AXPWidgetPropertyGroup = {\n name: \"grid\",\n order: 1,\n title: \"Grid Layout\"\n}\n\nexport const AXP_LAYOUT_FLEX_PROPERTY_GROUP: AXPWidgetPropertyGroup = {\n name: \"flex\",\n order: 1,\n title: \"Flex Layout\"\n}\n\nexport const AXP_LAYOUT_GAP_PROPERTY: AXPWidgetProperty = {\n name: 'gap',\n title: 'Gap',\n group: AXP_LAYOUT_GRID_PROPERTY_GROUP,\n schema: {\n dataType: 'number',\n defaultValue: 2,\n interface: {\n name: 'gap',\n path: 'options.gap',\n type: AXPWidgetsCatalog.number,\n options: {\n minValue: 0,\n maxValue: 12,\n },\n },\n },\n visible: true,\n};\n\nexport const AXP_LAYOUT_COL_SPAN_PROPERTY: AXPWidgetProperty = {\n name: 'colSpan',\n title: 'Column Span',\n group: AXP_LAYOUT_GRID_PROPERTY_GROUP,\n schema: {\n dataType: 'number',\n interface: {\n name: 'colSpan',\n path: 'options.colSpan',\n type: AXPWidgetsCatalog.number,\n options: {\n minValue: 0,\n maxValue: 12,\n },\n },\n },\n visible: true,\n};\n\nexport const AXP_LAYOUT_COL_START_PROPERTY: AXPWidgetProperty = {\n name: 'colStart',\n title: 'Column Start',\n group: AXP_LAYOUT_GRID_PROPERTY_GROUP,\n schema: {\n dataType: 'number',\n interface: {\n name: 'colStart',\n path: 'options.colStart',\n type: AXPWidgetsCatalog.number,\n options: {\n minValue: 1,\n maxValue: 13,\n },\n },\n },\n visible: true,\n};\n\nexport const AXP_LAYOUT_COL_END_PROPERTY: AXPWidgetProperty = {\n name: 'colEnd',\n title: 'Column End',\n group: AXP_LAYOUT_GRID_PROPERTY_GROUP,\n schema: {\n dataType: 'number',\n interface: {\n name: 'colEnd',\n path: 'options.colEnd',\n type: AXPWidgetsCatalog.number,\n options: {\n minValue: 1,\n maxValue: 13,\n },\n },\n },\n visible: true,\n};\n\nexport const AXP_LAYOUT_COLUMNS_PROPERTY: AXPWidgetProperty = {\n name: 'cols',\n title: 'Columns',\n group: AXP_LAYOUT_GRID_PROPERTY_GROUP,\n schema: {\n dataType: 'number',\n defaultValue: 1,\n interface: {\n name: 'cols',\n path: 'options.cols',\n type: AXPWidgetsCatalog.number,\n options: {\n minValue: 1,\n maxValue: 12,\n },\n },\n },\n visible: true,\n};\n\nexport const AXP_LAYOUT_ROWS_PROPERTY: AXPWidgetProperty = {\n name: 'rows',\n title: 'Rows',\n group: AXP_LAYOUT_GRID_PROPERTY_GROUP,\n schema: {\n dataType: 'number',\n defaultValue: 1,\n interface: {\n name: 'rows',\n path: 'options.rows',\n type: AXPWidgetsCatalog.number,\n options: {\n minValue: 1,\n maxValue: 100,\n },\n },\n },\n visible: true,\n};\n\n\n\nexport const AXP_LAYOUT_FLEX_JUSTIFY_PROPERTY: AXPWidgetProperty = {\n name: 'flexJustifyContent',\n title: 'Justify Content',\n group: AXP_LAYOUT_FLEX_PROPERTY_GROUP,\n schema: {\n dataType: 'string',\n defaultValue: { id: 'ax-justify-normal' },\n interface: {\n name: 'flexJustifyContent',\n path: 'options.flexJustifyContent',\n type: AXPWidgetsCatalog.select,\n options: {\n hasClearButton: false,\n dataSource: [\n { id: 'ax-justify-normal', title: 'Normal' },\n { id: 'ax-justify-start', title: 'Start' },\n { id: 'ax-justify-end', title: 'End' },\n { id: 'ax-justify-center', title: 'Center' },\n { id: 'ax-justify-between', title: 'Between' },\n { id: 'ax-justify-around', title: 'Around' },\n { id: 'ax-justify-evenly', title: 'Evenly' },\n { id: 'ax-justify-stretch', title: 'Stretch' },\n ],\n },\n },\n },\n visible: true,\n};\n\nexport const AXP_LAYOUT_FLEX_ALIGN_PROPERTY: AXPWidgetProperty = {\n name: 'flexAlignItems',\n title: 'Align Items',\n group: AXP_LAYOUT_FLEX_PROPERTY_GROUP,\n schema: {\n dataType: 'string',\n defaultValue: { id: 'ax-items-start' },\n interface: {\n name: 'flexAlignItems',\n path: 'options.flexAlignItems',\n type: AXPWidgetsCatalog.select,\n options: {\n hasClearButton: false,\n dataSource: [\n { id: 'ax-items-start', title: 'Start' },\n { id: 'ax-items-end', title: 'End' },\n { id: 'ax-items-center', title: 'Center' },\n { id: 'ax-items-baseline', title: 'Baseline' },\n { id: 'ax-items-stretch', title: 'Stretch' },\n ],\n },\n },\n },\n visible: true,\n};\n\n\nexport const AXP_LAYOUT_FLEX_DIRECTION_PROPERTY: AXPWidgetProperty = {\n name: 'flexDirection',\n title: 'Direction',\n group: AXP_LAYOUT_FLEX_PROPERTY_GROUP,\n schema: {\n dataType: 'string',\n defaultValue: { id: 'ax-flex-row' },\n interface: {\n name: 'flexDirection',\n path: 'options.flexDirection',\n type: AXPWidgetsCatalog.select,\n options: {\n hasClearButton: false,\n dataSource: [\n { id: 'ax-flex-row', title: 'Row' },\n { id: 'ax-flex-row-reverse', title: 'Row Reverse' },\n { id: 'ax-flex-col', title: 'Column' },\n { id: 'ax-flex-col-reverse', title: 'Column Reverse' }\n ],\n },\n },\n },\n visible: true,\n};\n\nexport const AXP_LAYOUT_FLEX_WRAP_PROPERTY: AXPWidgetProperty = {\n name: 'flexWrap',\n title: 'Wrap',\n group: AXP_LAYOUT_FLEX_PROPERTY_GROUP,\n schema: {\n dataType: 'string',\n defaultValue: { id: 'ax-flex-nowrap' },\n interface: {\n name: 'flexWrap',\n path: 'options.flexWrap',\n type: AXPWidgetsCatalog.select,\n options: {\n hasClearButton: false,\n dataSource: [\n { id: 'ax-flex-nowrap', title: 'No Wrap' },\n { id: 'ax-flex-wrap', title: 'Wrap' },\n { id: 'ax-flex-wrap-reverse', title: 'Wrap Reverse' }\n ],\n },\n },\n },\n visible: true,\n};\n\nexport const AXP_LAYOUT_ALIGN_CONTENT_PROPERTY: AXPWidgetProperty = {\n name: 'flexAlignContent',\n title: 'Align Content',\n group: AXP_LAYOUT_FLEX_PROPERTY_GROUP,\n schema: {\n dataType: 'string',\n defaultValue: { id: 'ax-content-start' },\n interface: {\n name: 'flexAlignContent',\n path: 'options.flexAlignContent',\n type: AXPWidgetsCatalog.select,\n options: {\n hasClearButton: false,\n dataSource: [\n { id: 'ax-content-start', title: 'Start' },\n { id: 'ax-content-end', title: 'End' },\n { id: 'ax-content-center', title: 'Center' },\n { id: 'ax-content-between', title: 'Between' },\n { id: 'ax-content-around', title: 'Around' },\n { id: 'ax-content-stretch', title: 'Stretch' },\n ],\n },\n },\n },\n visible: true,\n};\n\n\nexport const AXP_LAYOUT_GRID_PROPERTIES = [\n AXP_LAYOUT_GAP_PROPERTY,\n AXP_LAYOUT_COLUMNS_PROPERTY,\n AXP_LAYOUT_ROWS_PROPERTY\n]\n\nexport const AXP_LAYOUT_GRID_ROW_PROPERTIES = [\n AXP_LAYOUT_GAP_PROPERTY,\n cloneProperty(AXP_LAYOUT_COLUMNS_PROPERTY, { schema: { defaultValue: 12 } }),\n]\n\nexport const AXP_LAYOUT_GRID_ITEM_PROPERTIES = [\n AXP_LAYOUT_COL_SPAN_PROPERTY,\n AXP_LAYOUT_COL_START_PROPERTY,\n AXP_LAYOUT_COL_END_PROPERTY,\n]\n\nexport const AXP_LAYOUT_FLEX_PROPERTIES = [\n AXP_LAYOUT_FLEX_DIRECTION_PROPERTY,\n AXP_LAYOUT_FLEX_JUSTIFY_PROPERTY,\n AXP_LAYOUT_FLEX_ALIGN_PROPERTY,\n AXP_LAYOUT_GAP_PROPERTY,\n AXP_LAYOUT_FLEX_WRAP_PROPERTY,\n]","import { AXPWidgetProperty, AXPWidgetsCatalog } from '@acorex/platform/layout/builder';\nimport { AXP_STYLING_PROPERTY_GROUP } from './groups';\n\nexport const AXP_TABLE_COLUMN_WIDTH_PROPERTY: AXPWidgetProperty = {\n name: 'width',\n title: 'Width',\n group: AXP_STYLING_PROPERTY_GROUP,\n schema: {\n dataType: 'string',\n defaultValue: '300px',\n interface: {\n name: 'width',\n path: 'options.width',\n type: AXPWidgetsCatalog.text,\n },\n },\n visible: false,\n};\nexport const AXP_TABLE_COLUMN_HEIGHT_PROPERTY: AXPWidgetProperty = {\n name: 'height',\n title: 'Height',\n group: AXP_STYLING_PROPERTY_GROUP,\n schema: {\n dataType: 'string',\n defaultValue: '300px',\n interface: {\n name: 'height',\n path: 'options.height',\n type: AXPWidgetsCatalog.text,\n },\n },\n visible: false,\n};\n","import { AXP_WIDGETS_ACTION_GROUP, AXPWidgetConfig, cloneProperty } from '@acorex/platform/layout/builder';\nimport { AXP_DISABLED_PROPERTY, AXP_ICON_PROPERTY, AXP_IS_LOADING_PROPERTY, AXP_NAME_PROPERTY, AXP_STYLE_COLOR_PROPERTY, AXP_STYLE_LOOK_PROPERTY, AXP_TEXT_PROPERTY } from '../../../properties';\n\nexport const AXPButtonWidget: AXPWidgetConfig = {\n name: 'button-action',\n title: 'Button',\n description: 'Triggers customizable actions',\n icon: 'fa-solid fa-play',\n group: AXP_WIDGETS_ACTION_GROUP,\n type: 'action',\n properties: [\n AXP_NAME_PROPERTY,\n AXP_DISABLED_PROPERTY,\n cloneProperty(AXP_TEXT_PROPERTY, { schema: { defaultValue: 'Click Here' } }),\n AXP_STYLE_COLOR_PROPERTY,\n AXP_STYLE_LOOK_PROPERTY,\n AXP_ICON_PROPERTY,\n AXP_IS_LOADING_PROPERTY\n ],\n components: {\n designer: {\n component: () => import('./button-widget-designer.component').then((c) => c.AXPButtonWidgetDesignerComponent),\n },\n view: {\n component: () => import('./button-widget-view.component').then((c) => c.AXPButtonWidgetViewComponent),\n },\n edit: {\n component: () => import('./button-widget-view.component').then((c) => c.AXPButtonWidgetViewComponent),\n },\n },\n};\n\ndeclare module '@acorex/platform/layout/builder' {\n interface AXPWidgetTypesMap {\n buttonAction: 'button-action';\n }\n}\n","import { AXCheckBoxModule } from '@acorex/components/check-box';\nimport { CommonModule } from '@angular/common';\nimport { ChangeDetectionStrategy, Component, computed } from '@angular/core';\nimport { FormsModule } from '@angular/forms';\nimport { AXPWidgetComponent } from '@acorex/platform/layout/builder';\nimport { AXLabelModule } from '@acorex/components/label';\n\n@Component({\n selector: 'axp-checkbox-widget-edit',\n template: `\n <ax-check-box [ngModel]=\"this.getValue()\" [disabled]=\"disabled()\" [readonly]=\"readonly()\" (onValueChanged)=\"handleValueChanged($event)\"> \n @if(label())\n {\n <ax-label >{{label()}}</ax-label>\n }\n </ax-check-box>\n `,\n standalone: true,\n changeDetection: ChangeDetectionStrategy.OnPush,\n imports: [CommonModule, AXCheckBoxModule, FormsModule, AXLabelModule],\n})\nexport class AXPCheckBoxWidgetEditComponent extends AXPWidgetComponent<boolean | null> {\n\n protected negative = computed<boolean>(() => this.options()[\"negative\"] as boolean);\n protected trulyText = computed<boolean>(() => this.options()[\"trulyText\"] as boolean);\n protected falsyText = computed<boolean>(() => this.options()[\"falsyText\"] as boolean);\n protected disabled = computed<boolean>(() => this.options()[\"disabled\"] as boolean);\n protected readonly = computed<boolean>(() => this.options()[\"readonly\"] as boolean);\n protected label = computed<string>(() => this.options()[\"label\"] as string);\n\n}\n","import { AXPWidgetConfig, AXP_WIDGETS_EDITOR_GROUP } from '@acorex/platform/layout/builder';\nimport {\n AXP_DATA_PATH_PROPERTY,\n AXP_DISABLED_PROPERTY,\n AXP_LABEL_PROPERTY,\n AXP_READONLY_PROPERTY,\n AXP_VALIDATION_PROPERTY,\n booleanDefaultProperty,\n} from '../../../properties';\nimport { AXP_NAME_PROPERTY } from '../../../properties/general.props';\n\nexport const AXPCheckBoxWidget: AXPWidgetConfig = {\n name: 'checkbox-editor',\n title: 'Check Box',\n group: AXP_WIDGETS_EDITOR_GROUP,\n description: 'Selects multiple options via checkboxes',\n icon: 'fa-solid fa-square-check',\n type: 'editor',\n properties: [\n AXP_NAME_PROPERTY,\n AXP_DATA_PATH_PROPERTY,\n AXP_LABEL_PROPERTY,\n AXP_READONLY_PROPERTY,\n AXP_DISABLED_PROPERTY,\n AXP_VALIDATION_PROPERTY,\n booleanDefaultProperty()\n ],\n components: {\n designer: {\n component: () => import('./checkbox-widget-designer.component').then((c) => c.AXPCheckBoxWidgetDesignerComponent),\n },\n view: {\n component: () => import('./checkbox-widget-view.component').then((c) => c.AXPCheckBoxWidgetViewComponent),\n },\n edit: {\n component: () => import('./checkbox-widget-edit.component').then((c) => c.AXPCheckBoxWidgetEditComponent),\n },\n print: {\n component: () => import('./checkbox-widget-edit.component').then((c) => c.AXPCheckBoxWidgetEditComponent),\n },\n column: {\n component: () => import('./checkbox-widget-column.component').then((c) => c.AXPCheckBoxWidgetColumnComponent),\n },\n filter: {\n component: () => import('./checkbox-widget-edit.component').then((c) => c.AXPCheckBoxWidgetEditComponent),\n },\n },\n};\n\ndeclare module '@acorex/platform/layout/builder' {\n interface AXPWidgetTypesMap {\n checkbox: 'checkbox-editor';\n }\n}\n","import { AXPColumnWidgetComponent } from '@acorex/platform/layout/builder';\nimport { CommonModule } from '@angular/common';\nimport { ChangeDetectionStrategy, Component } from '@angular/core';\nimport { AXPContactDataType } from './contact.type';\n@Component({\n template: `<span class=\"ax-truncate\" [title]=\"getText('line')\">{{ getText('comma') }}</span>`,\n standalone: true,\n changeDetection: ChangeDetectionStrategy.OnPush,\n imports: [CommonModule],\n inputs: ['rawValue'],\n})\nexport class AXPContactWidgetColumnComponent extends AXPColumnWidgetComponent<any> {\n protected getText(seperator: 'line' | 'comma') {\n const sep = seperator === 'comma' ? ',' : '\\\\n';\n if (typeof this.rawValue === 'string') return this.rawValue;\n else {\n return this.rawValue?.map((item: AXPContactDataType) => this.itemToValue(item)).join(sep);\n }\n }\n private itemToValue = (item: AXPContactDataType | string): string => {\n if (typeof item === 'object') return item?.value ?? '';\n else return item;\n };\n}\n","import { AXButtonModule } from '@acorex/components/button';\nimport { AXDecoratorModule } from '@acorex/components/decorators';\nimport { AXFormComponent, AXFormModule } from '@acorex/components/form';\nimport { AXBasePageComponent } from '@acorex/components/page';\nimport { AXTextBoxModule } from '@acorex/components/text-box';\nimport { AXTranslationModule } from '@acorex/core/translation';\nimport { AXValidationModule } from '@acorex/core/validation';\nimport { CommonModule } from '@angular/common';\nimport { Component } from '@angular/core';\nimport { FormsModule } from '@angular/forms';\n\n@Component({\n selector: 'popup-component',\n standalone: true,\n template: `\n <ax-header>\n <ax-suffix> </ax-suffix>\n </ax-header>\n <div class=\"ax-p-6\">\n <ax-form #form>\n <ax-form-field>\n <ax-text-box [(ngModel)]=\"value\" type=\"text\" name=\"lable\" placeholder=\"Enter Lable ...\" class=\"ax-w-10/12\">\n <ax-validation-rule message=\"{{ 'validation.messages.required' | translate | async }}\" rule=\"required\"> </ax-validation-rule>\n </ax-text-box>\n </ax-form-field>\n </ax-form>\n </div>\n <ax-footer>\n <ax-suffix>\n <ax-button [text]=\"'apply' | translate | async\" color=\"primary\" (onClick)=\"handleClose(form)\"></ax-button>\n </ax-suffix>\n </ax-footer>\n `,\n imports: [AXTranslationModule, CommonModule, AXTextBoxModule, AXDecoratorModule, AXButtonModule, FormsModule, AXValidationModule, AXFormModule],\n})\nexport class popupComponent extends AXBasePageComponent {\n protected value!: string;\n constructor() {\n super();\n }\n\n protected handleClose(form: AXFormComponent) {\n form.validate().then((res) => {\n if (res.result) {\n this.close({ value: this.value });\n }\n });\n }\n}\n","import { AXButtonModule } from '@acorex/components/button';\nimport { AXDataSource, AXValueChangedEvent } from '@acorex/components/common';\nimport { AXDecoratorModule } from '@acorex/components/decorators';\nimport { AXFormModule } from '@acorex/components/form';\nimport { AXPopupConfig, AXPopupService } from '@acorex/components/popup';\nimport { AXSelectBoxModule } from '@acorex/components/select-box';\nimport { AXTextBoxModule } from '@acorex/components/text-box';\nimport { AXTranslationModule } from '@acorex/core/translation';\nimport { AXValidationModule, AXValidationService } from '@acorex/core/validation';\nimport { AXPValidationRules } from '@acorex/platform/core';\nimport { AXPWidgetComponent } from '@acorex/platform/layout/builder';\nimport { CommonModule } from '@angular/common';\nimport { ChangeDetectionStrategy, Component, HostBinding, Signal, computed, inject } from '@angular/core';\nimport { FormsModule } from '@angular/forms';\nimport { AXPContactDataType } from './contact.type';\nimport { popupComponent } from './popup-component';\n\n@Component({\n template: `<div class=\"ax-grid ax-grid-cols-12 ax-gap-4 ax-auto-cols-max\t\">\n @for(item of internalValue();track $index) {\n <ax-text-box\n [ngModel]=\"item.value\"\n (onValueChanged)=\"handleValueChange($event, $index)\"\n type=\"text\"\n name=\"value\"\n [placeholder]=\"placeholder()\"\n [ngClass]=\"generateClasses('value')\"\n [disabled]=\"disabled()\"\n >\n @for (validation of validationRules; track $index) {\n <ax-validation-rule\n [rule]=\"validation.rule\"\n [message]=\"validation.options?.message\"\n [options]=\"validation.options\"\n ></ax-validation-rule>\n } @if(type()==='email'){\n <ax-validation-rule [rule]=\"'email'\"></ax-validation-rule>\n }\n <ax-validation-rule message=\"{{ 'validation.messages.required' | translate | async }}\" rule=\"required\">\n </ax-validation-rule>\n </ax-text-box>\n @if(hasLabel()){\n <ax-select-box\n [dataSource]=\"dataSource\"\n [ngModel]=\"item.label\"\n [disabled]=\"disabled()\"\n (onValueChanged)=\"handleValueChange($event, $index)\"\n placeholder=\"{{ 'selectbox.popover.title' | translate | async }}\"\n name=\"label\"\n [ngClass]=\"generateClasses('label')\"\n >\n </ax-select-box>\n } @if(multiple()){\n <ax-button\n [disabled]=\"disabled()\"\n look=\"twotone\"\n color=\"danger\"\n (onClick)=\"deleteItem($index)\"\n class=\"ax-col-start-12 ax-col-end-13 ax-justify-self-end\"\n >\n <ax-icon icon=\"fa-regular fa-xmark\"></ax-icon>\n </ax-button>\n } } @if(multiple()){\n\n <ax-button\n [text]=\"internalValue().length == 0 ? 'Add New' : 'Add Another'\"\n [disabled]=\"disabled()\"\n look=\"twotone\"\n (onClick)=\"addItem()\"\n class=\"ax-col-start-9 ax-col-end-13 sm:ax-col-start-10 md:ax-col-start-9 lg:ax-col-start-10 xl:ax-col-start-10 \"\n >\n <ax-prefix>\n <ax-icon class=\"fa-solid fa-add\"></ax-icon>\n </ax-prefix>\n </ax-button>\n }\n </div> `,\n standalone: true,\n changeDetection: ChangeDetectionStrategy.OnPush,\n imports: [\n CommonModule,\n FormsModule,\n AXSelectBoxModule,\n AXFormModule,\n AXButtonModule,\n AXDecoratorModule,\n AXSelectBoxModule,\n AXTextBoxModule,\n AXValidationModule,\n AXTranslationModule,\n ],\n inputs: [],\n})\nexport class AXPContactWidgetEditComponent extends AXPWidgetComponent<\n string | string[] | AXPContactDataType | AXPContactDataType[] | undefined\n> {\n //properties\n protected type = computed<'link' | 'phone' | 'email'>(\n () => (this.options()['type']?.id as 'link' | 'phone' | 'email') ?? 'email'\n );\n protected labelList = computed<string[]>(() => this.options()['labelList'] || ['primary', 'secondary', 'Add New']);\n protected hasLabel = computed<boolean>(() => this.options()['hasLabel'] as boolean);\n protected multiple = computed<boolean>(() => this.options()['multiple'] as boolean);\n protected hasIcon = computed<boolean>(() => this.options()['hasIcon'] as boolean);\n protected disabled = computed<boolean>(() => this.options()['disabled'] as boolean);\n protected placeholder = computed<string>(\n () => (this.options()['placeholder'] as string) ?? `Enter ${this.type()} ...`\n );\n\n private format = computed<'object' | 'string'>(() => {\n if (this.hasIcon() || this.hasLabel()) {\n return 'object';\n } else {\n return 'string';\n }\n });\n\n protected internalValue: Signal<AXPContactDataType[]> = computed(() => this.valueToArray());\n\n constructor() {\n super();\n }\n private popup: AXPopupService = inject(AXPopupService);\n protected dataSource = new AXDataSource({\n pageSize: this.labelList().length,\n load: (e) => {\n return Promise.resolve({\n items: this.labelList().slice(e.skip, (e.skip ?? 0) + (e.take ?? 0)),\n total: this.labelList().length,\n });\n },\n byKey: (key) => {\n return Promise.resolve(this.labelList().find((i) => i === key));\n },\n });\n\n protected addItem() {\n const newValues: AXPContactDataType[] = [...this.internalValue(), this.emptyValue()];\n this.setValue(this.setFormatedValue(newValues));\n }\n\n protected deleteItem(deletedIndex: number) {\n const newValues = this.internalValue().filter((_, index) => index != deletedIndex);\n this.setValue(this.setFormatedValue(newValues));\n }\n protected async handleValueChange(e: AXValueChangedEvent, selectedIndex: number) {\n let { name, value, isUserInteraction } = e;\n if (isUserInteraction) {\n if (e.name === 'label') {\n if (e.value === 'Add New') {\n const options: AXPopupConfig = {\n title: 'Enter Label...',\n // header: false,\n // footer: true,\n size: 'sm',\n draggable: true,\n // hasBackdrop: true,\n // closeButton: true,\n // closeOnBackdropClick: true,\n };\n const newValue = await this.popup.open(popupComponent, { ...options }).then((e) => e.data);\n value = newValue.value;\n this.labelList().pop();\n this.labelList().push(value, 'Add New');\n this.dataSource.refresh();\n }\n }\n const newValues = this.internalValue().map((item, index) =>\n selectedIndex === index ? { ...item, [name as string]: value } : item\n );\n if (this.multiple()) {\n this.setValue(this.setFormatedValue(newValues));\n } else this.setValue(this.setFormatedValue(newValues[0]));\n }\n }\n protected generateClasses(element: 'value' | 'label'): string | any {\n const isValue = element === 'value';\n\n if (this.multiple()) {\n if (this.hasLabel()) {\n return isValue\n ? 'ax-col-start-1 ax-col-end-13 lg:ax-col-end-7'\n : 'ax-col-start-1 ax-col-end-11 lg:ax-col-start-7 lg:ax-col-end-12';\n } else {\n return isValue ? 'ax-col-start-1 ax-col-end-11 sm:ax-col-end-12 md:ax-col-end-12' : '';\n }\n } else {\n if (this.hasLabel()) {\n return isValue\n ? 'ax-col-start-1 ax-col-end-13 lg:ax-col-end-7'\n : 'ax-col-start-1 ax-col-end-13 lg:ax-col-start-7 lg:ax-col-end-13';\n } else {\n return isValue ? 'ax-col-start-1 ax-col-end-13' : '';\n }\n }\n }\n\n protected validationService = inject(AXValidationService);\n private _validationRules: AXPValidationRules = [];\n public get validationRules(): AXPValidationRules {\n console.log(this._validationRules);\n return this._validationRules;\n }\n public set validationRules(v: AXPValidationRules) {\n this._validationRules = v;\n }\n private valueToArray(): AXPContactDataType[] {\n const value = this.getValue();\n if (Array.isArray(value)) {\n return value.map((item) => this.itemToArray(item));\n } else {\n return [this.itemToArray(value ?? '')];\n }\n }\n private itemToArray = (item: AXPContactDataType | string): AXPContactDataType => {\n if (typeof item === 'object')\n return {\n value: item?.value ?? '',\n label: this.hasLabel() ? item?.label || this.labelList()[0] : undefined,\n icon: this.hasIcon() ? item?.icon || this.chooseIcon() : undefined,\n };\n else\n return {\n value: item,\n label: this.hasLabel() ? this.labelList()[0] : undefined,\n icon: this.hasIcon() ? this.chooseIcon() : undefined,\n };\n };\n private emptyValue(): AXPContactDataType {\n return {\n value: '',\n };\n }\n\n setFormatedValue(\n items: AXPContactDataType | AXPContactDataType[]\n ): string | string[] | AXPContactDataType | AXPContactDataType[] {\n if (this.format() === 'string') {\n return Array.isArray(items) ? items.map((x) => x.value) : items.value;\n } else {\n return items;\n }\n }\n\n private chooseIcon = (): string => {\n switch (this.type()) {\n case 'email':\n return 'fa-link';\n case 'link':\n return 'fa-envelope';\n case 'phone':\n return 'fa-phone';\n default:\n return 'fa-info';\n }\n };\n\n @HostBinding('class')\n private get __class(): string {\n const cls: any = {};\n cls[`ax-block`] = true;\n cls[`ax-flex-1`] = true;\n return cls;\n }\n}\n","import { AXPWidgetComponent } from '@acorex/platform/layout/builder';\nimport { CommonModule } from '@angular/common';\nimport { ChangeDetectionStrategy, Component, inject } from '@angular/core';\n@Component({\n template: ``,\n standalone: true,\n changeDetection: ChangeDetectionStrategy.OnPush,\n imports: [CommonModule],\n inputs: []\n})\nexport class AXPContactWidgetPrintComponent extends AXPWidgetComponent<any> { }","import { AXBadgeModule } from '@acorex/components/badge';\nimport { AXDecoratorModule } from '@acorex/components/decorators';\nimport { AXPClipBoardService } from '@acorex/platform/common';\nimport { AXPWidgetComponent } from '@acorex/platform/layout/builder';\nimport { CommonModule } from '@angular/common';\nimport { ChangeDetectionStrategy, Component, computed, inject, Signal } from '@angular/core';\nimport { FormsModule } from '@angular/forms';\nimport { AXPContactDataType } from './contact.type';\n\n@Component({\n template: `\n @for(item of internalValue();track $index){ @let href = type() === 'link' ? item.value :\n type()==='phone'?'tel:'+item.value : 'mailto:'+ item.value ;\n <div class=\"ax-flex ax-gap-4 ax-items-center ax-justify-between ax-py-1\">\n <div class=\"ax-flex ax-gap-4 ax-group ax-items-center ax-justify-center ax-truncate\">\n @if(hasIcon()){\n <ax-icon class=\"fa-solid ax-text-neutral-400\" [class]=\"chooseIcon()\"> </ax-icon>\n }\n <a\n [href]=\"href\"\n [target]=\"'_blank'\"\n class=\"ax-truncate ax-text-blue-700 group-hover:!ax-text-primary-500 group-hover:ax-underline group-hover:ax-decoration-blue-700\"\n >{{ item.value }}</a\n >\n <span\n class=\"ax-text-neutral-400 ax-cursor-pointer ax-invisible group-hover:ax-visible hover:!ax-text-primary-500\"\n (click)=\"clipboard.copy(type(), item.value)\"\n >\n <i class=\"fa-solid fa-copy\"></i>\n </span>\n </div>\n @if(hasLabel()){\n <div><ax-badge color=\"primary\" [look]=\"'twotone'\" [text]=\"item.label ?? ''\"></ax-badge></div>\n }\n </div>\n }\n `,\n standalone: true,\n changeDetection: ChangeDetectionStrategy.OnPush,\n imports: [CommonModule, FormsModule, AXBadgeModule, AXDecoratorModule],\n inputs: [],\n})\nexport class AXPContactWidgetViewComponent extends AXPWidgetComponent<AXPContactDataType | string> {\n protected type = computed<'link' | 'phone' | 'email'>(() => this.options()['type'] ?? 'link');\n protected labelList = computed<string[]>(() => this.options()['labelList'] ?? ['primary', 'secondary']);\n protected hasLabel = computed<boolean>(() => (this.options()['hasLabel'] as boolean) ?? false);\n protected multiple = computed<boolean>(() => (this.options()['multiple'] as boolean) ?? false);\n protected hasIcon = computed<boolean>(() => (this.options()['hasIcon'] as boolean) ?? false);\n\n protected internalValue: Signal<AXPContactDataType[]> = computed(() => this.itemToArray());\n protected clipboard = inject(AXPClipBoardService);\n\n protected chooseIcon = (): string => {\n switch (this.type()) {\n case 'email':\n return 'fa-envelope';\n case 'link':\n return 'fa-link';\n case 'phone':\n return 'fa-phone';\n default:\n return 'fa-info';\n }\n };\n private itemToArray(): AXPContactDataType[] {\n const value = this.getValue();\n if (Array.isArray(value)) {\n return value.map((item) => this.correctItems(item));\n } else {\n return [this.correctItems(value)];\n }\n }\n private correctItems = (item: AXPContactDataType | string): AXPContactDataType => {\n if (typeof item === 'object')\n return {\n value: item?.value ?? '',\n label: this.hasLabel() ? item?.label || this.labelList()[0] : undefined,\n icon: this.hasIcon() ? item?.icon || this.chooseIcon() : undefined,\n };\n else\n return {\n value: item,\n label: this.hasLabel() ? this.labelList()[0] : undefined,\n icon: this.hasIcon() ? this.chooseIcon() : undefined,\n };\n };\n}\n","import { AXP_WIDGETS_EDITOR_GROUP, AXPWidgetConfig, AXPWidgetsCatalog } from '@acorex/platform/layout/builder';\nimport {\n AXP_ALLOW_MULTIPLE_PROPERTY,\n AXP_BEHAVIOR_PROPERTY_GROUP,\n AXP_DATA_PATH_PROPERTY,\n AXP_DISABLED_PROPERTY,\n AXP_HAS_ICON_PROPERTY,\n AXP_HAS_LABEL_PROPERTY,\n AXP_NAME_PROPERTY,\n AXP_VALIDATION_PROPERTY,\n} from '../../../properties';\nexport const AXPContactWidget: AXPWidgetConfig = {\n name: 'contact-editor',\n title: 'Contact',\n description: 'Inputs contact information',\n group: AXP_WIDGETS_EDITOR_GROUP,\n icon: 'fa-solid fa-address-book',\n type: 'editor',\n properties: [\n AXP_NAME_PROPERTY,\n AXP_DATA_PATH_PROPERTY,\n {\n name: 'type',\n title: 'Contact Type',\n group: AXP_BEHAVIOR_PROPERTY_GROUP,\n schema: {\n dataType: 'string',\n nullable: false,\n interface: {\n defaultValue: 'link',\n name: 'type',\n path: 'options.type',\n type: AXPWidgetsCatalog.select,\n options: {\n dataSource: [\n { id: 'link', title: 'Link' },\n { id: 'email', title: 'Email' },\n { id: 'phone', title: 'Phone' },\n ],\n },\n },\n },\n visible: true,\n },\n\n AXP_DISABLED_PROPERTY,\n AXP_VALIDATION_PROPERTY,\n AXP_ALLOW_MULTIPLE_PROPERTY,\n AXP_HAS_LABEL_PROPERTY,\n AXP_HAS_ICON_PROPERTY,\n ],\n components: {\n view: {\n component: () => import('./contact-widget-view.component').then((c) => c.AXPContactWidgetViewComponent),\n },\n edit: {\n component: () => import('./contact-widget-edit.component').then((c) => c.AXPContactWidgetEditComponent),\n },\n filter: {\n component: () => import('./contact-widget-filter.component').then((c) => c.AXPContactWidgetFilterComponent),\n },\n column: {\n component: () => import('./contact-widget-column.component').then((c) => c.AXPContactWidgetColumnComponent),\n },\n print: {\n component: () => import('./contact-widget-print.component').then((c) => c.AXPContactWidgetPrintComponent),\n },\n designer: {\n component: () => import('./contact-widget-edit.component').then((c) => c.AXPContactWidgetEditComponent),\n },\n },\n};\n\ndeclare module '@acorex/platform/layout/builder' {\n interface AXPWidgetTypesMap {\n contact: 'contact-editor';\n }\n}\n","import { AXDateTimeFormatter } from '@acorex/core/date-time';\nimport { AXPWidgetComponent } from '@acorex/platform/layout/builder';\nimport { CommonModule } from '@angular/common';\nimport { ChangeDetectionStrategy, Component, computed, inject } from '@angular/core';\n\n@Component({\n template: `\n <div>\n @if(multiple()){ @for (item of internalValue(); track $index) {\n <p>{{ item }}</p>\n } } @else {\n <p>{{ internalValue()[0] }}</p>\n }\n </div>\n `,\n standalone: true,\n changeDetection: ChangeDetectionStrategy.OnPush,\n imports: [CommonModule],\n inputs: [],\n})\nexport class AXPDateTimeBoxWidgetViewComponent extends AXPWidgetComponent<string | string[]> {\n private formatter = inject(AXDateTimeFormatter);\n\n protected multiple = computed<boolean>(() => this.options()['multiple'] as boolean);\n protected format = computed<'date' | 'time' | 'datetime'>(() => this.options()['format']['id'] as any);\n\n protected internalValue = computed(() =>\n Array.isArray(this.getValue())\n ? (this.getValue() as string[]).map((v: string) => this.handleFormat(v))\n : [this.handleFormat(this.getValue() as string)]\n );\n\n protected handleFormat(value: string) {\n return value ? this.formatter.format(new Date(value), { format: this.format() }) : '---';\n }\n}\n","import { AXButtonModule } from '@acorex/components/button';\nimport { AXValueChangedEvent } from '@acorex/components/common';\nimport { AXDateTimeBoxModule } from '@acorex/components/datetime-box';\nimport { AXDecoratorModule } from '@acorex/components/decorators';\nimport { AXFormModule } from '@acorex/components/form';\nimport { AXValidationModule, AXValidationService } from '@acorex/core/validation';\nimport { AXPValidationRules } from '@acorex/platform/core';\nimport { AXPWidgetComponent } from '@acorex/platform/layout/builder';\nimport { CommonModule } from '@angular/common';\nimport { ChangeDetectionStrategy, Component, HostBinding, Signal, computed, inject } from '@angular/core';\nimport { FormsModule } from '@angular/forms';\n\n@Component({\n template: `\n <div class=\"ax-grid ax-grid-cols-12 ax-gap-4\">\n @for (datetime of internalValue(); track $index) {\n <ax-datetime-box\n class=\"ax-col-span-12\"\n [ngModel]=\"datetime\"\n (onValueChanged)=\"handleValueChange($event, $index)\"\n [disabled]=\"disabled()\"\n [format]=\"calendarFormat()\"\n [placeholder]=\"placeholder()\"\n >\n @for (validation of validationRules; track $index) {\n <ax-validation-rule\n [rule]=\"validation.rule\"\n [message]=\"validation.options?.message\"\n [options]=\"validation.options\"\n ></ax-validation-rule>\n } @if(clearButton()){\n <ax-clear-button></ax-clear-button>\n } @if(multiple()) {\n <ax-suffix>\n <ax-button class=\"ax-border-s\" (onClick)=\"deleteItem($index)\" look=\"blank\" color=\"danger\">\n <ax-icon class=\"far fa-trash\"> </ax-icon>\n </ax-button>\n </ax-suffix>\n }\n </ax-datetime-box>\n } @if(multiple()){\n <ax-button\n class=\"ax-col-start-9 lg:ax-col-start-10 xl:ax-col-start-11 ax-col-end-13\"\n [text]=\"!internalValue().length ? 'Add New' : 'Add Another'\"\n look=\"twotone\"\n (onClick)=\"addItem()\"\n [disabled]=\"disabled()\"\n ></ax-button>\n }\n </div>\n `,\n standalone: true,\n changeDetection: ChangeDetectionStrategy.OnPush,\n imports: [\n CommonModule,\n FormsModule,\n AXFormModule,\n AXValidationModule,\n AXDateTimeBoxModule,\n AXButtonModule,\n AXDecoratorModule,\n AXValidationModule,\n ],\n inputs: [],\n})\nexport class AXPDateTimeBoxWidgetEditComponent extends AXPWidgetComponent<string | string[]> {\n protected validationService = inject(AXValidationService);\n\n protected validationMessage?: string | null;\n\n protected multiple = computed<boolean>(() => this.options()['multiple'] as boolean);\n protected clearButton = computed<boolean>(() => this.options()['clearButton'] as boolean);\n protected format = computed<'date' | 'time' | 'datetime'>(() => this.options()['format']?.['id'] as any);\n protected disabled = computed<boolean>(() => this.options()['disabled'] as boolean);\n protected placeholder = computed<string>(() => this.options()['placeholder']);\n\n protected internalValue: Signal<string[]> = computed(() =>\n Array.isArray(this.getValue()) ? (this.getValue() as string[]) : [this.getValue() as string]\n );\n\n private _validationRules: AXPValidationRules = [];\n public get validationRules(): AXPValidationRules {\n return this._validationRules;\n }\n public set validationRules(v: AXPValidationRules) {\n this._validationRules = v;\n }\n\n protected handleValueChange(e: AXValueChangedEvent, i: number) {\n if (e.isUserInteraction) {\n const newValues = this.internalValue().map((item, index) => (i === index ? e.value : item));\n if (this.multiple()) this.setValue(newValues);\n else this.setValue(newValues[0]);\n }\n }\n\n protected calendarFormat = computed(() => {\n if (this.format() === 'date') return 'dd/MM/yyyy';\n else if (this.format() === 'time') return 'HH:mm';\n else return 'dd/MM/yyyy HH:mm';\n });\n\n protected addItem() {\n const newValues = [...this.internalValue(), ''];\n this.setValue(newValues);\n }\n\n protected deleteItem(i: number) {\n const newValues = this.internalValue().filter((_, index) => index != i);\n this.setValue(newValues);\n }\n\n @HostBinding('class')\n private get __class(): string {\n const cls: any = {};\n cls[`ax-block`] = true;\n cls[`ax-flex-1`] = true;\n return cls;\n }\n}\n","import { AXPWidgetComponent } from '@acorex/platform/layout/builder';\nimport { CommonModule } from '@angular/common';\nimport { ChangeDetectionStrategy, Component, inject } from '@angular/core';\nimport { FormsModule } from '@angular/forms';\n\n@Component({\n template: ``,\n standalone: true,\n changeDetection: ChangeDetectionStrategy.OnPush,\n imports: [CommonModule, FormsModule],\n inputs: []\n})\nexport class AXPDateTimeBoxWidgetFilterComponent extends AXPWidgetComponent<any> { }","import { AXDateTimeFormatter } from '@acorex/core/date-time';\nimport { AXPColumnWidgetComponent } from '@acorex/platform/layout/builder';\nimport { CommonModule } from '@angular/common';\nimport { ChangeDetectionStrategy, Component, Signal, computed, inject } from '@angular/core';\n@Component({\n template: `<span [title]=\"convertedValue()\">{{ convertedValue() }}</span>`,\n standalone: true,\n changeDetection: ChangeDetectionStrategy.OnPush,\n imports: [CommonModule],\n inputs: ['rawValue'],\n})\nexport class AXPDateTimeBoxWidgetColumnComponent extends AXPColumnWidgetComponent<string | string[]> {\n private formatter = inject(AXDateTimeFormatter);\n\n protected convertedValue: Signal<string | null> = computed(() => this.updateValue());\n protected multiple!: boolean;\n protected format: 'date' | 'time' | 'datetime' = 'datetime';\n\n private updateValue = () => {\n const rawValue = this.rawValue;\n if (rawValue == null) {\n return null;\n }\n if (this.isArray(rawValue)) {\n return rawValue.map((item: string) => this.handleFormat(item)).join(', ');\n } else {\n return this.handleFormat(rawValue);\n }\n };\n\n protected handleFormat(value: string) {\n return value ? this.formatter.format(new Date(value), { format: this.format }) : '---';\n }\n\n protected isArray(val: any) {\n return Array.isArray(val);\n }\n}\n","import { AXPWidgetComponent } from '@acorex/platform/layout/builder';\nimport { CommonModule } from '@angular/common';\nimport { ChangeDetectionStrategy, Component, inject } from '@angular/core';\n@Component({\n template: `{{getValue()}}`,\n standalone: true,\n changeDetection: ChangeDetectionStrategy.OnPush,\n imports: [CommonModule],\n inputs: []\n})\nexport class AXPDateTimeBoxWidgetPrintComponent extends AXPWidgetComponent<any> { }","import { AXP_WIDGETS_EDITOR_GROUP, AXPWidgetConfig, cloneProperty } from '@acorex/platform/layout/builder';\nimport {\n AXP_ALLOW_MULTIPLE_PROPERTY,\n AXP_DATA_PATH_PROPERTY,\n AXP_DATE_FORMAT_PROPERTY,\n AXP_DISABLED_PROPERTY,\n AXP_PLACEHOLDER_PROPERTY,\n AXP_READONLY_PROPERTY,\n AXP_TABLE_COLUMN_WIDTH_PROPERTY,\n AXP_VALIDATION_PROPERTY,\n} from '../../../properties';\nimport { AXP_NAME_PROPERTY } from '../../../properties/general.props';\nexport const AXPDateTimeBoxWidget: AXPWidgetConfig = {\n name: 'date-time-editor',\n title: 'Date Time Box',\n description: 'Selects date and time',\n icon: 'fa-solid fa-calendar',\n group: AXP_WIDGETS_EDITOR_GROUP,\n type: 'editor',\n properties: [\n AXP_NAME_PROPERTY,\n AXP_DATA_PATH_PROPERTY,\n AXP_ALLOW_MULTIPLE_PROPERTY,\n AXP_DATE_FORMAT_PROPERTY,\n AXP_READONLY_PROPERTY,\n AXP_DISABLED_PROPERTY,\n AXP_VALIDATION_PROPERTY,\n AXP_PLACEHOLDER_PROPERTY,\n cloneProperty(AXP_TABLE_COLUMN_WIDTH_PROPERTY, { schema: { defaultValue: '200px' } }),\n ],\n components: {\n view: {\n component: () => import('./date-time-box-widget-view.component').then((c) => c.AXPDateTimeBoxWidgetViewComponent),\n },\n edit: {\n component: () => import('./date-time-box-widget-edit.component').then((c) => c.AXPDateTimeBoxWidgetEditComponent),\n },\n filter: {\n component: () =>\n import('./date-time-box-widget-filter.component').then((c) => c.AXPDateTimeBoxWidgetFilterComponent),\n },\n column: {\n component: () =>\n import('./date-time-box-widget-column.component').then((c) => c.AXPDateTimeBoxWidgetColumnComponent),\n },\n print: {\n component: () =>\n import('./date-time-box-widget-print.component').then((c) => c.AXPDateTimeBoxWidgetPrintComponent),\n },\n designer: {\n component: () => import('./date-time-box-widget-edit.component').then((c) => c.AXPDateTimeBoxWidgetEditComponent),\n },\n },\n};\n\ndeclare module '@acorex/platform/layout/builder' {\n interface AXPWidgetTypesMap {\n dateTime: 'date-time-editor';\n }\n}\n","import { AXBadgeModule } from '@acorex/components/badge';\nimport { AXPClipBoardService } from '@acorex/platform/common';\nimport { AXPWidgetComponent } from '@acorex/platform/layout/builder';\nimport { CommonModule } from '@angular/common';\nimport { ChangeDetectionStrategy, Component, computed, inject } from '@angular/core';\n\n@Component({\n template: `\n <div class=\"ax-grid ax-grid-cols-12 ax-gap-2\">\n @if(multiple())\n {\n @for(item of internalValue();track item?.value) {\n <ng-template [ngTemplateOutlet]=\"itemTemplate\" [ngTemplateOutletContext]=\"{ data: item }\" ]></ng-template>\n }\n }\n @else\n {\n <ng-template [ngTemplateOutlet]=\"itemTemplate\" [ngTemplateOutletContext]=\"{ data: internalValue()[0] }\" ]></ng-template>\n }\n <ng-template #itemTemplate let-item=\"data\">\n @if(item)\n {\n <div class=\"ax-col-start-1 ax-col-end-10 lg:ax-col-end-7\">\n <div class=\"ax-flex ax-flex-1 ax-gap-3 ax-items-center ax-w-max ax-group\">\n <div class=\"ax-w-6 ax-h-6 ax-flex ax-items-center ax-justify-center\">\n <i class=\"fa-solid ax-text-neutral-400 fa-envelope\"></i>\n </div>\n <a class=\"group-hover:!ax-text-primary-500\" href=\"tel:{{ item.value }}\">{{ item.value }}</a>\n <span\n class=\"ax-text-neutral-400 ax-cursor-pointer ax-invisible group-hover:ax-visible hover:!ax-text-primary-500\"\n (click)=\"clipboard.copy('Email', item.value)\"\n >\n <i class=\"fa-solid fa-copy \"></i>\n </span>\n @if(hasLabel()){\n <ax-badge color=\"primary\" [look]=\"'twotone'\" [text]=\"item.label\"></ax-badge>\n }\n </div>\n </div>\n }\n </ng-template>\n </div>\n `,\n standalone: true,\n changeDetection: ChangeDetectionStrategy.OnPush,\n imports: [CommonModule, AXBadgeModule],\n inputs: [],\n})\nexport class AXPEmailBoxWidgetViewComponent extends AXPWidgetComponent<any> {\n protected clipboard = inject(AXPClipBoardService);\n\n protected multiple = computed<boolean>(() => this.options()[\"multiple\"] as boolean);\n protected hasLabel = computed<boolean>(() => (this.options()[\"hasLabel\"] as boolean) ?? true);\n\n\n protected internalValue = computed(() =>\n this.getValue()\n ? Array.isArray(this.getValue())\n ? this.getValue().map((item: any) => this.extractItem(item))\n : [this.extractItem(this.getValue())]\n : []\n );\n\n private extractItem(item: any): any {\n return typeof item == 'object'\n ? {\n value: item.value ?? '-',\n label: item.label ?? 'Primary',\n }\n : {\n value: item,\n label: 'Primary',\n };\n }\n}\n","import { AXButtonModule } from '@acorex/components/button';\nimport { AXValueChangedEvent } from '@acorex/components/common';\nimport { AXDecoratorModule } from '@acorex/components/decorators';\nimport { AXFormModule } from '@acorex/components/form';\nimport { AXSelectBoxModule } from '@acorex/components/select-box';\nimport { AXTextBoxModule } from '@acorex/components/text-box';\nimport { AXValidationModule, AXValidationService } from '@acorex/core/validation';\nimport { AXPValidationRules } from '@acorex/platform/core';\nimport { AXPWidgetComponent } from '@acorex/platform/layout/builder';\nimport { CommonModule } from '@angular/common';\nimport { ChangeDetectionStrategy, Component, HostBinding, Signal, computed, inject } from '@angular/core';\nimport { FormsModule } from '@angular/forms';\n\n@Component({\n template: `\n <div class=\"ax-grid ax-grid-cols-12 ax-gap-4\">\n @if(multiple())\n {\n @for(item of internalValue();track $index) \n {\n <ax-text-box\n [ngModel]=\"item.value\"\n (onValueChanged)=\"handleValueChange($event, $index)\"\n type=\"text\"\n [disabled]=\"disabled()\"\n class=\"ax-col-start-1 ax-col-end-13 lg:ax-col-end-8\"\n [class.lg:!ax-col-end-12]=\"!hasLabel()\"\n >\n @for (validation of validationRules; track $index) {\n <ax-validation-rule [rule]=\"validation.rule\" [message]=\"validation.options?.message\" [options]=\"validation.options\"></ax-validation-rule>\n }\n <ax-validation-rule [rule]=\"'email'\"></ax-validation-rule>\n </ax-text-box>\n @if(hasLabel())\n {\n <ax-select-box\n [dataSource]=\"lables()\"\n [ngModel]=\"item.label\"\n [disabled]=\"disabled()\"\n (onValueChanged)=\"handleLabelChange($event, $index)\"\n class=\"ax-col-start-1 ax-col-end-11 lg:ax-col-start-8 lg:ax-col-end-12\"\n >\n </ax-select-box>\n }\n <ax-button\n look=\"twotone\"\n color=\"danger\"\n [disabled]=\"disabled()\"\n (onClick)=\"deleteItem($index)\"\n class=\"ax-col-start-11 ax-col-end-13 lg:ax-col-start-12 lg:ax-col-end-13 ax-justify-self-end\">\n <ax-icon icon=\"fa-regular fa-xmark\"></ax-icon>\n </ax-button>\n }\n <ax-button\n [disabled]=\"disabled()\"\n [text]=\"internalValue().length == 0 ? 'Add New' : 'Add Another'\"\n look=\"twotone\"\n (onClick)=\"addItem()\"\n class=\"ax-col-start-8 lg:ax-col-start-10 2xl:ax-col-start-10 ax-col-end-13\">\n <ax-prefix>\n <ax-icon class=\"fa-solid fa-add\"></ax-icon>\n </ax-prefix>\n </ax-button>\n }\n @else \n {\n <ax-text-box\n [ngModel]=\"internalValue()[0].value\"\n (onValueChanged)=\"handleValueChange($event, 0)\"\n [placeholder]=\"placeholder()\"\n [disabled]=\"disabled()\"\n type=\"text\"\n class=\"ax-col-start-1 ax-col-end-13 lg:ax-col-end-8\"\n [class.lg:!ax-col-end-13]=\"!hasLabel()\">\n @for (validation of validationRules; track $index) {\n <ax-validation-rule [rule]=\"validation.rule\" [message]=\"validation.options?.message\" [options]=\"validation.options\"></ax-validation-rule>\n }\n <ax-validation-rule [rule]=\"'email'\"></ax-validation-rule>\n </ax-text-box>\n @if(hasLabel()){\n <ax-select-box\n [dataSource]=\"lables()\"\n [disabled]=\"disabled()\"\n [ngModel]=\"internalValue()[0].label\"\n (onValueChanged)=\"handleLabelChange($event, 0)\"\n class=\"ax-col-start-1 ax-col-end-11 lg:ax-col-start-8 lg:ax-col-end-13\"\n >\n </ax-select-box>\n }\n }\n </div>\n `,\n standalone: true,\n changeDetection: ChangeDetectionStrategy.OnPush,\n imports: [CommonModule, FormsModule, AXFormModule, AXButtonModule, AXDecoratorModule, AXSelectBoxModule, AXTextBoxModule, AXValidationModule],\n inputs: [],\n})\nexport class AXPEmailBoxWidgetEditComponent extends AXPWidgetComponent<any> {\n protected validationService = inject(AXValidationService);\n protected validationMessage?: string | null;\n\n\n protected multiple = computed<boolean>(() => this.options()[\"multiple\"] as boolean);\n protected disabled = computed<boolean>(() => this.options()[\"disabled\"] as boolean);\n protected clearButton = computed<boolean>(() => (this.options()[\"clearButton\"] as boolean) ?? true);\n protected placeholder = computed<string>(() => (this.options()[\"placeholder\"] as string));\n\n protected hasLabel = computed<boolean>(() => (this.options()[\"hasLabel\"] as boolean) ?? true);\n protected lables = computed<string[]>(() => (this.options()[\"lables\"] as string[]) ?? ['Primary', 'Secondary']);\n\n\n\n protected internalValue: Signal<{ value: string; label?: string; id: string }[]> = computed(() => this.getValueAsArrayOfObjects());\n\n private _validationRules: AXPValidationRules = [];\n public get validationRules(): AXPValidationRules {\n return this._validationRules;\n }\n public set validationRules(v: AXPValidationRules) {\n this._validationRules = v;\n }\n\n private getValueAsArrayOfObjects(): any[] {\n const value = this.getValue();\n if (Array.isArray(value)) {\n return value.map((item) => (typeof item === 'object' ? item : { value: item }));\n }\n return typeof value === 'object' ? [value || ''] : [{ value: value || '' }];\n }\n\n protected handleValueChange(e: AXValueChangedEvent, selectedIndex: number) {\n if (e.isUserInteraction) {\n const newValues = this.internalValue().map((item, index) => (selectedIndex === index ? this.convertItem(item, e) : item));\n if (this.multiple()) {\n this.setValue(newValues);\n }\n else {\n this.setValue(newValues[0]);\n }\n }\n }\n\n protected convertItem = (item: any, e: any) => {\n if (typeof item === 'object') {\n return { ...item, value: e.value };\n }\n else {\n return e.value;\n }\n };\n\n protected handleLabelChange(e: AXValueChangedEvent, selectedIndex: number) {\n if (e.isUserInteraction) {\n const newValues = this.internalValue().map((item, index) => (selectedIndex === index ? { ...item, label: e.value } : item));\n if (this.multiple()) {\n this.setValue(newValues);\n }\n else {\n this.setValue(newValues[0]);\n }\n }\n }\n\n protected addItem() {\n const newValues = [...this.internalValue(), ''];\n this.setValue(newValues);\n }\n protected deleteItem(deletedIndex: number) {\n const newValues = this.internalValue().filter((_, index) => index != deletedIndex);\n this.setValue(newValues);\n }\n\n @HostBinding('class')\n private get __class(): string {\n const cls: any = {};\n cls[`ax-block`] = true;\n cls[`ax-flex-1`] = true;\n return cls;\n }\n}\n","import { AXPWidgetComponent } from '@acorex/platform/layout/builder';\nimport { CommonModule } from '@angular/common';\nimport { ChangeDetectionStrategy, Component, inject } from '@angular/core';\nimport { FormsModule } from '@angular/forms';\n\n@Component({\n template: ``,\n standalone: true,\n changeDetection: ChangeDetectionStrategy.OnPush,\n imports: [CommonModule, FormsModule],\n inputs: []\n})\nexport class AXPEmailBoxWidgetFilterComponent extends AXPWidgetComponent<any> { }","import { AXPColumnWidgetComponent } from '@acorex/platform/layout/builder';\nimport { CommonModule } from '@angular/common';\nimport { ChangeDetectionStrategy, Component, Signal, computed } from '@angular/core';\n@Component({\n template: `<div>\n @if(multiple && list.length>1){\n <div [title]=\"text()\">{{ dot3(text()) }}</div>\n }@else {\n <div>\n @if(list() && list().length){\n {{ list()[0].value }}\n }@else { - }\n </div>\n }\n </div>`,\n standalone: true,\n changeDetection: ChangeDetectionStrategy.OnPush,\n imports: [CommonModule],\n inputs: ['rawValue'],\n})\nexport class AXPEmailBoxWidgetColumnComponent extends AXPColumnWidgetComponent<any> {\n protected list: Signal<{ value: string; label: string }[]> = computed(() =>\n Array.isArray(this.rawValue) ? this.rawValue.map((c) => this.extractItem(c)) : [this.extractItem(this.rawValue)]\n );\n protected text: Signal<string> = computed(() =>\n this.list()\n .map((item) => item.value)\n .join('\\n')\n );\n protected multiple!: boolean;\n protected hasLabel!: boolean;\n\n protected dot3(text: string) {\n console.log(text);\n if (this.multiple) return text.split('\\n')[0] + '...';\n else return text.split('\\n')[0];\n }\n\n private extractItem(item: any): any {\n return typeof item == 'object'\n ? {\n value: item.value ?? '-',\n type: item.type ?? 'primary',\n label: item.label,\n }\n : {\n value: item,\n type: 'primary',\n label: null,\n };\n }\n}\n","import { AXPWidgetComponent } from '@acorex/platform/layout/builder';\nimport { CommonModule } from '@angular/common';\nimport { ChangeDetectionStrategy, Component, inject } from '@angular/core';\n@Component({\n template: ``,\n standalone: true,\n changeDetection: ChangeDetectionStrategy.OnPush,\n imports: [CommonModule],\n inputs: []\n})\nexport class AXPEmailBoxWidgetPrintComponent extends AXPWidgetComponent<any> { }","import { AXPWidgetConfig, AXP_WIDGETS_EDITOR_GROUP } from '@acorex/platform/layout/builder';\nimport {\n AXP_ALLOW_MULTIPLE_PROPERTY,\n AXP_DATA_PATH_PROPERTY,\n AXP_DISABLED_PROPERTY,\n AXP_HAS_LABEL_PROPERTY,\n AXP_PLACEHOLDER_PROPERTY,\n AXP_VALIDATION_PROPERTY,\n} from '../../../properties';\nimport { AXP_NAME_PROPERTY } from '../../../properties/general.props';\n\nexport const AXPEmailBoxWidget: AXPWidgetConfig = {\n name: 'email-editor',\n title: 'Email Box',\n description: 'Inputs and validates email addresses',\n icon: 'fa-solid fa-envelope',\n group: AXP_WIDGETS_EDITOR_GROUP,\n type: 'editor',\n properties: [\n AXP_NAME_PROPERTY,\n AXP_DATA_PATH_PROPERTY,\n AXP_ALLOW_MULTIPLE_PROPERTY,\n AXP_DISABLED_PROPERTY,\n AXP_VALIDATION_PROPERTY,\n AXP_PLACEHOLDER_PROPERTY,\n AXP_HAS_LABEL_PROPERTY,\n ],\n components: {\n view: {\n component: () => import('./email-box-widget-view.component').then((c) => c.AXPEmailBoxWidgetViewComponent),\n },\n edit: {\n component: () => import('./email-box-widget-edit.component').then((c) => c.AXPEmailBoxWidgetEditComponent),\n },\n filter: {\n component: () => import('./email-box-widget-filter.component').then((c) => c.AXPEmailBoxWidgetFilterComponent),\n },\n column: {\n component: () => import('./email-box-widget-column.component').then((c) => c.AXPEmailBoxWidgetColumnComponent),\n },\n print: {\n component: () => import('./email-box-widget-print.component').then((c) => c.AXPEmailBoxWidgetPrintComponent),\n },\n designer: {\n component: () => import('./email-box-widget-edit.component').then((c) => c.AXPEmailBoxWidgetEditComponent),\n },\n },\n};\n\ndeclare module '@acorex/platform/layout/builder' {\n interface AXPWidgetTypesMap {\n email: 'email-editor';\n }\n}\n","import { AXPWidgetComponent } from '@acorex/platform/layout/builder';\nimport { CommonModule } from '@angular/common';\nimport { ChangeDetectionStrategy, Component } from '@angular/core';\n\n@Component({\n template: `\n <div class=\"ax-max-w-full\">\n <span>\n {{ getValue() }}\n </span>\n </div>\n `,\n standalone: true,\n changeDetection: ChangeDetectionStrategy.OnPush,\n imports: [CommonModule],\n inputs: [],\n})\nexport class AXPLargeTextWidgetViewComponent extends AXPWidgetComponent<string> { }\n","import { AXDecoratorModule } from '@acorex/components/decorators';\nimport { AXFormModule } from '@acorex/components/form';\nimport { AXTextAreaModule } from '@acorex/components/text-area';\nimport { AXPValidationRules } from '@acorex/platform/core';\nimport { AXPWidgetComponent } from '@acorex/platform/layout/builder';\nimport { CommonModule } from '@angular/common';\nimport { ChangeDetectionStrategy, Component, computed, HostBinding } from '@angular/core';\nimport { FormsModule } from '@angular/forms';\n\n@Component({\n selector: 'axp-large-text-box-widget',\n template: `\n <ax-text-area\n [disabled]=\"disabled()\"\n [ngModel]=\"getValue()\"\n (ngModelChange)=\"setValue($event)\"\n [placeholder]=\"placeholder()\"\n >\n @if(clearButton()){\n <ax-clear-button></ax-clear-button>\n } @for (validation of validationRules(); track $index) {\n <ax-validation-rule\n [rule]=\"validation.rule\"\n [message]=\"validation.options?.message\"\n [options]=\"validation.options\"\n ></ax-validation-rule>\n }\n </ax-text-area>\n `,\n standalone: true,\n changeDetection: ChangeDetectionStrategy.OnPush,\n imports: [CommonModule, AXDecoratorModule, FormsModule, AXFormModule, AXTextAreaModule],\n inputs: ['disabled', 'clearButton'],\n})\nexport class AXPLargeTextWidgetEditComponent extends AXPWidgetComponent<string> {\n protected multiple = computed<boolean>(() => this.options()['multiple'] as boolean);\n protected disabled = computed<boolean>(() => this.options()['disabled'] as boolean);\n protected clearButton = computed<boolean>(() => (this.options()['clearButton'] as boolean) ?? true);\n protected placeholder = computed<string>(() => this.options()['placeholder'] as string);\n\n protected validationRules = computed<AXPValidationRules>(\n () => (this.options()['validationRules'] as AXPValidationRules) ?? []\n );\n\n @HostBinding('class')\n private get __class(): string {\n const cls: any = {};\n cls[`ax-block`] = true;\n cls[`ax-flex-1`] = true;\n return cls;\n }\n}\n","import { AXPWidgetComponent } from '@acorex/platform/layout/builder';\nimport { CommonModule } from '@angular/common';\nimport { ChangeDetectionStrategy, Component, inject } from '@angular/core';\nimport { FormsModule } from '@angular/forms';\n\n@Component({\n template: ``,\n standalone: true,\n changeDetection: ChangeDetectionStrategy.OnPush,\n imports: [CommonModule, FormsModule],\n inputs: []\n})\nexport class AXPLargeTextWidgetFilterComponent extends AXPWidgetComponent<any> { }","import { AXPColumnWidgetComponent } from '@acorex/platform/layout/builder';\nimport { CommonModule } from '@angular/common';\nimport { ChangeDetectionStrategy, Component } from '@angular/core';\n@Component({\n template: `<span class=\"ax-truncate\">\n {{ rawValue }}\n </span>`,\n standalone: true,\n changeDetection: ChangeDetectionStrategy.OnPush,\n imports: [CommonModule],\n inputs: ['rawValue'],\n})\nexport class AXPLargeTextWidgetColumnComponent extends AXPColumnWidgetComponent<string> { }\n","import { AXPWidgetComponent } from '@acorex/platform/layout/builder';\nimport { CommonModule } from '@angular/common';\nimport { ChangeDetectionStrategy, Component, inject } from '@angular/core';\n@Component({\n template: ``,\n standalone: true,\n changeDetection: ChangeDetectionStrategy.OnPush,\n imports: [CommonModule],\n inputs: []\n})\nexport class AXPLargeTextWidgetPrintComponent extends AXPWidgetComponent<any> { }","import { AXP_WIDGETS_EDITOR_GROUP, AXPWidgetConfig } from '@acorex/platform/layout/builder';\nimport {\n AXP_DATA_PATH_PROPERTY,\n AXP_DISABLED_PROPERTY,\n AXP_PLACEHOLDER_PROPERTY,\n AXP_VALIDATION_PROPERTY,\n largeTextDefaultProperty,\n} from '../../../properties';\nimport { AXP_NAME_PROPERTY } from '../../../properties/general.props';\n\nexport const AXPLargeTextWidget: AXPWidgetConfig = {\n name: 'large-text-editor',\n title: 'Large Text Box',\n description: 'Inputs long text entries',\n icon: 'fa-solid fa-input-text',\n group: AXP_WIDGETS_EDITOR_GROUP,\n type: 'editor',\n properties: [\n AXP_NAME_PROPERTY,\n AXP_DATA_PATH_PROPERTY,\n AXP_DISABLED_PROPERTY,\n AXP_VALIDATION_PROPERTY,\n AXP_PLACEHOLDER_PROPERTY,\n largeTextDefaultProperty(),\n //cloneProperty(AXP_TABLE_COLUMN_WIDTH_PROPERTY, { schema: { defaultValue: '300px' } }),\n ],\n components: {\n view: {\n component: () => import('./large-text-widget-view.component').then((c) => c.AXPLargeTextWidgetViewComponent),\n properties: [],\n },\n edit: {\n component: () => import('./large-text-widget-edit.component').then((c) => c.AXPLargeTextWidgetEditComponent),\n },\n filter: {\n component: () => import('./large-text-widget-filter.component').then((c) => c.AXPLargeTextWidgetFilterComponent),\n },\n column: {\n component: () => import('./large-text-widget-column.component').then((c) => c.AXPLargeTextWidgetColumnComponent),\n },\n print: {\n component: () => import('./large-text-widget-print.component').then((c) => c.AXPLargeTextWidgetPrintComponent),\n },\n designer: {\n component: () => import('./large-text-widget-edit.component').then((c) => c.AXPLargeTextWidgetEditComponent),\n },\n },\n};\n\ndeclare module '@acorex/platform/layout/builder' {\n interface AXPWidgetTypesMap {\n largeText: 'large-text-editor';\n }\n}\n","import { AXBadgeModule } from '@acorex/components/badge';\nimport { AXDecoratorModule } from '@acorex/components/decorators';\nimport { AXPClipBoardService } from '@acorex/platform/common';\nimport { AXPWidgetComponent } from '@acorex/platform/layout/builder';\nimport { CommonModule } from '@angular/common';\nimport { ChangeDetectionStrategy, Component, computed, inject } from '@angular/core';\n\n@Component({\n template: `<div class=\"ax-grid ax-grid-cols-12 ax-gap-2 \">\n @if(multiple){ @for(item of internalValue();track item?.value) {\n <ng-template [ngTemplateOutlet]=\"itemTemplate\" [ngTemplateOutletContext]=\"{ data: item }\" ]></ng-template>\n } } @else{\n <ng-template [ngTemplateOutlet]=\"itemTemplate\" [ngTemplateOutletContext]=\"{ data: internalValue()[0] }\" ]></ng-template>\n }\n\n <ng-template #itemTemplate let-item=\"data\">\n @if(item){\n <div class=\"ax-col-start-1 ax-col-end-10 lg:ax-col-end-7\">\n <div class=\"ax-flex ax-flex-1 ax-gap-3 ax-items-center ax-w-max ax-group\">\n <div class=\"ax-w-6 ax-h-6 ax-flex ax-items-center ax-justify-center\">\n @if(item.icon){\n <ax-icon class=\"fa-solid ax-text-neutral-400\" [class]=\"item.icon\"> </ax-icon>\n }\n </div>\n <a\n [href]=\"item.value\"\n [target]=\"'_' + target\"\n class=\"ax-text-blue-700 group-hover:!ax-text-primary-500 group-hover:ax-underline group-hover:ax-decoration-blue-700\"\n >{{ item.title ?? item.value }}</a\n >\n <span\n class=\"ax-text-neutral-400 ax-cursor-pointer ax-invisible group-hover:ax-visible hover:!ax-text-primary-500\"\n (click)=\"clipboard.copy('Email', item.value)\"\n >\n <i class=\"fa-solid fa-copy \"></i>\n </span>\n @if(hasLabel){\n <ax-badge color=\"primary\" [look]=\"'twotone'\" [text]=\"item.label\"></ax-badge>\n }\n </div>\n </div>\n }\n </ng-template>\n </div>`,\n standalone: true,\n changeDetection: ChangeDetectionStrategy.OnPush,\n imports: [CommonModule, AXBadgeModule, AXDecoratorModule],\n inputs: [],\n})\nexport class AXPLinkWidgetViewComponent extends AXPWidgetComponent<any> {\n protected clipboard = inject(AXPClipBoardService);\n protected multiple!: boolean;\n protected hasLabel!: boolean;\n protected target: 'self' | 'blank' = 'blank';\n\n protected internalValue = computed(() =>\n this.getValue()\n ? Array.isArray(this.getValue())\n ? this.getValue().map((item: any) => this.extractItem(item))\n : [this.extractItem(this.getValue())]\n : []\n );\n\n private extractItem(item: any): any {\n return typeof item == 'object'\n ? {\n value: item.value ?? '-',\n title: item.title,\n label: this.hasLabel ? item.label || 'primary' : undefined,\n icon: item.icon,\n }\n : {\n value: item,\n title: '',\n icon: '',\n label: 'Primary',\n };\n }\n}\n","import { AXButtonModule } from '@acorex/components/button';\nimport { AXDataSource, AXValueChangedEvent } from '@acorex/components/common';\nimport { AXDecoratorModule } from '@acorex/components/decorators';\nimport { AXFormModule } from '@acorex/components/form';\nimport { AXSelectBoxModule } from '@acorex/components/select-box';\nimport { AXTextBoxModule } from '@acorex/components/text-box';\nimport { AXTranslationService } from '@acorex/core/translation';\nimport { AXValidationModule, AXValidationService } from '@acorex/core/validation';\nimport { AXPValidationRules } from '@acorex/platform/core';\nimport { AXPWidgetComponent } from '@acorex/platform/layout/builder';\nimport { CommonModule } from '@angular/common';\nimport { ChangeDetectionStrategy, Component, HostBinding, Signal, computed, inject } from '@angular/core';\nimport { FormsModule } from '@angular/forms';\n\n@Component({\n template: `<div class=\"ax-grid ax-grid-cols-12 ax-gap-4\">\n @if(multiple()){ @for(item of internalValue();track $index) { @if(item){\n <!-- TODO need to fix multiple -->\n <ax-text-box\n [ngModel]=\"item.value\"\n (onValueChanged)=\"handleValueChange($event, $index)\"\n type=\"text\"\n placeholder=\"Enter Link\"\n class=\"ax-col-start-1 ax-col-end-13\"\n [ngClass]=\"generateClasses('url', 'multiple')\"\n >\n @for (validation of validationRules; track $index) {\n <ax-validation-rule [rule]=\"validation.rule\" [message]=\"validation.options?.message\" [options]=\"validation.options\"></ax-validation-rule>\n }\n <ax-validation-rule message=\"field can't be empty\" rule=\"required\"> </ax-validation-rule>\n </ax-text-box>\n @if(hasTitle()){\n <ax-text-box\n [ngModel]=\"item.title\"\n (onValueChanged)=\"handleValueChange($event, $index)\"\n placeholder=\"Choose Title...\"\n name=\"title\"\n [ngClass]=\"generateClasses('title', 'multiple')\"\n >\n </ax-text-box>\n } @if(hasLabel()){\n <ax-select-box\n [dataSource]=\"labelTypes()\"\n [ngModel]=\"item.label\"\n (onValueChanged)=\"handleValueChange($event, $index)\"\n placeholder=\"Choose Label...\"\n name=\"label\"\n [ngClass]=\"generateClasses('label', 'multiple')\"\n >\n </ax-select-box>\n }}\n <ax-button\n look=\"twotone\"\n color=\"danger\"\n (onClick)=\"deleteItem($index)\"\n class=\"ax-col-start-12 ax-col-end-13 lg:ax-col-start-12 lg:ax-col-end-13 ax-justify-self-end !ax-h-full\"\n >\n <ax-icon icon=\"fa-regular fa-xmark\"></ax-icon>\n </ax-button>\n }\n <ax-button\n [text]=\"internalValue().length == 0 ? 'Add New' : 'Add Another'\"\n look=\"twotone\"\n (onClick)=\"addItem()\"\n class=\"ax-col-start-8 lg:ax-col-start-10 2xl:ax-col-start-10 ax-col-end-13\"\n >\n <ax-prefix>\n <ax-icon class=\"fa-solid fa-add\"></ax-icon>\n </ax-prefix>\n </ax-button>\n } @else{\n <ax-text-box\n [ngClass]=\"generateClasses('url', 'single')\"\n [ngModel]=\"internalValue()[0].value\"\n (onValueChanged)=\"handleValueChange($event, 0)\"\n type=\"text\"\n name=\"value\"\n placeholder=\"Link\"\n class=\"ax-col-start-1 ax-col-end-13\"\n >\n @for (validation of validationRules; track $index) {\n <ax-validation-rule [rule]=\"validation.rule\" [message]=\"validation.options?.message\" [options]=\"validation.options\"></ax-validation-rule>\n }\n <ax-validation-rule message=\"field can't be empty\" rule=\"required\"> </ax-validation-rule>\n </ax-text-box>\n @if(hasTitle()){\n <ax-text-box\n [ngClass]=\"generateClasses('title', 'single')\"\n [ngModel]=\"internalValue()[0].title\"\n (onValueChanged)=\"handleValueChange($event, 0)\"\n type=\"text\"\n name=\"title\"\n placeholder=\"Title\"\n >\n </ax-text-box>\n } @if(hasLabel()){\n <ax-select-box\n [ngClass]=\"generateClasses('label', 'single')\"\n [dataSource]=\"labelTypes()\"\n [ngModel]=\"internalValue()[0].label\"\n (onValueChanged)=\"handleValueChange($event, 0)\"\n name=\"label\"\n placeholder=\"Label\"\n >\n </ax-select-box>\n } }\n </div>`,\n standalone: true,\n changeDetection: ChangeDetectionStrategy.OnPush,\n imports: [\n CommonModule,\n FormsModule,\n AXSelectBoxModule,\n AXFormModule,\n AXButtonModule,\n AXDecoratorModule,\n AXSelectBoxModule,\n AXTextBoxModule,\n AXValidationModule,\n ],\n inputs: [],\n})\nexport class AXPLinkWidgetEditComponent extends AXPWidgetComponent<any> {\n protected validationService = inject(AXValidationService);\n protected translateService = inject(AXTranslationService);\n protected validationMessage?: string | null;\n\n protected multiple = computed<boolean>(() => this.options()['multiple'] as boolean);\n protected disabled = computed<boolean>(() => this.options()['disabled'] as boolean);\n protected clearButton = computed<boolean>(() => this.options()['clearButton'] as boolean);\n protected hasLabel = computed<boolean>(() => this.options()['hasLabel'] as boolean);\n protected hasTitle = computed<boolean>(() => this.options()['hasTitle'] as boolean);\n protected labelTypes = computed<string[]>(() => this.options()['labelTypes'] || ['Primary', 'Secondary']);\n protected linkTypes = computed<string[]>(() => this.options()['linkTypes'] || ['http', 'https', 'related']);\n\n protected dataSource = new AXDataSource<any>({\n pageSize: 10,\n key: 'id',\n load: (e) => {\n return new Promise((resolve) => {\n setTimeout(\n () => {\n const list = this.linkTypes();\n const result = e.filter ? list.filter((item) => item.includes(e.filter?.value as string)) : list;\n resolve({\n items: result.slice(e.skip, e.skip + e.take),\n total: result.length,\n });\n },\n e.skip == 0 ? 100 : 300\n );\n });\n },\n });\n\n protected internalValue: Signal<{ value: string; label?: string; title: string; icon?: string }[]> = computed(() =>\n this.getValueAsArrayOfObjects()\n );\n\n override ngOnInit(): void {\n super.ngOnInit();\n this.getValueAsArrayOfObjects();\n }\n\n private _validationRules: AXPValidationRules = [];\n public get validationRules(): AXPValidationRules {\n return this._validationRules;\n }\n public set validationRules(v: AXPValidationRules) {\n this._validationRules = v;\n }\n\n private getValueAsArrayOfObjects(): any[] {\n const value = this.getValue();\n if (Array.isArray(value)) {\n return value.map((item) => {\n return typeof item === 'object'\n ? {\n value: item.value ?? '-',\n title: item.title,\n label: this.hasLabel() ? item.label || 'primary' : undefined,\n icon: item.icon,\n }\n : {\n value: item,\n title: '',\n icon: '',\n label: this.hasLabel() ? 'Primary' : undefined,\n };\n });\n } else {\n return typeof value === 'object' ? [value] : [{ value: value || '' }];\n }\n }\n\n protected handleValueChange(e: AXValueChangedEvent, selectedIndex: number) {\n const { name, value, isUserInteraction } = e;\n if (isUserInteraction) {\n const newValues = this.internalValue().map((item, index) =>\n selectedIndex === index ? (name === 'value' ? this.convertItem(item, e) : { ...item, [name as string]: value }) : item\n );\n console.log(newValues);\n if (this.multiple()) this.setValue(newValues);\n else this.setValue(newValues[0]);\n }\n }\n\n protected convertItem = (item: any, e: any) => {\n if (typeof item === 'object') return { ...item, value: e.value };\n else return e.value;\n };\n\n // protected handleLabelChange(e: AXValueChangedEvent, selectedIndex: number) {\n // if (e.isUserInteraction) {\n // const newValues = this.internalValue().map((item, index) => (selectedIndex === index ? { ...item, label: e.value } : item));\n // if (this.multiple()) this.setValue(newValues);\n // else this.setValue(newValues[0]);\n // }\n // }\n\n protected addItem() {\n const newValues = [\n ...this.internalValue(),\n {\n value: '',\n title: '',\n label: 'primary',\n icon: '',\n },\n ];\n this.setValue(newValues);\n }\n protected deleteItem(deletedIndex: number) {\n const newValues = this.internalValue().filter((_, index) => index != deletedIndex);\n this.setValue(newValues);\n }\n\n protected generateClasses(elementName: 'url' | 'title' | 'label', type: 'single' | 'multiple' = 'single'): Array<string> {\n if (type === 'multiple') {\n switch (elementName) {\n case 'url':\n if (this.hasTitle() || this.hasLabel()) {\n //already has ax-col-start-1 ax-col-end-13\n return ['lg:ax-col-end-7'];\n } else {\n return ['lg:ax-col-end-12'];\n }\n case 'title':\n if (this.hasLabel()) {\n return ['ax-col-start-1 ax-col-end-7 lg:ax-col-start-7 lg:ax-col-end-10'];\n } else {\n return ['ax-col-start-1 ax-col-end-11 lg:ax-col-start-7 lg:ax-col-end-12'];\n }\n case 'label':\n if (this.hasTitle()) {\n return ['ax-col-start-7 ax-col-end-11 lg:ax-col-start-10 lg:ax-col-end-12'];\n } else {\n return ['ax-col-start-1 ax-col-end-11 lg:ax-col-start-7 lg:ax-col-end-12'];\n }\n default:\n return [''];\n }\n } else if (type === 'single') {\n switch (elementName) {\n case 'url':\n if (this.hasTitle() || this.hasLabel()) {\n //already has ax-col-start-1 ax-col-end-13\n return ['lg:ax-col-end-7'];\n } else {\n return ['lg:ax-col-end-13'];\n }\n case 'title':\n if (this.hasLabel()) {\n return ['ax-col-start-1 ax-col-end-7 lg:ax-col-start-7 lg:ax-col-end-10'];\n } else {\n return ['ax-col-start-1 ax-col-end-13 lg:ax-col-start-7 lg:ax-col-end-13'];\n }\n case 'label':\n if (this.hasTitle()) {\n return ['ax-col-start-7 ax-col-end-13 lg:ax-col-start-10 lg:ax-col-end-13'];\n } else {\n return ['ax-col-start-1 ax-col-end-13 lg:ax-col-start-7 lg:ax-col-end-13'];\n }\n default:\n return [''];\n }\n } else {\n return [''];\n }\n }\n\n\n @HostBinding('class')\n private get __class(): string {\n const cls: any = {};\n cls[`ax-block`] = true;\n cls[`ax-flex-1`] = true;\n return cls;\n }\n}\n","import { AXPWidgetComponent } from '@acorex/platform/layout/builder';\nimport { CommonModule } from '@angular/common';\nimport { ChangeDetectionStrategy, Component, inject } from '@angular/core';\nimport { FormsModule } from '@angular/forms';\n\n@Component({\n template: ``,\n standalone: true,\n changeDetection: ChangeDetectionStrategy.OnPush,\n imports: [CommonModule, FormsModule],\n inputs: []\n})\nexport class AXPLinkWidgetFilterComponent extends AXPWidgetComponent<any> { }","import { AXPColumnWidgetComponent } from '@acorex/platform/layout/builder';\nimport { CommonModule } from '@angular/common';\nimport { ChangeDetectionStrategy, Component } from '@angular/core';\n@Component({\n template: `{{rawValue}}`,\n standalone: true,\n changeDetection: ChangeDetectionStrategy.OnPush,\n imports: [CommonModule],\n inputs: ['rawValue']\n})\nexport class AXPLinkWidgetColumnComponent extends AXPColumnWidgetComponent<any> { }","import { AXPWidgetComponent } from '@acorex/platform/layout/builder';\nimport { CommonModule } from '@angular/common';\nimport { ChangeDetectionStrategy, Component, inject } from '@angular/core';\n@Component({\n template: ``,\n standalone: true,\n changeDetection: ChangeDetectionStrategy.OnPush,\n imports: [CommonModule],\n inputs: []\n})\nexport class AXPLinkWidgetPrintComponent extends AXPWidgetComponent<any> { }","import { AXPWidgetConfig, AXP_WIDGETS_EDITOR_GROUP } from '@acorex/platform/layout/builder';\nexport const AXPLinkWidget: AXPWidgetConfig = {\n name: 'link-editor',\n title: 'Link Box',\n description: 'Inputs and edits URLs',\n icon: 'fa-solid fa-link',\n group: AXP_WIDGETS_EDITOR_GROUP,\n type: 'editor',\n components: {\n view: {\n component: () => import('./link-widget-view.component').then((c) => c.AXPLinkWidgetViewComponent),\n },\n edit: {\n component: () => import('./link-widget-edit.component').then((c) => c.AXPLinkWidgetEditComponent),\n },\n filter: {\n component: () => import('./link-widget-filter.component').then((c) => c.AXPLinkWidgetFilterComponent),\n },\n column: {\n component: () => import('./link-widget-column.component').then((c) => c.AXPLinkWidgetColumnComponent),\n },\n print: {\n component: () => import('./link-widget-print.component').then((c) => c.AXPLinkWidgetPrintComponent),\n },\n designer: {\n component: () => import('./link-widget-edit.component').then((c) => c.AXPLinkWidgetEditComponent),\n },\n },\n};\n\ndeclare module '@acorex/platform/layout/builder' {\n interface AXPWidgetTypesMap {\n link: 'link-editor';\n }\n}\n","import { AXFormatService, AXNumberFormatterOptions } from '@acorex/core/format';\nimport { AXPWidgetComponent } from '@acorex/platform/layout/builder';\nimport { CommonModule } from '@angular/common';\nimport { ChangeDetectionStrategy, Component, computed, inject } from '@angular/core';\nimport { isNumber } from 'lodash-es';\n\n@Component({\n template: `\n <div>\n @if(multiple()){ @for (item of internalValue(); track $index) {\n <p>{{ item }}</p>\n } }@else {\n <p>{{ internalValue()[0] }}</p>\n }\n </div>\n `,\n standalone: true,\n changeDetection: ChangeDetectionStrategy.OnPush,\n imports: [CommonModule],\n inputs: [],\n})\nexport class AXPNumberBoxWidgetViewComponent extends AXPWidgetComponent<any> {\n protected internalValue = computed(() => (Array.isArray(this.formattedValue()) ? this.formattedValue() : [this.formattedValue()]));\n\n protected multiple = computed<boolean>(() => this.options()['multiple'] as boolean);\n protected format = computed<AXNumberFormatterOptions>(() => this.options()['format'] as AXNumberFormatterOptions);\n\n private formatService = inject(AXFormatService);\n\n private formattedValue() {\n if (!isNumber(this.getValue())) return '---';\n const value: number = Number(this.getValue());\n return this.formatService.format(value, 'number', this.format());\n }\n}\n","import { AXButtonModule } from '@acorex/components/button';\nimport { AXValueChangedEvent } from '@acorex/components/common';\nimport { AXDecoratorModule } from '@acorex/components/decorators';\nimport { AXFormModule } from '@acorex/components/form';\nimport { AXNumberBoxModule } from '@acorex/components/number-box';\nimport { AXValidationService } from '@acorex/core/validation';\nimport { AXPValidationRules } from '@acorex/platform/core';\nimport { AXPWidgetComponent } from '@acorex/platform/layout/builder';\nimport { CommonModule } from '@angular/common';\nimport { ChangeDetectionStrategy, Component, HostBinding, Signal, computed, inject } from '@angular/core';\nimport { FormsModule } from '@angular/forms';\n\n@Component({\n template: `\n <div class=\"ax-grid ax-grid-cols-12 ax-gap-4\">\n @for(number of internalValue(); track $index){\n <ax-number-box\n class=\"ax-col-span-12\"\n [minValue]=\"minValue()\"\n [maxValue]=\"maxValue()\"\n [decimals]=\"decimals()\"\n [thousandsSeparator]=\"seprator()\"\n [placeholder]=\"placeholder()\"\n [ngModel]=\"number\"\n (onValueChanged)=\"handleValueChange($event, $index)\"\n [disabled]=\"disabled()\"\n >\n <ax-validation-rule rule=\"callback\" [options]=\"{ validate: validateFn }\"></ax-validation-rule>\n @if(clearButton()) {\n <ax-clear-button></ax-clear-button>\n } @if(multiple()){\n <ax-suffix>\n <ax-button class=\"ax-border-s\" (onClick)=\"deleteItem($index)\" look=\"blank\" color=\"danger\">\n <ax-icon class=\"far fa-trash\"> </ax-icon>\n </ax-button>\n </ax-suffix>\n }\n </ax-number-box>\n } @if(multiple()) {\n <ax-button\n [text]=\"internalValue().length == 0 ? 'Add New' : 'Add Another'\"\n [disabled]=\"disabled()\"\n look=\"twotone\"\n (onClick)=\"addItem()\"\n class=\"ax-col-start-8 lg:ax-col-start-10 2xl:ax-col-start-10 ax-col-end-13\"\n >\n <ax-prefix>\n <ax-icon class=\"fa-solid fa-add\"></ax-icon>\n </ax-prefix>\n </ax-button>\n }\n </div>\n `,\n standalone: true,\n changeDetection: ChangeDetectionStrategy.OnPush,\n imports: [CommonModule, AXNumberBoxModule, FormsModule, AXDecoratorModule, AXFormModule, AXButtonModule],\n})\nexport class AXPNumberBoxWidgetEditComponent extends AXPWidgetComponent<number | number[]> {\n protected disabled = computed<boolean>(() => this.options()['disabled'] as boolean);\n protected multiple = computed<boolean>(() => this.options()['multiple'] as boolean);\n protected clearButton = computed<boolean>(() => (this.options()['hasClearButton'] as boolean) ?? true);\n\n protected decimals = computed<number>(() => (this.options()['decimals'] as number) ?? 0);\n protected minValue = computed<number>(() => this.options()['minValue'] as number);\n protected maxValue = computed<number>(() => this.options()['maxValue'] as number);\n protected seprator = computed<string>(() => (this.options()['seprator'] as string) ?? null);\n\n protected placeholder = computed<string>(() => this.options()['placeholder'] as string);\n\n protected validationService = inject(AXValidationService);\n\n protected validationRules: AXPValidationRules = [];\n\n protected internalValue: Signal<number[]> = computed(() =>\n Array.isArray(this.getValue()) ? (this.getValue() as number[]) : [this.getValue() as number]\n );\n\n protected validateFn = async (value: any, options: any) => {\n const vn = this.validationService.ruleFor(value);\n this.validationRules.forEach((v) => {\n const options = { ...v.options };\n if (v.message) options.message = v.message;\n vn.addRule(v.rule as any, options);\n });\n const a = await vn.validate();\n return { result: a.result, message: a.rules.find((c) => !c.result)?.message };\n };\n\n protected handleValueChange(e: AXValueChangedEvent, i: number) {\n if (e.isUserInteraction) {\n const newValues = this.internalValue().map((item, index) => (i === index ? e.value : item));\n if (this.multiple()) {\n this.setValue(newValues);\n } else this.setValue(newValues[0]);\n }\n }\n\n protected addItem() {\n const newValues = [...this.internalValue(), 0];\n this.setValue(newValues);\n }\n protected deleteItem(i: number) {\n const newValues = this.internalValue().filter((_, index) => index != i);\n this.setValue(newValues);\n }\n\n @HostBinding('class')\n private get __class(): string {\n const cls: any = {};\n cls[`ax-block`] = true;\n cls[`ax-flex-1`] = true;\n return cls;\n }\n}\n","import { AXPWidgetComponent } from '@acorex/platform/layout/builder';\nimport { CommonModule } from '@angular/common';\nimport { ChangeDetectionStrategy, Component, inject } from '@angular/core';\nimport { FormsModule } from '@angular/forms';\n\n@Component({\n template: ``,\n standalone: true,\n changeDetection: ChangeDetectionStrategy.OnPush,\n imports: [CommonModule, FormsModule],\n inputs: []\n})\nexport class AXPNumberBoxWidgetFilterComponent extends AXPWidgetComponent<any> { }","import { AXFormatService } from '@acorex/core/format';\nimport { AXPColumnWidgetComponent } from '@acorex/platform/layout/builder';\nimport { CommonModule } from '@angular/common';\nimport { ChangeDetectionStrategy, Component, computed, inject } from '@angular/core';\nimport { isNumber } from 'lodash-es';\n@Component({\n selector: 'axp-number-box-widget-column',\n template: `{{value()}}`,\n standalone: true,\n changeDetection: ChangeDetectionStrategy.OnPush,\n imports: [CommonModule],\n inputs: ['rawValue']\n})\nexport class AXPNumberBoxWidgetColumnComponent extends AXPColumnWidgetComponent<any> {\n\n\n private formatService = inject(AXFormatService);\n\n value = computed(() => {\n if (!isNumber(this.rawValue)) return '---';\n const value: number = Number(this.rawValue);\n if (this.options['format'] && this.options['format']['name']) {\n const { name, options } = this.options['format'];\n return this.formatService.format(value, name, options)\n } else {\n return value.toString()\n }\n })\n\n}","import { AXPWidgetComponent } from '@acorex/platform/layout/builder';\nimport { CommonModule } from '@angular/common';\nimport { ChangeDetectionStrategy, Component, inject } from '@angular/core';\n@Component({\n template: ``,\n standalone: true,\n changeDetection: ChangeDetectionStrategy.OnPush,\n imports: [CommonModule],\n inputs: []\n})\nexport class AXPNumberBoxWidgetPrintComponent extends AXPWidgetComponent<any> { }","import { AXP_WIDGETS_EDITOR_GROUP, AXPWidgetConfig, cloneProperty } from '@acorex/platform/layout/builder';\nimport {\n AXP_ALLOW_MULTIPLE_PROPERTY,\n AXP_DATA_PATH_PROPERTY,\n AXP_DISABLED_PROPERTY,\n AXP_PLACEHOLDER_PROPERTY,\n AXP_TABLE_COLUMN_WIDTH_PROPERTY,\n AXP_VALIDATION_PROPERTY,\n numberDefaultProperty,\n} from '../../../properties';\nimport { AXP_NAME_PROPERTY } from '../../../properties/general.props';\n\nexport const AXPNumberBoxWidget: AXPWidgetConfig = {\n name: 'number-editor',\n title: 'Number Box',\n description: 'Inputs numeric values',\n icon: 'fa-solid fa-input-numeric',\n group: AXP_WIDGETS_EDITOR_GROUP,\n type: 'editor',\n properties: [\n AXP_NAME_PROPERTY,\n AXP_DATA_PATH_PROPERTY,\n AXP_ALLOW_MULTIPLE_PROPERTY,\n AXP_DISABLED_PROPERTY,\n AXP_VALIDATION_PROPERTY,\n AXP_PLACEHOLDER_PROPERTY,\n numberDefaultProperty(),\n cloneProperty(AXP_TABLE_COLUMN_WIDTH_PROPERTY, { schema: { defaultValue: '200px' } }),\n ],\n components: {\n view: {\n component: () => import('./number-box-widget-view.component').then((c) => c.AXPNumberBoxWidgetViewComponent),\n },\n edit: {\n component: () => import('./number-box-widget-edit.component').then((c) => c.AXPNumberBoxWidgetEditComponent),\n },\n filter: {\n component: () => import('./number-box-widget-filter.component').then((c) => c.AXPNumberBoxWidgetFilterComponent),\n },\n column: {\n component: () => import('./number-box-widget-column.component').then((c) => c.AXPNumberBoxWidgetColumnComponent),\n },\n print: {\n component: () => import('./number-box-widget-print.component').then((c) => c.AXPNumberBoxWidgetPrintComponent),\n },\n designer: {\n component: () => import('./number-box-widget-edit.component').then((c) => c.AXPNumberBoxWidgetEditComponent),\n },\n },\n};\n\ndeclare module '@acorex/platform/layout/builder' {\n interface AXPWidgetTypesMap {\n number: 'number-editor';\n }\n}\n","import { AXPClipBoardService } from '@acorex/platform/common';\nimport { AXPWidgetComponent } from '@acorex/platform/layout/builder';\nimport { CommonModule } from '@angular/common';\nimport { ChangeDetectionStrategy, Component, computed, inject, signal } from '@angular/core';\n\n@Component({\n template: `\n <div class=\"ax-col-start-1 ax-col-end-10 lg:ax-col-end-7\">\n <div class=\"ax-flex ax-flex-1 ax-gap-3 ax-group ax-items-start ax-w-max\">\n <span>{{ show() ? internalValue() : '*******' }}</span>\n @if(hasEyeIcon()){\n <span\n class=\"ax-text-neutral-400 ax-cursor-pointer ax-invisible group-hover:ax-visible hover:!ax-text-primary-500\"\n (click)=\"toggleEye()\"\n >\n @if(!showPassword()){\n <i class=\"fa-solid fa-eye\"></i>\n }@else {\n <i class=\"fa-solid fa-eye-slash\"></i>\n }\n </span>\n } @if(hasCopyIcon() && hasEyeIcon()){\n <span\n class=\"ax-text-neutral-400 ax-cursor-pointer ax-invisible group-hover:ax-visible hover:!ax-text-primary-500\"\n (click)=\"clipboard.copy('Password', internalValue())\"\n >\n <i class=\"fa-solid fa-copy \"></i>\n </span>\n }\n </div>\n </div>\n `,\n standalone: true,\n changeDetection: ChangeDetectionStrategy.OnPush,\n imports: [CommonModule],\n inputs: [],\n})\nexport class AXPPasswordBoxWidgetViewComponent extends AXPWidgetComponent<string> {\n protected internalValue = computed(() => this.getValue());\n\n protected hasCopyIcon = computed<boolean>(() => this.options()['hasCopyIcon'] as boolean);\n protected hasEyeIcon = computed<boolean>(() => this.options()['hasEyeIcon'] as boolean);\n protected showPassword = computed<boolean>(() => this.options()['showPassword'] as boolean);\n\n protected show = signal(false);\n\n protected clipboard = inject(AXPClipBoardService);\n\n toggleEye() {\n this.show.update((prev) => !prev);\n }\n}\n","import { AXValueChangedEvent } from '@acorex/components/common';\nimport { AXDecoratorModule } from '@acorex/components/decorators';\nimport { AXFormModule } from '@acorex/components/form';\nimport { AXPasswordBoxModule } from '@acorex/components/password-box';\nimport { AXValidationModule } from '@acorex/core/validation';\nimport { AXPWidgetComponent } from '@acorex/platform/layout/builder';\nimport { CommonModule } from '@angular/common';\nimport { ChangeDetectionStrategy, Component, computed, HostBinding } from '@angular/core';\nimport { FormsModule } from '@angular/forms';\n\n@Component({\n template: `\n <ax-password-box [ngModel]=\"getValue()\" [disabled]=\"disabled()\" (onValueChanged)=\"handleValueChanged($event)\">\n <ax-validation-rule rule=\"required\"></ax-validation-rule>\n @if(hasClearButton()){\n <ax-clear-button></ax-clear-button>\n }\n </ax-password-box>\n `,\n standalone: true,\n changeDetection: ChangeDetectionStrategy.OnPush,\n imports: [CommonModule, FormsModule, AXDecoratorModule, AXPasswordBoxModule, AXValidationModule, AXFormModule],\n inputs: [],\n})\nexport class AXPPasswordBoxWidgetEditComponent extends AXPWidgetComponent<string> {\n protected disabled = computed<boolean>(() => this.options()['disabled'] as boolean);\n protected hasClearButton = computed<boolean>(() => this.options()['hasClearButton'] as boolean);\n\n\n @HostBinding('class')\n private get __class(): string {\n const cls: any = {};\n cls[`ax-block`] = true;\n cls[`ax-flex-1`] = true;\n return cls;\n }\n}\n","import { AXPWidgetComponent } from '@acorex/platform/layout/builder';\nimport { CommonModule } from '@angular/common';\nimport { ChangeDetectionStrategy, Component, inject } from '@angular/core';\nimport { FormsModule } from '@angular/forms';\n\n@Component({\n template: ``,\n standalone: true,\n changeDetection: ChangeDetectionStrategy.OnPush,\n imports: [CommonModule, FormsModule],\n inputs: []\n})\nexport class AXPPasswordBoxWidgetFilterComponent extends AXPWidgetComponent<any> { }","import { AXPColumnWidgetComponent } from '@acorex/platform/layout/builder';\nimport { CommonModule } from '@angular/common';\nimport { ChangeDetectionStrategy, Component, signal } from '@angular/core';\n@Component({\n template: `<div class=\"ax-flex ax-flex-1 ax-gap-3 ax-group ax-items-start ax-w-max\">\n <span>{{ show() ? rawValue : '*******' }}</span>\n @if(hasEyeIcon){\n <span\n class=\"ax-text-neutral-400 ax-cursor-pointer ax-invisible group-hover:ax-visible hover:!ax-text-primary-500\"\n (click)=\"toggleEye()\"\n >\n @if(!showPassword){\n <i class=\"fa-solid fa-eye\"></i>\n }@else {\n <i class=\"fa-solid fa-eye-slash\"></i>\n }\n </span>\n }\n </div>`,\n standalone: true,\n changeDetection: ChangeDetectionStrategy.OnPush,\n imports: [CommonModule],\n inputs: ['rawValue'],\n})\nexport class AXPPasswordBoxWidgetColumnComponent extends AXPColumnWidgetComponent<any> {\n protected hasEyeIcon = this.options['hasEyeIcon'];\n protected showPassword = this.options['showPassword'];\n\n protected show = signal(!!this.rawValue);\n\n toggleEye() {\n this.show.update((prev) => !prev);\n }\n}\n","import { AXPWidgetComponent } from '@acorex/platform/layout/builder';\nimport { CommonModule } from '@angular/common';\nimport { ChangeDetectionStrategy, Component, inject } from '@angular/core';\n@Component({\n template: ``,\n standalone: true,\n changeDetection: ChangeDetectionStrategy.OnPush,\n imports: [CommonModule],\n inputs: []\n})\nexport class AXPPasswordBoxWidgetPrintComponent extends AXPWidgetComponent<any> { }","import { AXPWidgetConfig, AXP_WIDGETS_EDITOR_GROUP } from '@acorex/platform/layout/builder';\nimport {\n AXP_DISABLED_PROPERTY,\n AXP_HAS_CLEAR_BUTTON_PROPERTY,\n AXP_HAS_COPY_ICON_PROPERTY,\n AXP_HAS_EYE_ICON_PROPERTY,\n AXP_VALIDATION_PROPERTY,\n} from '../../../properties';\nimport { AXP_NAME_PROPERTY } from '../../../properties/general.props';\nexport const AXPPasswordBoxWidget: AXPWidgetConfig = {\n name: 'password-editor',\n title: 'Password Box',\n description: 'Secures password input',\n icon: 'fa-solid fa-lock',\n group: AXP_WIDGETS_EDITOR_GROUP,\n type: 'editor',\n properties: [\n AXP_NAME_PROPERTY,\n AXP_VALIDATION_PROPERTY,\n AXP_HAS_CLEAR_BUTTON_PROPERTY,\n AXP_DISABLED_PROPERTY,\n AXP_HAS_COPY_ICON_PROPERTY,\n AXP_HAS_EYE_ICON_PROPERTY,\n ],\n components: {\n view: {\n component: () => import('./password-box-widget-view.component').then((c) => c.AXPPasswordBoxWidgetViewComponent),\n },\n edit: {\n component: () => import('./password-box-widget-edit.component').then((c) => c.AXPPasswordBoxWidgetEditComponent),\n },\n filter: {\n component: () => import('./password-box-widget-filter.component').then((c) => c.AXPPasswordBoxWidgetFilterComponent),\n },\n column: {\n component: () => import('./password-box-widget-column.component').then((c) => c.AXPPasswordBoxWidgetColumnComponent),\n },\n print: {\n component: () => import('./password-box-widget-print.component').then((c) => c.AXPPasswordBoxWidgetPrintComponent),\n },\n designer: {\n component: () => import('./password-box-widget-edit.component').then((c) => c.AXPPasswordBoxWidgetEditComponent),\n },\n },\n};\n\ndeclare module '@acorex/platform/layout/builder' {\n interface AXPWidgetTypesMap {\n password: 'password-editor';\n }\n}\n","import { AXBadgeModule } from '@acorex/components/badge';\nimport { AXPClipBoardService } from '@acorex/platform/common';\nimport { AXPWidgetComponent } from '@acorex/platform/layout/builder';\nimport { CommonModule } from '@angular/common';\nimport { ChangeDetectionStrategy, Component, computed, inject } from '@angular/core';\n\n@Component({\n template: `\n <div class=\"ax-grid ax-grid-cols-12 ax-gap-2 \">\n <ng-container *ngIf=\"multiple()\">\n @for(item of internalValue();track item?.value) {\n <ng-template [ngTemplateOutlet]=\"itemTemplate\" [ngTemplateOutletContext]=\"{ data: item }\" ]></ng-template>\n }\n </ng-container>\n\n <ng-container *ngIf=\"!multiple()\">\n <ng-template [ngTemplateOutlet]=\"itemTemplate\" [ngTemplateOutletContext]=\"{ data: internalValue()[0] }\" ]></ng-template>\n </ng-container>\n\n <ng-template #itemTemplate let-item=\"data\">\n <ng-container *ngIf=\"item\">\n <div class=\"ax-col-start-1 ax-col-end-10 lg:ax-col-end-7\">\n <div class=\"ax-flex ax-flex-1 ax-gap-3 ax-items-center ax-w-max ax-group\">\n <div class=\"ax-w-6 ax-h-6 ax-flex ax-items-center ax-justify-center\">\n <i class=\"fa-solid ax-text-neutral-400 fa-phone\"></i>\n </div>\n <a class=\"group-hover:!ax-text-primary-500\" href=\"tel:{{ item.value }}\">{{ item.value }}</a>\n <span\n class=\"ax-text-neutral-400 ax-cursor-pointer ax-invisible group-hover:ax-visible hover:!ax-text-primary-500\"\n (click)=\"clipboard.copy('Phone Number', item.value)\"\n >\n <i class=\"fa-solid fa-copy \"></i>\n </span>\n @if(hasLabel()){\n <ax-badge color=\"primary\" [look]=\"'twotone'\" [text]=\"item.label\"></ax-badge>\n }\n </div>\n </div>\n </ng-container>\n </ng-template>\n </div>\n `,\n standalone: true,\n changeDetection: ChangeDetectionStrategy.OnPush,\n imports: [CommonModule, AXBadgeModule],\n inputs: [],\n})\nexport class AXPPhoneBoxWidgetViewComponent extends AXPWidgetComponent<any> {\n protected clipboard = inject(AXPClipBoardService);\n\n protected multiple = computed<boolean>(() => this.options()['multiple'] as boolean);\n protected hasLabel = computed<boolean>(() => this.options()['hasLabel'] as boolean);\n\n protected internalValue = computed(() =>\n this.getValue()\n ? Array.isArray(this.getValue())\n ? this.getValue().map((item: any) => this.extractItem(item))\n : [this.extractItem(this.getValue())]\n : []\n );\n\n private extractItem(item: any): any {\n return typeof item == 'object'\n ? {\n value: item.value ?? '-',\n type: item.type ?? 'mobile',\n label: item.label,\n }\n : {\n value: item,\n type: 'mobile',\n label: null,\n };\n }\n}\n","import { AXButtonModule } from '@acorex/components/button';\nimport { AXValueChangedEvent } from '@acorex/components/common';\nimport { AXDecoratorModule } from '@acorex/components/decorators';\nimport { AXFormModule } from '@acorex/components/form';\nimport { AXSelectBoxModule } from '@acorex/components/select-box';\nimport { AXTextBoxModule } from '@acorex/components/text-box';\nimport { AXValidationModule, AXValidationService } from '@acorex/core/validation';\nimport { AXPValidationRules } from '@acorex/platform/core';\nimport { AXPWidgetComponent } from '@acorex/platform/layout/builder';\nimport { CommonModule } from '@angular/common';\nimport { ChangeDetectionStrategy, Component, HostBinding, Signal, computed, inject } from '@angular/core';\nimport { FormsModule } from '@angular/forms';\n\n@Component({\n template: `\n <div class=\"ax-grid ax-grid-cols-12 ax-gap-4\">\n <ng-container *ngIf=\"multiple()\">\n @for(item of internalValue();track $index) {\n <ax-text-box\n [ngModel]=\"item.value\"\n (onValueChanged)=\"handleValueChange($event, $index)\"\n type=\"text\"\n class=\"ax-col-start-1 ax-col-end-13 lg:ax-col-end-8\"\n [class.lg:!ax-col-end-12]=\"!hasLabel()\"\n >\n @for (validation of validationRules; track $index) {\n <ax-validation-rule [rule]=\"validation.rule\" [message]=\"validation.options?.message\" [options]=\"validation.options\"></ax-validation-rule>\n }\n </ax-text-box>\n @if(hasLabel()){\n <ax-select-box\n [dataSource]=\"phoneLabels()\"\n [ngModel]=\"item.label\"\n (onValueChanged)=\"handleLabelChange($event, $index)\"\n class=\"ax-col-start-1 ax-col-end-11 lg:ax-col-start-8 lg:ax-col-end-12\"\n >\n </ax-select-box>\n }\n <ax-button\n look=\"twotone\"\n color=\"danger\"\n (onClick)=\"deleteItem($index)\"\n class=\"ax-col-start-11 ax-col-end-13 lg:ax-col-start-12 lg:ax-col-end-13 ax-justify-self-end\"\n >\n <ax-icon icon=\"fa-regular fa-xmark\"></ax-icon>\n </ax-button>\n }\n </ng-container>\n <ng-container *ngIf=\"!multiple()\">\n <ax-text-box\n [ngModel]=\"internalValue()[0].value\"\n (onValueChanged)=\"handleValueChange($event, 0)\"\n type=\"text\"\n class=\"ax-col-start-1 ax-col-end-13 lg:ax-col-end-8\"\n [class.lg:!ax-col-end-13]=\"!hasLabel\"\n >\n @for (validation of validationRules; track $index) {\n <ax-validation-rule [rule]=\"validation.rule\" [message]=\"validation.options?.message\" [options]=\"validation.options\"></ax-validation-rule>\n }\n </ax-text-box>\n @if(hasLabel()){\n <ax-select-box\n [dataSource]=\"phoneLabels()\"\n [ngModel]=\"internalValue()[0].label\"\n (onValueChanged)=\"handleLabelChange($event, 0)\"\n class=\"ax-col-start-1 ax-col-end-11 lg:ax-col-start-8 lg:ax-col-end-13\"\n >\n </ax-select-box>\n }\n </ng-container>\n <ax-button\n *ngIf=\"multiple()\"\n [text]=\"internalValue().length == 0 ? 'Add New' : 'Add Another'\"\n look=\"twotone\"\n (onClick)=\"addItem()\"\n class=\"ax-col-start-8 lg:ax-col-start-10 2xl:ax-col-start-10 ax-col-end-13\"\n >\n <ax-prefix>\n <ax-icon class=\"fa-solid fa-add\"></ax-icon>\n </ax-prefix>\n </ax-button>\n </div>\n `,\n standalone: true,\n changeDetection: ChangeDetectionStrategy.OnPush,\n imports: [CommonModule, FormsModule, AXFormModule, AXButtonModule, AXDecoratorModule, AXSelectBoxModule, AXTextBoxModule, AXValidationModule],\n inputs: [],\n})\nexport class AXPPhoneBoxWidgetEditComponent extends AXPWidgetComponent<any> {\n protected validationService = inject(AXValidationService);\n\n protected multiple = computed<boolean>(() => this.options()['multiple'] as boolean);\n protected disabled = computed<boolean>(() => this.options()['disabled'] as boolean);\n protected clearButton = computed<boolean>(() => this.options()['clearButton'] as boolean);\n protected hasLabel = computed<boolean>(() => this.options()['hasLabel'] as boolean);\n protected phoneLabels = computed<string[]>(() => this.options()['phoneLabels'] || ['Mobile', 'Home', 'Work', 'Other']);\n\n protected internalValue: Signal<{ value: string; label?: string; id: string }[]> = computed(() => this.getValueAsArrayOfObjects());\n\n private _validationRules: AXPValidationRules = [];\n public get validationRules(): AXPValidationRules {\n return this._validationRules;\n }\n public set validationRules(v: AXPValidationRules) {\n this._validationRules = v;\n }\n\n private getValueAsArrayOfObjects(): any[] {\n const value = this.getValue();\n if (Array.isArray(value)) {\n return value.map((item) => (typeof item === 'object' ? item : { value: item }));\n }\n return typeof value === 'object' ? [value] : [{ value: value || '' }];\n }\n\n protected handleValueChange(e: AXValueChangedEvent, selectedIndex: number) {\n if (e.isUserInteraction) {\n const newValues = this.internalValue().map((item, index) => (selectedIndex === index ? { ...item, value: e.value } : item));\n if (this.multiple()) this.setValue(newValues);\n else if (this.hasLabel()) this.setValue(newValues[0]);\n else this.setValue(newValues[0].value);\n }\n }\n\n protected handleLabelChange(e: AXValueChangedEvent, selectedIndex: number) {\n if (e.isUserInteraction) {\n const newValues = this.internalValue().map((item, index) => (selectedIndex === index ? { ...item, label: e.value } : item));\n if (this.multiple()) this.setValue(newValues);\n else this.setValue(newValues[0]);\n }\n }\n\n protected addItem() {\n const newValues = [...this.internalValue(), ''];\n this.setValue(newValues);\n }\n protected deleteItem(deletedIndex: number) {\n const newValues = this.internalValue().filter((_, index) => index != deletedIndex);\n this.setValue(newValues);\n }\n\n @HostBinding('class')\n private get __class(): string {\n const cls: any = {};\n cls[`ax-block`] = true;\n cls[`ax-flex-1`] = true;\n return cls;\n }\n}\n","import { AXPWidgetComponent } from '@acorex/platform/layout/builder';\nimport { CommonModule } from '@angular/common';\nimport { ChangeDetectionStrategy, Component, inject } from '@angular/core';\nimport { FormsModule } from '@angular/forms';\n\n@Component({\n template: ``,\n standalone: true,\n changeDetection: ChangeDetectionStrategy.OnPush,\n imports: [CommonModule, FormsModule],\n inputs: []\n})\nexport class AXPPhoneBoxWidgetFilterComponent extends AXPWidgetComponent<any> { }","import { AXPColumnWidgetComponent } from '@acorex/platform/layout/builder';\nimport { CommonModule } from '@angular/common';\nimport { ChangeDetectionStrategy, Component, Signal, computed } from '@angular/core';\n@Component({\n template: `<div>\n @if(multiple && list.length>1){\n <div [title]=\"text()\">{{ dot3(text()) }}</div>\n }@else {\n <div>\n @if(list() && list().length){\n {{ list()[0].value }}\n }@else { - }\n </div>\n }\n </div>`,\n standalone: true,\n changeDetection: ChangeDetectionStrategy.OnPush,\n imports: [CommonModule],\n inputs: ['rawValue'],\n})\nexport class AXPPhoneBoxWidgetColumnComponent extends AXPColumnWidgetComponent<any> {\n protected list: Signal<{ value: string; label: string }[]> = computed(() =>\n Array.isArray(this.rawValue) ? this.rawValue.map((c) => this.extractItem(c)) : [this.extractItem(this.rawValue)]\n );\n protected text: Signal<string> = computed(() =>\n this.list()\n .map((item) => item.value)\n .join('\\n')\n );\n protected multiple!: boolean;\n protected hasLabel!: boolean;\n\n protected dot3(text: string) {\n console.log(text);\n if (this.multiple) return text.split('\\n')[0] + '...';\n else return text.split('\\n')[0];\n }\n\n private extractItem(item: any): any {\n return typeof item == 'object'\n ? {\n value: item.value ?? '-',\n type: item.type ?? 'primary',\n label: item.label,\n }\n : {\n value: item,\n type: 'primary',\n label: null,\n };\n }\n}\n","import { AXPWidgetComponent } from '@acorex/platform/layout/builder';\nimport { CommonModule } from '@angular/common';\nimport { ChangeDetectionStrategy, Component, inject } from '@angular/core';\n@Component({\n template: ``,\n standalone: true,\n changeDetection: ChangeDetectionStrategy.OnPush,\n imports: [CommonModule],\n inputs: []\n})\nexport class AXPPhoneBoxWidgetPrintComponent extends AXPWidgetComponent<any> { }","import { AXPWidgetConfig, AXP_WIDGETS_EDITOR_GROUP } from '@acorex/platform/layout/builder';\nimport { AXP_ALLOW_MULTIPLE_PROPERTY, AXP_HAS_LABEL_PROPERTY, AXP_TABLE_COLUMN_WIDTH_PROPERTY, AXP_VALIDATION_PROPERTY } from '../../../properties';\n\nexport const AXPPhoneBoxWidget: AXPWidgetConfig = {\n name: 'phone-editor',\n title: 'Phone Box',\n description: 'Inputs and validates phone numbers',\n icon: 'fa-solid fa-input-numeric',\n group: AXP_WIDGETS_EDITOR_GROUP,\n type: 'editor',\n properties: [AXP_HAS_LABEL_PROPERTY, AXP_ALLOW_MULTIPLE_PROPERTY, AXP_VALIDATION_PROPERTY, AXP_TABLE_COLUMN_WIDTH_PROPERTY],\n components: {\n view: {\n component: () => import('./phone-box-widget-view.component').then((c) => c.AXPPhoneBoxWidgetViewComponent),\n },\n edit: {\n component: () => import('./phone-box-widget-edit.component').then((c) => c.AXPPhoneBoxWidgetEditComponent),\n },\n filter: {\n component: () => import('./phone-box-widget-filter.component').then((c) => c.AXPPhoneBoxWidgetFilterComponent),\n },\n column: {\n component: () => import('./phone-box-widget-column.component').then((c) => c.AXPPhoneBoxWidgetColumnComponent),\n properties: [AXP_TABLE_COLUMN_WIDTH_PROPERTY],\n },\n print: {\n component: () => import('./phone-box-widget-print.component').then((c) => c.AXPPhoneBoxWidgetPrintComponent),\n },\n designer: {\n component: () => import('./phone-box-widget-edit.component').then((c) => c.AXPPhoneBoxWidgetEditComponent),\n },\n },\n};\n\ndeclare module '@acorex/platform/layout/builder' {\n interface AXPWidgetTypesMap {\n phone: 'phone-editor';\n }\n}\n","import { AXPopupService } from '@acorex/components/popup';\nimport { AXPlatform } from '@acorex/core/platform';\nimport { AXPHtmlUtils } from '@acorex/platform/core';\nimport { AXPWidgetComponent } from '@acorex/platform/layout/builder';\nimport { CommonModule } from '@angular/common';\nimport { ChangeDetectionStrategy, Component, computed, inject, Signal } from '@angular/core';\nimport { SafeHtml } from '@angular/platform-browser';\n\n@Component({\n selector: 'axp-rich-text-widget',\n template: ` <span class=\"ax-truncate ax-underline ax-cursor-pointer\" (click)=\"openPopup()\" [innerHTML]=\"text()\">\n </span>`,\n standalone: true,\n changeDetection: ChangeDetectionStrategy.OnPush,\n imports: [CommonModule],\n inputs: [],\n})\nexport class AXPRichTextWidgetViewComponent extends AXPWidgetComponent<any> {\n private htmlUtil = inject(AXPHtmlUtils);\n private popupService: AXPopupService = inject(AXPopupService);\n private platform = inject(AXPlatform);\n protected html: Signal<SafeHtml | null> = computed(() => this.htmlUtil.getSafeHTMLfromHTML(this.getValue()));\n protected text: Signal<string> = computed(() => this.htmlUtil.getTextFromHTML(this.getValue()));\n\n protected async openPopup() {\n const { AXPRichTextPopupComponent } = await import('./rich-text-popup.component');\n this.popupService.open(AXPRichTextPopupComponent, {\n size: this.platform.is('Mobile') || this.platform.is('SM') ? 'full' : 'md',\n header: true,\n closeOnBackdropClick: true,\n closeButton: true,\n draggable: true,\n title: this.path ?? '',\n data: {\n html: this.html,\n },\n });\n }\n}\n","import { AXFormModule } from '@acorex/components/form';\nimport { AXWysiwygModule } from '@acorex/components/wysiwyg';\nimport { AXValidationModule } from '@acorex/core/validation';\nimport { AXPValidationRules } from '@acorex/platform/core';\nimport { AXPWidgetComponent } from '@acorex/platform/layout/builder';\nimport { CommonModule } from '@angular/common';\nimport { ChangeDetectionStrategy, Component, computed, effect, HostBinding, ViewEncapsulation } from '@angular/core';\nimport { FormsModule } from '@angular/forms';\n\n@Component({\n selector: 'axp-rich-text-widget',\n template: `<ax-wysiwyg-container\n [placeHolder]=\"placeholder()\"\n [look]=\"'solid'\"\n [ngModel]=\"getValue()\"\n (ngModelChange)=\"setNgModel($event)\"\n >\n <ax-wysiwyg-view class=\"ax-min-h-28\"></ax-wysiwyg-view>\n <ax-wysiwyg-toolbar>\n <ax-wysiwyg-history></ax-wysiwyg-history>\n <ax-wysiwyg-font-style></ax-wysiwyg-font-style>\n <ax-wysiwyg-colors></ax-wysiwyg-colors>\n <ax-wysiwyg-list></ax-wysiwyg-list>\n <ax-wysiwyg-alignment></ax-wysiwyg-alignment>\n </ax-wysiwyg-toolbar>\n @for (validation of validationRules; track $index) {\n <ax-validation-rule\n [rule]=\"validation.rule\"\n [message]=\"validation.options?.message\"\n [options]=\"validation.options\"\n ></ax-validation-rule>\n }\n </ax-wysiwyg-container>`,\n standalone: true,\n encapsulation: ViewEncapsulation.None,\n changeDetection: ChangeDetectionStrategy.OnPush,\n imports: [CommonModule, AXWysiwygModule, AXValidationModule, AXFormModule, FormsModule],\n inputs: [],\n})\nexport class AXPRichTextWidgetEditComponent extends AXPWidgetComponent<any> {\n protected placeholder = computed<string>(() => this.options()['placeholder'] as string ?? 'default');\n protected setNgModel(event: string) {\n this.setValue(event);\n }\n constructor() {\n super();\n effect(() => console.log(this.placeholder()));\n }\n\n private _validationRules: AXPValidationRules = [];\n public get validationRules(): AXPValidationRules {\n return this._validationRules;\n }\n public set validationRules(v: AXPValidationRules) {\n this._validationRules = v;\n }\n\n @HostBinding('class')\n private get __class(): string {\n const cls: any = {};\n cls[`ax-block`] = true;\n cls[`ax-flex-1`] = true;\n return cls;\n }\n}\n","import { AXPWidgetComponent } from '@acorex/platform/layout/builder';\nimport { CommonModule } from '@angular/common';\nimport { ChangeDetectionStrategy, Component, inject } from '@angular/core';\nimport { FormsModule } from '@angular/forms';\n\n@Component({\n template: ``,\n standalone: true,\n changeDetection: ChangeDetectionStrategy.OnPush,\n imports: [CommonModule, FormsModule],\n inputs: []\n})\nexport class AXPRichTextWidgetFilterComponent extends AXPWidgetComponent<any> { }","import { AXButtonModule } from '@acorex/components/button';\nimport { AXDecoratorModule } from '@acorex/components/decorators';\nimport { AXPopupService } from '@acorex/components/popup';\nimport { AXPlatform } from '@acorex/core/platform';\nimport { AXPHtmlUtils } from '@acorex/platform/core';\nimport { AXPColumnWidgetComponent } from '@acorex/platform/layout/builder';\nimport { CommonModule } from '@angular/common';\nimport { ChangeDetectionStrategy, Component, computed, inject, Signal } from '@angular/core';\nimport { SafeHtml } from '@angular/platform-browser';\n\n@Component({\n template: `<span class=\"ax-truncate ax-underline ax-block ax-w-full ax-cursor-pointer\" (click)=\"openPopup()\" [innerHTML]=\"text()\"> </span>`,\n standalone: true,\n changeDetection: ChangeDetectionStrategy.OnPush,\n imports: [CommonModule, AXDecoratorModule, AXButtonModule],\n inputs: ['rawValue'],\n})\nexport class AXPRichTextWidgetColumnComponent extends AXPColumnWidgetComponent<string | null | undefined> {\n private htmlUtil = inject(AXPHtmlUtils);\n private popupService: AXPopupService = inject(AXPopupService);\n private platform = inject(AXPlatform);\n protected html: Signal<SafeHtml | null> = computed(() => this.htmlUtil.getSafeHTMLfromHTML(this.rawValue));\n protected text: Signal<string> = computed(() => this.htmlUtil.getTextFromHTML(this.rawValue));\n\n protected async openPopup() {\n const { AXPRichTextPopupComponent } = await import('./rich-text-popup.component');\n this.popupService.open(AXPRichTextPopupComponent, {\n size: this.platform.is('Mobile') || this.platform.is('SM') ? 'full' : 'md',\n header: true,\n closeOnBackdropClick: true,\n closeButton: true,\n draggable: true,\n title: this.path ?? '',\n data: {\n html: this.html,\n },\n });\n }\n}\n","import { AXPWidgetComponent } from '@acorex/platform/layout/builder';\nimport { CommonModule } from '@angular/common';\nimport { ChangeDetectionStrategy, Component, inject } from '@angular/core';\n@Component({\n template: ``,\n standalone: true,\n changeDetection: ChangeDetectionStrategy.OnPush,\n imports: [CommonModule],\n inputs: []\n})\nexport class AXPRichTextWidgetPrintComponent extends AXPWidgetComponent<any> { }","import { AXP_WIDGETS_EDITOR_GROUP, AXPWidgetConfig, cloneProperty } from '@acorex/platform/layout/builder';\nimport {\n AXP_ALLOW_MULTIPLE_PROPERTY,\n AXP_DATA_PATH_PROPERTY,\n AXP_DISABLED_PROPERTY,\n AXP_PLACEHOLDER_PROPERTY,\n AXP_TABLE_COLUMN_WIDTH_PROPERTY,\n AXP_VALIDATION_PROPERTY,\n} from '../../../properties';\nimport { AXP_NAME_PROPERTY } from '../../../properties/general.props';\nexport const AXPRichTextWidget: AXPWidgetConfig = {\n name: 'rich-text-editor',\n title: 'Rich Text',\n description: 'Formats and edits rich text',\n icon: 'fa-solid fa-input-text',\n group: AXP_WIDGETS_EDITOR_GROUP,\n type: 'editor',\n properties: [\n AXP_NAME_PROPERTY,\n AXP_DATA_PATH_PROPERTY,\n AXP_ALLOW_MULTIPLE_PROPERTY,\n AXP_DISABLED_PROPERTY,\n AXP_VALIDATION_PROPERTY,\n AXP_PLACEHOLDER_PROPERTY,\n //cloneProperty(AXP_TABLE_COLUMN_WIDTH_PROPERTY, { schema: { defaultValue: '300px' } }),\n ],\n components: {\n view: {\n component: () => import('./rich-text-widget-view.component').then((c) => c.AXPRichTextWidgetViewComponent),\n },\n edit: {\n component: () => import('./rich-text-widget-edit.component').then((c) => c.AXPRichTextWidgetEditComponent),\n },\n filter: {\n component: () => import('./rich-text-widget-filter.component').then((c) => c.AXPRichTextWidgetFilterComponent),\n },\n column: {\n component: () => import('./rich-text-widget-column.component').then((c) => c.AXPRichTextWidgetColumnComponent),\n },\n print: {\n component: () => import('./rich-text-widget-print.component').then((c) => c.AXPRichTextWidgetPrintComponent),\n },\n designer: {\n component: () => import('./rich-text-widget-edit.component').then((c) => c.AXPRichTextWidgetEditComponent),\n },\n },\n};\n\ndeclare module '@acorex/platform/layout/builder' {\n interface AXPWidgetTypesMap {\n richText: 'rich-text-editor';\n }\n}\n","import { AXPWidgetComponent } from '@acorex/platform/layout/builder';\nimport { CommonModule } from '@angular/common';\nimport { ChangeDetectionStrategy, Component, computed, HostBinding } from '@angular/core';\n@Component({\n template: `\n <div>\n @if(multiple())\n { \n @for (item of internalValue(); track $index) {\n <p>{{ item.text }}</p>\n } \n }@else {\n <p>{{ internalValue()[0].text }}</p>\n }\n </div>\n `,\n standalone: true,\n changeDetection: ChangeDetectionStrategy.OnPush,\n imports: [CommonModule],\n inputs: [],\n})\nexport class AXPSelectBoxWidgetViewComponent extends AXPWidgetComponent<any> {\n protected internalValue = computed(() =>\n Array.isArray(this.getValue()) ? this.getValue().map((item: any) => this.extractItem(item)) : [this.extractItem(this.getValue())]\n );\n\n protected text: string | null = null;\n\n\n protected multiple = computed<boolean>(() => this.options()[\"multiple\"] as boolean);\n protected valueField = computed<string>(() => this.options()[\"valueField\"] as string ?? \"id\");\n protected textField = computed<string>(() => this.options()[\"textField\"] as string ?? \"title\");\n\n private extractItem(item: any): any {\n return typeof item == 'object'\n ? {\n id: item[this.valueField()],\n text: item[this.textField()],\n }\n : {\n id: item,\n text: item,\n };\n }\n\n\n @HostBinding('class')\n private get __class(): string {\n const cls: any = {};\n cls[`ax-block`] = true;\n cls[`ax-flex-1`] = true;\n return cls;\n }\n}\n","import { AXDataSource, AXValueChangedEvent, convertArrayToDataSource } from '@acorex/components/common';\nimport { AXDecoratorModule } from '@acorex/components/decorators';\nimport { AXFormModule } from '@acorex/components/form';\nimport { AXSelectBoxComponent, AXSelectBoxModule } from '@acorex/components/select-box';\nimport { AXPValidationRules } from '@acorex/platform/core';\nimport { AXPWidgetComponent } from '@acorex/platform/layout/builder';\nimport { CommonModule } from '@angular/common';\nimport { ChangeDetectionStrategy, Component, HostBinding, ViewChild, computed } from '@angular/core';\nimport { FormsModule } from '@angular/forms';\n\n@Component({\n selector: 'axp-select-box-widget-edit',\n template: `\n <ax-select-box\n #dd\n [placeholder]=\"placeholder()\"\n [dataSource]=\"dataSource()\"\n [disabled]=\"disabled()\"\n [valueField]=\"valueField()\"\n [textField]=\"textField()\"\n [ngModel]=\"getValue()\"\n [multiple]=\"multiple()\"\n (onValueChanged)=\"handleValueChange($event)\"\n >\n @if(hasClearButton()) {\n <ax-clear-button></ax-clear-button>\n } @for (validation of validationRules(); track $index) {\n <ax-validation-rule\n [rule]=\"validation.rule\"\n [message]=\"validation.options?.message\"\n [options]=\"validation.options\"\n ></ax-validation-rule>\n }\n </ax-select-box>\n `,\n standalone: true,\n changeDetection: ChangeDetectionStrategy.OnPush,\n imports: [CommonModule, FormsModule, AXSelectBoxModule, AXFormModule, AXDecoratorModule],\n})\nexport class AXPSelectBoxWidgetEditComponent extends AXPWidgetComponent<any> {\n @ViewChild(AXSelectBoxComponent)\n private selectbox!: AXSelectBoxComponent;\n\n protected multiple = computed<boolean>(() => this.options()['multiple'] as boolean);\n\n protected validationRules = computed<AXPValidationRules>(\n () => (this.options()['validationRules'] as AXPValidationRules) ?? []\n );\n\n protected dataSource = computed<AXDataSource>(() => {\n const rawValue = this.options()['dataSource'];\n if (rawValue instanceof AXDataSource) {\n return rawValue;\n } else if (Array.isArray(rawValue)) {\n return convertArrayToDataSource(rawValue);\n } else {\n return convertArrayToDataSource([]);\n }\n });\n\n protected valueField = computed<string>(() => (this.options()['valueField'] as string) ?? 'id');\n protected textField = computed<string>(() => (this.options()['textField'] as string) ?? 'title');\n protected disabled = computed<boolean>(() => this.options()['disabled'] as boolean);\n protected placeholder = computed<string>(() => (this.options()['placeholder'] as string) ?? '');\n protected hasClearButton = computed<boolean>(() => this.options()['hasClearButton'] as boolean);\n\n protected handleValueChange(e: AXValueChangedEvent) {\n if (e.isUserInteraction) {\n this.setValue((e.component as AXSelectBoxComponent).selectedItems[0]);\n }\n }\n\n refresh() {\n this.selectbox?.refresh();\n }\n\n clear() {\n this.selectbox?.reset(true);\n this.selectbox?.refresh();\n }\n\n @HostBinding('class')\n private get __class(): string {\n const cls: any = {};\n cls[`ax-block`] = true;\n cls[`ax-flex-1`] = true;\n return cls;\n }\n}\n","import { AXPWidgetComponent } from '@acorex/platform/layout/builder';\nimport { CommonModule } from '@angular/common';\nimport { ChangeDetectionStrategy, Component, inject } from '@angular/core';\n@Component({\n template: ``,\n standalone: true,\n changeDetection: ChangeDetectionStrategy.OnPush,\n imports: [CommonModule],\n inputs: []\n})\nexport class AXPSelectBoxWidgetFilterComponent extends AXPWidgetComponent<any> { }","import { AXBadgeModule } from '@acorex/components/badge';\nimport { AXPColumnWidgetComponent } from '@acorex/platform/layout/builder';\nimport { CommonModule } from '@angular/common';\nimport { ChangeDetectionStrategy, Component, computed } from '@angular/core';\n@Component({\n template: ` <div class=\"ax-flex ax-gap-2\">\n @for (item of internalValue(); track $index) {\n <ax-badge [look]=\"'twotone'\" [text]=\"item[this.textField]\" color=\"primary\"></ax-badge>\n }\n </div>`,\n standalone: true,\n changeDetection: ChangeDetectionStrategy.OnPush,\n imports: [CommonModule, AXBadgeModule],\n inputs: ['rawValue'],\n})\nexport class AXPSelectBoxWidgetColumnComponent extends AXPColumnWidgetComponent<any> {\n protected multiple: boolean = this.options['multiple'];\n protected valueField: string = this.options['valueField'] ?? 'id';\n protected textField: string = this.options['textField'] ?? 'title';\n\n protected internalValue = computed(() =>\n Array.isArray(this.rawValue)\n ? this.rawValue.map((item: any) => this.extractItem(item))\n : [this.extractItem(this.rawValue)]\n );\n\n private extractItem(item: any): any {\n return typeof item == 'object'\n ? {\n [this.valueField]: item[this.valueField],\n [this.textField]: item[this.textField],\n }\n : {\n [this.valueField]: item,\n [this.textField]: item,\n };\n }\n}\n","import { AXPWidgetComponent } from '@acorex/platform/layout/builder';\nimport { CommonModule } from '@angular/common';\nimport { ChangeDetectionStrategy, Component, inject } from '@angular/core';\n@Component({\n template: ``,\n standalone: true,\n changeDetection: ChangeDetectionStrategy.OnPush,\n imports: [CommonModule],\n inputs: []\n})\nexport class AXPSelectBoxWidgetPrintComponent extends AXPWidgetComponent<any> { }","import { AXPWidgetConfig, AXP_WIDGETS_EDITOR_GROUP } from '@acorex/platform/layout/builder';\nimport {\n AXP_ALLOW_MULTIPLE_PROPERTY,\n AXP_DISABLED_PROPERTY,\n AXP_HAS_CLEAR_BUTTON_PROPERTY,\n AXP_PLACEHOLDER_PROPERTY,\n AXP_TEXT_FIELD_PROPERTY,\n AXP_VALUE_FIELD_PROPERTY,\n} from '../../../properties';\n\nexport const AXPSelectBoxWidget: AXPWidgetConfig = {\n name: 'select-editor',\n title: 'Select Box',\n description: 'Chooses from dropdown options',\n icon: 'fa-solid fa-list-dropdown',\n group: AXP_WIDGETS_EDITOR_GROUP,\n type: 'editor',\n properties: [\n AXP_ALLOW_MULTIPLE_PROPERTY,\n AXP_DISABLED_PROPERTY,\n AXP_TEXT_FIELD_PROPERTY,\n AXP_VALUE_FIELD_PROPERTY,\n AXP_PLACEHOLDER_PROPERTY,\n AXP_HAS_CLEAR_BUTTON_PROPERTY,\n ],\n components: {\n view: {\n component: () => import('./select-box-widget-view.component').then((c) => c.AXPSelectBoxWidgetViewComponent),\n },\n edit: {\n component: () => import('./select-box-widget-edit.component').then((c) => c.AXPSelectBoxWidgetEditComponent),\n },\n filter: {\n component: () => import('./select-box-widget-filter.component').then((c) => c.AXPSelectBoxWidgetFilterComponent),\n },\n column: {\n component: () => import('./select-box-widget-column.component').then((c) => c.AXPSelectBoxWidgetColumnComponent),\n },\n print: {\n component: () => import('./select-box-widget-print.component').then((c) => c.AXPSelectBoxWidgetPrintComponent),\n },\n designer: {\n component: () => import('./select-box-widget-edit.component').then((c) => c.AXPSelectBoxWidgetEditComponent),\n },\n },\n};\n\ndeclare module '@acorex/platform/layout/builder' {\n interface AXPWidgetTypesMap {\n select: 'select-editor';\n }\n}\n","import { AXBadgeModule } from '@acorex/components/badge';\nimport { AXPWidgetComponent } from '@acorex/platform/layout/builder';\nimport { ChangeDetectionStrategy, Component, computed } from '@angular/core';\n\n@Component({\n template: `\n @for (item of internalValue(); track $index) {\n <ax-badge [class]=\"'ax-ms-1'\" [look]=\"'twotone'\" [text]=\"item[this.textField()]\" color=\"primary\"></ax-badge>\n }\n `,\n standalone: true,\n changeDetection: ChangeDetectionStrategy.OnPush,\n imports: [AXBadgeModule],\n})\nexport class AXPSelectionListWidgetViewComponent extends AXPWidgetComponent<any> {\n protected internalValue = computed(() => this.updateValue());\n\n protected updateValue() {\n return this.items().filter((item) => {\n if (Array.isArray(this.getValue())) return this.getValue().includes(item[this.valueField()]);\n else {\n return this.getValue() == item[this.valueField()];\n }\n });\n }\n protected items = computed<any[]>(() => this.options()['items']);\n protected valueField = computed<string>(() => this.options()['valueField']);\n protected textField = computed<string>(() => this.options()['textField']);\n}\n","import { AXDirection, AXValueChangedEvent } from '@acorex/components/common';\nimport { AXFormModule } from '@acorex/components/form';\nimport { AXSelectionListModule } from '@acorex/components/selection-list';\nimport { AXPValidationRules } from '@acorex/platform/core';\nimport { AXPWidgetComponent } from '@acorex/platform/layout/builder';\nimport { CommonModule } from '@angular/common';\nimport { ChangeDetectionStrategy, Component, computed, HostBinding } from '@angular/core';\nimport { FormsModule } from '@angular/forms';\n\n@Component({\n template: `\n <ax-selection-list\n class=\"ax-w-max\"\n [valueField]=\"valueField()\"\n [textField]=\"textField()\"\n [ngModel]=\"this.getValue()\"\n [items]=\"items()\"\n [multiple]=\"multiple()\"\n [direction]=\"direction()\"\n [disabled]=\"disabled()\"\n [readonly]=\"readonly()\"\n >\n </ax-selection-list>\n `,\n standalone: true,\n changeDetection: ChangeDetectionStrategy.OnPush,\n imports: [CommonModule, FormsModule, AXSelectionListModule, AXFormModule],\n inputs: [],\n})\nexport class AXPSelectionListWidgetDesignerComponent extends AXPWidgetComponent<any> {\n\n private samples = computed<any[]>(() => Array.from({ length: 5 }).map((c, i) => {\n const item: any = {};\n item[this.valueField()] = i + 1;\n item[this.textField()] = `Item ${i + 1}`;\n return item\n }));\n\n protected multiple = computed<boolean>(() => this.options()['multiple'] as boolean);\n protected items = computed<any[]>(() => this.options()['items'] ?? this.samples());\n protected valueField = computed<string>(() => this.options()['valueField'] ?? 'id');\n protected textField = computed<string>(() => this.options()['textField'] ?? 'text');\n protected direction = computed<AXDirection>(() => this.options()['direction']?.id ?? 'horizontal');\n protected disabled = computed<boolean>(() => this.options()[\"disabled\"] as boolean);\n protected readonly = computed<boolean>(() => this.options()[\"readonly\"] as boolean);\n\n\n @HostBinding('class')\n private get __class(): string {\n const cls: any = {};\n cls[`ax-block`] = true;\n cls[`ax-flex-1`] = true;\n return cls;\n }\n}\n","import { AXDirection, AXValueChangedEvent } from '@acorex/components/common';\nimport { AXFormModule } from '@acorex/components/form';\nimport { AXSelectionListModule } from '@acorex/components/selection-list';\nimport { AXPValidationRules } from '@acorex/platform/core';\nimport { AXPWidgetComponent } from '@acorex/platform/layout/builder';\nimport { CommonModule } from '@angular/common';\nimport { ChangeDetectionStrategy, Component, computed, HostBinding } from '@angular/core';\nimport { FormsModule } from '@angular/forms';\n\n@Component({\n template: `\n <ax-selection-list\n class=\"ax-w-max\"\n [valueField]=\"valueField()\"\n [textField]=\"textField()\"\n [ngModel]=\"this.getValue()\"\n (onValueChanged)=\"handleValueChange($event)\"\n [items]=\"items()\"\n [multiple]=\"multiple()\"\n [disabled]=\"disabled()\"\n [readonly]=\"readonly()\"\n [direction]=\"direction()\"\n >\n @for (validation of validationRules(); track $index) {\n <ax-validation-rule [rule]=\"validation.rule\" [message]=\"validation.options?.message\" [options]=\"validation.options\"></ax-validation-rule>\n }\n </ax-selection-list>\n `,\n standalone: true,\n changeDetection: ChangeDetectionStrategy.OnPush,\n imports: [CommonModule, FormsModule, AXSelectionListModule, AXFormModule],\n inputs: [],\n})\nexport class AXPSelectionListWidgetEditComponent extends AXPWidgetComponent<any> {\n\n protected multiple = computed<boolean>(() => this.options()['multiple'] as boolean);\n protected items = computed<any[]>(() => this.options()['items']);\n protected valueField = computed<string>(() => this.options()['valueField'] ?? 'id');\n protected textField = computed<string>(() => this.options()['textField'] ?? 'text');\n protected direction = computed<AXDirection>(() => this.options()['direction']?.id ?? 'horizontal');\n protected disabled = computed<boolean>(() => this.options()[\"disabled\"] as boolean);\n protected readonly = computed<boolean>(() => this.options()[\"readonly\"] as boolean);\n protected validationRules = computed<AXPValidationRules>(() => (this.options()[\"validationRules\"] as AXPValidationRules) ?? []);\n\n\n protected handleValueChange(e: AXValueChangedEvent) {\n if (e.isUserInteraction) {\n this.setValue(e.value);\n }\n }\n\n @HostBinding('class')\n private get __class(): string {\n const cls: any = {};\n cls[`ax-block`] = true;\n cls[`ax-flex-1`] = true;\n return cls;\n }\n}\n","import { AXPWidgetComponent } from '@acorex/platform/layout/builder';\nimport { CommonModule } from '@angular/common';\nimport { ChangeDetectionStrategy, Component, inject } from '@angular/core';\nimport { FormsModule } from '@angular/forms';\n\n@Component({\n template: ``,\n standalone: true,\n changeDetection: ChangeDetectionStrategy.OnPush,\n imports: [CommonModule, FormsModule],\n inputs: []\n})\nexport class AXPSelectionListWidgetFilterComponent extends AXPWidgetComponent<any> { }","import { AXBadgeModule } from '@acorex/components/badge';\nimport { AXPColumnWidgetComponent } from '@acorex/platform/layout/builder';\nimport { CommonModule } from '@angular/common';\nimport { ChangeDetectionStrategy, Component, Signal, computed } from '@angular/core';\n\n@Component({\n template: ` <div class=\"ax-flex ax-gap-2\">\n @if(multiple){ @for (item of selectedItems(); track $index) {\n <ax-badge [look]=\"'twotone'\" [text]=\"item[this.textField]\" color=\"primary\"></ax-badge>\n } }@else {\n <ax-badge [look]=\"'twotone'\" [text]=\"firstItem()[this.textField]\" color=\"primary\"></ax-badge>\n }\n </div>`,\n standalone: true,\n changeDetection: ChangeDetectionStrategy.OnPush,\n imports: [CommonModule, AXBadgeModule],\n inputs: ['rawValue'],\n})\nexport class AXPSelectionListWidgetColumnComponent extends AXPColumnWidgetComponent<any> {\n protected valueField: string = this.options['valueField'];\n protected textField: string = this.options['textField'];\n protected items: any[] = this.options['items'];\n protected multiple: boolean = this.options['multiple'];\n\n protected selectedItemIds: Signal<string[]> = computed(() => {\n return this.rawValue || [];\n });\n\n protected selectedItems = computed(() => {\n const selectedIds = this.selectedItemIds();\n const filteredItems = this.items.filter((item) => {\n const itemValue = item[this.valueField];\n const isSelected = selectedIds.includes(itemValue);\n return isSelected;\n });\n return filteredItems;\n });\n\n protected firstItem = computed(() => {\n const first = this.selectedItems()[0];\n return first;\n });\n}\n","import { AXPWidgetComponent } from '@acorex/platform/layout/builder';\nimport { CommonModule } from '@angular/common';\nimport { ChangeDetectionStrategy, Component, inject } from '@angular/core';\n@Component({\n template: ``,\n standalone: true,\n changeDetection: ChangeDetectionStrategy.OnPush,\n imports: [CommonModule],\n inputs: []\n})\nexport class AXPSelectionListWidgetPrintComponent extends AXPWidgetComponent<any> { }","import { AXPWidgetConfig, AXP_WIDGETS_EDITOR_GROUP, cloneProperty } from '@acorex/platform/layout/builder';\nimport { AXP_NAME_PROPERTY, AXP_DATA_PATH_PROPERTY, AXP_ALLOW_MULTIPLE_PROPERTY, AXP_DISABLED_PROPERTY, AXP_VALIDATION_PROPERTY, AXP_TABLE_COLUMN_WIDTH_PROPERTY, AXP_READONLY_PROPERTY, AXP_DIRECTION_PROPERTY, AXP_DATA_SOURCE_PROPERTY } from '../../../properties';\n\n\nexport const AXPSelectionListWidget: AXPWidgetConfig = {\n name: 'selection-list-editor',\n title: 'Selection List',\n description: 'Selects from a list',\n icon: 'fa-solid fa-list-radio',\n group: AXP_WIDGETS_EDITOR_GROUP,\n properties: [\n AXP_DATA_SOURCE_PROPERTY,\n AXP_NAME_PROPERTY,\n AXP_DATA_PATH_PROPERTY,\n AXP_ALLOW_MULTIPLE_PROPERTY,\n AXP_DIRECTION_PROPERTY,\n AXP_DISABLED_PROPERTY,\n AXP_READONLY_PROPERTY,\n AXP_VALIDATION_PROPERTY,\n //cloneProperty(AXP_TABLE_COLUMN_WIDTH_PROPERTY, { schema: { defaultValue: '200px' } }),\n ],\n\n type: 'editor',\n components: {\n view: {\n component: () => import('./selection-list-widget-view.component').then((c) => c.AXPSelectionListWidgetViewComponent),\n },\n edit: {\n component: () => import('./selection-list-widget-edit.component').then((c) => c.AXPSelectionListWidgetEditComponent),\n },\n filter: {\n component: () => import('./selection-list-widget-filter.component').then((c) => c.AXPSelectionListWidgetFilterComponent),\n },\n column: {\n component: () => import('./selection-list-widget-column.component').then((c) => c.AXPSelectionListWidgetColumnComponent),\n },\n print: {\n component: () => import('./selection-list-widget-print.component').then((c) => c.AXPSelectionListWidgetPrintComponent),\n },\n designer: {\n component: () => import('./selection-list-widget-designer.component').then((c) => c.AXPSelectionListWidgetDesignerComponent),\n },\n },\n};\n\ndeclare module '@acorex/platform/layout/builder' {\n interface AXPWidgetTypesMap {\n selectionList: 'selection-list-editor';\n }\n}\n","import { AXPWidgetComponent } from '@acorex/platform/layout/builder';\nimport { CommonModule } from '@angular/common';\nimport { ChangeDetectionStrategy, Component, computed } from '@angular/core';\n\n@Component({\n selector: 'axp-text-box-widget',\n template: `\n <div>\n @if(multiple())\n { \n @for (item of internalValue(); track $index) {\n <p>{{ item }}</p>\n } \n }@else {\n <p>{{ internalValue()[0] }}</p>\n }\n </div>\n `,\n standalone: true,\n changeDetection: ChangeDetectionStrategy.OnPush,\n imports: [CommonModule],\n inputs: [],\n})\nexport class AXPTextBoxWidgetViewComponent extends AXPWidgetComponent<any> {\n protected internalValue = computed(() => (Array.isArray(this.getValue()) ? this.getValue() : [this.getValue()]));\n\n protected multiple = computed<boolean>(() => this.options()[\"multiple\"] as boolean);\n}\n","import { AXButtonModule } from '@acorex/components/button';\nimport { AXValueChangedEvent } from '@acorex/components/common';\nimport { AXDecoratorModule } from '@acorex/components/decorators';\nimport { AXFormModule } from '@acorex/components/form';\nimport { AXTextBoxModule } from '@acorex/components/text-box';\nimport { AXValidationModule } from '@acorex/core/validation';\nimport { AXPValidationRules } from '@acorex/platform/core';\nimport { AXPWidgetComponent } from '@acorex/platform/layout/builder';\nimport { CommonModule } from '@angular/common';\nimport { ChangeDetectionStrategy, Component, HostBinding, Signal, computed, inject } from '@angular/core';\nimport { FormsModule } from '@angular/forms';\n\n@Component({\n selector: 'axp-text-box-widget',\n template: `\n <div class=\"ax-grid ax-grid-cols-12 ax-gap-4\">\n @for (text of internalValue(); track $index) {\n <ax-text-box class=\"ax-col-span-12\" [ngModel]=\"text\" [type]=\"'text'\" (onValueChanged)=\"handleValueChange($event, $index)\" [disabled]=\"disabled()\" [placeholder]=\"placeholder()\">\n @for (validation of validationRules(); track $index) {\n <ax-validation-rule [rule]=\"validation.rule\" [message]=\"validation.options?.message\" [options]=\"validation.options\"></ax-validation-rule>\n }\n @if(hasClearButton()){\n <ax-clear-button></ax-clear-button>\n } @if(multiple()){\n <ax-suffix>\n <ax-button class=\"ax-border-s\" (onClick)=\"deleteItem($index)\" look=\"blank\" color=\"danger\">\n <ax-icon class=\"far fa-trash\"> </ax-icon>\n </ax-button>\n </ax-suffix>\n }\n </ax-text-box>\n } @if(multiple()){\n <ax-button\n [text]=\"internalValue().length == 0 ? 'Add New' : 'Add Another'\"\n look=\"twotone\"\n [disabled]=\"disabled()\"\n (onClick)=\"addItem()\"\n class=\"ax-col-start-8 lg:ax-col-start-10 2xl:ax-col-start-10 ax-col-end-13\"\n >\n <ax-prefix>\n <ax-icon class=\"fa-solid fa-add\"></ax-icon>\n </ax-prefix>\n </ax-button>\n }\n </div>\n `,\n standalone: true,\n changeDetection: ChangeDetectionStrategy.OnPush,\n imports: [CommonModule, AXTextBoxModule, FormsModule, AXFormModule, AXDecoratorModule, AXValidationModule, AXButtonModule],\n inputs: [],\n})\nexport class AXPTextBoxWidgetEditComponent extends AXPWidgetComponent<any> {\n\n protected multiple = computed<boolean>(() => this.options()[\"multiple\"] as boolean);\n protected hasClearButton = computed<boolean>(() => this.options()['hasClearButton'] as boolean);\n protected disabled = computed<boolean>(() => this.options()[\"disabled\"] as boolean);\n protected placeholder = computed<string>(() => (this.options()[\"placeholder\"] as string));\n protected validationRules = computed<AXPValidationRules>(() => (this.options()[\"validationRules\"] as AXPValidationRules) ?? []);\n\n\n protected internalValue: Signal<string[]> = computed(() => (Array.isArray(this.getValue()) ? this.getValue() : [this.getValue()]));\n\n protected handleValueChange(e: AXValueChangedEvent, i: number) {\n if (e.isUserInteraction) {\n const newValues = this.internalValue().map((item, index) => (i === index ? e.value : item));\n if (this.multiple()) {\n this.setValue(newValues);\n }\n else {\n this.setValue(newValues[0]);\n }\n }\n }\n\n protected addItem() {\n const newValues = [...this.internalValue(), ''];\n this.setValue(newValues);\n }\n protected deleteItem(i: number) {\n const newValues = this.internalValue().filter((_, index) => index != i);\n this.setValue(newValues);\n }\n\n\n @HostBinding('class')\n private get __class(): string {\n const cls: any = {};\n cls[`ax-block`] = true;\n cls[`ax-flex-1`] = true;\n return cls;\n }\n\n}\n","import { AXPWidgetComponent } from '@acorex/platform/layout/builder';\nimport { CommonModule } from '@angular/common';\nimport { ChangeDetectionStrategy, Component, inject } from '@angular/core';\nimport { FormsModule } from '@angular/forms';\n\n@Component({\n template: ``,\n standalone: true,\n changeDetection: ChangeDetectionStrategy.OnPush,\n imports: [CommonModule, FormsModule],\n inputs: []\n})\nexport class AXPTextBoxWidgetFilterComponent extends AXPWidgetComponent<any> { }","import { AXPColumnWidgetComponent } from '@acorex/platform/layout/builder';\nimport { CommonModule } from '@angular/common';\nimport { ChangeDetectionStrategy, Component } from '@angular/core';\n@Component({\n selector: 'axp-text-box-widget-column',\n template: `{{ rawValue }}`,\n standalone: true,\n changeDetection: ChangeDetectionStrategy.OnPush,\n imports: [CommonModule],\n inputs: ['rawValue'],\n})\nexport class AXPTextBoxWidgetColumnComponent extends AXPColumnWidgetComponent<any> { }\n","import { AXPWidgetComponent } from '@acorex/platform/layout/builder';\nimport { CommonModule } from '@angular/common';\nimport { ChangeDetectionStrategy, Component, inject } from '@angular/core';\n@Component({\n template: ``,\n standalone: true,\n changeDetection: ChangeDetectionStrategy.OnPush,\n imports: [CommonModule],\n inputs: []\n})\nexport class AXPTextBoxWidgetPrintComponent extends AXPWidgetComponent<any> { }","import { AXP_WIDGETS_EDITOR_GROUP, AXPWidgetConfig, cloneProperty } from '@acorex/platform/layout/builder';\nimport {\n AXP_ALLOW_MULTIPLE_PROPERTY,\n AXP_DATA_PATH_PROPERTY,\n AXP_DISABLED_PROPERTY,\n AXP_HAS_CLEAR_BUTTON_PROPERTY,\n AXP_PLACEHOLDER_PROPERTY,\n AXP_TABLE_COLUMN_WIDTH_PROPERTY,\n AXP_VALIDATION_PROPERTY,\n plainTextDefaultProperty,\n} from '../../../properties';\nimport { AXP_NAME_PROPERTY } from '../../../properties/general.props';\n\nexport const AXPTextBoxWidget: AXPWidgetConfig = {\n name: 'text-editor',\n title: 'Text Box',\n icon: 'fa-solid fa-input-text',\n description: 'Inputs single-line text',\n group: AXP_WIDGETS_EDITOR_GROUP,\n type: 'editor',\n properties: [\n AXP_NAME_PROPERTY,\n AXP_DATA_PATH_PROPERTY,\n AXP_ALLOW_MULTIPLE_PROPERTY,\n AXP_DISABLED_PROPERTY,\n AXP_VALIDATION_PROPERTY,\n AXP_PLACEHOLDER_PROPERTY,\n AXP_HAS_CLEAR_BUTTON_PROPERTY,\n plainTextDefaultProperty(),\n //cloneProperty(AXP_TABLE_COLUMN_WIDTH_PROPERTY, { schema: { defaultValue: '200px' } }),\n ],\n components: {\n view: {\n component: () => import('./text-box-widget-view.component').then((c) => c.AXPTextBoxWidgetViewComponent),\n },\n edit: {\n component: () => import('./text-box-widget-edit.component').then((c) => c.AXPTextBoxWidgetEditComponent),\n },\n filter: {\n component: () => import('./text-box-widget-filter.component').then((c) => c.AXPTextBoxWidgetFilterComponent),\n },\n column: {\n component: () => import('./text-box-widget-column.component').then((c) => c.AXPTextBoxWidgetColumnComponent),\n },\n print: {\n component: () => import('./text-box-widget-print.component').then((c) => c.AXPTextBoxWidgetPrintComponent),\n },\n designer: {\n component: () => import('./text-box-widget-edit.component').then((c) => c.AXPTextBoxWidgetEditComponent),\n },\n },\n};\ndeclare module '@acorex/platform/layout/builder' {\n interface AXPWidgetTypesMap {\n text: 'text-editor';\n }\n}\n","import { AXBadgeModule } from '@acorex/components/badge';\nimport { AXDecoratorModule } from '@acorex/components/decorators';\nimport { AXPWidgetComponent } from '@acorex/platform/layout/builder';\nimport { CommonModule } from '@angular/common';\nimport { ChangeDetectionStrategy, Component, computed } from '@angular/core';\n\n@Component({\n selector: 'axp-switch-widget',\n template: `\n @if(getValue()){ \n @if(trulyText())\n {\n <ax-badge [text]=\"trulyText()\" [color]=\"negative() ? 'danger' : 'success'\" [look]=\"'twotone'\"></ax-badge>\n }\n @else { \n @if(negative())\n {\n <ax-icon class=\"fa-solid fa-check ax-text-sanger\"> </ax-icon>\n }\n @else \n {\n <ax-icon class=\"fa-solid fa-check ax-text-success\"> </ax-icon>\n } \n } \n }@else \n { \n @if(falsyText())\n {\n <ax-badge [text]=\"falsyText()\" [color]=\"negative() ? 'success' : 'danger'\" [look]=\"'twotone'\"></ax-badge>\n }\n @else \n { \n @if(negative())\n {\n <ax-icon class=\"fa-solid fa-xmark ax-text-success\"> </ax-icon>\n }@else \n {\n <ax-icon class=\"fa-solid fa-xmark ax-text-danger\"> </ax-icon>\n } \n } \n }`,\n standalone: true,\n changeDetection: ChangeDetectionStrategy.OnPush,\n imports: [CommonModule, AXDecoratorModule, AXBadgeModule],\n})\nexport class AXPToggleWidgetViewComponent extends AXPWidgetComponent<any> {\n protected negative = computed<boolean>(() => this.options()['negative']);\n protected falsyText = computed<string>(() => this.options()['falsyText']);\n protected trulyText = computed<string>(() => this.options()['trulyText']);\n}\n","import { AXStyleColorType } from '@acorex/components/common';\nimport { AXSwitchModule } from '@acorex/components/switch';\nimport { AXPWidgetComponent } from '@acorex/platform/layout/builder';\nimport { CommonModule } from '@angular/common';\nimport { ChangeDetectionStrategy, Component, computed, HostBinding } from '@angular/core';\nimport { FormsModule } from '@angular/forms';\n\n@Component({\n selector: 'axp-switch-widget',\n template: `<ax-switch [ngModel]=\"this.getValue()\" [disabled]=\"disabled()\" [color]=\"color()\" (ngModelChange)=\"onModelChange($event)\"></ax-switch>`,\n standalone: true,\n changeDetection: ChangeDetectionStrategy.OnPush,\n imports: [CommonModule, FormsModule, AXSwitchModule],\n inputs: [],\n})\nexport class AXPToggleWidgetEditComponent extends AXPWidgetComponent<any> {\n protected disabled = computed<boolean>(() => this.options()['disabled']);\n protected color = computed<AXStyleColorType>(() => this.options()['color']?.id ?? 'primary');\n\n protected onModelChange(e: boolean) {\n this.setValue(e);\n }\n\n @HostBinding('class')\n private get __class(): string {\n const cls: any = {};\n //\n cls['ax-inline'] = true;\n return cls;\n }\n}\n","import { AXPWidgetComponent } from '@acorex/platform/layout/builder';\nimport { CommonModule } from '@angular/common';\nimport { ChangeDetectionStrategy, Component, inject } from '@angular/core';\nimport { FormsModule } from '@angular/forms';\n\n@Component({\n template: ``,\n standalone: true,\n changeDetection: ChangeDetectionStrategy.OnPush,\n imports: [CommonModule, FormsModule],\n inputs: []\n})\nexport class AXPToggleWidgetFilterComponent extends AXPWidgetComponent<any> { }","import { AXBadgeModule } from '@acorex/components/badge';\nimport { AXDecoratorModule } from '@acorex/components/decorators';\nimport { AXPColumnWidgetComponent } from '@acorex/platform/layout/builder';\nimport { CommonModule } from '@angular/common';\nimport { ChangeDetectionStrategy, Component } from '@angular/core';\n@Component({\n template: `@if(rawValue){ @if(trulyText){\n <ax-badge [text]=\"trulyText\" [color]=\"negative ? 'danger' : 'success'\" [look]=\"'twotone'\"></ax-badge>\n }@else { @if(negative){\n <ax-icon class=\"fa-solid fa-check ax-text-sanger\"> </ax-icon>\n }@else {\n <ax-icon class=\"fa-solid fa-check ax-text-success\"> </ax-icon>\n } } }@else { @if(falsyText){\n <ax-badge [text]=\"falsyText\" [color]=\"negative ? 'success' : 'danger'\" [look]=\"'twotone'\"></ax-badge>\n }@else { @if(negative){\n <ax-icon class=\"fa-solid fa-xmark ax-text-success\"> </ax-icon>\n }@else {\n <ax-icon class=\"fa-solid fa-xmark ax-text-danger\"> </ax-icon>\n } } }`,\n\n standalone: true,\n changeDetection: ChangeDetectionStrategy.OnPush,\n imports: [CommonModule, AXDecoratorModule, AXBadgeModule],\n inputs: ['rawValue'],\n})\nexport class AXPToggleWidgetColumnComponent extends AXPColumnWidgetComponent<any> {\n protected negative = this.options[\"negative\"] as boolean;\n protected trulyText = this.options[\"trulyText\"] as string;\n protected falsyText = this.options[\"falsyText\"] as string;\n}\n","import { AXPWidgetComponent } from '@acorex/platform/layout/builder';\nimport { CommonModule } from '@angular/common';\nimport { ChangeDetectionStrategy, Component, inject } from '@angular/core';\n@Component({\n selector: 'axp-swith-widget',\n template: ``,\n standalone: true,\n changeDetection: ChangeDetectionStrategy.OnPush,\n imports: [CommonModule],\n inputs: []\n})\nexport class AXPToggleWidgetPrintComponent extends AXPWidgetComponent<any> { }","import { AXPWidgetConfig, AXP_WIDGETS_EDITOR_GROUP } from '@acorex/platform/layout/builder';\nimport {\n AXP_DATA_PATH_PROPERTY,\n AXP_DISABLED_PROPERTY,\n AXP_FALSY_TEXT_PROPERTY,\n AXP_STYLE_COLOR_PROPERTY,\n AXP_TRULY_TEXT_PROPERTY,\n AXP_VALIDATION_PROPERTY,\n booleanDefaultProperty,\n} from '../../../properties';\nimport { AXP_NAME_PROPERTY } from '../../../properties/general.props';\nexport const AXPToggleWidget: AXPWidgetConfig = {\n name: 'toggle-editor',\n title: 'Toggle',\n description: 'Switches between on/off states',\n icon: 'fa-solid fa-toggle-on',\n group: AXP_WIDGETS_EDITOR_GROUP,\n type: 'editor',\n properties: [\n AXP_NAME_PROPERTY,\n AXP_DATA_PATH_PROPERTY,\n AXP_DISABLED_PROPERTY,\n AXP_STYLE_COLOR_PROPERTY,\n AXP_VALIDATION_PROPERTY,\n AXP_FALSY_TEXT_PROPERTY,\n AXP_TRULY_TEXT_PROPERTY,\n booleanDefaultProperty(),\n ],\n components: {\n view: {\n component: () => import('./toggle-widget-view.component').then((c) => c.AXPToggleWidgetViewComponent),\n },\n edit: {\n component: () => import('./toggle-widget-edit.component').then((c) => c.AXPToggleWidgetEditComponent),\n },\n filter: {\n component: () => import('./toggle-widget-filter.component').then((c) => c.AXPToggleWidgetFilterComponent),\n },\n column: {\n component: () => import('./toggle-widget-column.component').then((c) => c.AXPToggleWidgetColumnComponent),\n },\n print: {\n component: () => import('./toggle-widget-print.component').then((c) => c.AXPToggleWidgetPrintComponent),\n },\n designer: {\n component: () => import('./toggle-widget-edit.component').then((c) => c.AXPToggleWidgetEditComponent),\n },\n },\n};\n\ndeclare module '@acorex/platform/layout/builder' {\n interface AXPWidgetTypesMap {\n toggle: 'toggle-editor';\n }\n}\n","import { AXPWidgetComponent } from '@acorex/platform/layout/builder';\nimport { CommonModule } from '@angular/common';\nimport { ChangeDetectionStrategy, Component, inject } from '@angular/core';\n@Component({\n template: ``,\n standalone: true,\n changeDetection: ChangeDetectionStrategy.OnPush,\n imports: [CommonModule],\n inputs: ['rawValue']\n})\nexport class AXPFileBoxWidgetColumnComponent extends AXPWidgetComponent<any> { }","import { AXUploadRequest } from '@acorex/components/uploader';\nimport { Observable } from 'rxjs';\n\nexport abstract class AXPFileManagementService {\n abstract upload(requests: AXUploadRequest[], metaData?: any): Promise<PromiseSettledResult<{ result: unknown; status: string }>[]>;\n abstract delete(fileId: string): Promise<any>;\n abstract get(fileId: string, name: string): Observable<any>;\n abstract list(): Promise<any>;\n abstract setMetadata(fileId: string, metadata: any): Promise<any>;\n}\n","import { AXButtonModule } from '@acorex/components/button';\nimport { AXDecoratorModule } from '@acorex/components/decorators';\nimport { AXUploaderChangedEvent, AXUploaderFileCompleteEvent, AXUploaderFilesCompleteEvent, AXUploaderModule } from '@acorex/components/uploader';\nimport { AXPWidgetComponent } from '@acorex/platform/layout/builder';\nimport { CommonModule } from '@angular/common';\nimport { ChangeDetectionStrategy, Component, HostBinding, Signal, computed, inject } from '@angular/core';\nimport { FormsModule } from '@angular/forms';\nimport { AXPFileManagementService } from './file-box-widget.service';\n\n@Component({\n template: `\n <div class=\"ax-grid ax-grid-cols-12 ax-gap-4\">\n <div class=\"ax-col-span-12\">\n <ax-uploader-drop-zone\n axUploaderZone\n (onChanged)=\"handleChanged($event)\"\n [multiple]=\"multiple()\"\n [accept]=\"accept()\"\n [description]=\"description()\"\n (onFileUploadComplete)=\"handleOnFileUploadComplete($event)\"\n (onFilesUploadComplete)=\"handleOnFilesUploadComplete($event)\"\n ></ax-uploader-drop-zone>\n </div>\n </div>\n `,\n standalone: true,\n changeDetection: ChangeDetectionStrategy.OnPush,\n imports: [CommonModule, FormsModule, AXButtonModule, AXDecoratorModule, AXUploaderModule],\n inputs: [],\n})\nexport class AXPFileBoxWidgetEditComponent extends AXPWidgetComponent<any> {\n private fileService = inject(AXPFileManagementService);\n protected multiple = computed<boolean>(() => this.options()['multiple'] as boolean);\n protected accept = computed<string>(() => this.options()['accept'] as string);\n protected description = computed<string>(() => this.options()['description'] as string);\n protected metaData = computed<string>(() => this.options()['metaData'] as any);\n\n protected internalValue: Signal<{ value?: string | null; label?: string | undefined }[]> = computed(() =>\n this.getValue() ? (Array.isArray(this.getValue()) ? this.getValue() : [this.getValue()]) : [{}]\n );\n\n handleOnFileUploadComplete(e: AXUploaderFileCompleteEvent) {\n console.log(e);\n }\n\n handleOnFilesUploadComplete(e: AXUploaderFilesCompleteEvent) {\n console.log(e);\n }\n\n protected async handleChanged(e: AXUploaderChangedEvent) {\n const results = await this.fileService.upload(e.requests, this.metaData);\n const uploadedFilesResult = results.filter((r) => r.status === 'fulfilled');\n if (!this.multiple) this.setValue(uploadedFilesResult[0].value);\n else {\n this.setValue(uploadedFilesResult.map((r) => r.value));\n }\n }\n\n protected getFileInfo(fileName: string): { icon: string; color: string } {\n const extension = fileName?.split('.')?.pop()?.toLowerCase();\n\n switch (extension) {\n case 'txt':\n return { icon: 'fa-file-alt', color: 'ax-bg-blue-100 ax-text-blue-500' };\n\n case 'pdf':\n return { icon: 'fa-file-pdf', color: 'ax-bg-red-100 ax-text-red-500' };\n\n case 'doc':\n case 'docx':\n return { icon: 'fa-file-word', color: 'ax-bg-blue-200 ax-text-blue-600' };\n\n case 'xls':\n case 'xlsx':\n return { icon: 'fa-file-excel', color: 'ax-bg-green-100 ax-text-green-500' };\n\n case 'ppt':\n case 'pptx':\n return { icon: 'fa-file-powerpoint', color: 'ax-bg-orange-100 ax-text-orange-500' };\n\n case 'jpg':\n case 'jpeg':\n case 'png':\n case 'gif':\n case 'bmp':\n return { icon: 'fa-file-image', color: 'ax-bg-purple-100 ax-text-purple-500' };\n\n case 'zip':\n case 'rar':\n case '7z':\n return { icon: 'fa-file-archive', color: 'ax-bg-yellow-100 ax-text-yellow-500' };\n\n case 'mp3':\n case 'wav':\n case 'ogg':\n return { icon: 'fa-file-audio', color: 'ax-bg-pink-100 ax-text-pink-500' };\n\n case 'mp4':\n case 'avi':\n case 'mkv':\n case 'mov':\n return { icon: 'fa-file-video', color: 'ax-bg-blue-100 ax-text-blue-500' };\n\n case 'js':\n case 'jsx':\n case 'ts':\n case 'tsx':\n return { icon: 'fa-file-code', color: 'ax-bg-yellow-100 ax-text-yellow-500' };\n\n // Add more cases as needed for other file types\n\n default:\n return { icon: 'fa-file', color: 'ax-bg-gray-100 ax-text-gray-500' };\n }\n }\n\n\n @HostBinding('class')\n private get __class(): string {\n const cls: any = {};\n cls[`ax-block`] = true;\n cls[`ax-flex-1`] = true;\n return cls;\n }\n}\n","import { AXPWidgetComponent } from '@acorex/platform/layout/builder';\nimport { CommonModule } from '@angular/common';\nimport { ChangeDetectionStrategy, Component, inject } from '@angular/core';\nimport { FormsModule } from '@angular/forms';\n\n@Component({\n template: ``,\n standalone: true,\n changeDetection: ChangeDetectionStrategy.OnPush,\n imports: [CommonModule, FormsModule],\n inputs: []\n})\nexport class AXPFileBoxWidgetFilterComponent extends AXPWidgetComponent<any> { }","import { AXPWidgetComponent } from '@acorex/platform/layout/builder';\nimport { CommonModule } from '@angular/common';\nimport { ChangeDetectionStrategy, Component, inject } from '@angular/core';\n@Component({\n template: ``,\n standalone: true,\n changeDetection: ChangeDetectionStrategy.OnPush,\n imports: [CommonModule],\n inputs: []\n})\nexport class AXPFileBoxWidgetPrintComponent extends AXPWidgetComponent<any> { }","import { AXButtonModule } from '@acorex/components/button';\nimport { AXDecoratorModule } from '@acorex/components/decorators';\nimport { AXLoadingDialogService } from '@acorex/components/loading-dialog';\nimport { AXTranslationService } from '@acorex/core/translation';\nimport { AXPWidgetComponent } from '@acorex/platform/layout/builder';\nimport { CommonModule } from '@angular/common';\nimport { HttpErrorResponse } from '@angular/common/http';\nimport { ChangeDetectionStrategy, Component, Signal, computed, inject } from '@angular/core';\nimport { Subscription } from 'rxjs';\nimport { AXPFileManagementService } from './file-box-widget.service';\n\ninterface AXPFile {\n name: string;\n type: string;\n value: string;\n size: string;\n}\n\n@Component({\n template: `\n <div class=\"ax-grid ax-grid-cols-12 ax-gap-2\">\n @if(multiple()){ @for(item of internalValue();let first=$first;track item.name) {\n <ng-template [ngTemplateOutlet]=\"itemTemplate\" ] [ngTemplateOutletContext]=\"{ data: item }\" ]></ng-template>\n } }@else {\n <ng-template [ngTemplateOutlet]=\"itemTemplate\" ] [ngTemplateOutletContext]=\"{ data: internalValue()[0] }\" ]></ng-template>\n }\n <ng-template #itemTemplate let-item=\"data\">\n <div\n *ngIf=\"item\"\n class=\"ax-flex ax-items-center ax-justify-between ax-p-2 ax-border ax-rounded-lg ax-bg-surface ax-col-start-1 ax-col-end-13\"\n >\n <div class=\"ax-flex ax-items-center ax-gap-3\">\n <ng-container *ngIf=\"getFileInfo(item.name) as fileInfo\">\n <div class=\"ax-w-10 ax-h-10 ax-rounded-lg ax-flex ax-items-center ax-justify-center\" [ngClass]=\"[fileInfo.color]\">\n <i [ngClass]=\"['fa-solid', 'ax-text-xl', fileInfo.icon]\"></i>\n </div>\n </ng-container>\n <div>\n <div class=\"ax-leading-6\">{{ item.name }}</div>\n <p class=\"ax-text-sm ax-text-neutral-400\">{{ item.size }}</p>\n </div>\n </div>\n @if(downloadable()){\n <ax-button (onClick)=\"handleDownload(item)\" look=\"blank\" color=\"ghost\" class=\"!ax-text-neutral-400 hover:!ax-text-neutral-600\">\n <ax-icon>\n <i class=\"fa-solid fa-download\"></i>\n </ax-icon>\n </ax-button>\n }\n </div>\n </ng-template>\n </div>\n `,\n standalone: true,\n changeDetection: ChangeDetectionStrategy.OnPush,\n imports: [CommonModule, AXButtonModule, AXDecoratorModule],\n inputs: [],\n})\nexport class AXPFileBoxWidgetViewComponent extends AXPWidgetComponent<any> {\n private fileService = inject(AXPFileManagementService);\n private loadingDialog = inject(AXLoadingDialogService);\n private translateService = inject(AXTranslationService);\n\n protected multiple = computed<boolean>(() => this.options()['multiple'] as boolean);\n protected downloadable = computed<boolean>(() => this.options()['downloadable'] as boolean);\n\n protected internalValue: Signal<AXPFile[]> = computed(() => {\n return Array.isArray(this.getValue()) ? this.getValue().map((item: any) => this.extractItem(item)) : [this.extractItem(this.getValue())];\n });\n private downloadSubscription = new Subscription();\n\n protected handleDownload(item: AXPFile) {\n const d = this.loadingDialog.show({\n title: this.translateService.translateSync('downloader.dialog.downloading'), // Downloading File\n mode: 'determinate',\n progressColor: 'primary',\n progressValue: 0,\n text: this.translateService.translateSync('downloader.dialog.waiting'), // Waiting...\n buttons: [\n {\n text: this.translateService.translateSync('downloader.dialog.cancel'),\n color: 'danger',\n onClick: () => {\n this.cancelDownload();\n d.close();\n },\n },\n ],\n });\n\n this.downloadSubscription = this.fileService.get(item.value, item.name || 'download').subscribe(\n (event) => {\n d.setProgressText(event.status);\n d.setProgressStatus(`${event.progress}%`);\n d.setProgressValue(event.progress);\n if (event.progress === 100) {\n this.triggerDownload(event.data, item.name);\n setTimeout(() => {\n d.close();\n }, 1000);\n }\n },\n (error: HttpErrorResponse) => {\n d.setProgressText(error.statusText);\n d.setProgressStatus(this.translateService.translateSync('downloader.dialog.downloadFailed')); //Downloading Failed\n setTimeout(() => {\n d.close();\n }, 1000);\n }\n );\n }\n\n private cancelDownload() {\n this.downloadSubscription.unsubscribe();\n }\n\n private triggerDownload(blob: Blob, name: string) {\n const link = document.createElement('a');\n const url = URL.createObjectURL(blob);\n link.href = url;\n link.download = name || 'asset';\n document.body.appendChild(link);\n link.click();\n document.body.removeChild(link);\n URL.revokeObjectURL(url);\n }\n\n protected getFileInfo(fileName: string): { icon: string; color: string } {\n const extension = fileName.split('.').pop()?.toLowerCase();\n\n switch (extension) {\n case 'txt':\n return { icon: 'fa-file-alt', color: 'ax-bg-blue-100 ax-text-blue-500' };\n\n case 'pdf':\n return { icon: 'fa-file-pdf', color: 'ax-bg-red-100 ax-text-red-500' };\n\n case 'doc':\n case 'docx':\n return { icon: 'fa-file-word', color: 'ax-bg-blue-200 ax-text-blue-600' };\n\n case 'xls':\n case 'xlsx':\n return { icon: 'fa-file-excel', color: 'ax-bg-green-100 ax-text-green-500' };\n\n case 'ppt':\n case 'pptx':\n return { icon: 'fa-file-powerpoint', color: 'ax-bg-orange-100 ax-text-orange-500' };\n\n case 'jpg':\n case 'jpeg':\n case 'png':\n case 'gif':\n case 'bmp':\n return { icon: 'fa-file-image', color: 'ax-bg-purple-100 ax-text-purple-500' };\n\n case 'zip':\n case 'rar':\n case '7z':\n return { icon: 'fa-file-archive', color: 'ax-bg-yellow-100 ax-text-yellow-500' };\n\n case 'mp3':\n case 'wav':\n case 'ogg':\n return { icon: 'fa-file-audio', color: 'ax-bg-pink-100 ax-text-pink-500' };\n\n case 'mp4':\n case 'avi':\n case 'mkv':\n case 'mov':\n return { icon: 'fa-file-video', color: 'ax-bg-blue-100 ax-text-blue-500' };\n\n case 'js':\n case 'jsx':\n case 'ts':\n case 'tsx':\n return { icon: 'fa-file-code', color: 'ax-bg-yellow-100 ax-text-yellow-500' };\n\n // Add more cases as needed for other file types\n\n default:\n return { icon: 'fa-file', color: 'ax-bg-gray-100 ax-text-gray-500' };\n }\n }\n\n private extractItem(item: any): AXPFile {\n return typeof item == 'object'\n ? {\n name: item.name,\n type: item.type ?? 'Unknown',\n value: item.value,\n size: item.size || '-',\n }\n : {\n name: item || '',\n type: 'Unknown',\n value: item || '',\n size: '-',\n };\n }\n}\n","import { AXP_WIDGETS_ADVANCE_GROUP, AXPWidgetConfig, AXPWidgetsCatalog } from '@acorex/platform/layout/builder';\nimport {\n AXP_ALLOW_MULTIPLE_PROPERTY,\n AXP_BEHAVIOR_PROPERTY_GROUP,\n AXP_DESCRIPTION_PROPERTY,\n AXP_DOWNLOADABLE_PROPERTY,\n AXP_VALIDATION_PROPERTY,\n} from '../../../properties';\nimport { AXP_NAME_PROPERTY } from '../../../properties/general.props';\n\nexport const AXPFileBoxWidget: AXPWidgetConfig = {\n name: 'file',\n title: 'File',\n description: 'Uploads and manages files',\n icon: 'fa-solid fa-files',\n group: AXP_WIDGETS_ADVANCE_GROUP,\n type: 'editor',\n properties: [\n AXP_NAME_PROPERTY,\n AXP_VALIDATION_PROPERTY,\n AXP_ALLOW_MULTIPLE_PROPERTY,\n AXP_DOWNLOADABLE_PROPERTY,\n AXP_DESCRIPTION_PROPERTY,\n {\n name: 'accept',\n title: 'Accept',\n group: AXP_BEHAVIOR_PROPERTY_GROUP,\n schema: {\n dataType: 'string',\n interface: {\n name: 'accept',\n path: 'options.accept',\n type: AXPWidgetsCatalog.text,\n },\n },\n visible: true,\n },\n ],\n components: {\n view: {\n component: () => import('./file-box-widget-view.component').then((c) => c.AXPFileBoxWidgetViewComponent),\n },\n edit: {\n component: () => import('./file-box-widget-edit.component').then((c) => c.AXPFileBoxWidgetEditComponent),\n },\n filter: {\n component: () => import('./file-box-widget-filter.component').then((c) => c.AXPFileBoxWidgetFilterComponent),\n },\n column: {\n component: () => import('./file-box-widget-column.component').then((c) => c.AXPFileBoxWidgetColumnComponent),\n },\n print: {\n component: () => import('./file-box-widget-print.component').then((c) => c.AXPFileBoxWidgetPrintComponent),\n },\n designer: {\n component: () => import('./file-box-widget-edit.component').then((c) => c.AXPFileBoxWidgetEditComponent),\n },\n },\n};\n\ndeclare module '@acorex/platform/layout/builder' {\n interface AXPWidgetTypesMap {\n file: 'file';\n }\n}\n","import { AXDecoratorModule } from '@acorex/components/decorators';\nimport { AXImageModule } from '@acorex/components/image';\nimport { AXLoadingModule } from '@acorex/components/loading';\nimport { AXPWidgetComponent } from '@acorex/platform/layout/builder';\nimport { CommonModule } from '@angular/common';\nimport { ChangeDetectionStrategy, Component, Signal, WritableSignal, computed, signal } from '@angular/core';\nimport { AXPMediaInfo, AXPMediaItem } from './gallery-widget-types';\n\n@Component({\n template: `\n <div class=\"ax-grid ax-grid-cols-12 ax-gap-2\">\n @if(internalValue().length){\n <div class=\"ax-flex ax-items-center ax-justify-between ax-rounded-lg ax-col-start-1 ax-col-end-13\">\n <div class=\"ax-flex ax-items-center md:ax-justify-start ax-justify-center ax-w-full ax-gap-3\">\n <div class=\"ax-flex ax-flex-col ax-items-center ax-gap-4\">\n @switch (getMediaInfo(activeMedia()?.name||'').format) { @case ('video') {\n <video class=\"ax-rounded-lg ax-h-48 md:ax-h-72 ax-w-auto ax-shadow-md\" controls [src]=\"activeMedia()?.url\"></video>\n } @case ('image') {\n <ax-image class=\"ax-rounded-lg ax-h-48 md:ax-h-72 ax-w-auto\" [src]=\"activeMedia()?.url\">\n <ax-loading></ax-loading>\n <ax-placeholder>\n <div class=\"ax-w-96 ax-h-72 ax-gap-4 ax-flex ax-flex-col ax-items-center ax-justify-center ax-border ax-rounded-lg\">\n <ax-icon class=\"fa-solid fa-circle-exclamation ax-text-3xl\"> </ax-icon>\n <span>Connection Error!</span>\n </div>\n </ax-placeholder>\n </ax-image>\n } @case ('audio') {\n <audio controls class=\"ax-rounded-lg\">\n <source [src]=\"activeMedia()?.url\" type=\"audio/mp3\" />\n </audio>\n } }\n <div class=\"ax-flex ax-gap-4 ax-overflow-x-auto ax-max-w-[320px] lg:ax-max-w-[480px] ax-pb-2\">\n @for (media of thumbnails(); track $index) {\n <div\n *ngIf=\"getMediaInfo(media.name) as mediaInfo\"\n class=\"hover:ax-opacity-75 ax-transition-all ax-relative ax-cursor-pointer ax-flex ax-justify-center ax-items-center\"\n (click)=\"changeMediaSelected(media)\"\n >\n <ax-image\n class=\"ax-w-16 ax-brightness-50 ax-h-16 ax-rounded-lg ax-shadow-md ax-filter\"\n [src]=\"mediaInfo.format == 'image' ? media.url : media.posterUrl\"\n ></ax-image>\n <div class=\"ax-absolute ax-text-neutral-300 ax-text-xl\">\n <ax-icon [class]=\"mediaInfo.icon\"> </ax-icon>\n </div>\n </div>\n }\n </div>\n </div>\n </div>\n </div>\n } @else {\n <!-- ask for empty state: -->\n <small>No Media!</small>\n }\n </div>\n `,\n standalone: true,\n changeDetection: ChangeDetectionStrategy.OnPush,\n imports: [CommonModule, AXImageModule, AXDecoratorModule, AXLoadingModule],\n inputs: [],\n})\nexport class AXPGalleryWidgetViewComponent extends AXPWidgetComponent<any> {\n protected internalValue = computed(() => {\n const parsedValue = this.getValue() ? JSON.parse(this.getValue()) : [];\n return Array.isArray(parsedValue) ? parsedValue.map((c) => c) : [parsedValue];\n });\n protected multiple = computed<boolean>(() => this.options()['multiple'] as boolean);\n\n protected thumbnails: Signal<AXPMediaItem[]> = computed(() => this.internalValue().filter((i) => i.id !== this.activeMedia()?.id));\n protected activeMedia: WritableSignal<AXPMediaItem | undefined> = signal(undefined);\n\n ngAfterViewInit(): void {\n this.activeMedia.set(this.internalValue()[0]);\n }\n\n changeMediaSelected(media: AXPMediaItem) {\n this.activeMedia.set(media);\n }\n\n protected getMediaInfo(mediaName: string): AXPMediaInfo {\n const extension = mediaName.split('.').pop()?.toLowerCase();\n\n switch (extension) {\n case 'jpg':\n case 'jpeg':\n case 'png':\n case 'gif':\n case 'bmp':\n return { icon: '', format: 'image' };\n\n case 'mp4':\n case 'avi':\n case 'mkv':\n case 'mov':\n return { icon: 'fa-regular fa-play', format: 'video' };\n\n case 'mp3':\n case 'wav':\n case 'ogg':\n return { icon: 'fa-regular fa-volume-high', format: 'audio' };\n\n default:\n return { icon: '', format: 'image' };\n }\n }\n}\n","import { AXDecoratorModule } from '@acorex/components/decorators';\nimport { AXImageModule } from '@acorex/components/image';\nimport { AXLoadingModule } from '@acorex/components/loading';\nimport { AXUploaderModule } from '@acorex/components/uploader';\nimport { AXPWidgetComponent } from '@acorex/platform/layout/builder';\nimport { CommonModule } from '@angular/common';\nimport { ChangeDetectionStrategy, Component, HostBinding, Signal, WritableSignal, computed, signal } from '@angular/core';\nimport { FormsModule } from '@angular/forms';\nimport { AXPMediaInfo, AXPMediaItem } from './gallery-widget-types';\n\n@Component({\n template: `\n <div class=\"ax-grid ax-grid-cols-12 ax-gap-2\">\n @if(internalValue().length){\n <div class=\"ax-col-start-1 ax-col-end-13 ax-flex ax-items-center lg:ax-justify-start ax-justify-center \">\n <div class=\"ax-flex ax-flex-col ax-items-center ax-gap-4 ax-w-full\">\n @switch (getMediaInfo(activeMedia()?.name||'').format) { @case ('video') {\n <video class=\"ax-rounded-lg ax-h-48 md:ax-h-72 ax-w-auto ax-shadow-md\" controls [src]=\"activeMedia()?.url\"></video>\n } @case ('image') {\n <ax-image class=\"ax-rounded-lg ax-h-48 md:ax-h-72 ax-w-auto\" [src]=\"activeMedia()?.url\">\n <ax-loading></ax-loading>\n <ax-placeholder>\n <div class=\"ax-w-96 ax-h-72 ax-gap-4 ax-flex ax-flex-col ax-items-center ax-justify-center ax-border ax-rounded-lg\">\n <ax-icon class=\"fa-solid fa-circle-exclamation ax-text-3xl\"> </ax-icon>\n <span>Connection Error!</span>\n </div>\n </ax-placeholder>\n </ax-image>\n } @case ('audio') {\n <audio controls class=\"ax-rounded-lg\">\n <source [src]=\"activeMedia()?.url\" type=\"audio/mp3\" />\n </audio>\n } }\n <div class=\"ax-flex ax-gap-4 ax-overflow-x-auto ax-max-w-[320px] lg:ax-max-w-[480px] ax-pb-2\">\n @for (media of thumbnails(); track $index) {\n <div\n *ngIf=\"getMediaInfo(media.name) as mediaInfo\"\n class=\"hover:ax-opacity-75 ax-transition-all ax-relative ax-cursor-pointer ax-flex ax-justify-center ax-items-center\"\n (click)=\"changeMediaSelected(media)\"\n >\n <ax-image\n class=\"ax-w-16 ax-brightness-50 ax-h-16 ax-rounded-lg ax-shadow-md ax-filter\"\n [src]=\"mediaInfo.format == 'image' ? media.url : media.posterUrl\"\n ></ax-image>\n <div class=\"ax-absolute ax-text-neutral-300 ax-text-xl\">\n <ax-icon [class]=\"mediaInfo.icon\"> </ax-icon>\n </div>\n </div>\n }\n <div axUploaderZone>\n <div axUploaderBrowseHandle class=\"ax-flex ax-justify-center ax-items-center ax-w-16 ax-h-16 ax-border ax-rounded-lg ax-cursor-pointer\">\n <ax-icon class=\"fa-solid fa-plus ax-text-neutral-500\"> </ax-icon>\n </div>\n </div>\n </div>\n </div>\n </div>\n } @else {\n <div class=\" ax-col-start-1 ax-col-end-13\">\n <ax-uploader-drop-zone></ax-uploader-drop-zone>\n </div>\n\n }\n </div>\n `,\n standalone: true,\n changeDetection: ChangeDetectionStrategy.OnPush,\n imports: [CommonModule, FormsModule, AXImageModule, AXDecoratorModule, AXLoadingModule, AXUploaderModule],\n inputs: [],\n})\nexport class AXPGalleryWidgetEditComponent extends AXPWidgetComponent<any> {\n protected internalValue = computed(() => {\n const parsedValue = this.getValue() ? JSON.parse(this.getValue()) : [];\n return Array.isArray(parsedValue) ? parsedValue.map((c) => c) : [parsedValue];\n });\n\n protected activeMedia: WritableSignal<AXPMediaItem | null> = signal(null);\n protected thumbnails: Signal<AXPMediaItem[]> = computed(() => this.internalValue().filter((i) => i.id !== this.activeMedia()?.id));\n\n protected multiple = computed<boolean>(() => this.options()['multiple'] as boolean);\n\n changeMediaSelected(media: AXPMediaItem) {\n this.activeMedia.set(media);\n }\n\n ngAfterViewInit(): void {\n this.activeMedia.set(this.internalValue()[0]);\n }\n\n protected getMediaInfo(mediaName: string): AXPMediaInfo {\n const extension = mediaName.split('.').pop()?.toLowerCase();\n\n switch (extension) {\n case 'jpg':\n case 'jpeg':\n case 'png':\n case 'gif':\n case 'bmp':\n return { icon: '', format: 'image' };\n\n case 'mp4':\n case 'avi':\n case 'mkv':\n case 'mov':\n return { icon: 'fa-regular fa-play', format: 'video' };\n\n case 'mp3':\n case 'wav':\n case 'ogg':\n return { icon: 'fa-regular fa-volume-high', format: 'audio' };\n\n default:\n return { icon: '', format: 'image' };\n }\n }\n\n\n @HostBinding('class')\n private get __class(): string {\n const cls: any = {};\n cls[`ax-block`] = true;\n cls[`ax-flex-1`] = true;\n return cls;\n }\n}\n","import { AXPWidgetComponent } from '@acorex/platform/layout/builder';\nimport { CommonModule } from '@angular/common';\nimport { ChangeDetectionStrategy, Component, inject } from '@angular/core';\nimport { FormsModule } from '@angular/forms';\n\n@Component({\n template: ``,\n standalone: true,\n changeDetection: ChangeDetectionStrategy.OnPush,\n imports: [CommonModule, FormsModule],\n inputs: []\n})\nexport class AXPGalleryWidgetFilterComponent extends AXPWidgetComponent<any> { }","import { AXPWidgetComponent } from '@acorex/platform/layout/builder';\nimport { CommonModule } from '@angular/common';\nimport { ChangeDetectionStrategy, Component, inject } from '@angular/core';\n@Component({\n template: ``,\n standalone: true,\n changeDetection: ChangeDetectionStrategy.OnPush,\n imports: [CommonModule],\n inputs: ['rawValue']\n})\nexport class AXPGalleryWidgetColumnComponent extends AXPWidgetComponent<any> { }","import { AXPWidgetComponent } from '@acorex/platform/layout/builder';\nimport { CommonModule } from '@angular/common';\nimport { ChangeDetectionStrategy, Component, inject } from '@angular/core';\n@Component({\n template: ``,\n standalone: true,\n changeDetection: ChangeDetectionStrategy.OnPush,\n imports: [CommonModule],\n inputs: []\n})\nexport class AXPGalleryWidgetPrintComponent extends AXPWidgetComponent<any> { }","import { AXPWidgetConfig, AXP_WIDGETS_ADVANCE_GROUP } from '@acorex/platform/layout/builder';\nexport const AXPGalleryWidget: AXPWidgetConfig = {\n name: 'gallery',\n title: 'Media Gallery',\n description: 'Shows and edits image galleries',\n icon: 'fa-solid fa-images',\n group: AXP_WIDGETS_ADVANCE_GROUP,\n type: 'editor',\n components: {\n view: {\n component: () => import('./gallery-widget-view.component').then((c) => c.AXPGalleryWidgetViewComponent),\n },\n edit: {\n component: () => import('./gallery-widget-edit.component').then((c) => c.AXPGalleryWidgetEditComponent),\n },\n filter: {\n component: () => import('./gallery-widget-filter.component').then((c) => c.AXPGalleryWidgetFilterComponent),\n },\n column: {\n component: () => import('./gallery-widget-column.component').then((c) => c.AXPGalleryWidgetColumnComponent),\n },\n print: {\n component: () => import('./gallery-widget-print.component').then((c) => c.AXPGalleryWidgetPrintComponent),\n },\n designer: {\n component: () => import('./gallery-widget-edit.component').then((c) => c.AXPGalleryWidgetEditComponent),\n },\n },\n};\n\ndeclare module '@acorex/platform/layout/builder' {\n interface AXPWidgetTypesMap {\n gallery: 'gallery';\n }\n}\n","import { AXMapLocation, AXMapModule } from '@acorex/components/map';\nimport { AXPWidgetComponent } from '@acorex/platform/layout/builder';\nimport { CommonModule } from '@angular/common';\nimport { ChangeDetectionStrategy, Component, computed, ViewEncapsulation } from '@angular/core';\n\n@Component({\n template: `<div [style.height.px]=\"height()\" class=\"ax-w-full\">\n <ax-map\n [hasDraw]=\"false\"\n [markers]=\"markers()\"\n [zoomLevel]=\"zoomLevel()\"\n [latitude]=\"initialLocation().latitude\"\n [longitude]=\"initialLocation().longitude\"\n ></ax-map>\n </div>`,\n standalone: true,\n changeDetection: ChangeDetectionStrategy.OnPush,\n imports: [CommonModule, AXMapModule],\n inputs: [],\n encapsulation: ViewEncapsulation.None,\n})\nexport class AXPMapBoxWidgetViewComponent extends AXPWidgetComponent<AXMapLocation[]> {\n markers = computed(() => this.getValue());\n height = computed<number>(() => this.options()['height'] ?? 300);\n zoomLevel = computed<number>(() => this.options()['zoomLevel'] ?? 13);\n initialLocation = computed<AXMapLocation>(\n () => this.options()['initialLocation'] ?? { latitude: 51.505, longitude: -0.09 },\n {\n equal: (a: AXMapLocation, b: AXMapLocation) => {\n if (a.latitude === b.latitude && a.longitude === b.longitude) return true;\n else return false;\n },\n }\n );\n}\n","import { AXMapLocation, AXMapModule } from '@acorex/components/map';\nimport { AXPWidgetComponent } from '@acorex/platform/layout/builder';\nimport {\n ChangeDetectionStrategy,\n ChangeDetectorRef,\n Component,\n computed,\n HostBinding,\n inject,\n ViewEncapsulation,\n} from '@angular/core';\n\n@Component({\n template: ` <div [style.height.px]=\"height()\" class=\"ax-w-full\">\n <ax-map\n class=\"ax-h-full\"\n (onMarkerChanged)=\"onMarkerChanged($event)\"\n [hasLocator]=\"hasLocate()\"\n [hasDraw]=\"hasDraw()\"\n [latitude]=\"initialLocation().latitude\"\n [longitude]=\"initialLocation().longitude\"\n [zoomLevel]=\"zoomLevel()\"\n [maxMarker]=\"maxMarker()\"\n >\n </ax-map>\n </div>`,\n standalone: true,\n changeDetection: ChangeDetectionStrategy.OnPush,\n imports: [AXMapModule],\n encapsulation: ViewEncapsulation.None,\n})\nexport class AXPMapBoxWidgetEditComponent extends AXPWidgetComponent<AXMapLocation[]> {\n cdr = inject(ChangeDetectorRef);\n\n markers = computed(() => this.getValue() ?? []);\n hasDraw = computed<boolean>(() => this.options()['hasDraw'] ?? false);\n hasLocate = computed<boolean>(() => this.options()['hasLocate'] ?? false);\n maxMarker = computed<number>(() => this.options()['maxMarker'] ?? 1);\n zoomLevel = computed<number>(() => this.options()['zoomLevel'] ?? 13);\n height = computed<number>(() => {\n this.cdr.markForCheck();\n return this.options()['height'] ?? 300;\n });\n\n initialLocation = computed<AXMapLocation>(\n () => this.options()['initialLocation'] ?? { latitude: 51.505, longitude: -0.09 },\n {\n equal: (a: AXMapLocation, b: AXMapLocation) => {\n if (a.latitude === b.latitude && a.longitude === b.longitude) return true;\n else return false;\n },\n }\n );\n\n onMarkerChanged(event: AXMapLocation[]) {\n this.setValue(event);\n }\n\n @HostBinding('class')\n private get __class(): string {\n const cls: any = {};\n cls[`ax-block`] = true;\n cls[`ax-flex-1`] = true;\n return cls;\n }\n}\n","import { AXPWidgetConfig, AXPWidgetsCatalog, AXP_WIDGETS_ADVANCE_GROUP } from '@acorex/platform/layout/builder';\nimport { AXP_DATA_PATH_PROPERTY, AXP_DATA_PROPERTY_GROUP, AXP_STYLING_PROPERTY_GROUP } from '../../../properties';\nimport { AXP_NAME_PROPERTY } from '../../../properties/general.props';\n\nexport const AXPMapBoxWidget: AXPWidgetConfig = {\n name: 'map',\n title: 'Map',\n description: 'Displays and interacts with maps',\n icon: 'fa-solid fa-map-location',\n group: AXP_WIDGETS_ADVANCE_GROUP,\n type: 'editor',\n properties: [\n AXP_NAME_PROPERTY,\n AXP_DATA_PATH_PROPERTY,\n {\n name: 'height',\n title: 'Height',\n group: AXP_STYLING_PROPERTY_GROUP,\n schema: {\n defaultValue: 300,\n dataType: 'number',\n interface: {\n name: 'height',\n path: 'options.height',\n type: AXPWidgetsCatalog.number,\n options: {\n minValue: 0,\n maxValue: 500,\n hasClearButton: false,\n },\n },\n },\n visible: true,\n },\n {\n name: 'maxMarker',\n title: 'Max Marker',\n group: AXP_DATA_PROPERTY_GROUP,\n schema: {\n defaultValue: 1,\n dataType: 'number',\n interface: {\n name: 'maxMarker',\n path: 'options.maxMarker',\n type: AXPWidgetsCatalog.number,\n options: {\n minValue: 0,\n maxValue: 100,\n hasClearButton: false,\n },\n },\n },\n visible: true,\n },\n {\n name: 'zoomLevel',\n title: 'Zoom Level',\n group: AXP_DATA_PROPERTY_GROUP,\n schema: {\n defaultValue: 13,\n dataType: 'number',\n interface: {\n name: 'zoomLevel',\n path: 'options.zoomLevel',\n type: AXPWidgetsCatalog.number,\n options: {\n minValue: 1,\n maxValue: 20,\n hasClearButton: false,\n },\n },\n },\n visible: true,\n },\n {\n name: 'hasLocate',\n title: 'Has Locate',\n group: AXP_DATA_PROPERTY_GROUP,\n schema: {\n dataType: 'boolean',\n defaultValue: false,\n interface: {\n name: 'hasLocate',\n path: 'options.hasLocate',\n type: AXPWidgetsCatalog.toggle,\n },\n },\n visible: true,\n },\n {\n name: 'hasDraw',\n title: 'Has Draw',\n group: AXP_DATA_PROPERTY_GROUP,\n schema: {\n dataType: 'boolean',\n defaultValue: false,\n interface: {\n name: 'hasDraw',\n path: 'options.hasDraw',\n type: AXPWidgetsCatalog.toggle,\n },\n },\n visible: true,\n },\n ],\n components: {\n view: {\n component: () => import('./map-box-widget-view.component').then((c) => c.AXPMapBoxWidgetViewComponent),\n },\n edit: {\n component: () => import('./map-box-widget-edit.component').then((c) => c.AXPMapBoxWidgetEditComponent),\n },\n print: {\n component: () => import('./map-box-widget-view.component').then((c) => c.AXPMapBoxWidgetViewComponent),\n },\n designer: {\n component: () => import('./map-box-widget-edit.component').then((c) => c.AXPMapBoxWidgetEditComponent),\n },\n },\n};\n\ndeclare module '@acorex/platform/layout/builder' {\n interface AXPWidgetTypesMap {\n map: 'map';\n }\n}\n","import { AXPWidgetComponent } from '@acorex/platform/layout/builder';\nimport { CommonModule } from '@angular/common';\nimport { ChangeDetectionStrategy, Component, inject } from '@angular/core';\n@Component({\n template: ``,\n standalone: true,\n changeDetection: ChangeDetectionStrategy.OnPush,\n imports: [CommonModule],\n inputs: ['rawValue']\n})\nexport class AXPSignatureWidgetColumnComponent extends AXPWidgetComponent<any> { }","import { AXButtonModule } from '@acorex/components/button';\nimport { AXDecoratorModule } from '@acorex/components/decorators';\nimport { AXImageModule } from '@acorex/components/image';\nimport { AXPlatform } from '@acorex/core/platform';\nimport { AXPWidgetComponent } from '@acorex/platform/layout/builder';\nimport { CommonModule } from '@angular/common';\nimport { ChangeDetectionStrategy, Component, ElementRef, HostBinding, ViewChild, WritableSignal, computed, effect, inject, signal } from '@angular/core';\nimport SignaturePad from 'signature_pad';\n\n@Component({\n selector: 'axp-signature-widget',\n template: `\n <div class=\"ax-flex ax-gap-3\">\n @if(editMode() ){\n <canvas width=\"300\" class=\"ax-border ax-rounded-md\" #padCanvas></canvas>\n <div class=\"ax-flex ax-flex-col ax-col-span-1 ax-gap-3\">\n <ax-button class=\"ax-sm\" (onClick)=\"downloadSVG()\" look=\"outline\" color=\"primary\" [disabled]=\"disabled()\">\n <ax-icon class=\"fas fa-download\"></ax-icon>\n </ax-button>\n <ax-button class=\"ax-sm\" (onClick)=\"undo()\" look=\"outline\" color=\"primary\" [disabled]=\"disabled()\">\n <ax-icon class=\"fas fa-rotate-left\"></ax-icon>\n </ax-button>\n <ax-button class=\"ax-sm\" (onClick)=\"clear()\" look=\"outline\" color=\"danger\" [disabled]=\"disabled()\">\n <ax-icon class=\"fas fa-trash ax-text-danger\"></ax-icon>\n </ax-button>\n </div>\n }@else{\n <div class=\"ax-border ax-rounded\">\n <ax-image [src]=\"this.getValue()\">\n <ax-overlay class=\"ax-flex ax-justify-center\">\n <ax-button look=\"twotone\" color=\"primary\" (onClick)=\"switchEditMode()\" [disabled]=\"disabled()\">\n <ax-icon class=\"far fa-edit\"> </ax-icon>\n </ax-button>\n </ax-overlay>\n </ax-image>\n </div>\n }\n </div>\n `,\n standalone: true,\n changeDetection: ChangeDetectionStrategy.OnPush,\n imports: [CommonModule, AXButtonModule, AXDecoratorModule, AXImageModule],\n\n})\nexport class AXPSignatureWidgetEditComponent extends AXPWidgetComponent<any> {\n\n //TODO: Apply diabled\n protected disabled = computed<boolean>(() => this.options()[\"disabled\"] as boolean);\n protected placeholder = computed<string>(() => (this.options()[\"placeholder\"] as string));\n\n @ViewChild('padCanvas') padCanvas!: ElementRef<HTMLCanvasElement>;\n protected signaturePad!: SignaturePad;\n protected editMode: WritableSignal<boolean> = signal(false);\n protected platform = inject(AXPlatform);\n\n override async ngOnInit() {\n super.ngOnInit();\n this.editMode.set(this.getValue() ? false : true);\n }\n\n private changeModeEffect = effect(() => {\n if (this.editMode()) {\n setTimeout(() => {\n this.initPad();\n }, 100);\n }\n });\n\n async initPad() {\n const pad = await import('signature_pad');\n this.signaturePad = new pad.default(this.padCanvas.nativeElement, {});\n this.signaturePad.addEventListener('afterUpdateStroke', () => {\n if (window) {\n //fix canvas ViewBox issue on mobile devices\n const prevDPR = window.devicePixelRatio;\n if (this.platform.is('SM')) {\n window.devicePixelRatio = 1;\n }\n this.setValue(this.getDataURL());\n window.devicePixelRatio = prevDPR;\n }\n });\n }\n\n protected clear() {\n this.signaturePad.clear();\n this.setValue(this.getDataURL());\n }\n\n private getDataURL() {\n return this.signaturePad.toDataURL('image/svg+xml');\n }\n\n protected downloadSVG() {\n const link = document.createElement('a');\n link.href = this.getDataURL();\n link.target = '_blank';\n link.download = 'download';\n link.click();\n }\n\n protected async switchEditMode() {\n this.editMode.update((prev) => !prev);\n }\n\n protected undo() {\n let data = this.signaturePad.toData();\n if (data) {\n data.pop();\n this.signaturePad.fromData(data);\n this.setValue(this.getDataURL());\n }\n }\n\n @HostBinding('class')\n private get __class(): string {\n const cls: any = {};\n cls[`ax-block`] = true;\n cls[`ax-flex-1`] = true;\n return cls;\n }\n}\n","import { AXPWidgetComponent } from '@acorex/platform/layout/builder';\nimport { CommonModule } from '@angular/common';\nimport { ChangeDetectionStrategy, Component, inject } from '@angular/core';\nimport { FormsModule } from '@angular/forms';\n\n@Component({\n template: ``,\n standalone: true,\n changeDetection: ChangeDetectionStrategy.OnPush,\n imports: [CommonModule, FormsModule],\n inputs: []\n})\nexport class AXPSignatureWidgetFilterComponent extends AXPWidgetComponent<any> { }","import { AXPWidgetComponent } from '@acorex/platform/layout/builder';\nimport { CommonModule } from '@angular/common';\nimport { ChangeDetectionStrategy, Component, inject } from '@angular/core';\n@Component({\n template: ``,\n standalone: true,\n changeDetection: ChangeDetectionStrategy.OnPush,\n imports: [CommonModule],\n inputs: []\n})\nexport class AXPSignatureWidgetPrintComponent extends AXPWidgetComponent<any> { }","import { AXImageModule } from '@acorex/components/image';\nimport { AXPWidgetComponent } from '@acorex/platform/layout/builder';\nimport { CommonModule } from '@angular/common';\nimport { ChangeDetectionStrategy, Component, computed } from '@angular/core';\n\n@Component({\n selector: 'axp-signature-widget',\n template: `\n <div class=\"ax-w-full md:ax-w-auto ax-h-36 ax-border ax-rounded-md ax-flex ax-justify-center ax-items-center\">\n @if(internalValue()){\n <ax-image [src]=\"internalValue()\"></ax-image>\n }@else{\n <span>{{placeholder()}}</span>\n }\n </div>\n `,\n standalone: true,\n changeDetection: ChangeDetectionStrategy.OnPush,\n imports: [CommonModule, AXImageModule],\n inputs: [],\n})\nexport class AXPSignatureWidgetViewComponent extends AXPWidgetComponent<any> {\n protected placeholder = computed<string>(() => (this.options()[\"placeholder\"] as string) ?? 'Not Set!');\n\n protected internalValue = computed(() => this.getValue());\n}\n","import { AXPWidgetConfig, AXP_WIDGETS_ADVANCE_GROUP } from '@acorex/platform/layout/builder';\nimport {\n AXP_DATA_PATH_PROPERTY,\n AXP_DISABLED_PROPERTY,\n AXP_VALIDATION_PROPERTY,\n} from '../../../properties';\nimport { AXP_NAME_PROPERTY } from '../../../properties/general.props';\n\n\n\nexport const AXPSignatureWidget: AXPWidgetConfig = {\n name: 'signature',\n title: 'Signature',\n description: 'Captures digital signatures',\n icon: 'fa-solid fa-file-signature',\n group: AXP_WIDGETS_ADVANCE_GROUP,\n type: 'editor',\n properties: [AXP_NAME_PROPERTY, AXP_DATA_PATH_PROPERTY, AXP_DISABLED_PROPERTY, AXP_VALIDATION_PROPERTY],\n components: {\n view: {\n component: () => import('./signature-pad-widget-view.component').then((c) => c.AXPSignatureWidgetViewComponent),\n },\n edit: {\n component: () => import('./signature-pad-widget-edit.component').then((c) => c.AXPSignatureWidgetEditComponent),\n },\n column: {\n component: () => import('./signature-pad-widget-column.component').then((c) => c.AXPSignatureWidgetColumnComponent),\n },\n print: {\n component: () => import('./signature-pad-widget-print.component').then((c) => c.AXPSignatureWidgetPrintComponent),\n },\n designer: {\n component: () => import('./signature-pad-widget-edit.component').then((c) => c.AXPSignatureWidgetEditComponent),\n },\n },\n};\n\ndeclare module '@acorex/platform/layout/builder' {\n interface AXPWidgetTypesMap {\n signature: 'signature';\n }\n}\n","import { AXPContainerWidgetComponent, AXPLayoutBuilderModule } from '@acorex/platform/layout/builder';\nimport { AXPDesignerAddWidgetMiniButtonComponent, AXPWidgetDesignerRendererDirective } from '@acorex/platform/layout/designer';\nimport { CommonModule } from '@angular/common';\nimport { ChangeDetectionStrategy, Component, computed, HostBinding } from '@angular/core';\n\n@Component({\n selector: 'axp-block-widget',\n template: `\n @for (node of children(); track $index) {\n <ng-container axp-widget-designer-renderer [node]=\"node\" [parentNode]=\"this\" [mode]=\"this.mode\"></ng-container>\n }\n <axp-designer-add-widget-mini-button class=\"ax-flex-1 ax-self-center ax-place-self-end\"></axp-designer-add-widget-mini-button>\n `,\n standalone: true,\n changeDetection: ChangeDetectionStrategy.OnPush,\n imports: [CommonModule, AXPLayoutBuilderModule, AXPWidgetDesignerRendererDirective, AXPDesignerAddWidgetMiniButtonComponent],\n providers: [\n {\n provide: AXPContainerWidgetComponent, useExisting: AXPBlockWidgetDesignerComponent\n }\n ]\n})\nexport class AXPBlockWidgetDesignerComponent extends AXPContainerWidgetComponent<void> {\n\n protected backgroundColor = computed<string>(() => this.options()[\"backgroundColor\"] as string);\n protected cssClass = computed<string>(() => this.options()[\"cssClass\"] as string);\n protected flexAlignItems = computed<string>(() => this.options()[\"flexAlignItems\"]?.id);\n protected flexJustifyContent = computed<string>(() => this.options()[\"flexJustifyContent\"]?.id);\n protected flexWrap = computed<string>(() => this.options()[\"flexWrap\"]?.id);\n protected flexDirection = computed<string>(() => this.options()[\"flexDirection\"]?.id);\n protected gap = computed<number>(() => this.options()[\"gap\"] as number ?? 0);\n\n @HostBinding('class')\n private get __class(): string {\n const cls: any = {};\n //\n cls[`ax-w-full`] = true;\n cls[`ax-widget-outline`] = true;\n //\n cls[`ax-flex`] = true;\n cls[`ax-gap-${this.gap()}`] = true;\n //\n if (this.flexAlignItems()) {\n cls[this.flexAlignItems()] = true;\n }\n if (this.flexJustifyContent()) {\n cls[this.flexJustifyContent()] = true;\n }\n if (this.flexWrap()) {\n cls[this.flexWrap()] = true;\n }\n if (this.flexDirection()) {\n cls[this.flexDirection()] = true;\n }\n return cls;\n }\n\n @HostBinding('style')\n private get __style(): any {\n return {\n 'background-color': this.backgroundColor(),\n };\n }\n}\n","import { AXPLayoutBuilderModule, AXPWidgetComponent } from '@acorex/platform/layout/builder';\nimport { CommonModule } from '@angular/common';\nimport { ChangeDetectionStrategy, Component, computed, HostBinding } from '@angular/core';\n\n@Component({\n selector: 'axp-block-widget',\n template: `\n @for (node of children(); track $index) {\n <ng-container axp-widget-renderer [node]=\"node\" [index]=\"index\" [parentNode]=\"this\" [mode]=\"this.mode\"></ng-container>\n }\n `,\n standalone: true,\n changeDetection: ChangeDetectionStrategy.OnPush,\n imports: [CommonModule, AXPLayoutBuilderModule],\n})\nexport class AXPBlockWidgetViewComponent extends AXPWidgetComponent<void> {\n\n protected backgroundColor = computed<string>(() => this.options()[\"backgroundColor\"] as string);\n protected cssClass = computed<string>(() => this.options()[\"cssClass\"] as string);\n protected flexAlign = computed<string>(() => this.options()[\"flexAlign\"]?.id);\n protected flexJustify = computed<string>(() => this.options()[\"flexJustify\"]?.id);\n protected gap = computed<number>(() => this.options()[\"gap\"] as number ?? 0);\n\n\n\n @HostBinding('class')\n private get __class(): string {\n const cls: any = {};\n //\n cls[`ax-flex`] = true;\n cls[`ax-flex-col`] = true;\n cls[`ax-w-full`] = true;\n cls[`ax-gap-${this.gap}`] = true;\n if (this.flexAlign()) {\n cls[this.flexAlign()] = true;\n }\n if (this.flexJustify()) {\n cls[this.flexJustify()] = true;\n }\n return cls;\n }\n\n\n @HostBinding('style')\n private get __style(): any {\n return {\n 'background-color': this.backgroundColor(),\n };\n }\n}\n","import { AXP_WIDGETS_LAYOUT_GROUP, AXPWidgetConfig, cloneProperty } from '@acorex/platform/layout/builder';\nimport { AXP_LAYOUT_FLEX_PROPERTIES } from '../../../properties/layout.props';\nimport { AXP_BG_COLOR_PROPERTY, AXP_FONT_SIZE_PROPERTY, AXP_NAME_PROPERTY } from '../../../properties/general.props';\n\nexport const AXPBlockWidget: AXPWidgetConfig = {\n name: 'block-layout',\n title: 'Block',\n description: 'Organizes content in blocks',\n icon: 'fa-solid fa-square',\n group: AXP_WIDGETS_LAYOUT_GROUP,\n type: 'container',\n properties: [\n AXP_NAME_PROPERTY,\n AXP_FONT_SIZE_PROPERTY,\n cloneProperty(AXP_BG_COLOR_PROPERTY, { schema: { defaultValue: null } }),\n ...AXP_LAYOUT_FLEX_PROPERTIES\n ],\n components: {\n designer: {\n component: () => import('./block-widget-designer.component').then((c) => c.AXPBlockWidgetDesignerComponent),\n },\n edit: {\n component: () => import('./block-widget-view.component').then((c) => c.AXPBlockWidgetViewComponent),\n },\n print: {\n component: () => import('./block-widget-view.component').then((c) => c.AXPBlockWidgetViewComponent),\n },\n view: {\n component: () => import('./block-widget-view.component').then((c) => c.AXPBlockWidgetViewComponent),\n },\n },\n};\n\ndeclare module '@acorex/platform/layout/builder' {\n interface AXPWidgetTypesMap {\n blockLayout: 'block-layout';\n }\n}\n","import { AXPLayoutBuilderModule, AXPWidgetComponent } from '@acorex/platform/layout/builder';\nimport { CommonModule } from '@angular/common';\nimport { ChangeDetectionStrategy, Component, computed, HostBinding, inject, ViewEncapsulation } from '@angular/core';\n\n@Component({\n selector: 'axp-page-widget',\n template: `\n @for (node of children(); track $index) {\n <ng-container axp-widget-renderer [node]=\"node\" [index]=\"index\" [parentNode]=\"this\" [mode]=\"this.mode\"></ng-container>\n }\n `,\n standalone: true,\n changeDetection: ChangeDetectionStrategy.OnPush,\n encapsulation: ViewEncapsulation.None,\n imports: [CommonModule, AXPLayoutBuilderModule],\n})\nexport class AXPPageWidgetViewComponent extends AXPWidgetComponent<void> {\n\n protected backgroundColor = computed<string>(() => this.options()[\"backgroundColor\"] as string);\n\n @HostBinding('style')\n private get __style(): any {\n return {\n 'background-color': this.backgroundColor(),\n };\n }\n\n}","import { AXPWidgetConfig, AXP_WIDGETS_LAYOUT_GROUP, createBooleanProperty } from '@acorex/platform/layout/builder';\nimport { AXP_BG_COLOR_PROPERTY, AXP_FONT_SIZE_PROPERTY, AXP_THEME_PROPERTY } from '../../../properties/general.props';\nimport { AXP_BEHAVIOR_PROPERTY_GROUP } from '../../../properties';\n\nexport const AXPPageWidget: AXPWidgetConfig = {\n name: 'page-layout',\n title: 'Page',\n description: 'Structures the entire page',\n icon: 'fa-solid fa-page',\n group: AXP_WIDGETS_LAYOUT_GROUP,\n type: 'container',\n visible: false,\n properties: [\n AXP_FONT_SIZE_PROPERTY,\n AXP_THEME_PROPERTY,\n AXP_BG_COLOR_PROPERTY,\n createBooleanProperty({\n name: \"hasHeader\",\n path: 'options.hasHeader',\n title: \"Header\",\n group: AXP_BEHAVIOR_PROPERTY_GROUP,\n defaultValue: true,\n }),\n createBooleanProperty({\n name: \"hasFooter\",\n path: 'options.hasFooter',\n title: \"Footer\",\n group: AXP_BEHAVIOR_PROPERTY_GROUP,\n defaultValue: true,\n })\n ],\n components: {\n view: {\n component: () => import('./page-widget-view.component').then((c) => c.AXPPageWidgetViewComponent),\n },\n edit: {\n component: () => import('./page-widget-view.component').then((c) => c.AXPPageWidgetViewComponent),\n },\n print: {\n component: () => import('./page-widget-view.component').then((c) => c.AXPPageWidgetViewComponent),\n },\n designer: {\n component: () => import('./page-widget-designer.component').then((c) => c.AXPPageWidgetDesignerComponent),\n },\n },\n};\n\ndeclare module '@acorex/platform/layout/builder' {\n interface AXPWidgetTypesMap {\n pageLayout: 'page-layout';\n }\n}\n","import { AXPLayoutBuilderModule, AXPWidgetComponent } from '@acorex/platform/layout/builder';\nimport { CommonModule } from '@angular/common';\nimport { ChangeDetectionStrategy, Component, WritableSignal, signal } from '@angular/core';\nimport { FormsModule } from '@angular/forms';\n\n@Component({\n selector:'axp-repeater-widget',\n template: `\n @for(row of rows();let i=$index; track i)\n {\n @for (node of children();track $index) \n {\n <ng-container axp-widget-renderer [node]=\"node\" [parentNode]=\"this\" [index]=\"i\" [mode]=\"this.mode\"></ng-container>\n }\n }\n `,\n standalone: true,\n changeDetection: ChangeDetectionStrategy.OnPush,\n imports: [CommonModule, FormsModule, AXPLayoutBuilderModule],\n})\nexport class AXPRepeaterWidgetViewComponent extends AXPWidgetComponent<any[]> {\n protected rows: WritableSignal<any[]> = signal([]);\n\n ngAfterViewInit() {\n this.rows.set(this.getValue() ?? []);\n }\n}\n","import { AXButtonModule } from '@acorex/components/button';\nimport { AXDecoratorModule } from '@acorex/components/decorators';\nimport { AXPLayoutBuilderModule, AXPLayoutElementAPI, AXPWidgetComponent } from '@acorex/platform/layout/builder';\nimport { CommonModule } from '@angular/common';\nimport { ChangeDetectionStrategy, Component, computed, effect, inject, signal, WritableSignal } from '@angular/core';\n\n@Component({\n selector: 'axp-repeater-widget',\n template: `\n @if(hasControls())\n {\n <div class=\"ax-grid ax-grid-cols-12 ax-gap-4\">\n @for(row of rows();let i=$index; track i)\n {\n <div class=\"ax-col-span-11\">\n <ng-container [ngTemplateOutlet]=\"tpl\" [ngTemplateOutletContext]=\"{index:i}\"></ng-container>\n </div>\n <ax-button\n [disabled]=\"disabled()\"\n look=\"twotone\"\n color=\"danger\"\n (onClick)=\"handleRemoveItemClick(i)\"\n class=\"ax-col-start-12 ax-col-end-13 ax-justify-self-end ax-self-end\"\n >\n <ax-icon icon=\"fa-regular fa-xmark\"></ax-icon>\n </ax-button>\n }\n <ax-button\n [text]=\"'Add New'\"\n look=\"twotone\"\n [disabled]=\"disabled()\"\n (onClick)=\"handleAddItemClick()\"\n class=\"ax-col-start-10 ax-col-end-13\"\n >\n <ax-prefix>\n <ax-icon class=\"fa-solid fa-add\"></ax-icon>\n </ax-prefix>\n </ax-button>\n </div>\n }\n @else {\n @for(row of rows();let i=$index; track i)\n {\n <ng-container [ngTemplateOutlet]=\"tpl\" [ngTemplateOutletContext]=\"{index:i}\"></ng-container>\n }\n }\n <ng-template #tpl let-index=\"index\"> \n @for (node of children();track $index) \n {\n <ng-container axp-widget-renderer [node]=\"node\" [parentNode]=\"this\" [index]=\"index\" [mode]=\"this.mode\"></ng-container>\n } \n </ng-template>\n `,\n standalone: true,\n changeDetection: ChangeDetectionStrategy.OnPush,\n imports: [CommonModule, AXButtonModule, AXDecoratorModule, AXPLayoutBuilderModule],\n})\nexport class AXPRepeaterWidgetEditComponent extends AXPWidgetComponent<any> {\n protected disabled = computed<boolean>(() => this.options()[\"disabled\"] as boolean);\n protected hasControls = computed<boolean>(() => this.options()[\"hasControls\"] as boolean);\n\n protected rows = computed<any[]>(() => {\n return this.getValue() ?? [];\n })\n\n\n protected handleAddItemClick() {\n this.addNew();\n }\n\n protected handleRemoveItemClick(i: number) {\n this.removeItem(i);\n\n }\n\n public addNew() {\n this.setValue([...(this.getValue() ?? []), {}]);\n }\n\n public removeItem(index: number) {\n this.setValue(this.getValue().splice(index, 1));\n }\n\n override api(): AXPLayoutElementAPI {\n return {\n \"addNew\": this.addNew.bind(this)\n }\n }\n\n\n}","import { AXPWidgetComponent } from '@acorex/platform/layout/builder';\nimport { CommonModule } from '@angular/common';\nimport { ChangeDetectionStrategy, Component, inject } from '@angular/core';\n@Component({\n selector: 'axp-repeater-widget',\n template: ``,\n standalone: true,\n changeDetection: ChangeDetectionStrategy.OnPush,\n imports: [CommonModule],\n inputs: []\n})\nexport class AXPRepeaterWidgetPrintComponent extends AXPWidgetComponent<any> { }","import { AXButtonModule } from '@acorex/components/button';\nimport { AXDecoratorModule } from '@acorex/components/decorators';\nimport { AXPContainerWidgetComponent, AXPLayoutBuilderModule, } from '@acorex/platform/layout/builder';\nimport { AXPDesignerAddWidgetMiniButtonComponent, AXPDesignerService, AXPWidgetDesignerRendererDirective } from '@acorex/platform/layout/designer';\nimport { CommonModule } from '@angular/common';\nimport { ChangeDetectionStrategy, Component, computed, HostBinding, inject } from '@angular/core';\n@Component({\n selector: 'axp-repeater-widget',\n template: `\n @if(hasControls())\n {\n <div class=\"ax-grid ax-grid-cols-12 ax-gap-4\">\n <div class=\"ax-col-span-11\">\n <ng-container [ngTemplateOutlet]=\"tpl\" ></ng-container>\n </div>\n <ax-button\n [disabled]=\"disabled()\"\n look=\"twotone\"\n color=\"danger\"\n class=\"ax-col-start-12 ax-col-end-13 ax-justify-self-end ax-self-end\"\n >\n <ax-icon icon=\"fa-regular fa-xmark\"></ax-icon>\n </ax-button>\n <ax-button\n [text]=\"'Add New'\"\n look=\"twotone\"\n [disabled]=\"disabled()\"\n class=\"ax-col-start-10 ax-col-end-13\"\n >\n <ax-prefix>\n <ax-icon class=\"fa-solid fa-add\"></ax-icon>\n </ax-prefix>\n </ax-button>\n </div>\n }\n @else {\n <ng-container [ngTemplateOutlet]=\"tpl\"></ng-container>\n }\n <ng-template #tpl>\n @for (node of children();track $index) {\n <ng-container axp-widget-designer-renderer [node]=\"node\" [parentNode]=\"this\" [mode]=\"this.mode\"> </ng-container>\n }\n @empty {\n <axp-designer-add-widget-mini-button ></axp-designer-add-widget-mini-button>\n }\n </ng-template>\n `,\n standalone: true,\n changeDetection: ChangeDetectionStrategy.OnPush,\n imports: [CommonModule, AXButtonModule, AXDecoratorModule, AXPLayoutBuilderModule, AXPWidgetDesignerRendererDirective, AXPDesignerAddWidgetMiniButtonComponent],\n providers: [\n {\n provide: AXPContainerWidgetComponent, useExisting: AXPRepeaterWidgetDesignerComponent\n }\n ]\n})\nexport class AXPRepeaterWidgetDesignerComponent extends AXPContainerWidgetComponent<void> {\n\n protected disabled = computed<boolean>(() => this.options()[\"disabled\"] as boolean);\n protected hasControls = computed<boolean>(() => this.options()[\"hasControls\"] as boolean);\n\n @HostBinding('class')\n private get __class(): string {\n const cls: any = {};\n //\n cls[`ax-block`] = true;\n cls[`ax-w-full`] = true;\n return cls;\n }\n\n}","import { AXPWidgetConfig, AXP_WIDGETS_LAYOUT_GROUP, createBooleanProperty } from '@acorex/platform/layout/builder';\nimport { AXP_BEHAVIOR_PROPERTY_GROUP, AXP_DATA_PATH_PROPERTY, AXP_DISABLED_PROPERTY, AXP_NAME_PROPERTY } from '../../../properties';\nexport const AXPRepeaterWidget: AXPWidgetConfig = {\n name: 'repeater-layout',\n title: 'Repeater',\n description: 'Adds repeating form elements',\n icon: 'fa-solid fa-table-list',\n group: AXP_WIDGETS_LAYOUT_GROUP,\n type: 'container',\n properties: [\n AXP_NAME_PROPERTY,\n AXP_DATA_PATH_PROPERTY,\n AXP_DISABLED_PROPERTY,\n createBooleanProperty({\n name: \"hasControls\",\n title: \"Controls\",\n group: AXP_BEHAVIOR_PROPERTY_GROUP,\n defaultValue: true,\n path: \"options.hasControls\",\n })\n ],\n components: {\n view: {\n component: () => import('./repeater-widget-view.component').then((c) => c.AXPRepeaterWidgetViewComponent),\n },\n edit: {\n component: () => import('./repeater-widget-edit.component').then((c) => c.AXPRepeaterWidgetEditComponent),\n },\n print: {\n component: () => import('./repeater-widget-print.component').then((c) => c.AXPRepeaterWidgetPrintComponent),\n },\n designer: {\n component: () => import('./repeater-widget-designer.component').then((c) => c.AXPRepeaterWidgetDesignerComponent),\n },\n },\n};\n\ndeclare module '@acorex/platform/layout/builder' {\n interface AXPWidgetTypesMap {\n repeaterLayout: 'repeater-layout';\n }\n}\n","import { AXQrcodeLevel, AXQrcodeModule, AXQrcodeOutputType } from '@acorex/components/qrcode';\nimport { AXColorUtil } from '@acorex/core/utils';\nimport { AXPWidgetComponent } from '@acorex/platform/layout/builder';\nimport { CommonModule } from '@angular/common';\nimport { ChangeDetectionStrategy, Component, computed, HostBinding } from '@angular/core';\n@Component({\n template: `\n @if(this.content()){\n <ax-qrcode\n [content]=\"this.content()\"\n [size]=\"size()\"\n [color]=\"color()\"\n [level]=\"level()\"\n [outputType]=\"outputType()\"\n >\n </ax-qrcode>\n }\n `,\n standalone: true,\n changeDetection: ChangeDetectionStrategy.OnPush,\n imports: [CommonModule, AXQrcodeModule],\n})\nexport class AXPQrcodeWidgetViewComponent extends AXPWidgetComponent<string> {\n protected content = computed<string>(() => this.options()['content']);\n protected size = computed<number>(() => this.options()['size'] ?? 200);\n protected level = computed<AXQrcodeLevel>(() => this.options()['level']?.id ?? 'M');\n protected color = computed<string>(() => AXColorUtil.colorStringToHex(this.options()['color'] ?? '#000000'));\n protected outputType = computed<AXQrcodeOutputType>(() => this.options()['outputType'] ?? 'svg');\n\n @HostBinding('class')\n private get __class(): string {\n const cls: any = {};\n cls[`ax-block`] = true;\n cls[`ax-flex-1`] = true;\n return cls;\n }\n}\n","import {\n AXP_WIDGETS_ADVANCE_GROUP,\n AXPWidgetConfig,\n AXPWidgetsCatalog,\n cloneProperty,\n} from '@acorex/platform/layout/builder';\nimport { AXP_CONTENT_PROPERTY, AXP_STYLING_PROPERTY_GROUP } from '../../../properties';\nimport { AXP_COLOR_PROPERTY, AXP_NAME_PROPERTY } from '../../../properties/general.props';\n\nexport const AXPQrcodeWidget: AXPWidgetConfig = {\n name: 'qrcode',\n title: 'QR Code',\n group: AXP_WIDGETS_ADVANCE_GROUP,\n icon: 'fa-solid fa-qrcode',\n description: 'Display and edit QR Codes',\n type: 'view',\n properties: [\n AXP_NAME_PROPERTY,\n cloneProperty(AXP_COLOR_PROPERTY, { schema: { interface: { defaultValue: '#000000' } } }),\n cloneProperty(AXP_CONTENT_PROPERTY, { schema: { interface: { defaultValue: 'http://google.com' } } }),\n {\n name: 'size',\n title: 'Size',\n group: AXP_STYLING_PROPERTY_GROUP,\n schema: {\n dataType: 'string',\n defaultValue: 200,\n interface: {\n name: 'size',\n path: 'options.size',\n type: AXPWidgetsCatalog.number,\n },\n },\n visible: true,\n },\n {\n name: 'level',\n title: 'Error Correction Level',\n group: AXP_STYLING_PROPERTY_GROUP,\n schema: {\n dataType: 'string',\n interface: {\n defaultValue: 'M',\n name: 'level',\n path: 'options.level',\n type: AXPWidgetsCatalog.select,\n options: {\n dataSource: ['L', 'M', 'Q', 'H'].map((i) => ({ title: i, id: i })),\n },\n },\n },\n visible: true,\n },\n ],\n components: {\n view: {\n component: () => import('./qrcode-widget-view.component').then((c) => c.AXPQrcodeWidgetViewComponent),\n },\n edit: {\n component: () => import('./qrcode-widget-view.component').then((c) => c.AXPQrcodeWidgetViewComponent),\n },\n print: {\n component: () => import('./qrcode-widget-view.component').then((c) => c.AXPQrcodeWidgetViewComponent),\n },\n designer: {\n component: () => import('./qrcode-widget-view.component').then((c) => c.AXPQrcodeWidgetViewComponent),\n },\n },\n};\n\ndeclare module '@acorex/platform/layout/builder' {\n interface AXPWidgetTypesMap {\n qrcode: 'qrcode';\n }\n}\n","import { AXPWidgetComponent } from '@acorex/platform/layout/builder';\nimport { CommonModule } from '@angular/common';\nimport { ChangeDetectionStrategy, Component, inject } from '@angular/core';\n\n@Component({\n selector: 'axp-color-box-widget',\n template: `{{ getValue() }}`,\n standalone: true,\n changeDetection: ChangeDetectionStrategy.OnPush,\n imports: [CommonModule],\n inputs: []\n})\nexport class AXPColorBoxWidgetViewComponent extends AXPWidgetComponent<any> { }","import { AXPValidationRules } from '@acorex/platform/core';\nimport { AXPWidgetComponent } from '@acorex/platform/layout/builder';\nimport { CommonModule } from '@angular/common';\nimport { ChangeDetectionStrategy, Component, computed, HostBinding, inject } from '@angular/core';\nimport { FormsModule } from '@angular/forms';\nimport { AXColorBoxModule } from '@acorex/components/color-box'\nimport { AXDecoratorModule } from '@acorex/components/decorators';\nimport { AXFormModule } from '@acorex/components/form';\n\n@Component({\n selector: 'axp-color-box-widget',\n template: `\n <ax-color-box [disabled]=\"disabled()\" [readonly]=\"readonly()\" [ngModel]=\"getValue()\" [placeholder]=\"placeholder()\" (onValueChanged)=\"handleValueChanged($event)\">\n @for (validation of validationRules(); track $index) {\n <ax-validation-rule [rule]=\"validation.rule\" [message]=\"validation.options?.message\" [options]=\"validation.options\"></ax-validation-rule>\n }\n @if(hasClearButton()){\n <ax-clear-button></ax-clear-button>\n } \n </ax-color-box>\n `,\n standalone: true,\n changeDetection: ChangeDetectionStrategy.OnPush,\n imports: [CommonModule, FormsModule, AXColorBoxModule, AXDecoratorModule, AXFormModule],\n})\nexport class AXPColorBoxWidgetEditComponent extends AXPWidgetComponent<string> {\n\n protected placeholder = computed<string>(() => this.options()[\"placeholder\"] as string);\n protected disabled = computed<boolean>(() => this.options()[\"disabled\"] as boolean);\n protected readonly = computed<boolean>(() => this.options()[\"readonly\"] as boolean);\n protected hasClearButton = computed<boolean>(() => this.options()['hasClearButton'] as boolean);\n protected validationRules = computed<AXPValidationRules>(() => (this.options()[\"validationRules\"] as AXPValidationRules) ?? []);\n\n\n @HostBinding('class')\n private get __class(): string {\n const cls: any = {};\n cls[`ax-flex-1`] = true;\n return cls;\n }\n\n}","import { AXPWidgetComponent } from '@acorex/platform/layout/builder';\nimport { CommonModule } from '@angular/common';\nimport { ChangeDetectionStrategy, Component, inject } from '@angular/core';\nimport { FormsModule } from '@angular/forms';\n\n@Component({\n template: ``,\n standalone: true,\n changeDetection: ChangeDetectionStrategy.OnPush,\n imports: [CommonModule, FormsModule],\n inputs: []\n})\nexport class AXPColorBoxWidgetFilterComponent extends AXPWidgetComponent<any> { }","import { AXPColumnWidgetComponent } from '@acorex/platform/layout/builder';\nimport { CommonModule } from '@angular/common';\nimport { ChangeDetectionStrategy, Component } from '@angular/core';\n@Component({\n template: `{{rawValue}}`,\n standalone: true,\n changeDetection: ChangeDetectionStrategy.OnPush,\n imports: [CommonModule],\n inputs: ['rawValue']\n})\nexport class AXPColorBoxWidgetColumnComponent extends AXPColumnWidgetComponent<any> { }","import { AXPWidgetComponent } from '@acorex/platform/layout/builder';\nimport { CommonModule } from '@angular/common';\nimport { ChangeDetectionStrategy, Component, inject } from '@angular/core';\n@Component({\n template: `{{getValue()}}`,\n standalone: true,\n changeDetection: ChangeDetectionStrategy.OnPush,\n imports: [CommonModule],\n inputs: []\n})\nexport class AXPColorBoxWidgetPrintComponent extends AXPWidgetComponent<any> { }","import { AXPWidgetConfig, AXP_WIDGETS_EDITOR_GROUP } from '@acorex/platform/layout/builder';\nimport {\n AXP_DATA_PATH_PROPERTY,\n AXP_DISABLED_PROPERTY,\n AXP_PLACEHOLDER_PROPERTY,\n AXP_READONLY_PROPERTY,\n AXP_VALIDATION_PROPERTY,\n} from '../../../properties';\nimport { AXP_NAME_PROPERTY } from '../../../properties/general.props';\n\nexport const AXPColorBoxWidget: AXPWidgetConfig = {\n name: 'color-editor',\n title: 'Color Box',\n description: 'Picks and applies colors',\n icon: 'fa-solid fa-palette',\n group: AXP_WIDGETS_EDITOR_GROUP,\n type: 'editor',\n properties: [\n AXP_NAME_PROPERTY,\n AXP_DATA_PATH_PROPERTY,\n AXP_READONLY_PROPERTY,\n AXP_DISABLED_PROPERTY,\n AXP_VALIDATION_PROPERTY,\n AXP_PLACEHOLDER_PROPERTY\n ],\n components: {\n designer: {\n component: () => import('./color-box-widget-designer.component').then((c) => c.AXPColorBoxWidgetDesignerComponent),\n },\n view: {\n component: () => import('./color-box-widget-view.component').then((c) => c.AXPColorBoxWidgetViewComponent),\n },\n edit: {\n component: () => import('./color-box-widget-edit.component').then((c) => c.AXPColorBoxWidgetEditComponent),\n },\n filter: {\n component: () => import('./color-box-widget-filter.component').then((c) => c.AXPColorBoxWidgetFilterComponent),\n },\n column: {\n component: () => import('./color-box-widget-column.component').then((c) => c.AXPColorBoxWidgetColumnComponent),\n },\n print: {\n component: () => import('./color-box-widget-print.component').then((c) => c.AXPColorBoxWidgetPrintComponent),\n },\n },\n};\n\ndeclare module '@acorex/platform/layout/builder' {\n interface AXPWidgetTypesMap {\n color: 'color-editor';\n }\n}\n","import { AXPWidgetConfig, AXP_WIDGETS_LAYOUT_GROUP } from '@acorex/platform/layout/builder';\nexport const AXPDocumentWidget: AXPWidgetConfig = {\n name: 'document-layout',\n title: 'Document',\n description: 'Structures the entire document',\n icon: 'fa-solid fa-page',\n group: AXP_WIDGETS_LAYOUT_GROUP,\n type: 'container',\n visible: false,\n properties: [],\n components: {},\n};\n\ndeclare module '@acorex/platform/layout/builder' {\n interface AXPWidgetTypesMap {\n document: 'document-layout';\n }\n}\n","import { AXFormModule } from '@acorex/components/form';\nimport { AXLabelModule } from '@acorex/components/label';\nimport { AXPLayoutBuilderModule, AXPWidgetComponent } from '@acorex/platform/layout/builder';\nimport { CommonModule } from '@angular/common';\nimport { ChangeDetectionStrategy, Component, computed, HostBinding } from '@angular/core';\n\n@Component({\n selector: 'axp-form-field-widget',\n template: `\n <ax-form-field>\n <ax-label>{{ label() }}</ax-label>\n @for (node of children(); track $index) {\n <ng-container axp-widget-renderer [node]=\"node\" [index]=\"index\" [parentNode]=\"this\" [mode]=\"this.mode\"> </ng-container>\n }\n </ax-form-field>\n `,\n standalone: true,\n changeDetection: ChangeDetectionStrategy.OnPush,\n imports: [CommonModule, AXFormModule, AXLabelModule, AXPLayoutBuilderModule],\n})\nexport class AXPFormFieldWidgetViewComponent extends AXPWidgetComponent<any> {\n protected label = computed<string>(() => this.options()['label'] as string);\n\n @HostBinding('class')\n private get __class(): string {\n const cls: any = {};\n cls[`ax-block`] = true;\n cls[`ax-w-full`] = true;\n return cls;\n }\n}\n","import { AXFormModule } from '@acorex/components/form';\nimport { AXLabelModule } from '@acorex/components/label';\nimport { AXPContainerWidgetComponent, AXPLayoutBuilderModule } from '@acorex/platform/layout/builder';\nimport { AXPDesignerAddWidgetMiniButtonComponent, AXPWidgetDesignerRendererDirective } from '@acorex/platform/layout/designer';\nimport { CommonModule } from '@angular/common';\nimport { ChangeDetectionStrategy, Component, computed, HostBinding } from '@angular/core';\n@Component({\n selector: \"axp-form-field-widget\",\n template: `\n <ax-form-field>\n <ax-label>{{label()}}</ax-label>\n @for (node of children(); track $index) {\n <ng-container axp-widget-designer-renderer [node]=\"node\" [parentNode]=\"this\" [mode]=\"this.mode\"> </ng-container>\n }\n @empty {\n <axp-designer-add-widget-mini-button ></axp-designer-add-widget-mini-button>\n }\n </ax-form-field>\n `,\n standalone: true,\n changeDetection: ChangeDetectionStrategy.OnPush,\n imports: [CommonModule, AXFormModule, AXLabelModule, AXPLayoutBuilderModule, AXPWidgetDesignerRendererDirective, AXPDesignerAddWidgetMiniButtonComponent],\n providers: [\n {\n provide: AXPContainerWidgetComponent, useExisting: AXPFormFieldWidgetDesignerComponent\n }\n ]\n})\nexport class AXPFormFieldWidgetDesignerComponent extends AXPContainerWidgetComponent<void> {\n protected label = computed<string>(() => this.options()[\"label\"] as string);\n\n\n @HostBinding('class')\n private get __class(): any {\n return {\n 'ax-widget-container': true,\n 'ax-block': true,\n 'ax-w-full': true\n };\n }\n}","import { AXPWidgetConfig, AXP_WIDGETS_LAYOUT_GROUP } from '@acorex/platform/layout/builder';\nimport { AXP_DATA_PATH_PROPERTY, AXP_LABEL_PROPERTY } from '../../../properties';\nimport { AXP_NAME_PROPERTY } from '../../../properties/general.props';\n\nexport const AXPFormFieldWidget: AXPWidgetConfig = {\n name: 'form-field',\n title: 'Form Field',\n group: AXP_WIDGETS_LAYOUT_GROUP,\n type: 'container',\n icon: 'fa-solid fa-pen-field',\n properties: [\n AXP_NAME_PROPERTY,\n AXP_DATA_PATH_PROPERTY,\n AXP_LABEL_PROPERTY\n ],\n components: {\n view: {\n component: () => import('./form-field-widget-view.component').then((c) => c.AXPFormFieldWidgetViewComponent),\n },\n edit: {\n component: () => import('./form-field-widget-view.component').then((c) => c.AXPFormFieldWidgetViewComponent),\n },\n print: {\n component: () => import('./form-field-widget-view.component').then((c) => c.AXPFormFieldWidgetViewComponent),\n },\n designer: {\n component: () => import('./form-field-widget-designer.component').then((c) => c.AXPFormFieldWidgetDesignerComponent),\n },\n },\n};\n\ndeclare module '@acorex/platform/layout/builder' {\n interface AXPWidgetTypesMap {\n formField: 'form-field';\n }\n}\n","import { AXPLayoutBuilderModule, AXPWidgetComponent } from '@acorex/platform/layout/builder';\nimport { CommonModule } from '@angular/common';\nimport { ChangeDetectionStrategy, Component, computed } from '@angular/core';\n\n@Component({\n selector: 'axp-grid-layout-widget',\n template: `\n <div class=\"ax-grid ax-grid-cols-{{ cols() }} ax-grid-rows-{{ rows() }} ax-gap-{{ gap() }}\">\n @for (child of children(); track $index) {\n <ng-container axp-widget-renderer [node]=\"child\" [index]=\"index\" [parentNode]=\"this\" [mode]=\"this.mode\"> </ng-container>\n }\n </div>\n `,\n standalone: true,\n changeDetection: ChangeDetectionStrategy.OnPush,\n imports: [CommonModule, AXPLayoutBuilderModule],\n})\nexport class AXPGridWidgetViewComponent extends AXPWidgetComponent<any> {\n protected cols = computed<number>(() => (this.options()['cols'] as number) ?? 1);\n protected rows = computed<number>(() => (this.options()['rows'] as number) ?? 1);\n protected gap = computed<number>(() => (this.options()['gap'] as number) ?? 0);\n}\n","import { AXPWidgetComponent } from '@acorex/platform/layout/builder';\nimport { CommonModule } from '@angular/common';\nimport { ChangeDetectionStrategy, Component, inject } from '@angular/core';\n@Component({\n template: ``,\n standalone: true,\n changeDetection: ChangeDetectionStrategy.OnPush,\n imports: [CommonModule],\n inputs: []\n})\nexport class AXPGridWidgetPrintComponent extends AXPWidgetComponent<any> {}","import {\n AXPContainerWidgetComponent,\n AXPLayoutBuilderModule,\n AXPWidgetsCatalog,\n} from '@acorex/platform/layout/builder';\nimport {\n AXPDesignerAddWidgetButtonComponent,\n AXPDesignerGridDrawerComponent,\n AXPDesignerService,\n AXPWidgetDesignerRendererDirective,\n} from '@acorex/platform/layout/designer';\nimport { CommonModule } from '@angular/common';\nimport { ChangeDetectionStrategy, Component, computed, HostBinding, inject } from '@angular/core';\n\n@Component({\n selector: 'axp-grid-layout-widget',\n template: `\n @if(settled()) {\n <div class=\"ax-grid ax-grid-cols-{{ cols() }} ax-grid-rows-{{ rows() }} ax-gap-{{ gap() }}\">\n @for (child of children(); track $index) {\n <ng-container axp-widget-designer-renderer [node]=\"child\" [parentNode]=\"this\" [mode]=\"this.mode\"> </ng-container>\n }\n </div>\n }@else {\n <axp-designer-grid-drawer (onSelect)=\"handleDrawerSelect($event)\"></axp-designer-grid-drawer>\n }\n `,\n standalone: true,\n changeDetection: ChangeDetectionStrategy.OnPush,\n imports: [\n CommonModule,\n AXPLayoutBuilderModule,\n AXPWidgetDesignerRendererDirective,\n AXPDesignerAddWidgetButtonComponent,\n AXPDesignerGridDrawerComponent,\n ],\n providers: [\n {\n provide: AXPContainerWidgetComponent,\n useExisting: AXPGridWidgetDesignerComponent,\n },\n ],\n})\nexport class AXPGridWidgetDesignerComponent extends AXPContainerWidgetComponent<void> {\n private designerService = inject(AXPDesignerService);\n\n protected cols = computed<number>(() => (this.options()['cols'] as number) ?? 1);\n protected rows = computed<number>(() => (this.options()['rows'] as number) ?? 1);\n protected gap = computed<number>(() => (this.options()['gap'] as number) ?? 0);\n\n protected cells = computed<number[]>(() =>\n Array.from({ length: this.cols() * this.rows() }).map((c, index) => index)\n );\n\n protected settled = computed(() => this.cols() * this.rows() > 1 && this.children().length);\n\n // private e = effect(async () => {\n // if (this.settled()) {\n // const cols = this.cols();\n // const rows = this.rows();\n // const gap = this.gap();\n // // const gridstack = (await import('gridstack')).GridStack;\n // // const cols = this.cols();\n // // const rows = this.rows();\n // // debugger\n // // // Initialize the grid with responsive options\n // // gridstack.init({\n // // cellHeight: 80,\n // // margin: 0,\n // // minRow: 1,\n // // column: 11,\n // // });\n // setTimeout(() => {\n // this.element.nativeElement.style.minHeight = this.placeholder?.nativeElement ? `${this.placeholder.nativeElement.clientHeight}px` : '100px';\n // }, 50);\n // }\n // })\n\n protected handleDrawerSelect(e: { rows: number; cols: number }) {\n this.designerService.update({\n values: {\n options: e,\n },\n mode: 'update',\n widget: this.node,\n });\n const list = Array.from({ length: this.cells().length }).map(() => ({\n type: AXPWidgetsCatalog.gridItem,\n }));\n list.forEach((node) => {\n this.designerService.addWidget(this.node, node);\n });\n }\n\n @HostBinding('class')\n private get __class(): any {\n return {\n 'ax-widget-container': true,\n 'ax-block': true,\n 'ax-w-full': true\n };\n }\n}\n","import { AXPWidgetConfig, AXP_WIDGETS_LAYOUT_GROUP } from '@acorex/platform/layout/builder';\nimport { AXP_LAYOUT_GRID_PROPERTIES } from '../../../properties/layout.props';\nimport { AXP_NAME_PROPERTY } from '../../../properties/general.props';\n\nexport const AXPGridWidget: AXPWidgetConfig = {\n name: 'grid-layout',\n title: 'Grid Layout',\n type: 'container',\n group: AXP_WIDGETS_LAYOUT_GROUP,\n icon: 'fa-solid fa-grid',\n properties: [\n AXP_NAME_PROPERTY,\n ...AXP_LAYOUT_GRID_PROPERTIES\n ],\n components: {\n view: {\n component: () => import('./grid-widget-view.component').then((c) => c.AXPGridWidgetViewComponent),\n },\n edit: {\n component: () => import('./grid-widget-view.component').then((c) => c.AXPGridWidgetViewComponent),\n },\n print: {\n component: () => import('./grid-widget-view.component').then((c) => c.AXPGridWidgetViewComponent),\n },\n designer: {\n component: () => import('./grid-widget-designer.component').then((c) => c.AXPGridWidgetDesignerComponent),\n },\n },\n};\n\ndeclare module '@acorex/platform/layout/builder' {\n interface AXPWidgetTypesMap {\n grid: 'grid-layout';\n }\n}\n","import { AXPContainerWidgetComponent, AXPLayoutBuilderModule } from '@acorex/platform/layout/builder';\nimport { CommonModule } from '@angular/common';\nimport { ChangeDetectionStrategy, Component, computed, HostBinding } from '@angular/core';\n\n@Component({\n selector: 'axp-grid-layout-item-widget',\n template: `\n @for (child of children(); track $index) {\n <ng-container axp-widget-renderer [node]=\"child\" [index]=\"index\" [parentNode]=\"this\" [mode]=\"this.mode\"> </ng-container>\n }\n `,\n standalone: true,\n changeDetection: ChangeDetectionStrategy.OnPush,\n imports: [CommonModule, AXPLayoutBuilderModule],\n providers: [\n {\n provide: AXPContainerWidgetComponent,\n useExisting: AXPGridItemWidgetViewComponent,\n },\n ],\n})\nexport class AXPGridItemWidgetViewComponent extends AXPContainerWidgetComponent<any> {\n protected colSpan = computed<number>(() => this.options()['colSpan'] as number);\n protected colStart = computed<number>(() => this.options()['colStart'] as number);\n protected colEnd = computed<number>(() => this.options()['colEnd'] as number);\n\n protected flexAlignItems = computed<string>(() => this.options()['flexAlignItems']?.id);\n protected flexJustifyContent = computed<string>(() => this.options()['flexJustifyContent']?.id);\n protected flexWrap = computed<string>(() => this.options()['flexWrap']?.id);\n protected flexDirection = computed<string>(() => this.options()['flexDirection']?.id);\n\n protected gap = computed<number>(() => (this.options()['gap'] as number) ?? 0);\n\n @HostBinding('class')\n private get __class(): any {\n const cls: any = {};\n //\n cls[`ax-flex`] = true;\n cls[`ax-gap-${this.gap()}`] = true;\n //\n if (this.flexAlignItems()) {\n cls[this.flexAlignItems()] = true;\n }\n if (this.flexJustifyContent()) {\n cls[this.flexJustifyContent()] = true;\n }\n if (this.flexWrap()) {\n cls[this.flexWrap()] = true;\n }\n if (this.flexDirection()) {\n cls[this.flexDirection()] = true;\n }\n //\n cls[`ax-col-span-12`] = true;\n if (this.colSpan() != null) {\n cls[`lg:ax-col-span-${this.colSpan()}`] = true;\n } else {\n cls[`lg:ax-col-span-1`] = true;\n }\n //\n if (this.colStart() != null) {\n cls[`lg:ax-col-start-${this.colStart()}`] = true;\n }\n //\n if (this.colEnd() != null) {\n cls[`lg:ax-col-end-${this.colEnd()}`] = true;\n }\n return cls;\n }\n}\n","import { AXPWidgetComponent } from '@acorex/platform/layout/builder';\nimport { CommonModule } from '@angular/common';\nimport { ChangeDetectionStrategy, Component, inject } from '@angular/core';\n@Component({\n template: ``,\n standalone: true,\n changeDetection: ChangeDetectionStrategy.OnPush,\n imports: [CommonModule],\n inputs: []\n})\nexport class AXPGridItemWidgetPrintComponent extends AXPWidgetComponent<any> { }","import { AXPContainerWidgetComponent, AXPLayoutBuilderModule } from '@acorex/platform/layout/builder';\nimport {\n AXPDesignerAddWidgetMiniButtonComponent,\n AXPDesignerGridDrawerComponent,\n AXPDesignerService,\n AXPWidgetDesignerRendererDirective,\n} from '@acorex/platform/layout/designer';\nimport { CommonModule } from '@angular/common';\nimport { ChangeDetectionStrategy, Component, computed, HostBinding, inject } from '@angular/core';\n\n@Component({\n selector: 'axp-grid-layout-item-widget',\n template: `\n @for (child of children(); track $index) {\n <ng-container axp-widget-designer-renderer [node]=\"child\" [parentNode]=\"this\" [mode]=\"this.mode\"> </ng-container>\n } @empty {\n <axp-designer-add-widget-mini-button ></axp-designer-add-widget-mini-button>\n }\n `,\n standalone: true,\n changeDetection: ChangeDetectionStrategy.OnPush,\n imports: [\n CommonModule,\n AXPLayoutBuilderModule,\n AXPWidgetDesignerRendererDirective,\n AXPDesignerAddWidgetMiniButtonComponent,\n AXPDesignerGridDrawerComponent,\n ],\n providers: [\n {\n provide: AXPContainerWidgetComponent,\n useExisting: AXPGridItemWidgetDesignerComponent,\n },\n ],\n})\nexport class AXPGridItemWidgetDesignerComponent extends AXPContainerWidgetComponent<void> {\n\n protected colSpan = computed<number>(() => this.options()['colSpan'] as number);\n protected colStart = computed<number>(() => this.options()['colStart'] as number);\n protected colEnd = computed<number>(() => this.options()['colEnd'] as number);\n\n protected flexAlignItems = computed<string>(() => this.options()['flexAlignItems']?.id);\n protected flexJustifyContent = computed<string>(() => this.options()['flexJustifyContent']?.id);\n protected flexWrap = computed<string>(() => this.options()['flexWrap']?.id);\n protected flexDirection = computed<string>(() => this.options()['flexDirection']?.id);\n\n protected gap = computed<number>(() => (this.options()['gap'] as number) ?? 0);\n\n\n\n @HostBinding('class')\n private get __class(): any {\n const cls: any = {};\n //\n cls[`ax-widget-container`] = true;\n cls[`ax-flex`] = true;\n cls[`ax-gap-${this.gap()}`] = true;\n //\n if (this.flexAlignItems()) {\n cls[this.flexAlignItems()] = true;\n }\n if (this.flexJustifyContent()) {\n cls[this.flexJustifyContent()] = true;\n }\n if (this.flexWrap()) {\n cls[this.flexWrap()] = true;\n }\n if (this.flexDirection()) {\n cls[this.flexDirection()] = true;\n }\n //\n cls[`ax-col-span-12`] = true;\n if (this.colSpan() != null) {\n cls[`lg:ax-col-span-${this.colSpan()}`] = true;\n } else {\n cls[`lg:ax-col-span-1`] = true;\n }\n //\n if (this.colStart() != null) {\n cls[`lg:ax-col-start-${this.colStart()}`] = true;\n }\n //\n if (this.colEnd() != null) {\n cls[`lg:ax-col-end-${this.colEnd()}`] = true;\n }\n return cls;\n }\n}\n","import { AXPWidgetConfig, AXP_WIDGETS_LAYOUT_GROUP } from '@acorex/platform/layout/builder';\nimport { AXP_LAYOUT_FLEX_PROPERTIES, AXP_LAYOUT_GRID_ITEM_PROPERTIES } from '../../../properties/layout.props';\nimport { AXP_NAME_PROPERTY } from '../../../properties/general.props';\n\nexport const AXPGridItemWidget: AXPWidgetConfig = {\n name: 'grid-item-layout',\n title: 'Grid Item',\n type: 'container',\n visible: false,\n group: AXP_WIDGETS_LAYOUT_GROUP,\n icon: 'fa-solid fa-objects-column',\n properties: [\n AXP_NAME_PROPERTY,\n ...AXP_LAYOUT_GRID_ITEM_PROPERTIES,\n ...AXP_LAYOUT_FLEX_PROPERTIES\n ],\n components: {\n view: {\n component: () => import('./grid-item-widget-view.component').then((c) => c.AXPGridItemWidgetViewComponent),\n },\n edit: {\n component: () => import('./grid-item-widget-view.component').then((c) => c.AXPGridItemWidgetViewComponent),\n },\n print: {\n component: () => import('./grid-item-widget-view.component').then((c) => c.AXPGridItemWidgetViewComponent),\n },\n designer: {\n component: () => import('./grid-item-widget-designer.component').then((c) => c.AXPGridItemWidgetDesignerComponent),\n },\n },\n};\n\ndeclare module '@acorex/platform/layout/builder' {\n interface AXPWidgetTypesMap {\n gridItem: 'grid-item-layout';\n }\n}\n","import { AXPLayoutBuilderModule, AXPWidgetComponent } from '@acorex/platform/layout/builder';\nimport { CommonModule } from '@angular/common';\nimport { ChangeDetectionStrategy, Component, computed } from '@angular/core';\n\n@Component({\n selector: 'axp-grid-row-widget',\n template: `\n <div class=\"ax-grid ax-grid-cols-{{ cols() }} ax-grid-rows-{{ rows() }} ax-gap-{{ gap() }}\">\n @for (child of children(); track $index) {\n <ng-container axp-widget-renderer [node]=\"child\" [index]=\"index\" [parentNode]=\"this\" [mode]=\"this.mode\"> </ng-container>\n }\n </div>\n `,\n standalone: true,\n changeDetection: ChangeDetectionStrategy.OnPush,\n imports: [CommonModule, AXPLayoutBuilderModule],\n})\nexport class AXPGridRowWidgetViewComponent extends AXPWidgetComponent<any> {\n protected cols = computed<number>(() => (this.options()['cols'] as number) ?? 1);\n protected rows = computed<number>(() => (this.options()['rows'] as number) ?? 1);\n protected gap = computed<number>(() => (this.options()['gap'] as number) ?? 0);\n}\n","import { AXPWidgetComponent } from '@acorex/platform/layout/builder';\nimport { CommonModule } from '@angular/common';\nimport { ChangeDetectionStrategy, Component, inject } from '@angular/core';\n@Component({\n template: ``,\n standalone: true,\n changeDetection: ChangeDetectionStrategy.OnPush,\n imports: [CommonModule],\n inputs: []\n})\nexport class AXPGridRowWidgetPrintComponent extends AXPWidgetComponent<any> {}","import { AXPContainerWidgetComponent, AXPLayoutBuilderModule, AXPWidgetsCatalog } from '@acorex/platform/layout/builder';\nimport { AXPWidgetDesignerRendererDirective, AXPDesignerAddWidgetButtonComponent, AXPDesignerGridDrawerComponent, AXPDesignerService } from '@acorex/platform/layout/designer';\nimport { CommonModule } from '@angular/common';\nimport { ChangeDetectionStrategy, Component, computed, HostBinding, HostListener, inject, signal, ViewEncapsulation } from '@angular/core';\nimport { AXPGridWidgetDesignerComponent } from '../grid/grid-widget-designer.component';\nimport { get, sum } from 'lodash-es';\n@Component({\n selector: 'axp-grid-row-widget',\n template: `\n <div class=\"ax-grid ax-grid-cols-{{cols()}} ax-gap-{{gap()}}\">\n @for (node of children(); track $index) {\n <ng-container axp-widget-designer-renderer [node]=\"node\" [parentNode]=\"this\" [mode]=\"this.mode\"> </ng-container>\n }\n @for (node of cells(); track $index) {\n <div class=\"axp-empty-slot\" (mouseenter)=\"handleMouseHover($index)\" (mouseleave)=\"handleMouseLeave($event)\" (click)=\"handleClick($event,$index)\" [class.axp-state-hover]=\"hoverIndex()>=$index\">\n </div>\n }\n </div>\n `,\n styleUrls: ['grid-row-widget-designer.component.scss'],\n standalone: true,\n changeDetection: ChangeDetectionStrategy.OnPush,\n encapsulation: ViewEncapsulation.None,\n imports: [CommonModule, AXPLayoutBuilderModule, AXPWidgetDesignerRendererDirective, AXPDesignerAddWidgetButtonComponent, AXPDesignerGridDrawerComponent],\n providers: [\n {\n provide: AXPContainerWidgetComponent, useExisting: AXPGridWidgetDesignerComponent\n }\n ]\n})\nexport class AXPGridRowWidgetDesignerComponent extends AXPContainerWidgetComponent<any> {\n\n private designerService = inject(AXPDesignerService);\n\n protected cols = computed<number>(() => this.options()[\"cols\"] as number ?? 1);\n protected gap = computed<number>(() => this.options()[\"gap\"] as number ?? 0);\n\n protected cells = computed<number[]>(() => Array.from({ length: this.cols() - sum(this.children().map(c => get(c.options, 'colSpan'))) }).map((c, index) => index));\n\n\n protected hoverIndex = signal(0);\n\n\n protected handleMouseHover(index: number) {\n console.log(\"handleMouseHover\", index)\n this.hoverIndex.set(index);\n }\n\n protected handleClick(e: MouseEvent, index: number) {\n console.log(\"handleClick\", index)\n e.stopPropagation();\n this.hoverIndex.set(-1);\n e.preventDefault();\n this.designerService.addWidget(this.node, {\n type: AXPWidgetsCatalog.gridItem,\n options: {\n colSpan: index + 1\n }\n });\n }\n\n @HostListener('mouseleave', ['$event'])\n protected handleMouseLeave(event: MouseEvent) {\n this.hoverIndex.set(-1);\n }\n\n @HostBinding('class')\n private get __class(): string {\n const cls: any = {};\n //\n cls[`ax-widget-container`] = true;\n cls[`ax-block`] = true;\n cls[`ax-w-full`] = true;\n return cls;\n }\n\n}","import { AXP_WIDGETS_LAYOUT_GROUP, AXPWidgetConfig } from '@acorex/platform/layout/builder';\nimport { AXP_LAYOUT_GRID_ROW_PROPERTIES, AXP_NAME_PROPERTY } from '../../../properties';\n\nexport const AXPGridRowWidget: AXPWidgetConfig = {\n name: \"grid-row-layout\",\n title: \"Grid Row Layout\",\n group: AXP_WIDGETS_LAYOUT_GROUP,\n type: 'container',\n icon: \"fa-solid fa-diagram-cells\",\n properties: [\n AXP_NAME_PROPERTY,\n ...AXP_LAYOUT_GRID_ROW_PROPERTIES\n ],\n components: {\n view: {\n component: () => import('./grid-row-widget-view.component').then((c) => c.AXPGridRowWidgetViewComponent),\n },\n edit: {\n component: () => import('./grid-row-widget-view.component').then((c) => c.AXPGridRowWidgetViewComponent),\n },\n print: {\n component: () => import('./grid-row-widget-print.component').then((c) => c.AXPGridRowWidgetPrintComponent),\n },\n designer: {\n component: () => import('./grid-row-widget-designer.component').then((c) => c.AXPGridRowWidgetDesignerComponent),\n },\n }\n}\n\ndeclare module '@acorex/platform/layout/builder' {\n interface AXPWidgetTypesMap {\n gridRow: 'grid-row-layout';\n }\n}","import { AXPWidgetComponent } from '@acorex/platform/layout/builder';\nimport { CommonModule } from '@angular/common';\nimport { ChangeDetectionStrategy, Component, computed, inject } from '@angular/core';\nimport { DomSanitizer } from '@angular/platform-browser';\n\n@Component({\n selector: \"axp-text-block-widget\",\n template: `\n <div [innerHTML]=\"innerContent()\"></div>\n `,\n standalone: true,\n changeDetection: ChangeDetectionStrategy.OnPush,\n imports: [CommonModule],\n})\nexport class AXPTextBlockWidgetViewComponent extends AXPWidgetComponent<void> {\n sanitizer = inject(DomSanitizer);\n\n protected content = computed<string>(() => this.options()['content'] as string);\n\n protected innerContent = computed(() =>\n this.sanitizer.bypassSecurityTrustHtml(this.content())\n );\n}","import { AXP_WIDGETS_LAYOUT_GROUP, AXPWidgetConfig, AXPWidgetsCatalog } from '@acorex/platform/layout/builder';\nimport { AXP_BEHAVIOR_PROPERTY_GROUP, AXP_NAME_PROPERTY } from '../../../properties';\n\nexport const AXPTextBlockWidget: AXPWidgetConfig = {\n name: 'text-block-layout',\n title: 'Text Block',\n description: 'Displays text blocks',\n icon: 'fa-solid fa-text',\n group: AXP_WIDGETS_LAYOUT_GROUP,\n type: 'view',\n properties: [\n AXP_NAME_PROPERTY,\n {\n name: 'content',\n title: 'Content',\n group: AXP_BEHAVIOR_PROPERTY_GROUP,\n schema: {\n dataType: 'string',\n defaultValue: 'Text Block',\n interface: {\n name: 'content',\n path: 'options.content',\n type: AXPWidgetsCatalog.richText,\n },\n },\n visible: true,\n },\n ],\n components: {\n view: {\n component: () => import('./text-block-widget-view.component').then((c) => c.AXPTextBlockWidgetViewComponent),\n },\n edit: {\n component: () => import('./text-block-widget-view.component').then((c) => c.AXPTextBlockWidgetViewComponent),\n },\n print: {\n component: () => import('./text-block-widget-view.component').then((c) => c.AXPTextBlockWidgetViewComponent),\n },\n designer: {\n component: () => import('./text-block-widget-designer.component').then((c) => c.AXPTextBlockWidgetDesignerComponent),\n },\n },\n};\n\ndeclare module '@acorex/platform/layout/builder' {\n interface AXPWidgetTypesMap {\n textBlockLayout: 'text-block-layout';\n }\n}\n","import { AXPLayoutBuilderModule } from '@acorex/platform/layout/builder';\nimport { NgModule } from '@angular/core';\nimport {\n AXPBlockWidget,\n AXPButtonWidget,\n AXPCheckBoxWidget,\n AXPContactWidget,\n AXPDateTimeBoxWidget,\n //AXPEmailBoxWidget,\n AXPFileBoxWidget,\n AXPGalleryWidget,\n AXPLargeTextWidget,\n //AXPLinkWidget,\n AXPMapBoxWidget,\n AXPNumberBoxWidget,\n AXPPageWidget,\n AXPPasswordBoxWidget,\n //AXPPhoneBoxWidget,\n AXPRepeaterWidget,\n AXPRichTextWidget,\n AXPSelectBoxWidget,\n AXPSelectionListWidget,\n AXPSignatureWidget,\n AXPTextBoxWidget,\n AXPToggleWidget,\n} from './widgets';\nimport { AXPQrcodeWidget } from './widgets/advance/qrcode';\nimport { AXPColorBoxWidget } from './widgets/editors/color';\nimport { AXPDocumentWidget } from './widgets/layout/document/document-widget.config';\nimport { AXPFormFieldWidget } from './widgets/layout/form-field';\nimport { AXPGridWidget } from './widgets/layout/grid';\nimport { AXPGridItemWidget } from './widgets/layout/grid-item';\nimport { AXPGridRowWidget } from './widgets/layout/grid-row';\nimport { AXPTextBlockWidget } from './widgets/layout/text-block';\n\n@NgModule({\n imports: [\n AXPLayoutBuilderModule.forChild({\n widgets: [\n AXPDocumentWidget,\n //\n AXPBlockWidget,\n AXPPageWidget,\n AXPRepeaterWidget,\n AXPTextBlockWidget,\n AXPFormFieldWidget,\n AXPGridWidget,\n AXPGridItemWidget,\n AXPGridRowWidget,\n //\n AXPTextBoxWidget,\n AXPCheckBoxWidget,\n AXPSelectBoxWidget,\n AXPRichTextWidget,\n AXPNumberBoxWidget,\n AXPSignatureWidget,\n AXPDateTimeBoxWidget,\n AXPContactWidget,\n AXPSelectionListWidget,\n AXPLargeTextWidget,\n AXPMapBoxWidget,\n //AXPPhoneBoxWidget,\n //AXPEmailBoxWidget,\n //AXPLinkWidget,\n AXPFileBoxWidget,\n AXPQrcodeWidget,\n AXPPasswordBoxWidget,\n AXPGalleryWidget,\n AXPToggleWidget,\n AXPColorBoxWidget,\n //\n AXPButtonWidget,\n ],\n }),\n ],\n exports: [],\n declarations: [],\n})\nexport class AXPWidgetsModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":["i1","i2","i3","i4","i6","i7","i8","i5"],"mappings":"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"}
1
+ {"version":3,"file":"acorex-platform-widgets.mjs","sources":["../../../../libs/platform/widgets/src/lib/widgets/actions/button/button-widget-view.component.ts","../../../../libs/platform/widgets/src/lib/properties/groups.ts","../../../../libs/platform/widgets/src/lib/properties/data-source.props.ts","../../../../libs/platform/widgets/src/lib/properties/general.props.ts","../../../../libs/platform/widgets/src/lib/properties/editors.props.ts","../../../../libs/platform/widgets/src/lib/properties/layout.props.ts","../../../../libs/platform/widgets/src/lib/properties/table-column.props.ts","../../../../libs/platform/widgets/src/lib/widgets/actions/button/button-widget.config.ts","../../../../libs/platform/widgets/src/lib/widgets/editors/checkbox/checkbox-widget-edit.component.ts","../../../../libs/platform/widgets/src/lib/widgets/editors/checkbox/checkbox-widget.config.ts","../../../../libs/platform/widgets/src/lib/widgets/editors/contact/contact-widget-column.component.ts","../../../../libs/platform/widgets/src/lib/widgets/editors/contact/popup-component.ts","../../../../libs/platform/widgets/src/lib/widgets/editors/contact/contact-widget-edit.component.ts","../../../../libs/platform/widgets/src/lib/widgets/editors/contact/contact-widget-print.component.ts","../../../../libs/platform/widgets/src/lib/widgets/editors/contact/contact-widget-view.component.ts","../../../../libs/platform/widgets/src/lib/widgets/editors/contact/contact-widget.config.ts","../../../../libs/platform/widgets/src/lib/widgets/editors/date-time/date-time-box-widget-view.component.ts","../../../../libs/platform/widgets/src/lib/widgets/editors/date-time/date-time-box-widget-edit.component.ts","../../../../libs/platform/widgets/src/lib/widgets/editors/date-time/date-time-box-widget-filter.component.ts","../../../../libs/platform/widgets/src/lib/widgets/editors/date-time/date-time-box-widget-column.component.ts","../../../../libs/platform/widgets/src/lib/widgets/editors/date-time/date-time-box-widget-print.component.ts","../../../../libs/platform/widgets/src/lib/widgets/editors/date-time/date-time-box-widget.config.ts","../../../../libs/platform/widgets/src/lib/widgets/editors/email/email-box-widget-view.component.ts","../../../../libs/platform/widgets/src/lib/widgets/editors/email/email-box-widget-edit.component.ts","../../../../libs/platform/widgets/src/lib/widgets/editors/email/email-box-widget-filter.component.ts","../../../../libs/platform/widgets/src/lib/widgets/editors/email/email-box-widget-column.component.ts","../../../../libs/platform/widgets/src/lib/widgets/editors/email/email-box-widget-print.component.ts","../../../../libs/platform/widgets/src/lib/widgets/editors/email/email-box-widget.config.ts","../../../../libs/platform/widgets/src/lib/widgets/editors/large-text/large-text-widget-view.component.ts","../../../../libs/platform/widgets/src/lib/widgets/editors/large-text/large-text-widget-edit.component.ts","../../../../libs/platform/widgets/src/lib/widgets/editors/large-text/large-text-widget-filter.component.ts","../../../../libs/platform/widgets/src/lib/widgets/editors/large-text/large-text-widget-column.component.ts","../../../../libs/platform/widgets/src/lib/widgets/editors/large-text/large-text-widget-print.component.ts","../../../../libs/platform/widgets/src/lib/widgets/editors/large-text/large-text-widget.config.ts","../../../../libs/platform/widgets/src/lib/widgets/editors/link/link-widget-view.component.ts","../../../../libs/platform/widgets/src/lib/widgets/editors/link/link-widget-edit.component.ts","../../../../libs/platform/widgets/src/lib/widgets/editors/link/link-widget-filter.component.ts","../../../../libs/platform/widgets/src/lib/widgets/editors/link/link-widget-column.component.ts","../../../../libs/platform/widgets/src/lib/widgets/editors/link/link-widget-print.component.ts","../../../../libs/platform/widgets/src/lib/widgets/editors/link/link-widget.config.ts","../../../../libs/platform/widgets/src/lib/widgets/editors/number/number-box-widget-view.component.ts","../../../../libs/platform/widgets/src/lib/widgets/editors/number/number-box-widget-edit.component.ts","../../../../libs/platform/widgets/src/lib/widgets/editors/number/number-box-widget-filter.component.ts","../../../../libs/platform/widgets/src/lib/widgets/editors/number/number-box-widget-column.component.ts","../../../../libs/platform/widgets/src/lib/widgets/editors/number/number-box-widget-print.component.ts","../../../../libs/platform/widgets/src/lib/widgets/editors/number/number-box-widget.config.ts","../../../../libs/platform/widgets/src/lib/widgets/editors/password/password-box-widget-view.component.ts","../../../../libs/platform/widgets/src/lib/widgets/editors/password/password-box-widget-edit.component.ts","../../../../libs/platform/widgets/src/lib/widgets/editors/password/password-box-widget-filter.component.ts","../../../../libs/platform/widgets/src/lib/widgets/editors/password/password-box-widget-column.component.ts","../../../../libs/platform/widgets/src/lib/widgets/editors/password/password-box-widget-print.component.ts","../../../../libs/platform/widgets/src/lib/widgets/editors/password/password-box-widget.config.ts","../../../../libs/platform/widgets/src/lib/widgets/editors/phone/phone-box-widget-view.component.ts","../../../../libs/platform/widgets/src/lib/widgets/editors/phone/phone-box-widget-edit.component.ts","../../../../libs/platform/widgets/src/lib/widgets/editors/phone/phone-box-widget-filter.component.ts","../../../../libs/platform/widgets/src/lib/widgets/editors/phone/phone-box-widget-column.component.ts","../../../../libs/platform/widgets/src/lib/widgets/editors/phone/phone-box-widget-print.component.ts","../../../../libs/platform/widgets/src/lib/widgets/editors/phone/phone-box-widget.config.ts","../../../../libs/platform/widgets/src/lib/widgets/editors/rich-text/rich-text-widget-view.component.ts","../../../../libs/platform/widgets/src/lib/widgets/editors/rich-text/rich-text-widget-edit.component.ts","../../../../libs/platform/widgets/src/lib/widgets/editors/rich-text/rich-text-widget-filter.component.ts","../../../../libs/platform/widgets/src/lib/widgets/editors/rich-text/rich-text-widget-column.component.ts","../../../../libs/platform/widgets/src/lib/widgets/editors/rich-text/rich-text-widget-print.component.ts","../../../../libs/platform/widgets/src/lib/widgets/editors/rich-text/rich-text-widget.config.ts","../../../../libs/platform/widgets/src/lib/widgets/editors/select/select-box-widget-view.component.ts","../../../../libs/platform/widgets/src/lib/widgets/editors/select/select-box-widget-edit.component.ts","../../../../libs/platform/widgets/src/lib/widgets/editors/select/select-box-widget-filter.component.ts","../../../../libs/platform/widgets/src/lib/widgets/editors/select/select-box-widget-column.component.ts","../../../../libs/platform/widgets/src/lib/widgets/editors/select/select-box-widget-print.component.ts","../../../../libs/platform/widgets/src/lib/widgets/editors/select/select-box-widget.config.ts","../../../../libs/platform/widgets/src/lib/widgets/editors/selection-list/selection-list-widget-view.component.ts","../../../../libs/platform/widgets/src/lib/widgets/editors/selection-list/selection-list-widget-designer.component.ts","../../../../libs/platform/widgets/src/lib/widgets/editors/selection-list/selection-list-widget-edit.component.ts","../../../../libs/platform/widgets/src/lib/widgets/editors/selection-list/selection-list-widget-filter.component.ts","../../../../libs/platform/widgets/src/lib/widgets/editors/selection-list/selection-list-widget-column.component.ts","../../../../libs/platform/widgets/src/lib/widgets/editors/selection-list/selection-list-widget-print.component.ts","../../../../libs/platform/widgets/src/lib/widgets/editors/selection-list/selection-list-widget.config.ts","../../../../libs/platform/widgets/src/lib/widgets/editors/text/text-box-widget-view.component.ts","../../../../libs/platform/widgets/src/lib/widgets/editors/text/text-box-widget-edit.component.ts","../../../../libs/platform/widgets/src/lib/widgets/editors/text/text-box-widget-filter.component.ts","../../../../libs/platform/widgets/src/lib/widgets/editors/text/text-box-widget-column.component.ts","../../../../libs/platform/widgets/src/lib/widgets/editors/text/text-box-widget-print.component.ts","../../../../libs/platform/widgets/src/lib/widgets/editors/text/text-box-widget.config.ts","../../../../libs/platform/widgets/src/lib/widgets/editors/toggle/toggle-widget-view.component.ts","../../../../libs/platform/widgets/src/lib/widgets/editors/toggle/toggle-widget-edit.component.ts","../../../../libs/platform/widgets/src/lib/widgets/editors/toggle/toggle-widget-filter.component.ts","../../../../libs/platform/widgets/src/lib/widgets/editors/toggle/toggle-widget-column.component.ts","../../../../libs/platform/widgets/src/lib/widgets/editors/toggle/toggle-widget-print.component.ts","../../../../libs/platform/widgets/src/lib/widgets/editors/toggle/toggle-widget.config.ts","../../../../libs/platform/widgets/src/lib/widgets/advance/file/file-box-widget-column.component.ts","../../../../libs/platform/widgets/src/lib/widgets/advance/file/file-box-widget.service.ts","../../../../libs/platform/widgets/src/lib/widgets/advance/file/file-box-widget-edit.component.ts","../../../../libs/platform/widgets/src/lib/widgets/advance/file/file-box-widget-filter.component.ts","../../../../libs/platform/widgets/src/lib/widgets/advance/file/file-box-widget-print.component.ts","../../../../libs/platform/widgets/src/lib/widgets/advance/file/file-box-widget-view.component.ts","../../../../libs/platform/widgets/src/lib/widgets/advance/file/file-box-widget.config.ts","../../../../libs/platform/widgets/src/lib/widgets/advance/gallery/gallery-widget-view.component.ts","../../../../libs/platform/widgets/src/lib/widgets/advance/gallery/gallery-widget-edit.component.ts","../../../../libs/platform/widgets/src/lib/widgets/advance/gallery/gallery-widget-filter.component.ts","../../../../libs/platform/widgets/src/lib/widgets/advance/gallery/gallery-widget-column.component.ts","../../../../libs/platform/widgets/src/lib/widgets/advance/gallery/gallery-widget-print.component.ts","../../../../libs/platform/widgets/src/lib/widgets/advance/gallery/gallery-widget.config.ts","../../../../libs/platform/widgets/src/lib/widgets/advance/map/map-box-widget-view.component.ts","../../../../libs/platform/widgets/src/lib/widgets/advance/map/map-box-widget-edit.component.ts","../../../../libs/platform/widgets/src/lib/widgets/advance/map/map-box-widget.config.ts","../../../../libs/platform/widgets/src/lib/widgets/advance/signature/signature-pad-widget-column.component.ts","../../../../libs/platform/widgets/src/lib/widgets/advance/signature/signature-pad-widget-edit.component.ts","../../../../libs/platform/widgets/src/lib/widgets/advance/signature/signature-pad-widget-filter.component.ts","../../../../libs/platform/widgets/src/lib/widgets/advance/signature/signature-pad-widget-print.component.ts","../../../../libs/platform/widgets/src/lib/widgets/advance/signature/signature-pad-widget-view.component.ts","../../../../libs/platform/widgets/src/lib/widgets/advance/signature/signature-pad-widget.config.ts","../../../../libs/platform/widgets/src/lib/widgets/layout/block/block-widget-designer.component.ts","../../../../libs/platform/widgets/src/lib/widgets/layout/block/block-widget-view.component.ts","../../../../libs/platform/widgets/src/lib/widgets/layout/block/block-widget.config.ts","../../../../libs/platform/widgets/src/lib/widgets/layout/page/page-widget-view.component.ts","../../../../libs/platform/widgets/src/lib/widgets/layout/page/page-widget.config.ts","../../../../libs/platform/widgets/src/lib/widgets/layout/repeater/repeater-widget-view.component.ts","../../../../libs/platform/widgets/src/lib/widgets/layout/repeater/repeater-widget-edit.component.ts","../../../../libs/platform/widgets/src/lib/widgets/layout/repeater/repeater-widget-print.component.ts","../../../../libs/platform/widgets/src/lib/widgets/layout/repeater/repeater-widget-designer.component.ts","../../../../libs/platform/widgets/src/lib/widgets/layout/repeater/repeater-widget.config.ts","../../../../libs/platform/widgets/src/lib/widgets/layout/template/template.provider.ts","../../../../libs/platform/widgets/src/lib/widgets/layout/template/template-widget-view.component.ts","../../../../libs/platform/widgets/src/lib/widgets/layout/template/template-widget-designer.component.ts","../../../../libs/platform/widgets/src/lib/widgets/layout/template/template-widget.config.ts","../../../../libs/platform/widgets/src/lib/widgets/advance/qrcode/qrcode-widget-view.component.ts","../../../../libs/platform/widgets/src/lib/widgets/advance/qrcode/qrcode-widget.config.ts","../../../../libs/platform/widgets/src/lib/widgets/editors/color/color-box-widget-view.component.ts","../../../../libs/platform/widgets/src/lib/widgets/editors/color/color-box-widget-edit.component.ts","../../../../libs/platform/widgets/src/lib/widgets/editors/color/color-box-widget-filter.component.ts","../../../../libs/platform/widgets/src/lib/widgets/editors/color/color-box-widget-column.component.ts","../../../../libs/platform/widgets/src/lib/widgets/editors/color/color-box-widget-print.component.ts","../../../../libs/platform/widgets/src/lib/widgets/editors/color/color-box-widget.config.ts","../../../../libs/platform/widgets/src/lib/widgets/layout/document/document-widget.config.ts","../../../../libs/platform/widgets/src/lib/widgets/layout/form-field/form-field-widget-view.component.ts","../../../../libs/platform/widgets/src/lib/widgets/layout/form-field/form-field-widget-designer.component.ts","../../../../libs/platform/widgets/src/lib/widgets/layout/form-field/form-field-widget.config.ts","../../../../libs/platform/widgets/src/lib/widgets/layout/grid/grid-widget-view.component.ts","../../../../libs/platform/widgets/src/lib/widgets/layout/grid/grid-widget-print.component.ts","../../../../libs/platform/widgets/src/lib/widgets/layout/grid/grid-widget-designer.component.ts","../../../../libs/platform/widgets/src/lib/widgets/layout/grid/grid-widget.config.ts","../../../../libs/platform/widgets/src/lib/widgets/layout/grid-item/grid-item-widget-view.component.ts","../../../../libs/platform/widgets/src/lib/widgets/layout/grid-item/grid-item-widget-print.component.ts","../../../../libs/platform/widgets/src/lib/widgets/layout/grid-item/grid-item-widget-designer.component.ts","../../../../libs/platform/widgets/src/lib/widgets/layout/grid-item/grid-item-widget.config.ts","../../../../libs/platform/widgets/src/lib/widgets/layout/grid-row/grid-row-widget-view.component.ts","../../../../libs/platform/widgets/src/lib/widgets/layout/grid-row/grid-row-widget-print.component.ts","../../../../libs/platform/widgets/src/lib/widgets/layout/grid-row/grid-row-widget-designer.component.ts","../../../../libs/platform/widgets/src/lib/widgets/layout/grid-row/grid-row-widget.config.ts","../../../../libs/platform/widgets/src/lib/widgets/layout/text-block/text-block-widget-view.component.ts","../../../../libs/platform/widgets/src/lib/widgets/layout/text-block/text-block-widget.config.ts","../../../../libs/platform/widgets/src/lib/widgets.module.ts","../../../../libs/platform/widgets/src/acorex-platform-widgets.ts"],"sourcesContent":["import { AXBadgeModule } from '@acorex/components/badge';\nimport { AXButtonModule } from '@acorex/components/button';\nimport { AXClickEvent, AXStyleColorType, AXStyleLookType } from '@acorex/components/common';\nimport { AXDecoratorModule } from '@acorex/components/decorators';\nimport { AXLoadingModule } from '@acorex/components/loading';\nimport { AXPLayoutElementAPI, AXPWidgetComponent } from '@acorex/platform/layout/builder';\nimport { CommonModule } from '@angular/common';\nimport { ChangeDetectionStrategy, Component, computed, EventEmitter } from '@angular/core';\n@Component({\n selector: 'axp-button-widget',\n template: `\n <ax-button [disabled]=\"disabled()\" [color]=\"color()\" [look]=\"look()\" [text]=\"text()\">\n @if(icon() && text()){\n <ax-prefix\n ><ax-icon> <i class=\"fa-solid\" [class]=\"icon()\"></i> </ax-icon\n ></ax-prefix>\n } @else if(icon() && !text()) {\n <ax-icon> <i class=\"fa-solid\" [class]=\"icon()\"></i> </ax-icon>\n } @if(loading()){\n <ax-loading> </ax-loading>\n }\n </ax-button>\n `,\n standalone: true,\n changeDetection: ChangeDetectionStrategy.OnPush,\n imports: [CommonModule, AXButtonModule, AXLoadingModule, AXDecoratorModule, AXBadgeModule],\n})\nexport class AXPButtonWidgetViewComponent extends AXPWidgetComponent<any> {\n protected disabled = computed<boolean>(() => this.options()['disabled']);\n protected color = computed<AXStyleColorType>(() => this.options()['color']?.id ?? 'primary');\n protected look = computed<AXStyleLookType>(() => this.options()['look']?.id ?? 'solid');\n protected text = computed<string | undefined>(() => this.options()['text']);\n protected loading = computed<boolean>(() => this.options()['loading'] ?? false);\n protected icon = computed<string | undefined>(() => this.options()['icon']);\n\n public onClick = new EventEmitter<AXClickEvent>();\n\n protected handleClick(e: AXClickEvent) {\n this.onClick.emit(e);\n }\n\n override api(): AXPLayoutElementAPI {\n return {\n onClick: this.onClick,\n };\n }\n}\n","import { AXPWidgetPropertyGroup } from \"@acorex/platform/layout/builder\"\n\nexport const AXP_STYLING_PROPERTY_GROUP: AXPWidgetPropertyGroup = {\n name: \"styling\",\n order: 1,\n title: \"Styling\"\n}\n\nexport const AXP_DATA_PROPERTY_GROUP: AXPWidgetPropertyGroup = {\n name: \"data\",\n order: 3,\n title: \"Data\"\n}\n\nexport const AXP_BEHAVIOR_PROPERTY_GROUP: AXPWidgetPropertyGroup = {\n name: \"behavior\",\n order: 2,\n title: \"Behavior\"\n}\n\n\nexport const AXP_WIDGET_PROPERTY_GROUP: AXPWidgetPropertyGroup = {\n name: \"widget\",\n order: 0,\n title: \"Widget\"\n}","import { AXPWidgetProperty, AXPWidgetsCatalog } from \"@acorex/platform/layout/builder\";\nimport { AXP_DATA_PROPERTY_GROUP } from \"./groups\";\n\nexport const AXP_DATA_SOURCE_PROPERTY: AXPWidgetProperty = {\n name: 'dataSource',\n title: 'Data Source',\n group: AXP_DATA_PROPERTY_GROUP,\n schema: {\n dataType: 'object',\n interface: {\n name: 'dataSource',\n path: 'options.dataSource',\n type: AXPWidgetsCatalog.select,\n options: {\n dataSource: \"{{ methods.getDataSourceNames() }}\",\n hasClearButton: true,\n },\n },\n },\n visible: true,\n};","import { AXPWidgetProperty, AXPWidgetsCatalog, createStringProperty } from '@acorex/platform/layout/builder';\nimport { AXP_STYLING_PROPERTY_GROUP, AXP_WIDGET_PROPERTY_GROUP } from './groups';\n\n\nexport const AXP_NAME_PROPERTY = createStringProperty({\n name: 'name',\n title: 'Name',\n group: AXP_WIDGET_PROPERTY_GROUP,\n})\n\nexport const AXP_THEME_PROPERTY: AXPWidgetProperty = {\n name: 'theme',\n title: 'Theme',\n group: AXP_STYLING_PROPERTY_GROUP,\n schema: {\n dataType: 'string',\n defaultValue: { id: 'default' },\n interface: {\n name: 'theme',\n path: 'options.theme',\n type: AXPWidgetsCatalog.select,\n options: {\n hasClearButton: false,\n dataSource: [\n {\n id: 'default',\n title: 'Default',\n },\n {\n id: 'light',\n title: 'Light',\n },\n {\n id: 'dark',\n title: 'Dark',\n },\n ],\n },\n },\n },\n visible: true,\n};\n\nexport const AXP_DIRECTION_PROPERTY: AXPWidgetProperty = {\n name: 'direction',\n title: 'Direction',\n group: AXP_STYLING_PROPERTY_GROUP,\n schema: {\n dataType: 'string',\n defaultValue: { id: 'horizontal' },\n interface: {\n name: 'direction',\n path: 'options.direction',\n type: AXPWidgetsCatalog.select,\n options: {\n hasClearButton: false,\n dataSource: [\n {\n id: 'horizontal',\n title: 'Horizontal',\n },\n {\n id: 'vertical',\n title: 'Vertical',\n },\n ],\n },\n },\n },\n visible: true,\n};\n\nexport const AXP_COLOR_PROPERTY: AXPWidgetProperty = {\n name: 'color',\n title: 'Color',\n group: AXP_STYLING_PROPERTY_GROUP,\n schema: {\n dataType: 'string',\n interface: {\n path: 'options.color',\n options: {\n hasClearButton: true,\n },\n type: AXPWidgetsCatalog.color,\n },\n },\n visible: true,\n};\n\nexport const AXP_FONT_SIZE_PROPERTY: AXPWidgetProperty = {\n name: 'fontSize',\n title: 'Font Size',\n group: AXP_STYLING_PROPERTY_GROUP,\n schema: {\n dataType: 'string',\n defaultValue: '12px',\n interface: {\n name: 'fontSize',\n path: 'options.fontSize',\n type: AXPWidgetsCatalog.text,\n },\n },\n visible: true,\n};\n\n\n\nexport const AXP_BG_COLOR_PROPERTY: AXPWidgetProperty = {\n name: 'backgroundColor',\n title: 'Background Color',\n group: AXP_STYLING_PROPERTY_GROUP,\n schema: {\n dataType: 'string',\n interface: {\n path: 'options.backgroundColor',\n options: {\n hasClearButton: true,\n },\n type: AXPWidgetsCatalog.color,\n },\n },\n visible: true,\n};\n","import { AX_STYLE_COLOR_TYPES, AX_STYLE_LOOK_TYPES } from '@acorex/components/common';\nimport {\n AXPWidgetProperty,\n AXPWidgetsCatalog,\n createBooleanProperty,\n createSelectProperty,\n createStringProperty,\n} from '@acorex/platform/layout/builder';\nimport { AXP_BEHAVIOR_PROPERTY_GROUP, AXP_DATA_PROPERTY_GROUP, AXP_STYLING_PROPERTY_GROUP } from './groups';\n\nexport const AXP_VALIDATION_PROPERTY: AXPWidgetProperty = {\n name: 'validationRules',\n title: 'Validation Rules',\n group: AXP_DATA_PROPERTY_GROUP,\n schema: {\n dataType: 'array',\n defaultValue: [],\n interface: {\n type: AXPWidgetsCatalog.text,\n path: 'validationRules',\n },\n },\n visible: true,\n};\n\nexport const AXP_CONTENT_PROPERTY = createStringProperty({\n name: 'content',\n title: 'Content',\n path: 'options.content',\n group: AXP_DATA_PROPERTY_GROUP,\n});\n\nexport const AXP_PLACEHOLDER_PROPERTY = createStringProperty({\n name: 'placeholder',\n title: 'Placeholder',\n path: 'options.placeholder',\n group: AXP_BEHAVIOR_PROPERTY_GROUP,\n});\n\nexport const AXP_DATA_PATH_PROPERTY = createStringProperty({\n name: 'path',\n title: 'Data Path',\n group: AXP_DATA_PROPERTY_GROUP,\n});\n\nexport const AXP_DISABLED_PROPERTY = createBooleanProperty({\n name: 'disabled',\n title: 'Disabled',\n path: 'options.disabled',\n group: AXP_BEHAVIOR_PROPERTY_GROUP,\n});\n\nexport const AXP_READONLY_PROPERTY = createBooleanProperty({\n name: 'readonly',\n title: 'Readonly',\n path: 'options.readonly',\n group: AXP_BEHAVIOR_PROPERTY_GROUP,\n});\n\nexport const AXP_ALLOW_MULTIPLE_PROPERTY = createBooleanProperty({\n name: 'multiple',\n title: 'Multiple',\n path: 'options.multiple',\n group: AXP_BEHAVIOR_PROPERTY_GROUP,\n});\n\nexport const AXP_HAS_LABEL_PROPERTY = createBooleanProperty({\n name: 'hasLabel',\n title: 'Label',\n path: 'options.hasLabel',\n group: AXP_BEHAVIOR_PROPERTY_GROUP,\n defaultValue: true,\n});\n\nexport const AXP_HAS_ICON_PROPERTY = createBooleanProperty({\n name: 'hasIcon',\n title: 'Icon',\n path: 'options.hasIcon',\n group: AXP_BEHAVIOR_PROPERTY_GROUP,\n defaultValue: true,\n});\n\nexport const AXP_ICON_PROPERTY = createStringProperty({\n name: 'icon',\n title: 'Icon Name',\n group: AXP_BEHAVIOR_PROPERTY_GROUP,\n path: 'options.icon',\n});\n\nexport const AXP_IS_LOADING_PROPERTY = createBooleanProperty({\n name: 'loading',\n title: 'Is Loading',\n group: AXP_BEHAVIOR_PROPERTY_GROUP,\n path: 'options.loading',\n});\n\nexport const AXP_HAS_CLEAR_BUTTON_PROPERTY = createBooleanProperty({\n name: 'hasClearButton',\n title: 'Clear Button',\n path: 'options.hasClearButton',\n group: AXP_BEHAVIOR_PROPERTY_GROUP,\n defaultValue: true,\n});\n\nexport const AXP_HAS_COPY_ICON_PROPERTY = createBooleanProperty({\n name: 'hasCopyIcon',\n title: 'Copy Icon',\n path: 'options.hasCopyIcon',\n group: AXP_BEHAVIOR_PROPERTY_GROUP,\n defaultValue: true,\n});\n\nexport const AXP_HAS_EYE_ICON_PROPERTY = createBooleanProperty({\n name: 'hasEyeIcon',\n title: 'Eye Icon',\n path: 'options.hasEyeIcon',\n group: AXP_BEHAVIOR_PROPERTY_GROUP,\n defaultValue: true,\n});\n\nexport const AXP_DOWNLOADABLE_PROPERTY = createBooleanProperty({\n name: 'downloadable',\n title: 'Downloadable',\n path: 'options.downloadable',\n group: AXP_BEHAVIOR_PROPERTY_GROUP,\n defaultValue: true,\n});\n\n// Converted with createStringProperty\nexport const AXP_TRULY_TEXT_PROPERTY = createStringProperty({\n name: 'trulyText',\n title: 'Truly Text',\n path: 'options.trulyText',\n group: AXP_BEHAVIOR_PROPERTY_GROUP,\n});\n\nexport const AXP_FALSY_TEXT_PROPERTY = createStringProperty({\n name: 'falsyText',\n title: 'Falsy Text',\n path: 'options.falsyText',\n group: AXP_BEHAVIOR_PROPERTY_GROUP,\n});\n\nexport const AXP_TEXT_PROPERTY = createStringProperty({\n name: 'text',\n title: 'Text',\n path: 'options.text',\n group: AXP_BEHAVIOR_PROPERTY_GROUP,\n});\n\nexport const AXP_TITLE_PROPERTY = createStringProperty({\n name: 'title',\n title: 'Title',\n path: 'options.title',\n group: AXP_BEHAVIOR_PROPERTY_GROUP,\n});\n\nexport const AXP_LABEL_PROPERTY = createStringProperty({\n name: 'label',\n title: 'Label',\n path: 'options.label',\n group: AXP_BEHAVIOR_PROPERTY_GROUP,\n defaultValue: 'Sample Label',\n});\n\nexport const AXP_VALUE_FIELD_PROPERTY = createStringProperty({\n name: 'valueField',\n title: 'Value Field',\n path: 'options.valueField',\n group: AXP_DATA_PROPERTY_GROUP,\n});\n\nexport const AXP_TEXT_FIELD_PROPERTY = createStringProperty({\n name: 'textField',\n title: 'Text Field',\n path: 'options.textField',\n group: AXP_DATA_PROPERTY_GROUP,\n});\n\nexport const AXP_DESCRIPTION_PROPERTY = createStringProperty({\n name: 'description',\n title: 'Description',\n path: 'options.description',\n group: AXP_BEHAVIOR_PROPERTY_GROUP,\n});\n\nexport const AXP_STYLE_COLOR_PROPERTY = createSelectProperty({\n name: 'color',\n title: 'Color',\n dataSource: AX_STYLE_COLOR_TYPES,\n defaultValue: 'primary',\n path: 'options.color',\n group: AXP_STYLING_PROPERTY_GROUP,\n});\n\nexport const AXP_STYLE_LOOK_PROPERTY = createSelectProperty({\n name: 'look',\n title: 'Look',\n dataSource: AX_STYLE_LOOK_TYPES,\n defaultValue: 'solid',\n path: 'options.look',\n group: AXP_STYLING_PROPERTY_GROUP,\n});\n\nexport const AXP_DATE_FORMAT_PROPERTY = createSelectProperty({\n name: 'format',\n title: 'Format',\n dataSource: [\n { id: 'date', title: 'Date' },\n { id: 'datetime', title: 'DateTime' },\n { id: 'time', title: 'Time' },\n ],\n defaultValue: { id: 'date', title: 'date' },\n path: 'options.format',\n group: AXP_BEHAVIOR_PROPERTY_GROUP,\n});\n\nexport function booleanDefaultProperty(defaultValue: boolean = false): AXPWidgetProperty {\n return {\n name: 'defaultValue',\n title: 'Default Value',\n group: AXP_DATA_PROPERTY_GROUP,\n schema: {\n dataType: 'boolean',\n defaultValue: defaultValue,\n interface: {\n name: 'defaultValue',\n path: 'defaultValue',\n type: AXPWidgetsCatalog.toggle,\n },\n },\n visible: true,\n };\n}\n\nexport function plainTextDefaultProperty(): AXPWidgetProperty {\n return {\n name: 'defaultValue',\n title: 'Default Value',\n group: AXP_DATA_PROPERTY_GROUP,\n schema: {\n dataType: 'string',\n interface: {\n name: 'defaultValue',\n path: 'defaultValue',\n type: AXPWidgetsCatalog.text,\n },\n },\n visible: true,\n };\n}\n\nexport function largeTextDefaultProperty(): AXPWidgetProperty {\n return {\n name: 'defaultValue',\n title: 'Default Value',\n group: AXP_DATA_PROPERTY_GROUP,\n schema: {\n dataType: 'string',\n interface: {\n name: 'defaultValue',\n path: 'defaultValue',\n type: AXPWidgetsCatalog.largeText,\n },\n },\n visible: true,\n };\n}\n\nexport function numberDefaultProperty(): AXPWidgetProperty {\n return {\n name: 'defaultValue',\n title: 'Default Value',\n group: AXP_DATA_PROPERTY_GROUP,\n schema: {\n dataType: 'number',\n interface: {\n name: 'defaultValue',\n path: 'defaultValue',\n type: AXPWidgetsCatalog.number,\n },\n },\n visible: true,\n };\n}\n","import { AXPWidgetProperty, AXPWidgetPropertyGroup, AXPWidgetsCatalog, cloneProperty } from '@acorex/platform/layout/builder';\n\n\nexport const AXP_LAYOUT_GRID_PROPERTY_GROUP: AXPWidgetPropertyGroup = {\n name: \"grid\",\n order: 1,\n title: \"Grid Layout\"\n}\n\nexport const AXP_LAYOUT_FLEX_PROPERTY_GROUP: AXPWidgetPropertyGroup = {\n name: \"flex\",\n order: 1,\n title: \"Flex Layout\"\n}\n\nexport const AXP_LAYOUT_GAP_PROPERTY: AXPWidgetProperty = {\n name: 'gap',\n title: 'Gap',\n group: AXP_LAYOUT_GRID_PROPERTY_GROUP,\n schema: {\n dataType: 'number',\n defaultValue: 2,\n interface: {\n name: 'gap',\n path: 'options.gap',\n type: AXPWidgetsCatalog.number,\n options: {\n minValue: 0,\n maxValue: 12,\n },\n },\n },\n visible: true,\n};\n\nexport const AXP_LAYOUT_COL_SPAN_PROPERTY: AXPWidgetProperty = {\n name: 'colSpan',\n title: 'Column Span',\n group: AXP_LAYOUT_GRID_PROPERTY_GROUP,\n schema: {\n dataType: 'number',\n interface: {\n name: 'colSpan',\n path: 'options.colSpan',\n type: AXPWidgetsCatalog.number,\n options: {\n minValue: 0,\n maxValue: 12,\n },\n },\n },\n visible: true,\n};\n\nexport const AXP_LAYOUT_COL_START_PROPERTY: AXPWidgetProperty = {\n name: 'colStart',\n title: 'Column Start',\n group: AXP_LAYOUT_GRID_PROPERTY_GROUP,\n schema: {\n dataType: 'number',\n interface: {\n name: 'colStart',\n path: 'options.colStart',\n type: AXPWidgetsCatalog.number,\n options: {\n minValue: 1,\n maxValue: 13,\n },\n },\n },\n visible: true,\n};\n\nexport const AXP_LAYOUT_COL_END_PROPERTY: AXPWidgetProperty = {\n name: 'colEnd',\n title: 'Column End',\n group: AXP_LAYOUT_GRID_PROPERTY_GROUP,\n schema: {\n dataType: 'number',\n interface: {\n name: 'colEnd',\n path: 'options.colEnd',\n type: AXPWidgetsCatalog.number,\n options: {\n minValue: 1,\n maxValue: 13,\n },\n },\n },\n visible: true,\n};\n\nexport const AXP_LAYOUT_COLUMNS_PROPERTY: AXPWidgetProperty = {\n name: 'cols',\n title: 'Columns',\n group: AXP_LAYOUT_GRID_PROPERTY_GROUP,\n schema: {\n dataType: 'number',\n defaultValue: 1,\n interface: {\n name: 'cols',\n path: 'options.cols',\n type: AXPWidgetsCatalog.number,\n options: {\n minValue: 1,\n maxValue: 12,\n },\n },\n },\n visible: true,\n};\n\nexport const AXP_LAYOUT_ROWS_PROPERTY: AXPWidgetProperty = {\n name: 'rows',\n title: 'Rows',\n group: AXP_LAYOUT_GRID_PROPERTY_GROUP,\n schema: {\n dataType: 'number',\n defaultValue: 1,\n interface: {\n name: 'rows',\n path: 'options.rows',\n type: AXPWidgetsCatalog.number,\n options: {\n minValue: 1,\n maxValue: 100,\n },\n },\n },\n visible: true,\n};\n\n\n\nexport const AXP_LAYOUT_FLEX_JUSTIFY_PROPERTY: AXPWidgetProperty = {\n name: 'flexJustifyContent',\n title: 'Justify Content',\n group: AXP_LAYOUT_FLEX_PROPERTY_GROUP,\n schema: {\n dataType: 'string',\n defaultValue: { id: 'ax-justify-normal' },\n interface: {\n name: 'flexJustifyContent',\n path: 'options.flexJustifyContent',\n type: AXPWidgetsCatalog.select,\n options: {\n hasClearButton: false,\n dataSource: [\n { id: 'ax-justify-normal', title: 'Normal' },\n { id: 'ax-justify-start', title: 'Start' },\n { id: 'ax-justify-end', title: 'End' },\n { id: 'ax-justify-center', title: 'Center' },\n { id: 'ax-justify-between', title: 'Between' },\n { id: 'ax-justify-around', title: 'Around' },\n { id: 'ax-justify-evenly', title: 'Evenly' },\n { id: 'ax-justify-stretch', title: 'Stretch' },\n ],\n },\n },\n },\n visible: true,\n};\n\nexport const AXP_LAYOUT_FLEX_ALIGN_PROPERTY: AXPWidgetProperty = {\n name: 'flexAlignItems',\n title: 'Align Items',\n group: AXP_LAYOUT_FLEX_PROPERTY_GROUP,\n schema: {\n dataType: 'string',\n defaultValue: { id: 'ax-items-start' },\n interface: {\n name: 'flexAlignItems',\n path: 'options.flexAlignItems',\n type: AXPWidgetsCatalog.select,\n options: {\n hasClearButton: false,\n dataSource: [\n { id: 'ax-items-start', title: 'Start' },\n { id: 'ax-items-end', title: 'End' },\n { id: 'ax-items-center', title: 'Center' },\n { id: 'ax-items-baseline', title: 'Baseline' },\n { id: 'ax-items-stretch', title: 'Stretch' },\n ],\n },\n },\n },\n visible: true,\n};\n\n\nexport const AXP_LAYOUT_FLEX_DIRECTION_PROPERTY: AXPWidgetProperty = {\n name: 'flexDirection',\n title: 'Direction',\n group: AXP_LAYOUT_FLEX_PROPERTY_GROUP,\n schema: {\n dataType: 'string',\n defaultValue: { id: 'ax-flex-row' },\n interface: {\n name: 'flexDirection',\n path: 'options.flexDirection',\n type: AXPWidgetsCatalog.select,\n options: {\n hasClearButton: false,\n dataSource: [\n { id: 'ax-flex-row', title: 'Row' },\n { id: 'ax-flex-row-reverse', title: 'Row Reverse' },\n { id: 'ax-flex-col', title: 'Column' },\n { id: 'ax-flex-col-reverse', title: 'Column Reverse' }\n ],\n },\n },\n },\n visible: true,\n};\n\nexport const AXP_LAYOUT_FLEX_WRAP_PROPERTY: AXPWidgetProperty = {\n name: 'flexWrap',\n title: 'Wrap',\n group: AXP_LAYOUT_FLEX_PROPERTY_GROUP,\n schema: {\n dataType: 'string',\n defaultValue: { id: 'ax-flex-nowrap' },\n interface: {\n name: 'flexWrap',\n path: 'options.flexWrap',\n type: AXPWidgetsCatalog.select,\n options: {\n hasClearButton: false,\n dataSource: [\n { id: 'ax-flex-nowrap', title: 'No Wrap' },\n { id: 'ax-flex-wrap', title: 'Wrap' },\n { id: 'ax-flex-wrap-reverse', title: 'Wrap Reverse' }\n ],\n },\n },\n },\n visible: true,\n};\n\nexport const AXP_LAYOUT_ALIGN_CONTENT_PROPERTY: AXPWidgetProperty = {\n name: 'flexAlignContent',\n title: 'Align Content',\n group: AXP_LAYOUT_FLEX_PROPERTY_GROUP,\n schema: {\n dataType: 'string',\n defaultValue: { id: 'ax-content-start' },\n interface: {\n name: 'flexAlignContent',\n path: 'options.flexAlignContent',\n type: AXPWidgetsCatalog.select,\n options: {\n hasClearButton: false,\n dataSource: [\n { id: 'ax-content-start', title: 'Start' },\n { id: 'ax-content-end', title: 'End' },\n { id: 'ax-content-center', title: 'Center' },\n { id: 'ax-content-between', title: 'Between' },\n { id: 'ax-content-around', title: 'Around' },\n { id: 'ax-content-stretch', title: 'Stretch' },\n ],\n },\n },\n },\n visible: true,\n};\n\n\nexport const AXP_LAYOUT_GRID_PROPERTIES = [\n AXP_LAYOUT_GAP_PROPERTY,\n AXP_LAYOUT_COLUMNS_PROPERTY,\n AXP_LAYOUT_ROWS_PROPERTY\n]\n\nexport const AXP_LAYOUT_GRID_ROW_PROPERTIES = [\n AXP_LAYOUT_GAP_PROPERTY,\n cloneProperty(AXP_LAYOUT_COLUMNS_PROPERTY, { schema: { defaultValue: 12 } }),\n]\n\nexport const AXP_LAYOUT_GRID_ITEM_PROPERTIES = [\n AXP_LAYOUT_COL_SPAN_PROPERTY,\n AXP_LAYOUT_COL_START_PROPERTY,\n AXP_LAYOUT_COL_END_PROPERTY,\n]\n\nexport const AXP_LAYOUT_FLEX_PROPERTIES = [\n AXP_LAYOUT_FLEX_DIRECTION_PROPERTY,\n AXP_LAYOUT_FLEX_JUSTIFY_PROPERTY,\n AXP_LAYOUT_FLEX_ALIGN_PROPERTY,\n AXP_LAYOUT_GAP_PROPERTY,\n AXP_LAYOUT_FLEX_WRAP_PROPERTY,\n]","import { AXPWidgetProperty, AXPWidgetsCatalog } from '@acorex/platform/layout/builder';\nimport { AXP_STYLING_PROPERTY_GROUP } from './groups';\n\nexport const AXP_TABLE_COLUMN_WIDTH_PROPERTY: AXPWidgetProperty = {\n name: 'width',\n title: 'Width',\n group: AXP_STYLING_PROPERTY_GROUP,\n schema: {\n dataType: 'string',\n defaultValue: '300px',\n interface: {\n name: 'width',\n path: 'options.width',\n type: AXPWidgetsCatalog.text,\n },\n },\n visible: false,\n};\nexport const AXP_TABLE_COLUMN_HEIGHT_PROPERTY: AXPWidgetProperty = {\n name: 'height',\n title: 'Height',\n group: AXP_STYLING_PROPERTY_GROUP,\n schema: {\n dataType: 'string',\n defaultValue: '300px',\n interface: {\n name: 'height',\n path: 'options.height',\n type: AXPWidgetsCatalog.text,\n },\n },\n visible: false,\n};\n","import { AXP_WIDGETS_ACTION_GROUP, AXPWidgetConfig, cloneProperty } from '@acorex/platform/layout/builder';\nimport { AXP_DISABLED_PROPERTY, AXP_ICON_PROPERTY, AXP_IS_LOADING_PROPERTY, AXP_NAME_PROPERTY, AXP_STYLE_COLOR_PROPERTY, AXP_STYLE_LOOK_PROPERTY, AXP_TEXT_PROPERTY } from '../../../properties';\n\nexport const AXPButtonWidget: AXPWidgetConfig = {\n name: 'button-action',\n title: 'Button',\n description: 'Triggers customizable actions',\n icon: 'fa-solid fa-play',\n group: AXP_WIDGETS_ACTION_GROUP,\n type: 'action',\n properties: [\n AXP_NAME_PROPERTY,\n AXP_DISABLED_PROPERTY,\n cloneProperty(AXP_TEXT_PROPERTY, { schema: { defaultValue: 'Click Here' } }),\n AXP_STYLE_COLOR_PROPERTY,\n AXP_STYLE_LOOK_PROPERTY,\n AXP_ICON_PROPERTY,\n AXP_IS_LOADING_PROPERTY\n ],\n components: {\n designer: {\n component: () => import('./button-widget-designer.component').then((c) => c.AXPButtonWidgetDesignerComponent),\n },\n view: {\n component: () => import('./button-widget-view.component').then((c) => c.AXPButtonWidgetViewComponent),\n },\n edit: {\n component: () => import('./button-widget-view.component').then((c) => c.AXPButtonWidgetViewComponent),\n },\n },\n};\n\ndeclare module '@acorex/platform/layout/builder' {\n interface AXPWidgetTypesMap {\n buttonAction: 'button-action';\n }\n}\n","import { AXCheckBoxModule } from '@acorex/components/check-box';\nimport { CommonModule } from '@angular/common';\nimport { ChangeDetectionStrategy, Component, computed } from '@angular/core';\nimport { FormsModule } from '@angular/forms';\nimport { AXPWidgetComponent } from '@acorex/platform/layout/builder';\nimport { AXLabelModule } from '@acorex/components/label';\n\n@Component({\n selector: 'axp-checkbox-widget-edit',\n template: `\n <ax-check-box [ngModel]=\"this.getValue()\" [disabled]=\"disabled()\" [readonly]=\"readonly()\" (onValueChanged)=\"handleValueChanged($event)\"> \n @if(label())\n {\n <ax-label >{{label()}}</ax-label>\n }\n </ax-check-box>\n `,\n standalone: true,\n changeDetection: ChangeDetectionStrategy.OnPush,\n imports: [CommonModule, AXCheckBoxModule, FormsModule, AXLabelModule],\n})\nexport class AXPCheckBoxWidgetEditComponent extends AXPWidgetComponent<boolean | null> {\n\n protected negative = computed<boolean>(() => this.options()[\"negative\"] as boolean);\n protected trulyText = computed<boolean>(() => this.options()[\"trulyText\"] as boolean);\n protected falsyText = computed<boolean>(() => this.options()[\"falsyText\"] as boolean);\n protected disabled = computed<boolean>(() => this.options()[\"disabled\"] as boolean);\n protected readonly = computed<boolean>(() => this.options()[\"readonly\"] as boolean);\n protected label = computed<string>(() => this.options()[\"label\"] as string);\n\n}\n","import { AXPWidgetConfig, AXP_WIDGETS_EDITOR_GROUP } from '@acorex/platform/layout/builder';\nimport {\n AXP_DATA_PATH_PROPERTY,\n AXP_DISABLED_PROPERTY,\n AXP_LABEL_PROPERTY,\n AXP_READONLY_PROPERTY,\n AXP_VALIDATION_PROPERTY,\n booleanDefaultProperty,\n} from '../../../properties';\nimport { AXP_NAME_PROPERTY } from '../../../properties/general.props';\n\nexport const AXPCheckBoxWidget: AXPWidgetConfig = {\n name: 'checkbox-editor',\n title: 'Check Box',\n group: AXP_WIDGETS_EDITOR_GROUP,\n description: 'Selects multiple options via checkboxes',\n icon: 'fa-solid fa-square-check',\n type: 'editor',\n properties: [\n AXP_NAME_PROPERTY,\n AXP_DATA_PATH_PROPERTY,\n AXP_LABEL_PROPERTY,\n AXP_READONLY_PROPERTY,\n AXP_DISABLED_PROPERTY,\n AXP_VALIDATION_PROPERTY,\n booleanDefaultProperty()\n ],\n components: {\n designer: {\n component: () => import('./checkbox-widget-designer.component').then((c) => c.AXPCheckBoxWidgetDesignerComponent),\n },\n view: {\n component: () => import('./checkbox-widget-view.component').then((c) => c.AXPCheckBoxWidgetViewComponent),\n },\n edit: {\n component: () => import('./checkbox-widget-edit.component').then((c) => c.AXPCheckBoxWidgetEditComponent),\n },\n print: {\n component: () => import('./checkbox-widget-edit.component').then((c) => c.AXPCheckBoxWidgetEditComponent),\n },\n column: {\n component: () => import('./checkbox-widget-column.component').then((c) => c.AXPCheckBoxWidgetColumnComponent),\n },\n filter: {\n component: () => import('./checkbox-widget-edit.component').then((c) => c.AXPCheckBoxWidgetEditComponent),\n },\n },\n};\n\ndeclare module '@acorex/platform/layout/builder' {\n interface AXPWidgetTypesMap {\n checkbox: 'checkbox-editor';\n }\n}\n","import { AXPClipBoardService } from '@acorex/platform/common';\nimport { AXPColumnWidgetComponent } from '@acorex/platform/layout/builder';\nimport { CommonModule } from '@angular/common';\nimport { ChangeDetectionStrategy, Component, inject } from '@angular/core';\nimport { AXPContactDataType } from './contact.type';\n@Component({\n template: ` <div class=\"ax-flex ax-justify-start ax-items-center ax-gap-2 ax-group ax-w-fit\">\n <span class=\"ax-truncate\" [title]=\"getText('line')\">{{ getText('comma') }}</span>\n <i\n (click)=\"clipboard.copy('Contact', rawValue)\"\n class=\"fa-solid fa-copy ax-text-neutral-400 dark:hover:ax-text-neutral-100 hover:ax-text-neutral-900 group-hover:ax-visible ax-invisible\"\n ></i>\n </div>`,\n standalone: true,\n changeDetection: ChangeDetectionStrategy.OnPush,\n imports: [CommonModule],\n inputs: ['rawValue'],\n})\nexport class AXPContactWidgetColumnComponent extends AXPColumnWidgetComponent<any> {\n protected clipboard = inject(AXPClipBoardService);\n\n protected getText(seperator: 'line' | 'comma') {\n const sep = seperator === 'comma' ? ',' : '\\\\n';\n if (typeof this.rawValue === 'string') return this.rawValue;\n else {\n return this.rawValue?.map((item: AXPContactDataType) => this.itemToValue(item)).join(sep);\n }\n }\n private itemToValue = (item: AXPContactDataType | string): string => {\n if (typeof item === 'object') return item?.value ?? '';\n else return item;\n };\n}\n","import { AXButtonModule } from '@acorex/components/button';\nimport { AXDecoratorModule } from '@acorex/components/decorators';\nimport { AXFormComponent, AXFormModule } from '@acorex/components/form';\nimport { AXBasePageComponent } from '@acorex/components/page';\nimport { AXTextBoxModule } from '@acorex/components/text-box';\nimport { AXTranslationModule } from '@acorex/core/translation';\nimport { AXValidationModule } from '@acorex/core/validation';\nimport { CommonModule } from '@angular/common';\nimport { Component } from '@angular/core';\nimport { FormsModule } from '@angular/forms';\n\n@Component({\n selector: 'popup-component',\n standalone: true,\n template: `\n <ax-header>\n <ax-suffix> </ax-suffix>\n </ax-header>\n <div class=\"ax-p-6\">\n <ax-form #form>\n <ax-form-field>\n <ax-text-box [(ngModel)]=\"value\" type=\"text\" name=\"lable\" placeholder=\"Enter Lable ...\" class=\"ax-w-10/12\">\n <ax-validation-rule message=\"{{ 'validation.messages.required' | translate | async }}\" rule=\"required\"> </ax-validation-rule>\n </ax-text-box>\n </ax-form-field>\n </ax-form>\n </div>\n <ax-footer>\n <ax-suffix>\n <ax-button [text]=\"'apply' | translate | async\" color=\"primary\" (onClick)=\"handleClose(form)\"></ax-button>\n </ax-suffix>\n </ax-footer>\n `,\n imports: [AXTranslationModule, CommonModule, AXTextBoxModule, AXDecoratorModule, AXButtonModule, FormsModule, AXValidationModule, AXFormModule],\n})\nexport class popupComponent extends AXBasePageComponent {\n protected value!: string;\n constructor() {\n super();\n }\n\n protected handleClose(form: AXFormComponent) {\n form.validate().then((res) => {\n if (res.result) {\n this.close({ value: this.value });\n }\n });\n }\n}\n","import { AXButtonModule } from '@acorex/components/button';\nimport { AXDataSource, AXValueChangedEvent } from '@acorex/components/common';\nimport { AXDecoratorModule } from '@acorex/components/decorators';\nimport { AXFormModule } from '@acorex/components/form';\nimport { AXPopupConfig, AXPopupService } from '@acorex/components/popup';\nimport { AXSelectBoxModule } from '@acorex/components/select-box';\nimport { AXTextBoxModule } from '@acorex/components/text-box';\nimport { AXTranslationModule } from '@acorex/core/translation';\nimport { AXValidationModule, AXValidationService } from '@acorex/core/validation';\nimport { AXPValidationRules } from '@acorex/platform/core';\nimport { AXPWidgetComponent } from '@acorex/platform/layout/builder';\nimport { CommonModule } from '@angular/common';\nimport { ChangeDetectionStrategy, Component, HostBinding, Signal, computed, inject } from '@angular/core';\nimport { FormsModule } from '@angular/forms';\nimport { AXPContactDataType } from './contact.type';\nimport { popupComponent } from './popup-component';\n\n@Component({\n template: `<div class=\"ax-grid ax-grid-cols-12 ax-gap-4 ax-auto-cols-max\t\">\n @for(item of internalValue();track $index) {\n <ax-text-box\n [ngModel]=\"item.value\"\n (onValueChanged)=\"handleValueChange($event, $index)\"\n type=\"text\"\n name=\"value\"\n [placeholder]=\"placeholder()\"\n [ngClass]=\"generateClasses('value')\"\n [disabled]=\"disabled()\"\n >\n @for (validation of validationRules; track $index) {\n <ax-validation-rule\n [rule]=\"validation.rule\"\n [message]=\"validation.options?.message\"\n [options]=\"validation.options\"\n ></ax-validation-rule>\n } @if(type()==='email'){\n <ax-validation-rule rule=\"email\"></ax-validation-rule>\n }\n <ax-validation-rule rule=\"required\"></ax-validation-rule>\n </ax-text-box>\n @if(hasLabel()){\n <ax-select-box\n [dataSource]=\"dataSource\"\n [ngModel]=\"item.label\"\n [disabled]=\"disabled()\"\n (onValueChanged)=\"handleValueChange($event, $index)\"\n placeholder=\"{{ 'selectbox.popover.title' | translate | async }}\"\n name=\"label\"\n [ngClass]=\"generateClasses('label')\"\n >\n </ax-select-box>\n } @if(multiple()){\n <ax-button\n [disabled]=\"disabled()\"\n look=\"twotone\"\n color=\"danger\"\n (onClick)=\"deleteItem($index)\"\n class=\"ax-col-start-12 ax-col-end-13 ax-justify-self-end\"\n >\n <ax-icon icon=\"fa-regular fa-xmark\"></ax-icon>\n </ax-button>\n } } @if(multiple()){\n\n <ax-button\n [text]=\"internalValue().length == 0 ? 'Add New' : 'Add Another'\"\n [disabled]=\"disabled()\"\n look=\"twotone\"\n (onClick)=\"addItem()\"\n class=\"ax-col-start-8 ax-col-end-13 sm:ax-col-start-10 md:ax-col-start-9 lg:ax-col-start-10 xl:ax-col-start-10 \"\n >\n <ax-prefix>\n <ax-icon class=\"fa-solid fa-add\"></ax-icon>\n </ax-prefix>\n </ax-button>\n }\n </div> `,\n standalone: true,\n changeDetection: ChangeDetectionStrategy.OnPush,\n imports: [\n CommonModule,\n FormsModule,\n AXSelectBoxModule,\n AXFormModule,\n AXButtonModule,\n AXDecoratorModule,\n AXSelectBoxModule,\n AXTextBoxModule,\n AXValidationModule,\n AXTranslationModule,\n ],\n inputs: [],\n})\nexport class AXPContactWidgetEditComponent extends AXPWidgetComponent<\n string | string[] | AXPContactDataType | AXPContactDataType[] | undefined\n> {\n //properties\n protected type = computed<'link' | 'phone' | 'email'>(\n () => (this.options()['type']?.id as 'link' | 'phone' | 'email') ?? 'email'\n );\n protected labelList = computed<string[]>(() => this.options()['labelList'] || ['primary', 'secondary', 'Add New']);\n protected hasLabel = computed<boolean>(() => this.options()['hasLabel'] as boolean);\n protected multiple = computed<boolean>(() => this.options()['multiple'] as boolean);\n protected hasIcon = computed<boolean>(() => this.options()['hasIcon'] as boolean);\n protected disabled = computed<boolean>(() => this.options()['disabled'] as boolean);\n protected placeholder = computed<string>(\n () => (this.options()['placeholder'] as string) ?? `Enter ${this.type()} ...`\n );\n\n private format = computed<'object' | 'string'>(() => {\n if (this.hasIcon() || this.hasLabel()) {\n return 'object';\n } else {\n return 'string';\n }\n });\n\n protected internalValue: Signal<AXPContactDataType[]> = computed(() => this.valueToArray());\n\n constructor() {\n super();\n }\n private popup: AXPopupService = inject(AXPopupService);\n protected dataSource = new AXDataSource({\n pageSize: this.labelList().length,\n load: (e) => {\n return Promise.resolve({\n items: this.labelList().slice(e.skip, (e.skip ?? 0) + (e.take ?? 0)),\n total: this.labelList().length,\n });\n },\n byKey: (key) => {\n return Promise.resolve(this.labelList().find((i) => i === key));\n },\n });\n\n protected addItem() {\n const newValues: AXPContactDataType[] = [...this.internalValue(), this.emptyValue()];\n this.setValue(this.setFormatedValue(newValues));\n }\n\n protected deleteItem(deletedIndex: number) {\n const newValues = this.internalValue().filter((_, index) => index != deletedIndex);\n this.setValue(this.setFormatedValue(newValues));\n }\n protected async handleValueChange(e: AXValueChangedEvent, selectedIndex: number) {\n let { name, value, isUserInteraction } = e;\n if (isUserInteraction) {\n if (e.name === 'label') {\n if (e.value === 'Add New') {\n const options: AXPopupConfig = {\n title: 'Enter Label...',\n // header: false,\n // footer: true,\n size: 'sm',\n draggable: true,\n // hasBackdrop: true,\n // closeButton: true,\n // closeOnBackdropClick: true,\n };\n const newValue = await this.popup.open(popupComponent, { ...options }).then((e) => e.data);\n value = newValue.value;\n this.labelList().pop();\n this.labelList().push(value, 'Add New');\n this.dataSource.refresh();\n }\n }\n const newValues = this.internalValue().map((item, index) =>\n selectedIndex === index ? { ...item, [name as string]: value } : item\n );\n if (this.multiple()) {\n this.setValue(this.setFormatedValue(newValues));\n } else this.setValue(this.setFormatedValue(newValues[0]));\n }\n }\n protected generateClasses(element: 'value' | 'label'): string | any {\n const isValue = element === 'value';\n\n if (this.multiple()) {\n if (this.hasLabel()) {\n return isValue\n ? 'ax-col-start-1 ax-col-end-13 lg:ax-col-end-7'\n : 'ax-col-start-1 ax-col-end-11 lg:ax-col-start-7 lg:ax-col-end-12';\n } else {\n return isValue ? 'ax-col-start-1 ax-col-end-11 sm:ax-col-end-12 md:ax-col-end-12' : '';\n }\n } else {\n if (this.hasLabel()) {\n return isValue\n ? 'ax-col-start-1 ax-col-end-13 lg:ax-col-end-7'\n : 'ax-col-start-1 ax-col-end-13 lg:ax-col-start-7 lg:ax-col-end-13';\n } else {\n return isValue ? 'ax-col-start-1 ax-col-end-13' : '';\n }\n }\n }\n\n protected validationService = inject(AXValidationService);\n private _validationRules: AXPValidationRules = [];\n public get validationRules(): AXPValidationRules {\n return this._validationRules;\n }\n public set validationRules(v: AXPValidationRules) {\n this._validationRules = v;\n }\n private valueToArray(): AXPContactDataType[] {\n const value = this.getValue();\n if (Array.isArray(value)) {\n return value.map((item) => this.itemToArray(item));\n } else {\n return [this.itemToArray(value ?? '')];\n }\n }\n private itemToArray = (item: AXPContactDataType | string): AXPContactDataType => {\n if (typeof item === 'object')\n return {\n value: item?.value ?? '',\n label: this.hasLabel() ? item?.label || this.labelList()[0] : undefined,\n icon: this.hasIcon() ? item?.icon || this.chooseIcon() : undefined,\n };\n else\n return {\n value: item,\n label: this.hasLabel() ? this.labelList()[0] : undefined,\n icon: this.hasIcon() ? this.chooseIcon() : undefined,\n };\n };\n private emptyValue(): AXPContactDataType {\n return {\n value: '',\n };\n }\n\n setFormatedValue(\n items: AXPContactDataType | AXPContactDataType[]\n ): string | string[] | AXPContactDataType | AXPContactDataType[] {\n if (this.format() === 'string') {\n return Array.isArray(items) ? items.map((x) => x.value) : items.value;\n } else {\n return items;\n }\n }\n\n private chooseIcon = (): string => {\n switch (this.type()) {\n case 'email':\n return 'fa-link';\n case 'link':\n return 'fa-envelope';\n case 'phone':\n return 'fa-phone';\n default:\n return 'fa-info';\n }\n };\n\n @HostBinding('class')\n private get __class(): string {\n const cls: any = {};\n cls[`ax-block`] = true;\n cls[`ax-flex-1`] = true;\n return cls;\n }\n}\n","import { AXPWidgetComponent } from '@acorex/platform/layout/builder';\nimport { CommonModule } from '@angular/common';\nimport { ChangeDetectionStrategy, Component, inject } from '@angular/core';\n@Component({\n template: ``,\n standalone: true,\n changeDetection: ChangeDetectionStrategy.OnPush,\n imports: [CommonModule],\n inputs: []\n})\nexport class AXPContactWidgetPrintComponent extends AXPWidgetComponent<any> { }","import { AXBadgeModule } from '@acorex/components/badge';\nimport { AXDecoratorModule } from '@acorex/components/decorators';\nimport { AXPClipBoardService } from '@acorex/platform/common';\nimport { AXPWidgetComponent } from '@acorex/platform/layout/builder';\nimport { CommonModule } from '@angular/common';\nimport { ChangeDetectionStrategy, Component, computed, inject, Signal } from '@angular/core';\nimport { FormsModule } from '@angular/forms';\nimport { AXPContactDataType } from './contact.type';\n\n@Component({\n template: `\n @for(item of internalValue();track $index){ @let href = type() === 'link' ? item.value :\n type()==='phone'?'tel:'+item.value : 'mailto:'+ item.value ;\n <div class=\"ax-flex ax-gap-4 ax-items-center ax-justify-between ax-py-1\">\n <div class=\"ax-flex ax-gap-4 ax-group ax-items-center ax-justify-center ax-truncate\">\n @if(hasIcon()){\n <ax-icon class=\"fa-solid ax-text-neutral-400\" [class]=\"chooseIcon()\"> </ax-icon>\n }\n <a\n [href]=\"href\"\n [target]=\"'_blank'\"\n class=\"ax-truncate ax-text-blue-700 group-hover:!ax-text-primary-500 group-hover:ax-underline group-hover:ax-decoration-blue-700\"\n >{{ item.value }}</a\n >\n <span\n class=\"ax-text-neutral-400 ax-cursor-pointer ax-invisible group-hover:ax-visible hover:!ax-text-primary-500\"\n (click)=\"clipboard.copy(type(), item.value)\"\n >\n <i class=\"fa-solid fa-copy\"></i>\n </span>\n </div>\n @if(hasLabel()){\n <div><ax-badge color=\"primary\" [look]=\"'twotone'\" [text]=\"item.label ?? ''\"></ax-badge></div>\n }\n </div>\n }\n `,\n standalone: true,\n changeDetection: ChangeDetectionStrategy.OnPush,\n imports: [CommonModule, FormsModule, AXBadgeModule, AXDecoratorModule],\n inputs: [],\n})\nexport class AXPContactWidgetViewComponent extends AXPWidgetComponent<AXPContactDataType | string> {\n protected type = computed<'link' | 'phone' | 'email'>(() => this.options()['type'] ?? 'link');\n protected labelList = computed<string[]>(() => this.options()['labelList'] ?? ['primary', 'secondary']);\n protected hasLabel = computed<boolean>(() => (this.options()['hasLabel'] as boolean) ?? false);\n protected multiple = computed<boolean>(() => (this.options()['multiple'] as boolean) ?? false);\n protected hasIcon = computed<boolean>(() => (this.options()['hasIcon'] as boolean) ?? false);\n\n protected internalValue: Signal<AXPContactDataType[]> = computed(() => this.itemToArray());\n protected clipboard = inject(AXPClipBoardService);\n\n protected chooseIcon = (): string => {\n switch (this.type()) {\n case 'email':\n return 'fa-envelope';\n case 'link':\n return 'fa-link';\n case 'phone':\n return 'fa-phone';\n default:\n return 'fa-info';\n }\n };\n private itemToArray(): AXPContactDataType[] {\n const value = this.getValue();\n if (Array.isArray(value)) {\n return value.map((item) => this.correctItems(item));\n } else {\n return [this.correctItems(value)];\n }\n }\n private correctItems = (item: AXPContactDataType | string): AXPContactDataType => {\n if (typeof item === 'object')\n return {\n value: item?.value ?? '',\n label: this.hasLabel() ? item?.label || this.labelList()[0] : undefined,\n icon: this.hasIcon() ? item?.icon || this.chooseIcon() : undefined,\n };\n else\n return {\n value: item,\n label: this.hasLabel() ? this.labelList()[0] : undefined,\n icon: this.hasIcon() ? this.chooseIcon() : undefined,\n };\n };\n}\n","import { AXP_WIDGETS_EDITOR_GROUP, AXPWidgetConfig, AXPWidgetsCatalog } from '@acorex/platform/layout/builder';\nimport {\n AXP_ALLOW_MULTIPLE_PROPERTY,\n AXP_BEHAVIOR_PROPERTY_GROUP,\n AXP_DATA_PATH_PROPERTY,\n AXP_DISABLED_PROPERTY,\n AXP_HAS_ICON_PROPERTY,\n AXP_HAS_LABEL_PROPERTY,\n AXP_NAME_PROPERTY,\n AXP_VALIDATION_PROPERTY,\n} from '../../../properties';\nexport const AXPContactWidget: AXPWidgetConfig = {\n name: 'contact-editor',\n title: 'Contact',\n description: 'Inputs contact information',\n group: AXP_WIDGETS_EDITOR_GROUP,\n icon: 'fa-solid fa-address-book',\n type: 'editor',\n properties: [\n AXP_NAME_PROPERTY,\n AXP_DATA_PATH_PROPERTY,\n {\n name: 'type',\n title: 'Contact Type',\n group: AXP_BEHAVIOR_PROPERTY_GROUP,\n schema: {\n dataType: 'string',\n nullable: false,\n interface: {\n defaultValue: 'link',\n name: 'type',\n path: 'options.type',\n type: AXPWidgetsCatalog.select,\n options: {\n dataSource: ['link', 'email', 'phone'],\n },\n },\n },\n visible: true,\n },\n\n AXP_DISABLED_PROPERTY,\n AXP_VALIDATION_PROPERTY,\n AXP_ALLOW_MULTIPLE_PROPERTY,\n AXP_HAS_LABEL_PROPERTY,\n AXP_HAS_ICON_PROPERTY,\n ],\n components: {\n view: {\n component: () => import('./contact-widget-view.component').then((c) => c.AXPContactWidgetViewComponent),\n },\n edit: {\n component: () => import('./contact-widget-edit.component').then((c) => c.AXPContactWidgetEditComponent),\n },\n filter: {\n component: () => import('./contact-widget-filter.component').then((c) => c.AXPContactWidgetFilterComponent),\n },\n column: {\n component: () => import('./contact-widget-column.component').then((c) => c.AXPContactWidgetColumnComponent),\n },\n print: {\n component: () => import('./contact-widget-print.component').then((c) => c.AXPContactWidgetPrintComponent),\n },\n designer: {\n component: () => import('./contact-widget-edit.component').then((c) => c.AXPContactWidgetEditComponent),\n },\n },\n};\n\ndeclare module '@acorex/platform/layout/builder' {\n interface AXPWidgetTypesMap {\n contact: 'contact-editor';\n }\n}\n","import { AXDateTimeFormatter } from '@acorex/core/date-time';\nimport { AXPWidgetComponent } from '@acorex/platform/layout/builder';\nimport { CommonModule } from '@angular/common';\nimport { ChangeDetectionStrategy, Component, computed, inject } from '@angular/core';\n\n@Component({\n template: `\n <div>\n @if(multiple()){ @for (item of internalValue(); track $index) {\n <p>{{ item }}</p>\n } } @else {\n <p>{{ internalValue()[0] }}</p>\n }\n </div>\n `,\n standalone: true,\n changeDetection: ChangeDetectionStrategy.OnPush,\n imports: [CommonModule],\n inputs: [],\n})\nexport class AXPDateTimeBoxWidgetViewComponent extends AXPWidgetComponent<string | string[]> {\n private formatter = inject(AXDateTimeFormatter);\n\n protected multiple = computed<boolean>(() => this.options()['multiple'] as boolean);\n protected format = computed<'date' | 'time' | 'datetime'>(() => this.options()['format']['id'] as any);\n\n protected internalValue = computed(() =>\n Array.isArray(this.getValue())\n ? (this.getValue() as string[]).map((v: string) => this.handleFormat(v))\n : [this.handleFormat(this.getValue() as string)]\n );\n\n protected handleFormat(value: string) {\n return value ? this.formatter.format(new Date(value), { format: this.format() }) : '---';\n }\n}\n","import { AXButtonModule } from '@acorex/components/button';\nimport { AXValueChangedEvent } from '@acorex/components/common';\nimport { AXDateTimeBoxModule } from '@acorex/components/datetime-box';\nimport { AXDecoratorModule } from '@acorex/components/decorators';\nimport { AXFormModule } from '@acorex/components/form';\nimport { AXValidationModule, AXValidationService } from '@acorex/core/validation';\nimport { AXPValidationRules } from '@acorex/platform/core';\nimport { AXPWidgetComponent } from '@acorex/platform/layout/builder';\nimport { CommonModule } from '@angular/common';\nimport { ChangeDetectionStrategy, Component, HostBinding, Signal, computed, inject } from '@angular/core';\nimport { FormsModule } from '@angular/forms';\n\n@Component({\n template: `\n <div class=\"ax-grid ax-grid-cols-12 ax-gap-4\">\n @for (datetime of internalValue(); track $index) {\n <ax-datetime-box\n class=\"ax-col-span-12\"\n [ngModel]=\"datetime\"\n (onValueChanged)=\"handleValueChange($event, $index)\"\n [disabled]=\"disabled()\"\n [format]=\"calendarFormat()\"\n [placeholder]=\"placeholder()\"\n >\n @for (validation of validationRules; track $index) {\n <ax-validation-rule\n [rule]=\"validation.rule\"\n [message]=\"validation.options?.message\"\n [options]=\"validation.options\"\n ></ax-validation-rule>\n } @if(clearButton()){\n <ax-clear-button></ax-clear-button>\n } @if(multiple()) {\n <ax-suffix>\n <ax-button class=\"ax-border-s\" (onClick)=\"deleteItem($index)\" look=\"blank\" color=\"danger\">\n <ax-icon class=\"far fa-trash\"> </ax-icon>\n </ax-button>\n </ax-suffix>\n }\n </ax-datetime-box>\n } @if(multiple()){\n <ax-button\n class=\"ax-col-start-9 lg:ax-col-start-10 xl:ax-col-start-11 ax-col-end-13\"\n [text]=\"!internalValue().length ? 'Add New' : 'Add Another'\"\n look=\"twotone\"\n (onClick)=\"addItem()\"\n [disabled]=\"disabled()\"\n ></ax-button>\n }\n </div>\n `,\n standalone: true,\n changeDetection: ChangeDetectionStrategy.OnPush,\n imports: [\n CommonModule,\n FormsModule,\n AXFormModule,\n AXValidationModule,\n AXDateTimeBoxModule,\n AXButtonModule,\n AXDecoratorModule,\n AXValidationModule,\n ],\n inputs: [],\n})\nexport class AXPDateTimeBoxWidgetEditComponent extends AXPWidgetComponent<string | string[]> {\n protected validationService = inject(AXValidationService);\n\n protected validationMessage?: string | null;\n\n protected multiple = computed<boolean>(() => this.options()['multiple'] as boolean);\n protected clearButton = computed<boolean>(() => this.options()['clearButton'] as boolean);\n protected format = computed<'date' | 'time' | 'datetime'>(() => this.options()['format']?.['id'] as any);\n protected disabled = computed<boolean>(() => this.options()['disabled'] as boolean);\n protected placeholder = computed<string>(() => this.options()['placeholder']);\n\n protected internalValue: Signal<string[]> = computed(() =>\n Array.isArray(this.getValue()) ? (this.getValue() as string[]) : [this.getValue() as string]\n );\n\n private _validationRules: AXPValidationRules = [];\n public get validationRules(): AXPValidationRules {\n return this._validationRules;\n }\n public set validationRules(v: AXPValidationRules) {\n this._validationRules = v;\n }\n\n protected handleValueChange(e: AXValueChangedEvent, i: number) {\n if (e.isUserInteraction) {\n const newValues = this.internalValue().map((item, index) => (i === index ? e.value : item));\n if (this.multiple()) this.setValue(newValues);\n else this.setValue(newValues[0]);\n }\n }\n\n protected calendarFormat = computed(() => {\n if (this.format() === 'date') return 'dd/MM/yyyy';\n else if (this.format() === 'time') return 'HH:mm';\n else return 'dd/MM/yyyy HH:mm';\n });\n\n protected addItem() {\n const newValues = [...this.internalValue(), ''];\n this.setValue(newValues);\n }\n\n protected deleteItem(i: number) {\n const newValues = this.internalValue().filter((_, index) => index != i);\n this.setValue(newValues);\n }\n\n @HostBinding('class')\n private get __class(): string {\n const cls: any = {};\n cls[`ax-block`] = true;\n cls[`ax-flex-1`] = true;\n return cls;\n }\n}\n","import { AXPWidgetComponent } from '@acorex/platform/layout/builder';\nimport { CommonModule } from '@angular/common';\nimport { ChangeDetectionStrategy, Component, inject } from '@angular/core';\nimport { FormsModule } from '@angular/forms';\n\n@Component({\n template: ``,\n standalone: true,\n changeDetection: ChangeDetectionStrategy.OnPush,\n imports: [CommonModule, FormsModule],\n inputs: []\n})\nexport class AXPDateTimeBoxWidgetFilterComponent extends AXPWidgetComponent<any> { }","import { AXDateTimeFormatter } from '@acorex/core/date-time';\nimport { AXPColumnWidgetComponent } from '@acorex/platform/layout/builder';\nimport { CommonModule } from '@angular/common';\nimport {\n ChangeDetectionStrategy,\n Component,\n ElementRef,\n Signal,\n afterNextRender,\n computed,\n inject,\n signal,\n} from '@angular/core';\n@Component({\n template: `<div class=\"ax-flex\" [class]=\"dir() === 'rtl' ? 'ax-justify-end' : 'ax-justify-start'\">\n <span [title]=\"convertedValue()\">{{ convertedValue() }}</span>\n </div>`,\n standalone: true,\n changeDetection: ChangeDetectionStrategy.OnPush,\n imports: [CommonModule],\n inputs: ['rawValue'],\n})\nexport class AXPDateTimeBoxWidgetColumnComponent extends AXPColumnWidgetComponent<string | string[]> {\n private formatter = inject(AXDateTimeFormatter);\n private elementRef = inject(ElementRef);\n\n protected convertedValue: Signal<string | null> = computed(() => this.updateValue());\n protected multiple: boolean = this.options['multiple'] || false;\n protected format: 'date' | 'time' | 'datetime' = this.options['format'] || 'date';\n protected dir = signal<string>('ltr');\n\n constructor() {\n super();\n afterNextRender(() => {\n this.dir.set(getComputedStyle(this.elementRef.nativeElement).direction);\n });\n }\n\n private updateValue = () => {\n const rawValue = this.rawValue;\n if (rawValue == null) {\n return null;\n }\n if (this.isArray(rawValue)) {\n return rawValue.map((item: string) => this.handleFormat(item)).join(', ');\n } else {\n return this.handleFormat(rawValue);\n }\n };\n\n protected handleFormat(value: string) {\n return value ? this.formatter.format(new Date(value), { format: this.format }) : '---';\n }\n\n protected isArray(val: any) {\n return Array.isArray(val);\n }\n}\n","import { AXPWidgetComponent } from '@acorex/platform/layout/builder';\nimport { CommonModule } from '@angular/common';\nimport { ChangeDetectionStrategy, Component, inject } from '@angular/core';\n@Component({\n template: `{{getValue()}}`,\n standalone: true,\n changeDetection: ChangeDetectionStrategy.OnPush,\n imports: [CommonModule],\n inputs: []\n})\nexport class AXPDateTimeBoxWidgetPrintComponent extends AXPWidgetComponent<any> { }","import { AXP_WIDGETS_EDITOR_GROUP, AXPWidgetConfig, cloneProperty } from '@acorex/platform/layout/builder';\nimport {\n AXP_ALLOW_MULTIPLE_PROPERTY,\n AXP_DATA_PATH_PROPERTY,\n AXP_DATE_FORMAT_PROPERTY,\n AXP_DISABLED_PROPERTY,\n AXP_PLACEHOLDER_PROPERTY,\n AXP_READONLY_PROPERTY,\n AXP_TABLE_COLUMN_WIDTH_PROPERTY,\n AXP_VALIDATION_PROPERTY,\n} from '../../../properties';\nimport { AXP_NAME_PROPERTY } from '../../../properties/general.props';\nexport const AXPDateTimeBoxWidget: AXPWidgetConfig = {\n name: 'date-time-editor',\n title: 'Date Time Box',\n description: 'Selects date and time',\n icon: 'fa-solid fa-calendar',\n group: AXP_WIDGETS_EDITOR_GROUP,\n type: 'editor',\n properties: [\n AXP_NAME_PROPERTY,\n AXP_DATA_PATH_PROPERTY,\n AXP_ALLOW_MULTIPLE_PROPERTY,\n AXP_DATE_FORMAT_PROPERTY,\n AXP_READONLY_PROPERTY,\n AXP_DISABLED_PROPERTY,\n AXP_VALIDATION_PROPERTY,\n AXP_PLACEHOLDER_PROPERTY,\n cloneProperty(AXP_TABLE_COLUMN_WIDTH_PROPERTY, { schema: { defaultValue: '200px' } }),\n ],\n components: {\n view: {\n component: () => import('./date-time-box-widget-view.component').then((c) => c.AXPDateTimeBoxWidgetViewComponent),\n },\n edit: {\n component: () => import('./date-time-box-widget-edit.component').then((c) => c.AXPDateTimeBoxWidgetEditComponent),\n },\n filter: {\n component: () =>\n import('./date-time-box-widget-filter.component').then((c) => c.AXPDateTimeBoxWidgetFilterComponent),\n },\n column: {\n component: () =>\n import('./date-time-box-widget-column.component').then((c) => c.AXPDateTimeBoxWidgetColumnComponent),\n },\n print: {\n component: () =>\n import('./date-time-box-widget-print.component').then((c) => c.AXPDateTimeBoxWidgetPrintComponent),\n },\n designer: {\n component: () => import('./date-time-box-widget-edit.component').then((c) => c.AXPDateTimeBoxWidgetEditComponent),\n },\n },\n};\n\ndeclare module '@acorex/platform/layout/builder' {\n interface AXPWidgetTypesMap {\n dateTime: 'date-time-editor';\n }\n}\n","import { AXBadgeModule } from '@acorex/components/badge';\nimport { AXPClipBoardService } from '@acorex/platform/common';\nimport { AXPWidgetComponent } from '@acorex/platform/layout/builder';\nimport { CommonModule } from '@angular/common';\nimport { ChangeDetectionStrategy, Component, computed, inject } from '@angular/core';\n\n@Component({\n template: `\n <div class=\"ax-grid ax-grid-cols-12 ax-gap-2\">\n @if(multiple())\n {\n @for(item of internalValue();track item?.value) {\n <ng-template [ngTemplateOutlet]=\"itemTemplate\" [ngTemplateOutletContext]=\"{ data: item }\" ]></ng-template>\n }\n }\n @else\n {\n <ng-template [ngTemplateOutlet]=\"itemTemplate\" [ngTemplateOutletContext]=\"{ data: internalValue()[0] }\" ]></ng-template>\n }\n <ng-template #itemTemplate let-item=\"data\">\n @if(item)\n {\n <div class=\"ax-col-start-1 ax-col-end-10 lg:ax-col-end-7\">\n <div class=\"ax-flex ax-flex-1 ax-gap-3 ax-items-center ax-w-max ax-group\">\n <div class=\"ax-w-6 ax-h-6 ax-flex ax-items-center ax-justify-center\">\n <i class=\"fa-solid ax-text-neutral-400 fa-envelope\"></i>\n </div>\n <a class=\"group-hover:!ax-text-primary-500\" href=\"tel:{{ item.value }}\">{{ item.value }}</a>\n <span\n class=\"ax-text-neutral-400 ax-cursor-pointer ax-invisible group-hover:ax-visible hover:!ax-text-primary-500\"\n (click)=\"clipboard.copy('Email', item.value)\"\n >\n <i class=\"fa-solid fa-copy \"></i>\n </span>\n @if(hasLabel()){\n <ax-badge color=\"primary\" [look]=\"'twotone'\" [text]=\"item.label\"></ax-badge>\n }\n </div>\n </div>\n }\n </ng-template>\n </div>\n `,\n standalone: true,\n changeDetection: ChangeDetectionStrategy.OnPush,\n imports: [CommonModule, AXBadgeModule],\n inputs: [],\n})\nexport class AXPEmailBoxWidgetViewComponent extends AXPWidgetComponent<any> {\n protected clipboard = inject(AXPClipBoardService);\n\n protected multiple = computed<boolean>(() => this.options()[\"multiple\"] as boolean);\n protected hasLabel = computed<boolean>(() => (this.options()[\"hasLabel\"] as boolean) ?? true);\n\n\n protected internalValue = computed(() =>\n this.getValue()\n ? Array.isArray(this.getValue())\n ? this.getValue().map((item: any) => this.extractItem(item))\n : [this.extractItem(this.getValue())]\n : []\n );\n\n private extractItem(item: any): any {\n return typeof item == 'object'\n ? {\n value: item.value ?? '-',\n label: item.label ?? 'Primary',\n }\n : {\n value: item,\n label: 'Primary',\n };\n }\n}\n","import { AXButtonModule } from '@acorex/components/button';\nimport { AXValueChangedEvent } from '@acorex/components/common';\nimport { AXDecoratorModule } from '@acorex/components/decorators';\nimport { AXFormModule } from '@acorex/components/form';\nimport { AXSelectBoxModule } from '@acorex/components/select-box';\nimport { AXTextBoxModule } from '@acorex/components/text-box';\nimport { AXValidationModule, AXValidationService } from '@acorex/core/validation';\nimport { AXPValidationRules } from '@acorex/platform/core';\nimport { AXPWidgetComponent } from '@acorex/platform/layout/builder';\nimport { CommonModule } from '@angular/common';\nimport { ChangeDetectionStrategy, Component, HostBinding, Signal, computed, inject } from '@angular/core';\nimport { FormsModule } from '@angular/forms';\n\n@Component({\n template: `\n <div class=\"ax-grid ax-grid-cols-12 ax-gap-4\">\n @if(multiple())\n {\n @for(item of internalValue();track $index) \n {\n <ax-text-box\n [ngModel]=\"item.value\"\n (onValueChanged)=\"handleValueChange($event, $index)\"\n type=\"text\"\n [disabled]=\"disabled()\"\n class=\"ax-col-start-1 ax-col-end-13 lg:ax-col-end-8\"\n [class.lg:!ax-col-end-12]=\"!hasLabel()\"\n >\n @for (validation of validationRules; track $index) {\n <ax-validation-rule [rule]=\"validation.rule\" [message]=\"validation.options?.message\" [options]=\"validation.options\"></ax-validation-rule>\n }\n <ax-validation-rule [rule]=\"'email'\"></ax-validation-rule>\n </ax-text-box>\n @if(hasLabel())\n {\n <ax-select-box\n [dataSource]=\"lables()\"\n [ngModel]=\"item.label\"\n [disabled]=\"disabled()\"\n (onValueChanged)=\"handleLabelChange($event, $index)\"\n class=\"ax-col-start-1 ax-col-end-11 lg:ax-col-start-8 lg:ax-col-end-12\"\n >\n </ax-select-box>\n }\n <ax-button\n look=\"twotone\"\n color=\"danger\"\n [disabled]=\"disabled()\"\n (onClick)=\"deleteItem($index)\"\n class=\"ax-col-start-11 ax-col-end-13 lg:ax-col-start-12 lg:ax-col-end-13 ax-justify-self-end\">\n <ax-icon icon=\"fa-regular fa-xmark\"></ax-icon>\n </ax-button>\n }\n <ax-button\n [disabled]=\"disabled()\"\n [text]=\"internalValue().length == 0 ? 'Add New' : 'Add Another'\"\n look=\"twotone\"\n (onClick)=\"addItem()\"\n class=\"ax-col-start-8 lg:ax-col-start-10 2xl:ax-col-start-10 ax-col-end-13\">\n <ax-prefix>\n <ax-icon class=\"fa-solid fa-add\"></ax-icon>\n </ax-prefix>\n </ax-button>\n }\n @else \n {\n <ax-text-box\n [ngModel]=\"internalValue()[0].value\"\n (onValueChanged)=\"handleValueChange($event, 0)\"\n [placeholder]=\"placeholder()\"\n [disabled]=\"disabled()\"\n type=\"text\"\n class=\"ax-col-start-1 ax-col-end-13 lg:ax-col-end-8\"\n [class.lg:!ax-col-end-13]=\"!hasLabel()\">\n @for (validation of validationRules; track $index) {\n <ax-validation-rule [rule]=\"validation.rule\" [message]=\"validation.options?.message\" [options]=\"validation.options\"></ax-validation-rule>\n }\n <ax-validation-rule [rule]=\"'email'\"></ax-validation-rule>\n </ax-text-box>\n @if(hasLabel()){\n <ax-select-box\n [dataSource]=\"lables()\"\n [disabled]=\"disabled()\"\n [ngModel]=\"internalValue()[0].label\"\n (onValueChanged)=\"handleLabelChange($event, 0)\"\n class=\"ax-col-start-1 ax-col-end-11 lg:ax-col-start-8 lg:ax-col-end-13\"\n >\n </ax-select-box>\n }\n }\n </div>\n `,\n standalone: true,\n changeDetection: ChangeDetectionStrategy.OnPush,\n imports: [CommonModule, FormsModule, AXFormModule, AXButtonModule, AXDecoratorModule, AXSelectBoxModule, AXTextBoxModule, AXValidationModule],\n inputs: [],\n})\nexport class AXPEmailBoxWidgetEditComponent extends AXPWidgetComponent<any> {\n protected validationService = inject(AXValidationService);\n protected validationMessage?: string | null;\n\n\n protected multiple = computed<boolean>(() => this.options()[\"multiple\"] as boolean);\n protected disabled = computed<boolean>(() => this.options()[\"disabled\"] as boolean);\n protected clearButton = computed<boolean>(() => (this.options()[\"clearButton\"] as boolean) ?? true);\n protected placeholder = computed<string>(() => (this.options()[\"placeholder\"] as string));\n\n protected hasLabel = computed<boolean>(() => (this.options()[\"hasLabel\"] as boolean) ?? true);\n protected lables = computed<string[]>(() => (this.options()[\"lables\"] as string[]) ?? ['Primary', 'Secondary']);\n\n\n\n protected internalValue: Signal<{ value: string; label?: string; id: string }[]> = computed(() => this.getValueAsArrayOfObjects());\n\n private _validationRules: AXPValidationRules = [];\n public get validationRules(): AXPValidationRules {\n return this._validationRules;\n }\n public set validationRules(v: AXPValidationRules) {\n this._validationRules = v;\n }\n\n private getValueAsArrayOfObjects(): any[] {\n const value = this.getValue();\n if (Array.isArray(value)) {\n return value.map((item) => (typeof item === 'object' ? item : { value: item }));\n }\n return typeof value === 'object' ? [value || ''] : [{ value: value || '' }];\n }\n\n protected handleValueChange(e: AXValueChangedEvent, selectedIndex: number) {\n if (e.isUserInteraction) {\n const newValues = this.internalValue().map((item, index) => (selectedIndex === index ? this.convertItem(item, e) : item));\n if (this.multiple()) {\n this.setValue(newValues);\n }\n else {\n this.setValue(newValues[0]);\n }\n }\n }\n\n protected convertItem = (item: any, e: any) => {\n if (typeof item === 'object') {\n return { ...item, value: e.value };\n }\n else {\n return e.value;\n }\n };\n\n protected handleLabelChange(e: AXValueChangedEvent, selectedIndex: number) {\n if (e.isUserInteraction) {\n const newValues = this.internalValue().map((item, index) => (selectedIndex === index ? { ...item, label: e.value } : item));\n if (this.multiple()) {\n this.setValue(newValues);\n }\n else {\n this.setValue(newValues[0]);\n }\n }\n }\n\n protected addItem() {\n const newValues = [...this.internalValue(), ''];\n this.setValue(newValues);\n }\n protected deleteItem(deletedIndex: number) {\n const newValues = this.internalValue().filter((_, index) => index != deletedIndex);\n this.setValue(newValues);\n }\n\n @HostBinding('class')\n private get __class(): string {\n const cls: any = {};\n cls[`ax-block`] = true;\n cls[`ax-flex-1`] = true;\n return cls;\n }\n}\n","import { AXPWidgetComponent } from '@acorex/platform/layout/builder';\nimport { CommonModule } from '@angular/common';\nimport { ChangeDetectionStrategy, Component, inject } from '@angular/core';\nimport { FormsModule } from '@angular/forms';\n\n@Component({\n template: ``,\n standalone: true,\n changeDetection: ChangeDetectionStrategy.OnPush,\n imports: [CommonModule, FormsModule],\n inputs: []\n})\nexport class AXPEmailBoxWidgetFilterComponent extends AXPWidgetComponent<any> { }","import { AXPColumnWidgetComponent } from '@acorex/platform/layout/builder';\nimport { CommonModule } from '@angular/common';\nimport { ChangeDetectionStrategy, Component, Signal, computed } from '@angular/core';\n@Component({\n template: `<div>\n @if(multiple && list.length>1){\n <div [title]=\"text()\">{{ dot3(text()) }}</div>\n }@else {\n <div>\n @if(list() && list().length){\n {{ list()[0].value }}\n }@else { - }\n </div>\n }\n </div>`,\n standalone: true,\n changeDetection: ChangeDetectionStrategy.OnPush,\n imports: [CommonModule],\n inputs: ['rawValue'],\n})\nexport class AXPEmailBoxWidgetColumnComponent extends AXPColumnWidgetComponent<any> {\n protected list: Signal<{ value: string; label: string }[]> = computed(() =>\n Array.isArray(this.rawValue) ? this.rawValue.map((c) => this.extractItem(c)) : [this.extractItem(this.rawValue)]\n );\n protected text: Signal<string> = computed(() =>\n this.list()\n .map((item) => item.value)\n .join('\\n')\n );\n protected multiple!: boolean;\n protected hasLabel!: boolean;\n\n protected dot3(text: string) {\n console.log(text);\n if (this.multiple) return text.split('\\n')[0] + '...';\n else return text.split('\\n')[0];\n }\n\n private extractItem(item: any): any {\n return typeof item == 'object'\n ? {\n value: item.value ?? '-',\n type: item.type ?? 'primary',\n label: item.label,\n }\n : {\n value: item,\n type: 'primary',\n label: null,\n };\n }\n}\n","import { AXPWidgetComponent } from '@acorex/platform/layout/builder';\nimport { CommonModule } from '@angular/common';\nimport { ChangeDetectionStrategy, Component, inject } from '@angular/core';\n@Component({\n template: ``,\n standalone: true,\n changeDetection: ChangeDetectionStrategy.OnPush,\n imports: [CommonModule],\n inputs: []\n})\nexport class AXPEmailBoxWidgetPrintComponent extends AXPWidgetComponent<any> { }","import { AXPWidgetConfig, AXP_WIDGETS_EDITOR_GROUP } from '@acorex/platform/layout/builder';\nimport {\n AXP_ALLOW_MULTIPLE_PROPERTY,\n AXP_DATA_PATH_PROPERTY,\n AXP_DISABLED_PROPERTY,\n AXP_HAS_LABEL_PROPERTY,\n AXP_PLACEHOLDER_PROPERTY,\n AXP_VALIDATION_PROPERTY,\n} from '../../../properties';\nimport { AXP_NAME_PROPERTY } from '../../../properties/general.props';\n\nexport const AXPEmailBoxWidget: AXPWidgetConfig = {\n name: 'email-editor',\n title: 'Email Box',\n description: 'Inputs and validates email addresses',\n icon: 'fa-solid fa-envelope',\n group: AXP_WIDGETS_EDITOR_GROUP,\n type: 'editor',\n properties: [\n AXP_NAME_PROPERTY,\n AXP_DATA_PATH_PROPERTY,\n AXP_ALLOW_MULTIPLE_PROPERTY,\n AXP_DISABLED_PROPERTY,\n AXP_VALIDATION_PROPERTY,\n AXP_PLACEHOLDER_PROPERTY,\n AXP_HAS_LABEL_PROPERTY,\n ],\n components: {\n view: {\n component: () => import('./email-box-widget-view.component').then((c) => c.AXPEmailBoxWidgetViewComponent),\n },\n edit: {\n component: () => import('./email-box-widget-edit.component').then((c) => c.AXPEmailBoxWidgetEditComponent),\n },\n filter: {\n component: () => import('./email-box-widget-filter.component').then((c) => c.AXPEmailBoxWidgetFilterComponent),\n },\n column: {\n component: () => import('./email-box-widget-column.component').then((c) => c.AXPEmailBoxWidgetColumnComponent),\n },\n print: {\n component: () => import('./email-box-widget-print.component').then((c) => c.AXPEmailBoxWidgetPrintComponent),\n },\n designer: {\n component: () => import('./email-box-widget-edit.component').then((c) => c.AXPEmailBoxWidgetEditComponent),\n },\n },\n};\n\ndeclare module '@acorex/platform/layout/builder' {\n interface AXPWidgetTypesMap {\n email: 'email-editor';\n }\n}\n","import { AXPWidgetComponent } from '@acorex/platform/layout/builder';\nimport { CommonModule } from '@angular/common';\nimport { ChangeDetectionStrategy, Component } from '@angular/core';\n\n@Component({\n template: `\n <div class=\"ax-max-w-full\">\n <span>\n {{ getValue() }}\n </span>\n </div>\n `,\n standalone: true,\n changeDetection: ChangeDetectionStrategy.OnPush,\n imports: [CommonModule],\n inputs: [],\n})\nexport class AXPLargeTextWidgetViewComponent extends AXPWidgetComponent<string> {\n\n\n}\n","import { AXDecoratorModule } from '@acorex/components/decorators';\nimport { AXFormModule } from '@acorex/components/form';\nimport { AXTextAreaModule } from '@acorex/components/text-area';\nimport { AXPValidationRules } from '@acorex/platform/core';\nimport { AXPWidgetComponent } from '@acorex/platform/layout/builder';\nimport { CommonModule } from '@angular/common';\nimport { ChangeDetectionStrategy, Component, computed, HostBinding } from '@angular/core';\nimport { FormsModule } from '@angular/forms';\n\n@Component({\n selector: 'axp-large-text-box-widget',\n template: `\n <ax-text-area\n [disabled]=\"disabled()\"\n [ngModel]=\"getValue()\"\n (ngModelChange)=\"setValue($event)\"\n [placeholder]=\"placeholder()\"\n >\n @if(clearButton()){\n <ax-clear-button></ax-clear-button>\n } @for (validation of validationRules(); track $index) {\n <ax-validation-rule\n [rule]=\"validation.rule\"\n [message]=\"validation.options?.message\"\n [options]=\"validation.options\"\n ></ax-validation-rule>\n }\n </ax-text-area>\n `,\n standalone: true,\n changeDetection: ChangeDetectionStrategy.OnPush,\n imports: [CommonModule, AXDecoratorModule, FormsModule, AXFormModule, AXTextAreaModule],\n inputs: ['disabled', 'clearButton'],\n})\nexport class AXPLargeTextWidgetEditComponent extends AXPWidgetComponent<string> {\n protected multiple = computed<boolean>(() => this.options()['multiple'] as boolean);\n protected disabled = computed<boolean>(() => this.options()['disabled'] as boolean);\n protected clearButton = computed<boolean>(() => (this.options()['clearButton'] as boolean) ?? true);\n protected placeholder = computed<string>(() => this.options()['placeholder'] as string);\n\n protected validationRules = computed<AXPValidationRules>(\n () => (this.options()['validationRules'] as AXPValidationRules) ?? []\n );\n\n\n\n\n @HostBinding('class')\n private get __class(): string {\n const cls: any = {};\n cls[`ax-block`] = true;\n cls[`ax-flex-1`] = true;\n return cls;\n }\n}\n","import { AXPWidgetComponent } from '@acorex/platform/layout/builder';\nimport { CommonModule } from '@angular/common';\nimport { ChangeDetectionStrategy, Component, inject } from '@angular/core';\nimport { FormsModule } from '@angular/forms';\n\n@Component({\n template: ``,\n standalone: true,\n changeDetection: ChangeDetectionStrategy.OnPush,\n imports: [CommonModule, FormsModule],\n inputs: []\n})\nexport class AXPLargeTextWidgetFilterComponent extends AXPWidgetComponent<any> { }","import { AXPColumnWidgetComponent } from '@acorex/platform/layout/builder';\nimport { CommonModule } from '@angular/common';\nimport { ChangeDetectionStrategy, Component } from '@angular/core';\n@Component({\n template: `<span class=\"ax-truncate\">\n {{ rawValue }}\n </span>`,\n standalone: true,\n changeDetection: ChangeDetectionStrategy.OnPush,\n imports: [CommonModule],\n inputs: ['rawValue'],\n})\nexport class AXPLargeTextWidgetColumnComponent extends AXPColumnWidgetComponent<string> { }\n","import { AXPWidgetComponent } from '@acorex/platform/layout/builder';\nimport { CommonModule } from '@angular/common';\nimport { ChangeDetectionStrategy, Component, inject } from '@angular/core';\n@Component({\n template: ``,\n standalone: true,\n changeDetection: ChangeDetectionStrategy.OnPush,\n imports: [CommonModule],\n inputs: []\n})\nexport class AXPLargeTextWidgetPrintComponent extends AXPWidgetComponent<any> { }","import { AXP_WIDGETS_EDITOR_GROUP, AXPWidgetConfig } from '@acorex/platform/layout/builder';\nimport {\n AXP_DATA_PATH_PROPERTY,\n AXP_DISABLED_PROPERTY,\n AXP_PLACEHOLDER_PROPERTY,\n AXP_VALIDATION_PROPERTY,\n largeTextDefaultProperty,\n} from '../../../properties';\nimport { AXP_NAME_PROPERTY } from '../../../properties/general.props';\n\nexport const AXPLargeTextWidget: AXPWidgetConfig = {\n name: 'large-text-editor',\n title: 'Large Text Box',\n description: 'Inputs long text entries',\n icon: 'fa-solid fa-input-text',\n group: AXP_WIDGETS_EDITOR_GROUP,\n type: 'editor',\n properties: [\n AXP_NAME_PROPERTY,\n AXP_DATA_PATH_PROPERTY,\n AXP_DISABLED_PROPERTY,\n AXP_VALIDATION_PROPERTY,\n AXP_PLACEHOLDER_PROPERTY,\n largeTextDefaultProperty(),\n //cloneProperty(AXP_TABLE_COLUMN_WIDTH_PROPERTY, { schema: { defaultValue: '300px' } }),\n ],\n components: {\n view: {\n component: () => import('./large-text-widget-view.component').then((c) => c.AXPLargeTextWidgetViewComponent),\n properties: [],\n },\n edit: {\n component: () => import('./large-text-widget-edit.component').then((c) => c.AXPLargeTextWidgetEditComponent),\n },\n filter: {\n component: () => import('./large-text-widget-filter.component').then((c) => c.AXPLargeTextWidgetFilterComponent),\n },\n column: {\n component: () => import('./large-text-widget-column.component').then((c) => c.AXPLargeTextWidgetColumnComponent),\n },\n print: {\n component: () => import('./large-text-widget-print.component').then((c) => c.AXPLargeTextWidgetPrintComponent),\n },\n designer: {\n component: () => import('./large-text-widget-edit.component').then((c) => c.AXPLargeTextWidgetEditComponent),\n },\n },\n};\n\ndeclare module '@acorex/platform/layout/builder' {\n interface AXPWidgetTypesMap {\n largeText: 'large-text-editor';\n }\n}\n","import { AXBadgeModule } from '@acorex/components/badge';\nimport { AXDecoratorModule } from '@acorex/components/decorators';\nimport { AXPClipBoardService } from '@acorex/platform/common';\nimport { AXPWidgetComponent } from '@acorex/platform/layout/builder';\nimport { CommonModule } from '@angular/common';\nimport { ChangeDetectionStrategy, Component, computed, inject } from '@angular/core';\n\n@Component({\n template: `<div class=\"ax-grid ax-grid-cols-12 ax-gap-2 \">\n @if(multiple){ @for(item of internalValue();track item?.value) {\n <ng-template [ngTemplateOutlet]=\"itemTemplate\" [ngTemplateOutletContext]=\"{ data: item }\" ]></ng-template>\n } } @else{\n <ng-template [ngTemplateOutlet]=\"itemTemplate\" [ngTemplateOutletContext]=\"{ data: internalValue()[0] }\" ]></ng-template>\n }\n\n <ng-template #itemTemplate let-item=\"data\">\n @if(item){\n <div class=\"ax-col-start-1 ax-col-end-10 lg:ax-col-end-7\">\n <div class=\"ax-flex ax-flex-1 ax-gap-3 ax-items-center ax-w-max ax-group\">\n <div class=\"ax-w-6 ax-h-6 ax-flex ax-items-center ax-justify-center\">\n @if(item.icon){\n <ax-icon class=\"fa-solid ax-text-neutral-400\" [class]=\"item.icon\"> </ax-icon>\n }\n </div>\n <a\n [href]=\"item.value\"\n [target]=\"'_' + target\"\n class=\"ax-text-blue-700 group-hover:!ax-text-primary-500 group-hover:ax-underline group-hover:ax-decoration-blue-700\"\n >{{ item.title ?? item.value }}</a\n >\n <span\n class=\"ax-text-neutral-400 ax-cursor-pointer ax-invisible group-hover:ax-visible hover:!ax-text-primary-500\"\n (click)=\"clipboard.copy('Email', item.value)\"\n >\n <i class=\"fa-solid fa-copy \"></i>\n </span>\n @if(hasLabel){\n <ax-badge color=\"primary\" [look]=\"'twotone'\" [text]=\"item.label\"></ax-badge>\n }\n </div>\n </div>\n }\n </ng-template>\n </div>`,\n standalone: true,\n changeDetection: ChangeDetectionStrategy.OnPush,\n imports: [CommonModule, AXBadgeModule, AXDecoratorModule],\n inputs: [],\n})\nexport class AXPLinkWidgetViewComponent extends AXPWidgetComponent<any> {\n protected clipboard = inject(AXPClipBoardService);\n protected multiple!: boolean;\n protected hasLabel!: boolean;\n protected target: 'self' | 'blank' = 'blank';\n\n protected internalValue = computed(() =>\n this.getValue()\n ? Array.isArray(this.getValue())\n ? this.getValue().map((item: any) => this.extractItem(item))\n : [this.extractItem(this.getValue())]\n : []\n );\n\n private extractItem(item: any): any {\n return typeof item == 'object'\n ? {\n value: item.value ?? '-',\n title: item.title,\n label: this.hasLabel ? item.label || 'primary' : undefined,\n icon: item.icon,\n }\n : {\n value: item,\n title: '',\n icon: '',\n label: 'Primary',\n };\n }\n}\n","import { AXButtonModule } from '@acorex/components/button';\nimport { AXDataSource, AXValueChangedEvent } from '@acorex/components/common';\nimport { AXDecoratorModule } from '@acorex/components/decorators';\nimport { AXFormModule } from '@acorex/components/form';\nimport { AXSelectBoxModule } from '@acorex/components/select-box';\nimport { AXTextBoxModule } from '@acorex/components/text-box';\nimport { AXTranslationService } from '@acorex/core/translation';\nimport { AXValidationModule, AXValidationService } from '@acorex/core/validation';\nimport { AXPValidationRules } from '@acorex/platform/core';\nimport { AXPWidgetComponent } from '@acorex/platform/layout/builder';\nimport { CommonModule } from '@angular/common';\nimport { ChangeDetectionStrategy, Component, HostBinding, Signal, computed, inject } from '@angular/core';\nimport { FormsModule } from '@angular/forms';\n\n@Component({\n template: `<div class=\"ax-grid ax-grid-cols-12 ax-gap-4\">\n @if(multiple()){ @for(item of internalValue();track $index) { @if(item){\n <!-- TODO need to fix multiple -->\n <ax-text-box\n [ngModel]=\"item.value\"\n (onValueChanged)=\"handleValueChange($event, $index)\"\n type=\"text\"\n placeholder=\"Enter Link\"\n class=\"ax-col-start-1 ax-col-end-13\"\n [ngClass]=\"generateClasses('url', 'multiple')\"\n >\n @for (validation of validationRules; track $index) {\n <ax-validation-rule [rule]=\"validation.rule\" [message]=\"validation.options?.message\" [options]=\"validation.options\"></ax-validation-rule>\n }\n <ax-validation-rule message=\"field can't be empty\" rule=\"required\"> </ax-validation-rule>\n </ax-text-box>\n @if(hasTitle()){\n <ax-text-box\n [ngModel]=\"item.title\"\n (onValueChanged)=\"handleValueChange($event, $index)\"\n placeholder=\"Choose Title...\"\n name=\"title\"\n [ngClass]=\"generateClasses('title', 'multiple')\"\n >\n </ax-text-box>\n } @if(hasLabel()){\n <ax-select-box\n [dataSource]=\"labelTypes()\"\n [ngModel]=\"item.label\"\n (onValueChanged)=\"handleValueChange($event, $index)\"\n placeholder=\"Choose Label...\"\n name=\"label\"\n [ngClass]=\"generateClasses('label', 'multiple')\"\n >\n </ax-select-box>\n }}\n <ax-button\n look=\"twotone\"\n color=\"danger\"\n (onClick)=\"deleteItem($index)\"\n class=\"ax-col-start-12 ax-col-end-13 lg:ax-col-start-12 lg:ax-col-end-13 ax-justify-self-end !ax-h-full\"\n >\n <ax-icon icon=\"fa-regular fa-xmark\"></ax-icon>\n </ax-button>\n }\n <ax-button\n [text]=\"internalValue().length == 0 ? 'Add New' : 'Add Another'\"\n look=\"twotone\"\n (onClick)=\"addItem()\"\n class=\"ax-col-start-8 lg:ax-col-start-10 2xl:ax-col-start-10 ax-col-end-13\"\n >\n <ax-prefix>\n <ax-icon class=\"fa-solid fa-add\"></ax-icon>\n </ax-prefix>\n </ax-button>\n } @else{\n <ax-text-box\n [ngClass]=\"generateClasses('url', 'single')\"\n [ngModel]=\"internalValue()[0].value\"\n (onValueChanged)=\"handleValueChange($event, 0)\"\n type=\"text\"\n name=\"value\"\n placeholder=\"Link\"\n class=\"ax-col-start-1 ax-col-end-13\"\n >\n @for (validation of validationRules; track $index) {\n <ax-validation-rule [rule]=\"validation.rule\" [message]=\"validation.options?.message\" [options]=\"validation.options\"></ax-validation-rule>\n }\n <ax-validation-rule message=\"field can't be empty\" rule=\"required\"> </ax-validation-rule>\n </ax-text-box>\n @if(hasTitle()){\n <ax-text-box\n [ngClass]=\"generateClasses('title', 'single')\"\n [ngModel]=\"internalValue()[0].title\"\n (onValueChanged)=\"handleValueChange($event, 0)\"\n type=\"text\"\n name=\"title\"\n placeholder=\"Title\"\n >\n </ax-text-box>\n } @if(hasLabel()){\n <ax-select-box\n [ngClass]=\"generateClasses('label', 'single')\"\n [dataSource]=\"labelTypes()\"\n [ngModel]=\"internalValue()[0].label\"\n (onValueChanged)=\"handleValueChange($event, 0)\"\n name=\"label\"\n placeholder=\"Label\"\n >\n </ax-select-box>\n } }\n </div>`,\n standalone: true,\n changeDetection: ChangeDetectionStrategy.OnPush,\n imports: [\n CommonModule,\n FormsModule,\n AXSelectBoxModule,\n AXFormModule,\n AXButtonModule,\n AXDecoratorModule,\n AXSelectBoxModule,\n AXTextBoxModule,\n AXValidationModule,\n ],\n inputs: [],\n})\nexport class AXPLinkWidgetEditComponent extends AXPWidgetComponent<any> {\n protected validationService = inject(AXValidationService);\n protected translateService = inject(AXTranslationService);\n protected validationMessage?: string | null;\n\n protected multiple = computed<boolean>(() => this.options()['multiple'] as boolean);\n protected disabled = computed<boolean>(() => this.options()['disabled'] as boolean);\n protected clearButton = computed<boolean>(() => this.options()['clearButton'] as boolean);\n protected hasLabel = computed<boolean>(() => this.options()['hasLabel'] as boolean);\n protected hasTitle = computed<boolean>(() => this.options()['hasTitle'] as boolean);\n protected labelTypes = computed<string[]>(() => this.options()['labelTypes'] || ['Primary', 'Secondary']);\n protected linkTypes = computed<string[]>(() => this.options()['linkTypes'] || ['http', 'https', 'related']);\n\n protected dataSource = new AXDataSource<any>({\n pageSize: 10,\n key: 'id',\n load: (e) => {\n return new Promise((resolve) => {\n setTimeout(\n () => {\n const list = this.linkTypes();\n const result = e.filter ? list.filter((item) => item.includes(e.filter?.value as string)) : list;\n resolve({\n items: result.slice(e.skip, e.skip + e.take),\n total: result.length,\n });\n },\n e.skip == 0 ? 100 : 300\n );\n });\n },\n });\n\n protected internalValue: Signal<{ value: string; label?: string; title: string; icon?: string }[]> = computed(() =>\n this.getValueAsArrayOfObjects()\n );\n\n override ngOnInit(): void {\n super.ngOnInit();\n this.getValueAsArrayOfObjects();\n }\n\n private _validationRules: AXPValidationRules = [];\n public get validationRules(): AXPValidationRules {\n return this._validationRules;\n }\n public set validationRules(v: AXPValidationRules) {\n this._validationRules = v;\n }\n\n private getValueAsArrayOfObjects(): any[] {\n const value = this.getValue();\n if (Array.isArray(value)) {\n return value.map((item) => {\n return typeof item === 'object'\n ? {\n value: item.value ?? '-',\n title: item.title,\n label: this.hasLabel() ? item.label || 'primary' : undefined,\n icon: item.icon,\n }\n : {\n value: item,\n title: '',\n icon: '',\n label: this.hasLabel() ? 'Primary' : undefined,\n };\n });\n } else {\n return typeof value === 'object' ? [value] : [{ value: value || '' }];\n }\n }\n\n protected handleValueChange(e: AXValueChangedEvent, selectedIndex: number) {\n const { name, value, isUserInteraction } = e;\n if (isUserInteraction) {\n const newValues = this.internalValue().map((item, index) =>\n selectedIndex === index ? (name === 'value' ? this.convertItem(item, e) : { ...item, [name as string]: value }) : item\n );\n console.log(newValues);\n if (this.multiple()) this.setValue(newValues);\n else this.setValue(newValues[0]);\n }\n }\n\n protected convertItem = (item: any, e: any) => {\n if (typeof item === 'object') return { ...item, value: e.value };\n else return e.value;\n };\n\n // protected handleLabelChange(e: AXValueChangedEvent, selectedIndex: number) {\n // if (e.isUserInteraction) {\n // const newValues = this.internalValue().map((item, index) => (selectedIndex === index ? { ...item, label: e.value } : item));\n // if (this.multiple()) this.setValue(newValues);\n // else this.setValue(newValues[0]);\n // }\n // }\n\n protected addItem() {\n const newValues = [\n ...this.internalValue(),\n {\n value: '',\n title: '',\n label: 'primary',\n icon: '',\n },\n ];\n this.setValue(newValues);\n }\n protected deleteItem(deletedIndex: number) {\n const newValues = this.internalValue().filter((_, index) => index != deletedIndex);\n this.setValue(newValues);\n }\n\n protected generateClasses(elementName: 'url' | 'title' | 'label', type: 'single' | 'multiple' = 'single'): Array<string> {\n if (type === 'multiple') {\n switch (elementName) {\n case 'url':\n if (this.hasTitle() || this.hasLabel()) {\n //already has ax-col-start-1 ax-col-end-13\n return ['lg:ax-col-end-7'];\n } else {\n return ['lg:ax-col-end-12'];\n }\n case 'title':\n if (this.hasLabel()) {\n return ['ax-col-start-1 ax-col-end-7 lg:ax-col-start-7 lg:ax-col-end-10'];\n } else {\n return ['ax-col-start-1 ax-col-end-11 lg:ax-col-start-7 lg:ax-col-end-12'];\n }\n case 'label':\n if (this.hasTitle()) {\n return ['ax-col-start-7 ax-col-end-11 lg:ax-col-start-10 lg:ax-col-end-12'];\n } else {\n return ['ax-col-start-1 ax-col-end-11 lg:ax-col-start-7 lg:ax-col-end-12'];\n }\n default:\n return [''];\n }\n } else if (type === 'single') {\n switch (elementName) {\n case 'url':\n if (this.hasTitle() || this.hasLabel()) {\n //already has ax-col-start-1 ax-col-end-13\n return ['lg:ax-col-end-7'];\n } else {\n return ['lg:ax-col-end-13'];\n }\n case 'title':\n if (this.hasLabel()) {\n return ['ax-col-start-1 ax-col-end-7 lg:ax-col-start-7 lg:ax-col-end-10'];\n } else {\n return ['ax-col-start-1 ax-col-end-13 lg:ax-col-start-7 lg:ax-col-end-13'];\n }\n case 'label':\n if (this.hasTitle()) {\n return ['ax-col-start-7 ax-col-end-13 lg:ax-col-start-10 lg:ax-col-end-13'];\n } else {\n return ['ax-col-start-1 ax-col-end-13 lg:ax-col-start-7 lg:ax-col-end-13'];\n }\n default:\n return [''];\n }\n } else {\n return [''];\n }\n }\n\n\n @HostBinding('class')\n private get __class(): string {\n const cls: any = {};\n cls[`ax-block`] = true;\n cls[`ax-flex-1`] = true;\n return cls;\n }\n}\n","import { AXPWidgetComponent } from '@acorex/platform/layout/builder';\nimport { CommonModule } from '@angular/common';\nimport { ChangeDetectionStrategy, Component, inject } from '@angular/core';\nimport { FormsModule } from '@angular/forms';\n\n@Component({\n template: ``,\n standalone: true,\n changeDetection: ChangeDetectionStrategy.OnPush,\n imports: [CommonModule, FormsModule],\n inputs: []\n})\nexport class AXPLinkWidgetFilterComponent extends AXPWidgetComponent<any> { }","import { AXPColumnWidgetComponent } from '@acorex/platform/layout/builder';\nimport { CommonModule } from '@angular/common';\nimport { ChangeDetectionStrategy, Component } from '@angular/core';\n@Component({\n template: `{{rawValue}}`,\n standalone: true,\n changeDetection: ChangeDetectionStrategy.OnPush,\n imports: [CommonModule],\n inputs: ['rawValue']\n})\nexport class AXPLinkWidgetColumnComponent extends AXPColumnWidgetComponent<any> { }","import { AXPWidgetComponent } from '@acorex/platform/layout/builder';\nimport { CommonModule } from '@angular/common';\nimport { ChangeDetectionStrategy, Component, inject } from '@angular/core';\n@Component({\n template: ``,\n standalone: true,\n changeDetection: ChangeDetectionStrategy.OnPush,\n imports: [CommonModule],\n inputs: []\n})\nexport class AXPLinkWidgetPrintComponent extends AXPWidgetComponent<any> { }","import { AXPWidgetConfig, AXP_WIDGETS_EDITOR_GROUP } from '@acorex/platform/layout/builder';\nexport const AXPLinkWidget: AXPWidgetConfig = {\n name: 'link-editor',\n title: 'Link Box',\n description: 'Inputs and edits URLs',\n icon: 'fa-solid fa-link',\n group: AXP_WIDGETS_EDITOR_GROUP,\n type: 'editor',\n components: {\n view: {\n component: () => import('./link-widget-view.component').then((c) => c.AXPLinkWidgetViewComponent),\n },\n edit: {\n component: () => import('./link-widget-edit.component').then((c) => c.AXPLinkWidgetEditComponent),\n },\n filter: {\n component: () => import('./link-widget-filter.component').then((c) => c.AXPLinkWidgetFilterComponent),\n },\n column: {\n component: () => import('./link-widget-column.component').then((c) => c.AXPLinkWidgetColumnComponent),\n },\n print: {\n component: () => import('./link-widget-print.component').then((c) => c.AXPLinkWidgetPrintComponent),\n },\n designer: {\n component: () => import('./link-widget-edit.component').then((c) => c.AXPLinkWidgetEditComponent),\n },\n },\n};\n\ndeclare module '@acorex/platform/layout/builder' {\n interface AXPWidgetTypesMap {\n link: 'link-editor';\n }\n}\n","import { AXFormatService, AXNumberFormatterOptions } from '@acorex/core/format';\nimport { AXPWidgetComponent } from '@acorex/platform/layout/builder';\nimport { CommonModule } from '@angular/common';\nimport { ChangeDetectionStrategy, Component, computed, inject } from '@angular/core';\nimport { isNumber } from 'lodash-es';\n\n@Component({\n template: `\n <div>\n @if(multiple()){ @for (item of internalValue(); track $index) {\n <p>{{ item }}</p>\n } }@else {\n <p>{{ internalValue()[0] }}</p>\n }\n </div>\n `,\n standalone: true,\n changeDetection: ChangeDetectionStrategy.OnPush,\n imports: [CommonModule],\n inputs: [],\n})\nexport class AXPNumberBoxWidgetViewComponent extends AXPWidgetComponent<any> {\n protected internalValue = computed(() => (Array.isArray(this.formattedValue()) ? this.formattedValue() : [this.formattedValue()]));\n\n protected multiple = computed<boolean>(() => this.options()['multiple'] as boolean);\n protected format = computed<AXNumberFormatterOptions>(() => this.options()['format'] as AXNumberFormatterOptions);\n\n private formatService = inject(AXFormatService);\n\n private formattedValue() {\n if (!isNumber(this.getValue())) return '---';\n const value: number = Number(this.getValue());\n return this.formatService.format(value, 'number', this.format());\n }\n}\n","import { AXButtonModule } from '@acorex/components/button';\nimport { AXValueChangedEvent } from '@acorex/components/common';\nimport { AXDecoratorModule } from '@acorex/components/decorators';\nimport { AXFormModule } from '@acorex/components/form';\nimport { AXNumberBoxModule } from '@acorex/components/number-box';\nimport { AXValidationService } from '@acorex/core/validation';\nimport { AXPValidationRules } from '@acorex/platform/core';\nimport { AXPWidgetComponent } from '@acorex/platform/layout/builder';\nimport { CommonModule } from '@angular/common';\nimport { ChangeDetectionStrategy, Component, HostBinding, Signal, computed, inject } from '@angular/core';\nimport { FormsModule } from '@angular/forms';\n\n@Component({\n template: `\n <div class=\"ax-grid ax-grid-cols-12 ax-gap-4\">\n @for(number of internalValue(); track $index){\n <ax-number-box\n class=\"ax-col-span-12\"\n [minValue]=\"minValue()\"\n [maxValue]=\"maxValue()\"\n [decimals]=\"decimals()\"\n [thousandsSeparator]=\"seprator()\"\n [placeholder]=\"placeholder()\"\n [ngModel]=\"number\"\n (onValueChanged)=\"handleValueChange($event, $index)\"\n [disabled]=\"disabled()\"\n >\n <ax-validation-rule rule=\"callback\" [options]=\"{ validate: validateFn }\"></ax-validation-rule>\n @if(clearButton()) {\n <ax-clear-button></ax-clear-button>\n } @if(multiple()){\n <ax-suffix>\n <ax-button class=\"ax-border-s\" (onClick)=\"deleteItem($index)\" look=\"blank\" color=\"danger\">\n <ax-icon class=\"far fa-trash\"> </ax-icon>\n </ax-button>\n </ax-suffix>\n }\n </ax-number-box>\n } @if(multiple()) {\n <ax-button\n [text]=\"internalValue().length == 0 ? 'Add New' : 'Add Another'\"\n [disabled]=\"disabled()\"\n look=\"twotone\"\n (onClick)=\"addItem()\"\n class=\"ax-col-start-8 lg:ax-col-start-10 2xl:ax-col-start-10 ax-col-end-13\"\n >\n <ax-prefix>\n <ax-icon class=\"fa-solid fa-add\"></ax-icon>\n </ax-prefix>\n </ax-button>\n }\n </div>\n `,\n standalone: true,\n changeDetection: ChangeDetectionStrategy.OnPush,\n imports: [CommonModule, AXNumberBoxModule, FormsModule, AXDecoratorModule, AXFormModule, AXButtonModule],\n})\nexport class AXPNumberBoxWidgetEditComponent extends AXPWidgetComponent<number | number[]> {\n protected disabled = computed<boolean>(() => this.options()['disabled'] as boolean);\n protected multiple = computed<boolean>(() => this.options()['multiple'] as boolean);\n protected clearButton = computed<boolean>(() => (this.options()['hasClearButton'] as boolean) ?? true);\n\n protected decimals = computed<number>(() => (this.options()['decimals'] as number) ?? 0);\n protected minValue = computed<number>(() => this.options()['minValue'] as number);\n protected maxValue = computed<number>(() => this.options()['maxValue'] as number);\n protected seprator = computed<string>(() => (this.options()['seprator'] as string) ?? null);\n\n protected placeholder = computed<string>(() => this.options()['placeholder'] as string);\n\n protected validationService = inject(AXValidationService);\n\n protected validationRules: AXPValidationRules = [];\n\n protected internalValue: Signal<number[]> = computed(() =>\n Array.isArray(this.getValue()) ? (this.getValue() as number[]) : [this.getValue() as number]\n );\n\n protected validateFn = async (value: any, options: any) => {\n const vn = this.validationService.ruleFor(value);\n this.validationRules.forEach((v) => {\n const options = { ...v.options };\n if (v.message) options.message = v.message;\n vn.addRule(v.rule as any, options);\n });\n const a = await vn.validate();\n return { result: a.result, message: a.rules.find((c) => !c.result)?.message };\n };\n\n protected handleValueChange(e: AXValueChangedEvent, i: number) {\n if (e.isUserInteraction) {\n const newValues = this.internalValue().map((item, index) => (i === index ? e.value : item));\n if (this.multiple()) {\n this.setValue(newValues);\n } else this.setValue(newValues[0]);\n }\n }\n\n protected addItem() {\n const newValues = [...this.internalValue(), 0];\n this.setValue(newValues);\n }\n protected deleteItem(i: number) {\n const newValues = this.internalValue().filter((_, index) => index != i);\n this.setValue(newValues);\n }\n\n @HostBinding('class')\n private get __class(): string {\n const cls: any = {};\n cls[`ax-block`] = true;\n cls[`ax-flex-1`] = true;\n return cls;\n }\n}\n","import { AXPWidgetComponent } from '@acorex/platform/layout/builder';\nimport { CommonModule } from '@angular/common';\nimport { ChangeDetectionStrategy, Component, inject } from '@angular/core';\nimport { FormsModule } from '@angular/forms';\n\n@Component({\n template: ``,\n standalone: true,\n changeDetection: ChangeDetectionStrategy.OnPush,\n imports: [CommonModule, FormsModule],\n inputs: []\n})\nexport class AXPNumberBoxWidgetFilterComponent extends AXPWidgetComponent<any> { }","import { AXFormatService } from '@acorex/core/format';\nimport { AXPColumnWidgetComponent } from '@acorex/platform/layout/builder';\nimport { CommonModule } from '@angular/common';\nimport { ChangeDetectionStrategy, Component, computed, inject } from '@angular/core';\nimport { isNumber } from 'lodash-es';\n@Component({\n selector: 'axp-number-box-widget-column',\n template: `{{value()}}`,\n standalone: true,\n changeDetection: ChangeDetectionStrategy.OnPush,\n imports: [CommonModule],\n inputs: ['rawValue']\n})\nexport class AXPNumberBoxWidgetColumnComponent extends AXPColumnWidgetComponent<any> {\n\n\n private formatService = inject(AXFormatService);\n\n value = computed(() => {\n if (!isNumber(this.rawValue)) return '---';\n const value: number = Number(this.rawValue);\n if (this.options['format'] && this.options['format']['name']) {\n const { name, options } = this.options['format'];\n return this.formatService.format(value, name, options)\n } else {\n return value.toString()\n }\n })\n\n}","import { AXPWidgetComponent } from '@acorex/platform/layout/builder';\nimport { CommonModule } from '@angular/common';\nimport { ChangeDetectionStrategy, Component, inject } from '@angular/core';\n@Component({\n template: ``,\n standalone: true,\n changeDetection: ChangeDetectionStrategy.OnPush,\n imports: [CommonModule],\n inputs: []\n})\nexport class AXPNumberBoxWidgetPrintComponent extends AXPWidgetComponent<any> { }","import { AXP_WIDGETS_EDITOR_GROUP, AXPWidgetConfig, cloneProperty } from '@acorex/platform/layout/builder';\nimport {\n AXP_ALLOW_MULTIPLE_PROPERTY,\n AXP_DATA_PATH_PROPERTY,\n AXP_DISABLED_PROPERTY,\n AXP_PLACEHOLDER_PROPERTY,\n AXP_TABLE_COLUMN_WIDTH_PROPERTY,\n AXP_VALIDATION_PROPERTY,\n numberDefaultProperty,\n} from '../../../properties';\nimport { AXP_NAME_PROPERTY } from '../../../properties/general.props';\n\nexport const AXPNumberBoxWidget: AXPWidgetConfig = {\n name: 'number-editor',\n title: 'Number Box',\n description: 'Inputs numeric values',\n icon: 'fa-solid fa-input-numeric',\n group: AXP_WIDGETS_EDITOR_GROUP,\n type: 'editor',\n properties: [\n AXP_NAME_PROPERTY,\n AXP_DATA_PATH_PROPERTY,\n AXP_ALLOW_MULTIPLE_PROPERTY,\n AXP_DISABLED_PROPERTY,\n AXP_VALIDATION_PROPERTY,\n AXP_PLACEHOLDER_PROPERTY,\n numberDefaultProperty(),\n cloneProperty(AXP_TABLE_COLUMN_WIDTH_PROPERTY, { schema: { defaultValue: '200px' } }),\n ],\n components: {\n view: {\n component: () => import('./number-box-widget-view.component').then((c) => c.AXPNumberBoxWidgetViewComponent),\n },\n edit: {\n component: () => import('./number-box-widget-edit.component').then((c) => c.AXPNumberBoxWidgetEditComponent),\n },\n filter: {\n component: () => import('./number-box-widget-filter.component').then((c) => c.AXPNumberBoxWidgetFilterComponent),\n },\n column: {\n component: () => import('./number-box-widget-column.component').then((c) => c.AXPNumberBoxWidgetColumnComponent),\n },\n print: {\n component: () => import('./number-box-widget-print.component').then((c) => c.AXPNumberBoxWidgetPrintComponent),\n },\n designer: {\n component: () => import('./number-box-widget-edit.component').then((c) => c.AXPNumberBoxWidgetEditComponent),\n },\n },\n};\n\ndeclare module '@acorex/platform/layout/builder' {\n interface AXPWidgetTypesMap {\n number: 'number-editor';\n }\n}\n","import { AXPClipBoardService } from '@acorex/platform/common';\nimport { AXPWidgetComponent } from '@acorex/platform/layout/builder';\nimport { CommonModule } from '@angular/common';\nimport { ChangeDetectionStrategy, Component, computed, inject, signal } from '@angular/core';\n\n@Component({\n template: `\n <div class=\"ax-col-start-1 ax-col-end-10 lg:ax-col-end-7\">\n <div class=\"ax-flex ax-flex-1 ax-gap-3 ax-group ax-items-start ax-w-max\">\n <span>{{ show() ? internalValue() : '*******' }}</span>\n @if(hasEyeIcon()){\n <span\n class=\"ax-text-neutral-400 ax-cursor-pointer ax-invisible group-hover:ax-visible hover:!ax-text-primary-500\"\n (click)=\"toggleEye()\"\n >\n @if(!showPassword()){\n <i class=\"fa-solid fa-eye\"></i>\n }@else {\n <i class=\"fa-solid fa-eye-slash\"></i>\n }\n </span>\n } @if(hasCopyIcon() && hasEyeIcon()){\n <span\n class=\"ax-text-neutral-400 ax-cursor-pointer ax-invisible group-hover:ax-visible hover:!ax-text-primary-500\"\n (click)=\"clipboard.copy('Password', internalValue())\"\n >\n <i class=\"fa-solid fa-copy \"></i>\n </span>\n }\n </div>\n </div>\n `,\n standalone: true,\n changeDetection: ChangeDetectionStrategy.OnPush,\n imports: [CommonModule],\n inputs: [],\n})\nexport class AXPPasswordBoxWidgetViewComponent extends AXPWidgetComponent<string> {\n protected internalValue = computed(() => this.getValue());\n\n protected hasCopyIcon = computed<boolean>(() => this.options()['hasCopyIcon'] as boolean);\n protected hasEyeIcon = computed<boolean>(() => this.options()['hasEyeIcon'] as boolean);\n protected showPassword = computed<boolean>(() => this.options()['showPassword'] as boolean);\n\n protected show = signal(false);\n\n protected clipboard = inject(AXPClipBoardService);\n\n toggleEye() {\n this.show.update((prev) => !prev);\n }\n}\n","import { AXValueChangedEvent } from '@acorex/components/common';\nimport { AXDecoratorModule } from '@acorex/components/decorators';\nimport { AXFormModule } from '@acorex/components/form';\nimport { AXPasswordBoxModule } from '@acorex/components/password-box';\nimport { AXValidationModule } from '@acorex/core/validation';\nimport { AXPWidgetComponent } from '@acorex/platform/layout/builder';\nimport { CommonModule } from '@angular/common';\nimport { ChangeDetectionStrategy, Component, computed, HostBinding } from '@angular/core';\nimport { FormsModule } from '@angular/forms';\n\n@Component({\n template: `\n <ax-password-box [ngModel]=\"getValue()\" [disabled]=\"disabled()\" (onValueChanged)=\"handleValueChanged($event)\">\n <ax-validation-rule rule=\"required\"></ax-validation-rule>\n @if(hasClearButton()){\n <ax-clear-button></ax-clear-button>\n }\n </ax-password-box>\n `,\n standalone: true,\n changeDetection: ChangeDetectionStrategy.OnPush,\n imports: [CommonModule, FormsModule, AXDecoratorModule, AXPasswordBoxModule, AXValidationModule, AXFormModule],\n inputs: [],\n})\nexport class AXPPasswordBoxWidgetEditComponent extends AXPWidgetComponent<string> {\n protected disabled = computed<boolean>(() => this.options()['disabled'] as boolean);\n protected hasClearButton = computed<boolean>(() => this.options()['hasClearButton'] as boolean);\n\n\n @HostBinding('class')\n private get __class(): string {\n const cls: any = {};\n cls[`ax-block`] = true;\n cls[`ax-flex-1`] = true;\n return cls;\n }\n}\n","import { AXPWidgetComponent } from '@acorex/platform/layout/builder';\nimport { CommonModule } from '@angular/common';\nimport { ChangeDetectionStrategy, Component, inject } from '@angular/core';\nimport { FormsModule } from '@angular/forms';\n\n@Component({\n template: ``,\n standalone: true,\n changeDetection: ChangeDetectionStrategy.OnPush,\n imports: [CommonModule, FormsModule],\n inputs: []\n})\nexport class AXPPasswordBoxWidgetFilterComponent extends AXPWidgetComponent<any> { }","import { AXPColumnWidgetComponent } from '@acorex/platform/layout/builder';\nimport { CommonModule } from '@angular/common';\nimport { ChangeDetectionStrategy, Component, signal } from '@angular/core';\n@Component({\n template: `<div class=\"ax-flex ax-flex-1 ax-gap-3 ax-group ax-items-start ax-w-max\">\n <span>{{ show() ? rawValue : '*******' }}</span>\n @if(hasEyeIcon){\n <span\n class=\"ax-text-neutral-400 ax-cursor-pointer ax-invisible group-hover:ax-visible hover:!ax-text-primary-500\"\n (click)=\"toggleEye()\"\n >\n @if(!showPassword){\n <i class=\"fa-solid fa-eye\"></i>\n }@else {\n <i class=\"fa-solid fa-eye-slash\"></i>\n }\n </span>\n }\n </div>`,\n standalone: true,\n changeDetection: ChangeDetectionStrategy.OnPush,\n imports: [CommonModule],\n inputs: ['rawValue'],\n})\nexport class AXPPasswordBoxWidgetColumnComponent extends AXPColumnWidgetComponent<any> {\n protected hasEyeIcon = this.options['hasEyeIcon'];\n protected showPassword = this.options['showPassword'];\n\n protected show = signal(!!this.rawValue);\n\n toggleEye() {\n this.show.update((prev) => !prev);\n }\n}\n","import { AXPWidgetComponent } from '@acorex/platform/layout/builder';\nimport { CommonModule } from '@angular/common';\nimport { ChangeDetectionStrategy, Component, inject } from '@angular/core';\n@Component({\n template: ``,\n standalone: true,\n changeDetection: ChangeDetectionStrategy.OnPush,\n imports: [CommonModule],\n inputs: []\n})\nexport class AXPPasswordBoxWidgetPrintComponent extends AXPWidgetComponent<any> { }","import { AXPWidgetConfig, AXP_WIDGETS_EDITOR_GROUP } from '@acorex/platform/layout/builder';\nimport {\n AXP_DISABLED_PROPERTY,\n AXP_HAS_CLEAR_BUTTON_PROPERTY,\n AXP_HAS_COPY_ICON_PROPERTY,\n AXP_HAS_EYE_ICON_PROPERTY,\n AXP_VALIDATION_PROPERTY,\n} from '../../../properties';\nimport { AXP_NAME_PROPERTY } from '../../../properties/general.props';\nexport const AXPPasswordBoxWidget: AXPWidgetConfig = {\n name: 'password-editor',\n title: 'Password Box',\n description: 'Secures password input',\n icon: 'fa-solid fa-lock',\n group: AXP_WIDGETS_EDITOR_GROUP,\n type: 'editor',\n properties: [\n AXP_NAME_PROPERTY,\n AXP_VALIDATION_PROPERTY,\n AXP_HAS_CLEAR_BUTTON_PROPERTY,\n AXP_DISABLED_PROPERTY,\n AXP_HAS_COPY_ICON_PROPERTY,\n AXP_HAS_EYE_ICON_PROPERTY,\n ],\n components: {\n view: {\n component: () => import('./password-box-widget-view.component').then((c) => c.AXPPasswordBoxWidgetViewComponent),\n },\n edit: {\n component: () => import('./password-box-widget-edit.component').then((c) => c.AXPPasswordBoxWidgetEditComponent),\n },\n filter: {\n component: () => import('./password-box-widget-filter.component').then((c) => c.AXPPasswordBoxWidgetFilterComponent),\n },\n column: {\n component: () => import('./password-box-widget-column.component').then((c) => c.AXPPasswordBoxWidgetColumnComponent),\n },\n print: {\n component: () => import('./password-box-widget-print.component').then((c) => c.AXPPasswordBoxWidgetPrintComponent),\n },\n designer: {\n component: () => import('./password-box-widget-edit.component').then((c) => c.AXPPasswordBoxWidgetEditComponent),\n },\n },\n};\n\ndeclare module '@acorex/platform/layout/builder' {\n interface AXPWidgetTypesMap {\n password: 'password-editor';\n }\n}\n","import { AXBadgeModule } from '@acorex/components/badge';\nimport { AXPClipBoardService } from '@acorex/platform/common';\nimport { AXPWidgetComponent } from '@acorex/platform/layout/builder';\nimport { CommonModule } from '@angular/common';\nimport { ChangeDetectionStrategy, Component, computed, inject } from '@angular/core';\n\n@Component({\n template: `\n <div class=\"ax-grid ax-grid-cols-12 ax-gap-2 \">\n <ng-container *ngIf=\"multiple()\">\n @for(item of internalValue();track item?.value) {\n <ng-template [ngTemplateOutlet]=\"itemTemplate\" [ngTemplateOutletContext]=\"{ data: item }\" ]></ng-template>\n }\n </ng-container>\n\n <ng-container *ngIf=\"!multiple()\">\n <ng-template [ngTemplateOutlet]=\"itemTemplate\" [ngTemplateOutletContext]=\"{ data: internalValue()[0] }\" ]></ng-template>\n </ng-container>\n\n <ng-template #itemTemplate let-item=\"data\">\n <ng-container *ngIf=\"item\">\n <div class=\"ax-col-start-1 ax-col-end-10 lg:ax-col-end-7\">\n <div class=\"ax-flex ax-flex-1 ax-gap-3 ax-items-center ax-w-max ax-group\">\n <div class=\"ax-w-6 ax-h-6 ax-flex ax-items-center ax-justify-center\">\n <i class=\"fa-solid ax-text-neutral-400 fa-phone\"></i>\n </div>\n <a class=\"group-hover:!ax-text-primary-500\" href=\"tel:{{ item.value }}\">{{ item.value }}</a>\n <span\n class=\"ax-text-neutral-400 ax-cursor-pointer ax-invisible group-hover:ax-visible hover:!ax-text-primary-500\"\n (click)=\"clipboard.copy('Phone Number', item.value)\"\n >\n <i class=\"fa-solid fa-copy \"></i>\n </span>\n @if(hasLabel()){\n <ax-badge color=\"primary\" [look]=\"'twotone'\" [text]=\"item.label\"></ax-badge>\n }\n </div>\n </div>\n </ng-container>\n </ng-template>\n </div>\n `,\n standalone: true,\n changeDetection: ChangeDetectionStrategy.OnPush,\n imports: [CommonModule, AXBadgeModule],\n inputs: [],\n})\nexport class AXPPhoneBoxWidgetViewComponent extends AXPWidgetComponent<any> {\n protected clipboard = inject(AXPClipBoardService);\n\n protected multiple = computed<boolean>(() => this.options()['multiple'] as boolean);\n protected hasLabel = computed<boolean>(() => this.options()['hasLabel'] as boolean);\n\n protected internalValue = computed(() =>\n this.getValue()\n ? Array.isArray(this.getValue())\n ? this.getValue().map((item: any) => this.extractItem(item))\n : [this.extractItem(this.getValue())]\n : []\n );\n\n private extractItem(item: any): any {\n return typeof item == 'object'\n ? {\n value: item.value ?? '-',\n type: item.type ?? 'mobile',\n label: item.label,\n }\n : {\n value: item,\n type: 'mobile',\n label: null,\n };\n }\n}\n","import { AXButtonModule } from '@acorex/components/button';\nimport { AXValueChangedEvent } from '@acorex/components/common';\nimport { AXDecoratorModule } from '@acorex/components/decorators';\nimport { AXFormModule } from '@acorex/components/form';\nimport { AXSelectBoxModule } from '@acorex/components/select-box';\nimport { AXTextBoxModule } from '@acorex/components/text-box';\nimport { AXValidationModule, AXValidationService } from '@acorex/core/validation';\nimport { AXPValidationRules } from '@acorex/platform/core';\nimport { AXPWidgetComponent } from '@acorex/platform/layout/builder';\nimport { CommonModule } from '@angular/common';\nimport { ChangeDetectionStrategy, Component, HostBinding, Signal, computed, inject } from '@angular/core';\nimport { FormsModule } from '@angular/forms';\n\n@Component({\n template: `\n <div class=\"ax-grid ax-grid-cols-12 ax-gap-4\">\n <ng-container *ngIf=\"multiple()\">\n @for(item of internalValue();track $index) {\n <ax-text-box\n [ngModel]=\"item.value\"\n (onValueChanged)=\"handleValueChange($event, $index)\"\n type=\"text\"\n class=\"ax-col-start-1 ax-col-end-13 lg:ax-col-end-8\"\n [class.lg:!ax-col-end-12]=\"!hasLabel()\"\n >\n @for (validation of validationRules; track $index) {\n <ax-validation-rule [rule]=\"validation.rule\" [message]=\"validation.options?.message\" [options]=\"validation.options\"></ax-validation-rule>\n }\n </ax-text-box>\n @if(hasLabel()){\n <ax-select-box\n [dataSource]=\"phoneLabels()\"\n [ngModel]=\"item.label\"\n (onValueChanged)=\"handleLabelChange($event, $index)\"\n class=\"ax-col-start-1 ax-col-end-11 lg:ax-col-start-8 lg:ax-col-end-12\"\n >\n </ax-select-box>\n }\n <ax-button\n look=\"twotone\"\n color=\"danger\"\n (onClick)=\"deleteItem($index)\"\n class=\"ax-col-start-11 ax-col-end-13 lg:ax-col-start-12 lg:ax-col-end-13 ax-justify-self-end\"\n >\n <ax-icon icon=\"fa-regular fa-xmark\"></ax-icon>\n </ax-button>\n }\n </ng-container>\n <ng-container *ngIf=\"!multiple()\">\n <ax-text-box\n [ngModel]=\"internalValue()[0].value\"\n (onValueChanged)=\"handleValueChange($event, 0)\"\n type=\"text\"\n class=\"ax-col-start-1 ax-col-end-13 lg:ax-col-end-8\"\n [class.lg:!ax-col-end-13]=\"!hasLabel\"\n >\n @for (validation of validationRules; track $index) {\n <ax-validation-rule [rule]=\"validation.rule\" [message]=\"validation.options?.message\" [options]=\"validation.options\"></ax-validation-rule>\n }\n </ax-text-box>\n @if(hasLabel()){\n <ax-select-box\n [dataSource]=\"phoneLabels()\"\n [ngModel]=\"internalValue()[0].label\"\n (onValueChanged)=\"handleLabelChange($event, 0)\"\n class=\"ax-col-start-1 ax-col-end-11 lg:ax-col-start-8 lg:ax-col-end-13\"\n >\n </ax-select-box>\n }\n </ng-container>\n <ax-button\n *ngIf=\"multiple()\"\n [text]=\"internalValue().length == 0 ? 'Add New' : 'Add Another'\"\n look=\"twotone\"\n (onClick)=\"addItem()\"\n class=\"ax-col-start-8 lg:ax-col-start-10 2xl:ax-col-start-10 ax-col-end-13\"\n >\n <ax-prefix>\n <ax-icon class=\"fa-solid fa-add\"></ax-icon>\n </ax-prefix>\n </ax-button>\n </div>\n `,\n standalone: true,\n changeDetection: ChangeDetectionStrategy.OnPush,\n imports: [CommonModule, FormsModule, AXFormModule, AXButtonModule, AXDecoratorModule, AXSelectBoxModule, AXTextBoxModule, AXValidationModule],\n inputs: [],\n})\nexport class AXPPhoneBoxWidgetEditComponent extends AXPWidgetComponent<any> {\n protected validationService = inject(AXValidationService);\n\n protected multiple = computed<boolean>(() => this.options()['multiple'] as boolean);\n protected disabled = computed<boolean>(() => this.options()['disabled'] as boolean);\n protected clearButton = computed<boolean>(() => this.options()['clearButton'] as boolean);\n protected hasLabel = computed<boolean>(() => this.options()['hasLabel'] as boolean);\n protected phoneLabels = computed<string[]>(() => this.options()['phoneLabels'] || ['Mobile', 'Home', 'Work', 'Other']);\n\n protected internalValue: Signal<{ value: string; label?: string; id: string }[]> = computed(() => this.getValueAsArrayOfObjects());\n\n private _validationRules: AXPValidationRules = [];\n public get validationRules(): AXPValidationRules {\n return this._validationRules;\n }\n public set validationRules(v: AXPValidationRules) {\n this._validationRules = v;\n }\n\n private getValueAsArrayOfObjects(): any[] {\n const value = this.getValue();\n if (Array.isArray(value)) {\n return value.map((item) => (typeof item === 'object' ? item : { value: item }));\n }\n return typeof value === 'object' ? [value] : [{ value: value || '' }];\n }\n\n protected handleValueChange(e: AXValueChangedEvent, selectedIndex: number) {\n if (e.isUserInteraction) {\n const newValues = this.internalValue().map((item, index) => (selectedIndex === index ? { ...item, value: e.value } : item));\n if (this.multiple()) this.setValue(newValues);\n else if (this.hasLabel()) this.setValue(newValues[0]);\n else this.setValue(newValues[0].value);\n }\n }\n\n protected handleLabelChange(e: AXValueChangedEvent, selectedIndex: number) {\n if (e.isUserInteraction) {\n const newValues = this.internalValue().map((item, index) => (selectedIndex === index ? { ...item, label: e.value } : item));\n if (this.multiple()) this.setValue(newValues);\n else this.setValue(newValues[0]);\n }\n }\n\n protected addItem() {\n const newValues = [...this.internalValue(), ''];\n this.setValue(newValues);\n }\n protected deleteItem(deletedIndex: number) {\n const newValues = this.internalValue().filter((_, index) => index != deletedIndex);\n this.setValue(newValues);\n }\n\n @HostBinding('class')\n private get __class(): string {\n const cls: any = {};\n cls[`ax-block`] = true;\n cls[`ax-flex-1`] = true;\n return cls;\n }\n}\n","import { AXPWidgetComponent } from '@acorex/platform/layout/builder';\nimport { CommonModule } from '@angular/common';\nimport { ChangeDetectionStrategy, Component, inject } from '@angular/core';\nimport { FormsModule } from '@angular/forms';\n\n@Component({\n template: ``,\n standalone: true,\n changeDetection: ChangeDetectionStrategy.OnPush,\n imports: [CommonModule, FormsModule],\n inputs: []\n})\nexport class AXPPhoneBoxWidgetFilterComponent extends AXPWidgetComponent<any> { }","import { AXPColumnWidgetComponent } from '@acorex/platform/layout/builder';\nimport { CommonModule } from '@angular/common';\nimport { ChangeDetectionStrategy, Component, Signal, computed } from '@angular/core';\n@Component({\n template: `<div>\n @if(multiple && list.length>1){\n <div [title]=\"text()\">{{ dot3(text()) }}</div>\n }@else {\n <div>\n @if(list() && list().length){\n {{ list()[0].value }}\n }@else { - }\n </div>\n }\n </div>`,\n standalone: true,\n changeDetection: ChangeDetectionStrategy.OnPush,\n imports: [CommonModule],\n inputs: ['rawValue'],\n})\nexport class AXPPhoneBoxWidgetColumnComponent extends AXPColumnWidgetComponent<any> {\n protected list: Signal<{ value: string; label: string }[]> = computed(() =>\n Array.isArray(this.rawValue) ? this.rawValue.map((c) => this.extractItem(c)) : [this.extractItem(this.rawValue)]\n );\n protected text: Signal<string> = computed(() =>\n this.list()\n .map((item) => item.value)\n .join('\\n')\n );\n protected multiple!: boolean;\n protected hasLabel!: boolean;\n\n protected dot3(text: string) {\n console.log(text);\n if (this.multiple) return text.split('\\n')[0] + '...';\n else return text.split('\\n')[0];\n }\n\n private extractItem(item: any): any {\n return typeof item == 'object'\n ? {\n value: item.value ?? '-',\n type: item.type ?? 'primary',\n label: item.label,\n }\n : {\n value: item,\n type: 'primary',\n label: null,\n };\n }\n}\n","import { AXPWidgetComponent } from '@acorex/platform/layout/builder';\nimport { CommonModule } from '@angular/common';\nimport { ChangeDetectionStrategy, Component, inject } from '@angular/core';\n@Component({\n template: ``,\n standalone: true,\n changeDetection: ChangeDetectionStrategy.OnPush,\n imports: [CommonModule],\n inputs: []\n})\nexport class AXPPhoneBoxWidgetPrintComponent extends AXPWidgetComponent<any> { }","import { AXPWidgetConfig, AXP_WIDGETS_EDITOR_GROUP } from '@acorex/platform/layout/builder';\nimport { AXP_ALLOW_MULTIPLE_PROPERTY, AXP_HAS_LABEL_PROPERTY, AXP_TABLE_COLUMN_WIDTH_PROPERTY, AXP_VALIDATION_PROPERTY } from '../../../properties';\n\nexport const AXPPhoneBoxWidget: AXPWidgetConfig = {\n name: 'phone-editor',\n title: 'Phone Box',\n description: 'Inputs and validates phone numbers',\n icon: 'fa-solid fa-input-numeric',\n group: AXP_WIDGETS_EDITOR_GROUP,\n type: 'editor',\n properties: [AXP_HAS_LABEL_PROPERTY, AXP_ALLOW_MULTIPLE_PROPERTY, AXP_VALIDATION_PROPERTY, AXP_TABLE_COLUMN_WIDTH_PROPERTY],\n components: {\n view: {\n component: () => import('./phone-box-widget-view.component').then((c) => c.AXPPhoneBoxWidgetViewComponent),\n },\n edit: {\n component: () => import('./phone-box-widget-edit.component').then((c) => c.AXPPhoneBoxWidgetEditComponent),\n },\n filter: {\n component: () => import('./phone-box-widget-filter.component').then((c) => c.AXPPhoneBoxWidgetFilterComponent),\n },\n column: {\n component: () => import('./phone-box-widget-column.component').then((c) => c.AXPPhoneBoxWidgetColumnComponent),\n properties: [AXP_TABLE_COLUMN_WIDTH_PROPERTY],\n },\n print: {\n component: () => import('./phone-box-widget-print.component').then((c) => c.AXPPhoneBoxWidgetPrintComponent),\n },\n designer: {\n component: () => import('./phone-box-widget-edit.component').then((c) => c.AXPPhoneBoxWidgetEditComponent),\n },\n },\n};\n\ndeclare module '@acorex/platform/layout/builder' {\n interface AXPWidgetTypesMap {\n phone: 'phone-editor';\n }\n}\n","import { AXPopupService } from '@acorex/components/popup';\nimport { AXPlatform } from '@acorex/core/platform';\nimport { AXPHtmlUtils } from '@acorex/platform/core';\nimport { AXPWidgetComponent } from '@acorex/platform/layout/builder';\nimport { CommonModule } from '@angular/common';\nimport { ChangeDetectionStrategy, Component, computed, inject, Signal } from '@angular/core';\nimport { SafeHtml } from '@angular/platform-browser';\n\n@Component({\n selector: 'axp-rich-text-widget',\n template: ` <span class=\"ax-truncate ax-underline ax-cursor-pointer\" (click)=\"openPopup()\" [innerHTML]=\"text()\">\n </span>`,\n standalone: true,\n changeDetection: ChangeDetectionStrategy.OnPush,\n imports: [CommonModule],\n inputs: [],\n})\nexport class AXPRichTextWidgetViewComponent extends AXPWidgetComponent<any> {\n private htmlUtil = inject(AXPHtmlUtils);\n private popupService: AXPopupService = inject(AXPopupService);\n private platform = inject(AXPlatform);\n protected html: Signal<SafeHtml | null> = computed(() => this.htmlUtil.getSafeHTMLfromHTML(this.getValue()));\n protected text: Signal<string> = computed(() => this.htmlUtil.getTextFromHTML(this.getValue()));\n\n protected async openPopup() {\n const { AXPRichTextPopupComponent } = await import('./rich-text-popup.component');\n this.popupService.open(AXPRichTextPopupComponent, {\n size: this.platform.is('Mobile') || this.platform.is('SM') ? 'full' : 'md',\n header: true,\n closeOnBackdropClick: true,\n closeButton: true,\n draggable: true,\n title: this.path ?? '',\n data: {\n html: this.html,\n },\n });\n }\n}\n","import { AXValueChangedEvent } from '@acorex/components/common';\nimport { AXFormModule } from '@acorex/components/form';\nimport { AXWysiwygModule } from '@acorex/components/wysiwyg';\nimport { AXValidationModule } from '@acorex/core/validation';\nimport { AXPValidationRules } from '@acorex/platform/core';\nimport { AXPWidgetComponent } from '@acorex/platform/layout/builder';\nimport { CommonModule } from '@angular/common';\nimport { ChangeDetectionStrategy, Component, computed, HostBinding, ViewEncapsulation } from '@angular/core';\nimport { FormsModule } from '@angular/forms';\n\n@Component({\n selector: 'axp-rich-text-widget',\n template: `<ax-wysiwyg-container\n [placeHolder]=\"placeholder()\"\n [look]=\"'solid'\"\n [ngModel]=\"getValue()\"\n (onValueChanged)=\"setWysiwyg($event)\"\n >\n <ax-wysiwyg-view class=\"ax-min-h-28\"></ax-wysiwyg-view>\n <ax-wysiwyg-toolbar>\n <ax-wysiwyg-history></ax-wysiwyg-history>\n <ax-wysiwyg-font-style></ax-wysiwyg-font-style>\n <ax-wysiwyg-colors></ax-wysiwyg-colors>\n <ax-wysiwyg-list></ax-wysiwyg-list>\n <ax-wysiwyg-alignment></ax-wysiwyg-alignment>\n </ax-wysiwyg-toolbar>\n @for (validation of validationRules; track $index) {\n <ax-validation-rule\n [rule]=\"validation.rule\"\n [message]=\"validation.options?.message\"\n [options]=\"validation.options\"\n ></ax-validation-rule>\n }\n </ax-wysiwyg-container>`,\n standalone: true,\n encapsulation: ViewEncapsulation.None,\n changeDetection: ChangeDetectionStrategy.OnPush,\n imports: [CommonModule, AXWysiwygModule, AXValidationModule, AXFormModule, FormsModule],\n inputs: [],\n})\nexport class AXPRichTextWidgetEditComponent extends AXPWidgetComponent<any> {\n protected placeholder = computed<string>(() => (this.options()['placeholder'] as string) ?? 'default');\n\n protected setWysiwyg(e: AXValueChangedEvent) {\n if (e) {\n this.setValue(e.value);\n }\n }\n eff = computed(() => {\n console.log(this.getValue());\n (window as any).a = this;\n });\n\n private _validationRules: AXPValidationRules = [];\n public get validationRules(): AXPValidationRules {\n return this._validationRules;\n }\n public set validationRules(v: AXPValidationRules) {\n this._validationRules = v;\n }\n\n @HostBinding('class')\n private get __class(): string {\n const cls: any = {};\n cls[`ax-block`] = true;\n cls[`ax-flex-1`] = true;\n return cls;\n }\n}\n","import { AXPWidgetComponent } from '@acorex/platform/layout/builder';\nimport { CommonModule } from '@angular/common';\nimport { ChangeDetectionStrategy, Component, inject } from '@angular/core';\nimport { FormsModule } from '@angular/forms';\n\n@Component({\n template: ``,\n standalone: true,\n changeDetection: ChangeDetectionStrategy.OnPush,\n imports: [CommonModule, FormsModule],\n inputs: []\n})\nexport class AXPRichTextWidgetFilterComponent extends AXPWidgetComponent<any> { }","import { AXButtonModule } from '@acorex/components/button';\nimport { AXDecoratorModule } from '@acorex/components/decorators';\nimport { AXPopupService } from '@acorex/components/popup';\nimport { AXPlatform } from '@acorex/core/platform';\nimport { AXPHtmlUtils } from '@acorex/platform/core';\nimport { AXPColumnWidgetComponent } from '@acorex/platform/layout/builder';\nimport { CommonModule } from '@angular/common';\nimport { ChangeDetectionStrategy, Component, computed, inject, Signal } from '@angular/core';\nimport { SafeHtml } from '@angular/platform-browser';\n\n@Component({\n template: `<span class=\"ax-truncate ax-underline ax-block ax-w-full ax-cursor-pointer\" (click)=\"openPopup()\" [innerHTML]=\"text()\"> </span>`,\n standalone: true,\n changeDetection: ChangeDetectionStrategy.OnPush,\n imports: [CommonModule, AXDecoratorModule, AXButtonModule],\n inputs: ['rawValue'],\n})\nexport class AXPRichTextWidgetColumnComponent extends AXPColumnWidgetComponent<string | null | undefined> {\n private htmlUtil = inject(AXPHtmlUtils);\n private popupService: AXPopupService = inject(AXPopupService);\n private platform = inject(AXPlatform);\n protected html: Signal<SafeHtml | null> = computed(() => this.htmlUtil.getSafeHTMLfromHTML(this.rawValue));\n protected text: Signal<string> = computed(() => this.htmlUtil.getTextFromHTML(this.rawValue));\n\n protected async openPopup() {\n const { AXPRichTextPopupComponent } = await import('./rich-text-popup.component');\n this.popupService.open(AXPRichTextPopupComponent, {\n size: this.platform.is('Mobile') || this.platform.is('SM') ? 'full' : 'md',\n header: true,\n closeOnBackdropClick: true,\n closeButton: true,\n draggable: true,\n title: this.path ?? '',\n data: {\n html: this.html,\n },\n });\n }\n}\n","import { AXPWidgetComponent } from '@acorex/platform/layout/builder';\nimport { CommonModule } from '@angular/common';\nimport { ChangeDetectionStrategy, Component, inject } from '@angular/core';\n@Component({\n template: ``,\n standalone: true,\n changeDetection: ChangeDetectionStrategy.OnPush,\n imports: [CommonModule],\n inputs: []\n})\nexport class AXPRichTextWidgetPrintComponent extends AXPWidgetComponent<any> { }","import { AXP_WIDGETS_EDITOR_GROUP, AXPWidgetConfig, cloneProperty } from '@acorex/platform/layout/builder';\nimport {\n AXP_ALLOW_MULTIPLE_PROPERTY,\n AXP_DATA_PATH_PROPERTY,\n AXP_DISABLED_PROPERTY,\n AXP_PLACEHOLDER_PROPERTY,\n AXP_TABLE_COLUMN_WIDTH_PROPERTY,\n AXP_VALIDATION_PROPERTY,\n} from '../../../properties';\nimport { AXP_NAME_PROPERTY } from '../../../properties/general.props';\nexport const AXPRichTextWidget: AXPWidgetConfig = {\n name: 'rich-text-editor',\n title: 'Rich Text',\n description: 'Formats and edits rich text',\n icon: 'fa-solid fa-input-text',\n group: AXP_WIDGETS_EDITOR_GROUP,\n type: 'editor',\n properties: [\n AXP_NAME_PROPERTY,\n AXP_DATA_PATH_PROPERTY,\n AXP_ALLOW_MULTIPLE_PROPERTY,\n AXP_DISABLED_PROPERTY,\n AXP_VALIDATION_PROPERTY,\n AXP_PLACEHOLDER_PROPERTY,\n //cloneProperty(AXP_TABLE_COLUMN_WIDTH_PROPERTY, { schema: { defaultValue: '300px' } }),\n ],\n components: {\n view: {\n component: () => import('./rich-text-widget-view.component').then((c) => c.AXPRichTextWidgetViewComponent),\n },\n edit: {\n component: () => import('./rich-text-widget-edit.component').then((c) => c.AXPRichTextWidgetEditComponent),\n },\n filter: {\n component: () => import('./rich-text-widget-filter.component').then((c) => c.AXPRichTextWidgetFilterComponent),\n },\n column: {\n component: () => import('./rich-text-widget-column.component').then((c) => c.AXPRichTextWidgetColumnComponent),\n },\n print: {\n component: () => import('./rich-text-widget-print.component').then((c) => c.AXPRichTextWidgetPrintComponent),\n },\n designer: {\n component: () => import('./rich-text-widget-edit.component').then((c) => c.AXPRichTextWidgetEditComponent),\n },\n },\n};\n\ndeclare module '@acorex/platform/layout/builder' {\n interface AXPWidgetTypesMap {\n richText: 'rich-text-editor';\n }\n}\n","import { AXPWidgetComponent } from '@acorex/platform/layout/builder';\nimport { CommonModule } from '@angular/common';\nimport { ChangeDetectionStrategy, Component, computed, HostBinding } from '@angular/core';\n@Component({\n template: `\n <div>\n @if(multiple()) { @for (item of internalValue(); track $index) {\n <p>{{ item.text }}</p>\n } }@else {\n <p>{{ internalValue()[0].text }}</p>\n }\n </div>\n `,\n standalone: true,\n changeDetection: ChangeDetectionStrategy.OnPush,\n imports: [CommonModule],\n inputs: [],\n})\nexport class AXPSelectBoxWidgetViewComponent extends AXPWidgetComponent<any> {\n protected internalValue = computed(() =>\n Array.isArray(this.getValue())\n ? this.getValue().map((item: any) => this.extractItem(item))\n : [this.extractItem(this.getValue())]\n );\n\n protected text: string | null = null;\n\n protected multiple = computed<boolean>(() => this.options()['multiple'] as boolean);\n protected valueField = computed<string>(() => (this.options()['valueField'] as string) ?? 'id');\n protected textField = computed<string>(() => (this.options()['textField'] as string) ?? 'title');\n\n private extractItem(item: any): any {\n return typeof item == 'object'\n ? {\n id: item[this.valueField()],\n text: item[this.textField()],\n }\n : {\n id: item,\n text: item,\n };\n }\n\n @HostBinding('class')\n private get __class(): string {\n const cls: any = {};\n cls[`ax-block`] = true;\n cls[`ax-flex-1`] = true;\n return cls;\n }\n}\n","import { AXDataSource, AXValueChangedEvent, convertArrayToDataSource } from '@acorex/components/common';\nimport { AXDecoratorModule } from '@acorex/components/decorators';\nimport { AXFormModule } from '@acorex/components/form';\nimport { AXSelectBoxComponent, AXSelectBoxModule } from '@acorex/components/select-box';\nimport { AXPValidationRules } from '@acorex/platform/core';\nimport { AXPWidgetComponent } from '@acorex/platform/layout/builder';\nimport { CommonModule } from '@angular/common';\nimport { ChangeDetectionStrategy, Component, HostBinding, ViewChild, computed } from '@angular/core';\nimport { FormsModule } from '@angular/forms';\n\n@Component({\n selector: 'axp-select-box-widget-edit',\n template: `\n <ax-select-box\n #dd\n [placeholder]=\"placeholder()\"\n [dataSource]=\"dataSource()\"\n [disabled]=\"disabled()\"\n [valueField]=\"valueField()\"\n [textField]=\"textField()\"\n [ngModel]=\"getValue()\"\n [multiple]=\"multiple()\"\n (onValueChanged)=\"handleValueChange($event)\"\n >\n @if(hasClearButton()) {\n <ax-clear-button></ax-clear-button>\n } @for (validation of validationRules(); track $index) {\n <ax-validation-rule\n [rule]=\"validation.rule\"\n [message]=\"validation.options?.message\"\n [options]=\"validation.options\"\n ></ax-validation-rule>\n }\n </ax-select-box>\n `,\n standalone: true,\n changeDetection: ChangeDetectionStrategy.OnPush,\n imports: [CommonModule, FormsModule, AXSelectBoxModule, AXFormModule, AXDecoratorModule],\n})\nexport class AXPSelectBoxWidgetEditComponent extends AXPWidgetComponent<any> {\n @ViewChild(AXSelectBoxComponent)\n private selectbox!: AXSelectBoxComponent;\n\n protected multiple = computed<boolean>(() => this.options()['multiple'] as boolean);\n\n protected validationRules = computed<AXPValidationRules>(\n () => (this.options()['validationRules'] as AXPValidationRules) ?? []\n );\n\n protected dataSource = computed<AXDataSource>(() => {\n const rawValue = this.options()['dataSource'];\n if (rawValue instanceof AXDataSource) {\n return rawValue;\n } else if (Array.isArray(rawValue)) {\n return convertArrayToDataSource(rawValue);\n } else {\n return convertArrayToDataSource([]);\n }\n });\n\n protected valueField = computed<string>(() => (this.options()['valueField'] as string) ?? 'id');\n protected textField = computed<string>(() => (this.options()['textField'] as string) ?? 'title');\n protected disabled = computed<boolean>(() => this.options()['disabled'] as boolean);\n protected placeholder = computed<string>(() => (this.options()['placeholder'] as string) ?? '');\n protected hasClearButton = computed<boolean>(() => this.options()['hasClearButton'] as boolean);\n\n protected handleValueChange(e: AXValueChangedEvent) {\n if (e.isUserInteraction) {\n this.setValue((e.component as AXSelectBoxComponent).selectedItems[0]);\n }\n }\n\n refresh() {\n this.selectbox?.refresh();\n }\n\n clear() {\n this.selectbox?.reset(true);\n this.selectbox?.refresh();\n }\n\n @HostBinding('class')\n private get __class(): string {\n const cls: any = {};\n cls[`ax-block`] = true;\n cls[`ax-flex-1`] = true;\n return cls;\n }\n}\n","import { AXPWidgetComponent } from '@acorex/platform/layout/builder';\nimport { CommonModule } from '@angular/common';\nimport { ChangeDetectionStrategy, Component, inject } from '@angular/core';\n@Component({\n template: ``,\n standalone: true,\n changeDetection: ChangeDetectionStrategy.OnPush,\n imports: [CommonModule],\n inputs: []\n})\nexport class AXPSelectBoxWidgetFilterComponent extends AXPWidgetComponent<any> { }","import { AXBadgeModule } from '@acorex/components/badge';\nimport { AXPColumnWidgetComponent } from '@acorex/platform/layout/builder';\nimport { CommonModule } from '@angular/common';\nimport { ChangeDetectionStrategy, Component, computed } from '@angular/core';\n@Component({\n template: ` <div class=\"ax-flex ax-gap-2\">\n @for (item of internalValue(); track $index) {\n <ax-badge [look]=\"'twotone'\" [text]=\"item[this.textField]\" color=\"primary\"></ax-badge>\n }\n </div>`,\n standalone: true,\n changeDetection: ChangeDetectionStrategy.OnPush,\n imports: [CommonModule, AXBadgeModule],\n inputs: ['rawValue'],\n})\nexport class AXPSelectBoxWidgetColumnComponent extends AXPColumnWidgetComponent<any> {\n protected multiple: boolean = this.options['multiple'];\n protected valueField: string = this.options['valueField'] ?? 'id';\n protected textField: string = this.options['textField'] ?? 'title';\n\n protected internalValue = computed(() =>\n Array.isArray(this.rawValue)\n ? this.rawValue.map((item: any) => this.extractItem(item))\n : [this.extractItem(this.rawValue)]\n );\n\n private extractItem(item: any): any {\n return typeof item == 'object'\n ? {\n [this.valueField]: item[this.valueField],\n [this.textField]: item[this.textField],\n }\n : {\n [this.valueField]: item,\n [this.textField]: item,\n };\n }\n}\n","import { AXPWidgetComponent } from '@acorex/platform/layout/builder';\nimport { CommonModule } from '@angular/common';\nimport { ChangeDetectionStrategy, Component, inject } from '@angular/core';\n@Component({\n template: ``,\n standalone: true,\n changeDetection: ChangeDetectionStrategy.OnPush,\n imports: [CommonModule],\n inputs: []\n})\nexport class AXPSelectBoxWidgetPrintComponent extends AXPWidgetComponent<any> { }","import { AXPWidgetConfig, AXP_WIDGETS_EDITOR_GROUP } from '@acorex/platform/layout/builder';\nimport {\n AXP_ALLOW_MULTIPLE_PROPERTY,\n AXP_DATA_PATH_PROPERTY,\n AXP_DISABLED_PROPERTY,\n AXP_HAS_CLEAR_BUTTON_PROPERTY,\n AXP_PLACEHOLDER_PROPERTY,\n AXP_TEXT_FIELD_PROPERTY,\n AXP_VALUE_FIELD_PROPERTY,\n} from '../../../properties';\n\nexport const AXPSelectBoxWidget: AXPWidgetConfig = {\n name: 'select-editor',\n title: 'Select Box',\n description: 'Chooses from dropdown options',\n icon: 'fa-solid fa-list-dropdown',\n group: AXP_WIDGETS_EDITOR_GROUP,\n type: 'editor',\n properties: [\n AXP_DATA_PATH_PROPERTY,\n AXP_ALLOW_MULTIPLE_PROPERTY,\n AXP_DISABLED_PROPERTY,\n AXP_TEXT_FIELD_PROPERTY,\n AXP_VALUE_FIELD_PROPERTY,\n AXP_PLACEHOLDER_PROPERTY,\n AXP_HAS_CLEAR_BUTTON_PROPERTY,\n ],\n components: {\n view: {\n component: () => import('./select-box-widget-view.component').then((c) => c.AXPSelectBoxWidgetViewComponent),\n },\n edit: {\n component: () => import('./select-box-widget-edit.component').then((c) => c.AXPSelectBoxWidgetEditComponent),\n },\n filter: {\n component: () => import('./select-box-widget-filter.component').then((c) => c.AXPSelectBoxWidgetFilterComponent),\n },\n column: {\n component: () => import('./select-box-widget-column.component').then((c) => c.AXPSelectBoxWidgetColumnComponent),\n },\n print: {\n component: () => import('./select-box-widget-print.component').then((c) => c.AXPSelectBoxWidgetPrintComponent),\n },\n designer: {\n component: () => import('./select-box-widget-edit.component').then((c) => c.AXPSelectBoxWidgetEditComponent),\n },\n },\n};\n\ndeclare module '@acorex/platform/layout/builder' {\n interface AXPWidgetTypesMap {\n select: 'select-editor';\n }\n}\n","import { AXBadgeModule } from '@acorex/components/badge';\nimport { AXPWidgetComponent } from '@acorex/platform/layout/builder';\nimport { ChangeDetectionStrategy, Component, computed } from '@angular/core';\n\n@Component({\n template: `\n @for (item of internalValue(); track $index) {\n <ax-badge [class]=\"'ax-ms-1'\" [look]=\"'twotone'\" [text]=\"item[this.textField()]\" color=\"primary\"></ax-badge>\n }\n `,\n standalone: true,\n changeDetection: ChangeDetectionStrategy.OnPush,\n imports: [AXBadgeModule],\n})\nexport class AXPSelectionListWidgetViewComponent extends AXPWidgetComponent<any> {\n protected internalValue = computed(() => this.updateValue());\n\n protected updateValue() {\n return this.items().filter((item) => {\n if (Array.isArray(this.getValue())) return this.getValue().includes(item[this.valueField()]);\n else {\n return this.getValue() == item[this.valueField()];\n }\n });\n }\n protected items = computed<any[]>(() => this.options()['items']);\n protected valueField = computed<string>(() => this.options()['valueField']);\n protected textField = computed<string>(() => this.options()['textField']);\n}\n","import { AXDirection, AXValueChangedEvent } from '@acorex/components/common';\nimport { AXFormModule } from '@acorex/components/form';\nimport { AXSelectionListModule } from '@acorex/components/selection-list';\nimport { AXPValidationRules } from '@acorex/platform/core';\nimport { AXPWidgetComponent } from '@acorex/platform/layout/builder';\nimport { CommonModule } from '@angular/common';\nimport { ChangeDetectionStrategy, Component, computed, HostBinding } from '@angular/core';\nimport { FormsModule } from '@angular/forms';\n\n@Component({\n template: `\n <ax-selection-list\n class=\"ax-w-max\"\n [valueField]=\"valueField()\"\n [textField]=\"textField()\"\n [ngModel]=\"this.getValue()\"\n [items]=\"items()\"\n [multiple]=\"multiple()\"\n [direction]=\"direction()\"\n [disabled]=\"disabled()\"\n [readonly]=\"readonly()\"\n >\n </ax-selection-list>\n `,\n standalone: true,\n changeDetection: ChangeDetectionStrategy.OnPush,\n imports: [CommonModule, FormsModule, AXSelectionListModule, AXFormModule],\n inputs: [],\n})\nexport class AXPSelectionListWidgetDesignerComponent extends AXPWidgetComponent<any> {\n\n private samples = computed<any[]>(() => Array.from({ length: 5 }).map((c, i) => {\n const item: any = {};\n item[this.valueField()] = i + 1;\n item[this.textField()] = `Item ${i + 1}`;\n return item\n }));\n\n protected multiple = computed<boolean>(() => this.options()['multiple'] as boolean);\n protected items = computed<any[]>(() => this.options()['items'] ?? this.samples());\n protected valueField = computed<string>(() => this.options()['valueField'] ?? 'id');\n protected textField = computed<string>(() => this.options()['textField'] ?? 'text');\n protected direction = computed<AXDirection>(() => this.options()['direction']?.id ?? 'horizontal');\n protected disabled = computed<boolean>(() => this.options()[\"disabled\"] as boolean);\n protected readonly = computed<boolean>(() => this.options()[\"readonly\"] as boolean);\n\n\n @HostBinding('class')\n private get __class(): string {\n const cls: any = {};\n cls[`ax-block`] = true;\n cls[`ax-flex-1`] = true;\n return cls;\n }\n}\n","import { AXDirection, AXValueChangedEvent } from '@acorex/components/common';\nimport { AXFormModule } from '@acorex/components/form';\nimport { AXSelectionListModule } from '@acorex/components/selection-list';\nimport { AXPValidationRules } from '@acorex/platform/core';\nimport { AXPWidgetComponent } from '@acorex/platform/layout/builder';\nimport { CommonModule } from '@angular/common';\nimport { ChangeDetectionStrategy, Component, computed, HostBinding } from '@angular/core';\nimport { FormsModule } from '@angular/forms';\n\n@Component({\n template: `\n <ax-selection-list\n class=\"ax-w-max\"\n [valueField]=\"valueField()\"\n [textField]=\"textField()\"\n [ngModel]=\"this.getValue()\"\n (onValueChanged)=\"handleValueChange($event)\"\n [items]=\"items()\"\n [multiple]=\"multiple()\"\n [disabled]=\"disabled()\"\n [readonly]=\"readonly()\"\n [direction]=\"direction()\"\n >\n @for (validation of validationRules(); track $index) {\n <ax-validation-rule [rule]=\"validation.rule\" [message]=\"validation.options?.message\" [options]=\"validation.options\"></ax-validation-rule>\n }\n </ax-selection-list>\n `,\n standalone: true,\n changeDetection: ChangeDetectionStrategy.OnPush,\n imports: [CommonModule, FormsModule, AXSelectionListModule, AXFormModule],\n inputs: [],\n})\nexport class AXPSelectionListWidgetEditComponent extends AXPWidgetComponent<any> {\n\n protected multiple = computed<boolean>(() => this.options()['multiple'] as boolean);\n protected items = computed<any[]>(() => this.options()['items']);\n protected valueField = computed<string>(() => this.options()['valueField'] ?? 'id');\n protected textField = computed<string>(() => this.options()['textField'] ?? 'text');\n protected direction = computed<AXDirection>(() => this.options()['direction']?.id ?? 'horizontal');\n protected disabled = computed<boolean>(() => this.options()[\"disabled\"] as boolean);\n protected readonly = computed<boolean>(() => this.options()[\"readonly\"] as boolean);\n protected validationRules = computed<AXPValidationRules>(() => (this.options()[\"validationRules\"] as AXPValidationRules) ?? []);\n\n\n protected handleValueChange(e: AXValueChangedEvent) {\n if (e.isUserInteraction) {\n this.setValue(e.value);\n }\n }\n\n @HostBinding('class')\n private get __class(): string {\n const cls: any = {};\n cls[`ax-block`] = true;\n cls[`ax-flex-1`] = true;\n return cls;\n }\n}\n","import { AXPWidgetComponent } from '@acorex/platform/layout/builder';\nimport { CommonModule } from '@angular/common';\nimport { ChangeDetectionStrategy, Component, inject } from '@angular/core';\nimport { FormsModule } from '@angular/forms';\n\n@Component({\n template: ``,\n standalone: true,\n changeDetection: ChangeDetectionStrategy.OnPush,\n imports: [CommonModule, FormsModule],\n inputs: []\n})\nexport class AXPSelectionListWidgetFilterComponent extends AXPWidgetComponent<any> { }","import { AXBadgeModule } from '@acorex/components/badge';\nimport { AXPColumnWidgetComponent } from '@acorex/platform/layout/builder';\nimport { CommonModule } from '@angular/common';\nimport { ChangeDetectionStrategy, Component, Signal, computed } from '@angular/core';\n\n@Component({\n template: ` <div class=\"ax-flex ax-gap-2\">\n @if(multiple){ @for (item of selectedItems(); track $index) {\n <ax-badge [look]=\"'twotone'\" [text]=\"item[this.textField]\" color=\"primary\"></ax-badge>\n } }@else {\n <ax-badge [look]=\"'twotone'\" [text]=\"firstItem()[this.textField]\" color=\"primary\"></ax-badge>\n }\n </div>`,\n standalone: true,\n changeDetection: ChangeDetectionStrategy.OnPush,\n imports: [CommonModule, AXBadgeModule],\n inputs: ['rawValue'],\n})\nexport class AXPSelectionListWidgetColumnComponent extends AXPColumnWidgetComponent<any> {\n protected valueField: string = this.options['valueField'];\n protected textField: string = this.options['textField'];\n protected items: any[] = this.options['items'];\n protected multiple: boolean = this.options['multiple'];\n\n protected selectedItemIds: Signal<string[]> = computed(() => {\n return this.rawValue || [];\n });\n\n protected selectedItems = computed(() => {\n const selectedIds = this.selectedItemIds();\n const filteredItems = this.items.filter((item) => {\n const itemValue = item[this.valueField];\n const isSelected = selectedIds.includes(itemValue);\n return isSelected;\n });\n return filteredItems;\n });\n\n protected firstItem = computed(() => {\n const first = this.selectedItems()[0];\n return first;\n });\n}\n","import { AXPWidgetComponent } from '@acorex/platform/layout/builder';\nimport { CommonModule } from '@angular/common';\nimport { ChangeDetectionStrategy, Component, inject } from '@angular/core';\n@Component({\n template: ``,\n standalone: true,\n changeDetection: ChangeDetectionStrategy.OnPush,\n imports: [CommonModule],\n inputs: []\n})\nexport class AXPSelectionListWidgetPrintComponent extends AXPWidgetComponent<any> { }","import { AXPWidgetConfig, AXP_WIDGETS_EDITOR_GROUP, cloneProperty } from '@acorex/platform/layout/builder';\nimport { AXP_NAME_PROPERTY, AXP_DATA_PATH_PROPERTY, AXP_ALLOW_MULTIPLE_PROPERTY, AXP_DISABLED_PROPERTY, AXP_VALIDATION_PROPERTY, AXP_TABLE_COLUMN_WIDTH_PROPERTY, AXP_READONLY_PROPERTY, AXP_DIRECTION_PROPERTY, AXP_DATA_SOURCE_PROPERTY } from '../../../properties';\n\n\nexport const AXPSelectionListWidget: AXPWidgetConfig = {\n name: 'selection-list-editor',\n title: 'Selection List',\n description: 'Selects from a list',\n icon: 'fa-solid fa-list-radio',\n group: AXP_WIDGETS_EDITOR_GROUP,\n properties: [\n AXP_DATA_SOURCE_PROPERTY,\n AXP_NAME_PROPERTY,\n AXP_DATA_PATH_PROPERTY,\n AXP_ALLOW_MULTIPLE_PROPERTY,\n AXP_DIRECTION_PROPERTY,\n AXP_DISABLED_PROPERTY,\n AXP_READONLY_PROPERTY,\n AXP_VALIDATION_PROPERTY,\n //cloneProperty(AXP_TABLE_COLUMN_WIDTH_PROPERTY, { schema: { defaultValue: '200px' } }),\n ],\n\n type: 'editor',\n components: {\n view: {\n component: () => import('./selection-list-widget-view.component').then((c) => c.AXPSelectionListWidgetViewComponent),\n },\n edit: {\n component: () => import('./selection-list-widget-edit.component').then((c) => c.AXPSelectionListWidgetEditComponent),\n },\n filter: {\n component: () => import('./selection-list-widget-filter.component').then((c) => c.AXPSelectionListWidgetFilterComponent),\n },\n column: {\n component: () => import('./selection-list-widget-column.component').then((c) => c.AXPSelectionListWidgetColumnComponent),\n },\n print: {\n component: () => import('./selection-list-widget-print.component').then((c) => c.AXPSelectionListWidgetPrintComponent),\n },\n designer: {\n component: () => import('./selection-list-widget-designer.component').then((c) => c.AXPSelectionListWidgetDesignerComponent),\n },\n },\n};\n\ndeclare module '@acorex/platform/layout/builder' {\n interface AXPWidgetTypesMap {\n selectionList: 'selection-list-editor';\n }\n}\n","import { AXPWidgetComponent } from '@acorex/platform/layout/builder';\nimport { CommonModule } from '@angular/common';\nimport { ChangeDetectionStrategy, Component, computed } from '@angular/core';\n\n@Component({\n selector: 'axp-text-box-widget',\n template: `\n <div>\n @if(multiple())\n { \n @for (item of internalValue(); track $index) {\n <p>{{ item }}</p>\n } \n }@else {\n <p>{{ internalValue()[0] }}</p>\n }\n </div>\n `,\n standalone: true,\n changeDetection: ChangeDetectionStrategy.OnPush,\n imports: [CommonModule],\n inputs: [],\n})\nexport class AXPTextBoxWidgetViewComponent extends AXPWidgetComponent<any> {\n protected internalValue = computed(() => (Array.isArray(this.getValue()) ? this.getValue() : [this.getValue()]));\n\n protected multiple = computed<boolean>(() => this.options()[\"multiple\"] as boolean);\n}\n","import { AXButtonModule } from '@acorex/components/button';\nimport { AXValueChangedEvent } from '@acorex/components/common';\nimport { AXDecoratorModule } from '@acorex/components/decorators';\nimport { AXFormModule } from '@acorex/components/form';\nimport { AXTextBoxModule } from '@acorex/components/text-box';\nimport { AXValidationModule } from '@acorex/core/validation';\nimport { AXPValidationRules } from '@acorex/platform/core';\nimport { AXPWidgetComponent } from '@acorex/platform/layout/builder';\nimport { CommonModule } from '@angular/common';\nimport { ChangeDetectionStrategy, Component, HostBinding, Signal, computed, inject } from '@angular/core';\nimport { FormsModule } from '@angular/forms';\n\n@Component({\n selector: 'axp-text-box-widget',\n template: `\n <div class=\"ax-grid ax-grid-cols-12 ax-gap-4\">\n @for (text of internalValue(); track $index) {\n <ax-text-box class=\"ax-col-span-12\" [ngModel]=\"text\" [type]=\"'text'\" (onValueChanged)=\"handleValueChange($event, $index)\" [disabled]=\"disabled()\" [placeholder]=\"placeholder()\">\n @for (validation of validationRules(); track $index) {\n <ax-validation-rule [rule]=\"validation.rule\" [message]=\"validation.options?.message\" [options]=\"validation.options\"></ax-validation-rule>\n }\n @if(hasClearButton()){\n <ax-clear-button></ax-clear-button>\n } @if(multiple()){\n <ax-suffix>\n <ax-button class=\"ax-border-s\" (onClick)=\"deleteItem($index)\" look=\"blank\" color=\"danger\">\n <ax-icon class=\"far fa-trash\"> </ax-icon>\n </ax-button>\n </ax-suffix>\n }\n </ax-text-box>\n } @if(multiple()){\n <ax-button\n [text]=\"internalValue().length == 0 ? 'Add New' : 'Add Another'\"\n look=\"twotone\"\n [disabled]=\"disabled()\"\n (onClick)=\"addItem()\"\n class=\"ax-col-start-8 lg:ax-col-start-10 2xl:ax-col-start-10 ax-col-end-13\"\n >\n <ax-prefix>\n <ax-icon class=\"fa-solid fa-add\"></ax-icon>\n </ax-prefix>\n </ax-button>\n }\n </div>\n `,\n standalone: true,\n changeDetection: ChangeDetectionStrategy.OnPush,\n imports: [CommonModule, AXTextBoxModule, FormsModule, AXFormModule, AXDecoratorModule, AXValidationModule, AXButtonModule],\n inputs: [],\n})\nexport class AXPTextBoxWidgetEditComponent extends AXPWidgetComponent<any> {\n\n protected multiple = computed<boolean>(() => this.options()[\"multiple\"] as boolean);\n protected hasClearButton = computed<boolean>(() => this.options()['hasClearButton'] as boolean);\n protected disabled = computed<boolean>(() => this.options()[\"disabled\"] as boolean);\n protected placeholder = computed<string>(() => (this.options()[\"placeholder\"] as string));\n protected validationRules = computed<AXPValidationRules>(() => (this.options()[\"validationRules\"] as AXPValidationRules) ?? []);\n\n\n protected internalValue: Signal<string[]> = computed(() => (Array.isArray(this.getValue()) ? this.getValue() : [this.getValue()]));\n\n protected handleValueChange(e: AXValueChangedEvent, i: number) {\n if (e.isUserInteraction) {\n const newValues = this.internalValue().map((item, index) => (i === index ? e.value : item));\n if (this.multiple()) {\n this.setValue(newValues);\n }\n else {\n this.setValue(newValues[0]);\n }\n }\n }\n\n protected addItem() {\n const newValues = [...this.internalValue(), ''];\n this.setValue(newValues);\n }\n protected deleteItem(i: number) {\n const newValues = this.internalValue().filter((_, index) => index != i);\n this.setValue(newValues);\n }\n\n\n @HostBinding('class')\n private get __class(): string {\n const cls: any = {};\n cls[`ax-block`] = true;\n cls[`ax-flex-1`] = true;\n return cls;\n }\n\n}\n","import { AXPWidgetComponent } from '@acorex/platform/layout/builder';\nimport { CommonModule } from '@angular/common';\nimport { ChangeDetectionStrategy, Component, inject } from '@angular/core';\nimport { FormsModule } from '@angular/forms';\n\n@Component({\n template: ``,\n standalone: true,\n changeDetection: ChangeDetectionStrategy.OnPush,\n imports: [CommonModule, FormsModule],\n inputs: []\n})\nexport class AXPTextBoxWidgetFilterComponent extends AXPWidgetComponent<any> { }","import { AXPColumnWidgetComponent } from '@acorex/platform/layout/builder';\nimport { CommonModule } from '@angular/common';\nimport { ChangeDetectionStrategy, Component } from '@angular/core';\n@Component({\n selector: 'axp-text-box-widget-column',\n template: `{{ rawValue }}`,\n standalone: true,\n changeDetection: ChangeDetectionStrategy.OnPush,\n imports: [CommonModule],\n inputs: ['rawValue'],\n})\nexport class AXPTextBoxWidgetColumnComponent extends AXPColumnWidgetComponent<any> { }\n","import { AXPWidgetComponent } from '@acorex/platform/layout/builder';\nimport { CommonModule } from '@angular/common';\nimport { ChangeDetectionStrategy, Component, inject } from '@angular/core';\n@Component({\n template: ``,\n standalone: true,\n changeDetection: ChangeDetectionStrategy.OnPush,\n imports: [CommonModule],\n inputs: []\n})\nexport class AXPTextBoxWidgetPrintComponent extends AXPWidgetComponent<any> { }","import { AXP_WIDGETS_EDITOR_GROUP, AXPWidgetConfig, cloneProperty } from '@acorex/platform/layout/builder';\nimport {\n AXP_ALLOW_MULTIPLE_PROPERTY,\n AXP_DATA_PATH_PROPERTY,\n AXP_DISABLED_PROPERTY,\n AXP_HAS_CLEAR_BUTTON_PROPERTY,\n AXP_PLACEHOLDER_PROPERTY,\n AXP_TABLE_COLUMN_WIDTH_PROPERTY,\n AXP_VALIDATION_PROPERTY,\n plainTextDefaultProperty,\n} from '../../../properties';\nimport { AXP_NAME_PROPERTY } from '../../../properties/general.props';\n\nexport const AXPTextBoxWidget: AXPWidgetConfig = {\n name: 'text-editor',\n title: 'Text Box',\n icon: 'fa-solid fa-input-text',\n description: 'Inputs single-line text',\n group: AXP_WIDGETS_EDITOR_GROUP,\n type: 'editor',\n properties: [\n AXP_NAME_PROPERTY,\n AXP_DATA_PATH_PROPERTY,\n AXP_ALLOW_MULTIPLE_PROPERTY,\n AXP_DISABLED_PROPERTY,\n AXP_VALIDATION_PROPERTY,\n AXP_PLACEHOLDER_PROPERTY,\n AXP_HAS_CLEAR_BUTTON_PROPERTY,\n plainTextDefaultProperty(),\n //cloneProperty(AXP_TABLE_COLUMN_WIDTH_PROPERTY, { schema: { defaultValue: '200px' } }),\n ],\n components: {\n view: {\n component: () => import('./text-box-widget-view.component').then((c) => c.AXPTextBoxWidgetViewComponent),\n },\n edit: {\n component: () => import('./text-box-widget-edit.component').then((c) => c.AXPTextBoxWidgetEditComponent),\n },\n filter: {\n component: () => import('./text-box-widget-filter.component').then((c) => c.AXPTextBoxWidgetFilterComponent),\n },\n column: {\n component: () => import('./text-box-widget-column.component').then((c) => c.AXPTextBoxWidgetColumnComponent),\n },\n print: {\n component: () => import('./text-box-widget-print.component').then((c) => c.AXPTextBoxWidgetPrintComponent),\n },\n designer: {\n component: () => import('./text-box-widget-edit.component').then((c) => c.AXPTextBoxWidgetEditComponent),\n },\n },\n};\ndeclare module '@acorex/platform/layout/builder' {\n interface AXPWidgetTypesMap {\n text: 'text-editor';\n }\n}\n","import { AXBadgeModule } from '@acorex/components/badge';\nimport { AXDecoratorModule } from '@acorex/components/decorators';\nimport { AXPWidgetComponent } from '@acorex/platform/layout/builder';\nimport { CommonModule } from '@angular/common';\nimport { ChangeDetectionStrategy, Component, computed } from '@angular/core';\n\n@Component({\n selector: 'axp-switch-widget',\n template: `\n @if(getValue()){ \n @if(trulyText())\n {\n <ax-badge [text]=\"trulyText()\" [color]=\"negative() ? 'danger' : 'success'\" [look]=\"'twotone'\"></ax-badge>\n }\n @else { \n @if(negative())\n {\n <ax-icon class=\"fa-solid fa-check ax-text-sanger\"> </ax-icon>\n }\n @else \n {\n <ax-icon class=\"fa-solid fa-check ax-text-success\"> </ax-icon>\n } \n } \n }@else \n { \n @if(falsyText())\n {\n <ax-badge [text]=\"falsyText()\" [color]=\"negative() ? 'success' : 'danger'\" [look]=\"'twotone'\"></ax-badge>\n }\n @else \n { \n @if(negative())\n {\n <ax-icon class=\"fa-solid fa-xmark ax-text-success\"> </ax-icon>\n }@else \n {\n <ax-icon class=\"fa-solid fa-xmark ax-text-danger\"> </ax-icon>\n } \n } \n }`,\n standalone: true,\n changeDetection: ChangeDetectionStrategy.OnPush,\n imports: [CommonModule, AXDecoratorModule, AXBadgeModule],\n})\nexport class AXPToggleWidgetViewComponent extends AXPWidgetComponent<any> {\n protected negative = computed<boolean>(() => this.options()['negative']);\n protected falsyText = computed<string>(() => this.options()['falsyText']);\n protected trulyText = computed<string>(() => this.options()['trulyText']);\n}\n","import { AXStyleColorType } from '@acorex/components/common';\nimport { AXSwitchModule } from '@acorex/components/switch';\nimport { AXPWidgetComponent } from '@acorex/platform/layout/builder';\nimport { CommonModule } from '@angular/common';\nimport { ChangeDetectionStrategy, Component, computed, HostBinding } from '@angular/core';\nimport { FormsModule } from '@angular/forms';\n\n@Component({\n selector: 'axp-switch-widget',\n template: `<ax-switch [ngModel]=\"this.getValue()\" [disabled]=\"disabled()\" [color]=\"color()\" (ngModelChange)=\"onModelChange($event)\"></ax-switch>`,\n standalone: true,\n changeDetection: ChangeDetectionStrategy.OnPush,\n imports: [CommonModule, FormsModule, AXSwitchModule],\n inputs: [],\n})\nexport class AXPToggleWidgetEditComponent extends AXPWidgetComponent<any> {\n protected disabled = computed<boolean>(() => this.options()['disabled']);\n protected color = computed<AXStyleColorType>(() => this.options()['color']?.id ?? 'primary');\n\n protected onModelChange(e: boolean) {\n this.setValue(e);\n }\n\n @HostBinding('class')\n private get __class(): string {\n const cls: any = {};\n //\n cls['ax-inline'] = true;\n return cls;\n }\n}\n","import { AXPWidgetComponent } from '@acorex/platform/layout/builder';\nimport { CommonModule } from '@angular/common';\nimport { ChangeDetectionStrategy, Component, inject } from '@angular/core';\nimport { FormsModule } from '@angular/forms';\n\n@Component({\n template: ``,\n standalone: true,\n changeDetection: ChangeDetectionStrategy.OnPush,\n imports: [CommonModule, FormsModule],\n inputs: []\n})\nexport class AXPToggleWidgetFilterComponent extends AXPWidgetComponent<any> { }","import { AXBadgeModule } from '@acorex/components/badge';\nimport { AXDecoratorModule } from '@acorex/components/decorators';\nimport { AXPColumnWidgetComponent } from '@acorex/platform/layout/builder';\nimport { CommonModule } from '@angular/common';\nimport { ChangeDetectionStrategy, Component } from '@angular/core';\n@Component({\n template: `@if(rawValue){ @if(trulyText){\n <ax-badge [text]=\"trulyText\" [color]=\"negative ? 'danger' : 'success'\" [look]=\"'twotone'\"></ax-badge>\n }@else { @if(negative){\n <ax-icon class=\"fa-solid fa-check ax-text-sanger\"> </ax-icon>\n }@else {\n <ax-icon class=\"fa-solid fa-check ax-text-success\"> </ax-icon>\n } } }@else { @if(falsyText){\n <ax-badge [text]=\"falsyText\" [color]=\"negative ? 'success' : 'danger'\" [look]=\"'twotone'\"></ax-badge>\n }@else { @if(negative){\n <ax-icon class=\"fa-solid fa-xmark ax-text-success\"> </ax-icon>\n }@else {\n <ax-icon class=\"fa-solid fa-xmark ax-text-danger\"> </ax-icon>\n } } }`,\n\n standalone: true,\n changeDetection: ChangeDetectionStrategy.OnPush,\n imports: [CommonModule, AXDecoratorModule, AXBadgeModule],\n inputs: ['rawValue'],\n})\nexport class AXPToggleWidgetColumnComponent extends AXPColumnWidgetComponent<any> {\n protected negative = this.options[\"negative\"] as boolean;\n protected trulyText = this.options[\"trulyText\"] as string;\n protected falsyText = this.options[\"falsyText\"] as string;\n}\n","import { AXPWidgetComponent } from '@acorex/platform/layout/builder';\nimport { CommonModule } from '@angular/common';\nimport { ChangeDetectionStrategy, Component, inject } from '@angular/core';\n@Component({\n selector: 'axp-swith-widget',\n template: ``,\n standalone: true,\n changeDetection: ChangeDetectionStrategy.OnPush,\n imports: [CommonModule],\n inputs: []\n})\nexport class AXPToggleWidgetPrintComponent extends AXPWidgetComponent<any> { }","import { AXPWidgetConfig, AXP_WIDGETS_EDITOR_GROUP } from '@acorex/platform/layout/builder';\nimport {\n AXP_DATA_PATH_PROPERTY,\n AXP_DISABLED_PROPERTY,\n AXP_FALSY_TEXT_PROPERTY,\n AXP_STYLE_COLOR_PROPERTY,\n AXP_TRULY_TEXT_PROPERTY,\n AXP_VALIDATION_PROPERTY,\n booleanDefaultProperty,\n} from '../../../properties';\nimport { AXP_NAME_PROPERTY } from '../../../properties/general.props';\nexport const AXPToggleWidget: AXPWidgetConfig = {\n name: 'toggle-editor',\n title: 'Toggle',\n description: 'Switches between on/off states',\n icon: 'fa-solid fa-toggle-on',\n group: AXP_WIDGETS_EDITOR_GROUP,\n type: 'editor',\n properties: [\n AXP_NAME_PROPERTY,\n AXP_DATA_PATH_PROPERTY,\n AXP_DISABLED_PROPERTY,\n AXP_STYLE_COLOR_PROPERTY,\n AXP_VALIDATION_PROPERTY,\n AXP_FALSY_TEXT_PROPERTY,\n AXP_TRULY_TEXT_PROPERTY,\n booleanDefaultProperty(),\n ],\n components: {\n view: {\n component: () => import('./toggle-widget-view.component').then((c) => c.AXPToggleWidgetViewComponent),\n },\n edit: {\n component: () => import('./toggle-widget-edit.component').then((c) => c.AXPToggleWidgetEditComponent),\n },\n filter: {\n component: () => import('./toggle-widget-filter.component').then((c) => c.AXPToggleWidgetFilterComponent),\n },\n column: {\n component: () => import('./toggle-widget-column.component').then((c) => c.AXPToggleWidgetColumnComponent),\n },\n print: {\n component: () => import('./toggle-widget-print.component').then((c) => c.AXPToggleWidgetPrintComponent),\n },\n designer: {\n component: () => import('./toggle-widget-edit.component').then((c) => c.AXPToggleWidgetEditComponent),\n },\n },\n};\n\ndeclare module '@acorex/platform/layout/builder' {\n interface AXPWidgetTypesMap {\n toggle: 'toggle-editor';\n }\n}\n","import { AXPWidgetComponent } from '@acorex/platform/layout/builder';\nimport { CommonModule } from '@angular/common';\nimport { ChangeDetectionStrategy, Component, inject } from '@angular/core';\n@Component({\n template: ``,\n standalone: true,\n changeDetection: ChangeDetectionStrategy.OnPush,\n imports: [CommonModule],\n inputs: ['rawValue']\n})\nexport class AXPFileBoxWidgetColumnComponent extends AXPWidgetComponent<any> { }","import { AXUploadRequest } from '@acorex/components/uploader';\nimport { Observable } from 'rxjs';\n\nexport abstract class AXPFileManagementService {\n abstract upload(requests: AXUploadRequest[], metaData?: any): Promise<PromiseSettledResult<{ result: unknown; status: string }>[]>;\n abstract delete(fileId: string): Promise<any>;\n abstract get(fileId: string, name: string): Observable<any>;\n abstract list(): Promise<any>;\n abstract setMetadata(fileId: string, metadata: any): Promise<any>;\n}\n","import { AXButtonModule } from '@acorex/components/button';\nimport { AXDecoratorModule } from '@acorex/components/decorators';\nimport { AXUploaderChangedEvent, AXUploaderFileCompleteEvent, AXUploaderFilesCompleteEvent, AXUploaderModule } from '@acorex/components/uploader';\nimport { AXPWidgetComponent } from '@acorex/platform/layout/builder';\nimport { CommonModule } from '@angular/common';\nimport { ChangeDetectionStrategy, Component, HostBinding, Signal, computed, inject } from '@angular/core';\nimport { FormsModule } from '@angular/forms';\nimport { AXPFileManagementService } from './file-box-widget.service';\n\n@Component({\n template: `\n <div class=\"ax-grid ax-grid-cols-12 ax-gap-4\">\n <div class=\"ax-col-span-12\">\n <ax-uploader-drop-zone\n axUploaderZone\n (onChanged)=\"handleChanged($event)\"\n [multiple]=\"multiple()\"\n [accept]=\"accept()\"\n [description]=\"description()\"\n (onFileUploadComplete)=\"handleOnFileUploadComplete($event)\"\n (onFilesUploadComplete)=\"handleOnFilesUploadComplete($event)\"\n ></ax-uploader-drop-zone>\n </div>\n </div>\n `,\n standalone: true,\n changeDetection: ChangeDetectionStrategy.OnPush,\n imports: [CommonModule, FormsModule, AXButtonModule, AXDecoratorModule, AXUploaderModule],\n inputs: [],\n})\nexport class AXPFileBoxWidgetEditComponent extends AXPWidgetComponent<any> {\n private fileService = inject(AXPFileManagementService);\n protected multiple = computed<boolean>(() => this.options()['multiple'] as boolean);\n protected accept = computed<string>(() => this.options()['accept'] as string);\n protected description = computed<string>(() => this.options()['description'] as string);\n protected metaData = computed<string>(() => this.options()['metaData'] as any);\n\n protected internalValue: Signal<{ value?: string | null; label?: string | undefined }[]> = computed(() =>\n this.getValue() ? (Array.isArray(this.getValue()) ? this.getValue() : [this.getValue()]) : [{}]\n );\n\n handleOnFileUploadComplete(e: AXUploaderFileCompleteEvent) {\n console.log(e);\n }\n\n handleOnFilesUploadComplete(e: AXUploaderFilesCompleteEvent) {\n console.log(e);\n }\n\n protected async handleChanged(e: AXUploaderChangedEvent) {\n const results = await this.fileService.upload(e.requests, this.metaData);\n const uploadedFilesResult = results.filter((r) => r.status === 'fulfilled');\n if (!this.multiple) this.setValue(uploadedFilesResult[0].value);\n else {\n this.setValue(uploadedFilesResult.map((r) => r.value));\n }\n }\n\n protected getFileInfo(fileName: string): { icon: string; color: string } {\n const extension = fileName?.split('.')?.pop()?.toLowerCase();\n\n switch (extension) {\n case 'txt':\n return { icon: 'fa-file-alt', color: 'ax-bg-blue-100 ax-text-blue-500' };\n\n case 'pdf':\n return { icon: 'fa-file-pdf', color: 'ax-bg-red-100 ax-text-red-500' };\n\n case 'doc':\n case 'docx':\n return { icon: 'fa-file-word', color: 'ax-bg-blue-200 ax-text-blue-600' };\n\n case 'xls':\n case 'xlsx':\n return { icon: 'fa-file-excel', color: 'ax-bg-green-100 ax-text-green-500' };\n\n case 'ppt':\n case 'pptx':\n return { icon: 'fa-file-powerpoint', color: 'ax-bg-orange-100 ax-text-orange-500' };\n\n case 'jpg':\n case 'jpeg':\n case 'png':\n case 'gif':\n case 'bmp':\n return { icon: 'fa-file-image', color: 'ax-bg-purple-100 ax-text-purple-500' };\n\n case 'zip':\n case 'rar':\n case '7z':\n return { icon: 'fa-file-archive', color: 'ax-bg-yellow-100 ax-text-yellow-500' };\n\n case 'mp3':\n case 'wav':\n case 'ogg':\n return { icon: 'fa-file-audio', color: 'ax-bg-pink-100 ax-text-pink-500' };\n\n case 'mp4':\n case 'avi':\n case 'mkv':\n case 'mov':\n return { icon: 'fa-file-video', color: 'ax-bg-blue-100 ax-text-blue-500' };\n\n case 'js':\n case 'jsx':\n case 'ts':\n case 'tsx':\n return { icon: 'fa-file-code', color: 'ax-bg-yellow-100 ax-text-yellow-500' };\n\n // Add more cases as needed for other file types\n\n default:\n return { icon: 'fa-file', color: 'ax-bg-gray-100 ax-text-gray-500' };\n }\n }\n\n\n @HostBinding('class')\n private get __class(): string {\n const cls: any = {};\n cls[`ax-block`] = true;\n cls[`ax-flex-1`] = true;\n return cls;\n }\n}\n","import { AXPWidgetComponent } from '@acorex/platform/layout/builder';\nimport { CommonModule } from '@angular/common';\nimport { ChangeDetectionStrategy, Component, inject } from '@angular/core';\nimport { FormsModule } from '@angular/forms';\n\n@Component({\n template: ``,\n standalone: true,\n changeDetection: ChangeDetectionStrategy.OnPush,\n imports: [CommonModule, FormsModule],\n inputs: []\n})\nexport class AXPFileBoxWidgetFilterComponent extends AXPWidgetComponent<any> { }","import { AXPWidgetComponent } from '@acorex/platform/layout/builder';\nimport { CommonModule } from '@angular/common';\nimport { ChangeDetectionStrategy, Component, inject } from '@angular/core';\n@Component({\n template: ``,\n standalone: true,\n changeDetection: ChangeDetectionStrategy.OnPush,\n imports: [CommonModule],\n inputs: []\n})\nexport class AXPFileBoxWidgetPrintComponent extends AXPWidgetComponent<any> { }","import { AXButtonModule } from '@acorex/components/button';\nimport { AXDecoratorModule } from '@acorex/components/decorators';\nimport { AXLoadingDialogService } from '@acorex/components/loading-dialog';\nimport { AXTranslationService } from '@acorex/core/translation';\nimport { AXPWidgetComponent } from '@acorex/platform/layout/builder';\nimport { CommonModule } from '@angular/common';\nimport { HttpErrorResponse } from '@angular/common/http';\nimport { ChangeDetectionStrategy, Component, Signal, computed, inject } from '@angular/core';\nimport { Subscription } from 'rxjs';\nimport { AXPFileManagementService } from './file-box-widget.service';\n\ninterface AXPFile {\n name: string;\n type: string;\n value: string;\n size: string;\n}\n\n@Component({\n template: `\n <div class=\"ax-grid ax-grid-cols-12 ax-gap-2\">\n @if(multiple()){ @for(item of internalValue();let first=$first;track item.name) {\n <ng-template [ngTemplateOutlet]=\"itemTemplate\" ] [ngTemplateOutletContext]=\"{ data: item }\" ]></ng-template>\n } }@else {\n <ng-template [ngTemplateOutlet]=\"itemTemplate\" ] [ngTemplateOutletContext]=\"{ data: internalValue()[0] }\" ]></ng-template>\n }\n <ng-template #itemTemplate let-item=\"data\">\n <div\n *ngIf=\"item\"\n class=\"ax-flex ax-items-center ax-justify-between ax-p-2 ax-border ax-rounded-lg ax-bg-surface ax-col-start-1 ax-col-end-13\"\n >\n <div class=\"ax-flex ax-items-center ax-gap-3\">\n <ng-container *ngIf=\"getFileInfo(item.name) as fileInfo\">\n <div class=\"ax-w-10 ax-h-10 ax-rounded-lg ax-flex ax-items-center ax-justify-center\" [ngClass]=\"[fileInfo.color]\">\n <i [ngClass]=\"['fa-solid', 'ax-text-xl', fileInfo.icon]\"></i>\n </div>\n </ng-container>\n <div>\n <div class=\"ax-leading-6\">{{ item.name }}</div>\n <p class=\"ax-text-sm ax-text-neutral-400\">{{ item.size }}</p>\n </div>\n </div>\n @if(downloadable()){\n <ax-button (onClick)=\"handleDownload(item)\" look=\"blank\" color=\"ghost\" class=\"!ax-text-neutral-400 hover:!ax-text-neutral-600\">\n <ax-icon>\n <i class=\"fa-solid fa-download\"></i>\n </ax-icon>\n </ax-button>\n }\n </div>\n </ng-template>\n </div>\n `,\n standalone: true,\n changeDetection: ChangeDetectionStrategy.OnPush,\n imports: [CommonModule, AXButtonModule, AXDecoratorModule],\n inputs: [],\n})\nexport class AXPFileBoxWidgetViewComponent extends AXPWidgetComponent<any> {\n private fileService = inject(AXPFileManagementService);\n private loadingDialog = inject(AXLoadingDialogService);\n private translateService = inject(AXTranslationService);\n\n protected multiple = computed<boolean>(() => this.options()['multiple'] as boolean);\n protected downloadable = computed<boolean>(() => this.options()['downloadable'] as boolean);\n\n protected internalValue: Signal<AXPFile[]> = computed(() => {\n return Array.isArray(this.getValue()) ? this.getValue().map((item: any) => this.extractItem(item)) : [this.extractItem(this.getValue())];\n });\n private downloadSubscription = new Subscription();\n\n protected handleDownload(item: AXPFile) {\n const d = this.loadingDialog.show({\n title: this.translateService.translateSync('downloader.dialog.downloading'), // Downloading File\n mode: 'determinate',\n progressColor: 'primary',\n progressValue: 0,\n text: this.translateService.translateSync('downloader.dialog.waiting'), // Waiting...\n buttons: [\n {\n text: this.translateService.translateSync('downloader.dialog.cancel'),\n color: 'danger',\n onClick: () => {\n this.cancelDownload();\n d.close();\n },\n },\n ],\n });\n\n this.downloadSubscription = this.fileService.get(item.value, item.name || 'download').subscribe(\n (event) => {\n d.setProgressText(event.status);\n d.setProgressStatus(`${event.progress}%`);\n d.setProgressValue(event.progress);\n if (event.progress === 100) {\n this.triggerDownload(event.data, item.name);\n setTimeout(() => {\n d.close();\n }, 1000);\n }\n },\n (error: HttpErrorResponse) => {\n d.setProgressText(error.statusText);\n d.setProgressStatus(this.translateService.translateSync('downloader.dialog.downloadFailed')); //Downloading Failed\n setTimeout(() => {\n d.close();\n }, 1000);\n }\n );\n }\n\n private cancelDownload() {\n this.downloadSubscription.unsubscribe();\n }\n\n private triggerDownload(blob: Blob, name: string) {\n const link = document.createElement('a');\n const url = URL.createObjectURL(blob);\n link.href = url;\n link.download = name || 'asset';\n document.body.appendChild(link);\n link.click();\n document.body.removeChild(link);\n URL.revokeObjectURL(url);\n }\n\n protected getFileInfo(fileName: string): { icon: string; color: string } {\n const extension = fileName.split('.').pop()?.toLowerCase();\n\n switch (extension) {\n case 'txt':\n return { icon: 'fa-file-alt', color: 'ax-bg-blue-100 ax-text-blue-500' };\n\n case 'pdf':\n return { icon: 'fa-file-pdf', color: 'ax-bg-red-100 ax-text-red-500' };\n\n case 'doc':\n case 'docx':\n return { icon: 'fa-file-word', color: 'ax-bg-blue-200 ax-text-blue-600' };\n\n case 'xls':\n case 'xlsx':\n return { icon: 'fa-file-excel', color: 'ax-bg-green-100 ax-text-green-500' };\n\n case 'ppt':\n case 'pptx':\n return { icon: 'fa-file-powerpoint', color: 'ax-bg-orange-100 ax-text-orange-500' };\n\n case 'jpg':\n case 'jpeg':\n case 'png':\n case 'gif':\n case 'bmp':\n return { icon: 'fa-file-image', color: 'ax-bg-purple-100 ax-text-purple-500' };\n\n case 'zip':\n case 'rar':\n case '7z':\n return { icon: 'fa-file-archive', color: 'ax-bg-yellow-100 ax-text-yellow-500' };\n\n case 'mp3':\n case 'wav':\n case 'ogg':\n return { icon: 'fa-file-audio', color: 'ax-bg-pink-100 ax-text-pink-500' };\n\n case 'mp4':\n case 'avi':\n case 'mkv':\n case 'mov':\n return { icon: 'fa-file-video', color: 'ax-bg-blue-100 ax-text-blue-500' };\n\n case 'js':\n case 'jsx':\n case 'ts':\n case 'tsx':\n return { icon: 'fa-file-code', color: 'ax-bg-yellow-100 ax-text-yellow-500' };\n\n // Add more cases as needed for other file types\n\n default:\n return { icon: 'fa-file', color: 'ax-bg-gray-100 ax-text-gray-500' };\n }\n }\n\n private extractItem(item: any): AXPFile {\n return typeof item == 'object'\n ? {\n name: item.name,\n type: item.type ?? 'Unknown',\n value: item.value,\n size: item.size || '-',\n }\n : {\n name: item || '',\n type: 'Unknown',\n value: item || '',\n size: '-',\n };\n }\n}\n","import { AXP_WIDGETS_ADVANCE_GROUP, AXPWidgetConfig, AXPWidgetsCatalog } from '@acorex/platform/layout/builder';\nimport {\n AXP_ALLOW_MULTIPLE_PROPERTY,\n AXP_BEHAVIOR_PROPERTY_GROUP,\n AXP_DESCRIPTION_PROPERTY,\n AXP_DOWNLOADABLE_PROPERTY,\n AXP_VALIDATION_PROPERTY,\n} from '../../../properties';\nimport { AXP_NAME_PROPERTY } from '../../../properties/general.props';\n\nexport const AXPFileBoxWidget: AXPWidgetConfig = {\n name: 'file',\n title: 'File',\n description: 'Uploads and manages files',\n icon: 'fa-solid fa-files',\n group: AXP_WIDGETS_ADVANCE_GROUP,\n type: 'editor',\n properties: [\n AXP_NAME_PROPERTY,\n AXP_VALIDATION_PROPERTY,\n AXP_ALLOW_MULTIPLE_PROPERTY,\n AXP_DOWNLOADABLE_PROPERTY,\n AXP_DESCRIPTION_PROPERTY,\n {\n name: 'accept',\n title: 'Accept',\n group: AXP_BEHAVIOR_PROPERTY_GROUP,\n schema: {\n dataType: 'string',\n interface: {\n name: 'accept',\n path: 'options.accept',\n type: AXPWidgetsCatalog.text,\n },\n },\n visible: true,\n },\n ],\n components: {\n view: {\n component: () => import('./file-box-widget-view.component').then((c) => c.AXPFileBoxWidgetViewComponent),\n },\n edit: {\n component: () => import('./file-box-widget-edit.component').then((c) => c.AXPFileBoxWidgetEditComponent),\n },\n filter: {\n component: () => import('./file-box-widget-filter.component').then((c) => c.AXPFileBoxWidgetFilterComponent),\n },\n column: {\n component: () => import('./file-box-widget-column.component').then((c) => c.AXPFileBoxWidgetColumnComponent),\n },\n print: {\n component: () => import('./file-box-widget-print.component').then((c) => c.AXPFileBoxWidgetPrintComponent),\n },\n designer: {\n component: () => import('./file-box-widget-edit.component').then((c) => c.AXPFileBoxWidgetEditComponent),\n },\n },\n};\n\ndeclare module '@acorex/platform/layout/builder' {\n interface AXPWidgetTypesMap {\n file: 'file';\n }\n}\n","import { AXDecoratorModule } from '@acorex/components/decorators';\nimport { AXImageModule } from '@acorex/components/image';\nimport { AXLoadingModule } from '@acorex/components/loading';\nimport { AXPWidgetComponent } from '@acorex/platform/layout/builder';\nimport { CommonModule } from '@angular/common';\nimport { ChangeDetectionStrategy, Component, Signal, WritableSignal, computed, signal } from '@angular/core';\nimport { AXPMediaInfo, AXPMediaItem } from './gallery-widget-types';\n\n@Component({\n template: `\n <div class=\"ax-grid ax-grid-cols-12 ax-gap-2\">\n @if(internalValue().length){\n <div class=\"ax-flex ax-items-center ax-justify-between ax-rounded-lg ax-col-start-1 ax-col-end-13\">\n <div class=\"ax-flex ax-items-center md:ax-justify-start ax-justify-center ax-w-full ax-gap-3\">\n <div class=\"ax-flex ax-flex-col ax-items-center ax-gap-4\">\n @switch (getMediaInfo(activeMedia()?.name||'').format) { @case ('video') {\n <video class=\"ax-rounded-lg ax-h-48 md:ax-h-72 ax-w-auto ax-shadow-md\" controls [src]=\"activeMedia()?.url\"></video>\n } @case ('image') {\n <ax-image class=\"ax-rounded-lg ax-h-48 md:ax-h-72 ax-w-auto\" [src]=\"activeMedia()?.url\">\n <ax-loading></ax-loading>\n <ax-placeholder>\n <div class=\"ax-w-96 ax-h-72 ax-gap-4 ax-flex ax-flex-col ax-items-center ax-justify-center ax-border ax-rounded-lg\">\n <ax-icon class=\"fa-solid fa-circle-exclamation ax-text-2xl\"> </ax-icon>\n <span>Connection Error!</span>\n </div>\n </ax-placeholder>\n </ax-image>\n } @case ('audio') {\n <audio controls class=\"ax-rounded-lg\">\n <source [src]=\"activeMedia()?.url\" type=\"audio/mp3\" />\n </audio>\n } }\n <div class=\"ax-flex ax-gap-4 ax-overflow-x-auto ax-max-w-[320px] lg:ax-max-w-[480px] ax-pb-2\">\n @for (media of thumbnails(); track $index) {\n <div\n *ngIf=\"getMediaInfo(media.name) as mediaInfo\"\n class=\"hover:ax-opacity-75 ax-transition-all ax-relative ax-cursor-pointer ax-flex ax-justify-center ax-items-center\"\n (click)=\"changeMediaSelected(media)\"\n >\n <ax-image\n class=\"ax-w-16 ax-brightness-50 ax-h-16 ax-rounded-lg ax-shadow-md ax-filter\"\n [src]=\"mediaInfo.format == 'image' ? media.url : media.posterUrl\"\n ></ax-image>\n <div class=\"ax-absolute ax-text-neutral-300 ax-text-xl\">\n <ax-icon [class]=\"mediaInfo.icon\"> </ax-icon>\n </div>\n </div>\n }\n </div>\n </div>\n </div>\n </div>\n } @else {\n <!-- ask for empty state: -->\n <small>No Media!</small>\n }\n </div>\n `,\n standalone: true,\n changeDetection: ChangeDetectionStrategy.OnPush,\n imports: [CommonModule, AXImageModule, AXDecoratorModule, AXLoadingModule],\n inputs: [],\n})\nexport class AXPGalleryWidgetViewComponent extends AXPWidgetComponent<any> {\n protected internalValue = computed(() => {\n const parsedValue = this.getValue() ? JSON.parse(this.getValue()) : [];\n return Array.isArray(parsedValue) ? parsedValue.map((c) => c) : [parsedValue];\n });\n protected multiple = computed<boolean>(() => this.options()['multiple'] as boolean);\n\n protected thumbnails: Signal<AXPMediaItem[]> = computed(() => this.internalValue().filter((i) => i.id !== this.activeMedia()?.id));\n protected activeMedia: WritableSignal<AXPMediaItem | undefined> = signal(undefined);\n\n ngAfterViewInit(): void {\n this.activeMedia.set(this.internalValue()[0]);\n }\n\n changeMediaSelected(media: AXPMediaItem) {\n this.activeMedia.set(media);\n }\n\n protected getMediaInfo(mediaName: string): AXPMediaInfo {\n const extension = mediaName.split('.').pop()?.toLowerCase();\n\n switch (extension) {\n case 'jpg':\n case 'jpeg':\n case 'png':\n case 'gif':\n case 'bmp':\n return { icon: '', format: 'image' };\n\n case 'mp4':\n case 'avi':\n case 'mkv':\n case 'mov':\n return { icon: 'fa-regular fa-play', format: 'video' };\n\n case 'mp3':\n case 'wav':\n case 'ogg':\n return { icon: 'fa-regular fa-volume-high', format: 'audio' };\n\n default:\n return { icon: '', format: 'image' };\n }\n }\n}\n","import { AXDecoratorModule } from '@acorex/components/decorators';\nimport { AXImageModule } from '@acorex/components/image';\nimport { AXLoadingModule } from '@acorex/components/loading';\nimport { AXUploaderModule } from '@acorex/components/uploader';\nimport { AXPWidgetComponent } from '@acorex/platform/layout/builder';\nimport { CommonModule } from '@angular/common';\nimport { ChangeDetectionStrategy, Component, HostBinding, Signal, WritableSignal, computed, signal } from '@angular/core';\nimport { FormsModule } from '@angular/forms';\nimport { AXPMediaInfo, AXPMediaItem } from './gallery-widget-types';\n\n@Component({\n template: `\n <div class=\"ax-grid ax-grid-cols-12 ax-gap-2\">\n @if(internalValue().length){\n <div class=\"ax-col-start-1 ax-col-end-13 ax-flex ax-items-center lg:ax-justify-start ax-justify-center \">\n <div class=\"ax-flex ax-flex-col ax-items-center ax-gap-4 ax-w-full\">\n @switch (getMediaInfo(activeMedia()?.name||'').format) { @case ('video') {\n <video class=\"ax-rounded-lg ax-h-48 md:ax-h-72 ax-w-auto ax-shadow-md\" controls [src]=\"activeMedia()?.url\"></video>\n } @case ('image') {\n <ax-image class=\"ax-rounded-lg ax-h-48 md:ax-h-72 ax-w-auto\" [src]=\"activeMedia()?.url\">\n <ax-loading></ax-loading>\n <ax-placeholder>\n <div class=\"ax-w-96 ax-h-72 ax-gap-4 ax-flex ax-flex-col ax-items-center ax-justify-center ax-border ax-rounded-lg\">\n <ax-icon class=\"fa-solid fa-circle-exclamation ax-text-2xl\"> </ax-icon>\n <span>Connection Error!</span>\n </div>\n </ax-placeholder>\n </ax-image>\n } @case ('audio') {\n <audio controls class=\"ax-rounded-lg\">\n <source [src]=\"activeMedia()?.url\" type=\"audio/mp3\" />\n </audio>\n } }\n <div class=\"ax-flex ax-gap-4 ax-overflow-x-auto ax-max-w-[320px] lg:ax-max-w-[480px] ax-pb-2\">\n @for (media of thumbnails(); track $index) {\n <div\n *ngIf=\"getMediaInfo(media.name) as mediaInfo\"\n class=\"hover:ax-opacity-75 ax-transition-all ax-relative ax-cursor-pointer ax-flex ax-justify-center ax-items-center\"\n (click)=\"changeMediaSelected(media)\"\n >\n <ax-image\n class=\"ax-w-16 ax-brightness-50 ax-h-16 ax-rounded-lg ax-shadow-md ax-filter\"\n [src]=\"mediaInfo.format == 'image' ? media.url : media.posterUrl\"\n ></ax-image>\n <div class=\"ax-absolute ax-text-neutral-300 ax-text-xl\">\n <ax-icon [class]=\"mediaInfo.icon\"> </ax-icon>\n </div>\n </div>\n }\n <div axUploaderZone>\n <div axUploaderBrowseHandle class=\"ax-flex ax-justify-center ax-items-center ax-w-16 ax-h-16 ax-border ax-rounded-lg ax-cursor-pointer\">\n <ax-icon class=\"fa-solid fa-plus ax-text-neutral-500\"> </ax-icon>\n </div>\n </div>\n </div>\n </div>\n </div>\n } @else {\n <div class=\" ax-col-start-1 ax-col-end-13\">\n <ax-uploader-drop-zone></ax-uploader-drop-zone>\n </div>\n\n }\n </div>\n `,\n standalone: true,\n changeDetection: ChangeDetectionStrategy.OnPush,\n imports: [CommonModule, FormsModule, AXImageModule, AXDecoratorModule, AXLoadingModule, AXUploaderModule],\n inputs: [],\n})\nexport class AXPGalleryWidgetEditComponent extends AXPWidgetComponent<any> {\n protected internalValue = computed(() => {\n const parsedValue = this.getValue() ? JSON.parse(this.getValue()) : [];\n return Array.isArray(parsedValue) ? parsedValue.map((c) => c) : [parsedValue];\n });\n\n protected activeMedia: WritableSignal<AXPMediaItem | null> = signal(null);\n protected thumbnails: Signal<AXPMediaItem[]> = computed(() => this.internalValue().filter((i) => i.id !== this.activeMedia()?.id));\n\n protected multiple = computed<boolean>(() => this.options()['multiple'] as boolean);\n\n changeMediaSelected(media: AXPMediaItem) {\n this.activeMedia.set(media);\n }\n\n ngAfterViewInit(): void {\n this.activeMedia.set(this.internalValue()[0]);\n }\n\n protected getMediaInfo(mediaName: string): AXPMediaInfo {\n const extension = mediaName.split('.').pop()?.toLowerCase();\n\n switch (extension) {\n case 'jpg':\n case 'jpeg':\n case 'png':\n case 'gif':\n case 'bmp':\n return { icon: '', format: 'image' };\n\n case 'mp4':\n case 'avi':\n case 'mkv':\n case 'mov':\n return { icon: 'fa-regular fa-play', format: 'video' };\n\n case 'mp3':\n case 'wav':\n case 'ogg':\n return { icon: 'fa-regular fa-volume-high', format: 'audio' };\n\n default:\n return { icon: '', format: 'image' };\n }\n }\n\n\n @HostBinding('class')\n private get __class(): string {\n const cls: any = {};\n cls[`ax-block`] = true;\n cls[`ax-flex-1`] = true;\n return cls;\n }\n}\n","import { AXPWidgetComponent } from '@acorex/platform/layout/builder';\nimport { CommonModule } from '@angular/common';\nimport { ChangeDetectionStrategy, Component, inject } from '@angular/core';\nimport { FormsModule } from '@angular/forms';\n\n@Component({\n template: ``,\n standalone: true,\n changeDetection: ChangeDetectionStrategy.OnPush,\n imports: [CommonModule, FormsModule],\n inputs: []\n})\nexport class AXPGalleryWidgetFilterComponent extends AXPWidgetComponent<any> { }","import { AXPWidgetComponent } from '@acorex/platform/layout/builder';\nimport { CommonModule } from '@angular/common';\nimport { ChangeDetectionStrategy, Component, inject } from '@angular/core';\n@Component({\n template: ``,\n standalone: true,\n changeDetection: ChangeDetectionStrategy.OnPush,\n imports: [CommonModule],\n inputs: ['rawValue']\n})\nexport class AXPGalleryWidgetColumnComponent extends AXPWidgetComponent<any> { }","import { AXPWidgetComponent } from '@acorex/platform/layout/builder';\nimport { CommonModule } from '@angular/common';\nimport { ChangeDetectionStrategy, Component, inject } from '@angular/core';\n@Component({\n template: ``,\n standalone: true,\n changeDetection: ChangeDetectionStrategy.OnPush,\n imports: [CommonModule],\n inputs: []\n})\nexport class AXPGalleryWidgetPrintComponent extends AXPWidgetComponent<any> { }","import { AXPWidgetConfig, AXP_WIDGETS_ADVANCE_GROUP } from '@acorex/platform/layout/builder';\nexport const AXPGalleryWidget: AXPWidgetConfig = {\n name: 'gallery',\n title: 'Media Gallery',\n description: 'Shows and edits image galleries',\n icon: 'fa-solid fa-images',\n group: AXP_WIDGETS_ADVANCE_GROUP,\n type: 'editor',\n components: {\n view: {\n component: () => import('./gallery-widget-view.component').then((c) => c.AXPGalleryWidgetViewComponent),\n },\n edit: {\n component: () => import('./gallery-widget-edit.component').then((c) => c.AXPGalleryWidgetEditComponent),\n },\n filter: {\n component: () => import('./gallery-widget-filter.component').then((c) => c.AXPGalleryWidgetFilterComponent),\n },\n column: {\n component: () => import('./gallery-widget-column.component').then((c) => c.AXPGalleryWidgetColumnComponent),\n },\n print: {\n component: () => import('./gallery-widget-print.component').then((c) => c.AXPGalleryWidgetPrintComponent),\n },\n designer: {\n component: () => import('./gallery-widget-edit.component').then((c) => c.AXPGalleryWidgetEditComponent),\n },\n },\n};\n\ndeclare module '@acorex/platform/layout/builder' {\n interface AXPWidgetTypesMap {\n gallery: 'gallery';\n }\n}\n","import { AXMapLocation, AXMapModule } from '@acorex/components/map';\nimport { AXPWidgetComponent } from '@acorex/platform/layout/builder';\nimport { CommonModule } from '@angular/common';\nimport { ChangeDetectionStrategy, Component, computed, ViewEncapsulation } from '@angular/core';\n\n@Component({\n template: `<div [style.height.px]=\"height()\" class=\"ax-w-full\">\n <ax-map\n [hasDraw]=\"false\"\n [markers]=\"markers()\"\n [zoomLevel]=\"zoomLevel()\"\n [latitude]=\"initialLocation().latitude\"\n [longitude]=\"initialLocation().longitude\"\n ></ax-map>\n </div>`,\n standalone: true,\n changeDetection: ChangeDetectionStrategy.OnPush,\n imports: [CommonModule, AXMapModule],\n inputs: [],\n encapsulation: ViewEncapsulation.None,\n})\nexport class AXPMapBoxWidgetViewComponent extends AXPWidgetComponent<AXMapLocation[]> {\n markers = computed(() => this.getValue());\n height = computed<number>(() => this.options()['height'] ?? 300);\n zoomLevel = computed<number>(() => this.options()['zoomLevel'] ?? 13);\n initialLocation = computed<AXMapLocation>(\n () => this.options()['initialLocation'] ?? { latitude: 51.505, longitude: -0.09 },\n {\n equal: (a: AXMapLocation, b: AXMapLocation) => {\n if (a.latitude === b.latitude && a.longitude === b.longitude) return true;\n else return false;\n },\n }\n );\n}\n","import { AXMapLocation, AXMapModule } from '@acorex/components/map';\nimport { AXPWidgetComponent } from '@acorex/platform/layout/builder';\nimport {\n ChangeDetectionStrategy,\n ChangeDetectorRef,\n Component,\n computed,\n HostBinding,\n inject,\n ViewEncapsulation,\n} from '@angular/core';\n\n@Component({\n template: ` <div [style.height.px]=\"height()\" class=\"ax-w-full\">\n <ax-map\n class=\"ax-h-full\"\n (onMarkerChanged)=\"onMarkerChanged($event)\"\n [hasLocator]=\"hasLocate()\"\n [hasDraw]=\"hasDraw()\"\n [latitude]=\"initialLocation().latitude\"\n [longitude]=\"initialLocation().longitude\"\n [zoomLevel]=\"zoomLevel()\"\n [maxMarker]=\"maxMarker()\"\n >\n </ax-map>\n </div>`,\n standalone: true,\n changeDetection: ChangeDetectionStrategy.OnPush,\n imports: [AXMapModule],\n encapsulation: ViewEncapsulation.None,\n})\nexport class AXPMapBoxWidgetEditComponent extends AXPWidgetComponent<AXMapLocation[]> {\n cdr = inject(ChangeDetectorRef);\n\n markers = computed(() => this.getValue() ?? []);\n hasDraw = computed<boolean>(() => this.options()['hasDraw'] ?? false);\n hasLocate = computed<boolean>(() => this.options()['hasLocate'] ?? false);\n maxMarker = computed<number>(() => this.options()['maxMarker'] ?? 1);\n zoomLevel = computed<number>(() => this.options()['zoomLevel'] ?? 13);\n height = computed<number>(() => {\n this.cdr.markForCheck();\n return this.options()['height'] ?? 300;\n });\n\n initialLocation = computed<AXMapLocation>(\n () => this.options()['initialLocation'] ?? { latitude: 51.505, longitude: -0.09 },\n {\n equal: (a: AXMapLocation, b: AXMapLocation) => {\n if (a.latitude === b.latitude && a.longitude === b.longitude) return true;\n else return false;\n },\n }\n );\n\n onMarkerChanged(event: AXMapLocation[]) {\n this.setValue(event);\n }\n\n @HostBinding('class')\n private get __class(): string {\n const cls: any = {};\n cls[`ax-block`] = true;\n cls[`ax-flex-1`] = true;\n return cls;\n }\n}\n","import { AXPWidgetConfig, AXPWidgetsCatalog, AXP_WIDGETS_ADVANCE_GROUP } from '@acorex/platform/layout/builder';\nimport { AXP_DATA_PATH_PROPERTY, AXP_DATA_PROPERTY_GROUP, AXP_STYLING_PROPERTY_GROUP } from '../../../properties';\nimport { AXP_NAME_PROPERTY } from '../../../properties/general.props';\n\nexport const AXPMapBoxWidget: AXPWidgetConfig = {\n name: 'map',\n title: 'Map',\n description: 'Displays and interacts with maps',\n icon: 'fa-solid fa-map-location',\n group: AXP_WIDGETS_ADVANCE_GROUP,\n type: 'editor',\n properties: [\n AXP_NAME_PROPERTY,\n AXP_DATA_PATH_PROPERTY,\n {\n name: 'height',\n title: 'Height',\n group: AXP_STYLING_PROPERTY_GROUP,\n schema: {\n defaultValue: 300,\n dataType: 'number',\n interface: {\n name: 'height',\n path: 'options.height',\n type: AXPWidgetsCatalog.number,\n options: {\n minValue: 0,\n maxValue: 500,\n hasClearButton: false,\n },\n },\n },\n visible: true,\n },\n {\n name: 'maxMarker',\n title: 'Max Marker',\n group: AXP_DATA_PROPERTY_GROUP,\n schema: {\n defaultValue: 1,\n dataType: 'number',\n interface: {\n name: 'maxMarker',\n path: 'options.maxMarker',\n type: AXPWidgetsCatalog.number,\n options: {\n minValue: 0,\n maxValue: 100,\n hasClearButton: false,\n },\n },\n },\n visible: true,\n },\n {\n name: 'zoomLevel',\n title: 'Zoom Level',\n group: AXP_DATA_PROPERTY_GROUP,\n schema: {\n defaultValue: 13,\n dataType: 'number',\n interface: {\n name: 'zoomLevel',\n path: 'options.zoomLevel',\n type: AXPWidgetsCatalog.number,\n options: {\n minValue: 1,\n maxValue: 20,\n hasClearButton: false,\n },\n },\n },\n visible: true,\n },\n {\n name: 'hasLocate',\n title: 'Has Locate',\n group: AXP_DATA_PROPERTY_GROUP,\n schema: {\n dataType: 'boolean',\n defaultValue: false,\n interface: {\n name: 'hasLocate',\n path: 'options.hasLocate',\n type: AXPWidgetsCatalog.toggle,\n },\n },\n visible: true,\n },\n {\n name: 'hasDraw',\n title: 'Has Draw',\n group: AXP_DATA_PROPERTY_GROUP,\n schema: {\n dataType: 'boolean',\n defaultValue: false,\n interface: {\n name: 'hasDraw',\n path: 'options.hasDraw',\n type: AXPWidgetsCatalog.toggle,\n },\n },\n visible: true,\n },\n ],\n components: {\n view: {\n component: () => import('./map-box-widget-view.component').then((c) => c.AXPMapBoxWidgetViewComponent),\n },\n edit: {\n component: () => import('./map-box-widget-edit.component').then((c) => c.AXPMapBoxWidgetEditComponent),\n },\n print: {\n component: () => import('./map-box-widget-view.component').then((c) => c.AXPMapBoxWidgetViewComponent),\n },\n designer: {\n component: () => import('./map-box-widget-edit.component').then((c) => c.AXPMapBoxWidgetEditComponent),\n },\n },\n};\n\ndeclare module '@acorex/platform/layout/builder' {\n interface AXPWidgetTypesMap {\n map: 'map';\n }\n}\n","import { AXPWidgetComponent } from '@acorex/platform/layout/builder';\nimport { CommonModule } from '@angular/common';\nimport { ChangeDetectionStrategy, Component, inject } from '@angular/core';\n@Component({\n template: ``,\n standalone: true,\n changeDetection: ChangeDetectionStrategy.OnPush,\n imports: [CommonModule],\n inputs: ['rawValue']\n})\nexport class AXPSignatureWidgetColumnComponent extends AXPWidgetComponent<any> { }","import { AXButtonModule } from '@acorex/components/button';\nimport { AXDecoratorModule } from '@acorex/components/decorators';\nimport { AXImageModule } from '@acorex/components/image';\nimport { AXPlatform } from '@acorex/core/platform';\nimport { AXPWidgetComponent } from '@acorex/platform/layout/builder';\nimport { CommonModule } from '@angular/common';\nimport { ChangeDetectionStrategy, Component, ElementRef, HostBinding, ViewChild, WritableSignal, computed, effect, inject, signal } from '@angular/core';\nimport SignaturePad from 'signature_pad';\n\n@Component({\n selector: 'axp-signature-widget',\n template: `\n <div class=\"ax-flex ax-gap-3\">\n @if(editMode() ){\n <canvas width=\"300\" class=\"ax-border ax-rounded-md\" #padCanvas></canvas>\n <div class=\"ax-flex ax-flex-col ax-col-span-1 ax-gap-3\">\n <ax-button class=\"ax-sm\" (onClick)=\"downloadSVG()\" look=\"outline\" color=\"primary\" [disabled]=\"disabled()\">\n <ax-icon class=\"fas fa-download\"></ax-icon>\n </ax-button>\n <ax-button class=\"ax-sm\" (onClick)=\"undo()\" look=\"outline\" color=\"primary\" [disabled]=\"disabled()\">\n <ax-icon class=\"fas fa-rotate-left\"></ax-icon>\n </ax-button>\n <ax-button class=\"ax-sm\" (onClick)=\"clear()\" look=\"outline\" color=\"danger\" [disabled]=\"disabled()\">\n <ax-icon class=\"fas fa-trash ax-text-danger\"></ax-icon>\n </ax-button>\n </div>\n }@else{\n <div class=\"ax-border ax-rounded\">\n <ax-image [src]=\"this.getValue()\">\n <ax-overlay class=\"ax-flex ax-justify-center\">\n <ax-button look=\"twotone\" color=\"primary\" (onClick)=\"switchEditMode()\" [disabled]=\"disabled()\">\n <ax-icon class=\"far fa-edit\"> </ax-icon>\n </ax-button>\n </ax-overlay>\n </ax-image>\n </div>\n }\n </div>\n `,\n standalone: true,\n changeDetection: ChangeDetectionStrategy.OnPush,\n imports: [CommonModule, AXButtonModule, AXDecoratorModule, AXImageModule],\n\n})\nexport class AXPSignatureWidgetEditComponent extends AXPWidgetComponent<any> {\n\n //TODO: Apply diabled\n protected disabled = computed<boolean>(() => this.options()[\"disabled\"] as boolean);\n protected placeholder = computed<string>(() => (this.options()[\"placeholder\"] as string));\n\n @ViewChild('padCanvas') padCanvas!: ElementRef<HTMLCanvasElement>;\n protected signaturePad!: SignaturePad;\n protected editMode: WritableSignal<boolean> = signal(false);\n protected platform = inject(AXPlatform);\n\n override async ngOnInit() {\n super.ngOnInit();\n this.editMode.set(this.getValue() ? false : true);\n }\n\n private changeModeEffect = effect(() => {\n if (this.editMode()) {\n setTimeout(() => {\n this.initPad();\n }, 100);\n }\n });\n\n async initPad() {\n const pad = await import('signature_pad');\n this.signaturePad = new pad.default(this.padCanvas.nativeElement, {});\n this.signaturePad.addEventListener('afterUpdateStroke', () => {\n if (window) {\n //fix canvas ViewBox issue on mobile devices\n const prevDPR = window.devicePixelRatio;\n if (this.platform.is('SM')) {\n window.devicePixelRatio = 1;\n }\n this.setValue(this.getDataURL());\n window.devicePixelRatio = prevDPR;\n }\n });\n }\n\n protected clear() {\n this.signaturePad.clear();\n this.setValue(this.getDataURL());\n }\n\n private getDataURL() {\n return this.signaturePad.toDataURL('image/svg+xml');\n }\n\n protected downloadSVG() {\n const link = document.createElement('a');\n link.href = this.getDataURL();\n link.target = '_blank';\n link.download = 'download';\n link.click();\n }\n\n protected async switchEditMode() {\n this.editMode.update((prev) => !prev);\n }\n\n protected undo() {\n let data = this.signaturePad.toData();\n if (data) {\n data.pop();\n this.signaturePad.fromData(data);\n this.setValue(this.getDataURL());\n }\n }\n\n @HostBinding('class')\n private get __class(): string {\n const cls: any = {};\n cls[`ax-block`] = true;\n cls[`ax-flex-1`] = true;\n return cls;\n }\n}\n","import { AXPWidgetComponent } from '@acorex/platform/layout/builder';\nimport { CommonModule } from '@angular/common';\nimport { ChangeDetectionStrategy, Component, inject } from '@angular/core';\nimport { FormsModule } from '@angular/forms';\n\n@Component({\n template: ``,\n standalone: true,\n changeDetection: ChangeDetectionStrategy.OnPush,\n imports: [CommonModule, FormsModule],\n inputs: []\n})\nexport class AXPSignatureWidgetFilterComponent extends AXPWidgetComponent<any> { }","import { AXPWidgetComponent } from '@acorex/platform/layout/builder';\nimport { CommonModule } from '@angular/common';\nimport { ChangeDetectionStrategy, Component, inject } from '@angular/core';\n@Component({\n template: ``,\n standalone: true,\n changeDetection: ChangeDetectionStrategy.OnPush,\n imports: [CommonModule],\n inputs: []\n})\nexport class AXPSignatureWidgetPrintComponent extends AXPWidgetComponent<any> { }","import { AXImageModule } from '@acorex/components/image';\nimport { AXPWidgetComponent } from '@acorex/platform/layout/builder';\nimport { CommonModule } from '@angular/common';\nimport { ChangeDetectionStrategy, Component, computed } from '@angular/core';\n\n@Component({\n selector: 'axp-signature-widget',\n template: `\n <div class=\"ax-w-full md:ax-w-auto ax-h-36 ax-border ax-rounded-md ax-flex ax-justify-center ax-items-center\">\n @if(internalValue()){\n <ax-image [src]=\"internalValue()\"></ax-image>\n }@else{\n <span>{{placeholder()}}</span>\n }\n </div>\n `,\n standalone: true,\n changeDetection: ChangeDetectionStrategy.OnPush,\n imports: [CommonModule, AXImageModule],\n inputs: [],\n})\nexport class AXPSignatureWidgetViewComponent extends AXPWidgetComponent<any> {\n protected placeholder = computed<string>(() => (this.options()[\"placeholder\"] as string) ?? 'Not Set!');\n\n protected internalValue = computed(() => this.getValue());\n}\n","import { AXPWidgetConfig, AXP_WIDGETS_ADVANCE_GROUP } from '@acorex/platform/layout/builder';\nimport {\n AXP_DATA_PATH_PROPERTY,\n AXP_DISABLED_PROPERTY,\n AXP_VALIDATION_PROPERTY,\n} from '../../../properties';\nimport { AXP_NAME_PROPERTY } from '../../../properties/general.props';\n\n\n\nexport const AXPSignatureWidget: AXPWidgetConfig = {\n name: 'signature',\n title: 'Signature',\n description: 'Captures digital signatures',\n icon: 'fa-solid fa-file-signature',\n group: AXP_WIDGETS_ADVANCE_GROUP,\n type: 'editor',\n properties: [AXP_NAME_PROPERTY, AXP_DATA_PATH_PROPERTY, AXP_DISABLED_PROPERTY, AXP_VALIDATION_PROPERTY],\n components: {\n view: {\n component: () => import('./signature-pad-widget-view.component').then((c) => c.AXPSignatureWidgetViewComponent),\n },\n edit: {\n component: () => import('./signature-pad-widget-edit.component').then((c) => c.AXPSignatureWidgetEditComponent),\n },\n column: {\n component: () => import('./signature-pad-widget-column.component').then((c) => c.AXPSignatureWidgetColumnComponent),\n },\n print: {\n component: () => import('./signature-pad-widget-print.component').then((c) => c.AXPSignatureWidgetPrintComponent),\n },\n designer: {\n component: () => import('./signature-pad-widget-edit.component').then((c) => c.AXPSignatureWidgetEditComponent),\n },\n },\n};\n\ndeclare module '@acorex/platform/layout/builder' {\n interface AXPWidgetTypesMap {\n signature: 'signature';\n }\n}\n","import { AXPContainerWidgetComponent, AXPLayoutBuilderModule } from '@acorex/platform/layout/builder';\nimport { AXPDesignerAddWidgetMiniButtonComponent, AXPWidgetDesignerRendererDirective } from '@acorex/platform/layout/designer';\nimport { CommonModule } from '@angular/common';\nimport { ChangeDetectionStrategy, Component, computed, HostBinding } from '@angular/core';\n\n@Component({\n selector: 'axp-block-widget',\n template: `\n @for (node of children(); track $index) {\n <ng-container axp-widget-designer-renderer [node]=\"node\" [parentNode]=\"this\" [mode]=\"this.mode\"></ng-container>\n }\n <axp-designer-add-widget-mini-button class=\"ax-flex-1 ax-self-center ax-place-self-end\"></axp-designer-add-widget-mini-button>\n `,\n standalone: true,\n changeDetection: ChangeDetectionStrategy.OnPush,\n imports: [CommonModule, AXPLayoutBuilderModule, AXPWidgetDesignerRendererDirective, AXPDesignerAddWidgetMiniButtonComponent],\n providers: [\n {\n provide: AXPContainerWidgetComponent, useExisting: AXPBlockWidgetDesignerComponent\n }\n ]\n})\nexport class AXPBlockWidgetDesignerComponent extends AXPContainerWidgetComponent<void> {\n\n protected backgroundColor = computed<string>(() => this.options()[\"backgroundColor\"] as string);\n protected cssClass = computed<string>(() => this.options()[\"cssClass\"] as string);\n protected flexAlignItems = computed<string>(() => this.options()[\"flexAlignItems\"]?.id);\n protected flexJustifyContent = computed<string>(() => this.options()[\"flexJustifyContent\"]?.id);\n protected flexWrap = computed<string>(() => this.options()[\"flexWrap\"]?.id);\n protected flexDirection = computed<string>(() => this.options()[\"flexDirection\"]?.id);\n protected gap = computed<number>(() => this.options()[\"gap\"] as number ?? 0);\n\n @HostBinding('class')\n private get __class(): string {\n const cls: any = {};\n //\n cls[`ax-w-full`] = true;\n cls[`ax-widget-outline`] = true;\n //\n cls[`ax-flex`] = true;\n cls[`ax-gap-${this.gap()}`] = true;\n //\n if (this.flexAlignItems()) {\n cls[this.flexAlignItems()] = true;\n }\n if (this.flexJustifyContent()) {\n cls[this.flexJustifyContent()] = true;\n }\n if (this.flexWrap()) {\n cls[this.flexWrap()] = true;\n }\n if (this.flexDirection()) {\n cls[this.flexDirection()] = true;\n }\n return cls;\n }\n\n @HostBinding('style')\n private get __style(): any {\n return {\n 'background-color': this.backgroundColor(),\n };\n }\n}\n","import { AXPLayoutBuilderModule, AXPWidgetComponent } from '@acorex/platform/layout/builder';\nimport { CommonModule } from '@angular/common';\nimport { ChangeDetectionStrategy, Component, computed, HostBinding } from '@angular/core';\n\n@Component({\n selector: 'axp-block-widget',\n template: `\n @for (node of children(); track $index) {\n <ng-container\n axp-widget-renderer\n [node]=\"node\"\n [index]=\"index\"\n [parentNode]=\"this\"\n [mode]=\"this.mode\"\n ></ng-container>\n }\n `,\n standalone: true,\n changeDetection: ChangeDetectionStrategy.OnPush,\n imports: [CommonModule, AXPLayoutBuilderModule],\n})\nexport class AXPBlockWidgetViewComponent extends AXPWidgetComponent<void> {\n protected backgroundColor = computed<string>(() => this.options()['backgroundColor'] as string);\n protected cssClass = computed<string>(() => this.options()['cssClass'] as string);\n protected flexAlignItems = computed<string>(() => this.options()['flexAlignItems']?.id);\n protected flexJustifyContent = computed<string>(() => this.options()['flexJustifyContent']?.id);\n protected flexWrap = computed<string>(() => this.options()['flexWrap']?.id);\n protected flexDirection = computed<string>(() => this.options()['flexDirection']?.id);\n protected gap = computed<number>(() => (this.options()['gap'] as number) ?? 0);\n\n @HostBinding('class')\n private get __class(): string {\n const cls: any = {};\n //\n cls[`ax-w-full`] = true;\n //\n cls[`ax-flex`] = true;\n cls[`ax-gap-${this.gap()}`] = true;\n //\n if (this.flexAlignItems()) {\n cls[this.flexAlignItems()] = true;\n }\n if (this.flexJustifyContent()) {\n cls[this.flexJustifyContent()] = true;\n }\n if (this.flexWrap()) {\n cls[this.flexWrap()] = true;\n }\n if (this.flexDirection()) {\n cls[this.flexDirection()] = true;\n }\n return cls;\n }\n\n @HostBinding('style')\n private get __style(): any {\n return {\n 'background-color': this.backgroundColor(),\n };\n }\n}\n","import { AXP_WIDGETS_LAYOUT_GROUP, AXPWidgetConfig, cloneProperty } from '@acorex/platform/layout/builder';\nimport { AXP_LAYOUT_FLEX_PROPERTIES } from '../../../properties/layout.props';\nimport { AXP_BG_COLOR_PROPERTY, AXP_FONT_SIZE_PROPERTY, AXP_NAME_PROPERTY } from '../../../properties/general.props';\n\nexport const AXPBlockWidget: AXPWidgetConfig = {\n name: 'block-layout',\n title: 'Block',\n description: 'Organizes content in blocks',\n icon: 'fa-solid fa-square',\n group: AXP_WIDGETS_LAYOUT_GROUP,\n type: 'container',\n properties: [\n AXP_NAME_PROPERTY,\n AXP_FONT_SIZE_PROPERTY,\n cloneProperty(AXP_BG_COLOR_PROPERTY, { schema: { defaultValue: null } }),\n ...AXP_LAYOUT_FLEX_PROPERTIES\n ],\n components: {\n designer: {\n component: () => import('./block-widget-designer.component').then((c) => c.AXPBlockWidgetDesignerComponent),\n },\n edit: {\n component: () => import('./block-widget-view.component').then((c) => c.AXPBlockWidgetViewComponent),\n },\n print: {\n component: () => import('./block-widget-view.component').then((c) => c.AXPBlockWidgetViewComponent),\n },\n view: {\n component: () => import('./block-widget-view.component').then((c) => c.AXPBlockWidgetViewComponent),\n },\n },\n};\n\ndeclare module '@acorex/platform/layout/builder' {\n interface AXPWidgetTypesMap {\n blockLayout: 'block-layout';\n }\n}\n","import { AXPLayoutBuilderModule, AXPWidgetComponent } from '@acorex/platform/layout/builder';\nimport { CommonModule } from '@angular/common';\nimport { ChangeDetectionStrategy, Component, computed, HostBinding, inject, ViewEncapsulation } from '@angular/core';\n\n@Component({\n selector: 'axp-page-widget',\n template: `\n @for (node of children(); track $index) {\n <ng-container axp-widget-renderer [node]=\"node\" [index]=\"index\" [parentNode]=\"this\" [mode]=\"this.mode\"></ng-container>\n }\n `,\n standalone: true,\n changeDetection: ChangeDetectionStrategy.OnPush,\n encapsulation: ViewEncapsulation.None,\n imports: [CommonModule, AXPLayoutBuilderModule],\n})\nexport class AXPPageWidgetViewComponent extends AXPWidgetComponent<void> {\n\n protected backgroundColor = computed<string>(() => this.options()[\"backgroundColor\"] as string);\n\n @HostBinding('style')\n private get __style(): any {\n return {\n 'background-color': this.backgroundColor(),\n };\n }\n\n}","import { AXPWidgetConfig, AXP_WIDGETS_LAYOUT_GROUP, createBooleanProperty } from '@acorex/platform/layout/builder';\nimport { AXP_BG_COLOR_PROPERTY, AXP_FONT_SIZE_PROPERTY, AXP_THEME_PROPERTY } from '../../../properties/general.props';\nimport { AXP_BEHAVIOR_PROPERTY_GROUP } from '../../../properties';\n\nexport const AXPPageWidget: AXPWidgetConfig = {\n name: 'page-layout',\n title: 'Page',\n description: 'Structures the entire page',\n icon: 'fa-solid fa-page',\n group: AXP_WIDGETS_LAYOUT_GROUP,\n type: 'container',\n visible: false,\n properties: [\n AXP_FONT_SIZE_PROPERTY,\n AXP_THEME_PROPERTY,\n AXP_BG_COLOR_PROPERTY,\n createBooleanProperty({\n name: \"hasHeader\",\n path: 'options.hasHeader',\n title: \"Header\",\n group: AXP_BEHAVIOR_PROPERTY_GROUP,\n defaultValue: true,\n }),\n createBooleanProperty({\n name: \"hasFooter\",\n path: 'options.hasFooter',\n title: \"Footer\",\n group: AXP_BEHAVIOR_PROPERTY_GROUP,\n defaultValue: true,\n })\n ],\n components: {\n view: {\n component: () => import('./page-widget-view.component').then((c) => c.AXPPageWidgetViewComponent),\n },\n edit: {\n component: () => import('./page-widget-view.component').then((c) => c.AXPPageWidgetViewComponent),\n },\n print: {\n component: () => import('./page-widget-view.component').then((c) => c.AXPPageWidgetViewComponent),\n },\n designer: {\n component: () => import('./page-widget-designer.component').then((c) => c.AXPPageWidgetDesignerComponent),\n },\n },\n};\n\ndeclare module '@acorex/platform/layout/builder' {\n interface AXPWidgetTypesMap {\n pageLayout: 'page-layout';\n }\n}\n","import { AXPLayoutBuilderModule, AXPWidgetComponent } from '@acorex/platform/layout/builder';\nimport { CommonModule } from '@angular/common';\nimport { ChangeDetectionStrategy, Component, WritableSignal, signal } from '@angular/core';\nimport { FormsModule } from '@angular/forms';\n\n@Component({\n selector:'axp-repeater-widget',\n template: `\n @for(row of rows();let i=$index; track i)\n {\n @for (node of children();track $index) \n {\n <ng-container axp-widget-renderer [node]=\"node\" [parentNode]=\"this\" [index]=\"i\" [mode]=\"this.mode\"></ng-container>\n }\n }\n `,\n standalone: true,\n changeDetection: ChangeDetectionStrategy.OnPush,\n imports: [CommonModule, FormsModule, AXPLayoutBuilderModule],\n})\nexport class AXPRepeaterWidgetViewComponent extends AXPWidgetComponent<any[]> {\n protected rows: WritableSignal<any[]> = signal([]);\n\n ngAfterViewInit() {\n this.rows.set(this.getValue() ?? []);\n }\n}\n","import { AXButtonModule } from '@acorex/components/button';\nimport { AXDecoratorModule } from '@acorex/components/decorators';\nimport { AXPLayoutBuilderModule, AXPLayoutElementAPI, AXPWidgetComponent } from '@acorex/platform/layout/builder';\nimport { CommonModule } from '@angular/common';\nimport { ChangeDetectionStrategy, Component, computed } from '@angular/core';\n\n@Component({\n selector: 'axp-repeater-widget',\n template: `\n @if(hasControls())\n {\n <div class=\"ax-grid ax-grid-cols-12 ax-gap-4 ax-items-center\">\n @for(row of rows();let i=$index; track i)\n {\n <div class=\"ax-col-span-11\">\n <ng-container [ngTemplateOutlet]=\"tpl\" [ngTemplateOutletContext]=\"{index:i}\"></ng-container>\n </div>\n <ax-button\n [disabled]=\"disabled()\"\n look=\"twotone\"\n color=\"danger\"\n (onClick)=\"handleRemoveItemClick(i)\"\n class=\"ax-col-start-12 ax-col-end-13 ax-justify-self-end ax-self-end\"\n >\n <ax-icon icon=\"fa-regular fa-xmark\"></ax-icon>\n </ax-button>\n }\n @empty {\n <ng-container [ngTemplateOutlet]=\"empty\" ></ng-container>\n } \n <ax-button\n [text]=\"rows().length ? 'Start Adding Items':'Add Your First Item'\"\n look=\"twotone\"\n [disabled]=\"disabled()\"\n (onClick)=\"handleAddItemClick()\"\n class=\"ax-col-start-10 ax-col-end-13\"\n >\n <ax-prefix>\n <ax-icon class=\"fa-solid fa-add\"></ax-icon>\n </ax-prefix>\n </ax-button>\n </div>\n }\n @else {\n @for(row of rows();let i=$index; track i)\n {\n <ng-container [ngTemplateOutlet]=\"tpl\" [ngTemplateOutletContext]=\"{index:i}\"></ng-container>\n }\n @empty {\n <ng-container [ngTemplateOutlet]=\"empty\" ></ng-container>\n } \n }\n <ng-template #tpl let-index=\"index\"> \n @for (node of children();track $index) \n {\n <ng-container axp-widget-renderer [node]=\"node\" [parentNode]=\"this\" [index]=\"index\" [mode]=\"this.mode\"></ng-container>\n }\n \n </ng-template>\n <ng-template #empty>\n <div class=\"ax-col-start-1 ax-col-end-10 ax-text-sm ax-text-gray-400\">\n You haven't added any items yet. Click “Start Adding Items” to get started!\n </div>\n </ng-template>\n `,\n standalone: true,\n changeDetection: ChangeDetectionStrategy.OnPush,\n imports: [CommonModule, AXButtonModule, AXDecoratorModule, AXPLayoutBuilderModule],\n})\nexport class AXPRepeaterWidgetEditComponent extends AXPWidgetComponent<any> {\n protected disabled = computed<boolean>(() => this.options()[\"disabled\"] as boolean);\n protected hasControls = computed<boolean>(() => this.options()[\"hasControls\"] as boolean);\n\n protected rows = computed<any[]>(() => {\n return this.convertValueToArray() ?? [];\n })\n\n\n protected handleAddItemClick() {\n this.addNew();\n }\n\n protected handleRemoveItemClick(i: number) {\n this.removeItem(i);\n\n }\n\n public addNew() {\n const newValue = [...(this.convertValueToArray() ?? []), {}];\n this.setValue(newValue);\n }\n\n public removeItem(index: number) {\n const currentArray = [...this.convertValueToArray()];\n currentArray.splice(index, 1);\n this.setValue(currentArray);\n }\n\n\n private convertValueToArray(): any[] {\n return this.getValue() ?\n Array.isArray(this.getValue()) ? this.getValue() : [this.getValue()] :\n [];\n }\n\n override api(): AXPLayoutElementAPI {\n return {\n \"addNew\": this.addNew.bind(this)\n }\n }\n\n\n}","import { AXPWidgetComponent } from '@acorex/platform/layout/builder';\nimport { CommonModule } from '@angular/common';\nimport { ChangeDetectionStrategy, Component, inject } from '@angular/core';\n@Component({\n selector: 'axp-repeater-widget',\n template: ``,\n standalone: true,\n changeDetection: ChangeDetectionStrategy.OnPush,\n imports: [CommonModule],\n inputs: []\n})\nexport class AXPRepeaterWidgetPrintComponent extends AXPWidgetComponent<any> { }","import { AXButtonModule } from '@acorex/components/button';\nimport { AXDecoratorModule } from '@acorex/components/decorators';\nimport { AXPContainerWidgetComponent, AXPLayoutBuilderModule, } from '@acorex/platform/layout/builder';\nimport { AXPDesignerAddWidgetMiniButtonComponent, AXPDesignerService, AXPWidgetDesignerRendererDirective } from '@acorex/platform/layout/designer';\nimport { CommonModule } from '@angular/common';\nimport { ChangeDetectionStrategy, Component, computed, HostBinding, inject } from '@angular/core';\n@Component({\n selector: 'axp-repeater-widget',\n template: `\n @if(hasControls())\n {\n <div class=\"ax-grid ax-grid-cols-12 ax-gap-4\">\n <div class=\"ax-col-span-11\">\n <ng-container [ngTemplateOutlet]=\"tpl\" ></ng-container>\n </div>\n <ax-button\n [disabled]=\"disabled()\"\n look=\"twotone\"\n color=\"danger\"\n class=\"ax-col-start-12 ax-col-end-13 ax-justify-self-end ax-self-end\"\n >\n <ax-icon icon=\"fa-regular fa-xmark\"></ax-icon>\n </ax-button>\n <ax-button\n [text]=\"'Add New'\"\n look=\"twotone\"\n [disabled]=\"disabled()\"\n class=\"ax-col-start-10 ax-col-end-13\"\n >\n <ax-prefix>\n <ax-icon class=\"fa-solid fa-add\"></ax-icon>\n </ax-prefix>\n </ax-button>\n </div>\n }\n @else {\n <ng-container [ngTemplateOutlet]=\"tpl\"></ng-container>\n }\n <ng-template #tpl>\n @for (node of children();track $index) {\n <ng-container axp-widget-designer-renderer [node]=\"node\" [parentNode]=\"this\" [mode]=\"this.mode\"> </ng-container>\n }\n @empty {\n <axp-designer-add-widget-mini-button ></axp-designer-add-widget-mini-button>\n }\n </ng-template>\n `,\n standalone: true,\n changeDetection: ChangeDetectionStrategy.OnPush,\n imports: [CommonModule, AXButtonModule, AXDecoratorModule, AXPLayoutBuilderModule, AXPWidgetDesignerRendererDirective, AXPDesignerAddWidgetMiniButtonComponent],\n providers: [\n {\n provide: AXPContainerWidgetComponent, useExisting: AXPRepeaterWidgetDesignerComponent\n }\n ]\n})\nexport class AXPRepeaterWidgetDesignerComponent extends AXPContainerWidgetComponent<void> {\n\n protected disabled = computed<boolean>(() => this.options()[\"disabled\"] as boolean);\n protected hasControls = computed<boolean>(() => this.options()[\"hasControls\"] as boolean);\n\n @HostBinding('class')\n private get __class(): string {\n const cls: any = {};\n //\n cls[`ax-block`] = true;\n cls[`ax-w-full`] = true;\n return cls;\n }\n\n}","import { AXPWidgetConfig, AXP_WIDGETS_LAYOUT_GROUP, createBooleanProperty } from '@acorex/platform/layout/builder';\nimport { AXP_BEHAVIOR_PROPERTY_GROUP, AXP_DATA_PATH_PROPERTY, AXP_DISABLED_PROPERTY, AXP_NAME_PROPERTY } from '../../../properties';\nexport const AXPRepeaterWidget: AXPWidgetConfig = {\n name: 'repeater-layout',\n title: 'Repeater',\n description: 'Adds repeating form elements',\n icon: 'fa-solid fa-table-list',\n group: AXP_WIDGETS_LAYOUT_GROUP,\n type: 'container',\n properties: [\n AXP_NAME_PROPERTY,\n AXP_DATA_PATH_PROPERTY,\n AXP_DISABLED_PROPERTY,\n createBooleanProperty({\n name: \"hasControls\",\n title: \"Controls\",\n group: AXP_BEHAVIOR_PROPERTY_GROUP,\n defaultValue: true,\n path: \"options.hasControls\",\n })\n ],\n components: {\n view: {\n component: () => import('./repeater-widget-view.component').then((c) => c.AXPRepeaterWidgetViewComponent),\n },\n edit: {\n component: () => import('./repeater-widget-edit.component').then((c) => c.AXPRepeaterWidgetEditComponent),\n },\n print: {\n component: () => import('./repeater-widget-print.component').then((c) => c.AXPRepeaterWidgetPrintComponent),\n },\n designer: {\n component: () => import('./repeater-widget-designer.component').then((c) => c.AXPRepeaterWidgetDesignerComponent),\n },\n },\n};\n\ndeclare module '@acorex/platform/layout/builder' {\n interface AXPWidgetTypesMap {\n repeaterLayout: 'repeater-layout';\n }\n}\n","import { AXPQueryRequest } from '@acorex/platform/common';\nimport { AXPWidgetGroup, AXPWidgetNode } from '@acorex/platform/layout/builder';\nimport { inject, Injectable, InjectionToken, Injector } from '@angular/core';\n\n\nexport interface AXPTemplateWidgetProvided {\n id: string,\n title: string,\n group: AXPWidgetGroup,\n}\n\nexport interface AXPTemplateWidgetProvider {\n items(query?: AXPQueryRequest): Promise<AXPTemplateWidgetProvided[]>;\n get(id: string): Promise<AXPWidgetNode | null>;\n}\n\nexport const AXP_TEMPLATE_WIDGET_PROVIDER = new InjectionToken<AXPTemplateWidgetProvider[]>('AXP_TEMPLATE_WIDGET_PROVIDER');\n\n\n@Injectable({ providedIn: 'root' })\nexport class AXPTemplateWidgetProviderService implements AXPTemplateWidgetProvider {\n private providers = inject(AXP_TEMPLATE_WIDGET_PROVIDER, { optional: true });\n\n\n async items(query?: AXPQueryRequest): Promise<AXPTemplateWidgetProvided[]> {\n if (Array.isArray(this.providers)) {\n const result: AXPTemplateWidgetProvided[] = []\n for (const provider of this.providers) {\n const items = await provider.items(query);\n if (items) {\n result.push(...items);\n }\n }\n return result;\n }\n else {\n return [];\n }\n }\n\n\n async get(id: string): Promise<AXPWidgetNode | null> {\n if (Array.isArray(this.providers)) {\n for (const provider of this.providers) {\n const node = await provider.get(id);\n if (node) {\n return node;\n }\n }\n }\n return null;\n }\n}\n","import { AXPLayoutBuilderModule, AXPWidgetComponent, AXPWidgetNode } from '@acorex/platform/layout/builder';\nimport { CommonModule } from '@angular/common';\nimport { ChangeDetectionStrategy, Component, computed, effect, inject, signal } from '@angular/core';\nimport { AXPTemplateWidgetProviderService } from './template.provider';\n\n@Component({\n selector: 'axp-template-widget',\n template: `\n @if(nodeToRender())\n {\n <ng-container\n axp-widget-renderer\n [node]=\"nodeToRender()!\"\n [parentNode]=\"this\"\n [mode]=\"this.mode\"\n >\n </ng-container>\n }\n `,\n standalone: true,\n changeDetection: ChangeDetectionStrategy.OnPush,\n imports: [CommonModule, AXPLayoutBuilderModule]\n})\nexport class AXPTemplateWidgetViewComponent extends AXPWidgetComponent<any> {\n\n private templateProvider = inject(AXPTemplateWidgetProviderService);\n protected templateId = computed<string>(() => this.options()[\"templateId\"] as string);\n protected nodeToRender = signal<AXPWidgetNode | null>(null);\n\n constructor() {\n super();\n //\n effect(async () => {\n const node = await this.templateProvider.get(this.templateId())\n if (node) {\n this.nodeToRender.set(node);\n }\n }, { allowSignalWrites: true })\n }\n\n}","import { AXPContainerWidgetComponent, AXPLayoutBuilderModule, AXPWidgetComponent, AXPWidgetNode } from '@acorex/platform/layout/builder';\nimport { CommonModule } from '@angular/common';\nimport { ChangeDetectionStrategy, Component, computed, effect, inject, signal } from '@angular/core';\nimport { AXPTemplateWidgetProviderService } from './template.provider';\nimport { AXPDesignerService, AXPWidgetDesignerRendererDirective } from '@acorex/platform/layout/designer';\n@Component({\n template: `\n @if(nodeToRender())\n {\n <div >\n <ng-container axp-widget-designer-renderer\n [node]=\"nodeToRender()!\"\n [parentNode]=\"this\"\n [mode]=\"this.mode\"\n >\n </ng-container>\n </div>\n }\n `,\n standalone: true,\n changeDetection: ChangeDetectionStrategy.OnPush,\n imports: [CommonModule, AXPLayoutBuilderModule, AXPWidgetDesignerRendererDirective],\n providers: [\n {\n provide: AXPContainerWidgetComponent, useExisting: AXPContainerWidgetComponent\n }\n ]\n})\nexport class AXPTemplateWidgetDesignerComponent extends AXPContainerWidgetComponent<any> {\n private templateProvider = inject(AXPTemplateWidgetProviderService);\n private designerService = inject(AXPDesignerService);\n\n protected templateId = computed<string>(() => this.options()[\"templateId\"] as string);\n protected nodeToRender = signal<AXPWidgetNode | null>(null);\n\n constructor() {\n super();\n //\n effect(async () => {\n const node = await this.templateProvider.get(this.templateId())\n if (node) {\n this.nodeToRender.set(node);\n }\n else {\n this.nodeToRender.set(null);\n }\n }, { allowSignalWrites: true })\n }\n\n}","import { AXP_WIDGETS_LAYOUT_GROUP, AXPWidgetConfig, createStringProperty } from '@acorex/platform/layout/builder';\nimport { AXP_BEHAVIOR_PROPERTY_GROUP, AXP_DATA_PATH_PROPERTY, AXP_NAME_PROPERTY } from '../../../properties';\n\nexport const AXPTemplateWidget: AXPWidgetConfig = {\n name: \"template\",\n title: \"Template\",\n type: 'container',\n icon: \"fa-solid fa-square\",\n group: AXP_WIDGETS_LAYOUT_GROUP,\n visible: false,\n properties: [\n AXP_NAME_PROPERTY,\n AXP_DATA_PATH_PROPERTY,\n createStringProperty({ name: \"options.templateId\", title: \"Template\", group: AXP_BEHAVIOR_PROPERTY_GROUP })\n ],\n components: {\n view: {\n component: () => import('./template-widget-view.component').then((c) => c.AXPTemplateWidgetViewComponent),\n },\n edit: {\n component: () => import('./template-widget-edit.component').then((c) => c.AXPTemplateWidgetEditComponent),\n },\n print: {\n component: () => import('./template-widget-view.component').then((c) => c.AXPTemplateWidgetViewComponent),\n },\n designer: {\n component: () => import('./template-widget-designer.component').then((c) => c.AXPTemplateWidgetDesignerComponent),\n },\n }\n}\n\ndeclare module '@acorex/platform/layout/builder' {\n interface AXPWidgetTypesMap {\n template: 'template';\n }\n}","import { AXQrcodeLevel, AXQrcodeModule, AXQrcodeOutputType } from '@acorex/components/qrcode';\nimport { AXColorUtil } from '@acorex/core/utils';\nimport { AXPWidgetComponent } from '@acorex/platform/layout/builder';\nimport { CommonModule } from '@angular/common';\nimport { ChangeDetectionStrategy, Component, computed, effect, HostBinding } from '@angular/core';\n@Component({\n selector: 'axp-qrcode-widget',\n template: `\n @if(this.content()){\n <ax-qrcode\n [content]=\"this.content()\"\n [size]=\"size()\"\n [color]=\"color()\"\n [level]=\"level()\"\n [outputType]=\"outputType()\"\n >\n </ax-qrcode>\n }\n `,\n standalone: true,\n changeDetection: ChangeDetectionStrategy.OnPush,\n imports: [CommonModule, AXQrcodeModule],\n})\nexport class AXPQrcodeWidgetViewComponent extends AXPWidgetComponent<string> {\n protected content = computed<string>(() => this.options()['content']);\n protected size = computed<number>(() => this.options()['size'] ?? 200);\n protected level = computed<AXQrcodeLevel>(() => this.options()['level']?.id ?? 'M');\n protected color = computed<string>(() => AXColorUtil.colorStringToHex(this.options()['color'] ?? '#000000'));\n protected outputType = computed<AXQrcodeOutputType>(() => this.options()['outputType'] ?? 'svg');\n\n @HostBinding('class')\n private get __class(): string {\n const cls: any = {};\n cls[`ax-inline-block`] = true;\n return cls;\n }\n}\n","import {\n AXP_WIDGETS_ADVANCE_GROUP,\n AXPWidgetConfig,\n AXPWidgetsCatalog,\n cloneProperty,\n} from '@acorex/platform/layout/builder';\nimport { AXP_CONTENT_PROPERTY, AXP_STYLING_PROPERTY_GROUP } from '../../../properties';\nimport { AXP_COLOR_PROPERTY, AXP_NAME_PROPERTY } from '../../../properties/general.props';\n\nexport const AXPQrcodeWidget: AXPWidgetConfig = {\n name: 'qrcode',\n title: 'QR Code',\n group: AXP_WIDGETS_ADVANCE_GROUP,\n icon: 'fa-solid fa-qrcode',\n description: 'Display and edit QR Codes',\n type: 'view',\n properties: [\n AXP_NAME_PROPERTY,\n cloneProperty(AXP_COLOR_PROPERTY, { schema: { interface: { defaultValue: '#000000' } } }),\n cloneProperty(AXP_CONTENT_PROPERTY, { schema: { interface: { defaultValue: 'http://google.com' } } }),\n {\n name: 'size',\n title: 'Size',\n group: AXP_STYLING_PROPERTY_GROUP,\n schema: {\n dataType: 'string',\n defaultValue: 200,\n interface: {\n name: 'size',\n path: 'options.size',\n type: AXPWidgetsCatalog.number,\n },\n },\n visible: true,\n },\n {\n name: 'level',\n title: 'Error Correction Level',\n group: AXP_STYLING_PROPERTY_GROUP,\n schema: {\n dataType: 'string',\n interface: {\n defaultValue: 'M',\n name: 'level',\n path: 'options.level',\n type: AXPWidgetsCatalog.select,\n options: {\n dataSource: ['L', 'M', 'Q', 'H'].map((i) => ({ title: i, id: i })),\n },\n },\n },\n visible: true,\n },\n ],\n components: {\n view: {\n component: () => import('./qrcode-widget-view.component').then((c) => c.AXPQrcodeWidgetViewComponent),\n },\n edit: {\n component: () => import('./qrcode-widget-view.component').then((c) => c.AXPQrcodeWidgetViewComponent),\n },\n print: {\n component: () => import('./qrcode-widget-view.component').then((c) => c.AXPQrcodeWidgetViewComponent),\n },\n designer: {\n component: () => import('./qrcode-widget-view.component').then((c) => c.AXPQrcodeWidgetViewComponent),\n },\n },\n};\n\ndeclare module '@acorex/platform/layout/builder' {\n interface AXPWidgetTypesMap {\n qrcode: 'qrcode';\n }\n}\n","import { AXPWidgetComponent } from '@acorex/platform/layout/builder';\nimport { CommonModule } from '@angular/common';\nimport { ChangeDetectionStrategy, Component, inject } from '@angular/core';\n\n@Component({\n selector: 'axp-color-box-widget',\n template: `{{ getValue() }}`,\n standalone: true,\n changeDetection: ChangeDetectionStrategy.OnPush,\n imports: [CommonModule],\n inputs: []\n})\nexport class AXPColorBoxWidgetViewComponent extends AXPWidgetComponent<any> { }","import { AXPValidationRules } from '@acorex/platform/core';\nimport { AXPWidgetComponent } from '@acorex/platform/layout/builder';\nimport { CommonModule } from '@angular/common';\nimport { ChangeDetectionStrategy, Component, computed, HostBinding, inject } from '@angular/core';\nimport { FormsModule } from '@angular/forms';\nimport { AXColorBoxModule } from '@acorex/components/color-box'\nimport { AXDecoratorModule } from '@acorex/components/decorators';\nimport { AXFormModule } from '@acorex/components/form';\n\n@Component({\n selector: 'axp-color-box-widget',\n template: `\n <ax-color-box [disabled]=\"disabled()\" [readonly]=\"readonly()\" [ngModel]=\"getValue()\" [placeholder]=\"placeholder()\" (onValueChanged)=\"handleValueChanged($event)\">\n @for (validation of validationRules(); track $index) {\n <ax-validation-rule [rule]=\"validation.rule\" [message]=\"validation.options?.message\" [options]=\"validation.options\"></ax-validation-rule>\n }\n @if(hasClearButton()){\n <ax-clear-button></ax-clear-button>\n } \n </ax-color-box>\n `,\n standalone: true,\n changeDetection: ChangeDetectionStrategy.OnPush,\n imports: [CommonModule, FormsModule, AXColorBoxModule, AXDecoratorModule, AXFormModule],\n})\nexport class AXPColorBoxWidgetEditComponent extends AXPWidgetComponent<string> {\n\n protected placeholder = computed<string>(() => this.options()[\"placeholder\"] as string);\n protected disabled = computed<boolean>(() => this.options()[\"disabled\"] as boolean);\n protected readonly = computed<boolean>(() => this.options()[\"readonly\"] as boolean);\n protected hasClearButton = computed<boolean>(() => this.options()['hasClearButton'] as boolean);\n protected validationRules = computed<AXPValidationRules>(() => (this.options()[\"validationRules\"] as AXPValidationRules) ?? []);\n\n\n @HostBinding('class')\n private get __class(): string {\n const cls: any = {};\n cls[`ax-flex-1`] = true;\n return cls;\n }\n\n}","import { AXPWidgetComponent } from '@acorex/platform/layout/builder';\nimport { CommonModule } from '@angular/common';\nimport { ChangeDetectionStrategy, Component, inject } from '@angular/core';\nimport { FormsModule } from '@angular/forms';\n\n@Component({\n template: ``,\n standalone: true,\n changeDetection: ChangeDetectionStrategy.OnPush,\n imports: [CommonModule, FormsModule],\n inputs: []\n})\nexport class AXPColorBoxWidgetFilterComponent extends AXPWidgetComponent<any> { }","import { AXColorUtil } from '@acorex/core/utils';\nimport { AXPClipBoardService } from '@acorex/platform/common';\nimport { AXPColumnWidgetComponent } from '@acorex/platform/layout/builder';\nimport { CommonModule } from '@angular/common';\nimport { ChangeDetectionStrategy, Component, computed, inject } from '@angular/core';\n@Component({\n template: `<div class=\"ax-flex ax-justify-start ax-items-center ax-gap-2 ax-group ax-w-fit\">\n <div class=\"ax-size-4 ax-rounded-full ax-border\" [style.backgroundColor]=\"rgba()\"></div>\n <span>{{ rawValue }}</span>\n <i\n (click)=\"clipboard.copy('Color', rawValue)\"\n class=\"fa-solid fa-copy ax-text-neutral-400 dark:hover:ax-text-neutral-100 hover:ax-text-neutral-900 group-hover:ax-visible ax-invisible\"\n ></i>\n </div>`,\n standalone: true,\n changeDetection: ChangeDetectionStrategy.OnPush,\n imports: [CommonModule],\n inputs: ['rawValue'],\n})\nexport class AXPColorBoxWidgetColumnComponent extends AXPColumnWidgetComponent<any> {\n rgba = computed(() => AXColorUtil.toString(this.rawValue, 'rgba'));\n protected clipboard = inject(AXPClipBoardService);\n}\n","import { AXPWidgetComponent } from '@acorex/platform/layout/builder';\nimport { CommonModule } from '@angular/common';\nimport { ChangeDetectionStrategy, Component, inject } from '@angular/core';\n@Component({\n template: `{{getValue()}}`,\n standalone: true,\n changeDetection: ChangeDetectionStrategy.OnPush,\n imports: [CommonModule],\n inputs: []\n})\nexport class AXPColorBoxWidgetPrintComponent extends AXPWidgetComponent<any> { }","import { AXPWidgetConfig, AXP_WIDGETS_EDITOR_GROUP } from '@acorex/platform/layout/builder';\nimport {\n AXP_DATA_PATH_PROPERTY,\n AXP_DISABLED_PROPERTY,\n AXP_PLACEHOLDER_PROPERTY,\n AXP_READONLY_PROPERTY,\n AXP_VALIDATION_PROPERTY,\n} from '../../../properties';\nimport { AXP_NAME_PROPERTY } from '../../../properties/general.props';\n\nexport const AXPColorBoxWidget: AXPWidgetConfig = {\n name: 'color-editor',\n title: 'Color Box',\n description: 'Picks and applies colors',\n icon: 'fa-solid fa-palette',\n group: AXP_WIDGETS_EDITOR_GROUP,\n type: 'editor',\n properties: [\n AXP_NAME_PROPERTY,\n AXP_DATA_PATH_PROPERTY,\n AXP_READONLY_PROPERTY,\n AXP_DISABLED_PROPERTY,\n AXP_VALIDATION_PROPERTY,\n AXP_PLACEHOLDER_PROPERTY\n ],\n components: {\n designer: {\n component: () => import('./color-box-widget-designer.component').then((c) => c.AXPColorBoxWidgetDesignerComponent),\n },\n view: {\n component: () => import('./color-box-widget-view.component').then((c) => c.AXPColorBoxWidgetViewComponent),\n },\n edit: {\n component: () => import('./color-box-widget-edit.component').then((c) => c.AXPColorBoxWidgetEditComponent),\n },\n filter: {\n component: () => import('./color-box-widget-filter.component').then((c) => c.AXPColorBoxWidgetFilterComponent),\n },\n column: {\n component: () => import('./color-box-widget-column.component').then((c) => c.AXPColorBoxWidgetColumnComponent),\n },\n print: {\n component: () => import('./color-box-widget-print.component').then((c) => c.AXPColorBoxWidgetPrintComponent),\n },\n },\n};\n\ndeclare module '@acorex/platform/layout/builder' {\n interface AXPWidgetTypesMap {\n color: 'color-editor';\n }\n}\n","import { AXPWidgetConfig, AXP_WIDGETS_LAYOUT_GROUP } from '@acorex/platform/layout/builder';\nexport const AXPDocumentWidget: AXPWidgetConfig = {\n name: 'document-layout',\n title: 'Document',\n description: 'Structures the entire document',\n icon: 'fa-solid fa-page',\n group: AXP_WIDGETS_LAYOUT_GROUP,\n type: 'container',\n visible: false,\n properties: [],\n components: {},\n};\n\ndeclare module '@acorex/platform/layout/builder' {\n interface AXPWidgetTypesMap {\n document: 'document-layout';\n }\n}\n","import { AXFormModule } from '@acorex/components/form';\nimport { AXLabelModule } from '@acorex/components/label';\nimport { AXPLayoutBuilderModule, AXPWidgetComponent } from '@acorex/platform/layout/builder';\nimport { CommonModule } from '@angular/common';\nimport { ChangeDetectionStrategy, Component, computed, HostBinding } from '@angular/core';\n\n@Component({\n selector: 'axp-form-field-widget',\n template: `\n <ax-form-field>\n <ax-label>{{ label() }}</ax-label>\n @for (node of children(); track $index) {\n <ng-container axp-widget-renderer [node]=\"node\" [index]=\"index\" [parentNode]=\"this\" [mode]=\"this.mode\"> </ng-container>\n }\n </ax-form-field>\n `,\n standalone: true,\n changeDetection: ChangeDetectionStrategy.OnPush,\n imports: [CommonModule, AXFormModule, AXLabelModule, AXPLayoutBuilderModule],\n})\nexport class AXPFormFieldWidgetViewComponent extends AXPWidgetComponent<any> {\n protected label = computed<string>(() => this.options()['label'] as string);\n\n @HostBinding('class')\n private get __class(): string {\n const cls: any = {};\n cls[`ax-block`] = true;\n cls[`ax-w-full`] = true;\n return cls;\n }\n}\n","import { AXFormModule } from '@acorex/components/form';\nimport { AXLabelModule } from '@acorex/components/label';\nimport { AXPContainerWidgetComponent, AXPLayoutBuilderModule } from '@acorex/platform/layout/builder';\nimport { AXPDesignerAddWidgetMiniButtonComponent, AXPWidgetDesignerRendererDirective } from '@acorex/platform/layout/designer';\nimport { CommonModule } from '@angular/common';\nimport { ChangeDetectionStrategy, Component, computed, HostBinding } from '@angular/core';\n@Component({\n selector: \"axp-form-field-widget\",\n template: `\n <ax-form-field>\n <ax-label>{{label()}}</ax-label>\n @for (node of children(); track $index) {\n <ng-container axp-widget-designer-renderer [node]=\"node\" [parentNode]=\"this\" [mode]=\"this.mode\"> </ng-container>\n }\n @empty {\n <axp-designer-add-widget-mini-button ></axp-designer-add-widget-mini-button>\n }\n </ax-form-field>\n `,\n standalone: true,\n changeDetection: ChangeDetectionStrategy.OnPush,\n imports: [CommonModule, AXFormModule, AXLabelModule, AXPLayoutBuilderModule, AXPWidgetDesignerRendererDirective, AXPDesignerAddWidgetMiniButtonComponent],\n providers: [\n {\n provide: AXPContainerWidgetComponent, useExisting: AXPFormFieldWidgetDesignerComponent\n }\n ]\n})\nexport class AXPFormFieldWidgetDesignerComponent extends AXPContainerWidgetComponent<void> {\n protected label = computed<string>(() => this.options()[\"label\"] as string);\n\n\n @HostBinding('class')\n private get __class(): any {\n return {\n 'ax-widget-container': true,\n 'ax-block': true,\n 'ax-w-full': true\n };\n }\n}","import { AXPWidgetConfig, AXP_WIDGETS_LAYOUT_GROUP } from '@acorex/platform/layout/builder';\nimport { AXP_DATA_PATH_PROPERTY, AXP_LABEL_PROPERTY } from '../../../properties';\nimport { AXP_NAME_PROPERTY } from '../../../properties/general.props';\n\nexport const AXPFormFieldWidget: AXPWidgetConfig = {\n name: 'form-field',\n title: 'Form Field',\n group: AXP_WIDGETS_LAYOUT_GROUP,\n type: 'container',\n icon: 'fa-solid fa-pen-field',\n properties: [\n AXP_NAME_PROPERTY,\n AXP_DATA_PATH_PROPERTY,\n AXP_LABEL_PROPERTY\n ],\n components: {\n view: {\n component: () => import('./form-field-widget-view.component').then((c) => c.AXPFormFieldWidgetViewComponent),\n },\n edit: {\n component: () => import('./form-field-widget-view.component').then((c) => c.AXPFormFieldWidgetViewComponent),\n },\n print: {\n component: () => import('./form-field-widget-view.component').then((c) => c.AXPFormFieldWidgetViewComponent),\n },\n designer: {\n component: () => import('./form-field-widget-designer.component').then((c) => c.AXPFormFieldWidgetDesignerComponent),\n },\n },\n};\n\ndeclare module '@acorex/platform/layout/builder' {\n interface AXPWidgetTypesMap {\n formField: 'form-field';\n }\n}\n","import { AXPLayoutBuilderModule, AXPWidgetComponent } from '@acorex/platform/layout/builder';\nimport { CommonModule } from '@angular/common';\nimport { ChangeDetectionStrategy, Component, computed } from '@angular/core';\n\n@Component({\n selector: 'axp-grid-layout-widget',\n template: `\n <div class=\"ax-grid ax-grid-cols-{{ cols() }} ax-grid-rows-{{ rows() }} ax-gap-{{ gap() }}\">\n @for (child of children(); track $index) {\n <ng-container axp-widget-renderer [node]=\"child\" [index]=\"index\" [parentNode]=\"this\" [mode]=\"this.mode\"> </ng-container>\n }\n </div>\n `,\n standalone: true,\n changeDetection: ChangeDetectionStrategy.OnPush,\n imports: [CommonModule, AXPLayoutBuilderModule],\n})\nexport class AXPGridWidgetViewComponent extends AXPWidgetComponent<any> {\n protected cols = computed<number>(() => (this.options()['cols'] as number) ?? 1);\n protected rows = computed<number>(() => (this.options()['rows'] as number) ?? 1);\n protected gap = computed<number>(() => (this.options()['gap'] as number) ?? 0);\n}\n","import { AXPWidgetComponent } from '@acorex/platform/layout/builder';\nimport { CommonModule } from '@angular/common';\nimport { ChangeDetectionStrategy, Component, inject } from '@angular/core';\n@Component({\n template: ``,\n standalone: true,\n changeDetection: ChangeDetectionStrategy.OnPush,\n imports: [CommonModule],\n inputs: []\n})\nexport class AXPGridWidgetPrintComponent extends AXPWidgetComponent<any> {}","import {\n AXPContainerWidgetComponent,\n AXPLayoutBuilderModule,\n AXPWidgetsCatalog,\n} from '@acorex/platform/layout/builder';\nimport {\n AXPDesignerAddWidgetButtonComponent,\n AXPDesignerGridDrawerComponent,\n AXPDesignerService,\n AXPWidgetDesignerRendererDirective,\n} from '@acorex/platform/layout/designer';\nimport { CommonModule } from '@angular/common';\nimport { ChangeDetectionStrategy, Component, computed, HostBinding, inject } from '@angular/core';\n\n@Component({\n selector: 'axp-grid-layout-widget',\n template: `\n @if(settled()) {\n <div class=\"ax-grid ax-grid-cols-{{ cols() }} ax-grid-rows-{{ rows() }} ax-gap-{{ gap() }}\">\n @for (child of children(); track $index) {\n <ng-container axp-widget-designer-renderer [node]=\"child\" [parentNode]=\"this\" [mode]=\"this.mode\"> </ng-container>\n }\n </div>\n }@else {\n <axp-designer-grid-drawer (onSelect)=\"handleDrawerSelect($event)\"></axp-designer-grid-drawer>\n }\n `,\n standalone: true,\n changeDetection: ChangeDetectionStrategy.OnPush,\n imports: [\n CommonModule,\n AXPLayoutBuilderModule,\n AXPWidgetDesignerRendererDirective,\n AXPDesignerAddWidgetButtonComponent,\n AXPDesignerGridDrawerComponent,\n ],\n providers: [\n {\n provide: AXPContainerWidgetComponent,\n useExisting: AXPGridWidgetDesignerComponent,\n },\n ],\n})\nexport class AXPGridWidgetDesignerComponent extends AXPContainerWidgetComponent<void> {\n private designerService = inject(AXPDesignerService);\n\n protected cols = computed<number>(() => (this.options()['cols'] as number) ?? 1);\n protected rows = computed<number>(() => (this.options()['rows'] as number) ?? 1);\n protected gap = computed<number>(() => (this.options()['gap'] as number) ?? 0);\n\n protected cells = computed<number[]>(() =>\n Array.from({ length: this.cols() * this.rows() }).map((c, index) => index)\n );\n\n protected settled = computed(() => this.cols() * this.rows() > 1 && this.children().length);\n\n // private e = effect(async () => {\n // if (this.settled()) {\n // const cols = this.cols();\n // const rows = this.rows();\n // const gap = this.gap();\n // // const gridstack = (await import('gridstack')).GridStack;\n // // const cols = this.cols();\n // // const rows = this.rows();\n // // \n // // // Initialize the grid with responsive options\n // // gridstack.init({\n // // cellHeight: 80,\n // // margin: 0,\n // // minRow: 1,\n // // column: 11,\n // // });\n // setTimeout(() => {\n // this.element.nativeElement.style.minHeight = this.placeholder?.nativeElement ? `${this.placeholder.nativeElement.clientHeight}px` : '100px';\n // }, 50);\n // }\n // })\n\n protected handleDrawerSelect(e: { rows: number; cols: number }) {\n this.designerService.update({\n values: {\n options: e,\n },\n mode: 'update',\n widget: this.node,\n });\n const list = Array.from({ length: this.cells().length }).map(() => ({\n type: AXPWidgetsCatalog.gridItem,\n }));\n list.forEach((node) => {\n this.designerService.addWidget(this.node, node);\n });\n }\n\n @HostBinding('class')\n private get __class(): any {\n return {\n 'ax-widget-container': true,\n 'ax-block': true,\n 'ax-w-full': true\n };\n }\n}\n","import { AXPWidgetConfig, AXP_WIDGETS_LAYOUT_GROUP } from '@acorex/platform/layout/builder';\nimport { AXP_LAYOUT_GRID_PROPERTIES } from '../../../properties/layout.props';\nimport { AXP_NAME_PROPERTY } from '../../../properties/general.props';\n\nexport const AXPGridWidget: AXPWidgetConfig = {\n name: 'grid-layout',\n title: 'Grid Layout',\n type: 'container',\n group: AXP_WIDGETS_LAYOUT_GROUP,\n icon: 'fa-solid fa-grid',\n properties: [\n AXP_NAME_PROPERTY,\n ...AXP_LAYOUT_GRID_PROPERTIES\n ],\n components: {\n view: {\n component: () => import('./grid-widget-view.component').then((c) => c.AXPGridWidgetViewComponent),\n },\n edit: {\n component: () => import('./grid-widget-view.component').then((c) => c.AXPGridWidgetViewComponent),\n },\n print: {\n component: () => import('./grid-widget-view.component').then((c) => c.AXPGridWidgetViewComponent),\n },\n designer: {\n component: () => import('./grid-widget-designer.component').then((c) => c.AXPGridWidgetDesignerComponent),\n },\n },\n};\n\ndeclare module '@acorex/platform/layout/builder' {\n interface AXPWidgetTypesMap {\n grid: 'grid-layout';\n }\n}\n","import { AXPContainerWidgetComponent, AXPLayoutBuilderModule } from '@acorex/platform/layout/builder';\nimport { CommonModule } from '@angular/common';\nimport { ChangeDetectionStrategy, Component, computed, HostBinding } from '@angular/core';\n\n@Component({\n selector: 'axp-grid-layout-item-widget',\n template: `\n @for (child of children(); track $index) {\n <ng-container axp-widget-renderer [node]=\"child\" [index]=\"index\" [parentNode]=\"this\" [mode]=\"this.mode\"> </ng-container>\n }\n `,\n standalone: true,\n changeDetection: ChangeDetectionStrategy.OnPush,\n imports: [CommonModule, AXPLayoutBuilderModule],\n providers: [\n {\n provide: AXPContainerWidgetComponent,\n useExisting: AXPGridItemWidgetViewComponent,\n },\n ],\n})\nexport class AXPGridItemWidgetViewComponent extends AXPContainerWidgetComponent<any> {\n protected colSpan = computed<number>(() => this.options()['colSpan'] as number);\n protected colStart = computed<number>(() => this.options()['colStart'] as number);\n protected colEnd = computed<number>(() => this.options()['colEnd'] as number);\n\n protected flexAlignItems = computed<string>(() => this.options()['flexAlignItems']?.id);\n protected flexJustifyContent = computed<string>(() => this.options()['flexJustifyContent']?.id);\n protected flexWrap = computed<string>(() => this.options()['flexWrap']?.id);\n protected flexDirection = computed<string>(() => this.options()['flexDirection']?.id);\n\n protected gap = computed<number>(() => (this.options()['gap'] as number) ?? 0);\n\n @HostBinding('class')\n private get __class(): any {\n const cls: any = {};\n //\n cls[`ax-flex`] = true;\n cls[`ax-gap-${this.gap()}`] = true;\n //\n if (this.flexAlignItems()) {\n cls[this.flexAlignItems()] = true;\n }\n if (this.flexJustifyContent()) {\n cls[this.flexJustifyContent()] = true;\n }\n if (this.flexWrap()) {\n cls[this.flexWrap()] = true;\n }\n if (this.flexDirection()) {\n cls[this.flexDirection()] = true;\n }\n //\n cls[`ax-col-span-12`] = true;\n if (this.colSpan() != null) {\n cls[`lg:ax-col-span-${this.colSpan()}`] = true;\n } else {\n cls[`lg:ax-col-span-1`] = true;\n }\n //\n if (this.colStart() != null) {\n cls[`lg:ax-col-start-${this.colStart()}`] = true;\n }\n //\n if (this.colEnd() != null) {\n cls[`lg:ax-col-end-${this.colEnd()}`] = true;\n }\n return cls;\n }\n}\n","import { AXPWidgetComponent } from '@acorex/platform/layout/builder';\nimport { CommonModule } from '@angular/common';\nimport { ChangeDetectionStrategy, Component, inject } from '@angular/core';\n@Component({\n template: ``,\n standalone: true,\n changeDetection: ChangeDetectionStrategy.OnPush,\n imports: [CommonModule],\n inputs: []\n})\nexport class AXPGridItemWidgetPrintComponent extends AXPWidgetComponent<any> { }","import { AXPContainerWidgetComponent, AXPLayoutBuilderModule } from '@acorex/platform/layout/builder';\nimport {\n AXPDesignerAddWidgetMiniButtonComponent,\n AXPDesignerGridDrawerComponent,\n AXPDesignerService,\n AXPWidgetDesignerRendererDirective,\n} from '@acorex/platform/layout/designer';\nimport { CommonModule } from '@angular/common';\nimport { ChangeDetectionStrategy, Component, computed, HostBinding, inject } from '@angular/core';\n\n@Component({\n selector: 'axp-grid-layout-item-widget',\n template: `\n @for (child of children(); track $index) {\n <ng-container axp-widget-designer-renderer [node]=\"child\" [parentNode]=\"this\" [mode]=\"this.mode\"> </ng-container>\n } @empty {\n <axp-designer-add-widget-mini-button ></axp-designer-add-widget-mini-button>\n }\n `,\n standalone: true,\n changeDetection: ChangeDetectionStrategy.OnPush,\n imports: [\n CommonModule,\n AXPLayoutBuilderModule,\n AXPWidgetDesignerRendererDirective,\n AXPDesignerAddWidgetMiniButtonComponent,\n AXPDesignerGridDrawerComponent,\n ],\n providers: [\n {\n provide: AXPContainerWidgetComponent,\n useExisting: AXPGridItemWidgetDesignerComponent,\n },\n ],\n})\nexport class AXPGridItemWidgetDesignerComponent extends AXPContainerWidgetComponent<void> {\n\n protected colSpan = computed<number>(() => this.options()['colSpan'] as number);\n protected colStart = computed<number>(() => this.options()['colStart'] as number);\n protected colEnd = computed<number>(() => this.options()['colEnd'] as number);\n\n protected flexAlignItems = computed<string>(() => this.options()['flexAlignItems']?.id);\n protected flexJustifyContent = computed<string>(() => this.options()['flexJustifyContent']?.id);\n protected flexWrap = computed<string>(() => this.options()['flexWrap']?.id);\n protected flexDirection = computed<string>(() => this.options()['flexDirection']?.id);\n\n protected gap = computed<number>(() => (this.options()['gap'] as number) ?? 0);\n\n\n\n @HostBinding('class')\n private get __class(): any {\n const cls: any = {};\n //\n cls[`ax-widget-container`] = true;\n cls[`ax-flex`] = true;\n cls[`ax-gap-${this.gap()}`] = true;\n //\n if (this.flexAlignItems()) {\n cls[this.flexAlignItems()] = true;\n }\n if (this.flexJustifyContent()) {\n cls[this.flexJustifyContent()] = true;\n }\n if (this.flexWrap()) {\n cls[this.flexWrap()] = true;\n }\n if (this.flexDirection()) {\n cls[this.flexDirection()] = true;\n }\n //\n cls[`ax-col-span-12`] = true;\n if (this.colSpan() != null) {\n cls[`lg:ax-col-span-${this.colSpan()}`] = true;\n } else {\n cls[`lg:ax-col-span-1`] = true;\n }\n //\n if (this.colStart() != null) {\n cls[`lg:ax-col-start-${this.colStart()}`] = true;\n }\n //\n if (this.colEnd() != null) {\n cls[`lg:ax-col-end-${this.colEnd()}`] = true;\n }\n return cls;\n }\n}\n","import { AXPWidgetConfig, AXP_WIDGETS_LAYOUT_GROUP } from '@acorex/platform/layout/builder';\nimport { AXP_LAYOUT_FLEX_PROPERTIES, AXP_LAYOUT_GRID_ITEM_PROPERTIES } from '../../../properties/layout.props';\nimport { AXP_NAME_PROPERTY } from '../../../properties/general.props';\n\nexport const AXPGridItemWidget: AXPWidgetConfig = {\n name: 'grid-item-layout',\n title: 'Grid Item',\n type: 'container',\n visible: false,\n group: AXP_WIDGETS_LAYOUT_GROUP,\n icon: 'fa-solid fa-objects-column',\n properties: [\n AXP_NAME_PROPERTY,\n ...AXP_LAYOUT_GRID_ITEM_PROPERTIES,\n ...AXP_LAYOUT_FLEX_PROPERTIES\n ],\n components: {\n view: {\n component: () => import('./grid-item-widget-view.component').then((c) => c.AXPGridItemWidgetViewComponent),\n },\n edit: {\n component: () => import('./grid-item-widget-view.component').then((c) => c.AXPGridItemWidgetViewComponent),\n },\n print: {\n component: () => import('./grid-item-widget-view.component').then((c) => c.AXPGridItemWidgetViewComponent),\n },\n designer: {\n component: () => import('./grid-item-widget-designer.component').then((c) => c.AXPGridItemWidgetDesignerComponent),\n },\n },\n};\n\ndeclare module '@acorex/platform/layout/builder' {\n interface AXPWidgetTypesMap {\n gridItem: 'grid-item-layout';\n }\n}\n","import { AXPLayoutBuilderModule, AXPWidgetComponent } from '@acorex/platform/layout/builder';\nimport { CommonModule } from '@angular/common';\nimport { ChangeDetectionStrategy, Component, computed } from '@angular/core';\n\n@Component({\n selector: 'axp-grid-row-widget',\n template: `\n <div class=\"ax-grid ax-grid-cols-{{ cols() }} ax-grid-rows-{{ rows() }} ax-gap-{{ gap() }}\">\n @for (child of children(); track $index) {\n <ng-container axp-widget-renderer [node]=\"child\" [index]=\"index\" [parentNode]=\"this\" [mode]=\"this.mode\"> </ng-container>\n }\n </div>\n `,\n standalone: true,\n changeDetection: ChangeDetectionStrategy.OnPush,\n imports: [CommonModule, AXPLayoutBuilderModule],\n})\nexport class AXPGridRowWidgetViewComponent extends AXPWidgetComponent<any> {\n protected cols = computed<number>(() => (this.options()['cols'] as number) ?? 1);\n protected rows = computed<number>(() => (this.options()['rows'] as number) ?? 1);\n protected gap = computed<number>(() => (this.options()['gap'] as number) ?? 0);\n}\n","import { AXPWidgetComponent } from '@acorex/platform/layout/builder';\nimport { CommonModule } from '@angular/common';\nimport { ChangeDetectionStrategy, Component, inject } from '@angular/core';\n@Component({\n template: ``,\n standalone: true,\n changeDetection: ChangeDetectionStrategy.OnPush,\n imports: [CommonModule],\n inputs: []\n})\nexport class AXPGridRowWidgetPrintComponent extends AXPWidgetComponent<any> {}","import { AXPContainerWidgetComponent, AXPLayoutBuilderModule, AXPWidgetsCatalog } from '@acorex/platform/layout/builder';\nimport { AXPWidgetDesignerRendererDirective, AXPDesignerAddWidgetButtonComponent, AXPDesignerGridDrawerComponent, AXPDesignerService } from '@acorex/platform/layout/designer';\nimport { CommonModule } from '@angular/common';\nimport { ChangeDetectionStrategy, Component, computed, HostBinding, HostListener, inject, signal, ViewEncapsulation } from '@angular/core';\nimport { AXPGridWidgetDesignerComponent } from '../grid/grid-widget-designer.component';\nimport { get, sum } from 'lodash-es';\n@Component({\n selector: 'axp-grid-row-widget',\n template: `\n <div class=\"ax-grid ax-grid-cols-{{cols()}} ax-gap-{{gap()}}\">\n @for (node of children(); track $index) {\n <ng-container axp-widget-designer-renderer [node]=\"node\" [parentNode]=\"this\" [mode]=\"this.mode\"> </ng-container>\n }\n @for (node of cells(); track $index) {\n <div class=\"axp-empty-slot\" (mouseenter)=\"handleMouseHover($index)\" (mouseleave)=\"handleMouseLeave($event)\" (click)=\"handleClick($event,$index)\" [class.axp-state-hover]=\"hoverIndex()>=$index\">\n </div>\n }\n </div>\n `,\n styleUrls: ['grid-row-widget-designer.component.scss'],\n standalone: true,\n changeDetection: ChangeDetectionStrategy.OnPush,\n encapsulation: ViewEncapsulation.None,\n imports: [CommonModule, AXPLayoutBuilderModule, AXPWidgetDesignerRendererDirective, AXPDesignerAddWidgetButtonComponent, AXPDesignerGridDrawerComponent],\n providers: [\n {\n provide: AXPContainerWidgetComponent, useExisting: AXPGridWidgetDesignerComponent\n }\n ]\n})\nexport class AXPGridRowWidgetDesignerComponent extends AXPContainerWidgetComponent<any> {\n\n private designerService = inject(AXPDesignerService);\n\n protected cols = computed<number>(() => this.options()[\"cols\"] as number ?? 1);\n protected gap = computed<number>(() => this.options()[\"gap\"] as number ?? 0);\n\n protected cells = computed<number[]>(() => Array.from({ length: this.cols() - sum(this.children().map(c => get(c.options, 'colSpan'))) }).map((c, index) => index));\n\n\n protected hoverIndex = signal(0);\n\n\n protected handleMouseHover(index: number) {\n console.log(\"handleMouseHover\", index)\n this.hoverIndex.set(index);\n }\n\n protected handleClick(e: MouseEvent, index: number) {\n console.log(\"handleClick\", index)\n e.stopPropagation();\n this.hoverIndex.set(-1);\n e.preventDefault();\n this.designerService.addWidget(this.node, {\n type: AXPWidgetsCatalog.gridItem,\n options: {\n colSpan: index + 1\n }\n });\n }\n\n @HostListener('mouseleave', ['$event'])\n protected handleMouseLeave(event: MouseEvent) {\n this.hoverIndex.set(-1);\n }\n\n @HostBinding('class')\n private get __class(): string {\n const cls: any = {};\n //\n cls[`ax-widget-container`] = true;\n cls[`ax-block`] = true;\n cls[`ax-w-full`] = true;\n return cls;\n }\n\n}","import { AXP_WIDGETS_LAYOUT_GROUP, AXPWidgetConfig } from '@acorex/platform/layout/builder';\nimport { AXP_LAYOUT_GRID_ROW_PROPERTIES, AXP_NAME_PROPERTY } from '../../../properties';\n\nexport const AXPGridRowWidget: AXPWidgetConfig = {\n name: \"grid-row-layout\",\n title: \"Grid Row Layout\",\n group: AXP_WIDGETS_LAYOUT_GROUP,\n type: 'container',\n icon: \"fa-solid fa-diagram-cells\",\n properties: [\n AXP_NAME_PROPERTY,\n ...AXP_LAYOUT_GRID_ROW_PROPERTIES\n ],\n components: {\n view: {\n component: () => import('./grid-row-widget-view.component').then((c) => c.AXPGridRowWidgetViewComponent),\n },\n edit: {\n component: () => import('./grid-row-widget-view.component').then((c) => c.AXPGridRowWidgetViewComponent),\n },\n print: {\n component: () => import('./grid-row-widget-print.component').then((c) => c.AXPGridRowWidgetPrintComponent),\n },\n designer: {\n component: () => import('./grid-row-widget-designer.component').then((c) => c.AXPGridRowWidgetDesignerComponent),\n },\n }\n}\n\ndeclare module '@acorex/platform/layout/builder' {\n interface AXPWidgetTypesMap {\n gridRow: 'grid-row-layout';\n }\n}","import { AXPWidgetComponent } from '@acorex/platform/layout/builder';\nimport { CommonModule } from '@angular/common';\nimport { ChangeDetectionStrategy, Component, computed, inject } from '@angular/core';\nimport { DomSanitizer } from '@angular/platform-browser';\n\n@Component({\n selector: \"axp-text-block-widget\",\n template: `\n <div [innerHTML]=\"innerContent()\"></div>\n `,\n standalone: true,\n changeDetection: ChangeDetectionStrategy.OnPush,\n imports: [CommonModule],\n})\nexport class AXPTextBlockWidgetViewComponent extends AXPWidgetComponent<void> {\n sanitizer = inject(DomSanitizer);\n\n protected content = computed<string>(() => this.options()['content'] as string);\n\n protected innerContent = computed(() =>\n this.sanitizer.bypassSecurityTrustHtml(this.content())\n );\n}","import { AXP_WIDGETS_LAYOUT_GROUP, AXPWidgetConfig, AXPWidgetsCatalog } from '@acorex/platform/layout/builder';\nimport { AXP_BEHAVIOR_PROPERTY_GROUP, AXP_NAME_PROPERTY } from '../../../properties';\n\nexport const AXPTextBlockWidget: AXPWidgetConfig = {\n name: 'text-block-layout',\n title: 'Text Block',\n description: 'Displays text blocks',\n icon: 'fa-solid fa-text',\n group: AXP_WIDGETS_LAYOUT_GROUP,\n type: 'view',\n properties: [\n AXP_NAME_PROPERTY,\n {\n name: 'content',\n title: 'Content',\n group: AXP_BEHAVIOR_PROPERTY_GROUP,\n schema: {\n dataType: 'string',\n defaultValue: 'Text Block',\n interface: {\n name: 'content',\n path: 'options.content',\n type: AXPWidgetsCatalog.richText,\n },\n },\n visible: true,\n },\n ],\n components: {\n view: {\n component: () => import('./text-block-widget-view.component').then((c) => c.AXPTextBlockWidgetViewComponent),\n },\n edit: {\n component: () => import('./text-block-widget-view.component').then((c) => c.AXPTextBlockWidgetViewComponent),\n },\n print: {\n component: () => import('./text-block-widget-view.component').then((c) => c.AXPTextBlockWidgetViewComponent),\n },\n designer: {\n component: () => import('./text-block-widget-designer.component').then((c) => c.AXPTextBlockWidgetDesignerComponent),\n },\n },\n};\n\ndeclare module '@acorex/platform/layout/builder' {\n interface AXPWidgetTypesMap {\n textBlockLayout: 'text-block-layout';\n }\n}\n","import { AXPLayoutBuilderModule } from '@acorex/platform/layout/builder';\nimport { NgModule } from '@angular/core';\nimport {\n AXPBlockWidget,\n AXPButtonWidget,\n AXPCheckBoxWidget,\n AXPContactWidget,\n AXPDateTimeBoxWidget,\n //AXPEmailBoxWidget,\n AXPFileBoxWidget,\n AXPGalleryWidget,\n AXPLargeTextWidget,\n //AXPLinkWidget,\n AXPMapBoxWidget,\n AXPNumberBoxWidget,\n AXPPageWidget,\n AXPPasswordBoxWidget,\n //AXPPhoneBoxWidget,\n AXPRepeaterWidget,\n AXPRichTextWidget,\n AXPSelectBoxWidget,\n AXPSelectionListWidget,\n AXPSignatureWidget,\n AXPTextBoxWidget,\n AXPToggleWidget,\n} from './widgets';\nimport { AXPQrcodeWidget } from './widgets/advance/qrcode';\nimport { AXPColorBoxWidget } from './widgets/editors/color';\nimport { AXPDocumentWidget } from './widgets/layout/document/document-widget.config';\nimport { AXPFormFieldWidget } from './widgets/layout/form-field';\nimport { AXPGridWidget } from './widgets/layout/grid';\nimport { AXPGridItemWidget } from './widgets/layout/grid-item';\nimport { AXPGridRowWidget } from './widgets/layout/grid-row';\nimport { AXPTextBlockWidget } from './widgets/layout/text-block';\nimport { AXPTemplateWidget } from './widgets/layout/template';\n\n@NgModule({\n imports: [\n AXPLayoutBuilderModule.forChild({\n widgets: [\n AXPDocumentWidget,\n //\n AXPTemplateWidget,\n AXPBlockWidget,\n AXPPageWidget,\n AXPRepeaterWidget,\n AXPTextBlockWidget,\n AXPFormFieldWidget,\n AXPGridWidget,\n AXPGridItemWidget,\n AXPGridRowWidget,\n //\n AXPTextBoxWidget,\n AXPCheckBoxWidget,\n AXPSelectBoxWidget,\n AXPRichTextWidget,\n AXPNumberBoxWidget,\n AXPSignatureWidget,\n AXPDateTimeBoxWidget,\n AXPContactWidget,\n AXPSelectionListWidget,\n AXPLargeTextWidget,\n AXPMapBoxWidget,\n //AXPPhoneBoxWidget,\n //AXPEmailBoxWidget,\n //AXPLinkWidget,\n AXPFileBoxWidget,\n AXPQrcodeWidget,\n AXPPasswordBoxWidget,\n AXPGalleryWidget,\n AXPToggleWidget,\n AXPColorBoxWidget,\n //\n AXPButtonWidget,\n ],\n }),\n ],\n exports: [],\n declarations: [],\n})\nexport class AXPWidgetsModule { }\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":["i1","i2","i3","i4","i6","i7","i8","i5"],"mappings":"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"}