vome-core 0.0.61 → 0.0.63

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.
Files changed (41) hide show
  1. package/dist/admin/config/plugin-dev.d.ts +2 -0
  2. package/dist/admin/config/plugin-dev.js +1 -1
  3. package/dist/admin/crud/config.js +1 -1
  4. package/dist/admin/crud/confirm.js +1 -1
  5. package/dist/admin/crud/dict.js +1 -1
  6. package/dist/admin/crud/index.js +1 -1
  7. package/dist/admin/crud/key.js +1 -1
  8. package/dist/admin/crud/mitt.js +1 -1
  9. package/dist/admin/crud/plugins.js +1 -1
  10. package/dist/admin/crud/span.js +1 -1
  11. package/dist/admin/crud/style.js +1 -1
  12. package/dist/admin/crud/validate.js +1 -1
  13. package/dist/admin/directives/perm.js +1 -1
  14. package/dist/admin/hooks/useUpload.js +1 -1
  15. package/dist/admin/index.d.ts +1 -1
  16. package/dist/admin/index.js +2 -1
  17. package/dist/admin/lib/browser.js +1 -1
  18. package/dist/admin/lib/cn.js +1 -1
  19. package/dist/admin/lib/dialog-float.js +1 -1
  20. package/dist/admin/lib/export-excel.js +1 -1
  21. package/dist/admin/lib/file-preview.js +1 -1
  22. package/dist/admin/lib/import-excel.js +1 -1
  23. package/dist/admin/lib/json.js +1 -1
  24. package/dist/admin/lib/menu.js +1 -1
  25. package/dist/admin/lib/tree.js +1 -1
  26. package/dist/admin/lib/upload.js +1 -1
  27. package/dist/admin/lib/video-frame.js +1 -1
  28. package/dist/index.js +1 -1
  29. package/dist/server/index.js +1 -1
  30. package/dist/shared/excel.js +1 -1
  31. package/dist/shared/index.js +1 -1
  32. package/dist/shared/tree.js +1 -1
  33. package/dist/src/admin/config/plugin-dev.d.ts +2 -0
  34. package/dist/src/comm/format-time.d.ts +1 -0
  35. package/dist/src/core/index.d.ts +1 -1
  36. package/dist/src/ext/index.d.ts +2 -2
  37. package/dist/src/ext/market-package.d.ts +8 -2
  38. package/dist/src/ext/market-runtime.d.ts +11 -1
  39. package/dist/src/ext/module-install-gate.d.ts +2 -1
  40. package/dist/src/server/index.d.ts +1 -1
  41. package/package.json +1 -1
