order3000 0.24.4 → 0.25.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.
- package/README.md +17 -4
- package/dist/client.cjs +22 -39
- package/dist/client.d.cts +458 -234
- package/dist/client.d.mts +458 -234
- package/dist/client.mjs +17 -34
- package/dist/deliveryAddressSchema-8YX7yh5X.mjs +34 -0
- package/dist/deliveryAddressSchema-DQJ8BDYX.cjs +40 -0
- package/dist/schemas.cjs +1349 -136
- package/dist/schemas.d.cts +1313 -3266
- package/dist/schemas.d.mts +1313 -3266
- package/dist/schemas.mjs +1349 -136
- package/package.json +11 -8
package/dist/client.d.mts
CHANGED
|
@@ -1,4 +1,6 @@
|
|
|
1
1
|
import { CurrencyCode } from '@kolaveri/money';
|
|
2
|
+
import { z as z$1 } from 'zod';
|
|
3
|
+
import { z } from 'zod/v4';
|
|
2
4
|
import { RealtimePostgresChangesPayload, RealtimeChannel, SupabaseClient } from '@supabase/supabase-js';
|
|
3
5
|
|
|
4
6
|
declare class TokenManager {
|
|
@@ -246,11 +248,22 @@ interface components {
|
|
|
246
248
|
[key: string]: unknown;
|
|
247
249
|
};
|
|
248
250
|
};
|
|
249
|
-
/**
|
|
250
|
-
|
|
251
|
-
|
|
252
|
-
|
|
253
|
-
|
|
251
|
+
/** OgImage */
|
|
252
|
+
OgImage: {
|
|
253
|
+
id: string;
|
|
254
|
+
publicUrl: string | null;
|
|
255
|
+
locale: string;
|
|
256
|
+
};
|
|
257
|
+
/** ArticleMentionCounts */
|
|
258
|
+
ArticleMentionCounts: {
|
|
259
|
+
dishes: number;
|
|
260
|
+
beverages: number;
|
|
261
|
+
ingredients: number;
|
|
262
|
+
menus: number;
|
|
263
|
+
rituals: number;
|
|
264
|
+
};
|
|
265
|
+
/** FetchArticlesResponse */
|
|
266
|
+
FetchArticlesResponse: {
|
|
254
267
|
id: string;
|
|
255
268
|
venueId: string;
|
|
256
269
|
accessor: string;
|
|
@@ -272,22 +285,30 @@ interface components {
|
|
|
272
285
|
content: {
|
|
273
286
|
[key: string]: unknown;
|
|
274
287
|
} | null;
|
|
288
|
+
metaTitle: {
|
|
289
|
+
[key: string]: string;
|
|
290
|
+
} | null;
|
|
291
|
+
metaDescription: {
|
|
292
|
+
[key: string]: string;
|
|
293
|
+
} | null;
|
|
275
294
|
tags: string[];
|
|
276
295
|
isActive: boolean;
|
|
277
296
|
isFeatured: boolean;
|
|
278
297
|
priority: number;
|
|
279
|
-
|
|
280
|
-
|
|
281
|
-
|
|
298
|
+
/** @enum {string} */
|
|
299
|
+
status: "draft" | "published";
|
|
300
|
+
publishedAt: string | null;
|
|
301
|
+
createdAt: string | null;
|
|
302
|
+
updatedAt: string | null;
|
|
282
303
|
featureImage: components["schemas"]["FeatureImage"] | null;
|
|
283
|
-
|
|
284
|
-
|
|
285
|
-
|
|
304
|
+
ogImage?: components["schemas"]["OgImage"] | null;
|
|
305
|
+
mentionCounts?: components["schemas"]["ArticleMentionCounts"];
|
|
306
|
+
}[];
|
|
286
307
|
/**
|
|
287
|
-
*
|
|
288
|
-
* @description A venue's article. `content` is a TipTap JSON document; treat it as opaque on the wire. `featureImage` is resolved per-locale with a fallback to the venue's primary locale.
|
|
308
|
+
* FetchArticleResponse
|
|
309
|
+
* @description A venue's article. `content` is a TipTap JSON document; treat it as opaque on the wire. `featureImage` is resolved per-locale with a fallback to the venue's primary locale. `ogImage` overrides the social-card image when set; `null` means it falls back to `featureImage`.
|
|
289
310
|
*/
|
|
290
|
-
|
|
311
|
+
FetchArticleResponse: {
|
|
291
312
|
id: string;
|
|
292
313
|
venueId: string;
|
|
293
314
|
accessor: string;
|
|
@@ -309,45 +330,54 @@ interface components {
|
|
|
309
330
|
content: {
|
|
310
331
|
[key: string]: unknown;
|
|
311
332
|
} | null;
|
|
333
|
+
metaTitle: {
|
|
334
|
+
[key: string]: string;
|
|
335
|
+
} | null;
|
|
336
|
+
metaDescription: {
|
|
337
|
+
[key: string]: string;
|
|
338
|
+
} | null;
|
|
312
339
|
tags: string[];
|
|
313
340
|
isActive: boolean;
|
|
314
341
|
isFeatured: boolean;
|
|
315
342
|
priority: number;
|
|
316
|
-
|
|
317
|
-
|
|
318
|
-
|
|
343
|
+
/** @enum {string} */
|
|
344
|
+
status: "draft" | "published";
|
|
345
|
+
publishedAt: string | null;
|
|
346
|
+
createdAt: string | null;
|
|
347
|
+
updatedAt: string | null;
|
|
319
348
|
featureImage: components["schemas"]["FeatureImage"] | null;
|
|
349
|
+
ogImage?: components["schemas"]["OgImage"] | null;
|
|
320
350
|
};
|
|
321
|
-
/**
|
|
322
|
-
|
|
351
|
+
/** EditArticleRequest */
|
|
352
|
+
EditArticleRequest: {
|
|
323
353
|
slug?: {
|
|
324
|
-
[key: string]:
|
|
325
|
-
[key: string]: unknown;
|
|
326
|
-
};
|
|
354
|
+
[key: string]: unknown;
|
|
327
355
|
};
|
|
328
356
|
title?: {
|
|
329
|
-
[key: string]:
|
|
330
|
-
[key: string]: unknown;
|
|
331
|
-
};
|
|
357
|
+
[key: string]: unknown;
|
|
332
358
|
};
|
|
333
359
|
excerpt?: {
|
|
334
|
-
[key: string]:
|
|
335
|
-
[key: string]: unknown;
|
|
336
|
-
};
|
|
360
|
+
[key: string]: unknown;
|
|
337
361
|
};
|
|
338
362
|
content?: {
|
|
339
363
|
[key: string]: unknown;
|
|
340
364
|
};
|
|
365
|
+
metaTitle?: {
|
|
366
|
+
[key: string]: string;
|
|
367
|
+
};
|
|
368
|
+
metaDescription?: {
|
|
369
|
+
[key: string]: string;
|
|
370
|
+
};
|
|
341
371
|
tags?: string[];
|
|
342
372
|
isActive?: boolean;
|
|
343
373
|
isFeatured?: boolean;
|
|
344
374
|
priority?: number;
|
|
345
375
|
};
|
|
346
376
|
/**
|
|
347
|
-
*
|
|
348
|
-
* @description A venue's article. `content` is a TipTap JSON document; treat it as opaque on the wire. `featureImage` is resolved per-locale with a fallback to the venue's primary locale.
|
|
377
|
+
* EditArticleResponse
|
|
378
|
+
* @description A venue's article. `content` is a TipTap JSON document; treat it as opaque on the wire. `featureImage` is resolved per-locale with a fallback to the venue's primary locale. `ogImage` overrides the social-card image when set; `null` means it falls back to `featureImage`.
|
|
349
379
|
*/
|
|
350
|
-
|
|
380
|
+
EditArticleResponse: {
|
|
351
381
|
id: string;
|
|
352
382
|
venueId: string;
|
|
353
383
|
accessor: string;
|
|
@@ -369,14 +399,23 @@ interface components {
|
|
|
369
399
|
content: {
|
|
370
400
|
[key: string]: unknown;
|
|
371
401
|
} | null;
|
|
402
|
+
metaTitle: {
|
|
403
|
+
[key: string]: string;
|
|
404
|
+
} | null;
|
|
405
|
+
metaDescription: {
|
|
406
|
+
[key: string]: string;
|
|
407
|
+
} | null;
|
|
372
408
|
tags: string[];
|
|
373
409
|
isActive: boolean;
|
|
374
410
|
isFeatured: boolean;
|
|
375
411
|
priority: number;
|
|
376
|
-
|
|
377
|
-
|
|
378
|
-
|
|
412
|
+
/** @enum {string} */
|
|
413
|
+
status: "draft" | "published";
|
|
414
|
+
publishedAt: string | null;
|
|
415
|
+
createdAt: string | null;
|
|
416
|
+
updatedAt: string | null;
|
|
379
417
|
featureImage: components["schemas"]["FeatureImage"] | null;
|
|
418
|
+
ogImage?: components["schemas"]["OgImage"] | null;
|
|
380
419
|
};
|
|
381
420
|
/** UploadFeatureImageRequest */
|
|
382
421
|
UploadFeatureImageRequest: {
|
|
@@ -395,6 +434,22 @@ interface components {
|
|
|
395
434
|
[key: string]: unknown;
|
|
396
435
|
};
|
|
397
436
|
};
|
|
437
|
+
/** BasketTotals */
|
|
438
|
+
BasketTotals: {
|
|
439
|
+
/** @enum {string} */
|
|
440
|
+
currency: "EUR" | "CHF";
|
|
441
|
+
itemsTotal: number;
|
|
442
|
+
taxAmount: number;
|
|
443
|
+
depositCharge: number;
|
|
444
|
+
grossTotal: number;
|
|
445
|
+
depositCredit: number;
|
|
446
|
+
effectiveTotal: number;
|
|
447
|
+
cashRefund: number;
|
|
448
|
+
returnable: {
|
|
449
|
+
depositwareTemplateId: string;
|
|
450
|
+
count: number;
|
|
451
|
+
}[];
|
|
452
|
+
};
|
|
398
453
|
/**
|
|
399
454
|
* AddToBasketRequest
|
|
400
455
|
* @description Add an item to the shopping basket
|
|
@@ -428,21 +483,7 @@ interface components {
|
|
|
428
483
|
/** @enum {string} */
|
|
429
484
|
currency: "EUR" | "CHF";
|
|
430
485
|
} | null;
|
|
431
|
-
totals:
|
|
432
|
-
/** @enum {string} */
|
|
433
|
-
currency: "EUR" | "CHF";
|
|
434
|
-
itemsTotal: number;
|
|
435
|
-
taxAmount: number;
|
|
436
|
-
depositCharge: number;
|
|
437
|
-
grossTotal: number;
|
|
438
|
-
depositCredit: number;
|
|
439
|
-
effectiveTotal: number;
|
|
440
|
-
cashRefund: number;
|
|
441
|
-
returnable: {
|
|
442
|
-
depositwareTemplateId: string;
|
|
443
|
-
count: number;
|
|
444
|
-
}[];
|
|
445
|
-
};
|
|
486
|
+
totals: components["schemas"]["BasketTotals"];
|
|
446
487
|
};
|
|
447
488
|
/** RemoveFromBasketResponse */
|
|
448
489
|
RemoveFromBasketResponse: {
|
|
@@ -450,24 +491,12 @@ interface components {
|
|
|
450
491
|
/** Format: uuid */
|
|
451
492
|
basketItemId: string;
|
|
452
493
|
itemCount: number;
|
|
453
|
-
totals:
|
|
454
|
-
/** @enum {string} */
|
|
455
|
-
currency: "EUR" | "CHF";
|
|
456
|
-
itemsTotal: number;
|
|
457
|
-
taxAmount: number;
|
|
458
|
-
depositCharge: number;
|
|
459
|
-
grossTotal: number;
|
|
460
|
-
depositCredit: number;
|
|
461
|
-
effectiveTotal: number;
|
|
462
|
-
cashRefund: number;
|
|
463
|
-
returnable: {
|
|
464
|
-
depositwareTemplateId: string;
|
|
465
|
-
count: number;
|
|
466
|
-
}[];
|
|
467
|
-
} | null;
|
|
494
|
+
totals: components["schemas"]["BasketTotals"] | null;
|
|
468
495
|
};
|
|
469
496
|
/** GetBasketTotalsRequest */
|
|
470
497
|
GetBasketTotalsRequest: {
|
|
498
|
+
venueAccessor: string;
|
|
499
|
+
basketId: string;
|
|
471
500
|
declaredReturns?: {
|
|
472
501
|
depositwareTemplateId: string;
|
|
473
502
|
count: number;
|
|
@@ -491,6 +520,7 @@ interface components {
|
|
|
491
520
|
};
|
|
492
521
|
/** SetBasketDeclaredReturnsRequest */
|
|
493
522
|
SetBasketDeclaredReturnsRequest: {
|
|
523
|
+
venueAccessor: string;
|
|
494
524
|
basketId: string;
|
|
495
525
|
sessionId: string;
|
|
496
526
|
declaredReturns: {
|
|
@@ -506,6 +536,27 @@ interface components {
|
|
|
506
536
|
count: number;
|
|
507
537
|
}[];
|
|
508
538
|
};
|
|
539
|
+
/** FetchEventsResponse */
|
|
540
|
+
FetchEventsResponse: ({
|
|
541
|
+
id: string;
|
|
542
|
+
venueId: string;
|
|
543
|
+
} & {
|
|
544
|
+
[key: string]: unknown;
|
|
545
|
+
})[];
|
|
546
|
+
/**
|
|
547
|
+
* FetchEventResponse
|
|
548
|
+
* @description Event details. Nested objects (schedule, timeSlots, menus, posters, nextOccurrence) pass through; their shape follows the SDK Event interface.
|
|
549
|
+
*/
|
|
550
|
+
FetchEventResponse: {
|
|
551
|
+
id: string;
|
|
552
|
+
venueId: string;
|
|
553
|
+
accessor: string | null;
|
|
554
|
+
name: {
|
|
555
|
+
[key: string]: string;
|
|
556
|
+
};
|
|
557
|
+
} & {
|
|
558
|
+
[key: string]: unknown;
|
|
559
|
+
};
|
|
509
560
|
/**
|
|
510
561
|
* CreateEventRequest
|
|
511
562
|
* @description Request payload for creating a new event
|
|
@@ -527,7 +578,7 @@ interface components {
|
|
|
527
578
|
isRecurring?: boolean;
|
|
528
579
|
reservationsEnabled?: boolean;
|
|
529
580
|
bookingOpensAtDays?: number | null;
|
|
530
|
-
|
|
581
|
+
bookingClosesAtOffset?: number | null;
|
|
531
582
|
isActive?: boolean;
|
|
532
583
|
isFeatured?: boolean;
|
|
533
584
|
priority?: number;
|
|
@@ -543,8 +594,8 @@ interface components {
|
|
|
543
594
|
}[];
|
|
544
595
|
/** @enum {string|null} */
|
|
545
596
|
slotMode?: "interval" | "duration" | null;
|
|
546
|
-
|
|
547
|
-
|
|
597
|
+
intervalDuration?: number | null;
|
|
598
|
+
duration?: number | null;
|
|
548
599
|
} | null;
|
|
549
600
|
ritualAccessor?: string | null;
|
|
550
601
|
venueAccessor: string;
|
|
@@ -573,7 +624,7 @@ interface components {
|
|
|
573
624
|
isRecurring: boolean;
|
|
574
625
|
reservationsEnabled: boolean;
|
|
575
626
|
bookingOpensAtDays: number | null;
|
|
576
|
-
|
|
627
|
+
bookingClosesAtOffset: number | null;
|
|
577
628
|
isActive: boolean;
|
|
578
629
|
isFeatured: boolean;
|
|
579
630
|
priority: number;
|
|
@@ -583,30 +634,146 @@ interface components {
|
|
|
583
634
|
updatedAt: unknown;
|
|
584
635
|
};
|
|
585
636
|
/**
|
|
586
|
-
*
|
|
637
|
+
* FetchMenuResponse
|
|
587
638
|
* @description Menu details. Nested arrays (items, assets, bundles, schedule, etc.) pass through; their shape follows the SDK Menu interface.
|
|
588
639
|
*/
|
|
589
|
-
|
|
640
|
+
FetchMenuResponse: {
|
|
590
641
|
id: string;
|
|
591
642
|
venueId: string;
|
|
592
643
|
accessor: string;
|
|
593
|
-
name: {
|
|
594
|
-
[key: string]:
|
|
595
|
-
};
|
|
644
|
+
name: (string | number | boolean | (null)) | {
|
|
645
|
+
[key: string]: unknown;
|
|
646
|
+
} | unknown[];
|
|
647
|
+
description: ((string | number | boolean | (null)) | {
|
|
648
|
+
[key: string]: unknown;
|
|
649
|
+
} | unknown[]) | null;
|
|
650
|
+
metadata: ((string | number | boolean | (null)) | {
|
|
651
|
+
[key: string]: unknown;
|
|
652
|
+
} | unknown[]) | null;
|
|
653
|
+
sortIndex: string | null;
|
|
654
|
+
deliveryThresholdAmount: number | null;
|
|
655
|
+
deliveryThresholdQuantity: number | null;
|
|
656
|
+
createdAt: unknown;
|
|
657
|
+
updatedAt: unknown;
|
|
658
|
+
createdBy: string | null;
|
|
659
|
+
updatedBy: string | null;
|
|
660
|
+
assets?: {
|
|
661
|
+
id: string;
|
|
662
|
+
/** @enum {string} */
|
|
663
|
+
type: "image" | "video" | "document";
|
|
664
|
+
tags: string[] | null;
|
|
665
|
+
bucket: string;
|
|
666
|
+
storagePath: string;
|
|
667
|
+
filename: string;
|
|
668
|
+
contentType: string;
|
|
669
|
+
sizeBytes: number;
|
|
670
|
+
caption: (string | number | boolean | (null)) | {
|
|
671
|
+
[key: string]: unknown;
|
|
672
|
+
} | unknown[];
|
|
673
|
+
alt: (string | number | boolean | (null)) | {
|
|
674
|
+
[key: string]: unknown;
|
|
675
|
+
} | unknown[];
|
|
676
|
+
metadata: ((string | number | boolean | (null)) | {
|
|
677
|
+
[key: string]: unknown;
|
|
678
|
+
} | unknown[]) | null;
|
|
679
|
+
cropArea: ((string | number | boolean | (null)) | {
|
|
680
|
+
[key: string]: unknown;
|
|
681
|
+
} | unknown[]) | null;
|
|
682
|
+
isActive: boolean;
|
|
683
|
+
sortIndex: string | null;
|
|
684
|
+
createdAt: unknown;
|
|
685
|
+
updatedAt: unknown;
|
|
686
|
+
createdBy: string | null;
|
|
687
|
+
updatedBy: string | null;
|
|
688
|
+
venueId: string | null;
|
|
689
|
+
publicUrl: string | null;
|
|
690
|
+
}[];
|
|
691
|
+
items?: {
|
|
692
|
+
[key: string]: unknown;
|
|
693
|
+
}[];
|
|
596
694
|
} & {
|
|
597
695
|
[key: string]: unknown;
|
|
598
696
|
};
|
|
599
|
-
/**
|
|
600
|
-
|
|
697
|
+
/** FetchMenuBundlesResponse */
|
|
698
|
+
FetchMenuBundlesResponse: ({
|
|
601
699
|
id: string;
|
|
602
700
|
menuId: string;
|
|
701
|
+
name: {
|
|
702
|
+
[key: string]: string;
|
|
703
|
+
};
|
|
704
|
+
shortName: {
|
|
705
|
+
[key: string]: string;
|
|
706
|
+
} | null;
|
|
707
|
+
description: {
|
|
708
|
+
[key: string]: string;
|
|
709
|
+
} | null;
|
|
710
|
+
tags: string[];
|
|
711
|
+
price: {
|
|
712
|
+
amount: number;
|
|
713
|
+
/** @enum {string} */
|
|
714
|
+
currency: "EUR" | "CHF";
|
|
715
|
+
};
|
|
716
|
+
/** @enum {string} */
|
|
717
|
+
currency: "EUR" | "CHF";
|
|
718
|
+
taxRateId: string;
|
|
719
|
+
isActive: boolean;
|
|
720
|
+
sortIndex: string | null;
|
|
721
|
+
depositwareTemplateId: string | null;
|
|
722
|
+
depositwareTemplate: {
|
|
723
|
+
name: {
|
|
724
|
+
[key: string]: string;
|
|
725
|
+
};
|
|
726
|
+
} | null;
|
|
727
|
+
deposit: {
|
|
728
|
+
amount: number;
|
|
729
|
+
/** @enum {string} */
|
|
730
|
+
currency: "EUR" | "CHF";
|
|
731
|
+
} | null;
|
|
603
732
|
} & {
|
|
604
733
|
[key: string]: unknown;
|
|
605
734
|
})[];
|
|
606
|
-
/**
|
|
607
|
-
|
|
735
|
+
/** FetchMenuSubscriptionsResponse */
|
|
736
|
+
FetchMenuSubscriptionsResponse: ({
|
|
608
737
|
id: string;
|
|
609
738
|
menuId: string;
|
|
739
|
+
accessor: string;
|
|
740
|
+
name: {
|
|
741
|
+
[key: string]: string;
|
|
742
|
+
};
|
|
743
|
+
shortName: {
|
|
744
|
+
[key: string]: string;
|
|
745
|
+
} | null;
|
|
746
|
+
description: {
|
|
747
|
+
[key: string]: string;
|
|
748
|
+
} | null;
|
|
749
|
+
scheduleId: string | null;
|
|
750
|
+
allowance: number;
|
|
751
|
+
/** @enum {string} */
|
|
752
|
+
billingPeriod: "week" | "month" | "year";
|
|
753
|
+
/** @enum {string} */
|
|
754
|
+
allowancePeriod: "week" | "month" | "year";
|
|
755
|
+
expiryInDays: number;
|
|
756
|
+
price: number;
|
|
757
|
+
/** @enum {string} */
|
|
758
|
+
currency: "EUR" | "CHF";
|
|
759
|
+
stripeProductId: string | null;
|
|
760
|
+
stripePriceId: string | null;
|
|
761
|
+
isActive: boolean;
|
|
762
|
+
sortIndex: string | null;
|
|
763
|
+
subscriberCount: number;
|
|
764
|
+
redeemableTagSets: string[][];
|
|
765
|
+
posters?: {
|
|
766
|
+
id: string;
|
|
767
|
+
menuSubscriptionId: string;
|
|
768
|
+
storagePath: string;
|
|
769
|
+
publicUrl: string | null;
|
|
770
|
+
filename: string;
|
|
771
|
+
contentType: string;
|
|
772
|
+
sizeBytes: number | null;
|
|
773
|
+
sortIndex: string | null;
|
|
774
|
+
createdBy: string | null;
|
|
775
|
+
createdAt: string | null;
|
|
776
|
+
}[];
|
|
610
777
|
} & {
|
|
611
778
|
[key: string]: unknown;
|
|
612
779
|
})[];
|
|
@@ -615,70 +782,53 @@ interface components {
|
|
|
615
782
|
* @description Place a new order for a specific venue
|
|
616
783
|
*/
|
|
617
784
|
PlaceOrderRequest: {
|
|
618
|
-
|
|
619
|
-
venueId: string;
|
|
785
|
+
venueAccessor: string;
|
|
620
786
|
basketId: string;
|
|
621
|
-
|
|
622
|
-
|
|
623
|
-
|
|
624
|
-
|
|
625
|
-
|
|
626
|
-
|
|
627
|
-
|
|
628
|
-
|
|
629
|
-
|
|
630
|
-
|
|
631
|
-
|
|
632
|
-
|
|
633
|
-
currency?: "EUR" | "CHF";
|
|
634
|
-
/** @enum {string|null} */
|
|
635
|
-
fulfillmentType?: "pickup" | "delivery" | null;
|
|
636
|
-
fulfillmentAt?: unknown;
|
|
637
|
-
orderedAt?: unknown;
|
|
638
|
-
orderedBy: string;
|
|
639
|
-
updatedAt?: unknown;
|
|
640
|
-
updatedBy?: string | null;
|
|
641
|
-
teamOrderId?: string | null;
|
|
642
|
-
participantDisplayName?: string | null;
|
|
643
|
-
leadSettledAt?: unknown;
|
|
787
|
+
sessionId: string;
|
|
788
|
+
paymentMethod: components["schemas"]["PaymentMethod"];
|
|
789
|
+
fulfillmentType: components["schemas"]["FulfillmentType"];
|
|
790
|
+
/** Format: date-time */
|
|
791
|
+
fulfillmentAt?: string | null;
|
|
792
|
+
customerFirstName?: string;
|
|
793
|
+
customerLastName?: string;
|
|
794
|
+
customerEmail?: string;
|
|
795
|
+
declaredReturns?: {
|
|
796
|
+
depositwareTemplateId: string;
|
|
797
|
+
count: number;
|
|
798
|
+
}[];
|
|
644
799
|
};
|
|
645
800
|
/** PlaceOrderResponse */
|
|
646
801
|
PlaceOrderResponse: {
|
|
647
802
|
id: string;
|
|
648
|
-
|
|
649
|
-
basketId: string;
|
|
803
|
+
status: string;
|
|
650
804
|
publicId: string | null;
|
|
805
|
+
orderId: string;
|
|
651
806
|
quickReferenceNumber: number | null;
|
|
652
807
|
/** @enum {string} */
|
|
653
|
-
status: "pending" | "in_progress" | "ready" | "completed" | "cancelled";
|
|
654
|
-
paymentIntentId: string | null;
|
|
655
|
-
/** @enum {string|null} */
|
|
656
|
-
paymentMethod: "card" | "cash" | "voucher" | null;
|
|
657
|
-
/** @enum {string} */
|
|
658
|
-
paymentStatus: "unpaid" | "paid" | "refunded" | "authorized" | "cash_pending";
|
|
659
|
-
taxAmount: number;
|
|
660
|
-
totalAmount: number;
|
|
661
|
-
/** @enum {string} */
|
|
662
808
|
currency: "EUR" | "CHF";
|
|
663
|
-
|
|
664
|
-
|
|
665
|
-
|
|
666
|
-
|
|
667
|
-
|
|
668
|
-
|
|
669
|
-
|
|
670
|
-
|
|
671
|
-
|
|
672
|
-
|
|
809
|
+
};
|
|
810
|
+
/** ConfirmOrderRequest */
|
|
811
|
+
ConfirmOrderRequest: {
|
|
812
|
+
venueAccessor: string;
|
|
813
|
+
orderId: string;
|
|
814
|
+
paymentIntentId: string;
|
|
815
|
+
};
|
|
816
|
+
/** ConfirmOrderResponse */
|
|
817
|
+
ConfirmOrderResponse: {
|
|
818
|
+
id: string;
|
|
819
|
+
status: string;
|
|
820
|
+
publicId: string | null;
|
|
821
|
+
quickReferenceNumber: number | null;
|
|
822
|
+
customerId?: string;
|
|
673
823
|
};
|
|
674
824
|
/** CreatePaymentIntentRequest */
|
|
675
825
|
CreatePaymentIntentRequest: {
|
|
826
|
+
venueAccessor: string;
|
|
676
827
|
basketId: string;
|
|
677
828
|
/** @enum {string} */
|
|
678
829
|
currency: "EUR" | "CHF";
|
|
679
830
|
sessionId: string;
|
|
680
|
-
|
|
681
|
-
fulfillmentType: "pickup" | "delivery";
|
|
831
|
+
fulfillmentType: components["schemas"]["FulfillmentType"];
|
|
682
832
|
/** Format: date-time */
|
|
683
833
|
fulfillmentAt?: string | null;
|
|
684
834
|
customerFirstName?: string;
|
|
@@ -697,6 +847,7 @@ interface components {
|
|
|
697
847
|
};
|
|
698
848
|
/** CreateDeltaPaymentIntentRequest */
|
|
699
849
|
CreateDeltaPaymentIntentRequest: {
|
|
850
|
+
venueAccessor: string;
|
|
700
851
|
basketId: string;
|
|
701
852
|
sessionId: string;
|
|
702
853
|
/** @enum {string} */
|
|
@@ -717,6 +868,7 @@ interface components {
|
|
|
717
868
|
};
|
|
718
869
|
/** ReduceDeltaPaymentIntentRequest */
|
|
719
870
|
ReduceDeltaPaymentIntentRequest: {
|
|
871
|
+
venueAccessor: string;
|
|
720
872
|
basketId: string;
|
|
721
873
|
sessionId: string;
|
|
722
874
|
/** @enum {string} */
|
|
@@ -737,12 +889,13 @@ interface components {
|
|
|
737
889
|
* @description Request payload for making a new reservation
|
|
738
890
|
*/
|
|
739
891
|
MakeReservationRequest: {
|
|
892
|
+
/** @description Venue identifier — UUID or URL-friendly slug (accessor). Resolved server-side. */
|
|
893
|
+
venueAccessor: string;
|
|
740
894
|
/**
|
|
741
895
|
* Format: uuid
|
|
742
896
|
* @description UUID of the event this reservation is for
|
|
743
897
|
*/
|
|
744
898
|
eventId: string;
|
|
745
|
-
quickReferenceNumber?: number | null;
|
|
746
899
|
/** @description Date of the reservation in YYYY-MM-DD format */
|
|
747
900
|
reservationDate: string;
|
|
748
901
|
/** @description Time of the reservation in HH:MM:SS format */
|
|
@@ -750,12 +903,12 @@ interface components {
|
|
|
750
903
|
/** @description Number of guests in the party. Must be between 1 and 20. */
|
|
751
904
|
partySize: number;
|
|
752
905
|
/** @description Reservation duration in minutes. Defaults to 120 minutes if not specified. Range: 30-300 minutes. */
|
|
753
|
-
duration
|
|
906
|
+
duration?: number | null;
|
|
754
907
|
/**
|
|
755
908
|
* Format: uuid
|
|
756
909
|
* @description UUID of existing customer profile if available
|
|
757
910
|
*/
|
|
758
|
-
customerId
|
|
911
|
+
customerId?: string | null;
|
|
759
912
|
/** @description First name of the customer making the reservation */
|
|
760
913
|
customerFirstName: string;
|
|
761
914
|
/** @description Last name of the customer making the reservation */
|
|
@@ -768,20 +921,19 @@ interface components {
|
|
|
768
921
|
/** @description Phone number for reservation confirmations and updates. Include country code for international numbers. */
|
|
769
922
|
customerPhone?: string | null;
|
|
770
923
|
/**
|
|
771
|
-
* @description Preferred method
|
|
924
|
+
* @description Preferred contact method. Defaults to `email` when omitted.
|
|
772
925
|
* @enum {string}
|
|
773
926
|
*/
|
|
774
|
-
contactPreference
|
|
927
|
+
contactPreference?: "email" | "phone" | "sms" | "none";
|
|
775
928
|
/**
|
|
776
|
-
* @description Origin of the reservation request
|
|
929
|
+
* @description Origin of the reservation request. Defaults to `website` when omitted.
|
|
777
930
|
* @enum {string}
|
|
778
931
|
*/
|
|
779
|
-
source
|
|
932
|
+
source?: "website" | "phone" | "walk_in";
|
|
780
933
|
/** @description Any dietary restrictions, allergies, or special occasions (max 500 characters) */
|
|
781
|
-
specialRequests
|
|
934
|
+
specialRequests?: string | null;
|
|
782
935
|
/** @description Preferred seating area or table type (e.g., "window seat", "quiet area", "patio") */
|
|
783
|
-
tablePreference
|
|
784
|
-
venueAccessor: string;
|
|
936
|
+
tablePreference?: string | null;
|
|
785
937
|
};
|
|
786
938
|
/**
|
|
787
939
|
* MakeReservationResponse
|
|
@@ -892,13 +1044,13 @@ interface components {
|
|
|
892
1044
|
billingPeriod: "week" | "month" | "year";
|
|
893
1045
|
/** @enum {string} */
|
|
894
1046
|
allowancePeriod: "week" | "month" | "year";
|
|
895
|
-
redeemableTagSets: string[]
|
|
1047
|
+
redeemableTagSets: string[][];
|
|
896
1048
|
expiryInDays: number | null;
|
|
897
1049
|
price: number;
|
|
898
1050
|
/** @enum {string} */
|
|
899
1051
|
currency: "EUR" | "CHF";
|
|
900
1052
|
isActive: boolean;
|
|
901
|
-
sortIndex:
|
|
1053
|
+
sortIndex: string | null;
|
|
902
1054
|
posters: {
|
|
903
1055
|
id: string;
|
|
904
1056
|
menuSubscriptionId: string;
|
|
@@ -907,8 +1059,8 @@ interface components {
|
|
|
907
1059
|
publicUrl: string;
|
|
908
1060
|
filename: string;
|
|
909
1061
|
contentType: string;
|
|
910
|
-
sizeBytes: number
|
|
911
|
-
sortIndex:
|
|
1062
|
+
sizeBytes: number;
|
|
1063
|
+
sortIndex: string | null;
|
|
912
1064
|
createdBy: string | null;
|
|
913
1065
|
createdAt: string | null;
|
|
914
1066
|
}[];
|
|
@@ -953,13 +1105,20 @@ interface components {
|
|
|
953
1105
|
orderId: string | null;
|
|
954
1106
|
createdAt: string | null;
|
|
955
1107
|
}[];
|
|
1108
|
+
/** DeliveryAddress */
|
|
1109
|
+
DeliveryAddress: {
|
|
1110
|
+
street: string;
|
|
1111
|
+
city: string;
|
|
1112
|
+
state: string;
|
|
1113
|
+
postalCode: string;
|
|
1114
|
+
country: string;
|
|
1115
|
+
};
|
|
956
1116
|
/**
|
|
957
1117
|
* CreateTeamOrderRequest
|
|
958
1118
|
* @description Create a team order: promotes the lead's active basket into a shared team basket and returns the share token.
|
|
959
1119
|
*/
|
|
960
1120
|
CreateTeamOrderRequest: {
|
|
961
|
-
|
|
962
|
-
venueId: string;
|
|
1121
|
+
venueAccessor: string;
|
|
963
1122
|
sessionId: string;
|
|
964
1123
|
/** Format: uuid */
|
|
965
1124
|
menuId: string;
|
|
@@ -969,18 +1128,11 @@ interface components {
|
|
|
969
1128
|
logoUrl?: string;
|
|
970
1129
|
/** Format: date-time */
|
|
971
1130
|
deadlineAt?: string | null;
|
|
972
|
-
|
|
973
|
-
fulfillmentType: "pickup" | "delivery";
|
|
1131
|
+
fulfillmentType: components["schemas"]["FulfillmentType"];
|
|
974
1132
|
/** Format: date-time */
|
|
975
1133
|
fulfillmentAt?: string | null;
|
|
976
|
-
deliveryAddress?:
|
|
977
|
-
|
|
978
|
-
city: string;
|
|
979
|
-
state: string;
|
|
980
|
-
postalCode: string;
|
|
981
|
-
country: string;
|
|
982
|
-
};
|
|
983
|
-
allowedPaymentMethods: ("card" | "cash" | "voucher")[];
|
|
1134
|
+
deliveryAddress?: components["schemas"]["DeliveryAddress"];
|
|
1135
|
+
allowedPaymentMethods: components["schemas"]["PaymentMethod"][];
|
|
984
1136
|
/** Format: uuid */
|
|
985
1137
|
eventId?: string;
|
|
986
1138
|
};
|
|
@@ -1001,11 +1153,9 @@ interface components {
|
|
|
1001
1153
|
teamName: string | null;
|
|
1002
1154
|
logoUrl: string | null;
|
|
1003
1155
|
leadDisplayName: string;
|
|
1004
|
-
|
|
1005
|
-
|
|
1006
|
-
|
|
1007
|
-
/** @enum {string} */
|
|
1008
|
-
fulfillmentType: "pickup" | "delivery";
|
|
1156
|
+
status: components["schemas"]["TeamOrderStatus"];
|
|
1157
|
+
allowedPaymentMethods: components["schemas"]["PaymentMethod"][];
|
|
1158
|
+
fulfillmentType: components["schemas"]["FulfillmentType"];
|
|
1009
1159
|
/** Format: date-time */
|
|
1010
1160
|
fulfillmentAt: string | null;
|
|
1011
1161
|
/** Format: date-time */
|
|
@@ -1033,12 +1183,10 @@ interface components {
|
|
|
1033
1183
|
orderId: string | null;
|
|
1034
1184
|
participantNumber: number | null;
|
|
1035
1185
|
displayName: string | null;
|
|
1036
|
-
|
|
1037
|
-
status: "browsing" | "authorized" | "cash_pending" | "placed" | "completed" | "cancelled";
|
|
1186
|
+
status: components["schemas"]["ParticipantStatus"];
|
|
1038
1187
|
bundleCount: number;
|
|
1039
1188
|
amount: number;
|
|
1040
|
-
|
|
1041
|
-
paymentMethod: "card" | "cash" | "voucher" | null;
|
|
1189
|
+
paymentMethod: components["schemas"]["PaymentMethod"];
|
|
1042
1190
|
isLead: boolean;
|
|
1043
1191
|
isMe: boolean;
|
|
1044
1192
|
/** Format: date-time */
|
|
@@ -1057,8 +1205,7 @@ interface components {
|
|
|
1057
1205
|
}[];
|
|
1058
1206
|
payments: {
|
|
1059
1207
|
amount: number;
|
|
1060
|
-
|
|
1061
|
-
method: "card" | "cash" | "voucher";
|
|
1208
|
+
method: components["schemas"]["PaymentMethod"];
|
|
1062
1209
|
/** @enum {string} */
|
|
1063
1210
|
status: "authorized" | "captured" | "cash_pending" | "cash_received";
|
|
1064
1211
|
/** Format: date-time */
|
|
@@ -1100,8 +1247,7 @@ interface components {
|
|
|
1100
1247
|
teamOrderId: string;
|
|
1101
1248
|
basketId: string;
|
|
1102
1249
|
customerId: string;
|
|
1103
|
-
|
|
1104
|
-
status: "draft" | "collecting" | "locked" | "placed" | "ready" | "completed" | "cancelled";
|
|
1250
|
+
status: components["schemas"]["TeamOrderStatus"];
|
|
1105
1251
|
isLead: boolean;
|
|
1106
1252
|
alreadyJoined: boolean;
|
|
1107
1253
|
};
|
|
@@ -1114,8 +1260,7 @@ interface components {
|
|
|
1114
1260
|
SubmitTeamOrderResponse: {
|
|
1115
1261
|
/** Format: uuid */
|
|
1116
1262
|
teamOrderId: string;
|
|
1117
|
-
|
|
1118
|
-
status: "draft" | "collecting" | "locked" | "placed" | "ready" | "completed" | "cancelled";
|
|
1263
|
+
status: components["schemas"]["TeamOrderStatus"];
|
|
1119
1264
|
capturedOrderIds: string[];
|
|
1120
1265
|
cashPendingOrderIds: string[];
|
|
1121
1266
|
droppedBasketIds: string[];
|
|
@@ -1132,8 +1277,7 @@ interface components {
|
|
|
1132
1277
|
CancelTeamOrderResponse: {
|
|
1133
1278
|
/** Format: uuid */
|
|
1134
1279
|
teamOrderId: string;
|
|
1135
|
-
|
|
1136
|
-
status: "draft" | "collecting" | "locked" | "placed" | "ready" | "completed" | "cancelled";
|
|
1280
|
+
status: components["schemas"]["TeamOrderStatus"];
|
|
1137
1281
|
voidedPaymentIntentIds: string[];
|
|
1138
1282
|
/** Format: date-time */
|
|
1139
1283
|
cancelledAt: string;
|
|
@@ -1149,8 +1293,7 @@ interface components {
|
|
|
1149
1293
|
ExtendDeadlineTeamOrderResponse: {
|
|
1150
1294
|
/** Format: uuid */
|
|
1151
1295
|
teamOrderId: string;
|
|
1152
|
-
|
|
1153
|
-
status: "draft" | "collecting" | "locked" | "placed" | "ready" | "completed" | "cancelled";
|
|
1296
|
+
status: components["schemas"]["TeamOrderStatus"];
|
|
1154
1297
|
/** Format: date-time */
|
|
1155
1298
|
deadlineAt: string | null;
|
|
1156
1299
|
};
|
|
@@ -1165,8 +1308,7 @@ interface components {
|
|
|
1165
1308
|
SetFulfillmentAtTeamOrderResponse: {
|
|
1166
1309
|
/** Format: uuid */
|
|
1167
1310
|
teamOrderId: string;
|
|
1168
|
-
|
|
1169
|
-
status: "draft" | "collecting" | "locked" | "placed" | "ready" | "completed" | "cancelled";
|
|
1311
|
+
status: components["schemas"]["TeamOrderStatus"];
|
|
1170
1312
|
/** Format: date-time */
|
|
1171
1313
|
fulfillmentAt: string;
|
|
1172
1314
|
/** Format: date-time */
|
|
@@ -1182,8 +1324,7 @@ interface components {
|
|
|
1182
1324
|
SetDiningLocationTeamOrderResponse: {
|
|
1183
1325
|
/** Format: uuid */
|
|
1184
1326
|
teamOrderId: string;
|
|
1185
|
-
|
|
1186
|
-
status: "draft" | "collecting" | "locked" | "placed" | "ready" | "completed" | "cancelled";
|
|
1327
|
+
status: components["schemas"]["TeamOrderStatus"];
|
|
1187
1328
|
diningLocation: string | null;
|
|
1188
1329
|
};
|
|
1189
1330
|
/** SetDiningTimeTeamOrderRequest */
|
|
@@ -1196,46 +1337,30 @@ interface components {
|
|
|
1196
1337
|
SetDiningTimeTeamOrderResponse: {
|
|
1197
1338
|
/** Format: uuid */
|
|
1198
1339
|
teamOrderId: string;
|
|
1199
|
-
|
|
1200
|
-
status: "draft" | "collecting" | "locked" | "placed" | "ready" | "completed" | "cancelled";
|
|
1340
|
+
status: components["schemas"]["TeamOrderStatus"];
|
|
1201
1341
|
diningTime: string;
|
|
1202
|
-
|
|
1342
|
+
diningOffset: number;
|
|
1203
1343
|
};
|
|
1204
1344
|
/** SwitchFulfillmentTeamOrderRequest */
|
|
1205
1345
|
SwitchFulfillmentTeamOrderRequest: {
|
|
1206
1346
|
publicId: string;
|
|
1207
1347
|
sessionId: string;
|
|
1208
|
-
|
|
1209
|
-
|
|
1210
|
-
deliveryAddress?: {
|
|
1211
|
-
street: string;
|
|
1212
|
-
city: string;
|
|
1213
|
-
state: string;
|
|
1214
|
-
postalCode: string;
|
|
1215
|
-
country: string;
|
|
1216
|
-
};
|
|
1348
|
+
fulfillmentType: components["schemas"]["FulfillmentType"];
|
|
1349
|
+
deliveryAddress?: components["schemas"]["DeliveryAddress"];
|
|
1217
1350
|
};
|
|
1218
1351
|
/** SwitchFulfillmentTeamOrderResponse */
|
|
1219
1352
|
SwitchFulfillmentTeamOrderResponse: {
|
|
1220
1353
|
/** Format: uuid */
|
|
1221
1354
|
teamOrderId: string;
|
|
1222
|
-
|
|
1223
|
-
|
|
1224
|
-
/** @enum {string} */
|
|
1225
|
-
fulfillmentType: "pickup" | "delivery";
|
|
1355
|
+
status: components["schemas"]["TeamOrderStatus"];
|
|
1356
|
+
fulfillmentType: components["schemas"]["FulfillmentType"];
|
|
1226
1357
|
deliveryAddressId: string | null;
|
|
1227
1358
|
};
|
|
1228
1359
|
/** UpdateDeliveryAddressTeamOrderRequest */
|
|
1229
1360
|
UpdateDeliveryAddressTeamOrderRequest: {
|
|
1230
1361
|
publicId: string;
|
|
1231
1362
|
sessionId: string;
|
|
1232
|
-
deliveryAddress:
|
|
1233
|
-
street: string;
|
|
1234
|
-
city: string;
|
|
1235
|
-
state: string;
|
|
1236
|
-
postalCode: string;
|
|
1237
|
-
country: string;
|
|
1238
|
-
};
|
|
1363
|
+
deliveryAddress: components["schemas"]["DeliveryAddress"];
|
|
1239
1364
|
};
|
|
1240
1365
|
/** UpdateDeliveryAddressTeamOrderResponse */
|
|
1241
1366
|
UpdateDeliveryAddressTeamOrderResponse: {
|
|
@@ -1260,6 +1385,14 @@ interface components {
|
|
|
1260
1385
|
createdAt: unknown;
|
|
1261
1386
|
updatedAt: unknown;
|
|
1262
1387
|
};
|
|
1388
|
+
/** @enum {string} */
|
|
1389
|
+
PaymentMethod: "card" | "cash" | "voucher";
|
|
1390
|
+
/** @enum {string} */
|
|
1391
|
+
FulfillmentType: "pickup" | "delivery";
|
|
1392
|
+
/** @enum {string} */
|
|
1393
|
+
TeamOrderStatus: "draft" | "collecting" | "locked" | "placed" | "ready" | "completed" | "cancelled";
|
|
1394
|
+
/** @enum {string} */
|
|
1395
|
+
ParticipantStatus: "browsing" | "authorized" | "cash_pending" | "placed" | "completed" | "cancelled";
|
|
1263
1396
|
};
|
|
1264
1397
|
responses: never;
|
|
1265
1398
|
parameters: never;
|
|
@@ -1271,11 +1404,11 @@ interface components {
|
|
|
1271
1404
|
type schemas = components['schemas'];
|
|
1272
1405
|
type CreateEventRequest = schemas['CreateEventRequest'];
|
|
1273
1406
|
type CreateEventResponse = schemas['CreateEventResponse'];
|
|
1274
|
-
type Article = schemas['
|
|
1275
|
-
type ListArticlesResponse = schemas['
|
|
1276
|
-
type GetArticleResponse = schemas['
|
|
1277
|
-
type PatchArticleRequest = schemas['
|
|
1278
|
-
type PatchArticleResponse = schemas['
|
|
1407
|
+
type Article = schemas['FetchArticleResponse'];
|
|
1408
|
+
type ListArticlesResponse = schemas['FetchArticlesResponse'];
|
|
1409
|
+
type GetArticleResponse = schemas['FetchArticleResponse'];
|
|
1410
|
+
type PatchArticleRequest = schemas['EditArticleRequest'];
|
|
1411
|
+
type PatchArticleResponse = schemas['EditArticleResponse'];
|
|
1279
1412
|
type FeatureImage = schemas['FeatureImage'];
|
|
1280
1413
|
type PatchFeatureImageRequest = schemas['PatchFeatureImageRequest'];
|
|
1281
1414
|
/**
|
|
@@ -1297,7 +1430,7 @@ interface ListArticlesOptions {
|
|
|
1297
1430
|
/** When `true`, include articles whose `isActive` is `false`. Default `false`. */
|
|
1298
1431
|
includeInactive?: boolean;
|
|
1299
1432
|
}
|
|
1300
|
-
type Venue = schemas['
|
|
1433
|
+
type Venue = schemas['GetVenueResponse'];
|
|
1301
1434
|
type GetVenueResponse = schemas['GetVenueResponse'];
|
|
1302
1435
|
/**
|
|
1303
1436
|
* Order fulfillment type - matches order_fulfillment_type enum in order3000 database.
|
|
@@ -1363,8 +1496,8 @@ interface Schedule {
|
|
|
1363
1496
|
createdAt: string | null;
|
|
1364
1497
|
createdBy: string | null;
|
|
1365
1498
|
slotMode: 'interval' | 'duration';
|
|
1366
|
-
|
|
1367
|
-
|
|
1499
|
+
intervalDuration: number | null;
|
|
1500
|
+
duration: number | null;
|
|
1368
1501
|
}
|
|
1369
1502
|
interface EventPoster {
|
|
1370
1503
|
id: string;
|
|
@@ -1414,7 +1547,8 @@ interface Event {
|
|
|
1414
1547
|
isClosed: boolean;
|
|
1415
1548
|
reservationsEnabled: boolean;
|
|
1416
1549
|
bookingOpensAtDays: number | null;
|
|
1417
|
-
|
|
1550
|
+
/** Offset (ms) before event when booking closes (codebase convention: ms). */
|
|
1551
|
+
bookingClosesAtOffset: number | null;
|
|
1418
1552
|
isActive: boolean;
|
|
1419
1553
|
/** Whether this event should be displayed prominently in public-facing areas */
|
|
1420
1554
|
isFeatured: boolean;
|
|
@@ -1601,7 +1735,7 @@ interface EventByAccessor {
|
|
|
1601
1735
|
isRecurring: boolean;
|
|
1602
1736
|
reservationsEnabled: boolean;
|
|
1603
1737
|
bookingOpensAtDays: number | null;
|
|
1604
|
-
|
|
1738
|
+
bookingClosesAtOffset: number | null;
|
|
1605
1739
|
isActive: boolean;
|
|
1606
1740
|
isFeatured: boolean;
|
|
1607
1741
|
priority: number;
|
|
@@ -2366,34 +2500,80 @@ declare class SubscriptionsResource extends BaseResource {
|
|
|
2366
2500
|
}
|
|
2367
2501
|
|
|
2368
2502
|
/**
|
|
2369
|
-
*
|
|
2370
|
-
*
|
|
2371
|
-
|
|
2372
|
-
|
|
2373
|
-
|
|
2374
|
-
|
|
2375
|
-
|
|
2503
|
+
* Generated by Kubb (https://kubb.dev/).
|
|
2504
|
+
* Do not edit manually.
|
|
2505
|
+
*/
|
|
2506
|
+
|
|
2507
|
+
declare const fulfillmentTypeSchema: z.ZodEnum<{
|
|
2508
|
+
pickup: "pickup";
|
|
2509
|
+
delivery: "delivery";
|
|
2510
|
+
}>;
|
|
2511
|
+
|
|
2512
|
+
/**
|
|
2513
|
+
* Generated by Kubb (https://kubb.dev/).
|
|
2514
|
+
* Do not edit manually.
|
|
2515
|
+
*/
|
|
2516
|
+
|
|
2517
|
+
declare const participantStatusSchema: z.ZodEnum<{
|
|
2518
|
+
placed: "placed";
|
|
2519
|
+
completed: "completed";
|
|
2520
|
+
cancelled: "cancelled";
|
|
2521
|
+
browsing: "browsing";
|
|
2522
|
+
authorized: "authorized";
|
|
2523
|
+
cash_pending: "cash_pending";
|
|
2524
|
+
}>;
|
|
2525
|
+
|
|
2526
|
+
/**
|
|
2527
|
+
* Generated by Kubb (https://kubb.dev/).
|
|
2528
|
+
* Do not edit manually.
|
|
2529
|
+
*/
|
|
2530
|
+
|
|
2531
|
+
declare const paymentMethodSchema: z.ZodEnum<{
|
|
2532
|
+
card: "card";
|
|
2533
|
+
cash: "cash";
|
|
2534
|
+
voucher: "voucher";
|
|
2535
|
+
}>;
|
|
2536
|
+
|
|
2537
|
+
/**
|
|
2538
|
+
* Generated by Kubb (https://kubb.dev/).
|
|
2539
|
+
* Do not edit manually.
|
|
2540
|
+
*/
|
|
2541
|
+
|
|
2542
|
+
declare const teamOrderStatusSchema: z.ZodEnum<{
|
|
2543
|
+
draft: "draft";
|
|
2544
|
+
collecting: "collecting";
|
|
2545
|
+
locked: "locked";
|
|
2546
|
+
placed: "placed";
|
|
2547
|
+
ready: "ready";
|
|
2548
|
+
completed: "completed";
|
|
2549
|
+
cancelled: "cancelled";
|
|
2550
|
+
}>;
|
|
2551
|
+
|
|
2552
|
+
/**
|
|
2553
|
+
* Runtime enum objects with an `enumValues` tuple — kept as a thin shim
|
|
2554
|
+
* over the kubb-generated `z.enum(...)` schemas so that downstream SDK
|
|
2555
|
+
* consumers can write `z.enum(paymentMethodEnum.enumValues)`, the same
|
|
2556
|
+
* idiom order3000's server uses against the real Drizzle pgEnum.
|
|
2376
2557
|
*
|
|
2377
|
-
* The
|
|
2378
|
-
*
|
|
2379
|
-
* is a standalone package and can't import from the app's Drizzle schema.
|
|
2558
|
+
* The values themselves are now sourced from `apps/order3000/public/openapi.json`
|
|
2559
|
+
* via kubb — no manual mirror to maintain.
|
|
2380
2560
|
*/
|
|
2381
2561
|
declare const paymentMethodEnum: {
|
|
2382
|
-
enumValues:
|
|
2562
|
+
enumValues: ("card" | "cash" | "voucher")[];
|
|
2383
2563
|
};
|
|
2384
2564
|
declare const fulfillmentTypeEnum: {
|
|
2385
|
-
enumValues:
|
|
2565
|
+
enumValues: ("pickup" | "delivery")[];
|
|
2386
2566
|
};
|
|
2387
2567
|
declare const teamOrderStatusEnum: {
|
|
2388
|
-
enumValues:
|
|
2568
|
+
enumValues: ("draft" | "collecting" | "locked" | "placed" | "ready" | "completed" | "cancelled")[];
|
|
2389
2569
|
};
|
|
2390
2570
|
declare const participantStatusEnum: {
|
|
2391
|
-
enumValues:
|
|
2571
|
+
enumValues: ("placed" | "completed" | "cancelled" | "browsing" | "authorized" | "cash_pending")[];
|
|
2392
2572
|
};
|
|
2393
|
-
type PaymentMethod =
|
|
2394
|
-
type FulfillmentType =
|
|
2395
|
-
type TeamOrderStatus =
|
|
2396
|
-
type ParticipantStatus =
|
|
2573
|
+
type PaymentMethod = z$1.infer<typeof paymentMethodSchema>;
|
|
2574
|
+
type FulfillmentType = z$1.infer<typeof fulfillmentTypeSchema>;
|
|
2575
|
+
type TeamOrderStatus = z$1.infer<typeof teamOrderStatusSchema>;
|
|
2576
|
+
type ParticipantStatus = z$1.infer<typeof participantStatusSchema>;
|
|
2397
2577
|
interface TeamDeliveryAddress {
|
|
2398
2578
|
street: string;
|
|
2399
2579
|
city: string;
|
|
@@ -2744,7 +2924,7 @@ declare class TeamOrdersResource {
|
|
|
2744
2924
|
/**
|
|
2745
2925
|
* Lead sets when the team will start eating. Client sends HH:MM; server
|
|
2746
2926
|
* computes the delta against `fulfillmentAt` and stores it as
|
|
2747
|
-
* `
|
|
2927
|
+
* `dining_offset` (ms) so the intent survives any later pickup change.
|
|
2748
2928
|
*/
|
|
2749
2929
|
setDiningTime(publicId: string, request: {
|
|
2750
2930
|
sessionId: string;
|
|
@@ -2753,7 +2933,7 @@ declare class TeamOrdersResource {
|
|
|
2753
2933
|
teamOrderId: string;
|
|
2754
2934
|
status: TeamOrderStatus;
|
|
2755
2935
|
diningTime: string;
|
|
2756
|
-
|
|
2936
|
+
diningOffset: number;
|
|
2757
2937
|
}>;
|
|
2758
2938
|
/**
|
|
2759
2939
|
* Toggle a participant's "settled" tick on the team Lead's
|
|
@@ -2960,19 +3140,63 @@ interface ScheduleInfo {
|
|
|
2960
3140
|
}
|
|
2961
3141
|
interface ScheduleInput {
|
|
2962
3142
|
rrule?: string | null;
|
|
2963
|
-
|
|
3143
|
+
/** Slot interval in milliseconds (codebase convention). */
|
|
3144
|
+
intervalDuration?: number | null;
|
|
2964
3145
|
scheduleTimeSlots?: ScheduleTimeSlot[];
|
|
2965
3146
|
}
|
|
2966
3147
|
/**
|
|
2967
3148
|
* Extract schedule information from a schedule object.
|
|
2968
3149
|
* Returns time range and active days for display purposes.
|
|
2969
3150
|
*
|
|
2970
|
-
* @param schedule - Schedule object with rrule,
|
|
3151
|
+
* @param schedule - Schedule object with rrule, intervalDuration (ms), and scheduleTimeSlots
|
|
2971
3152
|
* @returns ScheduleInfo with timeRange and activeDays
|
|
2972
3153
|
*/
|
|
2973
3154
|
declare function getScheduleInfo(schedule: ScheduleInput | null | undefined): ScheduleInfo;
|
|
2974
3155
|
|
|
2975
|
-
|
|
3156
|
+
/**
|
|
3157
|
+
* Generated by Kubb (https://kubb.dev/).
|
|
3158
|
+
* Do not edit manually.
|
|
3159
|
+
*/
|
|
3160
|
+
|
|
3161
|
+
declare const deliveryAddressSchema: z.ZodObject<{
|
|
3162
|
+
street: z.ZodString;
|
|
3163
|
+
city: z.ZodString;
|
|
3164
|
+
state: z.ZodString;
|
|
3165
|
+
postalCode: z.ZodString;
|
|
3166
|
+
country: z.ZodString;
|
|
3167
|
+
}, z.core.$strip>;
|
|
3168
|
+
|
|
3169
|
+
/**
|
|
3170
|
+
* Generated by Kubb (https://kubb.dev/).
|
|
3171
|
+
* Do not edit manually.
|
|
3172
|
+
*/
|
|
3173
|
+
/**
|
|
3174
|
+
* DeliveryAddress
|
|
3175
|
+
*/
|
|
3176
|
+
type DeliveryAddress = {
|
|
3177
|
+
/**
|
|
3178
|
+
* @type string
|
|
3179
|
+
*/
|
|
3180
|
+
street: string;
|
|
3181
|
+
/**
|
|
3182
|
+
* @type string
|
|
3183
|
+
*/
|
|
3184
|
+
city: string;
|
|
3185
|
+
/**
|
|
3186
|
+
* @type string
|
|
3187
|
+
*/
|
|
3188
|
+
state: string;
|
|
3189
|
+
/**
|
|
3190
|
+
* @type string
|
|
3191
|
+
*/
|
|
3192
|
+
postalCode: string;
|
|
3193
|
+
/**
|
|
3194
|
+
* @type string
|
|
3195
|
+
*/
|
|
3196
|
+
country: string;
|
|
3197
|
+
};
|
|
3198
|
+
|
|
3199
|
+
interface O3KClientConfig {
|
|
2976
3200
|
clientId: string;
|
|
2977
3201
|
clientSecret: string;
|
|
2978
3202
|
venueId?: string;
|
|
@@ -2990,7 +3214,7 @@ interface Order3000ClientConfig {
|
|
|
2990
3214
|
*/
|
|
2991
3215
|
tokenUrl?: string;
|
|
2992
3216
|
}
|
|
2993
|
-
declare class
|
|
3217
|
+
declare class O3KClient {
|
|
2994
3218
|
areas: AreasResource;
|
|
2995
3219
|
articles: ArticlesResource;
|
|
2996
3220
|
baskets: BasketsResource;
|
|
@@ -3005,8 +3229,8 @@ declare class Order3000Client {
|
|
|
3005
3229
|
realtime: RealtimeManager;
|
|
3006
3230
|
private readonly baseUrl;
|
|
3007
3231
|
private readonly tokenManager;
|
|
3008
|
-
constructor(config:
|
|
3232
|
+
constructor(config: O3KClientConfig);
|
|
3009
3233
|
}
|
|
3010
3234
|
|
|
3011
|
-
export {
|
|
3012
|
-
export type { AddToBasketRequest, AddToBasketResponse, Area, AreaAsset, AreaAvailabilityResponse, AreaAvailabilityWindow, AreaBookingMode, AreaBookingRequestResponse, AreaBookingRequestSource, AreaBookingRequestStatus, AreaBookingStatus, AreaFeature, Article, Basket, BasketItem, BasketItemDeposit, BasketItemMenuItemRef, BasketItemMetadata, BasketStatus, BasketTotals, CancelTeamOrderResponse, ConfirmOrderRequest, ConfirmOrderResponse, CreateDeltaPaymentIntentRequest, CreateDeltaPaymentIntentResponse, CreatePaymentIntentRequest, CreatePaymentIntentResponse, CreateTeamOrderRequest, CreateTeamOrderResponse, CropArea, Currency, DayOfWeek, DeclaredReturn, Event, EventByAccessor, EventMenu, EventPoster, EventRow, ExtendDeadlineResponse as
|
|
3235
|
+
export { O3KClient, deliveryAddressSchema as O3KDeliveryAddressSchema, fulfillmentTypeEnum as O3KFulfillmentTypeEnum, getScheduleInfo as O3KGetScheduleInfo, participantStatusEnum as O3KParticipantStatusEnum, paymentMethodEnum as O3KPaymentMethodEnum, teamOrderStatusEnum as O3KTeamOrderStatusEnum };
|
|
3236
|
+
export type { AddToBasketRequest as O3KAddToBasketRequest, AddToBasketResponse as O3KAddToBasketResponse, Area as O3KArea, AreaAsset as O3KAreaAsset, AreaAvailabilityResponse as O3KAreaAvailabilityResponse, AreaAvailabilityWindow as O3KAreaAvailabilityWindow, AreaBookingMode as O3KAreaBookingMode, AreaBookingRequestResponse as O3KAreaBookingRequestResponse, AreaBookingRequestSource as O3KAreaBookingRequestSource, AreaBookingRequestStatus as O3KAreaBookingRequestStatus, AreaBookingStatus as O3KAreaBookingStatus, AreaFeature as O3KAreaFeature, Article as O3KArticle, Basket as O3KBasket, BasketItem as O3KBasketItem, BasketItemDeposit as O3KBasketItemDeposit, BasketItemMenuItemRef as O3KBasketItemMenuItemRef, BasketItemMetadata as O3KBasketItemMetadata, BasketStatus as O3KBasketStatus, BasketTotals as O3KBasketTotals, CancelTeamOrderResponse as O3KCancelTeamOrderResponse, O3KClientConfig, ConfirmOrderRequest as O3KConfirmOrderRequest, ConfirmOrderResponse as O3KConfirmOrderResponse, CreateDeltaPaymentIntentRequest as O3KCreateDeltaPaymentIntentRequest, CreateDeltaPaymentIntentResponse as O3KCreateDeltaPaymentIntentResponse, CreatePaymentIntentRequest as O3KCreatePaymentIntentRequest, CreatePaymentIntentResponse as O3KCreatePaymentIntentResponse, CreateTeamOrderRequest as O3KCreateTeamOrderRequest, CreateTeamOrderResponse as O3KCreateTeamOrderResponse, CropArea as O3KCropArea, Currency as O3KCurrency, DayOfWeek as O3KDayOfWeek, DeclaredReturn as O3KDeclaredReturn, DeliveryAddress as O3KDeliveryAddress, Event as O3KEvent, EventByAccessor as O3KEventByAccessor, EventMenu as O3KEventMenu, EventPoster as O3KEventPoster, EventRow as O3KEventRow, ExtendDeadlineResponse as O3KExtendTeamOrderDeadlineResponse, FeatureImage as O3KFeatureImage, FetchTeamOrderResponse as O3KFetchTeamOrderResponse, GetAreaAvailabilityOptions as O3KGetAreaAvailabilityOptions, GetAreaOptions as O3KGetAreaOptions, GetArticleResponse as O3KGetArticleResponse, GetEventOptions as O3KGetEventOptions, GetMenuOptions as O3KGetMenuOptions, GetVenueResponse as O3KGetVenueResponse, JoinTeamOrderRequest as O3KJoinTeamOrderRequest, JoinTeamOrderResponse as O3KJoinTeamOrderResponse, LatestOrder as O3KLatestOrder, ListArticlesOptions as O3KListArticlesOptions, ListArticlesResponse as O3KListArticlesResponse, ListEventsOptions as O3KListEventsOptions, ListEventsResponse as O3KListEventsResponse, Menu as O3KMenu, MenuAsset as O3KMenuAsset, MenuBeverage as O3KMenuBeverage, MenuBundle as O3KMenuBundle, MenuBundleDeposit as O3KMenuBundleDeposit, MenuDish as O3KMenuDish, MenuItem as O3KMenuItem, MenuItemRow as O3KMenuItemRow, MenuItemType as O3KMenuItemType, MenuSubscription as O3KMenuSubscription, MenuSubscriptionPoster as O3KMenuSubscriptionPoster, OrderFulfillmentType as O3KOrderFulfillmentType, OrderStatus as O3KOrderStatus, PatchArticleRequest as O3KPatchArticleRequest, PatchArticleResponse as O3KPatchArticleResponse, PatchFeatureImageRequest as O3KPatchFeatureImageRequest, PaymentStatus as O3KPaymentStatus, PlaceOrderRequest as O3KPlaceOrderRequest, Promotion as O3KPromotion, RealtimeConfig as O3KRealtimeConfig, RealtimeEvent as O3KRealtimeEvent, RealtimeSubscription as O3KRealtimeSubscription, RemoveFromBasketResponse as O3KRemoveFromBasketResponse, Schedule as O3KSchedule, ScheduleInfo as O3KScheduleInfo, ScheduleOverride as O3KScheduleOverride, ScheduleOverrideRow as O3KScheduleOverrideRow, ScheduleRow as O3KScheduleRow, ScheduleTimeSlot as O3KScheduleTimeSlot, ScheduleWithTimeSlots as O3KScheduleWithTimeSlots, SubmitAreaBookingRequestPayload as O3KSubmitAreaBookingRequestPayload, SubmitTeamOrderResponse as O3KSubmitTeamOrderResponse, SubscribeRequest as O3KSubscribeRequest, SubscribeResponse as O3KSubscribeResponse, SubscriberStatus as O3KSubscriberStatus, SubscriptionCredit as O3KSubscriptionCredit, SubscriptionCreditStatus as O3KSubscriptionCreditStatus, SubscriptionOptions as O3KSubscriptionOptions, SubscriptionPeriod as O3KSubscriptionPeriod, SwitchFulfillmentResponse as O3KSwitchTeamOrderFulfillmentResponse, TeamDeliveryAddress as O3KTeamDeliveryAddress, TeamOrderBasketItem as O3KTeamOrderBasketItem, TeamOrderBasketItemMenuItemRef as O3KTeamOrderBasketItemMenuItemRef, FulfillmentType as O3KTeamOrderFulfillmentType, TeamOrderParticipant as O3KTeamOrderParticipant, ParticipantStatus as O3KTeamOrderParticipantStatus, PaymentMethod as O3KTeamOrderPaymentMethod, TeamOrderStatus as O3KTeamOrderStatus, ThresholdCheck as O3KTeamOrderThresholdCheck, TimeSlot as O3KTimeSlot, Unit as O3KUnit, UpdateDeliveryAddressResponse as O3KUpdateTeamOrderDeliveryAddressResponse, UploadFeatureImageArgs as O3KUploadFeatureImageArgs, Venue as O3KVenue };
|