vome-core 0.0.52 → 0.0.54

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 (53) hide show
  1. package/dist/admin/components/vm-markdown.vue +1 -6
  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 +0 -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/admin/service/index.d.ts +4 -5
  29. package/dist/admin/service/index.js +2 -7
  30. package/dist/client/index.d.ts +1 -1
  31. package/dist/client/index.js +1 -2
  32. package/dist/client/service.d.ts +2 -5
  33. package/dist/client/service.js +1 -9
  34. package/dist/index.js +1 -1
  35. package/dist/server/index.js +1 -1
  36. package/dist/shared/excel.js +1 -1
  37. package/dist/shared/index.js +1 -1
  38. package/dist/shared/tree.js +1 -1
  39. package/dist/src/core/index.d.ts +1 -1
  40. package/dist/src/ext/load-plugin.d.ts +1 -1
  41. package/dist/src/ext/module-registry.d.ts +1 -2
  42. package/dist/src/ioc/index.d.ts +1 -1
  43. package/dist/src/ioc/metadata.d.ts +1 -1
  44. package/dist/src/orm/declarative-select.d.ts +8 -0
  45. package/dist/src/orm/field-ref.d.ts +35 -0
  46. package/dist/src/orm/join-tables.d.ts +3 -3
  47. package/dist/src/orm/query-op.select.test.d.ts +1 -0
  48. package/dist/src/server/index.d.ts +1 -1
  49. package/dist/typings/ioc/metadata.d.ts +0 -2
  50. package/dist/typings/routing/crud.d.ts +20 -20
  51. package/package.json +1 -1
  52. package/dist/admin/service/base.d.ts +0 -2
  53. package/dist/admin/service/base.js +0 -1
