@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.
- package/README.md +318 -0
- package/dist/core/commons.d.ts +2 -0
- package/dist/core/commons.d.ts.map +1 -0
- package/dist/core/commons.js +4 -0
- package/dist/core/directives/sd-events.directive.js +7 -7
- package/dist/core/directives/sd-item-of-template.directive.d.ts +14 -0
- package/dist/core/directives/sd-item-of-template.directive.d.ts.map +1 -0
- package/dist/core/directives/sd-item-of-template.directive.js +17 -0
- package/dist/core/directives/sd-router-link.directive.d.ts +19 -0
- package/dist/core/directives/sd-router-link.directive.d.ts.map +1 -0
- package/dist/core/directives/sd-router-link.directive.js +64 -0
- package/dist/core/directives/sd-typed-template.directive.d.ts +8 -0
- package/dist/core/directives/sd-typed-template.directive.d.ts.map +1 -0
- package/dist/core/directives/sd-typed-template.directive.js +17 -0
- package/dist/core/pipes/format.pipe.d.ts +9 -0
- package/dist/core/pipes/format.pipe.d.ts.map +1 -0
- package/dist/core/pipes/format.pipe.js +43 -0
- package/dist/core/plugins/commands/findTopOpenModalEl.d.ts +8 -0
- package/dist/core/plugins/commands/findTopOpenModalEl.d.ts.map +1 -0
- package/dist/core/plugins/commands/findTopOpenModalEl.js +21 -0
- package/dist/core/plugins/commands/sd-insert-command-event.plugin.d.ts.map +1 -1
- package/dist/core/plugins/commands/sd-insert-command-event.plugin.js +4 -0
- package/dist/core/plugins/commands/sd-refresh-command-event.plugin.d.ts.map +1 -1
- package/dist/core/plugins/commands/sd-refresh-command-event.plugin.js +4 -0
- package/dist/core/plugins/commands/sd-save-command-event.plugin.d.ts.map +1 -1
- package/dist/core/plugins/commands/sd-save-command-event.plugin.js +4 -0
- package/dist/core/plugins/events/sd-resize-event.plugin.d.ts.map +1 -1
- package/dist/core/plugins/events/sd-resize-event.plugin.js +0 -18
- package/dist/core/plugins/sd-global-error-handler.plugin.d.ts +1 -0
- package/dist/core/plugins/sd-global-error-handler.plugin.d.ts.map +1 -1
- package/dist/core/plugins/sd-global-error-handler.plugin.js +23 -13
- package/dist/core/provideSdAngular.d.ts +5 -0
- package/dist/core/provideSdAngular.d.ts.map +1 -0
- package/dist/core/provideSdAngular.js +127 -0
- package/dist/core/providers/sd-angular-config.provider.d.ts +7 -0
- package/dist/core/providers/sd-angular-config.provider.d.ts.map +1 -0
- package/dist/core/providers/sd-angular-config.provider.js +11 -0
- package/dist/core/providers/sd-app-structure.provider.d.ts +79 -0
- package/dist/core/providers/sd-app-structure.provider.d.ts.map +1 -0
- package/dist/core/providers/sd-app-structure.provider.js +278 -0
- package/dist/core/providers/sd-file-dialog.provider.d.ts +8 -0
- package/dist/core/providers/sd-file-dialog.provider.d.ts.map +1 -0
- package/dist/core/providers/sd-file-dialog.provider.js +49 -0
- package/dist/core/providers/sd-local-storage.provider.d.ts +10 -0
- package/dist/core/providers/sd-local-storage.provider.d.ts.map +1 -0
- package/dist/core/providers/sd-local-storage.provider.js +24 -0
- package/dist/core/providers/sd-navigate-window.provider.d.ts +9 -0
- package/dist/core/providers/sd-navigate-window.provider.d.ts.map +1 -0
- package/dist/core/providers/sd-navigate-window.provider.js +33 -0
- package/dist/core/providers/sd-print.provider.d.ts +26 -0
- package/dist/core/providers/sd-print.provider.d.ts.map +1 -0
- package/dist/core/providers/sd-print.provider.js +142 -0
- package/dist/core/providers/sd-service-client-factory.provider.d.ts +19 -0
- package/dist/core/providers/sd-service-client-factory.provider.d.ts.map +1 -0
- package/dist/core/providers/sd-service-client-factory.provider.js +86 -0
- package/dist/core/providers/sd-shared-data.provider.d.ts +36 -0
- package/dist/core/providers/sd-shared-data.provider.d.ts.map +1 -0
- package/dist/core/providers/sd-shared-data.provider.js +119 -0
- package/dist/core/providers/sd-system-config.provider.d.ts +13 -0
- package/dist/core/providers/sd-system-config.provider.d.ts.map +1 -0
- package/dist/core/providers/sd-system-config.provider.js +29 -0
- package/dist/core/providers/sd-system-log.provider.d.ts +8 -0
- package/dist/core/providers/sd-system-log.provider.d.ts.map +1 -0
- package/dist/core/providers/sd-system-log.provider.js +23 -0
- package/dist/core/providers/sd-theme-provider.js +1 -1
- package/dist/core/utils/TDirectiveInputSignals.d.ts +29 -0
- package/dist/core/utils/TDirectiveInputSignals.d.ts.map +1 -0
- package/dist/core/utils/TDirectiveInputSignals.js +1 -0
- package/dist/core/utils/setups/setupCanDeactivate.d.ts +2 -0
- package/dist/core/utils/setups/setupCanDeactivate.d.ts.map +1 -0
- package/dist/core/utils/setups/setupCanDeactivate.js +28 -0
- package/dist/core/utils/setups/setupModelHook.d.ts +3 -0
- package/dist/core/utils/setups/setupModelHook.d.ts.map +1 -0
- package/dist/core/utils/setups/setupModelHook.js +18 -0
- package/dist/core/utils/useCurrentPageCodeSignal.d.ts +3 -0
- package/dist/core/utils/useCurrentPageCodeSignal.d.ts.map +1 -0
- package/dist/core/utils/useCurrentPageCodeSignal.js +13 -0
- package/dist/core/utils/useExpandingManager.d.ts +23 -0
- package/dist/core/utils/useExpandingManager.d.ts.map +1 -0
- package/dist/core/utils/useExpandingManager.js +86 -0
- package/dist/core/utils/useFullPageCodeSignal.d.ts +3 -0
- package/dist/core/utils/useFullPageCodeSignal.d.ts.map +1 -0
- package/dist/core/utils/useFullPageCodeSignal.js +13 -0
- package/dist/core/utils/useSdSystemConfigResource.d.ts +13 -0
- package/dist/core/utils/useSdSystemConfigResource.d.ts.map +1 -0
- package/dist/core/utils/useSdSystemConfigResource.js +31 -0
- package/dist/core/utils/useSelectionManager.d.ts +18 -0
- package/dist/core/utils/useSelectionManager.d.ts.map +1 -0
- package/dist/core/utils/useSelectionManager.js +89 -0
- package/dist/core/utils/useSortingManager.d.ts +17 -0
- package/dist/core/utils/useSortingManager.d.ts.map +1 -0
- package/dist/core/utils/useSortingManager.js +81 -0
- package/dist/core/utils/useViewTitleSignal.d.ts +3 -0
- package/dist/core/utils/useViewTitleSignal.d.ts.map +1 -0
- package/dist/core/utils/useViewTitleSignal.js +17 -0
- package/dist/core/utils/useViewTypeSignal.d.ts +4 -0
- package/dist/core/utils/useViewTypeSignal.d.ts.map +1 -0
- package/dist/core/utils/useViewTypeSignal.js +23 -0
- package/dist/index.d.ts +95 -0
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +115 -0
- package/dist/styles.css +1462 -722
- package/dist/ui/data/list/sd-list-item.control.d.ts +18 -0
- package/dist/ui/data/list/sd-list-item.control.d.ts.map +1 -0
- package/dist/ui/data/list/sd-list-item.control.js +130 -0
- package/dist/ui/data/list/sd-list.control.d.ts +7 -0
- package/dist/ui/data/list/sd-list.control.d.ts.map +1 -0
- package/dist/ui/data/list/sd-list.control.js +22 -0
- package/dist/ui/data/sheet/sd-sheet-column.directive.d.ts +18 -0
- package/dist/ui/data/sheet/sd-sheet-column.directive.d.ts.map +1 -0
- package/dist/ui/data/sheet/sd-sheet-column.directive.js +30 -0
- package/dist/ui/data/sheet/sd-sheet-config.modal.d.ts +39 -0
- package/dist/ui/data/sheet/sd-sheet-config.modal.d.ts.map +1 -0
- package/dist/ui/data/sheet/sd-sheet-config.modal.js +258 -0
- package/dist/ui/data/sheet/sd-sheet.control.d.ts +154 -0
- package/dist/ui/data/sheet/sd-sheet.control.d.ts.map +1 -0
- package/dist/ui/data/sheet/sd-sheet.control.js +846 -0
- package/dist/ui/data/sheet/types.d.ts +32 -0
- package/dist/ui/data/sheet/types.d.ts.map +1 -0
- package/dist/ui/data/sheet/types.js +1 -0
- package/dist/ui/data/sheet/useSheetCellAgent.d.ts +21 -0
- package/dist/ui/data/sheet/useSheetCellAgent.d.ts.map +1 -0
- package/dist/ui/data/sheet/useSheetCellAgent.js +245 -0
- package/dist/ui/data/sheet/useSheetColumnFixing.d.ts +9 -0
- package/dist/ui/data/sheet/useSheetColumnFixing.d.ts.map +1 -0
- package/dist/ui/data/sheet/useSheetColumnFixing.js +29 -0
- package/dist/ui/data/sheet/useSheetDomAccessor.d.ts +11 -0
- package/dist/ui/data/sheet/useSheetDomAccessor.d.ts.map +1 -0
- package/dist/ui/data/sheet/useSheetDomAccessor.js +55 -0
- package/dist/ui/data/sheet/useSheetLayoutEngine.d.ts +14 -0
- package/dist/ui/data/sheet/useSheetLayoutEngine.d.ts.map +1 -0
- package/dist/ui/data/sheet/useSheetLayoutEngine.js +126 -0
- package/dist/ui/form/button/sd-additional-button.control.d.ts +8 -0
- package/dist/ui/form/button/sd-additional-button.control.d.ts.map +1 -0
- package/dist/ui/form/button/sd-additional-button.control.js +38 -0
- package/dist/ui/form/button/sd-anchor.control.d.ts +8 -0
- package/dist/ui/form/button/sd-anchor.control.d.ts.map +1 -0
- package/dist/ui/form/button/sd-anchor.control.js +25 -0
- package/dist/ui/form/button/sd-button.control.d.ts +14 -0
- package/dist/ui/form/button/sd-button.control.d.ts.map +1 -0
- package/dist/ui/form/button/sd-button.control.js +49 -0
- package/dist/ui/form/button/sd-modal-select-button.control.d.ts +46 -0
- package/dist/ui/form/button/sd-modal-select-button.control.d.ts.map +1 -0
- package/dist/ui/form/button/sd-modal-select-button.control.js +149 -0
- package/dist/ui/form/checkbox/sd-checkbox-group-item.control.d.ts +12 -0
- package/dist/ui/form/checkbox/sd-checkbox-group-item.control.d.ts.map +1 -0
- package/dist/ui/form/checkbox/sd-checkbox-group-item.control.js +53 -0
- package/dist/ui/form/checkbox/sd-checkbox-group.control.d.ts +8 -0
- package/dist/ui/form/checkbox/sd-checkbox-group.control.d.ts.map +1 -0
- package/dist/ui/form/checkbox/sd-checkbox-group.control.js +26 -0
- package/dist/ui/form/checkbox/sd-checkbox.control.d.ts +19 -0
- package/dist/ui/form/checkbox/sd-checkbox.control.d.ts.map +1 -0
- package/dist/ui/form/checkbox/sd-checkbox.control.js +103 -0
- package/dist/ui/form/checkbox/sd-switch.control.d.ts +14 -0
- package/dist/ui/form/checkbox/sd-switch.control.d.ts.map +1 -0
- package/dist/ui/form/checkbox/sd-switch.control.js +54 -0
- package/dist/ui/form/choice/sd-state-preset.control.d.ts +24 -0
- package/dist/ui/form/choice/sd-state-preset.control.d.ts.map +1 -0
- package/dist/ui/form/choice/sd-state-preset.control.js +134 -0
- package/dist/ui/form/editor/sd-tiptap-editor.control.d.ts +35 -0
- package/dist/ui/form/editor/sd-tiptap-editor.control.d.ts.map +1 -0
- package/dist/ui/form/editor/sd-tiptap-editor.control.js +480 -0
- package/dist/ui/form/input/sd-date-range.picker.d.ts +13 -0
- package/dist/ui/form/input/sd-date-range.picker.d.ts.map +1 -0
- package/dist/ui/form/input/sd-date-range.picker.js +125 -0
- package/dist/ui/form/input/sd-numpad.control.d.ts +18 -0
- package/dist/ui/form/input/sd-numpad.control.d.ts.map +1 -0
- package/dist/ui/form/input/sd-numpad.control.js +241 -0
- package/dist/ui/form/input/sd-range.control.d.ts +13 -0
- package/dist/ui/form/input/sd-range.control.d.ts.map +1 -0
- package/dist/ui/form/input/sd-range.control.js +53 -0
- package/dist/ui/form/input/sd-textarea.control.d.ts +23 -0
- package/dist/ui/form/input/sd-textarea.control.d.ts.map +1 -0
- package/dist/ui/form/input/sd-textarea.control.js +132 -0
- package/dist/ui/form/input/sd-textfield-type-handlers.d.ts +46 -0
- package/dist/ui/form/input/sd-textfield-type-handlers.d.ts.map +1 -0
- package/dist/ui/form/input/sd-textfield-type-handlers.js +336 -0
- package/dist/ui/form/input/sd-textfield.control.d.ts +39 -0
- package/dist/ui/form/input/sd-textfield.control.d.ts.map +1 -0
- package/dist/ui/form/input/sd-textfield.control.js +211 -0
- package/dist/ui/form/sd-form.control.d.ts +13 -0
- package/dist/ui/form/sd-form.control.d.ts.map +1 -0
- package/dist/ui/form/sd-form.control.js +60 -0
- package/dist/ui/form/select/sd-select-button.control.d.ts +7 -0
- package/dist/ui/form/select/sd-select-button.control.d.ts.map +1 -0
- package/dist/ui/form/select/sd-select-button.control.js +25 -0
- package/dist/ui/form/select/sd-select-item.control.d.ts +18 -0
- package/dist/ui/form/select/sd-select-item.control.d.ts.map +1 -0
- package/dist/ui/form/select/sd-select-item.control.js +103 -0
- package/dist/ui/form/select/sd-select.control.d.ts +45 -0
- package/dist/ui/form/select/sd-select.control.d.ts.map +1 -0
- package/dist/ui/form/select/sd-select.control.js +430 -0
- package/dist/ui/layout/dock/sd-dock-container.control.d.ts +12 -0
- package/dist/ui/layout/dock/sd-dock-container.control.d.ts.map +1 -0
- package/dist/ui/layout/dock/sd-dock-container.control.js +96 -0
- package/dist/ui/layout/dock/sd-dock.control.d.ts +17 -0
- package/dist/ui/layout/dock/sd-dock.control.d.ts.map +1 -0
- package/dist/ui/layout/dock/sd-dock.control.js +111 -0
- package/dist/ui/layout/kanban/sd-kanban-board.control.d.ts +24 -0
- package/dist/ui/layout/kanban/sd-kanban-board.control.d.ts.map +1 -0
- package/dist/ui/layout/kanban/sd-kanban-board.control.js +37 -0
- package/dist/ui/layout/kanban/sd-kanban-lane.control.d.ts +29 -0
- package/dist/ui/layout/kanban/sd-kanban-lane.control.d.ts.map +1 -0
- package/dist/ui/layout/kanban/sd-kanban-lane.control.js +223 -0
- package/dist/ui/layout/kanban/sd-kanban.control.d.ts +32 -0
- package/dist/ui/layout/kanban/sd-kanban.control.d.ts.map +1 -0
- package/dist/ui/layout/kanban/sd-kanban.control.js +147 -0
- package/dist/ui/layout/sd-card.directive.d.ts +6 -0
- package/dist/ui/layout/sd-card.directive.d.ts.map +1 -0
- package/dist/ui/layout/sd-card.directive.js +16 -0
- package/dist/ui/layout/sd-gap.control.d.ts +13 -0
- package/dist/ui/layout/sd-gap.control.d.ts.map +1 -0
- package/dist/ui/layout/sd-gap.control.js +44 -0
- package/dist/ui/layout/sd-pane.directive.d.ts +6 -0
- package/dist/ui/layout/sd-pane.directive.d.ts.map +1 -0
- package/dist/ui/layout/sd-pane.directive.js +17 -0
- package/dist/ui/layout/view/sd-view-item.control.d.ts +9 -0
- package/dist/ui/layout/view/sd-view-item.control.d.ts.map +1 -0
- package/dist/ui/layout/view/sd-view-item.control.js +25 -0
- package/dist/ui/layout/view/sd-view.control.d.ts +8 -0
- package/dist/ui/layout/view/sd-view.control.d.ts.map +1 -0
- package/dist/ui/layout/view/sd-view.control.js +23 -0
- package/dist/ui/navigation/collapse/sd-collapse-icon.control.d.ts +13 -0
- package/dist/ui/navigation/collapse/sd-collapse-icon.control.d.ts.map +1 -0
- package/dist/ui/navigation/collapse/sd-collapse-icon.control.js +33 -0
- package/dist/ui/navigation/collapse/sd-collapse.control.d.ts +14 -0
- package/dist/ui/navigation/collapse/sd-collapse.control.d.ts.map +1 -0
- package/dist/ui/navigation/collapse/sd-collapse.control.js +59 -0
- package/dist/ui/navigation/menu-utils.d.ts +13 -0
- package/dist/ui/navigation/menu-utils.d.ts.map +1 -0
- package/dist/ui/navigation/menu-utils.js +18 -0
- package/dist/ui/navigation/pagination/sd-pagination.control.d.ts +24 -0
- package/dist/ui/navigation/pagination/sd-pagination.control.d.ts.map +1 -0
- package/dist/ui/navigation/pagination/sd-pagination.control.js +137 -0
- package/dist/ui/navigation/sidebar/sd-sidebar-container.control.d.ts +11 -0
- package/dist/ui/navigation/sidebar/sd-sidebar-container.control.d.ts.map +1 -0
- package/dist/ui/navigation/sidebar/sd-sidebar-container.control.js +46 -0
- package/dist/ui/navigation/sidebar/sd-sidebar-menu.control.d.ts +28 -0
- package/dist/ui/navigation/sidebar/sd-sidebar-menu.control.d.ts.map +1 -0
- package/dist/ui/navigation/sidebar/sd-sidebar-menu.control.js +159 -0
- package/dist/ui/navigation/sidebar/sd-sidebar-user.control.d.ts +16 -0
- package/dist/ui/navigation/sidebar/sd-sidebar-user.control.d.ts.map +1 -0
- package/dist/ui/navigation/sidebar/sd-sidebar-user.control.js +109 -0
- package/dist/ui/navigation/sidebar/sd-sidebar.control.d.ts +8 -0
- package/dist/ui/navigation/sidebar/sd-sidebar.control.d.ts.map +1 -0
- package/dist/ui/navigation/sidebar/sd-sidebar.control.js +24 -0
- package/dist/ui/navigation/tab/sd-tab-item.control.d.ts +10 -0
- package/dist/ui/navigation/tab/sd-tab-item.control.d.ts.map +1 -0
- package/dist/ui/navigation/tab/sd-tab-item.control.js +31 -0
- package/dist/ui/navigation/tab/sd-tab.control.d.ts +7 -0
- package/dist/ui/navigation/tab/sd-tab.control.d.ts.map +1 -0
- package/dist/ui/navigation/tab/sd-tab.control.js +18 -0
- package/dist/ui/navigation/tab/sd-tabview-item.control.d.ts +10 -0
- package/dist/ui/navigation/tab/sd-tabview-item.control.d.ts.map +1 -0
- package/dist/ui/navigation/tab/sd-tabview-item.control.js +26 -0
- package/dist/ui/navigation/tab/sd-tabview.control.d.ts +9 -0
- package/dist/ui/navigation/tab/sd-tabview.control.d.ts.map +1 -0
- package/dist/ui/navigation/tab/sd-tabview.control.js +67 -0
- package/dist/ui/navigation/topbar/sd-topbar-container.control.d.ts +6 -0
- package/dist/ui/navigation/topbar/sd-topbar-container.control.d.ts.map +1 -0
- package/dist/ui/navigation/topbar/sd-topbar-container.control.js +17 -0
- package/dist/ui/navigation/topbar/sd-topbar-menu.control.d.ts +29 -0
- package/dist/ui/navigation/topbar/sd-topbar-menu.control.d.ts.map +1 -0
- package/dist/ui/navigation/topbar/sd-topbar-menu.control.js +245 -0
- package/dist/ui/navigation/topbar/sd-topbar-user.control.d.ts +13 -0
- package/dist/ui/navigation/topbar/sd-topbar-user.control.d.ts.map +1 -0
- package/dist/ui/navigation/topbar/sd-topbar-user.control.js +77 -0
- package/dist/ui/navigation/topbar/sd-topbar.control.d.ts +12 -0
- package/dist/ui/navigation/topbar/sd-topbar.control.d.ts.map +1 -0
- package/dist/ui/navigation/topbar/sd-topbar.control.js +59 -0
- package/dist/ui/overlay/busy/sd-busy-container.control.d.ts +14 -0
- package/dist/ui/overlay/busy/sd-busy-container.control.d.ts.map +1 -0
- package/dist/ui/overlay/busy/sd-busy-container.control.js +119 -0
- package/dist/ui/overlay/busy/sd-busy.provider.d.ts +16 -0
- package/dist/ui/overlay/busy/sd-busy.provider.d.ts.map +1 -0
- package/dist/ui/overlay/busy/sd-busy.provider.js +43 -0
- package/dist/ui/overlay/dropdown/sd-dropdown-popup.control.d.ts +11 -0
- package/dist/ui/overlay/dropdown/sd-dropdown-popup.control.d.ts.map +1 -0
- package/dist/ui/overlay/dropdown/sd-dropdown-popup.control.js +43 -0
- package/dist/ui/overlay/dropdown/sd-dropdown.control.d.ts +27 -0
- package/dist/ui/overlay/dropdown/sd-dropdown.control.d.ts.map +1 -0
- package/dist/ui/overlay/dropdown/sd-dropdown.control.js +284 -0
- package/dist/ui/overlay/modal/sd-confirm-modal.control.d.ts +17 -0
- package/dist/ui/overlay/modal/sd-confirm-modal.control.d.ts.map +1 -0
- package/dist/ui/overlay/modal/sd-confirm-modal.control.js +51 -0
- package/dist/ui/overlay/modal/sd-modal.control.d.ts +51 -0
- package/dist/ui/overlay/modal/sd-modal.control.d.ts.map +1 -0
- package/dist/ui/overlay/modal/sd-modal.control.js +411 -0
- package/dist/ui/overlay/modal/sd-modal.provider.d.ts +65 -0
- package/dist/ui/overlay/modal/sd-modal.provider.d.ts.map +1 -0
- package/dist/ui/overlay/modal/sd-modal.provider.js +146 -0
- package/dist/ui/overlay/modal/sd-prompt-modal.control.d.ts +19 -0
- package/dist/ui/overlay/modal/sd-prompt-modal.control.d.ts.map +1 -0
- package/dist/ui/overlay/modal/sd-prompt-modal.control.js +71 -0
- package/dist/ui/overlay/toast/sd-toast-container.control.d.ts +7 -0
- package/dist/ui/overlay/toast/sd-toast-container.control.d.ts.map +1 -0
- package/dist/ui/overlay/toast/sd-toast-container.control.js +20 -0
- package/dist/ui/overlay/toast/sd-toast.control.d.ts +14 -0
- package/dist/ui/overlay/toast/sd-toast.control.d.ts.map +1 -0
- package/dist/ui/overlay/toast/sd-toast.control.js +79 -0
- package/dist/ui/overlay/toast/sd-toast.provider.d.ts +45 -0
- package/dist/ui/overlay/toast/sd-toast.provider.d.ts.map +1 -0
- package/dist/ui/overlay/toast/sd-toast.provider.js +219 -0
- package/dist/ui/visual/sd-barcode.control.d.ts +11 -0
- package/dist/ui/visual/sd-barcode.control.d.ts.map +1 -0
- package/dist/ui/visual/sd-barcode.control.js +35 -0
- package/dist/ui/visual/sd-calendar.control.d.ts +20 -0
- package/dist/ui/visual/sd-calendar.control.d.ts.map +1 -0
- package/dist/ui/visual/sd-calendar.control.js +189 -0
- package/dist/ui/visual/sd-echarts.control.d.ts +13 -0
- package/dist/ui/visual/sd-echarts.control.d.ts.map +1 -0
- package/dist/ui/visual/sd-echarts.control.js +55 -0
- package/dist/ui/visual/sd-label.control.d.ts +9 -0
- package/dist/ui/visual/sd-label.control.d.ts.map +1 -0
- package/dist/ui/visual/sd-label.control.js +27 -0
- package/dist/ui/visual/sd-note.control.d.ts +9 -0
- package/dist/ui/visual/sd-note.control.d.ts.map +1 -0
- package/dist/ui/visual/sd-note.control.js +26 -0
- package/dist/ui/visual/sd-progress.control.d.ts +10 -0
- package/dist/ui/visual/sd-progress.control.d.ts.map +1 -0
- package/dist/ui/visual/sd-progress.control.js +38 -0
- package/docs/commons-and-configuration.md +34 -0
- package/docs/data-display-components.md +146 -0
- package/docs/directives.md +158 -0
- package/docs/event-plugins.md +109 -0
- package/docs/form-components.md +362 -0
- package/docs/hooks-and-utilities.md +175 -0
- package/docs/layout-components.md +140 -0
- package/docs/navigation-components.md +200 -0
- package/docs/overlay-components.md +193 -0
- package/docs/pipes.md +25 -0
- package/docs/providers.md +448 -0
- package/docs/setup-functions.md +66 -0
- package/docs/visual-components.md +89 -0
- package/package.json +37 -18
- package/scss/commons/_mixins.scss +34 -0
- package/scss/commons/_styles.scss +27 -68
- package/scss/commons/_variables.scss +7 -0
- package/scss/controls/_card.scss +29 -0
- package/scss/controls/_flex.scss +38 -0
- package/scss/controls/_form-box.scss +49 -0
- package/scss/controls/_form-table.scss +45 -0
- package/scss/controls/_grid.scss +36 -0
- package/scss/controls/_table.scss +99 -0
- package/scss/styles.scss +7 -0
- package/scss/themes/_variables-dark.scss +2 -0
- package/src/core/commons.ts +4 -0
- package/src/core/directives/sd-events.directive.ts +7 -7
- package/src/core/directives/sd-item-of-template.directive.ts +23 -0
- package/src/core/directives/sd-router-link.directive.ts +81 -0
- package/src/core/directives/sd-typed-template.directive.ts +16 -0
- package/src/core/pipes/format.pipe.ts +37 -0
- package/src/core/plugins/commands/findTopOpenModalEl.ts +23 -0
- package/src/core/plugins/commands/sd-insert-command-event.plugin.ts +4 -0
- package/src/core/plugins/commands/sd-refresh-command-event.plugin.ts +4 -0
- package/src/core/plugins/commands/sd-save-command-event.plugin.ts +4 -0
- package/src/core/plugins/events/sd-resize-event.plugin.ts +0 -22
- package/src/core/plugins/sd-global-error-handler.plugin.ts +22 -13
- package/src/core/provideSdAngular.ts +154 -0
- package/src/core/providers/sd-angular-config.provider.ts +6 -0
- package/src/core/providers/sd-app-structure.provider.ts +446 -0
- package/src/core/providers/sd-file-dialog.provider.ts +49 -0
- package/src/core/providers/sd-local-storage.provider.ts +21 -0
- package/src/core/providers/sd-navigate-window.provider.ts +44 -0
- package/src/core/providers/sd-print.provider.ts +189 -0
- package/src/core/providers/sd-service-client-factory.provider.ts +98 -0
- package/src/core/providers/sd-shared-data.provider.ts +179 -0
- package/src/core/providers/sd-system-config.provider.ts +28 -0
- package/src/core/providers/sd-system-log.provider.ts +19 -0
- package/src/core/providers/sd-theme-provider.ts +1 -1
- package/src/core/utils/TDirectiveInputSignals.ts +34 -0
- package/src/core/utils/setups/setupCanDeactivate.ts +34 -0
- package/src/core/utils/setups/setupModelHook.ts +26 -0
- package/src/core/utils/useCurrentPageCodeSignal.ts +16 -0
- package/src/core/utils/useExpandingManager.ts +117 -0
- package/src/core/utils/useFullPageCodeSignal.ts +24 -0
- package/src/core/utils/useSdSystemConfigResource.ts +36 -0
- package/src/core/utils/useSelectionManager.ts +104 -0
- package/src/core/utils/useSortingManager.ts +89 -0
- package/src/core/utils/useViewTitleSignal.ts +21 -0
- package/src/core/utils/useViewTypeSignal.ts +33 -0
- package/src/index.ts +209 -0
- package/src/scss.d.ts +1 -0
- package/src/ui/data/list/sd-list-item.control.ts +143 -0
- package/src/ui/data/list/sd-list.control.ts +41 -0
- package/src/ui/data/sheet/sd-sheet-column.directive.ts +26 -0
- package/src/ui/data/sheet/sd-sheet-config.modal.ts +252 -0
- package/src/ui/data/sheet/sd-sheet.control.ts +766 -0
- package/src/ui/data/sheet/types.ts +37 -0
- package/src/ui/data/sheet/useSheetCellAgent.ts +267 -0
- package/src/ui/data/sheet/useSheetColumnFixing.ts +37 -0
- package/src/ui/data/sheet/useSheetDomAccessor.ts +62 -0
- package/src/ui/data/sheet/useSheetLayoutEngine.ts +143 -0
- package/src/ui/form/button/sd-additional-button.control.ts +100 -0
- package/src/ui/form/button/sd-anchor.control.ts +67 -0
- package/src/ui/form/button/sd-button.control.ts +209 -0
- package/src/ui/form/button/sd-modal-select-button.control.ts +237 -0
- package/src/ui/form/checkbox/sd-checkbox-group-item.control.ts +51 -0
- package/src/ui/form/checkbox/sd-checkbox-group.control.ts +24 -0
- package/src/ui/form/checkbox/sd-checkbox.control.ts +305 -0
- package/src/ui/form/checkbox/sd-switch.control.ts +145 -0
- package/src/ui/form/choice/sd-state-preset.control.ts +173 -0
- package/src/ui/form/editor/sd-tiptap-editor.control.ts +474 -0
- package/src/ui/form/input/sd-date-range.picker.ts +98 -0
- package/src/ui/form/input/sd-numpad.control.ts +178 -0
- package/src/ui/form/input/sd-range.control.ts +59 -0
- package/src/ui/form/input/sd-textarea.control.ts +221 -0
- package/src/ui/form/input/sd-textfield-type-handlers.ts +445 -0
- package/src/ui/form/input/sd-textfield.control.ts +395 -0
- package/src/ui/form/sd-form.control.ts +52 -0
- package/src/ui/form/select/sd-select-button.control.ts +43 -0
- package/src/ui/form/select/sd-select-item.control.ts +143 -0
- package/src/ui/form/select/sd-select.control.ts +412 -0
- package/src/ui/layout/dock/sd-dock-container.control.ts +100 -0
- package/src/ui/layout/dock/sd-dock.control.ts +171 -0
- package/src/ui/layout/kanban/sd-kanban-board.control.ts +74 -0
- package/src/ui/layout/kanban/sd-kanban-lane.control.ts +210 -0
- package/src/ui/layout/kanban/sd-kanban.control.ts +227 -0
- package/src/ui/layout/sd-card.directive.ts +10 -0
- package/src/ui/layout/sd-gap.control.ts +63 -0
- package/src/ui/layout/sd-pane.directive.ts +11 -0
- package/src/ui/layout/view/sd-view-item.control.ts +45 -0
- package/src/ui/layout/view/sd-view.control.ts +31 -0
- package/src/ui/navigation/collapse/sd-collapse-icon.control.ts +51 -0
- package/src/ui/navigation/collapse/sd-collapse.control.ts +75 -0
- package/src/ui/navigation/menu-utils.ts +36 -0
- package/src/ui/navigation/pagination/sd-pagination.control.ts +125 -0
- package/src/ui/navigation/sidebar/sd-sidebar-container.control.ts +92 -0
- package/src/ui/navigation/sidebar/sd-sidebar-menu.control.ts +129 -0
- package/src/ui/navigation/sidebar/sd-sidebar-user.control.ts +84 -0
- package/src/ui/navigation/sidebar/sd-sidebar.control.ts +67 -0
- package/src/ui/navigation/tab/sd-tab-item.control.ts +55 -0
- package/src/ui/navigation/tab/sd-tab.control.ts +25 -0
- package/src/ui/navigation/tab/sd-tabview-item.control.ts +48 -0
- package/src/ui/navigation/tab/sd-tabview.control.ts +39 -0
- package/src/ui/navigation/topbar/sd-topbar-container.control.ts +22 -0
- package/src/ui/navigation/topbar/sd-topbar-menu.control.ts +165 -0
- package/src/ui/navigation/topbar/sd-topbar-user.control.ts +58 -0
- package/src/ui/navigation/topbar/sd-topbar.control.ts +94 -0
- package/src/ui/overlay/busy/sd-busy-container.control.ts +243 -0
- package/src/ui/overlay/busy/sd-busy.provider.ts +55 -0
- package/src/ui/overlay/dropdown/sd-dropdown-popup.control.ts +110 -0
- package/src/ui/overlay/dropdown/sd-dropdown.control.ts +310 -0
- package/src/ui/overlay/modal/sd-confirm-modal.control.ts +66 -0
- package/src/ui/overlay/modal/sd-modal.control.ts +362 -0
- package/src/ui/overlay/modal/sd-modal.provider.ts +216 -0
- package/src/ui/overlay/modal/sd-prompt-modal.control.ts +92 -0
- package/src/ui/overlay/toast/sd-toast-container.control.ts +58 -0
- package/src/ui/overlay/toast/sd-toast.control.ts +123 -0
- package/src/ui/overlay/toast/sd-toast.provider.ts +302 -0
- package/src/ui/visual/sd-barcode.control.ts +62 -0
- package/src/ui/visual/sd-calendar.control.ts +188 -0
- package/src/ui/visual/sd-echarts.control.ts +73 -0
- package/src/ui/visual/sd-label.control.ts +66 -0
- package/src/ui/visual/sd-note.control.ts +66 -0
- package/src/ui/visual/sd-progress.control.ts +88 -0
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
import * as i0 from "@angular/core";
|
|
2
|
+
export declare class SdTabControl {
|
|
3
|
+
value: import("@angular/core").ModelSignal<any>;
|
|
4
|
+
static ɵfac: i0.ɵɵFactoryDeclaration<SdTabControl, never>;
|
|
5
|
+
static ɵcmp: i0.ɵɵComponentDeclaration<SdTabControl, "sd-tab", never, { "value": { "alias": "value"; "required": false; "isSignal": true; }; }, { "value": "valueChange"; }, never, ["*"], true, never>;
|
|
6
|
+
}
|
|
7
|
+
//# sourceMappingURL=sd-tab.control.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"sd-tab.control.d.ts","sourceRoot":"","sources":["..\\..\\..\\..\\src\\ui\\navigation\\tab\\sd-tab.control.ts"],"names":[],"mappings":";AAEA,qBAoBa,YAAY;IACvB,KAAK,2CAAgB;yCADV,YAAY;2CAAZ,YAAY;CAExB"}
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
import { ChangeDetectionStrategy, Component, model, ViewEncapsulation } from "@angular/core";
|
|
2
|
+
import * as i0 from "@angular/core";
|
|
3
|
+
const _c0 = ["*"];
|
|
4
|
+
export class SdTabControl {
|
|
5
|
+
value = model(...(ngDevMode ? [undefined, { debugName: "value" }] : /* istanbul ignore next */ []));
|
|
6
|
+
static ɵfac = function SdTabControl_Factory(__ngFactoryType__) { return new (__ngFactoryType__ || SdTabControl)(); };
|
|
7
|
+
static ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: SdTabControl, selectors: [["sd-tab"]], inputs: { value: [1, "value"] }, outputs: { value: "valueChange" }, ngContentSelectors: _c0, decls: 1, vars: 0, template: function SdTabControl_Template(rf, ctx) { if (rf & 1) {
|
|
8
|
+
i0.ɵɵprojectionDef();
|
|
9
|
+
i0.ɵɵprojection(0);
|
|
10
|
+
} }, styles: ["sd-tab {\n display: block;\n border-bottom: 2px solid var(--theme-gray-lighter);\n padding: 0 calc(var(--gap-default) + 1px) 0 calc(var(--gap-default) - 1px);\n}"], encapsulation: 2, changeDetection: 0 });
|
|
11
|
+
}
|
|
12
|
+
(() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(SdTabControl, [{
|
|
13
|
+
type: Component,
|
|
14
|
+
args: [{ selector: "sd-tab", changeDetection: ChangeDetectionStrategy.OnPush, encapsulation: ViewEncapsulation.None, standalone: true, imports: [], template: `
|
|
15
|
+
<ng-content></ng-content>
|
|
16
|
+
`, styles: ["sd-tab {\n display: block;\n border-bottom: 2px solid var(--theme-gray-lighter);\n padding: 0 calc(var(--gap-default) + 1px) 0 calc(var(--gap-default) - 1px);\n}"] }]
|
|
17
|
+
}], null, { value: [{ type: i0.Input, args: [{ isSignal: true, alias: "value", required: false }] }, { type: i0.Output, args: ["valueChange"] }] }); })();
|
|
18
|
+
(() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassDebugInfo(SdTabControl, { className: "SdTabControl", filePath: "packages/angular/src/ui/navigation/tab/sd-tab.control.ts", lineNumber: 23 }); })();
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
import * as i0 from "@angular/core";
|
|
2
|
+
export declare class SdTabviewItemControl<T> {
|
|
3
|
+
value: import("@angular/core").InputSignal<T>;
|
|
4
|
+
header: import("@angular/core").InputSignal<string | undefined>;
|
|
5
|
+
private readonly _parentControl;
|
|
6
|
+
isSelected: import("@angular/core").Signal<boolean>;
|
|
7
|
+
static ɵfac: i0.ɵɵFactoryDeclaration<SdTabviewItemControl<any>, never>;
|
|
8
|
+
static ɵcmp: i0.ɵɵComponentDeclaration<SdTabviewItemControl<any>, "sd-tabview-item", never, { "value": { "alias": "value"; "required": true; "isSignal": true; }; "header": { "alias": "header"; "required": false; "isSignal": true; }; }, {}, never, ["*"], true, never>;
|
|
9
|
+
}
|
|
10
|
+
//# sourceMappingURL=sd-tabview-item.control.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"sd-tabview-item.control.d.ts","sourceRoot":"","sources":["..\\..\\..\\..\\src\\ui\\navigation\\tab\\sd-tabview-item.control.ts"],"names":[],"mappings":";AAWA,qBA2Ba,oBAAoB,CAAC,CAAC;IACjC,KAAK,yCAAuB;IAC5B,MAAM,0DAAmB;IAEzB,OAAO,CAAC,QAAQ,CAAC,cAAc,CAE7B;IAEF,UAAU,0CAAgE;yCAR/D,oBAAoB;2CAApB,oBAAoB;CAShC"}
|
|
@@ -0,0 +1,26 @@
|
|
|
1
|
+
import { ChangeDetectionStrategy, Component, computed, forwardRef, inject, input, ViewEncapsulation, } from "@angular/core";
|
|
2
|
+
import { SdTabviewControl } from "./sd-tabview.control";
|
|
3
|
+
import * as i0 from "@angular/core";
|
|
4
|
+
const _c0 = ["*"];
|
|
5
|
+
export class SdTabviewItemControl {
|
|
6
|
+
value = input.required(...(ngDevMode ? [{ debugName: "value" }] : /* istanbul ignore next */ []));
|
|
7
|
+
header = input(...(ngDevMode ? [undefined, { debugName: "header" }] : /* istanbul ignore next */ []));
|
|
8
|
+
_parentControl = inject(forwardRef(() => SdTabviewControl));
|
|
9
|
+
isSelected = computed(() => this._parentControl.value() === this.value(), ...(ngDevMode ? [{ debugName: "isSelected" }] : /* istanbul ignore next */ []));
|
|
10
|
+
static ɵfac = function SdTabviewItemControl_Factory(__ngFactoryType__) { return new (__ngFactoryType__ || SdTabviewItemControl)(); };
|
|
11
|
+
static ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: SdTabviewItemControl, selectors: [["sd-tabview-item"]], hostVars: 1, hostBindings: function SdTabviewItemControl_HostBindings(rf, ctx) { if (rf & 2) {
|
|
12
|
+
i0.ɵɵattribute("data-sd-selected", ctx.isSelected());
|
|
13
|
+
} }, inputs: { value: [1, "value"], header: [1, "header"] }, ngContentSelectors: _c0, decls: 1, vars: 0, template: function SdTabviewItemControl_Template(rf, ctx) { if (rf & 1) {
|
|
14
|
+
i0.ɵɵprojectionDef();
|
|
15
|
+
i0.ɵɵprojection(0);
|
|
16
|
+
} }, styles: ["sd-tabview-item {\n display: none;\n width: 100%;\n height: 100%;\n overflow: auto;\n}\nsd-tabview-item[data-sd-selected=true] {\n display: block;\n}"], encapsulation: 2, changeDetection: 0 });
|
|
17
|
+
}
|
|
18
|
+
(() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(SdTabviewItemControl, [{
|
|
19
|
+
type: Component,
|
|
20
|
+
args: [{ selector: "sd-tabview-item", changeDetection: ChangeDetectionStrategy.OnPush, encapsulation: ViewEncapsulation.None, standalone: true, imports: [], template: `
|
|
21
|
+
<ng-content></ng-content>
|
|
22
|
+
`, host: {
|
|
23
|
+
"[attr.data-sd-selected]": "isSelected()",
|
|
24
|
+
}, styles: ["sd-tabview-item {\n display: none;\n width: 100%;\n height: 100%;\n overflow: auto;\n}\nsd-tabview-item[data-sd-selected=true] {\n display: block;\n}"] }]
|
|
25
|
+
}], null, { value: [{ type: i0.Input, args: [{ isSignal: true, alias: "value", required: true }] }], header: [{ type: i0.Input, args: [{ isSignal: true, alias: "header", required: false }] }] }); })();
|
|
26
|
+
(() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassDebugInfo(SdTabviewItemControl, { className: "SdTabviewItemControl", filePath: "packages/angular/src/ui/navigation/tab/sd-tabview-item.control.ts", lineNumber: 39 }); })();
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
import { SdTabviewItemControl } from "./sd-tabview-item.control";
|
|
2
|
+
import * as i0 from "@angular/core";
|
|
3
|
+
export declare class SdTabviewControl<T> {
|
|
4
|
+
value: import("@angular/core").ModelSignal<T | undefined>;
|
|
5
|
+
itemControls: import("@angular/core").Signal<readonly SdTabviewItemControl<T>[]>;
|
|
6
|
+
static ɵfac: i0.ɵɵFactoryDeclaration<SdTabviewControl<any>, never>;
|
|
7
|
+
static ɵcmp: i0.ɵɵComponentDeclaration<SdTabviewControl<any>, "sd-tabview", never, { "value": { "alias": "value"; "required": false; "isSignal": true; }; }, { "value": "valueChange"; }, ["itemControls"], ["*"], true, never>;
|
|
8
|
+
}
|
|
9
|
+
//# sourceMappingURL=sd-tabview.control.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"sd-tabview.control.d.ts","sourceRoot":"","sources":["..\\..\\..\\..\\src\\ui\\navigation\\tab\\sd-tabview.control.ts"],"names":[],"mappings":"AASA,OAAO,EAAE,oBAAoB,EAAE,MAAM,2BAA2B,CAAC;;AAEjE,qBAuBa,gBAAgB,CAAC,CAAC;IAC7B,KAAK,qDAAc;IAEnB,YAAY,qEAAkE;yCAHnE,gBAAgB;2CAAhB,gBAAgB;CAI5B"}
|
|
@@ -0,0 +1,67 @@
|
|
|
1
|
+
import { ChangeDetectionStrategy, Component, contentChildren, model, ViewEncapsulation, } from "@angular/core";
|
|
2
|
+
import { SdTabItemControl } from "./sd-tab-item.control";
|
|
3
|
+
import { SdTabControl } from "./sd-tab.control";
|
|
4
|
+
import { SdTabviewItemControl } from "./sd-tabview-item.control";
|
|
5
|
+
import * as i0 from "@angular/core";
|
|
6
|
+
const _c0 = ["*"];
|
|
7
|
+
const _forTrack0 = ($index, $item) => $item.value();
|
|
8
|
+
function SdTabviewControl_For_2_Template(rf, ctx) { if (rf & 1) {
|
|
9
|
+
i0.ɵɵelementStart(0, "sd-tab-item", 1);
|
|
10
|
+
i0.ɵɵtext(1);
|
|
11
|
+
i0.ɵɵelementEnd();
|
|
12
|
+
} if (rf & 2) {
|
|
13
|
+
const itemControl_r1 = ctx.$implicit;
|
|
14
|
+
i0.ɵɵproperty("value", itemControl_r1.value());
|
|
15
|
+
i0.ɵɵadvance();
|
|
16
|
+
i0.ɵɵtextInterpolate1(" ", itemControl_r1.header() || itemControl_r1.value(), " ");
|
|
17
|
+
} }
|
|
18
|
+
export class SdTabviewControl {
|
|
19
|
+
value = model(...(ngDevMode ? [undefined, { debugName: "value" }] : /* istanbul ignore next */ []));
|
|
20
|
+
itemControls = contentChildren(SdTabviewItemControl, ...(ngDevMode ? [{ debugName: "itemControls" }] : /* istanbul ignore next */ []));
|
|
21
|
+
static ɵfac = function SdTabviewControl_Factory(__ngFactoryType__) { return new (__ngFactoryType__ || SdTabviewControl)(); };
|
|
22
|
+
static ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: SdTabviewControl, selectors: [["sd-tabview"]], contentQueries: function SdTabviewControl_ContentQueries(rf, ctx, dirIndex) { if (rf & 1) {
|
|
23
|
+
i0.ɵɵcontentQuerySignal(dirIndex, ctx.itemControls, SdTabviewItemControl, 4);
|
|
24
|
+
} if (rf & 2) {
|
|
25
|
+
i0.ɵɵqueryAdvance();
|
|
26
|
+
} }, hostAttrs: [1, "flex-column", "fill"], inputs: { value: [1, "value"] }, outputs: { value: "valueChange" }, ngContentSelectors: _c0, decls: 5, vars: 1, consts: [[3, "valueChange", "value"], [3, "value"], [1, "flex-fill"]], template: function SdTabviewControl_Template(rf, ctx) { if (rf & 1) {
|
|
27
|
+
i0.ɵɵprojectionDef();
|
|
28
|
+
i0.ɵɵelementStart(0, "sd-tab", 0);
|
|
29
|
+
i0.ɵɵtwoWayListener("valueChange", function SdTabviewControl_Template_sd_tab_valueChange_0_listener($event) { i0.ɵɵtwoWayBindingSet(ctx.value, $event) || (ctx.value = $event); return $event; });
|
|
30
|
+
i0.ɵɵrepeaterCreate(1, SdTabviewControl_For_2_Template, 2, 2, "sd-tab-item", 1, _forTrack0);
|
|
31
|
+
i0.ɵɵelementEnd();
|
|
32
|
+
i0.ɵɵelementStart(3, "div", 2);
|
|
33
|
+
i0.ɵɵprojection(4);
|
|
34
|
+
i0.ɵɵelementEnd();
|
|
35
|
+
} if (rf & 2) {
|
|
36
|
+
i0.ɵɵtwoWayProperty("value", ctx.value);
|
|
37
|
+
i0.ɵɵadvance();
|
|
38
|
+
i0.ɵɵrepeater(ctx.itemControls());
|
|
39
|
+
} }, dependencies: [SdTabControl, SdTabItemControl], encapsulation: 2, changeDetection: 0 });
|
|
40
|
+
}
|
|
41
|
+
(() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(SdTabviewControl, [{
|
|
42
|
+
type: Component,
|
|
43
|
+
args: [{
|
|
44
|
+
selector: "sd-tabview",
|
|
45
|
+
changeDetection: ChangeDetectionStrategy.OnPush,
|
|
46
|
+
encapsulation: ViewEncapsulation.None,
|
|
47
|
+
standalone: true,
|
|
48
|
+
imports: [SdTabControl, SdTabItemControl],
|
|
49
|
+
host: {
|
|
50
|
+
class: "flex-column fill",
|
|
51
|
+
},
|
|
52
|
+
template: `
|
|
53
|
+
<sd-tab [(value)]="value">
|
|
54
|
+
@for (itemControl of itemControls(); track itemControl.value()) {
|
|
55
|
+
<sd-tab-item [value]="itemControl.value()">
|
|
56
|
+
{{ itemControl.header() || itemControl.value() }}
|
|
57
|
+
</sd-tab-item>
|
|
58
|
+
}
|
|
59
|
+
</sd-tab>
|
|
60
|
+
|
|
61
|
+
<div class="flex-fill">
|
|
62
|
+
<ng-content />
|
|
63
|
+
</div>
|
|
64
|
+
`,
|
|
65
|
+
}]
|
|
66
|
+
}], null, { value: [{ type: i0.Input, args: [{ isSignal: true, alias: "value", required: false }] }, { type: i0.Output, args: ["valueChange"] }], itemControls: [{ type: i0.ContentChildren, args: [i0.forwardRef(() => SdTabviewItemControl), { isSignal: true }] }] }); })();
|
|
67
|
+
(() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassDebugInfo(SdTabviewControl, { className: "SdTabviewControl", filePath: "packages/angular/src/ui/navigation/tab/sd-tabview.control.ts", lineNumber: 35 }); })();
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
import * as i0 from "@angular/core";
|
|
2
|
+
export declare class SdTopbarContainerControl {
|
|
3
|
+
static ɵfac: i0.ɵɵFactoryDeclaration<SdTopbarContainerControl, never>;
|
|
4
|
+
static ɵcmp: i0.ɵɵComponentDeclaration<SdTopbarContainerControl, "sd-topbar-container", never, {}, {}, never, ["*"], true, never>;
|
|
5
|
+
}
|
|
6
|
+
//# sourceMappingURL=sd-topbar-container.control.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"sd-topbar-container.control.d.ts","sourceRoot":"","sources":["..\\..\\..\\..\\src\\ui\\navigation\\topbar\\sd-topbar-container.control.ts"],"names":[],"mappings":";AAEA,qBAmBa,wBAAwB;yCAAxB,wBAAwB;2CAAxB,wBAAwB;CAAG"}
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
import { ChangeDetectionStrategy, Component, ViewEncapsulation } from "@angular/core";
|
|
2
|
+
import * as i0 from "@angular/core";
|
|
3
|
+
const _c0 = ["*"];
|
|
4
|
+
export class SdTopbarContainerControl {
|
|
5
|
+
static ɵfac = function SdTopbarContainerControl_Factory(__ngFactoryType__) { return new (__ngFactoryType__ || SdTopbarContainerControl)(); };
|
|
6
|
+
static ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: SdTopbarContainerControl, selectors: [["sd-topbar-container"]], ngContentSelectors: _c0, decls: 1, vars: 0, template: function SdTopbarContainerControl_Template(rf, ctx) { if (rf & 1) {
|
|
7
|
+
i0.ɵɵprojectionDef();
|
|
8
|
+
i0.ɵɵprojection(0);
|
|
9
|
+
} }, styles: ["sd-topbar-container {\n display: flex;\n flex-direction: column;\n height: 100%;\n}"], encapsulation: 2, changeDetection: 0 });
|
|
10
|
+
}
|
|
11
|
+
(() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(SdTopbarContainerControl, [{
|
|
12
|
+
type: Component,
|
|
13
|
+
args: [{ selector: "sd-topbar-container", changeDetection: ChangeDetectionStrategy.OnPush, encapsulation: ViewEncapsulation.None, standalone: true, imports: [], template: `
|
|
14
|
+
<ng-content />
|
|
15
|
+
`, styles: ["sd-topbar-container {\n display: flex;\n flex-direction: column;\n height: 100%;\n}"] }]
|
|
16
|
+
}], null, null); })();
|
|
17
|
+
(() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassDebugInfo(SdTopbarContainerControl, { className: "SdTopbarContainerControl", filePath: "packages/angular/src/ui/navigation/topbar/sd-topbar-container.control.ts", lineNumber: 22 }); })();
|
|
@@ -0,0 +1,29 @@
|
|
|
1
|
+
import * as i0 from "@angular/core";
|
|
2
|
+
export declare class SdTopbarMenuControl {
|
|
3
|
+
menus: import("@angular/core").InputSignal<ISdTopbarMenu[]>;
|
|
4
|
+
getMenuIsSelectedFn: import("@angular/core").InputSignal<((menu: ISdTopbarMenu) => boolean) | undefined>;
|
|
5
|
+
fullPageCode: import("@angular/core").Signal<string>;
|
|
6
|
+
private readonly _dropdowns;
|
|
7
|
+
getMenuRouterLinkOption(menu: ISdTopbarMenu): {
|
|
8
|
+
link: string;
|
|
9
|
+
queryParams: Record<string, string> | undefined;
|
|
10
|
+
} | undefined;
|
|
11
|
+
getIsMenuSelected(menu: ISdTopbarMenu): boolean;
|
|
12
|
+
onMenuClick(menu: ISdTopbarMenu, dropdownIndex: number): void;
|
|
13
|
+
protected readonly itemTemplateType: {
|
|
14
|
+
menus: ISdTopbarMenu[];
|
|
15
|
+
depth: number;
|
|
16
|
+
dropdownIndex: number;
|
|
17
|
+
};
|
|
18
|
+
protected readonly tablerCaretDown = "<svg xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-linecap=\"round\" stroke-linejoin=\"round\" style=\"stroke-width:var(--ng-icon__stroke-width, 2)\"><path stroke=\"none\" d=\"M0 0h24v24H0z\" fill=\"none\"></path><path d=\"M6 10l6 6l6 -6h-12\"></path></svg>";
|
|
19
|
+
static ɵfac: i0.ɵɵFactoryDeclaration<SdTopbarMenuControl, never>;
|
|
20
|
+
static ɵcmp: i0.ɵɵComponentDeclaration<SdTopbarMenuControl, "sd-topbar-menu", never, { "menus": { "alias": "menus"; "required": false; "isSignal": true; }; "getMenuIsSelectedFn": { "alias": "getMenuIsSelectedFn"; "required": false; "isSignal": true; }; }, {}, never, never, true, never>;
|
|
21
|
+
}
|
|
22
|
+
export interface ISdTopbarMenu {
|
|
23
|
+
title: string;
|
|
24
|
+
codeChain: string[];
|
|
25
|
+
url?: string;
|
|
26
|
+
icon?: string;
|
|
27
|
+
children?: ISdTopbarMenu[];
|
|
28
|
+
}
|
|
29
|
+
//# sourceMappingURL=sd-topbar-menu.control.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"sd-topbar-menu.control.d.ts","sourceRoot":"","sources":["..\\..\\..\\..\\src\\ui\\navigation\\topbar\\sd-topbar-menu.control.ts"],"names":[],"mappings":";AAuBA,qBAkGa,mBAAmB;IAC9B,KAAK,uDAA8B;IACnC,mBAAmB,8CAAgB,aAAa,KAAK,OAAO,eAAI;IAEhE,YAAY,yCAA2B;IAEvC,OAAO,CAAC,QAAQ,CAAC,UAAU,CAAmC;IAE9D,uBAAuB,CACrB,IAAI,EAAE,aAAa,GAClB;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,WAAW,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,GAAG,SAAS,CAAA;KAAE,GAAG,SAAS;IAIhF,iBAAiB,CAAC,IAAI,EAAE,aAAa,GAAG,OAAO;IAI/C,WAAW,CAAC,IAAI,EAAE,aAAa,EAAE,aAAa,EAAE,MAAM,GAAG,IAAI;IAU7D,SAAS,CAAC,QAAQ,CAAC,gBAAgB,EAAG;QACpC,KAAK,EAAE,aAAa,EAAE,CAAC;QACvB,KAAK,EAAE,MAAM,CAAC;QACd,aAAa,EAAE,MAAM,CAAC;KACvB,CAAC;IAEF,SAAS,CAAC,QAAQ,CAAC,eAAe,iUAAmB;yCAlC1C,mBAAmB;2CAAnB,mBAAmB;CAmC/B;AAED,MAAM,WAAW,aAAa;IAC5B,KAAK,EAAE,MAAM,CAAC;IACd,SAAS,EAAE,MAAM,EAAE,CAAC;IACpB,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,QAAQ,CAAC,EAAE,aAAa,EAAE,CAAC;CAC5B"}
|
|
@@ -0,0 +1,245 @@
|
|
|
1
|
+
import { ChangeDetectionStrategy, Component, input, viewChildren, ViewEncapsulation, } from "@angular/core";
|
|
2
|
+
import { useFullPageCodeSignal } from "../../../core/utils/useFullPageCodeSignal";
|
|
3
|
+
import { getMenuRouterLinkOption as menuRouterLinkOption, getIsMenuSelected as menuIsSelected, } from "../menu-utils";
|
|
4
|
+
import { NgTemplateOutlet } from "@angular/common";
|
|
5
|
+
import { SdTypedTemplateDirective } from "../../../core/directives/sd-typed-template.directive";
|
|
6
|
+
import { SdRouterLinkDirective } from "../../../core/directives/sd-router-link.directive";
|
|
7
|
+
import { SdDropdownControl } from "../../overlay/dropdown/sd-dropdown.control";
|
|
8
|
+
import { SdDropdownPopupControl } from "../../overlay/dropdown/sd-dropdown-popup.control";
|
|
9
|
+
import { SdListControl } from "../../data/list/sd-list.control";
|
|
10
|
+
import { SdListItemControl } from "../../data/list/sd-list-item.control";
|
|
11
|
+
import { SdButtonControl } from "../../form/button/sd-button.control";
|
|
12
|
+
import { NgIcon } from "@ng-icons/core";
|
|
13
|
+
import { tablerCaretDown } from "@ng-icons/tabler-icons";
|
|
14
|
+
import * as i0 from "@angular/core";
|
|
15
|
+
const _c0 = (a0, a1) => ({ menus: a0, depth: 0, dropdownIndex: a1 });
|
|
16
|
+
const _c1 = a0 => [a0];
|
|
17
|
+
const _c2 = (a0, a1, a2) => ({ menus: a0, depth: a1, dropdownIndex: a2 });
|
|
18
|
+
const _forTrack0 = ($index, $item) => $item.codeChain.join(".");
|
|
19
|
+
function SdTopbarMenuControl_For_1_Conditional_2_Template(rf, ctx) { if (rf & 1) {
|
|
20
|
+
i0.ɵɵelement(0, "ng-icon", 3);
|
|
21
|
+
} if (rf & 2) {
|
|
22
|
+
const menu_r1 = i0.ɵɵnextContext().$implicit;
|
|
23
|
+
i0.ɵɵproperty("svg", menu_r1.icon);
|
|
24
|
+
} }
|
|
25
|
+
function SdTopbarMenuControl_For_1_Conditional_7_ng_template_0_Template(rf, ctx) { }
|
|
26
|
+
function SdTopbarMenuControl_For_1_Conditional_7_Template(rf, ctx) { if (rf & 1) {
|
|
27
|
+
i0.ɵɵtemplate(0, SdTopbarMenuControl_For_1_Conditional_7_ng_template_0_Template, 0, 0, "ng-template", 5);
|
|
28
|
+
} if (rf & 2) {
|
|
29
|
+
const ctx_r1 = i0.ɵɵnextContext();
|
|
30
|
+
const menu_r1 = ctx_r1.$implicit;
|
|
31
|
+
const ɵ$index_1_r3 = ctx_r1.$index;
|
|
32
|
+
i0.ɵɵnextContext();
|
|
33
|
+
const itemTpl_r4 = i0.ɵɵreference(3);
|
|
34
|
+
i0.ɵɵproperty("ngTemplateOutlet", itemTpl_r4)("ngTemplateOutletContext", i0.ɵɵpureFunction2(2, _c0, menu_r1.children, ɵ$index_1_r3));
|
|
35
|
+
} }
|
|
36
|
+
function SdTopbarMenuControl_For_1_Conditional_8_ng_template_0_Template(rf, ctx) { }
|
|
37
|
+
function SdTopbarMenuControl_For_1_Conditional_8_Template(rf, ctx) { if (rf & 1) {
|
|
38
|
+
i0.ɵɵtemplate(0, SdTopbarMenuControl_For_1_Conditional_8_ng_template_0_Template, 0, 0, "ng-template", 5);
|
|
39
|
+
} if (rf & 2) {
|
|
40
|
+
const ctx_r1 = i0.ɵɵnextContext();
|
|
41
|
+
const menu_r1 = ctx_r1.$implicit;
|
|
42
|
+
const ɵ$index_1_r3 = ctx_r1.$index;
|
|
43
|
+
i0.ɵɵnextContext();
|
|
44
|
+
const itemTpl_r4 = i0.ɵɵreference(3);
|
|
45
|
+
i0.ɵɵproperty("ngTemplateOutlet", itemTpl_r4)("ngTemplateOutletContext", i0.ɵɵpureFunction2(4, _c0, i0.ɵɵpureFunction1(2, _c1, menu_r1), ɵ$index_1_r3));
|
|
46
|
+
} }
|
|
47
|
+
function SdTopbarMenuControl_For_1_Template(rf, ctx) { if (rf & 1) {
|
|
48
|
+
i0.ɵɵelementStart(0, "sd-dropdown")(1, "sd-button", 2);
|
|
49
|
+
i0.ɵɵconditionalCreate(2, SdTopbarMenuControl_For_1_Conditional_2_Template, 1, 1, "ng-icon", 3);
|
|
50
|
+
i0.ɵɵtext(3);
|
|
51
|
+
i0.ɵɵelement(4, "ng-icon", 3);
|
|
52
|
+
i0.ɵɵelementEnd();
|
|
53
|
+
i0.ɵɵelementStart(5, "sd-dropdown-popup")(6, "sd-list", 4);
|
|
54
|
+
i0.ɵɵconditionalCreate(7, SdTopbarMenuControl_For_1_Conditional_7_Template, 1, 5, null, 5)(8, SdTopbarMenuControl_For_1_Conditional_8_Template, 1, 7, null, 5);
|
|
55
|
+
i0.ɵɵelementEnd()()();
|
|
56
|
+
} if (rf & 2) {
|
|
57
|
+
const menu_r1 = ctx.$implicit;
|
|
58
|
+
const ctx_r4 = i0.ɵɵnextContext();
|
|
59
|
+
i0.ɵɵadvance();
|
|
60
|
+
i0.ɵɵproperty("theme", "link-gray");
|
|
61
|
+
i0.ɵɵadvance();
|
|
62
|
+
i0.ɵɵconditional(menu_r1.icon ? 2 : -1);
|
|
63
|
+
i0.ɵɵadvance();
|
|
64
|
+
i0.ɵɵtextInterpolate1(" ", menu_r1.title, " ");
|
|
65
|
+
i0.ɵɵadvance();
|
|
66
|
+
i0.ɵɵproperty("svg", ctx_r4.tablerCaretDown);
|
|
67
|
+
i0.ɵɵadvance(2);
|
|
68
|
+
i0.ɵɵproperty("inset", true);
|
|
69
|
+
i0.ɵɵadvance();
|
|
70
|
+
i0.ɵɵconditional(menu_r1.children ? 7 : 8);
|
|
71
|
+
} }
|
|
72
|
+
function SdTopbarMenuControl_ng_template_2_For_1_Conditional_1_Template(rf, ctx) { if (rf & 1) {
|
|
73
|
+
i0.ɵɵelement(0, "ng-icon", 3);
|
|
74
|
+
i0.ɵɵtext(1, " \u00A0 ");
|
|
75
|
+
} if (rf & 2) {
|
|
76
|
+
const menu_r7 = i0.ɵɵnextContext().$implicit;
|
|
77
|
+
i0.ɵɵproperty("svg", menu_r7.icon);
|
|
78
|
+
} }
|
|
79
|
+
function SdTopbarMenuControl_ng_template_2_For_1_Conditional_3_ng_template_1_Template(rf, ctx) { }
|
|
80
|
+
function SdTopbarMenuControl_ng_template_2_For_1_Conditional_3_Template(rf, ctx) { if (rf & 1) {
|
|
81
|
+
i0.ɵɵelementStart(0, "sd-list", 4);
|
|
82
|
+
i0.ɵɵtemplate(1, SdTopbarMenuControl_ng_template_2_For_1_Conditional_3_ng_template_1_Template, 0, 0, "ng-template", 5);
|
|
83
|
+
i0.ɵɵelementEnd();
|
|
84
|
+
} if (rf & 2) {
|
|
85
|
+
const menu_r7 = i0.ɵɵnextContext().$implicit;
|
|
86
|
+
const ctx_r8 = i0.ɵɵnextContext();
|
|
87
|
+
const depth_r10 = ctx_r8.depth;
|
|
88
|
+
const dropdownIndex_r8 = ctx_r8.dropdownIndex;
|
|
89
|
+
i0.ɵɵnextContext();
|
|
90
|
+
const itemTpl_r4 = i0.ɵɵreference(3);
|
|
91
|
+
i0.ɵɵproperty("inset", true);
|
|
92
|
+
i0.ɵɵadvance();
|
|
93
|
+
i0.ɵɵproperty("ngTemplateOutlet", itemTpl_r4)("ngTemplateOutletContext", i0.ɵɵpureFunction3(3, _c2, menu_r7.children, depth_r10 + 1, dropdownIndex_r8));
|
|
94
|
+
} }
|
|
95
|
+
function SdTopbarMenuControl_ng_template_2_For_1_Template(rf, ctx) { if (rf & 1) {
|
|
96
|
+
const _r6 = i0.ɵɵgetCurrentView();
|
|
97
|
+
i0.ɵɵelementStart(0, "sd-list-item", 7);
|
|
98
|
+
i0.ɵɵlistener("click", function SdTopbarMenuControl_ng_template_2_For_1_Template_sd_list_item_click_0_listener() { const menu_r7 = i0.ɵɵrestoreView(_r6).$implicit; const dropdownIndex_r8 = i0.ɵɵnextContext().dropdownIndex; const ctx_r4 = i0.ɵɵnextContext(); return i0.ɵɵresetView(ctx_r4.onMenuClick(menu_r7, dropdownIndex_r8)); });
|
|
99
|
+
i0.ɵɵconditionalCreate(1, SdTopbarMenuControl_ng_template_2_For_1_Conditional_1_Template, 2, 1);
|
|
100
|
+
i0.ɵɵtext(2);
|
|
101
|
+
i0.ɵɵconditionalCreate(3, SdTopbarMenuControl_ng_template_2_For_1_Conditional_3_Template, 2, 7, "sd-list", 4);
|
|
102
|
+
i0.ɵɵelementEnd();
|
|
103
|
+
} if (rf & 2) {
|
|
104
|
+
const menu_r7 = ctx.$implicit;
|
|
105
|
+
const depth_r10 = i0.ɵɵnextContext().depth;
|
|
106
|
+
const ctx_r4 = i0.ɵɵnextContext();
|
|
107
|
+
i0.ɵɵstyleProp("padding-left", depth_r10 > 0 ? (depth_r10 + 1) * 0.5 : undefined, "em")("padding-block", depth_r10 === 0 ? "var(--gap-default)" : undefined);
|
|
108
|
+
i0.ɵɵproperty("sd-router-link", ctx_r4.getMenuRouterLinkOption(menu_r7))("selected", ctx_r4.getIsMenuSelected(menu_r7))("open", true);
|
|
109
|
+
i0.ɵɵadvance();
|
|
110
|
+
i0.ɵɵconditional(menu_r7.icon ? 1 : -1);
|
|
111
|
+
i0.ɵɵadvance();
|
|
112
|
+
i0.ɵɵtextInterpolate1(" ", menu_r7.title, " ");
|
|
113
|
+
i0.ɵɵadvance();
|
|
114
|
+
i0.ɵɵconditional(menu_r7.children ? 3 : -1);
|
|
115
|
+
} }
|
|
116
|
+
function SdTopbarMenuControl_ng_template_2_Template(rf, ctx) { if (rf & 1) {
|
|
117
|
+
i0.ɵɵrepeaterCreate(0, SdTopbarMenuControl_ng_template_2_For_1_Template, 4, 10, "sd-list-item", 6, _forTrack0);
|
|
118
|
+
} if (rf & 2) {
|
|
119
|
+
const currMenus_r11 = ctx.menus;
|
|
120
|
+
i0.ɵɵrepeater(currMenus_r11);
|
|
121
|
+
} }
|
|
122
|
+
export class SdTopbarMenuControl {
|
|
123
|
+
menus = input([], ...(ngDevMode ? [{ debugName: "menus" }] : /* istanbul ignore next */ []));
|
|
124
|
+
getMenuIsSelectedFn = input(...(ngDevMode ? [undefined, { debugName: "getMenuIsSelectedFn" }] : /* istanbul ignore next */ []));
|
|
125
|
+
fullPageCode = useFullPageCodeSignal();
|
|
126
|
+
_dropdowns = viewChildren(SdDropdownControl, ...(ngDevMode ? [{ debugName: "_dropdowns" }] : /* istanbul ignore next */ []));
|
|
127
|
+
getMenuRouterLinkOption(menu) {
|
|
128
|
+
return menuRouterLinkOption(menu);
|
|
129
|
+
}
|
|
130
|
+
getIsMenuSelected(menu) {
|
|
131
|
+
return menuIsSelected(menu, this.fullPageCode(), this.getMenuIsSelectedFn());
|
|
132
|
+
}
|
|
133
|
+
onMenuClick(menu, dropdownIndex) {
|
|
134
|
+
if (menu.url != null) {
|
|
135
|
+
window.open(menu.url, "_blank");
|
|
136
|
+
}
|
|
137
|
+
if (menu.children === undefined) {
|
|
138
|
+
this._dropdowns()[dropdownIndex].open.set(false);
|
|
139
|
+
}
|
|
140
|
+
}
|
|
141
|
+
itemTemplateType;
|
|
142
|
+
tablerCaretDown = tablerCaretDown;
|
|
143
|
+
static ɵfac = function SdTopbarMenuControl_Factory(__ngFactoryType__) { return new (__ngFactoryType__ || SdTopbarMenuControl)(); };
|
|
144
|
+
static ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: SdTopbarMenuControl, selectors: [["sd-topbar-menu"]], viewQuery: function SdTopbarMenuControl_Query(rf, ctx) { if (rf & 1) {
|
|
145
|
+
i0.ɵɵviewQuerySignal(ctx._dropdowns, SdDropdownControl, 5);
|
|
146
|
+
} if (rf & 2) {
|
|
147
|
+
i0.ɵɵqueryAdvance();
|
|
148
|
+
} }, hostAttrs: [1, "flex-row", "gap-sm"], inputs: { menus: [1, "menus"], getMenuIsSelectedFn: [1, "getMenuIsSelectedFn"] }, decls: 4, vars: 1, consts: [["itemTpl", ""], [3, "typed"], [3, "theme"], [3, "svg"], [3, "inset"], [3, "ngTemplateOutlet", "ngTemplateOutletContext"], [3, "padding-left", "padding-block", "sd-router-link", "selected", "open"], [3, "click", "sd-router-link", "selected", "open"]], template: function SdTopbarMenuControl_Template(rf, ctx) { if (rf & 1) {
|
|
149
|
+
i0.ɵɵrepeaterCreate(0, SdTopbarMenuControl_For_1_Template, 9, 6, "sd-dropdown", null, _forTrack0);
|
|
150
|
+
i0.ɵɵtemplate(2, SdTopbarMenuControl_ng_template_2_Template, 2, 0, "ng-template", 1, 0, i0.ɵɵtemplateRefExtractor);
|
|
151
|
+
} if (rf & 2) {
|
|
152
|
+
i0.ɵɵrepeater(ctx.menus());
|
|
153
|
+
i0.ɵɵadvance(2);
|
|
154
|
+
i0.ɵɵproperty("typed", ctx.itemTemplateType);
|
|
155
|
+
} }, dependencies: [NgTemplateOutlet,
|
|
156
|
+
SdTypedTemplateDirective,
|
|
157
|
+
SdRouterLinkDirective,
|
|
158
|
+
SdDropdownControl,
|
|
159
|
+
SdDropdownPopupControl,
|
|
160
|
+
SdListControl,
|
|
161
|
+
SdListItemControl,
|
|
162
|
+
SdButtonControl,
|
|
163
|
+
NgIcon], styles: ["sd-topbar-menu sd-dropdown-popup sd-list[data-sd-inset=true] sd-list {\n background: var(--trans-lightest);\n}"], encapsulation: 2, changeDetection: 0 });
|
|
164
|
+
}
|
|
165
|
+
(() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(SdTopbarMenuControl, [{
|
|
166
|
+
type: Component,
|
|
167
|
+
args: [{ selector: "sd-topbar-menu", changeDetection: ChangeDetectionStrategy.OnPush, encapsulation: ViewEncapsulation.None, standalone: true, imports: [
|
|
168
|
+
NgTemplateOutlet,
|
|
169
|
+
SdTypedTemplateDirective,
|
|
170
|
+
SdRouterLinkDirective,
|
|
171
|
+
SdDropdownControl,
|
|
172
|
+
SdDropdownPopupControl,
|
|
173
|
+
SdListControl,
|
|
174
|
+
SdListItemControl,
|
|
175
|
+
SdButtonControl,
|
|
176
|
+
NgIcon,
|
|
177
|
+
], host: {
|
|
178
|
+
"class": "flex-row gap-sm",
|
|
179
|
+
}, template: `
|
|
180
|
+
@for (menu of menus(); track menu.codeChain.join("."); let i = $index) {
|
|
181
|
+
<sd-dropdown>
|
|
182
|
+
<sd-button [theme]="'link-gray'">
|
|
183
|
+
@if (menu.icon) {
|
|
184
|
+
<ng-icon [svg]="menu.icon" />
|
|
185
|
+
}
|
|
186
|
+
{{ menu.title }}
|
|
187
|
+
<ng-icon [svg]="tablerCaretDown" />
|
|
188
|
+
</sd-button>
|
|
189
|
+
<sd-dropdown-popup>
|
|
190
|
+
<sd-list [inset]="true">
|
|
191
|
+
@if (menu.children) {
|
|
192
|
+
<ng-template
|
|
193
|
+
[ngTemplateOutlet]="itemTpl"
|
|
194
|
+
[ngTemplateOutletContext]="{ menus: menu.children, depth: 0, dropdownIndex: i }"
|
|
195
|
+
></ng-template>
|
|
196
|
+
} @else {
|
|
197
|
+
<ng-template
|
|
198
|
+
[ngTemplateOutlet]="itemTpl"
|
|
199
|
+
[ngTemplateOutletContext]="{ menus: [menu], depth: 0, dropdownIndex: i }"
|
|
200
|
+
></ng-template>
|
|
201
|
+
}
|
|
202
|
+
</sd-list>
|
|
203
|
+
</sd-dropdown-popup>
|
|
204
|
+
</sd-dropdown>
|
|
205
|
+
}
|
|
206
|
+
|
|
207
|
+
<ng-template
|
|
208
|
+
#itemTpl
|
|
209
|
+
[typed]="itemTemplateType"
|
|
210
|
+
let-currMenus="menus"
|
|
211
|
+
let-depth="depth"
|
|
212
|
+
let-dropdownIndex="dropdownIndex"
|
|
213
|
+
>
|
|
214
|
+
@for (menu of currMenus; track menu.codeChain.join(".")) {
|
|
215
|
+
<sd-list-item
|
|
216
|
+
[style.padding-left.em]="depth > 0 ? (depth + 1) * 0.5 : undefined"
|
|
217
|
+
[style.padding-block]="depth === 0 ? 'var(--gap-default)' : undefined"
|
|
218
|
+
[sd-router-link]="getMenuRouterLinkOption(menu)"
|
|
219
|
+
(click)="onMenuClick(menu, dropdownIndex)"
|
|
220
|
+
[selected]="getIsMenuSelected(menu)"
|
|
221
|
+
[open]="true"
|
|
222
|
+
>
|
|
223
|
+
@if (menu.icon) {
|
|
224
|
+
<ng-icon [svg]="menu.icon" />
|
|
225
|
+
|
|
226
|
+
}
|
|
227
|
+
{{ menu.title }}
|
|
228
|
+
@if (menu.children) {
|
|
229
|
+
<sd-list [inset]="true">
|
|
230
|
+
<ng-template
|
|
231
|
+
[ngTemplateOutlet]="itemTpl"
|
|
232
|
+
[ngTemplateOutletContext]="{
|
|
233
|
+
menus: menu.children,
|
|
234
|
+
depth: depth + 1,
|
|
235
|
+
dropdownIndex: dropdownIndex,
|
|
236
|
+
}"
|
|
237
|
+
></ng-template>
|
|
238
|
+
</sd-list>
|
|
239
|
+
}
|
|
240
|
+
</sd-list-item>
|
|
241
|
+
}
|
|
242
|
+
</ng-template>
|
|
243
|
+
`, styles: ["sd-topbar-menu sd-dropdown-popup sd-list[data-sd-inset=true] sd-list {\n background: var(--trans-lightest);\n}"] }]
|
|
244
|
+
}], null, { menus: [{ type: i0.Input, args: [{ isSignal: true, alias: "menus", required: false }] }], getMenuIsSelectedFn: [{ type: i0.Input, args: [{ isSignal: true, alias: "getMenuIsSelectedFn", required: false }] }], _dropdowns: [{ type: i0.ViewChildren, args: [i0.forwardRef(() => SdDropdownControl), { isSignal: true }] }] }); })();
|
|
245
|
+
(() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassDebugInfo(SdTopbarMenuControl, { className: "SdTopbarMenuControl", filePath: "packages/angular/src/ui/navigation/topbar/sd-topbar-menu.control.ts", lineNumber: 122 }); })();
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
import * as i0 from "@angular/core";
|
|
2
|
+
export declare class SdTopbarUserControl {
|
|
3
|
+
menus: import("@angular/core").InputSignal<ISdTopbarUserMenu[]>;
|
|
4
|
+
private readonly _dropdown;
|
|
5
|
+
onMenuClick(menu: ISdTopbarUserMenu): void;
|
|
6
|
+
static ɵfac: i0.ɵɵFactoryDeclaration<SdTopbarUserControl, never>;
|
|
7
|
+
static ɵcmp: i0.ɵɵComponentDeclaration<SdTopbarUserControl, "sd-topbar-user", never, { "menus": { "alias": "menus"; "required": true; "isSignal": true; }; }, {}, never, ["*"], true, never>;
|
|
8
|
+
}
|
|
9
|
+
export interface ISdTopbarUserMenu {
|
|
10
|
+
title: string;
|
|
11
|
+
onClick: () => void;
|
|
12
|
+
}
|
|
13
|
+
//# sourceMappingURL=sd-topbar-user.control.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"sd-topbar-user.control.d.ts","sourceRoot":"","sources":["..\\..\\..\\..\\src\\ui\\navigation\\topbar\\sd-topbar-user.control.ts"],"names":[],"mappings":";AAaA,qBA8Ba,mBAAmB;IAC9B,KAAK,2DAAyC;IAE9C,OAAO,CAAC,QAAQ,CAAC,SAAS,CAAgC;IAE1D,WAAW,CAAC,IAAI,EAAE,iBAAiB,GAAG,IAAI;yCAL/B,mBAAmB;2CAAnB,mBAAmB;CAS/B;AAED,MAAM,WAAW,iBAAiB;IAChC,KAAK,EAAE,MAAM,CAAC;IACd,OAAO,EAAE,MAAM,IAAI,CAAC;CACrB"}
|
|
@@ -0,0 +1,77 @@
|
|
|
1
|
+
import { ChangeDetectionStrategy, Component, input, viewChild, ViewEncapsulation, } from "@angular/core";
|
|
2
|
+
import { SdDropdownControl } from "../../overlay/dropdown/sd-dropdown.control";
|
|
3
|
+
import { SdDropdownPopupControl } from "../../overlay/dropdown/sd-dropdown-popup.control";
|
|
4
|
+
import { SdListControl } from "../../data/list/sd-list.control";
|
|
5
|
+
import { SdListItemControl } from "../../data/list/sd-list-item.control";
|
|
6
|
+
import { SdButtonControl } from "../../form/button/sd-button.control";
|
|
7
|
+
import * as i0 from "@angular/core";
|
|
8
|
+
const _c0 = ["*"];
|
|
9
|
+
const _forTrack0 = ($index, $item) => $item.title;
|
|
10
|
+
function SdTopbarUserControl_For_6_Template(rf, ctx) { if (rf & 1) {
|
|
11
|
+
const _r1 = i0.ɵɵgetCurrentView();
|
|
12
|
+
i0.ɵɵelementStart(0, "sd-list-item", 1);
|
|
13
|
+
i0.ɵɵlistener("click", function SdTopbarUserControl_For_6_Template_sd_list_item_click_0_listener() { const menu_r2 = i0.ɵɵrestoreView(_r1).$implicit; const ctx_r2 = i0.ɵɵnextContext(); return i0.ɵɵresetView(ctx_r2.onMenuClick(menu_r2)); });
|
|
14
|
+
i0.ɵɵtext(1);
|
|
15
|
+
i0.ɵɵelementEnd();
|
|
16
|
+
} if (rf & 2) {
|
|
17
|
+
const menu_r2 = ctx.$implicit;
|
|
18
|
+
i0.ɵɵadvance();
|
|
19
|
+
i0.ɵɵtextInterpolate1(" ", menu_r2.title, " ");
|
|
20
|
+
} }
|
|
21
|
+
export class SdTopbarUserControl {
|
|
22
|
+
menus = input.required(...(ngDevMode ? [{ debugName: "menus" }] : /* istanbul ignore next */ []));
|
|
23
|
+
_dropdown = viewChild(SdDropdownControl, ...(ngDevMode ? [{ debugName: "_dropdown" }] : /* istanbul ignore next */ []));
|
|
24
|
+
onMenuClick(menu) {
|
|
25
|
+
menu.onClick();
|
|
26
|
+
this._dropdown()?.open.set(false);
|
|
27
|
+
}
|
|
28
|
+
static ɵfac = function SdTopbarUserControl_Factory(__ngFactoryType__) { return new (__ngFactoryType__ || SdTopbarUserControl)(); };
|
|
29
|
+
static ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: SdTopbarUserControl, selectors: [["sd-topbar-user"]], viewQuery: function SdTopbarUserControl_Query(rf, ctx) { if (rf & 1) {
|
|
30
|
+
i0.ɵɵviewQuerySignal(ctx._dropdown, SdDropdownControl, 5);
|
|
31
|
+
} if (rf & 2) {
|
|
32
|
+
i0.ɵɵqueryAdvance();
|
|
33
|
+
} }, inputs: { menus: [1, "menus"] }, ngContentSelectors: _c0, decls: 7, vars: 2, consts: [[3, "inline", "theme"], [3, "click"]], template: function SdTopbarUserControl_Template(rf, ctx) { if (rf & 1) {
|
|
34
|
+
i0.ɵɵprojectionDef();
|
|
35
|
+
i0.ɵɵelementStart(0, "sd-dropdown")(1, "sd-button", 0);
|
|
36
|
+
i0.ɵɵprojection(2);
|
|
37
|
+
i0.ɵɵelementEnd();
|
|
38
|
+
i0.ɵɵelementStart(3, "sd-dropdown-popup")(4, "sd-list");
|
|
39
|
+
i0.ɵɵrepeaterCreate(5, SdTopbarUserControl_For_6_Template, 2, 1, "sd-list-item", null, _forTrack0);
|
|
40
|
+
i0.ɵɵelementEnd()()();
|
|
41
|
+
} if (rf & 2) {
|
|
42
|
+
i0.ɵɵadvance();
|
|
43
|
+
i0.ɵɵproperty("inline", true)("theme", "link-gray");
|
|
44
|
+
i0.ɵɵadvance(4);
|
|
45
|
+
i0.ɵɵrepeater(ctx.menus());
|
|
46
|
+
} }, dependencies: [SdDropdownControl,
|
|
47
|
+
SdDropdownPopupControl,
|
|
48
|
+
SdListControl,
|
|
49
|
+
SdListItemControl,
|
|
50
|
+
SdButtonControl], encapsulation: 2, changeDetection: 0 });
|
|
51
|
+
}
|
|
52
|
+
(() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(SdTopbarUserControl, [{
|
|
53
|
+
type: Component,
|
|
54
|
+
args: [{ selector: "sd-topbar-user", changeDetection: ChangeDetectionStrategy.OnPush, encapsulation: ViewEncapsulation.None, standalone: true, imports: [
|
|
55
|
+
SdDropdownControl,
|
|
56
|
+
SdDropdownPopupControl,
|
|
57
|
+
SdListControl,
|
|
58
|
+
SdListItemControl,
|
|
59
|
+
SdButtonControl,
|
|
60
|
+
], template: `
|
|
61
|
+
<sd-dropdown>
|
|
62
|
+
<sd-button [inline]="true" [theme]="'link-gray'">
|
|
63
|
+
<ng-content />
|
|
64
|
+
</sd-button>
|
|
65
|
+
<sd-dropdown-popup>
|
|
66
|
+
<sd-list>
|
|
67
|
+
@for (menu of menus(); track menu.title) {
|
|
68
|
+
<sd-list-item (click)="onMenuClick(menu)">
|
|
69
|
+
{{ menu.title }}
|
|
70
|
+
</sd-list-item>
|
|
71
|
+
}
|
|
72
|
+
</sd-list>
|
|
73
|
+
</sd-dropdown-popup>
|
|
74
|
+
</sd-dropdown>
|
|
75
|
+
` }]
|
|
76
|
+
}], null, { menus: [{ type: i0.Input, args: [{ isSignal: true, alias: "menus", required: true }] }], _dropdown: [{ type: i0.ViewChild, args: [i0.forwardRef(() => SdDropdownControl), { isSignal: true }] }] }); })();
|
|
77
|
+
(() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassDebugInfo(SdTopbarUserControl, { className: "SdTopbarUserControl", filePath: "packages/angular/src/ui/navigation/topbar/sd-topbar-user.control.ts", lineNumber: 44 }); })();
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
import { SdSidebarContainerControl } from "../sidebar/sd-sidebar-container.control";
|
|
2
|
+
import * as i0 from "@angular/core";
|
|
3
|
+
export declare class SdTopbarControl {
|
|
4
|
+
private readonly _injectedSidebarContainer;
|
|
5
|
+
sidebarContainer: import("@angular/core").InputSignal<SdSidebarContainerControl | undefined>;
|
|
6
|
+
hasSidebar: import("@angular/core").Signal<boolean>;
|
|
7
|
+
onToggleButtonClick(): void;
|
|
8
|
+
protected readonly tablerMenu2 = "<svg xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-linecap=\"round\" stroke-linejoin=\"round\" style=\"stroke-width:var(--ng-icon__stroke-width, 2)\"><path stroke=\"none\" d=\"M0 0h24v24H0z\" fill=\"none\"></path><path d=\"M4 6l16 0\"></path><path d=\"M4 12l16 0\"></path><path d=\"M4 18l16 0\"></path></svg>";
|
|
9
|
+
static ɵfac: i0.ɵɵFactoryDeclaration<SdTopbarControl, never>;
|
|
10
|
+
static ɵcmp: i0.ɵɵComponentDeclaration<SdTopbarControl, "sd-topbar", never, { "sidebarContainer": { "alias": "sidebarContainer"; "required": false; "isSignal": true; }; }, {}, never, ["*"], true, never>;
|
|
11
|
+
}
|
|
12
|
+
//# sourceMappingURL=sd-topbar.control.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"sd-topbar.control.d.ts","sourceRoot":"","sources":["..\\..\\..\\..\\src\\ui\\navigation\\topbar\\sd-topbar.control.ts"],"names":[],"mappings":"AAQA,OAAO,EAAE,yBAAyB,EAAE,MAAM,yCAAyC,CAAC;;AAKpF,qBA6Da,eAAe;IAC1B,OAAO,CAAC,QAAQ,CAAC,yBAAyB,CAEvC;IAEH,gBAAgB,6EAAsC;IAEtD,UAAU,0CAER;IAEF,mBAAmB,IAAI,IAAI;IAO3B,SAAS,CAAC,QAAQ,CAAC,WAAW,oXAAe;yCAlBlC,eAAe;2CAAf,eAAe;CAmB3B"}
|