@ditari/store 1.0.8 → 5.0.1
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 +2 -44
- package/dist/cjs/index.cjs +15 -15
- package/dist/cjs/index.cjs.map +1 -1
- package/dist/cjs/modules/useAppStore.cjs +31 -0
- package/dist/cjs/modules/useAppStore.cjs.map +1 -0
- package/dist/cjs/modules/{Breadcrumb.cjs → useBreadStore.cjs} +4 -3
- package/dist/cjs/modules/useBreadStore.cjs.map +1 -0
- package/dist/cjs/modules/{DataDictionary.cjs → useDicStore.cjs} +13 -5
- package/dist/cjs/modules/useDicStore.cjs.map +1 -0
- package/dist/cjs/modules/{KeepAlive.cjs → useKeepAliveStore.cjs} +5 -2
- package/dist/cjs/modules/useKeepAliveStore.cjs.map +1 -0
- package/dist/cjs/modules/useMenuStore.cjs +26 -0
- package/dist/cjs/modules/useMenuStore.cjs.map +1 -0
- package/dist/cjs/modules/{NavTab.cjs → useNavTabStore.cjs} +10 -16
- package/dist/cjs/modules/useNavTabStore.cjs.map +1 -0
- package/dist/cjs/modules/{User.cjs → useUserStore.cjs} +5 -2
- package/dist/cjs/modules/useUserStore.cjs.map +1 -0
- package/dist/cjs/pinia.d.cjs +6 -0
- package/dist/cjs/pinia.d.cjs.map +1 -0
- package/dist/cjs/types.cjs +4 -1
- package/dist/cjs/types.cjs.map +1 -1
- package/dist/esm/index.mjs +9 -7
- package/dist/esm/index.mjs.map +1 -1
- package/dist/esm/modules/useAppStore.mjs +27 -0
- package/dist/esm/modules/useAppStore.mjs.map +1 -0
- package/dist/esm/modules/{Breadcrumb.mjs → useBreadStore.mjs} +4 -3
- package/dist/esm/modules/useBreadStore.mjs.map +1 -0
- package/dist/esm/modules/{DataDictionary.mjs → useDicStore.mjs} +11 -5
- package/dist/esm/modules/useDicStore.mjs.map +1 -0
- package/dist/esm/modules/{KeepAlive.mjs → useKeepAliveStore.mjs} +3 -2
- package/dist/esm/modules/useKeepAliveStore.mjs.map +1 -0
- package/dist/esm/modules/useMenuStore.mjs +22 -0
- package/dist/esm/modules/useMenuStore.mjs.map +1 -0
- package/dist/esm/modules/{NavTab.mjs → useNavTabStore.mjs} +6 -15
- package/dist/esm/modules/useNavTabStore.mjs.map +1 -0
- package/dist/esm/modules/{User.mjs → useUserStore.mjs} +3 -2
- package/dist/esm/modules/useUserStore.mjs.map +1 -0
- package/dist/esm/pinia.d.mjs +4 -0
- package/dist/esm/pinia.d.mjs.map +1 -0
- package/dist/esm/types.mjs +4 -2
- package/dist/esm/types.mjs.map +1 -1
- package/dist/types/index.d.ts +8 -0
- package/dist/types/index.d.ts.map +1 -0
- package/dist/types/modules/useAppStore.d.ts +14 -0
- package/dist/types/modules/useAppStore.d.ts.map +1 -0
- package/dist/{esm/modules/Breadcrumb.d.ts → types/modules/useBreadStore.d.ts} +3 -2
- package/dist/types/modules/useBreadStore.d.ts.map +1 -0
- package/dist/types/modules/useDicStore.d.ts +41 -0
- package/dist/types/modules/useDicStore.d.ts.map +1 -0
- package/dist/{esm/modules/KeepAlive.d.ts → types/modules/useKeepAliveStore.d.ts} +7 -2
- package/dist/types/modules/useKeepAliveStore.d.ts.map +1 -0
- package/dist/types/modules/useMenuStore.d.ts +11 -0
- package/dist/types/modules/useMenuStore.d.ts.map +1 -0
- package/dist/types/modules/useNavTabStore.d.ts +47 -0
- package/dist/types/modules/useNavTabStore.d.ts.map +1 -0
- package/dist/{cjs/modules/User.d.ts → types/modules/useUserStore.d.ts} +8 -6
- package/dist/types/modules/useUserStore.d.ts.map +1 -0
- package/dist/types/types.d.ts +9 -0
- package/dist/types/types.d.ts.map +1 -0
- package/package.json +5 -5
- package/src/index.ts +7 -12
- package/src/modules/useAppStore.ts +43 -0
- package/src/modules/{Breadcrumb.ts → useBreadStore.ts} +26 -25
- package/src/modules/useDicStore.ts +76 -0
- package/src/modules/{KeepAlive.ts → useKeepAliveStore.ts} +49 -47
- package/src/modules/useMenuStore.ts +28 -0
- package/src/modules/{NavTab.ts → useNavTabStore.ts} +108 -115
- package/src/modules/{User.ts → useUserStore.ts} +34 -30
- package/src/pinia.d.ts +9 -0
- package/src/types.ts +3 -1
- package/tsconfig.json +13 -0
- package/dist/cjs/index.d.ts +0 -12
- package/dist/cjs/modules/Breadcrumb.cjs.map +0 -1
- package/dist/cjs/modules/Breadcrumb.d.ts +0 -10
- package/dist/cjs/modules/DataDictionary.cjs.map +0 -1
- package/dist/cjs/modules/DataDictionary.d.ts +0 -28
- package/dist/cjs/modules/KeepAlive.cjs.map +0 -1
- package/dist/cjs/modules/KeepAlive.d.ts +0 -21
- package/dist/cjs/modules/Menu.cjs +0 -31
- package/dist/cjs/modules/Menu.cjs.map +0 -1
- package/dist/cjs/modules/Menu.d.ts +0 -17
- package/dist/cjs/modules/NavTab.cjs.map +0 -1
- package/dist/cjs/modules/NavTab.d.ts +0 -64
- package/dist/cjs/modules/Settings.cjs +0 -116
- package/dist/cjs/modules/Settings.cjs.map +0 -1
- package/dist/cjs/modules/Settings.d.ts +0 -43
- package/dist/cjs/modules/User.cjs.map +0 -1
- package/dist/cjs/types.d.ts +0 -7
- package/dist/esm/index.d.ts +0 -12
- package/dist/esm/modules/Breadcrumb.mjs.map +0 -1
- package/dist/esm/modules/DataDictionary.d.ts +0 -28
- package/dist/esm/modules/DataDictionary.mjs.map +0 -1
- package/dist/esm/modules/KeepAlive.mjs.map +0 -1
- package/dist/esm/modules/Menu.d.ts +0 -17
- package/dist/esm/modules/Menu.mjs +0 -29
- package/dist/esm/modules/Menu.mjs.map +0 -1
- package/dist/esm/modules/NavTab.d.ts +0 -64
- package/dist/esm/modules/NavTab.mjs.map +0 -1
- package/dist/esm/modules/Settings.d.ts +0 -43
- package/dist/esm/modules/Settings.mjs +0 -114
- package/dist/esm/modules/Settings.mjs.map +0 -1
- package/dist/esm/modules/User.d.ts +0 -21
- package/dist/esm/modules/User.mjs.map +0 -1
- package/dist/esm/types.d.ts +0 -7
- package/src/modules/DataDictionary.ts +0 -55
- package/src/modules/Menu.ts +0 -29
- package/src/modules/Settings.ts +0 -121
|
@@ -1,8 +1,9 @@
|
|
|
1
1
|
import { defineStore } from 'pinia';
|
|
2
|
-
import { useKeepAliveStore } from './KeepAlive.mjs';
|
|
3
2
|
import { NAV_TAB_ID } from '../types.mjs';
|
|
3
|
+
import useKeepAliveStore from './useKeepAliveStore.mjs';
|
|
4
4
|
|
|
5
|
-
|
|
5
|
+
"use strict";
|
|
6
|
+
const useNavTabStore = defineStore(NAV_TAB_ID, {
|
|
6
7
|
state: () => {
|
|
7
8
|
return {
|
|
8
9
|
// 多标签列表
|
|
@@ -14,19 +15,9 @@ const useNavTabsStore = defineStore(NAV_TAB_ID, {
|
|
|
14
15
|
getters: {
|
|
15
16
|
getList: (state) => {
|
|
16
17
|
return state.list;
|
|
17
|
-
},
|
|
18
|
-
getActiveKey: (state) => {
|
|
19
|
-
return state.activeKey;
|
|
20
18
|
}
|
|
21
19
|
},
|
|
22
20
|
actions: {
|
|
23
|
-
/**
|
|
24
|
-
* 设置激活的标签
|
|
25
|
-
* @param key
|
|
26
|
-
*/
|
|
27
|
-
setActiveKey(key) {
|
|
28
|
-
this.activeKey = key;
|
|
29
|
-
},
|
|
30
21
|
/**
|
|
31
22
|
* 保存标签信息
|
|
32
23
|
* @param route
|
|
@@ -67,7 +58,7 @@ const useNavTabsStore = defineStore(NAV_TAB_ID, {
|
|
|
67
58
|
*/
|
|
68
59
|
deleteTabs(key) {
|
|
69
60
|
const { deleteKeepAlive } = useKeepAliveStore();
|
|
70
|
-
const curRoute = this.list.find((v) => v.fullPath === key);
|
|
61
|
+
const curRoute = this.list.find((v) => v.fullPath === key) || {};
|
|
71
62
|
this.list.splice(
|
|
72
63
|
this.list.findIndex((v) => v.fullPath === key),
|
|
73
64
|
1
|
|
@@ -93,5 +84,5 @@ const useNavTabsStore = defineStore(NAV_TAB_ID, {
|
|
|
93
84
|
persist: true
|
|
94
85
|
});
|
|
95
86
|
|
|
96
|
-
export {
|
|
97
|
-
//# sourceMappingURL=
|
|
87
|
+
export { useNavTabStore as default, useNavTabStore };
|
|
88
|
+
//# sourceMappingURL=useNavTabStore.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"useNavTabStore.mjs","sources":["../../../src/modules/useNavTabStore.ts"],"sourcesContent":["/**\r\n * 多标签数据\r\n */\r\nimport { defineStore } from \"pinia\";\r\n\r\nimport { NAV_TAB_ID } from \"../types\";\r\nimport useKeepAliveStore from \"./useKeepAliveStore\";\r\nimport type {\r\n LocationQuery,\r\n RouteLocationNormalized,\r\n RouteMeta,\r\n RouteParams\r\n} from \"vue-router\";\r\n\r\nexport interface NavTabsState {\r\n path?: string;\r\n fullPath?: string;\r\n query?: LocationQuery;\r\n params?: RouteParams;\r\n meta?: RouteMeta;\r\n name?: string;\r\n}\r\n\r\nexport const useNavTabStore = defineStore(NAV_TAB_ID, {\r\n state: () => {\r\n return {\r\n // 多标签列表\r\n list: [] as NavTabsState[],\r\n // 当前激活的地址\r\n activeKey: \"\" as string\r\n };\r\n },\r\n getters: {\r\n getList: (state): NavTabsState[] => {\r\n return state.list;\r\n }\r\n },\r\n actions: {\r\n /**\r\n * 保存标签信息\r\n * @param route\r\n */\r\n save(route: RouteLocationNormalized) {\r\n if (!route.meta?.title) {\r\n // 没有设置title,则不进入缓存\r\n return;\r\n }\r\n const flag = this.list.some(\r\n (item: NavTabsState) => item.path === route.path\r\n );\r\n if (flag) {\r\n // 如果有相同的路由变化,更新对应的参数信息\r\n this.list.forEach((item: NavTabsState) => {\r\n if (item.path === route.path) {\r\n item.query = route.query;\r\n item.fullPath = route.fullPath;\r\n item.params = route.params;\r\n item.meta = route.meta;\r\n item.name = <string>route.name || \"\";\r\n }\r\n });\r\n return;\r\n }\r\n const data: NavTabsState = {\r\n path: route.path,\r\n fullPath: route.fullPath,\r\n query: route.query,\r\n params: route.params,\r\n meta: route.meta,\r\n name: <string>route.name || \"\"\r\n };\r\n this.list.push(data);\r\n },\r\n /**\r\n * 删除标签\r\n * @param key url路径\r\n */\r\n deleteTabs(key: string) {\r\n const { deleteKeepAlive } = useKeepAliveStore();\r\n const curRoute: NavTabsState =\r\n this.list.find(v => v.fullPath === key) || {};\r\n this.list.splice(\r\n this.list.findIndex(v => v.fullPath === key),\r\n 1\r\n );\r\n // 根据name 删除缓存的组件\r\n if (curRoute?.name) {\r\n deleteKeepAlive(curRoute.name);\r\n }\r\n },\r\n /**\r\n * 设置标题\r\n * @param title 标题\r\n * @param path url\r\n */\r\n setNavTitle(title: string, path: string) {\r\n for (let i = 0; i < this.list.length; i++) {\r\n if (this.list[i].fullPath === path) {\r\n this.list[i].meta!.title = title;\r\n break;\r\n }\r\n }\r\n }\r\n },\r\n persist: true\r\n});\r\n\r\nexport default useNavTabStore;\r\n"],"names":[],"mappings":";;;;;AAuBa,MAAA,cAAA,GAAiB,YAAY,UAAY,EAAA;AAAA,EACpD,OAAO,MAAM;AACX,IAAO,OAAA;AAAA;AAAA,MAEL,MAAM,EAAC;AAAA;AAAA,MAEP,SAAW,EAAA;AAAA,KACb;AAAA,GACF;AAAA,EACA,OAAS,EAAA;AAAA,IACP,OAAA,EAAS,CAAC,KAA0B,KAAA;AAClC,MAAA,OAAO,KAAM,CAAA,IAAA;AAAA;AACf,GACF;AAAA,EACA,OAAS,EAAA;AAAA;AAAA;AAAA;AAAA;AAAA,IAKP,KAAK,KAAgC,EAAA;AA1CzC,MAAA,IAAA,EAAA;AA2CM,MAAA,IAAI,EAAC,CAAA,EAAA,GAAA,KAAA,CAAM,IAAN,KAAA,IAAA,GAAA,KAAA,CAAA,GAAA,EAAA,CAAY,KAAO,CAAA,EAAA;AAEtB,QAAA;AAAA;AAEF,MAAM,MAAA,IAAA,GAAO,KAAK,IAAK,CAAA,IAAA;AAAA,QACrB,CAAC,IAAA,KAAuB,IAAK,CAAA,IAAA,KAAS,KAAM,CAAA;AAAA,OAC9C;AACA,MAAA,IAAI,IAAM,EAAA;AAER,QAAK,IAAA,CAAA,IAAA,CAAK,OAAQ,CAAA,CAAC,IAAuB,KAAA;AACxC,UAAI,IAAA,IAAA,CAAK,IAAS,KAAA,KAAA,CAAM,IAAM,EAAA;AAC5B,YAAA,IAAA,CAAK,QAAQ,KAAM,CAAA,KAAA;AACnB,YAAA,IAAA,CAAK,WAAW,KAAM,CAAA,QAAA;AACtB,YAAA,IAAA,CAAK,SAAS,KAAM,CAAA,MAAA;AACpB,YAAA,IAAA,CAAK,OAAO,KAAM,CAAA,IAAA;AAClB,YAAK,IAAA,CAAA,IAAA,GAAe,MAAM,IAAQ,IAAA,EAAA;AAAA;AACpC,SACD,CAAA;AACD,QAAA;AAAA;AAEF,MAAA,MAAM,IAAqB,GAAA;AAAA,QACzB,MAAM,KAAM,CAAA,IAAA;AAAA,QACZ,UAAU,KAAM,CAAA,QAAA;AAAA,QAChB,OAAO,KAAM,CAAA,KAAA;AAAA,QACb,QAAQ,KAAM,CAAA,MAAA;AAAA,QACd,MAAM,KAAM,CAAA,IAAA;AAAA,QACZ,IAAA,EAAc,MAAM,IAAQ,IAAA;AAAA,OAC9B;AACA,MAAK,IAAA,CAAA,IAAA,CAAK,KAAK,IAAI,CAAA;AAAA,KACrB;AAAA;AAAA;AAAA;AAAA;AAAA,IAKA,WAAW,GAAa,EAAA;AACtB,MAAM,MAAA,EAAE,eAAgB,EAAA,GAAI,iBAAkB,EAAA;AAC9C,MAAM,MAAA,QAAA,GACJ,KAAK,IAAK,CAAA,IAAA,CAAK,OAAK,CAAE,CAAA,QAAA,KAAa,GAAG,CAAA,IAAK,EAAC;AAC9C,MAAA,IAAA,CAAK,IAAK,CAAA,MAAA;AAAA,QACR,KAAK,IAAK,CAAA,SAAA,CAAU,CAAK,CAAA,KAAA,CAAA,CAAE,aAAa,GAAG,CAAA;AAAA,QAC3C;AAAA,OACF;AAEA,MAAA,IAAI,qCAAU,IAAM,EAAA;AAClB,QAAA,eAAA,CAAgB,SAAS,IAAI,CAAA;AAAA;AAC/B,KACF;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,IAMA,WAAA,CAAY,OAAe,IAAc,EAAA;AACvC,MAAA,KAAA,IAAS,IAAI,CAAG,EAAA,CAAA,GAAI,IAAK,CAAA,IAAA,CAAK,QAAQ,CAAK,EAAA,EAAA;AACzC,QAAA,IAAI,IAAK,CAAA,IAAA,CAAK,CAAC,CAAA,CAAE,aAAa,IAAM,EAAA;AAClC,UAAA,IAAA,CAAK,IAAK,CAAA,CAAC,CAAE,CAAA,IAAA,CAAM,KAAQ,GAAA,KAAA;AAC3B,UAAA;AAAA;AACF;AACF;AACF,GACF;AAAA,EACA,OAAS,EAAA;AACX,CAAC;;;;"}
|
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
import { defineStore } from 'pinia';
|
|
2
2
|
import { USER_ID } from '../types.mjs';
|
|
3
3
|
|
|
4
|
+
"use strict";
|
|
4
5
|
const useUserStore = defineStore(USER_ID, {
|
|
5
6
|
state: () => ({
|
|
6
7
|
token: void 0,
|
|
@@ -25,5 +26,5 @@ const useUserStore = defineStore(USER_ID, {
|
|
|
25
26
|
persist: true
|
|
26
27
|
});
|
|
27
28
|
|
|
28
|
-
export { useUserStore };
|
|
29
|
-
//# sourceMappingURL=
|
|
29
|
+
export { useUserStore as default };
|
|
30
|
+
//# sourceMappingURL=useUserStore.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"useUserStore.mjs","sources":["../../../src/modules/useUserStore.ts"],"sourcesContent":["import { defineStore } from \"pinia\";\r\n\r\nimport { USER_ID } from \"../types\";\r\n\r\nexport interface UserState {\r\n token: string | undefined;\r\n userInfo: unknown;\r\n}\r\n\r\nconst useUserStore = defineStore(USER_ID, {\r\n state: (): UserState => ({\r\n token: undefined,\r\n userInfo: undefined\r\n }),\r\n getters: {\r\n getToken: state => state.token,\r\n getUserInfo: state => state.userInfo\r\n },\r\n actions: {\r\n /**\r\n * 保存token\r\n * @param token\r\n */\r\n saveToken(token: string) {\r\n this.token = token;\r\n },\r\n saveUserInfo(data: unknown) {\r\n this.userInfo = data;\r\n }\r\n },\r\n persist: true\r\n});\r\n\r\nexport default useUserStore;\r\n"],"names":[],"mappings":";;;;AASM,MAAA,YAAA,GAAe,YAAY,OAAS,EAAA;AAAA,EACxC,OAAO,OAAkB;AAAA,IACvB,KAAO,EAAA,KAAA,CAAA;AAAA,IACP,QAAU,EAAA,KAAA;AAAA,GACZ,CAAA;AAAA,EACA,OAAS,EAAA;AAAA,IACP,QAAA,EAAU,WAAS,KAAM,CAAA,KAAA;AAAA,IACzB,WAAA,EAAa,WAAS,KAAM,CAAA;AAAA,GAC9B;AAAA,EACA,OAAS,EAAA;AAAA;AAAA;AAAA;AAAA;AAAA,IAKP,UAAU,KAAe,EAAA;AACvB,MAAA,IAAA,CAAK,KAAQ,GAAA,KAAA;AAAA,KACf;AAAA,IACA,aAAa,IAAe,EAAA;AAC1B,MAAA,IAAA,CAAK,QAAW,GAAA,IAAA;AAAA;AAClB,GACF;AAAA,EACA,OAAS,EAAA;AACX,CAAC;;;;"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"pinia.d.mjs","sources":[],"sourcesContent":[],"names":[],"mappings":";;"}
|
package/dist/esm/types.mjs
CHANGED
|
@@ -1,4 +1,5 @@
|
|
|
1
|
-
|
|
1
|
+
"use strict";
|
|
2
|
+
const id_prefix = "_STORE_";
|
|
2
3
|
const BREADCRUMB_ID = `${id_prefix}BREADCRUMB_ID`;
|
|
3
4
|
const DATA_DICTIONARY_ID = `${id_prefix}DATA_DICTIONARY_ID`;
|
|
4
5
|
const KEEP_ALIVE_ID = `${id_prefix}KEEP_ALIVE_ID`;
|
|
@@ -6,6 +7,7 @@ const MENU_ID = `${id_prefix}MENU_ID`;
|
|
|
6
7
|
const NAV_TAB_ID = `${id_prefix}NAV_TABS_ID`;
|
|
7
8
|
const SETTINGS_ID = `${id_prefix}SETTINGS_ID`;
|
|
8
9
|
const USER_ID = `${id_prefix}USER_ID`;
|
|
10
|
+
const APP_ID = `${id_prefix}APP_ID`;
|
|
9
11
|
|
|
10
|
-
export { BREADCRUMB_ID, DATA_DICTIONARY_ID, KEEP_ALIVE_ID, MENU_ID, NAV_TAB_ID, SETTINGS_ID, USER_ID };
|
|
12
|
+
export { APP_ID, BREADCRUMB_ID, DATA_DICTIONARY_ID, KEEP_ALIVE_ID, MENU_ID, NAV_TAB_ID, SETTINGS_ID, USER_ID };
|
|
11
13
|
//# sourceMappingURL=types.mjs.map
|
package/dist/esm/types.mjs.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.mjs","sources":["../../src/types.ts"],"sourcesContent":["const id_prefix = \"
|
|
1
|
+
{"version":3,"file":"types.mjs","sources":["../../src/types.ts"],"sourcesContent":["const id_prefix = \"_STORE_\";\n//面包屑\nexport const BREADCRUMB_ID = `${id_prefix}BREADCRUMB_ID`;\n//字典ID\nexport const DATA_DICTIONARY_ID = `${id_prefix}DATA_DICTIONARY_ID`;\n//缓存组件ID\nexport const KEEP_ALIVE_ID = `${id_prefix}KEEP_ALIVE_ID`;\n//菜单ID\nexport const MENU_ID = `${id_prefix}MENU_ID`;\n//多标签ID\nexport const NAV_TAB_ID = `${id_prefix}NAV_TABS_ID`;\n//用户信息ID\nexport const SETTINGS_ID = `${id_prefix}SETTINGS_ID`;\n//用户信息ID\nexport const USER_ID = `${id_prefix}USER_ID`;\n//存储APP配置信息\nexport const APP_ID = `${id_prefix}APP_ID`;\n"],"names":[],"mappings":";AAAA,MAAM,SAAY,GAAA,SAAA;AAEL,MAAA,aAAA,GAAgB,GAAG,SAAS,CAAA,aAAA;AAE5B,MAAA,kBAAA,GAAqB,GAAG,SAAS,CAAA,kBAAA;AAEjC,MAAA,aAAA,GAAgB,GAAG,SAAS,CAAA,aAAA;AAE5B,MAAA,OAAA,GAAU,GAAG,SAAS,CAAA,OAAA;AAEtB,MAAA,UAAA,GAAa,GAAG,SAAS,CAAA,WAAA;AAEzB,MAAA,WAAA,GAAc,GAAG,SAAS,CAAA,WAAA;AAE1B,MAAA,OAAA,GAAU,GAAG,SAAS,CAAA,OAAA;AAEtB,MAAA,MAAA,GAAS,GAAG,SAAS,CAAA,MAAA;;;;"}
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
export { default as useAppStore } from "./modules/useAppStore";
|
|
2
|
+
export * from "./modules/useBreadStore";
|
|
3
|
+
export { default as useDicStore } from "./modules/useDicStore";
|
|
4
|
+
export { default as useKeepAliveStore } from "./modules/useKeepAliveStore";
|
|
5
|
+
export { default as useMenuStore } from "./modules/useMenuStore";
|
|
6
|
+
export { default as useNavTabStore } from "./modules/useNavTabStore";
|
|
7
|
+
export { default as useUserStore } from "./modules/useUserStore";
|
|
8
|
+
//# sourceMappingURL=index.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,IAAI,WAAW,EAAE,MAAM,uBAAuB,CAAC;AAC/D,cAAc,yBAAyB,CAAC;AACxC,OAAO,EAAE,OAAO,IAAI,WAAW,EAAE,MAAM,uBAAuB,CAAC;AAC/D,OAAO,EAAE,OAAO,IAAI,iBAAiB,EAAE,MAAM,6BAA6B,CAAC;AAC3E,OAAO,EAAE,OAAO,IAAI,YAAY,EAAE,MAAM,wBAAwB,CAAC;AACjE,OAAO,EAAE,OAAO,IAAI,cAAc,EAAE,MAAM,0BAA0B,CAAC;AACrE,OAAO,EAAE,OAAO,IAAI,YAAY,EAAE,MAAM,wBAAwB,CAAC"}
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
import type { ThemeConfig } from "ant-design-vue/es/config-provider/context";
|
|
2
|
+
interface App {
|
|
3
|
+
theme: ThemeConfig;
|
|
4
|
+
mode: "light" | "dark";
|
|
5
|
+
layout: {
|
|
6
|
+
sideWidth: number;
|
|
7
|
+
headerHeight: number;
|
|
8
|
+
collapsedWidth: number;
|
|
9
|
+
collapsed: boolean;
|
|
10
|
+
};
|
|
11
|
+
}
|
|
12
|
+
declare const useAppStore: import("pinia").StoreDefinition<"_STORE_APP_ID", App, {}, {}>;
|
|
13
|
+
export default useAppStore;
|
|
14
|
+
//# sourceMappingURL=useAppStore.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"useAppStore.d.ts","sourceRoot":"","sources":["../../../src/modules/useAppStore.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,2CAA2C,CAAC;AAE7E,UAAU,GAAG;IACX,KAAK,EAAE,WAAW,CAAC;IAEnB,IAAI,EAAE,OAAO,GAAG,MAAM,CAAC;IACvB,MAAM,EAAE;QAEN,SAAS,EAAE,MAAM,CAAC;QAElB,YAAY,EAAE,MAAM,CAAC;QAErB,cAAc,EAAE,MAAM,CAAC;QAEvB,SAAS,EAAE,OAAO,CAAC;KACpB,CAAC;CACH;AAED,QAAA,MAAM,WAAW,+DAkBf,CAAC;AAEH,eAAe,WAAW,CAAC"}
|
|
@@ -1,10 +1,11 @@
|
|
|
1
1
|
export interface BreadcrumbState {
|
|
2
2
|
breadcrumbs: [];
|
|
3
3
|
}
|
|
4
|
-
export declare const
|
|
4
|
+
export declare const useBreadStore: import("pinia").StoreDefinition<"_STORE_BREADCRUMB_ID", BreadcrumbState, {
|
|
5
5
|
getBreadcrumb: (state: {
|
|
6
6
|
breadcrumbs: [];
|
|
7
7
|
} & import("pinia").PiniaCustomStateProperties<BreadcrumbState>) => [];
|
|
8
8
|
}, {
|
|
9
|
-
saveBreadcrumb(data:
|
|
9
|
+
saveBreadcrumb(data: never): void;
|
|
10
10
|
}>;
|
|
11
|
+
//# sourceMappingURL=useBreadStore.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"useBreadStore.d.ts","sourceRoot":"","sources":["../../../src/modules/useBreadStore.ts"],"names":[],"mappings":"AAQA,MAAM,WAAW,eAAe;IAC9B,WAAW,EAAE,EAAE,CAAC;CACjB;AAED,eAAO,MAAM,aAAa;;qBAHX,EAAE;;;yBAWQ,KAAK;EAK5B,CAAC"}
|
|
@@ -0,0 +1,41 @@
|
|
|
1
|
+
export interface DictionaryItem {
|
|
2
|
+
value: string;
|
|
3
|
+
label: string;
|
|
4
|
+
}
|
|
5
|
+
export interface DictionaryList {
|
|
6
|
+
[key: string]: DictionaryItem[];
|
|
7
|
+
}
|
|
8
|
+
export interface DataDictionaryState {
|
|
9
|
+
list: DictionaryList;
|
|
10
|
+
}
|
|
11
|
+
declare const useDicStore: import("pinia").StoreDefinition<"_STORE_DATA_DICTIONARY_ID", DataDictionaryState, {
|
|
12
|
+
/**
|
|
13
|
+
* 根据 key 获取字典列表
|
|
14
|
+
* @param state
|
|
15
|
+
*/
|
|
16
|
+
getDicByKey: (state: {
|
|
17
|
+
list: DictionaryList;
|
|
18
|
+
} & import("pinia").PiniaCustomStateProperties<DataDictionaryState>) => (key: string) => DictionaryItem[];
|
|
19
|
+
/**
|
|
20
|
+
* 根据字典名称和字典的 value 获取对应的中文
|
|
21
|
+
* @param state
|
|
22
|
+
*/
|
|
23
|
+
getDicTextByValue: (state: {
|
|
24
|
+
list: DictionaryList;
|
|
25
|
+
} & import("pinia").PiniaCustomStateProperties<DataDictionaryState>) => (key: string, value: string) => string;
|
|
26
|
+
/**
|
|
27
|
+
* 根据文字匹配对应的 value
|
|
28
|
+
* @param state
|
|
29
|
+
*/
|
|
30
|
+
getDicValueByText: (state: {
|
|
31
|
+
list: DictionaryList;
|
|
32
|
+
} & import("pinia").PiniaCustomStateProperties<DataDictionaryState>) => (key: string, text: string) => string;
|
|
33
|
+
}, {
|
|
34
|
+
/**
|
|
35
|
+
* 保存字典数据
|
|
36
|
+
* @param data 字典数据
|
|
37
|
+
*/
|
|
38
|
+
save(data: DictionaryList): void;
|
|
39
|
+
}>;
|
|
40
|
+
export default useDicStore;
|
|
41
|
+
//# sourceMappingURL=useDicStore.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"useDicStore.d.ts","sourceRoot":"","sources":["../../../src/modules/useDicStore.ts"],"names":[],"mappings":"AAKA,MAAM,WAAW,cAAc;IAC7B,KAAK,EAAE,MAAM,CAAC;IACd,KAAK,EAAE,MAAM,CAAC;CACf;AAGD,MAAM,WAAW,cAAc;IAC7B,CAAC,GAAG,EAAE,MAAM,GAAG,cAAc,EAAE,CAAC;CACjC;AAGD,MAAM,WAAW,mBAAmB;IAClC,IAAI,EAAE,cAAc,CAAC;CACtB;AAED,QAAA,MAAM,WAAW;IAKb;;;OAGG;;cAXC,cAAc;kFAaH,MAAM,KAAG,cAAc,EAAE;IAKxC;;;OAGG;;cArBC,cAAc;kFAuBH,MAAM,SAAS,MAAM,KAAG,MAAM;IAS7C;;;OAGG;;cAnCC,cAAc;kFAqCH,MAAM,QAAQ,MAAM,KAAG,MAAM;;IAU5C;;;OAGG;eACQ,cAAc;EAK3B,CAAC;AAEH,eAAe,WAAW,CAAC"}
|
|
@@ -1,5 +1,8 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
1
|
+
/**
|
|
2
|
+
* 缓存组件name数据
|
|
3
|
+
*/
|
|
4
|
+
import { type RouteLocationNormalized } from "vue-router";
|
|
5
|
+
declare const useKeepAliveStore: import("pinia").StoreDefinition<"_STORE_KEEP_ALIVE_ID", {
|
|
3
6
|
list: string[];
|
|
4
7
|
}, {
|
|
5
8
|
get: (state: {
|
|
@@ -19,3 +22,5 @@ export declare const useKeepAliveStore: import("pinia").StoreDefinition<string,
|
|
|
19
22
|
*/
|
|
20
23
|
save(route: RouteLocationNormalized): void;
|
|
21
24
|
}>;
|
|
25
|
+
export default useKeepAliveStore;
|
|
26
|
+
//# sourceMappingURL=useKeepAliveStore.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"useKeepAliveStore.d.ts","sourceRoot":"","sources":["../../../src/modules/useKeepAliveStore.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,OAAO,EAAE,KAAK,uBAAuB,EAAE,MAAM,YAAY,CAAC;AAK1D,QAAA,MAAM,iBAAiB;UAGL,MAAM,EAAE;;;cAAR,MAAM,EAAE;;cAAR,MAAM,EAAE;WAIR,MAAM,EAAE;;IAKtB;;;OAGG;0BACmB,MAAM;IAM5B;;;OAGG;gBACS,uBAAuB;EAYrC,CAAC;AAEH,eAAe,iBAAiB,CAAC"}
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
import type { ItemType } from "ant-design-vue";
|
|
2
|
+
interface Menu {
|
|
3
|
+
openKeys: string[];
|
|
4
|
+
selectedKeys: string[];
|
|
5
|
+
data: ItemType[];
|
|
6
|
+
}
|
|
7
|
+
declare const useMenuStore: import("pinia").StoreDefinition<"_STORE_MENU_ID", Menu, {}, {
|
|
8
|
+
save(data: ItemType[]): void;
|
|
9
|
+
}>;
|
|
10
|
+
export default useMenuStore;
|
|
11
|
+
//# sourceMappingURL=useMenuStore.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"useMenuStore.d.ts","sourceRoot":"","sources":["../../../src/modules/useMenuStore.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,gBAAgB,CAAC;AAE/C,UAAU,IAAI;IACZ,QAAQ,EAAE,MAAM,EAAE,CAAC;IACnB,YAAY,EAAE,MAAM,EAAE,CAAC;IACvB,IAAI,EAAE,QAAQ,EAAE,CAAC;CAClB;AAED,QAAA,MAAM,YAAY;eASH,QAAQ,EAAE;EAKvB,CAAC;AAEH,eAAe,YAAY,CAAC"}
|
|
@@ -0,0 +1,47 @@
|
|
|
1
|
+
import type { LocationQuery, RouteLocationNormalized, RouteMeta, RouteParams } from "vue-router";
|
|
2
|
+
export interface NavTabsState {
|
|
3
|
+
path?: string;
|
|
4
|
+
fullPath?: string;
|
|
5
|
+
query?: LocationQuery;
|
|
6
|
+
params?: RouteParams;
|
|
7
|
+
meta?: RouteMeta;
|
|
8
|
+
name?: string;
|
|
9
|
+
}
|
|
10
|
+
export declare const useNavTabStore: import("pinia").StoreDefinition<"_STORE_NAV_TABS_ID", {
|
|
11
|
+
list: NavTabsState[];
|
|
12
|
+
activeKey: string;
|
|
13
|
+
}, {
|
|
14
|
+
getList: (state: {
|
|
15
|
+
list: {
|
|
16
|
+
path?: string | undefined;
|
|
17
|
+
fullPath?: string | undefined;
|
|
18
|
+
query?: LocationQuery | undefined;
|
|
19
|
+
params?: RouteParams | undefined;
|
|
20
|
+
meta?: RouteMeta | undefined;
|
|
21
|
+
name?: string | undefined;
|
|
22
|
+
}[];
|
|
23
|
+
activeKey: string;
|
|
24
|
+
} & import("pinia").PiniaCustomStateProperties<{
|
|
25
|
+
list: NavTabsState[];
|
|
26
|
+
activeKey: string;
|
|
27
|
+
}>) => NavTabsState[];
|
|
28
|
+
}, {
|
|
29
|
+
/**
|
|
30
|
+
* 保存标签信息
|
|
31
|
+
* @param route
|
|
32
|
+
*/
|
|
33
|
+
save(route: RouteLocationNormalized): void;
|
|
34
|
+
/**
|
|
35
|
+
* 删除标签
|
|
36
|
+
* @param key url路径
|
|
37
|
+
*/
|
|
38
|
+
deleteTabs(key: string): void;
|
|
39
|
+
/**
|
|
40
|
+
* 设置标题
|
|
41
|
+
* @param title 标题
|
|
42
|
+
* @param path url
|
|
43
|
+
*/
|
|
44
|
+
setNavTitle(title: string, path: string): void;
|
|
45
|
+
}>;
|
|
46
|
+
export default useNavTabStore;
|
|
47
|
+
//# sourceMappingURL=useNavTabStore.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"useNavTabStore.d.ts","sourceRoot":"","sources":["../../../src/modules/useNavTabStore.ts"],"names":[],"mappings":"AAOA,OAAO,KAAK,EACV,aAAa,EACb,uBAAuB,EACvB,SAAS,EACT,WAAW,EACZ,MAAM,YAAY,CAAC;AAEpB,MAAM,WAAW,YAAY;IAC3B,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,KAAK,CAAC,EAAE,aAAa,CAAC;IACtB,MAAM,CAAC,EAAE,WAAW,CAAC;IACrB,IAAI,CAAC,EAAE,SAAS,CAAC;IACjB,IAAI,CAAC,EAAE,MAAM,CAAC;CACf;AAED,eAAO,MAAM,cAAc;UAIT,YAAY,EAAE;eAET,MAAM;;;;mBAdpB,MAAM;uBACF,MAAM;oBACT,aAAa;qBACZ,WAAW;mBACb,SAAS;mBACT,MAAM;;mBASQ,MAAM;;cAFX,YAAY,EAAE;mBAET,MAAM;WAIP,YAAY,EAAE;;IAKhC;;;OAGG;gBACS,uBAAuB;IA+BnC;;;OAGG;oBACa,MAAM;IAatB;;;;OAIG;uBACgB,MAAM,QAAQ,MAAM;EAUzC,CAAC;AAEH,eAAe,cAAc,CAAC"}
|
|
@@ -1,21 +1,23 @@
|
|
|
1
1
|
export interface UserState {
|
|
2
2
|
token: string | undefined;
|
|
3
|
-
userInfo:
|
|
3
|
+
userInfo: unknown;
|
|
4
4
|
}
|
|
5
|
-
|
|
5
|
+
declare const useUserStore: import("pinia").StoreDefinition<"_STORE_USER_ID", UserState, {
|
|
6
6
|
getToken: (state: {
|
|
7
7
|
token: string | undefined;
|
|
8
|
-
userInfo:
|
|
8
|
+
userInfo: unknown;
|
|
9
9
|
} & import("pinia").PiniaCustomStateProperties<UserState>) => string | undefined;
|
|
10
10
|
getUserInfo: (state: {
|
|
11
11
|
token: string | undefined;
|
|
12
|
-
userInfo:
|
|
13
|
-
} & import("pinia").PiniaCustomStateProperties<UserState>) =>
|
|
12
|
+
userInfo: unknown;
|
|
13
|
+
} & import("pinia").PiniaCustomStateProperties<UserState>) => unknown;
|
|
14
14
|
}, {
|
|
15
15
|
/**
|
|
16
16
|
* 保存token
|
|
17
17
|
* @param token
|
|
18
18
|
*/
|
|
19
19
|
saveToken(token: string): void;
|
|
20
|
-
saveUserInfo(data:
|
|
20
|
+
saveUserInfo(data: unknown): void;
|
|
21
21
|
}>;
|
|
22
|
+
export default useUserStore;
|
|
23
|
+
//# sourceMappingURL=useUserStore.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"useUserStore.d.ts","sourceRoot":"","sources":["../../../src/modules/useUserStore.ts"],"names":[],"mappings":"AAIA,MAAM,WAAW,SAAS;IACxB,KAAK,EAAE,MAAM,GAAG,SAAS,CAAC;IAC1B,QAAQ,EAAE,OAAO,CAAC;CACnB;AAED,QAAA,MAAM,YAAY;;eAJT,MAAM,GAAG,SAAS;kBACf,OAAO;;;eADV,MAAM,GAAG,SAAS;kBACf,OAAO;;;IAaf;;;OAGG;qBACc,MAAM;uBAGJ,OAAO;EAK5B,CAAC;AAEH,eAAe,YAAY,CAAC"}
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
export declare const BREADCRUMB_ID = "_STORE_BREADCRUMB_ID";
|
|
2
|
+
export declare const DATA_DICTIONARY_ID = "_STORE_DATA_DICTIONARY_ID";
|
|
3
|
+
export declare const KEEP_ALIVE_ID = "_STORE_KEEP_ALIVE_ID";
|
|
4
|
+
export declare const MENU_ID = "_STORE_MENU_ID";
|
|
5
|
+
export declare const NAV_TAB_ID = "_STORE_NAV_TABS_ID";
|
|
6
|
+
export declare const SETTINGS_ID = "_STORE_SETTINGS_ID";
|
|
7
|
+
export declare const USER_ID = "_STORE_USER_ID";
|
|
8
|
+
export declare const APP_ID = "_STORE_APP_ID";
|
|
9
|
+
//# sourceMappingURL=types.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/types.ts"],"names":[],"mappings":"AAEA,eAAO,MAAM,aAAa,yBAA8B,CAAC;AAEzD,eAAO,MAAM,kBAAkB,8BAAmC,CAAC;AAEnE,eAAO,MAAM,aAAa,yBAA8B,CAAC;AAEzD,eAAO,MAAM,OAAO,mBAAwB,CAAC;AAE7C,eAAO,MAAM,UAAU,uBAA4B,CAAC;AAEpD,eAAO,MAAM,WAAW,uBAA4B,CAAC;AAErD,eAAO,MAAM,OAAO,mBAAwB,CAAC;AAE7C,eAAO,MAAM,MAAM,kBAAuB,CAAC"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@ditari/store",
|
|
3
|
-
"version": "
|
|
3
|
+
"version": "5.0.1",
|
|
4
4
|
"description": "store",
|
|
5
5
|
"private": false,
|
|
6
6
|
"publishConfig": {
|
|
@@ -10,20 +10,20 @@
|
|
|
10
10
|
"license": "ISC",
|
|
11
11
|
"module": "dist/esm/index.mjs",
|
|
12
12
|
"main": "dist/cjs/index.cjs",
|
|
13
|
-
"types": "dist/
|
|
13
|
+
"types": "dist/types/index.d.ts",
|
|
14
14
|
"exports": {
|
|
15
15
|
".": {
|
|
16
16
|
"require": "./dist/cjs/index.cjs",
|
|
17
17
|
"import": "./dist/esm/index.mjs",
|
|
18
|
-
"types": "./dist/
|
|
18
|
+
"types": "./dist/types/index.d.ts"
|
|
19
19
|
},
|
|
20
20
|
"./esm/*": {
|
|
21
21
|
"import": "./dist/esm/*/index.mjs",
|
|
22
|
-
"types": "./dist/
|
|
22
|
+
"types": "./dist/types/index.d.ts"
|
|
23
23
|
},
|
|
24
24
|
"./cjs/*": {
|
|
25
25
|
"require": "./dist/cjs/*/index.cjs",
|
|
26
|
-
"types": "./dist/
|
|
26
|
+
"types": "./dist/types/index.d.ts"
|
|
27
27
|
}
|
|
28
28
|
},
|
|
29
29
|
"peerDependencies": {
|
package/src/index.ts
CHANGED
|
@@ -1,12 +1,7 @@
|
|
|
1
|
-
export {
|
|
2
|
-
export
|
|
3
|
-
export {
|
|
4
|
-
export
|
|
5
|
-
export {
|
|
6
|
-
export {
|
|
7
|
-
export {
|
|
8
|
-
export type { NavTabsState } from "./modules/NavTab";
|
|
9
|
-
export { useSettingsStore } from "./modules/Settings";
|
|
10
|
-
export type { SettingState } from "./modules/Settings";
|
|
11
|
-
export { useUserStore } from "./modules/User";
|
|
12
|
-
export type { UserState } from "./modules/User";
|
|
1
|
+
export { default as useAppStore } from "./modules/useAppStore";
|
|
2
|
+
export * from "./modules/useBreadStore";
|
|
3
|
+
export { default as useDicStore } from "./modules/useDicStore";
|
|
4
|
+
export { default as useKeepAliveStore } from "./modules/useKeepAliveStore";
|
|
5
|
+
export { default as useMenuStore } from "./modules/useMenuStore";
|
|
6
|
+
export { default as useNavTabStore } from "./modules/useNavTabStore";
|
|
7
|
+
export { default as useUserStore } from "./modules/useUserStore";
|
|
@@ -0,0 +1,43 @@
|
|
|
1
|
+
import { theme } from "ant-design-vue";
|
|
2
|
+
import { defineStore } from "pinia";
|
|
3
|
+
|
|
4
|
+
import { APP_ID } from "../types";
|
|
5
|
+
import type { ThemeConfig } from "ant-design-vue/es/config-provider/context";
|
|
6
|
+
|
|
7
|
+
interface App {
|
|
8
|
+
theme: ThemeConfig;
|
|
9
|
+
// 模式:亮色和深色
|
|
10
|
+
mode: "light" | "dark";
|
|
11
|
+
layout: {
|
|
12
|
+
// 侧边栏宽度
|
|
13
|
+
sideWidth: number;
|
|
14
|
+
// 头高度
|
|
15
|
+
headerHeight: number;
|
|
16
|
+
// 左侧菜单收缩时候的宽度
|
|
17
|
+
collapsedWidth: number;
|
|
18
|
+
// 左侧菜单收缩状态
|
|
19
|
+
collapsed: boolean;
|
|
20
|
+
};
|
|
21
|
+
}
|
|
22
|
+
|
|
23
|
+
const useAppStore = defineStore(APP_ID, {
|
|
24
|
+
state: (): App => {
|
|
25
|
+
return {
|
|
26
|
+
theme: {
|
|
27
|
+
// 算法
|
|
28
|
+
algorithm: theme.defaultAlgorithm,
|
|
29
|
+
token: {}
|
|
30
|
+
},
|
|
31
|
+
mode: "dark",
|
|
32
|
+
layout: {
|
|
33
|
+
sideWidth: 200,
|
|
34
|
+
headerHeight: 44,
|
|
35
|
+
collapsedWidth: 80,
|
|
36
|
+
collapsed: false
|
|
37
|
+
}
|
|
38
|
+
};
|
|
39
|
+
},
|
|
40
|
+
persist: true
|
|
41
|
+
});
|
|
42
|
+
|
|
43
|
+
export default useAppStore;
|
|
@@ -1,25 +1,26 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* 面包屑
|
|
3
|
-
* @author 余春林
|
|
4
|
-
*/
|
|
5
|
-
import { defineStore } from "pinia";
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
1
|
+
/**
|
|
2
|
+
* 面包屑
|
|
3
|
+
* @author 余春林
|
|
4
|
+
*/
|
|
5
|
+
import { defineStore } from "pinia";
|
|
6
|
+
|
|
7
|
+
import { BREADCRUMB_ID } from "../types";
|
|
8
|
+
|
|
9
|
+
export interface BreadcrumbState {
|
|
10
|
+
breadcrumbs: [];
|
|
11
|
+
}
|
|
12
|
+
|
|
13
|
+
export const useBreadStore = defineStore(BREADCRUMB_ID, {
|
|
14
|
+
state: (): BreadcrumbState => ({
|
|
15
|
+
breadcrumbs: []
|
|
16
|
+
}),
|
|
17
|
+
getters: {
|
|
18
|
+
getBreadcrumb: state => state.breadcrumbs
|
|
19
|
+
},
|
|
20
|
+
actions: {
|
|
21
|
+
saveBreadcrumb(data: never) {
|
|
22
|
+
this.breadcrumbs = data;
|
|
23
|
+
}
|
|
24
|
+
},
|
|
25
|
+
persist: true
|
|
26
|
+
});
|
|
@@ -0,0 +1,76 @@
|
|
|
1
|
+
import { defineStore } from "pinia";
|
|
2
|
+
|
|
3
|
+
import { DATA_DICTIONARY_ID } from "../types";
|
|
4
|
+
|
|
5
|
+
// 定义字典项的类型
|
|
6
|
+
export interface DictionaryItem {
|
|
7
|
+
value: string; // 字典项的值
|
|
8
|
+
label: string; // 字典项的显示文本
|
|
9
|
+
}
|
|
10
|
+
|
|
11
|
+
// 定义字典列表的类型
|
|
12
|
+
export interface DictionaryList {
|
|
13
|
+
[key: string]: DictionaryItem[]; // 键是字符串,值是 DictionaryItem 数组
|
|
14
|
+
}
|
|
15
|
+
|
|
16
|
+
// 定义 Store 的状态类型
|
|
17
|
+
export interface DataDictionaryState {
|
|
18
|
+
list: DictionaryList; // 使用 DictionaryList 替换 any
|
|
19
|
+
}
|
|
20
|
+
|
|
21
|
+
const useDicStore = defineStore(DATA_DICTIONARY_ID, {
|
|
22
|
+
state: (): DataDictionaryState => ({
|
|
23
|
+
list: {} // 初始化为空对象
|
|
24
|
+
}),
|
|
25
|
+
getters: {
|
|
26
|
+
/**
|
|
27
|
+
* 根据 key 获取字典列表
|
|
28
|
+
* @param state
|
|
29
|
+
*/
|
|
30
|
+
getDicByKey: state => {
|
|
31
|
+
return (key: string): DictionaryItem[] => {
|
|
32
|
+
return state.list[key] || [];
|
|
33
|
+
};
|
|
34
|
+
},
|
|
35
|
+
|
|
36
|
+
/**
|
|
37
|
+
* 根据字典名称和字典的 value 获取对应的中文
|
|
38
|
+
* @param state
|
|
39
|
+
*/
|
|
40
|
+
getDicTextByValue: state => {
|
|
41
|
+
return (key: string, value: string): string => {
|
|
42
|
+
const rs = state.list[key] || [];
|
|
43
|
+
return rs
|
|
44
|
+
.filter((item: DictionaryItem) => item.value === value)
|
|
45
|
+
.map((item: DictionaryItem) => item.label)
|
|
46
|
+
.join("");
|
|
47
|
+
};
|
|
48
|
+
},
|
|
49
|
+
|
|
50
|
+
/**
|
|
51
|
+
* 根据文字匹配对应的 value
|
|
52
|
+
* @param state
|
|
53
|
+
*/
|
|
54
|
+
getDicValueByText: state => {
|
|
55
|
+
return (key: string, text: string): string => {
|
|
56
|
+
const rs = state.list[key] || [];
|
|
57
|
+
return rs
|
|
58
|
+
.filter((item: DictionaryItem) => item.label === text)
|
|
59
|
+
.map((item: DictionaryItem) => item.value)
|
|
60
|
+
.join("");
|
|
61
|
+
};
|
|
62
|
+
}
|
|
63
|
+
},
|
|
64
|
+
actions: {
|
|
65
|
+
/**
|
|
66
|
+
* 保存字典数据
|
|
67
|
+
* @param data 字典数据
|
|
68
|
+
*/
|
|
69
|
+
save(data: DictionaryList) {
|
|
70
|
+
this.list = data;
|
|
71
|
+
}
|
|
72
|
+
},
|
|
73
|
+
persist: true
|
|
74
|
+
});
|
|
75
|
+
|
|
76
|
+
export default useDicStore;
|