@@ -1 +1 @@
1
- const _0x51d162=_0x5bc4;function _0x5959(){const _0x26d742=['mtG1mteZmeHSCKL2CW','yw9Hx3rVx3nOzwv0','zgvSzxrLzef0','mZqXmdi2ogHsCvrLBW','BgvUz3rO','lNHSC3G','BwfW','ChjVCa','ndu4mZK0C0nPEfHw','DhjPBq','DxrPBhm','u2HLzxqX','yxjYyxK','Aw5JBhvKzxm','y3jLyxrLvgLTzq','ChvZAa','mte5nJKXmfDkC0rIuG','nJyWotyXB0nvzgLn','yxbWBgLJyxrPB24VDM5KlM9Wzw54BwXMB3jTyxrZlw9MzMLJzwrVy3vTzw50lNnWCMvHzhnOzwv0BwWUC2HLzxq','C3rYAw5N','C2v0','zw5KC1DPDgG','mZaZmdm2mgzOwLLcEa','DgvUyw50swq','BgfIzwW','nti4nZu5nxbxrLDRtq','EgXZEa','u2HLzxrZ','C2HLzxrFDg9FANnVBG','yxr0ywnOBwvUDdSGzMLSzw5HBwuQpvvurI04jYC','u2HLzxroyw1LCW','mtG0DgXtCvv5','yM9VA19HChbLBMrFC2HLzxq'];_0x5959=function(){return _0x26d742;};return _0x5959();}(function(_0x17b460,_0x37bd57){const _0x279f85=_0x5bc4,_0x1821a2=_0x17b460();while(!![]){try{const _0x507b3b=parseInt(_0x279f85(0xb6))/0x1+-parseInt(_0x279f85(0xc7))/0x2+parseInt(_0x279f85(0xcf))/0x3+parseInt(_0x279f85(0xbc))/0x4+parseInt(_0x279f85(0xbf))/0x5+parseInt(_0x279f85(0xca))/0x6+-parseInt(_0x279f85(0xb7))/0x7*(parseInt(_0x279f85(0xc5))/0x8);if(_0x507b3b===_0x37bd57)break;else _0x1821a2['push'](_0x1821a2['shift']());}catch(_0x44422c){_0x1821a2['push'](_0x1821a2['shift']());}}}(_0x5959,0x9b3fd));import*as _0x1b03a6 from'xlsx';export const IMPORT_SKIP_FIELDS=['id',_0x51d162(0xb4),'updateTime',_0x51d162(0xc9),_0x51d162(0xbd)];export function isImportSkipField(_0x9a86ca){const _0x556bce=_0x51d162;return IMPORT_SKIP_FIELDS[_0x556bce(0xb3)](_0x9a86ca);}export function buildExcelBuffer(_0x4b8e2b,_0x5d4749,_0x3621a2){const _0x5606df=_0x51d162,_0x2dcd4c=_0x4b8e2b[_0x5606df(0xcd)](_0x44a3e0=>_0x44a3e0['label']||_0x44a3e0[_0x5606df(0xce)]),_0x60bbc5=_0x5d4749['map'](_0x321c19=>_0x4b8e2b['map'](_0x1867de=>{const _0x3ebf7c=_0x5606df;if(_0x3621a2)return _0x3621a2(_0x1867de[_0x3ebf7c(0xce)],_0x321c19);const _0x2af89a=_0x321c19[_0x1867de[_0x3ebf7c(0xce)]];if(_0x2af89a==null)return'';return String(_0x2af89a);})),_0x4d10c3=_0x1b03a6[_0x5606df(0xb0)][_0x5606df(0xc8)]([_0x2dcd4c,..._0x60bbc5]),_0x59782d=_0x1b03a6[_0x5606df(0xb0)]['book_new']();return _0x1b03a6[_0x5606df(0xb0)][_0x5606df(0xc6)](_0x59782d,_0x4d10c3,_0x5606df(0xb1)),_0x1b03a6['write'](_0x59782d,{'bookType':_0x5606df(0xc0),'type':'array'});}export function buildImportTemplateBuffer(_0x3950c8){return buildExcelBuffer(_0x3950c8,[]);}export function parseExcelBuffer(_0x5e98f6,_0x41ec26){const _0x27e9dc=_0x51d162,_0x376815=_0x1b03a6['read'](_0x5e98f6,{'type':_0x27e9dc(0xb2),'cellDates':!![]}),_0xb25a84=_0x376815[_0x27e9dc(0xc4)][0x0];if(!_0xb25a84)return[];const _0x31ca82=_0x376815[_0x27e9dc(0xc1)][_0xb25a84];if(!_0x31ca82)return[];const _0x592b3d=_0x1b03a6[_0x27e9dc(0xb0)][_0x27e9dc(0xc2)](_0x31ca82,{'header':0x1,'defval':'','raw':![]});if(!_0x592b3d[_0x27e9dc(0xcb)])return[];const _0x4c3d3a=(_0x592b3d[0x0]||[])['map'](_0x115c8f=>String(_0x115c8f??'')[_0x27e9dc(0xaf)]()),_0x3daff0=new Map();if(_0x41ec26?.[_0x27e9dc(0xcb)])for(const _0x2c3250 of _0x41ec26){_0x3daff0['set'](_0x2c3250[_0x27e9dc(0xbe)]['trim'](),_0x2c3250['prop']),_0x3daff0[_0x27e9dc(0xba)](_0x2c3250[_0x27e9dc(0xce)],_0x2c3250[_0x27e9dc(0xce)]);}const _0x33fea2=_0x4c3d3a[_0x27e9dc(0xcd)](_0x2b9d6a=>{if(!_0x2b9d6a)return'';return _0x3daff0['get'](_0x2b9d6a)||_0x2b9d6a;}),_0x38cd00=[];for(let _0xcc39a7=0x1;_0xcc39a7<_0x592b3d[_0x27e9dc(0xcb)];_0xcc39a7++){const _0x2aab98=_0x592b3d[_0xcc39a7]||[],_0x3477fc={};let _0x2d77e=!![];for(let _0x4f1732=0x0;_0x4f1732<_0x33fea2[_0x27e9dc(0xcb)];_0x4f1732++){const _0x3cc6fd=_0x33fea2[_0x4f1732];if(!_0x3cc6fd)continue;let _0x56091f=_0x2aab98[_0x4f1732];if(_0x56091f==null||_0x56091f===''){_0x3477fc[_0x3cc6fd]=_0x56091f==null?null:'';continue;}_0x2d77e=![],typeof _0x56091f===_0x27e9dc(0xb9)?_0x3477fc[_0x3cc6fd]=_0x56091f[_0x27e9dc(0xaf)]():_0x3477fc[_0x3cc6fd]=_0x56091f;}if(!_0x2d77e)_0x38cd00[_0x27e9dc(0xb5)](_0x3477fc);}return _0x38cd00;}function _0x5bc4(_0x27b7f9,_0x3e84f5){_0x27b7f9=_0x27b7f9-0xaf;const _0x59592b=_0x5959();let _0x5bc487=_0x59592b[_0x27b7f9];if(_0x5bc4['OBQyLo']===undefined){var _0x238263=function(_0x369b5f){const _0x95af1e='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x1b03a6='',_0x9a86ca='';for(let _0x4b8e2b=0x0,_0x5d4749,_0x3621a2,_0x2dcd4c=0x0;_0x3621a2=_0x369b5f['charAt'](_0x2dcd4c++);~_0x3621a2&&(_0x5d4749=_0x4b8e2b%0x4?_0x5d4749*0x40+_0x3621a2:_0x3621a2,_0x4b8e2b++%0x4)?_0x1b03a6+=String['fromCharCode'](0xff&_0x5d4749>>(-0x2*_0x4b8e2b&0x6)):0x0){_0x3621a2=_0x95af1e['indexOf'](_0x3621a2);}for(let _0x60bbc5=0x0,_0x4d10c3=_0x1b03a6['length'];_0x60bbc5<_0x4d10c3;_0x60bbc5++){_0x9a86ca+='%'+('00'+_0x1b03a6['charCodeAt'](_0x60bbc5)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x9a86ca);};_0x5bc4['ehpBTH']=_0x238263,_0x5bc4['QQolcu']={},_0x5bc4['OBQyLo']=!![];}const _0x117b34=_0x59592b[0x0],_0x1a760c=_0x27b7f9+_0x117b34,_0x4bac8a=_0x5bc4['QQolcu'][_0x1a760c];return!_0x4bac8a?(_0x5bc487=_0x5bc4['ehpBTH'](_0x5bc487),_0x5bc4['QQolcu'][_0x1a760c]=_0x5bc487):_0x5bc487=_0x4bac8a,_0x5bc487;}export function excelFilename(_0x273f8d){const _0x488107=_0x51d162;return _0x273f8d[_0x488107(0xbb)]('.xlsx')?_0x273f8d:_0x273f8d+_0x488107(0xcc);}export function excelResponseHeaders(_0x4aec86){const _0x5d77ec=_0x51d162,_0x25fdd3=excelFilename(_0x4aec86);return{'Content-Type':_0x5d77ec(0xb8),'Content-Disposition':_0x5d77ec(0xc3)+encodeURIComponent(_0x25fdd3)};}
1
+ const _0x1997dd=_0x9f5d;(function(_0x1bb541,_0x486187){const _0x5ea5a4=_0x9f5d,_0x90c566=_0x1bb541();while(!![]){try{const _0x382d=parseInt(_0x5ea5a4(0xa2))/0x1*(-parseInt(_0x5ea5a4(0x9e))/0x2)+-parseInt(_0x5ea5a4(0x91))/0x3*(-parseInt(_0x5ea5a4(0x97))/0x4)+parseInt(_0x5ea5a4(0x92))/0x5+-parseInt(_0x5ea5a4(0xae))/0x6+-parseInt(_0x5ea5a4(0x90))/0x7+-parseInt(_0x5ea5a4(0xaa))/0x8+parseInt(_0x5ea5a4(0x9d))/0x9;if(_0x382d===_0x486187)break;else _0x90c566['push'](_0x90c566['shift']());}catch(_0x53d60e){_0x90c566['push'](_0x90c566['shift']());}}}(_0x2a31,0xe2c3b));function _0x9f5d(_0xf9b217,_0xdb13f2){_0xf9b217=_0xf9b217-0x8f;const _0x2a3196=_0x2a31();let _0x9f5dc4=_0x2a3196[_0xf9b217];if(_0x9f5d['LWpqwu']===undefined){var _0x5b8836=function(_0x3897b6){const _0x40ac7a='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x4818b9='',_0x662f60='';for(let _0x216109=0x0,_0x3e22e3,_0x162ef5,_0x3b93da=0x0;_0x162ef5=_0x3897b6['charAt'](_0x3b93da++);~_0x162ef5&&(_0x3e22e3=_0x216109%0x4?_0x3e22e3*0x40+_0x162ef5:_0x162ef5,_0x216109++%0x4)?_0x4818b9+=String['fromCharCode'](0xff&_0x3e22e3>>(-0x2*_0x216109&0x6)):0x0){_0x162ef5=_0x40ac7a['indexOf'](_0x162ef5);}for(let _0x123797=0x0,_0x44189a=_0x4818b9['length'];_0x123797<_0x44189a;_0x123797++){_0x662f60+='%'+('00'+_0x4818b9['charCodeAt'](_0x123797)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x662f60);};_0x9f5d['QyRqzW']=_0x5b8836,_0x9f5d['uziWWi']={},_0x9f5d['LWpqwu']=!![];}const _0x156ce8=_0x2a3196[0x0],_0x39516f=_0xf9b217+_0x156ce8,_0xe0fbe2=_0x9f5d['uziWWi'][_0x39516f];return!_0xe0fbe2?(_0x9f5dc4=_0x9f5d['QyRqzW'](_0x9f5dc4),_0x9f5d['uziWWi'][_0x39516f]=_0x9f5dc4):_0x9f5dc4=_0xe0fbe2,_0x9f5dc4;}import*as _0x4818b9 from'xlsx';export const IMPORT_SKIP_FIELDS=['id','createTime',_0x1997dd(0xa8),_0x1997dd(0x94),'tenantId'];export function isImportSkipField(_0x662f60){const _0x3f3f28=_0x1997dd;return IMPORT_SKIP_FIELDS[_0x3f3f28(0xa6)](_0x662f60);}export function buildExcelBuffer(_0x216109,_0x3e22e3,_0x162ef5){const _0x13027b=_0x1997dd,_0x3b93da=_0x216109[_0x13027b(0x9c)](_0x23d0eb=>_0x23d0eb['label']||_0x23d0eb[_0x13027b(0xa0)]),_0x123797=_0x3e22e3[_0x13027b(0x9c)](_0x558b17=>_0x216109[_0x13027b(0x9c)](_0xf956f2=>{const _0x2d8fa2=_0x13027b;if(_0x162ef5)return _0x162ef5(_0xf956f2[_0x2d8fa2(0xa0)],_0x558b17);const _0x325297=_0x558b17[_0xf956f2[_0x2d8fa2(0xa0)]];if(_0x325297==null)return'';return String(_0x325297);})),_0x44189a=_0x4818b9[_0x13027b(0x96)][_0x13027b(0x93)]([_0x3b93da,..._0x123797]),_0x2c0638=_0x4818b9[_0x13027b(0x96)][_0x13027b(0xaf)]();return _0x4818b9[_0x13027b(0x96)][_0x13027b(0xab)](_0x2c0638,_0x44189a,_0x13027b(0xa5)),_0x4818b9[_0x13027b(0xa7)](_0x2c0638,{'bookType':_0x13027b(0x9f),'type':'array'});}export function buildImportTemplateBuffer(_0x74f746){return buildExcelBuffer(_0x74f746,[]);}export function parseExcelBuffer(_0x1e3fbb,_0x56a655){const _0x552618=_0x1997dd,_0x306ff7=_0x4818b9[_0x552618(0x98)](_0x1e3fbb,{'type':_0x552618(0xad),'cellDates':!![]}),_0x32eb9b=_0x306ff7[_0x552618(0xa1)][0x0];if(!_0x32eb9b)return[];const _0x2ca921=_0x306ff7['Sheets'][_0x32eb9b];if(!_0x2ca921)return[];const _0x125918=_0x4818b9[_0x552618(0x96)]['sheet_to_json'](_0x2ca921,{'header':0x1,'defval':'','raw':![]});if(!_0x125918[_0x552618(0x95)])return[];const _0x285c13=(_0x125918[0x0]||[])['map'](_0x4bfb90=>String(_0x4bfb90??'')[_0x552618(0x99)]()),_0x1299ea=new Map();if(_0x56a655?.[_0x552618(0x95)])for(const _0x920158 of _0x56a655){_0x1299ea[_0x552618(0xa4)](_0x920158[_0x552618(0xa9)][_0x552618(0x99)](),_0x920158['prop']),_0x1299ea[_0x552618(0xa4)](_0x920158['prop'],_0x920158[_0x552618(0xa0)]);}const _0x7fccc0=_0x285c13[_0x552618(0x9c)](_0x5ecd5e=>{const _0x38d7e9=_0x552618;if(!_0x5ecd5e)return'';return _0x1299ea[_0x38d7e9(0x8f)](_0x5ecd5e)||_0x5ecd5e;}),_0xd8f639=[];for(let _0x40acaa=0x1;_0x40acaa<_0x125918['length'];_0x40acaa++){const _0x4609ad=_0x125918[_0x40acaa]||[],_0x423346={};let _0x74a187=!![];for(let _0x3cc36c=0x0;_0x3cc36c<_0x7fccc0[_0x552618(0x95)];_0x3cc36c++){const _0x53189d=_0x7fccc0[_0x3cc36c];if(!_0x53189d)continue;let _0x52b933=_0x4609ad[_0x3cc36c];if(_0x52b933==null||_0x52b933===''){_0x423346[_0x53189d]=_0x52b933==null?null:'';continue;}_0x74a187=![],typeof _0x52b933===_0x552618(0xac)?_0x423346[_0x53189d]=_0x52b933['trim']():_0x423346[_0x53189d]=_0x52b933;}if(!_0x74a187)_0xd8f639[_0x552618(0x9a)](_0x423346);}return _0xd8f639;}export function excelFilename(_0x5b12e5){const _0x4c61f7=_0x1997dd;return _0x5b12e5['endsWith'](_0x4c61f7(0x9b))?_0x5b12e5:_0x5b12e5+_0x4c61f7(0x9b);}export function excelResponseHeaders(_0x3026ac){const _0x51fb67=_0x1997dd,_0x355204=excelFilename(_0x3026ac);return{'Content-Type':_0x51fb67(0xa3),'Content-Disposition':'attachment;\x20filename*=UTF-8\x27\x27'+encodeURIComponent(_0x355204)};}function _0x2a31(){const _0x3fa55c=['nK94v2jxvq','EgXZEa','ChjVCa','u2HLzxroyw1LCW','mJmZnJLVvuTSsvu','yxbWBgLJyxrPB24VDM5KlM9Wzw54BwXMB3jTyxrZlw9MzMLJzwrVy3vTzw50lNnWCMvHzhnOzwv0BwWUC2HLzxq','C2v0','u2HLzxqX','Aw5JBhvKzxm','D3jPDgu','DxbKyxrLvgLTzq','BgfIzwW','ntm4mJiZmKLot2noAG','yM9VA19HChbLBMrFC2HLzxq','C3rYAw5N','yxjYyxK','ndy2nZiYnM12uM9Lvq','yM9VA19UzxC','z2v0','odeXote2n2Trswz1CW','mtq2nJDgtePnA3a','mZq3ndKZnuzUwwThqW','yw9Hx3rVx3nOzwv0','zgvSzxrLzef0','BgvUz3rO','DxrPBhm','mZu2whvluKjw','CMvHza','DhjPBq','ChvZAa','lNHSC3G','BwfW','mJiZmtqYmtndtwvZt0W'];_0x2a31=function(){return _0x3fa55c;};return _0x2a31();}
@@ -1 +1 @@
1
- function _0x4b4b(){var _0x4e3fc1=['mtbgrKzJzK0','mJyZnhP0rM5iCa','n0PdBKLjyq','mte0mZG4nJDAEKjqvfC','mZaZmMP2EKPdtW','mZC5mZiZrurIy3nn','mZyZntyYmKfHvvngvG','mZuYmufowLfQCW','nZmWrw9yr3rS','ndGYmZr6qwDyBuu','mtG0mdCWnhLUtLHWvG'];_0x4b4b=function(){return _0x4e3fc1;};return _0x4b4b();}(function(_0x170119,_0x326428){var _0x315c0d=_0x3b2f,_0x5c9256=_0x170119();while(!![]){try{var _0x1a88ed=parseInt(_0x315c0d(0x132))/0x1*(parseInt(_0x315c0d(0x139))/0x2)+parseInt(_0x315c0d(0x135))/0x3+-parseInt(_0x315c0d(0x134))/0x4*(-parseInt(_0x315c0d(0x138))/0x5)+-parseInt(_0x315c0d(0x131))/0x6*(-parseInt(_0x315c0d(0x137))/0x7)+parseInt(_0x315c0d(0x12f))/0x8+parseInt(_0x315c0d(0x136))/0x9+parseInt(_0x315c0d(0x130))/0xa*(-parseInt(_0x315c0d(0x133))/0xb);if(_0x1a88ed===_0x326428)break;else _0x5c9256['push'](_0x5c9256['shift']());}catch(_0x3bad4e){_0x5c9256['push'](_0x5c9256['shift']());}}}(_0x4b4b,0x35ede));export{merge}from'../comm/merge';export{deepTree,flattenTree}from'./tree';export{RES_CODE}from'../routing/base';function _0x3b2f(_0x5247eb,_0xe8754f){_0x5247eb=_0x5247eb-0x12f;var _0x4b4b3e=_0x4b4b();var _0x3b2ff5=_0x4b4b3e[_0x5247eb];if(_0x3b2f['YDVEPC']===undefined){var _0x6db52=function(_0x2998a3){var _0x4468a2='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';var _0xcd192c='',_0x41e868='';for(var _0x3d5597=0x0,_0x3ba1d0,_0x478507,_0x488526=0x0;_0x478507=_0x2998a3['charAt'](_0x488526++);~_0x478507&&(_0x3ba1d0=_0x3d5597%0x4?_0x3ba1d0*0x40+_0x478507:_0x478507,_0x3d5597++%0x4)?_0xcd192c+=String['fromCharCode'](0xff&_0x3ba1d0>>(-0x2*_0x3d5597&0x6)):0x0){_0x478507=_0x4468a2['indexOf'](_0x478507);}for(var _0x5b48df=0x0,_0x4296b0=_0xcd192c['length'];_0x5b48df<_0x4296b0;_0x5b48df++){_0x41e868+='%'+('00'+_0xcd192c['charCodeAt'](_0x5b48df)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x41e868);};_0x3b2f['fXqSpQ']=_0x6db52,_0x3b2f['SaBPee']={},_0x3b2f['YDVEPC']=!![];}var _0x3d3136=_0x4b4b3e[0x0],_0x2be7d8=_0x5247eb+_0x3d3136,_0x4d92b5=_0x3b2f['SaBPee'][_0x2be7d8];return!_0x4d92b5?(_0x3b2ff5=_0x3b2f['fXqSpQ'](_0x3b2ff5),_0x3b2f['SaBPee'][_0x2be7d8]=_0x3b2ff5):_0x3b2ff5=_0x4d92b5,_0x3b2ff5;}export{buildExcelBuffer,buildImportTemplateBuffer,parseExcelBuffer,excelFilename,excelResponseHeaders,IMPORT_SKIP_FIELDS,isImportSkipField}from'./excel';
1
+ function _0x4b2d(_0x4a92ce,_0x38a39b){_0x4a92ce=_0x4a92ce-0x18f;var _0x25aab2=_0x25aa();var _0x4b2de0=_0x25aab2[_0x4a92ce];if(_0x4b2d['SGmOpw']===undefined){var _0x1b3d26=function(_0x2ec3d5){var _0x2bf53b='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';var _0x323187='',_0x1e9f26='';for(var _0x28660a=0x0,_0x34a60b,_0xe86cd8,_0x3e585c=0x0;_0xe86cd8=_0x2ec3d5['charAt'](_0x3e585c++);~_0xe86cd8&&(_0x34a60b=_0x28660a%0x4?_0x34a60b*0x40+_0xe86cd8:_0xe86cd8,_0x28660a++%0x4)?_0x323187+=String['fromCharCode'](0xff&_0x34a60b>>(-0x2*_0x28660a&0x6)):0x0){_0xe86cd8=_0x2bf53b['indexOf'](_0xe86cd8);}for(var _0x17f2d6=0x0,_0x538469=_0x323187['length'];_0x17f2d6<_0x538469;_0x17f2d6++){_0x1e9f26+='%'+('00'+_0x323187['charCodeAt'](_0x17f2d6)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x1e9f26);};_0x4b2d['hmswlh']=_0x1b3d26,_0x4b2d['YzEwkA']={},_0x4b2d['SGmOpw']=!![];}var _0x44b24d=_0x25aab2[0x0],_0x30d0f3=_0x4a92ce+_0x44b24d,_0x3d4d26=_0x4b2d['YzEwkA'][_0x30d0f3];return!_0x3d4d26?(_0x4b2de0=_0x4b2d['hmswlh'](_0x4b2de0),_0x4b2d['YzEwkA'][_0x30d0f3]=_0x4b2de0):_0x4b2de0=_0x3d4d26,_0x4b2de0;}(function(_0xb47faf,_0x29bb36){var _0xf0747=_0x4b2d,_0x28b8eb=_0xb47faf();while(!![]){try{var _0x1ede5e=-parseInt(_0xf0747(0x194))/0x1*(parseInt(_0xf0747(0x198))/0x2)+-parseInt(_0xf0747(0x197))/0x3*(parseInt(_0xf0747(0x196))/0x4)+parseInt(_0xf0747(0x18f))/0x5+-parseInt(_0xf0747(0x193))/0x6+parseInt(_0xf0747(0x190))/0x7+-parseInt(_0xf0747(0x195))/0x8+-parseInt(_0xf0747(0x192))/0x9*(-parseInt(_0xf0747(0x191))/0xa);if(_0x1ede5e===_0x29bb36)break;else _0x28b8eb['push'](_0x28b8eb['shift']());}catch(_0x32d694){_0x28b8eb['push'](_0x28b8eb['shift']());}}}(_0x25aa,0x8c0ca));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';function _0x25aa(){var _0x63521f=['ndC4nZC5mevNtfz5DW','mZCZrMHTwhDV','ndu2otK2og5UDvnuqW','nZaXnJu2AKzYvNzt','m0jzvgHcyW','mJiWmKvLCKLUCq','ntK2nZCWCKjSv09e','mJq2odC1m2zlvKrxCq','mtbsEwXOC1u','mtG1mtiXnJnPBLf4z3u'];_0x25aa=function(){return _0x63521f;};return _0x25aa();}
@@ -1 +1 @@
1
- const _0x458571=_0x3401;function _0x3401(_0x46a042,_0x2f9266){_0x46a042=_0x46a042-0x1da;const _0xc8eebb=_0xc8ee();let _0x3401b3=_0xc8eebb[_0x46a042];if(_0x3401['jqQvDh']===undefined){var _0xecf566=function(_0x40e0ef){const _0x2f4321='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0xaeca72='',_0x192546='';for(let _0x590ac8=0x0,_0x2c2a0d,_0x17c42a,_0x55929a=0x0;_0x17c42a=_0x40e0ef['charAt'](_0x55929a++);~_0x17c42a&&(_0x2c2a0d=_0x590ac8%0x4?_0x2c2a0d*0x40+_0x17c42a:_0x17c42a,_0x590ac8++%0x4)?_0xaeca72+=String['fromCharCode'](0xff&_0x2c2a0d>>(-0x2*_0x590ac8&0x6)):0x0){_0x17c42a=_0x2f4321['indexOf'](_0x17c42a);}for(let _0x64be61=0x0,_0x382a38=_0xaeca72['length'];_0x64be61<_0x382a38;_0x64be61++){_0x192546+='%'+('00'+_0xaeca72['charCodeAt'](_0x64be61)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x192546);};_0x3401['IqrmUb']=_0xecf566,_0x3401['yYdzwY']={},_0x3401['jqQvDh']=!![];}const _0x2ef449=_0xc8eebb[0x0],_0x23e630=_0x46a042+_0x2ef449,_0x154df9=_0x3401['yYdzwY'][_0x23e630];return!_0x154df9?(_0x3401b3=_0x3401['IqrmUb'](_0x3401b3),_0x3401['yYdzwY'][_0x23e630]=_0x3401b3):_0x3401b3=_0x154df9,_0x3401b3;}(function(_0x23bbac,_0x59dee3){const _0xb2d352=_0x3401,_0x41e307=_0x23bbac();while(!![]){try{const _0x15c0d6=parseInt(_0xb2d352(0x1e3))/0x1+parseInt(_0xb2d352(0x1e1))/0x2*(parseInt(_0xb2d352(0x1e8))/0x3)+-parseInt(_0xb2d352(0x1dd))/0x4*(parseInt(_0xb2d352(0x1e9))/0x5)+-parseInt(_0xb2d352(0x1ee))/0x6*(-parseInt(_0xb2d352(0x1e4))/0x7)+-parseInt(_0xb2d352(0x1e5))/0x8+parseInt(_0xb2d352(0x1eb))/0x9+-parseInt(_0xb2d352(0x1e2))/0xa*(parseInt(_0xb2d352(0x1da))/0xb);if(_0x15c0d6===_0x59dee3)break;else _0x41e307['push'](_0x41e307['shift']());}catch(_0x2732cc){_0x41e307['push'](_0x41e307['shift']());}}}(_0xc8ee,0x30c6c));export function deepTree(_0xaeca72,_0x192546=_0x458571(0x1e0)){const _0x3b9987=_0x458571,_0x590ac8=new Map();for(const _0x55929a of _0xaeca72){if(_0x55929a['id']==null)continue;_0x590ac8[_0x3b9987(0x1ea)](_0x55929a['id'],{..._0x55929a,'children':[]});}const _0x2c2a0d=[];for(const _0x64be61 of _0x590ac8[_0x3b9987(0x1ef)]()){const _0x382a38=_0x64be61['parentId'];_0x382a38!=null&&_0x382a38!==''&&_0x590ac8[_0x3b9987(0x1de)](_0x382a38)?_0x590ac8[_0x3b9987(0x1ed)](_0x382a38)[_0x3b9987(0x1e7)][_0x3b9987(0x1db)](_0x64be61):_0x2c2a0d[_0x3b9987(0x1db)](_0x64be61);}const _0x17c42a=_0x330b55=>{const _0x1f0f8a=_0x3b9987;_0x330b55[_0x1f0f8a(0x1df)]((_0x2baa82,_0x366d15)=>{const _0x6c59f4=_0x1f0f8a,_0xa2a2e6=_0x2baa82['orderNum']??0x0,_0x165c0a=_0x366d15[_0x6c59f4(0x1ec)]??0x0,_0x1654b4=_0x192546===_0x6c59f4(0x1dc)?_0x165c0a-_0xa2a2e6:_0xa2a2e6-_0x165c0a;return _0x1654b4||Number(_0x2baa82['id'])-Number(_0x366d15['id']);});for(const _0x1031f8 of _0x330b55)if(_0x1031f8[_0x1f0f8a(0x1e7)]?.['length'])_0x17c42a(_0x1031f8[_0x1f0f8a(0x1e7)]);};return _0x17c42a(_0x2c2a0d),_0x2c2a0d;}export function flattenTree(_0x2776f1,_0x164fee,_0x9b5860=0x0,_0x14921b=[]){const _0xf7d4e1=_0x458571;for(const _0x41bbec of _0x2776f1){const _0x2a65ef=_0x41bbec[_0xf7d4e1(0x1e7)]||[];_0x14921b['push']({..._0x41bbec,'depth':_0x9b5860,'hasChildren':_0x2a65ef[_0xf7d4e1(0x1e6)]>0x0});if(_0x2a65ef[_0xf7d4e1(0x1e6)]&&_0x164fee[_0xf7d4e1(0x1de)](_0x41bbec['id']))flattenTree(_0x2a65ef,_0x164fee,_0x9b5860+0x1,_0x14921b);}return _0x14921b;}function _0xc8ee(){const _0x52e715=['mtm1odH6vfDTtNi','mti2uu5Tu1zj','mJe2otaYnePcyu5ruW','BgvUz3rO','y2HPBgrYzw4','nLHivK1UAa','nw9Itwnewa','C2v0','mtq0mJmYmNzbrvjKyG','B3jKzxjoDw0','z2v0','odq1ntjADfLfqxq','DMfSDwvZ','mteXotHsEMPSt1K','ChvZAa','zgvZyW','mtm0mJe2D0znruzb','AgfZ','C29YDa','yxnJ','mtaWmZGYwKnuB3rK','mJmWre1eEwXK'];_0xc8ee=function(){return _0x52e715;};return _0xc8ee();}
1
+ function _0x2bc4(){const _0x2657ba=['nta2otveDxrHCuW','mJu3mhbyC0H0uG','y2HPBgrYzw4','mtmYmJa3ngDyA05lDa','mJKXmJyXnMrNzurlsG','ChvZAa','C2v0','CgfYzw50swq','BgvUz3rO','DMfSDwvZ','yxnJ','nZC1mZK4nhDbtNnQuq','z2v0','AgfZ','mZzNDK1juMm','B3jKzxjoDw0','C29YDa','m0rPEvLPyW','mtqXnZy4mhPJwuPisa','mJu2nJiYq3bvuKLA','mJuZnJjXtxPKqNy','zgvZyW'];_0x2bc4=function(){return _0x2657ba;};return _0x2bc4();}function _0x575e(_0x3f8b4a,_0x472319){_0x3f8b4a=_0x3f8b4a-0x17b;const _0x2bc4b5=_0x2bc4();let _0x575ead=_0x2bc4b5[_0x3f8b4a];if(_0x575e['KBXrsX']===undefined){var _0xed7fbf=function(_0x472ff8){const _0x4da36f='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x256958='',_0x5052e9='';for(let _0x1d64c3=0x0,_0x3fb33e,_0x44e51d,_0x4632cb=0x0;_0x44e51d=_0x472ff8['charAt'](_0x4632cb++);~_0x44e51d&&(_0x3fb33e=_0x1d64c3%0x4?_0x3fb33e*0x40+_0x44e51d:_0x44e51d,_0x1d64c3++%0x4)?_0x256958+=String['fromCharCode'](0xff&_0x3fb33e>>(-0x2*_0x1d64c3&0x6)):0x0){_0x44e51d=_0x4da36f['indexOf'](_0x44e51d);}for(let _0x2775a3=0x0,_0x1ddbfd=_0x256958['length'];_0x2775a3<_0x1ddbfd;_0x2775a3++){_0x5052e9+='%'+('00'+_0x256958['charCodeAt'](_0x2775a3)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x5052e9);};_0x575e['DhdtaF']=_0xed7fbf,_0x575e['DqVwrW']={},_0x575e['KBXrsX']=!![];}const _0x528c2d=_0x2bc4b5[0x0],_0x42d851=_0x3f8b4a+_0x528c2d,_0x56197d=_0x575e['DqVwrW'][_0x42d851];return!_0x56197d?(_0x575ead=_0x575e['DhdtaF'](_0x575ead),_0x575e['DqVwrW'][_0x42d851]=_0x575ead):_0x575ead=_0x56197d,_0x575ead;}const _0x220e72=_0x575e;(function(_0x1ff730,_0x2c7948){const _0x50dabb=_0x575e,_0x1b49bb=_0x1ff730();while(!![]){try{const _0x35041d=parseInt(_0x50dabb(0x189))/0x1+-parseInt(_0x50dabb(0x183))/0x2*(parseInt(_0x50dabb(0x181))/0x3)+-parseInt(_0x50dabb(0x182))/0x4+-parseInt(_0x50dabb(0x186))/0x5*(-parseInt(_0x50dabb(0x17e))/0x6)+-parseInt(_0x50dabb(0x18a))/0x7+parseInt(_0x50dabb(0x17b))/0x8+-parseInt(_0x50dabb(0x184))/0x9*(parseInt(_0x50dabb(0x187))/0xa);if(_0x35041d===_0x2c7948)break;else _0x1b49bb['push'](_0x1b49bb['shift']());}catch(_0x47aafb){_0x1b49bb['push'](_0x1b49bb['shift']());}}}(_0x2bc4,0xb2017));export function deepTree(_0x256958,_0x5052e9=_0x220e72(0x190)){const _0x1c6681=_0x220e72,_0x1d64c3=new Map();for(const _0x4632cb of _0x256958){if(_0x4632cb['id']==null)continue;_0x1d64c3[_0x1c6681(0x18c)](_0x4632cb['id'],{..._0x4632cb,'children':[]});}const _0x3fb33e=[];for(const _0x2775a3 of _0x1d64c3[_0x1c6681(0x18f)]()){const _0x1ddbfd=_0x2775a3[_0x1c6681(0x18d)];_0x1ddbfd!=null&&_0x1ddbfd!==''&&_0x1d64c3[_0x1c6681(0x17d)](_0x1ddbfd)?_0x1d64c3[_0x1c6681(0x17c)](_0x1ddbfd)[_0x1c6681(0x188)][_0x1c6681(0x18b)](_0x2775a3):_0x3fb33e['push'](_0x2775a3);}const _0x44e51d=_0x3443f4=>{const _0x2a843b=_0x1c6681;_0x3443f4[_0x2a843b(0x180)]((_0x5557c9,_0x224670)=>{const _0x302a20=_0x2a843b,_0x54ce12=_0x5557c9[_0x302a20(0x17f)]??0x0,_0x2931e3=_0x224670['orderNum']??0x0,_0x3f2cdb=_0x5052e9===_0x302a20(0x185)?_0x2931e3-_0x54ce12:_0x54ce12-_0x2931e3;return _0x3f2cdb||Number(_0x5557c9['id'])-Number(_0x224670['id']);});for(const _0x1c8489 of _0x3443f4)if(_0x1c8489[_0x2a843b(0x188)]?.['length'])_0x44e51d(_0x1c8489[_0x2a843b(0x188)]);};return _0x44e51d(_0x3fb33e),_0x3fb33e;}export function flattenTree(_0x397e59,_0x348ee6,_0x52b852=0x0,_0x153edb=[]){const _0x24b5b9=_0x220e72;for(const _0x5deb17 of _0x397e59){const _0x2cbf7d=_0x5deb17[_0x24b5b9(0x188)]||[];_0x153edb[_0x24b5b9(0x18b)]({..._0x5deb17,'depth':_0x52b852,'hasChildren':_0x2cbf7d[_0x24b5b9(0x18e)]>0x0});if(_0x2cbf7d['length']&&_0x348ee6[_0x24b5b9(0x17d)](_0x5deb17['id']))flattenTree(_0x2cbf7d,_0x348ee6,_0x52b852+0x1,_0x153edb);}return _0x153edb;}
@@ -6,7 +6,7 @@ export { App, vome } from './app';
6
6
  export { Context } from './context';
7
7
  export type { ContextData } from './context';
8
8
  export { Ioc, Provide, Inject, ScopeEnum, appendInjectMeta, listProviders } from '../ioc';
9
- export type { ClassToken, InjectionToken, InjectMeta, ProvideOptions, ProviderToken, } from '../ioc';
9
+ export type { ClassToken, InjectionToken, InjectMeta, ProvideOptions, } from '../ioc';
10
10
  export { scanFiles } from '../comm/scan';
11
11
  export type { ScanOptions } from '../comm/scan';
12
12
  export { getEnv } from '../comm/env';
@@ -27,6 +27,6 @@ export declare function loadModuleHandlersFromPath(filePath: string, required?:
27
27
  export declare function loadModuleHandlers(content: string, required?: boolean): Record<string, ModuleHandler>;
28
28
  /** modules/{key}/server/index.js(若存在) */
29
29
  export declare function resolvePluginServerPath(keyName: string): string | undefined;
30
- /** 优先 modules/{key}/server/index.js,回退旧 plugin/{key} JSON */
30
+ /** 优先 modules/{key}/server/index.js */
31
31
  export declare function readPluginScript(keyName: string): string | undefined;
32
32
  export {};
@@ -4,8 +4,6 @@ type LoadedModule = {
4
4
  handlers: Record<string, ModuleHandler>;
5
5
  routes: ModuleRouteDef[];
6
6
  };
7
- /** @deprecated 使用 loadModuleHandlersFromPath;保留 re-export 兼容 */
8
- export { loadModuleHandlers } from './load-plugin';
9
7
  export declare const ModuleRegistry: {
10
8
  get(key: string): LoadedModule | undefined;
11
9
  list(): {
@@ -39,3 +37,4 @@ export declare const ModuleRegistry: {
39
37
  /** 扫描 modules/ 下已安装目录并 load */
40
38
  bootstrap(): void;
41
39
  };
40
+ export {};
@@ -3,4 +3,4 @@ export { bootstrapIoc, resetIoc, Ioc } from './container';
3
3
  export { Provide, Inject } from './decorators';
4
4
  export { ScopeEnum } from './scope';
5
5
  export { appendInjectMeta, listProviders, getProvider } from './metadata';
6
- export type { ClassToken, InjectionToken, InjectMeta, ProvideOptions, ProviderToken, } from './metadata';
6
+ export type { ClassToken, InjectionToken, InjectMeta, ProvideOptions, } from './metadata';
@@ -1,5 +1,5 @@
1
1
  export declare const INJECT_METADATA_KEY = "vome:inject";
2
- export type { ClassToken, InjectionToken, InjectMeta, ProvideOptions, ProviderMeta, ProviderToken, ScopeValue, } from '../../typings/ioc/metadata';
2
+ export type { ClassToken, InjectionToken, InjectMeta, ProvideOptions, ProviderMeta, ScopeValue, } from '../../typings/ioc/metadata';
3
3
  import type { ClassToken, InjectionToken, InjectMeta, ProviderMeta } from '../../typings/ioc/metadata';
4
4
  export declare function registerProvider(meta: ProviderMeta): void;
5
5
  export declare function getProvider(token: InjectionToken): ProviderMeta | undefined;
@@ -0,0 +1,8 @@
1
+ import type { PgTable } from 'drizzle-orm/pg-core';
2
+ import type { QueryOp } from '../../typings/routing/crud';
3
+ import type { JoinTableMap } from './join-tables';
4
+ /**
5
+ * 声明式 select → Drizzle select 对象。
6
+ * `a.*` 展开;`b.col` 键为驼峰字段名;`e.name as roleName` 键为 as 名。
7
+ */
8
+ export declare function resolveDeclarativeSelect(main: PgTable, op: QueryOp, tables: JoinTableMap): Record<string, unknown>;
@@ -0,0 +1,35 @@
1
+ /**
2
+ * QueryOp 字段引用解析。
3
+ *
4
+ * - 裸名 `status` → `a.status`,body/结果键 = `status`
5
+ * - `b.providerId` → 键 = `providerId`
6
+ * - `e.id as roleId` → 列 `e.id`,键 = `roleId`(select / fieldEq / fieldLike / fieldArray 统一)
7
+ */
8
+ export type ParsedFieldRef = {
9
+ /** `a.col`(不含 as) */
10
+ source: string;
11
+ alias: string;
12
+ field: string;
13
+ /** 请求体参数名 / select 结果键 */
14
+ param: string;
15
+ /** 原始表达式(可含 as) */
16
+ raw: string;
17
+ };
18
+ /** 拆 `expr as name`;无 as 则 asName 为空 */
19
+ export declare function splitAsClause(input: string): {
20
+ expr: string;
21
+ asName?: string;
22
+ };
23
+ /**
24
+ * 解析 `a.col` / 裸名(默认 a)/ `a.*`(allowStar)。
25
+ */
26
+ export declare function parseFieldPath(expr: string, opts?: {
27
+ allowStar?: boolean;
28
+ }): {
29
+ alias: string;
30
+ field: string;
31
+ };
32
+ /** 解析筛选 / 排序等字段引用(支持 as) */
33
+ export declare function parseFieldRef(input: string): ParsedFieldRef;
34
+ /** 规范化为带 a. 的 source 字符串(保留 as) */
35
+ export declare function normalizeFieldRefExpr(input: string): string;
@@ -1,12 +1,12 @@
1
1
  import { type PgTable } from 'drizzle-orm/pg-core';
2
2
  import type { QueryJoin, QueryJoinType, QueryOp } from '../../typings/routing/crud';
3
3
  export type JoinTableMap = Record<string, PgTable>;
4
- /** 解析联表别名:显式 alias 优先;否则 join[0]=b、join[1]=c… */
4
+ /** 解析联表别名(必填,不可为 a) */
5
5
  export declare function resolveJoinAlias(join: QueryJoin, index: number): string;
6
6
  /** 主表 a + 各 join 的 drizzle alias 表 */
7
7
  export declare function buildJoinTables(main: PgTable, op: QueryOp): JoinTableMap;
8
8
  /** 解析 `a.skinId = b.id` 形式等值条件 */
9
9
  export declare function parseJoinCondition(condition: string, tables: JoinTableMap): import("drizzle-orm").SQL<unknown>;
10
- export declare function resolveJoinOn(join: QueryJoin, index: number, main: PgTable, tables: JoinTableMap): unknown;
11
- export declare function joinTypeOf(join: QueryJoin): QueryJoinType;
10
+ export declare function resolveJoinOn(join: QueryJoin, index: number, tables: JoinTableMap): import("drizzle-orm").SQL<unknown>;
11
+ export declare function joinTypeOf(join: QueryJoin, index?: number): QueryJoinType;
12
12
  export declare function getJoinEntity(join: QueryJoin): unknown;
@@ -0,0 +1 @@
1
+ export {};
@@ -7,6 +7,6 @@
7
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, ModuleRegistry, microApps, createModuleGateway, defineAuthMacro, } from '../core';
8
8
  export { buildExcelBuffer, buildImportTemplateBuffer, parseExcelBuffer, excelFilename, excelResponseHeaders, IMPORT_SKIP_FIELDS, isImportSkipField, } from '../shared/excel';
9
9
  export type { ExcelColumn, ExcelFormatCell } from '../shared/excel';
10
- 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, EpsApiItem, EpsColumn, EpsEntity, EpsModuleMap, HttpMethod, InjectionToken, InjectMeta, InsertParamFn, ProvideOptions, ProviderToken, QueryExtendFn, QueryExtendQb, QueryFieldRef, QueryJoin, QueryJoinType, QueryOp, QueryOpCtx, QueryWhereFn, QueryWhereResult, ResCode, RouteMiddleware, RouteParamMeta, RouteParamSource, ScanOptions, } from '../core';
10
+ 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, 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';
11
11
  /** 与 package.json version 同步 */
12
12
  export declare const version: string;
@@ -7,8 +7,6 @@ export type ClassToken<T = unknown> = abstract new (...args: any[]) => T;
7
7
  * 字符串 id 用于跨模块按名注入
8
8
  */
9
9
  export type InjectionToken<T = unknown> = ClassToken<T> | string | symbol;
10
- /** @deprecated 使用 {@link ClassToken} */
11
- export type ProviderToken<T = unknown> = ClassToken<T>;
12
10
  export type InjectMeta = {
13
11
  propertyKey: string | symbol;
14
12
  /** 依赖标识;与 resolve 二选一 */
@@ -1,11 +1,15 @@
1
1
  import type { ClassToken } from '../ioc/metadata';
2
2
  /** 快速 CRUD 接口名(含回收站) */
3
3
  export type CrudApi = 'add' | 'delete' | 'update' | 'info' | 'list' | 'page' | 'restore';
4
- /** 字段引用:表字段名,或带字典 / 前端行为的对象 */
4
+ /**
5
+ * 字段引用(fieldEq / fieldLike / fieldArray / keyWordLikeFields)。
6
+ * - 裸名 `status` → `a.status`,请求参数名 = `status`
7
+ * - `b.providerId` → 参数名 = `providerId`
8
+ * - `e.id as roleId` → 筛 `e.id`,参数名 = `roleId`(短名冲突用 as,不用 requestParam)
9
+ */
5
10
  export type QueryFieldRef = string | {
11
+ /** 如 `status` / `b.providerId` / `e.id as roleId` */
6
12
  column: string;
7
- /** 请求体参数名,默认与 column 相同 */
8
- requestParam?: string;
9
13
  /** 筛选项展示名;缺省用实体 columnComments / EPS comment */
10
14
  label?: string;
11
15
  /** 业务字典 type.key;筛选项用其拉 options */
@@ -33,25 +37,16 @@ export type QueryJoinType = 'join' | 'leftJoin' | 'innerJoin';
33
37
  /**
34
38
  * Join 配置(Drizzle pgTable)。
35
39
  * - 主表固定别名 `a`
36
- * - 联表须显式 `alias`(同表可多次 join,如 b/c);未写时兼容旧序:join[0]=b…
37
- * - `condition`: `"a.skinId = b.id"` 等值;或 `on(tables)` / 旧版 `on(main)`
40
+ * - 联表必须显式:`entity` + `alias` + `type` + `condition`
38
41
  */
39
42
  export type QueryJoin = {
40
- /** Drizzle pgTable;与 entity 同义 */
41
- table?: unknown;
42
- /** 同 table(便于业务侧命名) */
43
- entity?: unknown;
43
+ /** Drizzle pgTable */
44
+ entity: unknown;
44
45
  /** 联表别名,如 b / c / f;不可为 a */
45
- alias?: string;
46
- type?: QueryJoinType;
46
+ alias: string;
47
+ type: QueryJoinType;
47
48
  /** 等值条件,如 `a.skinId = b.id` */
48
- condition?: string;
49
- /**
50
- * 联表 ON:
51
- * - 新:`(tables) => eq(tables.a.skinId, tables.b.id)`(tables 含 a 与各 alias)
52
- * - 旧:`(main) => eq(main.skinId, other.id)`(无 alias 时)
53
- */
54
- on?: (mainOrTables: any) => unknown;
49
+ condition: string;
55
50
  };
56
51
  /** where / extend 上下文 */
57
52
  export type QueryOpCtx = {
@@ -77,8 +72,13 @@ export type QueryOp = {
77
72
  /** 数字 / 时间区间(与 fieldEq 等并存,勿再在 where 里拆参) */
78
73
  fieldRange?: QueryFieldRange[];
79
74
  addOrderBy?: Record<string, 'asc' | 'desc'>;
80
- /** Drizzle select 对象;有 join 时建议显式配置 */
81
- select?: unknown;
75
+ /**
76
+ * 声明式投影(有 join 时建议显式配置)。
77
+ * - `a.*`:主表全部列,结果键 = 驼峰字段名
78
+ * - `b.userName`:结果键 = `userName`(无需 as)
79
+ * - `e.name as roleName`:结果键 = `roleName`
80
+ */
81
+ select?: string[];
82
82
  join?: QueryJoin[];
83
83
  where?: QueryWhereFn;
84
84
  extend?: QueryExtendFn;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "vome-core",
3
- "version": "0.0.52",
3
+ "version": "0.0.54",
4
4
  "description": "Vome framework — shared + Bun/Elysia server + Vue admin",
5
5
  "license": "MIT",
6
6
  "type": "module",
@@ -1,2 +0,0 @@
1
- /** @deprecated 请从 vome-core/client 或本目录 index 使用 BaseService */
2
- export { BaseService } from '../../client';
@@ -1 +0,0 @@
1
- export { BaseService } from "../../client";