@ng-atomic/components 16.2.0 → 16.3.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (546) hide show
  1. package/atoms/atoms.module.d.ts +4 -1
  2. package/atoms/badge/badge.atom.d.ts +6 -0
  3. package/atoms/badge/index.d.ts +1 -0
  4. package/atoms/icon/icon.atom.d.ts +7 -8
  5. package/atoms/smart-menu-button/smart-menu-button.atom.d.ts +16 -7
  6. package/components.module.d.ts +4 -2
  7. package/esm2022/atoms/atoms.module.mjs +11 -7
  8. package/esm2022/atoms/badge/badge.atom.mjs +16 -0
  9. package/esm2022/atoms/badge/index.mjs +2 -0
  10. package/esm2022/atoms/badge/ng-atomic-components-atoms-badge.mjs +5 -0
  11. package/esm2022/atoms/chips-input/chips-input.atom.mjs +6 -6
  12. package/esm2022/atoms/icon/icon.atom.mjs +28 -37
  13. package/esm2022/atoms/smart-menu-button/smart-menu-button.atom.mjs +125 -58
  14. package/esm2022/components.module.mjs +17 -6
  15. package/esm2022/extras/editor/editor.component.mjs +67 -34
  16. package/esm2022/extras/extras.module.mjs +5 -5
  17. package/esm2022/frames/app/app.frame.mjs +176 -0
  18. package/esm2022/frames/app/index.mjs +2 -0
  19. package/esm2022/frames/app/ng-atomic-components-frames-app.mjs +5 -0
  20. package/esm2022/frames/auto-layout/auto-layout.frame.mjs +5 -5
  21. package/esm2022/frames/card/card.frame.mjs +5 -5
  22. package/esm2022/frames/columns/columns.frame.mjs +163 -0
  23. package/esm2022/frames/columns/index.mjs +2 -0
  24. package/esm2022/frames/columns/ng-atomic-components-frames-columns.mjs +5 -0
  25. package/esm2022/frames/divider/divider.frame.mjs +23 -20
  26. package/esm2022/frames/drawer/drawer.frame.mjs +45 -39
  27. package/esm2022/frames/entrance/entrance.frame.mjs +67 -0
  28. package/esm2022/frames/entrance/index.mjs +2 -0
  29. package/esm2022/frames/entrance/ng-atomic-components-frames-entrance.mjs +5 -0
  30. package/esm2022/frames/fab/fab.frame.mjs +45 -22
  31. package/esm2022/frames/fab/fab.service.mjs +4 -4
  32. package/esm2022/frames/frames.module.mjs +27 -7
  33. package/esm2022/frames/line-up/index.mjs +2 -1
  34. package/esm2022/frames/line-up/line-up.animations.mjs +5 -1
  35. package/esm2022/frames/line-up/line-up.frame.mjs +69 -93
  36. package/esm2022/frames/line-up/line-up.service.mjs +55 -0
  37. package/esm2022/frames/loading/loading.frame.mjs +37 -20
  38. package/esm2022/frames/overlay/overlay.animations.mjs +6 -6
  39. package/esm2022/frames/overlay/overlay.frame.mjs +33 -18
  40. package/esm2022/frames/router-outlet/router-outlet.frame.mjs +100 -62
  41. package/esm2022/frames/scroll/scroll.frame.mjs +6 -6
  42. package/esm2022/frames/scroll-v2/scroll.frame.mjs +24 -12
  43. package/esm2022/frames/side-nav/side-nav.frame.mjs +139 -85
  44. package/esm2022/frames/smart-menu/smart-menu.frame.mjs +5 -5
  45. package/esm2022/frames/tabs/index.mjs +2 -0
  46. package/esm2022/frames/tabs/ng-atomic-components-frames-tabs.mjs +5 -0
  47. package/esm2022/frames/tabs/tabs.frame.mjs +41 -0
  48. package/esm2022/frames/toggle/index.mjs +2 -0
  49. package/esm2022/frames/toggle/ng-atomic-components-frames-toggle.mjs +5 -0
  50. package/esm2022/frames/toggle/toggle.frame.mjs +48 -0
  51. package/esm2022/frames/vertical-hide/vertical-hide.frame.mjs +6 -6
  52. package/esm2022/molecules/action-input-field/action-input-field.molecule.mjs +5 -5
  53. package/esm2022/molecules/actions-column/actions-column.molecule.mjs +54 -64
  54. package/esm2022/molecules/checkbox-column/checkbox-column.molecule.mjs +45 -60
  55. package/esm2022/molecules/chips-input-field/chips-input-field.molecule.mjs +96 -80
  56. package/esm2022/molecules/date-input-field/date-input-field.molecule.mjs +57 -47
  57. package/esm2022/molecules/date-range-input-field/date-range-input-field.molecule.mjs +75 -0
  58. package/esm2022/molecules/date-range-input-field/index.mjs +2 -0
  59. package/esm2022/molecules/date-range-input-field/ng-atomic-components-molecules-date-range-input-field.mjs +5 -0
  60. package/esm2022/molecules/file-input-field/file-input-field.molecule.mjs +99 -80
  61. package/esm2022/molecules/grid-item/grid-item.molecule.mjs +68 -0
  62. package/esm2022/molecules/grid-item/index.mjs +2 -0
  63. package/esm2022/molecules/grid-item/ng-atomic-components-molecules-grid-item.mjs +5 -0
  64. package/esm2022/molecules/header/header.molecule.mjs +40 -16
  65. package/esm2022/{organisms/smart-table → molecules/loading-box}/index.mjs +2 -2
  66. package/esm2022/molecules/loading-box/loading-box.molecule.mjs +56 -0
  67. package/esm2022/{templates/smart-index/ng-atomic-components-templates-smart-index.mjs → molecules/loading-box/ng-atomic-components-molecules-loading-box.mjs} +1 -1
  68. package/esm2022/molecules/molecules.module.mjs +24 -6
  69. package/esm2022/molecules/navigation-list-item/navigation-list-item.molecule.mjs +45 -32
  70. package/esm2022/molecules/nested-menu/nested-menu.molecule.mjs +5 -5
  71. package/esm2022/molecules/select-input-field/select-input-field.molecule.mjs +55 -36
  72. package/esm2022/molecules/smart-column/smart-column.molecule.mjs +134 -24
  73. package/esm2022/molecules/text-input-field/text-input-field.molecule.mjs +77 -67
  74. package/esm2022/molecules/textarea-field/textarea-field.molecule.mjs +59 -45
  75. package/esm2022/molecules/tree-column/tree-column.molecule.mjs +52 -35
  76. package/esm2022/organisms/action-buttons-section/action-buttons-section.organism.mjs +129 -19
  77. package/esm2022/organisms/action-input-section/action-input-section.organism.mjs +46 -30
  78. package/esm2022/organisms/agreement-input-section/agreement-input-section.organism.mjs +66 -0
  79. package/esm2022/organisms/agreement-input-section/index.mjs +2 -0
  80. package/esm2022/organisms/agreement-input-section/ng-atomic-components-organisms-agreement-input-section.mjs +5 -0
  81. package/esm2022/organisms/card-input-section/card-input-section.organism.mjs +5 -5
  82. package/esm2022/organisms/chips-input-section/chips-input-section.organism.mjs +52 -0
  83. package/esm2022/organisms/chips-input-section/index.mjs +2 -0
  84. package/esm2022/organisms/chips-input-section/ng-atomic-components-organisms-chips-input-section.mjs +5 -0
  85. package/esm2022/organisms/cvc-and-exp-input-section/cvc-and-exp-input-section.organism.mjs +5 -5
  86. package/esm2022/organisms/date-input-section/date-input-section.organism.mjs +62 -28
  87. package/esm2022/organisms/date-range-input-section/date-range-input-section.organism.mjs +71 -0
  88. package/esm2022/organisms/date-range-input-section/index.mjs +2 -0
  89. package/esm2022/organisms/date-range-input-section/ng-atomic-components-organisms-date-range-input-section.mjs +5 -0
  90. package/esm2022/organisms/definition-list/definition-list.organism.mjs +57 -0
  91. package/esm2022/organisms/definition-list/index.mjs +2 -0
  92. package/esm2022/organisms/definition-list/ng-atomic-components-organisms-definition-list.mjs +5 -0
  93. package/esm2022/organisms/file-input-section/file-input-section.organism.mjs +51 -36
  94. package/esm2022/organisms/filters-section/filters-section.organism.mjs +8 -6
  95. package/esm2022/organisms/graphql-editor/graphql-editor.organism.mjs +4 -4
  96. package/esm2022/organisms/grid-cards-section/grid-cards-section.organism.mjs +40 -0
  97. package/esm2022/organisms/grid-cards-section/index.mjs +2 -0
  98. package/esm2022/organisms/grid-cards-section/ng-atomic-components-organisms-grid-cards-section.mjs +5 -0
  99. package/esm2022/organisms/grid-toolbar/grid-toolbar.organism.mjs +87 -81
  100. package/esm2022/organisms/heading/heading.organism.mjs +49 -5
  101. package/esm2022/organisms/image-preview-section/image-preview-section.organism.mjs +16 -0
  102. package/esm2022/organisms/image-preview-section/index.mjs +2 -0
  103. package/esm2022/organisms/image-preview-section/ng-atomic-components-organisms-image-preview-section.mjs +5 -0
  104. package/esm2022/organisms/markdown-preview-section/index.mjs +2 -0
  105. package/esm2022/organisms/markdown-preview-section/markdown-preview-section.organism.mjs +39 -0
  106. package/esm2022/organisms/markdown-preview-section/ng-atomic-components-organisms-markdown-preview-section.mjs +5 -0
  107. package/esm2022/organisms/menu-footer/menu-footer.organism.mjs +31 -19
  108. package/esm2022/organisms/menu-header/menu-header.organism.mjs +86 -22
  109. package/esm2022/organisms/mermaid-section/mermaid-section.organism.mjs +5 -5
  110. package/esm2022/organisms/message-input-section/message-input-section.organism.mjs +4 -4
  111. package/esm2022/organisms/messages-section/messages-section.organism.mjs +56 -6
  112. package/esm2022/organisms/navigation-list/navigation-list.organism.mjs +32 -36
  113. package/esm2022/organisms/navigator/navigator.organism.mjs +84 -40
  114. package/esm2022/organisms/number-input-section/index.mjs +2 -0
  115. package/esm2022/organisms/number-input-section/ng-atomic-components-organisms-number-input-section.mjs +5 -0
  116. package/esm2022/organisms/number-input-section/number-input-section.organism.mjs +82 -0
  117. package/esm2022/organisms/organisms.module.mjs +82 -9
  118. package/esm2022/organisms/paginator/paginator.organism.mjs +50 -34
  119. package/esm2022/organisms/password-input-section/index.mjs +2 -0
  120. package/esm2022/organisms/password-input-section/ng-atomic-components-organisms-password-input-section.mjs +5 -0
  121. package/esm2022/organisms/password-input-section/password-input-section.organism.mjs +80 -0
  122. package/esm2022/organisms/select-input-section/select-input-section.organism.mjs +69 -19
  123. package/esm2022/organisms/selection-list/selection-list.organism.mjs +5 -5
  124. package/esm2022/organisms/smart-list/smart-list.organism.mjs +149 -104
  125. package/esm2022/organisms/social-login-section/social-login-section.organism.mjs +5 -5
  126. package/esm2022/organisms/stripe-input-section/index.mjs +2 -0
  127. package/esm2022/organisms/stripe-input-section/ng-atomic-components-organisms-stripe-input-section.mjs +5 -0
  128. package/esm2022/organisms/stripe-input-section/stripe-input-section.organism.mjs +223 -0
  129. package/esm2022/organisms/table/index.helpers.mjs +110 -0
  130. package/esm2022/organisms/table/index.mjs +3 -0
  131. package/esm2022/organisms/table/ng-atomic-components-organisms-table.mjs +5 -0
  132. package/esm2022/organisms/table/table.organism.mjs +315 -0
  133. package/esm2022/organisms/terminal/terminal.organism.mjs +4 -4
  134. package/esm2022/organisms/text-input-section/text-input-section.organism.mjs +72 -44
  135. package/esm2022/organisms/text-preview-section/index.mjs +2 -0
  136. package/esm2022/organisms/text-preview-section/ng-atomic-components-organisms-text-preview-section.mjs +5 -0
  137. package/esm2022/organisms/text-preview-section/text-preview-section.organism.mjs +79 -0
  138. package/esm2022/organisms/textarea-section/textarea-section.organism.mjs +73 -38
  139. package/esm2022/organisms/thread-messages-section/index.mjs +2 -0
  140. package/esm2022/organisms/thread-messages-section/ng-atomic-components-organisms-thread-messages-section.mjs +5 -0
  141. package/esm2022/organisms/thread-messages-section/thread-messages-section.organism.mjs +119 -0
  142. package/esm2022/organisms/time-range-input-section/index.mjs +2 -0
  143. package/esm2022/organisms/time-range-input-section/ng-atomic-components-organisms-time-range-input-section.mjs +5 -0
  144. package/esm2022/organisms/time-range-input-section/time-range-input-section.organism.mjs +43 -0
  145. package/esm2022/organisms/toolbar/toolbar.organism.mjs +6 -6
  146. package/esm2022/organisms/tree-section/tree-section.organism.mjs +5 -5
  147. package/esm2022/organisms/vertical-divider/vertical-divider.organism.mjs +4 -4
  148. package/esm2022/organisms/video-section/index.mjs +2 -0
  149. package/esm2022/organisms/video-section/ng-atomic-components-organisms-video-section.mjs +5 -0
  150. package/esm2022/organisms/video-section/video-section.organism.mjs +132 -0
  151. package/esm2022/pages/_index/index.mjs +1 -2
  152. package/esm2022/pages/_index/index.page.mjs +155 -8
  153. package/esm2022/pages/blank/blank.page.mjs +4 -4
  154. package/esm2022/pages/blank/blank.route.mjs +8 -2
  155. package/esm2022/pages/blank/blank.routes.mjs +5 -3
  156. package/esm2022/pages/blank/index.mjs +2 -1
  157. package/esm2022/pages/form/form.page.mjs +173 -0
  158. package/esm2022/pages/form/index.mjs +2 -0
  159. package/esm2022/pages/form/ng-atomic-components-pages-form.mjs +5 -0
  160. package/esm2022/pages/pages.module.mjs +13 -6
  161. package/esm2022/pages/terms/index.mjs +2 -0
  162. package/esm2022/pages/terms/terms.page.mjs +84 -0
  163. package/esm2022/sheets/actions/actions.sheet.mjs +4 -4
  164. package/esm2022/sheets/sheets.module.mjs +5 -5
  165. package/esm2022/sheets/sheets.service.mjs +5 -5
  166. package/esm2022/templates/_index/index.mjs +2 -0
  167. package/esm2022/templates/_index/index.template.mjs +381 -0
  168. package/esm2022/templates/_index/ng-atomic-components-templates-_index.mjs +5 -0
  169. package/esm2022/templates/background/background.template.mjs +30 -0
  170. package/esm2022/templates/{smart-crud → background}/index.mjs +2 -2
  171. package/esm2022/templates/{smart-crud/ng-atomic-components-templates-smart-crud.mjs → background/ng-atomic-components-templates-background.mjs} +1 -1
  172. package/esm2022/templates/code-editor/code-editor.template.mjs +37 -76
  173. package/esm2022/templates/entrance/entrance.template.mjs +99 -72
  174. package/esm2022/templates/file-tree/file-tree.template.mjs +6 -6
  175. package/esm2022/templates/form/form.template.mjs +466 -0
  176. package/esm2022/templates/form/index.mjs +2 -0
  177. package/esm2022/templates/form/ng-atomic-components-templates-form.mjs +5 -0
  178. package/esm2022/templates/icon-button-menu/icon-button-menu.template.mjs +32 -38
  179. package/esm2022/templates/loading/loading.template.mjs +4 -4
  180. package/esm2022/templates/menu/menu.template.mjs +31 -32
  181. package/esm2022/templates/messages/messages.template.mjs +66 -35
  182. package/esm2022/templates/selection/selection.template.mjs +56 -65
  183. package/esm2022/templates/settings/index.mjs +2 -0
  184. package/esm2022/templates/settings/ng-atomic-components-templates-settings.mjs +5 -0
  185. package/esm2022/templates/settings/settings.template.mjs +118 -0
  186. package/esm2022/templates/tab-editor/tab-editor.template.mjs +6 -6
  187. package/esm2022/templates/templates.module.mjs +29 -7
  188. package/esm2022/templates/term/term.template.mjs +41 -30
  189. package/extras/editor/editor.component.d.ts +20 -9
  190. package/fesm2022/ng-atomic-components-atoms-badge.mjs +23 -0
  191. package/fesm2022/ng-atomic-components-atoms-badge.mjs.map +1 -0
  192. package/fesm2022/ng-atomic-components-atoms-chips-input.mjs +5 -5
  193. package/fesm2022/ng-atomic-components-atoms-chips-input.mjs.map +1 -1
  194. package/fesm2022/ng-atomic-components-atoms-icon.mjs +28 -37
  195. package/fesm2022/ng-atomic-components-atoms-icon.mjs.map +1 -1
  196. package/fesm2022/ng-atomic-components-atoms-smart-menu-button.mjs +124 -58
  197. package/fesm2022/ng-atomic-components-atoms-smart-menu-button.mjs.map +1 -1
  198. package/fesm2022/ng-atomic-components-atoms.mjs +9 -5
  199. package/fesm2022/ng-atomic-components-atoms.mjs.map +1 -1
  200. package/fesm2022/ng-atomic-components-extras-editor.mjs +68 -35
  201. package/fesm2022/ng-atomic-components-extras-editor.mjs.map +1 -1
  202. package/fesm2022/ng-atomic-components-extras.mjs +4 -4
  203. package/fesm2022/ng-atomic-components-extras.mjs.map +1 -1
  204. package/fesm2022/ng-atomic-components-frames-app.mjs +182 -0
  205. package/fesm2022/ng-atomic-components-frames-app.mjs.map +1 -0
  206. package/fesm2022/ng-atomic-components-frames-auto-layout.mjs +4 -4
  207. package/fesm2022/ng-atomic-components-frames-auto-layout.mjs.map +1 -1
  208. package/fesm2022/ng-atomic-components-frames-card.mjs +4 -4
  209. package/fesm2022/ng-atomic-components-frames-card.mjs.map +1 -1
  210. package/fesm2022/ng-atomic-components-frames-columns.mjs +169 -0
  211. package/fesm2022/ng-atomic-components-frames-columns.mjs.map +1 -0
  212. package/fesm2022/ng-atomic-components-frames-divider.mjs +22 -19
  213. package/fesm2022/ng-atomic-components-frames-divider.mjs.map +1 -1
  214. package/fesm2022/ng-atomic-components-frames-drawer.mjs +44 -39
  215. package/fesm2022/ng-atomic-components-frames-drawer.mjs.map +1 -1
  216. package/fesm2022/ng-atomic-components-frames-entrance.mjs +74 -0
  217. package/fesm2022/ng-atomic-components-frames-entrance.mjs.map +1 -0
  218. package/fesm2022/ng-atomic-components-frames-fab.mjs +48 -26
  219. package/fesm2022/ng-atomic-components-frames-fab.mjs.map +1 -1
  220. package/fesm2022/ng-atomic-components-frames-line-up.mjs +133 -91
  221. package/fesm2022/ng-atomic-components-frames-line-up.mjs.map +1 -1
  222. package/fesm2022/ng-atomic-components-frames-loading.mjs +37 -20
  223. package/fesm2022/ng-atomic-components-frames-loading.mjs.map +1 -1
  224. package/fesm2022/ng-atomic-components-frames-overlay.mjs +38 -23
  225. package/fesm2022/ng-atomic-components-frames-overlay.mjs.map +1 -1
  226. package/fesm2022/ng-atomic-components-frames-router-outlet.mjs +100 -62
  227. package/fesm2022/ng-atomic-components-frames-router-outlet.mjs.map +1 -1
  228. package/fesm2022/ng-atomic-components-frames-scroll-v2.mjs +23 -11
  229. package/fesm2022/ng-atomic-components-frames-scroll-v2.mjs.map +1 -1
  230. package/fesm2022/ng-atomic-components-frames-scroll.mjs +5 -5
  231. package/fesm2022/ng-atomic-components-frames-scroll.mjs.map +1 -1
  232. package/fesm2022/ng-atomic-components-frames-side-nav.mjs +138 -85
  233. package/fesm2022/ng-atomic-components-frames-side-nav.mjs.map +1 -1
  234. package/fesm2022/ng-atomic-components-frames-smart-menu.mjs +4 -4
  235. package/fesm2022/ng-atomic-components-frames-smart-menu.mjs.map +1 -1
  236. package/fesm2022/ng-atomic-components-frames-tabs.mjs +48 -0
  237. package/fesm2022/ng-atomic-components-frames-tabs.mjs.map +1 -0
  238. package/fesm2022/ng-atomic-components-frames-toggle.mjs +55 -0
  239. package/fesm2022/ng-atomic-components-frames-toggle.mjs.map +1 -0
  240. package/fesm2022/ng-atomic-components-frames-vertical-hide.mjs +5 -5
  241. package/fesm2022/ng-atomic-components-frames-vertical-hide.mjs.map +1 -1
  242. package/fesm2022/ng-atomic-components-frames.mjs +25 -5
  243. package/fesm2022/ng-atomic-components-frames.mjs.map +1 -1
  244. package/fesm2022/ng-atomic-components-molecules-action-input-field.mjs +4 -4
  245. package/fesm2022/ng-atomic-components-molecules-action-input-field.mjs.map +1 -1
  246. package/fesm2022/ng-atomic-components-molecules-actions-column.mjs +54 -64
  247. package/fesm2022/ng-atomic-components-molecules-actions-column.mjs.map +1 -1
  248. package/fesm2022/ng-atomic-components-molecules-checkbox-column.mjs +45 -60
  249. package/fesm2022/ng-atomic-components-molecules-checkbox-column.mjs.map +1 -1
  250. package/fesm2022/ng-atomic-components-molecules-chips-input-field.mjs +95 -80
  251. package/fesm2022/ng-atomic-components-molecules-chips-input-field.mjs.map +1 -1
  252. package/fesm2022/ng-atomic-components-molecules-date-input-field.mjs +57 -47
  253. package/fesm2022/ng-atomic-components-molecules-date-input-field.mjs.map +1 -1
  254. package/fesm2022/ng-atomic-components-molecules-date-range-input-field.mjs +82 -0
  255. package/fesm2022/ng-atomic-components-molecules-date-range-input-field.mjs.map +1 -0
  256. package/fesm2022/ng-atomic-components-molecules-file-input-field.mjs +99 -80
  257. package/fesm2022/ng-atomic-components-molecules-file-input-field.mjs.map +1 -1
  258. package/fesm2022/ng-atomic-components-molecules-grid-item.mjs +75 -0
  259. package/fesm2022/ng-atomic-components-molecules-grid-item.mjs.map +1 -0
  260. package/fesm2022/ng-atomic-components-molecules-header.mjs +39 -16
  261. package/fesm2022/ng-atomic-components-molecules-header.mjs.map +1 -1
  262. package/fesm2022/ng-atomic-components-molecules-loading-box.mjs +62 -0
  263. package/fesm2022/ng-atomic-components-molecules-loading-box.mjs.map +1 -0
  264. package/fesm2022/ng-atomic-components-molecules-navigation-list-item.mjs +43 -31
  265. package/fesm2022/ng-atomic-components-molecules-navigation-list-item.mjs.map +1 -1
  266. package/fesm2022/ng-atomic-components-molecules-nested-menu.mjs +4 -4
  267. package/fesm2022/ng-atomic-components-molecules-nested-menu.mjs.map +1 -1
  268. package/fesm2022/ng-atomic-components-molecules-select-input-field.mjs +55 -36
  269. package/fesm2022/ng-atomic-components-molecules-select-input-field.mjs.map +1 -1
  270. package/fesm2022/ng-atomic-components-molecules-smart-column.mjs +134 -24
  271. package/fesm2022/ng-atomic-components-molecules-smart-column.mjs.map +1 -1
  272. package/fesm2022/ng-atomic-components-molecules-text-input-field.mjs +75 -66
  273. package/fesm2022/ng-atomic-components-molecules-text-input-field.mjs.map +1 -1
  274. package/fesm2022/ng-atomic-components-molecules-textarea-field.mjs +59 -45
  275. package/fesm2022/ng-atomic-components-molecules-textarea-field.mjs.map +1 -1
  276. package/fesm2022/ng-atomic-components-molecules-tree-column.mjs +52 -35
  277. package/fesm2022/ng-atomic-components-molecules-tree-column.mjs.map +1 -1
  278. package/fesm2022/ng-atomic-components-molecules.mjs +23 -5
  279. package/fesm2022/ng-atomic-components-molecules.mjs.map +1 -1
  280. package/fesm2022/ng-atomic-components-organisms-action-buttons-section.mjs +128 -19
  281. package/fesm2022/ng-atomic-components-organisms-action-buttons-section.mjs.map +1 -1
  282. package/fesm2022/ng-atomic-components-organisms-action-input-section.mjs +45 -31
  283. package/fesm2022/ng-atomic-components-organisms-action-input-section.mjs.map +1 -1
  284. package/fesm2022/ng-atomic-components-organisms-agreement-input-section.mjs +73 -0
  285. package/fesm2022/ng-atomic-components-organisms-agreement-input-section.mjs.map +1 -0
  286. package/fesm2022/ng-atomic-components-organisms-card-input-section.mjs +4 -4
  287. package/fesm2022/ng-atomic-components-organisms-card-input-section.mjs.map +1 -1
  288. package/fesm2022/ng-atomic-components-organisms-chips-input-section.mjs +59 -0
  289. package/fesm2022/ng-atomic-components-organisms-chips-input-section.mjs.map +1 -0
  290. package/fesm2022/ng-atomic-components-organisms-cvc-and-exp-input-section.mjs +4 -4
  291. package/fesm2022/ng-atomic-components-organisms-cvc-and-exp-input-section.mjs.map +1 -1
  292. package/fesm2022/ng-atomic-components-organisms-date-input-section.mjs +61 -28
  293. package/fesm2022/ng-atomic-components-organisms-date-input-section.mjs.map +1 -1
  294. package/fesm2022/ng-atomic-components-organisms-date-range-input-section.mjs +78 -0
  295. package/fesm2022/ng-atomic-components-organisms-date-range-input-section.mjs.map +1 -0
  296. package/fesm2022/ng-atomic-components-organisms-definition-list.mjs +64 -0
  297. package/fesm2022/ng-atomic-components-organisms-definition-list.mjs.map +1 -0
  298. package/fesm2022/ng-atomic-components-organisms-file-input-section.mjs +50 -36
  299. package/fesm2022/ng-atomic-components-organisms-file-input-section.mjs.map +1 -1
  300. package/fesm2022/ng-atomic-components-organisms-filters-section.mjs +7 -5
  301. package/fesm2022/ng-atomic-components-organisms-filters-section.mjs.map +1 -1
  302. package/fesm2022/ng-atomic-components-organisms-graphql-editor.mjs +3 -3
  303. package/fesm2022/ng-atomic-components-organisms-graphql-editor.mjs.map +1 -1
  304. package/fesm2022/ng-atomic-components-organisms-grid-cards-section.mjs +47 -0
  305. package/fesm2022/ng-atomic-components-organisms-grid-cards-section.mjs.map +1 -0
  306. package/fesm2022/ng-atomic-components-organisms-grid-toolbar.mjs +86 -81
  307. package/fesm2022/ng-atomic-components-organisms-grid-toolbar.mjs.map +1 -1
  308. package/fesm2022/ng-atomic-components-organisms-heading.mjs +48 -4
  309. package/fesm2022/ng-atomic-components-organisms-heading.mjs.map +1 -1
  310. package/fesm2022/ng-atomic-components-organisms-image-preview-section.mjs +23 -0
  311. package/fesm2022/ng-atomic-components-organisms-image-preview-section.mjs.map +1 -0
  312. package/fesm2022/ng-atomic-components-organisms-markdown-preview-section.mjs +46 -0
  313. package/fesm2022/ng-atomic-components-organisms-markdown-preview-section.mjs.map +1 -0
  314. package/fesm2022/ng-atomic-components-organisms-menu-footer.mjs +30 -19
  315. package/fesm2022/ng-atomic-components-organisms-menu-footer.mjs.map +1 -1
  316. package/fesm2022/ng-atomic-components-organisms-menu-header.mjs +84 -21
  317. package/fesm2022/ng-atomic-components-organisms-menu-header.mjs.map +1 -1
  318. package/fesm2022/ng-atomic-components-organisms-mermaid-section.mjs +4 -4
  319. package/fesm2022/ng-atomic-components-organisms-mermaid-section.mjs.map +1 -1
  320. package/fesm2022/ng-atomic-components-organisms-message-input-section.mjs +3 -3
  321. package/fesm2022/ng-atomic-components-organisms-message-input-section.mjs.map +1 -1
  322. package/fesm2022/ng-atomic-components-organisms-messages-section.mjs +55 -5
  323. package/fesm2022/ng-atomic-components-organisms-messages-section.mjs.map +1 -1
  324. package/fesm2022/ng-atomic-components-organisms-navigation-list.mjs +30 -35
  325. package/fesm2022/ng-atomic-components-organisms-navigation-list.mjs.map +1 -1
  326. package/fesm2022/ng-atomic-components-organisms-navigator.mjs +83 -41
  327. package/fesm2022/ng-atomic-components-organisms-navigator.mjs.map +1 -1
  328. package/fesm2022/ng-atomic-components-organisms-number-input-section.mjs +88 -0
  329. package/fesm2022/ng-atomic-components-organisms-number-input-section.mjs.map +1 -0
  330. package/fesm2022/ng-atomic-components-organisms-paginator.mjs +49 -34
  331. package/fesm2022/ng-atomic-components-organisms-paginator.mjs.map +1 -1
  332. package/fesm2022/ng-atomic-components-organisms-password-input-section.mjs +86 -0
  333. package/fesm2022/ng-atomic-components-organisms-password-input-section.mjs.map +1 -0
  334. package/fesm2022/ng-atomic-components-organisms-select-input-section.mjs +68 -19
  335. package/fesm2022/ng-atomic-components-organisms-select-input-section.mjs.map +1 -1
  336. package/fesm2022/ng-atomic-components-organisms-selection-list.mjs +4 -4
  337. package/fesm2022/ng-atomic-components-organisms-selection-list.mjs.map +1 -1
  338. package/fesm2022/ng-atomic-components-organisms-smart-list.mjs +147 -103
  339. package/fesm2022/ng-atomic-components-organisms-smart-list.mjs.map +1 -1
  340. package/fesm2022/ng-atomic-components-organisms-social-login-section.mjs +4 -4
  341. package/fesm2022/ng-atomic-components-organisms-social-login-section.mjs.map +1 -1
  342. package/fesm2022/ng-atomic-components-organisms-stripe-input-section.mjs +229 -0
  343. package/fesm2022/ng-atomic-components-organisms-stripe-input-section.mjs.map +1 -0
  344. package/fesm2022/ng-atomic-components-organisms-table.mjs +425 -0
  345. package/fesm2022/ng-atomic-components-organisms-table.mjs.map +1 -0
  346. package/fesm2022/ng-atomic-components-organisms-terminal.mjs +3 -3
  347. package/fesm2022/ng-atomic-components-organisms-terminal.mjs.map +1 -1
  348. package/fesm2022/ng-atomic-components-organisms-text-input-section.mjs +71 -44
  349. package/fesm2022/ng-atomic-components-organisms-text-input-section.mjs.map +1 -1
  350. package/fesm2022/ng-atomic-components-organisms-text-preview-section.mjs +85 -0
  351. package/fesm2022/ng-atomic-components-organisms-text-preview-section.mjs.map +1 -0
  352. package/fesm2022/ng-atomic-components-organisms-textarea-section.mjs +72 -38
  353. package/fesm2022/ng-atomic-components-organisms-textarea-section.mjs.map +1 -1
  354. package/fesm2022/ng-atomic-components-organisms-thread-messages-section.mjs +126 -0
  355. package/fesm2022/ng-atomic-components-organisms-thread-messages-section.mjs.map +1 -0
  356. package/fesm2022/ng-atomic-components-organisms-time-range-input-section.mjs +50 -0
  357. package/fesm2022/ng-atomic-components-organisms-time-range-input-section.mjs.map +1 -0
  358. package/fesm2022/ng-atomic-components-organisms-toolbar.mjs +5 -5
  359. package/fesm2022/ng-atomic-components-organisms-toolbar.mjs.map +1 -1
  360. package/fesm2022/ng-atomic-components-organisms-tree-section.mjs +4 -4
  361. package/fesm2022/ng-atomic-components-organisms-tree-section.mjs.map +1 -1
  362. package/fesm2022/ng-atomic-components-organisms-vertical-divider.mjs +3 -3
  363. package/fesm2022/ng-atomic-components-organisms-vertical-divider.mjs.map +1 -1
  364. package/fesm2022/ng-atomic-components-organisms-video-section.mjs +139 -0
  365. package/fesm2022/ng-atomic-components-organisms-video-section.mjs.map +1 -0
  366. package/fesm2022/ng-atomic-components-organisms.mjs +81 -8
  367. package/fesm2022/ng-atomic-components-organisms.mjs.map +1 -1
  368. package/fesm2022/ng-atomic-components-pages-_index.mjs +153 -34
  369. package/fesm2022/ng-atomic-components-pages-_index.mjs.map +1 -1
  370. package/fesm2022/ng-atomic-components-pages-blank.mjs +14 -5
  371. package/fesm2022/ng-atomic-components-pages-blank.mjs.map +1 -1
  372. package/fesm2022/ng-atomic-components-pages-form.mjs +180 -0
  373. package/fesm2022/ng-atomic-components-pages-form.mjs.map +1 -0
  374. package/fesm2022/ng-atomic-components-pages.mjs +94 -6
  375. package/fesm2022/ng-atomic-components-pages.mjs.map +1 -1
  376. package/fesm2022/ng-atomic-components-sheets-actions.mjs +3 -3
  377. package/fesm2022/ng-atomic-components-sheets-actions.mjs.map +1 -1
  378. package/fesm2022/ng-atomic-components-sheets.mjs +8 -8
  379. package/fesm2022/ng-atomic-components-sheets.mjs.map +1 -1
  380. package/fesm2022/ng-atomic-components-templates-_index.mjs +386 -0
  381. package/fesm2022/ng-atomic-components-templates-_index.mjs.map +1 -0
  382. package/fesm2022/ng-atomic-components-templates-background.mjs +36 -0
  383. package/fesm2022/ng-atomic-components-templates-background.mjs.map +1 -0
  384. package/fesm2022/ng-atomic-components-templates-code-editor.mjs +37 -73
  385. package/fesm2022/ng-atomic-components-templates-code-editor.mjs.map +1 -1
  386. package/fesm2022/ng-atomic-components-templates-entrance.mjs +98 -72
  387. package/fesm2022/ng-atomic-components-templates-entrance.mjs.map +1 -1
  388. package/fesm2022/ng-atomic-components-templates-file-tree.mjs +5 -5
  389. package/fesm2022/ng-atomic-components-templates-file-tree.mjs.map +1 -1
  390. package/fesm2022/ng-atomic-components-templates-form.mjs +472 -0
  391. package/fesm2022/ng-atomic-components-templates-form.mjs.map +1 -0
  392. package/fesm2022/ng-atomic-components-templates-icon-button-menu.mjs +30 -38
  393. package/fesm2022/ng-atomic-components-templates-icon-button-menu.mjs.map +1 -1
  394. package/fesm2022/ng-atomic-components-templates-loading.mjs +3 -3
  395. package/fesm2022/ng-atomic-components-templates-loading.mjs.map +1 -1
  396. package/fesm2022/ng-atomic-components-templates-menu.mjs +29 -32
  397. package/fesm2022/ng-atomic-components-templates-menu.mjs.map +1 -1
  398. package/fesm2022/ng-atomic-components-templates-messages.mjs +65 -34
  399. package/fesm2022/ng-atomic-components-templates-messages.mjs.map +1 -1
  400. package/fesm2022/ng-atomic-components-templates-selection.mjs +56 -66
  401. package/fesm2022/ng-atomic-components-templates-selection.mjs.map +1 -1
  402. package/fesm2022/ng-atomic-components-templates-settings.mjs +125 -0
  403. package/fesm2022/ng-atomic-components-templates-settings.mjs.map +1 -0
  404. package/fesm2022/ng-atomic-components-templates-tab-editor.mjs +5 -5
  405. package/fesm2022/ng-atomic-components-templates-tab-editor.mjs.map +1 -1
  406. package/fesm2022/ng-atomic-components-templates-term.mjs +40 -29
  407. package/fesm2022/ng-atomic-components-templates-term.mjs.map +1 -1
  408. package/fesm2022/ng-atomic-components-templates.mjs +28 -6
  409. package/fesm2022/ng-atomic-components-templates.mjs.map +1 -1
  410. package/fesm2022/ng-atomic-components.mjs +16 -5
  411. package/fesm2022/ng-atomic-components.mjs.map +1 -1
  412. package/frames/app/app.frame.d.ts +107 -0
  413. package/frames/app/index.d.ts +1 -0
  414. package/frames/columns/columns.frame.d.ts +54 -0
  415. package/frames/columns/index.d.ts +1 -0
  416. package/frames/divider/divider.frame.d.ts +6 -6
  417. package/frames/drawer/drawer.frame.d.ts +12 -9
  418. package/frames/entrance/entrance.frame.d.ts +19 -0
  419. package/frames/entrance/index.d.ts +1 -0
  420. package/frames/fab/fab.frame.d.ts +22 -2
  421. package/frames/frames.module.d.ts +20 -1
  422. package/frames/line-up/index.d.ts +1 -0
  423. package/frames/line-up/line-up.frame.d.ts +15 -26
  424. package/frames/line-up/line-up.service.d.ts +22 -0
  425. package/frames/loading/loading.frame.d.ts +9 -3
  426. package/frames/overlay/overlay.frame.d.ts +7 -2
  427. package/frames/router-outlet/router-outlet.frame.d.ts +30 -9
  428. package/frames/scroll-v2/scroll.frame.d.ts +5 -1
  429. package/frames/side-nav/side-nav.frame.d.ts +33 -12
  430. package/frames/tabs/index.d.ts +1 -0
  431. package/frames/tabs/tabs.frame.d.ts +9 -0
  432. package/frames/toggle/index.d.ts +1 -0
  433. package/frames/toggle/toggle.frame.d.ts +9 -0
  434. package/molecules/actions-column/actions-column.molecule.d.ts +17 -17
  435. package/molecules/checkbox-column/checkbox-column.molecule.d.ts +17 -15
  436. package/molecules/chips-input-field/chips-input-field.molecule.d.ts +54 -12
  437. package/molecules/date-input-field/date-input-field.molecule.d.ts +13 -7
  438. package/molecules/date-range-input-field/date-range-input-field.molecule.d.ts +14 -0
  439. package/molecules/date-range-input-field/index.d.ts +1 -0
  440. package/molecules/file-input-field/file-input-field.molecule.d.ts +23 -15
  441. package/molecules/grid-item/grid-item.molecule.d.ts +13 -0
  442. package/molecules/grid-item/index.d.ts +1 -0
  443. package/molecules/header/header.molecule.d.ts +10 -4
  444. package/molecules/loading-box/index.d.ts +1 -0
  445. package/molecules/loading-box/loading-box.molecule.d.ts +23 -0
  446. package/molecules/molecules.module.d.ts +16 -3
  447. package/molecules/navigation-list-item/navigation-list-item.molecule.d.ts +5 -7
  448. package/molecules/select-input-field/select-input-field.molecule.d.ts +13 -6
  449. package/molecules/smart-column/smart-column.molecule.d.ts +21 -6
  450. package/molecules/text-input-field/text-input-field.molecule.d.ts +14 -13
  451. package/molecules/textarea-field/textarea-field.molecule.d.ts +16 -10
  452. package/molecules/tree-column/tree-column.molecule.d.ts +8 -3
  453. package/organisms/action-buttons-section/action-buttons-section.organism.d.ts +10 -7
  454. package/organisms/action-input-section/action-input-section.organism.d.ts +12 -6
  455. package/organisms/agreement-input-section/agreement-input-section.organism.d.ts +17 -0
  456. package/organisms/agreement-input-section/index.d.ts +1 -0
  457. package/organisms/chips-input-section/chips-input-section.organism.d.ts +13 -0
  458. package/organisms/chips-input-section/index.d.ts +1 -0
  459. package/organisms/date-input-section/date-input-section.organism.d.ts +13 -5
  460. package/organisms/date-range-input-section/date-range-input-section.organism.d.ts +21 -0
  461. package/organisms/date-range-input-section/index.d.ts +1 -0
  462. package/organisms/definition-list/definition-list.organism.d.ts +12 -0
  463. package/organisms/definition-list/index.d.ts +1 -0
  464. package/organisms/file-input-section/file-input-section.organism.d.ts +13 -7
  465. package/organisms/filters-section/filters-section.organism.d.ts +2 -1
  466. package/organisms/grid-cards-section/grid-cards-section.organism.d.ts +15 -0
  467. package/organisms/grid-cards-section/index.d.ts +1 -0
  468. package/organisms/grid-toolbar/grid-toolbar.organism.d.ts +10 -7
  469. package/organisms/image-preview-section/image-preview-section.organism.d.ts +7 -0
  470. package/organisms/image-preview-section/index.d.ts +1 -0
  471. package/organisms/markdown-preview-section/index.d.ts +1 -0
  472. package/organisms/markdown-preview-section/markdown-preview-section.organism.d.ts +11 -0
  473. package/organisms/menu-footer/menu-footer.organism.d.ts +7 -1
  474. package/organisms/menu-header/menu-header.organism.d.ts +9 -4
  475. package/organisms/messages-section/messages-section.organism.d.ts +3 -1
  476. package/organisms/navigation-list/navigation-list.organism.d.ts +2 -3
  477. package/organisms/navigator/navigator.organism.d.ts +27 -4
  478. package/organisms/number-input-section/index.d.ts +1 -0
  479. package/organisms/number-input-section/number-input-section.organism.d.ts +19 -0
  480. package/organisms/organisms.module.d.ts +52 -3
  481. package/organisms/paginator/paginator.organism.d.ts +17 -7
  482. package/organisms/password-input-section/index.d.ts +1 -0
  483. package/organisms/password-input-section/password-input-section.organism.d.ts +19 -0
  484. package/organisms/select-input-section/select-input-section.organism.d.ts +16 -6
  485. package/organisms/smart-list/smart-list.organism.d.ts +35 -11
  486. package/organisms/stripe-input-section/index.d.ts +1 -0
  487. package/organisms/stripe-input-section/stripe-input-section.organism.d.ts +188 -0
  488. package/organisms/table/index.d.ts +2 -0
  489. package/organisms/table/index.helpers.d.ts +71 -0
  490. package/organisms/table/table.organism.d.ts +106 -0
  491. package/organisms/text-input-section/text-input-section.organism.d.ts +15 -8
  492. package/organisms/text-preview-section/index.d.ts +1 -0
  493. package/organisms/text-preview-section/text-preview-section.organism.d.ts +15 -0
  494. package/organisms/textarea-section/textarea-section.organism.d.ts +16 -10
  495. package/organisms/thread-messages-section/index.d.ts +1 -0
  496. package/organisms/thread-messages-section/thread-messages-section.organism.d.ts +14 -0
  497. package/organisms/time-range-input-section/index.d.ts +1 -0
  498. package/organisms/time-range-input-section/time-range-input-section.organism.d.ts +9 -0
  499. package/organisms/video-section/index.d.ts +1 -0
  500. package/organisms/video-section/video-section.organism.d.ts +41 -0
  501. package/package.json +176 -20
  502. package/pages/_index/index.d.ts +0 -1
  503. package/pages/_index/index.page.d.ts +46 -2
  504. package/pages/blank/index.d.ts +1 -0
  505. package/pages/form/form.page.d.ts +112 -0
  506. package/pages/form/index.d.ts +1 -0
  507. package/pages/pages.module.d.ts +1 -1
  508. package/pages/terms/index.d.ts +1 -0
  509. package/pages/terms/terms.page.d.ts +60 -0
  510. package/templates/_index/index.d.ts +1 -0
  511. package/templates/_index/index.template.d.ts +219 -0
  512. package/templates/background/background.template.d.ts +11 -0
  513. package/templates/background/index.d.ts +1 -0
  514. package/templates/code-editor/code-editor.template.d.ts +11 -14
  515. package/templates/entrance/entrance.template.d.ts +18 -11
  516. package/templates/form/form.template.d.ts +78 -0
  517. package/templates/form/index.d.ts +1 -0
  518. package/templates/icon-button-menu/icon-button-menu.template.d.ts +2 -4
  519. package/templates/menu/menu.template.d.ts +4 -5
  520. package/templates/messages/messages.template.d.ts +10 -2
  521. package/templates/selection/selection.template.d.ts +14 -9
  522. package/templates/settings/index.d.ts +1 -0
  523. package/templates/settings/settings.template.d.ts +16 -0
  524. package/templates/templates.module.d.ts +13 -1
  525. package/templates/term/term.template.d.ts +10 -9
  526. package/esm2022/organisms/smart-table/ng-atomic-components-organisms-smart-table.mjs +0 -5
  527. package/esm2022/organisms/smart-table/smart-table.organism.mjs +0 -210
  528. package/esm2022/pages/_index/index.module.mjs +0 -31
  529. package/esm2022/templates/smart-crud/smart-crud.template.mjs +0 -256
  530. package/esm2022/templates/smart-index/index.mjs +0 -2
  531. package/esm2022/templates/smart-index/smart-index.template.mjs +0 -358
  532. package/fesm2022/ng-atomic-components-organisms-smart-table.mjs +0 -217
  533. package/fesm2022/ng-atomic-components-organisms-smart-table.mjs.map +0 -1
  534. package/fesm2022/ng-atomic-components-pages-blank-blank.routes-09f8841a.mjs +0 -7
  535. package/fesm2022/ng-atomic-components-pages-blank-blank.routes-09f8841a.mjs.map +0 -1
  536. package/fesm2022/ng-atomic-components-templates-smart-crud.mjs +0 -262
  537. package/fesm2022/ng-atomic-components-templates-smart-crud.mjs.map +0 -1
  538. package/fesm2022/ng-atomic-components-templates-smart-index.mjs +0 -365
  539. package/fesm2022/ng-atomic-components-templates-smart-index.mjs.map +0 -1
  540. package/organisms/smart-table/index.d.ts +0 -1
  541. package/organisms/smart-table/smart-table.organism.d.ts +0 -44
  542. package/pages/_index/index.module.d.ts +0 -9
  543. package/templates/smart-crud/index.d.ts +0 -1
  544. package/templates/smart-crud/smart-crud.template.d.ts +0 -28
  545. package/templates/smart-index/index.d.ts +0 -1
  546. package/templates/smart-index/smart-index.template.d.ts +0 -101
