@feedmepos/mf-order-setting 0.0.84 → 0.0.85

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 (109) hide show
  1. package/dist/DisplaySystemView-hmlT9gsb.js +6485 -0
  2. package/dist/{KioskDevicesView-DdwFuenU.js → KioskDevicesView-fW6M9Hao.js} +1 -1
  3. package/dist/{KioskDevicesView.vue_vue_type_script_setup_true_lang-CxtLm_oh.js → KioskDevicesView.vue_vue_type_script_setup_true_lang-GrsnYo80.js} +3 -3
  4. package/dist/KioskSettingView-BdEPftHH.js +839 -0
  5. package/dist/{KioskView-fwBwUGCQ.js → KioskView-Bwk9S0tc.js} +82 -70
  6. package/dist/{OrderSettingsView-RhlyZmzs.js → OrderSettingsView-DVXfVdXj.js} +30858 -30699
  7. package/dist/{app-ClOkRxOZ.js → app-BnrruYco.js} +74 -12
  8. package/dist/app.js +1 -1
  9. package/dist/display-preview/assets/BandBoard-DIcfXsNV.js +1 -0
  10. package/dist/display-preview/assets/CarouselBlock-XAhTyEWB.js +1 -0
  11. package/dist/display-preview/assets/{CategoryBoard-DClMUGfS.js → CategoryBoard-DBKe18hv.js} +1 -1
  12. package/dist/display-preview/assets/ImageBlock-BCbnYSHq.js +1 -0
  13. package/dist/display-preview/assets/PickupMode-Df_TPCh8.js +1 -0
  14. package/dist/display-preview/assets/{StatusBoard-BVESD28J.js → StatusBoard-28z3bPOf.js} +1 -1
  15. package/dist/display-preview/assets/TextBlock-CvJKITtx.js +1 -0
  16. package/dist/display-preview/assets/VideoBlock-Dop43wDv.js +1 -0
  17. package/dist/display-preview/assets/index-C6DET5zJ.css +1 -0
  18. package/dist/display-preview/assets/index-cqMoOpSN.js +2 -0
  19. package/dist/display-preview/assets/pickupView-DRMVXqrc.js +1 -0
  20. package/dist/display-preview/index.html +2 -2
  21. package/dist/frontend/mf-order/src/app.d.ts +62 -0
  22. package/dist/frontend/mf-order/src/main.d.ts +62 -0
  23. package/dist/frontend/mf-order/src/modules/display-system/interface.d.ts +21 -0
  24. package/dist/frontend/mf-order/src/modules/order-setting/kiosk/coverCarousel.d.ts +69 -0
  25. package/dist/frontend/mf-order/src/modules/order-setting/kiosk/interface.d.ts +5 -1
  26. package/dist/frontend/mf-order/src/stores/order-setting/index.d.ts +90 -3
  27. package/dist/frontend/mf-order/src/views/display-system/DisplayFieldControl.vue.d.ts +3 -0
  28. package/dist/frontend/mf-order/src/views/display-system/DisplayInspector.vue.d.ts +3 -13
  29. package/dist/frontend/mf-order/src/views/order-settings/auto-send-kitchen.d.ts +58 -0
  30. package/dist/frontend/mf-order/src/views/order-settings/delivery/inhouse/InHouseDelivery.vue.d.ts +16 -1
  31. package/dist/frontend/mf-order/src/views/order-settings/pickup/PickUpSettingDialogContent.vue.d.ts +16 -1
  32. package/dist/frontend/mf-order/src/views/order-settings/useAutoSendGuard.d.ts +48 -0
  33. package/dist/frontend/mf-order/tsconfig.app.tsbuildinfo +1 -1
  34. package/dist/{index-CKEbr9Es.js → index-D5wABuUx.js} +1 -1
  35. package/dist/{index-5k7kGCpJ.js → index-D7IWjZdy.js} +2 -2
  36. package/dist/{index-I2YGevce.js → index-LyvBqKnv.js} +1 -1
  37. package/dist/{order.dto-Dbn-hRrm.js → order.dto-D7HGiueX.js} +3579 -3428
  38. package/dist/package/entity/alert/investigation.dto.d.ts +25 -6
  39. package/dist/package/entity/alert/lark-callback.dto.d.ts +31 -12
  40. package/dist/package/entity/alert/suggestion.dto.d.ts +4 -4
  41. package/dist/package/entity/display/blocks.d.ts +42 -76
  42. package/dist/package/entity/incoming-order/incoming-order-to-bill.dto.d.ts +47 -36
  43. package/dist/package/entity/incoming-order/incoming-order.dto.d.ts +1 -0
  44. package/dist/package/entity/index.d.ts +2 -0
  45. package/dist/package/entity/index.frontend.d.ts +2 -0
  46. package/dist/package/entity/order/effects/effect.dto.d.ts +266 -0
  47. package/dist/package/entity/order/order-item/order-item.dto.d.ts +36 -36
  48. package/dist/package/entity/order/order.do.d.ts +7 -64
  49. package/dist/package/entity/order/order.dto.d.ts +13006 -795
  50. package/dist/package/entity/order-platform/grabfood/grabfood-settings.do.d.ts +13 -0
  51. package/dist/package/entity/order-platform/grabfood/grabfood.dto.d.ts +3 -0
  52. package/dist/package/entity/order-platform/menu.dto.d.ts +10 -10
  53. package/dist/package/entity/order-platform/shopeefood/shopeefood-order.dto.d.ts +11 -8
  54. package/dist/package/entity/order-setting/auto-accept.dto.d.ts +94 -0
  55. package/dist/package/entity/order-setting/auto-send.resolve.d.ts +110 -0
  56. package/dist/package/entity/order-setting/delivery/inhouse-delivery.do.d.ts +3 -0
  57. package/dist/package/entity/order-setting/delivery/inhouse-delivery.dto.d.ts +3 -0
  58. package/dist/package/entity/order-setting/dine-in/dine-in.do.d.ts +3 -0
  59. package/dist/package/entity/order-setting/dine-in/dine-in.dto.d.ts +3 -0
  60. package/dist/package/entity/order-setting/kiosk/kiosk.do.d.ts +26 -0
  61. package/dist/package/entity/order-setting/kiosk/kiosk.dto.d.ts +39 -0
  62. package/dist/package/entity/order-setting/order-setting.do.d.ts +57 -4
  63. package/dist/package/entity/order-setting/order-setting.dto.d.ts +259 -9
  64. package/dist/package/entity/order-setting/pickup/pickup.do.d.ts +3 -0
  65. package/dist/package/entity/order-setting/pickup/pickup.dto.d.ts +3 -0
  66. package/dist/package/entity/order-setting/queue/queue.do.d.ts +2 -2
  67. package/dist/package/entity/order-setting/queue/queue.dto.d.ts +2 -2
  68. package/dist/package/entity/queue/queue.dto.d.ts +48 -48
  69. package/dist/package/entity/restaurant/restaurant.dto.d.ts +46 -8
  70. package/dist/package/entity/websocket/websocket.dto.d.ts +88 -0
  71. package/dist/style.css +1 -1
  72. package/package.json +2 -2
  73. package/src/locales/en-US.json +22 -2
  74. package/src/locales/ja-JP.json +12 -1
  75. package/src/locales/th-TH.json +12 -1
  76. package/src/locales/zh-CN.json +22 -2
  77. package/src/modules/display-system/interface.spec.ts +32 -18
  78. package/src/modules/display-system/interface.ts +32 -0
  79. package/src/modules/order-setting/kiosk/coverCarousel.spec.ts +172 -0
  80. package/src/modules/order-setting/kiosk/coverCarousel.ts +186 -0
  81. package/src/modules/order-setting/kiosk/interface.ts +138 -127
  82. package/src/stores/order-setting/mapper.spec.ts +26 -0
  83. package/src/stores/order-setting/mapper.ts +305 -293
  84. package/src/views/display-system/DisplayFieldControl.vue +46 -0
  85. package/src/views/display-system/DisplayInspector.vue +8 -3
  86. package/src/views/display-system/DisplaySystemView.vue +7 -3
  87. package/src/views/display-system/DisplayTemplateEditor.vue +28 -2
  88. package/src/views/kiosk/settings/KioskSettingView.vue +176 -60
  89. package/src/views/order-settings/auto-send-kitchen.spec.ts +137 -0
  90. package/src/views/order-settings/auto-send-kitchen.ts +92 -0
  91. package/src/views/order-settings/auto-send-resolve.spec.ts +123 -0
  92. package/src/views/order-settings/delivery/DeliverySetting.vue +10 -0
  93. package/src/views/order-settings/delivery/inhouse/InHouseDelivery.vue +40 -5
  94. package/src/views/order-settings/dine-in/DineInSetting.vue +38 -5
  95. package/src/views/order-settings/pickup/PickUpSetting.vue +1 -0
  96. package/src/views/order-settings/pickup/PickUpSettingDialogContent.vue +38 -5
  97. package/src/views/order-settings/queue/QueueSetting.vue +6 -9
  98. package/src/views/order-settings/useAutoSendGuard.ts +142 -0
  99. package/tsconfig.app.json +10 -1
  100. package/dist/DisplaySystemView-4Bz8p26A.js +0 -5892
  101. package/dist/KioskSettingView-D57KtQ-t.js +0 -711
  102. package/dist/display-preview/assets/BandBoard-BrDTYDc9.js +0 -1
  103. package/dist/display-preview/assets/CarouselBlock-CrkGxoGk.js +0 -1
  104. package/dist/display-preview/assets/ImageBlock-DtgfHd5G.js +0 -1
  105. package/dist/display-preview/assets/PickupMode-DKmqGlG8.js +0 -1
  106. package/dist/display-preview/assets/TextBlock-gAfeCCmE.js +0 -1
  107. package/dist/display-preview/assets/index-BB0ReVXy.js +0 -2
  108. package/dist/display-preview/assets/index-BWVpFSIw.css +0 -1
  109. package/dist/display-preview/assets/pickupView-C-BGcOu8.js +0 -1
