digitaltwin-core 0.14.0 → 0.14.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 (170) hide show
  1. package/README.md +2 -2
  2. package/package.json +102 -106
  3. package/dist/auth/apisix_parser.d.ts +0 -146
  4. package/dist/auth/apisix_parser.d.ts.map +0 -1
  5. package/dist/auth/apisix_parser.js +0 -185
  6. package/dist/auth/apisix_parser.js.map +0 -1
  7. package/dist/auth/auth_config.d.ts +0 -126
  8. package/dist/auth/auth_config.d.ts.map +0 -1
  9. package/dist/auth/auth_config.js +0 -169
  10. package/dist/auth/auth_config.js.map +0 -1
  11. package/dist/auth/index.d.ts +0 -5
  12. package/dist/auth/index.d.ts.map +0 -1
  13. package/dist/auth/index.js +0 -4
  14. package/dist/auth/index.js.map +0 -1
  15. package/dist/auth/types.d.ts +0 -100
  16. package/dist/auth/types.d.ts.map +0 -1
  17. package/dist/auth/types.js +0 -2
  18. package/dist/auth/types.js.map +0 -1
  19. package/dist/auth/user_service.d.ts +0 -86
  20. package/dist/auth/user_service.d.ts.map +0 -1
  21. package/dist/auth/user_service.js +0 -237
  22. package/dist/auth/user_service.js.map +0 -1
  23. package/dist/components/assets_manager.d.ts +0 -662
  24. package/dist/components/assets_manager.d.ts.map +0 -1
  25. package/dist/components/assets_manager.js +0 -1529
  26. package/dist/components/assets_manager.js.map +0 -1
  27. package/dist/components/async_upload.d.ts +0 -20
  28. package/dist/components/async_upload.d.ts.map +0 -1
  29. package/dist/components/async_upload.js +0 -10
  30. package/dist/components/async_upload.js.map +0 -1
  31. package/dist/components/collector.d.ts +0 -203
  32. package/dist/components/collector.d.ts.map +0 -1
  33. package/dist/components/collector.js +0 -202
  34. package/dist/components/collector.js.map +0 -1
  35. package/dist/components/custom_table_manager.d.ts +0 -503
  36. package/dist/components/custom_table_manager.d.ts.map +0 -1
  37. package/dist/components/custom_table_manager.js +0 -1052
  38. package/dist/components/custom_table_manager.js.map +0 -1
  39. package/dist/components/global_assets_handler.d.ts +0 -63
  40. package/dist/components/global_assets_handler.d.ts.map +0 -1
  41. package/dist/components/global_assets_handler.js +0 -127
  42. package/dist/components/global_assets_handler.js.map +0 -1
  43. package/dist/components/handler.d.ts +0 -104
  44. package/dist/components/handler.d.ts.map +0 -1
  45. package/dist/components/handler.js +0 -110
  46. package/dist/components/handler.js.map +0 -1
  47. package/dist/components/harvester.d.ts +0 -182
  48. package/dist/components/harvester.d.ts.map +0 -1
  49. package/dist/components/harvester.js +0 -393
  50. package/dist/components/harvester.js.map +0 -1
  51. package/dist/components/index.d.ts +0 -11
  52. package/dist/components/index.d.ts.map +0 -1
  53. package/dist/components/index.js +0 -9
  54. package/dist/components/index.js.map +0 -1
  55. package/dist/components/interfaces.d.ts +0 -126
  56. package/dist/components/interfaces.d.ts.map +0 -1
  57. package/dist/components/interfaces.js +0 -8
  58. package/dist/components/interfaces.js.map +0 -1
  59. package/dist/components/map_manager.d.ts +0 -61
  60. package/dist/components/map_manager.d.ts.map +0 -1
  61. package/dist/components/map_manager.js +0 -242
  62. package/dist/components/map_manager.js.map +0 -1
  63. package/dist/components/tileset_manager.d.ts +0 -125
  64. package/dist/components/tileset_manager.d.ts.map +0 -1
  65. package/dist/components/tileset_manager.js +0 -618
  66. package/dist/components/tileset_manager.js.map +0 -1
  67. package/dist/components/types.d.ts +0 -226
  68. package/dist/components/types.d.ts.map +0 -1
  69. package/dist/components/types.js +0 -8
  70. package/dist/components/types.js.map +0 -1
  71. package/dist/database/adapters/knex_database_adapter.d.ts +0 -92
  72. package/dist/database/adapters/knex_database_adapter.d.ts.map +0 -1
  73. package/dist/database/adapters/knex_database_adapter.js +0 -647
  74. package/dist/database/adapters/knex_database_adapter.js.map +0 -1
  75. package/dist/database/database_adapter.d.ts +0 -251
  76. package/dist/database/database_adapter.d.ts.map +0 -1
  77. package/dist/database/database_adapter.js +0 -46
  78. package/dist/database/database_adapter.js.map +0 -1
  79. package/dist/engine/digital_twin_engine.d.ts +0 -253
  80. package/dist/engine/digital_twin_engine.d.ts.map +0 -1
  81. package/dist/engine/digital_twin_engine.js +0 -790
  82. package/dist/engine/digital_twin_engine.js.map +0 -1
  83. package/dist/engine/endpoints.d.ts +0 -47
  84. package/dist/engine/endpoints.d.ts.map +0 -1
  85. package/dist/engine/endpoints.js +0 -56
  86. package/dist/engine/endpoints.js.map +0 -1
  87. package/dist/engine/events.d.ts +0 -93
  88. package/dist/engine/events.d.ts.map +0 -1
  89. package/dist/engine/events.js +0 -71
  90. package/dist/engine/events.js.map +0 -1
  91. package/dist/engine/initializer.d.ts +0 -62
  92. package/dist/engine/initializer.d.ts.map +0 -1
  93. package/dist/engine/initializer.js +0 -108
  94. package/dist/engine/initializer.js.map +0 -1
  95. package/dist/engine/queue_manager.d.ts +0 -87
  96. package/dist/engine/queue_manager.d.ts.map +0 -1
  97. package/dist/engine/queue_manager.js +0 -196
  98. package/dist/engine/queue_manager.js.map +0 -1
  99. package/dist/engine/scheduler.d.ts +0 -30
  100. package/dist/engine/scheduler.d.ts.map +0 -1
  101. package/dist/engine/scheduler.js +0 -370
  102. package/dist/engine/scheduler.js.map +0 -1
  103. package/dist/engine/upload_processor.d.ts +0 -36
  104. package/dist/engine/upload_processor.d.ts.map +0 -1
  105. package/dist/engine/upload_processor.js +0 -101
  106. package/dist/engine/upload_processor.js.map +0 -1
  107. package/dist/env/env.d.ts +0 -134
  108. package/dist/env/env.d.ts.map +0 -1
  109. package/dist/env/env.js +0 -177
  110. package/dist/env/env.js.map +0 -1
  111. package/dist/index.d.ts +0 -49
  112. package/dist/index.d.ts.map +0 -1
  113. package/dist/index.js +0 -57
  114. package/dist/index.js.map +0 -1
  115. package/dist/openapi/generator.d.ts +0 -93
  116. package/dist/openapi/generator.d.ts.map +0 -1
  117. package/dist/openapi/generator.js +0 -293
  118. package/dist/openapi/generator.js.map +0 -1
  119. package/dist/openapi/index.d.ts +0 -9
  120. package/dist/openapi/index.d.ts.map +0 -1
  121. package/dist/openapi/index.js +0 -9
  122. package/dist/openapi/index.js.map +0 -1
  123. package/dist/openapi/types.d.ts +0 -182
  124. package/dist/openapi/types.d.ts.map +0 -1
  125. package/dist/openapi/types.js +0 -16
  126. package/dist/openapi/types.js.map +0 -1
  127. package/dist/storage/adapters/local_storage_service.d.ts +0 -51
  128. package/dist/storage/adapters/local_storage_service.d.ts.map +0 -1
  129. package/dist/storage/adapters/local_storage_service.js +0 -110
  130. package/dist/storage/adapters/local_storage_service.js.map +0 -1
  131. package/dist/storage/adapters/ovh_storage_service.d.ts +0 -72
  132. package/dist/storage/adapters/ovh_storage_service.d.ts.map +0 -1
  133. package/dist/storage/adapters/ovh_storage_service.js +0 -206
  134. package/dist/storage/adapters/ovh_storage_service.js.map +0 -1
  135. package/dist/storage/storage_factory.d.ts +0 -14
  136. package/dist/storage/storage_factory.d.ts.map +0 -1
  137. package/dist/storage/storage_factory.js +0 -40
  138. package/dist/storage/storage_factory.js.map +0 -1
  139. package/dist/storage/storage_service.d.ts +0 -163
  140. package/dist/storage/storage_service.d.ts.map +0 -1
  141. package/dist/storage/storage_service.js +0 -54
  142. package/dist/storage/storage_service.js.map +0 -1
  143. package/dist/types/data_record.d.ts +0 -123
  144. package/dist/types/data_record.d.ts.map +0 -1
  145. package/dist/types/data_record.js +0 -8
  146. package/dist/types/data_record.js.map +0 -1
  147. package/dist/utils/http_responses.d.ts +0 -155
  148. package/dist/utils/http_responses.d.ts.map +0 -1
  149. package/dist/utils/http_responses.js +0 -190
  150. package/dist/utils/http_responses.js.map +0 -1
  151. package/dist/utils/index.d.ts +0 -8
  152. package/dist/utils/index.d.ts.map +0 -1
  153. package/dist/utils/index.js +0 -6
  154. package/dist/utils/index.js.map +0 -1
  155. package/dist/utils/logger.d.ts +0 -74
  156. package/dist/utils/logger.d.ts.map +0 -1
  157. package/dist/utils/logger.js +0 -92
  158. package/dist/utils/logger.js.map +0 -1
  159. package/dist/utils/map_to_data_record.d.ts +0 -10
  160. package/dist/utils/map_to_data_record.d.ts.map +0 -1
  161. package/dist/utils/map_to_data_record.js +0 -36
  162. package/dist/utils/map_to_data_record.js.map +0 -1
  163. package/dist/utils/servable_endpoint.d.ts +0 -63
  164. package/dist/utils/servable_endpoint.d.ts.map +0 -1
  165. package/dist/utils/servable_endpoint.js +0 -67
  166. package/dist/utils/servable_endpoint.js.map +0 -1
  167. package/dist/utils/zip_utils.d.ts +0 -66
  168. package/dist/utils/zip_utils.d.ts.map +0 -1
  169. package/dist/utils/zip_utils.js +0 -169
  170. package/dist/utils/zip_utils.js.map +0 -1