@@ -1,84 +1,150 @@
1
- import * as i1 from '@angular/common';
2
- import { CommonModule } from '@angular/common';
1
+ import { __decorate } from 'tslib';
3
2
  import * as i0 from '@angular/core';
4
- import { EventEmitter, Component, ChangeDetectionStrategy, Input, Output } from '@angular/core';
5
- import * as i2 from '@angular/material/button';
3
+ import { Pipe, input, computed, Directive, inject, Component, ChangeDetectionStrategy } from '@angular/core';
4
+ import * as i1 from '@angular/material/button';
6
5
  import { MatButtonModule } from '@angular/material/button';
7
- import * as i3 from '@angular/material/icon';
6
+ import * as i2 from '@angular/material/icon';
8
7
  import { MatIconModule } from '@angular/material/icon';
9
- import * as i4 from '@angular/material/menu';
8
+ import * as i3 from '@angular/material/menu';
10
9
  import { MatMenuModule } from '@angular/material/menu';
10
+ import { InjectableComponent, TokenizedType, NgAtomicComponent } from '@ng-atomic/core';
11
11
 
12
- class SmartMenuButtonAtom {
12
+ class StopPipe {
13
+ transform($event) {
14
+ $event.stopPropagation();
15
+ $event.preventDefault();
16
+ return $event;
17
+ }
18
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.2.2", ngImport: i0, type: StopPipe, deps: [], target: i0.ɵɵFactoryTarget.Pipe }); }
19
+ static { this.ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "14.0.0", version: "17.2.2", ngImport: i0, type: StopPipe, isStandalone: true, name: "stope" }); }
20
+ }
21
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.2.2", ngImport: i0, type: StopPipe, decorators: [{
22
+ type: Pipe,
23
+ args: [{ standalone: true, name: 'stope' }]
24
+ }] });
25
+ let SmartMenuButtonAtomStore = class SmartMenuButtonAtomStore extends InjectableComponent {
13
26
  constructor() {
14
- this.actions = [];
15
- this.action = new EventEmitter();
16
- this.trackByItemId = (index, item) => item.id;
27
+ super(...arguments);
28
+ this.actions = input([]);
29
+ this.type = input('icon-button');
30
+ this.action = computed(() => this.actions()?.[0]);
31
+ }
32
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.2.2", ngImport: i0, type: SmartMenuButtonAtomStore, deps: null, target: i0.ɵɵFactoryTarget.Directive }); }
33
+ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "17.1.0", version: "17.2.2", type: SmartMenuButtonAtomStore, isStandalone: true, selector: "atoms-smart-menu-button", inputs: { actions: { classPropertyName: "actions", publicName: "actions", isSignal: true, isRequired: false, transformFunction: null }, type: { classPropertyName: "type", publicName: "type", isSignal: true, isRequired: false, transformFunction: null } }, usesInheritance: true, ngImport: i0 }); }
34
+ };
35
+ SmartMenuButtonAtomStore = __decorate([
36
+ TokenizedType()
37
+ ], SmartMenuButtonAtomStore);
38
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.2.2", ngImport: i0, type: SmartMenuButtonAtomStore, decorators: [{
39
+ type: Directive,
40
+ args: [{ standalone: true, selector: 'atoms-smart-menu-button' }]
41
+ }] });
42
+ class SmartMenuButtonAtom extends NgAtomicComponent {
43
+ constructor() {
44
+ super(...arguments);
45
+ this.store = inject(SmartMenuButtonAtomStore);
46
+ }
47
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.2.2", ngImport: i0, type: SmartMenuButtonAtom, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
48
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "17.2.2", type: SmartMenuButtonAtom, isStandalone: true, selector: "atoms-smart-menu-button", usesInheritance: true, hostDirectives: [{ directive: SmartMenuButtonAtomStore, inputs: ["actions", "actions", "type", "type"] }], ngImport: i0, template: `
49
+ @switch(store.actions()?.length ?? 0) {
50
+ @case(0) { }
51
+ @case(1) {
52
+ @switch (store.type()) {
53
+ @case('button') {
54
+ <button mat-button (click)="dispatch(store.action()); $event.stopPropagation()" [disabled]="store.action().disabled">
55
+ {{ store.action()?.name }}
56
+ </button>
57
+ }
58
+ @case('icon-button') {
59
+ <button mat-icon-button (click)="dispatch(store.action()); $event.stopPropagation();" [disabled]="store.action().disabled">
60
+ <mat-icon>{{ store.action()?.icon }}</mat-icon>
61
+ </button>
62
+ }
63
+ }
17
64
  }
18
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: SmartMenuButtonAtom, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
19
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: SmartMenuButtonAtom, isStandalone: true, selector: "atoms-smart-menu-button", inputs: { actions: "actions" }, outputs: { action: "action" }, ngImport: i0, template: `
20
- <ng-container [ngSwitch]="actions?.length ?? 0">
21
- <ng-container *ngSwitchCase="0"></ng-container>
22
- <ng-container *ngSwitchCase="1">
23
- <button mat-icon-button (click)="action.emit(actions[0])" [disabled]="actions[0].disabled">
24
- <mat-icon>{{ actions[0]?.icon }}</mat-icon>
25
- </button>
26
- </ng-container>
27
- <ng-container *ngSwitchDefault>
28
- <button mat-icon-button [matMenuTriggerFor]="menu" [disabled]="action.disabled" *ngIf="actions.length">
29
- <mat-icon>more_vert</mat-icon>
30
- </button>
31
- </ng-container>
32
- </ng-container>
65
+ @default {
66
+ @if (store.actions().length) {
67
+ @switch (store.type()) {
68
+ @case('button') {
69
+ <button mat-button [matMenuTriggerFor]="menu">
70
+ {{ store.actions().length }} actions
71
+ </button>
72
+ }
73
+ @case('icon-button') {
74
+ <button mat-icon-button [matMenuTriggerFor]="menu">
75
+ <mat-icon>more_vert</mat-icon>
76
+ </button>
77
+ }
78
+ }
79
+ }
80
+ }
81
+ }
33
82
 
