@ibiz-template/vue3-components 0.7.41-alpha.1 → 0.7.41-alpha.10
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/chart-8QfxarWf.js +1 -0
- package/dist/ibiz-markdown-editor-V31Pwvs_.js +1 -0
- package/dist/{index-4CBJktLS.js → index-CsiyXR27.js} +1 -1
- package/dist/index-s6VfCazO.js +4 -0
- package/dist/{index-QL7Ukex9.js → index-tjsobxd3.js} +1 -1
- package/dist/index.min.css +1 -1
- package/dist/index.system.min.js +1 -1
- package/dist/wang-editor-EqGztmuv.js +1 -0
- package/dist/{xlsx-util-J1RHk00u.js → xlsx-util-oX2OlM-T.js} +1 -1
- package/es/common/data-import2/data-import2.mjs +3 -2
- package/es/common/editor-empty-text/editor-empty-text.css +1 -0
- package/es/common/editor-empty-text/editor-empty-text.d.ts +25 -0
- package/es/common/editor-empty-text/editor-empty-text.mjs +31 -0
- package/es/common/index.mjs +2 -0
- package/es/common/split/split.css +1 -1
- package/es/control/app-menu/app-menu.css +1 -1
- package/es/control/chart/chart.mjs +1 -1
- package/es/control/data-view/data-view.css +1 -1
- package/es/control/data-view/data-view.mjs +34 -8
- package/es/control/drbar/drbar.controller.mjs +5 -5
- package/es/control/drtab/drtab-control.util.mjs +1 -1
- package/es/control/drtab/drtab.controller.mjs +3 -5
- package/es/control/drtab/drtab.d.ts +13 -0
- package/es/control/drtab/drtab.mjs +7 -1
- package/es/control/drtab/index.d.ts +7 -0
- package/es/control/exp-bar/render-util.mjs +12 -1
- package/es/control/form/form-detail/form-item/form-item-container/form-item-container.css +1 -1
- package/es/control/form/form-detail/form-item/form-item-container/form-item-container.mjs +25 -4
- package/es/control/form/form-detail/form-mdctrl/form-mdctrl-repeater/repeater-multi-form/repeater-multi-form.mjs +1 -0
- package/es/control/form/form-detail/form-mdctrl/mdctrl-container/mdctrl-container.css +1 -1
- package/es/control/form/form-detail/form-mdctrl/mdctrl-container/mdctrl-container.d.ts +14 -1
- package/es/control/form/form-detail/form-mdctrl/mdctrl-container/mdctrl-container.mjs +63 -13
- package/es/control/grid/grid/grid-control.util.d.ts +1 -1
- package/es/control/grid/grid/grid-control.util.mjs +32 -5
- package/es/control/grid/grid/grid.css +1 -1
- package/es/control/grid/grid/grid.mjs +9 -7
- package/es/control/grid/row-edit-popover/use-row-edit-popover.mjs +1 -1
- package/es/control/kanban/kanban.css +1 -1
- package/es/control/kanban/kanban.d.ts +2 -2
- package/es/control/kanban/kanban.mjs +14 -9
- package/es/control/kanban/lane-kanban/lane-kanban.css +1 -0
- package/es/control/kanban/lane-kanban/lane-kanban.d.ts +27 -0
- package/es/control/kanban/lane-kanban/lane-kanban.mjs +409 -0
- package/es/control/list/list.css +1 -1
- package/es/control/list/list.mjs +16 -19
- package/es/control/toolbar/toolbar.css +1 -1
- package/es/control/toolbar/toolbar.mjs +232 -132
- package/es/control/tree/el-tree-util.d.ts +34 -1
- package/es/control/tree/el-tree-util.mjs +64 -1
- package/es/control/tree/index.d.ts +1 -0
- package/es/control/tree/tree.css +1 -1
- package/es/control/tree/tree.d.ts +6 -1
- package/es/control/tree/tree.mjs +153 -17
- package/es/control/tree-grid/tree-grid.mjs +1 -1
- package/es/control/tree-grid-ex/use-row-edit-popover.mjs +1 -1
- package/es/control/wizard-panel/wizard-panel.css +1 -1
- package/es/control/wizard-panel/wizard-panel.mjs +24 -8
- package/es/editor/autocomplete/ibiz-autocomplete/ibiz-autocomplete.d.ts +1 -1
- package/es/editor/autocomplete/ibiz-autocomplete/ibiz-autocomplete.mjs +5 -2
- package/es/editor/cascader/ibiz-cascader/ibiz-cascader.d.ts +5 -5
- package/es/editor/cascader/ibiz-cascader/ibiz-cascader.mjs +7 -1
- package/es/editor/check-box/ibiz-checkbox/ibiz-checkbox.d.ts +2 -2
- package/es/editor/check-box/ibiz-checkbox/ibiz-checkbox.mjs +8 -2
- package/es/editor/check-box-list/checkbox-list-editor.controller.mjs +4 -1
- package/es/editor/check-box-list/ibiz-checkbox-list/ibiz-checkbox-list.d.ts +3 -1
- package/es/editor/code/monaco-editor/monaco-editor.mjs +2 -8
- package/es/editor/data-picker/ibiz-mpicker/ibiz-mpicker.mjs +4 -1
- package/es/editor/data-picker/ibiz-picker/ibiz-picker.d.ts +1 -1
- package/es/editor/data-picker/ibiz-picker/ibiz-picker.mjs +13 -14
- package/es/editor/data-picker/ibiz-picker-dropdown/ibiz-picker-dropdown.d.ts +4 -1
- package/es/editor/data-picker/ibiz-picker-dropdown/ibiz-picker-dropdown.mjs +18 -18
- package/es/editor/data-picker/ibiz-picker-embed-view/ibiz-picker-embed-view.d.ts +4 -4
- package/es/editor/data-picker/ibiz-picker-embed-view/ibiz-picker-embed-view.mjs +6 -0
- package/es/editor/data-picker/ibiz-picker-link/ibiz-picker-link.d.ts +1 -1
- package/es/editor/data-picker/ibiz-picker-link/ibiz-picker-link.mjs +12 -11
- package/es/editor/data-picker/ibiz-picker-select-view/ibiz-picker-select-view.mjs +4 -1
- package/es/editor/date-picker/ibiz-date-picker/ibiz-date-picker.mjs +4 -1
- package/es/editor/date-range/ibiz-date-range-picker/ibiz-date-range-picker.d.ts +4 -4
- package/es/editor/date-range/ibiz-date-range-picker/ibiz-date-range-picker.mjs +13 -1
- package/es/editor/dropdown-list/dropdown-list-editor.controller.mjs +14 -3
- package/es/editor/dropdown-list/ibiz-dropdown/ibiz-dropdown.d.ts +10 -6
- package/es/editor/dropdown-list/ibiz-dropdown/ibiz-dropdown.mjs +26 -20
- package/es/editor/dropdown-list/ibiz-emoji-picker/ibiz-emoji-picker.mjs +4 -1
- package/es/editor/html/wang-editor/wang-editor.mjs +5 -10
- package/es/editor/list-box/ibiz-list-box/ibiz-list-box.d.ts +3 -1
- package/es/editor/map-picker/ibiz-map-picker/ibiz-map-picker.mjs +4 -1
- package/es/editor/markdown/ibiz-markdown-editor/ibiz-markdown-editor.mjs +2 -2
- package/es/editor/number-range/ibiz-number-range-picker/ibiz-number-range-picker.mjs +4 -1
- package/es/editor/radio-button-list/ibiz-radio/ibiz-radio.d.ts +3 -3
- package/es/editor/radio-button-list/ibiz-radio/ibiz-radio.mjs +6 -0
- package/es/editor/radio-button-list/radio-button-list.controller.mjs +4 -1
- package/es/editor/rate/ibiz-rate/ibiz-rate.d.ts +3 -3
- package/es/editor/rate/ibiz-rate/ibiz-rate.mjs +3 -0
- package/es/editor/raw/ibiz-raw/ibiz-raw.d.ts +2 -2
- package/es/editor/raw/ibiz-raw/ibiz-raw.mjs +2 -0
- package/es/editor/slider/ibiz-slider/ibiz-slider.d.ts +12 -12
- package/es/editor/slider/ibiz-slider/ibiz-slider.mjs +14 -2
- package/es/editor/span/span/span.d.ts +3 -3
- package/es/editor/span/span/span.mjs +7 -4
- package/es/editor/stepper/ibiz-stepper/ibiz-stepper.d.ts +2 -2
- package/es/editor/stepper/ibiz-stepper/ibiz-stepper.mjs +2 -1
- package/es/editor/switch/ibiz-switch/ibiz-switch.d.ts +1 -1
- package/es/editor/text-box/ibiz-input-number/ibiz-input-number.d.ts +2 -2
- package/es/editor/text-box/ibiz-input-number/ibiz-input-number.mjs +5 -2
- package/es/editor/text-box/input/input.d.ts +4 -3
- package/es/editor/text-box/input/input.mjs +8 -11
- package/es/editor/upload/use/use-iview-upload.mjs +3 -4
- package/es/locale/en/index.d.ts +13 -0
- package/es/locale/en/index.mjs +5 -0
- package/es/locale/zh-CN/index.d.ts +13 -0
- package/es/locale/zh-CN/index.mjs +5 -0
- package/es/panel-component/app-extend-menu/bottom-side-menu/bottom-side-menu.controller.d.ts +10 -0
- package/es/panel-component/app-extend-menu/bottom-side-menu/bottom-side-menu.controller.mjs +17 -0
- package/es/panel-component/app-extend-menu/bottom-side-menu/bottom-side-menu.css +1 -0
- package/es/panel-component/app-extend-menu/bottom-side-menu/bottom-side-menu.d.ts +45 -0
- package/es/panel-component/app-extend-menu/bottom-side-menu/bottom-side-menu.mjs +56 -0
- package/es/panel-component/app-extend-menu/bottom-side-menu/bottom-side-menu.provider.d.ts +7 -0
- package/es/panel-component/app-extend-menu/bottom-side-menu/bottom-side-menu.provider.mjs +21 -0
- package/es/panel-component/app-extend-menu/bottom-side-menu/index.d.ts +5 -0
- package/es/panel-component/app-extend-menu/bottom-side-menu/index.mjs +16 -0
- package/es/panel-component/app-extend-menu/extend-menu-base/common-extend-menu/common-extend-menu.css +1 -0
- package/es/panel-component/app-extend-menu/extend-menu-base/common-extend-menu/common-extend-menu.d.ts +135 -0
- package/es/panel-component/app-extend-menu/extend-menu-base/common-extend-menu/common-extend-menu.mjs +98 -0
- package/es/panel-component/app-extend-menu/extend-menu-base/extend-button-menu/extend-button-menu.css +1 -0
- package/es/panel-component/app-extend-menu/extend-menu-base/extend-button-menu/extend-button-menu.d.ts +2030 -0
- package/es/panel-component/app-extend-menu/extend-menu-base/extend-button-menu/extend-button-menu.mjs +235 -0
- package/es/panel-component/app-extend-menu/extend-menu-base/extend-menu-base.controller.d.ts +149 -0
- package/es/panel-component/app-extend-menu/extend-menu-base/extend-menu-base.controller.mjs +258 -0
- package/es/panel-component/app-extend-menu/extend-menu-base/extend-menu-base.state.d.ts +27 -0
- package/es/panel-component/app-extend-menu/extend-menu-base/extend-menu-base.state.mjs +28 -0
- package/es/panel-component/app-extend-menu/extend-menu-base/extend-menu-base.util.d.ts +175 -0
- package/es/panel-component/app-extend-menu/extend-menu-base/extend-menu-base.util.mjs +349 -0
- package/es/panel-component/app-extend-menu/index.d.ts +5 -0
- package/es/panel-component/app-extend-menu/index.mjs +18 -0
- package/es/panel-component/app-extend-menu/left-side-menu/index.d.ts +5 -0
- package/es/panel-component/app-extend-menu/left-side-menu/index.mjs +16 -0
- package/es/panel-component/app-extend-menu/left-side-menu/left-side-menu.controller.d.ts +10 -0
- package/es/panel-component/app-extend-menu/left-side-menu/left-side-menu.controller.mjs +17 -0
- package/es/panel-component/app-extend-menu/left-side-menu/left-side-menu.css +1 -0
- package/es/panel-component/app-extend-menu/left-side-menu/left-side-menu.d.ts +45 -0
- package/es/panel-component/app-extend-menu/left-side-menu/left-side-menu.mjs +56 -0
- package/es/panel-component/app-extend-menu/left-side-menu/left-side-menu.provider.d.ts +7 -0
- package/es/panel-component/app-extend-menu/left-side-menu/left-side-menu.provider.mjs +21 -0
- package/es/panel-component/app-extend-menu/right-side-menu/index.d.ts +5 -0
- package/es/panel-component/app-extend-menu/right-side-menu/index.mjs +16 -0
- package/es/panel-component/app-extend-menu/right-side-menu/right-side-menu.controller.d.ts +10 -0
- package/es/panel-component/app-extend-menu/right-side-menu/right-side-menu.controller.mjs +17 -0
- package/es/panel-component/app-extend-menu/right-side-menu/right-side-menu.css +1 -0
- package/es/panel-component/app-extend-menu/right-side-menu/right-side-menu.d.ts +45 -0
- package/es/panel-component/app-extend-menu/right-side-menu/right-side-menu.mjs +56 -0
- package/es/panel-component/app-extend-menu/right-side-menu/right-side-menu.provider.d.ts +7 -0
- package/es/panel-component/app-extend-menu/right-side-menu/right-side-menu.provider.mjs +21 -0
- package/es/panel-component/app-extend-menu/top-side-menu/index.d.ts +5 -0
- package/es/panel-component/app-extend-menu/top-side-menu/index.mjs +16 -0
- package/es/panel-component/app-extend-menu/top-side-menu/top-side-menu.controller.d.ts +10 -0
- package/es/panel-component/app-extend-menu/top-side-menu/top-side-menu.controller.mjs +17 -0
- package/es/panel-component/app-extend-menu/top-side-menu/top-side-menu.css +1 -0
- package/es/panel-component/app-extend-menu/top-side-menu/top-side-menu.d.ts +45 -0
- package/es/panel-component/app-extend-menu/top-side-menu/top-side-menu.mjs +56 -0
- package/es/panel-component/app-extend-menu/top-side-menu/top-side-menu.provider.d.ts +7 -0
- package/es/panel-component/app-extend-menu/top-side-menu/top-side-menu.provider.mjs +21 -0
- package/es/panel-component/index.mjs +2 -0
- package/es/util/app-util/app-util.d.ts +6 -0
- package/es/util/app-util/app-util.mjs +10 -8
- package/es/util/fullscreen/fullscreen-util.mjs +1 -1
- package/es/util/notification-util/upload-manager/upload-manager.mjs +1 -5
- package/es/view-engine/app-start-view.engine.d.ts +12 -0
- package/es/view-engine/app-start-view.engine.mjs +11 -0
- package/es/view-engine/app-welcome-view.engine.d.ts +12 -0
- package/es/view-engine/app-welcome-view.engine.mjs +11 -0
- package/es/view-engine/custom-view.engine.d.ts +2 -10
- package/es/view-engine/custom-view.engine.mjs +0 -8
- package/es/view-engine/data-view.engine.d.ts +2 -2
- package/es/view-engine/data-view.engine.mjs +0 -1
- package/es/view-engine/edit-view.engine.d.ts +13 -4
- package/es/view-engine/edit-view.engine.mjs +24 -8
- package/es/view-engine/edit-view4.engine.mjs +4 -0
- package/es/view-engine/gantt-view.engine.d.ts +2 -2
- package/es/view-engine/gantt-view.engine.mjs +0 -1
- package/es/view-engine/grid-view.engine.d.ts +2 -2
- package/es/view-engine/grid-view.engine.mjs +0 -1
- package/es/view-engine/index-view.engine.d.ts +2 -2
- package/es/view-engine/index-view.engine.mjs +1 -2
- package/es/view-engine/index.mjs +10 -0
- package/es/view-engine/list-view.engine.d.ts +2 -2
- package/es/view-engine/list-view.engine.mjs +0 -1
- package/es/view-engine/login-view.engine.d.ts +2 -2
- package/es/view-engine/login-view.engine.mjs +2 -0
- package/es/view-engine/md-custom-view.engine.d.ts +2 -10
- package/es/view-engine/md-custom-view.engine.mjs +0 -8
- package/es/view-engine/medit-view9.engine.d.ts +2 -2
- package/es/view-engine/medit-view9.engine.mjs +0 -1
- package/es/view-engine/mpickup-view-engine.d.ts +2 -2
- package/es/view-engine/opt-view.engine.d.ts +19 -4
- package/es/view-engine/opt-view.engine.mjs +35 -8
- package/es/view-engine/pickup-data-view.engine.d.ts +2 -2
- package/es/view-engine/pickup-data-view.engine.mjs +0 -1
- package/es/view-engine/pickup-grid-view.engine.d.ts +2 -2
- package/es/view-engine/pickup-grid-view.engine.mjs +0 -1
- package/es/view-engine/pickup-tree-view.engine.d.ts +2 -2
- package/es/view-engine/pickup-view.engine.d.ts +2 -2
- package/es/view-engine/portal-view-engine.d.ts +2 -10
- package/es/view-engine/portal-view-engine.mjs +0 -8
- package/es/view-engine/report-view.engine.d.ts +2 -2
- package/es/view-engine/report-view.engine.mjs +0 -1
- package/es/view-engine/tab-exp-view.engine.d.ts +2 -2
- package/es/view-engine/tab-exp-view.engine.mjs +1 -0
- package/es/view-engine/tab-search-view.engine.d.ts +2 -2
- package/es/view-engine/tab-search-view.engine.mjs +0 -1
- package/es/view-engine/tree-exp-view.engine.d.ts +2 -2
- package/es/view-engine/tree-exp-view.engine.mjs +0 -1
- package/es/view-engine/tree-grid-ex-view.engine.d.ts +2 -2
- package/es/view-engine/tree-grid-ex-view.engine.mjs +0 -1
- package/es/view-engine/tree-grid-view.engine.d.ts +2 -2
- package/es/view-engine/tree-grid-view.engine.mjs +0 -1
- package/es/view-engine/tree-view.engine.d.ts +2 -2
- package/es/view-engine/tree-view.engine.mjs +0 -1
- package/es/view-engine/wf-dyna-action-view.engine.d.ts +2 -2
- package/es/view-engine/wf-dyna-action-view.engine.mjs +0 -1
- package/es/view-engine/wf-dyna-start-view.engine.d.ts +2 -2
- package/es/view-engine/wf-dyna-start-view.engine.mjs +0 -1
- package/es/web-app/util/unauthorized-handler/unauthorized-handler.mjs +1 -1
- package/lib/common/data-import2/data-import2.cjs +2 -1
- package/lib/common/editor-empty-text/editor-empty-text.cjs +33 -0
- package/lib/common/editor-empty-text/editor-empty-text.css +1 -0
- package/lib/common/index.cjs +2 -0
- package/lib/common/split/split.css +1 -1
- package/lib/control/app-menu/app-menu.css +1 -1
- package/lib/control/chart/chart.cjs +1 -1
- package/lib/control/data-view/data-view.cjs +34 -8
- package/lib/control/data-view/data-view.css +1 -1
- package/lib/control/drbar/drbar.controller.cjs +5 -5
- package/lib/control/drtab/drtab-control.util.cjs +1 -1
- package/lib/control/drtab/drtab.cjs +7 -1
- package/lib/control/drtab/drtab.controller.cjs +3 -5
- package/lib/control/exp-bar/render-util.cjs +12 -1
- package/lib/control/form/form-detail/form-item/form-item-container/form-item-container.cjs +25 -4
- package/lib/control/form/form-detail/form-item/form-item-container/form-item-container.css +1 -1
- package/lib/control/form/form-detail/form-mdctrl/form-mdctrl-repeater/repeater-multi-form/repeater-multi-form.cjs +1 -0
- package/lib/control/form/form-detail/form-mdctrl/mdctrl-container/mdctrl-container.cjs +62 -12
- package/lib/control/form/form-detail/form-mdctrl/mdctrl-container/mdctrl-container.css +1 -1
- package/lib/control/grid/grid/grid-control.util.cjs +31 -4
- package/lib/control/grid/grid/grid.cjs +9 -7
- package/lib/control/grid/grid/grid.css +1 -1
- package/lib/control/grid/row-edit-popover/use-row-edit-popover.cjs +1 -1
- package/lib/control/kanban/kanban.cjs +14 -9
- package/lib/control/kanban/kanban.css +1 -1
- package/lib/control/kanban/lane-kanban/lane-kanban.cjs +411 -0
- package/lib/control/kanban/lane-kanban/lane-kanban.css +1 -0
- package/lib/control/list/list.cjs +16 -19
- package/lib/control/list/list.css +1 -1
- package/lib/control/toolbar/toolbar.cjs +232 -132
- package/lib/control/toolbar/toolbar.css +1 -1
- package/lib/control/tree/el-tree-util.cjs +66 -0
- package/lib/control/tree/tree.cjs +150 -14
- package/lib/control/tree/tree.css +1 -1
- package/lib/control/tree-grid/tree-grid.cjs +1 -1
- package/lib/control/tree-grid-ex/use-row-edit-popover.cjs +1 -1
- package/lib/control/wizard-panel/wizard-panel.cjs +23 -7
- package/lib/control/wizard-panel/wizard-panel.css +1 -1
- package/lib/editor/autocomplete/ibiz-autocomplete/ibiz-autocomplete.cjs +5 -2
- package/lib/editor/cascader/ibiz-cascader/ibiz-cascader.cjs +7 -1
- package/lib/editor/check-box/ibiz-checkbox/ibiz-checkbox.cjs +8 -2
- package/lib/editor/check-box-list/checkbox-list-editor.controller.cjs +4 -1
- package/lib/editor/code/monaco-editor/monaco-editor.cjs +1 -7
- package/lib/editor/data-picker/ibiz-mpicker/ibiz-mpicker.cjs +4 -1
- package/lib/editor/data-picker/ibiz-picker/ibiz-picker.cjs +13 -14
- package/lib/editor/data-picker/ibiz-picker-dropdown/ibiz-picker-dropdown.cjs +18 -18
- package/lib/editor/data-picker/ibiz-picker-embed-view/ibiz-picker-embed-view.cjs +6 -0
- package/lib/editor/data-picker/ibiz-picker-link/ibiz-picker-link.cjs +11 -10
- package/lib/editor/data-picker/ibiz-picker-select-view/ibiz-picker-select-view.cjs +4 -1
- package/lib/editor/date-picker/ibiz-date-picker/ibiz-date-picker.cjs +4 -1
- package/lib/editor/date-range/ibiz-date-range-picker/ibiz-date-range-picker.cjs +13 -1
- package/lib/editor/dropdown-list/dropdown-list-editor.controller.cjs +14 -3
- package/lib/editor/dropdown-list/ibiz-dropdown/ibiz-dropdown.cjs +26 -20
- package/lib/editor/dropdown-list/ibiz-emoji-picker/ibiz-emoji-picker.cjs +4 -1
- package/lib/editor/html/wang-editor/wang-editor.cjs +4 -9
- package/lib/editor/map-picker/ibiz-map-picker/ibiz-map-picker.cjs +4 -1
- package/lib/editor/markdown/ibiz-markdown-editor/ibiz-markdown-editor.cjs +2 -2
- package/lib/editor/number-range/ibiz-number-range-picker/ibiz-number-range-picker.cjs +4 -1
- package/lib/editor/radio-button-list/ibiz-radio/ibiz-radio.cjs +6 -0
- package/lib/editor/radio-button-list/radio-button-list.controller.cjs +4 -1
- package/lib/editor/rate/ibiz-rate/ibiz-rate.cjs +3 -0
- package/lib/editor/raw/ibiz-raw/ibiz-raw.cjs +2 -0
- package/lib/editor/slider/ibiz-slider/ibiz-slider.cjs +14 -2
- package/lib/editor/span/span/span.cjs +7 -4
- package/lib/editor/stepper/ibiz-stepper/ibiz-stepper.cjs +2 -1
- package/lib/editor/text-box/ibiz-input-number/ibiz-input-number.cjs +5 -2
- package/lib/editor/text-box/input/input.cjs +7 -10
- package/lib/editor/upload/use/use-iview-upload.cjs +2 -3
- package/lib/locale/en/index.cjs +5 -0
- package/lib/locale/zh-CN/index.cjs +5 -0
- package/lib/panel-component/app-extend-menu/bottom-side-menu/bottom-side-menu.cjs +58 -0
- package/lib/panel-component/app-extend-menu/bottom-side-menu/bottom-side-menu.controller.cjs +19 -0
- package/lib/panel-component/app-extend-menu/bottom-side-menu/bottom-side-menu.css +1 -0
- package/lib/panel-component/app-extend-menu/bottom-side-menu/bottom-side-menu.provider.cjs +23 -0
- package/lib/panel-component/app-extend-menu/bottom-side-menu/index.cjs +20 -0
- package/lib/panel-component/app-extend-menu/extend-menu-base/common-extend-menu/common-extend-menu.cjs +100 -0
- package/lib/panel-component/app-extend-menu/extend-menu-base/common-extend-menu/common-extend-menu.css +1 -0
- package/lib/panel-component/app-extend-menu/extend-menu-base/extend-button-menu/extend-button-menu.cjs +237 -0
- package/lib/panel-component/app-extend-menu/extend-menu-base/extend-button-menu/extend-button-menu.css +1 -0
- package/lib/panel-component/app-extend-menu/extend-menu-base/extend-menu-base.controller.cjs +260 -0
- package/lib/panel-component/app-extend-menu/extend-menu-base/extend-menu-base.state.cjs +30 -0
- package/lib/panel-component/app-extend-menu/extend-menu-base/extend-menu-base.util.cjs +355 -0
- package/lib/panel-component/app-extend-menu/index.cjs +22 -0
- package/lib/panel-component/app-extend-menu/left-side-menu/index.cjs +20 -0
- package/lib/panel-component/app-extend-menu/left-side-menu/left-side-menu.cjs +58 -0
- package/lib/panel-component/app-extend-menu/left-side-menu/left-side-menu.controller.cjs +19 -0
- package/lib/panel-component/app-extend-menu/left-side-menu/left-side-menu.css +1 -0
- package/lib/panel-component/app-extend-menu/left-side-menu/left-side-menu.provider.cjs +23 -0
- package/lib/panel-component/app-extend-menu/right-side-menu/index.cjs +20 -0
- package/lib/panel-component/app-extend-menu/right-side-menu/right-side-menu.cjs +58 -0
- package/lib/panel-component/app-extend-menu/right-side-menu/right-side-menu.controller.cjs +19 -0
- package/lib/panel-component/app-extend-menu/right-side-menu/right-side-menu.css +1 -0
- package/lib/panel-component/app-extend-menu/right-side-menu/right-side-menu.provider.cjs +23 -0
- package/lib/panel-component/app-extend-menu/top-side-menu/index.cjs +20 -0
- package/lib/panel-component/app-extend-menu/top-side-menu/top-side-menu.cjs +58 -0
- package/lib/panel-component/app-extend-menu/top-side-menu/top-side-menu.controller.cjs +19 -0
- package/lib/panel-component/app-extend-menu/top-side-menu/top-side-menu.css +1 -0
- package/lib/panel-component/app-extend-menu/top-side-menu/top-side-menu.provider.cjs +23 -0
- package/lib/panel-component/index.cjs +2 -0
- package/lib/util/app-util/app-util.cjs +9 -7
- package/lib/util/fullscreen/fullscreen-util.cjs +1 -1
- package/lib/util/notification-util/upload-manager/upload-manager.cjs +1 -5
- package/lib/view-engine/app-start-view.engine.cjs +13 -0
- package/lib/view-engine/app-welcome-view.engine.cjs +13 -0
- package/lib/view-engine/custom-view.engine.cjs +0 -8
- package/lib/view-engine/data-view.engine.cjs +0 -1
- package/lib/view-engine/edit-view.engine.cjs +24 -8
- package/lib/view-engine/edit-view4.engine.cjs +4 -0
- package/lib/view-engine/gantt-view.engine.cjs +0 -1
- package/lib/view-engine/grid-view.engine.cjs +0 -1
- package/lib/view-engine/index-view.engine.cjs +1 -2
- package/lib/view-engine/index.cjs +10 -0
- package/lib/view-engine/list-view.engine.cjs +0 -1
- package/lib/view-engine/login-view.engine.cjs +2 -0
- package/lib/view-engine/md-custom-view.engine.cjs +0 -8
- package/lib/view-engine/medit-view9.engine.cjs +0 -1
- package/lib/view-engine/opt-view.engine.cjs +35 -8
- package/lib/view-engine/pickup-data-view.engine.cjs +0 -1
- package/lib/view-engine/pickup-grid-view.engine.cjs +0 -1
- package/lib/view-engine/portal-view-engine.cjs +0 -8
- package/lib/view-engine/report-view.engine.cjs +0 -1
- package/lib/view-engine/tab-exp-view.engine.cjs +1 -0
- package/lib/view-engine/tab-search-view.engine.cjs +0 -1
- package/lib/view-engine/tree-exp-view.engine.cjs +0 -1
- package/lib/view-engine/tree-grid-ex-view.engine.cjs +0 -1
- package/lib/view-engine/tree-grid-view.engine.cjs +0 -1
- package/lib/view-engine/tree-view.engine.cjs +0 -1
- package/lib/view-engine/wf-dyna-action-view.engine.cjs +0 -1
- package/lib/view-engine/wf-dyna-start-view.engine.cjs +0 -1
- package/lib/web-app/util/unauthorized-handler/unauthorized-handler.cjs +1 -1
- package/package.json +8 -8
- package/dist/chart-GgAfcR6o.js +0 -1
- package/dist/ibiz-markdown-editor--ivCvp3a.js +0 -1
- package/dist/index-eIKUlAq_.js +0 -4
- package/dist/wang-editor-6EirGFoh.js +0 -1
- /package/es/node_modules/.pnpm/{@ibiz-template_core@0.7.41-alpha.1_axios@1.6.8_lodash-es@4.17.21_qs@6.11.2_qx-util@0.4.8_ramda@0.29.1 → @ibiz-template_core@0.7.41-alpha.9_axios@1.6.8_lodash-es@4.17.21_qs@6.11.2_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.41-alpha.1_axios@1.6.8_lodash-es@4.17.21_qs@6.11.2_qx-util@0.4.8_ramda@0.29.1 → @ibiz-template_core@0.7.41-alpha.9_axios@1.6.8_lodash-es@4.17.21_qs@6.11.2_qx-util@0.4.8_ramda@0.29.1}/node_modules/@ibiz-template/core/out/utils/namespace/namespace.cjs +0 -0
|
@@ -0,0 +1,235 @@
|
|
|
1
|
+
import { createVNode, resolveComponent, ref, computed, defineComponent } from 'vue';
|
|
2
|
+
import { useNamespace } from '@ibiz-template/vue3-util';
|
|
3
|
+
import { showTitle } from '@ibiz-template/core';
|
|
4
|
+
import { getMenuLayout, getMenus, useCascaderPopover, useBorderLayout, findMenuItem } from '../extend-menu-base.util.mjs';
|
|
5
|
+
import './extend-button-menu.css';
|
|
6
|
+
|
|
7
|
+
"use strict";
|
|
8
|
+
const rightArrow = () => createVNode("svg", {
|
|
9
|
+
"xmlns": "http://www.w3.org/2000/svg",
|
|
10
|
+
"viewBox": "0 0 1024 1024",
|
|
11
|
+
"width": "1em",
|
|
12
|
+
"height": "1em",
|
|
13
|
+
"fill": "currentColor"
|
|
14
|
+
}, [createVNode("path", {
|
|
15
|
+
"fill": "currentColor",
|
|
16
|
+
"d": "M340.864 149.312a30.592 30.592 0 0 0 0 42.752L652.736 512 340.864 831.872a30.592 30.592 0 0 0 0 42.752 29.12 29.12 0 0 0 41.728 0L714.24 534.336a32 32 0 0 0 0-44.672L382.592 149.376a29.12 29.12 0 0 0-41.728 0z"
|
|
17
|
+
}, null)]);
|
|
18
|
+
function renderMenuItem(params) {
|
|
19
|
+
var _a, _b, _c;
|
|
20
|
+
const {
|
|
21
|
+
ns,
|
|
22
|
+
menu,
|
|
23
|
+
menuAlign,
|
|
24
|
+
menuItemsState
|
|
25
|
+
} = params;
|
|
26
|
+
if (!menu.id || !((_a = menuItemsState[menu.id]) == null ? void 0 : _a.visible))
|
|
27
|
+
return;
|
|
28
|
+
if (menu.itemType === "MENUITEM") {
|
|
29
|
+
return createVNode(resolveComponent("el-button"), {
|
|
30
|
+
"class": [ns.e("menuitem"), "".concat(((_b = menu.sysCss) == null ? void 0 : _b.cssName) || "")],
|
|
31
|
+
"index": menu.id
|
|
32
|
+
}, {
|
|
33
|
+
default: () => [menu.sysImage && createVNode(resolveComponent("iBizIcon"), {
|
|
34
|
+
"class": ns.e("icon"),
|
|
35
|
+
"icon": menu.sysImage
|
|
36
|
+
}, null), menu.caption && createVNode("span", {
|
|
37
|
+
"class": ns.e("caption"),
|
|
38
|
+
"title": showTitle(menu.tooltip)
|
|
39
|
+
}, [menu.caption])]
|
|
40
|
+
});
|
|
41
|
+
}
|
|
42
|
+
if (menu.itemType === "SEPERATOR") {
|
|
43
|
+
const direction = menuAlign === "horizontal" ? "vertical" : "horizontal";
|
|
44
|
+
return createVNode(resolveComponent("el-divider"), {
|
|
45
|
+
"direction": direction,
|
|
46
|
+
"class": [ns.em("separator"), ns.em("separator", direction)],
|
|
47
|
+
"id": menu.id
|
|
48
|
+
}, null);
|
|
49
|
+
}
|
|
50
|
+
if (menu.itemType === "RAWITEM") {
|
|
51
|
+
return createVNode(resolveComponent("el-button"), {
|
|
52
|
+
"index": menu.id,
|
|
53
|
+
"title": showTitle(menu.tooltip),
|
|
54
|
+
"class": [ns.e("rawitem"), "".concat(((_c = menu.sysCss) == null ? void 0 : _c.cssName) || "")]
|
|
55
|
+
}, {
|
|
56
|
+
default: () => [createVNode(resolveComponent("iBizRawItem"), {
|
|
57
|
+
"rawItem": menu
|
|
58
|
+
}, null)]
|
|
59
|
+
});
|
|
60
|
+
}
|
|
61
|
+
}
|
|
62
|
+
function renderMenuContent(_params) {
|
|
63
|
+
const {
|
|
64
|
+
ns,
|
|
65
|
+
isLayout,
|
|
66
|
+
menuLayout,
|
|
67
|
+
position,
|
|
68
|
+
menuAlign,
|
|
69
|
+
menus,
|
|
70
|
+
menuItemsState,
|
|
71
|
+
showCascaderArrow,
|
|
72
|
+
handleMenuItemClick,
|
|
73
|
+
handleMenuItemMouseEnter,
|
|
74
|
+
handleMenuItemMouseLeave
|
|
75
|
+
} = _params;
|
|
76
|
+
const layoutStyle = isLayout ? getMenuLayout(menuLayout) : {};
|
|
77
|
+
return createVNode(resolveComponent("el-row"), {
|
|
78
|
+
"class": [ns.e("content"), ns.is(menuAlign, !!menuAlign), ns.is(position == null ? void 0 : position.toLowerCase(), !!position)],
|
|
79
|
+
"style": layoutStyle
|
|
80
|
+
}, {
|
|
81
|
+
default: () => menus.map((menu) => {
|
|
82
|
+
var _a, _b;
|
|
83
|
+
const menuItem = renderMenuItem({
|
|
84
|
+
menu,
|
|
85
|
+
ns,
|
|
86
|
+
menuAlign,
|
|
87
|
+
menuItemsState
|
|
88
|
+
});
|
|
89
|
+
if (!menuItem)
|
|
90
|
+
return;
|
|
91
|
+
const style = {};
|
|
92
|
+
if (isLayout && ((_a = menu.layoutPos) == null ? void 0 : _a.layout) === "FLEX") {
|
|
93
|
+
const pos = menu.layoutPos;
|
|
94
|
+
Object.assign(style, {
|
|
95
|
+
flexGrow: pos.grow,
|
|
96
|
+
flexShrink: pos.shrink === 1 ? void 0 : pos.shrink,
|
|
97
|
+
flexBasis: pos.basis
|
|
98
|
+
});
|
|
99
|
+
}
|
|
100
|
+
const isShowArrow = !!(showCascaderArrow && menu.children);
|
|
101
|
+
return createVNode("div", {
|
|
102
|
+
"class": [ns.em("content", "item"), ns.em("content", (_b = menu.itemType) == null ? void 0 : _b.toLowerCase()), ns.is("show-arrow", isShowArrow)],
|
|
103
|
+
"style": style
|
|
104
|
+
}, [createVNode("div", {
|
|
105
|
+
"class": ns.em("content", "item-container"),
|
|
106
|
+
"onMouseenter": (_e) => handleMenuItemMouseEnter(menu, _e),
|
|
107
|
+
"onMouseleave": (_e) => handleMenuItemMouseLeave(menu, _e),
|
|
108
|
+
"onClick": (_e) => handleMenuItemClick(menu, _e)
|
|
109
|
+
}, [menuItem]), isShowArrow && createVNode("span", {
|
|
110
|
+
"class": ns.em("content", "item-arrow")
|
|
111
|
+
}, [rightArrow()])]);
|
|
112
|
+
})
|
|
113
|
+
});
|
|
114
|
+
}
|
|
115
|
+
const ExtendButtonMenu = /* @__PURE__ */ defineComponent({
|
|
116
|
+
name: "IBizExtendButtonMenu",
|
|
117
|
+
props: {
|
|
118
|
+
items: {
|
|
119
|
+
type: Object,
|
|
120
|
+
required: true
|
|
121
|
+
},
|
|
122
|
+
menuItemsState: {
|
|
123
|
+
type: Object,
|
|
124
|
+
required: true
|
|
125
|
+
},
|
|
126
|
+
providers: {
|
|
127
|
+
type: Object,
|
|
128
|
+
required: true
|
|
129
|
+
},
|
|
130
|
+
position: {
|
|
131
|
+
type: String,
|
|
132
|
+
required: true
|
|
133
|
+
},
|
|
134
|
+
layoutMode: {
|
|
135
|
+
type: String,
|
|
136
|
+
required: true
|
|
137
|
+
},
|
|
138
|
+
layout: {
|
|
139
|
+
type: Object
|
|
140
|
+
}
|
|
141
|
+
},
|
|
142
|
+
emits: {
|
|
143
|
+
menuItemClick: (item, event) => true
|
|
144
|
+
},
|
|
145
|
+
setup(props, {
|
|
146
|
+
emit
|
|
147
|
+
}) {
|
|
148
|
+
const ns = useNamespace("extend-menu-button");
|
|
149
|
+
const buttonMenuRef = ref();
|
|
150
|
+
const menuAlign = computed(() => ["TOP", "BOTTOM"].includes(props.position) ? "horizontal" : "vertical");
|
|
151
|
+
const isLayout = computed(() => props.layoutMode !== "BORDER");
|
|
152
|
+
const menus = ref(getMenus(props.items));
|
|
153
|
+
const renderCascaderContent = (_menu) => {
|
|
154
|
+
return renderMenuContent({
|
|
155
|
+
ns,
|
|
156
|
+
menuAlign: "vertical",
|
|
157
|
+
position: props.position,
|
|
158
|
+
menus: _menu.children,
|
|
159
|
+
menuItemsState: props.menuItemsState,
|
|
160
|
+
handleMenuItemClick,
|
|
161
|
+
handleMenuItemMouseEnter,
|
|
162
|
+
handleMenuItemMouseLeave,
|
|
163
|
+
showCascaderArrow: true,
|
|
164
|
+
isLayout: false
|
|
165
|
+
});
|
|
166
|
+
};
|
|
167
|
+
const renderBorderContent = () => {
|
|
168
|
+
return renderMenuContent({
|
|
169
|
+
ns,
|
|
170
|
+
menuAlign: menuAlign.value,
|
|
171
|
+
position: props.position,
|
|
172
|
+
menus: menus.value,
|
|
173
|
+
menuItemsState: props.menuItemsState,
|
|
174
|
+
handleMenuItemClick,
|
|
175
|
+
handleMenuItemMouseEnter,
|
|
176
|
+
handleMenuItemMouseLeave,
|
|
177
|
+
showCascaderArrow: true,
|
|
178
|
+
isLayout: false
|
|
179
|
+
});
|
|
180
|
+
};
|
|
181
|
+
const {
|
|
182
|
+
getOverlayNum,
|
|
183
|
+
clearAllCascader,
|
|
184
|
+
handleMenuItemMouseEnter,
|
|
185
|
+
handleMenuItemMouseLeave
|
|
186
|
+
} = useCascaderPopover(props, ns, menuAlign, renderCascaderContent);
|
|
187
|
+
let closeBorderPopover;
|
|
188
|
+
if (props.layoutMode === "BORDER") {
|
|
189
|
+
const borderLayout = useBorderLayout(buttonMenuRef, ns, props.position, menuAlign, getOverlayNum, renderBorderContent);
|
|
190
|
+
closeBorderPopover = borderLayout.closeBorderPopover;
|
|
191
|
+
}
|
|
192
|
+
const handleMenuItemClick = async (_menu, _event) => {
|
|
193
|
+
if (_menu.children)
|
|
194
|
+
return;
|
|
195
|
+
clearAllCascader();
|
|
196
|
+
if (closeBorderPopover)
|
|
197
|
+
closeBorderPopover();
|
|
198
|
+
if (!_menu.appFuncId) {
|
|
199
|
+
ibiz.log.warn(ibiz.i18n.t("runtime.controller.control.menu.noConfigured"));
|
|
200
|
+
return;
|
|
201
|
+
}
|
|
202
|
+
const menuItem = findMenuItem(_menu.id, props.items);
|
|
203
|
+
emit("menuItemClick", menuItem, _event);
|
|
204
|
+
};
|
|
205
|
+
return {
|
|
206
|
+
ns,
|
|
207
|
+
menus,
|
|
208
|
+
menuAlign,
|
|
209
|
+
isLayout,
|
|
210
|
+
buttonMenuRef,
|
|
211
|
+
handleMenuItemClick,
|
|
212
|
+
handleMenuItemMouseEnter,
|
|
213
|
+
handleMenuItemMouseLeave
|
|
214
|
+
};
|
|
215
|
+
},
|
|
216
|
+
render() {
|
|
217
|
+
return createVNode("div", {
|
|
218
|
+
"ref": "buttonMenuRef",
|
|
219
|
+
"class": [this.ns.b(), this.ns.is(this.layoutMode.toLowerCase(), !!this.layoutMode), this.ns.is(this.position.toLowerCase(), !!this.position), this.ns.is(this.menuAlign, !!this.menuAlign)]
|
|
220
|
+
}, [this.layoutMode !== "BORDER" && renderMenuContent({
|
|
221
|
+
ns: this.ns,
|
|
222
|
+
menuAlign: this.menuAlign,
|
|
223
|
+
isLayout: this.isLayout,
|
|
224
|
+
menuLayout: this.layout,
|
|
225
|
+
position: this.position,
|
|
226
|
+
menus: this.menus,
|
|
227
|
+
menuItemsState: this.menuItemsState,
|
|
228
|
+
handleMenuItemClick: this.handleMenuItemClick,
|
|
229
|
+
handleMenuItemMouseEnter: this.handleMenuItemMouseEnter,
|
|
230
|
+
handleMenuItemMouseLeave: this.handleMenuItemMouseLeave
|
|
231
|
+
})]);
|
|
232
|
+
}
|
|
233
|
+
});
|
|
234
|
+
|
|
235
|
+
export { ExtendButtonMenu };
|
|
@@ -0,0 +1,149 @@
|
|
|
1
|
+
import { IAppMenuItemProvider, IAppService, IViewController, PanelItemController } from '@ibiz-template/runtime';
|
|
2
|
+
import { IAppMenu, IAppMenuItem, IPanelRawItem } from '@ibiz/model-core';
|
|
3
|
+
import { ExtendMenuBase } from './extend-menu-base.state';
|
|
4
|
+
/**
|
|
5
|
+
* @description 扩展菜单状态控制器基类
|
|
6
|
+
* @export
|
|
7
|
+
* @class ExtendMenuBaseController
|
|
8
|
+
* @extends {PanelItemController<IPanelRawItem>}
|
|
9
|
+
*/
|
|
10
|
+
export declare class ExtendMenuBaseController extends PanelItemController<IPanelRawItem> {
|
|
11
|
+
/**
|
|
12
|
+
* @description 状态对象
|
|
13
|
+
* @type {ExtendMenuBase}
|
|
14
|
+
* @memberof AppSwitchController
|
|
15
|
+
*/
|
|
16
|
+
state: ExtendMenuBase;
|
|
17
|
+
/**
|
|
18
|
+
* @description 自定义补充参数
|
|
19
|
+
* @type {IData}
|
|
20
|
+
* @memberof ExtendMenuBaseController
|
|
21
|
+
*/
|
|
22
|
+
rawItemParams: IData;
|
|
23
|
+
/**
|
|
24
|
+
* @description 当前菜单名称
|
|
25
|
+
* @protected
|
|
26
|
+
* @type {string}
|
|
27
|
+
* @memberof ExtendMenuBaseController
|
|
28
|
+
*/
|
|
29
|
+
protected appMenuName: string;
|
|
30
|
+
/**
|
|
31
|
+
* @description 菜单模型
|
|
32
|
+
* @protected
|
|
33
|
+
* @type {(IAppMenu | undefined)}
|
|
34
|
+
* @memberof ExtendMenuBaseController
|
|
35
|
+
*/
|
|
36
|
+
appMenu: IAppMenu | undefined;
|
|
37
|
+
/**
|
|
38
|
+
* @description 当前应用
|
|
39
|
+
* @protected
|
|
40
|
+
* @type {IAppService}
|
|
41
|
+
* @memberof ExtendMenuBaseController
|
|
42
|
+
*/
|
|
43
|
+
protected app: IAppService;
|
|
44
|
+
/**
|
|
45
|
+
* @description 菜单项适配器集合
|
|
46
|
+
* @type {{ [key: string]: IAppMenuItemProvider }}
|
|
47
|
+
* @memberof ExtendMenuBaseController
|
|
48
|
+
*/
|
|
49
|
+
itemProviders: {
|
|
50
|
+
[key: string]: IAppMenuItemProvider;
|
|
51
|
+
};
|
|
52
|
+
/**
|
|
53
|
+
* @description 所有菜单项,平铺开
|
|
54
|
+
* @type {IAppMenuItem[]}
|
|
55
|
+
* @memberof ExtendMenuBaseController
|
|
56
|
+
*/
|
|
57
|
+
allAppMenuItems: IAppMenuItem[];
|
|
58
|
+
/**
|
|
59
|
+
* @description 获取当前视图
|
|
60
|
+
* @readonly
|
|
61
|
+
* @type {IViewController}
|
|
62
|
+
* @memberof ExtendMenuBaseController
|
|
63
|
+
*/
|
|
64
|
+
get view(): IViewController;
|
|
65
|
+
/**
|
|
66
|
+
* @description 视图层级
|
|
67
|
+
* @readonly
|
|
68
|
+
* @type {(number | undefined)}
|
|
69
|
+
* @memberof ExtendMenuBaseController
|
|
70
|
+
*/
|
|
71
|
+
get routeDepth(): number | undefined;
|
|
72
|
+
/**
|
|
73
|
+
* @description 上下文对象
|
|
74
|
+
* @readonly
|
|
75
|
+
* @type {IContext}
|
|
76
|
+
* @memberof ExtendMenuBaseController
|
|
77
|
+
*/
|
|
78
|
+
get context(): IContext;
|
|
79
|
+
/**
|
|
80
|
+
* @description 视图参数
|
|
81
|
+
* @readonly
|
|
82
|
+
* @type {IParams}
|
|
83
|
+
* @memberof ExtendMenuBaseController
|
|
84
|
+
*/
|
|
85
|
+
get params(): IParams;
|
|
86
|
+
/**
|
|
87
|
+
* @description 创建状态对象
|
|
88
|
+
* @protected
|
|
89
|
+
* @returns {*} {ExtendMenuBase}
|
|
90
|
+
* @memberof ExtendMenuBaseController
|
|
91
|
+
*/
|
|
92
|
+
protected createState(): ExtendMenuBase;
|
|
93
|
+
/**
|
|
94
|
+
* @description 初始化
|
|
95
|
+
* @protected
|
|
96
|
+
* @returns {*} {Promise<void>}
|
|
97
|
+
* @memberof ExtendMenuBaseController
|
|
98
|
+
*/
|
|
99
|
+
protected onInit(): Promise<void>;
|
|
100
|
+
/**
|
|
101
|
+
* @description 计算当前菜单模型
|
|
102
|
+
* @protected
|
|
103
|
+
* @returns {*} {(IAppMenu | undefined)}
|
|
104
|
+
* @memberof ExtendMenuBaseController
|
|
105
|
+
*/
|
|
106
|
+
protected computeAppMenu(): IAppMenu | undefined;
|
|
107
|
+
/**
|
|
108
|
+
* @description 平铺所有菜单项
|
|
109
|
+
* @protected
|
|
110
|
+
* @returns {*} {void}
|
|
111
|
+
* @memberof ExtendMenuBaseController
|
|
112
|
+
*/
|
|
113
|
+
protected flattenAllItems(): void;
|
|
114
|
+
/**
|
|
115
|
+
* @description 初始化菜单项的适配器
|
|
116
|
+
* @protected
|
|
117
|
+
* @returns {*} {Promise<void>}
|
|
118
|
+
* @memberof ExtendMenuBaseController
|
|
119
|
+
*/
|
|
120
|
+
protected initAppMenuItemProviders(): Promise<void>;
|
|
121
|
+
/**
|
|
122
|
+
* @description 初始化菜单项状态
|
|
123
|
+
* @param {IAppMenuItem} menu
|
|
124
|
+
* @returns {*} {{
|
|
125
|
+
* visible: boolean;
|
|
126
|
+
* permitted: boolean;
|
|
127
|
+
* }}
|
|
128
|
+
* @memberof ExtendMenuBaseController
|
|
129
|
+
*/
|
|
130
|
+
initMenuItemState(menu: IAppMenuItem): {
|
|
131
|
+
visible: boolean;
|
|
132
|
+
permitted: boolean;
|
|
133
|
+
};
|
|
134
|
+
/**
|
|
135
|
+
* @description 处理菜单项点击,触发对应的应用功能
|
|
136
|
+
* @param {IAppMenuItem} menuItem
|
|
137
|
+
* @param {MouseEvent} event
|
|
138
|
+
* @param {boolean} [useDepth=true]
|
|
139
|
+
* @returns {*} {Promise<void>}
|
|
140
|
+
* @memberof ExtendMenuBaseController
|
|
141
|
+
*/
|
|
142
|
+
handleClickMenuItem(menuItem: IAppMenuItem, event: MouseEvent, useDepth?: boolean): Promise<void>;
|
|
143
|
+
/**
|
|
144
|
+
* @description 处理自定义补充参数
|
|
145
|
+
* @protected
|
|
146
|
+
* @memberof ExtendMenuBaseController
|
|
147
|
+
*/
|
|
148
|
+
protected handleRawItemParams(): void;
|
|
149
|
+
}
|
|
@@ -0,0 +1,258 @@
|
|
|
1
|
+
import { notNilEmpty } from 'qx-util';
|
|
2
|
+
import { PanelItemController, getControl, getAppMenuItemProvider, AppFuncCommand } from '@ibiz-template/runtime';
|
|
3
|
+
import { RuntimeModelError } from '@ibiz-template/core';
|
|
4
|
+
import { ExtendMenuBase } from './extend-menu-base.state.mjs';
|
|
5
|
+
|
|
6
|
+
"use strict";
|
|
7
|
+
var __defProp = Object.defineProperty;
|
|
8
|
+
var __defNormalProp = (obj, key, value) => key in obj ? __defProp(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;
|
|
9
|
+
var __publicField = (obj, key, value) => {
|
|
10
|
+
__defNormalProp(obj, typeof key !== "symbol" ? key + "" : key, value);
|
|
11
|
+
return value;
|
|
12
|
+
};
|
|
13
|
+
class ExtendMenuBaseController extends PanelItemController {
|
|
14
|
+
constructor() {
|
|
15
|
+
super(...arguments);
|
|
16
|
+
/**
|
|
17
|
+
* @description 自定义补充参数
|
|
18
|
+
* @type {IData}
|
|
19
|
+
* @memberof ExtendMenuBaseController
|
|
20
|
+
*/
|
|
21
|
+
__publicField(this, "rawItemParams", { rendermode: "BUTTON" });
|
|
22
|
+
/**
|
|
23
|
+
* @description 当前菜单名称
|
|
24
|
+
* @protected
|
|
25
|
+
* @type {string}
|
|
26
|
+
* @memberof ExtendMenuBaseController
|
|
27
|
+
*/
|
|
28
|
+
__publicField(this, "appMenuName", "");
|
|
29
|
+
/**
|
|
30
|
+
* @description 菜单模型
|
|
31
|
+
* @protected
|
|
32
|
+
* @type {(IAppMenu | undefined)}
|
|
33
|
+
* @memberof ExtendMenuBaseController
|
|
34
|
+
*/
|
|
35
|
+
__publicField(this, "appMenu");
|
|
36
|
+
/**
|
|
37
|
+
* @description 当前应用
|
|
38
|
+
* @protected
|
|
39
|
+
* @type {IAppService}
|
|
40
|
+
* @memberof ExtendMenuBaseController
|
|
41
|
+
*/
|
|
42
|
+
__publicField(this, "app");
|
|
43
|
+
/**
|
|
44
|
+
* @description 菜单项适配器集合
|
|
45
|
+
* @type {{ [key: string]: IAppMenuItemProvider }}
|
|
46
|
+
* @memberof ExtendMenuBaseController
|
|
47
|
+
*/
|
|
48
|
+
__publicField(this, "itemProviders", {});
|
|
49
|
+
/**
|
|
50
|
+
* @description 所有菜单项,平铺开
|
|
51
|
+
* @type {IAppMenuItem[]}
|
|
52
|
+
* @memberof ExtendMenuBaseController
|
|
53
|
+
*/
|
|
54
|
+
__publicField(this, "allAppMenuItems", []);
|
|
55
|
+
}
|
|
56
|
+
/**
|
|
57
|
+
* @description 获取当前视图
|
|
58
|
+
* @readonly
|
|
59
|
+
* @type {IViewController}
|
|
60
|
+
* @memberof ExtendMenuBaseController
|
|
61
|
+
*/
|
|
62
|
+
get view() {
|
|
63
|
+
return this.panel.view;
|
|
64
|
+
}
|
|
65
|
+
/**
|
|
66
|
+
* @description 视图层级
|
|
67
|
+
* @readonly
|
|
68
|
+
* @type {(number | undefined)}
|
|
69
|
+
* @memberof ExtendMenuBaseController
|
|
70
|
+
*/
|
|
71
|
+
get routeDepth() {
|
|
72
|
+
return this.view.modal.routeDepth;
|
|
73
|
+
}
|
|
74
|
+
/**
|
|
75
|
+
* @description 上下文对象
|
|
76
|
+
* @readonly
|
|
77
|
+
* @type {IContext}
|
|
78
|
+
* @memberof ExtendMenuBaseController
|
|
79
|
+
*/
|
|
80
|
+
get context() {
|
|
81
|
+
return this.panel.context;
|
|
82
|
+
}
|
|
83
|
+
/**
|
|
84
|
+
* @description 视图参数
|
|
85
|
+
* @readonly
|
|
86
|
+
* @type {IParams}
|
|
87
|
+
* @memberof ExtendMenuBaseController
|
|
88
|
+
*/
|
|
89
|
+
get params() {
|
|
90
|
+
return this.panel.params;
|
|
91
|
+
}
|
|
92
|
+
/**
|
|
93
|
+
* @description 创建状态对象
|
|
94
|
+
* @protected
|
|
95
|
+
* @returns {*} {ExtendMenuBase}
|
|
96
|
+
* @memberof ExtendMenuBaseController
|
|
97
|
+
*/
|
|
98
|
+
createState() {
|
|
99
|
+
var _a;
|
|
100
|
+
return new ExtendMenuBase((_a = this.parent) == null ? void 0 : _a.state);
|
|
101
|
+
}
|
|
102
|
+
/**
|
|
103
|
+
* @description 初始化
|
|
104
|
+
* @protected
|
|
105
|
+
* @returns {*} {Promise<void>}
|
|
106
|
+
* @memberof ExtendMenuBaseController
|
|
107
|
+
*/
|
|
108
|
+
async onInit() {
|
|
109
|
+
var _a, _b;
|
|
110
|
+
await super.onInit();
|
|
111
|
+
this.handleRawItemParams();
|
|
112
|
+
this.app = await ibiz.hub.getApp(this.context.srfappid);
|
|
113
|
+
this.appMenu = this.computeAppMenu();
|
|
114
|
+
this.state.items = this.appMenu && this.appMenu.appMenuItems ? this.appMenu.appMenuItems : [];
|
|
115
|
+
this.flattenAllItems();
|
|
116
|
+
await this.initAppMenuItemProviders();
|
|
117
|
+
(_b = (_a = this.appMenu) == null ? void 0 : _a.appMenuItems) == null ? void 0 : _b.forEach((item) => {
|
|
118
|
+
this.initMenuItemState(item);
|
|
119
|
+
});
|
|
120
|
+
}
|
|
121
|
+
/**
|
|
122
|
+
* @description 计算当前菜单模型
|
|
123
|
+
* @protected
|
|
124
|
+
* @returns {*} {(IAppMenu | undefined)}
|
|
125
|
+
* @memberof ExtendMenuBaseController
|
|
126
|
+
*/
|
|
127
|
+
computeAppMenu() {
|
|
128
|
+
return getControl(this.view.model, this.appMenuName);
|
|
129
|
+
}
|
|
130
|
+
/**
|
|
131
|
+
* @description 平铺所有菜单项
|
|
132
|
+
* @protected
|
|
133
|
+
* @returns {*} {void}
|
|
134
|
+
* @memberof ExtendMenuBaseController
|
|
135
|
+
*/
|
|
136
|
+
flattenAllItems() {
|
|
137
|
+
if (!this.appMenu)
|
|
138
|
+
return;
|
|
139
|
+
const result = [];
|
|
140
|
+
const flattenMenus = (menuItems) => {
|
|
141
|
+
menuItems.forEach((item) => {
|
|
142
|
+
result.push(item);
|
|
143
|
+
if (item.appMenuItems && item.appMenuItems.length > 0) {
|
|
144
|
+
flattenMenus(item.appMenuItems);
|
|
145
|
+
}
|
|
146
|
+
});
|
|
147
|
+
};
|
|
148
|
+
flattenMenus(this.appMenu.appMenuItems);
|
|
149
|
+
this.allAppMenuItems = result;
|
|
150
|
+
}
|
|
151
|
+
/**
|
|
152
|
+
* @description 初始化菜单项的适配器
|
|
153
|
+
* @protected
|
|
154
|
+
* @returns {*} {Promise<void>}
|
|
155
|
+
* @memberof ExtendMenuBaseController
|
|
156
|
+
*/
|
|
157
|
+
async initAppMenuItemProviders() {
|
|
158
|
+
if (this.allAppMenuItems.length === 0)
|
|
159
|
+
return;
|
|
160
|
+
await Promise.all(
|
|
161
|
+
this.allAppMenuItems.map(async (item) => {
|
|
162
|
+
const provider = await getAppMenuItemProvider(item);
|
|
163
|
+
if (provider) {
|
|
164
|
+
this.itemProviders[item.id] = provider;
|
|
165
|
+
}
|
|
166
|
+
})
|
|
167
|
+
);
|
|
168
|
+
}
|
|
169
|
+
/**
|
|
170
|
+
* @description 初始化菜单项状态
|
|
171
|
+
* @param {IAppMenuItem} menu
|
|
172
|
+
* @returns {*} {{
|
|
173
|
+
* visible: boolean;
|
|
174
|
+
* permitted: boolean;
|
|
175
|
+
* }}
|
|
176
|
+
* @memberof ExtendMenuBaseController
|
|
177
|
+
*/
|
|
178
|
+
initMenuItemState(menu) {
|
|
179
|
+
var _a;
|
|
180
|
+
const result = { permitted: true, visible: true };
|
|
181
|
+
if (menu.hidden) {
|
|
182
|
+
result.visible = false;
|
|
183
|
+
} else {
|
|
184
|
+
let permitted = true;
|
|
185
|
+
if (menu.accessKey) {
|
|
186
|
+
permitted = this.app.authority.calcByResCode(menu.accessKey);
|
|
187
|
+
}
|
|
188
|
+
let visible = permitted;
|
|
189
|
+
if ((_a = menu.appMenuItems) == null ? void 0 : _a.length) {
|
|
190
|
+
const childrenState = menu.appMenuItems.map((child) => {
|
|
191
|
+
return this.initMenuItemState(child).visible;
|
|
192
|
+
});
|
|
193
|
+
visible = visible && childrenState.includes(true);
|
|
194
|
+
}
|
|
195
|
+
result.permitted = permitted;
|
|
196
|
+
result.visible = visible;
|
|
197
|
+
}
|
|
198
|
+
this.state.menuItemsState[menu.id] = result;
|
|
199
|
+
return result;
|
|
200
|
+
}
|
|
201
|
+
/**
|
|
202
|
+
* @description 处理菜单项点击,触发对应的应用功能
|
|
203
|
+
* @param {IAppMenuItem} menuItem
|
|
204
|
+
* @param {MouseEvent} event
|
|
205
|
+
* @param {boolean} [useDepth=true]
|
|
206
|
+
* @returns {*} {Promise<void>}
|
|
207
|
+
* @memberof ExtendMenuBaseController
|
|
208
|
+
*/
|
|
209
|
+
async handleClickMenuItem(menuItem, event, useDepth = true) {
|
|
210
|
+
if (!menuItem) {
|
|
211
|
+
return;
|
|
212
|
+
}
|
|
213
|
+
const provider = this.itemProviders[menuItem.id];
|
|
214
|
+
if (provider && provider.onClick) {
|
|
215
|
+
return provider.onClick(menuItem, event);
|
|
216
|
+
}
|
|
217
|
+
if (!menuItem.appFuncId) {
|
|
218
|
+
throw new RuntimeModelError(
|
|
219
|
+
menuItem,
|
|
220
|
+
ibiz.i18n.t("runtime.controller.control.menu.noConfigured")
|
|
221
|
+
);
|
|
222
|
+
}
|
|
223
|
+
const tempContext = this.context.clone();
|
|
224
|
+
tempContext.srfappid = menuItem.appId || ibiz.env.appId;
|
|
225
|
+
if (this.routeDepth && useDepth) {
|
|
226
|
+
Object.assign(tempContext, {
|
|
227
|
+
toRouteDepth: this.routeDepth + 1
|
|
228
|
+
});
|
|
229
|
+
}
|
|
230
|
+
const param = { ...this.params };
|
|
231
|
+
await ibiz.commands.execute(
|
|
232
|
+
AppFuncCommand.TAG,
|
|
233
|
+
menuItem.appFuncId,
|
|
234
|
+
tempContext,
|
|
235
|
+
param,
|
|
236
|
+
{ view: this.view }
|
|
237
|
+
);
|
|
238
|
+
}
|
|
239
|
+
/**
|
|
240
|
+
* @description 处理自定义补充参数
|
|
241
|
+
* @protected
|
|
242
|
+
* @memberof ExtendMenuBaseController
|
|
243
|
+
*/
|
|
244
|
+
handleRawItemParams() {
|
|
245
|
+
var _a;
|
|
246
|
+
let params = {};
|
|
247
|
+
const rawItemParams = (_a = this.model.rawItem) == null ? void 0 : _a.rawItemParams;
|
|
248
|
+
if (notNilEmpty(rawItemParams)) {
|
|
249
|
+
params = rawItemParams.reduce((param, item) => {
|
|
250
|
+
param[item.key.toLowerCase()] = item.value;
|
|
251
|
+
return param;
|
|
252
|
+
}, {});
|
|
253
|
+
}
|
|
254
|
+
Object.assign(this.rawItemParams, params);
|
|
255
|
+
}
|
|
256
|
+
}
|
|
257
|
+
|
|
258
|
+
export { ExtendMenuBaseController };
|
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
import { PanelItemState } from '@ibiz-template/runtime';
|
|
2
|
+
import { IAppMenuItem } from '@ibiz/model-core';
|
|
3
|
+
/**
|
|
4
|
+
* @description 扩展菜单状态基类
|
|
5
|
+
* @export
|
|
6
|
+
* @class ExtendMenuBase
|
|
7
|
+
* @extends {PanelItemState}
|
|
8
|
+
*/
|
|
9
|
+
export declare class ExtendMenuBase extends PanelItemState {
|
|
10
|
+
/**
|
|
11
|
+
* @description 所有菜单项
|
|
12
|
+
* @type {IAppMenuItem[]}
|
|
13
|
+
* @memberof ExtendMenuBase
|
|
14
|
+
*/
|
|
15
|
+
items: IAppMenuItem[];
|
|
16
|
+
/**
|
|
17
|
+
* @description 菜单项状态
|
|
18
|
+
* @type {{ [p: string]: { visible: boolean; permitted: boolean } }}
|
|
19
|
+
* @memberof ExtendMenuBase
|
|
20
|
+
*/
|
|
21
|
+
menuItemsState: {
|
|
22
|
+
[p: string]: {
|
|
23
|
+
visible: boolean;
|
|
24
|
+
permitted: boolean;
|
|
25
|
+
};
|
|
26
|
+
};
|
|
27
|
+
}
|
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
import { PanelItemState } from '@ibiz-template/runtime';
|
|
2
|
+
|
|
3
|
+
"use strict";
|
|
4
|
+
var __defProp = Object.defineProperty;
|
|
5
|
+
var __defNormalProp = (obj, key, value) => key in obj ? __defProp(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;
|
|
6
|
+
var __publicField = (obj, key, value) => {
|
|
7
|
+
__defNormalProp(obj, typeof key !== "symbol" ? key + "" : key, value);
|
|
8
|
+
return value;
|
|
9
|
+
};
|
|
10
|
+
class ExtendMenuBase extends PanelItemState {
|
|
11
|
+
constructor() {
|
|
12
|
+
super(...arguments);
|
|
13
|
+
/**
|
|
14
|
+
* @description 所有菜单项
|
|
15
|
+
* @type {IAppMenuItem[]}
|
|
16
|
+
* @memberof ExtendMenuBase
|
|
17
|
+
*/
|
|
18
|
+
__publicField(this, "items", []);
|
|
19
|
+
/**
|
|
20
|
+
* @description 菜单项状态
|
|
21
|
+
* @type {{ [p: string]: { visible: boolean; permitted: boolean } }}
|
|
22
|
+
* @memberof ExtendMenuBase
|
|
23
|
+
*/
|
|
24
|
+
__publicField(this, "menuItemsState", {});
|
|
25
|
+
}
|
|
26
|
+
}
|
|
27
|
+
|
|
28
|
+
export { ExtendMenuBase };
|