@ng-atomic/components 18.2.1 → 18.5.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (315) hide show
  1. package/atoms/atoms.module.d.ts +6 -2
  2. package/atoms/smart-menu-button/smart-menu-button.atom.d.ts +9 -8
  3. package/components.module.d.ts +2 -12
  4. package/esm2022/atoms/atoms.module.mjs +7 -2
  5. package/esm2022/atoms/icon/icon.atom.mjs +2 -2
  6. package/esm2022/atoms/smart-menu-button/smart-menu-button.atom.mjs +92 -124
  7. package/esm2022/components.module.mjs +20 -41
  8. package/esm2022/extras/editor/editor.component.mjs +78 -46
  9. package/esm2022/frames/app/app.frame.mjs +132 -70
  10. package/esm2022/frames/auto-layout/auto-layout.frame.mjs +29 -7
  11. package/esm2022/frames/columns/columns.frame.mjs +2 -2
  12. package/esm2022/frames/divider/divider.frame.mjs +2 -2
  13. package/esm2022/frames/drawer/drawer.frame.mjs +2 -2
  14. package/esm2022/frames/entrance/entrance.frame.mjs +2 -2
  15. package/esm2022/frames/fab/fab.frame.mjs +2 -2
  16. package/esm2022/frames/frames.module.mjs +19 -14
  17. package/esm2022/frames/line-up/line-up.animations.mjs +3 -7
  18. package/esm2022/frames/line-up/line-up.frame.mjs +2 -2
  19. package/esm2022/frames/loading/loading.frame.mjs +2 -2
  20. package/esm2022/frames/progress-bar/index.mjs +2 -0
  21. package/esm2022/frames/progress-bar/ng-atomic-components-frames-progress-bar.mjs +5 -0
  22. package/esm2022/frames/progress-bar/progress-bar.frame.mjs +53 -0
  23. package/esm2022/frames/router-outlet/router-outlet.frame.mjs +96 -41
  24. package/esm2022/frames/scroll/scroll.frame.mjs +32 -14
  25. package/esm2022/frames/scroll-v2/index.mjs +2 -2
  26. package/esm2022/frames/side-app/index.mjs +2 -0
  27. package/esm2022/frames/side-app/ng-atomic-components-frames-side-app.mjs +5 -0
  28. package/esm2022/frames/side-app/side-app.frame.mjs +74 -0
  29. package/esm2022/frames/side-nav/side-nav.frame.mjs +27 -21
  30. package/esm2022/frames/smart-menu/smart-menu.frame.mjs +2 -2
  31. package/esm2022/frames/tabs/tabs.frame.mjs +13 -7
  32. package/esm2022/frames/vertical-hide/vertical-hide.frame.mjs +11 -18
  33. package/esm2022/molecules/action-input-field/action-input-field.molecule.mjs +2 -2
  34. package/esm2022/molecules/actions-column/actions-column.molecule.mjs +13 -7
  35. package/esm2022/molecules/checkbox-column/checkbox-column.molecule.mjs +48 -21
  36. package/esm2022/molecules/date-input-field/date-input-field.molecule.mjs +2 -2
  37. package/esm2022/molecules/date-range-input-field/date-range-input-field.molecule.mjs +2 -2
  38. package/esm2022/molecules/file-input-field/file-input-field.molecule.mjs +2 -2
  39. package/esm2022/molecules/grid-item/grid-item.molecule.mjs +2 -2
  40. package/esm2022/molecules/list-item/index.mjs +2 -0
  41. package/esm2022/molecules/list-item/list-item.molecule.mjs +198 -0
  42. package/esm2022/molecules/list-item/ng-atomic-components-molecules-list-item.mjs +5 -0
  43. package/esm2022/molecules/loading-box/loading-box.molecule.mjs +2 -2
  44. package/esm2022/molecules/molecules.module.mjs +19 -14
  45. package/esm2022/molecules/navigation-list-item/navigation-list-item.molecule.mjs +2 -2
  46. package/esm2022/molecules/select-input-field/select-input-field.molecule.mjs +9 -5
  47. package/esm2022/molecules/smart-column/smart-column.molecule.mjs +129 -43
  48. package/esm2022/molecules/tree-column/tree-column.molecule.mjs +37 -25
  49. package/esm2022/organisms/action-buttons-section/action-buttons-section.organism.mjs +2 -2
  50. package/esm2022/organisms/action-input-section/action-input-section.organism.mjs +2 -2
  51. package/esm2022/organisms/agreement-input-section/agreement-input-section.organism.mjs +3 -3
  52. package/esm2022/organisms/card-input-section/card-input-section.organism.mjs +2 -2
  53. package/esm2022/organisms/cvc-and-exp-input-section/cvc-and-exp-input-section.organism.mjs +2 -2
  54. package/esm2022/organisms/date-input-section/date-input-section.organism.mjs +4 -4
  55. package/esm2022/organisms/date-range-input-section/date-range-input-section.organism.mjs +4 -4
  56. package/esm2022/organisms/definition-list/definition-list.organism.mjs +2 -2
  57. package/esm2022/organisms/file-input-section/file-input-section.organism.mjs +2 -2
  58. package/esm2022/organisms/filters-section/filters-section.organism.mjs +5 -5
  59. package/esm2022/organisms/graphql-editor/graphql-editor.organism.mjs +1 -1
  60. package/esm2022/organisms/grid-cards-section/grid-cards-section.organism.mjs +2 -2
  61. package/esm2022/organisms/heading/heading.organism.mjs +2 -2
  62. package/esm2022/{sheets/actions → organisms/list}/index.mjs +2 -2
  63. package/esm2022/organisms/list/list.organism.mjs +161 -0
  64. package/esm2022/{sheets/actions/ng-atomic-components-sheets-actions.mjs → organisms/list/ng-atomic-components-organisms-list.mjs} +1 -1
  65. package/esm2022/organisms/menu-footer/menu-footer.organism.mjs +2 -2
  66. package/esm2022/organisms/menu-header/menu-header.organism.mjs +2 -2
  67. package/esm2022/organisms/mermaid-section/mermaid-section.organism.mjs +39 -33
  68. package/esm2022/organisms/messages-section/messages-section.organism.mjs +2 -2
  69. package/esm2022/organisms/navigation-list/navigation-list.organism.mjs +2 -2
  70. package/esm2022/organisms/navigator/navigator.organism.mjs +48 -29
  71. package/esm2022/organisms/number-input-section/number-input-section.organism.mjs +2 -2
  72. package/esm2022/organisms/organisms.module.mjs +67 -62
  73. package/esm2022/organisms/paginator/paginator.organism.mjs +2 -2
  74. package/esm2022/organisms/password-input-section/password-input-section.organism.mjs +2 -2
  75. package/esm2022/organisms/select-input-section/select-input-section.organism.mjs +4 -4
  76. package/esm2022/organisms/selection-list/selection-list.organism.mjs +1 -1
  77. package/esm2022/organisms/slider-input-section/slider-input-section.organism.mjs +4 -4
  78. package/esm2022/organisms/social-login-section/social-login-section.organism.mjs +2 -2
  79. package/esm2022/organisms/table/index.mjs +2 -1
  80. package/esm2022/organisms/table/table.helpers.mjs +4 -4
  81. package/esm2022/organisms/table/table.organism.mjs +152 -141
  82. package/esm2022/organisms/text-input-section/text-input-section.organism.mjs +4 -4
  83. package/esm2022/organisms/textarea-section/textarea-section.organism.mjs +2 -2
  84. package/esm2022/organisms/thread-messages-section/thread-messages-section.organism.mjs +2 -2
  85. package/esm2022/organisms/tree-list/index.mjs +2 -0
  86. package/esm2022/organisms/tree-list/ng-atomic-components-organisms-tree-list.mjs +5 -0
  87. package/esm2022/organisms/tree-list/tree-list.organism.mjs +125 -0
  88. package/esm2022/pages/_index/index.page.mjs +172 -70
  89. package/esm2022/pages/columns/columns.page.mjs +10 -9
  90. package/esm2022/pages/form/form.page.mjs +32 -15
  91. package/esm2022/pages/pages.module.mjs +10 -7
  92. package/esm2022/pages/terms/terms.page.mjs +2 -2
  93. package/esm2022/templates/_index/index.template.mjs +276 -155
  94. package/esm2022/templates/background/background.template.mjs +2 -2
  95. package/esm2022/templates/code-editor/code-editor.template.mjs +52 -15
  96. package/esm2022/templates/columns/columns.template.mjs +6 -4
  97. package/esm2022/templates/entrance/entrance.template.mjs +28 -25
  98. package/esm2022/templates/form/form.builder.mjs +93 -71
  99. package/esm2022/templates/form/form.template.mjs +47 -28
  100. package/esm2022/templates/icon-button-menu/icon-button-menu.template.mjs +69 -16
  101. package/esm2022/templates/menu/menu.template.mjs +2 -2
  102. package/esm2022/templates/messages/messages.template.mjs +71 -65
  103. package/esm2022/templates/selection/selection.template.mjs +2 -2
  104. package/esm2022/templates/settings/settings.template.mjs +2 -2
  105. package/esm2022/templates/templates.module.mjs +17 -25
  106. package/extras/editor/editor.component.d.ts +19 -10
  107. package/fesm2022/ng-atomic-components-atoms-icon.mjs +2 -2
  108. package/fesm2022/ng-atomic-components-atoms-smart-menu-button.mjs +90 -123
  109. package/fesm2022/ng-atomic-components-atoms-smart-menu-button.mjs.map +1 -1
  110. package/fesm2022/ng-atomic-components-atoms.mjs +7 -2
  111. package/fesm2022/ng-atomic-components-atoms.mjs.map +1 -1
  112. package/fesm2022/ng-atomic-components-extras-editor.mjs +79 -47
  113. package/fesm2022/ng-atomic-components-extras-editor.mjs.map +1 -1
  114. package/fesm2022/ng-atomic-components-frames-app.mjs +131 -69
  115. package/fesm2022/ng-atomic-components-frames-app.mjs.map +1 -1
  116. package/fesm2022/ng-atomic-components-frames-auto-layout.mjs +29 -7
  117. package/fesm2022/ng-atomic-components-frames-auto-layout.mjs.map +1 -1
  118. package/fesm2022/ng-atomic-components-frames-columns.mjs +2 -2
  119. package/fesm2022/ng-atomic-components-frames-divider.mjs +2 -2
  120. package/fesm2022/ng-atomic-components-frames-drawer.mjs +2 -2
  121. package/fesm2022/ng-atomic-components-frames-entrance.mjs +2 -2
  122. package/fesm2022/ng-atomic-components-frames-fab.mjs +2 -2
  123. package/fesm2022/ng-atomic-components-frames-line-up.mjs +4 -8
  124. package/fesm2022/ng-atomic-components-frames-line-up.mjs.map +1 -1
  125. package/fesm2022/ng-atomic-components-frames-loading.mjs +2 -2
  126. package/fesm2022/ng-atomic-components-frames-progress-bar.mjs +60 -0
  127. package/fesm2022/ng-atomic-components-frames-progress-bar.mjs.map +1 -0
  128. package/fesm2022/ng-atomic-components-frames-router-outlet.mjs +96 -41
  129. package/fesm2022/ng-atomic-components-frames-router-outlet.mjs.map +1 -1
  130. package/fesm2022/ng-atomic-components-frames-scroll-v2.mjs +1 -48
  131. package/fesm2022/ng-atomic-components-frames-scroll-v2.mjs.map +1 -1
  132. package/fesm2022/ng-atomic-components-frames-scroll.mjs +31 -13
  133. package/fesm2022/ng-atomic-components-frames-scroll.mjs.map +1 -1
  134. package/fesm2022/ng-atomic-components-frames-side-app.mjs +81 -0
  135. package/fesm2022/ng-atomic-components-frames-side-app.mjs.map +1 -0
  136. package/fesm2022/ng-atomic-components-frames-side-nav.mjs +26 -20
  137. package/fesm2022/ng-atomic-components-frames-side-nav.mjs.map +1 -1
  138. package/fesm2022/ng-atomic-components-frames-smart-menu.mjs +2 -2
  139. package/fesm2022/ng-atomic-components-frames-tabs.mjs +12 -6
  140. package/fesm2022/ng-atomic-components-frames-tabs.mjs.map +1 -1
  141. package/fesm2022/ng-atomic-components-frames-vertical-hide.mjs +10 -17
  142. package/fesm2022/ng-atomic-components-frames-vertical-hide.mjs.map +1 -1
  143. package/fesm2022/ng-atomic-components-frames.mjs +19 -14
  144. package/fesm2022/ng-atomic-components-frames.mjs.map +1 -1
  145. package/fesm2022/ng-atomic-components-molecules-action-input-field.mjs +1 -1
  146. package/fesm2022/ng-atomic-components-molecules-action-input-field.mjs.map +1 -1
  147. package/fesm2022/ng-atomic-components-molecules-actions-column.mjs +12 -6
  148. package/fesm2022/ng-atomic-components-molecules-actions-column.mjs.map +1 -1
  149. package/fesm2022/ng-atomic-components-molecules-checkbox-column.mjs +47 -21
  150. package/fesm2022/ng-atomic-components-molecules-checkbox-column.mjs.map +1 -1
  151. package/fesm2022/ng-atomic-components-molecules-date-input-field.mjs +2 -2
  152. package/fesm2022/ng-atomic-components-molecules-date-range-input-field.mjs +2 -2
  153. package/fesm2022/ng-atomic-components-molecules-file-input-field.mjs +1 -1
  154. package/fesm2022/ng-atomic-components-molecules-file-input-field.mjs.map +1 -1
  155. package/fesm2022/ng-atomic-components-molecules-grid-item.mjs +2 -2
  156. package/fesm2022/ng-atomic-components-molecules-list-item.mjs +203 -0
  157. package/fesm2022/ng-atomic-components-molecules-list-item.mjs.map +1 -0
  158. package/fesm2022/ng-atomic-components-molecules-loading-box.mjs +2 -2
  159. package/fesm2022/ng-atomic-components-molecules-navigation-list-item.mjs +2 -2
  160. package/fesm2022/ng-atomic-components-molecules-select-input-field.mjs +8 -4
  161. package/fesm2022/ng-atomic-components-molecules-select-input-field.mjs.map +1 -1
  162. package/fesm2022/ng-atomic-components-molecules-smart-column.mjs +128 -43
  163. package/fesm2022/ng-atomic-components-molecules-smart-column.mjs.map +1 -1
  164. package/fesm2022/ng-atomic-components-molecules-tree-column.mjs +36 -24
  165. package/fesm2022/ng-atomic-components-molecules-tree-column.mjs.map +1 -1
  166. package/fesm2022/ng-atomic-components-molecules.mjs +19 -14
  167. package/fesm2022/ng-atomic-components-molecules.mjs.map +1 -1
  168. package/fesm2022/ng-atomic-components-organisms-action-buttons-section.mjs +2 -2
  169. package/fesm2022/ng-atomic-components-organisms-action-input-section.mjs +2 -2
  170. package/fesm2022/ng-atomic-components-organisms-agreement-input-section.mjs +2 -2
  171. package/fesm2022/ng-atomic-components-organisms-agreement-input-section.mjs.map +1 -1
  172. package/fesm2022/ng-atomic-components-organisms-card-input-section.mjs +2 -2
  173. package/fesm2022/ng-atomic-components-organisms-cvc-and-exp-input-section.mjs +2 -2
  174. package/fesm2022/ng-atomic-components-organisms-date-input-section.mjs +3 -3
  175. package/fesm2022/ng-atomic-components-organisms-date-input-section.mjs.map +1 -1
  176. package/fesm2022/ng-atomic-components-organisms-date-range-input-section.mjs +3 -3
  177. package/fesm2022/ng-atomic-components-organisms-date-range-input-section.mjs.map +1 -1
  178. package/fesm2022/ng-atomic-components-organisms-definition-list.mjs +2 -2
  179. package/fesm2022/ng-atomic-components-organisms-file-input-section.mjs +2 -2
  180. package/fesm2022/ng-atomic-components-organisms-filters-section.mjs +4 -4
  181. package/fesm2022/ng-atomic-components-organisms-filters-section.mjs.map +1 -1
  182. package/fesm2022/ng-atomic-components-organisms-graphql-editor.mjs +1 -1
  183. package/fesm2022/ng-atomic-components-organisms-graphql-editor.mjs.map +1 -1
  184. package/fesm2022/ng-atomic-components-organisms-grid-cards-section.mjs +2 -2
  185. package/fesm2022/ng-atomic-components-organisms-heading.mjs +2 -2
  186. package/fesm2022/ng-atomic-components-organisms-list.mjs +166 -0
  187. package/fesm2022/ng-atomic-components-organisms-list.mjs.map +1 -0
  188. package/fesm2022/ng-atomic-components-organisms-menu-footer.mjs +2 -2
  189. package/fesm2022/ng-atomic-components-organisms-menu-header.mjs +2 -2
  190. package/fesm2022/ng-atomic-components-organisms-mermaid-section.mjs +38 -32
  191. package/fesm2022/ng-atomic-components-organisms-mermaid-section.mjs.map +1 -1
  192. package/fesm2022/ng-atomic-components-organisms-messages-section.mjs +2 -2
  193. package/fesm2022/ng-atomic-components-organisms-navigation-list.mjs +2 -2
  194. package/fesm2022/ng-atomic-components-organisms-navigator.mjs +47 -28
  195. package/fesm2022/ng-atomic-components-organisms-navigator.mjs.map +1 -1
  196. package/fesm2022/ng-atomic-components-organisms-number-input-section.mjs +2 -2
  197. package/fesm2022/ng-atomic-components-organisms-number-input-section.mjs.map +1 -1
  198. package/fesm2022/ng-atomic-components-organisms-paginator.mjs +2 -2
  199. package/fesm2022/ng-atomic-components-organisms-password-input-section.mjs +2 -2
  200. package/fesm2022/ng-atomic-components-organisms-password-input-section.mjs.map +1 -1
  201. package/fesm2022/ng-atomic-components-organisms-select-input-section.mjs +3 -3
  202. package/fesm2022/ng-atomic-components-organisms-select-input-section.mjs.map +1 -1
  203. package/fesm2022/ng-atomic-components-organisms-selection-list.mjs +1 -1
  204. package/fesm2022/ng-atomic-components-organisms-selection-list.mjs.map +1 -1
  205. package/fesm2022/ng-atomic-components-organisms-slider-input-section.mjs +3 -3
  206. package/fesm2022/ng-atomic-components-organisms-slider-input-section.mjs.map +1 -1
  207. package/fesm2022/ng-atomic-components-organisms-social-login-section.mjs +2 -2
  208. package/fesm2022/ng-atomic-components-organisms-table.mjs +156 -145
  209. package/fesm2022/ng-atomic-components-organisms-table.mjs.map +1 -1
  210. package/fesm2022/ng-atomic-components-organisms-text-input-section.mjs +3 -3
  211. package/fesm2022/ng-atomic-components-organisms-text-input-section.mjs.map +1 -1
  212. package/fesm2022/ng-atomic-components-organisms-textarea-section.mjs +2 -2
  213. package/fesm2022/ng-atomic-components-organisms-textarea-section.mjs.map +1 -1
  214. package/fesm2022/ng-atomic-components-organisms-thread-messages-section.mjs +2 -2
  215. package/fesm2022/ng-atomic-components-organisms-tree-list.mjs +132 -0
  216. package/fesm2022/ng-atomic-components-organisms-tree-list.mjs.map +1 -0
  217. package/fesm2022/ng-atomic-components-organisms.mjs +67 -62
  218. package/fesm2022/ng-atomic-components-organisms.mjs.map +1 -1
  219. package/fesm2022/ng-atomic-components-pages-_index.mjs +171 -70
  220. package/fesm2022/ng-atomic-components-pages-_index.mjs.map +1 -1
  221. package/fesm2022/ng-atomic-components-pages-columns.mjs +9 -8
  222. package/fesm2022/ng-atomic-components-pages-columns.mjs.map +1 -1
  223. package/fesm2022/ng-atomic-components-pages-form.mjs +31 -14
  224. package/fesm2022/ng-atomic-components-pages-form.mjs.map +1 -1
  225. package/fesm2022/ng-atomic-components-pages-terms.mjs +1 -1
  226. package/fesm2022/ng-atomic-components-pages-terms.mjs.map +1 -1
  227. package/fesm2022/ng-atomic-components-pages.mjs +10 -7
  228. package/fesm2022/ng-atomic-components-pages.mjs.map +1 -1
  229. package/fesm2022/ng-atomic-components-templates-_index.mjs +276 -155
  230. package/fesm2022/ng-atomic-components-templates-_index.mjs.map +1 -1
  231. package/fesm2022/ng-atomic-components-templates-background.mjs +2 -2
  232. package/fesm2022/ng-atomic-components-templates-code-editor.mjs +51 -14
  233. package/fesm2022/ng-atomic-components-templates-code-editor.mjs.map +1 -1
  234. package/fesm2022/ng-atomic-components-templates-columns.mjs +5 -3
  235. package/fesm2022/ng-atomic-components-templates-columns.mjs.map +1 -1
  236. package/fesm2022/ng-atomic-components-templates-entrance.mjs +27 -24
  237. package/fesm2022/ng-atomic-components-templates-entrance.mjs.map +1 -1
  238. package/fesm2022/ng-atomic-components-templates-form.mjs +139 -99
  239. package/fesm2022/ng-atomic-components-templates-form.mjs.map +1 -1
  240. package/fesm2022/ng-atomic-components-templates-icon-button-menu.mjs +68 -15
  241. package/fesm2022/ng-atomic-components-templates-icon-button-menu.mjs.map +1 -1
  242. package/fesm2022/ng-atomic-components-templates-menu.mjs +2 -2
  243. package/fesm2022/ng-atomic-components-templates-messages.mjs +71 -65
  244. package/fesm2022/ng-atomic-components-templates-messages.mjs.map +1 -1
  245. package/fesm2022/ng-atomic-components-templates-selection.mjs +2 -2
  246. package/fesm2022/ng-atomic-components-templates-settings.mjs +2 -2
  247. package/fesm2022/ng-atomic-components-templates.mjs +17 -25
  248. package/fesm2022/ng-atomic-components-templates.mjs.map +1 -1
  249. package/fesm2022/ng-atomic-components.mjs +20 -41
  250. package/fesm2022/ng-atomic-components.mjs.map +1 -1
  251. package/frames/app/app.frame.d.ts +14 -1
  252. package/frames/auto-layout/auto-layout.frame.d.ts +7 -1
  253. package/frames/frames.module.d.ts +3 -20
  254. package/frames/progress-bar/index.d.ts +1 -0
  255. package/frames/progress-bar/progress-bar.frame.d.ts +14 -0
  256. package/frames/router-outlet/router-outlet.frame.d.ts +20 -9
  257. package/frames/scroll/scroll.frame.d.ts +5 -1
  258. package/frames/scroll-v2/index.d.ts +1 -1
  259. package/frames/side-app/index.d.ts +1 -0
  260. package/frames/side-app/side-app.frame.d.ts +20 -0
  261. package/frames/side-nav/side-nav.frame.d.ts +6 -2
  262. package/frames/tabs/tabs.frame.d.ts +2 -1
  263. package/frames/vertical-hide/vertical-hide.frame.d.ts +2 -2
  264. package/molecules/actions-column/actions-column.molecule.d.ts +3 -2
  265. package/molecules/checkbox-column/checkbox-column.molecule.d.ts +12 -4
  266. package/molecules/list-item/index.d.ts +1 -0
  267. package/molecules/list-item/list-item.molecule.d.ts +50 -0
  268. package/molecules/molecules.module.d.ts +25 -0
  269. package/molecules/smart-column/smart-column.molecule.d.ts +34 -9
  270. package/molecules/tree-column/tree-column.molecule.d.ts +6 -2
  271. package/organisms/list/index.d.ts +1 -0
  272. package/organisms/{smart-list/smart-list.organism.d.ts → list/list.organism.d.ts} +11 -11
  273. package/organisms/mermaid-section/mermaid-section.organism.d.ts +10 -10
  274. package/organisms/navigator/navigator.organism.d.ts +8 -5
  275. package/organisms/organisms.module.d.ts +57 -2
  276. package/organisms/table/index.d.ts +1 -0
  277. package/organisms/table/table.helpers.d.ts +1 -1
  278. package/organisms/table/table.organism.d.ts +32 -1
  279. package/organisms/tree-list/index.d.ts +1 -0
  280. package/organisms/tree-list/tree-list.organism.d.ts +33 -0
  281. package/package.json +67 -55
  282. package/pages/_index/index.page.d.ts +72 -43
  283. package/pages/columns/columns.page.d.ts +5 -2
  284. package/pages/form/form.page.d.ts +20 -11
  285. package/pages/pages.module.d.ts +1 -0
  286. package/templates/_index/index.template.d.ts +40 -11
  287. package/templates/code-editor/code-editor.template.d.ts +6 -3
  288. package/templates/entrance/entrance.template.d.ts +1 -1
  289. package/templates/form/form.builder.d.ts +10 -3
  290. package/templates/form/form.template.d.ts +2 -1
  291. package/templates/icon-button-menu/icon-button-menu.template.d.ts +3 -2
  292. package/templates/messages/messages.template.d.ts +21 -17
  293. package/templates/templates.module.d.ts +24 -1
  294. package/esm2022/frames/scroll-v2/scroll.frame.mjs +0 -46
  295. package/esm2022/organisms/smart-list/index.mjs +0 -2
  296. package/esm2022/organisms/smart-list/ng-atomic-components-organisms-smart-list.mjs +0 -5
  297. package/esm2022/organisms/smart-list/smart-list.organism.mjs +0 -218
  298. package/esm2022/sheets/actions/actions.sheet.mjs +0 -45
  299. package/esm2022/sheets/index.mjs +0 -3
  300. package/esm2022/sheets/ng-atomic-components-sheets.mjs +0 -5
  301. package/esm2022/sheets/sheets.module.mjs +0 -25
  302. package/esm2022/sheets/sheets.service.mjs +0 -20
  303. package/fesm2022/ng-atomic-components-organisms-smart-list.mjs +0 -223
  304. package/fesm2022/ng-atomic-components-organisms-smart-list.mjs.map +0 -1
  305. package/fesm2022/ng-atomic-components-sheets-actions.mjs +0 -52
  306. package/fesm2022/ng-atomic-components-sheets-actions.mjs.map +0 -1
  307. package/fesm2022/ng-atomic-components-sheets.mjs +0 -48
  308. package/fesm2022/ng-atomic-components-sheets.mjs.map +0 -1
  309. package/frames/scroll-v2/scroll.frame.d.ts +0 -9
  310. package/organisms/smart-list/index.d.ts +0 -1
  311. package/sheets/actions/actions.sheet.d.ts +0 -9
  312. package/sheets/actions/index.d.ts +0 -1
  313. package/sheets/index.d.ts +0 -2
  314. package/sheets/sheets.module.d.ts +0 -11
  315. package/sheets/sheets.service.d.ts +0 -10
