@ibiz-template/vue3-components 0.7.38-alpha.12 → 0.7.38-alpha.31
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/dist/ibiz-markdown-editor-BZ8j-yda.js +1 -0
- package/dist/{index-B_Fo_3Rt.js → index-CnCC-cC2.js} +1 -1
- package/dist/index-Q4QqDXYJ.js +4 -0
- package/dist/{index-BvI3oZGL.js → index-X3QXftIl.js} +1 -1
- package/dist/index.min.css +1 -1
- package/dist/index.system.min.js +1 -1
- package/dist/wang-editor-Btv6GIhJ.js +1 -0
- package/dist/{xlsx-util-XDKOLzzW.js → xlsx-util-DbA3TyD9.js} +1 -1
- package/es/common/action-toolbar/action-toolbar.css +1 -1
- package/es/common/action-toolbar/action-toolbar.mjs +6 -3
- package/es/common/anchor-container/anchor-bar-list/anchor-bar-list.css +1 -1
- package/es/common/control-navigation/control-navigation.css +1 -0
- package/es/common/control-navigation/control-navigation.d.ts +32 -0
- package/es/common/control-navigation/control-navigation.mjs +116 -0
- package/es/common/control-navigation/provider/calendar-navigation.provider.d.ts +17 -0
- package/es/common/control-navigation/provider/calendar-navigation.provider.mjs +55 -0
- package/es/common/control-navigation/provider/index.d.ts +10 -0
- package/es/common/control-navigation/provider/index.mjs +17 -0
- package/es/common/control-navigation/provider/navigation-base.provider.d.ts +84 -0
- package/es/common/control-navigation/provider/navigation-base.provider.mjs +142 -0
- package/es/common/control-navigation/provider/tree-navigation.provider.d.ts +30 -0
- package/es/common/control-navigation/provider/tree-navigation.provider.mjs +81 -0
- package/es/common/custom-filter-condition/custom-filter-condition.d.ts +2 -0
- package/es/common/custom-theme/custom-theme-model.mjs +5 -13
- package/es/common/data-import2/data-import2.mjs +1 -1
- package/es/common/gantt-setting/gantt-setting.css +1 -0
- package/es/common/gantt-setting/gantt-setting.d.ts +63 -0
- package/es/common/gantt-setting/gantt-setting.mjs +237 -0
- package/es/common/grid-setting/grid-setting.css +1 -1
- package/es/common/grid-setting/grid-setting.d.ts +3 -1
- package/es/common/grid-setting/grid-setting.mjs +21 -5
- package/es/common/index.mjs +6 -0
- package/es/common/nav-split/nav-split.css +1 -0
- package/es/common/nav-split/nav-split.d.ts +57 -0
- package/es/common/nav-split/nav-split.mjs +209 -0
- package/es/common/pql-editor/utils/index.mjs +30 -40
- package/es/common/split/split.css +1 -1
- package/es/common/view-message/view-message.d.ts +2 -0
- package/es/control/app-menu/app-menu.css +1 -1
- package/es/control/app-menu/app-menu.d.ts +3 -0
- package/es/control/app-menu/app-menu.mjs +62 -22
- package/es/control/app-menu/custom-menu-design/custom-menu-design.mjs +12 -3
- package/es/control/app-menu/index.d.ts +3 -0
- package/es/control/calendar/calendar.css +1 -1
- package/es/control/calendar/calendar.d.ts +12 -1
- package/es/control/calendar/calendar.mjs +42 -10
- package/es/control/calendar/index.d.ts +12 -1
- package/es/control/dashboard/custom-dashboard-container/custom-dashboard-container.d.ts +54 -0
- package/es/control/dashboard/custom-dashboard-container/custom-dashboard-container.mjs +10 -3
- package/es/control/dashboard/dashboard-design/dashboard-design.mjs +2 -1
- package/es/control/dashboard/dashboard.mjs +13 -1
- package/es/control/dashboard/portlet/filter-portlet/filter-portlet-design/filter-portlet-design.css +1 -1
- package/es/control/dashboard/portlet/filter-portlet/filter-portlet-design/filter-portlet-design.mjs +9 -4
- package/es/control/data-view/data-view.css +1 -1
- package/es/control/data-view/data-view.d.ts +1 -0
- package/es/control/data-view/data-view.mjs +21 -3
- package/es/control/data-view/index.d.ts +1 -0
- package/es/control/drbar/drbar.controller.mjs +2 -2
- package/es/control/drtab/drtab-control.util.mjs +1 -1
- package/es/control/drtab/drtab.controller.d.ts +28 -8
- package/es/control/drtab/drtab.controller.mjs +62 -11
- package/es/control/drtab/drtab.css +1 -1
- package/es/control/drtab/drtab.d.ts +3 -1
- package/es/control/drtab/drtab.mjs +68 -9
- package/es/control/drtab/index.d.ts +3 -1
- package/es/control/form/form-detail/form-group-panel/form-group-panel.mjs +1 -1
- package/es/control/form/form-detail/form-item/form-item.d.ts +1 -0
- package/es/control/form/form-detail/form-item/form-item.mjs +21 -2
- package/es/control/form/form-detail/form-item/index.d.ts +1 -0
- package/es/control/form/form-detail/form-mdctrl/form-mdctrl-repeater/repeater-grid/repeater-grid.d.ts +104 -0
- package/es/control/form/form-detail/form-tab-panel/form-tab-panel.css +1 -1
- package/es/control/form/form-detail/form-tab-panel/form-tab-panel.mjs +1 -1
- package/es/control/form/search-form/index.d.ts +9 -0
- package/es/control/form/search-form/search-form.d.ts +9 -0
- package/es/control/form/search-form/search-form.mjs +4 -0
- package/es/control/gantt/gantt.css +1 -1
- package/es/control/gantt/gantt.d.ts +3 -4
- package/es/control/gantt/gantt.mjs +158 -52
- package/es/control/gantt/index.d.ts +3 -4
- package/es/control/grid/grid/grid-control.util.d.ts +2 -0
- package/es/control/grid/grid/grid-control.util.mjs +40 -4
- package/es/control/grid/grid/grid.css +1 -1
- package/es/control/grid/grid/grid.mjs +86 -73
- package/es/control/grid/grid-column/grid-field-column/grid-field-column.d.ts +1 -0
- package/es/control/grid/grid-column/grid-field-column/grid-field-column.mjs +21 -1
- package/es/control/grid/grid-column/grid-field-column/index.d.ts +1 -0
- package/es/control/list/index.d.ts +1 -0
- package/es/control/list/list.css +1 -1
- package/es/control/list/list.d.ts +1 -0
- package/es/control/list/list.mjs +23 -5
- package/es/control/map/map.d.ts +9 -0
- package/es/control/map/map.mjs +4 -0
- package/es/control/search-bar/search-groups/search-groups.mjs +2 -2
- package/es/control/tab-exp-panel/tab-exp-panel.css +1 -1
- package/es/control/toolbar/toolbar.mjs +3 -0
- package/es/control/tree/el-tree-util.d.ts +39 -1
- package/es/control/tree/el-tree-util.mjs +70 -2
- package/es/control/tree/index.d.ts +16 -14
- package/es/control/tree/tree.css +1 -1
- package/es/control/tree/tree.d.ts +16 -14
- package/es/control/tree/tree.mjs +60 -31
- package/es/control/tree-grid-ex/tree-grid-ex-column/tree-grid-ex-field-column/tree-grid-ex-field-column.mjs +17 -1
- package/es/editor/data-picker/ibiz-picker-embed-view/ibiz-picker-embed-view.css +1 -1
- package/es/editor/data-picker/ibiz-picker-embed-view/ibiz-picker-embed-view.d.ts +3 -8
- package/es/editor/data-picker/ibiz-picker-embed-view/ibiz-picker-embed-view.mjs +22 -23
- package/es/editor/data-picker/ibiz-picker-select-view/ibiz-picker-select-view.mjs +1 -0
- package/es/editor/date-range/ibiz-date-range-picker/ibiz-date-range-picker.mjs +3 -1
- package/es/editor/dropdown-list/ibiz-dropdown/ibiz-dropdown.css +1 -1
- package/es/editor/dropdown-list/ibiz-dropdown/ibiz-dropdown.mjs +8 -2
- package/es/editor/html/wang-editor/wang-editor.mjs +1 -1
- package/es/editor/markdown/ibiz-markdown-editor/ibiz-markdown-editor.mjs +1 -1
- package/es/editor/span/span/span.mjs +7 -1
- package/es/editor/span/span-editor.controller.d.ts +7 -0
- package/es/editor/span/span-editor.controller.mjs +10 -0
- package/es/editor/text-box/ibiz-input-number/ibiz-input-number.css +1 -1
- package/es/editor/text-box/ibiz-input-number/ibiz-input-number.mjs +24 -6
- package/es/editor/text-box/input/input.css +1 -1
- package/es/editor/text-box/input/input.mjs +32 -5
- package/es/editor/text-box/text-box-editor.controller.d.ts +7 -0
- package/es/editor/text-box/text-box-editor.controller.mjs +10 -0
- package/es/editor/upload/use/use-iview-upload.mjs +1 -1
- package/es/locale/en/index.d.ts +33 -0
- package/es/locale/en/index.mjs +27 -2
- package/es/locale/zh-CN/index.d.ts +33 -0
- package/es/locale/zh-CN/index.mjs +27 -2
- package/es/panel-component/auth-sso/auth-sso.css +1 -0
- package/es/panel-component/auth-sso/auth-sso.d.ts +26 -0
- package/es/panel-component/auth-sso/auth-sso.mjs +100 -0
- package/es/panel-component/auth-sso/auth-sso.provider.d.ts +6 -0
- package/es/panel-component/auth-sso/auth-sso.provider.mjs +21 -0
- package/es/panel-component/auth-sso/index.d.ts +23 -0
- package/es/panel-component/auth-sso/index.mjs +12 -0
- package/es/panel-component/auth-userinfo/auth-userinfo.css +1 -1
- package/es/panel-component/coop-pos/coop-pos.controller.d.ts +46 -1
- package/es/panel-component/coop-pos/coop-pos.controller.mjs +92 -1
- package/es/panel-component/coop-pos/coop-pos.css +1 -1
- package/es/panel-component/coop-pos/coop-pos.d.ts +4 -1
- package/es/panel-component/coop-pos/coop-pos.mjs +23 -3
- package/es/panel-component/coop-pos/index.d.ts +3 -0
- package/es/panel-component/index-actions/index-actions.css +1 -1
- package/es/panel-component/index.mjs +4 -1
- package/es/panel-component/nav-breadcrumb/nav-breadcrumb.controller.mjs +8 -31
- package/es/panel-component/nav-breadcrumb/nav-breadcrumb.service.d.ts +1 -1
- package/es/panel-component/nav-breadcrumb/nav-breadcrumb.service.mjs +1 -1
- package/es/panel-component/nav-pos-index/nav-pos-index.controller.mjs +7 -2
- package/es/panel-component/nav-tabs/nav-tabs.controller.d.ts +1 -1
- package/es/panel-component/nav-tabs/nav-tabs.controller.mjs +3 -3
- package/es/panel-component/panel-app-title/index.mjs +4 -0
- package/es/panel-component/panel-app-title/panel-app-title.controller.mjs +8 -0
- package/es/panel-component/panel-app-title/panel-app-title.css +1 -1
- package/es/panel-component/panel-app-title/panel-app-title.mjs +112 -108
- package/es/panel-component/panel-button-list/panel-button-list.controller.mjs +2 -1
- package/es/panel-component/panel-index-view-search/panel-index-view-search.css +1 -1
- package/es/panel-component/searchform-buttons/searchform-buttons.mjs +1 -1
- package/es/util/app-popover/app-popover-component.mjs +1 -1
- package/es/util/fullscreen/fullscreen-util.mjs +2 -2
- package/es/util/notification-util/notification-util.d.ts +10 -1
- package/es/util/notification-util/notification-util.mjs +36 -0
- package/es/util/notification-util/upload-manager/file-type.d.ts +8 -0
- package/es/util/notification-util/upload-manager/file-type.mjs +207 -0
- package/es/util/notification-util/upload-manager/upload-manager.css +1 -0
- package/es/util/notification-util/upload-manager/upload-manager.d.ts +64 -0
- package/es/util/notification-util/upload-manager/upload-manager.mjs +159 -0
- package/es/util/pagination/use-pagination.mjs +5 -4
- package/es/view/login-view/login-view.mjs +18 -0
- package/es/view-engine/edit-view.engine.mjs +14 -0
- package/es/view-engine/login-view.engine.mjs +1 -0
- package/es/view-engine/opt-view.engine.d.ts +1 -0
- package/es/view-engine/opt-view.engine.mjs +41 -1
- package/es/view-engine/tab-exp-view.engine.d.ts +9 -0
- package/es/view-engine/tab-exp-view.engine.mjs +20 -1
- package/es/view-engine/tab-search-view.engine.d.ts +9 -1
- package/es/view-engine/tab-search-view.engine.mjs +52 -2
- package/es/web-app/attach-environment-config.mjs +5 -1
- package/es/web-app/guard/auth-guard/auth-guard.d.ts +21 -14
- package/es/web-app/guard/auth-guard/auth-guard.mjs +26 -19
- package/es/web-app/guard/auth-guard/dyna-auth-guard.d.ts +1 -1
- package/es/web-app/guard/auth-guard/dyna-auth-guard.mjs +2 -1
- package/es/web-app/main.mjs +3 -1
- package/es/web-app/router/index.d.ts +3 -2
- package/es/web-app/router/index.mjs +15 -4
- package/lib/common/action-toolbar/action-toolbar.cjs +6 -3
- package/lib/common/action-toolbar/action-toolbar.css +1 -1
- package/lib/common/anchor-container/anchor-bar-list/anchor-bar-list.css +1 -1
- package/lib/common/control-navigation/control-navigation.cjs +118 -0
- package/lib/common/control-navigation/control-navigation.css +1 -0
- package/lib/common/control-navigation/provider/calendar-navigation.provider.cjs +57 -0
- package/lib/common/control-navigation/provider/index.cjs +19 -0
- package/lib/common/control-navigation/provider/navigation-base.provider.cjs +144 -0
- package/lib/common/control-navigation/provider/tree-navigation.provider.cjs +83 -0
- package/lib/common/custom-theme/custom-theme-model.cjs +5 -13
- package/lib/common/data-import2/data-import2.cjs +1 -1
- package/lib/common/gantt-setting/gantt-setting.cjs +239 -0
- package/lib/common/gantt-setting/gantt-setting.css +1 -0
- package/lib/common/grid-setting/grid-setting.cjs +21 -5
- package/lib/common/grid-setting/grid-setting.css +1 -1
- package/lib/common/index.cjs +6 -0
- package/lib/common/nav-split/nav-split.cjs +211 -0
- package/lib/common/nav-split/nav-split.css +1 -0
- package/lib/common/pql-editor/utils/index.cjs +30 -40
- package/lib/common/split/split.css +1 -1
- package/lib/control/app-menu/app-menu.cjs +60 -20
- package/lib/control/app-menu/app-menu.css +1 -1
- package/lib/control/app-menu/custom-menu-design/custom-menu-design.cjs +11 -2
- package/lib/control/calendar/calendar.cjs +42 -10
- package/lib/control/calendar/calendar.css +1 -1
- package/lib/control/dashboard/custom-dashboard-container/custom-dashboard-container.cjs +10 -3
- package/lib/control/dashboard/dashboard-design/dashboard-design.cjs +2 -1
- package/lib/control/dashboard/dashboard.cjs +13 -1
- package/lib/control/dashboard/portlet/filter-portlet/filter-portlet-design/filter-portlet-design.cjs +9 -4
- package/lib/control/dashboard/portlet/filter-portlet/filter-portlet-design/filter-portlet-design.css +1 -1
- package/lib/control/data-view/data-view.cjs +21 -3
- package/lib/control/data-view/data-view.css +1 -1
- package/lib/control/drbar/drbar.controller.cjs +2 -2
- package/lib/control/drtab/drtab-control.util.cjs +1 -1
- package/lib/control/drtab/drtab.cjs +67 -8
- package/lib/control/drtab/drtab.controller.cjs +62 -11
- package/lib/control/drtab/drtab.css +1 -1
- package/lib/control/form/form-detail/form-group-panel/form-group-panel.cjs +1 -1
- package/lib/control/form/form-detail/form-item/form-item.cjs +20 -1
- package/lib/control/form/form-detail/form-tab-panel/form-tab-panel.cjs +1 -1
- package/lib/control/form/form-detail/form-tab-panel/form-tab-panel.css +1 -1
- package/lib/control/form/search-form/search-form.cjs +4 -0
- package/lib/control/gantt/gantt.cjs +156 -50
- package/lib/control/gantt/gantt.css +1 -1
- package/lib/control/grid/grid/grid-control.util.cjs +39 -3
- package/lib/control/grid/grid/grid.cjs +86 -73
- package/lib/control/grid/grid/grid.css +1 -1
- package/lib/control/grid/grid-column/grid-field-column/grid-field-column.cjs +21 -1
- package/lib/control/list/list.cjs +23 -5
- package/lib/control/list/list.css +1 -1
- package/lib/control/map/map.cjs +4 -0
- package/lib/control/search-bar/search-groups/search-groups.cjs +2 -2
- package/lib/control/tab-exp-panel/tab-exp-panel.css +1 -1
- package/lib/control/toolbar/toolbar.cjs +3 -0
- package/lib/control/tree/el-tree-util.cjs +70 -0
- package/lib/control/tree/tree.cjs +58 -29
- package/lib/control/tree/tree.css +1 -1
- package/lib/control/tree-grid-ex/tree-grid-ex-column/tree-grid-ex-field-column/tree-grid-ex-field-column.cjs +17 -1
- package/lib/editor/data-picker/ibiz-picker-embed-view/ibiz-picker-embed-view.cjs +21 -22
- package/lib/editor/data-picker/ibiz-picker-embed-view/ibiz-picker-embed-view.css +1 -1
- package/lib/editor/data-picker/ibiz-picker-select-view/ibiz-picker-select-view.cjs +1 -0
- package/lib/editor/date-range/ibiz-date-range-picker/ibiz-date-range-picker.cjs +3 -1
- package/lib/editor/dropdown-list/ibiz-dropdown/ibiz-dropdown.cjs +8 -2
- package/lib/editor/dropdown-list/ibiz-dropdown/ibiz-dropdown.css +1 -1
- package/lib/editor/html/wang-editor/wang-editor.cjs +1 -1
- package/lib/editor/markdown/ibiz-markdown-editor/ibiz-markdown-editor.cjs +1 -1
- package/lib/editor/span/span/span.cjs +7 -1
- package/lib/editor/span/span-editor.controller.cjs +10 -0
- package/lib/editor/text-box/ibiz-input-number/ibiz-input-number.cjs +24 -6
- package/lib/editor/text-box/ibiz-input-number/ibiz-input-number.css +1 -1
- package/lib/editor/text-box/input/input.cjs +32 -5
- package/lib/editor/text-box/input/input.css +1 -1
- package/lib/editor/text-box/text-box-editor.controller.cjs +10 -0
- package/lib/editor/upload/use/use-iview-upload.cjs +1 -1
- package/lib/locale/en/index.cjs +27 -2
- package/lib/locale/zh-CN/index.cjs +27 -2
- package/lib/panel-component/auth-sso/auth-sso.cjs +102 -0
- package/lib/panel-component/auth-sso/auth-sso.css +1 -0
- package/lib/panel-component/auth-sso/auth-sso.provider.cjs +23 -0
- package/lib/panel-component/auth-sso/index.cjs +17 -0
- package/lib/panel-component/auth-userinfo/auth-userinfo.css +1 -1
- package/lib/panel-component/coop-pos/coop-pos.cjs +22 -2
- package/lib/panel-component/coop-pos/coop-pos.controller.cjs +91 -0
- package/lib/panel-component/coop-pos/coop-pos.css +1 -1
- package/lib/panel-component/index-actions/index-actions.css +1 -1
- package/lib/panel-component/index.cjs +39 -36
- package/lib/panel-component/nav-breadcrumb/nav-breadcrumb.controller.cjs +7 -30
- package/lib/panel-component/nav-breadcrumb/nav-breadcrumb.service.cjs +1 -1
- package/lib/panel-component/nav-pos-index/nav-pos-index.controller.cjs +7 -2
- package/lib/panel-component/nav-tabs/nav-tabs.controller.cjs +3 -3
- package/lib/panel-component/panel-app-title/index.cjs +4 -0
- package/lib/panel-component/panel-app-title/panel-app-title.cjs +112 -108
- package/lib/panel-component/panel-app-title/panel-app-title.controller.cjs +8 -0
- package/lib/panel-component/panel-app-title/panel-app-title.css +1 -1
- package/lib/panel-component/panel-button-list/panel-button-list.controller.cjs +2 -1
- package/lib/panel-component/panel-index-view-search/panel-index-view-search.css +1 -1
- package/lib/panel-component/searchform-buttons/searchform-buttons.cjs +1 -1
- package/lib/util/app-popover/app-popover-component.cjs +1 -1
- package/lib/util/fullscreen/fullscreen-util.cjs +2 -2
- package/lib/util/notification-util/notification-util.cjs +36 -0
- package/lib/util/notification-util/upload-manager/file-type.cjs +209 -0
- package/lib/util/notification-util/upload-manager/upload-manager.cjs +161 -0
- package/lib/util/notification-util/upload-manager/upload-manager.css +1 -0
- package/lib/util/pagination/use-pagination.cjs +5 -4
- package/lib/view/login-view/login-view.cjs +18 -0
- package/lib/view-engine/edit-view.engine.cjs +14 -0
- package/lib/view-engine/login-view.engine.cjs +1 -0
- package/lib/view-engine/opt-view.engine.cjs +40 -0
- package/lib/view-engine/tab-exp-view.engine.cjs +19 -0
- package/lib/view-engine/tab-search-view.engine.cjs +52 -2
- package/lib/web-app/attach-environment-config.cjs +5 -1
- package/lib/web-app/guard/auth-guard/auth-guard.cjs +26 -19
- package/lib/web-app/guard/auth-guard/dyna-auth-guard.cjs +2 -1
- package/lib/web-app/main.cjs +3 -1
- package/lib/web-app/router/index.cjs +15 -4
- package/package.json +11 -11
- package/dist/ibiz-markdown-editor-B4c6yGAW.js +0 -1
- package/dist/index-VQ3FT6ih.js +0 -4
- package/dist/wang-editor-BUIAd4uJ.js +0 -1
- /package/es/node_modules/.pnpm/{@ibiz-template_core@0.7.35-alpha.1_axios@1.7.7_lodash-es@4.17.21_qs@6.13.0_qx-util@0.4.8_ramda@0.29.1 → @ibiz-template_core@0.7.38-alpha.32_axios@1.7.7_lodash-es@4.17.21_qs@6.13.0_qx-util@0.4.8_ramda@0.29.1}/node_modules/@ibiz-template/core/out/utils/namespace/namespace.mjs +0 -0
- /package/lib/node_modules/.pnpm/{@ibiz-template_core@0.7.35-alpha.1_axios@1.7.7_lodash-es@4.17.21_qs@6.13.0_qx-util@0.4.8_ramda@0.29.1 → @ibiz-template_core@0.7.38-alpha.32_axios@1.7.7_lodash-es@4.17.21_qs@6.13.0_qx-util@0.4.8_ramda@0.29.1}/node_modules/@ibiz-template/core/out/utils/namespace/namespace.cjs +0 -0
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
'use strict';
|
|
2
2
|
|
|
3
|
+
var qxUtil = require('qx-util');
|
|
3
4
|
var runtime = require('@ibiz-template/runtime');
|
|
4
5
|
var vue3Util = require('@ibiz-template/vue3-util');
|
|
5
6
|
|
|
@@ -20,6 +21,18 @@ class DRTabController extends runtime.ControlController {
|
|
|
20
21
|
* @type {AppCounter}
|
|
21
22
|
*/
|
|
22
23
|
__publicField(this, "counter");
|
|
24
|
+
/**
|
|
25
|
+
* @description 启用缓存
|
|
26
|
+
* @type {boolean}
|
|
27
|
+
* @memberof DRTabController
|
|
28
|
+
*/
|
|
29
|
+
__publicField(this, "srfCachePos", false);
|
|
30
|
+
/**
|
|
31
|
+
* @description 缓存标记
|
|
32
|
+
* @type {string}
|
|
33
|
+
* @memberof DRTabController
|
|
34
|
+
*/
|
|
35
|
+
__publicField(this, "srfCacheKeyTempl", "");
|
|
23
36
|
/**
|
|
24
37
|
* Router 对象
|
|
25
38
|
*
|
|
@@ -58,6 +71,19 @@ class DRTabController extends runtime.ControlController {
|
|
|
58
71
|
get routeDepth() {
|
|
59
72
|
return this.view.modal.routeDepth;
|
|
60
73
|
}
|
|
74
|
+
/**
|
|
75
|
+
* @description 选中缓存标识
|
|
76
|
+
* @readonly
|
|
77
|
+
* @type {string}
|
|
78
|
+
* @memberof DRTabController
|
|
79
|
+
*/
|
|
80
|
+
get storageTag() {
|
|
81
|
+
if (this.srfCacheKeyTempl) {
|
|
82
|
+
return this.srfCacheKeyTempl;
|
|
83
|
+
}
|
|
84
|
+
const userId = this.context.srfuserid;
|
|
85
|
+
return "".concat(userId, "_").concat(this.view.model.codeName, "_").concat(this.model.codeName);
|
|
86
|
+
}
|
|
61
87
|
/**
|
|
62
88
|
* 设置 Router 对象
|
|
63
89
|
*
|
|
@@ -98,18 +124,13 @@ class DRTabController extends runtime.ControlController {
|
|
|
98
124
|
async onCreated() {
|
|
99
125
|
await super.onCreated();
|
|
100
126
|
await this.initCounter();
|
|
101
|
-
|
|
102
|
-
/**
|
|
103
|
-
* 部件参数解析
|
|
104
|
-
*
|
|
105
|
-
* @protected
|
|
106
|
-
* @memberof ControlController
|
|
107
|
-
*/
|
|
108
|
-
handleControlParams() {
|
|
109
|
-
super.handleControlParams();
|
|
127
|
+
this.srfCacheKeyTempl = this.controlParams.srfcachekeytempl || "";
|
|
110
128
|
if (this.controlParams.showmore) {
|
|
111
129
|
this.state.showMore = this.controlParams.showmore === "true";
|
|
112
130
|
}
|
|
131
|
+
if (this.controlParams.srfcachepos) {
|
|
132
|
+
this.srfCachePos = this.controlParams.srfcachepos.toLowerCase() === "true";
|
|
133
|
+
}
|
|
113
134
|
}
|
|
114
135
|
/**
|
|
115
136
|
* 通过计数器数据,计算项状态
|
|
@@ -317,6 +338,10 @@ class DRTabController extends runtime.ControlController {
|
|
|
317
338
|
this.state.activeName = this.view.state.srfnav;
|
|
318
339
|
} else {
|
|
319
340
|
this.state.activeName = drTabPages[0].tag;
|
|
341
|
+
if (this.srfCachePos && localStorage.getItem(this.storageTag)) {
|
|
342
|
+
const activeName = localStorage.getItem(this.storageTag);
|
|
343
|
+
this.state.activeName = activeName;
|
|
344
|
+
}
|
|
320
345
|
}
|
|
321
346
|
const isRoutePushed = !!this.routeDepth && runtime.hasSubRoute(this.routeDepth);
|
|
322
347
|
this.handleTabChange(isRoutePushed);
|
|
@@ -334,6 +359,9 @@ class DRTabController extends runtime.ControlController {
|
|
|
334
359
|
const drBarItem = (_a = this.model.dedrtabPages) == null ? void 0 : _a.find(
|
|
335
360
|
(item) => item.id === activeName
|
|
336
361
|
);
|
|
362
|
+
if (this.srfCachePos && activeName) {
|
|
363
|
+
localStorage.setItem("".concat(this.storageTag), activeName);
|
|
364
|
+
}
|
|
337
365
|
if (drBarItem) {
|
|
338
366
|
this.setVisible("navPos");
|
|
339
367
|
this.openNavPosView(drBarItem, isRoutePushed);
|
|
@@ -410,11 +438,11 @@ class DRTabController extends runtime.ControlController {
|
|
|
410
438
|
* @param {boolean} [isRoutePushed=false]
|
|
411
439
|
* @return {*} {Promise<void>}
|
|
412
440
|
*/
|
|
413
|
-
async openNavPosView(drTabPages, isRoutePushed = false) {
|
|
441
|
+
async openNavPosView(drTabPages, isRoutePushed = false, navViewKey) {
|
|
414
442
|
var _a;
|
|
415
443
|
const { context, params } = this.prepareParams(drTabPages);
|
|
416
444
|
(_a = this.navPos) == null ? void 0 : _a.openView({
|
|
417
|
-
key: drTabPages.id,
|
|
445
|
+
key: navViewKey || drTabPages.id,
|
|
418
446
|
context,
|
|
419
447
|
params,
|
|
420
448
|
viewId: drTabPages.appViewId,
|
|
@@ -441,6 +469,29 @@ class DRTabController extends runtime.ControlController {
|
|
|
441
469
|
this.counter.onChange(this.calcItemStateByCounter);
|
|
442
470
|
}
|
|
443
471
|
}
|
|
472
|
+
/**
|
|
473
|
+
* 刷新
|
|
474
|
+
*
|
|
475
|
+
* @author tony001
|
|
476
|
+
* @date 2024-10-21 11:10:10
|
|
477
|
+
* @return {*} {Promise<void>}
|
|
478
|
+
*/
|
|
479
|
+
async refresh() {
|
|
480
|
+
var _a;
|
|
481
|
+
const { activeName } = this.state;
|
|
482
|
+
const drBarItem = (_a = this.model.dedrtabPages) == null ? void 0 : _a.find(
|
|
483
|
+
(item) => item.id === activeName
|
|
484
|
+
);
|
|
485
|
+
if (drBarItem) {
|
|
486
|
+
this.setVisible("navPos");
|
|
487
|
+
this.openNavPosView(drBarItem, false, qxUtil.createUUID());
|
|
488
|
+
} else {
|
|
489
|
+
this.setVisible("form");
|
|
490
|
+
if (this.routeDepth && this.state.drTabPages[0]) {
|
|
491
|
+
this.router.push(this.state.drTabPages[0].fullPath);
|
|
492
|
+
}
|
|
493
|
+
}
|
|
494
|
+
}
|
|
444
495
|
/**
|
|
445
496
|
* 监听组件销毁
|
|
446
497
|
*
|
|
@@ -1 +1 @@
|
|
|
1
|
-
.ibiz-control-drtab{--ibiz-control-drtab-active-color:var(--ibiz-color-primary);--ibiz-control-drtab-hover-color:var(--ibiz-color-text-0);--ibiz-control-drtab-hover-bg-color:transparent}.ibiz-control-drtab__counter{margin-left:var(--ibiz-spacing-tight)}.ibiz-control-drtab .el-tabs .el-tabs__header{margin:var(--ibiz-spacing-none)}.ibiz-control-drtab .el-tabs .el-tabs__header .el-tabs__nav-wrap{margin:var(--ibiz-spacing-none)}.ibiz-control-drtab .el-tabs .el-tabs__header .el-tabs__nav-wrap .el-tabs__nav .el-tabs__active-bar{background-color:var(--ibiz-control-drtab-active-color)}.ibiz-control-drtab .el-tabs .el-tabs__header .el-tabs__nav-wrap .el-tabs__nav .el-tabs__item{font-size:var(--ibiz-font-size-regular);color:var(--ibiz-color-text-2)}.ibiz-control-drtab .el-tabs .el-tabs__header .el-tabs__nav-wrap .el-tabs__nav .el-tabs__item:hover{color:var(--ibiz-control-drtab-hover-color);background-color:var(--ibiz-control-drtab-hover-bg-color)}.ibiz-control-drtab .el-tabs .el-tabs__header .el-tabs__nav-wrap .el-tabs__nav .el-tabs__item.is-active{color:var(--ibiz-control-drtab-active-color)}.ibiz-control-drtab .el-tabs .el-tabs__header .el-tabs__nav-wrap .el-tabs__nav .el-tabs__item.is-top:last-child{padding-right:var(--ibiz-spacing-none)}.ibiz-control-drtab .el-tabs.el-tabs--bottom .el-tabs__nav-scroll,.ibiz-control-drtab .el-tabs.el-tabs--top .el-tabs__nav-scroll{padding:0 var(--ibiz-spacing-base)}.ibiz-control-drtab .el-tabs__item{padding:0 var(--ibiz-spacing-base)}.ibiz-control-drtab .el-tabs__nav-next,.ibiz-control-drtab .el-tabs__nav-prev{line-height:var(--el-tabs-header-height)}.ibiz-control-drtab-
|
|
1
|
+
.ibiz-control-drtab{--ibiz-control-drtab-active-color:var(--ibiz-color-primary);--ibiz-control-drtab-hover-color:var(--ibiz-color-text-0);--ibiz-control-drtab-hover-bg-color:transparent}.ibiz-control-drtab__counter{margin-left:var(--ibiz-spacing-tight)}.ibiz-control-drtab .el-tabs .el-tabs__header{margin:var(--ibiz-spacing-none)}.ibiz-control-drtab .el-tabs .el-tabs__header .el-tabs__nav-wrap{margin:var(--ibiz-spacing-none)}.ibiz-control-drtab .el-tabs .el-tabs__header .el-tabs__nav-wrap .el-tabs__nav .el-tabs__active-bar{background-color:var(--ibiz-control-drtab-active-color)}.ibiz-control-drtab .el-tabs .el-tabs__header .el-tabs__nav-wrap .el-tabs__nav .el-tabs__item{font-size:var(--ibiz-font-size-regular);color:var(--ibiz-color-text-2)}.ibiz-control-drtab .el-tabs .el-tabs__header .el-tabs__nav-wrap .el-tabs__nav .el-tabs__item:hover{color:var(--ibiz-control-drtab-hover-color);background-color:var(--ibiz-control-drtab-hover-bg-color)}.ibiz-control-drtab .el-tabs .el-tabs__header .el-tabs__nav-wrap .el-tabs__nav .el-tabs__item.is-active{color:var(--ibiz-control-drtab-active-color)}.ibiz-control-drtab .el-tabs .el-tabs__header .el-tabs__nav-wrap .el-tabs__nav .el-tabs__item.is-top:last-child{padding-right:var(--ibiz-spacing-none)}.ibiz-control-drtab .el-tabs.el-tabs--bottom .el-tabs__nav-scroll,.ibiz-control-drtab .el-tabs.el-tabs--top .el-tabs__nav-scroll{padding:0 var(--ibiz-spacing-base)}.ibiz-control-drtab .el-tabs__item{padding:0 var(--ibiz-spacing-base)}.ibiz-control-drtab .el-tabs__nav-next,.ibiz-control-drtab .el-tabs__nav-prev{line-height:var(--el-tabs-header-height)}.ibiz-control-drtab-label__icon{margin-right:var(--ibiz-spacing-tight)}.ibiz-control-drtab-more .el-tabs.el-tabs.el-tabs--top .el-tabs__header .el-tabs__nav-next,.ibiz-control-drtab-more .el-tabs.el-tabs.el-tabs--top .el-tabs__header .el-tabs__nav-prev{display:none}.ibiz-control-drtab-more .el-tabs.el-tabs.el-tabs--top .el-tabs__nav-wrap.is-scrollable{padding:var(--ibiz-spacing-none)}.ibiz-control-drtab-more-dropdown{height:100%}.ibiz-control-drtab-more-dropdown__link{position:relative;display:flex;align-items:center;font-size:var(--ibiz-font-size-regular);color:var(--ibiz-color-text-2)}.ibiz-control-drtab-more-dropdown__link svg{color:var(--ibiz-color-text-2);fill:var(--ibiz-color-text-2)}.ibiz-control-drtab-more-dropdown__link:hover{color:var(--ibiz-color-text-0)}.ibiz-control-drtab-more-dropdown__link:hover svg{color:var(--ibiz-color-text-0);fill:var(--ibiz-color-text-0)}.ibiz-control-drtab-more-dropdown__link::after{position:absolute;left:-16px;display:inline-block;width:100%;height:100%;content:""}.ibiz-control-drtab-more-dropdown-popper{width:240px}.ibiz-control-drtab-more-dropdown-popper__active{background-color:var(--ibiz-color-primary-active)}.ibiz-control-drtab-more-dropdown-popper__label{display:flex;align-items:center;width:100%;overflow:hidden}.ibiz-control-drtab-more-dropdown-popper__label--text{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ibiz-control-drtab-more-dropdown-popper__label--counter{min-width:20px;margin-left:var(--ibiz-spacing-tight)}.ibiz-control-drtab-more-dropdown-popper.el-popper.el-dropdown__popper .el-scrollbar .el-dropdown__list .ibiz-control-drtab-more-dropdown-popper__active.el-dropdown-menu__item{background-color:var(--ibiz-color-primary-active)}.ibiz-control-drtab-dropdown-list .ibiz-badge{width:var(--ibiz-width-icon-medium);height:var(--ibiz-width-icon-medium);display:flex;align-items:center;justify-content:center;font-size:var(--ibiz-font-size-small)}.ibiz-control-drtab-dropdown-list__trigger{display:flex;cursor:pointer;align-items:center;font-size:var(--ibiz-font-size-header-5)}.ibiz-control-drtab-dropdown-list__trigger .caption{position:relative;padding:var(--ibiz-spacing-tight)}.ibiz-control-drtab-dropdown-list__trigger .caption .ibiz-badge{top:0;right:-6px;position:absolute}.ibiz-control-drtab-dropdown-list__popper{max-width:220px;min-width:150px}.ibiz-control-drtab-dropdown-list__popper--content{max-height:26vh;overflow:auto}.ibiz-control-drtab-dropdown-list__popper--item{display:flex;align-items:center}.ibiz-control-drtab-dropdown-list__popper--item .caption{padding-right:var(--ibiz-spacing-tight);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ibiz-control-drtab-dropdown-list__popper--item .ibiz-badge{width:var(--ibiz-width-icon-medium);height:var(--ibiz-width-icon-medium);display:flex;align-items:center;justify-content:center;font-size:var(--ibiz-font-size-small);margin-right:var(--ibiz-spacing-tight)}.ibiz-control-drtab-dropdown-list__popper--item ion-icon{color:var(--ibiz-color-primary);font-size:var(--ibiz-width-icon-medium)}.ibiz-control-drtab-dropdown-list__popper--item.is-active{background-color:var(--ibiz-color-fill-0)!important}.ibiz-control-drtab-dropdown-list__popper.el-popper.el-dropdown__popper .el-scrollbar .el-dropdown__list{background-color:transparent}.ibiz-control-drtab-dropdown-list__popper.el-popper.el-dropdown__popper .el-scrollbar .el-dropdown__list .el-dropdown-menu__item{min-height:38px;color:var(--ibiz-color-text-0);background-color:transparent}.ibiz-control-drtab-dropdown-list__popper.el-popper.el-dropdown__popper .el-scrollbar .el-dropdown__list .el-dropdown-menu__item:hover{background-color:var(--ibiz-color-fill-0)}
|
|
@@ -130,7 +130,7 @@ const FormGroupPanel = /* @__PURE__ */ vue.defineComponent({
|
|
|
130
130
|
}, [!state.isShowMore ? ibiz.i18n.t("control.form.formGroupPanel.showMore") : ibiz.i18n.t("app.retract")])]);
|
|
131
131
|
}
|
|
132
132
|
return vue.createVNode("div", {
|
|
133
|
-
"id": this.modelData.
|
|
133
|
+
"id": "".concat(this.controller.form.view.model.codeName, "_").concat(this.controller.form.model.codeName, "_").concat(this.modelData.codeName),
|
|
134
134
|
"class": classArr,
|
|
135
135
|
"onClick": (event) => this.controller.onClick(event)
|
|
136
136
|
}, [header, vue.createVNode("div", {
|
|
@@ -28,14 +28,32 @@ const FormItem = /* @__PURE__ */ vue.defineComponent({
|
|
|
28
28
|
}
|
|
29
29
|
},
|
|
30
30
|
setup(props) {
|
|
31
|
+
var _a, _b, _c, _d;
|
|
31
32
|
const ns = vue3Util.useNamespace("form-item");
|
|
32
33
|
const c = props.controller;
|
|
33
34
|
const onValueChange = (val, name) => {
|
|
34
35
|
props.controller.setDataValue(val, name);
|
|
35
36
|
};
|
|
37
|
+
const extraParams = vue.ref({});
|
|
38
|
+
let emptyHiddenUnit = ibiz.config.form.emptyHiddenUnit;
|
|
39
|
+
const emptyhiddenunit = (_b = (_a = props.controller.form) == null ? void 0 : _a.controlParams) == null ? void 0 : _b.emptyhiddenunit;
|
|
40
|
+
if (emptyhiddenunit) {
|
|
41
|
+
emptyHiddenUnit = Object.is(emptyhiddenunit, "true");
|
|
42
|
+
}
|
|
43
|
+
const editorParams = ((_d = (_c = props.controller.editor) == null ? void 0 : _c.model) == null ? void 0 : _d.editorParams) || {};
|
|
44
|
+
const {
|
|
45
|
+
EMPTYHIDDENUNIT
|
|
46
|
+
} = editorParams;
|
|
47
|
+
if (EMPTYHIDDENUNIT) {
|
|
48
|
+
emptyHiddenUnit = Object.is(EMPTYHIDDENUNIT, "true");
|
|
49
|
+
}
|
|
50
|
+
Object.assign(extraParams.value, {
|
|
51
|
+
emptyHiddenUnit
|
|
52
|
+
});
|
|
36
53
|
return {
|
|
37
54
|
ns,
|
|
38
55
|
c,
|
|
56
|
+
extraParams,
|
|
39
57
|
onValueChange
|
|
40
58
|
};
|
|
41
59
|
},
|
|
@@ -54,6 +72,7 @@ const FormItem = /* @__PURE__ */ vue.defineComponent({
|
|
|
54
72
|
disabled: this.controller.state.disabled,
|
|
55
73
|
readonly: this.controller.state.readonly,
|
|
56
74
|
onChange: this.onValueChange,
|
|
75
|
+
extraParams: this.extraParams,
|
|
57
76
|
controlParams: editMode ? {
|
|
58
77
|
...this.controller.form.controlParams,
|
|
59
78
|
editmode: editMode
|
|
@@ -79,7 +98,7 @@ const FormItem = /* @__PURE__ */ vue.defineComponent({
|
|
|
79
98
|
}
|
|
80
99
|
}
|
|
81
100
|
return vue.createVNode(vue.resolveComponent("iBizFormItemContainer"), {
|
|
82
|
-
"id": this.
|
|
101
|
+
"id": "".concat(this.controller.form.view.model.codeName, "_").concat(this.controller.form.model.codeName, "_").concat(this.modelData.codeName),
|
|
83
102
|
"class": [this.ns.b(), this.ns.m(this.modelData.id), ...this.controller.containerClass],
|
|
84
103
|
"style": this.modelData.cssStyle,
|
|
85
104
|
"required": this.c.state.required,
|
|
@@ -103,7 +103,7 @@ const FormTabPanel = /* @__PURE__ */ vue.defineComponent({
|
|
|
103
103
|
let _slot;
|
|
104
104
|
const value = c.model.counterId ? this.counterData.value[c.model.counterId] : void 0;
|
|
105
105
|
return c.model.counterId ? vue.createVNode(vue.resolveComponent("el-badge"), {
|
|
106
|
-
"class": this.ns.e("badge"),
|
|
106
|
+
"class": [this.ns.e("badge"), this.ns.is("no-counter", !value && value !== 0 || c.model.counterMode === 1 && value <= 0)],
|
|
107
107
|
"value": value,
|
|
108
108
|
"hidden": !value && value !== 0 || c.model.counterMode === 1 && value <= 0
|
|
109
109
|
}, _isSlot(_slot = renderItemText(c)) ? _slot : {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
.ibiz-form-tab-panel{width:100%;height:100%;--ibiz-form-tab-panel-font-size:var(--ibiz-font-size-header-4);--ibiz-form-tab-panel-header-border-color:var(--ibiz-color-border);--ibiz-form-tab-panel-text-color:var(--ibiz-color-text-2);--ibiz-form-tab-panel-bg-color:transparent;--ibiz-form-tab-panel-hover-text-color:var(--ibiz-color-primary);--ibiz-form-tab-panel-hover-bg-color:transparent;--ibiz-form-tab-panel-active-text-color:var(--ibiz-color-primary);--ibiz-form-tab-panel-active-bg-color:transparent;--ibiz-form-tab-panel-active-border-color:var(--ibiz-color-primary)}.ibiz-form-tab-panel>.el-tabs__header.is-top{margin-bottom:var(--ibiz-spacing-tight)}.ibiz-form-tab-panel>.el-tabs__header.is-top .el-tabs__item.is-top{font-size:var(--ibiz-form-tab-panel-font-size);color:var(--ibiz-form-tab-panel-text-color);background-color:var(--ibiz-form-tab-panel-bg-color)}.ibiz-form-tab-panel>.el-tabs__header.is-top .el-tabs__item.is-top:hover{color:var(--ibiz-form-tab-panel-hover-text-color);background-color:var(--ibiz-form-tab-panel-hover-bg-color)}.ibiz-form-tab-panel>.el-tabs__header.is-top .el-tabs__item.is-top.is-active{color:var(--ibiz-form-tab-panel-active-text-color);background-color:var(--ibiz-form-tab-panel-active-bg-color)}.ibiz-form-tab-panel .el-tabs__nav-wrap::after{height:1px;background-color:var(--ibiz-form-tab-panel-header-border-color)}.ibiz-form-tab-panel .el-tabs__active-bar{background-color:var(--ibiz-form-tab-panel-active-border-color)}.ibiz-form-tab-panel__badge .el-badge__content{padding:var(--ibiz-spacing-extra-tight);font-size:var(--ibiz-font-size-small);background-color:var(--ibiz-color-danger)}
|
|
1
|
+
.ibiz-form-tab-panel{width:100%;height:100%;--ibiz-form-tab-panel-font-size:var(--ibiz-font-size-header-4);--ibiz-form-tab-panel-header-border-color:var(--ibiz-color-border);--ibiz-form-tab-panel-text-color:var(--ibiz-color-text-2);--ibiz-form-tab-panel-bg-color:transparent;--ibiz-form-tab-panel-hover-text-color:var(--ibiz-color-primary);--ibiz-form-tab-panel-hover-bg-color:transparent;--ibiz-form-tab-panel-active-text-color:var(--ibiz-color-primary);--ibiz-form-tab-panel-active-bg-color:transparent;--ibiz-form-tab-panel-active-border-color:var(--ibiz-color-primary)}.ibiz-form-tab-panel>.el-tabs__header.is-top{margin-bottom:var(--ibiz-spacing-tight)}.ibiz-form-tab-panel>.el-tabs__header.is-top .el-tabs__item.is-top{font-size:var(--ibiz-form-tab-panel-font-size);color:var(--ibiz-form-tab-panel-text-color);background-color:var(--ibiz-form-tab-panel-bg-color)}.ibiz-form-tab-panel>.el-tabs__header.is-top .el-tabs__item.is-top:hover{color:var(--ibiz-form-tab-panel-hover-text-color);background-color:var(--ibiz-form-tab-panel-hover-bg-color)}.ibiz-form-tab-panel>.el-tabs__header.is-top .el-tabs__item.is-top.is-active{color:var(--ibiz-form-tab-panel-active-text-color);background-color:var(--ibiz-form-tab-panel-active-bg-color)}.ibiz-form-tab-panel .el-tabs__nav-wrap::after{height:1px;background-color:var(--ibiz-form-tab-panel-header-border-color)}.ibiz-form-tab-panel .el-tabs__active-bar{background-color:var(--ibiz-form-tab-panel-active-border-color)}.ibiz-form-tab-panel .el-tabs__item .ibiz-form-tab-panel__badge.is-no-counter{padding-right:var(--ibiz-spacing-none)}.ibiz-form-tab-panel__badge .el-badge__content{padding:var(--ibiz-spacing-extra-tight);font-size:var(--ibiz-font-size-small);background-color:var(--ibiz-color-danger)}
|
|
@@ -3,6 +3,7 @@
|
|
|
3
3
|
var vue = require('vue');
|
|
4
4
|
var vue3Util = require('@ibiz-template/vue3-util');
|
|
5
5
|
var runtime = require('@ibiz-template/runtime');
|
|
6
|
+
var core = require('@ibiz-template/core');
|
|
6
7
|
var dayjs = require('dayjs');
|
|
7
8
|
var elTreeUtil = require('../tree/el-tree-util.cjs');
|
|
8
9
|
require('./gantt.css');
|
|
@@ -45,12 +46,12 @@ const GanttControl = /* @__PURE__ */ vue.defineComponent({
|
|
|
45
46
|
const ganttRef = vue.ref();
|
|
46
47
|
const isInited = vue.ref(false);
|
|
47
48
|
const ns = vue3Util.useNamespace("control-".concat(c.model.controlType.toLowerCase()));
|
|
49
|
+
let overlay = null;
|
|
48
50
|
const sliderMove = vue.ref(false);
|
|
49
51
|
const iBizRawItem = vue.resolveComponent("IBizRawItem");
|
|
50
52
|
const iBizIcon = vue.resolveComponent("IBizIcon");
|
|
51
53
|
let forbidClick = false;
|
|
52
54
|
const selection = [];
|
|
53
|
-
const color = ["blue", "light-blue", "blue-cyan", "pink", "purple", "violet", "indigo", "cyan", "teal", "green", "light-green", "lime", "yellow", "amber", "orange", "grey", "sky-blue"];
|
|
54
55
|
const app = (_a = vue.getCurrentInstance()) == null ? void 0 : _a.appContext.app;
|
|
55
56
|
vue.onMounted(() => {
|
|
56
57
|
const importGantt = () => import('@ibiz-template-plugin/gantt');
|
|
@@ -77,22 +78,26 @@ const GanttControl = /* @__PURE__ */ vue.defineComponent({
|
|
|
77
78
|
const root = document.documentElement;
|
|
78
79
|
return getComputedStyle(root).getPropertyValue(varName);
|
|
79
80
|
};
|
|
80
|
-
const
|
|
81
|
+
const {
|
|
82
|
+
UIStore
|
|
83
|
+
} = vue3Util.useUIStore();
|
|
84
|
+
const ganttStyle = vue.ref({});
|
|
85
|
+
const calcGanttStyle = () => {
|
|
81
86
|
var _a2, _b;
|
|
82
|
-
|
|
87
|
+
return {
|
|
83
88
|
primaryColor: ((_a2 = c.state.ganttStyle) == null ? void 0 : _a2.primaryColor) || getVarValue("--ibiz-color-primary"),
|
|
84
|
-
textColor: ((_b = c.state.ganttStyle) == null ? void 0 : _b.textColor) || getVarValue("--ibiz-color-
|
|
89
|
+
textColor: ((_b = c.state.ganttStyle) == null ? void 0 : _b.textColor) || getVarValue("--ibiz-color-text-3"),
|
|
90
|
+
headerBgColor: "rgba(".concat(getVarValue("--ibiz-grey-1"), ", 1)"),
|
|
91
|
+
bgColor: getVarValue("--ibiz-color-bg-1"),
|
|
92
|
+
weekendColor: getVarValue("--ibiz-color-fill-2"),
|
|
93
|
+
todayColor: getVarValue("--ibiz-color-primary-light-active"),
|
|
94
|
+
borderColor: getVarValue("--ibiz-color-tertiary-light-active")
|
|
85
95
|
};
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
(_a2 = c.model.detreeNodes) == null ? void 0 : _a2.forEach((node, index) => {
|
|
92
|
-
const colorIndex = index % color.length;
|
|
93
|
-
nodeColor[node.id] = "rgba(".concat(getVarValue("--ibiz-".concat(color[colorIndex], "-0")), ", 1)");
|
|
94
|
-
});
|
|
95
|
-
return nodeColor;
|
|
96
|
+
};
|
|
97
|
+
vue.watch(() => UIStore.theme, () => {
|
|
98
|
+
ganttStyle.value = calcGanttStyle();
|
|
99
|
+
}, {
|
|
100
|
+
immediate: true
|
|
96
101
|
});
|
|
97
102
|
const loading = vue.computed(() => {
|
|
98
103
|
if (c.state.isLoaded) {
|
|
@@ -201,6 +206,30 @@ const GanttControl = /* @__PURE__ */ vue.defineComponent({
|
|
|
201
206
|
sliderMove.value = true;
|
|
202
207
|
c.modifyNodeTime(nodeData, newValue);
|
|
203
208
|
};
|
|
209
|
+
const onSettingClick = async () => {
|
|
210
|
+
let limitsize = 0;
|
|
211
|
+
if (c.controlParams.limitsize) {
|
|
212
|
+
limitsize = Number(c.controlParams.limitsize);
|
|
213
|
+
}
|
|
214
|
+
const res = await ibiz.overlay.modal((modal) => {
|
|
215
|
+
const comp = vue.resolveComponent("IBizGanttSetting");
|
|
216
|
+
const options = {
|
|
217
|
+
modal,
|
|
218
|
+
columnStates: c.state.columnStates,
|
|
219
|
+
limitsize
|
|
220
|
+
};
|
|
221
|
+
if (c.state.mustShowColumns) {
|
|
222
|
+
options.mustShowColumns = c.state.mustShowColumns;
|
|
223
|
+
}
|
|
224
|
+
return vue.h(comp, options);
|
|
225
|
+
}, void 0, {
|
|
226
|
+
width: "auto",
|
|
227
|
+
height: "auto"
|
|
228
|
+
});
|
|
229
|
+
if (res.ok && res.data && res.data.length > 0) {
|
|
230
|
+
c.setColumnVisible(res.data);
|
|
231
|
+
}
|
|
232
|
+
};
|
|
204
233
|
const calcContextMenuItems = (toolbarItems, nodeData, evt, menuState) => {
|
|
205
234
|
const result = [];
|
|
206
235
|
toolbarItems.forEach((item) => {
|
|
@@ -307,18 +336,25 @@ const GanttControl = /* @__PURE__ */ vue.defineComponent({
|
|
|
307
336
|
align
|
|
308
337
|
} = model;
|
|
309
338
|
const columnC = c.columns[codeName];
|
|
339
|
+
const columnState = c.state.columnStates.find((item) => {
|
|
340
|
+
return item.key === codeName;
|
|
341
|
+
});
|
|
342
|
+
let tempWidth = 30;
|
|
343
|
+
if (columnState && columnState.columnWidth) {
|
|
344
|
+
tempWidth = columnState.columnWidth > 30 ? columnState.columnWidth : 30;
|
|
345
|
+
} else if (width && width > 30) {
|
|
346
|
+
tempWidth = width;
|
|
347
|
+
}
|
|
310
348
|
return vue.createVNode(vue.resolveComponent("x-gantt-column"), {
|
|
311
349
|
"label": caption,
|
|
312
350
|
"prop": codeName,
|
|
313
|
-
"width":
|
|
351
|
+
"width": tempWidth,
|
|
314
352
|
"center": (align == null ? void 0 : align.toLowerCase()) === "center"
|
|
315
353
|
}, {
|
|
316
|
-
title: ({
|
|
317
|
-
label
|
|
318
|
-
}) => {
|
|
354
|
+
title: () => {
|
|
319
355
|
return vue.createVNode("div", {
|
|
320
356
|
"class": headerSysCss == null ? void 0 : headerSysCss.cssName
|
|
321
|
-
}, [
|
|
357
|
+
}, [caption]);
|
|
322
358
|
},
|
|
323
359
|
default: ({
|
|
324
360
|
row
|
|
@@ -337,12 +373,12 @@ const GanttControl = /* @__PURE__ */ vue.defineComponent({
|
|
|
337
373
|
});
|
|
338
374
|
};
|
|
339
375
|
const renderNodePanel = (modelData, item) => {
|
|
340
|
-
return vue.
|
|
341
|
-
|
|
342
|
-
|
|
343
|
-
|
|
344
|
-
|
|
345
|
-
}
|
|
376
|
+
return vue.h(vue3Util.IBizControlShell, {
|
|
377
|
+
data: item,
|
|
378
|
+
modelData,
|
|
379
|
+
context: c.context,
|
|
380
|
+
params: c.params
|
|
381
|
+
});
|
|
346
382
|
};
|
|
347
383
|
const renderNodeInfo = (item) => {
|
|
348
384
|
return vue.createVNode("div", {
|
|
@@ -358,6 +394,29 @@ const GanttControl = /* @__PURE__ */ vue.defineComponent({
|
|
|
358
394
|
"class": "caption"
|
|
359
395
|
}, [item._text])])]);
|
|
360
396
|
};
|
|
397
|
+
const openPopover = (row, evt) => {
|
|
398
|
+
if (overlay) {
|
|
399
|
+
return;
|
|
400
|
+
}
|
|
401
|
+
const panel = findNodeLayoutPanel(row._nodeId);
|
|
402
|
+
const component = panel ? renderNodePanel(panel, row._deData) : renderNodeInfo(row);
|
|
403
|
+
overlay = ibiz.overlay.createPopover((modal) => {
|
|
404
|
+
return vue.h(component, {
|
|
405
|
+
modal
|
|
406
|
+
});
|
|
407
|
+
}, void 0, {
|
|
408
|
+
width: "auto",
|
|
409
|
+
height: "auto",
|
|
410
|
+
noArrow: true,
|
|
411
|
+
placement: "bottom",
|
|
412
|
+
modalClass: ns.e("slider-popover")
|
|
413
|
+
});
|
|
414
|
+
overlay == null ? void 0 : overlay.present(evt.target.children[0]);
|
|
415
|
+
};
|
|
416
|
+
const closePopover = () => {
|
|
417
|
+
overlay == null ? void 0 : overlay.dismiss();
|
|
418
|
+
overlay = null;
|
|
419
|
+
};
|
|
361
420
|
const renderSlider = () => {
|
|
362
421
|
return vue.createVNode(vue.resolveComponent("x-gantt-slider"), {
|
|
363
422
|
"allow-link": false,
|
|
@@ -366,31 +425,30 @@ const GanttControl = /* @__PURE__ */ vue.defineComponent({
|
|
|
366
425
|
"resize-right": c.state.sliderDraggable
|
|
367
426
|
}, {
|
|
368
427
|
content: ({
|
|
369
|
-
row
|
|
428
|
+
row,
|
|
429
|
+
left
|
|
370
430
|
}) => {
|
|
371
|
-
|
|
372
|
-
|
|
373
|
-
|
|
374
|
-
|
|
375
|
-
|
|
376
|
-
|
|
377
|
-
|
|
378
|
-
|
|
379
|
-
|
|
380
|
-
|
|
381
|
-
|
|
382
|
-
|
|
383
|
-
|
|
384
|
-
|
|
385
|
-
|
|
386
|
-
|
|
387
|
-
|
|
431
|
+
const {
|
|
432
|
+
sysCss
|
|
433
|
+
} = c.getNodeModel(row._nodeId);
|
|
434
|
+
const sysCssName = (sysCss == null ? void 0 : sysCss.cssName) || "";
|
|
435
|
+
const marginLeft = left < 0 ? "".concat(-left, "px") : "";
|
|
436
|
+
const caption = row == null ? void 0 : row._text;
|
|
437
|
+
return vue.createVNode("div", {
|
|
438
|
+
"class": [ns.e("slider"), sysCssName],
|
|
439
|
+
"onClick": (evt) => onNodeClick(row, evt),
|
|
440
|
+
"onDblclick": () => onNodeDbClick(row),
|
|
441
|
+
"onContextmenu": (evt) => onNodeContextmenu(row, evt),
|
|
442
|
+
"onMouseenter": (evt) => openPopover(row, evt),
|
|
443
|
+
"onMouseleave": closePopover
|
|
444
|
+
}, [vue.createVNode("div", {
|
|
445
|
+
"class": ns.em("slider", "caption"),
|
|
446
|
+
"style": {
|
|
447
|
+
marginLeft
|
|
388
448
|
},
|
|
389
|
-
|
|
390
|
-
|
|
391
|
-
|
|
392
|
-
}
|
|
393
|
-
});
|
|
449
|
+
"title": caption,
|
|
450
|
+
"innerHTML": caption
|
|
451
|
+
}, null)]);
|
|
394
452
|
}
|
|
395
453
|
});
|
|
396
454
|
};
|
|
@@ -401,6 +459,39 @@ const GanttControl = /* @__PURE__ */ vue.defineComponent({
|
|
|
401
459
|
const slider = renderSlider();
|
|
402
460
|
return [..._columns, slider];
|
|
403
461
|
};
|
|
462
|
+
const renderSetting = () => {
|
|
463
|
+
if (!c.controlParams.enablecustomized || c.controlParams.enablecustomized && c.controlParams.enablecustomized === "false") {
|
|
464
|
+
return null;
|
|
465
|
+
}
|
|
466
|
+
return vue.createVNode("div", {
|
|
467
|
+
"class": ns.e("setting"),
|
|
468
|
+
"onClick": () => onSettingClick(),
|
|
469
|
+
"title": core.showTitle(ibiz.i18n.t("control.gantt.hideControl"))
|
|
470
|
+
}, [vue.createVNode("svg", {
|
|
471
|
+
"class": ns.em("setting", "icon"),
|
|
472
|
+
"viewBox": "0 0 16 16",
|
|
473
|
+
"xmlns": "http://www.w3.org/2000/svg",
|
|
474
|
+
"height": "1em",
|
|
475
|
+
"width": "1em",
|
|
476
|
+
"focusable": "false"
|
|
477
|
+
}, [vue.createVNode("g", {
|
|
478
|
+
"stroke-width": "1",
|
|
479
|
+
"fill-rule": "evenodd"
|
|
480
|
+
}, [vue.createVNode("path", {
|
|
481
|
+
"d": "M11.405 13.975l3.398-5.889L11.405 2.2H4.607L1.208 8.087l3.399 5.889h6.798zm1.023-12.4l3.43 5.938c.205.356.205.793 0 1.149l-3.43 5.938a1.147 1.147 0 0 1-.993.574H4.577c-.41 0-.789-.218-.994-.573L.153 8.66a1.153 1.153 0 0 1 0-1.147l3.43-5.94c.205-.356.584-.575.994-.575h6.858c.409 0 .788.22.993.576zM8.006 9.879c.988 0 1.792-.804 1.792-1.792s-.804-1.792-1.792-1.792-1.792.804-1.792 1.792.804 1.792 1.792 1.792zm0-4.784a2.993 2.993 0 1 1-.002 5.985 2.993 2.993 0 0 1 .002-5.985z"
|
|
482
|
+
}, null)])])]);
|
|
483
|
+
};
|
|
484
|
+
const onHeaderDragend = (index, width) => {
|
|
485
|
+
const columnState = c.state.columnStates.filter((item) => {
|
|
486
|
+
var _a2;
|
|
487
|
+
const columnModel = (_a2 = c.columns[item.key]) == null ? void 0 : _a2.model;
|
|
488
|
+
return !item.hidden && columnModel;
|
|
489
|
+
});
|
|
490
|
+
if (columnState && columnState[index]) {
|
|
491
|
+
columnState[index].columnWidth = width;
|
|
492
|
+
c.saveColumnState();
|
|
493
|
+
}
|
|
494
|
+
};
|
|
404
495
|
return {
|
|
405
496
|
c,
|
|
406
497
|
ns,
|
|
@@ -417,11 +508,13 @@ const GanttControl = /* @__PURE__ */ vue.defineComponent({
|
|
|
417
508
|
onNodeExpand,
|
|
418
509
|
onNodeCollapse,
|
|
419
510
|
renderContent,
|
|
511
|
+
renderSetting,
|
|
420
512
|
onSliderMove,
|
|
421
513
|
renderNoData,
|
|
422
514
|
allowDrop,
|
|
423
515
|
allowDrag,
|
|
424
|
-
handleDrop
|
|
516
|
+
handleDrop,
|
|
517
|
+
onHeaderDragend
|
|
425
518
|
};
|
|
426
519
|
},
|
|
427
520
|
render() {
|
|
@@ -439,6 +532,7 @@ const GanttControl = /* @__PURE__ */ vue.defineComponent({
|
|
|
439
532
|
"data": this.data,
|
|
440
533
|
"row-height": 46,
|
|
441
534
|
"expand-all": false,
|
|
535
|
+
"headerDrag": true,
|
|
442
536
|
"start-key": "_beginDataItemValue",
|
|
443
537
|
"end-key": "_endDataItemValue",
|
|
444
538
|
"children": "_children",
|
|
@@ -458,10 +552,19 @@ const GanttControl = /* @__PURE__ */ vue.defineComponent({
|
|
|
458
552
|
"onRowClick": this.onNodeClick,
|
|
459
553
|
"onRowDblClick": this.onNodeDbClick,
|
|
460
554
|
"onRowChecked": this.onCheck,
|
|
555
|
+
"onHeaderDragend": this.onHeaderDragend,
|
|
461
556
|
"onMoveSlider": this.onSliderMove,
|
|
462
557
|
"primaryColor": this.ganttStyle.primaryColor,
|
|
463
558
|
"headerStyle": {
|
|
464
|
-
textColor: this.ganttStyle.textColor
|
|
559
|
+
textColor: this.ganttStyle.textColor,
|
|
560
|
+
bgColor: this.ganttStyle.headerBgColor
|
|
561
|
+
},
|
|
562
|
+
"borderColor": this.ganttStyle.borderColor,
|
|
563
|
+
"bodyStyle": {
|
|
564
|
+
todayColor: this.ganttStyle.todayColor,
|
|
565
|
+
weekendColor: this.ganttStyle.headerBgColor,
|
|
566
|
+
bgColor: this.ganttStyle.bgColor,
|
|
567
|
+
selectColor: this.ganttStyle.headerBgColor
|
|
465
568
|
}
|
|
466
569
|
}, {
|
|
467
570
|
default: () => {
|
|
@@ -469,6 +572,9 @@ const GanttControl = /* @__PURE__ */ vue.defineComponent({
|
|
|
469
572
|
},
|
|
470
573
|
empty: () => {
|
|
471
574
|
return this.renderNoData();
|
|
575
|
+
},
|
|
576
|
+
setting: () => {
|
|
577
|
+
return this.renderSetting();
|
|
472
578
|
}
|
|
473
579
|
})]
|
|
474
580
|
}), [[vue.resolveDirective("loading"), this.loading]]);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
.ibiz-control-gantt{width:100%;height:100%}.ibiz-control-gantt .xg-root .xg-table-body .xg-table-row{cursor:pointer}.ibiz-control-gantt .xg-root .xg-table-body .xg-table-row .xg-table-cell:not(:first-child)>div{padding:var(--ibiz-spacing-none)}.ibiz-control-gantt .xg-root .xg-table-cell>div{width:100%}.ibiz-control-gantt .xg-root .xg-table-cell>div .cell{height:100%}.ibiz-control-gantt--empty .xg-table-body{height:calc(100% - 86px)!important}.ibiz-control-gantt__slider{height:100%;padding:var(--ibiz-spacing-none) var(--ibiz-spacing-base-tight);cursor:pointer;border-radius:var(--ibiz-border-radius-small)}.ibiz-control-gantt__slider--container-title .icon{margin-right:var(--ibiz-spacing-extra-tight)}.ibiz-control-gantt__slider--container-title .number{display:flex;align-items:center}.ibiz-control-gantt__slider--container-title .caption{margin:var(--ibiz-spacing-tight);font-size:var(--ibiz-font-size-header-6);font-weight:var(--ibiz-font-weight-regular)}.ibiz-control-gantt__slider--container-content{display:flex;justify-content:space-between}.ibiz-control-gantt__slider--container-content .caption{margin:var(--ibiz-spacing-extra-tight);color:var(--ibiz-color-disabled-text)}.ibiz-control-gantt__slider--container-content .detail{display:flex;flex-direction:column;flex-grow:1;align-items:center}.ibiz-control-gantt .ibiz-tree-grid-ex-field-column--ellipsis .ibiz-tree-grid-ex-field-column-text-container{min-width:0}.ibiz-control-gantt .ibiz-tree-grid-ex-field-column-toolbar-container{flex-shrink:0}.ibiz-control-gantt .ibiz-tree-grid-ex-edit-column__editor{min-height:32px}
|
|
1
|
+
.ibiz-control-gantt{width:100%;height:100%}.ibiz-control-gantt .xg-root{--gantt-bg:var(--ibiz-color-bg-1);--gantt-bg-hover:var(--ibiz-color-disabled-border);--gantt-bg-active:var(--ibiz-color-disabled-border);--gantt-bg-checkmark:transparent;--gantt-bg-toolbar-item-hover:var(--ibiz-color-primary-light-default);--gantt-shadow:var(--ibiz-color-shadow);--gantt-shadow-toolbar-item:var(--ibiz-color-shadow);--gantt-border:var(--ibiz-color-tertiary-light-active);--gantt-border-hover:var(--ibiz-color-tertiary-light-active);--gantt-border-dashed:var(--ibiz-color-disabled-border);--gantt-border-toolbar-item:var(--ibiz-color-border);--gantt-border-separate-line:var(--ibiz-color-border);--gantt-text-0:var(--ibiz-color-text-0);--gantt-text-3:var(--ibiz-color-text-3);--gantt-white:var(--ibiz-color-white);--gantt-black:var(--ibiz-color-black);--gantt-warning:var(--ibiz-color-warning)}.ibiz-control-gantt .xg-root .xg-table-body .xg-table-row{cursor:pointer}.ibiz-control-gantt .xg-root .xg-table-body .xg-table-row .xg-table-cell:not(:first-child)>div{padding:var(--ibiz-spacing-none)}.ibiz-control-gantt .xg-root .xg-table-cell>div{width:100%}.ibiz-control-gantt .xg-root .xg-table-cell>div .cell{height:100%}.ibiz-control-gantt .xg-root .xg-row.xg-gantt-row{overflow:visible}.ibiz-control-gantt .xg-root .xg-row.xg-gantt-row .xg-slider.xg-slider-drag.xg-slider-level0{overflow:visible}.ibiz-control-gantt .xg-root .xg-row.xg-gantt-row .xg-slider .xg-slider-block{overflow:visible}.ibiz-control-gantt .xg-root .xg-row.xg-gantt-row .xg-slider.is-no-width{display:none}.ibiz-control-gantt .xg-root .ibiz-control-gantt__slider--caption{position:sticky;left:8px}.ibiz-control-gantt .xg-root .is-exceeds-range .ibiz-control-gantt__slider::after{position:absolute;right:0;z-index:99;display:block;width:16px;height:100%;content:"";background-color:var(--ibiz-color-primary)}.ibiz-control-gantt--empty .xg-table-body{height:calc(100% - 86px)!important}.ibiz-control-gantt__slider{display:flex;align-items:center;height:100%;padding:var(--ibiz-spacing-none) var(--ibiz-spacing-base-tight);cursor:pointer;background-color:var(--ibiz-color-primary);border-radius:var(--ibiz-border-radius-small)}.ibiz-control-gantt__slider--container-title .icon{margin-right:var(--ibiz-spacing-extra-tight)}.ibiz-control-gantt__slider--container-title .number{display:flex;align-items:center}.ibiz-control-gantt__slider--container-title .caption{margin:var(--ibiz-spacing-tight);font-size:var(--ibiz-font-size-header-6);font-weight:var(--ibiz-font-weight-regular)}.ibiz-control-gantt__slider--container-content{display:flex;justify-content:space-between}.ibiz-control-gantt__slider--container-content .caption{margin:var(--ibiz-spacing-extra-tight);color:var(--ibiz-color-disabled-text)}.ibiz-control-gantt__slider--container-content .detail{display:flex;flex-direction:column;flex-grow:1;align-items:center}.ibiz-control-gantt__slider--caption{overflow:hidden;color:var(--ibiz-color-primary-text);text-overflow:ellipsis;white-space:nowrap}.ibiz-control-gantt__setting{display:flex;align-items:center}.ibiz-control-gantt__setting--icon{cursor:pointer;fill:var(--ibiz-color-primary)}.ibiz-control-gantt__slider-popover{z-index:300!important;width:auto;min-width:300px;padding:12px;border:none;box-shadow:var(--ibiz-shadow-elevated)}.ibiz-control-gantt .ibiz-tree-grid-ex-field-column--ellipsis .ibiz-tree-grid-ex-field-column-text-container{min-width:0}.ibiz-control-gantt .ibiz-tree-grid-ex-field-column-toolbar-container{flex-shrink:0}.ibiz-control-gantt .ibiz-tree-grid-ex-edit-column__editor{min-height:32px}.xg-view-toolbar-switch-action{--gantt-text-switch-item:var(--ibiz-color-text-3);--gantt-bg-hover-switch-item:var(--ibiz-color-bg-0)}
|
|
@@ -30,6 +30,19 @@ function useITableEvent(c) {
|
|
|
30
30
|
const tableRef = vue.ref();
|
|
31
31
|
let forbidChange = false;
|
|
32
32
|
let isGridUISort = false;
|
|
33
|
+
let isCtrlDown = false;
|
|
34
|
+
let cleanKeyDown = core.NOOP;
|
|
35
|
+
let cleanKeyUp = core.NOOP;
|
|
36
|
+
cleanKeyDown = core.listenJSEvent(window, "keydown", (e) => {
|
|
37
|
+
if (e.code === "ControlLeft") {
|
|
38
|
+
isCtrlDown = true;
|
|
39
|
+
}
|
|
40
|
+
});
|
|
41
|
+
cleanKeyUp = core.listenJSEvent(window, "keyup", (e) => {
|
|
42
|
+
if (e.code === "ControlLeft") {
|
|
43
|
+
isCtrlDown = false;
|
|
44
|
+
}
|
|
45
|
+
});
|
|
33
46
|
c.evt.on("onToggleRowExpansion", (event) => {
|
|
34
47
|
const { row, expand } = event;
|
|
35
48
|
if (tableRef.value) {
|
|
@@ -49,6 +62,17 @@ function useITableEvent(c) {
|
|
|
49
62
|
if (data.srfuf === runtime.Srfuf.CREATE) {
|
|
50
63
|
return;
|
|
51
64
|
}
|
|
65
|
+
if (isCtrlDown) {
|
|
66
|
+
const selection = [...c.state.selectedData];
|
|
67
|
+
const index = selection.findIndex((x) => x.srfkey === data.srfkey);
|
|
68
|
+
if (index !== -1) {
|
|
69
|
+
selection.splice(index, 1);
|
|
70
|
+
c.setSelection(selection);
|
|
71
|
+
} else {
|
|
72
|
+
c.setSelection([...selection, data]);
|
|
73
|
+
}
|
|
74
|
+
return;
|
|
75
|
+
}
|
|
52
76
|
const target = _event.target;
|
|
53
77
|
const { classList } = target.parentElement || {};
|
|
54
78
|
if (classList && classList.contains("el-table-column--selection")) {
|
|
@@ -116,7 +140,7 @@ function useITableEvent(c) {
|
|
|
116
140
|
if (sortQuery === c.state.sortQuery) {
|
|
117
141
|
return;
|
|
118
142
|
}
|
|
119
|
-
if (c.
|
|
143
|
+
if (c.runMode === "DESIGN") {
|
|
120
144
|
c.state.items = lodashEs.orderBy(
|
|
121
145
|
c.state.items,
|
|
122
146
|
[(item) => {
|
|
@@ -202,7 +226,9 @@ function useITableEvent(c) {
|
|
|
202
226
|
onSelectionChange,
|
|
203
227
|
onSortChange,
|
|
204
228
|
handleRowClassName,
|
|
205
|
-
handleHeaderCellClassName
|
|
229
|
+
handleHeaderCellClassName,
|
|
230
|
+
cleanKeyDown,
|
|
231
|
+
cleanKeyUp
|
|
206
232
|
};
|
|
207
233
|
}
|
|
208
234
|
function useAppGridPagination(c) {
|
|
@@ -233,7 +259,7 @@ function useAppGridBase(c, props) {
|
|
|
233
259
|
return;
|
|
234
260
|
}
|
|
235
261
|
c.state.items = props.data;
|
|
236
|
-
if (c.
|
|
262
|
+
if (c.runMode === "DESIGN") {
|
|
237
263
|
c.state.simpleData = props.data;
|
|
238
264
|
c.state.total = props.data.length;
|
|
239
265
|
c.state.curPage = 1;
|
|
@@ -385,7 +411,13 @@ function useAppGridBase(c, props) {
|
|
|
385
411
|
const headerDragend = (newWidth, oldWidth, column) => {
|
|
386
412
|
const { property } = column;
|
|
387
413
|
const columnC = c.columns[property];
|
|
414
|
+
const columnState = c.state.columnStates.find((item) => {
|
|
415
|
+
return item.key === property;
|
|
416
|
+
});
|
|
388
417
|
if (columnC.isAdaptiveColumn) {
|
|
418
|
+
if (columnState) {
|
|
419
|
+
columnState.adaptive = false;
|
|
420
|
+
}
|
|
389
421
|
columnC.isAdaptiveColumn = false;
|
|
390
422
|
columnC.model.width = newWidth;
|
|
391
423
|
const index = renderColumns.value.findIndex((renderColumn) => {
|
|
@@ -394,6 +426,10 @@ function useAppGridBase(c, props) {
|
|
|
394
426
|
});
|
|
395
427
|
c.hasAdaptiveColumn = index !== -1;
|
|
396
428
|
}
|
|
429
|
+
if (columnState) {
|
|
430
|
+
columnState.columnWidth = newWidth;
|
|
431
|
+
c.saveColumnStates();
|
|
432
|
+
}
|
|
397
433
|
};
|
|
398
434
|
return {
|
|
399
435
|
tableData,
|