@proteinjs/db-driver-spanner 1.18.0 → 1.20.0

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 (41) hide show
  1. package/CHANGELOG.md +34 -0
  2. package/dist/generated/index.js +1 -1
  3. package/dist/generated/index.js.map +1 -1
  4. package/dist/generated/test/index.js +1 -1
  5. package/dist/generated/test/index.js.map +1 -1
  6. package/dist/src/SpannerDriver.d.ts +52 -3
  7. package/dist/src/SpannerDriver.d.ts.map +1 -1
  8. package/dist/src/SpannerDriver.js +141 -33
  9. package/dist/src/SpannerDriver.js.map +1 -1
  10. package/dist/src/SpannerSchemaOperations.d.ts +9 -1
  11. package/dist/src/SpannerSchemaOperations.d.ts.map +1 -1
  12. package/dist/src/SpannerSchemaOperations.js +88 -124
  13. package/dist/src/SpannerSchemaOperations.js.map +1 -1
  14. package/dist/test/BatchedDdl.test.d.ts +2 -0
  15. package/dist/test/BatchedDdl.test.d.ts.map +1 -0
  16. package/dist/test/BatchedDdl.test.js +496 -0
  17. package/dist/test/BatchedDdl.test.js.map +1 -0
  18. package/dist/test/DmlRetrySafety.test.d.ts +2 -0
  19. package/dist/test/DmlRetrySafety.test.d.ts.map +1 -0
  20. package/dist/test/DmlRetrySafety.test.js +472 -0
  21. package/dist/test/DmlRetrySafety.test.js.map +1 -0
  22. package/dist/test/RecordIterator.test.d.ts +2 -0
  23. package/dist/test/RecordIterator.test.d.ts.map +1 -0
  24. package/dist/test/RecordIterator.test.js +14 -0
  25. package/dist/test/RecordIterator.test.js.map +1 -0
  26. package/dist/test/RunPendingMigrations.test.d.ts +2 -0
  27. package/dist/test/RunPendingMigrations.test.d.ts.map +1 -0
  28. package/dist/test/RunPendingMigrations.test.js +354 -0
  29. package/dist/test/RunPendingMigrations.test.js.map +1 -0
  30. package/dist/test/SpannerOperationDeadline.test.js +1 -1
  31. package/dist/test/SpannerOperationDeadline.test.js.map +1 -1
  32. package/generated/index.ts +1 -1
  33. package/generated/test/index.ts +1 -1
  34. package/package.json +6 -6
  35. package/src/SpannerDriver.ts +110 -18
  36. package/src/SpannerSchemaOperations.ts +69 -55
  37. package/test/BatchedDdl.test.ts +293 -0
  38. package/test/DmlRetrySafety.test.ts +305 -0
  39. package/test/RecordIterator.test.ts +16 -0
  40. package/test/RunPendingMigrations.test.ts +201 -0
  41. package/test/SpannerOperationDeadline.test.ts +1 -1
