@pgarbe/cdk-ecr-sync 0.5.25 → 0.5.26

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 (134) hide show
  1. package/.jsii +147 -4
  2. package/.projenrc.ts +1 -1
  3. package/CHANGELOG.md +1 -1
  4. package/lib/ecr-sync.d.ts +4 -22
  5. package/lib/ecr-sync.js +3 -10
  6. package/lib/image.d.ts +5 -8
  7. package/lib/image.js +1 -1
  8. package/node_modules/aws-sdk/CHANGELOG.md +69 -1
  9. package/node_modules/aws-sdk/README.md +1 -1
  10. package/node_modules/aws-sdk/apis/appconfig-2019-10-09.min.json +3 -1
  11. package/node_modules/aws-sdk/apis/appconfigdata-2021-11-11.min.json +11 -11
  12. package/node_modules/aws-sdk/apis/appflow-2020-08-23.min.json +677 -237
  13. package/node_modules/aws-sdk/apis/appflow-2020-08-23.paginators.json +7 -1
  14. package/node_modules/aws-sdk/apis/apprunner-2020-05-15.min.json +171 -15
  15. package/node_modules/aws-sdk/apis/apprunner-2020-05-15.paginators.json +5 -0
  16. package/node_modules/aws-sdk/apis/athena-2017-05-18.min.json +43 -30
  17. package/node_modules/aws-sdk/apis/auditmanager-2017-07-25.min.json +5 -1
  18. package/node_modules/aws-sdk/apis/cloudformation-2010-05-15.min.json +86 -25
  19. package/node_modules/aws-sdk/apis/codeguru-reviewer-2019-09-19.waiters2.json +14 -2
  20. package/node_modules/aws-sdk/apis/comprehend-2017-11-27.min.json +167 -79
  21. package/node_modules/aws-sdk/apis/connect-2017-08-08.min.json +408 -133
  22. package/node_modules/aws-sdk/apis/connect-2017-08-08.paginators.json +12 -0
  23. package/node_modules/aws-sdk/apis/ec2-2016-11-15.min.json +122 -43
  24. package/node_modules/aws-sdk/apis/ec2-2016-11-15.paginators.json +6 -0
  25. package/node_modules/aws-sdk/apis/elasticfilesystem-2015-02-01.min.json +149 -21
  26. package/node_modules/aws-sdk/apis/es-2015-01-01.min.json +125 -49
  27. package/node_modules/aws-sdk/apis/fis-2020-12-01.min.json +136 -30
  28. package/node_modules/aws-sdk/apis/fis-2020-12-01.paginators.json +5 -0
  29. package/node_modules/aws-sdk/apis/frauddetector-2019-11-15.min.json +212 -6
  30. package/node_modules/aws-sdk/apis/frauddetector-2019-11-15.paginators.json +5 -0
  31. package/node_modules/aws-sdk/apis/fsx-2018-03-01.min.json +4 -1
  32. package/node_modules/aws-sdk/apis/guardduty-2017-11-28.min.json +352 -77
  33. package/node_modules/aws-sdk/apis/kafka-2018-11-14.min.json +114 -94
  34. package/node_modules/aws-sdk/apis/kendra-2019-02-03.min.json +80 -55
  35. package/node_modules/aws-sdk/apis/lakeformation-2017-03-31.min.json +0 -1
  36. package/node_modules/aws-sdk/apis/mediaconvert-2017-08-29.min.json +148 -127
  37. package/node_modules/aws-sdk/apis/mediatailor-2018-04-23.min.json +79 -51
  38. package/node_modules/aws-sdk/apis/meteringmarketplace-2016-01-14.min.json +2 -1
  39. package/node_modules/aws-sdk/apis/opensearch-2021-01-01.min.json +125 -49
  40. package/node_modules/aws-sdk/apis/personalize-2018-05-22.min.json +3 -0
  41. package/node_modules/aws-sdk/apis/robomaker-2018-06-29.min.json +135 -45
  42. package/node_modules/aws-sdk/apis/s3control-2018-08-20.min.json +152 -52
  43. package/node_modules/aws-sdk/apis/sagemaker-2017-07-24.min.json +131 -123
  44. package/node_modules/aws-sdk/apis/secretsmanager-2017-10-17.min.json +15 -10
  45. package/node_modules/aws-sdk/apis/securityhub-2018-10-26.min.json +47 -33
  46. package/node_modules/aws-sdk/apis/synthetics-2017-10-11.min.json +11 -3
  47. package/node_modules/aws-sdk/apis/transcribe-2017-10-26.min.json +44 -40
  48. package/node_modules/aws-sdk/clients/amplify.d.ts +7 -7
  49. package/node_modules/aws-sdk/clients/appconfig.d.ts +13 -13
  50. package/node_modules/aws-sdk/clients/appconfigdata.d.ts +18 -18
  51. package/node_modules/aws-sdk/clients/appflow.d.ts +611 -3
  52. package/node_modules/aws-sdk/clients/apprunner.d.ts +179 -12
  53. package/node_modules/aws-sdk/clients/athena.d.ts +31 -8
  54. package/node_modules/aws-sdk/clients/auditmanager.d.ts +2 -2
  55. package/node_modules/aws-sdk/clients/cloudformation.d.ts +407 -264
  56. package/node_modules/aws-sdk/clients/codegurureviewer.d.ts +6 -5
  57. package/node_modules/aws-sdk/clients/cognitoidentityserviceprovider.d.ts +287 -287
  58. package/node_modules/aws-sdk/clients/comprehend.d.ts +138 -0
  59. package/node_modules/aws-sdk/clients/connect.d.ts +327 -10
  60. package/node_modules/aws-sdk/clients/costexplorer.d.ts +17 -17
  61. package/node_modules/aws-sdk/clients/dynamodb.d.ts +5 -5
  62. package/node_modules/aws-sdk/clients/ebs.d.ts +6 -6
  63. package/node_modules/aws-sdk/clients/ec2.d.ts +124 -10
  64. package/node_modules/aws-sdk/clients/efs.d.ts +131 -4
  65. package/node_modules/aws-sdk/clients/elasticache.d.ts +3 -3
  66. package/node_modules/aws-sdk/clients/emr.d.ts +14 -14
  67. package/node_modules/aws-sdk/clients/es.d.ts +97 -0
  68. package/node_modules/aws-sdk/clients/eventbridge.d.ts +8 -8
  69. package/node_modules/aws-sdk/clients/fis.d.ts +142 -22
  70. package/node_modules/aws-sdk/clients/frauddetector.d.ts +308 -0
  71. package/node_modules/aws-sdk/clients/fsx.d.ts +15 -11
  72. package/node_modules/aws-sdk/clients/glue.d.ts +7 -7
  73. package/node_modules/aws-sdk/clients/guardduty.d.ts +309 -44
  74. package/node_modules/aws-sdk/clients/iot.d.ts +1 -1
  75. package/node_modules/aws-sdk/clients/kafka.d.ts +19 -1
  76. package/node_modules/aws-sdk/clients/kendra.d.ts +95 -59
  77. package/node_modules/aws-sdk/clients/lakeformation.d.ts +1 -1
  78. package/node_modules/aws-sdk/clients/marketplacemetering.d.ts +17 -12
  79. package/node_modules/aws-sdk/clients/mediaconvert.d.ts +40 -6
  80. package/node_modules/aws-sdk/clients/mediatailor.d.ts +11 -0
  81. package/node_modules/aws-sdk/clients/opensearch.d.ts +97 -0
  82. package/node_modules/aws-sdk/clients/personalize.d.ts +7 -3
  83. package/node_modules/aws-sdk/clients/rbin.d.ts +41 -41
  84. package/node_modules/aws-sdk/clients/rds.d.ts +17 -17
  85. package/node_modules/aws-sdk/clients/robomaker.d.ts +30 -30
  86. package/node_modules/aws-sdk/clients/route53recoveryreadiness.d.ts +275 -230
  87. package/node_modules/aws-sdk/clients/s3control.d.ts +137 -10
  88. package/node_modules/aws-sdk/clients/sagemaker.d.ts +27 -7
  89. package/node_modules/aws-sdk/clients/secretsmanager.d.ts +62 -48
  90. package/node_modules/aws-sdk/clients/securityhub.d.ts +15 -0
  91. package/node_modules/aws-sdk/clients/ssmincidents.d.ts +1 -1
  92. package/node_modules/aws-sdk/clients/synthetics.d.ts +15 -5
  93. package/node_modules/aws-sdk/clients/transcribeservice.d.ts +6 -0
  94. package/node_modules/aws-sdk/dist/aws-sdk-core-react-native.js +35 -28
  95. package/node_modules/aws-sdk/dist/aws-sdk-react-native.js +73 -66
  96. package/node_modules/aws-sdk/dist/aws-sdk.js +1048 -371
  97. package/node_modules/aws-sdk/dist/aws-sdk.min.js +90 -90
  98. package/node_modules/aws-sdk/lib/core.js +1 -1
  99. package/node_modules/aws-sdk/lib/dynamodb/document_client.d.ts +1 -1
  100. package/node_modules/aws-sdk/lib/param_validator.js +2 -0
  101. package/node_modules/aws-sdk/package.json +2 -2
  102. package/node_modules/jmespath/jmespath.js +32 -27
  103. package/node_modules/jmespath/package.json +2 -7
  104. package/package.json +3 -3
  105. package/releasetag.txt +1 -1
  106. package/version.txt +1 -1
  107. package/node_modules/jmespath/.eslintrc +0 -10
  108. package/node_modules/jmespath/.npmignore +0 -1
  109. package/node_modules/jmespath/.travis.yml +0 -6
  110. package/node_modules/jmespath/BASELINE +0 -15
  111. package/node_modules/jmespath/Gruntfile.js +0 -36
  112. package/node_modules/jmespath/g.sh +0 -5
  113. package/node_modules/jmespath/index.html +0 -93
  114. package/node_modules/jmespath/james.html +0 -7
  115. package/node_modules/jmespath/l.js +0 -189
  116. package/node_modules/jmespath/perf.js +0 -33
  117. package/node_modules/jmespath/reservedWords.json +0 -4
  118. package/node_modules/jmespath/test/compliance/basic.json +0 -96
  119. package/node_modules/jmespath/test/compliance/boolean.json +0 -257
  120. package/node_modules/jmespath/test/compliance/current.json +0 -25
  121. package/node_modules/jmespath/test/compliance/escape.json +0 -46
  122. package/node_modules/jmespath/test/compliance/filters.json +0 -468
  123. package/node_modules/jmespath/test/compliance/functions.json +0 -825
  124. package/node_modules/jmespath/test/compliance/identifiers.json +0 -1377
  125. package/node_modules/jmespath/test/compliance/indices.json +0 -346
  126. package/node_modules/jmespath/test/compliance/literal.json +0 -190
  127. package/node_modules/jmespath/test/compliance/multiselect.json +0 -393
  128. package/node_modules/jmespath/test/compliance/pipe.json +0 -131
  129. package/node_modules/jmespath/test/compliance/slice.json +0 -187
  130. package/node_modules/jmespath/test/compliance/syntax.json +0 -616
  131. package/node_modules/jmespath/test/compliance/unicode.json +0 -38
  132. package/node_modules/jmespath/test/compliance/wildcard.json +0 -460
  133. package/node_modules/jmespath/test/compliance.js +0 -56
  134. package/node_modules/jmespath/test/jmespath.js +0 -217
