@feedmepos/mf-connect 0.1.92-prod → 0.1.93-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.
Files changed (100) hide show
  1. package/dist/{Analytic-CpBxKgs9.js → Analytic-CF3P53vZ.js} +11 -11
  2. package/dist/{App-B7AQKHNG.js → App-Dbibh5dj.js} +11 -11
  3. package/dist/{Bin-fMP89RQu.js → Bin-B2fl-fdo.js} +8 -8
  4. package/dist/{Broadcast-CzakSN6g.js → Broadcast-Bdd60JEW.js} +8 -8
  5. package/dist/{CampaignTypeDialog.vue_vue_type_script_setup_true_lang-mpvpNP4k.js → CampaignTypeDialog.vue_vue_type_script_setup_true_lang-BkXOSFhp.js} +6 -7
  6. package/dist/{Card-CBl-FP75.js → Card-BsfpC3iw.js} +20 -21
  7. package/dist/{Collections-CSE9blWI.js → Collections-b35P-S0E.js} +8 -8
  8. package/dist/{Credit-Ys2hpuhy.js → Credit-D52WVEI2.js} +8 -8
  9. package/dist/{EditCampaignSheet.vue_vue_type_script_setup_true_lang-8xKxU19h.js → EditCampaignSheet.vue_vue_type_script_setup_true_lang-CCUOC17_.js} +32 -33
  10. package/dist/{EffectSheet.vue_vue_type_style_index_0_lang-CCmIV0PO.js → EffectSheet.vue_vue_type_style_index_0_lang-Bt7uoapk.js} +6 -6
  11. package/dist/{Experience-ldXxT64B.js → Experience-_zsgF0a8.js} +8 -8
  12. package/dist/{FileSaver.min-ChbDZYru.js → FileSaver.min-B7bT7uZB.js} +1 -1
  13. package/dist/{Game-CzNAKcbn.js → Game-RJSHKHn3.js} +9 -9
  14. package/dist/{ImageInput.vue_vue_type_script_setup_true_lang-BWSlxKAt.js → ImageInput.vue_vue_type_script_setup_true_lang-SEhYAL8G.js} +1 -1
  15. package/dist/{Index-BTg5_VLv.js → Index-D3ezuXa9.js} +10 -10
  16. package/dist/{LottieAnimation.vue_vue_type_script_setup_true_lang-CEX4A8Vu.js → LottieAnimation.vue_vue_type_script_setup_true_lang-BrE_KuQ8.js} +1 -1
  17. package/dist/{MainLayout-DTnxYJL-.js → MainLayout-CVV2DhUe.js} +1 -1
  18. package/dist/Marketing-DEuThlZJ.js +235 -0
  19. package/dist/MarketingMaterialEdit-CUTvpMNA.js +1032 -0
  20. package/dist/{Member-BFfuRNc3.js → Member-VETbkHa9.js} +13 -14
  21. package/dist/{MemberList-BIOv6v6t.js → MemberList-Zf4a_QPT.js} +33 -33
  22. package/dist/{MemberTransactions-BeFVDHAh.js → MemberTransactions-CKkhiXHs.js} +1 -1
  23. package/dist/{MessageInput.vue_vue_type_script_setup_true_lang-BtiTqHlT.js → MessageInput.vue_vue_type_script_setup_true_lang-CWFhJcf_.js} +9 -9
  24. package/dist/{Mission-D7-WUd8e.js → Mission-ebr00gRa.js} +30 -30
  25. package/dist/{Overview-wPnRJWSF.js → Overview-DAVsiqOi.js} +30 -30
  26. package/dist/{Point-B6K7s305.js → Point-MVRhs_TV.js} +8 -8
  27. package/dist/{Promotion-V9HF_-4a.js → Promotion-gY4_IDdN.js} +20 -19
  28. package/dist/{Queue-GxWELL-8.js → Queue-DYG5qt5V.js} +19 -19
  29. package/dist/{Record-D6xoFcc_.js → Record-DJQbIHO-.js} +14 -13
  30. package/dist/{Reward-ChrJx3TQ.js → Reward-Cl9Q83Ic.js} +16 -16
  31. package/dist/{RewardGroup.vue_vue_type_script_setup_true_lang-BzxTwBV9.js → RewardGroup.vue_vue_type_script_setup_true_lang-B9oA4sF8.js} +13 -14
  32. package/dist/{RuleGroup.vue_vue_type_script_setup_true_lang-aDa4GkmZ.js → RuleGroup.vue_vue_type_script_setup_true_lang-4xWx1fZP.js} +16 -17
  33. package/dist/{Segment-rI73g2Pf.js → Segment-DmgI9KPo.js} +26 -27
  34. package/dist/{SelectItems.vue_vue_type_script_setup_true_lang-DqhqodSA.js → SelectItems.vue_vue_type_script_setup_true_lang-DySwa7Ny.js} +2 -2
  35. package/dist/{SendCollectionSheet.vue_vue_type_script_setup_true_lang-DmG2wWp8.js → SendCollectionSheet.vue_vue_type_script_setup_true_lang-DD-KfnJK.js} +30 -31
  36. package/dist/{SendVoucherSheet.vue_vue_type_script_setup_true_lang-nqcXkNuh.js → SendVoucherSheet.vue_vue_type_script_setup_true_lang-D8hgPIT2.js} +4 -4
  37. package/dist/{Setting-BTBy21Dh.js → Setting-Czy9M6ce.js} +14 -14
  38. package/dist/{SettingAdvertisements-DpQSHRt5.js → SettingAdvertisements-BMnfsHLy.js} +12 -12
  39. package/dist/{Store-CDeDk5j3.js → Store-C-ys_2QK.js} +23 -24
  40. package/dist/{StoreRewards-B_sIvED1.js → StoreRewards-DK7IUkUO.js} +15 -15
  41. package/dist/{StoreTransactions.vue_vue_type_script_setup_true_lang-C_jYgOxV.js → StoreTransactions.vue_vue_type_script_setup_true_lang-kaIV3mqE.js} +29 -29
  42. package/dist/{TargetLocationInput.vue_vue_type_script_setup_true_lang-CZgImaiL.js → TargetLocationInput.vue_vue_type_script_setup_true_lang-DnRJPsED.js} +2 -2
  43. package/dist/{Tier-BqPORpVi.js → Tier-B7bsxmsf.js} +22 -22
  44. package/dist/{Title-DZFyfOvY.js → Title-D4KW30Ks.js} +22 -23
  45. package/dist/{Transaction-BicSfNsV.js → Transaction-CKyWN0zZ.js} +2 -2
  46. package/dist/{UserRuleGroup.vue_vue_type_script_setup_true_lang-Bj7F_2lN.js → UserRuleGroup.vue_vue_type_script_setup_true_lang-tqshXO3D.js} +6 -6
  47. package/dist/{Voucher-D5xZbzfU.js → Voucher-DLw9lMUt.js} +12 -12
  48. package/dist/{VoucherEditor.vue_vue_type_script_setup_true_lang-DQlzbuAg.js → VoucherEditor.vue_vue_type_script_setup_true_lang-D5QC7oDC.js} +12 -12
  49. package/dist/{ZodTextField.vue_vue_type_script_setup_true_lang-DAsm-iDs.js → ZodTextField.vue_vue_type_script_setup_true_lang-DpfeD9sJ.js} +2 -2
  50. package/dist/{app-D427_gmU.js → app-AQ3uPcGw.js} +9480 -9256
  51. package/dist/app.js +1 -1
  52. package/dist/{business-DVT9-z7e.js → business-C-SeKOpM.js} +1 -1
  53. package/dist/{campaign-BxeCSYow.js → campaign-Dk0dzJrv.js} +21 -20
  54. package/dist/{campaign-Cd2S6J2Z.js → campaign-Jnfn3VT0.js} +1 -1
  55. package/dist/{campaign.enum-BWx2XJCj.js → campaign.enum-jrT7BDfx.js} +1 -1
  56. package/dist/{campaign.fn-C6_ucHrl.js → campaign.fn-v9Ckc2hW.js} +39 -39
  57. package/dist/{collectible.enum-CMr5OBDH.js → collectible.enum-DFWdMC2z.js} +1 -1
  58. package/dist/{collection.fn-QKLnoDfT.js → collection.fn-BDtuxdF8.js} +2 -2
  59. package/dist/{dto-DGMbacfr.js → dto-zWYoDEwd.js} +16 -16
  60. package/dist/{effect-BGkSRKmY.js → effect-DOecbCOM.js} +1 -1
  61. package/dist/{email-addresses-BAv5RfxW.js → email-addresses-DSr_tXqu.js} +2 -2
  62. package/dist/{export-1X3xd2lm.js → export-CZkFZ1ql.js} +3 -3
  63. package/dist/{helper-CjJd9YN0.js → helper-Qh6msr0l.js} +1 -1
  64. package/dist/{index-DVEBKqPp.js → index--gM0b_9n.js} +1 -1
  65. package/dist/{index-yOug8IQK.js → index-9VFfiC3i.js} +1 -1
  66. package/dist/{index-C-5iRXaD.js → index-B1rzQD1z.js} +3 -3
  67. package/dist/{index-CeC11VY5.js → index-BlK42Hsj.js} +17 -17
  68. package/dist/{index-ueyNfpGe.js → index-BnY_w7sd.js} +3 -3
  69. package/dist/{index-CI3LvsAN.js → index-BoC2dMV5.js} +2 -2
  70. package/dist/{index-DkEmFIqa.js → index-CRiRSGK0.js} +1 -1
  71. package/dist/{index-8FtsTHd_.js → index-D0n4WOl2.js} +3 -3
  72. package/dist/{index-yF2I6Xtv.js → index-DFw3Bb9V.js} +91 -68
  73. package/dist/{index-CTTeS30R.js → index-DObqZ6KJ.js} +1 -1
  74. package/dist/{index-DxbpoYQX.js → index-YUpYN8aL.js} +1 -1
  75. package/dist/{index-CqoU5D_S.js → index-tv01Kl2W.js} +18 -18
  76. package/dist/{index.esm2017-DBFENth9.js → index.esm2017-B-Gv-i1i.js} +1 -1
  77. package/dist/{loading-X5Dle07s.js → loading-CCrn-MJR.js} +4 -3
  78. package/dist/{lodash-CJtUEnSL.js → lodash-CtOTzbaj.js} +1 -1
  79. package/dist/{membership-CKuQtReq.js → membership-EQqU26uC.js} +3 -3
  80. package/dist/{money-C99PNkQ0.js → money-BKkxOcfp.js} +1 -1
  81. package/dist/{number-C42NY90L.js → number-CB4PaVTY.js} +1 -1
  82. package/dist/{objectid-B5SRENL3.js → objectid-DZkH2UHF.js} +6 -6
  83. package/dist/{plugins-0yAaVVcL.js → plugins-DY6km6IL.js} +297 -326
  84. package/dist/{reward-eIVX1EnX.js → reward-CtjrIJKv.js} +1 -1
  85. package/dist/{rule-BsTx8uRy.js → rule-CZ3RGeiy.js} +3 -3
  86. package/dist/{rule-builder-DxJBecU0.js → rule-builder-UZUhhSdz.js} +1 -1
  87. package/dist/string-Gcy5IM_H.js +32 -0
  88. package/dist/style.css +1 -1
  89. package/dist/{template-vPfeVxs-.js → template-D5j-p60O.js} +7 -7
  90. package/dist/{timezone-CzWr1nhO.js → timezone-D6XtPLkX.js} +2 -2
  91. package/dist/{trigger-BSEdMaKu.js → trigger-D899b9LT.js} +7 -7
  92. package/dist/useMarketingMaterialActions-CacZ3qjm.js +107 -0
  93. package/dist/{usePagination-BnISBBlq.js → usePagination-bOOb_012.js} +1 -1
  94. package/dist/{user-CUOEkvb1.js → user-CH5kl3DX.js} +19 -19
  95. package/dist/{vue-i18n-CdwtjeYd.js → vue-i18n-zOam3pfw.js} +201 -201
  96. package/dist/{xlsx-DOd1PS56.js → xlsx-DF35RkrA.js} +1 -1
  97. package/dist/{zod-_h5DNk2u.js → zod-CmBShukP.js} +1 -1
  98. package/package.json +3 -2
  99. package/dist/Marketing-CaFEmsay.js +0 -319
  100. package/dist/index-BtOj2rTq.js +0 -38
