@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,16 +1,16 @@
1
1
  import { __decorate, __metadata } from 'tslib';
2
2
  import * as i0 from '@angular/core';
3
- import { Component, ChangeDetectionStrategy, Input, ViewChild } from '@angular/core';
4
- import * as i1 from '@angular/common';
5
- import { CommonModule } from '@angular/common';
6
- import * as i2 from '@angular/forms';
3
+ import { input, computed, effect, Directive, inject, viewChild, Component, ChangeDetectionStrategy } from '@angular/core';
4
+ import * as i1 from '@angular/forms';
7
5
  import { FormControl, ReactiveFormsModule } from '@angular/forms';
8
- import * as i3 from '@angular/material/input';
6
+ import * as i2 from '@angular/material/input';
9
7
  import { MatInputModule } from '@angular/material/input';
10
8
  import { SmartMenuButtonAtom } from '@ng-atomic/components/atoms/smart-menu-button';
11
9
  import { NgAtomicComponent, Effect } from '@ng-atomic/core';
12
10
  import { ErrorPipe } from '@ng-atomic/common/pipes/error';
13
- import * as i4 from '@angular/material/form-field';
11
+ import { toObservable, takeUntilDestroyed } from '@angular/core/rxjs-interop';
12
+ import { switchMap, startWith } from 'rxjs';
13
+ import * as i3 from '@angular/material/form-field';
14
14
 
15
15
  var ActionId;
16
16
  (function (ActionId) {
@@ -18,64 +18,93 @@ var ActionId;
18
18
  ActionId["FILE_SELECTED"] = "[@ng-atomic/components/molecules/file-input-field] File selected";
19
19
  ActionId["CANCEL"] = "[@ng-atomic/components/molecules/file-input-field] Cancel";
20
20
  })(ActionId || (ActionId = {}));
