@ditari/bsui 1.1.4 → 1.1.5
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/CHANGELOG.md +18 -0
- package/dist/cjs/_utils/html.cjs +20 -0
- package/dist/cjs/_utils/html.cjs.map +1 -0
- package/{src/dist/utils → dist/cjs/_utils}/html.d.ts +1 -1
- package/dist/cjs/_utils/install.cjs +14 -0
- package/dist/cjs/_utils/install.cjs.map +1 -0
- package/{src/dist/utils → dist/cjs/_utils}/install.d.ts +4 -4
- package/dist/cjs/_virtual/_plugin-vue_export-helper.cjs +14 -0
- package/dist/cjs/_virtual/_plugin-vue_export-helper.cjs.map +1 -0
- package/dist/cjs/components.cjs +36 -0
- package/dist/cjs/components.cjs.map +1 -0
- package/dist/cjs/components.d.ts +10 -0
- package/dist/cjs/config/Config.vue.cjs +14 -0
- package/dist/cjs/config/Config.vue.cjs.map +1 -0
- package/dist/cjs/config/Config.vue.d.ts +4 -0
- package/dist/cjs/config/Config.vue2.cjs +10 -0
- package/dist/cjs/config/Config.vue2.cjs.map +1 -0
- package/dist/cjs/date/RangePicker.cjs +61 -0
- package/dist/cjs/date/RangePicker.cjs.map +1 -0
- package/{src/dist/components → dist/cjs}/date/RangePicker.d.ts +30 -30
- package/dist/cjs/date/index.cjs +13 -0
- package/dist/cjs/date/index.cjs.map +1 -0
- package/dist/cjs/date/index.d.ts +2 -0
- package/dist/cjs/desensitize/Desensitize.cjs +64 -0
- package/dist/cjs/desensitize/Desensitize.cjs.map +1 -0
- package/{src/dist/components → dist/cjs}/desensitize/Desensitize.d.ts +39 -39
- package/dist/cjs/desensitize/index.cjs +13 -0
- package/dist/cjs/desensitize/index.cjs.map +1 -0
- package/dist/cjs/desensitize/index.d.ts +2 -0
- package/dist/cjs/dic/DicReplace.cjs +37 -0
- package/dist/cjs/dic/DicReplace.cjs.map +1 -0
- package/{src/dist/components → dist/cjs}/dic/DicReplace.d.ts +23 -23
- package/dist/cjs/dic/index.cjs +13 -0
- package/dist/cjs/dic/index.cjs.map +1 -0
- package/dist/cjs/dic/index.d.ts +2 -0
- package/dist/cjs/dic/replace.worker.cjs +16 -0
- package/dist/cjs/dic/replace.worker.cjs.map +1 -0
- package/{src/dist/components → dist/cjs}/dic/replace.worker.d.ts +4 -4
- package/dist/cjs/form/DQueryForm.cjs +154 -0
- package/dist/cjs/form/DQueryForm.cjs.map +1 -0
- package/{src/dist/components → dist/cjs}/form/DQueryForm.d.ts +47 -47
- package/dist/cjs/form/index.cjs +13 -0
- package/dist/cjs/form/index.cjs.map +1 -0
- package/dist/cjs/form/index.d.ts +2 -0
- package/dist/cjs/grid/Grid.cjs +71 -0
- package/dist/cjs/grid/Grid.cjs.map +1 -0
- package/{src/dist/components → dist/cjs}/grid/Grid.d.ts +32 -32
- package/dist/cjs/grid/GridItem.cjs +21 -0
- package/dist/cjs/grid/GridItem.cjs.map +1 -0
- package/{src/dist/components → dist/cjs}/grid/GridItem.d.ts +2 -2
- package/dist/cjs/grid/index.cjs +16 -0
- package/dist/cjs/grid/index.cjs.map +1 -0
- package/dist/cjs/grid/index.d.ts +144 -0
- package/dist/cjs/index.cjs +52 -0
- package/dist/cjs/index.cjs.map +1 -0
- package/{src/dist/components → dist/cjs}/index.d.ts +15 -15
- package/dist/cjs/json-scheme-render/JsonSchemeRender.cjs +94 -0
- package/dist/cjs/json-scheme-render/JsonSchemeRender.cjs.map +1 -0
- package/{src/dist/components → dist/cjs}/json-scheme-render/JsonSchemeRender.d.ts +23 -23
- package/dist/cjs/json-scheme-render/index.cjs +13 -0
- package/dist/cjs/json-scheme-render/index.cjs.map +1 -0
- package/dist/cjs/json-scheme-render/index.d.ts +2 -0
- package/dist/cjs/layout/Breadcrumb.vue.cjs +11 -0
- package/dist/cjs/layout/Breadcrumb.vue.cjs.map +1 -0
- package/dist/cjs/layout/Breadcrumb.vue.d.ts +12 -0
- package/dist/cjs/layout/Breadcrumb.vue2.cjs +73 -0
- package/dist/cjs/layout/Breadcrumb.vue2.cjs.map +1 -0
- package/dist/cjs/layout/FuckMain.vue.cjs +11 -0
- package/dist/cjs/layout/FuckMain.vue.cjs.map +1 -0
- package/dist/cjs/layout/FuckMain.vue.d.ts +143 -0
- package/dist/cjs/layout/FuckMain.vue2.cjs +168 -0
- package/dist/cjs/layout/FuckMain.vue2.cjs.map +1 -0
- package/dist/cjs/layout/List.vue.cjs +11 -0
- package/dist/cjs/layout/List.vue.cjs.map +1 -0
- package/dist/cjs/layout/List.vue.d.ts +51 -0
- package/dist/cjs/layout/List.vue2.cjs +180 -0
- package/dist/cjs/layout/List.vue2.cjs.map +1 -0
- package/dist/cjs/layout/Main.vue.cjs +11 -0
- package/dist/cjs/layout/Main.vue.cjs.map +1 -0
- package/dist/cjs/layout/Main.vue.d.ts +163 -0
- package/dist/cjs/layout/Main.vue2.cjs +160 -0
- package/dist/cjs/layout/Main.vue2.cjs.map +1 -0
- package/dist/cjs/layout/NavTabs.vue.cjs +11 -0
- package/dist/cjs/layout/NavTabs.vue.cjs.map +1 -0
- package/dist/cjs/layout/NavTabs.vue.d.ts +82 -0
- package/dist/cjs/layout/NavTabs.vue2.cjs +138 -0
- package/dist/cjs/layout/NavTabs.vue2.cjs.map +1 -0
- package/dist/cjs/layout/Show.vue.cjs +11 -0
- package/dist/cjs/layout/Show.vue.cjs.map +1 -0
- package/dist/cjs/layout/Show.vue.d.ts +113 -0
- package/dist/cjs/layout/Show.vue2.cjs +122 -0
- package/dist/cjs/layout/Show.vue2.cjs.map +1 -0
- package/dist/cjs/layout/index.cjs +11 -0
- package/dist/cjs/layout/index.cjs.map +1 -0
- package/dist/cjs/layout/index.d.ts +2 -0
- package/dist/cjs/menu/Menu.cjs +132 -0
- package/dist/cjs/menu/Menu.cjs.map +1 -0
- package/{src/dist/components → dist/cjs}/menu/Menu.d.ts +2 -2
- package/dist/cjs/modal/Modal.cjs +79 -0
- package/dist/cjs/modal/Modal.cjs.map +1 -0
- package/{src/dist/components → dist/cjs}/modal/Modal.d.ts +43 -43
- package/dist/cjs/modal/index.cjs +13 -0
- package/dist/cjs/modal/index.cjs.map +1 -0
- package/dist/cjs/modal/index.d.ts +2 -0
- package/dist/cjs/select/Select.vue.cjs +11 -0
- package/dist/cjs/select/Select.vue.cjs.map +1 -0
- package/dist/cjs/select/Select.vue.d.ts +81 -0
- package/dist/cjs/select/Select.vue2.cjs +104 -0
- package/dist/cjs/select/Select.vue2.cjs.map +1 -0
- package/dist/cjs/select/dic.worker.cjs +26 -0
- package/dist/cjs/select/dic.worker.cjs.map +1 -0
- package/{src/dist/components → dist/cjs}/select/dic.worker.d.ts +4 -4
- package/dist/cjs/select/index.cjs +13 -0
- package/dist/cjs/select/index.cjs.map +1 -0
- package/dist/cjs/select/index.d.ts +2 -0
- package/dist/cjs/table/Field.vue.cjs +11 -0
- package/dist/cjs/table/Field.vue.cjs.map +1 -0
- package/dist/cjs/table/Field.vue.d.ts +33 -0
- package/dist/cjs/table/Field.vue2.cjs +50 -0
- package/dist/cjs/table/Field.vue2.cjs.map +1 -0
- package/dist/cjs/table/Table.cjs +361 -0
- package/dist/cjs/table/Table.cjs.map +1 -0
- package/{src/dist/components → dist/cjs}/table/Table.d.ts +80 -80
- package/dist/cjs/table/index.cjs +13 -0
- package/dist/cjs/table/index.cjs.map +1 -0
- package/dist/cjs/table/index.d.ts +2 -0
- package/dist/cjs/table/interface/table.cjs +3 -0
- package/dist/cjs/table/interface/table.cjs.map +1 -0
- package/{src/dist/components → dist/cjs}/table/interface/table.d.ts +36 -36
- package/dist/cjs/theme/index.cjs +6 -0
- package/dist/cjs/theme/index.cjs.map +1 -0
- package/{src/dist/components → dist/cjs}/theme/index.d.ts +1 -1
- package/dist/esm/_utils/html.d.ts +1 -0
- package/dist/esm/_utils/html.mjs +18 -0
- package/dist/esm/_utils/html.mjs.map +1 -0
- package/dist/esm/_utils/install.d.ts +4 -0
- package/dist/esm/_utils/install.mjs +10 -0
- package/dist/esm/_utils/install.mjs.map +1 -0
- package/dist/esm/_virtual/_plugin-vue_export-helper.mjs +10 -0
- package/dist/esm/_virtual/_plugin-vue_export-helper.mjs.map +1 -0
- package/dist/esm/components.d.ts +10 -0
- package/dist/esm/components.mjs +21 -0
- package/dist/esm/components.mjs.map +1 -0
- package/dist/esm/config/Config.vue.d.ts +4 -0
- package/dist/esm/config/Config.vue.mjs +10 -0
- package/dist/esm/config/Config.vue.mjs.map +1 -0
- package/dist/esm/config/Config.vue2.mjs +6 -0
- package/dist/esm/config/Config.vue2.mjs.map +1 -0
- package/dist/esm/date/RangePicker.d.ts +30 -0
- package/dist/esm/date/RangePicker.mjs +57 -0
- package/dist/esm/date/RangePicker.mjs.map +1 -0
- package/dist/esm/date/index.d.ts +2 -0
- package/dist/esm/date/index.mjs +9 -0
- package/dist/esm/date/index.mjs.map +1 -0
- package/{src/dist/components/desensitize/index.d.ts → dist/esm/desensitize/Desensitize.d.ts} +39 -39
- package/dist/esm/desensitize/Desensitize.mjs +60 -0
- package/dist/esm/desensitize/Desensitize.mjs.map +1 -0
- package/dist/esm/desensitize/index.d.ts +2 -0
- package/dist/esm/desensitize/index.mjs +9 -0
- package/dist/esm/desensitize/index.mjs.map +1 -0
- package/{src/dist/components/dic/index.d.ts → dist/esm/dic/DicReplace.d.ts} +23 -23
- package/dist/esm/dic/DicReplace.mjs +33 -0
- package/dist/esm/dic/DicReplace.mjs.map +1 -0
- package/dist/esm/dic/index.d.ts +2 -0
- package/dist/esm/dic/index.mjs +9 -0
- package/dist/esm/dic/index.mjs.map +1 -0
- package/dist/esm/dic/replace.worker.d.ts +4 -0
- package/dist/esm/dic/replace.worker.mjs +14 -0
- package/dist/esm/dic/replace.worker.mjs.map +1 -0
- package/dist/esm/form/DQueryForm.d.ts +47 -0
- package/dist/esm/form/DQueryForm.mjs +150 -0
- package/dist/esm/form/DQueryForm.mjs.map +1 -0
- package/dist/esm/form/index.d.ts +2 -0
- package/dist/esm/form/index.mjs +9 -0
- package/dist/esm/form/index.mjs.map +1 -0
- package/{src/dist/components/grid/index.d.ts → dist/esm/grid/Grid.d.ts} +32 -32
- package/dist/esm/grid/Grid.mjs +67 -0
- package/dist/esm/grid/Grid.mjs.map +1 -0
- package/dist/esm/grid/GridItem.d.ts +2 -0
- package/dist/esm/grid/GridItem.mjs +17 -0
- package/dist/esm/grid/GridItem.mjs.map +1 -0
- package/dist/esm/grid/index.d.ts +144 -0
- package/dist/esm/grid/index.mjs +11 -0
- package/dist/esm/grid/index.mjs.map +1 -0
- package/dist/esm/index.d.ts +15 -0
- package/dist/esm/index.mjs +37 -0
- package/dist/esm/index.mjs.map +1 -0
- package/dist/esm/json-scheme-render/JsonSchemeRender.d.ts +23 -0
- package/dist/esm/json-scheme-render/JsonSchemeRender.mjs +90 -0
- package/dist/esm/json-scheme-render/JsonSchemeRender.mjs.map +1 -0
- package/dist/esm/json-scheme-render/index.d.ts +2 -0
- package/dist/esm/json-scheme-render/index.mjs +9 -0
- package/dist/esm/json-scheme-render/index.mjs.map +1 -0
- package/dist/esm/layout/Breadcrumb.vue.d.ts +12 -0
- package/dist/esm/layout/Breadcrumb.vue.mjs +7 -0
- package/dist/esm/layout/Breadcrumb.vue.mjs.map +1 -0
- package/dist/esm/layout/Breadcrumb.vue2.mjs +69 -0
- package/dist/esm/layout/Breadcrumb.vue2.mjs.map +1 -0
- package/dist/esm/layout/FuckMain.vue.d.ts +143 -0
- package/dist/esm/layout/FuckMain.vue.mjs +7 -0
- package/dist/esm/layout/FuckMain.vue.mjs.map +1 -0
- package/dist/esm/layout/FuckMain.vue2.mjs +164 -0
- package/dist/esm/layout/FuckMain.vue2.mjs.map +1 -0
- package/dist/esm/layout/List.vue.d.ts +51 -0
- package/dist/esm/layout/List.vue.mjs +7 -0
- package/dist/esm/layout/List.vue.mjs.map +1 -0
- package/dist/esm/layout/List.vue2.mjs +176 -0
- package/dist/esm/layout/List.vue2.mjs.map +1 -0
- package/dist/esm/layout/Main.vue.d.ts +163 -0
- package/dist/esm/layout/Main.vue.mjs +7 -0
- package/dist/esm/layout/Main.vue.mjs.map +1 -0
- package/dist/esm/layout/Main.vue2.mjs +156 -0
- package/dist/esm/layout/Main.vue2.mjs.map +1 -0
- package/dist/esm/layout/NavTabs.vue.d.ts +82 -0
- package/dist/esm/layout/NavTabs.vue.mjs +7 -0
- package/dist/esm/layout/NavTabs.vue.mjs.map +1 -0
- package/dist/esm/layout/NavTabs.vue2.mjs +134 -0
- package/dist/esm/layout/NavTabs.vue2.mjs.map +1 -0
- package/dist/esm/layout/Show.vue.d.ts +113 -0
- package/dist/esm/layout/Show.vue.mjs +7 -0
- package/dist/esm/layout/Show.vue.mjs.map +1 -0
- package/dist/esm/layout/Show.vue2.mjs +118 -0
- package/dist/esm/layout/Show.vue2.mjs.map +1 -0
- package/dist/esm/layout/index.d.ts +2 -0
- package/dist/esm/layout/index.mjs +9 -0
- package/dist/esm/layout/index.mjs.map +1 -0
- package/dist/esm/menu/Menu.d.ts +2 -0
- package/dist/esm/menu/Menu.mjs +128 -0
- package/dist/esm/menu/Menu.mjs.map +1 -0
- package/{src/dist/components/modal/index.d.ts → dist/esm/modal/Modal.d.ts} +43 -43
- package/dist/esm/modal/Modal.mjs +75 -0
- package/dist/esm/modal/Modal.mjs.map +1 -0
- package/dist/esm/modal/index.d.ts +2 -0
- package/dist/esm/modal/index.mjs +9 -0
- package/dist/esm/modal/index.mjs.map +1 -0
- package/dist/esm/select/Select.vue.d.ts +81 -0
- package/dist/esm/select/Select.vue.mjs +7 -0
- package/dist/esm/select/Select.vue.mjs.map +1 -0
- package/dist/esm/select/Select.vue2.mjs +100 -0
- package/dist/esm/select/Select.vue2.mjs.map +1 -0
- package/dist/esm/select/dic.worker.d.ts +4 -0
- package/dist/esm/select/dic.worker.mjs +24 -0
- package/dist/esm/select/dic.worker.mjs.map +1 -0
- package/dist/esm/select/index.d.ts +2 -0
- package/dist/esm/select/index.mjs +9 -0
- package/dist/esm/select/index.mjs.map +1 -0
- package/dist/esm/table/Field.vue.d.ts +33 -0
- package/dist/esm/table/Field.vue.mjs +7 -0
- package/dist/esm/table/Field.vue.mjs.map +1 -0
- package/dist/esm/table/Field.vue2.mjs +46 -0
- package/dist/esm/table/Field.vue2.mjs.map +1 -0
- package/{src/dist/components/table/index.d.ts → dist/esm/table/Table.d.ts} +80 -75
- package/dist/esm/table/Table.mjs +357 -0
- package/dist/esm/table/Table.mjs.map +1 -0
- package/dist/esm/table/index.d.ts +2 -0
- package/dist/esm/table/index.mjs +9 -0
- package/dist/esm/table/index.mjs.map +1 -0
- package/dist/esm/table/interface/table.d.ts +36 -0
- package/dist/esm/table/interface/table.mjs +2 -0
- package/dist/esm/table/interface/table.mjs.map +1 -0
- package/dist/esm/theme/index.d.ts +1 -0
- package/dist/esm/theme/index.mjs +4 -0
- package/dist/esm/theme/index.mjs.map +1 -0
- package/example/index.html +13 -0
- package/example/node_modules/.vite/deps/@ant-design_icons-vue.js +29406 -0
- package/example/node_modules/.vite/deps/@ant-design_icons-vue.js.map +7 -0
- package/example/node_modules/.vite/deps/@vueuse_core.js +8251 -0
- package/example/node_modules/.vite/deps/@vueuse_core.js.map +7 -0
- package/example/node_modules/.vite/deps/_metadata.json +65 -0
- package/example/node_modules/.vite/deps/ant-design-vue.js +62756 -0
- package/example/node_modules/.vite/deps/ant-design-vue.js.map +7 -0
- package/example/node_modules/.vite/deps/chunk-5WWUZCGV.js +36 -0
- package/example/node_modules/.vite/deps/chunk-5WWUZCGV.js.map +7 -0
- package/example/node_modules/.vite/deps/chunk-EBDM3ESC.js +161 -0
- package/example/node_modules/.vite/deps/chunk-EBDM3ESC.js.map +7 -0
- package/example/node_modules/.vite/deps/chunk-EKNPBJBG.js +3600 -0
- package/example/node_modules/.vite/deps/chunk-EKNPBJBG.js.map +7 -0
- package/example/node_modules/.vite/deps/chunk-F4OABEWB.js +27 -0
- package/example/node_modules/.vite/deps/chunk-F4OABEWB.js.map +7 -0
- package/example/node_modules/.vite/deps/chunk-GK7Q6YQN.js +10796 -0
- package/example/node_modules/.vite/deps/chunk-GK7Q6YQN.js.map +7 -0
- package/example/node_modules/.vite/deps/package.json +3 -0
- package/example/node_modules/.vite/deps/pinia-plugin-persistedstate.js +125 -0
- package/example/node_modules/.vite/deps/pinia-plugin-persistedstate.js.map +7 -0
- package/example/node_modules/.vite/deps/pinia.js +1519 -0
- package/example/node_modules/.vite/deps/pinia.js.map +7 -0
- package/example/node_modules/.vite/deps/vue-router.js +2667 -0
- package/example/node_modules/.vite/deps/vue-router.js.map +7 -0
- package/example/node_modules/.vite/deps/vue.js +314 -0
- package/example/node_modules/.vite/deps/vue.js.map +7 -0
- package/example/package.json +17 -0
- package/example/src/App.vue +17 -0
- package/example/src/main.ts +15 -0
- package/example/src/router/index.ts +8 -0
- package/example/src/views/Demo.vue +10 -0
- package/{src → example}/tsconfig.json +1 -2
- package/example/vite-env.d.ts +8 -0
- package/example/vite.config.ts +10 -0
- package/package.json +21 -32
- package/src/components.ts +10 -0
- package/src/date/index.ts +9 -0
- package/src/desensitize/index.ts +9 -0
- package/src/{components/dic → dic}/DicReplace.tsx +1 -1
- package/src/dic/index.ts +8 -0
- package/src/form/index.ts +9 -0
- package/src/{components/grid → grid}/Grid.tsx +1 -1
- package/src/grid/index.ts +16 -0
- package/src/{components/index.ts → index.ts} +0 -7
- package/src/json-scheme-render/index.ts +9 -0
- package/src/{components/layout → layout}/Breadcrumb.vue +1 -6
- package/src/{components/layout → layout}/FuckMain.vue +9 -13
- package/src/{components/layout → layout}/List.vue +2 -11
- package/src/{components/layout → layout}/Main.vue +10 -15
- package/src/{components/layout → layout}/NavTabs.vue +9 -10
- package/src/{components/layout → layout}/Show.vue +13 -18
- package/src/layout/index.ts +30 -0
- package/src/{components/menu → menu}/Menu.tsx +1 -2
- package/src/modal/index.ts +9 -0
- package/src/{components/select → select}/Select.vue +17 -21
- package/src/select/index.ts +9 -0
- package/src/{components/table → table}/Field.vue +1 -6
- package/src/{components/table → table}/Table.tsx +1 -1
- package/src/table/index.ts +9 -0
- package/dist/cjs/components/components.cjs.js +0 -1
- package/dist/cjs/components/date/RangePicker.cjs.js +0 -1
- package/dist/cjs/components/date/index.cjs.js +0 -1
- package/dist/cjs/components/desensitize/Desensitize.cjs.js +0 -1
- package/dist/cjs/components/desensitize/index.cjs.js +0 -1
- package/dist/cjs/components/dic/DicReplace.cjs.js +0 -1
- package/dist/cjs/components/dic/index.cjs.js +0 -1
- package/dist/cjs/components/form/DQueryForm.cjs.js +0 -1
- package/dist/cjs/components/form/index.cjs.js +0 -1
- package/dist/cjs/components/grid/Grid.cjs.js +0 -1
- package/dist/cjs/components/grid/GridItem.cjs.js +0 -1
- package/dist/cjs/components/grid/index.cjs.js +0 -1
- package/dist/cjs/components/index.cjs.js +0 -1
- package/dist/cjs/components/json-scheme-render/JsonSchemeRender.cjs.js +0 -1
- package/dist/cjs/components/json-scheme-render/index.cjs.js +0 -1
- package/dist/cjs/components/layout/Breadcrumb.vue.cjs.js +0 -1
- package/dist/cjs/components/layout/Breadcrumb.vue.cjs2.js +0 -1
- package/dist/cjs/components/layout/FuckMain.vue.cjs.js +0 -1
- package/dist/cjs/components/layout/FuckMain.vue.cjs2.js +0 -1
- package/dist/cjs/components/layout/List.vue.cjs.js +0 -1
- package/dist/cjs/components/layout/List.vue.cjs2.js +0 -1
- package/dist/cjs/components/layout/Main.vue.cjs.js +0 -1
- package/dist/cjs/components/layout/Main.vue.cjs2.js +0 -1
- package/dist/cjs/components/layout/NavTabs.vue.cjs.js +0 -1
- package/dist/cjs/components/layout/NavTabs.vue.cjs2.js +0 -1
- package/dist/cjs/components/layout/Show.vue.cjs.js +0 -1
- package/dist/cjs/components/layout/Show.vue.cjs2.js +0 -1
- package/dist/cjs/components/layout/index.cjs.js +0 -1
- package/dist/cjs/components/menu/Menu.cjs.js +0 -1
- package/dist/cjs/components/modal/Modal.cjs.js +0 -1
- package/dist/cjs/components/modal/index.cjs.js +0 -1
- package/dist/cjs/components/select/Select.vue.cjs.js +0 -1
- package/dist/cjs/components/select/Select.vue.cjs2.js +0 -1
- package/dist/cjs/components/select/index.cjs.js +0 -1
- package/dist/cjs/components/table/Table.cjs.js +0 -1
- package/dist/cjs/components/table/index.cjs.js +0 -1
- package/dist/cjs/components/theme/index.cjs.js +0 -1
- package/dist/cjs/directive/trim.cjs.js +0 -1
- package/dist/cjs/hooks/http/index.cjs.js +0 -1
- package/dist/cjs/hooks/index.cjs.js +0 -1
- package/dist/cjs/hooks/route/index.cjs.js +0 -1
- package/dist/cjs/store/index.cjs.js +0 -1
- package/dist/cjs/store/modules/Breadcrumb.cjs.js +0 -1
- package/dist/cjs/store/modules/DataDictionary.cjs.js +0 -1
- package/dist/cjs/store/modules/KeepAlive.cjs.js +0 -1
- package/dist/cjs/store/modules/Menu.cjs.js +0 -1
- package/dist/cjs/store/modules/NavTab.cjs.js +0 -1
- package/dist/cjs/store/modules/Settings.cjs.js +0 -1
- package/dist/cjs/store/modules/User.cjs.js +0 -1
- package/dist/cjs/store/types.cjs.js +0 -1
- package/dist/cjs/utils/get.cjs.js +0 -1
- package/dist/cjs/utils/html.cjs.js +0 -1
- package/dist/cjs/utils/install.cjs.js +0 -1
- package/dist/esm/components/components.esm.js +0 -28
- package/dist/esm/components/date/RangePicker.esm.js +0 -43
- package/dist/esm/components/date/index.esm.js +0 -6
- package/dist/esm/components/desensitize/Desensitize.esm.js +0 -50
- package/dist/esm/components/desensitize/index.esm.js +0 -7
- package/dist/esm/components/dic/DicReplace.esm.js +0 -35
- package/dist/esm/components/dic/index.esm.js +0 -7
- package/dist/esm/components/form/DQueryForm.esm.js +0 -123
- package/dist/esm/components/form/index.esm.js +0 -7
- package/dist/esm/components/grid/Grid.esm.js +0 -61
- package/dist/esm/components/grid/GridItem.esm.js +0 -15
- package/dist/esm/components/grid/index.esm.js +0 -8
- package/dist/esm/components/index.esm.js +0 -48
- package/dist/esm/components/json-scheme-render/JsonSchemeRender.esm.js +0 -62
- package/dist/esm/components/json-scheme-render/index.esm.js +0 -6
- package/dist/esm/components/layout/Breadcrumb.vue.esm.js +0 -46
- package/dist/esm/components/layout/Breadcrumb.vue.esm2.js +0 -4
- package/dist/esm/components/layout/FuckMain.vue.esm.js +0 -115
- package/dist/esm/components/layout/FuckMain.vue.esm2.js +0 -4
- package/dist/esm/components/layout/List.vue.esm.js +0 -124
- package/dist/esm/components/layout/List.vue.esm2.js +0 -4
- package/dist/esm/components/layout/Main.vue.esm.js +0 -124
- package/dist/esm/components/layout/Main.vue.esm2.js +0 -4
- package/dist/esm/components/layout/NavTabs.vue.esm.js +0 -87
- package/dist/esm/components/layout/NavTabs.vue.esm2.js +0 -4
- package/dist/esm/components/layout/Show.vue.esm.js +0 -83
- package/dist/esm/components/layout/Show.vue.esm2.js +0 -4
- package/dist/esm/components/layout/index.esm.js +0 -14
- package/dist/esm/components/menu/Menu.esm.js +0 -91
- package/dist/esm/components/modal/Modal.esm.js +0 -67
- package/dist/esm/components/modal/index.esm.js +0 -7
- package/dist/esm/components/select/Select.vue.esm.js +0 -83
- package/dist/esm/components/select/Select.vue.esm2.js +0 -4
- package/dist/esm/components/select/index.esm.js +0 -7
- package/dist/esm/components/table/Table.esm.js +0 -263
- package/dist/esm/components/table/index.esm.js +0 -7
- package/dist/esm/components/theme/index.esm.js +0 -4
- package/dist/esm/directive/trim.esm.js +0 -19
- package/dist/esm/hooks/http/index.esm.js +0 -56
- package/dist/esm/hooks/index.esm.js +0 -6
- package/dist/esm/hooks/route/index.esm.js +0 -50
- package/dist/esm/store/index.esm.js +0 -16
- package/dist/esm/store/modules/Breadcrumb.esm.js +0 -19
- package/dist/esm/store/modules/DataDictionary.esm.js +0 -34
- package/dist/esm/store/modules/KeepAlive.esm.js +0 -36
- package/dist/esm/store/modules/Menu.esm.js +0 -24
- package/dist/esm/store/modules/NavTab.esm.js +0 -73
- package/dist/esm/store/modules/Settings.esm.js +0 -107
- package/dist/esm/store/modules/User.esm.js +0 -28
- package/dist/esm/store/types.esm.js +0 -10
- package/dist/esm/utils/get.esm.js +0 -11
- package/dist/esm/utils/html.esm.js +0 -15
- package/dist/esm/utils/install.esm.js +0 -7
- package/src/components/components.ts +0 -11
- package/src/components/date/index.ts +0 -6
- package/src/components/desensitize/index.ts +0 -5
- package/src/components/dic/index.ts +0 -5
- package/src/components/form/index.ts +0 -6
- package/src/components/grid/index.ts +0 -7
- package/src/components/json-scheme-render/index.ts +0 -6
- package/src/components/layout/index.ts +0 -13
- package/src/components/modal/index.ts +0 -5
- package/src/components/select/index.ts +0 -5
- package/src/components/table/TableBak.vue +0 -407
- package/src/components/table/index.ts +0 -4
- package/src/directive/trim.ts +0 -21
- package/src/dist/components/components.d.ts +0 -11
- package/src/dist/components/date/index.d.ts +0 -53
- package/src/dist/components/form/index.d.ts +0 -89
- package/src/dist/components/json-scheme-render/index.d.ts +0 -47
- package/src/dist/components/layout/Breadcrumb.vue.d.ts +0 -2
- package/src/dist/components/layout/FuckMain.vue.d.ts +0 -23
- package/src/dist/components/layout/List.vue.d.ts +0 -18
- package/src/dist/components/layout/Main.vue.d.ts +0 -29
- package/src/dist/components/layout/NavTabs.vue.d.ts +0 -2
- package/src/dist/components/layout/Show.vue.d.ts +0 -35
- package/src/dist/components/layout/index.d.ts +0 -328
- package/src/dist/components/select/Select.vue.d.ts +0 -62
- package/src/dist/components/select/index.d.ts +0 -62
- package/src/dist/directive/trim.d.ts +0 -5
- package/src/dist/hooks/http/index.d.ts +0 -28
- package/src/dist/hooks/index.d.ts +0 -2
- package/src/dist/hooks/route/index.d.ts +0 -8
- package/src/dist/store/index.d.ts +0 -7
- package/src/dist/store/modules/Breadcrumb.d.ts +0 -11
- package/src/dist/store/modules/DataDictionary.d.ts +0 -33
- package/src/dist/store/modules/KeepAlive.d.ts +0 -22
- package/src/dist/store/modules/Menu.d.ts +0 -18
- package/src/dist/store/modules/NavTab.d.ts +0 -65
- package/src/dist/store/modules/Settings.d.ts +0 -44
- package/src/dist/store/modules/User.d.ts +0 -22
- package/src/dist/store/types.d.ts +0 -7
- package/src/dist/utils/get.d.ts +0 -1
- package/src/dist/utils/index.d.ts +0 -3
- package/src/hooks/http/index.ts +0 -121
- package/src/hooks/index.ts +0 -2
- package/src/hooks/route/index.ts +0 -90
- package/src/store/index.ts +0 -7
- package/src/store/modules/Breadcrumb.ts +0 -25
- package/src/store/modules/DataDictionary.ts +0 -58
- package/src/store/modules/KeepAlive.ts +0 -47
- package/src/store/modules/Menu.ts +0 -29
- package/src/store/modules/NavTab.ts +0 -106
- package/src/store/modules/Settings.ts +0 -120
- package/src/store/modules/User.ts +0 -30
- package/src/store/types.ts +0 -15
- package/src/utils/get.ts +0 -15
- package/src/utils/index.ts +0 -3
- /package/src/{utils → _utils}/html.ts +0 -0
- /package/src/{utils → _utils}/install.ts +0 -0
- /package/src/{components/config → config}/Config.vue +0 -0
- /package/src/{components/date → date}/RangePicker.tsx +0 -0
- /package/src/{components/desensitize → desensitize}/Desensitize.tsx +0 -0
- /package/src/{components/desensitize → desensitize}/style/index.scss +0 -0
- /package/src/{components/dic → dic}/replace.worker.ts +0 -0
- /package/src/{components/form → form}/DQueryForm.tsx +0 -0
- /package/src/{components/form → form}/style/index.less +0 -0
- /package/src/{components/grid → grid}/GridItem.tsx +0 -0
- /package/src/{components/grid → grid}/index.md +0 -0
- /package/src/{components/grid → grid}/style/index.scss +0 -0
- /package/src/{components/index.scss → index.scss} +0 -0
- /package/src/{components/json-scheme-render → json-scheme-render}/JsonSchemeRender.tsx +0 -0
- /package/src/{components/layout → layout}/style/breadcrumb.scss +0 -0
- /package/src/{components/layout → layout}/style/fuckmain.scss +0 -0
- /package/src/{components/layout → layout}/style/index.scss +0 -0
- /package/src/{components/layout → layout}/style/list.scss +0 -0
- /package/src/{components/layout → layout}/style/main.scss +0 -0
- /package/src/{components/layout → layout}/style/navtab.scss +0 -0
- /package/src/{components/layout → layout}/style/show.scss +0 -0
- /package/src/{components/menu → menu}/style/index.scss +0 -0
- /package/src/{components/modal → modal}/Modal.tsx +0 -0
- /package/src/{components/modal → modal}/style/index.scss +0 -0
- /package/src/{components/select → select}/dic.worker.ts +0 -0
- /package/src/{components/table → table}/index.md +0 -0
- /package/src/{components/table → table}/interface/table.ts +0 -0
- /package/src/{components/table → table}/style/index.scss +0 -0
- /package/src/{components/theme → theme}/index.ts +0 -0
- /package/src/{components/theme → theme}/theme.scss +0 -0
- /package/src/{components/theme → theme}/variable.scss +0 -0
|
@@ -0,0 +1,82 @@
|
|
|
1
|
+
import { Ref } from "vue";
|
|
2
|
+
declare const _default: import("vue").DefineComponent<{}, {
|
|
3
|
+
route: import("vue-router").RouteLocationNormalizedLoaded;
|
|
4
|
+
router: import("vue-router").Router;
|
|
5
|
+
navStore: import("pinia").Store<string, {
|
|
6
|
+
list: import("@ditari/store").NavTabsState[];
|
|
7
|
+
activeKey: string;
|
|
8
|
+
}, {
|
|
9
|
+
getList: (state: {
|
|
10
|
+
list: {
|
|
11
|
+
path: string;
|
|
12
|
+
fullPath: string;
|
|
13
|
+
query: import("vue-router").LocationQuery;
|
|
14
|
+
params: import("vue-router").RouteParams;
|
|
15
|
+
meta: any;
|
|
16
|
+
name: string;
|
|
17
|
+
}[];
|
|
18
|
+
activeKey: string;
|
|
19
|
+
} & import("pinia").PiniaCustomStateProperties<{
|
|
20
|
+
list: import("@ditari/store").NavTabsState[];
|
|
21
|
+
activeKey: string;
|
|
22
|
+
}>) => import("@ditari/store").NavTabsState[];
|
|
23
|
+
getActiveKey: (state: {
|
|
24
|
+
list: {
|
|
25
|
+
path: string;
|
|
26
|
+
fullPath: string;
|
|
27
|
+
query: import("vue-router").LocationQuery;
|
|
28
|
+
params: import("vue-router").RouteParams;
|
|
29
|
+
meta: any;
|
|
30
|
+
name: string;
|
|
31
|
+
}[];
|
|
32
|
+
activeKey: string;
|
|
33
|
+
} & import("pinia").PiniaCustomStateProperties<{
|
|
34
|
+
list: import("@ditari/store").NavTabsState[];
|
|
35
|
+
activeKey: string;
|
|
36
|
+
}>) => string;
|
|
37
|
+
}, {
|
|
38
|
+
setActiveKey(key: string): void;
|
|
39
|
+
save(route: import("vue-router").RouteLocationNormalized): void;
|
|
40
|
+
deleteTabs(key: string): void;
|
|
41
|
+
setNavTitle(title: string, path: string): void;
|
|
42
|
+
}>;
|
|
43
|
+
keepAliveStore: import("pinia").Store<string, {
|
|
44
|
+
list: string[];
|
|
45
|
+
}, {
|
|
46
|
+
get: (state: {
|
|
47
|
+
list: string[];
|
|
48
|
+
} & import("pinia").PiniaCustomStateProperties<{
|
|
49
|
+
list: string[];
|
|
50
|
+
}>) => string[];
|
|
51
|
+
}, {
|
|
52
|
+
deleteKeepAlive(name: string): void;
|
|
53
|
+
save(route: import("vue-router").RouteLocationNormalized): void;
|
|
54
|
+
}>;
|
|
55
|
+
menuStore: import("pinia").Store<string, {
|
|
56
|
+
list: never[];
|
|
57
|
+
openMenusKeys: any;
|
|
58
|
+
selectedMenuKeys: any;
|
|
59
|
+
}, {
|
|
60
|
+
getMenu: (state: {
|
|
61
|
+
list: never[];
|
|
62
|
+
openMenusKeys: any;
|
|
63
|
+
selectedMenuKeys: any;
|
|
64
|
+
} & import("pinia").PiniaCustomStateProperties<{
|
|
65
|
+
list: never[];
|
|
66
|
+
openMenusKeys: any;
|
|
67
|
+
selectedMenuKeys: any;
|
|
68
|
+
}>) => never[];
|
|
69
|
+
}, {
|
|
70
|
+
save(data: any): void;
|
|
71
|
+
}>;
|
|
72
|
+
baseClassName: string;
|
|
73
|
+
navTabs: Ref<any[]>;
|
|
74
|
+
selectedMenuKeys: Ref<any>;
|
|
75
|
+
activeKey: Ref<string>;
|
|
76
|
+
setNavTabs: () => void;
|
|
77
|
+
onClick: (key: string) => void;
|
|
78
|
+
onClose: ($event: any, key: string) => void;
|
|
79
|
+
closeStatus: (item: any) => boolean;
|
|
80
|
+
readonly CloseOutlined: import("@ant-design/icons-vue/lib/icons/CloseOutlined").CloseOutlinedIconType;
|
|
81
|
+
}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<import("vue").ExtractPropTypes<{}>>, {}, {}>;
|
|
82
|
+
export default _default;
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
import _sfc_main from './NavTabs.vue2.mjs';
|
|
2
|
+
import _export_sfc from '../_virtual/_plugin-vue_export-helper.mjs';
|
|
3
|
+
|
|
4
|
+
var DNavTabs = /* @__PURE__ */ _export_sfc(_sfc_main, [["__file", "NavTabs.vue"]]);
|
|
5
|
+
|
|
6
|
+
export { DNavTabs as default };
|
|
7
|
+
//# sourceMappingURL=NavTabs.vue.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"NavTabs.vue.mjs","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;"}
|
|
@@ -0,0 +1,134 @@
|
|
|
1
|
+
import { createElementVNode, defineComponent, computed, ref, watchEffect, watch, resolveComponent, openBlock, createElementBlock, normalizeClass, createVNode, withCtx, Fragment, renderList, createBlock, toDisplayString, unref, createCommentVNode } from 'vue';
|
|
2
|
+
import { useRoute, useRouter } from 'vue-router';
|
|
3
|
+
import { CloseOutlined } from '@ant-design/icons-vue';
|
|
4
|
+
import { storeToRefs } from 'pinia';
|
|
5
|
+
import { useNavTabsStore, useKeepAliveStore, useMenuStore } from '@ditari/store';
|
|
6
|
+
import { prefixName } from '../theme/index.mjs';
|
|
7
|
+
|
|
8
|
+
const _hoisted_1 = /* @__PURE__ */ createElementVNode(
|
|
9
|
+
"div",
|
|
10
|
+
{ class: "tab-dividers" },
|
|
11
|
+
null,
|
|
12
|
+
-1
|
|
13
|
+
/* HOISTED */
|
|
14
|
+
);
|
|
15
|
+
const _hoisted_2 = {
|
|
16
|
+
key: 0,
|
|
17
|
+
class: "tab-close"
|
|
18
|
+
};
|
|
19
|
+
var _sfc_main = /* @__PURE__ */ defineComponent({
|
|
20
|
+
__name: "NavTabs",
|
|
21
|
+
setup(__props) {
|
|
22
|
+
const route = useRoute();
|
|
23
|
+
const router = useRouter();
|
|
24
|
+
const navStore = useNavTabsStore();
|
|
25
|
+
const keepAliveStore = useKeepAliveStore();
|
|
26
|
+
const menuStore = useMenuStore();
|
|
27
|
+
const baseClassName = `${prefixName}-nav`;
|
|
28
|
+
const navTabs = computed(() => navStore.getList);
|
|
29
|
+
const { selectedMenuKeys } = storeToRefs(menuStore);
|
|
30
|
+
const activeKey = ref("");
|
|
31
|
+
watchEffect(() => {
|
|
32
|
+
activeKey.value = selectedMenuKeys.value.length > 0 ? selectedMenuKeys.value[0] : "";
|
|
33
|
+
});
|
|
34
|
+
setNavTabs();
|
|
35
|
+
watch(
|
|
36
|
+
() => route.path,
|
|
37
|
+
() => {
|
|
38
|
+
setNavTabs();
|
|
39
|
+
}
|
|
40
|
+
);
|
|
41
|
+
function setNavTabs() {
|
|
42
|
+
navStore.save(route);
|
|
43
|
+
selectedMenuKeys.value = [route.path];
|
|
44
|
+
keepAliveStore.save(route);
|
|
45
|
+
}
|
|
46
|
+
const onClick = (key) => {
|
|
47
|
+
if (key !== route.path) {
|
|
48
|
+
const rs = navTabs.value.filter((item) => item.path === key)[0];
|
|
49
|
+
router.push({
|
|
50
|
+
path: rs.path,
|
|
51
|
+
query: rs.query,
|
|
52
|
+
params: rs.params,
|
|
53
|
+
fullPath: rs.fullPath
|
|
54
|
+
});
|
|
55
|
+
}
|
|
56
|
+
};
|
|
57
|
+
const onClose = ($event, key) => {
|
|
58
|
+
const rs = navTabs.value.find((item) => item.fullPath === key);
|
|
59
|
+
$event.stopPropagation();
|
|
60
|
+
navStore.deleteTabs(key);
|
|
61
|
+
router.push(navTabs.value[navTabs.value.length - 1].fullPath);
|
|
62
|
+
if (rs.name) {
|
|
63
|
+
keepAliveStore.deleteKeepAlive(rs.name);
|
|
64
|
+
}
|
|
65
|
+
};
|
|
66
|
+
const closeStatus = (item) => {
|
|
67
|
+
var _a;
|
|
68
|
+
if ((_a = item.meta) == null ? void 0 : _a.keepOpen) {
|
|
69
|
+
return false;
|
|
70
|
+
} else {
|
|
71
|
+
return navTabs.value.length === 1 ? false : true;
|
|
72
|
+
}
|
|
73
|
+
};
|
|
74
|
+
return (_ctx, _cache) => {
|
|
75
|
+
const _component_a_tab_pane = resolveComponent("a-tab-pane");
|
|
76
|
+
const _component_a_tabs = resolveComponent("a-tabs");
|
|
77
|
+
return openBlock(), createElementBlock("div", {
|
|
78
|
+
class: normalizeClass(baseClassName)
|
|
79
|
+
}, [
|
|
80
|
+
createVNode(_component_a_tabs, {
|
|
81
|
+
activeKey: activeKey.value,
|
|
82
|
+
"onUpdate:activeKey": _cache[0] || (_cache[0] = ($event) => activeKey.value = $event),
|
|
83
|
+
type: "card",
|
|
84
|
+
onTabClick: onClick
|
|
85
|
+
}, {
|
|
86
|
+
default: withCtx(() => [
|
|
87
|
+
(openBlock(true), createElementBlock(
|
|
88
|
+
Fragment,
|
|
89
|
+
null,
|
|
90
|
+
renderList(navTabs.value, (item) => {
|
|
91
|
+
return openBlock(), createBlock(
|
|
92
|
+
_component_a_tab_pane,
|
|
93
|
+
{
|
|
94
|
+
key: item.path
|
|
95
|
+
},
|
|
96
|
+
{
|
|
97
|
+
tab: withCtx(() => [
|
|
98
|
+
_hoisted_1,
|
|
99
|
+
createElementVNode(
|
|
100
|
+
"div",
|
|
101
|
+
{
|
|
102
|
+
class: normalizeClass(["tab-item", { active: activeKey.value === item.path }])
|
|
103
|
+
},
|
|
104
|
+
toDisplayString(item.meta.title),
|
|
105
|
+
3
|
|
106
|
+
/* TEXT, CLASS */
|
|
107
|
+
),
|
|
108
|
+
closeStatus(item) ? (openBlock(), createElementBlock("div", _hoisted_2, [
|
|
109
|
+
createVNode(unref(CloseOutlined), {
|
|
110
|
+
onClick: ($event) => onClose($event, item.fullPath)
|
|
111
|
+
}, null, 8, ["onClick"])
|
|
112
|
+
])) : createCommentVNode("v-if", true)
|
|
113
|
+
]),
|
|
114
|
+
_: 2
|
|
115
|
+
/* DYNAMIC */
|
|
116
|
+
},
|
|
117
|
+
1024
|
|
118
|
+
/* DYNAMIC_SLOTS */
|
|
119
|
+
);
|
|
120
|
+
}),
|
|
121
|
+
128
|
|
122
|
+
/* KEYED_FRAGMENT */
|
|
123
|
+
))
|
|
124
|
+
]),
|
|
125
|
+
_: 1
|
|
126
|
+
/* STABLE */
|
|
127
|
+
}, 8, ["activeKey"])
|
|
128
|
+
]);
|
|
129
|
+
};
|
|
130
|
+
}
|
|
131
|
+
});
|
|
132
|
+
|
|
133
|
+
export { _sfc_main as default };
|
|
134
|
+
//# sourceMappingURL=NavTabs.vue2.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"NavTabs.vue2.mjs","sources":["../../../src/layout/NavTabs.vue"],"sourcesContent":["<script setup lang=\"ts\">\n/**\n * 标签组件\n */\nimport { computed, Ref, watch, watchEffect, ref } from \"vue\";\nimport { useRoute, useRouter } from \"vue-router\";\nimport { CloseOutlined } from \"@ant-design/icons-vue\";\nimport { storeToRefs } from \"pinia\";\n\nimport {\n useNavTabsStore,\n useKeepAliveStore,\n useMenuStore\n} from \"@ditari/store\";\n\nimport { prefixName } from \"../theme\";\n\nconst route = useRoute();\nconst router = useRouter();\n\nconst navStore = useNavTabsStore();\nconst keepAliveStore = useKeepAliveStore();\nconst menuStore = useMenuStore();\n\n//class名称\nconst baseClassName = `${prefixName}-nav`;\n\n//标签列表\nconst navTabs: Ref<any[]> = computed(() => navStore.getList);\n// 被选中的菜单\nconst { selectedMenuKeys } = storeToRefs(menuStore);\n//当前被激活的标签 通过选中的菜单得到\nconst activeKey = ref(\"\");\nwatchEffect(() => {\n activeKey.value =\n selectedMenuKeys.value.length > 0 ? selectedMenuKeys.value[0] : \"\";\n});\n//首次进入页面或者刷新的时候执行\nsetNavTabs();\n// 监听路由变化\nwatch(\n () => route.path,\n () => {\n //TODO 需要优化 确保只有未打开过的标签 进入保存\n setNavTabs();\n }\n);\n\n//设置标签\nfunction setNavTabs() {\n // 保存标签\n navStore.save(route);\n // 设置激活的标签\n //navStore.setActiveKey(route.path);\n selectedMenuKeys.value = [route.path];\n keepAliveStore.save(route);\n}\n\n/**\n * 切换标签\n * @param nav\n */\nconst onClick = (key: string) => {\n if (key !== route.path) {\n // 匹配打开的标签路由数据\n const rs = navTabs.value.filter((item: any) => item.path === key)[0];\n // 打开路由\n router.push({\n path: rs.path,\n query: rs.query,\n params: rs.params,\n fullPath: rs.fullPath\n } as any);\n }\n};\n\n/**\n * 关闭标签\n * @param $event\n * @param targetKey\n */\nconst onClose = ($event: any, key: string) => {\n const rs = navTabs.value.find((item) => item.fullPath === key) as any;\n //阻止冒泡\n $event.stopPropagation();\n // 删除标签\n navStore.deleteTabs(key);\n // 重新push已打开的路由\n router.push(navTabs.value[navTabs.value.length - 1].fullPath);\n\n //根据name 删除缓存的组件\n if (rs.name) {\n keepAliveStore.deleteKeepAlive(rs.name);\n }\n};\n\n/**\n * 是否显示标签关闭按钮函数\n * @param item\n * 根据item和当前 navTabs 长度来判断是否要隐藏关闭标签按钮\n */\nconst closeStatus = (item: any) => {\n // 如果meta有设置keepOpen或者当前打开的标签只有一个的话不显示关闭按钮\n if (item.meta?.keepOpen) {\n return false;\n } else {\n // 如果只有一个标签,则隐藏关闭按钮\n return navTabs.value.length === 1 ? false : true;\n }\n};\n</script>\n<template>\n <div :class=\"baseClassName\">\n <a-tabs v-model:activeKey=\"activeKey\" type=\"card\" @tabClick=\"onClick\">\n <a-tab-pane v-for=\"item in navTabs\" :key=\"item.path\">\n <template #tab>\n <div class=\"tab-dividers\"></div>\n <div class=\"tab-item\" :class=\"{ active: activeKey === item.path }\">\n {{ item.meta.title }}\n </div>\n <div v-if=\"closeStatus(item)\" class=\"tab-close\">\n <CloseOutlined @click=\"onClose($event, item.fullPath)\" />\n </div>\n </template>\n </a-tab-pane>\n </a-tabs>\n </div>\n</template>\n<style lang=\"scss\"></style>\n"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;AAiBA,IAAA,MAAM,QAAQ,QAAS,EAAA,CAAA;AACvB,IAAA,MAAM,SAAS,SAAU,EAAA,CAAA;AAEzB,IAAA,MAAM,WAAW,eAAgB,EAAA,CAAA;AACjC,IAAA,MAAM,iBAAiB,iBAAkB,EAAA,CAAA;AACzC,IAAA,MAAM,YAAY,YAAa,EAAA,CAAA;AAG/B,IAAM,MAAA,aAAA,GAAgB,GAAG,UAAU,CAAA,IAAA,CAAA,CAAA;AAGnC,IAAA,MAAM,OAAsB,GAAA,QAAA,CAAS,MAAM,QAAA,CAAS,OAAO,CAAA,CAAA;AAE3D,IAAA,MAAM,EAAE,gBAAA,EAAqB,GAAA,WAAA,CAAY,SAAS,CAAA,CAAA;AAElD,IAAM,MAAA,SAAA,GAAY,IAAI,EAAE,CAAA,CAAA;AACxB,IAAA,WAAA,CAAY,MAAM;AAChB,MAAU,SAAA,CAAA,KAAA,GACR,iBAAiB,KAAM,CAAA,MAAA,GAAS,IAAI,gBAAiB,CAAA,KAAA,CAAM,CAAC,CAAI,GAAA,EAAA,CAAA;AAAA,KACnE,CAAA,CAAA;AAED,IAAW,UAAA,EAAA,CAAA;AAEX,IAAA,KAAA;AAAA,MACE,MAAM,KAAM,CAAA,IAAA;AAAA,MACZ,MAAM;AAEJ,QAAW,UAAA,EAAA,CAAA;AAAA,OACb;AAAA,KACF,CAAA;AAGA,IAAA,SAAS,UAAa,GAAA;AAEpB,MAAA,QAAA,CAAS,KAAK,KAAK,CAAA,CAAA;AAGnB,MAAiB,gBAAA,CAAA,KAAA,GAAQ,CAAC,KAAA,CAAM,IAAI,CAAA,CAAA;AACpC,MAAA,cAAA,CAAe,KAAK,KAAK,CAAA,CAAA;AAAA,KAC3B;AAMA,IAAM,MAAA,OAAA,GAAU,CAAC,GAAgB,KAAA;AAC/B,MAAI,IAAA,GAAA,KAAQ,MAAM,IAAM,EAAA;AAEtB,QAAM,MAAA,EAAA,GAAK,OAAQ,CAAA,KAAA,CAAM,MAAO,CAAA,CAAC,SAAc,IAAK,CAAA,IAAA,KAAS,GAAG,CAAA,CAAE,CAAC,CAAA,CAAA;AAEnE,QAAA,MAAA,CAAO,IAAK,CAAA;AAAA,UACV,MAAM,EAAG,CAAA,IAAA;AAAA,UACT,OAAO,EAAG,CAAA,KAAA;AAAA,UACV,QAAQ,EAAG,CAAA,MAAA;AAAA,UACX,UAAU,EAAG,CAAA,QAAA;AAAA,SACP,CAAA,CAAA;AAAA,OACV;AAAA,KACF,CAAA;AAOA,IAAM,MAAA,OAAA,GAAU,CAAC,MAAA,EAAa,GAAgB,KAAA;AAC5C,MAAM,MAAA,EAAA,GAAK,QAAQ,KAAM,CAAA,IAAA,CAAK,CAAC,IAAS,KAAA,IAAA,CAAK,aAAa,GAAG,CAAA,CAAA;AAE7D,MAAA,MAAA,CAAO,eAAgB,EAAA,CAAA;AAEvB,MAAA,QAAA,CAAS,WAAW,GAAG,CAAA,CAAA;AAEvB,MAAO,MAAA,CAAA,IAAA,CAAK,QAAQ,KAAM,CAAA,OAAA,CAAQ,MAAM,MAAS,GAAA,CAAC,EAAE,QAAQ,CAAA,CAAA;AAG5D,MAAA,IAAI,GAAG,IAAM,EAAA;AACX,QAAe,cAAA,CAAA,eAAA,CAAgB,GAAG,IAAI,CAAA,CAAA;AAAA,OACxC;AAAA,KACF,CAAA;AAOA,IAAM,MAAA,WAAA,GAAc,CAAC,IAAc,KAAA;;AAEjC,MAAI,IAAA,CAAA,EAAA,GAAA,IAAA,CAAK,IAAL,KAAA,IAAA,GAAA,KAAA,CAAA,GAAA,EAAA,CAAW,QAAU,EAAA;AACvB,QAAO,OAAA,KAAA,CAAA;AAAA,OACF,MAAA;AAEL,QAAA,OAAO,OAAQ,CAAA,KAAA,CAAM,MAAW,KAAA,CAAA,GAAI,KAAQ,GAAA,IAAA,CAAA;AAAA,OAC9C;AAAA,KACF,CAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
|
|
@@ -0,0 +1,113 @@
|
|
|
1
|
+
declare const _default: import("vue").DefineComponent<{
|
|
2
|
+
close: {
|
|
3
|
+
type: BooleanConstructor;
|
|
4
|
+
required: false;
|
|
5
|
+
default: boolean;
|
|
6
|
+
};
|
|
7
|
+
loading: {
|
|
8
|
+
type: BooleanConstructor;
|
|
9
|
+
required: false;
|
|
10
|
+
default: boolean;
|
|
11
|
+
};
|
|
12
|
+
}, {
|
|
13
|
+
props: any;
|
|
14
|
+
router: import("vue-router").Router;
|
|
15
|
+
route: import("vue-router").RouteLocationNormalizedLoaded;
|
|
16
|
+
slots: Readonly<{
|
|
17
|
+
[name: string]: import("vue").Slot<any> | undefined;
|
|
18
|
+
}>;
|
|
19
|
+
navTabStore: import("pinia").Store<string, {
|
|
20
|
+
list: import("@ditari/store").NavTabsState[];
|
|
21
|
+
activeKey: string;
|
|
22
|
+
}, {
|
|
23
|
+
getList: (state: {
|
|
24
|
+
list: {
|
|
25
|
+
path: string;
|
|
26
|
+
fullPath: string;
|
|
27
|
+
query: import("vue-router").LocationQuery;
|
|
28
|
+
params: import("vue-router").RouteParams;
|
|
29
|
+
meta: any;
|
|
30
|
+
name: string;
|
|
31
|
+
}[];
|
|
32
|
+
activeKey: string;
|
|
33
|
+
} & import("pinia").PiniaCustomStateProperties<{
|
|
34
|
+
list: import("@ditari/store").NavTabsState[];
|
|
35
|
+
activeKey: string;
|
|
36
|
+
}>) => import("@ditari/store").NavTabsState[];
|
|
37
|
+
getActiveKey: (state: {
|
|
38
|
+
list: {
|
|
39
|
+
path: string;
|
|
40
|
+
fullPath: string;
|
|
41
|
+
query: import("vue-router").LocationQuery;
|
|
42
|
+
params: import("vue-router").RouteParams;
|
|
43
|
+
meta: any;
|
|
44
|
+
name: string;
|
|
45
|
+
}[];
|
|
46
|
+
activeKey: string;
|
|
47
|
+
} & import("pinia").PiniaCustomStateProperties<{
|
|
48
|
+
list: import("@ditari/store").NavTabsState[];
|
|
49
|
+
activeKey: string;
|
|
50
|
+
}>) => string;
|
|
51
|
+
}, {
|
|
52
|
+
setActiveKey(key: string): void;
|
|
53
|
+
save(route: import("vue-router").RouteLocationNormalized): void;
|
|
54
|
+
deleteTabs(key: string): void;
|
|
55
|
+
setNavTitle(title: string, path: string): void;
|
|
56
|
+
}>;
|
|
57
|
+
settingsStore: import("pinia").Store<string, import("@ditari/store").SettingState, {
|
|
58
|
+
getRefresh: (state: {
|
|
59
|
+
refresh: boolean;
|
|
60
|
+
collapsed: boolean;
|
|
61
|
+
mediaRuleMap: any;
|
|
62
|
+
gridConfig: any;
|
|
63
|
+
gridValue: any;
|
|
64
|
+
} & import("pinia").PiniaCustomStateProperties<import("@ditari/store").SettingState>) => boolean;
|
|
65
|
+
getCollapsed: (state: {
|
|
66
|
+
refresh: boolean;
|
|
67
|
+
collapsed: boolean;
|
|
68
|
+
mediaRuleMap: any;
|
|
69
|
+
gridConfig: any;
|
|
70
|
+
gridValue: any;
|
|
71
|
+
} & import("pinia").PiniaCustomStateProperties<import("@ditari/store").SettingState>) => boolean;
|
|
72
|
+
getGrid: (state: {
|
|
73
|
+
refresh: boolean;
|
|
74
|
+
collapsed: boolean;
|
|
75
|
+
mediaRuleMap: any;
|
|
76
|
+
gridConfig: any;
|
|
77
|
+
gridValue: any;
|
|
78
|
+
} & import("pinia").PiniaCustomStateProperties<import("@ditari/store").SettingState>) => any;
|
|
79
|
+
}, {
|
|
80
|
+
switchRefreshStatus(): void;
|
|
81
|
+
switchCollapsed(): void;
|
|
82
|
+
gridMatching(): void;
|
|
83
|
+
}>;
|
|
84
|
+
showConfig: any;
|
|
85
|
+
btnRender: () => import("vue").VNode<import("vue").RendererNode, import("vue").RendererElement, {
|
|
86
|
+
[key: string]: any;
|
|
87
|
+
}>;
|
|
88
|
+
refresh: import("vue").Ref<boolean>;
|
|
89
|
+
showLoading: import("vue").ComputedRef<any>;
|
|
90
|
+
contentStyle: {
|
|
91
|
+
padding: string;
|
|
92
|
+
};
|
|
93
|
+
onBack: () => void;
|
|
94
|
+
onRefresh: () => void;
|
|
95
|
+
y: import("vue").Ref<number>;
|
|
96
|
+
isLocked: import("vue").WritableComputedRef<boolean>;
|
|
97
|
+
delayTime: number;
|
|
98
|
+
}, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<import("vue").ExtractPropTypes<{
|
|
99
|
+
close: {
|
|
100
|
+
type: BooleanConstructor;
|
|
101
|
+
required: false;
|
|
102
|
+
default: boolean;
|
|
103
|
+
};
|
|
104
|
+
loading: {
|
|
105
|
+
type: BooleanConstructor;
|
|
106
|
+
required: false;
|
|
107
|
+
default: boolean;
|
|
108
|
+
};
|
|
109
|
+
}>>, {
|
|
110
|
+
loading: boolean;
|
|
111
|
+
close: boolean;
|
|
112
|
+
}, {}>;
|
|
113
|
+
export default _default;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Show.vue.mjs","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;"}
|
|
@@ -0,0 +1,118 @@
|
|
|
1
|
+
import { defineComponent, useSlots, inject, h, resolveComponent, computed, watch, openBlock, createElementBlock, createVNode, withCtx, normalizeClass, unref, createTextVNode, toDisplayString, renderSlot, createElementVNode, createCommentVNode } from 'vue';
|
|
2
|
+
import { useRouter, useRoute } from 'vue-router';
|
|
3
|
+
import { useWindowScroll, useScrollLock } from '@vueuse/core';
|
|
4
|
+
import { LeftOutlined } from '@ant-design/icons-vue';
|
|
5
|
+
import { useNavTabsStore, useSettingsStore } from '@ditari/store';
|
|
6
|
+
import { storeToRefs } from 'pinia';
|
|
7
|
+
|
|
8
|
+
const _hoisted_1 = { class: "ditari-show-layout" };
|
|
9
|
+
const _hoisted_2 = {
|
|
10
|
+
key: 0,
|
|
11
|
+
class: "ditari-show-footer"
|
|
12
|
+
};
|
|
13
|
+
const delayTime = 200;
|
|
14
|
+
var _sfc_main = /* @__PURE__ */ defineComponent({
|
|
15
|
+
__name: "Show",
|
|
16
|
+
props: {
|
|
17
|
+
"close": { type: Boolean, required: false, default: false },
|
|
18
|
+
"loading": { type: Boolean, required: false, default: false }
|
|
19
|
+
},
|
|
20
|
+
setup(__props, { expose: __expose }) {
|
|
21
|
+
const props = __props;
|
|
22
|
+
const router = useRouter();
|
|
23
|
+
const route = useRoute();
|
|
24
|
+
const slots = useSlots();
|
|
25
|
+
const navTabStore = useNavTabsStore();
|
|
26
|
+
const settingsStore = useSettingsStore();
|
|
27
|
+
const showConfig = inject("showConfig");
|
|
28
|
+
const btnRender = () => {
|
|
29
|
+
if (!showConfig) {
|
|
30
|
+
return h(LeftOutlined);
|
|
31
|
+
} else {
|
|
32
|
+
return h(resolveComponent(showConfig.backBtn));
|
|
33
|
+
}
|
|
34
|
+
};
|
|
35
|
+
const { refresh } = storeToRefs(settingsStore);
|
|
36
|
+
const showLoading = computed(() => props.loading);
|
|
37
|
+
const contentStyle = {
|
|
38
|
+
padding: `10px 10px ${slots.footer ? "70px" : "10px"} 10px`
|
|
39
|
+
};
|
|
40
|
+
const onBack = () => {
|
|
41
|
+
if (props.close) {
|
|
42
|
+
navTabStore.deleteTabs(route.path);
|
|
43
|
+
router.go(-1);
|
|
44
|
+
} else {
|
|
45
|
+
router.go(-1);
|
|
46
|
+
}
|
|
47
|
+
};
|
|
48
|
+
const onRefresh = () => {
|
|
49
|
+
refresh.value = true;
|
|
50
|
+
navTabStore.deleteTabs(route.path);
|
|
51
|
+
router.go(-1);
|
|
52
|
+
};
|
|
53
|
+
const { y } = useWindowScroll();
|
|
54
|
+
const isLocked = useScrollLock(document.body);
|
|
55
|
+
watch(
|
|
56
|
+
() => props.loading,
|
|
57
|
+
(val) => {
|
|
58
|
+
isLocked.value = val;
|
|
59
|
+
}
|
|
60
|
+
);
|
|
61
|
+
__expose({
|
|
62
|
+
closePage: onRefresh
|
|
63
|
+
});
|
|
64
|
+
return (_ctx, _cache) => {
|
|
65
|
+
const _component_a_page_header = resolveComponent("a-page-header");
|
|
66
|
+
const _component_a_spin = resolveComponent("a-spin");
|
|
67
|
+
return openBlock(), createElementBlock("div", _hoisted_1, [
|
|
68
|
+
createVNode(_component_a_spin, {
|
|
69
|
+
tip: "\u6B63\u5728\u5904\u7406...",
|
|
70
|
+
spinning: showLoading.value,
|
|
71
|
+
delay: delayTime,
|
|
72
|
+
size: "large"
|
|
73
|
+
}, {
|
|
74
|
+
default: withCtx(() => [
|
|
75
|
+
createVNode(_component_a_page_header, {
|
|
76
|
+
class: normalizeClass(["ditari-page-header", { active: unref(y) > 0 }]),
|
|
77
|
+
ghost: false,
|
|
78
|
+
onBack
|
|
79
|
+
}, {
|
|
80
|
+
backIcon: withCtx(() => [
|
|
81
|
+
createVNode(btnRender)
|
|
82
|
+
]),
|
|
83
|
+
title: withCtx(() => [
|
|
84
|
+
createTextVNode(
|
|
85
|
+
toDisplayString(_ctx.$route.meta.title),
|
|
86
|
+
1
|
|
87
|
+
/* TEXT */
|
|
88
|
+
)
|
|
89
|
+
]),
|
|
90
|
+
subTitle: withCtx(() => [
|
|
91
|
+
renderSlot(_ctx.$slots, "subTitle")
|
|
92
|
+
]),
|
|
93
|
+
extra: withCtx(() => [
|
|
94
|
+
renderSlot(_ctx.$slots, "extra")
|
|
95
|
+
]),
|
|
96
|
+
_: 3
|
|
97
|
+
/* FORWARDED */
|
|
98
|
+
}, 8, ["class"]),
|
|
99
|
+
createElementVNode("div", {
|
|
100
|
+
class: "ditari-show-content",
|
|
101
|
+
style: contentStyle
|
|
102
|
+
}, [
|
|
103
|
+
renderSlot(_ctx.$slots, "default")
|
|
104
|
+
]),
|
|
105
|
+
_ctx.$slots.footer ? (openBlock(), createElementBlock("div", _hoisted_2, [
|
|
106
|
+
renderSlot(_ctx.$slots, "footer")
|
|
107
|
+
])) : createCommentVNode("v-if", true)
|
|
108
|
+
]),
|
|
109
|
+
_: 3
|
|
110
|
+
/* FORWARDED */
|
|
111
|
+
}, 8, ["spinning"])
|
|
112
|
+
]);
|
|
113
|
+
};
|
|
114
|
+
}
|
|
115
|
+
});
|
|
116
|
+
|
|
117
|
+
export { _sfc_main as default };
|
|
118
|
+
//# sourceMappingURL=Show.vue2.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Show.vue2.mjs","sources":["../../../src/layout/Show.vue"],"sourcesContent":["<script lang=\"ts\">\nconst delayTime = 200\n</script>\n<script setup lang=\"ts\">\n/**\n * 详情/新增/编辑组件\n */\nimport { computed, inject, useSlots, watch, h, resolveComponent } from \"vue\";\nimport { useRoute, useRouter } from \"vue-router\";\nimport { useScrollLock, useWindowScroll } from \"@vueuse/core\";\nimport { LeftOutlined } from \"@ant-design/icons-vue\";\nimport { useNavTabsStore, useSettingsStore } from \"@ditari/store\";\n\nimport { storeToRefs } from \"pinia\";\n\nconst props = defineProps({\n \"close\": { type: Boolean, required: false, default: false },\n \"loading\": { type: Boolean, required: false, default: false }\n});\n\nconst router = useRouter();\nconst route = useRoute();\nconst slots = useSlots();\n\nconst navTabStore = useNavTabsStore();\nconst settingsStore = useSettingsStore();\n\nconst showConfig = inject(\"showConfig\") as any;\n\nconst btnRender = () => {\n if (!showConfig) {\n return h(LeftOutlined);\n } else {\n return h(resolveComponent(showConfig.backBtn));\n }\n};\n\nconst { refresh } = storeToRefs(settingsStore);\n\nconst showLoading = computed(() => props.loading);\n\nconst contentStyle = {\n padding: `10px 10px ${slots.footer ? \"70px\" : \"10px\"} 10px`\n};\n\n/**\n * 点击返回\n */\nconst onBack = () => {\n if (props.close) {\n // 返回关闭标签\n navTabStore.deleteTabs(route.path);\n router.go(-1);\n } else {\n // 不关闭标签\n router.go(-1);\n }\n};\n\n/**\n * 对外暴露方法 调用后关闭标签 并且出发List组件刷新动作\n */\nconst onRefresh = () => {\n refresh.value = true;\n navTabStore.deleteTabs(route.path);\n router.go(-1);\n};\n\n/**\n * 监听屏幕滚动,滚动大于0的时候给a-page-header组件添加阴影\n */\nconst { y } = useWindowScroll();\n// 锁定屏幕\nconst isLocked = useScrollLock(document.body);\n\nwatch(\n () => props.loading,\n (val) => {\n isLocked.value = val;\n }\n);\n\n\ndefineExpose({\n closePage: onRefresh\n});\n</script>\n<template>\n <div class=\"ditari-show-layout\">\n <a-spin\n tip=\"正在处理...\"\n :spinning=\"showLoading\"\n :delay=\"delayTime\"\n size=\"large\"\n >\n <a-page-header\n class=\"ditari-page-header\"\n :class=\"{ active: y > 0 }\"\n :ghost=\"false\"\n @back=\"onBack\"\n >\n <template #backIcon>\n <btn-render />\n </template>\n <template #title>{{ $route.meta.title }} </template>\n <template #subTitle>\n <slot name=\"subTitle\"></slot>\n </template>\n <template #extra>\n <slot name=\"extra\"></slot>\n </template>\n </a-page-header>\n <div class=\"ditari-show-content\" :style=\"contentStyle\">\n <slot></slot>\n </div>\n <div v-if=\"$slots.footer\" class=\"ditari-show-footer\">\n <slot name=\"footer\"></slot>\n </div>\n </a-spin>\n </div>\n</template>\n<style lang=\"scss\"></style>\n"],"names":[],"mappings":";;;;;;;;;;;;AACA,MAAM,SAAY,GAAA,GAAA,CAAA;;;;;;;;;AAmBlB,IAAA,MAAM,SAAS,SAAU,EAAA,CAAA;AACzB,IAAA,MAAM,QAAQ,QAAS,EAAA,CAAA;AACvB,IAAA,MAAM,QAAQ,QAAS,EAAA,CAAA;AAEvB,IAAA,MAAM,cAAc,eAAgB,EAAA,CAAA;AACpC,IAAA,MAAM,gBAAgB,gBAAiB,EAAA,CAAA;AAEvC,IAAM,MAAA,UAAA,GAAa,OAAO,YAAY,CAAA,CAAA;AAEtC,IAAA,MAAM,YAAY,MAAM;AACtB,MAAA,IAAI,CAAC,UAAY,EAAA;AACf,QAAA,OAAO,EAAE,YAAY,CAAA,CAAA;AAAA,OAChB,MAAA;AACL,QAAA,OAAO,CAAE,CAAA,gBAAA,CAAiB,UAAW,CAAA,OAAO,CAAC,CAAA,CAAA;AAAA,OAC/C;AAAA,KACF,CAAA;AAEA,IAAA,MAAM,EAAE,OAAA,EAAY,GAAA,WAAA,CAAY,aAAa,CAAA,CAAA;AAE7C,IAAA,MAAM,WAAc,GAAA,QAAA,CAAS,MAAM,KAAA,CAAM,OAAO,CAAA,CAAA;AAEhD,IAAA,MAAM,YAAe,GAAA;AAAA,MACnB,OAAS,EAAA,CAAA,UAAA,EAAa,KAAM,CAAA,MAAA,GAAS,SAAS,MAAM,CAAA,KAAA,CAAA;AAAA,KACtD,CAAA;AAKA,IAAA,MAAM,SAAS,MAAM;AACnB,MAAA,IAAI,MAAM,KAAO,EAAA;AAEf,QAAY,WAAA,CAAA,UAAA,CAAW,MAAM,IAAI,CAAA,CAAA;AACjC,QAAA,MAAA,CAAO,GAAG,CAAE,CAAA,CAAA,CAAA;AAAA,OACP,MAAA;AAEL,QAAA,MAAA,CAAO,GAAG,CAAE,CAAA,CAAA,CAAA;AAAA,OACd;AAAA,KACF,CAAA;AAKA,IAAA,MAAM,YAAY,MAAM;AACtB,MAAA,OAAA,CAAQ,KAAQ,GAAA,IAAA,CAAA;AAChB,MAAY,WAAA,CAAA,UAAA,CAAW,MAAM,IAAI,CAAA,CAAA;AACjC,MAAA,MAAA,CAAO,GAAG,CAAE,CAAA,CAAA,CAAA;AAAA,KACd,CAAA;AAKA,IAAM,MAAA,EAAE,CAAE,EAAA,GAAI,eAAgB,EAAA,CAAA;AAE9B,IAAM,MAAA,QAAA,GAAW,aAAc,CAAA,QAAA,CAAS,IAAI,CAAA,CAAA;AAE5C,IAAA,KAAA;AAAA,MACE,MAAM,KAAM,CAAA,OAAA;AAAA,MACZ,CAAC,GAAQ,KAAA;AACP,QAAA,QAAA,CAAS,KAAQ,GAAA,GAAA,CAAA;AAAA,OACnB;AAAA,KACF,CAAA;AAGA,IAAa,QAAA,CAAA;AAAA,MACX,SAAW,EAAA,SAAA;AAAA,KACZ,CAAA,CAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.mjs","sources":["../../../src/layout/index.ts"],"sourcesContent":["import type { App } from \"vue\";\nimport List from \"./List.vue\";\n// import Main from \"./Main.vue\";\n// import FuckMain from \"./FuckMain.vue\";\n// import Show from \"./Show.vue\";\n\n// export const DList = withInstall(List);\n// export const DMain = withInstall(Main);\n// export const DNavTabs = withInstall(NavTabs);\n// export const DShow = withInstall(Show);\n// export const DFuckMain = withInstall(FuckMain);\n\nList.install = function (app: App) {\n app.component(\"DListLayout\", List);\n return app;\n};\n// Main.install = function (app: App) {\n// app.component(\"DMainLayout\");\n// return app;\n// };\n// FuckMain.install = function (app: App) {\n// app.component(\"DFuckMain\", FuckMain);\n// return app;\n// };\n// Show.install = function (app: App) {\n// app.component(\"DShowLayout\", Show);\n// return app;\n// };\n//\nexport { List };\n"],"names":[],"mappings":";;AAYA,IAAK,CAAA,OAAA,GAAU,SAAU,GAAU,EAAA;AACjC,EAAI,GAAA,CAAA,SAAA,CAAU,eAAe,IAAI,CAAA,CAAA;AACjC,EAAO,OAAA,GAAA,CAAA;AACT,CAAA;;;;"}
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
declare const _default: import("vue").DefineComponent<{}, () => JSX.Element, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<import("vue").ExtractPropTypes<{}>>, {}, {}>;
|
|
2
|
+
export default _default;
|
|
@@ -0,0 +1,128 @@
|
|
|
1
|
+
import { isVNode, defineComponent, inject, watchEffect, createVNode, Fragment, resolveComponent, withDirectives, vShow, h } from 'vue';
|
|
2
|
+
import { useRouter, useRoute } from 'vue-router';
|
|
3
|
+
import { storeToRefs } from 'pinia';
|
|
4
|
+
import { useMenuStore, useSettingsStore } from '@ditari/store';
|
|
5
|
+
|
|
6
|
+
function _isSlot(s) {
|
|
7
|
+
return typeof s === "function" || Object.prototype.toString.call(s) === "[object Object]" && !isVNode(s);
|
|
8
|
+
}
|
|
9
|
+
var Menu = /* @__PURE__ */ defineComponent({
|
|
10
|
+
name: "DMenu",
|
|
11
|
+
setup() {
|
|
12
|
+
const router = useRouter();
|
|
13
|
+
const route = useRoute();
|
|
14
|
+
const {
|
|
15
|
+
componentName,
|
|
16
|
+
prop: menuProp
|
|
17
|
+
} = inject("menuIcon");
|
|
18
|
+
const menuStore = useMenuStore();
|
|
19
|
+
const {
|
|
20
|
+
list,
|
|
21
|
+
openMenusKeys,
|
|
22
|
+
selectedMenuKeys
|
|
23
|
+
} = storeToRefs(menuStore);
|
|
24
|
+
const settingsStore = useSettingsStore();
|
|
25
|
+
const {
|
|
26
|
+
getCollapsed
|
|
27
|
+
} = storeToRefs(settingsStore);
|
|
28
|
+
watchEffect(() => {
|
|
29
|
+
if (getCollapsed.value) {
|
|
30
|
+
return;
|
|
31
|
+
}
|
|
32
|
+
const activatedUrl = selectedMenuKeys.value.length > 0 ? selectedMenuKeys.value[0] : "";
|
|
33
|
+
const parentUrls = getParentUrls(list.value, activatedUrl);
|
|
34
|
+
openMenusKeys.value = parentUrls || [];
|
|
35
|
+
});
|
|
36
|
+
function getParentUrls(menus, url) {
|
|
37
|
+
for (let i = 0; i < menus.length; i++) {
|
|
38
|
+
if (menus[i].url === url || url.startsWith(menus[i].url)) {
|
|
39
|
+
return [menus[i].url];
|
|
40
|
+
} else if (menus[i].children && menus[i].children.length > 0) {
|
|
41
|
+
const parentUrls = getParentUrls(menus[i].children, url);
|
|
42
|
+
if (parentUrls) {
|
|
43
|
+
return [menus[i].url, ...parentUrls];
|
|
44
|
+
}
|
|
45
|
+
}
|
|
46
|
+
}
|
|
47
|
+
return null;
|
|
48
|
+
}
|
|
49
|
+
const onClick = ({
|
|
50
|
+
key,
|
|
51
|
+
keyPath
|
|
52
|
+
}) => {
|
|
53
|
+
openMenusKeys.value = keyPath;
|
|
54
|
+
selectedMenuKeys.value = [key];
|
|
55
|
+
route.path !== key ? router.push(key).then((r) => r ? console.warn(r) : null) : null;
|
|
56
|
+
};
|
|
57
|
+
const renderMenu = (menu) => {
|
|
58
|
+
return createVNode(Fragment, null, [createVNode(resolveComponent("a-menu-item"), {
|
|
59
|
+
"key": menu.url
|
|
60
|
+
}, {
|
|
61
|
+
icon: () => renderIcon(menu),
|
|
62
|
+
default: () => menu.title
|
|
63
|
+
})]);
|
|
64
|
+
};
|
|
65
|
+
const iconClass = ["anticon", "anticon-menu", "ant-menu-item-icon"];
|
|
66
|
+
const renderIcon = (menu) => {
|
|
67
|
+
return createVNode(Fragment, null, [!menu.icon ? withDirectives(createVNode("div", {
|
|
68
|
+
"class": iconClass
|
|
69
|
+
}, [menu.title.substring(0, 1)]), [[vShow, getCollapsed.value]]) : renderIconSwitch(menu.icon)]);
|
|
70
|
+
};
|
|
71
|
+
const renderIconSwitch = (icon) => {
|
|
72
|
+
if (componentName === "nativeHtml") {
|
|
73
|
+
return createVNode("span", {
|
|
74
|
+
"innerHTML": icon
|
|
75
|
+
}, null);
|
|
76
|
+
} else {
|
|
77
|
+
return h(resolveComponent(componentName), {
|
|
78
|
+
[`${menuProp}`]: icon
|
|
79
|
+
});
|
|
80
|
+
}
|
|
81
|
+
};
|
|
82
|
+
const renderSub = (menu) => {
|
|
83
|
+
return createVNode(Fragment, null, [createVNode(resolveComponent("a-sub-menu"), {
|
|
84
|
+
"key": menu.url
|
|
85
|
+
}, {
|
|
86
|
+
title: () => menu.title,
|
|
87
|
+
icon: () => renderIcon(menu),
|
|
88
|
+
default: () => {
|
|
89
|
+
return menu.children.map(
|
|
90
|
+
(item) => !item.children || item.children.length === 0 ? renderSubMenu(item) : renderSub(item)
|
|
91
|
+
// 递归调用
|
|
92
|
+
);
|
|
93
|
+
}
|
|
94
|
+
})]);
|
|
95
|
+
};
|
|
96
|
+
const renderSubMenu = (menu) => {
|
|
97
|
+
return createVNode(Fragment, null, [createVNode(resolveComponent("a-menu-item"), {
|
|
98
|
+
"key": menu.url
|
|
99
|
+
}, {
|
|
100
|
+
default: () => menu.title
|
|
101
|
+
})]);
|
|
102
|
+
};
|
|
103
|
+
return () => {
|
|
104
|
+
let _slot;
|
|
105
|
+
return createVNode(Fragment, null, [createVNode(resolveComponent("a-menu"), {
|
|
106
|
+
"mode": "inline",
|
|
107
|
+
"theme": "dark",
|
|
108
|
+
"openKeys": openMenusKeys.value,
|
|
109
|
+
"onUpdate:openKeys": ($event) => openMenusKeys.value = $event,
|
|
110
|
+
"selectedKeys": selectedMenuKeys.value,
|
|
111
|
+
"onUpdate:selectedKeys": ($event) => selectedMenuKeys.value = $event,
|
|
112
|
+
"onClick": onClick
|
|
113
|
+
}, _isSlot(_slot = list.value.map((menu) => {
|
|
114
|
+
var _a;
|
|
115
|
+
if (!menu.children || ((_a = menu.children) == null ? void 0 : _a.length) === 0) {
|
|
116
|
+
return renderMenu(menu);
|
|
117
|
+
} else {
|
|
118
|
+
return renderSub(menu);
|
|
119
|
+
}
|
|
120
|
+
})) ? _slot : {
|
|
121
|
+
default: () => [_slot]
|
|
122
|
+
})]);
|
|
123
|
+
};
|
|
124
|
+
}
|
|
125
|
+
});
|
|
126
|
+
|
|
127
|
+
export { Menu as default };
|
|
128
|
+
//# sourceMappingURL=Menu.mjs.map
|