@contentcredits/sdk 2.9.0 → 2.11.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
- !function(e,n){"object"==typeof exports&&"undefined"!=typeof module?n(exports):"function"==typeof define&&define.amd?define(["exports"],n):n((e="undefined"!=typeof globalThis?globalThis:e||self).ContentCreditsSDK={})}(this,function(e){"use strict";function n(e){try{const n=e.split(".");if(3!==n.length)return null;const t=n[1].replace(/-/g,"+").replace(/_/g,"/"),o=t.padEnd(t.length+(4-t.length%4)%4,"="),i=decodeURIComponent(atob(o).split("").map(e=>"%"+("00"+e.charCodeAt(0).toString(16)).slice(-2)).join(""));return JSON.parse(i)}catch(e){return null}}function t(e){const t=n(e);return!t||"number"!=typeof t.exp||Date.now()/1e3>t.exp}const o="cc_sdk_token",i="cc_rt";let c=null;const r={set(e){c=e;try{sessionStorage.setItem(o,e)}catch(e){}},get(){if(c)return t(c)?(this.clear(),null):c;try{const e=sessionStorage.getItem(o);if(e)return t(e)?(this.clear(),null):(c=e,e)}catch(e){}return null},clear(){c=null;try{sessionStorage.removeItem(o)}catch(e){}},has(){return null!==this.get()}},a={set(e){try{localStorage.setItem(i,e)}catch(e){}},get(){try{return localStorage.getItem(i)}catch(e){return null}},clear(){try{localStorage.removeItem(i)}catch(e){}},has(){return null!==this.get()}};async function s(e){const n=a.get();if(!n)return!1;const t=new AbortController,o=setTimeout(()=>t.abort(),8e3);try{const i=await fetch(`${e}/auth/refresh`,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({refreshToken:n}),credentials:"omit",signal:t.signal});if(clearTimeout(o),!i.ok)return a.clear(),!1;const c=await i.json();return(null==c?void 0:c.accessToken)&&(null==c?void 0:c.refreshToken)?(r.set(c.accessToken),a.set(c.refreshToken),!0):(a.clear(),!1)}catch(e){return clearTimeout(o),!1}}const l=new Map;class d extends Error{constructor(e,n,t){super(n),this.status=e,this.data=t,this.name="ApiError"}}const u="data-cc-gated";function p(e){let n=!1,t=null,o=[];return{hide:function(){if(t=document.querySelector(e.selector),!t)return!1;if(t.hasAttribute(u))return!0;const i=Array.from(t.querySelectorAll("p, h2, h3, h4, blockquote, ul, ol"));if(i.length>e.teaserParagraphs){const n=i[e.teaserParagraphs],c=Array.from(t.childNodes),r=c.findIndex(e=>e===n||t.contains(e)&&e.compareDocumentPosition(n)&Node.DOCUMENT_POSITION_FOLLOWING);o=c.slice(r<0?e.teaserParagraphs:r),o.forEach(e=>{var n,t,o,i;(e instanceof HTMLElement||e instanceof Text)&&(null===(t=null===(n=e.style)||void 0===n?void 0:n.setProperty)||void 0===t||t.call(n,"display","none"),null===(i=(o=e).setAttribute)||void 0===i||i.call(o,"data-cc-hidden","true"))})}else o=Array.from(t.childNodes),o.forEach(e=>{e instanceof HTMLElement&&(e.style.display="none")});if(t.setAttribute(u,"true"),n=!0,!t.querySelector("[data-cc-fade]")){const e=t.style.position;e&&"static"!==e||(t.style.position="relative");const n=document.createElement("div");n.setAttribute("data-cc-fade","true"),n.style.cssText="position:absolute;bottom:0;left:0;width:100%;height:160px;background:linear-gradient(to bottom,transparent 0%,var(--cc-bg,#fff) 100%);pointer-events:none;z-index:1;",t.appendChild(n)}return!0},reveal:function(){if(!n)return;o.forEach(e=>{e instanceof HTMLElement&&(e.style.removeProperty("display"),e.removeAttribute("data-cc-hidden"))});const e=null==t?void 0:t.querySelector("[data-cc-fade]");e&&e.remove(),o=[],null==t||t.removeAttribute(u),n=!1},isGated:function(){return n}}}function h(e){const n=document.getElementById(e);n&&n.remove()}function m(e,n){const t=e.querySelector("style[data-cc-styles]");if(t)return void(t.textContent=n);const o=document.createElement("style");o.dataset.ccStyles="true",o.textContent=n,e.appendChild(o)}function f(e,n){e.textContent=n}function g(e,n,t){const o=document.createElement(e);return void 0!==n&&(o.textContent=n),o}const b="cc-paywall-host";function y(){return/Android|webOS|iPhone|iPad|iPod|BlackBerry|IEMobile|Opera Mini/i.test(navigator.userAgent)||window.innerWidth<768}function v(){var e,n;try{const t=new URL(window.location.href),o=null!==(e=t.searchParams.get("token"))&&void 0!==e?e:t.searchParams.get("cc_token"),i=null!==(n=t.searchParams.get("refresh_token"))&&void 0!==n?n:t.searchParams.get("cc_refresh_token");if(function(){try{const e=new URL(window.location.href);let n=!1;["token","cc_token","refresh_token","cc_refresh_token"].forEach(t=>{e.searchParams.has(t)&&(e.searchParams.delete(t),n=!0)}),n&&history.replaceState(null,"",e.toString())}catch(e){}}(),i&&a.set(i),o){r.set(o);const e=window.opener;if(e&&!e.closed){try{e.postMessage({type:"cc_auth_callback",token:o,refreshToken:null!=i?i:null},window.location.origin)}catch(e){}setTimeout(()=>{try{window.close()}catch(e){}},300)}return o}}catch(e){}return null}function x(e){return new Promise(n=>{let t=null,o=!1;function i(e){o||(o=!0,clearInterval(l),window.removeEventListener("message",c),n(e))}function c(e){if(e.origin!==window.location.origin)return;if("object"!=typeof(n=e.data)||null===n||"cc_auth_callback"!==n.type)return;var n;const o=e.data.token,c=e.data.refreshToken;if(o){r.set(o),c&&a.set(c);try{null==t||t.close()}catch(e){}i(o)}}window.addEventListener("message",c);try{t=window.open(e,"ccAuthPopup",`scrollbars=no,resizable=no,status=no,location=no,toolbar=no,menubar=no,width=600,height=650,left=${Math.round(window.screenX+(window.outerWidth-600)/2)},top=${Math.round(window.screenY+(window.outerHeight-650)/2)}`)}catch(e){return window.removeEventListener("message",c),void n(null)}if(!t||t.closed)return window.removeEventListener("message",c),void n(null);let s=0;const l=setInterval(()=>{var e,n;if(s+=200,t&&!t.closed)if(s>3e5){try{t.close()}catch(e){}i(null)}else try{const o=t.location.href;if(o.includes("/auth/callback")||o.includes("cc_token=")||o.includes("token=")){const o=new URLSearchParams(t.location.search),c=null!==(e=o.get("token"))&&void 0!==e?e:o.get("cc_token"),s=null!==(n=o.get("refresh_token"))&&void 0!==n?n:o.get("cc_refresh_token");if(c){r.set(c),s&&a.set(s);try{t.close()}catch(e){}i(c)}}}catch(e){}else i(r.get())},200)})}function w(e,n,t,o,i){const c=null!=i?i:p({selector:e.contentSelector,teaserParagraphs:e.teaserParagraphs}),a=function(e){let n=null,t=null;function o(){const o=document.querySelector(e.contentSelector);if(!o)return;const{root:i}=function(e,n){let t=document.getElementById(e);t||(t=document.createElement("div"),t.id=e,n.parentNode.insertBefore(t,n.nextSibling));const o=t._ccShadow;if(o)return{host:t,root:o};const i=t.attachShadow({mode:"open"});return t._ccShadow=i,{host:t,root:i}}(b,o);var c,r;n=i,m(n,`\n *, *::before, *::after { box-sizing: border-box; margin: 0; padding: 0; }\n\n /* Inline paywall panel — sits below the teaser content in the page flow */\n .cc-paywall-inline {\n width: 100%;\n padding: 36px 24px 32px;\n background: #fff;\n border: 1px solid #e5e7eb;\n border-top: 3px solid ${c=e.theme.primaryColor};\n border-radius: 0 0 12px 12px;\n text-align: center;\n font-family: ${r=e.theme.fontFamily};\n box-sizing: border-box;\n }\n\n .cc-paywall-inline h2 {\n font-size: 20px;\n font-weight: 700;\n color: #111827;\n margin-bottom: 8px;\n }\n\n .cc-paywall-inline p {\n font-size: 14px;\n color: #6b7280;\n margin-bottom: 24px;\n line-height: 1.6;\n }\n\n .cc-btn {\n display: inline-flex;\n align-items: center;\n justify-content: center;\n gap: 8px;\n height: 44px;\n padding: 0 20px;\n border: none;\n border-radius: 8px;\n font-family: ${r};\n font-size: 15px;\n font-weight: 600;\n cursor: pointer;\n transition: opacity 0.15s ease, transform 0.1s ease;\n width: 100%;\n max-width: 320px;\n }\n .cc-btn:hover:not(:disabled) { opacity: 0.88; }\n .cc-btn:active:not(:disabled) { transform: scale(0.98); }\n .cc-btn:disabled { opacity: 0.55; cursor: not-allowed; }\n\n .cc-btn-primary {\n background: ${c};\n color: #fff;\n }\n\n .cc-btn-secondary {\n background: #111827;\n color: #fff;\n margin-top: 10px;\n }\n\n .cc-btn-outline {\n background: transparent;\n color: #111827;\n border: 2px solid #111827;\n margin-top: 10px;\n }\n\n .cc-credit-badge {\n display: inline-block;\n background: #fef3c7;\n color: #92400e;\n border-radius: 20px;\n padding: 2px 10px;\n font-size: 13px;\n font-weight: 600;\n margin-bottom: 16px;\n }\n\n .cc-spinner {\n width: 18px; height: 18px;\n border: 2px solid rgba(255,255,255,0.4);\n border-top-color: #fff;\n border-radius: 50%;\n animation: cc-spin 0.7s linear infinite;\n flex-shrink: 0;\n }\n @keyframes cc-spin { to { transform: rotate(360deg); } }\n\n .cc-powered-by {\n margin-top: 20px;\n font-size: 12px;\n color: #9ca3af;\n }\n .cc-powered-by a {\n color: ${c};\n text-decoration: none;\n font-weight: 600;\n }\n .cc-powered-by a:hover { text-decoration: underline; }\n `),t=g("div"),t.className="cc-paywall-inline",n.appendChild(t)}function i(){const e=g("div");e.className="cc-powered-by",e.textContent="Powered by ";const n=g("a","Content Credits");return n.setAttribute("href","https://contentcredits.com"),n.setAttribute("target","_blank"),n.setAttribute("rel","noopener noreferrer"),e.appendChild(n),e}function c(){h(b),n=null,t=null}return{init:o,render:function(e,n,r){var a,s,l;if("checking"!==e&&(t||o(),t)){for(;t.firstChild;)t.removeChild(t.firstChild);switch(e){case"login":!function(e,n){e.appendChild(g("h2","This article requires a subscription")),e.appendChild(g("p","Log in with your Content Credits account to unlock this article."));const t=g("button","Login & Buy with Content Credits");t.className="cc-btn cc-btn-primary",t.addEventListener("click",()=>{n.onLogin()}),e.appendChild(t),e.appendChild(i())}(t,n);break;case"purchase":!function(e,n,t){if(e.appendChild(g("h2","Unlock this article")),null!==t){const n=g("span",`${t} credit${1!==t?"s":""}`);n.className="cc-credit-badge",e.appendChild(n)}e.appendChild(g("p","Use your Content Credits balance to instantly access this premium article."));const o=g("button",null!==t?`Buy for ${t} Credit${1!==t?"s":""}`:"Buy with Content Credits");o.className="cc-btn cc-btn-primary",o.addEventListener("click",()=>{n.onPurchase()}),e.appendChild(o),e.appendChild(i())}(t,n,null!==(a=null==r?void 0:r.requiredCredits)&&void 0!==a?a:null);break;case"insufficient":!function(e,n,t,o){e.appendChild(g("h2","Not enough credits"));const c=null!==t&&null!==o?`You need ${t} credit${1!==t?"s":""} but have ${o}. Top up to unlock this article.`:"You don't have enough credits to unlock this article. Purchase more to continue.";e.appendChild(g("p",c));const r=g("button","Buy More Credits");r.className="cc-btn cc-btn-primary",r.addEventListener("click",()=>n.onBuyMoreCredits()),e.appendChild(r),e.appendChild(i())}(t,n,null!==(s=null==r?void 0:r.requiredCredits)&&void 0!==s?s:null,null!==(l=null==r?void 0:r.creditBalance)&&void 0!==l?l:null);break;case"loading":!function(e){const n=g("button");n.className="cc-btn cc-btn-primary",n.disabled=!0;const t=g("span");t.className="cc-spinner",n.appendChild(t),n.appendChild(document.createTextNode(" Processing…")),e.appendChild(n)}(t);break;case"granted":c()}}},setButtonLoading:function(e){if(!t)return;const n=t.querySelector(".cc-btn");if(n&&(n.disabled=e,e)){const e=g("span");e.className="cc-spinner",f(n,""),n.appendChild(e),n.appendChild(document.createTextNode(" Processing…"))}},destroy:c}}(e),s=function(){let e=null,n=null;function t(t){var o,i,c,r;if(!function(){const e=["https://accounts.contentcredits.com"];try{e.push(window.location.origin)}catch(e){}return e}().includes(t.origin)&&t.origin!==window.location.origin)return;const a=t.data;if(a&&"object"==typeof a&&a.type)switch(a.type){case"authorization_response":{const n=null!==(o=a.data)&&void 0!==o?o:null===(i=t.detail)||void 0===i?void 0:i.data;n&&e&&e(n);break}case"purchase_response":{const e=null!==(c=a.data)&&void 0!==c?c:null===(r=t.detail)||void 0===r?void 0:r.data;e&&n&&n(e);break}}}return{attach:function(){window.addEventListener("message",t),window.addEventListener("authorization_response",n=>{const t=n.detail;(null==t?void 0:t.data)&&e&&e(t.data)}),window.addEventListener("purchase_response",e=>{const t=e.detail;(null==t?void 0:t.data)&&n&&n(t.data)})},detach:function(){window.removeEventListener("message",t)},requestAuthorization:function(e,n){window.postMessage({type:"request_authorization",data:{articleId:e,hostName:n}},window.location.origin)},requestPurchase:function(e){window.postMessage({type:"request_purchase",data:e},window.location.origin)},requestLogin:function(e){window.postMessage({type:"request_login",data:{hostName:e}},window.location.origin)},onAuthorizationResponse:function(n){e=n},onPurchaseResponse:function(e){n=e}}}();let l=!1;function u(n=0,i=0){var r;t.set({hasAccess:!0,isLoaded:!0,isLoading:!1}),e.headless||(c.reveal(),a.render("granted",{onLogin:w,onPurchase:C,onBuyMoreCredits:k})),o.emit("paywall:hidden",{}),o.emit("article:purchased",{creditsSpent:n,remainingBalance:i}),null===(r=e.onAccessGranted)||void 0===r||r.call(e)}async function w(){const n=`https://accounts.contentcredits.com/authenticate/extension?redirect=${encodeURIComponent(e.articleUrl)}`;l?s.requestLogin(e.hostName):y()?window.location.href=n:(e.headless||a.render("loading",{onLogin:w,onPurchase:C,onBuyMoreCredits:k}),await x(n)?(t.set({isLoggedIn:!0}),await L()):e.headless||a.render("login",{onLogin:w,onPurchase:C,onBuyMoreCredits:k}))}async function C(){var i,c,p,h,m;if(r.has())if(l)s.requestPurchase({articleId:e.apiKey,hostName:e.hostName,location:e.articleUrl,title:e.pageTitle});else{e.headless||a.render("loading",{onLogin:w,onPurchase:C,onBuyMoreCredits:k}),t.set({isLoading:!0});try{const c=await n.purchaseArticle({apiKey:e.apiKey,postUrl:e.articleUrl,postName:e.pageTitle,hostName:e.hostName});c.success?u(0,0):(t.set({isLoading:!1}),e.headless||a.render("purchase",{onLogin:w,onPurchase:C,onBuyMoreCredits:k}),o.emit("error",{message:null!==(i=c.message)&&void 0!==i?i:"Purchase failed"}))}catch(n){if(t.set({isLoading:!1}),n instanceof d&&402===n.status){e.headless||a.render("insufficient",{onLogin:w,onPurchase:C,onBuyMoreCredits:k},{requiredCredits:t.get().requiredCredits,creditBalance:t.get().creditBalance});const n=null!==(c=t.get().requiredCredits)&&void 0!==c?c:0,i=null!==(p=t.get().creditBalance)&&void 0!==p?p:0;null===(h=e.onInsufficientCredits)||void 0===h||h.call(e,{required:n,available:i}),o.emit("credits:insufficient",{required:n,available:i})}else e.headless||a.render("purchase",{onLogin:w,onPurchase:C,onBuyMoreCredits:k}),null===(m=e.onPurchaseRequired)||void 0===m||m.call(e,{requiredCredits:t.get().requiredCredits,creditBalance:t.get().creditBalance}),o.emit("error",{message:"Purchase failed",error:n})}}else await w()}function k(){window.open("https://accounts.contentcredits.com/consumer/dashboard","_blank","noopener,noreferrer")}async function L(){var i,p,h;if(t.set({isLoading:!0}),e.headless||a.render("checking",{onLogin:w,onPurchase:C,onBuyMoreCredits:k}),l)s.requestAuthorization(e.apiKey,e.hostName);else{if(!r.has())return t.set({isLoading:!1,isLoaded:!0}),e.headless||(c.hide(),a.render("login",{onLogin:w,onPurchase:C,onBuyMoreCredits:k})),null===(i=e.onLoginRequired)||void 0===i||i.call(e),void o.emit("paywall:shown",{});try{const i=await n.checkAccess({apiKey:e.apiKey,postUrl:e.articleUrl,postName:e.pageTitle,hostName:e.hostName});t.set({isLoading:!1,isLoaded:!0,hasAccess:i.success,isLoggedIn:!0}),i.success?u(0,0):(e.headless||(c.hide(),a.render("purchase",{onLogin:w,onPurchase:C,onBuyMoreCredits:k})),null===(p=e.onPurchaseRequired)||void 0===p||p.call(e,{requiredCredits:t.get().requiredCredits,creditBalance:t.get().creditBalance}),o.emit("paywall:shown",{}))}catch(n){t.set({isLoading:!1,isLoaded:!0}),e.headless||(c.hide(),a.render("login",{onLogin:w,onPurchase:C,onBuyMoreCredits:k})),null===(h=e.onLoginRequired)||void 0===h||h.call(e),n instanceof d&&401===n.status||o.emit("error",{message:"Access check failed",error:n})}}}return{init:async function(){var n;v()&&t.set({isLoggedIn:!0}),l=await(n=e.extensionId,n&&"string"==typeof n?new Promise(e=>{let t=!1;function o(n){t||(t=!0,e(n))}if(!0===window.__CC_EXTENSION_LOADED)return void o(!0);const i=new Image;i.onload=()=>o(!0),i.onerror=()=>o(!1),i.src=`chrome-extension://${n}/icons/icon16.png`,setTimeout(()=>o(!1),2e3)}):Promise.resolve(!1)),t.set({isExtensionAvailable:l}),l&&(s.attach(),s.onAuthorizationResponse(n=>{var i,r,s,l,d,p,h;t.set({isLoggedIn:n.isAuthenticated,hasAccess:n.doesHaveAccess,isLoaded:!0,isLoading:!1,creditBalance:null!==(i=n.creditBalance)&&void 0!==i?i:null,requiredCredits:null!==(r=n.requiredCredits)&&void 0!==r?r:null}),n.isAuthenticated?n.doesHaveAccess?u(0,null!==(l=n.creditBalance)&&void 0!==l?l:0):(e.headless||(c.hide(),a.render("purchase",{onLogin:w,onPurchase:C,onBuyMoreCredits:k},{requiredCredits:n.requiredCredits,creditBalance:n.creditBalance})),null===(d=e.onPurchaseRequired)||void 0===d||d.call(e,{requiredCredits:null!==(p=n.requiredCredits)&&void 0!==p?p:null,creditBalance:null!==(h=n.creditBalance)&&void 0!==h?h:null}),o.emit("paywall:shown",{})):(e.headless||(c.hide(),a.render("login",{onLogin:w,onPurchase:C,onBuyMoreCredits:k})),null===(s=e.onLoginRequired)||void 0===s||s.call(e),o.emit("paywall:shown",{}))}),s.onPurchaseResponse(e=>{var n,i;t.set({isLoading:!1,isLoaded:!0,hasAccess:e.doesHaveAccess}),e.doesHaveAccess?u(null!==(n=e.creditsSpent)&&void 0!==n?n:0,null!==(i=e.creditBalance)&&void 0!==i?i:0):(a.render("purchase",{onLogin:w,onPurchase:C,onBuyMoreCredits:k}),o.emit("error",{message:"Purchase failed via extension"}))})),await L()},checkAccess:L,destroy:function(){s.detach(),e.headless||(a.destroy(),c.reveal())},login:w,purchase:C,buyMoreCredits:k}}const C="cc-widget-pos",k="cc-comments-host",L=["#6366f1","#ec4899","#8b5cf6","#14b8a6","#f59e0b","#ef4444"];function E(e,t,o,i){let c=null,a=null,s=null,l=[],d="TOP",u=null,p=null,b=null;function w(){if(c)return c;const{root:n}=function(e){let n=document.getElementById(e);n||(n=document.createElement("div"),n.id=e,n.style.cssText="position:fixed;top:0;left:0;width:0;height:0;pointer-events:none;z-index:2147483647;",document.body.appendChild(n));const t=n._ccShadow;if(t)return{host:n,root:t};const o=n.attachShadow({mode:"open"});return n._ccShadow=o,{host:n,root:o}}(k);var t,o;return c=n,m(c,`\n *, *::before, *::after { box-sizing: border-box; margin: 0; padding: 0; }\n\n /* ── Widget Button ───────────────────────────────────── */\n .cc-widget-btn {\n position: fixed;\n top: 50%;\n right: 0;\n transform: translateY(-50%);\n width: auto;\n height: 60px;\n background: ${t=e.theme.primaryColor};\n border-radius: 10px 0 0 10px;\n display: flex;\n align-items: center;\n gap: 8px;\n padding-left: 12px;\n padding-right: 6px;\n z-index: 2147483646;\n box-shadow: -2px 0 16px rgba(0,0,0,0.12);\n cursor: pointer;\n user-select: none;\n font-family: ${o=e.theme.fontFamily};\n transition: background 0.2s;\n pointer-events: all;\n }\n .cc-widget-btn:hover { filter: brightness(1.08); }\n\n .cc-widget-icon { color: #fff; display: flex; align-items: center; }\n .cc-widget-badge {\n background: #fff;\n color: ${t};\n border-radius: 12px;\n padding: 2px 7px;\n font-size: 12px;\n font-weight: 700;\n min-width: 20px;\n text-align: center;\n }\n .cc-widget-drag-handle {\n color: rgba(255,255,255,0.7);\n cursor: grab;\n display: flex;\n align-items: center;\n padding: 0 4px;\n }\n .cc-widget-drag-handle:active { cursor: grabbing; }\n\n /* ── Panel Overlay ───────────────────────────────────── */\n .cc-panel-backdrop {\n position: fixed;\n inset: 0;\n background: rgba(0,0,0,0.35);\n z-index: 2147483645;\n opacity: 0;\n transition: opacity 0.25s;\n pointer-events: all;\n }\n .cc-panel-backdrop.cc-visible { opacity: 1; }\n\n .cc-panel {\n position: fixed;\n top: 0; right: -500px;\n width: 460px;\n max-width: 95vw;\n height: 100%;\n background: #f9fafb;\n z-index: 2147483646;\n display: flex;\n flex-direction: column;\n box-shadow: -4px 0 32px rgba(0,0,0,0.12);\n transition: right 0.28s cubic-bezier(0.4, 0, 0.2, 1);\n font-family: ${o};\n pointer-events: all;\n }\n .cc-panel.cc-open { right: 0; }\n\n /* ── Panel Header ────────────────────────────────────── */\n .cc-panel-header {\n display: flex;\n align-items: center;\n gap: 10px;\n padding: 16px 20px;\n border-bottom: 1px solid #e5e7eb;\n background: #fff;\n flex-shrink: 0;\n }\n .cc-panel-title {\n font-size: 16px;\n font-weight: 700;\n color: #111827;\n flex: 1;\n }\n .cc-panel-count {\n font-size: 13px;\n color: #6b7280;\n font-weight: 400;\n }\n .cc-panel-close-btn {\n background: transparent;\n border: none;\n cursor: pointer;\n color: #6b7280;\n padding: 4px;\n display: flex;\n align-items: center;\n border-radius: 6px;\n transition: background 0.15s;\n }\n .cc-panel-close-btn:hover { background: #f3f4f6; }\n\n .cc-back-btn {\n background: transparent;\n border: none;\n cursor: pointer;\n color: #6b7280;\n padding: 4px;\n display: none;\n align-items: center;\n border-radius: 6px;\n transition: background 0.15s;\n }\n .cc-back-btn.cc-visible { display: flex; }\n .cc-back-btn:hover { background: #f3f4f6; }\n\n /* ── Sort Bar ────────────────────────────────────────── */\n .cc-sort-bar {\n display: flex;\n align-items: center;\n gap: 6px;\n padding: 10px 20px;\n border-bottom: 1px solid #f3f4f6;\n background: #fff;\n flex-shrink: 0;\n }\n .cc-sort-label { font-size: 12px; color: #9ca3af; font-weight: 500; }\n .cc-sort-btn {\n background: transparent;\n border: none;\n cursor: pointer;\n font-size: 12px;\n font-weight: 600;\n color: #6b7280;\n padding: 4px 8px;\n border-radius: 6px;\n font-family: ${o};\n transition: background 0.15s, color 0.15s;\n }\n .cc-sort-btn:hover { background: #f3f4f6; }\n .cc-sort-btn.cc-active { background: #111827; color: #fff; }\n\n /* ── Comments List ───────────────────────────────────── */\n .cc-comments-list {\n flex: 1;\n overflow-y: auto;\n overscroll-behavior: contain;\n }\n .cc-comments-list::-webkit-scrollbar { width: 4px; }\n .cc-comments-list::-webkit-scrollbar-thumb { background: #d1d5db; border-radius: 4px; }\n\n /* ── Comment Card ────────────────────────────────────── */\n .cc-comment-card {\n padding: 16px 20px;\n background: #fff;\n border-bottom: 1px solid #f3f4f6;\n }\n .cc-comment-card.cc-reply {\n padding-left: 36px;\n background: #fafafa;\n }\n\n .cc-comment-header {\n display: flex;\n align-items: flex-start;\n justify-content: space-between;\n margin-bottom: 8px;\n }\n .cc-comment-author-row { display: flex; align-items: center; gap: 10px; }\n\n .cc-avatar {\n width: 32px; height: 32px;\n border-radius: 50%;\n flex-shrink: 0;\n display: flex;\n align-items: center;\n justify-content: center;\n color: #fff;\n font-weight: 700;\n font-size: 12px;\n overflow: hidden;\n }\n .cc-avatar img { width: 100%; height: 100%; object-fit: cover; }\n\n .cc-author-name {\n font-size: 14px;\n font-weight: 700;\n color: #111827;\n }\n .cc-comment-time {\n font-size: 11px;\n color: #9ca3af;\n margin-top: 2px;\n }\n\n .cc-comment-body {\n font-size: 14px;\n color: #374151;\n line-height: 1.6;\n margin-bottom: 12px;\n word-break: break-word;\n white-space: pre-wrap;\n }\n\n .cc-comment-actions {\n display: flex;\n align-items: center;\n gap: 12px;\n }\n .cc-action-btn {\n display: inline-flex;\n align-items: center;\n gap: 5px;\n background: transparent;\n border: none;\n cursor: pointer;\n font-size: 12px;\n font-weight: 500;\n color: #6b7280;\n padding: 3px 6px;\n border-radius: 6px;\n font-family: ${o};\n transition: background 0.15s, color 0.15s;\n }\n .cc-action-btn:hover { background: #f3f4f6; }\n .cc-action-btn.cc-liked { color: #ef4444; }\n .cc-action-btn.cc-danger:hover { color: #ef4444; background: #fef2f2; }\n .cc-action-btn.cc-owner-actions { margin-left: auto; }\n\n /* ── Reply Subthread ─────────────────────────────────── */\n .cc-subthread-label {\n font-size: 11px;\n font-weight: 600;\n color: #94a3b8;\n text-transform: uppercase;\n letter-spacing: 0.05em;\n padding: 12px 20px 8px;\n background: #f9fafb;\n }\n\n /* ── Empty / Loading / Error ─────────────────────────── */\n .cc-empty-state, .cc-loading-state, .cc-error-state {\n text-align: center;\n padding: 60px 20px;\n color: #9ca3af;\n }\n .cc-empty-state p, .cc-loading-state p, .cc-error-state p {\n font-size: 14px;\n font-weight: 500;\n color: #9ca3af;\n margin-bottom: 6px;\n }\n .cc-empty-state span, .cc-loading-state span, .cc-error-state span {\n font-size: 13px;\n color: #d1d5db;\n }\n .cc-error-state .cc-retry-btn {\n margin-top: 16px;\n padding: 8px 16px;\n background: #111827;\n color: #fff;\n border: none;\n border-radius: 6px;\n font-size: 13px;\n font-weight: 500;\n cursor: pointer;\n font-family: ${o};\n }\n .cc-error-icon { color: #ef4444; margin-bottom: 12px; }\n\n .cc-spinner-lg {\n width: 28px; height: 28px;\n border: 2px solid #e5e7eb;\n border-top-color: ${t};\n border-radius: 50%;\n animation: cc-spin 0.7s linear infinite;\n margin: 0 auto 12px;\n }\n @keyframes cc-spin { to { transform: rotate(360deg); } }\n\n /* ── Compose Box ─────────────────────────────────────── */\n .cc-compose {\n border-top: 1px solid #e5e7eb;\n padding: 12px 20px;\n background: #fff;\n flex-shrink: 0;\n position: relative;\n }\n\n .cc-compose-textarea {\n width: 100%;\n min-height: 72px;\n max-height: 180px;\n border: 1.5px solid #d1d5db;\n border-radius: 8px;\n padding: 10px 12px;\n font-size: 14px;\n font-family: ${o};\n color: #111827;\n resize: vertical;\n outline: none;\n background: #fff;\n transition: border-color 0.15s;\n line-height: 1.5;\n }\n .cc-compose-textarea:focus { border-color: ${t}; }\n .cc-compose-textarea::placeholder { color: #9ca3af; }\n\n .cc-compose-actions {\n display: flex;\n justify-content: space-between;\n align-items: center;\n margin-top: 8px;\n gap: 8px;\n }\n .cc-compose-cancel {\n background: transparent;\n border: none;\n cursor: pointer;\n font-size: 13px;\n color: #6b7280;\n font-family: ${o};\n padding: 6px;\n display: none;\n }\n .cc-compose-cancel.cc-visible { display: block; }\n .cc-compose-submit {\n display: inline-flex;\n align-items: center;\n gap: 6px;\n height: 36px;\n padding: 0 16px;\n background: ${t};\n color: #fff;\n border: none;\n border-radius: 7px;\n font-size: 13px;\n font-weight: 600;\n cursor: pointer;\n font-family: ${o};\n margin-left: auto;\n transition: opacity 0.15s;\n }\n .cc-compose-submit:disabled { opacity: 0.55; cursor: not-allowed; }\n\n .cc-spinner-sm {\n width: 14px; height: 14px;\n border: 2px solid rgba(255,255,255,0.4);\n border-top-color: #fff;\n border-radius: 50%;\n animation: cc-spin 0.7s linear infinite;\n }\n\n /* ── Login Overlay inside compose ────────────────────── */\n .cc-login-overlay {\n position: absolute;\n inset: 0;\n background: rgba(255,255,255,0.95);\n display: flex;\n flex-direction: column;\n align-items: center;\n justify-content: center;\n gap: 10px;\n padding: 16px;\n border-top: 1px solid #e5e7eb;\n }\n .cc-login-overlay p {\n font-size: 14px;\n color: #6b7280;\n text-align: center;\n }\n .cc-login-overlay-btn {\n height: 40px;\n padding: 0 20px;\n background: ${t};\n color: #fff;\n border: none;\n border-radius: 8px;\n font-size: 14px;\n font-weight: 600;\n cursor: pointer;\n font-family: ${o};\n }\n `),c}function C(){const e=r.get();a=e?function(e){var t,o;const i=n(e);return i&&null!==(o=null!==(t=i.id)&&void 0!==t?t:i._id)&&void 0!==o?o:null}(e):null}async function E(){const n=`https://accounts.contentcredits.com/authenticate/extension?redirect=${encodeURIComponent(e.articleUrl)}`;y()?window.location.href=n:await x(n)&&(C(),_(),N())}async function N(){var n;const o=w(),i=o.getElementById("cc-comments-list");if(i){!function(e){e.innerHTML="";const n=g("div");n.className="cc-loading-state";const t=g("div");t.className="cc-spinner-lg",n.appendChild(t),n.appendChild(g("p","Loading comments…")),e.appendChild(n)}(i);try{const c=await t.ensureThread({pageUrl:e.articleUrl,hostname:e.hostName});if(!c._id)return void I(i,"Comments are not available for this page.");s=c._id;const r=await t.getComments({pageUrl:e.articleUrl,sortBy:d});l=null!==(n=r.comments)&&void 0!==n?n:[],r.thread&&(s=r.thread._id);const a=o.getElementById("cc-header-count");a&&f(a,String(l.length)),P(i)}catch(e){I(i,"Unable to reach the server. Check your connection.")}}}function B(e){const n=new Map,t=[];return e.forEach(e=>n.set(e._id,Object.assign(Object.assign({},e),{replies:[]}))),e.forEach(e=>{const o=n.get(e._id);if(e.parentCommentId){const t=n.get(e.parentCommentId);t&&!t.parentCommentId&&t.replies.push(o)}else t.push(o)}),t}function I(e,n){e.innerHTML="";const t=g("div");t.className="cc-error-state";const o=g("div");o.className="cc-error-icon",o.innerHTML='<svg width="40" height="40" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="1.5"><circle cx="12" cy="12" r="10"/><line x1="12" y1="8" x2="12" y2="12"/><line x1="12" y1="16" x2="12.01" y2="16"/></svg>',t.appendChild(o),t.appendChild(g("p",n));const i=g("button","Try Again");i.className="cc-retry-btn",i.addEventListener("click",()=>{N()}),t.appendChild(i),e.appendChild(t)}function P(e){e.innerHTML="";const n=w(),t=n.getElementById("cc-back-btn"),o=n.getElementById("cc-panel-title");if(u?(null==t||t.classList.add("cc-visible"),o&&f(o,"Replies")):(null==t||t.classList.remove("cc-visible"),o&&f(o,"Comments")),u)!function(e,n){var t,o,i,c,r;const a=B(l).find(e=>e._id===n);if(!a)return;e.appendChild(T(a,!1));const s=g("div",`${null!==(o=null===(t=a.replies)||void 0===t?void 0:t.length)&&void 0!==o?o:0} ${1===(null!==(c=null===(i=a.replies)||void 0===i?void 0:i.length)&&void 0!==c?c:0)?"REPLY":"REPLIES"}`);if(s.className="cc-subthread-label",e.appendChild(s),null===(r=a.replies)||void 0===r?void 0:r.length)a.replies.forEach(n=>e.appendChild(T(n,!0)));else{const n=g("div");n.className="cc-empty-state",n.style.paddingTop="20px",n.appendChild(g("p","No replies yet")),e.appendChild(n)}}(e,u);else{if(0===l.length){const n=g("div");n.className="cc-empty-state",n.appendChild(g("p","No comments yet"));const t=g("span","Be the first to share your thoughts");return n.appendChild(t),void e.appendChild(n)}(function(e){const n=[...e];return"NEWEST"===d?n.sort((e,n)=>new Date(n.createdAt).getTime()-new Date(e.createdAt).getTime()):n.sort((e,n)=>{var t,o,i,c,r,a;return(null!==(o=null===(t=n.replies)||void 0===t?void 0:t.length)&&void 0!==o?o:0)-(null!==(c=null===(i=e.replies)||void 0===i?void 0:i.length)&&void 0!==c?c:0)||(null!==(r=n.likeCount)&&void 0!==r?r:0)-(null!==(a=e.likeCount)&&void 0!==a?a:0)}),n.forEach(e=>{var n;(null===(n=e.replies)||void 0===n?void 0:n.length)&&e.replies.sort((e,n)=>new Date(n.createdAt).getTime()-new Date(e.createdAt).getTime())}),n})(B(l)).forEach(n=>e.appendChild(T(n,!1)))}}function T(n,t){var o,i;const c=!(!a||n.authorId!==a),r=n.author,s=r?`${r.firstName} ${r.lastName}`.trim():"Anonymous",l=L[(s||"A").charCodeAt(0)%L.length],d=r?function(e,n){var t,o,i,c;return`${null!==(o=null===(t=null==e?void 0:e[0])||void 0===t?void 0:t.toUpperCase())&&void 0!==o?o:""}${null!==(c=null===(i=null==n?void 0:n[0])||void 0===i?void 0:i.toUpperCase())&&void 0!==c?c:""}`||"?"}(r.firstName,r.lastName):"?",u=g("div");u.className="cc-comment-card"+(t?" cc-reply":""),u.dataset.commentId=n._id;const p=g("div");p.className="cc-comment-header";const h=g("div");h.className="cc-comment-author-row";const m=g("div");if(m.className="cc-avatar",m.style.background=l,null==r?void 0:r.profilePicture){const n=function(e){try{const n=new URL(e);return"http:"!==n.protocol&&"https:"!==n.protocol?null:n.toString()}catch(e){return null}}(r.profilePicture.startsWith("http")?r.profilePicture:`${e.apiBaseUrl}${r.profilePicture}`);if(n){const e=g("img");e.setAttribute("src",n),e.setAttribute("alt",s),e.addEventListener("error",()=>{e.remove(),f(m,d)}),m.appendChild(e)}else f(m,d)}else f(m,d);const b=g("div"),y=g("div",s);y.className="cc-author-name";const v=g("div",function(e){try{const n=new Date(e);return`${n.toLocaleTimeString("en-US",{hour:"numeric",minute:"2-digit"})} · ${n.toLocaleDateString("en-US",{month:"short",day:"numeric",year:"numeric"})}`}catch(e){return""}}(n.createdAt));v.className="cc-comment-time",b.appendChild(y),b.appendChild(v),h.appendChild(m),h.appendChild(b),p.appendChild(h),u.appendChild(p);const x=g("div");x.className="cc-comment-body",x.appendChild(function(e){const n=document.createDocumentFragment(),t=e.split("\n");return t.forEach((e,o)=>{n.appendChild(document.createTextNode(e)),o<t.length-1&&n.appendChild(document.createElement("br"))}),n}(n.content)),u.appendChild(x);const w=g("div");if(w.className="cc-comment-actions",!t){const e=g("button");e.className="cc-action-btn",e.dataset.commentId=n._id,e.dataset.action="reply",e.innerHTML='<svg width="14" height="14" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" style="transform:scaleX(-1)"><path d="M21 15a2 2 0 0 1-2 2H7l-4 4V5a2 2 0 0 1 2-2h14a2 2 0 0 1 2 2z"/></svg>',e.appendChild(document.createTextNode(` ${(null===(o=n.replies)||void 0===o?void 0:o.length)||"Reply"}`)),w.appendChild(e)}const C=g("button");if(C.className="cc-action-btn"+(n.hasLiked?" cc-liked":""),C.dataset.commentId=n._id,C.dataset.action="like",C.innerHTML=`<svg width="14" height="14" viewBox="0 0 24 24" fill="${n.hasLiked?"currentColor":"none"}" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><path d="M20.84 4.61a5.5 5.5 0 0 0-7.78 0L12 5.67l-1.06-1.06a5.5 5.5 0 0 0-7.78 7.78l1.06 1.06L12 21.23l7.78-7.78 1.06-1.06a5.5 5.5 0 0 0 0-7.78z"/></svg>`,C.appendChild(document.createTextNode(` ${null!==(i=n.likeCount)&&void 0!==i?i:0}`)),w.appendChild(C),c){const e=g("div");e.className="cc-action-btn cc-owner-actions",e.style.cssText="margin-left:auto;display:flex;gap:4px;background:transparent;border:none;padding:0;";const t=g("button","Edit");t.className="cc-action-btn",t.dataset.commentId=n._id,t.dataset.action="edit";const o=g("button","Delete");o.className="cc-action-btn cc-danger",o.dataset.commentId=n._id,o.dataset.action="delete",e.appendChild(t),e.appendChild(o),w.appendChild(e)}return u.appendChild(w),u}function A(){const e=g("div");e.className="cc-login-overlay",e.id="cc-login-overlay",e.appendChild(g("p","Sign in to join the conversation"));const n=g("button","Login with Content Credits");return n.className="cc-login-overlay-btn",n.addEventListener("click",()=>{E()}),e.appendChild(n),e}function S(e){const n=e.target.closest("[data-action]");if(!n)return;const i=n.dataset.action,a=n.dataset.commentId;if(a)switch(i){case"reply":!function(e){if(u){p=e,b=null;const n=null==c?void 0:c.getElementById("cc-compose-textarea");n&&(n.placeholder="Write a reply…",n.focus()),M()}else{u=e;const n=null==c?void 0:c.getElementById("cc-comments-list");n&&P(n)}}(a);break;case"like":!async function(e){var n,i,a,s,d;if(!r.has())return void E();const u=l.find(n=>n._id===e);if(!u)return;const p=u.hasLiked;u.hasLiked=!p,u.likeCount=(null!==(n=u.likeCount)&&void 0!==n?n:0)+(u.hasLiked?1:-1);const h=null==c?void 0:c.getElementById("cc-comments-list");h&&P(h);try{const n=await t.toggleLike(e);n.success?("boolean"==typeof(null===(i=n.data)||void 0===i?void 0:i.hasLiked)&&(u.hasLiked=n.data.hasLiked),"number"==typeof(null===(a=n.data)||void 0===a?void 0:a.likeCount)&&(u.likeCount=n.data.likeCount),o.emit("comment:liked",{commentId:e,hasLiked:u.hasLiked})):(u.hasLiked=p,u.likeCount=(null!==(s=u.likeCount)&&void 0!==s?s:0)+(p?1:-1)),h&&P(h)}catch(e){u.hasLiked=p,u.likeCount=(null!==(d=u.likeCount)&&void 0!==d?d:0)+(p?1:-1),h&&P(h)}}(a);break;case"edit":!function(e){const n=l.find(n=>n._id===e);if(!n)return;b=e,p=null;const t=null==c?void 0:c.getElementById("cc-compose-textarea");t&&(t.value=n.content,t.placeholder="Edit your comment…",t.focus());const o=null==c?void 0:c.getElementById("cc-compose-submit");o&&f(o,"Update"),M()}(a);break;case"delete":!async function(e){if(confirm("Delete this comment?"))try{(await t.deleteComment(e))._id&&(o.emit("comment:deleted",{commentId:e}),N())}catch(e){}}(a)}}function M(){const e=null==c?void 0:c.getElementById("cc-compose-cancel");null==e||e.classList.add("cc-visible")}function $(){const e=null==c?void 0:c.getElementById("cc-compose-cancel");null==e||e.classList.remove("cc-visible")}function U(){b=null,p=null;const e=null==c?void 0:c.getElementById("cc-compose-textarea");e&&(e.value="",e.placeholder="Write a comment…");const n=null==c?void 0:c.getElementById("cc-compose-submit");n&&f(n,"Post"),$()}function _(){const e=w(),n=e.getElementById("cc-login-overlay");if(r.has()&&n)n.remove();else if(!r.has()&&!n){const n=e.getElementById("cc-compose");null==n||n.appendChild(A())}}function q(){const e=c;if(!e)return;const n=e.getElementById("cc-panel-backdrop"),t=e.getElementById("cc-comments-panel");null==n||n.classList.remove("cc-visible"),null==t||t.classList.remove("cc-open"),setTimeout(()=>{null==n||n.remove(),null==t||t.remove(),i()},280)}return{openPanel:function(){const e=w();v()&&C(),C();let n=e.getElementById("cc-panel-backdrop");if(!n){const i=g("div");i.className="cc-panel-backdrop",i.id="cc-panel-backdrop",i.addEventListener("click",q),e.appendChild(i),e.appendChild(function(){const e=g("div");e.className="cc-panel",e.id="cc-comments-panel";const n=g("div");n.className="cc-panel-header";const i=g("button");i.className="cc-back-btn",i.id="cc-back-btn",i.setAttribute("aria-label","Back"),i.innerHTML='<svg width="18" height="18" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2.5" stroke-linecap="round" stroke-linejoin="round"><path d="M15 18l-6-6 6-6"/></svg>',i.addEventListener("click",()=>{u=null,p=null;const e=null==c?void 0:c.getElementById("cc-comments-list");e&&P(e)});const a=g("div");a.style.cssText="flex:1;display:flex;align-items:center;gap:6px;";const l=g("span","Comments");l.className="cc-panel-title",l.id="cc-panel-title";const h=g("span","");h.className="cc-panel-count",h.id="cc-header-count",a.appendChild(l),a.appendChild(h);const m=g("button");m.className="cc-panel-close-btn",m.setAttribute("aria-label","Close comments"),m.innerHTML='<svg width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2.5" stroke-linecap="round" stroke-linejoin="round"><line x1="18" y1="6" x2="6" y2="18"/><line x1="6" y1="6" x2="18" y2="18"/></svg>',m.addEventListener("click",q),n.appendChild(i),n.appendChild(a),n.appendChild(m),e.appendChild(n);const y=g("div");y.className="cc-sort-bar";const v=g("span","Sort:");v.className="cc-sort-label",y.appendChild(v),["TOP","NEWEST"].forEach(e=>{const n=g("button",e);n.className="cc-sort-btn"+(d===e?" cc-active":""),n.dataset.sort=e,n.addEventListener("click",()=>{d!==e&&(d=e,y.querySelectorAll(".cc-sort-btn").forEach(e=>e.classList.remove("cc-active")),n.classList.add("cc-active"),N())}),y.appendChild(n)}),e.appendChild(y);const x=g("div");return x.className="cc-comments-list",x.id="cc-comments-list",x.addEventListener("click",S),e.appendChild(x),e.appendChild(function(){const e=g("div");e.className="cc-compose",e.id="cc-compose";const n=g("textarea");n.className="cc-compose-textarea",n.id="cc-compose-textarea",n.setAttribute("placeholder","Write a comment…"),n.setAttribute("rows","3"),e.appendChild(n);const i=g("div");i.className="cc-compose-actions";const a=g("button","Cancel");a.className="cc-compose-cancel",a.id="cc-compose-cancel",a.addEventListener("click",U),i.appendChild(a);const l=g("button","Post");return l.className="cc-compose-submit",l.id="cc-compose-submit",l.addEventListener("click",()=>{!async function(){const e=null==c?void 0:c.getElementById("cc-compose-textarea");if(!e)return;const n=e.value.trim();if(!n)return;if(!r.has())return void E();if(!s)return;const i=null==c?void 0:c.getElementById("cc-compose-submit");i&&(i.disabled=!0,f(i,"Posting…"));try{let c;b?c=await t.editComment(b,n):(c=await t.postComment({threadId:s,content:n,parentCommentId:null!=p?p:u}),o.emit("comment:posted",{comment:c})),c._id&&(e.value="",b=null,p=null,e.placeholder=u?"Write a reply…":"Write a comment…",$(),i&&f(i,"Post"),N())}catch(e){}finally{i&&(i.disabled=!1)}}()}),i.appendChild(l),e.appendChild(i),r.has()||e.appendChild(A()),e}()),e}()),n=i}const i=n;requestAnimationFrame(()=>{var n;i.classList.add("cc-visible"),null===(n=e.getElementById("cc-comments-panel"))||void 0===n||n.classList.add("cc-open")}),_(),N()},closePanel:q,destroy:function(){h(k),c=null}}}class N{constructor(e){var n;this.config=e,this.state=function(){let e={isLoading:!1,isExtensionAvailable:!1,isLoggedIn:!1,hasAccess:!1,isLoaded:!1,user:null,creditBalance:null,requiredCredits:null};const n=[];function t(){return Object.assign({},e)}function o(o){e=Object.assign(Object.assign({},e),o),n.forEach(e=>e(t()))}return{get:t,set:o,subscribe:function(e){return n.push(e),()=>{const t=n.indexOf(e);t>=0&&n.splice(t,1)}},reset:function(){e={isLoading:!1,isExtensionAvailable:!1,isLoggedIn:!1,hasAccess:!1,isLoaded:!1,user:null,creditBalance:null,requiredCredits:null},n.forEach(e=>e(t()))},setUser:function(e){var n;o({user:e,isLoggedIn:null!==e,creditBalance:null!==(n=null==e?void 0:e.credits)&&void 0!==n?n:null})}}}(),this.emitter=function(){const e={};function n(n,t){const o=e[n];if(!o)return;const i=o.indexOf(t);i>=0&&o.splice(i,1)}return{on:function(t,o){return e[t]||(e[t]=[]),e[t].push(o),()=>n(t,o)},off:n,emit:function(n,t){const o=e[n];o&&o.forEach(e=>{try{e(t)}catch(e){console.warn(`[ContentCredits] Error in "${n}" handler:`,e)}});try{document.dispatchEvent(new CustomEvent(`contentcredits:${n}`,{detail:t,bubbles:!1}))}catch(e){}},removeAll:function(){Object.keys(e).forEach(n=>{delete e[n]})}}}(),this.paywallModule=null,this.commentsModule=null,this.client=function(e,n){async function t(o,i,c,u=0,p=!1){const h=`${e}${i}`,m=c?JSON.stringify(c):void 0,f=function(e,n,t){return`${e}:${n}:${null!=t?t:""}`}(o,h,m),g=l.get(f);if(g)return g;const b=new AbortController,y=setTimeout(()=>b.abort(),12e3),v={"Content-Type":"application/json"},x=r.get();x&&(v.Authorization=`Bearer ${x}`);const w=fetch(h,{method:o,headers:v,body:m,signal:b.signal,credentials:"omit"}).then(async h=>{var m;if(clearTimeout(y),401===h.status){if(!p&&await s(e))return l.delete(f),t(o,i,c,u,!0);throw r.clear(),a.clear(),n.emit("auth:logout",{}),new d(401,"Unauthorized — session expired")}let g;try{g=await h.json()}catch(e){throw new d(h.status,"Invalid JSON response from server")}if(!h.ok){const e=null!==(m=null==g?void 0:g.message)&&void 0!==m?m:`HTTP ${h.status}`;throw new d(h.status,e,g)}return g}).catch(async e=>{clearTimeout(y);const n=e instanceof TypeError&&e.message.includes("fetch"),r=e instanceof d&&((a=e.status)>=500||429===a);var a;if((n||r)&&u<3)return l.delete(f),await async function(e){return new Promise(n=>setTimeout(n,e))}(400*Math.pow(2,u)),t(o,i,c,u+1);throw e}).finally(()=>{l.delete(f)});return l.set(f,w),w}return{get:e=>t("GET",e),post:(e,n)=>t("POST",e,n),put:(e,n)=>t("PUT",e,n),delete:e=>t("DELETE",e)}}(e.apiBaseUrl,this.emitter),this.creditsApi=(n=this.client,{checkAccess:e=>n.post("/credits/check-article-access",{apiKey:e.apiKey,postUrl:e.postUrl,postName:e.postName,hostName:e.hostName}),purchaseArticle:e=>n.post("/credits/purchase-article",{apiKey:e.apiKey,postUrl:e.postUrl,postName:e.postName,hostName:e.hostName})}),this.commentsApi=function(e){return{ensureThread:n=>e.post("/comments/threads/ensure",{pageUrl:n.pageUrl,hostname:n.hostname}),getComments(n){const t=encodeURIComponent(n.pageUrl);return e.get(`/comments/comments/by-url?url=${t}&sortBy=${n.sortBy}`)},postComment:n=>e.post("/comments/comments",Object.assign({threadId:n.threadId,content:n.content},n.parentCommentId?{parentCommentId:n.parentCommentId}:{})),editComment:(n,t)=>e.put(`/comments/comments/${n}`,{content:t}),deleteComment:n=>e.delete(`/comments/comments/${n}`),toggleLike:n=>e.post(`/comments/comments/${n}/toggle-like`,{})}}(this.client)}static init(e){const n=function(e){var n,t,o,i,c,r,a,s,l,d,u;if(!e.apiKey||"string"!=typeof e.apiKey||""===e.apiKey.trim())throw new Error("[ContentCredits] apiKey is required. Get yours from the Content Credits admin panel.");const p=null!==(n=e.articleUrl)&&void 0!==n?n:window.location.href;let h;try{h=new URL(p).hostname}catch(e){throw new Error(`[ContentCredits] Invalid articleUrl: "${p}"`)}return{apiKey:e.apiKey.trim(),articleUrl:p,hostName:h,pageTitle:document.title,contentSelector:null!==(t=e.contentSelector)&&void 0!==t?t:".cc-premium-content",teaserParagraphs:null!==(o=e.teaserParagraphs)&&void 0!==o?o:2,enableComments:null===(i=e.enableComments)||void 0===i||i,extensionId:null!==(c=e.extensionId)&&void 0!==c?c:"ljehdpabbhgccmanhjdfacjnaigpgcml",debug:null!==(r=e.debug)&&void 0!==r&&r,headless:null!==(a=e.headless)&&void 0!==a&&a,apiBaseUrl:"https://api.contentcredits.com",accountsUrl:"https://accounts.contentcredits.com",paywallTemplate:e.paywallTemplate,onAccessGranted:e.onAccessGranted,onStateChange:e.onStateChange,onReady:e.onReady,onLoginRequired:e.onLoginRequired,onPurchaseRequired:e.onPurchaseRequired,onInsufficientCredits:e.onInsufficientCredits,onPurchased:e.onPurchased,onUserLogin:e.onUserLogin,onUserLogout:e.onUserLogout,onError:e.onError,theme:{primaryColor:null!==(l=null===(s=e.theme)||void 0===s?void 0:s.primaryColor)&&void 0!==l?l:"#44C678",fontFamily:null!==(u=null===(d=e.theme)||void 0===d?void 0:d.fontFamily)&&void 0!==u?u:"-apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif"}}}(e),t=new N(n);return t._start(),t}async _start(){v(),this.config.onStateChange&&this.state.subscribe(this.config.onStateChange),this.config.onReady&&this.emitter.on("ready",({state:e})=>this.config.onReady(e)),this.config.onPurchased&&this.emitter.on("article:purchased",e=>this.config.onPurchased(e)),this.config.onUserLogin&&this.emitter.on("auth:login",({user:e})=>this.config.onUserLogin(e)),this.config.onUserLogout&&this.emitter.on("auth:logout",()=>this.config.onUserLogout()),this.config.onError&&this.emitter.on("error",e=>this.config.onError(e));const e=p({selector:this.config.contentSelector,teaserParagraphs:this.config.teaserParagraphs});this.config.headless||e.hide(),r.has()||await s(this.config.apiBaseUrl),this.paywallModule=w(this.config,this.creditsApi,this.state,this.emitter,e),this.config.enableComments&&(this.commentsModule=function(e,n,t){const o=E(e,n,t,()=>i.show()),i=function(e,n){let t=null,o=null;return{mount:function(){if(document.getElementById("cc-comment-widget"))return;let i=50;try{const e=localStorage.getItem(C);e&&(i=JSON.parse(e))}catch(e){}t=document.createElement("div"),t.id="cc-comment-widget",t.style.cssText=`\n position:fixed;top:${i}%;right:0;transform:translateY(-50%);\n height:60px;background:${e};border-radius:10px 0 0 10px;\n display:flex;align-items:center;gap:8px;padding:0 8px 0 12px;\n z-index:2147483646;box-shadow:-2px 0 16px rgba(0,0,0,.12);\n cursor:pointer;user-select:none;\n font-family:-apple-system,BlinkMacSystemFont,'Segoe UI',Roboto,sans-serif;\n transition:filter .2s;\n `,t.setAttribute("role","button"),t.setAttribute("aria-label","Open comments"),t.tabIndex=0;const c=document.createElement("div");c.style.cssText="color:#fff;display:flex;align-items:center;flex-shrink:0;",c.innerHTML='<svg width="22" height="22" viewBox="0 0 24 24" fill="currentColor"><path d="M21 15a2 2 0 0 1-2 2H7l-4 4V5a2 2 0 0 1 2-2h14a2 2 0 0 1 2 2z"/></svg>',o=document.createElement("span"),o.style.cssText=`\n background:#fff;color:${e};border-radius:12px;\n padding:2px 7px;font-size:12px;font-weight:700;min-width:20px;\n text-align:center;display:none;\n `;const r=document.createElement("div");r.style.cssText="color:rgba(255,255,255,.65);cursor:grab;display:flex;align-items:center;padding:0 2px;flex-shrink:0;",r.innerHTML='<svg width="8" height="22" viewBox="0 0 8 22" fill="none"><circle cx="4" cy="4" r="2" fill="currentColor"/><circle cx="4" cy="11" r="2" fill="currentColor"/><circle cx="4" cy="18" r="2" fill="currentColor"/></svg>',c.addEventListener("click",n),o.addEventListener("click",n);let a=!1,s=0,l=0;function d(e){a=!0,s=e,l=t.getBoundingClientRect().top,r.style.cursor="grabbing"}function u(e){if(!a||!t)return;const n=e-s,o=Math.max(0,Math.min(window.innerHeight-60,l+n))/window.innerHeight*100;t.style.top=`${o}%`}function p(){if(!a||!t)return;a=!1,r.style.cursor="grab";const e=t.getBoundingClientRect().top/window.innerHeight*100;try{localStorage.setItem(C,JSON.stringify(e))}catch(e){}}r.addEventListener("mousedown",e=>{e.preventDefault(),e.stopPropagation(),d(e.clientY)}),r.addEventListener("touchstart",e=>{e.preventDefault(),d(e.touches[0].clientY)},{passive:!1}),document.addEventListener("mousemove",e=>u(e.clientY)),document.addEventListener("touchmove",e=>u(e.touches[0].clientY),{passive:!0}),document.addEventListener("mouseup",p),document.addEventListener("touchend",p),t.addEventListener("keydown",e=>{"Enter"!==e.key&&" "!==e.key||n()}),t.appendChild(c),t.appendChild(o),t.appendChild(r),document.body.appendChild(t)},setCount:function(e){o&&(e>0?(o.textContent=e>99?"99+":String(e),o.style.display="inline-block"):o.style.display="none")},show:function(){t&&(t.style.display="flex")},hide:function(){t&&(t.style.display="none")},destroy:function(){null==t||t.remove(),t=null,o=null}}}(e.theme.primaryColor,()=>{i.hide(),o.openPanel()});return{init:function(){i.mount()},open:function(){i.hide(),o.openPanel()},close:function(){o.closePanel()},destroy:function(){o.destroy(),i.destroy()}}}(this.config,this.commentsApi,this.emitter),this.commentsModule.init()),await this.paywallModule.init(),this.emitter.emit("ready",{state:this.state.get()})}subscribe(e){return this.state.subscribe(e)}async login(){var e;await(null===(e=this.paywallModule)||void 0===e?void 0:e.login())}async purchase(){var e;await(null===(e=this.paywallModule)||void 0===e?void 0:e.purchase())}buyMoreCredits(){var e;null===(e=this.paywallModule)||void 0===e||e.buyMoreCredits()}on(e,n){return this.emitter.on(e,n)}off(e,n){this.emitter.off(e,n)}getState(){return this.state.get()}async checkAccess(){var e;await(null===(e=this.paywallModule)||void 0===e?void 0:e.checkAccess())}openComments(){var e;null===(e=this.commentsModule)||void 0===e||e.open()}closeComments(){var e;null===(e=this.commentsModule)||void 0===e||e.close()}isLoggedIn(){return r.has()}getToken(){return r.get()}async logout(){const e=a.get();if(e)try{await fetch(`${this.config.apiBaseUrl}/auth/log-out`,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({refreshToken:e}),credentials:"omit"})}catch(e){}r.clear(),a.clear(),this.state.reset(),this.emitter.emit("auth:logout",{})}destroy(){var e,n;null===(e=this.paywallModule)||void 0===e||e.destroy(),null===(n=this.commentsModule)||void 0===n||n.destroy(),this.emitter.removeAll(),this.state.reset()}static get version(){return"2.9.0"}}!function(){var e,n,t;const o=null!==(e=document.currentScript)&&void 0!==e?e:document.querySelector("script[data-cc-api-key], script[data-api-key]");if(!o)return;const i=o.dataset,c=null!==(n=i.ccApiKey)&&void 0!==n?n:i.apiKey;if(!c)return;const r={apiKey:c,contentSelector:null!==(t=i.ccContentSelector)&&void 0!==t?t:i.contentSelector,teaserParagraphs:i.ccTeaserParagraphs?parseInt(i.ccTeaserParagraphs,10):void 0,enableComments:"false"!==i.ccEnableComments,extensionId:i.ccExtensionId,debug:"true"===i.ccDebug};"loading"===document.readyState?document.addEventListener("DOMContentLoaded",()=>N.init(r)):N.init(r)}(),e.ContentCredits=N});
1
+ !function(e,n){"object"==typeof exports&&"undefined"!=typeof module?n(exports):"function"==typeof define&&define.amd?define(["exports"],n):n((e="undefined"!=typeof globalThis?globalThis:e||self).ContentCreditsSDK={})}(this,function(e){"use strict";function n(e){try{const n=e.split(".");if(3!==n.length)return null;const t=n[1].replace(/-/g,"+").replace(/_/g,"/"),o=t.padEnd(t.length+(4-t.length%4)%4,"="),i=decodeURIComponent(atob(o).split("").map(e=>"%"+("00"+e.charCodeAt(0).toString(16)).slice(-2)).join(""));return JSON.parse(i)}catch(e){return null}}function t(e){const t=n(e);return!t||"number"!=typeof t.exp||Date.now()/1e3>t.exp}const o="cc_sdk_token",i="cc_rt";let c=null;const r={set(e){c=e;try{sessionStorage.setItem(o,e)}catch(e){}},get(){if(c)return t(c)?(this.clear(),null):c;try{const e=sessionStorage.getItem(o);if(e)return t(e)?(this.clear(),null):(c=e,e)}catch(e){}return null},clear(){c=null;try{sessionStorage.removeItem(o)}catch(e){}},has(){return null!==this.get()}},a={set(e){try{localStorage.setItem(i,e)}catch(e){}},get(){try{return localStorage.getItem(i)}catch(e){return null}},clear(){try{localStorage.removeItem(i)}catch(e){}},has(){return null!==this.get()}};async function s(e){const n=a.get();if(!n)return!1;const t=new AbortController,o=setTimeout(()=>t.abort(),8e3);try{const i=await fetch(`${e}/auth/refresh`,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({refreshToken:n}),credentials:"omit",signal:t.signal});if(clearTimeout(o),!i.ok)return a.clear(),!1;const c=await i.json();return(null==c?void 0:c.accessToken)&&(null==c?void 0:c.refreshToken)?(r.set(c.accessToken),a.set(c.refreshToken),!0):(a.clear(),!1)}catch(e){return clearTimeout(o),!1}}const l=new Map;class d extends Error{constructor(e,n,t){super(n),this.status=e,this.data=t,this.name="ApiError"}}const u="data-cc-gated";function p(e){let n=!1,t=null,o=[];return{hide:function(){if(t=document.querySelector(e.selector),!t)return!1;if(t.hasAttribute(u))return!0;const i=Array.from(t.querySelectorAll("p, h2, h3, h4, blockquote, ul, ol"));if(i.length>e.teaserParagraphs){const n=i[e.teaserParagraphs],c=Array.from(t.childNodes),r=c.findIndex(e=>e===n||t.contains(e)&&e.compareDocumentPosition(n)&Node.DOCUMENT_POSITION_FOLLOWING);o=c.slice(r<0?e.teaserParagraphs:r),o.forEach(e=>{var n,t,o,i;(e instanceof HTMLElement||e instanceof Text)&&(null===(t=null===(n=e.style)||void 0===n?void 0:n.setProperty)||void 0===t||t.call(n,"display","none"),null===(i=(o=e).setAttribute)||void 0===i||i.call(o,"data-cc-hidden","true"))})}else o=Array.from(t.childNodes),o.forEach(e=>{e instanceof HTMLElement&&(e.style.display="none")});if(t.setAttribute(u,"true"),n=!0,!t.querySelector("[data-cc-fade]")){const e=t.style.position;e&&"static"!==e||(t.style.position="relative");const n=document.createElement("div");n.setAttribute("data-cc-fade","true"),n.style.cssText="position:absolute;bottom:0;left:0;width:100%;height:160px;background:linear-gradient(to bottom,transparent 0%,var(--cc-bg,#fff) 100%);pointer-events:none;z-index:1;",t.appendChild(n)}return!0},reveal:function(){if(!n)return;o.forEach(e=>{e instanceof HTMLElement&&(e.style.removeProperty("display"),e.removeAttribute("data-cc-hidden"))});const e=null==t?void 0:t.querySelector("[data-cc-fade]");e&&e.remove(),o=[],null==t||t.removeAttribute(u),n=!1},isGated:function(){return n}}}function h(e){const n=document.getElementById(e);n&&n.remove()}function m(e,n){const t=e.querySelector("style[data-cc-styles]");if(t)return void(t.textContent=n);const o=document.createElement("style");o.dataset.ccStyles="true",o.textContent=n,e.appendChild(o)}function f(e,n){e.textContent=n}function g(e,n,t){const o=document.createElement(e);return void 0!==n&&(o.textContent=n),o}const b="cc-paywall-host";function y(){const e=navigator.userAgent;return!!/Android|webOS|iPhone|iPad|iPod|BlackBerry|IEMobile|Opera Mini/i.test(e)||!("function"!=typeof window.matchMedia||!window.matchMedia("(pointer: coarse)").matches||!window.matchMedia("(max-width: 768px)").matches)}function v(){var e,n;try{const t=new URL(window.location.href),o=null!==(e=t.searchParams.get("token"))&&void 0!==e?e:t.searchParams.get("cc_token"),i=null!==(n=t.searchParams.get("refresh_token"))&&void 0!==n?n:t.searchParams.get("cc_refresh_token");if(function(){try{const e=new URL(window.location.href);let n=!1;["token","cc_token","refresh_token","cc_refresh_token"].forEach(t=>{e.searchParams.has(t)&&(e.searchParams.delete(t),n=!0)}),n&&history.replaceState(null,"",e.toString())}catch(e){}}(),i&&a.set(i),o){r.set(o);const e=window.opener;if(e&&!e.closed){try{e.postMessage({type:"cc_auth_callback",token:o,refreshToken:null!=i?i:null},window.location.origin)}catch(e){}setTimeout(()=>{try{window.close()}catch(e){}},300)}return o}}catch(e){}return null}function x(e){return new Promise(n=>{let t=null,o=!1;function i(e){o||(o=!0,clearInterval(l),window.removeEventListener("message",c),n(e))}function c(e){if(e.origin!==window.location.origin)return;if("object"!=typeof(n=e.data)||null===n||"cc_auth_callback"!==n.type)return;var n;const o=e.data.token,c=e.data.refreshToken;if(o){r.set(o),c&&a.set(c);try{null==t||t.close()}catch(e){}i(o)}}window.addEventListener("message",c);try{t=window.open(e,"ccAuthPopup",`scrollbars=no,resizable=no,status=no,location=no,toolbar=no,menubar=no,width=600,height=650,left=${Math.round(window.screenX+(window.outerWidth-600)/2)},top=${Math.round(window.screenY+(window.outerHeight-650)/2)}`)}catch(e){return window.removeEventListener("message",c),void n(null)}if(!t||t.closed)return window.removeEventListener("message",c),void n(null);let s=0;const l=setInterval(()=>{var e,n;if(s+=200,t&&!t.closed)if(s>3e5){try{t.close()}catch(e){}i(null)}else try{const o=t.location.href;if(o.includes("/auth/callback")||o.includes("cc_token=")||o.includes("token=")){const o=new URLSearchParams(t.location.search),c=null!==(e=o.get("token"))&&void 0!==e?e:o.get("cc_token"),s=null!==(n=o.get("refresh_token"))&&void 0!==n?n:o.get("cc_refresh_token");if(c){r.set(c),s&&a.set(s);try{t.close()}catch(e){}i(c)}}}catch(e){}else i(r.get())},200)})}function w(e,n,t,o,i){const c=null!=i?i:p({selector:e.contentSelector,teaserParagraphs:e.teaserParagraphs}),a=function(e){let n=null,t=null;function o(){const o=document.querySelector(e.contentSelector);if(!o)return;const{root:i}=function(e,n){let t=document.getElementById(e);t||(t=document.createElement("div"),t.id=e,n.parentNode.insertBefore(t,n.nextSibling));const o=t._ccShadow;if(o)return{host:t,root:o};const i=t.attachShadow({mode:"open"});return t._ccShadow=i,{host:t,root:i}}(b,o);var c,r;n=i,m(n,`\n *, *::before, *::after { box-sizing: border-box; margin: 0; padding: 0; }\n\n /* Inline paywall panel — sits below the teaser content in the page flow */\n .cc-paywall-inline {\n width: 100%;\n padding: 36px 24px 32px;\n background: #fff;\n border: 1px solid #e5e7eb;\n border-top: 3px solid ${c=e.theme.primaryColor};\n border-radius: 0 0 12px 12px;\n text-align: center;\n font-family: ${r=e.theme.fontFamily};\n box-sizing: border-box;\n }\n\n .cc-paywall-inline h2 {\n font-size: 20px;\n font-weight: 700;\n color: #111827;\n margin-bottom: 8px;\n }\n\n .cc-paywall-inline p {\n font-size: 14px;\n color: #6b7280;\n margin-bottom: 24px;\n line-height: 1.6;\n }\n\n .cc-btn {\n display: inline-flex;\n align-items: center;\n justify-content: center;\n gap: 8px;\n height: 44px;\n padding: 0 20px;\n border: none;\n border-radius: 8px;\n font-family: ${r};\n font-size: 15px;\n font-weight: 600;\n cursor: pointer;\n transition: opacity 0.15s ease, transform 0.1s ease;\n width: 100%;\n max-width: 320px;\n }\n .cc-btn:hover:not(:disabled) { opacity: 0.88; }\n .cc-btn:active:not(:disabled) { transform: scale(0.98); }\n .cc-btn:disabled { opacity: 0.55; cursor: not-allowed; }\n\n .cc-btn-primary {\n background: ${c};\n color: #fff;\n }\n\n .cc-btn-secondary {\n background: #111827;\n color: #fff;\n margin-top: 10px;\n }\n\n .cc-btn-outline {\n background: transparent;\n color: #111827;\n border: 2px solid #111827;\n margin-top: 10px;\n }\n\n .cc-credit-badge {\n display: inline-block;\n background: #fef3c7;\n color: #92400e;\n border-radius: 20px;\n padding: 2px 10px;\n font-size: 13px;\n font-weight: 600;\n margin-bottom: 16px;\n }\n\n .cc-spinner {\n width: 18px; height: 18px;\n border: 2px solid rgba(255,255,255,0.4);\n border-top-color: #fff;\n border-radius: 50%;\n animation: cc-spin 0.7s linear infinite;\n flex-shrink: 0;\n }\n @keyframes cc-spin { to { transform: rotate(360deg); } }\n\n .cc-powered-by {\n margin-top: 20px;\n font-size: 12px;\n color: #9ca3af;\n }\n .cc-powered-by a {\n color: ${c};\n text-decoration: none;\n font-weight: 600;\n }\n .cc-powered-by a:hover { text-decoration: underline; }\n `),t=g("div"),t.className="cc-paywall-inline",n.appendChild(t)}function i(){const e=g("div");e.className="cc-powered-by",e.textContent="Powered by ";const n=g("a","Content Credits");return n.setAttribute("href","https://contentcredits.com"),n.setAttribute("target","_blank"),n.setAttribute("rel","noopener noreferrer"),e.appendChild(n),e}function c(){h(b),n=null,t=null}return{init:o,render:function(e,n,r){var a,s,l;if("checking"!==e&&(t||o(),t)){for(;t.firstChild;)t.removeChild(t.firstChild);switch(e){case"login":!function(e,n){e.appendChild(g("h2","This article requires a subscription")),e.appendChild(g("p","Log in with your Content Credits account to unlock this article."));const t=g("button","Login & Buy with Content Credits");t.className="cc-btn cc-btn-primary",t.addEventListener("click",()=>{n.onLogin()}),e.appendChild(t),e.appendChild(i())}(t,n);break;case"purchase":!function(e,n,t){if(e.appendChild(g("h2","Unlock this article")),null!==t){const n=g("span",`${t} credit${1!==t?"s":""}`);n.className="cc-credit-badge",e.appendChild(n)}e.appendChild(g("p","Use your Content Credits balance to instantly access this premium article."));const o=g("button",null!==t?`Buy for ${t} Credit${1!==t?"s":""}`:"Buy with Content Credits");o.className="cc-btn cc-btn-primary",o.addEventListener("click",()=>{n.onPurchase()}),e.appendChild(o),e.appendChild(i())}(t,n,null!==(a=null==r?void 0:r.requiredCredits)&&void 0!==a?a:null);break;case"insufficient":!function(e,n,t,o){e.appendChild(g("h2","Not enough credits"));const c=null!==t&&null!==o?`You need ${t} credit${1!==t?"s":""} but have ${o}. Top up to unlock this article.`:"You don't have enough credits to unlock this article. Purchase more to continue.";e.appendChild(g("p",c));const r=g("button","Buy More Credits");r.className="cc-btn cc-btn-primary",r.addEventListener("click",()=>n.onBuyMoreCredits()),e.appendChild(r),e.appendChild(i())}(t,n,null!==(s=null==r?void 0:r.requiredCredits)&&void 0!==s?s:null,null!==(l=null==r?void 0:r.creditBalance)&&void 0!==l?l:null);break;case"loading":!function(e){const n=g("button");n.className="cc-btn cc-btn-primary",n.disabled=!0;const t=g("span");t.className="cc-spinner",n.appendChild(t),n.appendChild(document.createTextNode(" Processing…")),e.appendChild(n)}(t);break;case"granted":c()}}},setButtonLoading:function(e){if(!t)return;const n=t.querySelector(".cc-btn");if(n&&(n.disabled=e,e)){const e=g("span");e.className="cc-spinner",f(n,""),n.appendChild(e),n.appendChild(document.createTextNode(" Processing…"))}},destroy:c}}(e),s=function(){let e=null,n=null;function t(t){var o,i,c,r;if(!function(){const e=["https://accounts.contentcredits.com"];try{e.push(window.location.origin)}catch(e){}return e}().includes(t.origin)&&t.origin!==window.location.origin)return;const a=t.data;if(a&&"object"==typeof a&&a.type)switch(a.type){case"authorization_response":{const n=null!==(o=a.data)&&void 0!==o?o:null===(i=t.detail)||void 0===i?void 0:i.data;n&&e&&e(n);break}case"purchase_response":{const e=null!==(c=a.data)&&void 0!==c?c:null===(r=t.detail)||void 0===r?void 0:r.data;e&&n&&n(e);break}}}return{attach:function(){window.addEventListener("message",t),window.addEventListener("authorization_response",n=>{const t=n.detail;(null==t?void 0:t.data)&&e&&e(t.data)}),window.addEventListener("purchase_response",e=>{const t=e.detail;(null==t?void 0:t.data)&&n&&n(t.data)})},detach:function(){window.removeEventListener("message",t)},requestAuthorization:function(e,n){window.postMessage({type:"request_authorization",data:{articleId:e,hostName:n}},window.location.origin)},requestPurchase:function(e){window.postMessage({type:"request_purchase",data:e},window.location.origin)},requestLogin:function(e){window.postMessage({type:"request_login",data:{hostName:e}},window.location.origin)},onAuthorizationResponse:function(n){e=n},onPurchaseResponse:function(e){n=e}}}();let l=!1;function u(n=0,i=0){var r;t.set({hasAccess:!0,isLoaded:!0,isLoading:!1}),e.headless||(c.reveal(),a.render("granted",{onLogin:w,onPurchase:C,onBuyMoreCredits:k})),o.emit("paywall:hidden",{}),o.emit("article:purchased",{creditsSpent:n,remainingBalance:i}),null===(r=e.onAccessGranted)||void 0===r||r.call(e)}async function w(){const n=`https://accounts.contentcredits.com/authenticate/extension?redirect=${encodeURIComponent(e.articleUrl)}`;l?s.requestLogin(e.hostName):y()?window.location.href=n:(e.headless||a.render("loading",{onLogin:w,onPurchase:C,onBuyMoreCredits:k}),await x(n)?(t.set({isLoggedIn:!0}),await L()):e.headless||a.render("login",{onLogin:w,onPurchase:C,onBuyMoreCredits:k}))}async function C(){var i,c,p,h,m;if(r.has())if(l)s.requestPurchase({articleId:e.apiKey,hostName:e.hostName,location:e.articleUrl,title:e.pageTitle});else{e.headless||a.render("loading",{onLogin:w,onPurchase:C,onBuyMoreCredits:k}),t.set({isLoading:!0});try{const c=await n.purchaseArticle({apiKey:e.apiKey,postUrl:e.articleUrl,postName:e.pageTitle,hostName:e.hostName});c.success?u(0,0):(t.set({isLoading:!1}),e.headless||a.render("purchase",{onLogin:w,onPurchase:C,onBuyMoreCredits:k}),o.emit("error",{message:null!==(i=c.message)&&void 0!==i?i:"Purchase failed"}))}catch(n){if(t.set({isLoading:!1}),n instanceof d&&402===n.status){e.headless||a.render("insufficient",{onLogin:w,onPurchase:C,onBuyMoreCredits:k},{requiredCredits:t.get().requiredCredits,creditBalance:t.get().creditBalance});const n=null!==(c=t.get().requiredCredits)&&void 0!==c?c:0,i=null!==(p=t.get().creditBalance)&&void 0!==p?p:0;null===(h=e.onInsufficientCredits)||void 0===h||h.call(e,{required:n,available:i}),o.emit("credits:insufficient",{required:n,available:i})}else e.headless||a.render("purchase",{onLogin:w,onPurchase:C,onBuyMoreCredits:k}),null===(m=e.onPurchaseRequired)||void 0===m||m.call(e,{requiredCredits:t.get().requiredCredits,creditBalance:t.get().creditBalance}),o.emit("error",{message:"Purchase failed",error:n})}}else await w()}function k(){window.open("https://accounts.contentcredits.com/consumer/dashboard","_blank","noopener,noreferrer")}async function L(){var i,p,h;if(t.set({isLoading:!0}),e.headless||a.render("checking",{onLogin:w,onPurchase:C,onBuyMoreCredits:k}),l)s.requestAuthorization(e.apiKey,e.hostName);else{if(!r.has())return t.set({isLoading:!1,isLoaded:!0}),e.headless||(c.hide(),a.render("login",{onLogin:w,onPurchase:C,onBuyMoreCredits:k})),null===(i=e.onLoginRequired)||void 0===i||i.call(e),void o.emit("paywall:shown",{});try{const i=await n.checkAccess({apiKey:e.apiKey,postUrl:e.articleUrl,postName:e.pageTitle,hostName:e.hostName});t.set({isLoading:!1,isLoaded:!0,hasAccess:i.success,isLoggedIn:!0}),i.success?u(0,0):(e.headless||(c.hide(),a.render("purchase",{onLogin:w,onPurchase:C,onBuyMoreCredits:k})),null===(p=e.onPurchaseRequired)||void 0===p||p.call(e,{requiredCredits:t.get().requiredCredits,creditBalance:t.get().creditBalance}),o.emit("paywall:shown",{}))}catch(n){t.set({isLoading:!1,isLoaded:!0}),e.headless||(c.hide(),a.render("login",{onLogin:w,onPurchase:C,onBuyMoreCredits:k})),null===(h=e.onLoginRequired)||void 0===h||h.call(e),n instanceof d&&401===n.status||o.emit("error",{message:"Access check failed",error:n})}}}return{init:async function(){var n;v()&&t.set({isLoggedIn:!0}),l=await(n=e.extensionId,n&&"string"==typeof n?new Promise(e=>{let t=!1;function o(n){t||(t=!0,e(n))}if(!0===window.__CC_EXTENSION_LOADED)return void o(!0);const i=new Image;i.onload=()=>o(!0),i.onerror=()=>o(!1),i.src=`chrome-extension://${n}/icons/icon16.png`,setTimeout(()=>o(!1),2e3)}):Promise.resolve(!1)),t.set({isExtensionAvailable:l}),l&&(s.attach(),s.onAuthorizationResponse(n=>{var i,r,s,l,d,p,h;t.set({isLoggedIn:n.isAuthenticated,hasAccess:n.doesHaveAccess,isLoaded:!0,isLoading:!1,creditBalance:null!==(i=n.creditBalance)&&void 0!==i?i:null,requiredCredits:null!==(r=n.requiredCredits)&&void 0!==r?r:null}),n.isAuthenticated?n.doesHaveAccess?u(0,null!==(l=n.creditBalance)&&void 0!==l?l:0):(e.headless||(c.hide(),a.render("purchase",{onLogin:w,onPurchase:C,onBuyMoreCredits:k},{requiredCredits:n.requiredCredits,creditBalance:n.creditBalance})),null===(d=e.onPurchaseRequired)||void 0===d||d.call(e,{requiredCredits:null!==(p=n.requiredCredits)&&void 0!==p?p:null,creditBalance:null!==(h=n.creditBalance)&&void 0!==h?h:null}),o.emit("paywall:shown",{})):(e.headless||(c.hide(),a.render("login",{onLogin:w,onPurchase:C,onBuyMoreCredits:k})),null===(s=e.onLoginRequired)||void 0===s||s.call(e),o.emit("paywall:shown",{}))}),s.onPurchaseResponse(e=>{var n,i;t.set({isLoading:!1,isLoaded:!0,hasAccess:e.doesHaveAccess}),e.doesHaveAccess?u(null!==(n=e.creditsSpent)&&void 0!==n?n:0,null!==(i=e.creditBalance)&&void 0!==i?i:0):(a.render("purchase",{onLogin:w,onPurchase:C,onBuyMoreCredits:k}),o.emit("error",{message:"Purchase failed via extension"}))})),await L()},checkAccess:L,destroy:function(){s.detach(),e.headless||(a.destroy(),c.reveal())},login:w,purchase:C,buyMoreCredits:k}}const C="cc-widget-pos",k="cc-comments-host",L=["#6366f1","#ec4899","#8b5cf6","#14b8a6","#f59e0b","#ef4444"];function E(e,t,o,i){let c=null,a=null,s=null,l=[],d="TOP",u=null,p=null,b=null;function w(){if(c)return c;const{root:n}=function(e){let n=document.getElementById(e);n||(n=document.createElement("div"),n.id=e,n.style.cssText="position:fixed;top:0;left:0;width:0;height:0;pointer-events:none;z-index:2147483647;",document.body.appendChild(n));const t=n._ccShadow;if(t)return{host:n,root:t};const o=n.attachShadow({mode:"open"});return n._ccShadow=o,{host:n,root:o}}(k);var t,o;return c=n,m(c,`\n *, *::before, *::after { box-sizing: border-box; margin: 0; padding: 0; }\n\n /* ── Widget Button ───────────────────────────────────── */\n .cc-widget-btn {\n position: fixed;\n top: 50%;\n right: 0;\n transform: translateY(-50%);\n width: auto;\n height: 60px;\n background: ${t=e.theme.primaryColor};\n border-radius: 10px 0 0 10px;\n display: flex;\n align-items: center;\n gap: 8px;\n padding-left: 12px;\n padding-right: 6px;\n z-index: 2147483646;\n box-shadow: -2px 0 16px rgba(0,0,0,0.12);\n cursor: pointer;\n user-select: none;\n font-family: ${o=e.theme.fontFamily};\n transition: background 0.2s;\n pointer-events: all;\n }\n .cc-widget-btn:hover { filter: brightness(1.08); }\n\n .cc-widget-icon { color: #fff; display: flex; align-items: center; }\n .cc-widget-badge {\n background: #fff;\n color: ${t};\n border-radius: 12px;\n padding: 2px 7px;\n font-size: 12px;\n font-weight: 700;\n min-width: 20px;\n text-align: center;\n }\n .cc-widget-drag-handle {\n color: rgba(255,255,255,0.7);\n cursor: grab;\n display: flex;\n align-items: center;\n padding: 0 4px;\n }\n .cc-widget-drag-handle:active { cursor: grabbing; }\n\n /* ── Panel Overlay ───────────────────────────────────── */\n .cc-panel-backdrop {\n position: fixed;\n inset: 0;\n background: rgba(0,0,0,0.35);\n z-index: 2147483645;\n opacity: 0;\n transition: opacity 0.25s;\n pointer-events: all;\n }\n .cc-panel-backdrop.cc-visible { opacity: 1; }\n\n .cc-panel {\n position: fixed;\n top: 0; right: -500px;\n width: 460px;\n max-width: 95vw;\n height: 100%;\n background: #f9fafb;\n z-index: 2147483646;\n display: flex;\n flex-direction: column;\n box-shadow: -4px 0 32px rgba(0,0,0,0.12);\n transition: right 0.28s cubic-bezier(0.4, 0, 0.2, 1);\n font-family: ${o};\n pointer-events: all;\n }\n .cc-panel.cc-open { right: 0; }\n\n /* ── Panel Header ────────────────────────────────────── */\n .cc-panel-header {\n display: flex;\n align-items: center;\n gap: 10px;\n padding: 16px 20px;\n border-bottom: 1px solid #e5e7eb;\n background: #fff;\n flex-shrink: 0;\n }\n .cc-panel-title {\n font-size: 16px;\n font-weight: 700;\n color: #111827;\n flex: 1;\n }\n .cc-panel-count {\n font-size: 13px;\n color: #6b7280;\n font-weight: 400;\n }\n .cc-panel-close-btn {\n background: transparent;\n border: none;\n cursor: pointer;\n color: #6b7280;\n padding: 4px;\n display: flex;\n align-items: center;\n border-radius: 6px;\n transition: background 0.15s;\n }\n .cc-panel-close-btn:hover { background: #f3f4f6; }\n\n .cc-back-btn {\n background: transparent;\n border: none;\n cursor: pointer;\n color: #6b7280;\n padding: 4px;\n display: none;\n align-items: center;\n border-radius: 6px;\n transition: background 0.15s;\n }\n .cc-back-btn.cc-visible { display: flex; }\n .cc-back-btn:hover { background: #f3f4f6; }\n\n /* ── Sort Bar ────────────────────────────────────────── */\n .cc-sort-bar {\n display: flex;\n align-items: center;\n gap: 6px;\n padding: 10px 20px;\n border-bottom: 1px solid #f3f4f6;\n background: #fff;\n flex-shrink: 0;\n }\n .cc-sort-label { font-size: 12px; color: #9ca3af; font-weight: 500; }\n .cc-sort-btn {\n background: transparent;\n border: none;\n cursor: pointer;\n font-size: 12px;\n font-weight: 600;\n color: #6b7280;\n padding: 4px 8px;\n border-radius: 6px;\n font-family: ${o};\n transition: background 0.15s, color 0.15s;\n }\n .cc-sort-btn:hover { background: #f3f4f6; }\n .cc-sort-btn.cc-active { background: #111827; color: #fff; }\n\n /* ── Comments List ───────────────────────────────────── */\n .cc-comments-list {\n flex: 1;\n overflow-y: auto;\n overscroll-behavior: contain;\n }\n .cc-comments-list::-webkit-scrollbar { width: 4px; }\n .cc-comments-list::-webkit-scrollbar-thumb { background: #d1d5db; border-radius: 4px; }\n\n /* ── Comment Card ────────────────────────────────────── */\n .cc-comment-card {\n padding: 16px 20px;\n background: #fff;\n border-bottom: 1px solid #f3f4f6;\n }\n .cc-comment-card.cc-reply {\n padding-left: 36px;\n background: #fafafa;\n }\n\n .cc-comment-header {\n display: flex;\n align-items: flex-start;\n justify-content: space-between;\n margin-bottom: 8px;\n }\n .cc-comment-author-row { display: flex; align-items: center; gap: 10px; }\n\n .cc-avatar {\n width: 32px; height: 32px;\n border-radius: 50%;\n flex-shrink: 0;\n display: flex;\n align-items: center;\n justify-content: center;\n color: #fff;\n font-weight: 700;\n font-size: 12px;\n overflow: hidden;\n }\n .cc-avatar img { width: 100%; height: 100%; object-fit: cover; }\n\n .cc-author-name {\n font-size: 14px;\n font-weight: 700;\n color: #111827;\n }\n .cc-comment-time {\n font-size: 11px;\n color: #9ca3af;\n margin-top: 2px;\n }\n\n .cc-comment-body {\n font-size: 14px;\n color: #374151;\n line-height: 1.6;\n margin-bottom: 12px;\n word-break: break-word;\n white-space: pre-wrap;\n }\n\n .cc-comment-actions {\n display: flex;\n align-items: center;\n gap: 12px;\n }\n .cc-action-btn {\n display: inline-flex;\n align-items: center;\n gap: 5px;\n background: transparent;\n border: none;\n cursor: pointer;\n font-size: 12px;\n font-weight: 500;\n color: #6b7280;\n padding: 3px 6px;\n border-radius: 6px;\n font-family: ${o};\n transition: background 0.15s, color 0.15s;\n }\n .cc-action-btn:hover { background: #f3f4f6; }\n .cc-action-btn.cc-liked { color: #ef4444; }\n .cc-action-btn.cc-danger:hover { color: #ef4444; background: #fef2f2; }\n .cc-action-btn.cc-owner-actions { margin-left: auto; }\n\n /* ── Reply Subthread ─────────────────────────────────── */\n .cc-subthread-label {\n font-size: 11px;\n font-weight: 600;\n color: #94a3b8;\n text-transform: uppercase;\n letter-spacing: 0.05em;\n padding: 12px 20px 8px;\n background: #f9fafb;\n }\n\n /* ── Empty / Loading / Error ─────────────────────────── */\n .cc-empty-state, .cc-loading-state, .cc-error-state {\n text-align: center;\n padding: 60px 20px;\n color: #9ca3af;\n }\n .cc-empty-state p, .cc-loading-state p, .cc-error-state p {\n font-size: 14px;\n font-weight: 500;\n color: #9ca3af;\n margin-bottom: 6px;\n }\n .cc-empty-state span, .cc-loading-state span, .cc-error-state span {\n font-size: 13px;\n color: #d1d5db;\n }\n .cc-error-state .cc-retry-btn {\n margin-top: 16px;\n padding: 8px 16px;\n background: #111827;\n color: #fff;\n border: none;\n border-radius: 6px;\n font-size: 13px;\n font-weight: 500;\n cursor: pointer;\n font-family: ${o};\n }\n .cc-error-icon { color: #ef4444; margin-bottom: 12px; }\n\n .cc-spinner-lg {\n width: 28px; height: 28px;\n border: 2px solid #e5e7eb;\n border-top-color: ${t};\n border-radius: 50%;\n animation: cc-spin 0.7s linear infinite;\n margin: 0 auto 12px;\n }\n @keyframes cc-spin { to { transform: rotate(360deg); } }\n\n /* ── Compose Box ─────────────────────────────────────── */\n .cc-compose {\n border-top: 1px solid #e5e7eb;\n padding: 12px 20px;\n background: #fff;\n flex-shrink: 0;\n position: relative;\n }\n\n .cc-compose-textarea {\n width: 100%;\n min-height: 72px;\n max-height: 180px;\n border: 1.5px solid #d1d5db;\n border-radius: 8px;\n padding: 10px 12px;\n font-size: 14px;\n font-family: ${o};\n color: #111827;\n resize: vertical;\n outline: none;\n background: #fff;\n transition: border-color 0.15s;\n line-height: 1.5;\n }\n .cc-compose-textarea:focus { border-color: ${t}; }\n .cc-compose-textarea::placeholder { color: #9ca3af; }\n\n .cc-compose-actions {\n display: flex;\n justify-content: space-between;\n align-items: center;\n margin-top: 8px;\n gap: 8px;\n }\n .cc-compose-cancel {\n background: transparent;\n border: none;\n cursor: pointer;\n font-size: 13px;\n color: #6b7280;\n font-family: ${o};\n padding: 6px;\n display: none;\n }\n .cc-compose-cancel.cc-visible { display: block; }\n .cc-compose-submit {\n display: inline-flex;\n align-items: center;\n gap: 6px;\n height: 36px;\n padding: 0 16px;\n background: ${t};\n color: #fff;\n border: none;\n border-radius: 7px;\n font-size: 13px;\n font-weight: 600;\n cursor: pointer;\n font-family: ${o};\n margin-left: auto;\n transition: opacity 0.15s;\n }\n .cc-compose-submit:disabled { opacity: 0.55; cursor: not-allowed; }\n\n .cc-spinner-sm {\n width: 14px; height: 14px;\n border: 2px solid rgba(255,255,255,0.4);\n border-top-color: #fff;\n border-radius: 50%;\n animation: cc-spin 0.7s linear infinite;\n }\n\n /* ── Login Overlay inside compose ────────────────────── */\n .cc-login-overlay {\n position: absolute;\n inset: 0;\n background: rgba(255,255,255,0.95);\n display: flex;\n flex-direction: column;\n align-items: center;\n justify-content: center;\n gap: 10px;\n padding: 16px;\n border-top: 1px solid #e5e7eb;\n }\n .cc-login-overlay p {\n font-size: 14px;\n color: #6b7280;\n text-align: center;\n }\n .cc-login-overlay-btn {\n height: 40px;\n padding: 0 20px;\n background: ${t};\n color: #fff;\n border: none;\n border-radius: 8px;\n font-size: 14px;\n font-weight: 600;\n cursor: pointer;\n font-family: ${o};\n }\n `),c}function C(){const e=r.get();a=e?function(e){var t,o;const i=n(e);return i&&null!==(o=null!==(t=i.id)&&void 0!==t?t:i._id)&&void 0!==o?o:null}(e):null}async function E(){const n=`https://accounts.contentcredits.com/authenticate/extension?redirect=${encodeURIComponent(e.articleUrl)}`;y()?window.location.href=n:await x(n)&&(C(),U(),N())}async function N(){var n;const o=w(),i=o.getElementById("cc-comments-list");if(i){!function(e){e.innerHTML="";const n=g("div");n.className="cc-loading-state";const t=g("div");t.className="cc-spinner-lg",n.appendChild(t),n.appendChild(g("p","Loading comments…")),e.appendChild(n)}(i);try{const c=await t.ensureThread({pageUrl:e.articleUrl,hostname:e.hostName});if(!c._id)return void I(i,"Comments are not available for this page.");s=c._id;const r=await t.getComments({pageUrl:e.articleUrl,sortBy:d});l=null!==(n=r.comments)&&void 0!==n?n:[],r.thread&&(s=r.thread._id);const a=o.getElementById("cc-header-count");a&&f(a,String(l.length)),P(i)}catch(e){I(i,"Unable to reach the server. Check your connection.")}}}function B(e){const n=new Map,t=[];return e.forEach(e=>n.set(e._id,Object.assign(Object.assign({},e),{replies:[]}))),e.forEach(e=>{const o=n.get(e._id);if(e.parentCommentId){const t=n.get(e.parentCommentId);t&&!t.parentCommentId&&t.replies.push(o)}else t.push(o)}),t}function I(e,n){e.innerHTML="";const t=g("div");t.className="cc-error-state";const o=g("div");o.className="cc-error-icon",o.innerHTML='<svg width="40" height="40" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="1.5"><circle cx="12" cy="12" r="10"/><line x1="12" y1="8" x2="12" y2="12"/><line x1="12" y1="16" x2="12.01" y2="16"/></svg>',t.appendChild(o),t.appendChild(g("p",n));const i=g("button","Try Again");i.className="cc-retry-btn",i.addEventListener("click",()=>{N()}),t.appendChild(i),e.appendChild(t)}function P(e){e.innerHTML="";const n=w(),t=n.getElementById("cc-back-btn"),o=n.getElementById("cc-panel-title");if(u?(null==t||t.classList.add("cc-visible"),o&&f(o,"Replies")):(null==t||t.classList.remove("cc-visible"),o&&f(o,"Comments")),u)!function(e,n){var t,o,i,c,r;const a=B(l).find(e=>e._id===n);if(!a)return;e.appendChild(T(a,!1));const s=g("div",`${null!==(o=null===(t=a.replies)||void 0===t?void 0:t.length)&&void 0!==o?o:0} ${1===(null!==(c=null===(i=a.replies)||void 0===i?void 0:i.length)&&void 0!==c?c:0)?"REPLY":"REPLIES"}`);if(s.className="cc-subthread-label",e.appendChild(s),null===(r=a.replies)||void 0===r?void 0:r.length)a.replies.forEach(n=>e.appendChild(T(n,!0)));else{const n=g("div");n.className="cc-empty-state",n.style.paddingTop="20px",n.appendChild(g("p","No replies yet")),e.appendChild(n)}}(e,u);else{if(0===l.length){const n=g("div");n.className="cc-empty-state",n.appendChild(g("p","No comments yet"));const t=g("span","Be the first to share your thoughts");return n.appendChild(t),void e.appendChild(n)}(function(e){const n=[...e];return"NEWEST"===d?n.sort((e,n)=>new Date(n.createdAt).getTime()-new Date(e.createdAt).getTime()):n.sort((e,n)=>{var t,o,i,c,r,a;return(null!==(o=null===(t=n.replies)||void 0===t?void 0:t.length)&&void 0!==o?o:0)-(null!==(c=null===(i=e.replies)||void 0===i?void 0:i.length)&&void 0!==c?c:0)||(null!==(r=n.likeCount)&&void 0!==r?r:0)-(null!==(a=e.likeCount)&&void 0!==a?a:0)}),n.forEach(e=>{var n;(null===(n=e.replies)||void 0===n?void 0:n.length)&&e.replies.sort((e,n)=>new Date(n.createdAt).getTime()-new Date(e.createdAt).getTime())}),n})(B(l)).forEach(n=>e.appendChild(T(n,!1)))}}function T(n,t){var o,i;const c=!(!a||n.authorId!==a),r=n.author,s=r?`${r.firstName} ${r.lastName}`.trim():"Anonymous",l=L[(s||"A").charCodeAt(0)%L.length],d=r?function(e,n){var t,o,i,c;return`${null!==(o=null===(t=null==e?void 0:e[0])||void 0===t?void 0:t.toUpperCase())&&void 0!==o?o:""}${null!==(c=null===(i=null==n?void 0:n[0])||void 0===i?void 0:i.toUpperCase())&&void 0!==c?c:""}`||"?"}(r.firstName,r.lastName):"?",u=g("div");u.className="cc-comment-card"+(t?" cc-reply":""),u.dataset.commentId=n._id;const p=g("div");p.className="cc-comment-header";const h=g("div");h.className="cc-comment-author-row";const m=g("div");if(m.className="cc-avatar",m.style.background=l,null==r?void 0:r.profilePicture){const n=function(e){try{const n=new URL(e);return"http:"!==n.protocol&&"https:"!==n.protocol?null:n.toString()}catch(e){return null}}(r.profilePicture.startsWith("http")?r.profilePicture:`${e.apiBaseUrl}${r.profilePicture}`);if(n){const e=g("img");e.setAttribute("src",n),e.setAttribute("alt",s),e.addEventListener("error",()=>{e.remove(),f(m,d)}),m.appendChild(e)}else f(m,d)}else f(m,d);const b=g("div"),y=g("div",s);y.className="cc-author-name";const v=g("div",function(e){try{const n=new Date(e);return`${n.toLocaleTimeString("en-US",{hour:"numeric",minute:"2-digit"})} · ${n.toLocaleDateString("en-US",{month:"short",day:"numeric",year:"numeric"})}`}catch(e){return""}}(n.createdAt));v.className="cc-comment-time",b.appendChild(y),b.appendChild(v),h.appendChild(m),h.appendChild(b),p.appendChild(h),u.appendChild(p);const x=g("div");x.className="cc-comment-body",x.appendChild(function(e){const n=document.createDocumentFragment(),t=e.split("\n");return t.forEach((e,o)=>{n.appendChild(document.createTextNode(e)),o<t.length-1&&n.appendChild(document.createElement("br"))}),n}(n.content)),u.appendChild(x);const w=g("div");if(w.className="cc-comment-actions",!t){const e=g("button");e.className="cc-action-btn",e.dataset.commentId=n._id,e.dataset.action="reply",e.innerHTML='<svg width="14" height="14" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" style="transform:scaleX(-1)"><path d="M21 15a2 2 0 0 1-2 2H7l-4 4V5a2 2 0 0 1 2-2h14a2 2 0 0 1 2 2z"/></svg>',e.appendChild(document.createTextNode(` ${(null===(o=n.replies)||void 0===o?void 0:o.length)||"Reply"}`)),w.appendChild(e)}const C=g("button");if(C.className="cc-action-btn"+(n.hasLiked?" cc-liked":""),C.dataset.commentId=n._id,C.dataset.action="like",C.innerHTML=`<svg width="14" height="14" viewBox="0 0 24 24" fill="${n.hasLiked?"currentColor":"none"}" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><path d="M20.84 4.61a5.5 5.5 0 0 0-7.78 0L12 5.67l-1.06-1.06a5.5 5.5 0 0 0-7.78 7.78l1.06 1.06L12 21.23l7.78-7.78 1.06-1.06a5.5 5.5 0 0 0 0-7.78z"/></svg>`,C.appendChild(document.createTextNode(` ${null!==(i=n.likeCount)&&void 0!==i?i:0}`)),w.appendChild(C),c){const e=g("div");e.className="cc-action-btn cc-owner-actions",e.style.cssText="margin-left:auto;display:flex;gap:4px;background:transparent;border:none;padding:0;";const t=g("button","Edit");t.className="cc-action-btn",t.dataset.commentId=n._id,t.dataset.action="edit";const o=g("button","Delete");o.className="cc-action-btn cc-danger",o.dataset.commentId=n._id,o.dataset.action="delete",e.appendChild(t),e.appendChild(o),w.appendChild(e)}return u.appendChild(w),u}function S(){const e=g("div");e.className="cc-login-overlay",e.id="cc-login-overlay",e.appendChild(g("p","Sign in to join the conversation"));const n=g("button","Login with Content Credits");return n.className="cc-login-overlay-btn",n.addEventListener("click",()=>{E()}),e.appendChild(n),e}function A(e){const n=e.target.closest("[data-action]");if(!n)return;const i=n.dataset.action,a=n.dataset.commentId;if(a)switch(i){case"reply":!function(e){if(u){p=e,b=null;const n=null==c?void 0:c.getElementById("cc-compose-textarea");n&&(n.placeholder="Write a reply…",n.focus()),M()}else{u=e;const n=null==c?void 0:c.getElementById("cc-comments-list");n&&P(n)}}(a);break;case"like":!async function(e){var n,i,a,s,d;if(!r.has())return void E();const u=l.find(n=>n._id===e);if(!u)return;const p=u.hasLiked;u.hasLiked=!p,u.likeCount=(null!==(n=u.likeCount)&&void 0!==n?n:0)+(u.hasLiked?1:-1);const h=null==c?void 0:c.getElementById("cc-comments-list");h&&P(h);try{const n=await t.toggleLike(e);n.success?("boolean"==typeof(null===(i=n.data)||void 0===i?void 0:i.hasLiked)&&(u.hasLiked=n.data.hasLiked),"number"==typeof(null===(a=n.data)||void 0===a?void 0:a.likeCount)&&(u.likeCount=n.data.likeCount),o.emit("comment:liked",{commentId:e,hasLiked:u.hasLiked})):(u.hasLiked=p,u.likeCount=(null!==(s=u.likeCount)&&void 0!==s?s:0)+(p?1:-1)),h&&P(h)}catch(e){u.hasLiked=p,u.likeCount=(null!==(d=u.likeCount)&&void 0!==d?d:0)+(p?1:-1),h&&P(h)}}(a);break;case"edit":!function(e){const n=l.find(n=>n._id===e);if(!n)return;b=e,p=null;const t=null==c?void 0:c.getElementById("cc-compose-textarea");t&&(t.value=n.content,t.placeholder="Edit your comment…",t.focus());const o=null==c?void 0:c.getElementById("cc-compose-submit");o&&f(o,"Update"),M()}(a);break;case"delete":!async function(e){if(confirm("Delete this comment?"))try{(await t.deleteComment(e))._id&&(o.emit("comment:deleted",{commentId:e}),N())}catch(e){}}(a)}}function M(){const e=null==c?void 0:c.getElementById("cc-compose-cancel");null==e||e.classList.add("cc-visible")}function $(){const e=null==c?void 0:c.getElementById("cc-compose-cancel");null==e||e.classList.remove("cc-visible")}function _(){b=null,p=null;const e=null==c?void 0:c.getElementById("cc-compose-textarea");e&&(e.value="",e.placeholder="Write a comment…");const n=null==c?void 0:c.getElementById("cc-compose-submit");n&&f(n,"Post"),$()}function U(){const e=w(),n=e.getElementById("cc-login-overlay");if(r.has()&&n)n.remove();else if(!r.has()&&!n){const n=e.getElementById("cc-compose");null==n||n.appendChild(S())}}function q(){const e=c;if(!e)return;const n=e.getElementById("cc-panel-backdrop"),t=e.getElementById("cc-comments-panel");null==n||n.classList.remove("cc-visible"),null==t||t.classList.remove("cc-open"),setTimeout(()=>{null==n||n.remove(),null==t||t.remove(),i()},280)}return{openPanel:function(){const e=w();v()&&C(),C();let n=e.getElementById("cc-panel-backdrop");if(!n){const i=g("div");i.className="cc-panel-backdrop",i.id="cc-panel-backdrop",i.addEventListener("click",q),e.appendChild(i),e.appendChild(function(){const e=g("div");e.className="cc-panel",e.id="cc-comments-panel";const n=g("div");n.className="cc-panel-header";const i=g("button");i.className="cc-back-btn",i.id="cc-back-btn",i.setAttribute("aria-label","Back"),i.innerHTML='<svg width="18" height="18" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2.5" stroke-linecap="round" stroke-linejoin="round"><path d="M15 18l-6-6 6-6"/></svg>',i.addEventListener("click",()=>{u=null,p=null;const e=null==c?void 0:c.getElementById("cc-comments-list");e&&P(e)});const a=g("div");a.style.cssText="flex:1;display:flex;align-items:center;gap:6px;";const l=g("span","Comments");l.className="cc-panel-title",l.id="cc-panel-title";const h=g("span","");h.className="cc-panel-count",h.id="cc-header-count",a.appendChild(l),a.appendChild(h);const m=g("button");m.className="cc-panel-close-btn",m.setAttribute("aria-label","Close comments"),m.innerHTML='<svg width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2.5" stroke-linecap="round" stroke-linejoin="round"><line x1="18" y1="6" x2="6" y2="18"/><line x1="6" y1="6" x2="18" y2="18"/></svg>',m.addEventListener("click",q),n.appendChild(i),n.appendChild(a),n.appendChild(m),e.appendChild(n);const y=g("div");y.className="cc-sort-bar";const v=g("span","Sort:");v.className="cc-sort-label",y.appendChild(v),["TOP","NEWEST"].forEach(e=>{const n=g("button",e);n.className="cc-sort-btn"+(d===e?" cc-active":""),n.dataset.sort=e,n.addEventListener("click",()=>{d!==e&&(d=e,y.querySelectorAll(".cc-sort-btn").forEach(e=>e.classList.remove("cc-active")),n.classList.add("cc-active"),N())}),y.appendChild(n)}),e.appendChild(y);const x=g("div");return x.className="cc-comments-list",x.id="cc-comments-list",x.addEventListener("click",A),e.appendChild(x),e.appendChild(function(){const e=g("div");e.className="cc-compose",e.id="cc-compose";const n=g("textarea");n.className="cc-compose-textarea",n.id="cc-compose-textarea",n.setAttribute("placeholder","Write a comment…"),n.setAttribute("rows","3"),e.appendChild(n);const i=g("div");i.className="cc-compose-actions";const a=g("button","Cancel");a.className="cc-compose-cancel",a.id="cc-compose-cancel",a.addEventListener("click",_),i.appendChild(a);const l=g("button","Post");return l.className="cc-compose-submit",l.id="cc-compose-submit",l.addEventListener("click",()=>{!async function(){const e=null==c?void 0:c.getElementById("cc-compose-textarea");if(!e)return;const n=e.value.trim();if(!n)return;if(!r.has())return void E();if(!s)return;const i=null==c?void 0:c.getElementById("cc-compose-submit");i&&(i.disabled=!0,f(i,"Posting…"));try{let c;b?c=await t.editComment(b,n):(c=await t.postComment({threadId:s,content:n,parentCommentId:null!=p?p:u}),o.emit("comment:posted",{comment:c})),c._id&&(e.value="",b=null,p=null,e.placeholder=u?"Write a reply…":"Write a comment…",$(),i&&f(i,"Post"),N())}catch(e){}finally{i&&(i.disabled=!1)}}()}),i.appendChild(l),e.appendChild(i),r.has()||e.appendChild(S()),e}()),e}()),n=i}const i=n;requestAnimationFrame(()=>{var n;i.classList.add("cc-visible"),null===(n=e.getElementById("cc-comments-panel"))||void 0===n||n.classList.add("cc-open")}),U(),N()},closePanel:q,destroy:function(){h(k),c=null}}}class N{constructor(e){var n;this.config=e,this.state=function(){let e={isLoading:!1,isExtensionAvailable:!1,isLoggedIn:!1,hasAccess:!1,isLoaded:!1,user:null,creditBalance:null,requiredCredits:null};const n=[];function t(){return Object.assign({},e)}function o(o){e=Object.assign(Object.assign({},e),o),n.forEach(e=>e(t()))}return{get:t,set:o,subscribe:function(e){return n.push(e),()=>{const t=n.indexOf(e);t>=0&&n.splice(t,1)}},reset:function(){e={isLoading:!1,isExtensionAvailable:!1,isLoggedIn:!1,hasAccess:!1,isLoaded:!1,user:null,creditBalance:null,requiredCredits:null},n.forEach(e=>e(t()))},setUser:function(e){var n;o({user:e,isLoggedIn:null!==e,creditBalance:null!==(n=null==e?void 0:e.credits)&&void 0!==n?n:null})}}}(),this.emitter=function(){const e={};function n(n,t){const o=e[n];if(!o)return;const i=o.indexOf(t);i>=0&&o.splice(i,1)}return{on:function(t,o){return e[t]||(e[t]=[]),e[t].push(o),()=>n(t,o)},off:n,emit:function(n,t){const o=e[n];o&&o.forEach(e=>{try{e(t)}catch(e){console.warn(`[ContentCredits] Error in "${n}" handler:`,e)}});try{document.dispatchEvent(new CustomEvent(`contentcredits:${n}`,{detail:t,bubbles:!1}))}catch(e){}},removeAll:function(){Object.keys(e).forEach(n=>{delete e[n]})}}}(),this.paywallModule=null,this.commentsModule=null,this.client=function(e,n){async function t(o,i,c,u=0,p=!1){const h=`${e}${i}`,m=c?JSON.stringify(c):void 0,f=function(e,n,t){return`${e}:${n}:${null!=t?t:""}`}(o,h,m),g=l.get(f);if(g)return g;const b=new AbortController,y=setTimeout(()=>b.abort(),12e3),v={"Content-Type":"application/json"},x=r.get();x&&(v.Authorization=`Bearer ${x}`);const w=fetch(h,{method:o,headers:v,body:m,signal:b.signal,credentials:"omit"}).then(async h=>{var m;if(clearTimeout(y),401===h.status){if(!p&&await s(e))return l.delete(f),t(o,i,c,u,!0);throw r.clear(),a.clear(),n.emit("auth:logout",{}),new d(401,"Unauthorized — session expired")}let g;try{g=await h.json()}catch(e){throw new d(h.status,"Invalid JSON response from server")}if(!h.ok){const e=null!==(m=null==g?void 0:g.message)&&void 0!==m?m:`HTTP ${h.status}`;throw new d(h.status,e,g)}return g}).catch(async e=>{clearTimeout(y);const n=e instanceof TypeError&&e.message.includes("fetch"),r=e instanceof d&&((a=e.status)>=500||429===a);var a;if((n||r)&&u<3)return l.delete(f),await async function(e){return new Promise(n=>setTimeout(n,e))}(400*Math.pow(2,u)),t(o,i,c,u+1);throw e}).finally(()=>{l.delete(f)});return l.set(f,w),w}return{get:e=>t("GET",e),post:(e,n)=>t("POST",e,n),put:(e,n)=>t("PUT",e,n),delete:e=>t("DELETE",e)}}(e.apiBaseUrl,this.emitter),this.creditsApi=(n=this.client,{checkAccess:e=>n.post("/credits/check-article-access",{apiKey:e.apiKey,postUrl:e.postUrl,postName:e.postName,hostName:e.hostName}),purchaseArticle:e=>n.post("/credits/purchase-article",{apiKey:e.apiKey,postUrl:e.postUrl,postName:e.postName,hostName:e.hostName})}),this.commentsApi=function(e){return{ensureThread:n=>e.post("/comments/threads/ensure",{pageUrl:n.pageUrl,hostname:n.hostname}),getComments(n){const t=encodeURIComponent(n.pageUrl);return e.get(`/comments/comments/by-url?url=${t}&sortBy=${n.sortBy}`)},postComment:n=>e.post("/comments/comments",Object.assign({threadId:n.threadId,content:n.content},n.parentCommentId?{parentCommentId:n.parentCommentId}:{})),editComment:(n,t)=>e.put(`/comments/comments/${n}`,{content:t}),deleteComment:n=>e.delete(`/comments/comments/${n}`),toggleLike:n=>e.post(`/comments/comments/${n}/toggle-like`,{})}}(this.client)}static init(e){const n=function(e){var n,t,o,i,c,r,a,s,l,d,u;if(!e.apiKey||"string"!=typeof e.apiKey||""===e.apiKey.trim())throw new Error("[ContentCredits] apiKey is required. Get yours from the Content Credits admin panel.");const p=function(e){try{const n=new URL(e);return["token","cc_token","refresh_token","cc_refresh_token"].forEach(e=>{n.searchParams.delete(e)}),n.toString()}catch(n){return e}}(null!==(n=e.articleUrl)&&void 0!==n?n:window.location.href);let h;try{h=new URL(p).hostname}catch(e){throw new Error(`[ContentCredits] Invalid articleUrl: "${p}"`)}return{apiKey:e.apiKey.trim(),articleUrl:p,hostName:h,pageTitle:document.title,contentSelector:null!==(t=e.contentSelector)&&void 0!==t?t:".cc-premium-content",teaserParagraphs:null!==(o=e.teaserParagraphs)&&void 0!==o?o:2,enableComments:null===(i=e.enableComments)||void 0===i||i,extensionId:null!==(c=e.extensionId)&&void 0!==c?c:"ljehdpabbhgccmanhjdfacjnaigpgcml",debug:null!==(r=e.debug)&&void 0!==r&&r,headless:null!==(a=e.headless)&&void 0!==a&&a,apiBaseUrl:"https://api.contentcredits.com",accountsUrl:"https://accounts.contentcredits.com",paywallTemplate:e.paywallTemplate,onAccessGranted:e.onAccessGranted,onStateChange:e.onStateChange,onReady:e.onReady,onLoginRequired:e.onLoginRequired,onPurchaseRequired:e.onPurchaseRequired,onInsufficientCredits:e.onInsufficientCredits,onPurchased:e.onPurchased,onUserLogin:e.onUserLogin,onUserLogout:e.onUserLogout,onError:e.onError,theme:{primaryColor:null!==(l=null===(s=e.theme)||void 0===s?void 0:s.primaryColor)&&void 0!==l?l:"#44C678",fontFamily:null!==(u=null===(d=e.theme)||void 0===d?void 0:d.fontFamily)&&void 0!==u?u:"-apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif"}}}(e),t=new N(n);return t._start(),t}async _start(){v(),this.config.onStateChange&&this.state.subscribe(this.config.onStateChange),this.config.onReady&&this.emitter.on("ready",({state:e})=>this.config.onReady(e)),this.config.onPurchased&&this.emitter.on("article:purchased",e=>this.config.onPurchased(e)),this.config.onUserLogin&&this.emitter.on("auth:login",({user:e})=>this.config.onUserLogin(e)),this.config.onUserLogout&&this.emitter.on("auth:logout",()=>this.config.onUserLogout()),this.config.onError&&this.emitter.on("error",e=>this.config.onError(e));const e=p({selector:this.config.contentSelector,teaserParagraphs:this.config.teaserParagraphs});this.config.headless||e.hide(),r.has()||await s(this.config.apiBaseUrl),this.paywallModule=w(this.config,this.creditsApi,this.state,this.emitter,e),this.config.enableComments&&(this.commentsModule=function(e,n,t){const o=E(e,n,t,()=>i.show()),i=function(e,n){let t=null,o=null;return{mount:function(){if(document.getElementById("cc-comment-widget"))return;let i=50;try{const e=localStorage.getItem(C);e&&(i=JSON.parse(e))}catch(e){}t=document.createElement("div"),t.id="cc-comment-widget",t.style.cssText=`\n position:fixed;top:${i}%;right:0;transform:translateY(-50%);\n height:60px;background:${e};border-radius:10px 0 0 10px;\n display:flex;align-items:center;gap:8px;padding:0 8px 0 12px;\n z-index:2147483646;box-shadow:-2px 0 16px rgba(0,0,0,.12);\n cursor:pointer;user-select:none;\n font-family:-apple-system,BlinkMacSystemFont,'Segoe UI',Roboto,sans-serif;\n transition:filter .2s;\n `,t.setAttribute("role","button"),t.setAttribute("aria-label","Open comments"),t.tabIndex=0;const c=document.createElement("div");c.style.cssText="color:#fff;display:flex;align-items:center;flex-shrink:0;",c.innerHTML='<svg width="22" height="22" viewBox="0 0 24 24" fill="currentColor"><path d="M21 15a2 2 0 0 1-2 2H7l-4 4V5a2 2 0 0 1 2-2h14a2 2 0 0 1 2 2z"/></svg>',o=document.createElement("span"),o.style.cssText=`\n background:#fff;color:${e};border-radius:12px;\n padding:2px 7px;font-size:12px;font-weight:700;min-width:20px;\n text-align:center;display:none;\n `;const r=document.createElement("div");r.style.cssText="color:rgba(255,255,255,.65);cursor:grab;display:flex;align-items:center;padding:0 2px;flex-shrink:0;",r.innerHTML='<svg width="8" height="22" viewBox="0 0 8 22" fill="none"><circle cx="4" cy="4" r="2" fill="currentColor"/><circle cx="4" cy="11" r="2" fill="currentColor"/><circle cx="4" cy="18" r="2" fill="currentColor"/></svg>',c.addEventListener("click",n),o.addEventListener("click",n);let a=!1,s=0,l=0;function d(e){a=!0,s=e,l=t.getBoundingClientRect().top,r.style.cursor="grabbing"}function u(e){if(!a||!t)return;const n=e-s,o=Math.max(0,Math.min(window.innerHeight-60,l+n))/window.innerHeight*100;t.style.top=`${o}%`}function p(){if(!a||!t)return;a=!1,r.style.cursor="grab";const e=t.getBoundingClientRect().top/window.innerHeight*100;try{localStorage.setItem(C,JSON.stringify(e))}catch(e){}}r.addEventListener("mousedown",e=>{e.preventDefault(),e.stopPropagation(),d(e.clientY)}),r.addEventListener("touchstart",e=>{e.preventDefault(),d(e.touches[0].clientY)},{passive:!1}),document.addEventListener("mousemove",e=>u(e.clientY)),document.addEventListener("touchmove",e=>u(e.touches[0].clientY),{passive:!0}),document.addEventListener("mouseup",p),document.addEventListener("touchend",p),t.addEventListener("keydown",e=>{"Enter"!==e.key&&" "!==e.key||n()}),t.appendChild(c),t.appendChild(o),t.appendChild(r),document.body.appendChild(t)},setCount:function(e){o&&(e>0?(o.textContent=e>99?"99+":String(e),o.style.display="inline-block"):o.style.display="none")},show:function(){t&&(t.style.display="flex")},hide:function(){t&&(t.style.display="none")},destroy:function(){null==t||t.remove(),t=null,o=null}}}(e.theme.primaryColor,()=>{i.hide(),o.openPanel()});return{init:function(){i.mount()},open:function(){i.hide(),o.openPanel()},close:function(){o.closePanel()},destroy:function(){o.destroy(),i.destroy()}}}(this.config,this.commentsApi,this.emitter),this.commentsModule.init()),await this.paywallModule.init(),this.emitter.emit("ready",{state:this.state.get()})}subscribe(e){return this.state.subscribe(e)}async login(){var e;await(null===(e=this.paywallModule)||void 0===e?void 0:e.login())}async purchase(){var e;await(null===(e=this.paywallModule)||void 0===e?void 0:e.purchase())}buyMoreCredits(){var e;null===(e=this.paywallModule)||void 0===e||e.buyMoreCredits()}on(e,n){return this.emitter.on(e,n)}off(e,n){this.emitter.off(e,n)}getState(){return this.state.get()}async checkAccess(){var e;await(null===(e=this.paywallModule)||void 0===e?void 0:e.checkAccess())}openComments(){var e;null===(e=this.commentsModule)||void 0===e||e.open()}closeComments(){var e;null===(e=this.commentsModule)||void 0===e||e.close()}isLoggedIn(){return r.has()}getToken(){return r.get()}async logout(){const e=a.get();if(e)try{await fetch(`${this.config.apiBaseUrl}/auth/log-out`,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({refreshToken:e}),credentials:"omit"})}catch(e){}r.clear(),a.clear(),this.state.reset(),this.emitter.emit("auth:logout",{})}destroy(){var e,n;null===(e=this.paywallModule)||void 0===e||e.destroy(),null===(n=this.commentsModule)||void 0===n||n.destroy(),this.emitter.removeAll(),this.state.reset()}static get version(){return"2.11.0"}}!function(){var e,n,t;const o=null!==(e=document.currentScript)&&void 0!==e?e:document.querySelector("script[data-cc-api-key], script[data-api-key]");if(!o)return;const i=o.dataset,c=null!==(n=i.ccApiKey)&&void 0!==n?n:i.apiKey;if(!c)return;const r={apiKey:c,contentSelector:null!==(t=i.ccContentSelector)&&void 0!==t?t:i.contentSelector,teaserParagraphs:i.ccTeaserParagraphs?parseInt(i.ccTeaserParagraphs,10):void 0,enableComments:"false"!==i.ccEnableComments,extensionId:i.ccExtensionId,debug:"true"===i.ccDebug};"loading"===document.readyState?document.addEventListener("DOMContentLoaded",()=>N.init(r)):N.init(r)}(),e.ContentCredits=N});
2
2
  //# sourceMappingURL=content-credits.umd.min.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"content-credits.umd.min.js","sources":["../src/auth/token.ts","../src/auth/storage.ts","../src/auth/session.ts","../src/api/client.ts","../src/paywall/gate.ts","../src/ui/shadow.ts","../src/ui/sanitize.ts","../src/paywall/renderer.ts","../src/auth/popup.ts","../src/paywall/index.ts","../src/ui/styles.ts","../src/extension/bridge.ts","../src/extension/detector.ts","../src/comments/widget.ts","../src/comments/panel.ts","../src/index.ts","../src/api/credits.ts","../src/core/state.ts","../src/core/events.ts","../src/api/comments.ts","../src/core/config.ts","../src/comments/index.ts"],"sourcesContent":[null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null],"names":["decodeJwt","token","parts","split","length","base64","replace","padded","padEnd","json","decodeURIComponent","atob","map","c","charCodeAt","toString","slice","join","JSON","parse","_a","isTokenExpired","payload","exp","Date","now","SESSION_KEY","REFRESH_KEY","memoryToken","tokenStorage","set","sessionStorage","setItem","get","this","clear","stored","getItem","removeItem","has","refreshTokenStorage","localStorage","async","tryRefreshSession","apiBaseUrl","rt","controller","AbortController","timeoutId","setTimeout","abort","resp","fetch","method","headers","body","stringify","refreshToken","credentials","signal","clearTimeout","ok","data","accessToken","inFlight","Map","ApiError","Error","constructor","status","message","super","name","GATE_ATTR","createGate","options","gated","contentEl","hiddenNodes","hide","document","querySelector","selector","hasAttribute","paragraphs","Array","from","querySelectorAll","teaserParagraphs","hideFrom","childNodes","pivotIndex","findIndex","n","contains","compareDocumentPosition","Node","DOCUMENT_POSITION_FOLLOWING","forEach","HTMLElement","Text","_b","style","setProperty","call","_d","_c","setAttribute","display","prevPos","position","fadeEl","createElement","cssText","appendChild","reveal","removeProperty","removeAttribute","remove","isGated","removeShadowHost","id","host","getElementById","injectStyles","root","css","existing","textContent","dataset","ccStyles","setTextContent","el","str","tag","text","attrs","element","undefined","HOST_ID","isMobileDevice","test","navigator","userAgent","window","innerWidth","consumeTokenFromUrl","url","URL","location","href","searchParams","changed","param","delete","history","replaceState","scrubTokenFromUrl","opener","closed","postMessage","type","origin","close","openAuthPopup","authUrl","Promise","resolve","popup","settled","finish","clearInterval","timer","removeEventListener","onMessage","event","addEventListener","open","Math","round","screenX","outerWidth","screenY","outerHeight","elapsed","setInterval","popupUrl","includes","params","URLSearchParams","search","_e","createPaywall","config","creditsApi","state","emitter","existingGate","gate","contentSelector","renderer","overlay","init","shadowRoot","anchorEl","parentNode","insertBefore","nextSibling","_ccShadow","attachShadow","mode","createInlineShadowHost","primaryColor","fontFamily","theme","className","poweredBy","div","link","destroy","render","callbacks","meta","firstChild","removeChild","parent","cb","btn","onLogin","renderLogin","credits","badge","onPurchase","renderPurchase","requiredCredits","required","available","detail","onBuyMoreCredits","renderInsufficient","creditBalance","disabled","spinner","createTextNode","renderLoading","setButtonLoading","loading","createPaywallRenderer","bridge","authHandler","purchaseHandler","handleMessage","origins","push","getAllowedOrigins","msg","attach","e","detach","requestAuthorization","articleId","hostName","requestPurchase","requestLogin","onAuthorizationResponse","handler","onPurchaseResponse","createExtensionBridge","extensionAvailable","handleAccessGranted","creditsSpent","balance","hasAccess","isLoaded","isLoading","headless","doLogin","doPurchase","doBuyMoreCredits","emit","remainingBalance","onAccessGranted","encodeURIComponent","articleUrl","isLoggedIn","checkAccess","apiKey","title","pageTitle","result","purchaseArticle","postUrl","postName","success","err","onInsufficientCredits","onPurchaseRequired","error","onLoginRequired","extensionId","resolved","done","__CC_EXTENSION_LOADED","img","Image","onload","onerror","src","isExtensionAvailable","isAuthenticated","doesHaveAccess","_f","_g","login","purchase","buyMoreCredits","POSITION_KEY","PANEL_HOST_ID","AVATAR_COLORS","createCommentPanel","commentsApi","onClose","currentUserId","currentThreadId","currentComments","currentSort","viewingSubthreadFor","replyingToCommentId","editingCommentId","ensureRoot","r","createShadowHost","refreshUser","_id","getUserIdFromToken","updateLoginOverlay","loadComments","listEl","container","innerHTML","threadRes","ensureThread","pageUrl","hostname","renderError","commentsRes","getComments","sortBy","comments","thread","countEl","String","renderComments","buildTree","roots","replies","node","parentCommentId","icon","retry","backBtn","titleEl","classList","add","parentId","find","buildCommentEl","label","empty","paddingTop","renderSubthread","sub","sorted","sort","a","b","createdAt","getTime","likeCount","sortTree","comment","isReply","isOwn","authorId","author","authorName","firstName","lastName","trim","avatarBg","inis","first","last","toUpperCase","initials","card","commentId","header","authorRow","avatar","background","profilePicture","safeUrl","parsed","protocol","sanitizeUrl","startsWith","authorMeta","nameEl","timeEl","iso","d","toLocaleTimeString","hour","minute","toLocaleDateString","month","day","year","formatDate","raw","fragment","createDocumentFragment","lines","line","i","renderCommentContent","content","actions","replyBtn","action","likeBtn","hasLiked","ownerDiv","editBtn","deleteBtn","buildLoginOverlay","handleListClick","target","closest","textarea","placeholder","focus","showCancel","handleReply","wasLiked","res","toggleLike","handleLike","value","submitBtn","handleEdit","confirm","deleteComment","handleDelete","cancelBtn","hideCancel","cancelEdit","compose","closePanel","backdrop","panel","openPanel","backdropEl","newBackdrop","titleGroup","closeBtn","sortBar","sortLabel","list","editComment","postComment","threadId","handleSubmit","buildCompose","buildPanel","requestAnimationFrame","ContentCredits","client","current","user","subscribers","Object","assign","patch","fn","subscribe","indexOf","splice","reset","setUser","createState","listeners","off","arr","idx","on","console","warn","dispatchEvent","CustomEvent","bubbles","removeAll","keys","k","createEventEmitter","paywallModule","commentsModule","baseUrl","request","path","attempt","authRetried","serialisedBody","key","requestKey","promise","then","response","catch","isNetworkError","TypeError","isServerError","ms","sleep","pow","finally","post","put","createApiClient","encoded","createCommentsApi","rawConfig","_m","enableComments","debug","accountsUrl","paywallTemplate","onStateChange","onReady","onPurchased","onUserLogin","onUserLogout","onError","_h","_j","_k","_l","resolveConfig","instance","_start","earlyGate","widget","show","onOpen","badgeEl","mount","topPercent","saved","tabIndex","handle","dragging","startY","startTop","beginDrag","y","getBoundingClientRect","top","cursor","moveDrag","delta","pct","max","min","innerHeight","endDrag","preventDefault","stopPropagation","clientY","touches","passive","setCount","createCommentWidget","createComments","getState","openComments","closeComments","getToken","logout","version","script","currentScript","ds","ccApiKey","ccContentSelector","ccTeaserParagraphs","parseInt","ccEnableComments","ccExtensionId","ccDebug","readyState","autoInit"],"mappings":"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"}
