@simplysm/angular 14.0.8 → 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.map +1 -1
- 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.map +1 -1
- package/dist/features/base/sd-base-container.control.js +1 -1
- 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 +11 -1
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +12 -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 +8 -4
- 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 +4 -4
- package/dist/ui/data/sheet/sd-sheet.control.d.ts.map +1 -1
- package/dist/ui/data/sheet/sd-sheet.control.js +3 -4
- 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/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/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.map +1 -1
- package/dist/ui/layout/dock/sd-dock.control.js +1 -1
- 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 +1 -1
- 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.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 +1 -1
- package/dist/ui/navigation/sidebar/sd-sidebar-container.control.d.ts.map +1 -1
- package/dist/ui/navigation/sidebar/sd-sidebar-container.control.js +1 -1
- 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 +1 -1
- 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.map +1 -1
- package/dist/ui/overlay/modal/sd-modal.control.js +1 -1
- 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/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.map +1 -1
- package/dist/ui/visual/sd-progress.control.js +1 -1
- 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/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/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 +35 -1
- package/src/scss.d.ts +5 -0
- package/src/ui/data/list/sd-list-item.control.ts +3 -1
- package/src/ui/data/sheet/sd-sheet-column.directive.ts +9 -1
- package/src/ui/data/sheet/sd-sheet.control.ts +6 -6
- 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/overlay/modal/sd-modal.provider.ts +15 -3
- 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
|
@@ -0,0 +1,1152 @@
|
|
|
1
|
+
import { NgTemplateOutlet } from "@angular/common";
|
|
2
|
+
import { ChangeDetectionStrategy, Component, computed, contentChild, contentChildren, Directive, effect, inject, input, model, output, reflectComponentType, signal, TemplateRef, viewChild, ViewEncapsulation, } from "@angular/core";
|
|
3
|
+
import { obj } from "@simplysm/core-common";
|
|
4
|
+
import { SdButtonControl } from "../../ui/form/button/sd-button.control";
|
|
5
|
+
import { SdFormControl } from "../../ui/form/sd-form.control";
|
|
6
|
+
import { SdSheetColumnDirective } from "../../ui/data/sheet/sd-sheet-column.directive";
|
|
7
|
+
import { SdSheetControl } from "../../ui/data/sheet/sd-sheet.control";
|
|
8
|
+
import { SdFileDialogProvider } from "../../core/providers/sd-file-dialog.provider";
|
|
9
|
+
import { SdToastProvider } from "../../ui/overlay/toast/sd-toast.provider";
|
|
10
|
+
import { SdSharedDataProvider } from "../../core/providers/sd-shared-data.provider";
|
|
11
|
+
import { useViewTypeSignal } from "../../core/utils/useViewTypeSignal";
|
|
12
|
+
import { setupCumulateSelectedKeys } from "../../core/utils/setups/setupCumulateSelectedKeys";
|
|
13
|
+
import { setupCloserWhenSingleSelectionChange } from "../../core/utils/setups/setupCloserWhenSingleSelectionChange";
|
|
14
|
+
import { setupCanDeactivate } from "../../core/utils/setups/setupCanDeactivate";
|
|
15
|
+
import { injectParent } from "../../core/utils/injectParent";
|
|
16
|
+
import { FormatPipe } from "../../core/pipes/format.pipe";
|
|
17
|
+
import { TXT_CHANGE_IGNORE_CONFIRM } from "../../core/commons";
|
|
18
|
+
import { SdBaseContainerControl } from "../base/sd-base-container.control";
|
|
19
|
+
import { SdDataSheetColumnDirective } from "./sd-data-sheet-column.directive";
|
|
20
|
+
import { SdAnchorControl } from "../../ui/form/button/sd-anchor.control";
|
|
21
|
+
import { NgIcon } from "@ng-icons/core";
|
|
22
|
+
import { tablerDeviceFloppy, tablerEdit, tablerEraser, tablerCirclePlus, tablerFileExcel, tablerRefresh, tablerRestore, tablerSearch, tablerUpload, } from "@ng-icons/tabler-icons";
|
|
23
|
+
import * as i0 from "@angular/core";
|
|
24
|
+
const _c0 = ["pageTopbarTpl"];
|
|
25
|
+
const _c1 = ["prevTpl"];
|
|
26
|
+
const _c2 = ["filterTpl"];
|
|
27
|
+
const _c3 = ["beforeToolTpl"];
|
|
28
|
+
const _c4 = ["toolTpl"];
|
|
29
|
+
const _c5 = ["modalBottomTpl"];
|
|
30
|
+
const _c6 = ["formCtrl"];
|
|
31
|
+
const _c7 = (a0, a1, a2, a3, a4) => ({ $implicit: a0, item: a1, index: a2, depth: a3, edit: a4 });
|
|
32
|
+
const _forTrack0 = ($index, $item) => $item.key();
|
|
33
|
+
function SdDataSheetControl_ng_template_1_Conditional_0_Template(rf, ctx) { if (rf & 1) {
|
|
34
|
+
const _r2 = i0.ɵɵgetCurrentView();
|
|
35
|
+
i0.ɵɵelementStart(0, "sd-button", 8);
|
|
36
|
+
i0.ɵɵlistener("click", function SdDataSheetControl_ng_template_1_Conditional_0_Template_sd_button_click_0_listener() { i0.ɵɵrestoreView(_r2); const ctx_r2 = i0.ɵɵnextContext(2); return i0.ɵɵresetView(ctx_r2.onSubmitButtonClick()); });
|
|
37
|
+
i0.ɵɵelement(1, "ng-icon", 9);
|
|
38
|
+
i0.ɵɵtext(2, " \uC800\uC7A5 ");
|
|
39
|
+
i0.ɵɵelementStart(3, "small");
|
|
40
|
+
i0.ɵɵtext(4, "(CTRL+S)");
|
|
41
|
+
i0.ɵɵelementEnd()();
|
|
42
|
+
} if (rf & 2) {
|
|
43
|
+
const ctx_r2 = i0.ɵɵnextContext(2);
|
|
44
|
+
i0.ɵɵproperty("theme", "link-primary");
|
|
45
|
+
i0.ɵɵadvance();
|
|
46
|
+
i0.ɵɵproperty("svg", ctx_r2.icons.tablerDeviceFloppy);
|
|
47
|
+
} }
|
|
48
|
+
function SdDataSheetControl_ng_template_1_ng_template_6_Template(rf, ctx) { }
|
|
49
|
+
function SdDataSheetControl_ng_template_1_Template(rf, ctx) { if (rf & 1) {
|
|
50
|
+
const _r1 = i0.ɵɵgetCurrentView();
|
|
51
|
+
i0.ɵɵconditionalCreate(0, SdDataSheetControl_ng_template_1_Conditional_0_Template, 5, 2, "sd-button", 7);
|
|
52
|
+
i0.ɵɵelementStart(1, "sd-button", 8);
|
|
53
|
+
i0.ɵɵlistener("click", function SdDataSheetControl_ng_template_1_Template_sd_button_click_1_listener() { i0.ɵɵrestoreView(_r1); const ctx_r2 = i0.ɵɵnextContext(); return i0.ɵɵresetView(ctx_r2.onRefreshButtonClick()); });
|
|
54
|
+
i0.ɵɵelement(2, "ng-icon", 9);
|
|
55
|
+
i0.ɵɵtext(3, " \uC0C8\uB85C\uACE0\uCE68 ");
|
|
56
|
+
i0.ɵɵelementStart(4, "small");
|
|
57
|
+
i0.ɵɵtext(5, "(CTRL+ALT+L)");
|
|
58
|
+
i0.ɵɵelementEnd()();
|
|
59
|
+
i0.ɵɵtemplate(6, SdDataSheetControl_ng_template_1_ng_template_6_Template, 0, 0, "ng-template", 10);
|
|
60
|
+
} if (rf & 2) {
|
|
61
|
+
const ctx_r2 = i0.ɵɵnextContext();
|
|
62
|
+
i0.ɵɵconditional(ctx_r2.parent.canEdit() && ctx_r2.parent.submit ? 0 : -1);
|
|
63
|
+
i0.ɵɵadvance();
|
|
64
|
+
i0.ɵɵproperty("theme", "link-info");
|
|
65
|
+
i0.ɵɵadvance();
|
|
66
|
+
i0.ɵɵproperty("svg", ctx_r2.icons.tablerRefresh);
|
|
67
|
+
i0.ɵɵadvance(4);
|
|
68
|
+
i0.ɵɵproperty("ngTemplateOutlet", ctx_r2.pageTopbarTplRef() ?? null);
|
|
69
|
+
} }
|
|
70
|
+
function SdDataSheetControl_ng_template_3_Conditional_1_ng_template_11_Template(rf, ctx) { }
|
|
71
|
+
function SdDataSheetControl_ng_template_3_Conditional_1_Template(rf, ctx) { if (rf & 1) {
|
|
72
|
+
const _r5 = i0.ɵɵgetCurrentView();
|
|
73
|
+
i0.ɵɵelementStart(0, "div", 12)(1, "sd-button", 19);
|
|
74
|
+
i0.ɵɵlistener("click", function SdDataSheetControl_ng_template_3_Conditional_1_Template_sd_button_click_1_listener() { i0.ɵɵrestoreView(_r5); const ctx_r2 = i0.ɵɵnextContext(2); return i0.ɵɵresetView(ctx_r2.onSubmitButtonClick()); });
|
|
75
|
+
i0.ɵɵelement(2, "ng-icon", 9);
|
|
76
|
+
i0.ɵɵtext(3, " \uC800\uC7A5 ");
|
|
77
|
+
i0.ɵɵelementStart(4, "small");
|
|
78
|
+
i0.ɵɵtext(5, "(CTRL+S)");
|
|
79
|
+
i0.ɵɵelementEnd()();
|
|
80
|
+
i0.ɵɵelementStart(6, "sd-button", 19);
|
|
81
|
+
i0.ɵɵlistener("click", function SdDataSheetControl_ng_template_3_Conditional_1_Template_sd_button_click_6_listener() { i0.ɵɵrestoreView(_r5); const ctx_r2 = i0.ɵɵnextContext(2); return i0.ɵɵresetView(ctx_r2.onRefreshButtonClick()); });
|
|
82
|
+
i0.ɵɵelement(7, "ng-icon", 9);
|
|
83
|
+
i0.ɵɵtext(8, " \uC0C8\uB85C\uACE0\uCE68 ");
|
|
84
|
+
i0.ɵɵelementStart(9, "small");
|
|
85
|
+
i0.ɵɵtext(10, "(CTRL+ALT+L)");
|
|
86
|
+
i0.ɵɵelementEnd()();
|
|
87
|
+
i0.ɵɵtemplate(11, SdDataSheetControl_ng_template_3_Conditional_1_ng_template_11_Template, 0, 0, "ng-template", 10);
|
|
88
|
+
i0.ɵɵelementEnd();
|
|
89
|
+
} if (rf & 2) {
|
|
90
|
+
const ctx_r2 = i0.ɵɵnextContext(2);
|
|
91
|
+
i0.ɵɵadvance();
|
|
92
|
+
i0.ɵɵproperty("size", "sm")("theme", "primary");
|
|
93
|
+
i0.ɵɵadvance();
|
|
94
|
+
i0.ɵɵproperty("svg", ctx_r2.icons.tablerDeviceFloppy);
|
|
95
|
+
i0.ɵɵadvance(4);
|
|
96
|
+
i0.ɵɵproperty("size", "sm")("theme", "info");
|
|
97
|
+
i0.ɵɵadvance();
|
|
98
|
+
i0.ɵɵproperty("svg", ctx_r2.icons.tablerRefresh);
|
|
99
|
+
i0.ɵɵadvance(4);
|
|
100
|
+
i0.ɵɵproperty("ngTemplateOutlet", ctx_r2.prevTplRef() ?? null);
|
|
101
|
+
} }
|
|
102
|
+
function SdDataSheetControl_ng_template_3_Conditional_2_ng_template_0_Template(rf, ctx) { }
|
|
103
|
+
function SdDataSheetControl_ng_template_3_Conditional_2_Template(rf, ctx) { if (rf & 1) {
|
|
104
|
+
i0.ɵɵtemplate(0, SdDataSheetControl_ng_template_3_Conditional_2_ng_template_0_Template, 0, 0, "ng-template", 10);
|
|
105
|
+
} if (rf & 2) {
|
|
106
|
+
const ctx_r2 = i0.ɵɵnextContext(2);
|
|
107
|
+
i0.ɵɵproperty("ngTemplateOutlet", ctx_r2.prevTplRef() ?? null);
|
|
108
|
+
} }
|
|
109
|
+
function SdDataSheetControl_ng_template_3_Conditional_3_ng_template_7_Template(rf, ctx) { }
|
|
110
|
+
function SdDataSheetControl_ng_template_3_Conditional_3_Template(rf, ctx) { if (rf & 1) {
|
|
111
|
+
const _r6 = i0.ɵɵgetCurrentView();
|
|
112
|
+
i0.ɵɵelementStart(0, "div", 13)(1, "sd-form", 20);
|
|
113
|
+
i0.ɵɵlistener("formSubmit", function SdDataSheetControl_ng_template_3_Conditional_3_Template_sd_form_formSubmit_1_listener() { i0.ɵɵrestoreView(_r6); const ctx_r2 = i0.ɵɵnextContext(2); return i0.ɵɵresetView(ctx_r2.onFilterSubmit()); });
|
|
114
|
+
i0.ɵɵelementStart(2, "div", 21)(3, "div")(4, "sd-button", 22);
|
|
115
|
+
i0.ɵɵelement(5, "ng-icon", 9);
|
|
116
|
+
i0.ɵɵtext(6, " \uC870\uD68C ");
|
|
117
|
+
i0.ɵɵelementEnd()();
|
|
118
|
+
i0.ɵɵtemplate(7, SdDataSheetControl_ng_template_3_Conditional_3_ng_template_7_Template, 0, 0, "ng-template", 10);
|
|
119
|
+
i0.ɵɵelementEnd()()();
|
|
120
|
+
} if (rf & 2) {
|
|
121
|
+
const ctx_r2 = i0.ɵɵnextContext(2);
|
|
122
|
+
i0.ɵɵadvance(4);
|
|
123
|
+
i0.ɵɵproperty("type", "submit")("theme", "info");
|
|
124
|
+
i0.ɵɵadvance();
|
|
125
|
+
i0.ɵɵproperty("svg", ctx_r2.icons.tablerSearch);
|
|
126
|
+
i0.ɵɵadvance(2);
|
|
127
|
+
i0.ɵɵproperty("ngTemplateOutlet", ctx_r2.filterTplRef());
|
|
128
|
+
} }
|
|
129
|
+
function SdDataSheetControl_ng_template_3_Conditional_4_Conditional_0_Conditional_1_Conditional_0_Template(rf, ctx) { if (rf & 1) {
|
|
130
|
+
const _r7 = i0.ɵɵgetCurrentView();
|
|
131
|
+
i0.ɵɵelementStart(0, "sd-button", 19);
|
|
132
|
+
i0.ɵɵlistener("click", function SdDataSheetControl_ng_template_3_Conditional_4_Conditional_0_Conditional_1_Conditional_0_Template_sd_button_click_0_listener() { i0.ɵɵrestoreView(_r7); const ctx_r2 = i0.ɵɵnextContext(5); return i0.ɵɵresetView(ctx_r2.onCreateItemButtonClick()); });
|
|
133
|
+
i0.ɵɵelement(1, "ng-icon", 9);
|
|
134
|
+
i0.ɵɵtext(2);
|
|
135
|
+
i0.ɵɵelementEnd();
|
|
136
|
+
} if (rf & 2) {
|
|
137
|
+
const ctx_r2 = i0.ɵɵnextContext(5);
|
|
138
|
+
i0.ɵɵproperty("size", "sm")("theme", "link-primary");
|
|
139
|
+
i0.ɵɵadvance();
|
|
140
|
+
i0.ɵɵproperty("svg", ctx_r2.icons.tablerCirclePlus);
|
|
141
|
+
i0.ɵɵadvance();
|
|
142
|
+
i0.ɵɵtextInterpolate1(" ", ctx_r2.insertText() ?? "\uB4F1\uB85D", " ");
|
|
143
|
+
} }
|
|
144
|
+
function SdDataSheetControl_ng_template_3_Conditional_4_Conditional_0_Conditional_1_Conditional_1_Template(rf, ctx) { if (rf & 1) {
|
|
145
|
+
const _r8 = i0.ɵɵgetCurrentView();
|
|
146
|
+
i0.ɵɵelementStart(0, "sd-button", 19);
|
|
147
|
+
i0.ɵɵlistener("click", function SdDataSheetControl_ng_template_3_Conditional_4_Conditional_0_Conditional_1_Conditional_1_Template_sd_button_click_0_listener() { i0.ɵɵrestoreView(_r8); const ctx_r2 = i0.ɵɵnextContext(5); return i0.ɵɵresetView(ctx_r2.onAddItemButtonClick()); });
|
|
148
|
+
i0.ɵɵelement(1, "ng-icon", 9);
|
|
149
|
+
i0.ɵɵtext(2, " \uD589 \uCD94\uAC00 ");
|
|
150
|
+
i0.ɵɵelementEnd();
|
|
151
|
+
} if (rf & 2) {
|
|
152
|
+
const ctx_r2 = i0.ɵɵnextContext(5);
|
|
153
|
+
i0.ɵɵproperty("size", "sm")("theme", "link-primary");
|
|
154
|
+
i0.ɵɵadvance();
|
|
155
|
+
i0.ɵɵproperty("svg", ctx_r2.icons.tablerCirclePlus);
|
|
156
|
+
} }
|
|
157
|
+
function SdDataSheetControl_ng_template_3_Conditional_4_Conditional_0_Conditional_1_Template(rf, ctx) { if (rf & 1) {
|
|
158
|
+
i0.ɵɵconditionalCreate(0, SdDataSheetControl_ng_template_3_Conditional_4_Conditional_0_Conditional_1_Conditional_0_Template, 3, 4, "sd-button", 24)(1, SdDataSheetControl_ng_template_3_Conditional_4_Conditional_0_Conditional_1_Conditional_1_Template, 3, 3, "sd-button", 24);
|
|
159
|
+
} if (rf & 2) {
|
|
160
|
+
const ctx_r2 = i0.ɵɵnextContext(4);
|
|
161
|
+
i0.ɵɵconditional(ctx_r2.parent.editMode === "modal" && ctx_r2.parent.editItem ? 0 : ctx_r2.parent.editMode === "inline" && ctx_r2.parent.newItem ? 1 : -1);
|
|
162
|
+
} }
|
|
163
|
+
function SdDataSheetControl_ng_template_3_Conditional_4_Conditional_0_ng_template_2_Template(rf, ctx) { }
|
|
164
|
+
function SdDataSheetControl_ng_template_3_Conditional_4_Conditional_0_Conditional_3_Conditional_0_Conditional_3_Template(rf, ctx) { if (rf & 1) {
|
|
165
|
+
const _r10 = i0.ɵɵgetCurrentView();
|
|
166
|
+
i0.ɵɵelementStart(0, "sd-button", 19);
|
|
167
|
+
i0.ɵɵlistener("click", function SdDataSheetControl_ng_template_3_Conditional_4_Conditional_0_Conditional_3_Conditional_0_Conditional_3_Template_sd_button_click_0_listener() { i0.ɵɵrestoreView(_r10); const ctx_r2 = i0.ɵɵnextContext(6); return i0.ɵɵresetView(ctx_r2.onToggleDeleteItemsButtonClick(false)); });
|
|
168
|
+
i0.ɵɵelement(1, "ng-icon", 9);
|
|
169
|
+
i0.ɵɵtext(2);
|
|
170
|
+
i0.ɵɵelementEnd();
|
|
171
|
+
} if (rf & 2) {
|
|
172
|
+
const ctx_r2 = i0.ɵɵnextContext(6);
|
|
173
|
+
i0.ɵɵproperty("size", "sm")("theme", "link-warning");
|
|
174
|
+
i0.ɵɵadvance();
|
|
175
|
+
i0.ɵɵproperty("svg", ctx_r2.restoreIcon());
|
|
176
|
+
i0.ɵɵadvance();
|
|
177
|
+
i0.ɵɵtextInterpolate1(" \uC120\uD0DD ", ctx_r2.restoreText() ?? "\uBCF5\uAD6C", " ");
|
|
178
|
+
} }
|
|
179
|
+
function SdDataSheetControl_ng_template_3_Conditional_4_Conditional_0_Conditional_3_Conditional_0_Template(rf, ctx) { if (rf & 1) {
|
|
180
|
+
const _r9 = i0.ɵɵgetCurrentView();
|
|
181
|
+
i0.ɵɵelementStart(0, "sd-button", 25);
|
|
182
|
+
i0.ɵɵlistener("click", function SdDataSheetControl_ng_template_3_Conditional_4_Conditional_0_Conditional_3_Conditional_0_Template_sd_button_click_0_listener() { i0.ɵɵrestoreView(_r9); const ctx_r2 = i0.ɵɵnextContext(5); return i0.ɵɵresetView(ctx_r2.onToggleDeleteItemsButtonClick(true)); });
|
|
183
|
+
i0.ɵɵelement(1, "ng-icon", 9);
|
|
184
|
+
i0.ɵɵtext(2);
|
|
185
|
+
i0.ɵɵelementEnd();
|
|
186
|
+
i0.ɵɵconditionalCreate(3, SdDataSheetControl_ng_template_3_Conditional_4_Conditional_0_Conditional_3_Conditional_0_Conditional_3_Template, 3, 4, "sd-button", 24);
|
|
187
|
+
} if (rf & 2) {
|
|
188
|
+
const ctx_r2 = i0.ɵɵnextContext(5);
|
|
189
|
+
i0.ɵɵproperty("size", "sm")("theme", "link-danger")("disabled", !ctx_r2.parent.isSelectedItemsHasNotDeleted());
|
|
190
|
+
i0.ɵɵadvance();
|
|
191
|
+
i0.ɵɵproperty("svg", ctx_r2.deleteIcon());
|
|
192
|
+
i0.ɵɵadvance();
|
|
193
|
+
i0.ɵɵtextInterpolate1(" \uC120\uD0DD ", ctx_r2.deleteText() ?? "\uC0AD\uC81C", " ");
|
|
194
|
+
i0.ɵɵadvance();
|
|
195
|
+
i0.ɵɵconditional(ctx_r2.parent.isSelectedItemsHasDeleted() ? 3 : -1);
|
|
196
|
+
} }
|
|
197
|
+
function SdDataSheetControl_ng_template_3_Conditional_4_Conditional_0_Conditional_3_Conditional_1_Template(rf, ctx) { if (rf & 1) {
|
|
198
|
+
const _r11 = i0.ɵɵgetCurrentView();
|
|
199
|
+
i0.ɵɵelementStart(0, "sd-button", 19);
|
|
200
|
+
i0.ɵɵlistener("click", function SdDataSheetControl_ng_template_3_Conditional_4_Conditional_0_Conditional_3_Conditional_1_Template_sd_button_click_0_listener() { i0.ɵɵrestoreView(_r11); const ctx_r2 = i0.ɵɵnextContext(5); return i0.ɵɵresetView(ctx_r2.onUploadExcelButtonClick()); });
|
|
201
|
+
i0.ɵɵelement(1, "ng-icon", 9);
|
|
202
|
+
i0.ɵɵtext(2, " \uC5D1\uC140 \uC5C5\uB85C\uB4DC ");
|
|
203
|
+
i0.ɵɵelementEnd();
|
|
204
|
+
} if (rf & 2) {
|
|
205
|
+
const ctx_r2 = i0.ɵɵnextContext(5);
|
|
206
|
+
i0.ɵɵproperty("size", "sm")("theme", "link-success");
|
|
207
|
+
i0.ɵɵadvance();
|
|
208
|
+
i0.ɵɵproperty("svg", ctx_r2.icons.tablerUpload);
|
|
209
|
+
} }
|
|
210
|
+
function SdDataSheetControl_ng_template_3_Conditional_4_Conditional_0_Conditional_3_Template(rf, ctx) { if (rf & 1) {
|
|
211
|
+
i0.ɵɵconditionalCreate(0, SdDataSheetControl_ng_template_3_Conditional_4_Conditional_0_Conditional_3_Conditional_0_Template, 4, 6);
|
|
212
|
+
i0.ɵɵconditionalCreate(1, SdDataSheetControl_ng_template_3_Conditional_4_Conditional_0_Conditional_3_Conditional_1_Template, 3, 3, "sd-button", 24);
|
|
213
|
+
} if (rf & 2) {
|
|
214
|
+
const ctx_r2 = i0.ɵɵnextContext(4);
|
|
215
|
+
i0.ɵɵconditional(ctx_r2.parent.editMode === "modal" && ctx_r2.parent.toggleDeleteItems ? 0 : -1);
|
|
216
|
+
i0.ɵɵadvance();
|
|
217
|
+
i0.ɵɵconditional(ctx_r2.parent.uploadExcel ? 1 : -1);
|
|
218
|
+
} }
|
|
219
|
+
function SdDataSheetControl_ng_template_3_Conditional_4_Conditional_0_Conditional_4_Template(rf, ctx) { if (rf & 1) {
|
|
220
|
+
const _r12 = i0.ɵɵgetCurrentView();
|
|
221
|
+
i0.ɵɵelementStart(0, "sd-button", 19);
|
|
222
|
+
i0.ɵɵlistener("click", function SdDataSheetControl_ng_template_3_Conditional_4_Conditional_0_Conditional_4_Template_sd_button_click_0_listener() { i0.ɵɵrestoreView(_r12); const ctx_r2 = i0.ɵɵnextContext(4); return i0.ɵɵresetView(ctx_r2.onDownloadExcelButtonClick()); });
|
|
223
|
+
i0.ɵɵelement(1, "ng-icon", 9);
|
|
224
|
+
i0.ɵɵtext(2, " \uC5D1\uC140 \uB2E4\uC6B4\uB85C\uB4DC ");
|
|
225
|
+
i0.ɵɵelementEnd();
|
|
226
|
+
} if (rf & 2) {
|
|
227
|
+
const ctx_r2 = i0.ɵɵnextContext(4);
|
|
228
|
+
i0.ɵɵproperty("size", "sm")("theme", "link-success");
|
|
229
|
+
i0.ɵɵadvance();
|
|
230
|
+
i0.ɵɵproperty("svg", ctx_r2.icons.tablerFileExcel);
|
|
231
|
+
} }
|
|
232
|
+
function SdDataSheetControl_ng_template_3_Conditional_4_Conditional_0_ng_template_5_Template(rf, ctx) { }
|
|
233
|
+
function SdDataSheetControl_ng_template_3_Conditional_4_Conditional_0_Template(rf, ctx) { if (rf & 1) {
|
|
234
|
+
i0.ɵɵelementStart(0, "div", 23);
|
|
235
|
+
i0.ɵɵconditionalCreate(1, SdDataSheetControl_ng_template_3_Conditional_4_Conditional_0_Conditional_1_Template, 2, 1);
|
|
236
|
+
i0.ɵɵtemplate(2, SdDataSheetControl_ng_template_3_Conditional_4_Conditional_0_ng_template_2_Template, 0, 0, "ng-template", 10);
|
|
237
|
+
i0.ɵɵconditionalCreate(3, SdDataSheetControl_ng_template_3_Conditional_4_Conditional_0_Conditional_3_Template, 2, 2);
|
|
238
|
+
i0.ɵɵconditionalCreate(4, SdDataSheetControl_ng_template_3_Conditional_4_Conditional_0_Conditional_4_Template, 3, 3, "sd-button", 24);
|
|
239
|
+
i0.ɵɵtemplate(5, SdDataSheetControl_ng_template_3_Conditional_4_Conditional_0_ng_template_5_Template, 0, 0, "ng-template", 10);
|
|
240
|
+
i0.ɵɵelementEnd();
|
|
241
|
+
} if (rf & 2) {
|
|
242
|
+
const ctx_r2 = i0.ɵɵnextContext(3);
|
|
243
|
+
i0.ɵɵadvance();
|
|
244
|
+
i0.ɵɵconditional(ctx_r2.parent.canEdit() ? 1 : -1);
|
|
245
|
+
i0.ɵɵadvance();
|
|
246
|
+
i0.ɵɵproperty("ngTemplateOutlet", ctx_r2.beforeToolTplRef() ?? null);
|
|
247
|
+
i0.ɵɵadvance();
|
|
248
|
+
i0.ɵɵconditional(ctx_r2.parent.canEdit() ? 3 : -1);
|
|
249
|
+
i0.ɵɵadvance();
|
|
250
|
+
i0.ɵɵconditional(ctx_r2.parent.downloadExcel ? 4 : -1);
|
|
251
|
+
i0.ɵɵadvance();
|
|
252
|
+
i0.ɵɵproperty("ngTemplateOutlet", ctx_r2.toolTplRef() ?? null);
|
|
253
|
+
} }
|
|
254
|
+
function SdDataSheetControl_ng_template_3_Conditional_4_Template(rf, ctx) { if (rf & 1) {
|
|
255
|
+
i0.ɵɵconditionalCreate(0, SdDataSheetControl_ng_template_3_Conditional_4_Conditional_0_Template, 6, 5, "div", 23);
|
|
256
|
+
} if (rf & 2) {
|
|
257
|
+
const ctx_r2 = i0.ɵɵnextContext(2);
|
|
258
|
+
i0.ɵɵconditional(ctx_r2.parent.canEdit() || ctx_r2.beforeToolTplRef() || ctx_r2.parent.downloadExcel ? 0 : -1);
|
|
259
|
+
} }
|
|
260
|
+
function SdDataSheetControl_ng_template_3_Conditional_8_ng_template_1_Template(rf, ctx) { if (rf & 1) {
|
|
261
|
+
const _r13 = i0.ɵɵgetCurrentView();
|
|
262
|
+
i0.ɵɵelementStart(0, "div", 26)(1, "sd-anchor", 27);
|
|
263
|
+
i0.ɵɵlistener("click", function SdDataSheetControl_ng_template_3_Conditional_8_ng_template_1_Template_sd_anchor_click_1_listener() { const item_r14 = i0.ɵɵrestoreView(_r13).$implicit; const ctx_r2 = i0.ɵɵnextContext(3); return i0.ɵɵresetView(ctx_r2.onToggleDeleteItemButtonClick(item_r14)); });
|
|
264
|
+
i0.ɵɵelement(2, "ng-icon", 9);
|
|
265
|
+
i0.ɵɵtext(3);
|
|
266
|
+
i0.ɵɵelementEnd()();
|
|
267
|
+
} if (rf & 2) {
|
|
268
|
+
const item_r14 = ctx.$implicit;
|
|
269
|
+
const ctx_r2 = i0.ɵɵnextContext(3);
|
|
270
|
+
i0.ɵɵadvance();
|
|
271
|
+
i0.ɵɵproperty("theme", "danger")("disabled", !ctx_r2.parent.getItemInfoFn(item_r14).canDelete);
|
|
272
|
+
i0.ɵɵadvance();
|
|
273
|
+
i0.ɵɵproperty("svg", item_r14[ctx_r2.parent.itemPropInfo.isDeleted] ? ctx_r2.restoreIcon() : ctx_r2.deleteIcon());
|
|
274
|
+
i0.ɵɵadvance();
|
|
275
|
+
i0.ɵɵtextInterpolate1(" ", item_r14[ctx_r2.parent.itemPropInfo.isDeleted] ? ctx_r2.restoreText() ?? "\uBCF5\uAD6C" : ctx_r2.deleteText() ?? "\uC0AD\uC81C", " ");
|
|
276
|
+
} }
|
|
277
|
+
function SdDataSheetControl_ng_template_3_Conditional_8_Template(rf, ctx) { if (rf & 1) {
|
|
278
|
+
i0.ɵɵelementStart(0, "sd-sheet-column", 16);
|
|
279
|
+
i0.ɵɵtemplate(1, SdDataSheetControl_ng_template_3_Conditional_8_ng_template_1_Template, 4, 4, "ng-template", null, 3, i0.ɵɵtemplateRefExtractor);
|
|
280
|
+
i0.ɵɵelementEnd();
|
|
281
|
+
} if (rf & 2) {
|
|
282
|
+
const ctx_r2 = i0.ɵɵnextContext(2);
|
|
283
|
+
i0.ɵɵproperty("fixed", true)("key", ctx_r2.parent.itemPropInfo.isDeleted);
|
|
284
|
+
} }
|
|
285
|
+
function SdDataSheetControl_ng_template_3_For_10_Conditional_1_ng_template_0_ng_template_0_Template(rf, ctx) { }
|
|
286
|
+
function SdDataSheetControl_ng_template_3_For_10_Conditional_1_ng_template_0_Template(rf, ctx) { if (rf & 1) {
|
|
287
|
+
i0.ɵɵtemplate(0, SdDataSheetControl_ng_template_3_For_10_Conditional_1_ng_template_0_ng_template_0_Template, 0, 0, "ng-template", 10);
|
|
288
|
+
} if (rf & 2) {
|
|
289
|
+
const columnControl_r15 = i0.ɵɵnextContext(2).$implicit;
|
|
290
|
+
i0.ɵɵproperty("ngTemplateOutlet", columnControl_r15.summaryTplRef());
|
|
291
|
+
} }
|
|
292
|
+
function SdDataSheetControl_ng_template_3_For_10_Conditional_1_Template(rf, ctx) { if (rf & 1) {
|
|
293
|
+
i0.ɵɵtemplate(0, SdDataSheetControl_ng_template_3_For_10_Conditional_1_ng_template_0_Template, 1, 1, "ng-template", null, 4, i0.ɵɵtemplateRefExtractor);
|
|
294
|
+
} }
|
|
295
|
+
function SdDataSheetControl_ng_template_3_For_10_ng_template_2_Conditional_0_ng_template_4_Template(rf, ctx) { }
|
|
296
|
+
function SdDataSheetControl_ng_template_3_For_10_ng_template_2_Conditional_0_Template(rf, ctx) { if (rf & 1) {
|
|
297
|
+
const _r16 = i0.ɵɵgetCurrentView();
|
|
298
|
+
i0.ɵɵelementStart(0, "sd-anchor", 30);
|
|
299
|
+
i0.ɵɵlistener("click", function SdDataSheetControl_ng_template_3_For_10_ng_template_2_Conditional_0_Template_sd_anchor_click_0_listener($event) { i0.ɵɵrestoreView(_r16); const ctx_r16 = i0.ɵɵnextContext(); const item_r18 = ctx_r16.$implicit; const index_r19 = ctx_r16.index; const ctx_r2 = i0.ɵɵnextContext(3); return i0.ɵɵresetView(ctx_r2.onEditItemButtonClick(item_r18, index_r19, $event)); });
|
|
300
|
+
i0.ɵɵelementStart(1, "div", 31);
|
|
301
|
+
i0.ɵɵelement(2, "ng-icon", 9);
|
|
302
|
+
i0.ɵɵelementEnd();
|
|
303
|
+
i0.ɵɵelementStart(3, "div", 32);
|
|
304
|
+
i0.ɵɵtemplate(4, SdDataSheetControl_ng_template_3_For_10_ng_template_2_Conditional_0_ng_template_4_Template, 0, 0, "ng-template", 29);
|
|
305
|
+
i0.ɵɵelementEnd()();
|
|
306
|
+
} if (rf & 2) {
|
|
307
|
+
const ctx_r16 = i0.ɵɵnextContext();
|
|
308
|
+
const item_r18 = ctx_r16.$implicit;
|
|
309
|
+
const index_r19 = ctx_r16.index;
|
|
310
|
+
const depth_r20 = ctx_r16.depth;
|
|
311
|
+
const edit_r21 = ctx_r16.edit;
|
|
312
|
+
const columnControl_r15 = i0.ɵɵnextContext().$implicit;
|
|
313
|
+
const ctx_r2 = i0.ɵɵnextContext(2);
|
|
314
|
+
i0.ɵɵadvance(2);
|
|
315
|
+
i0.ɵɵproperty("svg", ctx_r2.icons.tablerEdit);
|
|
316
|
+
i0.ɵɵadvance(2);
|
|
317
|
+
i0.ɵɵproperty("ngTemplateOutlet", columnControl_r15.cellTplRef())("ngTemplateOutletContext", i0.ɵɵpureFunction5(3, _c7, item_r18, item_r18, index_r19, depth_r20, edit_r21));
|
|
318
|
+
} }
|
|
319
|
+
function SdDataSheetControl_ng_template_3_For_10_ng_template_2_Conditional_1_ng_template_0_Template(rf, ctx) { }
|
|
320
|
+
function SdDataSheetControl_ng_template_3_For_10_ng_template_2_Conditional_1_Template(rf, ctx) { if (rf & 1) {
|
|
321
|
+
i0.ɵɵtemplate(0, SdDataSheetControl_ng_template_3_For_10_ng_template_2_Conditional_1_ng_template_0_Template, 0, 0, "ng-template", 29);
|
|
322
|
+
} if (rf & 2) {
|
|
323
|
+
const ctx_r16 = i0.ɵɵnextContext();
|
|
324
|
+
const item_r18 = ctx_r16.$implicit;
|
|
325
|
+
const index_r19 = ctx_r16.index;
|
|
326
|
+
const depth_r20 = ctx_r16.depth;
|
|
327
|
+
const edit_r21 = ctx_r16.edit;
|
|
328
|
+
const columnControl_r15 = i0.ɵɵnextContext().$implicit;
|
|
329
|
+
i0.ɵɵproperty("ngTemplateOutlet", columnControl_r15.cellTplRef())("ngTemplateOutletContext", i0.ɵɵpureFunction5(2, _c7, item_r18, item_r18, index_r19, depth_r20, edit_r21));
|
|
330
|
+
} }
|
|
331
|
+
function SdDataSheetControl_ng_template_3_For_10_ng_template_2_Template(rf, ctx) { if (rf & 1) {
|
|
332
|
+
i0.ɵɵconditionalCreate(0, SdDataSheetControl_ng_template_3_For_10_ng_template_2_Conditional_0_Template, 5, 9, "sd-anchor", 28)(1, SdDataSheetControl_ng_template_3_For_10_ng_template_2_Conditional_1_Template, 1, 8, null, 29);
|
|
333
|
+
} if (rf & 2) {
|
|
334
|
+
const item_r18 = ctx.$implicit;
|
|
335
|
+
const columnControl_r15 = i0.ɵɵnextContext().$implicit;
|
|
336
|
+
const ctx_r2 = i0.ɵɵnextContext(2);
|
|
337
|
+
i0.ɵɵconditional(ctx_r2.parent.editMode === "modal" && ctx_r2.parent.canEdit() && columnControl_r15.edit() && ctx_r2.parent.getItemInfoFn(item_r18).canEdit ? 0 : 1);
|
|
338
|
+
} }
|
|
339
|
+
function SdDataSheetControl_ng_template_3_For_10_Template(rf, ctx) { if (rf & 1) {
|
|
340
|
+
i0.ɵɵelementStart(0, "sd-sheet-column", 17);
|
|
341
|
+
i0.ɵɵconditionalCreate(1, SdDataSheetControl_ng_template_3_For_10_Conditional_1_Template, 2, 0);
|
|
342
|
+
i0.ɵɵtemplate(2, SdDataSheetControl_ng_template_3_For_10_ng_template_2_Template, 2, 1, "ng-template", null, 3, i0.ɵɵtemplateRefExtractor);
|
|
343
|
+
i0.ɵɵelementEnd();
|
|
344
|
+
} if (rf & 2) {
|
|
345
|
+
const columnControl_r15 = ctx.$implicit;
|
|
346
|
+
i0.ɵɵproperty("key", columnControl_r15.key())("fixed", columnControl_r15.fixed())("header", columnControl_r15.header())("width", columnControl_r15.width())("disableSorting", columnControl_r15.disableSorting())("disableResizing", columnControl_r15.disableResizing())("hidden", columnControl_r15.hidden())("collapse", columnControl_r15.collapse());
|
|
347
|
+
i0.ɵɵadvance();
|
|
348
|
+
i0.ɵɵconditional(columnControl_r15.summaryTplRef() ? 1 : -1);
|
|
349
|
+
} }
|
|
350
|
+
function SdDataSheetControl_ng_template_3_Conditional_11_ng_template_1_Template(rf, ctx) { if (rf & 1) {
|
|
351
|
+
i0.ɵɵelementStart(0, "div", 26);
|
|
352
|
+
i0.ɵɵtext(1);
|
|
353
|
+
i0.ɵɵpipe(2, "format");
|
|
354
|
+
i0.ɵɵelementEnd();
|
|
355
|
+
} if (rf & 2) {
|
|
356
|
+
const item_r22 = ctx.$implicit;
|
|
357
|
+
const ctx_r2 = i0.ɵɵnextContext(3);
|
|
358
|
+
i0.ɵɵadvance();
|
|
359
|
+
i0.ɵɵtextInterpolate1(" ", i0.ɵɵpipeBind2(2, 1, item_r22[ctx_r2.parent.itemPropInfo.lastModifiedAt], "yyyy-MM-dd HH:mm"), " ");
|
|
360
|
+
} }
|
|
361
|
+
function SdDataSheetControl_ng_template_3_Conditional_11_Template(rf, ctx) { if (rf & 1) {
|
|
362
|
+
i0.ɵɵelementStart(0, "sd-sheet-column", 18);
|
|
363
|
+
i0.ɵɵtemplate(1, SdDataSheetControl_ng_template_3_Conditional_11_ng_template_1_Template, 3, 4, "ng-template", null, 3, i0.ɵɵtemplateRefExtractor);
|
|
364
|
+
i0.ɵɵelementEnd();
|
|
365
|
+
} if (rf & 2) {
|
|
366
|
+
const ctx_r2 = i0.ɵɵnextContext(2);
|
|
367
|
+
i0.ɵɵproperty("header", "\uC218\uC815\uC77C\uC2DC")("key", ctx_r2.parent.itemPropInfo.lastModifiedAt)("hidden", true);
|
|
368
|
+
} }
|
|
369
|
+
function SdDataSheetControl_ng_template_3_Conditional_12_ng_template_1_Template(rf, ctx) { if (rf & 1) {
|
|
370
|
+
i0.ɵɵelementStart(0, "div", 26);
|
|
371
|
+
i0.ɵɵtext(1);
|
|
372
|
+
i0.ɵɵelementEnd();
|
|
373
|
+
} if (rf & 2) {
|
|
374
|
+
const item_r23 = ctx.$implicit;
|
|
375
|
+
const ctx_r2 = i0.ɵɵnextContext(3);
|
|
376
|
+
i0.ɵɵadvance();
|
|
377
|
+
i0.ɵɵtextInterpolate1(" ", item_r23[ctx_r2.parent.itemPropInfo.lastModifiedBy], " ");
|
|
378
|
+
} }
|
|
379
|
+
function SdDataSheetControl_ng_template_3_Conditional_12_Template(rf, ctx) { if (rf & 1) {
|
|
380
|
+
i0.ɵɵelementStart(0, "sd-sheet-column", 18);
|
|
381
|
+
i0.ɵɵtemplate(1, SdDataSheetControl_ng_template_3_Conditional_12_ng_template_1_Template, 2, 1, "ng-template", null, 3, i0.ɵɵtemplateRefExtractor);
|
|
382
|
+
i0.ɵɵelementEnd();
|
|
383
|
+
} if (rf & 2) {
|
|
384
|
+
const ctx_r2 = i0.ɵɵnextContext(2);
|
|
385
|
+
i0.ɵɵproperty("header", "\uC218\uC815\uC790")("key", ctx_r2.parent.itemPropInfo.lastModifiedBy)("hidden", true);
|
|
386
|
+
} }
|
|
387
|
+
function SdDataSheetControl_ng_template_3_Template(rf, ctx) { if (rf & 1) {
|
|
388
|
+
const _r4 = i0.ɵɵgetCurrentView();
|
|
389
|
+
i0.ɵɵelementStart(0, "div", 11);
|
|
390
|
+
i0.ɵɵconditionalCreate(1, SdDataSheetControl_ng_template_3_Conditional_1_Template, 12, 7, "div", 12)(2, SdDataSheetControl_ng_template_3_Conditional_2_Template, 1, 1, null, 10);
|
|
391
|
+
i0.ɵɵconditionalCreate(3, SdDataSheetControl_ng_template_3_Conditional_3_Template, 8, 4, "div", 13);
|
|
392
|
+
i0.ɵɵconditionalCreate(4, SdDataSheetControl_ng_template_3_Conditional_4_Template, 1, 1);
|
|
393
|
+
i0.ɵɵelementStart(5, "sd-form", 14, 2);
|
|
394
|
+
i0.ɵɵlistener("formSubmit", function SdDataSheetControl_ng_template_3_Template_sd_form_formSubmit_5_listener() { i0.ɵɵrestoreView(_r4); const ctx_r2 = i0.ɵɵnextContext(); return i0.ɵɵresetView(ctx_r2.onSubmit()); });
|
|
395
|
+
i0.ɵɵelementStart(7, "sd-sheet", 15);
|
|
396
|
+
i0.ɵɵtwoWayListener("currentPageChange", function SdDataSheetControl_ng_template_3_Template_sd_sheet_currentPageChange_7_listener($event) { i0.ɵɵrestoreView(_r4); const ctx_r2 = i0.ɵɵnextContext(); i0.ɵɵtwoWayBindingSet(ctx_r2.parent.page, $event) || (ctx_r2.parent.page = $event); return i0.ɵɵresetView($event); })("sortsChange", function SdDataSheetControl_ng_template_3_Template_sd_sheet_sortsChange_7_listener($event) { i0.ɵɵrestoreView(_r4); const ctx_r2 = i0.ɵɵnextContext(); i0.ɵɵtwoWayBindingSet(ctx_r2.parent.sortingDefs, $event) || (ctx_r2.parent.sortingDefs = $event); return i0.ɵɵresetView($event); })("selectedItemsChange", function SdDataSheetControl_ng_template_3_Template_sd_sheet_selectedItemsChange_7_listener($event) { i0.ɵɵrestoreView(_r4); const ctx_r2 = i0.ɵɵnextContext(); i0.ɵɵtwoWayBindingSet(ctx_r2.parent.selectedItems, $event) || (ctx_r2.parent.selectedItems = $event); return i0.ɵɵresetView($event); });
|
|
397
|
+
i0.ɵɵconditionalCreate(8, SdDataSheetControl_ng_template_3_Conditional_8_Template, 3, 2, "sd-sheet-column", 16);
|
|
398
|
+
i0.ɵɵrepeaterCreate(9, SdDataSheetControl_ng_template_3_For_10_Template, 4, 9, "sd-sheet-column", 17, _forTrack0);
|
|
399
|
+
i0.ɵɵconditionalCreate(11, SdDataSheetControl_ng_template_3_Conditional_11_Template, 3, 3, "sd-sheet-column", 18);
|
|
400
|
+
i0.ɵɵconditionalCreate(12, SdDataSheetControl_ng_template_3_Conditional_12_Template, 3, 3, "sd-sheet-column", 18);
|
|
401
|
+
i0.ɵɵelementEnd()()();
|
|
402
|
+
} if (rf & 2) {
|
|
403
|
+
const ctx_r2 = i0.ɵɵnextContext();
|
|
404
|
+
i0.ɵɵadvance();
|
|
405
|
+
i0.ɵɵconditional(ctx_r2.parent.canEdit() && ctx_r2.parent.submit && ctx_r2.parent.viewType() === "control" ? 1 : 2);
|
|
406
|
+
i0.ɵɵadvance(2);
|
|
407
|
+
i0.ɵɵconditional(ctx_r2.filterTplRef() ? 3 : -1);
|
|
408
|
+
i0.ɵɵadvance();
|
|
409
|
+
i0.ɵɵconditional(!ctx_r2.parent.hideTool || !ctx_r2.parent.hideTool() ? 4 : -1);
|
|
410
|
+
i0.ɵɵadvance(3);
|
|
411
|
+
i0.ɵɵproperty("key", ctx_r2.parent.key + "-sheet")("items", ctx_r2.parent.items());
|
|
412
|
+
i0.ɵɵtwoWayProperty("currentPage", ctx_r2.parent.page);
|
|
413
|
+
i0.ɵɵproperty("totalPageCount", ctx_r2.parent.pageLength());
|
|
414
|
+
i0.ɵɵtwoWayProperty("sorts", ctx_r2.parent.sortingDefs);
|
|
415
|
+
i0.ɵɵproperty("selectMode", ctx_r2.parent.selectMode())("autoSelect", ctx_r2.parent.autoSelect());
|
|
416
|
+
i0.ɵɵtwoWayProperty("selectedItems", ctx_r2.parent.selectedItems);
|
|
417
|
+
i0.ɵɵproperty("trackByFn", ctx_r2.parent.trackByFn)("getItemCellStyleFn", ctx_r2.parent.getItemCellStyleFn)("getItemSelectableFn", ctx_r2.parent.getItemSelectableFn);
|
|
418
|
+
i0.ɵɵadvance();
|
|
419
|
+
i0.ɵɵconditional(ctx_r2.parent.editMode === "inline" && ctx_r2.parent.canEdit() && ctx_r2.parent.itemPropInfo.isDeleted ? 8 : -1);
|
|
420
|
+
i0.ɵɵadvance();
|
|
421
|
+
i0.ɵɵrepeater(ctx_r2.columnControls());
|
|
422
|
+
i0.ɵɵadvance(2);
|
|
423
|
+
i0.ɵɵconditional(ctx_r2.parent.itemPropInfo.lastModifiedAt ? 11 : -1);
|
|
424
|
+
i0.ɵɵadvance();
|
|
425
|
+
i0.ɵɵconditional(ctx_r2.parent.itemPropInfo.lastModifiedBy ? 12 : -1);
|
|
426
|
+
} }
|
|
427
|
+
function SdDataSheetControl_Conditional_5_ng_template_0_Conditional_2_ng_template_0_Template(rf, ctx) { }
|
|
428
|
+
function SdDataSheetControl_Conditional_5_ng_template_0_Conditional_2_Template(rf, ctx) { if (rf & 1) {
|
|
429
|
+
i0.ɵɵtemplate(0, SdDataSheetControl_Conditional_5_ng_template_0_Conditional_2_ng_template_0_Template, 0, 0, "ng-template", 10);
|
|
430
|
+
} if (rf & 2) {
|
|
431
|
+
const ctx_r2 = i0.ɵɵnextContext(3);
|
|
432
|
+
i0.ɵɵproperty("ngTemplateOutlet", ctx_r2.modalBottomTplRef());
|
|
433
|
+
} }
|
|
434
|
+
function SdDataSheetControl_Conditional_5_ng_template_0_Conditional_3_Template(rf, ctx) { if (rf & 1) {
|
|
435
|
+
const _r24 = i0.ɵɵgetCurrentView();
|
|
436
|
+
i0.ɵɵelementStart(0, "sd-button", 19);
|
|
437
|
+
i0.ɵɵlistener("click", function SdDataSheetControl_Conditional_5_ng_template_0_Conditional_3_Template_sd_button_click_0_listener() { i0.ɵɵrestoreView(_r24); const ctx_r2 = i0.ɵɵnextContext(3); return i0.ɵɵresetView(ctx_r2.onCancelButtonClick()); });
|
|
438
|
+
i0.ɵɵtext(1);
|
|
439
|
+
i0.ɵɵelementEnd();
|
|
440
|
+
} if (rf & 2) {
|
|
441
|
+
const ctx_r2 = i0.ɵɵnextContext(3);
|
|
442
|
+
i0.ɵɵproperty("size", "sm")("theme", "danger");
|
|
443
|
+
i0.ɵɵadvance();
|
|
444
|
+
i0.ɵɵtextInterpolate1(" ", ctx_r2.parent.selectMode() === "multi" ? "\uBAA8\uB450" : "\uC120\uD0DD", " \uD574\uC81C ");
|
|
445
|
+
} }
|
|
446
|
+
function SdDataSheetControl_Conditional_5_ng_template_0_Conditional_4_Template(rf, ctx) { if (rf & 1) {
|
|
447
|
+
const _r25 = i0.ɵɵgetCurrentView();
|
|
448
|
+
i0.ɵɵelementStart(0, "sd-button", 19);
|
|
449
|
+
i0.ɵɵlistener("click", function SdDataSheetControl_Conditional_5_ng_template_0_Conditional_4_Template_sd_button_click_0_listener() { i0.ɵɵrestoreView(_r25); const ctx_r2 = i0.ɵɵnextContext(3); return i0.ɵɵresetView(ctx_r2.onConfirmButtonClick()); });
|
|
450
|
+
i0.ɵɵtext(1);
|
|
451
|
+
i0.ɵɵelementEnd();
|
|
452
|
+
} if (rf & 2) {
|
|
453
|
+
const ctx_r2 = i0.ɵɵnextContext(3);
|
|
454
|
+
i0.ɵɵproperty("size", "sm")("theme", "primary");
|
|
455
|
+
i0.ɵɵadvance();
|
|
456
|
+
i0.ɵɵtextInterpolate1(" \uD655\uC778(", ctx_r2.parent.selectedItemKeys().length, ") ");
|
|
457
|
+
} }
|
|
458
|
+
function SdDataSheetControl_Conditional_5_ng_template_0_Template(rf, ctx) { if (rf & 1) {
|
|
459
|
+
i0.ɵɵelementStart(0, "div", 33)(1, "div", 34);
|
|
460
|
+
i0.ɵɵconditionalCreate(2, SdDataSheetControl_Conditional_5_ng_template_0_Conditional_2_Template, 1, 1, null, 10);
|
|
461
|
+
i0.ɵɵelementEnd();
|
|
462
|
+
i0.ɵɵconditionalCreate(3, SdDataSheetControl_Conditional_5_ng_template_0_Conditional_3_Template, 2, 3, "sd-button", 24);
|
|
463
|
+
i0.ɵɵconditionalCreate(4, SdDataSheetControl_Conditional_5_ng_template_0_Conditional_4_Template, 2, 3, "sd-button", 24);
|
|
464
|
+
i0.ɵɵelementEnd();
|
|
465
|
+
} if (rf & 2) {
|
|
466
|
+
const ctx_r2 = i0.ɵɵnextContext(2);
|
|
467
|
+
i0.ɵɵadvance(2);
|
|
468
|
+
i0.ɵɵconditional(ctx_r2.modalBottomTplRef() ? 2 : -1);
|
|
469
|
+
i0.ɵɵadvance();
|
|
470
|
+
i0.ɵɵconditional(ctx_r2.parent.selectedItemKeys().length > 0 ? 3 : -1);
|
|
471
|
+
i0.ɵɵadvance();
|
|
472
|
+
i0.ɵɵconditional(ctx_r2.parent.selectMode() === "multi" ? 4 : -1);
|
|
473
|
+
} }
|
|
474
|
+
function SdDataSheetControl_Conditional_5_Template(rf, ctx) { if (rf & 1) {
|
|
475
|
+
i0.ɵɵtemplate(0, SdDataSheetControl_Conditional_5_ng_template_0_Template, 5, 3, "ng-template", null, 5, i0.ɵɵtemplateRefExtractor);
|
|
476
|
+
} }
|
|
477
|
+
//#endregion
|
|
478
|
+
//#region AbsSdDataSheet
|
|
479
|
+
export class AbsSdDataSheet {
|
|
480
|
+
hideTool;
|
|
481
|
+
diffsExcludes;
|
|
482
|
+
//-- injected
|
|
483
|
+
_sdToast = inject(SdToastProvider);
|
|
484
|
+
_sdSharedData = inject(SdSharedDataProvider);
|
|
485
|
+
_sdFileDialog = inject(SdFileDialogProvider);
|
|
486
|
+
//-- state
|
|
487
|
+
key = reflectComponentType(this.constructor)?.selector;
|
|
488
|
+
viewType = useViewTypeSignal(() => this);
|
|
489
|
+
busyCount = signal(0, ...(ngDevMode ? [{ debugName: "busyCount" }] : /* istanbul ignore next */ []));
|
|
490
|
+
busyMessage = signal(undefined, ...(ngDevMode ? [{ debugName: "busyMessage" }] : /* istanbul ignore next */ []));
|
|
491
|
+
initialized = signal(false, ...(ngDevMode ? [{ debugName: "initialized" }] : /* istanbul ignore next */ []));
|
|
492
|
+
close = output();
|
|
493
|
+
submitted = output();
|
|
494
|
+
selectedItemKeys = model([], ...(ngDevMode ? [{ debugName: "selectedItemKeys" }] : /* istanbul ignore next */ []));
|
|
495
|
+
actionTplRef;
|
|
496
|
+
autoSelect = computed(() => (!this.canEdit() || this.editMode === "modal") && this.selectMode() === "single"
|
|
497
|
+
? "click"
|
|
498
|
+
: undefined, ...(ngDevMode ? [{ debugName: "autoSelect" }] : /* istanbul ignore next */ []));
|
|
499
|
+
items = signal([], ...(ngDevMode ? [{ debugName: "items" }] : /* istanbul ignore next */ []));
|
|
500
|
+
summaryData = signal({}, ...(ngDevMode ? [{ debugName: "summaryData" }] : /* istanbul ignore next */ []));
|
|
501
|
+
selectedItems = signal([], ...(ngDevMode ? [{ debugName: "selectedItems" }] : /* istanbul ignore next */ []));
|
|
502
|
+
trackByFn = (item) => this.getItemInfoFn(item).key ?? item;
|
|
503
|
+
page = signal(0, ...(ngDevMode ? [{ debugName: "page" }] : /* istanbul ignore next */ []));
|
|
504
|
+
pageLength = signal(0, ...(ngDevMode ? [{ debugName: "pageLength" }] : /* istanbul ignore next */ []));
|
|
505
|
+
sortingDefs = signal([], ...(ngDevMode ? [{ debugName: "sortingDefs" }] : /* istanbul ignore next */ []));
|
|
506
|
+
filter = signal({}, ...(ngDevMode ? [{ debugName: "filter" }] : /* istanbul ignore next */ []));
|
|
507
|
+
lastFilter = signal({}, ...(ngDevMode ? [{ debugName: "lastFilter" }] : /* istanbul ignore next */ []));
|
|
508
|
+
//-- change tracking
|
|
509
|
+
_itemsSnapshot = [];
|
|
510
|
+
//-- computed
|
|
511
|
+
isSelectedItemsHasDeleted = computed(() => this.selectedItems().some((item) => this.itemPropInfo.isDeleted != null &&
|
|
512
|
+
item[this.itemPropInfo.isDeleted]), ...(ngDevMode ? [{ debugName: "isSelectedItemsHasDeleted" }] : /* istanbul ignore next */ []));
|
|
513
|
+
isSelectedItemsHasNotDeleted = computed(() => this.selectedItems().some((item) => this.itemPropInfo.isDeleted == null ||
|
|
514
|
+
!item[this.itemPropInfo.isDeleted]), ...(ngDevMode ? [{ debugName: "isSelectedItemsHasNotDeleted" }] : /* istanbul ignore next */ []));
|
|
515
|
+
getItemCellStyleFn = (item) => this.itemPropInfo.isDeleted != null && item[this.itemPropInfo.isDeleted]
|
|
516
|
+
? "text-decoration: line-through;"
|
|
517
|
+
: undefined;
|
|
518
|
+
getItemSelectableFn = (item) => this.getItemInfoFn(item).canSelect;
|
|
519
|
+
constructor() {
|
|
520
|
+
setupCumulateSelectedKeys({
|
|
521
|
+
items: this.items,
|
|
522
|
+
selectedItems: this.selectedItems,
|
|
523
|
+
selectedItemKeys: this.selectedItemKeys,
|
|
524
|
+
selectMode: () => this.selectMode(),
|
|
525
|
+
keySelectorFn: (item) => this.getItemInfoFn(item).key,
|
|
526
|
+
});
|
|
527
|
+
setupCloserWhenSingleSelectionChange({
|
|
528
|
+
selectedItemKeys: this.selectedItemKeys,
|
|
529
|
+
selectedItems: this.selectedItems,
|
|
530
|
+
selectMode: () => this.selectMode(),
|
|
531
|
+
close: this.close,
|
|
532
|
+
});
|
|
533
|
+
effect(() => {
|
|
534
|
+
const filter = this.bindFilter();
|
|
535
|
+
this.filter.set(filter);
|
|
536
|
+
this.lastFilter.set(obj.clone(filter));
|
|
537
|
+
});
|
|
538
|
+
effect(() => {
|
|
539
|
+
this.page();
|
|
540
|
+
this.lastFilter();
|
|
541
|
+
this.sortingDefs();
|
|
542
|
+
this.prepareRefreshEffect?.();
|
|
543
|
+
queueMicrotask(async () => {
|
|
544
|
+
if (!this.canUse()) {
|
|
545
|
+
this.initialized.set(true);
|
|
546
|
+
return;
|
|
547
|
+
}
|
|
548
|
+
this.busyCount.update((v) => v + 1);
|
|
549
|
+
await this._sdToast.try(async () => {
|
|
550
|
+
await this._sdSharedData.wait();
|
|
551
|
+
await this.refresh();
|
|
552
|
+
});
|
|
553
|
+
this.busyCount.update((v) => v - 1);
|
|
554
|
+
this.initialized.set(true);
|
|
555
|
+
});
|
|
556
|
+
});
|
|
557
|
+
setupCanDeactivate(() => this.viewType() === "modal" || this.checkIgnoreChanges());
|
|
558
|
+
}
|
|
559
|
+
//-- query
|
|
560
|
+
checkIgnoreChanges() {
|
|
561
|
+
return this._getDiffs().length === 0 || confirm(TXT_CHANGE_IGNORE_CONFIRM);
|
|
562
|
+
}
|
|
563
|
+
doFilterSubmit() {
|
|
564
|
+
if (this.busyCount() > 0)
|
|
565
|
+
return;
|
|
566
|
+
if (!this.canUse())
|
|
567
|
+
return;
|
|
568
|
+
if (!this.checkIgnoreChanges())
|
|
569
|
+
return;
|
|
570
|
+
this.page.set(0);
|
|
571
|
+
this.lastFilter.set(obj.clone(this.filter()));
|
|
572
|
+
}
|
|
573
|
+
doRefresh() {
|
|
574
|
+
if (this.busyCount() > 0)
|
|
575
|
+
return;
|
|
576
|
+
if (!this.canUse())
|
|
577
|
+
return;
|
|
578
|
+
if (!this.checkIgnoreChanges())
|
|
579
|
+
return;
|
|
580
|
+
this.lastFilter.update((v) => ({ ...v }));
|
|
581
|
+
}
|
|
582
|
+
async refresh() {
|
|
583
|
+
const result = await this.search(true);
|
|
584
|
+
this.items.set(result.items);
|
|
585
|
+
this._itemsSnapshot = obj.clone(result.items);
|
|
586
|
+
this.pageLength.set(result.pageLength ?? 0);
|
|
587
|
+
this.summaryData.set(result.summary ?? {});
|
|
588
|
+
this.selectedItems.set(this.items().filter((item) => this.selectedItems().some((sel) => this.getItemInfoFn(sel).key === this.getItemInfoFn(item).key)));
|
|
589
|
+
}
|
|
590
|
+
//-- inline edit
|
|
591
|
+
async doAddItem() {
|
|
592
|
+
if (!this.newItem)
|
|
593
|
+
return;
|
|
594
|
+
this.busyCount.update((v) => v + 1);
|
|
595
|
+
await this._sdToast.try(async () => {
|
|
596
|
+
const newItem = await this.newItem();
|
|
597
|
+
this.items.update((items) => [newItem, ...items]);
|
|
598
|
+
});
|
|
599
|
+
this.busyCount.update((v) => v - 1);
|
|
600
|
+
}
|
|
601
|
+
async doSubmit(opt) {
|
|
602
|
+
if (this.busyCount() > 0)
|
|
603
|
+
return;
|
|
604
|
+
if (opt?.permCheck && !this.canEdit())
|
|
605
|
+
return;
|
|
606
|
+
if (!this.submit)
|
|
607
|
+
return;
|
|
608
|
+
const diffs = this._getDiffs();
|
|
609
|
+
if (diffs.length === 0) {
|
|
610
|
+
if (!opt?.hideNoChangeMessage) {
|
|
611
|
+
this._sdToast.info("변경사항이 없습니다.");
|
|
612
|
+
}
|
|
613
|
+
return;
|
|
614
|
+
}
|
|
615
|
+
this.busyCount.update((v) => v + 1);
|
|
616
|
+
await this._sdToast.try(async () => {
|
|
617
|
+
const result = await this.submit(diffs);
|
|
618
|
+
if (!result)
|
|
619
|
+
return;
|
|
620
|
+
this._sdToast.success("저장되었습니다.");
|
|
621
|
+
await this.refresh();
|
|
622
|
+
}, (err) => this._getOrmDataEditToastErrorMessage(err));
|
|
623
|
+
this.busyCount.update((v) => v - 1);
|
|
624
|
+
this.submitted.emit(true);
|
|
625
|
+
}
|
|
626
|
+
doToggleDeleteItem(item) {
|
|
627
|
+
if (!this.canEdit())
|
|
628
|
+
return;
|
|
629
|
+
if (this.itemPropInfo.isDeleted == null)
|
|
630
|
+
return;
|
|
631
|
+
if (this.getItemInfoFn(item).key == null) {
|
|
632
|
+
this.items.update((items) => items.filter((item1) => item1 !== item));
|
|
633
|
+
return;
|
|
634
|
+
}
|
|
635
|
+
item[this.itemPropInfo.isDeleted] = !item[this.itemPropInfo.isDeleted];
|
|
636
|
+
this.items.update((v) => [...v]);
|
|
637
|
+
}
|
|
638
|
+
//-- modal edit
|
|
639
|
+
async doEditItem(item) {
|
|
640
|
+
if (!this.editItem)
|
|
641
|
+
return;
|
|
642
|
+
const result = await this.editItem(item);
|
|
643
|
+
if (!result)
|
|
644
|
+
return;
|
|
645
|
+
this.busyCount.update((v) => v + 1);
|
|
646
|
+
await this._sdToast.try(async () => {
|
|
647
|
+
await this.refresh();
|
|
648
|
+
});
|
|
649
|
+
this.busyCount.update((v) => v - 1);
|
|
650
|
+
}
|
|
651
|
+
async doToggleDeleteItems(del) {
|
|
652
|
+
if (!this.canEdit())
|
|
653
|
+
return;
|
|
654
|
+
if (!this.toggleDeleteItems)
|
|
655
|
+
return;
|
|
656
|
+
this.busyCount.update((v) => v + 1);
|
|
657
|
+
await this._sdToast.try(async () => {
|
|
658
|
+
const result = await this.toggleDeleteItems(del);
|
|
659
|
+
if (!result)
|
|
660
|
+
return;
|
|
661
|
+
await this.refresh();
|
|
662
|
+
this._sdToast.success(`${del ? "삭제" : "복구"} 되었습니다.`);
|
|
663
|
+
}, (err) => this._getOrmDataEditToastErrorMessage(err));
|
|
664
|
+
this.busyCount.update((v) => v - 1);
|
|
665
|
+
}
|
|
666
|
+
//-- excel
|
|
667
|
+
async doDownloadExcel() {
|
|
668
|
+
if (!this.downloadExcel)
|
|
669
|
+
return;
|
|
670
|
+
this.busyCount.update((v) => v + 1);
|
|
671
|
+
await this._sdToast.try(async () => {
|
|
672
|
+
const items = (await this.search(false)).items;
|
|
673
|
+
await this.downloadExcel(items);
|
|
674
|
+
});
|
|
675
|
+
this.busyCount.update((v) => v - 1);
|
|
676
|
+
}
|
|
677
|
+
async doUploadExcel() {
|
|
678
|
+
if (!this.uploadExcel)
|
|
679
|
+
return;
|
|
680
|
+
const file = await this._sdFileDialog.showAsync(false, "application/vnd.openxmlformats-officedocument.spreadsheetml.sheet");
|
|
681
|
+
if (!file)
|
|
682
|
+
return;
|
|
683
|
+
this.busyCount.update((v) => v + 1);
|
|
684
|
+
await this._sdToast.try(async () => {
|
|
685
|
+
await this.uploadExcel(file);
|
|
686
|
+
await this.refresh();
|
|
687
|
+
this._sdToast.success("엑셀 업로드가 완료 되었습니다.");
|
|
688
|
+
}, (err) => this._getOrmDataEditToastErrorMessage(err));
|
|
689
|
+
this.busyCount.update((v) => v - 1);
|
|
690
|
+
}
|
|
691
|
+
//-- modal selection
|
|
692
|
+
doModalConfirm() {
|
|
693
|
+
this.close.emit({
|
|
694
|
+
selectedItemKeys: this.selectedItemKeys(),
|
|
695
|
+
selectedItems: this.selectedItems(),
|
|
696
|
+
});
|
|
697
|
+
}
|
|
698
|
+
doModalCancel() {
|
|
699
|
+
this.close.emit({
|
|
700
|
+
selectedItemKeys: [],
|
|
701
|
+
selectedItems: [],
|
|
702
|
+
});
|
|
703
|
+
}
|
|
704
|
+
//-- private
|
|
705
|
+
_getDiffs() {
|
|
706
|
+
return this.items().oneWayDiffs(this._itemsSnapshot, (item) => this.getItemInfoFn(item).key, this.diffsExcludes ? { excludes: this.diffsExcludes } : undefined).filter((d) => d.type !== "same");
|
|
707
|
+
}
|
|
708
|
+
_getOrmDataEditToastErrorMessage(err) {
|
|
709
|
+
const message = err instanceof Error ? err.message : String(err);
|
|
710
|
+
if (message.includes("a parent row: a foreign key constraint") ||
|
|
711
|
+
message.includes("conflicted with the REFERENCE")) {
|
|
712
|
+
return "경고! 연결된 작업에 의한 처리 거부. 후속작업 확인 요망";
|
|
713
|
+
}
|
|
714
|
+
return message;
|
|
715
|
+
}
|
|
716
|
+
static ɵfac = function AbsSdDataSheet_Factory(__ngFactoryType__) { return new (__ngFactoryType__ || AbsSdDataSheet)(); };
|
|
717
|
+
static ɵdir = /*@__PURE__*/ i0.ɵɵdefineDirective({ type: AbsSdDataSheet, inputs: { selectedItemKeys: [1, "selectedItemKeys"] }, outputs: { close: "close", submitted: "submitted", selectedItemKeys: "selectedItemKeysChange" } });
|
|
718
|
+
}
|
|
719
|
+
(() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(AbsSdDataSheet, [{
|
|
720
|
+
type: Directive
|
|
721
|
+
}], () => [], { close: [{ type: i0.Output, args: ["close"] }], submitted: [{ type: i0.Output, args: ["submitted"] }], selectedItemKeys: [{ type: i0.Input, args: [{ isSignal: true, alias: "selectedItemKeys", required: false }] }, { type: i0.Output, args: ["selectedItemKeysChange"] }] }); })();
|
|
722
|
+
//#endregion
|
|
723
|
+
//#region SdDataSheetControl
|
|
724
|
+
export class SdDataSheetControl {
|
|
725
|
+
parent = injectParent();
|
|
726
|
+
formCtrl = viewChild("formCtrl", ...(ngDevMode ? [{ debugName: "formCtrl" }] : /* istanbul ignore next */ []));
|
|
727
|
+
insertText = input(...(ngDevMode ? [undefined, { debugName: "insertText" }] : /* istanbul ignore next */ []));
|
|
728
|
+
deleteText = input(...(ngDevMode ? [undefined, { debugName: "deleteText" }] : /* istanbul ignore next */ []));
|
|
729
|
+
restoreText = input(...(ngDevMode ? [undefined, { debugName: "restoreText" }] : /* istanbul ignore next */ []));
|
|
730
|
+
deleteIcon = input(tablerEraser, ...(ngDevMode ? [{ debugName: "deleteIcon" }] : /* istanbul ignore next */ []));
|
|
731
|
+
restoreIcon = input(tablerRestore, ...(ngDevMode ? [{ debugName: "restoreIcon" }] : /* istanbul ignore next */ []));
|
|
732
|
+
pageTopbarTplRef = contentChild("pageTopbarTpl", { ...(ngDevMode ? { debugName: "pageTopbarTplRef" } : /* istanbul ignore next */ {}), read: TemplateRef });
|
|
733
|
+
prevTplRef = contentChild("prevTpl", { ...(ngDevMode ? { debugName: "prevTplRef" } : /* istanbul ignore next */ {}), read: TemplateRef });
|
|
734
|
+
filterTplRef = contentChild("filterTpl", { ...(ngDevMode ? { debugName: "filterTplRef" } : /* istanbul ignore next */ {}), read: TemplateRef });
|
|
735
|
+
beforeToolTplRef = contentChild("beforeToolTpl", { ...(ngDevMode ? { debugName: "beforeToolTplRef" } : /* istanbul ignore next */ {}), read: TemplateRef });
|
|
736
|
+
toolTplRef = contentChild("toolTpl", { ...(ngDevMode ? { debugName: "toolTplRef" } : /* istanbul ignore next */ {}), read: TemplateRef });
|
|
737
|
+
modalBottomTplRef = contentChild("modalBottomTpl", { ...(ngDevMode ? { debugName: "modalBottomTplRef" } : /* istanbul ignore next */ {}), read: TemplateRef });
|
|
738
|
+
columnControls = contentChildren(SdDataSheetColumnDirective, ...(ngDevMode ? [{ debugName: "columnControls" }] : /* istanbul ignore next */ []));
|
|
739
|
+
icons = {
|
|
740
|
+
tablerRefresh,
|
|
741
|
+
tablerDeviceFloppy,
|
|
742
|
+
tablerSearch,
|
|
743
|
+
tablerCirclePlus,
|
|
744
|
+
tablerUpload,
|
|
745
|
+
tablerFileExcel,
|
|
746
|
+
tablerEdit,
|
|
747
|
+
};
|
|
748
|
+
onFilterSubmit() {
|
|
749
|
+
this.parent.doFilterSubmit();
|
|
750
|
+
}
|
|
751
|
+
onRefreshButtonClick() {
|
|
752
|
+
this.parent.doRefresh();
|
|
753
|
+
}
|
|
754
|
+
async onCreateItemButtonClick() {
|
|
755
|
+
await this.parent.doEditItem();
|
|
756
|
+
}
|
|
757
|
+
async onEditItemButtonClick(item, index, event) {
|
|
758
|
+
event.preventDefault();
|
|
759
|
+
event.stopPropagation();
|
|
760
|
+
await this.parent.doEditItem(item);
|
|
761
|
+
}
|
|
762
|
+
async onToggleDeleteItemsButtonClick(del) {
|
|
763
|
+
await this.parent.doToggleDeleteItems(del);
|
|
764
|
+
}
|
|
765
|
+
onToggleDeleteItemButtonClick(item) {
|
|
766
|
+
this.parent.doToggleDeleteItem(item);
|
|
767
|
+
}
|
|
768
|
+
onSubmitButtonClick() {
|
|
769
|
+
this.formCtrl()?.requestSubmit();
|
|
770
|
+
}
|
|
771
|
+
async onSubmit() {
|
|
772
|
+
await this.parent.doSubmit({ permCheck: true });
|
|
773
|
+
}
|
|
774
|
+
async onAddItemButtonClick() {
|
|
775
|
+
await this.parent.doAddItem();
|
|
776
|
+
}
|
|
777
|
+
async onDownloadExcelButtonClick() {
|
|
778
|
+
await this.parent.doDownloadExcel();
|
|
779
|
+
}
|
|
780
|
+
async onUploadExcelButtonClick() {
|
|
781
|
+
await this.parent.doUploadExcel();
|
|
782
|
+
}
|
|
783
|
+
onConfirmButtonClick() {
|
|
784
|
+
this.parent.doModalConfirm();
|
|
785
|
+
}
|
|
786
|
+
onCancelButtonClick() {
|
|
787
|
+
this.parent.doModalCancel();
|
|
788
|
+
}
|
|
789
|
+
static ɵfac = function SdDataSheetControl_Factory(__ngFactoryType__) { return new (__ngFactoryType__ || SdDataSheetControl)(); };
|
|
790
|
+
static ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: SdDataSheetControl, selectors: [["sd-data-sheet"]], contentQueries: function SdDataSheetControl_ContentQueries(rf, ctx, dirIndex) { if (rf & 1) {
|
|
791
|
+
i0.ɵɵcontentQuerySignal(dirIndex, ctx.pageTopbarTplRef, _c0, 5, TemplateRef)(dirIndex, ctx.prevTplRef, _c1, 5, TemplateRef)(dirIndex, ctx.filterTplRef, _c2, 5, TemplateRef)(dirIndex, ctx.beforeToolTplRef, _c3, 5, TemplateRef)(dirIndex, ctx.toolTplRef, _c4, 5, TemplateRef)(dirIndex, ctx.modalBottomTplRef, _c5, 5, TemplateRef)(dirIndex, ctx.columnControls, SdDataSheetColumnDirective, 4);
|
|
792
|
+
} if (rf & 2) {
|
|
793
|
+
i0.ɵɵqueryAdvance(7);
|
|
794
|
+
} }, viewQuery: function SdDataSheetControl_Query(rf, ctx) { if (rf & 1) {
|
|
795
|
+
i0.ɵɵviewQuerySignal(ctx.formCtrl, _c6, 5);
|
|
796
|
+
} if (rf & 2) {
|
|
797
|
+
i0.ɵɵqueryAdvance();
|
|
798
|
+
} }, hostBindings: function SdDataSheetControl_HostBindings(rf, ctx) { if (rf & 1) {
|
|
799
|
+
i0.ɵɵlistener("sdRefreshCommand", function SdDataSheetControl_sdRefreshCommand_HostBindingHandler() { return ctx.onRefreshButtonClick(); })("sdSaveCommand", function SdDataSheetControl_sdSaveCommand_HostBindingHandler() { return ctx.onSubmitButtonClick(); });
|
|
800
|
+
} }, inputs: { insertText: [1, "insertText"], deleteText: [1, "deleteText"], restoreText: [1, "restoreText"], deleteIcon: [1, "deleteIcon"], restoreIcon: [1, "restoreIcon"] }, decls: 6, vars: 6, consts: [["pageTopbarTpl", ""], ["contentTpl", ""], ["formCtrl", ""], ["cellTpl", ""], ["summaryTpl", ""], ["modalBottomTpl", ""], [3, "busy", "busyMessage", "viewType", "initialized", "restricted"], [3, "theme"], [3, "click", "theme"], [3, "svg"], [3, "ngTemplateOutlet"], [1, "flex-column", "fill"], [1, "flex-row", "gap-sm", "p-default", "bdb", "bdb-theme-gray-lightest"], [1, "p-default"], [1, "flex-fill", "p-default", "pt-0", 3, "formSubmit"], [3, "currentPageChange", "sortsChange", "selectedItemsChange", "key", "items", "currentPage", "totalPageCount", "sorts", "selectMode", "autoSelect", "selectedItems", "trackByFn", "getItemCellStyleFn", "getItemSelectableFn"], [3, "fixed", "key"], [3, "key", "fixed", "header", "width", "disableSorting", "disableResizing", "hidden", "collapse"], [3, "header", "key", "hidden"], [3, "click", "size", "theme"], [3, "formSubmit"], [1, "form-box-inline"], [3, "type", "theme"], [1, "flex-row", "gap-sm", "p-xs-default"], [3, "size", "theme"], [3, "click", "size", "theme", "disabled"], [1, "p-xs-sm", "tx-center"], [3, "click", "theme", "disabled"], [1, "flex-row"], [3, "ngTemplateOutlet", "ngTemplateOutletContext"], [1, "flex-row", 3, "click"], [1, "p-xs-sm"], [1, "flex-fill"], [1, "p-sm-default", "flex-row", "gap-sm"], [1, "flex-fill", "flex-row", "gap-sm"]], template: function SdDataSheetControl_Template(rf, ctx) { if (rf & 1) {
|
|
801
|
+
i0.ɵɵelementStart(0, "sd-base-container", 6);
|
|
802
|
+
i0.ɵɵtemplate(1, SdDataSheetControl_ng_template_1_Template, 7, 4, "ng-template", null, 0, i0.ɵɵtemplateRefExtractor)(3, SdDataSheetControl_ng_template_3_Template, 13, 17, "ng-template", null, 1, i0.ɵɵtemplateRefExtractor);
|
|
803
|
+
i0.ɵɵconditionalCreate(5, SdDataSheetControl_Conditional_5_Template, 2, 0);
|
|
804
|
+
i0.ɵɵelementEnd();
|
|
805
|
+
} if (rf & 2) {
|
|
806
|
+
i0.ɵɵproperty("busy", ctx.parent.busyCount() > 0)("busyMessage", ctx.parent.busyMessage())("viewType", ctx.parent.viewType())("initialized", ctx.parent.initialized())("restricted", !ctx.parent.canUse());
|
|
807
|
+
i0.ɵɵadvance(5);
|
|
808
|
+
i0.ɵɵconditional(ctx.parent.selectMode() ? 5 : -1);
|
|
809
|
+
} }, dependencies: [SdFormControl,
|
|
810
|
+
SdButtonControl,
|
|
811
|
+
SdSheetControl,
|
|
812
|
+
SdSheetColumnDirective,
|
|
813
|
+
NgTemplateOutlet,
|
|
814
|
+
SdBaseContainerControl,
|
|
815
|
+
SdAnchorControl,
|
|
816
|
+
NgIcon,
|
|
817
|
+
FormatPipe], encapsulation: 2, changeDetection: 0 });
|
|
818
|
+
}
|
|
819
|
+
(() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(SdDataSheetControl, [{
|
|
820
|
+
type: Component,
|
|
821
|
+
args: [{
|
|
822
|
+
selector: "sd-data-sheet",
|
|
823
|
+
changeDetection: ChangeDetectionStrategy.OnPush,
|
|
824
|
+
encapsulation: ViewEncapsulation.None,
|
|
825
|
+
standalone: true,
|
|
826
|
+
imports: [
|
|
827
|
+
SdFormControl,
|
|
828
|
+
SdButtonControl,
|
|
829
|
+
SdSheetControl,
|
|
830
|
+
SdSheetColumnDirective,
|
|
831
|
+
NgTemplateOutlet,
|
|
832
|
+
SdBaseContainerControl,
|
|
833
|
+
FormatPipe,
|
|
834
|
+
SdAnchorControl,
|
|
835
|
+
NgIcon,
|
|
836
|
+
],
|
|
837
|
+
host: {
|
|
838
|
+
"(sdRefreshCommand)": "onRefreshButtonClick()",
|
|
839
|
+
"(sdSaveCommand)": "onSubmitButtonClick()",
|
|
840
|
+
},
|
|
841
|
+
template: `
|
|
842
|
+
<sd-base-container
|
|
843
|
+
[busy]="parent.busyCount() > 0"
|
|
844
|
+
[busyMessage]="parent.busyMessage()"
|
|
845
|
+
[viewType]="parent.viewType()"
|
|
846
|
+
[initialized]="parent.initialized()"
|
|
847
|
+
[restricted]="!parent.canUse()"
|
|
848
|
+
>
|
|
849
|
+
<ng-template #pageTopbarTpl>
|
|
850
|
+
@if (parent.canEdit() && parent.submit) {
|
|
851
|
+
<sd-button [theme]="'link-primary'" (click)="onSubmitButtonClick()">
|
|
852
|
+
<ng-icon [svg]="icons.tablerDeviceFloppy" />
|
|
853
|
+
저장
|
|
854
|
+
<small>(CTRL+S)</small>
|
|
855
|
+
</sd-button>
|
|
856
|
+
}
|
|
857
|
+
<sd-button [theme]="'link-info'" (click)="onRefreshButtonClick()">
|
|
858
|
+
<ng-icon [svg]="icons.tablerRefresh" />
|
|
859
|
+
새로고침
|
|
860
|
+
<small>(CTRL+ALT+L)</small>
|
|
861
|
+
</sd-button>
|
|
862
|
+
|
|
863
|
+
<ng-template [ngTemplateOutlet]="pageTopbarTplRef() ?? null" />
|
|
864
|
+
</ng-template>
|
|
865
|
+
|
|
866
|
+
<ng-template #contentTpl>
|
|
867
|
+
<div class="flex-column fill">
|
|
868
|
+
@if (parent.canEdit() && parent.submit && parent.viewType() === "control") {
|
|
869
|
+
<div class="flex-row gap-sm p-default bdb bdb-theme-gray-lightest">
|
|
870
|
+
<sd-button [size]="'sm'" [theme]="'primary'" (click)="onSubmitButtonClick()">
|
|
871
|
+
<ng-icon [svg]="icons.tablerDeviceFloppy" />
|
|
872
|
+
저장
|
|
873
|
+
<small>(CTRL+S)</small>
|
|
874
|
+
</sd-button>
|
|
875
|
+
<sd-button [size]="'sm'" [theme]="'info'" (click)="onRefreshButtonClick()">
|
|
876
|
+
<ng-icon [svg]="icons.tablerRefresh" />
|
|
877
|
+
새로고침
|
|
878
|
+
<small>(CTRL+ALT+L)</small>
|
|
879
|
+
</sd-button>
|
|
880
|
+
<ng-template [ngTemplateOutlet]="prevTplRef() ?? null" />
|
|
881
|
+
</div>
|
|
882
|
+
} @else {
|
|
883
|
+
<ng-template [ngTemplateOutlet]="prevTplRef() ?? null" />
|
|
884
|
+
}
|
|
885
|
+
|
|
886
|
+
@if (filterTplRef()) {
|
|
887
|
+
<div class="p-default">
|
|
888
|
+
<sd-form (formSubmit)="onFilterSubmit()">
|
|
889
|
+
<div class="form-box-inline">
|
|
890
|
+
<div>
|
|
891
|
+
<sd-button [type]="'submit'" [theme]="'info'">
|
|
892
|
+
<ng-icon [svg]="icons.tablerSearch" />
|
|
893
|
+
조회
|
|
894
|
+
</sd-button>
|
|
895
|
+
</div>
|
|
896
|
+
<ng-template [ngTemplateOutlet]="filterTplRef()!" />
|
|
897
|
+
</div>
|
|
898
|
+
</sd-form>
|
|
899
|
+
</div>
|
|
900
|
+
}
|
|
901
|
+
|
|
902
|
+
@if (!parent.hideTool || !parent.hideTool()) {
|
|
903
|
+
@if (parent.canEdit() || beforeToolTplRef() || parent.downloadExcel) {
|
|
904
|
+
<div class="flex-row gap-sm p-xs-default">
|
|
905
|
+
@if (parent.canEdit()) {
|
|
906
|
+
@if (parent.editMode === "modal" && parent.editItem) {
|
|
907
|
+
<sd-button
|
|
908
|
+
[size]="'sm'"
|
|
909
|
+
[theme]="'link-primary'"
|
|
910
|
+
(click)="onCreateItemButtonClick()"
|
|
911
|
+
>
|
|
912
|
+
<ng-icon [svg]="icons.tablerCirclePlus" />
|
|
913
|
+
{{ insertText() ?? "등록" }}
|
|
914
|
+
</sd-button>
|
|
915
|
+
} @else if (parent.editMode === "inline" && parent.newItem) {
|
|
916
|
+
<sd-button
|
|
917
|
+
[size]="'sm'"
|
|
918
|
+
[theme]="'link-primary'"
|
|
919
|
+
(click)="onAddItemButtonClick()"
|
|
920
|
+
>
|
|
921
|
+
<ng-icon [svg]="icons.tablerCirclePlus" />
|
|
922
|
+
행 추가
|
|
923
|
+
</sd-button>
|
|
924
|
+
}
|
|
925
|
+
}
|
|
926
|
+
|
|
927
|
+
<ng-template [ngTemplateOutlet]="beforeToolTplRef() ?? null" />
|
|
928
|
+
|
|
929
|
+
@if (parent.canEdit()) {
|
|
930
|
+
@if (parent.editMode === "modal" && parent.toggleDeleteItems) {
|
|
931
|
+
<sd-button
|
|
932
|
+
[size]="'sm'"
|
|
933
|
+
[theme]="'link-danger'"
|
|
934
|
+
(click)="onToggleDeleteItemsButtonClick(true)"
|
|
935
|
+
[disabled]="!parent.isSelectedItemsHasNotDeleted()"
|
|
936
|
+
>
|
|
937
|
+
<ng-icon [svg]="deleteIcon()" />
|
|
938
|
+
선택 {{ deleteText() ?? "삭제" }}
|
|
939
|
+
</sd-button>
|
|
940
|
+
@if (parent.isSelectedItemsHasDeleted()) {
|
|
941
|
+
<sd-button
|
|
942
|
+
[size]="'sm'"
|
|
943
|
+
[theme]="'link-warning'"
|
|
944
|
+
(click)="onToggleDeleteItemsButtonClick(false)"
|
|
945
|
+
>
|
|
946
|
+
<ng-icon [svg]="restoreIcon()" />
|
|
947
|
+
선택 {{ restoreText() ?? "복구" }}
|
|
948
|
+
</sd-button>
|
|
949
|
+
}
|
|
950
|
+
}
|
|
951
|
+
|
|
952
|
+
@if (parent.uploadExcel) {
|
|
953
|
+
<sd-button
|
|
954
|
+
[size]="'sm'"
|
|
955
|
+
[theme]="'link-success'"
|
|
956
|
+
(click)="onUploadExcelButtonClick()"
|
|
957
|
+
>
|
|
958
|
+
<ng-icon [svg]="icons.tablerUpload" />
|
|
959
|
+
엑셀 업로드
|
|
960
|
+
</sd-button>
|
|
961
|
+
}
|
|
962
|
+
}
|
|
963
|
+
|
|
964
|
+
@if (parent.downloadExcel) {
|
|
965
|
+
<sd-button
|
|
966
|
+
[size]="'sm'"
|
|
967
|
+
[theme]="'link-success'"
|
|
968
|
+
(click)="onDownloadExcelButtonClick()"
|
|
969
|
+
>
|
|
970
|
+
<ng-icon [svg]="icons.tablerFileExcel" />
|
|
971
|
+
엑셀 다운로드
|
|
972
|
+
</sd-button>
|
|
973
|
+
}
|
|
974
|
+
|
|
975
|
+
<ng-template [ngTemplateOutlet]="toolTplRef() ?? null" />
|
|
976
|
+
</div>
|
|
977
|
+
}
|
|
978
|
+
}
|
|
979
|
+
|
|
980
|
+
<sd-form #formCtrl (formSubmit)="onSubmit()" class="flex-fill p-default pt-0">
|
|
981
|
+
<sd-sheet
|
|
982
|
+
[key]="parent.key + '-sheet'"
|
|
983
|
+
[items]="parent.items()"
|
|
984
|
+
[(currentPage)]="parent.page"
|
|
985
|
+
[totalPageCount]="parent.pageLength()"
|
|
986
|
+
[(sorts)]="parent.sortingDefs"
|
|
987
|
+
[selectMode]="parent.selectMode()"
|
|
988
|
+
[autoSelect]="parent.autoSelect()"
|
|
989
|
+
[(selectedItems)]="parent.selectedItems"
|
|
990
|
+
[trackByFn]="parent.trackByFn"
|
|
991
|
+
[getItemCellStyleFn]="parent.getItemCellStyleFn"
|
|
992
|
+
[getItemSelectableFn]="parent.getItemSelectableFn"
|
|
993
|
+
>
|
|
994
|
+
@if (
|
|
995
|
+
parent.editMode === "inline" &&
|
|
996
|
+
parent.canEdit() &&
|
|
997
|
+
parent.itemPropInfo.isDeleted
|
|
998
|
+
) {
|
|
999
|
+
<sd-sheet-column [fixed]="true" [key]="parent.itemPropInfo.isDeleted!">
|
|
1000
|
+
<ng-template #cellTpl let-item>
|
|
1001
|
+
<div class="p-xs-sm tx-center">
|
|
1002
|
+
<sd-anchor
|
|
1003
|
+
[theme]="'danger'"
|
|
1004
|
+
(click)="onToggleDeleteItemButtonClick(item)"
|
|
1005
|
+
[disabled]="!parent.getItemInfoFn(item).canDelete"
|
|
1006
|
+
>
|
|
1007
|
+
<ng-icon
|
|
1008
|
+
[svg]="
|
|
1009
|
+
item[parent.itemPropInfo.isDeleted!]
|
|
1010
|
+
? restoreIcon()
|
|
1011
|
+
: deleteIcon()
|
|
1012
|
+
"
|
|
1013
|
+
/>
|
|
1014
|
+
{{
|
|
1015
|
+
item[parent.itemPropInfo.isDeleted!]
|
|
1016
|
+
? (restoreText() ?? "복구")
|
|
1017
|
+
: (deleteText() ?? "삭제")
|
|
1018
|
+
}}
|
|
1019
|
+
</sd-anchor>
|
|
1020
|
+
</div>
|
|
1021
|
+
</ng-template>
|
|
1022
|
+
</sd-sheet-column>
|
|
1023
|
+
}
|
|
1024
|
+
|
|
1025
|
+
@for (columnControl of columnControls(); track columnControl.key()) {
|
|
1026
|
+
<sd-sheet-column
|
|
1027
|
+
[key]="columnControl.key()"
|
|
1028
|
+
[fixed]="columnControl.fixed()"
|
|
1029
|
+
[header]="columnControl.header()"
|
|
1030
|
+
[width]="columnControl.width()"
|
|
1031
|
+
[disableSorting]="columnControl.disableSorting()"
|
|
1032
|
+
[disableResizing]="columnControl.disableResizing()"
|
|
1033
|
+
[hidden]="columnControl.hidden()"
|
|
1034
|
+
[collapse]="columnControl.collapse()"
|
|
1035
|
+
>
|
|
1036
|
+
@if (columnControl.summaryTplRef()) {
|
|
1037
|
+
<ng-template #summaryTpl>
|
|
1038
|
+
<ng-template [ngTemplateOutlet]="columnControl.summaryTplRef()!" />
|
|
1039
|
+
</ng-template>
|
|
1040
|
+
}
|
|
1041
|
+
|
|
1042
|
+
<ng-template
|
|
1043
|
+
#cellTpl
|
|
1044
|
+
let-item
|
|
1045
|
+
let-index="index"
|
|
1046
|
+
let-depth="depth"
|
|
1047
|
+
let-edit="edit"
|
|
1048
|
+
>
|
|
1049
|
+
@if (
|
|
1050
|
+
parent.editMode === "modal" &&
|
|
1051
|
+
parent.canEdit() &&
|
|
1052
|
+
columnControl.edit() &&
|
|
1053
|
+
parent.getItemInfoFn(item).canEdit
|
|
1054
|
+
) {
|
|
1055
|
+
<sd-anchor
|
|
1056
|
+
(click)="onEditItemButtonClick(item, index, $event)"
|
|
1057
|
+
class="flex-row"
|
|
1058
|
+
>
|
|
1059
|
+
<div class="p-xs-sm">
|
|
1060
|
+
<ng-icon [svg]="icons.tablerEdit" />
|
|
1061
|
+
</div>
|
|
1062
|
+
<div class="flex-fill">
|
|
1063
|
+
<ng-template
|
|
1064
|
+
[ngTemplateOutlet]="columnControl.cellTplRef()"
|
|
1065
|
+
[ngTemplateOutletContext]="{
|
|
1066
|
+
$implicit: item,
|
|
1067
|
+
item: item,
|
|
1068
|
+
index: index,
|
|
1069
|
+
depth: depth,
|
|
1070
|
+
edit: edit,
|
|
1071
|
+
}"
|
|
1072
|
+
/>
|
|
1073
|
+
</div>
|
|
1074
|
+
</sd-anchor>
|
|
1075
|
+
} @else {
|
|
1076
|
+
<ng-template
|
|
1077
|
+
[ngTemplateOutlet]="columnControl.cellTplRef()"
|
|
1078
|
+
[ngTemplateOutletContext]="{
|
|
1079
|
+
$implicit: item,
|
|
1080
|
+
item: item,
|
|
1081
|
+
index: index,
|
|
1082
|
+
depth: depth,
|
|
1083
|
+
edit: edit,
|
|
1084
|
+
}"
|
|
1085
|
+
/>
|
|
1086
|
+
}
|
|
1087
|
+
</ng-template>
|
|
1088
|
+
</sd-sheet-column>
|
|
1089
|
+
}
|
|
1090
|
+
|
|
1091
|
+
@if (parent.itemPropInfo.lastModifiedAt) {
|
|
1092
|
+
<sd-sheet-column
|
|
1093
|
+
[header]="'수정일시'"
|
|
1094
|
+
[key]="parent.itemPropInfo.lastModifiedAt!"
|
|
1095
|
+
[hidden]="true"
|
|
1096
|
+
>
|
|
1097
|
+
<ng-template #cellTpl let-item>
|
|
1098
|
+
<div class="p-xs-sm tx-center">
|
|
1099
|
+
{{
|
|
1100
|
+
item[parent.itemPropInfo.lastModifiedAt!]
|
|
1101
|
+
| format: "yyyy-MM-dd HH:mm"
|
|
1102
|
+
}}
|
|
1103
|
+
</div>
|
|
1104
|
+
</ng-template>
|
|
1105
|
+
</sd-sheet-column>
|
|
1106
|
+
}
|
|
1107
|
+
@if (parent.itemPropInfo.lastModifiedBy) {
|
|
1108
|
+
<sd-sheet-column
|
|
1109
|
+
[header]="'수정자'"
|
|
1110
|
+
[key]="parent.itemPropInfo.lastModifiedBy!"
|
|
1111
|
+
[hidden]="true"
|
|
1112
|
+
>
|
|
1113
|
+
<ng-template #cellTpl let-item>
|
|
1114
|
+
<div class="p-xs-sm tx-center">
|
|
1115
|
+
{{ item[parent.itemPropInfo.lastModifiedBy!] }}
|
|
1116
|
+
</div>
|
|
1117
|
+
</ng-template>
|
|
1118
|
+
</sd-sheet-column>
|
|
1119
|
+
}
|
|
1120
|
+
</sd-sheet>
|
|
1121
|
+
</sd-form>
|
|
1122
|
+
</div>
|
|
1123
|
+
</ng-template>
|
|
1124
|
+
|
|
1125
|
+
@if (parent.selectMode()) {
|
|
1126
|
+
<ng-template #modalBottomTpl>
|
|
1127
|
+
<div class="p-sm-default flex-row gap-sm">
|
|
1128
|
+
<div class="flex-fill flex-row gap-sm">
|
|
1129
|
+
@if (modalBottomTplRef()) {
|
|
1130
|
+
<ng-template [ngTemplateOutlet]="modalBottomTplRef()!" />
|
|
1131
|
+
}
|
|
1132
|
+
</div>
|
|
1133
|
+
|
|
1134
|
+
@if (parent.selectedItemKeys().length > 0) {
|
|
1135
|
+
<sd-button [size]="'sm'" [theme]="'danger'" (click)="onCancelButtonClick()">
|
|
1136
|
+
{{ parent.selectMode() === "multi" ? "모두" : "선택" }}
|
|
1137
|
+
해제
|
|
1138
|
+
</sd-button>
|
|
1139
|
+
}
|
|
1140
|
+
@if (parent.selectMode() === "multi") {
|
|
1141
|
+
<sd-button [size]="'sm'" [theme]="'primary'" (click)="onConfirmButtonClick()">
|
|
1142
|
+
확인({{ parent.selectedItemKeys().length }})
|
|
1143
|
+
</sd-button>
|
|
1144
|
+
}
|
|
1145
|
+
</div>
|
|
1146
|
+
</ng-template>
|
|
1147
|
+
}
|
|
1148
|
+
</sd-base-container>
|
|
1149
|
+
`,
|
|
1150
|
+
}]
|
|
1151
|
+
}], null, { formCtrl: [{ type: i0.ViewChild, args: ["formCtrl", { isSignal: true }] }], insertText: [{ type: i0.Input, args: [{ isSignal: true, alias: "insertText", required: false }] }], deleteText: [{ type: i0.Input, args: [{ isSignal: true, alias: "deleteText", required: false }] }], restoreText: [{ type: i0.Input, args: [{ isSignal: true, alias: "restoreText", required: false }] }], deleteIcon: [{ type: i0.Input, args: [{ isSignal: true, alias: "deleteIcon", required: false }] }], restoreIcon: [{ type: i0.Input, args: [{ isSignal: true, alias: "restoreIcon", required: false }] }], pageTopbarTplRef: [{ type: i0.ContentChild, args: ["pageTopbarTpl", { ...{ read: TemplateRef }, isSignal: true }] }], prevTplRef: [{ type: i0.ContentChild, args: ["prevTpl", { ...{ read: TemplateRef }, isSignal: true }] }], filterTplRef: [{ type: i0.ContentChild, args: ["filterTpl", { ...{ read: TemplateRef }, isSignal: true }] }], beforeToolTplRef: [{ type: i0.ContentChild, args: ["beforeToolTpl", { ...{ read: TemplateRef }, isSignal: true }] }], toolTplRef: [{ type: i0.ContentChild, args: ["toolTpl", { ...{ read: TemplateRef }, isSignal: true }] }], modalBottomTplRef: [{ type: i0.ContentChild, args: ["modalBottomTpl", { ...{ read: TemplateRef }, isSignal: true }] }], columnControls: [{ type: i0.ContentChildren, args: [i0.forwardRef(() => SdDataSheetColumnDirective), { isSignal: true }] }] }); })();
|
|
1152
|
+
(() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassDebugInfo(SdDataSheetControl, { className: "SdDataSheetControl", filePath: "packages/angular/src/features/data-view/sd-data-sheet.control.ts", lineNumber: 765, forbidOrphanRendering: true }); })();
|