@@ -1455,6 +1455,7 @@ export declare const RestaurantCustomerV2Dto: z.ZodObject<{
1455
1455
  autoSendKitchen: z.ZodNullable<z.ZodOptional<z.ZodBoolean>>;
1456
1456
  enableQueueToTabletTransfer: z.ZodNullable<z.ZodOptional<z.ZodBoolean>>;
1457
1457
  }, "strip", z.ZodTypeAny, {
1458
+ autoSendKitchen?: boolean | null | undefined;
1458
1459
  showWaitEstimate?: boolean | null | undefined;
1459
1460
  codeSettings?: {
1460
1461
  id?: string | null | undefined;
@@ -1477,13 +1478,13 @@ export declare const RestaurantCustomerV2Dto: z.ZodObject<{
1477
1478
  disableRemoteQueue?: boolean | null | undefined;
1478
1479
  disableSMS?: boolean | null | undefined;
1479
1480
  printChecklist?: boolean | null | undefined;
1480
- autoSendKitchen?: boolean | null | undefined;
1481
1481
  enableQueueToTabletTransfer?: boolean | null | undefined;
1482
1482
  duration: number;
1483
1483
  enableOrder: boolean;
1484
1484
  autoCalledLimit: number;
1485
1485
  }, {
1486
1486
  duration?: number | undefined;
1487
+ autoSendKitchen?: boolean | null | undefined;
1487
1488
  showWaitEstimate?: boolean | null | undefined;
1488
1489
  codeSettings?: {
1489
1490
  id?: string | null | undefined;
@@ -1506,7 +1507,6 @@ export declare const RestaurantCustomerV2Dto: z.ZodObject<{
1506
1507
  disableRemoteQueue?: boolean | null | undefined;
1507
1508
  disableSMS?: boolean | null | undefined;
1508
1509
  printChecklist?: boolean | null | undefined;
1509
- autoSendKitchen?: boolean | null | undefined;
1510
1510
  enableQueueToTabletTransfer?: boolean | null | undefined;
1511
1511
  enableOrder: boolean;
1512
1512
  autoCalledLimit: number;
@@ -1834,6 +1834,7 @@ export declare const RestaurantCustomerV2Dto: z.ZodObject<{
1834
1834
  grabfoodDelivery?: any;
1835
1835
  shopeefoodDelivery?: any;
1836
1836
  queueSetting?: {
1837
+ autoSendKitchen?: boolean | null | undefined;
1837
1838
  showWaitEstimate?: boolean | null | undefined;
1838
1839
  codeSettings?: {
1839
1840
  id?: string | null | undefined;
@@ -1856,7 +1857,6 @@ export declare const RestaurantCustomerV2Dto: z.ZodObject<{
1856
1857
  disableRemoteQueue?: boolean | null | undefined;
1857
1858
  disableSMS?: boolean | null | undefined;
1858
1859
  printChecklist?: boolean | null | undefined;
1859
- autoSendKitchen?: boolean | null | undefined;
1860
1860
  enableQueueToTabletTransfer?: boolean | null | undefined;
1861
1861
  duration: number;
1862
1862
  enableOrder: boolean;
@@ -2134,6 +2134,7 @@ export declare const RestaurantCustomerV2Dto: z.ZodObject<{
2134
2134
  shopeefoodDelivery?: any;
2135
2135
  queueSetting?: {
2136
2136
  duration?: number | undefined;
2137
+ autoSendKitchen?: boolean | null | undefined;
2137
2138
  showWaitEstimate?: boolean | null | undefined;
2138
2139
  codeSettings?: {
2139
2140
  id?: string | null | undefined;
@@ -2156,7 +2157,6 @@ export declare const RestaurantCustomerV2Dto: z.ZodObject<{
2156
2157
  disableRemoteQueue?: boolean | null | undefined;
2157
2158
  disableSMS?: boolean | null | undefined;
2158
2159
  printChecklist?: boolean | null | undefined;
2159
- autoSendKitchen?: boolean | null | undefined;
2160
2160
  enableQueueToTabletTransfer?: boolean | null | undefined;
2161
2161
  enableOrder: boolean;
2162
2162
  autoCalledLimit: number;
@@ -4412,7 +4412,21 @@ export declare const RestaurantCustomerKioskDto: z.ZodObject<{
4412
4412
  }>>>;
4413
4413
  coverImageLandscape: z.ZodNullable<z.ZodOptional<z.ZodString>>;
4414
4414
  coverImagePortrait: z.ZodNullable<z.ZodOptional<z.ZodString>>;
4415
+ coverCarousel: z.ZodNullable<z.ZodOptional<z.ZodObject<{
4416
+ landscape: z.ZodNullable<z.ZodOptional<z.ZodArray<z.ZodString, "many">>>;
4417
+ portrait: z.ZodNullable<z.ZodOptional<z.ZodArray<z.ZodString, "many">>>;
4418
+ intervalMs: z.ZodNullable<z.ZodOptional<z.ZodNumber>>;
4419
+ }, "strip", z.ZodTypeAny, {
4420
+ intervalMs?: number | null | undefined;
4421
+ landscape?: string[] | null | undefined;
4422
+ portrait?: string[] | null | undefined;
4423
+ }, {
4424
+ intervalMs?: number | null | undefined;
4425
+ landscape?: string[] | null | undefined;
4426
+ portrait?: string[] | null | undefined;
4427
+ }>>>;
4415
4428
  otaChannel: z.ZodNullable<z.ZodOptional<z.ZodString>>;
4429
+ autoSendKitchen: z.ZodNullable<z.ZodOptional<z.ZodBoolean>>;
4416
4430
  autoCloseBill: z.ZodNullable<z.ZodOptional<z.ZodBoolean>>;
4417
4431
  printReceiptAfterClose: z.ZodNullable<z.ZodOptional<z.ZodBoolean>>;
4418
4432
  languages: z.ZodNullable<z.ZodOptional<z.ZodArray<z.ZodString, "many">>>;
@@ -4444,6 +4458,7 @@ export declare const RestaurantCustomerKioskDto: z.ZodObject<{
4444
4458
  enablePaxDialog: boolean | null;
4445
4459
  } | null | undefined;
4446
4460
  } | null | undefined;
4461
+ autoSendKitchen?: boolean | null | undefined;
4447
4462
  canTakeaway?: boolean | null | undefined;
4448
4463
  takeaway?: {
4449
4464
  submitOrderInstruction?: {
@@ -4476,6 +4491,11 @@ export declare const RestaurantCustomerKioskDto: z.ZodObject<{
4476
4491
  } | null | undefined;
4477
4492
  coverImageLandscape?: string | null | undefined;
4478
4493
  coverImagePortrait?: string | null | undefined;
4494
+ coverCarousel?: {
4495
+ intervalMs?: number | null | undefined;
4496
+ landscape?: string[] | null | undefined;
4497
+ portrait?: string[] | null | undefined;
4498
+ } | null | undefined;
4479
4499
  otaChannel?: string | null | undefined;
4480
4500
  languages?: string[] | null | undefined;
4481
4501
  }, {
@@ -4506,6 +4526,7 @@ export declare const RestaurantCustomerKioskDto: z.ZodObject<{
4506
4526
  padDigit: number;
4507
4527
  } | null | undefined;
4508
4528
  } | null | undefined;
4529
+ autoSendKitchen?: boolean | null | undefined;
4509
4530
  canTakeaway?: boolean | null | undefined;
4510
4531
  takeaway?: {
4511
4532
  submitOrderInstruction?: {
@@ -4538,6 +4559,11 @@ export declare const RestaurantCustomerKioskDto: z.ZodObject<{
4538
4559
  } | null | undefined;
4539
4560
  coverImageLandscape?: string | null | undefined;
4540
4561
  coverImagePortrait?: string | null | undefined;
4562
+ coverCarousel?: {
4563
+ intervalMs?: number | null | undefined;
4564
+ landscape?: string[] | null | undefined;
4565
+ portrait?: string[] | null | undefined;
4566
+ } | null | undefined;
4541
4567
  otaChannel?: string | null | undefined;
4542
4568
  languages?: string[] | null | undefined;
4543
4569
  }>>>>;
@@ -4628,6 +4654,7 @@ export declare const RestaurantCustomerKioskDto: z.ZodObject<{
4628
4654
  autoSendKitchen: z.ZodNullable<z.ZodOptional<z.ZodBoolean>>;
4629
4655
  enableQueueToTabletTransfer: z.ZodNullable<z.ZodOptional<z.ZodBoolean>>;
4630
4656
  }, "strip", z.ZodTypeAny, {
4657
+ autoSendKitchen?: boolean | null | undefined;
4631
4658
  showWaitEstimate?: boolean | null | undefined;
4632
4659
  codeSettings?: {
4633
4660
  id?: string | null | undefined;
@@ -4650,13 +4677,13 @@ export declare const RestaurantCustomerKioskDto: z.ZodObject<{
4650
4677
  disableRemoteQueue?: boolean | null | undefined;
4651
4678
  disableSMS?: boolean | null | undefined;
4652
4679
  printChecklist?: boolean | null | undefined;
4653
- autoSendKitchen?: boolean | null | undefined;
4654
4680
  enableQueueToTabletTransfer?: boolean | null | undefined;
4655
4681
  duration: number;
4656
4682
  enableOrder: boolean;
4657
4683
  autoCalledLimit: number;
4658
4684
  }, {
4659
4685
  duration?: number | undefined;
4686
+ autoSendKitchen?: boolean | null | undefined;
4660
4687
  showWaitEstimate?: boolean | null | undefined;
4661
4688
  codeSettings?: {
4662
4689
  id?: string | null | undefined;
@@ -4679,7 +4706,6 @@ export declare const RestaurantCustomerKioskDto: z.ZodObject<{
4679
4706
  disableRemoteQueue?: boolean | null | undefined;
4680
4707
  disableSMS?: boolean | null | undefined;
4681
4708
  printChecklist?: boolean | null | undefined;
4682
- autoSendKitchen?: boolean | null | undefined;
4683
4709
  enableQueueToTabletTransfer?: boolean | null | undefined;
4684
4710
  enableOrder: boolean;
4685
4711
  autoCalledLimit: number;
@@ -5564,6 +5590,7 @@ export declare const RestaurantCustomerKioskDto: z.ZodObject<{
5564
5590
  enablePaxDialog: boolean | null;
5565
5591
  } | null | undefined;
5566
5592
  } | null | undefined;
5593
+ autoSendKitchen?: boolean | null | undefined;
5567
5594
  canTakeaway?: boolean | null | undefined;
5568
5595
  takeaway?: {
5569
5596
  submitOrderInstruction?: {
@@ -5596,10 +5623,16 @@ export declare const RestaurantCustomerKioskDto: z.ZodObject<{
5596
5623
  } | null | undefined;
5597
5624
  coverImageLandscape?: string | null | undefined;
5598
5625
  coverImagePortrait?: string | null | undefined;
5626
+ coverCarousel?: {
5627
+ intervalMs?: number | null | undefined;
5628
+ landscape?: string[] | null | undefined;
5629
+ portrait?: string[] | null | undefined;
5630
+ } | null | undefined;
5599
5631
  otaChannel?: string | null | undefined;
5600
5632
  languages?: string[] | null | undefined;
5601
5633
  } | null | undefined;
5602
5634
  queueSettings?: {
5635
+ autoSendKitchen?: boolean | null | undefined;
5603
5636
  showWaitEstimate?: boolean | null | undefined;
5604
5637
  codeSettings?: {
5605
5638
  id?: string | null | undefined;
@@ -5622,7 +5655,6 @@ export declare const RestaurantCustomerKioskDto: z.ZodObject<{
5622
5655
  disableRemoteQueue?: boolean | null | undefined;
5623
5656
  disableSMS?: boolean | null | undefined;
5624
5657
  printChecklist?: boolean | null | undefined;
5625
- autoSendKitchen?: boolean | null | undefined;
5626
5658
  enableQueueToTabletTransfer?: boolean | null | undefined;
5627
5659
  duration: number;
5628
5660
  enableOrder: boolean;
@@ -5910,6 +5942,7 @@ export declare const RestaurantCustomerKioskDto: z.ZodObject<{
5910
5942
  padDigit: number;
5911
5943
  } | null | undefined;
5912
5944
  } | null | undefined;
5945
+ autoSendKitchen?: boolean | null | undefined;
5913
5946
  canTakeaway?: boolean | null | undefined;
5914
5947
  takeaway?: {
5915
5948
  submitOrderInstruction?: {
@@ -5942,11 +5975,17 @@ export declare const RestaurantCustomerKioskDto: z.ZodObject<{
5942
5975
  } | null | undefined;
5943
5976
  coverImageLandscape?: string | null | undefined;
5944
5977
  coverImagePortrait?: string | null | undefined;
5978
+ coverCarousel?: {
5979
+ intervalMs?: number | null | undefined;
5980
+ landscape?: string[] | null | undefined;
5981
+ portrait?: string[] | null | undefined;
5982
+ } | null | undefined;
5945
5983
  otaChannel?: string | null | undefined;
5946
5984
  languages?: string[] | null | undefined;
5947
5985
  } | null | undefined;
5948
5986
  queueSettings?: {
5949
5987
  duration?: number | undefined;
5988
+ autoSendKitchen?: boolean | null | undefined;
5950
5989
  showWaitEstimate?: boolean | null | undefined;
5951
5990
  codeSettings?: {
5952
5991
  id?: string | null | undefined;
@@ -5969,7 +6008,6 @@ export declare const RestaurantCustomerKioskDto: z.ZodObject<{
5969
6008
  disableRemoteQueue?: boolean | null | undefined;
5970
6009
  disableSMS?: boolean | null | undefined;
5971
6010
  printChecklist?: boolean | null | undefined;
5972
- autoSendKitchen?: boolean | null | undefined;
5973
6011
  enableQueueToTabletTransfer?: boolean | null | undefined;
5974
6012
  enableOrder: boolean;
5975
6013
  autoCalledLimit: number;
@@ -490,7 +490,21 @@ export declare const WebSocketEventDto: z.ZodDiscriminatedUnion<"type", z.Primit
490
490
  }>>>;
491
491
  coverImageLandscape: z.ZodNullable<z.ZodOptional<z.ZodString>>;
492
492
  coverImagePortrait: z.ZodNullable<z.ZodOptional<z.ZodString>>;
493
+ coverCarousel: z.ZodNullable<z.ZodOptional<z.ZodObject<{
494
+ landscape: z.ZodNullable<z.ZodOptional<z.ZodArray<z.ZodString, "many">>>;
495
+ portrait: z.ZodNullable<z.ZodOptional<z.ZodArray<z.ZodString, "many">>>;
496
+ intervalMs: z.ZodNullable<z.ZodOptional<z.ZodNumber>>;
497
+ }, "strip", z.ZodTypeAny, {
498
+ intervalMs?: number | null | undefined;
499
+ landscape?: string[] | null | undefined;
500
+ portrait?: string[] | null | undefined;
501
+ }, {
502
+ intervalMs?: number | null | undefined;
503
+ landscape?: string[] | null | undefined;
504
+ portrait?: string[] | null | undefined;
505
+ }>>>;
493
506
  otaChannel: z.ZodNullable<z.ZodOptional<z.ZodString>>;
507
+ autoSendKitchen: z.ZodNullable<z.ZodOptional<z.ZodBoolean>>;
494
508
  autoCloseBill: z.ZodNullable<z.ZodOptional<z.ZodBoolean>>;
495
509
  printReceiptAfterClose: z.ZodNullable<z.ZodOptional<z.ZodBoolean>>;
496
510
  languages: z.ZodNullable<z.ZodOptional<z.ZodArray<z.ZodString, "many">>>;
@@ -522,6 +536,7 @@ export declare const WebSocketEventDto: z.ZodDiscriminatedUnion<"type", z.Primit
522
536
  enablePaxDialog: boolean | null;
523
537
  } | null | undefined;
524
538
  } | null | undefined;
539
+ autoSendKitchen?: boolean | null | undefined;
525
540
  canTakeaway?: boolean | null | undefined;
526
541
  takeaway?: {
527
542
  submitOrderInstruction?: {
@@ -554,6 +569,11 @@ export declare const WebSocketEventDto: z.ZodDiscriminatedUnion<"type", z.Primit
554
569
  } | null | undefined;
555
570
  coverImageLandscape?: string | null | undefined;
556
571
  coverImagePortrait?: string | null | undefined;
572
+ coverCarousel?: {
573
+ intervalMs?: number | null | undefined;
574
+ landscape?: string[] | null | undefined;
575
+ portrait?: string[] | null | undefined;
576
+ } | null | undefined;
557
577
  otaChannel?: string | null | undefined;
558
578
  languages?: string[] | null | undefined;
559
579
  }, {
@@ -584,6 +604,7 @@ export declare const WebSocketEventDto: z.ZodDiscriminatedUnion<"type", z.Primit
584
604
  padDigit: number;
585
605
  } | null | undefined;
586
606
  } | null | undefined;
607
+ autoSendKitchen?: boolean | null | undefined;
587
608
  canTakeaway?: boolean | null | undefined;
588
609
  takeaway?: {
589
610
  submitOrderInstruction?: {
@@ -616,6 +637,11 @@ export declare const WebSocketEventDto: z.ZodDiscriminatedUnion<"type", z.Primit
616
637
  } | null | undefined;
617
638
  coverImageLandscape?: string | null | undefined;
618
639
  coverImagePortrait?: string | null | undefined;
640
+ coverCarousel?: {
641
+ intervalMs?: number | null | undefined;
642
+ landscape?: string[] | null | undefined;
643
+ portrait?: string[] | null | undefined;
644
+ } | null | undefined;
619
645
  otaChannel?: string | null | undefined;
620
646
  languages?: string[] | null | undefined;
621
647
  }>>;
@@ -648,6 +674,7 @@ export declare const WebSocketEventDto: z.ZodDiscriminatedUnion<"type", z.Primit
648
674
  enablePaxDialog: boolean | null;
649
675
  } | null | undefined;
650
676
  } | null | undefined;
677
+ autoSendKitchen?: boolean | null | undefined;
651
678
  canTakeaway?: boolean | null | undefined;
652
679
  takeaway?: {
653
680
  submitOrderInstruction?: {
@@ -680,6 +707,11 @@ export declare const WebSocketEventDto: z.ZodDiscriminatedUnion<"type", z.Primit
680
707
  } | null | undefined;
681
708
  coverImageLandscape?: string | null | undefined;
682
709
  coverImagePortrait?: string | null | undefined;
710
+ coverCarousel?: {
711
+ intervalMs?: number | null | undefined;
712
+ landscape?: string[] | null | undefined;
713
+ portrait?: string[] | null | undefined;
714
+ } | null | undefined;
683
715
  otaChannel?: string | null | undefined;
684
716
  languages?: string[] | null | undefined;
685
717
  };
@@ -713,6 +745,7 @@ export declare const WebSocketEventDto: z.ZodDiscriminatedUnion<"type", z.Primit
713
745
  padDigit: number;
714
746
  } | null | undefined;
715
747
  } | null | undefined;
748
+ autoSendKitchen?: boolean | null | undefined;
716
749
  canTakeaway?: boolean | null | undefined;
717
750
  takeaway?: {
718
751
  submitOrderInstruction?: {
@@ -745,6 +778,11 @@ export declare const WebSocketEventDto: z.ZodDiscriminatedUnion<"type", z.Primit
745
778
  } | null | undefined;
746
779
  coverImageLandscape?: string | null | undefined;
747
780
  coverImagePortrait?: string | null | undefined;
781
+ coverCarousel?: {
782
+ intervalMs?: number | null | undefined;
783
+ landscape?: string[] | null | undefined;
784
+ portrait?: string[] | null | undefined;
785
+ } | null | undefined;
748
786
  otaChannel?: string | null | undefined;
749
787
  languages?: string[] | null | undefined;
750
788
  } | undefined;
@@ -1206,7 +1244,21 @@ export declare const WebSocketReqDto: z.ZodObject<{
1206
1244
  }>>>;
1207
1245
  coverImageLandscape: z.ZodNullable<z.ZodOptional<z.ZodString>>;
1208
1246
  coverImagePortrait: z.ZodNullable<z.ZodOptional<z.ZodString>>;
1247
+ coverCarousel: z.ZodNullable<z.ZodOptional<z.ZodObject<{
1248
+ landscape: z.ZodNullable<z.ZodOptional<z.ZodArray<z.ZodString, "many">>>;
1249
+ portrait: z.ZodNullable<z.ZodOptional<z.ZodArray<z.ZodString, "many">>>;
1250
+ intervalMs: z.ZodNullable<z.ZodOptional<z.ZodNumber>>;
1251
+ }, "strip", z.ZodTypeAny, {
1252
+ intervalMs?: number | null | undefined;
1253
+ landscape?: string[] | null | undefined;
1254
+ portrait?: string[] | null | undefined;
1255
+ }, {
1256
+ intervalMs?: number | null | undefined;
1257
+ landscape?: string[] | null | undefined;
1258
+ portrait?: string[] | null | undefined;
1259
+ }>>>;
1209
1260
  otaChannel: z.ZodNullable<z.ZodOptional<z.ZodString>>;
1261
+ autoSendKitchen: z.ZodNullable<z.ZodOptional<z.ZodBoolean>>;
1210
1262
  autoCloseBill: z.ZodNullable<z.ZodOptional<z.ZodBoolean>>;
1211
1263
  printReceiptAfterClose: z.ZodNullable<z.ZodOptional<z.ZodBoolean>>;
1212
1264
  languages: z.ZodNullable<z.ZodOptional<z.ZodArray<z.ZodString, "many">>>;
@@ -1238,6 +1290,7 @@ export declare const WebSocketReqDto: z.ZodObject<{
1238
1290
  enablePaxDialog: boolean | null;
1239
1291
  } | null | undefined;
1240
1292
  } | null | undefined;
1293
+ autoSendKitchen?: boolean | null | undefined;
1241
1294
  canTakeaway?: boolean | null | undefined;
1242
1295
  takeaway?: {
1243
1296
  submitOrderInstruction?: {
@@ -1270,6 +1323,11 @@ export declare const WebSocketReqDto: z.ZodObject<{
1270
1323
  } | null | undefined;
1271
1324
  coverImageLandscape?: string | null | undefined;
1272
1325
  coverImagePortrait?: string | null | undefined;
1326
+ coverCarousel?: {
1327
+ intervalMs?: number | null | undefined;
1328
+ landscape?: string[] | null | undefined;
1329
+ portrait?: string[] | null | undefined;
1330
+ } | null | undefined;
1273
1331
  otaChannel?: string | null | undefined;
1274
1332
  languages?: string[] | null | undefined;
1275
1333
  }, {
@@ -1300,6 +1358,7 @@ export declare const WebSocketReqDto: z.ZodObject<{
1300
1358
  padDigit: number;
1301
1359
  } | null | undefined;
1302
1360
  } | null | undefined;
1361
+ autoSendKitchen?: boolean | null | undefined;
1303
1362
  canTakeaway?: boolean | null | undefined;
1304
1363
  takeaway?: {
1305
1364
  submitOrderInstruction?: {
@@ -1332,6 +1391,11 @@ export declare const WebSocketReqDto: z.ZodObject<{
1332
1391
  } | null | undefined;
1333
1392
  coverImageLandscape?: string | null | undefined;
1334
1393
  coverImagePortrait?: string | null | undefined;
1394
+ coverCarousel?: {
1395
+ intervalMs?: number | null | undefined;
1396
+ landscape?: string[] | null | undefined;
1397
+ portrait?: string[] | null | undefined;
1398
+ } | null | undefined;
1335
1399
  otaChannel?: string | null | undefined;
1336
1400
  languages?: string[] | null | undefined;
1337
1401
  }>>;
@@ -1364,6 +1428,7 @@ export declare const WebSocketReqDto: z.ZodObject<{
1364
1428
  enablePaxDialog: boolean | null;
1365
1429
  } | null | undefined;
1366
1430
  } | null | undefined;
1431
+ autoSendKitchen?: boolean | null | undefined;
1367
1432
  canTakeaway?: boolean | null | undefined;
1368
1433
  takeaway?: {
1369
1434
  submitOrderInstruction?: {
@@ -1396,6 +1461,11 @@ export declare const WebSocketReqDto: z.ZodObject<{
1396
1461
  } | null | undefined;
1397
1462
  coverImageLandscape?: string | null | undefined;
1398
1463
  coverImagePortrait?: string | null | undefined;
1464
+ coverCarousel?: {
1465
+ intervalMs?: number | null | undefined;
1466
+ landscape?: string[] | null | undefined;
1467
+ portrait?: string[] | null | undefined;
1468
+ } | null | undefined;
1399
1469
  otaChannel?: string | null | undefined;
1400
1470
  languages?: string[] | null | undefined;
1401
1471
  };
@@ -1429,6 +1499,7 @@ export declare const WebSocketReqDto: z.ZodObject<{
1429
1499
  padDigit: number;
1430
1500
  } | null | undefined;
1431
1501
  } | null | undefined;
1502
+ autoSendKitchen?: boolean | null | undefined;
1432
1503
  canTakeaway?: boolean | null | undefined;
1433
1504
  takeaway?: {
1434
1505
  submitOrderInstruction?: {
@@ -1461,6 +1532,11 @@ export declare const WebSocketReqDto: z.ZodObject<{
1461
1532
  } | null | undefined;
1462
1533
  coverImageLandscape?: string | null | undefined;
1463
1534
  coverImagePortrait?: string | null | undefined;
1535
+ coverCarousel?: {
1536
+ intervalMs?: number | null | undefined;
1537
+ landscape?: string[] | null | undefined;
1538
+ portrait?: string[] | null | undefined;
1539
+ } | null | undefined;
1464
1540
  otaChannel?: string | null | undefined;
1465
1541
  languages?: string[] | null | undefined;
1466
1542
  } | undefined;
@@ -1542,6 +1618,7 @@ export declare const WebSocketReqDto: z.ZodObject<{
1542
1618
  enablePaxDialog: boolean | null;
1543
1619
  } | null | undefined;
1544
1620
  } | null | undefined;
1621
+ autoSendKitchen?: boolean | null | undefined;
1545
1622
  canTakeaway?: boolean | null | undefined;
1546
1623
  takeaway?: {
1547
1624
  submitOrderInstruction?: {
@@ -1574,6 +1651,11 @@ export declare const WebSocketReqDto: z.ZodObject<{
1574
1651
  } | null | undefined;
1575
1652
  coverImageLandscape?: string | null | undefined;
1576
1653
  coverImagePortrait?: string | null | undefined;
1654
+ coverCarousel?: {
1655
+ intervalMs?: number | null | undefined;
1656
+ landscape?: string[] | null | undefined;
1657
+ portrait?: string[] | null | undefined;
1658
+ } | null | undefined;
1577
1659
  otaChannel?: string | null | undefined;
1578
1660
  languages?: string[] | null | undefined;
1579
1661
  };
@@ -1656,6 +1738,7 @@ export declare const WebSocketReqDto: z.ZodObject<{
1656
1738
  padDigit: number;
1657
1739
  } | null | undefined;
1658
1740
  } | null | undefined;
1741
+ autoSendKitchen?: boolean | null | undefined;
1659
1742
  canTakeaway?: boolean | null | undefined;
1660
1743
  takeaway?: {
1661
1744
  submitOrderInstruction?: {
@@ -1688,6 +1771,11 @@ export declare const WebSocketReqDto: z.ZodObject<{
1688
1771
  } | null | undefined;
1689
1772
  coverImageLandscape?: string | null | undefined;
1690
1773
  coverImagePortrait?: string | null | undefined;
1774
+ coverCarousel?: {
1775
+ intervalMs?: number | null | undefined;
1776
+ landscape?: string[] | null | undefined;
1777
+ portrait?: string[] | null | undefined;
1778
+ } | null | undefined;
1691
1779
  otaChannel?: string | null | undefined;
1692
1780
  languages?: string[] | null | undefined;
1693
1781
  } | undefined;
package/dist/style.css CHANGED
@@ -1 +1 @@
1
- .integration-details[data-v-b07038c5]{display:flex;flex-direction:column;gap:.625rem;padding:1rem;margin-top:1rem;border:1px solid #e5e7eb;border-radius:.5rem}.integration-details--owned[data-v-b07038c5]{border-color:var(--fm-color-primary-oats);box-shadow:inset .25rem 0 0 var(--fm-color-primary)}.integration-details__header[data-v-b07038c5]{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:.5rem}.integration-details__title[data-v-b07038c5]{display:flex;align-items:center;gap:.375rem}.integration-details__store-label[data-v-b07038c5]{padding:.25rem .625rem;color:var(--fm-color-primary);background:var(--fm-color-primary-oats);border-radius:999px}.integration-details__row[data-v-b07038c5]{display:grid;grid-template-columns:10rem minmax(0,1fr);align-items:center;gap:1rem}.integration-details__value[data-v-b07038c5]{display:flex;min-width:0;align-items:center;gap:.5rem}code[data-v-b07038c5]{min-width:0;overflow-wrap:anywhere}@media (max-width: 460px){.integration-details__row[data-v-b07038c5]{grid-template-columns:1fr;gap:.25rem}.integration-details__header[data-v-b07038c5]{align-items:flex-start}}.store-section[data-v-64f1ea7c]{border-top:1px solid #e5e7eb;padding-top:1.5rem}.store-card[data-v-64f1ea7c]{padding:1.25rem;margin-bottom:1rem}.store-card__top[data-v-64f1ea7c]{display:flex;align-items:flex-start;justify-content:space-between;gap:1rem;margin-bottom:1rem}.store-card__title[data-v-64f1ea7c]{min-width:0;word-break:break-all}.store-card__actions[data-v-64f1ea7c]{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:.5rem;flex-shrink:0}.store-card__fields[data-v-64f1ea7c]{display:flex;flex-direction:column;gap:.625rem}.store-field[data-v-64f1ea7c]{display:grid;grid-template-columns:9rem minmax(0,1fr);gap:1rem}.store-field>span[data-v-64f1ea7c]:first-child{color:var(--fm-color-neutral-gray-400)}.store-field>span[data-v-64f1ea7c]:last-child{word-break:break-word}.store-sheet-body[data-v-64f1ea7c]{display:flex;flex-direction:column;gap:1rem;padding-top:.5rem}@media (max-width: 460px){.store-field[data-v-64f1ea7c]{grid-template-columns:1fr}}.store-section[data-v-fe141f25]{border-top:1px solid #e5e7eb;padding-top:1.5rem}.store-card[data-v-fe141f25]{padding:1.25rem;margin-bottom:1rem}.store-card__top[data-v-fe141f25]{display:flex;align-items:flex-start;justify-content:space-between;gap:1rem;margin-bottom:1.25rem}.store-card__title[data-v-fe141f25]{min-width:0;word-break:break-all}.store-card__actions[data-v-fe141f25]{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:.5rem;flex-shrink:0}.store-card__fields[data-v-fe141f25]{display:flex;flex-direction:column;gap:.625rem}.store-field[data-v-fe141f25]{display:grid;grid-template-columns:9rem minmax(0,1fr);align-items:start;-moz-column-gap:1rem;column-gap:1rem;row-gap:.125rem}.store-field>span[data-v-fe141f25]:last-child{word-break:break-word}.store-sheet-body[data-v-fe141f25]{display:flex;flex-direction:column;gap:1rem;padding-top:.5rem}.store-sheet-activate[data-v-fe141f25]{padding-top:1.25rem;border-top:1px solid #e5e7eb}.store-sheet-activate__hint[data-v-fe141f25]{margin-top:.5rem}@media (max-width: 460px){.store-field[data-v-fe141f25]{grid-template-columns:1fr}}.store-section[data-v-b94bbdb0]{border-top:1px solid #e5e7eb;padding-top:1.5rem}.store-card[data-v-b94bbdb0]{padding:1.25rem;margin-bottom:1rem}.store-card__top[data-v-b94bbdb0]{display:flex;align-items:flex-start;justify-content:space-between;gap:1rem;margin-bottom:1rem}.store-card__title[data-v-b94bbdb0]{min-width:0;word-break:break-all}.store-card__actions[data-v-b94bbdb0]{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:.5rem;flex-shrink:0}.store-card__fields[data-v-b94bbdb0]{display:flex;flex-direction:column;gap:.625rem}.store-field[data-v-b94bbdb0]{display:grid;grid-template-columns:9rem minmax(0,1fr);gap:1rem}.store-field>span[data-v-b94bbdb0]:first-child{color:var(--fm-color-neutral-gray-400)}.store-field>span[data-v-b94bbdb0]:last-child{word-break:break-word}.store-sheet-body[data-v-b94bbdb0]{display:flex;flex-direction:column;gap:1rem;padding-top:.5rem}@media (max-width: 460px){.store-field[data-v-b94bbdb0]{grid-template-columns:1fr}}[data-v-91393c58] .fm-checkbox--wrapper:has(input:disabled){pointer-events:none}[data-v-a959025e] .flex.flex-col.gap-8>:first-child,[data-v-a959025e] .flex.flex-col.gap-8>:last-child{display:none}.toggle[data-v-5266c20e]{position:relative;flex-shrink:0;width:52px;height:32px;padding:0;border:none;border-radius:9999px;background:var(--fm-color-neutral-gray-200);cursor:pointer;transition:background-color .2s ease-out}.toggle[data-v-5266c20e]:focus{outline:none}.toggle[data-v-5266c20e]:focus-visible{box-shadow:0 0 0 3px color-mix(in srgb,var(--fm-color-primary) 40%,transparent)}.toggle--on[data-v-5266c20e]{background:var(--fm-color-primary)}.toggle__thumb[data-v-5266c20e]{position:absolute;top:50%;left:8px;width:18px;height:18px;border-radius:9999px;background:#fff;box-shadow:0 1px 2px #0003;transform:translateY(-50%);transition:all .2s ease-out}.toggle--on .toggle__thumb[data-v-5266c20e]{left:24px;width:24px;height:24px}.toggle:active .toggle__thumb[data-v-5266c20e]{transform:translateY(-50%) scale(1.1)}.delivery-company-filter-toolbar[data-v-2163c2e8]{display:flex;flex-direction:row;justify-content:space-between}@media (max-width: 647px){.delivery-company-filter-toolbar[data-v-2163c2e8]{flex-direction:column;flex-wrap:wrap}}.preview-frame[data-v-bd8d2976]{position:relative;width:100%;overflow:hidden;border:1px solid #d1d5db;border-radius:12px;aspect-ratio:16 / 9;background:#111827;box-shadow:0 16px 40px #0f172a1f}.preview-iframe[data-v-bd8d2976]{display:block;width:100%;height:100%;border:0;background:#f3f4f6}.preview-status[data-v-bd8d2976]{position:absolute;top:0;right:0;bottom:0;left:0;display:grid;place-content:center;gap:12px;background:#f9fafbf0;color:#4b5563;text-align:center;font-size:13px}.preview-status p[data-v-bd8d2976]{margin:0}.preview-status[data-v-bd8d2976] button{justify-self:center}.preview-loading[data-v-bd8d2976]{display:grid;justify-items:center;gap:10px}.preview-loading span[data-v-bd8d2976]{width:24px;height:24px;border:3px solid #fed7aa;border-top-color:#ef661f;border-radius:50%;animation:preview-spin-bd8d2976 .8s linear infinite}@keyframes preview-spin-bd8d2976{to{transform:rotate(360deg)}}.canvas[data-v-18083337]{display:flex;min-height:0;flex:1;border-radius:12px;background:#f3f4f6;padding:8px}.canvas-row[data-v-18083337]{flex-direction:row}.canvas-column[data-v-18083337]{flex-direction:column}.canvas-group[data-v-18083337]{display:flex;min-width:0;min-height:0;gap:0}.canvas-area[data-v-18083337]{display:flex;min-width:0;min-height:78px;flex-direction:column;gap:8px;overflow:hidden;border:1.5px dashed #d1d5db;border-radius:10px;padding:10px;background:#fff;text-align:left}.canvas-area-nested[data-v-18083337]{min-height:62px}.canvas-area[data-v-18083337]:hover{border-color:#fdba74}.canvas-area-active[data-v-18083337]{border-style:solid;border-color:#f97316;background:#fffbf5;box-shadow:0 0 0 3px #f973161f}.canvas-area-context[data-v-18083337]{border-style:solid;border-color:#fed7aa;background:#fffdfa}.canvas-area-droppable[data-v-18083337]{border-color:#f97316;background:#fff7ed}.canvas-area-drop-over[data-v-18083337]{border-style:solid;box-shadow:0 0 0 3px #f9731633}.canvas-area-head[data-v-18083337]{display:flex;align-items:center;gap:8px}.canvas-area-name[data-v-18083337]{color:#6b7280;font-size:10px;font-weight:700;letter-spacing:.06em;text-transform:uppercase}.canvas-area-share[data-v-18083337]{margin-left:auto;color:#374151;font-size:12px;font-variant-numeric:tabular-nums;font-weight:700}.canvas-area-action[data-v-18083337]{display:grid;flex:0 0 auto;place-items:center;border-radius:6px;padding:2px;color:#9ca3af}.canvas-area-action[data-v-18083337]:hover{background:#fff7ed;color:#f97316}.canvas-chips[data-v-18083337]{display:flex;min-height:0;flex:1;flex-direction:column;gap:4px}.canvas-chip[data-v-18083337]{display:flex;align-items:center;gap:6px;border:1px solid #e5e7eb;border-radius:8px;padding:6px 8px;background:#fff;color:#374151;font-size:12px;text-align:left;cursor:grab}.canvas-chip[data-v-18083337]:hover{border-color:#fdba74}.canvas-chip-active[data-v-18083337]{border-color:#f97316;background:#fff;box-shadow:inset 4px 0 #f97316,0 0 0 3px #f973161f;font-weight:600}.canvas-chip-active .canvas-chip-grip[data-v-18083337]{color:#f97316}.canvas-chip-context[data-v-18083337]{border-color:#fed7aa;background:#fffdfa}.canvas-chip[data-v-18083337]:active{cursor:grabbing}.canvas-chip-grip[data-v-18083337]{flex:0 0 auto;color:#9ca3af}.canvas-chip-label[data-v-18083337]{min-width:0;flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.canvas-area-empty[data-v-18083337]{display:grid;flex:1;place-items:center;border:1px dashed #d1d5db;border-radius:8px;color:#9ca3af;font-size:11px}.canvas-divider[data-v-18083337]{display:grid;flex:0 0 auto;place-items:center}.divider-vertical[data-v-18083337]{width:10px;cursor:col-resize}.divider-horizontal[data-v-18083337]{height:10px;cursor:row-resize}.canvas-divider-grip[data-v-18083337]{border-radius:999px;background:#d1d5db}.divider-vertical .canvas-divider-grip[data-v-18083337]{height:34px;width:3px}.divider-horizontal .canvas-divider-grip[data-v-18083337]{height:3px;width:34px}.canvas-divider:hover .canvas-divider-grip[data-v-18083337]{background:#f97316}.palette[data-v-29c6bf88]{display:flex;flex-direction:column;gap:16px}.palette-head[data-v-29c6bf88]{display:flex;flex-direction:column;gap:4px}.palette-title[data-v-29c6bf88]{color:#111827;font-size:13px;font-weight:600}.palette-hint[data-v-29c6bf88]{color:#6b7280;font-size:11px;line-height:1.4}.palette-group[data-v-29c6bf88]{display:flex;flex-direction:column;gap:6px}.palette-group-label[data-v-29c6bf88]{color:#9ca3af;font-size:10px;font-weight:700;letter-spacing:.06em;text-transform:uppercase}.palette-card[data-v-29c6bf88]{display:flex;align-items:center;gap:8px;border:1px solid #e5e7eb;border-radius:8px;padding:8px 10px;background:#fff;color:#374151;font-size:13px;text-align:left;cursor:grab}.palette-card[data-v-29c6bf88]:hover:not(:disabled){border-color:#f97316;background:#fffbf5}.palette-card[data-v-29c6bf88]:disabled{cursor:not-allowed;opacity:.5}.palette-card[data-v-29c6bf88]:active{cursor:grabbing}.palette-icon[data-v-29c6bf88]{display:grid;height:24px;width:24px;flex:0 0 auto;place-items:center;border-radius:6px;background:#f3f4f6;color:#4b5563}.palette-label[data-v-29c6bf88]{min-width:0;flex:1;line-height:1.25;overflow-wrap:anywhere}.media-field[data-v-c9096024]{display:flex;flex-direction:column;gap:6px}.media-label[data-v-c9096024]{color:#4b5563;font-size:12px}.media-thumb[data-v-c9096024]{height:72px;width:100%;border-radius:8px;border:1px solid #e5e7eb;-o-object-fit:cover;object-fit:cover}.media-empty[data-v-c9096024]{display:grid;height:72px;place-items:center;border:1px dashed #d1d5db;border-radius:8px;color:#9ca3af;font-size:12px}.media-actions[data-v-c9096024]{display:flex;gap:6px}.inspector[data-v-368f2103]{display:flex;flex-direction:column;gap:14px}.inspector-scope[data-v-368f2103]{align-self:stretch}.inspector-breadcrumb[data-v-368f2103]{display:flex;align-items:center;gap:2px;color:#6b7280;font-size:11px}.inspector-section[data-v-368f2103]{display:flex;flex-direction:column;gap:10px;border-top:1px solid #e5e7eb;padding-top:12px}.inspector-section-title[data-v-368f2103]{color:#9ca3af;font-size:10px;font-weight:700;letter-spacing:.06em;text-transform:uppercase}.inspector-note[data-v-368f2103]{color:#6b7280;font-size:11px;line-height:1.45}.inspector-warning[data-v-368f2103]{display:flex;align-items:flex-start;gap:6px;border-radius:8px;background:#fffbeb;padding:8px 10px;color:#92400e;font-size:12px}.inspector-list[data-v-368f2103]{display:flex;flex-direction:column;gap:8px}.inspector-list-head[data-v-368f2103]{display:flex;align-items:baseline;gap:6px}.inspector-list-count[data-v-368f2103]{border-radius:999px;background:#f3f4f6;padding:0 6px;color:#6b7280;font-size:10px;font-variant-numeric:tabular-nums}.inspector-item[data-v-368f2103]{display:flex;flex-direction:column;gap:10px;border:1px solid #e5e7eb;border-radius:10px;padding:10px;background:#fcfcfd}.inspector-item-head[data-v-368f2103]{display:flex;align-items:center;gap:2px}.inspector-item-name[data-v-368f2103]{flex:1;color:#6b7280;font-size:10px;font-weight:700;letter-spacing:.06em;text-transform:uppercase}.inspector-item-action[data-v-368f2103]{display:grid;flex:0 0 auto;place-items:center;border-radius:6px;padding:2px;color:#9ca3af}.inspector-item-action[data-v-368f2103]:hover:not(:disabled){background:#fff7ed;color:#f97316}.inspector-item-action[data-v-368f2103]:disabled{opacity:.35}.inspector-list-add[data-v-368f2103]{display:flex;gap:6px}.media-field[data-v-368f2103]{display:flex;flex-direction:column;gap:6px}.media-label[data-v-368f2103]{color:#4b5563;font-size:12px}.media-thumb[data-v-368f2103]{height:72px;width:100%;border-radius:8px;border:1px solid #e5e7eb;-o-object-fit:cover;object-fit:cover}.media-empty[data-v-368f2103]{display:grid;height:72px;place-items:center;border:1px dashed #d1d5db;border-radius:8px;color:#9ca3af;font-size:12px}.media-actions[data-v-368f2103]{display:flex;gap:6px}.editor-head[data-v-4b8a4895]{display:flex;shrink:0;align-items:center;justify-content:space-between;gap:16px;border-bottom:1px solid #e5e7eb;padding:12px 20px}.editor-identity[data-v-4b8a4895]{display:flex;min-width:0;align-items:center;gap:10px}.editor-name[data-v-4b8a4895]{width:min(320px,40vw)}.editor-orientation[data-v-4b8a4895]{width:160px}.editor-error[data-v-4b8a4895]{flex-shrink:0;margin:12px 16px 0;border-radius:8px;background:#fef2f2;padding:8px 12px;color:#b91c1c;font-size:13px}.rail-scale[data-v-4b8a4895]{display:flex;flex-direction:column;gap:6px;margin-bottom:18px;border-bottom:1px solid #e5e7eb;padding-bottom:16px}.rail-scale-label[data-v-4b8a4895]{color:#4b5563;font-size:12px;font-weight:600}.rail-scale-hint[data-v-4b8a4895]{margin:0;color:#6b7280;font-size:11px;line-height:1.4}.rail-scale-warning[data-v-4b8a4895]{margin:0;border-radius:8px;padding:6px 8px;color:#9a3412;background:#fff7ed;font-size:11px;line-height:1.4}.editor-body[data-v-4b8a4895]{display:grid;min-height:0;flex:1;grid-template-columns:268px minmax(0,1fr) 320px}.editor-rail[data-v-4b8a4895],.editor-inspector[data-v-4b8a4895]{min-height:0;overflow:auto;padding:16px}.editor-rail[data-v-4b8a4895]{border-right:1px solid #e5e7eb;background:#f9fafb}.editor-inspector[data-v-4b8a4895]{border-left:1px solid #e5e7eb;background:#f9fafb}.editor-stage[data-v-4b8a4895]{display:flex;min-height:0;flex-direction:column;gap:12px;overflow:auto;padding:16px}.editor-stage-portrait[data-v-4b8a4895]{flex-direction:row;align-items:flex-start;gap:16px;height:100%}.editor-stage-portrait .stage-preview[data-v-4b8a4895]{min-height:0;flex:0 0 auto;align-self:stretch}.editor-stage-portrait .preview-portrait[data-v-4b8a4895]{height:100%;max-height:none}.editor-stage-portrait .stage-layout[data-v-4b8a4895]{min-width:0;flex:1}.editor-stage-portrait .layout-bar[data-v-4b8a4895]{flex-direction:column;align-items:stretch;gap:8px}.editor-stage-portrait .layout-actions[data-v-4b8a4895]{flex-wrap:wrap}.stage-preview[data-v-4b8a4895]{display:flex;flex-direction:column}.preview-frame[data-v-4b8a4895]{overflow:hidden;border:1px solid #e5e7eb;border-radius:12px;background:#101828;margin:0 auto}.preview-landscape[data-v-4b8a4895]{width:100%;max-height:52vh;aspect-ratio:16 / 9}.preview-portrait[data-v-4b8a4895]{height:52vh;max-width:100%;aspect-ratio:9 / 16}.preview-frame[data-v-4b8a4895]>*{width:100%;height:100%}.stage-layout[data-v-4b8a4895]{display:flex;min-height:0;flex:0 0 auto;flex-direction:column;gap:10px}.stage-layout[data-v-4b8a4895] .canvas-row{min-height:176px;max-height:260px}.stage-layout[data-v-4b8a4895] .canvas-column{min-height:calc(var(--area-count, 2) * 96px + 16px)}.layout-bar[data-v-4b8a4895]{display:flex;align-items:flex-start;justify-content:space-between;gap:16px}.layout-bar-title[data-v-4b8a4895]{display:flex;min-width:0;flex-direction:column;gap:2px}.layout-title[data-v-4b8a4895]{color:#111827;font-size:13px;font-weight:600}.layout-hint[data-v-4b8a4895]{color:#9ca3af;font-size:11px}.layout-actions[data-v-4b8a4895]{display:flex;flex-shrink:0;align-items:center;gap:6px}.layout-conflict[data-v-4b8a4895]{display:flex;align-items:flex-start;gap:6px;border-radius:8px;background:#fffbeb;padding:8px 10px;color:#92400e;font-size:12px;cursor:pointer}.preset-row[data-v-4b8a4895]{display:flex;flex-wrap:wrap;gap:8px;border-radius:10px;background:#f9fafb;padding:10px}.preset-card[data-v-4b8a4895]{display:flex;width:108px;flex-direction:column;gap:6px;border:1px solid #d1d5db;border-radius:10px;padding:8px;background:#fff;text-align:left}.preset-card[data-v-4b8a4895]:hover{border-color:#f97316;background:#fff7ed}.preset-diagram[data-v-4b8a4895]{display:flex;height:34px;gap:3px;border-radius:6px;background:#f3f4f6;padding:3px}.preset-row-dir[data-v-4b8a4895]{flex-direction:row}.preset-column-dir[data-v-4b8a4895]{flex-direction:column}.preset-cell[data-v-4b8a4895]{flex-basis:0;border-radius:4px;background:#fdba74}.preset-label[data-v-4b8a4895]{color:#374151;font-size:11px;line-height:1.3}@media (max-width: 1280px){.editor-body[data-v-4b8a4895]{grid-template-columns:220px minmax(0,1fr)}.editor-inspector[data-v-4b8a4895]{grid-column:1 / -1;border-left:0;border-top:1px solid #e5e7eb}}.layout-split[data-v-5595b416]{display:flex;min-width:0;min-height:0;flex:1;gap:6px}.layout-row[data-v-5595b416]{flex-direction:row}.layout-column[data-v-5595b416]{flex-direction:column}.layout-zone[data-v-5595b416]{display:flex;min-width:0;min-height:36px;flex:1;flex-direction:row;align-items:center;gap:8px;overflow:hidden;border:1.5px dashed #d1d5db;border-radius:10px;padding:6px 10px;background:#fff;text-align:left;transition:border-color .12s ease,background .12s ease}.layout-zone[data-v-5595b416]:hover{border-color:#fdba74;background:#fffbf5}.layout-zone-selected[data-v-5595b416]{border-style:solid;border-color:#f97316;background:#fff7ed;box-shadow:inset 0 0 0 1px #f97316}.layout-zone-index[data-v-5595b416]{flex:none;color:#6b7280;font-size:11px;font-weight:600;letter-spacing:.04em;text-transform:uppercase}.layout-zone-blocks[data-v-5595b416]{display:flex;min-width:0;gap:4px}.layout-zone-chip[data-v-5595b416]{display:inline-flex;max-width:100%;align-items:center;gap:4px;border-radius:999px;background:#f3f4f6;padding:3px 8px;color:#374151;font-size:11px}.display-toolbar[data-v-3254c130]{display:flex;align-items:center;justify-content:space-between;gap:16px;border-bottom:1px solid #e5e7eb;padding-bottom:14px}.display-controls[data-v-3254c130]{display:flex;align-items:center;justify-content:space-between;gap:16px;padding-top:12px}.display-restaurant-select[data-v-3254c130]{width:min(360px,100%)}.display-outlet[data-v-3254c130]{display:flex;align-items:center;gap:16px}.display-entitlement[data-v-3254c130]{color:#6b7280;font-size:12px;white-space:nowrap}.restriction-note[data-v-3254c130]{margin-top:12px;border:1px solid #fed7aa;border-radius:10px;padding:10px 12px;color:#9a3412;background:#fff7ed;font-size:13px}.empty-state[data-v-3254c130]{display:grid;justify-items:center;gap:6px;border:1px dashed #d1d5db;border-radius:12px;padding:56px 20px;color:#6b7280;text-align:center}.empty-state strong[data-v-3254c130]{color:#111827}.layout-thumb[data-v-3254c130]{display:flex;height:auto;min-height:96px;margin-top:16px;border-radius:10px;background:#f3f4f6;padding:5px;pointer-events:none}.thumb-caption[data-v-3254c130]{margin-top:8px;color:#6b7280;font-size:11px}.resource-card[data-v-3254c130]{border:1px solid #e5e7eb;border-radius:12px;padding:20px;background:#fff;box-shadow:0 2px 8px #0000000a}.mode-badge[data-v-3254c130],.status-badge[data-v-3254c130]{border-radius:999px;padding:3px 8px;background:#f3f4f6;font-size:11px;font-weight:700}.status-badge.active[data-v-3254c130]{color:#166534;background:#dcfce7}.status-badge.disabled[data-v-3254c130]{color:#991b1b;background:#fee2e2}.online-dot[data-v-3254c130]{color:#6b7280;font-size:11px}.online-dot[data-v-3254c130]:before{display:inline-block;width:7px;height:7px;margin-right:5px;border-radius:50%;background:#9ca3af;content:""}.online-dot.online[data-v-3254c130]{color:#15803d}.online-dot.online[data-v-3254c130]:before{background:#22c55e}.meta-grid[data-v-3254c130]{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-top:18px;border-top:1px solid #f0f0f0;padding-top:16px}.meta-grid dt[data-v-3254c130]{color:#6b7280;font-size:11px}.meta-grid dd[data-v-3254c130]{overflow:hidden;margin-top:2px;font-size:12px;text-overflow:ellipsis;white-space:nowrap}@media (max-width:640px){.display-toolbar[data-v-3254c130]{align-items:flex-start}.display-controls[data-v-3254c130]{align-items:stretch;flex-direction:column}.display-outlet[data-v-3254c130]{align-items:stretch;flex-direction:column;gap:8px}.display-restaurant-select[data-v-3254c130]{width:100%}}
1
+ .integration-details[data-v-b07038c5]{display:flex;flex-direction:column;gap:.625rem;padding:1rem;margin-top:1rem;border:1px solid #e5e7eb;border-radius:.5rem}.integration-details--owned[data-v-b07038c5]{border-color:var(--fm-color-primary-oats);box-shadow:inset .25rem 0 0 var(--fm-color-primary)}.integration-details__header[data-v-b07038c5]{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:.5rem}.integration-details__title[data-v-b07038c5]{display:flex;align-items:center;gap:.375rem}.integration-details__store-label[data-v-b07038c5]{padding:.25rem .625rem;color:var(--fm-color-primary);background:var(--fm-color-primary-oats);border-radius:999px}.integration-details__row[data-v-b07038c5]{display:grid;grid-template-columns:10rem minmax(0,1fr);align-items:center;gap:1rem}.integration-details__value[data-v-b07038c5]{display:flex;min-width:0;align-items:center;gap:.5rem}code[data-v-b07038c5]{min-width:0;overflow-wrap:anywhere}@media (max-width: 460px){.integration-details__row[data-v-b07038c5]{grid-template-columns:1fr;gap:.25rem}.integration-details__header[data-v-b07038c5]{align-items:flex-start}}.store-section[data-v-64f1ea7c]{border-top:1px solid #e5e7eb;padding-top:1.5rem}.store-card[data-v-64f1ea7c]{padding:1.25rem;margin-bottom:1rem}.store-card__top[data-v-64f1ea7c]{display:flex;align-items:flex-start;justify-content:space-between;gap:1rem;margin-bottom:1rem}.store-card__title[data-v-64f1ea7c]{min-width:0;word-break:break-all}.store-card__actions[data-v-64f1ea7c]{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:.5rem;flex-shrink:0}.store-card__fields[data-v-64f1ea7c]{display:flex;flex-direction:column;gap:.625rem}.store-field[data-v-64f1ea7c]{display:grid;grid-template-columns:9rem minmax(0,1fr);gap:1rem}.store-field>span[data-v-64f1ea7c]:first-child{color:var(--fm-color-neutral-gray-400)}.store-field>span[data-v-64f1ea7c]:last-child{word-break:break-word}.store-sheet-body[data-v-64f1ea7c]{display:flex;flex-direction:column;gap:1rem;padding-top:.5rem}@media (max-width: 460px){.store-field[data-v-64f1ea7c]{grid-template-columns:1fr}}.store-section[data-v-fe141f25]{border-top:1px solid #e5e7eb;padding-top:1.5rem}.store-card[data-v-fe141f25]{padding:1.25rem;margin-bottom:1rem}.store-card__top[data-v-fe141f25]{display:flex;align-items:flex-start;justify-content:space-between;gap:1rem;margin-bottom:1.25rem}.store-card__title[data-v-fe141f25]{min-width:0;word-break:break-all}.store-card__actions[data-v-fe141f25]{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:.5rem;flex-shrink:0}.store-card__fields[data-v-fe141f25]{display:flex;flex-direction:column;gap:.625rem}.store-field[data-v-fe141f25]{display:grid;grid-template-columns:9rem minmax(0,1fr);align-items:start;-moz-column-gap:1rem;column-gap:1rem;row-gap:.125rem}.store-field>span[data-v-fe141f25]:last-child{word-break:break-word}.store-sheet-body[data-v-fe141f25]{display:flex;flex-direction:column;gap:1rem;padding-top:.5rem}.store-sheet-activate[data-v-fe141f25]{padding-top:1.25rem;border-top:1px solid #e5e7eb}.store-sheet-activate__hint[data-v-fe141f25]{margin-top:.5rem}@media (max-width: 460px){.store-field[data-v-fe141f25]{grid-template-columns:1fr}}.store-section[data-v-b94bbdb0]{border-top:1px solid #e5e7eb;padding-top:1.5rem}.store-card[data-v-b94bbdb0]{padding:1.25rem;margin-bottom:1rem}.store-card__top[data-v-b94bbdb0]{display:flex;align-items:flex-start;justify-content:space-between;gap:1rem;margin-bottom:1rem}.store-card__title[data-v-b94bbdb0]{min-width:0;word-break:break-all}.store-card__actions[data-v-b94bbdb0]{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:.5rem;flex-shrink:0}.store-card__fields[data-v-b94bbdb0]{display:flex;flex-direction:column;gap:.625rem}.store-field[data-v-b94bbdb0]{display:grid;grid-template-columns:9rem minmax(0,1fr);gap:1rem}.store-field>span[data-v-b94bbdb0]:first-child{color:var(--fm-color-neutral-gray-400)}.store-field>span[data-v-b94bbdb0]:last-child{word-break:break-word}.store-sheet-body[data-v-b94bbdb0]{display:flex;flex-direction:column;gap:1rem;padding-top:.5rem}@media (max-width: 460px){.store-field[data-v-b94bbdb0]{grid-template-columns:1fr}}[data-v-91393c58] .fm-checkbox--wrapper:has(input:disabled){pointer-events:none}[data-v-a959025e] .flex.flex-col.gap-8>:first-child,[data-v-a959025e] .flex.flex-col.gap-8>:last-child{display:none}.toggle[data-v-5266c20e]{position:relative;flex-shrink:0;width:52px;height:32px;padding:0;border:none;border-radius:9999px;background:var(--fm-color-neutral-gray-200);cursor:pointer;transition:background-color .2s ease-out}.toggle[data-v-5266c20e]:focus{outline:none}.toggle[data-v-5266c20e]:focus-visible{box-shadow:0 0 0 3px color-mix(in srgb,var(--fm-color-primary) 40%,transparent)}.toggle--on[data-v-5266c20e]{background:var(--fm-color-primary)}.toggle__thumb[data-v-5266c20e]{position:absolute;top:50%;left:8px;width:18px;height:18px;border-radius:9999px;background:#fff;box-shadow:0 1px 2px #0003;transform:translateY(-50%);transition:all .2s ease-out}.toggle--on .toggle__thumb[data-v-5266c20e]{left:24px;width:24px;height:24px}.toggle:active .toggle__thumb[data-v-5266c20e]{transform:translateY(-50%) scale(1.1)}.delivery-company-filter-toolbar[data-v-9e568f8a]{display:flex;flex-direction:row;justify-content:space-between}@media (max-width: 647px){.delivery-company-filter-toolbar[data-v-9e568f8a]{flex-direction:column;flex-wrap:wrap}}.preview-frame[data-v-bd8d2976]{position:relative;width:100%;overflow:hidden;border:1px solid #d1d5db;border-radius:12px;aspect-ratio:16 / 9;background:#111827;box-shadow:0 16px 40px #0f172a1f}.preview-iframe[data-v-bd8d2976]{display:block;width:100%;height:100%;border:0;background:#f3f4f6}.preview-status[data-v-bd8d2976]{position:absolute;top:0;right:0;bottom:0;left:0;display:grid;place-content:center;gap:12px;background:#f9fafbf0;color:#4b5563;text-align:center;font-size:13px}.preview-status p[data-v-bd8d2976]{margin:0}.preview-status[data-v-bd8d2976] button{justify-self:center}.preview-loading[data-v-bd8d2976]{display:grid;justify-items:center;gap:10px}.preview-loading span[data-v-bd8d2976]{width:24px;height:24px;border:3px solid #fed7aa;border-top-color:#ef661f;border-radius:50%;animation:preview-spin-bd8d2976 .8s linear infinite}@keyframes preview-spin-bd8d2976{to{transform:rotate(360deg)}}.canvas[data-v-18083337]{display:flex;min-height:0;flex:1;border-radius:12px;background:#f3f4f6;padding:8px}.canvas-row[data-v-18083337]{flex-direction:row}.canvas-column[data-v-18083337]{flex-direction:column}.canvas-group[data-v-18083337]{display:flex;min-width:0;min-height:0;gap:0}.canvas-area[data-v-18083337]{display:flex;min-width:0;min-height:78px;flex-direction:column;gap:8px;overflow:hidden;border:1.5px dashed #d1d5db;border-radius:10px;padding:10px;background:#fff;text-align:left}.canvas-area-nested[data-v-18083337]{min-height:62px}.canvas-area[data-v-18083337]:hover{border-color:#fdba74}.canvas-area-active[data-v-18083337]{border-style:solid;border-color:#f97316;background:#fffbf5;box-shadow:0 0 0 3px #f973161f}.canvas-area-context[data-v-18083337]{border-style:solid;border-color:#fed7aa;background:#fffdfa}.canvas-area-droppable[data-v-18083337]{border-color:#f97316;background:#fff7ed}.canvas-area-drop-over[data-v-18083337]{border-style:solid;box-shadow:0 0 0 3px #f9731633}.canvas-area-head[data-v-18083337]{display:flex;align-items:center;gap:8px}.canvas-area-name[data-v-18083337]{color:#6b7280;font-size:10px;font-weight:700;letter-spacing:.06em;text-transform:uppercase}.canvas-area-share[data-v-18083337]{margin-left:auto;color:#374151;font-size:12px;font-variant-numeric:tabular-nums;font-weight:700}.canvas-area-action[data-v-18083337]{display:grid;flex:0 0 auto;place-items:center;border-radius:6px;padding:2px;color:#9ca3af}.canvas-area-action[data-v-18083337]:hover{background:#fff7ed;color:#f97316}.canvas-chips[data-v-18083337]{display:flex;min-height:0;flex:1;flex-direction:column;gap:4px}.canvas-chip[data-v-18083337]{display:flex;align-items:center;gap:6px;border:1px solid #e5e7eb;border-radius:8px;padding:6px 8px;background:#fff;color:#374151;font-size:12px;text-align:left;cursor:grab}.canvas-chip[data-v-18083337]:hover{border-color:#fdba74}.canvas-chip-active[data-v-18083337]{border-color:#f97316;background:#fff;box-shadow:inset 4px 0 #f97316,0 0 0 3px #f973161f;font-weight:600}.canvas-chip-active .canvas-chip-grip[data-v-18083337]{color:#f97316}.canvas-chip-context[data-v-18083337]{border-color:#fed7aa;background:#fffdfa}.canvas-chip[data-v-18083337]:active{cursor:grabbing}.canvas-chip-grip[data-v-18083337]{flex:0 0 auto;color:#9ca3af}.canvas-chip-label[data-v-18083337]{min-width:0;flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.canvas-area-empty[data-v-18083337]{display:grid;flex:1;place-items:center;border:1px dashed #d1d5db;border-radius:8px;color:#9ca3af;font-size:11px}.canvas-divider[data-v-18083337]{display:grid;flex:0 0 auto;place-items:center}.divider-vertical[data-v-18083337]{width:10px;cursor:col-resize}.divider-horizontal[data-v-18083337]{height:10px;cursor:row-resize}.canvas-divider-grip[data-v-18083337]{border-radius:999px;background:#d1d5db}.divider-vertical .canvas-divider-grip[data-v-18083337]{height:34px;width:3px}.divider-horizontal .canvas-divider-grip[data-v-18083337]{height:3px;width:34px}.canvas-divider:hover .canvas-divider-grip[data-v-18083337]{background:#f97316}.palette[data-v-29c6bf88]{display:flex;flex-direction:column;gap:16px}.palette-head[data-v-29c6bf88]{display:flex;flex-direction:column;gap:4px}.palette-title[data-v-29c6bf88]{color:#111827;font-size:13px;font-weight:600}.palette-hint[data-v-29c6bf88]{color:#6b7280;font-size:11px;line-height:1.4}.palette-group[data-v-29c6bf88]{display:flex;flex-direction:column;gap:6px}.palette-group-label[data-v-29c6bf88]{color:#9ca3af;font-size:10px;font-weight:700;letter-spacing:.06em;text-transform:uppercase}.palette-card[data-v-29c6bf88]{display:flex;align-items:center;gap:8px;border:1px solid #e5e7eb;border-radius:8px;padding:8px 10px;background:#fff;color:#374151;font-size:13px;text-align:left;cursor:grab}.palette-card[data-v-29c6bf88]:hover:not(:disabled){border-color:#f97316;background:#fffbf5}.palette-card[data-v-29c6bf88]:disabled{cursor:not-allowed;opacity:.5}.palette-card[data-v-29c6bf88]:active{cursor:grabbing}.palette-icon[data-v-29c6bf88]{display:grid;height:24px;width:24px;flex:0 0 auto;place-items:center;border-radius:6px;background:#f3f4f6;color:#4b5563}.palette-label[data-v-29c6bf88]{min-width:0;flex:1;line-height:1.25;overflow-wrap:anywhere}.media-field[data-v-839ff846]{display:flex;flex-direction:column;gap:6px}.media-label[data-v-839ff846]{color:#4b5563;font-size:12px}.media-thumb[data-v-839ff846]{height:72px;width:100%;border-radius:8px;border:1px solid #e5e7eb;-o-object-fit:cover;object-fit:cover}.media-empty[data-v-839ff846]{display:grid;height:72px;place-items:center;border:1px dashed #d1d5db;border-radius:8px;color:#9ca3af;font-size:12px}.media-warning[data-v-839ff846]{display:grid;height:72px;place-items:center;border:1px dashed #d1d5db;border-radius:8px;color:#b54708;font-size:12px}.media-actions[data-v-839ff846]{display:flex;gap:6px}.inspector[data-v-4cc442cf]{display:flex;flex-direction:column;gap:14px}.inspector-scope[data-v-4cc442cf]{align-self:stretch}.inspector-breadcrumb[data-v-4cc442cf]{display:flex;align-items:center;gap:2px;color:#6b7280;font-size:11px}.inspector-section[data-v-4cc442cf]{display:flex;flex-direction:column;gap:10px;border-top:1px solid #e5e7eb;padding-top:12px}.inspector-section-title[data-v-4cc442cf]{color:#9ca3af;font-size:10px;font-weight:700;letter-spacing:.06em;text-transform:uppercase}.inspector-note[data-v-4cc442cf]{color:#6b7280;font-size:11px;line-height:1.45}.inspector-warning[data-v-4cc442cf]{display:flex;align-items:flex-start;gap:6px;border-radius:8px;background:#fffbeb;padding:8px 10px;color:#92400e;font-size:12px}.inspector-list[data-v-4cc442cf]{display:flex;flex-direction:column;gap:8px}.inspector-list-head[data-v-4cc442cf]{display:flex;align-items:baseline;gap:6px}.inspector-list-count[data-v-4cc442cf]{border-radius:999px;background:#f3f4f6;padding:0 6px;color:#6b7280;font-size:10px;font-variant-numeric:tabular-nums}.inspector-item[data-v-4cc442cf]{display:flex;flex-direction:column;gap:10px;border:1px solid #e5e7eb;border-radius:10px;padding:10px;background:#fcfcfd}.inspector-item-head[data-v-4cc442cf]{display:flex;align-items:center;gap:2px}.inspector-item-name[data-v-4cc442cf]{flex:1;color:#6b7280;font-size:10px;font-weight:700;letter-spacing:.06em;text-transform:uppercase}.inspector-item-action[data-v-4cc442cf]{display:grid;flex:0 0 auto;place-items:center;border-radius:6px;padding:2px;color:#9ca3af}.inspector-item-action[data-v-4cc442cf]:hover:not(:disabled){background:#fff7ed;color:#f97316}.inspector-item-action[data-v-4cc442cf]:disabled{opacity:.35}.inspector-list-add[data-v-4cc442cf]{display:flex;gap:6px}.media-field[data-v-4cc442cf]{display:flex;flex-direction:column;gap:6px}.media-label[data-v-4cc442cf]{color:#4b5563;font-size:12px}.media-thumb[data-v-4cc442cf]{height:72px;width:100%;border-radius:8px;border:1px solid #e5e7eb;-o-object-fit:cover;object-fit:cover}.media-empty[data-v-4cc442cf]{display:grid;height:72px;place-items:center;border:1px dashed #d1d5db;border-radius:8px;color:#9ca3af;font-size:12px}.media-actions[data-v-4cc442cf]{display:flex;gap:6px}.editor-head[data-v-fe5dec51]{display:flex;shrink:0;align-items:center;justify-content:space-between;gap:16px;border-bottom:1px solid #e5e7eb;padding:12px 20px}.editor-identity[data-v-fe5dec51]{display:flex;min-width:0;align-items:center;gap:10px}.editor-name[data-v-fe5dec51]{width:min(320px,40vw)}.editor-orientation[data-v-fe5dec51]{width:160px}.editor-error[data-v-fe5dec51]{flex-shrink:0;margin:12px 16px 0;border-radius:8px;background:#fef2f2;padding:8px 12px;color:#b91c1c;font-size:13px}.rail-scale[data-v-fe5dec51]{display:flex;flex-direction:column;gap:6px;margin-bottom:18px;border-bottom:1px solid #e5e7eb;padding-bottom:16px}.rail-scale-label[data-v-fe5dec51]{color:#4b5563;font-size:12px;font-weight:600}.rail-scale-hint[data-v-fe5dec51]{margin:0;color:#6b7280;font-size:11px;line-height:1.4}.rail-scale-warning[data-v-fe5dec51]{margin:0;border-radius:8px;padding:6px 8px;color:#9a3412;background:#fff7ed;font-size:11px;line-height:1.4}.editor-body[data-v-fe5dec51]{display:grid;min-height:0;flex:1;grid-template-columns:268px minmax(0,1fr) 320px}.editor-rail[data-v-fe5dec51],.editor-inspector[data-v-fe5dec51]{min-height:0;overflow:auto;padding:16px}.editor-rail[data-v-fe5dec51]{border-right:1px solid #e5e7eb;background:#f9fafb}.editor-inspector[data-v-fe5dec51]{border-left:1px solid #e5e7eb;background:#f9fafb}.editor-stage[data-v-fe5dec51]{display:flex;min-height:0;flex-direction:column;gap:12px;overflow:auto;padding:16px}.editor-stage-portrait[data-v-fe5dec51]{flex-direction:row;align-items:flex-start;gap:16px;height:100%}.editor-stage-portrait .stage-preview[data-v-fe5dec51]{min-height:0;flex:0 0 auto;align-self:stretch}.editor-stage-portrait .preview-portrait[data-v-fe5dec51]{height:100%;max-height:none}.editor-stage-portrait .stage-layout[data-v-fe5dec51]{min-width:0;flex:1}.editor-stage-portrait .layout-bar[data-v-fe5dec51]{flex-direction:column;align-items:stretch;gap:8px}.editor-stage-portrait .layout-actions[data-v-fe5dec51]{flex-wrap:wrap}.stage-preview[data-v-fe5dec51]{display:flex;flex-direction:column}.preview-frame[data-v-fe5dec51]{overflow:hidden;border:1px solid #e5e7eb;border-radius:12px;background:#101828;margin:0 auto}.preview-landscape[data-v-fe5dec51]{width:100%;max-height:52vh;aspect-ratio:16 / 9}.preview-portrait[data-v-fe5dec51]{height:52vh;max-width:100%;aspect-ratio:9 / 16}.preview-frame[data-v-fe5dec51]>*{width:100%;height:100%}.stage-layout[data-v-fe5dec51]{display:flex;min-height:0;flex:0 0 auto;flex-direction:column;gap:10px}.stage-layout[data-v-fe5dec51] .canvas-row{min-height:176px;max-height:260px}.stage-layout[data-v-fe5dec51] .canvas-column{min-height:calc(var(--area-count, 2) * 96px + 16px)}.layout-bar[data-v-fe5dec51]{display:flex;align-items:flex-start;justify-content:space-between;gap:16px}.layout-bar-title[data-v-fe5dec51]{display:flex;min-width:0;flex-direction:column;gap:2px}.layout-title[data-v-fe5dec51]{color:#111827;font-size:13px;font-weight:600}.layout-hint[data-v-fe5dec51]{color:#9ca3af;font-size:11px}.layout-actions[data-v-fe5dec51]{display:flex;flex-shrink:0;align-items:center;gap:6px}.layout-conflict[data-v-fe5dec51]{display:flex;align-items:flex-start;gap:6px;border-radius:8px;background:#fffbeb;padding:8px 10px;color:#92400e;font-size:12px;cursor:pointer}.preset-row[data-v-fe5dec51]{display:flex;flex-wrap:wrap;gap:8px;border-radius:10px;background:#f9fafb;padding:10px}.preset-card[data-v-fe5dec51]{display:flex;width:108px;flex-direction:column;gap:6px;border:1px solid #d1d5db;border-radius:10px;padding:8px;background:#fff;text-align:left}.preset-card[data-v-fe5dec51]:hover{border-color:#f97316;background:#fff7ed}.preset-diagram[data-v-fe5dec51]{display:flex;height:34px;gap:3px;border-radius:6px;background:#f3f4f6;padding:3px}.preset-row-dir[data-v-fe5dec51]{flex-direction:row}.preset-column-dir[data-v-fe5dec51]{flex-direction:column}.preset-cell[data-v-fe5dec51]{flex-basis:0;border-radius:4px;background:#fdba74}.preset-label[data-v-fe5dec51]{color:#374151;font-size:11px;line-height:1.3}@media (max-width: 1280px){.editor-body[data-v-fe5dec51]{grid-template-columns:220px minmax(0,1fr)}.editor-inspector[data-v-fe5dec51]{grid-column:1 / -1;border-left:0;border-top:1px solid #e5e7eb}}.layout-split[data-v-5595b416]{display:flex;min-width:0;min-height:0;flex:1;gap:6px}.layout-row[data-v-5595b416]{flex-direction:row}.layout-column[data-v-5595b416]{flex-direction:column}.layout-zone[data-v-5595b416]{display:flex;min-width:0;min-height:36px;flex:1;flex-direction:row;align-items:center;gap:8px;overflow:hidden;border:1.5px dashed #d1d5db;border-radius:10px;padding:6px 10px;background:#fff;text-align:left;transition:border-color .12s ease,background .12s ease}.layout-zone[data-v-5595b416]:hover{border-color:#fdba74;background:#fffbf5}.layout-zone-selected[data-v-5595b416]{border-style:solid;border-color:#f97316;background:#fff7ed;box-shadow:inset 0 0 0 1px #f97316}.layout-zone-index[data-v-5595b416]{flex:none;color:#6b7280;font-size:11px;font-weight:600;letter-spacing:.04em;text-transform:uppercase}.layout-zone-blocks[data-v-5595b416]{display:flex;min-width:0;gap:4px}.layout-zone-chip[data-v-5595b416]{display:inline-flex;max-width:100%;align-items:center;gap:4px;border-radius:999px;background:#f3f4f6;padding:3px 8px;color:#374151;font-size:11px}.display-toolbar[data-v-a2dda95a]{display:flex;align-items:center;justify-content:space-between;gap:16px;border-bottom:1px solid #e5e7eb;padding-bottom:14px}.display-controls[data-v-a2dda95a]{display:flex;align-items:center;justify-content:space-between;gap:16px;padding-top:12px}.display-restaurant-select[data-v-a2dda95a]{width:min(360px,100%)}.display-outlet[data-v-a2dda95a]{display:flex;align-items:center;gap:16px}.display-entitlement[data-v-a2dda95a]{color:#6b7280;font-size:12px;white-space:nowrap}.restriction-note[data-v-a2dda95a]{margin-top:12px;border:1px solid #fed7aa;border-radius:10px;padding:10px 12px;color:#9a3412;background:#fff7ed;font-size:13px}.empty-state[data-v-a2dda95a]{display:grid;justify-items:center;gap:6px;border:1px dashed #d1d5db;border-radius:12px;padding:56px 20px;color:#6b7280;text-align:center}.empty-state strong[data-v-a2dda95a]{color:#111827}.layout-thumb[data-v-a2dda95a]{display:flex;height:auto;min-height:96px;margin-top:16px;border-radius:10px;background:#f3f4f6;padding:5px;pointer-events:none}.thumb-caption[data-v-a2dda95a]{margin-top:8px;color:#6b7280;font-size:11px}.resource-card[data-v-a2dda95a]{border:1px solid #e5e7eb;border-radius:12px;padding:20px;background:#fff;box-shadow:0 2px 8px #0000000a}.mode-badge[data-v-a2dda95a],.status-badge[data-v-a2dda95a]{border-radius:999px;padding:3px 8px;background:#f3f4f6;font-size:11px;font-weight:700}.status-badge.active[data-v-a2dda95a]{color:#166534;background:#dcfce7}.status-badge.disabled[data-v-a2dda95a]{color:#991b1b;background:#fee2e2}.status-badge.unlicensed[data-v-a2dda95a]{color:#b42318;background:#fef3f2;border:1px solid #fecdca}.online-dot[data-v-a2dda95a]{color:#6b7280;font-size:11px}.online-dot[data-v-a2dda95a]:before{display:inline-block;width:7px;height:7px;margin-right:5px;border-radius:50%;background:#9ca3af;content:""}.online-dot.online[data-v-a2dda95a]{color:#15803d}.online-dot.online[data-v-a2dda95a]:before{background:#22c55e}.meta-grid[data-v-a2dda95a]{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-top:18px;border-top:1px solid #f0f0f0;padding-top:16px}.meta-grid dt[data-v-a2dda95a]{color:#6b7280;font-size:11px}.meta-grid dd[data-v-a2dda95a]{overflow:hidden;margin-top:2px;font-size:12px;text-overflow:ellipsis;white-space:nowrap}@media (max-width:640px){.display-toolbar[data-v-a2dda95a]{align-items:flex-start}.display-controls[data-v-a2dda95a]{align-items:stretch;flex-direction:column}.display-outlet[data-v-a2dda95a]{align-items:stretch;flex-direction:column;gap:8px}.display-restaurant-select[data-v-a2dda95a]{width:100%}}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@feedmepos/mf-order-setting",
3
- "version": "0.0.84",
3
+ "version": "0.0.85",
4
4
  "type": "module",
5
5
  "module": "./dist/app.js",
6
6
  "license": "UNLICENSED",
@@ -14,7 +14,7 @@
14
14
  "@feedmepos/entity": "0.0.20",
15
15
  "@feedmepos/feature-flag": "^0.0.15",
16
16
  "@feedmepos/hrm-permission": "^1.0.13",
17
- "@feedmepos/media-picker": "0.0.6",
17
+ "@feedmepos/media-picker": "2.0.0",
18
18
  "@feedmepos/menu": "^2.0.4",
19
19
  "@feedmepos/mf-common": "^1.28.6",
20
20
  "@feedmepos/ordering": "^0.0.3",
@@ -100,7 +100,7 @@
100
100
  "auto": "Auto",
101
101
  "autoCalledLimit": "Auto Called Limit",
102
102
  "autoCloseBill": "Auto close bill",
103
- "autoCloseBillSublabel": "Automatically close the bill once the order is accepted",
103
+ "autoCloseBillSublabel": "Automatically close the bill once the order is accepted. An unpaid bill stays open until it is settled.",
104
104
  "autoIntegration": "Auto Integration",
105
105
  "autoIntegrationCountryNotSupport": "Platform not support auto integration in current country.",
106
106
  "autoIntegrationWarning": "Auto delivery integration not available, contact our staff for more information. Reason: {reason}",
@@ -108,6 +108,12 @@
108
108
  "autoResetOrderNumberTooltip": "When enabled, all order numbers (takeaway, pickup, in-house delivery, FeedMe express, reservation, kiosk dine-in), the queue number, and the POS counter & drive-thru numbers reset to their starting value at the set time each day.",
109
109
  "autoSendKitchen": "Auto Send Kitchen",
110
110
  "autoSendKitchenSublabel": "Required POS version 7 or above",
111
+ "followAutoAccept": "Follow Auto Accept",
112
+ "autoSendKitchenChannelSublabel": "Send the order to the kitchen when it is accepted. Follow Auto Accept keeps the existing behaviour: the kitchen is notified only when the order is auto-accepted.",
113
+ "autoCloseBillRequiresAutoSend": "Auto close bill only applies when the order is auto-accepted and sent to the kitchen. Otherwise the bill stays open, because a closed bill can no longer be sent to the kitchen.",
114
+ "autoCloseBillEnableKitchenTitle": "Also turn on Auto Send Kitchen?",
115
+ "autoCloseBillEnableKitchenMessage": "Orders on this channel are not sent to the kitchen automatically, so a paid bill would be closed before the kitchen ever sees it — and a closed bill can no longer be sent. Turning on Auto Send Kitchen as well means every accepted order reaches the kitchen first.",
116
+ "autoCloseBillEnableKitchenConfirm": "Turn on both",
111
117
  "balance": "Balance",
112
118
  "bankCard": "Card",
113
119
  "beforeBillDiscount": "Before bill discount",
@@ -131,6 +137,11 @@
131
137
  "confirm": "Confirm",
132
138
  "contact": "contact",
133
139
  "copyFailed": "Failed to copy to clipboard",
140
+ "coverCarouselHint": "Add up to {max} images per orientation. With two or more, the kiosk landing screen fades between them in the order shown.",
141
+ "coverCarouselInterval": "Seconds per image",
142
+ "coverCarouselIntervalHint": "How long each image is shown before it fades to the next. Leave empty to use the default of {seconds} seconds.",
143
+ "coverCarouselMoveEarlier": "Show earlier",
144
+ "coverCarouselMoveLater": "Show later",
134
145
  "coverImage": "Cover Image",
135
146
  "coverImageFallbackHint": "If not set, it will default to the Cover Image from restaurant settings.",
136
147
  "coverImageLandscape": "Cover Image (Landscape)",
@@ -636,6 +647,7 @@
636
647
  "queueBandBoard": "Queue board",
637
648
  "mediaCarousel": "Carousel",
638
649
  "mediaImage": "Image",
650
+ "mediaVideo": "Video",
639
651
  "infoText": "Text"
640
652
  },
641
653
  "fields": {
@@ -662,7 +674,8 @@
662
674
  "title": "Title",
663
675
  "subtitle": "Subtitle",
664
676
  "text": "Text",
665
- "image": "Image"
677
+ "image": "Image",
678
+ "video": "Video"
666
679
  },
667
680
  "values": {
668
681
  "horizontal": "Side by side",
@@ -736,6 +749,11 @@
736
749
  "replaceImage": "Replace",
737
750
  "clearImage": "Remove",
738
751
  "noImage": "No image",
752
+ "chooseVideo": "Choose video",
753
+ "replaceVideo": "Replace",
754
+ "clearVideo": "Remove",
755
+ "noVideo": "No video",
756
+ "videoUndecodable": "May not play on screens \u2014 use MP4",
739
757
  "modules": "Modules in this area",
740
758
  "addModule": "Add module",
741
759
  "addModulePlaceholder": "Pick a module to add",
@@ -776,6 +794,8 @@
776
794
  "allRestaurants": "All restaurants",
777
795
  "online": "Online",
778
796
  "offline": "Offline",
797
+ "unlicensed": "Unlicensed",
798
+ "unlicensedNote": "Over the screen entitlement, so the POS marks this screen unlicensed. Buy another screen, or pause one.",
779
799
  "deviceId": "Device ID",
780
800
  "lastSeen": "Last seen",
781
801
  "appVersion": "App version",