@feedmepos/mf-connect 0.1.98-beta.4 → 0.1.98-beta.41

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 (132) hide show
  1. package/dist/{App-BGv_JihW.js → App-C6JJ9uQ8.js} +808 -665
  2. package/dist/{AuditLogs-53rnjCmD.js → AuditLogs-CAlgtDgx.js} +12 -11
  3. package/dist/{Bin-B0Q_WpuY.js → Bin-D8jwhwER.js} +8 -8
  4. package/dist/{Broadcast-PiJE1Syl.js → Broadcast-CP8DRfkT.js} +39 -36
  5. package/dist/CampaignAnalytic-MVjYBFvu.js +1826 -0
  6. package/dist/{CampaignTypeDialog.vue_vue_type_script_setup_true_lang-Dz2KsBZl.js → CampaignTypeDialog.vue_vue_type_script_setup_true_lang-DeLURz87.js} +7 -5
  7. package/dist/{Card-DlqMu3Sl.js → Card-QribXJwZ.js} +21 -20
  8. package/dist/{Collections-BWcBlDDR.js → Collections-X9xbt43V.js} +14 -13
  9. package/dist/Credit-QmbsW1eb.js +286 -0
  10. package/dist/{EditCampaignSheet.vue_vue_type_script_setup_true_lang-DCvH0lGA.js → EditCampaignSheet.vue_vue_type_script_setup_true_lang-ClNieHSo.js} +35 -30
  11. package/dist/{EffectSheet.vue_vue_type_style_index_0_lang-B_FyeWq4.js → EffectSheet.vue_vue_type_style_index_0_lang-CrGHTNhg.js} +16 -16
  12. package/dist/{Experience-DacFmPYy.js → Experience-CPGMg847.js} +112 -86
  13. package/dist/{FileSaver.min-CMZKiGkX.js → FileSaver.min-CK67LsPG.js} +1 -1
  14. package/dist/Game-BrkiEFCS.js +356 -0
  15. package/dist/GiftCardSetup-DXNBHF1A.js +542 -0
  16. package/dist/{Grab-DaBL5y3H.js → Grab-BgtDzK1B.js} +32 -31
  17. package/dist/{ImageInput.vue_vue_type_script_setup_true_lang-BaY_nQio.js → ImageInput.vue_vue_type_script_setup_true_lang-Dzv2AkKN.js} +1 -1
  18. package/dist/{Index-2UrjF35w.js → Index-KJgzalOd.js} +10 -10
  19. package/dist/{LocationPicker.vue_vue_type_script_setup_true_lang-BuVBZsCN.js → LocationPicker.vue_vue_type_script_setup_true_lang-C6SBLJGQ.js} +1 -1
  20. package/dist/{LottieAnimation.vue_vue_type_script_setup_true_lang-6wUxYqWe.js → LottieAnimation.vue_vue_type_script_setup_true_lang-Dj74lJ7b.js} +1 -1
  21. package/dist/LoyaltyDashboard-B2JpbC01.js +1345 -0
  22. package/dist/MainLayout-DlfTKHQ-.js +143 -0
  23. package/dist/{Marketing-DEp--hFd.js → Marketing-Crx_JQpi.js} +7 -6
  24. package/dist/{MarketingMaterialEdit-BHL8Ptsu.js → MarketingMaterialEdit-BfsdcMXJ.js} +15 -14
  25. package/dist/{Member-BU1YxoEV.js → Member-C50Nrsko.js} +14 -13
  26. package/dist/{MemberList-zjvJBYf0.js → MemberList-C9uUKw1o.js} +37 -35
  27. package/dist/{MemberTransactions-BvyLV69V.js → MemberTransactions-DZ7zPOHX.js} +1 -1
  28. package/dist/{MessageInput.vue_vue_type_script_setup_true_lang-_YOM1SlS.js → MessageInput.vue_vue_type_script_setup_true_lang-Du_ZGsbX.js} +5434 -5279
  29. package/dist/MetricInfoTooltip.vue_vue_type_script_setup_true_lang-Bg_0YlwG.js +38 -0
  30. package/dist/Mission-D_km8zi6.js +360 -0
  31. package/dist/{Overview-BToUlbsH.js → Overview-BBieK6qQ.js} +21 -20
  32. package/dist/Overview-B_kmLOcc.js +1316 -0
  33. package/dist/Point-D0q9N7f9.js +288 -0
  34. package/dist/Promotion-DoFTy-NK.js +423 -0
  35. package/dist/{Queue-D3vUkKN9.js → Queue-Dh5sDRHW.js} +13 -12
  36. package/dist/{Record-BViEbZZ8.js → Record-0owEBKqN.js} +9 -9
  37. package/dist/Review-DV2fnpOH.js +45 -0
  38. package/dist/ReviewFacebookCallback-D8mnAPzR.js +238 -0
  39. package/dist/ReviewGoogleCallback-CLzt_ox2.js +213 -0
  40. package/dist/{Reward-CZsvsYW_.js → Reward-Co20Xrss.js} +35 -35
  41. package/dist/{RewardGroup.vue_vue_type_script_setup_true_lang-BASPLoRa.js → RewardGroup.vue_vue_type_script_setup_true_lang-0qU49c47.js} +14 -13
  42. package/dist/{RuleGroup.vue_vue_type_script_setup_true_lang-B90meAnV.js → RuleGroup.vue_vue_type_script_setup_true_lang-qdvaXPhJ.js} +17 -15
  43. package/dist/{Segment-CN8NEg8w.js → Segment-7dQKeHWK.js} +38 -35
  44. package/dist/{SelectItems.vue_vue_type_script_setup_true_lang-BGyYQST4.js → SelectItems.vue_vue_type_script_setup_true_lang-BUVrUifO.js} +2 -2
  45. package/dist/{SendCollectionSheet.vue_vue_type_script_setup_true_lang-BxW-Kc6t.js → SendCollectionSheet.vue_vue_type_script_setup_true_lang-DDsV9TD9.js} +37 -36
  46. package/dist/{SendVoucherSheet.vue_vue_type_script_setup_true_lang-C9dwcEr5.js → SendVoucherSheet.vue_vue_type_script_setup_true_lang-DqPZpddc.js} +4 -4
  47. package/dist/{Setting-DLPbZW11.js → Setting-Bvahxs-y.js} +14 -14
  48. package/dist/{SettingAdvertisements-BIq8gS5g.js → SettingAdvertisements-fbXLRwfb.js} +12 -12
  49. package/dist/Settings-C_HWDFN8.js +179 -0
  50. package/dist/Store-8yBKDR1b.js +2413 -0
  51. package/dist/{StoreRewards-BoEjVFk6.js → StoreRewards-DKaJvoJs.js} +15 -15
  52. package/dist/{StoreTransactions.vue_vue_type_script_setup_true_lang-Bv9ABH1K.js → StoreTransactions.vue_vue_type_script_setup_true_lang-D23XzJD7.js} +400 -455
  53. package/dist/{TargetLocationInput.vue_vue_type_script_setup_true_lang-DNHgSfIg.js → TargetLocationInput.vue_vue_type_script_setup_true_lang-JaFhCK_L.js} +2 -2
  54. package/dist/{Tier-kQ6X9h-t.js → Tier-CD-CjXC3.js} +44 -41
  55. package/dist/{Title-XosVAF2Y.js → Title-C_lcgye8.js} +49 -46
  56. package/dist/{Transaction-CO6oLPKR.js → Transaction-BvUYm-rT.js} +2 -2
  57. package/dist/{UserRuleGroup.vue_vue_type_script_setup_true_lang-McMR2Y7Y.js → UserRuleGroup.vue_vue_type_script_setup_true_lang-C3Yacz7K.js} +6 -6
  58. package/dist/{Voucher-CogaCxx2.js → Voucher-CYaG0GLU.js} +156 -133
  59. package/dist/{VoucherEditor.vue_vue_type_script_setup_true_lang-DjHwHFBq.js → VoucherEditor.vue_vue_type_script_setup_true_lang-DF2JqzRe.js} +12 -12
  60. package/dist/{ZodTextField.vue_vue_type_script_setup_true_lang-Dor9klZ8.js → ZodTextField.vue_vue_type_script_setup_true_lang-B4UPqSNc.js} +2 -2
  61. package/dist/{app-C9UPXbDs.js → app-CE5hQ4Uq.js} +6656 -5653
  62. package/dist/app.js +1 -1
  63. package/dist/{business-CYpW6-Ls.js → business-CE_4siXc.js} +1 -1
  64. package/dist/{campaign-BtLa7KeF.js → campaign-BP6rvSpg.js} +74 -96
  65. package/dist/campaign-CXQtKpeb.js +100 -0
  66. package/dist/{campaign.enum-DiLhS5il.js → campaign.enum-Dx-Zo68Q.js} +1 -1
  67. package/dist/{campaign.fn-CLB9gBHo.js → campaign.fn-DKnBpE1N.js} +119 -119
  68. package/dist/{collectible.enum-CmwWcfBh.js → collectible.enum-Liy2wH3s.js} +1 -1
  69. package/dist/collection.fn-Cg16QZSp.js +26 -0
  70. package/dist/{duplicateCampaign-DGhOBd5l.js → duplicateCampaign-DbtVAGsT.js} +2 -2
  71. package/dist/{effect-CY5Y6sxy.js → effect-CLI8NI4O.js} +1 -1
  72. package/dist/{email-addresses-BEnOHWj_.js → email-addresses-DlLiZ1io.js} +2 -2
  73. package/dist/{export-BgYu7SCd.js → export-6Hr34dBU.js} +3 -3
  74. package/dist/google-C3S8u0mT.js +4 -0
  75. package/dist/{helper-DTDgoyEh.js → helper-vkjFqj70.js} +1 -1
  76. package/dist/index-BIyKgw4m.js +72 -0
  77. package/dist/{index-C8ehLvXG.js → index-BLQJ-rv3.js} +1 -1
  78. package/dist/{index-CP-7qATP.js → index-BbTIqReL.js} +1 -1
  79. package/dist/index-BuMfQxMf.js +897 -0
  80. package/dist/index-C8cXXcLk.js +45 -0
  81. package/dist/{index-kS20rM5m.js → index-CSVhIZSY.js} +589 -580
  82. package/dist/{index-zF0gIg9H.js → index-CVHacTbc.js} +1 -1
  83. package/dist/index-C_H8jFYf.js +2743 -0
  84. package/dist/{index-goRooQn5.js → index-CmNsGhDf.js} +272 -368
  85. package/dist/index-CnTeeRyJ.js +53 -0
  86. package/dist/{index-Ck3PeOQ5.js → index-CzbNobLv.js} +105 -123
  87. package/dist/index-D06n1h1b.js +146 -0
  88. package/dist/{index-CNKP1_IW.js → index-D4SDAfbP.js} +8027 -10766
  89. package/dist/{index-DntoqWT_.js → index-DVnYQ3Hs.js} +1 -1
  90. package/dist/{index-BZVhi3ZG.js → index-DcjnS5Sv.js} +2 -2
  91. package/dist/{index-DtyWsBgg.js → index-Dx9h0FNH.js} +1 -1
  92. package/dist/{index-CDk0Itu1.js → index-YgP4ihQL.js} +1 -1
  93. package/dist/{index-B4IAURA_.js → index-kedErkLZ.js} +1759 -2480
  94. package/dist/{index-CLZnH782.js → index-lnQT4P3d.js} +10 -9
  95. package/dist/{index.esm2017-C79fd6cz.js → index.esm2017-Jhv2lkrq.js} +105 -105
  96. package/dist/{loading-Dfr_97Ri.js → loading-NY-FPxVY.js} +1 -1
  97. package/dist/{lodash-BX2mJOxF.js → lodash-BC_P6kLg.js} +1 -1
  98. package/dist/{membership-ncNOUJwj.js → membership-BWaK-9FY.js} +3 -3
  99. package/dist/{money-vEtTzt04.js → money-COoh4GXK.js} +1 -1
  100. package/dist/{number-BjgTlMsp.js → number-BX5OEXgq.js} +1 -1
  101. package/dist/objectid-1SUSRtmY.js +145 -0
  102. package/dist/{plugins-BVGqEmE1.js → plugins-ur-FAoye.js} +3 -3
  103. package/dist/remy-Qz_pNsUS.js +13 -0
  104. package/dist/{reward-BGTLhhzT.js → reward-DSsylZ22.js} +1 -1
  105. package/dist/{rule-BB2VX3Gy.js → rule-BM9GUd1C.js} +3 -3
  106. package/dist/rule-builder-gC9LH2AC.js +126 -0
  107. package/dist/{template-DLiHnpjK.js → template-CUV3AMFI.js} +6 -6
  108. package/dist/timezone-BFZhekOU.js +20 -0
  109. package/dist/transaction.fn-C5MlkEIC.js +64 -0
  110. package/dist/{trigger-DrKnfSoi.js → trigger-CbjiuoSo.js} +14 -14
  111. package/dist/useMarketingMaterialActions-BLisTieA.js +96 -0
  112. package/dist/{usePagination-Dgd-onzU.js → usePagination-Caah4sJr.js} +1 -1
  113. package/dist/{user-BcDUmNrZ.js → user-BZC4P_jL.js} +1 -1
  114. package/dist/{vue-i18n-DNBGmwox.js → vue-i18n-BYz7XAr_.js} +390 -390
  115. package/dist/{xlsx-BX-U0_Au.js → xlsx-Bn7BqUFA.js} +1 -1
  116. package/dist/{zod-Mx51GBPY.js → zod-DHH42rXG.js} +1 -1
  117. package/package.json +3 -3
  118. package/dist/Credit-CMfcuj5n.js +0 -260
  119. package/dist/Game-DXKnGuhR.js +0 -330
  120. package/dist/LoyaltyDashboard-DIArPp71.js +0 -1082
  121. package/dist/MainLayout-BjvTxTPG.js +0 -41
  122. package/dist/Mission-BNYk_aPM.js +0 -334
  123. package/dist/Point-B-L2326L.js +0 -262
  124. package/dist/Promotion-sMKGkL4w.js +0 -397
  125. package/dist/Review-CMBAk-Qu.js +0 -1067
  126. package/dist/ReviewFacebookCallback-BCJTFy3b.js +0 -243
  127. package/dist/ReviewGoogleCallback-DKUG075r.js +0 -208
  128. package/dist/Store-DNB3gUIR.js +0 -1996
  129. package/dist/campaign-CtoHyXVT.js +0 -219
  130. package/dist/index-P8Qh2yIP.js +0 -52
  131. package/dist/objectid-C9DiLwge.js +0 -145
  132. package/dist/useMarketingMaterialActions-B6zaDbNE.js +0 -107
