@feedmepos/mf-inventory-portal 1.8.0-dev.2 → 1.8.0-dev.21

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 (248) hide show
  1. package/dist/App-BxpqrT2x.js +1445 -0
  2. package/dist/{ApprovalView-RaXuWWSu.js → ApprovalView-DZBM9n1Y.js} +26 -25
  3. package/dist/{BindingsDialog-DomvXijP.js → BindingsDialog-jjHrmqY_.js} +2 -2
  4. package/dist/{BindingsPicker-DGnzxEs7.js → BindingsPicker-Dv1KwHIQ.js} +2 -2
  5. package/dist/{BindingsTable-DfG9kWrv.js → BindingsTable-Ch_TlrZu.js} +10 -10
  6. package/dist/BulkReceiveRequestPage-BVB3PNxF.js +2839 -0
  7. package/dist/{ChangeLocationComponent.vue_vue_type_script_setup_true_lang-CVekIoiN.js → ChangeLocationComponent.vue_vue_type_script_setup_true_lang-DpHYhOmI.js} +1 -1
  8. package/dist/{ClosingDraftView-C3n66bbh.js → ClosingDraftView-DQQkWYOh.js} +748 -746
  9. package/dist/ClosingHistoryView-CXXd0Csp.js +769 -0
  10. package/dist/{ClosingTemplateView-DwGloYxn.js → ClosingTemplateView-Bf5Ivxjw.js} +22 -21
  11. package/dist/{CustomPrintTemplatePreview.vue_vue_type_script_setup_true_lang-9eY_r8LF.js → CustomPrintTemplatePreview.vue_vue_type_script_setup_true_lang-C3Y_rwNE.js} +1 -1
  12. package/dist/{DefaultView-JC_e4xgC.js → DefaultView-Bt8ZFV10.js} +2 -2
  13. package/dist/{DeliveryOrderPrintPreview-BBCvI67S.js → DeliveryOrderPrintPreview-BS5ZKe1f.js} +15 -15
  14. package/dist/{EmailDialog.vue_vue_type_script_setup_true_lang-H4FWc9ga.js → EmailDialog.vue_vue_type_script_setup_true_lang-BvDFKrFF.js} +10077 -9950
  15. package/dist/FeatureCapabilityBadge.vue_vue_type_script_setup_true_lang-B389iY-f.js +48 -0
  16. package/dist/FeatureCapabilityGate-BAOroN-j.js +82 -0
  17. package/dist/FeaturePageGate.vue_vue_type_script_setup_true_lang-Xapa8xyy.js +189 -0
  18. package/dist/{FmDateRangePickerChip.vue_vue_type_script_setup_true_lang-Q8Mptiv3.js → FmDateRangePickerChip.vue_vue_type_script_setup_true_lang-CgbvPK8u.js} +1 -1
  19. package/dist/{FmFilterableMenuOptions.vue_vue_type_script_setup_true_lang-CE1_yyHe.js → FmFilterableMenuOptions.vue_vue_type_script_setup_true_lang-DnCj1qv6.js} +2 -2
  20. package/dist/{FmInventoryTableToolbar.vue_vue_type_script_setup_true_lang-CGJi3f86.js → FmInventoryTableToolbar.vue_vue_type_script_setup_true_lang-CUb4VGOc.js} +2 -2
  21. package/dist/{FmMultiselectDialog-DCaRlBIy.js → FmMultiselectDialog-Bz8bNuK2.js} +2 -2
  22. package/dist/FmMultiselectDialog-CosTDuNE.js +123 -0
  23. package/dist/{FmUnitInput.vue_vue_type_script_setup_true_lang-ClaLVtpK.js → FmUnitInput.vue_vue_type_script_setup_true_lang-3OrHiybe.js} +105 -99
  24. package/dist/ImportView-BoTmcCyn.js +1540 -0
  25. package/dist/{IngredientsView-DPj9lBTK.js → IngredientsView-VED94pGW.js} +691 -689
  26. package/dist/{IntegrationExplorerView-CO2wpUR_.js → IntegrationExplorerView-B9ZY9hG1.js} +1537 -1620
  27. package/dist/IntegrationPlatformView-Bar1zj3R.js +13385 -0
  28. package/dist/{IntegrationView-DIeZoey0.js → IntegrationView-BvzBDBGp.js} +2604 -2565
  29. package/dist/{InventoryBindingForm-Cj4_Chue.js → InventoryBindingForm-DWhXHIaL.js} +1 -1
  30. package/dist/InventoryBindingForm.vue_vue_type_script_setup_true_lang-mZRrPywY.js +472 -0
  31. package/dist/{InventoryBindingSummary-yzGzd7jJ.js → InventoryBindingSummary-Imo2J8O2.js} +1 -1
  32. package/dist/JsonViewer.vue_vue_type_script_setup_true_lang-C_hg75l0.js +25 -0
  33. package/dist/NumberPrecisionInput.vue_vue_type_script_setup_true_lang-CChCnKxa.js +79 -0
  34. package/dist/PlanTierBadge.vue_vue_type_script_setup_true_lang-CM3gtYZo.js +19 -0
  35. package/dist/PlanUpgradeDialog.vue_vue_type_script_setup_true_lang-0F-yOcPC.js +79 -0
  36. package/dist/PremiumUpgradePage.vue_vue_type_script_setup_true_lang-DGAxPOEh.js +58 -0
  37. package/dist/ProductionRunDetailPage-KFKeWhhY.js +2317 -0
  38. package/dist/{ProductionRunLifecycleDialogs.vue_vue_type_script_setup_true_lang-BYyiiAWb.js → ProductionRunLifecycleDialogs.vue_vue_type_script_setup_true_lang-CobaPkUr.js} +3053 -3163
  39. package/dist/ProductionRunPage-BrXsPo-A.js +954 -0
  40. package/dist/{PublishView-CPK9NeVF.js → PublishView-_k3N44Pl.js} +3 -3
  41. package/dist/{PurchaseOrderPrintPreview-DosqWQeN.js → PurchaseOrderPrintPreview-DXVEhy-G.js} +17 -17
  42. package/dist/{ReceiveRequestView-BxSkpK2t.js → ReceiveRequestView-ByWddqiL.js} +17 -16
  43. package/dist/RecipeView-C29uNZxj.js +3272 -0
  44. package/dist/SettingsView-CyE6ZM8x.js +1005 -0
  45. package/dist/StockView-BBR404Ie.js +3003 -0
  46. package/dist/{SubsidiaryTreeDialog.vue_vue_type_script_setup_true_lang-GdGJCuc0.js → SubsidiaryTreeDialog.vue_vue_type_script_setup_true_lang-Cmnk66T9.js} +1 -1
  47. package/dist/{SupplierView-BKxKoi_0.js → SupplierView-CIB5GCwp.js} +304 -301
  48. package/dist/{SurchargeView-Db4cwhZv.js → SurchargeView-DNtEbO7I.js} +7 -7
  49. package/dist/{SystemTrailDialog.vue_vue_type_script_setup_true_lang-CpkF77Ow.js → SystemTrailDialog.vue_vue_type_script_setup_true_lang-ClCi5rLI.js} +2 -2
  50. package/dist/TableActionableRow.vue_vue_type_script_setup_true_lang-gJQQKKAC.js +71 -0
  51. package/dist/TemplatePublishDialog.vue_vue_type_script_setup_true_lang-C19KOLrQ.js +332 -0
  52. package/dist/TransferDetails.vue_vue_type_script_setup_true_lang-DD5nMsrn.js +4953 -0
  53. package/dist/TransferTemplateView-BftwH1_W.js +2347 -0
  54. package/dist/{UnitCostHistoryView-CqcyjCCd.js → UnitCostHistoryView-CE-1joTV.js} +4 -4
  55. package/dist/{UnitDisplayControl.vue_vue_type_script_setup_true_lang-DO80_8SZ.js → UnitDisplayControl.vue_vue_type_script_setup_true_lang-reJFavQF.js} +4 -4
  56. package/dist/{UnitView-BqdK1AM_.js → UnitView-T-Vo8IpV.js} +111 -106
  57. package/dist/{WarehouseView-COJM9IXM.js → WarehouseView-CzQcj5VY.js} +12 -11
  58. package/dist/{WastageTemplateView-DW3viTHN.js → WastageTemplateView-Cm5_V2zN.js} +19 -18
  59. package/dist/api/bill.d.ts +4 -2
  60. package/dist/api/bill.spec.d.ts +1 -0
  61. package/dist/api/closing.d.ts +1 -0
  62. package/dist/api/feature-flags.d.ts +4 -0
  63. package/dist/api/integration-sync-log.d.ts +0 -13
  64. package/dist/api/license.d.ts +0 -2
  65. package/dist/api/netsuite-explorer.d.ts +1 -0
  66. package/dist/api/stock.d.ts +1 -1
  67. package/dist/{app-yvK__CBL.js → app-DnOtng5V.js} +10177 -10126
  68. package/dist/app.d.ts +151 -164
  69. package/dist/app.js +1 -1
  70. package/dist/bulk-edit-simulation.helper-BZRyNbpM.js +178 -0
  71. package/dist/{closing-template-DezidSM0.js → closing-template-BiJRchG9.js} +4 -4
  72. package/dist/components/FeatureCapabilityBadge.vue.d.ts +4 -0
  73. package/dist/components/FeatureCapabilityGate.spec.d.ts +1 -0
  74. package/dist/components/FeatureCapabilityGate.vue.d.ts +5 -0
  75. package/dist/components/FeatureGateLayout.vue.d.ts +11 -0
  76. package/dist/components/FeaturePageGate.spec.d.ts +1 -0
  77. package/dist/components/FeaturePageGate.vue.d.ts +34 -0
  78. package/dist/components/FmAdminCollapsiblePanel.vue.d.ts +1 -1
  79. package/dist/components/FmDroppableField.vue.d.ts +1 -1
  80. package/dist/components/FmInventoryTableToolbar.vue.d.ts +2 -2
  81. package/dist/components/FmUnitInputProps.d.ts +1 -0
  82. package/dist/components/FmUnitInputRules.d.ts +1 -1
  83. package/dist/components/HrmPermissionGuard.vue.d.ts +1 -1
  84. package/dist/components/NumberPrecisionInput.spec.d.ts +1 -0
  85. package/dist/{views/ingredient-group/IngredientGroupView.vue.d.ts → components/PremiumUpgradePage.vue.d.ts} +0 -1
  86. package/dist/components/TemplatePublishDialog.d.ts +2 -0
  87. package/dist/components/TemplatePublishDialog.spec.d.ts +1 -0
  88. package/dist/composable/defineApi.d.ts +1 -1
  89. package/dist/{date2-2XjepIqc.js → date2-Bzlk0lSj.js} +1 -1
  90. package/dist/{dayjs.min-CNp5DLBB.js → dayjs.min-B8gqMYa7.js} +1 -1
  91. package/dist/{decimal-Z7oJdGk8.js → decimal-utE08Cjv.js} +2 -2
  92. package/dist/{defineDeepModel-CMxJn_H2.js → defineDeepModel-D_tKNP-n.js} +5 -5
  93. package/dist/{duplicate-template-BetV5oy_.js → duplicate-template-lCi99jVD.js} +1 -1
  94. package/dist/{feature-CkWaZ-5K.js → feature-Zeyz4pJe.js} +2089 -2854
  95. package/dist/feature-flags/core.d.ts +4 -2
  96. package/dist/feature-flags/portal-feature-catalog.d.ts +1 -6
  97. package/dist/feature-flags/portal-feature-catalog.spec.d.ts +1 -0
  98. package/dist/feature-flags/vue.d.ts +24 -1
  99. package/dist/feature-flags/vue.spec.d.ts +1 -0
  100. package/dist/{format-time-from-id-DatSI9uD.js → format-time-from-id-v_KvI4jM.js} +1 -1
  101. package/dist/{format-unit-display-DM5We5cx.js → format-unit-display-C8oexlpM.js} +209 -208
  102. package/dist/helper/country.spec.d.ts +1 -0
  103. package/dist/helper/menu-usage-module.d.ts +2 -1
  104. package/dist/helper/number.d.ts +5 -1
  105. package/dist/helper/rules.d.ts +1 -1
  106. package/dist/{id-to-date-Dxw2jKhy.js → id-to-date-Doi1vn9Q.js} +1 -1
  107. package/dist/{import-export.helper-BOmADwUw.js → import-export.helper-DyRPa4wa.js} +17 -17
  108. package/dist/{index-CIH9NCvs.js → index-B-SVjo8N.js} +1 -1
  109. package/dist/{index-ClYgfwW7.js → index-Bl8qrC1m.js} +2234 -2163
  110. package/dist/{JsonViewer.vue_vue_type_script_setup_true_lang-ig2zSXAB.js → index-C25C1Dg7.js} +1074 -1066
  111. package/dist/{index-7fz5sGDO.js → index-DZ9i-1uy.js} +3 -3
  112. package/dist/index-eGvSlWMU.js +1892 -0
  113. package/dist/layout/SingleColumnLayout.vue.d.ts +1 -1
  114. package/dist/{lz-string-CCsc2X7t.js → lz-string-pPNhTzCj.js} +1 -1
  115. package/dist/menu-usage-module-Bq_KLsO4.js +74 -0
  116. package/dist/{netsuite-COumFXC2.js → netsuite-C5s0JXRA.js} +254 -263
  117. package/dist/netsuite-explorer-BF-bujxD.js +79 -0
  118. package/dist/{predefined-templates-Bw9A9LNA.js → predefined-templates-C6hmqqhm.js} +1 -1
  119. package/dist/production-run-list-DR1WsaBR.js +61 -0
  120. package/dist/{purchase-order-template-BaZjdGq8.js → purchase-order-template-C0XlITpK.js} +1 -1
  121. package/dist/{recalculationUtils-t32wAurN.js → recalculationUtils-CnzCEyIJ.js} +1 -1
  122. package/dist/router/name.d.ts +2 -2
  123. package/dist/{row-action.enum-BDeudY4d.js → row-action.enum-Ci5mHFdS.js} +1 -1
  124. package/dist/rules-rAD4INHX.js +243 -0
  125. package/dist/{stock-B59sfN28.js → stock-CukGlv0u.js} +1 -1
  126. package/dist/stock-DUQYl3xe.js +78 -0
  127. package/dist/stores/feature.d.ts +41 -11
  128. package/dist/stores/feature.load-state.spec.d.ts +1 -0
  129. package/dist/stores/inventory.d.ts +0 -47
  130. package/dist/stores/inventory.no-location.spec.d.ts +1 -0
  131. package/dist/stores/supplier.d.ts +1 -1
  132. package/dist/stores/warehouse.d.ts +1 -1
  133. package/dist/style.css +1 -1
  134. package/dist/{supplier-DnbLJ_cS.js → supplier-CDPdi2B5.js} +2 -2
  135. package/dist/{surcharge-C1uE3uQa.js → surcharge-XABFccMt.js} +1 -1
  136. package/dist/tsconfig.app.tsbuildinfo +1 -1
  137. package/dist/{uom-rules-DjfyrFHJ.js → uom-rules-BbNTM-Xw.js} +1 -1
  138. package/dist/{use-ingredient-select-dialog-7A7fWyEH.js → use-ingredient-select-dialog-CxrFXfoM.js} +2 -2
  139. package/dist/use-inventory-binding-dialog-BZpguHE1.js +113 -0
  140. package/dist/{use-template-enabled-locations-C-Hqqgzt.js → use-template-enabled-locations-B9n-uc36.js} +2 -2
  141. package/dist/{use-transfer-locations-CqsXvOI2.js → use-transfer-locations-z78M6XgR.js} +14 -14
  142. package/dist/{useHrmPermission-BzwD3Ctc.js → useHrmPermission-CfMWeFGZ.js} +1 -1
  143. package/dist/{useNavigationMenu-PrZg9HS7.js → useNavigationMenu-B6dCSflb.js} +111 -117
  144. package/dist/{useSseClient-FCyLWq8k.js → useSseClient-ICUObHUB.js} +1 -1
  145. package/dist/views/changelog/composables/use-snapshot-diff.d.ts +2 -2
  146. package/dist/views/closing-draft/composables/use-closing-draft-table.d.ts +1 -1
  147. package/dist/views/closing-draft/helpers/draft-status-to-class-name.helper.d.ts +1 -1
  148. package/dist/views/import/helper/submit-rows.d.ts +1 -1
  149. package/dist/views/ingredients/components/inventory-binding/InventoryBindingForm.vue.d.ts +0 -1
  150. package/dist/views/ingredients/components/inventory-binding/composables/use-inventory-binding-dialog.d.ts +0 -1
  151. package/dist/views/ingredients/components/inventory-binding/recipe-amount-validation.spec.d.ts +1 -0
  152. package/dist/views/ingredients/components/inventory-binding/v2/InventoryBindingFormV2.vue.d.ts +0 -1
  153. package/dist/views/ingredients/components/inventory-binding/v2/composables/use-inventory-binding-dialog.d.ts +0 -1
  154. package/dist/views/ingredients/helper/is-linked-ingredient-error.d.ts +3 -1
  155. package/dist/views/{ingredient-group/components/ingredient-group-rule-field/IngredientGroupRuleField.vue.d.ts → integration/IntegrationPlatformView.vue.d.ts} +11 -24
  156. package/dist/views/integration/components/Synergy/importFn.spec.d.ts +1 -0
  157. package/dist/views/integration/components/Xilnex/importFn.spec.d.ts +1 -0
  158. package/dist/views/integration/helper/opening-balance.d.ts +22 -0
  159. package/dist/views/integration/helper/opening-balance.spec.d.ts +1 -0
  160. package/dist/views/production-run/ProductionRunDetailPage.spec.d.ts +1 -0
  161. package/dist/views/{integration/components/IntegrationSyncLogTab.vue.d.ts → production-run/ProductionRunDetailPage.vue.d.ts} +2 -2
  162. package/dist/views/production-run/ProductionRunPage.vue.d.ts +2 -0
  163. package/dist/views/production-run/features/detail/ProductionRunItemsTable.vue.d.ts +2 -2
  164. package/dist/views/production-run/features/detail/ProductionRunOverviewTab.vue.d.ts +4 -4
  165. package/dist/views/production-run/features/detail/use-production-run-detail.d.ts +19 -9
  166. package/dist/views/production-run/features/lifecycle/CancelRunDialog.vue.d.ts +4 -4
  167. package/dist/views/production-run/features/lifecycle/CloseRunDialog.vue.d.ts +4 -4
  168. package/dist/views/production-run/features/lifecycle/ProductionRunLifecycleDialogs.vue.d.ts +14 -14
  169. package/dist/views/production-run/features/lifecycle/TargetReachedDialog.vue.d.ts +4 -4
  170. package/dist/views/production-run/features/planning/ProductionRunFormDialog.vue.d.ts +4 -4
  171. package/dist/views/production-run/features/planning/ProductionRunPlanner.vue.d.ts +1 -1
  172. package/dist/views/production-run/features/planning/use-production-run-duplicate-sources.d.ts +6 -6
  173. package/dist/views/production-run/shared/helpers/production-run-navigation.d.ts +0 -1
  174. package/dist/views/production-run/shared/model/production-run-list.d.ts +1 -1
  175. package/dist/views/production-run/shared/ui/ProductionRunInfoBadge.vue.d.ts +1 -1
  176. package/dist/views/production-run/shared/ui/ProductionRunInfoText.vue.d.ts +1 -1
  177. package/dist/views/production-run/shared/ui/ProductionRunScrollHint.vue.d.ts +2 -2
  178. package/dist/views/production-run/shared/ui/ProductionRunTextarea.vue.d.ts +3 -3
  179. package/dist/views/receive-request/composables/netsuite-order-label.d.ts +11 -0
  180. package/dist/views/receive-request/composables/netsuite-order-label.spec.d.ts +1 -0
  181. package/dist/views/receive-request/composables/use-process-purchase-order.d.ts +1 -1
  182. package/dist/views/receive-request/composables/use-receive-request-form.d.ts +9 -9
  183. package/dist/views/receive-request/composables/use-receive-request-form.spec.d.ts +1 -0
  184. package/dist/views/receive-request/composables/use-receive-request-table.d.ts +7 -7
  185. package/dist/views/receive-request/import/export.spec.d.ts +1 -0
  186. package/dist/views/receive-request-bulk/BulkReceiveRequestPage.vue.d.ts +2 -0
  187. package/dist/views/receive-request-bulk/components/CreateTransferWizard.spec.d.ts +1 -0
  188. package/dist/views/receive-request-bulk/composables/use-bulk-receive-request-form.d.ts +20 -20
  189. package/dist/views/receive-request-bulk/composables/use-bulk-receive-request-form.readiness.spec.d.ts +1 -0
  190. package/dist/views/receive-request-bulk/composables/use-bulk-receive-request-table.d.ts +2 -2
  191. package/dist/views/recipe/components/recipe-bulk-editor/components/ModificationCard.spec.d.ts +1 -0
  192. package/dist/views/recipe/helper/bulk-edit-simulation.helper.d.ts +0 -1
  193. package/dist/views/recipe/helper/import-recipe.d.ts +32 -2
  194. package/dist/views/recipe/helper/import-recipe.spec.d.ts +1 -0
  195. package/dist/views/settings/PlanLicenseDisplay.spec.d.ts +1 -0
  196. package/dist/views/settings/PlanLicenseDisplay.vue.d.ts +2 -0
  197. package/dist/views/stock/components/StockRecordCard.spec.d.ts +1 -0
  198. package/dist/views/stock/components/StockRecordCard.vue.d.ts +19 -865
  199. package/dist/views/stock/components/dialog/AmendAdjustmentForm.spec.d.ts +1 -0
  200. package/dist/views/stock/components/dialog/BillInventoryInfoDialog.spec.d.ts +1 -0
  201. package/dist/views/stock/components/dialog/BillInventoryInfoDialog.vue.d.ts +36 -0
  202. package/dist/views/stock/components/dialog/ConvertSkuDialog.spec.d.ts +1 -0
  203. package/dist/views/stock/composables/use-last-closing-summary.d.ts +4 -0
  204. package/dist/views/stock/composables/use-last-closing-summary.spec.d.ts +1 -0
  205. package/dist/views/transfer-template/components/transfer-template-form/composables/use-transfer-template-items.spec.d.ts +1 -0
  206. package/dist/views/transfer-template/helpers/template-item.error.helper.spec.d.ts +1 -0
  207. package/dist/views/unit/composables/use-unit-form.spec.d.ts +1 -0
  208. package/dist/views/warehouse/components/WarehouseForm.vue.d.ts +2 -2
  209. package/dist/vue-DBxqzbt5.js +295 -0
  210. package/dist/{vue-i18n-C34f-Tph.js → vue-i18n-CdbY8MsR.js} +539 -539
  211. package/dist/{xlsx.util-X4amwe_k.js → xlsx.util-CD5NablT.js} +2 -2
  212. package/package.json +71 -66
  213. package/dist/App-DVHgBTHP.js +0 -1499
  214. package/dist/BulkReceiveRequestView-DxHWrfbi.js +0 -2656
  215. package/dist/ClosingHistoryView-kdpYGy1Y.js +0 -761
  216. package/dist/DeprecateSoonWarningDialog.vue_vue_type_script_setup_true_lang-5Cc08Svt.js +0 -58
  217. package/dist/FeatureCapabilityBadge.vue_vue_type_script_setup_true_lang-C1C8aDA6.js +0 -61
  218. package/dist/FmMultiselectDialog-yVPY5aBV.js +0 -77
  219. package/dist/ImportView-DQrVMzxN.js +0 -1302
  220. package/dist/IngredientBindedItem.vue_vue_type_script_setup_true_lang-7lT5UZc8.js +0 -51
  221. package/dist/IngredientGroupView-BMUnEaY7.js +0 -1000
  222. package/dist/InventoryBindingForm.vue_vue_type_script_setup_true_lang-CaBOK7NC.js +0 -563
  223. package/dist/NumberPrecisionInput.vue_vue_type_script_setup_true_lang-DzzTPdyF.js +0 -72
  224. package/dist/ProductionRunDetailView-Cw-ecaey.js +0 -2312
  225. package/dist/ProductionRunView-C11eseXQ.js +0 -930
  226. package/dist/RecipeView-oHDWsT0P.js +0 -3624
  227. package/dist/SettingsView-QlUNwFhM.js +0 -983
  228. package/dist/StockView-a8LbVZ_7.js +0 -2614
  229. package/dist/TableActionableRow.vue_vue_type_script_setup_true_lang-DAMpuZ1X.js +0 -84
  230. package/dist/TemplatePublishDialog.vue_vue_type_script_setup_true_lang-CCCj4WVF.js +0 -299
  231. package/dist/TransferDetails.vue_vue_type_script_setup_true_lang-CFNPXqt5.js +0 -4796
  232. package/dist/TransferTemplateView-CzwxOBMQ.js +0 -2326
  233. package/dist/menu-usage-module-BdjYEk3s.js +0 -57
  234. package/dist/number-gSLvxNqA.js +0 -138
  235. package/dist/portal-feature-catalog-yGIESKTc.js +0 -246
  236. package/dist/random-CSbEbElR.js +0 -10
  237. package/dist/rules-C1btu0Md.js +0 -98
  238. package/dist/stock-BF86TMW0.js +0 -75
  239. package/dist/use-inventory-binding-dialog-Cc1tjTfV.js +0 -152
  240. package/dist/usePromise-CbVUCxhj.js +0 -29
  241. package/dist/views/ingredient-group/components/ingredient-group-dialog/IngredientGroupDialog.vue.d.ts +0 -31
  242. package/dist/views/ingredient-group/components/ingredient-group-dialog/IngredientGroupDialogProps.d.ts +0 -10
  243. package/dist/views/ingredient-group/components/ingredient-group-form/IngredientGroupForm.vue.d.ts +0 -21
  244. package/dist/views/ingredient-group/components/ingredient-group-form/IngredientGroupFormProps.d.ts +0 -12
  245. package/dist/views/ingredient-group/composables/use-ingredient-group-actions.d.ts +0 -24
  246. package/dist/views/ingredient-group/composables/use-ingredient-group-rule-item.d.ts +0 -31
  247. package/dist/views/ingredient-group/composables/use-ingredient-group-table.d.ts +0 -77
  248. package/dist/views/integration/composables/use-integration-sync-log.d.ts +0 -45
