@hypequery/protocol-conformance 0.15.2 → 0.16.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (30) hide show
  1. package/README.md +8 -0
  2. package/dist/adapters/client-contract.d.ts +5 -0
  3. package/dist/adapters/client-contract.d.ts.map +1 -0
  4. package/dist/adapters/client-contract.js +29 -0
  5. package/dist/adapters/reference.d.ts +1 -1
  6. package/dist/adapters/reference.d.ts.map +1 -1
  7. package/dist/adapters/reference.js +8 -2
  8. package/dist/adapters/utils/client-contract-targets.d.ts +4 -0
  9. package/dist/adapters/utils/client-contract-targets.d.ts.map +1 -0
  10. package/dist/adapters/utils/client-contract-targets.js +7 -0
  11. package/dist/client-contract-fixtures.d.ts +3 -0
  12. package/dist/client-contract-fixtures.d.ts.map +1 -0
  13. package/dist/client-contract-fixtures.js +61 -0
  14. package/dist/compare.d.ts.map +1 -1
  15. package/dist/compare.js +8 -0
  16. package/dist/manifest.d.ts.map +1 -1
  17. package/dist/manifest.js +3 -1
  18. package/fixtures/client-contract-v1/README.md +29 -0
  19. package/fixtures/client-contract-v1/identities.json +36 -0
  20. package/fixtures/client-contract-v1/queries.json +484 -0
  21. package/fixtures/client-contract-v1/query-rejections.json +2114 -0
  22. package/fixtures/client-contract-v1/rejections.json +594 -0
  23. package/fixtures/client-contract-v1/relations.json +70 -0
  24. package/fixtures/client-contract-v1/success.json +696 -0
  25. package/fixtures/client-contract-v1/timezone-names.txt +597 -0
  26. package/fixtures/deployments-v2/identity.json +20 -0
  27. package/fixtures/deployments-v2/rejections.json +101 -0
  28. package/fixtures/deployments-v2/success.json +98 -0
  29. package/fixtures/manifest.json +33 -0
  30. package/package.json +3 -3
