@model-ts/dynamodb 3.0.4 → 4.0.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 (45) hide show
  1. package/CHANGELOG.md +12 -0
  2. package/dist/cjs/__test__/client-with-cursor-encryption.test.js +1241 -1343
  3. package/dist/cjs/__test__/client-with-cursor-encryption.test.js.map +1 -1
  4. package/dist/cjs/__test__/client.test.js +1488 -1458
  5. package/dist/cjs/__test__/client.test.js.map +1 -1
  6. package/dist/cjs/__test__/diff.test.d.ts +1 -0
  7. package/dist/cjs/__test__/diff.test.js +160 -0
  8. package/dist/cjs/__test__/diff.test.js.map +1 -0
  9. package/dist/cjs/diff.d.ts +3 -0
  10. package/dist/cjs/diff.js +339 -0
  11. package/dist/cjs/diff.js.map +1 -0
  12. package/dist/cjs/provider.d.ts +149 -19
  13. package/dist/cjs/provider.js +131 -1
  14. package/dist/cjs/provider.js.map +1 -1
  15. package/dist/cjs/sandbox.js +2 -2
  16. package/dist/cjs/sandbox.js.map +1 -1
  17. package/dist/cjs/test-utils/setup.d.ts +1 -1
  18. package/dist/cjs/test-utils/setup.js +11 -5
  19. package/dist/cjs/test-utils/setup.js.map +1 -1
  20. package/dist/esm/__test__/client-with-cursor-encryption.test.js +1241 -1343
  21. package/dist/esm/__test__/client-with-cursor-encryption.test.js.map +1 -1
  22. package/dist/esm/__test__/client.test.js +1488 -1458
  23. package/dist/esm/__test__/client.test.js.map +1 -1
  24. package/dist/esm/__test__/diff.test.d.ts +1 -0
  25. package/dist/esm/__test__/diff.test.js +158 -0
  26. package/dist/esm/__test__/diff.test.js.map +1 -0
  27. package/dist/esm/diff.d.ts +3 -0
  28. package/dist/esm/diff.js +335 -0
  29. package/dist/esm/diff.js.map +1 -0
  30. package/dist/esm/provider.d.ts +149 -19
  31. package/dist/esm/provider.js +131 -1
  32. package/dist/esm/provider.js.map +1 -1
  33. package/dist/esm/sandbox.js +2 -2
  34. package/dist/esm/sandbox.js.map +1 -1
  35. package/dist/esm/test-utils/setup.d.ts +1 -1
  36. package/dist/esm/test-utils/setup.js +11 -5
  37. package/dist/esm/test-utils/setup.js.map +1 -1
  38. package/package.json +1 -1
  39. package/src/__test__/client-with-cursor-encryption.test.ts +1245 -1347
  40. package/src/__test__/client.test.ts +1584 -1482
  41. package/src/__test__/diff.test.ts +165 -0
  42. package/src/diff.ts +443 -0
  43. package/src/provider.ts +147 -3
  44. package/src/sandbox.ts +2 -2
  45. package/src/test-utils/setup.ts +9 -5
@@ -114,74 +114,50 @@ describe("put", () => {
114
114
  const before = yield sandbox.snapshot();
115
115
  yield new Simple({ foo: "hi", bar: 42 }).put();
116
116
  expect(yield sandbox.diff(before)).toMatchInlineSnapshot(`
117
- Snapshot Diff:
118
- - First value
119
- + Second value
120
-
121
- - Object {}
122
- + Object {
123
- + "PK#hi__SK#42": Object {
124
- + "PK": "PK#hi",
125
- + "SK": "SK#42",
126
- + "_docVersion": 0,
127
- + "_tag": "Simple",
128
- + "bar": 42,
129
- + "foo": "hi",
130
- + },
131
- + }
132
- `);
117
+ + [PK#hi / SK#42]
118
+ + PK: "PK#hi"
119
+ + SK: "SK#42"
120
+ + _docVersion: 0
121
+ + _tag: "Simple"
122
+ + bar: 42
123
+ + foo: "hi"
124
+ `);
133
125
  }));
134
126
  test("it inserts a model with single gsi", () => tslib_1.__awaiter(void 0, void 0, void 0, function* () {
135
127
  const before = yield sandbox.snapshot();
136
128
  yield new SingleGSI({ foo: "yes", bar: 42 }).put();
137
129
  expect(yield sandbox.diff(before)).toMatchInlineSnapshot(`
138
- Snapshot Diff:
139
- - First value
140
- + Second value
141
-
142
- - Object {}
143
- + Object {
144
- + "PK#yes__SK#42": Object {
145
- + "GSI2PK": "GSI2PK#yesyes",
146
- + "GSI2SK": "GSI2SK#FIXED",
147
- + "PK": "PK#yes",
148
- + "SK": "SK#42",
149
- + "_docVersion": 0,
150
- + "_tag": "SingleGSI",
151
- + "bar": 42,
152
- + "foo": "yes",
153
- + },
154
- + }
155
- `);
130
+ + [PK#yes / SK#42]
131
+ + PK: "PK#yes"
132
+ + SK: "SK#42"
133
+ + GSI2PK: "GSI2PK#yesyes"
134
+ + GSI2SK: "GSI2SK#FIXED"
135
+ + _docVersion: 0
136
+ + _tag: "SingleGSI"
137
+ + bar: 42
138
+ + foo: "yes"
139
+ `);
156
140
  }));
157
141
  test("it inserts a model with multiple gsi", () => tslib_1.__awaiter(void 0, void 0, void 0, function* () {
158
142
  const before = yield sandbox.snapshot();
159
143
  yield new MultiGSI({ foo: "yes", bar: 42 }).put();
160
144
  expect(yield sandbox.diff(before)).toMatchInlineSnapshot(`
161
- Snapshot Diff:
162
- - First value
163
- + Second value
164
-
165
- - Object {}
166
- + Object {
167
- + "PK#yes__SK#42": Object {
168
- + "GSI2PK": "GSI2PK#yesyes",
169
- + "GSI2SK": "GSI2SK#FIXED",
170
- + "GSI3PK": "GSI3PK#FIXED",
171
- + "GSI3SK": "GSI3SK#4242",
172
- + "GSI4PK": "GSI4PK#FIXED",
173
- + "GSI4SK": "GSI4SK#4242",
174
- + "GSI5PK": "GSI5PK#FIXED",
175
- + "GSI5SK": "GSI5SK#4242",
176
- + "PK": "PK#yes",
177
- + "SK": "SK#42",
178
- + "_docVersion": 0,
179
- + "_tag": "MultiGSI",
180
- + "bar": 42,
181
- + "foo": "yes",
182
- + },
183
- + }
184
- `);
145
+ + [PK#yes / SK#42]
146
+ + PK: "PK#yes"
147
+ + SK: "SK#42"
148
+ + GSI2PK: "GSI2PK#yesyes"
149
+ + GSI2SK: "GSI2SK#FIXED"
150
+ + GSI3PK: "GSI3PK#FIXED"
151
+ + GSI3SK: "GSI3SK#4242"
152
+ + GSI4PK: "GSI4PK#FIXED"
153
+ + GSI4SK: "GSI4SK#4242"
154
+ + GSI5PK: "GSI5PK#FIXED"
155
+ + GSI5SK: "GSI5SK#4242"
156
+ + _docVersion: 0
157
+ + _tag: "MultiGSI"
158
+ + bar: 42
159
+ + foo: "yes"
160
+ `);
185
161
  }));
186
162
  test("it throws KeyExistsError if item exists", () => tslib_1.__awaiter(void 0, void 0, void 0, function* () {
187
163
  yield new MultiGSI({ foo: "yes", bar: 42 }).put();
@@ -197,74 +173,50 @@ describe("put", () => {
197
173
  const before = yield sandbox.snapshot();
198
174
  yield Simple.put(new Simple({ foo: "hi", bar: 42 }));
199
175
  expect(yield sandbox.diff(before)).toMatchInlineSnapshot(`
200
- Snapshot Diff:
201
- - First value
202
- + Second value
203
-
204
- - Object {}
205
- + Object {
206
- + "PK#hi__SK#42": Object {
207
- + "PK": "PK#hi",
208
- + "SK": "SK#42",
209
- + "_docVersion": 0,
210
- + "_tag": "Simple",
211
- + "bar": 42,
212
- + "foo": "hi",
213
- + },
214
- + }
215
- `);
176
+ + [PK#hi / SK#42]
177
+ + PK: "PK#hi"
178
+ + SK: "SK#42"
179
+ + _docVersion: 0
180
+ + _tag: "Simple"
181
+ + bar: 42
182
+ + foo: "hi"
183
+ `);
216
184
  }));
217
185
  test("it inserts a model with single gsi", () => tslib_1.__awaiter(void 0, void 0, void 0, function* () {
218
186
  const before = yield sandbox.snapshot();
219
187
  yield SingleGSI.put(new SingleGSI({ foo: "yes", bar: 42 }));
220
188
  expect(yield sandbox.diff(before)).toMatchInlineSnapshot(`
221
- Snapshot Diff:
222
- - First value
223
- + Second value
224
-
225
- - Object {}
226
- + Object {
227
- + "PK#yes__SK#42": Object {
228
- + "GSI2PK": "GSI2PK#yesyes",
229
- + "GSI2SK": "GSI2SK#FIXED",
230
- + "PK": "PK#yes",
231
- + "SK": "SK#42",
232
- + "_docVersion": 0,
233
- + "_tag": "SingleGSI",
234
- + "bar": 42,
235
- + "foo": "yes",
236
- + },
237
- + }
238
- `);
189
+ + [PK#yes / SK#42]
190
+ + PK: "PK#yes"
191
+ + SK: "SK#42"
192
+ + GSI2PK: "GSI2PK#yesyes"
193
+ + GSI2SK: "GSI2SK#FIXED"
194
+ + _docVersion: 0
195
+ + _tag: "SingleGSI"
196
+ + bar: 42
197
+ + foo: "yes"
198
+ `);
239
199
  }));
240
200
  test("it inserts a model with multiple gsi", () => tslib_1.__awaiter(void 0, void 0, void 0, function* () {
241
201
  const before = yield sandbox.snapshot();
242
202
  yield MultiGSI.put(new MultiGSI({ foo: "yes", bar: 42 }));
243
203
  expect(yield sandbox.diff(before)).toMatchInlineSnapshot(`
244
- Snapshot Diff:
245
- - First value
246
- + Second value
247
-
248
- - Object {}
249
- + Object {
250
- + "PK#yes__SK#42": Object {
251
- + "GSI2PK": "GSI2PK#yesyes",
252
- + "GSI2SK": "GSI2SK#FIXED",
253
- + "GSI3PK": "GSI3PK#FIXED",
254
- + "GSI3SK": "GSI3SK#4242",
255
- + "GSI4PK": "GSI4PK#FIXED",
256
- + "GSI4SK": "GSI4SK#4242",
257
- + "GSI5PK": "GSI5PK#FIXED",
258
- + "GSI5SK": "GSI5SK#4242",
259
- + "PK": "PK#yes",
260
- + "SK": "SK#42",
261
- + "_docVersion": 0,
262
- + "_tag": "MultiGSI",
263
- + "bar": 42,
264
- + "foo": "yes",
265
- + },
266
- + }
267
- `);
204
+ + [PK#yes / SK#42]
205
+ + PK: "PK#yes"
206
+ + SK: "SK#42"
207
+ + GSI2PK: "GSI2PK#yesyes"
208
+ + GSI2SK: "GSI2SK#FIXED"
209
+ + GSI3PK: "GSI3PK#FIXED"
210
+ + GSI3SK: "GSI3SK#4242"
211
+ + GSI4PK: "GSI4PK#FIXED"
212
+ + GSI4SK: "GSI4SK#4242"
213
+ + GSI5PK: "GSI5PK#FIXED"
214
+ + GSI5SK: "GSI5SK#4242"
215
+ + _docVersion: 0
216
+ + _tag: "MultiGSI"
217
+ + bar: 42
218
+ + foo: "yes"
219
+ `);
268
220
  }));
269
221
  test("it throws KeyExistsError if item exists", () => tslib_1.__awaiter(void 0, void 0, void 0, function* () {
270
222
  yield MultiGSI.put(new MultiGSI({ foo: "yes", bar: 42 }));
@@ -339,22 +291,14 @@ describe("delete", () => {
339
291
  });
340
292
  expect(result).toBeNull();
341
293
  expect(yield sandbox.diff(before)).toMatchInlineSnapshot(`
342
- Snapshot Diff:
343
- - First value
344
- + Second value
345
-
346
- - Object {
347
- - "PK#hi__SK#432": Object {
348
- - "PK": "PK#hi",
349
- - "SK": "SK#432",
350
- - "_docVersion": 0,
351
- - "_tag": "Simple",
352
- - "bar": 432,
353
- - "foo": "hi",
354
- - },
355
- - }
356
- + Object {}
357
- `);
294
+ - [PK#hi / SK#432]
295
+ - PK: "PK#hi"
296
+ - SK: "SK#432"
297
+ - _docVersion: 0
298
+ - _tag: "Simple"
299
+ - bar: 432
300
+ - foo: "hi"
301
+ `);
358
302
  }));
359
303
  });
360
304
  describe("via model", () => {
@@ -367,22 +311,14 @@ describe("delete", () => {
367
311
  });
368
312
  expect(result).toBeNull();
369
313
  expect(yield sandbox.diff(before)).toMatchInlineSnapshot(`
370
- Snapshot Diff:
371
- - First value
372
- + Second value
373
-
374
- - Object {
375
- - "PK#hi__SK#432": Object {
376
- - "PK": "PK#hi",
377
- - "SK": "SK#432",
378
- - "_docVersion": 0,
379
- - "_tag": "Simple",
380
- - "bar": 432,
381
- - "foo": "hi",
382
- - },
383
- - }
384
- + Object {}
385
- `);
314
+ - [PK#hi / SK#432]
315
+ - PK: "PK#hi"
316
+ - SK: "SK#432"
317
+ - _docVersion: 0
318
+ - _tag: "Simple"
319
+ - bar: 432
320
+ - foo: "hi"
321
+ `);
386
322
  }));
387
323
  });
