@feedmepos/mf-connect 0.1.0-beta.76 → 0.1.0-beta.78

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 (88) hide show
  1. package/dist/{Analytic-BEX0W26t.js → Analytic-COFGqPaY.js} +11 -11
  2. package/dist/{App-B37shyio.js → App-DPIsSDoL.js} +6 -6
  3. package/dist/{AuditLogs-CffLLmgR.js → AuditLogs-BZw3BdUt.js} +9 -9
  4. package/dist/{Bin-ByblUwUe.js → Bin-BMr8cViJ.js} +8 -8
  5. package/dist/{Broadcast-C2Bgkw6V.js → Broadcast-BVLLsk8s.js} +9 -9
  6. package/dist/{CampaignTypeDialog.vue_vue_type_script_setup_true_lang-jviTok84.js → CampaignTypeDialog.vue_vue_type_script_setup_true_lang-BWiarXE5.js} +6 -6
  7. package/dist/{Card-CmhjJrq4.js → Card-CYEk8Xz-.js} +16 -16
  8. package/dist/{Collections-DXwp81Z5.js → Collections-CI0ltpA3.js} +115 -111
  9. package/dist/{Credit-C7nVnyLE.js → Credit-DOjneP7A.js} +9 -9
  10. package/dist/{EditCampaignSheet.vue_vue_type_script_setup_true_lang-B8OetxD5.js → EditCampaignSheet.vue_vue_type_script_setup_true_lang-DIwlWceJ.js} +40 -40
  11. package/dist/{EffectSheet.vue_vue_type_style_index_0_lang-DSEbv2th.js → EffectSheet.vue_vue_type_style_index_0_lang-BkIob-96.js} +6 -6
  12. package/dist/{Experience-Dt7eS803.js → Experience-DJ-Yv0ZW.js} +9 -9
  13. package/dist/{Game-D6Rd8EiP.js → Game-dhKJxiVz.js} +10 -10
  14. package/dist/{Index-Bwk3-hi7.js → Index-Clakr6Ox.js} +10 -10
  15. package/dist/{Marketing-D7PGcgvf.js → Marketing-TPWekqs3.js} +6 -6
  16. package/dist/{Member-xLRDSRGX.js → Member-DX9VQPR-.js} +10 -10
  17. package/dist/{MemberList-C2KTiNo8.js → MemberList-Devc8yEc.js} +29 -26
  18. package/dist/{MemberTransactions-DeSQj6Hb.js → MemberTransactions-DcRlsme8.js} +1 -1
  19. package/dist/{MessageInput.vue_vue_type_script_setup_true_lang-BXowXpx5.js → MessageInput.vue_vue_type_script_setup_true_lang-R5xLjJBo.js} +146 -144
  20. package/dist/{Mission-C_oIC_Qy.js → Mission-ag5FCZ5A.js} +10 -10
  21. package/dist/{Overview-k_S6Xw7W.js → Overview-Cl9hgjsZ.js} +18 -18
  22. package/dist/{Point-Clh-RJDJ.js → Point-Dw-UBBOW.js} +9 -9
  23. package/dist/{Promotion-Bx8nrXaK.js → Promotion-OV94bumI.js} +10 -10
  24. package/dist/{Queue-CZKA5dNa.js → Queue-pu6TTf7D.js} +10 -10
  25. package/dist/{Record-f6MIjxW-.js → Record-B5uKgYVf.js} +8 -8
  26. package/dist/{Reward-BWPTRfzF.js → Reward-DDwsuP4F.js} +15 -15
  27. package/dist/{RewardGroup.vue_vue_type_script_setup_true_lang-Lm3CoKbR.js → RewardGroup.vue_vue_type_script_setup_true_lang-HVTtA42N.js} +11 -11
  28. package/dist/{RuleGroup.vue_vue_type_script_setup_true_lang-D--VbQVQ.js → RuleGroup.vue_vue_type_script_setup_true_lang-BMZ3efkn.js} +13 -13
  29. package/dist/{Segment-nw3f_GaH.js → Segment-DKBD-ir9.js} +219 -209
  30. package/dist/{SelectItems.vue_vue_type_script_setup_true_lang-CS50BqbP.js → SelectItems.vue_vue_type_script_setup_true_lang-DuFNjzz2.js} +2 -2
  31. package/dist/{SendCollectionSheet.vue_vue_type_script_setup_true_lang-CQN3-f-u.js → SendCollectionSheet.vue_vue_type_script_setup_true_lang-epeStluk.js} +11 -11
  32. package/dist/{SendVoucherSheet.vue_vue_type_script_setup_true_lang-61JEa7bb.js → SendVoucherSheet.vue_vue_type_script_setup_true_lang-HOZtMD8m.js} +3 -3
  33. package/dist/{Setting-DvU5aYwQ.js → Setting-CF6icpzB.js} +11 -11
  34. package/dist/{Store-knOLFAwu.js → Store-jCGVEenv.js} +19 -19
  35. package/dist/{StoreRewards-DzRm9fAd.js → StoreRewards-Dvx1AslZ.js} +13 -13
  36. package/dist/{StoreTransactions.vue_vue_type_script_setup_true_lang-DPb1uIuI.js → StoreTransactions.vue_vue_type_script_setup_true_lang-r6r020Dt.js} +19 -19
  37. package/dist/{TargetLocationInput.vue_vue_type_script_setup_true_lang-DjbIKCPW.js → TargetLocationInput.vue_vue_type_script_setup_true_lang-CmrEl3Yk.js} +1 -1
  38. package/dist/{Tier-DaS2t5vf.js → Tier-Cj7X21GD.js} +155 -149
  39. package/dist/{Title-BmWVQAVd.js → Title-DcbY1n-j.js} +19 -19
  40. package/dist/{Transaction-QQdDVX3d.js → Transaction-Bz96V3PC.js} +2 -2
  41. package/dist/{UserRuleGroup.vue_vue_type_script_setup_true_lang-mgx3WQkZ.js → UserRuleGroup.vue_vue_type_script_setup_true_lang-ClILt7R6.js} +6 -6
  42. package/dist/{Voucher-e3fwsfzv.js → Voucher-6MohzB7D.js} +12 -12
  43. package/dist/{VoucherEditor.vue_vue_type_script_setup_true_lang-9_wK8PrL.js → VoucherEditor.vue_vue_type_script_setup_true_lang-Br2TzG_z.js} +10 -10
  44. package/dist/{ZodTextField.vue_vue_type_script_setup_true_lang-CYegMpRN.js → ZodTextField.vue_vue_type_script_setup_true_lang-DgvvO2gO.js} +1 -1
  45. package/dist/{app-1i7mx0dZ.js → app-CIoD2R-K.js} +1 -1
  46. package/dist/{app-BN77OXgS.js → app-DV1X0r0I.js} +31 -31
  47. package/dist/app.js +1 -1
  48. package/dist/{business-DqRPnW29.js → business-DMF3Rbwd.js} +1 -1
  49. package/dist/{campaign-b9FvKigH.js → campaign-CcKeyKqS.js} +2 -2
  50. package/dist/{campaign-B-4_cJoI.js → campaign-sNDioVDM.js} +9 -9
  51. package/dist/{campaign.enum-CDVoZ8sM.js → campaign.enum-DWPLuyAA.js} +1 -1
  52. package/dist/{campaign.fn-C6FtAdXE.js → campaign.fn-CJYOhzha.js} +81 -81
  53. package/dist/{collectible.enum-CjBbYd8r.js → collectible.enum-Uu7QxmuQ.js} +1 -1
  54. package/dist/{collection.fn-DzvhTgvy.js → collection.fn-Yp14LG7x.js} +2 -2
  55. package/dist/{dto-D9PkBV2m.js → dto-zGjQ6x7R.js} +4 -4
  56. package/dist/{effect-gk-rwqTS.js → effect-D3o0cZ7X.js} +1 -1
  57. package/dist/{email-addresses-B6TJYRyi.js → email-addresses-CpWzGfK9.js} +1 -1
  58. package/dist/{export-Dz6QgXPN.js → export-BkrVFLKs.js} +3 -3
  59. package/dist/{helper-ChjpvgXI.js → helper-Cf1YE8-n.js} +1 -1
  60. package/dist/{index-BH2tnZva.js → index-B8yNbtv_.js} +1 -1
  61. package/dist/{index-PgUO1aJB.js → index-Bkve_3H5.js} +41 -39
  62. package/dist/{index-DaiMhPcB.js → index-CCOx8i3W.js} +3 -3
  63. package/dist/{index-CdRq0mem.js → index-CITShaww.js} +1 -1
  64. package/dist/{index-D1XWT8fK.js → index-COQALKlJ.js} +1167 -1167
  65. package/dist/{index-BLdXv3F2.js → index-CcbaKu7C.js} +1 -1
  66. package/dist/{index-B91yws4l.js → index-CrZYIPTH.js} +2 -2
  67. package/dist/{index-HR-s-wxL.js → index-DFcQWWVm.js} +1 -1
  68. package/dist/{index-BHRp97cP.js → index-DYfDTP1G.js} +1 -1
  69. package/dist/{index-T5VJ7LOc.js → index-DyKlplJw.js} +6 -6
  70. package/dist/{index-CXBFjuZG.js → index-DyfOQIN-.js} +1 -1
  71. package/dist/{index-kV76DTQa.js → index-F7a-_glt.js} +1 -1
  72. package/dist/{index-D81rTS6w.js → index-jSq2EeMi.js} +3 -3
  73. package/dist/{index.esm2017-Cse5Z0VX.js → index.esm2017-BRdeDr5A.js} +1 -1
  74. package/dist/{loading-CTlOzqJl.js → loading-D1Wfmkyd.js} +1 -1
  75. package/dist/{membership-BEHTbLlS.js → membership-BO_9k1RM.js} +3 -3
  76. package/dist/{money-qwQnNFuK.js → money-V3RA3X7v.js} +1 -1
  77. package/dist/{number-g3UEQ6sr.js → number-CEwwmgZz.js} +1 -1
  78. package/dist/{objectid-D3FHs3ZM.js → objectid-BUlLvAIh.js} +14 -14
  79. package/dist/{plugins-C1KEHJqD.js → plugins-BXaXmsYI.js} +2 -2
  80. package/dist/{reward-BKE2TAvZ.js → reward-D-gsY6lW.js} +1 -1
  81. package/dist/{rule-Bqmb5DjB.js → rule-DT8KRyMs.js} +3 -3
  82. package/dist/{rule-builder-Cv6CdZ_v.js → rule-builder-Blm8jQnv.js} +1 -1
  83. package/dist/{template-DNmDTslz.js → template-D6GdIov5.js} +4 -4
  84. package/dist/{trigger-BJb8Msn3.js → trigger-C_3L1xNz.js} +4 -4
  85. package/dist/{user-D2PePZtI.js → user-o8b4rvYg.js} +1 -1
  86. package/dist/{vue-i18n-DPPL08ue.js → vue-i18n-Bj7k-2AQ.js} +317 -317
  87. package/dist/{xlsx-DYWFGuKq.js → xlsx-C0KLFk50.js} +1 -1
  88. package/package.json +1 -1
