@feedmepos/mf-connect 0.1.48-prod → 0.1.50-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 (96) hide show
  1. package/dist/{Analytic-DrjBaKmx.js → Analytic-DetQY5GC.js} +11 -11
  2. package/dist/{App-eIaytGsZ.js → App-BKAkMGZw.js} +7 -7
  3. package/dist/{Bin-CVp0eFwl.js → Bin-DqWL1Uxx.js} +8 -8
  4. package/dist/Broadcast-8QF-MUmN.js +233 -0
  5. package/dist/{CampaignTypeDialog.vue_vue_type_script_setup_true_lang-CugJWeBo.js → CampaignTypeDialog.vue_vue_type_script_setup_true_lang-D7hZS2PW.js} +6 -6
  6. package/dist/{Card-DkP6oJVn.js → Card-sor9JviQ.js} +16 -16
  7. package/dist/{Collections-DYb_aeTW.js → Collections-C0Db6mEj.js} +7 -7
  8. package/dist/Credit-rEapztLw.js +228 -0
  9. package/dist/{EditCampaignSheet.vue_vue_type_script_setup_true_lang-Dt9c2kvf.js → EditCampaignSheet.vue_vue_type_script_setup_true_lang-BmBKIEVi.js} +30 -30
  10. package/dist/{EffectSheet.vue_vue_type_style_index_0_lang-DT3y4k1C.js → EffectSheet.vue_vue_type_style_index_0_lang-CurNXC5g.js} +6 -6
  11. package/dist/Experience--KRaE_Li.js +229 -0
  12. package/dist/FilterChip.vue_vue_type_script_setup_true_lang-DaU-9GzO.js +129 -0
  13. package/dist/{Game-C7jxRESY.js → Game-DAkkgwzf.js} +103 -97
  14. package/dist/{Index-DYr1p4sh.js → Index-DU5r6mjQ.js} +10 -10
  15. package/dist/{Marketing-Djl27fez.js → Marketing-Ct5vKaig.js} +6 -6
  16. package/dist/{Member-CWXedfTG.js → Member-Dc4-BH4L.js} +10 -10
  17. package/dist/{MemberList-C2TvGi22.js → MemberList-CxwklJTB.js} +25 -25
  18. package/dist/{MemberTransactions-BSUocGg9.js → MemberTransactions-CwzDZAl2.js} +1 -1
  19. package/dist/{MessageInput.vue_vue_type_script_setup_true_lang-D8xPA6jM.js → MessageInput.vue_vue_type_script_setup_true_lang-CPQt4nvp.js} +7 -7
  20. package/dist/{Mission-BVx9Cqi5.js → Mission-Bn1aqRYm.js} +112 -106
  21. package/dist/{Overview-DyXF9zfB.js → Overview-Dx-7fuPI.js} +18 -18
  22. package/dist/Point-sitkRn9W.js +232 -0
  23. package/dist/{Promotion-B0Q6GItP.js → Promotion-Gfnd0zqz.js} +11 -11
  24. package/dist/{Queue-BAWG1Hh-.js → Queue-r2m3kpfO.js} +11 -11
  25. package/dist/{Record-CTp80g4A.js → Record-C2lwWPrY.js} +8 -8
  26. package/dist/{Reward-_Jow1lJ7.js → Reward-6_bESA4r.js} +15 -15
  27. package/dist/{RewardGroup.vue_vue_type_script_setup_true_lang-BV8xCejA.js → RewardGroup.vue_vue_type_script_setup_true_lang-S_jJxZYB.js} +11 -11
  28. package/dist/{RuleGroup.vue_vue_type_script_setup_true_lang-DkDAuGY0.js → RuleGroup.vue_vue_type_script_setup_true_lang-dK8IcQjI.js} +13 -13
  29. package/dist/{Segment-CsdJ1SjK.js → Segment-CIKgedqx.js} +22 -22
  30. package/dist/{SelectItems.vue_vue_type_script_setup_true_lang-DH3oIm2t.js → SelectItems.vue_vue_type_script_setup_true_lang-Co6QzIYj.js} +2 -2
  31. package/dist/{SendCollectionSheet.vue_vue_type_script_setup_true_lang-DvVrjpxR.js → SendCollectionSheet.vue_vue_type_script_setup_true_lang-y2UFm_m_.js} +11 -11
  32. package/dist/{SendVoucherSheet.vue_vue_type_script_setup_true_lang-D5gV89Xk.js → SendVoucherSheet.vue_vue_type_script_setup_true_lang-DZDWIry7.js} +3 -3
  33. package/dist/{Setting-BZRA50LO.js → Setting-k_xmt5bE.js} +11 -11
  34. package/dist/{Store-CFnCN_7-.js → Store-Ag9cJqq5.js} +19 -19
  35. package/dist/{StoreRewards-B_McpBz-.js → StoreRewards-RO9OsV_l.js} +13 -13
  36. package/dist/{StoreTransactions.vue_vue_type_script_setup_true_lang-vL0vr-Xn.js → StoreTransactions.vue_vue_type_script_setup_true_lang-BmBZgPtR.js} +20 -20
  37. package/dist/{TargetLocationInput.vue_vue_type_script_setup_true_lang-C1ZlLdme.js → TargetLocationInput.vue_vue_type_script_setup_true_lang-BNtW7Fdv.js} +1 -1
  38. package/dist/{Tier-CCYFu6kJ.js → Tier-Cm-xmOeT.js} +20 -20
  39. package/dist/{Title-7Mg-Ml4z.js → Title-IRrmK7t7.js} +19 -19
  40. package/dist/{Transaction-BqZrbpZi.js → Transaction-BaGLhfdx.js} +2 -2
  41. package/dist/{UserRuleGroup.vue_vue_type_script_setup_true_lang-C6ZwPUD4.js → UserRuleGroup.vue_vue_type_script_setup_true_lang-BP1HZcmM.js} +6 -6
  42. package/dist/{Voucher-Yty_7SuS.js → Voucher-BvH508SF.js} +14 -14
  43. package/dist/{VoucherEditor.vue_vue_type_script_setup_true_lang-Bt12t3gB.js → VoucherEditor.vue_vue_type_script_setup_true_lang-BRbpOzoW.js} +10 -10
  44. package/dist/{ZodTextField.vue_vue_type_script_setup_true_lang-C3NHrEIl.js → ZodTextField.vue_vue_type_script_setup_true_lang-BO13CzIt.js} +1 -1
  45. package/dist/{app-2EJP4psh.js → app-CoIOKtZT.js} +30 -30
  46. package/dist/{app-Dzon--6x.js → app-DInntAeW.js} +1 -1
  47. package/dist/app.js +1 -1
  48. package/dist/{business-BehG4fR2.js → business-CEezohK9.js} +11 -8
  49. package/dist/{campaign-CAcP56Sz.js → campaign-BiJIXVFh.js} +2 -2
  50. package/dist/{campaign-BpaiTG4f.js → campaign-DN4wRHB1.js} +9 -9
  51. package/dist/{campaign.enum-BWjI8Hop.js → campaign.enum-B1ofvKe0.js} +1 -1
  52. package/dist/{campaign.fn-PVdB1-V1.js → campaign.fn-CHOnx0h3.js} +33 -33
  53. package/dist/{collectible.enum-BYmuqayi.js → collectible.enum-DCJQ4kRG.js} +1 -1
  54. package/dist/{collection.fn-CbH8hbWW.js → collection.fn-DDUQOBpT.js} +2 -2
  55. package/dist/{dto-Dd3Oc4QO.js → dto-PJfDH2ob.js} +4 -4
  56. package/dist/{effect-DvEQNEl0.js → effect-BG3qfaJa.js} +1 -1
  57. package/dist/{email-addresses-C-9JrAi8.js → email-addresses-_qAqETU4.js} +1 -1
  58. package/dist/{export-RWE9Cn-d.js → export-BkXHJNqp.js} +3 -3
  59. package/dist/{helper-Bl6LdWED.js → helper-DURbnPWw.js} +1 -1
  60. package/dist/{index-BCQMVr1J.js → index-0vL_6ITj.js} +1 -1
  61. package/dist/{index-wOExBjGo.js → index-B-sSLyBV.js} +1 -1
  62. package/dist/{index-DX1X6Owa.js → index-BAmB5yiT.js} +1 -1
  63. package/dist/{index-G_XSbrXB.js → index-BZ64wqfO.js} +4 -4
  64. package/dist/{index-Bgnrbk5x.js → index-BnIQoKWu.js} +1 -1
  65. package/dist/{index-CFW9ogow.js → index-DO21OBbC.js} +1 -1
  66. package/dist/{index-DhUvELhc.js → index-DX-ycdBx.js} +3 -3
  67. package/dist/{index-VVy4GPzJ.js → index-D_UkMUVu.js} +1 -1
  68. package/dist/{index-DpoNuVc-.js → index-DyqlTP2f.js} +6 -6
  69. package/dist/{index-CfgczUMX.js → index-KuVAb425.js} +2 -2
  70. package/dist/{index-1bU9cLqV.js → index-cdBSUDQZ.js} +1 -1
  71. package/dist/{index-CzCqc7ph.js → index-ckRnO0P8.js} +1 -1
  72. package/dist/{index-DZN5WWgq.js → index-iqGVdsb3.js} +3 -3
  73. package/dist/{index-Bjf5Z2QE.js → index-wBtnVW6-.js} +4 -4
  74. package/dist/{index.esm2017-DfgZFSqe.js → index.esm2017-xsA1Ke9N.js} +40 -40
  75. package/dist/{loading-qlqqYGF3.js → loading-JUECGK_w.js} +1 -1
  76. package/dist/{membership-Bh_1iu5v.js → membership-3dOL9I-2.js} +3 -3
  77. package/dist/{money-DvTB_Fek.js → money-Bj8WRBgr.js} +1 -1
  78. package/dist/{number-DJQ3gi1P.js → number-C3eoGwAF.js} +1 -1
  79. package/dist/objectid-BbM7wSa-.js +145 -0
  80. package/dist/{plugins-DJpBrPbQ.js → plugins-CihdO0FL.js} +2 -2
  81. package/dist/{reward-DZ4KlN9B.js → reward-B7voCFtP.js} +1 -1
  82. package/dist/{rule-DV0yCGlq.js → rule-CRac4es-.js} +3 -3
  83. package/dist/{rule-builder-D6ihVPNO.js → rule-builder-PIKcs0df.js} +1 -1
  84. package/dist/{template-ElP-JIFL.js → template-DkXoHjc6.js} +4 -4
  85. package/dist/{timezone-FaHjut_D.js → timezone-gOOWBZ0e.js} +1 -1
  86. package/dist/{trigger-D8wnJVTA.js → trigger-ByWt9UsS.js} +4 -4
  87. package/dist/{user-NWV9KppR.js → user-HwAeHnO-.js} +1 -1
  88. package/dist/{vue-i18n-CkbS-IDD.js → vue-i18n-BlWI3iG4.js} +247 -247
  89. package/dist/{xlsx-CdQE5RZi.js → xlsx-Cdgu-2pL.js} +1 -1
  90. package/package.json +1 -1
  91. package/dist/Broadcast-DBgBT6yz.js +0 -227
  92. package/dist/Credit-WVv_PL5D.js +0 -222
  93. package/dist/Experience-BdH44wBG.js +0 -223
  94. package/dist/FilterChip.vue_vue_type_script_setup_true_lang-d8rh38tD.js +0 -114
  95. package/dist/Point-ovkgTwZO.js +0 -226
  96. package/dist/objectid-BKU0cEuv.js +0 -145