@@ -1 +1 @@
1
- {"version":3,"file":"ng-atomic-components-atoms.mjs","sources":["../../../../../packages/@ng-atomic/components/src/lib/atoms/atoms.module.ts","../../../../../packages/@ng-atomic/components/src/lib/atoms/ng-atomic-components-atoms.ts"],"sourcesContent":["import { NgModule } from '@angular/core';\nimport { provideComponent } from '@ng-atomic/core';\nimport { SmartMenuButtonAtomStore } from '@ng-atomic/components/atoms/smart-menu-button';\n\n@NgModule({})\nexport class NgAtomicAtomsModule {\n static forRoot() {\n return {\n ngModule: NgAtomicAtomsModule,\n providers: [\n provideComponent(SmartMenuButtonAtomStore, () => import('@ng-atomic/components/atoms/smart-menu-button').then(m => m.SmartMenuButtonAtom)),\n ]\n }\n }\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":";;;;;MAKa,mBAAmB,CAAA;AAC9B,IAAA,OAAO,OAAO,GAAA;QACZ,OAAO;AACL,YAAA,QAAQ,EAAE,mBAAmB;AAC7B,YAAA,SAAS,EAAE;gBACT,gBAAgB,CAAC,wBAAwB,EAAE,MAAM,OAAO,+CAA+C,CAAC,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,CAAC,mBAAmB,CAAC,CAAC;AAC3I,aAAA;SACF,CAAA;KACF;8GARU,mBAAmB,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,QAAA,EAAA,CAAA,CAAA,EAAA;+GAAnB,mBAAmB,EAAA,CAAA,CAAA,EAAA;+GAAnB,mBAAmB,EAAA,CAAA,CAAA,EAAA;;2FAAnB,mBAAmB,EAAA,UAAA,EAAA,CAAA;kBAD/B,QAAQ;mBAAC,EAAE,CAAA;;;ACJZ;;AAEG;;;;"}
1
+ {"version":3,"file":"ng-atomic-components-atoms.mjs","sources":["../../../../../packages/@ng-atomic/components/src/lib/atoms/atoms.module.ts","../../../../../packages/@ng-atomic/components/src/lib/atoms/ng-atomic-components-atoms.ts"],"sourcesContent":["import { NgModule } from '@angular/core';\nimport { provideComponent } from '@ng-atomic/core';\nimport { SmartMenuButtonAtomStore } from '@ng-atomic/components/atoms/smart-menu-button';\n\n@NgModule({})\nexport class NgAtomicAtomsModule {\n static forRoot() {\n return {\n ngModule: NgAtomicAtomsModule,\n providers: [\n provideAtoms(),\n ]\n }\n }\n}\n\nexport function provideAtoms() {\n return [\n provideComponent(SmartMenuButtonAtomStore, () => import('@ng-atomic/components/atoms/smart-menu-button').then(m => m.SmartMenuButtonAtom)),\n ];\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":";;;;;MAKa,mBAAmB,CAAA;AAC9B,IAAA,OAAO,OAAO,GAAA;QACZ,OAAO;AACL,YAAA,QAAQ,EAAE,mBAAmB;AAC7B,YAAA,SAAS,EAAE;AACT,gBAAA,YAAY,EAAE;AACf,aAAA;SACF,CAAA;KACF;8GARU,mBAAmB,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,QAAA,EAAA,CAAA,CAAA,EAAA;+GAAnB,mBAAmB,EAAA,CAAA,CAAA,EAAA;+GAAnB,mBAAmB,EAAA,CAAA,CAAA,EAAA;;2FAAnB,mBAAmB,EAAA,UAAA,EAAA,CAAA;kBAD/B,QAAQ;mBAAC,EAAE,CAAA;;SAYI,YAAY,GAAA;IAC1B,OAAO;QACL,gBAAgB,CAAC,wBAAwB,EAAE,MAAM,OAAO,+CAA+C,CAAC,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,CAAC,mBAAmB,CAAC,CAAC;KAC3I,CAAC;AACJ;;ACpBA;;AAEG;;;;"}
@@ -1,87 +1,119 @@
1
1
  import * as i0 from '@angular/core';
2
- import { input, EventEmitter, inject, ElementRef, ChangeDetectorRef, effect, Component, ChangeDetectionStrategy, Output } from '@angular/core';
3
- import { CommonModule } from '@angular/common';
4
- import { history } from '@codemirror/commands';
5
- import { closeBrackets, autocompletion } from '@codemirror/autocomplete';
6
- import { bracketMatching, syntaxHighlighting } from '@codemirror/language';
2
+ import { input, output, computed, signal, effect, Directive, inject, ElementRef, Component, ChangeDetectionStrategy } from '@angular/core';
3
+ import { keymap } from '@codemirror/view';
4
+ import { indentWithTab } from '@codemirror/commands';
5
+ import { syntaxHighlighting } from '@codemirror/language';
7
6
  import { oneDark, oneDarkHighlightStyle } from '@codemirror/theme-one-dark';
8
7
  import { EditorState } from '@codemirror/state';
9
- import { lineNumbers } from '@codemirror/view';
10
- import { EditorView, basicSetup } from 'codemirror';
11
- import { NgAtomicComponent } from '@ng-atomic/core';
12
- import { distinctUntilChanged } from 'rxjs';
8
+ import { basicSetup, EditorView } from 'codemirror';
9
+ import { InjectableComponent, NgAtomicComponent } from '@ng-atomic/core';
13
10
  import { json } from '@codemirror/lang-json';
11
+ import { ReplaySubject, filter, map, distinctUntilChanged } from 'rxjs';
14
12
 
15
- class EditorComponent extends NgAtomicComponent {
13
+ class EditorComponentStore extends InjectableComponent {
16
14
  constructor() {
17
15
  super();
18
16
  this.content = input('');
19
- this._contentChange$ = new EventEmitter();
20
- this.contentChange = new EventEmitter();
21
- this.keyActions = input();
17
+ this.contentChange = output();
18
+ this.keyActions = input([]);
22
19
  this.extensions = input([
23
20
  json(),
24
21
  ]);
25
- this.el = inject(ElementRef);
26
- this.cd = inject(ChangeDetectorRef);
22
+ // readonly update = signal<ViewUpdate>(null);
23
+ // readonly update$ = toObservable(this.update);
24
+ this.update$ = new ReplaySubject(0);
25
+ this.defaultExtensions = computed(() => [
26
+ basicSetup,
27
+ oneDark,
28
+ syntaxHighlighting(oneDarkHighlightStyle),
29
+ EditorView.updateListener.of((update) => this.update$.next(update)),
30
+ keymap.of([
31
+ ...(this.keyActions()).map(({ key, actionId }) => ({
32
+ key,
33
+ run: () => {
34
+ this.action.emit({ id: actionId });
35
+ return true;
36
+ },
37
+ })),
38
+ indentWithTab,
39
+ ]),
40
+ ]);
41
+ this.state = computed(() => EditorState.create({
42
+ ...this.editorView().state,
43
+ extensions: [
44
+ ...this.defaultExtensions(),
45
+ ...this.extensions(),
46
+ ],
47
+ }));
48
+ this.editorView = signal(null);
49
+ this.action = output();
50
+ this.update$.pipe(filter((update) => update?.docChanged), map((update) => (update.state.doc.toString())), distinctUntilChanged()).subscribe((content) => {
51
+ this.contentChange.emit(content);
52
+ });
27
53
  effect(() => {
28
- const selection = this.editorView.state.selection;
29
- this.editorView.dispatch(this.editorView.state.update({
54
+ if (this.content() === this.editorView().state.doc.toString())
55
+ return;
56
+ const selection = this.editorView().state.selection;
57
+ this.editorView().dispatch(this.editorView().state.update({
30
58
  changes: {
31
59
  from: 0,
32
- to: this.editorView.state.doc.length,
60
+ to: this.editorView().state.doc.length,
33
61
  insert: this.content() ?? '',
34
62
  },
35
63
  selection: selection,
36
64
  scrollIntoView: true,
37
65
  }));
38
66
  });
67
+ effect(() => {
68
+ this.editorView().setState(this.state());
69
+ });
70
+ }
71
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.1.2", ngImport: i0, type: EditorComponentStore, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
72
+ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "17.1.0", version: "18.1.2", type: EditorComponentStore, isStandalone: true, inputs: { content: { classPropertyName: "content", publicName: "content", isSignal: true, isRequired: false, transformFunction: null }, keyActions: { classPropertyName: "keyActions", publicName: "keyActions", isSignal: true, isRequired: false, transformFunction: null }, extensions: { classPropertyName: "extensions", publicName: "extensions", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { contentChange: "contentChange", action: "action" }, usesInheritance: true, ngImport: i0 }); }
73
+ }
74
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.1.2", ngImport: i0, type: EditorComponentStore, decorators: [{
75
+ type: Directive,
76
+ args: [{ standalone: true }]
77
+ }], ctorParameters: () => [] });
78
+ class EditorComponent extends NgAtomicComponent {
79
+ constructor() {
80
+ super(...arguments);
81
+ this.store = inject(EditorComponentStore);
82
+ this.el = inject(ElementRef);
39
83
  }
40
84
  ngOnInit() {
41
- this._contentChange$.pipe(distinctUntilChanged()).subscribe((content) => {
42
- this.contentChange.emit(content);
43
- });
85
+ this.store.action.subscribe((action) => this.dispatch(action));
44
86
  }
45
87
  ngAfterViewInit() {
46
- this.editorView?.destroy();
47
- this.editorView = new EditorView({
88
+ this.store.editorView()?.destroy();
89
+ this.store.editorView.set(new EditorView({
48
90
  state: EditorState.create({
49
91
  doc: ``,
50
92
  extensions: [
51
- basicSetup,
52
- bracketMatching(),
53
- closeBrackets(),
54
- history(),
55
- autocompletion(),
56
- lineNumbers(),
57
- oneDark,
58
- syntaxHighlighting(oneDarkHighlightStyle),
59
- EditorView.updateListener.of((update) => {
60
- if (!update.docChanged)
61
- return;
62
- this._contentChange$.emit(update.state.doc.toString());
63
- }),
64
- ...this.extensions(),
93
+ ...this.store.defaultExtensions(),
94
+ ...this.store.extensions(),
65
95
  ],
66
96
  }),
67
97
  parent: this.el.nativeElement,
68
- });
98
+ }));
69
99
  }
70
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.1.2", ngImport: i0, type: EditorComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
71
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "18.1.2", type: EditorComponent, isStandalone: true, selector: "extras-editor", inputs: { content: { classPropertyName: "content", publicName: "content", isSignal: true, isRequired: false, transformFunction: null }, keyActions: { classPropertyName: "keyActions", publicName: "keyActions", isSignal: true, isRequired: false, transformFunction: null }, extensions: { classPropertyName: "extensions", publicName: "extensions", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { contentChange: "contentChange" }, usesInheritance: true, ngImport: i0, template: ``, isInline: true, styles: [":host{display:block}:host{width:100%;height:100%}:host ::ng-deep>.cm-editor{width:100%;height:100%}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
100
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.1.2", ngImport: i0, type: EditorComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
101
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.1.2", type: EditorComponent, isStandalone: true, selector: "extras-editor", usesInheritance: true, hostDirectives: [{ directive: EditorComponentStore, inputs: ["content", "content", "keyActions", "keyActions", "extensions", "extensions"], outputs: ["contentChange", "contentChange"] }], ngImport: i0, template: ``, isInline: true, styles: [":host{display:block}:host{width:100%;height:100%}:host ::ng-deep>.cm-editor{width:100%;height:100%}\n"], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
72
102
  }
73
103
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.1.2", ngImport: i0, type: EditorComponent, decorators: [{
74
104
  type: Component,
75
- args: [{ selector: 'extras-editor', standalone: true, imports: [
76
- CommonModule
77
- ], template: ``, changeDetection: ChangeDetectionStrategy.OnPush, styles: [":host{display:block}:host{width:100%;height:100%}:host ::ng-deep>.cm-editor{width:100%;height:100%}\n"] }]
78
- }], ctorParameters: () => [], propDecorators: { contentChange: [{
79
- type: Output
80
- }] } });
105
+ args: [{ selector: 'extras-editor', standalone: true, template: ``, changeDetection: ChangeDetectionStrategy.OnPush, hostDirectives: [
106
+ {
107
+ directive: EditorComponentStore,
108
+ inputs: ['content', 'keyActions', 'extensions'],
109
+ outputs: ['contentChange'],
110
+ }
111
+ ], styles: [":host{display:block}:host{width:100%;height:100%}:host ::ng-deep>.cm-editor{width:100%;height:100%}\n"] }]
112
+ }] });
81
113
 
