vome-core 0.3.67 → 0.3.68
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/admin/api/client.d.ts +50 -0
- package/dist/admin/components/ui/avatar/index.d.ts +3 -0
- package/dist/admin/components/ui/avatar/index.js +1 -1
- package/dist/admin/components/ui/badge/index.d.ts +6 -0
- package/dist/admin/components/ui/button/index.d.ts +7 -0
- package/dist/admin/components/ui/checkbox/index.d.ts +1 -0
- package/dist/admin/components/ui/checkbox/index.js +1 -1
- package/dist/admin/components/ui/dialog/index.d.ts +10 -0
- package/dist/admin/components/ui/dialog/index.js +1 -1
- package/dist/admin/components/ui/dropdown-menu/index.d.ts +15 -0
- package/dist/admin/components/ui/dropdown-menu/index.js +1 -1
- package/dist/admin/components/ui/input/index.d.ts +1 -0
- package/dist/admin/components/ui/input/index.js +1 -1
- package/dist/admin/components/ui/label/index.d.ts +1 -0
- package/dist/admin/components/ui/label/index.js +1 -1
- package/dist/admin/components/ui/scroll-area/index.d.ts +2 -0
- package/dist/admin/components/ui/scroll-area/index.js +1 -1
- package/dist/admin/components/ui/select/index.d.ts +11 -0
- package/dist/admin/components/ui/select/index.js +1 -1
- package/dist/admin/components/ui/separator/index.d.ts +1 -0
- package/dist/admin/components/ui/separator/index.js +1 -1
- package/dist/admin/components/ui/sheet/index.d.ts +8 -0
- package/dist/admin/components/ui/sheet/index.js +1 -1
- package/dist/admin/components/ui/sonner/index.d.ts +1 -0
- package/dist/admin/components/ui/sonner/index.js +1 -1
- package/dist/admin/components/ui/table/index.d.ts +9 -0
- package/dist/admin/components/ui/table/index.js +1 -1
- package/dist/admin/components/ui/tabs/index.d.ts +4 -0
- package/dist/admin/components/ui/tabs/index.js +1 -1
- package/dist/admin/components/ui/tooltip/index.d.ts +4 -0
- package/dist/admin/components/ui/tooltip/index.js +1 -1
- package/dist/admin/crud/auto-fields.d.ts +68 -0
- package/dist/admin/crud/auto-fields.js +1 -1
- package/dist/admin/crud/config.d.ts +5 -0
- package/dist/admin/crud/config.js +1 -1
- package/dist/admin/crud/confirm.d.ts +19 -0
- package/dist/admin/crud/confirm.js +1 -1
- package/dist/admin/crud/crud-page-request.d.ts +21 -0
- package/dist/admin/crud/crud-page-request.js +1 -1
- package/dist/admin/crud/data-i18n.d.ts +62 -0
- package/dist/admin/crud/data-i18n.js +1 -1
- package/dist/admin/crud/dict.d.ts +4 -0
- package/dist/admin/crud/dict.js +1 -1
- package/dist/admin/crud/export-fetch.d.ts +22 -0
- package/dist/admin/crud/export-fetch.js +1 -1
- package/dist/admin/crud/index.d.ts +60 -0
- package/dist/admin/crud/json-kv.d.ts +9 -0
- package/dist/admin/crud/key.d.ts +22 -0
- package/dist/admin/crud/key.js +1 -1
- package/dist/admin/crud/paging.d.ts +2 -0
- package/dist/admin/crud/plugins.d.ts +63 -0
- package/dist/admin/crud/plugins.js +1 -1
- package/dist/admin/crud/registry.d.ts +3 -0
- package/dist/admin/crud/span.d.ts +17 -0
- package/dist/admin/crud/span.js +1 -1
- package/dist/admin/crud/style.d.ts +82 -0
- package/dist/admin/crud/style.js +1 -1
- package/dist/admin/crud/useCrud.d.ts +26 -0
- package/dist/admin/crud/validate.d.ts +7 -0
- package/dist/admin/crud/validate.js +1 -1
- package/dist/admin/directives/perm.d.ts +3 -0
- package/dist/admin/directives/perm.js +1 -1
- package/dist/admin/hooks/useBrowser.d.ts +6 -0
- package/dist/admin/hooks/useUpload.d.ts +8 -0
- package/dist/admin/hooks/useUpload.js +1 -1
- package/dist/admin/hooks/useVome.d.ts +10 -0
- package/dist/admin/index.d.ts +31 -1
- package/dist/admin/lib/browser.d.ts +3 -0
- package/dist/admin/lib/browser.js +1 -1
- package/dist/admin/lib/cn.d.ts +2 -0
- package/dist/admin/lib/cn.js +1 -1
- package/dist/admin/lib/compress-image.d.ts +12 -0
- package/dist/admin/lib/dialog-float.d.ts +8 -0
- package/dist/admin/lib/dialog-float.js +1 -1
- package/dist/admin/lib/eps.d.ts +2 -0
- package/dist/admin/lib/export-excel.d.ts +9 -0
- package/dist/admin/lib/export-excel.js +1 -1
- package/dist/admin/lib/file-preview.d.ts +9 -0
- package/dist/admin/lib/import-excel.d.ts +21 -0
- package/dist/admin/lib/import-excel.js +1 -1
- package/dist/admin/lib/json.d.ts +11 -0
- package/dist/admin/lib/json.js +1 -1
- package/dist/admin/lib/menu.d.ts +3 -0
- package/dist/admin/lib/menu.js +1 -1
- package/dist/admin/lib/micro-locale.d.ts +5 -0
- package/dist/admin/lib/micro-locale.js +1 -1
- package/dist/admin/lib/micro-theme.d.ts +14 -0
- package/dist/admin/lib/micro-theme.js +1 -1
- package/dist/admin/lib/module.d.ts +21 -0
- package/dist/admin/lib/scarce-assets.d.ts +5 -0
- package/dist/admin/lib/shell.d.ts +8 -0
- package/dist/admin/lib/shell.js +1 -1
- package/dist/admin/lib/theme-color-options.d.ts +15 -0
- package/dist/admin/lib/theme-color-options.js +1 -1
- package/dist/admin/lib/tree.d.ts +2 -0
- package/dist/admin/lib/tree.js +1 -1
- package/dist/admin/lib/upload.d.ts +17 -0
- package/dist/admin/lib/upload.js +1 -1
- package/dist/admin/lib/video-frame.d.ts +6 -0
- package/dist/admin/lib/video-frame.js +1 -1
- package/dist/admin/router/create.d.ts +16 -0
- package/dist/admin/router/create.js +1 -1
- package/dist/admin/router/guards.d.ts +6 -0
- package/dist/admin/router/guards.js +1 -1
- package/dist/admin/router/index.d.ts +5 -1
- package/dist/admin/router/menu-routes.d.ts +13 -0
- package/dist/admin/service/index.d.ts +11 -1
- package/dist/admin/stores/app.d.ts +1 -0
- package/dist/admin/stores/tags.d.ts +1 -0
- package/dist/admin/stores/user.d.ts +1 -0
- package/dist/ai/index.js +1 -1
- package/dist/client/admin-vendor.d.ts +13 -1
- package/dist/client/ai-model-registry.d.ts +16 -0
- package/dist/client/ai-model-registry.js +1 -1
- package/dist/client/base.d.ts +28 -0
- package/dist/client/base.js +1 -1
- package/dist/client/configure.d.ts +33 -0
- package/dist/client/configure.js +1 -1
- package/dist/client/dict.d.ts +31 -0
- package/dist/client/dict.js +1 -1
- package/dist/client/eps-payload.d.ts +3 -0
- package/dist/client/eps-payload.js +1 -1
- package/dist/client/eps.d.ts +17 -0
- package/dist/client/eps.js +1 -1
- package/dist/client/index.d.ts +7 -1
- package/dist/client/index.js +1 -1
- package/dist/client/locale-change.d.ts +16 -0
- package/dist/client/locale-change.js +1 -1
- package/dist/client/locale-store.d.ts +61 -0
- package/dist/client/locale-store.js +1 -1
- package/dist/client/path.d.ts +6 -0
- package/dist/client/path.js +1 -0
- package/dist/client/service.d.ts +29 -0
- package/dist/client/service.js +1 -1
- package/dist/client/vite-admin.d.ts +40 -1
- package/dist/client/vite-admin.js +1 -1
- package/dist/client/vite-auto-import.d.ts +2 -1
- package/dist/client/vite-auto-import.js +1 -1
- package/dist/client/vite-micro-proxy.d.ts +20 -1
- package/dist/client/vite-micro-proxy.js +1 -1
- package/dist/client/vite-plugin-eps.d.ts +20 -1
- package/dist/client/vite-plugin-eps.js +1 -1
- package/dist/client/vite-resolve.d.ts +16 -1
- package/dist/client/vite-resolve.js +1 -1
- package/dist/config/index.js +1 -1
- package/dist/index.js +1 -1
- package/dist/server/index.js +1 -1
- package/dist/shared/datetime-picker.js +1 -1
- package/dist/shared/decimal.js +1 -1
- package/dist/shared/excel.js +1 -1
- package/dist/shared/index.js +1 -1
- package/dist/shared/locale-json.js +1 -1
- package/dist/shared/tree.js +1 -1
- package/package.json +3 -3
package/dist/admin/index.d.ts
CHANGED
|
@@ -1 +1,31 @@
|
|
|
1
|
-
export {}
|
|
1
|
+
export { resolveView, listViewsTree, viewPathToName, registerViews, VIEWS_RESCAN_EVENT, } from './lib/module';
|
|
2
|
+
export type { ViewsTreeNode } from '../../typings/admin/vome/module';
|
|
3
|
+
export type { BrowserInfo, BrowserScreen } from '../../typings/admin/vome/browser';
|
|
4
|
+
export { useBrowser } from './hooks/useBrowser';
|
|
5
|
+
export { useUpload } from './hooks/useUpload';
|
|
6
|
+
export { useVome } from './hooks/useVome';
|
|
7
|
+
/** CRUD 组件走自动引入;此处只再导出 composable / 工具,避免桶导入拖入全部 SFC */
|
|
8
|
+
export { useCrud, useTable, useUpsert, useSearch, useImport, useCore, CRUD_KEY, } from './crud/useCrud';
|
|
9
|
+
export { Plugins, toTree, setFocus, setRules, setAuto, buildAutoSearchItems, } from './crud/plugins';
|
|
10
|
+
export { buildAutoUpsertItems, buildAutoTableColumns, mergeByProp, pinOpColumnsLast, mapDictOptions, dictFirstValue, resolveFormItemValue, } from './crud/auto-fields';
|
|
11
|
+
export { setCrudConfig, getCrudConfig, getCrudStyle, setCrudTranslator, crudLocaleRev, crudT, crudLabel, crudFormat, } from './crud/style';
|
|
12
|
+
export { resolveCrudComponent, registerCrudComponent } from './crud/registry';
|
|
13
|
+
export { vmConfirm } from './crud/confirm';
|
|
14
|
+
export type { ConfirmDialogComponents } from './crud/confirm';
|
|
15
|
+
export { deepTree, flattenTree } from './lib/tree';
|
|
16
|
+
export { configureAdminShellHooks, runAdminShellLogoutCleanup } from './lib/shell';
|
|
17
|
+
export type { AdminShellHooks } from './lib/shell';
|
|
18
|
+
export { getScarceSvgUrl, listScarceKinds, SCARCE_PAGE_NOT_FOUND } from './lib/scarce-assets';
|
|
19
|
+
export { setupAdminRouterGuards, resetMenuRoutesFlag, ensureMenuRoutes, syncMenuRoutes, createAdminRouter, } from './router';
|
|
20
|
+
export type { MenuRouteShell, AdminRouterPages, AdminRouterResult, } from './router';
|
|
21
|
+
export { useAppStore } from './stores/app';
|
|
22
|
+
export { useUserStore } from './stores/user';
|
|
23
|
+
export { useTagsStore } from './stores/tags';
|
|
24
|
+
export { api, request, apiUrl, isAiStreamResult, getAccessToken, getRefreshToken, setTokens, clearTokens, formatApiMessage, } from './api/client';
|
|
25
|
+
export type { AiClientStreamResult, AiClientStreamChunk } from './api/client';
|
|
26
|
+
export { service, createEps, setServicePerms, resolveService, serviceOf, BaseService, } from './service';
|
|
27
|
+
export { vPerm } from './directives/perm';
|
|
28
|
+
export { cn } from './lib/cn';
|
|
29
|
+
export { preventDialogOutsideClose, isDialogFloatTarget, DIALOG_FLOAT_CLASS } from './lib/dialog-float';
|
|
30
|
+
export { hasJsonContent, prettyJson, textOfJson, parseJsonInput } from './lib/json';
|
|
31
|
+
export type { JsonParseResult } from './lib/json';
|
|
@@ -1 +1 @@
|
|
|
1
|
-
function
|
|
1
|
+
const _0x4e403d=_0x1480;function _0x1480(_0x244fe2,_0x139df3){_0x244fe2=_0x244fe2-0x98;const _0x55b05b=_0x55b0();let _0x1480c6=_0x55b05b[_0x244fe2];if(_0x1480['uZDaFm']===undefined){var _0x2d3d8c=function(_0x5300a9){const _0x19b16='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x571134='',_0x264e72='';for(let _0x86f749=0x0,_0x5cae1b,_0x566547,_0x276c1c=0x0;_0x566547=_0x5300a9['charAt'](_0x276c1c++);~_0x566547&&(_0x5cae1b=_0x86f749%0x4?_0x5cae1b*0x40+_0x566547:_0x566547,_0x86f749++%0x4)?_0x571134+=String['fromCharCode'](0xff&_0x5cae1b>>(-0x2*_0x86f749&0x6)):0x0){_0x566547=_0x19b16['indexOf'](_0x566547);}for(let _0x50e21b=0x0,_0x58be0c=_0x571134['length'];_0x50e21b<_0x58be0c;_0x50e21b++){_0x264e72+='%'+('00'+_0x571134['charCodeAt'](_0x50e21b)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x264e72);};_0x1480['utDwJN']=_0x2d3d8c,_0x1480['FSfdts']={},_0x1480['uZDaFm']=!![];}const _0x29b44b=_0x55b05b[0x0],_0x4d3ba2=_0x244fe2+_0x29b44b,_0x83e35c=_0x1480['FSfdts'][_0x4d3ba2];return!_0x83e35c?(_0x1480c6=_0x1480['utDwJN'](_0x1480c6),_0x1480['FSfdts'][_0x4d3ba2]=_0x1480c6):_0x1480c6=_0x83e35c,_0x1480c6;}(function(_0x10caa0,_0x540a00){const _0x2ec820=_0x1480,_0x28744c=_0x10caa0();while(!![]){try{const _0x4aa840=parseInt(_0x2ec820(0xa6))/0x1*(parseInt(_0x2ec820(0x9e))/0x2)+parseInt(_0x2ec820(0xa9))/0x3+parseInt(_0x2ec820(0x9c))/0x4*(parseInt(_0x2ec820(0xaa))/0x5)+parseInt(_0x2ec820(0xa1))/0x6+-parseInt(_0x2ec820(0xa3))/0x7*(-parseInt(_0x2ec820(0xa8))/0x8)+parseInt(_0x2ec820(0xa2))/0x9+-parseInt(_0x2ec820(0x9d))/0xa;if(_0x4aa840===_0x540a00)break;else _0x28744c['push'](_0x28744c['shift']());}catch(_0x7c326c){_0x28744c['push'](_0x28744c['shift']());}}}(_0x55b0,0xd2c41));function _0x55b0(){const _0x44d650=['ntG2teLUy1Hr','zNvSBa','Dg9mB3DLCKnHC2u','ndGYndq2ofHVCuPpBG','mZK3mdK0nfvLthD3rW','ndjwvLHxvNy','zg9JDw1LBNrfBgvTzw50','Bwf0y2G','nta3ne16DK5ovG','Dw5KzwzPBMvK','mtC1ode2ofrjDvLZra','oty3mZK4CfLqr010','mZGZnteWq09cC29N','B3rOzxi','BxnPzq','DxnLCKfNzw50','DgvZDa','nZzdvLbwzNC','ndK2nZeWotbwCKXAwu0'];_0x55b0=function(){return _0x44d650;};return _0x55b0();}const SSR_FALLBACK={'height':0x0,'width':0x780,'type':_0x4e403d(0x98),'screen':'full','isMini':![]};export function getBrowser(){const _0x1b950c=_0x4e403d;if(typeof document===_0x1b950c(0xa7)||typeof navigator===_0x1b950c(0xa7))return{...SSR_FALLBACK};const {clientHeight:_0x571134,clientWidth:_0x264e72}=document[_0x1b950c(0xa4)],_0x86f749=navigator[_0x1b950c(0x9a)][_0x1b950c(0xa0)]();let _0x5cae1b=(_0x86f749['match'](/firefox|chrome|safari|opera/g)||['other'])[0x0];if((_0x86f749[_0x1b950c(0xa5)](/msie|trident/g)||[])[0x0])_0x5cae1b=_0x1b950c(0x99);let _0x566547=_0x1b950c(0x9f);if(_0x264e72<0x300)_0x566547='xs';else{if(_0x264e72<0x3e0)_0x566547='sm';else{if(_0x264e72<0x4b0)_0x566547='md';else{if(_0x264e72<0x780)_0x566547='xl';}}}const _0x276c1c=!/android|webos|iphone|ipad|ipod|blackberry|iemobile|opera mini/i[_0x1b950c(0x9b)](_0x86f749);return{'height':_0x571134,'width':_0x264e72,'type':_0x5cae1b,'screen':_0x566547,'isMini':_0x566547==='xs'||!_0x276c1c};}
|
package/dist/admin/lib/cn.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
(function(
|
|
1
|
+
(function(_0x345795,_0xb3170b){var _0x27ca01=_0x28f3,_0x38ecc0=_0x345795();while(!![]){try{var _0xf9a394=parseInt(_0x27ca01(0x191))/0x1+-parseInt(_0x27ca01(0x196))/0x2+parseInt(_0x27ca01(0x195))/0x3*(-parseInt(_0x27ca01(0x199))/0x4)+-parseInt(_0x27ca01(0x194))/0x5+-parseInt(_0x27ca01(0x193))/0x6*(-parseInt(_0x27ca01(0x192))/0x7)+-parseInt(_0x27ca01(0x198))/0x8+parseInt(_0x27ca01(0x197))/0x9;if(_0xf9a394===_0xb3170b)break;else _0x38ecc0['push'](_0x38ecc0['shift']());}catch(_0x127fd0){_0x38ecc0['push'](_0x38ecc0['shift']());}}}(_0x5cb3,0xdbe43));function _0x5cb3(){var _0x3075bd=['mZGZnZbjqxLzteS','mty2mda2oevrr0HmBa','mJy4mZi5nZHHuu5SzLa','ntqXmtCWnejHCLPRva','ndCYCLvXBxfP','ode5mZK5CuvAvvrH','ode5nJu1ouzPtKT4zq','nLLnwwnuua','nti3nJKZmgrKzu9ztq'];_0x5cb3=function(){return _0x3075bd;};return _0x5cb3();}import{clsx}from'clsx';function _0x28f3(_0x221296,_0x45de81){_0x221296=_0x221296-0x191;var _0x5cb398=_0x5cb3();var _0x28f37f=_0x5cb398[_0x221296];if(_0x28f3['HzakEO']===undefined){var _0x4e3bbe=function(_0x2099de){var _0x302cbe='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';var _0x430ead='',_0x54d7f7='';for(var _0x45606f=0x0,_0x19b801,_0x7bde58,_0x13c10a=0x0;_0x7bde58=_0x2099de['charAt'](_0x13c10a++);~_0x7bde58&&(_0x19b801=_0x45606f%0x4?_0x19b801*0x40+_0x7bde58:_0x7bde58,_0x45606f++%0x4)?_0x430ead+=String['fromCharCode'](0xff&_0x19b801>>(-0x2*_0x45606f&0x6)):0x0){_0x7bde58=_0x302cbe['indexOf'](_0x7bde58);}for(var _0x4eae6e=0x0,_0x1dc896=_0x430ead['length'];_0x4eae6e<_0x1dc896;_0x4eae6e++){_0x54d7f7+='%'+('00'+_0x430ead['charCodeAt'](_0x4eae6e)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x54d7f7);};_0x28f3['aJCdoB']=_0x4e3bbe,_0x28f3['JuDDYP']={},_0x28f3['HzakEO']=!![];}var _0x3d9508=_0x5cb398[0x0],_0x2f8168=_0x221296+_0x3d9508,_0x540ed5=_0x28f3['JuDDYP'][_0x2f8168];return!_0x540ed5?(_0x28f37f=_0x28f3['aJCdoB'](_0x28f37f),_0x28f3['JuDDYP'][_0x2f8168]=_0x28f37f):_0x28f37f=_0x540ed5,_0x28f37f;}import{twMerge}from'tailwind-merge';export function cn(..._0x430ead){return twMerge(clsx(_0x430ead));}
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
/** 是否走浏览器压缩(按 MIME;svg / 非图片否) */
|
|
2
|
+
export declare function isCompressibleImage(type: string): boolean;
|
|
3
|
+
export type CompressImageOptions = {
|
|
4
|
+
/** 0–100,来自 browser-image-compression */
|
|
5
|
+
onProgress?: (percent: number) => void;
|
|
6
|
+
};
|
|
7
|
+
/**
|
|
8
|
+
* 浏览器端压缩图片(browser-image-compression)。
|
|
9
|
+
* 不可压类型 / 失败时返回原 File。
|
|
10
|
+
* 依赖由 dist/admin/vendor 预打包;本文件须加入 obfuscate skip。
|
|
11
|
+
*/
|
|
12
|
+
export declare function compressImage(file: File, opts?: CompressImageOptions): Promise<File>;
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
/** Dialog 内 Teleport 浮层统一标记:点浮层时勿关闭宿主 Dialog */
|
|
2
|
+
export declare const DIALOG_FLOAT_CLASS = "vm-dialog-float";
|
|
3
|
+
/** 触发框与 Teleport / Popper 浮层之间的间距(px) */
|
|
4
|
+
export declare const POPUP_TRIGGER_GAP = 2;
|
|
5
|
+
/** 判断 pointer/focus/interact-outside 是否落在 Dialog 浮层上 */
|
|
6
|
+
export declare function isDialogFloatTarget(event: Event): boolean;
|
|
7
|
+
/** CRUD Dialog:点击内部 Teleport 浮层时不关闭宿主弹窗 */
|
|
8
|
+
export declare function preventDialogOutsideClose(event: Event): void;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
function
|
|
1
|
+
const _0x449a84=_0x1b2d;function _0x3e50(){const _0x218755=['DgfYz2v0','mtiXodeZnwfcC0XTCq','mtiWode0mtf5B3bWCNa','DM0TzgLHBg9NlwzSB2f0','mZi0odi4nffdr0rLEa','ovvey1feqq','nduWodzly3Pbyva','ntm2ndC0ngLzs3D5Dq','nZe3oteXnhH3BKjRzG','nun2ufjhBW','y2XVC2vZDa','mJC5ntyWmffzC1Durq','B3jPz2LUywXfDMvUDa'];_0x3e50=function(){return _0x218755;};return _0x3e50();}(function(_0x36824d,_0xa1f103){const _0x2dc576=_0x1b2d,_0x1d839b=_0x36824d();while(!![]){try{const _0x4de54f=parseInt(_0x2dc576(0x151))/0x1+-parseInt(_0x2dc576(0x156))/0x2*(-parseInt(_0x2dc576(0x155))/0x3)+parseInt(_0x2dc576(0x154))/0x4+parseInt(_0x2dc576(0x159))/0x5*(-parseInt(_0x2dc576(0x158))/0x6)+parseInt(_0x2dc576(0x157))/0x7+parseInt(_0x2dc576(0x15b))/0x8+-parseInt(_0x2dc576(0x152))/0x9;if(_0x4de54f===_0xa1f103)break;else _0x1d839b['push'](_0x1d839b['shift']());}catch(_0x56eafc){_0x1d839b['push'](_0x1d839b['shift']());}}}(_0x3e50,0xa4bdb));export const DIALOG_FLOAT_CLASS=_0x449a84(0x153);export const POPUP_TRIGGER_GAP=0x2;function _0x1b2d(_0x1e1137,_0x59a011){_0x1e1137=_0x1e1137-0x151;const _0x3e502d=_0x3e50();let _0x1b2d1c=_0x3e502d[_0x1e1137];if(_0x1b2d['mAULsH']===undefined){var _0x55958d=function(_0x3fe29b){const _0x17ff02='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x239f85='',_0x324be5='';for(let _0x2c5743=0x0,_0x4c85b9,_0x54e96f,_0x3ce8c3=0x0;_0x54e96f=_0x3fe29b['charAt'](_0x3ce8c3++);~_0x54e96f&&(_0x4c85b9=_0x2c5743%0x4?_0x4c85b9*0x40+_0x54e96f:_0x54e96f,_0x2c5743++%0x4)?_0x239f85+=String['fromCharCode'](0xff&_0x4c85b9>>(-0x2*_0x2c5743&0x6)):0x0){_0x54e96f=_0x17ff02['indexOf'](_0x54e96f);}for(let _0x5ab96e=0x0,_0x3213e7=_0x239f85['length'];_0x5ab96e<_0x3213e7;_0x5ab96e++){_0x324be5+='%'+('00'+_0x239f85['charCodeAt'](_0x5ab96e)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x324be5);};_0x1b2d['dpJsMH']=_0x55958d,_0x1b2d['IPNARC']={},_0x1b2d['mAULsH']=!![];}const _0x5ba34b=_0x3e502d[0x0],_0x3c3575=_0x1e1137+_0x5ba34b,_0x4ff07b=_0x1b2d['IPNARC'][_0x3c3575];return!_0x4ff07b?(_0x1b2d1c=_0x1b2d['dpJsMH'](_0x1b2d1c),_0x1b2d['IPNARC'][_0x3c3575]=_0x1b2d1c):_0x1b2d1c=_0x4ff07b,_0x1b2d1c;}export function isDialogFloatTarget(_0x239f85){const _0x4fa2d1=_0x449a84,_0x324be5=_0x239f85['detail'],_0x2c5743=_0x324be5?.[_0x4fa2d1(0x15c)]?.[_0x4fa2d1(0x15d)]??_0x239f85['target'];if(!_0x2c5743)return![];const _0x4c85b9=_0x2c5743 instanceof Element?_0x2c5743:_0x2c5743['parentElement'];return Boolean(_0x4c85b9?.[_0x4fa2d1(0x15a)]('.'+DIALOG_FLOAT_CLASS));}export function preventDialogOutsideClose(_0x54e96f){if(isDialogFloatTarget(_0x54e96f))_0x54e96f['preventDefault']();}
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
import type { CrudColumn } from '../../../typings/admin/comm/crud';
|
|
2
|
+
export { buildExcelBuffer, excelFilename, excelResponseHeaders, toExcelUint8Array, } from '../../shared/excel';
|
|
3
|
+
export type { ExcelColumn } from '../../shared/excel';
|
|
4
|
+
/** 可导出的数据列(排除 selection / op 等) */
|
|
5
|
+
export declare function pickExportColumns(columns: CrudColumn[]): CrudColumn[];
|
|
6
|
+
export declare function flattenExportRows(rows: Record<string, unknown>[], tree?: boolean): Record<string, unknown>[];
|
|
7
|
+
/** 浏览器触发 xlsx 下载(勿对 ArrayBuffer 用 Uint8Array.from,会得到空缓冲) */
|
|
8
|
+
export declare function downloadExcelBuffer(buffer: Uint8Array | ArrayBuffer, filename: string): void;
|
|
9
|
+
export declare function exportCrudExcel(columns: CrudColumn[], rows: Record<string, unknown>[], filename: string): void;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
(function(
|
|
1
|
+
(function(_0x3a2290,_0x24adcd){const _0x3d3ebc=_0x25a3,_0x5fc3d4=_0x3a2290();while(!![]){try{const _0x3b7910=parseInt(_0x3d3ebc(0xfb))/0x1+parseInt(_0x3d3ebc(0x112))/0x2*(-parseInt(_0x3d3ebc(0x113))/0x3)+parseInt(_0x3d3ebc(0xf8))/0x4+-parseInt(_0x3d3ebc(0xf6))/0x5+parseInt(_0x3d3ebc(0x105))/0x6+parseInt(_0x3d3ebc(0x10d))/0x7*(parseInt(_0x3d3ebc(0x10f))/0x8)+parseInt(_0x3d3ebc(0x10c))/0x9*(-parseInt(_0x3d3ebc(0xfa))/0xa);if(_0x3b7910===_0x24adcd)break;else _0x5fc3d4['push'](_0x5fc3d4['shift']());}catch(_0x1b2675){_0x5fc3d4['push'](_0x5fc3d4['shift']());}}}(_0x50fe,0x23260));import{toValue}from'vue';import{buildExcelBuffer,excelFilename,toExcelUint8Array}from'../../shared/excel';import{flattenTree}from'./tree';function _0x50fe(){const _0x47ad6f=['nZjTzMfise8','DMfSDwu','AhjLzG','mtqWwurPshLg','nLLvqNHHCq','BgvUz3rO','DhLWzq','ywrK','odm1mJqWAezvAvb6','zMLSDgvY','nJq1odq4seHyEhz2','zM9YBwf0DgvY','nZeYnJaWy2LODNvA','mtuXnJC4uLzLEM5q','AxnbCNjHEq','CMv2B2TLt2jQzwn0vvjm','BwfW','BgfIzwW','y2HPBgrYzw4','AM9PBG','ChjVCa','C2vSzwn0Aw9U','yxbWBgLJyxrPB24VDM5KlM9Wzw54BwXMB3jTyxrZlw9MzMLJzwrVy3vTzw50lNnWCMvHzhnOzwv0BwWUC2HLzxq','nJmWnJyWzM5puLHh','y2XPy2S','zg93BMXVywq','zMLUza','zgLJDa','Aw5KzxG','y3jLyxrLrwXLBwvUDa','mJDyCwHSBvy','odi5nZHvCLzKshe','C29Tzq'];_0x50fe=function(){return _0x47ad6f;};return _0x50fe();}export{buildExcelBuffer,excelFilename,excelResponseHeaders,toExcelUint8Array}from'../../shared/excel';export function pickExportColumns(_0x2ffcf1){const _0x2dc228=_0x25a3;return _0x2ffcf1[_0x2dc228(0xf7)](_0x3ef767=>Boolean(_0x3ef767[_0x2dc228(0x102)])&&_0x3ef767['type']!==_0x2dc228(0x103)&&_0x3ef767[_0x2dc228(0x115)]!=='op'&&_0x3ef767[_0x2dc228(0x115)]!=='expand'&&_0x3ef767[_0x2dc228(0x115)]!==_0x2dc228(0x10a)&&!_0x3ef767['hidden']);}function formatExportCell(_0x436d68,_0x556489){const _0x3dae90=_0x25a3;if(!_0x436d68[_0x3dae90(0x102)])return'';const _0x567bdb=_0x556489[_0x436d68[_0x3dae90(0x102)]];if(_0x436d68['formatter'])return _0x436d68[_0x3dae90(0xf9)](_0x556489,_0x567bdb);const _0x1b0f57=_0x436d68[_0x3dae90(0x109)]==null?[]:toValue(_0x436d68[_0x3dae90(0x109)]);if(Array['isArray'](_0x1b0f57)&&_0x1b0f57['length']&&_0x567bdb!=null&&_0x567bdb!==''){const _0x223c74=Array[_0x3dae90(0xfc)](_0x567bdb)?_0x567bdb:[_0x567bdb],_0x3bed2b=_0x223c74[_0x3dae90(0xfe)](_0x31be25=>{const _0x5251b2=_0x3dae90,_0x13456=_0x1b0f57[_0x5251b2(0x108)](_0x1bdff0=>_0x1bdff0[_0x5251b2(0x110)]===_0x31be25||String(_0x1bdff0[_0x5251b2(0x110)])===String(_0x31be25));return _0x13456?.['label'];})[_0x3dae90(0xf7)](Boolean);if(_0x3bed2b[_0x3dae90(0x114)])return _0x3bed2b[_0x3dae90(0x101)]('、');}if(_0x567bdb==null)return'';return String(_0x567bdb);}function _0x25a3(_0x82da5d,_0x35661d){_0x82da5d=_0x82da5d-0xf6;const _0x50fe7b=_0x50fe();let _0x25a380=_0x50fe7b[_0x82da5d];if(_0x25a3['JbFJKh']===undefined){var _0x299665=function(_0xcec77e){const _0x3aa5b1='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x2ffcf1='',_0x3ef767='';for(let _0x436d68=0x0,_0x556489,_0x567bdb,_0x1b0f57=0x0;_0x567bdb=_0xcec77e['charAt'](_0x1b0f57++);~_0x567bdb&&(_0x556489=_0x436d68%0x4?_0x556489*0x40+_0x567bdb:_0x567bdb,_0x436d68++%0x4)?_0x2ffcf1+=String['fromCharCode'](0xff&_0x556489>>(-0x2*_0x436d68&0x6)):0x0){_0x567bdb=_0x3aa5b1['indexOf'](_0x567bdb);}for(let _0x223c74=0x0,_0x3bed2b=_0x2ffcf1['length'];_0x223c74<_0x3bed2b;_0x223c74++){_0x3ef767+='%'+('00'+_0x2ffcf1['charCodeAt'](_0x223c74)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x3ef767);};_0x25a3['CwJgmG']=_0x299665,_0x25a3['XcGNeg']={},_0x25a3['JbFJKh']=!![];}const _0x2a4d73=_0x50fe7b[0x0],_0x108b95=_0x82da5d+_0x2a4d73,_0x5b7604=_0x25a3['XcGNeg'][_0x108b95];return!_0x5b7604?(_0x25a380=_0x25a3['CwJgmG'](_0x25a380),_0x25a3['XcGNeg'][_0x108b95]=_0x25a380):_0x25a380=_0x5b7604,_0x25a380;}export function flattenExportRows(_0x92df20,_0x145a24){const _0x47e58f=_0x25a3;if(!_0x145a24)return _0x92df20;const _0x187219=_0x92df20[_0x47e58f(0x10e)](_0x119212=>Array[_0x47e58f(0xfc)](_0x119212[_0x47e58f(0x100)])&&_0x119212['children'][_0x47e58f(0x114)]);if(!_0x187219)return _0x92df20;const _0x4681e4=new Set(),_0xd647a1=_0x4f57cb=>{const _0x119875=_0x47e58f;for(const _0x3e797f of _0x4f57cb){if(_0x3e797f['id']!=null)_0x4681e4[_0x119875(0x116)](_0x3e797f['id']);const _0x3b155b=_0x3e797f[_0x119875(0x100)];Array[_0x119875(0xfc)](_0x3b155b)&&_0x3b155b[_0x119875(0x114)]&&_0xd647a1(_0x3b155b);}};return _0xd647a1(_0x92df20),flattenTree(_0x92df20,_0x4681e4);}function crudColumnsToExcel(_0x580204){const _0x587370=_0x25a3;return pickExportColumns(_0x580204)[_0x587370(0xfe)](_0x42921d=>({'prop':_0x42921d[_0x587370(0x102)],'label':_0x42921d[_0x587370(0xff)]||_0x42921d['prop']}));}export function downloadExcelBuffer(_0x26bd1e,_0x4926e9){const _0x2ae3b8=_0x25a3,_0x28ab8d=toExcelUint8Array(_0x26bd1e),_0x44e938=new Blob([_0x28ab8d],{'type':_0x2ae3b8(0x104)}),_0x92e7e5=URL['createObjectURL'](_0x44e938),_0x3a33b1=document[_0x2ae3b8(0x10b)]('a');_0x3a33b1[_0x2ae3b8(0x111)]=_0x92e7e5,_0x3a33b1[_0x2ae3b8(0x107)]=excelFilename(_0x4926e9),_0x3a33b1[_0x2ae3b8(0x106)](),URL[_0x2ae3b8(0xfd)](_0x92e7e5);}export function exportCrudExcel(_0x833e47,_0x2b162d,_0x2f63be){const _0xebf721=pickExportColumns(_0x833e47),_0x353afc=crudColumnsToExcel(_0xebf721),_0x2bd0fd=buildExcelBuffer(_0x353afc,_0x2b162d,(_0x222924,_0x507134)=>{const _0x5645dd=_0x25a3,_0x570a40=_0xebf721['find'](_0x29a91c=>_0x29a91c[_0x5645dd(0x102)]===_0x222924);return _0x570a40?formatExportCell(_0x570a40,_0x507134):String(_0x507134[_0x222924]??'');});downloadExcelBuffer(_0x2bd0fd,_0x2f63be);}
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
type FilePreviewKind = 'pdf' | 'excel' | 'text' | 'office' | 'unsupported';
|
|
2
|
+
export type MediaPreviewKind = FilePreviewKind | 'image' | 'video' | 'audio';
|
|
3
|
+
/** 按 URL / 文件名推断预览类型(含图片 / 音视频) */
|
|
4
|
+
export declare function getMediaPreviewKind(path?: string): MediaPreviewKind;
|
|
5
|
+
export declare function fileDisplayName(path?: string, fallback?: string): string;
|
|
6
|
+
export declare function fetchFileText(url: string): Promise<string>;
|
|
7
|
+
/** Excel 首表 → HTML 表格 */
|
|
8
|
+
export declare function loadExcelPreviewHtml(url: string): Promise<string>;
|
|
9
|
+
export {};
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
export type ImportResult = {
|
|
2
|
+
inserted: number;
|
|
3
|
+
updated: number;
|
|
4
|
+
failed: Array<{
|
|
5
|
+
row: number;
|
|
6
|
+
message: string;
|
|
7
|
+
}>;
|
|
8
|
+
};
|
|
9
|
+
type ImportPreview = {
|
|
10
|
+
headers: string[];
|
|
11
|
+
rows: Record<string, unknown>[];
|
|
12
|
+
};
|
|
13
|
+
/** 本地解析 xlsx 供导入弹窗预览 */
|
|
14
|
+
export declare function parseImportExcelPreview(file: File): Promise<ImportPreview>;
|
|
15
|
+
/** GET /importTemplate → 下载实体导入模板 */
|
|
16
|
+
export declare function downloadImportTemplate(namespace: string, filename?: string): Promise<void>;
|
|
17
|
+
/** POST /import multipart file */
|
|
18
|
+
export declare function uploadImportExcel(namespace: string, file: File): Promise<ImportResult>;
|
|
19
|
+
/** POST /import JSON `{ rows }`(业务改写行后直传,跳过再拼 File) */
|
|
20
|
+
export declare function uploadImportRows(namespace: string, rows: Record<string, unknown>[]): Promise<ImportResult>;
|
|
21
|
+
export {};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
const
|
|
1
|
+
const _0xacf47e=_0x1bb6;(function(_0x3846bc,_0x4e3d5e){const _0x5a6ecd=_0x1bb6,_0x21a5db=_0x3846bc();while(!![]){try{const _0x2f76e3=-parseInt(_0x5a6ecd(0xed))/0x1+parseInt(_0x5a6ecd(0xe2))/0x2*(-parseInt(_0x5a6ecd(0xf2))/0x3)+parseInt(_0x5a6ecd(0xee))/0x4*(-parseInt(_0x5a6ecd(0xec))/0x5)+-parseInt(_0x5a6ecd(0xf7))/0x6+-parseInt(_0x5a6ecd(0xe8))/0x7*(parseInt(_0x5a6ecd(0xf5))/0x8)+-parseInt(_0x5a6ecd(0xdb))/0x9+parseInt(_0x5a6ecd(0xeb))/0xa;if(_0x2f76e3===_0x4e3d5e)break;else _0x21a5db['push'](_0x21a5db['shift']());}catch(_0x2300a6){_0x21a5db['push'](_0x21a5db['shift']());}}}(_0x2037,0xe6040));import{apiUrl,getAccessToken}from'../api/client';import{crudFormat,crudLabel}from'../crud/style';import{downloadExcelBuffer}from'./export-excel';import{parseExcelBuffer}from'../../shared/excel';function authHeaders(_0x256a75){const _0x5b9cf8=_0x1bb6,_0x363129=new Headers(_0x256a75),_0xc1919a=getAccessToken();if(_0xc1919a)_0x363129[_0x5b9cf8(0xf1)](_0x5b9cf8(0xe3),'Bearer\x20'+_0xc1919a);return _0x363129;}function resolveNamespace(_0x2a6842){const _0x40df73=_0x1bb6;if(!_0x2a6842)return'';return _0x2a6842[_0x40df73(0xe1)]('/')?_0x2a6842:'/'+_0x2a6842;}function headersFromRows(_0x3ba575){const _0x1884dd=_0x1bb6,_0x49f16c=[],_0x15ca33=new Set();for(const _0x7a0870 of _0x3ba575){for(const _0x1decdc of Object['keys'](_0x7a0870)){if(_0x15ca33[_0x1884dd(0xdf)](_0x1decdc))continue;_0x15ca33[_0x1884dd(0xf3)](_0x1decdc),_0x49f16c[_0x1884dd(0xf8)](_0x1decdc);}}return _0x49f16c;}export async function parseImportExcelPreview(_0x514e82){const _0x3c01dc=_0x1bb6,_0x1d1bc1=new Uint8Array(await _0x514e82[_0x3c01dc(0xe5)]()),_0x373930=parseExcelBuffer(_0x1d1bc1);return{'headers':headersFromRows(_0x373930),'rows':_0x373930};}export async function downloadImportTemplate(_0x2b85fb,_0x3b3034=crudLabel(_0xacf47e(0xdd))){const _0x52bf76=_0xacf47e,_0x13e93b=apiUrl(resolveNamespace(_0x2b85fb)+_0x52bf76(0xef)),_0x54df85=await fetch(_0x13e93b,{'headers':authHeaders()});if(!_0x54df85['ok']){const _0x539857=await _0x54df85[_0x52bf76(0xe9)]();throw new Error(_0x539857||crudFormat(crudLabel(_0x52bf76(0xdc)),_0x54df85['status']));}const _0x55ed34=new Uint8Array(await _0x54df85['arrayBuffer']());downloadExcelBuffer(_0x55ed34,_0x3b3034);}export async function uploadImportExcel(_0x59186c,_0x374c0f){const _0x184185=_0xacf47e,_0x2f1d19=apiUrl(resolveNamespace(_0x59186c)+_0x184185(0xea)),_0x472515=new FormData();_0x472515[_0x184185(0xde)]('file',_0x374c0f);const _0x20adf9=await fetch(_0x2f1d19,{'method':_0x184185(0xe6),'headers':authHeaders(),'body':_0x472515});return parseImportResponse(_0x20adf9);}export async function uploadImportRows(_0x14d058,_0x3635ff){const _0x4f79dd=_0xacf47e,_0xe70637=apiUrl(resolveNamespace(_0x14d058)+'/import'),_0x294642=await fetch(_0xe70637,{'method':'POST','headers':authHeaders({'content-type':'application/json'}),'body':JSON[_0x4f79dd(0xf4)]({'rows':_0x3635ff})});return parseImportResponse(_0x294642);}async function parseImportResponse(_0x4fb4ac){const _0x142455=_0xacf47e,_0x5d24d0=await _0x4fb4ac[_0x142455(0xe9)]();let _0x3a5785=null;try{_0x3a5785=_0x5d24d0?JSON[_0x142455(0xe0)](_0x5d24d0):null;}catch{}if(_0x3a5785?.[_0x142455(0xf6)]===0x3e8&&_0x3a5785['data'])return _0x3a5785[_0x142455(0xe4)];throw new Error(_0x3a5785?.[_0x142455(0xf0)]||_0x5d24d0||crudFormat(crudLabel(_0x142455(0xe7)),_0x4fb4ac['status']));}function _0x1bb6(_0x2a903a,_0x419760){_0x2a903a=_0x2a903a-0xdb;const _0x20374a=_0x2037();let _0x1bb674=_0x20374a[_0x2a903a];if(_0x1bb6['lgEenf']===undefined){var _0x157809=function(_0x4e6daa){const _0x246ab7='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x256a75='',_0x363129='';for(let _0xc1919a=0x0,_0x2a6842,_0x3ba575,_0x49f16c=0x0;_0x3ba575=_0x4e6daa['charAt'](_0x49f16c++);~_0x3ba575&&(_0x2a6842=_0xc1919a%0x4?_0x2a6842*0x40+_0x3ba575:_0x3ba575,_0xc1919a++%0x4)?_0x256a75+=String['fromCharCode'](0xff&_0x2a6842>>(-0x2*_0xc1919a&0x6)):0x0){_0x3ba575=_0x246ab7['indexOf'](_0x3ba575);}for(let _0x15ca33=0x0,_0x7a0870=_0x256a75['length'];_0x15ca33<_0x7a0870;_0x15ca33++){_0x363129+='%'+('00'+_0x256a75['charCodeAt'](_0x15ca33)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x363129);};_0x1bb6['igqXaj']=_0x157809,_0x1bb6['cDPrim']={},_0x1bb6['lgEenf']=!![];}const _0x263969=_0x20374a[0x0],_0x4eb65d=_0x2a903a+_0x263969,_0x45536a=_0x1bb6['cDPrim'][_0x4eb65d];return!_0x45536a?(_0x1bb674=_0x1bb6['igqXaj'](_0x1bb674),_0x1bb6['cDPrim'][_0x4eb65d]=_0x1bb674):_0x1bb674=_0x45536a,_0x1bb674;}function _0x2037(){const _0x24d0dc=['oduXodyYodbIwxPmEhi','mtaZmJGWyxfMvhPm','mtGYmdm2mKDrzNHjDa','nJHzEfbuBe8','l2LTCg9YDfrLBxbSyxrL','BwvZC2fNzq','C2v0','mJe1mJe0ovr5DezYqG','ywrK','C3rYAw5NAwz5','mJG4mdu2CLDpz1np','y29Kzq','ode5nta4mKfXB3PTvq','ChvZAa','mty2mdKWnZDHEuzHCM4','zg93BMXVywruCgXgywLSu3rHDhvZ','Aw1WB3j0vhbS','yxbWzw5K','AgfZ','CgfYC2u','C3rHCNrZv2L0Aa','mNPjALjxzG','yxv0Ag9YAxPHDgLVBG','zgf0yq','yxjYyxLcDwzMzxi','ue9tva','Aw1WB3j0rMfPBfn0yxr1CW','mJG3ueX6CLzd','Dgv4Da','l2LTCg9YDa'];_0x2037=function(){return _0x24d0dc;};return _0x2037();}
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
export declare function textOfJson(v: unknown): string;
|
|
2
|
+
export declare function prettyJson(raw: unknown, empty?: string): string;
|
|
3
|
+
export declare function hasJsonContent(raw: unknown): boolean;
|
|
4
|
+
export type JsonParseResult = {
|
|
5
|
+
ok: true;
|
|
6
|
+
value: unknown;
|
|
7
|
+
} | {
|
|
8
|
+
ok: false;
|
|
9
|
+
error: string;
|
|
10
|
+
};
|
|
11
|
+
export declare function parseJsonInput(raw: string): JsonParseResult;
|
package/dist/admin/lib/json.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
function
|
|
1
|
+
(function(_0x1e17ab,_0x2cb4d0){const _0x4d53c5=_0x2aef,_0x2ab00a=_0x1e17ab();while(!![]){try{const _0x386125=parseInt(_0x4d53c5(0x95))/0x1+-parseInt(_0x4d53c5(0x93))/0x2*(parseInt(_0x4d53c5(0x91))/0x3)+-parseInt(_0x4d53c5(0x9b))/0x4+parseInt(_0x4d53c5(0x9a))/0x5+-parseInt(_0x4d53c5(0x8c))/0x6+-parseInt(_0x4d53c5(0x96))/0x7+parseInt(_0x4d53c5(0x99))/0x8*(parseInt(_0x4d53c5(0x9c))/0x9);if(_0x386125===_0x2cb4d0)break;else _0x2ab00a['push'](_0x2ab00a['shift']());}catch(_0x1819d8){_0x2ab00a['push'](_0x2ab00a['shift']());}}}(_0x57dc,0xc88bc));function _0x2aef(_0x47f6dc,_0xdfdff5){_0x47f6dc=_0x47f6dc-0x8c;const _0x57dc1f=_0x57dc();let _0x2aef90=_0x57dc1f[_0x47f6dc];if(_0x2aef['eeWQBh']===undefined){var _0x1bc918=function(_0x3e94d3){const _0x2e505b='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x45b648='',_0x1a6716='';for(let _0x77b1a7=0x0,_0x394233,_0x332473,_0x5ed371=0x0;_0x332473=_0x3e94d3['charAt'](_0x5ed371++);~_0x332473&&(_0x394233=_0x77b1a7%0x4?_0x394233*0x40+_0x332473:_0x332473,_0x77b1a7++%0x4)?_0x45b648+=String['fromCharCode'](0xff&_0x394233>>(-0x2*_0x77b1a7&0x6)):0x0){_0x332473=_0x2e505b['indexOf'](_0x332473);}for(let _0x54db4e=0x0,_0x21d229=_0x45b648['length'];_0x54db4e<_0x21d229;_0x54db4e++){_0x1a6716+='%'+('00'+_0x45b648['charCodeAt'](_0x54db4e)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x1a6716);};_0x2aef['MWKhaj']=_0x1bc918,_0x2aef['ySXufx']={},_0x2aef['eeWQBh']=!![];}const _0x5eb50e=_0x57dc1f[0x0],_0x35a830=_0x47f6dc+_0x5eb50e,_0x57d813=_0x2aef['ySXufx'][_0x35a830];return!_0x57d813?(_0x2aef90=_0x2aef['MWKhaj'](_0x2aef90),_0x2aef['ySXufx'][_0x35a830]=_0x2aef90):_0x2aef90=_0x57d813,_0x2aef90;}import{crudLabel}from'../crud/style';function _0x57dc(){const _0x5eac5b=['mJe3nJG4AuPZrg9p','nZiXmtm0nwDgugDtEq','mJeWnJyZnNfus1butq','ndK1DuPdrvnf','nZK1oteXneT3EhLusq','DhjPBq','C3rYAw5N','CgfYC2u','B2jQzwn0','m1bKtgD0BW','BwvZC2fNzq','nJe5nJu0y2vQB3P1','C3rYAw5NAwz5','nte3nJu2EeDNwvbN','mZmWndyYm1zAEwD2zW','ANnVBKvTChr5','ANnVBKvYCM9Y'];_0x57dc=function(){return _0x5eac5b;};return _0x57dc();}export function textOfJson(_0x45b648){const _0x2c94db=_0x2aef;if(_0x45b648==null)return'';if(typeof _0x45b648===_0x2c94db(0x8e))return _0x45b648;try{return JSON['stringify'](_0x45b648);}catch{return String(_0x45b648);}}export function prettyJson(_0x1a6716,_0x77b1a7){const _0x5f482a=_0x2aef,_0x394233=_0x77b1a7??crudLabel(_0x5f482a(0x97)),_0x332473=textOfJson(_0x1a6716)[_0x5f482a(0x8d)]();if(!_0x332473)return _0x394233;try{return JSON[_0x5f482a(0x94)](JSON['parse'](_0x332473),null,0x2);}catch{if(typeof _0x1a6716===_0x5f482a(0x90)&&_0x1a6716!==null)try{return JSON[_0x5f482a(0x94)](_0x1a6716,null,0x2);}catch{}return _0x332473;}}export function hasJsonContent(_0x5ed371){const _0x2e42a5=_0x2aef;return Boolean(textOfJson(_0x5ed371)[_0x2e42a5(0x8d)]());}export function parseJsonInput(_0x54db4e){const _0x49a3ca=_0x2aef,_0x21d229=_0x54db4e['trim']();if(!_0x21d229)return{'ok':!![],'value':null};try{return{'ok':!![],'value':JSON[_0x49a3ca(0x8f)](_0x21d229)};}catch(_0x48223f){return{'ok':![],'error':_0x48223f instanceof Error?_0x48223f[_0x49a3ca(0x92)]:crudLabel(_0x49a3ca(0x98))};}}
|
package/dist/admin/lib/menu.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
function
|
|
1
|
+
function _0x4174(){const _0x100441=['mtiZnZu3nMLVsM9vEG','ntyWmZnuEMvnBuC','nJCZnJCWuwLJsfrd','DhLWzq','mti0mZq4wMjlCwPR','nLjWsM5WzG','AxnbCNjHEq','mJeWntK2qK51r1jS','zMLSDgvY','y2HPBgrYzw4','mtCZnJGXnwnbEe9fyq','AxntAg93','BgvUz3rO','nJq4ntq2AfjzA1zQ'];_0x4174=function(){return _0x100441;};return _0x4174();}function _0x5288(_0x3e5fc3,_0x5823b6){_0x3e5fc3=_0x3e5fc3-0xe7;const _0x41749e=_0x4174();let _0x5288d4=_0x41749e[_0x3e5fc3];if(_0x5288['Hspkoz']===undefined){var _0x58d4d4=function(_0xf14858){const _0x3cb092='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x3832c7='',_0x153f02='';for(let _0x4bba8c=0x0,_0x34042a,_0x3e4d7f,_0x106d9e=0x0;_0x3e4d7f=_0xf14858['charAt'](_0x106d9e++);~_0x3e4d7f&&(_0x34042a=_0x4bba8c%0x4?_0x34042a*0x40+_0x3e4d7f:_0x3e4d7f,_0x4bba8c++%0x4)?_0x3832c7+=String['fromCharCode'](0xff&_0x34042a>>(-0x2*_0x4bba8c&0x6)):0x0){_0x3e4d7f=_0x3cb092['indexOf'](_0x3e4d7f);}for(let _0x2a7302=0x0,_0x103193=_0x3832c7['length'];_0x2a7302<_0x103193;_0x2a7302++){_0x153f02+='%'+('00'+_0x3832c7['charCodeAt'](_0x2a7302)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x153f02);};_0x5288['GCWEIq']=_0x58d4d4,_0x5288['SQKPhb']={},_0x5288['Hspkoz']=!![];}const _0xe1f12e=_0x41749e[0x0],_0x27f8f4=_0x3e5fc3+_0xe1f12e,_0x3b5109=_0x5288['SQKPhb'][_0x27f8f4];return!_0x3b5109?(_0x5288d4=_0x5288['GCWEIq'](_0x5288d4),_0x5288['SQKPhb'][_0x27f8f4]=_0x5288d4):_0x5288d4=_0x3b5109,_0x5288d4;}(function(_0x1afe77,_0x294368){const _0x307cb4=_0x5288,_0x3fb324=_0x1afe77();while(!![]){try{const _0x630ea=-parseInt(_0x307cb4(0xef))/0x1+-parseInt(_0x307cb4(0xf0))/0x2+parseInt(_0x307cb4(0xed))/0x3+-parseInt(_0x307cb4(0xe7))/0x4+parseInt(_0x307cb4(0xea))/0x5+parseInt(_0x307cb4(0xf3))/0x6*(-parseInt(_0x307cb4(0xf2))/0x7)+parseInt(_0x307cb4(0xee))/0x8;if(_0x630ea===_0x294368)break;else _0x3fb324['push'](_0x3fb324['shift']());}catch(_0x52dffd){_0x3fb324['push'](_0x3fb324['shift']());}}}(_0x4174,0x3e3f1));export function filterShowMenus(_0x3832c7){const _0x3c8639=_0x5288;if(!Array[_0x3c8639(0xf4)](_0x3832c7)||!_0x3832c7['length'])return[];return _0x3832c7[_0x3c8639(0xe8)](_0x153f02=>_0x153f02&&_0x153f02[_0x3c8639(0xeb)]!==![])['map'](_0x4bba8c=>({..._0x4bba8c,'children':_0x4bba8c[_0x3c8639(0xe9)]?.[_0x3c8639(0xec)]?filterShowMenus(_0x4bba8c[_0x3c8639(0xe9)]):undefined}))['filter'](_0x34042a=>{const _0x2d0c37=_0x3c8639,_0x3e4d7f=Number(_0x34042a[_0x2d0c37(0xf1)]);return _0x3e4d7f===0x0||_0x3e4d7f===0x1&&_0x34042a['router']||(_0x34042a[_0x2d0c37(0xe9)]?.['length']??0x0)>0x0;});}
|
|
@@ -0,0 +1,5 @@
|
|
|
1
|
+
/** 宿主 → 无界子应用语种同步(与 micro-theme 同模式) */
|
|
2
|
+
export declare const MICRO_LOCALE_EVENT = "vome-host-locale";
|
|
3
|
+
export declare const HOST_LOCALE_KEY = "vome_admin_locale";
|
|
4
|
+
export declare function hasMicroLocaleListeners(): boolean;
|
|
5
|
+
export declare function readHostLocale(): string;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
const
|
|
1
|
+
const _0x4f64d5=_0x4860;(function(_0x281bb0,_0x1c4bbb){const _0x3fb2f9=_0x4860,_0x74fc21=_0x281bb0();while(!![]){try{const _0x3f0abb=-parseInt(_0x3fb2f9(0x10c))/0x1+-parseInt(_0x3fb2f9(0x10f))/0x2+parseInt(_0x3fb2f9(0x10a))/0x3*(parseInt(_0x3fb2f9(0x103))/0x4)+parseInt(_0x3fb2f9(0x10b))/0x5*(-parseInt(_0x3fb2f9(0x10d))/0x6)+-parseInt(_0x3fb2f9(0x10e))/0x7+parseInt(_0x3fb2f9(0x102))/0x8*(parseInt(_0x3fb2f9(0x105))/0x9)+parseInt(_0x3fb2f9(0x112))/0xa;if(_0x3f0abb===_0x1c4bbb)break;else _0x74fc21['push'](_0x74fc21['shift']());}catch(_0x2f7f59){_0x74fc21['push'](_0x74fc21['shift']());}}}(_0xb9f2,0x1cab9));export const MICRO_LOCALE_EVENT=_0x4f64d5(0x107);export const HOST_LOCALE_KEY=_0x4f64d5(0x113);function _0xb9f2(){const _0x499f6f=['mJu4mZmYvxHvtMzo','BgvUz3rO','EMGTq04','mJqWmZK0mgrUB2nPDq','DM9Tzv9Hzg1PBL9SB2nHBgu','x3D1AMLLx2fSBf9LDMvUDa','mtG1mduYogDNrKPmuq','ngTkBe9kuW','yxbWrxzLBNrpyMPnyxa','owT0AuPcra','z2v0sxrLBq','DM9Tzs1OB3n0lwXVy2fSzq','DhjPBq','DMfSDwvZ','mJe3ndK3ENf5vgjg','mZi1mZmWDw5Qzxjd','ody2ndfHuNv0CMC','nNjtDgzUAG','mtaYmtmYmwv5tNjyAG'];_0xb9f2=function(){return _0x499f6f;};return _0xb9f2();}const WUJIE_ALL_EVENT=_0x4f64d5(0x101);export function hasMicroLocaleListeners(){const _0x3b1edf=_0x4f64d5;try{const _0x3afb2b=window['__WUJIE_INJECT']?.[_0x3b1edf(0x104)];if(!_0x3afb2b?.['size'])return![];for(const _0x5e1c4c of _0x3afb2b[_0x3b1edf(0x109)]()){const _0x39e58a=_0x5e1c4c[MICRO_LOCALE_EVENT],_0x57b285=_0x5e1c4c[WUJIE_ALL_EVENT];if((_0x39e58a?.[_0x3b1edf(0x110)]??0x0)>0x0||(_0x57b285?.[_0x3b1edf(0x110)]??0x0)>0x0)return!![];}}catch{}return![];}function _0x4860(_0x12b142,_0x5d0030){_0x12b142=_0x12b142-0x101;const _0xb9f24d=_0xb9f2();let _0x4860c6=_0xb9f24d[_0x12b142];if(_0x4860['gURKZH']===undefined){var _0x4765c9=function(_0x17fcd5){const _0x21da0a='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x3afb2b='',_0x5e1c4c='';for(let _0x39e58a=0x0,_0x57b285,_0x1db50c,_0x1e199a=0x0;_0x1db50c=_0x17fcd5['charAt'](_0x1e199a++);~_0x1db50c&&(_0x57b285=_0x39e58a%0x4?_0x57b285*0x40+_0x1db50c:_0x1db50c,_0x39e58a++%0x4)?_0x3afb2b+=String['fromCharCode'](0xff&_0x57b285>>(-0x2*_0x39e58a&0x6)):0x0){_0x1db50c=_0x21da0a['indexOf'](_0x1db50c);}for(let _0x157798=0x0,_0x3e67fb=_0x3afb2b['length'];_0x157798<_0x3e67fb;_0x157798++){_0x5e1c4c+='%'+('00'+_0x3afb2b['charCodeAt'](_0x157798)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x5e1c4c);};_0x4860['wqBNNv']=_0x4765c9,_0x4860['VDhzye']={},_0x4860['gURKZH']=!![];}const _0x3668fb=_0xb9f24d[0x0],_0x50b817=_0x12b142+_0x3668fb,_0x21c5ac=_0x4860['VDhzye'][_0x50b817];return!_0x21c5ac?(_0x4860c6=_0x4860['wqBNNv'](_0x4860c6),_0x4860['VDhzye'][_0x50b817]=_0x4860c6):_0x4860c6=_0x21c5ac,_0x4860c6;}export function readHostLocale(){const _0x593099=_0x4f64d5;try{return localStorage[_0x593099(0x106)](HOST_LOCALE_KEY)?.[_0x593099(0x108)]()||_0x593099(0x111);}catch{return _0x593099(0x111);}}
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
/** 宿主 ↔ 无界子应用主题同步 */
|
|
2
|
+
export declare const MICRO_THEME_EVENT = "vome-host-theme";
|
|
3
|
+
/** 子应用 → 宿主:请求切换亮暗 */
|
|
4
|
+
export declare const MICRO_SET_THEME_EVENT = "vome-set-host-theme";
|
|
5
|
+
/** 是否有子应用监听主题(无则跳过 emit,避免「事件订阅数量为空」) */
|
|
6
|
+
export declare function hasMicroThemeListeners(): boolean;
|
|
7
|
+
export declare const MICRO_THEME_VARS: readonly ["--brand", "--brand-soft", "--brand-deep", "--background", "--foreground", "--card", "--card-foreground", "--popover", "--popover-foreground", "--primary", "--primary-foreground", "--secondary", "--secondary-foreground", "--muted", "--muted-foreground", "--accent", "--accent-foreground", "--destructive", "--danger", "--danger-soft", "--warning", "--warning-soft", "--success", "--success-soft", "--border", "--input", "--ring", "--focus-border"];
|
|
8
|
+
export type HostThemeSnapshot = {
|
|
9
|
+
dark: boolean;
|
|
10
|
+
themeId: string;
|
|
11
|
+
tokens: Record<string, string>;
|
|
12
|
+
};
|
|
13
|
+
/** 采集当前 documentElement 上的主题 token(含 inline + .dark) */
|
|
14
|
+
export declare function snapshotHostTheme(): HostThemeSnapshot;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
const
|
|
1
|
+
const _0x13d0f0=_0x4faa;(function(_0xe12b4c,_0x4cb572){const _0x3ab50c=_0x4faa,_0x335b42=_0xe12b4c();while(!![]){try{const _0x50fcad=parseInt(_0x3ab50c(0x149))/0x1*(parseInt(_0x3ab50c(0x155))/0x2)+-parseInt(_0x3ab50c(0x144))/0x3*(parseInt(_0x3ab50c(0x159))/0x4)+-parseInt(_0x3ab50c(0x158))/0x5+-parseInt(_0x3ab50c(0x145))/0x6+-parseInt(_0x3ab50c(0x139))/0x7*(parseInt(_0x3ab50c(0x13b))/0x8)+-parseInt(_0x3ab50c(0x147))/0x9+parseInt(_0x3ab50c(0x14f))/0xa;if(_0x50fcad===_0x4cb572)break;else _0x335b42['push'](_0x335b42['shift']());}catch(_0x3ca4f8){_0x335b42['push'](_0x335b42['shift']());}}}(_0x3b9f,0x8af4e));export const MICRO_THEME_EVENT='vome-host-theme';export const MICRO_SET_THEME_EVENT=_0x13d0f0(0x15e);const WUJIE_ALL_EVENT=_0x13d0f0(0x140);export function hasMicroThemeListeners(){const _0x236846=_0x13d0f0;try{const _0x5bfb87=window[_0x236846(0x136)]?.[_0x236846(0x148)];if(!_0x5bfb87?.['size'])return![];for(const _0x4a7895 of _0x5bfb87['values']()){const _0xbcf535=_0x4a7895[MICRO_THEME_EVENT],_0x51f503=_0x4a7895[WUJIE_ALL_EVENT];if((_0xbcf535?.['length']??0x0)>0x0||(_0x51f503?.[_0x236846(0x142)]??0x0)>0x0)return!![];}}catch{}return![];}function _0x4faa(_0x36f70b,_0x516de5){_0x36f70b=_0x36f70b-0x136;const _0x3b9fd7=_0x3b9f();let _0x4faa7d=_0x3b9fd7[_0x36f70b];if(_0x4faa['XagCKE']===undefined){var _0x37d5a3=function(_0x3988d5){const _0x5ce6c9='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x5bfb87='',_0x4a7895='';for(let _0xbcf535=0x0,_0x51f503,_0x2d1dac,_0x24756b=0x0;_0x2d1dac=_0x3988d5['charAt'](_0x24756b++);~_0x2d1dac&&(_0x51f503=_0xbcf535%0x4?_0x51f503*0x40+_0x2d1dac:_0x2d1dac,_0xbcf535++%0x4)?_0x5bfb87+=String['fromCharCode'](0xff&_0x51f503>>(-0x2*_0xbcf535&0x6)):0x0){_0x2d1dac=_0x5ce6c9['indexOf'](_0x2d1dac);}for(let _0x31f40b=0x0,_0x17acab=_0x5bfb87['length'];_0x31f40b<_0x17acab;_0x31f40b++){_0x4a7895+='%'+('00'+_0x5bfb87['charCodeAt'](_0x31f40b)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x4a7895);};_0x4faa['wEXPMl']=_0x37d5a3,_0x4faa['JfxmNI']={},_0x4faa['XagCKE']=!![];}const _0x28b689=_0x3b9fd7[0x0],_0x830fab=_0x36f70b+_0x28b689,_0x2b6fa3=_0x4faa['JfxmNI'][_0x830fab];return!_0x2b6fa3?(_0x4faa7d=_0x4faa['wEXPMl'](_0x4faa7d),_0x4faa['JfxmNI'][_0x830fab]=_0x4faa7d):_0x4faa7d=_0x2b6fa3,_0x4faa7d;}function _0x3b9f(){const _0x300d23=['ls1Hy2nLBNq','DhjPBq','BgLNAhq','nde2mZGZmtbvzuPmugO','ls1ICMfUzc1ZB2z0','zgfYAW','ls1WB3bVDMvYlwzVCMvNCM91BMq','ls1MB2n1CY1IB3jKzxi','y29UDgfPBNm','mtq2mdi5nKvxq0Phrq','DgHLBwu','ls1TDxrLzc1MB3jLz3jVDw5K','nty4ntu4mgrfCerJtG','ngzLr2DYDW','ls1Kyw5NzxiTC29MDa','ls13yxjUAw5NlxnVzNq','ls1Kyw5Nzxi','ls1ZDwnJzxnZ','DM9Tzs1ZzxqTAg9ZDc10AgvTzq','x19xvuPjrv9jtKPfq1q','ls13yxjUAw5N','ls1WCMLTyxj5lwzVCMvNCM91BMq','mtmZodritxfLyLG','ls1JyxjKlwzVCMvNCM91BMq','mZG3mMXprMvWsG','ls1ICMfUza','ls1TDxrLza','zgf0yxnLDa','ls1ZzwnVBMrHCNK','x3D1AMLLx2fSBf9LDMvUDa','ls1Hy2nLBNqTzM9YzwDYB3vUza','BgvUz3rO','ls1ZDwnJzxnZlxnVzNq','mZm0ota2nxDkqw1jBG','mte4otiWnLPMCK5Kwa','ls1ZzwnVBMrHCNKTzM9YzwDYB3vUza','oduYotu5n2n3D29zvG','yxbWrxzLBNrpyMPnyxa','mxjYr0XiEG','ls1WB3bVDMvY','ls1YAw5N'];_0x3b9f=function(){return _0x300d23;};return _0x3b9f();}export const MICRO_THEME_VARS=[_0x13d0f0(0x13c),_0x13d0f0(0x150),'--brand-deep','--background','--foreground','--card',_0x13d0f0(0x13a),_0x13d0f0(0x14a),_0x13d0f0(0x152),'--primary',_0x13d0f0(0x138),_0x13d0f0(0x13f),_0x13d0f0(0x146),_0x13d0f0(0x13d),_0x13d0f0(0x157),_0x13d0f0(0x14c),_0x13d0f0(0x141),'--destructive',_0x13d0f0(0x15c),_0x13d0f0(0x15a),_0x13d0f0(0x137),_0x13d0f0(0x15b),_0x13d0f0(0x15d),_0x13d0f0(0x143),'--border','--input',_0x13d0f0(0x14b),_0x13d0f0(0x153)];export function snapshotHostTheme(){const _0x40239a=_0x13d0f0,_0x2d1dac=document['documentElement'],_0x24756b=getComputedStyle(_0x2d1dac),_0x31f40b={};for(const _0x17acab of MICRO_THEME_VARS){const _0x4dd660=_0x24756b['getPropertyValue'](_0x17acab)[_0x40239a(0x14d)]();if(_0x4dd660)_0x31f40b[_0x17acab]=_0x4dd660;}return{'dark':_0x2d1dac['classList'][_0x40239a(0x154)](_0x40239a(0x151)),'themeId':_0x2d1dac[_0x40239a(0x13e)][_0x40239a(0x156)]||_0x40239a(0x14e),'tokens':_0x31f40b};}
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
import type { ViewLoader, ViewsTreeNode } from '../../../typings/admin/vome/module';
|
|
2
|
+
/** 视图重扫事件:保存 views 触发 HMR 后派发,选择器监听刷新 */
|
|
3
|
+
export declare const VIEWS_RESCAN_EVENT = "vome:views-rescan";
|
|
4
|
+
/** 宿主注册业务视图 glob(包内无法扫描宿主 modules) */
|
|
5
|
+
export declare function registerViews(files: Record<string, () => Promise<{
|
|
6
|
+
default: import('vue').Component;
|
|
7
|
+
}>>): void;
|
|
8
|
+
/** 解析菜单 viewPath,如 modules/base/views/menu */
|
|
9
|
+
export declare function resolveView(viewPath: string | null | undefined): ViewLoader | undefined;
|
|
10
|
+
/**
|
|
11
|
+
* viewPath → 页面组件 name
|
|
12
|
+
* modules/base/views/role → base-role
|
|
13
|
+
* modules/user/views/info → user-info
|
|
14
|
+
*/
|
|
15
|
+
export declare function viewPathToName(viewPath: string | null | undefined): string | undefined;
|
|
16
|
+
export declare function listViews(): string[];
|
|
17
|
+
/**
|
|
18
|
+
* 将扁平 viewPath 建成多列树(展示从 modules/ 后分段)
|
|
19
|
+
* modules/base/views/menu → base > views > menu
|
|
20
|
+
*/
|
|
21
|
+
export declare function listViewsTree(): ViewsTreeNode[];
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
export type AdminShellHooks = {
|
|
2
|
+
resetMenuRoutes?: () => void;
|
|
3
|
+
onLogoutCleanup?: () => void | Promise<void>;
|
|
4
|
+
};
|
|
5
|
+
export declare function configureAdminShellHooks(next: AdminShellHooks): void;
|
|
6
|
+
export declare function getAdminShellHooks(): AdminShellHooks;
|
|
7
|
+
/** logout 时执行 router 注册的清理(WS 断开、菜单路由标记重置等) */
|
|
8
|
+
export declare function runAdminShellLogoutCleanup(): void;
|
package/dist/admin/lib/shell.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
const
|
|
1
|
+
const _0x60fd81=_0x4ef7;function _0x4ef7(_0x19f2d1,_0x62d3af){_0x19f2d1=_0x19f2d1-0xdf;const _0x13cc58=_0x13cc();let _0x4ef79d=_0x13cc58[_0x19f2d1];if(_0x4ef7['SIUPWV']===undefined){var _0x50647b=function(_0x48493d){const _0x2ef077='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x4d11c3='',_0x2aa54c='';for(let _0x3388dc=0x0,_0x1b455c,_0xc87f12,_0x53d70e=0x0;_0xc87f12=_0x48493d['charAt'](_0x53d70e++);~_0xc87f12&&(_0x1b455c=_0x3388dc%0x4?_0x1b455c*0x40+_0xc87f12:_0xc87f12,_0x3388dc++%0x4)?_0x4d11c3+=String['fromCharCode'](0xff&_0x1b455c>>(-0x2*_0x3388dc&0x6)):0x0){_0xc87f12=_0x2ef077['indexOf'](_0xc87f12);}for(let _0x33a8f9=0x0,_0x50b9d7=_0x4d11c3['length'];_0x33a8f9<_0x50b9d7;_0x33a8f9++){_0x2aa54c+='%'+('00'+_0x4d11c3['charCodeAt'](_0x33a8f9)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x2aa54c);};_0x4ef7['uuyyAQ']=_0x50647b,_0x4ef7['gYfMUN']={},_0x4ef7['SIUPWV']=!![];}const _0x2056cc=_0x13cc58[0x0],_0x5c673b=_0x19f2d1+_0x2056cc,_0x25d26b=_0x4ef7['gYfMUN'][_0x5c673b];return!_0x25d26b?(_0x4ef79d=_0x4ef7['uuyyAQ'](_0x4ef79d),_0x4ef7['gYfMUN'][_0x5c673b]=_0x4ef79d):_0x4ef79d=_0x25d26b,_0x4ef79d;}function _0x13cc(){const _0x58084c=['mtmYseTpBg5p','mZzcA0nTzwu','mtiWotqZnLLwAMLjtq','zM9Y','mZC0nujcteXvqq','Ag9VA3m','ntCZodi0r0rIDfHb','mJaZmJKWvKTgDxnI','DM9Tzs5Hzg1PBI5ZAgvSBa','B25mB2DVDxrdBgvHBNvW','nvbJCKTwDG','CMvZzxrnzw51uM91DgvZ','ntqXodyYnfPgBMDczq','mJG0DK92vw9j','mJmZmg5fugDNvq','ndGWENvMuNn5','mta5mdq0D2nzAKfe'];_0x13cc=function(){return _0x58084c;};return _0x13cc();}(function(_0x598788,_0x1a7ce8){const _0x4c9638=_0x4ef7,_0x9793a9=_0x598788();while(!![]){try{const _0x273483=parseInt(_0x4c9638(0xdf))/0x1*(parseInt(_0x4c9638(0xef))/0x2)+parseInt(_0x4c9638(0xe1))/0x3+-parseInt(_0x4c9638(0xe4))/0x4*(-parseInt(_0x4c9638(0xec))/0x5)+-parseInt(_0x4c9638(0xe0))/0x6*(parseInt(_0x4c9638(0xe6))/0x7)+parseInt(_0x4c9638(0xe8))/0x8*(parseInt(_0x4c9638(0xe3))/0x9)+parseInt(_0x4c9638(0xe9))/0xa*(-parseInt(_0x4c9638(0xe2))/0xb)+-parseInt(_0x4c9638(0xee))/0xc;if(_0x273483===_0x1a7ce8)break;else _0x9793a9['push'](_0x9793a9['shift']());}catch(_0x94f063){_0x9793a9['push'](_0x9793a9['shift']());}}}(_0x13cc,0x35443));const SHELL_KEY=Symbol[_0x60fd81(0xe5)](_0x60fd81(0xea));function slot(){const _0x4d11c3=globalThis;return!_0x4d11c3[SHELL_KEY]&&(_0x4d11c3[SHELL_KEY]={'hooks':{}}),_0x4d11c3[SHELL_KEY];}export function configureAdminShellHooks(_0x2aa54c){const _0xb71981=_0x60fd81,_0x3388dc=slot();_0x3388dc[_0xb71981(0xe7)]={..._0x3388dc['hooks'],..._0x2aa54c};}export function getAdminShellHooks(){const _0x223425=_0x60fd81;return slot()[_0x223425(0xe7)];}export function runAdminShellLogoutCleanup(){const _0x1a4174=_0x60fd81,_0x1b455c=getAdminShellHooks();_0x1b455c[_0x1a4174(0xeb)]?.(),_0x1b455c[_0x1a4174(0xed)]?.();}
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
export type VmColorThemeOption = {
|
|
2
|
+
key: string;
|
|
3
|
+
label: string;
|
|
4
|
+
/** 当前模式下预览色(读 CSS 变量计算值) */
|
|
5
|
+
value: string;
|
|
6
|
+
};
|
|
7
|
+
export type ThemeColorDef = {
|
|
8
|
+
/** CSS 变量名(不含 `--`) */
|
|
9
|
+
key: string;
|
|
10
|
+
label: string;
|
|
11
|
+
};
|
|
12
|
+
/** admin 模版默认 token(label 经 crudLabel 解析) */
|
|
13
|
+
export declare const ADMIN_THEME_COLOR_DEFS: ThemeColorDef[];
|
|
14
|
+
/** 从宿主 :root 读取 CSS 变量,生成取色器主题列表 */
|
|
15
|
+
export declare function resolveCssThemeColorOptions(defs: ThemeColorDef[], root?: HTMLElement | null): VmColorThemeOption[];
|
|
@@ -1 +1 @@
|
|
|
1
|
-
const
|
|
1
|
+
const _0xa4ec57=_0x51d4;(function(_0xa787,_0x3de345){const _0x344c07=_0x51d4,_0x3b8c5d=_0xa787();while(!![]){try{const _0x195909=parseInt(_0x344c07(0x1a3))/0x1+-parseInt(_0x344c07(0x1a6))/0x2+parseInt(_0x344c07(0x198))/0x3+-parseInt(_0x344c07(0x1a7))/0x4*(parseInt(_0x344c07(0x193))/0x5)+parseInt(_0x344c07(0x19d))/0x6+-parseInt(_0x344c07(0x19f))/0x7+-parseInt(_0x344c07(0x191))/0x8*(-parseInt(_0x344c07(0x1a8))/0x9);if(_0x195909===_0x3de345)break;else _0x3b8c5d['push'](_0x3b8c5d['shift']());}catch(_0x2debcf){_0x3b8c5d['push'](_0x3b8c5d['shift']());}}}(_0x2f28,0x2d478));function _0x2f28(){const _0x227978=['ywrK','DgHLBwvezxn0CNvJDgL2zq','DgHLBwvby2nLBNq','Dw5KzwzPBMvK','ogTQDMXesW','DgHLBwvsAw5N','mJuZotvswenfAhi','DgHLBwvcB3jKzxi','CMvWBgfJzq','ChvZAa','DgHLBwvcCMfUza','mtK1nZuWAw9dALfs','BwfW','DgHLBwvtzwnVBMrHCNK','DgHLBwvcCMfUzerLzxa','AgfZ','mty1mdi5ngDMDLPdBa','DgHLBwvdyxjK','mtu5mZa2DhD5wLDI','A2v5CW','BgfIzwW','z2v0uhjVCgvYDhLwywX1zq','mtuWotnPsKnbvxm','DgHLBwvnDxrLzezVCMvNCM91BMq','DhjPBq','mtmZodKYzuztswTo','mJKYsNLoyMzv','mJyXndG4n0DhsunzCq','DgHLBwvqCMLTyxj5','A2v5'];_0x2f28=function(){return _0x227978;};return _0x2f28();}import{crudLabel}from'../crud/style';const THEME_LABEL_KEY={'brand':_0xa4ec57(0x197),'brand-soft':'themeBrandSoft','brand-deep':_0xa4ec57(0x19b),'primary':_0xa4ec57(0x1a9),'secondary':_0xa4ec57(0x19a),'accent':_0xa4ec57(0x18f),'destructive':_0xa4ec57(0x18e),'danger':'themeDanger','warning':'themeWarning','success':'themeSuccess','background':'themeBackground','foreground':'themeForeground','card':_0xa4ec57(0x19e),'muted':'themeMuted','muted-foreground':_0xa4ec57(0x1a4),'border':_0xa4ec57(0x194),'ring':_0xa4ec57(0x192),'sidebar':'themeSidebar'};export const ADMIN_THEME_COLOR_DEFS=Object[_0xa4ec57(0x1a0)](THEME_LABEL_KEY)[_0xa4ec57(0x199)](_0xa54189=>({'key':_0xa54189,get 'label'(){return crudLabel(THEME_LABEL_KEY[_0xa54189]);}}));const COLOR_VALUE_RE=/^(#([0-9a-f]{3,8})|(rgb|rgba|hsl|hsla|oklch|lab|lch)\()/i;function isColorValue(_0x5915cf){const _0x5bd2be=_0xa4ec57,_0x4d0446=String(_0x5915cf||'')[_0x5bd2be(0x1a5)]();if(!_0x4d0446)return![];if(COLOR_VALUE_RE['test'](_0x4d0446))return!![];return![];}function _0x51d4(_0x1c0b58,_0x44a1ad){_0x1c0b58=_0x1c0b58-0x18d;const _0x2f281b=_0x2f28();let _0x51d491=_0x2f281b[_0x1c0b58];if(_0x51d4['OPOYli']===undefined){var _0x2ccae0=function(_0x24aa27){const _0x25fe5='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0xa54189='',_0x5915cf='';for(let _0x4d0446=0x0,_0x511581,_0x5ccd5d,_0x27d3cf=0x0;_0x5ccd5d=_0x24aa27['charAt'](_0x27d3cf++);~_0x5ccd5d&&(_0x511581=_0x4d0446%0x4?_0x511581*0x40+_0x5ccd5d:_0x5ccd5d,_0x4d0446++%0x4)?_0xa54189+=String['fromCharCode'](0xff&_0x511581>>(-0x2*_0x4d0446&0x6)):0x0){_0x5ccd5d=_0x25fe5['indexOf'](_0x5ccd5d);}for(let _0x2b69af=0x0,_0x19eff0=_0xa54189['length'];_0x2b69af<_0x19eff0;_0x2b69af++){_0x5915cf+='%'+('00'+_0xa54189['charCodeAt'](_0x2b69af)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x5915cf);};_0x51d4['zYijtp']=_0x2ccae0,_0x51d4['IzyRYX']={},_0x51d4['OPOYli']=!![];}const _0x305011=_0x2f281b[0x0],_0x4ebbc4=_0x1c0b58+_0x305011,_0x3b2d50=_0x51d4['IzyRYX'][_0x4ebbc4];return!_0x3b2d50?(_0x51d491=_0x51d4['zYijtp'](_0x51d491),_0x51d4['IzyRYX'][_0x4ebbc4]=_0x51d491):_0x51d491=_0x3b2d50,_0x51d491;}export function resolveCssThemeColorOptions(_0x511581,_0x5ccd5d){const _0x55ec33=_0xa4ec57;if(typeof document===_0x55ec33(0x190))return[];const _0x27d3cf=_0x5ccd5d??document['documentElement'],_0x2b69af=getComputedStyle(_0x27d3cf),_0x19eff0=[],_0x19508c=new Set();for(const _0x3eeaf8 of _0x511581){const _0x4622cc=String(_0x3eeaf8[_0x55ec33(0x1aa)]||'')[_0x55ec33(0x1a5)]()[_0x55ec33(0x195)](/^--/,'');if(!_0x4622cc||_0x19508c[_0x55ec33(0x19c)](_0x4622cc))continue;const _0xe15bf0=_0x2b69af[_0x55ec33(0x1a2)]('--'+_0x4622cc)[_0x55ec33(0x1a5)]();if(!_0xe15bf0||!isColorValue(_0xe15bf0))continue;_0x19508c[_0x55ec33(0x18d)](_0x4622cc),_0x19eff0[_0x55ec33(0x196)]({'key':_0x4622cc,'label':_0x3eeaf8[_0x55ec33(0x1a1)]||crudLabel(THEME_LABEL_KEY[_0x4622cc]||_0x4622cc)||_0x4622cc,'value':_0xe15bf0});}return _0x19eff0;}
|
package/dist/admin/lib/tree.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
(function(
|
|
1
|
+
function _0x5558(){var _0x430c5e=['mtq4nJiXmKfev2zpEG','mZi2mJCWD0TltK9P','mtiZmtCWntbqDLrftwC','ntm1mde0zKvkBxPw','mtCYogXZDuTosq','mtHmDMXJt3i','nvL2D09XAW','mtKYnZaYmgjUD2PYAa','mtCZmtfQD3fYEKy','mZu5mte2mMHHEfrAqG'];_0x5558=function(){return _0x430c5e;};return _0x5558();}(function(_0x2b978a,_0x34cece){var _0x1fde39=_0x4f04,_0x1f73df=_0x2b978a();while(!![]){try{var _0x18be1e=parseInt(_0x1fde39(0xb1))/0x1+parseInt(_0x1fde39(0xaf))/0x2+parseInt(_0x1fde39(0xae))/0x3+parseInt(_0x1fde39(0xab))/0x4*(parseInt(_0x1fde39(0xaa))/0x5)+parseInt(_0x1fde39(0xad))/0x6+-parseInt(_0x1fde39(0xac))/0x7*(-parseInt(_0x1fde39(0xb2))/0x8)+parseInt(_0x1fde39(0xa9))/0x9*(-parseInt(_0x1fde39(0xb0))/0xa);if(_0x18be1e===_0x34cece)break;else _0x1f73df['push'](_0x1f73df['shift']());}catch(_0x245cdb){_0x1f73df['push'](_0x1f73df['shift']());}}}(_0x5558,0x54211));function _0x4f04(_0x322d27,_0x6f6d27){_0x322d27=_0x322d27-0xa9;var _0x5558a6=_0x5558();var _0x4f041d=_0x5558a6[_0x322d27];if(_0x4f04['IZtGbp']===undefined){var _0x3470f4=function(_0xcb6874){var _0x305303='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';var _0x19ecc7='',_0x54b399='';for(var _0x3af970=0x0,_0x51f616,_0x51045c,_0x591872=0x0;_0x51045c=_0xcb6874['charAt'](_0x591872++);~_0x51045c&&(_0x51f616=_0x3af970%0x4?_0x51f616*0x40+_0x51045c:_0x51045c,_0x3af970++%0x4)?_0x19ecc7+=String['fromCharCode'](0xff&_0x51f616>>(-0x2*_0x3af970&0x6)):0x0){_0x51045c=_0x305303['indexOf'](_0x51045c);}for(var _0x54a49a=0x0,_0xc72b13=_0x19ecc7['length'];_0x54a49a<_0xc72b13;_0x54a49a++){_0x54b399+='%'+('00'+_0x19ecc7['charCodeAt'](_0x54a49a)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x54b399);};_0x4f04['NJPNsL']=_0x3470f4,_0x4f04['dKtsVt']={},_0x4f04['IZtGbp']=!![];}var _0x3df683=_0x5558a6[0x0],_0x505138=_0x322d27+_0x3df683,_0x2f5dc8=_0x4f04['dKtsVt'][_0x505138];return!_0x2f5dc8?(_0x4f041d=_0x4f04['NJPNsL'](_0x4f041d),_0x4f04['dKtsVt'][_0x505138]=_0x4f041d):_0x4f041d=_0x2f5dc8,_0x4f041d;}export{deepTree,flattenTree}from'../../shared/tree';
|