@feedmepos/mf-connect 0.1.38-beta.89 → 0.1.38-beta.91

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 (107) hide show
  1. package/dist/{Analytic-CsG9NLqu.js → Analytic-Drbkm5By.js} +13 -13
  2. package/dist/{App-COmG9c9h.js → App-C0cdcG5i.js} +7 -7
  3. package/dist/{AuditLogs-BpLMFIFm.js → AuditLogs-BZZLtf2u.js} +447 -426
  4. package/dist/{Bin-D8UANTaY.js → Bin-DRV5lRmj.js} +8 -8
  5. package/dist/{Broadcast-YANdySLA.js → Broadcast-C90FN2LB.js} +9 -9
  6. package/dist/{CampaignTypeDialog.vue_vue_type_script_setup_true_lang-B_PYJUgK.js → CampaignTypeDialog.vue_vue_type_script_setup_true_lang-CsdxwjCn.js} +6 -6
  7. package/dist/{Card-CFjTQd0w.js → Card-CWF84A1O.js} +18 -18
  8. package/dist/{Collections-DNgMSfQd.js → Collections-ja0gMaFf.js} +7 -7
  9. package/dist/{Credit-aSZiOjW_.js → Credit-D8U2AJgq.js} +9 -9
  10. package/dist/{EditCampaignSheet.vue_vue_type_script_setup_true_lang-CJ_pl5jr.js → EditCampaignSheet.vue_vue_type_script_setup_true_lang-YR62BvBG.js} +33 -33
  11. package/dist/{EffectSheet.vue_vue_type_style_index_0_lang-BOJMX-UH.js → EffectSheet.vue_vue_type_style_index_0_lang-BVbhDMqH.js} +6 -6
  12. package/dist/{Experience-jw1zj7aH.js → Experience-DDXLGizu.js} +9 -9
  13. package/dist/{FileSaver.min-pKmTYLZZ.js → FileSaver.min-Dng61jiL.js} +1 -1
  14. package/dist/{Game-Bh62IMOL.js → Game-CMOilzsW.js} +10 -10
  15. package/dist/{Grab-C_J0334x.js → Grab-tPVQB39R.js} +8 -8
  16. package/dist/{ImageInput.vue_vue_type_script_setup_true_lang-CYYeZele.js → ImageInput.vue_vue_type_script_setup_true_lang-BbtEXO4b.js} +1 -1
  17. package/dist/{Index-__x_ms9q.js → Index-Ch7wiShF.js} +10 -10
  18. package/dist/{LocationPicker.vue_vue_type_script_setup_true_lang-CVzIVSMy.js → LocationPicker.vue_vue_type_script_setup_true_lang-DLO0jj6Z.js} +1 -1
  19. package/dist/{LottieAnimation.vue_vue_type_script_setup_true_lang-CRrKuuP8.js → LottieAnimation.vue_vue_type_script_setup_true_lang-CplyhUFF.js} +1 -1
  20. package/dist/{MainLayout-CtYL_6Vf.js → MainLayout-BMqnfxHh.js} +1 -1
  21. package/dist/Marketing-C0weDg-u.js +236 -0
  22. package/dist/{MarketingMaterialEdit-WsOG7HXj.js → MarketingMaterialEdit-BD-SyXVQ.js} +528 -519
  23. package/dist/{Member-Cob99DO3.js → Member-Bpf0amjr.js} +11 -11
  24. package/dist/{MemberList-BuomeeP_.js → MemberList-cWYPEpL4.js} +26 -26
  25. package/dist/{MemberTransactions-cvfANJW6.js → MemberTransactions-vzRUVwpO.js} +1 -1
  26. package/dist/{MessageInput.vue_vue_type_script_setup_true_lang-BycRokXP.js → MessageInput.vue_vue_type_script_setup_true_lang-DY3L9CvB.js} +9 -9
  27. package/dist/{Mission-DZsInX4t.js → Mission-HRwIp1QY.js} +10 -10
  28. package/dist/{Overview-CMkjQq45.js → Overview-D9cfX4Kr.js} +18 -18
  29. package/dist/{Point-CqxZYMVM.js → Point-Dz-Z0_m9.js} +9 -9
  30. package/dist/{Promotion-BSKAiScm.js → Promotion-Csb0bdI6.js} +10 -10
  31. package/dist/{Queue-CJx1hgoW.js → Queue-CAVKh9bK.js} +10 -10
  32. package/dist/{Record-DTv02I-b.js → Record-bPnIoHnT.js} +9 -9
  33. package/dist/{Review-C69KLQ7M.js → Review-D2DfvLqJ.js} +4 -4
  34. package/dist/{ReviewFacebookCallback-D9kzBhPx.js → ReviewFacebookCallback-CI7V3xbp.js} +4 -4
  35. package/dist/{ReviewGoogleCallback-D2u-7qgc.js → ReviewGoogleCallback-LA2S8FLZ.js} +4 -4
  36. package/dist/{Reward-Df-BKcXq.js → Reward-DdHF5Pr7.js} +16 -16
  37. package/dist/{RewardGroup.vue_vue_type_script_setup_true_lang-pcfts2Rb.js → RewardGroup.vue_vue_type_script_setup_true_lang-DyZhWnI4.js} +11 -11
  38. package/dist/{RuleGroup.vue_vue_type_script_setup_true_lang-DW-HsYHC.js → RuleGroup.vue_vue_type_script_setup_true_lang-B0OSLJVN.js} +14 -14
  39. package/dist/{Segment-BDWagub3.js → Segment-DV1zcWF7.js} +24 -24
  40. package/dist/{SelectItems.vue_vue_type_script_setup_true_lang-DL10kauA.js → SelectItems.vue_vue_type_script_setup_true_lang-Df1HE9sL.js} +2 -2
  41. package/dist/{SendCollectionSheet.vue_vue_type_script_setup_true_lang-l4rDBv3C.js → SendCollectionSheet.vue_vue_type_script_setup_true_lang-C0K9giqI.js} +12 -12
  42. package/dist/{SendVoucherSheet.vue_vue_type_script_setup_true_lang-DLN9_TIZ.js → SendVoucherSheet.vue_vue_type_script_setup_true_lang-CzJL8Xl0.js} +4 -4
  43. package/dist/{Setting-ktSYDut4.js → Setting-DZiZy8A5.js} +14 -14
  44. package/dist/{SettingAdvertisements-CTPBt-eE.js → SettingAdvertisements-Bb9shWVJ.js} +12 -12
  45. package/dist/{Store-CLFdcs8z.js → Store-mymtMyho.js} +21 -21
  46. package/dist/{StoreRewards-BTC68uTN.js → StoreRewards-jcjZfSv7.js} +15 -15
  47. package/dist/{StoreTransactions.vue_vue_type_script_setup_true_lang-ClWUTo38.js → StoreTransactions.vue_vue_type_script_setup_true_lang-B-b5_TFL.js} +21 -21
  48. package/dist/{TargetLocationInput.vue_vue_type_script_setup_true_lang-CiWjHKPA.js → TargetLocationInput.vue_vue_type_script_setup_true_lang-sCa1J_hq.js} +2 -2
  49. package/dist/{Tier-DxEn_ZIV.js → Tier-Ba6aHC3R.js} +23 -23
  50. package/dist/{Title-DuWhWfu3.js → Title-C4uKD8E1.js} +20 -20
  51. package/dist/{Transaction-DegFh5m3.js → Transaction-Bf2uG6co.js} +2 -2
  52. package/dist/{UserRuleGroup.vue_vue_type_script_setup_true_lang-CFplRF-A.js → UserRuleGroup.vue_vue_type_script_setup_true_lang-C3ttU-bw.js} +6 -6
  53. package/dist/{Voucher-Bqeps2oo.js → Voucher-Lsc2pKCk.js} +13 -13
  54. package/dist/{VoucherEditor.vue_vue_type_script_setup_true_lang-BD1_rRs8.js → VoucherEditor.vue_vue_type_script_setup_true_lang-MA7tsTm-.js} +12 -12
  55. package/dist/{ZodTextField.vue_vue_type_script_setup_true_lang-B1F5UhvF.js → ZodTextField.vue_vue_type_script_setup_true_lang-DEDavbCx.js} +2 -2
  56. package/dist/{app-Cvd6sHzQ.js → app-BRrGcz9U.js} +7114 -6926
  57. package/dist/app.js +1 -1
  58. package/dist/{business-Bzy9sBLW.js → business-TBSvPv65.js} +1 -1
  59. package/dist/{campaign-ClVYSdGO.js → campaign-CL95CZkI.js} +1 -1
  60. package/dist/{campaign-DVJJyoHX.js → campaign-DxcuYXB7.js} +8 -8
  61. package/dist/{campaign.enum-Cm2zA3do.js → campaign.enum-DRydaoy9.js} +1 -1
  62. package/dist/{campaign.fn-J47JvRY7.js → campaign.fn-BsoUwQ5N.js} +218 -218
  63. package/dist/{collectible.enum-DHgC28SA.js → collectible.enum-CpTbpumt.js} +1 -1
  64. package/dist/{collection.fn-QJN27Q79.js → collection.fn-BNrPdDIr.js} +2 -2
  65. package/dist/{dto-B0lFRE-8.js → dto-BGrkIVqX.js} +4 -4
  66. package/dist/{duplicateCampaign-yfxkpFR9.js → duplicateCampaign-DBaFROXd.js} +2 -2
  67. package/dist/{effect-ChSeIPFy.js → effect-fonU-1xO.js} +1 -1
  68. package/dist/{email-addresses-D3D5ap8V.js → email-addresses-WeV5Gvxa.js} +2 -2
  69. package/dist/{export--pl6TkFY.js → export-DDXf8yf_.js} +3 -3
  70. package/dist/{helper-BtNVAL70.js → helper-DwnzJKxo.js} +1 -1
  71. package/dist/{index-bqzuFwsR.js → index-10x-WMiS.js} +3 -3
  72. package/dist/{index-C9YvAxHk.js → index-9Wt89ReU.js} +4 -4
  73. package/dist/{index-i6KMmKQV.js → index-Brh5FXQ7.js} +3 -3
  74. package/dist/{index-C91wJ0yQ.js → index-BxxNZQUc.js} +3 -3
  75. package/dist/{index-C2bDavys.js → index-CDAMmPIn.js} +1 -1
  76. package/dist/{index-Dvv2gStu.js → index-Cg1vzNzf.js} +6 -6
  77. package/dist/{index-BmeBuG6P.js → index-Cl7QnFc4.js} +1 -1
  78. package/dist/{index-CdIg8hjd.js → index-Cvw-xFek.js} +1 -1
  79. package/dist/{index-CMLOXQ4g.js → index-DCJ_r_e2.js} +1 -1
  80. package/dist/{index-Bu9_2AVy.js → index-DLG8B-TK.js} +1 -1
  81. package/dist/{index-1OZ3PLwm.js → index-DWhh_u0L.js} +1 -1
  82. package/dist/{index-Cev5thsu.js → index-DsQJTvKe.js} +2 -2
  83. package/dist/{index-Cimg1m66.js → index-oR7xhhIt.js} +1 -1
  84. package/dist/{index.esm2017-CtVba0vf.js → index.esm2017-CFvohTUs.js} +37 -37
  85. package/dist/{loading-DBnGqrch.js → loading-DiD8J1Jc.js} +1 -1
  86. package/dist/{lodash-aHDbnzzq.js → lodash-BJgKlNEt.js} +1 -1
  87. package/dist/{membership-BaW5t8WT.js → membership-C8HuK9_K.js} +3 -3
  88. package/dist/{money-uTdqDxLM.js → money-DXl1-c0l.js} +1 -1
  89. package/dist/{number-DPYoe2JP.js → number-C6RGu6qp.js} +1 -1
  90. package/dist/{objectid-D9pInJyL.js → objectid-8Boc1xMT.js} +5 -5
  91. package/dist/{plugins-BotBDOdp.js → plugins-CxBcRdUi.js} +3 -3
  92. package/dist/{reward-BiVf48o_.js → reward-CEh2CA9Z.js} +1 -1
  93. package/dist/{rule-cjq440uR.js → rule-DEfU8NOO.js} +3 -3
  94. package/dist/{rule-builder-CKTfK0hn.js → rule-builder-BZIx2IzX.js} +1 -1
  95. package/dist/style.css +1 -1
  96. package/dist/{template-DAZOYvjH.js → template-Ba8NxY41.js} +6 -6
  97. package/dist/{timezone-B0OrfTB6.js → timezone-DUqMvcwo.js} +2 -2
  98. package/dist/{trigger-D4XlN3B8.js → trigger-KQ-DPHv-.js} +5 -5
  99. package/dist/useMarketingMaterialActions-DSI7Fpu9.js +96 -0
  100. package/dist/{usePagination-Cv5uXVmk.js → usePagination-BeTADCIt.js} +1 -1
  101. package/dist/{user-Cn-Dendr.js → user-DN6_QE2j.js} +1 -1
  102. package/dist/{vue-i18n-CYIOaS68.js → vue-i18n-B4dOYJz4.js} +513 -513
  103. package/dist/{xlsx-BAdvKflt.js → xlsx-BDFTkXYe.js} +1 -1
  104. package/dist/{zod-BrwpVJua.js → zod-B8WJKIxe.js} +1 -1
  105. package/package.json +2 -2
  106. package/dist/Marketing-bI8LabJ1.js +0 -236
  107. package/dist/useMarketingMaterialActions-D-gmMt-_.js +0 -95