82
114
  /**
83
115
  * Generated bundle index. Do not edit.
84
116
  */
85
117
 
86
- export { EditorComponent };
118
+ export { EditorComponent, EditorComponentStore };
87
119
  //# sourceMappingURL=ng-atomic-components-extras-editor.mjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"ng-atomic-components-extras-editor.mjs","sources":["../../../../../packages/@ng-atomic/components/src/lib/extras/editor/editor.component.ts","../../../../../packages/@ng-atomic/components/src/lib/extras/editor/ng-atomic-components-extras-editor.ts"],"sourcesContent":["import { ChangeDetectionStrategy, Component, computed, model, Directive, inject, input, effect, ElementRef, viewChild, Output, EventEmitter, Inject, ChangeDetectorRef, OnInit, AfterViewInit } from '@angular/core';\nimport { CommonModule } from '@angular/common';\nimport { keymap } from \"@codemirror/view\"\nimport { indentWithTab } from \"@codemirror/commands\"\nimport { history } from '@codemirror/commands';\nimport { autocompletion, closeBrackets } from '@codemirror/autocomplete';\nimport { bracketMatching, syntaxHighlighting } from '@codemirror/language';\nimport { oneDarkHighlightStyle, oneDark } from '@codemirror/theme-one-dark';\nimport { EditorSelection, EditorState, Extension } from '@codemirror/state';\nimport { lineNumbers } from '@codemirror/view';\nimport { basicSetup, EditorView } from \"codemirror\"\nimport { html } from \"@codemirror/lang-html\";\nimport prettier from \"prettier/standalone\";\nimport parserHtml from \"prettier/parser-html\";\nimport { NgAtomicComponent } from '@ng-atomic/core';\nimport { graphql } from 'cm6-graphql';\nimport { distinctUntilChanged } from 'rxjs';\nimport { json } from \"@codemirror/lang-json\";\n\n@Component({\n selector: 'extras-editor',\n standalone: true,\n imports: [\n CommonModule\n ],\n template: ``,\n styleUrls: ['./editor.component.scss'],\n changeDetection: ChangeDetectionStrategy.OnPush\n})\nexport class EditorComponent extends NgAtomicComponent implements OnInit, AfterViewInit {\n readonly content = input<string>('');\n readonly _contentChange$ = new EventEmitter<string>();\n @Output() readonly contentChange = new EventEmitter<string>();\n readonly keyActions = input<{key: string, actionId: string}[]>();\n readonly extensions = input<Extension[]>([\n json(),\n ]);\n readonly el = inject(ElementRef);\n\n // readonly state = computed(() => {\n // return EditorState.create({\n // doc: this.content() ?? '',\n // extensions: [\n // keymap.of([\n // ...(this.keyActions() ?? []).map(({key, actionId}) => ({\n // key,\n // run: () => (this.dispatch({id: actionId}), true),\n // })),\n // indentWithTab,\n // ]),\n // html(),\n // ...this.extensions(),\n // graphql(),\n // ],\n // });\n // });\n\n editorView!: EditorView;\n\n readonly cd = inject(ChangeDetectorRef);\n\n constructor() {\n super();\n effect(() => {\n const selection = this.editorView.state.selection;\n this.editorView.dispatch(\n this.editorView.state.update({\n changes: {\n from: 0,\n to: this.editorView.state.doc.length,\n insert: this.content() ?? '',\n },\n selection: selection,\n scrollIntoView: true,\n }),\n );\n });\n }\n\n ngOnInit(): void {\n this._contentChange$.pipe(\n distinctUntilChanged(),\n ).subscribe((content) => {\n this.contentChange.emit(content);\n });\n }\n\n ngAfterViewInit() {\n this.editorView?.destroy();\n this.editorView = new EditorView({\n state: EditorState.create({\n doc: ``,\n extensions: [\n basicSetup,\n bracketMatching(),\n closeBrackets(),\n history(),\n autocompletion(),\n lineNumbers(),\n oneDark,\n syntaxHighlighting(oneDarkHighlightStyle),\n EditorView.updateListener.of((update) => {\n if (!update.docChanged) return;\n this._contentChange$.emit(update.state.doc.toString());\n }),\n ...this.extensions(),\n ],\n }),\n parent: this.el.nativeElement,\n })\n }\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"ng-atomic-components-extras-editor.mjs","sources":["../../../../../packages/@ng-atomic/components/src/lib/extras/editor/editor.component.ts","../../../../../packages/@ng-atomic/components/src/lib/extras/editor/ng-atomic-components-extras-editor.ts"],"sourcesContent":["import { ChangeDetectionStrategy, Component, computed, inject, input, effect, ElementRef, OnInit, AfterViewInit, output, signal, Directive } from '@angular/core';\nimport { keymap, ViewUpdate } from \"@codemirror/view\"\nimport { indentWithTab } from \"@codemirror/commands\"\nimport { syntaxHighlighting } from '@codemirror/language';\nimport { oneDarkHighlightStyle, oneDark } from '@codemirror/theme-one-dark';\nimport { EditorState, Extension } from '@codemirror/state';\nimport { basicSetup, EditorView } from \"codemirror\"\nimport { Action, InjectableComponent, NgAtomicComponent } from '@ng-atomic/core';\nimport { json } from \"@codemirror/lang-json\";\nimport { distinctUntilChanged, filter, map, ReplaySubject } from 'rxjs';\nimport { toObservable } from '@angular/core/rxjs-interop';\n\n@Directive({ standalone: true })\nexport class EditorComponentStore extends InjectableComponent {\n readonly content = input<string>('');\n readonly contentChange = output<string>();\n readonly keyActions = input<{key: string, actionId: string}[]>([]);\n readonly extensions = input<Extension[]>([\n json(),\n ]);\n // readonly update = signal<ViewUpdate>(null);\n // readonly update$ = toObservable(this.update);\n readonly update$ = new ReplaySubject<ViewUpdate>(0);\n readonly defaultExtensions = computed(() => [\n basicSetup,\n oneDark,\n syntaxHighlighting(oneDarkHighlightStyle),\n EditorView.updateListener.of((update) => this.update$.next(update)),\n keymap.of([\n ...(this.keyActions()).map(({key, actionId}) => ({\n key,\n run: () => {\n this.action.emit({id: actionId});\n return true;\n },\n })),\n indentWithTab,\n ]),\n ]);\n\n readonly state = computed(() => EditorState.create({\n ...this.editorView().state,\n extensions: [\n ...this.defaultExtensions(),\n ...this.extensions(),\n ],\n }));\n\n readonly editorView = signal<EditorView>(null);\n readonly action = output<Action>();\n\n constructor() {\n super();\n\n this.update$.pipe(\n filter((update) => update?.docChanged),\n map((update) => (update.state.doc.toString())),\n distinctUntilChanged(),\n ).subscribe((content) => {\n this.contentChange.emit(content);\n });\n\n effect(() => {\n if (this.content() === this.editorView().state.doc.toString()) return;\n const selection = this.editorView().state.selection;\n this.editorView().dispatch(\n this.editorView().state.update({\n changes: {\n from: 0,\n to: this.editorView().state.doc.length,\n insert: this.content() ?? '',\n },\n selection: selection,\n scrollIntoView: true,\n }),\n );\n });\n\n effect(() => {\n this.editorView().setState(this.state());\n });\n }\n}\n\n@Component({\n selector: 'extras-editor',\n standalone: true,\n template: ``,\n styleUrls: ['./editor.component.scss'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n hostDirectives: [\n {\n directive: EditorComponentStore,\n inputs: ['content', 'keyActions', 'extensions'],\n outputs: ['contentChange'],\n }\n ]\n})\nexport class EditorComponent extends NgAtomicComponent implements OnInit, AfterViewInit {\n protected readonly store = inject(EditorComponentStore);\n protected readonly el = inject(ElementRef);\n\n ngOnInit(): void {\n this.store.action.subscribe((action) => this.dispatch(action));\n }\n\n ngAfterViewInit() {\n this.store.editorView()?.destroy();\n this.store.editorView.set(new EditorView({\n state: EditorState.create({\n doc: ``,\n extensions: [\n ...this.store.defaultExtensions(),\n ...this.store.extensions(),\n ],\n }),\n parent: this.el.nativeElement,\n }));\n }\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}
