@lovrabet/dsparser 1.0.0-beta.3 → 1.0.2

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 (43) hide show
  1. package/LICENSE +0 -6
  2. package/README.md +16 -1
  3. package/dist/index.d.ts +14 -1
  4. package/dist/index.d.ts.map +1 -0
  5. package/dist/index.js +1 -1
  6. package/dist/src/core/DatasetGroup.d.ts +58 -0
  7. package/dist/src/core/DatasetGroup.d.ts.map +1 -0
  8. package/dist/src/core/DatasetGroupMap.d.ts +108 -0
  9. package/dist/src/core/DatasetGroupMap.d.ts.map +1 -0
  10. package/dist/src/core/DatasetItem.d.ts +94 -0
  11. package/dist/src/core/DatasetItem.d.ts.map +1 -0
  12. package/dist/src/core/DatasetList.d.ts +198 -0
  13. package/dist/src/core/DatasetList.d.ts.map +1 -0
  14. package/dist/src/core/DrivenDataDetail.d.ts +174 -0
  15. package/dist/src/core/DrivenDataDetail.d.ts.map +1 -0
  16. package/dist/src/core/index.d.ts +11 -0
  17. package/dist/src/core/index.d.ts.map +1 -0
  18. package/dist/src/plus/DrivenDataDetailPlus.d.ts +121 -0
  19. package/dist/src/plus/DrivenDataDetailPlus.d.ts.map +1 -0
  20. package/dist/src/plus/index.d.ts +7 -0
  21. package/dist/src/plus/index.d.ts.map +1 -0
  22. package/dist/src/utils/core/dataset-adapter.d.ts +122 -0
  23. package/dist/src/utils/core/dataset-adapter.d.ts.map +1 -0
  24. package/dist/src/utils/core/dataset-generator.d.ts +187 -0
  25. package/dist/src/utils/core/dataset-generator.d.ts.map +1 -0
  26. package/dist/src/utils/core/index.d.ts +11 -0
  27. package/dist/src/utils/core/index.d.ts.map +1 -0
  28. package/dist/src/utils/core/naming.d.ts +48 -0
  29. package/dist/src/utils/core/naming.d.ts.map +1 -0
  30. package/dist/src/utils/core/table-name.d.ts +104 -0
  31. package/dist/src/utils/core/table-name.d.ts.map +1 -0
  32. package/dist/src/utils/index.d.ts +10 -0
  33. package/dist/src/utils/index.d.ts.map +1 -0
  34. package/dist/src/utils/plus/example-value-generator.d.ts +58 -0
  35. package/dist/src/utils/plus/example-value-generator.d.ts.map +1 -0
  36. package/dist/src/utils/plus/field-utils.d.ts +104 -0
  37. package/dist/src/utils/plus/field-utils.d.ts.map +1 -0
  38. package/dist/src/utils/plus/index.d.ts +10 -0
  39. package/dist/src/utils/plus/index.d.ts.map +1 -0
  40. package/dist/src/utils/plus/operation-parser.d.ts +91 -0
  41. package/dist/src/utils/plus/operation-parser.d.ts.map +1 -0
  42. package/package.json +18 -5
  43. package/dist/src/utils/test-util.d.ts +0 -1
package/LICENSE CHANGED
@@ -25,12 +25,6 @@
25
25
  5. ❌ **公开源代码** - 本 SDK 为闭源软件,源代码不公开
26
26
  6. ❌ **绕过 API 限制** - 不得使用本 SDK 绕过 Lovrabet 平台的使用限制或安全措施
27
27
 
28
- ### 允许的分发
29
-
30
- 您的应用程序可以:
31
- - ✅ 在 package.json 中将本 SDK 作为依赖项(通过 npm 安装)
32
- - ✅ 将包含本 SDK 的应用程序分发给最终用户
33
- - ✅ 在生产环境中部署包含本 SDK 的应用程序
34
28
 
35
29
  ## 免责声明
36
30
 
