vome-core 0.0.59 → 0.0.61

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 (40) hide show
  1. package/dist/admin/config/plugin-dev.d.ts +6 -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 +5 -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 +50 -0
  34. package/dist/src/core/index.d.ts +2 -1
  35. package/dist/src/ext/host-identity.d.ts +15 -0
  36. package/dist/src/ext/index.d.ts +3 -0
  37. package/dist/src/ext/market-runtime.d.ts +13 -0
  38. package/dist/src/ext/market-seat.d.ts +10 -7
  39. package/dist/src/server/index.d.ts +2 -1
  40. package/package.json +1 -1
@@ -1 +1 @@
1
- const _0x52c18c=_0x2db5;function _0x2db5(_0x3680cc,_0x40bf61){_0x3680cc=_0x3680cc-0x17b;const _0x500b7d=_0x500b();let _0x2db528=_0x500b7d[_0x3680cc];if(_0x2db5['zdVaIG']===undefined){var _0x2b5a77=function(_0x53b6bf){const _0x575b49='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x191d44='',_0x35a344='';for(let _0x183d70=0x0,_0x16b0e1,_0x4566fc,_0x3bf0f3=0x0;_0x4566fc=_0x53b6bf['charAt'](_0x3bf0f3++);~_0x4566fc&&(_0x16b0e1=_0x183d70%0x4?_0x16b0e1*0x40+_0x4566fc:_0x4566fc,_0x183d70++%0x4)?_0x191d44+=String['fromCharCode'](0xff&_0x16b0e1>>(-0x2*_0x183d70&0x6)):0x0){_0x4566fc=_0x575b49['indexOf'](_0x4566fc);}for(let _0x46e916=0x0,_0x2d683a=_0x191d44['length'];_0x46e916<_0x2d683a;_0x46e916++){_0x35a344+='%'+('00'+_0x191d44['charCodeAt'](_0x46e916)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x35a344);};_0x2db5['NGsJfm']=_0x2b5a77,_0x2db5['PZkjgp']={},_0x2db5['zdVaIG']=!![];}const _0x117ef9=_0x500b7d[0x0],_0x414449=_0x3680cc+_0x117ef9,_0x3db81d=_0x2db5['PZkjgp'][_0x414449];return!_0x3db81d?(_0x2db528=_0x2db5['NGsJfm'](_0x2db528),_0x2db5['PZkjgp'][_0x414449]=_0x2db528):_0x2db528=_0x3db81d,_0x2db528;}(function(_0x25aa6b,_0x38639b){const _0x241c9e=_0x2db5,_0x3a0d21=_0x25aa6b();while(!![]){try{const _0x2aa6dc=parseInt(_0x241c9e(0x198))/0x1+-parseInt(_0x241c9e(0x18e))/0x2*(parseInt(_0x241c9e(0x189))/0x3)+parseInt(_0x241c9e(0x191))/0x4*(parseInt(_0x241c9e(0x184))/0x5)+-parseInt(_0x241c9e(0x193))/0x6*(parseInt(_0x241c9e(0x18b))/0x7)+parseInt(_0x241c9e(0x194))/0x8*(parseInt(_0x241c9e(0x17c))/0x9)+-parseInt(_0x241c9e(0x195))/0xa+-parseInt(_0x241c9e(0x190))/0xb*(-parseInt(_0x241c9e(0x19b))/0xc);if(_0x2aa6dc===_0x38639b)break;else _0x3a0d21['push'](_0x3a0d21['shift']());}catch(_0x12d32b){_0x3a0d21['push'](_0x3a0d21['shift']());}}}(_0x500b,0xa7397));import*as _0x191d44 from'xlsx';export const IMPORT_SKIP_FIELDS=['id','createTime',_0x52c18c(0x181),_0x52c18c(0x19c),'tenantId'];export function isImportSkipField(_0x35a344){return IMPORT_SKIP_FIELDS['includes'](_0x35a344);}export function buildExcelBuffer(_0x183d70,_0x16b0e1,_0x4566fc){const _0x2b3c14=_0x52c18c,_0x3bf0f3=_0x183d70[_0x2b3c14(0x17b)](_0x25f548=>_0x25f548[_0x2b3c14(0x17d)]||_0x25f548[_0x2b3c14(0x188)]),_0x46e916=_0x16b0e1[_0x2b3c14(0x17b)](_0x4c58ab=>_0x183d70[_0x2b3c14(0x17b)](_0x233854=>{const _0x51fdf8=_0x2b3c14;if(_0x4566fc)return _0x4566fc(_0x233854[_0x51fdf8(0x188)],_0x4c58ab);const _0xdd0c37=_0x4c58ab[_0x233854[_0x51fdf8(0x188)]];if(_0xdd0c37==null)return'';return String(_0xdd0c37);})),_0x2d683a=_0x191d44['utils'][_0x2b3c14(0x199)]([_0x3bf0f3,..._0x46e916]),_0x3f7e7c=_0x191d44[_0x2b3c14(0x186)][_0x2b3c14(0x192)]();return _0x191d44['utils'][_0x2b3c14(0x19a)](_0x3f7e7c,_0x2d683a,'Sheet1'),_0x191d44[_0x2b3c14(0x187)](_0x3f7e7c,{'bookType':'xlsx','type':'array'});}function _0x500b(){const _0x51825a=['yw9Hx3rVx3nOzwv0','yM9VA19HChbLBMrFC2HLzxq','mJG4nJq4vuXxyLvc','zgvSzxrLzef0','z2v0','BwfW','owHMuwzvDW','BgfIzwW','yxjYyxK','C2HLzxrFDg9FANnVBG','ChvZAa','DxbKyxrLvgLTzq','C2v0','u2HLzxroyw1LCW','ntq3nZaWnu95DfDMsa','C3rYAw5N','DxrPBhm','D3jPDgu','ChjVCa','mtjUwKHeug4','yxr0ywnOBwvUDdSGzMLSzw5HBwuQpvvurI04jYC','mtrPuKLRv3y','u2HLzxrZ','lNHSC3G','nJi1mtyYu2TYEhPo','BgvUz3rO','mtaXmKn5BuroDW','nhjHq3fSEG','yM9VA19UzxC','mJaXnZu0ogTqz3Hiuq','nZu1mZG0zunSy1n5','otCZotG0mg9tvhvuuW','CMvHza','zw5KC1DPDgG','mtC4otGZDhHjDLDs'];_0x500b=function(){return _0x51825a;};return _0x500b();}export function buildImportTemplateBuffer(_0x34e632){return buildExcelBuffer(_0x34e632,[]);}export function parseExcelBuffer(_0x361134,_0x46d89a){const _0x162df1=_0x52c18c,_0x1dc57f=_0x191d44[_0x162df1(0x196)](_0x361134,{'type':_0x162df1(0x17e),'cellDates':!![]}),_0x59181f=_0x1dc57f[_0x162df1(0x183)][0x0];if(!_0x59181f)return[];const _0xf3f915=_0x1dc57f[_0x162df1(0x18c)][_0x59181f];if(!_0xf3f915)return[];const _0x30bcf9=_0x191d44['utils'][_0x162df1(0x17f)](_0xf3f915,{'header':0x1,'defval':'','raw':![]});if(!_0x30bcf9['length'])return[];const _0x40be46=(_0x30bcf9[0x0]||[])[_0x162df1(0x17b)](_0xac5fd7=>String(_0xac5fd7??'')['trim']()),_0x2018dd=new Map();if(_0x46d89a?.[_0x162df1(0x18f)])for(const _0x2a455b of _0x46d89a){_0x2018dd[_0x162df1(0x182)](_0x2a455b[_0x162df1(0x17d)]['trim'](),_0x2a455b[_0x162df1(0x188)]),_0x2018dd[_0x162df1(0x182)](_0x2a455b[_0x162df1(0x188)],_0x2a455b[_0x162df1(0x188)]);}const _0x40a3f1=_0x40be46[_0x162df1(0x17b)](_0x29f1be=>{const _0x55ffa2=_0x162df1;if(!_0x29f1be)return'';return _0x2018dd[_0x55ffa2(0x19d)](_0x29f1be)||_0x29f1be;}),_0x40f9b1=[];for(let _0x3bbb37=0x1;_0x3bbb37<_0x30bcf9[_0x162df1(0x18f)];_0x3bbb37++){const _0x3c29e2=_0x30bcf9[_0x3bbb37]||[],_0x87dc40={};let _0x1cf14b=!![];for(let _0x52994e=0x0;_0x52994e<_0x40a3f1['length'];_0x52994e++){const _0x26a511=_0x40a3f1[_0x52994e];if(!_0x26a511)continue;let _0x365821=_0x3c29e2[_0x52994e];if(_0x365821==null||_0x365821===''){_0x87dc40[_0x26a511]=_0x365821==null?null:'';continue;}_0x1cf14b=![],typeof _0x365821===_0x162df1(0x185)?_0x87dc40[_0x26a511]=_0x365821['trim']():_0x87dc40[_0x26a511]=_0x365821;}if(!_0x1cf14b)_0x40f9b1[_0x162df1(0x180)](_0x87dc40);}return _0x40f9b1;}export function excelFilename(_0x16dd41){const _0x3bbf73=_0x52c18c;return _0x16dd41[_0x3bbf73(0x197)](_0x3bbf73(0x18d))?_0x16dd41:_0x16dd41+_0x3bbf73(0x18d);}export function excelResponseHeaders(_0x310f3b){const _0x1e7cf5=_0x52c18c,_0x4ad1b8=excelFilename(_0x310f3b);return{'Content-Type':'application/vnd.openxmlformats-officedocument.spreadsheetml.sheet','Content-Disposition':_0x1e7cf5(0x18a)+encodeURIComponent(_0x4ad1b8)};}
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 +1 @@
1
- (function(_0x326173,_0x7e8f67){var _0x524a61=_0x5e24,_0x3af4ca=_0x326173();while(!![]){try{var _0x435d5d=parseInt(_0x524a61(0x1d4))/0x1+-parseInt(_0x524a61(0x1db))/0x2*(parseInt(_0x524a61(0x1da))/0x3)+parseInt(_0x524a61(0x1d9))/0x4*(parseInt(_0x524a61(0x1d2))/0x5)+parseInt(_0x524a61(0x1dc))/0x6*(-parseInt(_0x524a61(0x1d6))/0x7)+parseInt(_0x524a61(0x1d3))/0x8*(-parseInt(_0x524a61(0x1d8))/0x9)+parseInt(_0x524a61(0x1d7))/0xa+parseInt(_0x524a61(0x1d5))/0xb;if(_0x435d5d===_0x7e8f67)break;else _0x3af4ca['push'](_0x3af4ca['shift']());}catch(_0x325806){_0x3af4ca['push'](_0x3af4ca['shift']());}}}(_0x13e4,0x25c5a));function _0x5e24(_0x200aa2,_0x2176c7){_0x200aa2=_0x200aa2-0x1d2;var _0x13e4e1=_0x13e4();var _0x5e24bd=_0x13e4e1[_0x200aa2];if(_0x5e24['wQBvQA']===undefined){var _0x5cc1db=function(_0x5ae3f7){var _0x259498='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';var _0x5ce86c='',_0x4c810d='';for(var _0x23284c=0x0,_0x511ca1,_0x11899d,_0x24a4c9=0x0;_0x11899d=_0x5ae3f7['charAt'](_0x24a4c9++);~_0x11899d&&(_0x511ca1=_0x23284c%0x4?_0x511ca1*0x40+_0x11899d:_0x11899d,_0x23284c++%0x4)?_0x5ce86c+=String['fromCharCode'](0xff&_0x511ca1>>(-0x2*_0x23284c&0x6)):0x0){_0x11899d=_0x259498['indexOf'](_0x11899d);}for(var _0x33c231=0x0,_0x19751e=_0x5ce86c['length'];_0x33c231<_0x19751e;_0x33c231++){_0x4c810d+='%'+('00'+_0x5ce86c['charCodeAt'](_0x33c231)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x4c810d);};_0x5e24['CCRKJA']=_0x5cc1db,_0x5e24['uUcFPt']={},_0x5e24['wQBvQA']=!![];}var _0x3820f7=_0x13e4e1[0x0],_0x290441=_0x200aa2+_0x3820f7,_0xc63118=_0x5e24['uUcFPt'][_0x290441];return!_0xc63118?(_0x5e24bd=_0x5e24['CCRKJA'](_0x5e24bd),_0x5e24['uUcFPt'][_0x290441]=_0x5e24bd):_0x5e24bd=_0xc63118,_0x5e24bd;}function _0x13e4(){var _0x343a5b=['nJbYvM5rEK4','ntCZndmYq2jlB1D1','mtG3mda5BxDmsfPL','mtK3nZm2mgrrBKn6zG','mZq2otLfy3b6Bvu','mJy0mtqWDejnEMvj','ouHmCujwuG','nZiZmdrssvDfz3q','m0fLrvfWBa','mtyYnJuWwhDcBfzN','mZy2surktfLP'];_0x13e4=function(){return _0x343a5b;};return _0x13e4();}export{merge}from'../comm/merge';export{deepTree,flattenTree}from'./tree';export{RES_CODE}from'../routing/base';export{buildExcelBuffer,buildImportTemplateBuffer,parseExcelBuffer,excelFilename,excelResponseHeaders,IMPORT_SKIP_FIELDS,isImportSkipField}from'./excel';
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 +1 @@
1
- function _0x384b(_0x3f497a,_0x3be157){_0x3f497a=_0x3f497a-0x1e6;const _0x5652af=_0x5652();let _0x384b1e=_0x5652af[_0x3f497a];if(_0x384b['rsOEvs']===undefined){var _0x99daaa=function(_0xbc5eba){const _0x53c9e2='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x5146f0='',_0x36ea38='';for(let _0x56a3b8=0x0,_0x3c39f6,_0x4ceba3,_0x778937=0x0;_0x4ceba3=_0xbc5eba['charAt'](_0x778937++);~_0x4ceba3&&(_0x3c39f6=_0x56a3b8%0x4?_0x3c39f6*0x40+_0x4ceba3:_0x4ceba3,_0x56a3b8++%0x4)?_0x5146f0+=String['fromCharCode'](0xff&_0x3c39f6>>(-0x2*_0x56a3b8&0x6)):0x0){_0x4ceba3=_0x53c9e2['indexOf'](_0x4ceba3);}for(let _0x37010b=0x0,_0x5a8660=_0x5146f0['length'];_0x37010b<_0x5a8660;_0x37010b++){_0x36ea38+='%'+('00'+_0x5146f0['charCodeAt'](_0x37010b)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x36ea38);};_0x384b['QtDFUb']=_0x99daaa,_0x384b['ynQAMA']={},_0x384b['rsOEvs']=!![];}const _0xb4c99d=_0x5652af[0x0],_0x9d2238=_0x3f497a+_0xb4c99d,_0x40469f=_0x384b['ynQAMA'][_0x9d2238];return!_0x40469f?(_0x384b1e=_0x384b['QtDFUb'](_0x384b1e),_0x384b['ynQAMA'][_0x9d2238]=_0x384b1e):_0x384b1e=_0x40469f,_0x384b1e;}const _0xfdff9e=_0x384b;(function(_0x50090e,_0x2b264f){const _0x3d7f91=_0x384b,_0x21c2aa=_0x50090e();while(!![]){try{const _0x3986d7=parseInt(_0x3d7f91(0x1f5))/0x1+parseInt(_0x3d7f91(0x1f7))/0x2*(parseInt(_0x3d7f91(0x1f1))/0x3)+-parseInt(_0x3d7f91(0x1f3))/0x4+parseInt(_0x3d7f91(0x1e8))/0x5+-parseInt(_0x3d7f91(0x1eb))/0x6+-parseInt(_0x3d7f91(0x1ea))/0x7*(parseInt(_0x3d7f91(0x1e9))/0x8)+-parseInt(_0x3d7f91(0x1e7))/0x9;if(_0x3986d7===_0x2b264f)break;else _0x21c2aa['push'](_0x21c2aa['shift']());}catch(_0x1eccd6){_0x21c2aa['push'](_0x21c2aa['shift']());}}}(_0x5652,0x45ba9));function _0x5652(){const _0x18b002=['B3jKzxjoDw0','mZmWotu2zMDAqxjV','C2v0','mtjuA2fluw8','yxnJ','mta3ote4mwXZufrWEa','mJm1mZKXmhnTqwLYrW','mZuXnJy0DunWyu5W','ndLSAMfHt3G','mtqYntyWs2j2rvbl','CgfYzw50swq','y2HPBgrYzw4','ChvZAa','AgfZ','BgvUz3rO','mta3mdm0t1rutLzp','C29YDa','mteXnti4ogfeAMP2tq'];_0x5652=function(){return _0x18b002;};return _0x5652();}export function deepTree(_0x5146f0,_0x36ea38=_0xfdff9e(0x1e6)){const _0x40e442=_0xfdff9e,_0x56a3b8=new Map();for(const _0x778937 of _0x5146f0){if(_0x778937['id']==null)continue;_0x56a3b8[_0x40e442(0x1f6)](_0x778937['id'],{..._0x778937,'children':[]});}const _0x3c39f6=[];for(const _0x37010b of _0x56a3b8['values']()){const _0x5a8660=_0x37010b[_0x40e442(0x1ec)];_0x5a8660!=null&&_0x5a8660!==''&&_0x56a3b8[_0x40e442(0x1ef)](_0x5a8660)?_0x56a3b8['get'](_0x5a8660)[_0x40e442(0x1ed)][_0x40e442(0x1ee)](_0x37010b):_0x3c39f6['push'](_0x37010b);}const _0x4ceba3=_0xd059f0=>{const _0x58dcbd=_0x40e442;_0xd059f0[_0x58dcbd(0x1f2)]((_0x1fe3cd,_0x161707)=>{const _0xd34532=_0x58dcbd,_0x50227f=_0x1fe3cd[_0xd34532(0x1f4)]??0x0,_0x2d8e42=_0x161707[_0xd34532(0x1f4)]??0x0,_0x3196a6=_0x36ea38==='desc'?_0x2d8e42-_0x50227f:_0x50227f-_0x2d8e42;return _0x3196a6||Number(_0x1fe3cd['id'])-Number(_0x161707['id']);});for(const _0x5326d3 of _0xd059f0)if(_0x5326d3[_0x58dcbd(0x1ed)]?.[_0x58dcbd(0x1f0)])_0x4ceba3(_0x5326d3[_0x58dcbd(0x1ed)]);};return _0x4ceba3(_0x3c39f6),_0x3c39f6;}export function flattenTree(_0x5021e7,_0x323736,_0x58dfa0=0x0,_0x47eef1=[]){const _0x1f78ec=_0xfdff9e;for(const _0x497eae of _0x5021e7){const _0x34111d=_0x497eae['children']||[];_0x47eef1[_0x1f78ec(0x1ee)]({..._0x497eae,'depth':_0x58dfa0,'hasChildren':_0x34111d[_0x1f78ec(0x1f0)]>0x0});if(_0x34111d['length']&&_0x323736['has'](_0x497eae['id']))flattenTree(_0x34111d,_0x323736,_0x58dfa0+0x1,_0x47eef1);}return _0x47eef1;}
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;}
@@ -0,0 +1,50 @@
1
+ /** docsUrl → 官网后端 origin(主机前加 service.) */
2
+ export declare function serviceUrlFromDocs(docsUrl: string): string;
3
+ /** 席位 API 根(occupy / heartbeat / release) */
4
+ export declare function seatApiBaseFromDocs(docsUrl: string): string;
5
+ export declare const pluginDev: {
6
+ readonly docsUrl: "https://vomekj.com";
7
+ /** 官网后端(由 docsUrl 派生) */
8
+ readonly serviceUrl: string;
9
+ readonly uploadUrl: "https://vomekj.com/plugins/upload";
10
+ /** 组织镜像:clone / 浏览优先 Gitee */
11
+ readonly mirrors: {
12
+ readonly prefer: "gitee";
13
+ readonly giteeOrg: "https://gitee.com/vomekj";
14
+ readonly githubOrg: "https://github.com/vomekj";
15
+ };
16
+ readonly scaffolds: {
17
+ readonly full: {
18
+ readonly key: "full";
19
+ readonly title: "前端 + 后端";
20
+ readonly desc: "完整业务模块脚手架(.vome:含 server 与 web),本地开发打包后发布。";
21
+ readonly repo: "vome-plugin-full";
22
+ readonly repoUrl: string;
23
+ readonly githubRepoUrl: string;
24
+ readonly downloadUrl: string;
25
+ readonly githubDownloadUrl: string;
26
+ };
27
+ readonly backend: {
28
+ readonly key: "backend";
29
+ readonly title: "纯后端";
30
+ readonly desc: "钩子 / 服务端插件脚手架(.vome:仅 server),适合上传、短信、支付等能力扩展。";
31
+ readonly repo: "vome-plugin-service";
32
+ readonly repoUrl: string;
33
+ readonly githubRepoUrl: string;
34
+ readonly downloadUrl: string;
35
+ readonly githubDownloadUrl: string;
36
+ };
37
+ readonly frontend: {
38
+ readonly key: "frontend";
39
+ readonly title: "纯前端";
40
+ readonly desc: "后台微应用脚手架(.vome:含 web/),以 wujie 挂载独立前端页面。";
41
+ readonly repo: "vome-plugin-front";
42
+ readonly repoUrl: string;
43
+ readonly githubRepoUrl: string;
44
+ readonly downloadUrl: string;
45
+ readonly githubDownloadUrl: string;
46
+ };
47
+ };
48
+ };
49
+ export type PluginDevConfig = typeof pluginDev;
50
+ export type PluginScaffoldKey = keyof typeof pluginDev.scaffolds;
@@ -15,6 +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, 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, 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';
19
+ export type { HostIdentity } from '../ext';
19
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';
20
21
  export { defineAuthMacro } from '../auth';
@@ -0,0 +1,15 @@
1
+ export type HostIdentity = {
2
+ /** SPKI DER base64(宿主公钥) */
3
+ publicKeyB64: string;
4
+ /** 席位占用键(由公钥派生,稳定) */
5
+ siteId: string;
6
+ /** 展示用:配置里的 db.host */
7
+ hostLabel: string;
8
+ };
9
+ /**
10
+ * 由 keys + 生产库 host 确定性派生宿主 Ed25519 身份。
11
+ * 同一服务器(同 keys+host)→ 同一席;换 host/keys → 新席。
12
+ */
13
+ export declare function deriveHostIdentity(): HostIdentity;
14
+ /** 进程内缓存:keys/db 不变则身份不变 */
15
+ export declare function getHostIdentity(): HostIdentity;
@@ -16,6 +16,9 @@ export { hashZipEntries, readZipManifest, readMarketSig, sealVomeBuffer, verifyS
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';
20
+ export { deriveHostIdentity, getHostIdentity, } from './host-identity';
21
+ export type { HostIdentity } from './host-identity';
19
22
  export { MARKET_SEAT_DEFAULTS, ensureSiteId, syncModuleSeat, syncAllModuleSeats, getModuleSeatStatus, listModuleSeatStatuses, isModuleSeatBlocked, assertModuleSeatActive, formatSeatDisplay, startMarketSeatHeartbeat, stopMarketSeatHeartbeat, bootstrapInstalledModules, } from './market-seat';
20
23
  export type { MarketSeatStatus, MarketSeatTicketPayload, MarketSeatTicket, } from '../../typings/ext/market-seat';
21
24
  export type { PluginManifest, PluginInfo, PluginPayload, PluginCheckResult, } from '../../typings/ext/plugin';
@@ -0,0 +1,13 @@
1
+ /**
2
+ * 官方席位 API 根:由 pluginDev.docsUrl 派生
3
+ * (https://vomekj.com → https://service.vomekj.com/app/pluginStore/seat)
4
+ * 禁止 .env / 宿主 market.seatApiBase 开关
5
+ */
6
+ export declare const DEFAULT_SEAT_API_BASE: string;
7
+ /**
8
+ * 是否强制市场验签 + 席位占用。
9
+ * 仅编译产物为 true;开发 watch 为 false。
10
+ */
11
+ export declare function isSeatEnforced(): boolean;
12
+ /** 与席位同一开关:开发不验签,编译验签 */
13
+ export declare function isMarketSigEnforced(): boolean;
@@ -1,10 +1,14 @@
1
1
  import type { MarketSeatStatus } from '../../typings/ext/market-seat';
2
2
  import { MARKET_SEAT_DEFAULTS } from '../../typings/ext/market-seat';
3
- /** 站点终身 ID(service 根目录 site.id,不绑 IP) */
3
+ /**
4
+ * 席位占用 ID:编译环境下由 keys+db.host 派生的宿主公钥指纹;
5
+ * 开发环境不占席,仅返回占位(不会上报)。
6
+ */
4
7
  export declare function ensureSiteId(): string;
5
8
  /**
6
9
  * 向市场登记/续期席位(core)。
7
- * 免费签发包跳过;付费需本地 license 证明买家身份。
10
+ * 开发(未 SEAT_ENFORCE):不占席,视为 unlimited。
11
+ * 编译产物:用宿主公钥指纹占席。
8
12
  */
9
13
  export declare function syncModuleSeat(moduleKey: string, opts?: {
10
14
  action?: 'occupy' | 'heartbeat' | 'release';
@@ -12,14 +16,11 @@ export declare function syncModuleSeat(moduleKey: string, opts?: {
12
16
  export declare function syncAllModuleSeats(action?: 'occupy' | 'heartbeat'): Promise<void>;
13
17
  export declare function getModuleSeatStatus(moduleKey: string): MarketSeatStatus | null;
14
18
  export declare function listModuleSeatStatuses(): Record<string, MarketSeatStatus>;
15
- /** 超席则禁止使用(路由/钩子调用前检查) */
16
19
  export declare function isModuleSeatBlocked(moduleKey: string): boolean;
17
20
  /**
18
- * 插件调用前校验席位;距上次同步超过约 5 分钟则先联网刷新,
19
- * 以便市场端「卸载席位」能尽快生效。
21
+ * 插件调用前校验席位;开发环境直接放行。
20
22
  */
21
23
  export declare function assertModuleSeatActive(moduleKey: string): Promise<void>;
22
- /** UI:席位展示,unlimited → seats/used 为 null(前端显示 /) */
23
24
  export declare function formatSeatDisplay(st: MarketSeatStatus | null | undefined): {
24
25
  seatsLabel: string;
25
26
  usedLabel: string;
@@ -28,6 +29,8 @@ export declare function formatSeatDisplay(st: MarketSeatStatus | null | undefine
28
29
  };
29
30
  export declare function startMarketSeatHeartbeat(): void;
30
31
  export declare function stopMarketSeatHeartbeat(): void;
31
- /** 启动:加载模块 + 席位同步 + 12h 心跳(逻辑在 core) */
32
+ /** 启动:加载模块 +(编译环境)席位同步 */
32
33
  export declare function bootstrapInstalledModules(): Promise<void>;
33
34
  export { MARKET_SEAT_DEFAULTS };
35
+ export { deriveHostIdentity } from './host-identity';
36
+ export { isSeatEnforced, isMarketSigEnforced } from './market-runtime';
@@ -4,7 +4,8 @@
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, 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, 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';
8
+ export type { HostIdentity } from '../core';
8
9
  export { buildExcelBuffer, buildImportTemplateBuffer, parseExcelBuffer, excelFilename, excelResponseHeaders, IMPORT_SKIP_FIELDS, isImportSkipField, } from '../shared/excel';
9
10
  export type { ExcelColumn, ExcelFormatCell } from '../shared/excel';
10
11
  export type { ApiFail, ApiResult, ApiSuccess, ClassToken, ContextData, ControllerCrudOptions, ControllerMeta, ControllerRouteMeta, ControllerSide, CrudApi, CrudBeforeFn, CrudRegistrar, CrudUpsertMode, CrudModifyType, CrudWriteOptions, CrudTrashQueryOptions, CrudDeleteOptions, PageQuery, PagePagination, PageResult, PluginManifest, PluginInfo, PluginPayload, PluginCheckResult, ModuleRouteDef, ModuleMenuDef, ModuleManifest, ModuleHandlerCtx, ModuleHandler, ModuleInstalled, MarketPricing, MarketSigPayload, MarketLicensePayload, MarketLicenseFile, InstallGateKind, InstallGateResult, AssertModuleInstallOptions, InstallModuleOptions, InstallModuleResult, MarketSeatStatus, MarketSeatTicketPayload, MarketSeatTicket, EpsApiItem, EpsColumn, EpsEntity, EpsModuleMap, HttpMethod, InjectionToken, InjectMeta, InsertParamFn, ProvideOptions, QueryExtendFn, QueryExtendQb, QueryFieldRef, QueryJoin, QueryJoinType, QueryOp, QueryOpCtx, QueryWhereFn, QueryWhereResult, ResCode, RouteMiddleware, RouteParamMeta, RouteParamSource, ScanOptions, } from '../core';
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "vome-core",
3
- "version": "0.0.59",
3
+ "version": "0.0.61",
4
4
  "description": "Vome framework — shared + Bun/Elysia server + Vue admin",
5
5
  "license": "MIT",
6
6
  "type": "module",