@@ -1 +0,0 @@
1
- {"version":3,"file":"custom_table_manager.js","sourceRoot":"","sources":["../../src/components/custom_table_manager.ts"],"names":[],"mappings":"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"}
@@ -1,63 +0,0 @@
1
- import { Handler } from './handler.js';
2
- import type { ComponentConfiguration, DataResponse } from './types.js';
3
- import type { AssetsManager } from './assets_manager.js';
4
- /**
5
- * Global assets handler that provides access to ALL assets across ALL asset managers.
6
- *
7
- * This handler aggregates assets from all registered AssetsManager instances
8
- * without duplicating their logic or hardcoding component names.
9
- *
10
- * @class GlobalAssetsHandler
11
- * @extends {Handler}
12
- *
13
- * @example
14
- * ```typescript
15
- * const globalHandler = new GlobalAssetsHandler()
16
- * globalHandler.setAssetsManagers([gltfManager, pointcloudManager])
17
- *
18
- * // Usage:
19
- * // GET /assets/all - Returns all assets from all managers
20
- * ```
21
- */
22
- export declare class GlobalAssetsHandler extends Handler {
23
- private assetsManagers;
24
- /**
25
- * Inject AssetsManager dependencies (called by engine)
26
- */
27
- setAssetsManagers(assetsManagers: AssetsManager[]): void;
28
- /**
29
- * Component configuration for the global assets handler
30
- */
31
- getConfiguration(): ComponentConfiguration;
32
- /**
33
- * Get all assets from all registered asset managers.
34
- *
35
- * This method delegates to each AssetsManager's getAllAssets() method
36
- * and aggregates the results with proper endpoint URLs.
37
- *
38
- * @returns {Promise<DataResponse>} JSON response with all assets
39
- *
40
- * @example
41
- * ```typescript
42
- * // GET /assets/all
43
- * // Returns: {
44
- * // total: 5,
45
- * // assets: [
46
- * // { id: 1, component: "gltf", url: "/gltf/1", ... },
47
- * // { id: 2, component: "pointcloud", url: "/pointcloud/2", ... }
48
- * // ]
49
- * // }
50
- * ```
51
- */
52
- getAllAssets(): Promise<DataResponse>;
53
- /**
54
- * HTTP endpoints for global assets
55
- */
56
- getEndpoints(): Array<{
57
- method: any;
58
- path: string;
59
- handler: (...args: any[]) => any;
60
- responseType?: string;
61
- }>;
62
- }
63
- //# sourceMappingURL=global_assets_handler.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"global_assets_handler.d.ts","sourceRoot":"","sources":["../../src/components/global_assets_handler.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,cAAc,CAAA;AACtC,OAAO,KAAK,EAAE,sBAAsB,EAAE,YAAY,EAAE,MAAM,YAAY,CAAA;AACtE,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAA;AAExD;;;;;;;;;;;;;;;;;GAiBG;AACH,qBAAa,mBAAoB,SAAQ,OAAO;IAC5C,OAAO,CAAC,cAAc,CAAsB;IAE5C;;OAEG;IACH,iBAAiB,CAAC,cAAc,EAAE,aAAa,EAAE,GAAG,IAAI;IAIxD;;OAEG;IACH,gBAAgB,IAAI,sBAAsB;IAS1C;;;;;;;;;;;;;;;;;;;OAmBG;IACG,YAAY,IAAI,OAAO,CAAC,YAAY,CAAC;IAuD3C;;OAEG;IACH,YAAY,IAAI,KAAK,CAAC;QAClB,MAAM,EAAE,GAAG,CAAA;QACX,IAAI,EAAE,MAAM,CAAA;QACZ,OAAO,EAAE,CAAC,GAAG,IAAI,EAAE,GAAG,EAAE,KAAK,GAAG,CAAA;QAChC,YAAY,CAAC,EAAE,MAAM,CAAA;KACxB,CAAC;CAUL"}
@@ -1,127 +0,0 @@
1
- import { Handler } from './handler.js';
2
- /**
3
- * Global assets handler that provides access to ALL assets across ALL asset managers.
4
- *
5
- * This handler aggregates assets from all registered AssetsManager instances
6
- * without duplicating their logic or hardcoding component names.
7
- *
8
- * @class GlobalAssetsHandler
9
- * @extends {Handler}
10
- *
11
- * @example
12
- * ```typescript
13
- * const globalHandler = new GlobalAssetsHandler()
14
- * globalHandler.setAssetsManagers([gltfManager, pointcloudManager])
15
- *
16
- * // Usage:
17
- * // GET /assets/all - Returns all assets from all managers
18
- * ```
19
- */
20
- export class GlobalAssetsHandler extends Handler {
21
- constructor() {
22
- super(...arguments);
23
- this.assetsManagers = [];
24
- }
25
- /**
26
- * Inject AssetsManager dependencies (called by engine)
27
- */
28
- setAssetsManagers(assetsManagers) {
29
- this.assetsManagers = assetsManagers;
30
- }
31
- /**
32
- * Component configuration for the global assets handler
33
- */
34
- getConfiguration() {
35
- return {
36
- name: 'global_assets',
37
- description: 'Global handler for all assets across all managers',
38
- contentType: 'application/json',
39
- tags: ['assets', 'global', 'all']
40
- };
41
- }
42
- /**
43
- * Get all assets from all registered asset managers.
44
- *
45
- * This method delegates to each AssetsManager's getAllAssets() method
46
- * and aggregates the results with proper endpoint URLs.
47
- *
48
- * @returns {Promise<DataResponse>} JSON response with all assets
49
- *
50
- * @example
51
- * ```typescript
52
- * // GET /assets/all
53
- * // Returns: {
54
- * // total: 5,
55
- * // assets: [
56
- * // { id: 1, component: "gltf", url: "/gltf/1", ... },
57
- * // { id: 2, component: "pointcloud", url: "/pointcloud/2", ... }
58
- * // ]
59
- * // }
60
- * ```
61
- */
62
- async getAllAssets() {
63
- try {
64
- const allAssets = [];
65
- // Iterate through all registered AssetsManager instances
66
- for (const manager of this.assetsManagers) {
67
- try {
68
- const assets = await manager.getAllAssets();
69
- const config = manager.getConfiguration();
70
- // Transform assets to include component info and URLs
71
- const transformedAssets = assets.map(asset => ({
72
- id: asset.id,
73
- component: config.name,
74
- date: asset.date,
75
- contentType: asset.contentType,
76
- description: asset.description,
77
- source: asset.source,
78
- owner_id: asset.owner_id,
79
- filename: asset.filename,
80
- // Generate URLs using the manager's configuration
81
- url: `/${config.endpoint}/${asset.id}`,
82
- download_url: `/${config.endpoint}/${asset.id}/download`
83
- }));
84
- allAssets.push(...transformedAssets);
85
- }
86
- catch (error) {
87
- // Skip this manager if it fails, don't break the whole operation
88
- console.warn(`Failed to get assets from manager ${manager.getConfiguration().name}:`, error);
89
- continue;
90
- }
91
- }
92
- // Sort by date (newest first)
93
- allAssets.sort((a, b) => new Date(b.date).getTime() - new Date(a.date).getTime());
94
- return {
95
- status: 200,
96
- content: JSON.stringify({
97
- total: allAssets.length,
98
- assets: allAssets
99
- }),
100
- headers: { 'Content-Type': 'application/json' }
101
- };
102
- }
103
- catch (error) {
104
- return {
105
- status: 500,
106
- content: JSON.stringify({
107
- error: error instanceof Error ? error.message : 'Unknown error'
108
- }),
109
- headers: { 'Content-Type': 'application/json' }
110
- };
111
- }
112
- }
113
- /**
114
- * HTTP endpoints for global assets
115
- */
116
- getEndpoints() {
117
- return [
118
- {
119
- method: 'get',
120
- path: '/assets/all',
121
- handler: this.getAllAssets.bind(this),
122
- responseType: 'application/json'
123
- }
124
- ];
125
- }
126
- }
127
- //# sourceMappingURL=global_assets_handler.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"global_assets_handler.js","sourceRoot":"","sources":["../../src/components/global_assets_handler.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,cAAc,CAAA;AAItC;;;;;;;;;;;;;;;;;GAiBG;AACH,MAAM,OAAO,mBAAoB,SAAQ,OAAO;IAAhD;;QACY,mBAAc,GAAoB,EAAE,CAAA;IAkHhD,CAAC;IAhHG;;OAEG;IACH,iBAAiB,CAAC,cAA+B;QAC7C,IAAI,CAAC,cAAc,GAAG,cAAc,CAAA;IACxC,CAAC;IAED;;OAEG;IACH,gBAAgB;QACZ,OAAO;YACH,IAAI,EAAE,eAAe;YACrB,WAAW,EAAE,mDAAmD;YAChE,WAAW,EAAE,kBAAkB;YAC/B,IAAI,EAAE,CAAC,QAAQ,EAAE,QAAQ,EAAE,KAAK,CAAC;SACpC,CAAA;IACL,CAAC;IAED;;;;;;;;;;;;;;;;;;;OAmBG;IACH,KAAK,CAAC,YAAY;QACd,IAAI,CAAC;YACD,MAAM,SAAS,GAAG,EAAE,CAAA;YAEpB,yDAAyD;YACzD,KAAK,MAAM,OAAO,IAAI,IAAI,CAAC,cAAc,EAAE,CAAC;gBACxC,IAAI,CAAC;oBACD,MAAM,MAAM,GAAG,MAAM,OAAO,CAAC,YAAY,EAAE,CAAA;oBAC3C,MAAM,MAAM,GAAG,OAAO,CAAC,gBAAgB,EAAE,CAAA;oBAEzC,sDAAsD;oBACtD,MAAM,iBAAiB,GAAG,MAAM,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;wBAC3C,EAAE,EAAE,KAAK,CAAC,EAAE;wBACZ,SAAS,EAAE,MAAM,CAAC,IAAI;wBACtB,IAAI,EAAE,KAAK,CAAC,IAAI;wBAChB,WAAW,EAAE,KAAK,CAAC,WAAW;wBAC9B,WAAW,EAAE,KAAK,CAAC,WAAW;wBAC9B,MAAM,EAAE,KAAK,CAAC,MAAM;wBACpB,QAAQ,EAAE,KAAK,CAAC,QAAQ;wBACxB,QAAQ,EAAE,KAAK,CAAC,QAAQ;wBACxB,kDAAkD;wBAClD,GAAG,EAAE,IAAI,MAAM,CAAC,QAAQ,IAAI,KAAK,CAAC,EAAE,EAAE;wBACtC,YAAY,EAAE,IAAI,MAAM,CAAC,QAAQ,IAAI,KAAK,CAAC,EAAE,WAAW;qBAC3D,CAAC,CAAC,CAAA;oBAEH,SAAS,CAAC,IAAI,CAAC,GAAG,iBAAiB,CAAC,CAAA;gBACxC,CAAC;gBAAC,OAAO,KAAK,EAAE,CAAC;oBACb,iEAAiE;oBACjE,OAAO,CAAC,IAAI,CAAC,qCAAqC,OAAO,CAAC,gBAAgB,EAAE,CAAC,IAAI,GAAG,EAAE,KAAK,CAAC,CAAA;oBAC5F,SAAQ;gBACZ,CAAC;YACL,CAAC;YAED,8BAA8B;YAC9B,SAAS,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,IAAI,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,OAAO,EAAE,GAAG,IAAI,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,OAAO,EAAE,CAAC,CAAA;YAEjF,OAAO;gBACH,MAAM,EAAE,GAAG;gBACX,OAAO,EAAE,IAAI,CAAC,SAAS,CAAC;oBACpB,KAAK,EAAE,SAAS,CAAC,MAAM;oBACvB,MAAM,EAAE,SAAS;iBACpB,CAAC;gBACF,OAAO,EAAE,EAAE,cAAc,EAAE,kBAAkB,EAAE;aAClD,CAAA;QACL,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACb,OAAO;gBACH,MAAM,EAAE,GAAG;gBACX,OAAO,EAAE,IAAI,CAAC,SAAS,CAAC;oBACpB,KAAK,EAAE,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,eAAe;iBAClE,CAAC;gBACF,OAAO,EAAE,EAAE,cAAc,EAAE,kBAAkB,EAAE;aAClD,CAAA;QACL,CAAC;IACL,CAAC;IAED;;OAEG;IACH,YAAY;QAMR,OAAO;YACH;gBACI,MAAM,EAAE,KAAK;gBACb,IAAI,EAAE,aAAa;gBACnB,OAAO,EAAE,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,IAAI,CAAC;gBACrC,YAAY,EAAE,kBAAkB;aACnC;SACJ,CAAA;IACL,CAAC;CACJ"}
@@ -1,104 +0,0 @@
1
- /**
2
- * @fileoverview Handler component base class for HTTP endpoint providers
3
- *
4
- * Handlers are lightweight, stateless components that expose HTTP endpoints
5
- * for on-demand data access, computation, or utility services within the digital twin.
6
- */
7
- import type { Component, Servable } from './interfaces.js';
8
- import type { ComponentConfiguration } from './types.js';
9
- import type { DataResponse } from './types.js';
10
- import type { HttpMethod } from '../engine/endpoints.js';
11
- import type { OpenAPIDocumentable, OpenAPIComponentSpec } from '../openapi/types.js';
12
- /**
13
- * Runtime descriptor for an HTTP endpoint handler.
14
- *
15
- * Represents a fully resolved endpoint with its bound handler function,
16
- * ready for registration with the Express router.
17
- */
18
- type EndpointDescriptor = {
19
- /** HTTP method for the endpoint */
20
- method: HttpMethod;
21
- /** URL path pattern */
22
- path: string;
23
- /** Response content type */
24
- responseType?: string;
25
- /** Bound handler function */
26
- handler: (...args: any[]) => Promise<DataResponse>;
27
- };
28
- /**
29
- * Abstract base class for Handler components.
30
- *
31
- * Handlers are lightweight, stateless components that expose HTTP endpoints
32
- * for on-demand data access, computation, or utility services. Unlike Collectors
33
- * and Harvesters, they don't run on schedules but respond to HTTP requests.
34
- *
35
- * Key features:
36
- * - Expose HTTP endpoints using the @servableEndpoint decorator
37
- * - Stateless operation (no database or storage dependencies by default)
38
- * - Suitable for real-time computations, data queries, or API proxies
39
- *
40
- * @example
41
- * ```typescript
42
- * class CalculatorHandler extends Handler {
43
- * getConfiguration() {
44
- * return {
45
- * name: 'calculator-handler',
46
- * type: 'handler',
47
- * contentType: 'application/json'
48
- * };
49
- * }
50
- *
51
- * @servableEndpoint({ path: '/api/calculate/sum', method: 'post' })
52
- * async calculateSum(req: Request) {
53
- * const { a, b } = req.body;
54
- * return {
55
- * status: 200,
56
- * content: { result: a + b }
57
- * };
58
- * }
59
- * }
60
- * ```
61
- */
62
- export declare abstract class Handler implements Component, Servable, OpenAPIDocumentable {
63
- /**
64
- * Returns the handler's configuration.
65
- *
66
- * Implementations must provide basic component information including
67
- * name, type, and default content type for responses.
68
- *
69
- * @returns Component configuration object
70
- *
71
- * @example
72
- * ```typescript
73
- * getConfiguration() {
74
- * return {
75
- * name: 'my-handler',
76
- * type: 'handler',
77
- * contentType: 'application/json'
78
- * };
79
- * }
80
- * ```
81
- */
82
- abstract getConfiguration(): ComponentConfiguration;
83
- /**
84
- * Resolves and returns HTTP endpoints defined on this handler.
85
- *
86
- * Automatically discovers endpoints declared with the @servableEndpoint
87
- * decorator and creates bound handler functions for registration with
88
- * the Express router.
89
- *
90
- * @returns Array of endpoint descriptors with bound handler functions
91
- */
92
- getEndpoints(): EndpointDescriptor[];
93
- /**
94
- * Returns the OpenAPI specification for this handler's endpoints.
95
- *
96
- * Generates documentation for all endpoints declared with @servableEndpoint.
97
- * Can be overridden by subclasses for more detailed specifications.
98
- *
99
- * @returns {OpenAPIComponentSpec} OpenAPI paths, tags, and schemas for this handler
100
- */
101
- getOpenAPISpec(): OpenAPIComponentSpec;
102
- }
103
- export {};
104
- //# sourceMappingURL=handler.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"handler.d.ts","sourceRoot":"","sources":["../../src/components/handler.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,KAAK,EAAE,SAAS,EAAE,QAAQ,EAAE,MAAM,iBAAiB,CAAA;AAC1D,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,YAAY,CAAA;AACxD,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,YAAY,CAAA;AAC9C,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,wBAAwB,CAAA;AACxD,OAAO,KAAK,EAAE,mBAAmB,EAAE,oBAAoB,EAAmB,MAAM,qBAAqB,CAAA;AAsBrG;;;;;GAKG;AACH,KAAK,kBAAkB,GAAG;IACtB,mCAAmC;IACnC,MAAM,EAAE,UAAU,CAAA;IAElB,uBAAuB;IACvB,IAAI,EAAE,MAAM,CAAA;IAEZ,4BAA4B;IAC5B,YAAY,CAAC,EAAE,MAAM,CAAA;IAErB,6BAA6B;IAC7B,OAAO,EAAE,CAAC,GAAG,IAAI,EAAE,GAAG,EAAE,KAAK,OAAO,CAAC,YAAY,CAAC,CAAA;CACrD,CAAA;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAiCG;AACH,8BAAsB,OAAQ,YAAW,SAAS,EAAE,QAAQ,EAAE,mBAAmB;IAC7E;;;;;;;;;;;;;;;;;;OAkBG;IACH,QAAQ,CAAC,gBAAgB,IAAI,sBAAsB;IAEnD;;;;;;;;OAQG;IACH,YAAY,IAAI,kBAAkB,EAAE;IAgBpC;;;;;;;OAOG;IACH,cAAc,IAAI,oBAAoB;CAwCzC"}
@@ -1,110 +0,0 @@
1
- /**
2
- * @fileoverview Handler component base class for HTTP endpoint providers
3
- *
4
- * Handlers are lightweight, stateless components that expose HTTP endpoints
5
- * for on-demand data access, computation, or utility services within the digital twin.
6
- */
7
- /**
8
- * Abstract base class for Handler components.
9
- *
10
- * Handlers are lightweight, stateless components that expose HTTP endpoints
11
- * for on-demand data access, computation, or utility services. Unlike Collectors
12
- * and Harvesters, they don't run on schedules but respond to HTTP requests.
13
- *
14
- * Key features:
15
- * - Expose HTTP endpoints using the @servableEndpoint decorator
16
- * - Stateless operation (no database or storage dependencies by default)
17
- * - Suitable for real-time computations, data queries, or API proxies
18
- *
19
- * @example
20
- * ```typescript
21
- * class CalculatorHandler extends Handler {
22
- * getConfiguration() {
23
- * return {
24
- * name: 'calculator-handler',
25
- * type: 'handler',
26
- * contentType: 'application/json'
27
- * };
28
- * }
29
- *
30
- * @servableEndpoint({ path: '/api/calculate/sum', method: 'post' })
31
- * async calculateSum(req: Request) {
32
- * const { a, b } = req.body;
33
- * return {
34
- * status: 200,
35
- * content: { result: a + b }
36
- * };
37
- * }
38
- * }
39
- * ```
40
- */
41
- export class Handler {
42
- /**
43
- * Resolves and returns HTTP endpoints defined on this handler.
44
- *
45
- * Automatically discovers endpoints declared with the @servableEndpoint
46
- * decorator and creates bound handler functions for registration with
47
- * the Express router.
48
- *
49
- * @returns Array of endpoint descriptors with bound handler functions
50
- */
51
- getEndpoints() {
52
- const config = this.getConfiguration();
53
- const ctor = this.constructor;
54
- const endpoints = ctor.__endpoints || [];
55
- return endpoints.map(ep => {
56
- const handlerFn = this[ep.handlerName].bind(this);
57
- return {
58
- method: ep.method,
59
- path: ep.path,
60
- responseType: ep.responseType || config.contentType,
61
- handler: handlerFn
62
- };
63
- });
64
- }
65
- /**
66
- * Returns the OpenAPI specification for this handler's endpoints.
67
- *
68
- * Generates documentation for all endpoints declared with @servableEndpoint.
69
- * Can be overridden by subclasses for more detailed specifications.
70
- *
71
- * @returns {OpenAPIComponentSpec} OpenAPI paths, tags, and schemas for this handler
72
- */
73
- getOpenAPISpec() {
74
- const config = this.getConfiguration();
75
- const endpoints = this.getEndpoints();
76
- const tagName = config.tags?.[0] || config.name;
77
- const paths = {};
78
- for (const endpoint of endpoints) {
79
- const method = endpoint.method.toLowerCase();
80
- if (!paths[endpoint.path]) {
81
- paths[endpoint.path] = {};
82
- }
83
- paths[endpoint.path][method] = {
84
- summary: `${method.toUpperCase()} ${endpoint.path}`,
85
- description: config.description,
86
- tags: [tagName],
87
- responses: {
88
- '200': {
89
- description: 'Successful response',
90
- content: {
91
- [endpoint.responseType || config.contentType]: {
92
- schema: { type: 'object' }
93
- }
94
- }
95
- }
96
- }
97
- };
98
- }
99
- return {
100
- paths,
101
- tags: [
102
- {
103
- name: tagName,
104
- description: config.description
105
- }
106
- ]
107
- };
108
- }
109
- }
110
- //# sourceMappingURL=handler.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"handler.js","sourceRoot":"","sources":["../../src/components/handler.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAgDH;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAiCG;AACH,MAAM,OAAgB,OAAO;IAsBzB;;;;;;;;OAQG;IACH,YAAY;QACR,MAAM,MAAM,GAAG,IAAI,CAAC,gBAAgB,EAAE,CAAA;QACtC,MAAM,IAAI,GAAG,IAAI,CAAC,WAA+C,CAAA;QACjE,MAAM,SAAS,GAAG,IAAI,CAAC,WAAW,IAAI,EAAE,CAAA;QAExC,OAAO,SAAS,CAAC,GAAG,CAAC,EAAE,CAAC,EAAE;YACtB,MAAM,SAAS,GAAI,IAA4B,CAAC,EAAE,CAAC,WAAW,CAAC,CAAC,IAAI,CAAC,IAAI,CAAkC,CAAA;YAC3G,OAAO;gBACH,MAAM,EAAE,EAAE,CAAC,MAAM;gBACjB,IAAI,EAAE,EAAE,CAAC,IAAI;gBACb,YAAY,EAAE,EAAE,CAAC,YAAY,IAAI,MAAM,CAAC,WAAW;gBACnD,OAAO,EAAE,SAAS;aACrB,CAAA;QACL,CAAC,CAAC,CAAA;IACN,CAAC;IAED;;;;;;;OAOG;IACH,cAAc;QACV,MAAM,MAAM,GAAG,IAAI,CAAC,gBAAgB,EAAE,CAAA;QACtC,MAAM,SAAS,GAAG,IAAI,CAAC,YAAY,EAAE,CAAA;QACrC,MAAM,OAAO,GAAG,MAAM,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,IAAI,MAAM,CAAC,IAAI,CAAA;QAC/C,MAAM,KAAK,GAAoC,EAAE,CAAA;QAEjD,KAAK,MAAM,QAAQ,IAAI,SAAS,EAAE,CAAC;YAC/B,MAAM,MAAM,GAAG,QAAQ,CAAC,MAAM,CAAC,WAAW,EAA2B,CAAA;YAErE,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,IAAI,CAAC,EAAE,CAAC;gBACxB,KAAK,CAAC,QAAQ,CAAC,IAAI,CAAC,GAAG,EAAE,CAAA;YAC7B,CAAC;YAED,KAAK,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,MAAM,CAAC,GAAG;gBAC3B,OAAO,EAAE,GAAG,MAAM,CAAC,WAAW,EAAE,IAAI,QAAQ,CAAC,IAAI,EAAE;gBACnD,WAAW,EAAE,MAAM,CAAC,WAAW;gBAC/B,IAAI,EAAE,CAAC,OAAO,CAAC;gBACf,SAAS,EAAE;oBACP,KAAK,EAAE;wBACH,WAAW,EAAE,qBAAqB;wBAClC,OAAO,EAAE;4BACL,CAAC,QAAQ,CAAC,YAAY,IAAI,MAAM,CAAC,WAAW,CAAC,EAAE;gCAC3C,MAAM,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;6BAC7B;yBACJ;qBACJ;iBACJ;aACJ,CAAA;QACL,CAAC;QAED,OAAO;YACH,KAAK;YACL,IAAI,EAAE;gBACF;oBACI,IAAI,EAAE,OAAO;oBACb,WAAW,EAAE,MAAM,CAAC,WAAW;iBAClC;aACJ;SACJ,CAAA;IACL,CAAC;CACJ"}
@@ -1,182 +0,0 @@
1
- import type { Component, ScheduleRunnable, Servable } from './interfaces.js';
2
- import type { DataResponse, HarvesterConfiguration } from './types.js';
3
- import type { DataRecord } from '../types/data_record.js';
4
- import type { DatabaseAdapter } from '../database/database_adapter.js';
5
- import type { StorageService } from '../storage/storage_service.js';
6
- import type { HttpMethod } from '../engine/endpoints.js';
7
- import type { OpenAPIDocumentable, OpenAPIComponentSpec } from '../openapi/types.js';
8
- /**
9
- * Abstract base class for data harvesting components.
10
- *
11
- * Harvesters process and analyze data that has been collected by Collectors,
12
- * applying transformations, aggregations, or other data processing operations.
13
- * They can be triggered by new source data or run on a schedule.
14
- *
15
- * Key features:
16
- * - Process existing collected data with configurable ranges
17
- * - Support both time-based and count-based data retrieval
18
- * - Can be triggered by source data changes or scheduled execution
19
- * - Provide HTTP endpoints for accessing processed results
20
- *
21
- * @example
22
- * ```typescript
23
- * class TrafficAnalysisHarvester extends Harvester {
24
- * getUserConfiguration() {
25
- * return {
26
- * name: 'traffic-analysis',
27
- * type: 'harvester',
28
- * source: 'traffic-collector',
29
- * source_range: '1h', // Process last hour of data
30
- * schedule: '0 *\/15 * * * *' // Run every 15 minutes
31
- * };
32
- * }
33
- *
34
- * async harvest(data: DataRecord[]): Promise<DataRecord[]> {
35
- * // Process traffic data and return analysis results
36
- * return this.analyzeTrafficPatterns(data);
37
- * }
38
- * }
39
- * ```
40
- */
41
- export declare abstract class Harvester implements Component<HarvesterConfiguration>, ScheduleRunnable, Servable, OpenAPIDocumentable {
42
- protected db: DatabaseAdapter;
43
- protected storage: StorageService;
44
- private _configCache?;
45
- /**
46
- * Injects database and storage dependencies into the harvester.
47
- *
48
- * Called during component initialization to provide access to
49
- * data storage and file operations.
50
- *
51
- * @param db - Database adapter for reading source data
52
- * @param storage - Storage service for file operations
53
- */
54
- setDependencies(db: DatabaseAdapter, storage: StorageService): void;
55
- /**
56
- * Provides the basic harvester configuration.
57
- *
58
- * Implementations must return configuration specifying the harvester's
59
- * name, data source, processing range, and scheduling information.
60
- *
61
- * @returns Basic harvester configuration without defaults applied
62
- *
63
- * @example
64
- * ```typescript
65
- * getUserConfiguration() {
66
- * return {
67
- * name: 'weather-analysis',
68
- * type: 'harvester',
69
- * source: 'weather-collector',
70
- * source_range: '24h',
71
- * schedule: '0 0 * * * *' // Daily at midnight
72
- * };
73
- * }
74
- * ```
75
- */
76
- abstract getUserConfiguration(): HarvesterConfiguration;
77
- /**
78
- * Returns the complete harvester configuration with defaults applied.
79
- *
80
- * Merges user configuration with sensible defaults for optional settings.
81
- * This final configuration is used by the engine and scheduler.
82
- *
83
- * @returns Complete configuration with all defaults applied
84
- */
85
- getConfiguration(): HarvesterConfiguration;
86
- /**
87
- * Returns the cron schedule for this harvester.
88
- *
89
- * For 'on-source' trigger mode, returns empty string (no schedule).
90
- * For 'scheduled' mode, uses the provided schedule or defaults to every minute.
91
- *
92
- * @returns Cron expression string or empty string for source-triggered mode
93
- */
94
- getSchedule(): string;
95
- /**
96
- * Allows subclasses to define a custom schedule.
97
- *
98
- * Override this method to provide a custom cron expression
99
- * that differs from the default every-minute schedule.
100
- *
101
- * @returns Custom cron expression string
102
- *
103
- * @example
104
- * ```typescript
105
- * getCustomSchedule() {
106
- * return '0 0 *\/6 * * *'; // Every 6 hours
107
- * }
108
- * ```
109
- */
110
- getCustomSchedule?(): string;
111
- /**
112
- * Processes source data and returns harvested results.
113
- *
114
- * This is the main data processing method that implementations must provide.
115
- * It receives source data (from the configured source component) and any
116
- * dependency data, then performs analysis, transformation, or aggregation.
117
- *
118
- * @param sourceData - Data from the source component (single record or array)
119
- * @param dependenciesData - Data from dependency components, keyed by component name
120
- * @returns Processed data as Buffer(s) to be stored
121
- *
122
- * @example
123
- * ```typescript
124
- * async harvest(sourceData: DataRecord[], dependenciesData: Record<string, DataRecord[]>) {
125
- * const trafficData = sourceData.map(r => JSON.parse(r.data.toString()));
126
- * const analysis = this.performTrafficAnalysis(trafficData);
127
- * return Buffer.from(JSON.stringify(analysis));
128
- * }
129
- * ```
130
- */
131
- abstract harvest(sourceData: DataRecord | DataRecord[], dependenciesData: Record<string, DataRecord | DataRecord[] | null>): Promise<Buffer | Buffer[]>;
132
- /**
133
- * Main execution method for the harvester.
134
- *
135
- * Orchestrates the harvesting process by:
136
- * 1. Determining the date range for data retrieval
137
- * 2. Fetching source and dependency data
138
- * 3. Calling the harvest method with the data
139
- * 4. Storing the results in the database
140
- *
141
- * @returns True if harvesting was successful, false if no data to process
142
- *
143
- * @throws {Error} When source component is not specified
144
- * @throws {Error} When data processing fails
145
- */
146
- run(): Promise<boolean>;
147
- /**
148
- * HTTP endpoints
149
- */
150
- getEndpoints(): Array<{
151
- method: HttpMethod;
152
- path: string;
153
- handler: (...args: any[]) => any;
154
- responseType?: string;
155
- }>;
156
- /**
157
- * Retrieve latest harvested data
158
- */
159
- retrieve(): Promise<DataResponse>;
160
- /**
161
- * Get source data within the specified range
162
- */
163
- private getSourceData;
164
- /**
165
- * Get data from dependent components
166
- */
167
- private getDependenciesData;
168
- /**
169
- * Store harvesting results
170
- */
171
- private storeResults;
172
- /**
173
- * Returns the OpenAPI specification for this harvester's endpoints.
174
- *
175
- * Generates documentation for the GET endpoint that retrieves harvested data.
176
- * Can be overridden by subclasses for more detailed specifications.
177
- *
178
- * @returns {OpenAPIComponentSpec} OpenAPI paths, tags, and schemas for this harvester
179
- */
180
- getOpenAPISpec(): OpenAPIComponentSpec;
181
- }
182
- //# sourceMappingURL=harvester.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"harvester.d.ts","sourceRoot":"","sources":["../../src/components/harvester.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,gBAAgB,EAAE,QAAQ,EAAE,MAAM,iBAAiB,CAAA;AAC5E,OAAO,KAAK,EAAE,YAAY,EAAE,sBAAsB,EAAE,MAAM,YAAY,CAAA;AACtE,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,yBAAyB,CAAA;AACzD,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,iCAAiC,CAAA;AACtE,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,+BAA+B,CAAA;AACnE,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,wBAAwB,CAAA;AACxD,OAAO,KAAK,EAAE,mBAAmB,EAAE,oBAAoB,EAAE,MAAM,qBAAqB,CAAA;AA2HpF;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAgCG;AACH,8BAAsB,SAClB,YAAW,SAAS,CAAC,sBAAsB,CAAC,EAAE,gBAAgB,EAAE,QAAQ,EAAE,mBAAmB;IAE7F,SAAS,CAAC,EAAE,EAAG,eAAe,CAAA;IAC9B,SAAS,CAAC,OAAO,EAAG,cAAc,CAAA;IAClC,OAAO,CAAC,YAAY,CAAC,CAAwB;IAE7C;;;;;;;;OAQG;IACH,eAAe,CAAC,EAAE,EAAE,eAAe,EAAE,OAAO,EAAE,cAAc;IAK5D;;;;;;;;;;;;;;;;;;;;OAoBG;IACH,QAAQ,CAAC,oBAAoB,IAAI,sBAAsB;IAEvD;;;;;;;OAOG;IACH,gBAAgB,IAAI,sBAAsB;IA0B1C;;;;;;;OAOG;IACH,WAAW,IAAI,MAAM;IASrB;;;;;;;;;;;;;;OAcG;IACH,iBAAiB,CAAC,IAAI,MAAM;IAE5B;;;;;;;;;;;;;;;;;;;OAmBG;IACH,QAAQ,CAAC,OAAO,CACZ,UAAU,EAAE,UAAU,GAAG,UAAU,EAAE,EACrC,gBAAgB,EAAE,MAAM,CAAC,MAAM,EAAE,UAAU,GAAG,UAAU,EAAE,GAAG,IAAI,CAAC,GACnE,OAAO,CAAC,MAAM,GAAG,MAAM,EAAE,CAAC;IAE7B;;;;;;;;;;;;;OAaG;IACG,GAAG,IAAI,OAAO,CAAC,OAAO,CAAC;IA4D7B;;OAEG;IACH,YAAY,IAAI,KAAK,CAAC;QAClB,MAAM,EAAE,UAAU,CAAA;QAClB,IAAI,EAAE,MAAM,CAAA;QACZ,OAAO,EAAE,CAAC,GAAG,IAAI,EAAE,GAAG,EAAE,KAAK,GAAG,CAAA;QAChC,YAAY,CAAC,EAAE,MAAM,CAAA;KACxB,CAAC;IAWF;;OAEG;IACG,QAAQ,IAAI,OAAO,CAAC,YAAY,CAAC;IAoBvC;;OAEG;YACW,aAAa;IAsB3B;;OAEG;YACW,mBAAmB;IAyBjC;;OAEG;YACW,YAAY;IAkC1B;;;;;;;OAOG;IACH,cAAc,IAAI,oBAAoB;CAoCzC"}