@saasquatch/mint-components 1.6.5-2 → 1.6.5-4

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 (34) hide show
  1. package/dist/cjs/sqm-referral-table_11.cjs.entry.js +2 -2
  2. package/dist/cjs/sqm-rewards-table_9.cjs.entry.js +4 -2
  3. package/dist/cjs/{useReferralTable-a12e59e2.js → useReferralTable-6a7549ee.js} +3 -1
  4. package/dist/collection/components/sqm-big-stat/sqm-big-stat.js +1 -1
  5. package/dist/collection/components/sqm-referral-table/sqm-referral-table.js +6 -3
  6. package/dist/collection/components/sqm-referral-table/useReferralTable.js +3 -1
  7. package/dist/collection/components/sqm-rewards-table/useRewardsTable.js +3 -1
  8. package/dist/esm/sqm-referral-table_11.entry.js +2 -2
  9. package/dist/esm/sqm-rewards-table_9.entry.js +4 -2
  10. package/dist/esm/{useReferralTable-4833fa0a.js → useReferralTable-c9f28060.js} +3 -1
  11. package/dist/esm-es5/sqm-referral-table_11.entry.js +1 -1
  12. package/dist/esm-es5/sqm-rewards-table_9.entry.js +1 -1
  13. package/dist/esm-es5/useReferralTable-c9f28060.js +1 -0
  14. package/dist/mint-components/mint-components.esm.js +1 -1
  15. package/dist/mint-components/p-00e5ab25.system.entry.js +1 -0
  16. package/dist/mint-components/p-2da37127.system.js +1 -0
  17. package/dist/mint-components/{p-bcf3aaac.js → p-5bf62060.js} +3 -1
  18. package/dist/mint-components/p-73ea8b98.system.entry.js +1 -0
  19. package/dist/mint-components/{p-4fbc4fda.entry.js → p-80c45f8b.entry.js} +4 -2
  20. package/dist/mint-components/p-b43a075f.system.js +1 -1
  21. package/dist/mint-components/p-df2bd81b.entry.js +1 -0
  22. package/dist/types/components/sqm-referral-table/sqm-referral-table.d.ts +5 -1
  23. package/dist/types/components.d.ts +6 -2
  24. package/docs/docs.docx +0 -0
  25. package/package.json +1 -1
  26. package/dist/esm-es5/useReferralTable-4833fa0a.js +0 -1
  27. package/dist/mint-components/p-0cc8e634.system.entry.js +0 -1
  28. package/dist/mint-components/p-10d851b2.system.entry.js +0 -1
  29. package/dist/mint-components/p-3c66df32.entry.js +0 -1
  30. package/dist/mint-components/p-3d25e48f.system.js +0 -1
  31. package/dist/types/global/android.d.ts +0 -7
  32. package/dist/types/global/demo.d.ts +0 -1
  33. package/dist/types/stories/features.d.ts +0 -4
  34. package/dist/types/stories/templates.d.ts +0 -4
@@ -14,7 +14,7 @@ const GenericTableView = require('./GenericTableView-9271483b.js');
14
14
  const reRender = require('./re-render-172958b1.js');
15
15
  const useChildElements = require('./useChildElements-6993ec39.js');
16
16
  const luxon = require('./luxon-479fc825.js');
17
- const useReferralTable = require('./useReferralTable-a12e59e2.js');
17
+ const useReferralTable = require('./useReferralTable-6a7549ee.js');
18
18
  const utils = require('./utils-6847bc06.js');
19
19
  const sqmTextSpanView = require('./sqm-text-span-view-c34577fa.js');
20
20
 
@@ -224,7 +224,7 @@ function useReferralTableDemo(props, emptyElement, loadingElement) {
224
224
  page: 0,
225
225
  });
226
226
  const tick = reRender.useRerenderListener();
227
- const mockData = stencilHooks_module.useMemo(() => mockReferralData(props.perPage), [props.perPage]);
227
+ const mockData = stencilHooks_module.useMemo(() => { var _a; return ((_a = props.demoData) === null || _a === void 0 ? void 0 : _a.mockData) || mockReferralData(props.perPage); }, [props.perPage]);
228
228
  const components = useChildElements.useChildElements();