1
+ {"version":3,"file":"content-credits.umd.min.js","sources":["../src/auth/token.ts","../src/auth/storage.ts","../src/auth/session.ts","../src/api/client.ts","../src/paywall/gate.ts","../src/ui/shadow.ts","../src/ui/sanitize.ts","../src/paywall/renderer.ts","../src/auth/popup.ts","../src/paywall/index.ts","../src/ui/styles.ts","../src/extension/bridge.ts","../src/extension/detector.ts","../src/comments/widget.ts","../src/comments/panel.ts","../src/index.ts","../src/api/credits.ts","../src/core/state.ts","../src/core/events.ts","../src/api/comments.ts","../src/core/config.ts","../src/comments/index.ts"],"sourcesContent":[null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null],"names":["decodeJwt","token","parts","split","length","base64","replace","padded","padEnd","json","decodeURIComponent","atob","map","c","charCodeAt","toString","slice","join","JSON","parse","_a","isTokenExpired","payload","exp","Date","now","SESSION_KEY","REFRESH_KEY","memoryToken","tokenStorage","set","sessionStorage","setItem","get","this","clear","stored","getItem","removeItem","has","refreshTokenStorage","localStorage","async","tryRefreshSession","apiBaseUrl","rt","controller","AbortController","timeoutId","setTimeout","abort","resp","fetch","method","headers","body","stringify","refreshToken","credentials","signal","clearTimeout","ok","data","accessToken","inFlight","Map","ApiError","Error","constructor","status","message","super","name","GATE_ATTR","createGate","options","gated","contentEl","hiddenNodes","hide","document","querySelector","selector","hasAttribute","paragraphs","Array","from","querySelectorAll","teaserParagraphs","hideFrom","childNodes","pivotIndex","findIndex","n","contains","compareDocumentPosition","Node","DOCUMENT_POSITION_FOLLOWING","forEach","HTMLElement","Text","_b","style","setProperty","call","_d","_c","setAttribute","display","prevPos","position","fadeEl","createElement","cssText","appendChild","reveal","removeProperty","removeAttribute","remove","isGated","removeShadowHost","id","host","getElementById","injectStyles","root","css","existing","textContent","dataset","ccStyles","setTextContent","el","str","tag","text","attrs","element","undefined","HOST_ID","isMobileDevice","ua","navigator","userAgent","test","window","matchMedia","matches","consumeTokenFromUrl","url","URL","location","href","searchParams","changed","param","delete","history","replaceState","scrubTokenFromUrl","opener","closed","postMessage","type","origin","close","openAuthPopup","authUrl","Promise","resolve","popup","settled","finish","clearInterval","timer","removeEventListener","onMessage","event","addEventListener","open","Math","round","screenX","outerWidth","screenY","outerHeight","elapsed","setInterval","popupUrl","includes","params","URLSearchParams","search","_e","createPaywall","config","creditsApi","state","emitter","existingGate","gate","contentSelector","renderer","overlay","init","shadowRoot","anchorEl","parentNode","insertBefore","nextSibling","_ccShadow","attachShadow","mode","createInlineShadowHost","primaryColor","fontFamily","theme","className","poweredBy","div","link","destroy","render","callbacks","meta","firstChild","removeChild","parent","cb","btn","onLogin","renderLogin","credits","badge","onPurchase","renderPurchase","requiredCredits","required","available","detail","onBuyMoreCredits","renderInsufficient","creditBalance","disabled","spinner","createTextNode","renderLoading","setButtonLoading","loading","createPaywallRenderer","bridge","authHandler","purchaseHandler","handleMessage","origins","push","getAllowedOrigins","msg","attach","e","detach","requestAuthorization","articleId","hostName","requestPurchase","requestLogin","onAuthorizationResponse","handler","onPurchaseResponse","createExtensionBridge","extensionAvailable","handleAccessGranted","creditsSpent","balance","hasAccess","isLoaded","isLoading","headless","doLogin","doPurchase","doBuyMoreCredits","emit","remainingBalance","onAccessGranted","encodeURIComponent","articleUrl","isLoggedIn","checkAccess","apiKey","title","pageTitle","result","purchaseArticle","postUrl","postName","success","err","onInsufficientCredits","onPurchaseRequired","error","onLoginRequired","extensionId","resolved","done","__CC_EXTENSION_LOADED","img","Image","onload","onerror","src","isExtensionAvailable","isAuthenticated","doesHaveAccess","_f","_g","login","purchase","buyMoreCredits","POSITION_KEY","PANEL_HOST_ID","AVATAR_COLORS","createCommentPanel","commentsApi","onClose","currentUserId","currentThreadId","currentComments","currentSort","viewingSubthreadFor","replyingToCommentId","editingCommentId","ensureRoot","r","createShadowHost","refreshUser","_id","getUserIdFromToken","updateLoginOverlay","loadComments","listEl","container","innerHTML","threadRes","ensureThread","pageUrl","hostname","renderError","commentsRes","getComments","sortBy","comments","thread","countEl","String","renderComments","buildTree","roots","replies","node","parentCommentId","icon","retry","backBtn","titleEl","classList","add","parentId","find","buildCommentEl","label","empty","paddingTop","renderSubthread","sub","sorted","sort","a","b","createdAt","getTime","likeCount","sortTree","comment","isReply","isOwn","authorId","author","authorName","firstName","lastName","trim","avatarBg","inis","first","last","toUpperCase","initials","card","commentId","header","authorRow","avatar","background","profilePicture","safeUrl","parsed","protocol","sanitizeUrl","startsWith","authorMeta","nameEl","timeEl","iso","d","toLocaleTimeString","hour","minute","toLocaleDateString","month","day","year","formatDate","raw","fragment","createDocumentFragment","lines","line","i","renderCommentContent","content","actions","replyBtn","action","likeBtn","hasLiked","ownerDiv","editBtn","deleteBtn","buildLoginOverlay","handleListClick","target","closest","textarea","placeholder","focus","showCancel","handleReply","wasLiked","res","toggleLike","handleLike","value","submitBtn","handleEdit","confirm","deleteComment","handleDelete","cancelBtn","hideCancel","cancelEdit","compose","closePanel","backdrop","panel","openPanel","backdropEl","newBackdrop","titleGroup","closeBtn","sortBar","sortLabel","list","editComment","postComment","threadId","handleSubmit","buildCompose","buildPanel","requestAnimationFrame","ContentCredits","client","current","user","subscribers","Object","assign","patch","fn","subscribe","indexOf","splice","reset","setUser","createState","listeners","off","arr","idx","on","console","warn","dispatchEvent","CustomEvent","bubbles","removeAll","keys","k","createEventEmitter","paywallModule","commentsModule","baseUrl","request","path","attempt","authRetried","serialisedBody","key","requestKey","promise","then","response","catch","isNetworkError","TypeError","isServerError","ms","sleep","pow","finally","post","put","createApiClient","encoded","createCommentsApi","rawConfig","normalizeArticleUrl","_m","enableComments","debug","accountsUrl","paywallTemplate","onStateChange","onReady","onPurchased","onUserLogin","onUserLogout","onError","_h","_j","_k","_l","resolveConfig","instance","_start","earlyGate","widget","show","onOpen","badgeEl","mount","topPercent","saved","tabIndex","handle","dragging","startY","startTop","beginDrag","y","getBoundingClientRect","top","cursor","moveDrag","delta","pct","max","min","innerHeight","endDrag","preventDefault","stopPropagation","clientY","touches","passive","setCount","createCommentWidget","createComments","getState","openComments","closeComments","getToken","logout","version","script","currentScript","ds","ccApiKey","ccContentSelector","ccTeaserParagraphs","parseInt","ccEnableComments","ccExtensionId","ccDebug","readyState","autoInit"],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@contentcredits/sdk",
3
- "version": "2.9.0",
3
+ "version": "2.11.0",
4
4
  "description": "Content Credits JS SDK — drop-in paywall and comments for any website",
5
5
  "author": "Content Credits",
6
6
  "license": "Apache-2.0",