@saasquatch/mint-components 1.11.1-36 → 1.11.1-37

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 (33) hide show
  1. package/dist/cjs/{ShadowViewAddon-99091de6.js → ShadowViewAddon-074b426e.js} +1 -1
  2. package/dist/cjs/{copy-text-view-460654ac.js → copy-text-view-acb2707b.js} +49 -33
  3. package/dist/cjs/sqm-big-stat_38.cjs.entry.js +2 -2
  4. package/dist/cjs/sqm-pagination_3.cjs.entry.js +1 -1
  5. package/dist/cjs/sqm-stencilbook.cjs.entry.js +2 -2
  6. package/dist/collection/components/sqm-referral-codes/useReferralCodes.js +50 -34
  7. package/dist/esm/{ShadowViewAddon-aac87ae0.js → ShadowViewAddon-100e4928.js} +1 -1
  8. package/dist/esm/{copy-text-view-1d7c8f2a.js → copy-text-view-cfdca341.js} +50 -34
  9. package/dist/esm/sqm-big-stat_38.entry.js +2 -2
  10. package/dist/esm/sqm-pagination_3.entry.js +1 -1
  11. package/dist/esm/sqm-stencilbook.entry.js +2 -2
  12. package/dist/esm-es5/{ShadowViewAddon-aac87ae0.js → ShadowViewAddon-100e4928.js} +1 -1
  13. package/dist/esm-es5/copy-text-view-cfdca341.js +1 -0
  14. package/dist/esm-es5/sqm-big-stat_38.entry.js +1 -1
  15. package/dist/esm-es5/sqm-pagination_3.entry.js +1 -1
  16. package/dist/esm-es5/sqm-stencilbook.entry.js +1 -1
  17. package/dist/mint-components/mint-components.esm.js +1 -1
  18. package/dist/mint-components/{p-c2274979.entry.js → p-267a2e5a.entry.js} +2 -2
  19. package/dist/mint-components/{p-b057e502.system.entry.js → p-4da7a951.system.entry.js} +1 -1
  20. package/dist/mint-components/{p-652790dc.system.entry.js → p-60213708.system.entry.js} +1 -1
  21. package/dist/mint-components/{p-3ca30ac1.entry.js → p-6aac1288.entry.js} +1 -1
  22. package/dist/mint-components/{p-4ed7e559.system.entry.js → p-799cd8f5.system.entry.js} +1 -1
  23. package/dist/mint-components/{p-a7cb7282.entry.js → p-89c05109.entry.js} +1 -1
  24. package/dist/mint-components/p-9ed09b3a.system.js +1 -1
  25. package/dist/mint-components/{p-9fd6b4a2.js → p-bc49a074.js} +1 -1
  26. package/dist/mint-components/p-cda9aafd.js +52 -0
  27. package/dist/mint-components/{p-b3f771d9.system.js → p-d4f00976.system.js} +1 -1
  28. package/dist/mint-components/p-efcb080f.system.js +1 -0
  29. package/docs/docs.docx +0 -0
  30. package/package.json +1 -1
  31. package/dist/esm-es5/copy-text-view-1d7c8f2a.js +0 -1
  32. package/dist/mint-components/p-5a83aa32.js +0 -56
  33. package/dist/mint-components/p-d55dcd10.system.js +0 -1
@@ -6,7 +6,7 @@ const global = require('./global-e067aa06.js');
6
6
  const index_module = require('./index.module-224d7b8d.js');
7
7
  const utils = require('./utils-6847bc06.js');
8
8
  const JSS = require('./JSS-8503a151.js');
9
- const copyTextView = require('./copy-text-view-460654ac.js');
9
+ const copyTextView = require('./copy-text-view-acb2707b.js');
10
10
  const cjs = require('./cjs-1066ec21.js');
11
11
  const mixins = require('./mixins-fe9d4112.js');
12
12
  const useChildElements = require('./useChildElements-176ac928.js');
@@ -8,18 +8,14 @@ const mixins = require('./mixins-fe9d4112.js');
8
8
 
9
9
  const GET_REFERRAL_CODES = index_module.dist.gql `
10
10
  query getCodes(
11
+ $engagementMedium: UserEngagementMedium!
11
12
  $limit: Int!
12
13
  $offset: Int!
13
- $engagementMedium: UserEngagementMedium!
14
- $programId: ID
14
+ $filter: ReferralCodeFilterInput
15
15
  ) {
16
16
  viewer {
17
17
  ... on User {
18
- referralCodeList(
19
- limit: $limit
20
- offset: $offset
21
- filter: { fuelTank_eq: true, programId_eq: $programId }
22
- ) {
18
+ referralCodeList(limit: $limit, offset: $offset, filter: $filter) {
23
19
  data {
24
20
  code
25
21
  dateUsed
@@ -66,30 +62,47 @@ const SET_CODE_COPIED = index_module.dist.gql `
66
62
  }