229
229
  async function getComponentData(components) {
230
230
  var _a;
@@ -14,7 +14,7 @@ const GenericTableView = require('./GenericTableView-9271483b.js');
14
14
  const reRender = require('./re-render-172958b1.js');
15
15
  const useChildElements = require('./useChildElements-6993ec39.js');
16
16
  const luxon = require('./luxon-479fc825.js');
17
- const useReferralTable = require('./useReferralTable-a12e59e2.js');
17
+ const useReferralTable = require('./useReferralTable-6a7549ee.js');
18
18
  const utils = require('./utils-6847bc06.js');
19
19
 
20
20
  const mockRewardData = (count = 4) => {
@@ -136,7 +136,9 @@ const GET_REWARDS = index_module.dist.gql `
136
136
  count
137
137
  data {
138
138
  meta {
139
- integration
139
+ integration {
140
+ name
141
+ }
140
142
  message
141
143
  }
142
144
  id
@@ -48,7 +48,9 @@ const GET_REFERRER_DATA = index_module.dist.gql `
48
48
  globalRewardKey
49
49
  programRewardKey
50
50
  meta {
51
- integration
51
+ integration {
52
+ name
53
+ }
52
54
  message
53
55
  }
54
56
  rewardRedemptionTransactions {
@@ -148,7 +148,7 @@ export class BigStat {
148
148
  "mutable": false,
149
149
  "complexType": {
150
150
  "original": "DemoData<BigStatViewProps>",
151
- "resolved": "{ loading?: boolean; value?: number; statvalue?: string; flexReverse?: boolean; alignment?: \"left\" | \"right\" | \"center\"; labelSlot?: VNode; }",
151
+ "resolved": "{ value?: number; statvalue?: string; loading?: boolean; flexReverse?: boolean; alignment?: \"left\" | \"right\" | \"center\"; labelSlot?: VNode; }",
152
152
  "references": {
153
153
  "DemoData": {
154
154
  "location": "import",
@@ -258,8 +258,8 @@ export class ReferralTable {
258
258
  "type": "unknown",
259
259
  "mutable": false,
260
260
  "complexType": {
261
- "original": "DemoData<GenericTableViewProps>",
262
- "resolved": "{ states?: { hasPrev: boolean; hasNext: boolean; show: \"loading\" | \"empty\" | \"rows\"; namespace: string; }; data?: { textOverrides: { showLabels: boolean; prevLabel: string; moreLabel: string; }; hiddenColumns: string; mdBreakpoint: number; smBreakpoint: number; }; elements?: { columns: string[]; rows: VNode[][]; loading?: boolean; emptyElement?: VNode; loadingElement?: VNode; page?: number; }; }",
261
+ "original": "DemoData<GenericTableViewProps> & {\r\n mockData: { data: Referral[] };\r\n }",
262
+ "resolved": "Partial<Pick<GenericTableViewProps, \"states\" | \"data\" | \"elements\">> & { mockData: { data: Referral[]; }; }",
263
263
  "references": {
264
264
  "DemoData": {
265
265
  "location": "import",
@@ -268,6 +268,9 @@ export class ReferralTable {
268
268
  "GenericTableViewProps": {
269
269
  "location": "import",
270
270
  "path": "../../tables/GenericTableView"
271
+ },
272
+ "Referral": {
273
+ "location": "global"
271
274
  }
272
275
  }
273
276
  },
@@ -313,7 +316,7 @@ function useReferralTableDemo(props, emptyElement, loadingElement) {
313
316
  page: 0,
314
317
  });
315
318
  const tick = useRerenderListener();
316
- const mockData = useMemo(() => mockReferralData(props.perPage), [props.perPage]);
319
+ const mockData = useMemo(() => { var _a; return ((_a = props.demoData) === null || _a === void 0 ? void 0 : _a.mockData) || mockReferralData(props.perPage); }, [props.perPage]);
317
320
  const components = useChildElements();
318
321
  async function getComponentData(components) {
319
322
  var _a;
@@ -47,7 +47,9 @@ const GET_REFERRER_DATA = gql `
47
47
  globalRewardKey
48
48
  programRewardKey
49
49
  meta {
50
- integration
50
+ integration {
51
+ name
52
+ }
51
53
  message
52
54
  }
53
55
  rewardRedemptionTransactions {
@@ -28,7 +28,9 @@ const GET_REWARDS = gql `
28
28
  count
29
29
  data {
30
30
  meta {
31
- integration
31
+ integration {
32
+ name
33
+ }
32
34
  message
33
35
  }
34
36
  id
@@ -10,7 +10,7 @@ import { G as GenericTableView } from './GenericTableView-ce26115f.js';
10
10
  import { a as useRequestRerender, u as useRerenderListener } from './re-render-f406e379.js';
11
11
  import { u as useChildElements } from './useChildElements-11279a92.js';
12
12
  import { l as luxon } from './luxon-198ac0b0.js';
13
- import { u as useReferralTable, t as tryMethod } from './useReferralTable-4833fa0a.js';
13
+ import { u as useReferralTable, t as tryMethod } from './useReferralTable-c9f28060.js';
14
14
  import { l as luxonLocale } from './utils-334c1e34.js';
15
15
  import { T as TextSpanView } from './sqm-text-span-view-f1cacc75.js';
16
16
 
@@ -220,7 +220,7 @@ function useReferralTableDemo(props, emptyElement, loadingElement) {
220
220
  page: 0,
221
221
  });
222
222
  const tick = useRerenderListener();
223
- const mockData = useMemo(() => mockReferralData(props.perPage), [props.perPage]);
223
+ const mockData = useMemo(() => { var _a; return ((_a = props.demoData) === null || _a === void 0 ? void 0 : _a.mockData) || mockReferralData(props.perPage); }, [props.perPage]);
224
224
  const components = useChildElements();
225
225
  async function getComponentData(components) {
226
226
  var _a;
@@ -10,7 +10,7 @@ import { G as GenericTableView } from './GenericTableView-ce26115f.js';
10
10
  import { u as useRerenderListener, a as useRequestRerender } from './re-render-f406e379.js';
11
11
  import { u as useChildElements } from './useChildElements-11279a92.js';
12
12
  import { l as luxon } from './luxon-198ac0b0.js';
13
- import { g as generateUserError } from './useReferralTable-4833fa0a.js';
13
+ import { g as generateUserError } from './useReferralTable-c9f28060.js';
14
14
  import { l as luxonLocale } from './utils-334c1e34.js';
15
15
 
16
16
  const mockRewardData = (count = 4) => {
@@ -132,7 +132,9 @@ const GET_REWARDS = dist.gql `
132
132
  count
133
133
  data {
134
134
  meta {
135
- integration
135
+ integration {
136
+ name
137
+ }
136
138
  message
137
139
  }
138
140
  id
@@ -46,7 +46,9 @@ const GET_REFERRER_DATA = dist.gql `
46
46
  globalRewardKey
47
47
  programRewardKey
48
48
  meta {
49
- integration
49
+ integration {
50
+ name
51
+ }
50
52
  message
51
53
  }
52
54
  rewardRedemptionTransactions {
@@ -1 +1 @@
1
- var __assign=this&&this.__assign||function(){__assign=Object.assign||function(e){for(var t,r=1,a=arguments.length;r<a;r++){t=arguments[r];for(var n in t)if(Object.prototype.hasOwnProperty.call(t,n))e[n]=t[n]}return e};return __assign.apply(this,arguments)};var __awaiter=this&&this.__awaiter||function(e,t,r,a){function n(e){return e instanceof r?e:new r((function(t){t(e)}))}return new(r||(r=Promise))((function(r,s){function l(e){try{o(a.next(e))}catch(e){s(e)}}function i(e){try{o(a["throw"](e))}catch(e){s(e)}}function o(e){e.done?r(e.value):n(e.value).then(l,i)}o((a=a.apply(e,t||[])).next())}))};var __generator=this&&this.__generator||function(e,t){var r={label:0,sent:function(){if(s[0]&1)throw s[1];return s[1]},trys:[],ops:[]},a,n,s,l;return l={next:i(0),throw:i(1),return:i(2)},typeof Symbol==="function"&&(l[Symbol.iterator]=function(){return this}),l;function i(e){return function(t){return o([e,t])}}function o(l){if(a)throw new TypeError("Generator is already executing.");while(r)try{if(a=1,n&&(s=l[0]&2?n["return"]:l[0]?n["throw"]||((s=n["return"])&&s.call(n),0):n.next)&&!(s=s.call(n,l[1])).done)return s;if(n=0,s)l=[l[0]&2,s.value];switch(l[0]){case 0:case 1:s=l;break;case 4:r.label++;return{value:l[1],done:false};case 5:r.label++;n=l[1];l=[0];continue;case 7:l=r.ops.pop();r.trys.pop();continue;default:if(!(s=r.trys,s=s.length>0&&s[s.length-1])&&(l[0]===6||l[0]===2)){r=0;continue}if(l[0]===3&&(!s||l[1]>s[0]&&l[1]<s[3])){r.label=l[1];break}if(l[0]===6&&r.label<s[1]){r.label=s[1];s=l;break}if(s&&r.label<s[2]){r.label=s[2];r.ops.push(l);break}if(s[2])r.ops.pop();r.trys.pop();continue}l=t.call(e,r)}catch(e){l=[6,e];n=0}finally{a=s=0}if(l[0]&5)throw l[1];return{value:l[0]?l[1]:void 0,done:true}}};var __spreadArrays=this&&this.__spreadArrays||function(){for(var e=0,t=0,r=arguments.length;t<r;t++)e+=arguments[t].length;for(var a=Array(e),n=0,t=0;t<r;t++)for(var s=arguments[t],l=0,i=s.length;l<i;l++,n++)a[n]=s[l];return a};import{r as registerInstance,h as h$1,g as getElement,c as Host}from"./index-17b4da69.js";import{m as h,f as useReducer,k as useMemo,u as useEffect}from"./stencil-hooks.module-203eab48.js";import{i as intl}from"./global-09167b08.js";import"./use-callback-f03b0607.js";import{i as isDemo}from"./index.module-48cc9ee0.js";import{c as cjs}from"./cjs-bdfb4486.js";import"./mixins-f60a614c.js";import{c as createStyleSheet}from"./JSS-67b5cff8.js";import{G as GenericTableView}from"./GenericTableView-ce26115f.js";import{a as useRequestRerender,u as useRerenderListener}from"./re-render-f406e379.js";import{u as useChildElements}from"./useChildElements-11279a92.js";import{l as luxon}from"./luxon-198ac0b0.js";import{u as useReferralTable,t as tryMethod}from"./useReferralTable-4833fa0a.js";import{l as luxonLocale}from"./utils-334c1e34.js";import{T as TextSpanView}from"./sqm-text-span-view-f1cacc75.js";var mockReferralData=function(e){if(e===void 0){e=4}var t=__spreadArrays(Array(e)).map((function(){return getMockData()}));return{totalCount:6,count:e,referredByReferral:{dateConverted:null,dateReferralStarted:1643912659850,referrerUser:{firstName:"John",lastName:"Snow",rewards:[]}},data:t}};var statuses=[["AVAILABLE"],["PENDING"],["CANCELLED"],["EXPIRED"],["REDEEMED"]];var firstNames=["Rajesh","Pierre","Ji-Ho","Chinua","Charleston","Sally","Gael","Jill","Jane","Khadija"];var lastNames=["Smith","Parker","Kent","Chew","Stark","Banner","Jones","Odinson","Pym","Rogers"];var getMockData=function(){return{id:"5cae6b0fcc540e209db45b53",referredUser:{id:"5cae6b0ce4b0d81c67b78e82",accountId:"SPX1MZBIPTFL3E1H",firstName:firstNames[Math.floor(Math.random()*firstNames.length)],lastName:lastNames[Math.floor(Math.random()*lastNames.length)],email:"example.uexwltgh@mailosaur.io",programGoals:[]},shareLinkUsed:null,referralCodeUsed:"JIMBONEUTRON2",moderationStatus:"PENDING",dateConverted:Math.floor(Math.random()*10)>=5?luxon.DateTime.now().minus({days:6}).toMillis():null,dateFraudChecksCompleted:null,dateModerated:1558730033306,dateModified:1554934543447,dateReferralEnded:null,dateReferralPaid:null,dateReferralStarted:luxon.DateTime.now().minus({days:8}).toMillis(),dateUserModified:null,programId:"sam-partner-test-2",program:{id:"sam-partner-test-2",name:"Partner Program 2.0"},rewards:Math.floor(Math.random()*10)>=5?[{id:"5cae6b16cc540e209db45cfa",type:"CREDIT",value:1,unit:"POINT",name:"Partner Reward",dateGiven:1554934550726,dateExpires:null,dateCancelled:null,dateRedeemed:1637004373582,dateScheduledFor:null,fuelTankCode:null,fuelTankType:null,currency:null,prettyValue:"1 Point",statuses:statuses[Math.floor(Math.random()*statuses.length)],globalRewardKey:null,programRewardKey:"partnerReward",rewardRedemptionTransactions:{data:[{exchangedRewards:{data:[{prettyValue:"CAD10.00 Visa* Prepaid Card CAD",type:"INTEGRATION",fuelTankCode:null,globalRewardKey:"gc1"}]}}]}}]:[],childNodes:{data:[{data:{id:"5cae6b16cc540e209db45cb3",statuses:statuses[Math.floor(Math.random()*statuses.length)],type:"PCT_DISCOUNT",value:50},depth:1},{data:{id:"5cae6b16cc540e209db45cfa",statuses:statuses[Math.floor(Math.random()*statuses.length)],type:"CREDIT",value:1},depth:1}]}}};var ReferralTable=function(){function e(e){registerInstance(this,e);this.perPage=4;this.hideLabels=false;this.prevLabel="Prev";this.moreLabel="Next";this.showReferrer=false;this.hiddenColumns="0";this.smBreakpoint=599;this.mdBreakpoint=799;h(this)}e.prototype.disconnectedCallback=function(){};e.prototype.render=function(){var e=h$1(EmptySlot,null);var t=h$1(LoadingSlot,null);var r=isDemo()?useReferralTableDemo(this,e,t):useReferralTable(this,e,t),a=r.states,n=r.data,s=r.callbacks,l=r.elements;useRequestRerender([this.showReferrer,this.perPage]);return h$1(GenericTableView,{states:a,data:n,callbacks:s,elements:l})};return e}();function EmptySlot(){return h$1("slot",{name:"empty"},h$1("sqm-empty",{"empty-state-image":"https://res.cloudinary.com/saasquatch/image/upload/v1644000223/squatch-assets/empty_referral2.png","empty-state-header":"View your referral details","empty-state-text":"Refer a friend to view the status of your referrals and rewards earned"}))}function LoadingSlot(){return h$1("slot",{name:"loading"},h$1(LoadingRow,null),h$1(LoadingRow,null),h$1(LoadingRow,null),h$1(LoadingRow,null))}function LoadingRow(){return h$1("sqm-table-row",null,h$1("sqm-table-cell",{colspan:5},h$1("sl-skeleton",null)))}function useReferralTableDemo(e,t,r){var a=useReducer((function(e,t){return __assign(__assign({},e),t)}),{columns:[],rows:[],loading:false,page:0}),n=a[0],s=a[1];var l=useRerenderListener();var i=useMemo((function(){return mockReferralData(e.perPage)}),[e.perPage]);var o=useChildElements();function u(t){return __awaiter(this,void 0,void 0,(function(){var r,a,n,l,o,u,d,c,f,h,p,m,v,g;var _=this;return __generator(this,(function(b){switch(b.label){case 0:n=i===null||i===void 0?void 0:i.referredByReferral;l=e.showReferrer&&!!((r=i===null||i===void 0?void 0:i.referredByReferral)===null||r===void 0?void 0:r.dateReferralStarted);if(l){a=i.data.slice(0,e.perPage-1)}else{a=i.data.slice(0,e.perPage)}o=t.filter((function(e){var t,r;return e.slot!=="loading"&&e.slot!=="empty"&&((t=e===null||e===void 0?void 0:e.firstElementChild)===null||t===void 0?void 0:t.getAttribute("slot"))!=="loading"&&((r=e===null||e===void 0?void 0:e.firstElementChild)===null||r===void 0?void 0:r.getAttribute("slot"))!=="empty"}));u=o===null||o===void 0?void 0:o.map((function(e,t){return __awaiter(_,void 0,void 0,(function(){var r,a,n;return __generator(this,(function(s){a=(r=e===null||e===void 0?void 0:e.firstElementChild)===null||r===void 0?void 0:r.getAttribute("slot");if(e.tagName==="RAISINS-PLOP-TARGET"&&a!=="loading"&&a!=="empty"){e.setAttribute("slot","column-"+t);e.style.position="absolute";n=e.firstElementChild.childNodes[1];n.innerHTML="+";n.style.lineHeight="20px";return[2,tryMethod(e,(function(){return e.renderLabel(t)}))]}return[2,tryMethod(e,(function(){return e.renderLabel()}))]}))}))}));if(!l)return[3,2];c=o===null||o===void 0?void 0:o.map((function(e){return __awaiter(_,void 0,void 0,(function(){return __generator(this,(function(t){return[2,tryMethod(e,(function t(){return e.renderCell(n,e)}))]}))}))}));return[4,Promise.all(c)];case 1:d=b.sent();b.label=2;case 2:f=a===null||a===void 0?void 0:a.map((function(e){return __awaiter(_,void 0,void 0,(function(){var t,r;var a=this;return __generator(this,(function(n){switch(n.label){case 0:t=o===null||o===void 0?void 0:o.map((function(t){return __awaiter(a,void 0,void 0,(function(){return __generator(this,(function(r){return[2,tryMethod(t,(function(){return t.renderCell(e,undefined)}))]}))}))}));return[4,Promise.all(t)];case 1:r=n.sent();return[2,r]}}))}))}));p=f;if(!p)return[3,4];m=[[d]];return[4,Promise.all(f)];case 3:p=__spreadArrays.apply(void 0,m.concat([b.sent()])).filter((function(e){return e}));b.label=4;case 4:h=p;s({rows:h});g=u;if(!g)return[3,6];return[4,Promise.all(u)];case 5:g=b.sent();b.label=6;case 6:v=g;s({columns:v,loading:false,page:0});return[2]}}))}))}useEffect((function(){s({loading:true});(i===null||i===void 0?void 0:i.data)&&u(o)}),[i===null||i===void 0?void 0:i.data,o,l]);var d=cjs({states:{hasPrev:false,hasNext:false,loading:false,show:"rows"},callbacks:{prevPage:function(){return console.log("Prev")},nextPage:function(){return console.log("Next")}},data:{textOverrides:{showLabels:!e.hideLabels,prevLabel:e.prevLabel,moreLabel:e.moreLabel},hiddenColumns:e.hiddenColumns,referralData:[],mdBreakpoint:799,smBreakpoint:599},elements:{columns:n.columns,rows:n.rows,emptyElement:t,loadingElement:r}},e.demoData||{},{arrayMerge:function(e,t){return t}});return d}var ReferralTableCell=function(){function e(e){registerInstance(this,e);this.ignored=true;h(this)}e.prototype.disconnectedCallback=function(){};e.prototype.render=function(){return h$1("div",{innerHTML:this.innerTemplate})};return e}();var ReferralTableGenericColumn=function(){function e(e){registerInstance(this,e);h(this)}e.prototype.disconnectedCallback=function(){};e.prototype.renderCell=function(e){return __awaiter(this,void 0,void 0,(function(){return __generator(this,(function(e){return[2,h$1("sqm-referral-table-cell",{"inner-template":getElement(this).innerHTML})]}))}))};e.prototype.renderLabel=function(){return __awaiter(this,void 0,void 0,(function(){return __generator(this,(function(e){return[2,Promise.resolve(this.columnTitle)]}))}))};e.prototype.render=function(){useRequestRerender([this.columnTitle]);return h$1(Host,{style:{display:"none"}},h$1("slot",null))};return e}();var ReferralTableDateCell=function(){function e(e){registerInstance(this,e);this.ignored=true;this.locale="en";h(this)}e.prototype.disconnectedCallback=function(){};e.prototype.render=function(){var e;var t=!this.date?"-":(e=luxon.DateTime.fromMillis(this.date))===null||e===void 0?void 0:e.setLocale(luxonLocale(this.locale)).toLocaleString(luxon.DateTime.DATE_MED);return t};return e}();var ReferralTableDateColumn=function(){function e(e){registerInstance(this,e);this.columnTitle="Date converted";this.dateShown="dateConverted";h(this)}e.prototype.disconnectedCallback=function(){};e.prototype.renderCell=function(e,t){return __awaiter(this,void 0,void 0,(function(){return __generator(this,(function(r){return[2,h$1("sqm-referral-table-date-cell",{date:e[this.dateShown],locale:t})]}))}))};e.prototype.renderLabel=function(){return __awaiter(this,void 0,void 0,(function(){return __generator(this,(function(e){return[2,this.columnTitle]}))}))};e.prototype.renderReferrerCell=function(e){return __awaiter(this,void 0,void 0,(function(){return __generator(this,(function(t){return[2,h$1("sqm-referral-table-date-cell",{date:e[this.dateShown]})]}))}))};e.prototype.render=function(){useRequestRerender([this.dateShown,this.columnTitle]);return h$1(Host,{style:{display:"none"}})};return e}();var ReferralTableRewardsCell=function(){function e(e){registerInstance(this,e);this.locale="en"}e.prototype.render=function(){var e=this;var t;intl.locale=this.locale;var r={"@keyframes slideRight":{from:{opacity:0},to:{opacity:1}},DetailsContainer:{width:"100%",display:"flex","align-items":"center","justify-content":"space-between","margin-right":"var(--sl-spacing-small)","flex-wrap":"wrap"},Details:{"padding-bottom":"var(--sl-spacing-small)","max-width":"500px","&::part(header)":{padding:"var(--sl-spacing-x-small)",cursor:""+(this.hideDetails?"default":"pointer")},"&::part(content)":{padding:"var(--sl-spacing-x-small) var(--sl-spacing-medium)"},"&::part(base)":{opacity:"1"},"&::part(summary-icon)":{display:""+(this.hideDetails?"none":"flex")},"&::part(summary-icon[open])":{transform:"rotate(-90deg)",background:"red"}},BadgeContainer:{"& > :not(:last-child)":{"margin-right":"var(--sl-spacing-x-small)"}},BoldText:{"font-weight":"var(--sl-font-weight-semibold)"},StatusBadge:{paddingLeft:"var(--sl-spacing-xxx-small)","&::part(base)":{textAlign:"center",maxWidth:"170px",whiteSpace:"pre-line"}},RedeemBadge:{paddingLeft:"var(--sl-spacing-xxx-small)","&::part(base)":{background:"var(--sl-color-blue-600)"}}};var a=createStyleSheet(r);var n=a.toString();var s=function(e){var t=["REDEEMED","CANCELLED","EXPIRED","PENDING","AVAILABLE"];if(e.length===1)return e[0];return t.find((function(t){return e.includes(t)&&t}))};var l=function(e){switch(e){case"REDEEMED":return"primary";case"EXPIRED":return"danger";case"CANCELLED":return"danger";case"PENDING":return"warning";case"AVAILABLE":return"success"}};var i=function(t){return luxon.DateTime.fromMillis(t).setLocale(luxonLocale(e.locale)).toRelative().replace("in","").trim()};return(t=this.rewards)===null||t===void 0?void 0:t.map((function(t){var r=s(t.statuses);var o=l(r);var u=intl.formatMessage({id:"statusShortMessage",defaultMessage:e.statusText},{status:r});var d=intl.formatMessage({id:"statusLongMessage",defaultMessage:e.statusLongText},{status:r});return h$1("sl-details",{class:a.classes.Details,disabled:e.hideDetails},h$1("style",{type:"text/css"},n),h$1("div",{slot:"summary",class:a.classes.DetailsContainer},h$1(TextSpanView,{type:"p"},h$1("span",{class:a.classes.BoldText},t.prettyValue)),h$1("div",{class:a.classes.BadgeContainer},r==="PENDING"&&t.dateScheduledFor?h$1("sl-badge",{class:o==="primary"?a.classes.RedeemBadge:a.classes.StatusBadge,type:o,pill:true},intl.formatMessage({id:"pendingForText",defaultMessage:e.pendingForText},{status:u,date:i(t.dateScheduledFor)})):h$1("sl-badge",{class:o==="primary"?a.classes.RedeemBadge:a.classes.StatusBadge,type:o,pill:true},u),t.dateExpires&&r==="AVAILABLE"&&h$1("sl-badge",{class:o==="primary"?a.classes.RedeemBadge:a.classes.StatusBadge,type:"info",pill:true},e.expiringText," "+i(t.dateExpires)))),h$1("div",null,t.dateGiven&&h$1("div",null,h$1(TextSpanView,{type:"p"},e.rewardReceivedText," ",h$1("span",{class:a.classes.BoldText},luxon.DateTime.fromMillis(t.dateGiven).setLocale(luxonLocale(e.locale)).toLocaleString(luxon.DateTime.DATE_MED)))),r==="EXPIRED"&&t.dateExpires&&h$1("div",null,h$1(TextSpanView,{type:"p"},d," ",h$1("span",{class:a.classes.BoldText},luxon.DateTime.fromMillis(t.dateExpires).setLocale(luxonLocale(e.locale)).toLocaleString(luxon.DateTime.DATE_MED)))),r==="CANCELLED"&&t.dateCancelled&&h$1("div",null,h$1(TextSpanView,{type:"p"},d," ",h$1("span",{class:a.classes.BoldText},luxon.DateTime.fromMillis(t.dateCancelled).setLocale(luxonLocale(e.locale)).toLocaleString(luxon.DateTime.DATE_MED)))),r==="PENDING"&&t.dateScheduledFor&&h$1("div",null,h$1(TextSpanView,{type:"p"},d," ",h$1("span",{class:a.classes.BoldText},luxon.DateTime.fromMillis(t.dateScheduledFor).setLocale(luxonLocale(e.locale)).toLocaleString(luxon.DateTime.DATE_MED))))," ",r==="AVAILABLE"&&t.dateExpires&&h$1("div",null,h$1(TextSpanView,{type:"p"},d," ",h$1("span",{class:a.classes.BoldText},luxon.DateTime.fromMillis(t.dateExpires).setLocale(luxonLocale(e.locale)).toLocaleString(luxon.DateTime.DATE_MED)))),t.fuelTankCode&&h$1("div",null,e.fuelTankText," ",h$1("span",{class:a.classes.BoldText},t.fuelTankCode))))}))};return e}();var ReferralTableRewardsColumn=function(){function e(e){registerInstance(this,e);this.columnTitle="Rewards";this.statusText="{status, select, AVAILABLE {Available} CANCELLED {Cancelled} PENDING {Pending} EXPIRED {Expired} REDEEMED {Redeemed} other {Not available} }";this.statusLongText="{status, select, AVAILABLE {Reward expiring on} CANCELLED {Reward cancelled on} PENDING {Available on} EXPIRED {Reward expired on} other {Not available} }";this.fuelTankText="Your code is";this.rewardReceivedText="Reward received on";this.expiringText="Expiring in";this.pendingForText="{status} for {date}";this.hideDetails=false;h(this)}e.prototype.disconnectedCallback=function(){};e.prototype.renderCell=function(e,t){return __awaiter(this,void 0,void 0,(function(){return __generator(this,(function(r){return[2,h$1("sqm-referral-table-rewards-cell",{rewards:e.rewards,statusText:this.statusText,statusLongText:this.statusLongText,fuelTankText:this.fuelTankText,rewardReceivedText:this.rewardReceivedText,expiringText:this.expiringText,pendingForText:this.pendingForText,hideDetails:this.hideDetails,locale:t})]}))}))};e.prototype.renderLabel=function(){return __awaiter(this,void 0,void 0,(function(){return __generator(this,(function(e){return[2,this.columnTitle]}))}))};e.prototype.renderReferrerCell=function(e){return __awaiter(this,void 0,void 0,(function(){return __generator(this,(function(t){return[2,h$1("sqm-referral-table-rewards-cell",{rewards:e.rewards})]}))}))};e.prototype.render=function(){useRequestRerender([this.columnTitle,this.statusText,this.statusLongText,this.fuelTankText,this.rewardReceivedText,this.expiringText,this.pendingForText,this.hideDetails]);return h$1(Host,{style:{display:"none"}})};return e}();var style={Badge:{"&::part(base)":{fontSize:"var(--sl-font-size-small)",padding:"4px 8px",whiteSpace:"pre-line"}}};var sheet=createStyleSheet(style);var styleString=sheet.toString();var ReferralTableStatusCell=function(){function e(e){registerInstance(this,e)}e.prototype.render=function(){return h$1("div",null,h$1("style",{type:"text/css"},styleString),h$1("sl-badge",{pill:true,type:this.converted?"success":"warning",class:sheet.classes.Badge},this.statusText))};return e}();var ReferralTableStatusColumn=function(){function e(e){registerInstance(this,e);this.columnTitle="Status";this.convertedStatusText="Converted";this.inProgressStatusText="In Progress";h(this)}e.prototype.disconnectedCallback=function(){};e.prototype.renderCell=function(e){return __awaiter(this,void 0,void 0,(function(){var t;return __generator(this,(function(r){t=e.dateConverted?this.convertedStatusText:this.inProgressStatusText;return[2,h$1("sqm-referral-table-status-cell",{"status-text":t,converted:e.dateConverted?true:false})]}))}))};e.prototype.renderLabel=function(){return __awaiter(this,void 0,void 0,(function(){return __generator(this,(function(e){return[2,this.columnTitle]}))}))};e.prototype.renderReferrerCell=function(e){return __awaiter(this,void 0,void 0,(function(){var t;return __generator(this,(function(r){t=e.dateConverted?this.convertedStatusText:this.inProgressStatusText;return[2,h$1("sqm-referral-table-status-cell",{"status-text":t,converted:e.dateConverted?true:false})]}))}))};e.prototype.render=function(){useRequestRerender([this.columnTitle,this.convertedStatusText,this.inProgressStatusText]);return h$1(Host,{style:{display:"none"}})};return e}();var ReferralTableUserCell=function(){function e(e){registerInstance(this,e)}e.prototype.render=function(){return this.name};return e}();var ReferralTableUserColumn=function(){function e(e){registerInstance(this,e);this.columnTitle="Customer";this.anonymousUser="Anonymous User";this.deletedUser="Deleted User";h(this)}e.prototype.disconnectedCallback=function(){};e.prototype.renderCell=function(e){return __awaiter(this,void 0,void 0,(function(){var t,r,a,n,s,l,i,o,u;return __generator(this,(function(d){if(!(e===null||e===void 0?void 0:e.referredUser)&&!(e===null||e===void 0?void 0:e.referrerUser)){u=this.deletedUser}else if(!((t=e===null||e===void 0?void 0:e.referredUser)===null||t===void 0?void 0:t.firstName)&&!((r=e===null||e===void 0?void 0:e.referredUser)===null||r===void 0?void 0:r.lastName)&&!((a=e===null||e===void 0?void 0:e.referrerUser)===null||a===void 0?void 0:a.firstName)&&!((n=e===null||e===void 0?void 0:e.referrerUser)===null||n===void 0?void 0:n.lastName)){u=this.anonymousUser}else if(e===null||e===void 0?void 0:e.referrerUser){u=((s=e===null||e===void 0?void 0:e.referrerUser)===null||s===void 0?void 0:s.firstName)+" "+((l=e===null||e===void 0?void 0:e.referrerUser)===null||l===void 0?void 0:l.lastName)}else{u=((i=e===null||e===void 0?void 0:e.referredUser)===null||i===void 0?void 0:i.firstName)+" "+((o=e===null||e===void 0?void 0:e.referredUser)===null||o===void 0?void 0:o.lastName)}return[2,h$1("sqm-referral-table-user-cell",{name:u})]}))}))};e.prototype.renderLabel=function(){return __awaiter(this,void 0,void 0,(function(){return __generator(this,(function(e){return[2,this.columnTitle]}))}))};e.prototype.renderReferrerCell=function(e){return __awaiter(this,void 0,void 0,(function(){var t,r,a,n,s;return __generator(this,(function(l){if(!e){s=this.deletedUser}else if(!((t=e===null||e===void 0?void 0:e.referrerUser)===null||t===void 0?void 0:t.firstName)&&!((r=e.referrerUser)===null||r===void 0?void 0:r.lastName)){s=this.anonymousUser}else{s=((a=e===null||e===void 0?void 0:e.referrerUser)===null||a===void 0?void 0:a.firstName)+" "+((n=e===null||e===void 0?void 0:e.referrerUser)===null||n===void 0?void 0:n.lastName)}return[2,h$1("sqm-referral-table-user-cell",{name:s})]}))}))};e.prototype.render=function(){useRequestRerender([this.deletedUser,this.anonymousUser,this.columnTitle]);return h$1(Host,{style:{display:"none"}})};return e}();export{ReferralTable as sqm_referral_table,ReferralTableCell as sqm_referral_table_cell,ReferralTableGenericColumn as sqm_referral_table_column,ReferralTableDateCell as sqm_referral_table_date_cell,ReferralTableDateColumn as sqm_referral_table_date_column,ReferralTableRewardsCell as sqm_referral_table_rewards_cell,ReferralTableRewardsColumn as sqm_referral_table_rewards_column,ReferralTableStatusCell as sqm_referral_table_status_cell,ReferralTableStatusColumn as sqm_referral_table_status_column,ReferralTableUserCell as sqm_referral_table_user_cell,ReferralTableUserColumn as sqm_referral_table_user_column};
1
+ var __assign=this&&this.__assign||function(){__assign=Object.assign||function(e){for(var t,r=1,a=arguments.length;r<a;r++){t=arguments[r];for(var n in t)if(Object.prototype.hasOwnProperty.call(t,n))e[n]=t[n]}return e};return __assign.apply(this,arguments)};var __awaiter=this&&this.__awaiter||function(e,t,r,a){function n(e){return e instanceof r?e:new r((function(t){t(e)}))}return new(r||(r=Promise))((function(r,s){function l(e){try{o(a.next(e))}catch(e){s(e)}}function i(e){try{o(a["throw"](e))}catch(e){s(e)}}function o(e){e.done?r(e.value):n(e.value).then(l,i)}o((a=a.apply(e,t||[])).next())}))};var __generator=this&&this.__generator||function(e,t){var r={label:0,sent:function(){if(s[0]&1)throw s[1];return s[1]},trys:[],ops:[]},a,n,s,l;return l={next:i(0),throw:i(1),return:i(2)},typeof Symbol==="function"&&(l[Symbol.iterator]=function(){return this}),l;function i(e){return function(t){return o([e,t])}}function o(l){if(a)throw new TypeError("Generator is already executing.");while(r)try{if(a=1,n&&(s=l[0]&2?n["return"]:l[0]?n["throw"]||((s=n["return"])&&s.call(n),0):n.next)&&!(s=s.call(n,l[1])).done)return s;if(n=0,s)l=[l[0]&2,s.value];switch(l[0]){case 0:case 1:s=l;break;case 4:r.label++;return{value:l[1],done:false};case 5:r.label++;n=l[1];l=[0];continue;case 7:l=r.ops.pop();r.trys.pop();continue;default:if(!(s=r.trys,s=s.length>0&&s[s.length-1])&&(l[0]===6||l[0]===2)){r=0;continue}if(l[0]===3&&(!s||l[1]>s[0]&&l[1]<s[3])){r.label=l[1];break}if(l[0]===6&&r.label<s[1]){r.label=s[1];s=l;break}if(s&&r.label<s[2]){r.label=s[2];r.ops.push(l);break}if(s[2])r.ops.pop();r.trys.pop();continue}l=t.call(e,r)}catch(e){l=[6,e];n=0}finally{a=s=0}if(l[0]&5)throw l[1];return{value:l[0]?l[1]:void 0,done:true}}};var __spreadArrays=this&&this.__spreadArrays||function(){for(var e=0,t=0,r=arguments.length;t<r;t++)e+=arguments[t].length;for(var a=Array(e),n=0,t=0;t<r;t++)for(var s=arguments[t],l=0,i=s.length;l<i;l++,n++)a[n]=s[l];return a};import{r as registerInstance,h as h$1,g as getElement,c as Host}from"./index-17b4da69.js";import{m as h,f as useReducer,k as useMemo,u as useEffect}from"./stencil-hooks.module-203eab48.js";import{i as intl}from"./global-09167b08.js";import"./use-callback-f03b0607.js";import{i as isDemo}from"./index.module-48cc9ee0.js";import{c as cjs}from"./cjs-bdfb4486.js";import"./mixins-f60a614c.js";import{c as createStyleSheet}from"./JSS-67b5cff8.js";import{G as GenericTableView}from"./GenericTableView-ce26115f.js";import{a as useRequestRerender,u as useRerenderListener}from"./re-render-f406e379.js";import{u as useChildElements}from"./useChildElements-11279a92.js";import{l as luxon}from"./luxon-198ac0b0.js";import{u as useReferralTable,t as tryMethod}from"./useReferralTable-c9f28060.js";import{l as luxonLocale}from"./utils-334c1e34.js";import{T as TextSpanView}from"./sqm-text-span-view-f1cacc75.js";var mockReferralData=function(e){if(e===void 0){e=4}var t=__spreadArrays(Array(e)).map((function(){return getMockData()}));return{totalCount:6,count:e,referredByReferral:{dateConverted:null,dateReferralStarted:1643912659850,referrerUser:{firstName:"John",lastName:"Snow",rewards:[]}},data:t}};var statuses=[["AVAILABLE"],["PENDING"],["CANCELLED"],["EXPIRED"],["REDEEMED"]];var firstNames=["Rajesh","Pierre","Ji-Ho","Chinua","Charleston","Sally","Gael","Jill","Jane","Khadija"];var lastNames=["Smith","Parker","Kent","Chew","Stark","Banner","Jones","Odinson","Pym","Rogers"];var getMockData=function(){return{id:"5cae6b0fcc540e209db45b53",referredUser:{id:"5cae6b0ce4b0d81c67b78e82",accountId:"SPX1MZBIPTFL3E1H",firstName:firstNames[Math.floor(Math.random()*firstNames.length)],lastName:lastNames[Math.floor(Math.random()*lastNames.length)],email:"example.uexwltgh@mailosaur.io",programGoals:[]},shareLinkUsed:null,referralCodeUsed:"JIMBONEUTRON2",moderationStatus:"PENDING",dateConverted:Math.floor(Math.random()*10)>=5?luxon.DateTime.now().minus({days:6}).toMillis():null,dateFraudChecksCompleted:null,dateModerated:1558730033306,dateModified:1554934543447,dateReferralEnded:null,dateReferralPaid:null,dateReferralStarted:luxon.DateTime.now().minus({days:8}).toMillis(),dateUserModified:null,programId:"sam-partner-test-2",program:{id:"sam-partner-test-2",name:"Partner Program 2.0"},rewards:Math.floor(Math.random()*10)>=5?[{id:"5cae6b16cc540e209db45cfa",type:"CREDIT",value:1,unit:"POINT",name:"Partner Reward",dateGiven:1554934550726,dateExpires:null,dateCancelled:null,dateRedeemed:1637004373582,dateScheduledFor:null,fuelTankCode:null,fuelTankType:null,currency:null,prettyValue:"1 Point",statuses:statuses[Math.floor(Math.random()*statuses.length)],globalRewardKey:null,programRewardKey:"partnerReward",rewardRedemptionTransactions:{data:[{exchangedRewards:{data:[{prettyValue:"CAD10.00 Visa* Prepaid Card CAD",type:"INTEGRATION",fuelTankCode:null,globalRewardKey:"gc1"}]}}]}}]:[],childNodes:{data:[{data:{id:"5cae6b16cc540e209db45cb3",statuses:statuses[Math.floor(Math.random()*statuses.length)],type:"PCT_DISCOUNT",value:50},depth:1},{data:{id:"5cae6b16cc540e209db45cfa",statuses:statuses[Math.floor(Math.random()*statuses.length)],type:"CREDIT",value:1},depth:1}]}}};var ReferralTable=function(){function e(e){registerInstance(this,e);this.perPage=4;this.hideLabels=false;this.prevLabel="Prev";this.moreLabel="Next";this.showReferrer=false;this.hiddenColumns="0";this.smBreakpoint=599;this.mdBreakpoint=799;h(this)}e.prototype.disconnectedCallback=function(){};e.prototype.render=function(){var e=h$1(EmptySlot,null);var t=h$1(LoadingSlot,null);var r=isDemo()?useReferralTableDemo(this,e,t):useReferralTable(this,e,t),a=r.states,n=r.data,s=r.callbacks,l=r.elements;useRequestRerender([this.showReferrer,this.perPage]);return h$1(GenericTableView,{states:a,data:n,callbacks:s,elements:l})};return e}();function EmptySlot(){return h$1("slot",{name:"empty"},h$1("sqm-empty",{"empty-state-image":"https://res.cloudinary.com/saasquatch/image/upload/v1644000223/squatch-assets/empty_referral2.png","empty-state-header":"View your referral details","empty-state-text":"Refer a friend to view the status of your referrals and rewards earned"}))}function LoadingSlot(){return h$1("slot",{name:"loading"},h$1(LoadingRow,null),h$1(LoadingRow,null),h$1(LoadingRow,null),h$1(LoadingRow,null))}function LoadingRow(){return h$1("sqm-table-row",null,h$1("sqm-table-cell",{colspan:5},h$1("sl-skeleton",null)))}function useReferralTableDemo(e,t,r){var a=useReducer((function(e,t){return __assign(__assign({},e),t)}),{columns:[],rows:[],loading:false,page:0}),n=a[0],s=a[1];var l=useRerenderListener();var i=useMemo((function(){var t;return((t=e.demoData)===null||t===void 0?void 0:t.mockData)||mockReferralData(e.perPage)}),[e.perPage]);var o=useChildElements();function u(t){return __awaiter(this,void 0,void 0,(function(){var r,a,n,l,o,u,d,c,f,h,p,m,v,g;var _=this;return __generator(this,(function(b){switch(b.label){case 0:n=i===null||i===void 0?void 0:i.referredByReferral;l=e.showReferrer&&!!((r=i===null||i===void 0?void 0:i.referredByReferral)===null||r===void 0?void 0:r.dateReferralStarted);if(l){a=i.data.slice(0,e.perPage-1)}else{a=i.data.slice(0,e.perPage)}o=t.filter((function(e){var t,r;return e.slot!=="loading"&&e.slot!=="empty"&&((t=e===null||e===void 0?void 0:e.firstElementChild)===null||t===void 0?void 0:t.getAttribute("slot"))!=="loading"&&((r=e===null||e===void 0?void 0:e.firstElementChild)===null||r===void 0?void 0:r.getAttribute("slot"))!=="empty"}));u=o===null||o===void 0?void 0:o.map((function(e,t){return __awaiter(_,void 0,void 0,(function(){var r,a,n;return __generator(this,(function(s){a=(r=e===null||e===void 0?void 0:e.firstElementChild)===null||r===void 0?void 0:r.getAttribute("slot");if(e.tagName==="RAISINS-PLOP-TARGET"&&a!=="loading"&&a!=="empty"){e.setAttribute("slot","column-"+t);e.style.position="absolute";n=e.firstElementChild.childNodes[1];n.innerHTML="+";n.style.lineHeight="20px";return[2,tryMethod(e,(function(){return e.renderLabel(t)}))]}return[2,tryMethod(e,(function(){return e.renderLabel()}))]}))}))}));if(!l)return[3,2];c=o===null||o===void 0?void 0:o.map((function(e){return __awaiter(_,void 0,void 0,(function(){return __generator(this,(function(t){return[2,tryMethod(e,(function t(){return e.renderCell(n,e)}))]}))}))}));return[4,Promise.all(c)];case 1:d=b.sent();b.label=2;case 2:f=a===null||a===void 0?void 0:a.map((function(e){return __awaiter(_,void 0,void 0,(function(){var t,r;var a=this;return __generator(this,(function(n){switch(n.label){case 0:t=o===null||o===void 0?void 0:o.map((function(t){return __awaiter(a,void 0,void 0,(function(){return __generator(this,(function(r){return[2,tryMethod(t,(function(){return t.renderCell(e,undefined)}))]}))}))}));return[4,Promise.all(t)];case 1:r=n.sent();return[2,r]}}))}))}));p=f;if(!p)return[3,4];m=[[d]];return[4,Promise.all(f)];case 3:p=__spreadArrays.apply(void 0,m.concat([b.sent()])).filter((function(e){return e}));b.label=4;case 4:h=p;s({rows:h});g=u;if(!g)return[3,6];return[4,Promise.all(u)];case 5:g=b.sent();b.label=6;case 6:v=g;s({columns:v,loading:false,page:0});return[2]}}))}))}useEffect((function(){s({loading:true});(i===null||i===void 0?void 0:i.data)&&u(o)}),[i===null||i===void 0?void 0:i.data,o,l]);var d=cjs({states:{hasPrev:false,hasNext:false,loading:false,show:"rows"},callbacks:{prevPage:function(){return console.log("Prev")},nextPage:function(){return console.log("Next")}},data:{textOverrides:{showLabels:!e.hideLabels,prevLabel:e.prevLabel,moreLabel:e.moreLabel},hiddenColumns:e.hiddenColumns,referralData:[],mdBreakpoint:799,smBreakpoint:599},elements:{columns:n.columns,rows:n.rows,emptyElement:t,loadingElement:r}},e.demoData||{},{arrayMerge:function(e,t){return t}});return d}var ReferralTableCell=function(){function e(e){registerInstance(this,e);this.ignored=true;h(this)}e.prototype.disconnectedCallback=function(){};e.prototype.render=function(){return h$1("div",{innerHTML:this.innerTemplate})};return e}();var ReferralTableGenericColumn=function(){function e(e){registerInstance(this,e);h(this)}e.prototype.disconnectedCallback=function(){};e.prototype.renderCell=function(e){return __awaiter(this,void 0,void 0,(function(){return __generator(this,(function(e){return[2,h$1("sqm-referral-table-cell",{"inner-template":getElement(this).innerHTML})]}))}))};e.prototype.renderLabel=function(){return __awaiter(this,void 0,void 0,(function(){return __generator(this,(function(e){return[2,Promise.resolve(this.columnTitle)]}))}))};e.prototype.render=function(){useRequestRerender([this.columnTitle]);return h$1(Host,{style:{display:"none"}},h$1("slot",null))};return e}();var ReferralTableDateCell=function(){function e(e){registerInstance(this,e);this.ignored=true;this.locale="en";h(this)}e.prototype.disconnectedCallback=function(){};e.prototype.render=function(){var e;var t=!this.date?"-":(e=luxon.DateTime.fromMillis(this.date))===null||e===void 0?void 0:e.setLocale(luxonLocale(this.locale)).toLocaleString(luxon.DateTime.DATE_MED);return t};return e}();var ReferralTableDateColumn=function(){function e(e){registerInstance(this,e);this.columnTitle="Date converted";this.dateShown="dateConverted";h(this)}e.prototype.disconnectedCallback=function(){};e.prototype.renderCell=function(e,t){return __awaiter(this,void 0,void 0,(function(){return __generator(this,(function(r){return[2,h$1("sqm-referral-table-date-cell",{date:e[this.dateShown],locale:t})]}))}))};e.prototype.renderLabel=function(){return __awaiter(this,void 0,void 0,(function(){return __generator(this,(function(e){return[2,this.columnTitle]}))}))};e.prototype.renderReferrerCell=function(e){return __awaiter(this,void 0,void 0,(function(){return __generator(this,(function(t){return[2,h$1("sqm-referral-table-date-cell",{date:e[this.dateShown]})]}))}))};e.prototype.render=function(){useRequestRerender([this.dateShown,this.columnTitle]);return h$1(Host,{style:{display:"none"}})};return e}();var ReferralTableRewardsCell=function(){function e(e){registerInstance(this,e);this.locale="en"}e.prototype.render=function(){var e=this;var t;intl.locale=this.locale;var r={"@keyframes slideRight":{from:{opacity:0},to:{opacity:1}},DetailsContainer:{width:"100%",display:"flex","align-items":"center","justify-content":"space-between","margin-right":"var(--sl-spacing-small)","flex-wrap":"wrap"},Details:{"padding-bottom":"var(--sl-spacing-small)","max-width":"500px","&::part(header)":{padding:"var(--sl-spacing-x-small)",cursor:""+(this.hideDetails?"default":"pointer")},"&::part(content)":{padding:"var(--sl-spacing-x-small) var(--sl-spacing-medium)"},"&::part(base)":{opacity:"1"},"&::part(summary-icon)":{display:""+(this.hideDetails?"none":"flex")},"&::part(summary-icon[open])":{transform:"rotate(-90deg)",background:"red"}},BadgeContainer:{"& > :not(:last-child)":{"margin-right":"var(--sl-spacing-x-small)"}},BoldText:{"font-weight":"var(--sl-font-weight-semibold)"},StatusBadge:{paddingLeft:"var(--sl-spacing-xxx-small)","&::part(base)":{textAlign:"center",maxWidth:"170px",whiteSpace:"pre-line"}},RedeemBadge:{paddingLeft:"var(--sl-spacing-xxx-small)","&::part(base)":{background:"var(--sl-color-blue-600)"}}};var a=createStyleSheet(r);var n=a.toString();var s=function(e){var t=["REDEEMED","CANCELLED","EXPIRED","PENDING","AVAILABLE"];if(e.length===1)return e[0];return t.find((function(t){return e.includes(t)&&t}))};var l=function(e){switch(e){case"REDEEMED":return"primary";case"EXPIRED":return"danger";case"CANCELLED":return"danger";case"PENDING":return"warning";case"AVAILABLE":return"success"}};var i=function(t){return luxon.DateTime.fromMillis(t).setLocale(luxonLocale(e.locale)).toRelative().replace("in","").trim()};return(t=this.rewards)===null||t===void 0?void 0:t.map((function(t){var r=s(t.statuses);var o=l(r);var u=intl.formatMessage({id:"statusShortMessage",defaultMessage:e.statusText},{status:r});var d=intl.formatMessage({id:"statusLongMessage",defaultMessage:e.statusLongText},{status:r});return h$1("sl-details",{class:a.classes.Details,disabled:e.hideDetails},h$1("style",{type:"text/css"},n),h$1("div",{slot:"summary",class:a.classes.DetailsContainer},h$1(TextSpanView,{type:"p"},h$1("span",{class:a.classes.BoldText},t.prettyValue)),h$1("div",{class:a.classes.BadgeContainer},r==="PENDING"&&t.dateScheduledFor?h$1("sl-badge",{class:o==="primary"?a.classes.RedeemBadge:a.classes.StatusBadge,type:o,pill:true},intl.formatMessage({id:"pendingForText",defaultMessage:e.pendingForText},{status:u,date:i(t.dateScheduledFor)})):h$1("sl-badge",{class:o==="primary"?a.classes.RedeemBadge:a.classes.StatusBadge,type:o,pill:true},u),t.dateExpires&&r==="AVAILABLE"&&h$1("sl-badge",{class:o==="primary"?a.classes.RedeemBadge:a.classes.StatusBadge,type:"info",pill:true},e.expiringText," "+i(t.dateExpires)))),h$1("div",null,t.dateGiven&&h$1("div",null,h$1(TextSpanView,{type:"p"},e.rewardReceivedText," ",h$1("span",{class:a.classes.BoldText},luxon.DateTime.fromMillis(t.dateGiven).setLocale(luxonLocale(e.locale)).toLocaleString(luxon.DateTime.DATE_MED)))),r==="EXPIRED"&&t.dateExpires&&h$1("div",null,h$1(TextSpanView,{type:"p"},d," ",h$1("span",{class:a.classes.BoldText},luxon.DateTime.fromMillis(t.dateExpires).setLocale(luxonLocale(e.locale)).toLocaleString(luxon.DateTime.DATE_MED)))),r==="CANCELLED"&&t.dateCancelled&&h$1("div",null,h$1(TextSpanView,{type:"p"},d," ",h$1("span",{class:a.classes.BoldText},luxon.DateTime.fromMillis(t.dateCancelled).setLocale(luxonLocale(e.locale)).toLocaleString(luxon.DateTime.DATE_MED)))),r==="PENDING"&&t.dateScheduledFor&&h$1("div",null,h$1(TextSpanView,{type:"p"},d," ",h$1("span",{class:a.classes.BoldText},luxon.DateTime.fromMillis(t.dateScheduledFor).setLocale(luxonLocale(e.locale)).toLocaleString(luxon.DateTime.DATE_MED))))," ",r==="AVAILABLE"&&t.dateExpires&&h$1("div",null,h$1(TextSpanView,{type:"p"},d," ",h$1("span",{class:a.classes.BoldText},luxon.DateTime.fromMillis(t.dateExpires).setLocale(luxonLocale(e.locale)).toLocaleString(luxon.DateTime.DATE_MED)))),t.fuelTankCode&&h$1("div",null,e.fuelTankText," ",h$1("span",{class:a.classes.BoldText},t.fuelTankCode))))}))};return e}();var ReferralTableRewardsColumn=function(){function e(e){registerInstance(this,e);this.columnTitle="Rewards";this.statusText="{status, select, AVAILABLE {Available} CANCELLED {Cancelled} PENDING {Pending} EXPIRED {Expired} REDEEMED {Redeemed} other {Not available} }";this.statusLongText="{status, select, AVAILABLE {Reward expiring on} CANCELLED {Reward cancelled on} PENDING {Available on} EXPIRED {Reward expired on} other {Not available} }";this.fuelTankText="Your code is";this.rewardReceivedText="Reward received on";this.expiringText="Expiring in";this.pendingForText="{status} for {date}";this.hideDetails=false;h(this)}e.prototype.disconnectedCallback=function(){};e.prototype.renderCell=function(e,t){return __awaiter(this,void 0,void 0,(function(){return __generator(this,(function(r){return[2,h$1("sqm-referral-table-rewards-cell",{rewards:e.rewards,statusText:this.statusText,statusLongText:this.statusLongText,fuelTankText:this.fuelTankText,rewardReceivedText:this.rewardReceivedText,expiringText:this.expiringText,pendingForText:this.pendingForText,hideDetails:this.hideDetails,locale:t})]}))}))};e.prototype.renderLabel=function(){return __awaiter(this,void 0,void 0,(function(){return __generator(this,(function(e){return[2,this.columnTitle]}))}))};e.prototype.renderReferrerCell=function(e){return __awaiter(this,void 0,void 0,(function(){return __generator(this,(function(t){return[2,h$1("sqm-referral-table-rewards-cell",{rewards:e.rewards})]}))}))};e.prototype.render=function(){useRequestRerender([this.columnTitle,this.statusText,this.statusLongText,this.fuelTankText,this.rewardReceivedText,this.expiringText,this.pendingForText,this.hideDetails]);return h$1(Host,{style:{display:"none"}})};return e}();var style={Badge:{"&::part(base)":{fontSize:"var(--sl-font-size-small)",padding:"4px 8px",whiteSpace:"pre-line"}}};var sheet=createStyleSheet(style);var styleString=sheet.toString();var ReferralTableStatusCell=function(){function e(e){registerInstance(this,e)}e.prototype.render=function(){return h$1("div",null,h$1("style",{type:"text/css"},styleString),h$1("sl-badge",{pill:true,type:this.converted?"success":"warning",class:sheet.classes.Badge},this.statusText))};return e}();var ReferralTableStatusColumn=function(){function e(e){registerInstance(this,e);this.columnTitle="Status";this.convertedStatusText="Converted";this.inProgressStatusText="In Progress";h(this)}e.prototype.disconnectedCallback=function(){};e.prototype.renderCell=function(e){return __awaiter(this,void 0,void 0,(function(){var t;return __generator(this,(function(r){t=e.dateConverted?this.convertedStatusText:this.inProgressStatusText;return[2,h$1("sqm-referral-table-status-cell",{"status-text":t,converted:e.dateConverted?true:false})]}))}))};e.prototype.renderLabel=function(){return __awaiter(this,void 0,void 0,(function(){return __generator(this,(function(e){return[2,this.columnTitle]}))}))};e.prototype.renderReferrerCell=function(e){return __awaiter(this,void 0,void 0,(function(){var t;return __generator(this,(function(r){t=e.dateConverted?this.convertedStatusText:this.inProgressStatusText;return[2,h$1("sqm-referral-table-status-cell",{"status-text":t,converted:e.dateConverted?true:false})]}))}))};e.prototype.render=function(){useRequestRerender([this.columnTitle,this.convertedStatusText,this.inProgressStatusText]);return h$1(Host,{style:{display:"none"}})};return e}();var ReferralTableUserCell=function(){function e(e){registerInstance(this,e)}e.prototype.render=function(){return this.name};return e}();var ReferralTableUserColumn=function(){function e(e){registerInstance(this,e);this.columnTitle="Customer";this.anonymousUser="Anonymous User";this.deletedUser="Deleted User";h(this)}e.prototype.disconnectedCallback=function(){};e.prototype.renderCell=function(e){return __awaiter(this,void 0,void 0,(function(){var t,r,a,n,s,l,i,o,u;return __generator(this,(function(d){if(!(e===null||e===void 0?void 0:e.referredUser)&&!(e===null||e===void 0?void 0:e.referrerUser)){u=this.deletedUser}else if(!((t=e===null||e===void 0?void 0:e.referredUser)===null||t===void 0?void 0:t.firstName)&&!((r=e===null||e===void 0?void 0:e.referredUser)===null||r===void 0?void 0:r.lastName)&&!((a=e===null||e===void 0?void 0:e.referrerUser)===null||a===void 0?void 0:a.firstName)&&!((n=e===null||e===void 0?void 0:e.referrerUser)===null||n===void 0?void 0:n.lastName)){u=this.anonymousUser}else if(e===null||e===void 0?void 0:e.referrerUser){u=((s=e===null||e===void 0?void 0:e.referrerUser)===null||s===void 0?void 0:s.firstName)+" "+((l=e===null||e===void 0?void 0:e.referrerUser)===null||l===void 0?void 0:l.lastName)}else{u=((i=e===null||e===void 0?void 0:e.referredUser)===null||i===void 0?void 0:i.firstName)+" "+((o=e===null||e===void 0?void 0:e.referredUser)===null||o===void 0?void 0:o.lastName)}return[2,h$1("sqm-referral-table-user-cell",{name:u})]}))}))};e.prototype.renderLabel=function(){return __awaiter(this,void 0,void 0,(function(){return __generator(this,(function(e){return[2,this.columnTitle]}))}))};e.prototype.renderReferrerCell=function(e){return __awaiter(this,void 0,void 0,(function(){var t,r,a,n,s;return __generator(this,(function(l){if(!e){s=this.deletedUser}else if(!((t=e===null||e===void 0?void 0:e.referrerUser)===null||t===void 0?void 0:t.firstName)&&!((r=e.referrerUser)===null||r===void 0?void 0:r.lastName)){s=this.anonymousUser}else{s=((a=e===null||e===void 0?void 0:e.referrerUser)===null||a===void 0?void 0:a.firstName)+" "+((n=e===null||e===void 0?void 0:e.referrerUser)===null||n===void 0?void 0:n.lastName)}return[2,h$1("sqm-referral-table-user-cell",{name:s})]}))}))};e.prototype.render=function(){useRequestRerender([this.deletedUser,this.anonymousUser,this.columnTitle]);return h$1(Host,{style:{display:"none"}})};return e}();export{ReferralTable as sqm_referral_table,ReferralTableCell as sqm_referral_table_cell,ReferralTableGenericColumn as sqm_referral_table_column,ReferralTableDateCell as sqm_referral_table_date_cell,ReferralTableDateColumn as sqm_referral_table_date_column,ReferralTableRewardsCell as sqm_referral_table_rewards_cell,ReferralTableRewardsColumn as sqm_referral_table_rewards_column,ReferralTableStatusCell as sqm_referral_table_status_cell,ReferralTableStatusColumn as sqm_referral_table_status_column,ReferralTableUserCell as sqm_referral_table_user_cell,ReferralTableUserColumn as sqm_referral_table_user_column};
@@ -1 +1 @@
1
- var __makeTemplateObject=this&&this.__makeTemplateObject||function(e,t){if(Object.defineProperty){Object.defineProperty(e,"raw",{value:t})}else{e.raw=t}return e};var __assign=this&&this.__assign||function(){__assign=Object.assign||function(e){for(var t,r=1,n=arguments.length;r<n;r++){t=arguments[r];for(var a in t)if(Object.prototype.hasOwnProperty.call(t,a))e[a]=t[a]}return e};return __assign.apply(this,arguments)};var __awaiter=this&&this.__awaiter||function(e,t,r,n){function a(e){return e instanceof r?e:new r((function(t){t(e)}))}return new(r||(r=Promise))((function(r,l){function i(e){try{o(n.next(e))}catch(e){l(e)}}function s(e){try{o(n["throw"](e))}catch(e){l(e)}}function o(e){e.done?r(e.value):a(e.value).then(i,s)}o((n=n.apply(e,t||[])).next())}))};var __generator=this&&this.__generator||function(e,t){var r={label:0,sent:function(){if(l[0]&1)throw l[1];return l[1]},trys:[],ops:[]},n,a,l,i;return i={next:s(0),throw:s(1),return:s(2)},typeof Symbol==="function"&&(i[Symbol.iterator]=function(){return this}),i;function s(e){return function(t){return o([e,t])}}function o(i){if(n)throw new TypeError("Generator is already executing.");while(r)try{if(n=1,a&&(l=i[0]&2?a["return"]:i[0]?a["throw"]||((l=a["return"])&&l.call(a),0):a.next)&&!(l=l.call(a,i[1])).done)return l;if(a=0,l)i=[i[0]&2,l.value];switch(i[0]){case 0:case 1:l=i;break;case 4:r.label++;return{value:i[1],done:false};case 5:r.label++;a=i[1];i=[0];continue;case 7:i=r.ops.pop();r.trys.pop();continue;default:if(!(l=r.trys,l=l.length>0&&l[l.length-1])&&(i[0]===6||i[0]===2)){r=0;continue}if(i[0]===3&&(!l||i[1]>l[0]&&i[1]<l[3])){r.label=i[1];break}if(i[0]===6&&r.label<l[1]){r.label=l[1];l=i;break}if(l&&r.label<l[2]){r.label=l[2];r.ops.push(i);break}if(l[2])r.ops.pop();r.trys.pop();continue}i=t.call(e,r)}catch(e){i=[6,e];a=0}finally{n=l=0}if(i[0]&5)throw i[1];return{value:i[0]?i[1]:void 0,done:true}}};var __spreadArrays=this&&this.__spreadArrays||function(){for(var e=0,t=0,r=arguments.length;t<r;t++)e+=arguments[t].length;for(var n=Array(e),a=0,t=0;t<r;t++)for(var l=arguments[t],i=0,s=l.length;i<s;i++,a++)n[a]=l[i];return n};import{h,r as registerInstance,c as Host}from"./index-17b4da69.js";import{b as browser,f as useReducer,u as useEffect,m as h$1,k as useMemo}from"./stencil-hooks.module-203eab48.js";import{i as intl}from"./global-09167b08.js";import"./use-callback-f03b0607.js";import{d as dist,N,O,x,v as vn,i as isDemo}from"./index.module-48cc9ee0.js";import{c as cjs}from"./cjs-bdfb4486.js";import"./mixins-f60a614c.js";import{c as createStyleSheet}from"./JSS-67b5cff8.js";import{G as GenericTableView}from"./GenericTableView-ce26115f.js";import{u as useRerenderListener,a as useRequestRerender}from"./re-render-f406e379.js";import{u as useChildElements}from"./useChildElements-11279a92.js";import{l as luxon}from"./luxon-198ac0b0.js";import{g as generateUserError}from"./useReferralTable-4833fa0a.js";import{l as luxonLocale}from"./utils-334c1e34.js";var mockRewardData=function(e){if(e===void 0){e=4}var t=__spreadArrays(Array(e)).map((function(){return getMockData()}));return{data:t}};var units=["POINT","TICKET","GIFT"];var prettyValues=["Points","Tickets","Gifts"];var statuses=["AVAILABLE","PENDING","CANCELLED","EXPIRED","REDEEMED"];var pendingReasons=["US_TAX","SCHEDULED","UNHANDLED_ERROR"];var getMockData=function(){var e=false;var t=0;var r;var n;var a;var l;var i=luxon.DateTime.now();var s=Math.floor(Math.random()*3);var o=statuses[Math.floor(Math.random()*5)];var d=units[s];var u=prettyValues[s];var c=Math.floor(Math.random()*100)+2;if(o==="AVAILABLE"){t=Math.floor(Math.random()*c);l=Math.floor(Math.random()*10)<3?i.plus({days:7}).toMillis():null}else if(o==="EXPIRED"){e=true;t=Math.floor(Math.random()*c);l=i.minus({days:1}).toMillis()}else if(o==="PENDING"){var p=pendingReasons[Math.floor(Math.random()*3)];r=[p];if(p==="SCHEDULED"){n=i.plus({days:6}).toMillis()}}else if(o==="REDEEMED"){e=true}else{e=true;a=i.minus({days:2}).toMillis()}var h=Math.floor(Math.random()*3);return{id:"61f7878e096c9265de88b46f",type:"CREDIT",value:c,unit:d,name:null,dateGiven:i.minus({days:3}).toMillis(),dateExpires:l,dateCancelled:a,dateRedeemed:o==="REDEEMED"?i.plus({days:2}).toMillis():null,dateScheduledFor:n,fuelTankCode:null,fuelTankType:null,currency:null,prettyValue:c+" "+u,prettyValueNumber:""+c,prettyAvailableNumber:e?"0":""+(c-t),prettyRedeemedNumber:e&&!t?"0":""+t,programId:h===1?"program-id":null,program:{name:"My Program"},statuses:[o],pendingReasons:r,globalRewardKey:null,programRewardKey:null,rewardSource:h===1?"AUTOMATED":"MANUAL",prettyRedeemedCredit:t+" "+u,prettyAssignedCredit:c+" "+u,prettyAvailableValue:e?"0 "+u:c-t+" "+u,exchangedRewardRedemptionTransaction:h===2?{id:"61f7878e096c9265de88b414",creditRedeemed:50,prettyRedeemedCredit:"50 Tokens",unit:"TOKEN",dateRedeemed:1643612046258}:null,referral:null,rewardRedemptionTransactions:{data:[]}}};var debug=browser("sq:useRewardsTable");var CSS_NAMESPACE="sqm-rewards-table";var GET_REWARDS=dist.gql(templateObject_1||(templateObject_1=__makeTemplateObject(['\n query getRewards(\n $limit: Int!\n $offset: Int!\n $rewardFilter: RewardFilterInput\n $locale: RSLocale\n ) {\n viewer {\n ... on User {\n id\n rewards(\n limit: $limit\n offset: $offset\n filter: $rewardFilter\n sortBy: { field: "dateCreated", order: DESC }\n ) {\n totalCount\n count\n data {\n meta {\n integration\n message\n }\n id\n type\n value\n unit\n name\n dateGiven\n dateCreated\n dateExpires\n dateCancelled\n dateRedeemed\n dateScheduledFor\n fuelTankCode\n fuelTankType\n currency\n prettyValue(locale: $locale)\n prettyValueNumber: prettyValue(\n formatType: NUMBER_FORMATTED\n locale: $locale\n )\n prettyAvailableNumber: prettyAvailableValue(\n formatType: NUMBER_FORMATTED\n locale: $locale\n )\n prettyRedeemedNumber: prettyRedeemedCredit(\n formatType: NUMBER_FORMATTED\n locale: $locale\n )\n programId\n program {\n name\n }\n statuses\n pendingReasons\n globalRewardKey\n programRewardKey\n rewardSource\n prettyRedeemedCredit(locale: $locale)\n prettyAssignedCredit(locale: $locale)\n prettyAvailableValue(locale: $locale)\n exchangedRewardRedemptionTransaction {\n id\n creditRedeemed\n prettyRedeemedCredit(locale: $locale)\n unit\n dateRedeemed\n }\n referral {\n id\n referrerUser {\n id\n firstName\n lastName\n }\n referredUser {\n id\n firstName\n lastName\n }\n }\n rewardRedemptionTransactions {\n data {\n exchangedRewards {\n data {\n prettyValue(locale: $locale)\n type\n fuelTankCode\n globalRewardKey\n }\n }\n }\n }\n }\n }\n }\n }\n }\n'],['\n query getRewards(\n $limit: Int!\n $offset: Int!\n $rewardFilter: RewardFilterInput\n $locale: RSLocale\n ) {\n viewer {\n ... on User {\n id\n rewards(\n limit: $limit\n offset: $offset\n filter: $rewardFilter\n sortBy: { field: "dateCreated", order: DESC }\n ) {\n totalCount\n count\n data {\n meta {\n integration\n message\n }\n id\n type\n value\n unit\n name\n dateGiven\n dateCreated\n dateExpires\n dateCancelled\n dateRedeemed\n dateScheduledFor\n fuelTankCode\n fuelTankType\n currency\n prettyValue(locale: $locale)\n prettyValueNumber: prettyValue(\n formatType: NUMBER_FORMATTED\n locale: $locale\n )\n prettyAvailableNumber: prettyAvailableValue(\n formatType: NUMBER_FORMATTED\n locale: $locale\n )\n prettyRedeemedNumber: prettyRedeemedCredit(\n formatType: NUMBER_FORMATTED\n locale: $locale\n )\n programId\n program {\n name\n }\n statuses\n pendingReasons\n globalRewardKey\n programRewardKey\n rewardSource\n prettyRedeemedCredit(locale: $locale)\n prettyAssignedCredit(locale: $locale)\n prettyAvailableValue(locale: $locale)\n exchangedRewardRedemptionTransaction {\n id\n creditRedeemed\n prettyRedeemedCredit(locale: $locale)\n unit\n dateRedeemed\n }\n referral {\n id\n referrerUser {\n id\n firstName\n lastName\n }\n referredUser {\n id\n firstName\n lastName\n }\n }\n rewardRedemptionTransactions {\n data {\n exchangedRewards {\n data {\n prettyValue(locale: $locale)\n type\n fuelTankCode\n globalRewardKey\n }\n }\n }\n }\n }\n }\n }\n }\n }\n'])));function useRewardsTable(e,t,r){var n,a;var l=N();var i=O();var s=x();var o=(n=e.programId)!==null&&n!==void 0?n:i;var d=__assign({userId_eq:l===null||l===void 0?void 0:l.id,accountId_eq:l===null||l===void 0?void 0:l.accountId},o?o==="classic"?{programId_exists:false}:{programId_eq:o}:{});var u=useReducer((function(e,t){return __assign(__assign({},e),t)}),{columns:[],rows:[],loading:false,page:0}),c=u[0],p=u[1];var h=vn(GET_REWARDS,(function(e){var t;return(t=e===null||e===void 0?void 0:e.viewer)===null||t===void 0?void 0:t.rewards}),{limit:e.perPage,offset:0},{rewardFilter:d,locale:s},!(l===null||l===void 0?void 0:l.jwt)),m=h.envelope,f=h.states,v=h.callbacks;var g=useRerenderListener();var y=useChildElements();var w=m===null||m===void 0?void 0:m.data;function b(e){return __awaiter(this,void 0,void 0,(function(){var t,r,n,a,l,i,o;var d=this;return __generator(this,(function(u){switch(u.label){case 0:t=e.filter((function(e){return e.slot!=="loading"&&e.slot!=="empty"}));r=t===null||t===void 0?void 0:t.map((function(e){return __awaiter(d,void 0,void 0,(function(){return __generator(this,(function(t){return[2,tryMethod(e,(function(){return e.renderLabel()}))]}))}))}));n=w===null||w===void 0?void 0:w.map((function(e){return __awaiter(d,void 0,void 0,(function(){var r,n;var a=this;return __generator(this,(function(l){switch(l.label){case 0:r=t===null||t===void 0?void 0:t.map((function(t){return __awaiter(a,void 0,void 0,(function(){return __generator(this,(function(r){return[2,tryMethod(t,(function(){return t.renderCell(e,s)}))]}))}))}));return[4,Promise.all(r)];case 1:n=l.sent();return[2,n]}}))}))}));l=n;if(!l)return[3,2];return[4,Promise.all(n)];case 1:l=u.sent().filter((function(e){return e}));u.label=2;case 2:a=l;p({rows:a});o=r;if(!o)return[3,4];return[4,Promise.all(r)];case 3:o=u.sent();u.label=4;case 4:i=o;p({columns:i,loading:false,page:f.currentPage});return[2]}}))}))}useEffect((function(){p({loading:true});m&&b(y)}),[m,y,g]);var T=!((a=c===null||c===void 0?void 0:c.rows)===null||a===void 0?void 0:a.length)&&!(w===null||w===void 0?void 0:w.length);var R=f.loading||c.loading?"loading":T?"empty":"rows";return{states:{hasNext:f.currentPage<f.pageCount-1,hasPrev:f.currentPage>0,show:R,namespace:CSS_NAMESPACE},data:{textOverrides:{showLabels:!e.hideLabels,prevLabel:e.prevLabel,moreLabel:e.moreLabel},hiddenColumns:e.hiddenColumns,smBreakpoint:e.smBreakpoint,mdBreakpoint:e.mdBreakpoint},elements:{columns:c.columns,rows:c.rows,emptyElement:t,loadingElement:r},callbacks:{nextPage:function(){v.setCurrentPage(f.currentPage+1)},prevPage:function(){v.setCurrentPage(f.currentPage-1)}}}}function tryMethod(e,t){return __awaiter(this,void 0,void 0,(function(){var r,n,a,l;return __generator(this,(function(i){switch(i.label){case 0:r=e.tagName.toLowerCase();return[4,customElements.whenDefined(r)];case 1:i.sent();try{n=t()}catch(e){debug("label promise failed",e);return[2,h("span",null)]}i.label=2;case 2:i.trys.push([2,4,,5]);return[4,n];case 3:return[2,i.sent()];case 4:a=i.sent();debug("Error rendering label",a);l=generateUserError(a);return[2,h("details",null,h("summary",null,"Error"),l)];case 5:return[2]}}))}))}var RewardsTable=function(){function e(e){registerInstance(this,e);this.perPage=4;this.hideLabels=false;this.prevLabel="Prev";this.moreLabel="Next";this.hiddenColumns="0";this.smBreakpoint=599;this.mdBreakpoint=799;h$1(this)}e.prototype.disconnectedCallback=function(){};e.prototype.render=function(){var e=h(EmptySlot,null);var t=h(LoadingSlot,null);var r=isDemo()?useRewardsTableDemo(this,e,t):useRewardsTable(this,e,t),n=r.states,a=r.data,l=r.callbacks,i=r.elements;useRequestRerender([this.perPage]);return h(GenericTableView,{states:n,data:a,callbacks:l,elements:i})};return e}();function EmptySlot(){return h("slot",{name:"empty"},h("sqm-empty",{"empty-state-image":"https://res.cloudinary.com/saasquatch/image/upload/v1644360953/squatch-assets/empty_reward2.png","empty-state-header":"View your rewards","empty-state-text":"Refer friends and complete tasks to view the details of your rewards"}))}function LoadingSlot(){return h("slot",{name:"loading"},h(LoadingRow,null),h(LoadingRow,null),h(LoadingRow,null),h(LoadingRow,null))}function LoadingRow(){return h("sqm-table-row",null,h("sqm-table-cell",{colspan:5},h("sl-skeleton",null)))}function useRewardsTableDemo(e,t,r){var n=useReducer((function(e,t){return __assign(__assign({},e),t)}),{columns:[],rows:[],loading:false,page:0}),a=n[0],l=n[1];var i=useRerenderListener();var s=useMemo((function(){return mockRewardData(e.perPage)}),[e.perPage]).data;var o=useChildElements();function d(t){return __awaiter(this,void 0,void 0,(function(){var r,n,a,i,o,d,u,c;var p=this;return __generator(this,(function(h){switch(h.label){case 0:r=s;r=s.slice(0,e.perPage);n=t.filter((function(e){var t,r;return e.slot!=="loading"&&e.slot!=="empty"&&((t=e===null||e===void 0?void 0:e.firstElementChild)===null||t===void 0?void 0:t.getAttribute("slot"))!=="loading"&&((r=e===null||e===void 0?void 0:e.firstElementChild)===null||r===void 0?void 0:r.getAttribute("slot"))!=="empty"}));a=n===null||n===void 0?void 0:n.map((function(e,t){return __awaiter(p,void 0,void 0,(function(){var r,n,a;return __generator(this,(function(l){n=(r=e===null||e===void 0?void 0:e.firstElementChild)===null||r===void 0?void 0:r.getAttribute("slot");if(e.tagName==="RAISINS-PLOP-TARGET"&&n!=="loading"&&n!=="empty"){e.style.position="absolute";e.setAttribute("slot","column-"+t);a=e.firstElementChild.childNodes[1];a.innerHTML="+";a.style.lineHeight="20px";return[2,tryMethod(e,(function(){return e.renderLabel(t)}))]}return[2,tryMethod(e,(function(){return e.renderLabel()}))]}))}))}));i=r===null||r===void 0?void 0:r.map((function(e){return __awaiter(p,void 0,void 0,(function(){var t,r;var a=this;return __generator(this,(function(l){switch(l.label){case 0:t=n===null||n===void 0?void 0:n.map((function(t){return __awaiter(a,void 0,void 0,(function(){return __generator(this,(function(r){return[2,tryMethod(t,(function(){return t.renderCell(e,undefined)}))]}))}))}));return[4,Promise.all(t)];case 1:r=l.sent();return[2,r]}}))}))}));d=i;if(!d)return[3,2];return[4,Promise.all(i)];case 1:d=h.sent().filter((function(e){return e}));h.label=2;case 2:o=d;l({rows:o});c=a;if(!c)return[3,4];return[4,Promise.all(a)];case 3:c=h.sent();h.label=4;case 4:u=c;l({columns:u,loading:false,page:0});return[2]}}))}))}useEffect((function(){l({loading:true});s&&d(o)}),[s,o,i]);var u=cjs({states:{hasPrev:false,hasNext:false,loading:false,show:"rows"},callbacks:{prevPage:function(){return console.log("Prev")},nextPage:function(){return console.log("Next")}},data:{textOverrides:{showLabels:!e.hideLabels,prevLabel:e.prevLabel,moreLabel:e.moreLabel},referralData:[],mdBreakpoint:799,smBreakpoint:599},elements:{columns:a.columns,rows:a.rows,emptyElement:t,loadingElement:r}},e.demoData||{},{arrayMerge:function(e,t){return t}});return u}var RewardTableDateCell=function(){function e(e){registerInstance(this,e);this.ignored=true;this.locale="en";h$1(this)}e.prototype.disconnectedCallback=function(){};e.prototype.render=function(){var e,t;var r=!this.date?"-":(t=(e=luxon.DateTime.fromMillis(this.date))===null||e===void 0?void 0:e.setLocale(luxonLocale(this.locale)))===null||t===void 0?void 0:t.toLocaleString(luxon.DateTime.DATE_MED);return r};return e}();var RewardTableDateColumn=function(){function e(e){registerInstance(this,e);this.columnTitle="Date received";this.dateShown="dateGiven";h$1(this)}e.prototype.disconnectedCallback=function(){};e.prototype.renderCell=function(e,t){return __awaiter(this,void 0,void 0,(function(){return __generator(this,(function(r){return[2,h("sqm-rewards-table-date-cell",{date:e[this.dateShown],locale:t})]}))}))};e.prototype.renderLabel=function(){return __awaiter(this,void 0,void 0,(function(){return __generator(this,(function(e){return[2,this.columnTitle]}))}))};e.prototype.render=function(){useRequestRerender([this.dateShown,this.columnTitle]);return h(Host,{style:{display:"none"}})};return e}();var style={DetailsContainer:{width:"100%",display:"flex","align-items":"center","justify-content":"space-between","margin-right":"var(--sl-spacing-small)","flex-wrap":"wrap"},Details:{"padding-bottom":"var(--sl-spacing-small)","max-width":"500px","padding-right":"var(--sl-spacing-x-small)","&::part(header)":{padding:"var(--sl-spacing-x-small)",cursor:"default"},"&::part(content)":{padding:"var(--sl-spacing-x-small) var(--sl-spacing-medium)"},"&::part(base)":{opacity:"1"},"&::part(summary-icon)":{display:"flex"}},BadgeContainer:{"& > :not(:last-child)":{"margin-right":"var(--sl-spacing-x-small)"}},BoldText:{"font-weight":"var(--sl-font-weight-semibold)"},StatusBadge:{paddingLeft:"var(--sl-spacing-xxx-small)","&::part(base)":{textAlign:"center",maxWidth:"170px",whiteSpace:"pre-line"}},Fueltank:{"& .code":{display:"flex",cursor:"pointer",userSelect:"none",color:"var(--sl-color-neutral-500)","&:hover":{color:"var(--sl-color-sky-500)"}},"& .text":{maxWidth:"90%",overflow:"hidden",textOverflow:"ellipsis",color:"inherit",fontSize:"var(--sl-font-size-small)",fontWeight:"var(--sl-font-weight-bold)"},"& .icon":{position:"relative",top:"1px",marginLeft:"var(--sl-spacing-x-small)",color:"inherit"}}};var sheet=createStyleSheet(style);var styleString=sheet.toString();var RewardTableRewardsCell=function(){function e(e){registerInstance(this,e)}e.prototype.render=function(){var e=this;intl.locale=this.locale;var t=function(t){var r=t.reward;var n;var a=r.unit==="CENTS"?r.prettyValue.replace(/USD/gi,"$"):(n=r.prettyValue)!==null&&n!==void 0?n:"-";var l=r.prettyValueNumber==="1"||r.dateRedeemed&&r.prettyAvailableNumber==="0";if(r.type==="FUELTANK"){return h("div",{class:sheet.classes.Fueltank},r.prettyValue,r.fuelTankCode&&h("div",{class:"code",onClick:function(){return navigator.clipboard.writeText(r.fuelTankCode)}},h("sl-tooltip",{trigger:"click",placement:"top",distance:5,skidding:11,content:e.copyText,"onSl-show":function(e){return setTimeout((function(){return e.path[0].hide()}),1e3)}},h("span",{class:"text"},r.fuelTankCode),h("span",{class:"icon"},h("sl-icon",{name:"files"})))))}if(r.type==="CREDIT"&&!l){var i=parseFloat(r.prettyValueNumber)-parseFloat(r.prettyRedeemedNumber);var s=Math.round(i/parseFloat(r.prettyValueNumber)*100);var o=r.statuses.includes("EXPIRED")||r.statuses.includes("CANCELLED")?h("div",null,intl.formatMessage({id:"redeemedText",defaultMessage:e.redeemedText},{redeemedAmount:r.prettyRedeemedCredit})):h("div",null,intl.formatMessage({id:"availableText",defaultMessage:e.availableText},{availableAmount:r.statuses.includes("PENDING")?r.prettyAssignedCredit:r.prettyAvailableValue}));var d={Progress:{height:"3px",width:"100%",margin:"var(--sl-spacing-xx-small) 0",background:"var(--sl-color-neutral-200)","&:after":{content:'""',display:"block",background:"var(--sl-color-primary-300)",borderRadius:"100px",width:s+"%",height:"100%"}},Container:{display:"inline-block",verticalAlign:"top",width:"150px",whiteSpace:"break",overflow:"hidden",textOverflow:"ellipsis"},Text:{fontSize:"var(--sl-font-size-medium)",color:"var(--sl-color-gray-800)"},Subtext:{fontSize:"var(--sl-font-size-small)",color:"var(--sl-color-neutral-500)"}};var u=createStyleSheet(d);var c=u.toString();return h("div",null,h("style",{type:"text/css"},c),h("div",{class:u.classes.Container},h("span",null,a+" "),h("br",null)," ",h("div",{class:u.classes.Progress}),h("span",{class:u.classes.Subtext},o)))}return h("div",null,a)};return h("div",{style:{display:"contents"}},h("style",{type:"text/css"},styleString),h(t,{reward:this.reward}))};return e}();var RewardsTableColumn=function(){function e(e){registerInstance(this,e);this.columnTitle="Reward";this.redeemedText="{redeemedAmount} redeemed";this.availableText="{availableAmount} remaining";this.copyText="Copied!";h$1(this)}e.prototype.disconnectedCallback=function(){};e.prototype.renderCell=function(e,t){return __awaiter(this,void 0,void 0,(function(){return __generator(this,(function(r){return[2,h("sqm-rewards-table-reward-cell",{reward:e,redeemedText:this.redeemedText,availableText:this.availableText,copyText:this.copyText,locale:t})]}))}))};e.prototype.renderLabel=function(){return __awaiter(this,void 0,void 0,(function(){return __generator(this,(function(e){return[2,this.columnTitle]}))}))};e.prototype.render=function(){useRequestRerender([this.columnTitle,this.redeemedText,this.availableText,this.copyText]);return h(Host,{style:{display:"none"}})};return e}();var RewardTableSourceCell=function(){function e(e){registerInstance(this,e);this.locale="en"}e.prototype.render=function(){var e=this;intl.locale=this.locale;var t=function(t){var r=t.reward;var n;return h("span",null,intl.formatMessage({id:"rewardSourceText",defaultMessage:e.rewardSourceText},{rewardSource:r.rewardSource,programName:(n=r===null||r===void 0?void 0:r.program)===null||n===void 0?void 0:n.name}))};var r=21;var n=function(t){var n=t.reward;var a;var l=h("div",null,h("span",{style:{fontSize:"var(--sl-font-size-small)",color:"var(--sl-color-neutral-500)"}},e.rewardExchangeText),h("br",null),(a=n.exchangedRewardRedemptionTransaction)===null||a===void 0?void 0:a.prettyRedeemedCredit," → ",n.prettyValue);return n.exchangedRewardRedemptionTransaction.prettyRedeemedCredit.length+n.prettyValue.length<r?l:h("div",{style:{display:"inline-block",verticalAlign:"top"}},l)};var a=function(t){if(!t)return e.deletedUserText;if(!t.firstName&&!t.lastName)return e.anonymousUserText;if(!t.firstName)return""+t.lastName;if(!t.lastName)return""+t.firstName;return t.firstName+" "+t.lastName};var l=function(){return e.reward.rewardSource==="FRIEND_SIGNUP"||e.reward.rewardSource==="REFERRED"?h("div",null,h("div",{style:{fontSize:"var(--sl-font-size-small)",color:"var(--sl-color-neutral-500)"}},intl.formatMessage({id:"referralText",defaultMessage:e.referralText},{rewardSource:e.reward.rewardSource})),h("div",null,e.reward.rewardSource=="FRIEND_SIGNUP"?a(e.reward.referral.referredUser):a(e.reward.referral.referrerUser))):e.reward.exchangedRewardRedemptionTransaction?h(n,{reward:e.reward}):h(t,{reward:e.reward})};return h(l,null)};return e}();var RewardTableUserColumn=function(){function e(e){registerInstance(this,e);this.columnTitle="Source";this.anonymousUser="Anonymous User";this.deletedUser="Deleted User";this.rewardExchangeText="Reward Exchange";this.referralText="{rewardSource, select, FRIEND_SIGNUP {Referral to} REFERRED {Referred by} other {}}";this.rewardSourceText="{rewardSource, select, MANUAL {Manual} AUTOMATED {{programName}} other {}}";h$1(this)}e.prototype.disconnectedCallback=function(){};e.prototype.renderCell=function(e,t){return __awaiter(this,void 0,void 0,(function(){return __generator(this,(function(r){return[2,h("sqm-rewards-table-source-cell",{reward:e,anonymousUserText:this.anonymousUser,deletedUserText:this.deletedUser,rewardExchangeText:this.rewardExchangeText,referralText:this.referralText,rewardSourceText:this.rewardSourceText,locale:t})]}))}))};e.prototype.renderLabel=function(){return __awaiter(this,void 0,void 0,(function(){return __generator(this,(function(e){return[2,this.columnTitle]}))}))};e.prototype.render=function(){useRequestRerender([this.deletedUser,this.anonymousUser,this.columnTitle,this.rewardExchangeText,this.referralText,this.rewardSourceText]);return h(Host,{style:{display:"none"}})};return e}();var style$1={Badge:{"&::part(base)":{fontSize:"var(--sl-font-size-small)",padding:"4px 8px",paddingLeft:"10px",whiteSpace:"pre-line"}},RedeemBadge:{"&::part(base)":{fontSize:"var(--sl-font-size-small)",padding:"4px 8px",background:"var(--sl-color-blue-600)"}},Date:{fontSize:"var(--sl-font-size-small)",color:"var(--sl-color-neutral-500)",margin:"0"}};var sheet$1=createStyleSheet(style$1);var styleString$1=sheet$1.toString();var RewardTableStatusCell=function(){function e(e){registerInstance(this,e);this.expiryText="Expires";this.locale="en";this.pendingUsTax="W-9 required";this.pendingScheduled="Until";this.pendingUnhandled="Fulfillment error"}e.prototype.rewardStatus=function(e){if(e.dateCancelled)return"CANCELLED";if(e.statuses&&e.statuses.includes("EXPIRED"))return"EXPIRED";if(e.statuses&&e.statuses.includes("PENDING"))return"PENDING";if(e.type==="CREDIT"){if(e.statuses.includes("REDEEMED"))return"REDEEMED";return"AVAILABLE"}if(e.type==="PCT_DISCOUNT"){if(e.statuses.includes("AVAILABLE"))return"AVAILABLE"}if(e.type==="INTEGRATION"||e.type==="FUELTANK"){if(e.statuses&&e.statuses.includes("PENDING"))return"PENDING";if(e.statuses&&e.statuses.includes("CANCELLED"))return"CANCELLED";if(e.statuses.includes("AVAILABLE"))return"AVAILABLE"}return""};e.prototype.render=function(){var e;intl.locale=this.locale;var t=this.rewardStatus(this.reward);var r=intl.formatMessage({id:"statusMessage",defaultMessage:this.statusText},{status:t});var n=t==="AVAILABLE"?"success":t==="REDEEMED"?"primary":t==="PENDING"?"warning":"danger";var a=this.reward.dateCancelled||this.reward.dateExpires||this.reward.dateRedeemed||"";var l=a&&""+(t==="AVAILABLE"&&this.reward.dateExpires?this.expiryText+" ":"")+((e=luxon.DateTime.fromMillis(a))===null||e===void 0?void 0:e.setLocale(luxonLocale(luxonLocale(this.locale))).toLocaleString(luxon.DateTime.DATE_MED));var i=t==="PENDING"?s(this):null;return h("div",{style:{display:"contents"}},h("style",{type:"text/css"},styleString$1),h("sl-badge",{type:n,pill:true,class:t==="REDEEMED"?sheet$1.classes.RedeemBadge:sheet$1.classes.Badge},r),h("p",{class:sheet$1.classes.Date},i||l));function s(e){var t;var r={US_TAX:e.pendingUsTax,SCHEDULED:e.reward.dateScheduledFor&&e.pendingScheduled+" "+((t=luxon.DateTime.fromMillis(e.reward.dateScheduledFor))===null||t===void 0?void 0:t.setLocale(luxonLocale(luxonLocale(e.locale||"en"))).toLocaleString(luxon.DateTime.DATE_MED)),UNHANDLED_ERROR:e.pendingUnhandled};return[e.reward.pendingReasons].map((function(e){var t;return(t=r[e])!==null&&t!==void 0?t:e})).join(", ")}};return e}();var RewardTableStatusColumn=function(){function e(e){registerInstance(this,e);this.columnTitle="Status";this.statusText="{status, select, AVAILABLE {Available} CANCELLED {Cancelled} PENDING {Pending} EXPIRED {Expired} REDEEMED {Redeemed} other {Not available} }";this.expiryText="Expires on ";this.pendingUsTax="W-9 required";this.pendingScheduled="Until";this.pendingUnhandled="Fulfillment error";h$1(this)}e.prototype.disconnectedCallback=function(){};e.prototype.renderCell=function(e,t){return __awaiter(this,void 0,void 0,(function(){return __generator(this,(function(r){return[2,h("sqm-rewards-table-status-cell",{statusText:this.statusText,reward:e,expiryText:this.expiryText,pendingScheduled:this.pendingScheduled,pendingUsTax:this.pendingUsTax,pendingUnhandled:this.pendingUnhandled,locale:t})]}))}))};e.prototype.renderLabel=function(){return __awaiter(this,void 0,void 0,(function(){return __generator(this,(function(e){return[2,this.columnTitle]}))}))};e.prototype.render=function(){useRequestRerender([this.columnTitle,this.statusText,this.expiryText,this.pendingScheduled,this.pendingUsTax,this.pendingUnhandled]);return h(Host,{style:{display:"none"}})};return e}();export{RewardsTable as sqm_rewards_table,RewardTableDateCell as sqm_rewards_table_date_cell,RewardTableDateColumn as sqm_rewards_table_date_column,RewardTableRewardsCell as sqm_rewards_table_reward_cell,RewardsTableColumn as sqm_rewards_table_reward_column,RewardTableSourceCell as sqm_rewards_table_source_cell,RewardTableUserColumn as sqm_rewards_table_source_column,RewardTableStatusCell as sqm_rewards_table_status_cell,RewardTableStatusColumn as sqm_rewards_table_status_column};var templateObject_1;
1
+ var __makeTemplateObject=this&&this.__makeTemplateObject||function(e,t){if(Object.defineProperty){Object.defineProperty(e,"raw",{value:t})}else{e.raw=t}return e};var __assign=this&&this.__assign||function(){__assign=Object.assign||function(e){for(var t,r=1,n=arguments.length;r<n;r++){t=arguments[r];for(var a in t)if(Object.prototype.hasOwnProperty.call(t,a))e[a]=t[a]}return e};return __assign.apply(this,arguments)};var __awaiter=this&&this.__awaiter||function(e,t,r,n){function a(e){return e instanceof r?e:new r((function(t){t(e)}))}return new(r||(r=Promise))((function(r,l){function i(e){try{o(n.next(e))}catch(e){l(e)}}function s(e){try{o(n["throw"](e))}catch(e){l(e)}}function o(e){e.done?r(e.value):a(e.value).then(i,s)}o((n=n.apply(e,t||[])).next())}))};var __generator=this&&this.__generator||function(e,t){var r={label:0,sent:function(){if(l[0]&1)throw l[1];return l[1]},trys:[],ops:[]},n,a,l,i;return i={next:s(0),throw:s(1),return:s(2)},typeof Symbol==="function"&&(i[Symbol.iterator]=function(){return this}),i;function s(e){return function(t){return o([e,t])}}function o(i){if(n)throw new TypeError("Generator is already executing.");while(r)try{if(n=1,a&&(l=i[0]&2?a["return"]:i[0]?a["throw"]||((l=a["return"])&&l.call(a),0):a.next)&&!(l=l.call(a,i[1])).done)return l;if(a=0,l)i=[i[0]&2,l.value];switch(i[0]){case 0:case 1:l=i;break;case 4:r.label++;return{value:i[1],done:false};case 5:r.label++;a=i[1];i=[0];continue;case 7:i=r.ops.pop();r.trys.pop();continue;default:if(!(l=r.trys,l=l.length>0&&l[l.length-1])&&(i[0]===6||i[0]===2)){r=0;continue}if(i[0]===3&&(!l||i[1]>l[0]&&i[1]<l[3])){r.label=i[1];break}if(i[0]===6&&r.label<l[1]){r.label=l[1];l=i;break}if(l&&r.label<l[2]){r.label=l[2];r.ops.push(i);break}if(l[2])r.ops.pop();r.trys.pop();continue}i=t.call(e,r)}catch(e){i=[6,e];a=0}finally{n=l=0}if(i[0]&5)throw i[1];return{value:i[0]?i[1]:void 0,done:true}}};var __spreadArrays=this&&this.__spreadArrays||function(){for(var e=0,t=0,r=arguments.length;t<r;t++)e+=arguments[t].length;for(var n=Array(e),a=0,t=0;t<r;t++)for(var l=arguments[t],i=0,s=l.length;i<s;i++,a++)n[a]=l[i];return n};import{h,r as registerInstance,c as Host}from"./index-17b4da69.js";import{b as browser,f as useReducer,u as useEffect,m as h$1,k as useMemo}from"./stencil-hooks.module-203eab48.js";import{i as intl}from"./global-09167b08.js";import"./use-callback-f03b0607.js";import{d as dist,N,O,x,v as vn,i as isDemo}from"./index.module-48cc9ee0.js";import{c as cjs}from"./cjs-bdfb4486.js";import"./mixins-f60a614c.js";import{c as createStyleSheet}from"./JSS-67b5cff8.js";import{G as GenericTableView}from"./GenericTableView-ce26115f.js";import{u as useRerenderListener,a as useRequestRerender}from"./re-render-f406e379.js";import{u as useChildElements}from"./useChildElements-11279a92.js";import{l as luxon}from"./luxon-198ac0b0.js";import{g as generateUserError}from"./useReferralTable-c9f28060.js";import{l as luxonLocale}from"./utils-334c1e34.js";var mockRewardData=function(e){if(e===void 0){e=4}var t=__spreadArrays(Array(e)).map((function(){return getMockData()}));return{data:t}};var units=["POINT","TICKET","GIFT"];var prettyValues=["Points","Tickets","Gifts"];var statuses=["AVAILABLE","PENDING","CANCELLED","EXPIRED","REDEEMED"];var pendingReasons=["US_TAX","SCHEDULED","UNHANDLED_ERROR"];var getMockData=function(){var e=false;var t=0;var r;var n;var a;var l;var i=luxon.DateTime.now();var s=Math.floor(Math.random()*3);var o=statuses[Math.floor(Math.random()*5)];var d=units[s];var u=prettyValues[s];var c=Math.floor(Math.random()*100)+2;if(o==="AVAILABLE"){t=Math.floor(Math.random()*c);l=Math.floor(Math.random()*10)<3?i.plus({days:7}).toMillis():null}else if(o==="EXPIRED"){e=true;t=Math.floor(Math.random()*c);l=i.minus({days:1}).toMillis()}else if(o==="PENDING"){var p=pendingReasons[Math.floor(Math.random()*3)];r=[p];if(p==="SCHEDULED"){n=i.plus({days:6}).toMillis()}}else if(o==="REDEEMED"){e=true}else{e=true;a=i.minus({days:2}).toMillis()}var h=Math.floor(Math.random()*3);return{id:"61f7878e096c9265de88b46f",type:"CREDIT",value:c,unit:d,name:null,dateGiven:i.minus({days:3}).toMillis(),dateExpires:l,dateCancelled:a,dateRedeemed:o==="REDEEMED"?i.plus({days:2}).toMillis():null,dateScheduledFor:n,fuelTankCode:null,fuelTankType:null,currency:null,prettyValue:c+" "+u,prettyValueNumber:""+c,prettyAvailableNumber:e?"0":""+(c-t),prettyRedeemedNumber:e&&!t?"0":""+t,programId:h===1?"program-id":null,program:{name:"My Program"},statuses:[o],pendingReasons:r,globalRewardKey:null,programRewardKey:null,rewardSource:h===1?"AUTOMATED":"MANUAL",prettyRedeemedCredit:t+" "+u,prettyAssignedCredit:c+" "+u,prettyAvailableValue:e?"0 "+u:c-t+" "+u,exchangedRewardRedemptionTransaction:h===2?{id:"61f7878e096c9265de88b414",creditRedeemed:50,prettyRedeemedCredit:"50 Tokens",unit:"TOKEN",dateRedeemed:1643612046258}:null,referral:null,rewardRedemptionTransactions:{data:[]}}};var debug=browser("sq:useRewardsTable");var CSS_NAMESPACE="sqm-rewards-table";var GET_REWARDS=dist.gql(templateObject_1||(templateObject_1=__makeTemplateObject(['\n query getRewards(\n $limit: Int!\n $offset: Int!\n $rewardFilter: RewardFilterInput\n $locale: RSLocale\n ) {\n viewer {\n ... on User {\n id\n rewards(\n limit: $limit\n offset: $offset\n filter: $rewardFilter\n sortBy: { field: "dateCreated", order: DESC }\n ) {\n totalCount\n count\n data {\n meta {\n integration {\n name\n }\n message\n }\n id\n type\n value\n unit\n name\n dateGiven\n dateCreated\n dateExpires\n dateCancelled\n dateRedeemed\n dateScheduledFor\n fuelTankCode\n fuelTankType\n currency\n prettyValue(locale: $locale)\n prettyValueNumber: prettyValue(\n formatType: NUMBER_FORMATTED\n locale: $locale\n )\n prettyAvailableNumber: prettyAvailableValue(\n formatType: NUMBER_FORMATTED\n locale: $locale\n )\n prettyRedeemedNumber: prettyRedeemedCredit(\n formatType: NUMBER_FORMATTED\n locale: $locale\n )\n programId\n program {\n name\n }\n statuses\n pendingReasons\n globalRewardKey\n programRewardKey\n rewardSource\n prettyRedeemedCredit(locale: $locale)\n prettyAssignedCredit(locale: $locale)\n prettyAvailableValue(locale: $locale)\n exchangedRewardRedemptionTransaction {\n id\n creditRedeemed\n prettyRedeemedCredit(locale: $locale)\n unit\n dateRedeemed\n }\n referral {\n id\n referrerUser {\n id\n firstName\n lastName\n }\n referredUser {\n id\n firstName\n lastName\n }\n }\n rewardRedemptionTransactions {\n data {\n exchangedRewards {\n data {\n prettyValue(locale: $locale)\n type\n fuelTankCode\n globalRewardKey\n }\n }\n }\n }\n }\n }\n }\n }\n }\n'],['\n query getRewards(\n $limit: Int!\n $offset: Int!\n $rewardFilter: RewardFilterInput\n $locale: RSLocale\n ) {\n viewer {\n ... on User {\n id\n rewards(\n limit: $limit\n offset: $offset\n filter: $rewardFilter\n sortBy: { field: "dateCreated", order: DESC }\n ) {\n totalCount\n count\n data {\n meta {\n integration {\n name\n }\n message\n }\n id\n type\n value\n unit\n name\n dateGiven\n dateCreated\n dateExpires\n dateCancelled\n dateRedeemed\n dateScheduledFor\n fuelTankCode\n fuelTankType\n currency\n prettyValue(locale: $locale)\n prettyValueNumber: prettyValue(\n formatType: NUMBER_FORMATTED\n locale: $locale\n )\n prettyAvailableNumber: prettyAvailableValue(\n formatType: NUMBER_FORMATTED\n locale: $locale\n )\n prettyRedeemedNumber: prettyRedeemedCredit(\n formatType: NUMBER_FORMATTED\n locale: $locale\n )\n programId\n program {\n name\n }\n statuses\n pendingReasons\n globalRewardKey\n programRewardKey\n rewardSource\n prettyRedeemedCredit(locale: $locale)\n prettyAssignedCredit(locale: $locale)\n prettyAvailableValue(locale: $locale)\n exchangedRewardRedemptionTransaction {\n id\n creditRedeemed\n prettyRedeemedCredit(locale: $locale)\n unit\n dateRedeemed\n }\n referral {\n id\n referrerUser {\n id\n firstName\n lastName\n }\n referredUser {\n id\n firstName\n lastName\n }\n }\n rewardRedemptionTransactions {\n data {\n exchangedRewards {\n data {\n prettyValue(locale: $locale)\n type\n fuelTankCode\n globalRewardKey\n }\n }\n }\n }\n }\n }\n }\n }\n }\n'])));function useRewardsTable(e,t,r){var n,a;var l=N();var i=O();var s=x();var o=(n=e.programId)!==null&&n!==void 0?n:i;var d=__assign({userId_eq:l===null||l===void 0?void 0:l.id,accountId_eq:l===null||l===void 0?void 0:l.accountId},o?o==="classic"?{programId_exists:false}:{programId_eq:o}:{});var u=useReducer((function(e,t){return __assign(__assign({},e),t)}),{columns:[],rows:[],loading:false,page:0}),c=u[0],p=u[1];var h=vn(GET_REWARDS,(function(e){var t;return(t=e===null||e===void 0?void 0:e.viewer)===null||t===void 0?void 0:t.rewards}),{limit:e.perPage,offset:0},{rewardFilter:d,locale:s},!(l===null||l===void 0?void 0:l.jwt)),m=h.envelope,f=h.states,v=h.callbacks;var g=useRerenderListener();var y=useChildElements();var w=m===null||m===void 0?void 0:m.data;function b(e){return __awaiter(this,void 0,void 0,(function(){var t,r,n,a,l,i,o;var d=this;return __generator(this,(function(u){switch(u.label){case 0:t=e.filter((function(e){return e.slot!=="loading"&&e.slot!=="empty"}));r=t===null||t===void 0?void 0:t.map((function(e){return __awaiter(d,void 0,void 0,(function(){return __generator(this,(function(t){return[2,tryMethod(e,(function(){return e.renderLabel()}))]}))}))}));n=w===null||w===void 0?void 0:w.map((function(e){return __awaiter(d,void 0,void 0,(function(){var r,n;var a=this;return __generator(this,(function(l){switch(l.label){case 0:r=t===null||t===void 0?void 0:t.map((function(t){return __awaiter(a,void 0,void 0,(function(){return __generator(this,(function(r){return[2,tryMethod(t,(function(){return t.renderCell(e,s)}))]}))}))}));return[4,Promise.all(r)];case 1:n=l.sent();return[2,n]}}))}))}));l=n;if(!l)return[3,2];return[4,Promise.all(n)];case 1:l=u.sent().filter((function(e){return e}));u.label=2;case 2:a=l;p({rows:a});o=r;if(!o)return[3,4];return[4,Promise.all(r)];case 3:o=u.sent();u.label=4;case 4:i=o;p({columns:i,loading:false,page:f.currentPage});return[2]}}))}))}useEffect((function(){p({loading:true});m&&b(y)}),[m,y,g]);var T=!((a=c===null||c===void 0?void 0:c.rows)===null||a===void 0?void 0:a.length)&&!(w===null||w===void 0?void 0:w.length);var R=f.loading||c.loading?"loading":T?"empty":"rows";return{states:{hasNext:f.currentPage<f.pageCount-1,hasPrev:f.currentPage>0,show:R,namespace:CSS_NAMESPACE},data:{textOverrides:{showLabels:!e.hideLabels,prevLabel:e.prevLabel,moreLabel:e.moreLabel},hiddenColumns:e.hiddenColumns,smBreakpoint:e.smBreakpoint,mdBreakpoint:e.mdBreakpoint},elements:{columns:c.columns,rows:c.rows,emptyElement:t,loadingElement:r},callbacks:{nextPage:function(){v.setCurrentPage(f.currentPage+1)},prevPage:function(){v.setCurrentPage(f.currentPage-1)}}}}function tryMethod(e,t){return __awaiter(this,void 0,void 0,(function(){var r,n,a,l;return __generator(this,(function(i){switch(i.label){case 0:r=e.tagName.toLowerCase();return[4,customElements.whenDefined(r)];case 1:i.sent();try{n=t()}catch(e){debug("label promise failed",e);return[2,h("span",null)]}i.label=2;case 2:i.trys.push([2,4,,5]);return[4,n];case 3:return[2,i.sent()];case 4:a=i.sent();debug("Error rendering label",a);l=generateUserError(a);return[2,h("details",null,h("summary",null,"Error"),l)];case 5:return[2]}}))}))}var RewardsTable=function(){function e(e){registerInstance(this,e);this.perPage=4;this.hideLabels=false;this.prevLabel="Prev";this.moreLabel="Next";this.hiddenColumns="0";this.smBreakpoint=599;this.mdBreakpoint=799;h$1(this)}e.prototype.disconnectedCallback=function(){};e.prototype.render=function(){var e=h(EmptySlot,null);var t=h(LoadingSlot,null);var r=isDemo()?useRewardsTableDemo(this,e,t):useRewardsTable(this,e,t),n=r.states,a=r.data,l=r.callbacks,i=r.elements;useRequestRerender([this.perPage]);return h(GenericTableView,{states:n,data:a,callbacks:l,elements:i})};return e}();function EmptySlot(){return h("slot",{name:"empty"},h("sqm-empty",{"empty-state-image":"https://res.cloudinary.com/saasquatch/image/upload/v1644360953/squatch-assets/empty_reward2.png","empty-state-header":"View your rewards","empty-state-text":"Refer friends and complete tasks to view the details of your rewards"}))}function LoadingSlot(){return h("slot",{name:"loading"},h(LoadingRow,null),h(LoadingRow,null),h(LoadingRow,null),h(LoadingRow,null))}function LoadingRow(){return h("sqm-table-row",null,h("sqm-table-cell",{colspan:5},h("sl-skeleton",null)))}function useRewardsTableDemo(e,t,r){var n=useReducer((function(e,t){return __assign(__assign({},e),t)}),{columns:[],rows:[],loading:false,page:0}),a=n[0],l=n[1];var i=useRerenderListener();var s=useMemo((function(){return mockRewardData(e.perPage)}),[e.perPage]).data;var o=useChildElements();function d(t){return __awaiter(this,void 0,void 0,(function(){var r,n,a,i,o,d,u,c;var p=this;return __generator(this,(function(h){switch(h.label){case 0:r=s;r=s.slice(0,e.perPage);n=t.filter((function(e){var t,r;return e.slot!=="loading"&&e.slot!=="empty"&&((t=e===null||e===void 0?void 0:e.firstElementChild)===null||t===void 0?void 0:t.getAttribute("slot"))!=="loading"&&((r=e===null||e===void 0?void 0:e.firstElementChild)===null||r===void 0?void 0:r.getAttribute("slot"))!=="empty"}));a=n===null||n===void 0?void 0:n.map((function(e,t){return __awaiter(p,void 0,void 0,(function(){var r,n,a;return __generator(this,(function(l){n=(r=e===null||e===void 0?void 0:e.firstElementChild)===null||r===void 0?void 0:r.getAttribute("slot");if(e.tagName==="RAISINS-PLOP-TARGET"&&n!=="loading"&&n!=="empty"){e.style.position="absolute";e.setAttribute("slot","column-"+t);a=e.firstElementChild.childNodes[1];a.innerHTML="+";a.style.lineHeight="20px";return[2,tryMethod(e,(function(){return e.renderLabel(t)}))]}return[2,tryMethod(e,(function(){return e.renderLabel()}))]}))}))}));i=r===null||r===void 0?void 0:r.map((function(e){return __awaiter(p,void 0,void 0,(function(){var t,r;var a=this;return __generator(this,(function(l){switch(l.label){case 0:t=n===null||n===void 0?void 0:n.map((function(t){return __awaiter(a,void 0,void 0,(function(){return __generator(this,(function(r){return[2,tryMethod(t,(function(){return t.renderCell(e,undefined)}))]}))}))}));return[4,Promise.all(t)];case 1:r=l.sent();return[2,r]}}))}))}));d=i;if(!d)return[3,2];return[4,Promise.all(i)];case 1:d=h.sent().filter((function(e){return e}));h.label=2;case 2:o=d;l({rows:o});c=a;if(!c)return[3,4];return[4,Promise.all(a)];case 3:c=h.sent();h.label=4;case 4:u=c;l({columns:u,loading:false,page:0});return[2]}}))}))}useEffect((function(){l({loading:true});s&&d(o)}),[s,o,i]);var u=cjs({states:{hasPrev:false,hasNext:false,loading:false,show:"rows"},callbacks:{prevPage:function(){return console.log("Prev")},nextPage:function(){return console.log("Next")}},data:{textOverrides:{showLabels:!e.hideLabels,prevLabel:e.prevLabel,moreLabel:e.moreLabel},referralData:[],mdBreakpoint:799,smBreakpoint:599},elements:{columns:a.columns,rows:a.rows,emptyElement:t,loadingElement:r}},e.demoData||{},{arrayMerge:function(e,t){return t}});return u}var RewardTableDateCell=function(){function e(e){registerInstance(this,e);this.ignored=true;this.locale="en";h$1(this)}e.prototype.disconnectedCallback=function(){};e.prototype.render=function(){var e,t;var r=!this.date?"-":(t=(e=luxon.DateTime.fromMillis(this.date))===null||e===void 0?void 0:e.setLocale(luxonLocale(this.locale)))===null||t===void 0?void 0:t.toLocaleString(luxon.DateTime.DATE_MED);return r};return e}();var RewardTableDateColumn=function(){function e(e){registerInstance(this,e);this.columnTitle="Date received";this.dateShown="dateGiven";h$1(this)}e.prototype.disconnectedCallback=function(){};e.prototype.renderCell=function(e,t){return __awaiter(this,void 0,void 0,(function(){return __generator(this,(function(r){return[2,h("sqm-rewards-table-date-cell",{date:e[this.dateShown],locale:t})]}))}))};e.prototype.renderLabel=function(){return __awaiter(this,void 0,void 0,(function(){return __generator(this,(function(e){return[2,this.columnTitle]}))}))};e.prototype.render=function(){useRequestRerender([this.dateShown,this.columnTitle]);return h(Host,{style:{display:"none"}})};return e}();var style={DetailsContainer:{width:"100%",display:"flex","align-items":"center","justify-content":"space-between","margin-right":"var(--sl-spacing-small)","flex-wrap":"wrap"},Details:{"padding-bottom":"var(--sl-spacing-small)","max-width":"500px","padding-right":"var(--sl-spacing-x-small)","&::part(header)":{padding:"var(--sl-spacing-x-small)",cursor:"default"},"&::part(content)":{padding:"var(--sl-spacing-x-small) var(--sl-spacing-medium)"},"&::part(base)":{opacity:"1"},"&::part(summary-icon)":{display:"flex"}},BadgeContainer:{"& > :not(:last-child)":{"margin-right":"var(--sl-spacing-x-small)"}},BoldText:{"font-weight":"var(--sl-font-weight-semibold)"},StatusBadge:{paddingLeft:"var(--sl-spacing-xxx-small)","&::part(base)":{textAlign:"center",maxWidth:"170px",whiteSpace:"pre-line"}},Fueltank:{"& .code":{display:"flex",cursor:"pointer",userSelect:"none",color:"var(--sl-color-neutral-500)","&:hover":{color:"var(--sl-color-sky-500)"}},"& .text":{maxWidth:"90%",overflow:"hidden",textOverflow:"ellipsis",color:"inherit",fontSize:"var(--sl-font-size-small)",fontWeight:"var(--sl-font-weight-bold)"},"& .icon":{position:"relative",top:"1px",marginLeft:"var(--sl-spacing-x-small)",color:"inherit"}}};var sheet=createStyleSheet(style);var styleString=sheet.toString();var RewardTableRewardsCell=function(){function e(e){registerInstance(this,e)}e.prototype.render=function(){var e=this;intl.locale=this.locale;var t=function(t){var r=t.reward;var n;var a=r.unit==="CENTS"?r.prettyValue.replace(/USD/gi,"$"):(n=r.prettyValue)!==null&&n!==void 0?n:"-";var l=r.prettyValueNumber==="1"||r.dateRedeemed&&r.prettyAvailableNumber==="0";if(r.type==="FUELTANK"){return h("div",{class:sheet.classes.Fueltank},r.prettyValue,r.fuelTankCode&&h("div",{class:"code",onClick:function(){return navigator.clipboard.writeText(r.fuelTankCode)}},h("sl-tooltip",{trigger:"click",placement:"top",distance:5,skidding:11,content:e.copyText,"onSl-show":function(e){return setTimeout((function(){return e.path[0].hide()}),1e3)}},h("span",{class:"text"},r.fuelTankCode),h("span",{class:"icon"},h("sl-icon",{name:"files"})))))}if(r.type==="CREDIT"&&!l){var i=parseFloat(r.prettyValueNumber)-parseFloat(r.prettyRedeemedNumber);var s=Math.round(i/parseFloat(r.prettyValueNumber)*100);var o=r.statuses.includes("EXPIRED")||r.statuses.includes("CANCELLED")?h("div",null,intl.formatMessage({id:"redeemedText",defaultMessage:e.redeemedText},{redeemedAmount:r.prettyRedeemedCredit})):h("div",null,intl.formatMessage({id:"availableText",defaultMessage:e.availableText},{availableAmount:r.statuses.includes("PENDING")?r.prettyAssignedCredit:r.prettyAvailableValue}));var d={Progress:{height:"3px",width:"100%",margin:"var(--sl-spacing-xx-small) 0",background:"var(--sl-color-neutral-200)","&:after":{content:'""',display:"block",background:"var(--sl-color-primary-300)",borderRadius:"100px",width:s+"%",height:"100%"}},Container:{display:"inline-block",verticalAlign:"top",width:"150px",whiteSpace:"break",overflow:"hidden",textOverflow:"ellipsis"},Text:{fontSize:"var(--sl-font-size-medium)",color:"var(--sl-color-gray-800)"},Subtext:{fontSize:"var(--sl-font-size-small)",color:"var(--sl-color-neutral-500)"}};var u=createStyleSheet(d);var c=u.toString();return h("div",null,h("style",{type:"text/css"},c),h("div",{class:u.classes.Container},h("span",null,a+" "),h("br",null)," ",h("div",{class:u.classes.Progress}),h("span",{class:u.classes.Subtext},o)))}return h("div",null,a)};return h("div",{style:{display:"contents"}},h("style",{type:"text/css"},styleString),h(t,{reward:this.reward}))};return e}();var RewardsTableColumn=function(){function e(e){registerInstance(this,e);this.columnTitle="Reward";this.redeemedText="{redeemedAmount} redeemed";this.availableText="{availableAmount} remaining";this.copyText="Copied!";h$1(this)}e.prototype.disconnectedCallback=function(){};e.prototype.renderCell=function(e,t){return __awaiter(this,void 0,void 0,(function(){return __generator(this,(function(r){return[2,h("sqm-rewards-table-reward-cell",{reward:e,redeemedText:this.redeemedText,availableText:this.availableText,copyText:this.copyText,locale:t})]}))}))};e.prototype.renderLabel=function(){return __awaiter(this,void 0,void 0,(function(){return __generator(this,(function(e){return[2,this.columnTitle]}))}))};e.prototype.render=function(){useRequestRerender([this.columnTitle,this.redeemedText,this.availableText,this.copyText]);return h(Host,{style:{display:"none"}})};return e}();var RewardTableSourceCell=function(){function e(e){registerInstance(this,e);this.locale="en"}e.prototype.render=function(){var e=this;intl.locale=this.locale;var t=function(t){var r=t.reward;var n;return h("span",null,intl.formatMessage({id:"rewardSourceText",defaultMessage:e.rewardSourceText},{rewardSource:r.rewardSource,programName:(n=r===null||r===void 0?void 0:r.program)===null||n===void 0?void 0:n.name}))};var r=21;var n=function(t){var n=t.reward;var a;var l=h("div",null,h("span",{style:{fontSize:"var(--sl-font-size-small)",color:"var(--sl-color-neutral-500)"}},e.rewardExchangeText),h("br",null),(a=n.exchangedRewardRedemptionTransaction)===null||a===void 0?void 0:a.prettyRedeemedCredit," → ",n.prettyValue);return n.exchangedRewardRedemptionTransaction.prettyRedeemedCredit.length+n.prettyValue.length<r?l:h("div",{style:{display:"inline-block",verticalAlign:"top"}},l)};var a=function(t){if(!t)return e.deletedUserText;if(!t.firstName&&!t.lastName)return e.anonymousUserText;if(!t.firstName)return""+t.lastName;if(!t.lastName)return""+t.firstName;return t.firstName+" "+t.lastName};var l=function(){return e.reward.rewardSource==="FRIEND_SIGNUP"||e.reward.rewardSource==="REFERRED"?h("div",null,h("div",{style:{fontSize:"var(--sl-font-size-small)",color:"var(--sl-color-neutral-500)"}},intl.formatMessage({id:"referralText",defaultMessage:e.referralText},{rewardSource:e.reward.rewardSource})),h("div",null,e.reward.rewardSource=="FRIEND_SIGNUP"?a(e.reward.referral.referredUser):a(e.reward.referral.referrerUser))):e.reward.exchangedRewardRedemptionTransaction?h(n,{reward:e.reward}):h(t,{reward:e.reward})};return h(l,null)};return e}();var RewardTableUserColumn=function(){function e(e){registerInstance(this,e);this.columnTitle="Source";this.anonymousUser="Anonymous User";this.deletedUser="Deleted User";this.rewardExchangeText="Reward Exchange";this.referralText="{rewardSource, select, FRIEND_SIGNUP {Referral to} REFERRED {Referred by} other {}}";this.rewardSourceText="{rewardSource, select, MANUAL {Manual} AUTOMATED {{programName}} other {}}";h$1(this)}e.prototype.disconnectedCallback=function(){};e.prototype.renderCell=function(e,t){return __awaiter(this,void 0,void 0,(function(){return __generator(this,(function(r){return[2,h("sqm-rewards-table-source-cell",{reward:e,anonymousUserText:this.anonymousUser,deletedUserText:this.deletedUser,rewardExchangeText:this.rewardExchangeText,referralText:this.referralText,rewardSourceText:this.rewardSourceText,locale:t})]}))}))};e.prototype.renderLabel=function(){return __awaiter(this,void 0,void 0,(function(){return __generator(this,(function(e){return[2,this.columnTitle]}))}))};e.prototype.render=function(){useRequestRerender([this.deletedUser,this.anonymousUser,this.columnTitle,this.rewardExchangeText,this.referralText,this.rewardSourceText]);return h(Host,{style:{display:"none"}})};return e}();var style$1={Badge:{"&::part(base)":{fontSize:"var(--sl-font-size-small)",padding:"4px 8px",paddingLeft:"10px",whiteSpace:"pre-line"}},RedeemBadge:{"&::part(base)":{fontSize:"var(--sl-font-size-small)",padding:"4px 8px",background:"var(--sl-color-blue-600)"}},Date:{fontSize:"var(--sl-font-size-small)",color:"var(--sl-color-neutral-500)",margin:"0"}};var sheet$1=createStyleSheet(style$1);var styleString$1=sheet$1.toString();var RewardTableStatusCell=function(){function e(e){registerInstance(this,e);this.expiryText="Expires";this.locale="en";this.pendingUsTax="W-9 required";this.pendingScheduled="Until";this.pendingUnhandled="Fulfillment error"}e.prototype.rewardStatus=function(e){if(e.dateCancelled)return"CANCELLED";if(e.statuses&&e.statuses.includes("EXPIRED"))return"EXPIRED";if(e.statuses&&e.statuses.includes("PENDING"))return"PENDING";if(e.type==="CREDIT"){if(e.statuses.includes("REDEEMED"))return"REDEEMED";return"AVAILABLE"}if(e.type==="PCT_DISCOUNT"){if(e.statuses.includes("AVAILABLE"))return"AVAILABLE"}if(e.type==="INTEGRATION"||e.type==="FUELTANK"){if(e.statuses&&e.statuses.includes("PENDING"))return"PENDING";if(e.statuses&&e.statuses.includes("CANCELLED"))return"CANCELLED";if(e.statuses.includes("AVAILABLE"))return"AVAILABLE"}return""};e.prototype.render=function(){var e;intl.locale=this.locale;var t=this.rewardStatus(this.reward);var r=intl.formatMessage({id:"statusMessage",defaultMessage:this.statusText},{status:t});var n=t==="AVAILABLE"?"success":t==="REDEEMED"?"primary":t==="PENDING"?"warning":"danger";var a=this.reward.dateCancelled||this.reward.dateExpires||this.reward.dateRedeemed||"";var l=a&&""+(t==="AVAILABLE"&&this.reward.dateExpires?this.expiryText+" ":"")+((e=luxon.DateTime.fromMillis(a))===null||e===void 0?void 0:e.setLocale(luxonLocale(luxonLocale(this.locale))).toLocaleString(luxon.DateTime.DATE_MED));var i=t==="PENDING"?s(this):null;return h("div",{style:{display:"contents"}},h("style",{type:"text/css"},styleString$1),h("sl-badge",{type:n,pill:true,class:t==="REDEEMED"?sheet$1.classes.RedeemBadge:sheet$1.classes.Badge},r),h("p",{class:sheet$1.classes.Date},i||l));function s(e){var t;var r={US_TAX:e.pendingUsTax,SCHEDULED:e.reward.dateScheduledFor&&e.pendingScheduled+" "+((t=luxon.DateTime.fromMillis(e.reward.dateScheduledFor))===null||t===void 0?void 0:t.setLocale(luxonLocale(luxonLocale(e.locale||"en"))).toLocaleString(luxon.DateTime.DATE_MED)),UNHANDLED_ERROR:e.pendingUnhandled};return[e.reward.pendingReasons].map((function(e){var t;return(t=r[e])!==null&&t!==void 0?t:e})).join(", ")}};return e}();var RewardTableStatusColumn=function(){function e(e){registerInstance(this,e);this.columnTitle="Status";this.statusText="{status, select, AVAILABLE {Available} CANCELLED {Cancelled} PENDING {Pending} EXPIRED {Expired} REDEEMED {Redeemed} other {Not available} }";this.expiryText="Expires on ";this.pendingUsTax="W-9 required";this.pendingScheduled="Until";this.pendingUnhandled="Fulfillment error";h$1(this)}e.prototype.disconnectedCallback=function(){};e.prototype.renderCell=function(e,t){return __awaiter(this,void 0,void 0,(function(){return __generator(this,(function(r){return[2,h("sqm-rewards-table-status-cell",{statusText:this.statusText,reward:e,expiryText:this.expiryText,pendingScheduled:this.pendingScheduled,pendingUsTax:this.pendingUsTax,pendingUnhandled:this.pendingUnhandled,locale:t})]}))}))};e.prototype.renderLabel=function(){return __awaiter(this,void 0,void 0,(function(){return __generator(this,(function(e){return[2,this.columnTitle]}))}))};e.prototype.render=function(){useRequestRerender([this.columnTitle,this.statusText,this.expiryText,this.pendingScheduled,this.pendingUsTax,this.pendingUnhandled]);return h(Host,{style:{display:"none"}})};return e}();export{RewardsTable as sqm_rewards_table,RewardTableDateCell as sqm_rewards_table_date_cell,RewardTableDateColumn as sqm_rewards_table_date_column,RewardTableRewardsCell as sqm_rewards_table_reward_cell,RewardsTableColumn as sqm_rewards_table_reward_column,RewardTableSourceCell as sqm_rewards_table_source_cell,RewardTableUserColumn as sqm_rewards_table_source_column,RewardTableStatusCell as sqm_rewards_table_status_cell,RewardTableStatusColumn as sqm_rewards_table_status_column};var templateObject_1;
@@ -0,0 +1 @@
1
+ var __makeTemplateObject=this&&this.__makeTemplateObject||function(e,n){if(Object.defineProperty){Object.defineProperty(e,"raw",{value:n})}else{e.raw=n}return e};var __assign=this&&this.__assign||function(){__assign=Object.assign||function(e){for(var n,r=1,a=arguments.length;r<a;r++){n=arguments[r];for(var t in n)if(Object.prototype.hasOwnProperty.call(n,t))e[t]=n[t]}return e};return __assign.apply(this,arguments)};var __awaiter=this&&this.__awaiter||function(e,n,r,a){function t(e){return e instanceof r?e:new r((function(n){n(e)}))}return new(r||(r=Promise))((function(r,l){function d(e){try{o(a.next(e))}catch(e){l(e)}}function i(e){try{o(a["throw"](e))}catch(e){l(e)}}function o(e){e.done?r(e.value):t(e.value).then(d,i)}o((a=a.apply(e,n||[])).next())}))};var __generator=this&&this.__generator||function(e,n){var r={label:0,sent:function(){if(l[0]&1)throw l[1];return l[1]},trys:[],ops:[]},a,t,l,d;return d={next:i(0),throw:i(1),return:i(2)},typeof Symbol==="function"&&(d[Symbol.iterator]=function(){return this}),d;function i(e){return function(n){return o([e,n])}}function o(d){if(a)throw new TypeError("Generator is already executing.");while(r)try{if(a=1,t&&(l=d[0]&2?t["return"]:d[0]?t["throw"]||((l=t["return"])&&l.call(t),0):t.next)&&!(l=l.call(t,d[1])).done)return l;if(t=0,l)d=[d[0]&2,l.value];switch(d[0]){case 0:case 1:l=d;break;case 4:r.label++;return{value:d[1],done:false};case 5:r.label++;t=d[1];d=[0];continue;case 7:d=r.ops.pop();r.trys.pop();continue;default:if(!(l=r.trys,l=l.length>0&&l[l.length-1])&&(d[0]===6||d[0]===2)){r=0;continue}if(d[0]===3&&(!l||d[1]>l[0]&&d[1]<l[3])){r.label=d[1];break}if(d[0]===6&&r.label<l[1]){r.label=l[1];l=d;break}if(l&&r.label<l[2]){r.label=l[2];r.ops.push(d);break}if(l[2])r.ops.pop();r.trys.pop();continue}d=n.call(e,r)}catch(e){d=[6,e];t=0}finally{a=l=0}if(d[0]&5)throw d[1];return{value:d[0]?d[1]:void 0,done:true}}};var __spreadArrays=this&&this.__spreadArrays||function(){for(var e=0,n=0,r=arguments.length;n<r;n++)e+=arguments[n].length;for(var a=Array(e),t=0,n=0;n<r;n++)for(var l=arguments[n],d=0,i=l.length;d<i;d++,t++)a[t]=l[d];return a};import{h}from"./index-17b4da69.js";import{b as browser,f as useReducer,u as useEffect}from"./stencil-hooks.module-203eab48.js";import{d as dist,N,O,x,a as dn,v as vn}from"./index.module-48cc9ee0.js";import{u as useRerenderListener}from"./re-render-f406e379.js";import{u as useChildElements}from"./useChildElements-11279a92.js";var debug=browser("sq:useReferralTable");var CSS_NAMESPACE="sqm-referral-table";var GET_REFERRER_DATA=dist.gql(templateObject_1||(templateObject_1=__makeTemplateObject(["\n query getReferrals(\n $programId: ID\n $rewardFilter: RewardFilterInput\n $locale: RSLocale\n ) {\n viewer {\n ... on User {\n referredByReferral(programId: $programId) {\n dateConverted\n dateFraudChecksCompleted\n dateModerated\n dateModified\n dateReferralEnded\n dateReferralPaid\n dateReferralStarted\n dateUserModified\n referrerUser {\n firstName\n lastName\n }\n rewards(filter: $rewardFilter) {\n id\n type\n value\n unit\n name\n dateGiven\n dateExpires\n dateCancelled\n dateRedeemed\n dateScheduledFor\n fuelTankCode\n fuelTankType\n currency\n prettyValue(locale: $locale)\n statuses\n globalRewardKey\n programRewardKey\n meta {\n integration {\n name\n }\n message\n }\n rewardRedemptionTransactions {\n data {\n exchangedRewards {\n data {\n prettyValue(locale: $locale)\n type\n fuelTankCode\n globalRewardKey\n }\n }\n }\n }\n }\n }\n }\n }\n }\n"],["\n query getReferrals(\n $programId: ID\n $rewardFilter: RewardFilterInput\n $locale: RSLocale\n ) {\n viewer {\n ... on User {\n referredByReferral(programId: $programId) {\n dateConverted\n dateFraudChecksCompleted\n dateModerated\n dateModified\n dateReferralEnded\n dateReferralPaid\n dateReferralStarted\n dateUserModified\n referrerUser {\n firstName\n lastName\n }\n rewards(filter: $rewardFilter) {\n id\n type\n value\n unit\n name\n dateGiven\n dateExpires\n dateCancelled\n dateRedeemed\n dateScheduledFor\n fuelTankCode\n fuelTankType\n currency\n prettyValue(locale: $locale)\n statuses\n globalRewardKey\n programRewardKey\n meta {\n integration {\n name\n }\n message\n }\n rewardRedemptionTransactions {\n data {\n exchangedRewards {\n data {\n prettyValue(locale: $locale)\n type\n fuelTankCode\n globalRewardKey\n }\n }\n }\n }\n }\n }\n }\n }\n }\n"])));var GET_REFERRAL_DATA=dist.gql(templateObject_2||(templateObject_2=__makeTemplateObject(['\n query getReferrals(\n $limit: Int!\n $offset: Int!\n $referralFilter: ReferralFilterInput\n $rewardFilter: RewardFilterInput\n $locale: RSLocale\n ) {\n viewer {\n ... on User {\n id\n paidReferrals: referrals(\n filter: { dateReferralPaid_timeframe: "this_10_years" }\n limit: 1\n ) {\n totalCount\n }\n referrals(limit: $limit, offset: $offset, filter: $referralFilter) {\n totalCount\n count\n data {\n id\n referredUser {\n id\n accountId\n firstName\n lastName\n email\n programGoals {\n goalId\n programId\n count\n firstDate\n lastDate\n conversionCount\n }\n }\n shareLinkUsed\n referralCodeUsed\n moderationStatus\n dateConverted\n dateFraudChecksCompleted\n dateModerated\n dateModified\n dateReferralEnded\n dateReferralPaid\n dateReferralStarted\n dateUserModified\n programId\n program {\n id\n name\n }\n rewards(filter: $rewardFilter) {\n id\n type\n value\n unit\n name\n dateGiven\n dateExpires\n dateCancelled\n dateRedeemed\n dateScheduledFor\n fuelTankCode\n fuelTankType\n currency\n prettyValue(locale: $locale)\n statuses\n globalRewardKey\n programRewardKey\n rewardRedemptionTransactions {\n data {\n exchangedRewards {\n data {\n prettyValue(locale: $locale)\n type\n fuelTankCode\n globalRewardKey\n }\n }\n }\n }\n }\n childNodes(limit: 10, offset: 0) {\n data {\n data {\n id\n ... on FlatReward {\n id\n statuses\n type\n value\n }\n ... on ProgramEmailTransaction {\n id\n rewardId\n dateCreated\n dateSent\n dateQueued\n }\n }\n depth\n }\n }\n }\n }\n }\n }\n }\n'],['\n query getReferrals(\n $limit: Int!\n $offset: Int!\n $referralFilter: ReferralFilterInput\n $rewardFilter: RewardFilterInput\n $locale: RSLocale\n ) {\n viewer {\n ... on User {\n id\n paidReferrals: referrals(\n filter: { dateReferralPaid_timeframe: "this_10_years" }\n limit: 1\n ) {\n totalCount\n }\n referrals(limit: $limit, offset: $offset, filter: $referralFilter) {\n totalCount\n count\n data {\n id\n referredUser {\n id\n accountId\n firstName\n lastName\n email\n programGoals {\n goalId\n programId\n count\n firstDate\n lastDate\n conversionCount\n }\n }\n shareLinkUsed\n referralCodeUsed\n moderationStatus\n dateConverted\n dateFraudChecksCompleted\n dateModerated\n dateModified\n dateReferralEnded\n dateReferralPaid\n dateReferralStarted\n dateUserModified\n programId\n program {\n id\n name\n }\n rewards(filter: $rewardFilter) {\n id\n type\n value\n unit\n name\n dateGiven\n dateExpires\n dateCancelled\n dateRedeemed\n dateScheduledFor\n fuelTankCode\n fuelTankType\n currency\n prettyValue(locale: $locale)\n statuses\n globalRewardKey\n programRewardKey\n rewardRedemptionTransactions {\n data {\n exchangedRewards {\n data {\n prettyValue(locale: $locale)\n type\n fuelTankCode\n globalRewardKey\n }\n }\n }\n }\n }\n childNodes(limit: 10, offset: 0) {\n data {\n data {\n id\n ... on FlatReward {\n id\n statuses\n type\n value\n }\n ... on ProgramEmailTransaction {\n id\n rewardId\n dateCreated\n dateSent\n dateQueued\n }\n }\n depth\n }\n }\n }\n }\n }\n }\n }\n'])));function useReferralTable(e,n,r){var a,t,l;var d=N();var i=O();var o=(a=e.programId)!==null&&a!==void 0?a:i;var s=o?o==="classic"?{programId_exists:false}:{programId_eq:o}:{};var u={userId_eq:d===null||d===void 0?void 0:d.id,accountId_eq:d===null||d===void 0?void 0:d.accountId};var f=useReducer((function(e,n){return __assign(__assign({},e),n)}),{columns:[],rows:[],loading:false,page:0}),c=f[0],m=f[1];var p=x();var v=dn(GET_REFERRER_DATA,{programId:o==="classic"?null:o,rewardFilter:u,locale:p},!e.showReferrer||!(d===null||d===void 0?void 0:d.jwt)),g=v.data,h=v.loading,w=v.refetch;var R=(t=g===null||g===void 0?void 0:g.viewer)===null||t===void 0?void 0:t.referredByReferral;var y=e.showReferrer&&!!(R===null||R===void 0?void 0:R.dateReferralStarted);var _=vn(GET_REFERRAL_DATA,(function(e){var n;return(n=e===null||e===void 0?void 0:e.viewer)===null||n===void 0?void 0:n.referrals}),{limit:e.perPage,offset:0},{referralFilter:s,rewardFilter:u,locale:p},e.showReferrer&&h&&!g||!(d===null||d===void 0?void 0:d.jwt)),b=_.envelope,C=_.states,E=_.callbacks;useEffect((function(){if(C.currentPage===0&&y)E.setLimit(e.perPage-1)}),[y]);useEffect((function(){if(e.showReferrer&&y){E.setLimit(e.perPage-1);E.setCurrentPage(0)}else{E.setLimit(e.perPage);E.setCurrentPage(0)}}),[e.showReferrer]);var P=useRerenderListener();var T=b===null||b===void 0?void 0:b.data;var $=useChildElements();function F(e){return __awaiter(this,void 0,void 0,(function(){var n,r,a,t,l,d,i,o,s,u;var f=this;return __generator(this,(function(c){switch(c.label){case 0:n=e.filter((function(e){return e.slot!=="loading"&&e.slot!=="empty"}));r=n===null||n===void 0?void 0:n.map((function(e){return __awaiter(f,void 0,void 0,(function(){return __generator(this,(function(n){return[2,tryMethod(e,(function(){return e.renderLabel()}))]}))}))}));if(!(y&&C.currentPage===0))return[3,2];t=n===null||n===void 0?void 0:n.map((function(e){return __awaiter(f,void 0,void 0,(function(){return __generator(this,(function(n){return[2,tryMethod(e,(function(){return e.renderReferrerCell(R,p)}))]}))}))}));return[4,Promise.all(t)];case 1:a=c.sent();c.label=2;case 2:l=T===null||T===void 0?void 0:T.map((function(e){return __awaiter(f,void 0,void 0,(function(){var r,a;var t=this;return __generator(this,(function(l){switch(l.label){case 0:r=n===null||n===void 0?void 0:n.map((function(n){return __awaiter(t,void 0,void 0,(function(){return __generator(this,(function(r){return[2,tryMethod(n,(function(){return n.renderCell(e,p)}))]}))}))}));return[4,Promise.all(r)];case 1:a=l.sent();return[2,a]}}))}))}));i=l;if(!i)return[3,4];o=[[a]];return[4,Promise.all(l)];case 3:i=__spreadArrays.apply(void 0,o.concat([c.sent()])).filter((function(e){return e}));c.label=4;case 4:d=i;m({rows:d});u=r;if(!u)return[3,6];return[4,Promise.all(r)];case 5:u=c.sent();c.label=6;case 6:s=u;m({columns:s,loading:false,page:C.currentPage});return[2]}}))}))}useEffect((function(){m({loading:true});b&&F($)}),[b,$,P]);var I=!((l=c===null||c===void 0?void 0:c.rows)===null||l===void 0?void 0:l.length)&&!(T===null||T===void 0?void 0:T.length);var k=C.loading||c.loading?"loading":I?"empty":"rows";return{states:{hasNext:C.currentPage<C.pageCount-1,hasPrev:C.currentPage>0,show:k,namespace:CSS_NAMESPACE},data:{textOverrides:{showLabels:!e.hideLabels,prevLabel:e.prevLabel,moreLabel:e.moreLabel},hiddenColumns:e.hiddenColumns,smBreakpoint:e.smBreakpoint,mdBreakpoint:e.mdBreakpoint},elements:{columns:c.columns,rows:c.rows,emptyElement:n,loadingElement:r},callbacks:{nextPage:function(){if(C.currentPage===0&&y)E.setLimit(e.perPage);E.setCurrentPage(C.currentPage+1)},prevPage:function(){if(C.currentPage===1&&y)E.setLimit(e.perPage-1);E.setCurrentPage(C.currentPage-1)}}}}function generateUserError(e){try{return JSON.stringify(e)}catch(e){return"An unknown error"}}function tryMethod(e,n){return __awaiter(this,void 0,void 0,(function(){var r,a,t,l;return __generator(this,(function(d){switch(d.label){case 0:r=e.tagName.toLowerCase();return[4,customElements.whenDefined(r)];case 1:d.sent();try{a=n()}catch(e){if(n.name==="renderReferrerCell"){debug("column does not have a renderReferrerCell method.")}else{debug("label promise failed",e)}debug("label promise failed",e);return[2,h("span",null)]}d.label=2;case 2:d.trys.push([2,4,,5]);return[4,a];case 3:return[2,d.sent()];case 4:t=d.sent();debug("Error rendering label",t);l=generateUserError(t);return[2,h("details",null,h("summary",null,"Error"),l)];case 5:return[2]}}))}))}export{generateUserError as g,tryMethod as t,useReferralTable as u};var templateObject_1,templateObject_2;