34
83
  <mat-menu #menu="matMenu">
35
- <button
36
- *ngFor="let _action of actions; trackBy: trackByItemId"
37
- mat-menu-item
38
- (click)="action.emit(_action)"
39
- >{{ _action.name }}</button>
84
+ @for (action of store.actions(); track action.id) {
85
+ <button mat-menu-item (click)="dispatch(action)" [disabled]="action.disabled">{{ action.name }}</button>
86
+ }
40
87
  </mat-menu>
41
- `, isInline: true, styles: [":host{display:block;width:100%;height:100%}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i1.NgSwitch, selector: "[ngSwitch]", inputs: ["ngSwitch"] }, { kind: "directive", type: i1.NgSwitchCase, selector: "[ngSwitchCase]", inputs: ["ngSwitchCase"] }, { kind: "directive", type: i1.NgSwitchDefault, selector: "[ngSwitchDefault]" }, { kind: "ngmodule", type: MatButtonModule }, { kind: "component", type: i2.MatIconButton, selector: "button[mat-icon-button]", inputs: ["disabled", "disableRipple", "color"], exportAs: ["matButton"] }, { kind: "ngmodule", type: MatIconModule }, { kind: "component", type: i3.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "ngmodule", type: MatMenuModule }, { kind: "component", type: i4.MatMenu, selector: "mat-menu", exportAs: ["matMenu"] }, { kind: "component", type: i4.MatMenuItem, selector: "[mat-menu-item]", inputs: ["disabled", "disableRipple", "role"], exportAs: ["matMenuItem"] }, { kind: "directive", type: i4.MatMenuTrigger, selector: "[mat-menu-trigger-for], [matMenuTriggerFor]", exportAs: ["matMenuTrigger"] }], changeDetection: i0.ChangeDetectionStrategy.Default }); }
88
+ `, isInline: true, styles: [":host{display:block;width:48px;height:48px}\n"], dependencies: [{ kind: "ngmodule", type: MatButtonModule }, { kind: "component", type: i1.MatButton, selector: " button[mat-button], button[mat-raised-button], button[mat-flat-button], button[mat-stroked-button] ", exportAs: ["matButton"] }, { kind: "component", type: i1.MatIconButton, selector: "button[mat-icon-button]", exportAs: ["matButton"] }, { kind: "ngmodule", type: MatIconModule }, { kind: "component", type: i2.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "ngmodule", type: MatMenuModule }, { kind: "component", type: i3.MatMenu, selector: "mat-menu", inputs: ["backdropClass", "aria-label", "aria-labelledby", "aria-describedby", "xPosition", "yPosition", "overlapTrigger", "hasBackdrop", "class", "classList"], outputs: ["closed", "close"], exportAs: ["matMenu"] }, { kind: "component", type: i3.MatMenuItem, selector: "[mat-menu-item]", inputs: ["role", "disabled", "disableRipple"], exportAs: ["matMenuItem"] }, { kind: "directive", type: i3.MatMenuTrigger, selector: "[mat-menu-trigger-for], [matMenuTriggerFor]", inputs: ["mat-menu-trigger-for", "matMenuTriggerFor", "matMenuTriggerData", "matMenuTriggerRestoreFocus"], outputs: ["menuOpened", "onMenuOpen", "menuClosed", "onMenuClose"], exportAs: ["matMenuTrigger"] }], changeDetection: i0.ChangeDetectionStrategy.Default }); }
42
89
  }
