@acmekit/index 2.13.1

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 (151) hide show
  1. package/README.md +1 -0
  2. package/dist/index.d.ts +6 -0
  3. package/dist/index.d.ts.map +1 -0
  4. package/dist/index.js +13 -0
  5. package/dist/index.js.map +1 -0
  6. package/dist/loaders/index.d.ts +4 -0
  7. package/dist/loaders/index.d.ts.map +1 -0
  8. package/dist/loaders/index.js +27 -0
  9. package/dist/loaders/index.js.map +1 -0
  10. package/dist/migrations/Migration20231019174230.d.ts +5 -0
  11. package/dist/migrations/Migration20231019174230.d.ts.map +1 -0
  12. package/dist/migrations/Migration20231019174230.js +12 -0
  13. package/dist/migrations/Migration20231019174230.js.map +1 -0
  14. package/dist/migrations/Migration20241209173313.d.ts +6 -0
  15. package/dist/migrations/Migration20241209173313.d.ts.map +1 -0
  16. package/dist/migrations/Migration20241209173313.js +36 -0
  17. package/dist/migrations/Migration20241209173313.js.map +1 -0
  18. package/dist/migrations/Migration20250122154720.d.ts +6 -0
  19. package/dist/migrations/Migration20250122154720.d.ts.map +1 -0
  20. package/dist/migrations/Migration20250122154720.js +16 -0
  21. package/dist/migrations/Migration20250122154720.js.map +1 -0
  22. package/dist/migrations/Migration20250127105159.d.ts +6 -0
  23. package/dist/migrations/Migration20250127105159.d.ts.map +1 -0
  24. package/dist/migrations/Migration20250127105159.js +16 -0
  25. package/dist/migrations/Migration20250127105159.js.map +1 -0
  26. package/dist/migrations/Migration20250127144442.d.ts +6 -0
  27. package/dist/migrations/Migration20250127144442.d.ts.map +1 -0
  28. package/dist/migrations/Migration20250127144442.js +16 -0
  29. package/dist/migrations/Migration20250127144442.js.map +1 -0
  30. package/dist/migrations/Migration20250128132404.d.ts +6 -0
  31. package/dist/migrations/Migration20250128132404.d.ts.map +1 -0
  32. package/dist/migrations/Migration20250128132404.js +16 -0
  33. package/dist/migrations/Migration20250128132404.js.map +1 -0
  34. package/dist/migrations/Migration20250218132404.d.ts +6 -0
  35. package/dist/migrations/Migration20250218132404.d.ts.map +1 -0
  36. package/dist/migrations/Migration20250218132404.js +48 -0
  37. package/dist/migrations/Migration20250218132404.js.map +1 -0
  38. package/dist/migrations/Migration20250515161913.d.ts +6 -0
  39. package/dist/migrations/Migration20250515161913.d.ts.map +1 -0
  40. package/dist/migrations/Migration20250515161913.js +62 -0
  41. package/dist/migrations/Migration20250515161913.js.map +1 -0
  42. package/dist/models/index-data.d.ts +8 -0
  43. package/dist/models/index-data.d.ts.map +1 -0
  44. package/dist/models/index-data.js +12 -0
  45. package/dist/models/index-data.js.map +1 -0
  46. package/dist/models/index-metadata.d.ts +10 -0
  47. package/dist/models/index-metadata.d.ts.map +1 -0
  48. package/dist/models/index-metadata.js +23 -0
  49. package/dist/models/index-metadata.js.map +1 -0
  50. package/dist/models/index-relation.d.ts +11 -0
  51. package/dist/models/index-relation.d.ts.map +1 -0
  52. package/dist/models/index-relation.js +14 -0
  53. package/dist/models/index-relation.js.map +1 -0
  54. package/dist/models/index-sync.d.ts +7 -0
  55. package/dist/models/index-sync.d.ts.map +1 -0
  56. package/dist/models/index-sync.js +18 -0
  57. package/dist/models/index-sync.js.map +1 -0
  58. package/dist/models/index.d.ts +5 -0
  59. package/dist/models/index.d.ts.map +1 -0
  60. package/dist/models/index.js +15 -0
  61. package/dist/models/index.js.map +1 -0
  62. package/dist/services/data-synchronizer.d.ts +35 -0
  63. package/dist/services/data-synchronizer.d.ts.map +1 -0
  64. package/dist/services/data-synchronizer.js +238 -0
  65. package/dist/services/data-synchronizer.js.map +1 -0
  66. package/dist/services/index-data.d.ts +8 -0
  67. package/dist/services/index-data.d.ts.map +1 -0
  68. package/dist/services/index-data.js +9 -0
  69. package/dist/services/index-data.js.map +1 -0
  70. package/dist/services/index-metadata.d.ts +8 -0
  71. package/dist/services/index-metadata.d.ts.map +1 -0
  72. package/dist/services/index-metadata.js +9 -0
  73. package/dist/services/index-metadata.js.map +1 -0
  74. package/dist/services/index-module-service.d.ts +75 -0
  75. package/dist/services/index-module-service.d.ts.map +1 -0
  76. package/dist/services/index-module-service.js +340 -0
  77. package/dist/services/index-module-service.js.map +1 -0
  78. package/dist/services/index-relation.d.ts +8 -0
  79. package/dist/services/index-relation.d.ts.map +1 -0
  80. package/dist/services/index-relation.js +9 -0
  81. package/dist/services/index-relation.js.map +1 -0
  82. package/dist/services/index-sync.d.ts +8 -0
  83. package/dist/services/index-sync.d.ts.map +1 -0
  84. package/dist/services/index-sync.js +9 -0
  85. package/dist/services/index-sync.js.map +1 -0
  86. package/dist/services/index.d.ts +2 -0
  87. package/dist/services/index.d.ts.map +1 -0
  88. package/dist/services/index.js +9 -0
  89. package/dist/services/index.js.map +1 -0
  90. package/dist/services/postgres-provider.d.ts +132 -0
  91. package/dist/services/postgres-provider.d.ts.map +1 -0
  92. package/dist/services/postgres-provider.js +516 -0
  93. package/dist/services/postgres-provider.js.map +1 -0
  94. package/dist/tsconfig.tsbuildinfo +1 -0
  95. package/dist/types/index.d.ts +21 -0
  96. package/dist/types/index.d.ts.map +1 -0
  97. package/dist/types/index.js +12 -0
  98. package/dist/types/index.js.map +1 -0
  99. package/dist/utils/base-graphql-schema.d.ts +2 -0
  100. package/dist/utils/base-graphql-schema.d.ts.map +1 -0
  101. package/dist/utils/base-graphql-schema.js +10 -0
  102. package/dist/utils/base-graphql-schema.js.map +1 -0
  103. package/dist/utils/build-config.d.ts +28 -0
  104. package/dist/utils/build-config.d.ts.map +1 -0
  105. package/dist/utils/build-config.js +840 -0
  106. package/dist/utils/build-config.js.map +1 -0
  107. package/dist/utils/create-partitions.d.ts +4 -0
  108. package/dist/utils/create-partitions.d.ts.map +1 -0
  109. package/dist/utils/create-partitions.js +80 -0
  110. package/dist/utils/create-partitions.js.map +1 -0
  111. package/dist/utils/default-schema.d.ts +2 -0
  112. package/dist/utils/default-schema.d.ts.map +1 -0
  113. package/dist/utils/default-schema.js +41 -0
  114. package/dist/utils/default-schema.js.map +1 -0
  115. package/dist/utils/flatten-object-keys.d.ts +23 -0
  116. package/dist/utils/flatten-object-keys.d.ts.map +1 -0
  117. package/dist/utils/flatten-object-keys.js +54 -0
  118. package/dist/utils/flatten-object-keys.js.map +1 -0
  119. package/dist/utils/gql-to-types.d.ts +3 -0
  120. package/dist/utils/gql-to-types.d.ts.map +1 -0
  121. package/dist/utils/gql-to-types.js +98 -0
  122. package/dist/utils/gql-to-types.js.map +1 -0
  123. package/dist/utils/index-metadata-status.d.ts +7 -0
  124. package/dist/utils/index-metadata-status.d.ts.map +1 -0
  125. package/dist/utils/index-metadata-status.js +11 -0
  126. package/dist/utils/index-metadata-status.js.map +1 -0
  127. package/dist/utils/index.d.ts +10 -0
  128. package/dist/utils/index.d.ts.map +1 -0
  129. package/dist/utils/index.js +26 -0
  130. package/dist/utils/index.js.map +1 -0
  131. package/dist/utils/normalize-fields-selection.d.ts +2 -0
  132. package/dist/utils/normalize-fields-selection.d.ts.map +1 -0
  133. package/dist/utils/normalize-fields-selection.js +10 -0
  134. package/dist/utils/normalize-fields-selection.js.map +1 -0
  135. package/dist/utils/normalze-table-name.d.ts +3 -0
  136. package/dist/utils/normalze-table-name.d.ts.map +1 -0
  137. package/dist/utils/normalze-table-name.js +13 -0
  138. package/dist/utils/normalze-table-name.js.map +1 -0
  139. package/dist/utils/query-builder.d.ts +61 -0
  140. package/dist/utils/query-builder.d.ts.map +1 -0
  141. package/dist/utils/query-builder.js +791 -0
  142. package/dist/utils/query-builder.js.map +1 -0
  143. package/dist/utils/sync/configuration.d.ts +17 -0
  144. package/dist/utils/sync/configuration.d.ts.map +1 -0
  145. package/dist/utils/sync/configuration.js +114 -0
  146. package/dist/utils/sync/configuration.js.map +1 -0
  147. package/dist/utils/sync/orchestrator.d.ts +33 -0
  148. package/dist/utils/sync/orchestrator.d.ts.map +1 -0
  149. package/dist/utils/sync/orchestrator.js +195 -0
  150. package/dist/utils/sync/orchestrator.js.map +1 -0
  151. package/package.json +45 -0