@@ -1,12 +1,12 @@
1
1
  import * as i0 from '@angular/core';
2
2
  import { inject, computed, effect, input, Directive, PLATFORM_ID, Component, ChangeDetectionStrategy } from '@angular/core';
3
- import { RouterOutlet } from '@angular/router';
3
+ import { ActivatedRoute, RouterOutlet } from '@angular/router';
4
4
  import { LoadingFrame } from '@ng-atomic/components/frames/loading';
5
5
  import { SideNavFrameStore, SideNavFrame } from '@ng-atomic/components/frames/side-nav';
6
6
  import { EntranceFrame } from '@ng-atomic/components/frames/entrance';
7
- import { InjectableComponent, applyToInput, provideEffect, _computed, NgAtomicComponent } from '@ng-atomic/core';
7
+ import { InjectableComponent, applyToInput, provideEffect, createAction, _computed, NgAtomicComponent } from '@ng-atomic/core';
8
8
  import { FormBuilder } from '@angular/forms';
9
- import { makeConfig } from '@ng-atomic/common/services/ui';
9
+ import { makeConfig, NavActionId } from '@ng-atomic/common/services/ui';
10
10
  import { isPlatformServer, isPlatformBrowser } from '@angular/common';
11
11
  import { DrawerFrame } from '@ng-atomic/components/frames/drawer';
