@feedmepos/mf-order-setting 0.0.86 → 0.0.87

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 (44) hide show
  1. package/dist/{DisplaySystemView-DjFBEWoq.js → DisplaySystemView-Dx4As33V.js} +1 -1
  2. package/dist/{KioskDevicesView-RKMdLuB3.js → KioskDevicesView-Ziu9ekHK.js} +1 -1
  3. package/dist/{KioskDevicesView.vue_vue_type_script_setup_true_lang-BrG6Au5z.js → KioskDevicesView.vue_vue_type_script_setup_true_lang-Bki-OF23.js} +3 -3
  4. package/dist/{KioskSettingView-CzelEig6.js → KioskSettingView-BlLW-tDD.js} +3 -3
  5. package/dist/{KioskView-Bi5Kc4cS.js → KioskView-CzlaEjMR.js} +5 -5
  6. package/dist/{OrderSettingsView-BfxrjGAi.js → OrderSettingsView-B69It-yu.js} +16654 -16507
  7. package/dist/{app-Bg-n-Eug.js → app-C8jy3wlN.js} +324 -248
  8. package/dist/app.js +1 -1
  9. package/dist/common/sms/index.d.ts +14 -3
  10. package/dist/frontend/mf-order/src/app.d.ts +76 -0
  11. package/dist/frontend/mf-order/src/main.d.ts +76 -0
  12. package/dist/frontend/mf-order/src/stores/order-setting/index.d.ts +6 -0
  13. package/dist/frontend/mf-order/src/views/order-settings/components/NotifyChannelEditor.vue.d.ts +11 -0
  14. package/dist/frontend/mf-order/src/views/order-settings/components/notify-channel-country.d.ts +1 -0
  15. package/dist/frontend/mf-order/tsconfig.app.tsbuildinfo +1 -1
  16. package/dist/{index-C7Ug4fCi.js → index-DNvUwB59.js} +1 -1
  17. package/dist/{index-g_rocKrp.js → index-DiRlxqKH.js} +2 -2
  18. package/dist/{index-0eYg6XEb.js → index-VtBPFvME.js} +1 -1
  19. package/dist/{order.dto-MKeJAj6d.js → order.dto-CFw4X11T.js} +3708 -3631
  20. package/dist/package/entity/incoming-order/incoming-order-to-bill.dto.d.ts +10 -1
  21. package/dist/package/entity/index.d.ts +2 -0
  22. package/dist/package/entity/index.frontend.d.ts +2 -0
  23. package/dist/package/entity/order-platform/external/order/external-order.do.d.ts +7 -0
  24. package/dist/package/entity/order-setting/notification/notification.enum.d.ts +50 -0
  25. package/dist/package/entity/order-setting/notification/notification.route.d.ts +91 -0
  26. package/dist/package/entity/order-setting/order-setting.do.d.ts +10 -0
  27. package/dist/package/entity/order-setting/order-setting.dto.d.ts +20 -0
  28. package/dist/package/entity/order-setting/queue/queue.do.d.ts +17 -0
  29. package/dist/package/entity/order-setting/queue/queue.dto.d.ts +4 -0
  30. package/dist/package/entity/order-setting/sms/sms.do.d.ts +14 -0
  31. package/dist/package/entity/order-setting/sms/sms.dto.d.ts +4 -0
  32. package/dist/package/entity/restaurant/restaurant.dto.d.ts +10 -0
  33. package/package.json +1 -1
  34. package/src/locales/en-US.json +20 -1
  35. package/src/locales/ja-JP.json +20 -1
  36. package/src/locales/th-TH.json +20 -1
  37. package/src/locales/zh-CN.json +20 -1
  38. package/src/views/order-settings/OrderSettingsView.vue +1 -1
  39. package/src/views/order-settings/components/NotifyChannelEditor.vue +130 -0
  40. package/src/views/order-settings/components/notify-channel-country.spec.ts +20 -0
  41. package/src/views/order-settings/components/notify-channel-country.ts +21 -0
  42. package/src/views/order-settings/queue/QueueSetting.vue +7 -0
  43. package/src/views/order-settings/sms/SmsSetting.vue +41 -1
  44. package/src/views/order-settings/sms/notify-channels-dto.spec.ts +42 -0
@@ -1,4 +1,4 @@
1
- import { FdoBillItemRef, FdoDinero, FdoBillItemVariantSelected, FdoUser, FdoFinalBillEffect, FdoBillAdjustment, FdoPayment, FdoBillDynamicQrSession, FdoServiceChargeSetting, FdoDineroRoundingType } from '@feedmepos/core/entity';
1
+ import { FdoBillItemRef, FdoDinero, FdoBillItemVariantSelected, FdoUser, FdoFinalBillEffect, FdoBillAdjustment, FdoPayment, FdoBillDynamicQrSession, FdoItemAdjustment, FdoServiceChargeSetting, FdoDineroRoundingType } from '@feedmepos/core/entity';
2
2
  import { FdtoEnrichedMember } from '../member/member.dto';
3
3
  import { z } from 'zod';
4
4
  type SerializableZodObject<T> = z.ZodObject<z.ZodRawShape, 'strip', z.ZodTypeAny, T>;
@@ -16583,6 +16583,15 @@ export type FdtoOrderItemSubItem = {
16583
16583
  * fallback to the charged price, which would make the field a tautology.
16584
16584
  */
16585
16585
  menuItemPrice?: FdoDinero | null | undefined;
16586
+ /**
16587
+ * Core sub-item adjustments, carried verbatim from the platform transform onto the bill.
16588
+ *
16589
+ * Recorded so an addon discount the partner already applied survives as a bill line. Below
16590
+ * calculator v16 core ignores the field entirely; from v16 it promotes each entry onto the
16591
+ * parent item (`targetScope: SUB_ITEM`) and subtracts it, which is why the producer grosses
16592
+ * up the sibling `price` to match — see `subItemToSubBillItemRef`.
16593
+ */
16594
+ adjustments?: Record<string, FdoItemAdjustment> | null | undefined;
16586
16595
  };
16587
16596
  export declare const FdtoOrderItemSubItem: z.Schema<FdtoOrderItemSubItem>;
