1(self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[90065],{44109:e=>{e.exports={style:{fontFamily:"'Albert Sans'",fontStyle:"normal"},className:"__className_1d0d4e",variable:"__variable_1d0d4e"}},141112:(e,t,r)=>{"use strict";function n({reason:e,children:t}){return t}Object.defineProperty(t,"__esModule",{value:!0}),Object.defineProperty(t,"BailoutToCSR",{enumerable:!0,get:function(){return n}}),r(101980)},221957:(e,t,r)=>{"use strict";function n({moduleIds:e}){return null}Object.defineProperty(t,"__esModule",{value:!0}),Object.defineProperty(t,"PreloadChunks",{enumerable:!0,get:function(){return n}}),r(695155),r(447650),r(705214),r(602451),r(453887)},237514:(e,t,r)=>{"use strict";r.d(t,{AuthRedirectGuard:()=>m});var n=r(212115),o=r(573321),s=r(901427),i=r(677096),a=r(792939),u=r(32087),c=r(778282),l=r(837511);let d=!1;function f(e){try{return new URL(e,window.location.href).origin===window.location.origin}catch{return!1}}function h(e){return e instanceof TypeError}function m({layoutMode:e}){let{isLoaded:t,isSignedIn:r}=(0,a.useAppAuth)(),{isDemoMode:w}=(0,u._)(),b=(0,o.usePathname)(),v=(0,n.useRef)(!1),p=(0,n.useRef)(!1),[y,_]=(0,n.use
1State)(!1),g=(0,n.useCallback)(()=>{if(!v.current){let e;v.current=!0,window.__coachful_signing_out=!0,e=(0,l.JK)()?"mobile":"sign-in",window.location.replace(`/api/auth/sign-out?redirect=${e}`)}},[]);return(0,n.useEffect)(()=>{!function(){if(d)return;d=!0;let e=window.fetch.bind(window);window.fetch=async function(t,r){var n;let o,s="string"==typeof t?t:t instanceof URL?t.toString():t instanceof Request?t.url:"",i=f(s)&&("GET"===(n=r?.method?r.method.toUpperCase():t instanceof Request?t.method.toUpperCase():"GET")||"HEAD"===n||"OPTIONS"===n);try{o=await e(t,r)}catch(n){if(h(n)&&i){await new Promise(e=>window.setTimeout(e,500));try{o=await e(t,r)}catch(e){throw h(e)&&window.dispatchEvent(new CustomEvent("coachful:network-failure",{detail:{url:s}})),e}}else if(h(n)&&f(s))throw window.dispatchEvent(new CustomEvent("coachful:network-failure",{detail:{url:s}})),n;else throw n}return 401!==o.status||s.includes("/api/auth/")||window.dispatchEvent(new CustomEvent("auth:session-expired",{detail:{url:s}})),o}}()},[]),(0,n.useEffect)(()=>{let t=()=>{if(v.current||w||(0,c.m)(b)||"fullscreen"===e)return;let t=window.location.hostname;"coachful.co"!==t&&"www.coachful.co"!==t&&(console.warn("[AuthGuard] 401 detected â forcing sign-out redirect"),g())};return window.addEventListener("auth:session-expired",t),()=>window.removeEventListener("auth:session-expired",t)},[w,b,e,g]),(0,n.useEffect)(()=>{let e=setTimeout(()=>_(!0),2500);return()=>clearTimeout(e)},[]),(0,n.useEffect)(()=>{if(v.current||w)return;let n=setTimeout(()=>{if(v.current||!t||r)return;let n=window.location.hostname;"coachful.co"===n||"www.coachful.co"===n||(0,c.m)(b)||"fullscreen"!==e&&(console.warn("[AuthGuard] Hard timeout â forcing sign-out redirect"),g())},15e3);return()=>clearTimeout(n)},[t,r,w,b,e,g]),(0,n.useEffect)(()=>{if(v.current||!y||!t||r||w||(0,c.m)(b)||"fullscreen"===e)return;let n=window.location.hostname;if("coachful.co"===n||"www.coachful.co"===n)return;if(!document.cookie.includes("__session_hint="))return void g();if(p.current)return;p.current=!0;let o=new AbortController,a=setTimeout(()=>o.abort(),5e3);fetch("/api/auth/session-check",{signal:o.signal}).then(e=>e.json()).then(async e=>{if(!v.current)if(e.valid){if(e.customToken&&i.auth)try{await (0,s.p)(i.auth,e.customToken)}catch(e){console.warn("[AuthGuard] Custom token sign-in failed:",e)}p.current=!1}else g()}).catch(()=>{v.current||g()}).finally(()=>clearTimeout(a))},[y,t,r,w,b,e,g]),null}},278099:(e,t,r)=>{Promise.resolve().then(r.bind(r,491930)),Promise.resolve().then(r.t.bind(r,860914,23)),Promise.resolve().then(r.t.bind(r,44109,23)),Promise.resolve().then(r.t.bind(r,464689,23)),Promise.resolve().then(r.t.bind(r,451743,23)),Promise.resolve().then(r.bind(r,237514)),Promise.resolve().then(r.bind(r,704756)),Promise.resolve().then(r.bind(r,943650)),Promise.resolve().then(r.bind(r,32087)),Promise.resolve().then(r.bind(r,189270)),Promise.resolve().then(r.bind(r,792939)),Promise.resolve().then(r.bind(r,8783
165))},337206:(e,t,r)=>{"use strict";r.d(t,{default:()=>o.a});var n=r(875707),o=r.n(n)},417828:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),Object.defineProperty(t,"workAsyncStorageInstance",{enumerable:!0,get:function(){return n}});let n=(0,r(464054).createAsyncLocalStorage)()},464054:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0});var r={bindSnapshot:function(){return u},createAsyncLocalStorage:function(){return a},createSnapshot:function(){return c}};for(var n in r)Object.defineProperty(t,n,{enumerable:!0,get:r[n]});let o=Object.defineProperty(Error("Invariant: AsyncLocalStorage accessed in runtime where it is not available"),"__NEXT_ERROR_CODE",{value:"E504",enumerable:!1,configurable:!0});class s{disable(){throw o}getStore(){}run(){throw o}exit(){throw o}enterWith(){throw o}static bind(e){return e}}let i="u">typeof globalThis&&globalThis.AsyncLocalStorage;function a(){return i?new i:new s}function u(e){return i?i.bind(e):s.bind(e)}function c(){return i?i.snapshot():function(e,...t){return e(...t)}}},464689:e=>{e.exports={style:{fontFamily:"'IBM Plex Sans Arabic', 'IBM Plex Sans Arabic Fallback'",fontStyle:"normal"},className:"__className_22573d",variable:"__variable_22573d"}},491930:(e,t,r)=>{"use strict";r.d(t,{default:()=>s});var n=r(633418),o=r(695155);function s({locale:e,...t}){if(!e)throw Error(void 0);return(0,o.jsx)(n.Dk,{locale:e,...t})}},573321:(e,t,r)=>{"use strict";var n=r(674645);r.o(n,"useParams")&&r.d(t,{useParams:function(){return n.useParams}}),r.o(n,"usePathname")&&r.d(t,{usePathname:function(){return n.usePathname}}),r.o(n,"useRouter")&&r.d(t,{useRouter:function(){return n.useRouter}}),r.o(n,"useSearchParams")&&r.d(t,{useSearchParams:function(){return n.useSearchParams}})},704756:(e,t,r)=>{"use strict";r.d(t,{NetworkResumeGuard:()=>a});var n=r(212115);let o=!1;async function s(){let e=new AbortController,t=window.setTimeout(()=>e.abort(),2e3);try{return(await fetch("/api/health",{method:"HEAD",cache:"no-store",signal:e.signal})).ok}catch{return!1}finally{window.clearTimeout(t)}}async function i(){if(o||!navigator.onLine)return;o=!0;let e=await s();o=!1,e&&window.dispatchEvent(new CustomEvent("coachful:network-recovered"))}function a(){return(0,n.useEffect)(()=>{let e=()=>{window.setTimeout(()=>{i()},150)},t=()=>{i()};return window.addEventListener("online",e),window.addEventListener("coachful:network-failure",t),()=>{window.removeEventListener("online",e),window.removeEventListener("coachful:network-failure",t)}},[]),null}},705214:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),Object.defineProperty(t,"workAsyncStorage",{enumerable:!0,get:function(){return n.workAsyncStorageInstance}});let n=r(417828)},778282:(e,t,r)=>{"use strict";function n(e){return!!e&&(e.startsWith("/sign-in")||e.startsWith("/sign-up")||e.startsWith("/signup")||e.startsWith("/website")||e.startsWith("/onboarding")||e.startsWith("/start")||e.startsWith("/checkin")||e.startsWith("/join")||e.startsWith("/f/")||e.startsWith("/invite")||e.startsWith("/team-invite")||"/invoice"===e||e.startsWith("/invoice/")||e.startsWith("/book")||e.startsWith("/discover/events")||e.startsWith("/intake-call")||e.startsWith("/call/")||e.startsWith("/blog")||e.startsWith("/tools")||e.startsWith("/unfixated")||e.startsWith("/docs")||e.startsWith("/marketplace")||e.startsWith("/find-a-coac
1h")||e.startsWith("/lander")||e.startsWith("/marketing")||e.startsWith("/support")||e.startsWith("/mobile")||e.startsWith("/terms")||e.startsWith("/privacy")||e.startsWith("/refund-policy")||e.startsWith("/coach/onboarding")||e.startsWith("/coach/welcome")||e.startsWith("/coach/complete-signup")||e.startsWith("/auth/")||e.startsWith("/q/")||e.startsWith("/assessment/")||e.startsWith("/r/")||"/access-denied"===e||"/tenant-not-found"===e||"/upgrade-premium/form"===e||"/get-coach/form"===e)}function o(e,t){return t&&!!e?.startsWith("/discover/events")}r.d(t,{j:()=>o,m:()=>n})},860914:e=>{e.exports={style:{fontFamily:"'Geist'",fontStyle:"normal"},className:"__className_1bc983",variable:"__variable_1bc983"}},875707:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),Object.defineProperty(t,"default",{enumerable:!0,get:function(){return o}});let n=r(431836)._(r(968635));function o(e,t){let r={};"function"==typeof e&&(r.loader=e);let o={...r,...t};return(0,n.default)({...o,modules:o.loadableGenerated?.modules})}("function"==typeof t.default||"object"==typeof t.default&&null!==t.default)&&void 0===t.default.__esModule&&(Object.defineProperty(t.default,"__esModule",{value:!0}),Object.assign(t.default,t),e.exports=t.default)},901427:(e,t,r)=>{"use strict";r.d(t,{p:()=>n.a5});var n=r(934770)},968635:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),Object.defineProperty(t,"default",{enumerable:!0,get:function(){return u}});let n=r(695155),o=r(212115),s=r(141112);function i(e){return{default:e&&"default"in e?e.default:e}}r(221957);let a={loader:()=>Promise.resolve(i(()=>null)),loading:null,ssr:!0},u=function(e){let t={...a,...e},r=(0,o.lazy)(()=>t.loader().then(i)),u=t.loading;function c(e){let i=u?(0,n.jsx)(u,{isLoading:!0,pastDelay:!0,error:null}):null,a=!t.ssr||!!t.loading,c=a?o.Suspense:o.Fragment,l=t.ssr?(0,n.jsxs)(n.Fragment,{children:[null,(0,n.jsx)(r,{...e})]}):(0,n.jsx)(s.BailoutToCSR,{reason:"next/dynamic",children:(0,n.jsx)(r,{...e})});return(0,n.jsx)(c,{...a?{fallback:i}:{},children:l})}return c.displayName="LoadableComponent",c}}},e=>{e.O(0,[90988,73334,28960,67984,33418,49304,77805,97873,49389,44855,33216,92939,31382,28441,26890,77358],()=>e(e.s=278099)),_N_E=e.O()}]);
Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.