@ditari/bsui 5.0.1 → 5.0.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/cjs/components/index.cjs +12 -7
- package/dist/cjs/components/index.cjs.map +1 -1
- package/dist/cjs/components/layout/Layout.vue.cjs +10 -0
- package/dist/cjs/components/layout/Layout.vue.cjs.map +1 -0
- package/dist/cjs/components/layout/Layout.vue2.cjs +144 -0
- package/dist/cjs/components/layout/Layout.vue2.cjs.map +1 -0
- package/dist/cjs/components/layout/{list.cjs → List.cjs} +18 -4
- package/dist/cjs/components/layout/List.cjs.map +1 -0
- package/dist/cjs/components/layout/Show.cjs +134 -0
- package/dist/cjs/components/layout/Show.cjs.map +1 -0
- package/dist/cjs/components/layout/components/layout/HeaderLayout.vue.cjs +10 -0
- package/dist/cjs/components/layout/components/layout/HeaderLayout.vue.cjs.map +1 -0
- package/dist/cjs/components/layout/components/layout/HeaderLayout.vue2.cjs +120 -0
- package/dist/cjs/components/layout/components/layout/HeaderLayout.vue2.cjs.map +1 -0
- package/dist/cjs/components/layout/components/layout/RouterContent.vue.cjs +10 -0
- package/dist/cjs/components/layout/components/layout/RouterContent.vue.cjs.map +1 -0
- package/dist/cjs/components/layout/components/layout/RouterContent.vue2.cjs +47 -0
- package/dist/cjs/components/layout/components/layout/RouterContent.vue2.cjs.map +1 -0
- package/dist/cjs/components/layout/components/menu/Menu.cjs +117 -0
- package/dist/cjs/components/layout/components/menu/Menu.cjs.map +1 -0
- package/dist/cjs/components/layout/index.cjs +16 -8
- package/dist/cjs/components/layout/index.cjs.map +1 -1
- package/dist/cjs/components/select/Select.vue.cjs +10 -0
- package/dist/cjs/components/select/Select.vue.cjs.map +1 -0
- package/dist/cjs/components/select/Select.vue2.cjs +105 -0
- package/dist/cjs/components/select/Select.vue2.cjs.map +1 -0
- package/dist/cjs/components/select/index.cjs +14 -0
- package/dist/cjs/components/select/index.cjs.map +1 -0
- package/dist/cjs/components/tab/Tab.vue.cjs +1 -1
- package/dist/cjs/components/tab/Tab.vue.cjs.map +1 -1
- package/dist/cjs/components/tab/Tab.vue2.cjs +92 -46
- package/dist/cjs/components/tab/Tab.vue2.cjs.map +1 -1
- package/dist/cjs/components/tab/index.cjs +1 -0
- package/dist/cjs/components/tab/index.cjs.map +1 -1
- package/dist/cjs/components/table/{table.cjs → Table.cjs} +2 -9
- package/dist/cjs/components/table/Table.cjs.map +1 -0
- package/dist/cjs/components/table/index.cjs +7 -6
- package/dist/cjs/components/table/index.cjs.map +1 -1
- package/dist/cjs/components/table/interface.cjs +1 -0
- package/dist/cjs/components/table/interface.cjs.map +1 -1
- package/dist/cjs/index.cjs +11 -6
- package/dist/cjs/index.cjs.map +1 -1
- package/dist/cjs/shims-vue.d.cjs +4 -0
- package/dist/cjs/shims-vue.d.cjs.map +1 -0
- package/dist/cjs/utils/useTheme.cjs +23 -0
- package/dist/cjs/utils/useTheme.cjs.map +1 -0
- package/dist/css/components/tab/style/index.css +1 -159
- package/dist/css/index.css +1 -159
- package/dist/esm/components/index.mjs +8 -3
- package/dist/esm/components/index.mjs.map +1 -1
- package/dist/esm/components/layout/Layout.vue.mjs +6 -0
- package/dist/esm/components/layout/Layout.vue.mjs.map +1 -0
- package/dist/esm/components/layout/Layout.vue2.mjs +140 -0
- package/dist/esm/components/layout/Layout.vue2.mjs.map +1 -0
- package/dist/esm/components/layout/{list.mjs → List.mjs} +18 -4
- package/dist/esm/components/layout/List.mjs.map +1 -0
- package/dist/esm/components/layout/Show.mjs +130 -0
- package/dist/esm/components/layout/Show.mjs.map +1 -0
- package/dist/esm/components/layout/components/layout/HeaderLayout.vue.mjs +6 -0
- package/dist/esm/components/layout/components/layout/HeaderLayout.vue.mjs.map +1 -0
- package/dist/esm/components/layout/components/layout/HeaderLayout.vue2.mjs +116 -0
- package/dist/esm/components/layout/components/layout/HeaderLayout.vue2.mjs.map +1 -0
- package/dist/esm/components/layout/components/layout/RouterContent.vue.mjs +6 -0
- package/dist/esm/components/layout/components/layout/RouterContent.vue.mjs.map +1 -0
- package/dist/esm/components/layout/components/layout/RouterContent.vue2.mjs +43 -0
- package/dist/esm/components/layout/components/layout/RouterContent.vue2.mjs.map +1 -0
- package/dist/esm/components/layout/components/menu/Menu.mjs +113 -0
- package/dist/esm/components/layout/components/menu/Menu.mjs.map +1 -0
- package/dist/esm/components/layout/index.mjs +12 -5
- package/dist/esm/components/layout/index.mjs.map +1 -1
- package/dist/esm/components/select/Select.vue.mjs +6 -0
- package/dist/esm/components/select/Select.vue.mjs.map +1 -0
- package/dist/esm/components/select/Select.vue2.mjs +101 -0
- package/dist/esm/components/select/Select.vue2.mjs.map +1 -0
- package/dist/esm/components/select/index.mjs +10 -0
- package/dist/esm/components/select/index.mjs.map +1 -0
- package/dist/esm/components/tab/Tab.vue.mjs +1 -1
- package/dist/esm/components/tab/Tab.vue.mjs.map +1 -1
- package/dist/esm/components/tab/Tab.vue2.mjs +94 -48
- package/dist/esm/components/tab/Tab.vue2.mjs.map +1 -1
- package/dist/esm/components/tab/index.mjs +1 -0
- package/dist/esm/components/tab/index.mjs.map +1 -1
- package/dist/esm/components/table/{table.mjs → Table.mjs} +3 -10
- package/dist/esm/components/table/Table.mjs.map +1 -0
- package/dist/esm/components/table/index.mjs +3 -2
- package/dist/esm/components/table/index.mjs.map +1 -1
- package/dist/esm/components/table/interface.mjs +1 -1
- package/dist/esm/index.mjs +6 -3
- package/dist/esm/index.mjs.map +1 -1
- package/dist/esm/shims-vue.d.mjs +2 -0
- package/dist/esm/shims-vue.d.mjs.map +1 -0
- package/dist/esm/utils/useTheme.mjs +21 -0
- package/dist/esm/utils/useTheme.mjs.map +1 -0
- package/dist/style/index.scss +1 -0
- package/dist/style/tab/style/index.scss +1 -1
- package/dist/{esm → types}/components/index.d.ts +2 -0
- package/dist/types/components/index.d.ts.map +1 -0
- package/dist/types/components/layout/Layout.vue.d.ts +56 -0
- package/dist/types/components/layout/Layout.vue.d.ts.map +1 -0
- package/dist/{cjs/components/layout/list.d.ts → types/components/layout/List.d.ts} +2 -2
- package/dist/types/components/layout/List.d.ts.map +1 -0
- package/dist/types/components/layout/Show.d.ts +18 -0
- package/dist/types/components/layout/Show.d.ts.map +1 -0
- package/dist/types/components/layout/components/layout/HeaderLayout.vue.d.ts +28 -0
- package/dist/types/components/layout/components/layout/HeaderLayout.vue.d.ts.map +1 -0
- package/dist/types/components/layout/components/layout/RouterContent.vue.d.ts +5 -0
- package/dist/types/components/layout/components/layout/RouterContent.vue.d.ts.map +1 -0
- package/dist/types/components/layout/components/menu/Menu.d.ts +3 -0
- package/dist/types/components/layout/components/menu/Menu.d.ts.map +1 -0
- package/dist/types/components/layout/index.d.ts +5 -0
- package/dist/types/components/layout/index.d.ts.map +1 -0
- package/dist/types/components/select/Select.vue.d.ts +97 -0
- package/dist/types/components/select/Select.vue.d.ts.map +1 -0
- package/dist/types/components/select/index.d.ts +3 -0
- package/dist/types/components/select/index.d.ts.map +1 -0
- package/dist/{cjs → types}/components/tab/Tab.vue.d.ts +10 -3
- package/dist/types/components/tab/Tab.vue.d.ts.map +1 -0
- package/dist/{cjs → types}/components/tab/index.d.ts +1 -0
- package/dist/types/components/tab/index.d.ts.map +1 -0
- package/dist/{cjs/components/table/table.d.ts → types/components/table/Table.d.ts} +8 -7
- package/dist/types/components/table/Table.d.ts.map +1 -0
- package/dist/types/components/table/index.d.ts +4 -0
- package/dist/types/components/table/index.d.ts.map +1 -0
- package/dist/{cjs → types}/components/table/interface.d.ts +1 -0
- package/dist/types/components/table/interface.d.ts.map +1 -0
- package/dist/{cjs → types}/index.d.ts +1 -0
- package/dist/types/index.d.ts.map +1 -0
- package/dist/types/utils/useTheme.d.ts +9 -0
- package/dist/types/utils/useTheme.d.ts.map +1 -0
- package/package.json +24 -5
- package/CHANGELOG.md +0 -7
- package/dist/cjs/components/index.d.ts +0 -3
- package/dist/cjs/components/layout/index.d.ts +0 -3
- package/dist/cjs/components/layout/list.cjs.map +0 -1
- package/dist/cjs/components/layout/show.cjs +0 -24
- package/dist/cjs/components/layout/show.cjs.map +0 -1
- package/dist/cjs/components/layout/show.d.ts +0 -5
- package/dist/cjs/components/table/index.d.ts +0 -3
- package/dist/cjs/components/table/table.cjs.map +0 -1
- package/dist/esm/components/layout/index.d.ts +0 -3
- package/dist/esm/components/layout/list.d.ts +0 -5
- package/dist/esm/components/layout/list.mjs.map +0 -1
- package/dist/esm/components/layout/show.d.ts +0 -5
- package/dist/esm/components/layout/show.mjs +0 -20
- package/dist/esm/components/layout/show.mjs.map +0 -1
- package/dist/esm/components/tab/Tab.vue.d.ts +0 -22
- package/dist/esm/components/tab/index.d.ts +0 -2
- package/dist/esm/components/table/index.d.ts +0 -3
- package/dist/esm/components/table/interface.d.ts +0 -45
- package/dist/esm/components/table/table.d.ts +0 -136
- package/dist/esm/components/table/table.mjs.map +0 -1
- package/dist/esm/index.d.ts +0 -7
- package/src/components/index.ts +0 -4
- package/src/components/layout/index.ts +0 -15
- package/src/components/layout/list.tsx +0 -137
- package/src/components/layout/show.tsx +0 -13
- package/src/components/readme.md +0 -4
- package/src/components/tab/Tab.vue +0 -105
- package/src/components/tab/index.ts +0 -9
- package/src/components/tab/style/index.scss +0 -176
- package/src/components/table/index.ts +0 -10
- package/src/components/table/interface.ts +0 -59
- package/src/components/table/table.tsx +0 -491
- package/src/index.scss +0 -1
- package/src/index.ts +0 -31
- package/tsconfig.app.json +0 -29
- package/tsconfig.json +0 -7
- package/tsconfig.node.json +0 -27
- package/vite.config.ts +0 -43
|
@@ -0,0 +1,140 @@
|
|
|
1
|
+
import { defineComponent, watch, computed, resolveComponent, createElementBlock, openBlock, Fragment, createVNode, normalizeClass, unref, withCtx, renderSlot } from 'vue';
|
|
2
|
+
import { useRoute } from 'vue-router';
|
|
3
|
+
import { storeToRefs } from 'pinia';
|
|
4
|
+
import DMenu from './components/menu/Menu.mjs';
|
|
5
|
+
import { useAppStore, useKeepAliveStore } from '@ditari/store';
|
|
6
|
+
import { css } from '@emotion/css';
|
|
7
|
+
import './components/layout/HeaderLayout.vue.mjs';
|
|
8
|
+
import './components/layout/RouterContent.vue.mjs';
|
|
9
|
+
import _sfc_main$1 from './components/layout/HeaderLayout.vue2.mjs';
|
|
10
|
+
import _sfc_main$2 from './components/layout/RouterContent.vue2.mjs';
|
|
11
|
+
|
|
12
|
+
"use strict";
|
|
13
|
+
var _sfc_main = /* @__PURE__ */ defineComponent({
|
|
14
|
+
__name: "Layout",
|
|
15
|
+
setup(__props) {
|
|
16
|
+
const { layout } = storeToRefs(useAppStore());
|
|
17
|
+
const route = useRoute();
|
|
18
|
+
const { layoutStyle, siderStyle, rightStyle, rightContentStyle } = useStyle();
|
|
19
|
+
useKeepAlive();
|
|
20
|
+
function useKeepAlive() {
|
|
21
|
+
const { save } = useKeepAliveStore();
|
|
22
|
+
watch(
|
|
23
|
+
() => route.path,
|
|
24
|
+
() => {
|
|
25
|
+
save(route);
|
|
26
|
+
},
|
|
27
|
+
{
|
|
28
|
+
immediate: true
|
|
29
|
+
}
|
|
30
|
+
);
|
|
31
|
+
}
|
|
32
|
+
function useStyle() {
|
|
33
|
+
const layoutStyle2 = css`
|
|
34
|
+
height: 100%;
|
|
35
|
+
`;
|
|
36
|
+
const transitionStyle = css`
|
|
37
|
+
transition: margin-left 0.4s cubic-bezier(0.22, 1.2, 0.36, 1);
|
|
38
|
+
`;
|
|
39
|
+
const left = computed(
|
|
40
|
+
() => `${layout.value.collapsed ? layout.value.collapsedWidth : layout.value.sideWidth}px`
|
|
41
|
+
);
|
|
42
|
+
const siderStyle2 = computed(
|
|
43
|
+
() => css`
|
|
44
|
+
position: fixed !important;
|
|
45
|
+
top: 0;
|
|
46
|
+
bottom: 0;
|
|
47
|
+
left: 0;
|
|
48
|
+
width: ${layout.value.sideWidth}px;
|
|
49
|
+
|
|
50
|
+
.ant-layout-sider-children {
|
|
51
|
+
display: flex;
|
|
52
|
+
flex-direction: column;
|
|
53
|
+
}
|
|
54
|
+
`
|
|
55
|
+
);
|
|
56
|
+
const rightStyle2 = computed(
|
|
57
|
+
() => css`
|
|
58
|
+
margin-left: ${left.value};
|
|
59
|
+
${transitionStyle}
|
|
60
|
+
`
|
|
61
|
+
);
|
|
62
|
+
const rightContentStyle2 = computed(
|
|
63
|
+
() => css`
|
|
64
|
+
padding-top: ${layout.value.headerHeight}px;
|
|
65
|
+
`
|
|
66
|
+
);
|
|
67
|
+
return {
|
|
68
|
+
layoutStyle: layoutStyle2,
|
|
69
|
+
siderStyle: siderStyle2,
|
|
70
|
+
rightStyle: rightStyle2,
|
|
71
|
+
rightContentStyle: rightContentStyle2
|
|
72
|
+
};
|
|
73
|
+
}
|
|
74
|
+
return (_ctx, _cache) => {
|
|
75
|
+
const _component_a_layout_sider = resolveComponent("a-layout-sider");
|
|
76
|
+
const _component_a_layout_content = resolveComponent("a-layout-content");
|
|
77
|
+
const _component_a_layout = resolveComponent("a-layout");
|
|
78
|
+
const _component_a_back_top = resolveComponent("a-back-top");
|
|
79
|
+
return openBlock(), createElementBlock(
|
|
80
|
+
Fragment,
|
|
81
|
+
null,
|
|
82
|
+
[
|
|
83
|
+
createVNode(_component_a_layout, {
|
|
84
|
+
class: normalizeClass(unref(layoutStyle))
|
|
85
|
+
}, {
|
|
86
|
+
default: withCtx(() => [
|
|
87
|
+
createVNode(_component_a_layout_sider, {
|
|
88
|
+
collapsed: unref(layout).collapsed,
|
|
89
|
+
"onUpdate:collapsed": _cache[0] || (_cache[0] = ($event) => unref(layout).collapsed = $event),
|
|
90
|
+
theme: "light",
|
|
91
|
+
collapsible: "",
|
|
92
|
+
trigger: null,
|
|
93
|
+
class: normalizeClass(unref(siderStyle))
|
|
94
|
+
}, {
|
|
95
|
+
default: withCtx(() => [
|
|
96
|
+
renderSlot(_ctx.$slots, "logo"),
|
|
97
|
+
createVNode(unref(DMenu))
|
|
98
|
+
]),
|
|
99
|
+
_: 3
|
|
100
|
+
/* FORWARDED */
|
|
101
|
+
}, 8, ["collapsed", "class"]),
|
|
102
|
+
createVNode(_component_a_layout, {
|
|
103
|
+
class: normalizeClass(unref(rightStyle))
|
|
104
|
+
}, {
|
|
105
|
+
default: withCtx(() => [
|
|
106
|
+
createVNode(_sfc_main$1, null, {
|
|
107
|
+
default: withCtx(() => [
|
|
108
|
+
renderSlot(_ctx.$slots, "headerRight")
|
|
109
|
+
]),
|
|
110
|
+
_: 3
|
|
111
|
+
/* FORWARDED */
|
|
112
|
+
}),
|
|
113
|
+
createVNode(_component_a_layout_content, {
|
|
114
|
+
class: normalizeClass(unref(rightContentStyle))
|
|
115
|
+
}, {
|
|
116
|
+
default: withCtx(() => [
|
|
117
|
+
createVNode(_sfc_main$2)
|
|
118
|
+
]),
|
|
119
|
+
_: 1
|
|
120
|
+
/* STABLE */
|
|
121
|
+
}, 8, ["class"])
|
|
122
|
+
]),
|
|
123
|
+
_: 3
|
|
124
|
+
/* FORWARDED */
|
|
125
|
+
}, 8, ["class"])
|
|
126
|
+
]),
|
|
127
|
+
_: 3
|
|
128
|
+
/* FORWARDED */
|
|
129
|
+
}, 8, ["class"]),
|
|
130
|
+
createVNode(_component_a_back_top)
|
|
131
|
+
],
|
|
132
|
+
64
|
|
133
|
+
/* STABLE_FRAGMENT */
|
|
134
|
+
);
|
|
135
|
+
};
|
|
136
|
+
}
|
|
137
|
+
});
|
|
138
|
+
|
|
139
|
+
export { _sfc_main as default };
|
|
140
|
+
//# sourceMappingURL=Layout.vue2.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Layout.vue2.mjs","sources":["../../../../src/components/layout/Layout.vue"],"sourcesContent":["<script setup lang=\"ts\">\r\nimport { computed, watch } from \"vue\";\r\nimport { useRoute } from \"vue-router\";\r\nimport { storeToRefs } from \"pinia\";\r\n\r\nimport DMenu from \"./components/menu/Menu\";\r\nimport { useAppStore, useKeepAliveStore } from \"@ditari/store\";\r\nimport { css } from \"@emotion/css\";\r\n\r\nimport HeaderLayout from \"./components/layout/HeaderLayout.vue\";\r\nimport RouterContent from \"./components/layout/RouterContent.vue\";\r\n\r\nconst { layout } = storeToRefs(useAppStore());\r\nconst route = useRoute();\r\n\r\nconst { layoutStyle, siderStyle, rightStyle, rightContentStyle } = useStyle();\r\n\r\nuseKeepAlive();\r\n\r\nfunction useKeepAlive() {\r\n const { save } = useKeepAliveStore();\r\n\r\n watch(\r\n () => route.path,\r\n () => {\r\n save(route);\r\n },\r\n {\r\n immediate: true\r\n }\r\n );\r\n}\r\n\r\nfunction useStyle() {\r\n const layoutStyle = css`\r\n height: 100%;\r\n `;\r\n\r\n const transitionStyle = css`\r\n transition: margin-left 0.4s cubic-bezier(0.22, 1.2, 0.36, 1);\r\n `;\r\n\r\n const left = computed(\r\n () =>\r\n `${layout.value.collapsed ? layout.value.collapsedWidth : layout.value.sideWidth}px`\r\n );\r\n\r\n const siderStyle = computed(\r\n () => css`\r\n position: fixed !important;\r\n top: 0;\r\n bottom: 0;\r\n left: 0;\r\n width: ${layout.value.sideWidth}px;\r\n\r\n .ant-layout-sider-children {\r\n display: flex;\r\n flex-direction: column;\r\n }\r\n `\r\n );\r\n\r\n const rightStyle = computed(\r\n () => css`\r\n margin-left: ${left.value};\r\n ${transitionStyle}\r\n `\r\n );\r\n\r\n const rightContentStyle = computed(\r\n () => css`\r\n padding-top: ${layout.value.headerHeight}px;\r\n `\r\n );\r\n\r\n return {\r\n layoutStyle,\r\n siderStyle,\r\n rightStyle,\r\n rightContentStyle\r\n };\r\n}\r\n</script>\r\n\r\n<template>\r\n <a-layout :class=\"layoutStyle\">\r\n <a-layout-sider\r\n v-model:collapsed=\"layout.collapsed\"\r\n theme=\"light\"\r\n collapsible\r\n :trigger=\"null\"\r\n :class=\"siderStyle\"\r\n >\r\n <slot name=\"logo\"></slot>\r\n <d-menu />\r\n </a-layout-sider>\r\n <a-layout :class=\"rightStyle\">\r\n <header-layout>\r\n <slot name=\"headerRight\"></slot>\r\n </header-layout>\r\n <a-layout-content :class=\"rightContentStyle\">\r\n <RouterContent />\r\n </a-layout-content>\r\n </a-layout>\r\n </a-layout>\r\n <a-back-top></a-back-top>\r\n</template>\r\n\r\n<style scoped></style>\r\n"],"names":["layoutStyle","siderStyle","rightStyle","rightContentStyle"],"mappings":";;;;;;;;;;;;;;;AAYA,IAAA,MAAM,EAAE,MAAA,EAAW,GAAA,WAAA,CAAY,aAAa,CAAA;AAC5C,IAAA,MAAM,QAAQ,QAAS,EAAA;AAEvB,IAAA,MAAM,EAAE,WAAa,EAAA,UAAA,EAAY,UAAY,EAAA,iBAAA,KAAsB,QAAS,EAAA;AAE5E,IAAa,YAAA,EAAA;AAEb,IAAA,SAAS,YAAe,GAAA;AACtB,MAAM,MAAA,EAAE,IAAK,EAAA,GAAI,iBAAkB,EAAA;AAEnC,MAAA,KAAA;AAAA,QACE,MAAM,KAAM,CAAA,IAAA;AAAA,QACZ,MAAM;AACJ,UAAA,IAAA,CAAK,KAAK,CAAA;AAAA,SACZ;AAAA,QACA;AAAA,UACE,SAAW,EAAA;AAAA;AACb,OACF;AAAA;AAGF,IAAA,SAAS,QAAW,GAAA;AAClB,MAAA,MAAMA,YAAc,GAAA,GAAA;AAAA;AAAA,EAAA,CAAA;AAIpB,MAAA,MAAM,eAAkB,GAAA,GAAA;AAAA;AAAA,EAAA,CAAA;AAIxB,MAAA,MAAM,IAAO,GAAA,QAAA;AAAA,QACX,MACE,CAAG,EAAA,MAAA,CAAO,KAAM,CAAA,SAAA,GAAY,OAAO,KAAM,CAAA,cAAA,GAAiB,MAAO,CAAA,KAAA,CAAM,SAAS,CAAA,EAAA;AAAA,OACpF;AAEA,MAAA,MAAMC,WAAa,GAAA,QAAA;AAAA,QACjB,MAAM,GAAA;AAAA;AAAA;AAAA;AAAA;AAAA,aAKK,EAAA,MAAA,CAAO,MAAM,SAAS,CAAA;;AAAA;AAAA;AAAA;AAAA;AAAA,IAAA;AAAA,OAOnC;AAEA,MAAA,MAAMC,WAAa,GAAA,QAAA;AAAA,QACjB,MAAM,GAAA;AAAA,mBAAA,EACW,KAAK,KAAK,CAAA;AAAA,MAAA,EACvB,eAAe;AAAA,IAAA;AAAA,OAErB;AAEA,MAAA,MAAMC,kBAAoB,GAAA,QAAA;AAAA,QACxB,MAAM,GAAA;AAAA,mBACW,EAAA,MAAA,CAAO,MAAM,YAAY,CAAA;AAAA,IAAA;AAAA,OAE5C;AAEA,MAAO,OAAA;AAAA,QACL,WAAAH,EAAAA,YAAAA;AAAA,QACA,UAAAC,EAAAA,WAAAA;AAAA,QACA,UAAAC,EAAAA,WAAAA;AAAA,QACA,iBAAAC,EAAAA;AAAA,OACF;AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
|
|
@@ -1,8 +1,11 @@
|
|
|
1
1
|
import { isVNode, defineComponent, computed, onMounted, ref, nextTick, watch, createVNode } from 'vue';
|
|
2
2
|
import { Flex, Card, Space } from 'ant-design-vue';
|
|
3
|
+
import { storeToRefs } from 'pinia';
|
|
3
4
|
import { useElementSize } from '@vueuse/core';
|
|
5
|
+
import { useAppStore } from '@ditari/store';
|
|
4
6
|
import { css } from '@emotion/css';
|
|
5
7
|
|
|
8
|
+
"use strict";
|
|
6
9
|
function _isSlot(s) {
|
|
7
10
|
return typeof s === "function" || Object.prototype.toString.call(s) === "[object Object]" && !isVNode(s);
|
|
8
11
|
}
|
|
@@ -12,8 +15,8 @@ const tableRootStyle = css`
|
|
|
12
15
|
overflow: hidden;
|
|
13
16
|
`;
|
|
14
17
|
const list = /* @__PURE__ */ defineComponent({
|
|
15
|
-
name: "
|
|
16
|
-
emits: ["
|
|
18
|
+
name: "DListLayout",
|
|
19
|
+
emits: ["change"],
|
|
17
20
|
setup(_, {
|
|
18
21
|
slots
|
|
19
22
|
}) {
|
|
@@ -23,6 +26,9 @@ const list = /* @__PURE__ */ defineComponent({
|
|
|
23
26
|
tableVisible,
|
|
24
27
|
playTableHeight
|
|
25
28
|
} = useTableHeight();
|
|
29
|
+
const {
|
|
30
|
+
layout
|
|
31
|
+
} = storeToRefs(useAppStore());
|
|
26
32
|
const {
|
|
27
33
|
formRef
|
|
28
34
|
} = useForm();
|
|
@@ -46,6 +52,10 @@ const list = /* @__PURE__ */ defineComponent({
|
|
|
46
52
|
left: 0;
|
|
47
53
|
overflow: hidden;
|
|
48
54
|
`;
|
|
55
|
+
const cardStyle = css`
|
|
56
|
+
box-shadow: none !important;
|
|
57
|
+
`;
|
|
58
|
+
const listStyle = computed(() => css``);
|
|
49
59
|
onMounted(() => {
|
|
50
60
|
playTableHeight();
|
|
51
61
|
});
|
|
@@ -88,11 +98,14 @@ const list = /* @__PURE__ */ defineComponent({
|
|
|
88
98
|
let _slot;
|
|
89
99
|
return createVNode(Flex, {
|
|
90
100
|
"vertical": true,
|
|
101
|
+
"class": listStyle.value,
|
|
91
102
|
"style": {
|
|
92
|
-
height: "100%"
|
|
103
|
+
height: "100%",
|
|
104
|
+
padding: "24px"
|
|
93
105
|
}
|
|
94
106
|
}, {
|
|
95
107
|
default: () => [slots.form && createVNode(Card, {
|
|
108
|
+
"class": cardStyle,
|
|
96
109
|
"ref": formRef,
|
|
97
110
|
"style": {
|
|
98
111
|
marginBottom: "20px"
|
|
@@ -108,6 +121,7 @@ const list = /* @__PURE__ */ defineComponent({
|
|
|
108
121
|
"vertical": true
|
|
109
122
|
}, {
|
|
110
123
|
default: () => [createVNode(Card, {
|
|
124
|
+
"class": cardStyle,
|
|
111
125
|
"style": {
|
|
112
126
|
height: "100%"
|
|
113
127
|
},
|
|
@@ -161,4 +175,4 @@ const list = /* @__PURE__ */ defineComponent({
|
|
|
161
175
|
});
|
|
162
176
|
|
|
163
177
|
export { list as default };
|
|
164
|
-
//# sourceMappingURL=
|
|
178
|
+
//# sourceMappingURL=List.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"List.mjs","sources":["../../../../src/components/layout/List.tsx"],"sourcesContent":["import {\r\n computed,\r\n defineComponent,\r\n nextTick,\r\n onMounted,\r\n ref,\r\n watch\r\n} from \"vue\";\r\nimport { Card, Flex, Space } from \"ant-design-vue\";\r\nimport { storeToRefs } from \"pinia\";\r\nimport { useElementSize } from \"@vueuse/core\";\r\n\r\nimport { useAppStore } from \"@ditari/store\";\r\nimport { css } from \"@emotion/css\";\r\n\r\nconst tableRootStyle = css`\r\n height: 100%;\r\n position: relative;\r\n overflow: hidden;\r\n`;\r\n\r\nconst list = defineComponent({\r\n name: \"DListLayout\",\r\n emits: [\"change\"],\r\n setup(_, { slots }) {\r\n const { tableRef, height, tableVisible, playTableHeight } =\r\n useTableHeight();\r\n const { layout } = storeToRefs(useAppStore());\r\n const { formRef } = useForm();\r\n // 使用 computed 来动态计算样式\r\n const maskDivStyle = computed(() => {\r\n return css`\r\n position: absolute;\r\n top: 0;\r\n right: 0;\r\n bottom: 0;\r\n left: 0;\r\n z-index: 1;\r\n background: white;\r\n display: ${tableVisible.value ? \"block\" : \"none\"};\r\n `;\r\n });\r\n\r\n const tableWrapperStyle = css`\r\n position: absolute;\r\n top: 0;\r\n right: 0;\r\n bottom: 0;\r\n left: 0;\r\n overflow: hidden;\r\n `;\r\n\r\n const cardStyle = css`\r\n box-shadow: none !important;\r\n `;\r\n\r\n const listStyle = computed(() => css``);\r\n\r\n onMounted(() => {\r\n playTableHeight();\r\n });\r\n\r\n function useTableHeight() {\r\n const tableRef = ref();\r\n const height = ref(0);\r\n const tableVisible = ref(true);\r\n\r\n function playTableHeight() {\r\n tableVisible.value = true;\r\n height.value = tableRef?.value?.$el.offsetHeight;\r\n nextTick(() => {\r\n setTimeout(() => {\r\n tableVisible.value = false;\r\n }, 10);\r\n });\r\n }\r\n\r\n return {\r\n tableRef,\r\n height,\r\n tableVisible,\r\n playTableHeight\r\n };\r\n }\r\n\r\n function useForm() {\r\n const formRef = ref(null);\r\n const { height: formHeight } = useElementSize(formRef);\r\n watch(\r\n () => formHeight.value,\r\n () => {\r\n nextTick(() => {\r\n playTableHeight();\r\n });\r\n }\r\n );\r\n\r\n return {\r\n formRef\r\n };\r\n }\r\n\r\n return () => (\r\n <Flex\r\n vertical={true}\r\n class={listStyle.value}\r\n style={{ height: \"100%\", padding: \"24px\" }}\r\n >\r\n {slots.form && (\r\n <Card\r\n class={cardStyle}\r\n ref={formRef}\r\n style={{ marginBottom: \"20px\" }}\r\n bodyStyle={{ padding: \"24px 24px 0 24px\" }}\r\n bordered={false}\r\n >\r\n {slots.form()}\r\n </Card>\r\n )}\r\n\r\n <Flex flex={1} vertical={true}>\r\n <Card\r\n class={cardStyle}\r\n style={{ height: \"100%\" }}\r\n bodyStyle={{ height: \"100%\" }}\r\n bordered={false}\r\n >\r\n <Flex style={{ height: \"100%\" }} vertical={true}>\r\n <Space style={{ marginBottom: \"20px\" }}>{slots.tools?.()}</Space>\r\n <Flex\r\n ref={tableRef}\r\n flex={1}\r\n style={{ height: \"100%\" }}\r\n vertical={true}\r\n >\r\n <div class={tableRootStyle}>\r\n <div class={maskDivStyle.value}></div>\r\n <div class={tableWrapperStyle}>\r\n {slots.table?.({ height: height.value })}\r\n </div>\r\n </div>\r\n </Flex>\r\n </Flex>\r\n </Card>\r\n </Flex>\r\n </Flex>\r\n );\r\n }\r\n});\r\n\r\nexport default list;\r\n"],"names":["_isSlot","s","Object","prototype","toString","call","_isVNode","tableRootStyle","css","list","name","emits","setup","_","slots","tableRef","height","tableVisible","playTableHeight","useTableHeight","layout","storeToRefs","useAppStore","formRef","useForm","maskDivStyle","computed","value","tableWrapperStyle","cardStyle","listStyle","onMounted","ref","$el","offsetHeight","nextTick","setTimeout","formHeight","useElementSize","watch","_slot","_createVNode","Flex","padding","default","form","Card","marginBottom","Space","tools","table"],"mappings":"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"}
|
|
@@ -0,0 +1,130 @@
|
|
|
1
|
+
import { defineComponent, computed, createVNode, ref } from 'vue';
|
|
2
|
+
import { useRoute, useRouter } from 'vue-router';
|
|
3
|
+
import { Flex, PageHeader } from 'ant-design-vue';
|
|
4
|
+
import { storeToRefs } from 'pinia';
|
|
5
|
+
import { useWindowScroll } from '@vueuse/core';
|
|
6
|
+
import { LeftOutlined } from '@ant-design/icons-vue';
|
|
7
|
+
import { useAppStore, useNavTabStore } from '@ditari/store';
|
|
8
|
+
import { css } from '@emotion/css';
|
|
9
|
+
|
|
10
|
+
"use strict";
|
|
11
|
+
const getProps = () => {
|
|
12
|
+
return {
|
|
13
|
+
close: {
|
|
14
|
+
type: Boolean,
|
|
15
|
+
default: false
|
|
16
|
+
}
|
|
17
|
+
};
|
|
18
|
+
};
|
|
19
|
+
const show = /* @__PURE__ */ defineComponent({
|
|
20
|
+
name: "DShowLayout",
|
|
21
|
+
props: getProps(),
|
|
22
|
+
emits: ["update:value", "change"],
|
|
23
|
+
setup(props, {
|
|
24
|
+
emit,
|
|
25
|
+
slots,
|
|
26
|
+
expose
|
|
27
|
+
}) {
|
|
28
|
+
emit("update:value", "ddd");
|
|
29
|
+
const {
|
|
30
|
+
layout
|
|
31
|
+
} = storeToRefs(useAppStore());
|
|
32
|
+
const {
|
|
33
|
+
deleteTabs
|
|
34
|
+
} = useNavTabStore();
|
|
35
|
+
const route = useRoute();
|
|
36
|
+
const router = useRouter();
|
|
37
|
+
const {
|
|
38
|
+
y
|
|
39
|
+
} = useWindowScroll();
|
|
40
|
+
const pageHeaderStyle = computed(() => css`
|
|
41
|
+
position: sticky;
|
|
42
|
+
top: ${layout.value.headerHeight}px;
|
|
43
|
+
z-index: 10;
|
|
44
|
+
padding: 4px 24px;
|
|
45
|
+
transition: all 0.3s;
|
|
46
|
+
|
|
47
|
+
${y.value > 0 ? "box-shadow: 6px 0 10px rgba(0, 0, 0, 0.15);" : ""}
|
|
48
|
+
.ant-page-header-back {
|
|
49
|
+
height: 100%;
|
|
50
|
+
|
|
51
|
+
.ant-page-header-back-button {
|
|
52
|
+
height: 100%;
|
|
53
|
+
padding: 0 6px !important;
|
|
54
|
+
display: flex !important;
|
|
55
|
+
align-items: center;
|
|
56
|
+
justify-content: center;
|
|
57
|
+
}
|
|
58
|
+
}
|
|
59
|
+
`);
|
|
60
|
+
const contentStyle = computed(() => css`
|
|
61
|
+
padding: 10px 10px ${slots.footer ? "70px" : "0"};
|
|
62
|
+
`);
|
|
63
|
+
const footerStyle = computed(() => css`
|
|
64
|
+
position: fixed;
|
|
65
|
+
right: 0;
|
|
66
|
+
bottom: 0;
|
|
67
|
+
left: ${layout.value.collapsed ? layout.value.collapsedWidth : layout.value.sideWidth}px;
|
|
68
|
+
z-index: 10;
|
|
69
|
+
padding: 10px;
|
|
70
|
+
background: #fff;
|
|
71
|
+
box-shadow: 6px 0 10px rgba(0, 0, 0, 0.15);
|
|
72
|
+
transition: left 0.4s cubic-bezier(0.22, 1.2, 0.36, 1);
|
|
73
|
+
`);
|
|
74
|
+
const pageTitle = () => createVNode("div", null, [route.meta.title || "\u65E0\u6807\u9898"]);
|
|
75
|
+
const ghost = ref(false);
|
|
76
|
+
const onBack = () => {
|
|
77
|
+
if (props.close) {
|
|
78
|
+
deleteTabs(route.fullPath);
|
|
79
|
+
router.go(-1);
|
|
80
|
+
} else {
|
|
81
|
+
router.go(-1);
|
|
82
|
+
}
|
|
83
|
+
};
|
|
84
|
+
const onClosePage = () => {
|
|
85
|
+
deleteTabs(route.fullPath);
|
|
86
|
+
router.go(-1);
|
|
87
|
+
};
|
|
88
|
+
expose({
|
|
89
|
+
close: onClosePage
|
|
90
|
+
});
|
|
91
|
+
return () => createVNode(Flex, {
|
|
92
|
+
"vertical": true
|
|
93
|
+
}, {
|
|
94
|
+
default: () => {
|
|
95
|
+
var _a, _b;
|
|
96
|
+
return [createVNode(PageHeader, {
|
|
97
|
+
"ghost": ghost.value,
|
|
98
|
+
"class": pageHeaderStyle.value,
|
|
99
|
+
"onBack": () => onBack(),
|
|
100
|
+
"title": pageTitle()
|
|
101
|
+
}, {
|
|
102
|
+
backIcon: () => createVNode("div", null, [createVNode(LeftOutlined, {
|
|
103
|
+
"style": {
|
|
104
|
+
fontSize: "26px"
|
|
105
|
+
}
|
|
106
|
+
}, null)]),
|
|
107
|
+
extra: () => {
|
|
108
|
+
var _a2;
|
|
109
|
+
return (_a2 = slots.extra) == null ? void 0 : _a2.call(slots);
|
|
110
|
+
},
|
|
111
|
+
footer: () => {
|
|
112
|
+
var _a2;
|
|
113
|
+
return (_a2 = slots.footer) == null ? void 0 : _a2.call(slots);
|
|
114
|
+
},
|
|
115
|
+
subTitle: () => {
|
|
116
|
+
var _a2;
|
|
117
|
+
return (_a2 = slots.subTitle) == null ? void 0 : _a2.call(slots);
|
|
118
|
+
}
|
|
119
|
+
}), createVNode("div", {
|
|
120
|
+
"class": contentStyle.value
|
|
121
|
+
}, [(_a = slots.default) == null ? void 0 : _a.call(slots)]), createVNode("div", {
|
|
122
|
+
"class": footerStyle.value
|
|
123
|
+
}, [(_b = slots.footer) == null ? void 0 : _b.call(slots)])];
|
|
124
|
+
}
|
|
125
|
+
});
|
|
126
|
+
}
|
|
127
|
+
});
|
|
128
|
+
|
|
129
|
+
export { show as default };
|
|
130
|
+
//# sourceMappingURL=Show.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Show.mjs","sources":["../../../../src/components/layout/Show.tsx"],"sourcesContent":["import { computed, defineComponent, ref } from \"vue\";\r\nimport { useRoute, useRouter } from \"vue-router\";\r\nimport { Flex, PageHeader } from \"ant-design-vue\";\r\nimport { storeToRefs } from \"pinia\";\r\nimport { useWindowScroll } from \"@vueuse/core\";\r\n\r\nimport { LeftOutlined } from \"@ant-design/icons-vue\";\r\nimport { useAppStore, useNavTabStore } from \"@ditari/store\";\r\nimport { css } from \"@emotion/css\";\r\n\r\nconst getProps = () => {\r\n return {\r\n close: {\r\n type: Boolean,\r\n default: false\r\n }\r\n };\r\n};\r\nconst show = defineComponent({\r\n name: \"DShowLayout\",\r\n props: getProps(),\r\n emits: [\"update:value\", \"change\"],\r\n setup(props, { emit, slots, expose }) {\r\n emit(\"update:value\", \"ddd\");\r\n const { layout } = storeToRefs(useAppStore());\r\n const { deleteTabs } = useNavTabStore();\r\n const route = useRoute();\r\n const router = useRouter();\r\n\r\n const { y } = useWindowScroll();\r\n\r\n const pageHeaderStyle = computed(\r\n () => css`\r\n position: sticky;\r\n top: ${layout.value.headerHeight}px;\r\n z-index: 10;\r\n padding: 4px 24px;\r\n transition: all 0.3s;\r\n\r\n ${y.value > 0 ? \"box-shadow: 6px 0 10px rgba(0, 0, 0, 0.15);\" : \"\"}\r\n .ant-page-header-back {\r\n height: 100%;\r\n\r\n .ant-page-header-back-button {\r\n height: 100%;\r\n padding: 0 6px !important;\r\n display: flex !important;\r\n align-items: center;\r\n justify-content: center;\r\n }\r\n }\r\n `\r\n );\r\n const contentStyle = computed(\r\n () => css`\r\n padding: 10px 10px ${slots.footer ? \"70px\" : \"0\"};\r\n `\r\n );\r\n const footerStyle = computed(\r\n () => css`\r\n position: fixed;\r\n right: 0;\r\n bottom: 0;\r\n left: ${layout.value.collapsed\r\n ? layout.value.collapsedWidth\r\n : layout.value.sideWidth}px;\r\n z-index: 10;\r\n padding: 10px;\r\n background: #fff;\r\n box-shadow: 6px 0 10px rgba(0, 0, 0, 0.15);\r\n transition: left 0.4s cubic-bezier(0.22, 1.2, 0.36, 1);\r\n `\r\n );\r\n const pageTitle = () => <div>{route.meta.title || \"无标题\"}</div>;\r\n const ghost = ref(false);\r\n\r\n const onBack = () => {\r\n if (props.close) {\r\n // 返回关闭标签\r\n deleteTabs(route.fullPath);\r\n router.go(-1);\r\n } else {\r\n // 不关闭标签\r\n router.go(-1);\r\n }\r\n };\r\n\r\n const onClosePage = () => {\r\n deleteTabs(route.fullPath);\r\n router.go(-1);\r\n };\r\n\r\n expose({\r\n close: onClosePage\r\n });\r\n\r\n return () => (\r\n <Flex vertical={true}>\r\n <PageHeader\r\n ghost={ghost.value}\r\n class={pageHeaderStyle.value}\r\n onBack={() => onBack()}\r\n title={pageTitle()}\r\n >\r\n {{\r\n backIcon: () => (\r\n <div>\r\n <LeftOutlined style={{ fontSize: \"26px\" }} />\r\n </div>\r\n ),\r\n extra: () => slots.extra?.(),\r\n footer: () => slots.footer?.(),\r\n subTitle: () => slots.subTitle?.()\r\n }}\r\n </PageHeader>\r\n <div class={contentStyle.value}>{slots.default?.()}</div>\r\n <div class={footerStyle.value}>{slots.footer?.()}</div>\r\n </Flex>\r\n );\r\n }\r\n});\r\n\r\nexport default show;\r\n"],"names":["getProps","close","type","Boolean","default","show","name","props","emits","setup","emit","slots","expose","layout","storeToRefs","useAppStore","deleteTabs","useNavTabStore","route","useRoute","router","useRouter","y","useWindowScroll","pageHeaderStyle","computed","css","value","headerHeight","contentStyle","footer","footerStyle","collapsed","collapsedWidth","sideWidth","pageTitle","_createVNode","meta","title","ghost","ref","onBack","fullPath","go","onClosePage","Flex","PageHeader","backIcon","LeftOutlined","fontSize","extra","_a","subTitle"],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"HeaderLayout.vue.mjs","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;"}
|
|
@@ -0,0 +1,116 @@
|
|
|
1
|
+
import { defineComponent, computed, resolveComponent, createElementBlock, openBlock, normalizeClass, unref, createElementVNode, createBlock, createVNode, renderSlot } from 'vue';
|
|
2
|
+
import { theme } from 'ant-design-vue';
|
|
3
|
+
import { storeToRefs } from 'pinia';
|
|
4
|
+
import { MenuUnfoldOutlined, MenuFoldOutlined } from '@ant-design/icons-vue';
|
|
5
|
+
import { useAppStore } from '@ditari/store';
|
|
6
|
+
import { css } from '@emotion/css';
|
|
7
|
+
|
|
8
|
+
"use strict";
|
|
9
|
+
var _sfc_main = /* @__PURE__ */ defineComponent({
|
|
10
|
+
__name: "HeaderLayout",
|
|
11
|
+
setup(__props) {
|
|
12
|
+
const { layout } = storeToRefs(useAppStore());
|
|
13
|
+
const { headerStyle, headerTabStyle, collapsedStyle, rightStyle } = useStyle();
|
|
14
|
+
function useStyle() {
|
|
15
|
+
const { useToken } = theme;
|
|
16
|
+
const { token } = useToken();
|
|
17
|
+
const left = computed(
|
|
18
|
+
() => `${layout.value.collapsed ? layout.value.collapsedWidth : layout.value.sideWidth}px`
|
|
19
|
+
);
|
|
20
|
+
const headerStyle2 = computed(
|
|
21
|
+
() => css`
|
|
22
|
+
position: fixed;
|
|
23
|
+
top: 0;
|
|
24
|
+
right: 0;
|
|
25
|
+
background-color: ${token.value.colorBgContainer};
|
|
26
|
+
left: ${left.value};
|
|
27
|
+
height: ${layout.value.headerHeight}px;
|
|
28
|
+
transition: left 0.4s cubic-bezier(0.22, 1.2, 0.36, 1);
|
|
29
|
+
display: flex;
|
|
30
|
+
align-items: flex-end;
|
|
31
|
+
`
|
|
32
|
+
);
|
|
33
|
+
const headerTabStyle2 = computed(
|
|
34
|
+
() => css`
|
|
35
|
+
flex: 1;
|
|
36
|
+
overflow: hidden;
|
|
37
|
+
padding-right: 10px;
|
|
38
|
+
`
|
|
39
|
+
);
|
|
40
|
+
const collapsedStyle2 = computed(
|
|
41
|
+
() => css`
|
|
42
|
+
padding: 0 10px;
|
|
43
|
+
height: 100%;
|
|
44
|
+
display: flex;
|
|
45
|
+
align-items: center;
|
|
46
|
+
justify-content: center;
|
|
47
|
+
cursor: pointer;
|
|
48
|
+
`
|
|
49
|
+
);
|
|
50
|
+
const rightStyle2 = computed(
|
|
51
|
+
() => css`
|
|
52
|
+
height: 100%;
|
|
53
|
+
`
|
|
54
|
+
);
|
|
55
|
+
return {
|
|
56
|
+
headerStyle: headerStyle2,
|
|
57
|
+
headerTabStyle: headerTabStyle2,
|
|
58
|
+
collapsedStyle: collapsedStyle2,
|
|
59
|
+
rightStyle: rightStyle2
|
|
60
|
+
};
|
|
61
|
+
}
|
|
62
|
+
return (_ctx, _cache) => {
|
|
63
|
+
const _component_Tab = resolveComponent("Tab");
|
|
64
|
+
return openBlock(), createElementBlock(
|
|
65
|
+
"div",
|
|
66
|
+
{
|
|
67
|
+
class: normalizeClass(unref(headerStyle))
|
|
68
|
+
},
|
|
69
|
+
[
|
|
70
|
+
createElementVNode(
|
|
71
|
+
"div",
|
|
72
|
+
{
|
|
73
|
+
class: normalizeClass(unref(collapsedStyle)),
|
|
74
|
+
onClick: _cache[0] || (_cache[0] = ($event) => unref(layout).collapsed = !unref(layout).collapsed)
|
|
75
|
+
},
|
|
76
|
+
[
|
|
77
|
+
unref(layout).collapsed ? (openBlock(), createBlock(unref(MenuUnfoldOutlined), {
|
|
78
|
+
key: 0,
|
|
79
|
+
class: "trigger"
|
|
80
|
+
})) : (openBlock(), createBlock(unref(MenuFoldOutlined), { key: 1 }))
|
|
81
|
+
],
|
|
82
|
+
2
|
|
83
|
+
/* CLASS */
|
|
84
|
+
),
|
|
85
|
+
createElementVNode(
|
|
86
|
+
"div",
|
|
87
|
+
{
|
|
88
|
+
class: normalizeClass(unref(headerTabStyle))
|
|
89
|
+
},
|
|
90
|
+
[
|
|
91
|
+
createVNode(_component_Tab)
|
|
92
|
+
],
|
|
93
|
+
2
|
|
94
|
+
/* CLASS */
|
|
95
|
+
),
|
|
96
|
+
createElementVNode(
|
|
97
|
+
"div",
|
|
98
|
+
{
|
|
99
|
+
class: normalizeClass(unref(rightStyle))
|
|
100
|
+
},
|
|
101
|
+
[
|
|
102
|
+
renderSlot(_ctx.$slots, "default")
|
|
103
|
+
],
|
|
104
|
+
2
|
|
105
|
+
/* CLASS */
|
|
106
|
+
)
|
|
107
|
+
],
|
|
108
|
+
2
|
|
109
|
+
/* CLASS */
|
|
110
|
+
);
|
|
111
|
+
};
|
|
112
|
+
}
|
|
113
|
+
});
|
|
114
|
+
|
|
115
|
+
export { _sfc_main as default };
|
|
116
|
+
//# sourceMappingURL=HeaderLayout.vue2.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"HeaderLayout.vue2.mjs","sources":["../../../../../../src/components/layout/components/layout/HeaderLayout.vue"],"sourcesContent":["<script setup lang=\"ts\">\r\nimport { computed, type ComputedRef } from \"vue\";\r\nimport { theme } from \"ant-design-vue\";\r\nimport { storeToRefs } from \"pinia\";\r\n\r\nimport { MenuFoldOutlined, MenuUnfoldOutlined } from \"@ant-design/icons-vue\";\r\nimport { useAppStore } from \"@ditari/store\";\r\nimport { css } from \"@emotion/css\";\r\nimport type { GlobalToken } from \"ant-design-vue/es/theme/interface\";\r\n\r\n// import Tab from \"../../../tab/Tab.vue\";\r\n\r\nconst { layout } = storeToRefs(useAppStore());\r\nconst { headerStyle, headerTabStyle, collapsedStyle, rightStyle } = useStyle();\r\n\r\nfunction useStyle(): {\r\n headerStyle: ComputedRef<string>;\r\n headerTabStyle: ComputedRef<string>;\r\n collapsedStyle: ComputedRef<string>;\r\n rightStyle: ComputedRef<string>;\r\n} {\r\n const { useToken } = theme;\r\n const { token }: { token: ComputedRef<GlobalToken> } = useToken();\r\n\r\n const left = computed(\r\n () =>\r\n `${layout.value.collapsed ? layout.value.collapsedWidth : layout.value.sideWidth}px`\r\n );\r\n\r\n const headerStyle = computed(\r\n () => css`\r\n position: fixed;\r\n top: 0;\r\n right: 0;\r\n background-color: ${token.value.colorBgContainer};\r\n left: ${left.value};\r\n height: ${layout.value.headerHeight}px;\r\n transition: left 0.4s cubic-bezier(0.22, 1.2, 0.36, 1);\r\n display: flex;\r\n align-items: flex-end;\r\n `\r\n );\r\n\r\n const headerTabStyle = computed(\r\n () => css`\r\n flex: 1;\r\n overflow: hidden;\r\n padding-right: 10px;\r\n `\r\n );\r\n\r\n const collapsedStyle = computed(\r\n () => css`\r\n padding: 0 10px;\r\n height: 100%;\r\n display: flex;\r\n align-items: center;\r\n justify-content: center;\r\n cursor: pointer;\r\n `\r\n );\r\n\r\n const rightStyle = computed(\r\n () => css`\r\n height: 100%;\r\n `\r\n );\r\n\r\n return {\r\n headerStyle,\r\n headerTabStyle,\r\n collapsedStyle,\r\n rightStyle\r\n };\r\n}\r\n</script>\r\n\r\n<template>\r\n <div :class=\"headerStyle\">\r\n <div :class=\"collapsedStyle\" @click=\"layout.collapsed = !layout.collapsed\">\r\n <menu-unfold-outlined v-if=\"layout.collapsed\" class=\"trigger\" />\r\n <menu-fold-outlined v-else />\r\n </div>\r\n <div :class=\"headerTabStyle\">\r\n <Tab />\r\n </div>\r\n <div :class=\"rightStyle\">\r\n <slot></slot>\r\n </div>\r\n </div>\r\n</template>\r\n\r\n<style scoped></style>\r\n"],"names":["headerStyle","headerTabStyle","collapsedStyle","rightStyle"],"mappings":";;;;;;;;;;;AAYA,IAAA,MAAM,EAAE,MAAA,EAAW,GAAA,WAAA,CAAY,aAAa,CAAA;AAC5C,IAAA,MAAM,EAAE,WAAa,EAAA,cAAA,EAAgB,cAAgB,EAAA,UAAA,KAAe,QAAS,EAAA;AAE7E,IAAA,SAAS,QAKP,GAAA;AACA,MAAM,MAAA,EAAE,UAAa,GAAA,KAAA;AACrB,MAAM,MAAA,EAAE,KAAM,EAAA,GAAyC,QAAS,EAAA;AAEhE,MAAA,MAAM,IAAO,GAAA,QAAA;AAAA,QACX,MACE,CAAG,EAAA,MAAA,CAAO,KAAM,CAAA,SAAA,GAAY,OAAO,KAAM,CAAA,cAAA,GAAiB,MAAO,CAAA,KAAA,CAAM,SAAS,CAAA,EAAA;AAAA,OACpF;AAEA,MAAA,MAAMA,YAAc,GAAA,QAAA;AAAA,QAClB,MAAM,GAAA;AAAA;AAAA;AAAA;AAAA,wBAIgB,EAAA,KAAA,CAAM,MAAM,gBAAgB,CAAA;AAAA,YAAA,EACxC,KAAK,KAAK,CAAA;AAAA,cACR,EAAA,MAAA,CAAO,MAAM,YAAY,CAAA;AAAA;AAAA;AAAA;AAAA,IAAA;AAAA,OAKvC;AAEA,MAAA,MAAMC,eAAiB,GAAA,QAAA;AAAA,QACrB,MAAM,GAAA;AAAA;AAAA;AAAA;AAAA,IAAA;AAAA,OAKR;AAEA,MAAA,MAAMC,eAAiB,GAAA,QAAA;AAAA,QACrB,MAAM,GAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,IAAA;AAAA,OAQR;AAEA,MAAA,MAAMC,WAAa,GAAA,QAAA;AAAA,QACjB,MAAM,GAAA;AAAA;AAAA,IAAA;AAAA,OAGR;AAEA,MAAO,OAAA;AAAA,QACL,WAAAH,EAAAA,YAAAA;AAAA,QACA,cAAAC,EAAAA,eAAAA;AAAA,QACA,cAAAC,EAAAA,eAAAA;AAAA,QACA,UAAAC,EAAAA;AAAA,OACF;AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"RouterContent.vue.mjs","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;"}
|
|
@@ -0,0 +1,43 @@
|
|
|
1
|
+
import { defineComponent, resolveComponent, createBlock, openBlock, withCtx, createVNode, Transition, KeepAlive, unref, resolveDynamicComponent } from 'vue';
|
|
2
|
+
import { useKeepAliveStore } from '@ditari/store';
|
|
3
|
+
|
|
4
|
+
"use strict";
|
|
5
|
+
var _sfc_main = /* @__PURE__ */ defineComponent({
|
|
6
|
+
__name: "RouterContent",
|
|
7
|
+
setup(__props) {
|
|
8
|
+
const { get: keepAliveNames } = useKeepAliveStore();
|
|
9
|
+
return (_ctx, _cache) => {
|
|
10
|
+
const _component_router_view = resolveComponent("router-view");
|
|
11
|
+
return openBlock(), createBlock(_component_router_view, null, {
|
|
12
|
+
default: withCtx(({ Component }) => [
|
|
13
|
+
createVNode(
|
|
14
|
+
Transition,
|
|
15
|
+
{
|
|
16
|
+
name: "main",
|
|
17
|
+
mode: "out-in",
|
|
18
|
+
appear: ""
|
|
19
|
+
},
|
|
20
|
+
{
|
|
21
|
+
default: withCtx(() => [
|
|
22
|
+
(openBlock(), createBlock(KeepAlive, { include: unref(keepAliveNames) }, [
|
|
23
|
+
(openBlock(), createBlock(resolveDynamicComponent(Component), {
|
|
24
|
+
key: _ctx.$route.path
|
|
25
|
+
}))
|
|
26
|
+
], 1032, ["include"]))
|
|
27
|
+
]),
|
|
28
|
+
_: 2
|
|
29
|
+
/* DYNAMIC */
|
|
30
|
+
},
|
|
31
|
+
1024
|
|
32
|
+
/* DYNAMIC_SLOTS */
|
|
33
|
+
)
|
|
34
|
+
]),
|
|
35
|
+
_: 1
|
|
36
|
+
/* STABLE */
|
|
37
|
+
});
|
|
38
|
+
};
|
|
39
|
+
}
|
|
40
|
+
});
|
|
41
|
+
|
|
42
|
+
export { _sfc_main as default };
|
|
43
|
+
//# sourceMappingURL=RouterContent.vue2.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"RouterContent.vue2.mjs","sources":["../../../../../../src/components/layout/components/layout/RouterContent.vue"],"sourcesContent":["<script setup lang=\"ts\">\r\nimport { useKeepAliveStore } from \"@ditari/store\";\r\n\r\nconst { get: keepAliveNames } = useKeepAliveStore();\r\n</script>\r\n\r\n<template>\r\n <router-view v-slot=\"{ Component }\">\r\n <transition name=\"main\" mode=\"out-in\" appear>\r\n <keep-alive :include=\"keepAliveNames\">\r\n <component :is=\"Component\" :key=\"$route.path\" />\r\n </keep-alive>\r\n </transition>\r\n </router-view>\r\n</template>\r\n\r\n<style scoped></style>\r\n"],"names":[],"mappings":";;;;;;;AAGA,IAAA,MAAM,EAAE,GAAA,EAAK,cAAe,EAAA,GAAI,iBAAkB,EAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
|