12
12
  import { FabFrame } from '@ng-atomic/components/frames/fab';
@@ -15,16 +15,19 @@ import { SideAppService } from '@ng-atomic/common/services/side-app';
15
15
  import { AuthService } from '@ng-atomic/common/services/auth';
16
16
  import { RootPropertyService } from '@ng-atomic/common/services/root-property';
17
17
  import { makeInitializerConfig } from '@ng-atomic/common/services/initializer';
18
- import { injectPrimaryPaths } from '@ng-atomic/common/utils';
18
+ import { injectPrimaryPaths, injectHasNext } from '@ng-atomic/common/utils';
19
+ import { ProgressBarFrame } from '@ng-atomic/components/frames/progress-bar';
19
20
 
20
21
  var ActionId;
21
22
  (function (ActionId) {
22
23
  ActionId["SIGN_IN_WITH_GOOGLE"] = "[@ng-atomic/components:frames/app] Sign In With Google";
23
24
  ActionId["SIGN_IN_WITH_TWITTER"] = "[@ng-atomic/components:frames/app] Sign In With Twitter";
25
+ ActionId["SIGN_IN_WITH_MICROSOFT"] = "[@ng-atomic/components:frames/app] Sign In With Microsoft";
24
26
  ActionId["SIGN_IN_WITH_EMAIL"] = "[@ng-atomic/components:frames/app] Sign In With Email";
25
27
  ActionId["SIGN_UP_WITH_EMAIL"] = "[@ng-atomic/components:frames/app] Sign Up With Email";
26
28
  ActionId["NAVIGATE"] = "[@ng-atomic/components:frames/app] Navigate";
27
29
  ActionId["SIGN_OUT"] = "[@ng-atomic/components:frames/app] Sign Out";
30
+ ActionId["NAVIGATE_SIDE_APP"] = "[@ng-atomic/components:frames/app] Navigate Side App";
28
31
  ActionId["OPEN_SIDE_APP"] = "[@ng-atomic/components:frames/app] Open Side App";
29
32
  })(ActionId || (ActionId = {}));
