@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,59 @@
1
+ import { ChangeDetectionStrategy, Component, computed, inject, input, ViewEncapsulation, } from "@angular/core";
2
+ import { SdSidebarContainerControl } from "../sidebar/sd-sidebar-container.control";
3
+ import { SdButtonControl } from "../../form/button/sd-button.control";
4
+ import { NgIcon } from "@ng-icons/core";
5
+ import { tablerMenu2 } from "@ng-icons/tabler-icons";
6
+ import * as i0 from "@angular/core";
7
+ const _c0 = ["*"];
8
+ function SdTopbarControl_Conditional_0_Template(rf, ctx) { if (rf & 1) {
9
+ const _r1 = i0.ɵɵgetCurrentView();
10
+ i0.ɵɵelementStart(0, "sd-button", 1);
11
+ i0.ɵɵlistener("click", function SdTopbarControl_Conditional_0_Template_sd_button_click_0_listener() { i0.ɵɵrestoreView(_r1); const ctx_r1 = i0.ɵɵnextContext(); return i0.ɵɵresetView(ctx_r1.onToggleButtonClick()); });
12
+ i0.ɵɵelement(1, "ng-icon", 2);
13
+ i0.ɵɵelementEnd();
14
+ } if (rf & 2) {
15
+ const ctx_r1 = i0.ɵɵnextContext();
16
+ i0.ɵɵproperty("theme", "link-primary")("buttonClass", "p-sm-default");
17
+ i0.ɵɵadvance();
18
+ i0.ɵɵproperty("svg", ctx_r1.tablerMenu2);
19
+ } }
20
+ export class SdTopbarControl {
21
+ _injectedSidebarContainer = inject(SdSidebarContainerControl, {
22
+ optional: true,
23
+ });
24
+ sidebarContainer = input(...(ngDevMode ? [undefined, { debugName: "sidebarContainer" }] : /* istanbul ignore next */ []));
25
+ hasSidebar = computed(() => this.sidebarContainer() != null || this._injectedSidebarContainer != null, ...(ngDevMode ? [{ debugName: "hasSidebar" }] : /* istanbul ignore next */ []));
26
+ onToggleButtonClick() {
27
+ const sc = this.sidebarContainer() ?? this._injectedSidebarContainer;
28
+ if (sc != null) {
29
+ sc.toggle.update((v) => !v);
30
+ }
31
+ }
32
+ tablerMenu2 = tablerMenu2;
33
+ static ɵfac = function SdTopbarControl_Factory(__ngFactoryType__) { return new (__ngFactoryType__ || SdTopbarControl)(); };
34
+ static ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: SdTopbarControl, selectors: [["sd-topbar"]], hostAttrs: [1, "flex-row", "gap-default", "cross-align-center", "main-align-start"], inputs: { sidebarContainer: [1, "sidebarContainer"] }, ngContentSelectors: _c0, decls: 2, vars: 1, consts: [[3, "theme", "buttonClass"], [3, "click", "theme", "buttonClass"], [3, "svg"]], template: function SdTopbarControl_Template(rf, ctx) { if (rf & 1) {
35
+ i0.ɵɵprojectionDef();
36
+ i0.ɵɵconditionalCreate(0, SdTopbarControl_Conditional_0_Template, 2, 3, "sd-button", 0);
37
+ i0.ɵɵprojection(1);
38
+ } if (rf & 2) {
39
+ i0.ɵɵconditional(ctx.hasSidebar() ? 0 : -1);
40
+ } }, dependencies: [SdButtonControl, NgIcon], styles: ["sd-topbar {\n min-height: var(--topbar-height);\n overflow-x: auto;\n overflow-y: hidden;\n user-select: none;\n background: var(--control-color);\n color: var(--text-trans-default);\n border-bottom: 1px solid var(--border-color-lighter);\n padding-left: var(--gap-sm);\n}\nsd-topbar > h1 {\n padding-right: var(--gap-xl);\n}\nsd-topbar > h2 {\n padding-right: var(--gap-xl);\n}\nsd-topbar > h3 {\n padding-right: var(--gap-xl);\n}\nsd-topbar > h4 {\n padding-right: var(--gap-xl);\n}\nsd-topbar > h5 {\n padding-right: var(--gap-xl);\n}\nsd-topbar > h6 {\n padding-right: var(--gap-xl);\n}\nsd-topbar::-webkit-scrollbar-track {\n background-color: var(--trans-light);\n}\nsd-topbar::-webkit-scrollbar-corner {\n background-color: var(--trans-light);\n}\nsd-topbar::-webkit-scrollbar {\n width: var(--gap-sm);\n height: var(--gap-sm);\n background-color: transparent;\n}\nsd-topbar::-webkit-scrollbar-thumb {\n background-color: var(--trans-default);\n}"], encapsulation: 2, changeDetection: 0 });
41
+ }
42
+ (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(SdTopbarControl, [{
43
+ type: Component,
44
+ args: [{ selector: "sd-topbar", changeDetection: ChangeDetectionStrategy.OnPush, encapsulation: ViewEncapsulation.None, standalone: true, imports: [SdButtonControl, NgIcon], host: {
45
+ "class": "flex-row gap-default cross-align-center main-align-start"
46
+ }, template: `
47
+ @if (hasSidebar()) {
48
+ <sd-button
49
+ [theme]="'link-primary'"
50
+ [buttonClass]="'p-sm-default'"
51
+ (click)="onToggleButtonClick()"
52
+ >
53
+ <ng-icon [svg]="tablerMenu2" />
54
+ </sd-button>
55
+ }
56
+ <ng-content />
57
+ `, styles: ["sd-topbar {\n min-height: var(--topbar-height);\n overflow-x: auto;\n overflow-y: hidden;\n user-select: none;\n background: var(--control-color);\n color: var(--text-trans-default);\n border-bottom: 1px solid var(--border-color-lighter);\n padding-left: var(--gap-sm);\n}\nsd-topbar > h1 {\n padding-right: var(--gap-xl);\n}\nsd-topbar > h2 {\n padding-right: var(--gap-xl);\n}\nsd-topbar > h3 {\n padding-right: var(--gap-xl);\n}\nsd-topbar > h4 {\n padding-right: var(--gap-xl);\n}\nsd-topbar > h5 {\n padding-right: var(--gap-xl);\n}\nsd-topbar > h6 {\n padding-right: var(--gap-xl);\n}\nsd-topbar::-webkit-scrollbar-track {\n background-color: var(--trans-light);\n}\nsd-topbar::-webkit-scrollbar-corner {\n background-color: var(--trans-light);\n}\nsd-topbar::-webkit-scrollbar {\n width: var(--gap-sm);\n height: var(--gap-sm);\n background-color: transparent;\n}\nsd-topbar::-webkit-scrollbar-thumb {\n background-color: var(--trans-default);\n}"] }]
58
+ }], null, { sidebarContainer: [{ type: i0.Input, args: [{ isSignal: true, alias: "sidebarContainer", required: false }] }] }); })();
59
+ (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassDebugInfo(SdTopbarControl, { className: "SdTopbarControl", filePath: "packages/angular/src/ui/navigation/topbar/sd-topbar.control.ts", lineNumber: 75 }); })();
@@ -0,0 +1,14 @@
1
+ import { type TSdBusyType } from "./sd-busy.provider";
2
+ import * as i0 from "@angular/core";
3
+ export declare class SdBusyContainerControl {
4
+ private readonly _sdBusy;
5
+ busy: import("@angular/core").InputSignalWithTransform<boolean, unknown>;
6
+ message: import("@angular/core").InputSignal<string | undefined>;
7
+ type: import("@angular/core").InputSignal<TSdBusyType | undefined>;
8
+ progressPercent: import("@angular/core").InputSignal<number | undefined>;
9
+ currType: import("@angular/core").Signal<TSdBusyType>;
10
+ constructor();
11
+ static ɵfac: i0.ɵɵFactoryDeclaration<SdBusyContainerControl, never>;
12
+ static ɵcmp: i0.ɵɵComponentDeclaration<SdBusyContainerControl, "sd-busy-container", never, { "busy": { "alias": "busy"; "required": false; "isSignal": true; }; "message": { "alias": "message"; "required": false; "isSignal": true; }; "type": { "alias": "type"; "required": false; "isSignal": true; }; "progressPercent": { "alias": "progressPercent"; "required": false; "isSignal": true; }; }, {}, never, ["*"], true, never>;
13
+ }
14
+ //# sourceMappingURL=sd-busy-container.control.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"sd-busy-container.control.d.ts","sourceRoot":"","sources":["..\\..\\..\\..\\src\\ui\\overlay\\busy\\sd-busy-container.control.ts"],"names":[],"mappings":"AAUA,OAAO,EAAkB,KAAK,WAAW,EAAE,MAAM,oBAAoB,CAAC;;AAEtE,qBA+Ma,sBAAsB;IACjC,OAAO,CAAC,QAAQ,CAAC,OAAO,CAA0B;IAElD,IAAI,qEAAiD;IACrD,OAAO,0DAAwC;IAC/C,IAAI,+DAA6C;IACjD,eAAe,0DAAwC;IAEvD,QAAQ,8CAAsD;;yCARnD,sBAAsB;2CAAtB,sBAAsB;CAuBlC"}
@@ -0,0 +1,119 @@
1
+ import { booleanAttribute, ChangeDetectionStrategy, Component, computed, ElementRef, inject, input, ViewEncapsulation, } from "@angular/core";
2
+ import { SdBusyProvider } from "./sd-busy.provider";
3
+ import * as i0 from "@angular/core";
4
+ const _c0 = ["*"];
5
+ function SdBusyContainerControl_Conditional_0_Case_3_Template(rf, ctx) { if (rf & 1) {
6
+ i0.ɵɵdomElement(0, "div", 3);
7
+ } }
8
+ function SdBusyContainerControl_Conditional_0_Case_4_Template(rf, ctx) { if (rf & 1) {
9
+ i0.ɵɵdomElement(0, "div", 4);
10
+ } }
11
+ function SdBusyContainerControl_Conditional_0_Case_5_Template(rf, ctx) { if (rf & 1) {
12
+ i0.ɵɵdomElementStart(0, "div", 5);
13
+ i0.ɵɵdomElement(1, "div", 8)(2, "div", 9)(3, "div", 10)(4, "div", 11);
14
+ i0.ɵɵdomElementEnd();
15
+ } }
16
+ function SdBusyContainerControl_Conditional_0_Conditional_6_Template(rf, ctx) { if (rf & 1) {
17
+ i0.ɵɵdomElementStart(0, "div", 6);
18
+ i0.ɵɵtext(1);
19
+ i0.ɵɵdomElementEnd();
20
+ } if (rf & 2) {
21
+ const ctx_r0 = i0.ɵɵnextContext(2);
22
+ i0.ɵɵadvance();
23
+ i0.ɵɵtextInterpolate(ctx_r0.message());
24
+ } }
25
+ function SdBusyContainerControl_Conditional_0_Conditional_7_Template(rf, ctx) { if (rf & 1) {
26
+ i0.ɵɵdomElementStart(0, "div", 7);
27
+ i0.ɵɵdomElement(1, "div", 12);
28
+ i0.ɵɵdomElementEnd();
29
+ } if (rf & 2) {
30
+ const ctx_r0 = i0.ɵɵnextContext(2);
31
+ i0.ɵɵadvance();
32
+ i0.ɵɵstyleProp("width", ctx_r0.progressPercent(), "%");
33
+ } }
34
+ function SdBusyContainerControl_Conditional_0_Template(rf, ctx) { if (rf & 1) {
35
+ i0.ɵɵdomElementStart(0, "div", 0)(1, "div", 1)(2, "div", 2);
36
+ i0.ɵɵconditionalCreate(3, SdBusyContainerControl_Conditional_0_Case_3_Template, 1, 0, "div", 3)(4, SdBusyContainerControl_Conditional_0_Case_4_Template, 1, 0, "div", 4)(5, SdBusyContainerControl_Conditional_0_Case_5_Template, 5, 0, "div", 5);
37
+ i0.ɵɵdomElementEnd();
38
+ i0.ɵɵconditionalCreate(6, SdBusyContainerControl_Conditional_0_Conditional_6_Template, 2, 1, "div", 6);
39
+ i0.ɵɵconditionalCreate(7, SdBusyContainerControl_Conditional_0_Conditional_7_Template, 2, 2, "div", 7);
40
+ i0.ɵɵdomElementEnd()();
41
+ } if (rf & 2) {
42
+ let tmp_1_0;
43
+ const ctx_r0 = i0.ɵɵnextContext();
44
+ i0.ɵɵadvance(3);
45
+ i0.ɵɵconditional((tmp_1_0 = ctx_r0.currType()) === "spinner" ? 3 : tmp_1_0 === "bar" ? 4 : tmp_1_0 === "cube" ? 5 : -1);
46
+ i0.ɵɵadvance(3);
47
+ i0.ɵɵconditional(ctx_r0.message() !== undefined ? 6 : -1);
48
+ i0.ɵɵadvance();
49
+ i0.ɵɵconditional(ctx_r0.progressPercent() !== undefined ? 7 : -1);
50
+ } }
51
+ export class SdBusyContainerControl {
52
+ _sdBusy = inject(SdBusyProvider);
53
+ busy = input(false, { ...(ngDevMode ? { debugName: "busy" } : /* istanbul ignore next */ {}), transform: booleanAttribute });
54
+ message = input(undefined, ...(ngDevMode ? [{ debugName: "message" }] : /* istanbul ignore next */ []));
55
+ type = input(undefined, ...(ngDevMode ? [{ debugName: "type" }] : /* istanbul ignore next */ []));
56
+ progressPercent = input(undefined, ...(ngDevMode ? [{ debugName: "progressPercent" }] : /* istanbul ignore next */ []));
57
+ currType = computed(() => this.type() ?? this._sdBusy.type(), ...(ngDevMode ? [{ debugName: "currType" }] : /* istanbul ignore next */ []));
58
+ constructor() {
59
+ const el = inject(ElementRef).nativeElement;
60
+ el.addEventListener("keydown", (event) => {
61
+ if (this.busy()) {
62
+ event.preventDefault();
63
+ event.stopPropagation();
64
+ }
65
+ }, true);
66
+ }
67
+ static ɵfac = function SdBusyContainerControl_Factory(__ngFactoryType__) { return new (__ngFactoryType__ || SdBusyContainerControl)(); };
68
+ static ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: SdBusyContainerControl, selectors: [["sd-busy-container"]], hostVars: 2, hostBindings: function SdBusyContainerControl_HostBindings(rf, ctx) { if (rf & 2) {
69
+ i0.ɵɵattribute("data-sd-busy", ctx.busy() || undefined)("data-sd-type", ctx.currType());
70
+ } }, inputs: { busy: [1, "busy"], message: [1, "message"], type: [1, "type"], progressPercent: [1, "progressPercent"] }, ngContentSelectors: _c0, decls: 2, vars: 1, consts: [[1, "_screen"], [1, "_rect"], [1, "_indicator"], [1, "_spinner"], [1, "_bar"], [1, "_cube"], [1, "_message"], [1, "_progress"], [1, "_cube-face", "_cube-face-1"], [1, "_cube-face", "_cube-face-2"], [1, "_cube-face", "_cube-face-3"], [1, "_cube-face", "_cube-face-4"], [1, "_progress-bar"]], template: function SdBusyContainerControl_Template(rf, ctx) { if (rf & 1) {
71
+ i0.ɵɵprojectionDef();
72
+ i0.ɵɵconditionalCreate(0, SdBusyContainerControl_Conditional_0_Template, 8, 3, "div", 0);
73
+ i0.ɵɵprojection(1);
74
+ } if (rf & 2) {
75
+ i0.ɵɵconditional(ctx.busy() ? 0 : -1);
76
+ } }, styles: ["sd-busy-container {\n display: block;\n position: relative;\n}\nsd-busy-container > ._screen {\n position: absolute;\n top: 0;\n left: 0;\n right: 0;\n bottom: 0;\n z-index: 9998;\n display: flex;\n align-items: center;\n justify-content: center;\n background: var(--busy-overlay-bg);\n}\nsd-busy-container > ._screen > ._rect {\n display: flex;\n flex-direction: column;\n align-items: center;\n gap: var(--gap-default);\n}\nsd-busy-container > ._screen > ._rect > ._indicator > ._spinner {\n width: 2rem;\n height: 2rem;\n border: 0.1667rem solid var(--theme-primary-lighter);\n border-top-color: var(--theme-primary-default);\n border-radius: 50%;\n animation: sd-busy-spin 0.8s linear infinite;\n}\nsd-busy-container > ._screen > ._rect > ._indicator > ._bar {\n width: 6rem;\n height: 0.25rem;\n background: var(--theme-primary-lighter);\n border-radius: var(--border-radius-default);\n overflow: hidden;\n position: relative;\n}\nsd-busy-container > ._screen > ._rect > ._indicator > ._bar::after {\n content: \"\";\n position: absolute;\n top: 0;\n left: 0;\n height: 100%;\n width: 40%;\n background: var(--theme-primary-default);\n border-radius: var(--border-radius-default);\n animation: sd-busy-bar 1.5s ease-in-out infinite;\n}\nsd-busy-container > ._screen > ._rect > ._indicator > ._cube {\n width: 2rem;\n height: 2rem;\n position: relative;\n animation: sd-busy-cube-rotate 1.8s infinite ease-in-out;\n}\nsd-busy-container > ._screen > ._rect > ._indicator > ._cube > ._cube-face {\n position: absolute;\n width: 50%;\n height: 50%;\n background: var(--theme-primary-default);\n animation: sd-busy-cube-fold 1.8s infinite ease-in-out;\n}\nsd-busy-container > ._screen > ._rect > ._indicator > ._cube > ._cube-face._cube-face-1 {\n top: 0;\n left: 0;\n}\nsd-busy-container > ._screen > ._rect > ._indicator > ._cube > ._cube-face._cube-face-2 {\n top: 0;\n right: 0;\n animation-delay: 0.45s;\n}\nsd-busy-container > ._screen > ._rect > ._indicator > ._cube > ._cube-face._cube-face-3 {\n bottom: 0;\n right: 0;\n animation-delay: 0.9s;\n}\nsd-busy-container > ._screen > ._rect > ._indicator > ._cube > ._cube-face._cube-face-4 {\n bottom: 0;\n left: 0;\n animation-delay: 1.35s;\n}\nsd-busy-container > ._screen > ._rect > ._message {\n font-size: var(--font-size-sm);\n color: var(--text-trans-light);\n text-align: center;\n}\nsd-busy-container > ._screen > ._rect > ._progress {\n width: 10rem;\n height: 0.25rem;\n background: var(--theme-primary-lighter);\n border-radius: var(--border-radius-default);\n overflow: hidden;\n}\nsd-busy-container > ._screen > ._rect > ._progress > ._progress-bar {\n height: 100%;\n background: var(--theme-primary-default);\n transition: width 0.3s ease;\n}\n\n@keyframes sd-busy-spin {\n to {\n transform: rotate(360deg);\n }\n}\n@keyframes sd-busy-bar {\n 0% {\n left: -40%;\n }\n 100% {\n left: 100%;\n }\n}\n@keyframes sd-busy-cube-rotate {\n 0% {\n transform: perspective(6.25rem) rotateX(0deg) rotateY(0deg);\n }\n 50% {\n transform: perspective(6.25rem) rotateX(-180deg) rotateY(0deg);\n }\n 100% {\n transform: perspective(6.25rem) rotateX(-180deg) rotateY(-180deg);\n }\n}\n@keyframes sd-busy-cube-fold {\n 0%, 10% {\n transform: scale(1);\n }\n 25% {\n transform: scale(0.5);\n }\n 50%, 100% {\n transform: scale(1);\n }\n}"], encapsulation: 2, changeDetection: 0 });
77
+ }
78
+ (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(SdBusyContainerControl, [{
79
+ type: Component,
80
+ args: [{ selector: "sd-busy-container", changeDetection: ChangeDetectionStrategy.OnPush, encapsulation: ViewEncapsulation.None, standalone: true, host: {
81
+ "[attr.data-sd-busy]": "busy() || undefined",
82
+ "[attr.data-sd-type]": "currType()",
83
+ }, template: `
84
+ @if (busy()) {
85
+ <div class="_screen">
86
+ <div class="_rect">
87
+ <div class="_indicator">
88
+ @switch (currType()) {
89
+ @case ("spinner") {
90
+ <div class="_spinner"></div>
91
+ }
92
+ @case ("bar") {
93
+ <div class="_bar"></div>
94
+ }
95
+ @case ("cube") {
96
+ <div class="_cube">
97
+ <div class="_cube-face _cube-face-1"></div>
98
+ <div class="_cube-face _cube-face-2"></div>
99
+ <div class="_cube-face _cube-face-3"></div>
100
+ <div class="_cube-face _cube-face-4"></div>
101
+ </div>
102
+ }
103
+ }
104
+ </div>
105
+ @if (message() !== undefined) {
106
+ <div class="_message">{{ message() }}</div>
107
+ }
108
+ @if (progressPercent() !== undefined) {
109
+ <div class="_progress">
110
+ <div class="_progress-bar" [style.width.%]="progressPercent()"></div>
111
+ </div>
112
+ }
113
+ </div>
114
+ </div>
115
+ }
116
+ <ng-content></ng-content>
117
+ `, styles: ["sd-busy-container {\n display: block;\n position: relative;\n}\nsd-busy-container > ._screen {\n position: absolute;\n top: 0;\n left: 0;\n right: 0;\n bottom: 0;\n z-index: 9998;\n display: flex;\n align-items: center;\n justify-content: center;\n background: var(--busy-overlay-bg);\n}\nsd-busy-container > ._screen > ._rect {\n display: flex;\n flex-direction: column;\n align-items: center;\n gap: var(--gap-default);\n}\nsd-busy-container > ._screen > ._rect > ._indicator > ._spinner {\n width: 2rem;\n height: 2rem;\n border: 0.1667rem solid var(--theme-primary-lighter);\n border-top-color: var(--theme-primary-default);\n border-radius: 50%;\n animation: sd-busy-spin 0.8s linear infinite;\n}\nsd-busy-container > ._screen > ._rect > ._indicator > ._bar {\n width: 6rem;\n height: 0.25rem;\n background: var(--theme-primary-lighter);\n border-radius: var(--border-radius-default);\n overflow: hidden;\n position: relative;\n}\nsd-busy-container > ._screen > ._rect > ._indicator > ._bar::after {\n content: \"\";\n position: absolute;\n top: 0;\n left: 0;\n height: 100%;\n width: 40%;\n background: var(--theme-primary-default);\n border-radius: var(--border-radius-default);\n animation: sd-busy-bar 1.5s ease-in-out infinite;\n}\nsd-busy-container > ._screen > ._rect > ._indicator > ._cube {\n width: 2rem;\n height: 2rem;\n position: relative;\n animation: sd-busy-cube-rotate 1.8s infinite ease-in-out;\n}\nsd-busy-container > ._screen > ._rect > ._indicator > ._cube > ._cube-face {\n position: absolute;\n width: 50%;\n height: 50%;\n background: var(--theme-primary-default);\n animation: sd-busy-cube-fold 1.8s infinite ease-in-out;\n}\nsd-busy-container > ._screen > ._rect > ._indicator > ._cube > ._cube-face._cube-face-1 {\n top: 0;\n left: 0;\n}\nsd-busy-container > ._screen > ._rect > ._indicator > ._cube > ._cube-face._cube-face-2 {\n top: 0;\n right: 0;\n animation-delay: 0.45s;\n}\nsd-busy-container > ._screen > ._rect > ._indicator > ._cube > ._cube-face._cube-face-3 {\n bottom: 0;\n right: 0;\n animation-delay: 0.9s;\n}\nsd-busy-container > ._screen > ._rect > ._indicator > ._cube > ._cube-face._cube-face-4 {\n bottom: 0;\n left: 0;\n animation-delay: 1.35s;\n}\nsd-busy-container > ._screen > ._rect > ._message {\n font-size: var(--font-size-sm);\n color: var(--text-trans-light);\n text-align: center;\n}\nsd-busy-container > ._screen > ._rect > ._progress {\n width: 10rem;\n height: 0.25rem;\n background: var(--theme-primary-lighter);\n border-radius: var(--border-radius-default);\n overflow: hidden;\n}\nsd-busy-container > ._screen > ._rect > ._progress > ._progress-bar {\n height: 100%;\n background: var(--theme-primary-default);\n transition: width 0.3s ease;\n}\n\n@keyframes sd-busy-spin {\n to {\n transform: rotate(360deg);\n }\n}\n@keyframes sd-busy-bar {\n 0% {\n left: -40%;\n }\n 100% {\n left: 100%;\n }\n}\n@keyframes sd-busy-cube-rotate {\n 0% {\n transform: perspective(6.25rem) rotateX(0deg) rotateY(0deg);\n }\n 50% {\n transform: perspective(6.25rem) rotateX(-180deg) rotateY(0deg);\n }\n 100% {\n transform: perspective(6.25rem) rotateX(-180deg) rotateY(-180deg);\n }\n}\n@keyframes sd-busy-cube-fold {\n 0%, 10% {\n transform: scale(1);\n }\n 25% {\n transform: scale(0.5);\n }\n 50%, 100% {\n transform: scale(1);\n }\n}"] }]
118
+ }], () => [], { busy: [{ type: i0.Input, args: [{ isSignal: true, alias: "busy", required: false }] }], message: [{ type: i0.Input, args: [{ isSignal: true, alias: "message", required: false }] }], type: [{ type: i0.Input, args: [{ isSignal: true, alias: "type", required: false }] }], progressPercent: [{ type: i0.Input, args: [{ isSignal: true, alias: "progressPercent", required: false }] }] }); })();
119
+ (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassDebugInfo(SdBusyContainerControl, { className: "SdBusyContainerControl", filePath: "packages/angular/src/ui/overlay/busy/sd-busy-container.control.ts", lineNumber: 220 }); })();
@@ -0,0 +1,16 @@
1
+ import { type ComponentRef } from "@angular/core";
2
+ import { SdBusyContainerControl } from "./sd-busy-container.control";
3
+ import * as i0 from "@angular/core";
4
+ export type TSdBusyType = "spinner" | "bar" | "cube";
5
+ export declare class SdBusyProvider {
6
+ private readonly _appRef;
7
+ private readonly _envInjector;
8
+ type: import("@angular/core").WritableSignal<TSdBusyType>;
9
+ globalBusyCount: import("@angular/core").WritableSignal<number>;
10
+ private _containerRef;
11
+ get containerRef(): ComponentRef<SdBusyContainerControl>;
12
+ constructor();
13
+ static ɵfac: i0.ɵɵFactoryDeclaration<SdBusyProvider, never>;
14
+ static ɵprov: i0.ɵɵInjectableDeclaration<SdBusyProvider>;
15
+ }
16
+ //# sourceMappingURL=sd-busy.provider.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"sd-busy.provider.d.ts","sourceRoot":"","sources":["..\\..\\..\\..\\src\\ui\\overlay\\busy\\sd-busy.provider.ts"],"names":[],"mappings":"AAAA,OAAO,EAQL,KAAK,YAAY,EAClB,MAAM,eAAe,CAAC;AACvB,OAAO,EAAE,sBAAsB,EAAE,MAAM,6BAA6B,CAAC;;AAErE,MAAM,MAAM,WAAW,GAAG,SAAS,GAAG,KAAK,GAAG,MAAM,CAAC;AAErD,qBACa,cAAc;IACzB,OAAO,CAAC,QAAQ,CAAC,OAAO,CAA0B;IAClD,OAAO,CAAC,QAAQ,CAAC,YAAY,CAA+B;IAE5D,IAAI,sDAA8B;IAClC,eAAe,iDAAa;IAE5B,OAAO,CAAC,aAAa,CAAmD;IAExE,IAAI,YAAY,IAAI,YAAY,CAAC,sBAAsB,CAAC,CAiBvD;;yCA1BU,cAAc;6CAAd,cAAc;CAuC1B"}
@@ -0,0 +1,43 @@
1
+ import { ApplicationRef, createComponent, effect, EnvironmentInjector, inject, Injectable, signal, } from "@angular/core";
2
+ import { SdBusyContainerControl } from "./sd-busy-container.control";
3
+ import * as i0 from "@angular/core";
4
+ export class SdBusyProvider {
5
+ _appRef = inject(ApplicationRef);
6
+ _envInjector = inject(EnvironmentInjector);
7
+ type = signal("bar", ...(ngDevMode ? [{ debugName: "type" }] : /* istanbul ignore next */ []));
8
+ globalBusyCount = signal(0, ...(ngDevMode ? [{ debugName: "globalBusyCount" }] : /* istanbul ignore next */ []));
9
+ _containerRef;
10
+ get containerRef() {
11
+ if (this._containerRef === undefined) {
12
+ this._containerRef = createComponent(SdBusyContainerControl, {
13
+ environmentInjector: this._envInjector,
14
+ });
15
+ this._appRef.attachView(this._containerRef.hostView);
16
+ const el = this._containerRef.location.nativeElement;
17
+ el.style.position = "fixed";
18
+ el.style.top = "0";
19
+ el.style.left = "0";
20
+ el.style.right = "0";
21
+ el.style.bottom = "0";
22
+ el.style.pointerEvents = "none";
23
+ document.body.appendChild(el);
24
+ }
25
+ return this._containerRef;
26
+ }
27
+ constructor() {
28
+ effect(() => {
29
+ const busy = this.globalBusyCount() > 0;
30
+ const ref = this.containerRef;
31
+ const el = ref.location.nativeElement;
32
+ ref.setInput("busy", busy);
33
+ ref.setInput("type", this.type());
34
+ el.style.pointerEvents = busy ? "auto" : "none";
35
+ });
36
+ }
37
+ static ɵfac = function SdBusyProvider_Factory(__ngFactoryType__) { return new (__ngFactoryType__ || SdBusyProvider)(); };
38
+ static ɵprov = /*@__PURE__*/ i0.ɵɵdefineInjectable({ token: SdBusyProvider, factory: SdBusyProvider.ɵfac, providedIn: "root" });
39
+ }
40
+ (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(SdBusyProvider, [{
41
+ type: Injectable,
42
+ args: [{ providedIn: "root" }]
43
+ }], () => [], null); })();
@@ -0,0 +1,11 @@
1
+ import type { ISdResizeEvent } from "../../../core/plugins/events/sd-resize-event.plugin";
2
+ import * as i0 from "@angular/core";
3
+ export declare class SdDropdownPopupControl {
4
+ private readonly _parentControl;
5
+ private readonly _elRef;
6
+ onKeydown(event: KeyboardEvent): void;
7
+ onResize(_event: ISdResizeEvent): void;
8
+ static ɵfac: i0.ɵɵFactoryDeclaration<SdDropdownPopupControl, never>;
9
+ static ɵcmp: i0.ɵɵComponentDeclaration<SdDropdownPopupControl, "sd-dropdown-popup", never, {}, {}, never, ["*"], true, never>;
10
+ }
11
+ //# sourceMappingURL=sd-dropdown-popup.control.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"sd-dropdown-popup.control.d.ts","sourceRoot":"","sources":["..\\..\\..\\..\\src\\ui\\overlay\\dropdown\\sd-dropdown-popup.control.ts"],"names":[],"mappings":"AAUA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,qDAAqD,CAAC;;AAE1F,qBA6Ea,sBAAsB;IACjC,OAAO,CAAC,QAAQ,CAAC,cAAc,CAE7B;IACF,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAmC;IAE1D,SAAS,CAAC,KAAK,EAAE,aAAa,GAAG,IAAI;IAIrC,QAAQ,CAAC,MAAM,EAAE,cAAc,GAAG,IAAI;yCAV3B,sBAAsB;2CAAtB,sBAAsB;CAoBlC"}
@@ -0,0 +1,43 @@
1
+ import { ChangeDetectionStrategy, Component, ElementRef, forwardRef, inject, ViewEncapsulation, } from "@angular/core";
2
+ import { SdEventsDirective } from "../../../core/directives/sd-events.directive";
3
+ import { SdDropdownControl } from "./sd-dropdown.control";
4
+ import * as i0 from "@angular/core";
5
+ const _c0 = ["*"];
6
+ export class SdDropdownPopupControl {
7
+ _parentControl = inject(forwardRef(() => SdDropdownControl));
8
+ _elRef = inject((ElementRef));
9
+ onKeydown(event) {
10
+ this._parentControl.onPopupKeydown(event);
11
+ }
12
+ onResize(_event) {
13
+ const el = this._elRef.nativeElement;
14
+ const divEl = el.firstElementChild;
15
+ if (divEl.clientHeight > 300) {
16
+ el.style.height = "18.75rem";
17
+ }
18
+ else {
19
+ el.style.height = "";
20
+ }
21
+ }
22
+ static ɵfac = function SdDropdownPopupControl_Factory(__ngFactoryType__) { return new (__ngFactoryType__ || SdDropdownPopupControl)(); };
23
+ static ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: SdDropdownPopupControl, selectors: [["sd-dropdown-popup"]], hostBindings: function SdDropdownPopupControl_HostBindings(rf, ctx) { if (rf & 1) {
24
+ i0.ɵɵlistener("keydown", function SdDropdownPopupControl_keydown_HostBindingHandler($event) { return ctx.onKeydown($event); });
25
+ } }, ngContentSelectors: _c0, decls: 2, vars: 0, consts: [[3, "sdResize"]], template: function SdDropdownPopupControl_Template(rf, ctx) { if (rf & 1) {
26
+ i0.ɵɵprojectionDef();
27
+ i0.ɵɵelementStart(0, "div", 0);
28
+ i0.ɵɵlistener("sdResize", function SdDropdownPopupControl_Template_div_sdResize_0_listener($event) { return ctx.onResize($event); });
29
+ i0.ɵɵprojection(1);
30
+ i0.ɵɵelementEnd();
31
+ } }, dependencies: [SdEventsDirective], styles: ["sd-dropdown-popup {\n position: fixed;\n z-index: var(--z-index-dropdown);\n opacity: 0;\n transform: translateY(-0.625rem);\n transition: 0.1s linear;\n transition-property: transform, opacity;\n pointer-events: none;\n background: var(--control-color);\n min-width: 7.5rem;\n box-shadow: 0 calc(4 * var(--elevation-size)) calc(4 * 4 * var(--elevation-size)) var(--trans-lighter), 0 var(--elevation-size) var(--elevation-size) var(--trans-lighter);\n overflow: hidden;\n border-radius: var(--border-radius-default);\n border: 1px solid var(--border-color-light);\n}\nsd-dropdown-popup > div {\n width: 100%;\n height: 100%;\n overflow: auto;\n white-space: nowrap;\n}\nsd-dropdown-popup:focus {\n outline: 1px solid var(--theme-primary-default);\n}\n@media all and (max-width: 520px) {\n sd-dropdown-popup {\n box-shadow: none;\n border: 1px solid var(--border-color-default);\n }\n}\nsd-dropdown-popup[data-sd-mobile] {\n position: fixed;\n left: 0;\n right: 0;\n bottom: 0;\n top: auto;\n max-height: 80vh;\n border-radius: var(--border-radius-default) var(--border-radius-default) 0 0;\n opacity: 1;\n pointer-events: auto;\n transform: none;\n animation: sd-dropdown-slide-up 0.2s ease-out;\n box-shadow: 0 calc(8 * var(--elevation-size)) calc(8 * 4 * var(--elevation-size)) var(--trans-lighter), 0 var(--elevation-size) var(--elevation-size) var(--trans-lighter);\n}\n\n@keyframes sd-dropdown-slide-up {\n from {\n transform: translateY(100%);\n }\n to {\n transform: translateY(0);\n }\n}"], encapsulation: 2, changeDetection: 0 });
32
+ }
33
+ (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(SdDropdownPopupControl, [{
34
+ type: Component,
35
+ args: [{ selector: "sd-dropdown-popup", changeDetection: ChangeDetectionStrategy.OnPush, encapsulation: ViewEncapsulation.None, standalone: true, imports: [SdEventsDirective], host: {
36
+ "(keydown)": "onKeydown($event)",
37
+ }, template: `
38
+ <div (sdResize)="onResize($event)">
39
+ <ng-content></ng-content>
40
+ </div>
41
+ `, styles: ["sd-dropdown-popup {\n position: fixed;\n z-index: var(--z-index-dropdown);\n opacity: 0;\n transform: translateY(-0.625rem);\n transition: 0.1s linear;\n transition-property: transform, opacity;\n pointer-events: none;\n background: var(--control-color);\n min-width: 7.5rem;\n box-shadow: 0 calc(4 * var(--elevation-size)) calc(4 * 4 * var(--elevation-size)) var(--trans-lighter), 0 var(--elevation-size) var(--elevation-size) var(--trans-lighter);\n overflow: hidden;\n border-radius: var(--border-radius-default);\n border: 1px solid var(--border-color-light);\n}\nsd-dropdown-popup > div {\n width: 100%;\n height: 100%;\n overflow: auto;\n white-space: nowrap;\n}\nsd-dropdown-popup:focus {\n outline: 1px solid var(--theme-primary-default);\n}\n@media all and (max-width: 520px) {\n sd-dropdown-popup {\n box-shadow: none;\n border: 1px solid var(--border-color-default);\n }\n}\nsd-dropdown-popup[data-sd-mobile] {\n position: fixed;\n left: 0;\n right: 0;\n bottom: 0;\n top: auto;\n max-height: 80vh;\n border-radius: var(--border-radius-default) var(--border-radius-default) 0 0;\n opacity: 1;\n pointer-events: auto;\n transform: none;\n animation: sd-dropdown-slide-up 0.2s ease-out;\n box-shadow: 0 calc(8 * var(--elevation-size)) calc(8 * 4 * var(--elevation-size)) var(--trans-lighter), 0 var(--elevation-size) var(--elevation-size) var(--trans-lighter);\n}\n\n@keyframes sd-dropdown-slide-up {\n from {\n transform: translateY(100%);\n }\n to {\n transform: translateY(0);\n }\n}"] }]
42
+ }], null, null); })();
43
+ (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassDebugInfo(SdDropdownPopupControl, { className: "SdDropdownPopupControl", filePath: "packages/angular/src/ui/overlay/dropdown/sd-dropdown-popup.control.ts", lineNumber: 90 }); })();
@@ -0,0 +1,27 @@
1
+ import { ElementRef } from "@angular/core";
2
+ import "@simplysm/core-browser";
3
+ import * as i0 from "@angular/core";
4
+ export declare class SdDropdownControl {
5
+ private readonly _elRef;
6
+ open: import("@angular/core").ModelSignal<boolean>;
7
+ disabled: import("@angular/core").InputSignalWithTransform<boolean, unknown>;
8
+ popupElRef: import("@angular/core").Signal<ElementRef<HTMLElement>>;
9
+ private _popupEl?;
10
+ private _mouseoverEl?;
11
+ private _backdropEl?;
12
+ private _isMobile;
13
+ private readonly _mql;
14
+ constructor();
15
+ onHostClick(): void;
16
+ onHostKeydown(event: KeyboardEvent): void;
17
+ onPopupKeydown(event: KeyboardEvent): void;
18
+ private _openPopup;
19
+ private _closePopup;
20
+ private _updatePopupPosition;
21
+ private _onDocumentScrollCapture;
22
+ private _onDocumentBlurCapture;
23
+ private _removePopup;
24
+ static ɵfac: i0.ɵɵFactoryDeclaration<SdDropdownControl, never>;
25
+ static ɵcmp: i0.ɵɵComponentDeclaration<SdDropdownControl, "sd-dropdown", never, { "open": { "alias": "open"; "required": false; "isSignal": true; }; "disabled": { "alias": "disabled"; "required": false; "isSignal": true; }; }, { "open": "openChange"; }, ["popupElRef"], ["*", "sd-dropdown-popup"], true, never>;
26
+ }
27
+ //# sourceMappingURL=sd-dropdown.control.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"sd-dropdown.control.d.ts","sourceRoot":"","sources":["..\\..\\..\\..\\src\\ui\\overlay\\dropdown\\sd-dropdown.control.ts"],"names":[],"mappings":"AAAA,OAAO,EAOL,UAAU,EAKX,MAAM,eAAe,CAAC;AAEvB,OAAO,wBAAwB,CAAC;;AAEhC,qBAgBa,iBAAiB;IAC5B,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAmC;IAE1D,IAAI,+CAAgB;IACpB,QAAQ,qEAAiD;IAEzD,UAAU,0DAGR;IAEF,OAAO,CAAC,QAAQ,CAAC,CAAc;IAC/B,OAAO,CAAC,YAAY,CAAC,CAAc;IACnC,OAAO,CAAC,WAAW,CAAC,CAAc;IAClC,OAAO,CAAC,SAAS,CAAU;IAC3B,OAAO,CAAC,QAAQ,CAAC,IAAI,CAAiB;;IAiEtC,WAAW,IAAI,IAAI;IAQnB,aAAa,CAAC,KAAK,EAAE,aAAa,GAAG,IAAI;IA8CzC,cAAc,CAAC,KAAK,EAAE,aAAa,GAAG,IAAI;IAY1C,OAAO,CAAC,UAAU;IAOlB,OAAO,CAAC,WAAW;IAMnB,OAAO,CAAC,oBAAoB;IA2C5B,OAAO,CAAC,wBAAwB;IAShC,OAAO,CAAC,sBAAsB;IAqC9B,OAAO,CAAC,YAAY;yCAxPT,iBAAiB;2CAAjB,iBAAiB;CAqR7B"}