67
63
  `;
68
64
  function useReferralCodes(props) {
65
+ var _a;
69
66
  const user = index_module.Q();
70
67
  const engagementMedium = index_module.B();
71
68
  const programId = props.programId || index_module.H();
72
69
  console.log({ props });
73
70
  const { refresh } = index_module.ze();
74
- const { envelope: referralData, states, callbacks, } = index_module.kn(GET_REFERRAL_CODES, (data) => {
75
- var _a;
76
- console.log({ queryData: data });
77
- return (_a = data === null || data === void 0 ? void 0 : data.viewer) === null || _a === void 0 ? void 0 : _a.referralCodeList;
71
+ const singleUseReferralCodes = index_module.kn(GET_REFERRAL_CODES, (data) => { var _a; return (_a = data === null || data === void 0 ? void 0 : data.viewer) === null || _a === void 0 ? void 0 : _a.referralCodeList; }, {
72
+ limit: 1,
73
+ offset: 0,
78
74
  }, {
75
+ engagementMedium,
76
+ programId,
77
+ filter: {
78
+ fuelTank_eq: true,
79
+ programId_eq: programId,
80
+ dateUsed_exists: false,
81
+ singleUse_eq: true,
82
+ },
83
+ }, !(user === null || user === void 0 ? void 0 : user.jwt));
84
+ const multiUseReferralCodes = index_module.kn(GET_REFERRAL_CODES, (data) => { var _a; return (_a = data === null || data === void 0 ? void 0 : data.viewer) === null || _a === void 0 ? void 0 : _a.referralCodeList; }, {
79
85
  limit: 1,
80
86
  offset: 0,
81
- }, { engagementMedium, programId }, !(user === null || user === void 0 ? void 0 : user.jwt));
82
- const filteredReferralData = stencilHooks_module.useMemo(() => { var _a; return (_a = referralData === null || referralData === void 0 ? void 0 : referralData.data) === null || _a === void 0 ? void 0 : _a.filter((referralCode) => {
83
- if ((referralCode === null || referralCode === void 0 ? void 0 : referralCode.singleUse) && !(referralCode === null || referralCode === void 0 ? void 0 : referralCode.dateUsed))
84
- return true;
85
- if (!(referralCode === null || referralCode === void 0 ? void 0 : referralCode.singleUse))
86
- return true;
87
- return false;
88
- }); }, [referralData]);
89
- console.log({ props, referralData, filteredReferralData });
87
+ }, {
88
+ engagementMedium,
89
+ programId,
90
+ filter: {
91
+ fuelTank_eq: true,
92
+ programId_eq: programId,
93
+ singleUse_eq: false,
94
+ },
95
+ }, !(user === null || user === void 0 ? void 0 : user.jwt));
96
+ const referralCodes = ((_a = singleUseReferralCodes === null || singleUseReferralCodes === void 0 ? void 0 : singleUseReferralCodes.envelope) === null || _a === void 0 ? void 0 : _a.totalCount) > 0
97
+ ? singleUseReferralCodes
98
+ : multiUseReferralCodes;
99
+ const referralData = referralCodes.envelope;
90
100
  const [paginationContext, setPaginationContext] = index_module.Cn({
91
101
  namespace: REFERRAL_CODES_PAGINATION_CONTEXT,
92
- initialValue: { states, callbacks },
102
+ initialValue: {
103
+ states: referralCodes.states,
104
+ callbacks: referralCodes.callbacks,
105
+ },
93
106
  });
94
107
  const [referralCodesContext, setReferralCodesContext] = index_module.Cn({
95
108
  namespace: REFERRAL_CODES_NAMESPACE,
@@ -111,31 +124,34 @@ function useReferralCodes(props) {
111
124
  },
112
125
  });
113
126
  stencilHooks_module.useEffect(() => {
114
- var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k, _l, _m, _o, _p, _q;
115
- if (filteredReferralData === null || filteredReferralData === void 0 ? void 0 : filteredReferralData.length) {
116
- const data = filteredReferralData[0];
127
+ var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k, _l, _m, _o, _p, _q, _r;
128
+ if ((_a = referralData === null || referralData === void 0 ? void 0 : referralData.data) === null || _a === void 0 ? void 0 : _a.length) {
129
+ const data = referralData.data[0];
117
130
  setReferralCodesContext({
118
131
  refresh,
119
132
  referralCode: data.code,
120
133
  isCopied: !!data.dateCopied,
121
134
  isUsed: !!data.dateUsed,
122
- shareLink: (_c = (_b = (_a = data.shareLinkCodes) === null || _a === void 0 ? void 0 : _a.data) === null || _b === void 0 ? void 0 : _b[0]) === null || _c === void 0 ? void 0 : _c.direct,
135
+ shareLink: (_d = (_c = (_b = data.shareLinkCodes) === null || _b === void 0 ? void 0 : _b.data) === null || _c === void 0 ? void 0 : _c[0]) === null || _d === void 0 ? void 0 : _d.direct,
123
136
  email: {
124
- messageLink: (_f = (_e = (_d = data.shareLinkCodes) === null || _d === void 0 ? void 0 : _d.data) === null || _e === void 0 ? void 0 : _e[0]) === null || _f === void 0 ? void 0 : _f.email,
137
+ messageLink: (_g = (_f = (_e = data.shareLinkCodes) === null || _e === void 0 ? void 0 : _e.data) === null || _f === void 0 ? void 0 : _f[0]) === null || _g === void 0 ? void 0 : _g.email,
125
138
  },
126
139
  fbmessenger: {
127
- messageLink: (_j = (_h = (_g = data.shareLinkCodes) === null || _g === void 0 ? void 0 : _g.data) === null || _h === void 0 ? void 0 : _h[0]) === null || _j === void 0 ? void 0 : _j.fbMessenger,
128
- shareLink: (_m = (_l = (_k = data.shareLinkCodes) === null || _k === void 0 ? void 0 : _k.data) === null || _l === void 0 ? void 0 : _l[0]) === null || _m === void 0 ? void 0 : _m.fbMessenger,
140
+ messageLink: (_k = (_j = (_h = data.shareLinkCodes) === null || _h === void 0 ? void 0 : _h.data) === null || _j === void 0 ? void 0 : _j[0]) === null || _k === void 0 ? void 0 : _k.fbMessenger,
141
+ shareLink: (_o = (_m = (_l = data.shareLinkCodes) === null || _l === void 0 ? void 0 : _l.data) === null || _m === void 0 ? void 0 : _m[0]) === null || _o === void 0 ? void 0 : _o.fbMessenger,
129
142
  },
130
- whatsapp: { messageLink: (_q = (_p = (_o = data.shareLinkCodes) === null || _o === void 0 ? void 0 : _o.data) === null || _p === void 0 ? void 0 : _p[0]) === null || _q === void 0 ? void 0 : _q.whatsApp },
143
+ whatsapp: { messageLink: (_r = (_q = (_p = data.shareLinkCodes) === null || _p === void 0 ? void 0 : _p.data) === null || _q === void 0 ? void 0 : _q[0]) === null || _r === void 0 ? void 0 : _r.whatsApp },
144
+ });
145
+ setPaginationContext({
146
+ states: referralCodes.states,
147
+ callbacks: referralCodes.callbacks,
131
148
  });
132
- setPaginationContext({ states, callbacks });
133
149
  }
134
- }, [filteredReferralData]);
135
- console.log({ referralData, states });
150
+ }, [referralData]);
151
+ console.log({ referralData, states: referralCodes.states });
136
152
  return {
137
153
  states: {
138
- ...states,
154
+ ...referralCodes.states,
139
155
  noCodes: (referralData === null || referralData === void 0 ? void 0 : referralData.totalCount) === 0,
140
156
  },
141
157
  data: referralCodesContext,
@@ -9,7 +9,7 @@ const index_module = require('./index.module-224d7b8d.js');
9
9
  const jsonpointer = require('./jsonpointer-11327262.js');
10
10
  const utils = require('./utils-6847bc06.js');
11
11
  const JSS = require('./JSS-8503a151.js');
12
- const copyTextView = require('./copy-text-view-460654ac.js');
12
+ const copyTextView = require('./copy-text-view-acb2707b.js');
13
13
  const cjs = require('./cjs-1066ec21.js');
14
14
  require('./mixins-fe9d4112.js');
15
15
  const reRender = require('./re-render-cd2f8774.js');
@@ -20,7 +20,7 @@ const index$1 = require('./index-8c6255f5.js');
20
20
  const useRegistrationFormState = require('./useRegistrationFormState-49dd9295.js');
21
21
  const utilities = require('./utilities-719c980a.js');
22
22
  const AsYouType = require('./AsYouType-6788393a.js');
23
- const ShadowViewAddon = require('./ShadowViewAddon-99091de6.js');
23
+ const ShadowViewAddon = require('./ShadowViewAddon-074b426e.js');
24
24
  require('./sqm-portal-container-view-976bf0f5.js');
25
25
 
26
26
  const BigStat = class {
@@ -7,7 +7,7 @@ const stencilHooks_module = require('./stencil-hooks.module-8f69ed33.js');
7
7
  const index_module = require('./index.module-224d7b8d.js');
8
8
  const utils = require('./utils-6847bc06.js');
9
9
  const JSS = require('./JSS-8503a151.js');
10
- const copyTextView = require('./copy-text-view-460654ac.js');
10
+ const copyTextView = require('./copy-text-view-acb2707b.js');
11
11
  const cjs = require('./cjs-1066ec21.js');
12
12
  require('./mixins-fe9d4112.js');
13
13
 
@@ -8,7 +8,7 @@ require('./global-e067aa06.js');
8
8
  const index_module = require('./index.module-224d7b8d.js');
9
9
  require('./utils-6847bc06.js');
10
10
  const JSS = require('./JSS-8503a151.js');
11
- const copyTextView = require('./copy-text-view-460654ac.js');
11
+ const copyTextView = require('./copy-text-view-acb2707b.js');
12
12
  require('./cjs-1066ec21.js');
13
13
  require('./mixins-fe9d4112.js');
14
14
  const GenericTableView = require('./GenericTableView-bb2fcd95.js');
@@ -29,7 +29,7 @@ const sqmPortalProfileView = require('./sqm-portal-profile-view-7c70d7f9.js');
29
29
  require('./utilities-719c980a.js');
30
30
  const sqmPortalResetPasswordView = require('./sqm-portal-reset-password-view-1b85b8cf.js');
31
31
  const sqmPortalVerifyEmailView = require('./sqm-portal-verify-email-view-cc3c87c3.js');
32
- const ShadowViewAddon = require('./ShadowViewAddon-99091de6.js');
32
+ const ShadowViewAddon = require('./ShadowViewAddon-074b426e.js');
33
33
  const sqmPortalContainerView = require('./sqm-portal-container-view-976bf0f5.js');
34
34
  const sqmInvoiceTableView = require('./sqm-invoice-table-view-2f4f426b.js');
35
35
 
@@ -1,20 +1,16 @@
1
1
  import { useEngagementMedium, usePaginatedQuery, useParentState, useProgramId, useRefreshDispatcher, useUserIdentity, } from "@saasquatch/component-boilerplate";
2
- import { useEffect, useMemo } from "@saasquatch/universal-hooks";
2
+ import { useEffect } from "@saasquatch/universal-hooks";
3
3
  import { gql } from "graphql-request";
4
4
  const GET_REFERRAL_CODES = gql `
