@feedmepos/mf-connect 0.1.38-beta.85 → 0.1.38-beta.87

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 (108) hide show
  1. package/dist/{Analytic-b8mA9c9Y.js → Analytic-BaA1ekke.js} +13 -13
  2. package/dist/{App-XFiefZAx.js → App-e99cE_5Z.js} +7 -7
  3. package/dist/{AuditLogs-DTcAAlxV.js → AuditLogs-DfjlyaHP.js} +9 -9
  4. package/dist/{Bin-CzsWUmIN.js → Bin-CHlFDIos.js} +8 -8
  5. package/dist/{Broadcast-D_3C1KYk.js → Broadcast-C9Kat4Mq.js} +9 -9
  6. package/dist/{CampaignTypeDialog.vue_vue_type_script_setup_true_lang-DX5JM6sI.js → CampaignTypeDialog.vue_vue_type_script_setup_true_lang-DX1fkDB-.js} +6 -6
  7. package/dist/{Card-BmEm66lU.js → Card-BE7WbaEo.js} +18 -18
  8. package/dist/{Collections-Ry-MQM44.js → Collections-B98IWqo-.js} +7 -7
  9. package/dist/{Credit-DVVJjxgZ.js → Credit-Bnn7aw0u.js} +9 -9
  10. package/dist/{EditCampaignSheet.vue_vue_type_script_setup_true_lang-_WZUfwnP.js → EditCampaignSheet.vue_vue_type_script_setup_true_lang-cPZkPjqo.js} +33 -33
  11. package/dist/{EffectSheet.vue_vue_type_style_index_0_lang-B6KcW1Rh.js → EffectSheet.vue_vue_type_style_index_0_lang-qvZRCW3Q.js} +6 -6
  12. package/dist/{Experience-DyOeEZu2.js → Experience-F6_b9Bvs.js} +9 -9
  13. package/dist/{FileSaver.min-D0Xa_nbt.js → FileSaver.min-9_MTxcsH.js} +1 -1
  14. package/dist/{Game-C25Rgy7x.js → Game-B5ELfu1H.js} +10 -10
  15. package/dist/{Grab-BaG_Xwvt.js → Grab-ZGyeHCaN.js} +8 -8
  16. package/dist/{ImageInput.vue_vue_type_script_setup_true_lang-X9zk3Atr.js → ImageInput.vue_vue_type_script_setup_true_lang-C2XgeLvq.js} +1 -1
  17. package/dist/{Index-BIFAhH2O.js → Index-shCHzuc6.js} +10 -10
  18. package/dist/{LocationPicker.vue_vue_type_script_setup_true_lang-DQQVh3ap.js → LocationPicker.vue_vue_type_script_setup_true_lang-DwJn6RF4.js} +1 -1
  19. package/dist/{LottieAnimation.vue_vue_type_script_setup_true_lang-BwJaLc8D.js → LottieAnimation.vue_vue_type_script_setup_true_lang-CMQE4OgN.js} +1 -1
  20. package/dist/{MainLayout-BhCYNX3n.js → MainLayout-D2oABez8.js} +1 -1
  21. package/dist/Marketing-iYLmr_K-.js +236 -0
  22. package/dist/{MarketingMaterialEdit-CyKJp44W.js → MarketingMaterialEdit-BQXrRtuF.js} +276 -316
  23. package/dist/{Member-CINhmBJN.js → Member-B6HhRTh1.js} +11 -11
  24. package/dist/{MemberList-BWvurFcu.js → MemberList-CKbZtUOP.js} +26 -26
  25. package/dist/{MemberTransactions-DjxllAVe.js → MemberTransactions--JLaF1U4.js} +1 -1
  26. package/dist/{MessageInput.vue_vue_type_script_setup_true_lang-BOohwOuN.js → MessageInput.vue_vue_type_script_setup_true_lang-DAFHPnR-.js} +9 -9
  27. package/dist/{Mission-DHS0FPgm.js → Mission-RwzK5aX7.js} +10 -10
  28. package/dist/{Overview-DFKG3hyX.js → Overview-C7ZexnUx.js} +18 -18
  29. package/dist/{Point-C0lV-lkL.js → Point-CoCYad51.js} +9 -9
  30. package/dist/{Promotion-aDnFW2P_.js → Promotion-DVZN7-K0.js} +10 -10
  31. package/dist/{Queue-CtH9-eLs.js → Queue-BOrvV51q.js} +10 -10
  32. package/dist/{Record-CQydFJqp.js → Record-P-AbRn6I.js} +9 -9
  33. package/dist/{Review-CKsWMX2o.js → Review-DFkyD0sh.js} +4 -4
  34. package/dist/{ReviewFacebookCallback-D4jb1HC4.js → ReviewFacebookCallback-CZMgR9GI.js} +4 -4
  35. package/dist/{ReviewGoogleCallback-CCXJc9fi.js → ReviewGoogleCallback-CZSgHEbP.js} +4 -4
  36. package/dist/{Reward-BRr8fWN4.js → Reward-6xSqB9ML.js} +16 -16
  37. package/dist/{RewardGroup.vue_vue_type_script_setup_true_lang-t4cBlpPd.js → RewardGroup.vue_vue_type_script_setup_true_lang-Cuf95qd6.js} +11 -11
  38. package/dist/{RuleGroup.vue_vue_type_script_setup_true_lang-oiLK2FWO.js → RuleGroup.vue_vue_type_script_setup_true_lang-Bt7K8y_N.js} +14 -14
  39. package/dist/{Segment-BMNT_K48.js → Segment-CaFTGv1s.js} +24 -24
  40. package/dist/{SelectItems.vue_vue_type_script_setup_true_lang-Co9D6B80.js → SelectItems.vue_vue_type_script_setup_true_lang-DB7yAOAV.js} +2 -2
  41. package/dist/{SendCollectionSheet.vue_vue_type_script_setup_true_lang-RMfUCmZH.js → SendCollectionSheet.vue_vue_type_script_setup_true_lang-DhGfiUAy.js} +12 -12
  42. package/dist/{SendVoucherSheet.vue_vue_type_script_setup_true_lang-B7BP9ow8.js → SendVoucherSheet.vue_vue_type_script_setup_true_lang-ZTkWcdHS.js} +4 -4
  43. package/dist/{Setting-Bv6KoqKT.js → Setting-DmQVsYXj.js} +14 -14
  44. package/dist/{SettingAdvertisements-C5EdDN8V.js → SettingAdvertisements-BaROU8us.js} +12 -12
  45. package/dist/{Store-Iiwd-cqe.js → Store-DHyhLBVY.js} +21 -21
  46. package/dist/{StoreRewards-B8GCy9Q8.js → StoreRewards-D0lsVw6j.js} +15 -15
  47. package/dist/{StoreTransactions.vue_vue_type_script_setup_true_lang-DCuLpnZz.js → StoreTransactions.vue_vue_type_script_setup_true_lang-DqeErrz2.js} +21 -21
  48. package/dist/{TargetLocationInput.vue_vue_type_script_setup_true_lang-CKjg0o86.js → TargetLocationInput.vue_vue_type_script_setup_true_lang-DE7_71js.js} +2 -2
  49. package/dist/{Tier-C5QHgi86.js → Tier-gY89ATJZ.js} +23 -23
  50. package/dist/{Title-DCpgwhkh.js → Title-IYc-Ha7M.js} +20 -20
  51. package/dist/{Transaction-p-jqY2uR.js → Transaction-DYj14beR.js} +2 -2
  52. package/dist/{UserRuleGroup.vue_vue_type_script_setup_true_lang-z_pRXQs5.js → UserRuleGroup.vue_vue_type_script_setup_true_lang-DBg__2Ar.js} +6 -6
  53. package/dist/{Voucher-CwPK7CI3.js → Voucher-DRe_7iwB.js} +13 -13
  54. package/dist/{VoucherEditor.vue_vue_type_script_setup_true_lang-U3lPcMsO.js → VoucherEditor.vue_vue_type_script_setup_true_lang-Cg0QGZfX.js} +12 -12
  55. package/dist/{ZodTextField.vue_vue_type_script_setup_true_lang-DZK3Vhgl.js → ZodTextField.vue_vue_type_script_setup_true_lang-vQpDHFbP.js} +2 -2
  56. package/dist/{app-Bd1PovAE.js → app-DKkwrhMa.js} +227 -227
  57. package/dist/app.js +1 -1
  58. package/dist/{business-DY9T_8D6.js → business-B6QJRvwl.js} +1 -1
  59. package/dist/{campaign-D9-2cfGS.js → campaign-BOs8XM-E.js} +8 -8
  60. package/dist/{campaign-Cj8ykwZM.js → campaign-hW8Yxlsd.js} +1 -1
  61. package/dist/{campaign.enum-Dn1IZjm3.js → campaign.enum-DxMYtWnO.js} +1 -1
  62. package/dist/{campaign.fn-BpmRNefC.js → campaign.fn-DQ65nlYV.js} +39 -39
  63. package/dist/{collectible.enum-DwDiqgOQ.js → collectible.enum-CZFScnZg.js} +1 -1
  64. package/dist/{collection.fn-DxxhNNiS.js → collection.fn-CidF0dGP.js} +2 -2
  65. package/dist/{dto-exJWIIFh.js → dto-C9Nt1u50.js} +4 -4
  66. package/dist/{duplicateCampaign-VlwdEOpi.js → duplicateCampaign-DVzt6cpN.js} +2 -2
  67. package/dist/{effect-B1gX3HYy.js → effect-Db6RimwW.js} +1 -1
  68. package/dist/{email-addresses-C0tfIamr.js → email-addresses-C02DqWUe.js} +2 -2
  69. package/dist/{export-D2LYUW7D.js → export-DNIcz3qS.js} +3 -3
  70. package/dist/{helper-9iFjiuBS.js → helper-CvXdehK7.js} +1 -1
  71. package/dist/{index--0-PrELA.js → index-0pkFDIzd.js} +1 -1
  72. package/dist/{index-TwCRZqdr.js → index-ACEIBNv3.js} +3 -3
  73. package/dist/{index-_ax9IcMt.js → index-BZP4FLAP.js} +4 -4
  74. package/dist/{index-mkNRK108.js → index-BpfeEFhj.js} +1 -1
  75. package/dist/{index-I9yn8pHU.js → index-Bu209ojz.js} +2 -2
  76. package/dist/{index-DaIOBj8s.js → index-CQIP2wsW.js} +1 -1
  77. package/dist/{index-mynItfLE.js → index-CWMgwUor.js} +3 -3
  78. package/dist/{index-DZr_AJes.js → index-CXpTeJEw.js} +1 -1
  79. package/dist/{index-DWi7IG9Q.js → index-DfHoeQSp.js} +1 -1
  80. package/dist/{index-E19Gtmxw.js → index-Dj-JcFr3.js} +3 -3
  81. package/dist/{index-CdANllE-.js → index-LTtmYSoI.js} +1 -1
  82. package/dist/{index-VnQA51n7.js → index-X7CT5hzK.js} +6 -6
  83. package/dist/{index-CBMnWVoT.js → index-hJsSB9sR.js} +1 -1
  84. package/dist/{index.esm2017-CbwAxX_t.js → index.esm2017-DAdHJ0oY.js} +1 -1
  85. package/dist/{loading-BUUuNRb8.js → loading-o0TBim-d.js} +1 -1
  86. package/dist/{lodash-DzFwGhp3.js → lodash-BHizN_g6.js} +1 -1
  87. package/dist/{membership-BSY7S3nW.js → membership-DzujFWmH.js} +3 -3
  88. package/dist/{money-DB8eMVCB.js → money-BNxHlpcD.js} +1 -1
  89. package/dist/{number-CmlQv3bk.js → number-DNDzN4Nd.js} +1 -1
  90. package/dist/objectid-CnwVzlUD.js +145 -0
  91. package/dist/{plugins-DATxgRFK.js → plugins-Scxk0oEb.js} +3 -3
  92. package/dist/{reward-C3NsvqTO.js → reward-C1iLtW5B.js} +1 -1
  93. package/dist/{rule-zKaaqUwQ.js → rule-DI694Swg.js} +3 -3
  94. package/dist/{rule-builder-EOj4zyYT.js → rule-builder-Fx0nmKme.js} +1 -1
  95. package/dist/style.css +1 -1
  96. package/dist/{template-KUFfOua-.js → template-sj-N6n8x.js} +6 -6
  97. package/dist/{timezone-HIZKEUxS.js → timezone-D9Bi8DEn.js} +2 -2
  98. package/dist/{trigger-8HJ7QGEI.js → trigger-D5TZSY4o.js} +5 -5
  99. package/dist/useMarketingMaterialActions-CObsVopg.js +95 -0
  100. package/dist/{usePagination-CvSSPoM-.js → usePagination-CJMZLttm.js} +1 -1
  101. package/dist/{user-C5FK05SW.js → user-B9EcGV_h.js} +1 -1
  102. package/dist/{vue-i18n-VE9cLms0.js → vue-i18n-BZ4icio1.js} +285 -285
  103. package/dist/{xlsx-C_8oyTCI.js → xlsx-P_FiE4nv.js} +1 -1
  104. package/dist/{zod-DrlA6hIW.js → zod-DQqF49Jz.js} +1 -1
  105. package/package.json +1 -1
  106. package/dist/Marketing-C19yd_BK.js +0 -293
  107. package/dist/index-DBXGg3yg.js +0 -36
  108. package/dist/objectid-DN-4NnaP.js +0 -145