@@ -1,21 +1,23 @@
1
1
  import { defineComponent as P, computed as M, resolveComponent as k, openBlock as r, createElementBlock as V, createElementVNode as C, createVNode as v, unref as e, createTextVNode as ne, toDisplayString as A, withCtx as B, onMounted as Z, createBlock as g, createCommentVNode as N, ref as W, watch as pe, Fragment as q, renderList as $, normalizeClass as K, resolveDynamicComponent as me, onBeforeMount as ce, isRef as fe, createSlots as ye } from "vue";
2
- import { m as ge, C as _e, n as ke, a as he, o as Ee } from "./index-kS20rM5m.js";
3
- import { R as Y, a as Ve } from "./index-goRooQn5.js";
2
+ import { m as ge, C as _e, n as ke, a as he, o as Ee } from "./index-CSVhIZSY.js";
3
+ import { R as Y, a as Ve } from "./rule-builder-gC9LH2AC.js";
4
4
  import { useDialog as ue, useDialogChild as ve, useSnackbar as Te } from "@feedmepos/ui-library";
5
- import { u as G } from "./vue-i18n-DNBGmwox.js";
6
- import { a as Se, R as w, S as Fe, C as j, g as xe, W as Re, T as ie, O as de } from "./rule-BB2VX3Gy.js";
7
- import { p as Ue } from "./plugins-BVGqEmE1.js";
5
+ import { u as G } from "./vue-i18n-BYz7XAr_.js";
6
+ import { a as Se, R as w, S as Fe, C as j, g as xe, W as Re, T as ie, O as de } from "./rule-BM9GUd1C.js";
7
+ import { p as Ue } from "./plugins-ur-FAoye.js";
8
8
  import { h as ae } from "./moment-D7p2TMB-.js";