5
5
  query getCodes(
6
+ $engagementMedium: UserEngagementMedium!
6
7
  $limit: Int!
7
8
  $offset: Int!
8
- $engagementMedium: UserEngagementMedium!
9
- $programId: ID
9
+ $filter: ReferralCodeFilterInput
10
10
  ) {
11
11
  viewer {
12
12
  ... on User {
13
- referralCodeList(
14
- limit: $limit
15
- offset: $offset
16
- filter: { fuelTank_eq: true, programId_eq: $programId }
17
- ) {
13
+ referralCodeList(limit: $limit, offset: $offset, filter: $filter) {
18
14
  data {
19
15
  code
20
16
  dateUsed
@@ -61,30 +57,47 @@ export const SET_CODE_COPIED = gql `
61
57
  }
62
58
  `;
63
59
  export function useReferralCodes(props) {
60
+ var _a;
64
61
  const user = useUserIdentity();
65
62
  const engagementMedium = useEngagementMedium();
66
63
  const programId = props.programId || useProgramId();
67
64
  console.log({ props });
68
65
  const { refresh } = useRefreshDispatcher();
69
- const { envelope: referralData, states, callbacks, } = usePaginatedQuery(GET_REFERRAL_CODES, (data) => {
70
- var _a;
71
- console.log({ queryData: data });
72
- return (_a = data === null || data === void 0 ? void 0 : data.viewer) === null || _a === void 0 ? void 0 : _a.referralCodeList;
66
+ const singleUseReferralCodes = usePaginatedQuery(GET_REFERRAL_CODES, (data) => { var _a; return (_a = data === null || data === void 0 ? void 0 : data.viewer) === null || _a === void 0 ? void 0 : _a.referralCodeList; }, {
67
+ limit: 1,
68
+ offset: 0,
73
69
  }, {
70
+ engagementMedium,
71
+ programId,
72
+ filter: {
73
+ fuelTank_eq: true,
74
+ programId_eq: programId,
75
+ dateUsed_exists: false,
76
+ singleUse_eq: true,
77
+ },
78
+ }, !(user === null || user === void 0 ? void 0 : user.jwt));
79
+ const multiUseReferralCodes = usePaginatedQuery(GET_REFERRAL_CODES, (data) => { var _a; return (_a = data === null || data === void 0 ? void 0 : data.viewer) === null || _a === void 0 ? void 0 : _a.referralCodeList; }, {
74
80
  limit: 1,
75
81
  offset: 0,
76
- }, { engagementMedium, programId }, !(user === null || user === void 0 ? void 0 : user.jwt));
77
- const filteredReferralData = useMemo(() => { var _a; return (_a = referralData === null || referralData === void 0 ? void 0 : referralData.data) === null || _a === void 0 ? void 0 : _a.filter((referralCode) => {
78
- if ((referralCode === null || referralCode === void 0 ? void 0 : referralCode.singleUse) && !(referralCode === null || referralCode === void 0 ? void 0 : referralCode.dateUsed))
79
- return true;
80
- if (!(referralCode === null || referralCode === void 0 ? void 0 : referralCode.singleUse))
81
- return true;
82
- return false;
83
- }); }, [referralData]);
84
- console.log({ props, referralData, filteredReferralData });
82
+ }, {
83
+ engagementMedium,
84
+ programId,
85
+ filter: {
86
+ fuelTank_eq: true,
87
+ programId_eq: programId,
88
+ singleUse_eq: false,
89
+ },
90
+ }, !(user === null || user === void 0 ? void 0 : user.jwt));
91
+ const referralCodes = ((_a = singleUseReferralCodes === null || singleUseReferralCodes === void 0 ? void 0 : singleUseReferralCodes.envelope) === null || _a === void 0 ? void 0 : _a.totalCount) > 0
92
+ ? singleUseReferralCodes
93
+ : multiUseReferralCodes;
94
+ const referralData = referralCodes.envelope;
85
95
  const [paginationContext, setPaginationContext] = useParentState({
86
96
  namespace: REFERRAL_CODES_PAGINATION_CONTEXT,
87
- initialValue: { states, callbacks },
97
+ initialValue: {
98
+ states: referralCodes.states,
99
+ callbacks: referralCodes.callbacks,
100
+ },
88
101
  });
89
102
  const [referralCodesContext, setReferralCodesContext] = useParentState({
90
103
  namespace: REFERRAL_CODES_NAMESPACE,
@@ -106,31 +119,34 @@ export function useReferralCodes(props) {
106
119
  },
107
120
  });
108
121
  useEffect(() => {
109
- var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k, _l, _m, _o, _p, _q;
110
- if (filteredReferralData === null || filteredReferralData === void 0 ? void 0 : filteredReferralData.length) {
111
- const data = filteredReferralData[0];
122
+ var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k, _l, _m, _o, _p, _q, _r;
123
+ if ((_a = referralData === null || referralData === void 0 ? void 0 : referralData.data) === null || _a === void 0 ? void 0 : _a.length) {
124
+ const data = referralData.data[0];
112
125
  setReferralCodesContext({
113
126
  refresh,
114
127
  referralCode: data.code,
115
128
  isCopied: !!data.dateCopied,
116
129
  isUsed: !!data.dateUsed,
117
- shareLink: (_c = (_b = (_a = data.shareLinkCodes) === null || _a === void 0 ? void 0 : _a.data) === null || _b === void 0 ? void 0 : _b[0]) === null || _c === void 0 ? void 0 : _c.direct,
130
+ shareLink: (_d = (_c = (_b = data.shareLinkCodes) === null || _b === void 0 ? void 0 : _b.data) === null || _c === void 0 ? void 0 : _c[0]) === null || _d === void 0 ? void 0 : _d.direct,
118
131
  email: {
119
- messageLink: (_f = (_e = (_d = data.shareLinkCodes) === null || _d === void 0 ? void 0 : _d.data) === null || _e === void 0 ? void 0 : _e[0]) === null || _f === void 0 ? void 0 : _f.email,
132
+ messageLink: (_g = (_f = (_e = data.shareLinkCodes) === null || _e === void 0 ? void 0 : _e.data) === null || _f === void 0 ? void 0 : _f[0]) === null || _g === void 0 ? void 0 : _g.email,
120
133
  },
121
134
  fbmessenger: {
122
- messageLink: (_j = (_h = (_g = data.shareLinkCodes) === null || _g === void 0 ? void 0 : _g.data) === null || _h === void 0 ? void 0 : _h[0]) === null || _j === void 0 ? void 0 : _j.fbMessenger,
123
- shareLink: (_m = (_l = (_k = data.shareLinkCodes) === null || _k === void 0 ? void 0 : _k.data) === null || _l === void 0 ? void 0 : _l[0]) === null || _m === void 0 ? void 0 : _m.fbMessenger,
135
+ messageLink: (_k = (_j = (_h = data.shareLinkCodes) === null || _h === void 0 ? void 0 : _h.data) === null || _j === void 0 ? void 0 : _j[0]) === null || _k === void 0 ? void 0 : _k.fbMessenger,
136
+ shareLink: (_o = (_m = (_l = data.shareLinkCodes) === null || _l === void 0 ? void 0 : _l.data) === null || _m === void 0 ? void 0 : _m[0]) === null || _o === void 0 ? void 0 : _o.fbMessenger,
124
137
  },
125
- whatsapp: { messageLink: (_q = (_p = (_o = data.shareLinkCodes) === null || _o === void 0 ? void 0 : _o.data) === null || _p === void 0 ? void 0 : _p[0]) === null || _q === void 0 ? void 0 : _q.whatsApp },
138
+ whatsapp: { messageLink: (_r = (_q = (_p = data.shareLinkCodes) === null || _p === void 0 ? void 0 : _p.data) === null || _q === void 0 ? void 0 : _q[0]) === null || _r === void 0 ? void 0 : _r.whatsApp },
139
+ });
140
+ setPaginationContext({
141
+ states: referralCodes.states,
142
+ callbacks: referralCodes.callbacks,
126
143
  });
127
- setPaginationContext({ states, callbacks });
128
144
  }
129
- }, [filteredReferralData]);
130
- console.log({ referralData, states });
145
+ }, [referralData]);
146
+ console.log({ referralData, states: referralCodes.states });
131
147
  return {
132
148
  states: {
133
- ...states,
149
+ ...referralCodes.states,
134
150
  noCodes: (referralData === null || referralData === void 0 ? void 0 : referralData.totalCount) === 0,
135
151
  },
136
152
  data: referralCodesContext,
@@ -4,7 +4,7 @@ import { i as intl } from './global-701bd5b0.js';
4
4
  import { d as dist, H, Q, I as In, y as yn, $ as $e, B, a as getEnvironmentSDK, L } from './index.module-5eb0926c.js';
5
5
  import { l as luxonLocale } from './utils-334c1e34.js';
6
6
  import { c as createStyleSheet, j as jss, a as create } from './JSS-67b5cff8.js';
7
- import { a as REFERRAL_CODES_NAMESPACE, S as SET_CODE_COPIED, C as CopyTextView } from './copy-text-view-1d7c8f2a.js';
7
+ import { a as REFERRAL_CODES_NAMESPACE, S as SET_CODE_COPIED, C as CopyTextView } from './copy-text-view-cfdca341.js';
8
8
  import { c as cjs } from './cjs-bdfb4486.js';
9
9
  import { H as HostBlock, A as AuthWrapper, a as AuthColumn, b as AuthButtonsContainer, E as ErrorStyles } from './mixins-f60a614c.js';
10
10
  import { u as useChildElements } from './useChildElements-ebcfbc19.js';
@@ -1,23 +1,19 @@
1
1
  import { h } from './index-014ddfa3.js';
2
- import { u as useMemo, f as useEffect } from './stencil-hooks.module-576d7f01.js';
2
+ import { f as useEffect } from './stencil-hooks.module-576d7f01.js';
3
3
  import { d as dist, Q, H, z as ze, k as kn, C as Cn, B } from './index.module-5eb0926c.js';
4
4
  import { c as createStyleSheet } from './JSS-67b5cff8.js';
5
5
  import { H as HostBlock } from './mixins-f60a614c.js';
6
6
 
7
7
  const GET_REFERRAL_CODES = dist.gql `
8
8
  query getCodes(
9
+ $engagementMedium: UserEngagementMedium!
9
10
  $limit: Int!
10
11
  $offset: Int!
11
- $engagementMedium: UserEngagementMedium!
12
- $programId: ID
12
+ $filter: ReferralCodeFilterInput
13
13
  ) {
14
14
  viewer {
15
15
  ... on User {
16
- referralCodeList(
17
- limit: $limit
18
- offset: $offset
19
- filter: { fuelTank_eq: true, programId_eq: $programId }
20
- ) {
16
+ referralCodeList(limit: $limit, offset: $offset, filter: $filter) {
21
17
  data {
22
18
  code
23
19
  dateUsed
@@ -64,30 +60,47 @@ const SET_CODE_COPIED = dist.gql `
64
60
  }
65
61
  `;
66
62
  function useReferralCodes(props) {
63
+ var _a;
67
64
  const user = Q();
68
65
  const engagementMedium = B();
69
66
  const programId = props.programId || H();
70
67
  console.log({ props });
71
68
  const { refresh } = ze();
72
- const { envelope: referralData, states, callbacks, } = kn(GET_REFERRAL_CODES, (data) => {
73
- var _a;
74
- console.log({ queryData: data });
75
- return (_a = data === null || data === void 0 ? void 0 : data.viewer) === null || _a === void 0 ? void 0 : _a.referralCodeList;
69
+ const singleUseReferralCodes = kn(GET_REFERRAL_CODES, (data) => { var _a; return (_a = data === null || data === void 0 ? void 0 : data.viewer) === null || _a === void 0 ? void 0 : _a.referralCodeList; }, {
70
+ limit: 1,
71
+ offset: 0,
76
72
  }, {
73
+ engagementMedium,
74
+ programId,
75
+ filter: {
76
+ fuelTank_eq: true,
77
+ programId_eq: programId,
78
+ dateUsed_exists: false,
79
+ singleUse_eq: true,
80
+ },
81
+ }, !(user === null || user === void 0 ? void 0 : user.jwt));
82
+ const multiUseReferralCodes = kn(GET_REFERRAL_CODES, (data) => { var _a; return (_a = data === null || data === void 0 ? void 0 : data.viewer) === null || _a === void 0 ? void 0 : _a.referralCodeList; }, {
77
83
  limit: 1,
78
84
  offset: 0,
79
- }, { engagementMedium, programId }, !(user === null || user === void 0 ? void 0 : user.jwt));
80
- const filteredReferralData = useMemo(() => { var _a; return (_a = referralData === null || referralData === void 0 ? void 0 : referralData.data) === null || _a === void 0 ? void 0 : _a.filter((referralCode) => {
81
- if ((referralCode === null || referralCode === void 0 ? void 0 : referralCode.singleUse) && !(referralCode === null || referralCode === void 0 ? void 0 : referralCode.dateUsed))
82
- return true;
83
- if (!(referralCode === null || referralCode === void 0 ? void 0 : referralCode.singleUse))
84
- return true;
85
- return false;
86
- }); }, [referralData]);
87
- console.log({ props, referralData, filteredReferralData });
85
+ }, {
86
+ engagementMedium,
87
+ programId,
88
+ filter: {
89
+ fuelTank_eq: true,
90
+ programId_eq: programId,
91
+ singleUse_eq: false,
92
+ },
93
+ }, !(user === null || user === void 0 ? void 0 : user.jwt));
94
+ const referralCodes = ((_a = singleUseReferralCodes === null || singleUseReferralCodes === void 0 ? void 0 : singleUseReferralCodes.envelope) === null || _a === void 0 ? void 0 : _a.totalCount) > 0
95
+ ? singleUseReferralCodes
96
+ : multiUseReferralCodes;
97
+ const referralData = referralCodes.envelope;
88
98
  const [paginationContext, setPaginationContext] = Cn({
89
99
  namespace: REFERRAL_CODES_PAGINATION_CONTEXT,
90
- initialValue: { states, callbacks },
100
+ initialValue: {
101
+ states: referralCodes.states,
102
+ callbacks: referralCodes.callbacks,
103
+ },
91
104
  });
92
105
  const [referralCodesContext, setReferralCodesContext] = Cn({
93
106
  namespace: REFERRAL_CODES_NAMESPACE,
@@ -109,31 +122,34 @@ function useReferralCodes(props) {
109
122
  },
110
123
  });
111
124
  useEffect(() => {
112
- var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k, _l, _m, _o, _p, _q;
113
- if (filteredReferralData === null || filteredReferralData === void 0 ? void 0 : filteredReferralData.length) {
114
- const data = filteredReferralData[0];
125
+ var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k, _l, _m, _o, _p, _q, _r;
126
+ if ((_a = referralData === null || referralData === void 0 ? void 0 : referralData.data) === null || _a === void 0 ? void 0 : _a.length) {
127
+ const data = referralData.data[0];
115
128
  setReferralCodesContext({
116
129
  refresh,
117
130
  referralCode: data.code,
118
131
  isCopied: !!data.dateCopied,
119
132
  isUsed: !!data.dateUsed,
120
- shareLink: (_c = (_b = (_a = data.shareLinkCodes) === null || _a === void 0 ? void 0 : _a.data) === null || _b === void 0 ? void 0 : _b[0]) === null || _c === void 0 ? void 0 : _c.direct,
133
+ shareLink: (_d = (_c = (_b = data.shareLinkCodes) === null || _b === void 0 ? void 0 : _b.data) === null || _c === void 0 ? void 0 : _c[0]) === null || _d === void 0 ? void 0 : _d.direct,
121
134
  email: {
122
- messageLink: (_f = (_e = (_d = data.shareLinkCodes) === null || _d === void 0 ? void 0 : _d.data) === null || _e === void 0 ? void 0 : _e[0]) === null || _f === void 0 ? void 0 : _f.email,
135
+ messageLink: (_g = (_f = (_e = data.shareLinkCodes) === null || _e === void 0 ? void 0 : _e.data) === null || _f === void 0 ? void 0 : _f[0]) === null || _g === void 0 ? void 0 : _g.email,
123
136
  },
124
137
  fbmessenger: {
125
- messageLink: (_j = (_h = (_g = data.shareLinkCodes) === null || _g === void 0 ? void 0 : _g.data) === null || _h === void 0 ? void 0 : _h[0]) === null || _j === void 0 ? void 0 : _j.fbMessenger,
126
- shareLink: (_m = (_l = (_k = data.shareLinkCodes) === null || _k === void 0 ? void 0 : _k.data) === null || _l === void 0 ? void 0 : _l[0]) === null || _m === void 0 ? void 0 : _m.fbMessenger,
138
+ messageLink: (_k = (_j = (_h = data.shareLinkCodes) === null || _h === void 0 ? void 0 : _h.data) === null || _j === void 0 ? void 0 : _j[0]) === null || _k === void 0 ? void 0 : _k.fbMessenger,
139
+ shareLink: (_o = (_m = (_l = data.shareLinkCodes) === null || _l === void 0 ? void 0 : _l.data) === null || _m === void 0 ? void 0 : _m[0]) === null || _o === void 0 ? void 0 : _o.fbMessenger,
127
140
  },
128
- whatsapp: { messageLink: (_q = (_p = (_o = data.shareLinkCodes) === null || _o === void 0 ? void 0 : _o.data) === null || _p === void 0 ? void 0 : _p[0]) === null || _q === void 0 ? void 0 : _q.whatsApp },
141
+ whatsapp: { messageLink: (_r = (_q = (_p = data.shareLinkCodes) === null || _p === void 0 ? void 0 : _p.data) === null || _q === void 0 ? void 0 : _q[0]) === null || _r === void 0 ? void 0 : _r.whatsApp },
142
+ });
143
+ setPaginationContext({
144
+ states: referralCodes.states,
145
+ callbacks: referralCodes.callbacks,
129
146
  });
130
- setPaginationContext({ states, callbacks });
131
147
  }
132
- }, [filteredReferralData]);
133
- console.log({ referralData, states });
148
+ }, [referralData]);
149
+ console.log({ referralData, states: referralCodes.states });
134
150
  return {
135
151
  states: {
136
- ...states,
152
+ ...referralCodes.states,
137
153
  noCodes: (referralData === null || referralData === void 0 ? void 0 : referralData.totalCount) === 0,
138
154
  },
139
155
  data: referralCodesContext,
@@ -5,7 +5,7 @@ import { i as isDemo, _, d as dist, Q, H, $ as $e, y as yn, B, L, g as gn, f as
5
5
  import { j as jsonpointer } from './jsonpointer-388a7082.js';
6
6
  import { g as getProps, a as getMissingProps, s as sanitizeUrlPath } from './utils-334c1e34.js';
7
7
  import { c as createStyleSheet } from './JSS-67b5cff8.js';
8
- import { C as CopyTextView } from './copy-text-view-1d7c8f2a.js';
8
+ import { C as CopyTextView } from './copy-text-view-cfdca341.js';
9
9
  import { c as cjs } from './cjs-bdfb4486.js';
10
10
  import './mixins-f60a614c.js';
11
11
  import { a as useRequestRerender } from './re-render-b31d83d7.js';
@@ -16,7 +16,7 @@ import { p as pathToRegexp } from './index-ffa26b43.js';
16
16
  import { R as REGISTRATION_FORM_STATE_CONTEXT, u as useRegistrationFormState } from './useRegistrationFormState-faea9402.js';
17
17
  import { i as isEmpty } from './utilities-292b61b9.js';
18
18
  import { A as AsYouType } from './AsYouType-46f67d0d.js';
19
- import { b as useDemoBigStat, U as useBigStat, B as BigStatView, O as autoColorScaleCss, J as CardFeedView, C as CheckboxFieldView, K as CouponCodeView, D as DropdownFieldView, E as EditProfileView, H as HeroView, I as InputFieldView, V as withShadowView, L as LeaderboardView, N as NameFieldsView, d as PortalChangePasswordView, i as PortalFooterView, P as PortalFrameView, e as PortalLoginView, f as PortalRegisterView, R as ReferralIframeView, W as demoRewardExchange, j as RewardExchangeView, a as useShareButton, S as ShareButtonView, u as useShareLink, c as StatContainerView, T as TaskCardView } from './ShadowViewAddon-aac87ae0.js';
19
+ import { b as useDemoBigStat, U as useBigStat, B as BigStatView, O as autoColorScaleCss, J as CardFeedView, C as CheckboxFieldView, K as CouponCodeView, D as DropdownFieldView, E as EditProfileView, H as HeroView, I as InputFieldView, V as withShadowView, L as LeaderboardView, N as NameFieldsView, d as PortalChangePasswordView, i as PortalFooterView, P as PortalFrameView, e as PortalLoginView, f as PortalRegisterView, R as ReferralIframeView, W as demoRewardExchange, j as RewardExchangeView, a as useShareButton, S as ShareButtonView, u as useShareLink, c as StatContainerView, T as TaskCardView } from './ShadowViewAddon-100e4928.js';
20
20
  import './sqm-portal-container-view-83df005d.js';
21
21
 
22
22
  const BigStat = class {
@@ -3,7 +3,7 @@ import { n as h$1, k as useState } from './stencil-hooks.module-576d7f01.js';
3
3
  import { I as In, i as isDemo, d as dist, H, Q, y as yn, $ as $e, B } from './index.module-5eb0926c.js';
4
4
  import { g as getProps } from './utils-334c1e34.js';
5
5
  import { c as createStyleSheet } from './JSS-67b5cff8.js';
6
- import { R as REFERRAL_CODES_PAGINATION_CONTEXT, a as REFERRAL_CODES_NAMESPACE, S as SET_CODE_COPIED, C as CopyTextView, u as useReferralCodes } from './copy-text-view-1d7c8f2a.js';
6
+ import { R as REFERRAL_CODES_PAGINATION_CONTEXT, a as REFERRAL_CODES_NAMESPACE, S as SET_CODE_COPIED, C as CopyTextView, u as useReferralCodes } from './copy-text-view-cfdca341.js';
7
7
  import { c as cjs } from './cjs-bdfb4486.js';
8
8
  import './mixins-f60a614c.js';
9
9
 
@@ -4,7 +4,7 @@ import './global-701bd5b0.js';
4
4
  import { f as $n, S as Sn, c as setUserIdentity, d as dist, X as Xe, p as setProgramId } from './index.module-5eb0926c.js';
5
5
  import './utils-334c1e34.js';
6
6
  import { c as createStyleSheet } from './JSS-67b5cff8.js';
7
- import { C as CopyTextView } from './copy-text-view-1d7c8f2a.js';
7
+ import { C as CopyTextView } from './copy-text-view-cfdca341.js';
8
8
  import './cjs-bdfb4486.js';
9
9
  import './mixins-f60a614c.js';
10
10
  import { G as GenericTableView } from './GenericTableView-706f5b56.js';
@@ -25,7 +25,7 @@ import { P as PortalProfileView } from './sqm-portal-profile-view-847526a2.js';
25
25
  import './utilities-292b61b9.js';
26
26
  import { P as PortalResetPasswordView } from './sqm-portal-reset-password-view-865655da.js';
27
27
  import { P as PortalVerifyEmailView } from './sqm-portal-verify-email-view-6c60df25.js';
28
- import { S as ShareButtonView, L as LeaderboardView, B as BigStatView, P as PortalFrameView, E as EditProfileView, u as useShareLink, a as useShareButton, b as useDemoBigStat, c as StatContainerView, d as PortalChangePasswordView, e as PortalLoginView, f as PortalRegisterView, T as TaskCardView, g as ProgressBarView, h as PoweredByImg$1, i as PortalFooterView, H as HeroView, R as ReferralIframeView, N as NameFieldsView, C as CheckboxFieldView, D as DropdownFieldView, I as InputFieldView, j as RewardExchangeView, r as rewardExchangeCustomErrorMsg, k as rewardExchangeLongText, l as rewardExchangeSelected, m as chooseAmountFixed, n as chooseAmountFixedNoDescription, o as chooseAmountVariable, p as chooseAmountVariableNoDescription, q as chooseAmountVariableDisabled, s as chooseAmountVariableUnavailable, t as confirmFixed, v as confirmVariable, w as redemptionError, x as queryError, y as success, z as successVariable, A as loading, F as empty$1, G as rewardExchange, J as CardFeedView, K as CouponCodeView, M as ProgressBar$2, O as autoColorScaleCss, Q as ShadowViewAddon } from './ShadowViewAddon-aac87ae0.js';
28
+ import { S as ShareButtonView, L as LeaderboardView, B as BigStatView, P as PortalFrameView, E as EditProfileView, u as useShareLink, a as useShareButton, b as useDemoBigStat, c as StatContainerView, d as PortalChangePasswordView, e as PortalLoginView, f as PortalRegisterView, T as TaskCardView, g as ProgressBarView, h as PoweredByImg$1, i as PortalFooterView, H as HeroView, R as ReferralIframeView, N as NameFieldsView, C as CheckboxFieldView, D as DropdownFieldView, I as InputFieldView, j as RewardExchangeView, r as rewardExchangeCustomErrorMsg, k as rewardExchangeLongText, l as rewardExchangeSelected, m as chooseAmountFixed, n as chooseAmountFixedNoDescription, o as chooseAmountVariable, p as chooseAmountVariableNoDescription, q as chooseAmountVariableDisabled, s as chooseAmountVariableUnavailable, t as confirmFixed, v as confirmVariable, w as redemptionError, x as queryError, y as success, z as successVariable, A as loading, F as empty$1, G as rewardExchange, J as CardFeedView, K as CouponCodeView, M as ProgressBar$2, O as autoColorScaleCss, Q as ShadowViewAddon } from './ShadowViewAddon-100e4928.js';
29
29
  import { P as PortalContainerView, a as PortalSectionView } from './sqm-portal-container-view-83df005d.js';
30
30
  import { O as OtherRegionSlotView, I as InvoiceTableView, T as TaxForm } from './sqm-invoice-table-view-7d1aa71f.js';
31
31