@@ -1,11 +1,13 @@
1
- import { defineComponent as j, shallowRef as N, openBlock as p, createElementBlock as M, normalizeStyle as O, ref as V, resolveComponent as g, createBlock as E, unref as s, isRef as P, withCtx as x, createVNode as h, createElementVNode as v, createCommentVNode as T, withDirectives as U, vShow as A, computed as q, onMounted as G, Fragment as L, createTextVNode as J, toDisplayString as z, renderList as K } from "vue";
2
- import { p as W } from "./plugins-C1KEHJqD.js";
3
- import { B as Y } from "./index-PgUO1aJB.js";
4
- import "./index-D1XWT8fK.js";
5
- import { _ as Z } from "./_plugin-vue_export-helper-CHgC5LLL.js";
6
- import { _ as Q, S as X } from "./LottieAnimation.vue_vue_type_script_setup_true_lang-CyGJxUol.js";
7
- import { c as ee } from "./object-qECH92oz.js";
8
- const te = {
1
+ import { defineComponent as I, shallowRef as G, openBlock as p, createElementBlock as C, normalizeStyle as P, ref as M, resolveComponent as g, createBlock as _, unref as i, isRef as q, withCtx as x, createVNode as h, createElementVNode as v, createCommentVNode as H, withDirectives as A, vShow as B, computed as J, onMounted as z, Fragment as T, createTextVNode as K, toDisplayString as W, renderList as X } from "vue";
2
+ import { p as Y } from "./plugins-BXaXmsYI.js";
3
+ import { B as Z } from "./index-Bkve_3H5.js";
4
+ import "./index-COQALKlJ.js";
5
+ import { _ as Q } from "./_plugin-vue_export-helper-CHgC5LLL.js";
6
+ import { _ as ee, S as te } from "./LottieAnimation.vue_vue_type_script_setup_true_lang-CyGJxUol.js";
7
+ import { c as ne } from "./object-qECH92oz.js";
8
+ import { useCoreStore as oe } from "@feedmepos/mf-common";
9
+ import { u as ae } from "./membership-BO_9k1RM.js";
10
+ const se = {
9
11
  "user.name": {
10
12
  name: "User name"
11
13
  },
@@ -45,36 +47,36 @@ const te = {
45
47
  "membership.url": {
46
48
  name: "Membership URL"
47
49
  }
48
- }, _e = {
50
+ }, Ie = {
49
51
  MY: ["user.phoneNumber", "membership.url"]
50
- }, ne = "https://editor.unlayer.com/embed.js?2", R = [];
51
- let H = !1;
52
- const ae = (e) => {
52
+ }, ie = "https://editor.unlayer.com/embed.js?2", N = [];
53
+ let O = !1;
54
+ const re = (e) => {
53
55
  const n = document.querySelectorAll("script");
54
- let i = !1;
55
- return n.forEach((u) => {
56
- u.src.includes(e) && (i = !0);
57
- }), i;
58
- }, ie = (e) => {
59
- R.push(e);
60
- }, B = () => {
61
- if (H) {
56
+ let r = !1;
57
+ return n.forEach((m) => {
58
+ m.src.includes(e) && (r = !0);
59
+ }), r;
60
+ }, le = (e) => {
61
+ N.push(e);
62
+ }, R = () => {
63
+ if (O) {
62
64
  let e;
63
- for (; e = R.shift(); )
65
+ for (; e = N.shift(); )
64
66
  e();
65
67
  }
66
- }, oe = (e, n = ne) => {
67
- if (ie(e), ae(n))
68
- B();
68
+ }, de = (e, n = ie) => {
69
+ if (le(e), re(n))
70
+ R();
69
71
  else {
70
- const i = document.createElement("script");
71
- i.setAttribute("src", n), i.onload = () => {
72
- H = !0, B();
73
- }, document.head.appendChild(i);
72
+ const r = document.createElement("script");
73
+ r.setAttribute("src", n), r.onload = () => {
74
+ O = !0, R();
75
+ }, document.head.appendChild(r);
74
76
  }
75
77
  };
76
- let se = 0;
77
- const re = j({
78
+ let ue = 0;
79
+ const me = I({
78
80
  name: "EmailEditor",
79
81
  props: {
80
82
  editorId: String,
@@ -103,17 +105,17 @@ const re = j({
103
105
  },
104
106
  computed: {
105
107
  id() {
106
- return this.editorId || `editor-${++se}`;
108
+ return this.editorId || `editor-${++ue}`;
107
109
  }
108
110
  },
109
111
  setup() {
110
112
  return {
111
- editor: N(null)
113
+ editor: G(null)
112
114
  // Makes editor available to the template
113
115
  };
114
116
  },
115
117
  mounted() {
116
- this.$emit("load"), oe(this.loadEditor.bind(this), this.scriptUrl);
118
+ this.$emit("load"), de(this.loadEditor.bind(this), this.scriptUrl);
117
119
  },
118
120
  methods: {
119
121
  loadEditor() {
@@ -147,15 +149,15 @@ const re = j({
147
149
  (n = this.editor) == null || n.saveDesign(e);
148
150
  }
149
151
  }
150
- }), le = ["id"];
151
- function de(e, n, i, u, y, r) {
152
- return p(), M("div", {
152
+ }), ce = ["id"];
153
+ function pe(e, n, r, m, a, c) {
154
+ return p(), C("div", {
153
155
  id: e.id,
154
156
  class: "unlayer-editor",
155
- style: O({ minHeight: e.minHeight })
156
- }, null, 12, le);
157
+ style: P({ minHeight: e.minHeight })
158
+ }, null, 12, ce);
157
159
  }
158
- const ue = /* @__PURE__ */ Z(re, [["render", de], ["__scopeId", "data-v-a9a2bb94"]]), ce = { class: "h-full flex flex-col" }, me = { class: "flex items-center gap-8" }, pe = /* @__PURE__ */ j({
160
+ const he = /* @__PURE__ */ Q(me, [["render", pe], ["__scopeId", "data-v-a9a2bb94"]]), fe = { class: "h-full flex flex-col" }, ge = { class: "flex items-center gap-8" }, be = /* @__PURE__ */ I({
159
161
  __name: "EmailEditorSheet",
160
162
  props: {
161
163
  design: {
@@ -168,83 +170,83 @@ const ue = /* @__PURE__ */ Z(re, [["render", de], ["__scopeId", "data-v-a9a2bb94
168
170
  }
169
171
  },
170
172
  emits: ["update:design"],
171
- setup(e, { expose: n, emit: i }) {
172
- const u = V(!1), y = V(null), r = V(!1), b = e, f = V({
173
+ setup(e, { expose: n, emit: r }) {
174
+ const m = M(!1), a = M(null), c = M(!1), b = e, l = M({
173
175
  html: "",
174
176
  design: b.design,
175
177
  title: b.title || ""
176
178
  });
177
179
  function S(o) {
178
- u.value = o;
180
+ m.value = o;
179
181
  }
180
- const l = i;
181
- function t() {
182
- y.value && (y.value.exportHtml((o) => {
183
- f.value = {
182
+ const w = r;
183
+ function F() {
184
+ a.value && (a.value.exportHtml((o) => {
185
+ l.value = {
184
186
  html: o.html,
185
187
  design: o.design,
186
- title: f.value.title
187
- }, l("update:design", f.value);
188
+ title: l.value.title
189
+ }, w("update:design", l.value);
188
190
  }), S(!1));
189
191
  }
190
192
  return n({
191
193
  showSheet: S
192
- }), (o, a) => {
193
- const c = g("FmButton"), w = g("FmTextField"), _ = g("FmSideSheet");
194
- return p(), E(_, {
195
- modelValue: s(u),
196
- "onUpdate:modelValue": a[4] || (a[4] = (d) => P(u) ? u.value = d : null),
194
+ }), (o, t) => {
195
+ const d = g("FmButton"), f = g("FmTextField"), y = g("FmSideSheet");
196
+ return p(), _(y, {
197
+ modelValue: i(m),
198
+ "onUpdate:modelValue": t[4] || (t[4] = (s) => q(m) ? m.value = s : null),
197
199
  header: "Email editor",
198
200
  "max-width": 1280
199
201
  }, {
200
202
  "side-sheet-button": x(() => [
201
- h(c, {
203
+ h(d, {
202
204
  label: "Edit email",
203
205
  variant: "tertiary",
204
206
  icon: "edit"
205
207
  })
206
208
  ]),
207
209
  default: x(() => [
208
- v("div", ce, [
209
- s(r) ? T("", !0) : (p(), E(Q, {
210
+ v("div", fe, [
211
+ i(c) ? H("", !0) : (p(), _(ee, {
210
212
  key: 0,
211
213
  class: "flex-1",
212
- json: s(X),
214
+ json: i(te),
213
215
  width: 100,
214
216
  height: 100
215
217
  }, null, 8, ["json"])),
216
- U(h(w, {
218
+ A(h(f, {
217
219
  label: "Email title",
218
- modelValue: s(f).title,
219
- "onUpdate:modelValue": a[0] || (a[0] = (d) => s(f).title = d)
220
+ modelValue: i(l).title,
221
+ "onUpdate:modelValue": t[0] || (t[0] = (s) => i(l).title = s)
220
222
  }, null, 8, ["modelValue"]), [
221
- [A, s(r)]
223
+ [B, i(c)]
222
224
  ]),
223
- U(h(ue, {
225
+ A(h(he, {
224
226
  class: "flex-1",
225
227
  ref_key: "editorRef",
226
- ref: y,
227
- onLoad: a[1] || (a[1] = (d) => r.value = !1),
228
- onReady: a[2] || (a[2] = () => {
229
- var d;
230
- r.value = !0, b.design && ((d = s(y)) == null || d.loadDesign(s(ee)(b.design)));
228
+ ref: a,
229
+ onLoad: t[1] || (t[1] = (s) => c.value = !1),
230
+ onReady: t[2] || (t[2] = () => {
231
+ var s;
232
+ c.value = !0, b.design && ((s = i(a)) == null || s.loadDesign(i(ne)(b.design)));
231
233
  })
232
234
  }, null, 512), [
233
- [A, s(r)]
235
+ [B, i(c)]
234
236
  ])
235
237
  ])
236
238
  ]),
237
239
  "side-sheet-footer": x(() => [
238
- v("div", me, [
239
- h(c, {
240
+ v("div", ge, [
241
+ h(d, {
240
242
  variant: "primary",
241
243
  label: "Confirm",
242
- onClick: t
244
+ onClick: F
243
245
  }),
244
- h(c, {
246
+ h(d, {
245
247
  variant: "tertiary",
246
248
  label: "Cancel",
247
- onClick: a[3] || (a[3] = (d) => S(!1))
249
+ onClick: t[3] || (t[3] = (s) => S(!1))
248
250
  })
249
251
  ])
250
252
  ]),
@@ -252,7 +254,7 @@ const ue = /* @__PURE__ */ Z(re, [["render", de], ["__scopeId", "data-v-a9a2bb94
252
254
  }, 8, ["modelValue"]);
253
255
  };
254
256
  }
255
- }), he = { class: "space-y-4" }, fe = { class: "flex items-center gap-8 justify-between" }, ge = { class: "relative" }, ye = { class: "absolute bottom-[24px] right-[4px]" }, je = /* @__PURE__ */ j({
257
+ }), ye = { class: "space-y-4" }, ve = { class: "flex items-center gap-8 justify-between" }, xe = { class: "relative" }, Se = { class: "absolute bottom-[24px] right-[4px]" }, Le = /* @__PURE__ */ I({
256
258
  __name: "MessageInput",
257
259
  props: {
258
260
  allowEmail: {
@@ -293,10 +295,10 @@ const ue = /* @__PURE__ */ Z(re, [["render", de], ["__scopeId", "data-v-a9a2bb94
293
295
  },
294
296
  emits: ["update:model-value"],
295
297
  setup(e, { emit: n }) {
296
- const i = e, u = n;
297
- function y() {
298
- var o;
299
- const l = {
298
+ const r = oe(), m = ae(), a = e, c = n;
299
+ function b() {
300
+ var d;
301
+ const o = {
300
302
  user: {
301
303
  name: "John Doe",
302
304
  tier: 1,
@@ -311,26 +313,28 @@ const ue = /* @__PURE__ */ Z(re, [["render", de], ["__scopeId", "data-v-a9a2bb94
311
313
  collectible: {
312
314
  name: "RM10 Voucher"
313
315
  }
314
- }, t = Y(
315
- ((o = i.modelValue) == null ? void 0 : o.content) ?? "",
316
- l
316
+ }, t = Z(
317
+ ((d = a.modelValue) == null ? void 0 : d.content) ?? "",
318
+ o
317
319
  );
318
- W.confirm(t, "Preview message", "OK");
320
+ Y.confirm(t, "Preview message", "OK");
319
321
  }
320
- function r(l, t = "SMS") {
321
- u("update:model-value", {
322
+ function l(o, t = "SMS") {
323
+ c("update:model-value", {
322
324
  channel: t,
323
- content: t == "SMS" ? l : l.html,
324
- design: t == "EMAIL" ? l.design : void 0,
325
+ content: t == "SMS" ? o : o.html,
326
+ design: t == "EMAIL" ? o.design : void 0,
325
327
  language: "en",
326
- title: t == "EMAIL" ? l.title : void 0,
327
- variables: i.variables
328
+ title: t == "EMAIL" ? o.title : void 0,
329
+ variables: a.variables
328
330
  });
329
331
  }
330
- const b = V(i.helperState || "none"), f = q(() => {
331
- var o;
332
- const l = ((o = i.modelValue) == null ? void 0 : o.content.replace(/{{([^}]+)}}/g, (a, c) => {
333
- switch (c) {
332
+ const S = M(a.helperState || "none"), w = J(() => {
333
+ var V, E;
334
+ const o = ((V = m.membership) == null ? void 0 : V.brand) || r.currentBusiness.value.name || "", t = 160;
335
+ let d = t;
336
+ const f = ((E = a.modelValue) == null ? void 0 : E.content.replace(/{{([^}]+)}}/g, (k, j) => {
337
+ switch (j) {
334
338
  case "user.name":
335
339
  return "1234567890";
336
340
  case "user.tier":
@@ -353,79 +357,77 @@ const ue = /* @__PURE__ */ Z(re, [["render", de], ["__scopeId", "data-v-a9a2bb94
353
357
  return "...";
354
358
  }
355
359
  })) || "";
356
- let t = 0;
357
- for (let a = 0; a < l.length; a++) {
358
- const c = l.charAt(a);
359
- /[\u4e00-\u9fff\u3040-\u30ff\u3400-\u4dbf]/.test(c) || /[{}\\~\[\]|\^€]/.test(c) ? t += 2 : t += 1;
360
- }
361
- return `Character used: ${t} ≈ ${Math.ceil(t / 160)} SMS (Every 160 characters will be sent as 1 SMS)`;
362
- }), S = [{ label: "SMS" }, { label: "EMAIL" }];
363
- return G(() => {
364
- u("update:model-value", {
365
- ...i.modelValue,
366
- variables: i.variables
367
- }), i.modelValue || r("");
368
- }), (l, t) => {
369
- var d, F, $, k, C;
370
- const o = g("FmButtonGroup"), a = g("FmButton"), c = g("FmTextarea"), w = g("FmMenuItem"), _ = g("FmMenu");
371
- return p(), M("div", he, [
372
- e.allowEmail ? (p(), E(o, {
360
+ let y = o.length + 4, s = f.length + y;
361
+ (/[\u4e00-\u9fff\u3040-\u30ff\u3400-\u4dbf]/.test(f) || /[\u4e00-\u9fff\u3040-\u30ff\u3400-\u4dbf]/.test(f)) && (d = 70);
362
+ const $ = Math.min(d, t);
363
+ return `Reserverd: ${y} | Character used: ${s} ≈ ${Math.ceil(s / $)} SMS (Every ${$} characters will be sent as 1 SMS)`;
364
+ }), F = [{ label: "SMS" }, { label: "EMAIL" }];
365
+ return z(() => {
366
+ c("update:model-value", {
367
+ ...a.modelValue,
368
+ variables: a.variables
369
+ }), a.modelValue || l("");
370
+ }), (o, t) => {
371
+ var V, E, k, j, L;
372
+ const d = g("FmButtonGroup"), f = g("FmButton"), y = g("FmTextarea"), s = g("FmMenuItem"), $ = g("FmMenu");
373
+ return p(), C("div", ye, [
374
+ e.allowEmail ? (p(), _(d, {
373
375
  key: 0,
374
- items: S,
375
- "model-value": { label: (d = e.modelValue) == null ? void 0 : d.channel },
376
- "onUpdate:modelValue": t[0] || (t[0] = (m) => r("", m.label))
377
- }, null, 8, ["model-value"])) : T("", !0),
378
- ((F = e.modelValue) == null ? void 0 : F.channel) == "EMAIL" ? (p(), E(pe, {
376
+ items: F,
377
+ "model-value": { label: (V = e.modelValue) == null ? void 0 : V.channel },
378
+ "onUpdate:modelValue": t[0] || (t[0] = (u) => l("", u.label))
379
+ }, null, 8, ["model-value"])) : H("", !0),
380
+ ((E = e.modelValue) == null ? void 0 : E.channel) == "EMAIL" ? (p(), _(be, {
379
381
  key: 1,
380
- design: ($ = e.modelValue) == null ? void 0 : $.design,
381
- title: ((k = e.modelValue) == null ? void 0 : k.title) || void 0,
382
- "onUpdate:design": t[1] || (t[1] = (m) => {
383
- r(m, "EMAIL");
382
+ design: (k = e.modelValue) == null ? void 0 : k.design,
383
+ title: ((j = e.modelValue) == null ? void 0 : j.title) || void 0,
384
+ "onUpdate:design": t[1] || (t[1] = (u) => {
385
+ l(u, "EMAIL");
384
386
  })
385
- }, null, 8, ["design", "title"])) : (p(), M(L, { key: 2 }, [
386
- v("div", fe, [
387
+ }, null, 8, ["design", "title"])) : (p(), C(T, { key: 2 }, [
388
+ v("div", ve, [
387
389
  t[2] || (t[2] = v("div", { class: "fm-typo-en-body-lg-400" }, "Add message", -1)),
388
- h(a, {
390
+ h(f, {
389
391
  icon: "visibility",
390
392
  label: "Preview message",
391
393
  variant: "plain",
392
- onClick: y
394
+ onClick: b
393
395
  })
394
396
  ]),
395
- v("div", ge, [
396
- h(c, {
397
- "model-value": (C = e.modelValue) == null ? void 0 : C.content,
398
- "onUpdate:modelValue": r,
397
+ v("div", xe, [
398
+ h(y, {
399
+ "model-value": (L = e.modelValue) == null ? void 0 : L.content,
400
+ "onUpdate:modelValue": l,
399
401
  "show-word-count": !0,
400
402
  placeholder: e.placeholder,
401
- "helper-state": s(b) || "none",
402
- "helper-text": s(f)
403
+ "helper-state": i(S) || "none",
404
+ "helper-text": i(w)
403
405
  }, {
404
406
  "helper-text": x(() => [
405
- J(z(s(f)), 1)
407
+ K(W(i(w)), 1)
406
408
  ]),
407
409
  _: 1
408
410
  }, 8, ["model-value", "placeholder", "helper-state", "helper-text"]),
409
- v("div", ye, [
410
- h(_, { placement: "left-end" }, {
411
+ v("div", Se, [
412
+ h($, { placement: "left-end" }, {
411
413
  "menu-button": x(() => [
412
- h(a, {
414
+ h(f, {
413
415
  icon: "add",
414
416
  variant: "tertiary",
415
417
  size: "md"
416
418
  })
417
419
  ]),
418
420
  default: x(() => [
419
- (p(!0), M(L, null, K(e.variables.filter(
420
- (m) => e.triggerType == "SCHEDULE" ? !m.startsWith("transaction.") : !0
421
- ), (m) => {
422
- var I;
423
- return p(), E(w, {
424
- key: m,
425
- label: ((I = s(te)[m]) == null ? void 0 : I.name) || m,
426
- onClick: (be) => {
427
- var D;
428
- return r(((D = e.modelValue) == null ? void 0 : D.content) + `{{${m}}}`);
421
+ (p(!0), C(T, null, X(e.variables.filter(
422
+ (u) => e.triggerType == "SCHEDULE" ? !u.startsWith("transaction.") : !0
423
+ ), (u) => {
424
+ var D;
425
+ return p(), _(s, {
426
+ key: u,
427
+ label: ((D = i(se)[u]) == null ? void 0 : D.name) || u,
428
+ onClick: (Ve) => {
429
+ var U;
430
+ return l(((U = e.modelValue) == null ? void 0 : U.content) + `{{${u}}}`);
429
431
  }
430
432
  }, null, 8, ["label", "onClick"]);
431
433
  }), 128))
@@ -440,6 +442,6 @@ const ue = /* @__PURE__ */ Z(re, [["render", de], ["__scopeId", "data-v-a9a2bb94
440
442
  }
441
443
  });
442
444
  export {
443
- _e as M,
444
- je as _
445
+ Ie as M,
446
+ Le as _
445
447
  };
@@ -1,18 +1,18 @@
1
1
  import { defineComponent as H, ref as w, computed as q, h as l, onMounted as z, resolveComponent as m, openBlock as p, createElementBlock as x, Fragment as v, createVNode as c, unref as t, createElementVNode as s, withCtx as C, renderList as W, createBlock as b, resolveDynamicComponent as G, toDisplayString as u } from "vue";
2
2
  import { _ as J } from "./campaign-CpzFl8Vr.js";
3
- import { u as Q } from "./loading-CTlOzqJl.js";
4
- import { g as X, a as B, b as P } from "./campaign-B-4_cJoI.js";
5
- import { a as Y, p as Z } from "./plugins-C1KEHJqD.js";
6
- import { u as ee } from "./business-DqRPnW29.js";
7
- import { u as oe } from "./campaign-b9FvKigH.js";
3
+ import { u as Q } from "./loading-D1Wfmkyd.js";
4
+ import { g as X, a as B, b as P } from "./campaign-sNDioVDM.js";
5
+ import { a as Y, p as Z } from "./plugins-BXaXmsYI.js";
6
+ import { u as ee } from "./business-DMF3Rbwd.js";
7
+ import { u as oe } from "./campaign-CcKeyKqS.js";
8
8
  import { useDialog as te, components as _ } from "@feedmepos/ui-library";
9
9
  import { _ as ne } from "./ChipMenu.vue_vue_type_script_setup_true_lang-BPpZZNkr.js";
10
- import { u as ae } from "./template-DNmDTslz.js";
11
- import { _ as se } from "./EditCampaignSheet.vue_vue_type_script_setup_true_lang-B8OetxD5.js";
10
+ import { u as ae } from "./template-D6GdIov5.js";
11
+ import { _ as se } from "./EditCampaignSheet.vue_vue_type_script_setup_true_lang-DIwlWceJ.js";
12
12
  import { s as ie } from "./index-CsaQJMAR.js";
13
- import { u as ce } from "./vue-i18n-DPPL08ue.js";
14
- import { _ as re } from "./SendCollectionSheet.vue_vue_type_script_setup_true_lang-CQN3-f-u.js";
15
- import { c as h } from "./index-BLdXv3F2.js";
13
+ import { u as ce } from "./vue-i18n-Bj7k-2AQ.js";
14
+ import { _ as re } from "./SendCollectionSheet.vue_vue_type_script_setup_true_lang-epeStluk.js";
15
+ import { c as h } from "./index-CcbaKu7C.js";
16
16
  const le = { class: "px-24 flex flex-col gap-y-16" }, me = { class: "flex items-center justify-between w-full" }, de = { class: "flex gap-8 overflow-x-auto" }, pe = { class: "space-y-8" }, ue = { class: "flex w-full gap-4 items-center" }, fe = { class: "fm-typo-en-body-md-400 text-fm-color-typo-secondary" }, 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: "fm-typo-en-body-md-400 text-fm-color-typo-secondary" }, we = { class: "flex flex-col gap-16 text-center" }, xe = { class: "fm-typo-en-title-sm-800" }, ve = { class: "fm-typo-en-body-md-400 text-fm-color-typo-secondary" }, Oe = /* @__PURE__ */ H({
17
17
  __name: "Mission",
18
18
  setup(Ce) {
@@ -1,28 +1,28 @@
1
1
  import { defineComponent as q, resolveComponent as w, openBlock as C, createElementBlock as B, Fragment as Y, createVNode as c, withCtx as V, createElementVNode as a, toDisplayString as O, unref as r, renderSlot as ve, ref as F, computed as G, watch as ie, createBlock as j, isRef as J, resolveDynamicComponent as ne, renderList as re, normalizeClass as de, createTextVNode as ce, createCommentVNode as z, h as te, onMounted as _e } from "vue";
2
2
  import { _ as ge } from "./campaign-CpzFl8Vr.js";
3
- import { u as Z } from "./vue-i18n-DPPL08ue.js";
4
- import { u as ue } from "./loading-CTlOzqJl.js";
5
- import { c as we, p as K } from "./plugins-C1KEHJqD.js";
3
+ import { u as Z } from "./vue-i18n-Bj7k-2AQ.js";
4
+ import { u as ue } from "./loading-D1Wfmkyd.js";
5
+ import { c as we, p as K } from "./plugins-BXaXmsYI.js";
6
6
  import { J as X } from "./JsonViewer-v8_C7l5N.js";
7
7
  import { Z as N } from "./zod-Bg2FbC-D.js";
8
8
  import { u as W } from "./app-wDQR6dpb.js";
9
- import { u as Q, _ as ye } from "./RewardGroup.vue_vue_type_script_setup_true_lang-Lm3CoKbR.js";
10
- import { u as me } from "./reward-BKE2TAvZ.js";
11
- import { a as be, b as xe } from "./index-T5VJ7LOc.js";
12
- import { l as le, c as se } from "./index-PgUO1aJB.js";
13
- import "./index-B91yws4l.js";
14
- import "./index-BH2tnZva.js";
15
- import "./index-D81rTS6w.js";
16
- import "./index-D1XWT8fK.js";
17
- import { C as fe } from "./membership-BEHTbLlS.js";
18
- import { t as ee } from "./helper-ChjpvgXI.js";
9
+ import { u as Q, _ as ye } from "./RewardGroup.vue_vue_type_script_setup_true_lang-HVTtA42N.js";
10
+ import { u as me } from "./reward-D-gsY6lW.js";
11
+ import { a as be, b as xe } from "./index-DyKlplJw.js";
12
+ import { l as le, c as se } from "./index-Bkve_3H5.js";
13
+ import "./index-CrZYIPTH.js";
14
+ import "./index-B8yNbtv_.js";
15
+ import "./index-jSq2EeMi.js";
16
+ import "./index-COQALKlJ.js";
17
+ import { C as fe } from "./membership-BO_9k1RM.js";
18
+ import { t as ee } from "./helper-Cf1YE8-n.js";
19
19
  import { c as H } from "./object-qECH92oz.js";
20
20
  import { useDialog as Ce, components as oe } from "@feedmepos/ui-library";
21
- import { _ as Re } from "./ZodTextField.vue_vue_type_script_setup_true_lang-CYegMpRN.js";
22
- import { T as Se, _ as Fe, a as ke } from "./trigger-BJb8Msn3.js";
23
- import { O as $e } from "./objectid-D3FHs3ZM.js";
24
- import { r as pe } from "./index-HR-s-wxL.js";
25
- import { u as Pe } from "./business-DqRPnW29.js";
21
+ import { _ as Re } from "./ZodTextField.vue_vue_type_script_setup_true_lang-DgvvO2gO.js";
22
+ import { T as Se, _ as Fe, a as ke } from "./trigger-C_3L1xNz.js";
23
+ import { O as $e } from "./objectid-BUlLvAIh.js";
24
+ import { r as pe } from "./index-DFcQWWVm.js";
25
+ import { u as Pe } from "./business-DMF3Rbwd.js";
26
26
  const Ve = { class: "flex items-center justify-between flex-1 xs:hidden" }, Ie = { class: "flex items-center gap-x-24 h-[80px] p-8 flex-1" }, Te = { class: "flex-1" }, Ue = { class: "flex items-center gap-8" }, Ae = { class: "fm-typo-en-title-sm-800" }, Le = { class: "flex gap-8 items-center" }, Ee = { class: "space-y-4 hidden xs:block border-b border-fm-color-neutral-gray-100 px-16 flex-1 pb-24" }, Be = { class: "flex items-center justify-between" }, Oe = { class: "flex items-center gap-x-24 h-[80px] p-8 flex-1" }, je = { class: "flex-1 space-y-4" }, De = { class: "fm-typo-en-body-lg-600" }, Ge = /* @__PURE__ */ q({
27
27
  __name: "ReferralRewadGroupCard",
28
28
  props: {
@@ -1,16 +1,16 @@
1
1
  import { defineComponent as j, ref as P, computed as A, h as E, onMounted as M, resolveComponent as l, openBlock as d, createElementBlock as b, Fragment as w, createVNode as r, unref as t, withCtx as y, createElementVNode as n, toDisplayString as c, renderList as H, createBlock as C, resolveDynamicComponent as q } from "vue";
2
2
  import { _ as z } from "./campaign-CpzFl8Vr.js";
3
3
  import { useDialog as G, components as J } from "@feedmepos/ui-library";
4
- import { p as Q } from "./plugins-C1KEHJqD.js";
5
- import { u as W } from "./loading-CTlOzqJl.js";
6
- import { u as X } from "./business-DqRPnW29.js";
7
- import { u as Y } from "./campaign-b9FvKigH.js";
8
- import { g as Z, a as V, b as I } from "./campaign-B-4_cJoI.js";
4
+ import { p as Q } from "./plugins-BXaXmsYI.js";
5
+ import { u as W } from "./loading-D1Wfmkyd.js";
6
+ import { u as X } from "./business-DMF3Rbwd.js";
7
+ import { u as Y } from "./campaign-CcKeyKqS.js";
8
+ import { g as Z, a as V, b as I } from "./campaign-sNDioVDM.js";
9
9
  import { _ as ee } from "./ChipMenu.vue_vue_type_script_setup_true_lang-BPpZZNkr.js";
10
- import { _ as te } from "./EditCampaignSheet.vue_vue_type_script_setup_true_lang-B8OetxD5.js";
11
- import { u as oe } from "./template-DNmDTslz.js";
12
- import { u as ae } from "./vue-i18n-DPPL08ue.js";
13
- import { c as _ } from "./index-BLdXv3F2.js";
10
+ import { _ as te } from "./EditCampaignSheet.vue_vue_type_script_setup_true_lang-DIwlWceJ.js";
11
+ import { u as oe } from "./template-D6GdIov5.js";
12
+ import { u as ae } from "./vue-i18n-Bj7k-2AQ.js";
13
+ import { c as _ } from "./index-CcbaKu7C.js";
14
14
  const ne = { class: "flex items-center" }, se = { class: "fm-typo-en-title-md-600 fm-step-title line-clamp-2 mr-8" }, ie = { class: "px-24 flex flex-col gap-y-16" }, re = { class: "flex items-center justify-between w-full" }, le = { class: "flex gap-8 overflow-x-auto" }, ce = { class: "space-y-8" }, me = { class: "flex w-full gap-4 items-center" }, de = { class: "fm-typo-en-body-md-400 text-fm-color-typo-secondary" }, pe = { class: "space-y-4" }, ue = { class: "fm-typo-en-body-lg-600" }, fe = { class: "fm-typo-en-body-md-400 text-fm-color-typo-secondary" }, ge = { class: "fm-typo-en-body-md-400 text-fm-color-typo-secondary" }, ye = { class: "flex flex-col gap-16 text-center" }, _e = { class: "fm-typo-en-title-sm-800" }, he = { class: "fm-typo-en-body-md-400 text-fm-color-typo-secondary" }, Ke = /* @__PURE__ */ j({
15
15
  __name: "Point",
16
16
  setup(be) {
@@ -1,17 +1,17 @@
1
1
  import { defineComponent as J, ref as S, computed as Q, h as W, onMounted as X, resolveComponent as m, openBlock as u, createElementBlock as w, Fragment as v, createVNode as l, unref as a, createElementVNode as r, withCtx as b, renderList as Y, createBlock as x, resolveDynamicComponent as Z, toDisplayString as _ } from "vue";
2
2
  import { _ as ee } from "./campaign-CpzFl8Vr.js";
3
3
  import { useDialog as oe, components as te } from "@feedmepos/ui-library";
4
- import { c as O, p as L } from "./plugins-C1KEHJqD.js";
5
- import { u as ne } from "./loading-CTlOzqJl.js";
6
- import { u as ae } from "./business-DqRPnW29.js";
7
- import { u as se } from "./campaign-b9FvKigH.js";
8
- import { u as re } from "./vue-i18n-DPPL08ue.js";
9
- import { g as ie, a as V } from "./campaign-B-4_cJoI.js";
10
- import { e as I } from "./effect-gk-rwqTS.js";
11
- import { _ as le } from "./EditCampaignSheet.vue_vue_type_script_setup_true_lang-B8OetxD5.js";
12
- import { u as ce } from "./template-DNmDTslz.js";
4
+ import { c as O, p as L } from "./plugins-BXaXmsYI.js";
5
+ import { u as ne } from "./loading-D1Wfmkyd.js";
6
+ import { u as ae } from "./business-DMF3Rbwd.js";
7
+ import { u as se } from "./campaign-CcKeyKqS.js";
8
+ import { u as re } from "./vue-i18n-Bj7k-2AQ.js";
9
+ import { g as ie, a as V } from "./campaign-sNDioVDM.js";
10
+ import { e as I } from "./effect-D3o0cZ7X.js";
11
+ import { _ as le } from "./EditCampaignSheet.vue_vue_type_script_setup_true_lang-DIwlWceJ.js";
12
+ import { u as ce } from "./template-D6GdIov5.js";
13
13
  import { _ as B } from "./FilterChip.vue_vue_type_script_setup_true_lang-BrPLkFX8.js";
14
- import { c as d } from "./index-BLdXv3F2.js";
14
+ import { c as d } from "./index-CcbaKu7C.js";
15
15
  const me = { class: "px-24 flex flex-col gap-y-16" }, pe = { class: "flex items-center justify-between w-full" }, ue = { class: "flex gap-8 overflow-x-auto" }, de = { class: "space-y-8" }, fe = { class: "flex w-full gap-4 items-center" }, ye = { class: "space-y-4" }, ge = { class: "fm-typo-en-body-lg-600" }, _e = { class: "fm-typo-en-body-md-400 text-fm-color-typo-secondary" }, he = { class: "flex flex-col gap-16 text-center" }, we = { class: "fm-typo-en-title-sm-800" }, ve = { class: "fm-typo-en-body-md-400 text-fm-color-typo-secondary" }, Ae = /* @__PURE__ */ J({
16
16
  __name: "Promotion",
17
17
  setup(be) {
@@ -1,19 +1,19 @@
1
1
  import { defineComponent as x, h as n, ref as V, watch as A, onBeforeMount as B, resolveComponent as U, openBlock as O, createElementBlock as q, Fragment as z, createVNode as m, unref as o, createElementVNode as f } from "vue";
2
2
  import { u as Y, _ as L } from "./usePagination-BeF5K3M7.js";
3
3
  import { _ as S } from "./FilterChip.vue_vue_type_script_setup_true_lang-BrPLkFX8.js";
4
- import { c as u, a as G } from "./plugins-C1KEHJqD.js";
4
+ import { c as u, a as G } from "./plugins-BXaXmsYI.js";
5
5
  import { useDialog as $, components as y } from "@feedmepos/ui-library";
6
- import "./index-T5VJ7LOc.js";
7
- import { J as c, c as d } from "./index-PgUO1aJB.js";
8
- import "./index-B91yws4l.js";
9
- import "./index-BH2tnZva.js";
10
- import "./index-D81rTS6w.js";
11
- import "./index-D1XWT8fK.js";
6
+ import "./index-DyKlplJw.js";
7
+ import { J as c, c as d } from "./index-Bkve_3H5.js";
8
+ import "./index-CrZYIPTH.js";
9
+ import "./index-B8yNbtv_.js";
10
+ import "./index-jSq2EeMi.js";
11
+ import "./index-COQALKlJ.js";
12
12
  import { h as w } from "./moment-BWErdI6_.js";
13
- import { u as j } from "./vue-i18n-DPPL08ue.js";
14
- import { u as H, v as K, w as W } from "./index.esm2017-Cse5Z0VX.js";
13
+ import { u as j } from "./vue-i18n-Bj7k-2AQ.js";
14
+ import { u as H, v as K, w as W } from "./index.esm2017-BRdeDr5A.js";
15
15
  import { useRoute as J } from "vue-router";
16
- import { g as Q, S as X, u as Z } from "./index-DaiMhPcB.js";
16
+ import { g as Q, S as X, u as Z } from "./index-CCOx8i3W.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");