@tiangong-lca/tidas-sdk 0.1.20 → 0.1.21

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 (255) hide show
  1. package/README.md +174 -451
  2. package/dist/core/base/TidasEntity.d.ts +190 -0
  3. package/dist/core/base/TidasEntity.d.ts.map +1 -0
  4. package/dist/core/base/TidasEntity.js +433 -0
  5. package/dist/core/base/TidasEntity.js.map +1 -0
  6. package/dist/core/config/GlobalConfig.d.ts +60 -0
  7. package/dist/core/config/GlobalConfig.d.ts.map +1 -0
  8. package/dist/core/config/GlobalConfig.js +110 -0
  9. package/dist/core/config/GlobalConfig.js.map +1 -0
  10. package/dist/core/config/ValidationConfig.d.ts +70 -0
  11. package/dist/core/config/ValidationConfig.d.ts.map +1 -0
  12. package/dist/core/config/ValidationConfig.js +157 -0
  13. package/dist/core/config/ValidationConfig.js.map +1 -0
  14. package/dist/core/copilot/ai.d.ts +150 -0
  15. package/dist/core/copilot/ai.d.ts.map +1 -0
  16. package/dist/core/copilot/ai.js +581 -0
  17. package/dist/core/copilot/ai.js.map +1 -0
  18. package/dist/core/copilot/base.d.ts +83 -0
  19. package/dist/core/copilot/base.d.ts.map +1 -0
  20. package/dist/core/copilot/base.js +193 -0
  21. package/dist/core/copilot/base.js.map +1 -0
  22. package/dist/core/copilot/index.d.ts +1 -0
  23. package/dist/core/copilot/index.d.ts.map +1 -0
  24. package/dist/core/copilot/index.js +2 -0
  25. package/dist/core/copilot/index.js.map +1 -0
  26. package/dist/core/entities/TidasContact.d.ts +14 -0
  27. package/dist/core/entities/TidasContact.d.ts.map +1 -0
  28. package/dist/core/entities/TidasContact.js +124 -0
  29. package/dist/core/entities/TidasContact.js.map +1 -0
  30. package/dist/core/entities/TidasFlow.d.ts +14 -0
  31. package/dist/core/entities/TidasFlow.d.ts.map +1 -0
  32. package/dist/core/entities/TidasFlow.js +143 -0
  33. package/dist/core/entities/TidasFlow.js.map +1 -0
  34. package/dist/core/entities/TidasFlowProperty.d.ts +14 -0
  35. package/dist/core/entities/TidasFlowProperty.d.ts.map +1 -0
  36. package/dist/core/entities/TidasFlowProperty.js +156 -0
  37. package/dist/core/entities/TidasFlowProperty.js.map +1 -0
  38. package/dist/core/entities/TidasLCIAMethod.d.ts +14 -0
  39. package/dist/core/entities/TidasLCIAMethod.d.ts.map +1 -0
  40. package/dist/core/entities/TidasLCIAMethod.js +177 -0
  41. package/dist/core/entities/TidasLCIAMethod.js.map +1 -0
  42. package/dist/core/entities/TidasLifeCycleModel.d.ts +14 -0
  43. package/dist/core/entities/TidasLifeCycleModel.d.ts.map +1 -0
  44. package/dist/core/entities/TidasLifeCycleModel.js +169 -0
  45. package/dist/core/entities/TidasLifeCycleModel.js.map +1 -0
  46. package/dist/core/entities/TidasProcess.d.ts +14 -0
  47. package/dist/core/entities/TidasProcess.d.ts.map +1 -0
  48. package/dist/core/entities/TidasProcess.js +191 -0
  49. package/dist/core/entities/TidasProcess.js.map +1 -0
  50. package/dist/core/entities/TidasSource.d.ts +14 -0
  51. package/dist/core/entities/TidasSource.d.ts.map +1 -0
  52. package/dist/core/entities/TidasSource.js +146 -0
  53. package/dist/core/entities/TidasSource.js.map +1 -0
  54. package/dist/core/entities/TidasUnitGroup.d.ts +14 -0
  55. package/dist/core/entities/TidasUnitGroup.d.ts.map +1 -0
  56. package/dist/core/entities/TidasUnitGroup.js +177 -0
  57. package/dist/core/entities/TidasUnitGroup.js.map +1 -0
  58. package/dist/core/factories/index.d.ts +46 -0
  59. package/dist/core/factories/index.d.ts.map +1 -0
  60. package/dist/core/factories/index.js +223 -0
  61. package/dist/core/factories/index.js.map +1 -0
  62. package/dist/core/index.d.ts +9 -0
  63. package/dist/core/index.d.ts.map +1 -0
  64. package/dist/core/index.js +56 -0
  65. package/dist/core/index.js.map +1 -0
  66. package/dist/core/zod-factories.d.ts +71 -0
  67. package/dist/core/zod-factories.d.ts.map +1 -0
  68. package/dist/core/zod-factories.js +169 -0
  69. package/dist/core/zod-factories.js.map +1 -0
  70. package/dist/core/zod-proxy.d.ts +108 -0
  71. package/dist/core/zod-proxy.d.ts.map +1 -0
  72. package/dist/core/zod-proxy.js +382 -0
  73. package/dist/core/zod-proxy.js.map +1 -0
  74. package/dist/data/bundled-methodologies.json +1259 -0
  75. package/dist/index.d.ts +33 -0
  76. package/dist/index.d.ts.map +1 -0
  77. package/dist/index.js +73 -0
  78. package/dist/index.js.map +1 -0
  79. package/dist/schemas/index.d.ts +48 -0
  80. package/dist/schemas/index.d.ts.map +1 -0
  81. package/dist/schemas/index.js +112 -0
  82. package/dist/schemas/index.js.map +1 -0
  83. package/dist/schemas/tidas_contacts.schema.d.ts +124 -0
  84. package/dist/schemas/tidas_contacts.schema.d.ts.map +1 -0
  85. package/dist/schemas/tidas_contacts.schema.js +75 -0
  86. package/dist/schemas/tidas_contacts.schema.js.map +1 -0
  87. package/dist/schemas/tidas_contacts_category.schema.d.ts +3 -0
  88. package/dist/schemas/tidas_contacts_category.schema.d.ts.map +1 -0
  89. package/dist/schemas/tidas_contacts_category.schema.js +53 -0
  90. package/dist/schemas/tidas_contacts_category.schema.js.map +1 -0
  91. package/dist/schemas/tidas_data_types.schema.d.ts +34 -0
  92. package/dist/schemas/tidas_data_types.schema.d.ts.map +1 -0
  93. package/dist/schemas/tidas_data_types.schema.js +60 -0
  94. package/dist/schemas/tidas_data_types.schema.js.map +1 -0
  95. package/dist/schemas/tidas_flowproperties.schema.d.ts +152 -0
  96. package/dist/schemas/tidas_flowproperties.schema.d.ts.map +1 -0
  97. package/dist/schemas/tidas_flowproperties.schema.js +88 -0
  98. package/dist/schemas/tidas_flowproperties.schema.js.map +1 -0
  99. package/dist/schemas/tidas_flowproperties_category.schema.d.ts +3 -0
  100. package/dist/schemas/tidas_flowproperties_category.schema.d.ts.map +1 -0
  101. package/dist/schemas/tidas_flowproperties_category.schema.js +28 -0
  102. package/dist/schemas/tidas_flowproperties_category.schema.js.map +1 -0
  103. package/dist/schemas/tidas_flows.schema.d.ts +215 -0
  104. package/dist/schemas/tidas_flows.schema.d.ts.map +1 -0
  105. package/dist/schemas/tidas_flows.schema.js +165 -0
  106. package/dist/schemas/tidas_flows.schema.js.map +1 -0
  107. package/dist/schemas/tidas_flows_elementary_category.schema.d.ts +3 -0
  108. package/dist/schemas/tidas_flows_elementary_category.schema.d.ts.map +1 -0
  109. package/dist/schemas/tidas_flows_elementary_category.schema.js +309 -0
  110. package/dist/schemas/tidas_flows_elementary_category.schema.js.map +1 -0
  111. package/dist/schemas/tidas_flows_product_category.schema.d.ts +3 -0
  112. package/dist/schemas/tidas_flows_product_category.schema.d.ts.map +1 -0
  113. package/dist/schemas/tidas_flows_product_category.schema.js +28508 -0
  114. package/dist/schemas/tidas_flows_product_category.schema.js.map +1 -0
  115. package/dist/schemas/tidas_lciamethods.schema.d.ts +546 -0
  116. package/dist/schemas/tidas_lciamethods.schema.d.ts.map +1 -0
  117. package/dist/schemas/tidas_lciamethods.schema.js +513 -0
  118. package/dist/schemas/tidas_lciamethods.schema.js.map +1 -0
  119. package/dist/schemas/tidas_lciamethods_category.schema.d.ts +3 -0
  120. package/dist/schemas/tidas_lciamethods_category.schema.d.ts.map +1 -0
  121. package/dist/schemas/tidas_lciamethods_category.schema.js +278 -0
  122. package/dist/schemas/tidas_lciamethods_category.schema.js.map +1 -0
  123. package/dist/schemas/tidas_lifecyclemodels.schema.d.ts +465 -0
  124. package/dist/schemas/tidas_lifecyclemodels.schema.d.ts.map +1 -0
  125. package/dist/schemas/tidas_lifecyclemodels.schema.js +420 -0
  126. package/dist/schemas/tidas_lifecyclemodels.schema.js.map +1 -0
  127. package/dist/schemas/tidas_locations_category.schema.d.ts +3 -0
  128. package/dist/schemas/tidas_locations_category.schema.d.ts.map +1 -0
  129. package/dist/schemas/tidas_locations_category.schema.js +655 -0
  130. package/dist/schemas/tidas_locations_category.schema.js.map +1 -0
  131. package/dist/schemas/tidas_processes.schema.d.ts +626 -0
  132. package/dist/schemas/tidas_processes.schema.d.ts.map +1 -0
  133. package/dist/schemas/tidas_processes.schema.js +659 -0
  134. package/dist/schemas/tidas_processes.schema.js.map +1 -0
  135. package/dist/schemas/tidas_processes_category.schema.d.ts +3 -0
  136. package/dist/schemas/tidas_processes_category.schema.d.ts.map +1 -0
  137. package/dist/schemas/tidas_processes_category.schema.js +4904 -0
  138. package/dist/schemas/tidas_processes_category.schema.js.map +1 -0
  139. package/dist/schemas/tidas_sources.schema.d.ts +113 -0
  140. package/dist/schemas/tidas_sources.schema.d.ts.map +1 -0
  141. package/dist/schemas/tidas_sources.schema.js +73 -0
  142. package/dist/schemas/tidas_sources.schema.js.map +1 -0
  143. package/dist/schemas/tidas_sources_category.schema.d.ts +3 -0
  144. package/dist/schemas/tidas_sources_category.schema.d.ts.map +1 -0
  145. package/dist/schemas/tidas_sources_category.schema.js +43 -0
  146. package/dist/schemas/tidas_sources_category.schema.js.map +1 -0
  147. package/dist/schemas/tidas_unitgroups.schema.d.ts +140 -0
  148. package/dist/schemas/tidas_unitgroups.schema.d.ts.map +1 -0
  149. package/dist/schemas/tidas_unitgroups.schema.js +103 -0
  150. package/dist/schemas/tidas_unitgroups.schema.js.map +1 -0
  151. package/dist/schemas/tidas_unitgroups_category.schema.d.ts +3 -0
  152. package/dist/schemas/tidas_unitgroups_category.schema.d.ts.map +1 -0
  153. package/dist/schemas/tidas_unitgroups_category.schema.js +28 -0
  154. package/dist/schemas/tidas_unitgroups_category.schema.js.map +1 -0
  155. package/dist/services/copilot-service.d.ts +147 -0
  156. package/dist/services/copilot-service.d.ts.map +1 -0
  157. package/dist/services/copilot-service.js +259 -0
  158. package/dist/services/copilot-service.js.map +1 -0
  159. package/dist/services/index.d.ts +9 -0
  160. package/dist/services/index.d.ts.map +1 -0
  161. package/dist/services/index.js +24 -0
  162. package/dist/services/index.js.map +1 -0
  163. package/dist/types/index.d.ts +22 -0
  164. package/dist/types/index.d.ts.map +1 -0
  165. package/dist/types/index.js +21 -0
  166. package/dist/types/index.js.map +1 -0
  167. package/dist/types/multi-lang-types.d.ts +23 -0
  168. package/dist/types/multi-lang-types.d.ts.map +1 -0
  169. package/dist/types/multi-lang-types.js +40 -0
  170. package/dist/types/multi-lang-types.js.map +1 -0
  171. package/dist/types/tidas_contacts.d.ts +72 -0
  172. package/dist/types/tidas_contacts.d.ts.map +1 -0
  173. package/dist/types/tidas_contacts.js +8 -0
  174. package/dist/types/tidas_contacts.js.map +1 -0
  175. package/dist/types/tidas_contacts_category.d.ts +43 -0
  176. package/dist/types/tidas_contacts_category.d.ts.map +1 -0
  177. package/dist/types/tidas_contacts_category.js +8 -0
  178. package/dist/types/tidas_contacts_category.js.map +1 -0
  179. package/dist/types/tidas_data_types.d.ts +116 -0
  180. package/dist/types/tidas_data_types.d.ts.map +1 -0
  181. package/dist/types/tidas_data_types.js +8 -0
  182. package/dist/types/tidas_data_types.js.map +1 -0
  183. package/dist/types/tidas_flowproperties.d.ts +73 -0
  184. package/dist/types/tidas_flowproperties.d.ts.map +1 -0
  185. package/dist/types/tidas_flowproperties.js +8 -0
  186. package/dist/types/tidas_flowproperties.js.map +1 -0
  187. package/dist/types/tidas_flowproperties_category.d.ts +23 -0
  188. package/dist/types/tidas_flowproperties_category.d.ts.map +1 -0
  189. package/dist/types/tidas_flowproperties_category.js +8 -0
  190. package/dist/types/tidas_flowproperties_category.js.map +1 -0
  191. package/dist/types/tidas_flows.d.ts +113 -0
  192. package/dist/types/tidas_flows.d.ts.map +1 -0
  193. package/dist/types/tidas_flows.js +8 -0
  194. package/dist/types/tidas_flows.js.map +1 -0
  195. package/dist/types/tidas_flows_elementary_category.d.ts +227 -0
  196. package/dist/types/tidas_flows_elementary_category.d.ts.map +1 -0
  197. package/dist/types/tidas_flows_elementary_category.js +8 -0
  198. package/dist/types/tidas_flows_elementary_category.js.map +1 -0
  199. package/dist/types/tidas_flows_product_category.d.ts +18391 -0
  200. package/dist/types/tidas_flows_product_category.d.ts.map +1 -0
  201. package/dist/types/tidas_flows_product_category.js +8 -0
  202. package/dist/types/tidas_flows_product_category.js.map +1 -0
  203. package/dist/types/tidas_lciamethods.d.ts +231 -0
  204. package/dist/types/tidas_lciamethods.d.ts.map +1 -0
  205. package/dist/types/tidas_lciamethods.js +8 -0
  206. package/dist/types/tidas_lciamethods.js.map +1 -0
  207. package/dist/types/tidas_lciamethods_category.d.ts +215 -0
  208. package/dist/types/tidas_lciamethods_category.d.ts.map +1 -0
  209. package/dist/types/tidas_lciamethods_category.js +8 -0
  210. package/dist/types/tidas_lciamethods_category.js.map +1 -0
  211. package/dist/types/tidas_lifecyclemodels.d.ts +259 -0
  212. package/dist/types/tidas_lifecyclemodels.d.ts.map +1 -0
  213. package/dist/types/tidas_lifecyclemodels.js +8 -0
  214. package/dist/types/tidas_lifecyclemodels.js.map +1 -0
  215. package/dist/types/tidas_locations_category.d.ts +7 -0
  216. package/dist/types/tidas_locations_category.d.ts.map +1 -0
  217. package/dist/types/tidas_locations_category.js +8 -0
  218. package/dist/types/tidas_locations_category.js.map +1 -0
  219. package/dist/types/tidas_processes.d.ts +301 -0
  220. package/dist/types/tidas_processes.d.ts.map +1 -0
  221. package/dist/types/tidas_processes.js +8 -0
  222. package/dist/types/tidas_processes.js.map +1 -0
  223. package/dist/types/tidas_processes_category.d.ts +3327 -0
  224. package/dist/types/tidas_processes_category.d.ts.map +1 -0
  225. package/dist/types/tidas_processes_category.js +8 -0
  226. package/dist/types/tidas_processes_category.js.map +1 -0
  227. package/dist/types/tidas_sources.d.ts +58 -0
  228. package/dist/types/tidas_sources.d.ts.map +1 -0
  229. package/dist/types/tidas_sources.js +8 -0
  230. package/dist/types/tidas_sources.js.map +1 -0
  231. package/dist/types/tidas_sources_category.d.ts +35 -0
  232. package/dist/types/tidas_sources_category.d.ts.map +1 -0
  233. package/dist/types/tidas_sources_category.js +8 -0
  234. package/dist/types/tidas_sources_category.js.map +1 -0
  235. package/dist/types/tidas_unitgroups.d.ts +85 -0
  236. package/dist/types/tidas_unitgroups.d.ts.map +1 -0
  237. package/dist/types/tidas_unitgroups.js +8 -0
  238. package/dist/types/tidas_unitgroups.js.map +1 -0
  239. package/dist/types/tidas_unitgroups_category.d.ts +23 -0
  240. package/dist/types/tidas_unitgroups_category.d.ts.map +1 -0
  241. package/dist/types/tidas_unitgroups_category.js +8 -0
  242. package/dist/types/tidas_unitgroups_category.js.map +1 -0
  243. package/dist/utils/diff.d.ts +47 -0
  244. package/dist/utils/diff.d.ts.map +1 -0
  245. package/dist/utils/diff.js +263 -0
  246. package/dist/utils/diff.js.map +1 -0
  247. package/dist/utils/index.d.ts +7 -0
  248. package/dist/utils/index.d.ts.map +1 -0
  249. package/dist/utils/index.js +31 -0
  250. package/dist/utils/index.js.map +1 -0
  251. package/dist/utils/object-utils.d.ts +47 -0
  252. package/dist/utils/object-utils.d.ts.map +1 -0
  253. package/dist/utils/object-utils.js +332 -0
  254. package/dist/utils/object-utils.js.map +1 -0
  255. package/package.json +4 -4
