@givefreely/adunit 2.6.1-dev.0 → 2.6.2-dev.0

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.
@@ -1,2 +1,2 @@
1
- "use strict";const e=Symbol("solid-proxy"),t="function"==typeof Proxy,n={equals:(e,t)=>e===t};let r=O;const o=1,i=2,a={owned:null,cleanups:null,context:null,owner:null},s={};var l=null;let c=null,d=null,u=null,g=null,p=0;function h(e,t){const r={value:e,observers:null,observerSlots:null,comparator:(t=t?Object.assign({},n,t):n).equals||void 0};return[k.bind(r),e=>("function"==typeof e&&(e=e(r.value)),P(r,e))]}function f(e,t,n){S(T(e,t,!1,o))}function m(e,t,n){r=L;const i=T(e,t,!1,o);i.user=!0,g?g.push(i):S(i)}function v(e,t,r){r=r?Object.assign({},n,r):n;const o=T(e,t,!0,0);return o.observers=null,o.observerSlots=null,o.comparator=r.equals||void 0,S(o),k.bind(o)}function y(e,t,n){let r,i,a;"function"==typeof t?(r=e,i=t,a={}):(r=!0,i=e,a=t||{});let l=null,c=s,d=!1,u="initialValue"in a,g="function"==typeof r&&v(r);const p=new Set,[f,m]=(a.storage||h)(a.initialValue),[y,b]=h(void 0),[A,w]=h(void 0,{equals:!1}),[C,k]=h(u?"ready":"unresolved");function P(e,t,n,r){return l===e&&(l=null,void 0!==r&&(u=!0),e!==c&&t!==c||!a.onHydrated||queueMicrotask((()=>a.onHydrated(r,{value:t}))),c=s,function(e,t){D((()=>{void 0===t&&m((()=>e)),k(void 0!==t?"errored":u?"ready":"unresolved"),b(t);for(const e of p.keys())e.decrement();p.clear()}),!1)}(t,n)),t}function E(){const e=f(),t=y();if(void 0!==t&&!l)throw t;return e}function O(e=!0){if(!1!==e&&d)return;d=!1;const t=g?g():r;if(null==t||!1===t)return void P(l,x(f));const n=c!==s?c:x((()=>i(t,{value:f(),refetching:e})));return(o=n)&&"object"==typeof o&&"then"in o?(l=n,"value"in n?("success"===n.status?P(l,n.value,void 0,t):P(l,void 0,$(n.value),t),n):(d=!0,queueMicrotask((()=>d=!1)),D((()=>{k(u?"refreshing":"pending"),w()}),!1),n.then((e=>P(n,e,void 0,t)),(e=>P(n,void 0,$(e),t))))):(P(l,n,void 0,t),n);var o}return Object.defineProperties(E,{state:{get:()=>C()},error:{get:()=>y()},loading:{get(){const e=C();return"pending"===e||"refreshing"===e}},latest:{get(){if(!u)return E();const e=y();if(e&&!l)throw e;return f()}}}),g?S(T((()=>O(!1)),void 0,!0,o)):O(!1),[E,{refetch:O,mutate:m}]}function x(e){if(null===d)return e();const t=d;d=null;try{return e()}finally{d=t}}function b(e){m((()=>x(e)))}function A(e){return null===l||(null===l.cleanups?l.cleanups=[e]:l.cleanups.push(e)),e}function w(e){let t;return l&&l.context&&void 0!==(t=l.context[e.id])?t:e.defaultValue}function C(e){const t=v(e),n=v((()=>R(t())));return n.toArray=()=>{const e=n();return Array.isArray(e)?e:null!=e?[e]:[]},n}function k(){if(this.sources&&this.state)if(this.state===o)S(this);else{const e=u;u=null,D((()=>I(this)),!1),u=e}if(d){const e=this.observers?this.observers.length:0;d.sources?(d.sources.push(this),d.sourceSlots.push(e)):(d.sources=[this],d.sourceSlots=[e]),this.observers?(this.observers.push(d),this.observerSlots.push(d.sources.length-1)):(this.observers=[d],this.observerSlots=[d.sources.length-1])}return this.value}function P(e,t,n){let r=e.value;return e.comparator&&e.comparator(r,t)||(e.value=t,e.observers&&e.observers.length&&D((()=>{for(let t=0;t<e.observers.length;t+=1){const n=e.observers[t],r=c&&c.running;r&&c.disposed.has(n),(r?n.tState:n.state)||(n.pure?u.push(n):g.push(n),n.observers&&N(n)),r||(n.state=o)}if(u.length>1e6)throw u=[],new Error}),!1)),t}function S(e){if(!e.fn)return;M(e);const t=p;!function(e,t,n){let r;const i=l,a=d;d=l=e;try{r=e.fn(t)}catch(t){return e.pure&&(e.state=o,e.owned&&e.owned.forEach(M),e.owned=null),e.updatedAt=n+1,H(t)}finally{d=a,l=i}(!e.updatedAt||e.updatedAt<=n)&&(null!=e.updatedAt&&"observers"in e?P(e,r):e.value=r,e.updatedAt=n)}(e,e.value,t)}function T(e,t,n,r=o,i){const s={fn:e,state:r,updatedAt:null,owned:null,sources:null,sourceSlots:null,cleanups:null,value:t,owner:l,context:l?l.context:null,pure:n};return null===l||l!==a&&(l.owned?l.owned.push(s):l.owned=[s]),s}function E(e){if(0===e.state)return;if(e.state===i)return I(e);if(e.suspense&&x(e.suspense.inFallback))return e.suspense.effects.push(e);const t=[e];for(;(e=e.owner)&&(!e.updatedAt||e.updatedAt<p);)e.state&&t.push(e);for(let n=t.length-1;n>=0;n--)if((e=t[n]).state===o)S(e);else if(e.state===i){const n=u;u=null,D((()=>I(e,t[0])),!1),u=n}}function D(e,t){if(u)return e();let n=!1;t||(u=[]),g?n=!0:g=[],p++;try{const t=e();return function(e){if(u&&(O(u),u=null),e)return;const t=g;g=null,t.length&&D((()=>r(t)),!1)}(n),t}catch(e){n||(g=null),u=null,H(e)}}function O(e){for(let t=0;t<e.length;t++)E(e[t])}function L(e){let t,n=0;for(t=0;t<e.length;t++){const r=e[t];r.user?e[n++]=r:E(r)}for(t=0;t<n;t++)E(e[t])}function I(e,t){e.state=0;for(let n=0;n<e.sources.length;n+=1){const r=e.sources[n];if(r.sources){const e=r.state;e===o?r!==t&&(!r.updatedAt||r.updatedAt<p)&&E(r):e===i&&I(r,t)}}}function N(e){for(let t=0;t<e.observers.length;t+=1){const n=e.observers[t];n.state||(n.state=i,n.pure?u.push(n):g.push(n),n.observers&&N(n))}}function M(e){let t;if(e.sources)for(;e.sources.length;){const t=e.sources.pop(),n=e.sourceSlots.pop(),r=t.observers;if(r&&r.length){const e=r.pop(),o=t.observerSlots.pop();n<r.length&&(e.sourceSlots[o]=n,r[n]=e,t.observerSlots[n]=o)}}if(e.tOwned){for(t=e.tOwned.length-1;t>=0;t--)M(e.tOwned[t]);delete e.tOwned}if(e.owned){for(t=e.owned.length-1;t>=0;t--)M(e.owned[t]);e.owned=null}if(e.cleanups){for(t=e.cleanups.length-1;t>=0;t--)e.cleanups[t]();e.cleanups=null}e.state=0}function $(e){return e instanceof Error?e:new Error("string"==typeof e?e:"Unknown error",{cause:e})}function H(e,t=l){throw $(e)}function R(e){if("function"==typeof e&&!e.length)return R(e());if(Array.isArray(e)){const t=[];for(let n=0;n<e.length;n++){const r=R(e[n]);Array.isArray(r)?t.push.apply(t,r):t.push(r)}return t}return e}function U(e,t){return function(t){let n;return f((()=>n=x((()=>(l.context={...l.context,[e]:t.value},C((()=>t.children)))))),void 0),n}}function _(e,t){return x((()=>e(t||{})))}function F(){return!0}const G={get:(t,n,r)=>n===e?r:t.get(n),has:(t,n)=>n===e||t.has(n),set:F,deleteProperty:F,getOwnPropertyDescriptor:(e,t)=>({configurable:!0,enumerable:!0,get:()=>e.get(t),set:F,deleteProperty:F}),ownKeys:e=>e.keys()};function B(e){return(e="function"==typeof e?e():e)?e:{}}function j(){for(let e=0,t=this.length;e<t;++e){const t=this[e]();if(void 0!==t)return t}}function W(...n){let r=!1;for(let t=0;t<n.length;t++){const o=n[t];r=r||!!o&&e in o,n[t]="function"==typeof o?(r=!0,v(o)):o}if(t&&r)return new Proxy({get(e){for(let t=n.length-1;t>=0;t--){const r=B(n[t])[e];if(void 0!==r)return r}},has(e){for(let t=n.length-1;t>=0;t--)if(e in B(n[t]))return!0;return!1},keys(){const e=[];for(let t=0;t<n.length;t++)e.push(...Object.keys(B(n[t])));return[...new Set(e)]}},G);const o={},i=Object.create(null);for(let e=n.length-1;e>=0;e--){const t=n[e];if(!t)continue;const r=Object.getOwnPropertyNames(t);for(let e=r.length-1;e>=0;e--){const n=r[e];if("__proto__"===n||"constructor"===n)continue;const a=Object.getOwnPropertyDescriptor(t,n);if(i[n]){const e=o[n];e&&(a.get?e.push(a.get.bind(t)):void 0!==a.value&&e.push((()=>a.value)))}else i[n]=a.get?{enumerable:!0,configurable:!0,get:j.bind(o[n]=[a.get.bind(t)])}:void 0!==a.value?a:void 0}}const a={},s=Object.keys(i);for(let e=s.length-1;e>=0;e--){const t=s[e],n=i[t];n&&n.get?Object.defineProperty(a,t,n):a[t]=n?n.value:void 0}return a}const q=e=>`Stale read from <${e}>.`;function z(e){const t=e.keyed,n=v((()=>e.when),void 0,{equals:(e,n)=>t?e===n:!e==!n});return v((()=>{const r=n();if(r){const o=e.children;return"function"==typeof o&&o.length>0?x((()=>o(t?r:()=>{if(!x(n))throw q("Show");return e.when}))):o}return e.fallback}),void 0,void 0)}function V(e){let t=!1;const n=C((()=>e.children)),r=v((()=>{let e=n();Array.isArray(e)||(e=[e]);for(let n=0;n<e.length;n++){const r=e[n].when;if(r)return t=!!e[n].keyed,[n,r,e[n]]}return[-1]}),void 0,{equals:(e,n)=>(t?e[1]===n[1]:!e[1]==!n[1])&&e[2]===n[2]});return v((()=>{const[n,o,i]=r();if(n<0)return e.fallback;const a=i.children;return"function"==typeof a&&a.length>0?x((()=>a(t?o:()=>{if(x(r)[0]!==n)throw q("Match");return i.when}))):a}),void 0,void 0)}function K(e){return e}const Y="_$DX_DELEGATE";function X(e,t,n,r={}){let o;return function(e,t){const n=d,r=l,o=0===e.length,i=void 0===t?r:t,s=o?a:{owned:null,cleanups:null,context:i?i.context:null,owner:i},c=o?e:()=>e((()=>x((()=>M(s)))));l=s,d=null;try{return D(c,!0)}finally{d=n,l=r}}((r=>{o=r,t===document?e():re(t,e(),t.firstChild?null:void 0,n)}),r.owner),()=>{o(),t.textContent=""}}function Z(e,t,n){let r;const o=()=>(r||(r=(()=>{const t=document.createElement("template");return t.innerHTML=e,t.content.firstChild})())).cloneNode(!0);return o.cloneNode=o,o}function J(e,t=window.document){const n=t[Y]||(t[Y]=new Set);for(let r=0,o=e.length;r<o;r++){const o=e[r];n.has(o)||(n.add(o),t.addEventListener(o,oe))}}function Q(e,t,n){null==n?e.removeAttribute(t):e.setAttribute(t,n)}function ee(e,t,n,r){Array.isArray(n)?(e[`$$${t}`]=n[0],e[`$$${t}Data`]=n[1]):e[`$$${t}`]=n}function te(e,t,n){if(!t)return n?Q(e,"style"):t;const r=e.style;if("string"==typeof t)return r.cssText=t;let o,i;for(i in"string"==typeof n&&(r.cssText=n=void 0),n||(n={}),t||(t={}),n)null==t[i]&&r.removeProperty(i),delete n[i];for(i in t)o=t[i],o!==n[i]&&(r.setProperty(i,o),n[i]=o);return n}function ne(e,t,n){return x((()=>e(t,n)))}function re(e,t,n,r){if(void 0===n||r||(r=[]),"function"!=typeof t)return ie(e,t,r,n);f((r=>ie(e,t(),r,n)),r)}function oe(e){let t=e.target;const n=`$$${e.type}`,r=e.target,o=e.currentTarget,i=t=>Object.defineProperty(e,"target",{configurable:!0,value:t}),a=()=>{const r=t[n];if(r&&!t.disabled){const o=t[`${n}Data`];if(void 0!==o?r.call(t,o,e):r.call(t,e),e.cancelBubble)return}return t.host&&"string"!=typeof t.host&&!t.host._$host&&t.contains(e.target)&&i(t.host),!0},s=()=>{for(;a()&&(t=t._$host||t.parentNode||t.host););};if(Object.defineProperty(e,"currentTarget",{configurable:!0,get:()=>t||document}),e.composedPath){const n=e.composedPath();i(n[0]);for(let e=0;e<n.length-2&&(t=n[e],a());e++){if(t._$host){t=t._$host,s();break}if(t.parentNode===o)break}}else s();i(r)}function ie(e,t,n,r,o){for(;"function"==typeof n;)n=n();if(t===n)return n;const i=typeof t,a=void 0!==r;if(e=a&&n[0]&&n[0].parentNode||e,"string"===i||"number"===i){if("number"===i&&(t=t.toString())===n)return n;if(a){let o=n[0];o&&3===o.nodeType?o.data!==t&&(o.data=t):o=document.createTextNode(t),n=le(e,n,r,o)}else n=""!==n&&"string"==typeof n?e.firstChild.data=t:e.textContent=t}else if(null==t||"boolean"===i)n=le(e,n,r);else{if("function"===i)return f((()=>{let o=t();for(;"function"==typeof o;)o=o();n=ie(e,o,n,r)})),()=>n;if(Array.isArray(t)){const i=[],s=n&&Array.isArray(n);if(ae(i,t,n,o))return f((()=>n=ie(e,i,n,r,!0))),()=>n;if(0===i.length){if(n=le(e,n,r),a)return n}else s?0===n.length?se(e,i,r):function(e,t,n){let r=n.length,o=t.length,i=r,a=0,s=0,l=t[o-1].nextSibling,c=null;for(;a<o||s<i;)if(t[a]!==n[s]){for(;t[o-1]===n[i-1];)o--,i--;if(o===a){const t=i<r?s?n[s-1].nextSibling:n[i-s]:l;for(;s<i;)e.insertBefore(n[s++],t)}else if(i===s)for(;a<o;)c&&c.has(t[a])||t[a].remove(),a++;else if(t[a]===n[i-1]&&n[s]===t[o-1]){const r=t[--o].nextSibling;e.insertBefore(n[s++],t[a++].nextSibling),e.insertBefore(n[--i],r),t[o]=n[i]}else{if(!c){c=new Map;let e=s;for(;e<i;)c.set(n[e],e++)}const r=c.get(t[a]);if(null!=r)if(s<r&&r<i){let l,d=a,u=1;for(;++d<o&&d<i&&null!=(l=c.get(t[d]))&&l===r+u;)u++;if(u>r-s){const o=t[a];for(;s<r;)e.insertBefore(n[s++],o)}else e.replaceChild(n[s++],t[a++])}else a++;else t[a++].remove()}}else a++,s++}(e,n,i):(n&&le(e),se(e,i));n=i}else if(t.nodeType){if(Array.isArray(n)){if(a)return n=le(e,n,r,t);le(e,n,null,t)}else null!=n&&""!==n&&e.firstChild?e.replaceChild(t,e.firstChild):e.appendChild(t);n=t}}return n}function ae(e,t,n,r){let o=!1;for(let i=0,a=t.length;i<a;i++){let a,s=t[i],l=n&&n[e.length];if(null==s||!0===s||!1===s);else if("object"==(a=typeof s)&&s.nodeType)e.push(s);else if(Array.isArray(s))o=ae(e,s,l)||o;else if("function"===a)if(r){for(;"function"==typeof s;)s=s();o=ae(e,Array.isArray(s)?s:[s],Array.isArray(l)?l:[l])||o}else e.push(s),o=!0;else{const t=String(s);l&&3===l.nodeType&&l.data===t?e.push(l):e.push(document.createTextNode(t))}}return o}function se(e,t,n=null){for(let r=0,o=t.length;r<o;r++)e.insertBefore(t[r],n)}function le(e,t,n,r){if(void 0===n)return e.textContent="";const o=r||document.createTextNode("");if(t.length){let r=!1;for(let i=t.length-1;i>=0;i--){const a=t[i];if(o!==a){const t=a.parentNode===e;r||i?t&&a.remove():t?e.replaceChild(o,a):e.insertBefore(o,n)}else r=!0}}else e.insertBefore(o,n);return[o]}const ce={top:"50px",left:"calc(100% - 700px)",margin:"0",width:"640px","max-height":"80vh",padding:"2px 5px 10px 5px","background-color":"white",border:"none","border-radius":"24px","box-shadow":"0px 4px 44px rgba(0, 0, 0, 0.25)","font-family":"Arial","line-height":"1","vertical-align":"baseline","box-sizing":"border-box",color:"rgb(34, 34, 34)","@media (max-width: 600px), (max-height: 480px)":{display:"none !important"}},de={height:"100%","overflow-x":"hidden","overlfow-y":"auto",position:"relative",padding:"0px 15px"},ue={},ge={display:"flex","flex-direction":"column-reverse","align-items":"center","margin-bottom":"10px"},pe={flex:"1","font-size":"24px","font-weight":"700","margin-top":"5px","margin-bottom":"0px"},he={background:"none",border:"none",padding:"4px 8px","align-self":"flex-end",color:"#666464","font-size":"38px",cursor:"pointer","line-height":"1"},fe={color:"#707070","align-self":"flex-end","margin-top":"5px","max-width":"40%"},me={color:"#707070",cursor:"default","pointer-events":"none","text-decoration":"none"},ve={"font-size":"18px","font-weight":"400","margin-top":"0px","margin-bottom":"0px"},ye={display:"flex",gap:"10px",width:"100%","margin-top":"20px","margin-bottom":"20px","flex-wrap":"wrap","justify-content":"space-between"},xe={width:"30%",position:"relative",display:"flex","flex-direction":"column","align-items":"center","justify-content":"space-between",background:"none",border:"1px solid #ccc","border-radius":"5px",padding:"5px",gap:"5px","text-align":"center","font-size":"14px",cursor:"pointer",transition:"background-color 0.2s ease"},be={color:"white","background-color":"lightgray",cursor:"default","pointer-events":"none"},Ae={"max-width":"120px","max-height":"70px","margin-bottom":"5px","object-fit":"contain"},we={"background-color":"#0052FF",cursor:"pointer","border-radius":"32px",padding:"8px",color:"white","min-width":"100px",border:"0","font-weight":"600",width:"120px"},Ce={display:"flex","flex-direction":"column",gap:"10px",width:"100%","color-scheme":"light"},ke={display:"flex","align-items":"center",gap:"5px",border:"1px solid #ddd",padding:"15px","border-radius":"5px","font-weight":"600",cursor:"pointer","margin-bottom":"8px"},Pe={"text-align":"right"},Se={background:"none",border:"none",color:"blue","text-decoration":"underline",padding:"0",cursor:"pointer","margin-bottom":"15px"},Te={display:"flex","justify-content":"space-between","align-items":"center",position:"relative",margin:"20px 0px 10px 0px","font-size":"14px"},Ee={margin:"5px 0px 5px 0px","font-size":"14px","text-align":"center"},De={color:"#666464","text-decoration":"underline"},Oe={color:"rgb(102, 100, 100)","text-decoration":"underline",margin:"0",cursor:"pointer"},Le={position:"absolute",left:"50%",top:"50%",transform:"translate(-50%, -50%)",width:"8px",height:"8px","border-radius":"50%"},Ie={width:"100%","background-color":"#f2f2f2",border:"1px solid black","border-radius":"10px","border-top":"1px solid #bbb7b7","margin-top":"10px","margin-bottom":"20px","box-sizing":"border-box"},Ne={padding:"0 5px 0 10px",width:"100%","font-size":"12px","box-sizing":"border-box"},Me={display:"grid","grid-template-columns":"4fr 1fr","padding-right":"15px","padding-bottom":"5px"},$e={color:"#000","margin-bottom":"4px"},He={"font-size":"14px",color:"#555","text-align":"right"},Re={display:"flex","justify-content":"flex-end","margin-top":"8px","margin-bottom":"4px"},Ue={"font-size":"20px","text-align":"center","margin-bottom":"20px",color:"#333c5e","line-height":"1.3"},_e={"font-size":"15px","font-weight":"400","text-align":"center",color:"#555","margin-bottom":"20px"},Fe={color:"#000000","font-size":"11px","text-align":"right","text-decoration":"none","white-space":"nowrap"},Ge={display:"grid","grid-template-columns":"repeat(4, 1fr)",gap:"12px",width:"100%","margin-top":"16px","margin-bottom":"16px"},Be={display:"flex","flex-direction":"column","align-items":"center","justify-content":"space-between",border:"1px solid #c4c4c4","border-radius":"12px",padding:"16px 10px",gap:"10px","text-align":"center","font-size":"14px",cursor:"pointer",background:"white",position:"relative",transition:"background-color 0.2s ease","box-shadow":"0 2px 12px rgba(0, 0, 0, 0.18)"},je={"background-color":"#3a67ab",cursor:"pointer","border-radius":"999px",padding:"10px 0",color:"white",width:"100%",border:"0","font-weight":"600","font-size":"15px"},We={"background-color":"#f7f7f8","border-top":"1px solid #b0b0b0","border-radius":"0 0 24px 24px",margin:"0 -20px -10px -20px",padding:"0 20px 10px 20px","font-size":"13px"},qe={display:"flex","flex-direction":"row","justify-content":"space-evenly","align-items":"center",gap:"10px",padding:"14px 0"},ze={display:"inline-block",width:"8px",height:"8px","border-radius":"50%","flex-shrink":"0"},Ve={color:"#1a1a1a","text-decoration":"underline",cursor:"pointer"};function Ke(e){return e&&e.__esModule&&Object.prototype.hasOwnProperty.call(e,"default")?e.default:e}"undefined"!=typeof globalThis?globalThis:"undefined"!=typeof window?window:"undefined"!=typeof global?global:"undefined"!=typeof self&&self;var Ye={exports:{}};"undefined"!=typeof globalThis?globalThis:"undefined"!=typeof self&&self,function(e){if(!(globalThis.chrome&&globalThis.chrome.runtime&&globalThis.chrome.runtime.id))throw new Error("This script should only be loaded in a browser extension.");if(globalThis.browser&&globalThis.browser.runtime&&globalThis.browser.runtime.id)e.exports=globalThis.browser;else{const t="The message port closed before a response was received.",n=e=>{const n={alarms:{clear:{minArgs:0,maxArgs:1},clearAll:{minArgs:0,maxArgs:0},get:{minArgs:0,maxArgs:1},getAll:{minArgs:0,maxArgs:0}},bookmarks:{create:{minArgs:1,maxArgs:1},get:{minArgs:1,maxArgs:1},getChildren:{minArgs:1,maxArgs:1},getRecent:{minArgs:1,maxArgs:1},getSubTree:{minArgs:1,maxArgs:1},getTree:{minArgs:0,maxArgs:0},move:{minArgs:2,maxArgs:2},remove:{minArgs:1,maxArgs:1},removeTree:{minArgs:1,maxArgs:1},search:{minArgs:1,maxArgs:1},update:{minArgs:2,maxArgs:2}},browserAction:{disable:{minArgs:0,maxArgs:1,fallbackToNoCallback:!0},enable:{minArgs:0,maxArgs:1,fallbackToNoCallback:!0},getBadgeBackgroundColor:{minArgs:1,maxArgs:1},getBadgeText:{minArgs:1,maxArgs:1},getPopup:{minArgs:1,maxArgs:1},getTitle:{minArgs:1,maxArgs:1},openPopup:{minArgs:0,maxArgs:0},setBadgeBackgroundColor:{minArgs:1,maxArgs:1,fallbackToNoCallback:!0},setBadgeText:{minArgs:1,maxArgs:1,fallbackToNoCallback:!0},setIcon:{minArgs:1,maxArgs:1},setPopup:{minArgs:1,maxArgs:1,fallbackToNoCallback:!0},setTitle:{minArgs:1,maxArgs:1,fallbackToNoCallback:!0}},browsingData:{remove:{minArgs:2,maxArgs:2},removeCache:{minArgs:1,maxArgs:1},removeCookies:{minArgs:1,maxArgs:1},removeDownloads:{minArgs:1,maxArgs:1},removeFormData:{minArgs:1,maxArgs:1},removeHistory:{minArgs:1,maxArgs:1},removeLocalStorage:{minArgs:1,maxArgs:1},removePasswords:{minArgs:1,maxArgs:1},removePluginData:{minArgs:1,maxArgs:1},settings:{minArgs:0,maxArgs:0}},commands:{getAll:{minArgs:0,maxArgs:0}},contextMenus:{remove:{minArgs:1,maxArgs:1},removeAll:{minArgs:0,maxArgs:0},update:{minArgs:2,maxArgs:2}},cookies:{get:{minArgs:1,maxArgs:1},getAll:{minArgs:1,maxArgs:1},getAllCookieStores:{minArgs:0,maxArgs:0},remove:{minArgs:1,maxArgs:1},set:{minArgs:1,maxArgs:1}},devtools:{inspectedWindow:{eval:{minArgs:1,maxArgs:2,singleCallbackArg:!1}},panels:{create:{minArgs:3,maxArgs:3,singleCallbackArg:!0},elements:{createSidebarPane:{minArgs:1,maxArgs:1}}}},downloads:{cancel:{minArgs:1,maxArgs:1},download:{minArgs:1,maxArgs:1},erase:{minArgs:1,maxArgs:1},getFileIcon:{minArgs:1,maxArgs:2},open:{minArgs:1,maxArgs:1,fallbackToNoCallback:!0},pause:{minArgs:1,maxArgs:1},removeFile:{minArgs:1,maxArgs:1},resume:{minArgs:1,maxArgs:1},search:{minArgs:1,maxArgs:1},show:{minArgs:1,maxArgs:1,fallbackToNoCallback:!0}},extension:{isAllowedFileSchemeAccess:{minArgs:0,maxArgs:0},isAllowedIncognitoAccess:{minArgs:0,maxArgs:0}},history:{addUrl:{minArgs:1,maxArgs:1},deleteAll:{minArgs:0,maxArgs:0},deleteRange:{minArgs:1,maxArgs:1},deleteUrl:{minArgs:1,maxArgs:1},getVisits:{minArgs:1,maxArgs:1},search:{minArgs:1,maxArgs:1}},i18n:{detectLanguage:{minArgs:1,maxArgs:1},getAcceptLanguages:{minArgs:0,maxArgs:0}},identity:{launchWebAuthFlow:{minArgs:1,maxArgs:1}},idle:{queryState:{minArgs:1,maxArgs:1}},management:{get:{minArgs:1,maxArgs:1},getAll:{minArgs:0,maxArgs:0},getSelf:{minArgs:0,maxArgs:0},setEnabled:{minArgs:2,maxArgs:2},uninstallSelf:{minArgs:0,maxArgs:1}},notifications:{clear:{minArgs:1,maxArgs:1},create:{minArgs:1,maxArgs:2},getAll:{minArgs:0,maxArgs:0},getPermissionLevel:{minArgs:0,maxArgs:0},update:{minArgs:2,maxArgs:2}},pageAction:{getPopup:{minArgs:1,maxArgs:1},getTitle:{minArgs:1,maxArgs:1},hide:{minArgs:1,maxArgs:1,fallbackToNoCallback:!0},setIcon:{minArgs:1,maxArgs:1},setPopup:{minArgs:1,maxArgs:1,fallbackToNoCallback:!0},setTitle:{minArgs:1,maxArgs:1,fallbackToNoCallback:!0},show:{minArgs:1,maxArgs:1,fallbackToNoCallback:!0}},permissions:{contains:{minArgs:1,maxArgs:1},getAll:{minArgs:0,maxArgs:0},remove:{minArgs:1,maxArgs:1},request:{minArgs:1,maxArgs:1}},runtime:{getBackgroundPage:{minArgs:0,maxArgs:0},getPlatformInfo:{minArgs:0,maxArgs:0},openOptionsPage:{minArgs:0,maxArgs:0},requestUpdateCheck:{minArgs:0,maxArgs:0},sendMessage:{minArgs:1,maxArgs:3},sendNativeMessage:{minArgs:2,maxArgs:2},setUninstallURL:{minArgs:1,maxArgs:1}},sessions:{getDevices:{minArgs:0,maxArgs:1},getRecentlyClosed:{minArgs:0,maxArgs:1},restore:{minArgs:0,maxArgs:1}},storage:{local:{clear:{minArgs:0,maxArgs:0},get:{minArgs:0,maxArgs:1},getBytesInUse:{minArgs:0,maxArgs:1},remove:{minArgs:1,maxArgs:1},set:{minArgs:1,maxArgs:1}},managed:{get:{minArgs:0,maxArgs:1},getBytesInUse:{minArgs:0,maxArgs:1}},sync:{clear:{minArgs:0,maxArgs:0},get:{minArgs:0,maxArgs:1},getBytesInUse:{minArgs:0,maxArgs:1},remove:{minArgs:1,maxArgs:1},set:{minArgs:1,maxArgs:1}}},tabs:{captureVisibleTab:{minArgs:0,maxArgs:2},create:{minArgs:1,maxArgs:1},detectLanguage:{minArgs:0,maxArgs:1},discard:{minArgs:0,maxArgs:1},duplicate:{minArgs:1,maxArgs:1},executeScript:{minArgs:1,maxArgs:2},get:{minArgs:1,maxArgs:1},getCurrent:{minArgs:0,maxArgs:0},getZoom:{minArgs:0,maxArgs:1},getZoomSettings:{minArgs:0,maxArgs:1},goBack:{minArgs:0,maxArgs:1},goForward:{minArgs:0,maxArgs:1},highlight:{minArgs:1,maxArgs:1},insertCSS:{minArgs:1,maxArgs:2},move:{minArgs:2,maxArgs:2},query:{minArgs:1,maxArgs:1},reload:{minArgs:0,maxArgs:2},remove:{minArgs:1,maxArgs:1},removeCSS:{minArgs:1,maxArgs:2},sendMessage:{minArgs:2,maxArgs:3},setZoom:{minArgs:1,maxArgs:2},setZoomSettings:{minArgs:1,maxArgs:2},update:{minArgs:1,maxArgs:2}},topSites:{get:{minArgs:0,maxArgs:0}},webNavigation:{getAllFrames:{minArgs:1,maxArgs:1},getFrame:{minArgs:1,maxArgs:1}},webRequest:{handlerBehaviorChanged:{minArgs:0,maxArgs:0}},windows:{create:{minArgs:0,maxArgs:1},get:{minArgs:1,maxArgs:2},getAll:{minArgs:0,maxArgs:1},getCurrent:{minArgs:0,maxArgs:1},getLastFocused:{minArgs:0,maxArgs:1},remove:{minArgs:1,maxArgs:1},update:{minArgs:2,maxArgs:2}}};if(0===Object.keys(n).length)throw new Error("api-metadata.json has not been included in browser-polyfill");class r extends WeakMap{constructor(e,t=void 0){super(t),this.createItem=e}get(e){return this.has(e)||this.set(e,this.createItem(e)),super.get(e)}}const o=(t,n)=>(...r)=>{e.runtime.lastError?t.reject(new Error(e.runtime.lastError.message)):n.singleCallbackArg||r.length<=1&&!1!==n.singleCallbackArg?t.resolve(r[0]):t.resolve(r)},i=e=>1==e?"argument":"arguments",a=(e,t,n)=>new Proxy(t,{apply:(t,r,o)=>n.call(r,e,...o)});let s=Function.call.bind(Object.prototype.hasOwnProperty);const l=(e,t={},n={})=>{let r=Object.create(null),c={has:(t,n)=>n in e||n in r,get(c,d,u){if(d in r)return r[d];if(!(d in e))return;let g=e[d];if("function"==typeof g)if("function"==typeof t[d])g=a(e,e[d],t[d]);else if(s(n,d)){let t=((e,t)=>function(n,...r){if(r.length<t.minArgs)throw new Error(`Expected at least ${t.minArgs} ${i(t.minArgs)} for ${e}(), got ${r.length}`);if(r.length>t.maxArgs)throw new Error(`Expected at most ${t.maxArgs} ${i(t.maxArgs)} for ${e}(), got ${r.length}`);return new Promise(((i,a)=>{if(t.fallbackToNoCallback)try{n[e](...r,o({resolve:i,reject:a},t))}catch(o){console.warn(`${e} API method doesn't seem to support the callback parameter, falling back to call it without a callback: `,o),n[e](...r),t.fallbackToNoCallback=!1,t.noCallback=!0,i()}else t.noCallback?(n[e](...r),i()):n[e](...r,o({resolve:i,reject:a},t))}))})(d,n[d]);g=a(e,e[d],t)}else g=g.bind(e);else if("object"==typeof g&&null!==g&&(s(t,d)||s(n,d)))g=l(g,t[d],n[d]);else{if(!s(n,"*"))return Object.defineProperty(r,d,{configurable:!0,enumerable:!0,get:()=>e[d],set(t){e[d]=t}}),g;g=l(g,t[d],n["*"])}return r[d]=g,g},set:(t,n,o,i)=>(n in r?r[n]=o:e[n]=o,!0),defineProperty:(e,t,n)=>Reflect.defineProperty(r,t,n),deleteProperty:(e,t)=>Reflect.deleteProperty(r,t)},d=Object.create(e);return new Proxy(d,c)},c=e=>({addListener(t,n,...r){t.addListener(e.get(n),...r)},hasListener:(t,n)=>t.hasListener(e.get(n)),removeListener(t,n){t.removeListener(e.get(n))}}),d=new r((e=>"function"!=typeof e?e:function(t){const n=l(t,{},{getContent:{minArgs:0,maxArgs:0}});e(n)})),u=new r((e=>"function"!=typeof e?e:function(t,n,r){let o,i,a=!1,s=new Promise((e=>{o=function(t){a=!0,e(t)}}));try{i=e(t,n,o)}catch(e){i=Promise.reject(e)}const l=!0!==i&&((c=i)&&"object"==typeof c&&"function"==typeof c.then);var c;if(!0!==i&&!l&&!a)return!1;return(l?i:s).then((e=>{r(e)}),(e=>{let t;t=e&&(e instanceof Error||"string"==typeof e.message)?e.message:"An unexpected error occurred",r({__mozWebExtensionPolyfillReject__:!0,message:t})})).catch((e=>{console.error("Failed to send onMessage rejected reply",e)})),!0})),g=({reject:n,resolve:r},o)=>{e.runtime.lastError?e.runtime.lastError.message===t?r():n(new Error(e.runtime.lastError.message)):o&&o.__mozWebExtensionPolyfillReject__?n(new Error(o.message)):r(o)},p=(e,t,n,...r)=>{if(r.length<t.minArgs)throw new Error(`Expected at least ${t.minArgs} ${i(t.minArgs)} for ${e}(), got ${r.length}`);if(r.length>t.maxArgs)throw new Error(`Expected at most ${t.maxArgs} ${i(t.maxArgs)} for ${e}(), got ${r.length}`);return new Promise(((e,t)=>{const o=g.bind(null,{resolve:e,reject:t});r.push(o),n.sendMessage(...r)}))},h={devtools:{network:{onRequestFinished:c(d)}},runtime:{onMessage:c(u),onMessageExternal:c(u),sendMessage:p.bind(null,"sendMessage",{minArgs:1,maxArgs:3})},tabs:{sendMessage:p.bind(null,"sendMessage",{minArgs:2,maxArgs:3})}},f={clear:{minArgs:1,maxArgs:1},get:{minArgs:1,maxArgs:1},set:{minArgs:1,maxArgs:1}};return n.privacy={network:{"*":f},services:{"*":f},websites:{"*":f}},l(e,h,n)};e.exports=n(chrome)}}(Ye);var Xe,Ze,browser=Ke(Ye.exports);class Je{constructor(){this.isLocal=!0}log({level:e,message:t,timestamp:n,data:r,title:o}){let i;switch(e){case"debug":default:i="log";break;case"info":i="info";break;case"warn":i="warn";break;case"error":case"critical":case"fatal":i="error"}const a=o?`[${o}]`:"";void 0!==r?console[i](`[${n}] - ${Je.LOGGER_PREFIX} ${a} ${t}`,r):console[i](`[${n}] - ${Je.LOGGER_PREFIX} ${a} ${t}`)}}Je.LOGGER_PREFIX="[DonationPopup] -",function(e){e.checkoutPopupShown="CHECKOUT-POPUP-SHOWN",e.checkoutPopupNotShown="CHECKOUT-POPUP-NOT-SHOWN",e.checkoutPopupSupressed="CHECKOUT-POPUP-SUPRESSED",e.checkoutPopupDonation="CHECKOUT-POPUP-DONATION",e.checkoutPopupFailedActivation="CHECKOUT-POPUP-FAILED-ACTIVATION",e.checkoutPopupPurchaseConfirmed="CHECKOUT-POPUP-PURCHASE-CONFIRMED",e.checkoutPopupHealthCheck="CHECKOUT-POPUP-HEALTH-CHECK",e.checkouPopupActivationFailed="CHECKOUT-POPUP-ACTIVATION-FAILED",e.checkoutPopupOfferDetailsClicked="CHECKOUT-POPUP-OFFER-DETAILS-CLICKED",e.checkoutPopupWhyAmISeeingThisClicked="CHECKOUT-POPUP-WHY-AM-I-SEEING-THIS-CLICKED",e.checkoutPopupLooserExtension="CHECKOUT-POPUP-LOOSER-EXTENSION",e.checkoutPopupActiveDomain="CHECKOUT-POPUP-ACTIVE-DOMAIN",e.checkoutPopupSiteMatches="CHECKOUT-POPUP-SITE-MATCHES",e.checkoutPopupMerchantInResultsFound="CHECKOUT-MERCHANT-IN-RESULTS-FOUND",e.checkoutPopupNotShownPerViewportSize="CHECKOUT-POPUP-NOT-SHOWN-PER-VIEWPORT-SIZE",e.checkoutPopupHiddenProgrammatically="CHECKOUT-POPUP-HIDDEN-PROGRAMMATICALLY",e.checkoutPopupGoogleSearch="CHECKOUT-POPUP-GOOGLE-SEARCH",e.checkoutPopupGooglePartnerAnnCreated="CHECKOUT-POPUP-GOOGLE-PARTNER-ANN-CREATED",e.checkoutPopupGooglePartnerAnnClicked="CHECKOUT-POPUP-GOOGLE-PARTNER-ANN-CLICKED",e.checkoutPopupGooglePartnerAnnHidden="CHECKOUT-POPUP-GOOGLE-PARTNER-ANN-HIDDEN",e.checkoutPopupStoodDown="CHECKOUT-POPUP-STOOD-DOWN",e.checkoutPopupFooterDismiss="CHECKOUT-POPUP-FOOTER-DISMISS"}(Xe||(Xe={})),function(e){e.libLog="GFLIB-LOG"}(Ze||(Ze={}));const Qe=["debug","info","warn","error","critical","fatal"];class et{constructor(e){this.config={minLevel:e?.minLevel??"error",enabled:e?.enabled??!1,transports:e?.transports??[new Je],title:e?.title??""}}static getInstance(e){return et.instance||(et.instance=new et(e)),et.instance}configure(e){this.config={...this.config,...e}}shouldLog(e){return!!this.config.enabled&&Qe.indexOf(e)>=Qe.indexOf(this.config.minLevel)}createLogMessage(e,t,n){return{level:e,version:"2.6.1",message:t,timestamp:(new Date).toISOString(),data:n,title:this.config.title}}log(e,t,n,r){if(!this.shouldLog(e))return;const o=this.createLogMessage(e,t,r);this.config.transports.filter((e=>!n||e.isLocal)).forEach((e=>e.log(o)))}debug(e,t,n=!1){this.log("debug",e,n,t)}info(e,t,n=!1){this.log("info",e,n,t)}warn(e,t,n=!1){this.log("warn",e,n,t)}error(e,t,n=!1){this.log("error",e,n,t)}critical(e,t,n=!1){this.log("critical",e,n,t)}fatal(e,t,n=!1){this.log("fatal",e,n,t)}addTransport(e){this.config.transports.push(e)}clearTransports(){this.config.transports=[]}disable(){this.config.enabled=!1}enable(){this.config.enabled=!0}}const tt=3,nt=e=>1e3*e,rt=browser;async function ot(e,t){return await rt.runtime.sendMessage(e)}async function it(e,t,n){return async function(e,t={}){const{maxAttempts:n=tt,delayFn:r=nt}=t;let o=null;for(let t=1;t<=n;t+=1)try{return await e()}catch(e){o=e,t<n&&await new Promise((e=>{setTimeout(e,r(t))}))}throw o&&t.logger&&t.operationName&&t.logger.error(`Operation ${t.operationName} failed after ${n} attempts.`,o,!0),o||new Error("Operation failed after multiple attempts")}((async()=>{const n=await ot(e);if(void 0===n){const n=e.type,r="string"==typeof n?n:"unknown",o=void 0!==t?.tabId?`tabId=${t.tabId}`:"runtime";throw new Error(`No response from background service worker for message type "${r}" (target: ${o})`)}return n}),{maxAttempts:tt,delayFn:nt})}const at="GF_TRACK_EVENT",st="GF_HIDE_POPUP",lt="GF_GET_POPUP_CONFIG",ct="GF_IS_ACTIVE_DOMAIN",dt="GF_LOG_MERCHANTS_IN_SEARCH_RESULTS",ut="GF_SHOULD_STAND_DOWN",gt="GF_ACTIVATE_OFFER",pt="GF_STORE_SHOPIFY_SHOP_ID",ht="GF_GET_DOMAIN_BY_SHOP_ID",ft="GF_GET_LANGUAGE_CONTENT",mt="GF_GET_ACTIVE_DOMAINS",vt="GF_MUTE_PARTNER_SERP_BOX",yt="GF_GET_GF_DATA",xt="countryCode",bt="gf_event_history",At="gf_popup_everywhere",wt={ein:"0",tpi:"0"},Ct="GIVE_FREELY_",kt={async get(e){const t=`${Ct}${e}`;return(await browser.storage.local.get(t))[t]||null},async set(e,t){const n=`${Ct}${e}`;await browser.storage.local.set({[n]:t})},async remove(e){const t=Array.isArray(e)?e.map((e=>`${Ct}${e}`)):`${Ct}${e}`;await browser.storage.local.remove(t)}},Pt=()=>String("2.6.1");class St{constructor(e,t,n,r=60){this.track=async(e,t,n=!1,r=!1)=>{const o={partner:`gfLib_${this._partnerApiKey}`,eventType:e,eventData:{userId:n?void 0:this._userService?.user?.id,libVersion:Pt(),...t}};try{const e=JSON.stringify(o,((e,t)=>t instanceof Error?{name:t.name,message:t.message,stack:t.stack}:t)),t=await this.getEventsUrl();return t?await this.BroadcastEvent(t,e,o,r):(this._logger.info("Cant broadcast event. eventsUrl cant be retrieved from config",o,!0),!1)}catch(e){return this._logger.error("Something unexpected happened when dispatching a gf event",{error:e,event:o},!0),!1}},this.getEventsHistory=async()=>{const e=await kt.get(bt),t=(e=>{const t=new Date;return t.setTime(t.getTime()+60*e*1e3),t.getTime()})(-this._debounceWindowInMinutes),n=(e||[]).filter((e=>e.createdAt>t));return await kt.set(bt,n),n},this.shouldBroadcastEvent=async(e,t)=>!!t||!(await this.getEventsHistory()).some((t=>t.payload===e)),this.pushEventToHistory=async e=>{const t=await this.getEventsHistory();t.push({createdAt:Date.now(),payload:e}),await kt.set(bt,t)},this._partnerApiKey=e,this._userService=t,this._debounceWindowInMinutes=r,this._logger=et.getInstance({title:"Analytics"}),this._configService=n}async BroadcastEvent(e,t,n,r){if(await this.shouldBroadcastEvent(t,r)){const r=await fetch(e,{headers:{"Content-Type":"application/json"},method:"POST",body:t,cache:"no-store"});return r.ok?(await this.pushEventToHistory(t),!0):(this._logger.error("Something unexpected happened when dispatching an event",{status:r.status,statusText:r.statusText,event:n},!0),!1)}return this._logger.info("This event has already been broadcasted during the past hour",n,!0),!1}async getEventsUrl(){const e=await this._configService.getCachedConfig();return e?.eventsUrl}}function Tt(e,t,n){return e?{...t,...n}:t}St.trackEvent=async(e,t,n=!1,r=!1)=>{await ot({type:at,payload:{eventType:e,eventData:t,anonymous:n,skipThrottling:r}})};const Et=(e,t)=>((e,t)=>{let n=parseFloat(t);return n<1&&(n=1),n=Math.floor(n),"PERCENTAGE"===e?`${n}%`:`$${n}`})(e,parseFloat(t).toString());var Dt=Z("<span>");function Ot(e){return t=Dt(),f((()=>{return t.innerHTML=(n=e.title,r=e.activeDomain,n.replace("{0}",Et(r.commission.kind,r.commission.amount.toString())));var n,r})),t;var t}const Lt=function(){const e=Symbol("context");return{id:e,Provider:U(e),defaultValue:()=>({translate:e=>"",getAllCharities:()=>[]})}}(),It=Lt,Nt=()=>{const e=w(It)();if(!e)throw new Error("Content provider context is undefined");return t=>e.translate(t)};class Mt{static formatMessage(e,...t){return e.replace(/{(\d+)}/g,((e,n)=>{const r=Number(n);return void 0!==t[r]?String(t[r]):`{${r}}`}))}}var $t=Z("<div>"),Ht=Z("<p><span>"),Rt=Z("<div><div class=gf-offer-details><p><span></span></p><p><span></span></p><p><span></span></p><p><span></span></p><p><span></span></p><p><a target=_blank rel=noreferrer><span>"),Ut=Z("<div class=gf-offer-details-rate-item><div></div><div>");const _t=e=>{const t=Nt();return n=Rt(),o=(r=n.firstChild).firstChild,i=o.firstChild,a=o.nextSibling,s=a.firstChild,l=a.nextSibling,c=l.firstChild,d=l.nextSibling,u=d.firstChild,g=d.nextSibling,p=g.firstChild,h=g.nextSibling,m=h.firstChild,v=m.firstChild,re(r,_(z,{get when(){return!!e.merchantRateDetail?.length},get children(){var t=$t();return re(t,(()=>e.merchantRateDetail?.map((e=>{return t=Ut(),n=t.firstChild,r=n.nextSibling,re(n,(()=>e.Name||"")),re(r,(()=>((e,t=1,n=1)=>{const r=e.BoostedOffer??null;let o=parseFloat(e?.Amount??"");if(r?.EndDate&&new Date(r.EndDate)<new Date&&(o=parseFloat(r.OriginalMaxRate)),Number.isNaN(o))return"";const i=o*t;return"PERCENTAGE"===e?.Kind?`${i.toLocaleString("en-US",{minimumFractionDigits:0,maximumFractionDigits:n})}%`:"FLAT"===e?.Kind?i.toLocaleString("en-US",{style:"currency",currency:e.Currency}):""})(e))),f((e=>{var o=Me,i=$e,a=He;return e.e=te(t,o,e.e),e.t=te(n,i,e.t),e.a=te(r,a,e.a),e}),{e:void 0,t:void 0,a:void 0}),t;var t,n,r})))),t}}),d),re(r,_(z,{get when(){return e.additionalHtml},get children(){var t=Ht(),n=t.firstChild;return f((()=>n.innerHTML=e.additionalHtml)),t}}),h),f((o=>{var a=Ie,l=Ne,d=t("offerDetails.intro"),g=t("offerDetails.eligible"),h=e.parsedMaxRate?Mt.formatMessage(t("offerDetails.donationRatesWithValue"),e.parsedMaxRate):Mt.formatMessage(t("offerDetails.donationRates")),f=t("offerDetails.donationAmounts"),y=t("offerDetails.donationTiming"),x=De,b=e.termsUrl,A=t("offerDetails.termsAndConditions");return o.e=te(n,a,o.e),o.t=te(r,l,o.t),d!==o.a&&(i.innerHTML=o.a=d),g!==o.o&&(s.innerHTML=o.o=g),h!==o.i&&(c.innerHTML=o.i=h),f!==o.n&&(u.innerHTML=o.n=f),y!==o.s&&(p.innerHTML=o.s=y),o.h=te(m,x,o.h),b!==o.r&&Q(m,"href",o.r=b),A!==o.d&&(v.innerHTML=o.d=A),o}),{e:void 0,t:void 0,a:void 0,o:void 0,i:void 0,n:void 0,s:void 0,h:void 0,r:void 0,d:void 0}),n;var n,r,o,i,a,s,l,c,d,u,g,p,h,m,v},Ft=()=>{const e=w(Lt)();if(!e)throw new Error("Content provider context is undefined");return()=>e.getAllCharities()};function Gt(e){let t=5381;for(let n=0;n<e.length;n++)t=(t<<5)+t+e.charCodeAt(n)|0;return`hsl(${(t%360+360)%360}, 55%, 50%)`}var Bt=Z("<a href=#!>"),jt=Z("<button class=give-freely-close-button aria-label=Close>×"),Wt=Z('<div><div><div></div></div><div></div><div><div><div><span></span></div><button aria-label="Don\'t show again"><span></span></button></div></div><div><p><span></span></p><span></span><a class=give-freely-footer-link target=_blank rel="noopener noreferrer"><span>'),qt=Z("<div><div><img><span></span></div><button><span>"),zt=Z("<div>"),Vt=Z("<div><span>");function Kt(e){const t=Nt(),n=Ft();return[(o=Wt(),i=o.firstChild,a=i.firstChild,s=i.nextSibling,l=s.nextSibling,c=l.firstChild,d=c.firstChild,u=d.firstChild,g=d.nextSibling,p=g.firstChild,h=l.nextSibling,m=h.firstChild,y=m.firstChild,x=m.nextSibling,b=x.nextSibling,A=b.firstChild,re(i,_(z,{get when(){return e.checkoutPopupConf.checkoutPopupActivateAndClose},get children(){var n=Bt();return n.$$click=()=>e.onCharityClick(wt,!0),f((r=>{var o=Tt(e.isCharitySelected,fe,me),i=t("main.activateAndClose.v2");return r.e=te(n,o,r.e),i!==r.t&&(n.innerHTML=r.t=i),r}),{e:void 0,t:void 0}),n}}),null),re(i,_(z,{get when(){return e.checkoutPopupConf.checkoutPopupMainCloseButtonVisible&&!e.checkoutPopupConf.checkoutPopupActivateAndClose},get children(){var t=jt();return t.$$click=()=>e.onClose(),f((e=>te(t,he,e))),t}}),null),re(s,_(Ot,{get title(){return t("main.subTitle.v2")},get activeDomain(){return e.activeDomain}})),re(l,(()=>n().reduce(((n,r)=>{var o,i,a,s,l,c,d;return r?.title&&""!==r?.title?n.push((a=(i=qt()).firstChild,s=a.firstChild,l=s.nextSibling,c=a.nextSibling,d=c.firstChild,i.$$click=()=>!e.isCharitySelected&&e.onCharityClick(r),re(i,(o=v((()=>!!(r.decorator&&r.decoratorLeftStyle&&r.decoratorRightStyle))),()=>{return o()&&[(t=zt(),f((e=>{var n=r.decoratorLeftStyle,o=r.decorator;return e.e=te(t,n,e.e),o!==e.t&&(t.innerHTML=e.t=o),e}),{e:void 0,t:void 0}),t),(e=zt(),f((t=>{var n=r.decoratorRightStyle,o=r.decorator;return t.e=te(e,n,t.e),o!==t.t&&(e.innerHTML=t.t=o),t}),{e:void 0,t:void 0}),e)];var e,t}),a),a.style.setProperty("text-align","center"),a.style.setProperty("display","flex"),a.style.setProperty("flex-direction","column"),a.style.setProperty("align-items","center"),a.style.setProperty("gap","7px"),f((n=>{var o=Tt(e.isCharitySelected,xe,{cursor:"default"}),a=r.logo,u=Ae,g=r.title,p=r.title,h=Tt(e.isCharitySelected,{...we,"background-color":e.checkoutPopupConf?.checkoutPopupSelectCharityButtonBgColor||"#0052FF"},be),f=e.isCharitySelected,m=`Select charity: ${r.title}`,v=t("main.charitySelect");return n.e=te(i,o,n.e),a!==n.t&&Q(s,"src",n.t=a),n.a=te(s,u,n.a),g!==n.o&&Q(s,"alt",n.o=g),p!==n.i&&(l.innerHTML=n.i=p),n.n=te(c,h,n.n),f!==n.s&&(c.disabled=n.s=f),m!==n.h&&Q(c,"aria-label",n.h=m),v!==n.r&&(d.innerHTML=n.r=v),n}),{e:void 0,t:void 0,a:void 0,o:void 0,i:void 0,n:void 0,s:void 0,h:void 0,r:void 0}),i)):e.logger.error(`Translation was not found for EIN ${r?.ein}`),n}),[])),c),c.$$click=()=>!e.isCharitySelected&&e.onSuppressClick(),d.style.setProperty("text-align","center"),d.style.setProperty("display","flex"),d.style.setProperty("align-items","center"),d.style.setProperty("height","100%"),m.$$click=()=>e.onOfferDetailsClickInternal(),ee(b,"click",e.onWhyAmISeeingThisClick),re(o,(r=v((()=>!!e.checkoutPopupConf.checkoutPopupDisplayNameInFooter)),()=>{return r()&&(e=Vt(),n=e.firstChild,f((r=>{var o=Ee,i=t("main.footer");return r.e=te(e,o,r.e),i!==r.t&&(n.innerHTML=r.t=i),r}),{e:void 0,t:void 0}),e);var e,n}),null),f((n=>{var r=ue,d=ge,f={...pe,"font-weight":800},v=t("main.title.v2"),w=ve,C=ye,k=Tt(e.isCharitySelected,xe,{cursor:"default","justify-content":"flex-end"}),P=t("main.sixthBox"),S=Tt(e.isCharitySelected,{...we,"background-color":e.checkoutPopupConf.checkoutPopupSelectCharityButtonBgColor||"#0052FF"},be),T=e.isCharitySelected,E=t("main.settings.v2"),D=Te,O=Oe,L=t("main.offerDetails"),I={...Le,"background-color":Gt(e.activeDomain.provider)},N=De,M=e.checkoutPopupConf.externalUrls.giveFreelyWhyAmISeeingThis,$=t("main.whyAmISeeingThis");return n.e=te(o,r,n.e),n.t=te(i,d,n.t),n.a=te(a,f,n.a),v!==n.o&&(a.innerHTML=n.o=v),n.i=te(s,w,n.i),n.n=te(l,C,n.n),n.s=te(c,k,n.s),P!==n.h&&(u.innerHTML=n.h=P),n.r=te(g,S,n.r),T!==n.d&&(g.disabled=n.d=T),E!==n.l&&(p.innerHTML=n.l=E),n.u=te(h,D,n.u),n.c=te(m,O,n.c),L!==n.w&&(y.innerHTML=n.w=L),n.m=te(x,I,n.m),n.f=te(b,N,n.f),M!==n.y&&Q(b,"href",n.y=M),$!==n.g&&(A.innerHTML=n.g=$),n}),{e:void 0,t:void 0,a:void 0,o:void 0,i:void 0,n:void 0,s:void 0,h:void 0,r:void 0,d:void 0,l:void 0,u:void 0,c:void 0,w:void 0,m:void 0,f:void 0,y:void 0,g:void 0}),o),_(z,{get when(){return e.detailsDisplayed},get children(){return _(_t,{get merchantName(){return e.activeDomain.merchantName},get extensionName(){return e.checkoutPopupConf.displayName},get termsUrl(){return e.checkoutPopupConf.externalUrls.giveFreelyTermsAndConditions},get parsedMaxRate(){return Et(e.activeDomain.commission.kind,e.activeDomain.commission.amount.toString())},get merchantRateDetail(){return e.merchantRates},get additionalHtml(){return e.checkoutPopupConf.checkoutPopupOfferDetailsAdditionalHtml},onClose:()=>e.onOfferDetailsClose()})}})];var r,o,i,a,s,l,c,d,u,g,p,h,m,y,x,b,A}J(["click"]);var Yt=Z("<a href=#!>"),Xt=Z("<button class=give-freely-close-button aria-label=Close>×"),Zt=Z("<div>"),Jt=Z("<span data-testid=dismiss-link>"),Qt=Z("<div><span>"),en=Z('<div><div></div><div></div><div></div><div></div><div><div><span><span></span></span><a class=give-freely-footer-link target=_blank rel="noopener noreferrer"><span></span></a><span>'),tn=Z("<div><div><img><div style=flex:1;display:flex;align-items:center;justify-content:center;><div></div></div></div><button><span>"),nn=Z("<span>");function rn(e){const t=Nt(),n=Ft();return r=en(),o=r.firstChild,i=o.nextSibling,a=i.nextSibling,s=a.nextSibling,l=s.nextSibling,c=l.firstChild,d=c.firstChild,u=d.firstChild,g=d.nextSibling,p=g.firstChild,h=g.nextSibling,re(o,_(z,{get when(){return e.checkoutPopupConf.checkoutPopupActivateAndClose},get children(){var n=Yt();return n.$$click=()=>e.onCharityClick(wt,!0),f((r=>{var o=Tt(e.isCharitySelected,Fe,{cursor:"default","pointer-events":"none"}),i=t("main.activateAndClose.v3");return r.e=te(n,o,r.e),i!==r.t&&(n.innerHTML=r.t=i),r}),{e:void 0,t:void 0}),n}}),null),re(o,_(z,{get when(){return e.checkoutPopupConf.checkoutPopupMainCloseButtonVisible&&!e.checkoutPopupConf.checkoutPopupActivateAndClose},get children(){var t=Xt();return t.$$click=()=>e.onClose(),f((e=>te(t,he,e))),t}}),null),re(i,_(Ot,{get activeDomain(){return e.activeDomain},get title(){return t("main.title.v3")}})),re(a,_(Ot,{get activeDomain(){return e.activeDomain},get title(){return t("main.subTitle.v3")}})),re(s,(()=>n().slice(0,4).reduce(((n,r)=>{var o,i,a,s,l,c,d;return r?.title&&""!==r?.title?n.push((a=(i=tn()).firstChild,s=a.firstChild,l=s.nextSibling.firstChild,c=a.nextSibling,d=c.firstChild,i.$$click=()=>!e.isCharitySelected&&e.onCharityClick(r),re(i,(o=v((()=>!!(r.decorator&&r.decoratorLeftStyle&&r.decoratorRightStyle))),()=>{return o()&&[(t=Zt(),f((e=>{var n=r.decoratorLeftStyle,o=r.decorator;return e.e=te(t,n,e.e),o!==e.t&&(t.innerHTML=e.t=o),e}),{e:void 0,t:void 0}),t),(e=Zt(),f((t=>{var n=r.decoratorRightStyle,o=r.decorator;return t.e=te(e,n,t.e),o!==t.t&&(e.innerHTML=t.t=o),t}),{e:void 0,t:void 0}),e)];var e,t}),a),a.style.setProperty("text-align","center"),a.style.setProperty("display","flex"),a.style.setProperty("flex-direction","column"),a.style.setProperty("align-items","center"),a.style.setProperty("gap","7px"),a.style.setProperty("flex-grow","1"),f((n=>{var o=Tt(e.isCharitySelected,Be,{cursor:"default"}),a=r.logo,u=Ae,g=r.title,p=r.title,h=Tt(e.isCharitySelected,{...je,"background-color":e.checkoutPopupConf?.checkoutPopupSelectCharityButtonBgColor||"#2563EB"},be),f=e.isCharitySelected,m=`Select charity: ${r.title}`,v=t("main.charitySelect");return n.e=te(i,o,n.e),a!==n.t&&Q(s,"src",n.t=a),n.a=te(s,u,n.a),g!==n.o&&Q(s,"alt",n.o=g),p!==n.i&&(l.innerHTML=n.i=p),n.n=te(c,h,n.n),f!==n.s&&(c.disabled=n.s=f),m!==n.h&&Q(c,"aria-label",n.h=m),v!==n.r&&(d.innerHTML=n.r=v),n}),{e:void 0,t:void 0,a:void 0,o:void 0,i:void 0,n:void 0,s:void 0,h:void 0,r:void 0}),i)):e.logger.error(`Translation was not found for EIN ${r?.ein}`),n}),[]))),re(r,_(z,{get when(){return!e.checkoutPopupConf.donationStatsOff},get children(){var n=Zt();return n.style.setProperty("margin-bottom","25px"),n.style.setProperty("text-align","center"),re(n,_(z,{get when(){return e.gfData},children:e=>{return n=nn(),f((()=>n.innerHTML=function(e,t,n){return e.replace("{0}",function(e){return`$${e.toLocaleString("en-US",{maximumFractionDigits:0})}`}(t)).replace("{1}",function(e){if(!e)return"";let t;if(/^\d{4}-\d{2}-\d{2}$/.test(e)){const[n,r,o]=e.split("-").map(Number);t=new Date(n,r-1,o)}else t=new Date(e);const n=new Intl.DateTimeFormat("en-US",{month:"short"}).format(t),r=t.getDate(),o=t.getFullYear();return`${n} ${r}${function(e){const t=e%100;if(t>=11&&t<=13)return"th";switch(e%10){case 1:return"st";case 2:return"nd";case 3:return"rd";default:return"th"}}(r)}, ${o}`}(n))}(t("main.donationStats"),e().totalDonationsAmount,e().calculationDate))),n;var n}})),f((t=>null!=(t=null!==e.gfData?"visible":"hidden")?n.style.setProperty("visibility",t):n.style.removeProperty("visibility"))),n}}),l),d.$$click=()=>e.onOfferDetailsClickInternal(),ee(g,"click",e.onWhyAmISeeingThisClick),re(c,_(z,{get when(){return e.checkoutPopupConf.dismissVisible},get children(){var n=Jt();return n.$$click=()=>e.onDismissClick(),f((e=>{var r=Ve,o=t("main.dismiss");return e.e=te(n,r,e.e),o!==e.t&&(n.innerHTML=e.t=o),e}),{e:void 0,t:void 0}),n}}),h),h.$$click=()=>e.onSuppressClick(),re(l,_(z,{get when(){return v((()=>!!e.checkoutPopupConf.checkoutPopupDisplayNameInFooter))()&&!!t("main.footer")},get children(){var e=Qt(),n=e.firstChild;return f((r=>{var o={...Ee,"text-align":"center",margin:"0",padding:"4px 0 8px 0"},i=t("main.footer");return r.e=te(e,o,r.e),i!==r.t&&(n.innerHTML=r.t=i),r}),{e:void 0,t:void 0}),e}}),null),re(l,_(z,{get when(){return e.detailsDisplayed},get children(){var t=Qt(),n=t.firstChild;return t.style.setProperty("position","relative"),re(t,_(_t,{get merchantName(){return e.activeDomain.merchantName},get extensionName(){return e.checkoutPopupConf.displayName},get termsUrl(){return e.checkoutPopupConf.externalUrls.giveFreelyTermsAndConditions},get parsedMaxRate(){return Et(e.activeDomain.commission.kind,e.activeDomain.commission.amount.toString())},get merchantRateDetail(){return e.merchantRates},get additionalHtml(){return e.checkoutPopupConf.checkoutPopupOfferDetailsAdditionalHtml},onClose:()=>e.onOfferDetailsClose()}),null),f((t=>te(n,{...ze,"background-color":Gt(e.activeDomain.provider),position:"absolute",top:"10px",right:"10px"},t))),t}}),null),f((n=>{var f=ue,m=Re,v=Ue,y=_e,x=Ge,b=We,A=qe,w=Ve,C=t("main.offerDetails"),k=Ve,P=e.checkoutPopupConf.externalUrls.giveFreelyWhyAmISeeingThis,S=t("main.whyAmISeeingThis"),T=Ve,E=t("main.settings.v3");return n.e=te(r,f,n.e),n.t=te(o,m,n.t),n.a=te(i,v,n.a),n.o=te(a,y,n.o),n.i=te(s,x,n.i),n.n=te(l,b,n.n),n.s=te(c,A,n.s),n.h=te(d,w,n.h),C!==n.r&&(u.innerHTML=n.r=C),n.d=te(g,k,n.d),P!==n.l&&Q(g,"href",n.l=P),S!==n.u&&(p.innerHTML=n.u=S),n.c=te(h,T,n.c),E!==n.w&&(h.innerHTML=n.w=E),n}),{e:void 0,t:void 0,a:void 0,o:void 0,i:void 0,n:void 0,s:void 0,h:void 0,r:void 0,d:void 0,l:void 0,u:void 0,c:void 0,w:void 0}),r;var r,o,i,a,s,l,c,d,u,g,p,h}function on(e){const[t,n]=h(!1),[r,o]=h(null),[i,a]=h(null);"v2"===e.checkoutPopupConf.checkoutPopupDesignVersion&&async function(){try{const e=await ot({type:yt,payload:{}});return e?.payload?.data??null}catch{return null}}().then(a);const s=()=>{const t=!!e.checkoutPopupConf.containerStyle?.backdropColor||!!e.checkoutPopupConf.containerStyle?.showAsModal,n=e.checkoutPopupConf.containerStyle?.clickAction??"hide-opacity";t&&"ignore"!==n&&("donate"===n?u(wt,!0):e.setBackdropHidden(!0))},l=t=>{const n=!!e.checkoutPopupConf.containerStyle?.backdropColor||!!e.checkoutPopupConf.containerStyle?.showAsModal,r=e.checkoutPopupConf.containerStyle?.clickAction??"hide-opacity";n&&"donate"===r&&t.stopPropagation()};m((()=>{window.addEventListener("click",s),e.mainContainerRef?.addEventListener("click",l),A((()=>{setTimeout((()=>{window.removeEventListener("click",s),e.mainContainerRef?.removeEventListener("click",l)}),500)}))})),m((()=>{t()&&e.dialogRef&&e.dialogRef.scroll({top:e.dialogRef.offsetHeight,behavior:"smooth"})})),m((()=>{const t=r();t&&Promise.resolve(e.onCharitySelect(t.charity,t.closeOnDonation?e.checkoutPopupConf.checkoutPopupActivateAndCloseSkipSuccess:void 0)).catch((t=>{e.logger.error("Error during charity selection",{error:t}),o(null)}))}));const c=()=>{St.trackEvent(Xe.checkoutPopupWhyAmISeeingThisClicked,{domain:globalThis.window.location.hostname})},d=()=>{e.onClose(),St.trackEvent(Xe.checkoutPopupFooterDismiss,{activeDomain:e.activeDomain.domain})},u=(e,t)=>o({charity:e,closeOnDonation:t}),g=()=>!!r()?.charity,p=()=>{const r=!t();e.onOfferDetailsClick(r),n(r)},f=()=>n(!1);return _(V,{get fallback(){return _(Kt,W(e,{get detailsDisplayed(){return t()},setDetailsDisplayed:n,get selectedCharity(){return r()},setSelectedCharity:o,get isCharitySelected(){return g()},onCharityClick:u,onSuppressClick:()=>e.onSuppress(),onWhyAmISeeingThisClick:c,onOfferDetailsClickInternal:p,onOfferDetailsClose:f}))},get children(){return _(K,{get when(){return"v2"===e.checkoutPopupConf.checkoutPopupDesignVersion},get children(){return _(rn,W(e,{get detailsDisplayed(){return t()},setDetailsDisplayed:n,get selectedCharity(){return r()},setSelectedCharity:o,get isCharitySelected(){return g()},onCharityClick:u,onSuppressClick:()=>e.onSuppress(),onWhyAmISeeingThisClick:c,onDismissClick:d,onOfferDetailsClickInternal:p,onOfferDetailsClose:f,get gfData(){return i()}}))}})}})}J(["click"]);var an=Z("<button class=give-freely-close-button aria-label=Close>×"),sn=Z("<label class=give-freely-radio-option><input type=radio name=gf-rad-goodbye value=18250><span>"),ln=Z('<div><div><div><span></span></div></div><button class=give-freely-back-button aria-label="Back to charity selection"><span></span></button><hr><div id=give-freely-goodbye-screen-options><label class=give-freely-radio-option><input type=radio name=gf-rad-goodbye value=1><span></span></label><label class=give-freely-radio-option><input type=radio name=gf-rad-goodbye value=7><span></span></label><label class=give-freely-radio-option><input type=radio name=gf-rad-goodbye value=30><span></span></label><label class=give-freely-radio-option><input type=radio name=gf-rad-goodbye value=90><span></span></label></div><button class=give-freely-submit-button><span>');function cn(e){const[t,n]=h(0),r=Nt();return o=ln(),i=o.firstChild,a=i.firstChild,s=a.firstChild,l=i.nextSibling,c=l.firstChild,d=l.nextSibling.nextSibling,g=(u=d.firstChild).firstChild,p=g.nextSibling,v=(m=u.nextSibling).firstChild,y=v.nextSibling,b=(x=m.nextSibling).firstChild,A=b.nextSibling,C=(w=x.nextSibling).firstChild,k=C.nextSibling,P=d.nextSibling,S=P.firstChild,o.style.setProperty("font-size","14px"),re(i,_(z,{get when(){return e.checkoutPopupConf.checkoutPopupSupressCloseButtonVisible},get children(){var t=an();return t.$$click=()=>e.onGoodbye(0),f((e=>te(t,{...he,"align-self":"flex-start"},e))),t}}),null),l.$$click=()=>e.onBack(),g.addEventListener("change",(()=>n(1))),v.addEventListener("change",(()=>n(7))),b.addEventListener("change",(()=>n(30))),C.addEventListener("change",(()=>n(90))),re(d,_(z,{get when(){return e.checkoutPopupConf.checkoutPopupNeverSuppressionAllowed},get children(){var e=sn(),t=e.firstChild,o=t.nextSibling;return t.addEventListener("change",(()=>n(18250))),f((t=>{var n=ke,i=r("suppress.suppressionPeriodNever");return t.e=te(e,n,t.e),i!==t.t&&(o.innerHTML=t.t=i),t}),{e:void 0,t:void 0}),e}}),null),P.$$click=()=>{const n=t();n&&(e.onGoodbye(n),e.setScreen("main"))},f((t=>{var n={...ge,"flex-direction":"row"},o={...pe,"margin-top":"20px",..."v2"===e.checkoutPopupConf.checkoutPopupDesignVersion?{color:Ue.color}:{}},g=r("suppress.title"),h=Se,f=r("suppress.backButton"),v=Ce,b=ke,C=r("suppress.suppressionPeriod").replace("{0}","1"),T=ke,E=r("suppress.suppressionPeriodPlural").replace("{0}","7"),D=ke,O=r("suppress.suppressionPeriodPlural").replace("{0}","30"),L=ke,I=r("suppress.suppressionPeriodPlural").replace("{0}","90"),N={...we,"font-weight":"700","margin-top":"10px","margin-bottom":"0px","background-color":e.checkoutPopupConf.checkoutPopupSelectCharityButtonBgColor||"#0052FF",width:"100px"},M=r("suppress.submitButton");return t.e=te(i,n,t.e),t.t=te(a,o,t.t),g!==t.a&&(s.innerHTML=t.a=g),t.o=te(l,h,t.o),f!==t.i&&(c.innerHTML=t.i=f),t.n=te(d,v,t.n),t.s=te(u,b,t.s),C!==t.h&&(p.innerHTML=t.h=C),t.r=te(m,T,t.r),E!==t.d&&(y.innerHTML=t.d=E),t.l=te(x,D,t.l),O!==t.u&&(A.innerHTML=t.u=O),t.c=te(w,L,t.c),I!==t.w&&(k.innerHTML=t.w=I),t.m=te(P,N,t.m),M!==t.f&&(S.innerHTML=t.f=M),t}),{e:void 0,t:void 0,a:void 0,o:void 0,i:void 0,n:void 0,s:void 0,h:void 0,r:void 0,d:void 0,l:void 0,u:void 0,c:void 0,w:void 0,m:void 0,f:void 0}),o;var o,i,a,s,l,c,d,u,g,p,m,v,y,x,b,A,w,C,k,P,S}J(["click"]);var dn=Z("<div><p><span>"),un=Z("<div><div><div><span></span></div><button class=give-freely-close-button aria-label=Close>×</button></div><hr><div><span>");function gn(e){const[t,n]=h(null),r=Nt();let o;return A((()=>clearInterval(o))),b((()=>{e.failedDonation||(()=>{const t=e.checkoutPopupConf.checkoutPopupDonationSuccessAutoCloseInSeconds??3;n(t),o=setInterval((()=>{n((t=>null===t||t<=1?(clearInterval(o),e.onClose(),0):t-1))}),1e3)})()})),i=un(),a=i.firstChild,s=a.firstChild,l=s.firstChild,c=s.nextSibling,d=a.nextSibling.nextSibling,u=d.firstChild,i.style.setProperty("font-size","14px"),c.$$click=()=>e.onClose(),d.style.setProperty("padding","30px"),d.style.setProperty("height","150px"),d.style.setProperty("font-size","14px"),re(i,_(z,{get when(){return!e.failedDonation},get children(){var e=dn(),n=e.firstChild,o=n.firstChild;return f((e=>{var i=Pe,a=Mt.formatMessage(r("donate.autoClosing"),t()??0);return e.e=te(n,i,e.e),a!==e.t&&(o.innerHTML=e.t=a),e}),{e:void 0,t:void 0}),e}}),null),f((t=>{var n={...ge,"flex-direction":"row"},o={...pe,"margin-top":"20px",..."v2"===e.checkoutPopupConf.checkoutPopupDesignVersion?{color:Ue.color}:{}},i=e.failedDonation?r("donate.failTitle"):r("donate.title"),d={...he,"align-self":"flex-start"},g=e.failedDonation?r("donate.failContent"):r("donate.content");return t.e=te(a,n,t.e),t.t=te(s,o,t.t),i!==t.a&&(l.innerHTML=t.a=i),t.o=te(c,d,t.o),g!==t.i&&(u.innerHTML=t.i=g),t}),{e:void 0,t:void 0,a:void 0,o:void 0,i:void 0}),i;var i,a,s,l,c,d,u}J(["click"]);var pn=Z("<dialog popover=manual><div>");function hn(e){const[t,n]=h("main"),[r,o]=h(),[i,a]=h(!1),[s,l]=h(!1);let c;b((()=>{if(c)try{e.checkoutPopupConf.containerStyle?.showAsModal?c.showModal():c.showPopover(),c.focus(),c.blur()}catch(t){e.logger.error("Failed to show popup",{error:t})}}));const d=()=>{e.logger.debug("Close button clicked"),e.onClose()},u=async(t,r=!1)=>{r&&e.onClose(),e.logger.info("Charity selected",{charity:t,domain:e.activeDomain.domain}),o(t);try{const o=await e.onDonate(t,e.activeDomain);if(r)return;a(!o),n("donate")}catch(t){e.logger.error("Error during donation activation",{error:t,domain:e.activeDomain.domain}),r||(a(!0),n("donate"))}},g=()=>{e.logger.debug("Suppress button clicked"),n("goodbye")},p=()=>{e.logger.debug("Navigating back to main screen"),n("main")},m=t=>{e.logger.info("User chose to hide popup",{days:t}),e.onClose(t)};let v;return y=pn(),x=y.firstChild,"function"==typeof c?ne(c,y):c=y,"function"==typeof v?ne(v,x):v=x,re(x,_(z,{get when(){return"main"===t()},get children(){return _(on,{setBackdropHidden:l,mainContainerRef:v,dialogRef:c,get checkoutPopupConf(){return e.checkoutPopupConf},get activeDomain(){return e.activeDomain},get merchantRates(){return e.merchantRates},onClose:d,onCharitySelect:u,onSuppress:g,get onOfferDetailsClick(){return e.onOfferDetailsClick},get logger(){return e.logger}})}}),null),re(x,_(z,{get when(){return"goodbye"===t()},get children(){return _(cn,{get checkoutPopupConf(){return e.checkoutPopupConf},onClose:()=>e.onClose(),onBack:p,onGoodbye:m,setScreen:n})}}),null),re(x,_(z,{get when(){return"donate"===t()},get children(){return _(gn,{get checkoutPopupConf(){return e.checkoutPopupConf},get selectedCharity(){return r()},onClose:()=>e.onClose(),get failedDonation(){return i()},setScreen:n})}}),null),f((t=>{var n,r,o=s()?"backdrop-hidden":"",i={...ce,...e.checkoutPopupConf.containerStyle?.customStyle??{}},a=e.elementId,l={...de,..."v2"===e.checkoutPopupConf.checkoutPopupDesignVersion?{"overflow-x":"visible","overflow-y":"visible"}:{}};return o!==t.e&&(n=y,null==(r=t.e=o)?n.removeAttribute("class"):n.className=r),t.t=te(y,i,t.t),a!==t.a&&Q(y,"id",t.a=a),t.o=te(x,l,t.o),t}),{e:void 0,t:void 0,a:void 0,o:void 0}),y;var y,x}function fn(e){const t=["",".asp",".aspx",".php",".js",".htm",".html"],n=["cart","checkout","shopping-bag","shopping-basket","shopping-cart","basket"].flatMap((e=>t.map((t=>e+t)))).filter((e=>"basket"!==e)),r=["tote-cart","tote.cart"],o=e,i=n.filter((e=>o.includes(e))),a=o.split("/");return!a.some((e=>r.some((t=>e.includes(t)))))&&(a.some((e=>n.some((t=>e.startsWith(t)||e.endsWith(t)))))||"basket"===a[a.length-1].toLowerCase()||i.length>1||1===i.length&&o.includes("shopping"))}function mn(e,t){const n=["book"];return e.split("/").some((e=>n.some((t=>e.startsWith(t)||e.endsWith(t)))))&&null!=t.evaluate("//*[self::h1 or self::h2 or self::h3 or self::h4 or self::h5 or self::h6][contains(., 'Your Reservation') or contains(., 'Your reservation')]",t,null,XPathResult.ANY_TYPE,null)?.iterateNext()}async function vn(e){try{const t=await ot({type:ht,payload:{shopId:e}});return t.payload.found&&t.payload.domain?t.payload.domain:null}catch{return null}}function yn(e){try{const e=Array.from(document.querySelectorAll("script"));for(const t of e){if(t.dataset?.shopId&&(t.dataset?.shopId?.startsWith("gid")||t.src.includes("shopify"))){const e=parseInt(t.dataset.shopId.replace("gid://shopify/Shop/",""));if(!Number.isNaN(e)&&e>0)return e}const e=t.textContent||"";if(e.includes("ShopifyAnalytics")&&e.includes("shopId")){const t=e.match(/shopId['"]*:\s*['"]*(\d+)['"]*[,}]/);if(t&&t[1]){const e=parseInt(t[1]);if(!Number.isNaN(e)&&e>0)return e}}}const t=document.querySelector("[data-shop-id]");if(t instanceof HTMLElement){const{shopId:e}=t.dataset;if(e){const t=parseInt(e);if(!Number.isNaN(t)&&t>0)return t}}const n=window?.ShopifyAnalytics?.lib?.trekkie?.defaultAttributes?.shopId;return n&&parseInt(n)||0}catch(t){return e.error("Error accessing ShopifyAnalytics:",t),0}}function xn(){try{if(!window.location.href.startsWith("https://shop.app"))return 0;const e=document?.head?.querySelector('meta[name="store"][content]');if(!e)return 0;try{const t=JSON.parse(e.content);return t?.id||0}catch{return 0}}catch{return 0}}const bn=et.getInstance();function An(e,t,n){try{bn.debug("Checking merchant regex rules",{currentUrl:t});const r=e.merchantPopupRules.filter((e=>n===e.domain||n.endsWith(`.${e.domain}`)));if(0===r.length)return bn.debug("No matching merchant rules found for domain",{currentUrl:t}),!1;for(const e of r)for(const n of e.rules)try{if(new RegExp(n.rule).test(t))return bn.debug("Merchant regex rule matched",{merchant:e.name,rule:n.rule,currentUrl:t}),!0}catch(t){bn.error("Invalid regex in merchant rule",{merchant:e.name,rule:n.rule,error:t})}return bn.debug("No matching regex rules found",{currentUrl:t}),!1}catch(e){return bn.error("Error in merchantRegexRule",e),!1}}function wn(e){if(e?.customLanguageDetection&&e.customLanguageDetection.length>0){const t=window.location.href,n=document.body.textContent?.toLowerCase()||"";for(const r of e.customLanguageDetection)try{if(new RegExp(r.urlPattern).test(t))for(const[e,t]of Object.entries(r.keywords))if(n.includes(e.toLowerCase()))return t}catch(e){et.getInstance().warn(`Invalid regex pattern in customLanguageDetection: ${r.urlPattern}`,e)}}const t=document.documentElement.lang,n=document.querySelector('meta[http-equiv="Content-Language"]')?.content,r=document.querySelector('link[rel="alternate"][hreflang]')?.getAttribute("hreflang"),o=navigator.language,i=t||n||r||o||"en";return"string"==typeof i?i.split("-")[0]:"en"}function Cn(e){return!0!==e.checkoutPopupOnlyShowLanguageMatch||"en"===wn(e)}const kn=(e,t=!1)=>e.length<2&&t?null:Array.from(e).filter((e=>!t||e.dataset.extensionId!==browser.runtime.id)).map((e=>e.dataset.extensionName)).join(",");const Pn=e=>{const t=v((()=>({translate:e.translate()||(e=>""),getAllCharities:e.charities()||(()=>[])})));return _(Lt.Provider,{value:t,get children(){return e.children}})},Sn=et.getInstance(),Tn=e=>/^https?:\/\/(?:www\.)?google\.[a-z]{2,}(\.[a-z]{2})?\/search\?(?:.*&)?q=[^&]+(?:&.*)?$/.test(e),En='.yuRUbf a, .MjjYud a, a[jsname="UWckNb"], a[data-pcu]',Dn=e=>{const t=null!==e.querySelector('[data-text-ad="1"]'),n=e.querySelector('span:not(.a-no-hover-link):is(:where(*, [role="text"]))'),r=n&&(n.textContent?.includes("Sponsored")||n.textContent?.includes("Ad"));return t||(r??!1)},On=async(e,t,n)=>{const{translations:r,charities:o}=await async function(e,t){try{t&&t.debug("Getting language content",{languageCode:e});const n=await ot({type:ft,payload:{lang:e}});return{translations:n.payload.translations,charities:n.payload.charities}}catch(n){return t&&t.error("Error getting language content",{error:n,languageCode:e}),{translations:null,charities:null}}}(n,e);return{translate:e=>r&&r[e]?r[e]:"",getAllCharities:()=>Object.entries(t).map((([e,t])=>{const{ein:n}=t;try{const r=o?.[n];if(!r)throw new Error(`Failed to find charity metadata for ein ${n}`);return{ein:n,tpi:r.tpi,title:r.title,order:parseInt(e,10),logo:r.logo,decorator:t.decorator,decoratorLeftStyle:t.decoratorLeftStyle,decoratorRightStyle:t.decoratorRightStyle}}catch{return{ein:n,tpi:"",title:"",order:9,logo:""}}}))}};var Ln=Z("<span> Loading...");const In=3e5,Nn=async()=>await kt.get(At)??{};var Mn=Z('<div><div><div></div><div><small><a target=_blank rel="noreferrer noopener"></a><br><a href=#></a></small></div></div><div><div><div><a><div><div></div><div><span></span><span></span></div></div></a></div><a><h3></h3></a></div><div>');const $n=(Hn=function(e){let t;const[n,r]=h(!1),o=Nt(),i={boxContainer:{"max-width":"700px",margin:"20px 0px",padding:"0px",border:(a=(()=>{if("undefined"==typeof window)return!1;if(!document.body)return!1;const e=document.body,t=window.getComputedStyle(e).backgroundColor.match(/\d+/g);if(!t||t.length<3)return window.matchMedia("(prefers-color-scheme: dark)").matches;const[n,r,o]=t.map(Number);return.299*n+.587*r+.114*o<128})())?"1.5px solid #b59410":"1.5px solid #fce68a","border-radius":"5px"},link:{color:a?"#99C3FF":"#1A0DAA"},boxHeader:{display:"flex","background-color":a?"#4a3d05":"#fffbea","border-bottom":a?"1.5px solid #b59410":"1.5px solid #fce68a",padding:"7px","border-radius":"5px 5px 0px 0px","align-items":"center",gap:"10px"},boxHeaderOptions:{"margin-left":"auto","white-space":"nowrap","font-size":"12px","padding-top":"2px"},siteName:{color:a?"#dadce0":"#202124","font-size":"14px",display:"block","line-height":"20px","white-space":"nowrap","text-overflow":"ellipsis",width:"auto"},imgContainer:{"background-color":"transparent","border-radius":"50%",display:"inline-flex","justify-content":"center","align-items":"center",height:"26px",width:"26px","margin-right":"12px","vertical-align":"middle"},img:{height:"26px",width:"26px"},description:{margin:"7px 0px 0px",color:a?"#bfbfbf":"#4d5156","line-height":1.58,"font-size":"14px"},citation:{color:a?"#bdc1c6":"#4d5156","font-size":"12px"}};var a;let s=!1;const l=async(t,n)=>{if("click"===t.type){if(t.preventDefault(),s)return;s=!0}const r=e.domainData.shouldStandDown&&!e.domainData.currentlyActivated,o=[];r||o.push((async e=>{try{const t=await Nn();t[e]=Date.now(),await kt.set(At,t)}catch{}})(parseInt(e.domainData.activeDomain.merchantId))),e.serpLoggingEnabled&&o.push(St.trackEvent(Xe.checkoutPopupGooglePartnerAnnClicked,{url:globalThis.window.location.href,activeDomain:e.domainData.activeDomain.domain,isLinkWithNoActivation:r,clickEvent:t.type})),"click"===t.type&&(await Promise.all(o).catch((()=>{})),window.location.assign(n)),"contextmenu"===t.type&&Promise.all(o)},c=async e=>{const n=e.target.closest("a");n&&t?.contains(n)&&await l(e,n.href)};return d=Mn(),u=d.firstChild,g=u.firstChild,p=g.nextSibling,m=p.firstChild.firstChild,v=m.nextSibling.nextSibling,b=(x=(y=u.nextSibling).firstChild).firstChild,w=(A=b.firstChild).firstChild,k=(C=w.firstChild).nextSibling,P=k.firstChild,S=P.nextSibling,E=(T=b.nextSibling).firstChild,D=x.nextSibling,g.style.setProperty("font-size","14px"),v.$$click=t=>{t.preventDefault(),Bn(),e.serpLoggingEnabled&&St.trackEvent(Xe.checkoutPopupGooglePartnerAnnHidden,{url:globalThis.window.location.href,activeDomain:e.domainData.activeDomain.domain}),r(!0)},re(v,(()=>o("serpBanner.hide"))),y.style.setProperty("padding","10px"),x.style.setProperty("display","inline-flex"),x.style.setProperty("flex-direction","column"),x.style.setProperty("gap","10px"),A.$$contextmenu=t=>l(t,e.url),A.$$click=t=>l(t,e.url),A.style.setProperty("text-decoration","none"),w.style.setProperty("display","inline-flex"),w.style.setProperty("align-items","center"),k.style.setProperty("display","flex"),k.style.setProperty("flex-direction","column"),k.style.setProperty("gap","3px"),re(P,(()=>e.siteName)),re(S,(()=>e.citation)),T.$$contextmenu=t=>l(t,e.url),T.$$click=t=>l(t,e.url),E.style.setProperty("font-family","Google Sans, Roboto, Arial, sans-serif"),re(E,(()=>e.title)),D.$$contextmenu=c,D.$$click=c,"function"==typeof t?ne(t,D):t=D,f((t=>{var r={...i.boxContainer,display:n()?"none":"block"},a=i.boxHeader,s=Rn(o("serpBanner.title"),e.siteName,e.domainData.activeDomain),l={...i.boxHeaderOptions,"text-align":"end"},c=i.link,h=e.learnMoreUrl,f=o("serpBanner.learnMore"),y=i.link,x=e.url,b=e.imgContents,w=i.siteName,k=i.citation,E=e.url,O=i.description,L=e.description||"";return t.e=te(d,r,t.e),t.t=te(u,a,t.t),s!==t.a&&(g.innerHTML=t.a=s),t.o=te(p,l,t.o),t.i=te(m,c,t.i),h!==t.n&&Q(m,"href",t.n=h),f!==t.s&&(m.innerHTML=t.s=f),t.h=te(v,y,t.h),x!==t.r&&Q(A,"href",t.r=x),b!==t.d&&(C.innerHTML=t.d=b),t.l=te(P,w,t.l),t.u=te(S,k,t.u),E!==t.c&&Q(T,"href",t.c=E),t.w=te(D,O,t.w),L!==t.m&&(D.innerHTML=t.m=L),t}),{e:void 0,t:void 0,a:void 0,o:void 0,i:void 0,n:void 0,s:void 0,h:void 0,r:void 0,d:void 0,l:void 0,u:void 0,c:void 0,w:void 0,m:void 0}),d;var d,u,g,p,m,v,y,x,b,A,w,C,k,P,S,T,E,D},e=>{const[t]=y((()=>({lang:e.currentLanguage,logger:e.logger,list:e.charitiesList})),(async e=>On(e.logger,e.list,e.lang))),n=()=>t()?.translate,r=()=>t()?.getAllCharities;return _(z,{get when(){return!t.loading},get fallback(){return Ln()},get children(){return _(Pn,{translate:n,charities:r,get children(){return _(Hn,e)}})}})});var Hn;const Rn=(e,t,n)=>e.replace("{0}",Et(n.commission.kind,n.commission.amount.toString())).replace("{1}",t??n.merchantName);J(["click","contextmenu"]);const Un=async(e,t)=>{const n=((e=!0)=>{const t=((e=!0)=>{const t=Array.from(globalThis.window.document.querySelectorAll("#rso > div, #tads > div, #rso .MjjYud"));return e?t.filter((e=>!Dn(e))):t})(e),n=[];return t.forEach((e=>{const t=e.querySelector(En);if(t){let r=t.href;if(r&&r.includes("/url?q="))try{const e=new URLSearchParams(new URL(r).search).get("q");e&&(r=e)}catch{}r&&r.startsWith("http")&&n.push({url:r,container:e})}})),n})(),r=await _n(n.map((e=>e.url)));e&&St.trackEvent(Xe.checkoutPopupGoogleSearch,{url:globalThis.window.location.href,partnersFound:Object.entries(r).map((([e,t])=>({url:e,partner:t.activeDomain}))),isPartnerBoxMuted:t});const o=n.find((e=>r[e.url]));if(o){const e=(e=>{const t=e.querySelector("h3"),n=e.querySelector('.VuuXrf, span[role="text"]')?.innerText,r=e.querySelector("cite")?.textContent,o=e.querySelector(En),i=o?.querySelector("img")?.parentElement?.parentElement?.outerHTML,a=e.querySelector('.VwiC3b, .kb069e, div[style*="-webkit-line-clamp"]');return{title:t?.textContent?.trim()??null,siteName:n,citation:r,imgContents:i,description:a?.innerHTML?.trim()??null}})(o.container);return{...o,...e,domainData:r[o.url]}}return null},_n=async e=>{const{payload:t}=await it({type:mt,payload:{urls:e}});return t.result},Fn=e=>!!e.partnerSerpBox?.enabled,Gn=async()=>!!await kt.get("gf_partner_serp_muted"),Bn=async()=>{await ot({type:vt,payload:{}})};var jn=Z("<div class=gf-app>");function Wn(e){const[t,n]=h(void 0),[r,o]=h(!1),[i,a]=h([]),[s,l]=h();let c;b((async()=>{e.logger.info("Mounting GfApp component");try{(function(e){if(!e?.shouldCheckSiteMatches)return;let t;(e?.siteMatchesRegex??[]).some((e=>{var n;return n=window.location.href,!(!new RegExp(e).test(n)||(t=e,0))}))&&t&&St.trackEvent(Xe.checkoutPopupSiteMatches,{url:window.location.href,matchedRule:t,uts:Date.now()},!0)})(e.popupConfig),(async()=>{try{const e=await Nn();for(const t in e)e[t]&&Date.now()-e[t]>In&&delete e[t];await kt.set(At,e)}catch{}})();const i=await(async()=>await kt.get(xt)||(async()=>{Sn.debug("detecting country");const e={method:"GET",headers:{"Content-Type":"application/json",Authorization:"Basic OTEzOTkxOnFlYmpaWF9DOGNRY0lxSHA4WTVjNGxzU1pRSlM2VW9MMExzTF9tbWs="}};try{const t=await fetch("https://geoip.maxmind.com/geoip/v2.1/country/me",e);if(Sn.debug("Received geolocation response",{status:t.status}),!t.ok)return void Sn.error("Failed to get geolocation data",{status:t.status,statusText:t.statusText});const n=await t.json();if(!n)throw new Error("There was an error fetching geoip look up");return await kt.set(xt,n.country.iso_code),n.country.iso_code}catch(e){return void Sn.error("Failed to get geolocation data",{error:e},!0)}})())()??"us",s=e.popupConfig.charities?.[i.toLowerCase()]??e.popupConfig.charities?.us;e.logger.debug("Charities for current country",{currentCountry:i,charities:s});const d=wn(e.popupConfig);e.logger.debug("Setting content provider with translations and charity functions"),On(e.logger,s,d).then(l);const u=Pt();if(e.popupConfig.minVersion&&((e,t)=>{if(e===t)return!1;const n=e.split(".").map((e=>parseInt(e,10))),r=t.split(".").map((e=>parseInt(e,10)));for(let e=0;e<n.length;e++){if(n[e]<r[e])return!0;if(n[e]>r[e])return!1}return!1})(u,e.popupConfig.minVersion))return void e.logger.debug(`Current version: ${u}. Minimum version ${e.popupConfig.minVersion} not met`);if(!1===e.popupConfig.checkoutPopupMasterSwitch)return void e.logger.debug("Checkout popup master switch is disabled");const g=document.getElementsByClassName("give-freely-root");let p=!1;if(g.length>1&&(e.logger.debug("There is more than one gf extension installed"),g.item(0).dataset.extensionId!==browser.runtime.id&&(e.logger.debug("Giving preference to the first gf extension injected in the DOM"),p=!0),e.logger.debug("Providing this extension preference over the other installed extensions")),!p&&Tn(window.location.href)&&(e.logger.debug("This is a google search result page."),(async(e,t,n,r)=>{if(Fn(r)){const o=await Gn(),i=!!r.enhancedLogging;e.debug("Serp partner box enabled. Looking for partner in search results");const a=await Un(i,o);if(!o&&a&&r.partnerSerpBox?.learnMoreUrl)return void((e=>{const t=document.querySelector('div[data-subtree="mfc"], .fG8Fp'),n=document.getElementById("atvcap")??document.getElementById("tads")??document.getElementById("search");return t?(t.insertAdjacentElement("afterend",e),!0):!!n&&(n.prepend(e),!0)})((e=>{const t=document.createElement("div");return X((()=>_($n,e)),t),t})({...a,currentLanguage:n,logger:e,learnMoreUrl:r.partnerSerpBox?.learnMoreUrl,charitiesList:t,serpLoggingEnabled:i}))?(e.info("Partner found and banner injected"),i&&St.trackEvent(Xe.checkoutPopupGooglePartnerAnnCreated,{url:globalThis.window.location.href,activeDomain:a.domainData.activeDomain})):e.warn("Partner found but banner couldn't be injected"));e.info("Couldn't find partners in search results")}})(e.logger,s,d,e.popupConfig)),!1===e.popupConfig.popupEnabled)return void e.logger.debug("Popup is disabled.");const{domain:h}=await(async e=>{const{hostname:t}=window.location;e.debug("Checking if domain is active",{hostname:t});const n=await ot({type:ct,payload:{hostname:t}});return n.payload.isActive?(e.debug("Active domain",{domain:n.payload.domain}),e.info("Domain and rates ({})ed successfully."),{isActive:!0,domain:n.payload.domain}):{isActive:!1,domain:void 0}})(e.logger);if(h&&a(h.rates),n(h),h)a(h.rates),await function(e,t){const n=yn(t)||xn();return n>0&&function(e,t,n){if(e&&!(e<=0))try{ot({type:pt,payload:{shopId:e,domain:t}}).catch((e=>{n.error("Error sending shop ID to background:",e)}))}catch(e){n.error("Error sending Shopify shop ID:",e)}}(n,e,t),n}(h,e.logger);else{if("shop.app"!==window.location.hostname&&!window.location.hostname.endsWith(".shop.app"))return void o(!1);const t=window.location.pathname.split("/")[2];if(!t)return e.logger.error("Shop ID not found"),void o(!1);const r=await vn(parseInt(t));if(!r)return e.logger.error("Shop domain not found"),void o(!1);e.logger.debug("Shop domain found",{shopDomain:r}),n(r)}const f=await(async e=>{const t=await kt.get("popup_hide");if(!t)return e.debug("No expiry found in storage"),!1;const{popupHide:n}=t,r=!!n&&Date.now()<n;return e.debug("Is Donation Popup Muted?",{isMuted:r,expiry:n}),r})(e.logger);if(f)return;if(!t())return void o(!1);const{result:m,reason:v}=await(async(e,t)=>{const{domain:n}=t,r=window.location.href,o=document.cookie,{payload:i}=await ot({type:ut,payload:{activeDomain:n,url:r,cookies:o}});return i.result&&e.info("Stand Down detected"),i})(e.logger,t());if(m)return o(!1),void(v&&e.popupConfig.enhancedLogging&&St.trackEvent(Xe.checkoutPopupStoodDown,{reason:v,domain:t()?.domain}));const y=e.popupConfig?.anonymousActiveDomainLogging??!1,x=t()??void 0;x&&y&&!function(e){const t=`gfhv-${e}`;return!!sessionStorage.getItem(t)||(sessionStorage.setItem(t,"true"),!1)}(x.domain)&&St.trackEvent(Xe.checkoutPopupActiveDomain,{url:x.domain}),c=window.setInterval((async()=>{let t=!1;return x&&(e.logger.debug("Checking if we should popup anywhere"),t=await(async e=>{try{const t=await Nn();if(t[e])return Date.now()-t[e]<In}catch{}return!1})(parseInt(x.merchantId)),e.logger.debug("We should popup anywhere",t)),t||(e.logger.debug("Checking checkout rules"),t=await(async e=>{const t=et.getInstance();t.configure({enabled:!0,title:"Content - checkoutRulesTest"});const n=new URL(globalThis.location.href),r=n.href,{hostname:o}=n;t.debug("Checking if popup should be shown",{currentUrl:r});const i=await async function(e){const t=yn(e)||xn();return!("shop.app"!==window.location.hostname&&!window.location.hostname.endsWith(".shop.app")||!(t>0)||!await vn(t))}(t),a=Cn(e)&&(fn(n.pathname.toLowerCase())||mn(r,document)||An(e,r,o)||i);return t.debug("Popup show decision based on rules",{shouldShow:a,matchesCartRule:fn(n.pathname.toLowerCase()),matchesBookingRule:mn(r,document),matchesShopPayRule:i,matchesMerchantRegexRule:An(e,r,o),matchesLanguageRule:Cn(e)}),a})(e.popupConfig),e.logger.debug("Should show popup based on checkout rules",{shouldShowResult:t})),t&&p?(St.trackEvent(Xe.checkoutPopupLooserExtension,{url:globalThis.window.location.href,winner:g.item(0).dataset.extensionName}),e.logger.debug("Standing down because, another GiveFreely extension will pop"),void clearInterval(c)):t&&globalThis.window.matchMedia("(max-width: 600px), (max-height: 480px)").matches?(e.logger.debug("Viewport too small for displaying the popup"),r()&&St.trackEvent(Xe.checkoutPopupHiddenProgrammatically,{url:globalThis.window.location.href,merchantId:x?.merchantId,reason:"Viewport size became too small"}),o(!1),void St.trackEvent(Xe.checkoutPopupNotShownPerViewportSize,{url:globalThis.window.location.href,pageLanguage:d,merchantId:x?.merchantId,viewPortSize:{height:globalThis.window.innerHeight,width:globalThis.window.innerWidth}})):(t&&!r()&&St.trackEvent(Xe.checkoutPopupShown,{url:globalThis.window.location.href,pageLanguage:d,merchantId:x?.merchantId,domainId:x?.id,provider:x?.provider,looserCompetingExtensions:kn(g,!0)}),!t&&r()&&St.trackEvent(Xe.checkoutPopupHiddenProgrammatically,{url:globalThis.window.location.href,merchantId:x?.merchantId,domainId:x?.id,reason:"Checkout rules no longer matched"}),void o(t))}),2e3)}catch(t){o(!1),e.logger.error("An error occurred in GfApp",{error:t})}})),A((()=>{c&&window.clearInterval(c)}));const d=async(t,n)=>{e.logger.info("Processing donation",{charity:t,domain:n.domain});const r=crypto.randomUUID(),o=await(async(e,t,n,r,o,i=!0)=>{e.debug("Activating offer",{activeDomain:t,selectedCharity:r});try{const a=await it({type:gt,payload:{activeDomain:t,originalUrl:n,selectedCharity:r,gfCommissionUniqueId:o,openTab:i}});return e.debug("Activate offer response",{response:a}),a}catch(n){return e.error("Failed to activate offer",{activeDomain:t,error:n}),{type:gt,payload:{response:!1}}}})(e.logger,n,window.location.href,{ein:t.ein,thirdPartyId:t.tpi},r);return e.logger.debug("Activate offer response",{activationResponse:o}),St.trackEvent(o.payload.response?Xe.checkoutPopupDonation:Xe.checkoutPopupFailedActivation,{activeDomain:n.domain,url:globalThis.window.location.href,merchantId:n?.merchantId,domainId:n?.id,provider:n?.provider,charity:{ein:t.ein,tpi:t.tpi},rate:n.commission,gfCommissionUniqueId:r}),o.payload.response},u=async n=>{o(await(async(e,t)=>{try{e.info("Hiding popup",{days:t});const n=await it({type:st,payload:{days:t??0}});return void 0!==t&&St.trackEvent(Xe.checkoutPopupSupressed,{url:globalThis.window.location.href,days:t}),e.info("Hiding popup response",{hideResponse:n}),n.payload.ack?(e.debug("Popup hidden successfully"),!1):(e.warn("Failed to hide popup"),!0)}catch{return!1}})(e.logger,n)),c&&window.clearInterval(c),t()&&(async e=>{try{const t=await Nn();t[e]&&delete t[e],await kt.set(At,t)}catch{}})(parseInt(t().merchantId))},g=async e=>{St.trackEvent(Xe.checkoutPopupOfferDetailsClicked,{action:e?"opened":"closed"})};return _(Pn,{translate:()=>s()?.translate,charities:()=>s()?.getAllCharities,get children(){var n,o=jn();return re(o,(n=v((()=>!(!t()||!r()))),()=>n()&&_(hn,{get checkoutPopupConf(){return e.popupConfig},elementId:"give-freely-checkout-popup",get activeDomain(){return t()},get merchantRates(){return i()},onClose:u,onDonate:d,onOfferDetailsClick:g,get logger(){return e.logger}}))),o}})}exports.browser=browser,exports.initialize=async function(){const e=`give-freely-root-${browser.runtime.id}`;if(document.getElementById(e))return;const t=document.createElement("div");t.id=e,t.className="give-freely-root",t.style.display="block",t.dataset.extensionId=browser.runtime.id,t.dataset.extensionName=browser.runtime.getManifest().name||browser.runtime.id,document.body.appendChild(t);const n=t.attachShadow({mode:"open"}),r=document.createElement("div"),o=et.getInstance(),i=await(async()=>{const e=await it({type:lt,payload:{}});if(!e?.payload?.config)throw new Error("No checkout popup config found");return e.payload.config})();if(!i)return void o.error("No GF config found");o.configure({enabled:i.checkoutPopupLoggerEnabled??!0,title:"Content - Donation popup",minLevel:i.checkoutPopupMinLogLevel??"error"});const a=(s=i.containerStyle?.backdropColor,`\n :host {\n all: initial;\n }\n\n .gf-scroll-remove::-webkit-scrollbar {\n border-radius-bottom-right: 15px;\n }\n\n button {\n cursor: pointer;\n transition: transform 0.1s ease;\n }\n\n button:active {\n transform: scale(0.98);\n }\n\n .give-freely-close-button:hover {\n opacity: 0.7;\n }\n\n input[type="radio"] {\n margin-right: 8px;\n }\n\n hr {\n border: none;\n border-top: 1px solid #e5e5e5;\n margin: 1em 0;\n }\n\n dialog::backdrop {\n background-color: ${s||"revert"};\n }\n\n dialog.backdrop-hidden::backdrop {\n background-color: transparent;\n }\n`);var s;const l=document.createElement("style");l.textContent=a,n.appendChild(l),n.appendChild(r),i.countAppearances&&async function(e){try{const t=globalThis.window.location.href,n=Tn(t);if(e.debug("Is a Google search result page?",n),!n)return!1;const r=(()=>{const e=globalThis.window.document.querySelectorAll("#rso > div, #tads > div"),t=[];return e.forEach((e=>{const n=Dn(e),r=e.querySelector(En);if(r){let e=r.href;if(e&&e.includes("/url?q="))try{const t=new URLSearchParams(new URL(e).search).get("q");t&&(e=t)}catch{}e&&e.startsWith("http")&&t.push({url:e,isSponsored:n??!1})}})),t})();if(e.info("The following search results were identified",r),!r||0===r.length)return!1;const o=await ot({type:dt,payload:{currentUrl:t,searchResults:r,source:"google"}});return o?.payload?.result??!1}catch(t){return e.error("Error while identifying search results",t),!1}}(o),X((()=>_(Wn,{popupConfig:i,logger:o})),r)};
1
+ "use strict";const e=Symbol("solid-proxy"),t="function"==typeof Proxy,n={equals:(e,t)=>e===t};let r=O;const o=1,i=2,a={owned:null,cleanups:null,context:null,owner:null},s={};var l=null;let c=null,d=null,u=null,g=null,p=0;function h(e,t){const r={value:e,observers:null,observerSlots:null,comparator:(t=t?Object.assign({},n,t):n).equals||void 0};return[k.bind(r),e=>("function"==typeof e&&(e=e(r.value)),P(r,e))]}function f(e,t,n){S(T(e,t,!1,o))}function m(e,t,n){r=L;const i=T(e,t,!1,o);i.user=!0,g?g.push(i):S(i)}function v(e,t,r){r=r?Object.assign({},n,r):n;const o=T(e,t,!0,0);return o.observers=null,o.observerSlots=null,o.comparator=r.equals||void 0,S(o),k.bind(o)}function y(e,t,n){let r,i,a;"function"==typeof t?(r=e,i=t,a={}):(r=!0,i=e,a=t||{});let l=null,c=s,d=!1,u="initialValue"in a,g="function"==typeof r&&v(r);const p=new Set,[f,m]=(a.storage||h)(a.initialValue),[y,b]=h(void 0),[A,w]=h(void 0,{equals:!1}),[C,k]=h(u?"ready":"unresolved");function P(e,t,n,r){return l===e&&(l=null,void 0!==r&&(u=!0),e!==c&&t!==c||!a.onHydrated||queueMicrotask((()=>a.onHydrated(r,{value:t}))),c=s,function(e,t){D((()=>{void 0===t&&m((()=>e)),k(void 0!==t?"errored":u?"ready":"unresolved"),b(t);for(const e of p.keys())e.decrement();p.clear()}),!1)}(t,n)),t}function E(){const e=f(),t=y();if(void 0!==t&&!l)throw t;return e}function O(e=!0){if(!1!==e&&d)return;d=!1;const t=g?g():r;if(null==t||!1===t)return void P(l,x(f));const n=c!==s?c:x((()=>i(t,{value:f(),refetching:e})));return(o=n)&&"object"==typeof o&&"then"in o?(l=n,"value"in n?("success"===n.status?P(l,n.value,void 0,t):P(l,void 0,$(n.value),t),n):(d=!0,queueMicrotask((()=>d=!1)),D((()=>{k(u?"refreshing":"pending"),w()}),!1),n.then((e=>P(n,e,void 0,t)),(e=>P(n,void 0,$(e),t))))):(P(l,n,void 0,t),n);var o}return Object.defineProperties(E,{state:{get:()=>C()},error:{get:()=>y()},loading:{get(){const e=C();return"pending"===e||"refreshing"===e}},latest:{get(){if(!u)return E();const e=y();if(e&&!l)throw e;return f()}}}),g?S(T((()=>O(!1)),void 0,!0,o)):O(!1),[E,{refetch:O,mutate:m}]}function x(e){if(null===d)return e();const t=d;d=null;try{return e()}finally{d=t}}function b(e){m((()=>x(e)))}function A(e){return null===l||(null===l.cleanups?l.cleanups=[e]:l.cleanups.push(e)),e}function w(e){let t;return l&&l.context&&void 0!==(t=l.context[e.id])?t:e.defaultValue}function C(e){const t=v(e),n=v((()=>R(t())));return n.toArray=()=>{const e=n();return Array.isArray(e)?e:null!=e?[e]:[]},n}function k(){if(this.sources&&this.state)if(this.state===o)S(this);else{const e=u;u=null,D((()=>I(this)),!1),u=e}if(d){const e=this.observers?this.observers.length:0;d.sources?(d.sources.push(this),d.sourceSlots.push(e)):(d.sources=[this],d.sourceSlots=[e]),this.observers?(this.observers.push(d),this.observerSlots.push(d.sources.length-1)):(this.observers=[d],this.observerSlots=[d.sources.length-1])}return this.value}function P(e,t,n){let r=e.value;return e.comparator&&e.comparator(r,t)||(e.value=t,e.observers&&e.observers.length&&D((()=>{for(let t=0;t<e.observers.length;t+=1){const n=e.observers[t],r=c&&c.running;r&&c.disposed.has(n),(r?n.tState:n.state)||(n.pure?u.push(n):g.push(n),n.observers&&N(n)),r||(n.state=o)}if(u.length>1e6)throw u=[],new Error}),!1)),t}function S(e){if(!e.fn)return;M(e);const t=p;!function(e,t,n){let r;const i=l,a=d;d=l=e;try{r=e.fn(t)}catch(t){return e.pure&&(e.state=o,e.owned&&e.owned.forEach(M),e.owned=null),e.updatedAt=n+1,H(t)}finally{d=a,l=i}(!e.updatedAt||e.updatedAt<=n)&&(null!=e.updatedAt&&"observers"in e?P(e,r):e.value=r,e.updatedAt=n)}(e,e.value,t)}function T(e,t,n,r=o,i){const s={fn:e,state:r,updatedAt:null,owned:null,sources:null,sourceSlots:null,cleanups:null,value:t,owner:l,context:l?l.context:null,pure:n};return null===l||l!==a&&(l.owned?l.owned.push(s):l.owned=[s]),s}function E(e){if(0===e.state)return;if(e.state===i)return I(e);if(e.suspense&&x(e.suspense.inFallback))return e.suspense.effects.push(e);const t=[e];for(;(e=e.owner)&&(!e.updatedAt||e.updatedAt<p);)e.state&&t.push(e);for(let n=t.length-1;n>=0;n--)if((e=t[n]).state===o)S(e);else if(e.state===i){const n=u;u=null,D((()=>I(e,t[0])),!1),u=n}}function D(e,t){if(u)return e();let n=!1;t||(u=[]),g?n=!0:g=[],p++;try{const t=e();return function(e){if(u&&(O(u),u=null),e)return;const t=g;g=null,t.length&&D((()=>r(t)),!1)}(n),t}catch(e){n||(g=null),u=null,H(e)}}function O(e){for(let t=0;t<e.length;t++)E(e[t])}function L(e){let t,n=0;for(t=0;t<e.length;t++){const r=e[t];r.user?e[n++]=r:E(r)}for(t=0;t<n;t++)E(e[t])}function I(e,t){e.state=0;for(let n=0;n<e.sources.length;n+=1){const r=e.sources[n];if(r.sources){const e=r.state;e===o?r!==t&&(!r.updatedAt||r.updatedAt<p)&&E(r):e===i&&I(r,t)}}}function N(e){for(let t=0;t<e.observers.length;t+=1){const n=e.observers[t];n.state||(n.state=i,n.pure?u.push(n):g.push(n),n.observers&&N(n))}}function M(e){let t;if(e.sources)for(;e.sources.length;){const t=e.sources.pop(),n=e.sourceSlots.pop(),r=t.observers;if(r&&r.length){const e=r.pop(),o=t.observerSlots.pop();n<r.length&&(e.sourceSlots[o]=n,r[n]=e,t.observerSlots[n]=o)}}if(e.tOwned){for(t=e.tOwned.length-1;t>=0;t--)M(e.tOwned[t]);delete e.tOwned}if(e.owned){for(t=e.owned.length-1;t>=0;t--)M(e.owned[t]);e.owned=null}if(e.cleanups){for(t=e.cleanups.length-1;t>=0;t--)e.cleanups[t]();e.cleanups=null}e.state=0}function $(e){return e instanceof Error?e:new Error("string"==typeof e?e:"Unknown error",{cause:e})}function H(e,t=l){throw $(e)}function R(e){if("function"==typeof e&&!e.length)return R(e());if(Array.isArray(e)){const t=[];for(let n=0;n<e.length;n++){const r=R(e[n]);Array.isArray(r)?t.push.apply(t,r):t.push(r)}return t}return e}function U(e,t){return function(t){let n;return f((()=>n=x((()=>(l.context={...l.context,[e]:t.value},C((()=>t.children)))))),void 0),n}}function _(e,t){return x((()=>e(t||{})))}function F(){return!0}const G={get:(t,n,r)=>n===e?r:t.get(n),has:(t,n)=>n===e||t.has(n),set:F,deleteProperty:F,getOwnPropertyDescriptor:(e,t)=>({configurable:!0,enumerable:!0,get:()=>e.get(t),set:F,deleteProperty:F}),ownKeys:e=>e.keys()};function B(e){return(e="function"==typeof e?e():e)?e:{}}function j(){for(let e=0,t=this.length;e<t;++e){const t=this[e]();if(void 0!==t)return t}}function W(...n){let r=!1;for(let t=0;t<n.length;t++){const o=n[t];r=r||!!o&&e in o,n[t]="function"==typeof o?(r=!0,v(o)):o}if(t&&r)return new Proxy({get(e){for(let t=n.length-1;t>=0;t--){const r=B(n[t])[e];if(void 0!==r)return r}},has(e){for(let t=n.length-1;t>=0;t--)if(e in B(n[t]))return!0;return!1},keys(){const e=[];for(let t=0;t<n.length;t++)e.push(...Object.keys(B(n[t])));return[...new Set(e)]}},G);const o={},i=Object.create(null);for(let e=n.length-1;e>=0;e--){const t=n[e];if(!t)continue;const r=Object.getOwnPropertyNames(t);for(let e=r.length-1;e>=0;e--){const n=r[e];if("__proto__"===n||"constructor"===n)continue;const a=Object.getOwnPropertyDescriptor(t,n);if(i[n]){const e=o[n];e&&(a.get?e.push(a.get.bind(t)):void 0!==a.value&&e.push((()=>a.value)))}else i[n]=a.get?{enumerable:!0,configurable:!0,get:j.bind(o[n]=[a.get.bind(t)])}:void 0!==a.value?a:void 0}}const a={},s=Object.keys(i);for(let e=s.length-1;e>=0;e--){const t=s[e],n=i[t];n&&n.get?Object.defineProperty(a,t,n):a[t]=n?n.value:void 0}return a}const q=e=>`Stale read from <${e}>.`;function z(e){const t=e.keyed,n=v((()=>e.when),void 0,{equals:(e,n)=>t?e===n:!e==!n});return v((()=>{const r=n();if(r){const o=e.children;return"function"==typeof o&&o.length>0?x((()=>o(t?r:()=>{if(!x(n))throw q("Show");return e.when}))):o}return e.fallback}),void 0,void 0)}function V(e){let t=!1;const n=C((()=>e.children)),r=v((()=>{let e=n();Array.isArray(e)||(e=[e]);for(let n=0;n<e.length;n++){const r=e[n].when;if(r)return t=!!e[n].keyed,[n,r,e[n]]}return[-1]}),void 0,{equals:(e,n)=>(t?e[1]===n[1]:!e[1]==!n[1])&&e[2]===n[2]});return v((()=>{const[n,o,i]=r();if(n<0)return e.fallback;const a=i.children;return"function"==typeof a&&a.length>0?x((()=>a(t?o:()=>{if(x(r)[0]!==n)throw q("Match");return i.when}))):a}),void 0,void 0)}function K(e){return e}const Y="_$DX_DELEGATE";function X(e,t,n,r={}){let o;return function(e,t){const n=d,r=l,o=0===e.length,i=void 0===t?r:t,s=o?a:{owned:null,cleanups:null,context:i?i.context:null,owner:i},c=o?e:()=>e((()=>x((()=>M(s)))));l=s,d=null;try{return D(c,!0)}finally{d=n,l=r}}((r=>{o=r,t===document?e():re(t,e(),t.firstChild?null:void 0,n)}),r.owner),()=>{o(),t.textContent=""}}function Z(e,t,n){let r;const o=()=>(r||(r=(()=>{const t=document.createElement("template");return t.innerHTML=e,t.content.firstChild})())).cloneNode(!0);return o.cloneNode=o,o}function J(e,t=window.document){const n=t[Y]||(t[Y]=new Set);for(let r=0,o=e.length;r<o;r++){const o=e[r];n.has(o)||(n.add(o),t.addEventListener(o,oe))}}function Q(e,t,n){null==n?e.removeAttribute(t):e.setAttribute(t,n)}function ee(e,t,n,r){Array.isArray(n)?(e[`$$${t}`]=n[0],e[`$$${t}Data`]=n[1]):e[`$$${t}`]=n}function te(e,t,n){if(!t)return n?Q(e,"style"):t;const r=e.style;if("string"==typeof t)return r.cssText=t;let o,i;for(i in"string"==typeof n&&(r.cssText=n=void 0),n||(n={}),t||(t={}),n)null==t[i]&&r.removeProperty(i),delete n[i];for(i in t)o=t[i],o!==n[i]&&(r.setProperty(i,o),n[i]=o);return n}function ne(e,t,n){return x((()=>e(t,n)))}function re(e,t,n,r){if(void 0===n||r||(r=[]),"function"!=typeof t)return ie(e,t,r,n);f((r=>ie(e,t(),r,n)),r)}function oe(e){let t=e.target;const n=`$$${e.type}`,r=e.target,o=e.currentTarget,i=t=>Object.defineProperty(e,"target",{configurable:!0,value:t}),a=()=>{const r=t[n];if(r&&!t.disabled){const o=t[`${n}Data`];if(void 0!==o?r.call(t,o,e):r.call(t,e),e.cancelBubble)return}return t.host&&"string"!=typeof t.host&&!t.host._$host&&t.contains(e.target)&&i(t.host),!0},s=()=>{for(;a()&&(t=t._$host||t.parentNode||t.host););};if(Object.defineProperty(e,"currentTarget",{configurable:!0,get:()=>t||document}),e.composedPath){const n=e.composedPath();i(n[0]);for(let e=0;e<n.length-2&&(t=n[e],a());e++){if(t._$host){t=t._$host,s();break}if(t.parentNode===o)break}}else s();i(r)}function ie(e,t,n,r,o){for(;"function"==typeof n;)n=n();if(t===n)return n;const i=typeof t,a=void 0!==r;if(e=a&&n[0]&&n[0].parentNode||e,"string"===i||"number"===i){if("number"===i&&(t=t.toString())===n)return n;if(a){let o=n[0];o&&3===o.nodeType?o.data!==t&&(o.data=t):o=document.createTextNode(t),n=le(e,n,r,o)}else n=""!==n&&"string"==typeof n?e.firstChild.data=t:e.textContent=t}else if(null==t||"boolean"===i)n=le(e,n,r);else{if("function"===i)return f((()=>{let o=t();for(;"function"==typeof o;)o=o();n=ie(e,o,n,r)})),()=>n;if(Array.isArray(t)){const i=[],s=n&&Array.isArray(n);if(ae(i,t,n,o))return f((()=>n=ie(e,i,n,r,!0))),()=>n;if(0===i.length){if(n=le(e,n,r),a)return n}else s?0===n.length?se(e,i,r):function(e,t,n){let r=n.length,o=t.length,i=r,a=0,s=0,l=t[o-1].nextSibling,c=null;for(;a<o||s<i;)if(t[a]!==n[s]){for(;t[o-1]===n[i-1];)o--,i--;if(o===a){const t=i<r?s?n[s-1].nextSibling:n[i-s]:l;for(;s<i;)e.insertBefore(n[s++],t)}else if(i===s)for(;a<o;)c&&c.has(t[a])||t[a].remove(),a++;else if(t[a]===n[i-1]&&n[s]===t[o-1]){const r=t[--o].nextSibling;e.insertBefore(n[s++],t[a++].nextSibling),e.insertBefore(n[--i],r),t[o]=n[i]}else{if(!c){c=new Map;let e=s;for(;e<i;)c.set(n[e],e++)}const r=c.get(t[a]);if(null!=r)if(s<r&&r<i){let l,d=a,u=1;for(;++d<o&&d<i&&null!=(l=c.get(t[d]))&&l===r+u;)u++;if(u>r-s){const o=t[a];for(;s<r;)e.insertBefore(n[s++],o)}else e.replaceChild(n[s++],t[a++])}else a++;else t[a++].remove()}}else a++,s++}(e,n,i):(n&&le(e),se(e,i));n=i}else if(t.nodeType){if(Array.isArray(n)){if(a)return n=le(e,n,r,t);le(e,n,null,t)}else null!=n&&""!==n&&e.firstChild?e.replaceChild(t,e.firstChild):e.appendChild(t);n=t}}return n}function ae(e,t,n,r){let o=!1;for(let i=0,a=t.length;i<a;i++){let a,s=t[i],l=n&&n[e.length];if(null==s||!0===s||!1===s);else if("object"==(a=typeof s)&&s.nodeType)e.push(s);else if(Array.isArray(s))o=ae(e,s,l)||o;else if("function"===a)if(r){for(;"function"==typeof s;)s=s();o=ae(e,Array.isArray(s)?s:[s],Array.isArray(l)?l:[l])||o}else e.push(s),o=!0;else{const t=String(s);l&&3===l.nodeType&&l.data===t?e.push(l):e.push(document.createTextNode(t))}}return o}function se(e,t,n=null){for(let r=0,o=t.length;r<o;r++)e.insertBefore(t[r],n)}function le(e,t,n,r){if(void 0===n)return e.textContent="";const o=r||document.createTextNode("");if(t.length){let r=!1;for(let i=t.length-1;i>=0;i--){const a=t[i];if(o!==a){const t=a.parentNode===e;r||i?t&&a.remove():t?e.replaceChild(o,a):e.insertBefore(o,n)}else r=!0}}else e.insertBefore(o,n);return[o]}const ce={top:"50px",left:"calc(100% - 700px)",margin:"0",width:"640px","max-height":"80vh",padding:"2px 5px 10px 5px","background-color":"white",border:"none","border-radius":"24px","box-shadow":"0px 4px 44px rgba(0, 0, 0, 0.25)","font-family":"Arial","line-height":"1","vertical-align":"baseline","box-sizing":"border-box",color:"rgb(34, 34, 34)","@media (max-width: 600px), (max-height: 480px)":{display:"none !important"}},de={height:"100%","overflow-x":"hidden","overlfow-y":"auto",position:"relative",padding:"0px 15px"},ue={},ge={display:"flex","flex-direction":"column-reverse","align-items":"center","margin-bottom":"10px"},pe={flex:"1","font-size":"24px","font-weight":"700","margin-top":"5px","margin-bottom":"0px"},he={background:"none",border:"none",padding:"4px 8px","align-self":"flex-end",color:"#666464","font-size":"38px",cursor:"pointer","line-height":"1"},fe={color:"#707070","align-self":"flex-end","margin-top":"5px","max-width":"40%"},me={color:"#707070",cursor:"default","pointer-events":"none","text-decoration":"none"},ve={"font-size":"18px","font-weight":"400","margin-top":"0px","margin-bottom":"0px"},ye={display:"flex",gap:"10px",width:"100%","margin-top":"20px","margin-bottom":"20px","flex-wrap":"wrap","justify-content":"space-between"},xe={width:"30%",position:"relative",display:"flex","flex-direction":"column","align-items":"center","justify-content":"space-between",background:"none",border:"1px solid #ccc","border-radius":"5px",padding:"5px",gap:"5px","text-align":"center","font-size":"14px",cursor:"pointer",transition:"background-color 0.2s ease"},be={color:"white","background-color":"lightgray",cursor:"default","pointer-events":"none"},Ae={"max-width":"120px","max-height":"70px","margin-bottom":"5px","object-fit":"contain"},we={"background-color":"#0052FF",cursor:"pointer","border-radius":"32px",padding:"8px",color:"white","min-width":"100px",border:"0","font-weight":"600",width:"120px"},Ce={display:"flex","flex-direction":"column",gap:"10px",width:"100%","color-scheme":"light"},ke={display:"flex","align-items":"center",gap:"5px",border:"1px solid #ddd",padding:"15px","border-radius":"5px","font-weight":"600",cursor:"pointer","margin-bottom":"8px"},Pe={"text-align":"right"},Se={background:"none",border:"none",color:"blue","text-decoration":"underline",padding:"0",cursor:"pointer","margin-bottom":"15px"},Te={display:"flex","justify-content":"space-between","align-items":"center",position:"relative",margin:"20px 0px 10px 0px","font-size":"14px"},Ee={margin:"5px 0px 5px 0px","font-size":"14px","text-align":"center"},De={color:"#666464","text-decoration":"underline"},Oe={color:"rgb(102, 100, 100)","text-decoration":"underline",margin:"0",cursor:"pointer"},Le={position:"absolute",left:"50%",top:"50%",transform:"translate(-50%, -50%)",width:"8px",height:"8px","border-radius":"50%"},Ie={width:"100%","background-color":"#f2f2f2",border:"1px solid black","border-radius":"10px","border-top":"1px solid #bbb7b7","margin-top":"10px","margin-bottom":"20px","box-sizing":"border-box"},Ne={padding:"0 5px 0 10px",width:"100%","font-size":"12px","box-sizing":"border-box"},Me={display:"grid","grid-template-columns":"4fr 1fr","padding-right":"15px","padding-bottom":"5px"},$e={color:"#000","margin-bottom":"4px"},He={"font-size":"14px",color:"#555","text-align":"right"},Re={display:"flex","justify-content":"flex-end","margin-top":"8px","margin-bottom":"4px"},Ue={"font-size":"20px","text-align":"center","margin-bottom":"20px",color:"#333c5e","line-height":"1.3"},_e={"font-size":"15px","font-weight":"400","text-align":"center",color:"#555","margin-bottom":"20px"},Fe={color:"#000000","font-size":"11px","text-align":"right","text-decoration":"none","white-space":"nowrap"},Ge={display:"grid","grid-template-columns":"repeat(4, 1fr)",gap:"12px",width:"100%","margin-top":"16px","margin-bottom":"16px"},Be={display:"flex","flex-direction":"column","align-items":"center","justify-content":"space-between",border:"1px solid #c4c4c4","border-radius":"12px",padding:"16px 10px",gap:"10px","text-align":"center","font-size":"14px",cursor:"pointer",background:"white",position:"relative",transition:"background-color 0.2s ease","box-shadow":"0 2px 12px rgba(0, 0, 0, 0.18)"},je={"background-color":"#3a67ab",cursor:"pointer","border-radius":"999px",padding:"10px 0",color:"white",width:"100%",border:"0","font-weight":"600","font-size":"15px"},We={"background-color":"#f7f7f8","border-top":"1px solid #b0b0b0","border-radius":"0 0 24px 24px",margin:"0 -20px -10px -20px",padding:"0 20px 10px 20px","font-size":"13px"},qe={display:"flex","flex-direction":"row","justify-content":"space-evenly","align-items":"center",gap:"10px",padding:"14px 0"},ze={display:"inline-block",width:"8px",height:"8px","border-radius":"50%","flex-shrink":"0"},Ve={color:"#1a1a1a","text-decoration":"underline",cursor:"pointer"};function Ke(e){return e&&e.__esModule&&Object.prototype.hasOwnProperty.call(e,"default")?e.default:e}"undefined"!=typeof globalThis?globalThis:"undefined"!=typeof window?window:"undefined"!=typeof global?global:"undefined"!=typeof self&&self;var Ye={exports:{}};"undefined"!=typeof globalThis?globalThis:"undefined"!=typeof self&&self,function(e){if(!(globalThis.chrome&&globalThis.chrome.runtime&&globalThis.chrome.runtime.id))throw new Error("This script should only be loaded in a browser extension.");if(globalThis.browser&&globalThis.browser.runtime&&globalThis.browser.runtime.id)e.exports=globalThis.browser;else{const t="The message port closed before a response was received.",n=e=>{const n={alarms:{clear:{minArgs:0,maxArgs:1},clearAll:{minArgs:0,maxArgs:0},get:{minArgs:0,maxArgs:1},getAll:{minArgs:0,maxArgs:0}},bookmarks:{create:{minArgs:1,maxArgs:1},get:{minArgs:1,maxArgs:1},getChildren:{minArgs:1,maxArgs:1},getRecent:{minArgs:1,maxArgs:1},getSubTree:{minArgs:1,maxArgs:1},getTree:{minArgs:0,maxArgs:0},move:{minArgs:2,maxArgs:2},remove:{minArgs:1,maxArgs:1},removeTree:{minArgs:1,maxArgs:1},search:{minArgs:1,maxArgs:1},update:{minArgs:2,maxArgs:2}},browserAction:{disable:{minArgs:0,maxArgs:1,fallbackToNoCallback:!0},enable:{minArgs:0,maxArgs:1,fallbackToNoCallback:!0},getBadgeBackgroundColor:{minArgs:1,maxArgs:1},getBadgeText:{minArgs:1,maxArgs:1},getPopup:{minArgs:1,maxArgs:1},getTitle:{minArgs:1,maxArgs:1},openPopup:{minArgs:0,maxArgs:0},setBadgeBackgroundColor:{minArgs:1,maxArgs:1,fallbackToNoCallback:!0},setBadgeText:{minArgs:1,maxArgs:1,fallbackToNoCallback:!0},setIcon:{minArgs:1,maxArgs:1},setPopup:{minArgs:1,maxArgs:1,fallbackToNoCallback:!0},setTitle:{minArgs:1,maxArgs:1,fallbackToNoCallback:!0}},browsingData:{remove:{minArgs:2,maxArgs:2},removeCache:{minArgs:1,maxArgs:1},removeCookies:{minArgs:1,maxArgs:1},removeDownloads:{minArgs:1,maxArgs:1},removeFormData:{minArgs:1,maxArgs:1},removeHistory:{minArgs:1,maxArgs:1},removeLocalStorage:{minArgs:1,maxArgs:1},removePasswords:{minArgs:1,maxArgs:1},removePluginData:{minArgs:1,maxArgs:1},settings:{minArgs:0,maxArgs:0}},commands:{getAll:{minArgs:0,maxArgs:0}},contextMenus:{remove:{minArgs:1,maxArgs:1},removeAll:{minArgs:0,maxArgs:0},update:{minArgs:2,maxArgs:2}},cookies:{get:{minArgs:1,maxArgs:1},getAll:{minArgs:1,maxArgs:1},getAllCookieStores:{minArgs:0,maxArgs:0},remove:{minArgs:1,maxArgs:1},set:{minArgs:1,maxArgs:1}},devtools:{inspectedWindow:{eval:{minArgs:1,maxArgs:2,singleCallbackArg:!1}},panels:{create:{minArgs:3,maxArgs:3,singleCallbackArg:!0},elements:{createSidebarPane:{minArgs:1,maxArgs:1}}}},downloads:{cancel:{minArgs:1,maxArgs:1},download:{minArgs:1,maxArgs:1},erase:{minArgs:1,maxArgs:1},getFileIcon:{minArgs:1,maxArgs:2},open:{minArgs:1,maxArgs:1,fallbackToNoCallback:!0},pause:{minArgs:1,maxArgs:1},removeFile:{minArgs:1,maxArgs:1},resume:{minArgs:1,maxArgs:1},search:{minArgs:1,maxArgs:1},show:{minArgs:1,maxArgs:1,fallbackToNoCallback:!0}},extension:{isAllowedFileSchemeAccess:{minArgs:0,maxArgs:0},isAllowedIncognitoAccess:{minArgs:0,maxArgs:0}},history:{addUrl:{minArgs:1,maxArgs:1},deleteAll:{minArgs:0,maxArgs:0},deleteRange:{minArgs:1,maxArgs:1},deleteUrl:{minArgs:1,maxArgs:1},getVisits:{minArgs:1,maxArgs:1},search:{minArgs:1,maxArgs:1}},i18n:{detectLanguage:{minArgs:1,maxArgs:1},getAcceptLanguages:{minArgs:0,maxArgs:0}},identity:{launchWebAuthFlow:{minArgs:1,maxArgs:1}},idle:{queryState:{minArgs:1,maxArgs:1}},management:{get:{minArgs:1,maxArgs:1},getAll:{minArgs:0,maxArgs:0},getSelf:{minArgs:0,maxArgs:0},setEnabled:{minArgs:2,maxArgs:2},uninstallSelf:{minArgs:0,maxArgs:1}},notifications:{clear:{minArgs:1,maxArgs:1},create:{minArgs:1,maxArgs:2},getAll:{minArgs:0,maxArgs:0},getPermissionLevel:{minArgs:0,maxArgs:0},update:{minArgs:2,maxArgs:2}},pageAction:{getPopup:{minArgs:1,maxArgs:1},getTitle:{minArgs:1,maxArgs:1},hide:{minArgs:1,maxArgs:1,fallbackToNoCallback:!0},setIcon:{minArgs:1,maxArgs:1},setPopup:{minArgs:1,maxArgs:1,fallbackToNoCallback:!0},setTitle:{minArgs:1,maxArgs:1,fallbackToNoCallback:!0},show:{minArgs:1,maxArgs:1,fallbackToNoCallback:!0}},permissions:{contains:{minArgs:1,maxArgs:1},getAll:{minArgs:0,maxArgs:0},remove:{minArgs:1,maxArgs:1},request:{minArgs:1,maxArgs:1}},runtime:{getBackgroundPage:{minArgs:0,maxArgs:0},getPlatformInfo:{minArgs:0,maxArgs:0},openOptionsPage:{minArgs:0,maxArgs:0},requestUpdateCheck:{minArgs:0,maxArgs:0},sendMessage:{minArgs:1,maxArgs:3},sendNativeMessage:{minArgs:2,maxArgs:2},setUninstallURL:{minArgs:1,maxArgs:1}},sessions:{getDevices:{minArgs:0,maxArgs:1},getRecentlyClosed:{minArgs:0,maxArgs:1},restore:{minArgs:0,maxArgs:1}},storage:{local:{clear:{minArgs:0,maxArgs:0},get:{minArgs:0,maxArgs:1},getBytesInUse:{minArgs:0,maxArgs:1},remove:{minArgs:1,maxArgs:1},set:{minArgs:1,maxArgs:1}},managed:{get:{minArgs:0,maxArgs:1},getBytesInUse:{minArgs:0,maxArgs:1}},sync:{clear:{minArgs:0,maxArgs:0},get:{minArgs:0,maxArgs:1},getBytesInUse:{minArgs:0,maxArgs:1},remove:{minArgs:1,maxArgs:1},set:{minArgs:1,maxArgs:1}}},tabs:{captureVisibleTab:{minArgs:0,maxArgs:2},create:{minArgs:1,maxArgs:1},detectLanguage:{minArgs:0,maxArgs:1},discard:{minArgs:0,maxArgs:1},duplicate:{minArgs:1,maxArgs:1},executeScript:{minArgs:1,maxArgs:2},get:{minArgs:1,maxArgs:1},getCurrent:{minArgs:0,maxArgs:0},getZoom:{minArgs:0,maxArgs:1},getZoomSettings:{minArgs:0,maxArgs:1},goBack:{minArgs:0,maxArgs:1},goForward:{minArgs:0,maxArgs:1},highlight:{minArgs:1,maxArgs:1},insertCSS:{minArgs:1,maxArgs:2},move:{minArgs:2,maxArgs:2},query:{minArgs:1,maxArgs:1},reload:{minArgs:0,maxArgs:2},remove:{minArgs:1,maxArgs:1},removeCSS:{minArgs:1,maxArgs:2},sendMessage:{minArgs:2,maxArgs:3},setZoom:{minArgs:1,maxArgs:2},setZoomSettings:{minArgs:1,maxArgs:2},update:{minArgs:1,maxArgs:2}},topSites:{get:{minArgs:0,maxArgs:0}},webNavigation:{getAllFrames:{minArgs:1,maxArgs:1},getFrame:{minArgs:1,maxArgs:1}},webRequest:{handlerBehaviorChanged:{minArgs:0,maxArgs:0}},windows:{create:{minArgs:0,maxArgs:1},get:{minArgs:1,maxArgs:2},getAll:{minArgs:0,maxArgs:1},getCurrent:{minArgs:0,maxArgs:1},getLastFocused:{minArgs:0,maxArgs:1},remove:{minArgs:1,maxArgs:1},update:{minArgs:2,maxArgs:2}}};if(0===Object.keys(n).length)throw new Error("api-metadata.json has not been included in browser-polyfill");class r extends WeakMap{constructor(e,t=void 0){super(t),this.createItem=e}get(e){return this.has(e)||this.set(e,this.createItem(e)),super.get(e)}}const o=(t,n)=>(...r)=>{e.runtime.lastError?t.reject(new Error(e.runtime.lastError.message)):n.singleCallbackArg||r.length<=1&&!1!==n.singleCallbackArg?t.resolve(r[0]):t.resolve(r)},i=e=>1==e?"argument":"arguments",a=(e,t,n)=>new Proxy(t,{apply:(t,r,o)=>n.call(r,e,...o)});let s=Function.call.bind(Object.prototype.hasOwnProperty);const l=(e,t={},n={})=>{let r=Object.create(null),c={has:(t,n)=>n in e||n in r,get(c,d,u){if(d in r)return r[d];if(!(d in e))return;let g=e[d];if("function"==typeof g)if("function"==typeof t[d])g=a(e,e[d],t[d]);else if(s(n,d)){let t=((e,t)=>function(n,...r){if(r.length<t.minArgs)throw new Error(`Expected at least ${t.minArgs} ${i(t.minArgs)} for ${e}(), got ${r.length}`);if(r.length>t.maxArgs)throw new Error(`Expected at most ${t.maxArgs} ${i(t.maxArgs)} for ${e}(), got ${r.length}`);return new Promise(((i,a)=>{if(t.fallbackToNoCallback)try{n[e](...r,o({resolve:i,reject:a},t))}catch(o){console.warn(`${e} API method doesn't seem to support the callback parameter, falling back to call it without a callback: `,o),n[e](...r),t.fallbackToNoCallback=!1,t.noCallback=!0,i()}else t.noCallback?(n[e](...r),i()):n[e](...r,o({resolve:i,reject:a},t))}))})(d,n[d]);g=a(e,e[d],t)}else g=g.bind(e);else if("object"==typeof g&&null!==g&&(s(t,d)||s(n,d)))g=l(g,t[d],n[d]);else{if(!s(n,"*"))return Object.defineProperty(r,d,{configurable:!0,enumerable:!0,get:()=>e[d],set(t){e[d]=t}}),g;g=l(g,t[d],n["*"])}return r[d]=g,g},set:(t,n,o,i)=>(n in r?r[n]=o:e[n]=o,!0),defineProperty:(e,t,n)=>Reflect.defineProperty(r,t,n),deleteProperty:(e,t)=>Reflect.deleteProperty(r,t)},d=Object.create(e);return new Proxy(d,c)},c=e=>({addListener(t,n,...r){t.addListener(e.get(n),...r)},hasListener:(t,n)=>t.hasListener(e.get(n)),removeListener(t,n){t.removeListener(e.get(n))}}),d=new r((e=>"function"!=typeof e?e:function(t){const n=l(t,{},{getContent:{minArgs:0,maxArgs:0}});e(n)})),u=new r((e=>"function"!=typeof e?e:function(t,n,r){let o,i,a=!1,s=new Promise((e=>{o=function(t){a=!0,e(t)}}));try{i=e(t,n,o)}catch(e){i=Promise.reject(e)}const l=!0!==i&&((c=i)&&"object"==typeof c&&"function"==typeof c.then);var c;if(!0!==i&&!l&&!a)return!1;return(l?i:s).then((e=>{r(e)}),(e=>{let t;t=e&&(e instanceof Error||"string"==typeof e.message)?e.message:"An unexpected error occurred",r({__mozWebExtensionPolyfillReject__:!0,message:t})})).catch((e=>{console.error("Failed to send onMessage rejected reply",e)})),!0})),g=({reject:n,resolve:r},o)=>{e.runtime.lastError?e.runtime.lastError.message===t?r():n(new Error(e.runtime.lastError.message)):o&&o.__mozWebExtensionPolyfillReject__?n(new Error(o.message)):r(o)},p=(e,t,n,...r)=>{if(r.length<t.minArgs)throw new Error(`Expected at least ${t.minArgs} ${i(t.minArgs)} for ${e}(), got ${r.length}`);if(r.length>t.maxArgs)throw new Error(`Expected at most ${t.maxArgs} ${i(t.maxArgs)} for ${e}(), got ${r.length}`);return new Promise(((e,t)=>{const o=g.bind(null,{resolve:e,reject:t});r.push(o),n.sendMessage(...r)}))},h={devtools:{network:{onRequestFinished:c(d)}},runtime:{onMessage:c(u),onMessageExternal:c(u),sendMessage:p.bind(null,"sendMessage",{minArgs:1,maxArgs:3})},tabs:{sendMessage:p.bind(null,"sendMessage",{minArgs:2,maxArgs:3})}},f={clear:{minArgs:1,maxArgs:1},get:{minArgs:1,maxArgs:1},set:{minArgs:1,maxArgs:1}};return n.privacy={network:{"*":f},services:{"*":f},websites:{"*":f}},l(e,h,n)};e.exports=n(chrome)}}(Ye);var Xe,Ze,browser=Ke(Ye.exports);class Je{constructor(){this.isLocal=!0}log({level:e,message:t,timestamp:n,data:r,title:o}){let i;switch(e){case"debug":default:i="log";break;case"info":i="info";break;case"warn":i="warn";break;case"error":case"critical":case"fatal":i="error"}const a=o?`[${o}]`:"";void 0!==r?console[i](`[${n}] - ${Je.LOGGER_PREFIX} ${a} ${t}`,r):console[i](`[${n}] - ${Je.LOGGER_PREFIX} ${a} ${t}`)}}Je.LOGGER_PREFIX="[DonationPopup] -",function(e){e.checkoutPopupShown="CHECKOUT-POPUP-SHOWN",e.checkoutPopupNotShown="CHECKOUT-POPUP-NOT-SHOWN",e.checkoutPopupSupressed="CHECKOUT-POPUP-SUPRESSED",e.checkoutPopupDonation="CHECKOUT-POPUP-DONATION",e.checkoutPopupFailedActivation="CHECKOUT-POPUP-FAILED-ACTIVATION",e.checkoutPopupPurchaseConfirmed="CHECKOUT-POPUP-PURCHASE-CONFIRMED",e.checkoutPopupHealthCheck="CHECKOUT-POPUP-HEALTH-CHECK",e.checkouPopupActivationFailed="CHECKOUT-POPUP-ACTIVATION-FAILED",e.checkoutPopupOfferDetailsClicked="CHECKOUT-POPUP-OFFER-DETAILS-CLICKED",e.checkoutPopupWhyAmISeeingThisClicked="CHECKOUT-POPUP-WHY-AM-I-SEEING-THIS-CLICKED",e.checkoutPopupLooserExtension="CHECKOUT-POPUP-LOOSER-EXTENSION",e.checkoutPopupActiveDomain="CHECKOUT-POPUP-ACTIVE-DOMAIN",e.checkoutPopupSiteMatches="CHECKOUT-POPUP-SITE-MATCHES",e.checkoutPopupMerchantInResultsFound="CHECKOUT-MERCHANT-IN-RESULTS-FOUND",e.checkoutPopupNotShownPerViewportSize="CHECKOUT-POPUP-NOT-SHOWN-PER-VIEWPORT-SIZE",e.checkoutPopupHiddenProgrammatically="CHECKOUT-POPUP-HIDDEN-PROGRAMMATICALLY",e.checkoutPopupGoogleSearch="CHECKOUT-POPUP-GOOGLE-SEARCH",e.checkoutPopupGooglePartnerAnnCreated="CHECKOUT-POPUP-GOOGLE-PARTNER-ANN-CREATED",e.checkoutPopupGooglePartnerAnnClicked="CHECKOUT-POPUP-GOOGLE-PARTNER-ANN-CLICKED",e.checkoutPopupGooglePartnerAnnHidden="CHECKOUT-POPUP-GOOGLE-PARTNER-ANN-HIDDEN",e.checkoutPopupStoodDown="CHECKOUT-POPUP-STOOD-DOWN",e.checkoutPopupFooterDismiss="CHECKOUT-POPUP-FOOTER-DISMISS"}(Xe||(Xe={})),function(e){e.libLog="GFLIB-LOG"}(Ze||(Ze={}));const Qe=["debug","info","warn","error","critical","fatal"];class et{constructor(e){this.config={minLevel:e?.minLevel??"error",enabled:e?.enabled??!1,transports:e?.transports??[new Je],title:e?.title??""}}static getInstance(e){return et.instance||(et.instance=new et(e)),et.instance}configure(e){this.config={...this.config,...e}}shouldLog(e){return!!this.config.enabled&&Qe.indexOf(e)>=Qe.indexOf(this.config.minLevel)}createLogMessage(e,t,n){return{level:e,version:"2.6.2",message:t,timestamp:(new Date).toISOString(),data:n,title:this.config.title}}log(e,t,n,r){if(!this.shouldLog(e))return;const o=this.createLogMessage(e,t,r);this.config.transports.filter((e=>!n||e.isLocal)).forEach((e=>e.log(o)))}debug(e,t,n=!1){this.log("debug",e,n,t)}info(e,t,n=!1){this.log("info",e,n,t)}warn(e,t,n=!1){this.log("warn",e,n,t)}error(e,t,n=!1){this.log("error",e,n,t)}critical(e,t,n=!1){this.log("critical",e,n,t)}fatal(e,t,n=!1){this.log("fatal",e,n,t)}addTransport(e){this.config.transports.push(e)}clearTransports(){this.config.transports=[]}disable(){this.config.enabled=!1}enable(){this.config.enabled=!0}}const tt=3,nt=e=>1e3*e,rt=browser;async function ot(e,t){return await rt.runtime.sendMessage(e)}async function it(e,t,n){return async function(e,t={}){const{maxAttempts:n=tt,delayFn:r=nt}=t;let o=null;for(let t=1;t<=n;t+=1)try{return await e()}catch(e){o=e,t<n&&await new Promise((e=>{setTimeout(e,r(t))}))}throw o&&t.logger&&t.operationName&&t.logger.error(`Operation ${t.operationName} failed after ${n} attempts.`,o,!0),o||new Error("Operation failed after multiple attempts")}((async()=>{const n=await ot(e);if(void 0===n){const n=e.type,r="string"==typeof n?n:"unknown",o=void 0!==t?.tabId?`tabId=${t.tabId}`:"runtime";throw new Error(`No response from background service worker for message type "${r}" (target: ${o})`)}return n}),{maxAttempts:tt,delayFn:nt})}const at="GF_TRACK_EVENT",st="GF_HIDE_POPUP",lt="GF_GET_POPUP_CONFIG",ct="GF_IS_ACTIVE_DOMAIN",dt="GF_LOG_MERCHANTS_IN_SEARCH_RESULTS",ut="GF_SHOULD_STAND_DOWN",gt="GF_ACTIVATE_OFFER",pt="GF_STORE_SHOPIFY_SHOP_ID",ht="GF_GET_DOMAIN_BY_SHOP_ID",ft="GF_GET_LANGUAGE_CONTENT",mt="GF_GET_ACTIVE_DOMAINS",vt="GF_MUTE_PARTNER_SERP_BOX",yt="GF_GET_GF_DATA",xt="countryCode",bt="gf_event_history",At="gf_popup_everywhere",wt={ein:"0",tpi:"0"},Ct="GIVE_FREELY_",kt={async get(e){const t=`${Ct}${e}`;return(await browser.storage.local.get(t))[t]||null},async set(e,t){const n=`${Ct}${e}`;await browser.storage.local.set({[n]:t})},async remove(e){const t=Array.isArray(e)?e.map((e=>`${Ct}${e}`)):`${Ct}${e}`;await browser.storage.local.remove(t)}},Pt=()=>String("2.6.2");class St{constructor(e,t,n,r=60){this.track=async(e,t,n=!1,r=!1)=>{const o={partner:`gfLib_${this._partnerApiKey}`,eventType:e,eventData:{userId:n?void 0:this._userService?.user?.id,libVersion:Pt(),...t}};try{const e=JSON.stringify(o,((e,t)=>t instanceof Error?{name:t.name,message:t.message,stack:t.stack}:t)),t=await this.getEventsUrl();return t?await this.BroadcastEvent(t,e,o,r):(this._logger.info("Cant broadcast event. eventsUrl cant be retrieved from config",o,!0),!1)}catch(e){return this._logger.error("Something unexpected happened when dispatching a gf event",{error:e,event:o},!0),!1}},this.getEventsHistory=async()=>{const e=await kt.get(bt),t=(e=>{const t=new Date;return t.setTime(t.getTime()+60*e*1e3),t.getTime()})(-this._debounceWindowInMinutes),n=(e||[]).filter((e=>e.createdAt>t));return await kt.set(bt,n),n},this.shouldBroadcastEvent=async(e,t)=>!!t||!(await this.getEventsHistory()).some((t=>t.payload===e)),this.pushEventToHistory=async e=>{const t=await this.getEventsHistory();t.push({createdAt:Date.now(),payload:e}),await kt.set(bt,t)},this._partnerApiKey=e,this._userService=t,this._debounceWindowInMinutes=r,this._logger=et.getInstance({title:"Analytics"}),this._configService=n}async BroadcastEvent(e,t,n,r){if(await this.shouldBroadcastEvent(t,r)){const r=await fetch(e,{headers:{"Content-Type":"application/json"},method:"POST",body:t,cache:"no-store"});return r.ok?(await this.pushEventToHistory(t),!0):(this._logger.error("Something unexpected happened when dispatching an event",{status:r.status,statusText:r.statusText,event:n},!0),!1)}return this._logger.info("This event has already been broadcasted during the past hour",n,!0),!1}async getEventsUrl(){const e=await this._configService.getCachedConfig();return e?.eventsUrl}}function Tt(e,t,n){return e?{...t,...n}:t}St.trackEvent=async(e,t,n=!1,r=!1)=>{await ot({type:at,payload:{eventType:e,eventData:t,anonymous:n,skipThrottling:r}})};const Et=(e,t)=>((e,t)=>{let n=parseFloat(t);return n<1&&(n=1),n=Math.floor(n),"PERCENTAGE"===e?`${n}%`:`$${n}`})(e,parseFloat(t).toString());var Dt=Z("<span>");function Ot(e){return t=Dt(),f((()=>{return t.innerHTML=(n=e.title,r=e.activeDomain,n.replace("{0}",Et(r.commission.kind,r.commission.amount.toString())));var n,r})),t;var t}const Lt=function(){const e=Symbol("context");return{id:e,Provider:U(e),defaultValue:()=>({translate:e=>"",getAllCharities:()=>[]})}}(),It=Lt,Nt=()=>{const e=w(It)();if(!e)throw new Error("Content provider context is undefined");return t=>e.translate(t)};class Mt{static formatMessage(e,...t){return e.replace(/{(\d+)}/g,((e,n)=>{const r=Number(n);return void 0!==t[r]?String(t[r]):`{${r}}`}))}}var $t=Z("<div>"),Ht=Z("<p><span>"),Rt=Z("<div><div class=gf-offer-details><p><span></span></p><p><span></span></p><p><span></span></p><p><span></span></p><p><span></span></p><p><a target=_blank rel=noreferrer><span>"),Ut=Z("<div class=gf-offer-details-rate-item><div></div><div>");const _t=e=>{const t=Nt();return n=Rt(),o=(r=n.firstChild).firstChild,i=o.firstChild,a=o.nextSibling,s=a.firstChild,l=a.nextSibling,c=l.firstChild,d=l.nextSibling,u=d.firstChild,g=d.nextSibling,p=g.firstChild,h=g.nextSibling,m=h.firstChild,v=m.firstChild,re(r,_(z,{get when(){return!!e.merchantRateDetail?.length},get children(){var t=$t();return re(t,(()=>e.merchantRateDetail?.map((e=>{return t=Ut(),n=t.firstChild,r=n.nextSibling,re(n,(()=>e.Name||"")),re(r,(()=>((e,t=1,n=1)=>{const r=e.BoostedOffer??null;let o=parseFloat(e?.Amount??"");if(r?.EndDate&&new Date(r.EndDate)<new Date&&(o=parseFloat(r.OriginalMaxRate)),Number.isNaN(o))return"";const i=o*t;return"PERCENTAGE"===e?.Kind?`${i.toLocaleString("en-US",{minimumFractionDigits:0,maximumFractionDigits:n})}%`:"FLAT"===e?.Kind?i.toLocaleString("en-US",{style:"currency",currency:e.Currency}):""})(e))),f((e=>{var o=Me,i=$e,a=He;return e.e=te(t,o,e.e),e.t=te(n,i,e.t),e.a=te(r,a,e.a),e}),{e:void 0,t:void 0,a:void 0}),t;var t,n,r})))),t}}),d),re(r,_(z,{get when(){return e.additionalHtml},get children(){var t=Ht(),n=t.firstChild;return f((()=>n.innerHTML=e.additionalHtml)),t}}),h),f((o=>{var a=Ie,l=Ne,d=t("offerDetails.intro"),g=t("offerDetails.eligible"),h=e.parsedMaxRate?Mt.formatMessage(t("offerDetails.donationRatesWithValue"),e.parsedMaxRate):Mt.formatMessage(t("offerDetails.donationRates")),f=t("offerDetails.donationAmounts"),y=t("offerDetails.donationTiming"),x=De,b=e.termsUrl,A=t("offerDetails.termsAndConditions");return o.e=te(n,a,o.e),o.t=te(r,l,o.t),d!==o.a&&(i.innerHTML=o.a=d),g!==o.o&&(s.innerHTML=o.o=g),h!==o.i&&(c.innerHTML=o.i=h),f!==o.n&&(u.innerHTML=o.n=f),y!==o.s&&(p.innerHTML=o.s=y),o.h=te(m,x,o.h),b!==o.r&&Q(m,"href",o.r=b),A!==o.d&&(v.innerHTML=o.d=A),o}),{e:void 0,t:void 0,a:void 0,o:void 0,i:void 0,n:void 0,s:void 0,h:void 0,r:void 0,d:void 0}),n;var n,r,o,i,a,s,l,c,d,u,g,p,h,m,v},Ft=()=>{const e=w(Lt)();if(!e)throw new Error("Content provider context is undefined");return()=>e.getAllCharities()};function Gt(e){let t=5381;for(let n=0;n<e.length;n++)t=(t<<5)+t+e.charCodeAt(n)|0;return`hsl(${(t%360+360)%360}, 55%, 50%)`}var Bt=Z("<a href=#!>"),jt=Z("<button class=give-freely-close-button aria-label=Close>×"),Wt=Z('<div><div><div></div></div><div></div><div><div><div><span></span></div><button aria-label="Don\'t show again"><span></span></button></div></div><div><p><span></span></p><span></span><a class=give-freely-footer-link target=_blank rel="noopener noreferrer"><span>'),qt=Z("<div><div><img><span></span></div><button><span>"),zt=Z("<div>"),Vt=Z("<div><span>");function Kt(e){const t=Nt(),n=Ft();return[(o=Wt(),i=o.firstChild,a=i.firstChild,s=i.nextSibling,l=s.nextSibling,c=l.firstChild,d=c.firstChild,u=d.firstChild,g=d.nextSibling,p=g.firstChild,h=l.nextSibling,m=h.firstChild,y=m.firstChild,x=m.nextSibling,b=x.nextSibling,A=b.firstChild,re(i,_(z,{get when(){return e.checkoutPopupConf.checkoutPopupActivateAndClose},get children(){var n=Bt();return n.$$click=()=>e.onCharityClick(wt,!0),f((r=>{var o=Tt(e.isCharitySelected,fe,me),i=t("main.activateAndClose.v2");return r.e=te(n,o,r.e),i!==r.t&&(n.innerHTML=r.t=i),r}),{e:void 0,t:void 0}),n}}),null),re(i,_(z,{get when(){return e.checkoutPopupConf.checkoutPopupMainCloseButtonVisible&&!e.checkoutPopupConf.checkoutPopupActivateAndClose},get children(){var t=jt();return t.$$click=()=>e.onClose(),f((e=>te(t,he,e))),t}}),null),re(s,_(Ot,{get title(){return t("main.subTitle.v2")},get activeDomain(){return e.activeDomain}})),re(l,(()=>n().reduce(((n,r)=>{var o,i,a,s,l,c,d;return r?.title&&""!==r?.title?n.push((a=(i=qt()).firstChild,s=a.firstChild,l=s.nextSibling,c=a.nextSibling,d=c.firstChild,i.$$click=()=>!e.isCharitySelected&&e.onCharityClick(r),re(i,(o=v((()=>!!(r.decorator&&r.decoratorLeftStyle&&r.decoratorRightStyle))),()=>{return o()&&[(t=zt(),f((e=>{var n=r.decoratorLeftStyle,o=r.decorator;return e.e=te(t,n,e.e),o!==e.t&&(t.innerHTML=e.t=o),e}),{e:void 0,t:void 0}),t),(e=zt(),f((t=>{var n=r.decoratorRightStyle,o=r.decorator;return t.e=te(e,n,t.e),o!==t.t&&(e.innerHTML=t.t=o),t}),{e:void 0,t:void 0}),e)];var e,t}),a),a.style.setProperty("text-align","center"),a.style.setProperty("display","flex"),a.style.setProperty("flex-direction","column"),a.style.setProperty("align-items","center"),a.style.setProperty("gap","7px"),f((n=>{var o=Tt(e.isCharitySelected,xe,{cursor:"default"}),a=r.logo,u=Ae,g=r.title,p=r.title,h=Tt(e.isCharitySelected,{...we,"background-color":e.checkoutPopupConf?.checkoutPopupSelectCharityButtonBgColor||"#0052FF"},be),f=e.isCharitySelected,m=`Select charity: ${r.title}`,v=t("main.charitySelect");return n.e=te(i,o,n.e),a!==n.t&&Q(s,"src",n.t=a),n.a=te(s,u,n.a),g!==n.o&&Q(s,"alt",n.o=g),p!==n.i&&(l.innerHTML=n.i=p),n.n=te(c,h,n.n),f!==n.s&&(c.disabled=n.s=f),m!==n.h&&Q(c,"aria-label",n.h=m),v!==n.r&&(d.innerHTML=n.r=v),n}),{e:void 0,t:void 0,a:void 0,o:void 0,i:void 0,n:void 0,s:void 0,h:void 0,r:void 0}),i)):e.logger.error(`Translation was not found for EIN ${r?.ein}`),n}),[])),c),c.$$click=()=>!e.isCharitySelected&&e.onSuppressClick(),d.style.setProperty("text-align","center"),d.style.setProperty("display","flex"),d.style.setProperty("align-items","center"),d.style.setProperty("height","100%"),m.$$click=()=>e.onOfferDetailsClickInternal(),ee(b,"click",e.onWhyAmISeeingThisClick),re(o,(r=v((()=>!!e.checkoutPopupConf.checkoutPopupDisplayNameInFooter)),()=>{return r()&&(e=Vt(),n=e.firstChild,f((r=>{var o=Ee,i=t("main.footer");return r.e=te(e,o,r.e),i!==r.t&&(n.innerHTML=r.t=i),r}),{e:void 0,t:void 0}),e);var e,n}),null),f((n=>{var r=ue,d=ge,f={...pe,"font-weight":800},v=t("main.title.v2"),w=ve,C=ye,k=Tt(e.isCharitySelected,xe,{cursor:"default","justify-content":"flex-end"}),P=t("main.sixthBox"),S=Tt(e.isCharitySelected,{...we,"background-color":e.checkoutPopupConf.checkoutPopupSelectCharityButtonBgColor||"#0052FF"},be),T=e.isCharitySelected,E=t("main.settings.v2"),D=Te,O=Oe,L=t("main.offerDetails"),I={...Le,"background-color":Gt(e.activeDomain.provider)},N=De,M=e.checkoutPopupConf.externalUrls.giveFreelyWhyAmISeeingThis,$=t("main.whyAmISeeingThis");return n.e=te(o,r,n.e),n.t=te(i,d,n.t),n.a=te(a,f,n.a),v!==n.o&&(a.innerHTML=n.o=v),n.i=te(s,w,n.i),n.n=te(l,C,n.n),n.s=te(c,k,n.s),P!==n.h&&(u.innerHTML=n.h=P),n.r=te(g,S,n.r),T!==n.d&&(g.disabled=n.d=T),E!==n.l&&(p.innerHTML=n.l=E),n.u=te(h,D,n.u),n.c=te(m,O,n.c),L!==n.w&&(y.innerHTML=n.w=L),n.m=te(x,I,n.m),n.f=te(b,N,n.f),M!==n.y&&Q(b,"href",n.y=M),$!==n.g&&(A.innerHTML=n.g=$),n}),{e:void 0,t:void 0,a:void 0,o:void 0,i:void 0,n:void 0,s:void 0,h:void 0,r:void 0,d:void 0,l:void 0,u:void 0,c:void 0,w:void 0,m:void 0,f:void 0,y:void 0,g:void 0}),o),_(z,{get when(){return e.detailsDisplayed},get children(){return _(_t,{get merchantName(){return e.activeDomain.merchantName},get extensionName(){return e.checkoutPopupConf.displayName},get termsUrl(){return e.checkoutPopupConf.externalUrls.giveFreelyTermsAndConditions},get parsedMaxRate(){return Et(e.activeDomain.commission.kind,e.activeDomain.commission.amount.toString())},get merchantRateDetail(){return e.merchantRates},get additionalHtml(){return e.checkoutPopupConf.checkoutPopupOfferDetailsAdditionalHtml},onClose:()=>e.onOfferDetailsClose()})}})];var r,o,i,a,s,l,c,d,u,g,p,h,m,y,x,b,A}J(["click"]);var Yt=Z("<a href=#!>"),Xt=Z("<button class=give-freely-close-button aria-label=Close>×"),Zt=Z("<div>"),Jt=Z("<span data-testid=dismiss-link>"),Qt=Z("<div><span>"),en=Z('<div><div></div><div></div><div></div><div></div><div><div><span><span></span></span><a class=give-freely-footer-link target=_blank rel="noopener noreferrer"><span></span></a><span>'),tn=Z("<div><div><img><div style=flex:1;display:flex;align-items:center;justify-content:center;><div></div></div></div><button><span>"),nn=Z("<span>");function rn(e){const t=Nt(),n=Ft();return r=en(),o=r.firstChild,i=o.nextSibling,a=i.nextSibling,s=a.nextSibling,l=s.nextSibling,c=l.firstChild,d=c.firstChild,u=d.firstChild,g=d.nextSibling,p=g.firstChild,h=g.nextSibling,re(o,_(z,{get when(){return e.checkoutPopupConf.checkoutPopupActivateAndClose},get children(){var n=Yt();return n.$$click=()=>e.onCharityClick(wt,!0),f((r=>{var o=Tt(e.isCharitySelected,Fe,{cursor:"default","pointer-events":"none"}),i=t("main.activateAndClose.v3");return r.e=te(n,o,r.e),i!==r.t&&(n.innerHTML=r.t=i),r}),{e:void 0,t:void 0}),n}}),null),re(o,_(z,{get when(){return e.checkoutPopupConf.checkoutPopupMainCloseButtonVisible&&!e.checkoutPopupConf.checkoutPopupActivateAndClose},get children(){var t=Xt();return t.$$click=()=>e.onClose(),f((e=>te(t,he,e))),t}}),null),re(i,_(Ot,{get activeDomain(){return e.activeDomain},get title(){return t("main.title.v3")}})),re(a,_(Ot,{get activeDomain(){return e.activeDomain},get title(){return t("main.subTitle.v3")}})),re(s,(()=>n().slice(0,4).reduce(((n,r)=>{var o,i,a,s,l,c,d;return r?.title&&""!==r?.title?n.push((a=(i=tn()).firstChild,s=a.firstChild,l=s.nextSibling.firstChild,c=a.nextSibling,d=c.firstChild,i.$$click=()=>!e.isCharitySelected&&e.onCharityClick(r),re(i,(o=v((()=>!!(r.decorator&&r.decoratorLeftStyle&&r.decoratorRightStyle))),()=>{return o()&&[(t=Zt(),f((e=>{var n=r.decoratorLeftStyle,o=r.decorator;return e.e=te(t,n,e.e),o!==e.t&&(t.innerHTML=e.t=o),e}),{e:void 0,t:void 0}),t),(e=Zt(),f((t=>{var n=r.decoratorRightStyle,o=r.decorator;return t.e=te(e,n,t.e),o!==t.t&&(e.innerHTML=t.t=o),t}),{e:void 0,t:void 0}),e)];var e,t}),a),a.style.setProperty("text-align","center"),a.style.setProperty("display","flex"),a.style.setProperty("flex-direction","column"),a.style.setProperty("align-items","center"),a.style.setProperty("gap","7px"),a.style.setProperty("flex-grow","1"),f((n=>{var o=Tt(e.isCharitySelected,Be,{cursor:"default"}),a=r.logo,u=Ae,g=r.title,p=r.title,h=Tt(e.isCharitySelected,{...je,"background-color":e.checkoutPopupConf?.checkoutPopupSelectCharityButtonBgColor||"#2563EB"},be),f=e.isCharitySelected,m=`Select charity: ${r.title}`,v=t("main.charitySelect");return n.e=te(i,o,n.e),a!==n.t&&Q(s,"src",n.t=a),n.a=te(s,u,n.a),g!==n.o&&Q(s,"alt",n.o=g),p!==n.i&&(l.innerHTML=n.i=p),n.n=te(c,h,n.n),f!==n.s&&(c.disabled=n.s=f),m!==n.h&&Q(c,"aria-label",n.h=m),v!==n.r&&(d.innerHTML=n.r=v),n}),{e:void 0,t:void 0,a:void 0,o:void 0,i:void 0,n:void 0,s:void 0,h:void 0,r:void 0}),i)):e.logger.error(`Translation was not found for EIN ${r?.ein}`),n}),[]))),re(r,_(z,{get when(){return!e.checkoutPopupConf.donationStatsOff},get children(){var n=Zt();return n.style.setProperty("margin-bottom","25px"),n.style.setProperty("text-align","center"),re(n,_(z,{get when(){return e.gfData},children:e=>{return n=nn(),f((()=>n.innerHTML=function(e,t,n){return e.replace("{0}",function(e){return`$${e.toLocaleString("en-US",{maximumFractionDigits:0})}`}(t)).replace("{1}",function(e){if(!e)return"";let t;if(/^\d{4}-\d{2}-\d{2}$/.test(e)){const[n,r,o]=e.split("-").map(Number);t=new Date(n,r-1,o)}else t=new Date(e);const n=new Intl.DateTimeFormat("en-US",{month:"short"}).format(t),r=t.getDate(),o=t.getFullYear();return`${n} ${r}${function(e){const t=e%100;if(t>=11&&t<=13)return"th";switch(e%10){case 1:return"st";case 2:return"nd";case 3:return"rd";default:return"th"}}(r)}, ${o}`}(n))}(t("main.donationStats"),e().totalDonationsAmount,e().calculationDate))),n;var n}})),f((t=>null!=(t=null!==e.gfData?"visible":"hidden")?n.style.setProperty("visibility",t):n.style.removeProperty("visibility"))),n}}),l),d.$$click=()=>e.onOfferDetailsClickInternal(),ee(g,"click",e.onWhyAmISeeingThisClick),re(c,_(z,{get when(){return e.checkoutPopupConf.dismissVisible},get children(){var n=Jt();return n.$$click=()=>e.onDismissClick(),f((e=>{var r=Ve,o=t("main.dismiss");return e.e=te(n,r,e.e),o!==e.t&&(n.innerHTML=e.t=o),e}),{e:void 0,t:void 0}),n}}),h),h.$$click=()=>e.onSuppressClick(),re(l,_(z,{get when(){return v((()=>!!e.checkoutPopupConf.checkoutPopupDisplayNameInFooter))()&&!!t("main.footer")},get children(){var e=Qt(),n=e.firstChild;return f((r=>{var o={...Ee,"text-align":"center",margin:"0",padding:"4px 0 8px 0"},i=t("main.footer");return r.e=te(e,o,r.e),i!==r.t&&(n.innerHTML=r.t=i),r}),{e:void 0,t:void 0}),e}}),null),re(l,_(z,{get when(){return e.detailsDisplayed},get children(){var t=Qt(),n=t.firstChild;return t.style.setProperty("position","relative"),re(t,_(_t,{get merchantName(){return e.activeDomain.merchantName},get extensionName(){return e.checkoutPopupConf.displayName},get termsUrl(){return e.checkoutPopupConf.externalUrls.giveFreelyTermsAndConditions},get parsedMaxRate(){return Et(e.activeDomain.commission.kind,e.activeDomain.commission.amount.toString())},get merchantRateDetail(){return e.merchantRates},get additionalHtml(){return e.checkoutPopupConf.checkoutPopupOfferDetailsAdditionalHtml},onClose:()=>e.onOfferDetailsClose()}),null),f((t=>te(n,{...ze,"background-color":Gt(e.activeDomain.provider),position:"absolute",top:"10px",right:"10px"},t))),t}}),null),f((n=>{var f=ue,m=Re,v=Ue,y=_e,x=Ge,b=We,A=qe,w=Ve,C=t("main.offerDetails"),k=Ve,P=e.checkoutPopupConf.externalUrls.giveFreelyWhyAmISeeingThis,S=t("main.whyAmISeeingThis"),T=Ve,E=t("main.settings.v3");return n.e=te(r,f,n.e),n.t=te(o,m,n.t),n.a=te(i,v,n.a),n.o=te(a,y,n.o),n.i=te(s,x,n.i),n.n=te(l,b,n.n),n.s=te(c,A,n.s),n.h=te(d,w,n.h),C!==n.r&&(u.innerHTML=n.r=C),n.d=te(g,k,n.d),P!==n.l&&Q(g,"href",n.l=P),S!==n.u&&(p.innerHTML=n.u=S),n.c=te(h,T,n.c),E!==n.w&&(h.innerHTML=n.w=E),n}),{e:void 0,t:void 0,a:void 0,o:void 0,i:void 0,n:void 0,s:void 0,h:void 0,r:void 0,d:void 0,l:void 0,u:void 0,c:void 0,w:void 0}),r;var r,o,i,a,s,l,c,d,u,g,p,h}function on(e){const[t,n]=h(!1),[r,o]=h(null),[i,a]=h(null);"v2"===e.checkoutPopupConf.checkoutPopupDesignVersion&&async function(){try{const e=await ot({type:yt,payload:{}});return e?.payload?.data??null}catch{return null}}().then(a);const s=()=>{const t=!!e.checkoutPopupConf.containerStyle?.backdropColor||!!e.checkoutPopupConf.containerStyle?.showAsModal,n=e.checkoutPopupConf.containerStyle?.clickAction??"hide-opacity";t&&"ignore"!==n&&("donate"===n?u(wt,!0):e.setBackdropHidden(!0))},l=t=>{const n=!!e.checkoutPopupConf.containerStyle?.backdropColor||!!e.checkoutPopupConf.containerStyle?.showAsModal,r=e.checkoutPopupConf.containerStyle?.clickAction??"hide-opacity";n&&"donate"===r&&t.stopPropagation()};m((()=>{window.addEventListener("click",s),e.mainContainerRef?.addEventListener("click",l),A((()=>{setTimeout((()=>{window.removeEventListener("click",s),e.mainContainerRef?.removeEventListener("click",l)}),500)}))})),m((()=>{t()&&e.dialogRef&&e.dialogRef.scroll({top:e.dialogRef.offsetHeight,behavior:"smooth"})})),m((()=>{const t=r();t&&Promise.resolve(e.onCharitySelect(t.charity,t.closeOnDonation?e.checkoutPopupConf.checkoutPopupActivateAndCloseSkipSuccess:void 0)).catch((t=>{e.logger.error("Error during charity selection",{error:t}),o(null)}))}));const c=()=>{St.trackEvent(Xe.checkoutPopupWhyAmISeeingThisClicked,{domain:globalThis.window.location.hostname})},d=()=>{e.onClose(),St.trackEvent(Xe.checkoutPopupFooterDismiss,{activeDomain:e.activeDomain.domain})},u=(e,t)=>o({charity:e,closeOnDonation:t}),g=()=>!!r()?.charity,p=()=>{const r=!t();e.onOfferDetailsClick(r),n(r)},f=()=>n(!1);return _(V,{get fallback(){return _(Kt,W(e,{get detailsDisplayed(){return t()},setDetailsDisplayed:n,get selectedCharity(){return r()},setSelectedCharity:o,get isCharitySelected(){return g()},onCharityClick:u,onSuppressClick:()=>e.onSuppress(),onWhyAmISeeingThisClick:c,onOfferDetailsClickInternal:p,onOfferDetailsClose:f}))},get children(){return _(K,{get when(){return"v2"===e.checkoutPopupConf.checkoutPopupDesignVersion},get children(){return _(rn,W(e,{get detailsDisplayed(){return t()},setDetailsDisplayed:n,get selectedCharity(){return r()},setSelectedCharity:o,get isCharitySelected(){return g()},onCharityClick:u,onSuppressClick:()=>e.onSuppress(),onWhyAmISeeingThisClick:c,onDismissClick:d,onOfferDetailsClickInternal:p,onOfferDetailsClose:f,get gfData(){return i()}}))}})}})}J(["click"]);var an=Z("<button class=give-freely-close-button aria-label=Close>×"),sn=Z("<label class=give-freely-radio-option><input type=radio name=gf-rad-goodbye value=18250><span>"),ln=Z('<div><div><div><span></span></div></div><button class=give-freely-back-button aria-label="Back to charity selection"><span></span></button><hr><div id=give-freely-goodbye-screen-options><label class=give-freely-radio-option><input type=radio name=gf-rad-goodbye value=1><span></span></label><label class=give-freely-radio-option><input type=radio name=gf-rad-goodbye value=7><span></span></label><label class=give-freely-radio-option><input type=radio name=gf-rad-goodbye value=30><span></span></label><label class=give-freely-radio-option><input type=radio name=gf-rad-goodbye value=90><span></span></label></div><button class=give-freely-submit-button><span>');function cn(e){const[t,n]=h(0),r=Nt();return o=ln(),i=o.firstChild,a=i.firstChild,s=a.firstChild,l=i.nextSibling,c=l.firstChild,d=l.nextSibling.nextSibling,g=(u=d.firstChild).firstChild,p=g.nextSibling,v=(m=u.nextSibling).firstChild,y=v.nextSibling,b=(x=m.nextSibling).firstChild,A=b.nextSibling,C=(w=x.nextSibling).firstChild,k=C.nextSibling,P=d.nextSibling,S=P.firstChild,o.style.setProperty("font-size","14px"),re(i,_(z,{get when(){return e.checkoutPopupConf.checkoutPopupSupressCloseButtonVisible},get children(){var t=an();return t.$$click=()=>e.onGoodbye(0),f((e=>te(t,{...he,"align-self":"flex-start"},e))),t}}),null),l.$$click=()=>e.onBack(),g.addEventListener("change",(()=>n(1))),v.addEventListener("change",(()=>n(7))),b.addEventListener("change",(()=>n(30))),C.addEventListener("change",(()=>n(90))),re(d,_(z,{get when(){return e.checkoutPopupConf.checkoutPopupNeverSuppressionAllowed},get children(){var e=sn(),t=e.firstChild,o=t.nextSibling;return t.addEventListener("change",(()=>n(18250))),f((t=>{var n=ke,i=r("suppress.suppressionPeriodNever");return t.e=te(e,n,t.e),i!==t.t&&(o.innerHTML=t.t=i),t}),{e:void 0,t:void 0}),e}}),null),P.$$click=()=>{const n=t();n&&(e.onGoodbye(n),e.setScreen("main"))},f((t=>{var n={...ge,"flex-direction":"row"},o={...pe,"margin-top":"20px",..."v2"===e.checkoutPopupConf.checkoutPopupDesignVersion?{color:Ue.color}:{}},g=r("suppress.title"),h=Se,f=r("suppress.backButton"),v=Ce,b=ke,C=r("suppress.suppressionPeriod").replace("{0}","1"),T=ke,E=r("suppress.suppressionPeriodPlural").replace("{0}","7"),D=ke,O=r("suppress.suppressionPeriodPlural").replace("{0}","30"),L=ke,I=r("suppress.suppressionPeriodPlural").replace("{0}","90"),N={...we,"font-weight":"700","margin-top":"10px","margin-bottom":"0px","background-color":e.checkoutPopupConf.checkoutPopupSelectCharityButtonBgColor||"#0052FF",width:"100px"},M=r("suppress.submitButton");return t.e=te(i,n,t.e),t.t=te(a,o,t.t),g!==t.a&&(s.innerHTML=t.a=g),t.o=te(l,h,t.o),f!==t.i&&(c.innerHTML=t.i=f),t.n=te(d,v,t.n),t.s=te(u,b,t.s),C!==t.h&&(p.innerHTML=t.h=C),t.r=te(m,T,t.r),E!==t.d&&(y.innerHTML=t.d=E),t.l=te(x,D,t.l),O!==t.u&&(A.innerHTML=t.u=O),t.c=te(w,L,t.c),I!==t.w&&(k.innerHTML=t.w=I),t.m=te(P,N,t.m),M!==t.f&&(S.innerHTML=t.f=M),t}),{e:void 0,t:void 0,a:void 0,o:void 0,i:void 0,n:void 0,s:void 0,h:void 0,r:void 0,d:void 0,l:void 0,u:void 0,c:void 0,w:void 0,m:void 0,f:void 0}),o;var o,i,a,s,l,c,d,u,g,p,m,v,y,x,b,A,w,C,k,P,S}J(["click"]);var dn=Z("<div><p><span>"),un=Z("<div><div><div><span></span></div><button class=give-freely-close-button aria-label=Close>×</button></div><hr><div><span>");function gn(e){const[t,n]=h(null),r=Nt();let o;return A((()=>clearInterval(o))),b((()=>{e.failedDonation||(()=>{const t=e.checkoutPopupConf.checkoutPopupDonationSuccessAutoCloseInSeconds??3;n(t),o=setInterval((()=>{n((t=>null===t||t<=1?(clearInterval(o),e.onClose(),0):t-1))}),1e3)})()})),i=un(),a=i.firstChild,s=a.firstChild,l=s.firstChild,c=s.nextSibling,d=a.nextSibling.nextSibling,u=d.firstChild,i.style.setProperty("font-size","14px"),c.$$click=()=>e.onClose(),d.style.setProperty("padding","30px"),d.style.setProperty("height","150px"),d.style.setProperty("font-size","14px"),re(i,_(z,{get when(){return!e.failedDonation},get children(){var e=dn(),n=e.firstChild,o=n.firstChild;return f((e=>{var i=Pe,a=Mt.formatMessage(r("donate.autoClosing"),t()??0);return e.e=te(n,i,e.e),a!==e.t&&(o.innerHTML=e.t=a),e}),{e:void 0,t:void 0}),e}}),null),f((t=>{var n={...ge,"flex-direction":"row"},o={...pe,"margin-top":"20px",..."v2"===e.checkoutPopupConf.checkoutPopupDesignVersion?{color:Ue.color}:{}},i=e.failedDonation?r("donate.failTitle"):r("donate.title"),d={...he,"align-self":"flex-start"},g=e.failedDonation?r("donate.failContent"):r("donate.content");return t.e=te(a,n,t.e),t.t=te(s,o,t.t),i!==t.a&&(l.innerHTML=t.a=i),t.o=te(c,d,t.o),g!==t.i&&(u.innerHTML=t.i=g),t}),{e:void 0,t:void 0,a:void 0,o:void 0,i:void 0}),i;var i,a,s,l,c,d,u}J(["click"]);var pn=Z("<dialog popover=manual><div>");function hn(e){const[t,n]=h("main"),[r,o]=h(),[i,a]=h(!1),[s,l]=h(!1);let c;b((()=>{if(c)try{e.checkoutPopupConf.containerStyle?.showAsModal?c.showModal():c.showPopover(),c.focus(),c.blur()}catch(t){e.logger.error("Failed to show popup",{error:t})}}));const d=()=>{e.logger.debug("Close button clicked"),e.onClose()},u=async(t,r=!1)=>{r&&e.onClose(),e.logger.info("Charity selected",{charity:t,domain:e.activeDomain.domain}),o(t);try{const o=await e.onDonate(t,e.activeDomain);if(r)return;a(!o),n("donate")}catch(t){e.logger.error("Error during donation activation",{error:t,domain:e.activeDomain.domain}),r||(a(!0),n("donate"))}},g=()=>{e.logger.debug("Suppress button clicked"),n("goodbye")},p=()=>{e.logger.debug("Navigating back to main screen"),n("main")},m=t=>{e.logger.info("User chose to hide popup",{days:t}),e.onClose(t)};let v;return y=pn(),x=y.firstChild,"function"==typeof c?ne(c,y):c=y,"function"==typeof v?ne(v,x):v=x,re(x,_(z,{get when(){return"main"===t()},get children(){return _(on,{setBackdropHidden:l,mainContainerRef:v,dialogRef:c,get checkoutPopupConf(){return e.checkoutPopupConf},get activeDomain(){return e.activeDomain},get merchantRates(){return e.merchantRates},onClose:d,onCharitySelect:u,onSuppress:g,get onOfferDetailsClick(){return e.onOfferDetailsClick},get logger(){return e.logger}})}}),null),re(x,_(z,{get when(){return"goodbye"===t()},get children(){return _(cn,{get checkoutPopupConf(){return e.checkoutPopupConf},onClose:()=>e.onClose(),onBack:p,onGoodbye:m,setScreen:n})}}),null),re(x,_(z,{get when(){return"donate"===t()},get children(){return _(gn,{get checkoutPopupConf(){return e.checkoutPopupConf},get selectedCharity(){return r()},onClose:()=>e.onClose(),get failedDonation(){return i()},setScreen:n})}}),null),f((t=>{var n,r,o=s()?"backdrop-hidden":"",i={...ce,...e.checkoutPopupConf.containerStyle?.customStyle??{}},a=e.elementId,l={...de,..."v2"===e.checkoutPopupConf.checkoutPopupDesignVersion?{"overflow-x":"visible","overflow-y":"visible"}:{}};return o!==t.e&&(n=y,null==(r=t.e=o)?n.removeAttribute("class"):n.className=r),t.t=te(y,i,t.t),a!==t.a&&Q(y,"id",t.a=a),t.o=te(x,l,t.o),t}),{e:void 0,t:void 0,a:void 0,o:void 0}),y;var y,x}function fn(e){const t=["",".asp",".aspx",".php",".js",".htm",".html"],n=["cart","checkout","shopping-bag","shopping-basket","shopping-cart","basket"].flatMap((e=>t.map((t=>e+t)))).filter((e=>"basket"!==e)),r=["tote-cart","tote.cart"],o=e,i=n.filter((e=>o.includes(e))),a=o.split("/");return!a.some((e=>r.some((t=>e.includes(t)))))&&(a.some((e=>n.some((t=>e.startsWith(t)||e.endsWith(t)))))||"basket"===a[a.length-1].toLowerCase()||i.length>1||1===i.length&&o.includes("shopping"))}function mn(e,t){const n=["book"];return e.split("/").some((e=>n.some((t=>e.startsWith(t)||e.endsWith(t)))))&&null!=t.evaluate("//*[self::h1 or self::h2 or self::h3 or self::h4 or self::h5 or self::h6][contains(., 'Your Reservation') or contains(., 'Your reservation')]",t,null,XPathResult.ANY_TYPE,null)?.iterateNext()}async function vn(e){try{const t=await ot({type:ht,payload:{shopId:e}});return t.payload.found&&t.payload.domain?t.payload.domain:null}catch{return null}}function yn(e){try{const e=Array.from(document.querySelectorAll("script"));for(const t of e){if(t.dataset?.shopId&&(t.dataset?.shopId?.startsWith("gid")||t.src.includes("shopify"))){const e=parseInt(t.dataset.shopId.replace("gid://shopify/Shop/",""));if(!Number.isNaN(e)&&e>0)return e}const e=t.textContent||"";if(e.includes("ShopifyAnalytics")&&e.includes("shopId")){const t=e.match(/shopId['"]*:\s*['"]*(\d+)['"]*[,}]/);if(t&&t[1]){const e=parseInt(t[1]);if(!Number.isNaN(e)&&e>0)return e}}}const t=document.querySelector("[data-shop-id]");if(t instanceof HTMLElement){const{shopId:e}=t.dataset;if(e){const t=parseInt(e);if(!Number.isNaN(t)&&t>0)return t}}const n=window?.ShopifyAnalytics?.lib?.trekkie?.defaultAttributes?.shopId;return n&&parseInt(n)||0}catch(t){return e.error("Error accessing ShopifyAnalytics:",t),0}}function xn(){try{if(!window.location.href.startsWith("https://shop.app"))return 0;const e=document?.head?.querySelector('meta[name="store"][content]');if(!e)return 0;try{const t=JSON.parse(e.content);return t?.id||0}catch{return 0}}catch{return 0}}const bn=et.getInstance();function An(e,t,n){try{bn.debug("Checking merchant regex rules",{currentUrl:t});const r=e.merchantPopupRules.filter((e=>n===e.domain||n.endsWith(`.${e.domain}`)));if(0===r.length)return bn.debug("No matching merchant rules found for domain",{currentUrl:t}),!1;for(const e of r)for(const n of e.rules)try{if(new RegExp(n.rule).test(t))return bn.debug("Merchant regex rule matched",{merchant:e.name,rule:n.rule,currentUrl:t}),!0}catch(t){bn.error("Invalid regex in merchant rule",{merchant:e.name,rule:n.rule,error:t})}return bn.debug("No matching regex rules found",{currentUrl:t}),!1}catch(e){return bn.error("Error in merchantRegexRule",e),!1}}function wn(e){if(e?.customLanguageDetection&&e.customLanguageDetection.length>0){const t=window.location.href,n=document.body.textContent?.toLowerCase()||"";for(const r of e.customLanguageDetection)try{if(new RegExp(r.urlPattern).test(t))for(const[e,t]of Object.entries(r.keywords))if(n.includes(e.toLowerCase()))return t}catch(e){et.getInstance().warn(`Invalid regex pattern in customLanguageDetection: ${r.urlPattern}`,e)}}const t=document.documentElement.lang,n=document.querySelector('meta[http-equiv="Content-Language"]')?.content,r=document.querySelector('link[rel="alternate"][hreflang]')?.getAttribute("hreflang"),o=navigator.language,i=t||n||r||o||"en";return"string"==typeof i?i.split("-")[0]:"en"}function Cn(e){return!0!==e.checkoutPopupOnlyShowLanguageMatch||"en"===wn(e)}const kn=(e,t=!1)=>e.length<2&&t?null:Array.from(e).filter((e=>!t||e.dataset.extensionId!==browser.runtime.id)).map((e=>e.dataset.extensionName)).join(",");const Pn=e=>{const t=v((()=>({translate:e.translate()||(e=>""),getAllCharities:e.charities()||(()=>[])})));return _(Lt.Provider,{value:t,get children(){return e.children}})},Sn=et.getInstance(),Tn=e=>/^https?:\/\/(?:www\.)?google\.[a-z]{2,}(\.[a-z]{2})?\/search\?(?:.*&)?q=[^&]+(?:&.*)?$/.test(e),En='.yuRUbf a, .MjjYud a, a[jsname="UWckNb"], a[data-pcu]',Dn=e=>{const t=null!==e.querySelector('[data-text-ad="1"]'),n=e.querySelector('span:not(.a-no-hover-link):is(:where(*, [role="text"]))'),r=n&&(n.textContent?.includes("Sponsored")||n.textContent?.includes("Ad"));return t||(r??!1)},On=async(e,t,n)=>{const{translations:r,charities:o}=await async function(e,t){try{t&&t.debug("Getting language content",{languageCode:e});const n=await ot({type:ft,payload:{lang:e}});return{translations:n.payload.translations,charities:n.payload.charities}}catch(n){return t&&t.error("Error getting language content",{error:n,languageCode:e}),{translations:null,charities:null}}}(n,e);return{translate:e=>r&&r[e]?r[e]:"",getAllCharities:()=>Object.entries(t).map((([e,t])=>{const{ein:n}=t;try{const r=o?.[n];if(!r)throw new Error(`Failed to find charity metadata for ein ${n}`);return{ein:n,tpi:r.tpi,title:r.title,order:parseInt(e,10),logo:r.logo,decorator:t.decorator,decoratorLeftStyle:t.decoratorLeftStyle,decoratorRightStyle:t.decoratorRightStyle}}catch{return{ein:n,tpi:"",title:"",order:9,logo:""}}}))}};var Ln=Z("<span> Loading...");const In=3e5,Nn=async()=>await kt.get(At)??{};var Mn=Z('<div><div><div></div><div><small><a target=_blank rel="noreferrer noopener"></a><br><a href=#></a></small></div></div><div><div><div><a><div><div></div><div><span></span><span></span></div></div></a></div><a><h3></h3></a></div><div>');const $n=(Hn=function(e){let t;const[n,r]=h(!1),o=Nt(),i={boxContainer:{"max-width":"700px",margin:"20px 0px",padding:"0px",border:(a=(()=>{if("undefined"==typeof window)return!1;if(!document.body)return!1;const e=document.body,t=window.getComputedStyle(e).backgroundColor.match(/\d+/g);if(!t||t.length<3)return window.matchMedia("(prefers-color-scheme: dark)").matches;const[n,r,o]=t.map(Number);return.299*n+.587*r+.114*o<128})())?"1.5px solid #b59410":"1.5px solid #fce68a","border-radius":"5px"},link:{color:a?"#99C3FF":"#1A0DAA"},boxHeader:{display:"flex","background-color":a?"#4a3d05":"#fffbea","border-bottom":a?"1.5px solid #b59410":"1.5px solid #fce68a",padding:"7px","border-radius":"5px 5px 0px 0px","align-items":"center",gap:"10px"},boxHeaderOptions:{"margin-left":"auto","white-space":"nowrap","font-size":"12px","padding-top":"2px"},siteName:{color:a?"#dadce0":"#202124","font-size":"14px",display:"block","line-height":"20px","white-space":"nowrap","text-overflow":"ellipsis",width:"auto"},imgContainer:{"background-color":"transparent","border-radius":"50%",display:"inline-flex","justify-content":"center","align-items":"center",height:"26px",width:"26px","margin-right":"12px","vertical-align":"middle"},img:{height:"26px",width:"26px"},description:{margin:"7px 0px 0px",color:a?"#bfbfbf":"#4d5156","line-height":1.58,"font-size":"14px"},citation:{color:a?"#bdc1c6":"#4d5156","font-size":"12px"}};var a;let s=!1;const l=async(t,n)=>{if("click"===t.type){if(t.preventDefault(),s)return;s=!0}const r=e.domainData.shouldStandDown&&!e.domainData.currentlyActivated,o=[];r||o.push((async e=>{try{const t=await Nn();t[e]=Date.now(),await kt.set(At,t)}catch{}})(parseInt(e.domainData.activeDomain.merchantId))),e.serpLoggingEnabled&&o.push(St.trackEvent(Xe.checkoutPopupGooglePartnerAnnClicked,{url:globalThis.window.location.href,activeDomain:e.domainData.activeDomain.domain,isLinkWithNoActivation:r,clickEvent:t.type})),"click"===t.type&&(await Promise.all(o).catch((()=>{})),window.location.assign(n)),"contextmenu"===t.type&&Promise.all(o)},c=async e=>{const n=e.target.closest("a");n&&t?.contains(n)&&await l(e,n.href)};return d=Mn(),u=d.firstChild,g=u.firstChild,p=g.nextSibling,m=p.firstChild.firstChild,v=m.nextSibling.nextSibling,b=(x=(y=u.nextSibling).firstChild).firstChild,w=(A=b.firstChild).firstChild,k=(C=w.firstChild).nextSibling,P=k.firstChild,S=P.nextSibling,E=(T=b.nextSibling).firstChild,D=x.nextSibling,g.style.setProperty("font-size","14px"),v.$$click=t=>{t.preventDefault(),Bn(),e.serpLoggingEnabled&&St.trackEvent(Xe.checkoutPopupGooglePartnerAnnHidden,{url:globalThis.window.location.href,activeDomain:e.domainData.activeDomain.domain}),r(!0)},re(v,(()=>o("serpBanner.hide"))),y.style.setProperty("padding","10px"),x.style.setProperty("display","inline-flex"),x.style.setProperty("flex-direction","column"),x.style.setProperty("gap","10px"),A.$$contextmenu=t=>l(t,e.url),A.$$click=t=>l(t,e.url),A.style.setProperty("text-decoration","none"),w.style.setProperty("display","inline-flex"),w.style.setProperty("align-items","center"),k.style.setProperty("display","flex"),k.style.setProperty("flex-direction","column"),k.style.setProperty("gap","3px"),re(P,(()=>e.siteName)),re(S,(()=>e.citation)),T.$$contextmenu=t=>l(t,e.url),T.$$click=t=>l(t,e.url),E.style.setProperty("font-family","Google Sans, Roboto, Arial, sans-serif"),re(E,(()=>e.title)),D.$$contextmenu=c,D.$$click=c,"function"==typeof t?ne(t,D):t=D,f((t=>{var r={...i.boxContainer,display:n()?"none":"block"},a=i.boxHeader,s=Rn(o("serpBanner.title"),e.siteName,e.domainData.activeDomain),l={...i.boxHeaderOptions,"text-align":"end"},c=i.link,h=e.learnMoreUrl,f=o("serpBanner.learnMore"),y=i.link,x=e.url,b=e.imgContents,w=i.siteName,k=i.citation,E=e.url,O=i.description,L=e.description||"";return t.e=te(d,r,t.e),t.t=te(u,a,t.t),s!==t.a&&(g.innerHTML=t.a=s),t.o=te(p,l,t.o),t.i=te(m,c,t.i),h!==t.n&&Q(m,"href",t.n=h),f!==t.s&&(m.innerHTML=t.s=f),t.h=te(v,y,t.h),x!==t.r&&Q(A,"href",t.r=x),b!==t.d&&(C.innerHTML=t.d=b),t.l=te(P,w,t.l),t.u=te(S,k,t.u),E!==t.c&&Q(T,"href",t.c=E),t.w=te(D,O,t.w),L!==t.m&&(D.innerHTML=t.m=L),t}),{e:void 0,t:void 0,a:void 0,o:void 0,i:void 0,n:void 0,s:void 0,h:void 0,r:void 0,d:void 0,l:void 0,u:void 0,c:void 0,w:void 0,m:void 0}),d;var d,u,g,p,m,v,y,x,b,A,w,C,k,P,S,T,E,D},e=>{const[t]=y((()=>({lang:e.currentLanguage,logger:e.logger,list:e.charitiesList})),(async e=>On(e.logger,e.list,e.lang))),n=()=>t()?.translate,r=()=>t()?.getAllCharities;return _(z,{get when(){return!t.loading},get fallback(){return Ln()},get children(){return _(Pn,{translate:n,charities:r,get children(){return _(Hn,e)}})}})});var Hn;const Rn=(e,t,n)=>e.replace("{0}",Et(n.commission.kind,n.commission.amount.toString())).replace("{1}",t??n.merchantName);J(["click","contextmenu"]);const Un=async(e,t)=>{const n=((e=!0)=>{const t=((e=!0)=>{const t=Array.from(globalThis.window.document.querySelectorAll("#rso > div, #tads > div, #rso .MjjYud"));return e?t.filter((e=>!Dn(e))):t})(e),n=[];return t.forEach((e=>{const t=e.querySelector(En);if(t){let r=t.href;if(r&&r.includes("/url?q="))try{const e=new URLSearchParams(new URL(r).search).get("q");e&&(r=e)}catch{}r&&r.startsWith("http")&&n.push({url:r,container:e})}})),n})(),r=await _n(n.map((e=>e.url)));e&&St.trackEvent(Xe.checkoutPopupGoogleSearch,{url:globalThis.window.location.href,partnersFound:Object.entries(r).map((([e,t])=>({url:e,partner:t.activeDomain}))),isPartnerBoxMuted:t});const o=n.find((e=>r[e.url]));if(o){const e=(e=>{const t=e.querySelector("h3"),n=e.querySelector('.VuuXrf, span[role="text"]')?.innerText,r=e.querySelector("cite")?.textContent,o=e.querySelector(En),i=o?.querySelector("img")?.parentElement?.parentElement?.outerHTML,a=e.querySelector('.VwiC3b, .kb069e, div[style*="-webkit-line-clamp"]');return{title:t?.textContent?.trim()??null,siteName:n,citation:r,imgContents:i,description:a?.innerHTML?.trim()??null}})(o.container);return{...o,...e,domainData:r[o.url]}}return null},_n=async e=>{const{payload:t}=await it({type:mt,payload:{urls:e}});return t.result},Fn=e=>!!e.partnerSerpBox?.enabled,Gn=async()=>!!await kt.get("gf_partner_serp_muted"),Bn=async()=>{await ot({type:vt,payload:{}})};var jn=Z("<div class=gf-app>");function Wn(e){const[t,n]=h(void 0),[r,o]=h(!1),[i,a]=h([]),[s,l]=h();let c;b((async()=>{e.logger.info("Mounting GfApp component");try{(function(e){if(!e?.shouldCheckSiteMatches)return;let t;(e?.siteMatchesRegex??[]).some((e=>{var n;return n=window.location.href,!(!new RegExp(e).test(n)||(t=e,0))}))&&t&&St.trackEvent(Xe.checkoutPopupSiteMatches,{url:window.location.href,matchedRule:t,uts:Date.now()},!0)})(e.popupConfig),(async()=>{try{const e=await Nn();for(const t in e)e[t]&&Date.now()-e[t]>In&&delete e[t];await kt.set(At,e)}catch{}})();const i=await(async()=>await kt.get(xt)||(async()=>{Sn.debug("detecting country");const e={method:"GET",headers:{"Content-Type":"application/json",Authorization:"Basic OTEzOTkxOnFlYmpaWF9DOGNRY0lxSHA4WTVjNGxzU1pRSlM2VW9MMExzTF9tbWs="}};try{const t=await fetch("https://geoip.maxmind.com/geoip/v2.1/country/me",e);if(Sn.debug("Received geolocation response",{status:t.status}),!t.ok)return void Sn.error("Failed to get geolocation data",{status:t.status,statusText:t.statusText});const n=await t.json();if(!n)throw new Error("There was an error fetching geoip look up");return await kt.set(xt,n.country.iso_code),n.country.iso_code}catch(e){return void Sn.error("Failed to get geolocation data",{error:e},!0)}})())()??"us",s=e.popupConfig.charities?.[i.toLowerCase()]??e.popupConfig.charities?.us;e.logger.debug("Charities for current country",{currentCountry:i,charities:s});const d=wn(e.popupConfig);e.logger.debug("Setting content provider with translations and charity functions"),On(e.logger,s,d).then(l);const u=Pt();if(e.popupConfig.minVersion&&((e,t)=>{if(e===t)return!1;const n=e.split(".").map((e=>parseInt(e,10))),r=t.split(".").map((e=>parseInt(e,10)));for(let e=0;e<n.length;e++){if(n[e]<r[e])return!0;if(n[e]>r[e])return!1}return!1})(u,e.popupConfig.minVersion))return void e.logger.debug(`Current version: ${u}. Minimum version ${e.popupConfig.minVersion} not met`);if(!1===e.popupConfig.checkoutPopupMasterSwitch)return void e.logger.debug("Checkout popup master switch is disabled");const g=document.getElementsByClassName("give-freely-root");let p=!1;if(g.length>1&&(e.logger.debug("There is more than one gf extension installed"),g.item(0).dataset.extensionId!==browser.runtime.id&&(e.logger.debug("Giving preference to the first gf extension injected in the DOM"),p=!0),e.logger.debug("Providing this extension preference over the other installed extensions")),!p&&Tn(window.location.href)&&(e.logger.debug("This is a google search result page."),(async(e,t,n,r)=>{if(Fn(r)){const o=await Gn(),i=!!r.enhancedLogging;e.debug("Serp partner box enabled. Looking for partner in search results");const a=await Un(i,o);if(!o&&a&&r.partnerSerpBox?.learnMoreUrl)return void((e=>{const t=document.querySelector('div[data-subtree="mfc"], .fG8Fp'),n=document.getElementById("atvcap")??document.getElementById("tads")??document.getElementById("search");return t?(t.insertAdjacentElement("afterend",e),!0):!!n&&(n.prepend(e),!0)})((e=>{const t=document.createElement("div");return X((()=>_($n,e)),t),t})({...a,currentLanguage:n,logger:e,learnMoreUrl:r.partnerSerpBox?.learnMoreUrl,charitiesList:t,serpLoggingEnabled:i}))?(e.info("Partner found and banner injected"),i&&St.trackEvent(Xe.checkoutPopupGooglePartnerAnnCreated,{url:globalThis.window.location.href,activeDomain:a.domainData.activeDomain})):e.warn("Partner found but banner couldn't be injected"));e.info("Couldn't find partners in search results")}})(e.logger,s,d,e.popupConfig)),!1===e.popupConfig.popupEnabled)return void e.logger.debug("Popup is disabled.");const{domain:h}=await(async e=>{const{hostname:t}=window.location;e.debug("Checking if domain is active",{hostname:t});const n=await ot({type:ct,payload:{hostname:t}});return n.payload.isActive?(e.debug("Active domain",{domain:n.payload.domain}),e.info("Domain and rates ({})ed successfully."),{isActive:!0,domain:n.payload.domain}):{isActive:!1,domain:void 0}})(e.logger);if(h&&a(h.rates),n(h),h)a(h.rates),await function(e,t){const n=yn(t)||xn();return n>0&&function(e,t,n){if(e&&!(e<=0))try{ot({type:pt,payload:{shopId:e,domain:t}}).catch((e=>{n.error("Error sending shop ID to background:",e)}))}catch(e){n.error("Error sending Shopify shop ID:",e)}}(n,e,t),n}(h,e.logger);else{if("shop.app"!==window.location.hostname&&!window.location.hostname.endsWith(".shop.app"))return void o(!1);const t=window.location.pathname.split("/")[2];if(!t)return e.logger.error("Shop ID not found"),void o(!1);const r=await vn(parseInt(t));if(!r)return e.logger.error("Shop domain not found"),void o(!1);e.logger.debug("Shop domain found",{shopDomain:r}),n(r)}const f=await(async e=>{const t=await kt.get("popup_hide");if(!t)return e.debug("No expiry found in storage"),!1;const{popupHide:n}=t,r=!!n&&Date.now()<n;return e.debug("Is Donation Popup Muted?",{isMuted:r,expiry:n}),r})(e.logger);if(f)return;if(!t())return void o(!1);const{result:m,reason:v}=await(async(e,t)=>{const{domain:n}=t,r=window.location.href,o=document.cookie,{payload:i}=await ot({type:ut,payload:{activeDomain:n,url:r,cookies:o}});return i.result&&e.info("Stand Down detected"),i})(e.logger,t());if(m)return o(!1),void(v&&e.popupConfig.enhancedLogging&&St.trackEvent(Xe.checkoutPopupStoodDown,{reason:v,domain:t()?.domain}));const y=e.popupConfig?.anonymousActiveDomainLogging??!1,x=t()??void 0;x&&y&&!function(e){const t=`gfhv-${e}`;return!!sessionStorage.getItem(t)||(sessionStorage.setItem(t,"true"),!1)}(x.domain)&&St.trackEvent(Xe.checkoutPopupActiveDomain,{url:x.domain}),c=window.setInterval((async()=>{let t=!1;return x&&(e.logger.debug("Checking if we should popup anywhere"),t=await(async e=>{try{const t=await Nn();if(t[e])return Date.now()-t[e]<In}catch{}return!1})(parseInt(x.merchantId)),e.logger.debug("We should popup anywhere",t)),t||(e.logger.debug("Checking checkout rules"),t=await(async e=>{const t=et.getInstance();t.configure({enabled:!0,title:"Content - checkoutRulesTest"});const n=new URL(globalThis.location.href),r=n.href,{hostname:o}=n;t.debug("Checking if popup should be shown",{currentUrl:r});const i=await async function(e){const t=yn(e)||xn();return!("shop.app"!==window.location.hostname&&!window.location.hostname.endsWith(".shop.app")||!(t>0)||!await vn(t))}(t),a=Cn(e)&&(fn(n.pathname.toLowerCase())||mn(r,document)||An(e,r,o)||i);return t.debug("Popup show decision based on rules",{shouldShow:a,matchesCartRule:fn(n.pathname.toLowerCase()),matchesBookingRule:mn(r,document),matchesShopPayRule:i,matchesMerchantRegexRule:An(e,r,o),matchesLanguageRule:Cn(e)}),a})(e.popupConfig),e.logger.debug("Should show popup based on checkout rules",{shouldShowResult:t})),t&&p?(St.trackEvent(Xe.checkoutPopupLooserExtension,{url:globalThis.window.location.href,winner:g.item(0).dataset.extensionName}),e.logger.debug("Standing down because, another GiveFreely extension will pop"),void clearInterval(c)):t&&globalThis.window.matchMedia("(max-width: 600px), (max-height: 480px)").matches?(e.logger.debug("Viewport too small for displaying the popup"),r()&&St.trackEvent(Xe.checkoutPopupHiddenProgrammatically,{url:globalThis.window.location.href,merchantId:x?.merchantId,reason:"Viewport size became too small"}),o(!1),void St.trackEvent(Xe.checkoutPopupNotShownPerViewportSize,{url:globalThis.window.location.href,pageLanguage:d,merchantId:x?.merchantId,viewPortSize:{height:globalThis.window.innerHeight,width:globalThis.window.innerWidth}})):(t&&!r()&&St.trackEvent(Xe.checkoutPopupShown,{url:globalThis.window.location.href,pageLanguage:d,merchantId:x?.merchantId,domainId:x?.id,provider:x?.provider,looserCompetingExtensions:kn(g,!0)}),!t&&r()&&St.trackEvent(Xe.checkoutPopupHiddenProgrammatically,{url:globalThis.window.location.href,merchantId:x?.merchantId,domainId:x?.id,reason:"Checkout rules no longer matched"}),void o(t))}),2e3)}catch(t){o(!1),e.logger.error("An error occurred in GfApp",{error:t})}})),A((()=>{c&&window.clearInterval(c)}));const d=async(t,n)=>{e.logger.info("Processing donation",{charity:t,domain:n.domain});const r=crypto.randomUUID(),o=await(async(e,t,n,r,o,i=!0)=>{e.debug("Activating offer",{activeDomain:t,selectedCharity:r});try{const a=await it({type:gt,payload:{activeDomain:t,originalUrl:n,selectedCharity:r,gfCommissionUniqueId:o,openTab:i}});return e.debug("Activate offer response",{response:a}),a}catch(n){return e.error("Failed to activate offer",{activeDomain:t,error:n}),{type:gt,payload:{response:!1}}}})(e.logger,n,window.location.href,{ein:t.ein,thirdPartyId:t.tpi},r);return e.logger.debug("Activate offer response",{activationResponse:o}),St.trackEvent(o.payload.response?Xe.checkoutPopupDonation:Xe.checkoutPopupFailedActivation,{activeDomain:n.domain,url:globalThis.window.location.href,merchantId:n?.merchantId,domainId:n?.id,provider:n?.provider,charity:{ein:t.ein,tpi:t.tpi},rate:n.commission,gfCommissionUniqueId:r}),o.payload.response},u=async n=>{o(await(async(e,t)=>{try{e.info("Hiding popup",{days:t});const n=await it({type:st,payload:{days:t??0}});return void 0!==t&&St.trackEvent(Xe.checkoutPopupSupressed,{url:globalThis.window.location.href,days:t}),e.info("Hiding popup response",{hideResponse:n}),n.payload.ack?(e.debug("Popup hidden successfully"),!1):(e.warn("Failed to hide popup"),!0)}catch{return!1}})(e.logger,n)),c&&window.clearInterval(c),t()&&(async e=>{try{const t=await Nn();t[e]&&delete t[e],await kt.set(At,t)}catch{}})(parseInt(t().merchantId))},g=async e=>{St.trackEvent(Xe.checkoutPopupOfferDetailsClicked,{action:e?"opened":"closed"})};return _(Pn,{translate:()=>s()?.translate,charities:()=>s()?.getAllCharities,get children(){var n,o=jn();return re(o,(n=v((()=>!(!t()||!r()))),()=>n()&&_(hn,{get checkoutPopupConf(){return e.popupConfig},elementId:"give-freely-checkout-popup",get activeDomain(){return t()},get merchantRates(){return i()},onClose:u,onDonate:d,onOfferDetailsClick:g,get logger(){return e.logger}}))),o}})}exports.browser=browser,exports.initialize=async function(){const e=`give-freely-root-${browser.runtime.id}`;if(document.getElementById(e))return;const t=document.createElement("div");t.id=e,t.className="give-freely-root",t.style.display="block",t.dataset.extensionId=browser.runtime.id,t.dataset.extensionName=browser.runtime.getManifest().name||browser.runtime.id,document.body.appendChild(t);const n=t.attachShadow({mode:"open"}),r=document.createElement("div"),o=et.getInstance(),i=await(async()=>{const e=await it({type:lt,payload:{}});if(!e?.payload?.config)throw new Error("No checkout popup config found");return e.payload.config})();if(!i)return void o.error("No GF config found");o.configure({enabled:i.checkoutPopupLoggerEnabled??!0,title:"Content - Donation popup",minLevel:i.checkoutPopupMinLogLevel??"error"});const a=(s=i.containerStyle?.backdropColor,`\n :host {\n all: initial;\n }\n\n .gf-scroll-remove::-webkit-scrollbar {\n border-radius-bottom-right: 15px;\n }\n\n button {\n cursor: pointer;\n transition: transform 0.1s ease;\n }\n\n button:active {\n transform: scale(0.98);\n }\n\n .give-freely-close-button:hover {\n opacity: 0.7;\n }\n\n input[type="radio"] {\n margin-right: 8px;\n }\n\n hr {\n border: none;\n border-top: 1px solid #e5e5e5;\n margin: 1em 0;\n }\n\n dialog::backdrop {\n background-color: ${s||"revert"};\n }\n\n dialog.backdrop-hidden::backdrop {\n background-color: transparent;\n }\n`);var s;const l=document.createElement("style");l.textContent=a,n.appendChild(l),n.appendChild(r),i.countAppearances&&async function(e){try{const t=globalThis.window.location.href,n=Tn(t);if(e.debug("Is a Google search result page?",n),!n)return!1;const r=(()=>{const e=globalThis.window.document.querySelectorAll("#rso > div, #tads > div"),t=[];return e.forEach((e=>{const n=Dn(e),r=e.querySelector(En);if(r){let e=r.href;if(e&&e.includes("/url?q="))try{const t=new URLSearchParams(new URL(e).search).get("q");t&&(e=t)}catch{}e&&e.startsWith("http")&&t.push({url:e,isSponsored:n??!1})}})),t})();if(e.info("The following search results were identified",r),!r||0===r.length)return!1;const o=await ot({type:dt,payload:{currentUrl:t,searchResults:r,source:"google"}});return o?.payload?.result??!1}catch(t){return e.error("Error while identifying search results",t),!1}}(o),X((()=>_(Wn,{popupConfig:i,logger:o})),r)};
2
2
  //# sourceMappingURL=GiveFreely-content.cjs.js.map