@feedmepos/mf-menu-portal 0.0.0-stage → 1.0.1-dev.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (263) hide show
  1. package/README.md +30 -2
  2. package/dist/AddPriceGroupDialog.vue_vue_type_script_setup_true_lang-DhKyG3gY.js +20 -0
  3. package/dist/App-C6k--u1c.js +8316 -0
  4. package/dist/ApplyProduct.vue_vue_type_script_setup_true_lang-C9OSr8ft.js +98 -0
  5. package/dist/BindingLinkDialog.vue_vue_type_script_setup_true_lang-BZVQRyRI.js +180 -0
  6. package/dist/BindingTable.vue_vue_type_script_setup_true_lang-DBzjWI_6.js +179 -0
  7. package/dist/Catalog-DEYN4dMN.js +374 -0
  8. package/dist/CatalogBinding-NnPKdPvx.js +315 -0
  9. package/dist/CatalogEditTabs.vue_vue_type_script_setup_true_lang-OshqaPTE.js +97 -0
  10. package/dist/CatalogEditor.vue_vue_type_script_setup_true_lang-poznuDXu.js +447 -0
  11. package/dist/CatalogLinkProductAction.vue_vue_type_script_setup_true_lang-BSMAIkQ2.js +117 -0
  12. package/dist/Category-BdUP0o34.js +13 -0
  13. package/dist/Category-CkQiwP9e.js +52 -0
  14. package/dist/CategoryList.vue_vue_type_script_setup_true_lang-UgNVpYgp.js +797 -0
  15. package/dist/CookingGuide-CtDkm74r.js +842 -0
  16. package/dist/FormItem.vue_vue_type_script_setup_true_lang-C2S6QCyR.js +26 -0
  17. package/dist/FormSection.vue_vue_type_script_setup_true_lang-pY-_msnM.js +1774 -0
  18. package/dist/Group-D2HngOjr.js +52 -0
  19. package/dist/Group-DSj7_16V.js +13 -0
  20. package/dist/GroupList.vue_vue_type_script_setup_true_lang-BmmsSKTt.js +2183 -0
  21. package/dist/Ingredient-BHqz7kjQ.js +463 -0
  22. package/dist/LinkProductSideSheet.vue_vue_type_script_setup_true_lang-D9jK-Fhn.js +709 -0
  23. package/dist/ListCountTag.vue_vue_type_script_setup_true_lang-0bjk8Aly.js +15 -0
  24. package/dist/MenuSetting-DF-cJH7N.js +1228 -0
  25. package/dist/OrderPacing-CejS9dEI.js +698 -0
  26. package/dist/OrderPacingFields.vue_vue_type_script_setup_true_lang-C2mixGUk.js +55 -0
  27. package/dist/PageLayout.vue_vue_type_script_setup_true_lang-B3szUH39.js +41 -0
  28. package/dist/Preview-1C7jGJuY.js +327 -0
  29. package/dist/PriceTierNotice.vue_vue_type_script_setup_true_lang-CxKHCptJ.js +26 -0
  30. package/dist/PrintRoute-BNnMcgTf.js +473 -0
  31. package/dist/Product-BoUKxogB.js +44 -0
  32. package/dist/ProductChipSummary.vue_vue_type_script_setup_true_lang-D8DygCBl.js +110 -0
  33. package/dist/ProductEditorHost.vue_vue_type_script_setup_true_lang-Bm8_FTvr.js +83 -0
  34. package/dist/ProductFilterMenu.vue_vue_type_script_setup_true_lang-Cgc0Ms_n.js +101 -0
  35. package/dist/ProductGroupCreateSheet.vue_vue_type_script_setup_true_lang-Cx_mW05R.js +1246 -0
  36. package/dist/ProductImageEditorDialog.vue_vue_type_script_setup_true_lang-CUeYaXYg.js +1955 -0
  37. package/dist/ProductInlineCreateHost.vue_vue_type_script_setup_true_lang-CeYyZX7g.js +5401 -0
  38. package/dist/ProductInternalTools-b3sy8bWy.js +2147 -0
  39. package/dist/ProductInventoryDialog-DO0D8e3Z.js +4 -0
  40. package/dist/ProductInventoryDialog.vue_vue_type_script_setup_true_lang-y9Mz__o9.js +187 -0
  41. package/dist/ProductList.vue_vue_type_script_setup_true_lang-n_UYIwwt.js +10353 -0
  42. package/dist/ProductVariantTranslationSheet.vue_vue_type_script_setup_true_lang-ClG3Prfm.js +218 -0
  43. package/dist/Products-7vlFJB0P.js +155 -0
  44. package/dist/Publish-DTP-CgV-.js +1261 -0
  45. package/dist/Recipe-C1W8_15H.js +350 -0
  46. package/dist/Scheduler-JRjozwP_.js +637 -0
  47. package/dist/ServingSequence-BGT5m7JB.js +336 -0
  48. package/dist/Setting-CS_M1gMN.js +173 -0
  49. package/dist/Subcategory-Cgy9CQCz.js +412 -0
  50. package/dist/Takeaway-Bpo9XA-j.js +48 -0
  51. package/dist/Takeaway-DO2dmFGP.js +13 -0
  52. package/dist/TakeawayList.vue_vue_type_script_setup_true_lang-C7KexF7H.js +554 -0
  53. package/dist/TranslationLanguageSelector.vue_vue_type_script_setup_true_lang-BJZ6VcrT.js +161 -0
  54. package/dist/TranslationSideSheet.vue_vue_type_script_setup_true_lang-B0j2PNih.js +158 -0
  55. package/dist/TranslationViewChip.vue_vue_type_script_setup_true_lang-CAkLEmSA.js +69 -0
  56. package/dist/TreeEditorOpenner.vue_vue_type_script_setup_true_lang-BHxmPO7F.js +1213 -0
  57. package/dist/Unit-Bn5UzMp1.js +385 -0
  58. package/dist/Variant-DmeGEEkw.js +538 -0
  59. package/dist/_id_-DC1dJIaj.js +28 -0
  60. package/dist/_plugin-vue_export-helper-CHgC5LLL.js +9 -0
  61. package/dist/app-Bd7W2PYm.js +2008 -0
  62. package/dist/app.js +8 -0
  63. package/dist/apps/mf-menu/src/App.vue.d.ts +2 -0
  64. package/dist/apps/mf-menu/src/Entry.vue.d.ts +4 -0
  65. package/dist/apps/mf-menu/src/app.d.ts +16771 -0
  66. package/dist/apps/mf-menu/src/assets/icons/index.d.ts +4 -0
  67. package/dist/apps/mf-menu/src/components/CatalogBindingList.vue.d.ts +9 -0
  68. package/dist/apps/mf-menu/src/components/CatalogList.vue.d.ts +6 -0
  69. package/dist/apps/mf-menu/src/components/CategoryImageField.vue.d.ts +17 -0
  70. package/dist/apps/mf-menu/src/components/CategoryList.vue.d.ts +28 -0
  71. package/dist/apps/mf-menu/src/components/Fields/RangeSlider.vue.d.ts +23 -0
  72. package/dist/apps/mf-menu/src/components/GroupList.vue.d.ts +28 -0
  73. package/dist/apps/mf-menu/src/components/GroupTranslationSideSheet.vue.d.ts +14 -0
  74. package/dist/apps/mf-menu/src/components/IngredientList.vue.d.ts +15 -0
  75. package/dist/apps/mf-menu/src/components/MenuHeaderContext.vue.d.ts +2 -0
  76. package/dist/apps/mf-menu/src/components/MenuRestaurantSelector.vue.d.ts +7 -0
  77. package/dist/apps/mf-menu/src/components/MenuSetting/AddMemberTierDialog.vue.d.ts +2 -0
  78. package/dist/apps/mf-menu/src/components/MenuSetting/AddPriceGroupDialog.vue.d.ts +2 -0
  79. package/dist/apps/mf-menu/src/components/MenuSetting/ConfigurationTab.vue.d.ts +6 -0
  80. package/dist/apps/mf-menu/src/components/MenuSetting/MemberPricingTab.vue.d.ts +6 -0
  81. package/dist/apps/mf-menu/src/components/MenuSetting/PriceGroupTab.vue.d.ts +6 -0
  82. package/dist/apps/mf-menu/src/components/MenuSetting/RuleGroupsTab.vue.d.ts +6 -0
  83. package/dist/apps/mf-menu/src/components/Navigator.vue.d.ts +2 -0
  84. package/dist/apps/mf-menu/src/components/OrderPacingList.vue.d.ts +6 -0
  85. package/dist/apps/mf-menu/src/components/PriceTier/PriceTierNotice.vue.d.ts +6 -0
  86. package/dist/apps/mf-menu/src/components/PrintRouteList.vue.d.ts +6 -0
  87. package/dist/apps/mf-menu/src/components/Product/LocalizedCurrencySymbol.vue.d.ts +5 -0
  88. package/dist/apps/mf-menu/src/components/Product/ProductAttributeFilter.vue.d.ts +13 -0
  89. package/dist/apps/mf-menu/src/components/Product/ProductCategorySelector.vue.d.ts +11 -0
  90. package/dist/apps/mf-menu/src/components/Product/ProductChipSummary.vue.d.ts +9 -0
  91. package/dist/apps/mf-menu/src/components/Product/ProductChoicePicker.vue.d.ts +15 -0
  92. package/dist/apps/mf-menu/src/components/Product/ProductEditorHost.vue.d.ts +26 -0
  93. package/dist/apps/mf-menu/src/components/Product/ProductFilterMenu.vue.d.ts +26 -0
  94. package/dist/apps/mf-menu/src/components/Product/ProductForm.vue.d.ts +42 -0
  95. package/dist/apps/mf-menu/src/components/Product/ProductFormSection.vue.d.ts +41 -0
  96. package/dist/apps/mf-menu/src/components/Product/ProductGroupCreateSheet.vue.d.ts +19 -0
  97. package/dist/apps/mf-menu/src/components/Product/ProductGroupSheet.vue.d.ts +56 -0
  98. package/dist/apps/mf-menu/src/components/Product/ProductInlineCategoryCreateField.vue.d.ts +10 -0
  99. package/dist/apps/mf-menu/src/components/Product/ProductInlineCreateHost.vue.d.ts +38 -0
  100. package/dist/apps/mf-menu/src/components/Product/ProductInlineSubcategoryCreateField.vue.d.ts +10 -0
  101. package/dist/apps/mf-menu/src/components/Product/ProductInventoryDialog.vue.d.ts +12 -0
  102. package/dist/apps/mf-menu/src/components/Product/ProductLocaleBadge.vue.d.ts +6 -0
  103. package/dist/apps/mf-menu/src/components/Product/ProductMemberPriceTooltip.vue.d.ts +6 -0
  104. package/dist/apps/mf-menu/src/components/Product/ProductMoneyField.vue.d.ts +25 -0
  105. package/dist/apps/mf-menu/src/components/Product/ProductOverviewSheet.vue.d.ts +11 -0
  106. package/dist/apps/mf-menu/src/components/Product/ProductPacingSheet.vue.d.ts +13 -0
  107. package/dist/apps/mf-menu/src/components/Product/ProductPriceTierButton.vue.d.ts +11 -0
  108. package/dist/apps/mf-menu/src/components/Product/ProductPricingSheet.vue.d.ts +26 -0
  109. package/dist/apps/mf-menu/src/components/Product/ProductPrintRouteSheet.vue.d.ts +12 -0
  110. package/dist/apps/mf-menu/src/components/Product/ProductQuantityField.vue.d.ts +16 -0
  111. package/dist/apps/mf-menu/src/components/Product/ProductSummaryCard.vue.d.ts +9 -0
  112. package/dist/apps/mf-menu/src/components/Product/ProductTakeawaySheet.vue.d.ts +12 -0
  113. package/dist/apps/mf-menu/src/components/Product/ProductTranslationDialog.vue.d.ts +16 -0
  114. package/dist/apps/mf-menu/src/components/Product/ProductVariantCreateSheet.vue.d.ts +12 -0
  115. package/dist/apps/mf-menu/src/components/Product/ProductVariantTranslationSheet.vue.d.ts +13 -0
  116. package/dist/apps/mf-menu/src/components/Product/inlineCreate.d.ts +23 -0
  117. package/dist/apps/mf-menu/src/components/Product/labels.d.ts +15 -0
  118. package/dist/apps/mf-menu/src/components/ProductBatchImage/BatchImageBadge.vue.d.ts +7 -0
  119. package/dist/apps/mf-menu/src/components/ProductBatchImage/BatchImageDownloadDialog.vue.d.ts +15 -0
  120. package/dist/apps/mf-menu/src/components/ProductBatchImage/BatchImageFormatChips.vue.d.ts +13 -0
  121. package/dist/apps/mf-menu/src/components/ProductBatchImage/BatchImageLegacyChip.vue.d.ts +2 -0
  122. package/dist/apps/mf-menu/src/components/ProductBatchImage/BatchImageProgressDialog.vue.d.ts +11 -0
  123. package/dist/apps/mf-menu/src/components/ProductBatchImage/BatchImageResult.vue.d.ts +14 -0
  124. package/dist/apps/mf-menu/src/components/ProductBatchImage/BatchImageReview.vue.d.ts +21 -0
  125. package/dist/apps/mf-menu/src/components/ProductBatchImage/BatchImageThumb.vue.d.ts +15 -0
  126. package/dist/apps/mf-menu/src/components/ProductBatchImage/BatchImageUpdateFlow.vue.d.ts +6 -0
  127. package/dist/apps/mf-menu/src/components/ProductBatchImage/BatchImageUpdateSheet.vue.d.ts +34 -0
  128. package/dist/apps/mf-menu/src/components/ProductBatchImage/batchImageFiles.d.ts +53 -0
  129. package/dist/apps/mf-menu/src/components/ProductImage/ProductImageCustomFormatDialog.vue.d.ts +40 -0
  130. package/dist/apps/mf-menu/src/components/ProductImage/ProductImageEditorDialog.vue.d.ts +82 -0
  131. package/dist/apps/mf-menu/src/components/ProductImage/ProductImageField.vue.d.ts +42 -0
  132. package/dist/apps/mf-menu/src/components/ProductImage/ProductImageManageSheet.vue.d.ts +47 -0
  133. package/dist/apps/mf-menu/src/components/ProductImage/ProductImageRegenerateDialog.vue.d.ts +44 -0
  134. package/dist/apps/mf-menu/src/components/ProductImage/imageBrowser.d.ts +18 -0
  135. package/dist/apps/mf-menu/src/components/ProductList.vue.d.ts +18 -0
  136. package/dist/apps/mf-menu/src/components/PublishList.vue.d.ts +14 -0
  137. package/dist/apps/mf-menu/src/components/RecipeList.vue.d.ts +11 -0
  138. package/dist/apps/mf-menu/src/components/SchedulerList.vue.d.ts +6 -0
  139. package/dist/apps/mf-menu/src/components/ServingSequenceList.vue.d.ts +6 -0
  140. package/dist/apps/mf-menu/src/components/SubcategoryList.vue.d.ts +6 -0
  141. package/dist/apps/mf-menu/src/components/TakeawayList.vue.d.ts +26 -0
  142. package/dist/apps/mf-menu/src/components/TranslationSideSheet.vue.d.ts +36 -0
  143. package/dist/apps/mf-menu/src/components/UnitList.vue.d.ts +6 -0
  144. package/dist/apps/mf-menu/src/components/V3ToV4MigrationBanner.vue.d.ts +6 -0
  145. package/dist/apps/mf-menu/src/components/V3ToV4MigrationConfirmDialog.vue.d.ts +12 -0
  146. package/dist/apps/mf-menu/src/components/VariantList.vue.d.ts +6 -0
  147. package/dist/apps/mf-menu/src/components/catalog/CatalogEditor.vue.d.ts +14 -0
  148. package/dist/apps/mf-menu/src/components/catalog/CatalogLinkProductAction.vue.d.ts +7 -0
  149. package/dist/apps/mf-menu/src/components/catalog/CatalogUsage.vue.d.ts +6 -0
  150. package/dist/apps/mf-menu/src/components/catalog/tableSemantics.d.ts +7 -0
  151. package/dist/apps/mf-menu/src/components/feature/ApplyProduct/ApplyProduct.vue.d.ts +33 -0
  152. package/dist/apps/mf-menu/src/components/feature/CookingGuide/RemoveCookingGuideConfirmation.vue.d.ts +6 -0
  153. package/dist/apps/mf-menu/src/components/feature/EmptyDataTemplate/Icon.vue.d.ts +2 -0
  154. package/dist/apps/mf-menu/src/components/feature/EmptyDataTemplate/index.d.ts +1 -0
  155. package/dist/apps/mf-menu/src/components/feature/EmptyDataTemplate/index.vue.d.ts +18 -0
  156. package/dist/apps/mf-menu/src/components/feature/InventoryBinding/BindingLinkDialog.vue.d.ts +49 -0
  157. package/dist/apps/mf-menu/src/components/feature/InventoryBinding/BindingTable.vue.d.ts +38 -0
  158. package/dist/apps/mf-menu/src/components/feature/LinkProduct/LinkProductSideSheet.vue.d.ts +65 -0
  159. package/dist/apps/mf-menu/src/components/feature/OrderPacing/DeleteOrderPacingConfirmation.vue.d.ts +6 -0
  160. package/dist/apps/mf-menu/src/components/feature/OrderPacing/OrderPacingFields.vue.d.ts +17 -0
  161. package/dist/apps/mf-menu/src/components/feature/PrintRoute/RemoveRouteConfirmation.vue.d.ts +6 -0
  162. package/dist/apps/mf-menu/src/components/feature/TreeEditor/TreeEditorOpenner.vue.d.ts +18 -0
  163. package/dist/apps/mf-menu/src/components/feature/TreeEditor/openner.d.ts +7 -0
  164. package/dist/apps/mf-menu/src/components/info/TextChip.vue.d.ts +13 -0
  165. package/dist/apps/mf-menu/src/components/layout/FlatInlineSort.vue.d.ts +25 -0
  166. package/dist/apps/mf-menu/src/components/layout/FormColumn.vue.d.ts +12 -0
  167. package/dist/apps/mf-menu/src/components/layout/FormItem.vue.d.ts +17 -0
  168. package/dist/apps/mf-menu/src/components/layout/FormRow.vue.d.ts +9 -0
  169. package/dist/apps/mf-menu/src/components/layout/FormSection.vue.d.ts +18 -0
  170. package/dist/apps/mf-menu/src/components/layout/FullScreenForm.vue.d.ts +31 -0
  171. package/dist/apps/mf-menu/src/components/layout/FullWrapper.vue.d.ts +9 -0
  172. package/dist/apps/mf-menu/src/components/layout/LabeledTextField.vue.d.ts +16 -0
  173. package/dist/apps/mf-menu/src/components/layout/ListCountTag.vue.d.ts +5 -0
  174. package/dist/apps/mf-menu/src/components/layout/LottieAnimation.vue.d.ts +39 -0
  175. package/dist/apps/mf-menu/src/components/layout/PageLayout.vue.d.ts +19 -0
  176. package/dist/apps/mf-menu/src/components/layout/ProgressBar.vue.d.ts +9 -0
  177. package/dist/apps/mf-menu/src/components/loading/AppLoading.vue.d.ts +20 -0
  178. package/dist/apps/mf-menu/src/components/loading/PageLoading.vue.d.ts +2 -0
  179. package/dist/apps/mf-menu/src/components/loading/index.d.ts +1 -0
  180. package/dist/apps/mf-menu/src/components/placeholder/PlaceholderView.vue.d.ts +5 -0
  181. package/dist/apps/mf-menu/src/components/preview/MenuPreview.vue.d.ts +13 -0
  182. package/dist/apps/mf-menu/src/components/preview/simulatorPort.d.ts +23 -0
  183. package/dist/apps/mf-menu/src/components/publish/PublishRevertPreview.vue.d.ts +6 -0
  184. package/dist/apps/mf-menu/src/components/publish/PublishScheduleDetails.vue.d.ts +6 -0
  185. package/dist/apps/mf-menu/src/components/publish/publishStatus.d.ts +15 -0
  186. package/dist/apps/mf-menu/src/components/translation/TranslationLanguageSelector.vue.d.ts +21 -0
  187. package/dist/apps/mf-menu/src/components/translation/TranslationViewChip.vue.d.ts +12 -0
  188. package/dist/apps/mf-menu/src/components/translation/localeName.d.ts +11 -0
  189. package/dist/apps/mf-menu/src/components/translation/localeSymbol.d.ts +15 -0
  190. package/dist/apps/mf-menu/src/composable/elementPosition.d.ts +17 -0
  191. package/dist/apps/mf-menu/src/composable/menuNotifier.d.ts +14 -0
  192. package/dist/apps/mf-menu/src/composable/navigator.d.ts +16 -0
  193. package/dist/apps/mf-menu/src/composable/useActionFeedback.d.ts +81 -0
  194. package/dist/apps/mf-menu/src/composable/useEditorValidation.d.ts +21 -0
  195. package/dist/apps/mf-menu/src/init.d.ts +1 -0
  196. package/dist/apps/mf-menu/src/main.d.ts +2 -0
  197. package/dist/apps/mf-menu/src/plugins.d.ts +4 -0
  198. package/dist/apps/mf-menu/src/router/index.d.ts +2 -0
  199. package/dist/apps/mf-menu/src/router/shared.d.ts +65 -0
  200. package/dist/apps/mf-menu/src/sdk/host.d.ts +9 -0
  201. package/dist/apps/mf-menu/src/sdk/import-export.d.ts +9 -0
  202. package/dist/apps/mf-menu/src/sdk/provide.d.ts +33 -0
  203. package/dist/apps/mf-menu/src/sdk/useReadModel.d.ts +16 -0
  204. package/dist/apps/mf-menu/src/sdk/useSdkMessage.d.ts +11 -0
  205. package/dist/apps/mf-menu/src/stores/app.d.ts +17 -0
  206. package/dist/apps/mf-menu/src/utils/ruleValueKey.d.ts +12 -0
  207. package/dist/apps/mf-menu/src/utils/worker-loader.d.ts +12 -0
  208. package/dist/apps/mf-menu/src/utils/worker.d.ts +4 -0
  209. package/dist/apps/mf-menu/src/views/Catalog/Catalog.vue.d.ts +2 -0
  210. package/dist/apps/mf-menu/src/views/Catalog/Edit/CatalogEditTabs.vue.d.ts +2 -0
  211. package/dist/apps/mf-menu/src/views/Catalog/Edit/Category.vue.d.ts +2 -0
  212. package/dist/apps/mf-menu/src/views/Catalog/Edit/Group.vue.d.ts +2 -0
  213. package/dist/apps/mf-menu/src/views/Catalog/Edit/MainSetting.vue.d.ts +2 -0
  214. package/dist/apps/mf-menu/src/views/Catalog/Edit/NamedSetting.vue.d.ts +5 -0
  215. package/dist/apps/mf-menu/src/views/Catalog/Edit/Product.vue.d.ts +2 -0
  216. package/dist/apps/mf-menu/src/views/Catalog/Edit/Setting.vue.d.ts +2 -0
  217. package/dist/apps/mf-menu/src/views/Catalog/Edit/Takeaway.vue.d.ts +2 -0
  218. package/dist/apps/mf-menu/src/views/Catalog/Edit/[id].vue.d.ts +2 -0
  219. package/dist/apps/mf-menu/src/views/CatalogBinding/CatalogBinding.vue.d.ts +2 -0
  220. package/dist/apps/mf-menu/src/views/Category/Category.vue.d.ts +2 -0
  221. package/dist/apps/mf-menu/src/views/CookingGuide/CookingGuide.vue.d.ts +2 -0
  222. package/dist/apps/mf-menu/src/views/Group/Group.vue.d.ts +2 -0
  223. package/dist/apps/mf-menu/src/views/ImportExport/ImportDiffPreview.vue.d.ts +25 -0
  224. package/dist/apps/mf-menu/src/views/ImportExport/ImportExport.vue.d.ts +9 -0
  225. package/dist/apps/mf-menu/src/views/ImportExport/ImportV3DiffPreview.vue.d.ts +26 -0
  226. package/dist/apps/mf-menu/src/views/ImportExport/PreviewImportTable.vue.d.ts +30 -0
  227. package/dist/apps/mf-menu/src/views/Ingredient/Ingredient.vue.d.ts +2 -0
  228. package/dist/apps/mf-menu/src/views/MenuManagementEditor/CategoryRenameDialog.vue.d.ts +26 -0
  229. package/dist/apps/mf-menu/src/views/MenuManagementEditor/DetailPane.vue.d.ts +23 -0
  230. package/dist/apps/mf-menu/src/views/MenuManagementEditor/EditorHistoryControls.vue.d.ts +22 -0
  231. package/dist/apps/mf-menu/src/views/MenuManagementEditor/MenuManagementEditor.vue.d.ts +10 -0
  232. package/dist/apps/mf-menu/src/views/MenuManagementEditor/RestaurantAttributesFilter.vue.d.ts +2 -0
  233. package/dist/apps/mf-menu/src/views/MenuManagementEditor/ScopeSwitcher.vue.d.ts +2 -0
  234. package/dist/apps/mf-menu/src/views/MenuManagementEditor/TreeFilter.vue.d.ts +2 -0
  235. package/dist/apps/mf-menu/src/views/MenuManagementEditor/TreePanel.vue.d.ts +9 -0
  236. package/dist/apps/mf-menu/src/views/MenuManagementEditor/TreeRow.vue.d.ts +25 -0
  237. package/dist/apps/mf-menu/src/views/MenuSetting/MenuSetting.vue.d.ts +2 -0
  238. package/dist/apps/mf-menu/src/views/OrderPacing/OrderPacing.vue.d.ts +2 -0
  239. package/dist/apps/mf-menu/src/views/Preview/Preview.vue.d.ts +2 -0
  240. package/dist/apps/mf-menu/src/views/PrintRoute/PrintRoute.vue.d.ts +2 -0
  241. package/dist/apps/mf-menu/src/views/Product/ProductInternalTools.vue.d.ts +2 -0
  242. package/dist/apps/mf-menu/src/views/Product/Products.vue.d.ts +2 -0
  243. package/dist/apps/mf-menu/src/views/Publish/Publish.vue.d.ts +2 -0
  244. package/dist/apps/mf-menu/src/views/Recipe/Recipe.vue.d.ts +2 -0
  245. package/dist/apps/mf-menu/src/views/Scheduler/Scheduler.vue.d.ts +2 -0
  246. package/dist/apps/mf-menu/src/views/ServingSequence/ServingSequence.vue.d.ts +2 -0
  247. package/dist/apps/mf-menu/src/views/Subcategory/Subcategory.vue.d.ts +2 -0
  248. package/dist/apps/mf-menu/src/views/Takeaway/Takeaway.vue.d.ts +2 -0
  249. package/dist/apps/mf-menu/src/views/Unit/Unit.vue.d.ts +2 -0
  250. package/dist/apps/mf-menu/src/views/Variant/Variant.vue.d.ts +2 -0
  251. package/dist/apps/mf-menu/src/workers/menu-compute.d.ts +1 -0
  252. package/dist/apps/mf-menu/src/workers/validate-menu.d.ts +1 -0
  253. package/dist/apps/mf-menu/tsconfig.app.tsbuildinfo +1 -0
  254. package/dist/assets/menu-compute-okel5FLc.js +260 -0
  255. package/dist/assets/validate-menu-DEFGpnQh.js +130 -0
  256. package/dist/index.vue_vue_type_script_setup_true_lang-CGPDazqs.js +57 -0
  257. package/dist/mf-menu-portal.css +1 -0
  258. package/dist/provide-Tmjfji09.js +190840 -0
  259. package/dist/ruleValueKey-BF52PuHb.js +10 -0
  260. package/dist/tableSemantics-C9WFO_I_.js +22 -0
  261. package/dist/useActionFeedback-DoFeBFpl.js +95 -0
  262. package/dist/useEditorValidation-Ctef5Bxt.js +63 -0
  263. package/package.json +79 -3