@@ -1,22 +1,22 @@
1
1
  import { defineComponent as j, ref as y, watch as X, onMounted as I, resolveComponent as x, openBlock as d, createBlock as A, withCtx as L, createVNode as h, unref as t, createElementVNode as i, createElementBlock as k, Fragment as $, renderList as D, computed as G, toDisplayString as O, isRef as T, createSlots as Y, createCommentVNode as V, createTextVNode as ee, reactive as te, onBeforeMount as ae } from "vue";
2
2
  import { _ as le } from "./campaign-CpzFl8Vr.js";
3
- import "./index-G_XSbrXB.js";
4
- import "./campaign-BpaiTG4f.js";
3
+ import "./index-BZ64wqfO.js";
4
+ import "./campaign-DN4wRHB1.js";
5
5
  import { useRouter as ne } from "vue-router";
6
- import { c as R } from "./index-BCQMVr1J.js";
7
- import { _ as oe } from "./ZodTextField.vue_vue_type_script_setup_true_lang-C3NHrEIl.js";
6
+ import { c as R } from "./index-0vL_6ITj.js";
7
+ import { _ as oe } from "./ZodTextField.vue_vue_type_script_setup_true_lang-BO13CzIt.js";
8
8
  import { Z as se } from "./zod-Bg2FbC-D.js";
