@simplysm/angular 14.0.1 → 14.0.5

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 (456) hide show
  1. package/README.md +318 -0
  2. package/dist/core/commons.d.ts +2 -0
  3. package/dist/core/commons.d.ts.map +1 -0
  4. package/dist/core/commons.js +4 -0
  5. package/dist/core/directives/sd-events.directive.js +7 -7
  6. package/dist/core/directives/sd-item-of-template.directive.d.ts +14 -0
  7. package/dist/core/directives/sd-item-of-template.directive.d.ts.map +1 -0
  8. package/dist/core/directives/sd-item-of-template.directive.js +17 -0
  9. package/dist/core/directives/sd-router-link.directive.d.ts +19 -0
  10. package/dist/core/directives/sd-router-link.directive.d.ts.map +1 -0
  11. package/dist/core/directives/sd-router-link.directive.js +64 -0
  12. package/dist/core/directives/sd-typed-template.directive.d.ts +8 -0
  13. package/dist/core/directives/sd-typed-template.directive.d.ts.map +1 -0
  14. package/dist/core/directives/sd-typed-template.directive.js +17 -0
  15. package/dist/core/pipes/format.pipe.d.ts +9 -0
  16. package/dist/core/pipes/format.pipe.d.ts.map +1 -0
  17. package/dist/core/pipes/format.pipe.js +43 -0
  18. package/dist/core/plugins/commands/findTopOpenModalEl.d.ts +8 -0
  19. package/dist/core/plugins/commands/findTopOpenModalEl.d.ts.map +1 -0
  20. package/dist/core/plugins/commands/findTopOpenModalEl.js +21 -0
  21. package/dist/core/plugins/commands/sd-insert-command-event.plugin.d.ts.map +1 -1
  22. package/dist/core/plugins/commands/sd-insert-command-event.plugin.js +4 -0
  23. package/dist/core/plugins/commands/sd-refresh-command-event.plugin.d.ts.map +1 -1
  24. package/dist/core/plugins/commands/sd-refresh-command-event.plugin.js +4 -0
  25. package/dist/core/plugins/commands/sd-save-command-event.plugin.d.ts.map +1 -1
  26. package/dist/core/plugins/commands/sd-save-command-event.plugin.js +4 -0
  27. package/dist/core/plugins/events/sd-resize-event.plugin.d.ts.map +1 -1
  28. package/dist/core/plugins/events/sd-resize-event.plugin.js +0 -18
  29. package/dist/core/plugins/sd-global-error-handler.plugin.d.ts +1 -0
  30. package/dist/core/plugins/sd-global-error-handler.plugin.d.ts.map +1 -1
  31. package/dist/core/plugins/sd-global-error-handler.plugin.js +23 -13
  32. package/dist/core/provideSdAngular.d.ts +5 -0
  33. package/dist/core/provideSdAngular.d.ts.map +1 -0
  34. package/dist/core/provideSdAngular.js +127 -0
  35. package/dist/core/providers/sd-angular-config.provider.d.ts +7 -0
  36. package/dist/core/providers/sd-angular-config.provider.d.ts.map +1 -0
  37. package/dist/core/providers/sd-angular-config.provider.js +11 -0
  38. package/dist/core/providers/sd-app-structure.provider.d.ts +79 -0
  39. package/dist/core/providers/sd-app-structure.provider.d.ts.map +1 -0
  40. package/dist/core/providers/sd-app-structure.provider.js +278 -0
  41. package/dist/core/providers/sd-file-dialog.provider.d.ts +8 -0
  42. package/dist/core/providers/sd-file-dialog.provider.d.ts.map +1 -0
  43. package/dist/core/providers/sd-file-dialog.provider.js +49 -0
  44. package/dist/core/providers/sd-local-storage.provider.d.ts +10 -0
  45. package/dist/core/providers/sd-local-storage.provider.d.ts.map +1 -0
  46. package/dist/core/providers/sd-local-storage.provider.js +24 -0
  47. package/dist/core/providers/sd-navigate-window.provider.d.ts +9 -0
  48. package/dist/core/providers/sd-navigate-window.provider.d.ts.map +1 -0
  49. package/dist/core/providers/sd-navigate-window.provider.js +33 -0
  50. package/dist/core/providers/sd-print.provider.d.ts +26 -0
  51. package/dist/core/providers/sd-print.provider.d.ts.map +1 -0
  52. package/dist/core/providers/sd-print.provider.js +142 -0
  53. package/dist/core/providers/sd-service-client-factory.provider.d.ts +19 -0
  54. package/dist/core/providers/sd-service-client-factory.provider.d.ts.map +1 -0
  55. package/dist/core/providers/sd-service-client-factory.provider.js +86 -0
  56. package/dist/core/providers/sd-shared-data.provider.d.ts +36 -0
  57. package/dist/core/providers/sd-shared-data.provider.d.ts.map +1 -0
  58. package/dist/core/providers/sd-shared-data.provider.js +119 -0
  59. package/dist/core/providers/sd-system-config.provider.d.ts +13 -0
  60. package/dist/core/providers/sd-system-config.provider.d.ts.map +1 -0
  61. package/dist/core/providers/sd-system-config.provider.js +29 -0
  62. package/dist/core/providers/sd-system-log.provider.d.ts +8 -0
  63. package/dist/core/providers/sd-system-log.provider.d.ts.map +1 -0
  64. package/dist/core/providers/sd-system-log.provider.js +23 -0
  65. package/dist/core/providers/sd-theme-provider.js +1 -1
  66. package/dist/core/utils/TDirectiveInputSignals.d.ts +29 -0
  67. package/dist/core/utils/TDirectiveInputSignals.d.ts.map +1 -0
  68. package/dist/core/utils/TDirectiveInputSignals.js +1 -0
  69. package/dist/core/utils/setups/setupCanDeactivate.d.ts +2 -0
  70. package/dist/core/utils/setups/setupCanDeactivate.d.ts.map +1 -0
  71. package/dist/core/utils/setups/setupCanDeactivate.js +28 -0
  72. package/dist/core/utils/setups/setupModelHook.d.ts +3 -0
  73. package/dist/core/utils/setups/setupModelHook.d.ts.map +1 -0
  74. package/dist/core/utils/setups/setupModelHook.js +18 -0
  75. package/dist/core/utils/useCurrentPageCodeSignal.d.ts +3 -0
  76. package/dist/core/utils/useCurrentPageCodeSignal.d.ts.map +1 -0
  77. package/dist/core/utils/useCurrentPageCodeSignal.js +13 -0
  78. package/dist/core/utils/useExpandingManager.d.ts +23 -0
  79. package/dist/core/utils/useExpandingManager.d.ts.map +1 -0
  80. package/dist/core/utils/useExpandingManager.js +86 -0
  81. package/dist/core/utils/useFullPageCodeSignal.d.ts +3 -0
  82. package/dist/core/utils/useFullPageCodeSignal.d.ts.map +1 -0
  83. package/dist/core/utils/useFullPageCodeSignal.js +13 -0
  84. package/dist/core/utils/useSdSystemConfigResource.d.ts +13 -0
  85. package/dist/core/utils/useSdSystemConfigResource.d.ts.map +1 -0
  86. package/dist/core/utils/useSdSystemConfigResource.js +31 -0
  87. package/dist/core/utils/useSelectionManager.d.ts +18 -0
  88. package/dist/core/utils/useSelectionManager.d.ts.map +1 -0
  89. package/dist/core/utils/useSelectionManager.js +89 -0
  90. package/dist/core/utils/useSortingManager.d.ts +17 -0
  91. package/dist/core/utils/useSortingManager.d.ts.map +1 -0
  92. package/dist/core/utils/useSortingManager.js +81 -0
  93. package/dist/core/utils/useViewTitleSignal.d.ts +3 -0
  94. package/dist/core/utils/useViewTitleSignal.d.ts.map +1 -0
  95. package/dist/core/utils/useViewTitleSignal.js +17 -0
  96. package/dist/core/utils/useViewTypeSignal.d.ts +4 -0
  97. package/dist/core/utils/useViewTypeSignal.d.ts.map +1 -0
  98. package/dist/core/utils/useViewTypeSignal.js +23 -0
  99. package/dist/index.d.ts +95 -0
  100. package/dist/index.d.ts.map +1 -1
  101. package/dist/index.js +115 -0
  102. package/dist/styles.css +1462 -722
  103. package/dist/ui/data/list/sd-list-item.control.d.ts +18 -0
  104. package/dist/ui/data/list/sd-list-item.control.d.ts.map +1 -0
  105. package/dist/ui/data/list/sd-list-item.control.js +130 -0
  106. package/dist/ui/data/list/sd-list.control.d.ts +7 -0
  107. package/dist/ui/data/list/sd-list.control.d.ts.map +1 -0
  108. package/dist/ui/data/list/sd-list.control.js +22 -0
  109. package/dist/ui/data/sheet/sd-sheet-column.directive.d.ts +18 -0
  110. package/dist/ui/data/sheet/sd-sheet-column.directive.d.ts.map +1 -0
  111. package/dist/ui/data/sheet/sd-sheet-column.directive.js +30 -0
  112. package/dist/ui/data/sheet/sd-sheet-config.modal.d.ts +39 -0
  113. package/dist/ui/data/sheet/sd-sheet-config.modal.d.ts.map +1 -0
  114. package/dist/ui/data/sheet/sd-sheet-config.modal.js +258 -0
  115. package/dist/ui/data/sheet/sd-sheet.control.d.ts +154 -0
  116. package/dist/ui/data/sheet/sd-sheet.control.d.ts.map +1 -0
  117. package/dist/ui/data/sheet/sd-sheet.control.js +846 -0
  118. package/dist/ui/data/sheet/types.d.ts +32 -0
  119. package/dist/ui/data/sheet/types.d.ts.map +1 -0
  120. package/dist/ui/data/sheet/types.js +1 -0
  121. package/dist/ui/data/sheet/useSheetCellAgent.d.ts +21 -0
  122. package/dist/ui/data/sheet/useSheetCellAgent.d.ts.map +1 -0
  123. package/dist/ui/data/sheet/useSheetCellAgent.js +245 -0
  124. package/dist/ui/data/sheet/useSheetColumnFixing.d.ts +9 -0
  125. package/dist/ui/data/sheet/useSheetColumnFixing.d.ts.map +1 -0
  126. package/dist/ui/data/sheet/useSheetColumnFixing.js +29 -0
  127. package/dist/ui/data/sheet/useSheetDomAccessor.d.ts +11 -0
  128. package/dist/ui/data/sheet/useSheetDomAccessor.d.ts.map +1 -0
  129. package/dist/ui/data/sheet/useSheetDomAccessor.js +55 -0
  130. package/dist/ui/data/sheet/useSheetLayoutEngine.d.ts +14 -0
  131. package/dist/ui/data/sheet/useSheetLayoutEngine.d.ts.map +1 -0
  132. package/dist/ui/data/sheet/useSheetLayoutEngine.js +126 -0
  133. package/dist/ui/form/button/sd-additional-button.control.d.ts +8 -0
  134. package/dist/ui/form/button/sd-additional-button.control.d.ts.map +1 -0
  135. package/dist/ui/form/button/sd-additional-button.control.js +38 -0
  136. package/dist/ui/form/button/sd-anchor.control.d.ts +8 -0
  137. package/dist/ui/form/button/sd-anchor.control.d.ts.map +1 -0
  138. package/dist/ui/form/button/sd-anchor.control.js +25 -0
  139. package/dist/ui/form/button/sd-button.control.d.ts +14 -0
  140. package/dist/ui/form/button/sd-button.control.d.ts.map +1 -0
  141. package/dist/ui/form/button/sd-button.control.js +49 -0
  142. package/dist/ui/form/button/sd-modal-select-button.control.d.ts +46 -0
  143. package/dist/ui/form/button/sd-modal-select-button.control.d.ts.map +1 -0
  144. package/dist/ui/form/button/sd-modal-select-button.control.js +149 -0
  145. package/dist/ui/form/checkbox/sd-checkbox-group-item.control.d.ts +12 -0
  146. package/dist/ui/form/checkbox/sd-checkbox-group-item.control.d.ts.map +1 -0
  147. package/dist/ui/form/checkbox/sd-checkbox-group-item.control.js +53 -0
  148. package/dist/ui/form/checkbox/sd-checkbox-group.control.d.ts +8 -0
  149. package/dist/ui/form/checkbox/sd-checkbox-group.control.d.ts.map +1 -0
  150. package/dist/ui/form/checkbox/sd-checkbox-group.control.js +26 -0
  151. package/dist/ui/form/checkbox/sd-checkbox.control.d.ts +19 -0
  152. package/dist/ui/form/checkbox/sd-checkbox.control.d.ts.map +1 -0
  153. package/dist/ui/form/checkbox/sd-checkbox.control.js +103 -0
  154. package/dist/ui/form/checkbox/sd-switch.control.d.ts +14 -0
  155. package/dist/ui/form/checkbox/sd-switch.control.d.ts.map +1 -0
  156. package/dist/ui/form/checkbox/sd-switch.control.js +54 -0
  157. package/dist/ui/form/choice/sd-state-preset.control.d.ts +24 -0
  158. package/dist/ui/form/choice/sd-state-preset.control.d.ts.map +1 -0
  159. package/dist/ui/form/choice/sd-state-preset.control.js +134 -0
  160. package/dist/ui/form/editor/sd-tiptap-editor.control.d.ts +35 -0
  161. package/dist/ui/form/editor/sd-tiptap-editor.control.d.ts.map +1 -0
  162. package/dist/ui/form/editor/sd-tiptap-editor.control.js +480 -0
  163. package/dist/ui/form/input/sd-date-range.picker.d.ts +13 -0
  164. package/dist/ui/form/input/sd-date-range.picker.d.ts.map +1 -0
  165. package/dist/ui/form/input/sd-date-range.picker.js +125 -0
  166. package/dist/ui/form/input/sd-numpad.control.d.ts +18 -0
  167. package/dist/ui/form/input/sd-numpad.control.d.ts.map +1 -0
  168. package/dist/ui/form/input/sd-numpad.control.js +241 -0
  169. package/dist/ui/form/input/sd-range.control.d.ts +13 -0
  170. package/dist/ui/form/input/sd-range.control.d.ts.map +1 -0
  171. package/dist/ui/form/input/sd-range.control.js +53 -0
  172. package/dist/ui/form/input/sd-textarea.control.d.ts +23 -0
  173. package/dist/ui/form/input/sd-textarea.control.d.ts.map +1 -0
  174. package/dist/ui/form/input/sd-textarea.control.js +132 -0
  175. package/dist/ui/form/input/sd-textfield-type-handlers.d.ts +46 -0
  176. package/dist/ui/form/input/sd-textfield-type-handlers.d.ts.map +1 -0
  177. package/dist/ui/form/input/sd-textfield-type-handlers.js +336 -0
  178. package/dist/ui/form/input/sd-textfield.control.d.ts +39 -0
  179. package/dist/ui/form/input/sd-textfield.control.d.ts.map +1 -0
  180. package/dist/ui/form/input/sd-textfield.control.js +211 -0
  181. package/dist/ui/form/sd-form.control.d.ts +13 -0
  182. package/dist/ui/form/sd-form.control.d.ts.map +1 -0
  183. package/dist/ui/form/sd-form.control.js +60 -0
  184. package/dist/ui/form/select/sd-select-button.control.d.ts +7 -0
  185. package/dist/ui/form/select/sd-select-button.control.d.ts.map +1 -0
  186. package/dist/ui/form/select/sd-select-button.control.js +25 -0
  187. package/dist/ui/form/select/sd-select-item.control.d.ts +18 -0
  188. package/dist/ui/form/select/sd-select-item.control.d.ts.map +1 -0
  189. package/dist/ui/form/select/sd-select-item.control.js +103 -0
  190. package/dist/ui/form/select/sd-select.control.d.ts +45 -0
  191. package/dist/ui/form/select/sd-select.control.d.ts.map +1 -0
  192. package/dist/ui/form/select/sd-select.control.js +430 -0
  193. package/dist/ui/layout/dock/sd-dock-container.control.d.ts +12 -0
  194. package/dist/ui/layout/dock/sd-dock-container.control.d.ts.map +1 -0
  195. package/dist/ui/layout/dock/sd-dock-container.control.js +96 -0
  196. package/dist/ui/layout/dock/sd-dock.control.d.ts +17 -0
  197. package/dist/ui/layout/dock/sd-dock.control.d.ts.map +1 -0
  198. package/dist/ui/layout/dock/sd-dock.control.js +111 -0
  199. package/dist/ui/layout/kanban/sd-kanban-board.control.d.ts +24 -0
  200. package/dist/ui/layout/kanban/sd-kanban-board.control.d.ts.map +1 -0
  201. package/dist/ui/layout/kanban/sd-kanban-board.control.js +37 -0
  202. package/dist/ui/layout/kanban/sd-kanban-lane.control.d.ts +29 -0
  203. package/dist/ui/layout/kanban/sd-kanban-lane.control.d.ts.map +1 -0
  204. package/dist/ui/layout/kanban/sd-kanban-lane.control.js +223 -0
  205. package/dist/ui/layout/kanban/sd-kanban.control.d.ts +32 -0
  206. package/dist/ui/layout/kanban/sd-kanban.control.d.ts.map +1 -0
  207. package/dist/ui/layout/kanban/sd-kanban.control.js +147 -0
  208. package/dist/ui/layout/sd-card.directive.d.ts +6 -0
  209. package/dist/ui/layout/sd-card.directive.d.ts.map +1 -0
  210. package/dist/ui/layout/sd-card.directive.js +16 -0
  211. package/dist/ui/layout/sd-gap.control.d.ts +13 -0
  212. package/dist/ui/layout/sd-gap.control.d.ts.map +1 -0
  213. package/dist/ui/layout/sd-gap.control.js +44 -0
  214. package/dist/ui/layout/sd-pane.directive.d.ts +6 -0
  215. package/dist/ui/layout/sd-pane.directive.d.ts.map +1 -0
  216. package/dist/ui/layout/sd-pane.directive.js +17 -0
  217. package/dist/ui/layout/view/sd-view-item.control.d.ts +9 -0
  218. package/dist/ui/layout/view/sd-view-item.control.d.ts.map +1 -0
  219. package/dist/ui/layout/view/sd-view-item.control.js +25 -0
  220. package/dist/ui/layout/view/sd-view.control.d.ts +8 -0
  221. package/dist/ui/layout/view/sd-view.control.d.ts.map +1 -0
  222. package/dist/ui/layout/view/sd-view.control.js +23 -0
  223. package/dist/ui/navigation/collapse/sd-collapse-icon.control.d.ts +13 -0
  224. package/dist/ui/navigation/collapse/sd-collapse-icon.control.d.ts.map +1 -0
  225. package/dist/ui/navigation/collapse/sd-collapse-icon.control.js +33 -0
  226. package/dist/ui/navigation/collapse/sd-collapse.control.d.ts +14 -0
  227. package/dist/ui/navigation/collapse/sd-collapse.control.d.ts.map +1 -0
  228. package/dist/ui/navigation/collapse/sd-collapse.control.js +59 -0
  229. package/dist/ui/navigation/menu-utils.d.ts +13 -0
  230. package/dist/ui/navigation/menu-utils.d.ts.map +1 -0
  231. package/dist/ui/navigation/menu-utils.js +18 -0
  232. package/dist/ui/navigation/pagination/sd-pagination.control.d.ts +24 -0
  233. package/dist/ui/navigation/pagination/sd-pagination.control.d.ts.map +1 -0
  234. package/dist/ui/navigation/pagination/sd-pagination.control.js +137 -0
  235. package/dist/ui/navigation/sidebar/sd-sidebar-container.control.d.ts +11 -0
  236. package/dist/ui/navigation/sidebar/sd-sidebar-container.control.d.ts.map +1 -0
  237. package/dist/ui/navigation/sidebar/sd-sidebar-container.control.js +46 -0
  238. package/dist/ui/navigation/sidebar/sd-sidebar-menu.control.d.ts +28 -0
  239. package/dist/ui/navigation/sidebar/sd-sidebar-menu.control.d.ts.map +1 -0
  240. package/dist/ui/navigation/sidebar/sd-sidebar-menu.control.js +159 -0
  241. package/dist/ui/navigation/sidebar/sd-sidebar-user.control.d.ts +16 -0
  242. package/dist/ui/navigation/sidebar/sd-sidebar-user.control.d.ts.map +1 -0
  243. package/dist/ui/navigation/sidebar/sd-sidebar-user.control.js +109 -0
  244. package/dist/ui/navigation/sidebar/sd-sidebar.control.d.ts +8 -0
  245. package/dist/ui/navigation/sidebar/sd-sidebar.control.d.ts.map +1 -0
  246. package/dist/ui/navigation/sidebar/sd-sidebar.control.js +24 -0
  247. package/dist/ui/navigation/tab/sd-tab-item.control.d.ts +10 -0
  248. package/dist/ui/navigation/tab/sd-tab-item.control.d.ts.map +1 -0
  249. package/dist/ui/navigation/tab/sd-tab-item.control.js +31 -0
  250. package/dist/ui/navigation/tab/sd-tab.control.d.ts +7 -0
  251. package/dist/ui/navigation/tab/sd-tab.control.d.ts.map +1 -0
  252. package/dist/ui/navigation/tab/sd-tab.control.js +18 -0
  253. package/dist/ui/navigation/tab/sd-tabview-item.control.d.ts +10 -0
  254. package/dist/ui/navigation/tab/sd-tabview-item.control.d.ts.map +1 -0
  255. package/dist/ui/navigation/tab/sd-tabview-item.control.js +26 -0
  256. package/dist/ui/navigation/tab/sd-tabview.control.d.ts +9 -0
  257. package/dist/ui/navigation/tab/sd-tabview.control.d.ts.map +1 -0
  258. package/dist/ui/navigation/tab/sd-tabview.control.js +67 -0
  259. package/dist/ui/navigation/topbar/sd-topbar-container.control.d.ts +6 -0
  260. package/dist/ui/navigation/topbar/sd-topbar-container.control.d.ts.map +1 -0
  261. package/dist/ui/navigation/topbar/sd-topbar-container.control.js +17 -0
  262. package/dist/ui/navigation/topbar/sd-topbar-menu.control.d.ts +29 -0
  263. package/dist/ui/navigation/topbar/sd-topbar-menu.control.d.ts.map +1 -0
  264. package/dist/ui/navigation/topbar/sd-topbar-menu.control.js +245 -0
  265. package/dist/ui/navigation/topbar/sd-topbar-user.control.d.ts +13 -0
  266. package/dist/ui/navigation/topbar/sd-topbar-user.control.d.ts.map +1 -0
  267. package/dist/ui/navigation/topbar/sd-topbar-user.control.js +77 -0
  268. package/dist/ui/navigation/topbar/sd-topbar.control.d.ts +12 -0
  269. package/dist/ui/navigation/topbar/sd-topbar.control.d.ts.map +1 -0
  270. package/dist/ui/navigation/topbar/sd-topbar.control.js +59 -0
  271. package/dist/ui/overlay/busy/sd-busy-container.control.d.ts +14 -0
  272. package/dist/ui/overlay/busy/sd-busy-container.control.d.ts.map +1 -0
  273. package/dist/ui/overlay/busy/sd-busy-container.control.js +119 -0
  274. package/dist/ui/overlay/busy/sd-busy.provider.d.ts +16 -0
  275. package/dist/ui/overlay/busy/sd-busy.provider.d.ts.map +1 -0
  276. package/dist/ui/overlay/busy/sd-busy.provider.js +43 -0
  277. package/dist/ui/overlay/dropdown/sd-dropdown-popup.control.d.ts +11 -0
  278. package/dist/ui/overlay/dropdown/sd-dropdown-popup.control.d.ts.map +1 -0
  279. package/dist/ui/overlay/dropdown/sd-dropdown-popup.control.js +43 -0
  280. package/dist/ui/overlay/dropdown/sd-dropdown.control.d.ts +27 -0
  281. package/dist/ui/overlay/dropdown/sd-dropdown.control.d.ts.map +1 -0
  282. package/dist/ui/overlay/dropdown/sd-dropdown.control.js +284 -0
  283. package/dist/ui/overlay/modal/sd-confirm-modal.control.d.ts +17 -0
  284. package/dist/ui/overlay/modal/sd-confirm-modal.control.d.ts.map +1 -0
  285. package/dist/ui/overlay/modal/sd-confirm-modal.control.js +51 -0
  286. package/dist/ui/overlay/modal/sd-modal.control.d.ts +51 -0
  287. package/dist/ui/overlay/modal/sd-modal.control.d.ts.map +1 -0
  288. package/dist/ui/overlay/modal/sd-modal.control.js +411 -0
  289. package/dist/ui/overlay/modal/sd-modal.provider.d.ts +65 -0
  290. package/dist/ui/overlay/modal/sd-modal.provider.d.ts.map +1 -0
  291. package/dist/ui/overlay/modal/sd-modal.provider.js +146 -0
  292. package/dist/ui/overlay/modal/sd-prompt-modal.control.d.ts +19 -0
  293. package/dist/ui/overlay/modal/sd-prompt-modal.control.d.ts.map +1 -0
  294. package/dist/ui/overlay/modal/sd-prompt-modal.control.js +71 -0
  295. package/dist/ui/overlay/toast/sd-toast-container.control.d.ts +7 -0
  296. package/dist/ui/overlay/toast/sd-toast-container.control.d.ts.map +1 -0
  297. package/dist/ui/overlay/toast/sd-toast-container.control.js +20 -0
  298. package/dist/ui/overlay/toast/sd-toast.control.d.ts +14 -0
  299. package/dist/ui/overlay/toast/sd-toast.control.d.ts.map +1 -0
  300. package/dist/ui/overlay/toast/sd-toast.control.js +79 -0
  301. package/dist/ui/overlay/toast/sd-toast.provider.d.ts +45 -0
  302. package/dist/ui/overlay/toast/sd-toast.provider.d.ts.map +1 -0
  303. package/dist/ui/overlay/toast/sd-toast.provider.js +219 -0
  304. package/dist/ui/visual/sd-barcode.control.d.ts +11 -0
  305. package/dist/ui/visual/sd-barcode.control.d.ts.map +1 -0
  306. package/dist/ui/visual/sd-barcode.control.js +35 -0
  307. package/dist/ui/visual/sd-calendar.control.d.ts +20 -0
  308. package/dist/ui/visual/sd-calendar.control.d.ts.map +1 -0
  309. package/dist/ui/visual/sd-calendar.control.js +189 -0
  310. package/dist/ui/visual/sd-echarts.control.d.ts +13 -0
  311. package/dist/ui/visual/sd-echarts.control.d.ts.map +1 -0
  312. package/dist/ui/visual/sd-echarts.control.js +55 -0
  313. package/dist/ui/visual/sd-label.control.d.ts +9 -0
  314. package/dist/ui/visual/sd-label.control.d.ts.map +1 -0
  315. package/dist/ui/visual/sd-label.control.js +27 -0
  316. package/dist/ui/visual/sd-note.control.d.ts +9 -0
  317. package/dist/ui/visual/sd-note.control.d.ts.map +1 -0
  318. package/dist/ui/visual/sd-note.control.js +26 -0
  319. package/dist/ui/visual/sd-progress.control.d.ts +10 -0
  320. package/dist/ui/visual/sd-progress.control.d.ts.map +1 -0
  321. package/dist/ui/visual/sd-progress.control.js +38 -0
  322. package/docs/commons-and-configuration.md +34 -0
  323. package/docs/data-display-components.md +146 -0
  324. package/docs/directives.md +158 -0
  325. package/docs/event-plugins.md +109 -0
  326. package/docs/form-components.md +362 -0
  327. package/docs/hooks-and-utilities.md +175 -0
  328. package/docs/layout-components.md +140 -0
  329. package/docs/navigation-components.md +200 -0
  330. package/docs/overlay-components.md +193 -0
  331. package/docs/pipes.md +25 -0
  332. package/docs/providers.md +448 -0
  333. package/docs/setup-functions.md +66 -0
  334. package/docs/visual-components.md +89 -0
  335. package/package.json +37 -18
  336. package/scss/commons/_mixins.scss +34 -0
  337. package/scss/commons/_styles.scss +27 -68
  338. package/scss/commons/_variables.scss +7 -0
  339. package/scss/controls/_card.scss +29 -0
  340. package/scss/controls/_flex.scss +38 -0
  341. package/scss/controls/_form-box.scss +49 -0
  342. package/scss/controls/_form-table.scss +45 -0
  343. package/scss/controls/_grid.scss +36 -0
  344. package/scss/controls/_table.scss +99 -0
  345. package/scss/styles.scss +7 -0
  346. package/scss/themes/_variables-dark.scss +2 -0
  347. package/src/core/commons.ts +4 -0
  348. package/src/core/directives/sd-events.directive.ts +7 -7
  349. package/src/core/directives/sd-item-of-template.directive.ts +23 -0
  350. package/src/core/directives/sd-router-link.directive.ts +81 -0
  351. package/src/core/directives/sd-typed-template.directive.ts +16 -0
  352. package/src/core/pipes/format.pipe.ts +37 -0
  353. package/src/core/plugins/commands/findTopOpenModalEl.ts +23 -0
  354. package/src/core/plugins/commands/sd-insert-command-event.plugin.ts +4 -0
  355. package/src/core/plugins/commands/sd-refresh-command-event.plugin.ts +4 -0
  356. package/src/core/plugins/commands/sd-save-command-event.plugin.ts +4 -0
  357. package/src/core/plugins/events/sd-resize-event.plugin.ts +0 -22
  358. package/src/core/plugins/sd-global-error-handler.plugin.ts +22 -13
  359. package/src/core/provideSdAngular.ts +154 -0
  360. package/src/core/providers/sd-angular-config.provider.ts +6 -0
  361. package/src/core/providers/sd-app-structure.provider.ts +446 -0
  362. package/src/core/providers/sd-file-dialog.provider.ts +49 -0
  363. package/src/core/providers/sd-local-storage.provider.ts +21 -0
  364. package/src/core/providers/sd-navigate-window.provider.ts +44 -0
  365. package/src/core/providers/sd-print.provider.ts +189 -0
  366. package/src/core/providers/sd-service-client-factory.provider.ts +98 -0
  367. package/src/core/providers/sd-shared-data.provider.ts +179 -0
  368. package/src/core/providers/sd-system-config.provider.ts +28 -0
  369. package/src/core/providers/sd-system-log.provider.ts +19 -0
  370. package/src/core/providers/sd-theme-provider.ts +1 -1
  371. package/src/core/utils/TDirectiveInputSignals.ts +34 -0
  372. package/src/core/utils/setups/setupCanDeactivate.ts +34 -0
  373. package/src/core/utils/setups/setupModelHook.ts +26 -0
  374. package/src/core/utils/useCurrentPageCodeSignal.ts +16 -0
  375. package/src/core/utils/useExpandingManager.ts +117 -0
  376. package/src/core/utils/useFullPageCodeSignal.ts +24 -0
  377. package/src/core/utils/useSdSystemConfigResource.ts +36 -0
  378. package/src/core/utils/useSelectionManager.ts +104 -0
  379. package/src/core/utils/useSortingManager.ts +89 -0
  380. package/src/core/utils/useViewTitleSignal.ts +21 -0
  381. package/src/core/utils/useViewTypeSignal.ts +33 -0
  382. package/src/index.ts +209 -0
  383. package/src/scss.d.ts +1 -0
  384. package/src/ui/data/list/sd-list-item.control.ts +143 -0
  385. package/src/ui/data/list/sd-list.control.ts +41 -0
  386. package/src/ui/data/sheet/sd-sheet-column.directive.ts +26 -0
  387. package/src/ui/data/sheet/sd-sheet-config.modal.ts +252 -0
  388. package/src/ui/data/sheet/sd-sheet.control.ts +766 -0
  389. package/src/ui/data/sheet/types.ts +37 -0
  390. package/src/ui/data/sheet/useSheetCellAgent.ts +267 -0
  391. package/src/ui/data/sheet/useSheetColumnFixing.ts +37 -0
  392. package/src/ui/data/sheet/useSheetDomAccessor.ts +62 -0
  393. package/src/ui/data/sheet/useSheetLayoutEngine.ts +143 -0
  394. package/src/ui/form/button/sd-additional-button.control.ts +100 -0
  395. package/src/ui/form/button/sd-anchor.control.ts +67 -0
  396. package/src/ui/form/button/sd-button.control.ts +209 -0
  397. package/src/ui/form/button/sd-modal-select-button.control.ts +237 -0
  398. package/src/ui/form/checkbox/sd-checkbox-group-item.control.ts +51 -0
  399. package/src/ui/form/checkbox/sd-checkbox-group.control.ts +24 -0
  400. package/src/ui/form/checkbox/sd-checkbox.control.ts +305 -0
  401. package/src/ui/form/checkbox/sd-switch.control.ts +145 -0
  402. package/src/ui/form/choice/sd-state-preset.control.ts +173 -0
  403. package/src/ui/form/editor/sd-tiptap-editor.control.ts +474 -0
  404. package/src/ui/form/input/sd-date-range.picker.ts +98 -0
  405. package/src/ui/form/input/sd-numpad.control.ts +178 -0
  406. package/src/ui/form/input/sd-range.control.ts +59 -0
  407. package/src/ui/form/input/sd-textarea.control.ts +221 -0
  408. package/src/ui/form/input/sd-textfield-type-handlers.ts +445 -0
  409. package/src/ui/form/input/sd-textfield.control.ts +395 -0
  410. package/src/ui/form/sd-form.control.ts +52 -0
  411. package/src/ui/form/select/sd-select-button.control.ts +43 -0
  412. package/src/ui/form/select/sd-select-item.control.ts +143 -0
  413. package/src/ui/form/select/sd-select.control.ts +412 -0
  414. package/src/ui/layout/dock/sd-dock-container.control.ts +100 -0
  415. package/src/ui/layout/dock/sd-dock.control.ts +171 -0
  416. package/src/ui/layout/kanban/sd-kanban-board.control.ts +74 -0
  417. package/src/ui/layout/kanban/sd-kanban-lane.control.ts +210 -0
  418. package/src/ui/layout/kanban/sd-kanban.control.ts +227 -0
  419. package/src/ui/layout/sd-card.directive.ts +10 -0
  420. package/src/ui/layout/sd-gap.control.ts +63 -0
  421. package/src/ui/layout/sd-pane.directive.ts +11 -0
  422. package/src/ui/layout/view/sd-view-item.control.ts +45 -0
  423. package/src/ui/layout/view/sd-view.control.ts +31 -0
  424. package/src/ui/navigation/collapse/sd-collapse-icon.control.ts +51 -0
  425. package/src/ui/navigation/collapse/sd-collapse.control.ts +75 -0
  426. package/src/ui/navigation/menu-utils.ts +36 -0
  427. package/src/ui/navigation/pagination/sd-pagination.control.ts +125 -0
  428. package/src/ui/navigation/sidebar/sd-sidebar-container.control.ts +92 -0
  429. package/src/ui/navigation/sidebar/sd-sidebar-menu.control.ts +129 -0
  430. package/src/ui/navigation/sidebar/sd-sidebar-user.control.ts +84 -0
  431. package/src/ui/navigation/sidebar/sd-sidebar.control.ts +67 -0
  432. package/src/ui/navigation/tab/sd-tab-item.control.ts +55 -0
  433. package/src/ui/navigation/tab/sd-tab.control.ts +25 -0
  434. package/src/ui/navigation/tab/sd-tabview-item.control.ts +48 -0
  435. package/src/ui/navigation/tab/sd-tabview.control.ts +39 -0
  436. package/src/ui/navigation/topbar/sd-topbar-container.control.ts +22 -0
  437. package/src/ui/navigation/topbar/sd-topbar-menu.control.ts +165 -0
  438. package/src/ui/navigation/topbar/sd-topbar-user.control.ts +58 -0
  439. package/src/ui/navigation/topbar/sd-topbar.control.ts +94 -0
  440. package/src/ui/overlay/busy/sd-busy-container.control.ts +243 -0
  441. package/src/ui/overlay/busy/sd-busy.provider.ts +55 -0
  442. package/src/ui/overlay/dropdown/sd-dropdown-popup.control.ts +110 -0
  443. package/src/ui/overlay/dropdown/sd-dropdown.control.ts +310 -0
  444. package/src/ui/overlay/modal/sd-confirm-modal.control.ts +66 -0
  445. package/src/ui/overlay/modal/sd-modal.control.ts +362 -0
  446. package/src/ui/overlay/modal/sd-modal.provider.ts +216 -0
  447. package/src/ui/overlay/modal/sd-prompt-modal.control.ts +92 -0
  448. package/src/ui/overlay/toast/sd-toast-container.control.ts +58 -0
  449. package/src/ui/overlay/toast/sd-toast.control.ts +123 -0
  450. package/src/ui/overlay/toast/sd-toast.provider.ts +302 -0
  451. package/src/ui/visual/sd-barcode.control.ts +62 -0
  452. package/src/ui/visual/sd-calendar.control.ts +188 -0
  453. package/src/ui/visual/sd-echarts.control.ts +73 -0
  454. package/src/ui/visual/sd-label.control.ts +66 -0
  455. package/src/ui/visual/sd-note.control.ts +66 -0
  456. package/src/ui/visual/sd-progress.control.ts +88 -0
