@feedmepos/mf-connect 0.1.98-prod → 0.1.99-prod
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.
- package/dist/{Analytic-BHDjuMfN.js → Analytic-CmlJa1WX.js} +11 -11
- package/dist/{App-BSSze_b9.js → App-D0thRELq.js} +811 -665
- package/dist/{Bin-DfzoQbE0.js → Bin-DnkPcZdC.js} +8 -8
- package/dist/{Broadcast-DsqO4SXX.js → Broadcast-o6nSQOsx.js} +8 -8
- package/dist/{CampaignTypeDialog.vue_vue_type_script_setup_true_lang-DQ0x2VJp.js → CampaignTypeDialog.vue_vue_type_script_setup_true_lang-BPGzh4u8.js} +6 -6
- package/dist/{Card-VxbqomXV.js → Card-zjezSaRB.js} +18 -18
- package/dist/{Collections-CvD98I3M.js → Collections-48W_jFFS.js} +8 -8
- package/dist/{Credit-BhM2m2L2.js → Credit-CYaCjNVK.js} +8 -8
- package/dist/DateRangeChip.vue_vue_type_script_setup_true_lang-eIoPtgO5.js +58 -0
- package/dist/{EditCampaignSheet.vue_vue_type_script_setup_true_lang-DvfrrjHc.js → EditCampaignSheet.vue_vue_type_script_setup_true_lang-D3SnYlQ0.js} +32 -32
- package/dist/{EffectSheet.vue_vue_type_style_index_0_lang-CPx9U9fU.js → EffectSheet.vue_vue_type_style_index_0_lang-CbpKQj-r.js} +6 -6
- package/dist/{Experience-uWQRb-qf.js → Experience-HmfLlywu.js} +8 -8
- package/dist/{FileSaver.min-DKNoHTvP.js → FileSaver.min-cDraiw9g.js} +1 -1
- package/dist/{Game-BgT3oNx7.js → Game-DHLdDQRi.js} +9 -9
- package/dist/{ImageInput.vue_vue_type_script_setup_true_lang-ClqrJbU6.js → ImageInput.vue_vue_type_script_setup_true_lang-DZrmFruC.js} +1 -1
- package/dist/{Index-D3RgVj9V.js → Index-CMm5L1Ph.js} +10 -10
- package/dist/LocationPicker.vue_vue_type_script_setup_true_lang-B6tGeGGC.js +48 -0
- package/dist/{LottieAnimation.vue_vue_type_script_setup_true_lang-CkCpumzB.js → LottieAnimation.vue_vue_type_script_setup_true_lang-CV4V9qlc.js} +1 -1
- package/dist/{MainLayout-B2RiPsIR.js → MainLayout-iru8naVF.js} +1 -1
- package/dist/{Marketing-FrE7k7eW.js → Marketing-AP8z-pA0.js} +4 -4
- package/dist/{MarketingMaterialEdit-DGNjEUu-.js → MarketingMaterialEdit-HYTdiTvs.js} +6 -6
- package/dist/{Member-CgTagUQ9.js → Member-N_ks2GiW.js} +11 -11
- package/dist/{MemberList-CKbzsDMX.js → MemberList-Cj8EfN0q.js} +26 -26
- package/dist/{MemberTransactions-CnY5cFdv.js → MemberTransactions-DUj4Fq6M.js} +1 -1
- package/dist/{MessageInput.vue_vue_type_script_setup_true_lang-DqivG_O4.js → MessageInput.vue_vue_type_script_setup_true_lang-ZD6_8BzX.js} +9 -9
- package/dist/{Mission-BGNqy7wQ.js → Mission-DfZ0brqC.js} +9 -9
- package/dist/{Overview-CnpF74wa.js → Overview-BnFPQbSg.js} +18 -18
- package/dist/Overview-kB_HApIc.js +969 -0
- package/dist/{Point-BHgIy7Bz.js → Point-PsWJEEsn.js} +8 -8
- package/dist/{Promotion-CNQvO5Lq.js → Promotion-BsNT1kOG.js} +9 -9
- package/dist/{Queue-CoPBE0UP.js → Queue-Cgw3PgEi.js} +10 -10
- package/dist/{Record-BuDQ15FJ.js → Record-DwzoIz3R.js} +9 -9
- package/dist/Review-kF2wLu5o.js +46 -0
- package/dist/ReviewFacebookCallback-B6RjqR5T.js +238 -0
- package/dist/ReviewGoogleCallback-DjLK1b4-.js +213 -0
- package/dist/{Reward-BQlCO3Dk.js → Reward-C8O5U2NU.js} +16 -16
- package/dist/{RewardGroup.vue_vue_type_script_setup_true_lang-nhNr_T7D.js → RewardGroup.vue_vue_type_script_setup_true_lang-BqKABBF1.js} +11 -11
- package/dist/{RuleGroup.vue_vue_type_script_setup_true_lang-lnxwLa8o.js → RuleGroup.vue_vue_type_script_setup_true_lang-DvNyurCW.js} +14 -14
- package/dist/{Segment-DKFAXGzY.js → Segment-BtmeNQnL.js} +24 -24
- package/dist/{SelectItems.vue_vue_type_script_setup_true_lang-CUR7djaM.js → SelectItems.vue_vue_type_script_setup_true_lang-P4wy1bqG.js} +2 -2
- package/dist/{SendCollectionSheet.vue_vue_type_script_setup_true_lang-CZ3s2W8Q.js → SendCollectionSheet.vue_vue_type_script_setup_true_lang-DQ93AOeI.js} +12 -12
- package/dist/{SendVoucherSheet.vue_vue_type_script_setup_true_lang-BbilZk82.js → SendVoucherSheet.vue_vue_type_script_setup_true_lang-B3P7Ob40.js} +4 -4
- package/dist/{Setting-hrDZ1cQR.js → Setting-D1SQ6TKF.js} +14 -14
- package/dist/{SettingAdvertisements-CQsx4JqQ.js → SettingAdvertisements-pUTX9uu3.js} +12 -12
- package/dist/Settings-Bbd3cMNH.js +228 -0
- package/dist/{Store-Cgmsklnt.js → Store-Dgc-J8Q7.js} +21 -21
- package/dist/{StoreRewards-CrPO4DKG.js → StoreRewards-CJ090vEj.js} +15 -15
- package/dist/{StoreTransactions.vue_vue_type_script_setup_true_lang-yesp6BoT.js → StoreTransactions.vue_vue_type_script_setup_true_lang-B35vDFFq.js} +350 -401
- package/dist/{TargetLocationInput.vue_vue_type_script_setup_true_lang-BnKybdKJ.js → TargetLocationInput.vue_vue_type_script_setup_true_lang-5Aazsvfa.js} +2 -2
- package/dist/{Tier-DgKMMyKr.js → Tier-CKGyFDiY.js} +21 -21
- package/dist/{Title-BKijiEFV.js → Title-DXRex7t9.js} +20 -20
- package/dist/{Transaction-zHL4q_wj.js → Transaction-B1eC-Gln.js} +2 -2
- package/dist/{UserRuleGroup.vue_vue_type_script_setup_true_lang-DjafpVOa.js → UserRuleGroup.vue_vue_type_script_setup_true_lang-B2GABNUx.js} +6 -6
- package/dist/{Voucher-DW4-SD1w.js → Voucher-Omh_kYVH.js} +12 -12
- package/dist/{VoucherEditor.vue_vue_type_script_setup_true_lang-y2wm2Bcu.js → VoucherEditor.vue_vue_type_script_setup_true_lang-DD2WD_Vt.js} +12 -12
- package/dist/{ZodTextField.vue_vue_type_script_setup_true_lang-BWZUE554.js → ZodTextField.vue_vue_type_script_setup_true_lang-CAtzo8zL.js} +2 -2
- package/dist/{app-B23RANXL.js → app-D8i8XAyR.js} +3589 -2961
- package/dist/app.js +1 -1
- package/dist/{business-BFU-2tpT.js → business-6gZtKQ8L.js} +1 -1
- package/dist/{campaign-BEKKOWya.js → campaign-DIgbywUy.js} +8 -8
- package/dist/{campaign-CwlWx58O.js → campaign-MPUFwgli.js} +1 -1
- package/dist/{campaign.enum-5KIiekYl.js → campaign.enum-CSlbGhc-.js} +1 -1
- package/dist/{campaign.fn-CyWn_KL-.js → campaign.fn-BvxZt-0r.js} +21 -21
- package/dist/{collectible.enum-DmmR-4Nj.js → collectible.enum-20LKRFir.js} +1 -1
- package/dist/{collection.fn-BB1OjBHL.js → collection.fn-03oGQuF_.js} +2 -2
- package/dist/{dto-p31OYANk.js → dto-C5_Te4gk.js} +4 -4
- package/dist/{effect-DNDXE2iM.js → effect-CkurpNMu.js} +1 -1
- package/dist/{email-addresses-DXSkxrZ6.js → email-addresses-CR8pgurp.js} +2 -2
- package/dist/{export-zMj-UAnF.js → export-CfDeISbW.js} +3 -3
- package/dist/google-BQK68wbe.js +5 -0
- package/dist/{helper-D32ml7Qv.js → helper-BQYvN6FL.js} +1 -1
- package/dist/{index-PrTZHXNT.js → index-6FvsyekG.js} +1 -1
- package/dist/{index-Cc15IFUt.js → index-ARC-NYFZ.js} +1 -1
- package/dist/{index-DvHLsdIR.js → index-C9j6OhgK.js} +372 -103
- package/dist/{index-BmmFSQPd.js → index-CH_QL_76.js} +3 -3
- package/dist/index-CJUzQG6t.js +61 -0
- package/dist/{index-9jgqbdnt.js → index-Cv-DbZdw.js} +2 -2
- package/dist/{index-BWHk6oqv.js → index-D6wOnTAl.js} +3 -3
- package/dist/{index-CcnOzrwY.js → index-D8vmbFE5.js} +1 -1
- package/dist/{index-B9-jeiQR.js → index-DW7H-3z4.js} +18 -12
- package/dist/{index-DSGHkaP0.js → index-Dcxjgr6s.js} +1 -1
- package/dist/{index-B2OiTtF5.js → index-Dz130JVH.js} +1 -1
- package/dist/{index-txVWLdtz.js → index-ERqXuFvQ.js} +1 -1
- package/dist/{index-CA09A75h.js → index-hTgJrZR8.js} +3 -3
- package/dist/{index.esm2017-BJG8dqci.js → index.esm2017-DY9Lrb0O.js} +1 -1
- package/dist/{loading-DuZVM_Ow.js → loading-EnU7K0k3.js} +1 -1
- package/dist/{lodash-DqQem5rZ.js → lodash-Cr7KdLib.js} +1 -1
- package/dist/{membership-CvoEzwor.js → membership-B1eIzQDB.js} +3 -3
- package/dist/{money-B9PJ_JYh.js → money-DpUzzEJj.js} +1 -1
- package/dist/{number-GIC15kny.js → number-DAz9zOKI.js} +1 -1
- package/dist/{objectid-CtJ4pTf2.js → objectid-LXOkMCkM.js} +2 -2
- package/dist/{plugins-XAhAFHmZ.js → plugins-DJ13vaqz.js} +3 -3
- package/dist/{reward-Dy0Z6PLL.js → reward-Cmx_swM1.js} +1 -1
- package/dist/{rule-CUu9I1Ly.js → rule-BCzySyr6.js} +3 -3
- package/dist/{rule-builder-DPmaehAO.js → rule-builder-CDkWYBLG.js} +1 -1
- package/dist/{template-BHtdbnoX.js → template-DfnYZzoa.js} +7 -7
- package/dist/{timezone-BE1YhvLN.js → timezone-Beb0XkZC.js} +2 -2
- package/dist/{trigger-BcHfjuiZ.js → trigger-BfQprjI-.js} +5 -5
- package/dist/{useMarketingMaterialActions-YQq4LWOp.js → useMarketingMaterialActions-CagN58AP.js} +3 -3
- package/dist/{usePagination-B1KK2gTx.js → usePagination-XyeJR5ws.js} +1 -1
- package/dist/{user-BTRRi1B3.js → user-l2YG1VjD.js} +1 -1
- package/dist/{vue-i18n-D8NX5Rry.js → vue-i18n-DJXhpQga.js} +162 -162
- package/dist/{xlsx-C9LzK7Kg.js → xlsx-DypdT1NW.js} +1 -1
- package/dist/{zod-D3ciRzE4.js → zod-BM5P7Bti.js} +1 -1
- package/package.json +1 -1
|
@@ -1,15 +1,15 @@
|
|
|
1
1
|
import { defineComponent as H, ref as I, computed as q, h as x, onMounted as z, resolveComponent as m, openBlock as p, createElementBlock as v, Fragment as k, createVNode as s, unref as o, withCtx as h, createElementVNode as n, toDisplayString as u, renderList as G, createBlock as F, resolveDynamicComponent as J } from "vue";
|
|
2
2
|
import { _ as Q } from "./campaign-CpzFl8Vr.js";
|
|
3
3
|
import { useDialog as W, components as V } from "@feedmepos/ui-library";
|
|
4
|
-
import { p as X } from "./plugins-
|
|
5
|
-
import { u as Y } from "./loading-
|
|
6
|
-
import { u as Z } from "./business-
|
|
7
|
-
import { u as ee, c as f } from "./campaign-
|
|
8
|
-
import { g as te, a as $, b as N } from "./campaign-
|
|
9
|
-
import { u as oe, c as ae, p as ne } from "./template-
|
|
4
|
+
import { p as X } from "./plugins-DJ13vaqz.js";
|
|
5
|
+
import { u as Y } from "./loading-EnU7K0k3.js";
|
|
6
|
+
import { u as Z } from "./business-6gZtKQ8L.js";
|
|
7
|
+
import { u as ee, c as f } from "./campaign-MPUFwgli.js";
|
|
8
|
+
import { g as te, a as $, b as N } from "./campaign-DIgbywUy.js";
|
|
9
|
+
import { u as oe, c as ae, p as ne } from "./template-DfnYZzoa.js";
|
|
10
10
|
import { _ as ie } from "./FilterChip.vue_vue_type_script_setup_true_lang-DaU-9GzO.js";
|
|
11
|
-
import { _ as se } from "./EditCampaignSheet.vue_vue_type_script_setup_true_lang-
|
|
12
|
-
import { u as re } from "./vue-i18n-
|
|
11
|
+
import { _ as se } from "./EditCampaignSheet.vue_vue_type_script_setup_true_lang-D3SnYlQ0.js";
|
|
12
|
+
import { u as re } from "./vue-i18n-DJXhpQga.js";
|
|
13
13
|
const le = { class: "flex items-center" }, ce = { class: "fm-typo-en-title-md-600 fm-step-title line-clamp-2 mr-8" }, me = { class: "px-24 flex flex-col gap-y-16" }, de = { class: "flex items-center justify-between w-full" }, pe = { class: "flex gap-8 overflow-x-auto" }, ue = { class: "space-y-8" }, fe = { class: "flex w-full gap-4 items-center" }, ge = { class: "space-y-4" }, ye = { class: "fm-typo-en-body-lg-600" }, _e = { class: "fm-typo-en-body-md-400 text-fm-color-typo-secondary" }, he = { class: "flex items-center gap-8" }, Ce = { class: "flex flex-col gap-16 text-center" }, we = { class: "fm-typo-en-title-sm-800" }, be = { class: "fm-typo-en-body-md-400 text-fm-color-typo-secondary" }, Ke = /* @__PURE__ */ H({
|
|
14
14
|
__name: "Point",
|
|
15
15
|
setup(xe) {
|
|
@@ -1,16 +1,16 @@
|
|
|
1
1
|
import { defineComponent as E, ref as w, resolveComponent as d, openBlock as f, createBlock as S, unref as a, isRef as oe, withCtx as k, createElementVNode as r, createVNode as c, computed as te, h as I, onMounted as ne, createElementBlock as L, Fragment as B, renderList as ae, resolveDynamicComponent as se, toDisplayString as F } from "vue";
|
|
2
2
|
import { _ as ie } from "./campaign-CpzFl8Vr.js";
|
|
3
3
|
import { useDialog as re, components as $ } from "@feedmepos/ui-library";
|
|
4
|
-
import { p as j } from "./plugins-
|
|
5
|
-
import { u as le } from "./loading-
|
|
6
|
-
import { u as ce } from "./business-
|
|
7
|
-
import { c as y, u as me } from "./campaign-
|
|
8
|
-
import { u as ue } from "./vue-i18n-
|
|
9
|
-
import { g as de, a as D } from "./campaign-
|
|
10
|
-
import { u as pe, c as fe, p as ye } from "./template-
|
|
11
|
-
import { e as q } from "./effect-
|
|
4
|
+
import { p as j } from "./plugins-DJ13vaqz.js";
|
|
5
|
+
import { u as le } from "./loading-EnU7K0k3.js";
|
|
6
|
+
import { u as ce } from "./business-6gZtKQ8L.js";
|
|
7
|
+
import { c as y, u as me } from "./campaign-MPUFwgli.js";
|
|
8
|
+
import { u as ue } from "./vue-i18n-DJXhpQga.js";
|
|
9
|
+
import { g as de, a as D } from "./campaign-DIgbywUy.js";
|
|
10
|
+
import { u as pe, c as fe, p as ye } from "./template-DfnYZzoa.js";
|
|
11
|
+
import { e as q } from "./effect-CkurpNMu.js";
|
|
12
12
|
import { c as K } from "./string-Gcy5IM_H.js";
|
|
13
|
-
import { _ as ge } from "./EditCampaignSheet.vue_vue_type_script_setup_true_lang-
|
|
13
|
+
import { _ as ge } from "./EditCampaignSheet.vue_vue_type_script_setup_true_lang-D3SnYlQ0.js";
|
|
14
14
|
import { _ as U } from "./FilterChip.vue_vue_type_script_setup_true_lang-DaU-9GzO.js";
|
|
15
15
|
const he = { class: "space-y-8" }, _e = /* @__PURE__ */ E({
|
|
16
16
|
__name: "QueueSheet",
|
|
@@ -1,19 +1,19 @@
|
|
|
1
1
|
import { defineComponent as h, h as n, ref as A, watch as B, onBeforeMount as U, resolveComponent as V, openBlock as z, createElementBlock as O, Fragment as q, createVNode as m, unref as o, createElementVNode as g } from "vue";
|
|
2
|
-
import { u as L, _ as K } from "./usePagination-
|
|
2
|
+
import { u as L, _ as K } from "./usePagination-XyeJR5ws.js";
|
|
3
3
|
import { _ as S } from "./FilterChip.vue_vue_type_script_setup_true_lang-DaU-9GzO.js";
|
|
4
4
|
import { c as u } from "./string-Gcy5IM_H.js";
|
|
5
|
-
import { c as Y } from "./plugins-
|
|
5
|
+
import { c as Y } from "./plugins-DJ13vaqz.js";
|
|
6
6
|
import { useDialog as G, components as b } from "@feedmepos/ui-library";
|
|
7
|
-
import { K as c, c as d } from "./index-
|
|
8
|
-
import "./index-
|
|
9
|
-
import "./index-
|
|
10
|
-
import "./index-
|
|
11
|
-
import "./index-
|
|
7
|
+
import { K as c, c as d } from "./index-DW7H-3z4.js";
|
|
8
|
+
import "./index-hTgJrZR8.js";
|
|
9
|
+
import "./index-CH_QL_76.js";
|
|
10
|
+
import "./index-C9j6OhgK.js";
|
|
11
|
+
import "./index-D6wOnTAl.js";
|
|
12
12
|
import { h as y } from "./moment-D7p2TMB-.js";
|
|
13
|
-
import { u as j } from "./vue-i18n-
|
|
14
|
-
import { u as H, v as W, w as $ } from "./index.esm2017-
|
|
13
|
+
import { u as j } from "./vue-i18n-DJXhpQga.js";
|
|
14
|
+
import { u as H, v as W, w as $ } from "./index.esm2017-DY9Lrb0O.js";
|
|
15
15
|
import { useRoute as Q } from "vue-router";
|
|
16
|
-
import { g as J, S as X, u as Z } from "./index-
|
|
16
|
+
import { g as J, S as X, u as Z } from "./index-Cv-DbZdw.js";
|
|
17
17
|
import { o as ee } from "./objectId-dwaoBfJX.js";
|
|
18
18
|
const te = () => {
|
|
19
19
|
if (!X.getBusinessId()) throw new Error("Invalid business ID");
|
|
@@ -2,19 +2,19 @@ var q = Object.defineProperty;
|
|
|
2
2
|
var G = (g, o, m) => o in g ? q(g, o, { enumerable: !0, configurable: !0, writable: !0, value: m }) : g[o] = m;
|
|
3
3
|
var z = (g, o, m) => G(g, typeof o != "symbol" ? o + "" : o, m);
|
|
4
4
|
import { defineComponent as T, ref as B, computed as H, resolveComponent as C, openBlock as I, createBlock as J, unref as n, isRef as Q, withCtx as X, createElementBlock as U, createVNode as w, withModifiers as Z, createCommentVNode as ee, createElementVNode as N, h, onMounted as re, Fragment as te } from "vue";
|
|
5
|
-
import { u as oe, _ as ae } from "./usePagination-
|
|
6
|
-
import { g as A } from "./user-
|
|
5
|
+
import { u as oe, _ as ae } from "./usePagination-XyeJR5ws.js";
|
|
6
|
+
import { g as A } from "./user-l2YG1VjD.js";
|
|
7
7
|
import { components as R } from "@feedmepos/ui-library";
|
|
8
|
-
import "./index-
|
|
9
|
-
import { u as j } from "./vue-i18n-
|
|
10
|
-
import { u as L } from "./loading-
|
|
8
|
+
import "./index-CH_QL_76.js";
|
|
9
|
+
import { u as j } from "./vue-i18n-DJXhpQga.js";
|
|
10
|
+
import { u as L } from "./loading-EnU7K0k3.js";
|
|
11
11
|
import { useCoreStore as se } from "@feedmepos/mf-common";
|
|
12
|
-
import { r as v } from "./index-
|
|
12
|
+
import { r as v } from "./index-Dcxjgr6s.js";
|
|
13
13
|
import { c as ie, a as ne } from "./object-qECH92oz.js";
|
|
14
|
-
import { u as ce } from "./membership-
|
|
14
|
+
import { u as ce } from "./membership-B1eIzQDB.js";
|
|
15
15
|
import { c as le } from "./string-Gcy5IM_H.js";
|
|
16
|
-
import { c as de } from "./plugins-
|
|
17
|
-
import { u as V, w as me } from "./xlsx-
|
|
16
|
+
import { c as de } from "./plugins-DJ13vaqz.js";
|
|
17
|
+
import { u as V, w as me } from "./xlsx-DypdT1NW.js";
|
|
18
18
|
import { e as f } from "./index-vh86FiIQ.js";
|
|
19
19
|
import { h as ue } from "./moment-D7p2TMB-.js";
|
|
20
20
|
import { o as pe } from "./objectId-dwaoBfJX.js";
|
|
@@ -0,0 +1,46 @@
|
|
|
1
|
+
import { defineComponent as p, computed as d, resolveComponent as o, openBlock as v, createElementBlock as f, Fragment as R, createVNode as n, unref as l, createElementVNode as s } from "vue";
|
|
2
|
+
import { u as E } from "./vue-i18n-DJXhpQga.js";
|
|
3
|
+
import { R as V } from "./app-D8i8XAyR.js";
|
|
4
|
+
import { useRouter as b } from "vue-router";
|
|
5
|
+
const w = { class: "flex flex-col" }, x = { class: "px-24" }, k = /* @__PURE__ */ p({
|
|
6
|
+
__name: "Review",
|
|
7
|
+
setup(F) {
|
|
8
|
+
const { t: a } = E(), c = b(), t = [
|
|
9
|
+
{
|
|
10
|
+
label: a("connect.review.tabs.overview"),
|
|
11
|
+
value: V["$connect-REVIEW_OVERVIEW"]
|
|
12
|
+
}
|
|
13
|
+
// Hidden until the external review source rollout is ready.
|
|
14
|
+
// {
|
|
15
|
+
// label: t('connect.review.tabs.settings'),
|
|
16
|
+
// value: ROUTE_NAME['$connect-REVIEW_SETTINGS'],
|
|
17
|
+
// },
|
|
18
|
+
], r = d(
|
|
19
|
+
() => t.find((e) => e.value === c.currentRoute.value.name) ?? t[0]
|
|
20
|
+
);
|
|
21
|
+
async function m(e) {
|
|
22
|
+
await c.push({ name: e });
|
|
23
|
+
}
|
|
24
|
+
return (e, T) => {
|
|
25
|
+
const u = o("FmPageHead"), i = o("FmTabs"), _ = o("RouterView");
|
|
26
|
+
return v(), f(R, null, [
|
|
27
|
+
n(u, {
|
|
28
|
+
title: l(a)("connect.navigation.review")
|
|
29
|
+
}, null, 8, ["title"]),
|
|
30
|
+
s("div", w, [
|
|
31
|
+
s("div", x, [
|
|
32
|
+
n(i, {
|
|
33
|
+
"model-value": l(r).value,
|
|
34
|
+
items: t,
|
|
35
|
+
"onUpdate:modelValue": m
|
|
36
|
+
}, null, 8, ["model-value"])
|
|
37
|
+
]),
|
|
38
|
+
n(_)
|
|
39
|
+
])
|
|
40
|
+
], 64);
|
|
41
|
+
};
|
|
42
|
+
}
|
|
43
|
+
});
|
|
44
|
+
export {
|
|
45
|
+
k as default
|
|
46
|
+
};
|
|
@@ -0,0 +1,238 @@
|
|
|
1
|
+
import { defineComponent as C, computed as M, openBlock as l, createElementBlock as g, normalizeClass as j, createElementVNode as u, createBlock as T, unref as e, toDisplayString as h, createCommentVNode as S, createVNode as y, onMounted as B, ref as P, Fragment as $, renderList as U, resolveComponent as z, isRef as V } from "vue";
|
|
2
|
+
import { u as R } from "./vue-i18n-DJXhpQga.js";
|
|
3
|
+
import { components as I } from "@feedmepos/ui-library";
|
|
4
|
+
import { r as L } from "./index-CJUzQG6t.js";
|
|
5
|
+
import { u as A } from "./business-6gZtKQ8L.js";
|
|
6
|
+
import { _ as H } from "./LocationPicker.vue_vue_type_script_setup_true_lang-B6tGeGGC.js";
|
|
7
|
+
import { R as D } from "./app-D8i8XAyR.js";
|
|
8
|
+
import { useRouter as G } from "vue-router";
|
|
9
|
+
const O = ["src"], W = { class: "fm-typo-en-body-md-600 flex-1 truncate" }, q = {
|
|
10
|
+
key: 2,
|
|
11
|
+
class: "fm-typo-en-body-sm-400 text-fm-color-primary-500 shrink-0"
|
|
12
|
+
}, J = /* @__PURE__ */ C({
|
|
13
|
+
__name: "FacebookPageConfig",
|
|
14
|
+
props: {
|
|
15
|
+
page: {},
|
|
16
|
+
expanded: { type: Boolean },
|
|
17
|
+
availableLocations: {}
|
|
18
|
+
},
|
|
19
|
+
emits: ["toggleExpand", "toggleLocation"],
|
|
20
|
+
setup(s, { emit: n }) {
|
|
21
|
+
const _ = s, f = n, { t: i } = R(), m = M(() => _.page.locationIds);
|
|
22
|
+
return (w, p) => (l(), g("div", {
|
|
23
|
+
class: j([
|
|
24
|
+
"rounded-lg border overflow-hidden transition-colors",
|
|
25
|
+
s.expanded ? "border-fm-color-primary-500" : "border-fm-color-neutral-gray-200"
|
|
26
|
+
])
|
|
27
|
+
}, [
|
|
28
|
+
u("button", {
|
|
29
|
+
class: "w-full flex items-center gap-12 p-16 bg-white text-left hover:bg-fm-color-neutral-gray-50 transition-colors",
|
|
30
|
+
onClick: p[0] || (p[0] = (c) => f("toggleExpand"))
|
|
31
|
+
}, [
|
|
32
|
+
s.page.pageProfileImageUrl ? (l(), g("img", {
|
|
33
|
+
key: 0,
|
|
34
|
+
src: s.page.pageProfileImageUrl,
|
|
35
|
+
class: "w-32 h-32 rounded-full shrink-0 object-cover"
|
|
36
|
+
}, null, 8, O)) : (l(), T(e(I).FmIcon, {
|
|
37
|
+
key: 1,
|
|
38
|
+
name: "thumb_up",
|
|
39
|
+
class: "text-fm-color-neutral-gray-400 shrink-0"
|
|
40
|
+
})),
|
|
41
|
+
u("span", W, h(s.page.pageName), 1),
|
|
42
|
+
s.page.locationIds.length > 0 ? (l(), g("span", q, h(e(i)("connect.review.locationsSelected", s.page.locationIds.length)), 1)) : S("", !0),
|
|
43
|
+
y(e(I).FmIcon, {
|
|
44
|
+
name: s.expanded ? "expand_less" : "expand_more",
|
|
45
|
+
class: "text-fm-color-neutral-gray-400 shrink-0"
|
|
46
|
+
}, null, 8, ["name"])
|
|
47
|
+
]),
|
|
48
|
+
s.expanded ? (l(), T(H, {
|
|
49
|
+
key: 0,
|
|
50
|
+
locations: s.availableLocations,
|
|
51
|
+
"selected-ids": e(m),
|
|
52
|
+
onToggle: p[1] || (p[1] = (c) => f("toggleLocation", c))
|
|
53
|
+
}, null, 8, ["locations", "selected-ids"])) : S("", !0)
|
|
54
|
+
], 2));
|
|
55
|
+
}
|
|
56
|
+
}), K = { class: "flex flex-col gap-8" }, Q = /* @__PURE__ */ C({
|
|
57
|
+
__name: "FacebookPageLocationMapping",
|
|
58
|
+
props: {
|
|
59
|
+
pages: {}
|
|
60
|
+
},
|
|
61
|
+
emits: ["update:pages"],
|
|
62
|
+
setup(s, { emit: n }) {
|
|
63
|
+
const _ = s, f = A();
|
|
64
|
+
B(() => f.readLocations());
|
|
65
|
+
const i = n, m = P(null), w = M(() => {
|
|
66
|
+
const r = /* @__PURE__ */ new Set();
|
|
67
|
+
for (const v of _.pages)
|
|
68
|
+
v.locationIds.forEach((a) => r.add(a));
|
|
69
|
+
return r;
|
|
70
|
+
});
|
|
71
|
+
function p(r) {
|
|
72
|
+
const v = new Set(r.locationIds);
|
|
73
|
+
return f.locations.filter((a) => {
|
|
74
|
+
const b = a._id.toString();
|
|
75
|
+
return !w.value.has(b) || v.has(b);
|
|
76
|
+
});
|
|
77
|
+
}
|
|
78
|
+
function c(r, v) {
|
|
79
|
+
const a = v._id.toString(), b = _.pages.map((o) => {
|
|
80
|
+
if (o.facebookPageId !== r) return o;
|
|
81
|
+
const t = o.locationIds.includes(a);
|
|
82
|
+
return {
|
|
83
|
+
...o,
|
|
84
|
+
locationIds: t ? o.locationIds.filter((k) => k !== a) : [...o.locationIds, a]
|
|
85
|
+
};
|
|
86
|
+
});
|
|
87
|
+
i("update:pages", b);
|
|
88
|
+
}
|
|
89
|
+
function F(r) {
|
|
90
|
+
m.value = m.value === r ? null : r;
|
|
91
|
+
}
|
|
92
|
+
return (r, v) => (l(), g("div", K, [
|
|
93
|
+
(l(!0), g($, null, U(s.pages, (a) => (l(), T(J, {
|
|
94
|
+
key: a.facebookPageId,
|
|
95
|
+
page: a,
|
|
96
|
+
expanded: e(m) === a.facebookPageId,
|
|
97
|
+
"available-locations": p(a),
|
|
98
|
+
onToggleExpand: (b) => F(a.facebookPageId),
|
|
99
|
+
onToggleLocation: (b) => c(a.facebookPageId, b)
|
|
100
|
+
}, null, 8, ["page", "expanded", "available-locations", "onToggleExpand", "onToggleLocation"]))), 128))
|
|
101
|
+
]));
|
|
102
|
+
}
|
|
103
|
+
}), X = { class: "flex flex-col min-h-full gap-16 p-24" }, Y = {
|
|
104
|
+
key: 0,
|
|
105
|
+
class: "flex flex-col items-center justify-center flex-1 gap-16"
|
|
106
|
+
}, Z = { class: "fm-typo-en-body-md-400 text-fm-color-neutral-gray-400" }, ee = {
|
|
107
|
+
key: 1,
|
|
108
|
+
class: "flex flex-col items-center justify-center flex-1 gap-16"
|
|
109
|
+
}, oe = { class: "fm-typo-en-body-lg-600" }, te = { class: "fm-typo-en-body-md-400 text-fm-color-neutral-gray-400" }, ne = {
|
|
110
|
+
key: 2,
|
|
111
|
+
class: "flex flex-col items-center justify-center flex-1 gap-16"
|
|
112
|
+
}, ae = { class: "fm-typo-en-body-lg-600" }, se = { class: "fm-typo-en-body-md-400 text-fm-color-neutral-gray-400" }, ce = { class: "fm-typo-en-body-lg-600" }, le = { class: "flex gap-8 justify-end mt-auto pt-8" }, ve = /* @__PURE__ */ C({
|
|
113
|
+
__name: "ReviewFacebookCallback",
|
|
114
|
+
setup(s) {
|
|
115
|
+
const { t: n } = R(), _ = G();
|
|
116
|
+
function f() {
|
|
117
|
+
return _.replace({ name: D["$connect-REVIEW_SETTINGS"] });
|
|
118
|
+
}
|
|
119
|
+
const i = P([]), m = P(!1), w = P(!1), p = P(!1), c = P(null), F = M(
|
|
120
|
+
() => i.value.some((o) => o.locationIds.length > 0)
|
|
121
|
+
);
|
|
122
|
+
function r(o, t) {
|
|
123
|
+
const k = new Map(
|
|
124
|
+
t.map((d) => [d.facebookPageId, d])
|
|
125
|
+
);
|
|
126
|
+
return o.map((d) => {
|
|
127
|
+
var x;
|
|
128
|
+
return {
|
|
129
|
+
...d,
|
|
130
|
+
locationIds: ((x = k.get(d.facebookPageId)) == null ? void 0 : x.locationIds) ?? []
|
|
131
|
+
};
|
|
132
|
+
});
|
|
133
|
+
}
|
|
134
|
+
function v(o, t) {
|
|
135
|
+
return o instanceof Error ? o.message : t;
|
|
136
|
+
}
|
|
137
|
+
async function a() {
|
|
138
|
+
var d;
|
|
139
|
+
const o = window.location.hash;
|
|
140
|
+
if (!o) {
|
|
141
|
+
c.value = n("connect.review.noToken");
|
|
142
|
+
return;
|
|
143
|
+
}
|
|
144
|
+
const k = new URLSearchParams(o.slice(1)).get("access_token");
|
|
145
|
+
if (!k) {
|
|
146
|
+
c.value = n("connect.review.noToken");
|
|
147
|
+
return;
|
|
148
|
+
}
|
|
149
|
+
m.value = !0;
|
|
150
|
+
try {
|
|
151
|
+
const x = await L.getSource(), N = ((d = x == null ? void 0 : x.facebook) == null ? void 0 : d.pages) ?? [], E = await L.connectFacebook(k);
|
|
152
|
+
i.value = r((E == null ? void 0 : E.pages) ?? [], N), i.value.length === 0 && (c.value = n("connect.review.facebook.noPages"));
|
|
153
|
+
} catch (x) {
|
|
154
|
+
c.value = v(x, n("connect.review.facebook.failed"));
|
|
155
|
+
} finally {
|
|
156
|
+
m.value = !1;
|
|
157
|
+
}
|
|
158
|
+
}
|
|
159
|
+
async function b() {
|
|
160
|
+
const o = i.value.filter((t) => t.locationIds.length > 0).map((t) => ({
|
|
161
|
+
facebookPageId: t.facebookPageId,
|
|
162
|
+
locationIds: t.locationIds
|
|
163
|
+
}));
|
|
164
|
+
if (o.length === 0) {
|
|
165
|
+
c.value = n("connect.review.noMappings");
|
|
166
|
+
return;
|
|
167
|
+
}
|
|
168
|
+
w.value = !0;
|
|
169
|
+
try {
|
|
170
|
+
await L.updateFacebookPages(o), p.value = !0, setTimeout(f, 2e3);
|
|
171
|
+
} catch (t) {
|
|
172
|
+
c.value = v(t, n("connect.review.facebook.failed"));
|
|
173
|
+
} finally {
|
|
174
|
+
w.value = !1;
|
|
175
|
+
}
|
|
176
|
+
}
|
|
177
|
+
return B(a), (o, t) => {
|
|
178
|
+
const k = z("FmPageHead");
|
|
179
|
+
return l(), g($, null, [
|
|
180
|
+
y(k, {
|
|
181
|
+
title: e(n)("connect.navigation.review")
|
|
182
|
+
}, null, 8, ["title"]),
|
|
183
|
+
u("div", X, [
|
|
184
|
+
e(m) ? (l(), g("div", Y, [
|
|
185
|
+
y(e(I).FmIcon, {
|
|
186
|
+
name: "sync",
|
|
187
|
+
size: "xl",
|
|
188
|
+
class: "animate-spin text-fm-color-neutral-gray-400"
|
|
189
|
+
}),
|
|
190
|
+
u("p", Z, h(e(n)("connect.review.facebook.fetching")), 1)
|
|
191
|
+
])) : e(p) ? (l(), g("div", ee, [
|
|
192
|
+
y(e(I).FmIcon, {
|
|
193
|
+
name: "check_circle",
|
|
194
|
+
size: "xl",
|
|
195
|
+
class: "text-fm-color-typo-success"
|
|
196
|
+
}),
|
|
197
|
+
u("p", oe, h(e(n)("connect.review.facebook.success")), 1),
|
|
198
|
+
u("p", te, h(e(n)("connect.review.redirecting")), 1)
|
|
199
|
+
])) : e(c) ? (l(), g("div", ne, [
|
|
200
|
+
y(e(I).FmIcon, {
|
|
201
|
+
name: "error",
|
|
202
|
+
size: "xl",
|
|
203
|
+
class: "text-fm-color-system-error-500"
|
|
204
|
+
}),
|
|
205
|
+
u("p", ae, h(e(n)("connect.review.errorTitle")), 1),
|
|
206
|
+
u("p", se, h(e(c)), 1),
|
|
207
|
+
y(e(I).FmButton, {
|
|
208
|
+
label: e(n)("connect.review.goBack"),
|
|
209
|
+
onClick: t[0] || (t[0] = (d) => f())
|
|
210
|
+
}, null, 8, ["label"])
|
|
211
|
+
])) : e(i).length > 0 ? (l(), g($, { key: 3 }, [
|
|
212
|
+
u("p", ce, h(e(n)("connect.review.facebook.selectPage")), 1),
|
|
213
|
+
y(Q, {
|
|
214
|
+
pages: e(i),
|
|
215
|
+
"onUpdate:pages": t[1] || (t[1] = (d) => V(i) ? i.value = d : null)
|
|
216
|
+
}, null, 8, ["pages"]),
|
|
217
|
+
u("div", le, [
|
|
218
|
+
y(e(I).FmButton, {
|
|
219
|
+
variant: "outlined",
|
|
220
|
+
label: e(n)("connect.review.cancel"),
|
|
221
|
+
onClick: t[2] || (t[2] = (d) => f())
|
|
222
|
+
}, null, 8, ["label"]),
|
|
223
|
+
y(e(I).FmButton, {
|
|
224
|
+
label: e(n)("connect.review.connect"),
|
|
225
|
+
disabled: !e(F),
|
|
226
|
+
loading: e(w),
|
|
227
|
+
onClick: b
|
|
228
|
+
}, null, 8, ["label", "disabled", "loading"])
|
|
229
|
+
])
|
|
230
|
+
], 64)) : S("", !0)
|
|
231
|
+
])
|
|
232
|
+
], 64);
|
|
233
|
+
};
|
|
234
|
+
}
|
|
235
|
+
});
|
|
236
|
+
export {
|
|
237
|
+
ve as default
|
|
238
|
+
};
|
|
@@ -0,0 +1,213 @@
|
|
|
1
|
+
import { defineComponent as E, onMounted as T, ref as w, computed as B, openBlock as d, createElementBlock as p, Fragment as F, renderList as j, normalizeClass as z, unref as e, createElementVNode as m, createVNode as u, toDisplayString as y, createCommentVNode as S, createBlock as P, resolveComponent as U, isRef as V } from "vue";
|
|
2
|
+
import { u as A } from "./vue-i18n-DJXhpQga.js";
|
|
3
|
+
import { components as v } from "@feedmepos/ui-library";
|
|
4
|
+
import { r as C } from "./index-CJUzQG6t.js";
|
|
5
|
+
import { u as H } from "./business-6gZtKQ8L.js";
|
|
6
|
+
import { _ as D } from "./LocationPicker.vue_vue_type_script_setup_true_lang-B6tGeGGC.js";
|
|
7
|
+
import { R as O } from "./app-D8i8XAyR.js";
|
|
8
|
+
import { useRouter as W } from "vue-router";
|
|
9
|
+
const q = { class: "flex flex-col gap-8" }, J = ["onClick"], K = { class: "fm-typo-en-body-md-600 flex-1 truncate" }, Q = {
|
|
10
|
+
key: 0,
|
|
11
|
+
class: "fm-typo-en-body-sm-400 text-fm-color-primary-500 shrink-0"
|
|
12
|
+
}, X = /* @__PURE__ */ E({
|
|
13
|
+
__name: "GoogleLocationMapping",
|
|
14
|
+
props: {
|
|
15
|
+
locations: {}
|
|
16
|
+
},
|
|
17
|
+
emits: ["update:locations"],
|
|
18
|
+
setup(k, { emit: a }) {
|
|
19
|
+
const N = k, b = a, i = H();
|
|
20
|
+
T(() => i.readLocations());
|
|
21
|
+
const g = w(null), h = B(() => {
|
|
22
|
+
const l = /* @__PURE__ */ new Set();
|
|
23
|
+
for (const r of N.locations)
|
|
24
|
+
r.locationId && l.add(r.locationId);
|
|
25
|
+
return l;
|
|
26
|
+
});
|
|
27
|
+
function L(l) {
|
|
28
|
+
return i.locations.filter((r) => {
|
|
29
|
+
const t = r._id.toString();
|
|
30
|
+
return !h.value.has(t) || l.locationId === t;
|
|
31
|
+
});
|
|
32
|
+
}
|
|
33
|
+
function f(l, r) {
|
|
34
|
+
const t = r._id.toString(), _ = N.locations.map((n) => {
|
|
35
|
+
if (n.googleLocationName !== l) return n;
|
|
36
|
+
const o = n.locationId === t;
|
|
37
|
+
return {
|
|
38
|
+
...n,
|
|
39
|
+
locationId: o ? null : t,
|
|
40
|
+
locationName: o ? null : r.name
|
|
41
|
+
};
|
|
42
|
+
});
|
|
43
|
+
b("update:locations", _);
|
|
44
|
+
}
|
|
45
|
+
function I(l) {
|
|
46
|
+
g.value = g.value === l ? null : l;
|
|
47
|
+
}
|
|
48
|
+
return (l, r) => (d(), p("div", q, [
|
|
49
|
+
(d(!0), p(F, null, j(k.locations, (t) => (d(), p("div", {
|
|
50
|
+
key: t.googleLocationName,
|
|
51
|
+
class: z([
|
|
52
|
+
"rounded-lg border overflow-hidden transition-colors",
|
|
53
|
+
e(g) === t.googleLocationName ? "border-fm-color-primary-500" : "border-fm-color-neutral-gray-200"
|
|
54
|
+
])
|
|
55
|
+
}, [
|
|
56
|
+
m("button", {
|
|
57
|
+
class: "w-full flex items-center gap-12 p-16 bg-white text-left hover:bg-fm-color-neutral-gray-50 transition-colors",
|
|
58
|
+
onClick: (_) => I(t.googleLocationName)
|
|
59
|
+
}, [
|
|
60
|
+
u(e(v).FmIcon, {
|
|
61
|
+
name: "storefront",
|
|
62
|
+
class: "text-fm-color-neutral-gray-400 shrink-0"
|
|
63
|
+
}),
|
|
64
|
+
m("span", K, y(t.displayName || t.googleLocationName), 1),
|
|
65
|
+
t.locationName ? (d(), p("span", Q, y(t.locationName), 1)) : S("", !0),
|
|
66
|
+
u(e(v).FmIcon, {
|
|
67
|
+
name: e(g) === t.googleLocationName ? "expand_less" : "expand_more",
|
|
68
|
+
class: "text-fm-color-neutral-gray-400 shrink-0"
|
|
69
|
+
}, null, 8, ["name"])
|
|
70
|
+
], 8, J),
|
|
71
|
+
e(g) === t.googleLocationName ? (d(), P(D, {
|
|
72
|
+
key: 0,
|
|
73
|
+
locations: L(t),
|
|
74
|
+
"selected-ids": t.locationId ? [t.locationId] : [],
|
|
75
|
+
onToggle: (_) => f(t.googleLocationName, _)
|
|
76
|
+
}, null, 8, ["locations", "selected-ids", "onToggle"])) : S("", !0)
|
|
77
|
+
], 2))), 128))
|
|
78
|
+
]));
|
|
79
|
+
}
|
|
80
|
+
}), Y = { class: "flex flex-col min-h-full gap-16 p-24" }, Z = {
|
|
81
|
+
key: 0,
|
|
82
|
+
class: "flex flex-col items-center justify-center flex-1 gap-16"
|
|
83
|
+
}, ee = { class: "fm-typo-en-body-md-400 text-fm-color-neutral-gray-400" }, oe = {
|
|
84
|
+
key: 1,
|
|
85
|
+
class: "flex flex-col items-center justify-center flex-1 gap-16"
|
|
86
|
+
}, te = { class: "fm-typo-en-body-lg-600" }, ne = { class: "fm-typo-en-body-md-400 text-fm-color-neutral-gray-400" }, ae = {
|
|
87
|
+
key: 2,
|
|
88
|
+
class: "flex flex-col items-center justify-center flex-1 gap-16"
|
|
89
|
+
}, le = { class: "fm-typo-en-body-lg-600" }, se = { class: "fm-typo-en-body-md-400 text-fm-color-neutral-gray-400" }, ce = { class: "fm-typo-en-body-lg-600" }, ie = { class: "flex gap-8 justify-end mt-auto pt-8" }, ve = /* @__PURE__ */ E({
|
|
90
|
+
__name: "ReviewGoogleCallback",
|
|
91
|
+
setup(k) {
|
|
92
|
+
const { t: a } = A(), N = W();
|
|
93
|
+
function b() {
|
|
94
|
+
return N.replace({ name: O["$connect-REVIEW_SETTINGS"] });
|
|
95
|
+
}
|
|
96
|
+
const i = w([]), g = w(!1), h = w(!1), L = w(!1), f = w(null), I = B(
|
|
97
|
+
() => i.value.some((n) => n.locationId !== null)
|
|
98
|
+
);
|
|
99
|
+
function l(n, o) {
|
|
100
|
+
return n instanceof Error ? n.message : o;
|
|
101
|
+
}
|
|
102
|
+
function r(n, o) {
|
|
103
|
+
const x = new Map(
|
|
104
|
+
o.map((s) => [s.googleLocationName, s.location])
|
|
105
|
+
);
|
|
106
|
+
return n.map((s) => {
|
|
107
|
+
const c = x.get(s.googleLocationName) ?? null;
|
|
108
|
+
return {
|
|
109
|
+
googleLocationName: s.googleLocationName,
|
|
110
|
+
displayName: s.displayName,
|
|
111
|
+
locationId: (c == null ? void 0 : c._id) ?? null,
|
|
112
|
+
locationName: (c == null ? void 0 : c.name) ?? null
|
|
113
|
+
};
|
|
114
|
+
});
|
|
115
|
+
}
|
|
116
|
+
async function t() {
|
|
117
|
+
var s;
|
|
118
|
+
const n = new URLSearchParams(window.location.search), o = n.get("code"), x = n.get("state");
|
|
119
|
+
if (!o || !x) {
|
|
120
|
+
f.value = a("connect.review.noToken");
|
|
121
|
+
return;
|
|
122
|
+
}
|
|
123
|
+
g.value = !0;
|
|
124
|
+
try {
|
|
125
|
+
const c = await C.getSource(), R = ((s = c == null ? void 0 : c.google) == null ? void 0 : s.locations) ?? [], M = window.location.pathname.replace(/\/review(?:\/.*)?$/, ""), G = `${window.location.origin}${M}/review/google/callback`, $ = await C.connectGoogle(o, G, x);
|
|
126
|
+
i.value = r(($ == null ? void 0 : $.locations) ?? [], R), i.value.length === 0 && (f.value = a("connect.review.google.noLocations"));
|
|
127
|
+
} catch (c) {
|
|
128
|
+
f.value = l(c, a("connect.review.google.failed"));
|
|
129
|
+
} finally {
|
|
130
|
+
g.value = !1;
|
|
131
|
+
}
|
|
132
|
+
}
|
|
133
|
+
async function _() {
|
|
134
|
+
const n = i.value.map((o) => ({
|
|
135
|
+
googleLocationName: o.googleLocationName,
|
|
136
|
+
displayName: o.displayName,
|
|
137
|
+
locationId: o.locationId
|
|
138
|
+
}));
|
|
139
|
+
if (n.length === 0) {
|
|
140
|
+
f.value = a("connect.review.noMappings");
|
|
141
|
+
return;
|
|
142
|
+
}
|
|
143
|
+
h.value = !0;
|
|
144
|
+
try {
|
|
145
|
+
await C.updateGoogleLocations(n), L.value = !0, setTimeout(b, 2e3);
|
|
146
|
+
} catch (o) {
|
|
147
|
+
f.value = l(o, a("connect.review.google.failed"));
|
|
148
|
+
} finally {
|
|
149
|
+
h.value = !1;
|
|
150
|
+
}
|
|
151
|
+
}
|
|
152
|
+
return T(t), (n, o) => {
|
|
153
|
+
const x = U("FmPageHead");
|
|
154
|
+
return d(), p(F, null, [
|
|
155
|
+
u(x, {
|
|
156
|
+
title: e(a)("connect.navigation.review")
|
|
157
|
+
}, null, 8, ["title"]),
|
|
158
|
+
m("div", Y, [
|
|
159
|
+
e(g) ? (d(), p("div", Z, [
|
|
160
|
+
u(e(v).FmIcon, {
|
|
161
|
+
name: "sync",
|
|
162
|
+
size: "xl",
|
|
163
|
+
class: "animate-spin text-fm-color-neutral-gray-400"
|
|
164
|
+
}),
|
|
165
|
+
m("p", ee, y(e(a)("connect.review.google.fetching")), 1)
|
|
166
|
+
])) : e(L) ? (d(), p("div", oe, [
|
|
167
|
+
u(e(v).FmIcon, {
|
|
168
|
+
name: "check_circle",
|
|
169
|
+
size: "xl",
|
|
170
|
+
class: "text-fm-color-typo-success"
|
|
171
|
+
}),
|
|
172
|
+
m("p", te, y(e(a)("connect.review.google.success")), 1),
|
|
173
|
+
m("p", ne, y(e(a)("connect.review.redirecting")), 1)
|
|
174
|
+
])) : e(f) ? (d(), p("div", ae, [
|
|
175
|
+
u(e(v).FmIcon, {
|
|
176
|
+
name: "error",
|
|
177
|
+
size: "xl",
|
|
178
|
+
class: "text-fm-color-system-error-500"
|
|
179
|
+
}),
|
|
180
|
+
m("p", le, y(e(a)("connect.review.errorTitle")), 1),
|
|
181
|
+
m("p", se, y(e(f)), 1),
|
|
182
|
+
u(e(v).FmButton, {
|
|
183
|
+
label: e(a)("connect.review.goBack"),
|
|
184
|
+
onClick: o[0] || (o[0] = (s) => b())
|
|
185
|
+
}, null, 8, ["label"])
|
|
186
|
+
])) : e(i).length > 0 ? (d(), p(F, { key: 3 }, [
|
|
187
|
+
m("p", ce, y(e(a)("connect.review.google.selectLocation")), 1),
|
|
188
|
+
u(X, {
|
|
189
|
+
locations: e(i),
|
|
190
|
+
"onUpdate:locations": o[1] || (o[1] = (s) => V(i) ? i.value = s : null)
|
|
191
|
+
}, null, 8, ["locations"]),
|
|
192
|
+
m("div", ie, [
|
|
193
|
+
u(e(v).FmButton, {
|
|
194
|
+
variant: "outlined",
|
|
195
|
+
label: e(a)("connect.review.cancel"),
|
|
196
|
+
onClick: o[2] || (o[2] = (s) => b())
|
|
197
|
+
}, null, 8, ["label"]),
|
|
198
|
+
u(e(v).FmButton, {
|
|
199
|
+
label: e(a)("connect.review.connect"),
|
|
200
|
+
disabled: !e(I),
|
|
201
|
+
loading: e(h),
|
|
202
|
+
onClick: _
|
|
203
|
+
}, null, 8, ["label", "disabled", "loading"])
|
|
204
|
+
])
|
|
205
|
+
], 64)) : S("", !0)
|
|
206
|
+
])
|
|
207
|
+
], 64);
|
|
208
|
+
};
|
|
209
|
+
}
|
|
210
|
+
});
|
|
211
|
+
export {
|
|
212
|
+
ve as default
|
|
213
|
+
};
|
|
@@ -1,26 +1,26 @@
|
|
|
1
1
|
import { defineComponent as X, ref as x, computed as H, resolveComponent as w, openBlock as b, createBlock as h, unref as t, isRef as Z, withCtx as A, createElementVNode as f, createVNode as d, createCommentVNode as k, createElementBlock as M, Fragment as Y, h as O, onMounted as q, toDisplayString as B } from "vue";
|
|
2
2
|
import { _ as z } from "./campaign-CpzFl8Vr.js";
|
|
3
3
|
import { useDialog as Q, components as L } from "@feedmepos/ui-library";
|
|
4
|
-
import { u as G } from "./loading-
|
|
5
|
-
import { u as J, C as ee } from "./membership-
|
|
6
|
-
import { f as j, p as te } from "./plugins-
|
|
7
|
-
import { u as oe } from "./vue-i18n-
|
|
4
|
+
import { u as G } from "./loading-EnU7K0k3.js";
|
|
5
|
+
import { u as J, C as ee } from "./membership-B1eIzQDB.js";
|
|
6
|
+
import { f as j, p as te } from "./plugins-DJ13vaqz.js";
|
|
7
|
+
import { u as oe } from "./vue-i18n-DJXhpQga.js";
|
|
8
8
|
import { c as ae } from "./object-qECH92oz.js";
|
|
9
|
-
import { Z as _ } from "./zod-
|
|
10
|
-
import "./index-
|
|
11
|
-
import { F as N } from "./index-
|
|
9
|
+
import { Z as _ } from "./zod-BM5P7Bti.js";
|
|
10
|
+
import "./index-hTgJrZR8.js";
|
|
11
|
+
import { F as N } from "./index-D6wOnTAl.js";
|
|
12
12
|
import { useCoreStore as le } from "@feedmepos/mf-common";
|
|
13
|
-
import { _ as ne, a as ie } from "./VoucherEditor.vue_vue_type_script_setup_true_lang-
|
|
14
|
-
import { b as re } from "./EffectSheet.vue_vue_type_style_index_0_lang-
|
|
13
|
+
import { _ as ne, a as ie } from "./VoucherEditor.vue_vue_type_script_setup_true_lang-DD2WD_Vt.js";
|
|
14
|
+
import { b as re } from "./EffectSheet.vue_vue_type_style_index_0_lang-CbpKQj-r.js";
|
|
15
15
|
import { J as K } from "./JsonViewer-v8_C7l5N.js";
|
|
16
|
-
import { _ as se } from "./ZodTextField.vue_vue_type_script_setup_true_lang-
|
|
17
|
-
import { i as de } from "./helper-
|
|
18
|
-
import { u as pe, r as P } from "./reward-
|
|
19
|
-
import "./index-
|
|
20
|
-
import { C as ce } from "./campaign.fn-
|
|
21
|
-
import { e as me } from "./effect-
|
|
16
|
+
import { _ as se } from "./ZodTextField.vue_vue_type_script_setup_true_lang-CAtzo8zL.js";
|
|
17
|
+
import { i as de } from "./helper-BQYvN6FL.js";
|
|
18
|
+
import { u as pe, r as P } from "./reward-Cmx_swM1.js";
|
|
19
|
+
import "./index-Dz130JVH.js";
|
|
20
|
+
import { C as ce } from "./campaign.fn-BvxZt-0r.js";
|
|
21
|
+
import { e as me } from "./effect-CkurpNMu.js";
|
|
22
22
|
import { useRouter as ue } from "vue-router";
|
|
23
|
-
import { R as ye } from "./app-
|
|
23
|
+
import { R as ye } from "./app-D8i8XAyR.js";
|
|
24
24
|
const fe = { class: "flex gap-8 items-center justify-start" }, we = /* @__PURE__ */ X({
|
|
25
25
|
__name: "EditRewardSheet",
|
|
26
26
|
emits: ["update"],
|