9
- import { z as Ce } from "./app-C9UPXbDs.js";
10
- import { u as X } from "./membership-ncNOUJwj.js";
11
- import { u as te } from "./business-CYpW6-Ls.js";
12
- import "./index-CNKP1_IW.js";
9
+ import { z as Ce } from "./app-CE5hQ4Uq.js";
10
+ import { u as X } from "./membership-BWaK-9FY.js";
11
+ import { u as te } from "./business-CE_4siXc.js";
12
+ import "./index-D4SDAfbP.js";
13
13
  import { _ as O } from "./CustomSelect.vue_vue_type_script_setup_true_lang-Du7fRSZC.js";
14
14
  import { c as be } from "./object-BYyQ0PZp.js";
15
- import { Z as le } from "./zod-Mx51GBPY.js";
16
- import { _ as Ye } from "./SelectItems.vue_vue_type_script_setup_true_lang-BGyYQST4.js";
17
- import "./index-B4IAURA_.js";
18
- import "./index-CLZnH782.js";
15
+ import { Z as le } from "./zod-DHH42rXG.js";
16
+ import { _ as Ye } from "./SelectItems.vue_vue_type_script_setup_true_lang-BUVrUifO.js";
17
+ import "./index-CmNsGhDf.js";
18
+ import "./index-kedErkLZ.js";
19
+ import "./index-BuMfQxMf.js";
20
+ import "./index-lnQT4P3d.js";
19
21
  const Oe = { class: "flex items-center justify-between" }, De = { class: "flex items-center gap-8 xs:flex-wrap" }, we = { class: "text-fm-color-primary line-clamp-1 text-ellipsis" }, qe = /* @__PURE__ */ P({
20
22
  __name: "RuleEntry",
21
23
  props: {
@@ -1819,7 +1821,7 @@ const Be = [
1819
1821
  });
1820
1822
  };
1821
1823
  }