@@ -0,0 +1,236 @@
1
+ import { defineComponent as w, resolveComponent as v, openBlock as s, createBlock as N, unref as f, ref as p, watch as R, createElementBlock as m, createVNode as i, withCtx as I, createElementVNode as n, toDisplayString as k, withModifiers as T, createStaticVNode as U, computed as L, onMounted as P, nextTick as D, onUnmounted as H, Fragment as F, renderList as B, createCommentVNode as V } from "vue";
2
+ import { _ as j } from "./campaign-CpzFl8Vr.js";
3
+ import { u as S } from "./vue-i18n-BZ4icio1.js";
4
+ import { u as G, m as q } from "./useMarketingMaterialActions-CObsVopg.js";
5
+ import { u as O } from "./remy-D_Deb3ue.js";
6
+ import { useRouter as z } from "vue-router";
7
+ import "./index-DfHoeQSp.js";
8
+ import { R as K } from "./app-DKkwrhMa.js";
9
+ const Z = /* @__PURE__ */ w({
10
+ __name: "GenerateMaterialButton",
11
+ setup(o) {
12
+ const { t: r } = S(), c = O();
13
+ function a() {
14
+ c.activate({
15
+ command: "generateMarketingMaterial",
16
+ fullscreen: !0,
17
+ forceNewConversation: !0
18
+ });
19
+ }
20
+ return (e, t) => {
21
+ const u = v("FmButton");
22
+ return s(), N(u, {
23
+ label: f(r)("connect.marketing.emptyState.action"),
24
+ "prepend-icon": "wand_stars",
25
+ onClick: a
26
+ }, null, 8, ["label"]);
27
+ };
28
+ }
29
+ }), J = /* @__PURE__ */ w({
30
+ __name: "MarketingMaterialItemActionButton",
31
+ props: {
32
+ material: {}
33
+ },
34
+ emits: ["update:menuOpened"],
35
+ setup(o, { emit: r }) {
36
+ const c = o, a = r, e = p(!1);
37
+ R(e, (y) => {
38
+ a("update:menuOpened", y);
39
+ });
40
+ const { shareMaterial: t, downloadMaterialImage: u, copyMaterialLink: _ } = G();
41
+ async function d() {
42
+ e.value = !1, await t(c.material);
43
+ }
44
+ async function M() {
45
+ e.value = !1, await u(c.material.imageUrl);
46
+ }
47
+ async function b() {
48
+ e.value = !1, await _(c.material.imageUrl);
49
+ }
50
+ return (y, h) => {
51
+ const l = v("FmButton"), g = v("FmMenuItem"), C = v("FmMenu");
52
+ return s(), m("div", null, [
53
+ i(C, {
54
+ placement: "right-start",
55
+ shift: !0,
56
+ "model-value": e.value,
57
+ onMenuChanged: h[0] || (h[0] = (A) => e.value = A)
58
+ }, {
59
+ "menu-button": I(() => [
60
+ i(l, {
61
+ icon: "more_vert",
62
+ variant: "tertiary",
63
+ size: "md"
64
+ })
65
+ ]),
66
+ default: I(() => [
67
+ i(g, {
68
+ icon: "share",
69
+ label: "Share",
70
+ onClick: d
71
+ }),
72
+ i(g, {
73
+ icon: "download",
74
+ label: "Download",
75
+ onClick: M
76
+ }),
77
+ i(g, {
78
+ icon: "content_copy",
79
+ label: "Copy Link",
80
+ onClick: b
81
+ })
82
+ ]),
83
+ _: 1
84
+ }, 8, ["model-value"])
85
+ ]);
86
+ };
87
+ }
88
+ }), Q = { class: "h-[205.5px] w-full overflow-hidden bg-fm-color-neutral-gray-100" }, W = ["src", "alt"], X = { class: "p-3" }, Y = { class: "flex items-start justify-between gap-2" }, ee = { class: "space-y-1 overflow-hidden" }, te = { class: "font-semibold text-sm text-gray-900 truncate" }, ne = { class: "text-xs text-gray-500 line-clamp-2" }, ae = {
89
+ key: 1,
90
+ class: "rounded-lg overflow-hidden border border-transparent fm-shadow-light-100 animate-pulse bg-white"
91
+ }, $ = /* @__PURE__ */ w({
92
+ __name: "MarketingMaterialItem",
93
+ props: {
94
+ material: {}
95
+ },
96
+ setup(o) {
97
+ const { t: r } = S(), c = z(), a = p(!1);
98
+ return (e, t) => o.material ? (s(), m("div", {
99
+ key: 0,
100
+ class: "group rounded-lg overflow-hidden cursor-pointer border border-transparent hover:border-blue-500 hover:bg-blue-50 transition-[border-color,background-color] fm-shadow-light-100 hover:fm-shadow-light-300",
101
+ onClick: t[2] || (t[2] = () => {
102
+ a.value || f(c).push({
103
+ name: f(K)["$connect-MARKETING_MATERIAL_EDIT"],
104
+ query: { id: o.material._id }
105
+ });
106
+ })
107
+ }, [
108
+ n("div", Q, [
109
+ n("img", {
110
+ src: o.material.imageUrl,
111
+ alt: f(r)("connect.marketing.title"),
112
+ class: "w-full h-full object-cover"
113
+ }, null, 8, W)
114
+ ]),
115
+ n("div", X, [
116
+ n("div", Y, [
117
+ n("div", ee, [
118
+ n("p", te, k(o.material.headline), 1),
119
+ n("p", ne, k(o.material.caption), 1)
120
+ ]),
121
+ i(J, {
122
+ material: o.material,
123
+ "onUpdate:menuOpened": t[0] || (t[0] = (u) => a.value = u),
124
+ onClick: t[1] || (t[1] = T(() => {
125
+ }, ["stop"]))
126
+ }, null, 8, ["material"])
127
+ ])
128
+ ])
129
+ ])) : (s(), m("div", ae, [...t[3] || (t[3] = [
130
+ U('<div class="h-[205.5px] w-full bg-fm-color-neutral-gray-100"></div><div class="p-3 space-y-2"><div class="h-[16px] w-3/4 rounded bg-fm-color-neutral-gray-100"></div><div class="h-12 w-full rounded bg-fm-color-neutral-gray-100"></div><div class="h-12 w-2/3 rounded bg-fm-color-neutral-gray-100"></div></div>', 2)
131
+ ])]));
132
+ }
133
+ }), oe = {
134
+ key: 0,
135
+ class: "px-24 xs:px-12 flex flex-col gap-y-16 py-24 xs:py-16"
136
+ }, re = { class: "fm-typo-en-title-sm-800 text-center" }, le = { class: "fm-typo-en-body-md-400 text-fm-color-typo-secondary w-4/6 xs:w-full text-center" }, se = {
137
+ key: 1,
138
+ class: "px-24 xs:px-12 flex flex-col gap-y-24 xs:gap-y-16 pt-24 xs:pt-16"
139
+ }, ie = { class: "grid grid-cols-1 sm:grid-cols-2 md:grid-cols-3 lg:grid-cols-4 gap-16" }, E = 20, _e = /* @__PURE__ */ w({
140
+ __name: "Marketing",
141
+ setup(o) {
142
+ const { t: r } = S(), c = O(), a = p([]), e = p(!0), t = p(!0), u = p(null), _ = p(null);
143
+ let d = null;
144
+ const M = L(() => ({
145
+ label: r("connect.marketing.emptyState.action"),
146
+ value: "generate",
147
+ isPrimary: !0,
148
+ prependIcon: "wand_stars"
149
+ }));
150
+ function b(l) {
151
+ l === "generate" && c.activate({
152
+ command: "generateMarketingMaterial",
153
+ fullscreen: !0,
154
+ forceNewConversation: !0
155
+ });
156
+ }
157
+ async function y() {
158
+ const l = await q.listMarketingMaterials(
159
+ u.value,
160
+ E
161
+ );
162
+ a.value.push(...l.resources), u.value = l.meta.nextCursor, t.value = !!l.meta.nextCursor;
163
+ }
164
+ function h() {
165
+ d = new IntersectionObserver(
166
+ async ([l]) => {
167
+ if (!(!l.isIntersecting || !t.value)) {
168
+ e.value = !0;
169
+ try {
170
+ await y();
171
+ } catch {
172
+ } finally {
173
+ e.value = !1;
174
+ }
175
+ }
176
+ },
177
+ { rootMargin: "200px" }
178
+ ), _.value && d.observe(_.value);
179
+ }
180
+ return P(async () => {
181
+ try {
182
+ await y();
183
+ } catch {
184
+ } finally {
185
+ e.value = !1, await D(), h();
186
+ }
187
+ }), H(() => {
188
+ d == null || d.disconnect();
189
+ }), (l, g) => {
190
+ const C = v("FmPageHead"), A = v("FmCard");
191
+ return s(), m(F, null, [
192
+ i(C, {
193
+ title: f(r)("connect.marketing.title"),
194
+ actions: a.value.length > 0 ? [M.value] : [],
195
+ "onClick:action": b
196
+ }, null, 8, ["title", "actions"]),
197
+ !e.value && a.value.length === 0 ? (s(), m("div", oe, [
198
+ i(A, {
199
+ variant: "outlined",
200
+ class: "w-full justify-center items-center flex flex-col p-[24px] xs:p-16 gap-[24px] xs:gap-16"
201
+ }, {
202
+ default: I(() => [
203
+ g[0] || (g[0] = n("img", {
204
+ src: j,
205
+ class: "w-[150px]"
206
+ }, null, -1)),
207
+ n("p", re, k(f(r)("connect.marketing.emptyState.title")), 1),
208
+ n("p", le, k(f(r)("connect.marketing.emptyState.description")), 1),
209
+ i(Z)
210
+ ]),
211
+ _: 1
212
+ })
213
+ ])) : (s(), m("div", se, [
214
+ n("div", ie, [
215
+ (s(!0), m(F, null, B(a.value, (x) => (s(), N($, {
216
+ key: x._id,
217
+ material: x
218
+ }, null, 8, ["material"]))), 128)),
219
+ e.value ? (s(), m(F, { key: 0 }, B(E, (x) => i($, {
220
+ key: `skeleton-${x}`,
221
+ material: null
222
+ })), 64)) : V("", !0)
223
+ ]),
224
+ n("div", {
225
+ ref_key: "sentinel",
226
+ ref: _,
227
+ class: "h-1"
228
+ }, null, 512)
229
+ ]))
230
+ ], 64);
231
+ };
232
+ }
233
+ });
234
+ export {
235
+ _e as default
236
+ };