388
324
  describe("via instance", () => {
@@ -392,22 +328,14 @@ describe("delete", () => {
392
328
  const result = yield item.delete();
393
329
  expect(result).toBeNull();
394
330
  expect(yield sandbox.diff(before)).toMatchInlineSnapshot(`
395
- Snapshot Diff:
396
- - First value
397
- + Second value
398
-
399
- - Object {
400
- - "PK#hi__SK#432": Object {
401
- - "PK": "PK#hi",
402
- - "SK": "SK#432",
403
- - "_docVersion": 0,
404
- - "_tag": "Simple",
405
- - "bar": 432,
406
- - "foo": "hi",
407
- - },
408
- - }
409
- + Object {}
410
- `);
331
+ - [PK#hi / SK#432]
332
+ - PK: "PK#hi"
333
+ - SK: "SK#432"
334
+ - _docVersion: 0
335
+ - _tag: "Simple"
336
+ - bar: 432
337
+ - foo: "hi"
338
+ `);
411
339
  }));
412
340
  });
413
341
  });
@@ -432,53 +360,56 @@ describe("softDelete", () => {
432
360
  }
433
361
  `);
434
362
  expect(yield sandbox.diff(before)).toMatchInlineSnapshot(`
435
- Snapshot Diff:
436
- - First value
437
- + Second value
363
+ + [$$DELETED$$PK#hello / $$DELETED$$SK#42]
364
+ + PK: "$$DELETED$$PK#hello"
365
+ + SK: "$$DELETED$$SK#42"
366
+ + GSI2PK: "$$DELETED$$GSI2PK#hellohello"
367
+ + GSI2SK: "$$DELETED$$GSI2SK#FIXED"
368
+ + GSI3PK: "$$DELETED$$GSI3PK#FIXED"
369
+ + GSI3SK: "$$DELETED$$GSI3SK#4242"
370
+ + GSI4PK: "$$DELETED$$GSI4PK#FIXED"
371
+ + GSI4SK: "$$DELETED$$GSI4SK#4242"
372
+ + GSI5PK: "$$DELETED$$GSI5PK#FIXED"
373
+ + GSI5SK: "$$DELETED$$GSI5SK#4242"
374
+ + _deletedAt: "2021-05-01T08:00:00.000Z"
375
+ + _docVersion: 0
376
+ + _tag: "MultiGSI"
377
+ + bar: 42
378
+ + foo: "hello"
438
379
 
439
- @@ -1,25 +1,27 @@
440
- Object {
441
- - "PK#hello__SK#42": Object {
442
- - "GSI2PK": "GSI2PK#hellohello",
443
- - "GSI2SK": "GSI2SK#FIXED",
444
- - "GSI3PK": "GSI3PK#FIXED",
445
- - "GSI3SK": "GSI3SK#4242",
446
- - "GSI4PK": "GSI4PK#FIXED",
447
- - "GSI4SK": "GSI4SK#4242",
448
- - "GSI5PK": "GSI5PK#FIXED",
449
- - "GSI5SK": "GSI5SK#4242",
450
- - "PK": "PK#hello",
451
- - "SK": "SK#42",
452
- + "$$DELETED$$PK#hello__$$DELETED$$SK#42": Object {
453
- + "GSI2PK": "$$DELETED$$GSI2PK#hellohello",
454
- + "GSI2SK": "$$DELETED$$GSI2SK#FIXED",
455
- + "GSI3PK": "$$DELETED$$GSI3PK#FIXED",
456
- + "GSI3SK": "$$DELETED$$GSI3SK#4242",
457
- + "GSI4PK": "$$DELETED$$GSI4PK#FIXED",
458
- + "GSI4SK": "$$DELETED$$GSI4SK#4242",
459
- + "GSI5PK": "$$DELETED$$GSI5PK#FIXED",
460
- + "GSI5SK": "$$DELETED$$GSI5SK#4242",
461
- + "PK": "$$DELETED$$PK#hello",
462
- + "SK": "$$DELETED$$SK#42",
463
- + "_deletedAt": "2021-05-01T08:00:00.000Z",
464
- "_docVersion": 0,
465
- "_tag": "MultiGSI",
466
- "bar": 42,
467
- "foo": "hello",
468
- },
469
- - "PK#hi__SK#432": Object {
470
- - "PK": "PK#hi",
471
- - "SK": "SK#432",
472
- + "$$DELETED$$PK#hi__$$DELETED$$SK#432": Object {
473
- + "PK": "$$DELETED$$PK#hi",
474
- + "SK": "$$DELETED$$SK#432",
475
- + "_deletedAt": "2021-05-01T08:00:00.000Z",
476
- "_docVersion": 0,
477
- "_tag": "Simple",
478
- "bar": 432,
479
- "foo": "hi",
480
- },
481
- `);
380
+ + [$$DELETED$$PK#hi / $$DELETED$$SK#432]
381
+ + PK: "$$DELETED$$PK#hi"
382
+ + SK: "$$DELETED$$SK#432"
383
+ + _deletedAt: "2021-05-01T08:00:00.000Z"
384
+ + _docVersion: 0
385
+ + _tag: "Simple"
386
+ + bar: 432
387
+ + foo: "hi"
388
+
389
+ - [PK#hello / SK#42]
390
+ - PK: "PK#hello"
391
+ - SK: "SK#42"
392
+ - GSI2PK: "GSI2PK#hellohello"
393
+ - GSI2SK: "GSI2SK#FIXED"
394
+ - GSI3PK: "GSI3PK#FIXED"
395
+ - GSI3SK: "GSI3SK#4242"
396
+ - GSI4PK: "GSI4PK#FIXED"
397
+ - GSI4SK: "GSI4SK#4242"
398
+ - GSI5PK: "GSI5PK#FIXED"
399
+ - GSI5SK: "GSI5SK#4242"
400
+ - _docVersion: 0
401
+ - _tag: "MultiGSI"
402
+ - bar: 42
403
+ - foo: "hello"
404
+
405
+ - [PK#hi / SK#432]
406
+ - PK: "PK#hi"
407
+ - SK: "SK#432"
408
+ - _docVersion: 0
409
+ - _tag: "Simple"
410
+ - bar: 432
411
+ - foo: "hi"
412
+ `);
482
413
  }));
483
414
  });
484
415
  describe("via model", () => {
@@ -493,25 +424,23 @@ describe("softDelete", () => {
493
424
  }
494
425
  `);
495
426
  expect(yield sandbox.diff(before)).toMatchInlineSnapshot(`
496
- Snapshot Diff:
497
- - First value
498
- + Second value
427
+ + [$$DELETED$$PK#hi / $$DELETED$$SK#432]
428
+ + PK: "$$DELETED$$PK#hi"
429
+ + SK: "$$DELETED$$SK#432"
430
+ + _deletedAt: "2021-05-01T08:00:00.000Z"
431
+ + _docVersion: 0
432
+ + _tag: "Simple"
433
+ + bar: 432
434
+ + foo: "hi"
499
435
 
500
- @@ -1,9 +1,10 @@
501
- Object {
502
- - "PK#hi__SK#432": Object {
503
- - "PK": "PK#hi",
504
- - "SK": "SK#432",
505
- + "$$DELETED$$PK#hi__$$DELETED$$SK#432": Object {
506
- + "PK": "$$DELETED$$PK#hi",
507
- + "SK": "$$DELETED$$SK#432",
508
- + "_deletedAt": "2021-05-01T08:00:00.000Z",
509
- "_docVersion": 0,
510
- "_tag": "Simple",
511
- "bar": 432,
512
- "foo": "hi",
513
- },
514
- `);
436
+ - [PK#hi / SK#432]
437
+ - PK: "PK#hi"
438
+ - SK: "SK#432"
439
+ - _docVersion: 0
440
+ - _tag: "Simple"
441
+ - bar: 432
442
+ - foo: "hi"
443
+ `);
515
444
  }));
516
445
  });
517
446
  describe("via instance", () => {
@@ -526,25 +455,23 @@ describe("softDelete", () => {
526
455
  }
527
456
  `);
528
457
  expect(yield sandbox.diff(before)).toMatchInlineSnapshot(`
529
- Snapshot Diff:
530
- - First value
531
- + Second value
458
+ + [$$DELETED$$PK#hi / $$DELETED$$SK#432]
459
+ + PK: "$$DELETED$$PK#hi"
460
+ + SK: "$$DELETED$$SK#432"
461
+ + _deletedAt: "2021-05-01T08:00:00.000Z"
462
+ + _docVersion: 0
463
+ + _tag: "Simple"
464
+ + bar: 432
465
+ + foo: "hi"
532
466
 
533
- @@ -1,9 +1,10 @@
534
- Object {
535
- - "PK#hi__SK#432": Object {
536
- - "PK": "PK#hi",
537
- - "SK": "SK#432",
538
- + "$$DELETED$$PK#hi__$$DELETED$$SK#432": Object {
539
- + "PK": "$$DELETED$$PK#hi",
540
- + "SK": "$$DELETED$$SK#432",
541
- + "_deletedAt": "2021-05-01T08:00:00.000Z",
542
- "_docVersion": 0,
543
- "_tag": "Simple",
544
- "bar": 432,
545
- "foo": "hi",
546
- },
547
- `);
467
+ - [PK#hi / SK#432]
468
+ - PK: "PK#hi"
469
+ - SK: "SK#432"
470
+ - _docVersion: 0
471
+ - _tag: "Simple"
472
+ - bar: 432
473
+ - foo: "hi"
474
+ `);
548
475
  }));
549
476
  });
550
477
  });
@@ -617,23 +544,16 @@ describe("update", () => {
617
544
  }
618
545
  `);
619
546
  expect(yield sandbox.diff(before)).toMatchInlineSnapshot(`
620
- Snapshot Diff:
621
- - First value
622
- + Second value
623
-
624
- Object {
625
- "FIXEDPK__FIXEDSK": Object {
626
- "PK": "FIXEDPK",
627
- "SK": "FIXEDSK",
628
- - "_docVersion": 0,
629
- + "_docVersion": 1,
630
- "_tag": "InPlace",
631
- "bar": 1,
632
- - "foo": "hello",
633
- + "foo": "ciao",
634
- },
635
- }
636
- `);
547
+ [FIXEDPK / FIXEDSK]
548
+ PK: "FIXEDPK"
549
+ SK: "FIXEDSK"
550
+ - _docVersion: 0
551
+ + _docVersion: 1
552
+ _tag: "InPlace"
553
+ bar: 1
554
+ - foo: "hello"
555
+ + foo: "ciao"
556
+ `);
637
557
  }));
638
558
  });
639
559
  });
@@ -651,88 +571,173 @@ describe("applyUpdate", () => {
651
571
  `);
652
572
  yield client.bulk([updateOp]);
653
573
  expect(yield sandbox.diff(before)).toMatchInlineSnapshot(`
654
- Snapshot Diff:
655
- - First value
656
- + Second value
657
-
658
- Object {
659
- "PK__SK": Object {
660
- "PK": "PK",
661
- "SK": "SK",
662
- - "_docVersion": 0,
663
- + "_docVersion": 1,
664
- "_tag": "A",
665
- - "a": 1,
666
- + "a": 2,
667
- "pk": "PK",
668
- "sk": "SK",
669
- },
670
- }
671
- `);
574
+ [PK / SK]
575
+ PK: "PK"
576
+ SK: "SK"
577
+ - _docVersion: 0
578
+ + _docVersion: 1
579
+ _tag: "A"
580
+ - a: 1
581
+ + a: 2
582
+ pk: "PK"
583
+ sk: "SK"
584
+ `);
672
585
  }));
673
586
  });
674
587
  describe("query", () => {
675
- test("it returns empty results", () => tslib_1.__awaiter(void 0, void 0, void 0, function* () {
676
- expect(yield client.query({
677
- KeyConditionExpression: `PK = :pk and begins_with(SK, :sk)`,
678
- ExpressionAttributeValues: { ":pk": "abc", ":sk": "SORT" }
679
- }, { a: A, b: B, union: Union })).toMatchInlineSnapshot(`
680
- Object {
681
- "_unknown": Array [],
682
- "a": Array [],
683
- "b": Array [],
684
- "meta": Object {
685
- "lastEvaluatedKey": undefined,
686
- },
687
- "union": Array [],
688
- }
689
- `);
690
- }));
691
- test("it returns unknown results", () => tslib_1.__awaiter(void 0, void 0, void 0, function* () {
692
- yield sandbox.seed({ PK: "abc", SK: "SORT#1", doesnt: "match" });
693
- expect(yield client.query({
694
- KeyConditionExpression: `PK = :pk and begins_with(SK, :sk)`,
695
- ExpressionAttributeValues: { ":pk": "abc", ":sk": "SORT#" }
696
- }, { a: A, b: B, union: Union })).toMatchInlineSnapshot(`
697
- Object {
698
- "_unknown": Array [
699
- Object {
700
- "PK": "abc",
701
- "SK": "SORT#1",
702
- "doesnt": "match",
703
- },
704
- ],
705
- "a": Array [],
706
- "b": Array [],
707
- "meta": Object {
708
- "lastEvaluatedKey": undefined,
709
- },
710
- "union": Array [],
711
- }
712
- `);
713
- }));
714
- test("it returns results", () => tslib_1.__awaiter(void 0, void 0, void 0, function* () {
715
- yield sandbox.seed(new A({ pk: "abc", sk: "SORT#1", a: 1 }), new A({ pk: "abc", sk: "SORT#2", a: 2 }), new B({ pk: "abc", sk: "SORT#3", b: "hi" }), { PK: "abc", SK: "SORT#4", probably: "unknown" }, new C({ pk: "abc", sk: "SORT#5", c: "hi" }), new D({ pk: "abc", sk: "SORT#6", d: "hi" }));
716
- const { a, b, union, _unknown, meta } = yield client.query({
717
- KeyConditionExpression: `PK = :pk and begins_with(SK, :sk)`,
718
- ExpressionAttributeValues: { ":pk": "abc", ":sk": "SORT#" }
719
- }, { a: A, b: B, union: Union });
720
- expect({
721
- meta: meta,
722
- _unknown: _unknown,
723
- a: a.map(item => item.values()),
724
- b: b.map(item => item.values()),
725
- union: union.map(item => item.values())
726
- }).toMatchInlineSnapshot(`
727
- Object {
728
- "_unknown": Array [
729
- Object {
730
- "PK": "abc",
731
- "SK": "SORT#4",
732
- "probably": "unknown",
733
- },
734
- ],
735
- "a": Array [
588
+ describe("via client", () => {
589
+ test("it returns empty results", () => tslib_1.__awaiter(void 0, void 0, void 0, function* () {
590
+ expect(yield client.query({
591
+ KeyConditionExpression: `PK = :pk and begins_with(SK, :sk)`,
592
+ ExpressionAttributeValues: { ":pk": "abc", ":sk": "SORT" }
593
+ }, { a: A, b: B, union: Union })).toMatchInlineSnapshot(`
594
+ Object {
595
+ "_unknown": Array [],
596
+ "a": Array [],
597
+ "b": Array [],
598
+ "meta": Object {
599
+ "lastEvaluatedKey": undefined,
600
+ },
601
+ "union": Array [],
602
+ }
603
+ `);
604
+ }));
605
+ test("it returns unknown results", () => tslib_1.__awaiter(void 0, void 0, void 0, function* () {
606
+ yield sandbox.seed({ PK: "abc", SK: "SORT#1", doesnt: "match" });
607
+ expect(yield client.query({
608
+ KeyConditionExpression: `PK = :pk and begins_with(SK, :sk)`,
609
+ ExpressionAttributeValues: { ":pk": "abc", ":sk": "SORT#" }
610
+ }, { a: A, b: B, union: Union })).toMatchInlineSnapshot(`
611
+ Object {
612
+ "_unknown": Array [
613
+ Object {
614
+ "PK": "abc",
615
+ "SK": "SORT#1",
616
+ "doesnt": "match",
617
+ },
618
+ ],
619
+ "a": Array [],
620
+ "b": Array [],
621
+ "meta": Object {
622
+ "lastEvaluatedKey": undefined,
623
+ },
624
+ "union": Array [],
625
+ }
626
+ `);
627
+ }));
628
+ test("it returns results", () => tslib_1.__awaiter(void 0, void 0, void 0, function* () {
629
+ yield sandbox.seed(new A({ pk: "abc", sk: "SORT#1", a: 1 }), new A({ pk: "abc", sk: "SORT#2", a: 2 }), new B({ pk: "abc", sk: "SORT#3", b: "hi" }), { PK: "abc", SK: "SORT#4", probably: "unknown" }, new C({ pk: "abc", sk: "SORT#5", c: "hi" }), new D({ pk: "abc", sk: "SORT#6", d: "hi" }));
630
+ const { a, b, union, _unknown, meta } = yield client.query({
631
+ KeyConditionExpression: `PK = :pk and begins_with(SK, :sk)`,
632
+ ExpressionAttributeValues: { ":pk": "abc", ":sk": "SORT#" }
633
+ }, { a: A, b: B, union: Union });
634
+ expect({
635
+ meta: meta,
636
+ _unknown: _unknown,
637
+ a: a.map(item => item.values()),
638
+ b: b.map(item => item.values()),
639
+ union: union.map(item => item.values())
640
+ }).toMatchInlineSnapshot(`
641
+ Object {
642
+ "_unknown": Array [
643
+ Object {
644
+ "PK": "abc",
645
+ "SK": "SORT#4",
646
+ "probably": "unknown",
647
+ },
648
+ ],
649
+ "a": Array [
650
+ Object {
651
+ "a": 1,
652
+ "pk": "abc",
653
+ "sk": "SORT#1",
654
+ },
655
+ Object {
656
+ "a": 2,
657
+ "pk": "abc",
658
+ "sk": "SORT#2",
659
+ },
660
+ ],
661
+ "b": Array [
662
+ Object {
663
+ "b": "hi",
664
+ "pk": "abc",
665
+ "sk": "SORT#3",
666
+ },
667
+ ],
668
+ "meta": Object {
669
+ "lastEvaluatedKey": undefined,
670
+ },
671
+ "union": Array [
672
+ Object {
673
+ "c": "hi",
674
+ "pk": "abc",
675
+ "sk": "SORT#5",
676
+ },
677
+ Object {
678
+ "d": "hi",
679
+ "pk": "abc",
680
+ "sk": "SORT#6",
681
+ },
682
+ ],
683
+ }
684
+ `);
685
+ }));
686
+ test("it paginates", () => tslib_1.__awaiter(void 0, void 0, void 0, function* () {
687
+ yield sandbox.seed(...Array.from({ length: 20 }).map((_, i) => new A({ pk: "abc", sk: `SORT#${String(i).padStart(2, "0")}`, a: i })), ...Array.from({ length: 20 }).map((_, i) => new B({ pk: "abc", sk: `SORT#${i + 20}`, b: "bar" })));
688
+ const firstPage = yield client.query({
689
+ KeyConditionExpression: `PK = :pk and begins_with(SK, :sk)`,
690
+ ExpressionAttributeValues: { ":pk": "abc", ":sk": "SORT#" },
691
+ Limit: 30
692
+ }, { a: A, b: B });
693
+ expect(firstPage.a.length).toBe(20);
694
+ expect(firstPage.b.length).toBe(10);
695
+ expect(firstPage._unknown.length).toBe(0);
696
+ expect(firstPage.meta.lastEvaluatedKey).not.toBeUndefined();
697
+ const secondPage = yield client.query({
698
+ KeyConditionExpression: `PK = :pk and begins_with(SK, :sk)`,
699
+ ExpressionAttributeValues: { ":pk": "abc", ":sk": "SORT#" },
700
+ Limit: 30,
701
+ ExclusiveStartKey: firstPage.meta.lastEvaluatedKey
702
+ }, { a: A, b: B });
703
+ expect(secondPage.a.length).toBe(0);
704
+ expect(secondPage.b.length).toBe(10);
705
+ expect(secondPage._unknown.length).toBe(0);
706
+ expect(secondPage.meta.lastEvaluatedKey).toBeUndefined();
707
+ }));
708
+ test("it fetches all pages automatically", () => tslib_1.__awaiter(void 0, void 0, void 0, function* () {
709
+ yield sandbox.seed(...Array.from({ length: 20 }).map((_, i) => new A({ pk: "abc", sk: `SORT#${String(i).padStart(2, "0")}`, a: i })), ...Array.from({ length: 20 }).map((_, i) => new B({ pk: "abc", sk: `SORT#${i + 20}`, b: "bar" })));
710
+ const { a, b, meta, _unknown } = yield client.query({
711
+ KeyConditionExpression: `PK = :pk and begins_with(SK, :sk)`,
712
+ ExpressionAttributeValues: { ":pk": "abc", ":sk": "SORT#" },
713
+ FetchAllPages: true,
714
+ // You wouldn't set a limit in a real-world use case here to optimize fetching all items.
715
+ Limit: 10
716
+ }, { a: A, b: B });
717
+ expect(a.length).toBe(20);
718
+ expect(b.length).toBe(20);
719
+ expect(_unknown.length).toBe(0);
720
+ expect(meta.lastEvaluatedKey).toBeUndefined();
721
+ }));
722
+ });
723
+ describe("via model", () => {
724
+ test("it returns empty results for specific model", () => tslib_1.__awaiter(void 0, void 0, void 0, function* () {
725
+ const result = yield A.query({
726
+ KeyConditionExpression: `PK = :pk and begins_with(SK, :sk)`,
727
+ ExpressionAttributeValues: { ":pk": "abc", ":sk": "SORT" }
728
+ });
729
+ expect(result.length).toBe(0);
730
+ expect(result.meta).toEqual({ lastEvaluatedKey: undefined });
731
+ }));
732
+ test("it returns only matching model items", () => tslib_1.__awaiter(void 0, void 0, void 0, function* () {
733
+ yield sandbox.seed(new A({ pk: "abc", sk: "SORT#1", a: 1 }), new A({ pk: "abc", sk: "SORT#2", a: 2 }), new B({ pk: "abc", sk: "SORT#3", b: "hi" }), { PK: "abc", SK: "SORT#4", probably: "unknown" }, new C({ pk: "abc", sk: "SORT#5", c: "hi" }));
734
+ const result = yield A.query({
735
+ KeyConditionExpression: `PK = :pk and begins_with(SK, :sk)`,
736
+ ExpressionAttributeValues: { ":pk": "abc", ":sk": "SORT#" }
737
+ });
738
+ expect(result.length).toBe(2);
739
+ expect(result.map(item => item.values())).toMatchInlineSnapshot(`
740
+ Array [
736
741
  Object {
737
742
  "a": 1,
738
743
  "pk": "abc",
@@ -743,68 +748,108 @@ describe("query", () => {
743
748
  "pk": "abc",
744
749
  "sk": "SORT#2",
745
750
  },
746
- ],
747
- "b": Array [
748
- Object {
749
- "b": "hi",
750
- "pk": "abc",
751
- "sk": "SORT#3",
752
- },
753
- ],
754
- "meta": Object {
755
- "lastEvaluatedKey": undefined,
756
- },
757
- "union": Array [
758
- Object {
759
- "c": "hi",
760
- "pk": "abc",
761
- "sk": "SORT#5",
762
- },
763
- Object {
764
- "d": "hi",
765
- "pk": "abc",
766
- "sk": "SORT#6",
767
- },
768
- ],
769
- }
770
- `);
771
- }));
772
- test("it paginates", () => tslib_1.__awaiter(void 0, void 0, void 0, function* () {
773
- yield sandbox.seed(...Array.from({ length: 20 }).map((_, i) => new A({ pk: "abc", sk: `SORT#${String(i).padStart(2, "0")}`, a: i })), ...Array.from({ length: 20 }).map((_, i) => new B({ pk: "abc", sk: `SORT#${i + 20}`, b: "bar" })));
774
- const firstPage = yield client.query({
775
- KeyConditionExpression: `PK = :pk and begins_with(SK, :sk)`,
776
- ExpressionAttributeValues: { ":pk": "abc", ":sk": "SORT#" },
777
- Limit: 30
778
- }, { a: A, b: B });
779
- expect(firstPage.a.length).toBe(20);
780
- expect(firstPage.b.length).toBe(10);
781
- expect(firstPage._unknown.length).toBe(0);
782
- expect(firstPage.meta.lastEvaluatedKey).not.toBeUndefined();
783
- const secondPage = yield client.query({
784
- KeyConditionExpression: `PK = :pk and begins_with(SK, :sk)`,
785
- ExpressionAttributeValues: { ":pk": "abc", ":sk": "SORT#" },
786
- Limit: 30,
787
- ExclusiveStartKey: firstPage.meta.lastEvaluatedKey
788
- }, { a: A, b: B });
789
- expect(secondPage.a.length).toBe(0);
790
- expect(secondPage.b.length).toBe(10);
791
- expect(secondPage._unknown.length).toBe(0);
792
- expect(secondPage.meta.lastEvaluatedKey).toBeUndefined();
793
- }));
794
- test("it fetches all pages automatically", () => tslib_1.__awaiter(void 0, void 0, void 0, function* () {
795
- yield sandbox.seed(...Array.from({ length: 20 }).map((_, i) => new A({ pk: "abc", sk: `SORT#${String(i).padStart(2, "0")}`, a: i })), ...Array.from({ length: 20 }).map((_, i) => new B({ pk: "abc", sk: `SORT#${i + 20}`, b: "bar" })));
796
- const { a, b, meta, _unknown } = yield client.query({
797
- KeyConditionExpression: `PK = :pk and begins_with(SK, :sk)`,
798
- ExpressionAttributeValues: { ":pk": "abc", ":sk": "SORT#" },
799
- FetchAllPages: true,
800
- // You wouldn't set a limit in a real-world use case here to optimize fetching all items.
801
- Limit: 10
802
- }, { a: A, b: B });
803
- expect(a.length).toBe(20);
804
- expect(b.length).toBe(20);
805
- expect(_unknown.length).toBe(0);
806
- expect(meta.lastEvaluatedKey).toBeUndefined();
807
- }));
751
+ ]
752
+ `);
753
+ expect(result.meta).toEqual({ lastEvaluatedKey: undefined });
754
+ }));
755
+ test("it respects query parameters", () => tslib_1.__awaiter(void 0, void 0, void 0, function* () {
756
+ yield sandbox.seed(new A({ pk: "abc", sk: "SORT#1", a: 1 }), new A({ pk: "abc", sk: "SORT#2", a: 2 }), new A({ pk: "abc", sk: "SORT#3", a: 3 }), new A({ pk: "abc", sk: "SORT#4", a: 4 }));
757
+ const result = yield A.query({
758
+ KeyConditionExpression: `PK = :pk and begins_with(SK, :sk)`,
759
+ ExpressionAttributeValues: { ":pk": "abc", ":sk": "SORT#" },
760
+ Limit: 2
761
+ });
762
+ expect(result.length).toBe(2);
763
+ expect(result[0].a).toBe(1);
764
+ expect(result[1].a).toBe(2);
765
+ expect(result.meta.lastEvaluatedKey).toBeDefined();
766
+ }));
767
+ test("it fetches all pages when FetchAllPages is true", () => tslib_1.__awaiter(void 0, void 0, void 0, function* () {
768
+ yield sandbox.seed(...Array.from({ length: 15 }).map((_, i) => new A({ pk: "abc", sk: `SORT#${String(i).padStart(2, "0")}`, a: i })),
769
+ // Add some B items that should be ignored
770
+ new B({ pk: "abc", sk: "SORT#20", b: "ignored" }), new B({ pk: "abc", sk: "SORT#21", b: "ignored" }));
771
+ const result = yield A.query({
772
+ KeyConditionExpression: `PK = :pk and begins_with(SK, :sk)`,
773
+ ExpressionAttributeValues: { ":pk": "abc", ":sk": "SORT#" },
774
+ FetchAllPages: true,
775
+ Limit: 5 // Force pagination
776
+ });
777
+ expect(result.length).toBe(15); // Only A items
778
+ expect(result.map(item => item.a)).toEqual(Array.from({ length: 15 }, (_, i) => i));
779
+ expect(result.meta.lastEvaluatedKey).toBeUndefined();
780
+ }));
781
+ test("it works with different query conditions", () => tslib_1.__awaiter(void 0, void 0, void 0, function* () {
782
+ yield sandbox.seed(new A({ pk: "user1", sk: "post#1", a: 1 }), new A({ pk: "user1", sk: "post#2", a: 2 }), new A({ pk: "user1", sk: "comment#1", a: 3 }), new A({ pk: "user2", sk: "post#1", a: 4 }));
783
+ // Query for posts only
784
+ const posts = yield A.query({
785
+ KeyConditionExpression: `PK = :pk and begins_with(SK, :sk)`,
786
+ ExpressionAttributeValues: { ":pk": "user1", ":sk": "post#" }
787
+ });
788
+ expect(posts.length).toBe(2);
789
+ expect(posts.map(item => item.a).sort()).toEqual([1, 2]);
790
+ // Query for all user1 items
791
+ const allUser1 = yield A.query({
792
+ KeyConditionExpression: `PK = :pk`,
793
+ ExpressionAttributeValues: { ":pk": "user1" }
794
+ });
795
+ expect(allUser1.length).toBe(3);
796
+ expect(allUser1.map(item => item.a).sort()).toEqual([1, 2, 3]);
797
+ }));
798
+ test("it works with FilterExpression", () => tslib_1.__awaiter(void 0, void 0, void 0, function* () {
799
+ yield sandbox.seed(new A({ pk: "test", sk: "item#1", a: 1 }), new A({ pk: "test", sk: "item#2", a: 2 }), new A({ pk: "test", sk: "item#3", a: 3 }), new A({ pk: "test", sk: "item#4", a: 4 }));
800
+ const result = yield A.query({
801
+ KeyConditionExpression: `PK = :pk`,
802
+ FilterExpression: `a > :min`,
803
+ ExpressionAttributeValues: { ":pk": "test", ":min": 2 }
804
+ });
805
+ expect(result.length).toBe(2);
806
+ expect(result.map(item => item.a).sort()).toEqual([3, 4]);
807
+ }));
808
+ });
809
+ describe("via union", () => {
810
+ test("it returns empty results for union", () => tslib_1.__awaiter(void 0, void 0, void 0, function* () {
811
+ const result = yield Union.query({
812
+ KeyConditionExpression: `PK = :pk and begins_with(SK, :sk)`,
813
+ ExpressionAttributeValues: { ":pk": "abc", ":sk": "SORT" }
814
+ });
815
+ expect(result.length).toBe(0);
816
+ expect(result.meta).toEqual({ lastEvaluatedKey: undefined });
817
+ }));
818
+ test("it returns only union model items", () => tslib_1.__awaiter(void 0, void 0, void 0, function* () {
819
+ yield sandbox.seed(new A({ pk: "abc", sk: "SORT#1", a: 1 }), new B({ pk: "abc", sk: "SORT#2", b: "hi" }), new C({ pk: "abc", sk: "SORT#3", c: "c1" }), new D({ pk: "abc", sk: "SORT#4", d: "d1" }), { PK: "abc", SK: "SORT#5", unknown: "data" });
820
+ const result = yield Union.query({
821
+ KeyConditionExpression: `PK = :pk and begins_with(SK, :sk)`,
822
+ ExpressionAttributeValues: { ":pk": "abc", ":sk": "SORT#" }
823
+ });
824
+ expect(result.length).toBe(2); // Only C and D items (union members)
825
+ expect(result[0]).toBeInstanceOf(C);
826
+ expect(result[1]).toBeInstanceOf(D);
827
+ expect(result.meta).toEqual({ lastEvaluatedKey: undefined });
828
+ }));
829
+ test("it fetches all pages for union when FetchAllPages is true", () => tslib_1.__awaiter(void 0, void 0, void 0, function* () {
830
+ yield sandbox.seed(...Array.from({ length: 10 }).map((_, i) => new C({
831
+ pk: "abc",
832
+ sk: `SORT#${String(i).padStart(2, "0")}`,
833
+ c: `c${i}`
834
+ })), ...Array.from({ length: 10 }).map((_, i) => new D({
835
+ pk: "abc",
836
+ sk: `SORT#${String(i + 10).padStart(2, "0")}`,
837
+ d: `d${i}`
838
+ })),
839
+ // Add some non-union items that should be ignored
840
+ new A({ pk: "abc", sk: "SORT#30", a: 1 }), new B({ pk: "abc", sk: "SORT#31", b: "ignored" }));
841
+ const result = yield Union.query({
842
+ KeyConditionExpression: `PK = :pk and begins_with(SK, :sk)`,
843
+ ExpressionAttributeValues: { ":pk": "abc", ":sk": "SORT#" },
844
+ FetchAllPages: true,
845
+ Limit: 5 // Force pagination
846
+ });
847
+ expect(result.length).toBe(20); // Only union items (C and D)
848
+ expect(result.filter((item) => item instanceof C).length).toBe(10);
849
+ expect(result.filter((item) => item instanceof D).length).toBe(10);
850
+ expect(result.meta.lastEvaluatedKey).toBeUndefined();
851
+ }));
852
+ });
808
853
  });
