@simplysm/angular 14.0.7 → 14.0.9
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +234 -246
- package/dist/core/commons.d.ts.map +1 -1
- package/dist/core/directives/sd-events.directive.d.ts.map +1 -1
- package/dist/core/directives/sd-invalid.directive.d.ts.map +1 -1
- package/dist/core/directives/sd-item-of-template.directive.d.ts.map +1 -1
- package/dist/core/directives/sd-ripple.directive.d.ts.map +1 -1
- package/dist/core/directives/sd-router-link.directive.d.ts.map +1 -1
- package/dist/core/directives/sd-show-effect.directive.d.ts.map +1 -1
- package/dist/core/directives/sd-typed-template.directive.d.ts.map +1 -1
- package/dist/core/pipes/format.pipe.d.ts.map +1 -1
- package/dist/core/plugins/commands/findTopOpenModalEl.d.ts.map +1 -1
- package/dist/core/plugins/commands/sd-insert-command-event.plugin.d.ts.map +1 -1
- package/dist/core/plugins/commands/sd-refresh-command-event.plugin.d.ts.map +1 -1
- package/dist/core/plugins/commands/sd-save-command-event.plugin.d.ts.map +1 -1
- package/dist/core/plugins/events/sd-intersection-event.plugin.d.ts.map +1 -1
- package/dist/core/plugins/events/sd-option-event.plugin.d.ts.map +1 -1
- package/dist/core/plugins/events/sd-resize-event.plugin.d.ts.map +1 -1
- package/dist/core/plugins/sd-global-error-handler.plugin.d.ts.map +1 -1
- package/dist/core/provideSdAngular.d.ts.map +1 -1
- package/dist/core/providers/sd-angular-config.provider.d.ts.map +1 -1
- package/dist/core/providers/sd-app-structure.provider.d.ts.map +1 -1
- package/dist/core/providers/sd-file-dialog.provider.d.ts.map +1 -1
- package/dist/core/providers/sd-local-storage.provider.d.ts.map +1 -1
- package/dist/core/providers/sd-navigate-window.provider.d.ts.map +1 -1
- package/dist/core/providers/sd-print.provider.d.ts +7 -2
- package/dist/core/providers/sd-print.provider.d.ts.map +1 -1
- package/dist/core/providers/sd-service-client-factory.provider.d.ts.map +1 -1
- package/dist/core/providers/sd-shared-data.provider.d.ts +3 -0
- package/dist/core/providers/sd-shared-data.provider.d.ts.map +1 -1
- package/dist/core/providers/sd-system-config.provider.d.ts.map +1 -1
- package/dist/core/providers/sd-system-log.provider.d.ts.map +1 -1
- package/dist/core/providers/sd-theme-provider.d.ts.map +1 -1
- package/dist/core/utils/TDirectiveInputSignals.d.ts +4 -0
- package/dist/core/utils/TDirectiveInputSignals.d.ts.map +1 -1
- package/dist/core/utils/injectParent.d.ts +7 -0
- package/dist/core/utils/injectParent.d.ts.map +1 -0
- package/dist/core/utils/injectParent.js +26 -0
- package/dist/core/utils/setSafeStyle.d.ts.map +1 -1
- package/dist/core/utils/setups/setupBgTheme.d.ts.map +1 -1
- package/dist/core/utils/setups/setupCanDeactivate.d.ts.map +1 -1
- package/dist/core/utils/setups/setupCloserWhenSingleSelectionChange.d.ts +9 -0
- package/dist/core/utils/setups/setupCloserWhenSingleSelectionChange.d.ts.map +1 -0
- package/dist/core/utils/setups/setupCloserWhenSingleSelectionChange.js +20 -0
- package/dist/core/utils/setups/setupCumulateSelectedKeys.d.ts +9 -0
- package/dist/core/utils/setups/setupCumulateSelectedKeys.d.ts.map +1 -0
- package/dist/core/utils/setups/setupCumulateSelectedKeys.js +27 -0
- package/dist/core/utils/setups/setupInvalid.d.ts.map +1 -1
- package/dist/core/utils/setups/setupModelHook.d.ts.map +1 -1
- package/dist/core/utils/setups/setupRevealOnShow.d.ts.map +1 -1
- package/dist/core/utils/setups/setupRipple.d.ts.map +1 -1
- package/dist/core/utils/useCurrentPageCodeSignal.d.ts.map +1 -1
- package/dist/core/utils/useExpandingManager.d.ts.map +1 -1
- package/dist/core/utils/useFullPageCodeSignal.d.ts.map +1 -1
- package/dist/core/utils/useSdSystemConfigResource.d.ts.map +1 -1
- package/dist/core/utils/useSelectionManager.d.ts.map +1 -1
- package/dist/core/utils/useSortingManager.d.ts.map +1 -1
- package/dist/core/utils/useViewTitleSignal.d.ts.map +1 -1
- package/dist/core/utils/useViewTypeSignal.d.ts.map +1 -1
- package/dist/features/address/sd-address-search.modal.d.ts +19 -0
- package/dist/features/address/sd-address-search.modal.d.ts.map +1 -0
- package/dist/features/address/sd-address-search.modal.js +88 -0
- package/dist/features/base/sd-base-container.control.d.ts +26 -0
- package/dist/features/base/sd-base-container.control.d.ts.map +1 -0
- package/dist/features/base/sd-base-container.control.js +183 -0
- package/dist/features/data-view/sd-data-detail.control.d.ts +70 -0
- package/dist/features/data-view/sd-data-detail.control.d.ts.map +1 -0
- package/dist/features/data-view/sd-data-detail.control.js +606 -0
- package/dist/features/data-view/sd-data-select-button.control.d.ts +35 -0
- package/dist/features/data-view/sd-data-select-button.control.d.ts.map +1 -0
- package/dist/features/data-view/sd-data-select-button.control.js +219 -0
- package/dist/features/data-view/sd-data-sheet-column.directive.d.ts +8 -0
- package/dist/features/data-view/sd-data-sheet-column.directive.d.ts.map +1 -0
- package/dist/features/data-view/sd-data-sheet-column.directive.js +15 -0
- package/dist/features/data-view/sd-data-sheet.control.d.ts +131 -0
- package/dist/features/data-view/sd-data-sheet.control.d.ts.map +1 -0
- package/dist/features/data-view/sd-data-sheet.control.js +1152 -0
- package/dist/features/shared-data/sd-shared-data-select-button.control.d.ts +16 -0
- package/dist/features/shared-data/sd-shared-data-select-button.control.d.ts.map +1 -0
- package/dist/features/shared-data/sd-shared-data-select-button.control.js +66 -0
- package/dist/features/shared-data/sd-shared-data-select-list.control.d.ts +33 -0
- package/dist/features/shared-data/sd-shared-data-select-list.control.d.ts.map +1 -0
- package/dist/features/shared-data/sd-shared-data-select-list.control.js +346 -0
- package/dist/features/shared-data/sd-shared-data-select.control.d.ts +50 -0
- package/dist/features/shared-data/sd-shared-data-select.control.d.ts.map +1 -0
- package/dist/features/shared-data/sd-shared-data-select.control.js +425 -0
- package/dist/index.d.ts +13 -1
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +15 -0
- package/dist/ui/data/list/sd-list-item.control.d.ts +3 -1
- package/dist/ui/data/list/sd-list-item.control.d.ts.map +1 -1
- package/dist/ui/data/list/sd-list-item.control.js +9 -5
- package/dist/ui/data/list/sd-list.control.d.ts.map +1 -1
- package/dist/ui/data/list/sd-list.control.js +1 -1
- package/dist/ui/data/sheet/sd-sheet-column.directive.d.ts +8 -1
- package/dist/ui/data/sheet/sd-sheet-column.directive.d.ts.map +1 -1
- package/dist/ui/data/sheet/sd-sheet-config.modal.d.ts.map +1 -1
- package/dist/ui/data/sheet/sd-sheet-config.modal.js +1 -1
- package/dist/ui/data/sheet/sd-sheet.control.d.ts +6 -5
- package/dist/ui/data/sheet/sd-sheet.control.d.ts.map +1 -1
- package/dist/ui/data/sheet/sd-sheet.control.js +19 -17
- package/dist/ui/data/sheet/types.d.ts.map +1 -1
- package/dist/ui/data/sheet/useSheetCellAgent.d.ts.map +1 -1
- package/dist/ui/data/sheet/useSheetCellAgent.js +1 -2
- package/dist/ui/data/sheet/useSheetColumnFixing.d.ts.map +1 -1
- package/dist/ui/data/sheet/useSheetDomAccessor.d.ts.map +1 -1
- package/dist/ui/data/sheet/useSheetLayoutEngine.d.ts.map +1 -1
- package/dist/ui/data/sheet/useSheetLayoutEngine.js +1 -0
- package/dist/ui/form/button/sd-additional-button.control.d.ts.map +1 -1
- package/dist/ui/form/button/sd-additional-button.control.js +1 -1
- package/dist/ui/form/button/sd-anchor.control.d.ts.map +1 -1
- package/dist/ui/form/button/sd-anchor.control.js +1 -1
- package/dist/ui/form/button/sd-button.control.d.ts.map +1 -1
- package/dist/ui/form/button/sd-button.control.js +1 -1
- package/dist/ui/form/button/sd-modal-select-button.control.d.ts +16 -18
- package/dist/ui/form/button/sd-modal-select-button.control.d.ts.map +1 -1
- package/dist/ui/form/button/sd-modal-select-button.control.js +22 -39
- package/dist/ui/form/checkbox/sd-checkbox-group-item.control.d.ts.map +1 -1
- package/dist/ui/form/checkbox/sd-checkbox-group-item.control.js +1 -1
- package/dist/ui/form/checkbox/sd-checkbox-group.control.d.ts.map +1 -1
- package/dist/ui/form/checkbox/sd-checkbox-group.control.js +1 -1
- package/dist/ui/form/checkbox/sd-checkbox.control.d.ts.map +1 -1
- package/dist/ui/form/checkbox/sd-checkbox.control.js +1 -1
- package/dist/ui/form/checkbox/sd-switch.control.d.ts.map +1 -1
- package/dist/ui/form/checkbox/sd-switch.control.js +1 -1
- package/dist/ui/form/choice/sd-state-preset.control.d.ts.map +1 -1
- package/dist/ui/form/choice/sd-state-preset.control.js +1 -1
- package/dist/ui/form/editor/sd-tiptap-editor.control.d.ts +18 -1
- package/dist/ui/form/editor/sd-tiptap-editor.control.d.ts.map +1 -1
- package/dist/ui/form/editor/sd-tiptap-editor.control.js +18 -2
- package/dist/ui/form/input/sd-date-range.picker.d.ts.map +1 -1
- package/dist/ui/form/input/sd-date-range.picker.js +1 -1
- package/dist/ui/form/input/sd-numpad.control.d.ts.map +1 -1
- package/dist/ui/form/input/sd-numpad.control.js +1 -1
- package/dist/ui/form/input/sd-range.control.d.ts.map +1 -1
- package/dist/ui/form/input/sd-range.control.js +1 -1
- package/dist/ui/form/input/sd-textarea.control.d.ts.map +1 -1
- package/dist/ui/form/input/sd-textarea.control.js +1 -1
- package/dist/ui/form/input/sd-textfield-type-handlers.d.ts.map +1 -1
- package/dist/ui/form/input/sd-textfield.control.d.ts.map +1 -1
- package/dist/ui/form/input/sd-textfield.control.js +1 -1
- package/dist/ui/form/sd-form.control.d.ts.map +1 -1
- package/dist/ui/form/sd-form.control.js +1 -1
- package/dist/ui/form/select/sd-select-button.control.d.ts.map +1 -1
- package/dist/ui/form/select/sd-select-button.control.js +1 -1
- package/dist/ui/form/select/sd-select-item.control.d.ts +1 -1
- package/dist/ui/form/select/sd-select-item.control.d.ts.map +1 -1
- package/dist/ui/form/select/sd-select-item.control.js +1 -1
- package/dist/ui/form/select/sd-select.control.d.ts +9 -6
- package/dist/ui/form/select/sd-select.control.d.ts.map +1 -1
- package/dist/ui/form/select/sd-select.control.js +1 -1
- package/dist/ui/layout/dock/sd-dock-container.control.d.ts.map +1 -1
- package/dist/ui/layout/dock/sd-dock-container.control.js +1 -1
- package/dist/ui/layout/dock/sd-dock.control.d.ts +2 -0
- package/dist/ui/layout/dock/sd-dock.control.d.ts.map +1 -1
- package/dist/ui/layout/dock/sd-dock.control.js +13 -4
- package/dist/ui/layout/kanban/sd-kanban-board.control.d.ts.map +1 -1
- package/dist/ui/layout/kanban/sd-kanban-board.control.js +1 -1
- package/dist/ui/layout/kanban/sd-kanban-lane.control.d.ts.map +1 -1
- package/dist/ui/layout/kanban/sd-kanban-lane.control.js +8 -2
- package/dist/ui/layout/kanban/sd-kanban.control.d.ts.map +1 -1
- package/dist/ui/layout/kanban/sd-kanban.control.js +1 -1
- package/dist/ui/layout/sd-card.directive.d.ts.map +1 -1
- package/dist/ui/layout/sd-gap.control.d.ts +2 -2
- package/dist/ui/layout/sd-gap.control.d.ts.map +1 -1
- package/dist/ui/layout/sd-gap.control.js +1 -1
- package/dist/ui/layout/sd-pane.directive.d.ts.map +1 -1
- package/dist/ui/layout/view/sd-view-item.control.d.ts.map +1 -1
- package/dist/ui/layout/view/sd-view-item.control.js +1 -1
- package/dist/ui/layout/view/sd-view.control.d.ts.map +1 -1
- package/dist/ui/layout/view/sd-view.control.js +1 -1
- package/dist/ui/navigation/collapse/sd-collapse-icon.control.d.ts.map +1 -1
- package/dist/ui/navigation/collapse/sd-collapse-icon.control.js +1 -1
- package/dist/ui/navigation/collapse/sd-collapse.control.d.ts.map +1 -1
- package/dist/ui/navigation/collapse/sd-collapse.control.js +1 -1
- package/dist/ui/navigation/menu-utils.d.ts.map +1 -1
- package/dist/ui/navigation/pagination/sd-pagination.control.d.ts.map +1 -1
- package/dist/ui/navigation/pagination/sd-pagination.control.js +8 -4
- package/dist/ui/navigation/sidebar/sd-sidebar-container.control.d.ts.map +1 -1
- package/dist/ui/navigation/sidebar/sd-sidebar-container.control.js +2 -2
- package/dist/ui/navigation/sidebar/sd-sidebar-menu.control.d.ts.map +1 -1
- package/dist/ui/navigation/sidebar/sd-sidebar-menu.control.js +1 -1
- package/dist/ui/navigation/sidebar/sd-sidebar-user.control.d.ts.map +1 -1
- package/dist/ui/navigation/sidebar/sd-sidebar-user.control.js +1 -1
- package/dist/ui/navigation/sidebar/sd-sidebar.control.d.ts.map +1 -1
- package/dist/ui/navigation/sidebar/sd-sidebar.control.js +1 -1
- package/dist/ui/navigation/tab/sd-tab-item.control.d.ts.map +1 -1
- package/dist/ui/navigation/tab/sd-tab-item.control.js +1 -1
- package/dist/ui/navigation/tab/sd-tab.control.d.ts.map +1 -1
- package/dist/ui/navigation/tab/sd-tab.control.js +1 -1
- package/dist/ui/navigation/tab/sd-tabview-item.control.d.ts.map +1 -1
- package/dist/ui/navigation/tab/sd-tabview-item.control.js +1 -1
- package/dist/ui/navigation/tab/sd-tabview.control.d.ts.map +1 -1
- package/dist/ui/navigation/tab/sd-tabview.control.js +1 -1
- package/dist/ui/navigation/topbar/sd-topbar-container.control.d.ts.map +1 -1
- package/dist/ui/navigation/topbar/sd-topbar-container.control.js +1 -1
- package/dist/ui/navigation/topbar/sd-topbar-menu.control.d.ts.map +1 -1
- package/dist/ui/navigation/topbar/sd-topbar-menu.control.js +1 -1
- package/dist/ui/navigation/topbar/sd-topbar-user.control.d.ts.map +1 -1
- package/dist/ui/navigation/topbar/sd-topbar-user.control.js +1 -1
- package/dist/ui/navigation/topbar/sd-topbar.control.d.ts.map +1 -1
- package/dist/ui/navigation/topbar/sd-topbar.control.js +1 -1
- package/dist/ui/overlay/busy/sd-busy-container.control.d.ts.map +1 -1
- package/dist/ui/overlay/busy/sd-busy-container.control.js +1 -1
- package/dist/ui/overlay/busy/sd-busy.provider.d.ts.map +1 -1
- package/dist/ui/overlay/dropdown/sd-dropdown-popup.control.d.ts.map +1 -1
- package/dist/ui/overlay/dropdown/sd-dropdown-popup.control.js +2 -2
- package/dist/ui/overlay/dropdown/sd-dropdown.control.d.ts.map +1 -1
- package/dist/ui/overlay/dropdown/sd-dropdown.control.js +1 -1
- package/dist/ui/overlay/modal/sd-confirm-modal.control.d.ts.map +1 -1
- package/dist/ui/overlay/modal/sd-confirm-modal.control.js +1 -1
- package/dist/ui/overlay/modal/sd-modal.control.d.ts +1 -0
- package/dist/ui/overlay/modal/sd-modal.control.d.ts.map +1 -1
- package/dist/ui/overlay/modal/sd-modal.control.js +10 -2
- package/dist/ui/overlay/modal/sd-modal.provider.d.ts +9 -3
- package/dist/ui/overlay/modal/sd-modal.provider.d.ts.map +1 -1
- package/dist/ui/overlay/modal/sd-prompt-modal.control.d.ts.map +1 -1
- package/dist/ui/overlay/modal/sd-prompt-modal.control.js +1 -1
- package/dist/ui/overlay/toast/sd-toast-container.control.d.ts.map +1 -1
- package/dist/ui/overlay/toast/sd-toast-container.control.js +1 -1
- package/dist/ui/overlay/toast/sd-toast.control.d.ts.map +1 -1
- package/dist/ui/overlay/toast/sd-toast.control.js +1 -1
- package/dist/ui/overlay/toast/sd-toast.provider.d.ts.map +1 -1
- package/dist/ui/overlay/toast/sd-toast.provider.js +7 -3
- package/dist/ui/visual/sd-barcode.control.d.ts.map +1 -1
- package/dist/ui/visual/sd-barcode.control.js +1 -1
- package/dist/ui/visual/sd-calendar.control.d.ts.map +1 -1
- package/dist/ui/visual/sd-calendar.control.js +1 -1
- package/dist/ui/visual/sd-echarts.control.d.ts.map +1 -1
- package/dist/ui/visual/sd-echarts.control.js +1 -1
- package/dist/ui/visual/sd-label.control.d.ts.map +1 -1
- package/dist/ui/visual/sd-label.control.js +1 -1
- package/dist/ui/visual/sd-note.control.d.ts.map +1 -1
- package/dist/ui/visual/sd-note.control.js +1 -1
- package/dist/ui/visual/sd-progress.control.d.ts +1 -0
- package/dist/ui/visual/sd-progress.control.d.ts.map +1 -1
- package/dist/ui/visual/sd-progress.control.js +5 -4
- package/docs/core.md +877 -0
- package/docs/features.md +377 -0
- package/docs/styling.md +309 -0
- package/docs/ui-data.md +233 -0
- package/docs/ui-form.md +421 -0
- package/docs/ui-layout.md +216 -0
- package/docs/ui-navigation.md +279 -0
- package/docs/ui-overlay.md +330 -0
- package/docs/ui-visual.md +131 -0
- package/package.json +5 -5
- package/src/core/providers/sd-print.provider.ts +10 -2
- package/src/core/providers/sd-shared-data.provider.ts +3 -0
- package/src/core/utils/TDirectiveInputSignals.ts +5 -0
- package/src/core/utils/injectParent.ts +41 -0
- package/src/core/utils/setups/setupCloserWhenSingleSelectionChange.ts +29 -0
- package/src/core/utils/setups/setupCumulateSelectedKeys.ts +38 -0
- package/src/features/address/sd-address-search.modal.ts +119 -0
- package/src/features/base/sd-base-container.control.ts +113 -0
- package/src/features/data-view/sd-data-detail.control.ts +394 -0
- package/src/features/data-view/sd-data-select-button.control.ts +210 -0
- package/src/features/data-view/sd-data-sheet-column.directive.ts +10 -0
- package/src/features/data-view/sd-data-sheet.control.ts +850 -0
- package/src/features/shared-data/sd-shared-data-select-button.control.ts +64 -0
- package/src/features/shared-data/sd-shared-data-select-list.control.ts +245 -0
- package/src/features/shared-data/sd-shared-data-select.control.ts +364 -0
- package/src/index.ts +39 -1
- package/src/scss.d.ts +5 -0
- package/src/ui/data/list/sd-list-item.control.ts +4 -2
- package/src/ui/data/sheet/sd-sheet-column.directive.ts +9 -1
- package/src/ui/data/sheet/sd-sheet.control.ts +23 -19
- package/src/ui/data/sheet/useSheetCellAgent.ts +1 -2
- package/src/ui/data/sheet/useSheetLayoutEngine.ts +1 -0
- package/src/ui/form/button/sd-modal-select-button.control.ts +41 -59
- package/src/ui/form/editor/sd-tiptap-editor.control.ts +35 -1
- package/src/ui/form/select/sd-select-item.control.ts +1 -1
- package/src/ui/form/select/sd-select.control.ts +7 -4
- package/src/ui/layout/dock/sd-dock.control.ts +15 -2
- package/src/ui/layout/kanban/sd-kanban-lane.control.ts +6 -3
- package/src/ui/navigation/pagination/sd-pagination.control.ts +5 -3
- package/src/ui/navigation/sidebar/sd-sidebar-container.control.ts +1 -1
- package/src/ui/overlay/dropdown/sd-dropdown-popup.control.ts +1 -1
- package/src/ui/overlay/modal/sd-modal.control.ts +9 -0
- package/src/ui/overlay/modal/sd-modal.provider.ts +15 -3
- package/src/ui/overlay/toast/sd-toast.provider.ts +9 -3
- package/src/ui/visual/sd-progress.control.ts +4 -1
- package/docs/commons-and-configuration.md +0 -34
- package/docs/data-display-components.md +0 -146
- package/docs/directives.md +0 -158
- package/docs/event-plugins.md +0 -109
- package/docs/form-components.md +0 -362
- package/docs/hooks-and-utilities.md +0 -175
- package/docs/layout-components.md +0 -140
- package/docs/navigation-components.md +0 -200
- package/docs/overlay-components.md +0 -193
- package/docs/pipes.md +0 -25
- package/docs/providers.md +0 -448
- package/docs/setup-functions.md +0 -66
- package/docs/visual-components.md +0 -89
package/docs/form-components.md
DELETED
|
@@ -1,362 +0,0 @@
|
|
|
1
|
-
# Form Components
|
|
2
|
-
|
|
3
|
-
## `SdButtonControl`
|
|
4
|
-
|
|
5
|
-
Themed button with ripple effect.
|
|
6
|
-
|
|
7
|
-
Selector: `sd-button`
|
|
8
|
-
|
|
9
|
-
| Input | Type | Description |
|
|
10
|
-
|-------|------|-------------|
|
|
11
|
-
| `type` | `"button" \| "submit"` | Button type (default: `"button"`) |
|
|
12
|
-
| `theme` | `"primary" \| "secondary" \| "info" \| "success" \| "warning" \| "danger" \| "gray" \| "blue-gray" \| "link" \| "link-primary" \| "link-secondary" \| "link-info" \| "link-success" \| "link-warning" \| "link-danger" \| "link-gray" \| "link-blue-gray" \| "link-rev"` | Visual theme |
|
|
13
|
-
| `inline` | `boolean` (booleanAttribute) | Inline display (default: `false`) |
|
|
14
|
-
| `inset` | `boolean` (booleanAttribute) | Borderless inset style (default: `false`) |
|
|
15
|
-
| `size` | `"sm" \| "lg"` | Size variant |
|
|
16
|
-
| `disabled` | `boolean` (booleanAttribute) | Disabled state (default: `false`) |
|
|
17
|
-
| `buttonStyle` | `string` | Inline style for the inner button |
|
|
18
|
-
| `buttonClass` | `string` | CSS class for the inner button |
|
|
19
|
-
|
|
20
|
-
## `SdAnchorControl`
|
|
21
|
-
|
|
22
|
-
Inline clickable anchor element with theme coloring and hover underline.
|
|
23
|
-
|
|
24
|
-
Selector: `sd-anchor`
|
|
25
|
-
|
|
26
|
-
| Input | Type | Description |
|
|
27
|
-
|-------|------|-------------|
|
|
28
|
-
| `disabled` | `boolean` (booleanAttribute) | Disabled state (default: `false`) |
|
|
29
|
-
| `theme` | `"primary" \| "secondary" \| "info" \| "success" \| "warning" \| "danger" \| "gray" \| "blue-gray"` | Color theme (default: `"primary"`) |
|
|
30
|
-
|
|
31
|
-
## `SdAdditionalButtonControl`
|
|
32
|
-
|
|
33
|
-
Content area with adjacent action buttons (anchors or buttons projected via content).
|
|
34
|
-
|
|
35
|
-
Selector: `sd-additional-button`
|
|
36
|
-
|
|
37
|
-
| Input | Type | Description |
|
|
38
|
-
|-------|------|-------------|
|
|
39
|
-
| `size` | `"sm" \| "lg"` | Size variant |
|
|
40
|
-
| `inset` | `boolean` (booleanAttribute) | Borderless inset style (default: `false`) |
|
|
41
|
-
|
|
42
|
-
## `SdModalSelectButtonControl`
|
|
43
|
-
|
|
44
|
-
Button that opens a modal for item selection. Supports single/multi mode with erase functionality.
|
|
45
|
-
|
|
46
|
-
Selector: `sd-modal-select-button`
|
|
47
|
-
|
|
48
|
-
| Input/Model | Type | Description |
|
|
49
|
-
|-------------|------|-------------|
|
|
50
|
-
| `selectMode` | `"single" \| "multi"` | Selection mode (default: `"single"`) |
|
|
51
|
-
| `value` (model) | `TSelectModeValue<any>` | Selected value(s) |
|
|
52
|
-
| `selectedItems` (model) | `Record<string, unknown>[]` | Selected item records (default: `[]`) |
|
|
53
|
-
| `disabled` | `boolean` (booleanAttribute) | Disabled state (default: `false`) |
|
|
54
|
-
| `required` | `boolean` (booleanAttribute) | Required validation (default: `false`) |
|
|
55
|
-
| `modal` | `TSdSelectModalInfo<any>` | Modal info for opening selection modal |
|
|
56
|
-
| `modalOptions` | `ISdModalOptions` | Modal display options |
|
|
57
|
-
| `size` | `"sm" \| "lg"` | Size variant |
|
|
58
|
-
| `inset` | `boolean` (booleanAttribute) | Borderless inset style (default: `false`) |
|
|
59
|
-
|
|
60
|
-
### `ISdSelectModal`
|
|
61
|
-
|
|
62
|
-
| Field | Type | Description |
|
|
63
|
-
|-------|------|-------------|
|
|
64
|
-
| `selectMode` | `InputSignal<"single" \| "multi">` | Selection mode input |
|
|
65
|
-
| `selectedItemKeys` | `InputSignal<T[]>` | Currently selected keys input |
|
|
66
|
-
|
|
67
|
-
Extends `ISdModal<ISelectModalOutputResult<T>>`.
|
|
68
|
-
|
|
69
|
-
### `ISelectModalOutputResult`
|
|
70
|
-
|
|
71
|
-
| Field | Type | Description |
|
|
72
|
-
|-------|------|-------------|
|
|
73
|
-
| `selectedItemKeys` | `T[]` | Selected item keys |
|
|
74
|
-
| `selectedItems` | `Record<string, unknown>[]` | Selected item records |
|
|
75
|
-
|
|
76
|
-
### `TSdSelectModalInfo`
|
|
77
|
-
|
|
78
|
-
```typescript
|
|
79
|
-
type TSdSelectModalInfo<T extends ISdSelectModal<any>> = Omit<ISdModalInfo<T>, "inputs"> & {
|
|
80
|
-
inputs: Omit<TDirectiveInputSignals<T>, "initialized" | "close" | "actionTplRef" | "selectMode" | "selectedItemKeys">;
|
|
81
|
-
};
|
|
82
|
-
```
|
|
83
|
-
|
|
84
|
-
## `SdTextfieldControl`
|
|
85
|
-
|
|
86
|
-
Text/number/date/time input field with inset/readonly/disabled modes.
|
|
87
|
-
|
|
88
|
-
Selector: `sd-textfield`
|
|
89
|
-
|
|
90
|
-
| Input/Model | Type | Description |
|
|
91
|
-
|-------------|------|-------------|
|
|
92
|
-
| `value` (model) | `TSdTextfieldTypes[K]` | Current value |
|
|
93
|
-
| `type` | `K` (required) | Input type key |
|
|
94
|
-
| `placeholder` | `string` | Placeholder text |
|
|
95
|
-
| `title` | `string` | Title attribute |
|
|
96
|
-
| `inputStyle` | `string` | Inline style for the input element |
|
|
97
|
-
| `inputClass` | `string` | CSS class for the input element |
|
|
98
|
-
| `disabled` | `boolean` (booleanAttribute) | Disabled state (default: `false`) |
|
|
99
|
-
| `readonly` | `boolean` (booleanAttribute) | Read-only state (default: `false`) |
|
|
100
|
-
| `required` | `boolean` (booleanAttribute) | Required validation (default: `false`) |
|
|
101
|
-
| `min` | `TSdTextfieldTypes[K]` | Minimum value |
|
|
102
|
-
| `max` | `TSdTextfieldTypes[K]` | Maximum value |
|
|
103
|
-
| `format` | `string` | Display format pattern |
|
|
104
|
-
| `step` | `number` | Step increment |
|
|
105
|
-
| `autocomplete` | `string` | Autocomplete attribute |
|
|
106
|
-
| `inline` | `boolean` (booleanAttribute) | Inline display (default: `false`) |
|
|
107
|
-
| `inset` | `boolean` (booleanAttribute) | Borderless inset style (default: `false`) |
|
|
108
|
-
| `size` | `"sm" \| "lg"` | Size variant |
|
|
109
|
-
| `theme` | `"primary" \| "secondary" \| "info" \| "success" \| "warning" \| "danger" \| "gray" \| "blue-gray"` | Background theme |
|
|
110
|
-
|
|
111
|
-
### `TSdTextfieldTypes`
|
|
112
|
-
|
|
113
|
-
```typescript
|
|
114
|
-
type TSdTextfieldTypes = {
|
|
115
|
-
"number": number;
|
|
116
|
-
"text": string;
|
|
117
|
-
"password": string;
|
|
118
|
-
"color": string;
|
|
119
|
-
"email": string;
|
|
120
|
-
"format": string;
|
|
121
|
-
"date": DateOnly;
|
|
122
|
-
"month": DateOnly;
|
|
123
|
-
"year": DateOnly;
|
|
124
|
-
"datetime": DateTime;
|
|
125
|
-
"datetime-sec": DateTime;
|
|
126
|
-
"time": Time;
|
|
127
|
-
"time-sec": Time;
|
|
128
|
-
};
|
|
129
|
-
```
|
|
130
|
-
|
|
131
|
-
### `sdTextfieldTypes`
|
|
132
|
-
|
|
133
|
-
```typescript
|
|
134
|
-
const sdTextfieldTypes: (keyof TSdTextfieldTypes)[];
|
|
135
|
-
```
|
|
136
|
-
|
|
137
|
-
## `SdTextareaControl`
|
|
138
|
-
|
|
139
|
-
Multi-line text input with inset/readonly/disabled modes.
|
|
140
|
-
|
|
141
|
-
Selector: `sd-textarea`
|
|
142
|
-
|
|
143
|
-
| Input/Model | Type | Description |
|
|
144
|
-
|-------------|------|-------------|
|
|
145
|
-
| `value` (model) | `string` | Current text value |
|
|
146
|
-
| `placeholder` | `string` | Placeholder text |
|
|
147
|
-
| `title` | `string` | Title attribute |
|
|
148
|
-
| `disabled` | `boolean` (booleanAttribute) | Disabled state (default: `false`) |
|
|
149
|
-
| `readonly` | `boolean` (booleanAttribute) | Read-only state (default: `false`) |
|
|
150
|
-
| `required` | `boolean` (booleanAttribute) | Required validation (default: `false`) |
|
|
151
|
-
| `inline` | `boolean` (booleanAttribute) | Inline display (default: `false`) |
|
|
152
|
-
| `inset` | `boolean` (booleanAttribute) | Borderless inset style (default: `false`) |
|
|
153
|
-
| `size` | `"sm" \| "lg"` | Size variant |
|
|
154
|
-
| `theme` | `"primary" \| "secondary" \| "info" \| "success" \| "warning" \| "danger" \| "gray" \| "blue-gray"` | Background theme |
|
|
155
|
-
| `inputStyle` | `string` | Inline style for the textarea |
|
|
156
|
-
| `inputClass` | `string` | CSS class for the textarea |
|
|
157
|
-
|
|
158
|
-
## `SdNumpadControl`
|
|
159
|
-
|
|
160
|
-
On-screen numeric keypad for number input.
|
|
161
|
-
|
|
162
|
-
Selector: `sd-numpad`
|
|
163
|
-
|
|
164
|
-
| Input/Model | Type | Description |
|
|
165
|
-
|-------------|------|-------------|
|
|
166
|
-
| `value` (model) | `number` | Current numeric value |
|
|
167
|
-
| `placeholder` | `string` | Placeholder text |
|
|
168
|
-
| `required` | `boolean` (booleanAttribute) | Required validation (default: `false`) |
|
|
169
|
-
| `inputDisabled` | `boolean` (booleanAttribute) | Disable text input (default: `false`) |
|
|
170
|
-
| `useEnterButton` | `boolean` (booleanAttribute) | Show enter button (default: `false`) |
|
|
171
|
-
| `useMinusButton` | `boolean` (booleanAttribute) | Show minus button (default: `false`) |
|
|
172
|
-
|
|
173
|
-
| Output | Type | Description |
|
|
174
|
-
|--------|------|-------------|
|
|
175
|
-
| `enterButtonClick` | `void` | Emitted when enter button is clicked |
|
|
176
|
-
|
|
177
|
-
## `SdRangeControl`
|
|
178
|
-
|
|
179
|
-
From-to range input pair using two `SdTextfieldControl` instances.
|
|
180
|
-
|
|
181
|
-
Selector: `sd-range`
|
|
182
|
-
|
|
183
|
-
| Input/Model | Type | Description |
|
|
184
|
-
|-------------|------|-------------|
|
|
185
|
-
| `type` | `K` (required) | Textfield type key |
|
|
186
|
-
| `from` (model) | `TSdTextfieldTypes[K]` | Start value |
|
|
187
|
-
| `to` (model) | `TSdTextfieldTypes[K]` | End value |
|
|
188
|
-
| `inputStyle` | `string` | Inline style for both inputs |
|
|
189
|
-
| `required` | `boolean` (booleanAttribute) | Required validation (default: `false`) |
|
|
190
|
-
| `disabled` | `boolean` (booleanAttribute) | Disabled state (default: `false`) |
|
|
191
|
-
|
|
192
|
-
## `SdDateRangePicker`
|
|
193
|
-
|
|
194
|
-
Date range picker with period type selector (day/month/range).
|
|
195
|
-
|
|
196
|
-
Selector: `sd-date-range-picker`
|
|
197
|
-
|
|
198
|
-
| Input/Model | Type | Description |
|
|
199
|
-
|-------------|------|-------------|
|
|
200
|
-
| `periodType` (model) | `"day" \| "month" \| "range"` | Period type (default: `"range"`) |
|
|
201
|
-
| `from` (model) | `DateOnly` | Start date |
|
|
202
|
-
| `to` (model) | `DateOnly` | End date |
|
|
203
|
-
| `required` | `boolean` (booleanAttribute) | Required validation (default: `false`) |
|
|
204
|
-
|
|
205
|
-
Note: Period type labels are in Korean: "일" (day), "월" (month), "범위" (range).
|
|
206
|
-
|
|
207
|
-
## `SdCheckboxControl`
|
|
208
|
-
|
|
209
|
-
Checkbox with optional radio mode, ripple effect, and model hook guard.
|
|
210
|
-
|
|
211
|
-
Selector: `sd-checkbox`
|
|
212
|
-
|
|
213
|
-
| Input/Model | Type | Description |
|
|
214
|
-
|-------------|------|-------------|
|
|
215
|
-
| `value` (model) | `boolean` | Checked state (default: `false`) |
|
|
216
|
-
| `canChangeFn` | `(item: boolean) => boolean \| Promise<boolean>` | Guard function before change (default: `() => true`) |
|
|
217
|
-
| `icon` | `string` | Check icon SVG (default: tabler check icon) |
|
|
218
|
-
| `radio` | `boolean` (booleanAttribute) | Radio mode -- can only set to true (default: `false`) |
|
|
219
|
-
| `disabled` | `boolean` (booleanAttribute) | Disabled state (default: `false`) |
|
|
220
|
-
| `size` | `"sm" \| "lg"` | Size variant |
|
|
221
|
-
| `inline` | `boolean` (booleanAttribute) | Inline display (default: `false`) |
|
|
222
|
-
| `inset` | `boolean` (booleanAttribute) | Borderless inset style (default: `false`) |
|
|
223
|
-
| `theme` | `"primary" \| "secondary" \| "info" \| "success" \| "warning" \| "danger" \| "gray" \| "blue-gray" \| "white"` | Color theme |
|
|
224
|
-
| `contentStyle` | `string` | Inline style for content area |
|
|
225
|
-
|
|
226
|
-
## `SdSwitchControl`
|
|
227
|
-
|
|
228
|
-
Toggle switch component.
|
|
229
|
-
|
|
230
|
-
Selector: `sd-switch`
|
|
231
|
-
|
|
232
|
-
| Input/Model | Type | Description |
|
|
233
|
-
|-------------|------|-------------|
|
|
234
|
-
| `value` (model) | `boolean` | On/off state (default: `false`) |
|
|
235
|
-
| `disabled` | `boolean` (booleanAttribute) | Disabled state (default: `false`) |
|
|
236
|
-
| `inline` | `boolean` (booleanAttribute) | Inline display (default: `false`) |
|
|
237
|
-
| `inset` | `boolean` (booleanAttribute) | Borderless inset style (default: `false`) |
|
|
238
|
-
| `size` | `"sm" \| "lg"` | Size variant |
|
|
239
|
-
| `theme` | `"primary" \| "secondary" \| "info" \| "success" \| "warning" \| "danger" \| "gray" \| "blue-gray"` | Color theme |
|
|
240
|
-
|
|
241
|
-
## `SdCheckboxGroupControl`
|
|
242
|
-
|
|
243
|
-
Group container for checkbox items. Manages a multi-select value array.
|
|
244
|
-
|
|
245
|
-
Selector: `sd-checkbox-group`
|
|
246
|
-
|
|
247
|
-
| Input/Model | Type | Description |
|
|
248
|
-
|-------------|------|-------------|
|
|
249
|
-
| `value` (model) | `T[]` | Selected values (default: `[]`) |
|
|
250
|
-
| `disabled` | `boolean` (booleanAttribute) | Disabled state (default: `false`) |
|
|
251
|
-
|
|
252
|
-
## `SdCheckboxGroupItemControl`
|
|
253
|
-
|
|
254
|
-
Individual item in a checkbox group. Toggles its value in the parent group's array.
|
|
255
|
-
|
|
256
|
-
Selector: `sd-checkbox-group-item`
|
|
257
|
-
|
|
258
|
-
| Input | Type | Description |
|
|
259
|
-
|-------|------|-------------|
|
|
260
|
-
| `value` | `T` (required) | Item value |
|
|
261
|
-
| `inline` | `boolean` (booleanAttribute) | Inline display (default: `false`) |
|
|
262
|
-
|
|
263
|
-
## `SdSelectControl`
|
|
264
|
-
|
|
265
|
-
Dropdown select supporting single and multi selection modes with dropdown popup.
|
|
266
|
-
|
|
267
|
-
Selector: `sd-select`
|
|
268
|
-
|
|
269
|
-
| Input/Model | Type | Description |
|
|
270
|
-
|-------------|------|-------------|
|
|
271
|
-
| `selectMode` | `"single" \| "multi"` | Selection mode (default: `"single"`) |
|
|
272
|
-
| `value` (model) | `TSelectModeValue<T>` | Selected value(s) |
|
|
273
|
-
| `placeholder` | `string` | Placeholder text |
|
|
274
|
-
| `disabled` | `boolean` (booleanAttribute) | Disabled state (default: `false`) |
|
|
275
|
-
| `inline` | `boolean` (booleanAttribute) | Inline display (default: `false`) |
|
|
276
|
-
| `inset` | `boolean` (booleanAttribute) | Borderless inset style (default: `false`) |
|
|
277
|
-
| `size` | `"sm" \| "lg"` | Size variant |
|
|
278
|
-
| `required` | `boolean` (booleanAttribute) | Required validation (default: `false`) |
|
|
279
|
-
| `hideSelectAll` | `boolean` (booleanAttribute) | Hide select/deselect all bar in multi mode (default: `false`) |
|
|
280
|
-
| `multiSelectionDisplayDirection` | `"vertical"` | Display direction for multi selections |
|
|
281
|
-
| `items` | `T[]` | Items for itemOf template rendering |
|
|
282
|
-
| `getChildrenFn` | `(item: T) => T[] \| undefined` | Children accessor for tree items |
|
|
283
|
-
| `contentClass` | `string` | CSS class for the content area |
|
|
284
|
-
| `contentStyle` | `string` | Inline style for the content area |
|
|
285
|
-
|
|
286
|
-
### `TSelectModeValue`
|
|
287
|
-
|
|
288
|
-
```typescript
|
|
289
|
-
type TSelectModeValue<T> = T | T[] | undefined;
|
|
290
|
-
```
|
|
291
|
-
|
|
292
|
-
## `SdSelectItemControl`
|
|
293
|
-
|
|
294
|
-
Item inside `SdSelectControl`. Renders content and handles click/keyboard selection.
|
|
295
|
-
|
|
296
|
-
Selector: `sd-select-item`
|
|
297
|
-
|
|
298
|
-
| Input | Type | Description |
|
|
299
|
-
|-------|------|-------------|
|
|
300
|
-
| `value` | `T` (required) | Item value |
|
|
301
|
-
| `disabled` | `boolean` (booleanAttribute) | Disabled state (default: `false`) |
|
|
302
|
-
| `hidden` | `boolean` (booleanAttribute) | Hidden state (default: `false`) |
|
|
303
|
-
|
|
304
|
-
## `SdSelectButtonControl`
|
|
305
|
-
|
|
306
|
-
Additional button slot rendered inline next to the select dropdown trigger. Has ripple effect.
|
|
307
|
-
|
|
308
|
-
Selector: `sd-select-button`
|
|
309
|
-
|
|
310
|
-
No inputs.
|
|
311
|
-
|
|
312
|
-
## `SdTiptapEditorControl`
|
|
313
|
-
|
|
314
|
-
Rich text editor powered by Tiptap. Includes toolbar with formatting commands (headings, bold, italic, underline, strike, colors, lists, alignment, links, images, tables).
|
|
315
|
-
|
|
316
|
-
Selector: `sd-tiptap-editor`
|
|
317
|
-
|
|
318
|
-
| Input/Model | Type | Description |
|
|
319
|
-
|-------------|------|-------------|
|
|
320
|
-
| `value` (model) | `string` | HTML content |
|
|
321
|
-
| `disabled` | `boolean` (booleanAttribute) | Disabled state (default: `false`) |
|
|
322
|
-
| `readonly` | `boolean` (booleanAttribute) | Read-only state (default: `false`) |
|
|
323
|
-
| `required` | `boolean` (booleanAttribute) | Required validation (default: `false`) |
|
|
324
|
-
| `placeholder` | `string` | Placeholder text |
|
|
325
|
-
| `validatorFn` | `(value: string \| undefined) => string \| undefined` | Custom validation function |
|
|
326
|
-
| `extensions` | `AnyExtension[]` | Additional Tiptap extensions |
|
|
327
|
-
|
|
328
|
-
## `SdStatePresetControl`
|
|
329
|
-
|
|
330
|
-
Save and load named state presets. Persists presets via system config.
|
|
331
|
-
|
|
332
|
-
Selector: `sd-state-preset`
|
|
333
|
-
|
|
334
|
-
| Input/Model | Type | Description |
|
|
335
|
-
|-------------|------|-------------|
|
|
336
|
-
| `key` | `string` (required) | Config key for preset storage |
|
|
337
|
-
| `state` (model) | `any` | Current state to save/restore |
|
|
338
|
-
| `size` | `"sm" \| "lg"` | Size variant |
|
|
339
|
-
|
|
340
|
-
### `ISdStatePreset`
|
|
341
|
-
|
|
342
|
-
| Field | Type | Description |
|
|
343
|
-
|-------|------|-------------|
|
|
344
|
-
| `name` | `string` | Preset display name |
|
|
345
|
-
| `state` | `any` | Stored state value |
|
|
346
|
-
|
|
347
|
-
## `SdFormControl`
|
|
348
|
-
|
|
349
|
-
Form wrapper with submit handling and validation. Prevents default form submission, validates, and emits appropriate events.
|
|
350
|
-
|
|
351
|
-
Selector: `sd-form`
|
|
352
|
-
|
|
353
|
-
| Output | Type | Description |
|
|
354
|
-
|--------|------|-------------|
|
|
355
|
-
| `formSubmit` | `SubmitEvent` | Emitted on valid form submission |
|
|
356
|
-
| `formInvalid` | `void` | Emitted when form validation fails |
|
|
357
|
-
|
|
358
|
-
Public methods:
|
|
359
|
-
|
|
360
|
-
```typescript
|
|
361
|
-
requestSubmit(): void; // Programmatically trigger form submission
|
|
362
|
-
```
|
|
@@ -1,175 +0,0 @@
|
|
|
1
|
-
# Hooks & Utilities
|
|
2
|
-
|
|
3
|
-
Hook functions (prefixed with `use`) must be called within Angular injection context (constructor or `runInInjectionContext`).
|
|
4
|
-
|
|
5
|
-
## `usePermsSignal`
|
|
6
|
-
|
|
7
|
-
Returns a signal of permitted keys for the given view codes. Filters `permKeys` by checking the app structure's permission record.
|
|
8
|
-
|
|
9
|
-
```typescript
|
|
10
|
-
function usePermsSignal<K extends string>(viewCodes: string[], keys: K[]): Signal<K[]>;
|
|
11
|
-
```
|
|
12
|
-
|
|
13
|
-
## `useSdSystemConfigResource`
|
|
14
|
-
|
|
15
|
-
Creates a resource for reading and writing system configuration values, scoped by the host element's tag name.
|
|
16
|
-
|
|
17
|
-
```typescript
|
|
18
|
-
function useSdSystemConfigResource<T>(options: {
|
|
19
|
-
key: Signal<string | undefined>;
|
|
20
|
-
}): {
|
|
21
|
-
value: Signal<T | undefined>;
|
|
22
|
-
isLoading: Signal<boolean>;
|
|
23
|
-
status: Signal<ResourceStatus>;
|
|
24
|
-
hasValue(): boolean;
|
|
25
|
-
reload(): void;
|
|
26
|
-
set(value: T | undefined): void;
|
|
27
|
-
update(fn: (prev: T | undefined) => T | undefined): void;
|
|
28
|
-
};
|
|
29
|
-
```
|
|
30
|
-
|
|
31
|
-
## `useCurrentPageCodeSignal`
|
|
32
|
-
|
|
33
|
-
Returns a signal of the current page code derived from the activated route's URL segments (joined by `.`). Returns `undefined` if no ActivatedRoute is available.
|
|
34
|
-
|
|
35
|
-
```typescript
|
|
36
|
-
function useCurrentPageCodeSignal(): Signal<string> | undefined;
|
|
37
|
-
```
|
|
38
|
-
|
|
39
|
-
## `useFullPageCodeSignal`
|
|
40
|
-
|
|
41
|
-
Returns a signal of the full page code derived from the router's current URL. Updated on every `NavigationEnd`.
|
|
42
|
-
|
|
43
|
-
```typescript
|
|
44
|
-
function useFullPageCodeSignal(): Signal<string>;
|
|
45
|
-
```
|
|
46
|
-
|
|
47
|
-
## `useViewTitleSignal`
|
|
48
|
-
|
|
49
|
-
Returns a signal of the current view's title. Uses modal title if inside a modal, otherwise derives from app structure using the page code.
|
|
50
|
-
|
|
51
|
-
```typescript
|
|
52
|
-
function useViewTitleSignal(): Signal<string>;
|
|
53
|
-
```
|
|
54
|
-
|
|
55
|
-
## `useViewTypeSignal`
|
|
56
|
-
|
|
57
|
-
Returns a signal indicating whether the current view is displayed as a page, modal, or embedded control.
|
|
58
|
-
|
|
59
|
-
```typescript
|
|
60
|
-
function useViewTypeSignal(getComp: () => object): Signal<TSdViewType>;
|
|
61
|
-
```
|
|
62
|
-
|
|
63
|
-
### `TSdViewType`
|
|
64
|
-
|
|
65
|
-
```typescript
|
|
66
|
-
type TSdViewType = "page" | "modal" | "control";
|
|
67
|
-
```
|
|
68
|
-
|
|
69
|
-
## `useExpandingManager`
|
|
70
|
-
|
|
71
|
-
Manages tree expand/collapse state for hierarchical data. Computes flattened display items, tracks expanded items, and provides toggle/visibility methods.
|
|
72
|
-
|
|
73
|
-
```typescript
|
|
74
|
-
function useExpandingManager<T>(binding: {
|
|
75
|
-
items: Signal<T[]>;
|
|
76
|
-
expandedItems: WritableSignal<T[]>;
|
|
77
|
-
getChildrenFn: Signal<((item: T, index: number) => T[] | undefined) | undefined>;
|
|
78
|
-
sort: (items: T[]) => T[];
|
|
79
|
-
}): {
|
|
80
|
-
displayItems: Signal<T[]>;
|
|
81
|
-
hasExpandable: Signal<boolean>;
|
|
82
|
-
isAllExpanded: Signal<boolean>;
|
|
83
|
-
toggle(item: T): void;
|
|
84
|
-
toggleAll(): void;
|
|
85
|
-
isVisible(item: T): boolean;
|
|
86
|
-
def(item: T): IExpandItemDef<T>;
|
|
87
|
-
};
|
|
88
|
-
```
|
|
89
|
-
|
|
90
|
-
### `IExpandItemDef`
|
|
91
|
-
|
|
92
|
-
| Field | Type | Description |
|
|
93
|
-
|-------|------|-------------|
|
|
94
|
-
| `item` | `T` | The data item |
|
|
95
|
-
| `parentDef` | `IExpandItemDef<T> \| undefined` | Parent definition (for tree traversal) |
|
|
96
|
-
| `hasChildren` | `boolean` | Whether item has children |
|
|
97
|
-
| `depth` | `number` | Nesting depth (0-based) |
|
|
98
|
-
|
|
99
|
-
## `useSelectionManager`
|
|
100
|
-
|
|
101
|
-
Manages item selection state (single or multi mode). Provides select/deselect/toggle operations and computed selection state.
|
|
102
|
-
|
|
103
|
-
```typescript
|
|
104
|
-
function useSelectionManager<T>(options: {
|
|
105
|
-
displayItems: Signal<T[]>;
|
|
106
|
-
selectedItems: WritableSignal<T[]>;
|
|
107
|
-
selectMode: Signal<"single" | "multi" | undefined>;
|
|
108
|
-
getItemSelectableFn: Signal<((item: T) => boolean | string) | undefined>;
|
|
109
|
-
}): {
|
|
110
|
-
hasSelectable: Signal<boolean>;
|
|
111
|
-
isAllSelected: Signal<boolean>;
|
|
112
|
-
getSelectable(item: T): true | string | undefined;
|
|
113
|
-
getCanChangeFn(item: T): () => boolean;
|
|
114
|
-
select(item: T): void;
|
|
115
|
-
deselect(item: T): void;
|
|
116
|
-
toggle(item: T): void;
|
|
117
|
-
toggleAll(): void;
|
|
118
|
-
isSelected(item: T): boolean;
|
|
119
|
-
};
|
|
120
|
-
```
|
|
121
|
-
|
|
122
|
-
## `useSortingManager`
|
|
123
|
-
|
|
124
|
-
Manages column sorting state with single and multi-column support. Toggle cycles through: ascending, descending, removed.
|
|
125
|
-
|
|
126
|
-
```typescript
|
|
127
|
-
function useSortingManager(options: {
|
|
128
|
-
sorts: WritableSignal<ISortingDef[]>;
|
|
129
|
-
}): {
|
|
130
|
-
defMap: Signal<Map<string, { indexText?: string; desc: boolean }>>;
|
|
131
|
-
toggle(key: string, multiple: boolean): void;
|
|
132
|
-
sort<T>(items: T[]): T[];
|
|
133
|
-
};
|
|
134
|
-
```
|
|
135
|
-
|
|
136
|
-
### `ISortingDef`
|
|
137
|
-
|
|
138
|
-
| Field | Type | Description |
|
|
139
|
-
|-------|------|-------------|
|
|
140
|
-
| `key` | `string` | Column/property key to sort by |
|
|
141
|
-
| `desc` | `boolean` | Whether sort is descending |
|
|
142
|
-
|
|
143
|
-
## `setSafeStyle`
|
|
144
|
-
|
|
145
|
-
Safely sets multiple CSS style properties on an element via Renderer2.
|
|
146
|
-
|
|
147
|
-
```typescript
|
|
148
|
-
function setSafeStyle(
|
|
149
|
-
renderer: Renderer2,
|
|
150
|
-
el: HTMLElement,
|
|
151
|
-
style: Partial<CSSStyleDeclaration>,
|
|
152
|
-
): void;
|
|
153
|
-
```
|
|
154
|
-
|
|
155
|
-
## `TDirectiveInputSignals`
|
|
156
|
-
|
|
157
|
-
Utility type that extracts `InputSignal` value types from a component/directive. Non-InputSignal properties are excluded. Properties with `undefined` in their type become optional.
|
|
158
|
-
|
|
159
|
-
```typescript
|
|
160
|
-
type TDirectiveInputSignals<T> = TUndefToOptional<{
|
|
161
|
-
[P in keyof T as T[P] extends InputSignal<any> ? P : never]: T[P] extends InputSignal<infer V> ? V : never;
|
|
162
|
-
}>;
|
|
163
|
-
```
|
|
164
|
-
|
|
165
|
-
## `TUndefToOptional`
|
|
166
|
-
|
|
167
|
-
Utility type that converts properties containing `undefined` in their type to optional properties.
|
|
168
|
-
|
|
169
|
-
```typescript
|
|
170
|
-
type TUndefToOptional<T> = {
|
|
171
|
-
[K in keyof T as undefined extends T[K] ? never : K]: T[K];
|
|
172
|
-
} & {
|
|
173
|
-
[K in keyof T as undefined extends T[K] ? K : never]?: Exclude<T[K], undefined>;
|
|
174
|
-
};
|
|
175
|
-
```
|
|
@@ -1,140 +0,0 @@
|
|
|
1
|
-
# Layout Components
|
|
2
|
-
|
|
3
|
-
## `SdDockContainerControl`
|
|
4
|
-
|
|
5
|
-
Container for docked panels. Calculates padding based on child dock sizes and positions.
|
|
6
|
-
|
|
7
|
-
Selector: `sd-dock-container`
|
|
8
|
-
|
|
9
|
-
| Input | Type | Description |
|
|
10
|
-
|-------|------|-------------|
|
|
11
|
-
| `contentClass` | `string` | CSS class for the content wrapper |
|
|
12
|
-
|
|
13
|
-
## `SdDockControl`
|
|
14
|
-
|
|
15
|
-
Dockable panel that attaches to a side of `SdDockContainerControl`. Supports optional user-resizing with config persistence.
|
|
16
|
-
|
|
17
|
-
Selector: `sd-dock`
|
|
18
|
-
|
|
19
|
-
| Input | Type | Description |
|
|
20
|
-
|-------|------|-------------|
|
|
21
|
-
| `key` | `string` | Config key for size persistence |
|
|
22
|
-
| `position` | `"top" \| "bottom" \| "right" \| "left"` | Dock position (default: `"top"`) |
|
|
23
|
-
| `resizable` | `boolean` (booleanAttribute) | Enable drag-to-resize (default: `false`) |
|
|
24
|
-
|
|
25
|
-
## `SdPaneDirective`
|
|
26
|
-
|
|
27
|
-
Applies fill-area pane styling to the host element. Sets CSS class `fill` and `display: block`.
|
|
28
|
-
|
|
29
|
-
Selector: `sd-pane`, `[sd-pane]`
|
|
30
|
-
|
|
31
|
-
No inputs.
|
|
32
|
-
|
|
33
|
-
## `SdGapControl`
|
|
34
|
-
|
|
35
|
-
Spacing element that renders as a gap with preset or pixel-based dimensions.
|
|
36
|
-
|
|
37
|
-
Selector: `sd-gap`
|
|
38
|
-
|
|
39
|
-
| Input | Type | Description |
|
|
40
|
-
|-------|------|-------------|
|
|
41
|
-
| `height` | `"xxs" \| "xs" \| "sm" \| "default" \| "lg" \| "xl" \| "xxl"` | Preset height |
|
|
42
|
-
| `heightPx` | `number` | Height in pixels |
|
|
43
|
-
| `width` | `"xxs" \| "xs" \| "sm" \| "default" \| "lg" \| "xl" \| "xxl"` | Preset width |
|
|
44
|
-
| `widthPx` | `number` | Width in pixels |
|
|
45
|
-
| `widthEm` | `number` | Width in em units |
|
|
46
|
-
|
|
47
|
-
## `SdViewControl`
|
|
48
|
-
|
|
49
|
-
View container for tab-like content switching. Shows the child `SdViewItemControl` whose value matches.
|
|
50
|
-
|
|
51
|
-
Selector: `sd-view`
|
|
52
|
-
|
|
53
|
-
| Input | Type | Description |
|
|
54
|
-
|-------|------|-------------|
|
|
55
|
-
| `value` | `any` | Currently active view value |
|
|
56
|
-
| `fill` | `boolean` (booleanAttribute) | Whether to fill parent height (default: `false`) |
|
|
57
|
-
|
|
58
|
-
## `SdViewItemControl`
|
|
59
|
-
|
|
60
|
-
Individual view item, shown when its value matches the parent `SdViewControl` value.
|
|
61
|
-
|
|
62
|
-
Selector: `sd-view-item`
|
|
63
|
-
|
|
64
|
-
| Input | Type | Description |
|
|
65
|
-
|-------|------|-------------|
|
|
66
|
-
| `value` | `any` | Value to match against parent |
|
|
67
|
-
|
|
68
|
-
## `SdCardDirective`
|
|
69
|
-
|
|
70
|
-
Applies card styling (CSS class `card`).
|
|
71
|
-
|
|
72
|
-
Selector: `sd-card`, `[sd-card]`
|
|
73
|
-
|
|
74
|
-
No inputs.
|
|
75
|
-
|
|
76
|
-
## `SdKanbanBoardControl`
|
|
77
|
-
|
|
78
|
-
Kanban board container with drag-and-drop support. Manages drag state and emits drop events.
|
|
79
|
-
|
|
80
|
-
Selector: `sd-kanban-board`
|
|
81
|
-
|
|
82
|
-
| Input/Model | Type | Description |
|
|
83
|
-
|-------------|------|-------------|
|
|
84
|
-
| `selectedValues` (model) | `T[]` | Currently selected kanban values (default: `[]`) |
|
|
85
|
-
|
|
86
|
-
| Output | Type | Description |
|
|
87
|
-
|--------|------|-------------|
|
|
88
|
-
| `drop` | `ISdKanbanBoardDropInfo<L, T>` | Emitted when a kanban card is dropped |
|
|
89
|
-
|
|
90
|
-
### `ISdKanbanBoardDropInfo`
|
|
91
|
-
|
|
92
|
-
| Field | Type | Description |
|
|
93
|
-
|-------|------|-------------|
|
|
94
|
-
| `sourceKanbanValue` | `T` | Value of the dragged card |
|
|
95
|
-
| `targetLaneValue` | `L` | Value of the target lane |
|
|
96
|
-
| `targetKanbanValue` | `T` | Value of the target card (drop position) |
|
|
97
|
-
|
|
98
|
-
### `ISdKanbanDragRef`
|
|
99
|
-
|
|
100
|
-
| Field | Type | Description |
|
|
101
|
-
|-------|------|-------------|
|
|
102
|
-
| `value()` | `T \| undefined` | Value of the dragged card |
|
|
103
|
-
| `heightOnDrag()` | `number` | Height of the card being dragged |
|
|
104
|
-
|
|
105
|
-
### `ISdKanbanDropTarget`
|
|
106
|
-
|
|
107
|
-
| Field | Type | Description |
|
|
108
|
-
|-------|------|-------------|
|
|
109
|
-
| `targetLaneValue()` | `L \| undefined` | Value of the target lane |
|
|
110
|
-
| `targetKanbanValue?()` | `T \| undefined` | Value of the target card position |
|
|
111
|
-
|
|
112
|
-
## `SdKanbanLaneControl`
|
|
113
|
-
|
|
114
|
-
Kanban lane (column). Contains kanban cards and supports drag-drop targeting, collapse, and select-all.
|
|
115
|
-
|
|
116
|
-
Selector: `sd-kanban-lane`
|
|
117
|
-
|
|
118
|
-
| Input/Model | Type | Description |
|
|
119
|
-
|-------------|------|-------------|
|
|
120
|
-
| `busy` | `boolean` (booleanAttribute) | Show busy indicator (default: `false`) |
|
|
121
|
-
| `useCollapse` | `boolean` (booleanAttribute) | Enable collapse toggle (default: `false`) |
|
|
122
|
-
| `collapse` (model) | `boolean` | Collapse state (default: `false`) |
|
|
123
|
-
| `value` | `L` | Lane value identifier |
|
|
124
|
-
|
|
125
|
-
Content children:
|
|
126
|
-
- `#toolTpl` template: Tool bar content
|
|
127
|
-
- `#titleTpl` template: Title content
|
|
128
|
-
|
|
129
|
-
## `SdKanbanControl`
|
|
130
|
-
|
|
131
|
-
Kanban card item within a lane. Supports dragging and selection.
|
|
132
|
-
|
|
133
|
-
Selector: `sd-kanban`
|
|
134
|
-
|
|
135
|
-
| Input | Type | Description |
|
|
136
|
-
|-------|------|-------------|
|
|
137
|
-
| `value` | `T` | Card value identifier |
|
|
138
|
-
| `selectable` | `boolean` (booleanAttribute) | Enable shift-click selection (default: `false`) |
|
|
139
|
-
| `draggable` | `boolean` (booleanAttribute) | Enable drag-and-drop (default: `false`) |
|
|
140
|
-
| `contentClass` | `string` | CSS class for the card content |
|