@@ -0,0 +1,83 @@
1
+ /**
2
+ * Tag used to identify rules in the methodology yaml files.
3
+ */
4
+ declare const RULES_TAG = "<rules>";
5
+ /**
6
+ * Available methodology types based on bundled data
7
+ */
8
+ declare const availableMethodologies: string[];
9
+ /**
10
+ * Get methodology data by type.
11
+ * @param methodologyType - The type of methodology to retrieve (e.g., 'processes', 'flows')
12
+ * @returns The methodology data object, or null if not found
13
+ */
14
+ declare function getMethodologyData(methodologyType: string): Record<string, any> | null;
15
+ /**
16
+ * List all available methodology types.
17
+ * @returns An array of available methodology type names
18
+ */
19
+ declare function getAvailableMethodologyTypes(): string[];
20
+ /**
21
+ * Get metadata about the bundled methodologies.
22
+ * @returns Metadata about when the bundle was created and what it contains
23
+ */
24
+ declare function getBundleMetadata(): {
25
+ bundled_at: string;
26
+ total_files: number;
27
+ processed_files: number;
28
+ skipped_files: number;
29
+ file_list: string[];
30
+ };
31
+ /**
32
+ * List all rule paths from a methodology object.
33
+ * This function recursively traverses the methodology object and finds all paths
34
+ * that contain the <rules> tag.
35
+ *
36
+ * @param methodology - The methodology object
37
+ * @returns An array of dot-notation paths to rules locations
38
+ * @example
39
+ * // Given a methodology object like:
40
+ * // {
41
+ * // processDataSet: {
42
+ * // processInformation: {
43
+ * // dataSetInformation: {
44
+ * // name: {
45
+ * // baseName: {
46
+ * // '<rules>': [...]
47
+ * // }
48
+ * // }
49
+ * // }
50
+ * // }
51
+ * // }
52
+ * // }
53
+ * // Returns: ['processDataSet.processInformation.dataSetInformation.name.baseName']
54
+ */
55
+ declare function listRulePathsFromMethodology(methodology: Record<string, any>): string[];
56
+ /**
57
+ * Get a specific rule from methodology by its path.
58
+ * @param methodology - The methodology object
59
+ * @param path - The dot-notation path to the rule (e.g., 'processDataSet.processInformation.dataSetInformation.name.baseName')
60
+ * @returns The rule object at the specified path, or null if not found
61
+ */
62
+ declare function getRuleFromMethodologyByPath(methodology: Record<string, any>, path: string): any | null;
63
+ /**
64
+ * Get methodology data by type - convenience wrapper.
65
+ * @param methodologyType - The type of methodology to retrieve
66
+ * @returns The methodology data object, or null if not found
67
+ */
68
+ declare function readMethodologyFile(methodologyType: string): Promise<Record<string, any> | null>;
69
+ /**
70
+ * Get all rule paths for a specific methodology type.
71
+ * @param methodologyType - The type of methodology (e.g., 'processes', 'flows')
72
+ * @returns An array of dot-notation paths to rules locations
73
+ */
74
+ declare function getRulePathsForMethodologyType(methodologyType: string): string[];
75
+ /**
76
+ * Get a specific rule for a methodology type and path.
77
+ * @param methodologyType - The type of methodology (e.g., 'processes', 'flows')
78
+ * @param rulePath - The dot-notation path to the rule
79
+ * @returns The rule object at the specified path, or null if not found
80
+ */
81
+ declare function getRuleForMethodologyType(methodologyType: string, rulePath: string): any | null;
82
+ export { getMethodologyData, getAvailableMethodologyTypes, getBundleMetadata, listRulePathsFromMethodology, getRuleFromMethodologyByPath, readMethodologyFile, getRulePathsForMethodologyType, getRuleForMethodologyType, RULES_TAG, availableMethodologies, };
83
+ //# sourceMappingURL=base.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"base.d.ts","sourceRoot":"","sources":["../../../src/core/copilot/base.ts"],"names":[],"mappings":"AAGA;;GAEG;AACH,QAAA,MAAM,SAAS,YAAY,CAAC;AAE5B;;GAEG;AACH,QAAA,MAAM,sBAAsB,UAAkD,CAAC;AAE/E;;;;GAIG;AACH,iBAAS,kBAAkB,CAAC,eAAe,EAAE,MAAM,GAAG,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,GAAG,IAAI,CAG/E;AAED;;;GAGG;AACH,iBAAS,4BAA4B,IAAI,MAAM,EAAE,CAEhD;AAED;;;GAGG;AACH,iBAAS,iBAAiB;;;;;;EAEzB;AAED;;;;;;;;;;;;;;;;;;;;;;;GAuBG;AACH,iBAAS,4BAA4B,CACnC,WAAW,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,GAC/B,MAAM,EAAE,CAgDV;AAED;;;;;GAKG;AACH,iBAAS,4BAA4B,CACnC,WAAW,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,EAChC,IAAI,EAAE,MAAM,GACX,GAAG,GAAG,IAAI,CA+CZ;AAED;;;;GAIG;AACH,iBAAe,mBAAmB,CAAC,eAAe,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,GAAG,IAAI,CAAC,CAE/F;AAED;;;;GAIG;AACH,iBAAS,8BAA8B,CAAC,eAAe,EAAE,MAAM,GAAG,MAAM,EAAE,CAMzE;AAED;;;;;GAKG;AACH,iBAAS,yBAAyB,CAAC,eAAe,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,GAAG,GAAG,GAAG,IAAI,CAMxF;AAED,OAAO,EACL,kBAAkB,EAClB,4BAA4B,EAC5B,iBAAiB,EACjB,4BAA4B,EAC5B,4BAA4B,EAC5B,mBAAmB,EACnB,8BAA8B,EAC9B,yBAAyB,EACzB,SAAS,EACT,sBAAsB,GACvB,CAAC"}
@@ -0,0 +1,193 @@
1
+ "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ exports.availableMethodologies = exports.RULES_TAG = void 0;
7
+ exports.getMethodologyData = getMethodologyData;
8
+ exports.getAvailableMethodologyTypes = getAvailableMethodologyTypes;
9
+ exports.getBundleMetadata = getBundleMetadata;
10
+ exports.listRulePathsFromMethodology = listRulePathsFromMethodology;
11
+ exports.getRuleFromMethodologyByPath = getRuleFromMethodologyByPath;
12
+ exports.readMethodologyFile = readMethodologyFile;
13
+ exports.getRulePathsForMethodologyType = getRulePathsForMethodologyType;
14
+ exports.getRuleForMethodologyType = getRuleForMethodologyType;
15
+ // Browser-compatible imports - no Node.js file system dependencies
16
+ const bundled_methodologies_json_1 = __importDefault(require("../../data/bundled-methodologies.json"));
17
+ /**
18
+ * Tag used to identify rules in the methodology yaml files.
19
+ */
20
+ const RULES_TAG = '<rules>';
21
+ exports.RULES_TAG = RULES_TAG;
22
+ /**
23
+ * Available methodology types based on bundled data
24
+ */
25
+ const availableMethodologies = Object.keys(bundled_methodologies_json_1.default.methodologies);
26
+ exports.availableMethodologies = availableMethodologies;
27
+ /**
28
+ * Get methodology data by type.
29
+ * @param methodologyType - The type of methodology to retrieve (e.g., 'processes', 'flows')
30
+ * @returns The methodology data object, or null if not found
31
+ */
32
+ function getMethodologyData(methodologyType) {
33
+ const data = bundled_methodologies_json_1.default.methodologies[methodologyType];
34
+ return data || null;
35
+ }
36
+ /**
37
+ * List all available methodology types.
38
+ * @returns An array of available methodology type names
39
+ */
40
+ function getAvailableMethodologyTypes() {
41
+ return [...availableMethodologies];
42
+ }
43
+ /**
44
+ * Get metadata about the bundled methodologies.
45
+ * @returns Metadata about when the bundle was created and what it contains
46
+ */
47
+ function getBundleMetadata() {
48
+ return bundled_methodologies_json_1.default._metadata;
49
+ }
50
+ /**
51
+ * List all rule paths from a methodology object.
52
+ * This function recursively traverses the methodology object and finds all paths
53
+ * that contain the <rules> tag.
54
+ *
55
+ * @param methodology - The methodology object
56
+ * @returns An array of dot-notation paths to rules locations
57
+ * @example
58
+ * // Given a methodology object like:
59
+ * // {
60
+ * // processDataSet: {
61
+ * // processInformation: {
62
+ * // dataSetInformation: {
63
+ * // name: {
64
+ * // baseName: {
65
+ * // '<rules>': [...]
66
+ * // }
67
+ * // }
68
+ * // }
69
+ * // }
70
+ * // }
71
+ * // }
72
+ * // Returns: ['processDataSet.processInformation.dataSetInformation.name.baseName']
73
+ */
74
+ function listRulePathsFromMethodology(methodology) {
75
+ const rulePaths = [];
76
+ /**
77
+ * Recursively traverse the object to find all paths containing <rules>
78
+ * @param obj - Current object being traversed
79
+ * @param currentPath - Array representing the current path in the object tree
80
+ */
81
+ function traverse(obj, currentPath = []) {
82
+ // Skip if not an object
83
+ if (!obj || typeof obj !== 'object') {
84
+ return;
85
+ }
86
+ // Skip arrays
87
+ if (Array.isArray(obj)) {
88
+ return;
89
+ }
90
+ // Check if current object has the <rules> tag
91
+ if (RULES_TAG in obj) {
92
+ // Add the path to this rules location
93
+ const pathString = currentPath.join('.');
94
+ if (pathString) {
95
+ rulePaths.push(pathString);
96
+ }
97
+ }
98
+ // Continue traversing nested objects
99
+ for (const key in obj) {
100
+ // Skip the <rules> tag itself as we've already recorded this path
101
+ if (key === RULES_TAG) {
102
+ continue;
103
+ }
104
+ const value = obj[key];
105
+ if (value && typeof value === 'object' && !Array.isArray(value)) {
106
+ // Recursively traverse nested objects (but not arrays)
107
+ traverse(value, [...currentPath, key]);
108
+ }
109
+ }
110
+ }
111
+ // Start traversal from the root
112
+ traverse(methodology);
113
+ // Sort paths for consistent output
114
+ return rulePaths.sort();
115
+ }
116
+ /**
117
+ * Get a specific rule from methodology by its path.
118
+ * @param methodology - The methodology object
119
+ * @param path - The dot-notation path to the rule (e.g., 'processDataSet.processInformation.dataSetInformation.name.baseName')
120
+ * @returns The rule object at the specified path, or null if not found
121
+ */
122
+ function getRuleFromMethodologyByPath(methodology, path) {
123
+ // First, verify the path exists in the rule paths
124
+ const rulePaths = listRulePathsFromMethodology(methodology);
125
+ const rulePathExists = rulePaths.includes(path);
126
+ if (!rulePathExists) {
127
+ throw new Error(`Rule path not found: ${path}. Available paths: ${rulePaths.join(', ')}`);
128
+ }
129
+ // Navigate to the rule using the path
130
+ const pathParts = path.split('.');
131
+ let current = methodology;
132
+ // Traverse the object using the path parts
133
+ for (const part of pathParts) {
134
+ if (current && typeof current === 'object' && part in current) {
135
+ current = current[part];
136
+ }
137
+ else {
138
+ // Path doesn't exist in the object
139
+ return null;
140
+ }
141
+ }
142
+ // Return the rules at this path
143
+ if (current && typeof current === 'object' && RULES_TAG in current) {
144
+ const rules = current[RULES_TAG];
145
+ // Return the rules with additional context
146
+ return {
147
+ path,
148
+ rules,
149
+ // Include any other properties at this level (excluding the rules tag itself)
150
+ ...Object.keys(current)
151
+ .filter((key) => key !== RULES_TAG)
152
+ .reduce((acc, key) => {
153
+ acc[key] = current[key];
154
+ return acc;
155
+ }, {}),
156
+ };
157
+ }
158
+ return null;
159
+ }
160
+ /**
161
+ * Get methodology data by type - convenience wrapper.
162
+ * @param methodologyType - The type of methodology to retrieve
163
+ * @returns The methodology data object, or null if not found
164
+ */
165
+ async function readMethodologyFile(methodologyType) {
166
+ return getMethodologyData(methodologyType);
167
+ }
168
+ /**
169
+ * Get all rule paths for a specific methodology type.
170
+ * @param methodologyType - The type of methodology (e.g., 'processes', 'flows')
171
+ * @returns An array of dot-notation paths to rules locations
172
+ */
173
+ function getRulePathsForMethodologyType(methodologyType) {
174
+ const methodologyData = getMethodologyData(methodologyType);
175
+ if (!methodologyData) {
176
+ throw new Error(`Methodology type '${methodologyType}' not found. Available types: ${availableMethodologies.join(', ')}`);
177
+ }
178
+ return listRulePathsFromMethodology(methodologyData);
179
+ }
180
+ /**
181
+ * Get a specific rule for a methodology type and path.
182
+ * @param methodologyType - The type of methodology (e.g., 'processes', 'flows')
183
+ * @param rulePath - The dot-notation path to the rule
184
+ * @returns The rule object at the specified path, or null if not found
185
+ */
186
+ function getRuleForMethodologyType(methodologyType, rulePath) {
187
+ const methodologyData = getMethodologyData(methodologyType);
188
+ if (!methodologyData) {
189
+ throw new Error(`Methodology type '${methodologyType}' not found. Available types: ${availableMethodologies.join(', ')}`);
190
+ }
191
+ return getRuleFromMethodologyByPath(methodologyData, rulePath);
192
+ }
193
+ //# sourceMappingURL=base.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"base.js","sourceRoot":"","sources":["../../../src/core/copilot/base.ts"],"names":[],"mappings":";;;;;;AAkNE,gDAAkB;AAClB,oEAA4B;AAC5B,8CAAiB;AACjB,oEAA4B;AAC5B,oEAA4B;AAC5B,kDAAmB;AACnB,wEAA8B;AAC9B,8DAAyB;AAzN3B,mEAAmE;AACnE,uGAAyE;AAEzE;;GAEG;AACH,MAAM,SAAS,GAAG,SAAS,CAAC;AAoN1B,8BAAS;AAlNX;;GAEG;AACH,MAAM,sBAAsB,GAAG,MAAM,CAAC,IAAI,CAAC,oCAAoB,CAAC,aAAa,CAAC,CAAC;AAgN7E,wDAAsB;AA9MxB;;;;GAIG;AACH,SAAS,kBAAkB,CAAC,eAAuB;IACjD,MAAM,IAAI,GAAG,oCAAoB,CAAC,aAAa,CAAC,eAAkE,CAAC,CAAC;IACpH,OAAO,IAAI,IAAI,IAAI,CAAC;AACtB,CAAC;AAED;;;GAGG;AACH,SAAS,4BAA4B;IACnC,OAAO,CAAC,GAAG,sBAAsB,CAAC,CAAC;AACrC,CAAC;AAED;;;GAGG;AACH,SAAS,iBAAiB;IACxB,OAAO,oCAAoB,CAAC,SAAS,CAAC;AACxC,CAAC;AAED;;;;;;;;;;;;;;;;;;;;;;;GAuBG;AACH,SAAS,4BAA4B,CACnC,WAAgC;IAEhC,MAAM,SAAS,GAAa,EAAE,CAAC;IAE/B;;;;OAIG;IACH,SAAS,QAAQ,CAAC,GAAQ,EAAE,cAAwB,EAAE;QACpD,wBAAwB;QACxB,IAAI,CAAC,GAAG,IAAI,OAAO,GAAG,KAAK,QAAQ,EAAE,CAAC;YACpC,OAAO;QACT,CAAC;QAED,cAAc;QACd,IAAI,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC;YACvB,OAAO;QACT,CAAC;QAED,8CAA8C;QAC9C,IAAI,SAAS,IAAI,GAAG,EAAE,CAAC;YACrB,sCAAsC;YACtC,MAAM,UAAU,GAAG,WAAW,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;YACzC,IAAI,UAAU,EAAE,CAAC;gBACf,SAAS,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;YAC7B,CAAC;QACH,CAAC;QAED,qCAAqC;QACrC,KAAK,MAAM,GAAG,IAAI,GAAG,EAAE,CAAC;YACtB,kEAAkE;YAClE,IAAI,GAAG,KAAK,SAAS,EAAE,CAAC;gBACtB,SAAS;YACX,CAAC;YAED,MAAM,KAAK,GAAG,GAAG,CAAC,GAAG,CAAC,CAAC;YACvB,IAAI,KAAK,IAAI,OAAO,KAAK,KAAK,QAAQ,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE,CAAC;gBAChE,uDAAuD;gBACvD,QAAQ,CAAC,KAAK,EAAE,CAAC,GAAG,WAAW,EAAE,GAAG,CAAC,CAAC,CAAC;YACzC,CAAC;QACH,CAAC;IACH,CAAC;IAED,gCAAgC;IAChC,QAAQ,CAAC,WAAW,CAAC,CAAC;IAEtB,mCAAmC;IACnC,OAAO,SAAS,CAAC,IAAI,EAAE,CAAC;AAC1B,CAAC;AAED;;;;;GAKG;AACH,SAAS,4BAA4B,CACnC,WAAgC,EAChC,IAAY;IAEZ,kDAAkD;IAClD,MAAM,SAAS,GAAG,4BAA4B,CAAC,WAAW,CAAC,CAAC;IAC5D,MAAM,cAAc,GAAG,SAAS,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;IAEhD,IAAI,CAAC,cAAc,EAAE,CAAC;QACpB,MAAM,IAAI,KAAK,CACb,wBAAwB,IAAI,sBAAsB,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CACzE,CAAC;IACJ,CAAC;IAED,sCAAsC;IACtC,MAAM,SAAS,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;IAClC,IAAI,OAAO,GAAQ,WAAW,CAAC;IAE/B,2CAA2C;IAC3C,KAAK,MAAM,IAAI,IAAI,SAAS,EAAE,CAAC;QAC7B,IAAI,OAAO,IAAI,OAAO,OAAO,KAAK,QAAQ,IAAI,IAAI,IAAI,OAAO,EAAE,CAAC;YAC9D,OAAO,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;QAC1B,CAAC;aAAM,CAAC;YACN,mCAAmC;YACnC,OAAO,IAAI,CAAC;QACd,CAAC;IACH,CAAC;IAED,gCAAgC;IAChC,IAAI,OAAO,IAAI,OAAO,OAAO,KAAK,QAAQ,IAAI,SAAS,IAAI,OAAO,EAAE,CAAC;QACnE,MAAM,KAAK,GAAG,OAAO,CAAC,SAAS,CAAC,CAAC;QAEjC,2CAA2C;QAC3C,OAAO;YACL,IAAI;YACJ,KAAK;YACL,8EAA8E;YAC9E,GAAG,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC;iBACpB,MAAM,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,KAAK,SAAS,CAAC;iBAClC,MAAM,CACL,CAAC,GAAG,EAAE,GAAG,EAAE,EAAE;gBACX,GAAG,CAAC,GAAG,CAAC,GAAG,OAAO,CAAC,GAAG,CAAC,CAAC;gBACxB,OAAO,GAAG,CAAC;YACb,CAAC,EACD,EAAyB,CAC1B;SACJ,CAAC;IACJ,CAAC;IAED,OAAO,IAAI,CAAC;AACd,CAAC;AAED;;;;GAIG;AACH,KAAK,UAAU,mBAAmB,CAAC,eAAuB;IACxD,OAAO,kBAAkB,CAAC,eAAe,CAAC,CAAC;AAC7C,CAAC;AAED;;;;GAIG;AACH,SAAS,8BAA8B,CAAC,eAAuB;IAC7D,MAAM,eAAe,GAAG,kBAAkB,CAAC,eAAe,CAAC,CAAC;IAC5D,IAAI,CAAC,eAAe,EAAE,CAAC;QACrB,MAAM,IAAI,KAAK,CAAC,qBAAqB,eAAe,iCAAiC,sBAAsB,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;IAC5H,CAAC;IACD,OAAO,4BAA4B,CAAC,eAAe,CAAC,CAAC;AACvD,CAAC;AAED;;;;;GAKG;AACH,SAAS,yBAAyB,CAAC,eAAuB,EAAE,QAAgB;IAC1E,MAAM,eAAe,GAAG,kBAAkB,CAAC,eAAe,CAAC,CAAC;IAC5D,IAAI,CAAC,eAAe,EAAE,CAAC;QACrB,MAAM,IAAI,KAAK,CAAC,qBAAqB,eAAe,iCAAiC,sBAAsB,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;IAC5H,CAAC;IACD,OAAO,4BAA4B,CAAC,eAAe,EAAE,QAAQ,CAAC,CAAC;AACjE,CAAC"}
@@ -0,0 +1 @@
1
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/core/copilot/index.ts"],"names":[],"mappings":""}
@@ -0,0 +1,2 @@
1
+ "use strict";
2
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/core/copilot/index.ts"],"names":[],"mappings":""}
@@ -0,0 +1,14 @@
1
+ import { TidasEntity } from '../base/TidasEntity';
2
+ import { Contact } from '../../types';
3
+ import { ValidationConfig } from '../config/ValidationConfig';
4
+ /**
5
+ * TIDAS Contact entity - simplified pure data container
6
+ * Provides direct access to TIDAS Contact structure with schema validation
7
+ */
8
+ export declare class TidasContact extends TidasEntity<Contact> {
9
+ constructor(initialData?: Partial<Contact>, validationConfig?: Partial<ValidationConfig>);
10
+ get contactDataSet(): Contact['contactDataSet'];
11
+ set contactDataSet(value: Contact['contactDataSet']);
12
+ protected initializeDefaults(): void;
13
+ }
14
+ //# sourceMappingURL=TidasContact.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"TidasContact.d.ts","sourceRoot":"","sources":["../../../src/core/entities/TidasContact.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,qBAAqB,CAAC;AAElD,OAAO,EAAE,OAAO,EAAE,MAAM,aAAa,CAAC;AACtC,OAAO,EAAE,gBAAgB,EAAE,MAAM,4BAA4B,CAAC;AAG9D;;;GAGG;AACH,qBAAa,YAAa,SAAQ,WAAW,CAAC,OAAO,CAAC;gBAElD,WAAW,CAAC,EAAE,OAAO,CAAC,OAAO,CAAC,EAC9B,gBAAgB,CAAC,EAAE,OAAO,CAAC,gBAAgB,CAAC;IAM9C,IAAI,cAAc,IAAI,OAAO,CAAC,gBAAgB,CAAC,CAE9C;IAED,IAAI,cAAc,CAAC,KAAK,EAAE,OAAO,CAAC,gBAAgB,CAAC,EAElD;IAED,SAAS,CAAC,kBAAkB,IAAI,IAAI;CAkKrC"}
@@ -0,0 +1,124 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.TidasContact = void 0;
4
+ const TidasEntity_1 = require("../base/TidasEntity");
5
+ const schemas_1 = require("../../schemas");
6
+ const multi_lang_types_1 = require("../../types/multi-lang-types");
7
+ /**
8
+ * TIDAS Contact entity - simplified pure data container
9
+ * Provides direct access to TIDAS Contact structure with schema validation
10
+ */
11
+ class TidasContact extends TidasEntity_1.TidasEntity {
12
+ constructor(initialData, validationConfig) {
13
+ super(schemas_1.ContactSchema, initialData, validationConfig);
14
+ }
15
+ // TypeScript accessor for contactDataSet - enables intellisense and type checking
16
+ get contactDataSet() {
17
+ return this._data.contactDataSet;
18
+ }
19
+ set contactDataSet(value) {
20
+ this._data.contactDataSet = value;
21
+ }
22
+ initializeDefaults() {
23
+ // Set required namespace attributes for TIDAS schema compliance
24
+ this.setNestedValue('contactDataSet.@xmlns', 'http://lca.jrc.it/ILCD/Contact');
25
+ this.setNestedValue('contactDataSet.@xmlns:common', 'http://lca.jrc.it/ILCD/Common');
26
+ this.setNestedValue('contactDataSet.@xmlns:xsi', 'http://www.w3.org/2001/XMLSchema-instance');
27
+ this.setNestedValue('contactDataSet.@version', '1.1');
28
+ this.setNestedValue('contactDataSet.@xsi:schemaLocation', 'http://lca.jrc.it/ILCD/Contact ../../schemas/ILCD_ContactDataSet.xsd');
29
+ // Ensure required nested structure exists
30
+ this.ensureNestedStructure([
31
+ 'contactDataSet',
32
+ 'contactDataSet.contactInformation',
33
+ 'contactDataSet.contactInformation.dataSetInformation',
34
+ 'contactDataSet.contactInformation.dataSetInformation.classificationInformation',
35
+ 'contactDataSet.administrativeInformation',
36
+ 'contactDataSet.administrativeInformation.dataEntryBy',
37
+ 'contactDataSet.administrativeInformation.publicationAndOwnership',
38
+ ]);
39
+ // Set required fields with default values if they don't exist
40
+ if (!this.getNestedValue('contactDataSet.contactInformation.dataSetInformation.common:UUID')) {
41
+ this.setNestedValue('contactDataSet.contactInformation.dataSetInformation.common:UUID', crypto.randomUUID());
42
+ }
43
+ if (!this.getNestedValue('contactDataSet.administrativeInformation.dataEntryBy.common:timeStamp')) {
44
+ this.setNestedValue('contactDataSet.administrativeInformation.dataEntryBy.common:timeStamp', new Date().toISOString());
45
+ }
46
+ // if (
47
+ // !this.getNestedValue(
48
+ // 'contactDataSet.administrativeInformation.publicationAndOwnership.common:dataSetVersion'
49
+ // )
50
+ // ) {
51
+ // this.setNestedValue(
52
+ // 'contactDataSet.administrativeInformation.publicationAndOwnership.common:dataSetVersion',
53
+ // '1.0.0'
54
+ // );
55
+ // }
56
+ // Set required reference fields with default values
57
+ // if (
58
+ // !this.getNestedValue(
59
+ // 'contactDataSet.administrativeInformation.dataEntryBy.common:referenceToDataSetFormat'
60
+ // )
61
+ // ) {
62
+ // this.setNestedValue(
63
+ // 'contactDataSet.administrativeInformation.dataEntryBy.common:referenceToDataSetFormat',
64
+ // {
65
+ // '@type': 'source data set',
66
+ // '@refObjectId': '00000000-0000-0000-0000-000000000000',
67
+ // '@version': '00.00.000',
68
+ // '@uri': '',
69
+ // 'common:shortDescription': new MultiLangArray(),
70
+ // }
71
+ // );
72
+ // }
73
+ // if (
74
+ // !this.getNestedValue(
75
+ // 'contactDataSet.administrativeInformation.publicationAndOwnership.common:referenceToOwnershipOfDataSet'
76
+ // )
77
+ // ) {
78
+ // this.setNestedValue(
79
+ // 'contactDataSet.administrativeInformation.publicationAndOwnership.common:referenceToOwnershipOfDataSet',
80
+ // {
81
+ // '@type': 'contact data set',
82
+ // '@refObjectId': this.getNestedValue(
83
+ // 'contactDataSet.contactInformation.dataSetInformation.common:UUID'
84
+ // ),
85
+ // '@version': '00.00.000',
86
+ // '@uri': '',
87
+ // 'common:shortDescription': new MultiLangArray(),
88
+ // }
89
+ // );
90
+ // }
91
+ // Initialize empty arrays for multi-language text fields
92
+ if (!this.getNestedValue('contactDataSet.contactInformation.dataSetInformation.common:name')) {
93
+ this.setNestedValue('contactDataSet.contactInformation.dataSetInformation.common:name', new multi_lang_types_1.MultiLangArray());
94
+ }
95
+ if (!this.getNestedValue('contactDataSet.contactInformation.dataSetInformation.common:shortName')) {
96
+ this.setNestedValue('contactDataSet.contactInformation.dataSetInformation.common:shortName', new multi_lang_types_1.MultiLangArray());
97
+ }
98
+ if (!this.getNestedValue('contactDataSet.contactInformation.dataSetInformation.common:synonyms')) {
99
+ this.setNestedValue('contactDataSet.contactInformation.dataSetInformation.common:synonyms', new multi_lang_types_1.MultiLangArray());
100
+ }
101
+ if (!this.getNestedValue('contactDataSet.contactInformation.dataSetInformation.common:generalComment')) {
102
+ this.setNestedValue('contactDataSet.contactInformation.dataSetInformation.common:generalComment', new multi_lang_types_1.MultiLangArray());
103
+ }
104
+ // Initialize required classification structure
105
+ // if (
106
+ // !this.getNestedValue(
107
+ // 'contactDataSet.contactInformation.dataSetInformation.classificationInformation.common:classification'
108
+ // )
109
+ // ) {
110
+ // this.setNestedValue(
111
+ // 'contactDataSet.contactInformation.dataSetInformation.classificationInformation.common:classification',
112
+ // {
113
+ // 'common:class': {
114
+ // '@level': '0',
115
+ // '@classId': '00000000-0000-0000-0000-000000000000',
116
+ // '#text': 'General contact',
117
+ // },
118
+ // }
119
+ // );
120
+ // }
121
+ }
122
+ }
123
+ exports.TidasContact = TidasContact;
124
+ //# sourceMappingURL=TidasContact.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"TidasContact.js","sourceRoot":"","sources":["../../../src/core/entities/TidasContact.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,14 @@
1
+ import { TidasEntity } from '../base/TidasEntity';
2
+ import { Flow } from '../../types';
3
+ import { ValidationConfig } from '../config/ValidationConfig';
4
+ /**
5
+ * TIDAS Flow entity - pure data container
6
+ * Represents material/energy flows in LCA with schema validation
7
+ */
8
+ export declare class TidasFlow extends TidasEntity<Flow> {
9
+ constructor(initialData?: Partial<Flow>, validationConfig?: Partial<ValidationConfig>);
10
+ get flowDataSet(): Flow['flowDataSet'];
11
+ set flowDataSet(value: Flow['flowDataSet']);
12
+ protected initializeDefaults(): void;
13
+ }
14
+ //# sourceMappingURL=TidasFlow.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"TidasFlow.d.ts","sourceRoot":"","sources":["../../../src/core/entities/TidasFlow.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,qBAAqB,CAAC;AAElD,OAAO,EAAE,IAAI,EAAE,MAAM,aAAa,CAAC;AACnC,OAAO,EAAE,gBAAgB,EAAE,MAAM,4BAA4B,CAAC;AAG9D;;;GAGG;AACH,qBAAa,SAAU,SAAQ,WAAW,CAAC,IAAI,CAAC;gBAE5C,WAAW,CAAC,EAAE,OAAO,CAAC,IAAI,CAAC,EAC3B,gBAAgB,CAAC,EAAE,OAAO,CAAC,gBAAgB,CAAC;IAM9C,IAAI,WAAW,IAAI,IAAI,CAAC,aAAa,CAAC,CAErC;IAED,IAAI,WAAW,CAAC,KAAK,EAAE,IAAI,CAAC,aAAa,CAAC,EAEzC;IAED,SAAS,CAAC,kBAAkB,IAAI,IAAI;CAuLrC"}
@@ -0,0 +1,143 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.TidasFlow = void 0;
4
+ const TidasEntity_1 = require("../base/TidasEntity");
5
+ const schemas_1 = require("../../schemas");
6
+ const multi_lang_types_1 = require("../../types/multi-lang-types");
7
+ /**
8
+ * TIDAS Flow entity - pure data container
9
+ * Represents material/energy flows in LCA with schema validation
10
+ */
11
+ class TidasFlow extends TidasEntity_1.TidasEntity {
12
+ constructor(initialData, validationConfig) {
13
+ super(schemas_1.FlowSchema, initialData, validationConfig);
14
+ }
15
+ // TypeScript accessor for flowDataSet - enables intellisense and type checking
16
+ get flowDataSet() {
17
+ return this._data.flowDataSet;
18
+ }
19
+ set flowDataSet(value) {
20
+ this._data.flowDataSet = value;
21
+ }
22
+ initializeDefaults() {
23
+ // Set required namespace attributes for TIDAS schema compliance
24
+ this.setNestedValue('flowDataSet.@xmlns', 'http://lca.jrc.it/ILCD/Flow');
25
+ this.setNestedValue('flowDataSet.@xmlns:common', 'http://lca.jrc.it/ILCD/Common');
26
+ this.setNestedValue('flowDataSet.@xmlns:xsi', 'http://www.w3.org/2001/XMLSchema-instance');
27
+ this.setNestedValue('flowDataSet.@version', '1.1');
28
+ this.setNestedValue('flowDataSet.@xsi:schemaLocation', 'http://lca.jrc.it/ILCD/Flow ../../schemas/ILCD_FlowDataSet.xsd');
29
+ // Ensure required nested structure exists
30
+ this.ensureNestedStructure([
31
+ 'flowDataSet',
32
+ 'flowDataSet.flowInformation',
33
+ 'flowDataSet.flowInformation.dataSetInformation',
34
+ 'flowDataSet.flowInformation.dataSetInformation.classificationInformation',
35
+ 'flowDataSet.flowInformation.quantitativeReference',
36
+ 'flowDataSet.modellingAndValidation',
37
+ 'flowDataSet.modellingAndValidation.LCIMethod',
38
+ 'flowDataSet.administrativeInformation',
39
+ 'flowDataSet.administrativeInformation.dataEntryBy',
40
+ 'flowDataSet.administrativeInformation.publicationAndOwnership',
41
+ 'flowDataSet.flowProperties',
42
+ ]);
43
+ // Set required fields with default values if they don't exist
44
+ if (!this.getNestedValue('flowDataSet.flowInformation.dataSetInformation.common:UUID')) {
45
+ this.setNestedValue('flowDataSet.flowInformation.dataSetInformation.common:UUID', crypto.randomUUID());
46
+ }
47
+ if (!this.getNestedValue('flowDataSet.administrativeInformation.dataEntryBy.common:timeStamp')) {
48
+ this.setNestedValue('flowDataSet.administrativeInformation.dataEntryBy.common:timeStamp', new Date().toISOString());
49
+ }
50
+ // if (
51
+ // !this.getNestedValue(
52
+ // 'flowDataSet.administrativeInformation.publicationAndOwnership.common:dataSetVersion'
53
+ // )
54
+ // ) {
55
+ // this.setNestedValue(
56
+ // 'flowDataSet.administrativeInformation.publicationAndOwnership.common:dataSetVersion',
57
+ // '1.0.0'
58
+ // );
59
+ // }
60
+ // Set required reference fields with default values
61
+ // if (
62
+ // !this.getNestedValue(
63
+ // 'flowDataSet.administrativeInformation.dataEntryBy.common:referenceToDataSetFormat'
64
+ // )
65
+ // ) {
66
+ // this.setNestedValue(
67
+ // 'flowDataSet.administrativeInformation.dataEntryBy.common:referenceToDataSetFormat',
68
+ // {
69
+ // '@type': 'source data set',
70
+ // '@refObjectId': '00000000-0000-0000-0000-000000000000',
71
+ // '@version': '00.00.000',
72
+ // '@uri': '',
73
+ // 'common:shortDescription': new MultiLangArray(),
74
+ // }
75
+ // );
76
+ // }
77
+ // if (
78
+ // !this.getNestedValue(
79
+ // 'flowDataSet.administrativeInformation.publicationAndOwnership.common:referenceToOwnershipOfDataSet'
80
+ // )
81
+ // ) {
82
+ // this.setNestedValue(
83
+ // 'flowDataSet.administrativeInformation.publicationAndOwnership.common:referenceToOwnershipOfDataSet',
84
+ // {
85
+ // '@type': 'contact data set',
86
+ // '@refObjectId': this.getNestedValue(
87
+ // 'flowDataSet.flowInformation.dataSetInformation.common:UUID'
88
+ // ),
89
+ // '@version': '00.00.000',
90
+ // '@uri': '',
91
+ // 'common:shortDescription': new MultiLangArray(),
92
+ // }
93
+ // );
94
+ // }
95
+ // Initialize empty arrays for multi-language text fields
96
+ if (!this.getNestedValue('flowDataSet.flowInformation.dataSetInformation.common:name')) {
97
+ this.setNestedValue('flowDataSet.flowInformation.dataSetInformation.common:name', new multi_lang_types_1.MultiLangArray());
98
+ }
99
+ if (!this.getNestedValue('flowDataSet.flowInformation.dataSetInformation.common:shortName')) {
100
+ this.setNestedValue('flowDataSet.flowInformation.dataSetInformation.common:shortName', new multi_lang_types_1.MultiLangArray());
101
+ }
102
+ if (!this.getNestedValue('flowDataSet.flowInformation.dataSetInformation.common:synonyms')) {
103
+ this.setNestedValue('flowDataSet.flowInformation.dataSetInformation.common:synonyms', new multi_lang_types_1.MultiLangArray());
104
+ }
105
+ if (!this.getNestedValue('flowDataSet.flowInformation.dataSetInformation.common:generalComment')) {
106
+ this.setNestedValue('flowDataSet.flowInformation.dataSetInformation.common:generalComment', new multi_lang_types_1.MultiLangArray());
107
+ }
108
+ // Initialize required classification structure
109
+ // if (
110
+ // !this.getNestedValue(
111
+ // 'flowDataSet.flowInformation.dataSetInformation.classificationInformation.common:classification'
112
+ // )
113
+ // ) {
114
+ // this.setNestedValue(
115
+ // 'flowDataSet.flowInformation.dataSetInformation.classificationInformation.common:classification',
116
+ // {
117
+ // 'common:class': {
118
+ // '@level': '0',
119
+ // '@classId': '00000000-0000-0000-0000-000000000000',
120
+ // '#text': 'General flow',
121
+ // },
122
+ // }
123
+ // );
124
+ // }
125
+ // Initialize flow properties array
126
+ if (!this.getNestedValue('flowDataSet.flowProperties')) {
127
+ this.setNestedValue('flowDataSet.flowProperties', []);
128
+ }
129
+ // Set flow type if not specified
130
+ // if (
131
+ // !this.getNestedValue(
132
+ // 'flowDataSet.modellingAndValidation.LCIMethod.flowType'
133
+ // )
134
+ // ) {
135
+ // this.setNestedValue(
136
+ // 'flowDataSet.modellingAndValidation.LCIMethod.flowType',
137
+ // 'Elementary flow'
138
+ // );
139
+ // }
140
+ }
141
+ }
142
+ exports.TidasFlow = TidasFlow;
143
+ //# sourceMappingURL=TidasFlow.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"TidasFlow.js","sourceRoot":"","sources":["../../../src/core/entities/TidasFlow.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,14 @@
1
+ import { TidasEntity } from '../base/TidasEntity';
2
+ import { FlowProperty } from '../../types';
3
+ import { ValidationConfig } from '../config/ValidationConfig';
4
+ /**
5
+ * TIDAS FlowProperty entity - pure data container
6
+ * Represents flow characteristics (mass, energy, etc.) in LCA with schema validation
7
+ */
8
+ export declare class TidasFlowProperty extends TidasEntity<FlowProperty> {
9
+ constructor(initialData?: Partial<FlowProperty>, validationConfig?: Partial<ValidationConfig>);
10
+ get flowPropertyDataSet(): FlowProperty['flowPropertyDataSet'];
11
+ set flowPropertyDataSet(value: FlowProperty['flowPropertyDataSet']);
12
+ protected initializeDefaults(): void;
13
+ }
14
+ //# sourceMappingURL=TidasFlowProperty.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"TidasFlowProperty.d.ts","sourceRoot":"","sources":["../../../src/core/entities/TidasFlowProperty.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,qBAAqB,CAAC;AAElD,OAAO,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AAC3C,OAAO,EAAE,gBAAgB,EAAE,MAAM,4BAA4B,CAAC;AAG9D;;;GAGG;AACH,qBAAa,iBAAkB,SAAQ,WAAW,CAAC,YAAY,CAAC;gBAE5D,WAAW,CAAC,EAAE,OAAO,CAAC,YAAY,CAAC,EACnC,gBAAgB,CAAC,EAAE,OAAO,CAAC,gBAAgB,CAAC;IAM9C,IAAI,mBAAmB,IAAI,YAAY,CAAC,qBAAqB,CAAC,CAE7D;IAED,IAAI,mBAAmB,CAAC,KAAK,EAAE,YAAY,CAAC,qBAAqB,CAAC,EAEjE;IAED,SAAS,CAAC,kBAAkB,IAAI,IAAI;CAuMrC"}