43
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: SmartMenuButtonAtom, decorators: [{
90
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.2.2", ngImport: i0, type: SmartMenuButtonAtom, decorators: [{
44
91
  type: Component,
45
92
  args: [{ selector: 'atoms-smart-menu-button', standalone: true, imports: [
46
- CommonModule,
47
93
  MatButtonModule,
48
94
  MatIconModule,
49
95
  MatMenuModule,
96
+ StopPipe
50
97
  ], template: `
51
- <ng-container [ngSwitch]="actions?.length ?? 0">
52
- <ng-container *ngSwitchCase="0"></ng-container>
53
- <ng-container *ngSwitchCase="1">
54
- <button mat-icon-button (click)="action.emit(actions[0])" [disabled]="actions[0].disabled">
55
- <mat-icon>{{ actions[0]?.icon }}</mat-icon>
56
- </button>
57
- </ng-container>
58
- <ng-container *ngSwitchDefault>
59
- <button mat-icon-button [matMenuTriggerFor]="menu" [disabled]="action.disabled" *ngIf="actions.length">
60
- <mat-icon>more_vert</mat-icon>
61
- </button>
62
- </ng-container>
63
- </ng-container>
98
+ @switch(store.actions()?.length ?? 0) {
99
+ @case(0) { }
100
+ @case(1) {
101
+ @switch (store.type()) {
102
+ @case('button') {
103
+ <button mat-button (click)="dispatch(store.action()); $event.stopPropagation()" [disabled]="store.action().disabled">
104
+ {{ store.action()?.name }}
105
+ </button>
106
+ }
107
+ @case('icon-button') {
108
+ <button mat-icon-button (click)="dispatch(store.action()); $event.stopPropagation();" [disabled]="store.action().disabled">
109
+ <mat-icon>{{ store.action()?.icon }}</mat-icon>
110
+ </button>
111
+ }
112
+ }
113
+ }
114
+ @default {
115
+ @if (store.actions().length) {
116
+ @switch (store.type()) {
117
+ @case('button') {
118
+ <button mat-button [matMenuTriggerFor]="menu">
119
+ {{ store.actions().length }} actions
120
+ </button>
121
+ }
122
+ @case('icon-button') {
123
+ <button mat-icon-button [matMenuTriggerFor]="menu">
124
+ <mat-icon>more_vert</mat-icon>
125
+ </button>
126
+ }
127
+ }
128
+ }
129
+ }
130
+ }
64
131
 
65
132
  <mat-menu #menu="matMenu">
66
- <button
67
- *ngFor="let _action of actions; trackBy: trackByItemId"
68
- mat-menu-item
69
- (click)="action.emit(_action)"
70
- >{{ _action.name }}</button>
133
+ @for (action of store.actions(); track action.id) {
134
+ <button mat-menu-item (click)="dispatch(action)" [disabled]="action.disabled">{{ action.name }}</button>
135
+ }
71
136
  </mat-menu>
72
- `, changeDetection: ChangeDetectionStrategy.Default, styles: [":host{display:block;width:100%;height:100%}\n"] }]
73
- }], propDecorators: { actions: [{
74
- type: Input
75
- }], action: [{
76
- type: Output
77
- }] } });
137
+ `, changeDetection: ChangeDetectionStrategy.Default, hostDirectives: [
138
+ {
139
+ directive: SmartMenuButtonAtomStore,
140
+ inputs: ['actions', 'type'],
141
+ }
142
+ ], styles: [":host{display:block;width:48px;height:48px}\n"] }]
143
+ }] });
78
144
 
79
145
  /**
80
146
  * Generated bundle index. Do not edit.
81
147
  */
82
148
 
83
- export { SmartMenuButtonAtom };
149
+ export { SmartMenuButtonAtom, SmartMenuButtonAtomStore, StopPipe };
84
150
  //# sourceMappingURL=ng-atomic-components-atoms-smart-menu-button.mjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"ng-atomic-components-atoms-smart-menu-button.mjs","sources":["../../../../../packages/@ng-atomic/components/src/lib/atoms/smart-menu-button/smart-menu-button.atom.ts","../../../../../packages/@ng-atomic/components/src/lib/atoms/smart-menu-button/ng-atomic-components-atoms-smart-menu-button.ts"],"sourcesContent":["import { CommonModule } from '@angular/common';\nimport { ChangeDetectionStrategy, Component, EventEmitter, Input, Output } from '@angular/core';\nimport { MatButtonModule } from '@angular/material/button';\nimport { MatIconModule } from '@angular/material/icon';\nimport { MatMenuModule } from '@angular/material/menu';\nimport { Action, Actions } from '@ng-atomic/core';\n\n@Component({\n selector: 'atoms-smart-menu-button',\n standalone: true,\n imports: [\n CommonModule,\n MatButtonModule,\n MatIconModule,\n MatMenuModule,\n ],\n template: `\n <ng-container [ngSwitch]=\"actions?.length ?? 0\">\n <ng-container *ngSwitchCase=\"0\"></ng-container>\n <ng-container *ngSwitchCase=\"1\">\n <button mat-icon-button (click)=\"action.emit(actions[0])\" [disabled]=\"actions[0].disabled\">\n <mat-icon>{{ actions[0]?.icon }}</mat-icon>\n </button>\n </ng-container>\n <ng-container *ngSwitchDefault>\n <button mat-icon-button [matMenuTriggerFor]=\"menu\" [disabled]=\"action.disabled\" *ngIf=\"actions.length\">\n <mat-icon>more_vert</mat-icon>\n </button>\n </ng-container>\n </ng-container>\n\n <mat-menu #menu=\"matMenu\">\n <button \n *ngFor=\"let _action of actions; trackBy: trackByItemId\"\n mat-menu-item \n (click)=\"action.emit(_action)\"\n >{{ _action.name }}</button>\n </mat-menu>\n `,\n styleUrls: ['./smart-menu-button.atom.scss'],\n changeDetection: ChangeDetectionStrategy.Default,\n})\nexport class SmartMenuButtonAtom {\n @Input()\n actions: Actions = [];\n\n @Output()\n action = new EventEmitter<Action>();\n\n trackByItemId = (index: number, item: Action): string => item.id;\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"ng-atomic-components-atoms-smart-menu-button.mjs","sources":["../../../../../packages/@ng-atomic/components/src/lib/atoms/smart-menu-button/smart-menu-button.atom.ts","../../../../../packages/@ng-atomic/components/src/lib/atoms/smart-menu-button/ng-atomic-components-atoms-smart-menu-button.ts"],"sourcesContent":["import { ChangeDetectionStrategy, Component, Directive, Pipe, computed, inject, input } from '@angular/core';\nimport { MatButtonModule } from '@angular/material/button';\nimport { MatIconModule } from '@angular/material/icon';\nimport { MatMenuModule } from '@angular/material/menu';\nimport { Action, InjectableComponent, NgAtomicComponent, TokenizedType } from '@ng-atomic/core';\n\n@Pipe({ standalone: true, name: 'stope' })\nexport class StopPipe {\n transform($event: Event) {\n $event.stopPropagation();\n $event.preventDefault();\n return $event;\n }\n}\n\n@TokenizedType()\n@Directive({ standalone: true, selector: 'atoms-smart-menu-button' })\nexport class SmartMenuButtonAtomStore extends InjectableComponent {\n readonly actions = input<Action[]>([]);\n readonly type = input<'button' | 'icon-button'>('icon-button');\n readonly action = computed(() => this.actions()?.[0]);\n}\n\n@Component({\n selector: 'atoms-smart-menu-button',\n standalone: true,\n imports: [\n MatButtonModule,\n MatIconModule,\n MatMenuModule,\n StopPipe\n ],\n template: `\n @switch(store.actions()?.length ?? 0) {\n @case(0) { }\n @case(1) {\n @switch (store.type()) {\n @case('button') {\n <button mat-button (click)=\"dispatch(store.action()); $event.stopPropagation()\" [disabled]=\"store.action().disabled\">\n {{ store.action()?.name }}\n </button>\n }\n @case('icon-button') {\n <button mat-icon-button (click)=\"dispatch(store.action()); $event.stopPropagation();\" [disabled]=\"store.action().disabled\">\n <mat-icon>{{ store.action()?.icon }}</mat-icon>\n </button>\n }\n }\n }\n @default {\n @if (store.actions().length) {\n @switch (store.type()) {\n @case('button') {\n <button mat-button [matMenuTriggerFor]=\"menu\">\n {{ store.actions().length }} actions\n </button>\n }\n @case('icon-button') {\n <button mat-icon-button [matMenuTriggerFor]=\"menu\">\n <mat-icon>more_vert</mat-icon>\n </button>\n }\n }\n }\n }\n }\n\n <mat-menu #menu=\"matMenu\">\n @for (action of store.actions(); track action.id) {\n <button mat-menu-item (click)=\"dispatch(action)\" [disabled]=\"action.disabled\">{{ action.name }}</button>\n }\n </mat-menu>\n `,\n styleUrls: ['./smart-menu-button.atom.scss'],\n changeDetection: ChangeDetectionStrategy.Default,\n hostDirectives: [\n {\n directive: SmartMenuButtonAtomStore,\n inputs: ['actions', 'type'],\n }\n ]\n})\nexport class SmartMenuButtonAtom extends NgAtomicComponent {\n protected store = inject(SmartMenuButtonAtomStore);\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}
