@simplysm/angular 14.0.7 → 14.0.9

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 (294) hide show
  1. package/README.md +234 -246
  2. package/dist/core/commons.d.ts.map +1 -1
  3. package/dist/core/directives/sd-events.directive.d.ts.map +1 -1
  4. package/dist/core/directives/sd-invalid.directive.d.ts.map +1 -1
  5. package/dist/core/directives/sd-item-of-template.directive.d.ts.map +1 -1
  6. package/dist/core/directives/sd-ripple.directive.d.ts.map +1 -1
  7. package/dist/core/directives/sd-router-link.directive.d.ts.map +1 -1
  8. package/dist/core/directives/sd-show-effect.directive.d.ts.map +1 -1
  9. package/dist/core/directives/sd-typed-template.directive.d.ts.map +1 -1
  10. package/dist/core/pipes/format.pipe.d.ts.map +1 -1
  11. package/dist/core/plugins/commands/findTopOpenModalEl.d.ts.map +1 -1
  12. package/dist/core/plugins/commands/sd-insert-command-event.plugin.d.ts.map +1 -1
  13. package/dist/core/plugins/commands/sd-refresh-command-event.plugin.d.ts.map +1 -1
  14. package/dist/core/plugins/commands/sd-save-command-event.plugin.d.ts.map +1 -1
  15. package/dist/core/plugins/events/sd-intersection-event.plugin.d.ts.map +1 -1
  16. package/dist/core/plugins/events/sd-option-event.plugin.d.ts.map +1 -1
  17. package/dist/core/plugins/events/sd-resize-event.plugin.d.ts.map +1 -1
  18. package/dist/core/plugins/sd-global-error-handler.plugin.d.ts.map +1 -1
  19. package/dist/core/provideSdAngular.d.ts.map +1 -1
  20. package/dist/core/providers/sd-angular-config.provider.d.ts.map +1 -1
  21. package/dist/core/providers/sd-app-structure.provider.d.ts.map +1 -1
  22. package/dist/core/providers/sd-file-dialog.provider.d.ts.map +1 -1
  23. package/dist/core/providers/sd-local-storage.provider.d.ts.map +1 -1
  24. package/dist/core/providers/sd-navigate-window.provider.d.ts.map +1 -1
  25. package/dist/core/providers/sd-print.provider.d.ts +7 -2
  26. package/dist/core/providers/sd-print.provider.d.ts.map +1 -1
  27. package/dist/core/providers/sd-service-client-factory.provider.d.ts.map +1 -1
  28. package/dist/core/providers/sd-shared-data.provider.d.ts +3 -0
  29. package/dist/core/providers/sd-shared-data.provider.d.ts.map +1 -1
  30. package/dist/core/providers/sd-system-config.provider.d.ts.map +1 -1
  31. package/dist/core/providers/sd-system-log.provider.d.ts.map +1 -1
  32. package/dist/core/providers/sd-theme-provider.d.ts.map +1 -1
  33. package/dist/core/utils/TDirectiveInputSignals.d.ts +4 -0
  34. package/dist/core/utils/TDirectiveInputSignals.d.ts.map +1 -1
  35. package/dist/core/utils/injectParent.d.ts +7 -0
  36. package/dist/core/utils/injectParent.d.ts.map +1 -0
  37. package/dist/core/utils/injectParent.js +26 -0
  38. package/dist/core/utils/setSafeStyle.d.ts.map +1 -1
  39. package/dist/core/utils/setups/setupBgTheme.d.ts.map +1 -1
  40. package/dist/core/utils/setups/setupCanDeactivate.d.ts.map +1 -1
  41. package/dist/core/utils/setups/setupCloserWhenSingleSelectionChange.d.ts +9 -0
  42. package/dist/core/utils/setups/setupCloserWhenSingleSelectionChange.d.ts.map +1 -0
  43. package/dist/core/utils/setups/setupCloserWhenSingleSelectionChange.js +20 -0
  44. package/dist/core/utils/setups/setupCumulateSelectedKeys.d.ts +9 -0
  45. package/dist/core/utils/setups/setupCumulateSelectedKeys.d.ts.map +1 -0
  46. package/dist/core/utils/setups/setupCumulateSelectedKeys.js +27 -0
  47. package/dist/core/utils/setups/setupInvalid.d.ts.map +1 -1
  48. package/dist/core/utils/setups/setupModelHook.d.ts.map +1 -1
  49. package/dist/core/utils/setups/setupRevealOnShow.d.ts.map +1 -1
  50. package/dist/core/utils/setups/setupRipple.d.ts.map +1 -1
  51. package/dist/core/utils/useCurrentPageCodeSignal.d.ts.map +1 -1
  52. package/dist/core/utils/useExpandingManager.d.ts.map +1 -1
  53. package/dist/core/utils/useFullPageCodeSignal.d.ts.map +1 -1
  54. package/dist/core/utils/useSdSystemConfigResource.d.ts.map +1 -1
  55. package/dist/core/utils/useSelectionManager.d.ts.map +1 -1
  56. package/dist/core/utils/useSortingManager.d.ts.map +1 -1
  57. package/dist/core/utils/useViewTitleSignal.d.ts.map +1 -1
  58. package/dist/core/utils/useViewTypeSignal.d.ts.map +1 -1
  59. package/dist/features/address/sd-address-search.modal.d.ts +19 -0
  60. package/dist/features/address/sd-address-search.modal.d.ts.map +1 -0
  61. package/dist/features/address/sd-address-search.modal.js +88 -0
  62. package/dist/features/base/sd-base-container.control.d.ts +26 -0
  63. package/dist/features/base/sd-base-container.control.d.ts.map +1 -0
  64. package/dist/features/base/sd-base-container.control.js +183 -0
  65. package/dist/features/data-view/sd-data-detail.control.d.ts +70 -0
  66. package/dist/features/data-view/sd-data-detail.control.d.ts.map +1 -0
  67. package/dist/features/data-view/sd-data-detail.control.js +606 -0
  68. package/dist/features/data-view/sd-data-select-button.control.d.ts +35 -0
  69. package/dist/features/data-view/sd-data-select-button.control.d.ts.map +1 -0
  70. package/dist/features/data-view/sd-data-select-button.control.js +219 -0
  71. package/dist/features/data-view/sd-data-sheet-column.directive.d.ts +8 -0
  72. package/dist/features/data-view/sd-data-sheet-column.directive.d.ts.map +1 -0
  73. package/dist/features/data-view/sd-data-sheet-column.directive.js +15 -0
  74. package/dist/features/data-view/sd-data-sheet.control.d.ts +131 -0
  75. package/dist/features/data-view/sd-data-sheet.control.d.ts.map +1 -0
  76. package/dist/features/data-view/sd-data-sheet.control.js +1152 -0
  77. package/dist/features/shared-data/sd-shared-data-select-button.control.d.ts +16 -0
  78. package/dist/features/shared-data/sd-shared-data-select-button.control.d.ts.map +1 -0
  79. package/dist/features/shared-data/sd-shared-data-select-button.control.js +66 -0
  80. package/dist/features/shared-data/sd-shared-data-select-list.control.d.ts +33 -0
  81. package/dist/features/shared-data/sd-shared-data-select-list.control.d.ts.map +1 -0
  82. package/dist/features/shared-data/sd-shared-data-select-list.control.js +346 -0
  83. package/dist/features/shared-data/sd-shared-data-select.control.d.ts +50 -0
  84. package/dist/features/shared-data/sd-shared-data-select.control.d.ts.map +1 -0
  85. package/dist/features/shared-data/sd-shared-data-select.control.js +425 -0
  86. package/dist/index.d.ts +13 -1
  87. package/dist/index.d.ts.map +1 -1
  88. package/dist/index.js +15 -0
  89. package/dist/ui/data/list/sd-list-item.control.d.ts +3 -1
  90. package/dist/ui/data/list/sd-list-item.control.d.ts.map +1 -1
  91. package/dist/ui/data/list/sd-list-item.control.js +9 -5
  92. package/dist/ui/data/list/sd-list.control.d.ts.map +1 -1
  93. package/dist/ui/data/list/sd-list.control.js +1 -1
  94. package/dist/ui/data/sheet/sd-sheet-column.directive.d.ts +8 -1
  95. package/dist/ui/data/sheet/sd-sheet-column.directive.d.ts.map +1 -1
  96. package/dist/ui/data/sheet/sd-sheet-config.modal.d.ts.map +1 -1
  97. package/dist/ui/data/sheet/sd-sheet-config.modal.js +1 -1
  98. package/dist/ui/data/sheet/sd-sheet.control.d.ts +6 -5
  99. package/dist/ui/data/sheet/sd-sheet.control.d.ts.map +1 -1
  100. package/dist/ui/data/sheet/sd-sheet.control.js +19 -17
  101. package/dist/ui/data/sheet/types.d.ts.map +1 -1
  102. package/dist/ui/data/sheet/useSheetCellAgent.d.ts.map +1 -1
  103. package/dist/ui/data/sheet/useSheetCellAgent.js +1 -2
  104. package/dist/ui/data/sheet/useSheetColumnFixing.d.ts.map +1 -1
  105. package/dist/ui/data/sheet/useSheetDomAccessor.d.ts.map +1 -1
  106. package/dist/ui/data/sheet/useSheetLayoutEngine.d.ts.map +1 -1
  107. package/dist/ui/data/sheet/useSheetLayoutEngine.js +1 -0
  108. package/dist/ui/form/button/sd-additional-button.control.d.ts.map +1 -1
  109. package/dist/ui/form/button/sd-additional-button.control.js +1 -1
  110. package/dist/ui/form/button/sd-anchor.control.d.ts.map +1 -1
  111. package/dist/ui/form/button/sd-anchor.control.js +1 -1
  112. package/dist/ui/form/button/sd-button.control.d.ts.map +1 -1
  113. package/dist/ui/form/button/sd-button.control.js +1 -1
  114. package/dist/ui/form/button/sd-modal-select-button.control.d.ts +16 -18
  115. package/dist/ui/form/button/sd-modal-select-button.control.d.ts.map +1 -1
  116. package/dist/ui/form/button/sd-modal-select-button.control.js +22 -39
  117. package/dist/ui/form/checkbox/sd-checkbox-group-item.control.d.ts.map +1 -1
  118. package/dist/ui/form/checkbox/sd-checkbox-group-item.control.js +1 -1
  119. package/dist/ui/form/checkbox/sd-checkbox-group.control.d.ts.map +1 -1
  120. package/dist/ui/form/checkbox/sd-checkbox-group.control.js +1 -1
  121. package/dist/ui/form/checkbox/sd-checkbox.control.d.ts.map +1 -1
  122. package/dist/ui/form/checkbox/sd-checkbox.control.js +1 -1
  123. package/dist/ui/form/checkbox/sd-switch.control.d.ts.map +1 -1
  124. package/dist/ui/form/checkbox/sd-switch.control.js +1 -1
  125. package/dist/ui/form/choice/sd-state-preset.control.d.ts.map +1 -1
  126. package/dist/ui/form/choice/sd-state-preset.control.js +1 -1
  127. package/dist/ui/form/editor/sd-tiptap-editor.control.d.ts +18 -1
  128. package/dist/ui/form/editor/sd-tiptap-editor.control.d.ts.map +1 -1
  129. package/dist/ui/form/editor/sd-tiptap-editor.control.js +18 -2
  130. package/dist/ui/form/input/sd-date-range.picker.d.ts.map +1 -1
  131. package/dist/ui/form/input/sd-date-range.picker.js +1 -1
  132. package/dist/ui/form/input/sd-numpad.control.d.ts.map +1 -1
  133. package/dist/ui/form/input/sd-numpad.control.js +1 -1
  134. package/dist/ui/form/input/sd-range.control.d.ts.map +1 -1
  135. package/dist/ui/form/input/sd-range.control.js +1 -1
  136. package/dist/ui/form/input/sd-textarea.control.d.ts.map +1 -1
  137. package/dist/ui/form/input/sd-textarea.control.js +1 -1
  138. package/dist/ui/form/input/sd-textfield-type-handlers.d.ts.map +1 -1
  139. package/dist/ui/form/input/sd-textfield.control.d.ts.map +1 -1
  140. package/dist/ui/form/input/sd-textfield.control.js +1 -1
  141. package/dist/ui/form/sd-form.control.d.ts.map +1 -1
  142. package/dist/ui/form/sd-form.control.js +1 -1
  143. package/dist/ui/form/select/sd-select-button.control.d.ts.map +1 -1
  144. package/dist/ui/form/select/sd-select-button.control.js +1 -1
  145. package/dist/ui/form/select/sd-select-item.control.d.ts +1 -1
  146. package/dist/ui/form/select/sd-select-item.control.d.ts.map +1 -1
  147. package/dist/ui/form/select/sd-select-item.control.js +1 -1
  148. package/dist/ui/form/select/sd-select.control.d.ts +9 -6
  149. package/dist/ui/form/select/sd-select.control.d.ts.map +1 -1
  150. package/dist/ui/form/select/sd-select.control.js +1 -1
  151. package/dist/ui/layout/dock/sd-dock-container.control.d.ts.map +1 -1
  152. package/dist/ui/layout/dock/sd-dock-container.control.js +1 -1
  153. package/dist/ui/layout/dock/sd-dock.control.d.ts +2 -0
  154. package/dist/ui/layout/dock/sd-dock.control.d.ts.map +1 -1
  155. package/dist/ui/layout/dock/sd-dock.control.js +13 -4
  156. package/dist/ui/layout/kanban/sd-kanban-board.control.d.ts.map +1 -1
  157. package/dist/ui/layout/kanban/sd-kanban-board.control.js +1 -1
  158. package/dist/ui/layout/kanban/sd-kanban-lane.control.d.ts.map +1 -1
  159. package/dist/ui/layout/kanban/sd-kanban-lane.control.js +8 -2
  160. package/dist/ui/layout/kanban/sd-kanban.control.d.ts.map +1 -1
  161. package/dist/ui/layout/kanban/sd-kanban.control.js +1 -1
  162. package/dist/ui/layout/sd-card.directive.d.ts.map +1 -1
  163. package/dist/ui/layout/sd-gap.control.d.ts +2 -2
  164. package/dist/ui/layout/sd-gap.control.d.ts.map +1 -1
  165. package/dist/ui/layout/sd-gap.control.js +1 -1
  166. package/dist/ui/layout/sd-pane.directive.d.ts.map +1 -1
  167. package/dist/ui/layout/view/sd-view-item.control.d.ts.map +1 -1
  168. package/dist/ui/layout/view/sd-view-item.control.js +1 -1
  169. package/dist/ui/layout/view/sd-view.control.d.ts.map +1 -1
  170. package/dist/ui/layout/view/sd-view.control.js +1 -1
  171. package/dist/ui/navigation/collapse/sd-collapse-icon.control.d.ts.map +1 -1
  172. package/dist/ui/navigation/collapse/sd-collapse-icon.control.js +1 -1
  173. package/dist/ui/navigation/collapse/sd-collapse.control.d.ts.map +1 -1
  174. package/dist/ui/navigation/collapse/sd-collapse.control.js +1 -1
  175. package/dist/ui/navigation/menu-utils.d.ts.map +1 -1
  176. package/dist/ui/navigation/pagination/sd-pagination.control.d.ts.map +1 -1
  177. package/dist/ui/navigation/pagination/sd-pagination.control.js +8 -4
  178. package/dist/ui/navigation/sidebar/sd-sidebar-container.control.d.ts.map +1 -1
  179. package/dist/ui/navigation/sidebar/sd-sidebar-container.control.js +2 -2
  180. package/dist/ui/navigation/sidebar/sd-sidebar-menu.control.d.ts.map +1 -1
  181. package/dist/ui/navigation/sidebar/sd-sidebar-menu.control.js +1 -1
  182. package/dist/ui/navigation/sidebar/sd-sidebar-user.control.d.ts.map +1 -1
  183. package/dist/ui/navigation/sidebar/sd-sidebar-user.control.js +1 -1
  184. package/dist/ui/navigation/sidebar/sd-sidebar.control.d.ts.map +1 -1
  185. package/dist/ui/navigation/sidebar/sd-sidebar.control.js +1 -1
  186. package/dist/ui/navigation/tab/sd-tab-item.control.d.ts.map +1 -1
  187. package/dist/ui/navigation/tab/sd-tab-item.control.js +1 -1
  188. package/dist/ui/navigation/tab/sd-tab.control.d.ts.map +1 -1
  189. package/dist/ui/navigation/tab/sd-tab.control.js +1 -1
  190. package/dist/ui/navigation/tab/sd-tabview-item.control.d.ts.map +1 -1
  191. package/dist/ui/navigation/tab/sd-tabview-item.control.js +1 -1
  192. package/dist/ui/navigation/tab/sd-tabview.control.d.ts.map +1 -1
  193. package/dist/ui/navigation/tab/sd-tabview.control.js +1 -1
  194. package/dist/ui/navigation/topbar/sd-topbar-container.control.d.ts.map +1 -1
  195. package/dist/ui/navigation/topbar/sd-topbar-container.control.js +1 -1
  196. package/dist/ui/navigation/topbar/sd-topbar-menu.control.d.ts.map +1 -1
  197. package/dist/ui/navigation/topbar/sd-topbar-menu.control.js +1 -1
  198. package/dist/ui/navigation/topbar/sd-topbar-user.control.d.ts.map +1 -1
  199. package/dist/ui/navigation/topbar/sd-topbar-user.control.js +1 -1
  200. package/dist/ui/navigation/topbar/sd-topbar.control.d.ts.map +1 -1
  201. package/dist/ui/navigation/topbar/sd-topbar.control.js +1 -1
  202. package/dist/ui/overlay/busy/sd-busy-container.control.d.ts.map +1 -1
  203. package/dist/ui/overlay/busy/sd-busy-container.control.js +1 -1
  204. package/dist/ui/overlay/busy/sd-busy.provider.d.ts.map +1 -1
  205. package/dist/ui/overlay/dropdown/sd-dropdown-popup.control.d.ts.map +1 -1
  206. package/dist/ui/overlay/dropdown/sd-dropdown-popup.control.js +2 -2
  207. package/dist/ui/overlay/dropdown/sd-dropdown.control.d.ts.map +1 -1
  208. package/dist/ui/overlay/dropdown/sd-dropdown.control.js +1 -1
  209. package/dist/ui/overlay/modal/sd-confirm-modal.control.d.ts.map +1 -1
  210. package/dist/ui/overlay/modal/sd-confirm-modal.control.js +1 -1
  211. package/dist/ui/overlay/modal/sd-modal.control.d.ts +1 -0
  212. package/dist/ui/overlay/modal/sd-modal.control.d.ts.map +1 -1
  213. package/dist/ui/overlay/modal/sd-modal.control.js +10 -2
  214. package/dist/ui/overlay/modal/sd-modal.provider.d.ts +9 -3
  215. package/dist/ui/overlay/modal/sd-modal.provider.d.ts.map +1 -1
  216. package/dist/ui/overlay/modal/sd-prompt-modal.control.d.ts.map +1 -1
  217. package/dist/ui/overlay/modal/sd-prompt-modal.control.js +1 -1
  218. package/dist/ui/overlay/toast/sd-toast-container.control.d.ts.map +1 -1
  219. package/dist/ui/overlay/toast/sd-toast-container.control.js +1 -1
  220. package/dist/ui/overlay/toast/sd-toast.control.d.ts.map +1 -1
  221. package/dist/ui/overlay/toast/sd-toast.control.js +1 -1
  222. package/dist/ui/overlay/toast/sd-toast.provider.d.ts.map +1 -1
  223. package/dist/ui/overlay/toast/sd-toast.provider.js +7 -3
  224. package/dist/ui/visual/sd-barcode.control.d.ts.map +1 -1
  225. package/dist/ui/visual/sd-barcode.control.js +1 -1
  226. package/dist/ui/visual/sd-calendar.control.d.ts.map +1 -1
  227. package/dist/ui/visual/sd-calendar.control.js +1 -1
  228. package/dist/ui/visual/sd-echarts.control.d.ts.map +1 -1
  229. package/dist/ui/visual/sd-echarts.control.js +1 -1
  230. package/dist/ui/visual/sd-label.control.d.ts.map +1 -1
  231. package/dist/ui/visual/sd-label.control.js +1 -1
  232. package/dist/ui/visual/sd-note.control.d.ts.map +1 -1
  233. package/dist/ui/visual/sd-note.control.js +1 -1
  234. package/dist/ui/visual/sd-progress.control.d.ts +1 -0
  235. package/dist/ui/visual/sd-progress.control.d.ts.map +1 -1
  236. package/dist/ui/visual/sd-progress.control.js +5 -4
  237. package/docs/core.md +877 -0
  238. package/docs/features.md +377 -0
  239. package/docs/styling.md +309 -0
  240. package/docs/ui-data.md +233 -0
  241. package/docs/ui-form.md +421 -0
  242. package/docs/ui-layout.md +216 -0
  243. package/docs/ui-navigation.md +279 -0
  244. package/docs/ui-overlay.md +330 -0
  245. package/docs/ui-visual.md +131 -0
  246. package/package.json +5 -5
  247. package/src/core/providers/sd-print.provider.ts +10 -2
  248. package/src/core/providers/sd-shared-data.provider.ts +3 -0
  249. package/src/core/utils/TDirectiveInputSignals.ts +5 -0
  250. package/src/core/utils/injectParent.ts +41 -0
  251. package/src/core/utils/setups/setupCloserWhenSingleSelectionChange.ts +29 -0
  252. package/src/core/utils/setups/setupCumulateSelectedKeys.ts +38 -0
  253. package/src/features/address/sd-address-search.modal.ts +119 -0
  254. package/src/features/base/sd-base-container.control.ts +113 -0
  255. package/src/features/data-view/sd-data-detail.control.ts +394 -0
  256. package/src/features/data-view/sd-data-select-button.control.ts +210 -0
  257. package/src/features/data-view/sd-data-sheet-column.directive.ts +10 -0
  258. package/src/features/data-view/sd-data-sheet.control.ts +850 -0
  259. package/src/features/shared-data/sd-shared-data-select-button.control.ts +64 -0
  260. package/src/features/shared-data/sd-shared-data-select-list.control.ts +245 -0
  261. package/src/features/shared-data/sd-shared-data-select.control.ts +364 -0
  262. package/src/index.ts +39 -1
  263. package/src/scss.d.ts +5 -0
  264. package/src/ui/data/list/sd-list-item.control.ts +4 -2
  265. package/src/ui/data/sheet/sd-sheet-column.directive.ts +9 -1
  266. package/src/ui/data/sheet/sd-sheet.control.ts +23 -19
  267. package/src/ui/data/sheet/useSheetCellAgent.ts +1 -2
  268. package/src/ui/data/sheet/useSheetLayoutEngine.ts +1 -0
  269. package/src/ui/form/button/sd-modal-select-button.control.ts +41 -59
  270. package/src/ui/form/editor/sd-tiptap-editor.control.ts +35 -1
  271. package/src/ui/form/select/sd-select-item.control.ts +1 -1
  272. package/src/ui/form/select/sd-select.control.ts +7 -4
  273. package/src/ui/layout/dock/sd-dock.control.ts +15 -2
  274. package/src/ui/layout/kanban/sd-kanban-lane.control.ts +6 -3
  275. package/src/ui/navigation/pagination/sd-pagination.control.ts +5 -3
  276. package/src/ui/navigation/sidebar/sd-sidebar-container.control.ts +1 -1
  277. package/src/ui/overlay/dropdown/sd-dropdown-popup.control.ts +1 -1
  278. package/src/ui/overlay/modal/sd-modal.control.ts +9 -0
  279. package/src/ui/overlay/modal/sd-modal.provider.ts +15 -3
  280. package/src/ui/overlay/toast/sd-toast.provider.ts +9 -3
  281. package/src/ui/visual/sd-progress.control.ts +4 -1
  282. package/docs/commons-and-configuration.md +0 -34
  283. package/docs/data-display-components.md +0 -146
  284. package/docs/directives.md +0 -158
  285. package/docs/event-plugins.md +0 -109
  286. package/docs/form-components.md +0 -362
  287. package/docs/hooks-and-utilities.md +0 -175
  288. package/docs/layout-components.md +0 -140
  289. package/docs/navigation-components.md +0 -200
  290. package/docs/overlay-components.md +0 -193
  291. package/docs/pipes.md +0 -25
  292. package/docs/providers.md +0 -448
  293. package/docs/setup-functions.md +0 -66
  294. package/docs/visual-components.md +0 -89