21
- class FileInputFieldMolecule extends NgAtomicComponent {
21
+ class FileInputFieldStore {
22
22
  constructor() {
23
- super(...arguments);
24
- this.appearance = 'outline';
25
- this.label = 'label';
26
- this.control = new FormControl('');
23
+ this.control = input(new FormControl(null));
24
+ this.control$ = toObservable(this.control).pipe(takeUntilDestroyed());
25
+ this.controlValue$ = this.control$.pipe(switchMap(control => control.valueChanges.pipe(startWith(control.value))));
26
+ this.label = input('label');
27
+ this.placeholder = input('placeholder');
28
+ this.hint = input(null);
29
+ this.progress = input(false);
30
+ this.name = input(null);
31
+ this.appearance = input('outline');
27
32
  this._control = new FormControl({ value: '', disabled: true });
28
- this.placeholder = 'placeholder';
29
- }
30
- static { this.ActionId = ActionId; }
31
- get actions() {
32
- return this.progress ? [
33
- {
34
- id: ActionId.CANCEL,
35
- icon: 'cancel',
36
- name: 'Cancel',
37
- disabled: this.control.disabled,
38
- },
39
- ] : [
40
- {
41
- id: ActionId.FILE_SELECT_BUTTON_CLICK,
42
- icon: 'attach_file',
43
- name: 'Select file',
44
- disabled: this.control.disabled,
45
- },
46
- ];
33
+ this.actions = computed(() => {
34
+ if (this.progress()) {
35
+ return [
36
+ {
37
+ id: ActionId.CANCEL,
38
+ icon: 'cancel',
39
+ name: 'Cancel',
40
+ disabled: this.control().disabled,
41
+ },
42
+ ];
43
+ }
44
+ else {
45
+ return [
46
+ {
47
+ id: ActionId.FILE_SELECT_BUTTON_CLICK,
48
+ icon: 'attach_file',
49
+ name: 'Select file',
50
+ disabled: this.control().disabled,
51
+ },
52
+ ];
53
+ }
54
+ });
55
+ // super();
56
+ effect(() => {
57
+ console.debug('progress:', this.progress());
58
+ });
47
59
  }
48
60
  ngOnInit() {
49
- this._control.setValidators(this.control['_rawValidators']);
50
- this._control.setAsyncValidators(this.control['_rawAsyncValidators']);
51
- this.control.valueChanges.subscribe(value => this._control.setValue(value));
61
+ // super.ngOnInit();
62
+ this.control$.subscribe(control => {
63
+ this._control.setValidators(control['_rawValidators']);
64
+ this._control.setAsyncValidators(control['_rawAsyncValidators']);
65
+ });
66
+ this.controlValue$.subscribe(value => this._control.setValue(value));
67
+ }
68
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.2.2", ngImport: i0, type: FileInputFieldStore, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
69
+ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "17.1.0", version: "17.2.2", type: FileInputFieldStore, isStandalone: true, inputs: { control: { classPropertyName: "control", publicName: "control", isSignal: true, isRequired: false, transformFunction: null }, label: { classPropertyName: "label", publicName: "label", isSignal: true, isRequired: false, transformFunction: null }, placeholder: { classPropertyName: "placeholder", publicName: "placeholder", isSignal: true, isRequired: false, transformFunction: null }, hint: { classPropertyName: "hint", publicName: "hint", isSignal: true, isRequired: false, transformFunction: null }, progress: { classPropertyName: "progress", publicName: "progress", isSignal: true, isRequired: false, transformFunction: null }, name: { classPropertyName: "name", publicName: "name", isSignal: true, isRequired: false, transformFunction: null }, appearance: { classPropertyName: "appearance", publicName: "appearance", isSignal: true, isRequired: false, transformFunction: null } }, ngImport: i0 }); }
70
+ }
71
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.2.2", ngImport: i0, type: FileInputFieldStore, decorators: [{
72
+ type: Directive,
73
+ args: [{ standalone: true }]
74
+ }], ctorParameters: () => [] });
75
+ class FileInputFieldMolecule extends NgAtomicComponent {
76
+ constructor() {
77
+ super(...arguments);
78
+ this.store = inject(FileInputFieldStore);
79
+ this.fileUpload = viewChild.required('fileUpload');
52
80
  }
81
+ static { this.ActionId = ActionId; }
53
82
  onFileSelectButtonClick() {
54
- this.fileUpload.nativeElement.click();
83
+ this.fileUpload().nativeElement.click();
55
84
  }
56
85
  onFileSelected(event) {
57
- this.dispatch({
58
- id: ActionId.FILE_SELECTED,
59
- payload: event.target.files,
60
- });
61
- this.fileUpload.nativeElement.value = '';
86
+ this.dispatch({ id: ActionId.FILE_SELECTED, payload: event.target.files });
87
+ // this.fileUpload().nativeElement.value = '';
62
88
  }
63
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: FileInputFieldMolecule, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
64
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: FileInputFieldMolecule, isStandalone: true, selector: "molecules-file-input-field", inputs: { appearance: "appearance", name: "name", label: "label", control: "control", placeholder: "placeholder", hint: "hint", progress: "progress" }, viewQueries: [{ propertyName: "fileUpload", first: true, predicate: ["fileUpload"], descendants: true, static: true }], usesInheritance: true, ngImport: i0, template: `
65
- <mat-form-field [appearance]="appearance">
66
- <mat-label>{{ label }}</mat-label>
67
- <input matInput [name]="name" type="text" [formControl]="_control" [placeholder]="placeholder">
89
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.2.2", ngImport: i0, type: FileInputFieldMolecule, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
90
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "17.2.2", type: FileInputFieldMolecule, isStandalone: true, selector: "molecules-file-input-field", viewQueries: [{ propertyName: "fileUpload", first: true, predicate: ["fileUpload"], descendants: true, isSignal: true }], usesInheritance: true, hostDirectives: [{ directive: FileInputFieldStore, inputs: ["control", "control", "label", "label", "placeholder", "placeholder", "hint", "hint", "progress", "progress", "name", "name", "appearance", "appearance"] }], ngImport: i0, template: `
91
+ <mat-form-field [appearance]="store.appearance()">
92
+ <mat-label>{{ store.label() }}</mat-label>
93
+ <input matInput [name]="store.name()" type="text" [formControl]="store._control" [placeholder]="store.placeholder()">
68
94
  <!-- <mat-icon matSuffix>sentiment_very_satisfied</mat-icon> -->
69
- <mat-hint *ngIf="progress">Uploading...({{ progress?.toFixed(2) }}%)</mat-hint>
70
- <mat-hint *ngIf="!progress && hint">{{ hint }}</mat-hint>
71
- <mat-error>{{ control.errors | error }}</mat-error>
95
+ @if (store.progress()) {
96
+ <mat-hint>Uploading...({{ store.progress() ? store.progress()?.toFixed(2) : '' }}%)</mat-hint>
97
+ } @else if (store.hint()) {
98
+ <mat-hint>{{ store.hint() }}</mat-hint>
99
+ }
100
+ <mat-error>{{ store.control().errors | error }}</mat-error>
72
101
  </mat-form-field>
73
102
  <atoms-smart-menu-button
74
- [actions]="actions"
103
+ [actions]="store.actions()"
75
104
  (action)="dispatch($event)"
76
105
  ></atoms-smart-menu-button>
77
- <input style="display: none" type="file" value="test" (change)="onFileSelected($event)" #fileUpload>
78
- `, isInline: true, styles: [":host{display:block}:host{display:flex;width:100%;flex-direction:row;align-items:center;justify-content:space-between}:host mat-form-field{width:100%}:host atoms-smart-menu-button{width:-moz-fit-content;width:fit-content;margin-bottom:20px}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "ngmodule", type: ReactiveFormsModule }, { kind: "directive", type: i2.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i2.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i2.FormControlDirective, selector: "[formControl]", inputs: ["formControl", "disabled", "ngModel"], outputs: ["ngModelChange"], exportAs: ["ngForm"] }, { kind: "ngmodule", type: MatInputModule }, { kind: "directive", type: i3.MatInput, selector: "input[matInput], textarea[matInput], select[matNativeControl], input[matNativeControl], textarea[matNativeControl]", inputs: ["disabled", "id", "placeholder", "name", "required", "type", "errorStateMatcher", "aria-describedby", "value", "readonly"], exportAs: ["matInput"] }, { kind: "component", type: i4.MatFormField, selector: "mat-form-field", inputs: ["hideRequiredMarker", "color", "floatLabel", "appearance", "subscriptSizing", "hintLabel"], exportAs: ["matFormField"] }, { kind: "directive", type: i4.MatLabel, selector: "mat-label" }, { kind: "directive", type: i4.MatHint, selector: "mat-hint", inputs: ["align", "id"] }, { kind: "directive", type: i4.MatError, selector: "mat-error, [matError]", inputs: ["id"] }, { kind: "component", type: SmartMenuButtonAtom, selector: "atoms-smart-menu-button", inputs: ["actions"], outputs: ["action"] }, { kind: "pipe", type: ErrorPipe, name: "error" }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
106
+ <input style="display: none" type="file" (change)="onFileSelected($event)" #fileUpload>
107
+ `, isInline: true, styles: [":host{display:block}:host{display:flex;width:100%;flex-direction:row;align-items:center;justify-content:space-between}:host mat-form-field{width:100%}:host atoms-smart-menu-button{width:-moz-fit-content;width:fit-content;margin-bottom:20px}\n"], dependencies: [{ kind: "ngmodule", type: ReactiveFormsModule }, { kind: "directive", type: i1.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i1.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1.FormControlDirective, selector: "[formControl]", inputs: ["formControl", "disabled", "ngModel"], outputs: ["ngModelChange"], exportAs: ["ngForm"] }, { kind: "ngmodule", type: MatInputModule }, { kind: "directive", type: i2.MatInput, selector: "input[matInput], textarea[matInput], select[matNativeControl], input[matNativeControl], textarea[matNativeControl]", inputs: ["disabled", "id", "placeholder", "name", "required", "type", "errorStateMatcher", "aria-describedby", "value", "readonly"], exportAs: ["matInput"] }, { kind: "component", type: i3.MatFormField, selector: "mat-form-field", inputs: ["hideRequiredMarker", "color", "floatLabel", "appearance", "subscriptSizing", "hintLabel"], exportAs: ["matFormField"] }, { kind: "directive", type: i3.MatLabel, selector: "mat-label" }, { kind: "directive", type: i3.MatHint, selector: "mat-hint", inputs: ["align", "id"] }, { kind: "directive", type: i3.MatError, selector: "mat-error, [matError]", inputs: ["id"] }, { kind: "component", type: SmartMenuButtonAtom, selector: "atoms-smart-menu-button" }, { kind: "pipe", type: ErrorPipe, name: "error" }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
79
108
  }
80
109
  __decorate([
81
110
  Effect(ActionId.FILE_SELECT_BUTTON_CLICK),
@@ -83,51 +112,41 @@ __decorate([
83
112
  __metadata("design:paramtypes", []),
84
113
  __metadata("design:returntype", void 0)
85
114
  ], FileInputFieldMolecule.prototype, "onFileSelectButtonClick", null);
86
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: FileInputFieldMolecule, decorators: [{
115
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.2.2", ngImport: i0, type: FileInputFieldMolecule, decorators: [{
87
116
  type: Component,
88
117
  args: [{ selector: 'molecules-file-input-field', standalone: true, imports: [
89
- CommonModule,
90
118
  ReactiveFormsModule,
91
119
  MatInputModule,
92
120
  SmartMenuButtonAtom,
93
121
  ErrorPipe,
94
122
  ], template: `
95
- <mat-form-field [appearance]="appearance">
96
- <mat-label>{{ label }}</mat-label>
97
- <input matInput [name]="name" type="text" [formControl]="_control" [placeholder]="placeholder">
123
+ <mat-form-field [appearance]="store.appearance()">
124
+ <mat-label>{{ store.label() }}</mat-label>
125
+ <input matInput [name]="store.name()" type="text" [formControl]="store._control" [placeholder]="store.placeholder()">
98
126
  <!-- <mat-icon matSuffix>sentiment_very_satisfied</mat-icon> -->
99
- <mat-hint *ngIf="progress">Uploading...({{ progress?.toFixed(2) }}%)</mat-hint>
100
- <mat-hint *ngIf="!progress && hint">{{ hint }}</mat-hint>
101
- <mat-error>{{ control.errors | error }}</mat-error>
127
+ @if (store.progress()) {
128
+ <mat-hint>Uploading...({{ store.progress() ? store.progress()?.toFixed(2) : '' }}%)</mat-hint>
129
+ } @else if (store.hint()) {
130
+ <mat-hint>{{ store.hint() }}</mat-hint>
131
+ }
132
+ <mat-error>{{ store.control().errors | error }}</mat-error>
102
133
  </mat-form-field>
103
134
  <atoms-smart-menu-button
104
- [actions]="actions"
135
+ [actions]="store.actions()"
105
136
  (action)="dispatch($event)"
106
137
  ></atoms-smart-menu-button>
107
- <input style="display: none" type="file" value="test" (change)="onFileSelected($event)" #fileUpload>
108
- `, changeDetection: ChangeDetectionStrategy.OnPush, styles: [":host{display:block}:host{display:flex;width:100%;flex-direction:row;align-items:center;justify-content:space-between}:host mat-form-field{width:100%}:host atoms-smart-menu-button{width:-moz-fit-content;width:fit-content;margin-bottom:20px}\n"] }]
109
- }], propDecorators: { appearance: [{
110
- type: Input
111
- }], name: [{
112
- type: Input
113
- }], label: [{
114
- type: Input
115
- }], control: [{
116
- type: Input
117
- }], placeholder: [{
118
- type: Input
119
- }], hint: [{
120
- type: Input
121
- }], progress: [{
122
- type: Input
123
- }], fileUpload: [{
124
- type: ViewChild,
125
- args: ['fileUpload', { static: true }]
126
- }], onFileSelectButtonClick: [] } });
138
+ <input style="display: none" type="file" (change)="onFileSelected($event)" #fileUpload>
139
+ `, changeDetection: ChangeDetectionStrategy.OnPush, hostDirectives: [
140
+ {
141
+ directive: FileInputFieldStore,
142
+ inputs: ['control', 'label', 'placeholder', 'hint', 'progress', 'name', 'appearance'],
143
+ }
144
+ ], styles: [":host{display:block}:host{display:flex;width:100%;flex-direction:row;align-items:center;justify-content:space-between}:host mat-form-field{width:100%}:host atoms-smart-menu-button{width:-moz-fit-content;width:fit-content;margin-bottom:20px}\n"] }]
145
+ }], propDecorators: { onFileSelectButtonClick: [] } });
127
146
 
128
147
  /**
129
148
  * Generated bundle index. Do not edit.
130
149
  */
131
150
 
132
- export { FileInputFieldMolecule };
151
+ export { FileInputFieldMolecule, FileInputFieldStore };
133
152
  //# sourceMappingURL=ng-atomic-components-molecules-file-input-field.mjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"ng-atomic-components-molecules-file-input-field.mjs","sources":["../../../../../packages/@ng-atomic/components/src/lib/molecules/file-input-field/file-input-field.molecule.ts","../../../../../packages/@ng-atomic/components/src/lib/molecules/file-input-field/ng-atomic-components-molecules-file-input-field.ts"],"sourcesContent":["import { ChangeDetectionStrategy, Component, ElementRef, Input, ViewChild } from '@angular/core';\nimport { CommonModule } from '@angular/common';\nimport { FormControl, ReactiveFormsModule, Validators } from '@angular/forms';\nimport { MatInputModule } from '@angular/material/input';\nimport { SmartMenuButtonAtom } from '@ng-atomic/components/atoms/smart-menu-button';\nimport { Effect, NgAtomicComponent } from '@ng-atomic/core';\nimport { ErrorPipe } from '@ng-atomic/common/pipes/error';\n\nenum ActionId {\n FILE_SELECT_BUTTON_CLICK = '[@ng-atomic/components/molecules/file-input-field] File select button click',\n FILE_SELECTED = '[@ng-atomic/components/molecules/file-input-field] File selected',\n CANCEL = '[@ng-atomic/components/molecules/file-input-field] Cancel',\n}\n\n@Component({\n selector: 'molecules-file-input-field',\n standalone: true,\n imports: [\n CommonModule,\n ReactiveFormsModule,\n MatInputModule,\n SmartMenuButtonAtom,\n ErrorPipe,\n ],\n template: `\n <mat-form-field [appearance]=\"appearance\">\n <mat-label>{{ label }}</mat-label>\n <input matInput [name]=\"name\" type=\"text\" [formControl]=\"_control\" [placeholder]=\"placeholder\">\n <!-- <mat-icon matSuffix>sentiment_very_satisfied</mat-icon> -->\n <mat-hint *ngIf=\"progress\">Uploading...({{ progress?.toFixed(2) }}%)</mat-hint>\n <mat-hint *ngIf=\"!progress && hint\">{{ hint }}</mat-hint>\n <mat-error>{{ control.errors | error }}</mat-error>\n </mat-form-field>\n <atoms-smart-menu-button\n [actions]=\"actions\"\n (action)=\"dispatch($event)\"\n ></atoms-smart-menu-button>\n <input style=\"display: none\" type=\"file\" value=\"test\" (change)=\"onFileSelected($event)\" #fileUpload>\n `,\n styleUrls: ['./file-input-field.molecule.scss'],\n changeDetection: ChangeDetectionStrategy.OnPush\n})\nexport class FileInputFieldMolecule extends NgAtomicComponent {\n static ActionId = ActionId;\n \n protected get actions() {\n return this.progress ? [\n {\n id: ActionId.CANCEL,\n icon: 'cancel',\n name: 'Cancel',\n disabled: this.control.disabled,\n },\n ] : [\n {\n id: ActionId.FILE_SELECT_BUTTON_CLICK,\n icon: 'attach_file',\n name: 'Select file',\n disabled: this.control.disabled,\n },\n ];\n }\n\n @Input()\n appearance: 'outline' | 'fill' = 'outline';\n\n @Input()\n name?: string;\n\n @Input()\n label = 'label';\n\n @Input()\n control = new FormControl<string | number>('');\n\n protected _control = new FormControl<string | number>({value: '', disabled: true});\n\n @Input()\n placeholder = 'placeholder';\n\n @Input()\n hint?: string;\n\n @Input()\n progress?: number;\n\n @ViewChild('fileUpload', { static: true })\n protected fileUpload: ElementRef<HTMLInputElement>;\n\n ngOnInit() {\n this._control.setValidators(this.control['_rawValidators']);\n this._control.setAsyncValidators(this.control['_rawAsyncValidators']);\n this.control.valueChanges.subscribe(value => this._control.setValue(value));\n }\n\n @Effect(ActionId.FILE_SELECT_BUTTON_CLICK)\n protected onFileSelectButtonClick() {\n this.fileUpload.nativeElement.click();\n }\n\n protected onFileSelected(event: Event & {target: HTMLInputElement}) {\n this.dispatch({\n id: ActionId.FILE_SELECTED,\n payload: event.target.files,\n });\n this.fileUpload.nativeElement.value = '';\n }\n\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-molecules-file-input-field.mjs","sources":["../../../../../packages/@ng-atomic/components/src/lib/molecules/file-input-field/file-input-field.molecule.ts","../../../../../packages/@ng-atomic/components/src/lib/molecules/file-input-field/ng-atomic-components-molecules-file-input-field.ts"],"sourcesContent":["import { ChangeDetectionStrategy, Component, Directive, ElementRef, computed, effect, inject, input, viewChild } from '@angular/core';\nimport { FormControl, ReactiveFormsModule } from '@angular/forms';\nimport { MatInputModule } from '@angular/material/input';\nimport { SmartMenuButtonAtom } from '@ng-atomic/components/atoms/smart-menu-button';\nimport { Effect, NgAtomicComponent } from '@ng-atomic/core';\nimport { ErrorPipe } from '@ng-atomic/common/pipes/error';\nimport { takeUntilDestroyed, toObservable } from '@angular/core/rxjs-interop';\nimport { startWith, switchMap } from 'rxjs';\n\nenum ActionId {\n FILE_SELECT_BUTTON_CLICK = '[@ng-atomic/components/molecules/file-input-field] File select button click',\n FILE_SELECTED = '[@ng-atomic/components/molecules/file-input-field] File selected',\n CANCEL = '[@ng-atomic/components/molecules/file-input-field] Cancel',\n}\n\n@Directive({ standalone: true })\nexport class FileInputFieldStore {\n readonly control = input(new FormControl(null));\n readonly control$ = toObservable(this.control).pipe(takeUntilDestroyed());\n readonly controlValue$ = this.control$.pipe(\n switchMap(control => control.valueChanges.pipe(startWith(control.value))),\n );\n readonly label = input('label');\n readonly placeholder = input('placeholder');\n readonly hint = input<string | null>(null);\n readonly progress = input<number | false>(false);\n readonly name = input<string | null>(null);\n readonly appearance = input<'outline' | 'fill'>('outline');\n readonly _control = new FormControl<string | number>({value: '', disabled: true});\n\n constructor() {\n // super();\n effect(() => {\n console.debug('progress:', this.progress());\n });\n }\n\n ngOnInit() {\n // super.ngOnInit();\n this.control$.subscribe(control => {\n this._control.setValidators(control['_rawValidators']);\n this._control.setAsyncValidators(control['_rawAsyncValidators']);\n });\n\n this.controlValue$.subscribe(value => this._control.setValue(value));\n }\n\n readonly actions = computed(() => {\n if (this.progress()) {\n return [\n {\n id: ActionId.CANCEL,\n icon: 'cancel',\n name: 'Cancel',\n disabled: this.control().disabled,\n },\n ];\n } else {\n return [\n {\n id: ActionId.FILE_SELECT_BUTTON_CLICK,\n icon: 'attach_file',\n name: 'Select file',\n disabled: this.control().disabled,\n },\n ];\n }\n });\n}\n\n@Component({\n selector: 'molecules-file-input-field',\n standalone: true,\n imports: [\n ReactiveFormsModule,\n MatInputModule,\n SmartMenuButtonAtom,\n ErrorPipe,\n ],\n template: `\n <mat-form-field [appearance]=\"store.appearance()\">\n <mat-label>{{ store.label() }}</mat-label>\n <input matInput [name]=\"store.name()\" type=\"text\" [formControl]=\"store._control\" [placeholder]=\"store.placeholder()\">\n <!-- <mat-icon matSuffix>sentiment_very_satisfied</mat-icon> -->\n @if (store.progress()) {\n <mat-hint>Uploading...({{ store.progress() ? store.progress()?.toFixed(2) : '' }}%)</mat-hint>\n } @else if (store.hint()) {\n <mat-hint>{{ store.hint() }}</mat-hint>\n }\n <mat-error>{{ store.control().errors | error }}</mat-error>\n </mat-form-field>\n <atoms-smart-menu-button\n [actions]=\"store.actions()\"\n (action)=\"dispatch($event)\"\n ></atoms-smart-menu-button>\n <input style=\"display: none\" type=\"file\" (change)=\"onFileSelected($event)\" #fileUpload>\n `,\n styleUrls: ['./file-input-field.molecule.scss'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n hostDirectives: [\n {\n directive: FileInputFieldStore,\n inputs: ['control', 'label', 'placeholder', 'hint', 'progress', 'name', 'appearance'],\n }\n ]\n})\nexport class FileInputFieldMolecule extends NgAtomicComponent {\n static readonly ActionId = ActionId;\n protected readonly store = inject(FileInputFieldStore);\n protected readonly fileUpload = viewChild.required<ElementRef<HTMLInputElement>>('fileUpload');\n \n @Effect(ActionId.FILE_SELECT_BUTTON_CLICK)\n protected onFileSelectButtonClick() {\n this.fileUpload().nativeElement.click();\n }\n\n protected onFileSelected(event: Event & {target: HTMLInputElement}) {\n this.dispatch({id: ActionId.FILE_SELECTED, payload: event.target.files});\n // this.fileUpload().nativeElement.value = '';\n }\n\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}
@@ -0,0 +1,75 @@
1
+ import * as i0 from '@angular/core';
2
+ import { input, Component, ChangeDetectionStrategy } from '@angular/core';
3
+ import * as i1 from '@angular/material/button';
4
+ import { MatButtonModule } from '@angular/material/button';
5
+ import * as i3 from '@angular/material/core';
6
+ import { MatRippleModule } from '@angular/material/core';
7
+ import * as i2 from '@angular/material/icon';
8
+ import { MatIconModule } from '@angular/material/icon';
9
+ import { DataAccessorPipe } from '@ng-atomic/common/pipes/data-accessor';
10
+ import { NgAtomicComponent } from '@ng-atomic/core';
11
+ import { FallbackSrcDirective } from '@ng-atomic/common/directives/fallback-src';
12
+
13
+ var ActionId;
14
+ (function (ActionId) {
15
+ ActionId["ITEM_CLICK"] = "[@ng-atomic/components/organisms/grid-cards-section] Item Click";
16
+ })(ActionId || (ActionId = {}));
17
+ class GridItemMolecule extends NgAtomicComponent {
18
+ constructor() {
19
+ super(...arguments);
20
+ this.item = input();
21
+ }
22
+ static { this.ActionId = ActionId; }
23
+ onItemMenuClick(item, $event) {
24
+ $event.stopPropagation();
25
+ }
26
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.2.2", ngImport: i0, type: GridItemMolecule, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
27
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "17.2.2", type: GridItemMolecule, isStandalone: true, selector: "molecules-grid-item", inputs: { item: { classPropertyName: "item", publicName: "item", isSignal: true, isRequired: false, transformFunction: null } }, usesInheritance: true, ngImport: i0, template: `
28
+ <div class="content" matRipple>
29
+ <button mat-icon-button color="primary" (click)="onItemMenuClick(item(), $event)">
30
+ <mat-icon>menu</mat-icon>
31
+ </button>
32
+ <div class="eye-catch">
33
+ <img fallbackSrc [src]="item() | dataAccessor:'imgUrl'" alt="サムネイル画像">
34
+ <div class="label">{{ item() | dataAccessor:'label' }}</div>
35
+ </div>
36
+ <div class="meta">
37
+ <div class="title">{{ item() | dataAccessor:'title' }}</div>
38
+ <div class="description"><span>{{ item() | dataAccessor:'description' }}</span></div>
39
+ <div class="sub"><span>{{ item() | dataAccessor:'sub' }}</span></div>
40
+ </div>
41
+ </div>
42
+ `, isInline: true, styles: [":host{display:block;--primary-color: #444;--primary-color-SCOPED-IN-grid-item-olQV: var(--primary-color);--on-surface-color: #444;--on-surface-color-SCOPED-IN-grid-item-olQV: var(--on-surface-color)}:host{position:relative;text-align:center;cursor:pointer;aspect-ratio:1/1}:host button{position:absolute;top:0;right:0}:host ::ng-deep>mat-card{display:flex;justify-content:flex-start;align-items:flex-start}:host .eye-catch{position:relative;width:100%;aspect-ratio:16/9;background-color:#444;border-radius:0 0 8px 8px;overflow:hidden}:host .eye-catch img{width:100%;aspect-ratio:16/9;object-fit:cover}:host .eye-catch .label{position:absolute;right:6px;bottom:8px;line-height:1.5em;font-size:1.2em;color:#fff;background:#000;opacity:.6;border-radius:6px;padding:4px 8px}:host .meta{display:flex;flex-direction:column;justify-content:flex-start;align-items:flex-start;padding:8px 8px 24px;box-sizing:border-box}:host .meta .title{display:-webkit-box;text-align:start;font-size:1.4em;font-weight:700;line-height:1.5em;letter-spacing:.04em;-webkit-line-clamp:2;-webkit-box-orient:vertical;text-overflow:ellipsis;white-space:normal;overflow:hidden;color:var(--on-surface-color-SCOPED-IN-grid-item-olQV)}:host .meta .description,:host .meta .sub{overflow:hidden;text-align:start;font-size:1.2em;letter-spacing:.04em;color:gray}:host .meta .description span,:host .meta .sub span{display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:3}\n"], dependencies: [{ kind: "pipe", type: DataAccessorPipe, name: "dataAccessor" }, { kind: "ngmodule", type: MatButtonModule }, { 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: MatRippleModule }, { kind: "directive", type: i3.MatRipple, selector: "[mat-ripple], [matRipple]", inputs: ["matRippleColor", "matRippleUnbounded", "matRippleCentered", "matRippleRadius", "matRippleAnimation", "matRippleDisabled", "matRippleTrigger"], exportAs: ["matRipple"] }, { kind: "directive", type: FallbackSrcDirective, selector: "[fallbackSrc]" }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
43
+ }
44
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.2.2", ngImport: i0, type: GridItemMolecule, decorators: [{
45
+ type: Component,
46
+ args: [{ selector: 'molecules-grid-item', standalone: true, imports: [
47
+ DataAccessorPipe,
48
+ MatButtonModule,
49
+ MatIconModule,
50
+ MatRippleModule,
51
+ FallbackSrcDirective,
52
+ ], template: `
53
+ <div class="content" matRipple>
54
+ <button mat-icon-button color="primary" (click)="onItemMenuClick(item(), $event)">
55
+ <mat-icon>menu</mat-icon>
56
+ </button>
57
+ <div class="eye-catch">
58
+ <img fallbackSrc [src]="item() | dataAccessor:'imgUrl'" alt="サムネイル画像">
59
+ <div class="label">{{ item() | dataAccessor:'label' }}</div>
60
+ </div>
61
+ <div class="meta">
62
+ <div class="title">{{ item() | dataAccessor:'title' }}</div>
63
+ <div class="description"><span>{{ item() | dataAccessor:'description' }}</span></div>
64
+ <div class="sub"><span>{{ item() | dataAccessor:'sub' }}</span></div>
65
+ </div>
66
+ </div>
67
+ `, changeDetection: ChangeDetectionStrategy.OnPush, styles: [":host{display:block;--primary-color: #444;--primary-color-SCOPED-IN-grid-item-olQV: var(--primary-color);--on-surface-color: #444;--on-surface-color-SCOPED-IN-grid-item-olQV: var(--on-surface-color)}:host{position:relative;text-align:center;cursor:pointer;aspect-ratio:1/1}:host button{position:absolute;top:0;right:0}:host ::ng-deep>mat-card{display:flex;justify-content:flex-start;align-items:flex-start}:host .eye-catch{position:relative;width:100%;aspect-ratio:16/9;background-color:#444;border-radius:0 0 8px 8px;overflow:hidden}:host .eye-catch img{width:100%;aspect-ratio:16/9;object-fit:cover}:host .eye-catch .label{position:absolute;right:6px;bottom:8px;line-height:1.5em;font-size:1.2em;color:#fff;background:#000;opacity:.6;border-radius:6px;padding:4px 8px}:host .meta{display:flex;flex-direction:column;justify-content:flex-start;align-items:flex-start;padding:8px 8px 24px;box-sizing:border-box}:host .meta .title{display:-webkit-box;text-align:start;font-size:1.4em;font-weight:700;line-height:1.5em;letter-spacing:.04em;-webkit-line-clamp:2;-webkit-box-orient:vertical;text-overflow:ellipsis;white-space:normal;overflow:hidden;color:var(--on-surface-color-SCOPED-IN-grid-item-olQV)}:host .meta .description,:host .meta .sub{overflow:hidden;text-align:start;font-size:1.2em;letter-spacing:.04em;color:gray}:host .meta .description span,:host .meta .sub span{display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:3}\n"] }]
68
+ }] });
69
+
70
+ /**
71
+ * Generated bundle index. Do not edit.
72
+ */
73
+
74
+ export { GridItemMolecule };
75
+ //# sourceMappingURL=ng-atomic-components-molecules-grid-item.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ng-atomic-components-molecules-grid-item.mjs","sources":["../../../../../packages/@ng-atomic/components/src/lib/molecules/grid-item/grid-item.molecule.ts","../../../../../packages/@ng-atomic/components/src/lib/molecules/grid-item/ng-atomic-components-molecules-grid-item.ts"],"sourcesContent":["import { ChangeDetectionStrategy, Component, input } from '@angular/core';\nimport { MatButtonModule } from '@angular/material/button';\nimport { MatRippleModule } from '@angular/material/core';\nimport { MatIconModule } from '@angular/material/icon';\nimport { DataAccessorPipe } from '@ng-atomic/common/pipes/data-accessor';\nimport { NgAtomicComponent } from '@ng-atomic/core';\nimport { FallbackSrcDirective } from '@ng-atomic/common/directives/fallback-src';\n\nenum ActionId {\n ITEM_CLICK = '[@ng-atomic/components/organisms/grid-cards-section] Item Click',\n}\n\n@Component({\n selector: 'molecules-grid-item',\n standalone: true,\n imports: [\n DataAccessorPipe,\n MatButtonModule,\n MatIconModule,\n MatRippleModule,\n FallbackSrcDirective,\n ],\n template: `\n <div class=\"content\" matRipple>\n <button mat-icon-button color=\"primary\" (click)=\"onItemMenuClick(item(), $event)\">\n <mat-icon>menu</mat-icon>\n </button>\n <div class=\"eye-catch\">\n <img fallbackSrc [src]=\"item() | dataAccessor:'imgUrl'\" alt=\"サムネイル画像\">\n <div class=\"label\">{{ item() | dataAccessor:'label' }}</div>\n </div>\n <div class=\"meta\">\n <div class=\"title\">{{ item() | dataAccessor:'title' }}</div>\n <div class=\"description\"><span>{{ item() | dataAccessor:'description' }}</span></div>\n <div class=\"sub\"><span>{{ item() | dataAccessor:'sub' }}</span></div>\n </div>\n </div>\n `,\n styleUrl: './grid-item.molecule.scss',\n changeDetection: ChangeDetectionStrategy.OnPush\n})\nexport class GridItemMolecule<T> extends NgAtomicComponent {\n static readonly ActionId = ActionId;\n readonly item = input<T>();\n\n protected onItemMenuClick(item: T, $event: Event) {\n $event.stopPropagation();\n }\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":";;;;;;;;;;;;AAQA,IAAK,QAEJ,CAAA;AAFD,CAAA,UAAK,QAAQ,EAAA;AACX,IAAA,QAAA,CAAA,YAAA,CAAA,GAAA,iEAA8E,CAAA;AAChF,CAAC,EAFI,QAAQ,KAAR,QAAQ,GAEZ,EAAA,CAAA,CAAA,CAAA;AA+BK,MAAO,gBAAoB,SAAQ,iBAAiB,CAAA;AA7B1D,IAAA,WAAA,GAAA;;QA+BW,IAAI,CAAA,IAAA,GAAG,KAAK,EAAK,CAAC;AAK5B,KAAA;aANiB,IAAQ,CAAA,QAAA,GAAG,QAAH,CAAY,EAAA;IAG1B,eAAe,CAAC,IAAO,EAAE,MAAa,EAAA;QAC9C,MAAM,CAAC,eAAe,EAAE,CAAC;KAC1B;8GANU,gBAAgB,EAAA,IAAA,EAAA,IAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA,EAAA;AAAhB,IAAA,SAAA,IAAA,CAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,IAAA,EAAA,gBAAgB,EAnBjB,YAAA,EAAA,IAAA,EAAA,QAAA,EAAA,qBAAA,EAAA,MAAA,EAAA,EAAA,IAAA,EAAA,EAAA,iBAAA,EAAA,MAAA,EAAA,UAAA,EAAA,MAAA,EAAA,QAAA,EAAA,IAAA,EAAA,UAAA,EAAA,KAAA,EAAA,iBAAA,EAAA,IAAA,EAAA,EAAA,EAAA,eAAA,EAAA,IAAA,EAAA,QAAA,EAAA,EAAA,EAAA,QAAA,EAAA,CAAA;;;;;;;;;;;;;;;GAeT,EArBC,QAAA,EAAA,IAAA,EAAA,MAAA,EAAA,CAAA,u6CAAA,CAAA,EAAA,YAAA,EAAA,CAAA,EAAA,IAAA,EAAA,MAAA,EAAA,IAAA,EAAA,gBAAgB,oDAChB,eAAe,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,CAAA,aAAA,EAAA,QAAA,EAAA,yBAAA,EAAA,QAAA,EAAA,CAAA,WAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,UAAA,EAAA,IAAA,EACf,aAAa,EACb,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,CAAA,OAAA,EAAA,QAAA,EAAA,UAAA,EAAA,MAAA,EAAA,CAAA,OAAA,EAAA,QAAA,EAAA,SAAA,EAAA,SAAA,EAAA,UAAA,CAAA,EAAA,QAAA,EAAA,CAAA,SAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,UAAA,EAAA,IAAA,EAAA,eAAe,mSACf,oBAAoB,EAAA,QAAA,EAAA,eAAA,EAAA,CAAA,EAAA,eAAA,EAAA,EAAA,CAAA,uBAAA,CAAA,MAAA,EAAA,CAAA,CAAA,EAAA;;2FAqBX,gBAAgB,EAAA,UAAA,EAAA,CAAA;kBA7B5B,SAAS;+BACE,qBAAqB,EAAA,UAAA,EACnB,IAAI,EACP,OAAA,EAAA;wBACP,gBAAgB;wBAChB,eAAe;wBACf,aAAa;wBACb,eAAe;wBACf,oBAAoB;qBACrB,EACS,QAAA,EAAA,CAAA;;;;;;;;;;;;;;;GAeT,EAEgB,eAAA,EAAA,uBAAuB,CAAC,MAAM,EAAA,MAAA,EAAA,CAAA,u6CAAA,CAAA,EAAA,CAAA;;;ACvCjD;;AAEG;;;;"}
@@ -1,28 +1,51 @@
1
- import { CommonModule } from '@angular/common';
1
+ import { __decorate } from 'tslib';
2
2
  import * as i0 from '@angular/core';
