@feedmepos/mf-connect 0.1.0-beta.8 → 0.1.0-beta.80

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 (127) hide show
  1. package/dist/Analytic-C84B4MSt.js +427 -0
  2. package/dist/{App-SRz4257n.js → App-CnbbBVSn.js} +441 -420
  3. package/dist/AuditLogs-KOxiG5Q0.js +1887 -0
  4. package/dist/Bin-BBSQDzD4.js +166 -0
  5. package/dist/{Broadcast-DmkrJGp2.js → Broadcast-DlvPEqW7.js} +56 -54
  6. package/dist/{CampaignTypeDialog.vue_vue_type_script_setup_true_lang-CZXSxA9u.js → CampaignTypeDialog.vue_vue_type_script_setup_true_lang-M1Za3MaN.js} +14 -10
  7. package/dist/Card-BluWm_EY.js +905 -0
  8. package/dist/Collections-DtHJpxRT.js +464 -0
  9. package/dist/{Credit-CcNrq9qk.js → Credit-Be2pcBVn.js} +36 -34
  10. package/dist/CustomSelect.vue_vue_type_script_setup_true_lang-DLnvDVgf.js +108 -0
  11. package/dist/DateRangeChip.vue_vue_type_script_setup_true_lang-BUzUIIUW.js +58 -0
  12. package/dist/EditCampaignSheet.vue_vue_type_script_setup_true_lang-sqq_sO_a.js +2182 -0
  13. package/dist/{EffectSheet.vue_vue_type_style_index_0_lang-BIZDiLns.js → EffectSheet.vue_vue_type_style_index_0_lang-CBsYx54P.js} +49 -49
  14. package/dist/{Experience-DNsQLzDH.js → Experience-CLPyvgs0.js} +32 -30
  15. package/dist/FileSaver.min-NlMItPOc.js +74 -0
  16. package/dist/FilterChip.vue_vue_type_script_setup_true_lang-BrPLkFX8.js +118 -0
  17. package/dist/Game-5kEG7o4J.js +278 -0
  18. package/dist/Index-BSZi21Wo.js +259 -0
  19. package/dist/Marketing-CE1Sq3Pb.js +20071 -0
  20. package/dist/Member-DaBqmOYX.js +287 -0
  21. package/dist/MemberList-jIriR6B0.js +1606 -0
  22. package/dist/MemberTransactions-BGEZwpPO.js +45 -0
  23. package/dist/{MessageInput.vue_vue_type_script_setup_true_lang-GCEQCVOt.js → MessageInput.vue_vue_type_script_setup_true_lang-CSlafowP.js} +152 -137
  24. package/dist/Mission-BOByUsYC.js +296 -0
  25. package/dist/Overview-BQQs8TsL.js +1079 -0
  26. package/dist/{Point-Ck8EG_3k.js → Point-BuRBh_HC.js} +55 -53
  27. package/dist/Promotion-Py2WWNt0.js +289 -0
  28. package/dist/Queue-On8_svkl.js +260 -0
  29. package/dist/Record-CSWkHs9Y.js +341 -0
  30. package/dist/Reward-BLVyFkAH.js +442 -0
  31. package/dist/RewardGroup.vue_vue_type_script_setup_true_lang-BW8kuoLt.js +150 -0
  32. package/dist/RuleGroup.vue_vue_type_script_setup_true_lang-DC8JEmEC.js +1728 -0
  33. package/dist/Segment-BjBskgf9.js +880 -0
  34. package/dist/SelectItems.vue_vue_type_script_setup_true_lang-CrVw6j2M.js +181 -0
  35. package/dist/SendCollectionSheet.vue_vue_type_script_setup_true_lang-oaAVUxO4.js +188 -0
  36. package/dist/SendVoucherSheet.vue_vue_type_script_setup_true_lang-CKOTgzL-.js +147 -0
  37. package/dist/Setting-CAMlhgGd.js +1932 -0
  38. package/dist/Store-0qvNbHne.js +1842 -0
  39. package/dist/StoreRewards-CjcHvUNa.js +423 -0
  40. package/dist/StoreTransactions.vue_vue_type_script_setup_true_lang-CdZ7QIaf.js +1029 -0
  41. package/dist/{TargetLocationInput.vue_vue_type_script_setup_true_lang-DrzmjYmU.js → TargetLocationInput.vue_vue_type_script_setup_true_lang-vJaZIDrx.js} +1 -1
  42. package/dist/{Tier-CJ9-d8Zg.js → Tier-D_pHKGSv.js} +350 -334
  43. package/dist/{Title-DZCpvg4q.js → Title-DgdtJ87h.js} +245 -222
  44. package/dist/{Transaction-DpnTxlbf.js → Transaction-CKlLWcjS.js} +2 -2
  45. package/dist/UserRuleGroup.vue_vue_type_script_setup_true_lang-2GOvljvv.js +130 -0
  46. package/dist/Voucher-Cg6zQSAy.js +354 -0
  47. package/dist/VoucherEditor.vue_vue_type_script_setup_true_lang-rpjQkheM.js +419 -0
  48. package/dist/{ZodTextField.vue_vue_type_script_setup_true_lang-SukfoJpU.js → ZodTextField.vue_vue_type_script_setup_true_lang-BRdY-P8U.js} +1 -1
  49. package/dist/{app-DzAexOqx.js → app-CScRp4SA.js} +2709 -1265
  50. package/dist/app-jGYefKeR.js +33357 -0
  51. package/dist/app.js +1 -1
  52. package/dist/business-DYhO4gjc.js +79 -0
  53. package/dist/campaign-BgXy1Ngd.js +1810 -0
  54. package/dist/{campaign-winsqufa.js → campaign-CZ5pMrUu.js} +2 -2
  55. package/dist/campaign.enum-CWBDlzqp.js +20 -0
  56. package/dist/campaign.fn-HHZ5mQKe.js +758 -0
  57. package/dist/collectible.enum-MvoLHpuA.js +19 -0
  58. package/dist/{collection.fn-CI5Llblg.js → collection.fn-BHUoLJPj.js} +2 -2
  59. package/dist/dto-DXdR0em1.js +214 -0
  60. package/dist/{effect-CdkrIYgX.js → effect-HLuo1A_f.js} +33 -16
  61. package/dist/email-addresses-DU4ehcHM.js +705 -0
  62. package/dist/{export-DGxfief1.js → export-BDRHAxZr.js} +5 -5
  63. package/dist/{helper-B8RqcTNu.js → helper-JhFOw8n-.js} +1 -1
  64. package/dist/{index-OzicErwL.js → index-BG_GpbnZ.js} +24 -21
  65. package/dist/{index-Cw_aXFH6.js → index-BZWr1bgh.js} +269 -173
  66. package/dist/{loading-DuEFUCwF.js → index-Bs-tzd5F.js} +4609 -4886
  67. package/dist/{index-wzdbEEcZ.js → index-C2nNcNjw.js} +1 -1
  68. package/dist/index-CIF8DeC8.js +54 -0
  69. package/dist/{index-HZC9LLAX.js → index-CqT8uK3R.js} +48 -4
  70. package/dist/index-CsaQJMAR.js +66 -0
  71. package/dist/{index-9w43_U1v.js → index-DVj1MyZp.js} +1506 -1480
  72. package/dist/{index-CZgQVRsm.js → index-GmHsjd7O.js} +1 -1
  73. package/dist/index-QDEKR2Rj.js +115 -0
  74. package/dist/{index-A34xEz20.js → index-cYKPj4fA.js} +2246 -871
  75. package/dist/index-eRBO4PzZ.js +56 -0
  76. package/dist/index-fS6fmvFv.js +29556 -0
  77. package/dist/index-l8E6r07W.js +32 -0
  78. package/dist/index-vh86FiIQ.js +10 -0
  79. package/dist/{index.esm2017-CppSMh_U.js → index.esm2017-B-YrQ0sw.js} +206 -206
  80. package/dist/loading-C09t0mFj.js +71 -0
  81. package/dist/{membership-nsMtWeTC.js → membership-tHAn3VRs.js} +80 -66
  82. package/dist/money-DYVCca49.js +15 -0
  83. package/dist/number-VYuUME2F.js +12 -0
  84. package/dist/objectid-BTO4csVa.js +145 -0
  85. package/dist/plugins-CXgvBDMF.js +208 -0
  86. package/dist/remy-vue-client-Cpppk9h-.js +1693 -0
  87. package/dist/reward-DX9TZrk4.js +36 -0
  88. package/dist/{rule-CPIMqt1h.js → rule-CbCZqulx.js} +185 -178
  89. package/dist/{rule-builder-CSs5XRKP.js → rule-builder-J8K_fjI-.js} +1 -1
  90. package/dist/style.css +1 -1
  91. package/dist/{template-CJZoYavu.js → template-BtYJpEBa.js} +5 -5
  92. package/dist/trigger-D6dpZFSN.js +144 -0
  93. package/dist/user-C0QvWk-o.js +54 -0
  94. package/dist/vue-i18n-cz2_cPSz.js +2365 -0
  95. package/dist/{xlsx-BZlnYinX.js → xlsx-BIPQrY49.js} +1 -1
  96. package/package.json +11 -7
  97. package/dist/Analytic-5QztrYSp.js +0 -622
  98. package/dist/Card-BsjFTVsH.js +0 -825
  99. package/dist/Collections-7wqZHOax.js +0 -453
  100. package/dist/EditCampaignSheet.vue_vue_type_script_setup_true_lang-Cuklmxur.js +0 -2813
  101. package/dist/Game-DlzDerT7.js +0 -255
  102. package/dist/Marketing-BqhpaG4o.js +0 -316
  103. package/dist/Member-AFgZcdtz.js +0 -69
  104. package/dist/MemberList-BKgrLz2C.js +0 -1733
  105. package/dist/MemberTransactions-BwT3zE2a.js +0 -38
  106. package/dist/Mission-BTAia7AS.js +0 -261
  107. package/dist/Promotion-0v3kvsK3.js +0 -247
  108. package/dist/RuleGroup.vue_vue_type_script_setup_true_lang-BkFm7tXq.js +0 -1753
  109. package/dist/Segment-BenLupqV.js +0 -437
  110. package/dist/Setting-0fpREqpJ.js +0 -1901
  111. package/dist/Store-BDGwe4ar.js +0 -1511
  112. package/dist/StoreRewards-TDZt9H1V.js +0 -401
  113. package/dist/StoreTransactions.vue_vue_type_script_setup_true_lang-BqpsMcl1.js +0 -890
  114. package/dist/Voucher-DsP_rh8I.js +0 -490
  115. package/dist/app-Cg2pTZJK.js +0 -53428
  116. package/dist/business-Cw_qGw8y.js +0 -78
  117. package/dist/dto-ozu1smC3.js +0 -2770
  118. package/dist/index-BLACZ3-L.js +0 -206
  119. package/dist/index-BaozRfWB.js +0 -762
  120. package/dist/index-CjVmULNd.js +0 -99
  121. package/dist/index-CuvNtC_M.js +0 -61
  122. package/dist/index-DAEmawcj.js +0 -298
  123. package/dist/index-Oxr-mU6h.js +0 -29193
  124. package/dist/money-BGZPFtUc.js +0 -15
  125. package/dist/number-4J0xvXP9.js +0 -12
  126. package/dist/user-Bm4KttFq.js +0 -37
  127. package/dist/vue-i18n-CCyiVzOE.js +0 -2365