@@ -1,825 +0,0 @@
1
- [{
2
- "given":
3
- {
4
- "foo": -1,
5
- "zero": 0,
6
- "numbers": [-1, 3, 4, 5],
7
- "array": [-1, 3, 4, 5, "a", "100"],
8
- "strings": ["a", "b", "c"],
9
- "decimals": [1.01, 1.2, -1.5],
10
- "str": "Str",
11
- "false": false,
12
- "empty_list": [],
13
- "empty_hash": {},
14
- "objects": {"foo": "bar", "bar": "baz"},
15
- "null_key": null
16
- },
17
- "cases": [
18
- {
19
- "expression": "abs(foo)",
20
- "result": 1
21
- },
22
- {
23
- "expression": "abs(foo)",
24
- "result": 1
25
- },
26
- {
27
- "expression": "abs(str)",
28
- "error": "invalid-type"
29
- },
30
- {
31
- "expression": "abs(array[1])",
32
- "result": 3
33
- },
34
- {
35
- "expression": "abs(array[1])",
36
- "result": 3
37
- },
38
- {
39
- "expression": "abs(`false`)",
40
- "error": "invalid-type"
41
- },
42
- {
43
- "expression": "abs(`-24`)",
44
- "result": 24
45
- },
46
- {
47
- "expression": "abs(`-24`)",
48
- "result": 24
49
- },
50
- {
51
- "expression": "abs(`1`, `2`)",
52
- "error": "invalid-arity"
53
- },
54
- {
55
- "expression": "abs()",
56
- "error": "invalid-arity"
57
- },
58
- {
59
- "expression": "unknown_function(`1`, `2`)",
60
- "error": "unknown-function"
61
- },
62
- {
63
- "expression": "avg(numbers)",
64
- "result": 2.75
65
- },
66
- {
67
- "expression": "avg(array)",
68
- "error": "invalid-type"
69
- },
70
- {
71
- "expression": "avg('abc')",
72
- "error": "invalid-type"
73
- },
74
- {
75
- "expression": "avg(foo)",
76
- "error": "invalid-type"
77
- },
78
- {
79
- "expression": "avg(@)",
80
- "error": "invalid-type"
81
- },
82
- {
83
- "expression": "avg(strings)",
84
- "error": "invalid-type"
85
- },
86
- {
87
- "expression": "ceil(`1.2`)",
88
- "result": 2
89
- },
90
- {
91
- "expression": "ceil(decimals[0])",
92
- "result": 2
93
- },
94
- {
95
- "expression": "ceil(decimals[1])",
96
- "result": 2
97
- },
98
- {
99
- "expression": "ceil(decimals[2])",
100
- "result": -1
101
- },
102
- {
103
- "expression": "ceil('string')",
104
- "error": "invalid-type"
105
- },
106
- {
107
- "expression": "contains('abc', 'a')",
108
- "result": true
109
- },
110
- {
111
- "expression": "contains('abc', 'd')",
112
- "result": false
113
- },
114
- {
115
- "expression": "contains(`false`, 'd')",
116
- "error": "invalid-type"
117
- },
118
- {
119
- "expression": "contains(strings, 'a')",
120
- "result": true
121
- },
122
- {
123
- "expression": "contains(decimals, `1.2`)",
124
- "result": true
125
- },
126
- {
127
- "expression": "contains(decimals, `false`)",
128
- "result": false
129
- },
130
- {
131
- "expression": "ends_with(str, 'r')",
132
- "result": true
133
- },
134
- {
135
- "expression": "ends_with(str, 'tr')",
136
- "result": true
137
- },
138
- {
139
- "expression": "ends_with(str, 'Str')",
140
- "result": true
141
- },
142
- {
143
- "expression": "ends_with(str, 'SStr')",
144
- "result": false
145
- },
146
- {
147
- "expression": "ends_with(str, 'foo')",
148
- "result": false
149
- },
150
- {
151
- "expression": "ends_with(str, `0`)",
152
- "error": "invalid-type"
153
- },
154
- {
155
- "expression": "floor(`1.2`)",
156
- "result": 1
157
- },
158
- {
159
- "expression": "floor('string')",
160
- "error": "invalid-type"
161
- },
162
- {
163
- "expression": "floor(decimals[0])",
164
- "result": 1
165
- },
166
- {
167
- "expression": "floor(foo)",
168
- "result": -1
169
- },
170
- {
171
- "expression": "floor(str)",
172
- "error": "invalid-type"
173
- },
174
- {
175
- "expression": "length('abc')",
176
- "result": 3
177
- },
178
- {
179
- "expression": "length('✓foo')",
180
- "result": 4
181
- },
182
- {
183
- "expression": "length('')",
184
- "result": 0
185
- },
186
- {
187
- "expression": "length(@)",
188
- "result": 12
189
- },
190
- {
191
- "expression": "length(strings[0])",
192
- "result": 1
193
- },
194
- {
195
- "expression": "length(str)",
196
- "result": 3
197
- },
198
- {
199
- "expression": "length(array)",
200
- "result": 6
201
- },
202
- {
203
- "expression": "length(objects)",
204
- "result": 2
205
- },
206
- {
207
- "expression": "length(`false`)",
208
- "error": "invalid-type"
209
- },
210
- {
211
- "expression": "length(foo)",
212
- "error": "invalid-type"
213
- },
214
- {
215
- "expression": "length(strings[0])",
216
- "result": 1
217
- },
218
- {
219
- "expression": "max(numbers)",
220
- "result": 5
221
- },
222
- {
223
- "expression": "max(decimals)",
224
- "result": 1.2
225
- },
226
- {
227
- "expression": "max(strings)",
228
- "result": "c"
229
- },
230
- {
231
- "expression": "max(abc)",
232
- "error": "invalid-type"
233
- },
234
- {
235
- "expression": "max(array)",
236
- "error": "invalid-type"
237
- },
238
- {
239
- "expression": "max(decimals)",
240
- "result": 1.2
241
- },
242
- {
243
- "expression": "max(empty_list)",
244
- "result": null
245
- },
246
- {
247
- "expression": "merge(`{}`)",
248
- "result": {}
249
- },
250
- {
251
- "expression": "merge(`{}`, `{}`)",
252
- "result": {}
253
- },
254
- {
255
- "expression": "merge(`{\"a\": 1}`, `{\"b\": 2}`)",
256
- "result": {"a": 1, "b": 2}
257
- },
258
- {
259
- "expression": "merge(`{\"a\": 1}`, `{\"a\": 2}`)",
260
- "result": {"a": 2}
261
- },
262
- {
263
- "expression": "merge(`{\"a\": 1, \"b\": 2}`, `{\"a\": 2, \"c\": 3}`, `{\"d\": 4}`)",
264
- "result": {"a": 2, "b": 2, "c": 3, "d": 4}
265
- },
266
- {
267
- "expression": "min(numbers)",
268
- "result": -1
269
- },
270
- {
271
- "expression": "min(decimals)",
272
- "result": -1.5
273
- },
274
- {
275
- "expression": "min(abc)",
276
- "error": "invalid-type"
277
- },
278
- {
279
- "expression": "min(array)",
280
- "error": "invalid-type"
281
- },
282
- {
283
- "expression": "min(empty_list)",
284
- "result": null
285
- },
286
- {
287
- "expression": "min(decimals)",
288
- "result": -1.5
289
- },
290
- {
291
- "expression": "min(strings)",
292
- "result": "a"
293
- },
294
- {
295
- "expression": "type('abc')",
296
- "result": "string"
297
- },
298
- {
299
- "expression": "type(`1.0`)",
300
- "result": "number"
301
- },
302
- {
303
- "expression": "type(`2`)",
304
- "result": "number"
305
- },
306
- {
307
- "expression": "type(`true`)",
308
- "result": "boolean"
309
- },
310
- {
311
- "expression": "type(`false`)",
312
- "result": "boolean"
313
- },
314
- {
315
- "expression": "type(`null`)",
316
- "result": "null"
317
- },
318
- {
319
- "expression": "type(`[0]`)",
320
- "result": "array"
321
- },
322
- {
323
- "expression": "type(`{\"a\": \"b\"}`)",
324
- "result": "object"
325
- },
326
- {
327
- "expression": "type(@)",
328
- "result": "object"
329
- },
330
- {
331
- "expression": "sort(keys(objects))",
332
- "result": ["bar", "foo"]
333
- },
334
- {
335
- "expression": "keys(foo)",
336
- "error": "invalid-type"
337
- },
338
- {
339
- "expression": "keys(strings)",
340
- "error": "invalid-type"
341
- },
342
- {
343
- "expression": "keys(`false`)",
344
- "error": "invalid-type"
345
- },
346
- {
347
- "expression": "sort(values(objects))",
348
- "result": ["bar", "baz"]
349
- },
350
- {
351
- "expression": "keys(empty_hash)",
352
- "result": []
353
- },
354
- {
355
- "expression": "values(foo)",
356
- "error": "invalid-type"
357
- },
358
- {
359
- "expression": "join(', ', strings)",
360
- "result": "a, b, c"
361
- },
362
- {
363
- "expression": "join(', ', strings)",
364
- "result": "a, b, c"
365
- },
366
- {
367
- "expression": "join(',', `[\"a\", \"b\"]`)",
368
- "result": "a,b"
369
- },
370
- {
371
- "expression": "join(',', `[\"a\", 0]`)",
372
- "error": "invalid-type"
373
- },
374
- {
375
- "expression": "join(', ', str)",
376
- "error": "invalid-type"
377
- },
378
- {
379
- "expression": "join('|', strings)",
380
- "result": "a|b|c"
381
- },
382
- {
383
- "expression": "join(`2`, strings)",
384
- "error": "invalid-type"
385
- },
386
- {
387
- "expression": "join('|', decimals)",
388
- "error": "invalid-type"
389
- },
390
- {
391
- "expression": "join('|', decimals[].to_string(@))",
392
- "result": "1.01|1.2|-1.5"
393
- },
394
- {
395
- "expression": "join('|', empty_list)",
396
- "result": ""
397
- },
398
- {
399
- "expression": "reverse(numbers)",
400
- "result": [5, 4, 3, -1]
401
- },
402
- {
403
- "expression": "reverse(array)",
404
- "result": ["100", "a", 5, 4, 3, -1]
405
- },
406
- {
407
- "expression": "reverse(`[]`)",
408
- "result": []
409
- },
410
- {
411
- "expression": "reverse('')",
412
- "result": ""
413
- },
414
- {
415
- "expression": "reverse('hello world')",
416
- "result": "dlrow olleh"
417
- },
418
- {
419
- "expression": "starts_with(str, 'S')",
420
- "result": true
421
- },
422
- {
423
- "expression": "starts_with(str, 'St')",
424
- "result": true
425
- },
426
- {
427
- "expression": "starts_with(str, 'Str')",
428
- "result": true
429
- },
430
- {
431
- "expression": "starts_with(str, 'String')",
432
- "result": false
433
- },
434
- {
435
- "expression": "starts_with(str, `0`)",
436
- "error": "invalid-type"
437
- },
438
- {
439
- "expression": "sum(numbers)",
440
- "result": 11
441
- },
442
- {
443
- "expression": "sum(decimals)",
444
- "result": 0.71
445
- },
446
- {
447
- "expression": "sum(array)",
448
- "error": "invalid-type"
449
- },
450
- {
451
- "expression": "sum(array[].to_number(@))",
452
- "result": 111
453
- },
454
- {
455
- "expression": "sum(`[]`)",
456
- "result": 0
457
- },
458
- {
459
- "expression": "to_array('foo')",
460
- "result": ["foo"]
461
- },
462
- {
463
- "expression": "to_array(`0`)",
464
- "result": [0]
465
- },
466
- {
467
- "expression": "to_array(objects)",
468
- "result": [{"foo": "bar", "bar": "baz"}]
469
- },
470
- {
471
- "expression": "to_array(`[1, 2, 3]`)",
472
- "result": [1, 2, 3]
473
- },
474
- {
475
- "expression": "to_array(false)",
476
- "result": [false]
477
- },
478
- {
479
- "expression": "to_string('foo')",
480
- "result": "foo"
481
- },
482
- {
483
- "expression": "to_string(`1.2`)",
484
- "result": "1.2"
485
- },
486
- {
487
- "expression": "to_string(`[0, 1]`)",
488
- "result": "[0,1]"
489
- },
490
- {
491
- "expression": "to_number('1.0')",
492
- "result": 1.0
493
- },
494
- {
495
- "expression": "to_number('1.1')",
496
- "result": 1.1
497
- },
498
- {
499
- "expression": "to_number('4')",
500
- "result": 4
501
- },
502
- {
503
- "expression": "to_number('notanumber')",
504
- "result": null
505
- },
506
- {
507
- "expression": "to_number(`false`)",
508
- "result": null
509
- },
510
- {
511
- "expression": "to_number(`null`)",
512
- "result": null
513
- },
514
- {
515
- "expression": "to_number(`[0]`)",
516
- "result": null
517
- },
518
- {
519
- "expression": "to_number(`{\"foo\": 0}`)",
520
- "result": null
521
- },
522
- {
523
- "expression": "\"to_string\"(`1.0`)",
524
- "error": "syntax"
525
- },
526
- {
527
- "expression": "sort(numbers)",
528
- "result": [-1, 3, 4, 5]
529
- },
530
- {
531
- "expression": "sort(strings)",
532
- "result": ["a", "b", "c"]
533
- },
534
- {
535
- "expression": "sort(decimals)",
536
- "result": [-1.5, 1.01, 1.2]
537
- },
538
- {
539
- "expression": "sort(array)",
540
- "error": "invalid-type"
541
- },
542
- {
543
- "expression": "sort(abc)",
544
- "error": "invalid-type"
545
- },
546
- {
547
- "expression": "sort(empty_list)",
548
- "result": []
549
- },
550
- {
551
- "expression": "sort(@)",
552
- "error": "invalid-type"
553
- },
554
- {
555
- "expression": "not_null(unknown_key, str)",
556
- "result": "Str"
557
- },
558
- {
559
- "expression": "not_null(unknown_key, foo.bar, empty_list, str)",
560
- "result": []
561
- },
562
- {
563
- "expression": "not_null(unknown_key, null_key, empty_list, str)",
564
- "result": []
565
- },
566
- {
567
- "expression": "not_null(all, expressions, are_null)",
568
- "result": null
569
- },
570
- {
571
- "expression": "not_null()",
572
- "error": "invalid-arity"
573
- },
574
- {
575
- "description": "function projection on single arg function",
576
- "expression": "numbers[].to_string(@)",
577
- "result": ["-1", "3", "4", "5"]
578
- },
579
- {
580
- "description": "function projection on single arg function",
581
- "expression": "array[].to_number(@)",
582
- "result": [-1, 3, 4, 5, 100]
583
- }
584
- ]
585
- }, {
586
- "given":
587
- {
588
- "foo": [
589
- {"b": "b", "a": "a"},
590
- {"c": "c", "b": "b"},
591
- {"d": "d", "c": "c"},
592
- {"e": "e", "d": "d"},
593
- {"f": "f", "e": "e"}
594
- ]
595
- },
596
- "cases": [
597
- {
598
- "description": "function projection on variadic function",
599
- "expression": "foo[].not_null(f, e, d, c, b, a)",
600
- "result": ["b", "c", "d", "e", "f"]
601
- }
602
- ]
603
- }, {
604
- "given":
605
- {
606
- "people": [
607
- {"age": 20, "age_str": "20", "bool": true, "name": "a", "extra": "foo"},
608
- {"age": 40, "age_str": "40", "bool": false, "name": "b", "extra": "bar"},
609
- {"age": 30, "age_str": "30", "bool": true, "name": "c"},
610
- {"age": 50, "age_str": "50", "bool": false, "name": "d"},
611
- {"age": 10, "age_str": "10", "bool": true, "name": 3}
612
- ]
613
- },
614
- "cases": [
615
- {
616
- "description": "sort by field expression",
617
- "expression": "sort_by(people, &age)",
618
- "result": [
619
- {"age": 10, "age_str": "10", "bool": true, "name": 3},
620
- {"age": 20, "age_str": "20", "bool": true, "name": "a", "extra": "foo"},
621
- {"age": 30, "age_str": "30", "bool": true, "name": "c"},
622
- {"age": 40, "age_str": "40", "bool": false, "name": "b", "extra": "bar"},
623
- {"age": 50, "age_str": "50", "bool": false, "name": "d"}
624
- ]
625
- },
626
- {
627
- "expression": "sort_by(people, &age_str)",
628
- "result": [
629
- {"age": 10, "age_str": "10", "bool": true, "name": 3},
630
- {"age": 20, "age_str": "20", "bool": true, "name": "a", "extra": "foo"},
631
- {"age": 30, "age_str": "30", "bool": true, "name": "c"},
632
- {"age": 40, "age_str": "40", "bool": false, "name": "b", "extra": "bar"},
633
- {"age": 50, "age_str": "50", "bool": false, "name": "d"}
634
- ]
635
- },
636
- {
637
- "description": "sort by function expression",
638
- "expression": "sort_by(people, &to_number(age_str))",
639
- "result": [
640
- {"age": 10, "age_str": "10", "bool": true, "name": 3},
641
- {"age": 20, "age_str": "20", "bool": true, "name": "a", "extra": "foo"},
642
- {"age": 30, "age_str": "30", "bool": true, "name": "c"},
643
- {"age": 40, "age_str": "40", "bool": false, "name": "b", "extra": "bar"},
644
- {"age": 50, "age_str": "50", "bool": false, "name": "d"}
645
- ]
646
- },
647
- {
648
- "description": "function projection on sort_by function",
649
- "expression": "sort_by(people, &age)[].name",
650
- "result": [3, "a", "c", "b", "d"]
651
- },
652
- {
653
- "expression": "sort_by(people, &extra)",
654
- "error": "invalid-type"
655
- },
656
- {
657
- "expression": "sort_by(people, &bool)",
658
- "error": "invalid-type"
659
- },
660
- {
661
- "expression": "sort_by(people, &name)",
662
- "error": "invalid-type"
663
- },
664
- {
665
- "expression": "sort_by(people, name)",
666
- "error": "invalid-type"
667
- },
668
- {
669
- "expression": "sort_by(people, &age)[].extra",
670
- "result": ["foo", "bar"]
671
- },
672
- {
673
- "expression": "sort_by(`[]`, &age)",
674
- "result": []
675
- },
676
- {
677
- "expression": "max_by(people, &age)",
678
- "result": {"age": 50, "age_str": "50", "bool": false, "name": "d"}
679
- },
680
- {
681
- "expression": "max_by(people, &age_str)",
682
- "result": {"age": 50, "age_str": "50", "bool": false, "name": "d"}
683
- },
684
- {
685
- "expression": "max_by(people, &bool)",
686
- "error": "invalid-type"
687
- },
688
- {
689
- "expression": "max_by(people, &extra)",
690
- "error": "invalid-type"
691
- },
692
- {
693
- "expression": "max_by(people, &to_number(age_str))",
694
- "result": {"age": 50, "age_str": "50", "bool": false, "name": "d"}
695
- },
696
- {
697
- "expression": "min_by(people, &age)",
698
- "result": {"age": 10, "age_str": "10", "bool": true, "name": 3}
699
- },
700
- {
701
- "expression": "min_by(people, &age_str)",
702
- "result": {"age": 10, "age_str": "10", "bool": true, "name": 3}
703
- },
704
- {
705
- "expression": "min_by(people, &bool)",
706
- "error": "invalid-type"
707
- },
708
- {
709
- "expression": "min_by(people, &extra)",
710
- "error": "invalid-type"
711
- },
712
- {
713
- "expression": "min_by(people, &to_number(age_str))",
714
- "result": {"age": 10, "age_str": "10", "bool": true, "name": 3}
715
- }
716
- ]
717
- }, {
718
- "given":
719
- {
720
- "people": [
721
- {"age": 10, "order": "1"},
722
- {"age": 10, "order": "2"},
723
- {"age": 10, "order": "3"},
724
- {"age": 10, "order": "4"},
725
- {"age": 10, "order": "5"},
726
- {"age": 10, "order": "6"},
727
- {"age": 10, "order": "7"},
728
- {"age": 10, "order": "8"},
729
- {"age": 10, "order": "9"},
730
- {"age": 10, "order": "10"},
731
- {"age": 10, "order": "11"}
732
- ]
733
- },
734
- "cases": [
735
- {
736
- "description": "stable sort order",
737
- "expression": "sort_by(people, &age)",
738
- "result": [
739
- {"age": 10, "order": "1"},
740
- {"age": 10, "order": "2"},
741
- {"age": 10, "order": "3"},
742
- {"age": 10, "order": "4"},
743
- {"age": 10, "order": "5"},
744
- {"age": 10, "order": "6"},
745
- {"age": 10, "order": "7"},
746
- {"age": 10, "order": "8"},
747
- {"age": 10, "order": "9"},
748
- {"age": 10, "order": "10"},
749
- {"age": 10, "order": "11"}
750
- ]
751
- }
752
- ]
753
- }, {
754
- "given":
755
- {
756
- "people": [
757
- {"a": 10, "b": 1, "c": "z"},
758
- {"a": 10, "b": 2, "c": null},
759
- {"a": 10, "b": 3},
760
- {"a": 10, "b": 4, "c": "z"},
761
- {"a": 10, "b": 5, "c": null},
762
- {"a": 10, "b": 6},
763
- {"a": 10, "b": 7, "c": "z"},
764
- {"a": 10, "b": 8, "c": null},
765
- {"a": 10, "b": 9}
766
- ],
767
- "empty": []
768
- },
769
- "cases": [
770
- {
771
- "expression": "map(&a, people)",
772
- "result": [10, 10, 10, 10, 10, 10, 10, 10, 10]
773
- },
774
- {
775
- "expression": "map(&c, people)",
776
- "result": ["z", null, null, "z", null, null, "z", null, null]
777
- },
778
- {
779
- "expression": "map(&a, badkey)",
780
- "error": "invalid-type"
781
- },
782
- {
783
- "expression": "map(&foo, empty)",
784
- "result": []
785
- }
786
- ]
787
- }, {
788
- "given": {
789
- "array": [
790
- {
791
- "foo": {"bar": "yes1"}
792
- },
793
- {
794
- "foo": {"bar": "yes2"}
795
- },
796
- {
797
- "foo1": {"bar": "no"}
798
- }
799
- ]},
800
- "cases": [
801
- {
802
- "expression": "map(&foo.bar, array)",
803
- "result": ["yes1", "yes2", null]
804
- },
805
- {
806
- "expression": "map(&foo1.bar, array)",
807
- "result": [null, null, "no"]
808
- },
809
- {
810
- "expression": "map(&foo.bar.baz, array)",
811
- "result": [null, null, null]
812
- }
813
- ]
814
- }, {
815
- "given": {
816
- "array": [[1, 2, 3, [4]], [5, 6, 7, [8, 9]]]
817
- },
818
- "cases": [
819
- {
820
- "expression": "map(&[], array)",
821
- "result": [[1, 2, 3, 4], [5, 6, 7, 8, 9]]
822
- }
823
- ]
824
- }
825
- ]