3
- import { Component, ChangeDetectionStrategy, Input } from '@angular/core';
3
+ import { input, Directive, inject, Component, ChangeDetectionStrategy } from '@angular/core';
4
+ import { InjectableComponent, TokenizedType, NgAtomicComponent } from '@ng-atomic/core';
4
5
 
5
- class HeaderMolecule {
6
+ let HeaderMoleculeStore = class HeaderMoleculeStore extends InjectableComponent {
6
7
  constructor() {
7
- this.title = 'title';
8
+ super(...arguments);
9
+ this.title = input('title');
10
+ this.description = input('');
8
11
  }
9
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: HeaderMolecule, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
10
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: HeaderMolecule, isStandalone: true, selector: "molecules-header", inputs: { title: "title", description: "description" }, ngImport: i0, template: "<span class=\"title\">{{ title ?? '' }}</span>\n<span class=\"description\">{{ description ?? '' }}</span>\n", styles: [":host{display:block}:host{display:flex;flex-direction:row;justify-content:center;align-items:flex-end}:host .description{line-height:1em;font-size:12px;margin-bottom:8px;margin-left:4px}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
12
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.2.2", ngImport: i0, type: HeaderMoleculeStore, deps: null, target: i0.ɵɵFactoryTarget.Directive }); }
13
+ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "17.1.0", version: "17.2.2", type: HeaderMoleculeStore, isStandalone: true, selector: "molecules-header", inputs: { title: { classPropertyName: "title", publicName: "title", isSignal: true, isRequired: false, transformFunction: null }, description: { classPropertyName: "description", publicName: "description", isSignal: true, isRequired: false, transformFunction: null } }, usesInheritance: true, ngImport: i0 }); }
14
+ };
15
+ HeaderMoleculeStore = __decorate([
16
+ TokenizedType()
17
+ ], HeaderMoleculeStore);
18
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.2.2", ngImport: i0, type: HeaderMoleculeStore, decorators: [{
19
+ type: Directive,
20
+ args: [{ standalone: true, selector: 'molecules-header' }]
21
+ }] });
22
+ class HeaderMolecule extends NgAtomicComponent {
23
+ constructor() {
24
+ super(...arguments);
25
+ this.store = inject(HeaderMoleculeStore);
26
+ }
27
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.2.2", ngImport: i0, type: HeaderMolecule, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
28
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.2.2", type: HeaderMolecule, isStandalone: true, selector: "molecules-header", usesInheritance: true, hostDirectives: [{ directive: HeaderMoleculeStore, inputs: ["title", "title", "description", "description"] }], ngImport: i0, template: `
29
+ <span class="title">{{ store.title() ?? '' }}</span>
30
+ <span class="description">{{ store.description() ?? '' }}</span>
31
+ `, isInline: true, styles: [":host{display:block}:host{display:flex;flex-direction:row;align-items:flex-end;width:100%;justify-content:flex-start}:host .title{white-space:nowrap;text-overflow:ellipsis;overflow:hidden}:host .description{line-height:1em;font-size:12px;margin-bottom:8px;margin-left:4px}\n"], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
11
32
  }
12
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: HeaderMolecule, decorators: [{
33
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.2.2", ngImport: i0, type: HeaderMolecule, decorators: [{
13
34
  type: Component,
14
- args: [{ selector: 'molecules-header', standalone: true, imports: [
15
- CommonModule,
16
- ], changeDetection: ChangeDetectionStrategy.OnPush, template: "<span class=\"title\">{{ title ?? '' }}</span>\n<span class=\"description\">{{ description ?? '' }}</span>\n", styles: [":host{display:block}:host{display:flex;flex-direction:row;justify-content:center;align-items:flex-end}:host .description{line-height:1em;font-size:12px;margin-bottom:8px;margin-left:4px}\n"] }]
17
- }], propDecorators: { title: [{
18
- type: Input
19
- }], description: [{
20
- type: Input
21
- }] } });
35
+ args: [{ selector: 'molecules-header', standalone: true, template: `
36
+ <span class="title">{{ store.title() ?? '' }}</span>
37
+ <span class="description">{{ store.description() ?? '' }}</span>
38
+ `, changeDetection: ChangeDetectionStrategy.OnPush, hostDirectives: [
39
+ {
40
+ directive: HeaderMoleculeStore,
41
+ inputs: ['title', 'description']
42
+ }
43
+ ], styles: [":host{display:block}:host{display:flex;flex-direction:row;align-items:flex-end;width:100%;justify-content:flex-start}:host .title{white-space:nowrap;text-overflow:ellipsis;overflow:hidden}:host .description{line-height:1em;font-size:12px;margin-bottom:8px;margin-left:4px}\n"] }]
44
+ }] });
22
45
 
23
46
  /**
24
47
  * Generated bundle index. Do not edit.
25
48
  */
26
49
 
27
- export { HeaderMolecule };
50
+ export { HeaderMolecule, HeaderMoleculeStore };
28
51
  //# sourceMappingURL=ng-atomic-components-molecules-header.mjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"ng-atomic-components-molecules-header.mjs","sources":["../../../../../packages/@ng-atomic/components/src/lib/molecules/header/header.molecule.ts","../../../../../packages/@ng-atomic/components/src/lib/molecules/header/header.molecule.html","../../../../../packages/@ng-atomic/components/src/lib/molecules/header/ng-atomic-components-molecules-header.ts"],"sourcesContent":["import { CommonModule } from '@angular/common';\nimport { Component, ChangeDetectionStrategy, Input } from '@angular/core';\n\n@Component({\n selector: 'molecules-header',\n standalone: true,\n imports: [\n CommonModule,\n ],\n templateUrl: './header.molecule.html',\n styleUrls: ['./header.molecule.scss'],\n changeDetection: ChangeDetectionStrategy.OnPush\n})\nexport class HeaderMolecule {\n\n @Input()\n title = 'title';\n\n @Input()\n description?: string;\n\n}\n","<span class=\"title\">{{ title ?? '' }}</span>\n<span class=\"description\">{{ description ?? '' }}</span>\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":";;;;MAaa,cAAc,CAAA;AAV3B,IAAA,WAAA,GAAA;QAaE,IAAK,CAAA,KAAA,GAAG,OAAO,CAAC;AAKjB,KAAA;+GARY,cAAc,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA,EAAA;mGAAd,cAAc,EAAA,YAAA,EAAA,IAAA,EAAA,QAAA,EAAA,kBAAA,EAAA,MAAA,EAAA,EAAA,KAAA,EAAA,OAAA,EAAA,WAAA,EAAA,aAAA,EAAA,EAAA,QAAA,EAAA,EAAA,EAAA,QAAA,ECb3B,8GAEA,EAAA,MAAA,EAAA,CAAA,8LAAA,CAAA,EAAA,YAAA,EAAA,CAAA,EAAA,IAAA,EAAA,UAAA,EAAA,IAAA,EDKI,YAAY,EAAA,CAAA,EAAA,eAAA,EAAA,EAAA,CAAA,uBAAA,CAAA,MAAA,EAAA,CAAA,CAAA,EAAA;;4FAMH,cAAc,EAAA,UAAA,EAAA,CAAA;kBAV1B,SAAS;+BACE,kBAAkB,EAAA,UAAA,EAChB,IAAI,EACP,OAAA,EAAA;wBACP,YAAY;qBACb,EAGgB,eAAA,EAAA,uBAAuB,CAAC,MAAM,EAAA,QAAA,EAAA,8GAAA,EAAA,MAAA,EAAA,CAAA,8LAAA,CAAA,EAAA,CAAA;8BAK/C,KAAK,EAAA,CAAA;sBADJ,KAAK;gBAIN,WAAW,EAAA,CAAA;sBADV,KAAK;;;AElBR;;AAEG;;;;"}
1
+ {"version":3,"file":"ng-atomic-components-molecules-header.mjs","sources":["../../../../../packages/@ng-atomic/components/src/lib/molecules/header/header.molecule.ts","../../../../../packages/@ng-atomic/components/src/lib/molecules/header/ng-atomic-components-molecules-header.ts"],"sourcesContent":["import { Component, ChangeDetectionStrategy, Directive, input, inject } from '@angular/core';\nimport { InjectableComponent, NgAtomicComponent, TokenizedType } from '@ng-atomic/core';\n\n@TokenizedType()\n@Directive({ standalone: true, selector: 'molecules-header' })\nexport class HeaderMoleculeStore extends InjectableComponent {\n readonly title = input('title');\n readonly description = input('');\n}\n\n@Component({\n selector: 'molecules-header',\n standalone: true,\n template: `\n <span class=\"title\">{{ store.title() ?? '' }}</span>\n <span class=\"description\">{{ store.description() ?? '' }}</span>\n `,\n styleUrls: ['./header.molecule.scss'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n hostDirectives: [\n {\n directive: HeaderMoleculeStore,\n inputs: ['title', 'description']\n }\n ]\n})\nexport class HeaderMolecule extends NgAtomicComponent {\n protected store = inject(HeaderMoleculeStore);\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":";;;;;AAKO,IAAM,mBAAmB,GAAzB,MAAM,mBAAoB,SAAQ,mBAAmB,CAAA;AAArD,IAAA,WAAA,GAAA;;AACI,QAAA,IAAA,CAAA,KAAK,GAAG,KAAK,CAAC,OAAO,CAAC,CAAC;AACvB,QAAA,IAAA,CAAA,WAAW,GAAG,KAAK,CAAC,EAAE,CAAC,CAAC;AAClC,KAAA;8GAHY,mBAAmB,EAAA,IAAA,EAAA,IAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA,EAAA;kGAAnB,mBAAmB,EAAA,YAAA,EAAA,IAAA,EAAA,QAAA,EAAA,kBAAA,EAAA,MAAA,EAAA,EAAA,KAAA,EAAA,EAAA,iBAAA,EAAA,OAAA,EAAA,UAAA,EAAA,OAAA,EAAA,QAAA,EAAA,IAAA,EAAA,UAAA,EAAA,KAAA,EAAA,iBAAA,EAAA,IAAA,EAAA,EAAA,WAAA,EAAA,EAAA,iBAAA,EAAA,aAAA,EAAA,UAAA,EAAA,aAAA,EAAA,QAAA,EAAA,IAAA,EAAA,UAAA,EAAA,KAAA,EAAA,iBAAA,EAAA,IAAA,EAAA,EAAA,EAAA,eAAA,EAAA,IAAA,EAAA,QAAA,EAAA,EAAA,EAAA,CAAA,CAAA,EAAA;;AAAnB,mBAAmB,GAAA,UAAA,CAAA;AAF/B,IAAA,aAAa,EAAE;AAEH,CAAA,EAAA,mBAAmB,CAG/B,CAAA;2FAHY,mBAAmB,EAAA,UAAA,EAAA,CAAA;kBAD/B,SAAS;AAAC,YAAA,IAAA,EAAA,CAAA,EAAE,UAAU,EAAE,IAAI,EAAE,QAAQ,EAAE,kBAAkB,EAAE,CAAA;;AAsBvD,MAAO,cAAe,SAAQ,iBAAiB,CAAA;AAhBrD,IAAA,WAAA,GAAA;;AAiBY,QAAA,IAAA,CAAA,KAAK,GAAG,MAAM,CAAC,mBAAmB,CAAC,CAAC;AAC/C,KAAA;8GAFY,cAAc,EAAA,IAAA,EAAA,IAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA,EAAA;kGAAd,cAAc,EAAA,YAAA,EAAA,IAAA,EAAA,QAAA,EAAA,kBAAA,EAAA,eAAA,EAAA,IAAA,EAAA,cAAA,EAAA,CAAA,EAAA,SAAA,EArBd,mBAAmB,EAQpB,MAAA,EAAA,CAAA,OAAA,EAAA,OAAA,EAAA,aAAA,EAAA,aAAA,CAAA,EAAA,CAAA,EAAA,QAAA,EAAA,EAAA,EAAA,QAAA,EAAA,CAAA;;;AAGT,EAAA,CAAA,EAAA,QAAA,EAAA,IAAA,EAAA,MAAA,EAAA,CAAA,oRAAA,CAAA,EAAA,eAAA,EAAA,EAAA,CAAA,uBAAA,CAAA,MAAA,EAAA,CAAA,CAAA,EAAA;;2FAUU,cAAc,EAAA,UAAA,EAAA,CAAA;kBAhB1B,SAAS;+BACE,kBAAkB,EAAA,UAAA,EAChB,IAAI,EACN,QAAA,EAAA,CAAA;;;GAGT,EAEgB,eAAA,EAAA,uBAAuB,CAAC,MAAM,EAC/B,cAAA,EAAA;AACd,wBAAA;AACE,4BAAA,SAAS,EAAE,mBAAmB;AAC9B,4BAAA,MAAM,EAAE,CAAC,OAAO,EAAE,aAAa,CAAC;AACjC,yBAAA;AACF,qBAAA,EAAA,MAAA,EAAA,CAAA,oRAAA,CAAA,EAAA,CAAA;;;ACxBH;;AAEG;;;;"}
@@ -0,0 +1,62 @@
1
+ import { __decorate } from 'tslib';
2
+ import * as i0 from '@angular/core';
3
+ import { input, Directive, inject, Component, ChangeDetectionStrategy } from '@angular/core';
4
+ import { makeConfig } from '@ng-atomic/common/services/ui';
5
+ import { InjectableComponent, _computed, TokenizedType } from '@ng-atomic/core';
6
+
7
+ var LoadingBoxMoleculeStore_1;
8
+ let LoadingBoxMoleculeStore = class LoadingBoxMoleculeStore extends InjectableComponent {
9
+ constructor() {
10
+ super(...arguments);
11
+ this.config = LoadingBoxMoleculeStore_1.Config.inject();
12
+ this.loadingMessage = input(_computed(() => this.config().loadingMessage));
13
+ }
14
+ static { LoadingBoxMoleculeStore_1 = this; }
15
+ static { this.Config = makeConfig(() => {
16
+ return () => ({
17
+ loadingMessage: 'initializing...'
18
+ });
19
+ }, ['components', 'molecules', 'loading-box']); }
20
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.2.2", ngImport: i0, type: LoadingBoxMoleculeStore, deps: null, target: i0.ɵɵFactoryTarget.Directive }); }
21
+ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "17.1.0", version: "17.2.2", type: LoadingBoxMoleculeStore, isStandalone: true, selector: "molecules-loading-box", inputs: { loadingMessage: { classPropertyName: "loadingMessage", publicName: "loadingMessage", isSignal: true, isRequired: false, transformFunction: null } }, usesInheritance: true, ngImport: i0 }); }
22
+ };
23
+ LoadingBoxMoleculeStore = LoadingBoxMoleculeStore_1 = __decorate([
24
+ TokenizedType()
25
+ ], LoadingBoxMoleculeStore);
26
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.2.2", ngImport: i0, type: LoadingBoxMoleculeStore, decorators: [{
27
+ type: Directive,
28
+ args: [{ standalone: true, selector: 'molecules-loading-box' }]
29
+ }] });
30
+ class LoadingBoxMolecule {
31
+ constructor() {
32
+ this.store = inject(LoadingBoxMoleculeStore);
33
+ }
34
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.2.2", ngImport: i0, type: LoadingBoxMolecule, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
35
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "17.2.2", type: LoadingBoxMolecule, isStandalone: true, selector: "molecules-loading-box", hostDirectives: [{ directive: LoadingBoxMoleculeStore, inputs: ["loadingMessage", "loadingMessage"] }], ngImport: i0, template: `
36
+ <span class="initializing">決済フォーム初期化中</span>
37
+ <div class="loading-dots">
38
+ @for (i of [0, 1, 2]; track $index) { <div class="dot"></div> }
39
+ </div>
40
+ `, isInline: true, styles: [":host{display:block;--mdc-outlined-text-field-label-text-color-SCOPED-IN-definition-list-gBL6: rgba(0, 0, 0, .6);--mdc-outlined-text-field-label-text-color-SCOPED-IN-definition-list-gBL6-SCOPED-IN-loading-box-5aSK: var(--mdc-outlined-text-field-label-text-color-SCOPED-IN-definition-list-gBL6)}:host{display:flex;width:100%;justify-content:center}:host .initializing{color:var(--mdc-outlined-text-field-label-text-color-SCOPED-IN-definition-list-gBL6-SCOPED-IN-loading-box-5aSK);font-size:12px}@keyframes dotFlashing{0%,to{opacity:0}50%{opacity:1}}:host .loading-box{display:flex;justify-content:center;align-items:center;flex-direction:column}:host .loading-dots .dot{height:10px;width:10px;margin:0 5px;background-color:#333;border-radius:50%;display:inline-block;animation:dotFlashing 1s infinite}:host .loading-dots .dot:nth-child(1){animation-delay:0s}:host .loading-dots .dot:nth-child(2){animation-delay:.2s}:host .loading-dots .dot:nth-child(3){animation-delay:.4s}\n"], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
41
+ }
42
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.2.2", ngImport: i0, type: LoadingBoxMolecule, decorators: [{
43
+ type: Component,
44
+ args: [{ selector: 'molecules-loading-box', standalone: true, imports: [], template: `
45
+ <span class="initializing">決済フォーム初期化中</span>
46
+ <div class="loading-dots">
47
+ @for (i of [0, 1, 2]; track $index) { <div class="dot"></div> }
48
+ </div>
49
+ `, changeDetection: ChangeDetectionStrategy.OnPush, hostDirectives: [
50
+ {
51
+ directive: LoadingBoxMoleculeStore,
52
+ inputs: ['loadingMessage'],
53
+ }
54
+ ], styles: [":host{display:block;--mdc-outlined-text-field-label-text-color-SCOPED-IN-definition-list-gBL6: rgba(0, 0, 0, .6);--mdc-outlined-text-field-label-text-color-SCOPED-IN-definition-list-gBL6-SCOPED-IN-loading-box-5aSK: var(--mdc-outlined-text-field-label-text-color-SCOPED-IN-definition-list-gBL6)}:host{display:flex;width:100%;justify-content:center}:host .initializing{color:var(--mdc-outlined-text-field-label-text-color-SCOPED-IN-definition-list-gBL6-SCOPED-IN-loading-box-5aSK);font-size:12px}@keyframes dotFlashing{0%,to{opacity:0}50%{opacity:1}}:host .loading-box{display:flex;justify-content:center;align-items:center;flex-direction:column}:host .loading-dots .dot{height:10px;width:10px;margin:0 5px;background-color:#333;border-radius:50%;display:inline-block;animation:dotFlashing 1s infinite}:host .loading-dots .dot:nth-child(1){animation-delay:0s}:host .loading-dots .dot:nth-child(2){animation-delay:.2s}:host .loading-dots .dot:nth-child(3){animation-delay:.4s}\n"] }]
55
+ }] });
56
+
57
+ /**
58
+ * Generated bundle index. Do not edit.
59
+ */
60
+
61
+ export { LoadingBoxMolecule, LoadingBoxMoleculeStore };
62
+ //# sourceMappingURL=ng-atomic-components-molecules-loading-box.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ng-atomic-components-molecules-loading-box.mjs","sources":["../../../../../packages/@ng-atomic/components/src/lib/molecules/loading-box/loading-box.molecule.ts","../../../../../packages/@ng-atomic/components/src/lib/molecules/loading-box/ng-atomic-components-molecules-loading-box.ts"],"sourcesContent":["import { ChangeDetectionStrategy, Component, Directive, inject, input } from '@angular/core';\nimport { makeConfig } from '@ng-atomic/common/services/ui';\nimport { _computed, InjectableComponent, TokenizedType } from '@ng-atomic/core';\n\n@TokenizedType()\n@Directive({ standalone: true, selector: 'molecules-loading-box' })\nexport class LoadingBoxMoleculeStore extends InjectableComponent {\n static readonly Config = makeConfig(() => {\n return () => ({\n loadingMessage: 'initializing...'\n });\n }, ['components', 'molecules', 'loading-box']);\n readonly config = LoadingBoxMoleculeStore.Config.inject();\n readonly loadingMessage = input(_computed(() => this.config().loadingMessage));\n}\n\n@Component({\n selector: 'molecules-loading-box',\n standalone: true,\n imports: [],\n template: `\n <span class=\"initializing\">決済フォーム初期化中</span>\n <div class=\"loading-dots\">\n @for (i of [0, 1, 2]; track $index) { <div class=\"dot\"></div> }\n </div>\n `,\n styleUrl: './loading-box.molecule.scss',\n changeDetection: ChangeDetectionStrategy.OnPush,\n hostDirectives: [\n {\n directive: LoadingBoxMoleculeStore,\n inputs: ['loadingMessage'],\n }\n ]\n})\nexport class LoadingBoxMolecule {\n protected store = inject(LoadingBoxMoleculeStore);\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":";;;;;;;AAMO,IAAM,uBAAuB,GAA7B,MAAM,uBAAwB,SAAQ,mBAAmB,CAAA;AAAzD,IAAA,WAAA,GAAA;;AAMI,QAAA,IAAA,CAAA,MAAM,GAAG,yBAAuB,CAAC,MAAM,CAAC,MAAM,EAAE,CAAC;AACjD,QAAA,IAAA,CAAA,cAAc,GAAG,KAAK,CAAC,SAAS,CAAC,MAAM,IAAI,CAAC,MAAM,EAAE,CAAC,cAAc,CAAC,CAAC,CAAC;AAChF,KAAA;;AAPiB,IAAA,SAAA,IAAA,CAAA,MAAM,GAAG,UAAU,CAAC,MAAK;QACvC,OAAO,OAAO;AACZ,YAAA,cAAc,EAAE,iBAAiB;AAClC,SAAA,CAAC,CAAC;KACJ,EAAE,CAAC,YAAY,EAAE,WAAW,EAAE,aAAa,CAAC,CAJvB,CAIyB,EAAA;8GALpC,uBAAuB,EAAA,IAAA,EAAA,IAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA,EAAA;kGAAvB,uBAAuB,EAAA,YAAA,EAAA,IAAA,EAAA,QAAA,EAAA,uBAAA,EAAA,MAAA,EAAA,EAAA,cAAA,EAAA,EAAA,iBAAA,EAAA,gBAAA,EAAA,UAAA,EAAA,gBAAA,EAAA,QAAA,EAAA,IAAA,EAAA,UAAA,EAAA,KAAA,EAAA,iBAAA,EAAA,IAAA,EAAA,EAAA,EAAA,eAAA,EAAA,IAAA,EAAA,QAAA,EAAA,EAAA,EAAA,CAAA,CAAA,EAAA;;AAAvB,uBAAuB,GAAA,yBAAA,GAAA,UAAA,CAAA;AAFnC,IAAA,aAAa,EAAE;AAEH,CAAA,EAAA,uBAAuB,CAQnC,CAAA;2FARY,uBAAuB,EAAA,UAAA,EAAA,CAAA;kBADnC,SAAS;AAAC,YAAA,IAAA,EAAA,CAAA,EAAE,UAAU,EAAE,IAAI,EAAE,QAAQ,EAAE,uBAAuB,EAAE,CAAA;;MA8BrD,kBAAkB,CAAA;AAnB/B,IAAA,WAAA,GAAA;AAoBY,QAAA,IAAA,CAAA,KAAK,GAAG,MAAM,CAAC,uBAAuB,CAAC,CAAC;AACnD,KAAA;8GAFY,kBAAkB,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA,EAAA;kGAAlB,kBAAkB,EAAA,YAAA,EAAA,IAAA,EAAA,QAAA,EAAA,uBAAA,EAAA,cAAA,EAAA,CAAA,EAAA,SAAA,EA7BlB,uBAAuB,EAcxB,MAAA,EAAA,CAAA,gBAAA,EAAA,gBAAA,CAAA,EAAA,CAAA,EAAA,QAAA,EAAA,EAAA,EAAA,QAAA,EAAA,CAAA;;;;;AAKT,EAAA,CAAA,EAAA,QAAA,EAAA,IAAA,EAAA,MAAA,EAAA,CAAA,i9BAAA,CAAA,EAAA,eAAA,EAAA,EAAA,CAAA,uBAAA,CAAA,MAAA,EAAA,CAAA,CAAA,EAAA;;2FAUU,kBAAkB,EAAA,UAAA,EAAA,CAAA;kBAnB9B,SAAS;AACE,YAAA,IAAA,EAAA,CAAA,EAAA,QAAA,EAAA,uBAAuB,EACrB,UAAA,EAAA,IAAI,EACP,OAAA,EAAA,EAAE,EACD,QAAA,EAAA,CAAA;;;;;GAKT,EAEgB,eAAA,EAAA,uBAAuB,CAAC,MAAM,EAC/B,cAAA,EAAA;AACd,wBAAA;AACE,4BAAA,SAAS,EAAE,uBAAuB;4BAClC,MAAM,EAAE,CAAC,gBAAgB,CAAC;AAC3B,yBAAA;AACF,qBAAA,EAAA,MAAA,EAAA,CAAA,i9BAAA,CAAA,EAAA,CAAA;;;ACjCH;;AAEG;;;;"}