@@ -0,0 +1,842 @@
1
+ import { defineComponent as xe, resolveComponent as k, openBlock as m, createBlock as w, withCtx as p, createElementVNode as i, toDisplayString as g, computed as F, ref as L, shallowRef as ke, h as ee, withModifiers as D, onUnmounted as He, unref as t, createElementBlock as _, createVNode as n, Fragment as C, renderList as V, createCommentVNode as q, mergeProps as oe, createTextVNode as Qe, nextTick as Je } from "vue";
2
+ import { _ as R, d as We } from "./FormSection.vue_vue_type_script_setup_true_lang-pY-_msnM.js";
3
+ import { useI18n as Xe } from "@feedmepos/mf-common";
4
+ import { useDialog as Ye, useBreakpoints as Ze, components as te } from "@feedmepos/ui-library";
5
+ import { _ as eo } from "./index.vue_vue_type_script_setup_true_lang-CGPDazqs.js";
6
+ import { _ as oo } from "./app-Bd7W2PYm.js";
7
+ import { _ as to } from "./LinkProductSideSheet.vue_vue_type_script_setup_true_lang-D9jK-Fhn.js";
8
+ import { _ as ao } from "./PageLayout.vue_vue_type_script_setup_true_lang-B3szUH39.js";
9
+ import { u as lo } from "./useActionFeedback-DoFeBFpl.js";
10
+ import { u as ye } from "./useEditorValidation-Ctef5Bxt.js";
11
+ import { a as io, b as no, u as he } from "./provide-Tmjfji09.js";
12
+ const so = { class: "fm-typo-en-body-lg-600" }, uo = { class: "fm-typo-en-body-lg-600" }, ro = /* @__PURE__ */ xe({
13
+ __name: "RemoveCookingGuideConfirmation",
14
+ props: {
15
+ row: {}
16
+ },
17
+ setup(Ce) {
18
+ return (x, o) => {
19
+ const $ = k("i18n-t");
20
+ return m(), w($, {
21
+ keypath: x.row.linkedProductCount > 0 ? "menu.cooking_guide.dialogs.remove.message.confirm_with_products" : "menu.cooking_guide.dialogs.remove.message.confirm",
22
+ scope: "global",
23
+ tag: "p"
24
+ }, {
25
+ count: p(() => [
26
+ i("span", so, g(x.row.linkedProductCount), 1)
27
+ ]),
28
+ name: p(() => [
29
+ i("span", uo, g(x.row.name), 1)
30
+ ]),
31
+ _: 1
32
+ }, 8, ["keypath"]);
33
+ };
34
+ }
35
+ }), co = { class: "flex flex-1 justify-end" }, mo = {
36
+ key: 0,
37
+ class: "flex flex-col gap-16 items-start"
38
+ }, po = {
39
+ role: "alert",
40
+ class: "text-fm-color-typo-secondary"
41
+ }, vo = { class: "flex justify-end items-center" }, go = { class: "grow space-y-4" }, _o = { class: "fm-typo-en-body-lg-600" }, fo = { class: "fm-typo-en-body-md-400 text-fm-color-typo-secondary" }, bo = { class: "fm-typo-en-body-md-400 text-fm-color-typo-secondary" }, ko = {
42
+ key: 2,
43
+ class: "fixed right-16 bottom-[72px] z-[100] w-[144px]"
44
+ }, yo = { class: "fm-typo-en-title-md-600" }, ho = { class: "space-y-24" }, xo = { class: "flex items-center" }, Co = { class: "flex items-center gap-8" }, So = { class: "fm-typo-en-body-lg-400 text-fm-color-typo-secondary" }, wo = { class: "flex-1" }, Fo = { class: "bg-fm-color-neutral-gray-100 px-16 py-8" }, Vo = { class: "px-16 py-8 flex-1 flex gap-4 overflow-auto min-w-0" }, Io = { class: "fm-typo-en-body-md-500" }, $o = { class: "px-16 py-8 flex gap-8" }, Eo = { class: "flex gap-8" }, Oo = { class: "flex items-center gap-8" }, Lo = { class: "fm-typo-en-title-md-600" }, Ko = { class: "flex flex-col gap-32" }, Po = { class: "flex bg-fm-color-neutral-gray-100 border-b border-b-fm-color-neutral-gray-200" }, Mo = { class: "w-2/5 px-16 py-8" }, Uo = { class: "grow px-16 py-8" }, Go = { class: "w-2/5 px-16 py-8" }, To = { class: "grow px-16 py-8" }, Ro = { class: "space-y-16" }, jo = { class: "flex flex-wrap gap-8 overflow-hidden mb-8" }, zo = { class: "flex gap-8 items-center justify-start" }, Ao = { class: "min-w-[700px]" }, Bo = { class: "flex bg-fm-color-neutral-gray-100" }, No = { class: "grow px-16 py-8" }, Do = { class: "w-[200px] px-16 py-8" }, qo = { class: "w-[200px] px-16 py-8" }, Ho = { class: "grow px-16 py-8" }, Qo = { class: "w-[200px] px-16 py-8" }, Jo = { class: "w-[200px] px-16 py-8" }, Wo = {
45
+ key: 0,
46
+ class: "h-8"
47
+ }, ut = /* @__PURE__ */ xe({
48
+ __name: "CookingGuide",
49
+ setup(Ce) {
50
+ const x = io(), { t: o } = Xe(), $ = no(), ae = Ye(), { breakpoints: Se } = Ze(), { run: H } = lo(), K = he(x.cookingGuide.list), h = F(
51
+ () => K.value.status === "ready" ? K.value.value : null
52
+ ), we = F(() => {
53
+ var e;
54
+ return ((e = h.value) == null ? void 0 : e.query) ?? "";
55
+ }), le = F(() => {
56
+ var e;
57
+ return [...((e = h.value) == null ? void 0 : e.rows) ?? []];
58
+ }), j = F(() => Se.value.xs), P = L(!1), M = L(!1), U = L(!1), ie = L(null), E = L(!1), Q = L(!1), d = ke(
59
+ x.cookingGuide.editor()
60
+ ), G = ke(
61
+ d.value.get()
62
+ );
63
+ let z = d.value.subscribe(
64
+ (e) => G.value = e
65
+ );
66
+ const c = F(
67
+ () => G.value.status === "ready" ? G.value.value : null
68
+ ), J = ye(() => d.value), ne = F(
69
+ () => c.value ? J.issue(c.value.fieldIssues, "name") ?? c.value.nameIssue : null
70
+ ), T = ye(
71
+ () => {
72
+ var e, a;
73
+ return ((a = (e = c.value) == null ? void 0 : e.stepEditor) == null ? void 0 : a.id) ?? null;
74
+ }
75
+ );
76
+ function se(e, a) {
77
+ var y;
78
+ const s = T.issue(
79
+ ((y = c.value) == null ? void 0 : y.stepFieldIssues) ?? {},
80
+ `variables.${e}.${a}`
81
+ );
82
+ return s ? [$(s)] : [];
83
+ }
84
+ const ue = he(x.cookingGuide.productPicker), Fe = F(
85
+ () => ue.value.status === "ready" ? ue.value.value : null
86
+ );
87
+ function de(e) {
88
+ z(), d.value.dispose(), d.value = x.cookingGuide.editor(e), G.value = d.value.get(), z = d.value.subscribe(
89
+ (a) => G.value = a
90
+ );
91
+ }
92
+ function W() {
93
+ var e;
94
+ ((e = h.value) == null ? void 0 : e.create.state) === "allowed" && (de(), P.value = !0);
95
+ }
96
+ function re(e) {
97
+ de(e.id), P.value = !0;
98
+ }
99
+ function ce() {
100
+ P.value = !1, M.value = !1, U.value = !1, E.value = !1, z();
101
+ }
102
+ function X() {
103
+ ce(), d.value.dispose();
104
+ }
105
+ function me() {
106
+ var e;
107
+ if (!((e = c.value) != null && e.dirty)) return X();
108
+ ae.open({
109
+ title: o("menu.common.dialog.dismiss.title"),
110
+ message: o("menu.common.dialog.dismiss.message"),
111
+ primaryActions: {
112
+ text: o("menu.common.dialog.dismiss.discard"),
113
+ close: !0
114
+ },
115
+ secondaryActions: {
116
+ text: o("menu.common.actions.cancel"),
117
+ close: !0
118
+ }
119
+ }).onPrimary(X);
120
+ }
121
+ function Ve(e) {
122
+ e ? P.value = !0 : me();
123
+ }
124
+ function pe() {
125
+ var S;
126
+ const e = ((S = c.value) == null ? void 0 : S.name) ?? "", a = d.value, s = J.submit(() => a.submit()), y = a.get(), f = y.status === "ready" && y.value.status === "submitting";
127
+ H(() => s, {
128
+ successMessage: o("menu.cooking_guide.manager.action.saved", { name: e }),
129
+ showLoading: () => {
130
+ var A;
131
+ return ((A = c.value) == null ? void 0 : A.status) === "submitting";
132
+ }
133
+ }).finally(() => {
134
+ f && a.dispose();
135
+ }), f && ce();
136
+ }
137
+ function Ie() {
138
+ var e;
139
+ return (((e = c.value) == null ? void 0 : e.bindings) ?? []).map(
140
+ (a) => a.combinationKey ? { itemId: a.productId, combinationKey: a.combinationKey } : { itemId: a.productId }
141
+ );
142
+ }
143
+ function $e(e) {
144
+ d.value.setLinkedProducts(
145
+ e.map((a) => ({
146
+ productId: a.itemId,
147
+ combinationKey: a.combinationKey ?? null
148
+ }))
149
+ ), M.value = !1;
150
+ }
151
+ function Ee() {
152
+ d.value.addStep();
153
+ const e = d.value.get(), a = e.status === "ready" ? e.value.steps : [], s = a[a.length - 1];
154
+ s && ve(s.id);
155
+ }
156
+ function ve(e) {
157
+ d.value.openStep(e), U.value = !0;
158
+ }
159
+ function Y() {
160
+ d.value.discardStep(), U.value = !1;
161
+ }
162
+ async function Oe() {
163
+ (await T.submit(async () => {
164
+ var s;
165
+ return d.value.saveStep() ? { kind: "success", value: void 0 } : { kind: "rejected", issues: Object.entries(
166
+ ((s = c.value) == null ? void 0 : s.stepFieldIssues) ?? {}
167
+ ).flatMap(
168
+ ([y, f]) => (f ?? []).map((S) => ({ ...S, field: y }))
169
+ ) };
170
+ })).kind === "success" && (U.value = !1);
171
+ }
172
+ function Le(e) {
173
+ d.value.removeStep(e);
174
+ }
175
+ function Ke(e) {
176
+ d.value.setSteps(e);
177
+ }
178
+ function ge() {
179
+ const e = ie.value, a = e instanceof HTMLElement ? e : e == null ? void 0 : e.$el;
180
+ return a instanceof HTMLTextAreaElement ? a : (a == null ? void 0 : a.querySelector("textarea")) ?? null;
181
+ }
182
+ function Pe(e) {
183
+ const a = ge(), s = a == null ? void 0 : a.selectionStart, y = a == null ? void 0 : a.selectionEnd;
184
+ d.value.appendStepVariable(
185
+ e,
186
+ s ?? void 0,
187
+ y ?? void 0
188
+ ), s != null && Je(() => {
189
+ const f = ge(), S = s + e.length + 4;
190
+ f == null || f.focus(), f == null || f.setSelectionRange(S, S);
191
+ });
192
+ }
193
+ function Me(e) {
194
+ d.value.openOverrides(e.productId, e.combinationKey), E.value = !0;
195
+ }
196
+ function Ue(e, a) {
197
+ var s, y, f;
198
+ return ((f = (y = (s = c.value) == null ? void 0 : s.overrideEditor) == null ? void 0 : y.values[e]) == null ? void 0 : f[a]) ?? "";
199
+ }
200
+ function Ge(e, a, s) {
201
+ d.value.setOverrideValue(e, a, s);
202
+ }
203
+ function Te() {
204
+ d.value.saveOverrides(), E.value = !1;
205
+ }
206
+ function _e() {
207
+ d.value.discardOverrides(), E.value = !1;
208
+ }
209
+ function fe(e) {
210
+ ae.open({
211
+ title: o("menu.cooking_guide.dialogs.remove.title"),
212
+ contentComponent: ee(ro, { row: e }),
213
+ primaryActions: {
214
+ text: o("menu.cooking_guide.actions.remove"),
215
+ close: !0,
216
+ variant: "destructive"
217
+ },
218
+ secondaryActions: {
219
+ text: o("menu.cooking_guide.actions.cancel"),
220
+ close: !0
221
+ }
222
+ }).onPrimary(
223
+ () => H(() => x.cookingGuide.remove(e.id), {
224
+ successMessage: o("menu.cooking_guide.manager.action.removed", {
225
+ name: e.name
226
+ })
227
+ })
228
+ );
229
+ }
230
+ async function Re() {
231
+ Q.value = !0;
232
+ try {
233
+ await H(() => x.cookingGuide.retryRead(), {
234
+ showLoading: !1
235
+ });
236
+ } finally {
237
+ Q.value = !1;
238
+ }
239
+ }
240
+ const je = F(() => [
241
+ {
242
+ accessorKey: "name",
243
+ header: () => o("menu.cooking_guide.table.columns.name"),
244
+ cell: (e) => e.getValue(),
245
+ enableSorting: !1
246
+ },
247
+ {
248
+ accessorKey: "linkedProductCount",
249
+ header: () => o("menu.cooking_guide.table.columns.products"),
250
+ cell: (e) => $(e.row.original.productsCell),
251
+ enableSorting: !1
252
+ },
253
+ {
254
+ accessorKey: "stepCount",
255
+ header: () => o("menu.cooking_guide.table.columns.steps"),
256
+ cell: (e) => o("menu.cooking_guide.table.columns.steps", {
257
+ count: e.getValue()
258
+ }),
259
+ enableSorting: !1
260
+ },
261
+ {
262
+ id: "actions",
263
+ header: "",
264
+ size: 52,
265
+ meta: { cellClass: "pl-16", headerContentClass: "-mx-16" },
266
+ enableSorting: !1,
267
+ cell: (e) => ee("div", { class: "flex justify-end" }, [
268
+ ee(te.FmButton, {
269
+ icon: "delete",
270
+ variant: "tertiary",
271
+ textColor: "neutral-gray-400",
272
+ disabled: e.row.original.remove.state !== "allowed",
273
+ "aria-label": o("menu.cooking_guide.actions.remove"),
274
+ onClick: D(
275
+ () => fe(e.row.original),
276
+ ["stop", "prevent"]
277
+ )
278
+ })
279
+ ])
280
+ }
281
+ ]);
282
+ return He(() => {
283
+ x.cookingGuide.search(""), z(), d.value.dispose();
284
+ }), (e, a) => {
285
+ const s = k("FmButton"), y = k("FmCircularProgress"), f = k("FmSearch"), S = k("FmTable"), A = k("FmListItem"), ze = k("FmList"), B = k("FmTextField"), Ae = k("FmCardSection"), Be = k("FmCard"), Z = k("FmSpacer"), be = k("FmSideSheet"), Ne = k("FmChip"), De = k("FmTextarea"), qe = k("FmDialog");
286
+ return m(), w(ao, {
287
+ heading: t(o)("menu.cooking_guide.title")
288
+ }, {
289
+ "append-heading": p(() => [
290
+ i("div", co, [
291
+ h.value && h.value.totalCount > 0 && !j.value ? (m(), w(s, {
292
+ key: 0,
293
+ class: "ml-auto",
294
+ disabled: h.value.create.state !== "allowed",
295
+ label: t(o)("menu.cooking_guide.actions.add"),
296
+ "prepend-icon": "add",
297
+ variant: "primary",
298
+ onClick: W
299
+ }, null, 8, ["disabled", "label"])) : q("", !0)
300
+ ])
301
+ ]),
302
+ default: p(() => [
303
+ t(K).status === "error" ? (m(), _("div", mo, [
304
+ i("p", po, g(t($)(t(K).error.message)), 1),
305
+ n(s, {
306
+ label: t(o)("menu.common.actions.retry"),
307
+ loading: Q.value,
308
+ "prepend-icon": "refresh",
309
+ variant: "secondary",
310
+ onClick: Re
311
+ }, null, 8, ["label", "loading"])
312
+ ])) : t(K).status === "loading" ? (m(), w(y, { key: 1 })) : h.value && h.value.totalCount === 0 ? (m(), w(t(eo), {
313
+ key: 2,
314
+ action: h.value.create.state === "allowed" ? { text: t(o)("menu.cooking_guide.empty.action"), callback: W } : void 0,
315
+ subtitle: t(o)("menu.cooking_guide.empty.subtitle"),
316
+ title: t(o)("menu.cooking_guide.empty.title")
317
+ }, null, 8, ["action", "subtitle", "title"])) : h.value ? (m(), _(C, { key: 3 }, [
318
+ i("div", vo, [
319
+ n(f, {
320
+ autofocus: !j.value,
321
+ class: "my-8 w-[320px] xs:w-full xs:px-16",
322
+ "model-value": we.value,
323
+ placeholder: t(o)("menu.cooking_guide.table.search.placeholder"),
324
+ "onUpdate:modelValue": a[0] || (a[0] = (l) => t(x).cookingGuide.search(String(l ?? "")))
325
+ }, null, 8, ["autofocus", "model-value", "placeholder"])
326
+ ]),
327
+ j.value ? (m(), w(ze, {
328
+ key: 1,
329
+ class: "w-full px-16 flex-1 min-h-0 overflow-scroll pb-64",
330
+ separator: ""
331
+ }, {
332
+ default: p(() => [
333
+ (m(!0), _(C, null, V(le.value, (l) => (m(), w(A, {
334
+ key: l.id,
335
+ class: "!py-12 !px-0",
336
+ onClick: (u) => re(l)
337
+ }, {
338
+ default: p(() => [
339
+ i("div", go, [
340
+ i("div", _o, g(l.name), 1),
341
+ i("div", null, [
342
+ i("div", fo, g(t(o)("menu.cooking_guide.table.mobile.products_linked", {
343
+ count: l.linkedProductCount
344
+ })), 1),
345
+ i("div", bo, g(t(o)("menu.cooking_guide.table.columns.steps", {
346
+ count: l.stepCount
347
+ })), 1)
348
+ ])
349
+ ]),
350
+ n(s, {
351
+ "aria-label": t(o)("menu.cooking_guide.actions.remove"),
352
+ disabled: l.remove.state !== "allowed",
353
+ icon: "delete",
354
+ "text-color": "neutral-gray-400",
355
+ variant: "tertiary",
356
+ onClick: D((u) => fe(l), ["stop"])
357
+ }, null, 8, ["aria-label", "disabled", "onClick"])
358
+ ]),
359
+ _: 2
360
+ }, 1032, ["onClick"]))), 128))
361
+ ]),
362
+ _: 1
363
+ })) : (m(), w(oo, { key: 0 }, {
364
+ default: p(() => [
365
+ n(S, {
366
+ "column-defs": je.value,
367
+ "hide-footer": "",
368
+ "page-size": h.value.rows.length,
369
+ "row-data": le.value,
370
+ "shrink-at": !1,
371
+ "pin-header-row": "",
372
+ onRowClick: a[1] || (a[1] = (l) => re(l.original))
373
+ }, null, 8, ["column-defs", "page-size", "row-data"])
374
+ ]),
375
+ _: 1
376
+ })),
377
+ h.value.totalCount > 0 && j.value ? (m(), _("div", ko, [
378
+ n(s, {
379
+ class: "w-full",
380
+ disabled: h.value.create.state !== "allowed",
381
+ label: t(o)("menu.cooking_guide.actions.add"),
382
+ "prepend-icon": "add",
383
+ variant: "fab",
384
+ onClick: W
385
+ }, null, 8, ["disabled", "label"])
386
+ ])) : q("", !0)
387
+ ], 64)) : q("", !0),
388
+ n(be, {
389
+ "model-value": P.value,
390
+ "is-container": t(te).FmForm,
391
+ "is-container-props": {
392
+ onValidationSuccess: pe,
393
+ blameFormChildOnValidationFailed: !0,
394
+ class: "flex flex-col h-full py-16"
395
+ },
396
+ "max-width": 560,
397
+ "onOn:clickedAway": me,
398
+ "onUpdate:modelValue": Ve
399
+ }, {
400
+ "side-sheet-header": p(() => {
401
+ var l;
402
+ return [
403
+ i("p", yo, g(((l = c.value) == null ? void 0 : l.mode) === "update" ? t(o)("menu.cooking_guide.dialog.update.title") : t(o)("menu.cooking_guide.dialog.add.title")), 1)
404
+ ];
405
+ }),
406
+ "side-sheet-footer": p(() => {
407
+ var l, u;
408
+ return [
409
+ i("div", Eo, [
410
+ n(s, {
411
+ disabled: ((l = c.value) == null ? void 0 : l.submit.state) !== "allowed",
412
+ label: ((u = c.value) == null ? void 0 : u.mode) === "update" ? t(o)("menu.cooking_guide.dialog.update.action") : t(o)("menu.cooking_guide.dialog.add.action"),
413
+ type: "button",
414
+ variant: "primary",
415
+ onClick: pe
416
+ }, null, 8, ["disabled", "label"]),
417
+ n(s, {
418
+ label: t(o)("menu.cooking_guide.dialog.actions.cancel"),
419
+ variant: "tertiary",
420
+ onClick: X
421
+ }, null, 8, ["label"])
422
+ ])
423
+ ];
424
+ }),
425
+ default: p(() => [
426
+ i("div", ho, [
427
+ n(R, {
428
+ title: t(o)("menu.cooking_guide.dialog.sections.guide_detail.title")
429
+ }, {
430
+ default: p(() => {
431
+ var l, u;
432
+ return [
433
+ n(B, oe(
434
+ {
435
+ autofocus: ((l = c.value) == null ? void 0 : l.mode) === "create",
436
+ "error-messages": ne.value ? [t($)(ne.value)] : [],
437
+ label: t(o)("menu.cooking_guide.dialog.sections.guide_detail.name.label"),
438
+ "model-value": ((u = c.value) == null ? void 0 : u.name) ?? "",
439
+ placeholder: t(o)(
440
+ "menu.cooking_guide.dialog.sections.guide_detail.name.placeholder"
441
+ )
442
+ },
443
+ t(J).field(
444
+ "name",
445
+ (b) => d.value.setName(String(b ?? ""))
446
+ )
447
+ ), null, 16, ["autofocus", "error-messages", "label", "model-value", "placeholder"])
448
+ ];
449
+ }),
450
+ _: 1
451
+ }, 8, ["title"]),
452
+ n(R, {
453
+ title: t(o)("menu.cooking_guide.dialog.sections.steps.title")
454
+ }, {
455
+ "append-title": p(() => [
456
+ n(s, {
457
+ label: t(o)("menu.cooking_guide.dialog.sections.steps.add"),
458
+ icon: "add",
459
+ variant: "secondary",
460
+ "text-color": "primary",
461
+ "border-color": "primary",
462
+ onClick: Ee
463
+ }, null, 8, ["label"])
464
+ ]),
465
+ default: p(() => {
466
+ var l;
467
+ return [
468
+ n(t(We), {
469
+ "model-value": ((l = c.value) == null ? void 0 : l.steps) ?? [],
470
+ class: "flex flex-col gap-16",
471
+ handle: ".handle",
472
+ "item-key": "id",
473
+ "onUpdate:modelValue": Ke
474
+ }, {
475
+ item: p(({ element: u }) => [
476
+ n(Be, {
477
+ class: "rounded-md mb-16 items-center",
478
+ horizontal: "",
479
+ variant: "outlined",
480
+ onClick: (b) => ve(u.id)
481
+ }, {
482
+ default: p(() => [
483
+ i("div", xo, [
484
+ n(s, {
485
+ class: "handle",
486
+ icon: "drag_handle",
487
+ variant: "tertiary"
488
+ })
489
+ ]),
490
+ n(Ae, { class: "grow" }, {
491
+ default: p(() => [
492
+ Qe(g(u.instruction), 1)
493
+ ]),
494
+ _: 2
495
+ }, 1024),
496
+ n(s, {
497
+ "aria-label": t(o)("menu.cooking_guide.actions.remove"),
498
+ "prepend-icon": "delete",
499
+ "text-color": "neutral-gray-400",
500
+ variant: "tertiary",
501
+ onClick: D((b) => Le(u.id), ["stop"])
502
+ }, null, 8, ["aria-label", "onClick"])
503
+ ]),
504
+ _: 2
505
+ }, 1032, ["onClick"])
506
+ ]),
507
+ _: 1
508
+ }, 8, ["model-value"])
509
+ ];
510
+ }),
511
+ _: 1
512
+ }, 8, ["title"]),
513
+ n(R, {
514
+ title: t(o)("menu.cooking_guide.dialog.sections.apply_product.title")
515
+ }, {
516
+ "append-title": p(() => [
517
+ n(Z),
518
+ n(s, {
519
+ label: t(o)("menu.cooking_guide.dialog.sections.apply_product.link"),
520
+ icon: "link",
521
+ variant: "secondary",
522
+ "text-color": "primary",
523
+ "border-color": "primary",
524
+ onClick: a[2] || (a[2] = (l) => M.value = !0)
525
+ }, null, 8, ["label"])
526
+ ]),
527
+ default: p(() => {
528
+ var l, u, b;
529
+ return [
530
+ i("div", Co, [
531
+ i("div", So, g(t(o)(
532
+ "menu.cooking_guide.dialog.sections.apply_product.products_linked",
533
+ { count: ((l = c.value) == null ? void 0 : l.bindings.length) ?? 0 }
534
+ )), 1),
535
+ i("div", wo, [
536
+ n(f, {
537
+ "model-value": ((u = c.value) == null ? void 0 : u.linkedFilter) ?? "",
538
+ placeholder: t(o)("menu.cooking_guide.dialog.sections.apply_product.search"),
539
+ "onUpdate:modelValue": a[3] || (a[3] = (r) => d.value.setLinkedFilter(String(r ?? "")))
540
+ }, null, 8, ["model-value", "placeholder"])
541
+ ])
542
+ ]),
543
+ (m(!0), _(C, null, V(((b = c.value) == null ? void 0 : b.linkedGroups) ?? [], (r) => (m(), _(C, {
544
+ key: r.name ?? "uncategorised"
545
+ }, [
546
+ i("div", Fo, g(r.isSynthetic ? t(o)("menu.tree_editor.labels.addon") : r.name), 1),
547
+ (m(!0), _(C, null, V(r.bindings, (v) => (m(), _("div", {
548
+ key: v.binding.productId + v.binding.combinationKey,
549
+ class: "flex items-center"
550
+ }, [
551
+ i("div", Vo, [
552
+ i("span", Io, g(v.label), 1)
553
+ ]),
554
+ i("div", $o, [
555
+ n(s, {
556
+ "aria-label": t(o)("menu.cooking_guide.step_override_dialog.title"),
557
+ icon: "edit",
558
+ variant: "tertiary",
559
+ onClick: (O) => Me(v.binding)
560
+ }, null, 8, ["aria-label", "onClick"]),
561
+ n(s, {
562
+ "aria-label": t(o)("menu.cooking_guide.actions.remove"),
563
+ icon: "delete",
564
+ variant: "tertiary",
565
+ onClick: (O) => {
566
+ var N;
567
+ return d.value.setLinkedProducts(
568
+ (((N = c.value) == null ? void 0 : N.bindings) ?? []).filter(
569
+ (I) => I.productId !== v.binding.productId || I.combinationKey !== v.binding.combinationKey
570
+ ).map((I) => ({
571
+ productId: I.productId,
572
+ combinationKey: I.combinationKey
573
+ }))
574
+ );
575
+ }
576
+ }, null, 8, ["aria-label", "onClick"])
577
+ ])
578
+ ]))), 128))
579
+ ], 64))), 128))
580
+ ];
581
+ }),
582
+ _: 1
583
+ }, 8, ["title"])
584
+ ])
585
+ ]),
586
+ _: 1
587
+ }, 8, ["model-value", "is-container", "is-container-props"]),
588
+ n(to, {
589
+ modelValue: M.value,
590
+ "onUpdate:modelValue": a[4] || (a[4] = (l) => M.value = l),
591
+ catalogue: Fe.value,
592
+ "selected-products": Ie(),
593
+ "select-variant": !0,
594
+ onSubmitLinks: $e
595
+ }, null, 8, ["modelValue", "catalogue", "selected-products"]),
596
+ n(be, {
597
+ "close-button": !1,
598
+ "model-value": U.value,
599
+ "is-container": t(te).FmForm,
600
+ "is-container-props": {
601
+ onValidationSuccess: Oe,
602
+ blameFormChildOnValidationFailed: !0,
603
+ class: "flex flex-col h-full"
604
+ },
605
+ "max-width": 560,
606
+ "onUpdate:modelValue": Y
607
+ }, {
608
+ "side-sheet-header": p(() => {
609
+ var l, u;
610
+ return [
611
+ i("div", Oo, [
612
+ n(s, {
613
+ label: t(o)("menu.cooking_guide.step_dialog.actions.back"),
614
+ "prepend-icon": "arrow_back",
615
+ variant: "tertiary",
616
+ onClick: Y
617
+ }, null, 8, ["label"]),
618
+ i("span", Lo, g((u = (l = c.value) == null ? void 0 : l.stepEditor) != null && u.isNew ? t(o)("menu.cooking_guide.step_dialog.add.title") : t(o)("menu.cooking_guide.step_dialog.update.title")), 1)
619
+ ])
620
+ ];
621
+ }),
622
+ "side-sheet-footer": p(() => {
623
+ var l, u;
624
+ return [
625
+ i("div", zo, [
626
+ n(s, {
627
+ label: (u = (l = c.value) == null ? void 0 : l.stepEditor) != null && u.isNew ? t(o)("menu.cooking_guide.step_dialog.add.action") : t(o)("menu.cooking_guide.step_dialog.update.action"),
628
+ size: "lg",
629
+ type: "submit",
630
+ variant: "primary"
631
+ }, null, 8, ["label"]),
632
+ n(s, {
633
+ label: t(o)("menu.cooking_guide.step_dialog.actions.cancel"),
634
+ size: "lg",
635
+ variant: "tertiary",
636
+ onClick: Y
637
+ }, null, 8, ["label"])
638
+ ])
639
+ ];
640
+ }),
641
+ default: p(() => [
642
+ i("div", Ko, [
643
+ n(R, {
644
+ title: t(o)("menu.cooking_guide.step_dialog.sections.variables.title")
645
+ }, {
646
+ "append-title": p(() => [
647
+ n(Z),
648
+ n(s, {
649
+ label: t(o)("menu.cooking_guide.step_dialog.sections.variables.add"),
650
+ "prepend-icon": "add",
651
+ variant: "secondary",
652
+ "text-color": "primary",
653
+ "border-color": "primary",
654
+ onClick: d.value.addStepVariable
655
+ }, null, 8, ["label", "onClick"])
656
+ ]),
657
+ default: p(() => {
658
+ var l, u;
659
+ return [
660
+ i("div", null, [
661
+ i("div", Po, [
662
+ i("span", Mo, g(t(o)(
663
+ "menu.cooking_guide.step_dialog.sections.variables.columns.key"
664
+ )), 1),
665
+ i("span", Uo, g(t(o)(
666
+ "menu.cooking_guide.step_dialog.sections.variables.columns.value"
667
+ )), 1)
668
+ ]),
669
+ (m(!0), _(C, null, V(((u = (l = c.value) == null ? void 0 : l.stepEditor) == null ? void 0 : u.variables) ?? [], (b, r) => (m(), _("div", {
670
+ key: r,
671
+ class: "flex items-center border-b border-b-fm-color-neutral-gray-100"
672
+ }, [
673
+ i("div", Go, [
674
+ n(B, oe(
675
+ {
676
+ "aria-label": t(o)(
677
+ "menu.cooking_guide.step_dialog.sections.variables.accessibility.key_input",
678
+ { index: r + 1 }
679
+ ),
680
+ "model-value": b.key,
681
+ placeholder: t(o)(
682
+ "menu.cooking_guide.step_dialog.sections.variables.placeholders.key"
683
+ ),
684
+ "error-messages": se(r, "key")
685
+ },
686
+ { ref_for: !0 },
687
+ t(T).field(
688
+ `variables.${r}.key`,
689
+ (v) => d.value.setStepVariable(r, {
690
+ key: String(v ?? "")
691
+ })
692
+ )
693
+ ), null, 16, ["aria-label", "model-value", "placeholder", "error-messages"])
694
+ ]),
695
+ i("div", To, [
696
+ n(B, oe(
697
+ {
698
+ "aria-label": t(o)(
699
+ "menu.cooking_guide.step_dialog.sections.variables.accessibility.value_input",
700
+ { index: r + 1 }
701
+ ),
702
+ "model-value": b.value,
703
+ placeholder: t(o)(
704
+ "menu.cooking_guide.step_dialog.sections.variables.placeholders.value"
705
+ ),
706
+ "error-messages": se(r, "value")
707
+ },
708
+ { ref_for: !0 },
709
+ t(T).field(
710
+ `variables.${r}.value`,
711
+ (v) => d.value.setStepVariable(r, {
712
+ value: String(v ?? "")
713
+ })
714
+ )
715
+ ), null, 16, ["aria-label", "model-value", "placeholder", "error-messages"])
716
+ ]),
717
+ n(s, {
718
+ "aria-label": t(o)(
719
+ "menu.cooking_guide.step_dialog.sections.variables.accessibility.remove",
720
+ { index: r + 1 }
721
+ ),
722
+ icon: "delete",
723
+ "text-color": "neutral-gray-400",
724
+ variant: "tertiary",
725
+ onClick: (v) => (t(T).removeRow("variables.", r), d.value.removeStepVariable(r))
726
+ }, null, 8, ["aria-label", "onClick"])
727
+ ]))), 128))
728
+ ])
729
+ ];
730
+ }),
731
+ _: 1
732
+ }, 8, ["title"]),
733
+ n(R, {
734
+ title: t(o)("menu.cooking_guide.step_dialog.sections.instruction.title")
735
+ }, {
736
+ default: p(() => {
737
+ var l, u, b, r;
738
+ return [
739
+ i("div", Ro, [
740
+ i("div", jo, [
741
+ (m(!0), _(C, null, V((((u = (l = c.value) == null ? void 0 : l.stepEditor) == null ? void 0 : u.variables) ?? []).filter(
742
+ (v, O, N) => v.key && N.findIndex(
743
+ (I) => I.key === v.key
744
+ ) === O
745
+ ), (v) => (m(), w(Ne, {
746
+ key: v.key,
747
+ label: v.key,
748
+ class: "text-fm-color-primary bg-fm-color-system-warning-100",
749
+ onMousedown: D((O) => Pe(v.key), ["prevent"])
750
+ }, null, 8, ["label", "onMousedown"]))), 128))
751
+ ]),
752
+ n(De, {
753
+ ref_key: "instructionInput",
754
+ ref: ie,
755
+ "aria-label": t(o)("menu.cooking_guide.step_dialog.sections.instruction.title"),
756
+ "model-value": ((r = (b = c.value) == null ? void 0 : b.stepEditor) == null ? void 0 : r.instruction) ?? "",
757
+ "onUpdate:modelValue": a[5] || (a[5] = (v) => d.value.setStepInstruction(String(v ?? "")))
758
+ }, null, 8, ["aria-label", "model-value"])
759
+ ])
760
+ ];
761
+ }),
762
+ _: 1
763
+ }, 8, ["title"])
764
+ ])
765
+ ]),
766
+ _: 1
767
+ }, 8, ["model-value", "is-container", "is-container-props"]),
768
+ n(qe, {
769
+ "model-value": E.value,
770
+ "max-width": 748,
771
+ overlay: !0,
772
+ "onUpdate:modelValue": a[6] || (a[6] = (l) => {
773
+ l ? E.value = !0 : _e();
774
+ })
775
+ }, {
776
+ "dialog-header": p(() => [
777
+ i("span", null, g(t(o)("menu.cooking_guide.step_override_dialog.title")), 1)
778
+ ]),
779
+ "dialog-footer": p(() => [
780
+ n(Z),
781
+ n(s, {
782
+ label: t(o)("menu.cooking_guide.step_override_dialog.actions.cancel"),
783
+ variant: "tertiary",
784
+ onClick: _e
785
+ }, null, 8, ["label"]),
786
+ n(s, {
787
+ label: t(o)("menu.cooking_guide.step_override_dialog.actions.save"),
788
+ variant: "primary",
789
+ onClick: Te
790
+ }, null, 8, ["label"])
791
+ ]),
792
+ default: p(() => {
793
+ var l;
794
+ return [
795
+ i("div", Ao, [
796
+ i("div", Bo, [
797
+ i("span", No, g(t(o)("menu.cooking_guide.step_override_dialog.columns.instructions")), 1),
798
+ i("span", Do, g(t(o)("menu.cooking_guide.step_override_dialog.columns.variables")), 1),
799
+ i("span", qo, g(t(o)("menu.cooking_guide.step_override_dialog.columns.value")), 1)
800
+ ]),
801
+ (m(!0), _(C, null, V(((l = c.value) == null ? void 0 : l.steps) ?? [], (u) => (m(), _("div", {
802
+ key: u.id,
803
+ class: "flex border-t-2"
804
+ }, [
805
+ i("div", Ho, g(u.instruction), 1),
806
+ i("div", Qo, [
807
+ (m(!0), _(C, null, V(u.variables, (b, r) => (m(), _("div", {
808
+ key: r,
809
+ class: "py-8"
810
+ }, g(r), 1))), 128))
811
+ ]),
812
+ i("div", Jo, [
813
+ (m(!0), _(C, null, V(u.variables, (b, r, v) => (m(), _(C, { key: r }, [
814
+ n(B, {
815
+ "aria-label": t(o)(
816
+ "menu.cooking_guide.step_override_dialog.accessibility.value_input",
817
+ { instruction: u.instruction, variable: r }
818
+ ),
819
+ "model-value": Ue(u.id, r),
820
+ placeholder: b,
821
+ "onUpdate:modelValue": (O) => Ge(u.id, r, String(O ?? ""))
822
+ }, null, 8, ["aria-label", "model-value", "placeholder", "onUpdate:modelValue"]),
823
+ v < Object.keys(u.variables).length - 1 ? (m(), _("div", Wo)) : q("", !0)
824
+ ], 64))), 128))
825
+ ])
826
+ ]))), 128))
827
+ ]),
828
+ a[7] || (a[7] = i("div", { class: "h-8" }, null, -1))
829
+ ];
830
+ }),
831
+ _: 1,
832
+ __: [7]
833
+ }, 8, ["model-value"])
834
+ ]),
835
+ _: 1
836
+ }, 8, ["heading"]);
837
+ };
838
+ }
839
+ });
840
+ export {
841
+ ut as default
842
+ };