1822
- }), Vt = { class: "fm-typo-en-body-lg-400 text-fm-color-typo-secondary" }, $t = /* @__PURE__ */ P({
1824
+ }), Vt = { class: "fm-typo-en-body-lg-400 text-fm-color-typo-secondary" }, Wt = /* @__PURE__ */ P({
1823
1825
  __name: "RuleGroup",
1824
1826
  props: {
1825
1827
  triggerType: {
@@ -1906,6 +1908,6 @@ const Be = [
1906
1908
  }
1907
1909
  });
1908
1910
  export {
1909
- $t as _,
1911
+ Wt as _,
1910
1912
  re as a
1911
1913
  };
@@ -1,38 +1,41 @@
1
1
  import { defineComponent as le, ref as W, resolveComponent as S, openBlock as r, createElementBlock as k, createElementVNode as s, createVNode as d, unref as e, createCommentVNode as J, withCtx as $, Fragment as Z, renderList as me, createBlock as V, toDisplayString as D, normalizeClass as ce, computed as O, onMounted as we, isRef as Te, createSlots as Ee, h as B, onBeforeMount as De } from "vue";
2
2
  import { _ as $e } from "./campaign-CpzFl8Vr.js";
3
- import { n as Ae, p as Pe } from "./plugins-BVGqEmE1.js";
4
- import { u as Re } from "./loading-Dfr_97Ri.js";
3
+ import { n as Ae, p as Pe } from "./plugins-ur-FAoye.js";
4
+ import { u as Re } from "./loading-NY-FPxVY.js";
5
5
  import { FmButtonVariant as re, useSnackbar as Ne, components as ae } from "@feedmepos/ui-library";
6
- import { u as Fe, _ as Ce } from "./usePagination-Dgd-onzU.js";
7
- import { u as pe } from "./vue-i18n-DNBGmwox.js";
8
- import { R as ye } from "./index-goRooQn5.js";
9
- import { i as Be, j as U, D as Ue, k as Ve, c as ge } from "./index-B4IAURA_.js";
10
- import "./index-kS20rM5m.js";
11
- import { F as ve, z as Le } from "./index-CNKP1_IW.js";
12
- import "./index-CLZnH782.js";
13
- import { u as de, w as ke } from "./xlsx-BX-U0_Au.js";
14
- import { e as Ye, M as ze } from "./email-addresses-BEnOHWj_.js";
15
- import { Z as Oe } from "./zod-Mx51GBPY.js";
16
- import { u as je } from "./app-wDQR6dpb.js";
17
- import { _ as qe } from "./ZodTextField.vue_vue_type_script_setup_true_lang-Dor9klZ8.js";
18
- import { _ as Ge } from "./RuleGroup.vue_vue_type_script_setup_true_lang-B90meAnV.js";
19
- import { u as He, v as Je, w as Ke } from "./index.esm2017-C79fd6cz.js";
20
- import { F as Qe } from "./FileSaver.min-CMZKiGkX.js";
6
+ import { u as Fe, _ as Ce } from "./usePagination-Caah4sJr.js";
7
+ import { u as pe } from "./vue-i18n-BYz7XAr_.js";
8
+ import "./index-CmNsGhDf.js";
9
+ import { g as Be, h as U, D as Ue, i as Ve } from "./index-kedErkLZ.js";
10
+ import "./index-CSVhIZSY.js";
11
+ import { F as ye } from "./index-D4SDAfbP.js";
12
+ import { a as ge } from "./index-BuMfQxMf.js";
13
+ import "./index-lnQT4P3d.js";
14
+ import { u as de, w as ke } from "./xlsx-Bn7BqUFA.js";
15
+ import { e as Le, M as Ye } from "./email-addresses-DlLiZ1io.js";
16
+ import { Z as ze } from "./zod-DHH42rXG.js";
17
+ import { u as Oe } from "./app-wDQR6dpb.js";
18
+ import { z as je } from "./index-C_H8jFYf.js";
19
+ import { R as ve } from "./rule-builder-gC9LH2AC.js";
20
+ import { _ as qe } from "./ZodTextField.vue_vue_type_script_setup_true_lang-B4UPqSNc.js";
21
+ import { _ as Ge } from "./RuleGroup.vue_vue_type_script_setup_true_lang-qdvaXPhJ.js";
22
+ import { u as He, v as Je, w as Ke } from "./index.esm2017-Jhv2lkrq.js";
23
+ import { F as Qe } from "./FileSaver.min-CK67LsPG.js";
21
24
  import { h as se } from "./moment-D7p2TMB-.js";
22
- import { s as z, u as We } from "./membership-ncNOUJwj.js";
25
+ import { s as z, u as We } from "./membership-BWaK-9FY.js";
23
26
  import { o as Ze } from "./objectId-dwaoBfJX.js";
24
27
  import { J as Xe } from "./JsonViewer-v8_C7l5N.js";
25
- import { u as Ie } from "./business-CYpW6-Ls.js";
26
- import { f as et } from "./number-BjgTlMsp.js";
27
- import { t as tt } from "./money-vEtTzt04.js";
28
- import "./index-DtyWsBgg.js";
28
+ import { u as Ie } from "./business-CE_4siXc.js";
29
+ import { f as et } from "./number-BX5OEXgq.js";
30
+ import { t as tt } from "./money-COoh4GXK.js";
31
+ import "./index-Dx9h0FNH.js";
29
32
  import { useRouter as ot } from "vue-router";
30
- import { m as _e } from "./index-DntoqWT_.js";
31
- import { R as xe } from "./app-C9UPXbDs.js";
33
+ import { m as _e } from "./index-DVnYQ3Hs.js";
34
+ import { R as xe } from "./app-CE5hQ4Uq.js";
32
35
  const nt = Be.extend({
33
- _id: ve.optional(),
34
- business: ve.optional(),
35
- file: Le.any().nullish()
36
+ _id: ye.optional(),
37
+ business: ye.optional(),
38
+ file: je.any().nullish()
36
39
  });
37
40
  var at = { firebase: { apiKey: "AIzaSyAj8JdCHtP0Vc5vZobCfgoLzWxPIn0WUG4", authDomain: "feedme-dev-4c3ef.firebaseapp.com", databaseURL: "https://feedme-dev-4c3ef.firebaseio.com", projectId: "feedme-dev-4c3ef", storageBucket: "feedme-dev-4c3ef.appspot.com", messagingSenderId: "458797803788", appId: "1:458797803788:web:37f2af2926a84288f0c129", measurementId: "G-J2QG09D2Q7" }, assetBucketUrl: "feedme-dev-4c3ef.appspot.com", importFilesBucketUrl: "feedme-dev-4c3ef.appspot.com", clientId: "1a362d621873497b277ea55258cc82594ba148d235257f7bd44ea2acc132d8a4" };
38
41
  const st = { class: "flex flex-col space-y-16" }, lt = {
@@ -324,11 +327,11 @@ const st = { class: "flex flex-col space-y-16" }, lt = {
324
327
  __name: "SegmentSheet",
325
328
  emits: ["update:model-value"],
326
329
  setup(t, { expose: f, emit: c }) {
327
- const M = je(), { t: b } = pe(), _ = W(!1), u = W(!1), T = {
330
+ const M = Oe(), { t: b } = pe(), _ = W(!1), u = W(!1), T = {
328
331
  name: "",
329
332
  isActive: !0,
330
333
  type: U.enum.DYNAMIC,
331
- rule: ye.scaffoldGroup(),
334
+ rule: ve.scaffoldGroup(),
332
335
  members: []
333
336
  }, E = nt, a = W(T), m = O(() => !!a.value.defaultKey), i = O(
334
337
  () => a.value.defaultKey ? `connect.loyalty.segment.default_segments.${a.value.defaultKey.toLowerCase()}` : void 0
@@ -358,7 +361,7 @@ const st = { class: "flex flex-col space-y-16" }, lt = {
358
361
  v === U.enum.STATIC ? x() : u.value = !1;
359
362
  }
360
363
  async function I() {
361
- a.value.type === U.enum.STATIC ? (a.value.rule = ye.scaffoldGroup(), a.value.isActive = !0) : a.value.file = void 0, K("update:model-value", a.value);
364
+ a.value.type === U.enum.STATIC ? (a.value.rule = ve.scaffoldGroup(), a.value.isActive = !0) : a.value.file = void 0, K("update:model-value", a.value);
362
365
  }
363
366
  async function G(v) {
364
367
  a.value.type = v;
@@ -447,7 +450,7 @@ const st = { class: "flex flex-col space-y-16" }, lt = {
447
450
  modelValue: e(a).name,
448
451
  "onUpdate:modelValue": l[1] || (l[1] = (w) => e(a).name = w),
449
452
  label: "Segment title",
450
- schema: e(Oe).typeAtPath(e(E), "name")
453
+ schema: e(ze).typeAtPath(e(E), "name")
451
454
  }, null, 8, ["modelValue", "schema"])),
452
455
  e(m) ? J("", !0) : (r(), k("div", Tt, [
453
456
  l[11] || (l[11] = s("div", { class: "fm-typo-en-title-sm-800" }, "Segment Type", -1)),
@@ -524,7 +527,7 @@ const Nt = {
524
527
  const f = O(() => Rt.locations.map((C) => ({
525
528
  label: C.name,
526
529
  value: C._id
527
- }))), c = (a = Ye.parseOneAddress(
530
+ }))), c = (a = Le.parseOneAddress(
528
531
  t == null ? void 0 : t.email
529
532
  )) != null && a.domain.includes("feedmepos.com") ? void 0 : t.email, M = (i = ((m = t == null ? void 0 : t.collection) == null ? void 0 : m.TITLE) || []) == null ? void 0 : i.reduce(
530
533
  (C, N) => {
@@ -581,7 +584,7 @@ const Nt = {
581
584
  )}`
582
585
  };
583
586
  }
584
- }, Bt = { class: "flex items-center" }, Ut = { class: "fm-typo-en-title-md-600 fm-step-title line-clamp-2 mr-8" }, Vt = { class: "px-24 flex flex-col gap-y-16" }, Lt = { class: "fm-typo-en-body-md-600 text-fm-color-typo-secondary" }, Yt = { class: "flex flex-wrap items-center gap-8" }, zt = { class: "fm-typo-en-body-md-600" }, Ot = { class: "fm-typo-en-body-md-600 text-fm-color-typo-secondary" }, jt = { class: "flex flex-col gap-16 text-center" }, qt = { class: "fm-typo-en-title-sm-800" }, Gt = { class: "fm-typo-en-body-md-400 text-fm-color-typo-secondary" }, be = "text-fm-color-typo-info bg-fm-color-system-info-100", Co = /* @__PURE__ */ le({
587
+ }, Bt = { class: "flex items-center" }, Ut = { class: "fm-typo-en-title-md-600 fm-step-title line-clamp-2 mr-8" }, Vt = { class: "px-24 flex flex-col gap-y-16" }, Lt = { class: "fm-typo-en-body-md-600 text-fm-color-typo-secondary" }, Yt = { class: "flex flex-wrap items-center gap-8" }, zt = { class: "fm-typo-en-body-md-600" }, Ot = { class: "fm-typo-en-body-md-600 text-fm-color-typo-secondary" }, jt = { class: "flex flex-col gap-16 text-center" }, qt = { class: "fm-typo-en-title-sm-800" }, Gt = { class: "fm-typo-en-body-md-400 text-fm-color-typo-secondary" }, be = "text-fm-color-typo-info bg-fm-color-system-info-100", Mo = /* @__PURE__ */ le({
585
588
  __name: "Segment",
586
589
  setup(t) {
587
590
  const { minor: f } = Re, { t: c } = pe(), M = Ie(), { mapMemberExportRow: b } = Nt, _ = Ne(), u = ot(), T = W(0);
@@ -755,7 +758,7 @@ const Nt = {
755
758
  rowsPerPage: 1e3,
756
759
  page: 1,
757
760
  rowsNumber: 0
758
- }, F = new ze(), w = m(o), R = (await _e.read({
761
+ }, F = new Ye(), w = m(o), R = (await _e.read({
759
762
  limit: 1,
760
763
  skip: 0,
761
764
  sortBy: n.sortBy,
@@ -1010,5 +1013,5 @@ const Nt = {
1010
1013
  }
1011
1014
  });
1012
1015
  export {
1013
- Co as default
1016
+ Mo as default
1014
1017
  };
@@ -1,6 +1,6 @@
1
1
  import { defineComponent as N, computed as f, ref as V, onMounted as H, resolveComponent as _, openBlock as c, createElementBlock as u, createVNode as i, withCtx as F, createElementVNode as p, toDisplayString as q, normalizeClass as A, Fragment as x, renderList as S, createCommentVNode as B } from "vue";
2
- import { F as D } from "./app-C9UPXbDs.js";
3
- import "./index-CNKP1_IW.js";
2
+ import { F as D } from "./app-CE5hQ4Uq.js";
3
+ import "./index-D4SDAfbP.js";
4
4
  import { c as E } from "./object-BYyQ0PZp.js";
5
5
  const M = { class: "flex flex-col flex-nowrap" }, T = { class: "flex gap-16 items-center w-full" }, $ = { class: "flex grow items-center" }, z = { class: "grow text-fm-color-typo-secondary" }, K = { key: 0 }, J = { class: "px-16" }, X = /* @__PURE__ */ N({
6
6
  __name: "SelectItems",
@@ -1,34 +1,35 @@
1
- import { defineComponent as L, ref as p, computed as C, onMounted as P, resolveComponent as i, openBlock as $, createBlock as D, unref as e, isRef as H, withCtx as S, createElementVNode as v, createVNode as c, toDisplayString as w } from "vue";
2
- import { u as O } from "./loading-Dfr_97Ri.js";
3
- import { p as Z } from "./plugins-BVGqEmE1.js";
1
+ import { defineComponent as L, ref as p, computed as C, onMounted as P, resolveComponent as i, openBlock as $, createBlock as D, unref as e, isRef as H, withCtx as S, createElementVNode as b, createVNode as c, toDisplayString as w } from "vue";
2
+ import { u as O } from "./loading-NY-FPxVY.js";
3
+ import { p as Z } from "./plugins-ur-FAoye.js";
4
4
  import { u as q } from "./app-wDQR6dpb.js";
5
- import { m as z } from "./index-DntoqWT_.js";
6
- import "./index-goRooQn5.js";
7
- import { b as G } from "./index-B4IAURA_.js";
8
- import "./index-kS20rM5m.js";
9
- import "./index-CNKP1_IW.js";
10
- import "./index-CLZnH782.js";
11
- import { Z as d } from "./zod-Mx51GBPY.js";
12
- import { z as Y } from "./app-C9UPXbDs.js";
13
- import { u as j } from "./vue-i18n-DNBGmwox.js";
14
- import { c as J } from "./campaign-CtoHyXVT.js";
15
- const K = { class: "fm-typo-en-body-lg-600" }, Q = { class: "fm-typo-en-body-lg-400" }, W = { class: "flex items-center gap-8" }, fe = /* @__PURE__ */ L({
5
+ import { m as z } from "./index-DVnYQ3Hs.js";
6
+ import "./index-CmNsGhDf.js";
7
+ import { a as G } from "./index-kedErkLZ.js";
8
+ import "./index-CSVhIZSY.js";
9
+ import "./index-D4SDAfbP.js";
10
+ import "./index-BuMfQxMf.js";
11
+ import "./index-lnQT4P3d.js";
12
+ import { Z as d } from "./zod-DHH42rXG.js";
13
+ import { z as Y } from "./app-CE5hQ4Uq.js";
14
+ import { u as j } from "./vue-i18n-BYz7XAr_.js";
15
+ import { c as J } from "./index-D06n1h1b.js";
16
+ const K = { class: "fm-typo-en-body-lg-600" }, Q = { class: "fm-typo-en-body-lg-400" }, W = { class: "flex items-center gap-8" }, he = /* @__PURE__ */ L({
16
17
  __name: "SendCollectionSheet",
17
18
  emits: ["success"],
18
19
  setup(X, { expose: V, emit: I }) {
19
- const { t: l } = j(), { minor: k } = O, A = I, n = p({
20
+ const { t: m } = j(), { minor: k } = O, A = I, n = p({
20
21
  memberId: [],
21
22
  amount: 1,
22
23
  ref: ""
23
- }), h = p(null), f = p(), b = p([]), r = p(!1), _ = p(), T = G.extend({
24
+ }), h = p(null), f = p(), v = p([]), r = p(!1), _ = p(), T = G.extend({
24
25
  ref: Y.string().max(50, "Reference must be at most 50 characters").optional()
25
26
  }), F = C(() => {
26
27
  var a;
27
28
  switch ((a = h.value) == null ? void 0 : a.type) {
28
29
  case "MISSION":
29
- return l("connect.sendCollectionSheet.stamp");
30
+ return m("connect.sendCollectionSheet.stamp");
30
31
  case "GAME":
31
- return l("connect.sendCollectionSheet.game_token");
32
+ return m("connect.sendCollectionSheet.game_token");
32
33
  default:
33
34
  return "Unknown";
34
35
  }
@@ -54,28 +55,28 @@ const K = { class: "fm-typo-en-body-lg-600" }, Q = { class: "fm-typo-en-body-lg-
54
55
  search: a,
55
56
  descending: !1
56
57
  });
57
- b.value = t.resources.map((s) => ({
58
+ v.value = t.resources.map((s) => ({
58
59
  label: `${s.name} (${s.phoneNumber})`,
59
60
  value: s._id
60
61
  }));
61
- const m = 100;
62
- await new Promise((s) => setTimeout(s, m));
62
+ const l = 100;
63
+ await new Promise((s) => setTimeout(s, l));
63
64
  }
64
65
  async function U() {
65
66
  var t;
66
67
  await Z.confirm(
67
- l("connect.sendCollectionSheet.confirmation_message", {
68
+ m("connect.sendCollectionSheet.confirmation_message", {
68
69
  amount: n.value.amount,
69
70
  type: F.value,
70
- memberName: f.value ? (t = b.value.find((m) => m.value === f.value)) == null ? void 0 : t.label : "Unknown Member"
71
+ memberName: f.value ? (t = v.value.find((l) => l.value === f.value)) == null ? void 0 : t.label : "Unknown Member"
71
72
  }),
72
- l("connect.common.confirm"),
73
- l("connect.common.confirm"),
74
- l("connect.common.cancel")
73
+ m("connect.common.confirm"),
74
+ m("connect.common.confirm"),
75
+ m("connect.common.cancel")
75
76
  ) && await k(
76
77
  async () => {
77
- var m;
78
- await J.sendStamp((m = h.value) == null ? void 0 : m._id.toString(), {
78
+ var l;
79
+ await J.sendStamp((l = h.value) == null ? void 0 : l._id.toString(), {
79
80
  memberId: n.value.memberId,
80
81
  amount: n.value.amount,
81
82
  ref: n.value.ref
@@ -93,11 +94,11 @@ const K = { class: "fm-typo-en-body-lg-600" }, Q = { class: "fm-typo-en-body-lg-
93
94
  }), P(async () => {
94
95
  await y("");
95
96
  }), (a, t) => {
96
- const m = i("FmCard"), s = i("FmSelect"), B = i("FmStepperField"), N = i("FmTextField"), E = i("FmForm"), x = i("FmButton"), R = i("FmSideSheet");
97
+ const l = i("FmCard"), s = i("FmSelect"), B = i("FmStepperField"), N = i("FmTextField"), E = i("FmForm"), x = i("FmButton"), R = i("FmSideSheet");
97
98
  return $(), D(R, {
98
99
  "max-width": 560,
99
100
  "dismiss-away": !0,
100
- header: e(l)("connect.sendCollectionSheet.title", {
101
+ header: e(m)("connect.sendCollectionSheet.title", {
101
102
  type: e(F)
102
103
  }),
103
104
  modelValue: e(r),
@@ -107,7 +108,7 @@ const K = { class: "fm-typo-en-body-lg-600" }, Q = { class: "fm-typo-en-body-lg-
107
108
  ]
108
109
  }, {
109
110
  "side-sheet-footer": S(() => [
110
- v("div", W, [
111
+ b("div", W, [
111
112
  c(x, {
112
113
  label: "Send",
113
114
  loading: e(q)().isLoading,
@@ -133,15 +134,15 @@ const K = { class: "fm-typo-en-body-lg-600" }, Q = { class: "fm-typo-en-body-lg-
133
134
  blameFormChildOnValidationFailed: ""
134
135
  }, {
135
136
  default: S(() => [
136
- c(m, {
137
+ c(l, {
137
138
  variant: "outlined",
138
139
  class: "p-16"
139
140
  }, {
140
141
  default: S(() => {
141
142
  var o;
142
143
  return [
143
- v("div", K, w(e(l)("connect.campaign.common.campaign")), 1),
144
- v("div", Q, w((o = e(h)) == null ? void 0 : o.name), 1)
144
+ b("div", K, w(e(m)("connect.campaign.common.campaign")), 1),
145
+ b("div", Q, w((o = e(h)) == null ? void 0 : o.name), 1)
145
146
  ];
146
147
  }),
147
148
  _: 1
@@ -153,7 +154,7 @@ const K = { class: "fm-typo-en-body-lg-600" }, Q = { class: "fm-typo-en-body-lg-
153
154
  }),
154
155
  label: "Select member",
155
156
  searchable: "",
156
- items: e(b),
157
+ items: e(v),
157
158
  onSearch: y,
158
159
  rules: [(o) => !!o || "Member is required"],
159
160
  "helper-text": "Type to search member",
@@ -184,5 +185,5 @@ const K = { class: "fm-typo-en-body-lg-600" }, Q = { class: "fm-typo-en-body-lg-
184
185
  }
185
186
  });
186
187
  export {
187
- fe as _
188
+ he as _
188
189
  };
@@ -1,11 +1,11 @@
1
1
  import { defineComponent as O, ref as p, computed as g, watch as T, onMounted as q, resolveComponent as x, openBlock as I, createBlock as G, unref as t, isRef as k, withCtx as z, createElementVNode as n, createVNode as s, toDisplayString as f, createElementBlock as H, createCommentVNode as K } from "vue";
2
2
  import { J as Q } from "./JsonViewer-v8_C7l5N.js";
3
3
  import { _ as F } from "./FmTableSelection.vue_vue_type_script_setup_true_lang-DzcUc0_w.js";
4
- import { u as W } from "./loading-Dfr_97Ri.js";
4
+ import { u as W } from "./loading-NY-FPxVY.js";
5
5
  import { u as X } from "./app-wDQR6dpb.js";
6
- import { l as Y } from "./lodash-BX2mJOxF.js";
7
- import { m as Z } from "./index-DntoqWT_.js";
8
- import { c as ee } from "./campaign-CtoHyXVT.js";
6
+ import { l as Y } from "./lodash-BC_P6kLg.js";
7
+ import { m as Z } from "./index-DVnYQ3Hs.js";
8
+ import { c as ee } from "./index-D06n1h1b.js";
9
9
  const ae = { class: "space-y-16" }, te = { class: "fm-typo-en-body-md-600" }, oe = { class: "flex items-center justify-end" }, le = {
10
10
  key: 0,
11
11
  class: "basis-72 bg-white flex items-center justify-between px-24 pt-6 border-t border-fm-color-border"
@@ -1,23 +1,23 @@
1
1
  import { defineComponent as Le, ref as $, computed as j, onMounted as Ze, resolveComponent as N, openBlock as U, createBlock as te, withCtx as H, createElementVNode as p, createVNode as P, unref as c, isRef as Me, watch as At, createElementBlock as x, toDisplayString as B, Fragment as Z, renderList as Se, createTextVNode as X, createCommentVNode as we } from "vue";
2
2
  import { h as Bt } from "./moment-D7p2TMB-.js";
3
- import { Z as qe } from "./zod-Mx51GBPY.js";
3
+ import { Z as qe } from "./zod-DHH42rXG.js";
4
4
  import { useDialog as et } from "@feedmepos/ui-library";
5
- import { u as Pt } from "./loading-Dfr_97Ri.js";
5
+ import { u as Pt } from "./loading-NY-FPxVY.js";
6
6
  import { u as Mt } from "./app-wDQR6dpb.js";
7
- import { u as Ie, l as tt } from "./business-CYpW6-Ls.js";
8
- import { u as nt } from "./membership-ncNOUJwj.js";
9
- import { P as be } from "./index-CNKP1_IW.js";
10
- import { M as St, l as It } from "./index-B4IAURA_.js";
11
- import { _ as Tt } from "./ImageInput.vue_vue_type_script_setup_true_lang-BaY_nQio.js";
12
- import { c as ot, p as Nt, f as re } from "./plugins-BVGqEmE1.js";
13
- import { p as Ut, r as Ft, _ as Lt } from "./TargetLocationInput.vue_vue_type_script_setup_true_lang-DNHgSfIg.js";
14
- import { u as st } from "./vue-i18n-DNBGmwox.js";
15
- import { M as Rt, _ as kt } from "./MessageInput.vue_vue_type_script_setup_true_lang-_YOM1SlS.js";
7
+ import { u as Ie, l as tt } from "./business-CE_4siXc.js";
8
+ import { u as nt } from "./membership-BWaK-9FY.js";
9
+ import { P as be } from "./index-D4SDAfbP.js";
10
+ import { m as St, b as It } from "./index-BuMfQxMf.js";
11
+ import { _ as Tt } from "./ImageInput.vue_vue_type_script_setup_true_lang-Dzv2AkKN.js";
12
+ import { c as ot, p as Nt, f as re } from "./plugins-ur-FAoye.js";
13
+ import { p as Ut, r as Ft, _ as Lt } from "./TargetLocationInput.vue_vue_type_script_setup_true_lang-JaFhCK_L.js";
14
+ import { u as st } from "./vue-i18n-BYz7XAr_.js";
15
+ import { M as Rt, a as kt } from "./MessageInput.vue_vue_type_script_setup_true_lang-Du_ZGsbX.js";
16
16
  import { useCoreStore as Dt } from "@feedmepos/mf-common";
17
17
  import { useRouter as Vt } from "vue-router";
18
- import { R as xt } from "./app-C9UPXbDs.js";
19
- import { m as ve } from "./index-zF0gIg9H.js";
20
- import { S as Ge } from "./index-BZVhi3ZG.js";
18
+ import { R as xt } from "./app-CE5hQ4Uq.js";
19
+ import { m as ve } from "./index-CVHacTbc.js";
20
+ import { S as Ge } from "./index-DcjnS5Sv.js";
21
21
  import { o as $t } from "./objectId-dwaoBfJX.js";
22
22
  import { a as zt } from "./object-BYyQ0PZp.js";
23
23
  var oe = {}, Ht = function() {
@@ -1,18 +1,18 @@
1
1
  import { defineComponent as J, ref as y, computed as z, onMounted as K, resolveComponent as A, openBlock as u, createElementBlock as b, createElementVNode as s, createVNode as d, createTextVNode as W, toDisplayString as v, unref as e, withCtx as k, createBlock as B, Fragment as Y, renderList as Z, createCommentVNode as N, isRef as ee } from "vue";
2
- import { u as te } from "./loading-Dfr_97Ri.js";
2
+ import { u as te } from "./loading-NY-FPxVY.js";
3
3
  import { u as ne } from "./app-wDQR6dpb.js";
4
- import { u as se } from "./business-CYpW6-Ls.js";
5
- import { u as oe } from "./membership-ncNOUJwj.js";
6
- import "./index-CNKP1_IW.js";
7
- import { l as ae } from "./index-B4IAURA_.js";
8
- import "./index-DtyWsBgg.js";
9
- import { _ as le } from "./ImageInput.vue_vue_type_script_setup_true_lang-BaY_nQio.js";
10
- import { f as D, p as ie } from "./plugins-BVGqEmE1.js";
11
- import { _ as re } from "./TargetLocationInput.vue_vue_type_script_setup_true_lang-DNHgSfIg.js";
12
- import { u as ce } from "./vue-i18n-DNBGmwox.js";
4
+ import { u as se } from "./business-CE_4siXc.js";
5
+ import { u as oe } from "./membership-BWaK-9FY.js";
6
+ import "./index-D4SDAfbP.js";
7
+ import { b as ae } from "./index-BuMfQxMf.js";
8
+ import "./index-Dx9h0FNH.js";
9
+ import { _ as le } from "./ImageInput.vue_vue_type_script_setup_true_lang-Dzv2AkKN.js";
10
+ import { f as D, p as ie } from "./plugins-ur-FAoye.js";
11
+ import { _ as re } from "./TargetLocationInput.vue_vue_type_script_setup_true_lang-JaFhCK_L.js";
12
+ import { u as ce } from "./vue-i18n-BYz7XAr_.js";
13
13
  import { useRouter as de } from "vue-router";
14
- import { m as me } from "./index-zF0gIg9H.js";
15
- import { R as ue } from "./app-C9UPXbDs.js";
14
+ import { m as me } from "./index-CVHacTbc.js";
15
+ import { R as ue } from "./app-CE5hQ4Uq.js";
16
16
  import { a as ve } from "./object-BYyQ0PZp.js";
17
17
  const pe = { class: "min-h-screen bg-fm-color-neutral-gray-50" }, fe = { class: "bg-white border-b border-fm-color-neutral-gray-100 sticky top-0 z-10" }, ge = { class: "px-24 py-16 flex items-center justify-between" }, _e = { class: "flex items-center gap-16" }, he = { class: "fm-typo-en-title-md-800 flex items-center gap-8" }, ye = { class: "fm-typo-en-body-sm-400 text-fm-color-typo-secondary" }, be = {
18
18
  key: 0,
@@ -0,0 +1,179 @@
1
+ import { defineComponent as N, useSlots as U, openBlock as r, createElementBlock as l, createElementVNode as s, normalizeClass as $, unref as e, toDisplayString as y, createCommentVNode as m, Fragment as b, createBlock as E, createVNode as w, renderSlot as T, ref as x, computed as B, onMounted as G, withCtx as O, renderList as C, createStaticVNode as z } from "vue";
2
+ import { u as A } from "./loading-NY-FPxVY.js";
3
+ import { u as M } from "./business-CE_4siXc.js";
4
+ import { components as f, useSnackbar as W } from "@feedmepos/ui-library";
5
+ import { u as R } from "./vue-i18n-BYz7XAr_.js";
6
+ import { g as j } from "./google-C3S8u0mT.js";
7
+ import { R as D } from "./app-CE5hQ4Uq.js";
8
+ import { useRouter as H } from "vue-router";
9
+ import { r as h } from "./index-BIyKgw4m.js";
10
+ const P = { class: "rounded-lg border border-fm-color-neutral-gray-200 bg-white overflow-hidden" }, q = ["src"], J = { class: "flex flex-col flex-1 gap-1 min-w-0" }, K = { class: "fm-typo-en-body-md-600 capitalize" }, Q = {
11
+ key: 0,
12
+ class: "fm-typo-en-body-sm-400 text-fm-color-neutral-gray-400 truncate"
13
+ }, X = { class: "fm-typo-en-body-sm-400 text-fm-color-neutral-gray-400" }, Y = /* @__PURE__ */ N({
14
+ __name: "ReviewSource",
15
+ props: {
16
+ icon: {},
17
+ name: {},
18
+ connected: { type: Boolean },
19
+ subtitle: {},
20
+ syncing: { type: Boolean },
21
+ tokenExpired: { type: Boolean }
22
+ },
23
+ emits: ["connect", "sync"],
24
+ setup(o, { emit: p }) {
25
+ const u = p, { t: i } = R(), g = U();
26
+ return (c, a) => (r(), l("div", P, [
27
+ s("div", {
28
+ class: $(["flex items-center gap-12 p-16", e(g).default ? "border-b border-fm-color-neutral-gray-100" : ""])
29
+ }, [
30
+ s("img", {
31
+ src: o.icon,
32
+ class: "w-10 h-10 shrink-0"
33
+ }, null, 8, q),
34
+ s("div", J, [
35
+ s("span", K, y(o.name), 1),
36
+ o.subtitle || !o.connected ? (r(), l("span", Q, y(o.connected ? o.subtitle : e(i)("connect.review.notConnected")), 1)) : m("", !0)
37
+ ]),
38
+ o.connected ? (r(), l(b, { key: 0 }, [
39
+ o.tokenExpired ? (r(), E(e(f).FmChip, {
40
+ key: 0,
41
+ label: e(i)("connect.review.expired"),
42
+ variant: "critical"
43
+ }, null, 8, ["label"])) : m("", !0),
44
+ w(e(f).FmButton, {
45
+ variant: "secondary",
46
+ "prepend-icon": "refresh",
47
+ label: e(i)("connect.review.reconnect"),
48
+ onClick: a[0] || (a[0] = (v) => u("connect"))
49
+ }, null, 8, ["label"]),
50
+ o.tokenExpired ? m("", !0) : (r(), E(e(f).FmButton, {
51
+ key: 1,
52
+ variant: "primary",
53
+ "prepend-icon": "sync",
54
+ label: e(i)("connect.review.sync"),
55
+ loading: o.syncing,
56
+ onClick: a[1] || (a[1] = (v) => u("sync"))
57
+ }, null, 8, ["label", "loading"]))
58
+ ], 64)) : m("", !0)
59
+ ], 2),
60
+ o.connected ? m("", !0) : (r(), l("div", {
61
+ key: 0,
62
+ class: $(["flex items-center justify-between gap-12 p-16", e(g).default ? "border-b border-fm-color-neutral-gray-100" : ""])
63
+ }, [
64
+ s("span", X, y(e(i)("connect.review.connectHint", { name: o.name })), 1),
65
+ w(e(f).FmButton, {
66
+ "prepend-icon": "add",
67
+ label: e(i)("connect.review.connect"),
68
+ onClick: a[2] || (a[2] = (v) => u("connect"))
69
+ }, null, 8, ["label"])
70
+ ], 2)),
71
+ T(c.$slots, "default")
72
+ ]));
73
+ }
74
+ }), Z = { class: "p-24 flex flex-col gap-8" }, ee = { class: "flex flex-col flex-1 min-w-0" }, ne = { class: "fm-typo-en-body-lg-600 truncate" }, oe = { class: "fm-typo-en-body-sm-400 text-fm-color-neutral-gray-400 truncate" }, me = /* @__PURE__ */ N({
75
+ __name: "Settings",
76
+ setup(o) {
77
+ const { t: p } = R(), u = W(), i = H(), g = M(), c = x(null), a = x(!1);
78
+ x(!1);
79
+ const v = B(
80
+ () => {
81
+ var n;
82
+ return c.value ? ((n = c.value.google) == null ? void 0 : n.accessToken) === null : !1;
83
+ }
84
+ );
85
+ B(
86
+ () => {
87
+ var n;
88
+ return c.value ? ((n = c.value.facebook) == null ? void 0 : n.token) === null : !1;
89
+ }
90
+ );
91
+ function _(n) {
92
+ const t = window.location.pathname.replace(/\/review(?:\/.*)?$/, "");
93
+ return `${window.location.origin}${t}${n}`;
94
+ }
95
+ async function S() {
96
+ await A.minor(async () => {
97
+ c.value = await h.getSource();
98
+ });
99
+ }
100
+ function V(n) {
101
+ var t;
102
+ return (t = g.locations.find(
103
+ (d) => d._id.toString() === n
104
+ )) == null ? void 0 : t.name;
105
+ }
106
+ function F() {
107
+ u.open({
108
+ message: p("connect.review.syncSuccess"),
109
+ type: "success"
110
+ }), i.push({ name: D["$connect-REVIEW_OVERVIEW"] });
111
+ }
112
+ async function I() {
113
+ var n, t;
114
+ a.value = !0;
115
+ try {
116
+ await h.syncGoogleReviews(), F();
117
+ } catch (d) {
118
+ if (await S(), ((t = (n = c.value) == null ? void 0 : n.google) == null ? void 0 : t.accessToken) === null) {
119
+ u.open({
120
+ message: p("connect.review.tokenExpired"),
121
+ type: "error"
122
+ });
123
+ return;
124
+ }
125
+ throw d;
126
+ } finally {
127
+ a.value = !1;
128
+ }
129
+ }
130
+ async function L() {
131
+ const n = _("/review/google/callback"), { callbackUrl: t } = await h.getOauthUrl("google", n);
132
+ window.location.href = t;
133
+ }
134
+ return G(() => {
135
+ S(), g.readLocations();
136
+ }), (n, t) => (r(), l("div", Z, [
137
+ e(c) ? (r(), l(b, { key: 0 }, [
138
+ w(Y, {
139
+ icon: e(j),
140
+ name: "google",
141
+ connected: !!e(c).google,
142
+ syncing: e(a),
143
+ "token-expired": e(v),
144
+ onConnect: L,
145
+ onSync: I
146
+ }, {
147
+ default: O(() => {
148
+ var d;
149
+ return [
150
+ (r(!0), l(b, null, C((d = e(c).google) == null ? void 0 : d.locations, (k) => (r(), l("div", {
151
+ key: k.googleLocationName,
152
+ class: "flex items-center gap-12 px-16 py-12 border-b border-fm-color-neutral-gray-100 last:border-b-0"
153
+ }, [
154
+ w(e(f).FmIcon, {
155
+ name: "location_on",
156
+ class: "text-fm-color-neutral-gray-300 shrink-0"
157
+ }),
158
+ s("div", ee, [
159
+ s("span", ne, y(k.displayName), 1),
160
+ s("span", oe, y(V(k.locationId)), 1)
161
+ ])
162
+ ]))), 128))
163
+ ];
164
+ }),
165
+ _: 1
166
+ }, 8, ["icon", "connected", "syncing", "token-expired"]),
167
+ m("", !0)
168
+ ], 64)) : (r(), l(b, { key: 1 }, C(["google", "facebook"], (d) => s("div", {
169
+ key: d,
170
+ class: "rounded-lg border border-fm-color-neutral-gray-200 bg-white p-16"
171
+ }, [...t[0] || (t[0] = [
172
+ z('<div class="animate-pulse flex items-center gap-12"><div class="w-10 h-10 rounded-full bg-fm-color-neutral-gray-100 shrink-0"></div><div class="flex-1 min-w-0 space-y-8"><div class="h-16 w-20 rounded bg-fm-color-neutral-gray-100"></div><div class="h-12 w-full max-w-[160px] rounded bg-fm-color-neutral-gray-100"></div></div><div class="h-32 w-24 rounded bg-fm-color-neutral-gray-100 shrink-0"></div></div>', 1)
173
+ ])])), 64))
174
+ ]));
175
+ }
176
+ });
177
+ export {
178
+ me as default
179
+ };