@@ -1 +1 @@
1
- const _0x47ef89=_0xf491;(function(_0x2c9e8d,_0x13be70){const _0x45d7cc=_0xf491,_0x34a790=_0x2c9e8d();while(!![]){try{const _0x40a201=parseInt(_0x45d7cc(0x176))/0x1+-parseInt(_0x45d7cc(0x17a))/0x2*(-parseInt(_0x45d7cc(0x187))/0x3)+parseInt(_0x45d7cc(0x18f))/0x4+parseInt(_0x45d7cc(0x170))/0x5*(parseInt(_0x45d7cc(0x186))/0x6)+parseInt(_0x45d7cc(0x185))/0x7*(parseInt(_0x45d7cc(0x188))/0x8)+-parseInt(_0x45d7cc(0x17d))/0x9+-parseInt(_0x45d7cc(0x181))/0xa;if(_0x40a201===_0x13be70)break;else _0x34a790['push'](_0x34a790['shift']());}catch(_0x4928e4){_0x34a790['push'](_0x34a790['shift']());}}}(_0x51af,0x4c09a));import*as _0x54c48d from'xlsx';export const IMPORT_SKIP_FIELDS=['id',_0x47ef89(0x18e),_0x47ef89(0x182),'deletedAt',_0x47ef89(0x18c)];export function isImportSkipField(_0x325b80){return IMPORT_SKIP_FIELDS['includes'](_0x325b80);}function _0x51af(){const _0x5e8040=['oty0otmYwwPrtK1z','yxjYyxK','mtv2sxvvqNC','yxr0ywnOBwvUDdSGzMLSzw5HBwuQpvvurI04jYC','C3rYAw5N','ChjVCa','u2HLzxrZ','z2v0','nta4odG2EeHRAKf5','yxbWBgLJyxrPB24VDM5KlM9Wzw54BwXMB3jTyxrZlw9MzMLJzwrVy3vTzw50lNnWCMvHzhnOzwv0BwWUC2HLzxq','CMvHza','C2v0','mKDeD09zyW','yw9Hx3rVx3nOzwv0','lNHSC3G','ntqWoda2ngzAtvHfzW','BgfIzwW','u2HLzxroyw1LCW','BwfW','nJmYnZu5mhbVtgzQCG','DxbKyxrLvgLTzq','zw5KC1DPDgG','DxrPBhm','oti0n3vyBMrJtG','ndeZndeYseTWDxPI','nta4nty5DhzzwLLT','mJuZnM5SEuDKyq','BgvUz3rO','DhjPBq','yM9VA19HChbLBMrFC2HLzxq','DgvUyw50swq','C2HLzxrFDg9FANnVBG','y3jLyxrLvgLTzq'];_0x51af=function(){return _0x5e8040;};return _0x51af();}export function buildExcelBuffer(_0x546d95,_0x4a1ccf,_0x48fb45){const _0x545466=_0x47ef89,_0x17edf6=_0x546d95[_0x545466(0x180)](_0x1036ce=>_0x1036ce['label']||_0x1036ce[_0x545466(0x173)]),_0xd10fa4=_0x4a1ccf[_0x545466(0x180)](_0x48f4aa=>_0x546d95[_0x545466(0x180)](_0x22bd6f=>{const _0x6881fb=_0x545466;if(_0x48fb45)return _0x48fb45(_0x22bd6f[_0x6881fb(0x173)],_0x48f4aa);const _0x5563f5=_0x48f4aa[_0x22bd6f[_0x6881fb(0x173)]];if(_0x5563f5==null)return'';return String(_0x5563f5);})),_0x38f850=_0x54c48d['utils'][_0x545466(0x17b)]([_0x17edf6,..._0xd10fa4]),_0x40da0a=_0x54c48d[_0x545466(0x184)]['book_new']();return _0x54c48d[_0x545466(0x184)][_0x545466(0x18b)](_0x40da0a,_0x38f850,'Sheet1'),_0x54c48d['write'](_0x40da0a,{'bookType':'xlsx','type':_0x545466(0x190)});}export function buildImportTemplateBuffer(_0x3fa6c2){return buildExcelBuffer(_0x3fa6c2,[]);}function _0xf491(_0x461d25,_0x31f073){_0x461d25=_0x461d25-0x170;const _0x51af94=_0x51af();let _0xf49119=_0x51af94[_0x461d25];if(_0xf491['LDgkLR']===undefined){var _0x9b6e96=function(_0xbb9103){const _0x37e85d='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x54c48d='',_0x325b80='';for(let _0x546d95=0x0,_0x4a1ccf,_0x48fb45,_0x17edf6=0x0;_0x48fb45=_0xbb9103['charAt'](_0x17edf6++);~_0x48fb45&&(_0x4a1ccf=_0x546d95%0x4?_0x4a1ccf*0x40+_0x48fb45:_0x48fb45,_0x546d95++%0x4)?_0x54c48d+=String['fromCharCode'](0xff&_0x4a1ccf>>(-0x2*_0x546d95&0x6)):0x0){_0x48fb45=_0x37e85d['indexOf'](_0x48fb45);}for(let _0xd10fa4=0x0,_0x38f850=_0x54c48d['length'];_0xd10fa4<_0x38f850;_0xd10fa4++){_0x325b80+='%'+('00'+_0x54c48d['charCodeAt'](_0xd10fa4)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x325b80);};_0xf491['DDgQub']=_0x9b6e96,_0xf491['pkgeiW']={},_0xf491['LDgkLR']=!![];}const _0xfc6333=_0x51af94[0x0],_0x367937=_0x461d25+_0xfc6333,_0x5463bc=_0xf491['pkgeiW'][_0x367937];return!_0x5463bc?(_0xf49119=_0xf491['DDgQub'](_0xf49119),_0xf491['pkgeiW'][_0x367937]=_0xf49119):_0xf49119=_0x5463bc,_0xf49119;}export function parseExcelBuffer(_0x2857d9,_0x4ed205){const _0x28fa8e=_0x47ef89,_0x28c4ee=_0x54c48d[_0x28fa8e(0x178)](_0x2857d9,{'type':_0x28fa8e(0x190),'cellDates':!![]}),_0x19f000=_0x28c4ee[_0x28fa8e(0x17f)][0x0];if(!_0x19f000)return[];const _0x14ffe8=_0x28c4ee[_0x28fa8e(0x174)][_0x19f000];if(!_0x14ffe8)return[];const _0x37fb5f=_0x54c48d[_0x28fa8e(0x184)][_0x28fa8e(0x18d)](_0x14ffe8,{'header':0x1,'defval':'','raw':![]});if(!_0x37fb5f[_0x28fa8e(0x189)])return[];const _0x4c7e0e=(_0x37fb5f[0x0]||[])[_0x28fa8e(0x180)](_0x4b49b4=>String(_0x4b49b4??'')[_0x28fa8e(0x18a)]()),_0x3bb4ba=new Map();if(_0x4ed205?.['length'])for(const _0x5bf910 of _0x4ed205){_0x3bb4ba[_0x28fa8e(0x179)](_0x5bf910[_0x28fa8e(0x17e)][_0x28fa8e(0x18a)](),_0x5bf910[_0x28fa8e(0x173)]),_0x3bb4ba[_0x28fa8e(0x179)](_0x5bf910[_0x28fa8e(0x173)],_0x5bf910['prop']);}const _0x2fdb48=_0x4c7e0e['map'](_0xd07d9=>{const _0x24ed0d=_0x28fa8e;if(!_0xd07d9)return'';return _0x3bb4ba[_0x24ed0d(0x175)](_0xd07d9)||_0xd07d9;}),_0x58aead=[];for(let _0x1d2a3e=0x1;_0x1d2a3e<_0x37fb5f[_0x28fa8e(0x189)];_0x1d2a3e++){const _0x1b5154=_0x37fb5f[_0x1d2a3e]||[],_0x238800={};let _0x5528b7=!![];for(let _0x3d494c=0x0;_0x3d494c<_0x2fdb48['length'];_0x3d494c++){const _0x35814a=_0x2fdb48[_0x3d494c];if(!_0x35814a)continue;let _0x40e8a9=_0x1b5154[_0x3d494c];if(_0x40e8a9==null||_0x40e8a9===''){_0x238800[_0x35814a]=_0x40e8a9==null?null:'';continue;}_0x5528b7=![],typeof _0x40e8a9===_0x28fa8e(0x172)?_0x238800[_0x35814a]=_0x40e8a9[_0x28fa8e(0x18a)]():_0x238800[_0x35814a]=_0x40e8a9;}if(!_0x5528b7)_0x58aead['push'](_0x238800);}return _0x58aead;}export function excelFilename(_0x1a6c8c){const _0x10980d=_0x47ef89;return _0x1a6c8c[_0x10980d(0x183)](_0x10980d(0x17c))?_0x1a6c8c:_0x1a6c8c+_0x10980d(0x17c);}export function excelResponseHeaders(_0x2c6eda){const _0x3961c3=_0x47ef89,_0x345ec5=excelFilename(_0x2c6eda);return{'Content-Type':_0x3961c3(0x177),'Content-Disposition':_0x3961c3(0x171)+encodeURIComponent(_0x345ec5)};}
1
+ const _0x1fa95d=_0x1e4b;(function(_0x4f492f,_0x457c67){const _0x264f2a=_0x1e4b,_0x7a20e6=_0x4f492f();while(!![]){try{const _0x1d4498=parseInt(_0x264f2a(0xcd))/0x1+-parseInt(_0x264f2a(0xb9))/0x2+parseInt(_0x264f2a(0xd2))/0x3+parseInt(_0x264f2a(0xcc))/0x4+-parseInt(_0x264f2a(0xc1))/0x5*(-parseInt(_0x264f2a(0xd7))/0x6)+parseInt(_0x264f2a(0xc6))/0x7+-parseInt(_0x264f2a(0xbd))/0x8;if(_0x1d4498===_0x457c67)break;else _0x7a20e6['push'](_0x7a20e6['shift']());}catch(_0x268586){_0x7a20e6['push'](_0x7a20e6['shift']());}}}(_0x3007,0x795c6));import*as _0x4d1bce from'xlsx';export const IMPORT_SKIP_FIELDS=['id',_0x1fa95d(0xbe),'updateTime',_0x1fa95d(0xd5),'tenantId'];export function isImportSkipField(_0xa1fb1e){const _0x440607=_0x1fa95d;return IMPORT_SKIP_FIELDS[_0x440607(0xcb)](_0xa1fb1e);}export function buildExcelBuffer(_0xe0fcf5,_0x42b0ab,_0x41c49b){const _0x39b639=_0x1fa95d,_0x1ec289=_0xe0fcf5['map'](_0x389c13=>_0x389c13[_0x39b639(0xc9)]||_0x389c13[_0x39b639(0xba)]),_0x419d58=_0x42b0ab[_0x39b639(0xc3)](_0x7f619b=>_0xe0fcf5[_0x39b639(0xc3)](_0x2882eb=>{const _0x24ede2=_0x39b639;if(_0x41c49b)return _0x41c49b(_0x2882eb[_0x24ede2(0xba)],_0x7f619b);const _0x38b8c1=_0x7f619b[_0x2882eb[_0x24ede2(0xba)]];if(_0x38b8c1==null)return'';return String(_0x38b8c1);})),_0x263bc7=_0x4d1bce[_0x39b639(0xd3)][_0x39b639(0xc7)]([_0x1ec289,..._0x419d58]),_0x4ce869=_0x4d1bce[_0x39b639(0xd3)][_0x39b639(0xce)]();return _0x4d1bce[_0x39b639(0xd3)][_0x39b639(0xc0)](_0x4ce869,_0x263bc7,_0x39b639(0xd9)),_0x4d1bce[_0x39b639(0xd4)](_0x4ce869,{'bookType':_0x39b639(0xc2),'type':_0x39b639(0xca)});}function _0x1e4b(_0x437313,_0x2412e6){_0x437313=_0x437313-0xb9;const _0x30070d=_0x3007();let _0x1e4bb4=_0x30070d[_0x437313];if(_0x1e4b['rjmncF']===undefined){var _0x258337=function(_0x4272af){const _0x496b69='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x4d1bce='',_0xa1fb1e='';for(let _0xe0fcf5=0x0,_0x42b0ab,_0x41c49b,_0x1ec289=0x0;_0x41c49b=_0x4272af['charAt'](_0x1ec289++);~_0x41c49b&&(_0x42b0ab=_0xe0fcf5%0x4?_0x42b0ab*0x40+_0x41c49b:_0x41c49b,_0xe0fcf5++%0x4)?_0x4d1bce+=String['fromCharCode'](0xff&_0x42b0ab>>(-0x2*_0xe0fcf5&0x6)):0x0){_0x41c49b=_0x496b69['indexOf'](_0x41c49b);}for(let _0x419d58=0x0,_0x263bc7=_0x4d1bce['length'];_0x419d58<_0x263bc7;_0x419d58++){_0xa1fb1e+='%'+('00'+_0x4d1bce['charCodeAt'](_0x419d58)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0xa1fb1e);};_0x1e4b['jyEXwJ']=_0x258337,_0x1e4b['oJRHeQ']={},_0x1e4b['rjmncF']=!![];}const _0x43169d=_0x30070d[0x0],_0x14b44e=_0x437313+_0x43169d,_0x1f52ee=_0x1e4b['oJRHeQ'][_0x14b44e];return!_0x1f52ee?(_0x1e4bb4=_0x1e4b['jyEXwJ'](_0x1e4bb4),_0x1e4b['oJRHeQ'][_0x14b44e]=_0x1e4bb4):_0x1e4bb4=_0x1f52ee,_0x1e4bb4;}export function buildImportTemplateBuffer(_0xd96a2c){return buildExcelBuffer(_0xd96a2c,[]);}export function parseExcelBuffer(_0x580a13,_0x488422){const _0xc7174d=_0x1fa95d,_0x4946f2=_0x4d1bce[_0xc7174d(0xd1)](_0x580a13,{'type':_0xc7174d(0xca),'cellDates':!![]}),_0x2554f6=_0x4946f2[_0xc7174d(0xdb)][0x0];if(!_0x2554f6)return[];const _0x2cb947=_0x4946f2[_0xc7174d(0xda)][_0x2554f6];if(!_0x2cb947)return[];const _0x5e53ec=_0x4d1bce['utils'][_0xc7174d(0xc8)](_0x2cb947,{'header':0x1,'defval':'','raw':![]});if(!_0x5e53ec[_0xc7174d(0xbf)])return[];const _0x50c870=(_0x5e53ec[0x0]||[])['map'](_0x4fc3fe=>String(_0x4fc3fe??'')[_0xc7174d(0xc4)]()),_0x5c7a06=new Map();if(_0x488422?.[_0xc7174d(0xbf)])for(const _0x12b9dd of _0x488422){_0x5c7a06[_0xc7174d(0xd0)](_0x12b9dd[_0xc7174d(0xc9)][_0xc7174d(0xc4)](),_0x12b9dd[_0xc7174d(0xba)]),_0x5c7a06[_0xc7174d(0xd0)](_0x12b9dd[_0xc7174d(0xba)],_0x12b9dd[_0xc7174d(0xba)]);}const _0x1c034e=_0x50c870['map'](_0x2070cf=>{const _0x56c828=_0xc7174d;if(!_0x2070cf)return'';return _0x5c7a06[_0x56c828(0xbb)](_0x2070cf)||_0x2070cf;}),_0x312e7b=[];for(let _0x53b5cc=0x1;_0x53b5cc<_0x5e53ec[_0xc7174d(0xbf)];_0x53b5cc++){const _0x23e466=_0x5e53ec[_0x53b5cc]||[],_0x2482cb={};let _0x301bc0=!![];for(let _0x152986=0x0;_0x152986<_0x1c034e[_0xc7174d(0xbf)];_0x152986++){const _0x4354b6=_0x1c034e[_0x152986];if(!_0x4354b6)continue;let _0x2d6441=_0x23e466[_0x152986];if(_0x2d6441==null||_0x2d6441===''){_0x2482cb[_0x4354b6]=_0x2d6441==null?null:'';continue;}_0x301bc0=![],typeof _0x2d6441===_0xc7174d(0xcf)?_0x2482cb[_0x4354b6]=_0x2d6441[_0xc7174d(0xc4)]():_0x2482cb[_0x4354b6]=_0x2d6441;}if(!_0x301bc0)_0x312e7b[_0xc7174d(0xc5)](_0x2482cb);}return _0x312e7b;}export function excelFilename(_0x4ccd70){const _0x4893a4=_0x1fa95d;return _0x4ccd70['endsWith'](_0x4893a4(0xd6))?_0x4ccd70:_0x4ccd70+'.xlsx';}export function excelResponseHeaders(_0x41bc26){const _0x554ceb=_0x1fa95d,_0xb56b71=excelFilename(_0x41bc26);return{'Content-Type':_0x554ceb(0xbc),'Content-Disposition':_0x554ceb(0xd8)+encodeURIComponent(_0xb56b71)};}function _0x3007(){const _0x2a87a6=['mtm3mJG1mwXTtuXnyW','DxrPBhm','D3jPDgu','zgvSzxrLzef0','lNHSC3G','mJe3nti0nKz2CKTxCq','yxr0ywnOBwvUDdSGzMLSzw5HBwuQpvvurI04jYC','u2HLzxqX','u2HLzxrZ','u2HLzxroyw1LCW','mJmWndbjq2npwMu','ChjVCa','z2v0','yxbWBgLJyxrPB24VDM5KlM9Wzw54BwXMB3jTyxrZlw9MzMLJzwrVy3vTzw50lNnWCMvHzhnOzwv0BwWUC2HLzxq','mtGWmdqXnJH3AMTYEvC','y3jLyxrLvgLTzq','BgvUz3rO','yM9VA19HChbLBMrFC2HLzxq','nuzTBujSuq','EgXZEa','BwfW','DhjPBq','ChvZAa','mZe2odeZmhz3tuj1vG','yw9Hx3rVx3nOzwv0','C2HLzxrFDg9FANnVBG','BgfIzwW','yxjYyxK','Aw5JBhvKzxm','mJmZotqYmg1qANfRtG','otaXntmYzgjSwNDf','yM9VA19UzxC','C3rYAw5N','C2v0','CMvHza'];_0x3007=function(){return _0x2a87a6;};return _0x3007();}
@@ -1 +1 @@
1
- function _0x4ac8(_0x2db561,_0x451022){_0x2db561=_0x2db561-0xbe;var _0x599b1d=_0x599b();var _0x4ac83a=_0x599b1d[_0x2db561];if(_0x4ac8['taWntp']===undefined){var _0x5008d0=function(_0xe43c5){var _0x1281a2='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';var _0x278fcf='',_0x54f384='';for(var _0xe19d76=0x0,_0x445799,_0x1ea295,_0x56cd26=0x0;_0x1ea295=_0xe43c5['charAt'](_0x56cd26++);~_0x1ea295&&(_0x445799=_0xe19d76%0x4?_0x445799*0x40+_0x1ea295:_0x1ea295,_0xe19d76++%0x4)?_0x278fcf+=String['fromCharCode'](0xff&_0x445799>>(-0x2*_0xe19d76&0x6)):0x0){_0x1ea295=_0x1281a2['indexOf'](_0x1ea295);}for(var _0x559af4=0x0,_0x4e5ccc=_0x278fcf['length'];_0x559af4<_0x4e5ccc;_0x559af4++){_0x54f384+='%'+('00'+_0x278fcf['charCodeAt'](_0x559af4)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x54f384);};_0x4ac8['LTlgKx']=_0x5008d0,_0x4ac8['YxXCKl']={},_0x4ac8['taWntp']=!![];}var _0x830906=_0x599b1d[0x0],_0x404e44=_0x2db561+_0x830906,_0x1a0b51=_0x4ac8['YxXCKl'][_0x404e44];return!_0x1a0b51?(_0x4ac83a=_0x4ac8['LTlgKx'](_0x4ac83a),_0x4ac8['YxXCKl'][_0x404e44]=_0x4ac83a):_0x4ac83a=_0x1a0b51,_0x4ac83a;}(function(_0x338a3d,_0x2f45a9){var _0x14d1d1=_0x4ac8,_0x55d5cb=_0x338a3d();while(!![]){try{var _0x5ae850=parseInt(_0x14d1d1(0xc7))/0x1*(parseInt(_0x14d1d1(0xbe))/0x2)+-parseInt(_0x14d1d1(0xbf))/0x3+-parseInt(_0x14d1d1(0xc6))/0x4*(-parseInt(_0x14d1d1(0xc0))/0x5)+parseInt(_0x14d1d1(0xc4))/0x6*(-parseInt(_0x14d1d1(0xc5))/0x7)+parseInt(_0x14d1d1(0xc8))/0x8*(parseInt(_0x14d1d1(0xc1))/0x9)+parseInt(_0x14d1d1(0xc3))/0xa+-parseInt(_0x14d1d1(0xc2))/0xb;if(_0x5ae850===_0x2f45a9)break;else _0x55d5cb['push'](_0x55d5cb['shift']());}catch(_0x5781b9){_0x55d5cb['push'](_0x55d5cb['shift']());}}}(_0x599b,0x738d3));export{merge}from'../comm/merge';export{deepTree,flattenTree}from'./tree';function _0x599b(){var _0x2cef23=['nJC1Ee5TvMLY','odG3ndy0B0vrwwXK','mJe5mNPguMjuqq','mJaWmdq5oxHVBwD5wa','ndeWmduWEfvoAunh','nJniteXYsvu','mtmYmduWotnJCLrrCKi','nZuYnZG1mfzpr2Ltuq','nNHhsxDkBa','mJm2otK5n2HYtKTIzW','mJbosLDXvLe'];_0x599b=function(){return _0x2cef23;};return _0x599b();}export{RES_CODE}from'../routing/base';export{buildExcelBuffer,buildImportTemplateBuffer,parseExcelBuffer,excelFilename,excelResponseHeaders,IMPORT_SKIP_FIELDS,isImportSkipField}from'./excel';
1
+ (function(_0x31f381,_0x4f6d47){var _0x43c752=_0x558c,_0x5add49=_0x31f381();while(!![]){try{var _0x384ffd=parseInt(_0x43c752(0x82))/0x1*(-parseInt(_0x43c752(0x83))/0x2)+-parseInt(_0x43c752(0x7f))/0x3*(-parseInt(_0x43c752(0x7e))/0x4)+-parseInt(_0x43c752(0x85))/0x5+-parseInt(_0x43c752(0x87))/0x6*(parseInt(_0x43c752(0x88))/0x7)+-parseInt(_0x43c752(0x7d))/0x8*(parseInt(_0x43c752(0x81))/0x9)+-parseInt(_0x43c752(0x86))/0xa+-parseInt(_0x43c752(0x80))/0xb*(-parseInt(_0x43c752(0x84))/0xc);if(_0x384ffd===_0x4f6d47)break;else _0x5add49['push'](_0x5add49['shift']());}catch(_0x3bf9a0){_0x5add49['push'](_0x5add49['shift']());}}}(_0x5345,0x73067));function _0x558c(_0x5c3a75,_0x136257){_0x5c3a75=_0x5c3a75-0x7d;var _0x534585=_0x5345();var _0x558c33=_0x534585[_0x5c3a75];if(_0x558c['ftchiI']===undefined){var _0x58de4c=function(_0x45c370){var _0x53cfb9='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';var _0x275558='',_0x29589a='';for(var _0x454df4=0x0,_0x256947,_0x26b68c,_0x154b48=0x0;_0x26b68c=_0x45c370['charAt'](_0x154b48++);~_0x26b68c&&(_0x256947=_0x454df4%0x4?_0x256947*0x40+_0x26b68c:_0x26b68c,_0x454df4++%0x4)?_0x275558+=String['fromCharCode'](0xff&_0x256947>>(-0x2*_0x454df4&0x6)):0x0){_0x26b68c=_0x53cfb9['indexOf'](_0x26b68c);}for(var _0x26848c=0x0,_0x356604=_0x275558['length'];_0x26848c<_0x356604;_0x26848c++){_0x29589a+='%'+('00'+_0x275558['charCodeAt'](_0x26848c)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x29589a);};_0x558c['ewGeIX']=_0x58de4c,_0x558c['mySFWp']={},_0x558c['ftchiI']=!![];}var _0x29207e=_0x534585[0x0],_0x1dbc70=_0x5c3a75+_0x29207e,_0x46b5e5=_0x558c['mySFWp'][_0x1dbc70];return!_0x46b5e5?(_0x558c33=_0x558c['ewGeIX'](_0x558c33),_0x558c['mySFWp'][_0x1dbc70]=_0x558c33):_0x558c33=_0x46b5e5,_0x558c33;}export{merge}from'../comm/merge';export{deepTree,flattenTree}from'./tree';export{RES_CODE}from'../routing/base';function _0x5345(){var _0x1326a5=['mJC5DMHvBvPb','ndnzzNHvy2S','ntGZmg9tALvqqq','mtuWmZe5mdHRvvDrDvm','mtaXntu1nu9ODgvzza','mtGXmJqYmfHgwvHWBq','mtCXnJzoyxzhzLC','ndm0A2XmyMPA','mtm0nJe2y2Xty1rN','mJa1odHVvKvkENC','mJq5qMLhAfbM','mtfKDNzosfu'];_0x5345=function(){return _0x1326a5;};return _0x5345();}export{buildExcelBuffer,buildImportTemplateBuffer,parseExcelBuffer,excelFilename,excelResponseHeaders,IMPORT_SKIP_FIELDS,isImportSkipField}from'./excel';
@@ -1 +1 @@
1
- function _0x4640(_0x3c8307,_0x5acf83){_0x3c8307=_0x3c8307-0x123;const _0x12ef2b=_0x12ef();let _0x46406f=_0x12ef2b[_0x3c8307];if(_0x4640['OARqsk']===undefined){var _0xbdcc36=function(_0x2b8cea){const _0x1791e7='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x275f23='',_0x481c49='';for(let _0x18f63=0x0,_0x3b8baf,_0x29f2e6,_0xf95284=0x0;_0x29f2e6=_0x2b8cea['charAt'](_0xf95284++);~_0x29f2e6&&(_0x3b8baf=_0x18f63%0x4?_0x3b8baf*0x40+_0x29f2e6:_0x29f2e6,_0x18f63++%0x4)?_0x275f23+=String['fromCharCode'](0xff&_0x3b8baf>>(-0x2*_0x18f63&0x6)):0x0){_0x29f2e6=_0x1791e7['indexOf'](_0x29f2e6);}for(let _0x4f5ba8=0x0,_0x3b8531=_0x275f23['length'];_0x4f5ba8<_0x3b8531;_0x4f5ba8++){_0x481c49+='%'+('00'+_0x275f23['charCodeAt'](_0x4f5ba8)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x481c49);};_0x4640['TrrekX']=_0xbdcc36,_0x4640['sbgbfD']={},_0x4640['OARqsk']=!![];}const _0x2e1665=_0x12ef2b[0x0],_0x39e529=_0x3c8307+_0x2e1665,_0x5c93b8=_0x4640['sbgbfD'][_0x39e529];return!_0x5c93b8?(_0x46406f=_0x4640['TrrekX'](_0x46406f),_0x4640['sbgbfD'][_0x39e529]=_0x46406f):_0x46406f=_0x5c93b8,_0x46406f;}function _0x12ef(){const _0x3f23a5=['otG2odKYzvHVvMPO','mtG2nZy3mLPdsNz1vG','AgfZ','B3jKzxjoDw0','mZbishDSBeG','mJrPDe9IwgG','z2v0','mZbdu2fREMO','ntyXnuvxs1Hiwa','nK5HChHJzq','C29YDa','y2HPBgrYzw4','ChvZAa','BgvUz3rO','mJKZnM5eDhfdAW','odH1D3rjANy','mJuWmZCYnZjpALbxtNK','nZC0ntfpA3L4vK0','yxnJ','ntKZodC0zg5PDerj','CgfYzw50swq','mJe3nZKXCgvrDw9T','DMfSDwvZ'];_0x12ef=function(){return _0x3f23a5;};return _0x12ef();}const _0x5cd9bf=_0x4640;(function(_0x2f3994,_0x347b22){const _0x274137=_0x4640,_0x4a18c1=_0x2f3994();while(!![]){try{const _0x272777=-parseInt(_0x274137(0x135))/0x1+-parseInt(_0x274137(0x126))/0x2*(parseInt(_0x274137(0x134))/0x3)+-parseInt(_0x274137(0x12b))/0x4*(-parseInt(_0x274137(0x125))/0x5)+-parseInt(_0x274137(0x124))/0x6*(parseInt(_0x274137(0x132))/0x7)+-parseInt(_0x274137(0x12c))/0x8*(parseInt(_0x274137(0x130))/0x9)+-parseInt(_0x274137(0x138))/0xa*(-parseInt(_0x274137(0x12e))/0xb)+-parseInt(_0x274137(0x139))/0xc*(-parseInt(_0x274137(0x12d))/0xd);if(_0x272777===_0x347b22)break;else _0x4a18c1['push'](_0x4a18c1['shift']());}catch(_0x79ace7){_0x4a18c1['push'](_0x4a18c1['shift']());}}}(_0x12ef,0xeab26));export function deepTree(_0x275f23,_0x481c49=_0x5cd9bf(0x12f)){const _0x1c1636=_0x5cd9bf,_0x18f63=new Map();for(const _0xf95284 of _0x275f23){if(_0xf95284['id']==null)continue;_0x18f63['set'](_0xf95284['id'],{..._0xf95284,'children':[]});}const _0x3b8baf=[];for(const _0x4f5ba8 of _0x18f63[_0x1c1636(0x133)]()){const _0x3b8531=_0x4f5ba8[_0x1c1636(0x131)];_0x3b8531!=null&&_0x3b8531!==''&&_0x18f63['has'](_0x3b8531)?_0x18f63[_0x1c1636(0x123)](_0x3b8531)[_0x1c1636(0x128)][_0x1c1636(0x129)](_0x4f5ba8):_0x3b8baf[_0x1c1636(0x129)](_0x4f5ba8);}const _0x29f2e6=_0x364df1=>{const _0x3df598=_0x1c1636;_0x364df1[_0x3df598(0x127)]((_0x2a4597,_0x3a8e52)=>{const _0x3d4dc3=_0x3df598,_0x17fabc=_0x2a4597[_0x3d4dc3(0x137)]??0x0,_0x3cb113=_0x3a8e52[_0x3d4dc3(0x137)]??0x0,_0x19cbec=_0x481c49==='desc'?_0x3cb113-_0x17fabc:_0x17fabc-_0x3cb113;return _0x19cbec||Number(_0x2a4597['id'])-Number(_0x3a8e52['id']);});for(const _0x7a0052 of _0x364df1)if(_0x7a0052['children']?.[_0x3df598(0x12a)])_0x29f2e6(_0x7a0052['children']);};return _0x29f2e6(_0x3b8baf),_0x3b8baf;}export function flattenTree(_0x2d57a4,_0x87ee56,_0x4065b2=0x0,_0x165a8f=[]){const _0x3222fc=_0x5cd9bf;for(const _0x34d4c6 of _0x2d57a4){const _0x5b41ab=_0x34d4c6[_0x3222fc(0x128)]||[];_0x165a8f[_0x3222fc(0x129)]({..._0x34d4c6,'depth':_0x4065b2,'hasChildren':_0x5b41ab[_0x3222fc(0x12a)]>0x0});if(_0x5b41ab[_0x3222fc(0x12a)]&&_0x87ee56[_0x3222fc(0x136)](_0x34d4c6['id']))flattenTree(_0x5b41ab,_0x87ee56,_0x4065b2+0x1,_0x165a8f);}return _0x165a8f;}
1
+ const _0x18b6eb=_0x185a;function _0x185a(_0x3b4344,_0x5d3838){_0x3b4344=_0x3b4344-0x121;const _0x5bf436=_0x5bf4();let _0x185a79=_0x5bf436[_0x3b4344];if(_0x185a['MkJoBv']===undefined){var _0x3e5801=function(_0x40428d){const _0xf5c4ca='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x5cbf27='',_0x3c8b62='';for(let _0x50ef8b=0x0,_0x21861e,_0x453c9f,_0x4c4f82=0x0;_0x453c9f=_0x40428d['charAt'](_0x4c4f82++);~_0x453c9f&&(_0x21861e=_0x50ef8b%0x4?_0x21861e*0x40+_0x453c9f:_0x453c9f,_0x50ef8b++%0x4)?_0x5cbf27+=String['fromCharCode'](0xff&_0x21861e>>(-0x2*_0x50ef8b&0x6)):0x0){_0x453c9f=_0xf5c4ca['indexOf'](_0x453c9f);}for(let _0x348ea8=0x0,_0x148f0e=_0x5cbf27['length'];_0x348ea8<_0x148f0e;_0x348ea8++){_0x3c8b62+='%'+('00'+_0x5cbf27['charCodeAt'](_0x348ea8)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x3c8b62);};_0x185a['czyBjT']=_0x3e5801,_0x185a['NNjdys']={},_0x185a['MkJoBv']=!![];}const _0x2c7cc4=_0x5bf436[0x0],_0xc94436=_0x3b4344+_0x2c7cc4,_0x16e227=_0x185a['NNjdys'][_0xc94436];return!_0x16e227?(_0x185a79=_0x185a['czyBjT'](_0x185a79),_0x185a['NNjdys'][_0xc94436]=_0x185a79):_0x185a79=_0x16e227,_0x185a79;}(function(_0x1b4554,_0x48c188){const _0x30a2bd=_0x185a,_0x12cfb1=_0x1b4554();while(!![]){try{const _0x321915=-parseInt(_0x30a2bd(0x134))/0x1*(parseInt(_0x30a2bd(0x12d))/0x2)+parseInt(_0x30a2bd(0x132))/0x3+-parseInt(_0x30a2bd(0x12c))/0x4+-parseInt(_0x30a2bd(0x127))/0x5*(parseInt(_0x30a2bd(0x124))/0x6)+parseInt(_0x30a2bd(0x129))/0x7+parseInt(_0x30a2bd(0x126))/0x8*(parseInt(_0x30a2bd(0x12f))/0x9)+parseInt(_0x30a2bd(0x12b))/0xa;if(_0x321915===_0x48c188)break;else _0x12cfb1['push'](_0x12cfb1['shift']());}catch(_0x4b5c86){_0x12cfb1['push'](_0x12cfb1['shift']());}}}(_0x5bf4,0xe743b));function _0x5bf4(){const _0x5ddafb=['nZa4ntHWA3jrBMq','ChvZAa','C2v0','DMfSDwvZ','yxnJ','mtjWr1bQy1q','z2v0','odHPBw1cBhe','mtu0nZa1mgzbzfzpyG','BgvUz3rO','ntq0mdm3ouzizvfHCa','y2HPBgrYzw4','mta4otmWmdbKqvzRv0u','nZmWotu5mLrKv09jva','mtjQu2rSsu8','AgfZ','ndeYnZiYDhvsEgnk','C29YDa','CgfYzw50swq','ndm0mZa3mhLsB2HnvG','B3jKzxjoDw0'];_0x5bf4=function(){return _0x5ddafb;};return _0x5bf4();}export function deepTree(_0x5cbf27,_0x3c8b62=_0x18b6eb(0x123)){const _0x40c664=_0x18b6eb,_0x50ef8b=new Map();for(const _0x4c4f82 of _0x5cbf27){if(_0x4c4f82['id']==null)continue;_0x50ef8b[_0x40c664(0x121)](_0x4c4f82['id'],{..._0x4c4f82,'children':[]});}const _0x21861e=[];for(const _0x348ea8 of _0x50ef8b[_0x40c664(0x122)]()){const _0x148f0e=_0x348ea8[_0x40c664(0x131)];_0x148f0e!=null&&_0x148f0e!==''&&_0x50ef8b['has'](_0x148f0e)?_0x50ef8b[_0x40c664(0x125)](_0x148f0e)['children'][_0x40c664(0x135)](_0x348ea8):_0x21861e['push'](_0x348ea8);}const _0x453c9f=_0x457b61=>{const _0x1541e6=_0x40c664;_0x457b61[_0x1541e6(0x130)]((_0x5cbac6,_0x27a95d)=>{const _0x52fe0f=_0x1541e6,_0xdf2053=_0x5cbac6[_0x52fe0f(0x133)]??0x0,_0x1e122e=_0x27a95d[_0x52fe0f(0x133)]??0x0,_0x415987=_0x3c8b62==='desc'?_0x1e122e-_0xdf2053:_0xdf2053-_0x1e122e;return _0x415987||Number(_0x5cbac6['id'])-Number(_0x27a95d['id']);});for(const _0x4a9dc0 of _0x457b61)if(_0x4a9dc0['children']?.[_0x1541e6(0x128)])_0x453c9f(_0x4a9dc0[_0x1541e6(0x12a)]);};return _0x453c9f(_0x21861e),_0x21861e;}export function flattenTree(_0x9ed7b3,_0x227ce9,_0xa9820c=0x0,_0xab14f5=[]){const _0x3efe7c=_0x18b6eb;for(const _0x170ab5 of _0x9ed7b3){const _0x27a2aa=_0x170ab5['children']||[];_0xab14f5[_0x3efe7c(0x135)]({..._0x170ab5,'depth':_0xa9820c,'hasChildren':_0x27a2aa[_0x3efe7c(0x128)]>0x0});if(_0x27a2aa[_0x3efe7c(0x128)]&&_0x227ce9[_0x3efe7c(0x12e)](_0x170ab5['id']))flattenTree(_0x27a2aa,_0x227ce9,_0xa9820c+0x1,_0xab14f5);}return _0xab14f5;}
@@ -2,6 +2,8 @@
2
2
  export declare function serviceUrlFromDocs(docsUrl: string): string;
3
3
  /** 席位 API 根(occupy / heartbeat / release) */
4
4
  export declare function seatApiBaseFromDocs(docsUrl: string): string;
5
+ /** 联网安装签发 license */
6
+ export declare function licenseIssueUrlFromDocs(docsUrl: string): string;
5
7
  export declare const pluginDev: {
6
8
  readonly docsUrl: "https://vomekj.com";
7
9
  /** 官网后端(由 docsUrl 派生) */
@@ -6,5 +6,6 @@ export declare function formatDateTime(value: Date | string | number): string;
6
6
  /**
7
7
  * 递归把 Date / 时间字段 ISO 串转成可读时间。
8
8
  * 不解析 JSON 文本列(params/detail 等仍是字符串),避免误改内容。
9
+ * 带 sig+payload 的签名信封(license / seat ticket)原样返回,禁止改时间破坏验签。
9
10
  */
10
11
  export declare function formatApiDates<T>(data: T): T;
@@ -15,7 +15,7 @@ export { Eps, isEpsEnabled, BaseController, RES_CODE, Controller, Get, Post, Put
15
15
  export type { ApiFail, ApiResult, ApiSuccess, ControllerCrudOptions, ControllerMeta, ControllerRouteMeta, ControllerSide, CrudApi, CrudBeforeFn, CrudRegistrar, EpsApiItem, EpsColumn, EpsEntity, EpsModuleMap, HttpMethod, InsertParamFn, QueryExtendFn, QueryExtendQb, QueryFieldRef, QueryJoin, QueryJoinType, QueryOp, QueryOpCtx, QueryWhereFn, QueryWhereResult, ResCode, RouteMiddleware, RouteParamMeta, RouteParamSource, } from '../routing';
16
16
  export { DbStore, baseColumns, BASE_COLUMN_COMMENTS, entitySchemas, columnComments, getColumnComments, syncColumnCommentsToPg, readCrudConfig, resolveSoftDelete, resolveUpsert, Repository, getRepository, InjectRepository, BaseService, q, compactWhere, needsAdvancedQuery, buildQueryOp, queryWithOp, attachCrudRoutes, isTenantEnabled, noTenant, normalizeHost, resolveTenantScope, tableHasDepartmentId, resolveDataScope, applyDataScopeWhere, applyRowScopes, noDataScope, } from '../orm';
17
17
  export type { CrudUpsertMode, CrudModifyType, CrudWriteOptions, CrudTrashQueryOptions, CrudDeleteOptions, PageQuery, PagePagination, PageResult, } from '../orm';
18
- export { BasePlugin, loadPluginClass, loadPluginClassFromPath, loadModuleHandlers, loadModuleHandlersFromPath, readPluginScript, resolvePluginServerPath, pDataPath, pPluginPath, pModulesPath, pModulePath, pLicensesPath, pLicensePath, ModuleRegistry, microApps, createModuleGateway, DEFAULT_MARKET_PUBLIC_KEY_B64, newMarketId, newInstallNonce, stableStringify, resolveMarketPublicKey, resolveMarketPrivateKey, ed25519Sign, ed25519Verify, generateMarketKeyPair, pricingFromPrice, buildMarketSigPayload, signMarketSigPayload, verifyMarketSigPayload, issueLicenseFile, parseLicenseFile, verifyLicenseFile, hashZipEntries, readZipManifest, readMarketSig, sealVomeBuffer, verifySealedVome, assertModuleInstallAllowed, assertModuleDirAllowed, peekMarketPackage, installModuleFromZip, uninstallModuleFiles, isSeatEnforced, isMarketSigEnforced, DEFAULT_SEAT_API_BASE, deriveHostIdentity, getHostIdentity, MARKET_SEAT_DEFAULTS, ensureSiteId, syncModuleSeat, syncAllModuleSeats, getModuleSeatStatus, listModuleSeatStatuses, isModuleSeatBlocked, assertModuleSeatActive, formatSeatDisplay, startMarketSeatHeartbeat, stopMarketSeatHeartbeat, bootstrapInstalledModules, } from '../ext';
18
+ export { BasePlugin, loadPluginClass, loadPluginClassFromPath, loadModuleHandlers, loadModuleHandlersFromPath, readPluginScript, resolvePluginServerPath, pDataPath, pPluginPath, pModulesPath, pModulePath, pLicensesPath, pLicensePath, ModuleRegistry, microApps, createModuleGateway, DEFAULT_MARKET_PUBLIC_KEY_B64, newMarketId, newInstallNonce, stableStringify, resolveMarketPublicKey, resolveMarketPrivateKey, ed25519Sign, ed25519Verify, generateMarketKeyPair, pricingFromPrice, buildMarketSigPayload, signMarketSigPayload, verifyMarketSigPayload, issueLicenseFile, parseLicenseFile, verifyLicenseFile, hashZipEntries, readZipManifest, readMarketSig, sealVomeBuffer, verifySealedVome, MARKET_LIC_ENTRY, readZipMarketLicense, attachMarketLicense, assertModuleInstallAllowed, assertModuleDirAllowed, peekMarketPackage, installModuleFromZip, uninstallModuleFiles, isSeatEnforced, isMarketSigEnforced, DEFAULT_SEAT_API_BASE, DEFAULT_LICENSE_ISSUE_URL, fetchOfficialSignedLicense, deriveHostIdentity, getHostIdentity, MARKET_SEAT_DEFAULTS, ensureSiteId, syncModuleSeat, syncAllModuleSeats, getModuleSeatStatus, listModuleSeatStatuses, isModuleSeatBlocked, assertModuleSeatActive, formatSeatDisplay, startMarketSeatHeartbeat, stopMarketSeatHeartbeat, bootstrapInstalledModules, } from '../ext';
19
19
  export type { HostIdentity } from '../ext';
20
20
  export type { PluginManifest, PluginInfo, PluginPayload, PluginCheckResult, ModuleRouteDef, ModuleMenuDef, ModuleManifest, ModuleHandlerCtx, ModuleHandler, ModuleInstalled, MarketPricing, MarketSigPayload, MarketLicensePayload, MarketLicenseFile, InstallGateKind, InstallGateResult, AssertModuleInstallOptions, InstallModuleOptions, InstallModuleResult, MarketSeatStatus, MarketSeatTicketPayload, MarketSeatTicket, } from '../ext';
21
21
  export { defineAuthMacro } from '../auth';
@@ -12,11 +12,11 @@ export { ModuleRegistry, } from './module-registry';
12
12
  export { microApps } from './micro-apps';
13
13
  export { createModuleGateway } from './module-gateway';
14
14
  export { DEFAULT_MARKET_PUBLIC_KEY_B64, newMarketId, newInstallNonce, stableStringify, resolveMarketPublicKey, resolveMarketPrivateKey, ed25519Sign, ed25519Verify, generateMarketKeyPair, pricingFromPrice, buildMarketSigPayload, signMarketSigPayload, verifyMarketSigPayload, issueLicenseFile, parseLicenseFile, verifyLicenseFile, } from './market-crypto';
15
- export { hashZipEntries, readZipManifest, readMarketSig, sealVomeBuffer, verifySealedVome, } from './market-package';
15
+ export { hashZipEntries, readZipManifest, readMarketSig, sealVomeBuffer, verifySealedVome, MARKET_LIC_ENTRY, readZipMarketLicense, attachMarketLicense, } from './market-package';
16
16
  export { assertModuleInstallAllowed, assertModuleDirAllowed, peekMarketPackage, readDirMarketSig, } from './module-install-gate';
17
17
  export { installModuleFromZip, uninstallModuleFiles, } from './module-install';
18
18
  export type { InstallModuleOptions, InstallModuleResult, } from './module-install';
19
- export { isSeatEnforced, isMarketSigEnforced, DEFAULT_SEAT_API_BASE, } from './market-runtime';
19
+ export { isSeatEnforced, isMarketSigEnforced, DEFAULT_SEAT_API_BASE, DEFAULT_LICENSE_ISSUE_URL, fetchOfficialSignedLicense, } from './market-runtime';
20
20
  export { deriveHostIdentity, getHostIdentity, } from './host-identity';
21
21
  export type { HostIdentity } from './host-identity';
22
22
  export { MARKET_SEAT_DEFAULTS, ensureSiteId, syncModuleSeat, syncAllModuleSeats, getModuleSeatStatus, listModuleSeatStatuses, isModuleSeatBlocked, assertModuleSeatActive, formatSeatDisplay, startMarketSeatHeartbeat, stopMarketSeatHeartbeat, bootstrapInstalledModules, } from './market-seat';
@@ -1,8 +1,10 @@
1
1
  import AdmZip from 'adm-zip';
2
2
  import type { KeyObject } from 'node:crypto';
3
3
  import type { ModuleManifest } from '../../typings/ext/module';
4
- import type { MarketPricing, MarketSigPayload } from '../../typings/ext/market';
5
- /** zip 内除 market.sig 外的条目做内容指纹 */
4
+ import type { MarketLicenseFile, MarketPricing, MarketSigPayload } from '../../typings/ext/market';
5
+ /** 随下载注入的永久 license(不参与内容指纹,安装时抽出) */
6
+ export declare const MARKET_LIC_ENTRY = "market.lic";
7
+ /** 对 zip 内除 market.sig / market.lic 外的条目做内容指纹 */
6
8
  export declare function hashZipEntries(zip: AdmZip): string;
7
9
  export declare function readZipManifest(zip: AdmZip): ModuleManifest;
8
10
  export type MarketSigFile = {
@@ -18,6 +20,10 @@ export declare function sealVomeBuffer(input: Buffer, opts: {
18
20
  pricing: MarketPricing;
19
21
  privateKey: string | Uint8Array | KeyObject;
20
22
  }): Buffer;
23
+ /** 读取包内随附 license(下载核销时注入) */
24
+ export declare function readZipMarketLicense(input: Buffer | AdmZip): MarketLicenseFile | null;
25
+ /** 签封后附加永久 license(不改 contentHash) */
26
+ export declare function attachMarketLicense(sealed: Buffer, license: MarketLicenseFile): Buffer;
21
27
  /**
22
28
  * 验签市场包。无 market.sig → 非市场包(null)。
23
29
  * 有签但失败 → 抛错。
@@ -1,9 +1,19 @@
1
+ import type { MarketLicenseFile } from '../../typings/ext/market';
1
2
  /**
2
3
  * 官方席位 API 根:由 pluginDev.docsUrl 派生
3
4
  * (https://vomekj.com → https://service.vomekj.com/app/pluginStore/seat)
4
- * 禁止 .env / 宿主 market.seatApiBase 开关
5
5
  */
6
6
  export declare const DEFAULT_SEAT_API_BASE: string;
7
+ /**
8
+ * 官方联网 license 签发:同 docsUrl 派生
9
+ * (…/app/pluginStore/wallet/license/issue)
10
+ */
11
+ export declare const DEFAULT_LICENSE_ISSUE_URL: string;
12
+ /**
13
+ * 向官网拉取签名 license(只采信签名原文,不采信 boolean)
14
+ * proofLicense:已有永久 .lic 时用于无登录换发(带 nonce)
15
+ */
16
+ export declare function fetchOfficialSignedLicense(marketId: string, nonce: string, proofLicense?: MarketLicenseFile | null): Promise<MarketLicenseFile | null>;
7
17
  /**
8
18
  * 是否强制市场验签 + 席位占用。
9
19
  * 仅编译产物为 true;开发 watch 为 false。
@@ -2,9 +2,10 @@ import type { AssertModuleInstallOptions, InstallGateResult } from '../../typing
2
2
  import type { MarketSigFile } from './market-package';
3
3
  /**
4
4
  * 安装前强制门禁(写入 core):
5
+ * - 开发(未 SEAT_ENFORCE):不验签,放行
5
6
  * - 无市场签名 → 自研包,放行
6
7
  * - 签名 free → 放行
7
- * - 签名 paid → 须本地 .lic 或联网拉取「签名 license」验签通过(不采信 boolean)
8
+ * - 签名 paid → 包内 market.lic / 本地 .lic / 联网签发(验签通过后落盘)
8
9
  */
9
10
  export declare function assertModuleInstallAllowed(zipPathOrBuffer: string | Buffer, opts?: AssertModuleInstallOptions): Promise<InstallGateResult>;
10
11
  declare function readDirMarketSig(dir: string): MarketSigFile | null;
@@ -4,7 +4,7 @@
4
4
  * 导入时加载宿主 `src/config`;扫描 / IoC / 路由注册在 `App.start()` 中执行。
5
5
  * 宿主须:`import 'reflect-metadata'`,并开启 `experimentalDecorators` + `emitDecoratorMetadata`。
6
6
  */
7
- export { App, appendInjectMeta, BaseController, Body, CommException, Context, Controller, Delete, Eps, isEpsEnabled, Get, getEnv, Inject, Ioc, isCommException, listControllers, isPublicHttpRoute, listProviders, Logger, Param, Patch, Post, Provide, Public, Perms, IgnorePerms, Put, Query, RES_CODE, scanFiles, ScopeEnum, Use, vome, VomeConfig, DbStore, baseColumns, BASE_COLUMN_COMMENTS, entitySchemas, columnComments, getColumnComments, syncColumnCommentsToPg, Repository, getRepository, InjectRepository, BaseService, q, attachCrudRoutes, isTenantEnabled, noTenant, normalizeHost, resolveTenantScope, tableHasDepartmentId, resolveDataScope, applyDataScopeWhere, applyRowScopes, noDataScope, BasePlugin, loadPluginClass, loadPluginClassFromPath, loadModuleHandlers, loadModuleHandlersFromPath, readPluginScript, resolvePluginServerPath, pDataPath, pPluginPath, pModulesPath, pModulePath, pLicensesPath, pLicensePath, ModuleRegistry, microApps, createModuleGateway, defineAuthMacro, DEFAULT_MARKET_PUBLIC_KEY_B64, newMarketId, newInstallNonce, stableStringify, resolveMarketPublicKey, resolveMarketPrivateKey, ed25519Sign, ed25519Verify, generateMarketKeyPair, pricingFromPrice, buildMarketSigPayload, signMarketSigPayload, verifyMarketSigPayload, issueLicenseFile, parseLicenseFile, verifyLicenseFile, hashZipEntries, readZipManifest, readMarketSig, sealVomeBuffer, verifySealedVome, assertModuleInstallAllowed, assertModuleDirAllowed, peekMarketPackage, installModuleFromZip, uninstallModuleFiles, isSeatEnforced, isMarketSigEnforced, DEFAULT_SEAT_API_BASE, deriveHostIdentity, getHostIdentity, MARKET_SEAT_DEFAULTS, ensureSiteId, syncModuleSeat, syncAllModuleSeats, getModuleSeatStatus, listModuleSeatStatuses, isModuleSeatBlocked, assertModuleSeatActive, formatSeatDisplay, startMarketSeatHeartbeat, stopMarketSeatHeartbeat, bootstrapInstalledModules, } from '../core';
7
+ export { App, appendInjectMeta, BaseController, Body, CommException, Context, Controller, Delete, Eps, isEpsEnabled, Get, getEnv, Inject, Ioc, isCommException, listControllers, isPublicHttpRoute, listProviders, Logger, Param, Patch, Post, Provide, Public, Perms, IgnorePerms, Put, Query, RES_CODE, scanFiles, ScopeEnum, Use, vome, VomeConfig, DbStore, baseColumns, BASE_COLUMN_COMMENTS, entitySchemas, columnComments, getColumnComments, syncColumnCommentsToPg, Repository, getRepository, InjectRepository, BaseService, q, attachCrudRoutes, isTenantEnabled, noTenant, normalizeHost, resolveTenantScope, tableHasDepartmentId, resolveDataScope, applyDataScopeWhere, applyRowScopes, noDataScope, BasePlugin, loadPluginClass, loadPluginClassFromPath, loadModuleHandlers, loadModuleHandlersFromPath, readPluginScript, resolvePluginServerPath, pDataPath, pPluginPath, pModulesPath, pModulePath, pLicensesPath, pLicensePath, ModuleRegistry, microApps, createModuleGateway, defineAuthMacro, DEFAULT_MARKET_PUBLIC_KEY_B64, newMarketId, newInstallNonce, stableStringify, resolveMarketPublicKey, resolveMarketPrivateKey, ed25519Sign, ed25519Verify, generateMarketKeyPair, pricingFromPrice, buildMarketSigPayload, signMarketSigPayload, verifyMarketSigPayload, issueLicenseFile, parseLicenseFile, verifyLicenseFile, hashZipEntries, readZipManifest, readMarketSig, sealVomeBuffer, verifySealedVome, MARKET_LIC_ENTRY, readZipMarketLicense, attachMarketLicense, assertModuleInstallAllowed, assertModuleDirAllowed, peekMarketPackage, installModuleFromZip, uninstallModuleFiles, isSeatEnforced, isMarketSigEnforced, DEFAULT_SEAT_API_BASE, DEFAULT_LICENSE_ISSUE_URL, fetchOfficialSignedLicense, deriveHostIdentity, getHostIdentity, MARKET_SEAT_DEFAULTS, ensureSiteId, syncModuleSeat, syncAllModuleSeats, getModuleSeatStatus, listModuleSeatStatuses, isModuleSeatBlocked, assertModuleSeatActive, formatSeatDisplay, startMarketSeatHeartbeat, stopMarketSeatHeartbeat, bootstrapInstalledModules, } from '../core';
8
8
  export type { HostIdentity } from '../core';
9
9
  export { buildExcelBuffer, buildImportTemplateBuffer, parseExcelBuffer, excelFilename, excelResponseHeaders, IMPORT_SKIP_FIELDS, isImportSkipField, } from '../shared/excel';
10
10
  export type { ExcelColumn, ExcelFormatCell } from '../shared/excel';
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "vome-core",
3
- "version": "0.0.61",
3
+ "version": "0.0.63",
4
4
  "description": "Vome framework — shared + Bun/Elysia server + Vue admin",
5
5
  "license": "MIT",
6
6
  "type": "module",