@chenchaolong/plugin-trade-compliance-workbench 1.0.0 → 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 (194) hide show
  1. package/README.md +46 -1
  2. package/dist/assets/branding/yuneec-logo.png +0 -0
  3. package/dist/assets/templates/CI.xlsx +0 -0
  4. package/dist/assets/templates/CUSTOMS_DECLARATION.xlsx +0 -0
  5. package/dist/assets/templates/PI.xlsx +0 -0
  6. package/dist/assets/templates/PL.xlsx +0 -0
  7. package/dist/index.d.ts +14 -0
  8. package/dist/index.d.ts.map +1 -1
  9. package/dist/lib/adapters/file-storage.d.ts +4 -2
  10. package/dist/lib/adapters/file-storage.d.ts.map +1 -1
  11. package/dist/lib/adapters/file-storage.js +25 -10
  12. package/dist/lib/adapters/file-storage.js.map +1 -1
  13. package/dist/lib/adapters/hsbianma.provider.d.ts +1 -0
  14. package/dist/lib/adapters/hsbianma.provider.d.ts.map +1 -1
  15. package/dist/lib/adapters/hsbianma.provider.js +32 -3
  16. package/dist/lib/adapters/hsbianma.provider.js.map +1 -1
  17. package/dist/lib/adapters/translation.provider.d.ts +3 -0
  18. package/dist/lib/adapters/translation.provider.d.ts.map +1 -1
  19. package/dist/lib/adapters/translation.provider.js +15 -6
  20. package/dist/lib/adapters/translation.provider.js.map +1 -1
  21. package/dist/lib/constants.d.ts +3 -2
  22. package/dist/lib/constants.d.ts.map +1 -1
  23. package/dist/lib/constants.js +3 -2
  24. package/dist/lib/constants.js.map +1 -1
  25. package/dist/lib/demo-data.definitions.d.ts +28 -0
  26. package/dist/lib/demo-data.definitions.d.ts.map +1 -0
  27. package/dist/lib/demo-data.definitions.js +236 -0
  28. package/dist/lib/demo-data.definitions.js.map +1 -0
  29. package/dist/lib/demo-data.entity.d.ts +9 -0
  30. package/dist/lib/demo-data.entity.d.ts.map +1 -0
  31. package/dist/lib/demo-data.entity.js +24 -0
  32. package/dist/lib/demo-data.entity.js.map +1 -0
  33. package/dist/lib/demo-data.ids.d.ts +4 -0
  34. package/dist/lib/demo-data.ids.d.ts.map +1 -0
  35. package/dist/lib/demo-data.ids.js +19 -0
  36. package/dist/lib/demo-data.ids.js.map +1 -0
  37. package/dist/lib/demo-data.service.d.ts +26 -0
  38. package/dist/lib/demo-data.service.d.ts.map +1 -0
  39. package/dist/lib/demo-data.service.js +124 -0
  40. package/dist/lib/demo-data.service.js.map +1 -0
  41. package/dist/lib/domain/default-settings.d.ts +1 -0
  42. package/dist/lib/domain/default-settings.d.ts.map +1 -1
  43. package/dist/lib/domain/default-settings.js +1 -0
  44. package/dist/lib/domain/default-settings.js.map +1 -1
  45. package/dist/lib/domain/risk-notice.d.ts +59 -0
  46. package/dist/lib/domain/risk-notice.d.ts.map +1 -0
  47. package/dist/lib/domain/risk-notice.js +30 -0
  48. package/dist/lib/domain/risk-notice.js.map +1 -0
  49. package/dist/lib/entities/catalog.entity.d.ts.map +1 -1
  50. package/dist/lib/entities/catalog.entity.js +4 -2
  51. package/dist/lib/entities/catalog.entity.js.map +1 -1
  52. package/dist/lib/entities/customer.entity.d.ts +9 -2
  53. package/dist/lib/entities/customer.entity.d.ts.map +1 -1
  54. package/dist/lib/entities/customer.entity.js +29 -1
  55. package/dist/lib/entities/customer.entity.js.map +1 -1
  56. package/dist/lib/entities/index.d.ts +2 -2
  57. package/dist/lib/entities/index.d.ts.map +1 -1
  58. package/dist/lib/entities/index.js +2 -2
  59. package/dist/lib/entities/index.js.map +1 -1
  60. package/dist/lib/entities/procurement.entity.d.ts +6 -4
  61. package/dist/lib/entities/procurement.entity.d.ts.map +1 -1
  62. package/dist/lib/entities/procurement.entity.js +9 -1
  63. package/dist/lib/entities/procurement.entity.js.map +1 -1
  64. package/dist/lib/entities/settings.entity.d.ts +12 -2
  65. package/dist/lib/entities/settings.entity.d.ts.map +1 -1
  66. package/dist/lib/entities/settings.entity.js +40 -0
  67. package/dist/lib/entities/settings.entity.js.map +1 -1
  68. package/dist/lib/entities/shared.entity.d.ts +10 -5
  69. package/dist/lib/entities/shared.entity.d.ts.map +1 -1
  70. package/dist/lib/entities/shared.entity.js +22 -1
  71. package/dist/lib/entities/shared.entity.js.map +1 -1
  72. package/dist/lib/remote-components/trade-compliance-workbench/app.css +1 -0
  73. package/dist/lib/remote-components/trade-compliance-workbench/app.js +63 -277
  74. package/dist/lib/remote-ui/analytics-contracts.d.ts +106 -0
  75. package/dist/lib/remote-ui/analytics-contracts.d.ts.map +1 -0
  76. package/dist/lib/remote-ui/analytics-contracts.js +4 -0
  77. package/dist/lib/remote-ui/analytics-contracts.js.map +1 -0
  78. package/dist/lib/remote-ui/app-source.d.ts +2 -0
  79. package/dist/lib/remote-ui/app-source.d.ts.map +1 -0
  80. package/dist/lib/remote-ui/app-source.js +753 -0
  81. package/dist/lib/remote-ui/app-source.js.map +1 -0
  82. package/dist/lib/remote-ui/bridge.d.ts +36 -0
  83. package/dist/lib/remote-ui/bridge.d.ts.map +1 -0
  84. package/dist/lib/remote-ui/bridge.js +159 -0
  85. package/dist/lib/remote-ui/bridge.js.map +1 -0
  86. package/dist/lib/remote-ui/components/data-grid.d.ts +34 -0
  87. package/dist/lib/remote-ui/components/data-grid.d.ts.map +1 -0
  88. package/dist/lib/remote-ui/components/data-grid.js +59 -0
  89. package/dist/lib/remote-ui/components/data-grid.js.map +1 -0
  90. package/dist/lib/remote-ui/components/forms.d.ts +63 -0
  91. package/dist/lib/remote-ui/components/forms.d.ts.map +1 -0
  92. package/dist/lib/remote-ui/components/forms.js +117 -0
  93. package/dist/lib/remote-ui/components/forms.js.map +1 -0
  94. package/dist/lib/remote-ui/components/layout.d.ts +34 -0
  95. package/dist/lib/remote-ui/components/layout.d.ts.map +1 -0
  96. package/dist/lib/remote-ui/components/layout.js +89 -0
  97. package/dist/lib/remote-ui/components/layout.js.map +1 -0
  98. package/dist/lib/remote-ui/contract-import.d.ts +82 -0
  99. package/dist/lib/remote-ui/contract-import.d.ts.map +1 -0
  100. package/dist/lib/remote-ui/contract-import.js +102 -0
  101. package/dist/lib/remote-ui/contract-import.js.map +1 -0
  102. package/dist/lib/remote-ui/contracts.d.ts +257 -0
  103. package/dist/lib/remote-ui/contracts.d.ts.map +1 -0
  104. package/dist/lib/remote-ui/contracts.js +12 -0
  105. package/dist/lib/remote-ui/contracts.js.map +1 -0
  106. package/dist/lib/remote-ui/customer-contract-contracts.d.ts +227 -0
  107. package/dist/lib/remote-ui/customer-contract-contracts.d.ts.map +1 -0
  108. package/dist/lib/remote-ui/customer-contract-contracts.js +10 -0
  109. package/dist/lib/remote-ui/customer-contract-contracts.js.map +1 -0
  110. package/dist/lib/remote-ui/model.d.ts +31 -0
  111. package/dist/lib/remote-ui/model.d.ts.map +1 -0
  112. package/dist/lib/remote-ui/model.js +248 -0
  113. package/dist/lib/remote-ui/model.js.map +1 -0
  114. package/dist/lib/remote-ui/pages/analytics.d.ts +12 -0
  115. package/dist/lib/remote-ui/pages/analytics.d.ts.map +1 -0
  116. package/dist/lib/remote-ui/pages/analytics.js +123 -0
  117. package/dist/lib/remote-ui/pages/analytics.js.map +1 -0
  118. package/dist/lib/remote-ui/pages/catalogs.d.ts +225 -0
  119. package/dist/lib/remote-ui/pages/catalogs.d.ts.map +1 -0
  120. package/dist/lib/remote-ui/pages/catalogs.js +572 -0
  121. package/dist/lib/remote-ui/pages/catalogs.js.map +1 -0
  122. package/dist/lib/remote-ui/pages/contracts.d.ts +80 -0
  123. package/dist/lib/remote-ui/pages/contracts.d.ts.map +1 -0
  124. package/dist/lib/remote-ui/pages/contracts.js +396 -0
  125. package/dist/lib/remote-ui/pages/contracts.js.map +1 -0
  126. package/dist/lib/remote-ui/pages/files.d.ts +31 -0
  127. package/dist/lib/remote-ui/pages/files.d.ts.map +1 -0
  128. package/dist/lib/remote-ui/pages/files.js +64 -0
  129. package/dist/lib/remote-ui/pages/files.js.map +1 -0
  130. package/dist/lib/remote-ui/pages/home.d.ts +71 -0
  131. package/dist/lib/remote-ui/pages/home.d.ts.map +1 -0
  132. package/dist/lib/remote-ui/pages/home.js +136 -0
  133. package/dist/lib/remote-ui/pages/home.js.map +1 -0
  134. package/dist/lib/remote-ui/pages/procurement.d.ts +36 -0
  135. package/dist/lib/remote-ui/pages/procurement.d.ts.map +1 -0
  136. package/dist/lib/remote-ui/pages/procurement.js +370 -0
  137. package/dist/lib/remote-ui/pages/procurement.js.map +1 -0
  138. package/dist/lib/remote-ui/pages/sales.d.ts +12 -0
  139. package/dist/lib/remote-ui/pages/sales.d.ts.map +1 -0
  140. package/dist/lib/remote-ui/pages/sales.js +106 -0
  141. package/dist/lib/remote-ui/pages/sales.js.map +1 -0
  142. package/dist/lib/remote-ui/pages/settings.d.ts +34 -0
  143. package/dist/lib/remote-ui/pages/settings.d.ts.map +1 -0
  144. package/dist/lib/remote-ui/pages/settings.js +259 -0
  145. package/dist/lib/remote-ui/pages/settings.js.map +1 -0
  146. package/dist/lib/remote-ui/procurement-contracts.d.ts +177 -0
  147. package/dist/lib/remote-ui/procurement-contracts.d.ts.map +1 -0
  148. package/dist/lib/remote-ui/procurement-contracts.js +2 -0
  149. package/dist/lib/remote-ui/procurement-contracts.js.map +1 -0
  150. package/dist/lib/remote-ui/sales-contracts.d.ts +133 -0
  151. package/dist/lib/remote-ui/sales-contracts.d.ts.map +1 -0
  152. package/dist/lib/remote-ui/sales-contracts.js +2 -0
  153. package/dist/lib/remote-ui/sales-contracts.js.map +1 -0
  154. package/dist/lib/remote-ui/settings-contracts.d.ts +114 -0
  155. package/dist/lib/remote-ui/settings-contracts.d.ts.map +1 -0
  156. package/dist/lib/remote-ui/settings-contracts.js +6 -0
  157. package/dist/lib/remote-ui/settings-contracts.js.map +1 -0
  158. package/dist/lib/remote-ui/upload-policy.d.ts +18 -0
  159. package/dist/lib/remote-ui/upload-policy.d.ts.map +1 -0
  160. package/dist/lib/remote-ui/upload-policy.js +56 -0
  161. package/dist/lib/remote-ui/upload-policy.js.map +1 -0
  162. package/dist/lib/runtime-validation.d.ts +61 -0
  163. package/dist/lib/runtime-validation.d.ts.map +1 -0
  164. package/dist/lib/runtime-validation.js +243 -0
  165. package/dist/lib/runtime-validation.js.map +1 -0
  166. package/dist/lib/sales-file.service.d.ts +54 -6
  167. package/dist/lib/sales-file.service.d.ts.map +1 -1
  168. package/dist/lib/sales-file.service.js +278 -33
  169. package/dist/lib/sales-file.service.js.map +1 -1
  170. package/dist/lib/trade-compliance.config.d.ts +32 -0
  171. package/dist/lib/trade-compliance.config.d.ts.map +1 -1
  172. package/dist/lib/trade-compliance.config.js +16 -4
  173. package/dist/lib/trade-compliance.config.js.map +1 -1
  174. package/dist/lib/types.d.ts +253 -1
  175. package/dist/lib/types.d.ts.map +1 -1
  176. package/dist/lib/types.js +24 -0
  177. package/dist/lib/types.js.map +1 -1
  178. package/dist/lib/workbench-view.provider.d.ts +675 -38
  179. package/dist/lib/workbench-view.provider.d.ts.map +1 -1
  180. package/dist/lib/workbench-view.provider.js +411 -40
  181. package/dist/lib/workbench-view.provider.js.map +1 -1
  182. package/dist/lib/workbench.middleware.d.ts +70 -19
  183. package/dist/lib/workbench.middleware.d.ts.map +1 -1
  184. package/dist/lib/workbench.middleware.js +5 -1
  185. package/dist/lib/workbench.middleware.js.map +1 -1
  186. package/dist/lib/workbench.plugin.d.ts.map +1 -1
  187. package/dist/lib/workbench.plugin.js +6 -4
  188. package/dist/lib/workbench.plugin.js.map +1 -1
  189. package/dist/lib/workbench.service.d.ts +629 -48
  190. package/dist/lib/workbench.service.d.ts.map +1 -1
  191. package/dist/lib/workbench.service.js +1818 -300
  192. package/dist/lib/workbench.service.js.map +1 -1
  193. package/package.json +15 -4
  194. package/scripts/seed-demo-data.mjs +138 -0