30
33
  class AppFrameStore extends InjectableComponent {
@@ -35,6 +38,7 @@ class AppFrameStore extends InjectableComponent {
35
38
  fabHide: true,
36
39
  isEntrance: true,
37
40
  isLoading: false,
41
+ isProgress: false,
38
42
  sideAppOpened: false,
39
43
  title: 'title',
40
44
  form: inject(FormBuilder).group({}),
@@ -44,10 +48,11 @@ class AppFrameStore extends InjectableComponent {
44
48
  sideNavActions: [
45
49
  { id: ActionId.SIGN_OUT, name: 'ログアウト', icon: 'exit_to_app' },
46
50
  ],
51
+ sideNavBottomActions: [],
47
52
  sideNavMode: 'collapsed',
48
53
  sideNavMenuType: SideNavFrameStore.getMenuType(context),
49
54
  sideNavMenuTitle: undefined,
50
- sideAppOutletName: 'side-app',
55
+ sideAppOutletName: 'side',
51
56
  });
52
57
  }, ['components', 'frames', 'app']); }
53
58
  static { this.provideAppServiceConfig = () => AppFrameStore.Config.provide(() => {
@@ -56,6 +61,7 @@ class AppFrameStore extends InjectableComponent {
56
61
  return (config) => ({
57
62
  ...config,
58
63
  isLoading: app.loading.isLoading(),
64
+ isProgress: app.loading.isProgress(),
59
65
  sideNavMode: app.sideNavMode.sideNavMode(),
60
66
  sideAppOpened: app.sideApp.opened(),
61
67
  fabActions: app.fab.actions(),
@@ -117,7 +123,30 @@ class AppFrameStore extends InjectableComponent {
117
123
  return provideEffect(AppFrameStore.ActionId.NAVIGATE, () => {
118
124
  const app = inject(AppService);
119
125
  return (payload) => {
120
- app.router.navigate(payload).then(() => app.sideNav.collapse());
126
+ if (Array.isArray(payload)) {
127
+ app.sideApp.collapse();
128
+ app.router.navigate(payload).then(() => app.sideNav.collapse());
129
+ }
130
+ else {
131
+ app.sideApp.collapse();
132
+ const { commands, extras } = payload;
133
+ console.debug('commands', commands, extras);
134
+ app.router.navigate(commands, extras ?? {}).then(() => app.sideNav.collapse());
135
+ }
136
+ };
137
+ });
138
+ }
139
+ static provideNavigateSideAppEffect() {
140
+ return provideEffect(AppFrameStore.ActionId.NAVIGATE_SIDE_APP, () => {
141
+ const app = inject(AppService);
142
+ return (payload) => {
143
+ if (Array.isArray(payload)) {
144
+ app.sideApp.router.navigate(payload);
145
+ }
146
+ else {
147
+ const { commands, extras } = payload;
148
+ app.sideApp.router.navigate(commands, extras ?? {});
149
+ }
121
150
  };
122
151
  });
123
152
  }
@@ -137,11 +166,18 @@ class AppFrameStore extends InjectableComponent {
137
166
  return provideEffect(AppFrameStore.ActionId.OPEN_SIDE_APP, () => {
138
167
  const app = inject(AppService);
139
168
  return () => {
140
- console.debug('open side app');
141
169
  app.sideApp.expand();
142
170
  };
143
171
  });
144
172
  }
173
+ static provideCloseSideAppEffect() {
174
+ return provideEffect(NavActionId.CLOSE, () => {
175
+ const app = inject(AppService);
176
+ return () => {
177
+ app.sideApp.collapse();
178
+ };
179
+ });
180
+ }
145
181
  static provideSignUpWithEmailEffect() {
146
182
  return provideEffect(AppFrameStore.ActionId.SIGN_UP_WITH_EMAIL, () => {
147
183
  const app = inject(AppService);
@@ -213,10 +249,12 @@ class AppFrameStore extends InjectableComponent {
213
249
  AppFrameStore.provideNavigateEffect(),
214
250
  AppFrameStore.provideSignOutEffect(),
215
251
  AppFrameStore.provideOpenSideAppEffect(),
252
+ AppFrameStore.provideCloseSideAppEffect(),
216
253
  AppFrameStore.provideSignUpWithEmailEffect(),
217
254
  AppFrameStore.provideSignInWithEmailEffect(),
218
255
  AppFrameStore.provideSignInWithGoogleEffect(),
219
256
  AppFrameStore.provideSignInWithTwitterEffect(),
257
+ AppFrameStore.provideNavigateSideAppEffect(),
220
258
  ];
221
259
  }
222
260
  static provideDefault() {
@@ -226,16 +264,33 @@ class AppFrameStore extends InjectableComponent {
226
264
  AppFrameStore.provideDefaultEffects(),
227
265
  ];
228
266
  }
267
+ static injectNavActionFactory() {
268
+ const hasNext = injectHasNext();
269
+ const route = inject(ActivatedRoute);
270
+ const navigateActionBuilder = createAction(AppFrameStore.ActionId.NAVIGATE, undefined, {
271
+ icon: 'open_in_new',
272
+ });
273
+ return (commands, name) => {
274
+ return navigateActionBuilder.create({
275
+ commands,
276
+ extras: { relativeTo: route, replaceUrl: hasNext() }
277
+ }, {
278
+ name,
279
+ });
280
+ };
281
+ }
229
282
  constructor() {
230
283
  super();
231
284
  this.config = AppFrameStore.Config.inject();
232
285
  this.isLoading = input(_computed(() => this.config().isLoading));
286
+ this.isProgress = input(_computed(() => this.config().isProgress));
233
287
  this.isEntrance = input(_computed(() => this.config().isEntrance));
234
288
  this.sideAppOpened = input(_computed(() => this.config().sideAppOpened));
235
289
  this.title = input(_computed(() => this.config().title));
236
290
  this.form = input(_computed(() => this.config().form));
237
291
  this.entranceActions = input(_computed(() => this.config().entranceActions));
238
292
  this.sideNavActions = input(_computed(() => this.config().sideNavActions));
293
+ this.sideNavBottomActions = input(_computed(() => this.config().sideNavBottomActions));
239
294
  this.sideNavMode = input(_computed(() => this.config().sideNavMode));
240
295
  this.sideNavMenuType = input(_computed(() => this.config().sideNavMenuType));
241
296
  this.sideNavMenuTitle = input(_computed(() => this.config().sideNavMenuTitle));
@@ -245,7 +300,7 @@ class AppFrameStore extends InjectableComponent {
245
300
  AppFrameStore.Initializer.initializeStore(this);
246
301
  }
247
302
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.1.2", ngImport: i0, type: AppFrameStore, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
248
- static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "17.1.0", version: "18.1.2", type: AppFrameStore, isStandalone: true, selector: "frames-app", inputs: { isLoading: { classPropertyName: "isLoading", publicName: "isLoading", isSignal: true, isRequired: false, transformFunction: null }, isEntrance: { classPropertyName: "isEntrance", publicName: "isEntrance", isSignal: true, isRequired: false, transformFunction: null }, sideAppOpened: { classPropertyName: "sideAppOpened", publicName: "sideAppOpened", isSignal: true, isRequired: false, transformFunction: null }, title: { classPropertyName: "title", publicName: "title", isSignal: true, isRequired: false, transformFunction: null }, form: { classPropertyName: "form", publicName: "form", isSignal: true, isRequired: false, transformFunction: null }, entranceActions: { classPropertyName: "entranceActions", publicName: "entranceActions", isSignal: true, isRequired: false, transformFunction: null }, sideNavActions: { classPropertyName: "sideNavActions", publicName: "sideNavActions", isSignal: true, isRequired: false, transformFunction: null }, sideNavMode: { classPropertyName: "sideNavMode", publicName: "sideNavMode", isSignal: true, isRequired: false, transformFunction: null }, sideNavMenuType: { classPropertyName: "sideNavMenuType", publicName: "sideNavMenuType", isSignal: true, isRequired: false, transformFunction: null }, sideNavMenuTitle: { classPropertyName: "sideNavMenuTitle", publicName: "sideNavMenuTitle", isSignal: true, isRequired: false, transformFunction: null }, sideAppOutletName: { classPropertyName: "sideAppOutletName", publicName: "sideAppOutletName", isSignal: true, isRequired: false, transformFunction: null }, fabActions: { classPropertyName: "fabActions", publicName: "fabActions", isSignal: true, isRequired: false, transformFunction: null }, fabHide: { classPropertyName: "fabHide", publicName: "fabHide", isSignal: true, isRequired: false, transformFunction: null } }, usesInheritance: true, ngImport: i0 }); }
303
+ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "17.1.0", version: "18.1.2", type: AppFrameStore, isStandalone: true, selector: "frames-app", inputs: { isLoading: { classPropertyName: "isLoading", publicName: "isLoading", isSignal: true, isRequired: false, transformFunction: null }, isProgress: { classPropertyName: "isProgress", publicName: "isProgress", isSignal: true, isRequired: false, transformFunction: null }, isEntrance: { classPropertyName: "isEntrance", publicName: "isEntrance", isSignal: true, isRequired: false, transformFunction: null }, sideAppOpened: { classPropertyName: "sideAppOpened", publicName: "sideAppOpened", isSignal: true, isRequired: false, transformFunction: null }, title: { classPropertyName: "title", publicName: "title", isSignal: true, isRequired: false, transformFunction: null }, form: { classPropertyName: "form", publicName: "form", isSignal: true, isRequired: false, transformFunction: null }, entranceActions: { classPropertyName: "entranceActions", publicName: "entranceActions", isSignal: true, isRequired: false, transformFunction: null }, sideNavActions: { classPropertyName: "sideNavActions", publicName: "sideNavActions", isSignal: true, isRequired: false, transformFunction: null }, sideNavBottomActions: { classPropertyName: "sideNavBottomActions", publicName: "sideNavBottomActions", isSignal: true, isRequired: false, transformFunction: null }, sideNavMode: { classPropertyName: "sideNavMode", publicName: "sideNavMode", isSignal: true, isRequired: false, transformFunction: null }, sideNavMenuType: { classPropertyName: "sideNavMenuType", publicName: "sideNavMenuType", isSignal: true, isRequired: false, transformFunction: null }, sideNavMenuTitle: { classPropertyName: "sideNavMenuTitle", publicName: "sideNavMenuTitle", isSignal: true, isRequired: false, transformFunction: null }, sideAppOutletName: { classPropertyName: "sideAppOutletName", publicName: "sideAppOutletName", isSignal: true, isRequired: false, transformFunction: null }, fabActions: { classPropertyName: "fabActions", publicName: "fabActions", isSignal: true, isRequired: false, transformFunction: null }, fabHide: { classPropertyName: "fabHide", publicName: "fabHide", isSignal: true, isRequired: false, transformFunction: null } }, usesInheritance: true, ngImport: i0 }); }
249
304
  }
250
305
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.1.2", ngImport: i0, type: AppFrameStore, decorators: [{
251
306
  type: Directive,
@@ -272,43 +327,46 @@ class AppFrame extends NgAtomicComponent {
272
327
  }
273
328
  }
274
329
  <frames-loading [isLoading]="store.isLoading()">
275
- <frames-fab
276
- [actions]="store.fabActions()"
277
- [hide]="store.fabHide()"
278
- (action)="dispatch($event)"
279
- >
280
- <frames-entrance
281
- [isEntrance]="store.isEntrance()"
282
- [form]="store.form()"
283
- [title]="store.title()"
284
- [actions]="store.entranceActions()"
330
+ <frames-progress-bar [isProgress]="store.isProgress()" [mode]="'query'">
331
+ <frames-fab
332
+ [actions]="store.fabActions()"
333
+ [hide]="store.fabHide()"
285
334
  (action)="dispatch($event)"
286
335
  >
287
- <frames-drawer
288
- [opened]="store.sideAppOpened()"
289
- [position]="'end'"
290
- [hasBackdrop]="false"
336
+ <frames-entrance
337
+ [isEntrance]="store.isEntrance()"
338
+ [form]="store.form()"
339
+ [title]="store.title()"
340
+ [actions]="store.entranceActions()"
341
+ (action)="dispatch($event)"
291
342
  >
292
- <frames-side-nav
293
- [actions]="store.sideNavActions()"
294
- [mode]="store.sideNavMode()"
295
- [menuType]="store.sideNavMenuType()"
296
- [menuTitle]="store.sideNavMenuTitle()"
297
- (action)="dispatch($event)"
298
- contents
343
+ <frames-drawer
344
+ [opened]="store.sideAppOpened()"
345
+ [position]="'end'"
346
+ [hasBackdrop]="false"
299
347
  >
300
- <router-outlet contents/>
301
- </frames-side-nav>
302
- <div drawer style="width: var(--page-width-lv1);height: 100%;">
303
- <router-outlet [name]="store.sideAppOutletName()" />
304
- </div>
305
- </frames-drawer>
306
- </frames-entrance>
307
- </frames-fab>
348
+ <frames-side-nav
349
+ [actions]="store.sideNavActions()"
350
+ [bottomActions]="store.sideNavBottomActions()"
351
+ [mode]="store.sideNavMode()"
352
+ [menuType]="store.sideNavMenuType()"
353
+ [menuTitle]="store.sideNavMenuTitle()"
354
+ (action)="dispatch($event)"
355
+ contents
356
+ >
357
+ <router-outlet contents/>
358
+ </frames-side-nav>
359
+ <div drawer style="width: var(--page-width-lv1);height: 100%;">
360
+ <router-outlet [name]="store.sideAppOutletName()" />
361
+ </div>
362
+ </frames-drawer>
363
+ </frames-entrance>
364
+ </frames-fab>
365
+ </frames-progress-bar>
308
366
  </frames-loading>
309
- `, isInline: true, styles: [":host{--primary-color-SCOPED-IN-frames-app-nxqv: var(--primary-color);--on-primary-color-SCOPED-IN-frames-app-nxqv: var(--on-primary-color);--surface-color-SCOPED-IN-frames-app-nxqv: var(--surface-color);--on-surface-color-SCOPED-IN-frames-app-nxqv: var(--on-surface-color);--background-color-SCOPED-IN-frames-app-nxqv: var(--background-color);--on-background-color-SCOPED-IN-frames-app-nxqv: var(--on-background-color);--menu-width-SCOPED-IN-frames-app-nxqv: var(--menu-width);--menu-background-color-SCOPED-IN-frames-app-nxqv: var(--menu-background-color);--menu-on-background-color-SCOPED-IN-frames-app-nxqv: var(--menu-on-background-color);--background-primary-color-SCOPED-IN-frames-app-nxqv: var(--background-primary-color);--background-on-primary-color-SCOPED-IN-frames-app-nxqv: var(--background-on-primary-color);--background-background-color-SCOPED-IN-frames-app-nxqv: var(--background-background-color);--loading-primary-color-SCOPED-IN-frames-app-nxqv: var(--loading-primary-color);--page-width-lv1-SCOPED-IN-frames-app-nxqv: var(--page-width-lv1);--menu-padding-top: 56px;--menu-padding-top-SCOPED-IN-frames-app-nxqv: var(--menu-padding-top);--loading-z-index: 1000;--loading-z-index-SCOPED-IN-frames-app-nxqv: var(--loading-z-index)}:host{display:block;width:100%;height:100%;position:fixed;color:var(--primary-color-SCOPED-IN-frames-app-nxqv);touch-action:none}:host *{--primary-color: var(--primary-color-SCOPED-IN-frames-app-nxqv);--on-primary-color: var(--on-primary-color-SCOPED-IN-frames-app-nxqv);--surface-color: var(--surface-color-SCOPED-IN-frames-app-nxqv);--on-surface-color: var(--on-surface-color-SCOPED-IN-frames-app-nxqv);--background-color: var(--background-color-SCOPED-IN-frames-app-nxqv);--on-background-color: var(--on-background-color-SCOPED-IN-frames-app-nxqv);--menu-background-color: var(--menu-background-color-SCOPED-IN-frames-app-nxqv);--menu-on-background-color: var(--menu-on-background-color-SCOPED-IN-frames-app-nxqv)}:host frames-side-nav{color:#000;--menu-width: var(--menu-width-SCOPED-IN-frames-app-nxqv)}:host frames-loading{--primary-color: var(--loading-primary-color-SCOPED-IN-frames-app-nxqv)}:host templates-background{--primary-color: var(--background-primary-color-SCOPED-IN-frames-app-nxqv);--on-primary-color: var(--background-on-primary-color-SCOPED-IN-frames-app-nxqv);--background-color: var(--background-background-color-SCOPED-IN-frames-app-nxqv);position:absolute;top:0;left:0}:host frames-side-nav .side-app{position:relative;width:var(--page-width-lv1-SCOPED-IN-frames-app-nxqv);height:100%}\n"], dependencies: [{ kind: "component", type: FabFrame, selector: "frames-fab" }, { kind: "component", type: LoadingFrame, selector: "frames-loading" }, { kind: "component", type: SideNavFrame, selector: "frames-side-nav" }, { kind: "directive", type: RouterOutlet, selector: "router-outlet", inputs: ["name"], outputs: ["activate", "deactivate", "attach", "detach"], exportAs: ["outlet"] }, { kind: "component", type: EntranceFrame, selector: "frames-entrance" }, { kind: "component", type:
367
+ `, isInline: true, styles: [":host{--primary-color-SCOPED-IN-frames-app-1rao: var(--primary-color);--on-primary-color-SCOPED-IN-frames-app-1rao: var(--on-primary-color);--surface-color-SCOPED-IN-frames-app-1rao: var(--surface-color);--on-surface-color-SCOPED-IN-frames-app-1rao: var(--on-surface-color);--background-color-SCOPED-IN-frames-app-1rao: var(--background-color);--on-background-color-SCOPED-IN-frames-app-1rao: var(--on-background-color);--menu-width-SCOPED-IN-frames-app-1rao: var(--menu-width);--menu-background-color-SCOPED-IN-frames-app-1rao: var(--menu-background-color);--menu-on-background-color-SCOPED-IN-frames-app-1rao: var(--menu-on-background-color);--background-primary-color-SCOPED-IN-frames-app-1rao: var(--background-primary-color);--background-on-primary-color-SCOPED-IN-frames-app-1rao: var(--background-on-primary-color);--background-background-color-SCOPED-IN-frames-app-1rao: var(--background-background-color);--loading-primary-color-SCOPED-IN-frames-app-1rao: var(--loading-primary-color);--page-width-lv1-SCOPED-IN-frames-app-1rao: var(--page-width-lv1);--menu-padding-top: 56px;--menu-padding-top-SCOPED-IN-frames-app-1rao: var(--menu-padding-top);--loading-z-index: 1000;--loading-z-index-SCOPED-IN-frames-app-1rao: var(--loading-z-index)}:host{display:block;width:100%;height:100%;position:fixed;color:var(--primary-color-SCOPED-IN-frames-app-1rao);touch-action:none}:host *{--primary-color: var(--primary-color-SCOPED-IN-frames-app-1rao);--on-primary-color: var(--on-primary-color-SCOPED-IN-frames-app-1rao);--surface-color: var(--surface-color-SCOPED-IN-frames-app-1rao);--on-surface-color: var(--on-surface-color-SCOPED-IN-frames-app-1rao);--background-color: var(--background-color-SCOPED-IN-frames-app-1rao);--on-background-color: var(--on-background-color-SCOPED-IN-frames-app-1rao);--menu-background-color: var(--menu-background-color-SCOPED-IN-frames-app-1rao);--menu-on-background-color: var(--menu-on-background-color-SCOPED-IN-frames-app-1rao)}:host frames-side-nav{color:#000;--menu-width: var(--menu-width-SCOPED-IN-frames-app-1rao)}:host frames-loading{--primary-color: var(--loading-primary-color-SCOPED-IN-frames-app-1rao)}:host templates-background{--primary-color: var(--background-primary-color-SCOPED-IN-frames-app-1rao);--on-primary-color: var(--background-on-primary-color-SCOPED-IN-frames-app-1rao);--background-color: var(--background-background-color-SCOPED-IN-frames-app-1rao);position:absolute;top:0;left:0}:host frames-side-nav .side-app{position:relative;width:var(--page-width-lv1-SCOPED-IN-frames-app-1rao);height:100%}\n"], dependencies: [{ kind: "component", type: FabFrame, selector: "frames-fab" }, { kind: "component", type: LoadingFrame, selector: "frames-loading" }, { kind: "component", type: SideNavFrame, selector: "frames-side-nav" }, { kind: "directive", type: RouterOutlet, selector: "router-outlet", inputs: ["name"], outputs: ["activate", "deactivate", "attach", "detach"], exportAs: ["outlet"] }, { kind: "component", type: EntranceFrame, selector: "frames-entrance" }, { kind: "component", type:
310
368
  // DrawerFrameStore,
311
- DrawerFrame, selector: "frames-drawer" }], changeDetection: i0.ChangeDetectionStrategy.OnPush, deferBlockDependencies: [() => [import('@ng-atomic/components/templates/background').then(m => m.BackgroundTemplateStore)]] }); }
369
+ DrawerFrame, selector: "frames-drawer" }, { kind: "component", type: ProgressBarFrame, selector: "frames-progress-bar" }], changeDetection: i0.ChangeDetectionStrategy.OnPush, deferBlockDependencies: [() => [import('@ng-atomic/components/templates/background').then(m => m.BackgroundTemplateStore)]] }); }
312
370
  }