@@ -0,0 +1 @@
1
+ {"version":3,"file":"query-builder.js","sourceRoot":"","sources":["../../src/utils/query-builder.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,17 @@
1
+ import { IndexTypes, InferEntityType, Logger } from "@acmekit/types";
2
+ import { IndexMetadata } from "../../models";
3
+ import { DataSynchronizer } from "../../services/data-synchronizer";
4
+ import { IndexMetadataService } from "../../services/index-metadata";
5
+ import { IndexSyncService } from "../../services/index-sync";
6
+ export declare class Configuration {
7
+ #private;
8
+ constructor({ schemaObjectRepresentation, indexMetadataService, indexSyncService, dataSynchronizer, logger, }: {
9
+ schemaObjectRepresentation: IndexTypes.SchemaObjectRepresentation;
10
+ indexMetadataService: IndexMetadataService;
11
+ indexSyncService: IndexSyncService;
12
+ dataSynchronizer: DataSynchronizer;
13
+ logger: Logger;
14
+ });
15
+ checkChanges(): Promise<InferEntityType<typeof IndexMetadata>[]>;
16
+ }
17
+ //# sourceMappingURL=configuration.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"configuration.d.ts","sourceRoot":"","sources":["../../../src/utils/sync/configuration.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,UAAU,EAAE,eAAe,EAAE,MAAM,EAAE,MAAM,gBAAgB,CAAA;AACpE,OAAO,EAAE,aAAa,EAAE,MAAM,SAAS,CAAA;AAEvC,OAAO,EAAE,gBAAgB,EAAE,MAAM,kCAAkC,CAAA;AACnE,OAAO,EAAE,oBAAoB,EAAE,MAAM,+BAA+B,CAAA;AACpE,OAAO,EAAE,gBAAgB,EAAE,MAAM,2BAA2B,CAAA;AAG5D,qBAAa,aAAa;;gBAOZ,EACV,0BAA0B,EAC1B,oBAAoB,EACpB,gBAAgB,EAChB,gBAAgB,EAChB,MAAM,GACP,EAAE;QACD,0BAA0B,EAAE,UAAU,CAAC,0BAA0B,CAAA;QACjE,oBAAoB,EAAE,oBAAoB,CAAA;QAC1C,gBAAgB,EAAE,gBAAgB,CAAA;QAClC,gBAAgB,EAAE,gBAAgB,CAAA;QAClC,MAAM,EAAE,MAAM,CAAA;KACf;IAQK,YAAY,IAAI,OAAO,CAAC,eAAe,CAAC,OAAO,aAAa,CAAC,EAAE,CAAC;CAwHvE"}
@@ -0,0 +1,114 @@
1
+ "use strict";
2
+ var __classPrivateFieldSet = (this && this.__classPrivateFieldSet) || function (receiver, state, value, kind, f) {
3
+ if (kind === "m") throw new TypeError("Private method is not writable");
4
+ if (kind === "a" && !f) throw new TypeError("Private accessor was defined without a setter");
5
+ if (typeof state === "function" ? receiver !== state || !f : !state.has(receiver)) throw new TypeError("Cannot write private member to an object whose class did not declare it");
6
+ return (kind === "a" ? f.call(receiver, value) : f ? f.value = value : state.set(receiver, value)), value;
7
+ };
8
+ var __classPrivateFieldGet = (this && this.__classPrivateFieldGet) || function (receiver, state, kind, f) {
9
+ if (kind === "a" && !f) throw new TypeError("Private accessor was defined without a getter");
10
+ if (typeof state === "function" ? receiver !== state || !f : !state.has(receiver)) throw new TypeError("Cannot read private member from an object whose class did not declare it");
11
+ return kind === "m" ? f : kind === "a" ? f.call(receiver) : f ? f.value : state.get(receiver);
12
+ };
13
+ var _Configuration_schemaObjectRepresentation, _Configuration_indexMetadataService, _Configuration_indexSyncService, _Configuration_dataSynchronizer, _Configuration_logger;
14
+ Object.defineProperty(exports, "__esModule", { value: true });
15
+ exports.Configuration = void 0;
16
+ const utils_1 = require("@acmekit/framework/utils");
17
+ const _types_1 = require("../../types");
18
+ const index_metadata_status_1 = require("../index-metadata-status");
19
+ class Configuration {
20
+ constructor({ schemaObjectRepresentation, indexMetadataService, indexSyncService, dataSynchronizer, logger, }) {
21
+ _Configuration_schemaObjectRepresentation.set(this, void 0);
22
+ _Configuration_indexMetadataService.set(this, void 0);
23
+ _Configuration_indexSyncService.set(this, void 0);
24
+ _Configuration_dataSynchronizer.set(this, void 0);
25
+ _Configuration_logger.set(this, void 0);
26
+ __classPrivateFieldSet(this, _Configuration_schemaObjectRepresentation, schemaObjectRepresentation ?? {}, "f");
27
+ __classPrivateFieldSet(this, _Configuration_indexMetadataService, indexMetadataService, "f");
28
+ __classPrivateFieldSet(this, _Configuration_indexSyncService, indexSyncService, "f");
29
+ __classPrivateFieldSet(this, _Configuration_dataSynchronizer, dataSynchronizer, "f");
30
+ __classPrivateFieldSet(this, _Configuration_logger, logger, "f");
31
+ }
32
+ async checkChanges() {
33
+ __classPrivateFieldGet(this, _Configuration_logger, "f").info("[Index engine] Checking for index changes");
34
+ const schemaObjectRepresentation = __classPrivateFieldGet(this, _Configuration_schemaObjectRepresentation, "f");
35
+ const currentConfig = await __classPrivateFieldGet(this, _Configuration_indexMetadataService, "f").list({});
36
+ const currentConfigMap = new Map(currentConfig.map((c) => [c.entity, c]));
37
+ const entityPresent = new Set();
38
+ const newConfig = [];
39
+ const updatedConfig = [];
40
+ const deletedConfig = [];
41
+ const idxSyncData = [];
42
+ for (const [entityName, schemaEntityObjectRepresentation] of Object.entries(schemaObjectRepresentation)) {
43
+ if (_types_1.schemaObjectRepresentationPropertiesToOmit.includes(entityName)) {
44
+ continue;
45
+ }
46
+ const entity = schemaEntityObjectRepresentation.entity;
47
+ const fields = schemaEntityObjectRepresentation.fields.sort().join(",");
48
+ const fields_hash = (0, utils_1.simpleHash)(fields);
49
+ const existingEntityConfig = currentConfigMap.get(entity);
50
+ entityPresent.add(entity);
51
+ if (!existingEntityConfig ||
52
+ existingEntityConfig.fields_hash !== fields_hash) {
53
+ const meta = {
54
+ id: existingEntityConfig?.id,
55
+ entity,
56
+ fields,
57
+ fields_hash,
58
+ };
59
+ if (!existingEntityConfig) {
60
+ newConfig.push(meta);
61
+ }
62
+ else {
63
+ updatedConfig.push({
64
+ ...meta,
65
+ status: index_metadata_status_1.IndexMetadataStatus.PENDING,
66
+ });
67
+ }
68
+ idxSyncData.push({
69
+ entity,
70
+ last_key: null,
71
+ });
72
+ }
73
+ }
74
+ for (const [entity] of currentConfigMap) {
75
+ if (!entityPresent.has(entity)) {
76
+ deletedConfig.push({ entity });
77
+ }
78
+ }
79
+ if (newConfig.length > 0) {
80
+ await __classPrivateFieldGet(this, _Configuration_indexMetadataService, "f").create(newConfig);
81
+ }
82
+ if (updatedConfig.length > 0) {
83
+ await __classPrivateFieldGet(this, _Configuration_indexMetadataService, "f").update(updatedConfig);
84
+ }
85
+ if (deletedConfig.length > 0) {
86
+ await __classPrivateFieldGet(this, _Configuration_indexMetadataService, "f").delete(deletedConfig);
87
+ await __classPrivateFieldGet(this, _Configuration_dataSynchronizer, "f").removeEntities(deletedConfig.map((c) => c.entity));
88
+ }
89
+ if (idxSyncData.length > 0) {
90
+ const ids = await __classPrivateFieldGet(this, _Configuration_indexSyncService, "f").list({
91
+ entity: idxSyncData.map((c) => c.entity),
92
+ });
93
+ idxSyncData.forEach((sync) => {
94
+ const id = ids.find((i) => i.entity === sync.entity)?.id;
95
+ if (id) {
96
+ sync.id = id;
97
+ }
98
+ });
99
+ await __classPrivateFieldGet(this, _Configuration_indexSyncService, "f").upsert(idxSyncData);
100
+ }
101
+ const changes = await __classPrivateFieldGet(this, _Configuration_indexMetadataService, "f").list({
102
+ status: [
103
+ index_metadata_status_1.IndexMetadataStatus.PENDING,
104
+ index_metadata_status_1.IndexMetadataStatus.PROCESSING,
105
+ index_metadata_status_1.IndexMetadataStatus.ERROR,
106
+ ],
107
+ });
108
+ __classPrivateFieldGet(this, _Configuration_logger, "f").info(`[Index engine] Found ${changes.length} index change${changes.length > 1 ? "s" : ""} that are either pending or processing`);
109
+ return changes;
110
+ }
111
+ }
112
+ exports.Configuration = Configuration;
113
+ _Configuration_schemaObjectRepresentation = new WeakMap(), _Configuration_indexMetadataService = new WeakMap(), _Configuration_indexSyncService = new WeakMap(), _Configuration_dataSynchronizer = new WeakMap(), _Configuration_logger = new WeakMap();
114
+ //# sourceMappingURL=configuration.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"configuration.js","sourceRoot":"","sources":["../../../src/utils/sync/configuration.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,33 @@
1
+ import { ILockingModule, Logger } from "@acmekit/types";
2
+ export declare class Orchestrator {
3
+ #private;
4
+ /**
5
+ * The current state of the orchestrator
6
+ */
7
+ get state(): "processing" | "error" | "idle" | "completed";
8
+ /**
9
+ * Reference to the currently processed entity
10
+ */
11
+ get current(): string;
12
+ /**
13
+ * Reference to the number of entities left for processing
14
+ */
15
+ get remainingCount(): number;
16
+ constructor(lockingModule: ILockingModule, entities: string[], options: {
17
+ lockDuration: number;
18
+ logger: Logger;
19
+ });
20
+ /**
21
+ * Acquires or renew the lock for a given key.
22
+ */
23
+ renewLock(forKey: string): Promise<boolean>;
24
+ /**
25
+ * Run the orchestrator to process the entities one by one.
26
+ *
27
+ * - Task runner is the implementation function to execute a task.
28
+ * Orchestrator has no inbuilt execution logic and it relies on
29
+ * the task runner for the same.
30
+ */
31
+ process(taskRunner: (entity: string) => Promise<void>): Promise<void>;
32
+ }
33
+ //# sourceMappingURL=orchestrator.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"orchestrator.d.ts","sourceRoot":"","sources":["../../../src/utils/sync/orchestrator.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,MAAM,EAAE,MAAM,gBAAgB,CAAA;AAEvD,qBAAa,YAAY;;IAqDvB;;OAEG;IACH,IAAI,KAAK,kDAER;IAED;;OAEG;IACH,IAAI,OAAO,WAEV;IAED;;OAEG;IACH,IAAI,cAAc,WAEjB;gBAGC,aAAa,EAAE,cAAc,EAC7B,QAAQ,EAAE,MAAM,EAAE,EAClB,OAAO,EAAE;QACP,YAAY,EAAE,MAAM,CAAA;QACpB,MAAM,EAAE,MAAM,CAAA;KACf;IAuBH;;OAEG;IACG,SAAS,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC;IAyCjD;;;;;;OAMG;IACG,OAAO,CAAC,UAAU,EAAE,CAAC,MAAM,EAAE,MAAM,KAAK,OAAO,CAAC,IAAI,CAAC;CAoB5D"}
@@ -0,0 +1,195 @@
1
+ "use strict";
2
+ var __classPrivateFieldGet = (this && this.__classPrivateFieldGet) || function (receiver, state, kind, f) {
3
+ if (kind === "a" && !f) throw new TypeError("Private accessor was defined without a getter");
4
+ if (typeof state === "function" ? receiver !== state || !f : !state.has(receiver)) throw new TypeError("Cannot read private member from an object whose class did not declare it");
5
+ return kind === "m" ? f : kind === "a" ? f.call(receiver) : f ? f.value : state.get(receiver);
6
+ };
7
+ var __classPrivateFieldSet = (this && this.__classPrivateFieldSet) || function (receiver, state, value, kind, f) {
8
+ if (kind === "m") throw new TypeError("Private method is not writable");
9
+ if (kind === "a" && !f) throw new TypeError("Private accessor was defined without a setter");
10
+ if (typeof state === "function" ? receiver !== state || !f : !state.has(receiver)) throw new TypeError("Cannot write private member to an object whose class did not declare it");
11
+ return (kind === "a" ? f.call(receiver, value) : f ? f.value = value : state.set(receiver, value)), value;
12
+ };
13
+ var _Orchestrator_instances, _Orchestrator_lockingModule, _Orchestrator_logger, _Orchestrator_lockingOwner, _Orchestrator_state, _Orchestrator_options, _Orchestrator_currentIndex, _Orchestrator_entities, _Orchestrator_acquireLock, _Orchestrator_processEntity;
14
+ Object.defineProperty(exports, "__esModule", { value: true });
15
+ exports.Orchestrator = void 0;
16
+ class Orchestrator {
17
+ /**
18
+ * The current state of the orchestrator
19
+ */
20
+ get state() {
21
+ return __classPrivateFieldGet(this, _Orchestrator_state, "f");
22
+ }
23
+ /**
24
+ * Reference to the currently processed entity
25
+ */
26
+ get current() {
27
+ return __classPrivateFieldGet(this, _Orchestrator_entities, "f")[__classPrivateFieldGet(this, _Orchestrator_currentIndex, "f")];
28
+ }
29
+ /**
30
+ * Reference to the number of entities left for processing
31
+ */
32
+ get remainingCount() {
33
+ return __classPrivateFieldGet(this, _Orchestrator_entities, "f").length - (__classPrivateFieldGet(this, _Orchestrator_currentIndex, "f") + 1);
34
+ }
35
+ constructor(lockingModule, entities, options) {
36
+ _Orchestrator_instances.add(this);
37
+ /**
38
+ * Reference to the locking module
39
+ */
40
+ _Orchestrator_lockingModule.set(this, void 0);
41
+ /**
42
+ * Reference to the logger
43
+ */
44
+ _Orchestrator_logger.set(this, void 0);
45
+ /**
46
+ * Owner id when acquiring locks
47
+ */
48
+ _Orchestrator_lockingOwner.set(this, `index-sync-${process.pid}`
49
+ /**
50
+ * The current state of the orchestrator
51
+ *
52
+ * - In "idle" state, one can call the "run" method.
53
+ * - In "processing" state, the orchestrator is looping over the entities
54
+ * and processing them.
55
+ * - In "completed" state, the provided entities have been processed.
56
+ * - The "error" state is set when the task runner throws an error.
57
+ */
58
+ );
59
+ /**
60
+ * The current state of the orchestrator
61
+ *
62
+ * - In "idle" state, one can call the "run" method.
63
+ * - In "processing" state, the orchestrator is looping over the entities
64
+ * and processing them.
65
+ * - In "completed" state, the provided entities have been processed.
66
+ * - The "error" state is set when the task runner throws an error.
67
+ */
68
+ _Orchestrator_state.set(this, "idle"
69
+ /**
70
+ * Options for the locking module and the task runner to execute the
71
+ * task.
72
+ *
73
+ * - Lock duration is the maximum duration for which to hold the lock.
74
+ * After this the lock will be removed.
75
+ *
76
+ * The entity is provided to the taskRunner only when the orchestrator
77
+ * is able to acquire a lock.
78
+ */
79
+ );
80
+ /**
81
+ * Options for the locking module and the task runner to execute the
82
+ * task.
83
+ *
84
+ * - Lock duration is the maximum duration for which to hold the lock.
85
+ * After this the lock will be removed.
86
+ *
87
+ * The entity is provided to the taskRunner only when the orchestrator
88
+ * is able to acquire a lock.
89
+ */
90
+ _Orchestrator_options.set(this, void 0);
91
+ /**
92
+ * Index of the entity that is currently getting processed.
93
+ */
94
+ _Orchestrator_currentIndex.set(this, 0
95
+ /**
96
+ * Collection of entities to process in sequence. A lock is obtained
97
+ * while an entity is getting synced to avoid multiple processes
98
+ * from syncing the same entity
99
+ */
100
+ );
101
+ /**
102
+ * Collection of entities to process in sequence. A lock is obtained
103
+ * while an entity is getting synced to avoid multiple processes
104
+ * from syncing the same entity
105
+ */
106
+ _Orchestrator_entities.set(this, []
107
+ /**
108
+ * The current state of the orchestrator
109
+ */
110
+ );
111
+ __classPrivateFieldSet(this, _Orchestrator_lockingModule, lockingModule, "f");
112
+ __classPrivateFieldSet(this, _Orchestrator_entities, entities, "f");
113
+ __classPrivateFieldSet(this, _Orchestrator_options, options, "f");
114
+ __classPrivateFieldSet(this, _Orchestrator_logger, options.logger, "f");
115
+ }
116
+ /**
117
+ * Acquires or renew the lock for a given key.
118
+ */
119
+ async renewLock(forKey) {
120
+ return __classPrivateFieldGet(this, _Orchestrator_instances, "m", _Orchestrator_acquireLock).call(this, forKey);
121
+ }
122
+ /**
123
+ * Run the orchestrator to process the entities one by one.
124
+ *
125
+ * - Task runner is the implementation function to execute a task.
126
+ * Orchestrator has no inbuilt execution logic and it relies on
127
+ * the task runner for the same.
128
+ */
129
+ async process(taskRunner) {
130
+ if (this.state !== "idle") {
131
+ throw new Error("Cannot re-run an already running orchestrator instance");
132
+ }
133
+ __classPrivateFieldSet(this, _Orchestrator_state, "processing", "f");
134
+ for (let i = 0; i < __classPrivateFieldGet(this, _Orchestrator_entities, "f").length; i++) {
135
+ __classPrivateFieldSet(this, _Orchestrator_currentIndex, i, "f");
136
+ const entity = __classPrivateFieldGet(this, _Orchestrator_entities, "f")[i];
137
+ if (!entity) {
138
+ __classPrivateFieldSet(this, _Orchestrator_state, "completed", "f");
139
+ break;
140
+ }
141
+ await __classPrivateFieldGet(this, _Orchestrator_instances, "m", _Orchestrator_processEntity).call(this, taskRunner, entity);
142
+ }
143
+ __classPrivateFieldSet(this, _Orchestrator_state, "completed", "f");
144
+ }
145
+ }
146
+ exports.Orchestrator = Orchestrator;
147
+ _Orchestrator_lockingModule = new WeakMap(), _Orchestrator_logger = new WeakMap(), _Orchestrator_lockingOwner = new WeakMap(), _Orchestrator_state = new WeakMap(), _Orchestrator_options = new WeakMap(), _Orchestrator_currentIndex = new WeakMap(), _Orchestrator_entities = new WeakMap(), _Orchestrator_instances = new WeakSet(), _Orchestrator_acquireLock =
148
+ /**
149
+ * Acquires using the lock module.
150
+ */
151
+ async function _Orchestrator_acquireLock(forKey) {
152
+ try {
153
+ await __classPrivateFieldGet(this, _Orchestrator_lockingModule, "f").acquire(forKey, {
154
+ expire: __classPrivateFieldGet(this, _Orchestrator_options, "f").lockDuration,
155
+ ownerId: __classPrivateFieldGet(this, _Orchestrator_lockingOwner, "f"),
156
+ });
157
+ return true;
158
+ }
159
+ catch {
160
+ return false;
161
+ }
162
+ }, _Orchestrator_processEntity =
163
+ /**
164
+ * Processes the entity. If there are no entities
165
+ * left, the orchestrator state will be set to completed.
166
+ *
167
+ * - Task runner is the implementation function to execute a task.
168
+ * Orchestrator has no inbuilt execution logic and it relies on
169
+ * the task runner for the same.
170
+ */
171
+ async function _Orchestrator_processEntity(taskRunner, entity) {
172
+ const lockAcquired = await __classPrivateFieldGet(this, _Orchestrator_instances, "m", _Orchestrator_acquireLock).call(this, entity);
173
+ if (lockAcquired) {
174
+ try {
175
+ await taskRunner(entity);
176
+ }
177
+ catch (error) {
178
+ __classPrivateFieldSet(this, _Orchestrator_state, "error", "f");
179
+ throw error;
180
+ }
181
+ finally {
182
+ await __classPrivateFieldGet(this, _Orchestrator_lockingModule, "f")
183
+ .release(entity, {
184
+ ownerId: __classPrivateFieldGet(this, _Orchestrator_lockingOwner, "f"),
185
+ })
186
+ .catch(() => {
187
+ __classPrivateFieldGet(this, _Orchestrator_logger, "f").error(`[Index engine] failed to release lock for entity '${entity}'`);
188
+ });
189
+ }
190
+ }
191
+ else {
192
+ __classPrivateFieldGet(this, _Orchestrator_logger, "f").warn(`[Index engine] failed to acquire lock for entity '${entity}' on pid ${process.pid}. It means another process is already processing this entity or a lock is still present in your locking provider.`);
193
+ }
194
+ };
195
+ //# sourceMappingURL=orchestrator.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"orchestrator.js","sourceRoot":"","sources":["../../../src/utils/sync/orchestrator.ts"],"names":[],"mappings":"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"}
package/package.json ADDED
@@ -0,0 +1,45 @@
1
+ {
2
+ "name": "@acmekit/index",
3
+ "version": "2.13.1",
4
+ "description": "AcmeKit Index module",
5
+ "main": "dist/index.js",
6
+ "types": "dist/index.d.ts",
7
+ "files": [
8
+ "dist",
9
+ "!dist/**/__tests__",
10
+ "!dist/**/__mocks__",
11
+ "!dist/**/__fixtures__"
12
+ ],
13
+ "engines": {
14
+ "node": ">=20"
15
+ },
16
+ "repository": {
17
+ "type": "git",
18
+ "url": "https://github.com/acmekit/acmekit",
19
+ "directory": "packages/modules/index"
20
+ },
21
+ "publishConfig": {
22
+ "access": "public"
23
+ },
24
+ "author": "AcmeKit",
25
+ "license": "MIT",
26
+ "scripts": {
27
+ "watch": "yarn run -T tsc --build --watch",
28
+ "watch:test": "yarn run -T tsc --build tsconfig.spec.json --watch",
29
+ "resolve:aliases": "yarn run -T tsc --showConfig -p tsconfig.json > tsconfig.resolved.json && yarn run -T tsc-alias -p tsconfig.resolved.json && yarn run -T rimraf tsconfig.resolved.json",
30
+ "build": "yarn run -T rimraf dist && yarn run -T tsc --build && npm run resolve:aliases",
31
+ "test": "../../../node_modules/.bin/jest --passWithNoTests src",
32
+ "test:integration": "../../../node_modules/.bin/jest --passWithNoTests --forceExit --testPathPattern=\"integration-tests/__tests__/.*\\.spec\\.ts\"",
33
+ "migration:initial": "MIKRO_ORM_CLI_CONFIG=./mikro-orm.config.dev.ts MIKRO_ORM_ALLOW_GLOBAL_CLI=true acmekit-mikro-orm migration:create --initial",
34
+ "migration:create": "MIKRO_ORM_CLI_CONFIG=./mikro-orm.config.dev.ts MIKRO_ORM_ALLOW_GLOBAL_CLI=true acmekit-mikro-orm migration:create",
35
+ "migration:up": "MIKRO_ORM_CLI_CONFIG=./mikro-orm.config.dev.ts MIKRO_ORM_ALLOW_GLOBAL_CLI=true acmekit-mikro-orm migration:up",
36
+ "orm:cache:clear": "MIKRO_ORM_CLI_CONFIG=./mikro-orm.config.dev.ts MIKRO_ORM_ALLOW_GLOBAL_CLI=true acmekit-mikro-orm cache:clear"
37
+ },
38
+ "devDependencies": {
39
+ "@acmekit/framework": "2.13.1",
40
+ "@acmekit/test-utils": "2.13.1"
41
+ },
42
+ "peerDependencies": {
43
+ "@acmekit/framework": "2.13.1"
44
+ }
45
+ }