PageSourceSearch

https://www.joinkudos.com/7191.0e68416a6523bca87936.js

js joinkudos.com collected 2026-09-24 10:00:36 UTC 18,210 bytes, 210 lines download raw bytes

1!function(){try{var e="undefined"!=typeof window?window:"undefined"!=typeof global?global:"undefined"!=typeof globalThis?globalThis:"undefined"!=typeof self?self:{},t=(new e.Error).stack;t&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[t]="fd4c7b96-8441-4dc3-b306-1b68066e02c9",e._sentryDebugIdIdentifier="sentry-dbid-fd4c7b96-8441-4dc3-b306-1b68066e02c9")}catch(e){}}();var _global="undefined"!=typeof window?window:"undefined"!=typeof global?global:"undefined"!=typeof globalThis?globalThis:"undefined"!=typeof self?self:{};_global.SENTRY_RELEASE={id:"2b92991d99f92e33e079a8241d5dc3965c249983"},(self.webpackChunkkudos_portal=self.webpackChunkkudos_portal||[]).push([[7191],{2224:(e,t,r)=>{r.d(t,{A:()=>i});var o=r(81887),n=r(79390),l=r(14041),a=r(5088);const i=({execution:e,actionType:t})=>{return l.createElement(o.A,{color:(r=e.status,r===n.Mu1.Completed?"success":r===n.Mu1.FailedRetryable?"danger":r===n.Mu1.Failed||r===n.Mu1.Cancelled?"pending":"warning"),label:(0,a.WY)(e.status,t,e.negotiationStatus)});var r}},7867:(e,t,r)=>{r.d(t,{A:()=>a});var o,n=r(14041);function l(){return l=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var r=arguments[t];for(var o in r)({}).hasOwnProperty.call(r,o)&&(e[o]=r[o])}return e},l.apply(null,arguments)}const a=function(e){return n.createElement("svg",l({width:"1em",height:"1em",viewBox:"0 0 14 10",fill:"none",xmlns:"http://www.w3.org/2000/svg"},e),o||(o=n.createElement("path",{d:"m1 5 4 4 8-8",stroke:"currentColor",strokeWidth:1.5,strokeLinecap:"round",strokeLinejoin:"round"})))}},15809:(e,t,r)=>{r.d(t,{A:()=>i});var o,n,l=r(14041);function a(){return a=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var r=arguments[t];for(var o in r)({}).hasOwnProperty.call(r,o)&&(e[o]=r[o])}return e},a.apply(null,arguments)}const i=function(e){return l.createElement("svg",a({width:"1em",height:"1em",viewBox:"0 0 24 24",fill:"none",xmlns:"http://www.w3.org/2000/svg"},e),o||(o=l.createElement("path",{d:"M11.333 15.773h-4.26a.654.654 0 0 1-.654-.654V4.653c0-.36.292-.654.654-.654h4.947c.182 0 .356.076.48.21l2.902 3.134c.112.121.174.28.174.445v1.336",stroke:"currentColor",strokeWidth:1.5,strokeLinecap:"round",strokeLinejoin:"round"})),n||(n=l.createElement("path",{d:"M15.575 7.924h-3.27a.654.654 0 0 1-.655-.654V4M15.583 12.807c-1.274 0-1.998.715-1.998 1.598 0 .884.724 1.599 1.998 1.599s1.998.715 1.998 1.599c0 .883-.724 1.598-1.998 1.598m0-6.394c.853 0 1.6.32 1.998.799m-1.998-.8v-.799m0 7.194v.8m0-.8c-.854 0-1.6-.321-1.998-.799",stroke:"currentColor",strokeWidth:1.5,strokeLinecap:"round",strokeLinejoin:"round"})))}},57789:(e,t,r)=>{r.r(t),r.d(t,{default:()=>D});var o=r(13913),n=r(48774),l=r(47950),a=r(50228),i=r(97303),d=r(12243),s=r(40242),c=r(14041),u=r(43705),p=r(73657),m=r(76990),g=r(5902),h=r(2224),v=r(43136),b=r(76627),f=r(5088),y=r(58777);const w=m.Ay.div`
2    padding: 32px 112px 0;
3
4    @media ${s.z4.maxTablet} {
5        padding: 24px 16px 0;
6    }
7`,x=(0,m.Ay)(l.I1)`
8    max-width: 930px;
9    margin: 0 auto;
10    padding: 16px;
11    gap: 12px;
12    border: 1px solid ${({theme:e})=>e.colors.border.primary};
13    background: ${({theme:e})=>e.colors.bg.primary};
14`,k=(0,m.Ay)(l.Ye)`
15    padding: 16px 16px 16px 24px;
16    flex-direction: column;
17    align-items: flex-start;
18    gap: 10px;
19
20    border-radius: 10px;
21    border: 1px solid ${({theme:e})=>e.colors.border.accent.purpleSecondary};
22    background: ${({theme:e})=>e.colors.bg.accent.purpleTertiary};
23
24    /* Elevation/Z2 */
25    box-shadow: 0 2px 8px 0 rgba(11, 19, 31, 0.12);
26
27    @media ${s.z4.maxTablet} {
28        padding: 16px;
29    }
30`,E=(0,m.Ay)(l.I1)`
31    gap: 8px;
32`,$=(0,m.Ay)(l.Ye)`
33    padding: 12px 16px;
34    border-radius: 8px;
35    border: 1px solid ${({theme:e})=>e.colors.border.primary};
36    background: ${({theme:e})=>e.colors.bg.primary};
37    align-items: center;
38    gap: 16px;
39    overflow: clip;
40
41    @media ${s.z4.maxTablet} {
42        flex-wrap: wrap;
43    }
44`,A=(0,m.Ay)(l.Ye)`
45    align-items: center;
46    gap: 16px;
47    width: 100%;
48
49    @media ${s.z4.maxTablet} {
50        flex-direction: column;
51        align-items: flex-start;
52    }
53`,I=m.Ay.button`
54    display: flex;
55    flex-direction: column;
56    align-items: flex-start;
57    gap: 8px;
58    flex: 1;
59    min-width: 0;
60    padding: 0;
61    margin: 0;
62    border: none;
63    background: transparent;
64    cursor: pointer;
65    text-align: left;
66    font: inherit;
67    color: inherit;
68
69    &:focus-visible {
70        outline: 2px solid ${({theme:e})=>e.colors.text.link};
71        outline-offset: 2px;
72        border-radius: 4px;
73    }
74`,T=(0,m.Ay)(v.Si)`
75    max-width: 206px;
76    margin: 0 auto;
77    padding: 0;
78    background: transparent;
79`,C=m.Ay.div`
80    display: flex;
81    align-items: center;
82    gap: 12px;
83    padding: 5px;
84    border-radius: 50%;
85    background: ${({theme:e})=>e.colors.bg.primary};
86    font-size: 18px;
87    font-weight: 600;
88    color: ${({theme:e})=>e.colors.text.inverse};
89    pointer-events: none;
90`,P=e=>{var t,r,o,n;return(null===(r=null===(t=e.payment)||void 0===t?void 0:t.merchant)||void 0===r?void 0:r.name)||(null===(n=null===(o=e.workflow)||void 0===o?void 0:o.merchant)||void 0===n?void 0:n.name)||"Provider"},M=e=>{var t,r,o,n;return(null===(r=null===(t=e.payment)||void 0===t?void 0:t.merchant)||void 0===r?void 0:r.logoThumbnailUri)||(null===(n=null===(o=e.workflow)||void 0===o?void 0:o.merchant)||void 0===n?void 0:n.logoThumbnailUri)||void 0},S=({videoUrl:e})=>{const t=(0,m.DP)(),r=(0,c.useRef)(null),[o,l]=(0,c.useState)(!1),a=()=>{r.current&&(r.current.play(),l(!0))};return c.createElement(T,null,c.createElement(v.L9,{ref:r,controls:o,preload:"metadata",onPause:()=>l(!1),onPlay:()=>l(!0)},c.createElement("source",{src:e,type:"video/mp4"})),!o&&c.createElement(v.zF,{"aria-label":"Play highlight video",onClick:a,onKeyDown:e=>{"Enter"!==e.key&&" "!==e.key||(e.preventDefault(),a())}},c.createElement(C,null,c.createElement(n.A,{icon:y.A,size:24,color:t.colors.icon.primary}))))},D=()=>{const e=(0,m.DP)(),t=(0,u.d4)(e=>{var t;return null===(t=e.userSlice)||void 0===t?void 0:t.isSignedIn}),[,r]=(0,p.ok)(),{inProgressItems:n,completedItems:s}=(0,b.k)(),v=(0,c.useMemo)(()=>s.filter(e=>"lowering"===e.actionType),[s]),y=(0,c.useMemo)(()=>n.filter(e=>"lowering"===e.actionType),[n]),T=(0,c.useCallback)(e=>{var t,n,l,a;const i=null===(t=e.workflow)||void 0===t?void 0:t.id;i&&(g.KudosAnalytics.send("event",{type:o.sV.BILL_MANAGEMENT_SEE_DETAILS_TAPPED,mixpanelData:{paymentId:null===(n=e.payment)||void 0===n?void 0:n.id,merchantName:(null===(a=null===(l=e.payment)||void 0===l?void 0:l.merchant)||void 0===a?void 0:a.name)||e.partnerName,status:e.actionType,trackingContext:o.p8}}),r(e=>{const t=new URLSearchParams(e);return t.set("workflowId",i),t},{replace:!0}))},[r]);
90return t?0===v.length&&0===y.length?null:c.createElement(w,null,c.createElement(x,null,v.length>0&&c.createElement(l.I1,{gap:8},c.createElement(d.aL,{secondary:!0},"Completed"),v.map(t=>{var r;const o=P(t),n=M(t),a=(e=>{var t,r,o,n;return null!==(n=null===(o=null===(r=null===(t=e.workflow.tasks)||void 0===t?void 0:t.find(e=>{var t;return null===(t=e.shareable)||void 0===t?void 0:t.mp4Url}))||void 0===r?void 0:r.shareable)||void 0===o?void 0:o.mp4Url)&&void 0!==n?n:void 0})(t);return c.createElement(k,{key:null===(r=t.workflow)||void 0===r?void 0:r.id},c.createElement(A,null,c.createElement(I,{type:"button","aria-label":`View details for ${o} bill negotiation`,onClick:()=>T(t)},c.createElement(i.A,{logoUrl:n,name:o,size:40}),c.createElement(l.I1,{gap:4,style:{alignItems:"flex-start",width:"100%"}},c.createElement(d._c,{primary:!0},"We called ",t.workflow.tasks.length," ",o," agent",t.workflow.tasks.length>1?"s":""," and confirmed you have the best deal"),c.createElement(d.aL,{style:{color:e.colors.text.link}},"You can feel great about your bill! Hear it for yourself"))),a&&c.createElement(S,{videoUrl:a})))})),y.length>0&&c.createElement(l.I1,{gap:8},c.createElement(d.aL,{secondary:!0},"In progress"),c.createElement(E,null,y.map(e=>{var t;const r=P(e),o=M(e),n=!!e.workflow&&(0,f.n5)(e.workflow);return c.createElement($,{key:null===(t=e.workflow)||void 0===t?void 0:t.id},c.createElement(l.Ye,{align:"center",gap:"8px",style:{flex:1,minWidth:0}},c.createElement(i.A,{logoUrl:o,name:r,size:42}),c.createElement(d.aL,{style:{minWidth:0}},r)),c.createElement(h.A,{execution:e.workflow,actionType:e.actionType}),c.createElement(a.A,{size:"40px",variant:n?"primary":"secondary",style:{flexShrink:0},onClick:()=>T(e)},n?"I'm ready":"See details"))}))))):null}},58777:(e,t,r)=>{r.d(t,{A:()=>i});var o,n,l=r(14041);function a(){return a=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var r=arguments[t];for(var o in r)({}).hasOwnProperty.call(r,o)&&(e[o]=r[o])}return e},a.apply(null,arguments)}const i=function(e){return l.createElement("svg",a({width:"1em",height:"1em",viewBox:"0 0 24 24",fill:"none",xmlns:"http://www.w3.org/2000/svg"},e),o||(o=l.createElement("path",{d:"M16.061 12 9.546 8.09v7.819l6.515-3.91Z",stroke:"currentColor",strokeWidth:1.5,strokeLinecap:"round",strokeLinejoin:"round"})),n||(n=l.createElement("circle",{cx:12,cy:12,r:9,stroke:"currentColor",strokeWidth:1.5,strokeLinecap:"round",strokeLinejoin:"round"})))}},76627:(e,t,r)=>{r.d(t,{k:()=>m});var o=r(85608),n=r(30571),l=r(26105),a=r(79390),i=r(47246),d=r(99420),s=r.n(d),c=r(14041),u=r(43705),p=r(39197);const m=()=>{var e,t,r,d;const m=(0,u.d4)(e=>{var t;return null===(t=e.userSlice)||void 0===t?void 0:t.user}),g=null==m?void 0:m.id,{startDate:h,endDate:v}=(0,c.useMemo)(()=>({startDate:s().utc().startOf("year").toISOString(),endDate:s().utc().startOf("month").add(365,"days").toISOString()}),[]),{data:b,loading:f,error:y,refetch:w}=(0,n.IT)(l.jg2,{variables:{userId:g||"",filter:{status:a.DQ6.Active,startDate:h,endDate:v},sort:{field:a.o09.Amount,direction:a.xBQ.Desc}},skip:!g}),{data:x,loading:k}=(0,n.IT)(l.sxE,{variables:{userId:null==m?void 0:m.id},skip:!(null==m?void 0:m.id)}),{workflowExecutions:E,loading:$,error:A,refetch:I}=(0,p.w)(),T=(null===(t=null===(e=null==b?void 0:b.Users_fetchById)||void 0===e?void 0:e.recurringPayments)||void 0===t?void 0:t.results)||[],C=(0,c.useMemo)(()=>{const e=new Map;return T.forEach(t=>{var r,o;null===(o=null===(r=t.merchant)||void 0===r?void 0:r.workflows)||void 0===o||o.forEach(r=>{e.set(r.id,t)})}),e},[T]),P=(0,c.useMemo)(()=>{const e=new Map;return T.forEach(t=>{t.groupId&&!e.has(t.groupId)&&e.set(t.groupId,t)}),e},[T]),{inProgressItems:M,completedItems:S,usedConfigIds:D}=(0,c.useMemo)(()=>{const e=[],t=[],r=new Set;return E.forEach(o=>{var n,l,d,s,c,u,p,m,g;const h=o.config;if(!h)return;const v=h.taskType,b=(e=>{switch(e){case a.ymE.SubscriptionCancel:case a.ymE.SubscriptionCancelManual:return"cancelling";case a.ymE.BillNegotiate:default:return"lowering"}})(v),f=o.status,y=null===(l=null===(n=o.recurringPayments)||void 0===n?void 0:n.find(e=>P.has(e.groupId)))||void 0===l?void 0:l.groupId,w=null!==(d=y?P.get(y):void 0)&&void 0!==d?d:C.get(h.id),x=null!==(c=null===(s=h.partner)||void 0===s?void 0:s.name)&&void 0!==c?c:void 0,k=null!==(p=null===(u=h.partner)||void 0===u?void 0:u.thumbnailUri)&&void 0!==p?p:void 0;if((0,i.OW)(f,v)&&v!==a.ymE.SubscriptionCancelManual&&(r.add(h.id),e.push({payment:w,workflow:o,taskType:v,status:f,actionType:b,partnerName:x,partnerThumbnailUri:k})),(0,i.vf)(f)&&f!==a.Mu1.FailedRetryable){r.add(h.id);const e=(0,i.pp)(o),n=f===a.Mu1.Cancelled;t.push({payment:w,workflow:o,taskType:v,actionType:b,completedAt:null!==(g=null!==(m=o.completedAt)&&void 0!==m?m:o.createdAt)&&void 0!==g?g:(new Date).toISOString(),succeeded:e,cancelled:n,partnerName:x,partnerThumbnailUri:k})}}),e.sort((e,t)=>
90{const r=e.workflow.createdAt?new Date(e.workflow.createdAt).getTime():0;return(t.workflow.createdAt?new Date(t.workflow.createdAt).getTime():0)-r}),t.sort((e,t)=>new Date(t.completedAt).getTime()-new Date(e.completedAt).getTime()),{inProgressItems:e,completedItems:t,usedConfigIds:r}},[E,C,P]),{lowerEligiblePayments:z,cancelEligiblePayments:L,manualCancelEligiblePayments:U}=(0,c.useMemo)(()=>{const{lowerEligible:e,cancelEligible:t,manualCancelEligible:r}=(0,i.ti)(T,a.RTX.Web,D);return{lowerEligiblePayments:e,cancelEligiblePayments:t,manualCancelEligiblePayments:[...r].sort((e,t)=>new Date(e.paymentDate).getTime()-new Date(t.paymentDate).getTime())}},[T,D]),j=(0,c.useMemo)(()=>{let e=0,t=0,r=0,o=0;return S.forEach(n=>{n.succeeded&&(o+=1,"cancelling"===n.actionType?e+=1:t+=1,r+=(0,i.$h)(n.workflow,n.payment))}),{subscriptionsCancelled:e,billsLowered:t,moneySaved:r,timeSavedHours:o*i.a}},[S]),H=S.length>0,_=null===(d=null===(r=null==x?void 0:x.Users_fetchById)||void 0===r?void 0:r.financialAccounts)||void 0===d?void 0:d.some(e=>e.plaidAccount&&e.linkedCard);return{lowerEligiblePayments:z,cancelEligiblePayments:L,manualCancelEligiblePayments:U,allPayments:T,loading:f||$,error:y||A,refetch:()=>(0,o.sH)(void 0,void 0,void 0,function*(){w(),yield I()}),stats:j,inProgressItems:M,completedItems:S,isReturningUser:H,hasPlaidConnected:_,isPlaidConnectedLoading:k}}},81887:(e,t,r)=>{r.d(t,{A:()=>d});var o=r(14041),n=r(76990),l=r(12243);const a=n.Ay.div`
91    display: flex;
92    gap: 8px;
93    align-items: center;
94    padding: 1px 8px;
95    border-radius: 100px;
96    white-space: nowrap;
97
98    ${({color:e})=>{switch(e){case"disabled":return n.AH`
99                    background-color: ${({theme:e})=>e.colors.primitives.gray300};
100                    color: ${({theme:e})=>e.colors.text.secondary};
101                `;
101case"pending":return n.AH`
102                    background-color: ${({theme:e})=>e.colors.bg.secondary};
103                    color: ${({theme:e})=>e.colors.text.secondary};
104                    border: 1px solid ${({theme:e})=>e.colors.border.primary};
105                `;case"notice":return n.AH`
106                    background-color: ${({theme:e})=>e.colors.bg.accent.purpleSecondary};
107                    color: ${({theme:e})=>e.colors.text.accent.purple};
108                    border: 1px solid ${({theme:e})=>e.colors.border.accent.purpleSecondary};
109                `;case"success":return n.AH`
110                    background-color: ${({theme:e})=>e.colors.bg.success};
111                    color: ${({theme:e})=>e.colors.text.success};
112                    border: 1px solid rgba(0, 184, 110, 0.2);
113                `;case"danger":return n.AH`
114                    background-color: #f9ebea;
115                    color: ${({theme:e})=>e.colors.text.danger};
116                    border: 1px solid #f3d9d7;
117                `;case"warning":return n.AH`
118                    background-color: ${({theme:e})=>e.colors.bg.accent.yellowSecondary};
119                    border: 1px solid #ffebb1;
120                    color: ${({theme:e})=>e.colors.text.warning};
121                `}}};
122
123    ${({size:e})=>"small"===e&&n.AH`
124            padding: 0 6px;
125            gap: 4px;
126            ${l.a6} {
127                ${l.R$}
128            }
129        `};
130`,i=n.Ay.div`
131    height: 10px;
132    width: 10px;
133    border-radius: 50%;
134    background-color: ${({theme:e})=>e.colors.icon.disabled};
135
136    ${({color:e,theme:t})=>{switch(e){case"disabled":case"pending":return n.AH`
137                    background-color: ${t.colors.icon.disabled};
138                `;case"notice":return n.AH`
139                    background-color: ${t.colors.bg.accent.purple};
140                `;case"success":return n.AH`
141                    background-color: ${t.colors.bg.successSecondary};
142                `;case"danger":return n.AH`
143                    background-color: ${t.colors.bg.danger};
144                `;case"warning":return n.AH`
145                    background-color: ${t.colors.bg.primaryYellow};
146                `}}};
147`,d=({color:e,size:t="medium",label:r})=>o.createElement(a,{size:t,color:e},o.createElement(i,{color:e}),o.createElement(l.a6,{responsive:!1},r))},97303:(e,t,r)=>{r.d(t,{A:()=>m});var o=r(14041),n=r(76990);const l=n.Ay.div`
148    position: relative;
149    width: ${({$size:e})=>e}px;
150    height: ${({$size:e})=>e}px;
151    flex-shrink: 0;
152`,a=n.Ay.div`
153    width: ${({$size:e})=>e}px;
154    height: ${({$size:e})=>e}px;
155    border-radius: 50%;
156    overflow: hidden;
157    background: ${({theme:e})=>e.colors.bg.secondary};
158    display: flex;
159    align-items: center;
160    justify-content: center;
161    max-width: 100%;
162    max-height: 100%;
163
164    ${({$withBorder:e,theme:t})=>e&&n.AH`
165            border: 1px solid ${t.colors.border.primary};
166        `}
167`,i=n.Ay.img`
168    width: 100%;
169    height: 100%;
170    object-fit: contain;
171`,d=n.Ay.span`
172    color: ${({theme:e})=>e.colors.text.secondary};
173    text-transform: uppercase;
174    font-weight: 600;
175    font-size: ${({$size:e})=>Math.max(10,Math.round(.35*e))}px;
176    line-height: 1;
177`,s=n.Ay.div`
178    position: absolute;
179    ${({$position:e})=>"top-right"===e?"top: -2px;":"bottom: -2px;"}
180    right: -8px;
181    min-width: 20px;
182    min-height: 20px;
183    border-radius: 50%;
184    display: flex;
185    align-items: center;
186    justify-content: center;
187`,c=n.Ay.div`
188    position: absolute;
189    bottom: ${-2}px;
190    right: ${-6}px;
191    width: ${23}px;
192    height: ${23}px;
193    border-radius: 50%;
194    background: #000;
195    display: flex;
196    align-items: center;
197    justify-content: center;
198    overflow: hidden;
199`,u=n.Ay.img`
200    width: 100%;
201    height: 100%;
202    object-fit: cover;
203`,p=n.Ay.span`
204    color: #fff;
205    text-transform: uppercase;
206    font-weight: 600;
207    font-size: ${Math.max(10,Math.round(11.5))}px;
208    line-height: 1;
209`,m=({logoUrl:e,name:t,size:r=42,className:n,showBadge:m=!1,badgeContent:g,badgePosition:h="bottom-right",withBorder:v=!0,subMerchantLogoUrl:b,subMerchantName:f})=>{var y,w;const x=(null===(y=null==t?void 0:t.charAt(0))||void 0===y?void 0:y.toUpperCase())||"?",k=(null===(w=null==f?void 0:f.charAt(0))||void 0===w?void 0:w.toUpperCase())||"?",E=Boolean(b||f);return o.createElement(l,{$size:r,className:n},o.createElement(a,{$size:r,$withBorder:v},e?o.createElement(i,{src:e,alt:t}):o.createElement(d,{$size:r},x)),m&&o.createElement(s,{$position:h},g),E&&o.createElement(c,null,b?o.createElement(u,{src:b,alt:f||""}):o.createElement(p,null,k)))}}}]);
210//# sourceMappingURL=7191.0e68416a6523bca87936.js.map

Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.