@@ -0,0 +1,236 @@
1
+ import { parsePurchaseContractNo } from './domain/contract-number.js';
2
+ import { normalizeExactName } from './domain/normalization.js';
3
+ import { scopedDemoId } from './demo-data.ids.js';
4
+ const catalogTypes = ['DUAL_USE', 'OVERSEAS_SANCTION'];
5
+ const clauseTypes = ['CONTRACT_AMOUNT', 'TAX_RATE', 'PRICE_TERMS', 'TRANSPORT', 'WARRANTY', 'BREACH_LIABILITY', 'PAYMENT_TERMS'];
6
+ const riskLevels = ['LOW', 'MEDIUM', 'HIGH'];
7
+ const salesFileTypes = ['PI', 'CI', 'PL', 'CUSTOMS_DECLARATION'];
8
+ const sourceType = 'FILE_IMPORT';
9
+ const importMode = 'APPEND';
10
+ const importStatus = 'SUCCEEDED';
11
+ const fileFormat = 'XLSX';
12
+ const lineSource = 'CONTRACT_EXTRACTED';
13
+ const hsCodeStatus = 'MANUALLY_CONFIRMED';
14
+ const hsCodeSource = 'HS_LOOKUP';
15
+ const englishNameSource = 'AI_TRANSLATION';
16
+ const vatRateSource = 'CONTRACT_EXTRACTED';
17
+ const refundRateSource = 'HS_LOOKUP';
18
+ const refundValidationMethod = 'PROVIDER_DATE_RANGE';
19
+ const analysisStatus = 'SUCCEEDED';
20
+ const rateSource = 'MANUAL';
21
+ export function buildDemoDataDefinitions(scope, currentYear = new Date().getFullYear()) {
22
+ const id = (entityType, businessKey) => scopedDemoId(scope, entityType, String(businessKey));
23
+ const importTasks = buildImportTasks(currentYear, id);
24
+ const controlledImportTasks = importTasks.filter(task => task.documentType === 'CONTROLLED_CATALOG');
25
+ const sanctionImportTask = importTasks.find(task => task.documentType === 'SANCTION_CATALOG');
26
+ const purchaseImportTasks = importTasks.filter(task => task.documentType === 'PURCHASE_CONTRACT');
27
+ const customerImportTasks = importTasks.filter(task => task.documentType === 'CUSTOMER_CONTRACT');
28
+ const controlledBatches = catalogTypes.map((catalogType, index) => ({
29
+ id: id('controlled_batch', catalogType), catalogType, sourceFileId: `demo-source/controlled-${index + 1}.xlsx`, sourceFileName: `演示管控目录-${index + 1}.xlsx`, importMode,
30
+ replacedBatchId: null, totalCount: 12, successCount: 12, duplicateCount: 0, invalidCount: 0, importTaskId: controlledImportTasks[index].id
31
+ }));
32
+ const controlledGoods = Array.from({ length: 24 }, (_, index) => {
33
+ const catalogType = catalogTypes[index % catalogTypes.length];
34
+ const productName = controlledProductNames[index];
35
+ return {
36
+ id: id('controlled_goods', `${catalogType}:${index + 1}`), batchId: controlledBatches[index % controlledBatches.length].id, sourceType, catalogType, productName,
37
+ normalizedProductName: normalizeExactName(productName), hsCode: `8806${String(2100 + index).padStart(4, '0')}`,
38
+ normalizedHsCode: `8806${String(2100 + index).padStart(4, '0')}`, controlDescription: catalogType === 'DUAL_USE' ? '无人机及关键部件出口需核验最终用户和用途。' : '目的地存在境外制裁管控要求,出货前需复核。',
39
+ sourceLocation: `Sheet1!A${index + 2}`, sourceContent: `${productName} 演示目录原文`, deletedAt: null, deletedById: null, deleteOperation: null
40
+ };
41
+ });
42
+ const sanctionBatches = [{
43
+ id: id('sanction_batch', 'primary'), sourceFileId: 'demo-source/sanctions.xlsx', sourceFileName: '演示公司制裁目录.xlsx', importMode, replacedBatchId: null,
44
+ totalCount: 22, successCount: 22, duplicateCount: 0, invalidCount: 0, importTaskId: sanctionImportTask.id
45
+ }];
46
+ const sanctionedCompanies = Array.from({ length: 22 }, (_, index) => {
47
+ const companyName = sanctionedCompanyNames[index];
48
+ return {
49
+ id: id('sanctioned_company', index + 1), batchId: sanctionBatches[0].id, sourceType, companyName, normalizedCompanyName: normalizeExactName(companyName),
50
+ countryOrRegion: sanctionedCountries[index % sanctionedCountries.length], sanctionListSource: index % 2 === 0 ? 'OFAC SDN' : 'EU Consolidated List',
51
+ normalizedSanctionListSource: normalizeExactName(index % 2 === 0 ? 'OFAC SDN' : 'EU Consolidated List'), sanctionReason: '演示制裁名单命中记录,仅用于产品功能展示。',
52
+ effectiveDate: date(currentYear, (index % 10) + 1, (index % 20) + 1), remarks: index % 3 === 0 ? '高风险交易对手,需升级审批。' : null,
53
+ sourceLocation: `Sanctions!A${index + 2}`, sourceContent: `${companyName} 演示制裁原文`, deletedAt: null, deletedById: null, deleteOperation: null
54
+ };
55
+ });
56
+ const suppliers = supplierNames.map((name, index) => ({
57
+ id: id('supplier', `SUP-${String(index + 1).padStart(3, '0')}`), code: `SUP-${String(index + 1).padStart(3, '0')}`, name, normalizedName: normalizeExactName(name), shortName: name.slice(0, 6),
58
+ address: `深圳市光明区演示产业园 ${index + 1} 栋`, contactName: demoContacts[index], phone: `1380000${String(1000 + index)}`,
59
+ wechat: `demo_supplier_${index + 1}`, email: `supplier${index + 1}@example.test`, taxNumber: `91440300DEMO${String(index + 1).padStart(4, '0')}`,
60
+ paymentAccount: `62170000000000${String(index + 1).padStart(4, '0')}`, bankName: index % 2 === 0 ? '中国银行深圳分行' : '招商银行深圳分行',
61
+ taxpayerRating: index % 3 === 0 ? 'A' : 'B', website: `https://supplier-${index + 1}.example.test`, businessProducts: supplierProducts[index],
62
+ complianceCheckedAt: timestamp(currentYear, 1, index + 2), deletedAt: null, deletedById: null, deleteOperation: null
63
+ }));
64
+ const purchaseOrders = suppliers.map((supplier, index) => {
65
+ const base = `DEMO-${String(index + 1).padStart(3, '0')}`;
66
+ const contractNo = index % 2 === 0 ? `${base}C` : `${base}-1C`;
67
+ const amount = Array.from({ length: 3 }, (_, lineIndex) => purchaseLineAmount(index, lineIndex)).reduce((sum, value) => sum + value, 0);
68
+ return {
69
+ id: id('purchase_order', contractNo), supplierId: supplier.id, contractNo, normalizedContractNo: contractNo, orderDate: date(currentYear, index + 1, 8 + index),
70
+ contractAmountCny: amount.toFixed(4), paidAmountCny: (index % 3 === 0 ? amount : index % 3 === 1 ? amount * 0.45 : 0).toFixed(4),
71
+ refundedAmountCny: (index % 2 === 0 ? amount * 0.015 : 0).toFixed(4), sourceFileId: `demo-source/purchase-${index + 1}.xlsx`,
72
+ sourceFileName: `演示采购合同-${index + 1}.xlsx`, importTaskId: purchaseImportTasks[index].id, amountMismatchConfirmedAt: null, amountMismatchConfirmedById: null,
73
+ deletedAt: null, deletedById: null, deleteOperation: null
74
+ };
75
+ });
76
+ const purchaseLines = purchaseOrders.flatMap((order, orderIndex) => Array.from({ length: 3 }, (_, lineIndex) => {
77
+ const index = orderIndex * 3 + lineIndex;
78
+ const quantity = purchaseLineQuantity(orderIndex, lineIndex);
79
+ const unitPrice = purchaseLineUnitPrice(orderIndex, lineIndex);
80
+ return {
81
+ id: id('purchase_line', `${String(order.contractNo)}:${lineIndex + 1}`), purchaseOrderId: order.id, lineNumber: lineIndex + 1, sourceType: lineSource,
82
+ productName: purchaseProductNames[index], normalizedProductName: normalizeExactName(purchaseProductNames[index]), englishName: purchaseEnglishNames[index], englishNameSource,
83
+ productDescription: `面向国际市场的${purchaseProductNames[index]},含标准包装与技术资料。`, modelSpecification: `TCW-${orderIndex + 1}${lineIndex + 1}00`, unit: lineIndex === 2 ? 'SET' : 'PCS',
84
+ quantity: quantity.toFixed(6), unitPriceTaxIncluded: unitPrice.toFixed(6), lineAmountTaxIncluded: (quantity * unitPrice).toFixed(4),
85
+ vatRate: '0.13000000', vatRateSource, hsCode: controlledGoods[index].hsCode, hsCodeStatus, hsCodeSource, hsCodeReferenceSnapshotId: null,
86
+ refundRate: lineIndex === 0 ? '0.13000000' : '0.09000000', refundRateSource, refundPolicyReference: '财税演示政策 2026-01', refundPolicyDate: date(currentYear, 1, 1),
87
+ refundValidationMethod, refundConfirmedAt: timestamp(currentYear, 1, 5), refundConfirmedById: null, amountMismatchConfirmedAt: null, amountMismatchConfirmedById: null,
88
+ sourceLocation: `Products!A${lineIndex + 2}`, sourceContent: `${purchaseProductNames[index]} 采购合同原文`, complianceCheckedAt: timestamp(currentYear, orderIndex + 1, 20),
89
+ deletedAt: null, deletedById: null, deleteOperation: null
90
+ };
91
+ }));
92
+ const productMatches = purchaseLines.filter((_, index) => index % 3 === 0).map((line, index) => ({
93
+ id: id('product_match', index + 1), purchaseOrderLineId: line.id, controlledGoodsId: controlledGoods[index * 3].id, catalogType: controlledGoods[index * 3].catalogType,
94
+ matchMethod: 'HS_CODE_EXACT', similarityScore: '1.000000', matchingRuleVersion: 'DEMO_V1', matchingThreshold: '0.900000',
95
+ matchedAt: timestamp(currentYear, index + 1, 21), deletedAt: null, invalidationReason: null
96
+ }));
97
+ const customers = customerNames.map((name, index) => {
98
+ const pricingProfitRateStatus = index === customerNames.length - 1 ? 'MISSING' : 'CONFIGURED';
99
+ const complianceCheckStatus = index % 2 === 0 ? 'CHECKED' : 'UNCHECKED';
100
+ return {
101
+ id: id('customer', `CUS-${String(index + 1).padStart(3, '0')}`), code: `CUS-${String(index + 1).padStart(3, '0')}`, name, normalizedName: normalizeExactName(name), shortName: customerShortNames[index],
102
+ country: customerCountries[index], address: customerAddresses[index], contactName: customerContacts[index], phone: `+1-202-555-${String(1100 + index)}`,
103
+ wechat: null, email: `buyer${index + 1}@example.test`, taxNumber: `TAX-DEMO-${index + 1}`, paymentAccount: `DEMO-CUSTOMER-${index + 1}`,
104
+ bankName: index % 2 === 0 ? 'Citibank N.A.' : 'Deutsche Bank', taxpayerRating: null, website: `https://customer-${index + 1}.example.test`,
105
+ businessProducts: '无人机、航拍设备及配套零部件', defaultPricingProfitRate: pricingProfitRateStatus === 'CONFIGURED' ? (0.12 + index * 0.01).toFixed(8) : null,
106
+ pricingProfitRateStatus, complianceCheckStatus, complianceCheckedAt: complianceCheckStatus === 'CHECKED' ? timestamp(currentYear, index + 1, 18) : null,
107
+ deletedAt: null, deletedById: null, deleteOperation: null
108
+ };
109
+ });
110
+ const companyMatches = [...[0, 1, 2, 3].map((index) => ({
111
+ id: id('company_match', `SUPPLIER:${String(suppliers[index].code)}`), subjectType: 'SUPPLIER', supplierId: suppliers[index].id, customerId: null,
112
+ sanctionedCompanyId: sanctionedCompanies[index].id, matchedNormalizedName: sanctionedCompanies[index].normalizedCompanyName,
113
+ checkedAt: timestamp(currentYear, 2, index + 1), deletedAt: null, invalidationReason: null
114
+ })), ...[0, 1].map((index) => ({
115
+ id: id('company_match', `CUSTOMER:${String(customers[index].code)}`), subjectType: 'CUSTOMER', supplierId: null, customerId: customers[index].id,
116
+ sanctionedCompanyId: sanctionedCompanies[index + 4].id, matchedNormalizedName: sanctionedCompanies[index + 4].normalizedCompanyName,
117
+ checkedAt: timestamp(currentYear, 2, index + 5), deletedAt: null, invalidationReason: null
118
+ }))];
119
+ const analysisRuns = customers.map((_, index) => ({
120
+ id: id('analysis_run', `DEMO-${String(index + 1).padStart(3, '0')}X:INITIAL`), customerContractId: id('customer_contract', `DEMO-${String(index + 1).padStart(3, '0')}X`), importTaskId: customerImportTasks[index].id, analysisType: 'INITIAL', status: analysisStatus,
121
+ promptVersion: 'DEMO_CONTRACT_V1', modelName: 'demo-analysis', errorCode: null, errorMessage: null, analysisInput: null, executionCommand: null,
122
+ expiresAt: null, commandDispatchedAt: timestamp(currentYear, index + 1, 10), startedAt: timestamp(currentYear, index + 1, 10), completedAt: timestamp(currentYear, index + 1, 10), createdById: null
123
+ }));
124
+ const customerContracts = customers.map((customer, index) => {
125
+ const base = `DEMO-${String(index + 1).padStart(3, '0')}`;
126
+ return {
127
+ id: id('customer_contract', `${base}X`), customerId: customer.id, contractNo: `${base}X`, normalizedContractNo: `${base}X`, contractAmountReviewCny: (320000 + index * 98000).toFixed(4),
128
+ signedAt: date(currentYear, index + 1, 5 + index), overallRiskLevel: riskLevels[(index + 1) % riskLevels.length], latestAnalysisRunId: analysisRuns[index].id,
129
+ currentReanalysisRunId: null, sourceFileId: `demo-source/customer-${index + 1}.xlsx`, sourceFileName: `演示客户合同-${index + 1}.xlsx`, importTaskId: customerImportTasks[index].id,
130
+ deletedAt: null, deletedById: null, deleteOperation: null
131
+ };
132
+ });
133
+ const clauses = customerContracts.flatMap((contract, contractIndex) => clauseTypes.map((clauseType, clauseIndex) => ({
134
+ id: id('contract_clause', `${String(contract.contractNo)}:${clauseType}`), customerContractId: contract.id, clauseType, extractionStatus: 'FOUND',
135
+ sourceText: clauseTexts[clauseType], reviewedText: clauseIndex === 5 ? `${clauseTexts[clauseType]}(建议限制责任上限)` : clauseTexts[clauseType],
136
+ sourceLocation: `第 ${clauseIndex + 2} 条`, sourceContent: clauseTexts[clauseType], deletedAt: null, deletedById: null, deleteOperation: null
137
+ })));
138
+ const clauseAnalyses = customerContracts.flatMap((_, contractIndex) => clauseTypes.map((clauseType, clauseIndex) => {
139
+ const riskLevel = riskLevels[(contractIndex + clauseIndex) % riskLevels.length];
140
+ return {
141
+ id: id('clause_analysis', `${String(customerContracts[contractIndex].contractNo)}:${clauseType}`), analysisRunId: analysisRuns[contractIndex].id, customerContractClauseId: clauses[contractIndex * clauseTypes.length + clauseIndex].id,
142
+ clauseType, analyzedTextSnapshot: clauseTexts[clauseType], riskLevel, riskMessageZh: riskMessages[riskLevel], suggestionZh: riskSuggestions[riskLevel]
143
+ };
144
+ }));
145
+ const salesManualData = customerContracts.map((contract, index) => ({
146
+ id: id('sales_manual', `${String(contract.contractNo)}:${String(purchaseOrders[index].contractNo)}`), customerContractId: contract.id, purchaseOrderId: purchaseOrders[index].id,
147
+ pricingProfitRateOverride: index % 2 === 0 ? (0.18 + index * 0.005).toFixed(8) : null,
148
+ receivedAmountCny: index % 3 === 0 ? (90000 + index * 12000).toFixed(4) : index % 3 === 1 ? '0.0000' : (150000 + index * 10000).toFixed(4),
149
+ deletedAt: null, deletedById: null, deleteOperation: null
150
+ }));
151
+ const generatedSalesFiles = salesFileTypes.map((fileType, index) => {
152
+ const editVersion = [0, 1, 0, 2][index];
153
+ return {
154
+ id: id('generated_sales_file', `DEMO-FILE-${index + 1}`), customerContractId: customerContracts[index % customerContracts.length].id, purchaseOrderId: purchaseOrders[index % customerContracts.length].id,
155
+ salesOrderNoSnapshot: parsePurchaseContractNo(String(purchaseOrders[index % customerContracts.length].normalizedContractNo)).salesOrderNo, fileType,
156
+ documentNo: fileType === 'PI' ? 'DEMO-001P' : fileType === 'CI' ? 'DEMO-002C' : null, fileName: `DEMO-20260725-${fileType}.xlsx`, editVersion,
157
+ templateVersion: 'fixed-v1', templateChecksum: 'demo-20260725-template-checksum', generationSnapshotVersion: 'demo-v1',
158
+ generationSnapshot: { marker: 'DEMO-20260725', businessKey: `DEMO-FILE-${index + 1}` }, generationWarnings: index === 3 ? [{ code: 'DEMO_REVIEW', message: '演示报关资料待人工复核' }] : null,
159
+ pricingProfitRate: (0.15 + index * 0.01).toFixed(8), complianceProfitRate: (0.08 + index * 0.01).toFixed(8), exchangeCost: index % 2 === 0 ? '6.25000000' : null,
160
+ profitRuleSnapshot: { status: 'ACTIVE', ruleVersion: 'COMPLIANCE_V1', minimumOrderProfitRate: '0.05' },
161
+ bankType: fileType === 'CUSTOMS_DECLARATION' ? null : index % 2 === 0 ? 'OVERSEAS_CNY' : 'OVERSEAS_USD',
162
+ bankSnapshot: fileType === 'CUSTOMS_DECLARATION' ? null : { beneficiary: 'YUNEEC TECHNOLOGY(SHENZHEN)CO.,LTD', accountType: index % 2 === 0 ? 'OVERSEAS_CNY' : 'OVERSEAS_USD' },
163
+ generatedById: null, generatedAt: timestamp(currentYear, index + 1, 25), lastEditedById: null, lastEditedAt: editVersion > 0 ? timestamp(currentYear, index + 1, 26) : null,
164
+ deletedAt: null, deletedById: null, deleteOperation: null
165
+ };
166
+ });
167
+ const monthlyRates = Array.from({ length: 12 }, (_, index) => ({
168
+ id: id('monthly_rate', index + 1), year: currentYear, month: index + 1, currencyCode: 'USD', usdToCnyRate: (7.08 + index * 0.013).toFixed(8),
169
+ sourceType: rateSource, sourceReference: `DEMO-20260725 月度安全汇率 ${index + 1}`, revision: 1, deletedAt: null, deletedById: null, deleteOperation: null
170
+ }));
171
+ return { importTasks, controlledBatches, controlledGoods, sanctionBatches, sanctionedCompanies, suppliers, purchaseOrders, purchaseLines, productMatches, customers, companyMatches, customerContracts, analysisRuns, clauses, clauseAnalyses, salesManualData, generatedSalesFiles, monthlyRates };
172
+ }
173
+ function buildImportTasks(currentYear, id) {
174
+ const taskSources = [
175
+ ...catalogTypes.map((catalogType, index) => ({
176
+ documentType: 'CONTROLLED_CATALOG',
177
+ businessKey: catalogType,
178
+ sourceFileId: `demo-source/controlled-${index + 1}.xlsx`,
179
+ sourceFileName: `演示管控目录-${index + 1}.xlsx`
180
+ })),
181
+ { documentType: 'SANCTION_CATALOG', businessKey: 'primary', sourceFileId: 'demo-source/sanctions.xlsx', sourceFileName: '演示公司制裁目录.xlsx' },
182
+ ...supplierNames.map((_, index) => {
183
+ const base = `DEMO-${String(index + 1).padStart(3, '0')}`;
184
+ const contractNo = index % 2 === 0 ? `${base}C` : `${base}-1C`;
185
+ return {
186
+ documentType: 'PURCHASE_CONTRACT',
187
+ businessKey: base,
188
+ sourceFileId: `demo-source/purchase-${index + 1}.xlsx`,
189
+ sourceFileName: `演示采购合同-${index + 1}.xlsx`,
190
+ resultEntityId: id('purchase_order', contractNo)
191
+ };
192
+ }),
193
+ ...customerNames.map((_, index) => {
194
+ const contractNo = `DEMO-${String(index + 1).padStart(3, '0')}X`;
195
+ return {
196
+ documentType: 'CUSTOMER_CONTRACT',
197
+ businessKey: contractNo,
198
+ sourceFileId: `demo-source/customer-${index + 1}.xlsx`,
199
+ sourceFileName: `演示客户合同-${index + 1}.xlsx`,
200
+ resultEntityId: id('customer_contract', contractNo)
201
+ };
202
+ })
203
+ ];
204
+ return taskSources.map(({ documentType, businessKey, sourceFileId, sourceFileName, resultEntityId = null }, index) => ({
205
+ id: id('import_task', `${documentType}:${businessKey}`), documentType, sourceFileId, sourceFileName, sourceFileFormat: fileFormat,
206
+ sourcePlatformFileId: null, status: importStatus, executionInput: null, executionCommand: null, commandDispatchedAt: null, resultPayloadVersion: 'demo-v1',
207
+ resultPayload: { marker: 'DEMO-20260725' }, resultEntityId, currentReanalysisRunId: null, reviewSavedAt: timestamp(currentYear, 1, 2),
208
+ retryOfTaskId: null, errorCode: null, errorMessage: null, queuedAt: timestamp(currentYear, 1, 2), startedAt: timestamp(currentYear, 1, 2), completedAt: timestamp(currentYear, 1, 2),
209
+ machineElapsedMs: 1250 + index * 100, createdById: null
210
+ }));
211
+ }
212
+ function purchaseLineQuantity(orderIndex, lineIndex) { return 20 + lineIndex * 15 + orderIndex; }
213
+ function purchaseLineUnitPrice(orderIndex, lineIndex) { return 1600 + orderIndex * 225 + lineIndex * 380; }
214
+ function purchaseLineAmount(orderIndex, lineIndex) { return purchaseLineQuantity(orderIndex, lineIndex) * purchaseLineUnitPrice(orderIndex, lineIndex); }
215
+ function date(year, month, day) { return `${year}-${String(month).padStart(2, '0')}-${String(day).padStart(2, '0')}`; }
216
+ function timestamp(year, month, day) { return new Date(`${date(year, month, day)}T04:00:00.000Z`); }
217
+ const controlledProductNames = ['专业级多旋翼无人机', '长航时固定翼无人机', '高精度惯性导航模块', '热成像云台相机', '飞控计算机', '加密数传模块', '高能量密度锂电池', '无人机遥控终端', '卫星定位接收机', '复合材料螺旋桨', '激光测距模块', '夜视成像组件', '抗干扰天线', '航空级电机', '电子调速器', '图像传输模块', '自动驾驶仪', '毫米波雷达', '机载通信终端', '地面控制站', '航拍稳定器', '电源管理模块', '高空测绘相机', '无人机维修套件'];
218
+ const sanctionedCompanyNames = ['深圳市天翼智能科技有限公司', '东莞市精航电子有限公司', '惠州市云端动力有限公司', '广州视界光电有限公司', 'Skyline Robotics Inc.', 'Nordic Aerial Solutions AB', 'Red Sea Aviation Supply', 'Baltic Drone Systems', 'Caspian Precision Tools', 'Atlas Navigation GmbH', 'Falcon Optics Trading', 'Polar Route Logistics', 'Summit Radio Systems', 'Nova Aerospace Parts', 'Vertex Composite Works', 'Meridian Sensor Lab', 'Titan Flight Controls', 'Aurora Imaging Corp', 'Frontier Propulsion Ltd', 'Helios Data Links', 'Vector Ground Systems', 'Zenith Battery Export'];
219
+ const sanctionedCountries = ['United States', 'Germany', 'United Arab Emirates', 'Russia', 'United Kingdom'];
220
+ const supplierNames = ['深圳市天翼智能科技有限公司', '东莞市精航电子有限公司', '惠州市云端动力有限公司', '广州视界光电有限公司', '苏州领航复合材料有限公司', '杭州星链通信技术有限公司', '成都远景传感科技有限公司', '武汉蓝图航空设备有限公司'];
221
+ const demoContacts = ['张伟', '李娜', '王强', '陈静', '刘洋', '赵敏', '周磊', '吴芳'];
222
+ const supplierProducts = ['无人机整机与飞控', '数传及电子元件', '动力电池与电机', '云台与光电载荷', '碳纤维机体部件', '通信与定位模块', '雷达与传感器', '地面站与维修设备'];
223
+ const purchaseProductNames = controlledProductNames;
224
+ const purchaseEnglishNames = ['Professional Multirotor UAV', 'Long-Endurance Fixed-Wing UAV', 'Precision Inertial Navigation Module', 'Thermal Imaging Gimbal Camera', 'Flight Control Computer', 'Encrypted Data Link Module', 'High-Energy Lithium Battery', 'UAV Remote Controller', 'GNSS Receiver', 'Composite Propeller', 'Laser Rangefinder Module', 'Night Vision Imaging Component', 'Anti-Jamming Antenna', 'Aviation Motor', 'Electronic Speed Controller', 'Video Transmission Module', 'Autopilot', 'Millimeter-Wave Radar', 'Airborne Communication Terminal', 'Ground Control Station', 'Aerial Gimbal', 'Power Management Module', 'Survey Camera', 'UAV Maintenance Kit'];
225
+ const customerNames = ['Skyline Robotics Inc.', 'Nordic Aerial Solutions AB', 'Pacific Survey Technologies Pty Ltd', 'Alpine Drone Services GmbH', 'Atlas Inspection Systems Ltd', 'Blue Horizon Imaging SAS'];
226
+ const customerShortNames = ['Skyline', 'Nordic Aerial', 'Pacific Survey', 'Alpine Drone', 'Atlas Inspection', 'Blue Horizon'];
227
+ const customerCountries = ['United States', 'Sweden', 'Australia', 'Germany', 'United Kingdom', 'France'];
228
+ const customerAddresses = ['1200 Market Street, San Francisco, CA', 'Sveavagen 41, Stockholm', '88 Harbour Street, Sydney', 'Leopoldstrasse 12, Munich', '30 King Street, London', '16 Rue de Lyon, Paris'];
229
+ const customerContacts = ['Emma Wilson', 'Lars Andersson', 'Olivia Brown', 'Felix Wagner', 'George Taylor', 'Camille Martin'];
230
+ const clauseTexts = {
231
+ CONTRACT_AMOUNT: '合同总金额以经双方确认的商业发票为准。', TAX_RATE: '所有报价均为人民币含税价,适用税率为 13%。', PRICE_TERMS: '价格条款为 FOB Shenzhen。',
232
+ TRANSPORT: '卖方负责按约定时间交付至深圳港。', WARRANTY: '产品质保期为验收后十二个月。', BREACH_LIABILITY: '违约方承担直接损失及合理维权费用。', PAYMENT_TERMS: '签约后支付 30% 预付款,发货前支付余款。'
233
+ };
234
+ const riskMessages = { LOW: '条款完整,当前未发现明显合规风险。', MEDIUM: '条款存在边界不清,履约前需补充确认。', HIGH: '条款可能导致重大付款或责任风险。' };
235
+ const riskSuggestions = { LOW: '保留现有条款并归档双方确认记录。', MEDIUM: '补充期限、金额和责任边界后再签署。', HIGH: '暂停签署并由法务完成专项复核。' };
236
+ //# sourceMappingURL=demo-data.definitions.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"demo-data.definitions.js","sourceRoot":"","sources":["../../src/lib/demo-data.definitions.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,9 @@
1
+ import { AuditedEntity } from './entities/base.js';
2
+ export declare const DEMO_DATA_MARKER: "DEMO-20260725";
3
+ export type DemoDataMarker = typeof DEMO_DATA_MARKER;
4
+ export declare class DemoDataSeedMarker extends AuditedEntity {
5
+ marker: DemoDataMarker;
6
+ dataYear: number;
7
+ recordCounts: Record<string, number>;
8
+ }
9
+ //# sourceMappingURL=demo-data.entity.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"demo-data.entity.d.ts","sourceRoot":"","sources":["../../src/lib/demo-data.entity.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAA;AAElD,eAAO,MAAM,gBAAgB,EAAG,eAAwB,CAAA;AACxD,MAAM,MAAM,cAAc,GAAG,OAAO,gBAAgB,CAAA;AAEpD,qBAEa,kBAAmB,SAAQ,aAAa;IACV,MAAM,EAAG,cAAc,CAAA;IACnC,QAAQ,EAAG,MAAM,CAAA;IACnB,YAAY,EAAG,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAA;CACjE"}
@@ -0,0 +1,24 @@
1
+ import { __decorate, __metadata } from "tslib";
2
+ import { Column, Entity, Index } from 'typeorm';
3
+ import { AuditedEntity } from './entities/base.js';
4
+ export const DEMO_DATA_MARKER = 'DEMO-20260725';
5
+ let DemoDataSeedMarker = class DemoDataSeedMarker extends AuditedEntity {
6
+ };
7
+ __decorate([
8
+ Column({ type: 'varchar', length: 32 }),
9
+ __metadata("design:type", String)
10
+ ], DemoDataSeedMarker.prototype, "marker", void 0);
11
+ __decorate([
12
+ Column({ type: 'integer' }),
13
+ __metadata("design:type", Number)
14
+ ], DemoDataSeedMarker.prototype, "dataYear", void 0);
15
+ __decorate([
16
+ Column({ type: 'jsonb' }),
17
+ __metadata("design:type", Object)
18
+ ], DemoDataSeedMarker.prototype, "recordCounts", void 0);
19
+ DemoDataSeedMarker = __decorate([
20
+ Entity('plugin_trade_compliance_demo_data_seed'),
21
+ Index(['tenantId', 'organizationId', 'marker'], { unique: true })
22
+ ], DemoDataSeedMarker);
23
+ export { DemoDataSeedMarker };
24
+ //# sourceMappingURL=demo-data.entity.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"demo-data.entity.js","sourceRoot":"","sources":["../../src/lib/demo-data.entity.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,SAAS,CAAA;AAC/C,OAAO,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAA;AAElD,MAAM,CAAC,MAAM,gBAAgB,GAAG,eAAwB,CAAA;AAKjD,IAAM,kBAAkB,GAAxB,MAAM,kBAAmB,SAAQ,aAAa;CAIpD,CAAA;AAH0C;IAAxC,MAAM,CAAC,EAAE,IAAI,EAAE,SAAS,EAAE,MAAM,EAAE,EAAE,EAAE,CAAC;;kDAAwB;AACnC;IAA5B,MAAM,CAAC,EAAE,IAAI,EAAE,SAAS,EAAE,CAAC;;oDAAkB;AACnB;IAA1B,MAAM,CAAC,EAAE,IAAI,EAAE,OAAO,EAAE,CAAC;;wDAAsC;AAHrD,kBAAkB;IAF9B,MAAM,CAAC,wCAAwC,CAAC;IAChD,KAAK,CAAC,CAAC,UAAU,EAAE,gBAAgB,EAAE,QAAQ,CAAC,EAAE,EAAE,MAAM,EAAE,IAAI,EAAE,CAAC;GACrD,kBAAkB,CAI9B"}
@@ -0,0 +1,4 @@
1
+ import type { RequestScope } from './types.js';
2
+ export type DemoDataEntityType = 'import_task' | 'controlled_batch' | 'controlled_goods' | 'sanction_batch' | 'sanctioned_company' | 'supplier' | 'purchase_order' | 'purchase_line' | 'product_match' | 'customer' | 'company_match' | 'customer_contract' | 'analysis_run' | 'contract_clause' | 'clause_analysis' | 'sales_manual' | 'generated_sales_file' | 'monthly_rate' | 'seed_marker';
3
+ export declare function scopedDemoId(scope: Pick<RequestScope, 'tenantId' | 'organizationId'>, entityType: DemoDataEntityType, businessKey: string): string;
4
+ //# sourceMappingURL=demo-data.ids.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"demo-data.ids.d.ts","sourceRoot":"","sources":["../../src/lib/demo-data.ids.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,YAAY,CAAA;AAE9C,MAAM,MAAM,kBAAkB,GAC1B,aAAa,GAAG,kBAAkB,GAAG,kBAAkB,GAAG,gBAAgB,GAAG,oBAAoB,GACjG,UAAU,GAAG,gBAAgB,GAAG,eAAe,GAAG,eAAe,GAAG,UAAU,GAAG,eAAe,GAChG,mBAAmB,GAAG,cAAc,GAAG,iBAAiB,GAAG,iBAAiB,GAAG,cAAc,GAC7F,sBAAsB,GAAG,cAAc,GAAG,aAAa,CAAA;AAI3D,wBAAgB,YAAY,CAAC,KAAK,EAAE,IAAI,CAAC,YAAY,EAAE,UAAU,GAAG,gBAAgB,CAAC,EAAE,UAAU,EAAE,kBAAkB,EAAE,WAAW,EAAE,MAAM,GAAG,MAAM,CAclJ"}
@@ -0,0 +1,19 @@
1
+ import { createHash } from 'node:crypto';
2
+ import { DEMO_DATA_MARKER } from './demo-data.entity.js';
3
+ const DEMO_UUID_NAMESPACE = '812a2f70-23f1-5f93-8a26-14b45ce15318';
4
+ export function scopedDemoId(scope, entityType, businessKey) {
5
+ const structuredName = JSON.stringify({
6
+ marker: DEMO_DATA_MARKER,
7
+ tenantId: scope.tenantId,
8
+ organizationId: scope.organizationId,
9
+ entityType,
10
+ businessKey
11
+ });
12
+ const namespace = Buffer.from(DEMO_UUID_NAMESPACE.replaceAll('-', ''), 'hex');
13
+ const bytes = createHash('sha1').update(namespace).update(structuredName, 'utf8').digest().subarray(0, 16);
14
+ bytes[6] = (bytes[6] & 0x0f) | 0x50;
15
+ bytes[8] = (bytes[8] & 0x3f) | 0x80;
16
+ const hex = bytes.toString('hex');
17
+ return `${hex.slice(0, 8)}-${hex.slice(8, 12)}-${hex.slice(12, 16)}-${hex.slice(16, 20)}-${hex.slice(20)}`;
18
+ }
19
+ //# sourceMappingURL=demo-data.ids.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"demo-data.ids.js","sourceRoot":"","sources":["../../src/lib/demo-data.ids.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,aAAa,CAAA;AACxC,OAAO,EAAE,gBAAgB,EAAE,MAAM,uBAAuB,CAAA;AASxD,MAAM,mBAAmB,GAAG,sCAAsC,CAAA;AAElE,MAAM,UAAU,YAAY,CAAC,KAAwD,EAAE,UAA8B,EAAE,WAAmB;IACxI,MAAM,cAAc,GAAG,IAAI,CAAC,SAAS,CAAC;QACpC,MAAM,EAAE,gBAAgB;QACxB,QAAQ,EAAE,KAAK,CAAC,QAAQ;QACxB,cAAc,EAAE,KAAK,CAAC,cAAc;QACpC,UAAU;QACV,WAAW;KACZ,CAAC,CAAA;IACF,MAAM,SAAS,GAAG,MAAM,CAAC,IAAI,CAAC,mBAAmB,CAAC,UAAU,CAAC,GAAG,EAAE,EAAE,CAAC,EAAE,KAAK,CAAC,CAAA;IAC7E,MAAM,KAAK,GAAG,UAAU,CAAC,MAAM,CAAC,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC,MAAM,CAAC,cAAc,EAAE,MAAM,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,CAAC,EAAE,EAAE,CAAC,CAAA;IAC1G,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC,GAAG,IAAI,CAAA;IACnC,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC,GAAG,IAAI,CAAA;IACnC,MAAM,GAAG,GAAG,KAAK,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAA;IACjC,OAAO,GAAG,GAAG,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,IAAI,GAAG,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC,IAAI,GAAG,CAAC,KAAK,CAAC,EAAE,EAAE,EAAE,CAAC,IAAI,GAAG,CAAC,KAAK,CAAC,EAAE,EAAE,EAAE,CAAC,IAAI,GAAG,CAAC,KAAK,CAAC,EAAE,CAAC,EAAE,CAAA;AAC5G,CAAC"}
@@ -0,0 +1,26 @@
1
+ import { type DataSource } from 'typeorm';
2
+ import { TradeComplianceFileStorage } from './adapters/file-storage.js';
3
+ import { DEMO_DATA_MARKER } from './demo-data.entity.js';
4
+ import type { RequestScope } from './types.js';
5
+ export type DemoDataSeedResult = {
6
+ inserted: false;
7
+ reason: 'already_seeded';
8
+ marker: typeof DEMO_DATA_MARKER;
9
+ } | {
10
+ inserted: true;
11
+ marker: typeof DEMO_DATA_MARKER;
12
+ dataYear: number;
13
+ counts: Record<string, number>;
14
+ };
15
+ export interface DemoDataSeedInput {
16
+ confirmation: 'INIT_DEMO_DATA';
17
+ }
18
+ export declare class TradeComplianceDemoDataService {
19
+ private readonly dataSource;
20
+ private readonly storage;
21
+ private readonly logger;
22
+ constructor(dataSource: DataSource, storage: TradeComplianceFileStorage);
23
+ seed(scope: RequestScope): Promise<DemoDataSeedResult>;
24
+ private bootstrapSettings;
25
+ }
26
+ //# sourceMappingURL=demo-data.service.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"demo-data.service.d.ts","sourceRoot":"","sources":["../../src/lib/demo-data.service.ts"],"names":[],"mappings":"AAEA,OAAO,EAAU,KAAK,UAAU,EAA+E,MAAM,SAAS,CAAA;AAE9H,OAAO,EAAE,0BAA0B,EAAE,MAAM,4BAA4B,CAAA;AAIvE,OAAO,EAAE,gBAAgB,EAAsB,MAAM,uBAAuB,CAAA;AA0B5E,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,YAAY,CAAA;AAG9C,MAAM,MAAM,kBAAkB,GAC1B;IAAE,QAAQ,EAAE,KAAK,CAAC;IAAC,MAAM,EAAE,gBAAgB,CAAC;IAAC,MAAM,EAAE,OAAO,gBAAgB,CAAA;CAAE,GAC9E;IAAE,QAAQ,EAAE,IAAI,CAAC;IAAC,MAAM,EAAE,OAAO,gBAAgB,CAAC;IAAC,QAAQ,EAAE,MAAM,CAAC;IAAC,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAA;CAAE,CAAA;AAEzG,MAAM,WAAW,iBAAiB;IAChC,YAAY,EAAE,gBAAgB,CAAA;CAC/B;AAED,qBACa,8BAA8B;IAInB,OAAO,CAAC,QAAQ,CAAC,UAAU;IAC/C,OAAO,CAAC,QAAQ,CAAC,OAAO;IAJ1B,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAkD;gBAGlC,UAAU,EAAE,UAAU,EAC1C,OAAO,EAAE,0BAA0B;IAGhD,IAAI,CAAC,KAAK,EAAE,YAAY,GAAG,OAAO,CAAC,kBAAkB,CAAC;YAoE9C,iBAAiB;CAoBhC"}
@@ -0,0 +1,124 @@
1
+ var TradeComplianceDemoDataService_1;
2
+ import { __decorate, __metadata, __param } from "tslib";
3
+ import { Injectable, Logger } from '@nestjs/common';
4
+ import { InjectDataSource } from '@nestjs/typeorm';
5
+ import { IsNull } from 'typeorm';
6
+ import XLSX from 'xlsx';
7
+ import { TradeComplianceFileStorage } from './adapters/file-storage.js';
8
+ import { BUILTIN_COMPANY_LOGO_STORAGE_ID, DEFAULT_BANKS, DEFAULT_COMPANY, DEFAULT_PROFIT_RULE } from './domain/default-settings.js';
9
+ import { DEFAULT_RISK_NOTICE } from './domain/risk-notice.js';
10
+ import { buildDemoDataDefinitions } from './demo-data.definitions.js';
11
+ import { DEMO_DATA_MARKER, DemoDataSeedMarker } from './demo-data.entity.js';
12
+ import { BankAccountSettings, CompanySanctionMatch, CompanySettings, ControlledCatalogBatch, ControlledGoodsRecord, Customer, CustomerContract, CustomerContractAnalysisRun, CustomerContractClause, CustomerContractClauseAnalysis, DerivedSalesOrderManualData, GeneratedSalesFile, ImportTask, ManagedAsset, MonthlySafeExchangeRate, ProductComplianceMatch, ProfitRuleSettings, PurchaseOrder, PurchaseOrderLine, RiskNoticeSettings, SanctionCatalogBatch, SanctionedCompanyRecord, Supplier } from './entities/index.js';
13
+ import { scopedDemoId } from './demo-data.ids.js';
14
+ let TradeComplianceDemoDataService = TradeComplianceDemoDataService_1 = class TradeComplianceDemoDataService {
15
+ constructor(dataSource, storage) {
16
+ this.dataSource = dataSource;
17
+ this.storage = storage;
18
+ this.logger = new Logger(TradeComplianceDemoDataService_1.name);
19
+ }
20
+ async seed(scope) {
21
+ const storedFileIds = [];
22
+ try {
23
+ return await this.dataSource.transaction(async (manager) => {
24
+ await manager.query('SELECT pg_advisory_xact_lock(hashtext($1), hashtext($2))', [`trade-compliance-demo:${scope.tenantId}`, scope.organizationId]);
25
+ const markerWhere = { tenantId: scope.tenantId, organizationId: scope.organizationId, marker: DEMO_DATA_MARKER };
26
+ const existing = await manager.getRepository(DemoDataSeedMarker).findOne({ where: markerWhere });
27
+ if (existing)
28
+ return { inserted: false, reason: 'already_seeded', marker: DEMO_DATA_MARKER };
29
+ const dataYear = currentShanghaiYear();
30
+ const definitions = buildDemoDataDefinitions(scope, dataYear);
31
+ await this.bootstrapSettings(manager, scope);
32
+ const sourceStorageFileId = await this.storage.save(buildDemoWorkbook('SOURCE', dataYear), `${DEMO_DATA_MARKER}-SOURCE.xlsx`, 'generated');
33
+ storedFileIds.push(sourceStorageFileId);
34
+ const generatedFiles = [];
35
+ for (const definition of definitions.generatedSalesFiles) {
36
+ const fileName = String(definition.fileName);
37
+ const storageFileId = await this.storage.save(buildDemoWorkbook(definition.fileType, dataYear), fileName, 'generated');
38
+ storedFileIds.push(storageFileId);
39
+ generatedFiles.push({ ...definition, storageFileId });
40
+ }
41
+ const counts = definitionCounts(definitions);
42
+ const scopeOnly = (row) => ({ ...row, tenantId: scope.tenantId, organizationId: scope.organizationId });
43
+ const created = (row) => ({ ...scopeOnly(row) });
44
+ const importAudited = (row) => ({ ...scopeOnly(row), createdById: scope.userId ?? null });
45
+ const audited = (row) => ({ ...scopeOnly(row), createdById: scope.userId ?? null, updatedById: scope.userId ?? null });
46
+ await saveRows(manager, ImportTask, definitions.importTasks.map(row => importAudited({ ...row, sourceFileId: sourceStorageFileId })));
47
+ await saveRows(manager, ControlledCatalogBatch, definitions.controlledBatches.map(row => audited({ ...row, sourceFileId: sourceStorageFileId })));
48
+ await saveRows(manager, ControlledGoodsRecord, definitions.controlledGoods.map(audited));
49
+ await saveRows(manager, SanctionCatalogBatch, definitions.sanctionBatches.map(row => audited({ ...row, sourceFileId: sourceStorageFileId })));
50
+ await saveRows(manager, SanctionedCompanyRecord, definitions.sanctionedCompanies.map(audited));
51
+ await saveRows(manager, Supplier, definitions.suppliers.map(audited));
52
+ await saveRows(manager, PurchaseOrder, definitions.purchaseOrders.map(row => audited({ ...row, sourceFileId: sourceStorageFileId })));
53
+ await saveRows(manager, PurchaseOrderLine, definitions.purchaseLines.map(audited));
54
+ await saveRows(manager, ProductComplianceMatch, definitions.productMatches.map(created));
55
+ await saveRows(manager, Customer, definitions.customers.map(audited));
56
+ await saveRows(manager, CompanySanctionMatch, definitions.companyMatches.map(created));
57
+ await saveRows(manager, CustomerContract, definitions.customerContracts.map(row => audited({ ...row, sourceFileId: sourceStorageFileId })));
58
+ await saveRows(manager, CustomerContractAnalysisRun, definitions.analysisRuns.map(importAudited));
59
+ await saveRows(manager, CustomerContractClause, definitions.clauses.map(audited));
60
+ await saveRows(manager, CustomerContractClauseAnalysis, definitions.clauseAnalyses.map(created));
61
+ await saveRows(manager, DerivedSalesOrderManualData, definitions.salesManualData.map(audited));
62
+ await saveRows(manager, GeneratedSalesFile, generatedFiles.map(row => audited({ ...row, generatedById: scope.userId ?? null, lastEditedById: row.lastEditedAt ? scope.userId ?? null : null })));
63
+ await saveRows(manager, MonthlySafeExchangeRate, definitions.monthlyRates.map(audited));
64
+ await manager.save(DemoDataSeedMarker, audited({ id: scopedDemoId(scope, 'seed_marker', DEMO_DATA_MARKER), marker: DEMO_DATA_MARKER, dataYear, recordCounts: counts }));
65
+ return { inserted: true, marker: DEMO_DATA_MARKER, dataYear, counts };
66
+ });
67
+ }
68
+ catch (error) {
69
+ const cleanupResults = await Promise.allSettled(storedFileIds.map(id => this.storage.remove(id)));
70
+ const cleanupFailures = cleanupResults.flatMap((result, index) => result.status === 'rejected'
71
+ ? [{ id: storedFileIds[index], reason: result.reason }]
72
+ : []);
73
+ if (cleanupFailures.length) {
74
+ this.logger.error(`Demo seed rollback left storage files pending cleanup: ${cleanupFailures.map(item => item.id).join(', ')}`, cleanupFailures.map(item => `${item.id}: ${item.reason instanceof Error ? item.reason.stack ?? item.reason.message : String(item.reason)}`).join('\n'));
75
+ }
76
+ throw error;
77
+ }
78
+ }
79
+ async bootstrapSettings(manager, scope) {
80
+ const audit = { tenantId: scope.tenantId, organizationId: scope.organizationId, createdById: scope.userId ?? null, updatedById: scope.userId ?? null };
81
+ const logo = await ensureOne(manager, ManagedAsset, { tenantId: scope.tenantId, organizationId: scope.organizationId, assetType: 'COMPANY_LOGO', storageType: 'BUILTIN', storageFileId: BUILTIN_COMPANY_LOGO_STORAGE_ID, deletedAt: IsNull() }, { ...audit, assetType: 'COMPANY_LOGO', status: 'ACTIVE', storageType: 'BUILTIN', storageFileId: BUILTIN_COMPANY_LOGO_STORAGE_ID, ownerId: null, originalFileName: 'yuneec-logo.png', deletedAt: null, deletedById: null, deleteOperation: null });
82
+ await ensureOne(manager, RiskNoticeSettings, { tenantId: scope.tenantId, organizationId: scope.organizationId }, { ...audit, content: DEFAULT_RISK_NOTICE, revision: 1 });
83
+ await ensureOne(manager, ProfitRuleSettings, { tenantId: scope.tenantId, organizationId: scope.organizationId }, { ...audit, ...DEFAULT_PROFIT_RULE, revision: 1 });
84
+ await ensureOne(manager, CompanySettings, { tenantId: scope.tenantId, organizationId: scope.organizationId }, { ...audit, ...DEFAULT_COMPANY, logoFileId: logo.id, revision: 1 });
85
+ for (const bank of DEFAULT_BANKS) {
86
+ await ensureOne(manager, BankAccountSettings, { tenantId: scope.tenantId, organizationId: scope.organizationId, bankType: bank.bankType }, { ...audit, ...bank, revision: 1 });
87
+ }
88
+ }
89
+ };
90
+ TradeComplianceDemoDataService = TradeComplianceDemoDataService_1 = __decorate([
91
+ Injectable(),
92
+ __param(0, InjectDataSource()),
93
+ __metadata("design:paramtypes", [Function, TradeComplianceFileStorage])
94
+ ], TradeComplianceDemoDataService);
95
+ export { TradeComplianceDemoDataService };
96
+ async function ensureOne(manager, entity, where, values) {
97
+ const repository = manager.getRepository(entity);
98
+ const existing = await repository.findOne({ where: where });
99
+ if (existing)
100
+ return existing;
101
+ return repository.save(repository.create(values));
102
+ }
103
+ async function saveRows(manager, entity, rows) {
104
+ if (rows.length)
105
+ await manager.save(entity, rows);
106
+ }
107
+ function definitionCounts(definitions) {
108
+ return Object.fromEntries(Object.entries(definitions).map(([key, rows]) => [key, rows.length]));
109
+ }
110
+ function buildDemoWorkbook(fileType, dataYear) {
111
+ const workbook = XLSX.utils.book_new();
112
+ const worksheet = XLSX.utils.aoa_to_sheet([
113
+ ['DEMO_MARKER', DEMO_DATA_MARKER],
114
+ ['FILE_TYPE', String(fileType)],
115
+ ['DATA_YEAR', dataYear],
116
+ ['NOTICE', '演示文件,仅用于外贸合规工作台功能展示。']
117
+ ]);
118
+ XLSX.utils.book_append_sheet(workbook, worksheet, 'Demo');
119
+ return Buffer.from(XLSX.write(workbook, { type: 'buffer', bookType: 'xlsx', compression: true }));
120
+ }
121
+ function currentShanghaiYear(now = new Date()) {
122
+ return Number(new Intl.DateTimeFormat('en-US', { timeZone: 'Asia/Shanghai', year: 'numeric' }).format(now));
123
+ }
124
+ //# sourceMappingURL=demo-data.service.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"demo-data.service.js","sourceRoot":"","sources":["../../src/lib/demo-data.service.ts"],"names":[],"mappings":"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"}
@@ -9,6 +9,7 @@ export declare const DEFAULT_COMPANY: {
9
9
  readonly phone: "+86 15112619120";
10
10
  readonly email: "sales03@yuneectech.com";
11
11
  };