@@ -0,0 +1,696 @@
1
+ [
2
+ {
3
+ "id": "build",
4
+ "value": {
5
+ "kind": "hypequery-client-contract",
6
+ "version": 1,
7
+ "view": "build",
8
+ "endpoints": [
9
+ {
10
+ "id": "countries",
11
+ "kind": "dataset",
12
+ "dataset": "countries",
13
+ "path": "/api/v1/datasets/countries/query",
14
+ "dimensions": {
15
+ "country": {
16
+ "type": "string",
17
+ "wireType": "string",
18
+ "nullable": false,
19
+ "groupable": true,
20
+ "orderable": true
21
+ }
22
+ },
23
+ "measures": {},
24
+ "filters": {},
25
+ "time": null,
26
+ "defaultMeasures": [],
27
+ "metadata": false,
28
+ "limits": {
29
+ "defaultLimit": 100,
30
+ "maxLimit": 1000,
31
+ "maxOffset": 10000,
32
+ "maxDimensions": 50,
33
+ "maxMeasures": 0,
34
+ "maxPredicates": 0,
35
+ "maxOrderBy": 50,
36
+ "maxFilterValues": 1000
37
+ },
38
+ "schemaHash": "9a5f50cd7564f283d2f0ee8f3f1cdc27731683c939e176bd25919a83d28d94ca"
39
+ },
40
+ {
41
+ "id": "orders",
42
+ "kind": "dataset",
43
+ "dataset": "orders",
44
+ "path": "/api/v1/datasets/orders/query",
45
+ "dimensions": {
46
+ "country": {
47
+ "type": "string",
48
+ "wireType": "string",
49
+ "nullable": false,
50
+ "groupable": true,
51
+ "orderable": true
52
+ },
53
+ "amount": {
54
+ "type": "number",
55
+ "wireType": "number-or-string",
56
+ "nullable": "unknown",
57
+ "groupable": true,
58
+ "orderable": true
59
+ },
60
+ "customer.tier": {
61
+ "type": "string",
62
+ "wireType": "string",
63
+ "nullable": true,
64
+ "groupable": true,
65
+ "orderable": true
66
+ },
67
+ "customer.active": {
68
+ "type": "boolean",
69
+ "wireType": "boolean",
70
+ "nullable": true,
71
+ "groupable": false,
72
+ "orderable": false
73
+ }
74
+ },
75
+ "measures": {
76
+ "revenue": {
77
+ "wireType": "string",
78
+ "nullable": true,
79
+ "having": true
80
+ },
81
+ "orderCount": {
82
+ "wireType": "string",
83
+ "nullable": true,
84
+ "having": true
85
+ },
86
+ "averageRevenue": {
87
+ "wireType": "string",
88
+ "nullable": true,
89
+ "having": true
90
+ },
91
+ "customer.unique": {
92
+ "wireType": "string",
93
+ "nullable": true,
94
+ "having": true
95
+ },
96
+ "latestLabel": {
97
+ "wireType": "string",
98
+ "nullable": true,
99
+ "having": false
100
+ }
101
+ },
102
+ "filters": {
103
+ "country": {
104
+ "type": "string",
105
+ "operators": [
106
+ "eq",
107
+ "in",
108
+ "like",
109
+ "neq",
110
+ "notIn"
111
+ ]
112
+ },
113
+ "amount": {
114
+ "type": "number",
115
+ "operators": [
116
+ "between",
117
+ "eq",
118
+ "gt",
119
+ "gte",
120
+ "in",
121
+ "lt",
122
+ "lte",
123
+ "neq",
124
+ "notIn"
125
+ ]
126
+ },
127
+ "customer.tier": {
128
+ "type": "string",
129
+ "operators": [
130
+ "eq",
131
+ "in"
132
+ ]
133
+ },
134
+ "customer.active": {
135
+ "type": "boolean",
136
+ "operators": [
137
+ "eq",
138
+ "neq"
139
+ ]
140
+ },
141
+ "paidStatus": {
142
+ "type": "string",
143
+ "operators": [
144
+ "eq"
145
+ ]
146
+ }
147
+ },
148
+ "time": {
149
+ "grains": [
150
+ "day",
151
+ "hour",
152
+ "month",
153
+ "week"
154
+ ],
155
+ "defaultTimezone": "UTC",
156
+ "timezone": true,
157
+ "periodFormat": "calendar-date-or-local-datetime-v1"
158
+ },
159
+ "defaultMeasures": [
160
+ "revenue",
161
+ "orderCount",
162
+ "latestLabel"
163
+ ],
164
+ "metadata": true,
165
+ "limits": {
166
+ "defaultLimit": 100,
167
+ "maxLimit": 1000,
168
+ "maxOffset": 10000,
169
+ "maxDimensions": 50,
170
+ "maxMeasures": 50,
171
+ "maxPredicates": 100,
172
+ "maxOrderBy": 50,
173
+ "maxFilterValues": 1000
174
+ },
175
+ "schemaHash": "88802c0d4798fd0758b7e7697f582b034afada967bfe0fdcb1cafd957144b1f3"
176
+ },
177
+ {
178
+ "id": "ordersRevenue",
179
+ "kind": "metric",
180
+ "dataset": "orders",
181
+ "path": "/api/v1/metrics/revenue",
182
+ "dimensions": {
183
+ "country": {
184
+ "type": "string",
185
+ "wireType": "string",
186
+ "nullable": false,
187
+ "groupable": true,
188
+ "orderable": true
189
+ },
190
+ "customer.tier": {
191
+ "type": "string",
192
+ "wireType": "string",
193
+ "nullable": true,
194
+ "groupable": true,
195
+ "orderable": true
196
+ },
197
+ "customer.active": {
198
+ "type": "boolean",
199
+ "wireType": "boolean",
200
+ "nullable": true,
201
+ "groupable": false,
202
+ "orderable": false
203
+ }
204
+ },
205
+ "measures": {
206
+ "revenue": {
207
+ "wireType": "string",
208
+ "nullable": true,
209
+ "having": false
210
+ }
211
+ },
212
+ "filters": {
213
+ "country": {
214
+ "type": "string",
215
+ "operators": [
216
+ "eq",
217
+ "in",
218
+ "like",
219
+ "neq",
220
+ "notIn"
221
+ ]
222
+ },
223
+ "amount": {
224
+ "type": "number",
225
+ "operators": [
226
+ "between",
227
+ "eq",
228
+ "gt",
229
+ "gte",
230
+ "in",
231
+ "lt",
232
+ "lte",
233
+ "neq",
234
+ "notIn"
235
+ ]
236
+ },
237
+ "customer.tier": {
238
+ "type": "string",
239
+ "operators": [
240
+ "eq",
241
+ "in"
242
+ ]
243
+ },
244
+ "customer.active": {
245
+ "type": "boolean",
246
+ "operators": [
247
+ "eq",
248
+ "neq"
249
+ ]
250
+ },
251
+ "paidStatus": {
252
+ "type": "string",
253
+ "operators": [
254
+ "eq"
255
+ ]
256
+ }
257
+ },
258
+ "time": {
259
+ "grains": [
260
+ "day",
261
+ "hour",
262
+ "month",
263
+ "week"
264
+ ],
265
+ "defaultTimezone": "UTC",
266
+ "timezone": true,
267
+ "periodFormat": "calendar-date-or-local-datetime-v1"
268
+ },
269
+ "metadata": true,
270
+ "limits": {
271
+ "defaultLimit": 20,
272
+ "maxLimit": 20,
273
+ "maxOffset": 10000,
274
+ "maxDimensions": 50,
275
+ "maxMeasures": 1,
276
+ "maxPredicates": 100,
277
+ "maxOrderBy": 50,
278
+ "maxFilterValues": 1000
279
+ },
280
+ "schemaHash": "e282fb74777e65328d87cfe5caa0349104630cd88137b1842289e0c83676a98d"
281
+ }
282
+ ],
283
+ "contentHash": "f1a7071cfac3615ef809ce91f14c59b1ee68807b099afe1fe9ead06db1f5ecd1"
284
+ }
285
+ },
286
+ {
287
+ "id": "metric-only",
288
+ "value": {
289
+ "kind": "hypequery-client-contract",
290
+ "version": 1,
291
+ "view": "authorized",
292
+ "endpoints": [
293
+ {
294
+ "id": "ordersRevenue",
295
+ "kind": "metric",
296
+ "dataset": "orders",
297
+ "path": "/api/v1/metrics/revenue",
298
+ "dimensions": {
299
+ "country": {
300
+ "type": "string",
301
+ "wireType": "string",
302
+ "nullable": false,
303
+ "groupable": true,
304
+ "orderable": true
305
+ },
306
+ "customer.tier": {
307
+ "type": "string",
308
+ "wireType": "string",
309
+ "nullable": true,
310
+ "groupable": true,
311
+ "orderable": true
312
+ },
313
+ "customer.active": {
314
+ "type": "boolean",
315
+ "wireType": "boolean",
316
+ "nullable": true,
317
+ "groupable": false,
318
+ "orderable": false
319
+ }
320
+ },
321
+ "measures": {
322
+ "revenue": {
323
+ "wireType": "string",
324
+ "nullable": true,
325
+ "having": false
326
+ }
327
+ },
328
+ "filters": {
329
+ "country": {
330
+ "type": "string",
331
+ "operators": [
332
+ "eq",
333
+ "in",
334
+ "like",
335
+ "neq",
336
+ "notIn"
337
+ ]
338
+ },
339
+ "amount": {
340
+ "type": "number",
341
+ "operators": [
342
+ "between",
343
+ "eq",
344
+ "gt",
345
+ "gte",
346
+ "in",
347
+ "lt",
348
+ "lte",
349
+ "neq",
350
+ "notIn"
351
+ ]
352
+ },
353
+ "customer.tier": {
354
+ "type": "string",
355
+ "operators": [
356
+ "eq",
357
+ "in"
358
+ ]
359
+ },
360
+ "customer.active": {
361
+ "type": "boolean",
362
+ "operators": [
363
+ "eq",
364
+ "neq"
365
+ ]
366
+ },
367
+ "paidStatus": {
368
+ "type": "string",
369
+ "operators": [
370
+ "eq"
371
+ ]
372
+ }
373
+ },
374
+ "time": {
375
+ "grains": [
376
+ "day",
377
+ "hour",
378
+ "month",
379
+ "week"
380
+ ],
381
+ "defaultTimezone": "UTC",
382
+ "timezone": true,
383
+ "periodFormat": "calendar-date-or-local-datetime-v1"
384
+ },
385
+ "metadata": true,
386
+ "limits": {
387
+ "defaultLimit": 20,
388
+ "maxLimit": 20,
389
+ "maxOffset": 10000,
390
+ "maxDimensions": 50,
391
+ "maxMeasures": 1,
392
+ "maxPredicates": 100,
393
+ "maxOrderBy": 50,
394
+ "maxFilterValues": 1000
395
+ },
396
+ "schemaHash": "e282fb74777e65328d87cfe5caa0349104630cd88137b1842289e0c83676a98d"
397
+ }
398
+ ],
399
+ "contentHash": "3dc2252343be12ec4d2434a24dd86e4a4ec5aede037d646c44d14179d9672e81"
400
+ }
401
+ },
402
+ {
403
+ "id": "empty",
404
+ "value": {
405
+ "kind": "hypequery-client-contract",
406
+ "version": 1,
407
+ "view": "authorized",
408
+ "endpoints": [],
409
+ "contentHash": "7a31724c56ffb78f0e8e2ab022101c422671f6bb4291ae6c09b1cd634180507e"
410
+ }
411
+ },
412
+ {
413
+ "id": "narrowed",
414
+ "value": {
415
+ "kind": "hypequery-client-contract",
416
+ "version": 1,
417
+ "view": "authorized",
418
+ "endpoints": [
419
+ {
420
+ "id": "countries",
421
+ "kind": "dataset",
422
+ "dataset": "countries",
423
+ "path": "/api/v1/datasets/countries/query",
424
+ "dimensions": {
425
+ "country": {
426
+ "type": "string",
427
+ "wireType": "string",
428
+ "nullable": false,
429
+ "groupable": true,
430
+ "orderable": true
431
+ }
432
+ },
433
+ "measures": {},
434
+ "filters": {},
435
+ "time": null,
436
+ "defaultMeasures": [],
437
+ "metadata": false,
438
+ "limits": {
439
+ "defaultLimit": 10,
440
+ "maxLimit": 10,
441
+ "maxOffset": 10000,
442
+ "maxDimensions": 50,
443
+ "maxMeasures": 0,
444
+ "maxPredicates": 0,
445
+ "maxOrderBy": 50,
446
+ "maxFilterValues": 1000
447
+ },
448
+ "schemaHash": "9a5f50cd7564f283d2f0ee8f3f1cdc27731683c939e176bd25919a83d28d94ca"
449
+ },
450
+ {
451
+ "id": "orders",
452
+ "kind": "dataset",
453
+ "dataset": "orders",
454
+ "path": "/api/v1/datasets/orders/query",
455
+ "dimensions": {
456
+ "country": {
457
+ "type": "string",
458
+ "wireType": "string",
459
+ "nullable": false,
460
+ "groupable": true,
461
+ "orderable": true
462
+ },
463
+ "amount": {
464
+ "type": "number",
465
+ "wireType": "number-or-string",
466
+ "nullable": "unknown",
467
+ "groupable": true,
468
+ "orderable": true
469
+ },
470
+ "customer.tier": {
471
+ "type": "string",
472
+ "wireType": "string",
473
+ "nullable": true,
474
+ "groupable": true,
475
+ "orderable": true
476
+ },
477
+ "customer.active": {
478
+ "type": "boolean",
479
+ "wireType": "boolean",
480
+ "nullable": true,
481
+ "groupable": false,
482
+ "orderable": false
483
+ }
484
+ },
485
+ "measures": {
486
+ "revenue": {
487
+ "wireType": "string",
488
+ "nullable": true,
489
+ "having": true
490
+ },
491
+ "orderCount": {
492
+ "wireType": "string",
493
+ "nullable": true,
494
+ "having": true
495
+ },
496
+ "averageRevenue": {
497
+ "wireType": "string",
498
+ "nullable": true,
499
+ "having": true
500
+ },
501
+ "customer.unique": {
502
+ "wireType": "string",
503
+ "nullable": true,
504
+ "having": true
505
+ },
506
+ "latestLabel": {
507
+ "wireType": "string",
508
+ "nullable": true,
509
+ "having": false
510
+ }
511
+ },
512
+ "filters": {
513
+ "country": {
514
+ "type": "string",
515
+ "operators": [
516
+ "eq",
517
+ "in",
518
+ "like",
519
+ "neq",
520
+ "notIn"
521
+ ]
522
+ },
523
+ "amount": {
524
+ "type": "number",
525
+ "operators": [
526
+ "between",
527
+ "eq",
528
+ "gt",
529
+ "gte",
530
+ "in",
531
+ "lt",
532
+ "lte",
533
+ "neq",
534
+ "notIn"
535
+ ]
536
+ },
537
+ "customer.tier": {
538
+ "type": "string",
539
+ "operators": [
540
+ "eq",
541
+ "in"
542
+ ]
543
+ },
544
+ "customer.active": {
545
+ "type": "boolean",
546
+ "operators": [
547
+ "eq",
548
+ "neq"
549
+ ]
550
+ },
551
+ "paidStatus": {
552
+ "type": "string",
553
+ "operators": [
554
+ "eq"
555
+ ]
556
+ }
557
+ },
558
+ "time": {
559
+ "grains": [
560
+ "day",
561
+ "hour",
562
+ "month",
563
+ "week"
564
+ ],
565
+ "defaultTimezone": "UTC",
566
+ "timezone": true,
567
+ "periodFormat": "calendar-date-or-local-datetime-v1"
568
+ },
569
+ "defaultMeasures": [
570
+ "revenue",
571
+ "orderCount",
572
+ "latestLabel"
573
+ ],
574
+ "metadata": true,
575
+ "limits": {
576
+ "defaultLimit": 10,
577
+ "maxLimit": 10,
578
+ "maxOffset": 10000,
579
+ "maxDimensions": 50,
580
+ "maxMeasures": 50,
581
+ "maxPredicates": 100,
582
+ "maxOrderBy": 50,
583
+ "maxFilterValues": 1000
584
+ },
585
+ "schemaHash": "88802c0d4798fd0758b7e7697f582b034afada967bfe0fdcb1cafd957144b1f3"
586
+ },
587
+ {
588
+ "id": "ordersRevenue",
589
+ "kind": "metric",
590
+ "dataset": "orders",
591
+ "path": "/api/v1/metrics/revenue",
592
+ "dimensions": {
593
+ "country": {
594
+ "type": "string",
595
+ "wireType": "string",
596
+ "nullable": false,
597
+ "groupable": true,
598
+ "orderable": true
599
+ },
600
+ "customer.tier": {
601
+ "type": "string",
602
+ "wireType": "string",
603
+ "nullable": true,
604
+ "groupable": true,
605
+ "orderable": true
606
+ },
607
+ "customer.active": {
608
+ "type": "boolean",
609
+ "wireType": "boolean",
610
+ "nullable": true,
611
+ "groupable": false,
612
+ "orderable": false
613
+ }
614
+ },
615
+ "measures": {
616
+ "revenue": {
617
+ "wireType": "string",
618
+ "nullable": true,
619
+ "having": false
620
+ }
621
+ },
622
+ "filters": {
623
+ "country": {
624
+ "type": "string",
625
+ "operators": [
626
+ "eq",
627
+ "in",
628
+ "like",
629
+ "neq",
630
+ "notIn"
631
+ ]
632
+ },
633
+ "amount": {
634
+ "type": "number",
635
+ "operators": [
636
+ "between",
637
+ "eq",
638
+ "gt",
639
+ "gte",
640
+ "in",
641
+ "lt",
642
+ "lte",
643
+ "neq",
644
+ "notIn"
645
+ ]
646
+ },
647
+ "customer.tier": {
648
+ "type": "string",
649
+ "operators": [
650
+ "eq",
651
+ "in"
652
+ ]
653
+ },
654
+ "customer.active": {
655
+ "type": "boolean",
656
+ "operators": [
657
+ "eq",
658
+ "neq"
659
+ ]
660
+ },
661
+ "paidStatus": {
662
+ "type": "string",
663
+ "operators": [
664
+ "eq"
665
+ ]
666
+ }
667
+ },
668
+ "time": {
669
+ "grains": [
670
+ "day",
671
+ "hour",
672
+ "month",
673
+ "week"
674
+ ],
675
+ "defaultTimezone": "UTC",
676
+ "timezone": true,
677
+ "periodFormat": "calendar-date-or-local-datetime-v1"
678
+ },
679
+ "metadata": true,
680
+ "limits": {
681
+ "defaultLimit": 10,
682
+ "maxLimit": 10,
683
+ "maxOffset": 10000,
684
+ "maxDimensions": 50,
685
+ "maxMeasures": 1,
686
+ "maxPredicates": 100,
687
+ "maxOrderBy": 50,
688
+ "maxFilterValues": 1000
689
+ },
690
+ "schemaHash": "e282fb74777e65328d87cfe5caa0349104630cd88137b1842289e0c83676a98d"
691
+ }
692
+ ],
693
+ "contentHash": "c350b9b6e0351acbbac7509bf5d889afa343b9fb5048d826265d8e9f5ef895d8"
694
+ }
695
+ }
696
+ ]