@@ -1,4 +1,4 @@
1
- import { _ as f } from "./InventoryBindingForm.vue_vue_type_script_setup_true_lang-CaBOK7NC.js";
1
+ import { _ as f } from "./InventoryBindingForm.vue_vue_type_script_setup_true_lang-mZRrPywY.js";
2
2
  export {
3
3
  f as default
4
4
  };
@@ -0,0 +1,472 @@
1
+ import { defineComponent as Y, ref as ue, computed as F, resolveComponent as E, createElementBlock as m, createCommentVNode as I, openBlock as a, createElementVNode as n, createVNode as y, toDisplayString as f, unref as s, Fragment as $, renderList as M, normalizeStyle as me, createTextVNode as ce, reactive as G, withCtx as A, createBlock as K, nextTick as pe } from "vue";
2
+ import { a as q, v as ye, w as fe, s as ve, F as _e } from "./app-DnOtng5V.js";
3
+ import { t as xe, n as ge, i as be, e as he, f as W, I as j, a as S } from "./rules-rAD4INHX.js";
4
+ import { u as Be } from "./use-inventory-binding-dialog-BZpguHE1.js";
5
+ import { useI18n as H } from "@feedmepos/mf-common";
6
+ import { _ as ke, c as Ie, d as Ve } from "./FmUnitInput.vue_vue_type_script_setup_true_lang-3OrHiybe.js";
7
+ const N = { amount: 1, precision: 0 };
8
+ function J(v, u) {
9
+ return { amount: v.amount * u.amount, precision: v.precision + u.precision };
10
+ }
11
+ function we(v, u) {
12
+ const r = Q(u), p = J(v, r);
13
+ return ge(p.amount / 10 ** p.precision, p.precision);
14
+ }
15
+ function Q(v) {
16
+ if (v.trim().length === 0) return N;
17
+ const u = Number(v);
18
+ return Number.isFinite(u) ? xe(u, be(u)) : N;
19
+ }
20
+ function X(v, u, r = 0, p = /* @__PURE__ */ new Set(), R = N) {
21
+ if (p.has(v)) return [];
22
+ const x = new Set(p).add(v);
23
+ return u.contentsOf(v).flatMap((t, g) => {
24
+ const d = t.type === "RECIPE", c = J(t.amount ?? N, R), b = {
25
+ key: `${r}-${g}-${t.id}`,
26
+ name: u.bindingName(t),
27
+ amount: c,
28
+ unit: u.bindingUnit(t),
29
+ depth: r,
30
+ isRecipe: d
31
+ };
32
+ return d ? [b, ...X(t.id, u, r + 1, x, c)] : [b];
33
+ });
34
+ }
35
+ const Fe = {
36
+ key: 0,
37
+ class: "flex flex-col pb-8 fm-typo-en-body-sm-400"
38
+ }, Ee = {
39
+ key: 0,
40
+ class: "flex items-center gap-4 px-12 text-fm-color-typo-secondary"
41
+ }, Re = {
42
+ key: 1,
43
+ class: "flex flex-col text-fm-color-typo-secondary"
44
+ }, Ce = { class: "flex-1 line-clamp-1" }, Ue = {
45
+ key: 0,
46
+ class: "text-fm-color-typo-disabled"
47
+ }, Ae = {
48
+ key: 2,
49
+ class: "flex gap-4 px-12 text-fm-color-system-warning-400"
50
+ }, $e = /* @__PURE__ */ Y({
51
+ __name: "RecipeBindingBreakdown",
52
+ props: {
53
+ recipeId: {},
54
+ multiplier: {}
55
+ },
56
+ setup(v) {
57
+ const u = v, { t: r } = H(), p = q(), R = {
58
+ contentsOf: (d) => {
59
+ var c;
60
+ return ((c = p.recipeById[d]) == null ? void 0 : c.contains) ?? [];
61
+ },
62
+ bindingName: (d) => {
63
+ var c, b;
64
+ switch (d.type) {
65
+ case "RECIPE":
66
+ return ((c = p.recipeById[d.id]) == null ? void 0 : c.name) ?? d.id;
67
+ default:
68
+ return ((b = p.skuById[d.id]) == null ? void 0 : b.name) ?? d.id;
69
+ }
70
+ },
71
+ // a binding measurement overrides the ingredient's base unit, same as deduction reads it
72
+ bindingUnit: (d) => {
73
+ var c, b;
74
+ return d.type === "RECIPE" ? "" : ((c = d.measurement) == null ? void 0 : c.abbrev) ?? ((b = p.skuById[d.id]) == null ? void 0 : b.unit.abbrev) ?? "";
75
+ }
76
+ }, x = ue(!1), t = F(() => X(u.recipeId, R)), g = F(() => Q(u.multiplier).precision > 0);
77
+ return (d, c) => {
78
+ const b = E("FmButton"), P = E("FmIcon");
79
+ return t.value.length || g.value ? (a(), m("div", Fe, [
80
+ t.value.length ? (a(), m("div", Ee, [
81
+ n("span", null, f(s(r)("inventory.inventoryBindings.itemsLinked", { count: t.value.length }, t.value.length)), 1),
82
+ y(b, {
83
+ type: "button",
84
+ variant: "plain",
85
+ icon: x.value ? "expand_less" : "expand_more",
86
+ onClick: c[0] || (c[0] = (h) => x.value = !x.value)
87
+ }, null, 8, ["icon"])
88
+ ])) : I("", !0),
89
+ x.value ? (a(), m("div", Re, [
90
+ (a(!0), m($, null, M(t.value, (h) => (a(), m("div", {
91
+ key: h.key,
92
+ class: "flex gap-8 py-4 px-12",
93
+ style: me({ paddingLeft: `${12 + h.depth * 16}px` })
94
+ }, [
95
+ n("span", Ce, [
96
+ ce(f(h.name) + " ", 1),
97
+ h.isRecipe ? (a(), m("span", Ue, " (" + f(s(r)("inventory.inventoryBindings.recipe")) + ") ", 1)) : I("", !0)
98
+ ]),
99
+ n("span", null, f(s(we)(h.amount, d.multiplier)) + " " + f(h.unit), 1)
100
+ ], 4))), 128))
101
+ ])) : I("", !0),
102
+ g.value ? (a(), m("div", Ae, [
103
+ y(P, {
104
+ name: "warning",
105
+ color: "system-warning-300",
106
+ size: "sm"
107
+ }),
108
+ n("div", null, f(s(r)("inventory.inventoryBindings.precisionWarning")), 1)
109
+ ])) : I("", !0)
110
+ ])) : I("", !0);
111
+ };
112
+ }
113
+ }), Ne = { class: "flex flex-col gap-24" }, Pe = { class: "flex flex-col gap-16" }, Te = { class: "flex items-center" }, Se = { class: "flex-1 fm-typo-en-title-sm-600" }, Me = { class: "flex flex-col" }, De = { class: "flex py-8 px-12 border-b border-fm-color-neutral-gray-200 bg-fm-color-neutral-gray-100 h-[44px] items-center" }, ze = { class: "fm-typo-en-body-md-600 text-fm-color-typo-secondary" }, Le = {
114
+ class: "flex items-center",
115
+ style: { "min-height": "48px" }
116
+ }, Oe = { class: "flex-1 fm-typo-en-body-md-400 py-8 px-12" }, Ge = { class: "line-clamp-1" }, Ke = { class: "w-[200px]" }, We = {
117
+ key: 0,
118
+ class: "w-[52px]"
119
+ }, je = {
120
+ key: 0,
121
+ class: "flex gap-4 text-fm-color-system-error-400 fm-typo-en-body-sm-400 px-8"
122
+ }, Ye = { class: "flex flex-col gap-16" }, qe = { class: "flex items-center" }, He = { class: "flex-1 fm-typo-en-title-sm-600" }, Je = { class: "flex flex-col" }, Qe = { class: "flex py-8 px-12 border-b border-fm-color-neutral-gray-200 bg-fm-color-neutral-gray-100 h-[44px] items-center" }, Xe = { class: "flex-1 fm-typo-en-body-md-600 text-fm-color-typo-secondary" }, Ze = { class: "fm-typo-en-body-md-600 text-fm-color-typo-secondary w-[150px] px-16" }, en = {
123
+ key: 0,
124
+ class: "flex flex-col border-b border-fm-color-neutral-gray-100"
125
+ }, nn = {
126
+ class: "flex items-center w-full",
127
+ style: { "min-height": "48px" }
128
+ }, tn = { class: "flex-1 fm-typo-en-body-md-400 py-8 px-12 text-fm-color-typo-secondary line-clamp-1" }, on = {
129
+ key: 0,
130
+ class: "w-[52px]"
131
+ }, ln = { class: "flex gap-4 text-fm-color-system-error-400 fm-typo-en-body-sm-400 px-12 pb-4" }, sn = {
132
+ key: 1,
133
+ class: "flex flex-col border-b border-fm-color-neutral-gray-100"
134
+ }, rn = {
135
+ class: "flex items-center w-full",
136
+ style: { "min-height": "48px" }
137
+ }, an = { class: "flex-1 fm-typo-en-body-md-400 py-8 px-12" }, dn = { class: "line-clamp-1 w-full" }, un = { class: "w-[150px]" }, mn = {
138
+ key: 0,
139
+ class: "w-[52px]"
140
+ }, cn = { class: "flex flex-col px-12 pb-4" }, gn = /* @__PURE__ */ Y({
141
+ __name: "InventoryBindingForm",
142
+ props: {
143
+ id: {},
144
+ modelValue: { default: () => [] },
145
+ excludeBindingId: {},
146
+ rules: { default: () => [] },
147
+ iframeMode: { type: Boolean },
148
+ disabled: { type: Boolean },
149
+ readonly: { type: Boolean },
150
+ allowRecipeDecimal: { type: Boolean }
151
+ },
152
+ emits: ["update:modelValue", "click:pick-inventory-bindings"],
153
+ setup(v, { emit: u }) {
154
+ const { t: r } = H(), p = q(), R = F(() => p.recipeById), x = F(() => p.skuById), t = v, g = u, d = F(() => ye({
155
+ parentId: t.id,
156
+ bindings: t.modelValue,
157
+ recipes: p.recipes.map((o) => o._id === t.id ? {
158
+ ...o,
159
+ contains: t.modelValue
160
+ } : o),
161
+ skus: p.skus.map((o) => o._id === t.id ? {
162
+ ...o,
163
+ convert: {
164
+ inventoryBindings: t.modelValue
165
+ }
166
+ } : o),
167
+ skuGroups: []
168
+ }).inventoryBindings.filter((o) => "error" in o && o.error).map((o) => o).filter((o) => o.reason === fe.enum.circularDependency)), c = F(
169
+ () => new Set(d.value.map((e) => {
170
+ var i;
171
+ return (i = e.bindingPaths[0]) == null ? void 0 : i.id;
172
+ }))
173
+ ), b = F(() => t.modelValue.filter((e) => e.type === "RECIPE")), P = { amount: 1, precision: 0 }, h = G({});
174
+ function C(e) {
175
+ return h[e.id] ?? S(e.amount ?? P);
176
+ }
177
+ function Z(e, i) {
178
+ h[e.id] = i, ie(e.id, i, t.modelValue);
179
+ }
180
+ const { promptIngredientsBinding: ee, promptRecipesBinding: ne } = Be();
181
+ async function te() {
182
+ if (t.iframeMode) {
183
+ g("click:pick-inventory-bindings", "RECIPE");
184
+ return;
185
+ }
186
+ ne(
187
+ t.modelValue,
188
+ (e) => g("update:modelValue", e),
189
+ t.id ? [t.id] : []
190
+ );
191
+ }
192
+ const D = F(() => t.modelValue.filter((e) => e.type === "SKU") ?? []);
193
+ async function oe() {
194
+ if (t.iframeMode) {
195
+ g("click:pick-inventory-bindings", "SKU");
196
+ return;
197
+ }
198
+ ee(
199
+ t.modelValue,
200
+ (e) => g("update:modelValue", e),
201
+ t.excludeBindingId,
202
+ t.id ? [t.id] : []
203
+ );
204
+ }
205
+ function ie(e, i, o) {
206
+ if (j()(i) !== !0) return;
207
+ const _ = +i;
208
+ let V = o;
209
+ i.length > 0 && isFinite(_) ? V = o.map((B) => (B.id !== e || (B.amount = ve.fromNumber(_)), B)) : V = o.map((B) => (B.id !== e || (B.amount = { amount: 0, precision: 0 }), B)), g("update:modelValue", V);
210
+ }
211
+ function T(e, i) {
212
+ delete h[e];
213
+ const o = i.filter((_) => _.id !== e);
214
+ g("update:modelValue", o);
215
+ }
216
+ function z(e) {
217
+ var o, _;
218
+ if (e.type !== _e.enum.SKU)
219
+ throw new Error("Non-SKU binding does not have unit");
220
+ if (!((o = x.value[e.id]) == null ? void 0 : o.unit))
221
+ throw new Error(`Cannot find ingredient: ${e.id}`);
222
+ return (_ = x.value[e.id]) == null ? void 0 : _.unit;
223
+ }
224
+ function le(e) {
225
+ return !x.value[e.id];
226
+ }
227
+ function se(e) {
228
+ return { amount: e.amount, measurement: e.measurement };
229
+ }
230
+ function re(e, i, o) {
231
+ const _ = o.map((V) => V.id !== e ? V : {
232
+ ...V,
233
+ amount: i.amount,
234
+ measurement: i.measurement
235
+ });
236
+ g("update:modelValue", _);
237
+ }
238
+ const L = G({});
239
+ function ae(e) {
240
+ return L[e.id] ?? {
241
+ modelValue: {
242
+ amount: e.amount,
243
+ measurement: e.measurement
244
+ },
245
+ amountAsString: S(e.amount)
246
+ };
247
+ }
248
+ function de(e, i) {
249
+ pe(() => {
250
+ L[e.id] = {
251
+ modelValue: {
252
+ amount: e.amount,
253
+ measurement: e.measurement
254
+ },
255
+ amountAsString: i
256
+ };
257
+ });
258
+ }
259
+ return (e, i) => {
260
+ const o = E("FmFormGroup"), _ = E("FmButton"), V = E("FmTooltip"), B = E("FmTextField"), O = E("FmIcon");
261
+ return a(), m("div", Ne, [
262
+ y(o, {
263
+ disabled: e.disabled,
264
+ "model-value": e.modelValue,
265
+ rules: [
266
+ ...e.rules,
267
+ () => d.value.length ? "There is a binding error in your configuration" : !0
268
+ ]
269
+ }, {
270
+ label: A(() => i[0] || (i[0] = [
271
+ n("div", { class: "fm-typo-en-body-md-400 text-fm-color-typo-secondary" }, " Define the inventory bindings for this recipe or ingredient. ", -1)
272
+ ])),
273
+ _: 1
274
+ }, 8, ["disabled", "model-value", "rules"]),
275
+ n("div", Pe, [
276
+ n("div", Te, [
277
+ n("div", Se, f(s(r)("inventory.inventoryBindings.recipe")), 1),
278
+ e.readonly ? I("", !0) : (a(), K(_, {
279
+ key: 0,
280
+ variant: "secondary",
281
+ "text-color": "primary",
282
+ "border-color": "primary",
283
+ label: s(r)("inventory.inventoryBindings.linkRecipe"),
284
+ "prepend-icon": "link",
285
+ onClick: te
286
+ }, null, 8, ["label"]))
287
+ ]),
288
+ n("div", Me, [
289
+ n("div", De, [
290
+ n("div", ze, f(s(r)("inventory.inventoryBindings.recipe")), 1),
291
+ i[1] || (i[1] = n("div", { class: "w-[200px]" }, null, -1)),
292
+ i[2] || (i[2] = n("div", { class: "w-[52px]" }, null, -1))
293
+ ]),
294
+ (a(!0), m($, null, M(b.value, (l) => {
295
+ var U;
296
+ return a(), m("div", {
297
+ key: l.id,
298
+ class: "flex flex-col w-full border-b border-fm-color-neutral-gray-100"
299
+ }, [
300
+ n("div", Le, [
301
+ n("div", Oe, [
302
+ y(V, {
303
+ zIndex: 51,
304
+ variant: "plain",
305
+ placement: "top",
306
+ content: (U = R.value[l.id]) == null ? void 0 : U.name
307
+ }, {
308
+ default: A(() => {
309
+ var w;
310
+ return [
311
+ n("span", Ge, f((w = R.value[l.id]) == null ? void 0 : w.name), 1)
312
+ ];
313
+ }),
314
+ _: 2
315
+ }, 1032, ["content"])
316
+ ]),
317
+ n("div", Ke, [
318
+ y(o, {
319
+ disabled: e.disabled,
320
+ modelValue: s(j)()(C(l)) === !0 ? +C(l) : C(l),
321
+ rules: [s(he)(e.allowRecipeDecimal ? 5 : 0), s(W)(-1)]
322
+ }, {
323
+ default: A(({ invalid: w }) => [
324
+ y(B, {
325
+ class: "w-full",
326
+ disabled: e.disabled,
327
+ modelValue: C(l),
328
+ "onUpdate:modelValue": (k) => Z(l, k),
329
+ invalid: w
330
+ }, null, 8, ["disabled", "modelValue", "onUpdate:modelValue", "invalid"])
331
+ ]),
332
+ _: 2
333
+ }, 1032, ["disabled", "modelValue", "rules"])
334
+ ]),
335
+ e.readonly ? I("", !0) : (a(), m("div", We, [
336
+ y(_, {
337
+ disabled: e.disabled,
338
+ type: "button",
339
+ variant: "plain",
340
+ icon: "delete",
341
+ "icon-color": "#000000",
342
+ onClick: (w) => T(l.id, e.modelValue)
343
+ }, null, 8, ["disabled", "onClick"])
344
+ ]))
345
+ ]),
346
+ y($e, {
347
+ "recipe-id": l.id,
348
+ multiplier: C(l)
349
+ }, null, 8, ["recipe-id", "multiplier"]),
350
+ c.value.has(l.id) ? (a(), m("div", je, [
351
+ y(O, {
352
+ name: "error",
353
+ color: "system-error-300",
354
+ size: "sm"
355
+ }),
356
+ n("div", null, f(s(r)("inventory.inventoryBindings.circularError")), 1)
357
+ ])) : I("", !0)
358
+ ]);
359
+ }), 128))
360
+ ])
361
+ ]),
362
+ n("div", Ye, [
363
+ n("div", qe, [
364
+ n("div", He, f(s(r)("inventory.inventoryBindings.ingredient")), 1),
365
+ e.readonly ? I("", !0) : (a(), K(_, {
366
+ key: 0,
367
+ variant: "secondary",
368
+ "text-color": "primary",
369
+ "border-color": "primary",
370
+ label: s(r)("inventory.inventoryBindings.linkIngredient"),
371
+ "prepend-icon": "link",
372
+ onClick: oe
373
+ }, null, 8, ["label"]))
374
+ ]),
375
+ n("div", Je, [
376
+ n("div", Qe, [
377
+ n("div", Xe, f(s(r)("inventory.inventoryBindings.ingredient")), 1),
378
+ n("div", Ze, f(s(r)("inventory.inventoryBindings.amount")), 1),
379
+ i[3] || (i[3] = n("div", { class: "w-[52px]" }, null, -1))
380
+ ]),
381
+ (a(!0), m($, null, M(D.value, (l, U) => {
382
+ var w;
383
+ return a(), m($, {
384
+ key: l.id
385
+ }, [
386
+ le(l) ? (a(), m("div", en, [
387
+ n("div", nn, [
388
+ n("div", tn, f(l.id), 1),
389
+ e.readonly ? I("", !0) : (a(), m("div", on, [
390
+ y(_, {
391
+ disabled: e.disabled,
392
+ type: "button",
393
+ variant: "tertiary",
394
+ icon: "delete",
395
+ onClick: (k) => T(l.id, e.modelValue)
396
+ }, null, 8, ["disabled", "onClick"])
397
+ ]))
398
+ ]),
399
+ n("div", ln, [
400
+ y(O, {
401
+ name: "error",
402
+ color: "system-error-300",
403
+ size: "sm"
404
+ }),
405
+ n("div", null, f(s(r)("inventory.inventoryBindings.missingIngredient")), 1)
406
+ ])
407
+ ])) : (a(), m("div", sn, [
408
+ n("div", rn, [
409
+ n("div", an, [
410
+ y(V, {
411
+ zIndex: 51,
412
+ variant: "plain",
413
+ placement: "top",
414
+ content: (w = x.value[l.id]) == null ? void 0 : w.name
415
+ }, {
416
+ default: A(() => {
417
+ var k;
418
+ return [
419
+ n("span", dn, f((k = x.value[l.id]) == null ? void 0 : k.name), 1)
420
+ ];
421
+ }),
422
+ _: 2
423
+ }, 1032, ["content"])
424
+ ]),
425
+ n("div", un, [
426
+ y(ke, {
427
+ "model-value": se(l),
428
+ "onUpdate:modelValue": (k) => k && re(l.id, k, e.modelValue),
429
+ "onUpdate:amount": (k) => de(l, k),
430
+ unit: z(l),
431
+ placement: U === D.value.length - 1 ? "top" : "bottom",
432
+ "convert-amount-on-change-unit": "",
433
+ disabled: e.readonly
434
+ }, null, 8, ["model-value", "onUpdate:modelValue", "onUpdate:amount", "unit", "placement", "disabled"])
435
+ ]),
436
+ e.readonly ? I("", !0) : (a(), m("div", mn, [
437
+ y(_, {
438
+ disabled: e.disabled,
439
+ type: "button",
440
+ variant: "tertiary",
441
+ icon: "delete",
442
+ onClick: (k) => T(l.id, e.modelValue)
443
+ }, null, 8, ["disabled", "onClick"])
444
+ ]))
445
+ ]),
446
+ n("div", cn, [
447
+ y(o, {
448
+ modelValue: +s(S)(l.amount ?? { amount: 1, precision: 0 }),
449
+ rules: [s(W)(0)]
450
+ }, null, 8, ["modelValue", "rules"]),
451
+ y(o, {
452
+ modelValue: ae(l),
453
+ rules: [
454
+ s(Ie)(),
455
+ s(Ve)(z(l)),
456
+ () => c.value.has(l.id) ? s(r)("inventory.inventoryBindings.invalidWarning") : !0
457
+ ]
458
+ }, null, 8, ["modelValue", "rules"])
459
+ ])
460
+ ]))
461
+ ], 64);
462
+ }), 128))
463
+ ])
464
+ ])
465
+ ]);
466
+ };
467
+ }
468
+ });
469
+ export {
470
+ gn as _,
471
+ $e as a
472
+ };
@@ -1,7 +1,7 @@
1
1
  import { defineComponent as l, resolveComponent as m, createBlock as c, openBlock as d, h as g } from "vue";