16588
16597
  export declare const FdtoOrderItemProduct: z.ZodObject<{
@@ -71,6 +71,8 @@ export * from './order-setting/dine-in/dine-in.do';
71
71
  export * from './order-setting/dine-in/dine-in.dto';
72
72
  export * from './order-setting/delivery/inhouse-delivery.do';
73
73
  export * from './order-setting/delivery/inhouse-delivery.dto';
74
+ export * from './order-setting/notification/notification.enum';
75
+ export * from './order-setting/notification/notification.route';
74
76
  export * from './order-setting/kiosk/kiosk.enum';
75
77
  export * from './order-setting/kiosk/kiosk.do';
76
78
  export * from './order-setting/kiosk/kiosk.dto';
@@ -44,6 +44,8 @@ export * from './order-setting/auto-accept.dto';
44
44
  export * from './order-setting/auto-send.resolve';
45
45
  export * from './order-setting/pickup/pickup.dto';
46
46
  export * from './order-setting/queue/queue.do';
47
+ export * from './order-setting/notification/notification.enum';
48
+ export * from './order-setting/notification/notification.route';
47
49
  export * from './order-setting/sequence/sequence.do';
48
50
  export * from './order-setting/sequence/sequence.dto';
49
51
  export * from './order-setting/sms/sms.dto';
@@ -866,6 +866,13 @@ export type FdoExternalOrderSubItem = {
866
866
  quantity: number;
867
867
  variantSelected?: FdoExternalVariantSelected | null | undefined;
868
868
  subItems: FdoExternalOrderSubItem[];
869
+ /**
870
+ * Per-addon discounts. INFORMATIONAL: the sibling [`price`] must already be NET of these
871
+ * amounts, and they must NOT be deducted again from `price.subTotal` or `price.totalAmount`.
872
+ * Recorded on the bill so the addon shows as discounted; it does not change what FeedMe bills.
873
+ * `price`, `amount` and `merchantFundAmount` are all per ONE unit of this addon, not per line.
874
+ */
875
+ discounts?: FdoExternalOrderDiscount[] | null | undefined;
869
876
  };
870
877
  export declare const FdoExternalOrderSubItem: z.ZodType<FdoExternalOrderSubItem>;
871
878
  export declare const FdoExternalOrderItem: z.ZodObject<{
@@ -0,0 +1,50 @@
1
+ import { z } from 'zod';
2
+ /**
3
+ * Delivery channels a customer-facing order notification can be routed through.
4
+ *
5
+ * The names mirror sms-backend's `POST /multi-channel/send` `channels` enum
6
+ * EXACTLY (see https://sms-dev.feedmeapi.com/api-reference/). They are sent over
7
+ * the wire verbatim, so renaming a member here silently breaks routing — the
8
+ * request 400s with "a channel listed in channels has no matching entry under
9
+ * content" rather than falling back.
10
+ *
11
+ * EMAIL is listed because sms-backend accepts it, but ordering never routes it —
12
+ * `resolveChannels` drops it. See the note there for why.
13
+ */
14
+ export declare const F_ORDER_NOTIFY_CHANNEL: z.ZodEnum<["APP_INBOX", "SMS", "WHATSAPP", "EMAIL", "PUSH_NOTIFICATION"]>;
15
+ export type F_ORDER_NOTIFY_CHANNEL = z.infer<typeof F_ORDER_NOTIFY_CHANNEL>;
16
+ /**
17
+ * The customer-facing order events ordering-service notifies on.
18
+ *
19
+ * This is deliberately NOT `F_SMS_ACTION` (which has only ACCEPT and SERVE).
20
+ * Order status notifications are emitted from three different places with three
21
+ * different vocabularies:
22
+ *
23
+ * - order-backend accept flow -> ORDER_ACCEPTED (pickup and delivery)
24
+ * - POS notify-pickup-ready -> PICKUP_READY (pickup only)
25
+ * - queue-backend status change-> QUEUE_CALLED / QUEUE_CANCELLED
26
+ *
27
+ * A single event vocabulary is what lets one notification service own channel
28
+ * routing, the app-inbox title, and the billing `notificationType` for all of
29
+ * them. Adding a delivery-progress event later (driver assigned, on the way) is
30
+ * a new member here plus a new row in the two maps in `notification.fn.ts` —
31
+ * both are exhaustive over this enum, so the compiler names every place that
32
+ * needs updating.
33
+ */
34
+ export declare const F_ORDER_NOTIFY_EVENT: z.ZodEnum<["ORDER_ACCEPTED", "PICKUP_READY", "QUEUE_CALLED", "QUEUE_CANCELLED"]>;
35
+ export type F_ORDER_NOTIFY_EVENT = z.infer<typeof F_ORDER_NOTIFY_EVENT>;
36
+ /**
37
+ * Billing / usage categories sms-backend recognises, shared by the SMS `usage`
38
+ * field and the App Inbox `notificationType` field.
39
+ *
40
+ * Two things make this worth pinning as an enum rather than passing strings:
41
+ *
42
+ * 1. sms-backend rejects an UNPRICED `notificationType` with a 400 — it is
43
+ * treated as a malformed request, not a soft failure. So a typo here is not
44
+ * a mispriced send, it is every send failing.
45
+ * 2. `notificationType` DEFAULTS TO 'Marketing' when omitted. For a
46
+ * transactional order update that both prices it as marketing and shows the
47
+ * marketing icon in the app inbox, so it must always be sent explicitly.
48
+ */
49
+ export declare const F_ORDER_NOTIFY_USAGE: z.ZodEnum<["General", "Otp", "Marketing", "MarketingPremium", "Ordering", "MemberInvitation", "MarketingPromotion", "Operational", "Queue", "QueuePremium"]>;
50
+ export type F_ORDER_NOTIFY_USAGE = z.infer<typeof F_ORDER_NOTIFY_USAGE>;
@@ -0,0 +1,91 @@
1
+ import { F_ORDER_NOTIFY_CHANNEL } from './notification.enum';
2
+ /**
3
+ * Which channels an order notification actually goes out on, given what the
4
+ * merchant configured.
5
+ *
6
+ * Shared by order-backend (which sends) and mf-order (which shows the merchant
7
+ * what their configuration will do), so the two cannot disagree. Import it
8
+ * relatively from the backend rather than through the `@entity` barrel, same as
9
+ * `auto-send.resolve.ts`.
10
+ */
11
+ /** The only channel every merchant has today, and the end of every fallback chain. */
12
+ export declare const DEFAULT_CHANNELS: F_ORDER_NOTIFY_CHANNEL[];
13
+ export interface ResolveChannelsInput {
14
+ /** The merchant's configured list. Nullish or empty means "not configured". */
15
+ configured?: F_ORDER_NOTIFY_CHANNEL[] | null;
16
+ /**
17
+ * Whether we have a Firebase uid for this customer. Without one, neither
18
+ * APP_INBOX nor PUSH_NOTIFICATION has a recipient — both APIs address by
19
+ * `firebaseUid` and `phoneNumber` is record-only on both — so neither can be
20
+ * routed. Named for app inbox because that channel landed first; it gates
21
+ * push identically, not a second, separate requirement.
22
+ */
23
+ hasAppInboxUid: boolean;
24
+ }
25
+ /**
26
+ * Turn a merchant's configured channel list into the list we will actually send.
27
+ *
28
+ * Four rules, in order:
29
+ *
30
+ * 1. Not configured -> `['SMS']`. This is what keeps every existing merchant on
31
+ * byte-identical behaviour: no field, no change.
32
+ * 2. EMAIL is dropped. An order carries no customer email address at all —
33
+ * `FdoOrderOption` has `contactNumber` and nothing else — so there is
34
+ * nothing to address. Sending it anyway would have sms-backend refuse the
35
+ * channel and fall through, which works but bills a refusal row and hides
36
+ * a misconfiguration. Dropping it here makes the misconfiguration inert.
37
+ * Supporting email means collecting an address at checkout first.
38
+ * 3. APP_INBOX and PUSH_NOTIFICATION are both dropped when there is no Firebase
39
+ * uid (guest / anonymous order, or a kiosk/external-loyalty identifier that
40
+ * is not a real account). APP_INBOX does not additionally require a
41
+ * registered device: sms-backend stores the message against the uid and
42
+ * reads it back by uid, so it reaches an account that has never opened the
43
+ * app — the message is waiting the first time they do. PUSH_NOTIFICATION
44
+ * does require one (no FCM token, no send), but that is sms-backend's own
45
+ * gate at send time — `presendCheck` refuses and falls through cleanly, so
46
+ * it is not re-checked here.
47
+ *
48
+ * PUSH_NOTIFICATION used to be dropped unconditionally, regardless of a
49
+ * uid: sms-backend had no FCM integration behind the channel, so a routed
50
+ * send was billed and logged but never reached a device, and its
51
+ * `Accepted` still stopped a fallback chain — charging the merchant and
52
+ * telling the customer nothing. Real FCM delivery shipped 2026-09-23
53
+ * (sms-backend-v0.8.14), which is what makes routing it here correct now.
54
+ * 4. If those drops empty the list, fall back to `['SMS']` rather than sending
55
+ * nothing. A customer waiting on their food must still be told.
56
+ *
57
+ * Duplicates are removed because sms-backend rejects the whole request when a
58
+ * channel appears twice in `channels`.
59
+ */
60
+ export declare function resolveChannels({ configured, hasAppInboxUid, }: ResolveChannelsInput): F_ORDER_NOTIFY_CHANNEL[];
61
+ export interface SendPlan {
62
+ /**
63
+ * Sent as its own request, whatever the chain does. Either empty or
64
+ * `[APP_INBOX]`.
65
+ */
66
+ alongside: F_ORDER_NOTIFY_CHANNEL[];
67
+ /** The fallback chain, in the merchant's order. Never empty. */
68
+ chain: F_ORDER_NOTIFY_CHANNEL[];
69
+ }
70
+ /**
71
+ * Split resolved channels into what is sent regardless and what falls back.
72
+ *
73
+ * When push is routed, app inbox comes out of the chain and goes on its own.
74
+ * The two do different jobs: push is the alert, app inbox is the record the
75
+ * customer can come back to. In one fallback chain they cannot both happen, and
76
+ * the chain cannot tell when it should have moved on. Push's `Accepted` only
77
+ * means FCM took the message. A customer who has turned notifications off still
78
+ * has a valid token, so FCM accepts, the chain stops, and nothing is shown and
79
+ * nothing is kept. Sent alongside, the inbox entry is there either way.
80
+ *
81
+ * Taking app inbox out also puts SMS back behind push. In the chain
82
+ * `[PUSH_NOTIFICATION, APP_INBOX, SMS]`, a failed push landed on app inbox,
83
+ * which is accepted for any uid, so SMS could never be reached. Now a push that
84
+ * fails, for example because the customer has no registered device, falls
85
+ * through to SMS.
86
+ *
87
+ * Without push, nothing changes. A merchant routing `[APP_INBOX, SMS]` chose
88
+ * the inbox in place of SMS to save the SMS cost. Sending both would override
89
+ * that choice and bill SMS on every order.
90
+ */
91
+ export declare function planSends(channels: F_ORDER_NOTIFY_CHANNEL[]): SendPlan;
@@ -765,11 +765,13 @@ export declare const FdoOrderSettings: z.ZodObject<{
765
765
  }>, "many">>>;
766
766
  disableRemoteQueue: z.ZodNullable<z.ZodOptional<z.ZodBoolean>>;
767
767
  disableSMS: z.ZodNullable<z.ZodOptional<z.ZodBoolean>>;
768
+ channels: z.ZodNullable<z.ZodOptional<z.ZodArray<z.ZodEnum<["APP_INBOX", "SMS", "WHATSAPP", "EMAIL", "PUSH_NOTIFICATION"]>, "many">>>;
768
769
  printChecklist: z.ZodNullable<z.ZodOptional<z.ZodBoolean>>;
769
770
  autoSendKitchen: z.ZodNullable<z.ZodOptional<z.ZodBoolean>>;
770
771
  enableQueueToTabletTransfer: z.ZodNullable<z.ZodOptional<z.ZodBoolean>>;
771
772
  }, "strip", z.ZodTypeAny, {
772
773
  autoSendKitchen?: boolean | null | undefined;
774
+ channels?: ("APP_INBOX" | "SMS" | "WHATSAPP" | "EMAIL" | "PUSH_NOTIFICATION")[] | null | undefined;
773
775
  showWaitEstimate?: boolean | null | undefined;
774
776
  codeSettings?: {
775
777
  id?: string | null | undefined;
@@ -798,6 +800,7 @@ export declare const FdoOrderSettings: z.ZodObject<{
798
800
  autoCalledLimit: number;
799
801
  }, {
800
802
  autoSendKitchen?: boolean | null | undefined;
803
+ channels?: ("APP_INBOX" | "SMS" | "WHATSAPP" | "EMAIL" | "PUSH_NOTIFICATION")[] | null | undefined;
801
804
  showWaitEstimate?: boolean | null | undefined;
802
805
  codeSettings?: {
803
806
  id?: string | null | undefined;
@@ -839,7 +842,9 @@ export declare const FdoOrderSettings: z.ZodObject<{
839
842
  keys?: Record<string, "Bill Receipt Number" | "Bill Receipt Total Amount (Net)" | "Order Type" | "Order Slot" | "Order Datetime" | "Order Delivery Type" | "Restaurant Name" | "Restaurant Email" | "Restaurant Address" | "Restaurant Contact Number"> | undefined;
840
843
  raw: string;
841
844
  }>;
845
+ channels: z.ZodNullable<z.ZodOptional<z.ZodArray<z.ZodEnum<["APP_INBOX", "SMS", "WHATSAPP", "EMAIL", "PUSH_NOTIFICATION"]>, "many">>>;
842
846
  }, "strip", z.ZodTypeAny, {
847
+ channels?: ("APP_INBOX" | "SMS" | "WHATSAPP" | "EMAIL" | "PUSH_NOTIFICATION")[] | null | undefined;
843
848
  type: "QR" | "QUEUE" | "TAKEAWAY" | "KIOSK" | "COUNTER" | "DINE_IN" | "PICKUP" | "DELIVERY";
844
849
  message: {
845
850
  keys: Record<string, "Bill Receipt Number" | "Bill Receipt Total Amount (Net)" | "Order Type" | "Order Slot" | "Order Datetime" | "Order Delivery Type" | "Restaurant Name" | "Restaurant Email" | "Restaurant Address" | "Restaurant Contact Number">;
@@ -848,6 +853,7 @@ export declare const FdoOrderSettings: z.ZodObject<{
848
853
  enable: boolean;
849
854
  action: "ACCEPT" | "SERVE";
850
855
  }, {
856
+ channels?: ("APP_INBOX" | "SMS" | "WHATSAPP" | "EMAIL" | "PUSH_NOTIFICATION")[] | null | undefined;
851
857
  type: "QR" | "QUEUE" | "TAKEAWAY" | "KIOSK" | "COUNTER" | "DINE_IN" | "PICKUP" | "DELIVERY";
852
858
  message: {
853
859
  keys?: Record<string, "Bill Receipt Number" | "Bill Receipt Total Amount (Net)" | "Order Type" | "Order Slot" | "Order Datetime" | "Order Delivery Type" | "Restaurant Name" | "Restaurant Email" | "Restaurant Address" | "Restaurant Contact Number"> | undefined;
@@ -1117,6 +1123,7 @@ export declare const FdoOrderSettings: z.ZodObject<{
1117
1123
  } | null | undefined;
1118
1124
  queueSettings?: {
1119
1125
  autoSendKitchen?: boolean | null | undefined;
1126
+ channels?: ("APP_INBOX" | "SMS" | "WHATSAPP" | "EMAIL" | "PUSH_NOTIFICATION")[] | null | undefined;
1120
1127
  showWaitEstimate?: boolean | null | undefined;
1121
1128
  codeSettings?: {
1122
1129
  id?: string | null | undefined;
@@ -1145,6 +1152,7 @@ export declare const FdoOrderSettings: z.ZodObject<{
1145
1152
  autoCalledLimit: number;
1146
1153
  } | null | undefined;
1147
1154
  smsSettings?: {
1155
+ channels?: ("APP_INBOX" | "SMS" | "WHATSAPP" | "EMAIL" | "PUSH_NOTIFICATION")[] | null | undefined;
1148
1156
  type: "QR" | "QUEUE" | "TAKEAWAY" | "KIOSK" | "COUNTER" | "DINE_IN" | "PICKUP" | "DELIVERY";
1149
1157
  message: {
1150
1158
  keys: Record<string, "Bill Receipt Number" | "Bill Receipt Total Amount (Net)" | "Order Type" | "Order Slot" | "Order Datetime" | "Order Delivery Type" | "Restaurant Name" | "Restaurant Email" | "Restaurant Address" | "Restaurant Contact Number">;
@@ -1323,6 +1331,7 @@ export declare const FdoOrderSettings: z.ZodObject<{
1323
1331
  } | null | undefined;
1324
1332
  queueSettings?: {
1325
1333
  autoSendKitchen?: boolean | null | undefined;
1334
+ channels?: ("APP_INBOX" | "SMS" | "WHATSAPP" | "EMAIL" | "PUSH_NOTIFICATION")[] | null | undefined;
1326
1335
  showWaitEstimate?: boolean | null | undefined;
1327
1336
  codeSettings?: {
1328
1337
  id?: string | null | undefined;
@@ -1351,6 +1360,7 @@ export declare const FdoOrderSettings: z.ZodObject<{
1351
1360
  autoCalledLimit: number;
1352
1361
  } | null | undefined;
1353
1362
  smsSettings?: {
1363
+ channels?: ("APP_INBOX" | "SMS" | "WHATSAPP" | "EMAIL" | "PUSH_NOTIFICATION")[] | null | undefined;
1354
1364
  type: "QR" | "QUEUE" | "TAKEAWAY" | "KIOSK" | "COUNTER" | "DINE_IN" | "PICKUP" | "DELIVERY";
1355
1365
  message: {
1356
1366
  keys?: Record<string, "Bill Receipt Number" | "Bill Receipt Total Amount (Net)" | "Order Type" | "Order Slot" | "Order Datetime" | "Order Delivery Type" | "Restaurant Name" | "Restaurant Email" | "Restaurant Address" | "Restaurant Contact Number"> | undefined;
@@ -623,11 +623,13 @@ export declare const OrderSettingsDto: z.ZodObject<{
623
623
  }>, "many">>>;
624
624
  disableRemoteQueue: z.ZodNullable<z.ZodOptional<z.ZodBoolean>>;
625
625
  disableSMS: z.ZodNullable<z.ZodOptional<z.ZodBoolean>>;
626
+ channels: z.ZodNullable<z.ZodOptional<z.ZodArray<z.ZodEnum<["APP_INBOX", "SMS", "WHATSAPP", "EMAIL", "PUSH_NOTIFICATION"]>, "many">>>;
626
627
  printChecklist: z.ZodNullable<z.ZodOptional<z.ZodBoolean>>;
627
628
  autoSendKitchen: z.ZodNullable<z.ZodOptional<z.ZodBoolean>>;
628
629
  enableQueueToTabletTransfer: z.ZodNullable<z.ZodOptional<z.ZodBoolean>>;
629
630
  }, "strip", z.ZodTypeAny, {
630
631
  autoSendKitchen?: boolean | null | undefined;
632
+ channels?: ("APP_INBOX" | "SMS" | "WHATSAPP" | "EMAIL" | "PUSH_NOTIFICATION")[] | null | undefined;
631
633
  showWaitEstimate?: boolean | null | undefined;
632
634
  codeSettings?: {
633
635
  id?: string | null | undefined;
@@ -657,6 +659,7 @@ export declare const OrderSettingsDto: z.ZodObject<{
657
659
  }, {
658
660
  duration?: number | undefined;
659
661
  autoSendKitchen?: boolean | null | undefined;
662
+ channels?: ("APP_INBOX" | "SMS" | "WHATSAPP" | "EMAIL" | "PUSH_NOTIFICATION")[] | null | undefined;
660
663
  showWaitEstimate?: boolean | null | undefined;
661
664
  codeSettings?: {
662
665
  id?: string | null | undefined;
@@ -844,7 +847,9 @@ export declare const OrderSettingsDto: z.ZodObject<{
844
847
  keys?: Record<string, "Bill Receipt Number" | "Bill Receipt Total Amount (Net)" | "Order Type" | "Order Slot" | "Order Datetime" | "Order Delivery Type" | "Restaurant Name" | "Restaurant Email" | "Restaurant Address" | "Restaurant Contact Number"> | undefined;
845
848
  raw: string;
846
849
  }>;
850
+ channels: z.ZodNullable<z.ZodOptional<z.ZodArray<z.ZodEnum<["APP_INBOX", "SMS", "WHATSAPP", "EMAIL", "PUSH_NOTIFICATION"]>, "many">>>;
847
851
  }, "strip", z.ZodTypeAny, {
852
+ channels?: ("APP_INBOX" | "SMS" | "WHATSAPP" | "EMAIL" | "PUSH_NOTIFICATION")[] | null | undefined;
848
853
  type: "QR" | "QUEUE" | "TAKEAWAY" | "KIOSK" | "COUNTER" | "DINE_IN" | "PICKUP" | "DELIVERY";
849
854
  message: {
850
855
  keys: Record<string, "Bill Receipt Number" | "Bill Receipt Total Amount (Net)" | "Order Type" | "Order Slot" | "Order Datetime" | "Order Delivery Type" | "Restaurant Name" | "Restaurant Email" | "Restaurant Address" | "Restaurant Contact Number">;
@@ -853,6 +858,7 @@ export declare const OrderSettingsDto: z.ZodObject<{
853
858
  enable: boolean;
854
859
  action: "ACCEPT" | "SERVE";
855
860
  }, {
861
+ channels?: ("APP_INBOX" | "SMS" | "WHATSAPP" | "EMAIL" | "PUSH_NOTIFICATION")[] | null | undefined;
856
862
  type: "QR" | "QUEUE" | "TAKEAWAY" | "KIOSK" | "COUNTER" | "DINE_IN" | "PICKUP" | "DELIVERY";
857
863
  message: {
858
864
  keys?: Record<string, "Bill Receipt Number" | "Bill Receipt Total Amount (Net)" | "Order Type" | "Order Slot" | "Order Datetime" | "Order Delivery Type" | "Restaurant Name" | "Restaurant Email" | "Restaurant Address" | "Restaurant Contact Number"> | undefined;
@@ -1174,6 +1180,7 @@ export declare const OrderSettingsDto: z.ZodObject<{
1174
1180
  } | null | undefined;
1175
1181
  queueSettings?: {
1176
1182
  autoSendKitchen?: boolean | null | undefined;
1183
+ channels?: ("APP_INBOX" | "SMS" | "WHATSAPP" | "EMAIL" | "PUSH_NOTIFICATION")[] | null | undefined;
1177
1184
  showWaitEstimate?: boolean | null | undefined;
1178
1185
  codeSettings?: {
1179
1186
  id?: string | null | undefined;
@@ -1202,6 +1209,7 @@ export declare const OrderSettingsDto: z.ZodObject<{
1202
1209
  autoCalledLimit: number;
1203
1210
  } | null | undefined;
1204
1211
  smsSettings?: {
1212
+ channels?: ("APP_INBOX" | "SMS" | "WHATSAPP" | "EMAIL" | "PUSH_NOTIFICATION")[] | null | undefined;
1205
1213
  type: "QR" | "QUEUE" | "TAKEAWAY" | "KIOSK" | "COUNTER" | "DINE_IN" | "PICKUP" | "DELIVERY";
1206
1214
  message: {
1207
1215
  keys: Record<string, "Bill Receipt Number" | "Bill Receipt Total Amount (Net)" | "Order Type" | "Order Slot" | "Order Datetime" | "Order Delivery Type" | "Restaurant Name" | "Restaurant Email" | "Restaurant Address" | "Restaurant Contact Number">;
@@ -1401,6 +1409,7 @@ export declare const OrderSettingsDto: z.ZodObject<{
1401
1409
  queueSettings?: {
1402
1410
  duration?: number | undefined;
1403
1411
  autoSendKitchen?: boolean | null | undefined;
1412
+ channels?: ("APP_INBOX" | "SMS" | "WHATSAPP" | "EMAIL" | "PUSH_NOTIFICATION")[] | null | undefined;
1404
1413
  showWaitEstimate?: boolean | null | undefined;
1405
1414
  codeSettings?: {
1406
1415
  id?: string | null | undefined;
@@ -1428,6 +1437,7 @@ export declare const OrderSettingsDto: z.ZodObject<{
1428
1437
  autoCalledLimit: number;
1429
1438
  } | null | undefined;
1430
1439
  smsSettings?: {
1440
+ channels?: ("APP_INBOX" | "SMS" | "WHATSAPP" | "EMAIL" | "PUSH_NOTIFICATION")[] | null | undefined;
1431
1441
  type: "QR" | "QUEUE" | "TAKEAWAY" | "KIOSK" | "COUNTER" | "DINE_IN" | "PICKUP" | "DELIVERY";
1432
1442
  message: {
1433
1443
  keys?: Record<string, "Bill Receipt Number" | "Bill Receipt Total Amount (Net)" | "Order Type" | "Order Slot" | "Order Datetime" | "Order Delivery Type" | "Restaurant Name" | "Restaurant Email" | "Restaurant Address" | "Restaurant Contact Number"> | undefined;
@@ -2126,11 +2136,13 @@ export declare const OrderSettingUpdateDto: z.ZodObject<z.extendShape<Omit<{
2126
2136
  }>, "many">>>;
2127
2137
  disableRemoteQueue: z.ZodNullable<z.ZodOptional<z.ZodBoolean>>;
2128
2138
  disableSMS: z.ZodNullable<z.ZodOptional<z.ZodBoolean>>;
2139
+ channels: z.ZodNullable<z.ZodOptional<z.ZodArray<z.ZodEnum<["APP_INBOX", "SMS", "WHATSAPP", "EMAIL", "PUSH_NOTIFICATION"]>, "many">>>;
2129
2140
  printChecklist: z.ZodNullable<z.ZodOptional<z.ZodBoolean>>;
2130
2141
  autoSendKitchen: z.ZodNullable<z.ZodOptional<z.ZodBoolean>>;
2131
2142
  enableQueueToTabletTransfer: z.ZodNullable<z.ZodOptional<z.ZodBoolean>>;
2132
2143
  }, "strip", z.ZodTypeAny, {
2133
2144
  autoSendKitchen?: boolean | null | undefined;
2145
+ channels?: ("APP_INBOX" | "SMS" | "WHATSAPP" | "EMAIL" | "PUSH_NOTIFICATION")[] | null | undefined;
2134
2146
  showWaitEstimate?: boolean | null | undefined;
2135
2147
  codeSettings?: {
2136
2148
  id?: string | null | undefined;
@@ -2160,6 +2172,7 @@ export declare const OrderSettingUpdateDto: z.ZodObject<z.extendShape<Omit<{
2160
2172
  }, {
2161
2173
  duration?: number | undefined;
2162
2174
  autoSendKitchen?: boolean | null | undefined;
2175
+ channels?: ("APP_INBOX" | "SMS" | "WHATSAPP" | "EMAIL" | "PUSH_NOTIFICATION")[] | null | undefined;
2163
2176
  showWaitEstimate?: boolean | null | undefined;
2164
2177
  codeSettings?: {
2165
2178
  id?: string | null | undefined;
@@ -2347,7 +2360,9 @@ export declare const OrderSettingUpdateDto: z.ZodObject<z.extendShape<Omit<{
2347
2360
  keys?: Record<string, "Bill Receipt Number" | "Bill Receipt Total Amount (Net)" | "Order Type" | "Order Slot" | "Order Datetime" | "Order Delivery Type" | "Restaurant Name" | "Restaurant Email" | "Restaurant Address" | "Restaurant Contact Number"> | undefined;
2348
2361
  raw: string;
2349
2362
  }>;
2363
+ channels: z.ZodNullable<z.ZodOptional<z.ZodArray<z.ZodEnum<["APP_INBOX", "SMS", "WHATSAPP", "EMAIL", "PUSH_NOTIFICATION"]>, "many">>>;
2350
2364
  }, "strip", z.ZodTypeAny, {
2365
+ channels?: ("APP_INBOX" | "SMS" | "WHATSAPP" | "EMAIL" | "PUSH_NOTIFICATION")[] | null | undefined;
2351
2366
  type: "QR" | "QUEUE" | "TAKEAWAY" | "KIOSK" | "COUNTER" | "DINE_IN" | "PICKUP" | "DELIVERY";
2352
2367
  message: {
2353
2368
  keys: Record<string, "Bill Receipt Number" | "Bill Receipt Total Amount (Net)" | "Order Type" | "Order Slot" | "Order Datetime" | "Order Delivery Type" | "Restaurant Name" | "Restaurant Email" | "Restaurant Address" | "Restaurant Contact Number">;
@@ -2356,6 +2371,7 @@ export declare const OrderSettingUpdateDto: z.ZodObject<z.extendShape<Omit<{
2356
2371
  enable: boolean;
2357
2372
  action: "ACCEPT" | "SERVE";
2358
2373
  }, {
2374
+ channels?: ("APP_INBOX" | "SMS" | "WHATSAPP" | "EMAIL" | "PUSH_NOTIFICATION")[] | null | undefined;
2359
2375
  type: "QR" | "QUEUE" | "TAKEAWAY" | "KIOSK" | "COUNTER" | "DINE_IN" | "PICKUP" | "DELIVERY";
2360
2376
  message: {
2361
2377
  keys?: Record<string, "Bill Receipt Number" | "Bill Receipt Total Amount (Net)" | "Order Type" | "Order Slot" | "Order Datetime" | "Order Delivery Type" | "Restaurant Name" | "Restaurant Email" | "Restaurant Address" | "Restaurant Contact Number"> | undefined;
@@ -3408,6 +3424,7 @@ export declare const OrderSettingUpdateDto: z.ZodObject<z.extendShape<Omit<{
3408
3424
  } | null | undefined;
3409
3425
  queueSettings?: {
3410
3426
  autoSendKitchen?: boolean | null | undefined;
3427
+ channels?: ("APP_INBOX" | "SMS" | "WHATSAPP" | "EMAIL" | "PUSH_NOTIFICATION")[] | null | undefined;
3411
3428
  showWaitEstimate?: boolean | null | undefined;
3412
3429
  codeSettings?: {
3413
3430
  id?: string | null | undefined;
@@ -3436,6 +3453,7 @@ export declare const OrderSettingUpdateDto: z.ZodObject<z.extendShape<Omit<{
3436
3453
  autoCalledLimit: number;
3437
3454
  } | null | undefined;
3438
3455
  smsSettings?: {
3456
+ channels?: ("APP_INBOX" | "SMS" | "WHATSAPP" | "EMAIL" | "PUSH_NOTIFICATION")[] | null | undefined;
3439
3457
  type: "QR" | "QUEUE" | "TAKEAWAY" | "KIOSK" | "COUNTER" | "DINE_IN" | "PICKUP" | "DELIVERY";
3440
3458
  message: {
3441
3459
  keys: Record<string, "Bill Receipt Number" | "Bill Receipt Total Amount (Net)" | "Order Type" | "Order Slot" | "Order Datetime" | "Order Delivery Type" | "Restaurant Name" | "Restaurant Email" | "Restaurant Address" | "Restaurant Contact Number">;
@@ -3614,6 +3632,7 @@ export declare const OrderSettingUpdateDto: z.ZodObject<z.extendShape<Omit<{
3614
3632
  queueSettings?: {
3615
3633
  duration?: number | undefined;
3616
3634
  autoSendKitchen?: boolean | null | undefined;
3635
+ channels?: ("APP_INBOX" | "SMS" | "WHATSAPP" | "EMAIL" | "PUSH_NOTIFICATION")[] | null | undefined;
3617
3636
  showWaitEstimate?: boolean | null | undefined;
3618
3637
  codeSettings?: {
3619
3638
  id?: string | null | undefined;
@@ -3641,6 +3660,7 @@ export declare const OrderSettingUpdateDto: z.ZodObject<z.extendShape<Omit<{
3641
3660
  autoCalledLimit: number;
3642
3661
  } | null | undefined;
3643
3662
  smsSettings?: {
3663
+ channels?: ("APP_INBOX" | "SMS" | "WHATSAPP" | "EMAIL" | "PUSH_NOTIFICATION")[] | null | undefined;
3644
3664
  type: "QR" | "QUEUE" | "TAKEAWAY" | "KIOSK" | "COUNTER" | "DINE_IN" | "PICKUP" | "DELIVERY";
3645
3665
  message: {
3646
3666
  keys?: Record<string, "Bill Receipt Number" | "Bill Receipt Total Amount (Net)" | "Order Type" | "Order Slot" | "Order Datetime" | "Order Delivery Type" | "Restaurant Name" | "Restaurant Email" | "Restaurant Address" | "Restaurant Contact Number"> | undefined;
@@ -235,8 +235,23 @@ export declare const FdoOrderQueueSettings: z.ZodObject<{
235
235
  disableRemoteQueue: z.ZodNullable<z.ZodOptional<z.ZodBoolean>>;
236
236
  /**
237
237
  * Disable sending SMS to customer when call queue or approaching
238
+ *
239
+ * Still the MASTER off switch for every queue notification channel, not just
240
+ * SMS — `channels` below only chooses how a notification is delivered, this
241
+ * decides whether one is sent at all. Kept as-is so an existing merchant who
242
+ * turned notifications off stays off.
238
243
  */
239
244
  disableSMS: z.ZodNullable<z.ZodOptional<z.ZodBoolean>>;
245
+ /**
246
+ * Channels queue notifications are routed through, in PRIORITY ORDER — index 0
247
+ * is the primary. Nullish or empty means `['SMS']`, i.e. today's behaviour.
248
+ *
249
+ * Separate from `smsSettings[].channels` because queue notifications do not go
250
+ * through `orderSetting.smsSettings` at all: they are emitted by queue-backend
251
+ * with a code-owned message and have no per-action setting rows to hang a
252
+ * channel list on.
253
+ */
254
+ channels: z.ZodNullable<z.ZodOptional<z.ZodArray<z.ZodEnum<["APP_INBOX", "SMS", "WHATSAPP", "EMAIL", "PUSH_NOTIFICATION"]>, "many">>>;
240
255
  printChecklist: z.ZodNullable<z.ZodOptional<z.ZodBoolean>>;
241
256
  autoSendKitchen: z.ZodNullable<z.ZodOptional<z.ZodBoolean>>;
242
257
  /**
@@ -245,6 +260,7 @@ export declare const FdoOrderQueueSettings: z.ZodObject<{
245
260
  enableQueueToTabletTransfer: z.ZodNullable<z.ZodOptional<z.ZodBoolean>>;
246
261
  }, "strip", z.ZodTypeAny, {
247
262
  autoSendKitchen?: boolean | null | undefined;
263
+ channels?: ("APP_INBOX" | "SMS" | "WHATSAPP" | "EMAIL" | "PUSH_NOTIFICATION")[] | null | undefined;
248
264
  showWaitEstimate?: boolean | null | undefined;
249
265
  codeSettings?: {
250
266
  id?: string | null | undefined;
@@ -273,6 +289,7 @@ export declare const FdoOrderQueueSettings: z.ZodObject<{
273
289
  autoCalledLimit: number;
274
290
  }, {
275
291
  autoSendKitchen?: boolean | null | undefined;
292
+ channels?: ("APP_INBOX" | "SMS" | "WHATSAPP" | "EMAIL" | "PUSH_NOTIFICATION")[] | null | undefined;
276
293
  showWaitEstimate?: boolean | null | undefined;
277
294
  codeSettings?: {
278
295
  id?: string | null | undefined;
@@ -92,6 +92,8 @@ export declare const RestaurantQueueSettingDto: z.ZodObject<{
92
92
  * Disable sending SMS to customer when call queue or approaching
93
93
  */
94
94
  disableSMS: z.ZodNullable<z.ZodOptional<z.ZodBoolean>>;
95
+ /** Priority-ordered channels; nullish/empty = `['SMS']`. See FdoOrderQueueSettings. */
96
+ channels: z.ZodNullable<z.ZodOptional<z.ZodArray<z.ZodEnum<["APP_INBOX", "SMS", "WHATSAPP", "EMAIL", "PUSH_NOTIFICATION"]>, "many">>>;
95
97
  printChecklist: z.ZodNullable<z.ZodOptional<z.ZodBoolean>>;
96
98
  autoSendKitchen: z.ZodNullable<z.ZodOptional<z.ZodBoolean>>;
97
99
  /**
@@ -100,6 +102,7 @@ export declare const RestaurantQueueSettingDto: z.ZodObject<{
100
102
  enableQueueToTabletTransfer: z.ZodNullable<z.ZodOptional<z.ZodBoolean>>;
101
103
  }, "strip", z.ZodTypeAny, {
102
104
  autoSendKitchen?: boolean | null | undefined;
105
+ channels?: ("APP_INBOX" | "SMS" | "WHATSAPP" | "EMAIL" | "PUSH_NOTIFICATION")[] | null | undefined;
103
106
  showWaitEstimate?: boolean | null | undefined;
104
107
  codeSettings?: {
105
108
  id?: string | null | undefined;
@@ -129,6 +132,7 @@ export declare const RestaurantQueueSettingDto: z.ZodObject<{
129
132
  }, {
130
133
  duration?: number | undefined;
131
134
  autoSendKitchen?: boolean | null | undefined;
135
+ channels?: ("APP_INBOX" | "SMS" | "WHATSAPP" | "EMAIL" | "PUSH_NOTIFICATION")[] | null | undefined;
132
136
  showWaitEstimate?: boolean | null | undefined;
133
137
  codeSettings?: {
134
138
  id?: string | null | undefined;
@@ -13,7 +13,20 @@ export declare const FdoOrderSmsSettings: z.ZodObject<{
13
13
  keys?: Record<string, "Bill Receipt Number" | "Bill Receipt Total Amount (Net)" | "Order Type" | "Order Slot" | "Order Datetime" | "Order Delivery Type" | "Restaurant Name" | "Restaurant Email" | "Restaurant Address" | "Restaurant Contact Number"> | undefined;
14
14
  raw: string;
15
15
  }>;
16
+ /**
17
+ * Channels this notification is routed through, in PRIORITY ORDER — index 0 is
18
+ * the primary. Nullish or empty means `['SMS']`, which is what every merchant
19
+ * configured before app inbox existed, so an absent field keeps today's exact
20
+ * behaviour. See `resolveChannels` in backend/libs/notification/notification.fn.ts.
21
+ *
22
+ * Optional, and it must stay optional: mf-order runs
23
+ * `OrderSettingUpdateDto.parse` in the BROWSER and PUTs the whole settings
24
+ * object, so a portal bundle compiled before this field existed strips it on
25
+ * save. `OrderSettingService.preserveSmsSettingChannels` re-attaches it.
26
+ */
27
+ channels: z.ZodNullable<z.ZodOptional<z.ZodArray<z.ZodEnum<["APP_INBOX", "SMS", "WHATSAPP", "EMAIL", "PUSH_NOTIFICATION"]>, "many">>>;
16
28
  }, "strip", z.ZodTypeAny, {
29
+ channels?: ("APP_INBOX" | "SMS" | "WHATSAPP" | "EMAIL" | "PUSH_NOTIFICATION")[] | null | undefined;
17
30
  type: "QR" | "QUEUE" | "TAKEAWAY" | "KIOSK" | "COUNTER" | "DINE_IN" | "PICKUP" | "DELIVERY";
18
31
  message: {
19
32
  keys: Record<string, "Bill Receipt Number" | "Bill Receipt Total Amount (Net)" | "Order Type" | "Order Slot" | "Order Datetime" | "Order Delivery Type" | "Restaurant Name" | "Restaurant Email" | "Restaurant Address" | "Restaurant Contact Number">;
@@ -22,6 +35,7 @@ export declare const FdoOrderSmsSettings: z.ZodObject<{
22
35
  enable: boolean;
23
36
  action: "ACCEPT" | "SERVE";
24
37
  }, {
38
+ channels?: ("APP_INBOX" | "SMS" | "WHATSAPP" | "EMAIL" | "PUSH_NOTIFICATION")[] | null | undefined;
25
39
  type: "QR" | "QUEUE" | "TAKEAWAY" | "KIOSK" | "COUNTER" | "DINE_IN" | "PICKUP" | "DELIVERY";
26
40
  message: {
27
41
  keys?: Record<string, "Bill Receipt Number" | "Bill Receipt Total Amount (Net)" | "Order Type" | "Order Slot" | "Order Datetime" | "Order Delivery Type" | "Restaurant Name" | "Restaurant Email" | "Restaurant Address" | "Restaurant Contact Number"> | undefined;
@@ -23,7 +23,10 @@ export declare const OrderSmsSettingDto: z.ZodObject<{
23
23
  keys?: Record<string, "Bill Receipt Number" | "Bill Receipt Total Amount (Net)" | "Order Type" | "Order Slot" | "Order Datetime" | "Order Delivery Type" | "Restaurant Name" | "Restaurant Email" | "Restaurant Address" | "Restaurant Contact Number"> | undefined;
24
24
  raw: string;
25
25
  }>;
26
+ /** Priority-ordered channels; nullish/empty = `['SMS']`. See FdoOrderSmsSettings. */
27
+ channels: z.ZodNullable<z.ZodOptional<z.ZodArray<z.ZodEnum<["APP_INBOX", "SMS", "WHATSAPP", "EMAIL", "PUSH_NOTIFICATION"]>, "many">>>;
26
28
  }, "strip", z.ZodTypeAny, {
29
+ channels?: ("APP_INBOX" | "SMS" | "WHATSAPP" | "EMAIL" | "PUSH_NOTIFICATION")[] | null | undefined;
27
30
  type: "QR" | "QUEUE" | "TAKEAWAY" | "KIOSK" | "COUNTER" | "DINE_IN" | "PICKUP" | "DELIVERY";
28
31
  message: {
29
32
  keys: Record<string, "Bill Receipt Number" | "Bill Receipt Total Amount (Net)" | "Order Type" | "Order Slot" | "Order Datetime" | "Order Delivery Type" | "Restaurant Name" | "Restaurant Email" | "Restaurant Address" | "Restaurant Contact Number">;
@@ -32,6 +35,7 @@ export declare const OrderSmsSettingDto: z.ZodObject<{
32
35
  enable: boolean;
33
36
  action: "ACCEPT" | "SERVE";
34
37
  }, {
38
+ channels?: ("APP_INBOX" | "SMS" | "WHATSAPP" | "EMAIL" | "PUSH_NOTIFICATION")[] | null | undefined;
35
39
  type: "QR" | "QUEUE" | "TAKEAWAY" | "KIOSK" | "COUNTER" | "DINE_IN" | "PICKUP" | "DELIVERY";
36
40
  message: {
37
41
  keys?: Record<string, "Bill Receipt Number" | "Bill Receipt Total Amount (Net)" | "Order Type" | "Order Slot" | "Order Datetime" | "Order Delivery Type" | "Restaurant Name" | "Restaurant Email" | "Restaurant Address" | "Restaurant Contact Number"> | undefined;
@@ -1451,11 +1451,13 @@ export declare const RestaurantCustomerV2Dto: z.ZodObject<{
1451
1451
  }>, "many">>>;
1452
1452
  disableRemoteQueue: z.ZodNullable<z.ZodOptional<z.ZodBoolean>>;
1453
1453
  disableSMS: z.ZodNullable<z.ZodOptional<z.ZodBoolean>>;
1454
+ channels: z.ZodNullable<z.ZodOptional<z.ZodArray<z.ZodEnum<["APP_INBOX", "SMS", "WHATSAPP", "EMAIL", "PUSH_NOTIFICATION"]>, "many">>>;
1454
1455
  printChecklist: z.ZodNullable<z.ZodOptional<z.ZodBoolean>>;
1455
1456
  autoSendKitchen: z.ZodNullable<z.ZodOptional<z.ZodBoolean>>;
1456
1457
  enableQueueToTabletTransfer: z.ZodNullable<z.ZodOptional<z.ZodBoolean>>;
1457
1458
  }, "strip", z.ZodTypeAny, {
1458
1459
  autoSendKitchen?: boolean | null | undefined;
1460
+ channels?: ("APP_INBOX" | "SMS" | "WHATSAPP" | "EMAIL" | "PUSH_NOTIFICATION")[] | null | undefined;
1459
1461
  showWaitEstimate?: boolean | null | undefined;
1460
1462
  codeSettings?: {
1461
1463
  id?: string | null | undefined;
@@ -1485,6 +1487,7 @@ export declare const RestaurantCustomerV2Dto: z.ZodObject<{
1485
1487
  }, {
1486
1488
  duration?: number | undefined;
1487
1489
  autoSendKitchen?: boolean | null | undefined;
1490
+ channels?: ("APP_INBOX" | "SMS" | "WHATSAPP" | "EMAIL" | "PUSH_NOTIFICATION")[] | null | undefined;
1488
1491
  showWaitEstimate?: boolean | null | undefined;
1489
1492
  codeSettings?: {
1490
1493
  id?: string | null | undefined;
@@ -1837,6 +1840,7 @@ export declare const RestaurantCustomerV2Dto: z.ZodObject<{
1837
1840
  shopeefoodDelivery?: any;
1838
1841
  queueSetting?: {
1839
1842
  autoSendKitchen?: boolean | null | undefined;
1843
+ channels?: ("APP_INBOX" | "SMS" | "WHATSAPP" | "EMAIL" | "PUSH_NOTIFICATION")[] | null | undefined;
1840
1844
  showWaitEstimate?: boolean | null | undefined;
1841
1845
  codeSettings?: {
1842
1846
  id?: string | null | undefined;
@@ -2138,6 +2142,7 @@ export declare const RestaurantCustomerV2Dto: z.ZodObject<{
2138
2142
  queueSetting?: {
2139
2143
  duration?: number | undefined;
2140
2144
  autoSendKitchen?: boolean | null | undefined;
2145
+ channels?: ("APP_INBOX" | "SMS" | "WHATSAPP" | "EMAIL" | "PUSH_NOTIFICATION")[] | null | undefined;
2141
2146
  showWaitEstimate?: boolean | null | undefined;
2142
2147
  codeSettings?: {
2143
2148
  id?: string | null | undefined;
@@ -4656,11 +4661,13 @@ export declare const RestaurantCustomerKioskDto: z.ZodObject<{
4656
4661
  }>, "many">>>;
4657
4662
  disableRemoteQueue: z.ZodNullable<z.ZodOptional<z.ZodBoolean>>;
4658
4663
  disableSMS: z.ZodNullable<z.ZodOptional<z.ZodBoolean>>;
4664
+ channels: z.ZodNullable<z.ZodOptional<z.ZodArray<z.ZodEnum<["APP_INBOX", "SMS", "WHATSAPP", "EMAIL", "PUSH_NOTIFICATION"]>, "many">>>;
4659
4665
  printChecklist: z.ZodNullable<z.ZodOptional<z.ZodBoolean>>;
4660
4666
  autoSendKitchen: z.ZodNullable<z.ZodOptional<z.ZodBoolean>>;
4661
4667
  enableQueueToTabletTransfer: z.ZodNullable<z.ZodOptional<z.ZodBoolean>>;
4662
4668
  }, "strip", z.ZodTypeAny, {
4663
4669
  autoSendKitchen?: boolean | null | undefined;
4670
+ channels?: ("APP_INBOX" | "SMS" | "WHATSAPP" | "EMAIL" | "PUSH_NOTIFICATION")[] | null | undefined;
4664
4671
  showWaitEstimate?: boolean | null | undefined;
4665
4672
  codeSettings?: {
4666
4673
  id?: string | null | undefined;
@@ -4690,6 +4697,7 @@ export declare const RestaurantCustomerKioskDto: z.ZodObject<{
4690
4697
  }, {
4691
4698
  duration?: number | undefined;
4692
4699
  autoSendKitchen?: boolean | null | undefined;
4700
+ channels?: ("APP_INBOX" | "SMS" | "WHATSAPP" | "EMAIL" | "PUSH_NOTIFICATION")[] | null | undefined;
4693
4701
  showWaitEstimate?: boolean | null | undefined;
4694
4702
  codeSettings?: {
4695
4703
  id?: string | null | undefined;
@@ -5641,6 +5649,7 @@ export declare const RestaurantCustomerKioskDto: z.ZodObject<{
5641
5649
  } | null | undefined;
5642
5650
  queueSettings?: {
5643
5651
  autoSendKitchen?: boolean | null | undefined;
5652
+ channels?: ("APP_INBOX" | "SMS" | "WHATSAPP" | "EMAIL" | "PUSH_NOTIFICATION")[] | null | undefined;
5644
5653
  showWaitEstimate?: boolean | null | undefined;
5645
5654
  codeSettings?: {
5646
5655
  id?: string | null | undefined;
@@ -5996,6 +6005,7 @@ export declare const RestaurantCustomerKioskDto: z.ZodObject<{
5996
6005
  queueSettings?: {
5997
6006
  duration?: number | undefined;
5998
6007
  autoSendKitchen?: boolean | null | undefined;
6008
+ channels?: ("APP_INBOX" | "SMS" | "WHATSAPP" | "EMAIL" | "PUSH_NOTIFICATION")[] | null | undefined;
5999
6009
  showWaitEstimate?: boolean | null | undefined;
6000
6010
  codeSettings?: {
6001
6011
  id?: string | null | undefined;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@feedmepos/mf-order-setting",
3
- "version": "0.0.86",
3
+ "version": "0.0.87",
4
4
  "type": "module",
5
5
  "module": "./dist/app.js",
6
6
  "license": "UNLICENSED",