313
371
  i0.ɵɵngDeclareClassMetadataAsync({ minVersion: "18.0.0", version: "18.1.2", ngImport: i0, type: AppFrame, resolveDeferredDeps: () => [import('@ng-atomic/components/templates/background').then(m => m.BackgroundTemplateStore)], resolveMetadata: BackgroundTemplateStore => ({ decorators: [{
314
372
  type: Component,
@@ -321,6 +379,7 @@ i0.ɵɵngDeclareClassMetadataAsync({ minVersion: "18.0.0", version: "18.1.2", ng
321
379
  // DrawerFrameStore,
322
380
  DrawerFrame,
323
381
  BackgroundTemplateStore,
382
+ ProgressBarFrame,
324
383
  ], template: `
325
384
  <router-outlet/>
326
385
  @if (isPlatformBrowser()) {
@@ -329,43 +388,46 @@ i0.ɵɵngDeclareClassMetadataAsync({ minVersion: "18.0.0", version: "18.1.2", ng
329
388
  }
330
389
  }
331
390
  <frames-loading [isLoading]="store.isLoading()">
332
- <frames-fab
333
- [actions]="store.fabActions()"
334
- [hide]="store.fabHide()"
335
- (action)="dispatch($event)"
336
- >
337
- <frames-entrance
338
- [isEntrance]="store.isEntrance()"
339
- [form]="store.form()"
340
- [title]="store.title()"
341
- [actions]="store.entranceActions()"
391
+ <frames-progress-bar [isProgress]="store.isProgress()" [mode]="'query'">
392
+ <frames-fab
393
+ [actions]="store.fabActions()"
394
+ [hide]="store.fabHide()"
342
395
  (action)="dispatch($event)"
343
396
  >
344
- <frames-drawer
345
- [opened]="store.sideAppOpened()"
346
- [position]="'end'"
347
- [hasBackdrop]="false"
397
+ <frames-entrance
398
+ [isEntrance]="store.isEntrance()"
399
+ [form]="store.form()"
400
+ [title]="store.title()"
401
+ [actions]="store.entranceActions()"
402
+ (action)="dispatch($event)"
348
403
  >
349
- <frames-side-nav
350
- [actions]="store.sideNavActions()"
351
- [mode]="store.sideNavMode()"
352
- [menuType]="store.sideNavMenuType()"
353
- [menuTitle]="store.sideNavMenuTitle()"
354
- (action)="dispatch($event)"
355
- contents
404
+ <frames-drawer
405
+ [opened]="store.sideAppOpened()"
406
+ [position]="'end'"
407
+ [hasBackdrop]="false"
356
408
  >
357
- <router-outlet contents/>
358
- </frames-side-nav>
359
- <div drawer style="width: var(--page-width-lv1);height: 100%;">
360
- <router-outlet [name]="store.sideAppOutletName()" />
361
- </div>
362
- </frames-drawer>
363
- </frames-entrance>
364
- </frames-fab>
409
+ <frames-side-nav
410
+ [actions]="store.sideNavActions()"
411
+ [bottomActions]="store.sideNavBottomActions()"
412
+ [mode]="store.sideNavMode()"
413
+ [menuType]="store.sideNavMenuType()"
414
+ [menuTitle]="store.sideNavMenuTitle()"
415
+ (action)="dispatch($event)"
416
+ contents
417
+ >
418
+ <router-outlet contents/>
419
+ </frames-side-nav>
420
+ <div drawer style="width: var(--page-width-lv1);height: 100%;">
421
+ <router-outlet [name]="store.sideAppOutletName()" />
422
+ </div>
423
+ </frames-drawer>
424
+ </frames-entrance>
425
+ </frames-fab>
426
+ </frames-progress-bar>
365
427
  </frames-loading>
366
428
  `, changeDetection: ChangeDetectionStrategy.OnPush, hostDirectives: [
367
429
  AppFrameStore,
368
- ], styles: [":host{--primary-color-SCOPED-IN-frames-app-nxqv: var(--primary-color);--on-primary-color-SCOPED-IN-frames-app-nxqv: var(--on-primary-color);--surface-color-SCOPED-IN-frames-app-nxqv: var(--surface-color);--on-surface-color-SCOPED-IN-frames-app-nxqv: var(--on-surface-color);--background-color-SCOPED-IN-frames-app-nxqv: var(--background-color);--on-background-color-SCOPED-IN-frames-app-nxqv: var(--on-background-color);--menu-width-SCOPED-IN-frames-app-nxqv: var(--menu-width);--menu-background-color-SCOPED-IN-frames-app-nxqv: var(--menu-background-color);--menu-on-background-color-SCOPED-IN-frames-app-nxqv: var(--menu-on-background-color);--background-primary-color-SCOPED-IN-frames-app-nxqv: var(--background-primary-color);--background-on-primary-color-SCOPED-IN-frames-app-nxqv: var(--background-on-primary-color);--background-background-color-SCOPED-IN-frames-app-nxqv: var(--background-background-color);--loading-primary-color-SCOPED-IN-frames-app-nxqv: var(--loading-primary-color);--page-width-lv1-SCOPED-IN-frames-app-nxqv: var(--page-width-lv1);--menu-padding-top: 56px;--menu-padding-top-SCOPED-IN-frames-app-nxqv: var(--menu-padding-top);--loading-z-index: 1000;--loading-z-index-SCOPED-IN-frames-app-nxqv: var(--loading-z-index)}:host{display:block;width:100%;height:100%;position:fixed;color:var(--primary-color-SCOPED-IN-frames-app-nxqv);touch-action:none}:host *{--primary-color: var(--primary-color-SCOPED-IN-frames-app-nxqv);--on-primary-color: var(--on-primary-color-SCOPED-IN-frames-app-nxqv);--surface-color: var(--surface-color-SCOPED-IN-frames-app-nxqv);--on-surface-color: var(--on-surface-color-SCOPED-IN-frames-app-nxqv);--background-color: var(--background-color-SCOPED-IN-frames-app-nxqv);--on-background-color: var(--on-background-color-SCOPED-IN-frames-app-nxqv);--menu-background-color: var(--menu-background-color-SCOPED-IN-frames-app-nxqv);--menu-on-background-color: var(--menu-on-background-color-SCOPED-IN-frames-app-nxqv)}:host frames-side-nav{color:#000;--menu-width: var(--menu-width-SCOPED-IN-frames-app-nxqv)}:host frames-loading{--primary-color: var(--loading-primary-color-SCOPED-IN-frames-app-nxqv)}:host templates-background{--primary-color: var(--background-primary-color-SCOPED-IN-frames-app-nxqv);--on-primary-color: var(--background-on-primary-color-SCOPED-IN-frames-app-nxqv);--background-color: var(--background-background-color-SCOPED-IN-frames-app-nxqv);position:absolute;top:0;left:0}:host frames-side-nav .side-app{position:relative;width:var(--page-width-lv1-SCOPED-IN-frames-app-nxqv);height:100%}\n"] }]
430
+ ], styles: [":host{--primary-color-SCOPED-IN-frames-app-1rao: var(--primary-color);--on-primary-color-SCOPED-IN-frames-app-1rao: var(--on-primary-color);--surface-color-SCOPED-IN-frames-app-1rao: var(--surface-color);--on-surface-color-SCOPED-IN-frames-app-1rao: var(--on-surface-color);--background-color-SCOPED-IN-frames-app-1rao: var(--background-color);--on-background-color-SCOPED-IN-frames-app-1rao: var(--on-background-color);--menu-width-SCOPED-IN-frames-app-1rao: var(--menu-width);--menu-background-color-SCOPED-IN-frames-app-1rao: var(--menu-background-color);--menu-on-background-color-SCOPED-IN-frames-app-1rao: var(--menu-on-background-color);--background-primary-color-SCOPED-IN-frames-app-1rao: var(--background-primary-color);--background-on-primary-color-SCOPED-IN-frames-app-1rao: var(--background-on-primary-color);--background-background-color-SCOPED-IN-frames-app-1rao: var(--background-background-color);--loading-primary-color-SCOPED-IN-frames-app-1rao: var(--loading-primary-color);--page-width-lv1-SCOPED-IN-frames-app-1rao: var(--page-width-lv1);--menu-padding-top: 56px;--menu-padding-top-SCOPED-IN-frames-app-1rao: var(--menu-padding-top);--loading-z-index: 1000;--loading-z-index-SCOPED-IN-frames-app-1rao: var(--loading-z-index)}:host{display:block;width:100%;height:100%;position:fixed;color:var(--primary-color-SCOPED-IN-frames-app-1rao);touch-action:none}:host *{--primary-color: var(--primary-color-SCOPED-IN-frames-app-1rao);--on-primary-color: var(--on-primary-color-SCOPED-IN-frames-app-1rao);--surface-color: var(--surface-color-SCOPED-IN-frames-app-1rao);--on-surface-color: var(--on-surface-color-SCOPED-IN-frames-app-1rao);--background-color: var(--background-color-SCOPED-IN-frames-app-1rao);--on-background-color: var(--on-background-color-SCOPED-IN-frames-app-1rao);--menu-background-color: var(--menu-background-color-SCOPED-IN-frames-app-1rao);--menu-on-background-color: var(--menu-on-background-color-SCOPED-IN-frames-app-1rao)}:host frames-side-nav{color:#000;--menu-width: var(--menu-width-SCOPED-IN-frames-app-1rao)}:host frames-loading{--primary-color: var(--loading-primary-color-SCOPED-IN-frames-app-1rao)}:host templates-background{--primary-color: var(--background-primary-color-SCOPED-IN-frames-app-1rao);--on-primary-color: var(--background-on-primary-color-SCOPED-IN-frames-app-1rao);--background-color: var(--background-background-color-SCOPED-IN-frames-app-1rao);position:absolute;top:0;left:0}:host frames-side-nav .side-app{position:relative;width:var(--page-width-lv1-SCOPED-IN-frames-app-1rao);height:100%}\n"] }]
369
431
  }], ctorParameters: null, propDecorators: null }) });
370
432
 
371
433
  /**