1(self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[758],{6500:()=>{},6619:()=>{},8836:()=>{},11348:()=>{},13498:()=>{},13996:()=>{},15146:()=>{},15791:(e,t,r)=>{"use strict";r.d(t,{A:()=>s});var n=r(53239),o=r(14481);let s=function(e){var t=(0,n.useRef)(e);t.current=e,(0,o.A)(function(){return function(){return t.current()}})}},17275:()=>{},17898:()=>{},27555:()=>{},28306:(e,t,r)=>{"use strict";r.d(t,{G:()=>a});var n=r(53239);let o=[1],s=e=>"object"==typeof e&&null!==e,i=(e,t)=>e.tenantId===t.tenantId&&e.userId===t.userId,a=e=>{let{appUrl:t,context:r,readyTimeoutMs:a,sessionTimeoutMs:u}=e,c=(0,n.useRef)(null),d=(0,n.useRef)(null),[l,p]=(0,n.useState)("connecting"),f=(0,n.useRef)(e);f.current=e,(0,n.useEffect)(()=>{let e=c.current;if(null===e)return;let r=f.current,n=(e=>{let t="u">typeof window,r=e.hostWindow??(t?window:void 0);if(void 0===r)throw Error("embed-bridge host: hostWindow is required outside the browser");let n=e.hostOrigin??(t?window.location.origin:void 0);if(void 0===n)throw Error("embed-bridge host: hostOrigin is required outside the browser");let a=new URL(e.appUrl).origin,u="u">typeof crypto&&"function"==typeof crypto.randomUUID?crypto.randomUUID():`${Date.now().toString(36)}-${Math.random().toString(36).slice(2)}`,c=e.readyTimeoutMs??15e3,d=e.sessionTimeoutMs??3e4,l=e.onWarn??(()=>{}),p="connecting",f=null,m=e.initialContext,h=null,b=()=>"u">typeof performance?performance.now():Date.now(),y=b(),g=null,w=!1,v=t=>{p!==t&&(p=t,e.onStatusChange?.(t))},S=setTimeout(()=>{"connecting"===p&&(l(`embed-bridge host: embed:ready timeout (${c}ms)`),v("timeout"))},c),k=()=>{null!==S&&(clearTimeout(S),S=null)},I=null,M=()=>{null!==I&&(clearTimeout(I),I=null)},x=e=>{f?.postMessage(e)},E=(e,t)=>`session subject mismatch (tenant match: ${e.tenantId===t.tenantId}, user match: ${e.userId===t.userId})`,U=t=>{let r=t.data;if(!(e=>{if(!s(e))return!1;switch(e.type){case"embed:session":let t;return s(t=e.session)&&"string"==typeof t.tenantId&&"string"==typeof t.userId;case"embed:session-unavailable":return"string"==typeof e.reason;default:return!1}})(r))return void l("embed-bridge host: unknown port message ignored");switch(r.type){case"embed:session-unavailable":M(),"awaiting-session"===p&&v("session-unavailable");break;case"embed:session":M(),i(m,r.session)?(h=r.session,(()=>{if(w||null===g)return;w=!0;let t=b();e.onHandshakeMetrics?.({totalMs:t-y,readyWaitMs:g-y,sessionWaitMs:t-g})})(),v("connected"),x({type:"kw:init",context:m})):(l(`embed-bridge host: ${E(m,r.session)}`),x({type:"kw:reauth-required",reason:"session-mismatch"}),v("session-mismatch"))}},C=t=>{var r;let n,i;if("disposed"===p||t.origin!==a)return;let c=e.iframe.contentWindow;if(null===c||t.source!==c)return void l("embed-bridge host: message source does not match target iframe");if(!(s(n=t.data)&&"kw-embed"===n.source&&"embed:ready"===n.type&&"string"==typeof n.channelId&&Array.isArray(n.supportedVersions)&&n.supportedVersions.every(e=>"number"==typeof e)))return;if(t.data.channelId!==u)return void l("embed-bridge host: channelId mismatch");let m=(r=t.data.supportedVersions,(i=o.filter(e=>r.includes(e)))[i.length-1]??null);if(null===m){k(),l(`embed-bridge host: no common protocol version (client supports: ${t.data.supportedVersions.join(", ")})`),v("unsupported-version");return}f?.close(),h=null;let y=new MessageChannel;(f=y.port1).onmessage=U,c.postMessage({source:"knowledgework",type:"kw:connect",version:m},a,[y.port2]),k(),null===g&&(g=b()),v("awaiting-session"),M(),I=setTimeout(()=>{I=null,"awaiting-session"===p&&(l(`embed-bridge host: embed:session timeout (${d}ms)`),v("session-unavailable"))},d)};r.addEventListener("message",C);let W=new URL(e.appUrl);return W.searchParams.set("kw_origin",n),W.searchParams.set("kw_channel",u),e.iframe.src=W.toString(),{getStatus:()=>p,setContext:e=>{if(m=e,"connected"===p){if(null!==h&&!i(e,h)){l(`embed-bridge host: ${E(e,h)} (context changed)`),x({type:"kw:reauth-required",reason:"session-mismatch"}),v("session-mismatch");return}x({type:"kw:context-changed",context:e})}},dispose:()=>{r.removeEventListener("message",C),k(),M(),f?.close(),f=null,v("disposed")}}})({appUrl:t,iframe:e,initialContext:r.context,onStatusChange:p,onWarn:e=>
1f.current.onWarn?.(e),onHandshakeMetrics:e=>f.current.onHandshakeMetrics?.(e),...void 0!==r.hostWindow?{hostWindow:r.hostWindow}:{},...void 0!==r.hostOrigin?{hostOrigin:r.hostOrigin}:{},...void 0!==a?{readyTimeoutMs:a}:{},...void 0!==u?{sessionTimeoutMs:u}:{}});return d.current=n,p(n.getStatus()),()=>{d.current=null,n.dispose()}},[t,a,u]);let m=JSON.stringify(r);return(0,n.useEffect)(()=>{d.current?.setContext(f.current.context)},[m]),{iframeRef:c,status:l}}},30950:()=>{},32749:()=>{},36923:()=>{},43351:()=>{},43426:()=>{},45548:()=>{},48225:()=>{},49911:()=>{},49968:()=>{},59747:()=>{},62912:()=>{},63147:()=>{},63943:()=>{},64964:(e,t,r)=>{"use strict";var n=r(23727),o=Symbol.for("react.transitional.element"),s=Symbol.for("react.portal"),i=(Symbol.for("react.fragment"),Symbol.for("react.strict_mode"),Symbol.for("react.profiler"),Symbol.for("react.consumer"),Symbol.for("react.context"),Symbol.for("react.forward_ref"),Symbol.for("react.suspense"),Symbol.for("react.memo"),Symbol.for("react.lazy")),a=(Symbol.for("react.activity"),Symbol.iterator),u={isMounted:function(){return!1},enqueueForceUpdate:function(){},enqueueReplaceState:function(){},enqueueSetState:function(){}},c=Object.assign,d={};function l(e,t,r){this.props=e,this.context=t,this.refs=d,this.updater=r||u}function p(){}function f(e,t,r){this.props=e,this.context=t,this.refs=d,this.updater=r||u}l.prototype.isReactComponent={},l.prototype.setState=function(e,t){if("object"!=typeof e&&"function"!=typeof e&&null!=e)throw Error("takes an object of state variables to update or a function which returns an object of state variables.");this.updater.enqueueSetState(this,e,t,"setState")},l.prototype.forceUpdate=function(e){this.updater.enqueueForceUpdate(this,e,"forceUpdate")},p.prototype=l.prototype;var m=f.prototype=new p;m.constructor=f,c(m,l.prototype),m.isPureReactComponent=!0;Object.prototype.hasOwnProperty;"function"==typeof reportError&&reportError},69073:()=>{},71447:()=>{},73970:()=>{},74361:(e,t,r)=>{"use strict";r(64964)},75165:()=>{},75623:()=>{},75630:()=>{},83575:(e,t,r)=>{"use strict";r.d(t,{A:()=>o});var n=r(53239);let o=function(e,t){var r,o=(r=(0,n.useRef)(!0)).current?(r.current=!1,!0):r.current;(0,n.useEffect)(function(){if(!o)return e()},t)}},86293:()=>{},90748:()=>{},90920:()=>{},93919:()=>{},94834:()=>{},96189:()=>{},98745:()=>{}}]);
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.