@@ -0,0 +1,236 @@
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-B4dOYJz4.js";
4
+ import { u as G, m as q } from "./useMarketingMaterialActions-DSI7Fpu9.js";
5
+ import { u as O } from "./remy-D_Deb3ue.js";
6
+ import { useRouter as z } from "vue-router";
7
+ import "./index-DWhh_u0L.js";
8
+ import { R as K } from "./app-BRrGcz9U.js";
9
+ const Z = /* @__PURE__ */ b({
10
+ __name: "GenerateMaterialButton",
11
+ setup(l) {
12
+ const { t: r } = M(), u = O();
13
+ function a() {
14
+ u.activate({
15
+ command: "generateMarketingMaterial",
16
+ fullscreen: !0,
17
+ forceNewConversation: !0
18
+ });
19
+ }
20
+ return (t, e) => {
21
+ const m = v("FmButton");
22
+ return s(), N(m, {
23
+ label: c(r)("connect.marketing.emptyState.action"),
24
+ "prepend-icon": "wand_stars",
25
+ onClick: a
26
+ }, null, 8, ["label"]);
27
+ };
28
+ }
29
+ }), J = /* @__PURE__ */ b({
30
+ __name: "MarketingMaterialItemActionButton",
31
+ props: {
32
+ material: {}
33
+ },
34
+ emits: ["update:menuOpened"],
35
+ setup(l, { emit: r }) {
36
+ const u = l, a = r, { t } = M(), e = f(!1);
37
+ R(e, (x) => {
38
+ a("update:menuOpened", x);
39
+ });
40
+ const { shareMaterial: m, downloadMaterialImage: _, copyMaterialLink: p } = G();
41
+ async function C() {
42
+ e.value = !1, await m(u.material);
43
+ }
44
+ async function A() {
45
+ e.value = !1, await _(u.material.imageUrl);
46
+ }
47
+ async function h() {
48
+ e.value = !1, await p(u.material.imageUrl);
49
+ }
50
+ return (x, o) => {
51
+ const k = v("FmButton"), y = v("FmMenuItem"), F = v("FmMenu");
52
+ return s(), d("div", null, [
53
+ i(F, {
54
+ placement: "right-start",
55
+ shift: !0,
56
+ "model-value": e.value,
57
+ onMenuChanged: o[0] || (o[0] = (g) => e.value = g)
58
+ }, {
59
+ "menu-button": S(() => [
60
+ i(k, {
61
+ icon: "more_vert",
62
+ variant: "tertiary",
63
+ size: "md"
64
+ })
65
+ ]),
66
+ default: S(() => [
67
+ i(y, {
68
+ icon: "share",
69
+ label: c(t)("connect.marketing.actions.share"),
70
+ onClick: C
71
+ }, null, 8, ["label"]),
72
+ i(y, {
73
+ icon: "download",
74
+ label: c(t)("connect.marketing.actions.download"),
75
+ onClick: A
76
+ }, null, 8, ["label"]),
77
+ i(y, {
78
+ icon: "content_copy",
79
+ label: c(t)("connect.marketing.actions.copyLink"),
80
+ onClick: h
81
+ }, null, 8, ["label"])
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__ */ b({
92
+ __name: "MarketingMaterialItem",
93
+ props: {
94
+ material: {}
95
+ },
96
+ setup(l) {
97
+ const { t: r } = M(), u = z(), a = f(!1);
98
+ return (t, e) => l.material ? (s(), d("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: e[2] || (e[2] = () => {
102
+ a.value || c(u).push({
103
+ name: c(K)["$connect-MARKETING_MATERIAL_EDIT"],
104
+ query: { id: l.material._id }
105
+ });
106
+ })
107
+ }, [
108
+ n("div", Q, [
109
+ n("img", {
110
+ src: l.material.imageUrl,
111
+ alt: c(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, w(l.material.headline), 1),
119
+ n("p", ne, w(l.material.caption), 1)
120
+ ]),
121
+ i(J, {
122
+ material: l.material,
123
+ "onUpdate:menuOpened": e[0] || (e[0] = (m) => a.value = m),
124
+ onClick: e[1] || (e[1] = T(() => {
125
+ }, ["stop"]))
126
+ }, null, 8, ["material"])
127
+ ])
128
+ ])
129
+ ])) : (s(), d("div", ae, [...e[3] || (e[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
+ }, 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 = {
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__ */ b({
140
+ __name: "Marketing",
141
+ setup(l) {
142
+ const { t: r } = M(), u = O(), a = f([]), t = f(!0), e = f(!0), m = f(null), _ = f(null);
143
+ let p = null;
144
+ const C = L(() => ({
145
+ label: r("connect.marketing.emptyState.action"),
146
+ value: "generate",
147
+ isPrimary: !0,
148
+ prependIcon: "wand_stars"
149
+ }));
150
+ function A(o) {
151
+ o === "generate" && u.activate({
152
+ command: "generateMarketingMaterial",
153
+ fullscreen: !0,
154
+ forceNewConversation: !0
155
+ });
156
+ }
157
+ async function h() {
158
+ const o = await q.listMarketingMaterials(
159
+ m.value,
160
+ E
161
+ );
162
+ a.value.push(...o.resources), m.value = o.meta.nextCursor, e.value = !!o.meta.nextCursor;
163
+ }
164
+ function x() {
165
+ p = new IntersectionObserver(
166
+ async ([o]) => {
167
+ if (!(!o.isIntersecting || !e.value || t.value)) {
168
+ t.value = !0;
169
+ try {
170
+ await h();
171
+ } catch {
172
+ } finally {
173
+ t.value = !1;
174
+ }
175
+ }
176
+ },
177
+ { rootMargin: "200px" }
178
+ ), _.value && p.observe(_.value);
179
+ }
180
+ return P(async () => {
181
+ try {
182
+ await h();
183
+ } catch {
184
+ } finally {
185
+ t.value = !1, await H(), x();
186
+ }
187
+ }), V(() => {
188
+ p == null || p.disconnect();
189
+ }), (o, k) => {
190
+ const y = v("FmPageHead"), F = v("FmCard");
191
+ return s(), d(I, null, [
192
+ i(y, {
193
+ title: c(r)("connect.marketing.title"),
194
+ actions: a.value.length > 0 ? [C.value] : [],
195
+ "onClick:action": A
196
+ }, null, 8, ["title", "actions"]),
197
+ !t.value && a.value.length === 0 ? (s(), d("div", oe, [
198
+ i(F, {
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: S(() => [
203
+ k[0] || (k[0] = n("img", {
204
+ src: D,
205
+ class: "w-[150px]"
206
+ }, null, -1)),
207
+ n("p", le, w(c(r)("connect.marketing.emptyState.title")), 1),
208
+ n("p", re, w(c(r)("connect.marketing.emptyState.description")), 1),
209
+ i(Z)
210
+ ]),
211
+ _: 1
212
+ })
213
+ ])) : (s(), d("div", se, [
214
+ n("div", ie, [
215
+ (s(!0), d(I, null, B(a.value, (g) => (s(), N($, {
216
+ key: g._id,
217
+ material: g
218
+ }, null, 8, ["material"]))), 128)),
219
+ t.value ? (s(), d(I, { key: 0 }, B(E, (g) => i($, {
220
+ key: `skeleton-${g}`,
221
+ material: null
222
+ })), 64)) : j("", !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
+ };