@@ -0,0 +1,175 @@
1
+ # Hooks & Utilities
2
+
3
+ Hook functions (prefixed with `use`) must be called within Angular injection context (constructor or `runInInjectionContext`).
4
+
5
+ ## `usePermsSignal`
6
+
7
+ Returns a signal of permitted keys for the given view codes. Filters `permKeys` by checking the app structure's permission record.
8
+
9
+ ```typescript
10
+ function usePermsSignal<K extends string>(viewCodes: string[], keys: K[]): Signal<K[]>;
11
+ ```
12
+
13
+ ## `useSdSystemConfigResource`
14
+
15
+ Creates a resource for reading and writing system configuration values, scoped by the host element's tag name.
16
+
17
+ ```typescript
18
+ function useSdSystemConfigResource<T>(options: {
19
+ key: Signal<string | undefined>;
20
+ }): {
21
+ value: Signal<T | undefined>;
22
+ isLoading: Signal<boolean>;
23
+ status: Signal<ResourceStatus>;
24
+ hasValue(): boolean;
25
+ reload(): void;
26
+ set(value: T | undefined): void;
27
+ update(fn: (prev: T | undefined) => T | undefined): void;
28
+ };
29
+ ```
30
+
31
+ ## `useCurrentPageCodeSignal`
32
+
33
+ Returns a signal of the current page code derived from the activated route's URL segments (joined by `.`). Returns `undefined` if no ActivatedRoute is available.
34
+
35
+ ```typescript
36
+ function useCurrentPageCodeSignal(): Signal<string> | undefined;
37
+ ```
38
+
39
+ ## `useFullPageCodeSignal`
40
+
41
+ Returns a signal of the full page code derived from the router's current URL. Updated on every `NavigationEnd`.
42
+
43
+ ```typescript
44
+ function useFullPageCodeSignal(): Signal<string>;
45
+ ```
46
+
47
+ ## `useViewTitleSignal`
48
+
49
+ Returns a signal of the current view's title. Uses modal title if inside a modal, otherwise derives from app structure using the page code.
50
+
51
+ ```typescript
52
+ function useViewTitleSignal(): Signal<string>;
53
+ ```
54
+
55
+ ## `useViewTypeSignal`
56
+
57
+ Returns a signal indicating whether the current view is displayed as a page, modal, or embedded control.
58
+
59
+ ```typescript
60
+ function useViewTypeSignal(getComp: () => object): Signal<TSdViewType>;
61
+ ```
62
+
63
+ ### `TSdViewType`
64
+
65
+ ```typescript
66
+ type TSdViewType = "page" | "modal" | "control";
67
+ ```
68
+
69
+ ## `useExpandingManager`
70
+
71
+ Manages tree expand/collapse state for hierarchical data. Computes flattened display items, tracks expanded items, and provides toggle/visibility methods.
72
+
73
+ ```typescript
74
+ function useExpandingManager<T>(binding: {
75
+ items: Signal<T[]>;
76
+ expandedItems: WritableSignal<T[]>;
77
+ getChildrenFn: Signal<((item: T, index: number) => T[] | undefined) | undefined>;
78
+ sort: (items: T[]) => T[];
79
+ }): {
80
+ displayItems: Signal<T[]>;
81
+ hasExpandable: Signal<boolean>;
82
+ isAllExpanded: Signal<boolean>;
83
+ toggle(item: T): void;
84
+ toggleAll(): void;
85
+ isVisible(item: T): boolean;
86
+ def(item: T): IExpandItemDef<T>;
87
+ };
88
+ ```
89
+
90
+ ### `IExpandItemDef`
91
+
92
+ | Field | Type | Description |
93
+ |-------|------|-------------|
94
+ | `item` | `T` | The data item |
95
+ | `parentDef` | `IExpandItemDef<T> \| undefined` | Parent definition (for tree traversal) |
96
+ | `hasChildren` | `boolean` | Whether item has children |
97
+ | `depth` | `number` | Nesting depth (0-based) |
98
+
99
+ ## `useSelectionManager`
100
+
101
+ Manages item selection state (single or multi mode). Provides select/deselect/toggle operations and computed selection state.
102
+
103
+ ```typescript
104
+ function useSelectionManager<T>(options: {
105
+ displayItems: Signal<T[]>;
106
+ selectedItems: WritableSignal<T[]>;
107
+ selectMode: Signal<"single" | "multi" | undefined>;
108
+ getItemSelectableFn: Signal<((item: T) => boolean | string) | undefined>;
109
+ }): {
110
+ hasSelectable: Signal<boolean>;
111
+ isAllSelected: Signal<boolean>;
112
+ getSelectable(item: T): true | string | undefined;
113
+ getCanChangeFn(item: T): () => boolean;
114
+ select(item: T): void;
115
+ deselect(item: T): void;
116
+ toggle(item: T): void;
117
+ toggleAll(): void;
118
+ isSelected(item: T): boolean;
119
+ };
120
+ ```
121
+
122
+ ## `useSortingManager`
123
+
124
+ Manages column sorting state with single and multi-column support. Toggle cycles through: ascending, descending, removed.
125
+
126
+ ```typescript
127
+ function useSortingManager(options: {
128
+ sorts: WritableSignal<ISortingDef[]>;
129
+ }): {
130
+ defMap: Signal<Map<string, { indexText?: string; desc: boolean }>>;
131
+ toggle(key: string, multiple: boolean): void;
132
+ sort<T>(items: T[]): T[];
133
+ };
134
+ ```
135
+
136
+ ### `ISortingDef`
137
+
138
+ | Field | Type | Description |
139
+ |-------|------|-------------|
140
+ | `key` | `string` | Column/property key to sort by |
141
+ | `desc` | `boolean` | Whether sort is descending |
142
+
143
+ ## `setSafeStyle`
144
+
145
+ Safely sets multiple CSS style properties on an element via Renderer2.
146
+
147
+ ```typescript
148
+ function setSafeStyle(
149
+ renderer: Renderer2,
150
+ el: HTMLElement,
151
+ style: Partial<CSSStyleDeclaration>,
152
+ ): void;
153
+ ```
154
+
155
+ ## `TDirectiveInputSignals`
156
+
157
+ Utility type that extracts `InputSignal` value types from a component/directive. Non-InputSignal properties are excluded. Properties with `undefined` in their type become optional.
158
+
159
+ ```typescript
160
+ type TDirectiveInputSignals<T> = TUndefToOptional<{
161
+ [P in keyof T as T[P] extends InputSignal<any> ? P : never]: T[P] extends InputSignal<infer V> ? V : never;
162
+ }>;
163
+ ```
164
+
165
+ ## `TUndefToOptional`
166
+
167
+ Utility type that converts properties containing `undefined` in their type to optional properties.
168
+
169
+ ```typescript
170
+ type TUndefToOptional<T> = {
171
+ [K in keyof T as undefined extends T[K] ? never : K]: T[K];
172
+ } & {
173
+ [K in keyof T as undefined extends T[K] ? K : never]?: Exclude<T[K], undefined>;
174
+ };
175
+ ```
@@ -0,0 +1,140 @@
1
+ # Layout Components
2
+
3
+ ## `SdDockContainerControl`
4
+
5
+ Container for docked panels. Calculates padding based on child dock sizes and positions.
6
+
7
+ Selector: `sd-dock-container`
8
+
9
+ | Input | Type | Description |
10
+ |-------|------|-------------|
11
+ | `contentClass` | `string` | CSS class for the content wrapper |
12
+
13
+ ## `SdDockControl`
14
+
15
+ Dockable panel that attaches to a side of `SdDockContainerControl`. Supports optional user-resizing with config persistence.
16
+
17
+ Selector: `sd-dock`
18
+
19
+ | Input | Type | Description |
20
+ |-------|------|-------------|
21
+ | `key` | `string` | Config key for size persistence |
22
+ | `position` | `"top" \| "bottom" \| "right" \| "left"` | Dock position (default: `"top"`) |
23
+ | `resizable` | `boolean` (booleanAttribute) | Enable drag-to-resize (default: `false`) |
24
+
25
+ ## `SdPaneDirective`
26
+
27
+ Applies fill-area pane styling to the host element. Sets CSS class `fill` and `display: block`.
28
+
29
+ Selector: `sd-pane`, `[sd-pane]`
30
+
31
+ No inputs.
32
+
33
+ ## `SdGapControl`
34
+
35
+ Spacing element that renders as a gap with preset or pixel-based dimensions.
36
+
37
+ Selector: `sd-gap`
38
+
39
+ | Input | Type | Description |
40
+ |-------|------|-------------|
41
+ | `height` | `"xxs" \| "xs" \| "sm" \| "default" \| "lg" \| "xl" \| "xxl"` | Preset height |
42
+ | `heightPx` | `number` | Height in pixels |
43
+ | `width` | `"xxs" \| "xs" \| "sm" \| "default" \| "lg" \| "xl" \| "xxl"` | Preset width |
44
+ | `widthPx` | `number` | Width in pixels |
45
+ | `widthEm` | `number` | Width in em units |
46
+
47
+ ## `SdViewControl`
48
+
49
+ View container for tab-like content switching. Shows the child `SdViewItemControl` whose value matches.
50
+
51
+ Selector: `sd-view`
52
+
53
+ | Input | Type | Description |
54
+ |-------|------|-------------|
55
+ | `value` | `any` | Currently active view value |
56
+ | `fill` | `boolean` (booleanAttribute) | Whether to fill parent height (default: `false`) |
57
+
58
+ ## `SdViewItemControl`
59
+
60
+ Individual view item, shown when its value matches the parent `SdViewControl` value.
61
+
62
+ Selector: `sd-view-item`
63
+
64
+ | Input | Type | Description |
65
+ |-------|------|-------------|
66
+ | `value` | `any` | Value to match against parent |
67
+
68
+ ## `SdCardDirective`
69
+
70
+ Applies card styling (CSS class `card`).
71
+
72
+ Selector: `sd-card`, `[sd-card]`
73
+
74
+ No inputs.
75
+
76
+ ## `SdKanbanBoardControl`
77
+
78
+ Kanban board container with drag-and-drop support. Manages drag state and emits drop events.
79
+
80
+ Selector: `sd-kanban-board`
81
+
82
+ | Input/Model | Type | Description |
83
+ |-------------|------|-------------|
84
+ | `selectedValues` (model) | `T[]` | Currently selected kanban values (default: `[]`) |
85
+
86
+ | Output | Type | Description |
87
+ |--------|------|-------------|
88
+ | `drop` | `ISdKanbanBoardDropInfo<L, T>` | Emitted when a kanban card is dropped |
89
+
90
+ ### `ISdKanbanBoardDropInfo`
91
+
92
+ | Field | Type | Description |
93
+ |-------|------|-------------|
94
+ | `sourceKanbanValue` | `T` | Value of the dragged card |
95
+ | `targetLaneValue` | `L` | Value of the target lane |
96
+ | `targetKanbanValue` | `T` | Value of the target card (drop position) |
97
+
98
+ ### `ISdKanbanDragRef`
99
+
100
+ | Field | Type | Description |
101
+ |-------|------|-------------|
102
+ | `value()` | `T \| undefined` | Value of the dragged card |
103
+ | `heightOnDrag()` | `number` | Height of the card being dragged |
104
+
105
+ ### `ISdKanbanDropTarget`
106
+
107
+ | Field | Type | Description |
108
+ |-------|------|-------------|
109
+ | `targetLaneValue()` | `L \| undefined` | Value of the target lane |
110
+ | `targetKanbanValue?()` | `T \| undefined` | Value of the target card position |
111
+
112
+ ## `SdKanbanLaneControl`
113
+
114
+ Kanban lane (column). Contains kanban cards and supports drag-drop targeting, collapse, and select-all.
115
+
116
+ Selector: `sd-kanban-lane`
117
+
118
+ | Input/Model | Type | Description |
119
+ |-------------|------|-------------|
120
+ | `busy` | `boolean` (booleanAttribute) | Show busy indicator (default: `false`) |
121
+ | `useCollapse` | `boolean` (booleanAttribute) | Enable collapse toggle (default: `false`) |
122
+ | `collapse` (model) | `boolean` | Collapse state (default: `false`) |
123
+ | `value` | `L` | Lane value identifier |
124
+
125
+ Content children:
126
+ - `#toolTpl` template: Tool bar content
127
+ - `#titleTpl` template: Title content
128
+
129
+ ## `SdKanbanControl`
130
+
131
+ Kanban card item within a lane. Supports dragging and selection.
132
+
133
+ Selector: `sd-kanban`
134
+
135
+ | Input | Type | Description |
136
+ |-------|------|-------------|
137
+ | `value` | `T` | Card value identifier |
138
+ | `selectable` | `boolean` (booleanAttribute) | Enable shift-click selection (default: `false`) |
139
+ | `draggable` | `boolean` (booleanAttribute) | Enable drag-and-drop (default: `false`) |
140
+ | `contentClass` | `string` | CSS class for the card content |
@@ -0,0 +1,200 @@
1
+ # Navigation Components
2
+
3
+ ## `SdCollapseControl`
4
+
5
+ Animated collapsible content using negative margin-top transition.
6
+
7
+ Selector: `sd-collapse`
8
+
9
+ | Input | Type | Description |
10
+ |-------|------|-------------|
11
+ | `open` | `boolean` (booleanAttribute) | Whether content is visible (default: `false`) |
12
+
13
+ ## `SdCollapseIconControl`
14
+
15
+ Rotating chevron icon that indicates collapse/expand state.
16
+
17
+ Selector: `sd-collapse-icon`
18
+
19
+ | Input | Type | Description |
20
+ |-------|------|-------------|
21
+ | `open` | `boolean` (booleanAttribute) | Whether in open state (default: `false`) |
22
+ | `openRotate` | `number` (numberAttribute) | Rotation angle in degrees when open (default: `90`) |
23
+
24
+ ## `SdTabControl`
25
+
26
+ Tab header container. Manages the active tab value.
27
+
28
+ Selector: `sd-tab`
29
+
30
+ | Input/Model | Type | Description |
31
+ |-------------|------|-------------|
32
+ | `value` (model) | `any` | Currently active tab value |
33
+
34
+ ## `SdTabItemControl`
35
+
36
+ Individual tab header item inside `SdTabControl`.
37
+
38
+ Selector: `sd-tab-item`
39
+
40
+ | Input | Type | Description |
41
+ |-------|------|-------------|
42
+ | `value` | `any` | Tab value (matched against parent's value) |
43
+
44
+ ## `SdTabviewControl`
45
+
46
+ Combined tab header and content view. Automatically renders tab headers from `SdTabviewItemControl` children.
47
+
48
+ Selector: `sd-tabview`
49
+
50
+ | Input/Model | Type | Description |
51
+ |-------------|------|-------------|
52
+ | `value` (model) | `T` | Currently active tabview value |
53
+
54
+ ## `SdTabviewItemControl`
55
+
56
+ Tab content panel inside `SdTabviewControl`. Shown when its value matches the parent's value.
57
+
58
+ Selector: `sd-tabview-item`
59
+
60
+ | Input | Type | Description |
61
+ |-------|------|-------------|
62
+ | `value` | `T` (required) | Panel value |
63
+ | `header` | `string` | Tab header text (falls back to value if not set) |
64
+
65
+ ## `SdPaginationControl`
66
+
67
+ Page navigation with first/prev-group/next-group/last buttons.
68
+
69
+ Selector: `sd-pagination`
70
+
71
+ | Input/Model | Type | Description |
72
+ |-------------|------|-------------|
73
+ | `currentPage` (model) | `number` | Current page index, 0-based (default: `0`) |
74
+ | `totalPageCount` | `number` (numberAttribute) | Total number of pages (default: `0`) |
75
+ | `visiblePageCount` | `number` (numberAttribute) | Pages shown per group (default: `10`) |
76
+
77
+ Public methods:
78
+
79
+ ```typescript
80
+ goToPage(page: number): void;
81
+ goToNextGroup(): void;
82
+ goToPrevGroup(): void;
83
+ goToFirst(): void;
84
+ goToLast(): void;
85
+ ```
86
+
87
+ ## `SdSidebarContainerControl`
88
+
89
+ Layout container with sidebar toggle support. Handles backdrop click and auto-close on navigation.
90
+
91
+ Selector: `sd-sidebar-container`
92
+
93
+ Public properties:
94
+
95
+ | Property | Type | Description |
96
+ |----------|------|-------------|
97
+ | `toggle` | `WritableSignal<boolean>` | Sidebar toggle state |
98
+
99
+ ## `SdSidebarControl`
100
+
101
+ Sidebar panel that slides in/out. Positioned absolutely on the left side. Responsive: slides from left on mobile.
102
+
103
+ Selector: `sd-sidebar`
104
+
105
+ No inputs. Toggle state is derived from parent `SdSidebarContainerControl`.
106
+
107
+ ## `SdSidebarMenuControl`
108
+
109
+ Menu renderer for sidebar. Displays hierarchical menus with router links. Supports accordion and flat layouts.
110
+
111
+ Selector: `sd-sidebar-menu`
112
+
113
+ | Input | Type | Description |
114
+ |-------|------|-------------|
115
+ | `menus` | `ISdSidebarMenu[]` | Menu items (default: `[]`) |
116
+ | `layout` | `"accordion" \| "flat"` | Root layout mode (auto-selected based on menu count) |
117
+ | `getMenuIsSelectedFn` | `(menu: ISdSidebarMenu) => boolean` | Custom selection check function |
118
+
119
+ ### `ISdSidebarMenu`
120
+
121
+ | Field | Type | Description |
122
+ |-------|------|-------------|
123
+ | `title` | `string` | Display title |
124
+ | `codeChain` | `string[]` | Code path chain for route generation |
125
+ | `url` | `string` | Optional external URL (opens in new tab) |
126
+ | `icon` | `string` | Optional icon SVG |
127
+ | `children` | `ISdSidebarMenu[]` | Optional child menus |
128
+
129
+ ## `SdSidebarUserControl`
130
+
131
+ User info section in the sidebar with expandable user menu.
132
+
133
+ Selector: `sd-sidebar-user`
134
+
135
+ | Input | Type | Description |
136
+ |-------|------|-------------|
137
+ | `userMenu` | `ISidebarUserMenu` | User menu configuration |
138
+
139
+ ### `ISidebarUserMenu`
140
+
141
+ | Field | Type | Description |
142
+ |-------|------|-------------|
143
+ | `title` | `string` | Menu header title |
144
+ | `menus` | `{ title: string; onClick: () => void }[]` | Menu items |
145
+
146
+ ## `SdTopbarContainerControl`
147
+
148
+ Layout container for the top navigation bar. Renders as a flex column filling height.
149
+
150
+ Selector: `sd-topbar-container`
151
+
152
+ No inputs.
153
+
154
+ ## `SdTopbarControl`
155
+
156
+ Top navigation bar. Includes optional sidebar toggle button.
157
+
158
+ Selector: `sd-topbar`
159
+
160
+ | Input | Type | Description |
161
+ |-------|------|-------------|
162
+ | `sidebarContainer` | `SdSidebarContainerControl` | Optional explicit sidebar container reference |
163
+
164
+ ## `SdTopbarMenuControl`
165
+
166
+ Menu renderer for topbar using dropdown menus. Displays hierarchical menus with router links.
167
+
168
+ Selector: `sd-topbar-menu`
169
+
170
+ | Input | Type | Description |
171
+ |-------|------|-------------|
172
+ | `menus` | `ISdTopbarMenu[]` | Menu items (default: `[]`) |
173
+ | `getMenuIsSelectedFn` | `(menu: ISdTopbarMenu) => boolean` | Custom selection check function |
174
+
175
+ ### `ISdTopbarMenu`
176
+
177
+ | Field | Type | Description |
178
+ |-------|------|-------------|
179
+ | `title` | `string` | Display title |
180
+ | `codeChain` | `string[]` | Code path chain for route generation |
181
+ | `url` | `string` | Optional external URL (opens in new tab) |
182
+ | `icon` | `string` | Optional icon SVG |
183
+ | `children` | `ISdTopbarMenu[]` | Optional child menus |
184
+
185
+ ## `SdTopbarUserControl`
186
+
187
+ User dropdown in topbar. Displays user content as trigger and menu items in dropdown.
188
+
189
+ Selector: `sd-topbar-user`
190
+
191
+ | Input | Type | Description |
192
+ |-------|------|-------------|
193
+ | `menus` | `ISdTopbarUserMenu[]` (required) | User menu items |
194
+
195
+ ### `ISdTopbarUserMenu`
196
+
197
+ | Field | Type | Description |
198
+ |-------|------|-------------|
199
+ | `title` | `string` | Menu item title |
200
+ | `onClick` | `() => void` | Click handler |
@@ -0,0 +1,193 @@
1
+ # Overlay Components
2
+
3
+ ## `SdDropdownControl`
4
+
5
+ Dropdown trigger container. Opens a popup on click/Enter. Handles positioning and backdrop on mobile.
6
+
7
+ Selector: `sd-dropdown`
8
+
9
+ | Input/Model | Type | Description |
10
+ |-------------|------|-------------|
11
+ | `open` (model) | `boolean` | Dropdown open state (default: `false`) |
12
+ | `disabled` | `boolean` (booleanAttribute) | Disabled state (default: `false`) |
13
+
14
+ ## `SdDropdownPopupControl`
15
+
16
+ Dropdown popup content panel. Positioned fixed relative to the trigger. Handles resize and keyboard navigation.
17
+
18
+ Selector: `sd-dropdown-popup`
19
+
20
+ No public inputs. Used as a content child of `SdDropdownControl`.
21
+
22
+ ## `SdModalControl`
23
+
24
+ Modal dialog component with header, close button, backdrop, resize handles, and drag-to-move support. Created programmatically by `SdModalProvider`.
25
+
26
+ Selector: `sd-modal`
27
+
28
+ | Input/Model | Type | Description |
29
+ |-------------|------|-------------|
30
+ | `open` (model) | `boolean` | Open state (default: `false`) |
31
+ | `key` | `string` | Config key for position/size persistence |
32
+ | `title` | `string` | Modal title (default: `""`) |
33
+ | `hideHeader` | `boolean` | Hide header bar (default: `false`) |
34
+ | `hideCloseButton` | `boolean` | Hide close button (default: `false`) |
35
+ | `useCloseByBackdrop` | `boolean` | Close on backdrop click (default: `true`) |
36
+ | `useCloseByEscapeKey` | `boolean` | Close on Escape key (default: `true`) |
37
+ | `float` | `boolean` | Float mode (default: `false`) |
38
+ | `fill` | `boolean` | Fill mode (default: `false`) |
39
+ | `resizable` | `boolean` | Enable resize handles (default: `false`) |
40
+ | `movable` | `boolean` | Enable header drag-to-move (default: `false`) |
41
+ | `position` | `"bottom-right" \| "top-right"` | Position preset |
42
+ | `minHeightPx` | `number` | Minimum height in pixels |
43
+ | `minWidthPx` | `number` | Minimum width in pixels |
44
+ | `heightPx` | `number` | Initial height in pixels |
45
+ | `widthPx` | `number` | Initial width in pixels |
46
+ | `headerStyle` | `string` | Custom header inline style |
47
+ | `noFirstControlFocusing` | `boolean` | Skip auto-focusing first control (default: `false`) |
48
+ | `actionTplRef` | `TemplateRef<any>` | Optional action template for header |
49
+
50
+ | Output | Type | Description |
51
+ |--------|------|-------------|
52
+ | `closeRequest` | `void` | Emitted when backdrop click, Escape, or close button triggers close |
53
+
54
+ ## `SdPromptModalControl`
55
+
56
+ Built-in prompt modal. Displays a message and text input. Implements `ISdModal<string>`.
57
+
58
+ Selector: `sd-prompt-modal`
59
+
60
+ | Input | Type | Description |
61
+ |-------|------|-------------|
62
+ | `message` | `string` (required) | Prompt message text |
63
+
64
+ | Output | Type | Description |
65
+ |--------|------|-------------|
66
+ | `close` | `string \| undefined` | Emits input value on confirm, undefined on cancel |
67
+
68
+ ## `SdConfirmModalControl`
69
+
70
+ Built-in confirm modal. Displays a message with confirm/cancel buttons. Implements `ISdModal<boolean>`.
71
+
72
+ Selector: `sd-confirm-modal`
73
+
74
+ | Input | Type | Description |
75
+ |-------|------|-------------|
76
+ | `message` | `string` (required) | Confirmation message text |
77
+
78
+ | Output | Type | Description |
79
+ |--------|------|-------------|
80
+ | `close` | `boolean \| undefined` | Emits `true` on confirm, `undefined` on cancel |
81
+
82
+ ## `SdToastControl`
83
+
84
+ Individual toast notification component. Supports themes, progress bar, and ARIA roles.
85
+
86
+ Selector: `sd-toast`
87
+
88
+ | Input/Model | Type | Description |
89
+ |-------------|------|-------------|
90
+ | `open` (model) | `boolean` | Open state with transition (default: `false`) |
91
+ | `useProgress` | `boolean` (booleanAttribute) | Show progress bar (default: `false`) |
92
+ | `theme` | `TSdToastTheme` | Toast theme (default: `"info"`) |
93
+ | `progress` (model) | `number` | Progress percentage 0-100 (default: `0`) |
94
+ | `message` (model) | `string \| undefined` | Toast message text |
95
+
96
+ ## `SdToastContainerControl`
97
+
98
+ Fixed-position container for toast notifications.
99
+
100
+ Selector: `sd-toast-container`
101
+
102
+ | Input | Type | Description |
103
+ |-------|------|-------------|
104
+ | `overlap` | `boolean` (booleanAttribute) | Overlap mode (single toast, bottom-left positioned, default: `false`) |
105
+
106
+ ## `SdBusyContainerControl`
107
+
108
+ Busy/loading overlay container. Shows a loading indicator over its content.
109
+
110
+ Selector: `sd-busy-container`
111
+
112
+ | Input | Type | Description |
113
+ |-------|------|-------------|
114
+ | `busy` | `boolean` (booleanAttribute) | Whether to show busy overlay (default: `false`) |
115
+ | `message` | `string \| undefined` | Loading message text |
116
+ | `type` | `TSdBusyType \| undefined` | Indicator type (falls back to `SdBusyProvider.type()`) |
117
+ | `progressPercent` | `number \| undefined` | Optional progress percentage |
118
+
119
+ ### `TSdBusyType`
120
+
121
+ ```typescript
122
+ type TSdBusyType = "spinner" | "bar" | "cube";
123
+ ```
124
+
125
+ ## Toast Types
126
+
127
+ ### `TSdToastSeverity`
128
+
129
+ ```typescript
130
+ type TSdToastSeverity = "info" | "success" | "warning" | "danger";
131
+ ```
132
+
133
+ ### `TSdToastTheme`
134
+
135
+ ```typescript
136
+ type TSdToastTheme = "primary" | "secondary" | TSdToastSeverity | "gray" | "blue-gray";
137
+ ```
138
+
139
+ ### `ISdToast`
140
+
141
+ Interface for custom toast content components.
142
+
143
+ | Field | Type | Description |
144
+ |-------|------|-------------|
145
+ | `close` | `OutputEmitterRef<O \| undefined>` | Output to emit close result |
146
+
147
+ ### `ISdToastInput`
148
+
149
+ | Field | Type | Description |
150
+ |-------|------|-------------|
151
+ | `type` | `Type<T>` | Component type |
152
+ | `inputs` | `Omit<TDirectiveInputSignals<T>, "close">` | Component inputs |
153
+
154
+ ## Modal Types
155
+
156
+ ### `ISdModal`
157
+
158
+ Interface for modal content components.
159
+
160
+ | Field | Type | Description |
161
+ |-------|------|-------------|
162
+ | `initialized` | `Signal<boolean>` | Whether content is initialized |
163
+ | `close` | `OutputEmitterRef<O \| undefined>` | Output to emit close result |
164
+ | `actionTplRef` | `TemplateRef<any>` | Optional action template for modal header |
165
+
166
+ ### `ISdModalInfo`
167
+
168
+ | Field | Type | Description |
169
+ |-------|------|-------------|
170
+ | `title` | `string` | Modal title |
171
+ | `type` | `Type<T>` | Component type |
172
+ | `inputs` | `Omit<TDirectiveInputSignals<T>, "initialized" \| "close" \| "actionTplRef">` | Component inputs |
173
+
174
+ ### `ISdModalOptions`
175
+
176
+ | Field | Type | Description |
177
+ |-------|------|-------------|
178
+ | `key` | `string` | Config persistence key |
179
+ | `hideHeader` | `boolean` | Hide header |
180
+ | `hideCloseButton` | `boolean` | Hide close button |
181
+ | `useCloseByBackdrop` | `boolean` | Close on backdrop click |
182
+ | `useCloseByEscapeKey` | `boolean` | Close on Escape |
183
+ | `float` | `boolean` | Float mode |
184
+ | `fill` | `boolean` | Fill mode |
185
+ | `resizable` | `boolean` | Enable resizing |
186
+ | `movable` | `boolean` | Enable moving |
187
+ | `position` | `"bottom-right" \| "top-right"` | Position preset |
188
+ | `minHeightPx` | `number` | Minimum height |
189
+ | `minWidthPx` | `number` | Minimum width |
190
+ | `heightPx` | `number` | Initial height |
191
+ | `widthPx` | `number` | Initial width |
192
+ | `headerStyle` | `string` | Header inline style |
193
+ | `noFirstControlFocusing` | `boolean` | Skip auto-focus |