@memberjunction/metadata-sync 6.1.4 → 6.2.0-edge.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.
- package/dist/config.d.ts +27 -2
- package/dist/config.d.ts.map +1 -1
- package/dist/config.js +20 -4
- package/dist/config.js.map +1 -1
- package/dist/constants/metadata-keywords.d.ts +16 -0
- package/dist/constants/metadata-keywords.d.ts.map +1 -1
- package/dist/constants/metadata-keywords.js +42 -10
- package/dist/constants/metadata-keywords.js.map +1 -1
- package/dist/index.d.ts +8 -8
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +8 -8
- package/dist/index.js.map +1 -1
- package/dist/lib/EntityPropertyExtractor.d.ts +20 -0
- package/dist/lib/EntityPropertyExtractor.d.ts.map +1 -1
- package/dist/lib/EntityPropertyExtractor.js +43 -1
- package/dist/lib/EntityPropertyExtractor.js.map +1 -1
- package/dist/lib/FieldExternalizer.d.ts +3 -2
- package/dist/lib/FieldExternalizer.d.ts.map +1 -1
- package/dist/lib/FieldExternalizer.js +9 -5
- package/dist/lib/FieldExternalizer.js.map +1 -1
- package/dist/lib/RecordProcessor.d.ts +11 -0
- package/dist/lib/RecordProcessor.d.ts.map +1 -1
- package/dist/lib/RecordProcessor.js +41 -7
- package/dist/lib/RecordProcessor.js.map +1 -1
- package/dist/lib/RelatedEntityHandler.d.ts +6 -0
- package/dist/lib/RelatedEntityHandler.d.ts.map +1 -1
- package/dist/lib/RelatedEntityHandler.js +15 -3
- package/dist/lib/RelatedEntityHandler.js.map +1 -1
- package/dist/lib/batch-context-index.d.ts +17 -0
- package/dist/lib/batch-context-index.d.ts.map +1 -1
- package/dist/lib/batch-context-index.js +35 -7
- package/dist/lib/batch-context-index.js.map +1 -1
- package/dist/lib/collection-resolver.d.ts +2 -0
- package/dist/lib/collection-resolver.d.ts.map +1 -1
- package/dist/lib/collection-resolver.js +5 -1
- package/dist/lib/collection-resolver.js.map +1 -1
- package/dist/lib/config-manager.d.ts +8 -0
- package/dist/lib/config-manager.d.ts.map +1 -1
- package/dist/lib/config-manager.js +25 -9
- package/dist/lib/config-manager.js.map +1 -1
- package/dist/lib/database-reference-scanner.d.ts +6 -0
- package/dist/lib/database-reference-scanner.d.ts.map +1 -1
- package/dist/lib/database-reference-scanner.js +15 -3
- package/dist/lib/database-reference-scanner.js.map +1 -1
- package/dist/lib/deletion-auditor.d.ts +6 -0
- package/dist/lib/deletion-auditor.d.ts.map +1 -1
- package/dist/lib/deletion-auditor.js +15 -3
- package/dist/lib/deletion-auditor.js.map +1 -1
- package/dist/lib/deletion-report-generator.d.ts +4 -0
- package/dist/lib/deletion-report-generator.d.ts.map +1 -1
- package/dist/lib/deletion-report-generator.js +10 -2
- package/dist/lib/deletion-report-generator.js.map +1 -1
- package/dist/lib/entity-foreign-key-helper.d.ts +8 -0
- package/dist/lib/entity-foreign-key-helper.d.ts.map +1 -1
- package/dist/lib/entity-foreign-key-helper.js +20 -4
- package/dist/lib/entity-foreign-key-helper.js.map +1 -1
- package/dist/lib/entity-subclass-guard.d.ts +6 -0
- package/dist/lib/entity-subclass-guard.d.ts.map +1 -1
- package/dist/lib/entity-subclass-guard.js +10 -2
- package/dist/lib/entity-subclass-guard.js.map +1 -1
- package/dist/lib/existing-record-files.d.ts +14 -0
- package/dist/lib/existing-record-files.d.ts.map +1 -0
- package/dist/lib/existing-record-files.js +89 -0
- package/dist/lib/existing-record-files.js.map +1 -0
- package/dist/lib/file-backup-manager.d.ts +16 -0
- package/dist/lib/file-backup-manager.d.ts.map +1 -1
- package/dist/lib/file-backup-manager.js +31 -7
- package/dist/lib/file-backup-manager.js.map +1 -1
- package/dist/lib/file-write-batch.d.ts +14 -0
- package/dist/lib/file-write-batch.d.ts.map +1 -1
- package/dist/lib/file-write-batch.js +39 -11
- package/dist/lib/file-write-batch.js.map +1 -1
- package/dist/lib/graph-provider-pool.d.ts +16 -0
- package/dist/lib/graph-provider-pool.d.ts.map +1 -1
- package/dist/lib/graph-provider-pool.js +35 -7
- package/dist/lib/graph-provider-pool.js.map +1 -1
- package/dist/lib/json-preprocessor.d.ts +4 -0
- package/dist/lib/json-preprocessor.d.ts.map +1 -1
- package/dist/lib/json-preprocessor.js +12 -4
- package/dist/lib/json-preprocessor.js.map +1 -1
- package/dist/lib/json-subproperty-externalization.d.ts +90 -0
- package/dist/lib/json-subproperty-externalization.d.ts.map +1 -0
- package/dist/lib/json-subproperty-externalization.js +159 -0
- package/dist/lib/json-subproperty-externalization.js.map +1 -0
- package/dist/lib/json-write-helper.d.ts +9 -0
- package/dist/lib/json-write-helper.d.ts.map +1 -1
- package/dist/lib/json-write-helper.js +15 -3
- package/dist/lib/json-write-helper.js.map +1 -1
- package/dist/lib/provider-utils.d.ts +10 -0
- package/dist/lib/provider-utils.d.ts.map +1 -1
- package/dist/lib/provider-utils.js +27 -7
- package/dist/lib/provider-utils.js.map +1 -1
- package/dist/lib/push-outcome.d.ts +6 -0
- package/dist/lib/push-outcome.d.ts.map +1 -1
- package/dist/lib/push-outcome.js +17 -5
- package/dist/lib/push-outcome.js.map +1 -1
- package/dist/lib/push-write-mode.d.ts +8 -0
- package/dist/lib/push-write-mode.d.ts.map +1 -1
- package/dist/lib/push-write-mode.js +20 -4
- package/dist/lib/push-write-mode.js.map +1 -1
- package/dist/lib/record-dependency-analyzer.d.ts +14 -0
- package/dist/lib/record-dependency-analyzer.d.ts.map +1 -1
- package/dist/lib/record-dependency-analyzer.js +36 -8
- package/dist/lib/record-dependency-analyzer.js.map +1 -1
- package/dist/lib/record-primary-key.d.ts +6 -0
- package/dist/lib/record-primary-key.d.ts.map +1 -1
- package/dist/lib/record-primary-key.js +15 -3
- package/dist/lib/record-primary-key.js.map +1 -1
- package/dist/lib/reference-parser.d.ts +2 -0
- package/dist/lib/reference-parser.d.ts.map +1 -1
- package/dist/lib/reference-parser.js +5 -1
- package/dist/lib/reference-parser.js.map +1 -1
- package/dist/lib/singleton-manager.d.ts +4 -0
- package/dist/lib/singleton-manager.d.ts.map +1 -1
- package/dist/lib/singleton-manager.js +10 -2
- package/dist/lib/singleton-manager.js.map +1 -1
- package/dist/lib/sql-logger.d.ts +12 -0
- package/dist/lib/sql-logger.d.ts.map +1 -1
- package/dist/lib/sql-logger.js +31 -7
- package/dist/lib/sql-logger.js.map +1 -1
- package/dist/lib/sync-engine.d.ts +27 -0
- package/dist/lib/sync-engine.d.ts.map +1 -1
- package/dist/lib/sync-engine.js +83 -35
- package/dist/lib/sync-engine.js.map +1 -1
- package/dist/lib/sync-metadata-engine.d.ts +54 -0
- package/dist/lib/sync-metadata-engine.d.ts.map +1 -1
- package/dist/lib/sync-metadata-engine.js +142 -46
- package/dist/lib/sync-metadata-engine.js.map +1 -1
- package/dist/lib/sync-state-manager.d.ts +18 -0
- package/dist/lib/sync-state-manager.d.ts.map +1 -1
- package/dist/lib/sync-state-manager.js +45 -9
- package/dist/lib/sync-state-manager.js.map +1 -1
- package/dist/lib/transaction-manager.d.ts +10 -0
- package/dist/lib/transaction-manager.d.ts.map +1 -1
- package/dist/lib/transaction-manager.js +28 -8
- package/dist/lib/transaction-manager.js.map +1 -1
- package/dist/plugins/index.d.ts +10 -2
- package/dist/plugins/index.d.ts.map +1 -1
- package/dist/plugins/index.js +18 -2
- package/dist/plugins/index.js.map +1 -1
- package/dist/services/FileResetService.d.ts +2 -0
- package/dist/services/FileResetService.d.ts.map +1 -1
- package/dist/services/FileResetService.js +7 -3
- package/dist/services/FileResetService.js.map +1 -1
- package/dist/services/FormattingService.d.ts +25 -0
- package/dist/services/FormattingService.d.ts.map +1 -1
- package/dist/services/FormattingService.js +44 -12
- package/dist/services/FormattingService.js.map +1 -1
- package/dist/services/InitService.d.ts +6 -0
- package/dist/services/InitService.d.ts.map +1 -1
- package/dist/services/InitService.js +15 -3
- package/dist/services/InitService.js.map +1 -1
- package/dist/services/PullService.d.ts +9 -2
- package/dist/services/PullService.d.ts.map +1 -1
- package/dist/services/PullService.js +42 -55
- package/dist/services/PullService.js.map +1 -1
- package/dist/services/PushService.d.ts +5 -1
- package/dist/services/PushService.d.ts.map +1 -1
- package/dist/services/PushService.js +23 -15
- package/dist/services/PushService.js.map +1 -1
- package/dist/services/StatusService.d.ts +5 -0
- package/dist/services/StatusService.d.ts.map +1 -1
- package/dist/services/StatusService.js +10 -6
- package/dist/services/StatusService.js.map +1 -1
- package/dist/services/ValidationService.d.ts +2 -0
- package/dist/services/ValidationService.d.ts.map +1 -1
- package/dist/services/ValidationService.js +18 -14
- package/dist/services/ValidationService.js.map +1 -1
- package/dist/services/WatchService.d.ts +2 -0
- package/dist/services/WatchService.d.ts.map +1 -1
- package/dist/services/WatchService.js +10 -6
- package/dist/services/WatchService.js.map +1 -1
- package/dist/types/validation.d.ts +10 -2
- package/dist/types/validation.d.ts.map +1 -1
- package/dist/types/validation.js +20 -4
- package/dist/types/validation.js.map +1 -1
- package/package.json +14 -14
|
@@ -51,7 +51,7 @@ export class FileBackupManager {
|
|
|
51
51
|
* @returns Promise that resolves when initialization is complete
|
|
52
52
|
* @throws Error if temporary directory creation fails
|
|
53
53
|
*/
|
|
54
|
-
async
|
|
54
|
+
async Initialize() {
|
|
55
55
|
if (this.initialized) {
|
|
56
56
|
throw new Error('FileBackupManager already initialized');
|
|
57
57
|
}
|
|
@@ -62,6 +62,10 @@ export class FileBackupManager {
|
|
|
62
62
|
await fs.ensureDir(this.backupDir);
|
|
63
63
|
this.initialized = true;
|
|
64
64
|
}
|
|
65
|
+
/** @deprecated Use {@link Initialize}. */
|
|
66
|
+
async initialize() {
|
|
67
|
+
return this.Initialize();
|
|
68
|
+
}
|
|
65
69
|
/**
|
|
66
70
|
* Create a backup of a file before modification
|
|
67
71
|
*
|
|
@@ -72,7 +76,7 @@ export class FileBackupManager {
|
|
|
72
76
|
* @returns Promise that resolves when backup is complete
|
|
73
77
|
* @throws Error if backup operation fails
|
|
74
78
|
*/
|
|
75
|
-
async
|
|
79
|
+
async BackupFile(filePath) {
|
|
76
80
|
if (!this.initialized) {
|
|
77
81
|
throw new Error('FileBackupManager not initialized. Call initialize() first.');
|
|
78
82
|
}
|
|
@@ -96,6 +100,10 @@ export class FileBackupManager {
|
|
|
96
100
|
}
|
|
97
101
|
this.backups.push(backupEntry);
|
|
98
102
|
}
|
|
103
|
+
/** @deprecated Use {@link BackupFile}. */
|
|
104
|
+
async backupFile(filePath) {
|
|
105
|
+
return this.BackupFile(filePath);
|
|
106
|
+
}
|
|
99
107
|
/**
|
|
100
108
|
* Stop tracking a file so {@link rollback} leaves it as it is now.
|
|
101
109
|
*
|
|
@@ -105,7 +113,7 @@ export class FileBackupManager {
|
|
|
105
113
|
* @param filePath - Absolute path of a file previously passed to {@link backupFile}
|
|
106
114
|
* @returns true when a backup was tracked for this file
|
|
107
115
|
*/
|
|
108
|
-
|
|
116
|
+
ReleaseBackup(filePath) {
|
|
109
117
|
const index = this.backups.findIndex(b => b.originalPath === filePath);
|
|
110
118
|
if (index < 0) {
|
|
111
119
|
return false;
|
|
@@ -113,6 +121,10 @@ export class FileBackupManager {
|
|
|
113
121
|
this.backups.splice(index, 1);
|
|
114
122
|
return true;
|
|
115
123
|
}
|
|
124
|
+
/** @deprecated Use {@link ReleaseBackup}. */
|
|
125
|
+
releaseBackup(filePath) {
|
|
126
|
+
return this.ReleaseBackup(filePath);
|
|
127
|
+
}
|
|
116
128
|
/**
|
|
117
129
|
* Rollback all file changes by restoring from backups
|
|
118
130
|
*
|
|
@@ -123,7 +135,7 @@ export class FileBackupManager {
|
|
|
123
135
|
* @returns Promise that resolves when rollback is complete
|
|
124
136
|
* @throws Error if any rollback operation fails
|
|
125
137
|
*/
|
|
126
|
-
async
|
|
138
|
+
async Rollback() {
|
|
127
139
|
if (!this.initialized) {
|
|
128
140
|
return; // Nothing to rollback
|
|
129
141
|
}
|
|
@@ -150,7 +162,7 @@ export class FileBackupManager {
|
|
|
150
162
|
}
|
|
151
163
|
// Clean up backup directory
|
|
152
164
|
try {
|
|
153
|
-
await this.
|
|
165
|
+
await this.Cleanup();
|
|
154
166
|
}
|
|
155
167
|
catch (error) {
|
|
156
168
|
console.error('Failed to cleanup backup directory during rollback:', error);
|
|
@@ -159,6 +171,10 @@ export class FileBackupManager {
|
|
|
159
171
|
throw new Error(`Rollback completed with errors:\n${errors.join('\n')}`);
|
|
160
172
|
}
|
|
161
173
|
}
|
|
174
|
+
/** @deprecated Use {@link Rollback}. */
|
|
175
|
+
async rollback() {
|
|
176
|
+
return this.Rollback();
|
|
177
|
+
}
|
|
162
178
|
/**
|
|
163
179
|
* Clean up backup directory after successful operation
|
|
164
180
|
*
|
|
@@ -167,7 +183,7 @@ export class FileBackupManager {
|
|
|
167
183
|
*
|
|
168
184
|
* @returns Promise that resolves when cleanup is complete
|
|
169
185
|
*/
|
|
170
|
-
async
|
|
186
|
+
async Cleanup() {
|
|
171
187
|
if (!this.initialized || !this.backupDir) {
|
|
172
188
|
return;
|
|
173
189
|
}
|
|
@@ -182,17 +198,25 @@ export class FileBackupManager {
|
|
|
182
198
|
this.initialized = false;
|
|
183
199
|
this.backupDir = '';
|
|
184
200
|
}
|
|
201
|
+
/** @deprecated Use {@link Cleanup}. */
|
|
202
|
+
async cleanup() {
|
|
203
|
+
return this.Cleanup();
|
|
204
|
+
}
|
|
185
205
|
/**
|
|
186
206
|
* Get statistics about current backup session
|
|
187
207
|
*
|
|
188
208
|
* @returns Object containing backup statistics
|
|
189
209
|
*/
|
|
190
|
-
|
|
210
|
+
GetStats() {
|
|
191
211
|
return {
|
|
192
212
|
totalBackups: this.backups.length,
|
|
193
213
|
backupDir: this.backupDir,
|
|
194
214
|
initialized: this.initialized
|
|
195
215
|
};
|
|
196
216
|
}
|
|
217
|
+
/** @deprecated Use {@link GetStats}. */
|
|
218
|
+
getStats() {
|
|
219
|
+
return this.GetStats();
|
|
220
|
+
}
|
|
197
221
|
}
|
|
198
222
|
//# sourceMappingURL=file-backup-manager.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"file-backup-manager.js","sourceRoot":"","sources":["../../src/lib/file-backup-manager.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH,OAAO,EAAE,MAAM,UAAU,CAAC;AAC1B,OAAO,IAAI,MAAM,MAAM,CAAC;AACxB,OAAO,EAAE,MAAM,IAAI,CAAC;AACpB,OAAO,EAAE,EAAE,IAAI,MAAM,EAAE,MAAM,MAAM,CAAC;AAcpC;;;;;;;;;;;;;;;;;;;;;;;;;GAyBG;AACH,MAAM,OAAO,iBAAiB;IAA9B;QACU,cAAS,GAAW,EAAE,CAAC;QACvB,YAAO,GAAkB,EAAE,CAAC;QAC5B,gBAAW,GAAY,KAAK,CAAC;
|
|
1
|
+
{"version":3,"file":"file-backup-manager.js","sourceRoot":"","sources":["../../src/lib/file-backup-manager.ts"],"names":[],"mappings":"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"}
|
|
@@ -11,6 +11,8 @@ export declare class FileWriteBatch {
|
|
|
11
11
|
* @param filePath - Path to the file
|
|
12
12
|
* @param data - RecordData or array of RecordData to write
|
|
13
13
|
*/
|
|
14
|
+
QueueWrite(filePath: string, data: RecordData | RecordData[]): void;
|
|
15
|
+
/** @deprecated Use {@link QueueWrite}. */
|
|
14
16
|
queueWrite(filePath: string, data: RecordData | RecordData[]): void;
|
|
15
17
|
/**
|
|
16
18
|
* Queue an array record update operation
|
|
@@ -18,12 +20,16 @@ export declare class FileWriteBatch {
|
|
|
18
20
|
* @param updatedRecord - The updated record data
|
|
19
21
|
* @param primaryKeyLookup - Primary key lookup string to identify the record
|
|
20
22
|
*/
|
|
23
|
+
QueueArrayUpdate(filePath: string, updatedRecord: RecordData, primaryKeyLookup: string): void;
|
|
24
|
+
/** @deprecated Use {@link QueueArrayUpdate}. */
|
|
21
25
|
queueArrayUpdate(filePath: string, updatedRecord: RecordData, primaryKeyLookup: string): void;
|
|
22
26
|
/**
|
|
23
27
|
* Queue a single record update operation
|
|
24
28
|
* @param filePath - Path to the file
|
|
25
29
|
* @param updatedRecord - The updated record data
|
|
26
30
|
*/
|
|
31
|
+
QueueSingleUpdate(filePath: string, updatedRecord: RecordData): void;
|
|
32
|
+
/** @deprecated Use {@link QueueSingleUpdate}. */
|
|
27
33
|
queueSingleUpdate(filePath: string, updatedRecord: RecordData): void;
|
|
28
34
|
/**
|
|
29
35
|
* Load and cache file contents if not already loaded
|
|
@@ -37,18 +43,26 @@ export declare class FileWriteBatch {
|
|
|
37
43
|
* Write all batched changes to files using JsonWriteHelper for consistent ordering
|
|
38
44
|
* @returns Number of files written
|
|
39
45
|
*/
|
|
46
|
+
Flush(): Promise<number>;
|
|
47
|
+
/** @deprecated Use {@link Flush}. */
|
|
40
48
|
flush(): Promise<number>;
|
|
41
49
|
/**
|
|
42
50
|
* Clear all batched changes without writing
|
|
43
51
|
*/
|
|
52
|
+
Clear(): void;
|
|
53
|
+
/** @deprecated Use {@link Clear}. */
|
|
44
54
|
clear(): void;
|
|
45
55
|
/**
|
|
46
56
|
* Get the number of files that will be written
|
|
47
57
|
*/
|
|
58
|
+
GetPendingFileCount(): number;
|
|
59
|
+
/** @deprecated Use {@link GetPendingFileCount}. */
|
|
48
60
|
getPendingFileCount(): number;
|
|
49
61
|
/**
|
|
50
62
|
* Get all pending file paths
|
|
51
63
|
*/
|
|
64
|
+
GetPendingFiles(): string[];
|
|
65
|
+
/** @deprecated Use {@link GetPendingFiles}. */
|
|
52
66
|
getPendingFiles(): string[];
|
|
53
67
|
/**
|
|
54
68
|
* Add a change to the batch
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"file-write-batch.d.ts","sourceRoot":"","sources":["../../src/lib/file-write-batch.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,UAAU,EAAE,MAAM,eAAe,CAAC;AAoB3C;;;GAGG;AACH,qBAAa,cAAc;IACzB,OAAO,CAAC,OAAO,CAAmC;IAClD,OAAO,CAAC,YAAY,CAAgD;IAEpE;;;;OAIG;IACH,UAAU,CAAC,QAAQ,EAAE,MAAM,EAAE,IAAI,EAAE,UAAU,GAAG,UAAU,EAAE,GAAG,IAAI;IASnE;;;;;OAKG;IACH,gBAAgB,CAAC,QAAQ,EAAE,MAAM,EAAE,aAAa,EAAE,UAAU,EAAE,gBAAgB,EAAE,MAAM,GAAG,IAAI;IAoB7F;;;;OAIG;IACH,iBAAiB,CAAC,QAAQ,EAAE,MAAM,EAAE,aAAa,EAAE,UAAU,GAAG,IAAI;IASpE;;OAEG;YACW,gBAAgB;IAgB9B;;OAEG;YACW,YAAY;IAsD1B;;;OAGG;IACG,KAAK,IAAI,OAAO,CAAC,MAAM,CAAC;IAgC9B;;OAEG;IACH,KAAK,IAAI,IAAI;IAKb;;OAEG;IACH,mBAAmB,IAAI,MAAM;IAI7B;;OAEG;IACH,eAAe,IAAI,MAAM,EAAE;IAI3B;;OAEG;IACH,OAAO,CAAC,SAAS;CAMlB"}
|
|
1
|
+
{"version":3,"file":"file-write-batch.d.ts","sourceRoot":"","sources":["../../src/lib/file-write-batch.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,UAAU,EAAE,MAAM,eAAe,CAAC;AAoB3C;;;GAGG;AACH,qBAAa,cAAc;IACzB,OAAO,CAAC,OAAO,CAAmC;IAClD,OAAO,CAAC,YAAY,CAAgD;IAEpE;;;;OAIG;IACH,UAAU,CAAC,QAAQ,EAAE,MAAM,EAAE,IAAI,EAAE,UAAU,GAAG,UAAU,EAAE,GAAG,IAAI;IASnE,0CAA0C;IAC1C,UAAU,CAAC,QAAQ,EAAE,MAAM,EAAE,IAAI,EAAE,UAAU,GAAG,UAAU,EAAE,GAAG,IAAI;IAInE;;;;;OAKG;IACH,gBAAgB,CAAC,QAAQ,EAAE,MAAM,EAAE,aAAa,EAAE,UAAU,EAAE,gBAAgB,EAAE,MAAM,GAAG,IAAI;IAoB7F,gDAAgD;IAChD,gBAAgB,CAAC,QAAQ,EAAE,MAAM,EAAE,aAAa,EAAE,UAAU,EAAE,gBAAgB,EAAE,MAAM,GAAG,IAAI;IAI7F;;;;OAIG;IACH,iBAAiB,CAAC,QAAQ,EAAE,MAAM,EAAE,aAAa,EAAE,UAAU,GAAG,IAAI;IASpE,iDAAiD;IACjD,iBAAiB,CAAC,QAAQ,EAAE,MAAM,EAAE,aAAa,EAAE,UAAU,GAAG,IAAI;IAIpE;;OAEG;YACW,gBAAgB;IAgB9B;;OAEG;YACW,YAAY;IAsD1B;;;OAGG;IACG,KAAK,IAAI,OAAO,CAAC,MAAM,CAAC;IAgC9B,qCAAqC;IAC/B,KAAK,IAAI,OAAO,CAAC,MAAM,CAAC;IAI9B;;OAEG;IACH,KAAK,IAAI,IAAI;IAKb,qCAAqC;IACrC,KAAK,IAAI,IAAI;IAIb;;OAEG;IACH,mBAAmB,IAAI,MAAM;IAI7B,mDAAmD;IACnD,mBAAmB,IAAI,MAAM;IAI7B;;OAEG;IACH,eAAe,IAAI,MAAM,EAAE;IAI3B,+CAA+C;IAC/C,eAAe,IAAI,MAAM,EAAE;IAI3B;;OAEG;IACH,OAAO,CAAC,SAAS;CAMlB"}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import fs from 'fs-extra';
|
|
2
2
|
import path from 'path';
|
|
3
3
|
import { JsonWriteHelper } from './json-write-helper.js';
|
|
4
|
-
import {
|
|
4
|
+
import { CreatePrimaryKeyLookup, HasCompletePrimaryKey } from './record-primary-key.js';
|
|
5
5
|
/**
|
|
6
6
|
* Batches file write operations to improve performance and ensure consistent property ordering.
|
|
7
7
|
* Collects all changes during processing and writes each file only once at the end.
|
|
@@ -16,7 +16,7 @@ export class FileWriteBatch {
|
|
|
16
16
|
* @param filePath - Path to the file
|
|
17
17
|
* @param data - RecordData or array of RecordData to write
|
|
18
18
|
*/
|
|
19
|
-
|
|
19
|
+
QueueWrite(filePath, data) {
|
|
20
20
|
const absolutePath = path.resolve(filePath);
|
|
21
21
|
this.addChange(absolutePath, {
|
|
22
22
|
filePath: absolutePath,
|
|
@@ -24,18 +24,22 @@ export class FileWriteBatch {
|
|
|
24
24
|
data
|
|
25
25
|
});
|
|
26
26
|
}
|
|
27
|
+
/** @deprecated Use {@link QueueWrite}. */
|
|
28
|
+
queueWrite(filePath, data) {
|
|
29
|
+
return this.QueueWrite(filePath, data);
|
|
30
|
+
}
|
|
27
31
|
/**
|
|
28
32
|
* Queue an array record update operation
|
|
29
33
|
* @param filePath - Path to the file containing the array
|
|
30
34
|
* @param updatedRecord - The updated record data
|
|
31
35
|
* @param primaryKeyLookup - Primary key lookup string to identify the record
|
|
32
36
|
*/
|
|
33
|
-
|
|
37
|
+
QueueArrayUpdate(filePath, updatedRecord, primaryKeyLookup) {
|
|
34
38
|
// Array updates match entries by primary key. A record whose key has no value ({ ID: undefined },
|
|
35
39
|
// written to the file as `primaryKey: {}`) matches every other such record, so each queued record
|
|
36
40
|
// would overwrite the last and a batch of N new records would write exactly one (#3415).
|
|
37
41
|
// Refuse rather than lose data.
|
|
38
|
-
if (!
|
|
42
|
+
if (!HasCompletePrimaryKey(updatedRecord.primaryKey)) {
|
|
39
43
|
throw new Error(`Refusing to queue an update to ${path.basename(filePath)} for a record with an incomplete primary key ` +
|
|
40
44
|
`(${JSON.stringify(updatedRecord.primaryKey ?? {})}): it would overwrite other records in the file.`);
|
|
41
45
|
}
|
|
@@ -47,12 +51,16 @@ export class FileWriteBatch {
|
|
|
47
51
|
primaryKeyLookup
|
|
48
52
|
});
|
|
49
53
|
}
|
|
54
|
+
/** @deprecated Use {@link QueueArrayUpdate}. */
|
|
55
|
+
queueArrayUpdate(filePath, updatedRecord, primaryKeyLookup) {
|
|
56
|
+
return this.QueueArrayUpdate(filePath, updatedRecord, primaryKeyLookup);
|
|
57
|
+
}
|
|
50
58
|
/**
|
|
51
59
|
* Queue a single record update operation
|
|
52
60
|
* @param filePath - Path to the file
|
|
53
61
|
* @param updatedRecord - The updated record data
|
|
54
62
|
*/
|
|
55
|
-
|
|
63
|
+
QueueSingleUpdate(filePath, updatedRecord) {
|
|
56
64
|
const absolutePath = path.resolve(filePath);
|
|
57
65
|
this.addChange(absolutePath, {
|
|
58
66
|
filePath: absolutePath,
|
|
@@ -60,6 +68,10 @@ export class FileWriteBatch {
|
|
|
60
68
|
data: updatedRecord
|
|
61
69
|
});
|
|
62
70
|
}
|
|
71
|
+
/** @deprecated Use {@link QueueSingleUpdate}. */
|
|
72
|
+
queueSingleUpdate(filePath, updatedRecord) {
|
|
73
|
+
return this.QueueSingleUpdate(filePath, updatedRecord);
|
|
74
|
+
}
|
|
63
75
|
/**
|
|
64
76
|
* Load and cache file contents if not already loaded
|
|
65
77
|
*/
|
|
@@ -97,7 +109,7 @@ export class FileWriteBatch {
|
|
|
97
109
|
const contentArray = Array.isArray(currentContent) ? currentContent : [];
|
|
98
110
|
if (change.primaryKeyLookup) {
|
|
99
111
|
// Find existing record with matching primary key
|
|
100
|
-
const index = contentArray.findIndex(r =>
|
|
112
|
+
const index = contentArray.findIndex(r => CreatePrimaryKeyLookup(r.primaryKey) === change.primaryKeyLookup);
|
|
101
113
|
if (index >= 0) {
|
|
102
114
|
// Update existing record
|
|
103
115
|
contentArray[index] = change.data;
|
|
@@ -130,7 +142,7 @@ export class FileWriteBatch {
|
|
|
130
142
|
* Write all batched changes to files using JsonWriteHelper for consistent ordering
|
|
131
143
|
* @returns Number of files written
|
|
132
144
|
*/
|
|
133
|
-
async
|
|
145
|
+
async Flush() {
|
|
134
146
|
if (this.changes.size === 0) {
|
|
135
147
|
return 0;
|
|
136
148
|
}
|
|
@@ -148,28 +160,44 @@ export class FileWriteBatch {
|
|
|
148
160
|
await Promise.all(writePromises);
|
|
149
161
|
const filesWritten = this.fileContents.size;
|
|
150
162
|
// Clear all batched changes
|
|
151
|
-
this.
|
|
163
|
+
this.Clear();
|
|
152
164
|
return filesWritten;
|
|
153
165
|
}
|
|
166
|
+
/** @deprecated Use {@link Flush}. */
|
|
167
|
+
async flush() {
|
|
168
|
+
return this.Flush();
|
|
169
|
+
}
|
|
154
170
|
/**
|
|
155
171
|
* Clear all batched changes without writing
|
|
156
172
|
*/
|
|
157
|
-
|
|
173
|
+
Clear() {
|
|
158
174
|
this.changes.clear();
|
|
159
175
|
this.fileContents.clear();
|
|
160
176
|
}
|
|
177
|
+
/** @deprecated Use {@link Clear}. */
|
|
178
|
+
clear() {
|
|
179
|
+
return this.Clear();
|
|
180
|
+
}
|
|
161
181
|
/**
|
|
162
182
|
* Get the number of files that will be written
|
|
163
183
|
*/
|
|
164
|
-
|
|
184
|
+
GetPendingFileCount() {
|
|
165
185
|
return this.changes.size;
|
|
166
186
|
}
|
|
187
|
+
/** @deprecated Use {@link GetPendingFileCount}. */
|
|
188
|
+
getPendingFileCount() {
|
|
189
|
+
return this.GetPendingFileCount();
|
|
190
|
+
}
|
|
167
191
|
/**
|
|
168
192
|
* Get all pending file paths
|
|
169
193
|
*/
|
|
170
|
-
|
|
194
|
+
GetPendingFiles() {
|
|
171
195
|
return Array.from(this.changes.keys());
|
|
172
196
|
}
|
|
197
|
+
/** @deprecated Use {@link GetPendingFiles}. */
|
|
198
|
+
getPendingFiles() {
|
|
199
|
+
return this.GetPendingFiles();
|
|
200
|
+
}
|
|
173
201
|
/**
|
|
174
202
|
* Add a change to the batch
|
|
175
203
|
*/
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"file-write-batch.js","sourceRoot":"","sources":["../../src/lib/file-write-batch.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,UAAU,CAAC;AAC1B,OAAO,IAAI,MAAM,MAAM,CAAC;AAExB,OAAO,EAAE,eAAe,EAAE,MAAM,qBAAqB,CAAC;AACtD,OAAO,EAAE,sBAAsB,EAAE,qBAAqB,EAAE,MAAM,sBAAsB,CAAC;AAkBrF;;;GAGG;AACH,MAAM,OAAO,cAAc;IAA3B;QACU,YAAO,GAAG,IAAI,GAAG,EAAwB,CAAC;QAC1C,iBAAY,GAAG,IAAI,GAAG,EAAqC,CAAC;
|
|
1
|
+
{"version":3,"file":"file-write-batch.js","sourceRoot":"","sources":["../../src/lib/file-write-batch.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,UAAU,CAAC;AAC1B,OAAO,IAAI,MAAM,MAAM,CAAC;AAExB,OAAO,EAAE,eAAe,EAAE,MAAM,qBAAqB,CAAC;AACtD,OAAO,EAAE,sBAAsB,EAAE,qBAAqB,EAAE,MAAM,sBAAsB,CAAC;AAkBrF;;;GAGG;AACH,MAAM,OAAO,cAAc;IAA3B;QACU,YAAO,GAAG,IAAI,GAAG,EAAwB,CAAC;QAC1C,iBAAY,GAAG,IAAI,GAAG,EAAqC,CAAC;IA0OtE,CAAC;IAxOC;;;;OAIG;IACH,UAAU,CAAC,QAAgB,EAAE,IAA+B;QAC1D,MAAM,YAAY,GAAG,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC;QAC5C,IAAI,CAAC,SAAS,CAAC,YAAY,EAAE;YAC3B,QAAQ,EAAE,YAAY;YACtB,SAAS,EAAE,OAAO;YAClB,IAAI;SACL,CAAC,CAAC;IACL,CAAC;IAED,0CAA0C;IAC1C,UAAU,CAAC,QAAgB,EAAE,IAA+B;QAC1D,OAAO,IAAI,CAAC,UAAU,CAAC,QAAQ,EAAE,IAAI,CAAC,CAAC;IACzC,CAAC;IAED;;;;;OAKG;IACH,gBAAgB,CAAC,QAAgB,EAAE,aAAyB,EAAE,gBAAwB;QACpF,kGAAkG;QAClG,kGAAkG;QAClG,yFAAyF;QACzF,gCAAgC;QAChC,IAAI,CAAC,qBAAqB,CAAC,aAAa,CAAC,UAAU,CAAC,EAAE,CAAC;YACrD,MAAM,IAAI,KAAK,CACb,kCAAkC,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC,+CAA+C;gBACtG,IAAI,IAAI,CAAC,SAAS,CAAC,aAAa,CAAC,UAAU,IAAI,EAAE,CAAC,kDAAkD,CACvG,CAAC;QACJ,CAAC;QACD,MAAM,YAAY,GAAG,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC;QAC5C,IAAI,CAAC,SAAS,CAAC,YAAY,EAAE;YAC3B,QAAQ,EAAE,YAAY;YACtB,SAAS,EAAE,cAAc;YACzB,IAAI,EAAE,aAAa;YACnB,gBAAgB;SACjB,CAAC,CAAC;IACL,CAAC;IAED,gDAAgD;IAChD,gBAAgB,CAAC,QAAgB,EAAE,aAAyB,EAAE,gBAAwB;QACpF,OAAO,IAAI,CAAC,gBAAgB,CAAC,QAAQ,EAAE,aAAa,EAAE,gBAAgB,CAAC,CAAC;IAC1E,CAAC;IAED;;;;OAIG;IACH,iBAAiB,CAAC,QAAgB,EAAE,aAAyB;QAC3D,MAAM,YAAY,GAAG,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC;QAC5C,IAAI,CAAC,SAAS,CAAC,YAAY,EAAE;YAC3B,QAAQ,EAAE,YAAY;YACtB,SAAS,EAAE,eAAe;YAC1B,IAAI,EAAE,aAAa;SACpB,CAAC,CAAC;IACL,CAAC;IAED,iDAAiD;IACjD,iBAAiB,CAAC,QAAgB,EAAE,aAAyB;QAC3D,OAAO,IAAI,CAAC,iBAAiB,CAAC,QAAQ,EAAE,aAAa,CAAC,CAAC;IACzD,CAAC;IAED;;OAEG;IACK,KAAK,CAAC,gBAAgB,CAAC,QAAgB;QAC7C,IAAI,IAAI,CAAC,YAAY,CAAC,GAAG,CAAC,QAAQ,CAAC,EAAE,CAAC;YACpC,OAAO;QACT,CAAC;QAED,IAAI,CAAC;YACH,IAAI,MAAM,EAAE,CAAC,UAAU,CAAC,QAAQ,CAAC,EAAE,CAAC;gBAClC,MAAM,OAAO,GAAG,MAAM,EAAE,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC;gBAC5C,IAAI,CAAC,YAAY,CAAC,GAAG,CAAC,QAAQ,EAAE,OAAO,CAAC,CAAC;YAC3C,CAAC;QACH,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,gEAAgE;YAChE,oDAAoD;QACtD,CAAC;IACH,CAAC;IAED;;OAEG;IACK,KAAK,CAAC,YAAY;QACxB,KAAK,MAAM,CAAC,QAAQ,EAAE,OAAO,CAAC,IAAI,IAAI,CAAC,OAAO,EAAE,CAAC;YAC/C,MAAM,IAAI,CAAC,gBAAgB,CAAC,QAAQ,CAAC,CAAC;YAEtC,kDAAkD;YAClD,IAAI,cAAc,GAA8B,IAAI,CAAC,YAAY,CAAC,GAAG,CAAC,QAAQ,CAAC,IAAI,EAAE,CAAC;YAEtF,KAAK,MAAM,MAAM,IAAI,OAAO,EAAE,CAAC;gBAC7B,QAAQ,MAAM,CAAC,SAAS,EAAE,CAAC;oBACzB,KAAK,OAAO;wBACV,qBAAqB;wBACrB,cAAc,GAAG,MAAM,CAAC,IAAI,CAAC;wBAC7B,MAAM;oBAER,KAAK,cAAc,CAAC,CAAC,CAAC;wBACpB,6BAA6B;wBAC7B,MAAM,YAAY,GAAG,KAAK,CAAC,OAAO,CAAC,cAAc,CAAC,CAAC,CAAC,CAAC,cAAc,CAAC,CAAC,CAAC,EAAE,CAAC;wBAEzE,IAAI,MAAM,CAAC,gBAAgB,EAAE,CAAC;4BAC5B,iDAAiD;4BACjD,MAAM,KAAK,GAAG,YAAY,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE,CACvC,sBAAsB,CAAC,CAAC,CAAC,UAAU,CAAC,KAAK,MAAM,CAAC,gBAAgB,CACjE,CAAC;4BAEF,IAAI,KAAK,IAAI,CAAC,EAAE,CAAC;gCACf,yBAAyB;gCACzB,YAAY,CAAC,KAAK,CAAC,GAAG,MAAM,CAAC,IAAkB,CAAC;4BAClD,CAAC;iCAAM,CAAC;gCACN,8BAA8B;gCAC9B,YAAY,CAAC,IAAI,CAAC,MAAM,CAAC,IAAkB,CAAC,CAAC;4BAC/C,CAAC;wBACH,CAAC;6BAAM,CAAC;4BACN,6BAA6B;4BAC7B,YAAY,CAAC,IAAI,CAAC,MAAM,CAAC,IAAkB,CAAC,CAAC;wBAC/C,CAAC;wBAED,cAAc,GAAG,YAAY,CAAC;wBAC9B,MAAM;oBACR,CAAC;oBAED,KAAK,eAAe;wBAClB,uDAAuD;wBACvD,cAAc,GAAG,MAAM,CAAC,IAAI,CAAC;wBAC7B,MAAM;gBACV,CAAC;YACH,CAAC;YAED,+BAA+B;YAC/B,IAAI,cAAc,KAAK,SAAS,EAAE,CAAC;gBACjC,IAAI,CAAC,YAAY,CAAC,GAAG,CAAC,QAAQ,EAAE,cAAc,CAAC,CAAC;YAClD,CAAC;QACH,CAAC;IACH,CAAC;IAED;;;OAGG;IACH,KAAK,CAAC,KAAK;QACT,IAAI,IAAI,CAAC,OAAO,CAAC,IAAI,KAAK,CAAC,EAAE,CAAC;YAC5B,OAAO,CAAC,CAAC;QACX,CAAC;QAED,+CAA+C;QAC/C,MAAM,IAAI,CAAC,YAAY,EAAE,CAAC;QAE1B,wCAAwC;QACxC,MAAM,aAAa,GAAoB,EAAE,CAAC;QAE1C,KAAK,MAAM,CAAC,QAAQ,EAAE,OAAO,CAAC,IAAI,IAAI,CAAC,YAAY,CAAC,OAAO,EAAE,EAAE,CAAC;YAC9D,0BAA0B;YAC1B,MAAM,GAAG,GAAG,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC;YACnC,MAAM,EAAE,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC;YAExB,+DAA+D;YAC/D,aAAa,CAAC,IAAI,CAChB,eAAe,CAAC,sBAAsB,CAAC,QAAQ,EAAE,OAAO,CAAC,CAC1D,CAAC;QACJ,CAAC;QAED,MAAM,OAAO,CAAC,GAAG,CAAC,aAAa,CAAC,CAAC;QAEjC,MAAM,YAAY,GAAG,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC;QAE5C,4BAA4B;QAC5B,IAAI,CAAC,KAAK,EAAE,CAAC;QAEb,OAAO,YAAY,CAAC;IACtB,CAAC;IAED,qCAAqC;IACrC,KAAK,CAAC,KAAK;QACT,OAAO,IAAI,CAAC,KAAK,EAAE,CAAC;IACtB,CAAC;IAED;;OAEG;IACH,KAAK;QACH,IAAI,CAAC,OAAO,CAAC,KAAK,EAAE,CAAC;QACrB,IAAI,CAAC,YAAY,CAAC,KAAK,EAAE,CAAC;IAC5B,CAAC;IAED,qCAAqC;IACrC,KAAK;QACH,OAAO,IAAI,CAAC,KAAK,EAAE,CAAC;IACtB,CAAC;IAED;;OAEG;IACH,mBAAmB;QACjB,OAAO,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC;IAC3B,CAAC;IAED,mDAAmD;IACnD,mBAAmB;QACjB,OAAO,IAAI,CAAC,mBAAmB,EAAE,CAAC;IACpC,CAAC;IAED;;OAEG;IACH,eAAe;QACb,OAAO,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,IAAI,EAAE,CAAC,CAAC;IACzC,CAAC;IAED,+CAA+C;IAC/C,eAAe;QACb,OAAO,IAAI,CAAC,eAAe,EAAE,CAAC;IAChC,CAAC;IAED;;OAEG;IACK,SAAS,CAAC,QAAgB,EAAE,MAAkB;QACpD,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,QAAQ,CAAC,EAAE,CAAC;YAChC,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,QAAQ,EAAE,EAAE,CAAC,CAAC;QACjC,CAAC;QACD,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,QAAQ,CAAE,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;IAC3C,CAAC;CACF"}
|
|
@@ -48,6 +48,8 @@ export interface GraphProviderPoolOptions {
|
|
|
48
48
|
* before any graph runs, so a push never discovers mid-file that it has to switch topology.
|
|
49
49
|
* @returns `undefined` when independent instances work, otherwise the reason they do not.
|
|
50
50
|
*/
|
|
51
|
+
export declare function ProbeIndependentInstances(host: GraphProviderLike): Promise<string | undefined>;
|
|
52
|
+
/** @deprecated Use {@link ProbeIndependentInstances}. */
|
|
51
53
|
export declare function probeIndependentInstances(host: GraphProviderLike): Promise<string | undefined>;
|
|
52
54
|
export declare class GraphProviderPool {
|
|
53
55
|
private readonly host;
|
|
@@ -64,13 +66,23 @@ export declare class GraphProviderPool {
|
|
|
64
66
|
* Record, per graphId, the highest dependency-level index it occupies so we
|
|
65
67
|
* can drain (commit/rollback + release) as soon as that level finishes.
|
|
66
68
|
*/
|
|
69
|
+
NoteLevels(levels: Array<Array<{
|
|
70
|
+
graphId: string;
|
|
71
|
+
}>>): void;
|
|
72
|
+
/** @deprecated Use {@link NoteLevels}. */
|
|
67
73
|
noteLevels(levels: Array<Array<{
|
|
68
74
|
graphId: string;
|
|
69
75
|
}>>): void;
|
|
70
76
|
/** One record error anywhere in the file rolls back every graph in that file. */
|
|
77
|
+
MarkFailed(): void;
|
|
78
|
+
/** @deprecated Use {@link MarkFailed}. */
|
|
71
79
|
markFailed(): void;
|
|
80
|
+
get HasFailed(): boolean;
|
|
81
|
+
/** @deprecated Use {@link HasFailed}. */
|
|
72
82
|
get hasFailed(): boolean;
|
|
73
83
|
/** Provider for this graph. See the class comment for the per-mode rules. */
|
|
84
|
+
Obtain(graphId: string): Promise<GraphProviderLike>;
|
|
85
|
+
/** @deprecated Use {@link Obtain}. */
|
|
74
86
|
obtain(graphId: string): Promise<GraphProviderLike>;
|
|
75
87
|
private obtainHost;
|
|
76
88
|
/**
|
|
@@ -79,8 +91,12 @@ export declare class GraphProviderPool {
|
|
|
79
91
|
* graphs whose last level is `levelIndex`, or whose TransactionDepth is already 0.
|
|
80
92
|
* Returns the first settle error so the caller cannot report success with uncommitted rows.
|
|
81
93
|
*/
|
|
94
|
+
DrainBatch(graphIds: string[], levelIndex: number): Promise<Error | undefined>;
|
|
95
|
+
/** @deprecated Use {@link DrainBatch}. */
|
|
82
96
|
drainBatch(graphIds: string[], levelIndex: number): Promise<Error | undefined>;
|
|
83
97
|
/** Release every remaining graph. Safe to call from `finally`. */
|
|
98
|
+
ReleaseAll(): Promise<Error | undefined>;
|
|
99
|
+
/** @deprecated Use {@link ReleaseAll}. */
|
|
84
100
|
releaseAll(): Promise<Error | undefined>;
|
|
85
101
|
private releaseHost;
|
|
86
102
|
private releaseGraphs;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"graph-provider-pool.d.ts","sourceRoot":"","sources":["../../src/lib/graph-provider-pool.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;GAwBG;AAEH,MAAM,WAAW,iBAAiB;IAChC,gBAAgB,EAAE,MAAM,CAAC;IACzB,yBAAyB,IAAI,OAAO,CAAC,iBAAiB,CAAC,CAAC;IACxD,iBAAiB,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC;IACnC,mBAAmB,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC;IACrC,0BAA0B,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC;CAC7C;AAED,MAAM,MAAM,iBAAiB,GAAG,MAAM,GAAG,aAAa,CAAC;AAEvD;;;;GAIG;AACH,MAAM,MAAM,kBAAkB,GAAG,WAAW,GAAG,YAAY,CAAC;AAE5D,MAAM,WAAW,wBAAwB;IACvC,IAAI,EAAE,iBAAiB,CAAC;IACxB,GAAG,CAAC,EAAE,CAAC,OAAO,EAAE,MAAM,KAAK,IAAI,CAAC;IAChC,uFAAuF;IACvF,cAAc,CAAC,EAAE,CAAC,OAAO,EAAE,MAAM,EAAE,OAAO,EAAE,kBAAkB,KAAK,IAAI,CAAC;CACzE;AAED;;;;GAIG;AACH,wBAAsB,yBAAyB,CAAC,IAAI,EAAE,iBAAiB,GAAG,OAAO,CAAC,MAAM,GAAG,SAAS,CAAC,CAapG;AAED,qBAAa,iBAAiB;IAU1B,OAAO,CAAC,QAAQ,CAAC,IAAI;IATvB,OAAO,CAAC,QAAQ,CAAC,SAAS,CAAwC;IAClE,OAAO,CAAC,QAAQ,CAAC,gBAAgB,CAA6B;IAC9D,OAAO,CAAC,QAAQ,CAAC,IAAI,CAAoB;IACzC,OAAO,CAAC,QAAQ,CAAC,GAAG,CAA4B;IAChD,OAAO,CAAC,QAAQ,CAAC,cAAc,CAAC,CAAyD;IACzF,OAAO,CAAC,UAAU,CAAqB;IACvC,OAAO,CAAC,SAAS,CAAS;gBAGP,IAAI,EAAE,iBAAiB,EACxC,OAAO,EAAE,wBAAwB;IAOnC,IAAI,IAAI,IAAI,iBAAiB,CAE5B;IAED;;;OAGG;IACH,UAAU,CAAC,MAAM,EAAE,KAAK,CAAC,KAAK,CAAC;QAAE,OAAO,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC,GAAG,IAAI;IAS3D,iFAAiF;IACjF,UAAU,IAAI,IAAI;IAIlB,IAAI,SAAS,IAAI,OAAO,CAEvB;IAED,6EAA6E;IACvE,MAAM,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,iBAAiB,CAAC;IAoBzD,OAAO,CAAC,UAAU;IAWlB;;;;;OAKG;IACG,UAAU,CAAC,QAAQ,EAAE,MAAM,EAAE,EAAE,UAAU,EAAE,MAAM,GAAG,OAAO,CAAC,KAAK,GAAG,SAAS,CAAC;IAcpF,kEAAkE;IAC5D,UAAU,IAAI,OAAO,CAAC,KAAK,GAAG,SAAS,CAAC;IAQ9C,OAAO,CAAC,WAAW;YAML,aAAa;IAa3B,kFAAkF;YACpE,gBAAgB;IAqB9B;;;OAGG;YACW,MAAM;YAYN,eAAe;CAS9B"}
|
|
1
|
+
{"version":3,"file":"graph-provider-pool.d.ts","sourceRoot":"","sources":["../../src/lib/graph-provider-pool.ts"],"names":[],"mappings":"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"}
|
|
@@ -28,7 +28,7 @@
|
|
|
28
28
|
* before any graph runs, so a push never discovers mid-file that it has to switch topology.
|
|
29
29
|
* @returns `undefined` when independent instances work, otherwise the reason they do not.
|
|
30
30
|
*/
|
|
31
|
-
export async function
|
|
31
|
+
export async function ProbeIndependentInstances(host) {
|
|
32
32
|
let instance;
|
|
33
33
|
try {
|
|
34
34
|
instance = await host.CreateIndependentInstance();
|
|
@@ -44,6 +44,10 @@ export async function probeIndependentInstances(host) {
|
|
|
44
44
|
}
|
|
45
45
|
return undefined;
|
|
46
46
|
}
|
|
47
|
+
/** @deprecated Use {@link ProbeIndependentInstances}. */
|
|
48
|
+
export async function probeIndependentInstances(host) {
|
|
49
|
+
return ProbeIndependentInstances(host);
|
|
50
|
+
}
|
|
47
51
|
export class GraphProviderPool {
|
|
48
52
|
constructor(host, options) {
|
|
49
53
|
this.host = host;
|
|
@@ -61,7 +65,7 @@ export class GraphProviderPool {
|
|
|
61
65
|
* Record, per graphId, the highest dependency-level index it occupies so we
|
|
62
66
|
* can drain (commit/rollback + release) as soon as that level finishes.
|
|
63
67
|
*/
|
|
64
|
-
|
|
68
|
+
NoteLevels(levels) {
|
|
65
69
|
this.lastLevelByGraph.clear();
|
|
66
70
|
for (let i = 0; i < levels.length; i++) {
|
|
67
71
|
for (const rec of levels[i]) {
|
|
@@ -69,15 +73,27 @@ export class GraphProviderPool {
|
|
|
69
73
|
}
|
|
70
74
|
}
|
|
71
75
|
}
|
|
76
|
+
/** @deprecated Use {@link NoteLevels}. */
|
|
77
|
+
noteLevels(levels) {
|
|
78
|
+
return this.NoteLevels(levels);
|
|
79
|
+
}
|
|
72
80
|
/** One record error anywhere in the file rolls back every graph in that file. */
|
|
73
|
-
|
|
81
|
+
MarkFailed() {
|
|
74
82
|
this.anyFailed = true;
|
|
75
83
|
}
|
|
76
|
-
|
|
84
|
+
/** @deprecated Use {@link MarkFailed}. */
|
|
85
|
+
markFailed() {
|
|
86
|
+
return this.MarkFailed();
|
|
87
|
+
}
|
|
88
|
+
get HasFailed() {
|
|
77
89
|
return this.anyFailed;
|
|
78
90
|
}
|
|
91
|
+
/** @deprecated Use {@link HasFailed}. */
|
|
92
|
+
get hasFailed() {
|
|
93
|
+
return this.HasFailed;
|
|
94
|
+
}
|
|
79
95
|
/** Provider for this graph. See the class comment for the per-mode rules. */
|
|
80
|
-
async
|
|
96
|
+
async Obtain(graphId) {
|
|
81
97
|
if (this.mode === 'host') {
|
|
82
98
|
return this.obtainHost(graphId);
|
|
83
99
|
}
|
|
@@ -95,6 +111,10 @@ export class GraphProviderPool {
|
|
|
95
111
|
`Refusing to run this graph on the host provider: mixing host and independent instances is a deadlock.`);
|
|
96
112
|
}
|
|
97
113
|
}
|
|
114
|
+
/** @deprecated Use {@link Obtain}. */
|
|
115
|
+
async obtain(graphId) {
|
|
116
|
+
return this.Obtain(graphId);
|
|
117
|
+
}
|
|
98
118
|
obtainHost(graphId) {
|
|
99
119
|
if (this.hostHolder !== undefined && this.hostHolder !== graphId) {
|
|
100
120
|
throw new Error(`Graph ${graphId} asked for the host provider while graph ${this.hostHolder} still holds it. ` +
|
|
@@ -109,7 +129,7 @@ export class GraphProviderPool {
|
|
|
109
129
|
* graphs whose last level is `levelIndex`, or whose TransactionDepth is already 0.
|
|
110
130
|
* Returns the first settle error so the caller cannot report success with uncommitted rows.
|
|
111
131
|
*/
|
|
112
|
-
async
|
|
132
|
+
async DrainBatch(graphIds, levelIndex) {
|
|
113
133
|
if (this.mode === 'host') {
|
|
114
134
|
this.releaseHost(graphIds);
|
|
115
135
|
return undefined;
|
|
@@ -123,14 +143,22 @@ export class GraphProviderPool {
|
|
|
123
143
|
});
|
|
124
144
|
return this.releaseGraphs(ending);
|
|
125
145
|
}
|
|
146
|
+
/** @deprecated Use {@link DrainBatch}. */
|
|
147
|
+
async drainBatch(graphIds, levelIndex) {
|
|
148
|
+
return this.DrainBatch(graphIds, levelIndex);
|
|
149
|
+
}
|
|
126
150
|
/** Release every remaining graph. Safe to call from `finally`. */
|
|
127
|
-
async
|
|
151
|
+
async ReleaseAll() {
|
|
128
152
|
if (this.mode === 'host') {
|
|
129
153
|
this.hostHolder = undefined;
|
|
130
154
|
return undefined;
|
|
131
155
|
}
|
|
132
156
|
return this.releaseGraphs([...this.providers.keys()]);
|
|
133
157
|
}
|
|
158
|
+
/** @deprecated Use {@link ReleaseAll}. */
|
|
159
|
+
async releaseAll() {
|
|
160
|
+
return this.ReleaseAll();
|
|
161
|
+
}
|
|
134
162
|
releaseHost(graphIds) {
|
|
135
163
|
if (this.hostHolder !== undefined && graphIds.includes(this.hostHolder)) {
|
|
136
164
|
this.hostHolder = undefined;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"graph-provider-pool.js","sourceRoot":"","sources":["../../src/lib/graph-provider-pool.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"graph-provider-pool.js","sourceRoot":"","sources":["../../src/lib/graph-provider-pool.ts"],"names":[],"mappings":"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"}
|
|
@@ -16,6 +16,8 @@ export declare class JsonPreprocessor {
|
|
|
16
16
|
* @param filePath - Path to the JSON file to process
|
|
17
17
|
* @returns The processed JSON data with all includes resolved
|
|
18
18
|
*/
|
|
19
|
+
ProcessFile(filePath: string): Promise<any>;
|
|
20
|
+
/** @deprecated Use {@link ProcessFile}. */
|
|
19
21
|
processFile(filePath: string): Promise<any>;
|
|
20
22
|
/**
|
|
21
23
|
* Recursively process @include directives in JSON data
|
|
@@ -63,6 +65,8 @@ export declare class JsonPreprocessor {
|
|
|
63
65
|
* @param filePath - The file path (for resolving relative includes)
|
|
64
66
|
* @returns Processed data with includes resolved
|
|
65
67
|
*/
|
|
68
|
+
ProcessJsonData(data: any, filePath: string): Promise<any>;
|
|
69
|
+
/** @deprecated Use {@link ProcessJsonData}. */
|
|
66
70
|
processJsonData(data: any, filePath: string): Promise<any>;
|
|
67
71
|
}
|
|
68
72
|
//# sourceMappingURL=json-preprocessor.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"json-preprocessor.d.ts","sourceRoot":"","sources":["../../src/lib/json-preprocessor.ts"],"names":[],"mappings":"AAIA;;GAEG;AACH,MAAM,WAAW,gBAAgB;IAC/B,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,CAAC,EAAE,QAAQ,GAAG,SAAS,CAAC;CAC7B;AAED;;;GAGG;AACH,qBAAa,gBAAgB;IAC3B,OAAO,CAAC,YAAY,CAA0B;IAE9C;;;;OAIG;IACG,WAAW,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,GAAG,CAAC;IAMjD;;;;;OAKG;YACW,uBAAuB;IAWrC;;;;;OAKG;YACW,YAAY;IA8B1B;;;;;OAKG;YACW,aAAa;IA0E3B;;;;OAIG;YACW,qBAAqB;IA+BnC;;;;OAIG;YACW,eAAe;IAyC7B;;;;;OAKG;IACH,OAAO,CAAC,WAAW;IAKnB;;;;;OAKG;IACG,eAAe,CAAC,IAAI,EAAE,GAAG,EAAE,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,GAAG,CAAC;
|
|
1
|
+
{"version":3,"file":"json-preprocessor.d.ts","sourceRoot":"","sources":["../../src/lib/json-preprocessor.ts"],"names":[],"mappings":"AAIA;;GAEG;AACH,MAAM,WAAW,gBAAgB;IAC/B,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,CAAC,EAAE,QAAQ,GAAG,SAAS,CAAC;CAC7B;AAED;;;GAGG;AACH,qBAAa,gBAAgB;IAC3B,OAAO,CAAC,YAAY,CAA0B;IAE9C;;;;OAIG;IACG,WAAW,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,GAAG,CAAC;IAMjD,2CAA2C;IACrC,WAAW,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,GAAG,CAAC;IAIjD;;;;;OAKG;YACW,uBAAuB;IAWrC;;;;;OAKG;YACW,YAAY;IA8B1B;;;;;OAKG;YACW,aAAa;IA0E3B;;;;OAIG;YACW,qBAAqB;IA+BnC;;;;OAIG;YACW,eAAe;IAyC7B;;;;;OAKG;IACH,OAAO,CAAC,WAAW;IAKnB;;;;;OAKG;IACG,eAAe,CAAC,IAAI,EAAE,GAAG,EAAE,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,GAAG,CAAC;IAKhE,+CAA+C;IACzC,eAAe,CAAC,IAAI,EAAE,GAAG,EAAE,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,GAAG,CAAC;CAGjE"}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import fs from 'fs-extra';
|
|
2
2
|
import path from 'path';
|
|
3
|
-
import { METADATA_KEYWORDS,
|
|
3
|
+
import { METADATA_KEYWORDS, ExtractKeywordValue } from '../constants/metadata-keywords.js';
|
|
4
4
|
/**
|
|
5
5
|
* Preprocesses JSON files to handle @include directives
|
|
6
6
|
* Supports including external JSON files with spreading or element insertion
|
|
@@ -14,11 +14,15 @@ export class JsonPreprocessor {
|
|
|
14
14
|
* @param filePath - Path to the JSON file to process
|
|
15
15
|
* @returns The processed JSON data with all includes resolved
|
|
16
16
|
*/
|
|
17
|
-
async
|
|
17
|
+
async ProcessFile(filePath) {
|
|
18
18
|
this.visitedPaths.clear();
|
|
19
19
|
const fileContent = await fs.readJson(filePath);
|
|
20
20
|
return this.processIncludesInternal(fileContent, filePath);
|
|
21
21
|
}
|
|
22
|
+
/** @deprecated Use {@link ProcessFile}. */
|
|
23
|
+
async processFile(filePath) {
|
|
24
|
+
return this.ProcessFile(filePath);
|
|
25
|
+
}
|
|
22
26
|
/**
|
|
23
27
|
* Recursively process @include directives in JSON data
|
|
24
28
|
* @param data - The JSON data to process
|
|
@@ -139,7 +143,7 @@ export class JsonPreprocessor {
|
|
|
139
143
|
// Regular property - process recursively and handle @file references
|
|
140
144
|
if (typeof value === 'string' && value.startsWith(METADATA_KEYWORDS.FILE)) {
|
|
141
145
|
// Process @file reference
|
|
142
|
-
const filePath =
|
|
146
|
+
const filePath = ExtractKeywordValue(value);
|
|
143
147
|
const resolvedPath = this.resolvePath(filePath, currentFilePath);
|
|
144
148
|
result[key] = await this.loadFileContent(resolvedPath);
|
|
145
149
|
}
|
|
@@ -244,9 +248,13 @@ export class JsonPreprocessor {
|
|
|
244
248
|
* @param filePath - The file path (for resolving relative includes)
|
|
245
249
|
* @returns Processed data with includes resolved
|
|
246
250
|
*/
|
|
247
|
-
async
|
|
251
|
+
async ProcessJsonData(data, filePath) {
|
|
248
252
|
this.visitedPaths.clear();
|
|
249
253
|
return this.processIncludesInternal(data, filePath);
|
|
250
254
|
}
|
|
255
|
+
/** @deprecated Use {@link ProcessJsonData}. */
|
|
256
|
+
async processJsonData(data, filePath) {
|
|
257
|
+
return this.ProcessJsonData(data, filePath);
|
|
258
|
+
}
|
|
251
259
|
}
|
|
252
260
|
//# sourceMappingURL=json-preprocessor.js.map
|