vome-core 0.0.14 → 0.0.17
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/admin/config/plugin-dev.js +1 -1
- package/dist/admin/crud/config.js +1 -1
- package/dist/admin/crud/confirm.js +1 -1
- package/dist/admin/crud/dict.js +1 -1
- package/dist/admin/crud/index.js +1 -1
- package/dist/admin/crud/key.js +1 -1
- package/dist/admin/crud/mitt.js +1 -1
- package/dist/admin/crud/plugins.js +1 -1
- package/dist/admin/crud/span.js +1 -1
- package/dist/admin/crud/style.js +1 -1
- package/dist/admin/crud/useCrud.js +59 -1
- package/dist/admin/crud/validate.js +1 -1
- package/dist/admin/crud/vm-crud.vue +0 -1
- package/dist/admin/crud/vm-search.vue +3 -2
- package/dist/admin/directives/perm.js +1 -1
- package/dist/admin/hooks/useBrowser.js +21 -1
- package/dist/admin/hooks/useUpload.js +1 -1
- package/dist/admin/hooks/useVome.js +11 -1
- package/dist/admin/index.js +54 -1
- package/dist/admin/lib/browser.js +1 -1
- package/dist/admin/lib/cn.js +1 -1
- package/dist/admin/lib/dialog-float.js +1 -1
- package/dist/admin/lib/menu.js +1 -1
- package/dist/admin/lib/module.js +85 -1
- package/dist/admin/lib/tree.js +1 -1
- package/dist/admin/lib/upload.js +1 -1
- package/dist/admin/router/index.js +12 -9
- package/dist/admin/service/index.js +2 -2
- package/dist/admin/stores/app.js +24 -1
- package/dist/admin/stores/tags.js +64 -1
- package/dist/index.js +1 -1
- package/dist/server/index.js +1 -1
- package/dist/shared/index.js +1 -1
- package/dist/shared/tree.js +1 -1
- package/package.json +30 -2
|
@@ -1 +1 @@
|
|
|
1
|
-
const
|
|
1
|
+
function _0x47e2(_0x588089,_0x125cf9){_0x588089=_0x588089-0x12e;const _0x2cab7c=_0x2cab();let _0x47e29e=_0x2cab7c[_0x588089];if(_0x47e2['ObaHBe']===undefined){var _0x2ea804=function(_0xf31361){const _0x20bc77='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x137499='',_0x36d1ff='';for(let _0x4a1f00=0x0,_0x353aa0,_0x2dc078,_0x47766e=0x0;_0x2dc078=_0xf31361['charAt'](_0x47766e++);~_0x2dc078&&(_0x353aa0=_0x4a1f00%0x4?_0x353aa0*0x40+_0x2dc078:_0x2dc078,_0x4a1f00++%0x4)?_0x137499+=String['fromCharCode'](0xff&_0x353aa0>>(-0x2*_0x4a1f00&0x6)):0x0){_0x2dc078=_0x20bc77['indexOf'](_0x2dc078);}for(let _0x57fecf=0x0,_0xb2363b=_0x137499['length'];_0x57fecf<_0xb2363b;_0x57fecf++){_0x36d1ff+='%'+('00'+_0x137499['charCodeAt'](_0x57fecf)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x36d1ff);};_0x47e2['ocBrJt']=_0x2ea804,_0x47e2['cEENVf']={},_0x47e2['ObaHBe']=!![];}const _0x24314c=_0x2cab7c[0x0],_0x6375cb=_0x588089+_0x24314c,_0x50ea9c=_0x47e2['cEENVf'][_0x6375cb];return!_0x50ea9c?(_0x47e29e=_0x47e2['ocBrJt'](_0x47e29e),_0x47e2['cEENVf'][_0x6375cb]=_0x47e29e):_0x47e29e=_0x50ea9c,_0x47e29e;}const _0x2d5714=_0x47e2;(function(_0x3c1f47,_0x42f275){const _0x5566b0=_0x47e2,_0x361431=_0x3c1f47();while(!![]){try{const _0x22896a=-parseInt(_0x5566b0(0x153))/0x1+parseInt(_0x5566b0(0x155))/0x2+-parseInt(_0x5566b0(0x134))/0x3+-parseInt(_0x5566b0(0x148))/0x4*(parseInt(_0x5566b0(0x130))/0x5)+-parseInt(_0x5566b0(0x154))/0x6+-parseInt(_0x5566b0(0x13e))/0x7+-parseInt(_0x5566b0(0x149))/0x8*(-parseInt(_0x5566b0(0x138))/0x9);if(_0x22896a===_0x42f275)break;else _0x361431['push'](_0x361431['shift']());}catch(_0x4558b1){_0x361431['push'](_0x361431['shift']());}}}(_0x2cab,0x4f54e));function _0x2cab(){const _0x115d7b=['mte1mtmXmfDvDgjeBW','mtaWmZyWmhjOqKzXtG','A2v5','ChvIBgLJrg9TywLU','AgfZ','mJi4mZy1yuHnDxjP','5lIk5lYG572r57UC6zsz6k+V','BgvUz3rOq29TChv0ywjSzq','ChjLDMLLDW','mta4ndC3nK5ltK52rG','B25LCNjVCG','BMfTzq','C2XPy2u','mtHZtevWD3i','yxbWzw5K','C2vUza','DxbSB2fKvxjS','5lIk5lYG5AsX6lsLicG','l2fKBwLUl2jHC2uVy29TBs91CgXVywq','mtCZnJKZoevPB3DmuW','Ag9ZDa','CMvZCg9UC2vuzxH0','B25SB2fK','Bg9HzgvK','ue9tva','DxjS','C3rHDhvZ','Dg90ywW','ChjLDMLLD1vYBa','ntj0CvzXrMC','ntyYody0oeXozxHTzq','yxbWl2jHC2u','zw50CMLLCW','zxjYB3i','C3rYAw5NAwz5','5lIk5lYG5zYW5z2a5PEG5Pwi','B3bLBG','zMLSzq','BwLU','B25WCM9NCMvZCW','mtG4nJyWDuLPsLfV'];_0x2cab=function(){return _0x115d7b;};return _0x2cab();}import{toast}from'vue-sonner';import{request}from'../api/client';import{extname,filename,pathJoin,uploadUid}from'../lib/upload';const UPLOAD_PATH=_0x2d5714(0x13d),SIGN_SKIP=new Set([_0x2d5714(0x144),_0x2d5714(0x13f),_0x2d5714(0x13b),'publicDomain',_0x2d5714(0x147),_0x2d5714(0x133)]);export function useUpload(){async function _0x137499(_0x36d1ff,_0x4a1f00={}){const _0x48ff49=_0x47e2,{prefixPath:prefixPath=_0x48ff49(0x14a),onProgress:_0x353aa0}=_0x4a1f00,_0x2dc078=uploadUid(),_0x47766e=extname(_0x36d1ff[_0x48ff49(0x136)]),_0x57fecf=filename(_0x36d1ff[_0x48ff49(0x136)])+'_'+_0x2dc078+(_0x47766e?'.'+_0x47766e:''),_0xb2363b=pathJoin(prefixPath,_0x57fecf),_0x5ecbe3=await request(UPLOAD_PATH,{'method':'POST','body':JSON[_0x48ff49(0x14d)]({})}),_0x584c11=String(_0x5ecbe3[_0x48ff49(0x13f)]||_0x5ecbe3[_0x48ff49(0x144)]||_0x5ecbe3['uploadUrl']||'');if(!_0x584c11)throw new Error(_0x48ff49(0x14e));const _0x455f32=new FormData();_0x455f32['append'](_0x48ff49(0x156),_0xb2363b);for(const [_0xcebc5d,_0x2c54ae]of Object[_0x48ff49(0x14b)](_0x5ecbe3)){if(SIGN_SKIP[_0x48ff49(0x12f)](_0xcebc5d)||_0x2c54ae==null||_0x455f32[_0x48ff49(0x12f)](_0xcebc5d))continue;_0x455f32[_0x48ff49(0x139)](_0xcebc5d,String(_0x2c54ae));}_0x455f32['append'](_0x48ff49(0x150),_0x36d1ff),await xhrUpload(_0x584c11,_0x455f32,_0x353aa0);const _0x2ec932=String(_0x5ecbe3[_0x48ff49(0x12e)]||_0x5ecbe3[_0x48ff49(0x147)]||_0x584c11);return{'url':pathJoin(_0x2ec932,_0xb2363b),'key':_0xb2363b,'fileId':_0x2dc078};}return{'toUpload':_0x137499};}function xhrUpload(_0x1357e4,_0x3cbfb3,_0x297f2b){return new Promise((_0x4af379,_0x47968c)=>{const _0x2c682f=_0x47e2,_0xc8d46e=new XMLHttpRequest();_0xc8d46e[_0x2c682f(0x14f)](_0x2c682f(0x143),_0x1357e4),_0xc8d46e['upload'][_0x2c682f(0x152)]=_0x59218a=>{const _0x4de424=_0x2c682f;if(!_0x59218a[_0x4de424(0x132)])return;_0x297f2b?.(Math[_0x4de424(0x151)](0x64,Math['floor'](_0x59218a[_0x4de424(0x142)]/_0x59218a[_0x4de424(0x146)]*0x64)));},_0xc8d46e[_0x2c682f(0x141)]=()=>{const _0x2e5290=_0x2c682f;if(_0xc8d46e[_0x2e5290(0x145)]<0xc8||_0xc8d46e[_0x2e5290(0x145)]>=0x12c){const _0x5e668f=_0xc8d46e[_0x2e5290(0x140)]||_0x2e5290(0x13c)+_0xc8d46e['status']+')';toast[_0x2e5290(0x14c)](_0x5e668f[_0x2e5290(0x137)](0x0,0xc8)),_0x47968c(new Error(_0x5e668f));return;}_0x297f2b?.(0x64),_0x4af379();},_0xc8d46e[_0x2c682f(0x135)]=()=>_0x47968c(new Error(_0x2c682f(0x131))),_0xc8d46e[_0x2c682f(0x13a)](_0x3cbfb3);});}
|
|
@@ -1 +1,11 @@
|
|
|
1
|
-
|
|
1
|
+
import { useRoute, useRouter } from "vue-router";
|
|
2
|
+
import { service } from "../service";
|
|
3
|
+
import { useBrowser } from "./useBrowser";
|
|
4
|
+
export function useVome() {
|
|
5
|
+
return {
|
|
6
|
+
service,
|
|
7
|
+
route: useRoute(),
|
|
8
|
+
router: useRouter(),
|
|
9
|
+
...useBrowser()
|
|
10
|
+
};
|
|
11
|
+
}
|
package/dist/admin/index.js
CHANGED
|
@@ -1 +1,54 @@
|
|
|
1
|
-
|
|
1
|
+
export {
|
|
2
|
+
resolveView,
|
|
3
|
+
listViews,
|
|
4
|
+
listViewsTree,
|
|
5
|
+
viewPathToName,
|
|
6
|
+
registerViews,
|
|
7
|
+
VIEWS_RESCAN_EVENT
|
|
8
|
+
} from "./lib/module";
|
|
9
|
+
export { getBrowser } from "./lib/browser";
|
|
10
|
+
export { useBrowser } from "./hooks/useBrowser";
|
|
11
|
+
export {
|
|
12
|
+
useCrud,
|
|
13
|
+
useTable,
|
|
14
|
+
useUpsert,
|
|
15
|
+
useSearch,
|
|
16
|
+
useCore,
|
|
17
|
+
CRUD_KEY
|
|
18
|
+
} from "./crud/useCrud";
|
|
19
|
+
export {
|
|
20
|
+
Plugins,
|
|
21
|
+
toTree,
|
|
22
|
+
setFocus,
|
|
23
|
+
setRules,
|
|
24
|
+
setAuto,
|
|
25
|
+
buildAutoSearchItems
|
|
26
|
+
} from "./crud/plugins";
|
|
27
|
+
export {
|
|
28
|
+
setCrudConfig,
|
|
29
|
+
getCrudConfig,
|
|
30
|
+
getCrudStyle
|
|
31
|
+
} from "./crud/style";
|
|
32
|
+
export { resolveCrudComponent, registerCrudComponent } from "./crud/registry";
|
|
33
|
+
export { vmConfirm } from "./crud/confirm";
|
|
34
|
+
export { deepTree, flattenTree } from "./lib/tree";
|
|
35
|
+
export { config } from "#vome-host/config";
|
|
36
|
+
export { pluginDev } from "./config/plugin-dev";
|
|
37
|
+
export { router, resetMenuRoutesFlag } from "./router";
|
|
38
|
+
export { useAppStore } from "./stores/app";
|
|
39
|
+
export { useUserStore } from "./stores/user";
|
|
40
|
+
export { useTagsStore } from "./stores/tags";
|
|
41
|
+
export { loadEps, loadAllEps, getEps, findEpsEntity } from "./lib/eps";
|
|
42
|
+
export { api, request, apiUrl } from "./api/client";
|
|
43
|
+
export {
|
|
44
|
+
service,
|
|
45
|
+
createEps,
|
|
46
|
+
setServicePerms,
|
|
47
|
+
resolveService,
|
|
48
|
+
serviceOf,
|
|
49
|
+
createEpsService,
|
|
50
|
+
BaseService
|
|
51
|
+
} from "./service";
|
|
52
|
+
export { useVome } from "./hooks/useVome";
|
|
53
|
+
export { vPerm } from "./directives/perm";
|
|
54
|
+
export { cn } from "./lib/cn";
|
|
@@ -1 +1 @@
|
|
|
1
|
-
function
|
|
1
|
+
function _0x3477(_0x5d6740,_0x2b9cf3){_0x5d6740=_0x5d6740-0x18d;const _0x131b8e=_0x131b();let _0x3477be=_0x131b8e[_0x5d6740];if(_0x3477['MGicnF']===undefined){var _0x431104=function(_0x1976cb){const _0x3b086a='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x1b35df='',_0x1fab48='';for(let _0x2a21b9=0x0,_0xddc427,_0x65aa3f,_0x3f9b81=0x0;_0x65aa3f=_0x1976cb['charAt'](_0x3f9b81++);~_0x65aa3f&&(_0xddc427=_0x2a21b9%0x4?_0xddc427*0x40+_0x65aa3f:_0x65aa3f,_0x2a21b9++%0x4)?_0x1b35df+=String['fromCharCode'](0xff&_0xddc427>>(-0x2*_0x2a21b9&0x6)):0x0){_0x65aa3f=_0x3b086a['indexOf'](_0x65aa3f);}for(let _0x207ab6=0x0,_0x56f32a=_0x1b35df['length'];_0x207ab6<_0x56f32a;_0x207ab6++){_0x1fab48+='%'+('00'+_0x1b35df['charCodeAt'](_0x207ab6)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x1fab48);};_0x3477['DylNJu']=_0x431104,_0x3477['mDpRvN']={},_0x3477['MGicnF']=!![];}const _0x91edf2=_0x131b8e[0x0],_0xb2d77a=_0x5d6740+_0x91edf2,_0x451006=_0x3477['mDpRvN'][_0xb2d77a];return!_0x451006?(_0x3477be=_0x3477['DylNJu'](_0x3477be),_0x3477['mDpRvN'][_0xb2d77a]=_0x3477be):_0x3477be=_0x451006,_0x3477be;}function _0x131b(){const _0x51d0d1=['DxnLCKfNzw50','mtu2nty3nuLICvvAsW','Dg9mB3DLCKnHC2u','mti4ntGXnNLWwwHXwG','mtiWodu0mtzUuK1krgy','Bwf0y2G','nJuZndm5zefAD1j0','BxnPzq','mta0otC1nfnsquXqqq','B3rOzxi','mtyYnJa2me1yyxLNCq','zNvSBa','nZiWnde3t2rhz1jx','mJfUyK9VwNO','DgvZDa'];_0x131b=function(){return _0x51d0d1;};return _0x131b();}(function(_0x5d6a4f,_0x11e3c4){const _0x308cf7=_0x3477,_0x4a6fcf=_0x5d6a4f();while(!![]){try{const _0x5dd362=-parseInt(_0x308cf7(0x195))/0x1+parseInt(_0x308cf7(0x19b))/0x2+parseInt(_0x308cf7(0x18f))/0x3+-parseInt(_0x308cf7(0x193))/0x4+-parseInt(_0x308cf7(0x199))/0x5+-parseInt(_0x308cf7(0x191))/0x6*(parseInt(_0x308cf7(0x196))/0x7)+parseInt(_0x308cf7(0x18d))/0x8;if(_0x5dd362===_0x11e3c4)break;else _0x4a6fcf['push'](_0x4a6fcf['shift']());}catch(_0x379df9){_0x4a6fcf['push'](_0x4a6fcf['shift']());}}}(_0x131b,0x633b6));export function getBrowser(){const _0x19f2f6=_0x3477,{clientHeight:_0x1b35df,clientWidth:_0x1fab48}=document['documentElement'],_0x2a21b9=navigator[_0x19f2f6(0x198)][_0x19f2f6(0x19a)]();let _0xddc427=(_0x2a21b9[_0x19f2f6(0x18e)](/firefox|chrome|safari|opera/g)||[_0x19f2f6(0x192)])[0x0];if((_0x2a21b9[_0x19f2f6(0x18e)](/msie|trident/g)||[])[0x0])_0xddc427=_0x19f2f6(0x190);let _0x65aa3f=_0x19f2f6(0x194);if(_0x1fab48<0x300)_0x65aa3f='xs';else{if(_0x1fab48<0x3e0)_0x65aa3f='sm';else{if(_0x1fab48<0x4b0)_0x65aa3f='md';else{if(_0x1fab48<0x780)_0x65aa3f='xl';}}}const _0x3f9b81=!/android|webos|iphone|ipad|ipod|blackberry|iemobile|opera mini/i[_0x19f2f6(0x197)](_0x2a21b9);return{'height':_0x1b35df,'width':_0x1fab48,'type':_0xddc427,'screen':_0x65aa3f,'isMini':_0x65aa3f==='xs'||!_0x3f9b81};}
|
package/dist/admin/lib/cn.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
(function(
|
|
1
|
+
function _0x1f66(){var _0x36c4a6=['nJq1mtaYDw1SEgXA','mZKWmtG1DLHKu1vU','mJq1mJaYnezetvL0zq','ntqZmZrVCgLYCvK','mtiWmde5nxvqv3HAza','ntGYD25lqvHW','mtu4ode5nZbZCfzwuKm','ouT0ANLWAG','nwLOAhzira','mJqYmtm1nNfztfDhuW'];_0x1f66=function(){return _0x36c4a6;};return _0x1f66();}(function(_0x1f4671,_0x17d4eb){var _0x10b553=_0x4966,_0x2dc224=_0x1f4671();while(!![]){try{var _0x53ea50=-parseInt(_0x10b553(0x15f))/0x1+parseInt(_0x10b553(0x168))/0x2+parseInt(_0x10b553(0x162))/0x3+parseInt(_0x10b553(0x167))/0x4*(parseInt(_0x10b553(0x166))/0x5)+parseInt(_0x10b553(0x163))/0x6*(parseInt(_0x10b553(0x161))/0x7)+-parseInt(_0x10b553(0x160))/0x8*(-parseInt(_0x10b553(0x165))/0x9)+-parseInt(_0x10b553(0x164))/0xa;if(_0x53ea50===_0x17d4eb)break;else _0x2dc224['push'](_0x2dc224['shift']());}catch(_0x36384a){_0x2dc224['push'](_0x2dc224['shift']());}}}(_0x1f66,0x63d9e));function _0x4966(_0x1e9eec,_0x6786bf){_0x1e9eec=_0x1e9eec-0x15f;var _0x1f662d=_0x1f66();var _0x496692=_0x1f662d[_0x1e9eec];if(_0x4966['GdCGsh']===undefined){var _0x430ae2=function(_0x52e92c){var _0x4e1324='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';var _0x101745='',_0x20bf80='';for(var _0x18f1f4=0x0,_0x427d52,_0x4701fa,_0x52f90c=0x0;_0x4701fa=_0x52e92c['charAt'](_0x52f90c++);~_0x4701fa&&(_0x427d52=_0x18f1f4%0x4?_0x427d52*0x40+_0x4701fa:_0x4701fa,_0x18f1f4++%0x4)?_0x101745+=String['fromCharCode'](0xff&_0x427d52>>(-0x2*_0x18f1f4&0x6)):0x0){_0x4701fa=_0x4e1324['indexOf'](_0x4701fa);}for(var _0x5b9326=0x0,_0x418dd8=_0x101745['length'];_0x5b9326<_0x418dd8;_0x5b9326++){_0x20bf80+='%'+('00'+_0x101745['charCodeAt'](_0x5b9326)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x20bf80);};_0x4966['SKagmo']=_0x430ae2,_0x4966['YQsZQC']={},_0x4966['GdCGsh']=!![];}var _0xd735fc=_0x1f662d[0x0],_0x258982=_0x1e9eec+_0xd735fc,_0x301c26=_0x4966['YQsZQC'][_0x258982];return!_0x301c26?(_0x496692=_0x4966['SKagmo'](_0x496692),_0x4966['YQsZQC'][_0x258982]=_0x496692):_0x496692=_0x301c26,_0x496692;}import{clsx}from'clsx';import{twMerge}from'tailwind-merge';export function cn(..._0x101745){return twMerge(clsx(_0x101745));}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
|
|
1
|
+
const _0x865911=_0x23ac;(function(_0x371857,_0x577195){const _0x410280=_0x23ac,_0x395da7=_0x371857();while(!![]){try{const _0x266532=-parseInt(_0x410280(0x1c4))/0x1*(-parseInt(_0x410280(0x1c2))/0x2)+parseInt(_0x410280(0x1bb))/0x3*(parseInt(_0x410280(0x1ba))/0x4)+-parseInt(_0x410280(0x1bc))/0x5+parseInt(_0x410280(0x1bd))/0x6*(parseInt(_0x410280(0x1b9))/0x7)+-parseInt(_0x410280(0x1b7))/0x8+-parseInt(_0x410280(0x1c0))/0x9+parseInt(_0x410280(0x1be))/0xa;if(_0x266532===_0x577195)break;else _0x395da7['push'](_0x395da7['shift']());}catch(_0x4eb0a5){_0x395da7['push'](_0x395da7['shift']());}}}(_0x3da4,0x3ddbb));export const DIALOG_FLOAT_CLASS=_0x865911(0x1c1);function _0x3da4(){const _0x3f0d40=['mtu5nde0nejICwHvrG','y2XVC2vZDa','ndLjrKHUthO','mta5mZuYwNv6BfPN','ndHrsLLKBK0','mJi4ndu0nxHJsKvXBa','mtyXntHSufLZt1q','nduXmtKXmgXIuLHpyW','zgv0ywLS','mZa4odyXmuX0s1fkzW','DM0TzgLHBg9NlwzSB2f0','mZu3ogzwBKnSDG','B3jPz2LUywXfDMvUDa','mtKZz0rKEuPj','DgfYz2v0','CgfYzw50rwXLBwvUDa'];_0x3da4=function(){return _0x3f0d40;};return _0x3da4();}function _0x23ac(_0xf02749,_0x46fcbe){_0xf02749=_0xf02749-0x1b7;const _0x3da433=_0x3da4();let _0x23ac3b=_0x3da433[_0xf02749];if(_0x23ac['fqZSIe']===undefined){var _0x9b01f=function(_0x3e6cf2){const _0x5ded1b='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x4bd437='',_0x70b893='';for(let _0x5c8087=0x0,_0x791b4c,_0x10427b,_0x502cde=0x0;_0x10427b=_0x3e6cf2['charAt'](_0x502cde++);~_0x10427b&&(_0x791b4c=_0x5c8087%0x4?_0x791b4c*0x40+_0x10427b:_0x10427b,_0x5c8087++%0x4)?_0x4bd437+=String['fromCharCode'](0xff&_0x791b4c>>(-0x2*_0x5c8087&0x6)):0x0){_0x10427b=_0x5ded1b['indexOf'](_0x10427b);}for(let _0x58d804=0x0,_0x4b2c3d=_0x4bd437['length'];_0x58d804<_0x4b2c3d;_0x58d804++){_0x70b893+='%'+('00'+_0x4bd437['charCodeAt'](_0x58d804)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x70b893);};_0x23ac['oaXswq']=_0x9b01f,_0x23ac['Rijjjs']={},_0x23ac['fqZSIe']=!![];}const _0x1736bf=_0x3da433[0x0],_0x2fdb7e=_0xf02749+_0x1736bf,_0x249b4c=_0x23ac['Rijjjs'][_0x2fdb7e];return!_0x249b4c?(_0x23ac3b=_0x23ac['oaXswq'](_0x23ac3b),_0x23ac['Rijjjs'][_0x2fdb7e]=_0x23ac3b):_0x23ac3b=_0x249b4c,_0x23ac3b;}export function isDialogFloatTarget(_0x4bd437){const _0x472ed6=_0x865911,_0x70b893=_0x4bd437[_0x472ed6(0x1bf)],_0x5c8087=_0x70b893?.[_0x472ed6(0x1c3)]?.[_0x472ed6(0x1c5)]??_0x4bd437[_0x472ed6(0x1c5)];if(!_0x5c8087)return![];const _0x791b4c=_0x5c8087 instanceof Element?_0x5c8087:_0x5c8087[_0x472ed6(0x1c6)];return Boolean(_0x791b4c?.[_0x472ed6(0x1b8)]('.'+DIALOG_FLOAT_CLASS));}
|
package/dist/admin/lib/menu.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
(function(
|
|
1
|
+
(function(_0x9439a,_0x48720){const _0x236e1a=_0x38be,_0x40db3e=_0x9439a();while(!![]){try{const _0x12557f=parseInt(_0x236e1a(0xd1))/0x1*(-parseInt(_0x236e1a(0xc7))/0x2)+parseInt(_0x236e1a(0xd7))/0x3*(parseInt(_0x236e1a(0xca))/0x4)+parseInt(_0x236e1a(0xcb))/0x5+-parseInt(_0x236e1a(0xd2))/0x6*(-parseInt(_0x236e1a(0xc9))/0x7)+-parseInt(_0x236e1a(0xcc))/0x8+parseInt(_0x236e1a(0xd6))/0x9+parseInt(_0x236e1a(0xcf))/0xa*(-parseInt(_0x236e1a(0xc6))/0xb);if(_0x12557f===_0x48720)break;else _0x40db3e['push'](_0x40db3e['shift']());}catch(_0x13a49){_0x40db3e['push'](_0x40db3e['shift']());}}}(_0x5a70,0xe2769));function _0x38be(_0x30f5b4,_0x550a0e){_0x30f5b4=_0x30f5b4-0xc6;const _0x5a708c=_0x5a70();let _0x38be82=_0x5a708c[_0x30f5b4];if(_0x38be['WqukwD']===undefined){var _0x276b9f=function(_0x49c91a){const _0x52af0c='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x27921d='',_0x14f29f='';for(let _0x9a641a=0x0,_0x4bb13c,_0x3719ec,_0x57b216=0x0;_0x3719ec=_0x49c91a['charAt'](_0x57b216++);~_0x3719ec&&(_0x4bb13c=_0x9a641a%0x4?_0x4bb13c*0x40+_0x3719ec:_0x3719ec,_0x9a641a++%0x4)?_0x27921d+=String['fromCharCode'](0xff&_0x4bb13c>>(-0x2*_0x9a641a&0x6)):0x0){_0x3719ec=_0x52af0c['indexOf'](_0x3719ec);}for(let _0x6fef2c=0x0,_0x519de1=_0x27921d['length'];_0x6fef2c<_0x519de1;_0x6fef2c++){_0x14f29f+='%'+('00'+_0x27921d['charCodeAt'](_0x6fef2c)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x14f29f);};_0x38be['qobxfs']=_0x276b9f,_0x38be['aNEjhA']={},_0x38be['WqukwD']=!![];}const _0x415363=_0x5a708c[0x0],_0x3d4a7c=_0x30f5b4+_0x415363,_0x5a72d5=_0x38be['aNEjhA'][_0x3d4a7c];return!_0x5a72d5?(_0x38be82=_0x38be['qobxfs'](_0x38be82),_0x38be['aNEjhA'][_0x3d4a7c]=_0x38be82):_0x38be82=_0x5a72d5,_0x38be82;}export function filterShowMenus(_0x27921d){const _0x262307=_0x38be;if(!Array[_0x262307(0xd4)](_0x27921d)||!_0x27921d[_0x262307(0xd0)])return[];return _0x27921d[_0x262307(0xd8)](_0x14f29f=>_0x14f29f&&_0x14f29f[_0x262307(0xd5)]!==![])[_0x262307(0xc8)](_0x9a641a=>({..._0x9a641a,'children':_0x9a641a['children']?.[_0x262307(0xd0)]?filterShowMenus(_0x9a641a[_0x262307(0xcd)]):undefined}))[_0x262307(0xd8)](_0x4bb13c=>{const _0x5056f8=_0x262307,_0x3719ec=Number(_0x4bb13c[_0x5056f8(0xd3)]);return _0x3719ec===0x0||_0x3719ec===0x1&&_0x4bb13c[_0x5056f8(0xce)]||(_0x4bb13c[_0x5056f8(0xcd)]?.[_0x5056f8(0xd0)]??0x0)>0x0;});}function _0x5a70(){const _0x441934=['BgvUz3rO','mJzJtNDIswW','nNzcz0Pmua','DhLWzq','AxnbCNjHEq','AxntAg93','mteYmde4ndf4ze1pwuK','ndqWmdq5CxvzDfbi','zMLSDgvY','nJe1odC5yvvNs0Pq','mtiXnZK2txHlyLvi','BwfW','mti4odG1ntrXwhjVq1m','mZzQALbUtw4','mJGXoduZnxfXBMvMua','odaYndu2mgzwvhrRCG','y2HPBgrYzw4','CM91DgvY','mJyWsurNwhfS'];_0x5a70=function(){return _0x441934;};return _0x5a70();}
|
package/dist/admin/lib/module.js
CHANGED
|
@@ -1 +1,85 @@
|
|
|
1
|
-
|
|
1
|
+
export const VIEWS_RESCAN_EVENT = "vome:views-rescan";
|
|
2
|
+
const viewMap = new Map;
|
|
3
|
+
function rebuildViewMap(files) {
|
|
4
|
+
viewMap.clear();
|
|
5
|
+
for (const [file, loader] of Object.entries(files)) {
|
|
6
|
+
if (file.includes("/components/"))
|
|
7
|
+
continue;
|
|
8
|
+
const m = file.match(/modules\/.+\.vue$/);
|
|
9
|
+
if (!m)
|
|
10
|
+
continue;
|
|
11
|
+
const rel = m[0].replace(/\.vue$/, "").replace(/\/index$/, "");
|
|
12
|
+
viewMap.set(rel, loader);
|
|
13
|
+
}
|
|
14
|
+
}
|
|
15
|
+
export function registerViews(files) {
|
|
16
|
+
rebuildViewMap(files);
|
|
17
|
+
if (typeof window !== "undefined") {
|
|
18
|
+
window.dispatchEvent(new CustomEvent(VIEWS_RESCAN_EVENT));
|
|
19
|
+
}
|
|
20
|
+
}
|
|
21
|
+
export function resolveView(viewPath) {
|
|
22
|
+
if (!viewPath)
|
|
23
|
+
return;
|
|
24
|
+
const normalized = viewPath.replace(/^\/+/, "").replace(/\.vue$/, "").replace(/\/index$/, "");
|
|
25
|
+
return viewMap.get(normalized) || viewMap.get(`modules/${normalized.replace(/^modules\//, "")}`);
|
|
26
|
+
}
|
|
27
|
+
export function viewPathToName(viewPath) {
|
|
28
|
+
if (!viewPath)
|
|
29
|
+
return;
|
|
30
|
+
const normalized = viewPath.replace(/^\/+/, "").replace(/\.vue$/, "").replace(/\/index$/, "");
|
|
31
|
+
const m = normalized.match(/^(?:modules\/)?([^/]+)\/views\/(.+)$/);
|
|
32
|
+
if (m)
|
|
33
|
+
return `${m[1]}-${m[2].replace(/\//g, "-")}`;
|
|
34
|
+
return;
|
|
35
|
+
}
|
|
36
|
+
export function listViews() {
|
|
37
|
+
return [...viewMap.keys()].sort();
|
|
38
|
+
}
|
|
39
|
+
export function listViewsTree() {
|
|
40
|
+
const root = [];
|
|
41
|
+
for (const full of listViews()) {
|
|
42
|
+
const parts = full.replace(/^modules\//, "").split("/").filter(Boolean);
|
|
43
|
+
if (!parts.length)
|
|
44
|
+
continue;
|
|
45
|
+
let level = root;
|
|
46
|
+
let acc = "modules";
|
|
47
|
+
for (let i = 0;i < parts.length; i++) {
|
|
48
|
+
const label = parts[i];
|
|
49
|
+
acc += `/${label}`;
|
|
50
|
+
const isLeaf = i === parts.length - 1;
|
|
51
|
+
let node = level.find((n) => n.label === label);
|
|
52
|
+
if (!node) {
|
|
53
|
+
node = {
|
|
54
|
+
label,
|
|
55
|
+
value: isLeaf ? full : acc,
|
|
56
|
+
isLeaf,
|
|
57
|
+
children: isLeaf ? undefined : []
|
|
58
|
+
};
|
|
59
|
+
level.push(node);
|
|
60
|
+
} else if (isLeaf) {
|
|
61
|
+
node.isLeaf = true;
|
|
62
|
+
node.value = full;
|
|
63
|
+
node.children = undefined;
|
|
64
|
+
}
|
|
65
|
+
if (!isLeaf) {
|
|
66
|
+
if (!node.children)
|
|
67
|
+
node.children = [];
|
|
68
|
+
level = node.children;
|
|
69
|
+
}
|
|
70
|
+
}
|
|
71
|
+
}
|
|
72
|
+
const sortTree = (nodes) => {
|
|
73
|
+
nodes.sort((a, b) => {
|
|
74
|
+
if (!!a.isLeaf !== !!b.isLeaf)
|
|
75
|
+
return a.isLeaf ? 1 : -1;
|
|
76
|
+
return a.label.localeCompare(b.label);
|
|
77
|
+
});
|
|
78
|
+
for (const n of nodes) {
|
|
79
|
+
if (n.children?.length)
|
|
80
|
+
sortTree(n.children);
|
|
81
|
+
}
|
|
82
|
+
};
|
|
83
|
+
sortTree(root);
|
|
84
|
+
return root;
|
|
85
|
+
}
|
package/dist/admin/lib/tree.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
|
|
1
|
+
function _0x58fb(_0x5410c9,_0x157cc2){_0x5410c9=_0x5410c9-0x134;var _0x1196b7=_0x1196();var _0x58fb3f=_0x1196b7[_0x5410c9];if(_0x58fb['yKylSO']===undefined){var _0x412370=function(_0x38ac19){var _0x20ec6a='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';var _0x50161c='',_0x4799bb='';for(var _0x7400d4=0x0,_0x4e65f9,_0x49a279,_0x5ce3d6=0x0;_0x49a279=_0x38ac19['charAt'](_0x5ce3d6++);~_0x49a279&&(_0x4e65f9=_0x7400d4%0x4?_0x4e65f9*0x40+_0x49a279:_0x49a279,_0x7400d4++%0x4)?_0x50161c+=String['fromCharCode'](0xff&_0x4e65f9>>(-0x2*_0x7400d4&0x6)):0x0){_0x49a279=_0x20ec6a['indexOf'](_0x49a279);}for(var _0x2030a2=0x0,_0x123458=_0x50161c['length'];_0x2030a2<_0x123458;_0x2030a2++){_0x4799bb+='%'+('00'+_0x50161c['charCodeAt'](_0x2030a2)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x4799bb);};_0x58fb['HuqwPz']=_0x412370,_0x58fb['nQjryw']={},_0x58fb['yKylSO']=!![];}var _0x5d6e16=_0x1196b7[0x0],_0x12cab0=_0x5410c9+_0x5d6e16,_0x52fa47=_0x58fb['nQjryw'][_0x12cab0];return!_0x52fa47?(_0x58fb3f=_0x58fb['HuqwPz'](_0x58fb3f),_0x58fb['nQjryw'][_0x12cab0]=_0x58fb3f):_0x58fb3f=_0x52fa47,_0x58fb3f;}(function(_0x251bb9,_0x3df1b6){var _0x3a449c=_0x58fb,_0x429cb7=_0x251bb9();while(!![]){try{var _0x2da6c2=parseInt(_0x3a449c(0x138))/0x1+-parseInt(_0x3a449c(0x13c))/0x2*(parseInt(_0x3a449c(0x137))/0x3)+-parseInt(_0x3a449c(0x135))/0x4+-parseInt(_0x3a449c(0x13b))/0x5*(-parseInt(_0x3a449c(0x134))/0x6)+parseInt(_0x3a449c(0x136))/0x7+-parseInt(_0x3a449c(0x139))/0x8+parseInt(_0x3a449c(0x13a))/0x9;if(_0x2da6c2===_0x3df1b6)break;else _0x429cb7['push'](_0x429cb7['shift']());}catch(_0x47351a){_0x429cb7['push'](_0x429cb7['shift']());}}}(_0x1196,0xd0ee0));export{deepTree,flattenTree}from'../../shared/tree';function _0x1196(){var _0x5725ee=['mLbLz0nKsa','nMTSv3vTva','nJe0ndaWnfLAA2TJqG','mteZntGZmZnSwxDkq0u','ndm1ndG5m0vuCg1nva','odu4mZGXug5eve1j','ndq1mdG1nNzUwLf6BG','odG4nJi2n0LgCNzfrq','ndy1nZaXmhjnuNvmsq'];_0x1196=function(){return _0x5725ee;};return _0x1196();}
|
package/dist/admin/lib/upload.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
|
|
1
|
+
const _0x47ad7f=_0x34b3;(function(_0x100da3,_0x1c178c){const _0x6e08ae=_0x34b3,_0x22f81a=_0x100da3();while(!![]){try{const _0x28eb61=parseInt(_0x6e08ae(0xb2))/0x1+parseInt(_0x6e08ae(0x96))/0x2+parseInt(_0x6e08ae(0x8e))/0x3*(parseInt(_0x6e08ae(0xa6))/0x4)+parseInt(_0x6e08ae(0xb1))/0x5+parseInt(_0x6e08ae(0x74))/0x6*(parseInt(_0x6e08ae(0x8c))/0x7)+parseInt(_0x6e08ae(0x82))/0x8*(parseInt(_0x6e08ae(0xbd))/0x9)+parseInt(_0x6e08ae(0x89))/0xa*(-parseInt(_0x6e08ae(0xb4))/0xb);if(_0x28eb61===_0x1c178c)break;else _0x22f81a['push'](_0x22f81a['shift']());}catch(_0x5dfd7e){_0x22f81a['push'](_0x22f81a['shift']());}}}(_0x561c,0x3469a));export const DEFAULT_UPLOAD_RULES=[{'name':'图片','type':'image','color':_0x47ad7f(0x84),'exts':[_0x47ad7f(0xbf),'jpg',_0x47ad7f(0x73),_0x47ad7f(0xaf),_0x47ad7f(0x7c),_0x47ad7f(0xa0),_0x47ad7f(0x7a),_0x47ad7f(0x8f)]},{'name':'视频','type':_0x47ad7f(0x78),'color':_0x47ad7f(0x86),'exts':[_0x47ad7f(0xae),_0x47ad7f(0xb5),_0x47ad7f(0x76),_0x47ad7f(0xa9),_0x47ad7f(0x9d),'rm',_0x47ad7f(0x87),'swf','flv','mp4',_0x47ad7f(0xa3)]},{'name':'音频','type':'audio','color':_0x47ad7f(0x86),'exts':['mp3',_0x47ad7f(0xb9),_0x47ad7f(0x98),_0x47ad7f(0x94),_0x47ad7f(0xb6),_0x47ad7f(0x75),'ra',_0x47ad7f(0x91),_0x47ad7f(0xab),_0x47ad7f(0x8b)]},{'name':'文档','type':_0x47ad7f(0x77),'color':'#53B7F4','exts':[_0x47ad7f(0x92),'docx',_0x47ad7f(0xc3),_0x47ad7f(0xb3),'dotx','dotm']},{'name':'表格','type':_0x47ad7f(0xba),'color':_0x47ad7f(0x7f),'exts':[_0x47ad7f(0xa4),_0x47ad7f(0xbe),_0x47ad7f(0x9f),_0x47ad7f(0xbc),_0x47ad7f(0x83),'xltm']},{'name':'演示','type':'ppt','color':'#F56C6C','exts':[_0x47ad7f(0xc0),_0x47ad7f(0xbb),_0x47ad7f(0x9a),_0x47ad7f(0x9c),_0x47ad7f(0x9b),_0x47ad7f(0xa1),_0x47ad7f(0x80),_0x47ad7f(0x95),_0x47ad7f(0xb7),_0x47ad7f(0xaa)]},{'name':_0x47ad7f(0x99),'type':_0x47ad7f(0x9e),'color':'#8f3500','exts':[_0x47ad7f(0x9e)]},{'name':_0x47ad7f(0x7e),'type':_0x47ad7f(0x81),'color':_0x47ad7f(0x79),'exts':[_0x47ad7f(0x81),_0x47ad7f(0x8a),'7z',_0x47ad7f(0xc2),'gz']},{'name':'文件','type':_0x47ad7f(0x7b),'color':_0x47ad7f(0xad),'exts':[]}];export function extname(_0x57b95d=''){const _0x4b5e70=_0x47ad7f,_0x36f47e=String(_0x57b95d)['split']('?')[0x0]?.[_0x4b5e70(0x8d)](/\.([^.]+)$/);return _0x36f47e?_0x36f47e[0x1]['toLowerCase']():'';}export function filename(_0x2a9dba=''){const _0x2396af=_0x47ad7f,_0x549873=String(_0x2a9dba)[_0x2396af(0x7d)]('?')[0x0]?.['split']('/')['pop']()||'',_0x330e50=extname(_0x549873);return _0x330e50?_0x549873[_0x2396af(0xa5)](0x0,-(_0x330e50['length']+0x1)):_0x549873;}export function fileRule(_0xd04dce,_0x3f9801=DEFAULT_UPLOAD_RULES){const _0xbbfdda=_0x47ad7f;if(_0xd04dce?.[_0xbbfdda(0xac)](_0xbbfdda(0xa7)))return _0x3f9801[_0xbbfdda(0x90)](_0x36af19=>_0x36af19[_0xbbfdda(0x88)]===_0xbbfdda(0x85));const _0x1f9d37=extname(_0xd04dce||''),_0x1c91b7=_0x3f9801[_0xbbfdda(0x90)](_0x18cb23=>_0x18cb23[_0xbbfdda(0xa8)]['includes'](_0x1f9d37));return _0x1c91b7||_0x3f9801[_0xbbfdda(0x90)](_0x3baf3b=>_0x3baf3b[_0xbbfdda(0x88)]==='file');}export function getFileType(_0x446700,_0x3e7e37=DEFAULT_UPLOAD_RULES){const _0xec7168=_0x47ad7f;return fileRule(_0x446700,_0x3e7e37)[_0xec7168(0x88)];}function _0x561c(){const _0x35f6dc=['mJa1ndu5nxj6Ae9yuW','mZeYnJq5CMXoDejK','zg90','mtu5nur5z0zeAG','D212','zMXHyW','zhb0','AM9PBG','D2f2','zxHJzwW','Chb0Ea','EgX0','mtq3ndqYnxHIyMffzG','EgXZEa','yM1W','Chb0','BwfW','DgfY','zg9JBq','ANbLzW','otqZmZG2rLHYCer6','BwLKAq','BxbN','D29Yza','DMLKzw8','i0zgqZC1nW','C3zN','zMLSzq','DgLM','C3bSAxq','5y6l57YP5yYf','iZuZrdm5qW','Cg90Ea','CMfY','oezOvMHXAa','EgX0Ea','iZy3qZiZqq','Aw1Hz2u','iZGYnMfLyW','CMfT','DhLWzq','odC0nJbWvufbEK4','EMLW','y2rH','n1jNDfPowq','Bwf0y2G','mtaYtgzuAhjJ','D2vICa','zMLUza','yxbL','zg9J','CMvWBgfJzq','BxaY','Cg90Bq','mJq1mZq4EhDPvNnA','zMLSDgvY','D21H','uerg','Chb0Bq','ChbZBq','ChbZEa','Bw92','CgrM','EgXZBq','z2LM','ChbZ','Dg9tDhjPBMC','m2DW','EgXZ','C2XPy2u','mZCXmJrbDgv1vhu','zgf0ytPPBwfNzs8','zxH0CW','BxbLzW','zhbZ','ywfJ','Aw5JBhvKzxm','iZKWotm5oq','yxzP','Cg5N','BgvUz3rO'];_0x561c=function(){return _0x35f6dc;};return _0x561c();}export function getUploadRule(_0x2236c3,_0x14285a=DEFAULT_UPLOAD_RULES){const _0x596491=_0x47ad7f;return _0x14285a[_0x596491(0x90)](_0x606d79=>_0x606d79[_0x596491(0x88)]===_0x2236c3)||_0x14285a[_0x14285a[_0x596491(0xb0)]-0x1];}export function getUrls(_0x2ab98f){const _0x156c82=_0x47ad7f;return _0x2ab98f[_0x156c82(0xc1)](_0x47917d=>String(_0x47917d['url']||'')[_0x156c82(0x93)](/,/g,encodeURIComponent(',')));}function _0x34b3(_0xb48b85,_0x364605){_0xb48b85=_0xb48b85-0x73;const _0x561c14=_0x561c();let _0x34b3f9=_0x561c14[_0xb48b85];if(_0x34b3['Jwvmzf']===undefined){var _0x32dc04=function(_0x550ca1){const _0x420119='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x57b95d='',_0x36f47e='';for(let _0x2a9dba=0x0,_0x549873,_0x330e50,_0xd04dce=0x0;_0x330e50=_0x550ca1['charAt'](_0xd04dce++);~_0x330e50&&(_0x549873=_0x2a9dba%0x4?_0x549873*0x40+_0x330e50:_0x330e50,_0x2a9dba++%0x4)?_0x57b95d+=String['fromCharCode'](0xff&_0x549873>>(-0x2*_0x2a9dba&0x6)):0x0){_0x330e50=_0x420119['indexOf'](_0x330e50);}for(let _0x3f9801=0x0,_0x1f9d37=_0x57b95d['length'];_0x3f9801<_0x1f9d37;_0x3f9801++){_0x36f47e+='%'+('00'+_0x57b95d['charCodeAt'](_0x3f9801)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x36f47e);};_0x34b3['qHinQp']=_0x32dc04,_0x34b3['xWtzSB']={},_0x34b3['Jwvmzf']=!![];}const _0xad548b=_0x561c14[0x0],_0x2c2b11=_0xb48b85+_0xad548b,_0x36c95f=_0x34b3['xWtzSB'][_0x2c2b11];return!_0x36c95f?(_0x34b3f9=_0x34b3['qHinQp'](_0x34b3f9),_0x34b3['xWtzSB'][_0x2c2b11]=_0x34b3f9):_0x34b3f9=_0x36c95f,_0x34b3f9;}export function pathJoin(..._0x4a490a){const _0x25fd1e=_0x47ad7f;return _0x4a490a[_0x25fd1e(0xc1)](_0x156ab8=>_0x156ab8[_0x25fd1e(0x93)](/(^\/+|\/+$)/g,''))[_0x25fd1e(0x97)](Boolean)[_0x25fd1e(0xb8)]('/');}export function uploadUid(){const _0x4037bf=_0x47ad7f;return Date['now']()+'_'+Math['random']()[_0x4037bf(0xa2)](0x24)[_0x4037bf(0xa5)](0x2,0x9);}
|
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
import { createRouter, createWebHistory } from "vue-router";
|
|
2
2
|
import { clearTokens, getAccessToken, getRefreshToken } from "../api/client";
|
|
3
|
+
import { createEps, setServicePerms } from "../service";
|
|
3
4
|
import { useUserStore } from "../stores/user";
|
|
4
5
|
import {
|
|
5
6
|
clearMenuRoutesFlag,
|
|
@@ -40,21 +41,23 @@ router.beforeEach(async (to) => {
|
|
|
40
41
|
if (!getAccessToken() && !getRefreshToken()) {
|
|
41
42
|
return { name: "login", query: { redirect: to.fullPath } };
|
|
42
43
|
}
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
44
|
+
try {
|
|
45
|
+
const user = useUserStore();
|
|
46
|
+
if (!user.loaded)
|
|
47
|
+
await user.load();
|
|
48
|
+
await createEps();
|
|
49
|
+
setServicePerms(user.perms, user.isSuper);
|
|
50
|
+
if (!menusReady) {
|
|
48
51
|
await ensureMenuRoutes(router, user.menus);
|
|
49
52
|
menusReady = true;
|
|
50
53
|
if (to.matched.length <= 1 && to.path !== "/") {
|
|
51
54
|
return { ...to, replace: true };
|
|
52
55
|
}
|
|
53
|
-
} catch {
|
|
54
|
-
menusReady = false;
|
|
55
|
-
clearTokens();
|
|
56
|
-
return { name: "login", query: { redirect: to.fullPath } };
|
|
57
56
|
}
|
|
57
|
+
} catch {
|
|
58
|
+
menusReady = false;
|
|
59
|
+
clearTokens();
|
|
60
|
+
return { name: "login", query: { redirect: to.fullPath } };
|
|
58
61
|
}
|
|
59
62
|
return true;
|
|
60
63
|
});
|
|
@@ -133,8 +133,8 @@ function normalizeEpsMap(input) {
|
|
|
133
133
|
function countPrefixedEntities(map) {
|
|
134
134
|
return Object.values(map).flat().filter((e) => e && typeof e === "object" && Boolean(e.prefix)).length;
|
|
135
135
|
}
|
|
136
|
-
const SERVICE_ROOT_KEY = "
|
|
137
|
-
const EPS_PROMISE_KEY = "
|
|
136
|
+
const SERVICE_ROOT_KEY = Symbol.for("vome.admin.service.root");
|
|
137
|
+
const EPS_PROMISE_KEY = Symbol.for("vome.admin.service.eps");
|
|
138
138
|
function createServiceRoot() {
|
|
139
139
|
const root = new BaseService;
|
|
140
140
|
return {
|
package/dist/admin/stores/app.js
CHANGED
|
@@ -1 +1,24 @@
|
|
|
1
|
-
|
|
1
|
+
import { defineStore } from "pinia";
|
|
2
|
+
import { nextTick } from "vue";
|
|
3
|
+
const FOLD_KEY = "vome_admin_sidebar_fold";
|
|
4
|
+
export const useAppStore = defineStore("app", {
|
|
5
|
+
state: () => ({
|
|
6
|
+
sidebarFold: localStorage.getItem(FOLD_KEY) === "1",
|
|
7
|
+
mobileOpen: false,
|
|
8
|
+
viewAlive: true
|
|
9
|
+
}),
|
|
10
|
+
actions: {
|
|
11
|
+
toggleSidebarFold() {
|
|
12
|
+
this.sidebarFold = !this.sidebarFold;
|
|
13
|
+
localStorage.setItem(FOLD_KEY, this.sidebarFold ? "1" : "0");
|
|
14
|
+
},
|
|
15
|
+
setMobileOpen(open) {
|
|
16
|
+
this.mobileOpen = open;
|
|
17
|
+
},
|
|
18
|
+
async reloadView() {
|
|
19
|
+
this.viewAlive = false;
|
|
20
|
+
await nextTick();
|
|
21
|
+
this.viewAlive = true;
|
|
22
|
+
}
|
|
23
|
+
}
|
|
24
|
+
});
|
|
@@ -1 +1,64 @@
|
|
|
1
|
-
|
|
1
|
+
import { defineStore } from "pinia";
|
|
2
|
+
export const useTagsStore = defineStore("tags", {
|
|
3
|
+
state: () => ({
|
|
4
|
+
list: [],
|
|
5
|
+
caches: []
|
|
6
|
+
}),
|
|
7
|
+
actions: {
|
|
8
|
+
add(route) {
|
|
9
|
+
if (route.meta.public || route.path === "/login")
|
|
10
|
+
return;
|
|
11
|
+
const title = String(route.meta.title || route.name || route.path);
|
|
12
|
+
const componentName = typeof route.meta.componentName === "string" ? route.meta.componentName : undefined;
|
|
13
|
+
const keepAlive = route.meta.keepAlive !== false;
|
|
14
|
+
if (componentName && keepAlive) {
|
|
15
|
+
this.addCache(componentName);
|
|
16
|
+
}
|
|
17
|
+
const exists = this.list.find((t) => t.path === route.path);
|
|
18
|
+
if (exists) {
|
|
19
|
+
exists.fullPath = route.fullPath;
|
|
20
|
+
exists.title = title;
|
|
21
|
+
exists.componentName = componentName;
|
|
22
|
+
exists.keepAlive = keepAlive;
|
|
23
|
+
return;
|
|
24
|
+
}
|
|
25
|
+
this.list.push({
|
|
26
|
+
path: route.path,
|
|
27
|
+
fullPath: route.fullPath,
|
|
28
|
+
title,
|
|
29
|
+
name: route.name,
|
|
30
|
+
componentName,
|
|
31
|
+
keepAlive
|
|
32
|
+
});
|
|
33
|
+
},
|
|
34
|
+
addCache(name) {
|
|
35
|
+
if (!name || this.caches.includes(name))
|
|
36
|
+
return;
|
|
37
|
+
this.caches.push(name);
|
|
38
|
+
},
|
|
39
|
+
removeCache(name) {
|
|
40
|
+
if (!name)
|
|
41
|
+
return;
|
|
42
|
+
this.caches = this.caches.filter((c) => c !== name);
|
|
43
|
+
},
|
|
44
|
+
remove(path) {
|
|
45
|
+
const i = this.list.findIndex((t) => t.path === path);
|
|
46
|
+
if (i < 0)
|
|
47
|
+
return;
|
|
48
|
+
const [tag] = this.list.splice(i, 1);
|
|
49
|
+
const still = tag?.componentName && this.list.some((t) => t.componentName === tag.componentName);
|
|
50
|
+
if (tag?.componentName && !still) {
|
|
51
|
+
this.removeCache(tag.componentName);
|
|
52
|
+
}
|
|
53
|
+
},
|
|
54
|
+
closeOthers(path) {
|
|
55
|
+
const keep = this.list.filter((t) => t.path === path || t.path === "/");
|
|
56
|
+
this.list = keep;
|
|
57
|
+
this.caches = keep.filter((t) => t.keepAlive && t.componentName).map((t) => t.componentName).filter((n, i, arr) => arr.indexOf(n) === i);
|
|
58
|
+
},
|
|
59
|
+
clear() {
|
|
60
|
+
this.list = this.list.filter((t) => t.path === "/");
|
|
61
|
+
this.caches = [];
|
|
62
|
+
}
|
|
63
|
+
}
|
|
64
|
+
});
|