9
- import { F as re } from "./dto-Dd3Oc4QO.js";
9
+ import { F as re } from "./dto-PJfDH2ob.js";
10
10
  import { J as ie } from "./JsonViewer-v8_C7l5N.js";
11
- import "./index-DhUvELhc.js";
11
+ import "./index-DX-ycdBx.js";
12
12
  import { useSnackbar as ue } from "@feedmepos/ui-library";
13
13
  import { u as ce } from "./app-wDQR6dpb.js";
14
- import { u as me } from "./loading-qlqqYGF3.js";
15
- import { C as de } from "./campaign.fn-PVdB1-V1.js";
14
+ import { u as me } from "./loading-JUECGK_w.js";
15
+ import { C as de } from "./campaign.fn-CHOnx0h3.js";
16
16
  import { g as pe } from "./object-qECH92oz.js";
17
- import { u as ve } from "./campaign-CAcP56Sz.js";
18
- import { u as fe } from "./membership-Bh_1iu5v.js";
19
- import { u as ye } from "./vue-i18n-CkbS-IDD.js";
17
+ import { u as ve } from "./campaign-BiJIXVFh.js";
18
+ import { u as fe } from "./membership-3dOL9I-2.js";
19
+ import { u as ye } from "./vue-i18n-BlWI3iG4.js";
20
20
  const ge = { class: "ml-32 flex flex-col" }, _e = /* @__PURE__ */ j({
21
21
  __name: "CampaignCard",
22
22
  props: {
@@ -2,16 +2,16 @@ import { defineComponent as ht, ref as te, h as G, computed as Ee, watch as ft,
2
2
  import { useRouter as sn, useRoute as mt, RouterView as on } from "vue-router";
3
3
  import { useCoreStore as be, FeedMeAuth as an } from "@feedmepos/mf-common";
4
4
  import { u as cn } from "./app-wDQR6dpb.js";
5
- import { u as ln } from "./business-BehG4fR2.js";
6
- import "./index-1bU9cLqV.js";
5
+ import { u as ln } from "./business-CEezohK9.js";
6
+ import "./index-cdBSUDQZ.js";
7
7
  import { components as z, useSnackbar as un, useDialog as dn } from "@feedmepos/ui-library";
8
- import { u as hn } from "./vue-i18n-CkbS-IDD.js";
9
- import { C as Ge, m as fn } from "./timezone-FaHjut_D.js";
10
- import { R as f } from "./app-2EJP4psh.js";
8
+ import { u as hn } from "./vue-i18n-BlWI3iG4.js";
9
+ import { C as Ge, m as fn } from "./timezone-gOOWBZ0e.js";
10
+ import { R as f } from "./app-CoIOKtZT.js";
11
11
  import { J as pn } from "./JsonViewer-v8_C7l5N.js";
12
- import { r as Se, L as mn, g as gt, i as gn, a as _n, _ as ze, C as qe, b as vn, S as J, c as E, d as W, E as Ce, e as In, f as _t, h as Tn, j as yn, k as vt, l as _, m as wn, F as Oe, n as En, q as Y, o as kn, p as bn, s as Sn, t as Rn, u as Pn } from "./index.esm2017-DfgZFSqe.js";
12
+ import { r as Se, L as mn, g as gt, i as gn, a as _n, _ as ze, C as qe, b as vn, S as J, c as E, d as W, E as Ce, e as In, f as _t, h as Tn, j as yn, k as vt, l as _, m as wn, F as Oe, n as En, q as Y, o as kn, p as bn, s as Sn, t as Rn, u as Pn } from "./index.esm2017-xsA1Ke9N.js";
13
13
  import { _ as Ne } from "./tslib.es6-BCqqvLQ_.js";
14
- import { S as Ke, c as An } from "./index-G_XSbrXB.js";
14
+ import { S as Ke, c as An } from "./index-BZ64wqfO.js";
15
15
  const Cn = { class: "flex flex-col h-full justify-between py-16" }, On = { class: "fm-typo-en-body-sm-400 text-fm-color-typo-secondary text-center" }, Nn = /* @__PURE__ */ ht({
16
16
  __name: "NavigationTab",
17
17
  setup(n) {
@@ -1,15 +1,15 @@
1
1
  import { defineComponent as C, ref as c, h as s, onMounted as x, resolveComponent as d, openBlock as S, createElementBlock as B, Fragment as M, createVNode as l, unref as o, createElementVNode as u } from "vue";
2
2
  import { components as p } from "@feedmepos/ui-library";
3
- import { u as K } from "./loading-qlqqYGF3.js";
4
- import { u as R } from "./business-BehG4fR2.js";
5
- import { C as A } from "./campaign-BpaiTG4f.js";
6
- import { _ as P } from "./EditCampaignSheet.vue_vue_type_script_setup_true_lang-Dt9c2kvf.js";
3
+ import { u as K } from "./loading-JUECGK_w.js";
4
+ import { u as R } from "./business-CEezohK9.js";
5
+ import { C as A } from "./campaign-DN4wRHB1.js";
6
+ import { _ as P } from "./EditCampaignSheet.vue_vue_type_script_setup_true_lang-BmBKIEVi.js";
7
7
  import { _ as U } from "./ChipMenu.vue_vue_type_script_setup_true_lang-BPpZZNkr.js";
8
- import { _ as Y } from "./SendVoucherSheet.vue_vue_type_script_setup_true_lang-D5gV89Xk.js";
9
- import { u as D } from "./vue-i18n-CkbS-IDD.js";
8
+ import { _ as Y } from "./SendVoucherSheet.vue_vue_type_script_setup_true_lang-DZDWIry7.js";
9
+ import { u as D } from "./vue-i18n-BlWI3iG4.js";
10
10
  import { h as E } from "./moment-D7p2TMB-.js";
11
- import { p as I } from "./plugins-DJpBrPbQ.js";
12
- import { c as g } from "./index-BCQMVr1J.js";
11
+ import { p as I } from "./plugins-CihdO0FL.js";
12
+ import { c as g } from "./index-0vL_6ITj.js";
13
13
  const T = { class: "px-24 flex flex-col gap-y-16" }, $ = { class: "flex items-center justify-between w-full" }, j = { class: "flex gap-8 overflow-x-auto" }, oe = /* @__PURE__ */ C({
14
14
  __name: "Bin",
15
15
  setup(H) {
@@ -0,0 +1,233 @@
1
+ import { defineComponent as U, ref as h, computed as j, onMounted as E, resolveComponent as m, openBlock as d, createElementBlock as y, Fragment as b, createVNode as r, unref as o, createElementVNode as n, withCtx as w, renderList as H, createBlock as v, resolveDynamicComponent as q, toDisplayString as p, createCommentVNode as z, h as G } from "vue";
2
+ import { _ as J } from "./campaign-CpzFl8Vr.js";
3
+ import { useDialog as Q, components as W } from "@feedmepos/ui-library";
4
+ import { p as X } from "./plugins-CihdO0FL.js";
5
+ import { u as Y } from "./loading-JUECGK_w.js";
6
+ import { u as Z } from "./business-CEezohK9.js";
7
+ import { u as ee } from "./campaign-BiJIXVFh.js";
8
+ import { a as B, b as A, g as te } from "./campaign-DN4wRHB1.js";
9
+ import { u as oe } from "./vue-i18n-BlWI3iG4.js";
10
+ import { _ as ae } from "./FilterChip.vue_vue_type_script_setup_true_lang-DaU-9GzO.js";
11
+ import { _ as ne } from "./EditCampaignSheet.vue_vue_type_script_setup_true_lang-BmBKIEVi.js";
12
+ import { u as se } from "./template-DkXoHjc6.js";
13
+ import { c as _ } from "./index-0vL_6ITj.js";
14
+ const ce = { class: "px-24 flex flex-col gap-y-16" }, re = { class: "flex items-center justify-between w-full" }, ie = { class: "flex gap-8 overflow-x-auto" }, le = { 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" }, ue = { class: "space-y-4" }, pe = { class: "fm-typo-en-body-lg-600" }, fe = { class: "fm-typo-en-body-md-400 text-fm-color-typo-secondary" }, ge = { key: 0 }, ye = { class: "text-fm-color-typo-secondary fm-typo-en-body-md-600" }, _e = { class: "flex flex-col gap-16 text-center" }, he = { class: "fm-typo-en-title-sm-800" }, be = { class: "fm-typo-en-body-md-400 text-fm-color-typo-secondary" }, Ke = /* @__PURE__ */ U({
15
+ __name: "Broadcast",
16
+ setup(we) {
17
+ const { t: s } = oe(), L = {
18
+ label: s("connect.campaign.common.createCampaign"),
19
+ value: "create",
20
+ isPrimary: !0,
21
+ prependIcon: "add"
22
+ }, V = se("BROADCAST", Q()), D = Z(), u = ee(), { global: R, minor: C } = Y, T = h((/* @__PURE__ */ new Date()).toISOString()), c = h({
23
+ searchKey: "",
24
+ location: []
25
+ });
26
+ function K(e) {
27
+ const t = c.value.location;
28
+ return !t || t.length === 0 || !e.targetLocation ? !0 : Array.isArray(t) ? t.some((l) => {
29
+ var i;
30
+ return (i = e == null ? void 0 : e.targetLocation) == null ? void 0 : i.includes(l);
31
+ }) : e.targetLocation.includes(t);
32
+ }
33
+ const f = j(
34
+ () => u.campaigns.broadcast.filter((e) => K(e))
35
+ ), O = [
36
+ {
37
+ header: "Broadcast title",
38
+ accessorFn: (e) => e.name
39
+ },
40
+ {
41
+ header: "Status",
42
+ accessorFn: (e) => te(e),
43
+ cell(e) {
44
+ return B(e.row.original);
45
+ }
46
+ },
47
+ {
48
+ header: "Summary",
49
+ accessorFn: (e) => A(e)
50
+ },
51
+ {
52
+ header: "Message sent",
53
+ accessorFn: (e) => e.currentReceive ?? "N/A"
54
+ },
55
+ {
56
+ header: "Actions",
57
+ cell(e) {
58
+ return G(W.FmButton, {
59
+ variant: "tertiary",
60
+ icon: "delete",
61
+ iconColor: "neutral-gray-400",
62
+ onClick: (t) => {
63
+ t.stopPropagation(), S(e.row.original);
64
+ }
65
+ });
66
+ }
67
+ }
68
+ ], x = h();
69
+ async function S(e) {
70
+ await X.remove(
71
+ s("connect.campaign.common.remove.confirm", { name: e.name })
72
+ ) && await C(
73
+ async () => {
74
+ await _.delete(e._id), await u.read("BROADCAST");
75
+ },
76
+ {
77
+ message: s("connect.campaign.common.remove.removing", { name: e.name }),
78
+ successMessage: s("connect.campaign.common.remove.removed", {
79
+ name: e.name
80
+ })
81
+ }
82
+ );
83
+ }
84
+ async function g(e) {
85
+ T.value = (/* @__PURE__ */ new Date()).toISOString(), e ? await t() : V.open(async (l) => {
86
+ await t(l);
87
+ });
88
+ async function t(l) {
89
+ var i;
90
+ (i = x.value) == null || i.showSheet(
91
+ !0,
92
+ "BROADCAST",
93
+ e ? await _.readById(e._id) : void 0,
94
+ l
95
+ );
96
+ }
97
+ }
98
+ async function I(e) {
99
+ await C(
100
+ async () => {
101
+ e.campaign._id ? await _.update(e.campaign._id, e) : await _.create(e), await u.read("BROADCAST");
102
+ },
103
+ {
104
+ message: s(
105
+ `connect.campaign.broadcast.update.${e.campaign._id ? "updating" : "creating"}`
106
+ ),
107
+ successMessage: s("connect.campaign.broadcast.update.success", {
108
+ action: e.campaign._id ? "updated" : "created"
109
+ })
110
+ }
111
+ );
112
+ }
113
+ return E(async () => {
114
+ await R(async () => {
115
+ await u.read("BROADCAST");
116
+ });
117
+ }), (e, t) => {
118
+ const l = m("FmPageHead"), i = m("FmSearch"), $ = m("FmTable"), F = m("FmButton"), P = m("FmListItem"), M = m("FmList"), N = m("FmCard");
119
+ return d(), y(b, null, [
120
+ r(l, {
121
+ title: o(s)("connect.campaign.broadcast.title"),
122
+ actions: o(f).length > 0 ? [L] : [],
123
+ "onClick:action": t[0] || (t[0] = () => g())
124
+ }, null, 8, ["title", "actions"]),
125
+ n("div", ce, [
126
+ r(i, {
127
+ modelValue: o(c).searchKey,
128
+ "onUpdate:modelValue": t[1] || (t[1] = (a) => o(c).searchKey = a),
129
+ class: "hidden xs:block border-b-2 border-fm-color-neutral-gray-100",
130
+ placeholder: o(s)("connect.campaign.common.search"),
131
+ collapsible: ""
132
+ }, null, 8, ["modelValue", "placeholder"]),
133
+ o(u).campaigns.broadcast && o(u).campaigns.broadcast.length > 0 ? (d(), y(b, { key: 0 }, [
134
+ n("div", re, [
135
+ n("div", ie, [
136
+ r(ae, {
137
+ label: `${o(s)("connect.campaign.common.location")}: `,
138
+ "right-icon": "keyboard_arrow_down",
139
+ modelValue: o(c).location,
140
+ "onUpdate:modelValue": t[2] || (t[2] = (a) => o(c).location = a),
141
+ icon: "storefront",
142
+ "show-item-label": !0,
143
+ items: o(D).locationOptions
144
+ }, null, 8, ["label", "modelValue", "items"])
145
+ ]),
146
+ r(i, {
147
+ modelValue: o(c).searchKey,
148
+ "onUpdate:modelValue": t[3] || (t[3] = (a) => o(c).searchKey = a),
149
+ class: "xs:hidden",
150
+ placeholder: "search",
151
+ collapsible: ""
152
+ }, null, 8, ["modelValue"])
153
+ ]),
154
+ r($, {
155
+ class: "xs:hidden",
156
+ "row-data": o(f),
157
+ "column-defs": O,
158
+ "search-value": o(c).searchKey,
159
+ "column-filter": [],
160
+ onRowClick: t[4] || (t[4] = (a) => g(a.original)),
161
+ "hide-footer": !0
162
+ }, null, 8, ["row-data", "search-value"]),
163
+ r(M, { class: "hidden xs:flex flex-col mx-[-24px]" }, {
164
+ default: w(() => [
165
+ (d(!0), y(b, null, H(o(f).filter(
166
+ (a) => a.name.toLowerCase().includes(o(c).searchKey.toLowerCase())
167
+ ), (a) => (d(), v(P, {
168
+ key: a._id.toString(),
169
+ onClick: (k) => g(a),
170
+ class: "py-12 px-16 flex items-center justify-between border-b border-fm-color-neutral-gray-100"
171
+ }, {
172
+ default: w(() => [
173
+ n("div", le, [
174
+ n("div", me, [
175
+ (d(), v(q(o(B)(a)))),
176
+ n("div", de, p(a.currentReceive ?? 0) + " sent ", 1)
177
+ ]),
178
+ n("div", ue, [
179
+ n("div", pe, p(a.name), 1),
180
+ n("div", fe, p(o(A)(a)), 1)
181
+ ])
182
+ ]),
183
+ r(F, {
184
+ icon: "delete",
185
+ "icon-color": "neutral-gray-400",
186
+ variant: "tertiary",
187
+ onClick: (k) => (k.stopPropagation(), S(a))
188
+ }, null, 8, ["onClick"])
189
+ ]),
190
+ _: 2
191
+ }, 1032, ["onClick"]))), 128))
192
+ ]),
193
+ _: 1
194
+ }),
195
+ o(f).length == 0 ? (d(), y("div", ge, [
196
+ n("div", ye, p(o(s)("connect.campaign.common.noResults")), 1)
197
+ ])) : z("", !0)
198
+ ], 64)) : (d(), v(N, {
199
+ key: 1,
200
+ variant: "outlined",
201
+ class: "w-full flex flex-col items-center justify-center gap-y-24 p-24"
202
+ }, {
203
+ default: w(() => [
204
+ t[6] || (t[6] = n("img", {
205
+ src: J,
206
+ class: "aspect-square w-[150px]"
207
+ }, null, -1)),
208
+ n("div", _e, [
209
+ n("div", he, p(o(s)("connect.campaign.broadcast.create.title")), 1),
210
+ n("div", be, p(o(s)("connect.campaign.broadcast.create.description")), 1)
211
+ ]),
212
+ r(F, {
213
+ variant: "primary",
214
+ label: o(s)("connect.campaign.broadcast.create.button"),
215
+ icon: "add",
216
+ onClick: t[5] || (t[5] = (a) => g())
217
+ }, null, 8, ["label"])
218
+ ]),
219
+ _: 1
220
+ })),
221
+ r(ne, {
222
+ ref_key: "sheetRef",
223
+ ref: x,
224
+ "onSubmit:modelValue": I
225
+ }, null, 512)
226
+ ])
227
+ ], 64);
228
+ };
229
+ }
230
+ });
231
+ export {
232
+ Ke as default
233
+ };
@@ -1,11 +1,11 @@
1
- import { R as RuleOperator, _ } from "./index-CfgczUMX.js";
2
- import { i as isRuleGroup } from "./rule-builder-D6ihVPNO.js";
1
+ import { R as RuleOperator, _ } from "./index-KuVAb425.js";
2
+ import { i as isRuleGroup } from "./rule-builder-PIKcs0df.js";
3
3
  import { defineComponent, resolveComponent, openBlock, createBlock, withCtx, createElementVNode, createElementBlock, Fragment, renderList, createVNode, toDisplayString } from "vue";
4
4
  import { useDialog } from "@feedmepos/ui-library";
5
- import { a as F_RUNNABLE_CAMPAIGN_TYPE } from "./index-Bjf5Z2QE.js";
6
- import "./index-DpoNuVc-.js";
7
- import "./index-CFW9ogow.js";
8
- import "./index-DZN5WWgq.js";
5
+ import { a as F_RUNNABLE_CAMPAIGN_TYPE } from "./index-wBtnVW6-.js";
6
+ import "./index-DyqlTP2f.js";
7
+ import "./index-DO21OBbC.js";
8
+ import "./index-iqGVdsb3.js";
9
9
  function validateRule(data, r, date) {
10
10
  const rules = new RuleOperator(date ?? /* @__PURE__ */ new Date());
11
11
  function meetConditions(e) {
@@ -2,28 +2,28 @@ import { defineComponent as Z, ref as y, computed as E, watch as ne, onMounted a
2
2
  import { _ as ve } from "./campaign-CpzFl8Vr.js";
3
3
  import { h as oe } from "./moment-D7p2TMB-.js";
4
4
  import { useDialog as ye, components as se } from "@feedmepos/ui-library";
5
- import "./index-DhUvELhc.js";
6
- import { u as J } from "./loading-qlqqYGF3.js";
5
+ import "./index-DX-ycdBx.js";
6
+ import { u as J } from "./loading-JUECGK_w.js";
7
7
  import { u as ce } from "./app-wDQR6dpb.js";
8
- import { u as W } from "./membership-Bh_1iu5v.js";
8
+ import { u as W } from "./membership-3dOL9I-2.js";
9
9
  import { _ as Q } from "./CustomSelect.vue_vue_type_script_setup_true_lang-DLnvDVgf.js";
10
- import { p as pe, f as ie, n as xe } from "./plugins-DJpBrPbQ.js";
11
- import { m as L } from "./index-DX1X6Owa.js";
12
- import { z as re } from "./app-2EJP4psh.js";
10
+ import { p as pe, f as ie, n as xe } from "./plugins-CihdO0FL.js";
11
+ import { m as L } from "./index-BAmB5yiT.js";
12
+ import { z as re } from "./app-CoIOKtZT.js";
13
13
  import { Z as de } from "./zod-Bg2FbC-D.js";
14
14
  import { _ as ue } from "./ImageInput.vue_vue_type_script_setup_true_lang-D1KQpDGg.js";
15
- import { k as Ce } from "./index-Bjf5Z2QE.js";
16
- import "./index-CfgczUMX.js";
17
- import "./index-DpoNuVc-.js";
18
- import "./index-CFW9ogow.js";
19
- import "./index-DZN5WWgq.js";
20
- import { O as Se } from "./objectid-BKU0cEuv.js";
15
+ import { k as Ce } from "./index-wBtnVW6-.js";
16
+ import "./index-KuVAb425.js";
17
+ import "./index-DyqlTP2f.js";
18
+ import "./index-DO21OBbC.js";
19
+ import "./index-iqGVdsb3.js";
20
+ import { O as Se } from "./objectid-BbM7wSa-.js";
21
21
  import { a as he, c as _e } from "./object-qECH92oz.js";
22
- import { u as we } from "./business-BehG4fR2.js";
23
- import { w as ke } from "./xlsx-CdQE5RZi.js";
24
- import { a as Fe, C as Ve } from "./export-RWE9Cn-d.js";
22
+ import { u as we } from "./business-CEezohK9.js";
23
+ import { w as ke } from "./xlsx-Cdgu-2pL.js";
24
+ import { a as Fe, C as Ve } from "./export-BkXHJNqp.js";
25
25
  import { u as $e, _ as Me } from "./usePagination-Ds-cuHop.js";
26
- import { u as Be } from "./vue-i18n-CkbS-IDD.js";
26
+ import { u as Be } from "./vue-i18n-BlWI3iG4.js";
27
27
  import { o as Ue } from "./objectId-dwaoBfJX.js";
28
28
  const Ae = { class: "space-y-16" }, De = { class: "gap-16 grid grid-cols-2" }, Ie = { class: "space-y-16" }, Ne = {
29
29
  key: 0,
@@ -4,18 +4,18 @@ var K = (g, i, d) => ae(g, typeof i != "symbol" ? i + "" : i, d);
4
4
  import { defineComponent as H, ref as f, computed as J, watch as T, resolveComponent as u, openBlock as x, createBlock as z, unref as o, isRef as j, withCtx as I, createElementVNode as h, createVNode as r, createElementBlock as R, Fragment as N, renderList as le, createCommentVNode as U, onMounted as ne, h as Y } from "vue";
5
5
  import { h as G } from "./moment-D7p2TMB-.js";
6
6
  import { components as se } from "@feedmepos/ui-library";
7
- import "./index-DhUvELhc.js";
7
+ import "./index-DX-ycdBx.js";
8
8
  import { J as re } from "./JsonViewer-v8_C7l5N.js";
9
- import { u as Q } from "./loading-qlqqYGF3.js";
9
+ import { u as Q } from "./loading-JUECGK_w.js";
10
10
  import { u as ie } from "./app-wDQR6dpb.js";
11
11
  import { useRoute as W, useRouter as ue } from "vue-router";
12
- import { c as P } from "./index-BCQMVr1J.js";
12
+ import { c as P } from "./index-0vL_6ITj.js";
13
13
  import { e as p } from "./index-vh86FiIQ.js";
14
- import { u as $, w as de } from "./xlsx-CdQE5RZi.js";
15
- import { g as ce } from "./user-NWV9KppR.js";
14
+ import { u as $, w as de } from "./xlsx-Cdgu-2pL.js";
15
+ import { g as ce } from "./user-HwAeHnO-.js";
16
16
  import { u as me, _ as pe } from "./usePagination-Ds-cuHop.js";
17
- import { a as fe } from "./plugins-DJpBrPbQ.js";
18
- import { m as ge } from "./index-DX1X6Owa.js";
17
+ import { a as fe } from "./plugins-CihdO0FL.js";
18
+ import { m as ge } from "./index-BAmB5yiT.js";
19
19
  import { o as Ce } from "./objectId-dwaoBfJX.js";
20
20
  const be = { class: "space-y-16" }, ve = { class: "gap-16 grid grid-cols-2" }, he = { class: "flex items-center gap-8" }, ye = /* @__PURE__ */ H({
21
21
  __name: "CreateCollectionSheet",
@@ -0,0 +1,228 @@
1
+ import { defineComponent as N, ref as L, computed as j, h as M, onMounted as H, resolveComponent as m, openBlock as d, createElementBlock as y, Fragment as h, createVNode as i, unref as t, createElementVNode as n, withCtx as C, renderList as q, createBlock as w, resolveDynamicComponent as O, toDisplayString as g, createCommentVNode as z } from "vue";
2
+ import { _ as G } from "./campaign-CpzFl8Vr.js";
3
+ import { useDialog as J, components as Q } from "@feedmepos/ui-library";
4
+ import { p as W } from "./plugins-CihdO0FL.js";
5
+ import { u as X } from "./loading-JUECGK_w.js";
6
+ import { u as Y } from "./business-CEezohK9.js";
7
+ import { u as Z } from "./campaign-BiJIXVFh.js";
8
+ import { g as ee, a as S, b as V } from "./campaign-DN4wRHB1.js";
9
+ import { u as oe } from "./vue-i18n-BlWI3iG4.js";
10
+ import { _ as te } from "./FilterChip.vue_vue_type_script_setup_true_lang-DaU-9GzO.js";
11
+ import { _ as ae } from "./EditCampaignSheet.vue_vue_type_script_setup_true_lang-BmBKIEVi.js";
12
+ import { u as ne } from "./template-DkXoHjc6.js";
13
+ import { c as _ } from "./index-0vL_6ITj.js";
14
+ const re = { class: "px-24 flex flex-col gap-y-16" }, se = { class: "flex items-center justify-between w-full" }, ie = { class: "flex gap-8 overflow-x-auto" }, ce = { class: "space-y-8" }, le = { class: "flex w-full gap-4 items-center" }, me = { class: "fm-typo-en-body-md-400 text-fm-color-typo-secondary" }, de = { class: "space-y-4" }, ue = { class: "fm-typo-en-body-lg-600" }, pe = { class: "fm-typo-en-body-md-400 text-fm-color-typo-secondary" }, fe = { class: "fm-typo-en-body-md-400 text-fm-color-typo-secondary" }, ye = { key: 0 }, Ie = /* @__PURE__ */ N({
15
+ __name: "Credit",
16
+ setup(ge) {
17
+ const { t: r } = oe(), B = {
18
+ label: r("connect.program.common.actions.create", {
19
+ type: r("connect.program.credit.title").toLowerCase()
20
+ }),
21
+ value: "create",
22
+ isPrimary: !0,
23
+ prependIcon: "add"
24
+ }, I = ne("CREDIT", J()), R = Y(), u = Z(), { global: D, minor: v } = X, s = L({
25
+ searchKey: "",
26
+ location: []
27
+ });
28
+ function T(e) {
29
+ const o = s.value.location;
30
+ return !o || o.length === 0 || !e.targetLocation ? !0 : Array.isArray(o) ? o.some((l) => {
31
+ var c;
32
+ return (c = e == null ? void 0 : e.targetLocation) == null ? void 0 : c.includes(l);
33
+ }) : e.targetLocation.includes(o);
34
+ }
35
+ const p = j(
36
+ () => u.campaigns.credit.filter((e) => T(e))
37
+ ), E = [
38
+ {
39
+ header: r("connect.program.common.table.title"),
40
+ accessorFn: (e) => e.name
41
+ },
42
+ {
43
+ header: r("connect.program.common.table.status"),
44
+ accessorFn: (e) => ee(e),
45
+ cell(e) {
46
+ return S(e.row.original);
47
+ }
48
+ },
49
+ {
50
+ header: r("connect.program.common.table.summary"),
51
+ accessorFn: (e) => V(e)
52
+ },
53
+ {
54
+ header: r("connect.program.common.table.actions"),
55
+ cell(e) {
56
+ return M(Q.FmButton, {
57
+ variant: "tertiary",
58
+ icon: "delete",
59
+ iconColor: "neutral-gray-400",
60
+ onClick: (o) => {
61
+ o.stopPropagation(), x(e.row.original);
62
+ }
63
+ });
64
+ }
65
+ }
66
+ ], b = L();
67
+ async function x(e) {
68
+ await W.remove(
69
+ r("connect.program.common.remove.confirm", { name: e.name })
70
+ ) && await v(
71
+ async () => {
72
+ await _.delete(e._id), await u.read("CREDIT");
73
+ },
74
+ {
75
+ message: r("connect.program.common.remove.removing", { name: e.name }),
76
+ successMessage: r("connect.program.common.remove.removed", {
77
+ name: e.name
78
+ })
79
+ }
80
+ );
81
+ }
82
+ async function f(e) {
83
+ e ? await o() : I.open(async (l) => {
84
+ await o(l);
85
+ });
86
+ async function o(l) {
87
+ var c;
88
+ (c = b.value) == null || c.showSheet(
89
+ !0,
90
+ "CREDIT",
91
+ e ? await _.readById(e._id) : void 0,
92
+ l
93
+ );
94
+ }
95
+ }
96
+ async function K(e) {
97
+ await v(
98
+ async () => {
99
+ e.campaign._id ? await _.update(e.campaign._id, e) : await _.create(e), await u.read("CREDIT");
100
+ },
101
+ {
102
+ message: `${e.campaign._id ? "Updating" : "Creating"} credit program`,
103
+ successMessage: `Credit program ${e.campaign._id ? "updated" : "created"} successfully`
104
+ }
105
+ );
106
+ }
107
+ return H(async () => {
108
+ await D(async () => {
109
+ await u.read("CREDIT");
110
+ });
111
+ }), (e, o) => {
112
+ const l = m("FmPageHead"), c = m("FmSearch"), $ = m("FmTable"), F = m("FmButton"), P = m("FmListItem"), U = m("FmList"), A = m("FmCard");
113
+ return d(), y(h, null, [
114
+ i(l, {
115
+ title: t(r)("connect.program.credit.title"),
116
+ actions: t(p).length > 0 ? [B] : [],
117
+ "onClick:action": o[0] || (o[0] = () => f())
118
+ }, null, 8, ["title", "actions"]),
119
+ n("div", re, [
120
+ i(c, {
121
+ modelValue: t(s).searchKey,
122
+ "onUpdate:modelValue": o[1] || (o[1] = (a) => t(s).searchKey = a),
123
+ class: "hidden xs:block border-b-2 border-fm-color-neutral-gray-100",
124
+ placeholder: "search",
125
+ collapsible: ""
126
+ }, null, 8, ["modelValue"]),
127
+ t(u).campaigns.credit && t(u).campaigns.credit.length > 0 ? (d(), y(h, { key: 0 }, [
128
+ n("div", se, [
129
+ n("div", ie, [
130
+ i(te, {
131
+ label: `${t(r)("connect.common.location")}: `,
132
+ "right-icon": "keyboard_arrow_down",
133
+ modelValue: t(s).location,
134
+ "onUpdate:modelValue": o[2] || (o[2] = (a) => t(s).location = a),
135
+ icon: "storefront",
136
+ "show-item-label": !0,
137
+ items: t(R).locationOptions
138
+ }, null, 8, ["label", "modelValue", "items"])
139
+ ]),
140
+ i(c, {
141
+ modelValue: t(s).searchKey,
142
+ "onUpdate:modelValue": o[3] || (o[3] = (a) => t(s).searchKey = a),
143
+ class: "xs:hidden",
144
+ placeholder: "search",
145
+ collapsible: ""
146
+ }, null, 8, ["modelValue"])
147
+ ]),
148
+ i($, {
149
+ class: "xs:hidden",
150
+ "row-data": t(p),
151
+ "column-defs": E,
152
+ "search-value": t(s).searchKey,
153
+ "column-filter": [],
154
+ onRowClick: o[4] || (o[4] = (a) => f(a.original)),
155
+ "hide-footer": t(p).length < 10
156
+ }, null, 8, ["row-data", "search-value", "hide-footer"]),
157
+ i(U, { class: "hidden xs:flex flex-col mx-[-24px]" }, {
158
+ default: C(() => [
159
+ (d(!0), y(h, null, q(t(p).filter(
160
+ (a) => a.name.toLowerCase().includes(t(s).searchKey.toLowerCase())
161
+ ), (a) => (d(), w(P, {
162
+ key: a._id.toString(),
163
+ onClick: (k) => f(a),
164
+ class: "py-12 px-16 flex items-center justify-between border-b border-fm-color-neutral-gray-100"
165
+ }, {
166
+ default: C(() => [
167
+ n("div", ce, [
168
+ n("div", le, [
169
+ (d(), w(O(t(S)(a)))),
170
+ n("div", me, g(a.currentReceive ?? 0) + " used ", 1)
171
+ ]),
172
+ n("div", de, [
173
+ n("div", ue, g(a.name), 1),
174
+ n("div", pe, g(t(V)(a)), 1)
175
+ ]),
176
+ n("div", fe, " Credit received: " + g(a.currentReceive ?? 0), 1)
177
+ ]),
178
+ i(F, {
179
+ icon: "delete",
180
+ "icon-color": "neutral-gray-400",
181
+ variant: "tertiary",
182
+ onClick: (k) => (k.stopPropagation(), x(a))
183
+ }, null, 8, ["onClick"])
184
+ ]),
185
+ _: 2
186
+ }, 1032, ["onClick"]))), 128))
187
+ ]),
188
+ _: 1
189
+ }),
190
+ t(p).length == 0 ? (d(), y("div", ye, [...o[6] || (o[6] = [
191
+ n("div", { class: "text-fm-color-typo-secondary fm-typo-en-body-md-600" }, " No results found ", -1)
192
+ ])])) : z("", !0)
193
+ ], 64)) : (d(), w(A, {
194
+ key: 1,
195
+ variant: "outlined",
196
+ class: "w-full flex flex-col items-center justify-center gap-y-24 p-24"
197
+ }, {
198
+ default: C(() => [
199
+ o[7] || (o[7] = n("img", {
200
+ src: G,
201
+ class: "aspect-square w-[150px]"
202
+ }, null, -1)),
203
+ o[8] || (o[8] = n("div", { class: "flex flex-col gap-16 text-center" }, [
204
+ n("div", { class: "fm-typo-en-title-sm-800" }, "Create your credit program"),
205
+ n("div", { class: "fm-typo-en-body-md-400 text-fm-color-typo-secondary" }, " Credits are virtual money that customers can use to pay for their purchases, similar to cash within your store. ")
206
+ ], -1)),
207
+ i(F, {
208
+ variant: "primary",
209
+ label: "Create credit program",
210
+ icon: "add",
211
+ onClick: o[5] || (o[5] = (a) => f())
212
+ })
213
+ ]),
214
+ _: 1
215
+ })),
216
+ i(ae, {
217
+ ref_key: "sheetRef",
218
+ ref: b,
219
+ "onSubmit:modelValue": K
220
+ }, null, 512)
221
+ ])
222
+ ], 64);
223
+ };
224
+ }
225
+ });
226
+ export {
227
+ Ie as default
228
+ };