@@ -1,18 +1,22 @@
1
1
  import * as i0 from '@angular/core';
2
2
  import { NgModule } from '@angular/core';
3
+ import { provideComponent } from '@ng-atomic/core';
4
+ import { SmartMenuButtonAtomStore } from '@ng-atomic/components/atoms/smart-menu-button';
3
5
 
4
6
  class NgAtomicAtomsModule {
5
7
  static forRoot() {
6
8
  return {
7
9
  ngModule: NgAtomicAtomsModule,
8
- providers: []
10
+ providers: [
11
+ provideComponent(SmartMenuButtonAtomStore, () => import('@ng-atomic/components/atoms/smart-menu-button').then(m => m.SmartMenuButtonAtom)),
12
+ ]
9
13
  };
10
14
  }
11
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: NgAtomicAtomsModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
12
- static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "16.2.12", ngImport: i0, type: NgAtomicAtomsModule }); }
13
- static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: NgAtomicAtomsModule }); }
15
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.2.2", ngImport: i0, type: NgAtomicAtomsModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
16
+ static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "17.2.2", ngImport: i0, type: NgAtomicAtomsModule }); }
17
+ static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "17.2.2", ngImport: i0, type: NgAtomicAtomsModule }); }
14
18
  }
15
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: NgAtomicAtomsModule, decorators: [{
19
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.2.2", ngImport: i0, type: NgAtomicAtomsModule, decorators: [{
16
20
  type: NgModule,
17
21
  args: [{}]
18
22
  }] });
