@ibiz-template/vue3-util 0.6.1-dev.0 → 0.6.1-dev.2
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/index.min.css +1 -1
- package/lib/_virtual/_commonjsHelpers.cjs +46 -0
- package/lib/common/badge/badge.cjs +34 -0
- package/lib/common/badge/badge.css +1 -0
- package/lib/common/code-list/code-list.cjs +105 -0
- package/lib/common/code-list/code-list.css +1 -0
- package/lib/common/control-base/control-base.cjs +102 -0
- package/lib/common/control-base/control-base.css +1 -0
- package/lib/common/control-loading-placeholder/control-loading-placeholder.cjs +32 -0
- package/lib/common/control-shell/control-shell.cjs +58 -0
- package/lib/common/control-shell/control-shell.css +1 -0
- package/lib/common/icon/icon.cjs +103 -0
- package/lib/common/index.cjs +21 -0
- package/lib/common/router-view/router-view.cjs +77 -0
- package/lib/common/view-shell/view-shell.cjs +137 -0
- package/lib/common/view-shell/view-shell.css +1 -0
- package/lib/control/index.cjs +10 -0
- package/lib/control/panel/index.cjs +9 -0
- package/lib/control/panel/panel/index.cjs +18 -0
- package/lib/control/panel/panel/panel.cjs +142 -0
- package/lib/control/panel/panel/panel.css +1 -0
- package/lib/control/panel/panel/panel.provider.cjs +10 -0
- package/lib/control/panel/view-layout-panel/index.cjs +24 -0
- package/lib/control/panel/view-layout-panel/view-layout-panel.cjs +144 -0
- package/lib/control/panel/view-layout-panel/view-layout-panel.css +1 -0
- package/lib/control/panel/view-layout-panel/view-layout-panel.provider.cjs +10 -0
- package/lib/hooks/app/app.hooks.cjs +26 -0
- package/lib/hooks/index.cjs +7 -0
- package/lib/interface/index.cjs +5 -0
- package/lib/interface/util/index.cjs +5 -0
- package/lib/interface/util/route/route.cjs +3 -0
- package/lib/node_modules/.pnpm/path-browserify@1.0.1/node_modules/path-browserify/index.cjs +540 -0
- package/lib/panel-component/grid-container/grid-container.cjs +108 -0
- package/lib/panel-component/grid-container/grid-container.controller.cjs +14 -0
- package/lib/panel-component/grid-container/grid-container.css +1 -0
- package/lib/panel-component/grid-container/grid-container.provider.cjs +17 -0
- package/lib/panel-component/grid-container/grid-container.state.cjs +9 -0
- package/lib/panel-component/grid-container/index.cjs +25 -0
- package/lib/panel-component/index.cjs +73 -0
- package/lib/panel-component/multi-data-container/index.cjs +28 -0
- package/lib/panel-component/multi-data-container/multi-data-container-item.controller.cjs +119 -0
- package/lib/panel-component/multi-data-container/multi-data-container-itm.state.cjs +19 -0
- package/lib/panel-component/multi-data-container/multi-data-container.cjs +89 -0
- package/lib/panel-component/multi-data-container/multi-data-container.controller.cjs +262 -0
- package/lib/panel-component/multi-data-container/multi-data-container.css +1 -0
- package/lib/panel-component/multi-data-container/multi-data-container.provider.cjs +17 -0
- package/lib/panel-component/multi-data-container/multi-data-container.state.cjs +19 -0
- package/lib/panel-component/nav-pos/index.cjs +22 -0
- package/lib/panel-component/nav-pos/nav-pos.cjs +107 -0
- package/lib/panel-component/nav-pos/nav-pos.controller.cjs +312 -0
- package/lib/panel-component/nav-pos/nav-pos.css +1 -0
- package/lib/panel-component/nav-pos/nav-pos.provider.cjs +26 -0
- package/lib/panel-component/nav-pos/nav-pos.state.cjs +49 -0
- package/lib/panel-component/panel-container/index.cjs +29 -0
- package/lib/panel-component/panel-container/panel-container.cjs +72 -0
- package/lib/panel-component/panel-container/panel-container.controller.cjs +14 -0
- package/lib/panel-component/panel-container/panel-container.css +1 -0
- package/lib/panel-component/panel-container/panel-container.provider.cjs +17 -0
- package/lib/panel-component/panel-container/panel-container.state.cjs +9 -0
- package/lib/panel-component/panel-container-group/index.cjs +28 -0
- package/lib/panel-component/panel-container-group/panel-container-group.cjs +110 -0
- package/lib/panel-component/panel-container-group/panel-container-group.controller.cjs +37 -0
- package/lib/panel-component/panel-container-group/panel-container-group.css +1 -0
- package/lib/panel-component/panel-container-group/panel-container-group.provider.cjs +17 -0
- package/lib/panel-component/panel-container-group/panel-container-group.state.cjs +9 -0
- package/lib/panel-component/panel-container-image/index.cjs +28 -0
- package/lib/panel-component/panel-container-image/panel-container-image.cjs +95 -0
- package/lib/panel-component/panel-container-image/panel-container-image.controller.cjs +14 -0
- package/lib/panel-component/panel-container-image/panel-container-image.css +1 -0
- package/lib/panel-component/panel-container-image/panel-container-image.provider.cjs +17 -0
- package/lib/panel-component/panel-container-image/panel-container-image.state.cjs +9 -0
- package/lib/panel-component/panel-ctrl-pos/index.cjs +20 -0
- package/lib/panel-component/panel-ctrl-pos/panel-ctrl-pos.cjs +47 -0
- package/lib/panel-component/panel-ctrl-pos/panel-ctrl-pos.controller.cjs +25 -0
- package/lib/panel-component/panel-ctrl-pos/panel-ctrl-pos.css +1 -0
- package/lib/panel-component/panel-ctrl-pos/panel-ctrl-pos.provider.cjs +17 -0
- package/lib/panel-component/panel-field/index.cjs +20 -0
- package/lib/panel-component/panel-field/panel-field.cjs +78 -0
- package/lib/panel-component/panel-field/panel-field.controller.cjs +132 -0
- package/lib/panel-component/panel-field/panel-field.css +1 -0
- package/lib/panel-component/panel-field/panel-field.provider.cjs +17 -0
- package/lib/panel-component/panel-field/panel-field.state.cjs +9 -0
- package/lib/panel-component/panel-item-render/index.cjs +24 -0
- package/lib/panel-component/panel-item-render/panel-item-render.cjs +49 -0
- package/lib/panel-component/panel-item-render/panel-item-render.controller.cjs +31 -0
- package/lib/panel-component/panel-item-render/panel-item-render.provider.cjs +17 -0
- package/lib/panel-component/panel-rawitem/index.cjs +32 -0
- package/lib/panel-component/panel-rawitem/panel-rawitem.cjs +61 -0
- package/lib/panel-component/panel-rawitem/panel-rawitem.controller.cjs +30 -0
- package/lib/panel-component/panel-rawitem/panel-rawitem.css +1 -0
- package/lib/panel-component/panel-rawitem/panel-rawitem.provider.cjs +17 -0
- package/lib/panel-component/panel-tab-page/index.cjs +18 -0
- package/lib/panel-component/panel-tab-page/panel-tab-page.cjs +65 -0
- package/lib/panel-component/panel-tab-page/panel-tab-page.provider.cjs +17 -0
- package/lib/panel-component/scroll-container/index.cjs +55 -0
- package/lib/panel-component/scroll-container/scroll-container/index.cjs +9 -0
- package/lib/panel-component/scroll-container/scroll-container/scroll-container.cjs +114 -0
- package/lib/panel-component/scroll-container/scroll-container/scroll-container.controller.cjs +14 -0
- package/lib/panel-component/scroll-container/scroll-container/scroll-container.css +1 -0
- package/lib/panel-component/scroll-container/scroll-container/scroll-container.provider.cjs +17 -0
- package/lib/panel-component/scroll-container/scroll-container-item/index.cjs +9 -0
- package/lib/panel-component/scroll-container/scroll-container-item/scroll-container-item.cjs +66 -0
- package/lib/panel-component/scroll-container/scroll-container-item/scroll-container-item.controller.cjs +9 -0
- package/lib/panel-component/scroll-container/scroll-container-item/scroll-container-item.css +1 -0
- package/lib/panel-component/scroll-container/scroll-container-item/scroll-container-item.provider.cjs +17 -0
- package/lib/panel-component/single-data-container/index.cjs +28 -0
- package/lib/panel-component/single-data-container/single-data-container.cjs +79 -0
- package/lib/panel-component/single-data-container/single-data-container.controller.cjs +287 -0
- package/lib/panel-component/single-data-container/single-data-container.css +1 -0
- package/lib/panel-component/single-data-container/single-data-container.provider.cjs +17 -0
- package/lib/panel-component/single-data-container/single-data-container.state.cjs +19 -0
- package/lib/plugin/index.cjs +7 -0
- package/{src/plugin/plugin-factory/plugin-factory.ts → lib/plugin/plugin-factory/plugin-factory.cjs} +137 -182
- package/lib/props/common.cjs +17 -0
- package/lib/props/editor/array.cjs +14 -0
- package/lib/props/editor/autocomplete.cjs +14 -0
- package/lib/props/editor/cascader.cjs +14 -0
- package/lib/props/editor/check-box-list.cjs +14 -0
- package/lib/props/editor/check-box.cjs +14 -0
- package/lib/props/editor/code.cjs +23 -0
- package/lib/props/editor/color-picker.cjs +14 -0
- package/lib/props/editor/common.cjs +62 -0
- package/lib/props/editor/data-picker.cjs +14 -0
- package/lib/props/editor/date-picker.cjs +14 -0
- package/lib/props/editor/date-range.cjs +14 -0
- package/lib/props/editor/dropdown-list.cjs +14 -0
- package/lib/props/editor/html.cjs +14 -0
- package/lib/props/editor/index.cjs +86 -0
- package/lib/props/editor/list-box.cjs +14 -0
- package/lib/props/editor/markdown.cjs +22 -0
- package/lib/props/editor/number-range.cjs +14 -0
- package/lib/props/editor/radio-button-list.cjs +14 -0
- package/lib/props/editor/rate.cjs +14 -0
- package/lib/props/editor/raw.cjs +14 -0
- package/lib/props/editor/slider.cjs +14 -0
- package/lib/props/editor/span.cjs +14 -0
- package/lib/props/editor/stepper.cjs +14 -0
- package/lib/props/editor/switch.cjs +14 -0
- package/lib/props/editor/text-box.cjs +30 -0
- package/lib/props/editor/upload.cjs +14 -0
- package/lib/props/index.cjs +89 -0
- package/lib/use/click-outside/click-outside.cjs +50 -0
- package/lib/use/control/index.cjs +7 -0
- package/lib/use/control/use-control-controller/use-control-controller.cjs +78 -0
- package/lib/use/event/event.cjs +39 -0
- package/lib/use/focus-blur/focus-blur.cjs +48 -0
- package/lib/use/index.cjs +34 -0
- package/lib/use/namespace/namespace.cjs +10 -0
- package/lib/use/route/route.cjs +31 -0
- package/lib/use/util/index.cjs +14 -0
- package/lib/use/view/index.cjs +7 -0
- package/lib/use/view/use-view-controller/use-view-controller.cjs +86 -0
- package/lib/use/vue/vue.cjs +64 -0
- package/lib/util/control/prepare-control.cjs +24 -0
- package/lib/util/index.cjs +43 -0
- package/lib/util/install.cjs +11 -0
- package/lib/util/overlay-container/overlay-container.cjs +116 -0
- package/lib/util/overlay-popover-container/overlay-popover-container.cjs +12 -0
- package/lib/util/overlay-view-util/overlay-view-util.cjs +70 -0
- package/lib/util/render/render.cjs +22 -0
- package/lib/util/route/route-listener.cjs +75 -0
- package/lib/util/route/route.cjs +302 -0
- package/lib/util/router-callback/router-callback-item.cjs +74 -0
- package/{src/util/router-callback/router-callback.ts → lib/util/router-callback/router-callback.cjs} +28 -40
- package/lib/util/store/app-store/app-store.cjs +12 -0
- package/lib/util/store/index.cjs +12 -0
- package/lib/util/store/ui-store/ui-store.cjs +17 -0
- package/lib/util/store/ui-store/z-index.cjs +20 -0
- package/lib/view/app-redirect-view/app-redirect-view.cjs +29 -0
- package/lib/view/common/index.cjs +15 -0
- package/lib/view/common/view.cjs +129 -0
- package/lib/view/common/view.css +1 -0
- package/lib/view/common/view.provider.cjs +10 -0
- package/lib/view/de-redirect-view/de-redirect-view.cjs +64 -0
- package/lib/view/de-redirect-view/de-redirect-view.provider.cjs +10 -0
- package/lib/view/de-redirect-view/index.cjs +22 -0
- package/lib/view/index.cjs +15 -0
- package/lib/view/portal-view/index.cjs +23 -0
- package/lib/view/portal-view/portal-view.cjs +95 -0
- package/lib/view/portal-view/portal-view.provider.cjs +10 -0
- package/lib/view/todo-redirect/todo-redirect.cjs +54 -0
- package/package.json +11 -7
- package/src/common/badge/badge.scss +0 -29
- package/src/common/badge/badge.tsx +0 -26
- package/src/common/code-list/code-list.scss +0 -15
- package/src/common/code-list/code-list.tsx +0 -127
- package/src/common/control-base/control-base.scss +0 -4
- package/src/common/control-base/control-base.tsx +0 -130
- package/src/common/control-loading-placeholder/control-loading-placeholder.tsx +0 -22
- package/src/common/control-shell/control-shell.scss +0 -5
- package/src/common/control-shell/control-shell.tsx +0 -70
- package/src/common/icon/icon.tsx +0 -82
- package/src/common/index.ts +0 -8
- package/src/common/router-view/router-view.tsx +0 -74
- package/src/common/view-shell/view-shell.scss +0 -5
- package/src/common/view-shell/view-shell.tsx +0 -163
- package/src/control/index.ts +0 -1
- package/src/control/panel/index.ts +0 -2
- package/src/control/panel/panel/index.ts +0 -12
- package/src/control/panel/panel/panel.provider.ts +0 -14
- package/src/control/panel/panel/panel.scss +0 -9
- package/src/control/panel/panel/panel.tsx +0 -166
- package/src/control/panel/view-layout-panel/index.ts +0 -18
- package/src/control/panel/view-layout-panel/view-layout-panel.provider.ts +0 -14
- package/src/control/panel/view-layout-panel/view-layout-panel.scss +0 -9
- package/src/control/panel/view-layout-panel/view-layout-panel.tsx +0 -178
- package/src/hooks/app/app.hooks.ts +0 -31
- package/src/hooks/index.ts +0 -1
- package/src/index.ts +0 -18
- package/src/interface/index.ts +0 -1
- package/src/interface/util/index.ts +0 -1
- package/src/interface/util/route/route.ts +0 -116
- package/src/panel-component/grid-container/grid-container.controller.ts +0 -18
- package/src/panel-component/grid-container/grid-container.provider.ts +0 -30
- package/src/panel-component/grid-container/grid-container.scss +0 -17
- package/src/panel-component/grid-container/grid-container.state.ts +0 -12
- package/src/panel-component/grid-container/grid-container.tsx +0 -119
- package/src/panel-component/grid-container/index.ts +0 -19
- package/src/panel-component/index.ts +0 -13
- package/src/panel-component/multi-data-container/index.ts +0 -22
- package/src/panel-component/multi-data-container/multi-data-container-item.controller.ts +0 -166
- package/src/panel-component/multi-data-container/multi-data-container-itm.state.ts +0 -20
- package/src/panel-component/multi-data-container/multi-data-container.controller.ts +0 -308
- package/src/panel-component/multi-data-container/multi-data-container.provider.ts +0 -30
- package/src/panel-component/multi-data-container/multi-data-container.scss +0 -10
- package/src/panel-component/multi-data-container/multi-data-container.state.ts +0 -20
- package/src/panel-component/multi-data-container/multi-data-container.tsx +0 -109
- package/src/panel-component/nav-pos/index.ts +0 -16
- package/src/panel-component/nav-pos/nav-pos.controller.ts +0 -401
- package/src/panel-component/nav-pos/nav-pos.provider.ts +0 -38
- package/src/panel-component/nav-pos/nav-pos.scss +0 -4
- package/src/panel-component/nav-pos/nav-pos.state.ts +0 -52
- package/src/panel-component/nav-pos/nav-pos.tsx +0 -121
- package/src/panel-component/panel-container/index.ts +0 -27
- package/src/panel-component/panel-container/panel-container.controller.ts +0 -18
- package/src/panel-component/panel-container/panel-container.provider.ts +0 -30
- package/src/panel-component/panel-container/panel-container.scss +0 -15
- package/src/panel-component/panel-container/panel-container.state.ts +0 -12
- package/src/panel-component/panel-container/panel-container.tsx +0 -72
- package/src/panel-component/panel-container-group/index.ts +0 -22
- package/src/panel-component/panel-container-group/panel-container-group.controller.ts +0 -43
- package/src/panel-component/panel-container-group/panel-container-group.provider.ts +0 -30
- package/src/panel-component/panel-container-group/panel-container-group.scss +0 -91
- package/src/panel-component/panel-container-group/panel-container-group.state.ts +0 -12
- package/src/panel-component/panel-container-group/panel-container-group.tsx +0 -112
- package/src/panel-component/panel-container-image/index.ts +0 -22
- package/src/panel-component/panel-container-image/panel-container-image.controller.ts +0 -18
- package/src/panel-component/panel-container-image/panel-container-image.provider.ts +0 -30
- package/src/panel-component/panel-container-image/panel-container-image.scss +0 -18
- package/src/panel-component/panel-container-image/panel-container-image.state.ts +0 -12
- package/src/panel-component/panel-container-image/panel-container-image.tsx +0 -95
- package/src/panel-component/panel-ctrl-pos/index.ts +0 -14
- package/src/panel-component/panel-ctrl-pos/panel-ctrl-pos.controller.ts +0 -53
- package/src/panel-component/panel-ctrl-pos/panel-ctrl-pos.provider.ts +0 -30
- package/src/panel-component/panel-ctrl-pos/panel-ctrl-pos.scss +0 -8
- package/src/panel-component/panel-ctrl-pos/panel-ctrl-pos.tsx +0 -53
- package/src/panel-component/panel-field/index.ts +0 -14
- package/src/panel-component/panel-field/panel-field.controller.ts +0 -174
- package/src/panel-component/panel-field/panel-field.provider.ts +0 -28
- package/src/panel-component/panel-field/panel-field.scss +0 -36
- package/src/panel-component/panel-field/panel-field.state.ts +0 -12
- package/src/panel-component/panel-field/panel-field.tsx +0 -81
- package/src/panel-component/panel-item-render/index.ts +0 -18
- package/src/panel-component/panel-item-render/panel-item-render.controller.ts +0 -52
- package/src/panel-component/panel-item-render/panel-item-render.provider.ts +0 -30
- package/src/panel-component/panel-item-render/panel-item-render.tsx +0 -50
- package/src/panel-component/panel-rawitem/index.ts +0 -26
- package/src/panel-component/panel-rawitem/panel-rawitem.controller.ts +0 -34
- package/src/panel-component/panel-rawitem/panel-rawitem.provider.ts +0 -28
- package/src/panel-component/panel-rawitem/panel-rawitem.scss +0 -8
- package/src/panel-component/panel-rawitem/panel-rawitem.tsx +0 -61
- package/src/panel-component/panel-tab-page/index.ts +0 -12
- package/src/panel-component/panel-tab-page/panel-tab-page.provider.ts +0 -27
- package/src/panel-component/panel-tab-page/panel-tab-page.tsx +0 -55
- package/src/panel-component/scroll-container/index.ts +0 -44
- package/src/panel-component/scroll-container/scroll-container/index.ts +0 -2
- package/src/panel-component/scroll-container/scroll-container/scroll-container.controller.ts +0 -32
- package/src/panel-component/scroll-container/scroll-container/scroll-container.provider.ts +0 -30
- package/src/panel-component/scroll-container/scroll-container/scroll-container.scss +0 -34
- package/src/panel-component/scroll-container/scroll-container/scroll-container.tsx +0 -110
- package/src/panel-component/scroll-container/scroll-container-item/index.ts +0 -2
- package/src/panel-component/scroll-container/scroll-container-item/scroll-container-item.controller.ts +0 -25
- package/src/panel-component/scroll-container/scroll-container-item/scroll-container-item.provider.ts +0 -30
- package/src/panel-component/scroll-container/scroll-container-item/scroll-container-item.scss +0 -9
- package/src/panel-component/scroll-container/scroll-container-item/scroll-container-item.tsx +0 -60
- package/src/panel-component/single-data-container/index.ts +0 -22
- package/src/panel-component/single-data-container/single-data-container.controller.ts +0 -345
- package/src/panel-component/single-data-container/single-data-container.provider.ts +0 -30
- package/src/panel-component/single-data-container/single-data-container.scss +0 -10
- package/src/panel-component/single-data-container/single-data-container.state.ts +0 -20
- package/src/panel-component/single-data-container/single-data-container.tsx +0 -95
- package/src/plugin/index.ts +0 -1
- package/src/props/common.ts +0 -30
- package/src/props/editor/array.ts +0 -27
- package/src/props/editor/autocomplete.ts +0 -27
- package/src/props/editor/cascader.ts +0 -27
- package/src/props/editor/check-box-list.ts +0 -27
- package/src/props/editor/check-box.ts +0 -27
- package/src/props/editor/code.ts +0 -36
- package/src/props/editor/color-picker.ts +0 -27
- package/src/props/editor/common.ts +0 -94
- package/src/props/editor/data-picker.ts +0 -27
- package/src/props/editor/date-picker.ts +0 -27
- package/src/props/editor/date-range.ts +0 -23
- package/src/props/editor/dropdown-list.ts +0 -27
- package/src/props/editor/html.ts +0 -27
- package/src/props/editor/index.ts +0 -25
- package/src/props/editor/list-box.ts +0 -27
- package/src/props/editor/markdown.ts +0 -35
- package/src/props/editor/number-range.ts +0 -23
- package/src/props/editor/radio-button-list.ts +0 -27
- package/src/props/editor/rate.ts +0 -23
- package/src/props/editor/raw.ts +0 -23
- package/src/props/editor/slider.ts +0 -23
- package/src/props/editor/span.ts +0 -27
- package/src/props/editor/stepper.ts +0 -23
- package/src/props/editor/switch.ts +0 -23
- package/src/props/editor/text-box.ts +0 -79
- package/src/props/editor/upload.ts +0 -27
- package/src/props/index.ts +0 -2
- package/src/types/index.d.ts +0 -8
- package/src/use/click-outside/click-outside.ts +0 -72
- package/src/use/control/index.ts +0 -1
- package/src/use/control/use-control-controller/use-control-controller.ts +0 -153
- package/src/use/event/event.ts +0 -57
- package/src/use/focus-blur/focus-blur.ts +0 -83
- package/src/use/index.ts +0 -9
- package/src/use/namespace/namespace.ts +0 -14
- package/src/use/route/route.ts +0 -47
- package/src/use/util/index.ts +0 -26
- package/src/use/view/index.ts +0 -1
- package/src/use/view/use-view-controller/use-view-controller.ts +0 -153
- package/src/use/vue/vue.ts +0 -142
- package/src/util/control/prepare-control.ts +0 -33
- package/src/util/index.ts +0 -10
- package/src/util/install.ts +0 -14
- package/src/util/overlay-container/overlay-container.ts +0 -155
- package/src/util/overlay-popover-container/overlay-popover-container.ts +0 -30
- package/src/util/overlay-view-util/overlay-view-util.ts +0 -89
- package/src/util/render/render.ts +0 -28
- package/src/util/route/route-listener.ts +0 -91
- package/src/util/route/route.ts +0 -520
- package/src/util/router-callback/router-callback-item.ts +0 -98
- package/src/util/store/app-store/app-store.ts +0 -10
- package/src/util/store/index.ts +0 -6
- package/src/util/store/ui-store/ui-store.ts +0 -27
- package/src/util/store/ui-store/z-index.ts +0 -53
- package/src/view/app-redirect-view/app-redirect-view.tsx +0 -26
- package/src/view/common/index.ts +0 -10
- package/src/view/common/view.provider.ts +0 -14
- package/src/view/common/view.scss +0 -38
- package/src/view/common/view.tsx +0 -152
- package/src/view/de-redirect-view/de-redirect-view.provider.ts +0 -14
- package/src/view/de-redirect-view/de-redirect-view.tsx +0 -62
- package/src/view/de-redirect-view/index.ts +0 -17
- package/src/view/index.ts +0 -5
- package/src/view/portal-view/index.ts +0 -18
- package/src/view/portal-view/portal-view.provider.ts +0 -14
- package/src/view/portal-view/portal-view.tsx +0 -79
- package/src/view/todo-redirect/todo-redirect.tsx +0 -51
package/src/util/store/index.ts
DELETED
|
@@ -1,27 +0,0 @@
|
|
|
1
|
-
import { defineStore } from 'pinia';
|
|
2
|
-
import { reactive, Ref } from 'vue';
|
|
3
|
-
import { useZIndexStore } from './z-index';
|
|
4
|
-
|
|
5
|
-
export interface IUIState {
|
|
6
|
-
/**
|
|
7
|
-
* ui层级
|
|
8
|
-
*
|
|
9
|
-
* @author lxm
|
|
10
|
-
* @date 2022-08-18 21:08:48
|
|
11
|
-
* @type {number}
|
|
12
|
-
*/
|
|
13
|
-
zIndex: Ref<number>;
|
|
14
|
-
|
|
15
|
-
theme: string;
|
|
16
|
-
}
|
|
17
|
-
|
|
18
|
-
export const useUIStore = defineStore('uiStore', () => {
|
|
19
|
-
const zIndex = useZIndexStore();
|
|
20
|
-
|
|
21
|
-
const UIStore = reactive<IUIState>({
|
|
22
|
-
zIndex: zIndex.zIndex,
|
|
23
|
-
theme: 'light',
|
|
24
|
-
});
|
|
25
|
-
|
|
26
|
-
return { UIStore, zIndex };
|
|
27
|
-
});
|
|
@@ -1,53 +0,0 @@
|
|
|
1
|
-
import { Ref, ref } from 'vue';
|
|
2
|
-
|
|
3
|
-
export interface IzIndexStore {
|
|
4
|
-
/**
|
|
5
|
-
* 当前最高的ui层级
|
|
6
|
-
*
|
|
7
|
-
* @author lxm
|
|
8
|
-
* @date 2022-08-18 21:08:48
|
|
9
|
-
* @type {number}
|
|
10
|
-
*/
|
|
11
|
-
zIndex: Ref<number>;
|
|
12
|
-
|
|
13
|
-
/**
|
|
14
|
-
* 增加Ui层级,返回增加后的层级
|
|
15
|
-
*
|
|
16
|
-
* @author lxm
|
|
17
|
-
* @date 2022-08-18 21:08:22
|
|
18
|
-
*/
|
|
19
|
-
increment(): number;
|
|
20
|
-
|
|
21
|
-
/**
|
|
22
|
-
* 减少Ui层级
|
|
23
|
-
*
|
|
24
|
-
* @author lxm
|
|
25
|
-
* @date 2022-08-18 21:08:22
|
|
26
|
-
*/
|
|
27
|
-
decrement(): void;
|
|
28
|
-
}
|
|
29
|
-
|
|
30
|
-
/**
|
|
31
|
-
* 定义zIndex的全局状态变量
|
|
32
|
-
*
|
|
33
|
-
* @author lxm
|
|
34
|
-
* @date 2022-08-18 21:08:26
|
|
35
|
-
* @export
|
|
36
|
-
* @returns {*}
|
|
37
|
-
*/
|
|
38
|
-
export function useZIndexStore(): IzIndexStore {
|
|
39
|
-
const DEFAULT_INDEX = 500;
|
|
40
|
-
const INCREMENT_VALUE = 1;
|
|
41
|
-
const zIndex = ref(DEFAULT_INDEX);
|
|
42
|
-
|
|
43
|
-
function increment(): number {
|
|
44
|
-
zIndex.value += INCREMENT_VALUE;
|
|
45
|
-
return zIndex.value;
|
|
46
|
-
}
|
|
47
|
-
|
|
48
|
-
function decrement() {
|
|
49
|
-
zIndex.value -= INCREMENT_VALUE;
|
|
50
|
-
}
|
|
51
|
-
|
|
52
|
-
return { zIndex, increment, decrement };
|
|
53
|
-
}
|
|
@@ -1,26 +0,0 @@
|
|
|
1
|
-
import { defineComponent, onMounted, onUnmounted } from 'vue';
|
|
2
|
-
import { IBizContext } from '@ibiz-template/core';
|
|
3
|
-
import { toLocalOpenWFRedirectView } from '@ibiz-template/runtime';
|
|
4
|
-
|
|
5
|
-
export const AppRedirectView = defineComponent({
|
|
6
|
-
setup() {
|
|
7
|
-
const context = IBizContext.create(ibiz.appData?.context || {});
|
|
8
|
-
|
|
9
|
-
onUnmounted(() => {
|
|
10
|
-
context.destroy();
|
|
11
|
-
});
|
|
12
|
-
|
|
13
|
-
const { href } = window.location;
|
|
14
|
-
|
|
15
|
-
async function toRedirect(): Promise<void> {
|
|
16
|
-
await toLocalOpenWFRedirectView(context, href);
|
|
17
|
-
}
|
|
18
|
-
|
|
19
|
-
onMounted(() => ibiz.util.hiddenAppLoading());
|
|
20
|
-
|
|
21
|
-
toRedirect();
|
|
22
|
-
},
|
|
23
|
-
render() {
|
|
24
|
-
return <div>重定向跳转中</div>;
|
|
25
|
-
},
|
|
26
|
-
});
|
package/src/view/common/index.ts
DELETED
|
@@ -1,10 +0,0 @@
|
|
|
1
|
-
import { App } from 'vue';
|
|
2
|
-
import { registerViewProvider } from '@ibiz-template/runtime';
|
|
3
|
-
import { withInstall } from '../../util';
|
|
4
|
-
import { ViewProvider } from './view.provider';
|
|
5
|
-
import { View } from './view';
|
|
6
|
-
|
|
7
|
-
export const IBizView = withInstall(View, function (v: App) {
|
|
8
|
-
v.component(View.name, View);
|
|
9
|
-
registerViewProvider('DEFAULT', () => new ViewProvider());
|
|
10
|
-
});
|
|
@@ -1,14 +0,0 @@
|
|
|
1
|
-
import { IViewProvider } from '@ibiz-template/runtime';
|
|
2
|
-
|
|
3
|
-
/**
|
|
4
|
-
* 视图适配器
|
|
5
|
-
*
|
|
6
|
-
* @author lxm
|
|
7
|
-
* @date 2022-10-25 18:10:57
|
|
8
|
-
* @export
|
|
9
|
-
* @class ViewProvider
|
|
10
|
-
* @implements {IViewProvider}
|
|
11
|
-
*/
|
|
12
|
-
export class ViewProvider implements IViewProvider {
|
|
13
|
-
component: string = 'IBizView';
|
|
14
|
-
}
|
|
@@ -1,38 +0,0 @@
|
|
|
1
|
-
$view: (
|
|
2
|
-
bg-color: getCssVar(color, bg, 1),
|
|
3
|
-
border-radius: getCssVar(border-radius, medium),
|
|
4
|
-
);
|
|
5
|
-
|
|
6
|
-
// 视图默认撑满父容器
|
|
7
|
-
@include b(view) {
|
|
8
|
-
@include set-component-css-var(view, $view);
|
|
9
|
-
|
|
10
|
-
width: 100%;
|
|
11
|
-
height: 100%;
|
|
12
|
-
|
|
13
|
-
.#{bem(view)} {
|
|
14
|
-
background-color: getCssVar(view, bg-color);
|
|
15
|
-
border-radius: getCssVar(view, border-radius);
|
|
16
|
-
}
|
|
17
|
-
|
|
18
|
-
// 看板视图样式
|
|
19
|
-
@include b(view-appportalview){
|
|
20
|
-
background-color: transparent;
|
|
21
|
-
}
|
|
22
|
-
|
|
23
|
-
&.has-top-message,&.has-bottom-message{
|
|
24
|
-
@include flex(column);
|
|
25
|
-
|
|
26
|
-
// 视图消息不压缩
|
|
27
|
-
> .#{bem(view-message)}{
|
|
28
|
-
flex-grow: 0;
|
|
29
|
-
flex-shrink: 0;
|
|
30
|
-
}
|
|
31
|
-
|
|
32
|
-
// 视图面板自适应
|
|
33
|
-
> .#{bem(control-viewlayoutpanel)}{
|
|
34
|
-
flex-grow: 1;
|
|
35
|
-
flex-shrink: 1;
|
|
36
|
-
}
|
|
37
|
-
}
|
|
38
|
-
}
|
package/src/view/common/view.tsx
DELETED
|
@@ -1,152 +0,0 @@
|
|
|
1
|
-
import {
|
|
2
|
-
getControlsByView,
|
|
3
|
-
IModal,
|
|
4
|
-
IViewLayoutPanelController,
|
|
5
|
-
IViewProvider,
|
|
6
|
-
ViewController,
|
|
7
|
-
} from '@ibiz-template/runtime';
|
|
8
|
-
import { IAppView } from '@ibiz/model-core';
|
|
9
|
-
import {
|
|
10
|
-
defineComponent,
|
|
11
|
-
h,
|
|
12
|
-
PropType,
|
|
13
|
-
resolveComponent,
|
|
14
|
-
VNode,
|
|
15
|
-
computed,
|
|
16
|
-
} from 'vue';
|
|
17
|
-
import './view.scss';
|
|
18
|
-
import { useNamespace, useViewController } from '../../use';
|
|
19
|
-
|
|
20
|
-
export const View = defineComponent({
|
|
21
|
-
name: 'IBizView',
|
|
22
|
-
props: {
|
|
23
|
-
context: Object as PropType<IContext>,
|
|
24
|
-
params: { type: Object as PropType<IParams>, default: () => ({}) },
|
|
25
|
-
modelData: { type: Object as PropType<IAppView>, required: true },
|
|
26
|
-
modal: { type: Object as PropType<IModal> },
|
|
27
|
-
state: { type: Object as PropType<IData> },
|
|
28
|
-
provider: { type: Object as PropType<IViewProvider> },
|
|
29
|
-
},
|
|
30
|
-
setup() {
|
|
31
|
-
const ns = useNamespace('view');
|
|
32
|
-
const c = useViewController((...args) => new ViewController(...args));
|
|
33
|
-
// 视图部件模型在viewlayoutPanel里面。
|
|
34
|
-
const controls = getControlsByView(c.model);
|
|
35
|
-
const { viewType, sysCss, codeName } = c.model;
|
|
36
|
-
const typeClass = viewType!.toLowerCase();
|
|
37
|
-
const sysCssName = sysCss?.cssName;
|
|
38
|
-
const viewClassNames = computed(() => [
|
|
39
|
-
ns.b(),
|
|
40
|
-
true && ns.b(typeClass),
|
|
41
|
-
true && ns.m(codeName),
|
|
42
|
-
true && sysCssName,
|
|
43
|
-
c.state.viewMessages.TOP ? 'has-top-message' : '',
|
|
44
|
-
c.state.viewMessages.BOTTOM ? 'has-bottom-message' : '',
|
|
45
|
-
]);
|
|
46
|
-
|
|
47
|
-
const onLayoutPanelCreated = (
|
|
48
|
-
controller: IViewLayoutPanelController,
|
|
49
|
-
): void => {
|
|
50
|
-
c.setLayoutPanel(controller as IViewLayoutPanelController);
|
|
51
|
-
};
|
|
52
|
-
|
|
53
|
-
const renderViewMessage = (position: 'TOP' | 'BOTTOM' | 'BODY') => {
|
|
54
|
-
if (c.state.isCreated) {
|
|
55
|
-
const viewMessages = c.state.viewMessages[position];
|
|
56
|
-
if (viewMessages?.length) {
|
|
57
|
-
return (
|
|
58
|
-
<view-message
|
|
59
|
-
class={[ns.e(`${position.toLowerCase()}-message`)]}
|
|
60
|
-
messages={viewMessages}
|
|
61
|
-
></view-message>
|
|
62
|
-
);
|
|
63
|
-
}
|
|
64
|
-
}
|
|
65
|
-
return null;
|
|
66
|
-
};
|
|
67
|
-
|
|
68
|
-
return {
|
|
69
|
-
c,
|
|
70
|
-
controls,
|
|
71
|
-
viewClassNames,
|
|
72
|
-
onLayoutPanelCreated,
|
|
73
|
-
renderViewMessage,
|
|
74
|
-
};
|
|
75
|
-
},
|
|
76
|
-
render() {
|
|
77
|
-
let layoutPanel = null;
|
|
78
|
-
if (this.c.state.isCreated) {
|
|
79
|
-
// 绘制部件插槽,外部插槽优先
|
|
80
|
-
const slots: IData = {
|
|
81
|
-
...this.$slots,
|
|
82
|
-
};
|
|
83
|
-
if (this.controls?.length) {
|
|
84
|
-
this.controls.forEach(ctrl => {
|
|
85
|
-
const slotKey = ctrl.name! || ctrl.id!;
|
|
86
|
-
const ctrlProps = {
|
|
87
|
-
context: this.c.context,
|
|
88
|
-
params: this.c.params,
|
|
89
|
-
};
|
|
90
|
-
if (this.c.slotProps[slotKey]) {
|
|
91
|
-
Object.assign(ctrlProps, this.c.slotProps[slotKey]);
|
|
92
|
-
}
|
|
93
|
-
// 已经有插槽的不用自己绘制了。
|
|
94
|
-
const outCtrlSlot = slots[slotKey];
|
|
95
|
-
if (outCtrlSlot) {
|
|
96
|
-
slots[slotKey] = (): VNode => {
|
|
97
|
-
return outCtrlSlot(ctrlProps);
|
|
98
|
-
};
|
|
99
|
-
return;
|
|
100
|
-
}
|
|
101
|
-
const provider = this.c.providers[slotKey];
|
|
102
|
-
if (provider) {
|
|
103
|
-
slots[slotKey] = (): VNode => {
|
|
104
|
-
const comp = resolveComponent(provider.component) as string;
|
|
105
|
-
return h(comp, {
|
|
106
|
-
modelData: ctrl,
|
|
107
|
-
...ctrlProps,
|
|
108
|
-
provider,
|
|
109
|
-
});
|
|
110
|
-
};
|
|
111
|
-
}
|
|
112
|
-
});
|
|
113
|
-
}
|
|
114
|
-
|
|
115
|
-
if (this.c.engines.length === 0) {
|
|
116
|
-
layoutPanel = (
|
|
117
|
-
<span style={'color:red;'}>
|
|
118
|
-
视图类型{this.modelData.viewType}暂未支持
|
|
119
|
-
</span>
|
|
120
|
-
);
|
|
121
|
-
} else {
|
|
122
|
-
// 绘制视图布局面板
|
|
123
|
-
const viewLayoutPanel = this.c.model.viewLayoutPanel!;
|
|
124
|
-
const provider = this.c.providers[viewLayoutPanel.name!];
|
|
125
|
-
layoutPanel = h(
|
|
126
|
-
resolveComponent(provider.component) as string,
|
|
127
|
-
{
|
|
128
|
-
modelData: viewLayoutPanel,
|
|
129
|
-
context: this.c.context,
|
|
130
|
-
params: this.c.params,
|
|
131
|
-
provider,
|
|
132
|
-
container: this.c,
|
|
133
|
-
onControllerAppear: this.onLayoutPanelCreated,
|
|
134
|
-
},
|
|
135
|
-
slots,
|
|
136
|
-
);
|
|
137
|
-
}
|
|
138
|
-
}
|
|
139
|
-
|
|
140
|
-
return (
|
|
141
|
-
<div
|
|
142
|
-
class={this.viewClassNames}
|
|
143
|
-
id={this.c.id}
|
|
144
|
-
v-loading={this.c.state.isLoading}
|
|
145
|
-
>
|
|
146
|
-
{this.renderViewMessage('TOP')}
|
|
147
|
-
{layoutPanel}
|
|
148
|
-
{this.renderViewMessage('BOTTOM')}
|
|
149
|
-
</div>
|
|
150
|
-
);
|
|
151
|
-
},
|
|
152
|
-
});
|
|
@@ -1,14 +0,0 @@
|
|
|
1
|
-
import { IViewProvider } from '@ibiz-template/runtime';
|
|
2
|
-
|
|
3
|
-
/**
|
|
4
|
-
* 实体重定向视图适配器
|
|
5
|
-
*
|
|
6
|
-
* @author lxm
|
|
7
|
-
* @date 2022-10-25 18:10:57
|
|
8
|
-
* @export
|
|
9
|
-
* @class ViewProvider
|
|
10
|
-
* @implements {IViewProvider}
|
|
11
|
-
*/
|
|
12
|
-
export class DeRedirectViewProvider implements IViewProvider {
|
|
13
|
-
component: string = 'IBizDeRedirectView';
|
|
14
|
-
}
|
|
@@ -1,62 +0,0 @@
|
|
|
1
|
-
import { RuntimeError } from '@ibiz-template/core';
|
|
2
|
-
import { getDERedirectToView, ViewController } from '@ibiz-template/runtime';
|
|
3
|
-
import { IAppDERedirectView } from '@ibiz/model-core';
|
|
4
|
-
import {
|
|
5
|
-
defineComponent,
|
|
6
|
-
h,
|
|
7
|
-
PropType,
|
|
8
|
-
ref,
|
|
9
|
-
resolveComponent,
|
|
10
|
-
toRaw,
|
|
11
|
-
} from 'vue';
|
|
12
|
-
import { useViewController } from '../../use';
|
|
13
|
-
|
|
14
|
-
export const DeRedirectView = defineComponent({
|
|
15
|
-
name: 'IBizDeRedirectView',
|
|
16
|
-
props: {
|
|
17
|
-
context: { type: Object as PropType<IContext>, required: true },
|
|
18
|
-
params: { type: Object as PropType<IParams>, default: () => ({}) },
|
|
19
|
-
modelData: { type: Object as PropType<IAppDERedirectView>, required: true },
|
|
20
|
-
},
|
|
21
|
-
setup(props) {
|
|
22
|
-
const c = useViewController((...args) => new ViewController(...args));
|
|
23
|
-
const toViewId = ref<string>();
|
|
24
|
-
const toViewContext = ref<IContext>();
|
|
25
|
-
const toViewParams = ref<IParams>();
|
|
26
|
-
|
|
27
|
-
c.evt.on('onCreated', () => {
|
|
28
|
-
getDERedirectToView(
|
|
29
|
-
toRaw(props.modelData),
|
|
30
|
-
toRaw(c.context),
|
|
31
|
-
toRaw(c.params),
|
|
32
|
-
).then(async result => {
|
|
33
|
-
if (result.type === 'view') {
|
|
34
|
-
toViewId.value = result.viewId;
|
|
35
|
-
toViewContext.value = result.context;
|
|
36
|
-
toViewParams.value = result.params;
|
|
37
|
-
} else {
|
|
38
|
-
throw new RuntimeError('嵌入重定向视图不支持url跳转');
|
|
39
|
-
}
|
|
40
|
-
});
|
|
41
|
-
});
|
|
42
|
-
|
|
43
|
-
return { c, toViewId, toViewContext, toViewParams };
|
|
44
|
-
},
|
|
45
|
-
render() {
|
|
46
|
-
if (this.toViewId) {
|
|
47
|
-
return h(
|
|
48
|
-
resolveComponent('IBizViewShell'),
|
|
49
|
-
{
|
|
50
|
-
context: this.toViewContext,
|
|
51
|
-
params: this.toViewParams,
|
|
52
|
-
viewId: this.toViewId,
|
|
53
|
-
...this.$attrs,
|
|
54
|
-
},
|
|
55
|
-
this.$slots,
|
|
56
|
-
);
|
|
57
|
-
}
|
|
58
|
-
return (
|
|
59
|
-
<div style='width: 100%; height: 100%;' v-loading={!this.toViewId}></div>
|
|
60
|
-
);
|
|
61
|
-
},
|
|
62
|
-
});
|
|
@@ -1,17 +0,0 @@
|
|
|
1
|
-
import { App } from 'vue';
|
|
2
|
-
import { registerViewProvider, ViewType } from '@ibiz-template/runtime';
|
|
3
|
-
import { withInstall } from '../../util';
|
|
4
|
-
import { DeRedirectView } from './de-redirect-view';
|
|
5
|
-
import { DeRedirectViewProvider } from './de-redirect-view.provider';
|
|
6
|
-
|
|
7
|
-
export const IBizDeRedirectView = withInstall(
|
|
8
|
-
DeRedirectView,
|
|
9
|
-
function (v: App) {
|
|
10
|
-
v.component(DeRedirectView.name, DeRedirectView);
|
|
11
|
-
const deRedirectViewProvider = new DeRedirectViewProvider();
|
|
12
|
-
registerViewProvider(
|
|
13
|
-
ViewType.DE_REDIRECT_VIEW,
|
|
14
|
-
() => deRedirectViewProvider,
|
|
15
|
-
);
|
|
16
|
-
},
|
|
17
|
-
);
|
package/src/view/index.ts
DELETED
|
@@ -1,18 +0,0 @@
|
|
|
1
|
-
import { App } from 'vue';
|
|
2
|
-
import { registerViewProvider, ViewType } from '@ibiz-template/runtime';
|
|
3
|
-
import { withInstall } from '../../util';
|
|
4
|
-
import { PortalViewProvider } from './portal-view.provider';
|
|
5
|
-
import { PortalView } from './portal-view';
|
|
6
|
-
|
|
7
|
-
export const IBizPortalView = withInstall(PortalView, function (v: App) {
|
|
8
|
-
v.component(PortalView.name, PortalView);
|
|
9
|
-
registerViewProvider(
|
|
10
|
-
ViewType.APP_PORTAL_VIEW,
|
|
11
|
-
() => new PortalViewProvider(),
|
|
12
|
-
);
|
|
13
|
-
registerViewProvider(ViewType.DE_PORTAL_VIEW, () => new PortalViewProvider());
|
|
14
|
-
registerViewProvider(
|
|
15
|
-
ViewType.DE_PORTAL_VIEW9,
|
|
16
|
-
() => new PortalViewProvider(),
|
|
17
|
-
);
|
|
18
|
-
});
|
|
@@ -1,14 +0,0 @@
|
|
|
1
|
-
import { IViewProvider } from '@ibiz-template/runtime';
|
|
2
|
-
|
|
3
|
-
/**
|
|
4
|
-
* 应用门户视图,实体数据看板视图适配器
|
|
5
|
-
*
|
|
6
|
-
* @author lxm
|
|
7
|
-
* @date 2022-10-25 18:10:57
|
|
8
|
-
* @export
|
|
9
|
-
* @class ViewProvider
|
|
10
|
-
* @implements {IViewProvider}
|
|
11
|
-
*/
|
|
12
|
-
export class PortalViewProvider implements IViewProvider {
|
|
13
|
-
component: string = 'IBizPortalView';
|
|
14
|
-
}
|
|
@@ -1,79 +0,0 @@
|
|
|
1
|
-
import { IModal, ViewController } from '@ibiz-template/runtime';
|
|
2
|
-
import { IAppPortalView } from '@ibiz/model-core';
|
|
3
|
-
import { defineComponent, h, PropType, resolveComponent } from 'vue';
|
|
4
|
-
import { useNamespace, useViewController } from '../../use';
|
|
5
|
-
|
|
6
|
-
export const PortalView = defineComponent({
|
|
7
|
-
name: 'IBizPortalView',
|
|
8
|
-
props: {
|
|
9
|
-
context: Object as PropType<IContext>,
|
|
10
|
-
params: { type: Object as PropType<IParams>, default: () => ({}) },
|
|
11
|
-
modelData: { type: Object as PropType<IAppPortalView>, required: true },
|
|
12
|
-
modal: { type: Object as PropType<IModal> },
|
|
13
|
-
state: { type: Object as PropType<IData> },
|
|
14
|
-
},
|
|
15
|
-
setup() {
|
|
16
|
-
const ns = useNamespace('view');
|
|
17
|
-
const c = useViewController((...args) => new ViewController(...args));
|
|
18
|
-
// 视图部件模型在viewlayoutPanel里面。
|
|
19
|
-
const controls = c.model.viewLayoutPanel?.controls || c.model.controls;
|
|
20
|
-
|
|
21
|
-
const { viewType, sysCss, codeName } = c.model;
|
|
22
|
-
const typeClass = viewType!.toLowerCase();
|
|
23
|
-
const sysCssName = sysCss?.cssName;
|
|
24
|
-
const viewClassNames = [
|
|
25
|
-
ns.b(),
|
|
26
|
-
true && ns.b(typeClass),
|
|
27
|
-
true && ns.m(codeName),
|
|
28
|
-
true && sysCssName,
|
|
29
|
-
];
|
|
30
|
-
|
|
31
|
-
return { c, ns, controls, viewClassNames };
|
|
32
|
-
},
|
|
33
|
-
render() {
|
|
34
|
-
let content = null;
|
|
35
|
-
if (this.c.state.isCreated) {
|
|
36
|
-
// 绘制部件插槽,外部插槽优先
|
|
37
|
-
const slots: IData = {
|
|
38
|
-
...this.$slots,
|
|
39
|
-
};
|
|
40
|
-
if (this.controls?.length) {
|
|
41
|
-
this.controls.forEach(ctrl => {
|
|
42
|
-
const slotKey = ctrl.name || ctrl.id!;
|
|
43
|
-
const crtlProps = {
|
|
44
|
-
context: this.c.context,
|
|
45
|
-
params: this.c.params,
|
|
46
|
-
};
|
|
47
|
-
if (this.c.slotProps[slotKey]) {
|
|
48
|
-
Object.assign(crtlProps, this.c.slotProps[slotKey]);
|
|
49
|
-
}
|
|
50
|
-
// 已经有插槽的不用自己绘制了。
|
|
51
|
-
const outCtrlSlot = slots[slotKey];
|
|
52
|
-
if (outCtrlSlot) {
|
|
53
|
-
slots[slotKey] = () => {
|
|
54
|
-
return outCtrlSlot(crtlProps);
|
|
55
|
-
};
|
|
56
|
-
return;
|
|
57
|
-
}
|
|
58
|
-
const provider = this.c.providers[slotKey];
|
|
59
|
-
if (provider) {
|
|
60
|
-
slots[slotKey] = () => {
|
|
61
|
-
const comp = resolveComponent(provider.component) as string;
|
|
62
|
-
return h(comp, {
|
|
63
|
-
modelData: ctrl,
|
|
64
|
-
...crtlProps,
|
|
65
|
-
});
|
|
66
|
-
};
|
|
67
|
-
}
|
|
68
|
-
});
|
|
69
|
-
}
|
|
70
|
-
|
|
71
|
-
// 绘制内容区
|
|
72
|
-
if (slots.dashboard) {
|
|
73
|
-
content = slots.dashboard();
|
|
74
|
-
}
|
|
75
|
-
}
|
|
76
|
-
|
|
77
|
-
return <div class={this.viewClassNames}>{content}</div>;
|
|
78
|
-
},
|
|
79
|
-
});
|
|
@@ -1,51 +0,0 @@
|
|
|
1
|
-
import qs from 'qs';
|
|
2
|
-
import { defineComponent } from 'vue';
|
|
3
|
-
import { useRouter } from 'vue-router';
|
|
4
|
-
|
|
5
|
-
export const TodoRedirect = defineComponent({
|
|
6
|
-
setup() {
|
|
7
|
-
const router = useRouter();
|
|
8
|
-
|
|
9
|
-
const { href } = window.location;
|
|
10
|
-
|
|
11
|
-
const i = href.lastIndexOf('?');
|
|
12
|
-
|
|
13
|
-
const queryStr: string = decodeURIComponent(
|
|
14
|
-
href.substring(i + 1, href.length),
|
|
15
|
-
);
|
|
16
|
-
|
|
17
|
-
if (!queryStr) {
|
|
18
|
-
throw new Error(`重定向参数不足无法跳转`);
|
|
19
|
-
}
|
|
20
|
-
|
|
21
|
-
const params = qs.parse(queryStr, { delimiter: ';' }) as IData;
|
|
22
|
-
|
|
23
|
-
const { apptype, todotype, todoid } = params;
|
|
24
|
-
|
|
25
|
-
const data: IData = { srfapptype: 'pc', srfapp: '' };
|
|
26
|
-
|
|
27
|
-
if (!apptype) {
|
|
28
|
-
data.todourltype = 'RouterUrl';
|
|
29
|
-
}
|
|
30
|
-
|
|
31
|
-
async function getLinkUrl(): Promise<void> {
|
|
32
|
-
const res = await ibiz.net.post(`/systodos/${todoid}/getlinkurl`, data);
|
|
33
|
-
let url: string = res.data.linkurl;
|
|
34
|
-
// apptype存在,带ip、端口等完整数据
|
|
35
|
-
if (apptype) {
|
|
36
|
-
window.location.href = url;
|
|
37
|
-
} else {
|
|
38
|
-
if (url.indexOf('/') !== 0) {
|
|
39
|
-
url = `/${url}`;
|
|
40
|
-
}
|
|
41
|
-
url += `;srfwf=${todotype}`;
|
|
42
|
-
router.push(`/index${url}`);
|
|
43
|
-
}
|
|
44
|
-
}
|
|
45
|
-
|
|
46
|
-
getLinkUrl();
|
|
47
|
-
},
|
|
48
|
-
render() {
|
|
49
|
-
return <div>待办列表重定向</div>;
|
|
50
|
-
},
|
|
51
|
-
});
|