@@ -0,0 +1,235 @@
1
+ import { defineComponent as b, resolveComponent as v, openBlock as s, createBlock as N, unref as c, ref as f, watch as R, createElementBlock as d, createVNode as i, withCtx as S, createElementVNode as n, toDisplayString as w, withModifiers as T, createStaticVNode as U, computed as L, onMounted as P, nextTick as H, onUnmounted as V, Fragment as I, renderList as B, createCommentVNode as j } from "vue";
2
+ import { _ as D } from "./campaign-CpzFl8Vr.js";
3
+ import { u as M } from "./vue-i18n-zOam3pfw.js";
4
+ import { u as O, a as G, m as q } from "./useMarketingMaterialActions-CacZ3qjm.js";
5
+ import { useRouter as z } from "vue-router";
6
+ import "./index-9VFfiC3i.js";
7
+ import { R as K } from "./app-AQ3uPcGw.js";
8
+ const Z = /* @__PURE__ */ b({
9
+ __name: "GenerateMaterialButton",
10
+ setup(l) {
11
+ const { t: r } = M(), u = O();
12
+ function a() {
13
+ u.activate({
14
+ command: "generateMarketingMaterial",
15
+ fullscreen: !0,
16
+ forceNewConversation: !0
17
+ });
18
+ }
19
+ return (t, e) => {
20
+ const m = v("FmButton");
21
+ return s(), N(m, {
22
+ label: c(r)("connect.marketing.emptyState.action"),
23
+ "prepend-icon": "wand_stars",
24
+ onClick: a
25
+ }, null, 8, ["label"]);
26
+ };
27
+ }
28
+ }), J = /* @__PURE__ */ b({
29
+ __name: "MarketingMaterialItemActionButton",
30
+ props: {
31
+ material: {}
32
+ },
33
+ emits: ["update:menuOpened"],
34
+ setup(l, { emit: r }) {
35
+ const u = l, a = r, { t } = M(), e = f(!1);
36
+ R(e, (x) => {
37
+ a("update:menuOpened", x);
38
+ });
39
+ const { shareMaterial: m, downloadMaterialImage: _, copyMaterialLink: p } = G();
40
+ async function C() {
41
+ e.value = !1, await m(u.material);
42
+ }
43
+ async function A() {
44
+ e.value = !1, await _(u.material.imageUrl);
45
+ }
46
+ async function h() {
47
+ e.value = !1, await p(u.material.imageUrl);
48
+ }
49
+ return (x, o) => {
50
+ const k = v("FmButton"), y = v("FmMenuItem"), F = v("FmMenu");
51
+ return s(), d("div", null, [
52
+ i(F, {
53
+ placement: "right-start",
54
+ shift: !0,
55
+ "model-value": e.value,
56
+ onMenuChanged: o[0] || (o[0] = (g) => e.value = g)
57
+ }, {
58
+ "menu-button": S(() => [
59
+ i(k, {
60
+ icon: "more_vert",
61
+ variant: "tertiary",
62
+ size: "md"
63
+ })
64
+ ]),
65
+ default: S(() => [
66
+ i(y, {
67
+ icon: "share",
68
+ label: c(t)("connect.marketing.actions.share"),
69
+ onClick: C
70
+ }, null, 8, ["label"]),
71
+ i(y, {
72
+ icon: "download",
73
+ label: c(t)("connect.marketing.actions.download"),
74
+ onClick: A
75
+ }, null, 8, ["label"]),
76
+ i(y, {
77
+ icon: "content_copy",
78
+ label: c(t)("connect.marketing.actions.copyLink"),
79
+ onClick: h
80
+ }, null, 8, ["label"])
81
+ ]),
82
+ _: 1
83
+ }, 8, ["model-value"])
84
+ ]);
85
+ };
86
+ }
87
+ }), 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 = {
88
+ key: 1,
89
+ class: "rounded-lg overflow-hidden border border-transparent fm-shadow-light-100 animate-pulse bg-white"
90
+ }, $ = /* @__PURE__ */ b({
91
+ __name: "MarketingMaterialItem",
92
+ props: {
93
+ material: {}
94
+ },
95
+ setup(l) {
96
+ const { t: r } = M(), u = z(), a = f(!1);
97
+ return (t, e) => l.material ? (s(), d("div", {
98
+ key: 0,
99
+ 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",
100
+ onClick: e[2] || (e[2] = () => {
101
+ a.value || c(u).push({
102
+ name: c(K)["$connect-MARKETING_MATERIAL_EDIT"],
103
+ query: { id: l.material._id }
104
+ });
105
+ })
106
+ }, [
107
+ n("div", Q, [
108
+ n("img", {
109
+ src: l.material.imageUrl,
110
+ alt: c(r)("connect.marketing.title"),
111
+ class: "w-full h-full object-cover"
112
+ }, null, 8, W)
113
+ ]),
114
+ n("div", X, [
115
+ n("div", Y, [
116
+ n("div", ee, [
117
+ n("p", te, w(l.material.headline), 1),
118
+ n("p", ne, w(l.material.caption), 1)
119
+ ]),
120
+ i(J, {
121
+ material: l.material,
122
+ "onUpdate:menuOpened": e[0] || (e[0] = (m) => a.value = m),
123
+ onClick: e[1] || (e[1] = T(() => {
124
+ }, ["stop"]))
125
+ }, null, 8, ["material"])
126
+ ])
127
+ ])
128
+ ])) : (s(), d("div", ae, [...e[3] || (e[3] = [
129
+ 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)
130
+ ])]));
131
+ }
132
+ }), oe = {
133
+ key: 0,
134
+ class: "px-24 xs:px-12 flex flex-col gap-y-16 py-24 xs:py-16"
135
+ }, le = { class: "fm-typo-en-title-sm-800 text-center" }, re = { class: "fm-typo-en-body-md-400 text-fm-color-typo-secondary w-4/6 xs:w-full text-center" }, se = {
136
+ key: 1,
137
+ class: "px-24 xs:px-12 flex flex-col gap-y-24 xs:gap-y-16 pt-24 xs:pt-16"
138
+ }, ie = { class: "grid grid-cols-1 sm:grid-cols-2 md:grid-cols-3 lg:grid-cols-4 gap-16" }, E = 20, ve = /* @__PURE__ */ b({
139
+ __name: "Marketing",
140
+ setup(l) {
141
+ const { t: r } = M(), u = O(), a = f([]), t = f(!0), e = f(!0), m = f(null), _ = f(null);
142
+ let p = null;
143
+ const C = L(() => ({
144
+ label: r("connect.marketing.emptyState.action"),
145
+ value: "generate",
146
+ isPrimary: !0,
147
+ prependIcon: "wand_stars"
148
+ }));
149
+ function A(o) {
150
+ o === "generate" && u.activate({
151
+ command: "generateMarketingMaterial",
152
+ fullscreen: !0,
153
+ forceNewConversation: !0
154
+ });
155
+ }
156
+ async function h() {
157
+ const o = await q.listMarketingMaterials(
158
+ m.value,
159
+ E
160
+ );
161
+ a.value.push(...o.resources), m.value = o.meta.nextCursor, e.value = !!o.meta.nextCursor;
162
+ }
163
+ function x() {
164
+ p = new IntersectionObserver(
165
+ async ([o]) => {
166
+ if (!(!o.isIntersecting || !e.value || t.value)) {
167
+ t.value = !0;
168
+ try {
169
+ await h();
170
+ } catch {
171
+ } finally {
172
+ t.value = !1;
173
+ }
174
+ }
175
+ },
176
+ { rootMargin: "200px" }
177
+ ), _.value && p.observe(_.value);
178
+ }
179
+ return P(async () => {
180
+ try {
181
+ await h();
182
+ } catch {
183
+ } finally {
184
+ t.value = !1, await H(), x();
185
+ }
186
+ }), V(() => {
187
+ p == null || p.disconnect();
188
+ }), (o, k) => {
189
+ const y = v("FmPageHead"), F = v("FmCard");
190
+ return s(), d(I, null, [
191
+ i(y, {
192
+ title: c(r)("connect.marketing.title"),
193
+ actions: a.value.length > 0 ? [C.value] : [],
194
+ "onClick:action": A
195
+ }, null, 8, ["title", "actions"]),
196
+ !t.value && a.value.length === 0 ? (s(), d("div", oe, [
197
+ i(F, {
198
+ variant: "outlined",
199
+ class: "w-full justify-center items-center flex flex-col p-[24px] xs:p-16 gap-[24px] xs:gap-16"
200
+ }, {
201
+ default: S(() => [
202
+ k[0] || (k[0] = n("img", {
203
+ src: D,
204
+ class: "w-[150px]"
205
+ }, null, -1)),
206
+ n("p", le, w(c(r)("connect.marketing.emptyState.title")), 1),
207
+ n("p", re, w(c(r)("connect.marketing.emptyState.description")), 1),
208
+ i(Z)
209
+ ]),
210
+ _: 1
211
+ })
212
+ ])) : (s(), d("div", se, [
213
+ n("div", ie, [
214
+ (s(!0), d(I, null, B(a.value, (g) => (s(), N($, {
215
+ key: g._id,
216
+ material: g
217
+ }, null, 8, ["material"]))), 128)),
218
+ t.value ? (s(), d(I, { key: 0 }, B(E, (g) => i($, {
219
+ key: `skeleton-${g}`,
220
+ material: null
221
+ })), 64)) : j("", !0)
222
+ ]),
223
+ n("div", {
224
+ ref_key: "sentinel",
225
+ ref: _,
226
+ class: "h-1"
227
+ }, null, 512)
228
+ ]))
229
+ ], 64);
230
+ };
231
+ }
232
+ });
233
+ export {
234
+ ve as default
235
+ };