vome-core 0.1.15 → 0.1.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/validate.js +1 -1
- package/dist/admin/crud/vm-search.vue +23 -9
- package/dist/admin/directives/perm.js +1 -1
- package/dist/admin/hooks/useUpload.js +1 -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/export-excel.js +1 -1
- package/dist/admin/lib/import-excel.js +1 -1
- package/dist/admin/lib/json.js +1 -1
- package/dist/admin/lib/menu.js +1 -1
- package/dist/admin/lib/tree.js +1 -1
- package/dist/admin/lib/upload.js +1 -1
- package/dist/admin/lib/video-frame.js +1 -1
- package/dist/agent/index.d.ts +3 -1
- package/dist/{src/agent → agent}/protocol.d.ts +2 -11
- package/dist/{src/agent → agent}/types.d.ts +0 -9
- package/dist/client/vite-micro-proxy.d.ts +8 -6
- package/dist/client/vite-micro-proxy.js +23 -2
- package/dist/config/index.d.ts +10 -1
- package/dist/index.d.ts +13 -1
- package/dist/index.js +1 -1
- package/dist/server/index.d.ts +17 -1
- package/dist/server/index.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 +7 -5
- package/typings/comm/crud.ts +29 -0
- package/typings/comm/page.ts +18 -0
- package/typings/comm/scan.ts +6 -0
- package/typings/common.ts +4 -0
- package/typings/context/data.ts +10 -0
- package/typings/ext/market-seat.ts +42 -0
- package/typings/ext/market.ts +55 -0
- package/typings/ext/module.ts +64 -0
- package/typings/ext/plugin.ts +38 -0
- package/typings/ioc/metadata.ts +34 -0
- package/typings/logger/config.ts +6 -0
- package/typings/routing/crud.ts +162 -0
- package/typings/routing/eps.ts +72 -0
- package/typings/routing/meta.ts +63 -0
- package/typings/routing/register.ts +21 -0
- package/typings/routing/scan-context.ts +7 -0
- package/dist/ai.d.ts +0 -1
- package/dist/src/admin/config/plugin-dev.d.ts +0 -52
- package/dist/src/agent/index.d.ts +0 -3
- package/dist/src/config/index.d.ts +0 -10
- package/dist/src/index.d.ts +0 -12
- package/dist/src/server/index.d.ts +0 -17
- package/dist/src/shared/excel.d.ts +0 -23
- package/dist/src/shared/tree.d.ts +0 -18
- package/src/shared/excel.d.ts +0 -23
- package/src/shared/excel.ts +0 -123
- package/src/shared/index.ts +0 -30
- package/src/shared/locale-json.ts +0 -79
- package/src/shared/tree.d.ts +0 -18
- package/src/shared/tree.ts +0 -50
- /package/dist/{src/agent → agent}/constants.d.ts +0 -0
- /package/dist/{src/ai → ai}/adapters/anthropic-gemini.d.ts +0 -0
- /package/dist/{src/ai → ai}/adapters/auth-headers.d.ts +0 -0
- /package/dist/{src/ai → ai}/adapters/index.d.ts +0 -0
- /package/dist/{src/ai → ai}/adapters/openai-compatible.d.ts +0 -0
- /package/dist/{src/ai → ai}/call-log-helpers.d.ts +0 -0
- /package/dist/{src/ai → ai}/index.d.ts +0 -0
- /package/dist/{src/ai → ai}/normalize.d.ts +0 -0
- /package/dist/{src/ai → ai}/sse.d.ts +0 -0
- /package/dist/{src/ai → ai}/transport.d.ts +0 -0
- /package/dist/{src/ai → ai}/types.d.ts +0 -0
- /package/dist/{src/auth → auth}/define-macro.d.ts +0 -0
- /package/dist/{src/auth → auth}/index.d.ts +0 -0
- /package/dist/{src/comm → comm}/daily-log.d.ts +0 -0
- /package/dist/{src/comm → comm}/env.d.ts +0 -0
- /package/dist/{src/comm → comm}/format-time.d.ts +0 -0
- /package/dist/{src/comm → comm}/merge.d.ts +0 -0
- /package/dist/{src/comm → comm}/scan.d.ts +0 -0
- /package/dist/{src/comm → comm}/startBanner.d.ts +0 -0
- /package/dist/{src/core → core}/app.d.ts +0 -0
- /package/dist/{src/core → core}/config.d.ts +0 -0
- /package/dist/{src/core → core}/context/index.d.ts +0 -0
- /package/dist/{src/core → core}/host-infra.d.ts +0 -0
- /package/dist/{src/core → core}/index.d.ts +0 -0
- /package/dist/{src/core → core}/plugins/async-context.d.ts +0 -0
- /package/dist/{src/core → core}/plugins/error.d.ts +0 -0
- /package/dist/{src/core → core}/plugins/logging.d.ts +0 -0
- /package/dist/{src/core → core}/plugins/openapi.d.ts +0 -0
- /package/dist/{src/core → core}/vome-config.d.ts +0 -0
- /package/dist/{src/ext → ext}/base-plugin.d.ts +0 -0
- /package/dist/{src/ext → ext}/host-identity.d.ts +0 -0
- /package/dist/{src/ext → ext}/index.d.ts +0 -0
- /package/dist/{src/ext → ext}/load-plugin.d.ts +0 -0
- /package/dist/{src/ext → ext}/market-crypto.d.ts +0 -0
- /package/dist/{src/ext → ext}/market-package.d.ts +0 -0
- /package/dist/{src/ext → ext}/market-runtime.d.ts +0 -0
- /package/dist/{src/ext → ext}/market-seat.d.ts +0 -0
- /package/dist/{src/ext → ext}/micro-apps.d.ts +0 -0
- /package/dist/{src/ext → ext}/module-gateway.d.ts +0 -0
- /package/dist/{src/ext → ext}/module-install-gate.d.ts +0 -0
- /package/dist/{src/ext → ext}/module-install.d.ts +0 -0
- /package/dist/{src/ext → ext}/module-registry.d.ts +0 -0
- /package/dist/{src/ext → ext}/path.d.ts +0 -0
- /package/dist/{src/ioc → ioc}/container.d.ts +0 -0
- /package/dist/{src/ioc → ioc}/decorators.d.ts +0 -0
- /package/dist/{src/ioc → ioc}/host.d.ts +0 -0
- /package/dist/{src/ioc → ioc}/index.d.ts +0 -0
- /package/dist/{src/ioc → ioc}/metadata.d.ts +0 -0
- /package/dist/{src/ioc → ioc}/scope.d.ts +0 -0
- /package/dist/{src/logger → logger}/bootstrap.d.ts +0 -0
- /package/dist/{src/logger → logger}/exception.d.ts +0 -0
- /package/dist/{src/logger → logger}/index.d.ts +0 -0
- /package/dist/{src/logger → logger}/logger.d.ts +0 -0
- /package/dist/{src/logger → logger}/pino.d.ts +0 -0
- /package/dist/{src/orm → orm}/base-columns.d.ts +0 -0
- /package/dist/{src/orm → orm}/column-comments.d.ts +0 -0
- /package/dist/{src/orm → orm}/crud-config.d.ts +0 -0
- /package/dist/{src/orm → orm}/crud-register.d.ts +0 -0
- /package/dist/{src/orm → orm}/data-scope.d.ts +0 -0
- /package/dist/{src/orm → orm}/db-store.d.ts +0 -0
- /package/dist/{src/orm → orm}/declarative-select.d.ts +0 -0
- /package/dist/{src/orm → orm}/entity-schema.d.ts +0 -0
- /package/dist/{src/orm → orm}/field-ref.d.ts +0 -0
- /package/dist/{src/orm → orm}/import-excel.d.ts +0 -0
- /package/dist/{src/orm → orm}/index.d.ts +0 -0
- /package/dist/{src/orm → orm}/join-tables.d.ts +0 -0
- /package/dist/{src/orm → orm}/query-builder.d.ts +0 -0
- /package/dist/{src/orm → orm}/query-op.d.ts +0 -0
- /package/dist/{src/orm → orm}/repository.d.ts +0 -0
- /package/dist/{src/orm → orm}/service.d.ts +0 -0
- /package/dist/{src/orm → orm}/tenant.d.ts +0 -0
- /package/dist/{src/routing → routing}/base.d.ts +0 -0
- /package/dist/{src/routing → routing}/context.d.ts +0 -0
- /package/dist/{src/routing → routing}/crud-summary.d.ts +0 -0
- /package/dist/{src/routing → routing}/decorators.d.ts +0 -0
- /package/dist/{src/routing → routing}/eps.d.ts +0 -0
- /package/dist/{src/routing → routing}/index.d.ts +0 -0
- /package/dist/{src/routing → routing}/metadata.d.ts +0 -0
- /package/dist/{src/routing → routing}/openapi-tags.d.ts +0 -0
- /package/dist/{src/routing → routing}/path-utils.d.ts +0 -0
- /package/dist/{src/routing → routing}/perm.d.ts +0 -0
- /package/dist/{src/routing → routing}/public-routes.d.ts +0 -0
- /package/dist/{src/routing → routing}/register.d.ts +0 -0
- /package/dist/{src/shared → shared}/index.d.ts +0 -0
- /package/dist/{src/shared → shared}/locale-json.d.ts +0 -0
package/dist/shared/excel.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
function
|
|
1
|
+
function _0x10d5(){const _0x327152=['z2v0','ChjVCa','zw5KC1DPDgG','nZK0mty0n29ksLfOwq','ntCWndbuzNHMEfa','ndq5ndi0zfvqBKXZ','mta0mJqXm3bUr1zVua','yxbWBgLJyxrPB24VDM5KlM9Wzw54BwXMB3jTyxrZlw9MzMLJzwrVy3vTzw50lNnWCMvHzhnOzwv0BwWUC2HLzxq','u2HLzxqX','lNHSC3G','mZeYq2zksvrh','u2HLzxroyw1LCW','mZK5mZqZmNv5Bhb4qq','zgvSzxrLzef0','mZqZnJy3n2jbB3Pwzq','ChvZAa','CMvHza','ohHkDMHQva','C2v0','BgfIzwW','C3rYAw5N','DgvUyw50swq','DxbKyxrLvgLTzq','yw9Hx3rVx3nOzwv0','yM9VA19HChbLBMrFC2HLzxq','DhjPBq','EgXZEa','BwfW','BgvUz3rO','yxr0ywnOBwvUDdSGzMLSzw5HBwuQpvvurI04jYC','yM9VA19UzxC','yxjYyxK','Aw5JBhvKzxm','nJKZotq2nerVz2v3ua','DxrPBhm','C2HLzxrFDg9FANnVBG'];_0x10d5=function(){return _0x327152;};return _0x10d5();}const _0x5e5a59=_0xafc2;(function(_0xf49ebe,_0x4c67b9){const _0x3bca79=_0xafc2,_0x5636b0=_0xf49ebe();while(!![]){try{const _0x1d9f08=-parseInt(_0x3bca79(0x1ed))/0x1+parseInt(_0x3bca79(0x1ec))/0x2+parseInt(_0x3bca79(0x1f3))/0x3+-parseInt(_0x3bca79(0x1e4))/0x4+parseInt(_0x3bca79(0x1eb))/0x5*(parseInt(_0x3bca79(0x1f1))/0x6)+-parseInt(_0x3bca79(0x1ea))/0x7*(-parseInt(_0x3bca79(0x1d4))/0x8)+parseInt(_0x3bca79(0x1d1))/0x9;if(_0x1d9f08===_0x4c67b9)break;else _0x5636b0['push'](_0x5636b0['shift']());}catch(_0x301ea0){_0x5636b0['push'](_0x5636b0['shift']());}}}(_0x10d5,0xd8d67));import*as _0x47e107 from'xlsx';export const IMPORT_SKIP_FIELDS=['id','createTime',_0x5e5a59(0x1d9),_0x5e5a59(0x1f4),_0x5e5a59(0x1d8)];function _0xafc2(_0x15c428,_0x10a18a){_0x15c428=_0x15c428-0x1d1;const _0x10d5a7=_0x10d5();let _0xafc211=_0x10d5a7[_0x15c428];if(_0xafc2['GNkxZJ']===undefined){var _0x546f49=function(_0x3a21f1){const _0x1245fe='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x47e107='',_0x589902='';for(let _0x476257=0x0,_0x4997dc,_0x15fd1d,_0x3af755=0x0;_0x15fd1d=_0x3a21f1['charAt'](_0x3af755++);~_0x15fd1d&&(_0x4997dc=_0x476257%0x4?_0x4997dc*0x40+_0x15fd1d:_0x15fd1d,_0x476257++%0x4)?_0x47e107+=String['fromCharCode'](0xff&_0x4997dc>>(-0x2*_0x476257&0x6)):0x0){_0x15fd1d=_0x1245fe['indexOf'](_0x15fd1d);}for(let _0x199880=0x0,_0x1a075e=_0x47e107['length'];_0x199880<_0x1a075e;_0x199880++){_0x589902+='%'+('00'+_0x47e107['charCodeAt'](_0x199880)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x589902);};_0xafc2['uSnLIu']=_0x546f49,_0xafc2['pYGzIG']={},_0xafc2['GNkxZJ']=!![];}const _0x508c58=_0x10d5a7[0x0],_0x59de08=_0x15c428+_0x508c58,_0x2a2093=_0xafc2['pYGzIG'][_0x59de08];return!_0x2a2093?(_0xafc211=_0xafc2['uSnLIu'](_0xafc211),_0xafc2['pYGzIG'][_0x59de08]=_0xafc211):_0xafc211=_0x2a2093,_0xafc211;}export function isImportSkipField(_0x589902){const _0xf9ccc8=_0x5e5a59;return IMPORT_SKIP_FIELDS[_0xf9ccc8(0x1e3)](_0x589902);}export function buildExcelBuffer(_0x476257,_0x4997dc,_0x15fd1d){const _0x52b6b2=_0x5e5a59,_0x3af755=_0x476257[_0x52b6b2(0x1de)](_0x54a8b3=>_0x54a8b3[_0x52b6b2(0x1d6)]||_0x54a8b3[_0x52b6b2(0x1e8)]),_0x199880=_0x4997dc['map'](_0x2ee5b=>_0x476257[_0x52b6b2(0x1de)](_0x4b5302=>{const _0x6f7acc=_0x52b6b2;if(_0x15fd1d)return _0x15fd1d(_0x4b5302[_0x6f7acc(0x1e8)],_0x2ee5b);const _0x414f6c=_0x2ee5b[_0x4b5302[_0x6f7acc(0x1e8)]];if(_0x414f6c==null)return'';return String(_0x414f6c);})),_0x1a075e=_0x47e107[_0x52b6b2(0x1e5)][_0x52b6b2(0x1da)]([_0x3af755,..._0x199880]),_0xb16339=_0x47e107[_0x52b6b2(0x1e5)][_0x52b6b2(0x1e1)]();return _0x47e107['utils'][_0x52b6b2(0x1db)](_0xb16339,_0x1a075e,_0x52b6b2(0x1ef)),_0x47e107['write'](_0xb16339,{'bookType':_0x52b6b2(0x1dd),'type':_0x52b6b2(0x1e2)});}export function buildImportTemplateBuffer(_0x580eff){return buildExcelBuffer(_0x580eff,[]);}export function parseExcelBuffer(_0x1d0b41,_0x3db907){const _0x53775e=_0x5e5a59,_0x35bd0c=_0x47e107[_0x53775e(0x1d3)](_0x1d0b41,{'type':_0x53775e(0x1e2),'cellDates':!![]}),_0x833e8b=_0x35bd0c[_0x53775e(0x1f2)][0x0];if(!_0x833e8b)return[];const _0x130947=_0x35bd0c['Sheets'][_0x833e8b];if(!_0x130947)return[];const _0x3ec58b=_0x47e107[_0x53775e(0x1e5)][_0x53775e(0x1e6)](_0x130947,{'header':0x1,'defval':'','raw':![]});if(!_0x3ec58b[_0x53775e(0x1df)])return[];const _0x159403=(_0x3ec58b[0x0]||[])['map'](_0x5e5261=>String(_0x5e5261??'')[_0x53775e(0x1dc)]()),_0x558fd5=new Map();if(_0x3db907?.['length'])for(const _0x2d006e of _0x3db907){_0x558fd5[_0x53775e(0x1d5)](_0x2d006e['label'][_0x53775e(0x1dc)](),_0x2d006e[_0x53775e(0x1e8)]),_0x558fd5[_0x53775e(0x1d5)](_0x2d006e['prop'],_0x2d006e['prop']);}const _0x276126=_0x159403[_0x53775e(0x1de)](_0x5bd7b1=>{const _0x24542f=_0x53775e;if(!_0x5bd7b1)return'';return _0x558fd5[_0x24542f(0x1e7)](_0x5bd7b1)||_0x5bd7b1;}),_0x5ccbd5=[];for(let _0x9f3f32=0x1;_0x9f3f32<_0x3ec58b[_0x53775e(0x1df)];_0x9f3f32++){const _0x13a85b=_0x3ec58b[_0x9f3f32]||[],_0x26a641={};let _0x181e43=!![];for(let _0x3433b9=0x0;_0x3433b9<_0x276126[_0x53775e(0x1df)];_0x3433b9++){const _0x4351a6=_0x276126[_0x3433b9];if(!_0x4351a6)continue;let _0x312f18=_0x13a85b[_0x3433b9];if(_0x312f18==null||_0x312f18===''){_0x26a641[_0x4351a6]=_0x312f18==null?null:'';continue;}_0x181e43=![],typeof _0x312f18===_0x53775e(0x1d7)?_0x26a641[_0x4351a6]=_0x312f18[_0x53775e(0x1dc)]():_0x26a641[_0x4351a6]=_0x312f18;}if(!_0x181e43)_0x5ccbd5[_0x53775e(0x1d2)](_0x26a641);}return _0x5ccbd5;}export function excelFilename(_0x22637e){const _0x3fb228=_0x5e5a59;return _0x22637e[_0x3fb228(0x1e9)](_0x3fb228(0x1f0))?_0x22637e:_0x22637e+_0x3fb228(0x1f0);}export function excelResponseHeaders(_0x3938a3){const _0x1a8fcf=_0x5e5a59,_0x4d7a81=excelFilename(_0x3938a3);return{'Content-Type':_0x1a8fcf(0x1ee),'Content-Disposition':_0x1a8fcf(0x1e0)+encodeURIComponent(_0x4d7a81)};}
|
package/dist/shared/index.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
(function(
|
|
1
|
+
(function(_0x1adea0,_0x42c4d2){var _0x2bbb72=_0x5219,_0x7165da=_0x1adea0();while(!![]){try{var _0x53e338=parseInt(_0x2bbb72(0x7b))/0x1*(parseInt(_0x2bbb72(0x78))/0x2)+-parseInt(_0x2bbb72(0x82))/0x3*(parseInt(_0x2bbb72(0x79))/0x4)+-parseInt(_0x2bbb72(0x7e))/0x5+parseInt(_0x2bbb72(0x7a))/0x6+-parseInt(_0x2bbb72(0x7f))/0x7*(parseInt(_0x2bbb72(0x81))/0x8)+-parseInt(_0x2bbb72(0x80))/0x9*(-parseInt(_0x2bbb72(0x7c))/0xa)+parseInt(_0x2bbb72(0x7d))/0xb;if(_0x53e338===_0x42c4d2)break;else _0x7165da['push'](_0x7165da['shift']());}catch(_0x13fa0e){_0x7165da['push'](_0x7165da['shift']());}}}(_0x12ff,0x30a6b));function _0x12ff(){var _0x2d066a=['nJC4ndi0sM5ztwrT','mJyZn0zkD1jpzq','mta4nJHksMnZDhe','mtC5nK1MA055yW','mJiWmZGXogrjtxH1wG','mtf4uM5XvMi','nZu1nJiWA09JsNDs','ndu2mteXn1v1wu90Cq','mte5mJy4nujduwTgtG','n09SufjpzG','ovboALzTDq'];_0x12ff=function(){return _0x2d066a;};return _0x12ff();}export{merge}from'../comm/merge';export{deepTree,flattenTree}from'./tree';function _0x5219(_0x1d1dfc,_0x261b05){_0x1d1dfc=_0x1d1dfc-0x78;var _0x12ffd9=_0x12ff();var _0x52197c=_0x12ffd9[_0x1d1dfc];if(_0x5219['iZoXMU']===undefined){var _0x207b58=function(_0x231db4){var _0x4ea6f1='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';var _0xa872f9='',_0x36d6d9='';for(var _0x793d4=0x0,_0x1326ee,_0x5ba113,_0x258b1f=0x0;_0x5ba113=_0x231db4['charAt'](_0x258b1f++);~_0x5ba113&&(_0x1326ee=_0x793d4%0x4?_0x1326ee*0x40+_0x5ba113:_0x5ba113,_0x793d4++%0x4)?_0xa872f9+=String['fromCharCode'](0xff&_0x1326ee>>(-0x2*_0x793d4&0x6)):0x0){_0x5ba113=_0x4ea6f1['indexOf'](_0x5ba113);}for(var _0x38ba5f=0x0,_0x4e85b5=_0xa872f9['length'];_0x38ba5f<_0x4e85b5;_0x38ba5f++){_0x36d6d9+='%'+('00'+_0xa872f9['charCodeAt'](_0x38ba5f)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x36d6d9);};_0x5219['QwRqXW']=_0x207b58,_0x5219['VUiPvA']={},_0x5219['iZoXMU']=!![];}var _0x34f602=_0x12ffd9[0x0],_0x281320=_0x1d1dfc+_0x34f602,_0x539cc0=_0x5219['VUiPvA'][_0x281320];return!_0x539cc0?(_0x52197c=_0x5219['QwRqXW'](_0x52197c),_0x5219['VUiPvA'][_0x281320]=_0x52197c):_0x52197c=_0x539cc0,_0x52197c;}export{RES_CODE}from'../routing/base';export{buildExcelBuffer,buildImportTemplateBuffer,parseExcelBuffer,excelFilename,excelResponseHeaders,IMPORT_SKIP_FIELDS,isImportSkipField}from'./excel';export{flattenLocale,unflattenLocale,hashLocaleJson,extractJsonObject}from'./locale-json';
|
|
@@ -1 +1 @@
|
|
|
1
|
-
(function(
|
|
1
|
+
function _0x5802(){const _0x4bc8c0=['ne9st3f1uW','odKXntryzhjUz28','C3rYAw5N','mJyYmJe5m3PTsNzjta','mJCXmLfzuerxvq','zgLNzxn0','zw50CMLLCW','zMLSDgvY','quKG6l+u5zUE5PEG5Rov6kEJ5P6q5lI6iePtt04G5A+56lgH','A2v5CW','mZiWndK0ng5NzKnYrW','AxnbCNjHEq','ndGWodK1mNvJvxzmBW','DhjPBq','BgvUz3rO','quKG6l+u5zUE56M65yAf5A65','mJa5nKP4Bwz0Cq','mta1EhHguMrV','CgfYC2u','B2jQzwn0','nZe1mdKYmeD4CeXLuG','C2XPy2u','Bwf0y2G','ndqZmtG5tMvoq3fK','C29YDa','DxbKyxrL','C2HHmJu2','BwfW','C3bSAxq','BgfZDeLUzgv4t2y','Agv4'];_0x5802=function(){return _0x4bc8c0;};return _0x5802();}(function(_0x5718aa,_0x147a35){const _0x43eda0=_0x3ec1,_0x570b68=_0x5718aa();while(!![]){try{const _0x4c6ee8=parseInt(_0x43eda0(0x12e))/0x1*(-parseInt(_0x43eda0(0x117))/0x2)+parseInt(_0x43eda0(0x11b))/0x3*(parseInt(_0x43eda0(0x127))/0x4)+parseInt(_0x43eda0(0x128))/0x5*(-parseInt(_0x43eda0(0x118))/0x6)+-parseInt(_0x43eda0(0x11a))/0x7+parseInt(_0x43eda0(0x121))/0x8+parseInt(_0x43eda0(0x123))/0x9+parseInt(_0x43eda0(0x12b))/0xa;if(_0x4c6ee8===_0x147a35)break;else _0x570b68['push'](_0x570b68['shift']());}catch(_0x1531cf){_0x570b68['push'](_0x570b68['shift']());}}}(_0x5802,0x8673e));import{createHash}from'node:crypto';export function flattenLocale(_0xcba72b,_0x59057d=''){const _0x30491f=_0x3ec1,_0x17c2c3={};for(const [_0x291158,_0x512db5]of Object[_0x30491f(0x11d)](_0xcba72b)){const _0x5ab26b=_0x59057d?_0x59057d+'.'+_0x291158:_0x291158;if(_0x512db5!=null&&typeof _0x512db5===_0x30491f(0x12a)&&!Array[_0x30491f(0x122)](_0x512db5))Object['assign'](_0x17c2c3,flattenLocale(_0x512db5,_0x5ab26b));else{if(typeof _0x512db5===_0x30491f(0x119))_0x17c2c3[_0x5ab26b]=_0x512db5;else _0x512db5!=null&&(_0x17c2c3[_0x5ab26b]=String(_0x512db5));}}return _0x17c2c3;}function _0x3ec1(_0x2d7497,_0x1da005){_0x2d7497=_0x2d7497-0x115;const _0x58023b=_0x5802();let _0x3ec1b6=_0x58023b[_0x2d7497];if(_0x3ec1['IsGBmI']===undefined){var _0x57d88d=function(_0x5b4143){const _0x5e29d5='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0xcba72b='',_0x59057d='';for(let _0x17c2c3=0x0,_0x291158,_0x512db5,_0x5ab26b=0x0;_0x512db5=_0x5b4143['charAt'](_0x5ab26b++);~_0x512db5&&(_0x291158=_0x17c2c3%0x4?_0x291158*0x40+_0x512db5:_0x512db5,_0x17c2c3++%0x4)?_0xcba72b+=String['fromCharCode'](0xff&_0x291158>>(-0x2*_0x17c2c3&0x6)):0x0){_0x512db5=_0x5e29d5['indexOf'](_0x512db5);}for(let _0x5d857e=0x0,_0x5f24a2=_0xcba72b['length'];_0x5d857e<_0x5f24a2;_0x5d857e++){_0x59057d+='%'+('00'+_0xcba72b['charCodeAt'](_0x5d857e)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x59057d);};_0x3ec1['uTKGhW']=_0x57d88d,_0x3ec1['gXfJSd']={},_0x3ec1['IsGBmI']=!![];}const _0x3fa428=_0x58023b[0x0],_0x3abaab=_0x2d7497+_0x3fa428,_0x325f71=_0x3ec1['gXfJSd'][_0x3abaab];return!_0x325f71?(_0x3ec1b6=_0x3ec1['uTKGhW'](_0x3ec1b6),_0x3ec1['gXfJSd'][_0x3abaab]=_0x3ec1b6):_0x3ec1b6=_0x325f71,_0x3ec1b6;}export function unflattenLocale(_0x5d857e){const _0x869dd2=_0x3ec1,_0x5f24a2={};for(const [_0x3dc6a0,_0x5a8942]of Object[_0x869dd2(0x11d)](_0x5d857e)){const _0x2f583d=_0x3dc6a0[_0x869dd2(0x133)]('.')[_0x869dd2(0x11e)](Boolean);if(!_0x2f583d[_0x869dd2(0x125)])continue;let _0x47166d=_0x5f24a2;for(let _0x53ff72=0x0;_0x53ff72<_0x2f583d[_0x869dd2(0x125)]-0x1;_0x53ff72++){const _0x423ac2=_0x2f583d[_0x53ff72],_0x21af6e=_0x47166d[_0x423ac2];(!_0x21af6e||typeof _0x21af6e!==_0x869dd2(0x12a)||Array[_0x869dd2(0x122)](_0x21af6e))&&(_0x47166d[_0x423ac2]={}),_0x47166d=_0x47166d[_0x423ac2];}_0x47166d[_0x2f583d[_0x2f583d[_0x869dd2(0x125)]-0x1]]=_0x5a8942;}return _0x5f24a2;}export function hashLocaleJson(_0x36d4f7){const _0xc6c1b6=_0x3ec1,_0x53b647=flattenLocale(_0x36d4f7),_0x25dce3=Object[_0xc6c1b6(0x120)](_0x53b647)[_0xc6c1b6(0x12f)](),_0x525ede=_0x25dce3[_0xc6c1b6(0x132)](_0x27fcff=>_0x27fcff+'='+_0x53b647[_0x27fcff])['join']('\x0a');return createHash(_0xc6c1b6(0x131))[_0xc6c1b6(0x130)](_0x525ede)[_0xc6c1b6(0x11c)](_0xc6c1b6(0x116))['slice'](0x0,0x20);}export function extractJsonObject(_0x2fbcbd){const _0x3335b0=_0x3ec1,_0x15ba71=String(_0x2fbcbd||'')[_0x3335b0(0x124)]();if(!_0x15ba71)throw new Error(_0x3335b0(0x126));try{const _0x4526e8=JSON['parse'](_0x15ba71);if(_0x4526e8&&typeof _0x4526e8==='object'&&!Array[_0x3335b0(0x122)](_0x4526e8))return _0x4526e8;}catch{}const _0x57527c=_0x15ba71[_0x3335b0(0x12d)](/```(?:json)?\s*([\s\S]*?)```/i);if(_0x57527c?.[0x1]){const _0x31c0eb=JSON[_0x3335b0(0x129)](_0x57527c[0x1]['trim']());if(_0x31c0eb&&typeof _0x31c0eb===_0x3335b0(0x12a)&&!Array[_0x3335b0(0x122)](_0x31c0eb))return _0x31c0eb;}const _0x7a7e1=_0x15ba71['indexOf']('{'),_0x4697be=_0x15ba71[_0x3335b0(0x115)]('}');if(_0x7a7e1>=0x0&&_0x4697be>_0x7a7e1){const _0x49e4b7=JSON[_0x3335b0(0x129)](_0x15ba71[_0x3335b0(0x12c)](_0x7a7e1,_0x4697be+0x1));if(_0x49e4b7&&typeof _0x49e4b7==='object'&&!Array[_0x3335b0(0x122)](_0x49e4b7))return _0x49e4b7;}throw new Error(_0x3335b0(0x11f));}
|
package/dist/shared/tree.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
const
|
|
1
|
+
const _0x3d9d51=_0x3b29;(function(_0x1b7f8b,_0x3ff875){const _0x10879d=_0x3b29,_0x47dc3d=_0x1b7f8b();while(!![]){try{const _0x179906=-parseInt(_0x10879d(0x1a9))/0x1*(-parseInt(_0x10879d(0x1ad))/0x2)+parseInt(_0x10879d(0x1a4))/0x3*(parseInt(_0x10879d(0x1a2))/0x4)+-parseInt(_0x10879d(0x1a6))/0x5*(-parseInt(_0x10879d(0x1ab))/0x6)+parseInt(_0x10879d(0x197))/0x7*(-parseInt(_0x10879d(0x1a8))/0x8)+parseInt(_0x10879d(0x1a0))/0x9*(-parseInt(_0x10879d(0x198))/0xa)+-parseInt(_0x10879d(0x19a))/0xb*(parseInt(_0x10879d(0x19c))/0xc)+parseInt(_0x10879d(0x19f))/0xd*(parseInt(_0x10879d(0x196))/0xe);if(_0x179906===_0x3ff875)break;else _0x47dc3d['push'](_0x47dc3d['shift']());}catch(_0xf7a85){_0x47dc3d['push'](_0x47dc3d['shift']());}}}(_0x57a2,0x4b799));function _0x3b29(_0x58dc56,_0xd2be3c){_0x58dc56=_0x58dc56-0x196;const _0x57a205=_0x57a2();let _0x3b29e4=_0x57a205[_0x58dc56];if(_0x3b29['tBdzhk']===undefined){var _0x424888=function(_0x4573bb){const _0x4a4aaa='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x4a62c4='',_0x1ff8b7='';for(let _0x2ef129=0x0,_0x2e2de3,_0x5c5b78,_0x47fd53=0x0;_0x5c5b78=_0x4573bb['charAt'](_0x47fd53++);~_0x5c5b78&&(_0x2e2de3=_0x2ef129%0x4?_0x2e2de3*0x40+_0x5c5b78:_0x5c5b78,_0x2ef129++%0x4)?_0x4a62c4+=String['fromCharCode'](0xff&_0x2e2de3>>(-0x2*_0x2ef129&0x6)):0x0){_0x5c5b78=_0x4a4aaa['indexOf'](_0x5c5b78);}for(let _0x2789fd=0x0,_0x2e4954=_0x4a62c4['length'];_0x2789fd<_0x2e4954;_0x2789fd++){_0x1ff8b7+='%'+('00'+_0x4a62c4['charCodeAt'](_0x2789fd)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x1ff8b7);};_0x3b29['RakXdG']=_0x424888,_0x3b29['mAbIWG']={},_0x3b29['tBdzhk']=!![];}const _0x17045d=_0x57a205[0x0],_0x12cb15=_0x58dc56+_0x17045d,_0x9a7401=_0x3b29['mAbIWG'][_0x12cb15];return!_0x9a7401?(_0x3b29e4=_0x3b29['RakXdG'](_0x3b29e4),_0x3b29['mAbIWG'][_0x12cb15]=_0x3b29e4):_0x3b29e4=_0x9a7401,_0x3b29e4;}export function deepTree(_0x4a62c4,_0x1ff8b7=_0x3d9d51(0x1a1)){const _0x3d2496=_0x3d9d51,_0x2ef129=new Map();for(const _0x47fd53 of _0x4a62c4){if(_0x47fd53['id']==null)continue;_0x2ef129[_0x3d2496(0x1a3)](_0x47fd53['id'],{..._0x47fd53,'children':[]});}const _0x2e2de3=[];for(const _0x2789fd of _0x2ef129[_0x3d2496(0x1a5)]()){const _0x2e4954=_0x2789fd[_0x3d2496(0x19e)];_0x2e4954!=null&&_0x2e4954!==''&&_0x2ef129[_0x3d2496(0x1aa)](_0x2e4954)?_0x2ef129[_0x3d2496(0x1ac)](_0x2e4954)['children']['push'](_0x2789fd):_0x2e2de3['push'](_0x2789fd);}const _0x5c5b78=_0x255894=>{const _0x37848f=_0x3d2496;_0x255894['sort']((_0xb92fc7,_0x2ab682)=>{const _0x50a143=_0x3b29,_0x39d5ec=_0xb92fc7[_0x50a143(0x19b)]??0x0,_0x200e94=_0x2ab682[_0x50a143(0x19b)]??0x0,_0xf6d089=_0x1ff8b7===_0x50a143(0x199)?_0x200e94-_0x39d5ec:_0x39d5ec-_0x200e94;return _0xf6d089||Number(_0xb92fc7['id'])-Number(_0x2ab682['id']);});for(const _0x53ba21 of _0x255894)if(_0x53ba21['children']?.['length'])_0x5c5b78(_0x53ba21[_0x37848f(0x1a7)]);};return _0x5c5b78(_0x2e2de3),_0x2e2de3;}export function flattenTree(_0x150ab1,_0x199c3f,_0x3325b3=0x0,_0x2ad1bc=[]){const _0x5083c1=_0x3d9d51;for(const _0x31c866 of _0x150ab1){const _0x3104d3=_0x31c866[_0x5083c1(0x1a7)]||[];_0x2ad1bc['push']({..._0x31c866,'depth':_0x3325b3,'hasChildren':_0x3104d3[_0x5083c1(0x19d)]>0x0});if(_0x3104d3[_0x5083c1(0x19d)]&&_0x199c3f[_0x5083c1(0x1aa)](_0x31c866['id']))flattenTree(_0x3104d3,_0x199c3f,_0x3325b3+0x1,_0x2ad1bc);}return _0x2ad1bc;}function _0x57a2(){const _0xc02b8b=['AgfZ','otb2C2zbCu0','z2v0','nefoD3fXsq','nZC1nLvAzLbhza','mtr5veLMwvm','mJe3nZC4mhvVCNbVCq','zgvZyW','otuWodyYvuHdqLnm','B3jKzxjoDw0','nJbYvgzrC20','BgvUz3rO','CgfYzw50swq','mtm3otnozMHdBgi','ovfKqwPfAG','yxnJ','ognRt1zPCa','C2v0','mJm3ndy4C2LUshH6','DMfSDwvZ','ndm3mdv2uvbwwxm','y2HPBgrYzw4','mtC5mdy5nKTOqLvJrW','mJy0nZKZB3vNDMLU'];_0x57a2=function(){return _0xc02b8b;};return _0x57a2();}
|
package/package.json
CHANGED
|
@@ -1,13 +1,12 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "vome-core",
|
|
3
|
-
"version": "0.1.
|
|
3
|
+
"version": "0.1.17",
|
|
4
4
|
"description": "Vome framework — shared + Bun/Elysia server + Vue admin",
|
|
5
5
|
"license": "MIT",
|
|
6
6
|
"type": "module",
|
|
7
7
|
"files": [
|
|
8
8
|
"dist",
|
|
9
|
-
"
|
|
10
|
-
"typings/admin"
|
|
9
|
+
"typings"
|
|
11
10
|
],
|
|
12
11
|
"main": "./dist/index.js",
|
|
13
12
|
"types": "./dist/index.d.ts",
|
|
@@ -28,7 +27,7 @@
|
|
|
28
27
|
"default": "./dist/config/index.js"
|
|
29
28
|
},
|
|
30
29
|
"./ai": {
|
|
31
|
-
"types": "./dist/ai.d.ts",
|
|
30
|
+
"types": "./dist/ai/index.d.ts",
|
|
32
31
|
"import": "./dist/ai/index.js",
|
|
33
32
|
"default": "./dist/ai/index.js"
|
|
34
33
|
},
|
|
@@ -96,6 +95,9 @@
|
|
|
96
95
|
"agent": [
|
|
97
96
|
"./dist/agent/index.d.ts"
|
|
98
97
|
],
|
|
98
|
+
"ai": [
|
|
99
|
+
"./dist/ai/index.d.ts"
|
|
100
|
+
],
|
|
99
101
|
"admin/service": [
|
|
100
102
|
"./dist/admin/service/index.d.ts"
|
|
101
103
|
],
|
|
@@ -124,7 +126,7 @@
|
|
|
124
126
|
}
|
|
125
127
|
},
|
|
126
128
|
"scripts": {
|
|
127
|
-
"build:server": "bun build ./src/index.ts ./src/server/index.ts ./src/config/index.ts ./src/ai/index.ts ./src/agent/index.ts --outdir ./dist --target bun --format esm --external elysia --external reflect-metadata --external drizzle-orm --external drizzle-zod --external @elysiajs/openapi --external @bogeychan/elysia-logger --external pino --external pino-pretty && tsc -p tsconfig.build.json &&
|
|
129
|
+
"build:server": "bun build ./src/index.ts ./src/server/index.ts ./src/config/index.ts ./src/ai/index.ts ./src/agent/index.ts --outdir ./dist --target bun --format esm --external elysia --external reflect-metadata --external drizzle-orm --external drizzle-zod --external @elysiajs/openapi --external @bogeychan/elysia-logger --external pino --external pino-pretty && tsc -p tsconfig.build.json && bun scripts/flatten-server-dts.ts",
|
|
128
130
|
"build:client": "bun scripts/build-client.ts",
|
|
129
131
|
"build:admin": "bun scripts/build-admin.ts",
|
|
130
132
|
"build": "rm -rf dist && bun run build:server && bun run build:client && bun run build:admin",
|
|
@@ -0,0 +1,29 @@
|
|
|
1
|
+
/** save:有 id 则更新;insert:只插入 */
|
|
2
|
+
export type CrudUpsertMode = 'save' | 'insert'
|
|
3
|
+
|
|
4
|
+
/** modifyBefore / modifyAfter 操作类型 */
|
|
5
|
+
export type CrudModifyType = 'add' | 'update' | 'delete'
|
|
6
|
+
|
|
7
|
+
/** add() 可选覆盖 */
|
|
8
|
+
export type CrudWriteOptions = {
|
|
9
|
+
upsert?: CrudUpsertMode
|
|
10
|
+
}
|
|
11
|
+
|
|
12
|
+
/** 查询回收站范围 */
|
|
13
|
+
export type CrudTrashQueryOptions = {
|
|
14
|
+
withTrashed?: boolean
|
|
15
|
+
onlyTrashed?: boolean
|
|
16
|
+
softDelete?: boolean
|
|
17
|
+
}
|
|
18
|
+
|
|
19
|
+
/** 删除选项 */
|
|
20
|
+
export type CrudDeleteOptions = {
|
|
21
|
+
force?: boolean
|
|
22
|
+
softDelete?: boolean
|
|
23
|
+
}
|
|
24
|
+
|
|
25
|
+
/** vome.crud 运行时配置 */
|
|
26
|
+
export type CrudConfig = {
|
|
27
|
+
upsert?: CrudUpsertMode
|
|
28
|
+
softDelete?: boolean
|
|
29
|
+
}
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
/** 分页参数 */
|
|
2
|
+
export type PageQuery = {
|
|
3
|
+
/** 页码,从 1 开始,默认 1 */
|
|
4
|
+
page?: number
|
|
5
|
+
/** 每页条数,默认 20 */
|
|
6
|
+
size?: number
|
|
7
|
+
}
|
|
8
|
+
|
|
9
|
+
export type PagePagination = {
|
|
10
|
+
page: number
|
|
11
|
+
size: number
|
|
12
|
+
total: number
|
|
13
|
+
}
|
|
14
|
+
|
|
15
|
+
export type PageResult<T = unknown> = {
|
|
16
|
+
list: T[]
|
|
17
|
+
pagination: PagePagination
|
|
18
|
+
}
|
|
@@ -0,0 +1,42 @@
|
|
|
1
|
+
/** 席位占用结果(市场签发 ticket 后由 core 解析) */
|
|
2
|
+
export type MarketSeatStatus = {
|
|
3
|
+
marketId: string
|
|
4
|
+
/** unlimited:作者/免费;ok:已占席;blocked:超席;pending:待联网登记 */
|
|
5
|
+
state: 'unlimited' | 'ok' | 'blocked' | 'pending' | 'unknown'
|
|
6
|
+
/** 展示用:作者/免费为 null → UI 显示 / */
|
|
7
|
+
seats: number | null
|
|
8
|
+
used: number | null
|
|
9
|
+
reason?: string
|
|
10
|
+
updatedAt: string
|
|
11
|
+
}
|
|
12
|
+
|
|
13
|
+
export type MarketSeatTicketPayload = {
|
|
14
|
+
v: 1
|
|
15
|
+
kind: 'seat'
|
|
16
|
+
marketId: string
|
|
17
|
+
siteId: string
|
|
18
|
+
unlimited: boolean
|
|
19
|
+
allowed: boolean
|
|
20
|
+
seats: number | null
|
|
21
|
+
used: number | null
|
|
22
|
+
issuedAt: string
|
|
23
|
+
expireAt: string
|
|
24
|
+
reason?: string | null
|
|
25
|
+
}
|
|
26
|
+
|
|
27
|
+
export type MarketSeatTicket = {
|
|
28
|
+
payload: MarketSeatTicketPayload
|
|
29
|
+
sig: string
|
|
30
|
+
}
|
|
31
|
+
|
|
32
|
+
/** core 内置席位调度默认(宿主可用 VomeConfig.market 覆盖) */
|
|
33
|
+
export const MARKET_SEAT_DEFAULTS = {
|
|
34
|
+
/** 付费购买默认席位数 */
|
|
35
|
+
baseSeats: 3,
|
|
36
|
+
/** 运行中心跳间隔 */
|
|
37
|
+
heartbeatIntervalMs: 12 * 60 * 60 * 1000,
|
|
38
|
+
/** 无心跳自动释放占用(天) */
|
|
39
|
+
staleDays: 30,
|
|
40
|
+
/** 签发 ticket 有效期(短) */
|
|
41
|
+
ticketTtlMs: 15 * 60 * 1000,
|
|
42
|
+
} as const
|
|
@@ -0,0 +1,55 @@
|
|
|
1
|
+
/** 市场签发包定价 */
|
|
2
|
+
export type MarketPricing = 'free' | 'paid'
|
|
3
|
+
|
|
4
|
+
/** market.sig 签名载荷(稳定字段,勿随意增删) */
|
|
5
|
+
export type MarketSigPayload = {
|
|
6
|
+
marketId: string
|
|
7
|
+
pricing: MarketPricing
|
|
8
|
+
version: string
|
|
9
|
+
key: string
|
|
10
|
+
contentHash: string
|
|
11
|
+
}
|
|
12
|
+
|
|
13
|
+
/** 离线 / 联网 license 载荷 */
|
|
14
|
+
export type MarketLicensePayload = {
|
|
15
|
+
v: 1
|
|
16
|
+
marketId: string
|
|
17
|
+
buyerId: string
|
|
18
|
+
issuedAt: string
|
|
19
|
+
/** null = 永久 */
|
|
20
|
+
expireAt: string | null
|
|
21
|
+
orderNo?: string | null
|
|
22
|
+
/** 联网签发时必填,须与请求 nonce 一致 */
|
|
23
|
+
nonce?: string | null
|
|
24
|
+
pluginName?: string | null
|
|
25
|
+
}
|
|
26
|
+
|
|
27
|
+
/** 磁盘 / 接口中的 license 文件结构 */
|
|
28
|
+
export type MarketLicenseFile = {
|
|
29
|
+
payload: MarketLicensePayload
|
|
30
|
+
sig: string
|
|
31
|
+
}
|
|
32
|
+
|
|
33
|
+
export type InstallGateKind =
|
|
34
|
+
| 'local'
|
|
35
|
+
| 'market-free'
|
|
36
|
+
| 'market-paid'
|
|
37
|
+
|
|
38
|
+
export type InstallGateResult = {
|
|
39
|
+
kind: InstallGateKind
|
|
40
|
+
marketId?: string
|
|
41
|
+
via?: 'file' | 'network'
|
|
42
|
+
}
|
|
43
|
+
|
|
44
|
+
export type AssertModuleInstallOptions = {
|
|
45
|
+
/** 覆盖 core 内置市场公钥(SPKI DER base64 或 PEM) */
|
|
46
|
+
marketPublicKey?: string | Uint8Array
|
|
47
|
+
/**
|
|
48
|
+
* 联网拉取「签名 license 原文」;core 只验签,不采信 boolean。
|
|
49
|
+
* 返回 null/空 = 无凭证。
|
|
50
|
+
*/
|
|
51
|
+
fetchSignedLicense?: (
|
|
52
|
+
marketId: string,
|
|
53
|
+
nonce: string,
|
|
54
|
+
) => Promise<string | MarketLicenseFile | null | undefined>
|
|
55
|
+
}
|
|
@@ -0,0 +1,64 @@
|
|
|
1
|
+
export type ModuleRouteDef = {
|
|
2
|
+
method: string
|
|
3
|
+
path: string
|
|
4
|
+
handler: string
|
|
5
|
+
perms?: string
|
|
6
|
+
summary?: string
|
|
7
|
+
}
|
|
8
|
+
|
|
9
|
+
export type ModuleMenuDef = {
|
|
10
|
+
name: string
|
|
11
|
+
router?: string
|
|
12
|
+
perms?: string
|
|
13
|
+
type?: number
|
|
14
|
+
icon?: string
|
|
15
|
+
orderNum?: number
|
|
16
|
+
appKey?: string
|
|
17
|
+
isShow?: boolean
|
|
18
|
+
}
|
|
19
|
+
|
|
20
|
+
export type ModuleManifest = {
|
|
21
|
+
name: string
|
|
22
|
+
key: string
|
|
23
|
+
version: string
|
|
24
|
+
description?: string
|
|
25
|
+
hook?: string
|
|
26
|
+
config?: Record<string, unknown>
|
|
27
|
+
singleton?: boolean
|
|
28
|
+
author?: string
|
|
29
|
+
logo?: string
|
|
30
|
+
readme?: string
|
|
31
|
+
routes?: ModuleRouteDef[]
|
|
32
|
+
menus?: ModuleMenuDef[]
|
|
33
|
+
/**
|
|
34
|
+
* 插件市场终身 ID(仅市场注入,作者勿手写)
|
|
35
|
+
* 无 market.sig 时忽略,按自研包安装
|
|
36
|
+
*/
|
|
37
|
+
marketId?: string
|
|
38
|
+
/** 市场定价;与 market.sig 一致 */
|
|
39
|
+
pricing?: 'free' | 'paid'
|
|
40
|
+
}
|
|
41
|
+
|
|
42
|
+
export type ModuleHandlerCtx = {
|
|
43
|
+
body: unknown
|
|
44
|
+
query: Record<string, string>
|
|
45
|
+
params: Record<string, string>
|
|
46
|
+
headers: Headers
|
|
47
|
+
adminId?: number | string
|
|
48
|
+
}
|
|
49
|
+
|
|
50
|
+
export type ModuleHandler = (ctx: ModuleHandlerCtx) => unknown | Promise<unknown>
|
|
51
|
+
|
|
52
|
+
export type ModuleInstalled = ModuleManifest & {
|
|
53
|
+
path: string
|
|
54
|
+
hasServer: boolean
|
|
55
|
+
hasWeb: boolean
|
|
56
|
+
hasHook: boolean
|
|
57
|
+
/** 席位展示(core 注入);作者/免费 seatsLabel/usedLabel 为 / */
|
|
58
|
+
seat?: {
|
|
59
|
+
seatsLabel: string
|
|
60
|
+
usedLabel: string
|
|
61
|
+
blocked: boolean
|
|
62
|
+
tip?: string
|
|
63
|
+
}
|
|
64
|
+
}
|
|
@@ -0,0 +1,38 @@
|
|
|
1
|
+
export type PluginManifest = {
|
|
2
|
+
name: string
|
|
3
|
+
key: string
|
|
4
|
+
hook?: string
|
|
5
|
+
singleton?: boolean
|
|
6
|
+
version: string
|
|
7
|
+
description?: string
|
|
8
|
+
author?: string
|
|
9
|
+
logo?: string
|
|
10
|
+
readme?: string
|
|
11
|
+
config?: Record<string, unknown>
|
|
12
|
+
}
|
|
13
|
+
|
|
14
|
+
export type PluginInfo = PluginManifest & {
|
|
15
|
+
config?: Record<string, unknown>
|
|
16
|
+
}
|
|
17
|
+
|
|
18
|
+
export type PluginPayload = {
|
|
19
|
+
content: { type: 'comm' | 'module'; data: string }
|
|
20
|
+
tsContent: { type: 'ts'; data: string }
|
|
21
|
+
}
|
|
22
|
+
|
|
23
|
+
export type PluginCheckResult = {
|
|
24
|
+
type: 0 | 1 | 2 | 3
|
|
25
|
+
message: string
|
|
26
|
+
}
|
|
27
|
+
|
|
28
|
+
export type PluginServices = {
|
|
29
|
+
cache?: {
|
|
30
|
+
get: (key: string) => Promise<unknown>
|
|
31
|
+
set: (key: string, value: unknown) => Promise<unknown>
|
|
32
|
+
del: (key: string) => Promise<unknown>
|
|
33
|
+
}
|
|
34
|
+
pluginService?: {
|
|
35
|
+
getInstance: (key: string) => Promise<unknown>
|
|
36
|
+
invoke: (key: string, method: string, ...params: unknown[]) => Promise<unknown>
|
|
37
|
+
}
|
|
38
|
+
}
|
|
@@ -0,0 +1,34 @@
|
|
|
1
|
+
/** IoC 作用域 */
|
|
2
|
+
export type ScopeValue = 'singleton' | 'request' | 'prototype'
|
|
3
|
+
|
|
4
|
+
/** 可 new 的 Provider 类 */
|
|
5
|
+
export type ClassToken<T = unknown> = abstract new (...args: any[]) => T
|
|
6
|
+
|
|
7
|
+
/**
|
|
8
|
+
* 注入标识:类 / 字符串 id / symbol
|
|
9
|
+
* 字符串 id 用于跨模块按名注入
|
|
10
|
+
*/
|
|
11
|
+
export type InjectionToken<T = unknown> = ClassToken<T> | string | symbol
|
|
12
|
+
|
|
13
|
+
export type InjectMeta = {
|
|
14
|
+
propertyKey: string | symbol
|
|
15
|
+
/** 依赖标识;与 resolve 二选一 */
|
|
16
|
+
token?: InjectionToken
|
|
17
|
+
/** 自定义解析(如 Repository) */
|
|
18
|
+
resolve?: () => unknown
|
|
19
|
+
}
|
|
20
|
+
|
|
21
|
+
export type ProviderMeta = {
|
|
22
|
+
/** 注册键(类或自定义 id) */
|
|
23
|
+
token: InjectionToken
|
|
24
|
+
/** 实际用来 new 的类 */
|
|
25
|
+
useClass: ClassToken
|
|
26
|
+
scope: ScopeValue
|
|
27
|
+
}
|
|
28
|
+
|
|
29
|
+
export type ProvideOptions = {
|
|
30
|
+
/** 自定义标识,可用 `@Inject('id')` / `Ioc.get('id')` */
|
|
31
|
+
id?: string | symbol
|
|
32
|
+
/** 作用域,默认 singleton */
|
|
33
|
+
scope?: ScopeValue
|
|
34
|
+
}
|