12
+ export declare const BUILTIN_COMPANY_LOGO_STORAGE_ID = "builtin:company-logo:yuneec";
12
13
  export declare const DEFAULT_BANKS: ReadonlyArray<{
13
14
  bankType: BankAccountType;
14
15
  beneficiary: string;
@@ -1 +1 @@
1
- {"version":3,"file":"default-settings.d.ts","sourceRoot":"","sources":["../../../src/lib/domain/default-settings.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,aAAa,CAAA;AAElD,eAAO,MAAM,eAAe;;;;;;;;;CASlB,CAAA;AAEV,eAAO,MAAM,aAAa,EAAE,aAAa,CAAC;IAAE,QAAQ,EAAE,eAAe,CAAC;IAAC,WAAW,EAAE,MAAM,CAAC;IAAC,QAAQ,EAAE,MAAM,CAAC;IAAC,WAAW,EAAE,MAAM,CAAC;IAAC,SAAS,EAAE,MAAM,CAAC;IAAC,SAAS,EAAE,MAAM,CAAC;IAAC,SAAS,EAAE,MAAM,CAAA;CAAE,CAG3L,CAAA;AAED,eAAO,MAAM,mBAAmB;;;;;;CAAkJ,CAAA"}
1
+ {"version":3,"file":"default-settings.d.ts","sourceRoot":"","sources":["../../../src/lib/domain/default-settings.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,aAAa,CAAA;AAElD,eAAO,MAAM,eAAe;;;;;;;;;CASlB,CAAA;AAEV,eAAO,MAAM,+BAA+B,gCAAgC,CAAA;AAE5E,eAAO,MAAM,aAAa,EAAE,aAAa,CAAC;IAAE,QAAQ,EAAE,eAAe,CAAC;IAAC,WAAW,EAAE,MAAM,CAAC;IAAC,QAAQ,EAAE,MAAM,CAAC;IAAC,WAAW,EAAE,MAAM,CAAC;IAAC,SAAS,EAAE,MAAM,CAAC;IAAC,SAAS,EAAE,MAAM,CAAC;IAAC,SAAS,EAAE,MAAM,CAAA;CAAE,CAG3L,CAAA;AAED,eAAO,MAAM,mBAAmB;;;;;;CAAkJ,CAAA"}
@@ -8,6 +8,7 @@ export const DEFAULT_COMPANY = {
8
8
  phone: '+86 15112619120',
9
9
  email: 'sales03@yuneectech.com'
10
10
  };
11
+ export const BUILTIN_COMPANY_LOGO_STORAGE_ID = 'builtin:company-logo:yuneec';
11
12
  export const DEFAULT_BANKS = [
12
13
  { bankType: 'OVERSEAS_CNY', beneficiary: 'YUNEEC TECHNOLOGY(SHENZHEN)CO.,LTD', bankName: 'VTB BANK (PJSC) SHANGHAI BRANCH', bankAddress: 'NO.2503-2505, Shanghai Tower, No.501 Middle Yincheng Road, Pudong New Area, Shanghai, China', cnapsCode: '767290000018', accountNo: '40807156400610004941', swiftCode: 'VTBRCNSH' },
13
14
  { bankType: 'OVERSEAS_USD', beneficiary: 'YUNEEC TECHNOLOGY(SHENZHEN)CO.,LTD', bankName: 'Bank of China Shenzhen Branch Tianhuicheng Sub-Branch', bankAddress: 'No.111 Matian Road,Gongming Town,Guangming District,Shenzhen China', cnapsCode: '1045 8400 1612', accountNo: '7445 7739 2397', swiftCode: 'BKCHCNBJ45A' }
@@ -1 +1 @@
1
- {"version":3,"file":"default-settings.js","sourceRoot":"","sources":["../../../src/lib/domain/default-settings.ts"],"names":[],"mappings":"AAEA,MAAM,CAAC,MAAM,eAAe,GAAG;IAC7B,UAAU,EAAE,IAAI;IAChB,aAAa,EAAE,cAAc;IAC7B,aAAa,EAAE,uCAAuC;IACtD,uBAAuB,EAAE,oBAAoB;IAC7C,SAAS,EAAE,IAAI;IACf,SAAS,EAAE,qHAAqH;IAChI,KAAK,EAAE,iBAAiB;IACxB,KAAK,EAAE,wBAAwB;CACvB,CAAA;AAEV,MAAM,CAAC,MAAM,aAAa,GAAsK;IAC9L,EAAE,QAAQ,EAAE,cAAc,EAAE,WAAW,EAAE,oCAAoC,EAAE,QAAQ,EAAE,iCAAiC,EAAE,WAAW,EAAE,6FAA6F,EAAE,SAAS,EAAE,cAAc,EAAE,SAAS,EAAE,sBAAsB,EAAE,SAAS,EAAE,UAAU,EAAE;IAC7T,EAAE,QAAQ,EAAE,cAAc,EAAE,WAAW,EAAE,oCAAoC,EAAE,QAAQ,EAAE,uDAAuD,EAAE,WAAW,EAAE,oEAAoE,EAAE,SAAS,EAAE,gBAAgB,EAAE,SAAS,EAAE,gBAAgB,EAAE,SAAS,EAAE,aAAa,EAAE;CAC1T,CAAA;AAED,MAAM,CAAC,MAAM,mBAAmB,GAAG,EAAE,MAAM,EAAE,QAAiB,EAAE,WAAW,EAAE,eAAe,EAAE,sBAAsB,EAAE,MAAM,EAAE,mBAAmB,EAAE,GAAG,EAAE,mBAAmB,EAAE,GAAG,EAAE,CAAA"}
1
+ {"version":3,"file":"default-settings.js","sourceRoot":"","sources":["../../../src/lib/domain/default-settings.ts"],"names":[],"mappings":"AAEA,MAAM,CAAC,MAAM,eAAe,GAAG;IAC7B,UAAU,EAAE,IAAI;IAChB,aAAa,EAAE,cAAc;IAC7B,aAAa,EAAE,uCAAuC;IACtD,uBAAuB,EAAE,oBAAoB;IAC7C,SAAS,EAAE,IAAI;IACf,SAAS,EAAE,qHAAqH;IAChI,KAAK,EAAE,iBAAiB;IACxB,KAAK,EAAE,wBAAwB;CACvB,CAAA;AAEV,MAAM,CAAC,MAAM,+BAA+B,GAAG,6BAA6B,CAAA;AAE5E,MAAM,CAAC,MAAM,aAAa,GAAsK;IAC9L,EAAE,QAAQ,EAAE,cAAc,EAAE,WAAW,EAAE,oCAAoC,EAAE,QAAQ,EAAE,iCAAiC,EAAE,WAAW,EAAE,6FAA6F,EAAE,SAAS,EAAE,cAAc,EAAE,SAAS,EAAE,sBAAsB,EAAE,SAAS,EAAE,UAAU,EAAE;IAC7T,EAAE,QAAQ,EAAE,cAAc,EAAE,WAAW,EAAE,oCAAoC,EAAE,QAAQ,EAAE,uDAAuD,EAAE,WAAW,EAAE,oEAAoE,EAAE,SAAS,EAAE,gBAAgB,EAAE,SAAS,EAAE,gBAAgB,EAAE,SAAS,EAAE,aAAa,EAAE;CAC1T,CAAA;AAED,MAAM,CAAC,MAAM,mBAAmB,GAAG,EAAE,MAAM,EAAE,QAAiB,EAAE,WAAW,EAAE,eAAe,EAAE,sBAAsB,EAAE,MAAM,EAAE,mBAAmB,EAAE,GAAG,EAAE,mBAAmB,EAAE,GAAG,EAAE,CAAA"}