package/docs/providers.md DELETED
@@ -1,448 +0,0 @@
1
- # Providers / Services
2
-
3
- ## `SdThemeProvider`
4
-
5
- Injectable (root). Manages dark/light theme by toggling `sd-theme-dark` class on `document.body`.
6
-
7
- ```typescript
8
- @Injectable({ providedIn: "root" })
9
- class SdThemeProvider {
10
- dark: WritableSignal<boolean>; // default: false
11
- }
12
- ```
13
-
14
- ## `SdAngularConfigProvider`
15
-
16
- Injectable (root). Holds the client application name set by `provideSdAngular`.
17
-
18
- ```typescript
19
- @Injectable({ providedIn: "root" })
20
- class SdAngularConfigProvider {
21
- clientName!: string;
22
- }
23
- ```
24
-
25
- ## `SdSystemLogProvider`
26
-
27
- Injectable (root). Writes log messages to console and optionally to a custom handler.
28
-
29
- ```typescript
30
- @Injectable({ providedIn: "root" })
31
- class SdSystemLogProvider {
32
- writeFn?: (severity: "error" | "warn" | "log", ...data: any[]) => Promise<void> | void;
33
-
34
- async writeAsync(severity: "error" | "warn" | "log", ...data: any[]): Promise<void>;
35
- }
36
- ```
37
-
38
- ## `SdNavigateWindowProvider`
39
-
40
- Injectable (root). Opens navigation links in new windows or tabs, with support for window features.
41
-
42
- ```typescript
43
- @Injectable({ providedIn: "root" })
44
- class SdNavigateWindowProvider {
45
- get isWindow(): boolean;
46
- open(navigate: string, params?: Record<string, string>, features?: string): void;
47
- }
48
- ```
49
-
50
- ## `SdLocalStorageProvider`
51
-
52
- Injectable (root). Typed localStorage wrapper that scopes keys by client name.
53
-
54
- ```typescript
55
- @Injectable({ providedIn: "root" })
56
- class SdLocalStorageProvider<T> {
57
- set<K extends keyof T & string>(key: K, value: T[K]): void;
58
- get<K extends keyof T & string>(key: K): T[K] | undefined;
59
- remove(key: keyof T & string): void;
60
- }
61
- ```
62
-
63
- ## `SdSystemConfigProvider`
64
-
65
- Injectable (root). Persists and retrieves system configuration via localStorage or a custom backend.
66
-
67
- ```typescript
68
- @Injectable({ providedIn: "root" })
69
- class SdSystemConfigProvider<T> {
70
- fn?: {
71
- set<K extends keyof T & string>(key: K, data: T[K]): Promise<void> | void;
72
- get(key: keyof T & string): PromiseLike<any>;
73
- };
74
-
75
- async setAsync<K extends keyof T & string>(key: K, data: T[K]): Promise<void>;
76
- async getAsync(key: keyof T & string): Promise<any>;
77
- }
78
- ```
79
-
80
- ## `SdFileDialogProvider`
81
-
82
- Injectable (root). Opens a native file picker dialog.
83
-
84
- ```typescript
85
- @Injectable({ providedIn: "root" })
86
- class SdFileDialogProvider {
87
- async showAsync(multiple?: false, accept?: string): Promise<File | undefined>;
88
- async showAsync(multiple: true, accept?: string): Promise<File[] | undefined>;
89
- }
90
- ```
91
-
92
- ## `SdServiceClientFactoryProvider`
93
-
94
- Injectable (root). Manages WebSocket-based service client connections.
95
-
96
- ```typescript
97
- @Injectable({ providedIn: "root" })
98
- class SdServiceClientFactoryProvider {
99
- async connectAsync(key: string, options?: Partial<ServiceConnectionOptions>): Promise<void>;
100
- async closeAsync(key: string): Promise<void>;
101
- get(key: string): ServiceClient;
102
- }
103
- ```
104
-
105
- ## `SdAppStructureProvider`
106
-
107
- Injectable (root, abstract). Provides application menu and permission structure. Subclass and implement `items`, `usableModules`, and `permRecord`.
108
-
109
- ```typescript
110
- @Injectable({ providedIn: "root" })
111
- abstract class SdAppStructureProvider<TModule = unknown> {
112
- abstract items: TSdAppStructureItem<TModule>[];
113
- abstract usableModules: Signal<TModule[] | undefined>;
114
- abstract permRecord: Signal<Record<string, boolean> | undefined>;
115
-
116
- usableMenus: Signal<ISdMenu<TModule>[]>;
117
- usableFlatMenus: Signal<ISdFlatMenu<TModule>[]>;
118
-
119
- getPermissionsByStructure(items: TSdAppStructureItem<TModule>[], codeChain?: string[]): ISdPermission<TModule>[];
120
- getTitleByFullCode(fullCode: string): string;
121
- getItemChainByFullCode(fullCode: string): TSdAppStructureItem<TModule>[];
122
- getPermsByFullCode<K extends string>(fullCodes: string[], permKeys: K[]): K[];
123
- }
124
- ```
125
-
126
- ### `TSdAppStructureItem`
127
-
128
- ```typescript
129
- type TSdAppStructureItem<TModule = unknown> =
130
- | ISdAppStructureGroupItem<TModule>
131
- | ISdAppStructureLeafItem<TModule>;
132
- ```
133
-
134
- Group item fields:
135
-
136
- | Field | Type | Description |
137
- |-------|------|-------------|
138
- | `code` | `string` | Unique code |
139
- | `title` | `string` | Display title |
140
- | `modules` | `TModule[]` | Optional: any-of module requirement (OR) |
141
- | `requiredModules` | `TModule[]` | Optional: all-of module requirement (AND) |
142
- | `icon` | `string` | Optional icon SVG |
143
- | `children` | `TSdAppStructureItem<TModule>[]` | Child items |
144
-
145
- Leaf item fields:
146
-
147
- | Field | Type | Description |
148
- |-------|------|-------------|
149
- | `code` | `string` | Unique code |
150
- | `title` | `string` | Display title |
151
- | `modules` | `TModule[]` | Optional: any-of module requirement (OR) |
152
- | `requiredModules` | `TModule[]` | Optional: all-of module requirement (AND) |
153
- | `perms` | `("use" \| "edit")[]` | Optional permission keys |
154
- | `subPerms` | `ISdAppStructureSubPermission<TModule>[]` | Optional sub-permissions |
155
- | `icon` | `string` | Optional icon SVG |
156
- | `isNotMenu` | `boolean` | Optional: exclude from menu |
157
-
158
- ### `ISdMenu`
159
-
160
- | Field | Type | Description |
161
- |-------|------|-------------|
162
- | `title` | `string` | Display title |
163
- | `codeChain` | `string[]` | Code path chain |
164
- | `icon` | `string \| undefined` | Icon SVG |
165
- | `modules` | `TModule[] \| undefined` | Modules |
166
- | `children` | `ISdMenu<TModule>[] \| undefined` | Child menus |
167
-
168
- ### `ISdFlatMenu`
169
-
170
- | Field | Type | Description |
171
- |-------|------|-------------|
172
- | `titleChain` | `string[]` | Title path chain |
173
- | `codeChain` | `string[]` | Code path chain |
174
- | `modulesChain` | `TModule[][]` | Module chain |
175
-
176
- ### `ISdPermission`
177
-
178
- | Field | Type | Description |
179
- |-------|------|-------------|
180
- | `title` | `string` | Display title |
181
- | `codeChain` | `string[]` | Code path chain |
182
- | `modules` | `TModule[] \| undefined` | Modules |
183
- | `perms` | `("use" \| "edit")[] \| undefined` | Permission keys |
184
- | `children` | `ISdPermission<TModule>[] \| undefined` | Child permissions |
185
-
186
- ### `ISdFlatPermission`
187
-
188
- | Field | Type | Description |
189
- |-------|------|-------------|
190
- | `titleChain` | `string[]` | Title path chain |
191
- | `codeChain` | `string[]` | Code path chain |
192
- | `modulesChain` | `TModule[][]` | Module chain |
193
-
194
- ## `SdAppStructureUtils`
195
-
196
- Abstract class with static utility methods for menu and permission computation.
197
-
198
- ```typescript
199
- abstract class SdAppStructureUtils {
200
- static getTitleByFullCode<TModule>(items: TSdAppStructureItem<TModule>[], fullCode: string): string;
201
- static getPermsByFullCode<TModule, K extends string>(
202
- items: TSdAppStructureItem<TModule>[],
203
- fullCodes: string[],
204
- permKeys: K[],
205
- permRecord: Record<string, boolean> | undefined,
206
- ): K[];
207
- static getItemChainByFullCode<TModule>(
208
- items: TSdAppStructureItem<TModule>[],
209
- fullCode: string,
210
- ): TSdAppStructureItem<TModule>[];
211
- static getMenus<TModule>(
212
- items: TSdAppStructureItem<TModule>[],
213
- codeChain: string[],
214
- usableModules: TModule[] | undefined,
215
- permRecord: Record<string, boolean> | undefined,
216
- ): ISdMenu<TModule>[];
217
- static getFlatMenus<TModule>(
218
- items: TSdAppStructureItem<TModule>[],
219
- usableModules: TModule[] | undefined,
220
- permRecord: Record<string, boolean> | undefined,
221
- ): ISdFlatMenu<TModule>[];
222
- static getPermissions<TModule>(
223
- items: TSdAppStructureItem<TModule>[],
224
- codeChain: string[],
225
- usableModules: TModule[] | undefined,
226
- ): ISdPermission<TModule>[];
227
- static getFlatPermissions<TModule>(
228
- items: TSdAppStructureItem<TModule>[],
229
- usableModules: TModule[] | undefined,
230
- ): ISdFlatPermission<TModule>[];
231
- }
232
- ```
233
-
234
- ## `SdSharedDataProvider`
235
-
236
- Injectable (abstract). Manages real-time shared data with event-driven partial updates via service client.
237
-
238
- ```typescript
239
- @Injectable()
240
- abstract class SdSharedDataProvider<T extends Record<string, ISharedDataBase<string | number>>> {
241
- readonly loadingCount: WritableSignal<number>;
242
-
243
- abstract initialize(): void;
244
- register<K extends string & keyof T>(name: K, info: ISharedDataInfo<T[K]>): void;
245
- getHandle<K extends string & keyof T>(name: K): SharedDataHandle<T[K]>;
246
- async emitAsync<K extends string & keyof T>(name: K, changeKeys?: (string | number)[]): Promise<void>;
247
- async wait(): Promise<void>;
248
- }
249
- ```
250
-
251
- ### `ISharedDataBase`
252
-
253
- | Field | Type | Description |
254
- |-------|------|-------------|
255
- | `__valueKey` | `TKey` (string \| number) | Primary key of the shared data item |
256
-
257
- ### `ISharedDataInfo`
258
-
259
- | Field | Type | Description |
260
- |-------|------|-------------|
261
- | `serviceKey` | `string` | Key identifying the service client connection |
262
- | `getter` | `(changeKeys?: (string \| number)[]) => Promise<T[]>` | Function to fetch data (full or partial) |
263
- | `filter` | `unknown` | Optional filter for event matching |
264
- | `orderBy` | `(a: T, b: T) => number` | Optional sort comparator |
265
-
266
- ### `SharedDataHandle`
267
-
268
- | Field | Type | Description |
269
- |-------|------|-------------|
270
- | `items` | `Signal<T[]>` | Read-only signal of all items |
271
- | `get` | `(key: T["__valueKey"] \| undefined) => T \| undefined` | Lookup by key |
272
-
273
- ### `SdSharedDataChangeEvent`
274
-
275
- Event definition for shared data change notifications (used with service client events).
276
-
277
- ```typescript
278
- const SdSharedDataChangeEvent: EventDefinition<
279
- { name: string; filter: unknown },
280
- (string | number)[] | undefined
281
- >;
282
- ```
283
-
284
- ## `SdModalProvider`
285
-
286
- Injectable (root). Programmatically creates and shows modal dialogs.
287
-
288
- ```typescript
289
- @Injectable({ providedIn: "root" })
290
- class SdModalProvider {
291
- modalCount: WritableSignal<number>;
292
-
293
- async showAsync<T extends ISdModal<any>>(
294
- modal: ISdModalInfo<T>,
295
- options?: ISdModalOptions,
296
- ): Promise<Parameters<T["close"]["emit"]>[0] | undefined>;
297
- }
298
- ```
299
-
300
- ### `ISdModal`
301
-
302
- | Field | Type | Description |
303
- |-------|------|-------------|
304
- | `initialized` | `Signal<boolean>` | Whether the modal content is initialized |
305
- | `close` | `OutputEmitterRef<O \| undefined>` | Output to emit close result |
306
- | `actionTplRef` | `TemplateRef<any>` | Optional action template for header |
307
-
308
- ### `ISdModalInfo`
309
-
310
- | Field | Type | Description |
311
- |-------|------|-------------|
312
- | `title` | `string` | Modal title |
313
- | `type` | `Type<T>` | Component type for modal content |
314
- | `inputs` | `Omit<TDirectiveInputSignals<T>, "initialized" \| "close" \| "actionTplRef">` | Component inputs |
315
-
316
- ### `ISdModalOptions`
317
-
318
- | Field | Type | Description |
319
- |-------|------|-------------|
320
- | `key` | `string` | Optional key for config persistence |
321
- | `hideHeader` | `boolean` | Hide the modal header |
322
- | `hideCloseButton` | `boolean` | Hide the close button |
323
- | `useCloseByBackdrop` | `boolean` | Allow closing by clicking backdrop (default: true) |
324
- | `useCloseByEscapeKey` | `boolean` | Allow closing by Escape key (default: true) |
325
- | `float` | `boolean` | Float mode |
326
- | `fill` | `boolean` | Fill mode |
327
- | `resizable` | `boolean` | Enable resize handles |
328
- | `movable` | `boolean` | Enable header drag to move |
329
- | `position` | `"bottom-right" \| "top-right"` | Position preset |
330
- | `minHeightPx` | `number` | Minimum height in pixels |
331
- | `minWidthPx` | `number` | Minimum width in pixels |
332
- | `heightPx` | `number` | Initial height in pixels |
333
- | `widthPx` | `number` | Initial width in pixels |
334
- | `headerStyle` | `string` | Custom header inline style |
335
- | `noFirstControlFocusing` | `boolean` | Skip auto-focusing first control |
336
-
337
- ## `SdActivatedModalProvider`
338
-
339
- Injectable. Available inside modal content components via DI. Provides access to modal context.
340
-
341
- ```typescript
342
- @Injectable()
343
- class SdActivatedModalProvider<T extends ISdModal<any> = ISdModal<any>> {
344
- modalComponent: WritableSignal<any>;
345
- contentComponent: WritableSignal<T | undefined>;
346
- canDeactiveFn: () => boolean;
347
- }
348
- ```
349
-
350
- ## `SdToastProvider`
351
-
352
- Injectable (root). Shows toast notifications with severity levels.
353
-
354
- ```typescript
355
- @Injectable({ providedIn: "root" })
356
- class SdToastProvider {
357
- alertThemes: WritableSignal<TSdToastSeverity[]>;
358
- overlap: WritableSignal<boolean>;
359
- beforeShowFn?: (theme: TSdToastSeverity) => void;
360
-
361
- info(message: string, useProgress?: true): WritableSignal<number>;
362
- info(message: string, useProgress?: false): void;
363
- success(message: string, useProgress?: true): WritableSignal<number>;
364
- success(message: string, useProgress?: false): void;
365
- warning(message: string, useProgress?: true): WritableSignal<number>;
366
- warning(message: string, useProgress?: false): void;
367
- danger(message: string, useProgress?: true): WritableSignal<number>;
368
- danger(message: string, useProgress?: false): void;
369
-
370
- notify<T extends ISdToast<any>>(input: ISdToastInput<T>): Promise<Parameters<T["close"]["emit"]>[0] | undefined>;
371
- async try<R>(fn: () => Promise<R>, messageFn?: (err: unknown) => string): Promise<R | undefined>;
372
- }
373
- ```
374
-
375
- ### `TSdToastSeverity`
376
-
377
- ```typescript
378
- type TSdToastSeverity = "info" | "success" | "warning" | "danger";
379
- ```
380
-
381
- ### `TSdToastTheme`
382
-
383
- ```typescript
384
- type TSdToastTheme = "primary" | "secondary" | TSdToastSeverity | "gray" | "blue-gray";
385
- ```
386
-
387
- ### `ISdToast`
388
-
389
- | Field | Type | Description |
390
- |-------|------|-------------|
391
- | `close` | `OutputEmitterRef<O \| undefined>` | Output to emit close result |
392
-
393
- ### `ISdToastInput`
394
-
395
- | Field | Type | Description |
396
- |-------|------|-------------|
397
- | `type` | `Type<T>` | Component type for toast content |
398
- | `inputs` | `Omit<TDirectiveInputSignals<T>, "close">` | Component inputs |
399
-
400
- ## `SdBusyProvider`
401
-
402
- Injectable (root). Manages the global busy/loading overlay.
403
-
404
- ```typescript
405
- @Injectable({ providedIn: "root" })
406
- class SdBusyProvider {
407
- type: WritableSignal<TSdBusyType>; // default: "bar"
408
- globalBusyCount: WritableSignal<number>; // default: 0
409
- }
410
- ```
411
-
412
- ### `TSdBusyType`
413
-
414
- ```typescript
415
- type TSdBusyType = "spinner" | "bar" | "cube";
416
- ```
417
-
418
- ## `SdPrintProvider`
419
-
420
- Injectable (root). Prints components via `window.print()` or generates PDF buffers.
421
-
422
- ```typescript
423
- @Injectable({ providedIn: "root" })
424
- class SdPrintProvider {
425
- async printAsync<T extends ISdPrint>(
426
- template: ISdPrintInput<T>,
427
- options?: { size?: string; margin?: string },
428
- ): Promise<void>;
429
-
430
- async getPdfBufferAsync<T extends ISdPrint>(
431
- template: ISdPrintInput<T>,
432
- options?: { orientation?: "portrait" | "landscape"; pageSize?: string },
433
- ): Promise<Uint8Array>;
434
- }
435
- ```
436
-
437
- ### `ISdPrint`
438
-
439
- | Field | Type | Description |
440
- |-------|------|-------------|
441
- | `initialized` | `Signal<boolean>` | Whether the print component is initialized |
442
-
443
- ### `ISdPrintInput`
444
-
445
- | Field | Type | Description |
446
- |-------|------|-------------|
447
- | `type` | `Type<T>` | Component type for print content |
448
- | `inputs` | `Omit<TDirectiveInputSignals<T>, X>` | Component inputs |
@@ -1,66 +0,0 @@
1
- # Setup Functions
2
-
3
- Setup functions are called inside component/directive constructors (within injection context). They use `inject()` internally.
4
-
5
- ## `setupBgTheme`
6
-
7
- Sets the body `--background-color` CSS variable based on theme. Cleans up on destroy.
8
-
9
- ```typescript
10
- function setupBgTheme(options?: {
11
- theme?: "primary" | "secondary" | "info" | "success" | "warning" | "danger" | "gray" | "blue-gray";
12
- lightness?: "lightest" | "lighter";
13
- }): void;
14
- ```
15
-
16
- ## `setupRipple`
17
-
18
- Adds a material-style ripple effect to the host element on pointer interaction.
19
-
20
- ```typescript
21
- function setupRipple(enableFn?: () => boolean): void;
22
- ```
23
-
24
- - `enableFn`: Optional function that returns whether ripple is active. Called on each pointer down.
25
-
26
- ## `setupRevealOnShow`
27
-
28
- Animates element visibility when it enters the viewport using IntersectionObserver. Applies opacity and transform transitions.
29
-
30
- ```typescript
31
- function setupRevealOnShow(
32
- optFn?: () => {
33
- type?: "l2r" | "t2b";
34
- enabled?: boolean;
35
- },
36
- ): void;
37
- ```
38
-
39
- ## `setupInvalid`
40
-
41
- Adds form validation indicator to the host element. Creates a hidden input element for validity tracking and shows a red dot indicator when invalid.
42
-
43
- ```typescript
44
- function setupInvalid(getInvalidMessage: () => string): void;
45
- ```
46
-
47
- - `getInvalidMessage`: Returns the validation error message. Return empty string `""` for valid state.
48
-
49
- ## `setupModelHook`
50
-
51
- Intercepts a writable signal's `set` method with an async guard function. If the guard returns `false` or a promise resolving to `false`, the set is prevented.
52
-
53
- ```typescript
54
- function setupModelHook<T, S extends WritableSignal<T>>(
55
- model: S,
56
- canFn: Signal<(item: T) => boolean | Promise<boolean>>,
57
- ): void;
58
- ```
59
-
60
- ## `setupCanDeactivate`
61
-
62
- Registers a route or modal can-deactivate guard. When inside a modal, sets `SdActivatedModalProvider.canDeactiveFn`. When inside a route, pushes a `CanDeactivateFn` to the route config.
63
-
64
- ```typescript
65
- function setupCanDeactivate(fn: () => boolean): void;
66
- ```
@@ -1,89 +0,0 @@
1
- # Visual Components
2
-
3
- ## `SdLabelControl`
4
-
5
- Colored label/badge component.
6
-
7
- Selector: `sd-label`
8
-
9
- | Input | Type | Description |
10
- |-------|------|-------------|
11
- | `theme` | `"primary" \| "secondary" \| "info" \| "success" \| "warning" \| "danger" \| "gray" \| "blue-gray"` | Background color theme |
12
- | `color` | `string` | Custom background color (CSS value) |
13
- | `clickable` | `boolean` (booleanAttribute) | Enable hover/cursor effects (default: `false`) |
14
-
15
- ## `SdNoteControl`
16
-
17
- Note/callout block with themed background.
18
-
19
- Selector: `sd-note`
20
-
21
- | Input | Type | Description |
22
- |-------|------|-------------|
23
- | `theme` | `"primary" \| "secondary" \| "info" \| "success" \| "warning" \| "danger" \| "gray" \| "blue-gray"` | Background color theme |
24
- | `size` | `"sm" \| "lg"` | Size variant |
25
- | `inset` | `boolean` (booleanAttribute) | Remove border-radius (default: `false`) |
26
-
27
- ## `SdProgressControl`
28
-
29
- Progress bar with percentage display.
30
-
31
- Selector: `sd-progress`
32
-
33
- | Input | Type | Description |
34
- |-------|------|-------------|
35
- | `theme` | `"primary" \| "secondary" \| "info" \| "success" \| "warning" \| "danger" \| "gray" \| "blue-gray"` (required) | Bar color theme |
36
- | `value` | `number` (required) | Progress value (0 to 1) |
37
- | `inset` | `boolean` (booleanAttribute) | Borderless inset style (default: `false`) |
38
- | `size` | `"sm" \| "lg"` | Size variant |
39
-
40
- ## `SdCalendarControl`
41
-
42
- Monthly calendar grid that displays items on their respective dates.
43
-
44
- Selector: `sd-calendar`
45
-
46
- | Input | Type | Description |
47
- |-------|------|-------------|
48
- | `items` | `T[]` (required) | Data items to display |
49
- | `getItemDateFn` | `(item: T, index: number) => DateOnly` (required) | Function to extract date from each item |
50
- | `yearMonth` | `DateOnly` | Year-month to display (default: current month, day set to 1) |
51
- | `weekStartDay` | `number` | Week start day, 0=Sunday (default: `0`) |
52
- | `minDaysInFirstWeek` | `number` | Minimum days in the first week (default: `1`) |
53
-
54
- Content children:
55
- - `SdItemOfTemplateDirective` template (required): Template for rendering each item. Context: `SdItemOfTemplateContext<T>`
56
-
57
- ## `SdBarcodeControl`
58
-
59
- Barcode and QR code renderer using bwip-js. Renders SVG output.
60
-
61
- Selector: `sd-barcode`
62
-
63
- | Input | Type | Description |
64
- |-------|------|-------------|
65
- | `type` | `TBarcodeType` (required) | Barcode symbology type |
66
- | `value` | `string` | Barcode data value |
67
-
68
- ### `TBarcodeType`
69
-
70
- Extensive union type of barcode symbologies supported by bwip-js. Includes common types:
71
-
72
- - 1D: `"code128"`, `"code39"`, `"ean13"`, `"ean8"`, `"upca"`, `"upce"`, `"interleaved2of5"`, `"itf14"`, `"isbn"`, `"issn"`, `"pharmacode"`, etc.
73
- - 2D: `"qrcode"`, `"datamatrix"`, `"azteccode"`, `"pdf417"`, `"maxicode"`, `"dotcode"`, `"hanxin"`, `"microqrcode"`, etc.
74
- - GS1: `"gs1-128"`, `"gs1datamatrix"`, `"gs1qrcode"`, etc.
75
- - Postal: `"postnet"`, `"royalmail"`, `"japanpost"`, `"onecode"`, etc.
76
-
77
- Full list: `"auspost" | "azteccode" | "azteccodecompact" | "aztecrune" | "bc412" | "channelcode" | "codablockf" | "code11" | "code128" | "code16k" | "code2of5" | "code32" | "code39" | "code39ext" | "code49" | "code93" | "code93ext" | "codeone" | "coop2of5" | "daft" | "databarexpanded" | "databarexpandedcomposite" | "databarexpandedstacked" | "databarexpandedstackedcomposite" | "databarlimited" | "databarlimitedcomposite" | "databaromni" | "databaromnicomposite" | "databarstacked" | "databarstackedcomposite" | "databarstackedomni" | "databarstackedomnicomposite" | "databartruncated" | "databartruncatedcomposite" | "datalogic2of5" | "datamatrix" | "datamatrixrectangular" | "datamatrixrectangularextension" | "dotcode" | "ean13" | "ean13composite" | "ean14" | "ean2" | "ean5" | "ean8" | "ean8composite" | "flattermarken" | "gs1-128" | "gs1-128composite" | "gs1-cc" | "gs1datamatrix" | "gs1datamatrixrectangular" | "gs1dldatamatrix" | "gs1dlqrcode" | "gs1dotcode" | "gs1northamericancoupon" | "gs1qrcode" | "hanxin" | ... | "upce" | "upcecomposite"`
78
-
79
- ## `SdEchartsControl`
80
-
81
- Apache ECharts wrapper component. Renders charts using SVG renderer with automatic resize handling.
82
-
83
- Selector: `sd-echarts`
84
-
85
- | Input | Type | Description |
86
- |-------|------|-------------|
87
- | `option` | `echarts.EChartsOption` (required) | ECharts configuration option |
88
- | `notMerge` | `boolean` | Whether to replace (not merge) options (default: `false`) |
89
- | `loading` | `boolean` | Show loading indicator (default: `false`) |