@@ -1 +1 @@
1
- {"version":3,"file":"ng-atomic-components-atoms.mjs","sources":["../../../../../packages/@ng-atomic/components/src/lib/atoms/atoms.module.ts","../../../../../packages/@ng-atomic/components/src/lib/atoms/ng-atomic-components-atoms.ts"],"sourcesContent":["import { NgModule } from \"@angular/core\";\n\n@NgModule({})\nexport class NgAtomicAtomsModule {\n static forRoot() {\n return {\n ngModule: NgAtomicAtomsModule,\n providers: [\n\n ]\n }\n }\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":";;;MAGa,mBAAmB,CAAA;AAC9B,IAAA,OAAO,OAAO,GAAA;QACZ,OAAO;AACL,YAAA,QAAQ,EAAE,mBAAmB;AAC7B,YAAA,SAAS,EAAE,EAEV;SACF,CAAA;KACF;+GARU,mBAAmB,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,QAAA,EAAA,CAAA,CAAA,EAAA;gHAAnB,mBAAmB,EAAA,CAAA,CAAA,EAAA;gHAAnB,mBAAmB,EAAA,CAAA,CAAA,EAAA;;4FAAnB,mBAAmB,EAAA,UAAA,EAAA,CAAA;kBAD/B,QAAQ;mBAAC,EAAE,CAAA;;;ACFZ;;AAEG;;;;"}
1
+ {"version":3,"file":"ng-atomic-components-atoms.mjs","sources":["../../../../../packages/@ng-atomic/components/src/lib/atoms/atoms.module.ts","../../../../../packages/@ng-atomic/components/src/lib/atoms/ng-atomic-components-atoms.ts"],"sourcesContent":["import { NgModule } from '@angular/core';\nimport { provideComponent } from '@ng-atomic/core';\nimport { SmartMenuButtonAtomStore } from '@ng-atomic/components/atoms/smart-menu-button';\n\n@NgModule({})\nexport class NgAtomicAtomsModule {\n static forRoot() {\n return {\n ngModule: NgAtomicAtomsModule,\n providers: [\n provideComponent(SmartMenuButtonAtomStore, () => import('@ng-atomic/components/atoms/smart-menu-button').then(m => m.SmartMenuButtonAtom)),\n ]\n }\n }\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":";;;;;MAKa,mBAAmB,CAAA;AAC9B,IAAA,OAAO,OAAO,GAAA;QACZ,OAAO;AACL,YAAA,QAAQ,EAAE,mBAAmB;AAC7B,YAAA,SAAS,EAAE;gBACT,gBAAgB,CAAC,wBAAwB,EAAE,MAAM,OAAO,+CAA+C,CAAC,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,CAAC,mBAAmB,CAAC,CAAC;AAC3I,aAAA;SACF,CAAA;KACF;8GARU,mBAAmB,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,QAAA,EAAA,CAAA,CAAA,EAAA;+GAAnB,mBAAmB,EAAA,CAAA,CAAA,EAAA;+GAAnB,mBAAmB,EAAA,CAAA,CAAA,EAAA;;2FAAnB,mBAAmB,EAAA,UAAA,EAAA,CAAA;kBAD/B,QAAQ;mBAAC,EAAE,CAAA;;;ACJZ;;AAEG;;;;"}
@@ -1,49 +1,82 @@
1
- import { CommonModule } from '@angular/common';
2
1
  import * as i0 from '@angular/core';
3
- import { Component, ChangeDetectionStrategy, Input, ViewChild } from '@angular/core';
4
- import '@codemirror/state';
5
- import { EditorView } from 'codemirror';
6
- import { ReplaySubject } from 'rxjs';
2
+ import { input, EventEmitter, inject, ElementRef, ChangeDetectorRef, effect, Component, ChangeDetectionStrategy, Output } from '@angular/core';
3
+ import { CommonModule } from '@angular/common';
4
+ import { history } from '@codemirror/commands';
5
+ import { closeBrackets, autocompletion } from '@codemirror/autocomplete';
6
+ import { bracketMatching, syntaxHighlighting } from '@codemirror/language';
7
+ import { oneDark, oneDarkHighlightStyle } from '@codemirror/theme-one-dark';
8
+ import { EditorState } from '@codemirror/state';
9
+ import { lineNumbers } from '@codemirror/view';
10
+ import { EditorView, basicSetup } from 'codemirror';
11
+ import { NgAtomicComponent } from '@ng-atomic/core';
12
+ import { distinctUntilChanged } from 'rxjs';
13
+ import { json } from '@codemirror/lang-json';
7
14
 
8
- class EditorComponent {
15
+ class EditorComponent extends NgAtomicComponent {
9
16
  constructor() {
10
- this.state$ = new ReplaySubject(1);
17
+ super();
18
+ this.content = input('');
19
+ this._contentChange$ = new EventEmitter();
20
+ this.contentChange = new EventEmitter();
21
+ this.keyActions = input();
22
+ this.extensions = input([
23
+ json(),
24
+ ]);
25
+ this.el = inject(ElementRef);
26
+ this.cd = inject(ChangeDetectorRef);
27
+ effect(() => {
28
+ const selection = this.editorView.state.selection;
29
+ this.editorView.dispatch(this.editorView.state.update({
30
+ changes: {
31
+ from: 0,
32
+ to: this.editorView.state.doc.length,
33
+ insert: this.content() ?? '',
34
+ },
35
+ selection: selection,
36
+ scrollIntoView: true,
37
+ }));
38
+ });
11
39
  }
12
- set state(value) {
13
- if (!value)
14
- return;
15
- this.state$.next(value);
40
+ ngOnInit() {
41
+ this._contentChange$.pipe(distinctUntilChanged()).subscribe((content) => {
42
+ this.contentChange.emit(content);
43
+ });
16
44
  }
17
- async ngAfterViewInit() {
18
- this.state$.subscribe((state) => {
19
- if (this.editor) {
20
- const transaction = this.editor.state.update({
21
- ...state,
22
- selection: this.editor.state.selection,
23
- });
24
- this.editor.dispatch(transaction);
25
- }
26
- else {
27
- this.editor = new EditorView({
28
- state,
29
- parent: this._editor.nativeElement
30
- });
31
- }
45
+ ngAfterViewInit() {
46
+ this.editorView?.destroy();
47
+ this.editorView = new EditorView({
48
+ state: EditorState.create({
49
+ doc: ``,
50
+ extensions: [
51
+ basicSetup,
52
+ bracketMatching(),
53
+ closeBrackets(),
54
+ history(),
55
+ autocompletion(),
56
+ lineNumbers(),
57
+ oneDark,
58
+ syntaxHighlighting(oneDarkHighlightStyle),
59
+ EditorView.updateListener.of((update) => {
60
+ if (!update.docChanged)
61
+ return;
62
+ this._contentChange$.emit(update.state.doc.toString());
63
+ }),
64
+ ...this.extensions(),
65
+ ],
66
+ }),
67
+ parent: this.el.nativeElement,
32
68
  });
33
69
  }
34
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: EditorComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
35
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: EditorComponent, isStandalone: true, selector: "extras-editor", inputs: { state: "state" }, viewQueries: [{ propertyName: "_editor", first: true, predicate: ["editor"], descendants: true, static: true }], ngImport: i0, template: `<div #editor></div>`, isInline: true, styles: [":host{display:block}:host{width:100%;height:100%}:host div{width:100%;height:100%}:host div ::ng-deep>.cm-editor{width:100%;height:100%}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
70
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.2.2", ngImport: i0, type: EditorComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
71
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "17.2.2", type: EditorComponent, isStandalone: true, selector: "extras-editor", inputs: { content: { classPropertyName: "content", publicName: "content", isSignal: true, isRequired: false, transformFunction: null }, keyActions: { classPropertyName: "keyActions", publicName: "keyActions", isSignal: true, isRequired: false, transformFunction: null }, extensions: { classPropertyName: "extensions", publicName: "extensions", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { contentChange: "contentChange" }, usesInheritance: true, ngImport: i0, template: ``, isInline: true, styles: [":host{display:block}:host{width:100%;height:100%}:host ::ng-deep>.cm-editor{width:100%;height:100%}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
36
72
  }
37
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: EditorComponent, decorators: [{
73
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.2.2", ngImport: i0, type: EditorComponent, decorators: [{
38
74
  type: Component,
39
75
  args: [{ selector: 'extras-editor', standalone: true, imports: [
40
76
  CommonModule
41
- ], template: `<div #editor></div>`, changeDetection: ChangeDetectionStrategy.OnPush, styles: [":host{display:block}:host{width:100%;height:100%}:host div{width:100%;height:100%}:host div ::ng-deep>.cm-editor{width:100%;height:100%}\n"] }]
42
- }], propDecorators: { state: [{
43
- type: Input
44
- }], _editor: [{
45
- type: ViewChild,
46
- args: ['editor', { static: true }]
77
+ ], template: ``, changeDetection: ChangeDetectionStrategy.OnPush, styles: [":host{display:block}:host{width:100%;height:100%}:host ::ng-deep>.cm-editor{width:100%;height:100%}\n"] }]
78
+ }], ctorParameters: () => [], propDecorators: { contentChange: [{
79
+ type: Output
47
80
  }] } });
48
81
 
49
82
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"ng-atomic-components-extras-editor.mjs","sources":["../../../../../packages/@ng-atomic/components/src/lib/extras/editor/editor.component.ts","../../../../../packages/@ng-atomic/components/src/lib/extras/editor/ng-atomic-components-extras-editor.ts"],"sourcesContent":["import { CommonModule } from '@angular/common';\nimport { ChangeDetectionStrategy, Component, ElementRef, Input, ViewChild } from '@angular/core';\nimport { EditorState } from '@codemirror/state';\nimport { EditorView } from 'codemirror';\nimport { ReplaySubject } from 'rxjs';\n\n@Component({\n selector: 'extras-editor',\n standalone: true,\n imports: [\n CommonModule\n ],\n template: `<div #editor></div>`,\n styleUrls: ['./editor.component.scss'],\n changeDetection: ChangeDetectionStrategy.OnPush\n})\nexport class EditorComponent {\n\n private readonly state$ = new ReplaySubject<EditorState>(1);\n\n @Input()\n set state(value: EditorState | null) {\n if (!value) return;\n this.state$.next(value);\n }\n\n @ViewChild('editor', { static: true })\n private _editor!: ElementRef<HTMLElement>;\n editor!: EditorView;\n\n async ngAfterViewInit() {\n this.state$.subscribe((state) => {\n if (this.editor) {\n const transaction = this.editor.state.update({\n ...state,\n selection: this.editor.state.selection,\n });\n this.editor.dispatch(transaction);\n } else {\n this.editor = new EditorView({\n state,\n parent: this._editor.nativeElement\n });\n }\n });\n }\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":";;;;;;;MAgBa,eAAe,CAAA;AAV5B,IAAA,WAAA,GAAA;AAYmB,QAAA,IAAA,CAAA,MAAM,GAAG,IAAI,aAAa,CAAc,CAAC,CAAC,CAAC;AA4B7D,KAAA;IA1BC,IACI,KAAK,CAAC,KAAyB,EAAA;AACjC,QAAA,IAAI,CAAC,KAAK;YAAE,OAAO;AACnB,QAAA,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;KACzB;AAMD,IAAA,MAAM,eAAe,GAAA;QACnB,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC,KAAK,KAAI;YAC9B,IAAI,IAAI,CAAC,MAAM,EAAE;gBACf,MAAM,WAAW,GAAG,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC;AAC3C,oBAAA,GAAG,KAAK;AACR,oBAAA,SAAS,EAAE,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,SAAS;AACvC,iBAAA,CAAC,CAAC;AACH,gBAAA,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,WAAW,CAAC,CAAC;AACnC,aAAA;AAAM,iBAAA;AACL,gBAAA,IAAI,CAAC,MAAM,GAAG,IAAI,UAAU,CAAC;oBAC3B,KAAK;AACL,oBAAA,MAAM,EAAE,IAAI,CAAC,OAAO,CAAC,aAAa;AACnC,iBAAA,CAAC,CAAC;AACJ,aAAA;AACH,SAAC,CAAC,CAAC;KACJ;+GA7BU,eAAe,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA,EAAA;mGAAf,eAAe,EAAA,YAAA,EAAA,IAAA,EAAA,QAAA,EAAA,eAAA,EAAA,MAAA,EAAA,EAAA,KAAA,EAAA,OAAA,EAAA,EAAA,WAAA,EAAA,CAAA,EAAA,YAAA,EAAA,SAAA,EAAA,KAAA,EAAA,IAAA,EAAA,SAAA,EAAA,CAAA,QAAA,CAAA,EAAA,WAAA,EAAA,IAAA,EAAA,MAAA,EAAA,IAAA,EAAA,CAAA,EAAA,QAAA,EAAA,EAAA,EAAA,QAAA,EAJhB,CAAqB,mBAAA,CAAA,EAAA,QAAA,EAAA,IAAA,EAAA,MAAA,EAAA,CAAA,4IAAA,CAAA,EAAA,YAAA,EAAA,CAAA,EAAA,IAAA,EAAA,UAAA,EAAA,IAAA,EAF7B,YAAY,EAAA,CAAA,EAAA,eAAA,EAAA,EAAA,CAAA,uBAAA,CAAA,MAAA,EAAA,CAAA,CAAA,EAAA;;4FAMH,eAAe,EAAA,UAAA,EAAA,CAAA;kBAV3B,SAAS;+BACE,eAAe,EAAA,UAAA,EACb,IAAI,EACP,OAAA,EAAA;wBACP,YAAY;AACb,qBAAA,EAAA,QAAA,EACS,CAAqB,mBAAA,CAAA,EAAA,eAAA,EAEd,uBAAuB,CAAC,MAAM,EAAA,MAAA,EAAA,CAAA,4IAAA,CAAA,EAAA,CAAA;8BAO3C,KAAK,EAAA,CAAA;sBADR,KAAK;gBAOE,OAAO,EAAA,CAAA;sBADd,SAAS;AAAC,gBAAA,IAAA,EAAA,CAAA,QAAQ,EAAE,EAAE,MAAM,EAAE,IAAI,EAAE,CAAA;;;AC1BvC;;AAEG;;;;"}
1
+ {"version":3,"file":"ng-atomic-components-extras-editor.mjs","sources":["../../../../../packages/@ng-atomic/components/src/lib/extras/editor/editor.component.ts","../../../../../packages/@ng-atomic/components/src/lib/extras/editor/ng-atomic-components-extras-editor.ts"],"sourcesContent":["import { ChangeDetectionStrategy, Component, computed, model, Directive, inject, input, effect, ElementRef, viewChild, Output, EventEmitter, Inject, ChangeDetectorRef } from '@angular/core';\nimport { CommonModule } from '@angular/common';\nimport { keymap } from \"@codemirror/view\"\nimport { indentWithTab } from \"@codemirror/commands\"\nimport { history } from '@codemirror/commands';\nimport { autocompletion, closeBrackets } from '@codemirror/autocomplete';\nimport { bracketMatching, syntaxHighlighting } from '@codemirror/language';\nimport { oneDarkHighlightStyle, oneDark } from '@codemirror/theme-one-dark';\nimport { EditorSelection, EditorState, Extension } from '@codemirror/state';\nimport { lineNumbers } from '@codemirror/view';\nimport { basicSetup, EditorView } from \"codemirror\"\nimport { html } from \"@codemirror/lang-html\";\nimport prettier from \"prettier/standalone\";\nimport parserHtml from \"prettier/parser-html\";\nimport { NgAtomicComponent } from '@ng-atomic/core';\nimport { graphql } from 'cm6-graphql';\nimport { distinctUntilChanged } from 'rxjs';\nimport { json } from \"@codemirror/lang-json\";\n\n@Component({\n selector: 'extras-editor',\n standalone: true,\n imports: [\n CommonModule\n ],\n template: ``,\n styleUrls: ['./editor.component.scss'],\n changeDetection: ChangeDetectionStrategy.OnPush\n})\nexport class EditorComponent extends NgAtomicComponent {\n readonly content = input<string>('');\n readonly _contentChange$ = new EventEmitter<string>();\n @Output() readonly contentChange = new EventEmitter<string>();\n readonly keyActions = input<{key: string, actionId: string}[]>();\n readonly extensions = input<Extension[]>([\n json(),\n ]);\n readonly el = inject(ElementRef);\n\n // readonly state = computed(() => {\n // return EditorState.create({\n // doc: this.content() ?? '',\n // extensions: [\n // keymap.of([\n // ...(this.keyActions() ?? []).map(({key, actionId}) => ({\n // key,\n // run: () => (this.dispatch({id: actionId}), true),\n // })),\n // indentWithTab,\n // ]),\n // html(),\n // ...this.extensions(),\n // graphql(),\n // ],\n // });\n // });\n\n editorView!: EditorView;\n\n readonly cd = inject(ChangeDetectorRef);\n\n constructor() {\n super();\n effect(() => {\n const selection = this.editorView.state.selection;\n this.editorView.dispatch(\n this.editorView.state.update({\n changes: {\n from: 0,\n to: this.editorView.state.doc.length,\n insert: this.content() ?? '',\n },\n selection: selection,\n scrollIntoView: true,\n }),\n );\n });\n }\n\n ngOnInit(): void {\n this._contentChange$.pipe(\n distinctUntilChanged(),\n ).subscribe((content) => {\n this.contentChange.emit(content);\n });\n }\n\n ngAfterViewInit() {\n this.editorView?.destroy();\n this.editorView = new EditorView({\n state: EditorState.create({\n doc: ``,\n extensions: [\n basicSetup,\n bracketMatching(),\n closeBrackets(),\n history(),\n autocompletion(),\n lineNumbers(),\n oneDark,\n syntaxHighlighting(oneDarkHighlightStyle),\n EditorView.updateListener.of((update) => {\n if (!update.docChanged) return;\n this._contentChange$.emit(update.state.doc.toString());\n }),\n ...this.extensions(),\n ],\n }),\n parent: this.el.nativeElement,\n })\n }\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}
@@ -8,11 +8,11 @@ class NgAtomicExtrasModule {
8
8
  providers: []
9
9
  };
10
10
  }
11
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: NgAtomicExtrasModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
12
- static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "16.2.12", ngImport: i0, type: NgAtomicExtrasModule }); }
13
- static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: NgAtomicExtrasModule }); }
11
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.2.2", ngImport: i0, type: NgAtomicExtrasModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
12
+ static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "17.2.2", ngImport: i0, type: NgAtomicExtrasModule }); }
13
+ static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "17.2.2", ngImport: i0, type: NgAtomicExtrasModule }); }
14
14
  }