@@ -0,0 +1,287 @@
1
+ import { defineComponent as P, ref as F, watch as D, resolveComponent as m, openBlock as x, createElementBlock as g, Fragment as M, createElementVNode as f, createVNode as u, unref as n, withCtx as S, renderList as U, createBlock as N, toDisplayString as Y, normalizeClass as q, computed as H, createCommentVNode as J } from "vue";
2
+ import "./index-GmHsjd7O.js";
3
+ import { useDialogChild as Q, FmButtonVariant as A, useDialog as j, useSnackbar as z } from "@feedmepos/ui-library";
4
+ import { u as V } from "./vue-i18n-cz2_cPSz.js";
5
+ import "./index-BZWr1bgh.js";
6
+ import { c as I } from "./index-cYKPj4fA.js";
7
+ import "./index-DVj1MyZp.js";
8
+ import "./index-C2nNcNjw.js";
9
+ import "./index-CIF8DeC8.js";
10
+ import { u as B, w as G } from "./xlsx-BIPQrY49.js";
11
+ import { F as W } from "./FileSaver.min-NlMItPOc.js";
12
+ import { useCoreStore as K } from "@feedmepos/mf-common";
13
+ import { useRouter as X } from "vue-router";
14
+ import { m as L } from "./index-BG_GpbnZ.js";
15
+ import { R as E } from "./app-CScRp4SA.js";
16
+ const Z = { class: "space-y-8 mb-10" }, ee = { class: "flex justify-end" }, te = {
17
+ key: 1,
18
+ class: /* @__PURE__ */ q([
19
+ "flex items-center",
20
+ "border border-fm-color-neutral-gray-300",
21
+ "p-16 space-x-16 rounded-md"
22
+ ])
23
+ }, ne = { class: "fm-typo-en-body-lg-400 flex-1 truncate" }, oe = /* @__PURE__ */ P({
24
+ __name: "ImportMemberDialog",
25
+ setup($) {
26
+ const { t: a } = V(), { emitData: b } = Q(), i = F(null), _ = F(null), w = F({
27
+ resetCollectionExpiryBalance: !0
28
+ }), h = [
29
+ "Id",
30
+ "Name",
31
+ "Phone",
32
+ "Email",
33
+ "Gender",
34
+ "CardNo",
35
+ "Birthday",
36
+ "Credit",
37
+ "CreditExpiryDate",
38
+ "Exp",
39
+ "Point",
40
+ "Tier",
41
+ // 'Titles',
42
+ "TotalTransaction",
43
+ "AvgSpent",
44
+ "TotalSpent",
45
+ "LastVisit",
46
+ "Feedback",
47
+ "LastSeasonTierEarned",
48
+ "LastSeasonPointEarned",
49
+ "JoinedAt",
50
+ "JoinedAtLocation",
51
+ "VisitFrequency"
52
+ ], R = [
53
+ {
54
+ label: "CSV",
55
+ icon: "csv",
56
+ value: "csv"
57
+ /* csv */
58
+ },
59
+ {
60
+ label: "Excel",
61
+ icon: "description",
62
+ value: "xlsx"
63
+ /* xlsx */
64
+ }
65
+ ];
66
+ async function c(l) {
67
+ var t, y;
68
+ i.value = ((y = (t = l.target) == null ? void 0 : t.files) == null ? void 0 : y[0]) ?? null;
69
+ }
70
+ async function p(l) {
71
+ switch (l) {
72
+ case "csv":
73
+ d();
74
+ break;
75
+ case "xlsx":
76
+ v();
77
+ break;
78
+ }
79
+ }
80
+ function d() {
81
+ const l = new Blob([h.join(",")], {
82
+ type: "text/csv;charset=utf-8;"
83
+ });
84
+ W.saveAs(l, "ImportMemberTemplate.csv");
85
+ }
86
+ function v() {
87
+ const l = B.aoa_to_sheet([h]), t = B.book_new();
88
+ B.book_append_sheet(t, l, "Sheet1"), G(t, "ImportMemberTemplate.xlsx");
89
+ }
90
+ return D(i, () => {
91
+ b({ file: i.value, config: w.value });
92
+ }), (l, t) => {
93
+ const y = m("FmSwitch"), k = m("FmButton"), C = m("FmMenuItem"), T = m("FmMenu"), o = m("FmDropField");
94
+ return x(), g(M, null, [
95
+ f("div", Z, [
96
+ t[3] || (t[3] = f("div", { class: "fm-typo-en-body-lg-600" }, "Advanced Setting", -1)),
97
+ u(y, {
98
+ "model-value": n(w).resetCollectionExpiryBalance ?? !0,
99
+ "onUpdate:modelValue": t[0] || (t[0] = (e) => n(w).resetCollectionExpiryBalance = e),
100
+ label: "Replace Existing Free Credit",
101
+ sublabel: "When enabled, this will clear existing free credit and replace with new values from the import.",
102
+ "label-placement": "right"
103
+ }, null, 8, ["model-value"])
104
+ ]),
105
+ f("div", ee, [
106
+ u(T, null, {
107
+ "menu-button": S(() => [
108
+ u(k, {
109
+ variant: "tertiary",
110
+ icon: "download",
111
+ label: "Download Template"
112
+ })
113
+ ]),
114
+ default: S(() => [
115
+ (x(), g(M, null, U(R, (e) => u(C, {
116
+ key: e.value,
117
+ icon: e.icon,
118
+ label: e.label,
119
+ onClick: (r) => p(e.value),
120
+ selectable: ""
121
+ }, null, 8, ["icon", "label", "onClick"])), 64))
122
+ ]),
123
+ _: 1
124
+ })
125
+ ]),
126
+ n(i) ? (x(), g("div", te, [
127
+ u(k, {
128
+ variant: n(A).Tertiary,
129
+ "prepend-icon": "attach_file"
130
+ }, null, 8, ["variant"]),
131
+ f("p", ne, Y(n(i).name), 1),
132
+ f("label", {
133
+ ref_key: "fileLabelRef",
134
+ ref: _,
135
+ htmlFor: "file"
136
+ }, [
137
+ u(k, {
138
+ variant: n(A).Plain,
139
+ label: n(a)("Replace File"),
140
+ onClick: t[2] || (t[2] = () => {
141
+ var e;
142
+ return (e = n(_)) == null ? void 0 : e.click();
143
+ })
144
+ }, null, 8, ["variant", "label"]),
145
+ f("input", {
146
+ id: "file",
147
+ accept: ".csv, .xlsx",
148
+ class: "hidden",
149
+ type: "file",
150
+ multiple: "",
151
+ onChange: c
152
+ }, null, 32)
153
+ ], 512)
154
+ ])) : (x(), N(o, {
155
+ key: 0,
156
+ onFileUpload: t[1] || (t[1] = (e) => i.value = e),
157
+ accept: ".csv, .xlsx",
158
+ "max-file-size": 5e6
159
+ }))
160
+ ], 64);
161
+ };
162
+ }
163
+ }), ae = { class: "px-24 flex flex-col gap-y-16 pb-24" }, Ee = /* @__PURE__ */ P({
164
+ __name: "Member",
165
+ setup($) {
166
+ var k, C, T;
167
+ const a = X(), { t: b } = V(), i = j(), _ = z(), w = K(), h = {
168
+ label: b("connect.loyalty.member.import"),
169
+ value: "import",
170
+ isPrimary: !0,
171
+ prependIcon: "download"
172
+ }, R = {
173
+ label: b("connect.navigation.queue"),
174
+ value: "queue",
175
+ isPrimary: !1,
176
+ prependIcon: "work_history"
177
+ }, c = [
178
+ {
179
+ label: b("connect.loyalty.member.tabs.member_list"),
180
+ value: E["$connect-LOYALTY_MEMBER_LIST"],
181
+ actions: (T = (C = (k = w.sessionUser) == null ? void 0 : k.value) == null ? void 0 : C.role) != null && T.isAdmin ? [R, h] : []
182
+ }
183
+ ], p = H(() => {
184
+ var e, r, s;
185
+ return a.currentRoute.value.name != E["$connect-LOYALTY_MEMBER_TRANSACTIONS"] ? {
186
+ title: d.value.label,
187
+ actions: d.value.actions,
188
+ description: void 0
189
+ } : (d.value = c[1], {
190
+ backButton: !0,
191
+ title: b("connect.loyalty.member.title"),
192
+ actions: [],
193
+ description: `${(e = v.value) == null ? void 0 : e.name} (${(r = v.value) == null ? void 0 : r._id}) (${(s = v.value) == null ? void 0 : s.phoneNumber})`,
194
+ onBackButton: async () => {
195
+ await a.push({ name: E["$connect-LOYALTY_MEMBER_LIST"] });
196
+ }
197
+ });
198
+ }), d = F(
199
+ c.find((o) => o.value === a.currentRoute.value.name) ?? c[0]
200
+ ), v = F();
201
+ async function l(o) {
202
+ await a.push({ name: o });
203
+ }
204
+ async function t() {
205
+ i.open({
206
+ title: "Upload File",
207
+ closeButton: !0,
208
+ dismissAway: !1,
209
+ contentComponent: oe,
210
+ primaryActions: { text: "Import", close: !1 }
211
+ }).onPrimary(async (o) => {
212
+ if (!o) {
213
+ _.open({
214
+ type: "error",
215
+ title: "Please upload a file"
216
+ });
217
+ return;
218
+ }
219
+ const { file: e, config: r } = o;
220
+ if (!e)
221
+ _.open({
222
+ type: "error",
223
+ title: "Please upload a file"
224
+ });
225
+ else {
226
+ const s = new FormData();
227
+ s.append("file", e), s.append("config", JSON.stringify(r)), await L.import(s), _.open({
228
+ type: "info",
229
+ title: "Import begins soon. Check Queue for updates.",
230
+ action: "View",
231
+ onAction: async () => {
232
+ await a.push({
233
+ name: E["$connect-QUEUE"],
234
+ query: { type: [I.enum.MEMBER_IMPORTED] }
235
+ });
236
+ }
237
+ }), i.close();
238
+ }
239
+ });
240
+ }
241
+ function y(o) {
242
+ switch (o) {
243
+ case "import":
244
+ t();
245
+ break;
246
+ case "queue":
247
+ a.push({
248
+ name: E["$connect-QUEUE"],
249
+ query: { type: [I.enum.MEMBER_IMPORTED] }
250
+ });
251
+ break;
252
+ }
253
+ }
254
+ return D(
255
+ () => a.currentRoute.value.name,
256
+ async (o) => {
257
+ d.value = c.find((r) => r.value === o) ?? c[0];
258
+ const e = a.currentRoute.value.params.id;
259
+ e && (v.value = await L.readById(e)), await a.push({ name: o });
260
+ }
261
+ ), (o, e) => {
262
+ const r = m("FmPageHead"), s = m("FmTabs"), O = m("RouterView");
263
+ return x(), g(M, null, [
264
+ u(r, {
265
+ actions: n(p).actions,
266
+ title: n(p).title,
267
+ description: n(p).description,
268
+ "back-button": n(p).backButton,
269
+ "onClick:back": n(p).onBackButton,
270
+ "onClick:action": y
271
+ }, null, 8, ["actions", "title", "description", "back-button", "onClick:back"]),
272
+ f("div", ae, [
273
+ n(a).currentRoute.value.name != n(E)["$connect-LOYALTY_MEMBER_TRANSACTIONS"] ? (x(), N(s, {
274
+ key: 0,
275
+ "model-value": n(d).value,
276
+ items: c,
277
+ "onUpdate:modelValue": l
278
+ }, null, 8, ["model-value"])) : J("", !0),
279
+ u(O)
280
+ ])
281
+ ], 64);
282
+ };
283
+ }
284
+ });
285
+ export {
286
+ Ee as default
287
+ };