2
2
  import { useI18n as p } from "@feedmepos/mf-common";
3
3
  import { components as u } from "@feedmepos/ui-library";
4
- import { F as r } from "./app-yvK__CBL.js";
4
+ import { F as r } from "./app-DnOtng5V.js";
5
5
  const w = /* @__PURE__ */ l({
6
6
  __name: "InventoryBindingSummary",
7
7
  props: {
@@ -0,0 +1,25 @@
1
+ import { defineComponent as s, ref as a, onMounted as i, onBeforeUnmount as l, createElementBlock as c, openBlock as p } from "vue";
2
+ import { E as e, b as u, j as f } from "./index-C25C1Dg7.js";
3
+ const w = /* @__PURE__ */ s({
4
+ __name: "JsonViewer",
5
+ props: {
6
+ value: {}
7
+ },
8
+ setup(t) {
9
+ const r = t, n = a(null);
10
+ let o;
11
+ return i(() => {
12
+ o = new e({
13
+ parent: n.value,
14
+ doc: JSON.stringify(r.value, null, 2),
15
+ extensions: [u, f(), e.editable.of(!1), e.lineWrapping]
16
+ });
17
+ }), l(() => o.destroy()), (m, _) => (p(), c("div", {
18
+ ref_key: "container",
19
+ ref: n
20
+ }, null, 512));
21
+ }
22
+ });
23
+ export {
24
+ w as _
25
+ };
@@ -0,0 +1,79 @@
1
+ import { defineComponent as g, computed as u, ref as k, watch as m, resolveComponent as d, createBlock as N, openBlock as _, withCtx as p, createVNode as A, createElementVNode as C, normalizeClass as D } from "vue";
2
+ import { s as c } from "./app-DnOtng5V.js";
3
+ import { I as a } from "./rules-rAD4INHX.js";
4
+ const I = ["value", "disabled"], T = /* @__PURE__ */ g({
5
+ __name: "NumberPrecisionInput",
6
+ props: {
7
+ modelValue: {},
8
+ label: {},
9
+ helperText: {},
10
+ step: {},
11
+ rules: {},
12
+ disabled: { type: Boolean }
13
+ },
14
+ emits: ["update:modelValue"],
15
+ setup(f, { emit: b }) {
16
+ const o = f, n = b, y = u(() => c.fromNumber(o.step ?? 1).precision), t = k(o.modelValue.toString());
17
+ m(
18
+ () => o.modelValue,
19
+ (e) => {
20
+ t.value = e.toString();
21
+ },
22
+ { immediate: !0 }
23
+ );
24
+ const i = (e) => e === "-" || e === ".", V = u(() => i(t.value) ? 0 : a()(t.value) === !0 ? +t.value : t.value), v = u(() => [a(), ...o.rules ?? []]);
25
+ m([() => t.value], ([e]) => {
26
+ i(e) ? n("update:modelValue", 0) : a()(e) === !0 && n("update:modelValue", +e);
27
+ });
28
+ const w = (e) => {
29
+ if (e.ctrlKey || e.altKey || e.metaKey || ["Backspace", "Tab", "Enter", "ArrowLeft", "ArrowRight", "ArrowUp", "ArrowDown"].includes(
30
+ e.key
31
+ ))
32
+ return;
33
+ const l = e.currentTarget, r = +`${l.value}${e.key}`;
34
+ if (isFinite(r)) {
35
+ if (a()(`${r}`) !== !0) {
36
+ e.preventDefault();
37
+ return;
38
+ }
39
+ c.fromNumber(r).precision > y.value && e.preventDefault();
40
+ return;
41
+ }
42
+ l.value.length === 0 && (e.key === "-" || e.key === ".") || e.preventDefault();
43
+ };
44
+ return (e, l) => {
45
+ const r = d("FmField"), s = d("FmFormGroup");
46
+ return _(), N(s, {
47
+ disabled: e.disabled,
48
+ modelValue: V.value,
49
+ rules: v.value,
50
+ "helper-text": e.helperText,
51
+ label: e.label
52
+ }, {
53
+ default: p(({ invalid: F }) => [
54
+ A(r, { invalid: F }, {
55
+ default: p(() => [
56
+ C("input", {
57
+ value: t.value,
58
+ onInput: l[0] || (l[0] = (h) => t.value = h.target.value),
59
+ onKeydown: w,
60
+ inputmode: "numeric",
61
+ class: D({
62
+ "fm-text-field--input fm-typo-en-body-lg-400": !0,
63
+ "text-fm-color-typo-primary": !e.disabled,
64
+ "text-fm-color-typo-disabled": e.disabled
65
+ }),
66
+ disabled: e.disabled
67
+ }, null, 42, I)
68
+ ]),
69
+ _: 2
70
+ }, 1032, ["invalid"])
71
+ ]),
72
+ _: 1
73
+ }, 8, ["disabled", "modelValue", "rules", "helper-text", "label"]);
74
+ };
75
+ }
76
+ });
77
+ export {
78
+ T as _
79
+ };
@@ -0,0 +1,19 @@
1
+ import { defineComponent as r, resolveComponent as n, createBlock as t, createCommentVNode as m, openBlock as p } from "vue";
2
+ const _ = /* @__PURE__ */ r({
3
+ __name: "PlanTierBadge",
4
+ props: {
5
+ tier: {}
6
+ },
7
+ setup(i) {
8
+ return (e, a) => {
9
+ const o = n("FmPill");
10
+ return e.tier === "premium" ? (p(), t(o, {
11
+ key: 0,
12
+ variant: "premium"
13
+ })) : m("", !0);
14
+ };
15
+ }
16
+ });
17
+ export {
18
+ _
19
+ };