15
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: NgAtomicExtrasModule, decorators: [{
15
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.2.2", ngImport: i0, type: NgAtomicExtrasModule, decorators: [{
16
16
  type: NgModule,
17
17
  args: [{}]
18
18
  }] });
@@ -1 +1 @@
1
- {"version":3,"file":"ng-atomic-components-extras.mjs","sources":["../../../../../packages/@ng-atomic/components/src/lib/extras/extras.module.ts","../../../../../packages/@ng-atomic/components/src/lib/extras/ng-atomic-components-extras.ts"],"sourcesContent":["import { NgModule } from \"@angular/core\";\n\n@NgModule({})\nexport class NgAtomicExtrasModule {\n static forRoot() {\n return {\n ngModule: NgAtomicExtrasModule,\n providers: []\n };\n }\n}","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":";;;MAGa,oBAAoB,CAAA;AAC/B,IAAA,OAAO,OAAO,GAAA;QACZ,OAAO;AACL,YAAA,QAAQ,EAAE,oBAAoB;AAC9B,YAAA,SAAS,EAAE,EAAE;SACd,CAAC;KACH;+GANU,oBAAoB,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,QAAA,EAAA,CAAA,CAAA,EAAA;gHAApB,oBAAoB,EAAA,CAAA,CAAA,EAAA;gHAApB,oBAAoB,EAAA,CAAA,CAAA,EAAA;;4FAApB,oBAAoB,EAAA,UAAA,EAAA,CAAA;kBADhC,QAAQ;mBAAC,EAAE,CAAA;;;ACFZ;;AAEG;;;;"}
1
+ {"version":3,"file":"ng-atomic-components-extras.mjs","sources":["../../../../../packages/@ng-atomic/components/src/lib/extras/extras.module.ts","../../../../../packages/@ng-atomic/components/src/lib/extras/ng-atomic-components-extras.ts"],"sourcesContent":["import { NgModule } from \"@angular/core\";\n\n@NgModule({})\nexport class NgAtomicExtrasModule {\n static forRoot() {\n return {\n ngModule: NgAtomicExtrasModule,\n providers: []\n };\n }\n}","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":";;;MAGa,oBAAoB,CAAA;AAC/B,IAAA,OAAO,OAAO,GAAA;QACZ,OAAO;AACL,YAAA,QAAQ,EAAE,oBAAoB;AAC9B,YAAA,SAAS,EAAE,EAAE;SACd,CAAC;KACH;8GANU,oBAAoB,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,QAAA,EAAA,CAAA,CAAA,EAAA;+GAApB,oBAAoB,EAAA,CAAA,CAAA,EAAA;+GAApB,oBAAoB,EAAA,CAAA,CAAA,EAAA;;2FAApB,oBAAoB,EAAA,UAAA,EAAA,CAAA;kBADhC,QAAQ;mBAAC,EAAE,CAAA;;;ACFZ;;AAEG;;;;"}