package/README.md CHANGED
@@ -1 +1,16 @@
1
- # Intro
1
+ # @lovrabet/dsparser
2
+
3
+ > TypeScript library for dataset parsing and analysis
4
+
5
+ [![Version](https://img.shields.io/npm/v/@lovrabet/dsparser.svg)](https://www.npmjs.com/package/@lovrabet/dsparser)
6
+ [![License](https://img.shields.io/npm/l/@lovrabet/dsparser.svg)](./LICENSE)
7
+
8
+ ## Installation
9
+
10
+ ```bash
11
+ npm install @lovrabet/dsparser
12
+ # or
13
+ yarn add @lovrabet/dsparser
14
+ # or
15
+ bun add @lovrabet/dsparser
16
+ ```
package/dist/index.d.ts CHANGED
@@ -1 +1,14 @@
1
- export { testUtil } from "./src/utils/test-util";
1
+ /**
2
+ * @lovrabet/dsparser - 数据集解析器
3
+ * 用于统一处理和分析数据集相关的逻辑
4
+ */
5
+ export { toCamelCase, toPascalCase, toSnakeCase, toKebabCase, normalizeFieldName, getTableName, generateTableNameFromCode, isVirtualTableName, generateDatasetsConfig, detectTableNameConflicts, createDatasetNameMap, groupByTableName, adaptDrivenDataDetail, adaptDrivenDataDetails, extractDatasetFromResponse, extractDatasetsFromListResponse, isDrivenDataDetail, smartAdapt, } from './src/utils/index.js';
6
+ export type { DbtableConfig, DatasetInfo, DatasetConfig, DatasetsConfig, DatasetListItem, DatasetGeneratorOptions, DrivenDataDetail as DrivenDataDetailType, GetDrivenDataResponse, GetListResponse, } from './src/utils/index.js';
7
+ export { DatasetItem, DrivenDataDetail, DatasetList, DatasetGroup, DatasetGroupMap, } from './src/core/index.js';
8
+ export type { DatasetItemData, DrivenDataDetailData, FieldDefinition, FieldExtendConfig, } from './src/core/index.js';
9
+ export { DrivenDataDetailPlus } from './src/plus/index.js';
10
+ export type { ApiDocOptions } from './src/plus/index.js';
11
+ export { DatasetOperationType, OPERATION_TYPE_DISPLAY_NAME, API_BLACKLIST, parseFieldExtend, isPrimaryKeyField, isSystemField, isRequiredField, isAutoIncrementField, isCreateTimeField, isModifyTimeField, DB_TYPE_DISPLAY_MAP, getDbTypeDisplay, formatDbType, parseOperationType, shouldIncludeField, getFieldsForOperation, isApiBlacklisted, filterApiOperations, generateExampleValue, generateExampleFromSchema, parseRequestBody, parseResponseBody, generateRequestExample, OperationParser, } from './src/utils/plus/index.js';
12
+ export type { GenerateExampleOptions, OperationDefinition, OperationAnalysis, } from './src/utils/plus/index.js';
13
+ export declare const VERSION = "1.0.0-beta.8";
14
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../index.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAGH,OAAO,EAEL,WAAW,EACX,YAAY,EACZ,WAAW,EACX,WAAW,EACX,kBAAkB,EAElB,YAAY,EACZ,yBAAyB,EACzB,kBAAkB,EAElB,sBAAsB,EACtB,wBAAwB,EACxB,oBAAoB,EACpB,gBAAgB,EAEhB,qBAAqB,EACrB,sBAAsB,EACtB,0BAA0B,EAC1B,+BAA+B,EAC/B,kBAAkB,EAClB,UAAU,GACX,MAAM,sBAAsB,CAAC;AAE9B,YAAY,EACV,aAAa,EACb,WAAW,EACX,aAAa,EACb,cAAc,EACd,eAAe,EACf,uBAAuB,EACvB,gBAAgB,IAAI,oBAAoB,EACxC,qBAAqB,EACrB,eAAe,GAChB,MAAM,sBAAsB,CAAC;AAG9B,OAAO,EACL,WAAW,EACX,gBAAgB,EAChB,WAAW,EACX,YAAY,EACZ,eAAe,GAChB,MAAM,qBAAqB,CAAC;AAE7B,YAAY,EACV,eAAe,EACf,oBAAoB,EACpB,eAAe,EACf,iBAAiB,GAClB,MAAM,qBAAqB,CAAC;AAG7B,OAAO,EAAE,oBAAoB,EAAE,MAAM,qBAAqB,CAAC;AAE3D,YAAY,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAC;AAGzD,OAAO,EAEL,oBAAoB,EACpB,2BAA2B,EAC3B,aAAa,EACb,gBAAgB,EAChB,iBAAiB,EACjB,aAAa,EACb,eAAe,EACf,oBAAoB,EACpB,iBAAiB,EACjB,iBAAiB,EACjB,mBAAmB,EACnB,gBAAgB,EAChB,YAAY,EACZ,kBAAkB,EAClB,kBAAkB,EAClB,qBAAqB,EACrB,gBAAgB,EAChB,mBAAmB,EAEnB,oBAAoB,EACpB,yBAAyB,EACzB,gBAAgB,EAChB,iBAAiB,EACjB,sBAAsB,EAEtB,eAAe,GAChB,MAAM,2BAA2B,CAAC;AAEnC,YAAY,EACV,sBAAsB,EACtB,mBAAmB,EACnB,iBAAiB,GAClB,MAAM,2BAA2B,CAAC;AAGnC,eAAO,MAAM,OAAO,iBAAiB,CAAC"}
package/dist/index.js CHANGED
@@ -1 +1 @@
1
- function a0_0x3e0e(){var _0x44bf37=['439490fydnRX','117LWZLQj','323056QEOmXN','This\x20is\x20a\x20test\x20function','3aeISKj','14898GKxPHJ','8EwFKKB','4493965VoUkCB','1161730NDcyZH','865xCZbPg','56746QvUxoU','DSParser\x20module\x20loaded','log','6571774CyIlgz'];a0_0x3e0e=function(){return _0x44bf37;};return a0_0x3e0e();}var a0_0x212a14=a0_0x706f;(function(_0x4bdcdf,_0x1b65d7){var _0x45403a=a0_0x706f,_0x1da108=_0x4bdcdf();while(!![]){try{var _0x324306=parseInt(_0x45403a(0x150))/0x1+parseInt(_0x45403a(0x14e))/0x2*(-parseInt(_0x45403a(0x14a))/0x3)+-parseInt(_0x45403a(0x148))/0x4+-parseInt(_0x45403a(0x14f))/0x5*(-parseInt(_0x45403a(0x14b))/0x6)+-parseInt(_0x45403a(0x14d))/0x7*(-parseInt(_0x45403a(0x14c))/0x8)+parseInt(_0x45403a(0x147))/0x9*(parseInt(_0x45403a(0x154))/0xa)+-parseInt(_0x45403a(0x153))/0xb;if(_0x324306===_0x1b65d7)break;else _0x1da108['push'](_0x1da108['shift']());}catch(_0x3712b3){_0x1da108['push'](_0x1da108['shift']());}}}(a0_0x3e0e,0x6b8fe));var testUtil=()=>{var _0x25005b=a0_0x706f;console[_0x25005b(0x152)](_0x25005b(0x149));};console[a0_0x212a14(0x152)](a0_0x212a14(0x151));function a0_0x706f(_0x2a0ed9,_0x56b0f4){var _0x3e0e6c=a0_0x3e0e();return a0_0x706f=function(_0x706fd0,_0x388913){_0x706fd0=_0x706fd0-0x147;var _0x30b8b5=_0x3e0e6c[_0x706fd0];return _0x30b8b5;},a0_0x706f(_0x2a0ed9,_0x56b0f4);}export{testUtil};
1
+ const a0_0x433b45=a0_0x5810;(function(_0x53c6c4,_0x9665f0){const _0x472252=a0_0x5810,_0x2a8bd4=_0x53c6c4();while(!![]){try{const _0x22a606=parseInt(_0x472252(0x266))/0x1*(parseInt(_0x472252(0x1c0))/0x2)+parseInt(_0x472252(0x2a3))/0x3*(parseInt(_0x472252(0x240))/0x4)+-parseInt(_0x472252(0x290))/0x5*(-parseInt(_0x472252(0x1f4))/0x6)+-parseInt(_0x472252(0x1cf))/0x7*(-parseInt(_0x472252(0x1f1))/0x8)+-parseInt(_0x472252(0x229))/0x9+parseInt(_0x472252(0x1e0))/0xa+-parseInt(_0x472252(0x27f))/0xb*(parseInt(_0x472252(0x1c2))/0xc);if(_0x22a606===_0x9665f0)break;else _0x2a8bd4['push'](_0x2a8bd4['shift']());}catch(_0x5c8465){_0x2a8bd4['push'](_0x2a8bd4['shift']());}}}(a0_0x45ad,0x23d8c));function toCamelCase(_0x1a2ad0){const _0x12d2b0=a0_0x5810;if(!_0x1a2ad0)return'';return _0x1a2ad0[_0x12d2b0(0x26d)]('_')[_0x12d2b0(0x1ea)]((_0x37e9e5,_0x2fc1af)=>{const _0x150bd7=_0x12d2b0;if(_0x2fc1af===0x0)return _0x37e9e5[_0x150bd7(0x235)]();return _0x37e9e5['charAt'](0x0)[_0x150bd7(0x283)]()+_0x37e9e5[_0x150bd7(0x282)](0x1)['toLowerCase']();})[_0x12d2b0(0x252)]('');}function toPascalCase(_0x115f5e){const _0x22e6b6=a0_0x5810;if(!_0x115f5e)return'';const _0x424f0f=toCamelCase(_0x115f5e);return _0x424f0f[_0x22e6b6(0x272)](0x0)[_0x22e6b6(0x283)]()+_0x424f0f[_0x22e6b6(0x282)](0x1);}function toSnakeCase(_0x3a44bd){const _0x486801=a0_0x5810;if(!_0x3a44bd)return'';return _0x3a44bd[_0x486801(0x2c3)](/([A-Z])/g,_0x486801(0x2bc))[_0x486801(0x235)]()[_0x486801(0x2c3)](/^_/,'');}function toKebabCase(_0x2cb0a8){const _0x4be089=a0_0x5810;if(!_0x2cb0a8)return'';return _0x2cb0a8[_0x4be089(0x2c3)](/([A-Z])/g,_0x4be089(0x232))[_0x4be089(0x235)]()[_0x4be089(0x2c3)](/^-/,'');}function normalizeFieldName(_0x352973){const _0x5ea09b=a0_0x5810;if(!_0x352973)return'';return _0x352973[_0x5ea09b(0x295)]()[_0x5ea09b(0x2c3)](/\s+/g,'_')[_0x5ea09b(0x2c3)](/[^a-zA-Z0-9_]/g,'_')['replace'](/_+/g,'_')['replace'](/^_|_$/g,'');}function a0_0x5810(_0x3bcc54,_0x39ee6f){const _0x45adec=a0_0x45ad();return a0_0x5810=function(_0x58101f,_0xa5d72e){_0x58101f=_0x58101f-0x1ad;let _0x20fc7c=_0x45adec[_0x58101f];return _0x20fc7c;},a0_0x5810(_0x3bcc54,_0x39ee6f);}function getTableName(_0x209a7f){const _0x4be806=a0_0x5810;if(!_0x209a7f)return _0x4be806(0x1f9);if(_0x209a7f['dbtableConfig']?.[_0x4be806(0x1ca)])return _0x209a7f[_0x4be806(0x267)][_0x4be806(0x1ca)];const _0x32fbaa=_0x209a7f['datasetCode']||_0x209a7f[_0x4be806(0x29b)]||_0x209a7f[_0x4be806(0x25d)];if(_0x32fbaa)return generateTableNameFromCode(_0x32fbaa);return _0x4be806(0x1f9);}function getTableKey(_0x414981){const _0x25eab1=a0_0x5810;if(typeof _0x414981===_0x25eab1(0x2b2))return toCamelCase(_0x414981);const _0x1d24be=getTableName(_0x414981);return toCamelCase(_0x1d24be);}function generateTableNameFromCode(_0x3c0900){const _0x3a210c=a0_0x5810;if(!_0x3c0900)return _0x3a210c(0x1f9);const _0x3edb11=_0x3c0900[_0x3a210c(0x282)](-0x6)[_0x3a210c(0x224)](0x6,'0');return _0x3a210c(0x270)+_0x3edb11;}function isVirtualTableName(_0x4a9ba8){return/^dataset_[a-zA-Z0-9]{6}$/['test'](_0x4a9ba8);}function generateDatasetsConfig(_0x3beb76,_0x3c1b6f={}){const _0x2e967a=a0_0x5810,{enableDeduplication:enableDeduplication=!![],datasetNameGenerator:_0x390141,filter:_0xfd9bf4}=_0x3c1b6f,_0x17a7ac={},_0x55b9c6=new Set();for(const _0x284c46 of _0x3beb76){if(_0xfd9bf4&&!_0xfd9bf4(_0x284c46))continue;const _0x3b423d=getTableName(_0x284c46);if(enableDeduplication&&_0x55b9c6[_0x2e967a(0x1fa)](_0x3b423d)){console[_0x2e967a(0x285)](_0x2e967a(0x1dd)+_0x3b423d+_0x2e967a(0x236)+_0x284c46[_0x2e967a(0x2a0)]+'\x20('+_0x284c46[_0x2e967a(0x1e8)]+')');continue;}_0x55b9c6['add'](_0x3b423d);const _0x275a9a=_0x390141?_0x390141(_0x3b423d,_0x284c46):getTableKey(_0x3b423d);_0x17a7ac[_0x275a9a]={'key':_0x275a9a,'tableName':_0x3b423d,'datasetCode':_0x284c46[_0x2e967a(0x1e8)],'name':_0x284c46['name'],'id':_0x284c46['id']};}return _0x17a7ac;}function generateFullDatasetsConfig(_0x3c7ceb,_0x1b9184={}){const _0x3dc026=a0_0x5810,{filter:_0x1dab95,datasetNameGenerator:_0x229cc4}=_0x1b9184,_0x18932e=_0x1dab95?_0x3c7ceb['filter'](_0x1dab95):_0x3c7ceb,_0x307f7e=groupByTableName(_0x18932e),_0x41c93f={};for(const [_0x5140aa,_0x37f197]of Object['entries'](_0x307f7e)){if(_0x37f197['length']===0x1){const _0x57f4a3=_0x37f197[0x0],_0x5cd8a4=_0x229cc4?_0x229cc4(_0x5140aa,_0x57f4a3):getTableKey(_0x5140aa);_0x41c93f[_0x5cd8a4]={'key':_0x5cd8a4,'tableName':_0x5140aa,'datasetCode':_0x57f4a3[_0x3dc026(0x1e8)],'name':_0x57f4a3[_0x3dc026(0x2a0)],'id':_0x57f4a3['id']};}else{const _0x42c345=[..._0x37f197][_0x3dc026(0x2ac)]((_0x50523d,_0x260c97)=>{const _0x14c760=Number(_0x50523d['id'])||0x0,_0x252980=Number(_0x260c97['id'])||0x0;return _0x252980-_0x14c760;});_0x42c345[_0x3dc026(0x2c4)]((_0x3783a5,_0x371387)=>{const _0xeb31e6=_0x3dc026,_0x2214cd=_0x229cc4?_0x229cc4(_0x5140aa,_0x3783a5):getTableKey(_0x5140aa),_0x5cead5=_0x371387===0x0?_0x2214cd:_0x2214cd+'_'+_0x371387;_0x41c93f[_0x5cead5]={'key':_0x5cead5,'tableName':_0x5140aa,'datasetCode':_0x3783a5[_0xeb31e6(0x1e8)],'name':_0x3783a5[_0xeb31e6(0x2a0)],'id':_0x3783a5['id']};});}}return _0x41c93f;}function detectTableNameConflicts(_0x49c047){const _0x587039=a0_0x5810,_0x36494b={};for(const _0x2ac10e of _0x49c047){const _0x533a83=getTableName(_0x2ac10e);!_0x36494b[_0x533a83]&&(_0x36494b[_0x533a83]=[]),_0x36494b[_0x533a83][_0x587039(0x22d)](_0x2ac10e);}const _0x36465e={};for(const [_0x4d3e67,_0x102acb]of Object['entries'](_0x36494b)){_0x102acb[_0x587039(0x20d)]>0x1&&(_0x36465e[_0x4d3e67]=_0x102acb);}return{'hasConflicts':Object['keys'](_0x36465e)[_0x587039(0x20d)]>0x0,'conflicts':_0x36465e};}function createDatasetNameMap(_0x1d0957){const _0x46adb3=a0_0x5810,_0x5880f0={};for(const [_0x2fe2f0,_0x12b6ec]of Object[_0x46adb3(0x2b0)](_0x1d0957)){_0x5880f0[_0x2fe2f0]=_0x12b6ec[_0x46adb3(0x1e8)]||'';}return _0x5880f0;}function groupByTableName(_0x28ec9f){const _0x7e6c97=a0_0x5810,_0x95be5b={};for(const _0x33dfcf of _0x28ec9f){const _0x5fe304=getTableName(_0x33dfcf);!_0x95be5b[_0x5fe304]&&(_0x95be5b[_0x5fe304]=[]),_0x95be5b[_0x5fe304][_0x7e6c97(0x22d)](_0x33dfcf);}return _0x95be5b;}function datasetsConfigToArray(_0x18fcfd){const _0x4abddf=a0_0x5810;return Object[_0x4abddf(0x225)](_0x18fcfd);}function adaptDrivenDataDetail(_0x49770e){const _0x21ba03=a0_0x5810;return{'id':_0x49770e[_0x21ba03(0x1fc)],'name':_0x49770e[_0x21ba03(0x2a0)],'datasetCode':_0x49770e[_0x21ba03(0x25d)],'dbtableConfig':_0x49770e['dbtableConfig'],'source':_0x49770e['source'],'version':_0x49770e[_0x21ba03(0x237)],'extend':_0x49770e['extend'],'properties':_0x49770e['properties'],'operations':_0x49770e['operations']};}function adaptDrivenDataDetails(_0x858dc7){const _0x2f5c2c=a0_0x5810;return _0x858dc7[_0x2f5c2c(0x1ea)](adaptDrivenDataDetail);}function extractDatasetFromResponse(_0x348f15){const _0x5d06d6=a0_0x5810;if(!_0x348f15[_0x5d06d6(0x1df)]||!_0x348f15[_0x5d06d6(0x2be)])throw new Error(_0x5d06d6(0x1c4)+(_0x348f15['errorMsg']||_0x348f15[_0x5d06d6(0x264)]));return adaptDrivenDataDetail(_0x348f15[_0x5d06d6(0x2be)]);}function extractDatasetsFromListResponse(_0x2b57dd){const _0x24fba2=a0_0x5810;if(!_0x2b57dd[_0x24fba2(0x1df)]||!_0x2b57dd[_0x24fba2(0x2be)]?.[_0x24fba2(0x27c)])throw new Error(_0x24fba2(0x239)+(_0x2b57dd[_0x24fba2(0x2b9)]||_0x2b57dd[_0x24fba2(0x264)]));return _0x2b57dd[_0x24fba2(0x2be)][_0x24fba2(0x27c)][_0x24fba2(0x1ea)](_0x15e1f5=>({..._0x15e1f5,'datasetCode':_0x15e1f5['code']||_0x15e1f5[_0x24fba2(0x1e8)]}));}function isDrivenDataDetail(_0x46be43){const _0x30a90f=a0_0x5810;return Boolean(_0x46be43&&typeof _0x46be43['modelCode']===_0x30a90f(0x2b2));}function smartAdapt(_0x3fea80){const _0x1da5d3=a0_0x5810;if(isDrivenDataDetail(_0x3fea80))return adaptDrivenDataDetail(_0x3fea80);if(_0x3fea80[_0x1da5d3(0x1e8)])return _0x3fea80;if(_0x3fea80[_0x1da5d3(0x29b)])return{..._0x3fea80,'datasetCode':_0x3fea80['code']};return _0x3fea80;}var DatasetOperationType;(_0x18e97b=>{const _0x10a076=a0_0x5810;_0x18e97b['GET_LIST']=_0x10a076(0x1cb),_0x18e97b['GET_ONE']=_0x10a076(0x27a),_0x18e97b[_0x10a076(0x1c1)]=_0x10a076(0x275),_0x18e97b[_0x10a076(0x269)]=_0x10a076(0x1bb),_0x18e97b[_0x10a076(0x1e9)]=_0x10a076(0x281),_0x18e97b[_0x10a076(0x1f6)]=_0x10a076(0x2a5),_0x18e97b[_0x10a076(0x22e)]=_0x10a076(0x244),_0x18e97b[_0x10a076(0x1b8)]='getSelectOptions',_0x18e97b[_0x10a076(0x289)]='getFileUrl',_0x18e97b[_0x10a076(0x203)]='excelExport',_0x18e97b['GET_UPLOAD_FILE_SCRIPT']=_0x10a076(0x24e),_0x18e97b['CREATE_IMPORT']=_0x10a076(0x1d4),_0x18e97b[_0x10a076(0x27d)]=_0x10a076(0x22a),_0x18e97b[_0x10a076(0x1fd)]=_0x10a076(0x25b),_0x18e97b['IMPORT_TEMPLATE']=_0x10a076(0x280);})(DatasetOperationType||={});var OPERATION_TYPE_DISPLAY_NAME={[a0_0x433b45(0x1cb)]:a0_0x433b45(0x1ce),[a0_0x433b45(0x27a)]:a0_0x433b45(0x2c1),['getOneOrigin']:'查询单条(原始)',[a0_0x433b45(0x1bb)]:a0_0x433b45(0x298),[a0_0x433b45(0x281)]:'创建',[a0_0x433b45(0x2a5)]:'更新',['delete']:'删除',[a0_0x433b45(0x250)]:a0_0x433b45(0x208),[a0_0x433b45(0x1d9)]:a0_0x433b45(0x211),[a0_0x433b45(0x2a1)]:'Excel导出',[a0_0x433b45(0x24e)]:'获取上传脚本',[a0_0x433b45(0x1d4)]:'创建导入',[a0_0x433b45(0x22a)]:'创建导出',[a0_0x433b45(0x25b)]:'任务信息',[a0_0x433b45(0x280)]:a0_0x433b45(0x22b)},API_BLACKLIST=[a0_0x433b45(0x2a1),a0_0x433b45(0x24e),a0_0x433b45(0x1d9),a0_0x433b45(0x1d4),a0_0x433b45(0x22a),a0_0x433b45(0x25b),'importTemplate'];function parseFieldExtend(_0x4b956e){const _0x2051e3=a0_0x433b45;if(!_0x4b956e[_0x2051e3(0x2ad)])return{};try{const _0x48f507=typeof _0x4b956e[_0x2051e3(0x2ad)]==='string'?JSON[_0x2051e3(0x284)](_0x4b956e[_0x2051e3(0x2ad)]):_0x4b956e['extend'];return _0x48f507;}catch(_0x1a207c){return console[_0x2051e3(0x285)](_0x2051e3(0x246)+_0x4b956e[_0x2051e3(0x29b)]+_0x2051e3(0x200),_0x1a207c),{};}}function isPrimaryKeyField(_0x2cdf18,_0x54ae7f){const _0x4edc7c=a0_0x433b45;if(_0x54ae7f&&_0x2cdf18['code']===_0x54ae7f)return!![];const _0x3b27b7=parseFieldExtend(_0x2cdf18);return Boolean(_0x3b27b7[_0x4edc7c(0x1b3)]||_0x3b27b7[_0x4edc7c(0x268)]);}function isSystemField(_0x1add30){const _0x4658bc=a0_0x433b45,_0x236f75=parseFieldExtend(_0x1add30);return Boolean(_0x236f75[_0x4658bc(0x223)]);}function isRequiredField(_0x500feb){const _0x547e8c=parseFieldExtend(_0x500feb);return Boolean(_0x547e8c['required']);}function isAutoIncrementField(_0x4c1271){const _0xaab8a5=a0_0x433b45,_0x4ac784=parseFieldExtend(_0x4c1271);return Boolean(_0x4ac784[_0xaab8a5(0x260)]);}function isCreateTimeField(_0x26cdbb){const _0x4f9276=a0_0x433b45,_0x49dabe=parseFieldExtend(_0x26cdbb);return Boolean(_0x49dabe[_0x4f9276(0x1fb)]);}function isModifyTimeField(_0x26e00e){const _0x388bc8=a0_0x433b45,_0x5cc094=parseFieldExtend(_0x26e00e);return Boolean(_0x5cc094[_0x388bc8(0x2a4)]);}var DB_TYPE_DISPLAY_MAP={'NUMBER':'数字','TEXT':'文本','TEXTAREA':'长文本','DATE':'日期','DATETIME':a0_0x433b45(0x1d6),'TIMESTAMP':a0_0x433b45(0x21a),'SELECT':a0_0x433b45(0x1af),'CHECKBOX':'多选','RADIO':'单选','SWITCH':'开关','UPLOAD':'文件上传','IMAGE':'图片','RICH_TEXT':a0_0x433b45(0x292),'JSON':a0_0x433b45(0x274),'ARRAY':'数组'};function getDbTypeDisplay(_0xfa47ba){return DB_TYPE_DISPLAY_MAP[_0xfa47ba]||_0xfa47ba;}function formatDbType(_0x350161,_0xec88df){const _0x309a8c=a0_0x433b45;if(!_0x350161)return'-';if(!_0xec88df)return _0x350161;const _0x3b22ae=[_0x309a8c(0x1db),_0x309a8c(0x21f),_0x309a8c(0x286),'DATE'];if(_0x3b22ae[_0x309a8c(0x1da)](_0x350161['toUpperCase']()))return _0x350161;return _0x350161+'('+_0xec88df+')';}function parseOperationType(_0x24517c){const _0x306bab=a0_0x433b45;if(Object[_0x306bab(0x225)](DatasetOperationType)[_0x306bab(0x1da)](_0x24517c))return _0x24517c;const _0x50777e=Object['entries'](OPERATION_TYPE_DISPLAY_NAME)[_0x306bab(0x215)](([_0x5371a2,_0x4cf95a])=>_0x4cf95a===_0x24517c);return _0x50777e?_0x50777e[0x0]:undefined;}function shouldIncludeField(_0x4df479,_0x4adfa6,_0x2ad567){const _0x31ab79=a0_0x433b45,_0x392e3b=parseFieldExtend(_0x4df479),_0x4ef130=isPrimaryKeyField(_0x4df479,_0x2ad567),_0xc140a6=Boolean(_0x392e3b['systemRetain']),_0xcf50f=Boolean(_0x392e3b[_0x31ab79(0x260)]),_0x246c03=Boolean(_0x392e3b[_0x31ab79(0x1fb)]),_0x8b18a3=Boolean(_0x392e3b[_0x31ab79(0x2a4)]);switch(_0x4adfa6){case'getList':return!![];case _0x31ab79(0x27a):case'getOneOrigin':case _0x31ab79(0x244):return _0x4ef130;case _0x31ab79(0x281):if(_0x4ef130&&_0xcf50f)return![];if(_0xc140a6&&(_0x246c03||_0x8b18a3))return![];return!![];case _0x31ab79(0x2a5):case _0x31ab79(0x1bb):if(_0x4ef130)return!![];if(_0xc140a6&&(_0x246c03||_0x8b18a3))return![];return!![];case _0x31ab79(0x250):return _0x4df479['code']==='code';default:return!![];}}function a0_0x45ad(){const _0x39dd1b=['systemRetain','padStart','values','responseExample','generateResponseExample','parseOperation','209286UqiGVQ','createExport','导入模板','getStats','push','DELETE','description','iterator','getOperationsByType','-$1','now','getField','toLowerCase','\x22,数据集:\x20','version','<p>富文本内容</p>','获取数据集列表失败:\x20','enabled','\x20fields,\x20','getConflicts','user@example.com','getVirtualTables','_datasetMap','99340qHxGgV','fieldName','parseOperations','getOperations','delete','|----------|--------|------|------|','解析字段\x20','hasDbtableConfig','findAll','generateConfigArray','getLatest','toListItem','\x20groups)','示例值','getUploadFileScript','findByCode','getSelectOptions','datasetMap','join','\x0a```\x0a','**请求参数**\x0a\x0a|\x20参数名\x20|\x20类型\x20|\x20说明\x20|\x0a|--------|------|------|\x0a','options','filterBlacklist','parseFieldExtend','\x20items,\x20conflict,\x20latest:\x20','filter','isSystemField','taskInfo','\x20API\x20文档','modelCode','getRequiredFields','这是一段较长的文本内容示例','autoIncrement','detectConflicts','required','isEmpty','msg','get','306wYjFEf','dbtableConfig','pkField','GET_ONE_UPDATE','createTimeField','getOperationCountByMethod','requestExample','split','getOperationCount',')\x0a\x0a**基本信息**\x0a\x0a-\x20**方法**:\x20`','dataset_','String','charAt','toConfigArray','JSON','getOneOrigin','displayName','getPrimaryKeyFields','getAt','includeDisabled','getOne','generateOperationMarkdown','tableData','CREATE_EXPORT','supportsCRUD','2893DNpuoq','importTemplate','create','slice','toUpperCase','parse','warn','TIMESTAMP','字段名称','DatasetGroup(','GET_FILE_URL','generateConfig','method','getOperationAnalysesByType','getFieldCount','findByName','getOperation','5gMDBAN','getCount','富文本','13800138000','fullUrl','trim','address','size','查询单条(用于更新)','getOperationAnalysis','operationParser','code','toString','generateFromSchema','getConflictingItems','toFullConfig','name','excelExport','-\x20**名称**:\x20','30CSdVBV','modifyDate','update','source','generateOperationSummary','value','set','phone','placeholder','sort','extend','getAllDatasets','field_name','entries','-\x20**数据源**:\x20','string','\x20operations)','\x0a**响应示例**\x0a\x0a```json\x0a','getSystemFields','keys','-\x20**完整URL**:\x20`','updateTimeField','errorMsg','##\x20操作列表','DatasetItem(','_$1','getFields','data','DrivenDataDetail(','\x0a-\x20**状态**:\x20✅\x20启用\x0a\x0a','查询单条','requestFields','replace','forEach','isArray','解析\x20requestBody\x20失败:','下拉选择','1.0.0-beta.8','DatasetList(','stringify','primaryKey','getLatestDatasets','getOperationCountByType','https://example.com/image.jpg','type','GET_SELECT_OPTIONS','DatasetGroupMap(','pageSize','getOneUpdate','getOperationFields','getRealTables','getFirst','DrivenDataDetailPlus(','1156KmoGQy','GET_ONE_ORIGIN','43440Xestmq','##\x20操作详情','获取数据集失败:\x20','\x20items,\x20','operations','getConflictStats','getRaw','_raw','tableName','getList','getModelName','getMissingCRUDOperations','查询列表','63OZQrtN','dbType','generateAllOperationsSummary','generateRequestExample','items','createImport','##\x20数据集信息','日期时间','hasConflict','findById','getFileUrl','includes','TEXT','getItems','[dsparser]\x20跳过重复的表名\x20\x22','toConfig','success','2453650DxFCoP','total','0000','getEnabledOperations','系统自动生成','\x20|\x20','getLast','findByTableName','datasetCode','CREATE','map','toArray','getDisabledOperations','getTableName','currentPage','path','hasExtendField','183432xNOPfX','generateAllOperationsMarkdown','getFilteredOperationAnalyses','1471188tHTyio','groups','UPDATE','POST','toISOString','dataset_000000','has','createDate','modelId','TASK_INFO','getOperationStats','isPrimaryKeyField','\x20的\x20extend\x20配置失败:','hasField','email','EXCEL_EXPORT','未指定','object','_operationAnalyses','getCodes','获取下拉选项','-\x20**字段数量**:\x20','getOperationAnalyses','getExtendField','Invalid\x20response','length','responseSchema','initDataset','hasConflicts','获取文件URL','isRequiredField','getBusinessFields','getName','find','isVirtualTable','getOperationRequestFields','-\x20**操作数量**:\x20','toJSON','时间戳','getAll','-\x20**代码**:\x20','empty','`\x0a-\x20**路径**:\x20`','DATETIME','hasOperation','getEnabledOperationAnalyses','properties'];a0_0x45ad=function(){return _0x39dd1b;};return a0_0x45ad();}function getFieldsForOperation(_0x2b990c,_0x2c3bdb,_0x1765ce){const _0x5bbd5c=a0_0x433b45;return _0x2b990c[_0x5bbd5c(0x259)](_0x923a00=>shouldIncludeField(_0x923a00,_0x2c3bdb,_0x1765ce));}function isApiBlacklisted(_0x427f02){const _0x1a2781=a0_0x433b45;return API_BLACKLIST[_0x1a2781(0x1da)](_0x427f02);}function filterApiOperations(_0x2b4a40){const _0xd95f45=a0_0x433b45;return _0x2b4a40['filter'](_0x321462=>!isApiBlacklisted(_0x321462[_0xd95f45(0x2a0)]));}var TYPE_VALUE_GENERATORS={'TIMESTAMP':()=>Date[a0_0x433b45(0x233)](),'DATETIME':()=>new Date()[a0_0x433b45(0x1f8)]()[a0_0x433b45(0x2c3)]('T','\x20')[a0_0x433b45(0x26d)]('.')[0x0],'DATE':()=>new Date()['toISOString']()[a0_0x433b45(0x26d)]('T')[0x0],'SELECT':({fieldInfo:_0x56c7c7})=>{const _0x1eda25=a0_0x433b45;if(_0x56c7c7?.[_0x1eda25(0x255)]&&_0x56c7c7['options'][_0x1eda25(0x20d)]>0x0)return _0x56c7c7[_0x1eda25(0x255)][0x0][_0x1eda25(0x2a8)];return 0x1;},'NUMBER':()=>0x7b,'INTEGER':()=>0x64,'Integer':({fieldCode:_0x53237c})=>{const _0x20fae2=a0_0x433b45;if(_0x53237c===_0x20fae2(0x1ee))return 0x1;if(_0x53237c===_0x20fae2(0x1ba))return 0xa;return 0x64;},'BIGINT':()=>0xf4240,'Long':()=>0xf4240,'INT':()=>0x64,'TINYINT':()=>0x1,'DECIMAL':()=>99.99,'FLOAT':()=>99.99,'DOUBLE':()=>99.99,'TEXT':({description:_0xef6fcd})=>{const _0x5eed56=a0_0x433b45;if(_0xef6fcd){const _0x579597=_0xef6fcd[_0x5eed56(0x235)]();if(_0x579597[_0x5eed56(0x1da)]('邮箱')||_0x579597[_0x5eed56(0x1da)](_0x5eed56(0x202)))return _0x5eed56(0x23d);if(_0x579597[_0x5eed56(0x1da)]('电话')||_0x579597[_0x5eed56(0x1da)]('手机')||_0x579597[_0x5eed56(0x1da)](_0x5eed56(0x2aa)))return _0x5eed56(0x293);if(_0x579597[_0x5eed56(0x1da)]('地址')||_0x579597[_0x5eed56(0x1da)](_0x5eed56(0x296)))return'北京市朝阳区';if(_0x579597[_0x5eed56(0x1da)]('姓名')||_0x579597['includes']('name'))return'张三';}return'示例文本';},'VARCHAR':({description:_0x3de7d1})=>TYPE_VALUE_GENERATORS['TEXT']({'description':_0x3de7d1}),'CHAR':({description:_0x3838fd})=>TYPE_VALUE_GENERATORS['TEXT']({'description':_0x3838fd}),'STRING':({fieldInfo:_0x3f8f7d,description:_0x32f64e})=>{const _0x48023b=a0_0x433b45;if(_0x3f8f7d?.[_0x48023b(0x2ab)]&&_0x3f8f7d[_0x48023b(0x2ab)]!==_0x48023b(0x1e4))return _0x3f8f7d[_0x48023b(0x2ab)][_0x48023b(0x2c3)](/^请输入|^请选择/,'');return TYPE_VALUE_GENERATORS[_0x48023b(0x1db)]({'description':_0x32f64e});},'TEXTAREA':()=>a0_0x433b45(0x25f),'LONGTEXT':()=>a0_0x433b45(0x25f),'BOOLEAN':()=>!![],'BOOL':()=>!![],'Boolean':()=>!![],'SWITCH':()=>!![],'CHECKBOX':()=>[0x1,0x2],'RADIO':()=>0x1,'JSON':()=>({'key':a0_0x433b45(0x2a8)}),'ARRAY':()=>['item1','item2'],'UPLOAD':()=>'https://example.com/file.pdf','IMAGE':()=>a0_0x433b45(0x1b6),'RICH_TEXT':()=>a0_0x433b45(0x238)};function generateExampleValue(_0x5d14e5,_0xa96d66,_0x2034ed,_0x5ba9c5={}){const _0x28a28d=a0_0x433b45,{isPrimaryKey:_0xb2ad0b,dbtableConfig:_0x253cae}=_0x5ba9c5;if(_0xb2ad0b)return 0x1;if(_0x253cae){const _0xe986ea=_0x253cae[_0x28a28d(0x26a)]?.[_0x28a28d(0x241)]===_0x5d14e5,_0x45c755=_0x253cae['updateTimeField']?.['fieldName']===_0x5d14e5;if(_0xe986ea||_0x45c755){if(_0x2034ed?.[_0x28a28d(0x283)]()[_0x28a28d(0x1da)]('TIMESTAMP'))return Date[_0x28a28d(0x233)]();return new Date()[_0x28a28d(0x1f8)]()[_0x28a28d(0x2c3)]('T','\x20')[_0x28a28d(0x26d)]('.')[0x0];}}const _0x49aeb2={..._0x5ba9c5,'fieldCode':_0x5d14e5};if(_0x2034ed){const _0x540226=_0x2034ed[_0x28a28d(0x283)](),_0x475c7a=TYPE_VALUE_GENERATORS[_0x540226];if(_0x475c7a)return _0x475c7a(_0x49aeb2);}const _0x51cba9=_0xa96d66[_0x28a28d(0x283)](),_0x232721=TYPE_VALUE_GENERATORS[_0x51cba9];if(_0x232721)return _0x232721(_0x49aeb2);return _0x28a28d(0x24d);}function generateExampleFromSchema(_0x4e7f24,_0x2b586b){const _0x46a946=a0_0x433b45;if(!_0x4e7f24||typeof _0x4e7f24!==_0x46a946(0x205))return{};if(Array[_0x46a946(0x1ad)](_0x4e7f24)){if(_0x4e7f24[_0x46a946(0x20d)]>0x0)return[generateExampleFromSchema(_0x4e7f24[0x0],_0x2b586b)];return[];}const _0x224609={};return Object['keys'](_0x4e7f24)[_0x46a946(0x2c4)](_0x162e66=>{const _0x5cbf2f=_0x46a946,_0x137518=_0x4e7f24[_0x162e66];if(_0x137518&&typeof _0x137518===_0x5cbf2f(0x205)&&!Array[_0x5cbf2f(0x1ad)](_0x137518)&&_0x137518['type']){const _0x49f44d=_0x137518,_0x2ddc71=_0x49f44d[_0x5cbf2f(0x1b7)],_0x705315=_0x49f44d['description'];_0x224609[_0x162e66]=generateExampleValue(_0x162e66,_0x2ddc71,undefined,{'description':_0x705315,'dbtableConfig':_0x2b586b});}else{if(Array[_0x5cbf2f(0x1ad)](_0x137518))_0x224609[_0x162e66]=_0x137518[_0x5cbf2f(0x20d)]>0x0?[generateExampleFromSchema(_0x137518[0x0],_0x2b586b)]:[];else _0x137518&&typeof _0x137518==='object'?_0x224609[_0x162e66]=generateExampleFromSchema(_0x137518,_0x2b586b):_0x224609[_0x162e66]=_0x137518;}}),_0x224609;}function parseRequestBody(_0x41d1b5){const _0x17dd85=a0_0x433b45;if(!_0x41d1b5)return{};try{return JSON[_0x17dd85(0x284)](_0x41d1b5);}catch(_0x48bbf9){return console[_0x17dd85(0x285)](_0x17dd85(0x1ae),_0x48bbf9),{};}}function parseResponseBody(_0x263d27){const _0x12a6a9=a0_0x433b45;if(!_0x263d27)return null;try{const _0x18ed0b=JSON[_0x12a6a9(0x284)](_0x263d27);return _0x18ed0b['200']||_0x18ed0b;}catch(_0x116387){return console[_0x12a6a9(0x285)]('解析\x20responseBody\x20失败:',_0x116387),null;}}function generateRequestExample(_0x10e899,_0x23c871,_0x785000,_0x21d787){const _0x162324=a0_0x433b45,_0x49b73b={};return _0x10e899[_0x162324(0x2c4)](_0x28cde5=>{const _0x1f81bf=_0x162324,_0x5e262f=parseFieldExtend(_0x28cde5),_0x5f4149=_0x28cde5['code']===_0x785000||Boolean(_0x5e262f[_0x1f81bf(0x1b3)]),_0x2b9a54=generateExampleValue(_0x28cde5['code'],_0x28cde5[_0x1f81bf(0x1b7)],_0x28cde5['dbType'],{'fieldInfo':_0x5e262f,'isPrimaryKey':_0x5f4149,'description':_0x28cde5['description']||_0x28cde5[_0x1f81bf(0x2a0)],'dbtableConfig':_0x21d787});_0x49b73b[_0x28cde5[_0x1f81bf(0x29b)]]=_0x2b9a54;}),_0x23c871===_0x162324(0x1cb)&&(_0x49b73b[_0x162324(0x1ee)]=0x1,_0x49b73b[_0x162324(0x1ba)]=0xa),_0x49b73b;}class OperationParser{[a0_0x433b45(0x228)](_0x43fae4,_0xdeaa49,_0x3be166=[],_0x168bc9,_0x55ba7d){const _0x5e2937=a0_0x433b45,_0x52d29b=_0xdeaa49!=null&&_0xdeaa49!==![];if(!_0x52d29b)return{'name':_0x43fae4,'displayName':OPERATION_TYPE_DISPLAY_NAME[_0x43fae4]||_0x43fae4,'type':parseOperationType(_0x43fae4),'method':'','path':'','requestFields':[],'requestParams':{},'responseSchema':null,'requestExample':{},'responseExample':{},'enabled':![]};const {method:method=_0x5e2937(0x1f7),path:path='',host:host='',requestBody:_0x32ef6b,responseBody:_0x200989}=_0xdeaa49,_0x6541a7=parseRequestBody(_0x32ef6b);let _0x16aefc=Object[_0x5e2937(0x2b6)](_0x6541a7);const _0x296e0e=parseOperationType(_0x43fae4);if(_0x296e0e===_0x5e2937(0x250)){const _0x5f9720=Object[_0x5e2937(0x2b6)](_0x6541a7);(_0x5f9720[_0x5e2937(0x20d)]===0x0||_0x5f9720[_0x5e2937(0x20d)]===0x1&&_0x5f9720[0x0]===_0x5e2937(0x29b))&&(!_0x6541a7['code']&&(_0x6541a7['code']={'type':'String','description':'字段编码'}),_0x6541a7['label']={'type':'String','description':_0x5e2937(0x287)},_0x16aefc=Object[_0x5e2937(0x2b6)](_0x6541a7));}const _0x380f63=parseResponseBody(_0x200989),_0x322490=this['generateRequestExample'](_0x43fae4,_0x6541a7,_0x3be166,_0x168bc9,_0x55ba7d),_0x1e5d73=this[_0x5e2937(0x227)](_0x380f63,_0x55ba7d),_0x292960=host&&path?''+host+path:path;return{'name':_0x43fae4,'displayName':OPERATION_TYPE_DISPLAY_NAME[_0x43fae4]||_0x43fae4,'type':_0x296e0e,'method':method,'path':path,'fullUrl':_0x292960,'requestFields':_0x16aefc,'requestParams':_0x6541a7,'responseSchema':_0x380f63,'requestExample':_0x322490,'responseExample':_0x1e5d73,'enabled':!![]};}[a0_0x433b45(0x242)](_0x451166,_0x2a3e0f=[],_0x25edd0,_0x30a246){const _0x593256=a0_0x433b45;return Object[_0x593256(0x2b0)](_0x451166)[_0x593256(0x1ea)](([_0x288079,_0x53cfe5])=>this[_0x593256(0x228)](_0x288079,_0x53cfe5,_0x2a3e0f,_0x25edd0,_0x30a246));}[a0_0x433b45(0x1e3)](_0x4c44a5){const _0x523313=a0_0x433b45;return _0x4c44a5[_0x523313(0x259)](_0x3312c2=>_0x3312c2[_0x523313(0x23a)]);}[a0_0x433b45(0x231)](_0x246d38,_0x3a00e7){const _0x3f5b4b=a0_0x433b45;return _0x246d38[_0x3f5b4b(0x259)](_0x2558ee=>_0x2558ee[_0x3f5b4b(0x1b7)]===_0x3a00e7);}[a0_0x433b45(0x1d2)](_0x5f1d33,_0x2d9096,_0x3e8f75,_0x5980d9,_0x27fafc){const _0x729bbd=a0_0x433b45,_0x57b1c1={},_0x2720b2=parseOperationType(_0x5f1d33);if(Object['keys'](_0x2d9096)[_0x729bbd(0x20d)]===0x0&&_0x2720b2){const _0x5f3cad=getFieldsForOperation(_0x3e8f75,_0x2720b2,_0x5980d9);return _0x5f3cad['forEach'](_0x54de28=>{const _0x1e428c=_0x729bbd,_0x4128e7=generateExampleValue(_0x54de28['code'],_0x54de28[_0x1e428c(0x1b7)],_0x54de28['dbType'],{'isPrimaryKey':_0x54de28[_0x1e428c(0x29b)]===_0x5980d9,'description':_0x54de28[_0x1e428c(0x22f)]||_0x54de28[_0x1e428c(0x2a0)],'dbtableConfig':_0x27fafc});_0x57b1c1[_0x54de28[_0x1e428c(0x29b)]]=_0x4128e7;}),_0x2720b2===_0x729bbd(0x1cb)&&(_0x57b1c1[_0x729bbd(0x1ee)]=0x1,_0x57b1c1[_0x729bbd(0x1ba)]=0xa),_0x57b1c1;}if(_0x2720b2==='getSelectOptions')return{'code':_0x729bbd(0x2af),'label':'field_name'};return Object['entries'](_0x2d9096)[_0x729bbd(0x2c4)](([_0x166cc1,_0x47a96a])=>{const _0x99055e=_0x729bbd,_0xcaa56=_0x47a96a,_0x55b013=_0xcaa56[_0x99055e(0x1b7)]||'TEXT',_0x1bab13=_0xcaa56[_0x99055e(0x22f)],_0x279252=_0x3e8f75[_0x99055e(0x215)](_0x1e57dc=>_0x1e57dc[_0x99055e(0x29b)]===_0x166cc1);if(_0x166cc1===_0x99055e(0x1ee))_0x57b1c1[_0x166cc1]=0x1;else{if(_0x166cc1===_0x99055e(0x1ba))_0x57b1c1[_0x166cc1]=0xa;else _0x166cc1==='id'?_0x57b1c1[_0x166cc1]=0x1:_0x57b1c1[_0x166cc1]=generateExampleValue(_0x166cc1,_0x55b013,_0x279252?.[_0x99055e(0x1d0)],{'isPrimaryKey':_0x166cc1===_0x5980d9||_0x166cc1==='id','description':_0x1bab13||_0x279252?.[_0x99055e(0x22f)]||_0x279252?.[_0x99055e(0x2a0)],'dbtableConfig':_0x27fafc});}}),_0x57b1c1;}[a0_0x433b45(0x227)](_0x5bd732,_0x23cf8d){const _0x322e36=a0_0x433b45;if(!_0x5bd732)return{'success':!![],'msg':'操作成功','errorMsg':'','errorCode':_0x322e36(0x1e2),'data':null};return this[_0x322e36(0x29d)](_0x5bd732,_0x23cf8d);}[a0_0x433b45(0x29d)](_0x46ea52,_0x21ded2){const _0xa8e1d4=a0_0x433b45;if(!_0x46ea52||typeof _0x46ea52!==_0xa8e1d4(0x205))return{};if(Array[_0xa8e1d4(0x1ad)](_0x46ea52)){if(_0x46ea52[_0xa8e1d4(0x20d)]>0x0)return[this[_0xa8e1d4(0x29d)](_0x46ea52[0x0],_0x21ded2)];return[];}const _0x337531={};return Object[_0xa8e1d4(0x2b6)](_0x46ea52)['forEach'](_0x55da29=>{const _0x1d77ef=_0xa8e1d4,_0x19a887=_0x46ea52[_0x55da29];if(_0x19a887&&typeof _0x19a887===_0x1d77ef(0x205)&&!Array['isArray'](_0x19a887)&&_0x19a887[_0x1d77ef(0x1b7)]){const _0x32e3fd=_0x19a887,_0x225363=_0x32e3fd[_0x1d77ef(0x1b7)],_0xef7ed6=_0x32e3fd[_0x1d77ef(0x22f)];_0x337531[_0x55da29]=generateExampleValue(_0x55da29,_0x225363,undefined,{'description':_0xef7ed6,'dbtableConfig':_0x21ded2});}else{if(Array[_0x1d77ef(0x1ad)](_0x19a887))_0x337531[_0x55da29]=_0x19a887[_0x1d77ef(0x20d)]>0x0?[this[_0x1d77ef(0x29d)](_0x19a887[0x0],_0x21ded2)]:[];else _0x19a887&&typeof _0x19a887===_0x1d77ef(0x205)?_0x337531[_0x55da29]=this['generateFromSchema'](_0x19a887,_0x21ded2):_0x337531[_0x55da29]=_0x19a887;}}),_0x337531;}['getOperationFields'](_0x40b78a,_0x6fdb70){const _0x1d8d45=a0_0x433b45,_0x9bdfe8=[];return _0x40b78a[_0x1d8d45(0x2c2)][_0x1d8d45(0x2c4)](_0x4e885b=>{const _0x59d981=_0x1d8d45,_0x256f8a=_0x6fdb70[_0x59d981(0x215)](_0x53a6c5=>_0x53a6c5[_0x59d981(0x29b)]===_0x4e885b);_0x256f8a&&_0x9bdfe8[_0x59d981(0x22d)](_0x256f8a);}),_0x9bdfe8;}}class DatasetItem{[a0_0x433b45(0x1c9)];constructor(_0x115837){const _0x13db45=a0_0x433b45,_0x5db395=_0x115837[_0x13db45(0x1e8)]||_0x115837[_0x13db45(0x29b)]||_0x115837[_0x13db45(0x25d)];this['_raw']={..._0x115837,'datasetCode':_0x5db395};}get['id'](){const _0x5a0071=a0_0x433b45;return this[_0x5a0071(0x1c9)]['id'];}get['name'](){const _0x6786f3=a0_0x433b45;return this[_0x6786f3(0x1c9)][_0x6786f3(0x2a0)];}[a0_0x433b45(0x214)](){const _0x475425=a0_0x433b45;return this[_0x475425(0x2a0)];}get['datasetCode'](){const _0x143ae9=a0_0x433b45;return this[_0x143ae9(0x1c9)][_0x143ae9(0x1e8)]||'';}get['dbtableConfig'](){const _0x5c946f=a0_0x433b45;return this['_raw'][_0x5c946f(0x267)];}[a0_0x433b45(0x1ed)](){return getTableName(this['_raw']);}['isVirtualTable'](){const _0x1ee189=a0_0x433b45;return isVirtualTableName(this[_0x1ee189(0x1ed)]());}[a0_0x433b45(0x1cc)](){return toPascalCase(this['getTableName']());}[a0_0x433b45(0x1de)](){const _0x228e05=a0_0x433b45;return{'key':getTableKey(this[_0x228e05(0x1ed)]()),'tableName':this[_0x228e05(0x1ed)](),'datasetCode':this[_0x228e05(0x1e8)],'name':this[_0x228e05(0x2a0)]};}[a0_0x433b45(0x219)](){const _0x3c7e6f=a0_0x433b45;return{...this[_0x3c7e6f(0x1c9)],'datasetCode':this[_0x3c7e6f(0x1e8)]};}[a0_0x433b45(0x1c8)](){const _0xca9473=a0_0x433b45;return{...this[_0xca9473(0x1c9)]};}[a0_0x433b45(0x247)](){const _0x1fe555=a0_0x433b45;return Boolean(this[_0x1fe555(0x1c9)][_0x1fe555(0x267)]?.['tableName']);}[a0_0x433b45(0x20b)](_0x1f97b2){const _0x283bf5=a0_0x433b45;return this[_0x283bf5(0x1c9)][_0x1f97b2];}[a0_0x433b45(0x1f0)](_0x6d5703){return _0x6d5703 in this['_raw'];}['toString'](){const _0x1c6994=a0_0x433b45;return _0x1c6994(0x2bb)+this[_0x1c6994(0x2a0)]+',\x20'+this[_0x1c6994(0x1e8)]+')';}}class DrivenDataDetail extends DatasetItem{constructor(_0x357426){const _0x5779e4=a0_0x433b45;super({..._0x357426,'id':_0x357426[_0x5779e4(0x1fc)],'datasetCode':_0x357426[_0x5779e4(0x25d)]});}get[a0_0x433b45(0x2a6)](){const _0x4967b1=a0_0x433b45;return this[_0x4967b1(0x1c9)][_0x4967b1(0x2a6)];}['getSource'](){const _0x53b3af=a0_0x433b45;return this[_0x53b3af(0x2a6)];}get[a0_0x433b45(0x237)](){const _0x218a95=a0_0x433b45;return this[_0x218a95(0x1c9)][_0x218a95(0x237)];}[a0_0x433b45(0x2bd)](){const _0x2de795=a0_0x433b45;return this[_0x2de795(0x1c9)][_0x2de795(0x222)]||[];}[a0_0x433b45(0x28d)](){const _0x2769d2=a0_0x433b45;return this[_0x2769d2(0x2bd)]()[_0x2769d2(0x20d)];}[a0_0x433b45(0x234)](_0x4cff95){const _0x31aca2=a0_0x433b45;return this[_0x31aca2(0x2bd)]()[_0x31aca2(0x215)](_0x57d023=>_0x57d023['code']===_0x4cff95);}[a0_0x433b45(0x201)](_0x26a1d8){const _0x242832=a0_0x433b45;return Boolean(this[_0x242832(0x234)](_0x26a1d8));}[a0_0x433b45(0x257)](_0x11a26d){const _0x58dde0=a0_0x433b45;if(!_0x11a26d[_0x58dde0(0x2ad)])return{};try{return JSON[_0x58dde0(0x284)](_0x11a26d[_0x58dde0(0x2ad)]);}catch(_0x52bff6){return console[_0x58dde0(0x285)](_0x58dde0(0x246)+_0x11a26d[_0x58dde0(0x29b)]+_0x58dde0(0x200),_0x52bff6),{};}}[a0_0x433b45(0x1ff)](_0x5cfe83){const _0x3a972c=a0_0x433b45,_0x34c9e6=this[_0x3a972c(0x257)](_0x5cfe83);return Boolean(_0x34c9e6[_0x3a972c(0x1b3)]);}['isSystemField'](_0x35a243){const _0x535faf=a0_0x433b45,_0x2bdf7b=this[_0x535faf(0x257)](_0x35a243);return Boolean(_0x2bdf7b[_0x535faf(0x223)]);}['isRequiredField'](_0x108a51){const _0x4494fd=a0_0x433b45,_0x24e66a=this[_0x4494fd(0x257)](_0x108a51);return Boolean(_0x24e66a[_0x4494fd(0x262)]);}[a0_0x433b45(0x277)](){const _0x1be0b9=a0_0x433b45;return this[_0x1be0b9(0x2bd)]()[_0x1be0b9(0x259)](_0x41fe27=>this[_0x1be0b9(0x1ff)](_0x41fe27));}[a0_0x433b45(0x2b5)](){const _0x573ebd=a0_0x433b45;return this[_0x573ebd(0x2bd)]()[_0x573ebd(0x259)](_0x43ba7d=>this[_0x573ebd(0x25a)](_0x43ba7d));}[a0_0x433b45(0x213)](){const _0x3649f6=a0_0x433b45;return this[_0x3649f6(0x2bd)]()[_0x3649f6(0x259)](_0x2e0003=>!this[_0x3649f6(0x25a)](_0x2e0003));}[a0_0x433b45(0x25e)](){const _0x320892=a0_0x433b45;return this['getFields']()[_0x320892(0x259)](_0x2b4378=>this[_0x320892(0x212)](_0x2b4378));}['getFieldsByType'](){const _0x574538=a0_0x433b45,_0x5065a1={};for(const _0x3b1eef of this[_0x574538(0x2bd)]()){!_0x5065a1[_0x3b1eef[_0x574538(0x1b7)]]&&(_0x5065a1[_0x3b1eef[_0x574538(0x1b7)]]=[]),_0x5065a1[_0x3b1eef[_0x574538(0x1b7)]][_0x574538(0x22d)](_0x3b1eef);}return _0x5065a1;}[a0_0x433b45(0x243)](){const _0x3bc597=a0_0x433b45;return this[_0x3bc597(0x1c9)][_0x3bc597(0x1c6)]||{};}[a0_0x433b45(0x26e)](){const _0x4226d6=a0_0x433b45;return Object[_0x4226d6(0x2b6)](this[_0x4226d6(0x243)]())[_0x4226d6(0x20d)];}[a0_0x433b45(0x28f)](_0x156001){const _0x403f70=a0_0x433b45;return this[_0x403f70(0x243)]()[_0x156001];}[a0_0x433b45(0x220)](_0x364e44){const _0x5b6a8e=a0_0x433b45,_0x1d1ce5=this[_0x5b6a8e(0x243)]();return _0x364e44 in _0x1d1ce5;}['isOperationEnabled'](_0x1069d6){const _0xf2b766=a0_0x433b45,_0x46de5b=this[_0xf2b766(0x28f)](_0x1069d6);return _0x46de5b!=null&&_0x46de5b!==![];}[a0_0x433b45(0x1e3)](){const _0x2eee8c=a0_0x433b45;return Object['entries'](this[_0x2eee8c(0x243)]())[_0x2eee8c(0x259)](([,_0x460a2e])=>_0x460a2e!=null)['map'](([_0x37564a])=>_0x37564a);}[a0_0x433b45(0x1ec)](){const _0x2db338=a0_0x433b45;return Object[_0x2db338(0x2b0)](this[_0x2db338(0x243)]())[_0x2db338(0x259)](([,_0xd935a7])=>_0xd935a7==null)['map'](([_0x3e6898])=>_0x3e6898);}[a0_0x433b45(0x22c)](){const _0x13bd95=a0_0x433b45;return{'fieldCount':this[_0x13bd95(0x28d)](),'systemFieldCount':this[_0x13bd95(0x2b5)]()['length'],'businessFieldCount':this[_0x13bd95(0x213)]()[_0x13bd95(0x20d)],'requiredFieldCount':this[_0x13bd95(0x25e)]()['length'],'primaryKeyCount':this[_0x13bd95(0x277)]()[_0x13bd95(0x20d)],'operationCount':this[_0x13bd95(0x26e)](),'enabledOperationCount':this[_0x13bd95(0x1e3)]()[_0x13bd95(0x20d)]};}[a0_0x433b45(0x24b)](){const _0x2b1d22=a0_0x433b45;return new DatasetItem({'id':this['id'],'name':this['name'],'datasetCode':this[_0x2b1d22(0x1e8)],'dbtableConfig':this[_0x2b1d22(0x267)]});}[a0_0x433b45(0x29c)](){const _0x3ca3a3=a0_0x433b45;return _0x3ca3a3(0x2bf)+this['name']+',\x20'+this[_0x3ca3a3(0x1e8)]+',\x20'+this[_0x3ca3a3(0x28d)]()+_0x3ca3a3(0x23b)+this['getOperationCount']()+_0x3ca3a3(0x2b3);}}class DatasetGroup{[a0_0x433b45(0x1d3)];constructor(_0x4117ba){const _0x183601=a0_0x433b45;this[_0x183601(0x1d3)]=Array['isArray'](_0x4117ba)?[..._0x4117ba]:[_0x4117ba],this[_0x183601(0x1d3)]['sort']((_0xf0a01d,_0x26d3e4)=>{const _0x31ca39=Number(_0xf0a01d['id'])||0x0,_0x357bd0=Number(_0x26d3e4['id'])||0x0;return _0x357bd0-_0x31ca39;});}[a0_0x433b45(0x1d7)](){const _0x260926=a0_0x433b45;return this[_0x260926(0x1d3)][_0x260926(0x20d)]>0x1;}[a0_0x433b45(0x24a)](){return this['items'][0x0];}['getOldest'](){const _0x5df69c=a0_0x433b45;return this[_0x5df69c(0x1d3)][this[_0x5df69c(0x1d3)][_0x5df69c(0x20d)]-0x1];}[a0_0x433b45(0x21b)](){return[...this['items']];}[a0_0x433b45(0x291)](){const _0x1214a5=a0_0x433b45;return this[_0x1214a5(0x1d3)][_0x1214a5(0x20d)];}['getAt'](_0x4dde63){const _0x1add8b=a0_0x433b45;return this[_0x1add8b(0x1d3)][_0x4dde63];}[a0_0x433b45(0x1d8)](_0x2c7723){const _0x5997b1=a0_0x433b45;return this[_0x5997b1(0x1d3)][_0x5997b1(0x215)](_0xfa796f=>_0xfa796f['id']===_0x2c7723);}[a0_0x433b45(0x24f)](_0x3163c0){const _0x4b4a0c=a0_0x433b45;return this[_0x4b4a0c(0x1d3)][_0x4b4a0c(0x215)](_0x411b10=>_0x411b10[_0x4b4a0c(0x1e8)]===_0x3163c0);}['getIds'](){const _0x14111a=a0_0x433b45;return this[_0x14111a(0x1d3)][_0x14111a(0x1ea)](_0x549f52=>_0x549f52['id'])['filter'](_0x1d4664=>_0x1d4664!==undefined);}[a0_0x433b45(0x207)](){const _0x1635a8=a0_0x433b45;return this[_0x1635a8(0x1d3)][_0x1635a8(0x1ea)](_0x29ffe4=>_0x29ffe4['datasetCode']);}[a0_0x433b45(0x29c)](){const _0x229e32=a0_0x433b45;if(this[_0x229e32(0x1d7)]())return _0x229e32(0x288)+this['items'][_0x229e32(0x20d)]+_0x229e32(0x258)+this[_0x229e32(0x24a)]()[_0x229e32(0x2a0)]+')';return _0x229e32(0x288)+this[_0x229e32(0x1d3)][0x0]['name']+')';}}class DatasetGroupMap{[a0_0x433b45(0x1f5)];constructor(_0x514f33){const _0x56483e=a0_0x433b45;this['groups']=new Map();for(const _0x3b68bb of _0x514f33){const _0x2e681a=getTableKey(_0x3b68bb);if(!this[_0x56483e(0x1f5)][_0x56483e(0x1fa)](_0x2e681a))this[_0x56483e(0x1f5)][_0x56483e(0x2a9)](_0x2e681a,new DatasetGroup(_0x3b68bb));else{const _0x1c04b3=this[_0x56483e(0x1f5)][_0x56483e(0x265)](_0x2e681a),_0x40cfb9=[..._0x1c04b3[_0x56483e(0x21b)](),_0x3b68bb];this[_0x56483e(0x1f5)][_0x56483e(0x2a9)](_0x2e681a,new DatasetGroup(_0x40cfb9));}}}[a0_0x433b45(0x265)](_0x1ae0e8){return this['groups']['get'](_0x1ae0e8);}[a0_0x433b45(0x1fa)](_0x5f5c04){const _0x605643=a0_0x433b45;return this[_0x605643(0x1f5)][_0x605643(0x1fa)](_0x5f5c04);}get[a0_0x433b45(0x297)](){const _0x239316=a0_0x433b45;return this['groups'][_0x239316(0x297)];}[a0_0x433b45(0x2b6)](){const _0x9c9dde=a0_0x433b45;return this[_0x9c9dde(0x1f5)]['keys']();}[a0_0x433b45(0x225)](){const _0x3168b9=a0_0x433b45;return this[_0x3168b9(0x1f5)]['values']();}[a0_0x433b45(0x2b0)](){const _0x350f75=a0_0x433b45;return this[_0x350f75(0x1f5)]['entries']();}[Symbol[a0_0x433b45(0x230)]](){const _0x195064=a0_0x433b45;return this[_0x195064(0x1f5)]['entries']();}[a0_0x433b45(0x2c4)](_0x1e2a24){const _0x9a3ab6=a0_0x433b45;this[_0x9a3ab6(0x1f5)]['forEach']((_0x10660c,_0x338d07)=>_0x1e2a24(_0x10660c,_0x338d07,this));}[a0_0x433b45(0x23c)](){const _0x432f9e=a0_0x433b45,_0x1695fa=new Map();for(const [_0x548b79,_0x1c63cb]of this['groups']){_0x1c63cb[_0x432f9e(0x1d7)]()&&_0x1695fa['set'](_0x548b79,_0x1c63cb);}return _0x1695fa;}['hasConflicts'](){const _0x4d328a=a0_0x433b45;for(const _0x303d68 of this[_0x4d328a(0x1f5)][_0x4d328a(0x225)]()){if(_0x303d68[_0x4d328a(0x1d7)]())return!![];}return![];}[a0_0x433b45(0x1c7)](){const _0x1ec5a4=a0_0x433b45;let _0x2feb23=0x0,_0x2df415=0x0;for(const _0x2ec3f0 of this[_0x1ec5a4(0x1f5)][_0x1ec5a4(0x225)]()){_0x2ec3f0['hasConflict']()&&(_0x2feb23++,_0x2df415+=_0x2ec3f0[_0x1ec5a4(0x291)]());}return{'conflictGroupCount':_0x2feb23,'conflictItemCount':_0x2df415,'totalGroups':this[_0x1ec5a4(0x1f5)]['size']};}['getAllDatasets'](){const _0x61839b=a0_0x433b45,_0x401a2a=[];for(const _0x3ea93a of this[_0x61839b(0x1f5)][_0x61839b(0x225)]()){_0x401a2a[_0x61839b(0x22d)](..._0x3ea93a['getAll']());}return _0x401a2a;}[a0_0x433b45(0x1b4)](){const _0x10c1b2=a0_0x433b45,_0x4efd0c=[];for(const _0x520e6c of this[_0x10c1b2(0x1f5)][_0x10c1b2(0x225)]()){_0x4efd0c['push'](_0x520e6c[_0x10c1b2(0x24a)]());}return _0x4efd0c;}[a0_0x433b45(0x24a)](_0x55da7f){return this['groups']['get'](_0x55da7f)?.['getLatest']();}['getAll'](_0x1e50a6){const _0x1877eb=a0_0x433b45;return this['groups']['get'](_0x1e50a6)?.[_0x1877eb(0x21b)]()||[];}[a0_0x433b45(0x1de)](){const _0x177abd=a0_0x433b45,_0x3661d0=this[_0x177abd(0x1b4)](),_0x438e55=_0x3661d0[_0x177abd(0x1ea)](_0x109d32=>_0x109d32['toJSON']());return generateDatasetsConfig(_0x438e55,{'enableDeduplication':![]});}[a0_0x433b45(0x29f)](){const _0x5213c7=a0_0x433b45,_0x5f1846=this[_0x5213c7(0x2ae)](),_0x244222=_0x5f1846[_0x5213c7(0x1ea)](_0x23ce86=>_0x23ce86[_0x5213c7(0x219)]());return generateFullDatasetsConfig(_0x244222);}['toObject'](){const _0x3f36df=a0_0x433b45,_0x2614d7={};for(const [_0x123881,_0xe13232]of this[_0x3f36df(0x1f5)]){_0x2614d7[_0x123881]=_0xe13232;}return _0x2614d7;}[a0_0x433b45(0x219)](){const _0x3996eb=a0_0x433b45,_0x4b2762={};for(const [_0x366347,_0x28e429]of this[_0x3996eb(0x1f5)]){_0x4b2762[_0x366347]=_0x28e429[_0x3996eb(0x21b)]()[_0x3996eb(0x1ea)](_0x128c16=>_0x128c16[_0x3996eb(0x219)]());}return _0x4b2762;}[a0_0x433b45(0x29c)](){const _0x50b3b0=a0_0x433b45;return _0x50b3b0(0x1b9)+this[_0x50b3b0(0x1f5)][_0x50b3b0(0x297)]+'\x20groups,\x20'+(this['hasConflicts']()?'has\x20conflicts':'no\x20conflicts')+')';}}class DatasetList{['_datasetMap'];constructor(_0x1a1293){const _0x4cfd42=a0_0x433b45,_0x231a63=_0x1a1293[_0x4cfd42(0x1ea)](_0x30e733=>new DatasetItem(_0x30e733));this[_0x4cfd42(0x23f)]=new DatasetGroupMap(_0x231a63);}get[a0_0x433b45(0x251)](){const _0x57778e=a0_0x433b45;return this[_0x57778e(0x23f)];}[a0_0x433b45(0x1dc)](){const _0x12ab10=a0_0x433b45;return this[_0x12ab10(0x23f)]['getAllDatasets']();}[a0_0x433b45(0x291)](){return this['getItems']()['length'];}[a0_0x433b45(0x263)](){const _0x357c7b=a0_0x433b45;return this[_0x357c7b(0x23f)]['size']===0x0;}[a0_0x433b45(0x278)](_0x29214d){const _0x1bce25=a0_0x433b45;return this[_0x1bce25(0x1dc)]()[_0x29214d];}[a0_0x433b45(0x1be)](){const _0x52ebfc=a0_0x433b45;return this[_0x52ebfc(0x1dc)]()[0x0];}[a0_0x433b45(0x1e6)](){const _0x5c61cc=a0_0x433b45,_0x1ee2e9=this[_0x5c61cc(0x1dc)]();return _0x1ee2e9[_0x1ee2e9['length']-0x1];}[a0_0x433b45(0x24f)](_0x272de7){const _0x326b40=a0_0x433b45;for(const _0x1ec00d of this[_0x326b40(0x23f)][_0x326b40(0x225)]()){const _0x3f7750=_0x1ec00d[_0x326b40(0x24f)](_0x272de7);if(_0x3f7750)return _0x3f7750;}return;}[a0_0x433b45(0x28e)](_0x4ea6bd){const _0x4c19b9=a0_0x433b45;return this[_0x4c19b9(0x1dc)]()[_0x4c19b9(0x215)](_0x3d111d=>_0x3d111d[_0x4c19b9(0x2a0)]===_0x4ea6bd);}[a0_0x433b45(0x1d8)](_0x344ea1){const _0x312d2d=a0_0x433b45;for(const _0x12bf6c of this[_0x312d2d(0x23f)]['values']()){const _0x34891f=_0x12bf6c['findById'](_0x344ea1);if(_0x34891f)return _0x34891f;}return;}[a0_0x433b45(0x1e7)](_0x1b31bb){const _0x4fa459=a0_0x433b45,_0x212a08=getTableKey(_0x1b31bb);return this[_0x4fa459(0x23f)][_0x4fa459(0x24a)](_0x212a08);}['filter'](_0x5d8c8e){const _0x2c98f5=a0_0x433b45,_0x197a34=this[_0x2c98f5(0x1dc)]()['filter'](_0x5d8c8e);return new DatasetList(_0x197a34[_0x2c98f5(0x1ea)](_0x441d3a=>_0x441d3a[_0x2c98f5(0x219)]()));}[a0_0x433b45(0x248)](_0x1a2b4c){const _0x36435c=a0_0x433b45;return this[_0x36435c(0x1dc)]()['filter'](_0x1a2b4c);}[a0_0x433b45(0x2c4)](_0x37ada1){const _0x112662=a0_0x433b45;this[_0x112662(0x1dc)]()['forEach'](_0x37ada1);}[a0_0x433b45(0x1ea)](_0x10f2d3){const _0x4c4376=a0_0x433b45;return this['getItems']()[_0x4c4376(0x1ea)](_0x10f2d3);}[Symbol[a0_0x433b45(0x230)]](){const _0x1b5f94=a0_0x433b45;return this['getItems']()[Symbol[_0x1b5f94(0x230)]]();}[a0_0x433b45(0x23e)](){const _0x3c40bf=a0_0x433b45;return this[_0x3c40bf(0x1dc)]()[_0x3c40bf(0x259)](_0x3c2b61=>_0x3c2b61[_0x3c40bf(0x216)]());}[a0_0x433b45(0x1bd)](){const _0x3cf3fd=a0_0x433b45;return this[_0x3cf3fd(0x1dc)]()['filter'](_0x45b3be=>!_0x45b3be[_0x3cf3fd(0x216)]());}['groupByTableName'](){const _0x2eb7b7=a0_0x433b45,_0x15599c={};for(const _0x4f0c4d of this['_datasetMap'][_0x2eb7b7(0x225)]()){const _0x3e40dc=_0x4f0c4d[_0x2eb7b7(0x24a)]()[_0x2eb7b7(0x1ed)]();_0x15599c[_0x3e40dc]=_0x4f0c4d[_0x2eb7b7(0x21b)]();}return _0x15599c;}[a0_0x433b45(0x261)](){const _0x342ccc=a0_0x433b45,_0x59772b={};for(const _0x4a484a of this['_datasetMap']['getConflicts']()[_0x342ccc(0x225)]()){const _0x83b315=_0x4a484a[_0x342ccc(0x24a)]()['getTableName']();_0x59772b[_0x83b315]=_0x4a484a['getAll']()[_0x342ccc(0x1ea)](_0x5d85c3=>_0x5d85c3['toJSON']());}return{'hasConflicts':Object[_0x342ccc(0x2b6)](_0x59772b)[_0x342ccc(0x20d)]>0x0,'conflicts':_0x59772b};}['hasConflicts'](){const _0x2b7a95=a0_0x433b45;return this[_0x2b7a95(0x23f)][_0x2b7a95(0x210)]();}[a0_0x433b45(0x29e)](){const _0x279eb8=a0_0x433b45,_0x473543=[];for(const _0x2a52d5 of this[_0x279eb8(0x23f)][_0x279eb8(0x23c)]()['values']()){_0x473543[_0x279eb8(0x22d)](..._0x2a52d5[_0x279eb8(0x21b)]());}return _0x473543;}[a0_0x433b45(0x28a)](_0x50d712){const _0xcc51ab=a0_0x433b45;if(!_0x50d712||Object[_0xcc51ab(0x2b6)](_0x50d712)[_0xcc51ab(0x20d)]===0x0)return this[_0xcc51ab(0x251)]['toConfig']();const _0x2f6ea0=this[_0xcc51ab(0x1dc)]()['map'](_0x7126a4=>_0x7126a4[_0xcc51ab(0x219)]());return generateDatasetsConfig(_0x2f6ea0,_0x50d712);}[a0_0x433b45(0x249)](_0x5283e1){const _0x4d37a2=a0_0x433b45,_0x7a4c4e=this[_0x4d37a2(0x28a)](_0x5283e1);return datasetsConfigToArray(_0x7a4c4e);}[a0_0x433b45(0x273)](){const _0x477091=a0_0x433b45;return this[_0x477091(0x1dc)]()['map'](_0x291cc1=>_0x291cc1['toConfig']());}[a0_0x433b45(0x22c)](){const _0x5169d9=a0_0x433b45;return{'total':this['getCount'](),'virtualTables':this[_0x5169d9(0x23e)]()['length'],'realTables':this[_0x5169d9(0x1bd)]()[_0x5169d9(0x20d)],'hasConflicts':this[_0x5169d9(0x210)](),'conflictCount':this[_0x5169d9(0x29e)]()['length']};}['toArray'](){const _0x451902=a0_0x433b45;return this[_0x451902(0x1dc)]()['map'](_0x1201e1=>_0x1201e1[_0x451902(0x219)]());}['toJSON'](){const _0x3e572e=a0_0x433b45;return this[_0x3e572e(0x1eb)]();}[a0_0x433b45(0x29c)](){const _0x3d9b54=a0_0x433b45;return _0x3d9b54(0x1b1)+this[_0x3d9b54(0x291)]()+_0x3d9b54(0x1c5)+this['_datasetMap'][_0x3d9b54(0x297)]+_0x3d9b54(0x24c);}static[a0_0x433b45(0x20f)](_0x4c3f23){const _0x1cbfa6=a0_0x433b45;if(!_0x4c3f23[_0x1cbfa6(0x1df)]||!_0x4c3f23[_0x1cbfa6(0x2be)]?.[_0x1cbfa6(0x27c)])throw new Error(_0x1cbfa6(0x20c));const _0x135c9b=_0x4c3f23[_0x1cbfa6(0x2be)][_0x1cbfa6(0x27c)]['map'](_0x5123b5=>({..._0x5123b5,'datasetCode':_0x5123b5[_0x1cbfa6(0x29b)]||_0x5123b5[_0x1cbfa6(0x1e8)]}));return new DatasetList(_0x135c9b);}static[a0_0x433b45(0x21d)](){return new DatasetList([]);}}class DrivenDataDetailPlus extends DrivenDataDetail{[a0_0x433b45(0x29a)];[a0_0x433b45(0x206)];constructor(_0x4a04e6){const _0x48c7bd=a0_0x433b45;super(_0x4a04e6),this[_0x48c7bd(0x29a)]=new OperationParser();}[a0_0x433b45(0x20a)](_0x1ac995=![]){const _0xed467d=a0_0x433b45;if(!_0x1ac995&&this[_0xed467d(0x206)])return this['_operationAnalyses'];const _0x509144=this[_0xed467d(0x243)](),_0x381b41=this[_0xed467d(0x2bd)](),_0x2bcbf4=this[_0xed467d(0x1c9)]['dbtableConfig']?.['pkField'],_0x77f8ad={'createTimeField':this[_0xed467d(0x1c9)][_0xed467d(0x267)]?.[_0xed467d(0x26a)],'updateTimeField':this[_0xed467d(0x1c9)]['dbtableConfig']?.[_0xed467d(0x2b8)]};return this['_operationAnalyses']=this[_0xed467d(0x29a)][_0xed467d(0x242)](_0x509144,_0x381b41,_0x2bcbf4,_0x77f8ad),this['_operationAnalyses'];}[a0_0x433b45(0x221)](){const _0x2f78d0=a0_0x433b45,_0x229092=this['getOperationAnalyses']();return this[_0x2f78d0(0x29a)]['getEnabledOperations'](_0x229092);}[a0_0x433b45(0x1f3)](_0x2c123c={}){const _0x25917e=a0_0x433b45;let _0x5c3229=this[_0x25917e(0x20a)]();return!_0x2c123c[_0x25917e(0x279)]&&(_0x5c3229=_0x5c3229[_0x25917e(0x259)](_0x55dde9=>_0x55dde9[_0x25917e(0x23a)])),_0x2c123c[_0x25917e(0x256)]!==![]&&(_0x5c3229=filterApiOperations(_0x5c3229)),_0x2c123c['customFilter']&&(_0x5c3229=_0x5c3229[_0x25917e(0x259)](_0x2c123c['customFilter'])),_0x5c3229;}['getOperationAnalysis'](_0x270c06){const _0x24daea=a0_0x433b45,_0x279bda=this[_0x24daea(0x20a)]();return _0x279bda[_0x24daea(0x215)](_0x54f31b=>_0x54f31b[_0x24daea(0x2a0)]===_0x270c06);}[a0_0x433b45(0x28c)](_0x4e947c){const _0x9d45af=a0_0x433b45,_0x3cbe36=this['getOperationAnalyses']();return this['operationParser'][_0x9d45af(0x231)](_0x3cbe36,_0x4e947c);}[a0_0x433b45(0x217)](_0xe08458){const _0xb46c24=a0_0x433b45,_0x1c4de1=this['getOperationAnalysis'](_0xe08458);if(!_0x1c4de1)return[];return this[_0xb46c24(0x29a)][_0xb46c24(0x1bc)](_0x1c4de1,this[_0xb46c24(0x2bd)]());}[a0_0x433b45(0x27b)](_0xd013ff){const _0x56d6ca=a0_0x433b45,_0x3028cf=this[_0x56d6ca(0x299)](_0xd013ff);if(!_0x3028cf)return'#\x20操作不存在:\x20'+_0xd013ff;const _0x90b86c=_0x3028cf[_0x56d6ca(0x294)]?_0x56d6ca(0x2b7)+_0x3028cf[_0x56d6ca(0x294)]+'`':'';if(!_0x3028cf[_0x56d6ca(0x23a)])return'##\x20'+_0x3028cf[_0x56d6ca(0x276)]+'\x20('+_0x3028cf[_0x56d6ca(0x2a0)]+_0x56d6ca(0x26f)+_0x3028cf[_0x56d6ca(0x28b)]+_0x56d6ca(0x21e)+_0x3028cf[_0x56d6ca(0x1ef)]+'`\x0a'+_0x90b86c+'\x0a-\x20**状态**:\x20❌\x20禁用\x0a';const _0x4c8b3a=_0x3028cf[_0x56d6ca(0x2c2)][_0x56d6ca(0x20d)]>0x0?Object[_0x56d6ca(0x2b0)](_0x3028cf['requestParams'])[_0x56d6ca(0x1ea)](([_0x17e284,_0x1e0196])=>{const _0x2e5fed=_0x56d6ca,_0x1b55c1=_0x1e0196,_0x5d6fb6=_0x1b55c1[_0x2e5fed(0x1b7)]||_0x2e5fed(0x271),_0x3ff6d6=_0x1b55c1[_0x2e5fed(0x22f)]||'-';return'|\x20'+_0x17e284+_0x2e5fed(0x1e5)+_0x5d6fb6+_0x2e5fed(0x1e5)+_0x3ff6d6+'\x20|';})[_0x56d6ca(0x252)]('\x0a'):'',_0x3effe1=_0x3028cf[_0x56d6ca(0x2c2)][_0x56d6ca(0x20d)]>0x0?_0x56d6ca(0x254)+_0x4c8b3a+'\x0a\x0a**请求示例**\x0a\x0a```json\x0a'+JSON[_0x56d6ca(0x1b2)](_0x3028cf[_0x56d6ca(0x26c)],null,0x2)+_0x56d6ca(0x253):'';return'##\x20'+_0x3028cf[_0x56d6ca(0x276)]+'\x20('+_0x3028cf[_0x56d6ca(0x2a0)]+_0x56d6ca(0x26f)+_0x3028cf[_0x56d6ca(0x28b)]+_0x56d6ca(0x21e)+_0x3028cf[_0x56d6ca(0x1ef)]+'`\x0a'+_0x90b86c+_0x56d6ca(0x2c0)+_0x3effe1+_0x56d6ca(0x2b4)+JSON['stringify'](_0x3028cf[_0x56d6ca(0x226)],null,0x2)+'\x0a```\x0a';}[a0_0x433b45(0x1f2)](_0x1d6533={}){const _0xedb4ba=a0_0x433b45,_0x4e90c7=this[_0xedb4ba(0x1f3)](_0x1d6533),_0x33ac6a=[];return _0x33ac6a[_0xedb4ba(0x22d)]('#\x20'+this['name']+_0xedb4ba(0x25c)),_0x33ac6a[_0xedb4ba(0x22d)](''),_0x33ac6a['push'](_0xedb4ba(0x1d5)),_0x33ac6a[_0xedb4ba(0x22d)](''),_0x33ac6a['push'](_0xedb4ba(0x2a2)+this[_0xedb4ba(0x2a0)]),_0x33ac6a[_0xedb4ba(0x22d)](_0xedb4ba(0x21c)+this[_0xedb4ba(0x1e8)]),_0x33ac6a[_0xedb4ba(0x22d)]('-\x20**表名**:\x20'+this['getTableName']()),_0x33ac6a['push'](_0xedb4ba(0x2b1)+(this[_0xedb4ba(0x2a6)]||_0xedb4ba(0x204))),_0x33ac6a[_0xedb4ba(0x22d)](_0xedb4ba(0x209)+this[_0xedb4ba(0x28d)]()),_0x33ac6a[_0xedb4ba(0x22d)](_0xedb4ba(0x218)+_0x4e90c7[_0xedb4ba(0x20d)]),_0x33ac6a['push'](''),_0x33ac6a[_0xedb4ba(0x22d)](_0xedb4ba(0x2ba)),_0x33ac6a[_0xedb4ba(0x22d)](''),_0x33ac6a['push']('|\x20操作名称\x20|\x20中文名\x20|\x20方法\x20|\x20路径\x20|'),_0x33ac6a['push'](_0xedb4ba(0x245)),_0x4e90c7[_0xedb4ba(0x2c4)](_0x5e8707=>{const _0x38492c=_0xedb4ba;_0x33ac6a[_0x38492c(0x22d)]('|\x20'+_0x5e8707[_0x38492c(0x2a0)]+_0x38492c(0x1e5)+_0x5e8707[_0x38492c(0x276)]+_0x38492c(0x1e5)+_0x5e8707[_0x38492c(0x28b)]+_0x38492c(0x1e5)+_0x5e8707[_0x38492c(0x1ef)]+'\x20|');}),_0x33ac6a[_0xedb4ba(0x22d)](''),_0x33ac6a[_0xedb4ba(0x22d)](_0xedb4ba(0x1c3)),_0x33ac6a[_0xedb4ba(0x22d)](''),_0x4e90c7[_0xedb4ba(0x2c4)](_0x37fb1a=>{const _0x20685e=_0xedb4ba;_0x33ac6a[_0x20685e(0x22d)](this[_0x20685e(0x27b)](_0x37fb1a[_0x20685e(0x2a0)]));}),_0x33ac6a[_0xedb4ba(0x252)]('\x0a');}[a0_0x433b45(0x2a7)](_0x5e984e){const _0x5446ce=a0_0x433b45,_0x1e749b=this['getOperationAnalysis'](_0x5e984e);if(!_0x1e749b)return null;return{'name':_0x1e749b[_0x5446ce(0x2a0)],'displayName':_0x1e749b[_0x5446ce(0x276)],'type':_0x1e749b[_0x5446ce(0x1b7)],'method':_0x1e749b[_0x5446ce(0x28b)],'path':_0x1e749b[_0x5446ce(0x1ef)],'enabled':_0x1e749b['enabled'],'requestFieldCount':_0x1e749b['requestFields'][_0x5446ce(0x20d)],'hasResponseSchema':_0x1e749b[_0x5446ce(0x20e)]!==null};}[a0_0x433b45(0x1d1)](_0x1e6d40={}){const _0x1480e2=a0_0x433b45,_0x37f616=this[_0x1480e2(0x1f3)](_0x1e6d40);return{'datasetName':this['name'],'datasetCode':this[_0x1480e2(0x1e8)],'tableName':this[_0x1480e2(0x1ed)](),'totalOperations':_0x37f616[_0x1480e2(0x20d)],'operations':_0x37f616['map'](_0x241676=>({'name':_0x241676[_0x1480e2(0x2a0)],'displayName':_0x241676[_0x1480e2(0x276)],'type':_0x241676[_0x1480e2(0x1b7)],'method':_0x241676[_0x1480e2(0x28b)],'path':_0x241676[_0x1480e2(0x1ef)],'requestFieldCount':_0x241676[_0x1480e2(0x2c2)][_0x1480e2(0x20d)]}))};}[a0_0x433b45(0x1fe)](){const _0x4363ee=a0_0x433b45,_0x39ab73=this[_0x4363ee(0x20a)](),_0x2819cc=_0x39ab73[_0x4363ee(0x259)](_0x298df7=>_0x298df7['enabled']);return{'total':_0x39ab73[_0x4363ee(0x20d)],'enabled':_0x2819cc[_0x4363ee(0x20d)],'disabled':_0x39ab73[_0x4363ee(0x20d)]-_0x2819cc[_0x4363ee(0x20d)],'byType':this[_0x4363ee(0x1b5)](_0x2819cc),'byMethod':this['getOperationCountByMethod'](_0x2819cc)};}[a0_0x433b45(0x1b5)](_0x25e166){const _0x106b29=a0_0x433b45,_0x21ca51={};return _0x25e166[_0x106b29(0x2c4)](_0x1c3cb6=>{const _0x3c21ca=_0x106b29;_0x1c3cb6[_0x3c21ca(0x1b7)]&&(_0x21ca51[_0x1c3cb6[_0x3c21ca(0x1b7)]]=(_0x21ca51[_0x1c3cb6['type']]||0x0)+0x1);}),_0x21ca51;}[a0_0x433b45(0x26b)](_0x430df0){const _0x21c0cc={};return _0x430df0['forEach'](_0x34b055=>{const _0x17fcb3=a0_0x5810;_0x21c0cc[_0x34b055[_0x17fcb3(0x28b)]]=(_0x21c0cc[_0x34b055[_0x17fcb3(0x28b)]]||0x0)+0x1;}),_0x21c0cc;}[a0_0x433b45(0x27e)](){const _0x51690e=a0_0x433b45,_0xe5c9e6=this[_0x51690e(0x221)](),_0x1a0b63=new Set(_0xe5c9e6[_0x51690e(0x1ea)](_0x855f90=>_0x855f90[_0x51690e(0x1b7)])[_0x51690e(0x259)](Boolean));return _0x1a0b63[_0x51690e(0x1fa)](_0x51690e(0x281))&&_0x1a0b63[_0x51690e(0x1fa)](_0x51690e(0x1cb))&&_0x1a0b63['has'](_0x51690e(0x2a5))&&_0x1a0b63[_0x51690e(0x1fa)](_0x51690e(0x244));}[a0_0x433b45(0x1cd)](){const _0x5b23b4=a0_0x433b45,_0x241c24=this['getEnabledOperationAnalyses'](),_0x58b16e=new Set(_0x241c24['map'](_0x5a3ede=>_0x5a3ede[_0x5b23b4(0x1b7)])['filter'](Boolean)),_0x4e436b=[_0x5b23b4(0x281),_0x5b23b4(0x1cb),'update',_0x5b23b4(0x244)];return _0x4e436b[_0x5b23b4(0x259)](_0x51f7cd=>!_0x58b16e[_0x5b23b4(0x1fa)](_0x51f7cd));}['toString'](){const _0x31106d=a0_0x433b45,_0x163e01=this[_0x31106d(0x1fe)]();return _0x31106d(0x1bf)+this['name']+',\x20'+this['datasetCode']+',\x20'+this[_0x31106d(0x28d)]()+_0x31106d(0x23b)+_0x163e01['enabled']+'/'+_0x163e01[_0x31106d(0x1e1)]+_0x31106d(0x2b3);}}var VERSION=a0_0x433b45(0x1b0);export{toSnakeCase,toPascalCase,toKebabCase,toCamelCase,smartAdapt,shouldIncludeField,parseResponseBody,parseRequestBody,parseOperationType,parseFieldExtend,normalizeFieldName,isVirtualTableName,isSystemField,isRequiredField,isPrimaryKeyField,isModifyTimeField,isDrivenDataDetail,isCreateTimeField,isAutoIncrementField,isApiBlacklisted,groupByTableName,getTableName,getFieldsForOperation,getDbTypeDisplay,generateTableNameFromCode,generateRequestExample,generateExampleValue,generateExampleFromSchema,generateDatasetsConfig,formatDbType,filterApiOperations,extractDatasetsFromListResponse,extractDatasetFromResponse,detectTableNameConflicts,createDatasetNameMap,adaptDrivenDataDetails,adaptDrivenDataDetail,VERSION,OperationParser,OPERATION_TYPE_DISPLAY_NAME,DrivenDataDetailPlus,DrivenDataDetail,DatasetOperationType,DatasetList,DatasetItem,DatasetGroupMap,DatasetGroup,DB_TYPE_DISPLAY_MAP,API_BLACKLIST};
@@ -0,0 +1,58 @@
1
+ /**
2
+ * 数据集分组类
3
+ * 封装单个或多个映射到同一表名的数据集
4
+ */
5
+ import type { DatasetItem } from './DatasetItem.js';
6
+ /**
7
+ * 数据集分组
8
+ * 管理映射到同一表名的一个或多个数据集
9
+ */
10
+ export declare class DatasetGroup {
11
+ private readonly items;
12
+ constructor(items: DatasetItem | DatasetItem[]);
13
+ /**
14
+ * 是否有冲突(多个数据集映射到同一表名)
15
+ */
16
+ hasConflict(): boolean;
17
+ /**
18
+ * 获取最新的数据集(id 最大的)
19
+ */
20
+ getLatest(): DatasetItem;
21
+ /**
22
+ * 获取最旧的数据集(id 最小的)
23
+ */
24
+ getOldest(): DatasetItem;
25
+ /**
26
+ * 获取所有数据集
27
+ */
28
+ getAll(): DatasetItem[];
29
+ /**
30
+ * 获取数据集数量
31
+ */
32
+ getCount(): number;
33
+ /**
34
+ * 根据索引获取数据集(0 是最新的)
35
+ */
36
+ getAt(index: number): DatasetItem | undefined;
37
+ /**
38
+ * 根据 id 查找数据集
39
+ */
40
+ findById(id: number | string): DatasetItem | undefined;
41
+ /**
42
+ * 根据 datasetCode 查找数据集
43
+ */
44
+ findByCode(code: string): DatasetItem | undefined;
45
+ /**
46
+ * 获取所有数据集的 id 列表
47
+ */
48
+ getIds(): Array<number | string>;
49
+ /**
50
+ * 获取所有数据集的 code 列表
51
+ */
52
+ getCodes(): string[];
53
+ /**
54
+ * 转为字符串(调试用)
55
+ */
56
+ toString(): string;
57
+ }
58
+ //# sourceMappingURL=DatasetGroup.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"DatasetGroup.d.ts","sourceRoot":"","sources":["../../../src/core/DatasetGroup.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAC;AAEpD;;;GAGG;AACH,qBAAa,YAAY;IACvB,OAAO,CAAC,QAAQ,CAAC,KAAK,CAAgB;gBAE1B,KAAK,EAAE,WAAW,GAAG,WAAW,EAAE;IAW9C;;OAEG;IACH,WAAW,IAAI,OAAO;IAItB;;OAEG;IACH,SAAS,IAAI,WAAW;IAIxB;;OAEG;IACH,SAAS,IAAI,WAAW;IAIxB;;OAEG;IACH,MAAM,IAAI,WAAW,EAAE;IAIvB;;OAEG;IACH,QAAQ,IAAI,MAAM;IAIlB;;OAEG;IACH,KAAK,CAAC,KAAK,EAAE,MAAM,GAAG,WAAW,GAAG,SAAS;IAI7C;;OAEG;IACH,QAAQ,CAAC,EAAE,EAAE,MAAM,GAAG,MAAM,GAAG,WAAW,GAAG,SAAS;IAItD;;OAEG;IACH,UAAU,CAAC,IAAI,EAAE,MAAM,GAAG,WAAW,GAAG,SAAS;IAIjD;;OAEG;IACH,MAAM,IAAI,KAAK,CAAC,MAAM,GAAG,MAAM,CAAC;IAIhC;;OAEG;IACH,QAAQ,IAAI,MAAM,EAAE;IAIpB;;OAEG;IACH,QAAQ,IAAI,MAAM;CAMnB"}
@@ -0,0 +1,108 @@
1
+ /**
2
+ * 数据集分组映射类
3
+ * 按表名分组管理数据集,自动处理冲突
4
+ */
5
+ import { DatasetGroup } from './DatasetGroup.js';
6
+ import type { DatasetItem, DatasetItemData } from './DatasetItem.js';
7
+ import type { DatasetsConfig } from '../utils/core/dataset-generator.js';
8
+ /**
9
+ * 数据集分组映射
10
+ * key: camelCase 格式的表名
11
+ * value: DatasetGroup(包含一个或多个数据集)
12
+ */
13
+ export declare class DatasetGroupMap {
14
+ private readonly groups;
15
+ constructor(datasets: DatasetItem[]);
16
+ /**
17
+ * 获取指定表名的分组
18
+ */
19
+ get(key: string): DatasetGroup | undefined;
20
+ /**
21
+ * 判断是否有指定表名
22
+ */
23
+ has(key: string): boolean;
24
+ /**
25
+ * 获取分组数量
26
+ */
27
+ get size(): number;
28
+ /**
29
+ * 获取所有表名(key)
30
+ */
31
+ keys(): IterableIterator<string>;
32
+ /**
33
+ * 获取所有分组(value)
34
+ */
35
+ values(): IterableIterator<DatasetGroup>;
36
+ /**
37
+ * 获取所有键值对
38
+ */
39
+ entries(): IterableIterator<[string, DatasetGroup]>;
40
+ /**
41
+ * 支持 for...of 遍历
42
+ */
43
+ [Symbol.iterator](): IterableIterator<[string, DatasetGroup]>;
44
+ /**
45
+ * 遍历所有分组
46
+ */
47
+ forEach(callback: (group: DatasetGroup, key: string, map: this) => void): void;
48
+ /**
49
+ * 获取所有有冲突的分组
50
+ */
51
+ getConflicts(): Map<string, DatasetGroup>;
52
+ /**
53
+ * 判断是否有冲突
54
+ */
55
+ hasConflicts(): boolean;
56
+ /**
57
+ * 获取冲突统计信息
58
+ */
59
+ getConflictStats(): {
60
+ conflictGroupCount: number;
61
+ conflictItemCount: number;
62
+ totalGroups: number;
63
+ };
64
+ /**
65
+ * 获取所有数据集(扁平化)
66
+ */
67
+ getAllDatasets(): DatasetItem[];
68
+ /**
69
+ * 获取所有最新的数据集(每组取 id 最大的)
70
+ */
71
+ getLatestDatasets(): DatasetItem[];
72
+ /**
73
+ * 根据表名获取最新的数据集
74
+ */
75
+ getLatest(key: string): DatasetItem | undefined;
76
+ /**
77
+ * 根据表名获取所有数据集
78
+ */
79
+ getAll(key: string): DatasetItem[];
80
+ /**
81
+ * 生成数据集配置(每组取最新的,即 id 最大的)
82
+ * 配置的 key 使用 camelCase 格式
83
+ *
84
+ * 注意:内部调用 generateDatasetsConfig,确保命名规则统一
85
+ */
86
+ toConfig(): DatasetsConfig;
87
+ /**
88
+ * 生成完整配置(包含所有数据集,即使有冲突)
89
+ * 冲突的表名会自动添加后缀 _1, _2, ...
90
+ * 配置的 key 使用 camelCase 格式
91
+ *
92
+ * 注意:内部调用 generateFullDatasetsConfig,确保规则统一
93
+ */
94
+ toFullConfig(): DatasetsConfig;
95
+ /**
96
+ * 转为普通对象
97
+ */
98
+ toObject(): Record<string, DatasetGroup>;
99
+ /**
100
+ * 转为 JSON(用于序列化)
101
+ */
102
+ toJSON(): Record<string, DatasetItemData[]>;
103
+ /**
104
+ * 转为字符串(调试用)
105
+ */
106
+ toString(): string;
107
+ }
108
+ //# sourceMappingURL=DatasetGroupMap.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"DatasetGroupMap.d.ts","sourceRoot":"","sources":["../../../src/core/DatasetGroupMap.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAC;AAMjD,OAAO,KAAK,EAAE,WAAW,EAAE,eAAe,EAAE,MAAM,kBAAkB,CAAC;AACrE,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,oCAAoC,CAAC;AAEzE;;;;GAIG;AACH,qBAAa,eAAe;IAC1B,OAAO,CAAC,QAAQ,CAAC,MAAM,CAA4B;gBAEvC,QAAQ,EAAE,WAAW,EAAE;IAqBnC;;OAEG;IACH,GAAG,CAAC,GAAG,EAAE,MAAM,GAAG,YAAY,GAAG,SAAS;IAI1C;;OAEG;IACH,GAAG,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO;IAIzB;;OAEG;IACH,IAAI,IAAI,IAAI,MAAM,CAEjB;IAED;;OAEG;IACH,IAAI,IAAI,gBAAgB,CAAC,MAAM,CAAC;IAIhC;;OAEG;IACH,MAAM,IAAI,gBAAgB,CAAC,YAAY,CAAC;IAIxC;;OAEG;IACH,OAAO,IAAI,gBAAgB,CAAC,CAAC,MAAM,EAAE,YAAY,CAAC,CAAC;IAInD;;OAEG;IACH,CAAC,MAAM,CAAC,QAAQ,CAAC,IAAI,gBAAgB,CAAC,CAAC,MAAM,EAAE,YAAY,CAAC,CAAC;IAI7D;;OAEG;IACH,OAAO,CAAC,QAAQ,EAAE,CAAC,KAAK,EAAE,YAAY,EAAE,GAAG,EAAE,MAAM,EAAE,GAAG,EAAE,IAAI,KAAK,IAAI,GAAG,IAAI;IAM9E;;OAEG;IACH,YAAY,IAAI,GAAG,CAAC,MAAM,EAAE,YAAY,CAAC;IAYzC;;OAEG;IACH,YAAY,IAAI,OAAO;IASvB;;OAEG;IACH,gBAAgB;;;;;IAoBhB;;OAEG;IACH,cAAc,IAAI,WAAW,EAAE;IAU/B;;OAEG;IACH,iBAAiB,IAAI,WAAW,EAAE;IAUlC;;OAEG;IACH,SAAS,CAAC,GAAG,EAAE,MAAM,GAAG,WAAW,GAAG,SAAS;IAI/C;;OAEG;IACH,MAAM,CAAC,GAAG,EAAE,MAAM,GAAG,WAAW,EAAE;IAMlC;;;;;OAKG;IACH,QAAQ,IAAI,cAAc;IAa1B;;;;;;OAMG;IACH,YAAY,IAAI,cAAc;IAa9B;;OAEG;IACH,QAAQ,IAAI,MAAM,CAAC,MAAM,EAAE,YAAY,CAAC;IAUxC;;OAEG;IACH,MAAM,IAAI,MAAM,CAAC,MAAM,EAAE,eAAe,EAAE,CAAC;IAU3C;;OAEG;IACH,QAAQ,IAAI,MAAM;CAGnB"}
@@ -0,0 +1,94 @@
1
+ /**
2
+ * 数据集项类
3
+ * 封装单个数据集的基本信息,提供便捷的访问方法
4
+ */
5
+ import type { DbtableConfig } from '../utils/core/table-name.js';
6
+ /**
7
+ * 数据集项数据接口
8
+ */
9
+ export interface DatasetItemData {
10
+ /** 数据集ID */
11
+ id?: number | string;
12
+ /** 数据集名称 */
13
+ name: string;
14
+ /** 数据集代码 */
15
+ datasetCode?: string;
16
+ /** 向后兼容:getlist 接口的 code 字段 */
17
+ code?: string;
18
+ /** 向后兼容:get-driven-data 接口的 modelCode 字段 */
19
+ modelCode?: string;
20
+ /** 数据库表配置 */
21
+ dbtableConfig?: DbtableConfig;
22
+ /** 其他扩展字段 */
23
+ [key: string]: any;
24
+ }
25
+ /**
26
+ * 数据集项类
27
+ * 对应 DatasetDetail 的精简版,只包含基础信息
28
+ */
29
+ export declare class DatasetItem {
30
+ /** 原始数据 */
31
+ protected readonly _raw: DatasetItemData;
32
+ constructor(data: DatasetItemData);
33
+ /** 获取数据集ID */
34
+ get id(): number | string | undefined;
35
+ /** 获取数据集名称 */
36
+ get name(): string;
37
+ /**
38
+ * 获取数据集名称(方法形式)
39
+ * 推荐使用此方法而非直接访问 name 属性
40
+ */
41
+ getName(): string;
42
+ /** 获取数据集代码(统一字段) */
43
+ get datasetCode(): string;
44
+ /** 获取数据库表配置 */
45
+ get dbtableConfig(): DbtableConfig | undefined;
46
+ /**
47
+ * 获取表名
48
+ * 优先使用 dbtableConfig.tableName,否则根据 datasetCode 生成虚拟表名
49
+ */
50
+ getTableName(): string;
51
+ /**
52
+ * 判断是否为虚拟表(没有真实的数据库表名)
53
+ */
54
+ isVirtualTable(): boolean;
55
+ /**
56
+ * 获取 PascalCase 格式的模型名
57
+ * 用于生成 SDK 配置
58
+ */
59
+ getModelName(): string;
60
+ /**
61
+ * 转换为配置对象(用于 SDK)
62
+ */
63
+ toConfig(): {
64
+ key: string;
65
+ tableName: string;
66
+ datasetCode: string;
67
+ name: string;
68
+ };
69
+ /**
70
+ * 转换为普通对象
71
+ */
72
+ toJSON(): DatasetItemData;
73
+ /**
74
+ * 获取原始数据
75
+ */
76
+ getRaw(): DatasetItemData;
77
+ /**
78
+ * 判断是否有数据库表配置
79
+ */
80
+ hasDbtableConfig(): boolean;
81
+ /**
82
+ * 获取扩展字段
83
+ */
84
+ getExtendField(key: string): any;
85
+ /**
86
+ * 判断是否有指定扩展字段
87
+ */
88
+ hasExtendField(key: string): boolean;
89
+ /**
90
+ * 转换为字符串(用于调试)
91
+ */
92
+ toString(): string;
93
+ }
94
+ //# sourceMappingURL=DatasetItem.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"DatasetItem.d.ts","sourceRoot":"","sources":["../../../src/core/DatasetItem.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAIH,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,6BAA6B,CAAC;AAEjE;;GAEG;AACH,MAAM,WAAW,eAAe;IAC9B,YAAY;IACZ,EAAE,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC;IACrB,YAAY;IACZ,IAAI,EAAE,MAAM,CAAC;IACb,YAAY;IACZ,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,+BAA+B;IAC/B,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,4CAA4C;IAC5C,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,aAAa;IACb,aAAa,CAAC,EAAE,aAAa,CAAC;IAC9B,aAAa;IACb,CAAC,GAAG,EAAE,MAAM,GAAG,GAAG,CAAC;CACpB;AAED;;;GAGG;AACH,qBAAa,WAAW;IACtB,WAAW;IACX,SAAS,CAAC,QAAQ,CAAC,IAAI,EAAE,eAAe,CAAC;gBAE7B,IAAI,EAAE,eAAe;IAYjC,cAAc;IACd,IAAI,EAAE,IAAI,MAAM,GAAG,MAAM,GAAG,SAAS,CAEpC;IAED,cAAc;IACd,IAAI,IAAI,IAAI,MAAM,CAEjB;IAED;;;OAGG;IACH,OAAO,IAAI,MAAM;IAIjB,oBAAoB;IACpB,IAAI,WAAW,IAAI,MAAM,CAExB;IAED,eAAe;IACf,IAAI,aAAa,IAAI,aAAa,GAAG,SAAS,CAE7C;IAID;;;OAGG;IACH,YAAY,IAAI,MAAM;IAItB;;OAEG;IACH,cAAc,IAAI,OAAO;IAIzB;;;OAGG;IACH,YAAY,IAAI,MAAM;IAMtB;;OAEG;IACH,QAAQ;;;;;;IASR;;OAEG;IACH,MAAM,IAAI,eAAe;IAOzB;;OAEG;IACH,MAAM,IAAI,eAAe;IAMzB;;OAEG;IACH,gBAAgB,IAAI,OAAO;IAI3B;;OAEG;IACH,cAAc,CAAC,GAAG,EAAE,MAAM,GAAG,GAAG;IAIhC;;OAEG;IACH,cAAc,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO;IAIpC;;OAEG;IACH,QAAQ,IAAI,MAAM;CAGnB"}