PageSourceSearch

https://www.catalyst.org/chunk-D6BD46BI.js

js catalyst.org collected 2026-10-02 02:11:57 UTC 10,994 bytes, 1 lines download raw bytes

1import{b as $}from"./chunk-HHAOVHNG.js";import{c as H}from"./chunk-BU6VRMIA.js";import{c as U,d as R}from"./chunk-I6GGKTS5.js";import{c as j}from"./chunk-X5BKIKCV.js";import{A as f,D as h,H as C,K as b,L as m,Q as g,R as F,S as y,W as D,Y as d,aa as V,g as x,ga as P,i as Y,j as G,k as N,p as O,wb as W}from"./chunk-NZVC6VJI.js";import{a as w,b as k,c as B,h as L}from"./chunk-USXCYQPF.js";var Z="member",X="Administrator";var z="catalyst.org";var q="catalystinc.org",Q=[z.toLowerCase(),q.toLowerCase()],ee="announcement-dismissed",te="analytics-device-id",v="bookmarks_seeded",K="bookmarks";var se="Bookmark Save Success Message",re="Bookmark Remove Success Message",oe="Bookmark Save Failure Message",ne="Bookmark Remove Failure Message",_e="Learn More",ce="supporter_permission",ie="article_page",Ee="error_page",Ae="page",ae="0628b95a-7306-4417-943c-0205268ae41f";var Se="United States",Te="Canada",pe="Webinar",Ne="Hybrid",le="In Person",Ie="us",Ce="canada",Oe="n/a";var Re=parseInt(process.env.PORT||"4200"),ue=process.env.PUBLIC_URL,Le=process.env.STATIC_MAX_AGE,fe=process.env.SESSION_SECRET,de=process.env.CACHE_TYPE,Ue=process.env.ISR_CACHE_TYPE,Me=process.env.AZURE_CACHE_TYPE,xe=parseInt(process.env.APRIMO_IMAGES_CACHE_TTL||"86400"),me=process.env.INTERNAL_SERVICE_API_KEY,ge=parseInt(process.env.APRIMO_IMAGES_MAX_PAGES||"2"),ye=parseInt(process.env.APRIMO_IMAGES_LOCK_TTL||"300"),De=process.env.APRIMO_IMAGES_ALT_TEXT_FEATURE_ENABLED==="true",Pe=process.env.USER_IDENTITY_DATA_TIMEOUT_IN_SECONDS,J=process.env.USER_IDTOKEN_DATA_TIMEOUT_IN_SECONDS,ve=process.env.LOCAL_HTTPS,Ke=process.env.LOCAL_SESSION,we=process.env.MSAL_EXTENSIONS_ID,ke=process.env.MSAL_TENANT_ID,Be=process.env.MSAL_CLIENT_ID,Ye=process.env.MSAL_CLIENT_SECRET,Ge=process.env.MSAL_TENANT_SUBDOMAIN,be=process.env.MSAL_B2C_USERFLOW_SIGNIN_PASSWORDLESS,Fe=process.env.MSAL_B2C_USERFLOW_SIGNIN_SSO,Ve=process.env.MSAL_B2C_USERFLOW_SIGNUP_SSO,We=process.env.MSAL_B2C_USERFLOW_SIGNUP_PASSWORDLESS,je=process.env.MSAL_B2C_USERFLOW_OTP_FLOW,He=process.env.MSAL_REDIRECT_URL,$e=process.env.MSAL_LOGOUT_REDIRECT_URI,Ze=process.env.CONTENTSTACK_API_KEY,Xe=process.env.CONTENTSTACK_DELIVERY_TOKEN,Je=process.env.CONTENTSTACK_MANAGEMENT_TOKEN,ze=process.env.CONTENTSTACK_ENVIRONMENT,qe=process.env.CONTENTSTACK_BRANCH,Qe=process.env.CONTENTSTACK_REGION,et=process.env.CONTENTSTACK_PREVIEW_TOKEN,tt=process.env.CONTENTSTACK_PREVIEW_HOST,st=process.env.CONTENTSTACK_API_HOST,rt=process.env.CONTENTSTACK_APP_HOST,ot=process.env.CONTENTSTACK_LIVE_PREVIEW,nt=process.env.CONTENTSTACK_CDN_URL,_t=process.env.CVENTS_CLIENT_ID,ct=process.env.CVENTS_CLIENT_SECRET,it=parseInt(process.env.CVENTS_API_MAX_AGE||"3600"),Et=parseInt(process.env.CVENTS_CACHE_TTL||"14400"),At=process.env.CATALYST_API_URL,at=process.env.CATALYST_API_KEY,St=process.env.CATALYST_OWNER_INVITE_TOKEN,Tt=process.env.CATALYST_INC_OWNER_INVITE_TOKEN,pt=process.env.AZURE_SEARCH_API_KEY,Nt=process.env.AZURE_SEARCH_URL,lt=process.env.AZURE_INDEX_ALIAS,It=process.env.AZURE_API_VERSION,Ct=process.env.AZURE_API_CONTENT_TYPE,Ot=process.env.FEATURE_FLAG_REGION_BASED_PERMISSIONS,ht=process.env.READING_TIME_WORD_COUNT||"200";var wt=(()=>{let l=class l{constructor(){this.http=P(j),this.ssr=P(H),this.isFetching=!1,this.subject=new x(null),this.allUsersSubject=new x(null),this.isFetchingAllUsers=!1,this.session$=this.subject.asObservable().pipe(y(1)),this.allUsers$=this.allUsersSubject.asObservable().pipe(y(1)),this._sessionFromIncomingRequest=null,this.isDoneFetchingUsers=W(!1),this.isDoneFetchingUsers$=$(this.isDoneFetchingUsers),this.verifySessionProof=e=>L(this,null,function*(){try{let r=e?.id_token;if(!r)return{isAuthenticated:!1};let n=yield this.verifyJwsWithDiscoveredKey(r);if(!n.ok)return{isAuthenticated:!1};let c=n.payload,o=Math.floor(Date.now()/1e3);if(typeof c.nbf=="number"&&o<c.nbf)return{isAuthenticated:!1};let E=Number(J);if(typeof c.iat=="number"){let _=o-c.iat;if(_<0)return{isAuthenticated:!1};if(_>E)return{isAuthenticated:!1}}let s=e??{},{id_token:t,proof:a,__verifiedClaims:S}=s,A=B(s,["id_token","proof","__verifiedClaims"]);return k(w({},A),{isAuthenticated:!0})}catch{return{isAuthenticated:!1}}})}getServerSessionSync(){return this.ssr.isPlatformServer()?this._sessionFromIncomingRequest:null}isAuthenticated(e){return this.ensure().pipe(O(s=>{let r=!!s?.isAuthenticated,n=!!s?.account?.onboarded;return e?r&&n:r}),h(()=>N(!1)))}isAdministrator(e){return this.ensure().pipe(O(s=>{let r=this.isAdministratorRole(s?.account?.role),n=!!s?.account?.owner;return e?r&&n:r&&!n}),h(()=>N(!1)))}isMemberRole(e){return e?.toLowerCase()===Z?.toLowerCase()}isAdministratorRole(e){return e?.toLowerCase()===X?.toLowerCase()}getAccount(){return this.ensure().pipe(O(e=>e?.account??null))}getSession(){return this.ensure()}
1update(){return this.subject.next(null),this.getSessionInternal().pipe(C(1))}fetch(){this.getSessionInternal().subscribe()}ensure(){return this.session$.pipe(D(e=>e?N(e):this.getSessionInternal()))}getSessionInternal(){if(!this.ssr.isPlatformBrowser())return N({isAuthenticated:!1});if(this.isFetching)return this.session$.pipe(f(r=>!!r),C(1));this.isFetching=!0;let e=R("/api/identity/session"),s={"Cache-Control":"no-cache"};return this.http.get(e.toString(),{headers:s}).pipe(g(2),C(1),D(r=>G(this.verifySessionProof(r))),d(r=>this.subject.next(r)),h(()=>N({isAuthenticated:!1})),m(()=>this.isFetching=!1))}verifyJwsWithDiscoveredKey(e){return L(this,null,function*(){let s=e.split(".");if(s.length!==3)return{ok:!1};let[r,n,c]=s,o=this.decodeB64uJson(r),E=this.decodeB64uJson(n),t=yield this.fetchJwkForToken(e);if(!t)return{ok:!1};let a=(globalThis.crypto??window.crypto).subtle,S=new TextEncoder().encode(`${r}.${n}`);if(t.kty==="RSA"&&o.alg==="RS256"){let A=yield a.importKey("jwk",t,{name:"RSASSA-PKCS1-v1_5",hash:"SHA-256"},!0,["verify"]),_=this.b64uToU8(c),i=yield a.verify({name:"RSASSA-PKCS1-v1_5"},A,this.toAB(_),this.toAB(new Uint8Array(S)));return i?{ok:i,payload:E}:{ok:!1}}if(t.kty==="EC"&&t.crv==="P-256"&&o.alg==="ES256"){let A=yield a.importKey("jwk",t,{name:"ECDSA",namedCurve:"P-256"},!0,["verify"]),_=this.joseRsToDer(this.b64uToU8(c)),i=yield a.verify({name:"ECDSA",hash:"SHA-256"},A,this.toAB(_),this.toAB(new Uint8Array(S)));return i?{ok:i,payload:E}:{ok:!1}}return{ok:!1}})}fetchJwkForToken(e){return L(this,null,function*(){let[s,r]=e.split(".");if(!s||!r)return null;let n=this.decodeB64uJson(s),c=this.decodeB64uJson(r);if(!n?.kid||!c?.iss)return null;let E=new URL(c.iss).host,t=E.endsWith(".b2clogin.com"),a=null;if(t){let S=E.split(".")[0],A=(c.tfp||c.acr||"").toString();if(!A)return null;let _=`https://${E}/${S}.onmicrosoft.com/v2.0/.well-known/openid-configuration?p=${encodeURIComponent(A)}`,i;try{let p=yield fetch(_,{cache:"no-store"});if(p.ok)i=yield p.json();else return null}catch{return null}let T=i?.jwks_uri;return T?((yield fetch(T,{cache:"no-store"}).then(p=>p.json()))?.keys||[]).find(p=>p.kid===n.kid)??null:null}try{a=c.iss.replace(/\/+$/,"")+"/.well-known/openid-configuration";let A=(yield fetch(a,{cache:"no-store"}).then(T=>T.ok?T.json():null))?.jwks_uri;return A?((yield fetch(A,{cache:"no-store"}).then(T=>T.json()))?.keys||[]).find(T=>T.kid===n.kid)??null:null}catch{return null}})}b64uToU8(e){let s="=".repeat((4-e.length%4)%4),r=(e+s).replace(/-/g,"+").replace(/_/g,"/"),n=atob(r),c=new Uint8Array(n.length);for(let o=0;o<n.length;o++)c[o]=n.charCodeAt(o);return c}decodeB64uJson(e){return JSON.parse(new TextDecoder().decode(this.b64uToU8(e)))}toAB(e){let s=new ArrayBuffer(e.byteLength);return new Uint8Array(s).set(e),s}joseRsToDer(e){if(e.length%2!==0)throw new Error("Invalid ECDSA r||s length");let s=e.length/2,r=_=>{let i=0;for(;i<_.length-1&&_[i]===0;)i++;return _.subarray(i)},n=_=>{if(_<128)return new Uint8Array([_]);let i=[];for(;_>0;)i.unshift(_&255),_>>=8;return new Uint8Array([128|i.length,...i])},c=_=>{let i=_.length>0&&(_[0]&128)!==0,T=(i?1:0)+_.length,u=n(T),I=new Uint8Array(1+u.length+T),p=0;return I[p++]=2,I.set(u,p),p+=u.length,i&&(I[p++]=0),I.set(_,p),I},o=c(r(e.subarray(0,s))),E=c(r(e.subarray(s))),t=o.length+E.length,a=n(t),S=new Uint8Array(2+a.length+t),A=0;return S[A++]=48,S.set(a,A),A+=a.length,S.set(o,A),A+=o.length,S.set(E,A),S}getAllUsers(){return this.allUsers$.pipe(d(e=>{!(Array.isArray(e)&&e.length>0)&&!this.isFetchingAllUsers&&this.ssr.isPlatformBrowser()&&this.fetchAllUsersProgressive().subscribe()}),f(e=>Array.isArray(e)))}fetchAllUsersProgressive(){if(!this.ssr.isPlatformBrowser())return N([]);if(this.isFetchingAllUsers)return this.allUsers$.pipe(f(o=>Array.isArray(o)));this.isFetchingAllUsers=!0;let e=R("/api/identity/users").toString(),s={"Cache-Control":"no-cache",authorization:`${U.internal_service_api_key}`},r=500,n=o=>this.http.get(e,{headers:s,params:{cursor:String(o),limit:String(r)}});return n(0).pipe(b(o=>{let E=o?.nextCursor??null;return E!==null?n(E):Y}),O(o=>o?.data??[]),F((o,E)=>o.concat(E),[]),d(o=>{this.allUsersSubject.next(o)}),h(o=>(this.allUsersSubject.next([]),N([]))),m(()=>{this.isFetchingAllUsers=!1,this.isDoneFetchingUsers.set(!0)}))}getUserFetchingStatus(){return this.isDoneFetchingUsers$}refreshAllUsers(){return this.ssr.isPlatformBrowser()?this.fetchAllUsersProgressive():N([])}updateUser(e){let s=R("/api/identity/updateUsers"),r={"Cache-Control":"no-cache",authorization:`${U.internal_service_api_key}`};return this.http.patch(s.toString(),e,{headers:r}).pipe(g(5),C(1))}getUserProfileById(e){let s=R("/api/identity/profile",{search:{userId:e}}),r={"Cache-Control":"no-cache",authorization:`${U.internal_service_api_key}`};return this.http.get(s.toString(),{headers:r}).pipe(C(1))}seedUserBookmarksFromSession(e){try{if(!this.ssr.isPlatformBrowser()||!e?.isAuthenticated)return;try{if(sessionStorage.getItem(v))return}catch{if(this._seededInMemory=this._seededInMemory||!1,this._seededInMemory)return;this._seededInMemory=!0}let s=e?.bookmarks;if(!Array.isArray(s)||s.length===0)return;let r=s.map(t=>({bookmark_id:t.bookmark_id,content_id:t.content_id,content_type_id:t.content_type??t.content_type_id,user_id:t.user_id,created_at:t.created_at,title:t.title??"",url:t.url??"",eyebrow:t.eyebrow??"",tags:t.tags??[],summary:t.summary??"",is_supporter_only:t.is_supporter_only})),n=[];try{let t=JSON.parse(localStorage.getItem(K)||"[]");n=Array.isArray(t)?t:t.list??[]}catch{}let c=t=>`${t.content_id}::${t.content_type_id}`,o=new Map;for(let t of n)o.set(c(t),t);for(let t of r)o.set(c(t),t);let E=Array.from(o.values()).sort((t,a)=>new Date(a.created_at||0).getTime()-new Date(t.created_at||0).getTime());try{E.length>0&&localStorage.setItem(K,JSON.stringify(E));try{sessionStorage.setItem(v,"true")}catch{}}catch{}}catch{}}};l.\u0275fac=function(s){return new(s||l)},l.\u0275prov=V({token:l,factory:l.\u0275fac,providedIn:"root"});let M=l;return M})();export{Z as a,X as b,Q as c,ee as d,te as e,v as f,K as g,se as h,re as i,oe as j,ne as k,_e as l,ce as m,ie as n,Ee as o,Ae as p,ae as q,Se as r,Te as s,pe as t,Ne as u,le as v,Ie as w,Ce as x,Oe as y,wt as z};

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.