809
854
  describe("bulk", () => {
810
855
  describe("< 100 elements (true transaction)", () => {
@@ -834,97 +879,82 @@ describe("bulk", () => {
834
879
  })
835
880
  ]);
836
881
  expect(yield sandbox.diff(before)).toMatchInlineSnapshot(`
837
- Snapshot Diff:
838
- - First value
839
- + Second value
882
+ + [$$DELETED$$PK#3 / $$DELETED$$SK#3]
883
+ + PK: "$$DELETED$$PK#3"
884
+ + SK: "$$DELETED$$SK#3"
885
+ + _deletedAt: "2021-05-01T08:00:00.000Z"
886
+ + _docVersion: 0
887
+ + _tag: "B"
888
+ + b: "bar"
889
+ + pk: "PK#3"
890
+ + sk: "SK#3"
840
891
 
841
- @@ -1,32 +1,24 @@
842
- Object {
843
- + "$$DELETED$$PK#3__$$DELETED$$SK#3": Object {
844
- + "PK": "$$DELETED$$PK#3",
845
- + "SK": "$$DELETED$$SK#3",
846
- + "_deletedAt": "2021-05-01T08:00:00.000Z",
847
- + "_docVersion": 0,
848
- + "_tag": "B",
849
- + "b": "bar",
850
- + "pk": "PK#3",
851
- + "sk": "SK#3",
852
- + },
853
- "PK#1__SK#1": Object {
854
- "PK": "PK#1",
855
- "SK": "SK#1",
856
- "_docVersion": 0,
857
- "_tag": "A",
858
- - "a": 1,
859
- + "a": -1,
860
- "pk": "PK#1",
861
- "sk": "SK#1",
862
- - },
863
- - "PK#2__SK#2": Object {
864
- - "PK": "PK#2",
865
- - "SK": "SK#2",
866
- - "_docVersion": 0,
867
- - "_tag": "A",
868
- - "a": 2,
869
- - "pk": "PK#2",
870
- - "sk": "SK#2",
871
- - },
872
- - "PK#3__SK#3": Object {
873
- - "PK": "PK#3",
874
- - "SK": "SK#3",
875
- - "_docVersion": 0,
876
- - "_tag": "B",
877
- - "b": "bar",
878
- - "pk": "PK#3",
879
- - "sk": "SK#3",
880
- },
881
- "PK#COND__SK#COND": Object {
882
- "PK": "PK#COND",
883
- "SK": "SK#COND",
884
- "_docVersion": 0,
885
- @@ -36,12 +28,39 @@
886
- "sk": "SK#COND",
887
- },
888
- "PK#UPDATE__SK#UPDATE": Object {
889
- "PK": "PK#UPDATE",
890
- "SK": "SK#UPDATE",
891
- - "_docVersion": 0,
892
- + "_docVersion": 1,
893
- "_tag": "B",
894
- - "b": "bar",
895
- + "b": "baz",
896
- "pk": "PK#UPDATE",
897
- "sk": "SK#UPDATE",
898
- + },
899
- + "PK4__PK4": Object {
900
- + "PK": "PK4",
901
- + "SK": "PK4",
902
- + "_docVersion": 0,
903
- + "_tag": "A",
904
- + "a": 4,
905
- + "pk": "PK4",
906
- + "sk": "PK4",
907
- + },
908
- + "PK5__PK5": Object {
909
- + "PK": "PK5",
910
- + "SK": "PK5",
911
- + "_docVersion": 0,
912
- + "_tag": "A",
913
- + "a": 5,
914
- + "pk": "PK5",
915
- + "sk": "PK5",
916
- + },
917
- + "PK6__SK6": Object {
918
- + "PK": "PK6",
919
- + "SK": "SK6",
920
- + "_docVersion": 0,
921
- + "_tag": "B",
922
- + "b": "baz",
923
- + "pk": "PK6",
924
- + "sk": "SK6",
925
- },
926
- }
927
- `);
892
+ [PK#1 / SK#1]
893
+ PK: "PK#1"
894
+ SK: "SK#1"
895
+ _docVersion: 0
896
+ _tag: "A"
897
+ - a: 1
898
+ + a: -1
899
+ pk: "PK#1"
900
+ sk: "SK#1"
901
+
902
+ - [PK#2 / SK#2]
903
+ - PK: "PK#2"
904
+ - SK: "SK#2"
905
+ - _docVersion: 0
906
+ - _tag: "A"
907
+ - a: 2
908
+ - pk: "PK#2"
909
+ - sk: "SK#2"
910
+
911
+ - [PK#3 / SK#3]
912
+ - PK: "PK#3"
913
+ - SK: "SK#3"
914
+ - _docVersion: 0
915
+ - _tag: "B"
916
+ - b: "bar"
917
+ - pk: "PK#3"
918
+ - sk: "SK#3"
919
+
920
+ [PK#UPDATE / SK#UPDATE]
921
+ PK: "PK#UPDATE"
922
+ SK: "SK#UPDATE"
923
+ - _docVersion: 0
924
+ + _docVersion: 1
925
+ _tag: "B"
926
+ - b: "bar"
927
+ + b: "baz"
928
+ pk: "PK#UPDATE"
929
+ sk: "SK#UPDATE"
930
+
931
+ + [PK4 / PK4]
932
+ + PK: "PK4"
933
+ + SK: "PK4"
934
+ + _docVersion: 0
935
+ + _tag: "A"
936
+ + a: 4
937
+ + pk: "PK4"
938
+ + sk: "PK4"
939
+
940
+ + [PK5 / PK5]
941
+ + PK: "PK5"
942
+ + SK: "PK5"
943
+ + _docVersion: 0
944
+ + _tag: "A"
945
+ + a: 5
946
+ + pk: "PK5"
947
+ + sk: "PK5"
948
+
949
+ + [PK6 / SK6]
950
+ + PK: "PK6"
951
+ + SK: "SK6"
952
+ + _docVersion: 0
953
+ + _tag: "B"
954
+ + b: "baz"
955
+ + pk: "PK6"
956
+ + sk: "SK6"
957
+ `);
928
958
  }));
929
959
  test("it fails", () => tslib_1.__awaiter(void 0, void 0, void 0, function* () {
930
960
  yield sandbox.seed(new A({ pk: "PK#1", sk: "SK#1", a: 1 }), new A({ pk: "PK#2", sk: "SK#2", a: 2 }), new B({ pk: "PK#3", sk: "SK#3", b: "bar" }), new B({ pk: "PK#UPDATE", sk: "SK#UPDATE", b: "bar" }), new B({ pk: "PK#COND", sk: "SK#COND", b: "cond" }));
@@ -960,970 +990,970 @@ describe("bulk", () => {
960
990
  ]);
961
991
  //#region snapshot
962
992
  expect(yield sandbox.diff(before)).toMatchInlineSnapshot(`
963
- Snapshot Diff:
964
- - First value
965
- + Second value
966
-
967
- @@ -2,28 +2,946 @@
968
- "PK#1__SK#1": Object {
969
- "PK": "PK#1",
970
- "SK": "SK#1",
971
- "_docVersion": 0,
972
- "_tag": "A",
973
- - "a": 1,
974
- + "a": -1,
975
- "pk": "PK#1",
976
- "sk": "SK#1",
977
- + },
978
- + "PK#A0__SK#A0": Object {
979
- + "PK": "PK#A0",
980
- + "SK": "SK#A0",
981
- + "_docVersion": 0,
982
- + "_tag": "A",
983
- + "a": 0,
984
- + "pk": "PK#A0",
985
- + "sk": "SK#A0",
986
- + },
987
- + "PK#A10__SK#A10": Object {
988
- + "PK": "PK#A10",
989
- + "SK": "SK#A10",
990
- + "_docVersion": 0,
991
- + "_tag": "A",
992
- + "a": 10,
993
- + "pk": "PK#A10",
994
- + "sk": "SK#A10",
995
- + },
996
- + "PK#A11__SK#A11": Object {
997
- + "PK": "PK#A11",
998
- + "SK": "SK#A11",
999
- + "_docVersion": 0,
1000
- + "_tag": "A",
1001
- + "a": 11,
1002
- + "pk": "PK#A11",
1003
- + "sk": "SK#A11",
1004
- + },
1005
- + "PK#A12__SK#A12": Object {
1006
- + "PK": "PK#A12",
1007
- + "SK": "SK#A12",
1008
- + "_docVersion": 0,
1009
- + "_tag": "A",
1010
- + "a": 12,
1011
- + "pk": "PK#A12",
1012
- + "sk": "SK#A12",
1013
- + },
1014
- + "PK#A13__SK#A13": Object {
1015
- + "PK": "PK#A13",
1016
- + "SK": "SK#A13",
1017
- + "_docVersion": 0,
1018
- + "_tag": "A",
1019
- + "a": 13,
1020
- + "pk": "PK#A13",
1021
- + "sk": "SK#A13",
1022
- },
1023
- - "PK#2__SK#2": Object {
1024
- - "PK": "PK#2",
1025
- - "SK": "SK#2",
1026
- + "PK#A14__SK#A14": Object {
1027
- + "PK": "PK#A14",
1028
- + "SK": "SK#A14",
1029
- + "_docVersion": 0,
1030
- + "_tag": "A",
1031
- + "a": 14,
1032
- + "pk": "PK#A14",
1033
- + "sk": "SK#A14",
1034
- + },
1035
- + "PK#A15__SK#A15": Object {
1036
- + "PK": "PK#A15",
1037
- + "SK": "SK#A15",
1038
- + "_docVersion": 0,
1039
- + "_tag": "A",
1040
- + "a": 15,
1041
- + "pk": "PK#A15",
1042
- + "sk": "SK#A15",
1043
- + },
1044
- + "PK#A16__SK#A16": Object {
1045
- + "PK": "PK#A16",
1046
- + "SK": "SK#A16",
1047
- + "_docVersion": 0,
1048
- + "_tag": "A",
1049
- + "a": 16,
1050
- + "pk": "PK#A16",
1051
- + "sk": "SK#A16",
1052
- + },
1053
- + "PK#A17__SK#A17": Object {
1054
- + "PK": "PK#A17",
1055
- + "SK": "SK#A17",
1056
- + "_docVersion": 0,
1057
- + "_tag": "A",
1058
- + "a": 17,
1059
- + "pk": "PK#A17",
1060
- + "sk": "SK#A17",
1061
- + },
1062
- + "PK#A18__SK#A18": Object {
1063
- + "PK": "PK#A18",
1064
- + "SK": "SK#A18",
1065
- + "_docVersion": 0,
1066
- + "_tag": "A",
1067
- + "a": 18,
1068
- + "pk": "PK#A18",
1069
- + "sk": "SK#A18",
1070
- + },
1071
- + "PK#A19__SK#A19": Object {
1072
- + "PK": "PK#A19",
1073
- + "SK": "SK#A19",
1074
- + "_docVersion": 0,
1075
- + "_tag": "A",
1076
- + "a": 19,
1077
- + "pk": "PK#A19",
1078
- + "sk": "SK#A19",
1079
- + },
1080
- + "PK#A1__SK#A1": Object {
1081
- + "PK": "PK#A1",
1082
- + "SK": "SK#A1",
1083
- + "_docVersion": 0,
1084
- + "_tag": "A",
1085
- + "a": 1,
1086
- + "pk": "PK#A1",
1087
- + "sk": "SK#A1",
1088
- + },
1089
- + "PK#A20__SK#A20": Object {
1090
- + "PK": "PK#A20",
1091
- + "SK": "SK#A20",
1092
- + "_docVersion": 0,
1093
- + "_tag": "A",
1094
- + "a": 20,
1095
- + "pk": "PK#A20",
1096
- + "sk": "SK#A20",
1097
- + },
1098
- + "PK#A21__SK#A21": Object {
1099
- + "PK": "PK#A21",
1100
- + "SK": "SK#A21",
1101
- + "_docVersion": 0,
1102
- + "_tag": "A",
1103
- + "a": 21,
1104
- + "pk": "PK#A21",
1105
- + "sk": "SK#A21",
1106
- + },
1107
- + "PK#A22__SK#A22": Object {
1108
- + "PK": "PK#A22",
1109
- + "SK": "SK#A22",
1110
- + "_docVersion": 0,
1111
- + "_tag": "A",
1112
- + "a": 22,
1113
- + "pk": "PK#A22",
1114
- + "sk": "SK#A22",
1115
- + },
1116
- + "PK#A23__SK#A23": Object {
1117
- + "PK": "PK#A23",
1118
- + "SK": "SK#A23",
1119
- + "_docVersion": 0,
1120
- + "_tag": "A",
1121
- + "a": 23,
1122
- + "pk": "PK#A23",
1123
- + "sk": "SK#A23",
1124
- + },
1125
- + "PK#A24__SK#A24": Object {
1126
- + "PK": "PK#A24",
1127
- + "SK": "SK#A24",
1128
- + "_docVersion": 0,
1129
- + "_tag": "A",
1130
- + "a": 24,
1131
- + "pk": "PK#A24",
1132
- + "sk": "SK#A24",
1133
- + },
1134
- + "PK#A25__SK#A25": Object {
1135
- + "PK": "PK#A25",
1136
- + "SK": "SK#A25",
1137
- + "_docVersion": 0,
1138
- + "_tag": "A",
1139
- + "a": 25,
1140
- + "pk": "PK#A25",
1141
- + "sk": "SK#A25",
1142
- + },
1143
- + "PK#A26__SK#A26": Object {
1144
- + "PK": "PK#A26",
1145
- + "SK": "SK#A26",
1146
- + "_docVersion": 0,
1147
- + "_tag": "A",
1148
- + "a": 26,
1149
- + "pk": "PK#A26",
1150
- + "sk": "SK#A26",
1151
- + },
1152
- + "PK#A27__SK#A27": Object {
1153
- + "PK": "PK#A27",
1154
- + "SK": "SK#A27",
1155
- + "_docVersion": 0,
1156
- + "_tag": "A",
1157
- + "a": 27,
1158
- + "pk": "PK#A27",
1159
- + "sk": "SK#A27",
1160
- + },
1161
- + "PK#A28__SK#A28": Object {
1162
- + "PK": "PK#A28",
1163
- + "SK": "SK#A28",
1164
- + "_docVersion": 0,
1165
- + "_tag": "A",
1166
- + "a": 28,
1167
- + "pk": "PK#A28",
1168
- + "sk": "SK#A28",
1169
- + },
1170
- + "PK#A29__SK#A29": Object {
1171
- + "PK": "PK#A29",
1172
- + "SK": "SK#A29",
1173
- + "_docVersion": 0,
1174
- + "_tag": "A",
1175
- + "a": 29,
1176
- + "pk": "PK#A29",
1177
- + "sk": "SK#A29",
1178
- + },
1179
- + "PK#A2__SK#A2": Object {
1180
- + "PK": "PK#A2",
1181
- + "SK": "SK#A2",
1182
- "_docVersion": 0,
1183
- "_tag": "A",
1184
- "a": 2,
1185
- - "pk": "PK#2",
1186
- - "sk": "SK#2",
1187
- + "pk": "PK#A2",
1188
- + "sk": "SK#A2",
1189
- + },
1190
- + "PK#A30__SK#A30": Object {
1191
- + "PK": "PK#A30",
1192
- + "SK": "SK#A30",
1193
- + "_docVersion": 0,
1194
- + "_tag": "A",
1195
- + "a": 30,
1196
- + "pk": "PK#A30",
1197
- + "sk": "SK#A30",
1198
- + },
1199
- + "PK#A31__SK#A31": Object {
1200
- + "PK": "PK#A31",
1201
- + "SK": "SK#A31",
1202
- + "_docVersion": 0,
1203
- + "_tag": "A",
1204
- + "a": 31,
1205
- + "pk": "PK#A31",
1206
- + "sk": "SK#A31",
1207
- + },
1208
- + "PK#A32__SK#A32": Object {
1209
- + "PK": "PK#A32",
1210
- + "SK": "SK#A32",
1211
- + "_docVersion": 0,
1212
- + "_tag": "A",
1213
- + "a": 32,
1214
- + "pk": "PK#A32",
1215
- + "sk": "SK#A32",
1216
- + },
1217
- + "PK#A33__SK#A33": Object {
1218
- + "PK": "PK#A33",
1219
- + "SK": "SK#A33",
1220
- + "_docVersion": 0,
1221
- + "_tag": "A",
1222
- + "a": 33,
1223
- + "pk": "PK#A33",
1224
- + "sk": "SK#A33",
1225
- + },
1226
- + "PK#A34__SK#A34": Object {
1227
- + "PK": "PK#A34",
1228
- + "SK": "SK#A34",
1229
- + "_docVersion": 0,
1230
- + "_tag": "A",
1231
- + "a": 34,
1232
- + "pk": "PK#A34",
1233
- + "sk": "SK#A34",
1234
- + },
1235
- + "PK#A35__SK#A35": Object {
1236
- + "PK": "PK#A35",
1237
- + "SK": "SK#A35",
1238
- + "_docVersion": 0,
1239
- + "_tag": "A",
1240
- + "a": 35,
1241
- + "pk": "PK#A35",
1242
- + "sk": "SK#A35",
1243
- + },
1244
- + "PK#A36__SK#A36": Object {
1245
- + "PK": "PK#A36",
1246
- + "SK": "SK#A36",
1247
- + "_docVersion": 0,
1248
- + "_tag": "A",
1249
- + "a": 36,
1250
- + "pk": "PK#A36",
1251
- + "sk": "SK#A36",
1252
- + },
1253
- + "PK#A37__SK#A37": Object {
1254
- + "PK": "PK#A37",
1255
- + "SK": "SK#A37",
1256
- + "_docVersion": 0,
1257
- + "_tag": "A",
1258
- + "a": 37,
1259
- + "pk": "PK#A37",
1260
- + "sk": "SK#A37",
1261
- + },
1262
- + "PK#A38__SK#A38": Object {
1263
- + "PK": "PK#A38",
1264
- + "SK": "SK#A38",
1265
- + "_docVersion": 0,
1266
- + "_tag": "A",
1267
- + "a": 38,
1268
- + "pk": "PK#A38",
1269
- + "sk": "SK#A38",
1270
- + },
1271
- + "PK#A39__SK#A39": Object {
1272
- + "PK": "PK#A39",
1273
- + "SK": "SK#A39",
1274
- + "_docVersion": 0,
1275
- + "_tag": "A",
1276
- + "a": 39,
1277
- + "pk": "PK#A39",
1278
- + "sk": "SK#A39",
1279
- + },
1280
- + "PK#A3__SK#A3": Object {
1281
- + "PK": "PK#A3",
1282
- + "SK": "SK#A3",
1283
- + "_docVersion": 0,
1284
- + "_tag": "A",
1285
- + "a": 3,
1286
- + "pk": "PK#A3",
1287
- + "sk": "SK#A3",
1288
- + },
1289
- + "PK#A40__SK#A40": Object {
1290
- + "PK": "PK#A40",
1291
- + "SK": "SK#A40",
1292
- + "_docVersion": 0,
1293
- + "_tag": "A",
1294
- + "a": 40,
1295
- + "pk": "PK#A40",
1296
- + "sk": "SK#A40",
1297
- + },
1298
- + "PK#A41__SK#A41": Object {
1299
- + "PK": "PK#A41",
1300
- + "SK": "SK#A41",
1301
- + "_docVersion": 0,
1302
- + "_tag": "A",
1303
- + "a": 41,
1304
- + "pk": "PK#A41",
1305
- + "sk": "SK#A41",
1306
- + },
1307
- + "PK#A42__SK#A42": Object {
1308
- + "PK": "PK#A42",
1309
- + "SK": "SK#A42",
1310
- + "_docVersion": 0,
1311
- + "_tag": "A",
1312
- + "a": 42,
1313
- + "pk": "PK#A42",
1314
- + "sk": "SK#A42",
1315
- + },
1316
- + "PK#A43__SK#A43": Object {
1317
- + "PK": "PK#A43",
1318
- + "SK": "SK#A43",
1319
- + "_docVersion": 0,
1320
- + "_tag": "A",
1321
- + "a": 43,
1322
- + "pk": "PK#A43",
1323
- + "sk": "SK#A43",
1324
- + },
1325
- + "PK#A44__SK#A44": Object {
1326
- + "PK": "PK#A44",
1327
- + "SK": "SK#A44",
1328
- + "_docVersion": 0,
1329
- + "_tag": "A",
1330
- + "a": 44,
1331
- + "pk": "PK#A44",
1332
- + "sk": "SK#A44",
1333
- + },
1334
- + "PK#A45__SK#A45": Object {
1335
- + "PK": "PK#A45",
1336
- + "SK": "SK#A45",
1337
- + "_docVersion": 0,
1338
- + "_tag": "A",
1339
- + "a": 45,
1340
- + "pk": "PK#A45",
1341
- + "sk": "SK#A45",
1342
- + },
1343
- + "PK#A46__SK#A46": Object {
1344
- + "PK": "PK#A46",
1345
- + "SK": "SK#A46",
1346
- + "_docVersion": 0,
1347
- + "_tag": "A",
1348
- + "a": 46,
1349
- + "pk": "PK#A46",
1350
- + "sk": "SK#A46",
1351
- + },
1352
- + "PK#A47__SK#A47": Object {
1353
- + "PK": "PK#A47",
1354
- + "SK": "SK#A47",
1355
- + "_docVersion": 0,
1356
- + "_tag": "A",
1357
- + "a": 47,
1358
- + "pk": "PK#A47",
1359
- + "sk": "SK#A47",
1360
- + },
1361
- + "PK#A48__SK#A48": Object {
1362
- + "PK": "PK#A48",
1363
- + "SK": "SK#A48",
1364
- + "_docVersion": 0,
1365
- + "_tag": "A",
1366
- + "a": 48,
1367
- + "pk": "PK#A48",
1368
- + "sk": "SK#A48",
1369
- + },
1370
- + "PK#A49__SK#A49": Object {
1371
- + "PK": "PK#A49",
1372
- + "SK": "SK#A49",
1373
- + "_docVersion": 0,
1374
- + "_tag": "A",
1375
- + "a": 49,
1376
- + "pk": "PK#A49",
1377
- + "sk": "SK#A49",
1378
- + },
1379
- + "PK#A4__SK#A4": Object {
1380
- + "PK": "PK#A4",
1381
- + "SK": "SK#A4",
1382
- + "_docVersion": 0,
1383
- + "_tag": "A",
1384
- + "a": 4,
1385
- + "pk": "PK#A4",
1386
- + "sk": "SK#A4",
1387
- + },
1388
- + "PK#A50__SK#A50": Object {
1389
- + "PK": "PK#A50",
1390
- + "SK": "SK#A50",
1391
- + "_docVersion": 0,
1392
- + "_tag": "A",
1393
- + "a": 50,
1394
- + "pk": "PK#A50",
1395
- + "sk": "SK#A50",
1396
- + },
1397
- + "PK#A51__SK#A51": Object {
1398
- + "PK": "PK#A51",
1399
- + "SK": "SK#A51",
1400
- + "_docVersion": 0,
1401
- + "_tag": "A",
1402
- + "a": 51,
1403
- + "pk": "PK#A51",
1404
- + "sk": "SK#A51",
1405
- + },
1406
- + "PK#A52__SK#A52": Object {
1407
- + "PK": "PK#A52",
1408
- + "SK": "SK#A52",
1409
- + "_docVersion": 0,
1410
- + "_tag": "A",
1411
- + "a": 52,
1412
- + "pk": "PK#A52",
1413
- + "sk": "SK#A52",
1414
- },
1415
- - "PK#3__SK#3": Object {
1416
- - "PK": "PK#3",
1417
- - "SK": "SK#3",
1418
- + "PK#A53__SK#A53": Object {
1419
- + "PK": "PK#A53",
1420
- + "SK": "SK#A53",
1421
- + "_docVersion": 0,
1422
- + "_tag": "A",
1423
- + "a": 53,
1424
- + "pk": "PK#A53",
1425
- + "sk": "SK#A53",
1426
- + },
1427
- + "PK#A54__SK#A54": Object {
1428
- + "PK": "PK#A54",
1429
- + "SK": "SK#A54",
1430
- + "_docVersion": 0,
1431
- + "_tag": "A",
1432
- + "a": 54,
1433
- + "pk": "PK#A54",
1434
- + "sk": "SK#A54",
1435
- + },
1436
- + "PK#A55__SK#A55": Object {
1437
- + "PK": "PK#A55",
1438
- + "SK": "SK#A55",
1439
- + "_docVersion": 0,
1440
- + "_tag": "A",
1441
- + "a": 55,
1442
- + "pk": "PK#A55",
1443
- + "sk": "SK#A55",
1444
- + },
1445
- + "PK#A56__SK#A56": Object {
1446
- + "PK": "PK#A56",
1447
- + "SK": "SK#A56",
1448
- + "_docVersion": 0,
1449
- + "_tag": "A",
1450
- + "a": 56,
1451
- + "pk": "PK#A56",
1452
- + "sk": "SK#A56",
1453
- + },
1454
- + "PK#A57__SK#A57": Object {
1455
- + "PK": "PK#A57",
1456
- + "SK": "SK#A57",
1457
- + "_docVersion": 0,
1458
- + "_tag": "A",
1459
- + "a": 57,
1460
- + "pk": "PK#A57",
1461
- + "sk": "SK#A57",
1462
- + },
1463
- + "PK#A58__SK#A58": Object {
1464
- + "PK": "PK#A58",
1465
- + "SK": "SK#A58",
1466
- + "_docVersion": 0,
1467
- + "_tag": "A",
1468
- + "a": 58,
1469
- + "pk": "PK#A58",
1470
- + "sk": "SK#A58",
1471
- + },
1472
- + "PK#A59__SK#A59": Object {
1473
- + "PK": "PK#A59",
1474
- + "SK": "SK#A59",
1475
- + "_docVersion": 0,
1476
- + "_tag": "A",
1477
- + "a": 59,
1478
- + "pk": "PK#A59",
1479
- + "sk": "SK#A59",
1480
- + },
1481
- + "PK#A5__SK#A5": Object {
1482
- + "PK": "PK#A5",
1483
- + "SK": "SK#A5",
1484
- + "_docVersion": 0,
1485
- + "_tag": "A",
1486
- + "a": 5,
1487
- + "pk": "PK#A5",
1488
- + "sk": "SK#A5",
1489
- + },
1490
- + "PK#A60__SK#A60": Object {
1491
- + "PK": "PK#A60",
1492
- + "SK": "SK#A60",
1493
- + "_docVersion": 0,
1494
- + "_tag": "A",
1495
- + "a": 60,
1496
- + "pk": "PK#A60",
1497
- + "sk": "SK#A60",
1498
- + },
1499
- + "PK#A61__SK#A61": Object {
1500
- + "PK": "PK#A61",
1501
- + "SK": "SK#A61",
1502
- + "_docVersion": 0,
1503
- + "_tag": "A",
1504
- + "a": 61,
1505
- + "pk": "PK#A61",
1506
- + "sk": "SK#A61",
1507
- + },
1508
- + "PK#A62__SK#A62": Object {
1509
- + "PK": "PK#A62",
1510
- + "SK": "SK#A62",
1511
- + "_docVersion": 0,
1512
- + "_tag": "A",
1513
- + "a": 62,
1514
- + "pk": "PK#A62",
1515
- + "sk": "SK#A62",
1516
- + },
1517
- + "PK#A63__SK#A63": Object {
1518
- + "PK": "PK#A63",
1519
- + "SK": "SK#A63",
1520
- + "_docVersion": 0,
1521
- + "_tag": "A",
1522
- + "a": 63,
1523
- + "pk": "PK#A63",
1524
- + "sk": "SK#A63",
1525
- + },
1526
- + "PK#A64__SK#A64": Object {
1527
- + "PK": "PK#A64",
1528
- + "SK": "SK#A64",
1529
- + "_docVersion": 0,
1530
- + "_tag": "A",
1531
- + "a": 64,
1532
- + "pk": "PK#A64",
1533
- + "sk": "SK#A64",
1534
- + },
1535
- + "PK#A65__SK#A65": Object {
1536
- + "PK": "PK#A65",
1537
- + "SK": "SK#A65",
1538
- + "_docVersion": 0,
1539
- + "_tag": "A",
1540
- + "a": 65,
1541
- + "pk": "PK#A65",
1542
- + "sk": "SK#A65",
1543
- + },
1544
- + "PK#A66__SK#A66": Object {
1545
- + "PK": "PK#A66",
1546
- + "SK": "SK#A66",
1547
- + "_docVersion": 0,
1548
- + "_tag": "A",
1549
- + "a": 66,
1550
- + "pk": "PK#A66",
1551
- + "sk": "SK#A66",
1552
- + },
1553
- + "PK#A67__SK#A67": Object {
1554
- + "PK": "PK#A67",
1555
- + "SK": "SK#A67",
1556
- + "_docVersion": 0,
1557
- + "_tag": "A",
1558
- + "a": 67,
1559
- + "pk": "PK#A67",
1560
- + "sk": "SK#A67",
1561
- + },
1562
- + "PK#A68__SK#A68": Object {
1563
- + "PK": "PK#A68",
1564
- + "SK": "SK#A68",
1565
- + "_docVersion": 0,
1566
- + "_tag": "A",
1567
- + "a": 68,
1568
- + "pk": "PK#A68",
1569
- + "sk": "SK#A68",
1570
- + },
1571
- + "PK#A69__SK#A69": Object {
1572
- + "PK": "PK#A69",
1573
- + "SK": "SK#A69",
1574
- + "_docVersion": 0,
1575
- + "_tag": "A",
1576
- + "a": 69,
1577
- + "pk": "PK#A69",
1578
- + "sk": "SK#A69",
1579
- + },
1580
- + "PK#A6__SK#A6": Object {
1581
- + "PK": "PK#A6",
1582
- + "SK": "SK#A6",
1583
- + "_docVersion": 0,
1584
- + "_tag": "A",
1585
- + "a": 6,
1586
- + "pk": "PK#A6",
1587
- + "sk": "SK#A6",
1588
- + },
1589
- + "PK#A70__SK#A70": Object {
1590
- + "PK": "PK#A70",
1591
- + "SK": "SK#A70",
1592
- + "_docVersion": 0,
1593
- + "_tag": "A",
1594
- + "a": 70,
1595
- + "pk": "PK#A70",
1596
- + "sk": "SK#A70",
1597
- + },
1598
- + "PK#A71__SK#A71": Object {
1599
- + "PK": "PK#A71",
1600
- + "SK": "SK#A71",
1601
- + "_docVersion": 0,
1602
- + "_tag": "A",
1603
- + "a": 71,
1604
- + "pk": "PK#A71",
1605
- + "sk": "SK#A71",
1606
- + },
1607
- + "PK#A72__SK#A72": Object {
1608
- + "PK": "PK#A72",
1609
- + "SK": "SK#A72",
1610
- + "_docVersion": 0,
1611
- + "_tag": "A",
1612
- + "a": 72,
1613
- + "pk": "PK#A72",
1614
- + "sk": "SK#A72",
1615
- + },
1616
- + "PK#A73__SK#A73": Object {
1617
- + "PK": "PK#A73",
1618
- + "SK": "SK#A73",
1619
- + "_docVersion": 0,
1620
- + "_tag": "A",
1621
- + "a": 73,
1622
- + "pk": "PK#A73",
1623
- + "sk": "SK#A73",
1624
- + },
1625
- + "PK#A74__SK#A74": Object {
1626
- + "PK": "PK#A74",
1627
- + "SK": "SK#A74",
1628
- + "_docVersion": 0,
1629
- + "_tag": "A",
1630
- + "a": 74,
1631
- + "pk": "PK#A74",
1632
- + "sk": "SK#A74",
1633
- + },
1634
- + "PK#A75__SK#A75": Object {
1635
- + "PK": "PK#A75",
1636
- + "SK": "SK#A75",
1637
- + "_docVersion": 0,
1638
- + "_tag": "A",
1639
- + "a": 75,
1640
- + "pk": "PK#A75",
1641
- + "sk": "SK#A75",
1642
- + },
1643
- + "PK#A76__SK#A76": Object {
1644
- + "PK": "PK#A76",
1645
- + "SK": "SK#A76",
1646
- + "_docVersion": 0,
1647
- + "_tag": "A",
1648
- + "a": 76,
1649
- + "pk": "PK#A76",
1650
- + "sk": "SK#A76",
1651
- + },
1652
- + "PK#A77__SK#A77": Object {
1653
- + "PK": "PK#A77",
1654
- + "SK": "SK#A77",
1655
- + "_docVersion": 0,
1656
- + "_tag": "A",
1657
- + "a": 77,
1658
- + "pk": "PK#A77",
1659
- + "sk": "SK#A77",
1660
- + },
1661
- + "PK#A78__SK#A78": Object {
1662
- + "PK": "PK#A78",
1663
- + "SK": "SK#A78",
1664
- + "_docVersion": 0,
1665
- + "_tag": "A",
1666
- + "a": 78,
1667
- + "pk": "PK#A78",
1668
- + "sk": "SK#A78",
1669
- + },
1670
- + "PK#A79__SK#A79": Object {
1671
- + "PK": "PK#A79",
1672
- + "SK": "SK#A79",
1673
- + "_docVersion": 0,
1674
- + "_tag": "A",
1675
- + "a": 79,
1676
- + "pk": "PK#A79",
1677
- + "sk": "SK#A79",
1678
- + },
1679
- + "PK#A7__SK#A7": Object {
1680
- + "PK": "PK#A7",
1681
- + "SK": "SK#A7",
1682
- + "_docVersion": 0,
1683
- + "_tag": "A",
1684
- + "a": 7,
1685
- + "pk": "PK#A7",
1686
- + "sk": "SK#A7",
1687
- + },
1688
- + "PK#A80__SK#A80": Object {
1689
- + "PK": "PK#A80",
1690
- + "SK": "SK#A80",
1691
- + "_docVersion": 0,
1692
- + "_tag": "A",
1693
- + "a": 80,
1694
- + "pk": "PK#A80",
1695
- + "sk": "SK#A80",
1696
- + },
1697
- + "PK#A81__SK#A81": Object {
1698
- + "PK": "PK#A81",
1699
- + "SK": "SK#A81",
1700
- + "_docVersion": 0,
1701
- + "_tag": "A",
1702
- + "a": 81,
1703
- + "pk": "PK#A81",
1704
- + "sk": "SK#A81",
1705
- + },
1706
- + "PK#A82__SK#A82": Object {
1707
- + "PK": "PK#A82",
1708
- + "SK": "SK#A82",
1709
- + "_docVersion": 0,
1710
- + "_tag": "A",
1711
- + "a": 82,
1712
- + "pk": "PK#A82",
1713
- + "sk": "SK#A82",
1714
- + },
1715
- + "PK#A83__SK#A83": Object {
1716
- + "PK": "PK#A83",
1717
- + "SK": "SK#A83",
1718
- + "_docVersion": 0,
1719
- + "_tag": "A",
1720
- + "a": 83,
1721
- + "pk": "PK#A83",
1722
- + "sk": "SK#A83",
1723
- + },
1724
- + "PK#A84__SK#A84": Object {
1725
- + "PK": "PK#A84",
1726
- + "SK": "SK#A84",
1727
- + "_docVersion": 0,
1728
- + "_tag": "A",
1729
- + "a": 84,
1730
- + "pk": "PK#A84",
1731
- + "sk": "SK#A84",
1732
- + },
1733
- + "PK#A85__SK#A85": Object {
1734
- + "PK": "PK#A85",
1735
- + "SK": "SK#A85",
1736
- + "_docVersion": 0,
1737
- + "_tag": "A",
1738
- + "a": 85,
1739
- + "pk": "PK#A85",
1740
- + "sk": "SK#A85",
1741
- + },
1742
- + "PK#A86__SK#A86": Object {
1743
- + "PK": "PK#A86",
1744
- + "SK": "SK#A86",
1745
- + "_docVersion": 0,
1746
- + "_tag": "A",
1747
- + "a": 86,
1748
- + "pk": "PK#A86",
1749
- + "sk": "SK#A86",
1750
- + },
1751
- + "PK#A87__SK#A87": Object {
1752
- + "PK": "PK#A87",
1753
- + "SK": "SK#A87",
1754
- + "_docVersion": 0,
1755
- + "_tag": "A",
1756
- + "a": 87,
1757
- + "pk": "PK#A87",
1758
- + "sk": "SK#A87",
1759
- + },
1760
- + "PK#A88__SK#A88": Object {
1761
- + "PK": "PK#A88",
1762
- + "SK": "SK#A88",
1763
- + "_docVersion": 0,
1764
- + "_tag": "A",
1765
- + "a": 88,
1766
- + "pk": "PK#A88",
1767
- + "sk": "SK#A88",
1768
- + },
1769
- + "PK#A89__SK#A89": Object {
1770
- + "PK": "PK#A89",
1771
- + "SK": "SK#A89",
1772
- + "_docVersion": 0,
1773
- + "_tag": "A",
1774
- + "a": 89,
1775
- + "pk": "PK#A89",
1776
- + "sk": "SK#A89",
1777
- + },
1778
- + "PK#A8__SK#A8": Object {
1779
- + "PK": "PK#A8",
1780
- + "SK": "SK#A8",
1781
- + "_docVersion": 0,
1782
- + "_tag": "A",
1783
- + "a": 8,
1784
- + "pk": "PK#A8",
1785
- + "sk": "SK#A8",
1786
- + },
1787
- + "PK#A90__SK#A90": Object {
1788
- + "PK": "PK#A90",
1789
- + "SK": "SK#A90",
1790
- + "_docVersion": 0,
1791
- + "_tag": "A",
1792
- + "a": 90,
1793
- + "pk": "PK#A90",
1794
- + "sk": "SK#A90",
1795
- + },
1796
- + "PK#A91__SK#A91": Object {
1797
- + "PK": "PK#A91",
1798
- + "SK": "SK#A91",
1799
- + "_docVersion": 0,
1800
- + "_tag": "A",
1801
- + "a": 91,
1802
- + "pk": "PK#A91",
1803
- + "sk": "SK#A91",
1804
- + },
1805
- + "PK#A92__SK#A92": Object {
1806
- + "PK": "PK#A92",
1807
- + "SK": "SK#A92",
1808
- + "_docVersion": 0,
1809
- + "_tag": "A",
1810
- + "a": 92,
1811
- + "pk": "PK#A92",
1812
- + "sk": "SK#A92",
1813
- + },
1814
- + "PK#A93__SK#A93": Object {
1815
- + "PK": "PK#A93",
1816
- + "SK": "SK#A93",
1817
- + "_docVersion": 0,
1818
- + "_tag": "A",
1819
- + "a": 93,
1820
- + "pk": "PK#A93",
1821
- + "sk": "SK#A93",
1822
- + },
1823
- + "PK#A94__SK#A94": Object {
1824
- + "PK": "PK#A94",
1825
- + "SK": "SK#A94",
1826
- + "_docVersion": 0,
1827
- + "_tag": "A",
1828
- + "a": 94,
1829
- + "pk": "PK#A94",
1830
- + "sk": "SK#A94",
1831
- + },
1832
- + "PK#A95__SK#A95": Object {
1833
- + "PK": "PK#A95",
1834
- + "SK": "SK#A95",
1835
- + "_docVersion": 0,
1836
- + "_tag": "A",
1837
- + "a": 95,
1838
- + "pk": "PK#A95",
1839
- + "sk": "SK#A95",
1840
- + },
1841
- + "PK#A96__SK#A96": Object {
1842
- + "PK": "PK#A96",
1843
- + "SK": "SK#A96",
1844
- + "_docVersion": 0,
1845
- + "_tag": "A",
1846
- + "a": 96,
1847
- + "pk": "PK#A96",
1848
- + "sk": "SK#A96",
1849
- + },
1850
- + "PK#A97__SK#A97": Object {
1851
- + "PK": "PK#A97",
1852
- + "SK": "SK#A97",
1853
- + "_docVersion": 0,
1854
- + "_tag": "A",
1855
- + "a": 97,
1856
- + "pk": "PK#A97",
1857
- + "sk": "SK#A97",
1858
- + },
1859
- + "PK#A98__SK#A98": Object {
1860
- + "PK": "PK#A98",
1861
- + "SK": "SK#A98",
1862
- + "_docVersion": 0,
1863
- + "_tag": "A",
1864
- + "a": 98,
1865
- + "pk": "PK#A98",
1866
- + "sk": "SK#A98",
1867
- + },
1868
- + "PK#A99__SK#A99": Object {
1869
- + "PK": "PK#A99",
1870
- + "SK": "SK#A99",
1871
- + "_docVersion": 0,
1872
- + "_tag": "A",
1873
- + "a": 99,
1874
- + "pk": "PK#A99",
1875
- + "sk": "SK#A99",
1876
- + },
1877
- + "PK#A9__SK#A9": Object {
1878
- + "PK": "PK#A9",
1879
- + "SK": "SK#A9",
1880
- "_docVersion": 0,
1881
- + "_tag": "A",
1882
- + "a": 9,
1883
- + "pk": "PK#A9",
1884
- + "sk": "SK#A9",
1885
- + },
1886
- + "PK#UPDATE__SK#UPDATE": Object {
1887
- + "PK": "PK#UPDATE",
1888
- + "SK": "SK#UPDATE",
1889
- + "_docVersion": 1,
1890
- "_tag": "B",
1891
- - "b": "bar",
1892
- - "pk": "PK#3",
1893
- - "sk": "SK#3",
1894
- + "b": "baz",
1895
- + "pk": "PK#UPDATE",
1896
- + "sk": "SK#UPDATE",
1897
- + },
1898
- + "PK4__PK4": Object {
1899
- + "PK": "PK4",
1900
- + "SK": "PK4",
1901
- + "_docVersion": 0,
1902
- + "_tag": "A",
1903
- + "a": 4,
1904
- + "pk": "PK4",
1905
- + "sk": "PK4",
1906
- + },
1907
- + "PK5__PK5": Object {
1908
- + "PK": "PK5",
1909
- + "SK": "PK5",
1910
- + "_docVersion": 0,
1911
- + "_tag": "A",
1912
- + "a": 5,
1913
- + "pk": "PK5",
1914
- + "sk": "PK5",
1915
- + },
1916
- + "PK6__SK6": Object {
1917
- + "PK": "PK6",
1918
- + "SK": "SK6",
1919
- + "_docVersion": 0,
1920
- + "_tag": "B",
1921
- + "b": "baz",
1922
- + "pk": "PK6",
1923
- + "sk": "SK6",
1924
- },
1925
- }
1926
- `);
993
+ [PK#1 / SK#1]
994
+ PK: "PK#1"
995
+ SK: "SK#1"
996
+ _docVersion: 0
997
+ _tag: "A"
998
+ - a: 1
999
+ + a: -1
1000
+ pk: "PK#1"
1001
+ sk: "SK#1"
1002
+
1003
+ - [PK#2 / SK#2]
1004
+ - PK: "PK#2"
1005
+ - SK: "SK#2"
1006
+ - _docVersion: 0
1007
+ - _tag: "A"
1008
+ - a: 2
1009
+ - pk: "PK#2"
1010
+ - sk: "SK#2"
1011
+
1012
+ - [PK#3 / SK#3]
1013
+ - PK: "PK#3"
1014
+ - SK: "SK#3"
1015
+ - _docVersion: 0
1016
+ - _tag: "B"
1017
+ - b: "bar"
1018
+ - pk: "PK#3"
1019
+ - sk: "SK#3"
1020
+
1021
+ + [PK#A0 / SK#A0]
1022
+ + PK: "PK#A0"
1023
+ + SK: "SK#A0"
1024
+ + _docVersion: 0
1025
+ + _tag: "A"
1026
+ + a: 0
1027
+ + pk: "PK#A0"
1028
+ + sk: "SK#A0"
1029
+
1030
+ + [PK#A1 / SK#A1]
1031
+ + PK: "PK#A1"
1032
+ + SK: "SK#A1"
1033
+ + _docVersion: 0
1034
+ + _tag: "A"
1035
+ + a: 1
1036
+ + pk: "PK#A1"
1037
+ + sk: "SK#A1"
1038
+
1039
+ + [PK#A10 / SK#A10]
1040
+ + PK: "PK#A10"
1041
+ + SK: "SK#A10"
1042
+ + _docVersion: 0
1043
+ + _tag: "A"
1044
+ + a: 10
1045
+ + pk: "PK#A10"
1046
+ + sk: "SK#A10"
1047
+
1048
+ + [PK#A11 / SK#A11]
1049
+ + PK: "PK#A11"
1050
+ + SK: "SK#A11"
1051
+ + _docVersion: 0
1052
+ + _tag: "A"
1053
+ + a: 11
1054
+ + pk: "PK#A11"
1055
+ + sk: "SK#A11"
1056
+
1057
+ + [PK#A12 / SK#A12]
1058
+ + PK: "PK#A12"
1059
+ + SK: "SK#A12"
1060
+ + _docVersion: 0
1061
+ + _tag: "A"
1062
+ + a: 12
1063
+ + pk: "PK#A12"
1064
+ + sk: "SK#A12"
1065
+
1066
+ + [PK#A13 / SK#A13]
1067
+ + PK: "PK#A13"
1068
+ + SK: "SK#A13"
1069
+ + _docVersion: 0
1070
+ + _tag: "A"
1071
+ + a: 13
1072
+ + pk: "PK#A13"
1073
+ + sk: "SK#A13"
1074
+
1075
+ + [PK#A14 / SK#A14]
1076
+ + PK: "PK#A14"
1077
+ + SK: "SK#A14"
1078
+ + _docVersion: 0
1079
+ + _tag: "A"
1080
+ + a: 14
1081
+ + pk: "PK#A14"
1082
+ + sk: "SK#A14"
1083
+
1084
+ + [PK#A15 / SK#A15]
1085
+ + PK: "PK#A15"
1086
+ + SK: "SK#A15"
1087
+ + _docVersion: 0
1088
+ + _tag: "A"
1089
+ + a: 15
1090
+ + pk: "PK#A15"
1091
+ + sk: "SK#A15"
1092
+
1093
+ + [PK#A16 / SK#A16]
1094
+ + PK: "PK#A16"
1095
+ + SK: "SK#A16"
1096
+ + _docVersion: 0
1097
+ + _tag: "A"
1098
+ + a: 16
1099
+ + pk: "PK#A16"
1100
+ + sk: "SK#A16"
1101
+
1102
+ + [PK#A17 / SK#A17]
1103
+ + PK: "PK#A17"
1104
+ + SK: "SK#A17"
1105
+ + _docVersion: 0
1106
+ + _tag: "A"
1107
+ + a: 17
1108
+ + pk: "PK#A17"
1109
+ + sk: "SK#A17"
1110
+
1111
+ + [PK#A18 / SK#A18]
1112
+ + PK: "PK#A18"
1113
+ + SK: "SK#A18"
1114
+ + _docVersion: 0
1115
+ + _tag: "A"
1116
+ + a: 18
1117
+ + pk: "PK#A18"
1118
+ + sk: "SK#A18"
1119
+
1120
+ + [PK#A19 / SK#A19]
1121
+ + PK: "PK#A19"
1122
+ + SK: "SK#A19"
1123
+ + _docVersion: 0
1124
+ + _tag: "A"
1125
+ + a: 19
1126
+ + pk: "PK#A19"
1127
+ + sk: "SK#A19"
1128
+
1129
+ + [PK#A2 / SK#A2]
1130
+ + PK: "PK#A2"
1131
+ + SK: "SK#A2"
1132
+ + _docVersion: 0
1133
+ + _tag: "A"
1134
+ + a: 2
1135
+ + pk: "PK#A2"
1136
+ + sk: "SK#A2"
1137
+
1138
+ + [PK#A20 / SK#A20]
1139
+ + PK: "PK#A20"
1140
+ + SK: "SK#A20"
1141
+ + _docVersion: 0
1142
+ + _tag: "A"
1143
+ + a: 20
1144
+ + pk: "PK#A20"
1145
+ + sk: "SK#A20"
1146
+
1147
+ + [PK#A21 / SK#A21]
1148
+ + PK: "PK#A21"
1149
+ + SK: "SK#A21"
1150
+ + _docVersion: 0
1151
+ + _tag: "A"
1152
+ + a: 21
1153
+ + pk: "PK#A21"
1154
+ + sk: "SK#A21"
1155
+
1156
+ + [PK#A22 / SK#A22]
1157
+ + PK: "PK#A22"
1158
+ + SK: "SK#A22"
1159
+ + _docVersion: 0
1160
+ + _tag: "A"
1161
+ + a: 22
1162
+ + pk: "PK#A22"
1163
+ + sk: "SK#A22"
1164
+
1165
+ + [PK#A23 / SK#A23]
1166
+ + PK: "PK#A23"
1167
+ + SK: "SK#A23"
1168
+ + _docVersion: 0
1169
+ + _tag: "A"
1170
+ + a: 23
1171
+ + pk: "PK#A23"
1172
+ + sk: "SK#A23"
1173
+
1174
+ + [PK#A24 / SK#A24]
1175
+ + PK: "PK#A24"
1176
+ + SK: "SK#A24"
1177
+ + _docVersion: 0
1178
+ + _tag: "A"
1179
+ + a: 24
1180
+ + pk: "PK#A24"
1181
+ + sk: "SK#A24"
1182
+
1183
+ + [PK#A25 / SK#A25]
1184
+ + PK: "PK#A25"
1185
+ + SK: "SK#A25"
1186
+ + _docVersion: 0
1187
+ + _tag: "A"
1188
+ + a: 25
1189
+ + pk: "PK#A25"
1190
+ + sk: "SK#A25"
1191
+
1192
+ + [PK#A26 / SK#A26]
1193
+ + PK: "PK#A26"
1194
+ + SK: "SK#A26"
1195
+ + _docVersion: 0
1196
+ + _tag: "A"
1197
+ + a: 26
1198
+ + pk: "PK#A26"
1199
+ + sk: "SK#A26"
1200
+
1201
+ + [PK#A27 / SK#A27]
1202
+ + PK: "PK#A27"
1203
+ + SK: "SK#A27"
1204
+ + _docVersion: 0
1205
+ + _tag: "A"
1206
+ + a: 27
1207
+ + pk: "PK#A27"
1208
+ + sk: "SK#A27"
1209
+
1210
+ + [PK#A28 / SK#A28]
1211
+ + PK: "PK#A28"
1212
+ + SK: "SK#A28"
1213
+ + _docVersion: 0
1214
+ + _tag: "A"
1215
+ + a: 28
1216
+ + pk: "PK#A28"
1217
+ + sk: "SK#A28"
1218
+
1219
+ + [PK#A29 / SK#A29]
1220
+ + PK: "PK#A29"
1221
+ + SK: "SK#A29"
1222
+ + _docVersion: 0
1223
+ + _tag: "A"
1224
+ + a: 29
1225
+ + pk: "PK#A29"
1226
+ + sk: "SK#A29"
1227
+
1228
+ + [PK#A3 / SK#A3]
1229
+ + PK: "PK#A3"
1230
+ + SK: "SK#A3"
1231
+ + _docVersion: 0
1232
+ + _tag: "A"
1233
+ + a: 3
1234
+ + pk: "PK#A3"
1235
+ + sk: "SK#A3"
1236
+
1237
+ + [PK#A30 / SK#A30]
1238
+ + PK: "PK#A30"
1239
+ + SK: "SK#A30"
1240
+ + _docVersion: 0
1241
+ + _tag: "A"
1242
+ + a: 30
1243
+ + pk: "PK#A30"
1244
+ + sk: "SK#A30"
1245
+
1246
+ + [PK#A31 / SK#A31]
1247
+ + PK: "PK#A31"
1248
+ + SK: "SK#A31"
1249
+ + _docVersion: 0
1250
+ + _tag: "A"
1251
+ + a: 31
1252
+ + pk: "PK#A31"
1253
+ + sk: "SK#A31"
1254
+
1255
+ + [PK#A32 / SK#A32]
1256
+ + PK: "PK#A32"
1257
+ + SK: "SK#A32"
1258
+ + _docVersion: 0
1259
+ + _tag: "A"
1260
+ + a: 32
1261
+ + pk: "PK#A32"
1262
+ + sk: "SK#A32"
1263
+
1264
+ + [PK#A33 / SK#A33]
1265
+ + PK: "PK#A33"
1266
+ + SK: "SK#A33"
1267
+ + _docVersion: 0
1268
+ + _tag: "A"
1269
+ + a: 33
1270
+ + pk: "PK#A33"
1271
+ + sk: "SK#A33"
1272
+
1273
+ + [PK#A34 / SK#A34]
1274
+ + PK: "PK#A34"
1275
+ + SK: "SK#A34"
1276
+ + _docVersion: 0
1277
+ + _tag: "A"
1278
+ + a: 34
1279
+ + pk: "PK#A34"
1280
+ + sk: "SK#A34"
1281
+
1282
+ + [PK#A35 / SK#A35]
1283
+ + PK: "PK#A35"
1284
+ + SK: "SK#A35"
1285
+ + _docVersion: 0
1286
+ + _tag: "A"
1287
+ + a: 35
1288
+ + pk: "PK#A35"
1289
+ + sk: "SK#A35"
1290
+
1291
+ + [PK#A36 / SK#A36]
1292
+ + PK: "PK#A36"
1293
+ + SK: "SK#A36"
1294
+ + _docVersion: 0
1295
+ + _tag: "A"
1296
+ + a: 36
1297
+ + pk: "PK#A36"
1298
+ + sk: "SK#A36"
1299
+
1300
+ + [PK#A37 / SK#A37]
1301
+ + PK: "PK#A37"
1302
+ + SK: "SK#A37"
1303
+ + _docVersion: 0
1304
+ + _tag: "A"
1305
+ + a: 37
1306
+ + pk: "PK#A37"
1307
+ + sk: "SK#A37"
1308
+
1309
+ + [PK#A38 / SK#A38]
1310
+ + PK: "PK#A38"
1311
+ + SK: "SK#A38"
1312
+ + _docVersion: 0
1313
+ + _tag: "A"
1314
+ + a: 38
1315
+ + pk: "PK#A38"
1316
+ + sk: "SK#A38"
1317
+
1318
+ + [PK#A39 / SK#A39]
1319
+ + PK: "PK#A39"
1320
+ + SK: "SK#A39"
1321
+ + _docVersion: 0
1322
+ + _tag: "A"
1323
+ + a: 39
1324
+ + pk: "PK#A39"
1325
+ + sk: "SK#A39"
1326
+
1327
+ + [PK#A4 / SK#A4]
1328
+ + PK: "PK#A4"
1329
+ + SK: "SK#A4"
1330
+ + _docVersion: 0
1331
+ + _tag: "A"
1332
+ + a: 4
1333
+ + pk: "PK#A4"
1334
+ + sk: "SK#A4"
1335
+
1336
+ + [PK#A40 / SK#A40]
1337
+ + PK: "PK#A40"
1338
+ + SK: "SK#A40"
1339
+ + _docVersion: 0
1340
+ + _tag: "A"
1341
+ + a: 40
1342
+ + pk: "PK#A40"
1343
+ + sk: "SK#A40"
1344
+
1345
+ + [PK#A41 / SK#A41]
1346
+ + PK: "PK#A41"
1347
+ + SK: "SK#A41"
1348
+ + _docVersion: 0
1349
+ + _tag: "A"
1350
+ + a: 41
1351
+ + pk: "PK#A41"
1352
+ + sk: "SK#A41"
1353
+
1354
+ + [PK#A42 / SK#A42]
1355
+ + PK: "PK#A42"
1356
+ + SK: "SK#A42"
1357
+ + _docVersion: 0
1358
+ + _tag: "A"
1359
+ + a: 42
1360
+ + pk: "PK#A42"
1361
+ + sk: "SK#A42"
1362
+
1363
+ + [PK#A43 / SK#A43]
1364
+ + PK: "PK#A43"
1365
+ + SK: "SK#A43"
1366
+ + _docVersion: 0
1367
+ + _tag: "A"
1368
+ + a: 43
1369
+ + pk: "PK#A43"
1370
+ + sk: "SK#A43"
1371
+
1372
+ + [PK#A44 / SK#A44]
1373
+ + PK: "PK#A44"
1374
+ + SK: "SK#A44"
1375
+ + _docVersion: 0
1376
+ + _tag: "A"
1377
+ + a: 44
1378
+ + pk: "PK#A44"
1379
+ + sk: "SK#A44"
1380
+
1381
+ + [PK#A45 / SK#A45]
1382
+ + PK: "PK#A45"
1383
+ + SK: "SK#A45"
1384
+ + _docVersion: 0
1385
+ + _tag: "A"
1386
+ + a: 45
1387
+ + pk: "PK#A45"
1388
+ + sk: "SK#A45"
1389
+
1390
+ + [PK#A46 / SK#A46]
1391
+ + PK: "PK#A46"
1392
+ + SK: "SK#A46"
1393
+ + _docVersion: 0
1394
+ + _tag: "A"
1395
+ + a: 46
1396
+ + pk: "PK#A46"
1397
+ + sk: "SK#A46"
1398
+
1399
+ + [PK#A47 / SK#A47]
1400
+ + PK: "PK#A47"
1401
+ + SK: "SK#A47"
1402
+ + _docVersion: 0
1403
+ + _tag: "A"
1404
+ + a: 47
1405
+ + pk: "PK#A47"
1406
+ + sk: "SK#A47"
1407
+
1408
+ + [PK#A48 / SK#A48]
1409
+ + PK: "PK#A48"
1410
+ + SK: "SK#A48"
1411
+ + _docVersion: 0
1412
+ + _tag: "A"
1413
+ + a: 48
1414
+ + pk: "PK#A48"
1415
+ + sk: "SK#A48"
1416
+
1417
+ + [PK#A49 / SK#A49]
1418
+ + PK: "PK#A49"
1419
+ + SK: "SK#A49"
1420
+ + _docVersion: 0
1421
+ + _tag: "A"
1422
+ + a: 49
1423
+ + pk: "PK#A49"
1424
+ + sk: "SK#A49"
1425
+
1426
+ + [PK#A5 / SK#A5]
1427
+ + PK: "PK#A5"
1428
+ + SK: "SK#A5"
1429
+ + _docVersion: 0
1430
+ + _tag: "A"
1431
+ + a: 5
1432
+ + pk: "PK#A5"
1433
+ + sk: "SK#A5"
1434
+
1435
+ + [PK#A50 / SK#A50]
1436
+ + PK: "PK#A50"
1437
+ + SK: "SK#A50"
1438
+ + _docVersion: 0
1439
+ + _tag: "A"
1440
+ + a: 50
1441
+ + pk: "PK#A50"
1442
+ + sk: "SK#A50"
1443
+
1444
+ + [PK#A51 / SK#A51]
1445
+ + PK: "PK#A51"
1446
+ + SK: "SK#A51"
1447
+ + _docVersion: 0
1448
+ + _tag: "A"
1449
+ + a: 51
1450
+ + pk: "PK#A51"
1451
+ + sk: "SK#A51"
1452
+
1453
+ + [PK#A52 / SK#A52]
1454
+ + PK: "PK#A52"
1455
+ + SK: "SK#A52"
1456
+ + _docVersion: 0
1457
+ + _tag: "A"
1458
+ + a: 52
1459
+ + pk: "PK#A52"
1460
+ + sk: "SK#A52"
1461
+
1462
+ + [PK#A53 / SK#A53]
1463
+ + PK: "PK#A53"
1464
+ + SK: "SK#A53"
1465
+ + _docVersion: 0
1466
+ + _tag: "A"
1467
+ + a: 53
1468
+ + pk: "PK#A53"
1469
+ + sk: "SK#A53"
1470
+
1471
+ + [PK#A54 / SK#A54]
1472
+ + PK: "PK#A54"
1473
+ + SK: "SK#A54"
1474
+ + _docVersion: 0
1475
+ + _tag: "A"
1476
+ + a: 54
1477
+ + pk: "PK#A54"
1478
+ + sk: "SK#A54"
1479
+
1480
+ + [PK#A55 / SK#A55]
1481
+ + PK: "PK#A55"
1482
+ + SK: "SK#A55"
1483
+ + _docVersion: 0
1484
+ + _tag: "A"
1485
+ + a: 55
1486
+ + pk: "PK#A55"
1487
+ + sk: "SK#A55"
1488
+
1489
+ + [PK#A56 / SK#A56]
1490
+ + PK: "PK#A56"
1491
+ + SK: "SK#A56"
1492
+ + _docVersion: 0
1493
+ + _tag: "A"
1494
+ + a: 56
1495
+ + pk: "PK#A56"
1496
+ + sk: "SK#A56"
1497
+
1498
+ + [PK#A57 / SK#A57]
1499
+ + PK: "PK#A57"
1500
+ + SK: "SK#A57"
1501
+ + _docVersion: 0
1502
+ + _tag: "A"
1503
+ + a: 57
1504
+ + pk: "PK#A57"
1505
+ + sk: "SK#A57"
1506
+
1507
+ + [PK#A58 / SK#A58]
1508
+ + PK: "PK#A58"
1509
+ + SK: "SK#A58"
1510
+ + _docVersion: 0
1511
+ + _tag: "A"
1512
+ + a: 58
1513
+ + pk: "PK#A58"
1514
+ + sk: "SK#A58"
1515
+
1516
+ + [PK#A59 / SK#A59]
1517
+ + PK: "PK#A59"
1518
+ + SK: "SK#A59"
1519
+ + _docVersion: 0
1520
+ + _tag: "A"
1521
+ + a: 59
1522
+ + pk: "PK#A59"
1523
+ + sk: "SK#A59"
1524
+
1525
+ + [PK#A6 / SK#A6]
1526
+ + PK: "PK#A6"
1527
+ + SK: "SK#A6"
1528
+ + _docVersion: 0
1529
+ + _tag: "A"
1530
+ + a: 6
1531
+ + pk: "PK#A6"
1532
+ + sk: "SK#A6"
1533
+
1534
+ + [PK#A60 / SK#A60]
1535
+ + PK: "PK#A60"
1536
+ + SK: "SK#A60"
1537
+ + _docVersion: 0
1538
+ + _tag: "A"
1539
+ + a: 60
1540
+ + pk: "PK#A60"
1541
+ + sk: "SK#A60"
1542
+
1543
+ + [PK#A61 / SK#A61]
1544
+ + PK: "PK#A61"
1545
+ + SK: "SK#A61"
1546
+ + _docVersion: 0
1547
+ + _tag: "A"
1548
+ + a: 61
1549
+ + pk: "PK#A61"
1550
+ + sk: "SK#A61"
1551
+
1552
+ + [PK#A62 / SK#A62]
1553
+ + PK: "PK#A62"
1554
+ + SK: "SK#A62"
1555
+ + _docVersion: 0
1556
+ + _tag: "A"
1557
+ + a: 62
1558
+ + pk: "PK#A62"
1559
+ + sk: "SK#A62"
1560
+
1561
+ + [PK#A63 / SK#A63]
1562
+ + PK: "PK#A63"
1563
+ + SK: "SK#A63"
1564
+ + _docVersion: 0
1565
+ + _tag: "A"
1566
+ + a: 63
1567
+ + pk: "PK#A63"
1568
+ + sk: "SK#A63"
1569
+
1570
+ + [PK#A64 / SK#A64]
1571
+ + PK: "PK#A64"
1572
+ + SK: "SK#A64"
1573
+ + _docVersion: 0
1574
+ + _tag: "A"
1575
+ + a: 64
1576
+ + pk: "PK#A64"
1577
+ + sk: "SK#A64"
1578
+
1579
+ + [PK#A65 / SK#A65]
1580
+ + PK: "PK#A65"
1581
+ + SK: "SK#A65"
1582
+ + _docVersion: 0
1583
+ + _tag: "A"
1584
+ + a: 65
1585
+ + pk: "PK#A65"
1586
+ + sk: "SK#A65"
1587
+
1588
+ + [PK#A66 / SK#A66]
1589
+ + PK: "PK#A66"
1590
+ + SK: "SK#A66"
1591
+ + _docVersion: 0
1592
+ + _tag: "A"
1593
+ + a: 66
1594
+ + pk: "PK#A66"
1595
+ + sk: "SK#A66"
1596
+
1597
+ + [PK#A67 / SK#A67]
1598
+ + PK: "PK#A67"
1599
+ + SK: "SK#A67"
1600
+ + _docVersion: 0
1601
+ + _tag: "A"
1602
+ + a: 67
1603
+ + pk: "PK#A67"
1604
+ + sk: "SK#A67"
1605
+
1606
+ + [PK#A68 / SK#A68]
1607
+ + PK: "PK#A68"
1608
+ + SK: "SK#A68"
1609
+ + _docVersion: 0
1610
+ + _tag: "A"
1611
+ + a: 68
1612
+ + pk: "PK#A68"
1613
+ + sk: "SK#A68"
1614
+
1615
+ + [PK#A69 / SK#A69]
1616
+ + PK: "PK#A69"
1617
+ + SK: "SK#A69"
1618
+ + _docVersion: 0
1619
+ + _tag: "A"
1620
+ + a: 69
1621
+ + pk: "PK#A69"
1622
+ + sk: "SK#A69"
1623
+
1624
+ + [PK#A7 / SK#A7]
1625
+ + PK: "PK#A7"
1626
+ + SK: "SK#A7"
1627
+ + _docVersion: 0
1628
+ + _tag: "A"
1629
+ + a: 7
1630
+ + pk: "PK#A7"
1631
+ + sk: "SK#A7"
1632
+
1633
+ + [PK#A70 / SK#A70]
1634
+ + PK: "PK#A70"
1635
+ + SK: "SK#A70"
1636
+ + _docVersion: 0
1637
+ + _tag: "A"
1638
+ + a: 70
1639
+ + pk: "PK#A70"
1640
+ + sk: "SK#A70"
1641
+
1642
+ + [PK#A71 / SK#A71]
1643
+ + PK: "PK#A71"
1644
+ + SK: "SK#A71"
1645
+ + _docVersion: 0
1646
+ + _tag: "A"
1647
+ + a: 71
1648
+ + pk: "PK#A71"
1649
+ + sk: "SK#A71"
1650
+
1651
+ + [PK#A72 / SK#A72]
1652
+ + PK: "PK#A72"
1653
+ + SK: "SK#A72"
1654
+ + _docVersion: 0
1655
+ + _tag: "A"
1656
+ + a: 72
1657
+ + pk: "PK#A72"
1658
+ + sk: "SK#A72"
1659
+
1660
+ + [PK#A73 / SK#A73]
1661
+ + PK: "PK#A73"
1662
+ + SK: "SK#A73"
1663
+ + _docVersion: 0
1664
+ + _tag: "A"
1665
+ + a: 73
1666
+ + pk: "PK#A73"
1667
+ + sk: "SK#A73"
1668
+
1669
+ + [PK#A74 / SK#A74]
1670
+ + PK: "PK#A74"
1671
+ + SK: "SK#A74"
1672
+ + _docVersion: 0
1673
+ + _tag: "A"
1674
+ + a: 74
1675
+ + pk: "PK#A74"
1676
+ + sk: "SK#A74"
1677
+
1678
+ + [PK#A75 / SK#A75]
1679
+ + PK: "PK#A75"
1680
+ + SK: "SK#A75"
1681
+ + _docVersion: 0
1682
+ + _tag: "A"
1683
+ + a: 75
1684
+ + pk: "PK#A75"
1685
+ + sk: "SK#A75"
1686
+
1687
+ + [PK#A76 / SK#A76]
1688
+ + PK: "PK#A76"
1689
+ + SK: "SK#A76"
1690
+ + _docVersion: 0
1691
+ + _tag: "A"
1692
+ + a: 76
1693
+ + pk: "PK#A76"
1694
+ + sk: "SK#A76"
1695
+
1696
+ + [PK#A77 / SK#A77]
1697
+ + PK: "PK#A77"
1698
+ + SK: "SK#A77"
1699
+ + _docVersion: 0
1700
+ + _tag: "A"
1701
+ + a: 77
1702
+ + pk: "PK#A77"
1703
+ + sk: "SK#A77"
1704
+
1705
+ + [PK#A78 / SK#A78]
1706
+ + PK: "PK#A78"
1707
+ + SK: "SK#A78"
1708
+ + _docVersion: 0
1709
+ + _tag: "A"
1710
+ + a: 78
1711
+ + pk: "PK#A78"
1712
+ + sk: "SK#A78"
1713
+
1714
+ + [PK#A79 / SK#A79]
1715
+ + PK: "PK#A79"
1716
+ + SK: "SK#A79"
1717
+ + _docVersion: 0
1718
+ + _tag: "A"
1719
+ + a: 79
1720
+ + pk: "PK#A79"
1721
+ + sk: "SK#A79"
1722
+
1723
+ + [PK#A8 / SK#A8]
1724
+ + PK: "PK#A8"
1725
+ + SK: "SK#A8"
1726
+ + _docVersion: 0
1727
+ + _tag: "A"
1728
+ + a: 8
1729
+ + pk: "PK#A8"
1730
+ + sk: "SK#A8"
1731
+
1732
+ + [PK#A80 / SK#A80]
1733
+ + PK: "PK#A80"
1734
+ + SK: "SK#A80"
1735
+ + _docVersion: 0
1736
+ + _tag: "A"
1737
+ + a: 80
1738
+ + pk: "PK#A80"
1739
+ + sk: "SK#A80"
1740
+
1741
+ + [PK#A81 / SK#A81]
1742
+ + PK: "PK#A81"
1743
+ + SK: "SK#A81"
1744
+ + _docVersion: 0
1745
+ + _tag: "A"
1746
+ + a: 81
1747
+ + pk: "PK#A81"
1748
+ + sk: "SK#A81"
1749
+
1750
+ + [PK#A82 / SK#A82]
1751
+ + PK: "PK#A82"
1752
+ + SK: "SK#A82"
1753
+ + _docVersion: 0
1754
+ + _tag: "A"
1755
+ + a: 82
1756
+ + pk: "PK#A82"
1757
+ + sk: "SK#A82"
1758
+
1759
+ + [PK#A83 / SK#A83]
1760
+ + PK: "PK#A83"
1761
+ + SK: "SK#A83"
1762
+ + _docVersion: 0
1763
+ + _tag: "A"
1764
+ + a: 83
1765
+ + pk: "PK#A83"
1766
+ + sk: "SK#A83"
1767
+
1768
+ + [PK#A84 / SK#A84]
1769
+ + PK: "PK#A84"
1770
+ + SK: "SK#A84"
1771
+ + _docVersion: 0
1772
+ + _tag: "A"
1773
+ + a: 84
1774
+ + pk: "PK#A84"
1775
+ + sk: "SK#A84"
1776
+
1777
+ + [PK#A85 / SK#A85]
1778
+ + PK: "PK#A85"
1779
+ + SK: "SK#A85"
1780
+ + _docVersion: 0
1781
+ + _tag: "A"
1782
+ + a: 85
1783
+ + pk: "PK#A85"
1784
+ + sk: "SK#A85"
1785
+
1786
+ + [PK#A86 / SK#A86]
1787
+ + PK: "PK#A86"
1788
+ + SK: "SK#A86"
1789
+ + _docVersion: 0
1790
+ + _tag: "A"
1791
+ + a: 86
1792
+ + pk: "PK#A86"
1793
+ + sk: "SK#A86"
1794
+
1795
+ + [PK#A87 / SK#A87]
1796
+ + PK: "PK#A87"
1797
+ + SK: "SK#A87"
1798
+ + _docVersion: 0
1799
+ + _tag: "A"
1800
+ + a: 87
1801
+ + pk: "PK#A87"
1802
+ + sk: "SK#A87"
1803
+
1804
+ + [PK#A88 / SK#A88]
1805
+ + PK: "PK#A88"
1806
+ + SK: "SK#A88"
1807
+ + _docVersion: 0
1808
+ + _tag: "A"
1809
+ + a: 88
1810
+ + pk: "PK#A88"
1811
+ + sk: "SK#A88"
1812
+
1813
+ + [PK#A89 / SK#A89]
1814
+ + PK: "PK#A89"
1815
+ + SK: "SK#A89"
1816
+ + _docVersion: 0
1817
+ + _tag: "A"
1818
+ + a: 89
1819
+ + pk: "PK#A89"
1820
+ + sk: "SK#A89"
1821
+
1822
+ + [PK#A9 / SK#A9]
1823
+ + PK: "PK#A9"
1824
+ + SK: "SK#A9"
1825
+ + _docVersion: 0
1826
+ + _tag: "A"
1827
+ + a: 9
1828
+ + pk: "PK#A9"
1829
+ + sk: "SK#A9"
1830
+
1831
+ + [PK#A90 / SK#A90]
1832
+ + PK: "PK#A90"
1833
+ + SK: "SK#A90"
1834
+ + _docVersion: 0
1835
+ + _tag: "A"
1836
+ + a: 90
1837
+ + pk: "PK#A90"
1838
+ + sk: "SK#A90"
1839
+
1840
+ + [PK#A91 / SK#A91]
1841
+ + PK: "PK#A91"
1842
+ + SK: "SK#A91"
1843
+ + _docVersion: 0
1844
+ + _tag: "A"
1845
+ + a: 91
1846
+ + pk: "PK#A91"
1847
+ + sk: "SK#A91"
1848
+
1849
+ + [PK#A92 / SK#A92]
1850
+ + PK: "PK#A92"
1851
+ + SK: "SK#A92"
1852
+ + _docVersion: 0
1853
+ + _tag: "A"
1854
+ + a: 92
1855
+ + pk: "PK#A92"
1856
+ + sk: "SK#A92"
1857
+
1858
+ + [PK#A93 / SK#A93]
1859
+ + PK: "PK#A93"
1860
+ + SK: "SK#A93"
1861
+ + _docVersion: 0
1862
+ + _tag: "A"
1863
+ + a: 93
1864
+ + pk: "PK#A93"
1865
+ + sk: "SK#A93"
1866
+
1867
+ + [PK#A94 / SK#A94]
1868
+ + PK: "PK#A94"
1869
+ + SK: "SK#A94"
1870
+ + _docVersion: 0
1871
+ + _tag: "A"
1872
+ + a: 94
1873
+ + pk: "PK#A94"
1874
+ + sk: "SK#A94"
1875
+
1876
+ + [PK#A95 / SK#A95]
1877
+ + PK: "PK#A95"
1878
+ + SK: "SK#A95"
1879
+ + _docVersion: 0
1880
+ + _tag: "A"
1881
+ + a: 95
1882
+ + pk: "PK#A95"
1883
+ + sk: "SK#A95"
1884
+
1885
+ + [PK#A96 / SK#A96]
1886
+ + PK: "PK#A96"
1887
+ + SK: "SK#A96"
1888
+ + _docVersion: 0
1889
+ + _tag: "A"
1890
+ + a: 96
1891
+ + pk: "PK#A96"
1892
+ + sk: "SK#A96"
1893
+
1894
+ + [PK#A97 / SK#A97]
1895
+ + PK: "PK#A97"
1896
+ + SK: "SK#A97"
1897
+ + _docVersion: 0
1898
+ + _tag: "A"
1899
+ + a: 97
1900
+ + pk: "PK#A97"
1901
+ + sk: "SK#A97"
1902
+
1903
+ + [PK#A98 / SK#A98]
1904
+ + PK: "PK#A98"
1905
+ + SK: "SK#A98"
1906
+ + _docVersion: 0
1907
+ + _tag: "A"
1908
+ + a: 98
1909
+ + pk: "PK#A98"
1910
+ + sk: "SK#A98"
1911
+
1912
+ + [PK#A99 / SK#A99]
1913
+ + PK: "PK#A99"
1914
+ + SK: "SK#A99"
1915
+ + _docVersion: 0
1916
+ + _tag: "A"
1917
+ + a: 99
1918
+ + pk: "PK#A99"
1919
+ + sk: "SK#A99"
1920
+
1921
+ + [PK#UPDATE / SK#UPDATE]
1922
+ + PK: "PK#UPDATE"
1923
+ + SK: "SK#UPDATE"
1924
+ + _docVersion: 1
1925
+ + _tag: "B"
1926
+ + b: "baz"
1927
+ + pk: "PK#UPDATE"
1928
+ + sk: "SK#UPDATE"
1929
+
1930
+ + [PK4 / PK4]
1931
+ + PK: "PK4"
1932
+ + SK: "PK4"
1933
+ + _docVersion: 0
1934
+ + _tag: "A"
1935
+ + a: 4
1936
+ + pk: "PK4"
1937
+ + sk: "PK4"
1938
+
1939
+ + [PK5 / PK5]
1940
+ + PK: "PK5"
1941
+ + SK: "PK5"
1942
+ + _docVersion: 0
1943
+ + _tag: "A"
1944
+ + a: 5
1945
+ + pk: "PK5"
1946
+ + sk: "PK5"
1947
+
1948
+ + [PK6 / SK6]
1949
+ + PK: "PK6"
1950
+ + SK: "SK6"
1951
+ + _docVersion: 0
1952
+ + _tag: "B"
1953
+ + b: "baz"
1954
+ + pk: "PK6"
1955
+ + sk: "SK6"
1956
+ `);
1927
1957
  //#endregion
1928
1958
  }));
1929
1959
  test("it fails and rolls back", () => tslib_1.__awaiter(void 0, void 0, void 0, function* () {