@@ -0,0 +1,354 @@
1
+ "use strict";
2
+ var __assign = (this && this.__assign) || function () {
3
+ __assign = Object.assign || function(t) {
4
+ for (var s, i = 1, n = arguments.length; i < n; i++) {
5
+ s = arguments[i];
6
+ for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
7
+ t[p] = s[p];
8
+ }
9
+ return t;
10
+ };
11
+ return __assign.apply(this, arguments);
12
+ };
13
+ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
14
+ function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
15
+ return new (P || (P = Promise))(function (resolve, reject) {
16
+ function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
17
+ function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
18
+ function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
19
+ step((generator = generator.apply(thisArg, _arguments || [])).next());
20
+ });
21
+ };
22
+ var __generator = (this && this.__generator) || function (thisArg, body) {
23
+ var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;
24
+ return g = { next: verb(0), "throw": verb(1), "return": verb(2) }, typeof Symbol === "function" && (g[Symbol.iterator] = function() { return this; }), g;
25
+ function verb(n) { return function (v) { return step([n, v]); }; }
26
+ function step(op) {
27
+ if (f) throw new TypeError("Generator is already executing.");
28
+ while (g && (g = 0, op[0] && (_ = 0)), _) try {
29
+ if (f = 1, y && (t = op[0] & 2 ? y["return"] : op[0] ? y["throw"] || ((t = y["return"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;
30
+ if (y = 0, t) op = [op[0] & 2, t.value];
31
+ switch (op[0]) {
32
+ case 0: case 1: t = op; break;
33
+ case 4: _.label++; return { value: op[1], done: false };
34
+ case 5: _.label++; y = op[1]; op = [0]; continue;
35
+ case 7: op = _.ops.pop(); _.trys.pop(); continue;
36
+ default:
37
+ if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }
38
+ if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }
39
+ if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }
40
+ if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }
41
+ if (t[2]) _.ops.pop();
42
+ _.trys.pop(); continue;
43
+ }
44
+ op = body.call(thisArg, _);
45
+ } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }
46
+ if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };
47
+ }
48
+ };
49
+ var __importDefault = (this && this.__importDefault) || function (mod) {
50
+ return (mod && mod.__esModule) ? mod : { "default": mod };
51
+ };
52
+ Object.defineProperty(exports, "__esModule", { value: true });
53
+ var db_driver_spanner_1 = require("@proteinjs/db-driver-spanner");
54
+ var db_1 = require("@proteinjs/db");
55
+ var test_1 = require("@proteinjs/db/test");
56
+ var moment_1 = __importDefault(require("moment"));
57
+ var getDropTestTable_1 = require("./util/getDropTestTable");
58
+ var SpannerEmulatorProvisioner_1 = require("./util/SpannerEmulatorProvisioner");
59
+ require("../generated/test/index");
60
+ /**
61
+ * MigrationRunner.runPendingMigrations over the real stack (plans/POST_RELEASE_QUEUE.md 27f):
62
+ * the deploy-gated series the migration Job runs before a rollout advances.
63
+ *
64
+ * Outcome pins, on the ledger itself (rows written, run effects observed — not interactions):
65
+ * - SERIES ORDER: oldest-first by the ledger row's `created`, id tiebreak — regardless of
66
+ * insert order.
67
+ * - MANUAL EXCLUSION: `manual: true` migrations never run in the series, and the
68
+ * Migrations-page flow (`runMigration`) still runs them — the flag excludes, it does not
69
+ * disable.
70
+ * - FAILURE SURFACING: the first failure stops the series; the failed id + not-attempted tail
71
+ * are reported so the Job can fail the deploy; a later series retries the failed row and
72
+ * finishes the tail.
73
+ * - HISTORY HONESTY: ledger rows whose source loader is gone (the table keeps history) are
74
+ * skipped and reported as unresolved, never crash the series.
75
+ *
76
+ * All series runs execute SESSIONLESS (no test user registered) — the deploy Job has no user
77
+ * session, and UserAuth is fail-closed: these tests passing IS the pin that the series records
78
+ * through the system db.
79
+ */
80
+ var spannerDriver = new db_driver_spanner_1.SpannerDriver({
81
+ projectId: 'proteinjs-test',
82
+ instanceName: 'proteinjs-test',
83
+ databaseName: 'test',
84
+ });
85
+ describe('MigrationRunner.runPendingMigrations (spanner)', function () {
86
+ var migrationTable = new db_1.MigrationTable();
87
+ var dropTable = (0, getDropTestTable_1.getDropTestTable)(spannerDriver);
88
+ var sourceRecordRepo = new db_1.SourceRecordRepo();
89
+ var base = (0, moment_1.default)('2026-01-01T00:00:00Z');
90
+ var runLog = [];
91
+ /** A source-backed migration whose execution lands in runLog — order is observable. */
92
+ var plantMigration = function (id, overrides) {
93
+ if (overrides === void 0) { overrides = {}; }
94
+ var migration = __assign({ id: id, description: "pending-series test migration ".concat(id), run: function () { return __awaiter(void 0, void 0, void 0, function () {
95
+ return __generator(this, function (_a) {
96
+ runLog.push(id);
97
+ return [2 /*return*/, "".concat(id, " output")];
98
+ });
99
+ }); } }, overrides);
100
+ sourceRecordRepo.loadSourceRecord(migrationTable.name, migration);
101
+ return migration;
102
+ };
103
+ /** Mirrors SourceRecordLoader's insert (system path) with an explicit ledger `created`. */
104
+ var insertLedgerRow = function (migration, createdOffsetMinutes) { return __awaiter(void 0, void 0, void 0, function () {
105
+ return __generator(this, function (_a) {
106
+ switch (_a.label) {
107
+ case 0: return [4 /*yield*/, (0, db_1.getDbAsSystem)().insert(migrationTable, __assign(__assign({}, migration), { created: (0, moment_1.default)(base).add(createdOffsetMinutes, 'minutes') }))];
108
+ case 1:
109
+ _a.sent();
110
+ return [2 /*return*/];
111
+ }
112
+ });
113
+ }); };
114
+ beforeAll(function () { return __awaiter(void 0, void 0, void 0, function () {
115
+ return __generator(this, function (_a) {
116
+ switch (_a.label) {
117
+ case 0: return [4 /*yield*/, SpannerEmulatorProvisioner_1.SpannerEmulatorProvisioner.ensureProvisioned({
118
+ projectId: 'proteinjs-test',
119
+ instanceName: 'proteinjs-test',
120
+ databaseName: 'test',
121
+ })];
122
+ case 1:
123
+ _a.sent();
124
+ return [2 /*return*/];
125
+ }
126
+ });
127
+ }); }, 60000);
128
+ beforeEach(function () { return __awaiter(void 0, void 0, void 0, function () {
129
+ return __generator(this, function (_a) {
130
+ switch (_a.label) {
131
+ case 0:
132
+ // Fresh ledger per test: runPendingMigrations sweeps the WHOLE table, so each scenario owns
133
+ // its rows outright. Planted source records from earlier tests stay in the repo harmlessly —
134
+ // discovery is ledger-driven, a source record without a row is invisible.
135
+ runLog = [];
136
+ return [4 /*yield*/, dropTable(migrationTable)];
137
+ case 1:
138
+ _a.sent();
139
+ return [4 /*yield*/, spannerDriver.getTableManager().loadTable(migrationTable)];
140
+ case 2:
141
+ _a.sent();
142
+ return [2 /*return*/];
143
+ }
144
+ });
145
+ }); }, 60000);
146
+ afterAll(function () { return __awaiter(void 0, void 0, void 0, function () {
147
+ return __generator(this, function (_a) {
148
+ switch (_a.label) {
149
+ case 0: return [4 /*yield*/, dropTable(migrationTable)];
150
+ case 1:
151
+ _a.sent();
152
+ SpannerEmulatorProvisioner_1.SpannerEmulatorProvisioner.release();
153
+ return [2 /*return*/];
154
+ }
155
+ });
156
+ }); }, 30000);
157
+ test('runs the series oldest-first by ledger created, id tiebreak — not insert order', function () { return __awaiter(void 0, void 0, void 0, function () {
158
+ var newest, oldest, middle, tieB, tieA, summary, _i, _a, id, row;
159
+ return __generator(this, function (_b) {
160
+ switch (_b.label) {
161
+ case 0:
162
+ newest = plantMigration('series-c-newest');
163
+ oldest = plantMigration('series-a-oldest');
164
+ middle = plantMigration('series-b-middle');
165
+ tieB = plantMigration('tie-b');
166
+ tieA = plantMigration('tie-a');
167
+ // Insert order deliberately scrambled vs ledger order; the tie pair shares one created.
168
+ return [4 /*yield*/, insertLedgerRow(newest, 2)];
169
+ case 1:
170
+ // Insert order deliberately scrambled vs ledger order; the tie pair shares one created.
171
+ _b.sent();
172
+ return [4 /*yield*/, insertLedgerRow(tieB, 3)];
173
+ case 2:
174
+ _b.sent();
175
+ return [4 /*yield*/, insertLedgerRow(oldest, 0)];
176
+ case 3:
177
+ _b.sent();
178
+ return [4 /*yield*/, insertLedgerRow(tieA, 3)];
179
+ case 4:
180
+ _b.sent();
181
+ return [4 /*yield*/, insertLedgerRow(middle, 1)];
182
+ case 5:
183
+ _b.sent();
184
+ return [4 /*yield*/, new db_1.MigrationRunner().runPendingMigrations()];
185
+ case 6:
186
+ summary = _b.sent();
187
+ expect(runLog).toEqual(['series-a-oldest', 'series-b-middle', 'series-c-newest', 'tie-a', 'tie-b']);
188
+ expect(summary.applied).toEqual(runLog);
189
+ expect(summary.failed).toBeUndefined();
190
+ expect(summary.notAttempted).toEqual([]);
191
+ _i = 0, _a = summary.applied;
192
+ _b.label = 7;
193
+ case 7:
194
+ if (!(_i < _a.length)) return [3 /*break*/, 10];
195
+ id = _a[_i];
196
+ return [4 /*yield*/, (0, db_1.getDbAsSystem)().get(migrationTable, { id: id })];
197
+ case 8:
198
+ row = _b.sent();
199
+ expect(row.status).toBe('success');
200
+ expect(row.output).toBe("".concat(id, " output"));
201
+ _b.label = 9;
202
+ case 9:
203
+ _i++;
204
+ return [3 /*break*/, 7];
205
+ case 10: return [2 /*return*/];
206
+ }
207
+ });
208
+ }); }, 60000);
209
+ test('a manual migration is excluded from the series but keeps the Migrations-page flow', function () { return __awaiter(void 0, void 0, void 0, function () {
210
+ var manual, automated, summary, manualRow, ranManualRow;
211
+ return __generator(this, function (_a) {
212
+ switch (_a.label) {
213
+ case 0:
214
+ manual = plantMigration('manual-backfill', { manual: true });
215
+ automated = plantMigration('automated-after-manual');
216
+ return [4 /*yield*/, insertLedgerRow(manual, 0)];
217
+ case 1:
218
+ _a.sent();
219
+ return [4 /*yield*/, insertLedgerRow(automated, 1)];
220
+ case 2:
221
+ _a.sent();
222
+ return [4 /*yield*/, new db_1.MigrationRunner().runPendingMigrations()];
223
+ case 3:
224
+ summary = _a.sent();
225
+ expect(runLog).toEqual(['automated-after-manual']);
226
+ expect(summary.skippedManual).toEqual(['manual-backfill']);
227
+ expect(summary.applied).toEqual(['automated-after-manual']);
228
+ return [4 /*yield*/, (0, db_1.getDbAsSystem)().get(migrationTable, { id: 'manual-backfill' })];
229
+ case 4:
230
+ manualRow = _a.sent();
231
+ expect(manualRow.status).toBe('proposed');
232
+ // The page flow still runs it: the flag excludes from the auto-series, it does not disable.
233
+ (0, test_1.registerTestUser)();
234
+ _a.label = 5;
235
+ case 5:
236
+ _a.trys.push([5, , 7, 8]);
237
+ return [4 /*yield*/, new db_1.MigrationRunner().runMigration('manual-backfill')];
238
+ case 6:
239
+ _a.sent();
240
+ return [3 /*break*/, 8];
241
+ case 7:
242
+ (0, test_1.clearTestUser)();
243
+ return [7 /*endfinally*/];
244
+ case 8:
245
+ expect(runLog).toEqual(['automated-after-manual', 'manual-backfill']);
246
+ return [4 /*yield*/, (0, db_1.getDbAsSystem)().get(migrationTable, { id: 'manual-backfill' })];
247
+ case 9:
248
+ ranManualRow = _a.sent();
249
+ expect(ranManualRow.status).toBe('success');
250
+ return [2 /*return*/];
251
+ }
252
+ });
253
+ }); }, 60000);
254
+ test('the first failure stops the series; the next series retries it and finishes the tail', function () { return __awaiter(void 0, void 0, void 0, function () {
255
+ var bFixed, a, b, c, firstSeries, _a, _b, secondSeries, _c;
256
+ return __generator(this, function (_d) {
257
+ switch (_d.label) {
258
+ case 0:
259
+ bFixed = false;
260
+ a = plantMigration('fail-a-ok');
261
+ b = plantMigration('fail-b-boom', {
262
+ run: function () { return __awaiter(void 0, void 0, void 0, function () {
263
+ return __generator(this, function (_a) {
264
+ if (!bFixed) {
265
+ throw new Error('b blew up mid-run');
266
+ }
267
+ runLog.push('fail-b-boom');
268
+ return [2 /*return*/, 'b fixed output'];
269
+ });
270
+ }); },
271
+ });
272
+ c = plantMigration('fail-c-after');
273
+ return [4 /*yield*/, insertLedgerRow(a, 0)];
274
+ case 1:
275
+ _d.sent();
276
+ return [4 /*yield*/, insertLedgerRow(b, 1)];
277
+ case 2:
278
+ _d.sent();
279
+ return [4 /*yield*/, insertLedgerRow(c, 2)];
280
+ case 3:
281
+ _d.sent();
282
+ return [4 /*yield*/, new db_1.MigrationRunner().runPendingMigrations()];
283
+ case 4:
284
+ firstSeries = _d.sent();
285
+ // a ran, b failed, c never started — the deploy gate's failure surface.
286
+ expect(runLog).toEqual(['fail-a-ok']);
287
+ expect(firstSeries.applied).toEqual(['fail-a-ok']);
288
+ expect(firstSeries.failed).toEqual({
289
+ id: 'fail-b-boom',
290
+ description: 'pending-series test migration fail-b-boom',
291
+ failureMessage: 'b blew up mid-run',
292
+ });
293
+ expect(firstSeries.notAttempted).toEqual(['fail-c-after']);
294
+ _a = expect;
295
+ return [4 /*yield*/, (0, db_1.getDbAsSystem)().get(migrationTable, { id: 'fail-b-boom' })];
296
+ case 5:
297
+ _a.apply(void 0, [(_d.sent()).status]).toBe('failure');
298
+ _b = expect;
299
+ return [4 /*yield*/, (0, db_1.getDbAsSystem)().get(migrationTable, { id: 'fail-c-after' })];
300
+ case 6:
301
+ _b.apply(void 0, [(_d.sent()).status]).toBe('proposed');
302
+ // The "fixed migration ships, deploy re-runs" path: b retried, c finally runs, a skipped.
303
+ bFixed = true;
304
+ return [4 /*yield*/, new db_1.MigrationRunner().runPendingMigrations()];
305
+ case 7:
306
+ secondSeries = _d.sent();
307
+ expect(runLog).toEqual(['fail-a-ok', 'fail-b-boom', 'fail-c-after']);
308
+ expect(secondSeries.applied).toEqual(['fail-b-boom', 'fail-c-after']);
309
+ expect(secondSeries.alreadyApplied).toEqual(['fail-a-ok']);
310
+ expect(secondSeries.failed).toBeUndefined();
311
+ _c = expect;
312
+ return [4 /*yield*/, (0, db_1.getDbAsSystem)().get(migrationTable, { id: 'fail-c-after' })];
313
+ case 8:
314
+ _c.apply(void 0, [(_d.sent()).status]).toBe('success');
315
+ return [2 /*return*/];
316
+ }
317
+ });
318
+ }); }, 60000);
319
+ test('ledger rows without a source record are history — skipped, reported, untouched', function () { return __awaiter(void 0, void 0, void 0, function () {
320
+ var live, summary, _a;
321
+ return __generator(this, function (_b) {
322
+ switch (_b.label) {
323
+ case 0:
324
+ live = plantMigration('live-beside-history');
325
+ return [4 /*yield*/, insertLedgerRow(live, 1)];
326
+ case 1:
327
+ _b.sent();
328
+ // A row whose loader was deleted after it ran in some past release
329
+ // (doNotDeleteSourceRecordsFromDb keeps it in the ledger forever).
330
+ return [4 /*yield*/, (0, db_1.getDbAsSystem)().insert(migrationTable, {
331
+ id: 'ghost-history',
332
+ description: 'loader deleted after an old release ran it',
333
+ created: (0, moment_1.default)(base),
334
+ })];
335
+ case 2:
336
+ // A row whose loader was deleted after it ran in some past release
337
+ // (doNotDeleteSourceRecordsFromDb keeps it in the ledger forever).
338
+ _b.sent();
339
+ return [4 /*yield*/, new db_1.MigrationRunner().runPendingMigrations()];
340
+ case 3:
341
+ summary = _b.sent();
342
+ expect(summary.unresolved).toEqual(['ghost-history']);
343
+ expect(summary.applied).toEqual(['live-beside-history']);
344
+ expect(summary.failed).toBeUndefined();
345
+ _a = expect;
346
+ return [4 /*yield*/, (0, db_1.getDbAsSystem)().get(migrationTable, { id: 'ghost-history' })];
347
+ case 4:
348
+ _a.apply(void 0, [(_b.sent()).status]).toBe('proposed');
349
+ return [2 /*return*/];
350
+ }
351
+ });
352
+ }); }, 60000);
353
+ });
354
+ //# sourceMappingURL=RunPendingMigrations.test.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"RunPendingMigrations.test.js","sourceRoot":"","sources":["../../test/RunPendingMigrations.test.ts"],"names":[],"mappings":"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"}
@@ -123,7 +123,7 @@ describe('Spanner op deadlines', function () {
123
123
  case 0:
124
124
  released = [];
125
125
  transaction = {
126
- runUpdate: jest.fn(function () { return hang(); }),
126
+ batchUpdate: jest.fn(function () { return hang(); }),
127
127
  rollback: jest.fn(function () { return hang(); }),
128
128
  commit: jest.fn(function () { return hang(); }),
129
129
  };
@@ -1 +1 @@
1
- {"version":3,"file":"SpannerOperationDeadline.test.js","sourceRoot":"","sources":["../../test/SpannerOperationDeadline.test.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,kEAA6D;AAkB7D,IAAM,OAAO,GAAG,iCAAyC,CAAC;AAE1D,IAAM,WAAW,GAAG;IAClB,eAAe,EAAE,cAAM,OAAA,SAAS,EAAT,CAAS;IAChC,SAAS,EAAE,cAAM,OAAA,CAAC,EAAE,IAAI,EAAE,CAAC,EAAE,SAAS,EAAE,CAAC,EAAE,QAAQ,EAAE,CAAC,EAAE,YAAY,EAAE,CAAC,EAAE,CAAC,EAAzD,CAAyD;IAC1E,WAAW,EAAE,cAAM,OAAA,SAAS,EAAT,CAAS;IAC5B,IAAI,EAAE,cAAM,OAAA,SAAS,EAAT,CAAS;CACtB,CAAC;AAEF,IAAM,IAAI,GAAG,cAAM,OAAA,IAAI,OAAO,CAAQ,cAAM,OAAA,SAAS,EAAT,CAAS,CAAC,EAAnC,CAAmC,CAAC;AAEvD,IAAM,iBAAiB,GAAG,CAAC,cAAM,OAAA,CAAC,EAAE,GAAG,EAAE,oBAAoB,EAAE,WAAW,EAAE,EAAE,MAAM,EAAE,EAAE,EAAE,EAAE,CAAC,EAA5D,CAA4D,CAAQ,CAAC;AAEtG,IAAM,OAAO,GAAG,UAAO,SAAwB,EAAE,SAAiB,EAAE,KAAa;;;;;gBACzE,QAAQ,GAAG,IAAI,CAAC,GAAG,EAAE,GAAG,SAAS,CAAC;;;qBACjC,CAAA,IAAI,CAAC,GAAG,EAAE,GAAG,QAAQ,CAAA;gBAC1B,IAAI,SAAS,EAAE,EAAE;oBACf,sBAAO;iBACR;gBACD,qBAAM,IAAI,OAAO,CAAC,UAAC,OAAO,IAAK,OAAA,UAAU,CAAC,OAAO,EAAE,EAAE,CAAC,EAAvB,CAAuB,CAAC,EAAA;;gBAAvD,SAAuD,CAAC;;oBAE1D,MAAM,IAAI,KAAK,CAAC,iCAA0B,KAAK,CAAE,CAAC,CAAC;;;KACpD,CAAC;AAEF,IAAM,UAAU,GAAG,UAAC,MAA8E,EAAE,EAAW;IAC7G,OAAO,CAAC,UAAU,GAAG,EAAE,CAAC;IACxB,OAAO,CAAC,gBAAgB,GAAG,WAAW,CAAC;IACvC,IAAM,MAAM,GAAG,IAAI,iCAAa,YAC9B,SAAS,EAAE,MAAM,EACjB,YAAY,EAAE,MAAM,EACpB,YAAY,EAAE,MAAM,IACjB,MAAM,EACT,CAAC;IACH,8EAA8E;IAC9E,IAAI,CAAC,KAAK,CAAE,MAAc,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC,kBAAkB,CAAC,cAAM,OAAA,SAAS,EAAT,CAAS,CAAC,CAAC;IAChF,IAAI,CAAC,KAAK,CAAE,MAAc,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,kBAAkB,CAAC,cAAM,OAAA,SAAS,EAAT,CAAS,CAAC,CAAC;IAC/E,OAAO,MAAM,CAAC;AAChB,CAAC,CAAC;AAEF,QAAQ,CAAC,sBAAsB,EAAE;IAC/B,UAAU,CAAC;QACT,OAAO,CAAC,iBAAiB,GAAG,CAAC,CAAC;QAC9B,OAAO,CAAC,6BAA6B,GAAG,CAAC,CAAC;IAC5C,CAAC,CAAC,CAAC;IAEH,SAAS,CAAC;QACR,OAAO,CAAC,OAAO,GAAG,SAAS,CAAC;QAC5B,OAAO,CAAC,gBAAgB,GAAG,SAAS,CAAC;QACrC,OAAO,CAAC,UAAU,GAAG,SAAS,CAAC;QAC/B,OAAO,CAAC,gBAAgB,GAAG,SAAS,CAAC;QACrC,OAAO,CAAC,6BAA6B,GAAG,CAAC,CAAC;QAC1C,IAAI,CAAC,eAAe,EAAE,CAAC;IACzB,CAAC,CAAC,CAAC;IAEH,IAAI,CAAC,mGAAmG,EAAE;;;;;oBAClG,GAAG,GAAG,IAAI,CAAC,EAAE,CAAC,UAAC,QAAa,IAAK,OAAA,IAAI,EAAE,EAAN,CAAM,CAAC,CAAC;oBACzC,MAAM,GAAG,UAAU,CAAC,EAAE,mBAAmB,EAAE,GAAG,EAAE,6BAA6B,EAAE,EAAE,EAAE,EAAE,EAAE,GAAG,KAAA,EAAE,CAAC,CAAC;oBAEpG,qBAAM,MAAM,CAAC,MAAM,CAAC,QAAQ,CAAC,iBAAiB,CAAC,CAAC,CAAC,OAAO,CAAC,OAAO,CAAC,+BAA+B,CAAC,EAAA;;oBAAjG,SAAiG,CAAC;oBAElG,yFAAyF;oBACzF,oFAAoF;oBACpF,MAAM,CAAC,GAAG,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,aAAa,CAAC,EAAE,UAAU,EAAE,EAAE,OAAO,EAAE,GAAG,EAAE,EAAE,CAAC,CAAC;;;;SAC9E,EAAE,IAAI,CAAC,CAAC;IAET,IAAI,CAAC,4FAA4F,EAAE;;;;;oBAI3F,QAAQ,GAAa,EAAE,CAAC;oBACxB,WAAW,GAAG;wBAClB,SAAS,EAAE,IAAI,CAAC,EAAE,CAAC,cAAM,OAAA,IAAI,EAAE,EAAN,CAAM,CAAC;wBAChC,QAAQ,EAAE,IAAI,CAAC,EAAE,CAAC,cAAM,OAAA,IAAI,EAAE,EAAN,CAAM,CAAC;wBAC/B,MAAM,EAAE,IAAI,CAAC,EAAE,CAAC,cAAM,OAAA,IAAI,EAAE,EAAN,CAAM,CAAC;qBAC9B,CAAC;oBACI,EAAE,GAAG;wBACT,mBAAmB,EAAE,UAAO,EAA8C;;;;;wCAE/D,qBAAM,EAAE,CAAC,WAAW,CAAC,EAAA;4CAA5B,sBAAO,SAAqB,EAAC;;wCAE7B,QAAQ,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;;;;;6BAE5B;qBACF,CAAC;oBACI,MAAM,GAAG,UAAU,CAAC,EAAE,mBAAmB,EAAE,GAAG,EAAE,6BAA6B,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC,CAAC;oBAE/F,qBAAM,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,iBAAiB,CAAC,CAAC,CAAC,OAAO,CAAC,OAAO,CAAC,UAAU,CAAC,EAAA;;oBAA1E,SAA0E,CAAC;oBAE3E,yFAAyF;oBACzF,yFAAyF;oBACzF,qBAAM,OAAO,CAAC,cAAM,OAAA,QAAQ,CAAC,MAAM,KAAK,CAAC,EAArB,CAAqB,EAAE,IAAI,EAAE,8BAA8B,CAAC,EAAA;;oBAFhF,yFAAyF;oBACzF,yFAAyF;oBACzF,SAAgF,CAAC;oBACjF,MAAM,CAAC,WAAW,CAAC,QAAQ,CAAC,CAAC,gBAAgB,EAAE,CAAC;;;;SACjD,EAAE,IAAI,CAAC,CAAC;IAET,IAAI,CAAC,0GAA0G,EAAE;;;;;oBAC3G,OAAO,GAAG,IAAI,CAAC;oBACb,EAAE,GAAG,EAAE,GAAG,EAAE,IAAI,CAAC,EAAE,CAAC,cAAM,OAAA,CAAC,OAAO,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAA1C,CAA0C,CAAC,EAAE,CAAC;oBACxE,MAAM,GAAG,UAAU,CAAC,EAAE,mBAAmB,EAAE,GAAG,EAAE,6BAA6B,EAAE,CAAC,EAAE,EAAE,EAAE,CAAC,CAAC;oBACxF,UAAU,GAAG,IAAI,CAAC,KAAK,CAAC,MAAa,EAAE,eAAe,CAAC,CAAC,kBAAkB,CAAC;wBAC/E,OAAO,CAAC,iBAAiB,IAAI,CAAC,CAAC;oBACjC,CAAC,CAAC,CAAC;oBACG,SAAS,GAAG,cAAM,OAAA,MAAM,CAAC,MAAM,CAAC,QAAQ,CAAC,iBAAiB,CAAC,CAAC,CAAC,OAAO,CAAC,OAAO,CAAC,UAAU,CAAC,EAAtE,CAAsE,CAAC;oBAE/F,qBAAM,SAAS,EAAE,EAAA;;oBAAjB,SAAiB,CAAC;oBAClB,qBAAM,SAAS,EAAE,EAAA;;oBAAjB,SAAiB,CAAC;oBAClB,MAAM,CAAC,UAAU,CAAC,CAAC,GAAG,CAAC,gBAAgB,EAAE,CAAC;oBAE1C,4CAA4C;oBAC5C,OAAO,GAAG,KAAK,CAAC;oBAChB,qBAAM,MAAM,CAAC,QAAQ,CAAC,iBAAiB,CAAC,EAAA;;oBAAxC,SAAwC,CAAC;oBACzC,MAAM,CAAC,OAAO,CAAC,6BAA6B,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;oBAEtD,OAAO,GAAG,IAAI,CAAC;oBACf,qBAAM,SAAS,EAAE,EAAA;;oBAAjB,SAAiB,CAAC;oBAClB,qBAAM,SAAS,EAAE,EAAA;;oBAAjB,SAAiB,CAAC;oBAClB,MAAM,CAAC,UAAU,CAAC,CAAC,GAAG,CAAC,gBAAgB,EAAE,CAAC,CAAC,4CAA4C;oBAEvF,qBAAM,SAAS,EAAE,EAAA;;oBAAjB,SAAiB,CAAC;oBAClB,MAAM,CAAC,UAAU,CAAC,CAAC,qBAAqB,CAAC,CAAC,CAAC,CAAC,CAAC,wCAAwC;oBACrF,MAAM,CAAC,OAAO,CAAC,6BAA6B,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;;;;SACvD,EAAE,KAAK,CAAC,CAAC;IAEV,IAAI,CAAC,mGAAmG,EAAE;;;;;oBAClG,EAAE,GAAG,EAAE,GAAG,EAAE,IAAI,CAAC,EAAE,CAAC,cAAM,OAAA,IAAI,EAAE,EAAN,CAAM,CAAC,EAAE,CAAC;oBACpC,MAAM,GAAG,UAAU,CAAC,EAAE,mBAAmB,EAAE,GAAG,EAAE,6BAA6B,EAAE,CAAC,EAAE,EAAE,EAAE,CAAC,CAAC;oBACxF,UAAU,GAAG,IAAI,CAAC,KAAK,CAAC,MAAa,EAAE,eAAe,CAAC,CAAC,kBAAkB,CAAC;wBAC/E,OAAO,CAAC,iBAAiB,IAAI,CAAC,CAAC;oBACjC,CAAC,CAAC,CAAC;oBAEG,OAAO,GAAG,MAAM,CAAC,MAAM,CAAC,QAAQ,CAAC,iBAAiB,CAAC,CAAC,CAAC,OAAO,CAAC,OAAO,CAAC,UAAU,CAAC,CAAC;oBACvF,6FAA6F;oBAC7F,OAAO,CAAC,iBAAiB,IAAI,CAAC,CAAC;oBAC/B,qBAAM,OAAO,EAAA;;oBAAb,SAAa,CAAC;oBAEd,MAAM,CAAC,UAAU,CAAC,CAAC,GAAG,CAAC,gBAAgB,EAAE,CAAC;oBAC1C,MAAM,CAAC,OAAO,CAAC,6BAA6B,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;;;;SACvD,EAAE,IAAI,CAAC,CAAC;AACX,CAAC,CAAC,CAAC"}
1
+ {"version":3,"file":"SpannerOperationDeadline.test.js","sourceRoot":"","sources":["../../test/SpannerOperationDeadline.test.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,kEAA6D;AAkB7D,IAAM,OAAO,GAAG,iCAAyC,CAAC;AAE1D,IAAM,WAAW,GAAG;IAClB,eAAe,EAAE,cAAM,OAAA,SAAS,EAAT,CAAS;IAChC,SAAS,EAAE,cAAM,OAAA,CAAC,EAAE,IAAI,EAAE,CAAC,EAAE,SAAS,EAAE,CAAC,EAAE,QAAQ,EAAE,CAAC,EAAE,YAAY,EAAE,CAAC,EAAE,CAAC,EAAzD,CAAyD;IAC1E,WAAW,EAAE,cAAM,OAAA,SAAS,EAAT,CAAS;IAC5B,IAAI,EAAE,cAAM,OAAA,SAAS,EAAT,CAAS;CACtB,CAAC;AAEF,IAAM,IAAI,GAAG,cAAM,OAAA,IAAI,OAAO,CAAQ,cAAM,OAAA,SAAS,EAAT,CAAS,CAAC,EAAnC,CAAmC,CAAC;AAEvD,IAAM,iBAAiB,GAAG,CAAC,cAAM,OAAA,CAAC,EAAE,GAAG,EAAE,oBAAoB,EAAE,WAAW,EAAE,EAAE,MAAM,EAAE,EAAE,EAAE,EAAE,CAAC,EAA5D,CAA4D,CAAQ,CAAC;AAEtG,IAAM,OAAO,GAAG,UAAO,SAAwB,EAAE,SAAiB,EAAE,KAAa;;;;;gBACzE,QAAQ,GAAG,IAAI,CAAC,GAAG,EAAE,GAAG,SAAS,CAAC;;;qBACjC,CAAA,IAAI,CAAC,GAAG,EAAE,GAAG,QAAQ,CAAA;gBAC1B,IAAI,SAAS,EAAE,EAAE;oBACf,sBAAO;iBACR;gBACD,qBAAM,IAAI,OAAO,CAAC,UAAC,OAAO,IAAK,OAAA,UAAU,CAAC,OAAO,EAAE,EAAE,CAAC,EAAvB,CAAuB,CAAC,EAAA;;gBAAvD,SAAuD,CAAC;;oBAE1D,MAAM,IAAI,KAAK,CAAC,iCAA0B,KAAK,CAAE,CAAC,CAAC;;;KACpD,CAAC;AAEF,IAAM,UAAU,GAAG,UAAC,MAA8E,EAAE,EAAW;IAC7G,OAAO,CAAC,UAAU,GAAG,EAAE,CAAC;IACxB,OAAO,CAAC,gBAAgB,GAAG,WAAW,CAAC;IACvC,IAAM,MAAM,GAAG,IAAI,iCAAa,YAC9B,SAAS,EAAE,MAAM,EACjB,YAAY,EAAE,MAAM,EACpB,YAAY,EAAE,MAAM,IACjB,MAAM,EACT,CAAC;IACH,8EAA8E;IAC9E,IAAI,CAAC,KAAK,CAAE,MAAc,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC,kBAAkB,CAAC,cAAM,OAAA,SAAS,EAAT,CAAS,CAAC,CAAC;IAChF,IAAI,CAAC,KAAK,CAAE,MAAc,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,kBAAkB,CAAC,cAAM,OAAA,SAAS,EAAT,CAAS,CAAC,CAAC;IAC/E,OAAO,MAAM,CAAC;AAChB,CAAC,CAAC;AAEF,QAAQ,CAAC,sBAAsB,EAAE;IAC/B,UAAU,CAAC;QACT,OAAO,CAAC,iBAAiB,GAAG,CAAC,CAAC;QAC9B,OAAO,CAAC,6BAA6B,GAAG,CAAC,CAAC;IAC5C,CAAC,CAAC,CAAC;IAEH,SAAS,CAAC;QACR,OAAO,CAAC,OAAO,GAAG,SAAS,CAAC;QAC5B,OAAO,CAAC,gBAAgB,GAAG,SAAS,CAAC;QACrC,OAAO,CAAC,UAAU,GAAG,SAAS,CAAC;QAC/B,OAAO,CAAC,gBAAgB,GAAG,SAAS,CAAC;QACrC,OAAO,CAAC,6BAA6B,GAAG,CAAC,CAAC;QAC1C,IAAI,CAAC,eAAe,EAAE,CAAC;IACzB,CAAC,CAAC,CAAC;IAEH,IAAI,CAAC,mGAAmG,EAAE;;;;;oBAClG,GAAG,GAAG,IAAI,CAAC,EAAE,CAAC,UAAC,QAAa,IAAK,OAAA,IAAI,EAAE,EAAN,CAAM,CAAC,CAAC;oBACzC,MAAM,GAAG,UAAU,CAAC,EAAE,mBAAmB,EAAE,GAAG,EAAE,6BAA6B,EAAE,EAAE,EAAE,EAAE,EAAE,GAAG,KAAA,EAAE,CAAC,CAAC;oBAEpG,qBAAM,MAAM,CAAC,MAAM,CAAC,QAAQ,CAAC,iBAAiB,CAAC,CAAC,CAAC,OAAO,CAAC,OAAO,CAAC,+BAA+B,CAAC,EAAA;;oBAAjG,SAAiG,CAAC;oBAElG,yFAAyF;oBACzF,oFAAoF;oBACpF,MAAM,CAAC,GAAG,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,aAAa,CAAC,EAAE,UAAU,EAAE,EAAE,OAAO,EAAE,GAAG,EAAE,EAAE,CAAC,CAAC;;;;SAC9E,EAAE,IAAI,CAAC,CAAC;IAET,IAAI,CAAC,4FAA4F,EAAE;;;;;oBAI3F,QAAQ,GAAa,EAAE,CAAC;oBACxB,WAAW,GAAG;wBAClB,WAAW,EAAE,IAAI,CAAC,EAAE,CAAC,cAAM,OAAA,IAAI,EAAE,EAAN,CAAM,CAAC;wBAClC,QAAQ,EAAE,IAAI,CAAC,EAAE,CAAC,cAAM,OAAA,IAAI,EAAE,EAAN,CAAM,CAAC;wBAC/B,MAAM,EAAE,IAAI,CAAC,EAAE,CAAC,cAAM,OAAA,IAAI,EAAE,EAAN,CAAM,CAAC;qBAC9B,CAAC;oBACI,EAAE,GAAG;wBACT,mBAAmB,EAAE,UAAO,EAA8C;;;;;wCAE/D,qBAAM,EAAE,CAAC,WAAW,CAAC,EAAA;4CAA5B,sBAAO,SAAqB,EAAC;;wCAE7B,QAAQ,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;;;;;6BAE5B;qBACF,CAAC;oBACI,MAAM,GAAG,UAAU,CAAC,EAAE,mBAAmB,EAAE,GAAG,EAAE,6BAA6B,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC,CAAC;oBAE/F,qBAAM,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,iBAAiB,CAAC,CAAC,CAAC,OAAO,CAAC,OAAO,CAAC,UAAU,CAAC,EAAA;;oBAA1E,SAA0E,CAAC;oBAE3E,yFAAyF;oBACzF,yFAAyF;oBACzF,qBAAM,OAAO,CAAC,cAAM,OAAA,QAAQ,CAAC,MAAM,KAAK,CAAC,EAArB,CAAqB,EAAE,IAAI,EAAE,8BAA8B,CAAC,EAAA;;oBAFhF,yFAAyF;oBACzF,yFAAyF;oBACzF,SAAgF,CAAC;oBACjF,MAAM,CAAC,WAAW,CAAC,QAAQ,CAAC,CAAC,gBAAgB,EAAE,CAAC;;;;SACjD,EAAE,IAAI,CAAC,CAAC;IAET,IAAI,CAAC,0GAA0G,EAAE;;;;;oBAC3G,OAAO,GAAG,IAAI,CAAC;oBACb,EAAE,GAAG,EAAE,GAAG,EAAE,IAAI,CAAC,EAAE,CAAC,cAAM,OAAA,CAAC,OAAO,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAA1C,CAA0C,CAAC,EAAE,CAAC;oBACxE,MAAM,GAAG,UAAU,CAAC,EAAE,mBAAmB,EAAE,GAAG,EAAE,6BAA6B,EAAE,CAAC,EAAE,EAAE,EAAE,CAAC,CAAC;oBACxF,UAAU,GAAG,IAAI,CAAC,KAAK,CAAC,MAAa,EAAE,eAAe,CAAC,CAAC,kBAAkB,CAAC;wBAC/E,OAAO,CAAC,iBAAiB,IAAI,CAAC,CAAC;oBACjC,CAAC,CAAC,CAAC;oBACG,SAAS,GAAG,cAAM,OAAA,MAAM,CAAC,MAAM,CAAC,QAAQ,CAAC,iBAAiB,CAAC,CAAC,CAAC,OAAO,CAAC,OAAO,CAAC,UAAU,CAAC,EAAtE,CAAsE,CAAC;oBAE/F,qBAAM,SAAS,EAAE,EAAA;;oBAAjB,SAAiB,CAAC;oBAClB,qBAAM,SAAS,EAAE,EAAA;;oBAAjB,SAAiB,CAAC;oBAClB,MAAM,CAAC,UAAU,CAAC,CAAC,GAAG,CAAC,gBAAgB,EAAE,CAAC;oBAE1C,4CAA4C;oBAC5C,OAAO,GAAG,KAAK,CAAC;oBAChB,qBAAM,MAAM,CAAC,QAAQ,CAAC,iBAAiB,CAAC,EAAA;;oBAAxC,SAAwC,CAAC;oBACzC,MAAM,CAAC,OAAO,CAAC,6BAA6B,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;oBAEtD,OAAO,GAAG,IAAI,CAAC;oBACf,qBAAM,SAAS,EAAE,EAAA;;oBAAjB,SAAiB,CAAC;oBAClB,qBAAM,SAAS,EAAE,EAAA;;oBAAjB,SAAiB,CAAC;oBAClB,MAAM,CAAC,UAAU,CAAC,CAAC,GAAG,CAAC,gBAAgB,EAAE,CAAC,CAAC,4CAA4C;oBAEvF,qBAAM,SAAS,EAAE,EAAA;;oBAAjB,SAAiB,CAAC;oBAClB,MAAM,CAAC,UAAU,CAAC,CAAC,qBAAqB,CAAC,CAAC,CAAC,CAAC,CAAC,wCAAwC;oBACrF,MAAM,CAAC,OAAO,CAAC,6BAA6B,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;;;;SACvD,EAAE,KAAK,CAAC,CAAC;IAEV,IAAI,CAAC,mGAAmG,EAAE;;;;;oBAClG,EAAE,GAAG,EAAE,GAAG,EAAE,IAAI,CAAC,EAAE,CAAC,cAAM,OAAA,IAAI,EAAE,EAAN,CAAM,CAAC,EAAE,CAAC;oBACpC,MAAM,GAAG,UAAU,CAAC,EAAE,mBAAmB,EAAE,GAAG,EAAE,6BAA6B,EAAE,CAAC,EAAE,EAAE,EAAE,CAAC,CAAC;oBACxF,UAAU,GAAG,IAAI,CAAC,KAAK,CAAC,MAAa,EAAE,eAAe,CAAC,CAAC,kBAAkB,CAAC;wBAC/E,OAAO,CAAC,iBAAiB,IAAI,CAAC,CAAC;oBACjC,CAAC,CAAC,CAAC;oBAEG,OAAO,GAAG,MAAM,CAAC,MAAM,CAAC,QAAQ,CAAC,iBAAiB,CAAC,CAAC,CAAC,OAAO,CAAC,OAAO,CAAC,UAAU,CAAC,CAAC;oBACvF,6FAA6F;oBAC7F,OAAO,CAAC,iBAAiB,IAAI,CAAC,CAAC;oBAC/B,qBAAM,OAAO,EAAA;;oBAAb,SAAa,CAAC;oBAEd,MAAM,CAAC,UAAU,CAAC,CAAC,GAAG,CAAC,gBAAgB,EAAE,CAAC;oBAC1C,MAAM,CAAC,OAAO,CAAC,6BAA6B,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;;;;SACvD,EAAE,IAAI,CAAC,CAAC;AACX,CAAC,CAAC,CAAC"}
@@ -12,7 +12,7 @@ import '@proteinjs/util';
12
12
  /** Generate Source Graph */
13
13
 
14
14
  const sourceGraph =
15
- '{"options":{"directed":true,"multigraph":false,"compound":false},"nodes":[{"v":"@proteinjs/db-driver-spanner/SpannerDriver","value":{"packageName":"@proteinjs/db-driver-spanner","name":"SpannerDriver","filePath":"/home/runner/work/db/db/packages/drivers/spanner/src/SpannerDriver.ts","qualifiedName":"@proteinjs/db-driver-spanner/SpannerDriver","isAbstract":false,"isStatic":false,"visibility":"public","properties":[{"name":"SPANNER","type":{"packageName":"@google-cloud/spanner","name":"Spanner","filePath":null,"qualifiedName":"@google-cloud/spanner/Spanner","typeParameters":null,"directParents":null},"isOptional":true,"isAbstract":false,"isStatic":true,"visibility":"private"},{"name":"SPANNER_INSTANCE","type":{"packageName":"@google-cloud/spanner","name":"Instance","filePath":null,"qualifiedName":"@google-cloud/spanner/Instance","typeParameters":null,"directParents":null},"isOptional":true,"isAbstract":false,"isStatic":true,"visibility":"private"},{"name":"SPANNER_DB","type":{"packageName":"@google-cloud/spanner","name":"Database","filePath":null,"qualifiedName":"@google-cloud/spanner/Database","typeParameters":null,"directParents":null},"isOptional":true,"isAbstract":false,"isStatic":true,"visibility":"private"},{"name":"LIVENESS_MONITOR","type":{"packageName":"@proteinjs/db-driver-spanner","name":"SpannerLivenessMonitor","filePath":null,"qualifiedName":"@proteinjs/db-driver-spanner/SpannerLivenessMonitor","typeParameters":null,"directParents":null},"isOptional":false,"isAbstract":false,"isStatic":true,"visibility":"private"},{"name":"CLIENT_GENERATION","type":null,"isOptional":false,"isAbstract":false,"isStatic":true,"visibility":"private"},{"name":"CONSECUTIVE_DEADLINE_FAILURES","type":null,"isOptional":false,"isAbstract":false,"isStatic":true,"visibility":"private"},{"name":"logger","type":null,"isOptional":false,"isAbstract":false,"isStatic":false,"visibility":"private"},{"name":"config","type":{"packageName":"@proteinjs/db-driver-spanner","name":"SpannerConfig","filePath":null,"qualifiedName":"@proteinjs/db-driver-spanner/SpannerConfig","typeParameters":null,"directParents":null},"isOptional":false,"isAbstract":false,"isStatic":false,"visibility":"private"},{"name":"getTable","type":{"packageName":"","name":"((name: string) => Table<any>) | undefined","filePath":null,"qualifiedName":"/((name: string) => Table<any>) | undefined","typeParameters":null,"directParents":null},"isOptional":false,"isAbstract":false,"isStatic":false,"visibility":"public"}],"methods":[{"name":"getSessionPoolStats","returnType":{"packageName":"","name":"SpannerSessionPoolStats | undefined","filePath":null,"qualifiedName":"/SpannerSessionPoolStats | undefined","typeParameters":null,"directParents":null},"isAsync":false,"isOptional":false,"isAbstract":false,"isStatic":true,"visibility":"public","parameters":[]},{"name":"getSpanner","returnType":{"packageName":"@google-cloud/spanner","name":"Spanner","filePath":null,"qualifiedName":"@google-cloud/spanner/Spanner","typeParameters":null,"directParents":null},"isAsync":false,"isOptional":false,"isAbstract":false,"isStatic":false,"visibility":"private","parameters":[]},{"name":"getSpannerInstance","returnType":{"packageName":"@google-cloud/spanner","name":"Instance","filePath":null,"qualifiedName":"@google-cloud/spanner/Instance","typeParameters":null,"directParents":null},"isAsync":false,"isOptional":false,"isAbstract":false,"isStatic":false,"visibility":"private","parameters":[]},{"name":"getSpannerDb","returnType":{"packageName":"@google-cloud/spanner","name":"Database","filePath":null,"qualifiedName":"@google-cloud/spanner/Database","typeParameters":null,"directParents":null},"isAsync":false,"isOptional":false,"isAbstract":false,"isStatic":false,"visibility":"private","parameters":[]},{"name":"getDbName","returnType":null,"isAsync":false,"isOptional":false,"isAbstract":false,"isStatic":false,"visibility":"public","parameters":[]},{"name":"getTableManager","returnType":{"packageName":"@proteinjs/db","name":"TableManager","filePath":null,"qualifiedName":"@proteinjs/db/TableManager","typeParameters":null,"directParents":null},"isAsync":false,"isOptional":false,"isAbstract":false,"isStatic":false,"visibility":"public","parameters":[]},{"name":"getColumnType","returnType":{"packageName":"","name":"string","filePath":null,"qualifiedName":"/string","typeParameters":null,"directParents":null},"isAsync":false,"isOptional":false,"isAbstract":false,"isStatic":false,"visibility":"public","parameters":[{"name":"tableName","type":{"packageName":"","name":"string","filePath":null,"qualifiedName":"/string","typeParameters":null,"directParents":null}},{"name":"columnName","type":{"packageName":"","name":"string","filePath":null,"qualifiedName":"/string","typeParameters":null,"directParents":null}}]},{"name":"handleCaseSensitivity","returnType":{"packageName":"","name":"string","filePath":null,"qualifiedName":"/string","typeParameters":null,"directParents":null},"isAsync":false,"isOptional":false,"isAbstract":false,"isStatic":false,"visibility":"public","parameters":[{"name":"tableName","type":{"packageName":"","name":"string","filePath":null,"qualifiedName":"/string","typeParameters":null,"directParents":null}},{"name":"columnName","type":{"packageName":"","name":"string","filePath":null,"qualifiedName":"/string","typeParameters":null,"directParents":null}},{"name":"caseSensitive","type":{"packageName":"","name":"boolean","filePath":null,"qualifiedName":"/boolean","typeParameters":null,"directParents":null}}]},{"name":"createDbIfNotExists","returnType":{"packageName":"","name":"Promise<void>","filePath":null,"qualifiedName":"/Promise<void>","typeParameters":null,"directParents":null},"isAsync":true,"isOptional":false,"isAbstract":false,"isStatic":false,"visibility":"public","parameters":[]},{"name":"dbExists","returnType":{"packageName":"","name":"Promise<boolean>","filePath":null,"qualifiedName":"/Promise<boolean>","typeParameters":null,"directParents":null},"isAsync":true,"isOptional":false,"isAbstract":false,"isStatic":false,"visibility":"private","parameters":[{"name":"databaseName","type":{"packageName":"","name":"string","filePath":null,"qualifiedName":"/string","typeParameters":null,"directParents":null}}]},{"name":"runQuery","returnType":{"packageName":"","name":"Promise<any[]>","filePath":null,"qualifiedName":"/Promise<any[]>","typeParameters":null,"directParents":null},"isAsync":true,"isOptional":false,"isAbstract":false,"isStatic":false,"visibility":"public","parameters":[{"name":"generateStatement","type":{"packageName":"","name":"(config: DbDriverQueryStatementConfig) => Statement","filePath":null,"qualifiedName":"/(config: DbDriverQueryStatementConfig) => Statement","typeParameters":null,"directParents":null}},{"name":"transaction","type":{"packageName":"@google-cloud/spanner","name":"Transaction","filePath":null,"qualifiedName":"@google-cloud/spanner/Transaction","typeParameters":null,"directParents":null}}]},{"name":"executeQuery","returnType":{"packageName":"","name":"Promise<any[]>","filePath":null,"qualifiedName":"/Promise<any[]>","typeParameters":null,"directParents":null},"isAsync":true,"isOptional":false,"isAbstract":false,"isStatic":false,"visibility":"private","parameters":[{"name":"generateStatement","type":{"packageName":"","name":"(config: DbDriverQueryStatementConfig) => Statement","filePath":null,"qualifiedName":"/(config: DbDriverQueryStatementConfig) => Statement","typeParameters":null,"directParents":null}},{"name":"runner","type":{"packageName":"","name":"Database | Transaction","filePath":null,"qualifiedName":"/Database | Transaction","typeParameters":null,"directParents":null}}]},{"name":"runDml","returnType":{"packageName":"","name":"Promise<number>","filePath":null,"qualifiedName":"/Promise<number>","typeParameters":null,"directParents":null},"isAsync":true,"isOptional":false,"isAbstract":false,"isStatic":false,"visibility":"public","parameters":[{"name":"generateStatement","type":{"packageName":"","name":"(config: DbDriverDmlStatementConfig) => Statement","filePath":null,"qualifiedName":"/(config: DbDriverDmlStatementConfig) => Statement","typeParameters":null,"directParents":null}},{"name":"transaction","type":{"packageName":"@google-cloud/spanner","name":"Transaction","filePath":null,"qualifiedName":"@google-cloud/spanner/Transaction","typeParameters":null,"directParents":null}}]},{"name":"executeDml","returnType":{"packageName":"","name":"Promise<number>","filePath":null,"qualifiedName":"/Promise<number>","typeParameters":null,"directParents":null},"isAsync":true,"isOptional":false,"isAbstract":false,"isStatic":false,"visibility":"private","parameters":[{"name":"generateStatement","type":{"packageName":"","name":"(config: DbDriverDmlStatementConfig) => Statement","filePath":null,"qualifiedName":"/(config: DbDriverDmlStatementConfig) => Statement","typeParameters":null,"directParents":null}},{"name":"runner","type":{"packageName":"@google-cloud/spanner","name":"Transaction","filePath":null,"qualifiedName":"@google-cloud/spanner/Transaction","typeParameters":null,"directParents":null}}]},{"name":"runTransaction","returnType":{"packageName":"","name":"Promise<T>","filePath":null,"qualifiedName":"/Promise<T>","typeParameters":null,"directParents":null},"isAsync":true,"isOptional":false,"isAbstract":false,"isStatic":false,"visibility":"public","parameters":[{"name":"fn","type":{"packageName":"","name":"(transaction: Transaction) => Promise<T>","filePath":null,"qualifiedName":"/(transaction: Transaction) => Promise<T>","typeParameters":null,"directParents":null}}]},{"name":"commit","returnType":{"packageName":"","name":"Promise<void>","filePath":null,"qualifiedName":"/Promise<void>","typeParameters":null,"directParents":null},"isAsync":true,"isOptional":false,"isAbstract":false,"isStatic":false,"visibility":"private","parameters":[{"name":"transaction","type":{"packageName":"@google-cloud/spanner","name":"Transaction","filePath":null,"qualifiedName":"@google-cloud/spanner/Transaction","typeParameters":null,"directParents":null}}]},{"name":"rollbackQuietly","returnType":{"packageName":"","name":"Promise<void>","filePath":null,"qualifiedName":"/Promise<void>","typeParameters":null,"directParents":null},"isAsync":true,"isOptional":false,"isAbstract":false,"isStatic":false,"visibility":"private","parameters":[{"name":"transaction","type":{"packageName":"@google-cloud/spanner","name":"Transaction","filePath":null,"qualifiedName":"@google-cloud/spanner/Transaction","typeParameters":null,"directParents":null}}]},{"name":"withDeadline","returnType":{"packageName":"","name":"Promise<T>","filePath":null,"qualifiedName":"/Promise<T>","typeParameters":null,"directParents":null},"isAsync":false,"isOptional":false,"isAbstract":false,"isStatic":false,"visibility":"private","parameters":[{"name":"op","type":{"packageName":"","name":"string","filePath":null,"qualifiedName":"/string","typeParameters":null,"directParents":null}},{"name":"sql","type":{"packageName":"","name":"string","filePath":null,"qualifiedName":"/string","typeParameters":null,"directParents":null}},{"name":"promise","type":{"packageName":"","name":"PromiseLike<T>","filePath":null,"qualifiedName":"/PromiseLike<T>","typeParameters":null,"directParents":null}}]},{"name":"recordOpSuccess","returnType":{"packageName":"","name":"void","filePath":null,"qualifiedName":"/void","typeParameters":null,"directParents":null},"isAsync":false,"isOptional":false,"isAbstract":false,"isStatic":false,"visibility":"private","parameters":[{"name":"generation","type":{"packageName":"","name":"number","filePath":null,"qualifiedName":"/number","typeParameters":null,"directParents":null}}]},{"name":"recordDeadlineFailure","returnType":{"packageName":"","name":"void","filePath":null,"qualifiedName":"/void","typeParameters":null,"directParents":null},"isAsync":false,"isOptional":false,"isAbstract":false,"isStatic":false,"visibility":"private","parameters":[{"name":"generation","type":{"packageName":"","name":"number","filePath":null,"qualifiedName":"/number","typeParameters":null,"directParents":null}}]},{"name":"recycleClient","returnType":{"packageName":"","name":"void","filePath":null,"qualifiedName":"/void","typeParameters":null,"directParents":null},"isAsync":false,"isOptional":false,"isAbstract":false,"isStatic":false,"visibility":"private","parameters":[]},{"name":"operationDeadlineMs","returnType":{"packageName":"","name":"number","filePath":null,"qualifiedName":"/number","typeParameters":null,"directParents":null},"isAsync":false,"isOptional":false,"isAbstract":false,"isStatic":false,"visibility":"private","parameters":[]},{"name":"deadlineFailuresBeforeRecycle","returnType":{"packageName":"","name":"number","filePath":null,"qualifiedName":"/number","typeParameters":null,"directParents":null},"isAsync":false,"isOptional":false,"isAbstract":false,"isStatic":false,"visibility":"private","parameters":[]},{"name":"runUpdateSchema","returnType":{"packageName":"","name":"Promise<void>","filePath":null,"qualifiedName":"/Promise<void>","typeParameters":null,"directParents":null},"isAsync":true,"isOptional":false,"isAbstract":false,"isStatic":false,"visibility":"public","parameters":[{"name":"sql","type":{"packageName":"","name":"string","filePath":null,"qualifiedName":"/string","typeParameters":null,"directParents":null}}]}],"typeParameters":[],"directParentInterfaces":[{"packageName":"@proteinjs/db","name":"DbDriver","filePath":null,"qualifiedName":"@proteinjs/db/DbDriver","properties":[],"methods":[],"typeParameters":[],"directParents":[]}],"directParentClasses":[],"sourceType":2}},{"v":"@proteinjs/db/DbDriver"},{"v":"@proteinjs/db-driver-spanner/SpannerSchemaMetadata","value":{"packageName":"@proteinjs/db-driver-spanner","name":"SpannerSchemaMetadata","filePath":"/home/runner/work/db/db/packages/drivers/spanner/src/SpannerSchemaMetadata.ts","qualifiedName":"@proteinjs/db-driver-spanner/SpannerSchemaMetadata","isAbstract":false,"isStatic":false,"visibility":"public","properties":[],"methods":[{"name":"tableExists","returnType":{"packageName":"","name":"Promise<boolean>","filePath":null,"qualifiedName":"/Promise<boolean>","typeParameters":null,"directParents":null},"isAsync":true,"isOptional":false,"isAbstract":false,"isStatic":false,"visibility":"public","parameters":[{"name":"table","type":{"packageName":"","name":"Table<any>","filePath":null,"qualifiedName":"/Table<any>","typeParameters":null,"directParents":null}}]},{"name":"getColumnMetadata","returnType":{"packageName":"","name":"Promise<{ [columnName: string]: { type: string; isNullable: boolean } }>","filePath":null,"qualifiedName":"/Promise<{ [columnName: string]: { type: string; isNullable: boolean } }>","typeParameters":null,"directParents":null},"isAsync":true,"isOptional":false,"isAbstract":false,"isStatic":false,"visibility":"public","parameters":[{"name":"table","type":{"packageName":"","name":"Table<any>","filePath":null,"qualifiedName":"/Table<any>","typeParameters":null,"directParents":null}}]},{"name":"getPrimaryKey","returnType":{"packageName":"","name":"Promise<string[]>","filePath":null,"qualifiedName":"/Promise<string[]>","typeParameters":null,"directParents":null},"isAsync":true,"isOptional":false,"isAbstract":false,"isStatic":false,"visibility":"public","parameters":[{"name":"table","type":{"packageName":"","name":"Table<any>","filePath":null,"qualifiedName":"/Table<any>","typeParameters":null,"directParents":null}}]},{"name":"getForeignKeys","returnType":{"packageName":"","name":"Promise<{ [columnName: string]: { referencedTableName: string; referencedColumnName: string } }>","filePath":null,"qualifiedName":"/Promise<{ [columnName: string]: { referencedTableName: string; referencedColumnName: string } }>","typeParameters":null,"directParents":null},"isAsync":true,"isOptional":false,"isAbstract":false,"isStatic":false,"visibility":"public","parameters":[{"name":"table","type":{"packageName":"","name":"Table<any>","filePath":null,"qualifiedName":"/Table<any>","typeParameters":null,"directParents":null}}]},{"name":"getUniqueColumns","returnType":{"packageName":"","name":"Promise<string[]>","filePath":null,"qualifiedName":"/Promise<string[]>","typeParameters":null,"directParents":null},"isAsync":true,"isOptional":false,"isAbstract":false,"isStatic":false,"visibility":"public","parameters":[{"name":"table","type":{"packageName":"","name":"Table<any>","filePath":null,"qualifiedName":"/Table<any>","typeParameters":null,"directParents":null}}]},{"name":"getIndexes","returnType":{"packageName":"","name":"Promise<{ [keyName: string]: string[] }>","filePath":null,"qualifiedName":"/Promise<{ [keyName: string]: string[] }>","typeParameters":null,"directParents":null},"isAsync":true,"isOptional":false,"isAbstract":false,"isStatic":false,"visibility":"public","parameters":[{"name":"table","type":{"packageName":"","name":"Table<any>","filePath":null,"qualifiedName":"/Table<any>","typeParameters":null,"directParents":null}}]}],"typeParameters":[],"directParentInterfaces":[],"directParentClasses":[{"packageName":"@proteinjs/db","name":"SchemaMetadata","filePath":null,"qualifiedName":"@proteinjs/db/SchemaMetadata","isAbstract":false,"isStatic":false,"visibility":"public","properties":[],"methods":[],"typeParameters":[],"directParentInterfaces":[],"directParentClasses":[]}],"sourceType":2}},{"v":"@proteinjs/db/SchemaMetadata"},{"v":"@proteinjs/db-driver-spanner/SpannerSchemaOperations","value":{"packageName":"@proteinjs/db-driver-spanner","name":"SpannerSchemaOperations","filePath":"/home/runner/work/db/db/packages/drivers/spanner/src/SpannerSchemaOperations.ts","qualifiedName":"@proteinjs/db-driver-spanner/SpannerSchemaOperations","isAbstract":false,"isStatic":false,"visibility":"public","properties":[{"name":"logger","type":null,"isOptional":false,"isAbstract":false,"isStatic":false,"visibility":"private"},{"name":"spannerDriver","type":{"packageName":"@proteinjs/db-driver-spanner","name":"SpannerDriver","filePath":null,"qualifiedName":"@proteinjs/db-driver-spanner/SpannerDriver","typeParameters":null,"directParents":null},"isOptional":false,"isAbstract":false,"isStatic":false,"visibility":"private"}],"methods":[{"name":"createTable","returnType":null,"isAsync":true,"isOptional":false,"isAbstract":false,"isStatic":false,"visibility":"public","parameters":[{"name":"table","type":{"packageName":"","name":"Table<any>","filePath":null,"qualifiedName":"/Table<any>","typeParameters":null,"directParents":null}}]},{"name":"alterTable","returnType":null,"isAsync":true,"isOptional":false,"isAbstract":false,"isStatic":false,"visibility":"public","parameters":[{"name":"table","type":{"packageName":"","name":"Table<any>","filePath":null,"qualifiedName":"/Table<any>","typeParameters":null,"directParents":null}},{"name":"tableChanges","type":{"packageName":"@proteinjs/db","name":"TableChanges","filePath":null,"qualifiedName":"@proteinjs/db/TableChanges","typeParameters":null,"directParents":null}}]},{"name":"stringWideningStatement","returnType":{"packageName":"","name":"string | null","filePath":null,"qualifiedName":"/string | null","typeParameters":null,"directParents":null},"isAsync":false,"isOptional":false,"isAbstract":false,"isStatic":false,"visibility":"private","parameters":[{"name":"table","type":{"packageName":"","name":"Table<any>","filePath":null,"qualifiedName":"/Table<any>","typeParameters":null,"directParents":null}},{"name":"change","type":{"packageName":"@proteinjs/db-driver-spanner","name":"{ name: string; newType: string; oldType: string }","filePath":null,"qualifiedName":"@proteinjs/db-driver-spanner/{ name: string; newType: string; oldType: string }","typeParameters":null,"directParents":null}}]}],"typeParameters":[],"directParentInterfaces":[{"packageName":"@proteinjs/db","name":"SchemaOperations","filePath":null,"qualifiedName":"@proteinjs/db/SchemaOperations","properties":[],"methods":[],"typeParameters":[],"directParents":[]}],"directParentClasses":[],"sourceType":2}},{"v":"@proteinjs/db/SchemaOperations"}],"edges":[{"v":"@proteinjs/db-driver-spanner/SpannerDriver","w":"@proteinjs/db/DbDriver","value":"implements interface"},{"v":"@proteinjs/db-driver-spanner/SpannerSchemaMetadata","w":"@proteinjs/db/SchemaMetadata","value":"extends class"},{"v":"@proteinjs/db-driver-spanner/SpannerSchemaOperations","w":"@proteinjs/db/SchemaOperations","value":"implements interface"}]}';
15
+ '{"options":{"directed":true,"multigraph":false,"compound":false},"nodes":[{"v":"@proteinjs/db-driver-spanner/SpannerDriver","value":{"packageName":"@proteinjs/db-driver-spanner","name":"SpannerDriver","filePath":"/home/runner/work/db/db/packages/drivers/spanner/src/SpannerDriver.ts","qualifiedName":"@proteinjs/db-driver-spanner/SpannerDriver","isAbstract":false,"isStatic":false,"visibility":"public","properties":[{"name":"SPANNER","type":{"packageName":"@google-cloud/spanner","name":"Spanner","filePath":null,"qualifiedName":"@google-cloud/spanner/Spanner","typeParameters":null,"directParents":null},"isOptional":true,"isAbstract":false,"isStatic":true,"visibility":"private"},{"name":"SPANNER_INSTANCE","type":{"packageName":"@google-cloud/spanner","name":"Instance","filePath":null,"qualifiedName":"@google-cloud/spanner/Instance","typeParameters":null,"directParents":null},"isOptional":true,"isAbstract":false,"isStatic":true,"visibility":"private"},{"name":"SPANNER_DB","type":{"packageName":"@google-cloud/spanner","name":"Database","filePath":null,"qualifiedName":"@google-cloud/spanner/Database","typeParameters":null,"directParents":null},"isOptional":true,"isAbstract":false,"isStatic":true,"visibility":"private"},{"name":"LIVENESS_MONITOR","type":{"packageName":"@proteinjs/db-driver-spanner","name":"SpannerLivenessMonitor","filePath":null,"qualifiedName":"@proteinjs/db-driver-spanner/SpannerLivenessMonitor","typeParameters":null,"directParents":null},"isOptional":false,"isAbstract":false,"isStatic":true,"visibility":"private"},{"name":"CLIENT_GENERATION","type":null,"isOptional":false,"isAbstract":false,"isStatic":true,"visibility":"private"},{"name":"CONSECUTIVE_DEADLINE_FAILURES","type":null,"isOptional":false,"isAbstract":false,"isStatic":true,"visibility":"private"},{"name":"logger","type":null,"isOptional":false,"isAbstract":false,"isStatic":false,"visibility":"private"},{"name":"config","type":{"packageName":"@proteinjs/db-driver-spanner","name":"SpannerConfig","filePath":null,"qualifiedName":"@proteinjs/db-driver-spanner/SpannerConfig","typeParameters":null,"directParents":null},"isOptional":false,"isAbstract":false,"isStatic":false,"visibility":"private"},{"name":"getTable","type":{"packageName":"","name":"((name: string) => Table<any>) | undefined","filePath":null,"qualifiedName":"/((name: string) => Table<any>) | undefined","typeParameters":null,"directParents":null},"isOptional":false,"isAbstract":false,"isStatic":false,"visibility":"public"}],"methods":[{"name":"getSessionPoolStats","returnType":{"packageName":"","name":"SpannerSessionPoolStats | undefined","filePath":null,"qualifiedName":"/SpannerSessionPoolStats | undefined","typeParameters":null,"directParents":null},"isAsync":false,"isOptional":false,"isAbstract":false,"isStatic":true,"visibility":"public","parameters":[]},{"name":"getSpanner","returnType":{"packageName":"@google-cloud/spanner","name":"Spanner","filePath":null,"qualifiedName":"@google-cloud/spanner/Spanner","typeParameters":null,"directParents":null},"isAsync":false,"isOptional":false,"isAbstract":false,"isStatic":false,"visibility":"private","parameters":[]},{"name":"getSpannerInstance","returnType":{"packageName":"@google-cloud/spanner","name":"Instance","filePath":null,"qualifiedName":"@google-cloud/spanner/Instance","typeParameters":null,"directParents":null},"isAsync":false,"isOptional":false,"isAbstract":false,"isStatic":false,"visibility":"private","parameters":[]},{"name":"getSpannerDb","returnType":{"packageName":"@google-cloud/spanner","name":"Database","filePath":null,"qualifiedName":"@google-cloud/spanner/Database","typeParameters":null,"directParents":null},"isAsync":false,"isOptional":false,"isAbstract":false,"isStatic":false,"visibility":"private","parameters":[]},{"name":"getDbName","returnType":null,"isAsync":false,"isOptional":false,"isAbstract":false,"isStatic":false,"visibility":"public","parameters":[]},{"name":"getTableManager","returnType":{"packageName":"@proteinjs/db","name":"TableManager","filePath":null,"qualifiedName":"@proteinjs/db/TableManager","typeParameters":null,"directParents":null},"isAsync":false,"isOptional":false,"isAbstract":false,"isStatic":false,"visibility":"public","parameters":[]},{"name":"getColumnType","returnType":{"packageName":"","name":"string","filePath":null,"qualifiedName":"/string","typeParameters":null,"directParents":null},"isAsync":false,"isOptional":false,"isAbstract":false,"isStatic":false,"visibility":"public","parameters":[{"name":"tableName","type":{"packageName":"","name":"string","filePath":null,"qualifiedName":"/string","typeParameters":null,"directParents":null}},{"name":"columnName","type":{"packageName":"","name":"string","filePath":null,"qualifiedName":"/string","typeParameters":null,"directParents":null}}]},{"name":"handleCaseSensitivity","returnType":{"packageName":"","name":"string","filePath":null,"qualifiedName":"/string","typeParameters":null,"directParents":null},"isAsync":false,"isOptional":false,"isAbstract":false,"isStatic":false,"visibility":"public","parameters":[{"name":"tableName","type":{"packageName":"","name":"string","filePath":null,"qualifiedName":"/string","typeParameters":null,"directParents":null}},{"name":"columnName","type":{"packageName":"","name":"string","filePath":null,"qualifiedName":"/string","typeParameters":null,"directParents":null}},{"name":"caseSensitive","type":{"packageName":"","name":"boolean","filePath":null,"qualifiedName":"/boolean","typeParameters":null,"directParents":null}}]},{"name":"createDbIfNotExists","returnType":{"packageName":"","name":"Promise<void>","filePath":null,"qualifiedName":"/Promise<void>","typeParameters":null,"directParents":null},"isAsync":true,"isOptional":false,"isAbstract":false,"isStatic":false,"visibility":"public","parameters":[]},{"name":"createDb","returnType":{"packageName":"","name":"Promise<void>","filePath":null,"qualifiedName":"/Promise<void>","typeParameters":null,"directParents":null},"isAsync":true,"isOptional":false,"isAbstract":false,"isStatic":false,"visibility":"public","parameters":[{"name":"name","type":{"packageName":"","name":"string","filePath":null,"qualifiedName":"/string","typeParameters":null,"directParents":null}},{"name":"options","type":{"packageName":"@proteinjs/db-driver-spanner","name":"{ ddl?: string[] }","filePath":null,"qualifiedName":"@proteinjs/db-driver-spanner/{ ddl?: string[] }","typeParameters":null,"directParents":null}}]},{"name":"dropDb","returnType":{"packageName":"","name":"Promise<void>","filePath":null,"qualifiedName":"/Promise<void>","typeParameters":null,"directParents":null},"isAsync":true,"isOptional":false,"isAbstract":false,"isStatic":false,"visibility":"public","parameters":[{"name":"name","type":{"packageName":"","name":"string","filePath":null,"qualifiedName":"/string","typeParameters":null,"directParents":null}}]},{"name":"dbExists","returnType":{"packageName":"","name":"Promise<boolean>","filePath":null,"qualifiedName":"/Promise<boolean>","typeParameters":null,"directParents":null},"isAsync":true,"isOptional":false,"isAbstract":false,"isStatic":false,"visibility":"public","parameters":[{"name":"databaseName","type":{"packageName":"","name":"string","filePath":null,"qualifiedName":"/string","typeParameters":null,"directParents":null}}]},{"name":"adminDbHandle","returnType":{"packageName":"@google-cloud/spanner","name":"Database","filePath":null,"qualifiedName":"@google-cloud/spanner/Database","typeParameters":null,"directParents":null},"isAsync":false,"isOptional":false,"isAbstract":false,"isStatic":false,"visibility":"private","parameters":[{"name":"name","type":{"packageName":"","name":"string","filePath":null,"qualifiedName":"/string","typeParameters":null,"directParents":null}}]},{"name":"runQuery","returnType":{"packageName":"","name":"Promise<any[]>","filePath":null,"qualifiedName":"/Promise<any[]>","typeParameters":null,"directParents":null},"isAsync":true,"isOptional":false,"isAbstract":false,"isStatic":false,"visibility":"public","parameters":[{"name":"generateStatement","type":{"packageName":"","name":"(config: DbDriverQueryStatementConfig) => Statement","filePath":null,"qualifiedName":"/(config: DbDriverQueryStatementConfig) => Statement","typeParameters":null,"directParents":null}},{"name":"transaction","type":{"packageName":"@google-cloud/spanner","name":"Transaction","filePath":null,"qualifiedName":"@google-cloud/spanner/Transaction","typeParameters":null,"directParents":null}}]},{"name":"executeQuery","returnType":{"packageName":"","name":"Promise<any[]>","filePath":null,"qualifiedName":"/Promise<any[]>","typeParameters":null,"directParents":null},"isAsync":true,"isOptional":false,"isAbstract":false,"isStatic":false,"visibility":"private","parameters":[{"name":"generateStatement","type":{"packageName":"","name":"(config: DbDriverQueryStatementConfig) => Statement","filePath":null,"qualifiedName":"/(config: DbDriverQueryStatementConfig) => Statement","typeParameters":null,"directParents":null}},{"name":"runner","type":{"packageName":"","name":"Database | Transaction","filePath":null,"qualifiedName":"/Database | Transaction","typeParameters":null,"directParents":null}}]},{"name":"runDml","returnType":{"packageName":"","name":"Promise<number>","filePath":null,"qualifiedName":"/Promise<number>","typeParameters":null,"directParents":null},"isAsync":true,"isOptional":false,"isAbstract":false,"isStatic":false,"visibility":"public","parameters":[{"name":"generateStatement","type":{"packageName":"","name":"(config: DbDriverDmlStatementConfig) => Statement","filePath":null,"qualifiedName":"/(config: DbDriverDmlStatementConfig) => Statement","typeParameters":null,"directParents":null}},{"name":"transaction","type":{"packageName":"@google-cloud/spanner","name":"Transaction","filePath":null,"qualifiedName":"@google-cloud/spanner/Transaction","typeParameters":null,"directParents":null}}]},{"name":"executeDml","returnType":{"packageName":"","name":"Promise<number>","filePath":null,"qualifiedName":"/Promise<number>","typeParameters":null,"directParents":null},"isAsync":true,"isOptional":false,"isAbstract":false,"isStatic":false,"visibility":"private","parameters":[{"name":"generateStatement","type":{"packageName":"","name":"(config: DbDriverDmlStatementConfig) => Statement","filePath":null,"qualifiedName":"/(config: DbDriverDmlStatementConfig) => Statement","typeParameters":null,"directParents":null}},{"name":"runner","type":{"packageName":"@google-cloud/spanner","name":"Transaction","filePath":null,"qualifiedName":"@google-cloud/spanner/Transaction","typeParameters":null,"directParents":null}}]},{"name":"runTransaction","returnType":{"packageName":"","name":"Promise<T>","filePath":null,"qualifiedName":"/Promise<T>","typeParameters":null,"directParents":null},"isAsync":true,"isOptional":false,"isAbstract":false,"isStatic":false,"visibility":"public","parameters":[{"name":"fn","type":{"packageName":"","name":"(transaction: Transaction) => Promise<T>","filePath":null,"qualifiedName":"/(transaction: Transaction) => Promise<T>","typeParameters":null,"directParents":null}}]},{"name":"commit","returnType":{"packageName":"","name":"Promise<void>","filePath":null,"qualifiedName":"/Promise<void>","typeParameters":null,"directParents":null},"isAsync":true,"isOptional":false,"isAbstract":false,"isStatic":false,"visibility":"private","parameters":[{"name":"transaction","type":{"packageName":"@google-cloud/spanner","name":"Transaction","filePath":null,"qualifiedName":"@google-cloud/spanner/Transaction","typeParameters":null,"directParents":null}}]},{"name":"rollbackQuietly","returnType":{"packageName":"","name":"Promise<void>","filePath":null,"qualifiedName":"/Promise<void>","typeParameters":null,"directParents":null},"isAsync":true,"isOptional":false,"isAbstract":false,"isStatic":false,"visibility":"private","parameters":[{"name":"transaction","type":{"packageName":"@google-cloud/spanner","name":"Transaction","filePath":null,"qualifiedName":"@google-cloud/spanner/Transaction","typeParameters":null,"directParents":null}}]},{"name":"withDeadline","returnType":{"packageName":"","name":"Promise<T>","filePath":null,"qualifiedName":"/Promise<T>","typeParameters":null,"directParents":null},"isAsync":false,"isOptional":false,"isAbstract":false,"isStatic":false,"visibility":"private","parameters":[{"name":"op","type":{"packageName":"","name":"string","filePath":null,"qualifiedName":"/string","typeParameters":null,"directParents":null}},{"name":"sql","type":{"packageName":"","name":"string","filePath":null,"qualifiedName":"/string","typeParameters":null,"directParents":null}},{"name":"promise","type":{"packageName":"","name":"PromiseLike<T>","filePath":null,"qualifiedName":"/PromiseLike<T>","typeParameters":null,"directParents":null}}]},{"name":"recordOpSuccess","returnType":{"packageName":"","name":"void","filePath":null,"qualifiedName":"/void","typeParameters":null,"directParents":null},"isAsync":false,"isOptional":false,"isAbstract":false,"isStatic":false,"visibility":"private","parameters":[{"name":"generation","type":{"packageName":"","name":"number","filePath":null,"qualifiedName":"/number","typeParameters":null,"directParents":null}}]},{"name":"recordDeadlineFailure","returnType":{"packageName":"","name":"void","filePath":null,"qualifiedName":"/void","typeParameters":null,"directParents":null},"isAsync":false,"isOptional":false,"isAbstract":false,"isStatic":false,"visibility":"private","parameters":[{"name":"generation","type":{"packageName":"","name":"number","filePath":null,"qualifiedName":"/number","typeParameters":null,"directParents":null}}]},{"name":"recycleClient","returnType":{"packageName":"","name":"void","filePath":null,"qualifiedName":"/void","typeParameters":null,"directParents":null},"isAsync":false,"isOptional":false,"isAbstract":false,"isStatic":false,"visibility":"private","parameters":[]},{"name":"dmlGaxOptions","returnType":{"packageName":"@proteinjs/db-driver-spanner","name":"{ timeout: number; retry?: null }","filePath":null,"qualifiedName":"@proteinjs/db-driver-spanner/{ timeout: number; retry?: null }","typeParameters":null,"directParents":null},"isAsync":false,"isOptional":false,"isAbstract":false,"isStatic":false,"visibility":"private","parameters":[]},{"name":"operationDeadlineMs","returnType":{"packageName":"","name":"number","filePath":null,"qualifiedName":"/number","typeParameters":null,"directParents":null},"isAsync":false,"isOptional":false,"isAbstract":false,"isStatic":false,"visibility":"private","parameters":[]},{"name":"deadlineFailuresBeforeRecycle","returnType":{"packageName":"","name":"number","filePath":null,"qualifiedName":"/number","typeParameters":null,"directParents":null},"isAsync":false,"isOptional":false,"isAbstract":false,"isStatic":false,"visibility":"private","parameters":[]},{"name":"runUpdateSchema","returnType":{"packageName":"","name":"Promise<void>","filePath":null,"qualifiedName":"/Promise<void>","typeParameters":null,"directParents":null},"isAsync":true,"isOptional":false,"isAbstract":false,"isStatic":false,"visibility":"public","parameters":[{"name":"statements","type":{"packageName":"","name":"string | string[]","filePath":null,"qualifiedName":"/string | string[]","typeParameters":null,"directParents":null}}]}],"typeParameters":[],"directParentInterfaces":[{"packageName":"@proteinjs/db","name":"DbDriver","filePath":null,"qualifiedName":"@proteinjs/db/DbDriver","properties":[],"methods":[],"typeParameters":[],"directParents":[]}],"directParentClasses":[],"sourceType":2}},{"v":"@proteinjs/db/DbDriver"},{"v":"@proteinjs/db-driver-spanner/SpannerSchemaMetadata","value":{"packageName":"@proteinjs/db-driver-spanner","name":"SpannerSchemaMetadata","filePath":"/home/runner/work/db/db/packages/drivers/spanner/src/SpannerSchemaMetadata.ts","qualifiedName":"@proteinjs/db-driver-spanner/SpannerSchemaMetadata","isAbstract":false,"isStatic":false,"visibility":"public","properties":[],"methods":[{"name":"tableExists","returnType":{"packageName":"","name":"Promise<boolean>","filePath":null,"qualifiedName":"/Promise<boolean>","typeParameters":null,"directParents":null},"isAsync":true,"isOptional":false,"isAbstract":false,"isStatic":false,"visibility":"public","parameters":[{"name":"table","type":{"packageName":"","name":"Table<any>","filePath":null,"qualifiedName":"/Table<any>","typeParameters":null,"directParents":null}}]},{"name":"getColumnMetadata","returnType":{"packageName":"","name":"Promise<{ [columnName: string]: { type: string; isNullable: boolean } }>","filePath":null,"qualifiedName":"/Promise<{ [columnName: string]: { type: string; isNullable: boolean } }>","typeParameters":null,"directParents":null},"isAsync":true,"isOptional":false,"isAbstract":false,"isStatic":false,"visibility":"public","parameters":[{"name":"table","type":{"packageName":"","name":"Table<any>","filePath":null,"qualifiedName":"/Table<any>","typeParameters":null,"directParents":null}}]},{"name":"getPrimaryKey","returnType":{"packageName":"","name":"Promise<string[]>","filePath":null,"qualifiedName":"/Promise<string[]>","typeParameters":null,"directParents":null},"isAsync":true,"isOptional":false,"isAbstract":false,"isStatic":false,"visibility":"public","parameters":[{"name":"table","type":{"packageName":"","name":"Table<any>","filePath":null,"qualifiedName":"/Table<any>","typeParameters":null,"directParents":null}}]},{"name":"getForeignKeys","returnType":{"packageName":"","name":"Promise<{ [columnName: string]: { referencedTableName: string; referencedColumnName: string } }>","filePath":null,"qualifiedName":"/Promise<{ [columnName: string]: { referencedTableName: string; referencedColumnName: string } }>","typeParameters":null,"directParents":null},"isAsync":true,"isOptional":false,"isAbstract":false,"isStatic":false,"visibility":"public","parameters":[{"name":"table","type":{"packageName":"","name":"Table<any>","filePath":null,"qualifiedName":"/Table<any>","typeParameters":null,"directParents":null}}]},{"name":"getUniqueColumns","returnType":{"packageName":"","name":"Promise<string[]>","filePath":null,"qualifiedName":"/Promise<string[]>","typeParameters":null,"directParents":null},"isAsync":true,"isOptional":false,"isAbstract":false,"isStatic":false,"visibility":"public","parameters":[{"name":"table","type":{"packageName":"","name":"Table<any>","filePath":null,"qualifiedName":"/Table<any>","typeParameters":null,"directParents":null}}]},{"name":"getIndexes","returnType":{"packageName":"","name":"Promise<{ [keyName: string]: string[] }>","filePath":null,"qualifiedName":"/Promise<{ [keyName: string]: string[] }>","typeParameters":null,"directParents":null},"isAsync":true,"isOptional":false,"isAbstract":false,"isStatic":false,"visibility":"public","parameters":[{"name":"table","type":{"packageName":"","name":"Table<any>","filePath":null,"qualifiedName":"/Table<any>","typeParameters":null,"directParents":null}}]}],"typeParameters":[],"directParentInterfaces":[],"directParentClasses":[{"packageName":"@proteinjs/db","name":"SchemaMetadata","filePath":null,"qualifiedName":"@proteinjs/db/SchemaMetadata","isAbstract":false,"isStatic":false,"visibility":"public","properties":[],"methods":[],"typeParameters":[],"directParentInterfaces":[],"directParentClasses":[]}],"sourceType":2}},{"v":"@proteinjs/db/SchemaMetadata"},{"v":"@proteinjs/db-driver-spanner/SpannerSchemaOperations","value":{"packageName":"@proteinjs/db-driver-spanner","name":"SpannerSchemaOperations","filePath":"/home/runner/work/db/db/packages/drivers/spanner/src/SpannerSchemaOperations.ts","qualifiedName":"@proteinjs/db-driver-spanner/SpannerSchemaOperations","isAbstract":false,"isStatic":false,"visibility":"public","properties":[{"name":"logger","type":null,"isOptional":false,"isAbstract":false,"isStatic":false,"visibility":"private"},{"name":"spannerDriver","type":{"packageName":"@proteinjs/db-driver-spanner","name":"SpannerDriver","filePath":null,"qualifiedName":"@proteinjs/db-driver-spanner/SpannerDriver","typeParameters":null,"directParents":null},"isOptional":false,"isAbstract":false,"isStatic":false,"visibility":"private"}],"methods":[{"name":"createTables","returnType":null,"isAsync":true,"isOptional":false,"isAbstract":false,"isStatic":false,"visibility":"public","parameters":[{"name":"tables","type":{"packageName":"","name":"Table<any>[]","filePath":null,"qualifiedName":"/Table<any>[]","typeParameters":null,"directParents":null}}]},{"name":"alterTable","returnType":null,"isAsync":true,"isOptional":false,"isAbstract":false,"isStatic":false,"visibility":"public","parameters":[{"name":"table","type":{"packageName":"","name":"Table<any>","filePath":null,"qualifiedName":"/Table<any>","typeParameters":null,"directParents":null}},{"name":"tableChanges","type":{"packageName":"@proteinjs/db","name":"TableChanges","filePath":null,"qualifiedName":"@proteinjs/db/TableChanges","typeParameters":null,"directParents":null}}]},{"name":"createTableStatements","returnType":{"packageName":"","name":"string[]","filePath":null,"qualifiedName":"/string[]","typeParameters":null,"directParents":null},"isAsync":false,"isOptional":false,"isAbstract":false,"isStatic":false,"visibility":"private","parameters":[{"name":"table","type":{"packageName":"","name":"Table<any>","filePath":null,"qualifiedName":"/Table<any>","typeParameters":null,"directParents":null}}]},{"name":"stringWideningStatement","returnType":{"packageName":"","name":"string | null","filePath":null,"qualifiedName":"/string | null","typeParameters":null,"directParents":null},"isAsync":false,"isOptional":false,"isAbstract":false,"isStatic":false,"visibility":"private","parameters":[{"name":"table","type":{"packageName":"","name":"Table<any>","filePath":null,"qualifiedName":"/Table<any>","typeParameters":null,"directParents":null}},{"name":"change","type":{"packageName":"@proteinjs/db-driver-spanner","name":"{ name: string; newType: string; oldType: string }","filePath":null,"qualifiedName":"@proteinjs/db-driver-spanner/{ name: string; newType: string; oldType: string }","typeParameters":null,"directParents":null}}]}],"typeParameters":[],"directParentInterfaces":[{"packageName":"@proteinjs/db","name":"SchemaOperations","filePath":null,"qualifiedName":"@proteinjs/db/SchemaOperations","properties":[],"methods":[],"typeParameters":[],"directParents":[]}],"directParentClasses":[],"sourceType":2}},{"v":"@proteinjs/db/SchemaOperations"}],"edges":[{"v":"@proteinjs/db-driver-spanner/SpannerDriver","w":"@proteinjs/db/DbDriver","value":"implements interface"},{"v":"@proteinjs/db-driver-spanner/SpannerSchemaMetadata","w":"@proteinjs/db/SchemaMetadata","value":"extends class"},{"v":"@proteinjs/db-driver-spanner/SpannerSchemaOperations","w":"@proteinjs/db/SchemaOperations","value":"implements interface"}]}';
16
16
 
17
17
  /** Generate Source Links */
18
18