@ditari/bsui 1.1.67 → 1.1.68
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 +6 -0
- package/dist/cjs/layout/FuckMain.vue2.cjs +1 -0
- package/dist/cjs/layout/FuckMain.vue2.cjs.map +1 -1
- package/dist/cjs/layout/Main.vue.d.ts +1 -0
- package/dist/cjs/layout/Main.vue2.cjs +23 -1
- package/dist/cjs/layout/Main.vue2.cjs.map +1 -1
- package/dist/cjs/layout/Show.vue2.cjs +5 -2
- package/dist/cjs/layout/Show.vue2.cjs.map +1 -1
- package/dist/esm/layout/FuckMain.vue2.mjs +1 -0
- package/dist/esm/layout/FuckMain.vue2.mjs.map +1 -1
- package/dist/esm/layout/Main.vue.d.ts +1 -0
- package/dist/esm/layout/Main.vue2.mjs +23 -1
- package/dist/esm/layout/Main.vue2.mjs.map +1 -1
- package/dist/esm/layout/Show.vue2.mjs +5 -2
- package/dist/esm/layout/Show.vue2.mjs.map +1 -1
- package/package.json +1 -1
package/CHANGELOG.md
CHANGED
|
@@ -42,6 +42,7 @@ var _sfc_main = /* @__PURE__ */ vue.defineComponent({
|
|
|
42
42
|
const showConfig = __spreadProps(__spreadValues({}, props.showConfig), {
|
|
43
43
|
sideWidth: props.sideWidth
|
|
44
44
|
});
|
|
45
|
+
console.log(showConfig);
|
|
45
46
|
vue.provide("showConfig", showConfig);
|
|
46
47
|
const store$1 = store.useKeepAliveStore();
|
|
47
48
|
const keepAliveNames = vue.computed(() => store$1.get);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"FuckMain.vue2.cjs","sources":["../../../src/layout/FuckMain.vue"],"sourcesContent":["<script setup lang=\"ts\">\n/**\n * FUCK MAIN 入口文件\n */\nimport { computed, provide } from \"vue\";\nimport { MenuFoldOutlined, MenuUnfoldOutlined } from \"@ant-design/icons-vue\";\nimport { useKeepAliveStore, useSettingsStore } from \"@ditari/store\";\n\n//标签页组件\nimport DNavTabs from \"./NavTabs.vue\";\n// 菜单组件\nimport Menu from \"../menu/Menu\";\n\nconst props = defineProps({\n \"showConfig\": { type: null, required: false, default: { backBtn: \"LeftOutlined\" } as any },\n \"breadcrumbStatus\": { type: Boolean, required: false, },\n \"sideWidth\": { type: Number, required: false, default: 200 }\n});\n\n// 注入show组件的配置文件\n// eslint-disable-next-line vue/no-setup-props-destructure\nconst showConfig = {\n ...props.showConfig,\n sideWidth: props.sideWidth\n};\nprovide(\"showConfig\", showConfig);\n\n// 缓存store\nconst store = useKeepAliveStore();\n// 缓存的names\nconst keepAliveNames = computed(() => store.get);\n// 设置store\nconst settingsStore = useSettingsStore();\nconst { switchCollapsed } = settingsStore;\nconst collapsedStatus = computed(() => settingsStore.getCollapsed);\n</script>\n<template>\n <a-layout class=\"ditari-layout\">\n <a-layout-sider\n v-model:collapsed=\"collapsedStatus\"\n :width=\"sideWidth\"\n :trigger=\"null\"\n collapsible\n class=\"ditari-layout-sider\"\n >\n <div class=\"ditari-logo\">\n <slot name=\"logo\"></slot>\n </div>\n <div class=\"ditari-menu\">\n <Menu />\n </div>\n </a-layout-sider>\n <a-layout>\n <div\n class=\"ditari-fuck-top-layout\"\n :style=\"{ left: collapsedStatus ? '80px' : sideWidth + 'px' }\"\n >\n <div class=\"ditari-side-collapsed\" @click=\"switchCollapsed\">\n <menu-unfold-outlined\n v-if=\"collapsedStatus\"\n class=\"trigger\"\n style=\"font-size: 16px; font-weight: bold; cursor: pointer\"\n />\n <menu-fold-outlined\n v-else\n style=\"font-size: 16px; font-weight: bold; cursor: pointer\"\n />\n </div>\n <d-nav-tabs />\n <div class=\"ditari-user-menu\">\n <slot name=\"operation\"></slot>\n </div>\n </div>\n <a-layout-content\n style=\"margin-top: 42px\"\n class=\"ditari-layout-content\"\n :style=\"{ marginLeft: collapsedStatus ? '80px' : sideWidth + 'px' }\"\n >\n <router-view v-slot=\"{ Component }\">\n <transition name=\"main\" mode=\"out-in\" appear>\n <keep-alive ref=\"keepAliveRef\" :include=\"keepAliveNames\">\n <component :is=\"Component\" :key=\"$route.path\" />\n </keep-alive>\n </transition>\n </router-view>\n <slot name=\"micro\"></slot>\n </a-layout-content>\n </a-layout>\n </a-layout>\n <a-back-top class=\"ditari-ant-back-top\" :visibility-height=\"50\"></a-back-top>\n</template>\n"],"names":["provide","store","useKeepAliveStore","computed","useSettingsStore"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAqBA,IAAM,MAAA,UAAA,GAAa,aACd,CAAA,cAAA,CAAA,EAAA,EAAA,KAAA,CAAM,UADQ,CAAA,EAAA;AAAA,MAEjB,WAAW,KAAM,CAAA,SAAA;AAAA,KACnB,CAAA,CAAA;AACA,IAAAA,WAAA,CAAQ,cAAc,UAAU,CAAA,CAAA;AAGhC,IAAA,MAAMC,UAAQC,uBAAkB,EAAA,CAAA;AAEhC,IAAA,MAAM,cAAiB,GAAAC,YAAA,CAAS,MAAMF,OAAA,CAAM,GAAG,CAAA,CAAA;AAE/C,IAAA,MAAM,gBAAgBG,sBAAiB,EAAA,CAAA;AACvC,IAAM,MAAA,EAAE,iBAAoB,GAAA,aAAA,CAAA;AAC5B,IAAA,MAAM,eAAkB,GAAAD,YAAA,CAAS,MAAM,aAAA,CAAc,YAAY,CAAA,CAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
|
|
1
|
+
{"version":3,"file":"FuckMain.vue2.cjs","sources":["../../../src/layout/FuckMain.vue"],"sourcesContent":["<script setup lang=\"ts\">\n/**\n * FUCK MAIN 入口文件\n */\nimport { computed, provide } from \"vue\";\nimport { MenuFoldOutlined, MenuUnfoldOutlined } from \"@ant-design/icons-vue\";\nimport { useKeepAliveStore, useSettingsStore } from \"@ditari/store\";\n\n//标签页组件\nimport DNavTabs from \"./NavTabs.vue\";\n// 菜单组件\nimport Menu from \"../menu/Menu\";\n\nconst props = defineProps({\n \"showConfig\": { type: null, required: false, default: { backBtn: \"LeftOutlined\" } as any },\n \"breadcrumbStatus\": { type: Boolean, required: false, },\n \"sideWidth\": { type: Number, required: false, default: 200 }\n});\n\n// 注入show组件的配置文件\n// eslint-disable-next-line vue/no-setup-props-destructure\nconst showConfig = {\n ...props.showConfig,\n sideWidth: props.sideWidth\n};\nconsole.log(showConfig);\nprovide(\"showConfig\", showConfig);\n\n// 缓存store\nconst store = useKeepAliveStore();\n// 缓存的names\nconst keepAliveNames = computed(() => store.get);\n// 设置store\nconst settingsStore = useSettingsStore();\nconst { switchCollapsed } = settingsStore;\nconst collapsedStatus = computed(() => settingsStore.getCollapsed);\n</script>\n<template>\n <a-layout class=\"ditari-layout\">\n <a-layout-sider\n v-model:collapsed=\"collapsedStatus\"\n :width=\"sideWidth\"\n :trigger=\"null\"\n collapsible\n class=\"ditari-layout-sider\"\n >\n <div class=\"ditari-logo\">\n <slot name=\"logo\"></slot>\n </div>\n <div class=\"ditari-menu\">\n <Menu />\n </div>\n </a-layout-sider>\n <a-layout>\n <div\n class=\"ditari-fuck-top-layout\"\n :style=\"{ left: collapsedStatus ? '80px' : sideWidth + 'px' }\"\n >\n <div class=\"ditari-side-collapsed\" @click=\"switchCollapsed\">\n <menu-unfold-outlined\n v-if=\"collapsedStatus\"\n class=\"trigger\"\n style=\"font-size: 16px; font-weight: bold; cursor: pointer\"\n />\n <menu-fold-outlined\n v-else\n style=\"font-size: 16px; font-weight: bold; cursor: pointer\"\n />\n </div>\n <d-nav-tabs />\n <div class=\"ditari-user-menu\">\n <slot name=\"operation\"></slot>\n </div>\n </div>\n <a-layout-content\n style=\"margin-top: 42px\"\n class=\"ditari-layout-content\"\n :style=\"{ marginLeft: collapsedStatus ? '80px' : sideWidth + 'px' }\"\n >\n <router-view v-slot=\"{ Component }\">\n <transition name=\"main\" mode=\"out-in\" appear>\n <keep-alive ref=\"keepAliveRef\" :include=\"keepAliveNames\">\n <component :is=\"Component\" :key=\"$route.path\" />\n </keep-alive>\n </transition>\n </router-view>\n <slot name=\"micro\"></slot>\n </a-layout-content>\n </a-layout>\n </a-layout>\n <a-back-top class=\"ditari-ant-back-top\" :visibility-height=\"50\"></a-back-top>\n</template>\n"],"names":["provide","store","useKeepAliveStore","computed","useSettingsStore"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAqBA,IAAM,MAAA,UAAA,GAAa,aACd,CAAA,cAAA,CAAA,EAAA,EAAA,KAAA,CAAM,UADQ,CAAA,EAAA;AAAA,MAEjB,WAAW,KAAM,CAAA,SAAA;AAAA,KACnB,CAAA,CAAA;AACA,IAAA,OAAA,CAAQ,IAAI,UAAU,CAAA,CAAA;AACtB,IAAAA,WAAA,CAAQ,cAAc,UAAU,CAAA,CAAA;AAGhC,IAAA,MAAMC,UAAQC,uBAAkB,EAAA,CAAA;AAEhC,IAAA,MAAM,cAAiB,GAAAC,YAAA,CAAS,MAAMF,OAAA,CAAM,GAAG,CAAA,CAAA;AAE/C,IAAA,MAAM,gBAAgBG,sBAAiB,EAAA,CAAA;AACvC,IAAM,MAAA,EAAE,iBAAoB,GAAA,aAAA,CAAA;AAC5B,IAAA,MAAM,eAAkB,GAAAD,YAAA,CAAS,MAAM,aAAA,CAAc,YAAY,CAAA,CAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
|
|
@@ -9,6 +9,25 @@ var NavTabs = require('./NavTabs.vue.cjs');
|
|
|
9
9
|
var Breadcrumb = require('./Breadcrumb.vue.cjs');
|
|
10
10
|
var Menu = require('../menu/Menu.cjs');
|
|
11
11
|
|
|
12
|
+
var __defProp = Object.defineProperty;
|
|
13
|
+
var __defProps = Object.defineProperties;
|
|
14
|
+
var __getOwnPropDescs = Object.getOwnPropertyDescriptors;
|
|
15
|
+
var __getOwnPropSymbols = Object.getOwnPropertySymbols;
|
|
16
|
+
var __hasOwnProp = Object.prototype.hasOwnProperty;
|
|
17
|
+
var __propIsEnum = Object.prototype.propertyIsEnumerable;
|
|
18
|
+
var __defNormalProp = (obj, key, value) => key in obj ? __defProp(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;
|
|
19
|
+
var __spreadValues = (a, b) => {
|
|
20
|
+
for (var prop in b || (b = {}))
|
|
21
|
+
if (__hasOwnProp.call(b, prop))
|
|
22
|
+
__defNormalProp(a, prop, b[prop]);
|
|
23
|
+
if (__getOwnPropSymbols)
|
|
24
|
+
for (var prop of __getOwnPropSymbols(b)) {
|
|
25
|
+
if (__propIsEnum.call(b, prop))
|
|
26
|
+
__defNormalProp(a, prop, b[prop]);
|
|
27
|
+
}
|
|
28
|
+
return a;
|
|
29
|
+
};
|
|
30
|
+
var __spreadProps = (a, b) => __defProps(a, __getOwnPropDescs(b));
|
|
12
31
|
const _hoisted_1 = { class: "ditari-logo" };
|
|
13
32
|
const _hoisted_2 = { class: "ditari-menu" };
|
|
14
33
|
const _hoisted_3 = { class: "ditari-layout-header" };
|
|
@@ -23,7 +42,10 @@ var _sfc_main = /* @__PURE__ */ vue.defineComponent({
|
|
|
23
42
|
},
|
|
24
43
|
setup(__props) {
|
|
25
44
|
const props = __props;
|
|
26
|
-
|
|
45
|
+
const showConfig = __spreadProps(__spreadValues({}, props.showConfig), {
|
|
46
|
+
sideWidth: props.sideWidth
|
|
47
|
+
});
|
|
48
|
+
vue.provide("showConfig", showConfig);
|
|
27
49
|
const store$1 = store.useKeepAliveStore();
|
|
28
50
|
const keepAliveNames = vue.computed(() => store$1.get);
|
|
29
51
|
const settingsStore = store.useSettingsStore();
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Main.vue2.cjs","sources":["../../../src/layout/Main.vue"],"sourcesContent":["<script setup lang=\"ts\">\n/**\n * 入口文件\n */\nimport { computed, provide } from \"vue\";\nimport { MenuFoldOutlined, MenuUnfoldOutlined } from \"@ant-design/icons-vue\";\nimport { useKeepAliveStore, useSettingsStore } from \"@ditari/store\";\n\n//标签页组件\nimport DNavTabs from \"./NavTabs.vue\";\n//面包屑组件\nimport DBreadcrumb from \"./Breadcrumb.vue\";\n// 菜单组件\nimport Menu from \"../menu/Menu\";\n\nconst props = defineProps({\n \"showConfig\": { type: null, required: false, default: { backBtn: \"LeftOutlined\" } as any },\n \"breadcrumbStatus\": { type: Boolean, required: false, },\n \"sideWidth\": { type: Number, required: false, default: 200 }\n});\n// 注入show组件的配置文件\n// eslint-disable-next-line vue/no-setup-props-destructure\nprovide(\"showConfig\",
|
|
1
|
+
{"version":3,"file":"Main.vue2.cjs","sources":["../../../src/layout/Main.vue"],"sourcesContent":["<script setup lang=\"ts\">\n/**\n * 入口文件\n */\nimport { computed, provide } from \"vue\";\nimport { MenuFoldOutlined, MenuUnfoldOutlined } from \"@ant-design/icons-vue\";\nimport { useKeepAliveStore, useSettingsStore } from \"@ditari/store\";\n\n//标签页组件\nimport DNavTabs from \"./NavTabs.vue\";\n//面包屑组件\nimport DBreadcrumb from \"./Breadcrumb.vue\";\n// 菜单组件\nimport Menu from \"../menu/Menu\";\n\nconst props = defineProps({\n \"showConfig\": { type: null, required: false, default: { backBtn: \"LeftOutlined\" } as any },\n \"breadcrumbStatus\": { type: Boolean, required: false, },\n \"sideWidth\": { type: Number, required: false, default: 200 }\n});\n// 注入show组件的配置文件\n// eslint-disable-next-line vue/no-setup-props-destructure\nconst showConfig = {\n ...props.showConfig,\n sideWidth: props.sideWidth\n};\nprovide(\"showConfig\", showConfig);\n// 缓存store\nconst store = useKeepAliveStore();\n// 缓存的names\nconst keepAliveNames = computed(() => store.get);\n// 设置store\nconst settingsStore = useSettingsStore();\nconst { switchCollapsed } = settingsStore;\nconst collapsedStatus = computed(() => settingsStore.getCollapsed);\n</script>\n<template>\n <a-layout class=\"ditari-layout\">\n <a-layout-sider\n v-model:collapsed=\"collapsedStatus\"\n :width=\"sideWidth\"\n :trigger=\"null\"\n collapsible\n class=\"ditari-layout-sider\"\n >\n <div>\n <div class=\"ditari-logo\">\n <slot name=\"logo\"></slot>\n </div>\n <div class=\"ditari-menu\">\n <Menu />\n </div>\n </div>\n </a-layout-sider>\n <a-layout>\n <div\n class=\"ditari-top-layout\"\n :style=\"{ left: collapsedStatus ? '80px' : sideWidth + 'px' }\"\n >\n <d-nav-tabs />\n <div class=\"ditari-layout-header\">\n <div class=\"ditari-layout-header-left\">\n <div class=\"ditari-side-collapsed\" @click=\"switchCollapsed\">\n <menu-unfold-outlined\n v-if=\"collapsedStatus\"\n class=\"trigger\"\n style=\"font-size: 16px; font-weight: bold; cursor: pointer\"\n />\n <menu-fold-outlined\n v-else\n style=\"font-size: 16px; font-weight: bold; cursor: pointer\"\n />\n </div>\n <d-breadcrumb />\n </div>\n <div class=\"ditari-user-menu\">\n <slot name=\"operation\"></slot>\n </div>\n </div>\n </div>\n <a-layout-content\n class=\"ditari-layout-content\"\n :style=\"{ marginLeft: collapsedStatus ? '80px' : sideWidth + 'px' }\"\n >\n <router-view v-slot=\"{ Component }\">\n <transition name=\"main\" mode=\"out-in\" appear>\n <keep-alive ref=\"keepAliveRef\" :include=\"keepAliveNames\">\n <component :is=\"Component\" :key=\"$route.path\" />\n </keep-alive>\n </transition>\n </router-view>\n <slot name=\"micro\"></slot>\n </a-layout-content>\n </a-layout>\n </a-layout>\n <a-back-top class=\"ditari-ant-back-top\" :visibility-height=\"50\"></a-back-top>\n</template>\n<style lang=\"scss\"></style>\n"],"names":["provide","store","useKeepAliveStore","computed","useSettingsStore"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAsBA,IAAM,MAAA,UAAA,GAAa,aACd,CAAA,cAAA,CAAA,EAAA,EAAA,KAAA,CAAM,UADQ,CAAA,EAAA;AAAA,MAEjB,WAAW,KAAM,CAAA,SAAA;AAAA,KACnB,CAAA,CAAA;AACA,IAAAA,WAAA,CAAQ,cAAc,UAAU,CAAA,CAAA;AAEhC,IAAA,MAAMC,UAAQC,uBAAkB,EAAA,CAAA;AAEhC,IAAA,MAAM,cAAiB,GAAAC,YAAA,CAAS,MAAMF,OAAA,CAAM,GAAG,CAAA,CAAA;AAE/C,IAAA,MAAM,gBAAgBG,sBAAiB,EAAA,CAAA;AACvC,IAAM,MAAA,EAAE,iBAAoB,GAAA,aAAA,CAAA;AAC5B,IAAA,MAAM,eAAkB,GAAAD,YAAA,CAAS,MAAM,aAAA,CAAc,YAAY,CAAA,CAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
|
|
@@ -25,10 +25,13 @@ var _sfc_main = /* @__PURE__ */ vue.defineComponent({
|
|
|
25
25
|
const slots = vue.useSlots();
|
|
26
26
|
const navTabStore = store.useNavTabsStore();
|
|
27
27
|
const settingsStore = store.useSettingsStore();
|
|
28
|
-
const showConfig = vue.inject("showConfig"
|
|
28
|
+
const showConfig = vue.inject("showConfig", {
|
|
29
|
+
backBtn: void 0,
|
|
30
|
+
sideWidth: 0
|
|
31
|
+
});
|
|
29
32
|
const collapsedStatus = vue.computed(() => settingsStore.getCollapsed);
|
|
30
33
|
const btnRender = () => {
|
|
31
|
-
if (!showConfig) {
|
|
34
|
+
if (!showConfig.backBtn) {
|
|
32
35
|
return vue.h(iconsVue.LeftOutlined);
|
|
33
36
|
} else {
|
|
34
37
|
return vue.h(vue.resolveComponent(showConfig.backBtn));
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Show.vue2.cjs","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 \"showBack\": { type: Boolean, required: false, default: true }\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;\nconst collapsedStatus = computed(() => settingsStore.getCollapsed);\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.fullPath);\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-page-header\n v-if=\"showBack\"\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 <a-spin\n tip=\"正在处理...\"\n :spinning=\"showLoading\"\n :delay=\"delayTime\"\n size=\"large\"\n >\n <div class=\"ditari-show-content\" :style=\"contentStyle\">\n <slot></slot>\n </div>\n <div\n v-if=\"$slots.footer\"\n class=\"ditari-show-footer\"\n :style=\"{\n left: collapsedStatus ? '80px' : showConfig.sideWidth + 'px'\n }\"\n >\n <slot name=\"footer\"></slot>\n </div>\n </a-spin>\n </div>\n</template>\n<style lang=\"scss\"></style>\n"],"names":["useRouter","useRoute","useSlots","useNavTabsStore","useSettingsStore","inject","computed","h","LeftOutlined","resolveComponent","storeToRefs","useWindowScroll","useScrollLock","watch"],"mappings":";;;;;;;;;;;;AACA,MAAM,SAAY,GAAA,GAAA,CAAA;;;;;;;;;;AAoBlB,IAAA,MAAM,SAASA,mBAAU,EAAA,CAAA;AACzB,IAAA,MAAM,QAAQC,kBAAS,EAAA,CAAA;AACvB,IAAA,MAAM,QAAQC,YAAS,EAAA,CAAA;AAEvB,IAAA,MAAM,cAAcC,qBAAgB,EAAA,CAAA;AACpC,IAAA,MAAM,gBAAgBC,sBAAiB,EAAA,CAAA;AAEvC,IAAM,MAAA,UAAA,GAAaC,WAAO,
|
|
1
|
+
{"version":3,"file":"Show.vue2.cjs","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 \"showBack\": { type: Boolean, required: false, default: true }\n});\n\nconst router = useRouter();\nconst route = useRoute();\nconst slots = useSlots();\n\nconst navTabStore = useNavTabsStore();\nconst settingsStore = useSettingsStore();\n\nconst showConfig = inject(\"showConfig\", {\n backBtn: undefined,\n sideWidth: 0\n}) as any;\n\nconst collapsedStatus = computed(() => settingsStore.getCollapsed);\nconst btnRender = () => {\n if (!showConfig.backBtn) {\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.fullPath);\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-page-header\n v-if=\"showBack\"\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 <a-spin\n tip=\"正在处理...\"\n :spinning=\"showLoading\"\n :delay=\"delayTime\"\n size=\"large\"\n >\n <div class=\"ditari-show-content\" :style=\"contentStyle\">\n <slot></slot>\n </div>\n <div\n v-if=\"$slots.footer\"\n class=\"ditari-show-footer\"\n :style=\"{\n left: collapsedStatus ? '80px' : showConfig.sideWidth + 'px'\n }\"\n >\n <slot name=\"footer\"></slot>\n </div>\n </a-spin>\n </div>\n</template>\n<style lang=\"scss\"></style>\n"],"names":["useRouter","useRoute","useSlots","useNavTabsStore","useSettingsStore","inject","computed","h","LeftOutlined","resolveComponent","storeToRefs","useWindowScroll","useScrollLock","watch"],"mappings":";;;;;;;;;;;;AACA,MAAM,SAAY,GAAA,GAAA,CAAA;;;;;;;;;;AAoBlB,IAAA,MAAM,SAASA,mBAAU,EAAA,CAAA;AACzB,IAAA,MAAM,QAAQC,kBAAS,EAAA,CAAA;AACvB,IAAA,MAAM,QAAQC,YAAS,EAAA,CAAA;AAEvB,IAAA,MAAM,cAAcC,qBAAgB,EAAA,CAAA;AACpC,IAAA,MAAM,gBAAgBC,sBAAiB,EAAA,CAAA;AAEvC,IAAM,MAAA,UAAA,GAAaC,WAAO,YAAc,EAAA;AAAA,MACtC,OAAS,EAAA,KAAA,CAAA;AAAA,MACT,SAAW,EAAA,CAAA;AAAA,KACZ,CAAA,CAAA;AAED,IAAA,MAAM,eAAkB,GAAAC,YAAA,CAAS,MAAM,aAAA,CAAc,YAAY,CAAA,CAAA;AACjE,IAAA,MAAM,YAAY,MAAM;AACtB,MAAI,IAAA,CAAC,WAAW,OAAS,EAAA;AACvB,QAAA,OAAOC,MAAEC,qBAAY,CAAA,CAAA;AAAA,OAChB,MAAA;AACL,QAAA,OAAOD,KAAE,CAAAE,oBAAA,CAAiB,UAAW,CAAA,OAAO,CAAC,CAAA,CAAA;AAAA,OAC/C;AAAA,KACF,CAAA;AAEA,IAAA,MAAM,EAAE,OAAA,EAAY,GAAAC,iBAAA,CAAY,aAAa,CAAA,CAAA;AAE7C,IAAA,MAAM,WAAc,GAAAJ,YAAA,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,QAAQ,CAAA,CAAA;AACrC,MAAA,MAAA,CAAO,GAAG,CAAE,CAAA,CAAA,CAAA;AAAA,KACd,CAAA;AAKA,IAAM,MAAA,EAAE,CAAE,EAAA,GAAIK,oBAAgB,EAAA,CAAA;AAE9B,IAAM,MAAA,QAAA,GAAWC,kBAAc,CAAA,QAAA,CAAS,IAAI,CAAA,CAAA;AAE5C,IAAAC,SAAA;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;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
|
|
@@ -38,6 +38,7 @@ var _sfc_main = /* @__PURE__ */ defineComponent({
|
|
|
38
38
|
const showConfig = __spreadProps(__spreadValues({}, props.showConfig), {
|
|
39
39
|
sideWidth: props.sideWidth
|
|
40
40
|
});
|
|
41
|
+
console.log(showConfig);
|
|
41
42
|
provide("showConfig", showConfig);
|
|
42
43
|
const store = useKeepAliveStore();
|
|
43
44
|
const keepAliveNames = computed(() => store.get);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"FuckMain.vue2.mjs","sources":["../../../src/layout/FuckMain.vue"],"sourcesContent":["<script setup lang=\"ts\">\n/**\n * FUCK MAIN 入口文件\n */\nimport { computed, provide } from \"vue\";\nimport { MenuFoldOutlined, MenuUnfoldOutlined } from \"@ant-design/icons-vue\";\nimport { useKeepAliveStore, useSettingsStore } from \"@ditari/store\";\n\n//标签页组件\nimport DNavTabs from \"./NavTabs.vue\";\n// 菜单组件\nimport Menu from \"../menu/Menu\";\n\nconst props = defineProps({\n \"showConfig\": { type: null, required: false, default: { backBtn: \"LeftOutlined\" } as any },\n \"breadcrumbStatus\": { type: Boolean, required: false, },\n \"sideWidth\": { type: Number, required: false, default: 200 }\n});\n\n// 注入show组件的配置文件\n// eslint-disable-next-line vue/no-setup-props-destructure\nconst showConfig = {\n ...props.showConfig,\n sideWidth: props.sideWidth\n};\nprovide(\"showConfig\", showConfig);\n\n// 缓存store\nconst store = useKeepAliveStore();\n// 缓存的names\nconst keepAliveNames = computed(() => store.get);\n// 设置store\nconst settingsStore = useSettingsStore();\nconst { switchCollapsed } = settingsStore;\nconst collapsedStatus = computed(() => settingsStore.getCollapsed);\n</script>\n<template>\n <a-layout class=\"ditari-layout\">\n <a-layout-sider\n v-model:collapsed=\"collapsedStatus\"\n :width=\"sideWidth\"\n :trigger=\"null\"\n collapsible\n class=\"ditari-layout-sider\"\n >\n <div class=\"ditari-logo\">\n <slot name=\"logo\"></slot>\n </div>\n <div class=\"ditari-menu\">\n <Menu />\n </div>\n </a-layout-sider>\n <a-layout>\n <div\n class=\"ditari-fuck-top-layout\"\n :style=\"{ left: collapsedStatus ? '80px' : sideWidth + 'px' }\"\n >\n <div class=\"ditari-side-collapsed\" @click=\"switchCollapsed\">\n <menu-unfold-outlined\n v-if=\"collapsedStatus\"\n class=\"trigger\"\n style=\"font-size: 16px; font-weight: bold; cursor: pointer\"\n />\n <menu-fold-outlined\n v-else\n style=\"font-size: 16px; font-weight: bold; cursor: pointer\"\n />\n </div>\n <d-nav-tabs />\n <div class=\"ditari-user-menu\">\n <slot name=\"operation\"></slot>\n </div>\n </div>\n <a-layout-content\n style=\"margin-top: 42px\"\n class=\"ditari-layout-content\"\n :style=\"{ marginLeft: collapsedStatus ? '80px' : sideWidth + 'px' }\"\n >\n <router-view v-slot=\"{ Component }\">\n <transition name=\"main\" mode=\"out-in\" appear>\n <keep-alive ref=\"keepAliveRef\" :include=\"keepAliveNames\">\n <component :is=\"Component\" :key=\"$route.path\" />\n </keep-alive>\n </transition>\n </router-view>\n <slot name=\"micro\"></slot>\n </a-layout-content>\n </a-layout>\n </a-layout>\n <a-back-top class=\"ditari-ant-back-top\" :visibility-height=\"50\"></a-back-top>\n</template>\n"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAqBA,IAAM,MAAA,UAAA,GAAa,aACd,CAAA,cAAA,CAAA,EAAA,EAAA,KAAA,CAAM,UADQ,CAAA,EAAA;AAAA,MAEjB,WAAW,KAAM,CAAA,SAAA;AAAA,KACnB,CAAA,CAAA;AACA,IAAA,OAAA,CAAQ,cAAc,UAAU,CAAA,CAAA;AAGhC,IAAA,MAAM,QAAQ,iBAAkB,EAAA,CAAA;AAEhC,IAAA,MAAM,cAAiB,GAAA,QAAA,CAAS,MAAM,KAAA,CAAM,GAAG,CAAA,CAAA;AAE/C,IAAA,MAAM,gBAAgB,gBAAiB,EAAA,CAAA;AACvC,IAAM,MAAA,EAAE,iBAAoB,GAAA,aAAA,CAAA;AAC5B,IAAA,MAAM,eAAkB,GAAA,QAAA,CAAS,MAAM,aAAA,CAAc,YAAY,CAAA,CAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
|
|
1
|
+
{"version":3,"file":"FuckMain.vue2.mjs","sources":["../../../src/layout/FuckMain.vue"],"sourcesContent":["<script setup lang=\"ts\">\n/**\n * FUCK MAIN 入口文件\n */\nimport { computed, provide } from \"vue\";\nimport { MenuFoldOutlined, MenuUnfoldOutlined } from \"@ant-design/icons-vue\";\nimport { useKeepAliveStore, useSettingsStore } from \"@ditari/store\";\n\n//标签页组件\nimport DNavTabs from \"./NavTabs.vue\";\n// 菜单组件\nimport Menu from \"../menu/Menu\";\n\nconst props = defineProps({\n \"showConfig\": { type: null, required: false, default: { backBtn: \"LeftOutlined\" } as any },\n \"breadcrumbStatus\": { type: Boolean, required: false, },\n \"sideWidth\": { type: Number, required: false, default: 200 }\n});\n\n// 注入show组件的配置文件\n// eslint-disable-next-line vue/no-setup-props-destructure\nconst showConfig = {\n ...props.showConfig,\n sideWidth: props.sideWidth\n};\nconsole.log(showConfig);\nprovide(\"showConfig\", showConfig);\n\n// 缓存store\nconst store = useKeepAliveStore();\n// 缓存的names\nconst keepAliveNames = computed(() => store.get);\n// 设置store\nconst settingsStore = useSettingsStore();\nconst { switchCollapsed } = settingsStore;\nconst collapsedStatus = computed(() => settingsStore.getCollapsed);\n</script>\n<template>\n <a-layout class=\"ditari-layout\">\n <a-layout-sider\n v-model:collapsed=\"collapsedStatus\"\n :width=\"sideWidth\"\n :trigger=\"null\"\n collapsible\n class=\"ditari-layout-sider\"\n >\n <div class=\"ditari-logo\">\n <slot name=\"logo\"></slot>\n </div>\n <div class=\"ditari-menu\">\n <Menu />\n </div>\n </a-layout-sider>\n <a-layout>\n <div\n class=\"ditari-fuck-top-layout\"\n :style=\"{ left: collapsedStatus ? '80px' : sideWidth + 'px' }\"\n >\n <div class=\"ditari-side-collapsed\" @click=\"switchCollapsed\">\n <menu-unfold-outlined\n v-if=\"collapsedStatus\"\n class=\"trigger\"\n style=\"font-size: 16px; font-weight: bold; cursor: pointer\"\n />\n <menu-fold-outlined\n v-else\n style=\"font-size: 16px; font-weight: bold; cursor: pointer\"\n />\n </div>\n <d-nav-tabs />\n <div class=\"ditari-user-menu\">\n <slot name=\"operation\"></slot>\n </div>\n </div>\n <a-layout-content\n style=\"margin-top: 42px\"\n class=\"ditari-layout-content\"\n :style=\"{ marginLeft: collapsedStatus ? '80px' : sideWidth + 'px' }\"\n >\n <router-view v-slot=\"{ Component }\">\n <transition name=\"main\" mode=\"out-in\" appear>\n <keep-alive ref=\"keepAliveRef\" :include=\"keepAliveNames\">\n <component :is=\"Component\" :key=\"$route.path\" />\n </keep-alive>\n </transition>\n </router-view>\n <slot name=\"micro\"></slot>\n </a-layout-content>\n </a-layout>\n </a-layout>\n <a-back-top class=\"ditari-ant-back-top\" :visibility-height=\"50\"></a-back-top>\n</template>\n"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAqBA,IAAM,MAAA,UAAA,GAAa,aACd,CAAA,cAAA,CAAA,EAAA,EAAA,KAAA,CAAM,UADQ,CAAA,EAAA;AAAA,MAEjB,WAAW,KAAM,CAAA,SAAA;AAAA,KACnB,CAAA,CAAA;AACA,IAAA,OAAA,CAAQ,IAAI,UAAU,CAAA,CAAA;AACtB,IAAA,OAAA,CAAQ,cAAc,UAAU,CAAA,CAAA;AAGhC,IAAA,MAAM,QAAQ,iBAAkB,EAAA,CAAA;AAEhC,IAAA,MAAM,cAAiB,GAAA,QAAA,CAAS,MAAM,KAAA,CAAM,GAAG,CAAA,CAAA;AAE/C,IAAA,MAAM,gBAAgB,gBAAiB,EAAA,CAAA;AACvC,IAAM,MAAA,EAAE,iBAAoB,GAAA,aAAA,CAAA;AAC5B,IAAA,MAAM,eAAkB,GAAA,QAAA,CAAS,MAAM,aAAA,CAAc,YAAY,CAAA,CAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
|
|
@@ -5,6 +5,25 @@ import DNavTabs from './NavTabs.vue.mjs';
|
|
|
5
5
|
import DBreadcrumb from './Breadcrumb.vue.mjs';
|
|
6
6
|
import Menu from '../menu/Menu.mjs';
|
|
7
7
|
|
|
8
|
+
var __defProp = Object.defineProperty;
|
|
9
|
+
var __defProps = Object.defineProperties;
|
|
10
|
+
var __getOwnPropDescs = Object.getOwnPropertyDescriptors;
|
|
11
|
+
var __getOwnPropSymbols = Object.getOwnPropertySymbols;
|
|
12
|
+
var __hasOwnProp = Object.prototype.hasOwnProperty;
|
|
13
|
+
var __propIsEnum = Object.prototype.propertyIsEnumerable;
|
|
14
|
+
var __defNormalProp = (obj, key, value) => key in obj ? __defProp(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;
|
|
15
|
+
var __spreadValues = (a, b) => {
|
|
16
|
+
for (var prop in b || (b = {}))
|
|
17
|
+
if (__hasOwnProp.call(b, prop))
|
|
18
|
+
__defNormalProp(a, prop, b[prop]);
|
|
19
|
+
if (__getOwnPropSymbols)
|
|
20
|
+
for (var prop of __getOwnPropSymbols(b)) {
|
|
21
|
+
if (__propIsEnum.call(b, prop))
|
|
22
|
+
__defNormalProp(a, prop, b[prop]);
|
|
23
|
+
}
|
|
24
|
+
return a;
|
|
25
|
+
};
|
|
26
|
+
var __spreadProps = (a, b) => __defProps(a, __getOwnPropDescs(b));
|
|
8
27
|
const _hoisted_1 = { class: "ditari-logo" };
|
|
9
28
|
const _hoisted_2 = { class: "ditari-menu" };
|
|
10
29
|
const _hoisted_3 = { class: "ditari-layout-header" };
|
|
@@ -19,7 +38,10 @@ var _sfc_main = /* @__PURE__ */ defineComponent({
|
|
|
19
38
|
},
|
|
20
39
|
setup(__props) {
|
|
21
40
|
const props = __props;
|
|
22
|
-
|
|
41
|
+
const showConfig = __spreadProps(__spreadValues({}, props.showConfig), {
|
|
42
|
+
sideWidth: props.sideWidth
|
|
43
|
+
});
|
|
44
|
+
provide("showConfig", showConfig);
|
|
23
45
|
const store = useKeepAliveStore();
|
|
24
46
|
const keepAliveNames = computed(() => store.get);
|
|
25
47
|
const settingsStore = useSettingsStore();
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Main.vue2.mjs","sources":["../../../src/layout/Main.vue"],"sourcesContent":["<script setup lang=\"ts\">\n/**\n * 入口文件\n */\nimport { computed, provide } from \"vue\";\nimport { MenuFoldOutlined, MenuUnfoldOutlined } from \"@ant-design/icons-vue\";\nimport { useKeepAliveStore, useSettingsStore } from \"@ditari/store\";\n\n//标签页组件\nimport DNavTabs from \"./NavTabs.vue\";\n//面包屑组件\nimport DBreadcrumb from \"./Breadcrumb.vue\";\n// 菜单组件\nimport Menu from \"../menu/Menu\";\n\nconst props = defineProps({\n \"showConfig\": { type: null, required: false, default: { backBtn: \"LeftOutlined\" } as any },\n \"breadcrumbStatus\": { type: Boolean, required: false, },\n \"sideWidth\": { type: Number, required: false, default: 200 }\n});\n// 注入show组件的配置文件\n// eslint-disable-next-line vue/no-setup-props-destructure\nprovide(\"showConfig\",
|
|
1
|
+
{"version":3,"file":"Main.vue2.mjs","sources":["../../../src/layout/Main.vue"],"sourcesContent":["<script setup lang=\"ts\">\n/**\n * 入口文件\n */\nimport { computed, provide } from \"vue\";\nimport { MenuFoldOutlined, MenuUnfoldOutlined } from \"@ant-design/icons-vue\";\nimport { useKeepAliveStore, useSettingsStore } from \"@ditari/store\";\n\n//标签页组件\nimport DNavTabs from \"./NavTabs.vue\";\n//面包屑组件\nimport DBreadcrumb from \"./Breadcrumb.vue\";\n// 菜单组件\nimport Menu from \"../menu/Menu\";\n\nconst props = defineProps({\n \"showConfig\": { type: null, required: false, default: { backBtn: \"LeftOutlined\" } as any },\n \"breadcrumbStatus\": { type: Boolean, required: false, },\n \"sideWidth\": { type: Number, required: false, default: 200 }\n});\n// 注入show组件的配置文件\n// eslint-disable-next-line vue/no-setup-props-destructure\nconst showConfig = {\n ...props.showConfig,\n sideWidth: props.sideWidth\n};\nprovide(\"showConfig\", showConfig);\n// 缓存store\nconst store = useKeepAliveStore();\n// 缓存的names\nconst keepAliveNames = computed(() => store.get);\n// 设置store\nconst settingsStore = useSettingsStore();\nconst { switchCollapsed } = settingsStore;\nconst collapsedStatus = computed(() => settingsStore.getCollapsed);\n</script>\n<template>\n <a-layout class=\"ditari-layout\">\n <a-layout-sider\n v-model:collapsed=\"collapsedStatus\"\n :width=\"sideWidth\"\n :trigger=\"null\"\n collapsible\n class=\"ditari-layout-sider\"\n >\n <div>\n <div class=\"ditari-logo\">\n <slot name=\"logo\"></slot>\n </div>\n <div class=\"ditari-menu\">\n <Menu />\n </div>\n </div>\n </a-layout-sider>\n <a-layout>\n <div\n class=\"ditari-top-layout\"\n :style=\"{ left: collapsedStatus ? '80px' : sideWidth + 'px' }\"\n >\n <d-nav-tabs />\n <div class=\"ditari-layout-header\">\n <div class=\"ditari-layout-header-left\">\n <div class=\"ditari-side-collapsed\" @click=\"switchCollapsed\">\n <menu-unfold-outlined\n v-if=\"collapsedStatus\"\n class=\"trigger\"\n style=\"font-size: 16px; font-weight: bold; cursor: pointer\"\n />\n <menu-fold-outlined\n v-else\n style=\"font-size: 16px; font-weight: bold; cursor: pointer\"\n />\n </div>\n <d-breadcrumb />\n </div>\n <div class=\"ditari-user-menu\">\n <slot name=\"operation\"></slot>\n </div>\n </div>\n </div>\n <a-layout-content\n class=\"ditari-layout-content\"\n :style=\"{ marginLeft: collapsedStatus ? '80px' : sideWidth + 'px' }\"\n >\n <router-view v-slot=\"{ Component }\">\n <transition name=\"main\" mode=\"out-in\" appear>\n <keep-alive ref=\"keepAliveRef\" :include=\"keepAliveNames\">\n <component :is=\"Component\" :key=\"$route.path\" />\n </keep-alive>\n </transition>\n </router-view>\n <slot name=\"micro\"></slot>\n </a-layout-content>\n </a-layout>\n </a-layout>\n <a-back-top class=\"ditari-ant-back-top\" :visibility-height=\"50\"></a-back-top>\n</template>\n<style lang=\"scss\"></style>\n"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAsBA,IAAM,MAAA,UAAA,GAAa,aACd,CAAA,cAAA,CAAA,EAAA,EAAA,KAAA,CAAM,UADQ,CAAA,EAAA;AAAA,MAEjB,WAAW,KAAM,CAAA,SAAA;AAAA,KACnB,CAAA,CAAA;AACA,IAAA,OAAA,CAAQ,cAAc,UAAU,CAAA,CAAA;AAEhC,IAAA,MAAM,QAAQ,iBAAkB,EAAA,CAAA;AAEhC,IAAA,MAAM,cAAiB,GAAA,QAAA,CAAS,MAAM,KAAA,CAAM,GAAG,CAAA,CAAA;AAE/C,IAAA,MAAM,gBAAgB,gBAAiB,EAAA,CAAA;AACvC,IAAM,MAAA,EAAE,iBAAoB,GAAA,aAAA,CAAA;AAC5B,IAAA,MAAM,eAAkB,GAAA,QAAA,CAAS,MAAM,aAAA,CAAc,YAAY,CAAA,CAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
|
|
@@ -21,10 +21,13 @@ var _sfc_main = /* @__PURE__ */ defineComponent({
|
|
|
21
21
|
const slots = useSlots();
|
|
22
22
|
const navTabStore = useNavTabsStore();
|
|
23
23
|
const settingsStore = useSettingsStore();
|
|
24
|
-
const showConfig = inject("showConfig"
|
|
24
|
+
const showConfig = inject("showConfig", {
|
|
25
|
+
backBtn: void 0,
|
|
26
|
+
sideWidth: 0
|
|
27
|
+
});
|
|
25
28
|
const collapsedStatus = computed(() => settingsStore.getCollapsed);
|
|
26
29
|
const btnRender = () => {
|
|
27
|
-
if (!showConfig) {
|
|
30
|
+
if (!showConfig.backBtn) {
|
|
28
31
|
return h(LeftOutlined);
|
|
29
32
|
} else {
|
|
30
33
|
return h(resolveComponent(showConfig.backBtn));
|
|
@@ -1 +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 \"showBack\": { type: Boolean, required: false, default: true }\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;\nconst collapsedStatus = computed(() => settingsStore.getCollapsed);\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.fullPath);\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-page-header\n v-if=\"showBack\"\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 <a-spin\n tip=\"正在处理...\"\n :spinning=\"showLoading\"\n :delay=\"delayTime\"\n size=\"large\"\n >\n <div class=\"ditari-show-content\" :style=\"contentStyle\">\n <slot></slot>\n </div>\n <div\n v-if=\"$slots.footer\"\n class=\"ditari-show-footer\"\n :style=\"{\n left: collapsedStatus ? '80px' : showConfig.sideWidth + 'px'\n }\"\n >\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;;;;;;;;;;AAoBlB,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,
|
|
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 \"showBack\": { type: Boolean, required: false, default: true }\n});\n\nconst router = useRouter();\nconst route = useRoute();\nconst slots = useSlots();\n\nconst navTabStore = useNavTabsStore();\nconst settingsStore = useSettingsStore();\n\nconst showConfig = inject(\"showConfig\", {\n backBtn: undefined,\n sideWidth: 0\n}) as any;\n\nconst collapsedStatus = computed(() => settingsStore.getCollapsed);\nconst btnRender = () => {\n if (!showConfig.backBtn) {\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.fullPath);\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-page-header\n v-if=\"showBack\"\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 <a-spin\n tip=\"正在处理...\"\n :spinning=\"showLoading\"\n :delay=\"delayTime\"\n size=\"large\"\n >\n <div class=\"ditari-show-content\" :style=\"contentStyle\">\n <slot></slot>\n </div>\n <div\n v-if=\"$slots.footer\"\n class=\"ditari-show-footer\"\n :style=\"{\n left: collapsedStatus ? '80px' : showConfig.sideWidth + 'px'\n }\"\n >\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;;;;;;;;;;AAoBlB,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,YAAc,EAAA;AAAA,MACtC,OAAS,EAAA,KAAA,CAAA;AAAA,MACT,SAAW,EAAA,CAAA;AAAA,KACZ,CAAA,CAAA;AAED,IAAA,MAAM,eAAkB,GAAA,QAAA,CAAS,MAAM,aAAA,CAAc,YAAY,CAAA,CAAA;AACjE,IAAA,MAAM,YAAY,MAAM;AACtB,MAAI,IAAA,CAAC,WAAW,OAAS,EAAA;AACvB,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,QAAQ,CAAA,CAAA;AACrC,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;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
|