@marketrix.ai/widget 4.0.134 → 4.0.135
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.
package/README.md
CHANGED
|
@@ -71,14 +71,15 @@ All modes also accept the common options below.
|
|
|
71
71
|
|
|
72
72
|
These apply to every mode (script attribute → config key):
|
|
73
73
|
|
|
74
|
-
| Config key | Script attribute | Type | Description
|
|
75
|
-
| ------------------------- | --------------------- | ------------- |
|
|
76
|
-
| `mtxApiHost` | `mtx-api-host` | string | API server URL, e.g. `https://api.marketrix.ai`. The widget has no baked-in API host — you must supply it.
|
|
77
|
-
| `container` | — | `HTMLElement` | Element to mount inside (programmatic only). Defaults to a container appended to `<body>`.
|
|
78
|
-
| `userId` | — | number | Associates widget activity with one of your users.
|
|
79
|
-
| `widget_position_z_index` | — | number | `z-index` floor for the launcher and panel. Raised to the widget's own layer token if you pass a lower value.
|
|
80
|
-
| `show_widget` | — | boolean | When `false`, the widget initializes fully but its UI stays hidden. Default `true`.
|
|
81
|
-
| `use_screenshare` | `mtx-use-screenshare` | boolean | When `false`, screen-share requests are auto-denied and the Share Screen button is hidden. Default `true`. Disable via `mtx-use-screenshare="false"`.
|
|
74
|
+
| Config key | Script attribute | Type | Description |
|
|
75
|
+
| ------------------------- | --------------------- | ------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
|
|
76
|
+
| `mtxApiHost` | `mtx-api-host` | string | API server URL, e.g. `https://api.marketrix.ai`. The widget has no baked-in API host — you must supply it. |
|
|
77
|
+
| `container` | — | `HTMLElement` | Element to mount inside (programmatic only). Defaults to a container appended to `<body>`. |
|
|
78
|
+
| `userId` | — | number | Associates widget activity with one of your users. |
|
|
79
|
+
| `widget_position_z_index` | — | number | `z-index` floor for the launcher and panel. Raised to the widget's own layer token if you pass a lower value. |
|
|
80
|
+
| `show_widget` | — | boolean | When `false`, the widget initializes fully but its UI stays hidden. Default `true`. |
|
|
81
|
+
| `use_screenshare` | `mtx-use-screenshare` | boolean | When `false`, screen-share requests are auto-denied and the Share Screen button is hidden. Default `true`. Disable via `mtx-use-screenshare="false"`. |
|
|
82
|
+
| `styleNonce` | `mtx-style-nonce` | string | A CSP nonce applied to the widget's injected `<style>` element. Required only if your `style-src` policy has no `'unsafe-inline'` — see [Content Security Policy](#content-security-policy). |
|
|
82
83
|
|
|
83
84
|
Widget **appearance and behavior** (position, colors, sizing, border radius, animation, enabled Tell/Show/Do features, visibility, greeting toast, optional session recording, header/body/greeting text, and quick-action chips) are configured in the Marketrix dashboard and fetched from the API at init. A hidden widget stays visible in the dashboard preview.
|
|
84
85
|
|
|
@@ -216,7 +217,7 @@ TypeScript types are bundled with the package:
|
|
|
216
217
|
|
|
217
218
|
- `MarketrixConfig` — full config for `initWidget` / `updateMarketrixConfig` (`mtxId`, `mtxKey`, `mtxApiHost`, `userId`, `show_widget`, `use_screenshare`, plus all widget appearance settings, optional).
|
|
218
219
|
- `AddWidgetConfig` — discriminated config for `mountWidget` (production / preview variants + common options).
|
|
219
|
-
- `ClientOwnedConfig` — the host-supplied options the API never sends (`mtxApiHost`, `userId`, `widget_position_z_index`, `show_widget`, `use_screenshare`).
|
|
220
|
+
- `ClientOwnedConfig` — the host-supplied options the API never sends (`mtxApiHost`, `userId`, `widget_position_z_index`, `show_widget`, `use_screenshare`, `styleNonce`).
|
|
220
221
|
- `MarketrixWidgetPreviewProps` — props for the `MarketrixWidgetPreview` component.
|
|
221
222
|
- `ChatMessage`, `WidgetState`, `InstructionType` (`'tell' | 'show' | 'do'`).
|
|
222
223
|
|
|
@@ -230,6 +231,24 @@ TypeScript types are bundled with the package:
|
|
|
230
231
|
|
|
231
232
|
---
|
|
232
233
|
|
|
234
|
+
## Content Security Policy
|
|
235
|
+
|
|
236
|
+
The widget mounts into a closed Shadow DOM and injects its own stylesheet as an inline `<style>`
|
|
237
|
+
element inside it (there is no external stylesheet to point a `<link>` at). A host page enforcing a
|
|
238
|
+
`style-src` policy with no `'unsafe-inline'` blocks that element, leaving the widget mounted but
|
|
239
|
+
entirely unstyled. If your policy is that strict, either:
|
|
240
|
+
|
|
241
|
+
- add `'unsafe-inline'` to `style-src` (simplest, and scoped to styles only), or
|
|
242
|
+
- generate a per-request nonce, add it to your `style-src` policy (`style-src 'nonce-<value>'`), and
|
|
243
|
+
pass the same value as `styleNonce` (programmatic) or `mtx-style-nonce` (script tag) — the widget
|
|
244
|
+
applies it to its injected `<style>` element.
|
|
245
|
+
|
|
246
|
+
The widget makes network requests only to the configured `mtxApiHost`, with credentials explicitly
|
|
247
|
+
omitted on every request (it authenticates via `mtxId`/`mtxKey`, never a cookie) — no `connect-src`
|
|
248
|
+
entry beyond your own API host is required, and no third-party origin is ever contacted.
|
|
249
|
+
|
|
250
|
+
---
|
|
251
|
+
|
|
233
252
|
## License
|
|
234
253
|
|
|
235
254
|
Apache License 2.0 — see the `LICENSE` file.
|
|
@@ -14,8 +14,13 @@
|
|
|
14
14
|
* from it, since without that two applications on one origin would leak one tenant's transcript into
|
|
15
15
|
* another's.
|
|
16
16
|
*
|
|
17
|
-
*
|
|
18
|
-
* excluded
|
|
17
|
+
* `writeChatSnapshot`'s own parameter is `{messages, currentMode, isOpen}` — chat_id, config and
|
|
18
|
+
* timestamp are deliberately excluded from THAT function's input, though `config` (via `setConfig`)
|
|
19
|
+
* and `chat_id`/`timestamp` (via `updateContext`) are still part of the one persisted record on disk;
|
|
20
|
+
* `config` there is the tenant's own `mtxId`/`mtxKey`/`mtxApiHost`/`userId`/rendered settings — no
|
|
21
|
+
* broader PII, and `mtxId`/`mtxKey` are already fully public in the host page's own script-tag markup,
|
|
22
|
+
* not a secret this adds exposure to. `StoredMessage` is the ONE place `content` still exists as a
|
|
23
|
+
* field: a live `ChatMessage` has
|
|
19
24
|
* none (every reader derives `messageText(parts)` instead), but a transcript written before `parts`
|
|
20
25
|
* existed has only `content` on disk, so `readChatSnapshot` backfills a text part from it and
|
|
21
26
|
* `writeChatSnapshot` derives `content` back from `parts` on the way out, keeping the persisted shape
|
|
@@ -4,7 +4,9 @@
|
|
|
4
4
|
*
|
|
5
5
|
* `ClientOwnedConfig` holds host-supplied knobs the api never sends (`show_widget: false` still
|
|
6
6
|
* initializes the widget fully and only hides its UI; `use_screenshare: false` auto-denies
|
|
7
|
-
* screen-access requests and hides the Share Screen button; both default true
|
|
7
|
+
* screen-access requests and hides the Share Screen button; both default true; `styleNonce` reaches
|
|
8
|
+
* the injected shadow-root `<style>` element for a host running a strict `style-src` CSP with no
|
|
9
|
+
* `'unsafe-inline'`). `MarketrixConfig` is
|
|
8
10
|
* deliberately FLAT so api settings spread straight in — `mtxId`+`mtxKey` is the credential, while
|
|
9
11
|
* `mtxApp` is stamped internally after validation and never an input, since an application id is
|
|
10
12
|
* guessable and authenticates nothing. `ValidWidgetConfig` is a `MarketrixConfig` run through
|
|
@@ -29,6 +31,7 @@ export interface ClientOwnedConfig {
|
|
|
29
31
|
widget_position_z_index?: number;
|
|
30
32
|
show_widget?: boolean;
|
|
31
33
|
use_screenshare?: boolean;
|
|
34
|
+
styleNonce?: string;
|
|
32
35
|
}
|
|
33
36
|
export type MarketrixConfig = Partial<WidgetRenderedSettings> & ClientOwnedConfig & {
|
|
34
37
|
mtxId?: string;
|
|
@@ -11,7 +11,7 @@ interface WidgetMount {
|
|
|
11
11
|
export declare const widgetState: {
|
|
12
12
|
mount: WidgetMount | null;
|
|
13
13
|
};
|
|
14
|
-
export declare const createWidgetContainer: (parentContainer?: HTMLElement) => {
|
|
14
|
+
export declare const createWidgetContainer: (parentContainer?: HTMLElement, styleNonce?: string) => {
|
|
15
15
|
container: HTMLElement;
|
|
16
16
|
shadowRoot: ShadowRoot;
|
|
17
17
|
mountEl: HTMLElement;
|
package/dist/widget.mjs
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import*as e from"react";import t,{createContext as n,createElement as r,forwardRef as o,useCallback as i,useContext as s,useEffect as a,useImperativeHandle as c,useLayoutEffect as l,useMemo as u,useRef as d,useState as p,useSyncExternalStore as h,useSyncExternalStore as f}from"react";import{createRoot as m}from"react-dom/client";import*as g from"react-dom";import{Fragment as y,jsx as b,jsxs as v}from"react/jsx-runtime";function w(e){return Array.isArray(e)?e:null==e?[]:[e]}var x="orpc",S=class extends Error{constructor(...e){super(...e),this.name="AbortError"}};function k(e){let t;return()=>{if(t)return t.result;const n=e();return t={result:n},n}}function C(){return globalThis["__@orpc/shared@1.15.1/otel/config__"]}function E(e,t={},n){return(C()?.tracer)?.startSpan(e,t,n)}function I(e,t,n={}){if(!e)return;const r=function(e){if(e instanceof Error){const t={message:e.message,name:e.name,stack:e.stack};return!("code"in e)||"string"!=typeof e.code&&"number"!=typeof e.code||(t.code=e.code),t}return{message:String(e)}}(t);e.recordException(r),n.signal?.aborted&&n.signal.reason===t||e.setStatus({code:2,message:r.message})}async function M({name:e,context:t,...n},r){const o=C()?.tracer;if(!o)return r();const i=async e=>{try{return await r(e)}catch(t){throw I(e,t,n),t}finally{e.end()}};return t?o.startActiveSpan(e,n,t,i):o.startActiveSpan(e,n,i)}async function T(e,t){const n=C();if(!e||!n)return t();const r=n.trace.setSpan(n.context.active(),e);return n.context.with(r,t)}function R(e){return!(!e||"object"!=typeof e)&&"next"in e&&"function"==typeof e.next&&Symbol.asyncIterator in e&&"function"==typeof e[Symbol.asyncIterator]}var O=Symbol.asyncDispose??Symbol.for("asyncDispose"),A=class{#e=!1;#t=!1;#n;#r;constructor(e,t){this.#n=t,this.#r=function(e){let t=Promise.resolve();return(...n)=>t=t.catch(()=>{}).then(()=>e(...n))}(async()=>{if(this.#e)return{done:!0,value:void 0};try{const t=await e();return t.done&&(this.#e=!0),t}catch(t){throw this.#e=!0,t}finally{this.#e&&!this.#t&&(this.#t=!0,await this.#n("next"))}})}next(){return this.#r()}async return(e){return this.#e=!0,this.#t||(this.#t=!0,await this.#n("return")),{done:!0,value:e}}async throw(e){throw this.#e=!0,this.#t||(this.#t=!0,await this.#n("throw")),e}async[O](){this.#e=!0,this.#t||(this.#t=!0,await this.#n("dispose"))}[Symbol.asyncIterator](){return this}};function _({name:e,...t},n){let r;return new A(async()=>{r??=E(e);try{const e=await T(r,()=>n.next());return r?.addEvent(e.done?"completed":"yielded"),e}catch(o){throw I(r,o,t),o}},async e=>{try{"next"!==e&&await T(r,()=>n.return?.())}catch(o){throw I(r,o,t),o}finally{r?.end()}})}function D(e,t,n){const r=(t,o)=>{const i=e[o];return i?i({...t,next:(e=t)=>r(e,o+1)}):n(t)};return r(t,0)}function P(e){if(e)return JSON.parse(e)}function N(e){return JSON.stringify(e)}function L(e){if(!e||"object"!=typeof e)return!1;const t=Object.getPrototypeOf(e);return t===Object.prototype||!t||!t.constructor}function F(e){return!!e&&("object"==typeof e||"function"==typeof e)}function z(e,...t){return"function"==typeof e?e(...t):e}function $(e){return new Proxy(e,{get(e,t,n){const r=Reflect.get(e,t,n);return"then"!==t||"function"!=typeof r?r:new Proxy(r,{apply(t,n,r){if(2!==r.length||r.some(e=>{return!("function"==typeof(t=e)&&W.test(t.toString()));var t}))return Reflect.apply(t,n,r);let o=!0;r[0].call(n,$(new Proxy(e,{get:(e,t,n)=>{if(!o||"then"!==t)return Reflect.get(e,t,n);o=!1}})))}})}})}var B,W=/^\s*function\s*\(\)\s*\{\s*\[native code\]\s*\}\s*$/,U=/* @__PURE__ */new Set(["bind","valueOf","toString","toJSON"]),H={BAD_REQUEST:{status:400,message:"Bad Request"},UNAUTHORIZED:{status:401,message:"Unauthorized"},FORBIDDEN:{status:403,message:"Forbidden"},NOT_FOUND:{status:404,message:"Not Found"},METHOD_NOT_SUPPORTED:{status:405,message:"Method Not Supported"},NOT_ACCEPTABLE:{status:406,message:"Not Acceptable"},TIMEOUT:{status:408,message:"Request Timeout"},CONFLICT:{status:409,message:"Conflict"},PRECONDITION_FAILED:{status:412,message:"Precondition Failed"},PAYLOAD_TOO_LARGE:{status:413,message:"Payload Too Large"},UNSUPPORTED_MEDIA_TYPE:{status:415,message:"Unsupported Media Type"},UNPROCESSABLE_CONTENT:{status:422,message:"Unprocessable Content"},TOO_MANY_REQUESTS:{status:429,message:"Too Many Requests"},CLIENT_CLOSED_REQUEST:{status:499,message:"Client Closed Request"},INTERNAL_SERVER_ERROR:{status:500,message:"Internal Server Error"},NOT_IMPLEMENTED:{status:501,message:"Not Implemented"},BAD_GATEWAY:{status:502,message:"Bad Gateway"},SERVICE_UNAVAILABLE:{status:503,message:"Service Unavailable"},GATEWAY_TIMEOUT:{status:504,message:"Gateway Timeout"}},j=class e extends Error{defined;code;status;data;static{const t=Symbol.for("__@orpc/client@1.15.1/error/ORPC_ERROR_CONSTRUCTORS__");globalThis[t]??=/* @__PURE__ */new WeakSet,(B=globalThis[t]).add(e)}constructor(e,...t){const n=function(e){return e[0]??{}}(t);if(void 0!==n.status&&!q(n.status))throw new Error("[ORPCError] Invalid error status code.");const r=function(e,t){return t||H[e]?.message||e}(e,n.message);super(r,n),this.code=e,this.status=function(e,t){return t??H[e]?.status??500}(e,n.status),this.defined=n.defined??!1,this.data=n.data}toJSON(){return{defined:this.defined,code:this.code,status:this.status,message:this.message,data:this.data}}static[Symbol.hasInstance](e){if(B.has(this)){const t=function(e){return F(e)?Object.getPrototypeOf(e)?.constructor:null}(e);if(t&&B.has(t))return!0}return super[Symbol.hasInstance](e)}};function q(e){return e<200||e>=400}function V(e){if(!L(e))return!1;const t=["defined","code","status","message","data"];return!Object.keys(e).some(e=>!t.includes(e))&&"defined"in e&&"boolean"==typeof e.defined&&"code"in e&&"string"==typeof e.code&&"status"in e&&"number"==typeof e.status&&q(e.status)&&"message"in e&&"string"==typeof e.message}function Y(e,t={}){return new j(e.code,{...t,...e})}var K=class extends TypeError{},X=class extends TypeError{},G=class extends Error{data;constructor(e){super(e?.message??"An error event was received",e),this.data=e?.data}},J=/\r\n|\r(?!\n)|\n/,Z=/(?:\r\n|\r(?!\n)|\n){2}/,Q=/(?:\r\n|\r(?!\n)|\n){2}/g;function ee(e){const t={data:void 0,event:void 0,id:void 0,retry:void 0,comments:[]};for(const n of e.split(J)){if(""===n)continue;const e=n.indexOf(":"),r=-1===e?"":n.slice(32===n.charCodeAt(e+1)?e+2:e+1);if(0!==e)switch(-1===e?n:n.slice(0,e)){case"data":t.data=void 0===t.data?r:`${t.data}\n${r}`;break;case"event":t.event=r;break;case"id":t.id=r;break;case"retry":{const e=Number.parseInt(r,10);e>=0&&e.toString()===r&&(t.retry=e);break}}else t.comments.push(r)}return t}var te=class{constructor(e={}){this.options=e}pending=[];tail="";discardLeadingLF=!1;feed(e){if(""===e)return;if(this.discardLeadingLF&&(this.discardLeadingLF=!1,10===e.charCodeAt(0)&&""===(e=e.slice(1))))return;const t=this.tail+e;if(!Z.test(t))return this.pending.push(e),void(this.tail=t.slice(-3));this.pending.push(e);const n=1===this.pending.length?e:this.pending.join(""),r=n.length-t.length,o=[];let i=0;for(const a of t.matchAll(Q))o.push(n.slice(i,r+a.index)),i=r+a.index+a[0].length;const s=n.slice(i);this.pending.length=0,this.tail=s.slice(-3),""===s?this.discardLeadingLF=13===e.charCodeAt(e.length-1):this.pending.push(s);for(const a of o){const e=ee(a);this.options.onEvent&&this.options.onEvent(e)}}end(){if(0!==this.pending.length)throw new X("Event Iterator ended before complete")}},ne=class extends TransformStream{constructor(){let e;super({start(t){e=new te({onEvent:e=>{t.enqueue(e)}})},transform(t){e.feed(t)},flush(){e.end()}})}},re=/\r\n|[\n\r]/,oe=/\r\n|[\n\r]/g;function ie(e){return re.test(e)}function se(e){if(ie(e))throw new K("Event's id must not contain a carriage return or newline character")}function ae(e){if(!Number.isInteger(e)||e<0)throw new K("Event's retry must be a integer and >= 0")}function ce(e){if(ie(e))throw new K("Event's comment must not contain a carriage return or newline character")}function le(e){let t="";var n;return t+=function(e){let t="";for(const n of e??[])ce(n),t+=`: ${n}\n`;return t}(e.comments),void 0!==e.event&&(function(e){if(ie(e))throw new K("Event's event must not contain a carriage return or newline character")}(e.event),t+=`event: ${e.event}\n`),void 0!==e.retry&&(ae(e.retry),t+=`retry: ${e.retry}\n`),void 0!==e.id&&(se(e.id),t+=`id: ${e.id}\n`),t+=void 0===(n=e.data)?"":`data: ${n.replace(oe,"\ndata: ")}\n`,t+="\n",t}var ue=Symbol("ORPC_EVENT_SOURCE_META");function de(e,t){if(void 0===t.id&&void 0===t.retry&&!t.comments?.length)return e;if(void 0!==t.id&&se(t.id),void 0!==t.retry&&ae(t.retry),void 0!==t.comments)for(const n of t.comments)ce(n);return new Proxy(e,{get:(e,n,r)=>n===ue?t:Reflect.get(e,n,r)})}function pe(e){return F(e)?Reflect.get(e,ue):void 0}function he(e,t){const n=async e=>{let n=await t.error(e);if(n!==e){const t=pe(e);t&&F(n)&&(n=de(n,t))}return n};return new A(async()=>{const{done:r,value:o}=await(async()=>{try{return await e.next()}catch(t){throw await n(t)}})();let i=await t.value(o,r);if(i!==o){const e=pe(o);e&&F(i)&&(i=de(i,e))}return{done:r,value:i}},async()=>{try{await(e.return?.())}catch(t){throw await n(t)}})}function fe(e,t={}){const n=t.path??[];return $(new Proxy(async(...[t,r={}])=>await e.call(n,t,function(e){return{...e,context:e.context??{}}}(r)),{get:(r,o)=>"string"!=typeof o||U.has(o)?Reflect.get(r,o):fe(e,{...t,path:[...n,o]})}))}function me(e,t={}){return e.forEach((e,n)=>{Array.isArray(t[n])?t[n].push(e):void 0!==t[n]?t[n]=[t[n],e]:t[n]=e}),t}var ge=class{plugins;constructor(e=[]){this.plugins=[...e].sort((e,t)=>(e.order??0)-(t.order??0))}init(e){for(const t of this.plugins)t.init?.(e)}},ye=class{constructor(e,t,n={}){this.codec=e,this.sender=t,new ge(n.plugins).init(n),this.interceptors=w(n.interceptors),this.clientInterceptors=w(n.clientInterceptors)}interceptors;clientInterceptors;call(e,t,n){return M({name:`${x}.${e.join("/")}`,signal:n.signal},r=>(r?.setAttribute("rpc.system",x),r?.setAttribute("rpc.method",e.join(".")),R(t)&&(t=_({name:"consume_event_iterator_input",signal:n.signal},t)),D(this.interceptors,{...n,path:e,input:t},async({path:e,input:t,...n})=>{const o=C();let i;const s=o?.trace.getActiveSpan()??r;s&&o&&(i=o?.trace.setSpan(o.context.active(),s));const a=await M({name:"encode_request",context:i},()=>this.codec.encode(e,t,n)),c=await D(this.clientInterceptors,{...n,input:t,path:e,request:a},({input:e,path:t,request:n,...r})=>M({name:"send_request",signal:r.signal,context:i},()=>this.sender.call(n,r,t,e))),l=await M({name:"decode_response",context:i},()=>this.codec.decode(c,n,e,t));return R(l)?_({name:"consume_event_iterator_output",signal:n.signal},l):l})))}},be=class{customSerializers;constructor(e={}){if(this.customSerializers=e.customJsonSerializers??[],this.customSerializers.length!==new Set(this.customSerializers.map(e=>e.type)).size)throw new Error("Custom serializer type must be unique.")}serialize(e,t=[],n=[],r=[],o=[]){for(const i of this.customSerializers)if(i.condition(e)){const s=this.serialize(i.serialize(e),t,n,r,o);return n.push([i.type,...t]),s}if(e instanceof Blob)return r.push(t),o.push(e),[e,n,r,o];if("bigint"==typeof e)return n.push([0,...t]),[e.toString(),n,r,o];if(e instanceof Date)return n.push([1,...t]),Number.isNaN(e.getTime())?[null,n,r,o]:[e.toISOString(),n,r,o];if(Number.isNaN(e))return n.push([2,...t]),[null,n,r,o];if(e instanceof URL)return n.push([4,...t]),[e.toString(),n,r,o];if(e instanceof RegExp)return n.push([5,...t]),[e.toString(),n,r,o];if(e instanceof Set){const i=this.serialize(Array.from(e),t,n,r,o);return n.push([6,...t]),i}if(e instanceof Map){const i=this.serialize(Array.from(e.entries()),t,n,r,o);return n.push([7,...t]),i}if(Array.isArray(e))return[e.map((e,i)=>void 0===e?(n.push([3,...t,i]),null):this.serialize(e,[...t,i],n,r,o)[0]),n,r,o];if(L(e)){const i={};for(const s in e)"toJSON"===s&&"function"==typeof e[s]||(i[s]=this.serialize(e[s],[...t,s],n,r,o)[0]);return[i,n,r,o]}return[e,n,r,o]}deserialize(e,t,n,r){const o={data:e};n&&r&&n.forEach((e,t)=>{let n=o,i="data";e.forEach(e=>{if(n=n[i],i=e,!Object.hasOwn(n,i))throw new Error(`Security error: accessing non-existent path during deserialization. Path segment: ${i}`)}),n[i]=r(t)});for(const i of t){const e=i[0];let t=o,n="data";for(let r=1;r<i.length;r++)if(t=t[n],n=i[r],!Object.hasOwn(t,n))throw new Error(`Security error: accessing non-existent path during deserialization. Path segment: ${n}`);for(const r of this.customSerializers)if(r.type===e){t[n]=r.deserialize(t[n]);break}switch(e){case 0:t[n]=BigInt(t[n]);break;case 1:t[n]=new Date(t[n]??"Invalid Date");break;case 2:t[n]=NaN;break;case 3:t[n]=void 0;break;case 4:t[n]=new URL(t[n]);break;case 5:{const[,e,r]=t[n].match(/^\/(.*)\/([a-z]*)$/);t[n]=new RegExp(e,r);break}case 6:t[n]=new Set(t[n]);break;case 7:t[n]=new Map(t[n])}}return o.data}},ve=class{constructor(e,t){this.serializer=e,this.baseUrl=t.url,this.maxUrlLength=t.maxUrlLength??2083,this.fallbackMethod=t.fallbackMethod??"POST",this.expectedMethod=t.method??this.fallbackMethod,this.headers=t.headers??{}}baseUrl;maxUrlLength;fallbackMethod;expectedMethod;headers;async encode(e,t,n){let r=function(e){return"function"==typeof e.forEach?me(e):e}(await z(this.headers,n,e,t));void 0!==n.lastEventId&&(r=function(e,t){const n={...e};for(const r in t)Array.isArray(t[r])?n[r]=[...w(n[r]),...t[r]]:void 0!==t[r]&&(Array.isArray(n[r])?n[r]=[...n[r],t[r]]:void 0!==n[r]?n[r]=[n[r],t[r]]:n[r]=t[r]);return n}(r,{"last-event-id":n.lastEventId}));const o=await z(this.expectedMethod,n,e,t),i=await z(this.baseUrl,n,e,t),s=new URL(i);s.pathname=`${s.pathname.replace(/\/$/,"")}${function(e){return`/${e.map(encodeURIComponent).join("/")}`}(e)}`;const a=this.serializer.serialize(t);if(!("GET"!==o||a instanceof FormData||R(a))){const i=await z(this.maxUrlLength,n,e,t),c=new URL(s);if(c.searchParams.append("data",N(a)),c.toString().length<=i)return{body:void 0,method:o,headers:r,url:c,signal:n.signal}}return{url:s,method:"GET"===o?this.fallbackMethod:o,headers:r,body:a,signal:n.signal}}async decode(e){const t=!q(e.status),n=await(async()=>{let t=!1;try{const n=await e.body();return t=!0,this.serializer.deserialize(n)}catch(n){if(!t)throw new Error("Cannot parse response body, please check the response body and content-type.",{cause:n});throw new Error("Invalid RPC response format.",{cause:n})}})();if(!t){if(V(n))throw Y(n);throw new j((r=e.status,Object.entries(H).find(([,e])=>e.status===r)?.[0]??"MALFORMED_ORPC_ERROR_RESPONSE"),{status:e.status,data:{...e,body:n}})}var r;return n}},we=class{constructor(e){this.jsonSerializer=e}serialize(e){return R(e)?he(e,{value:async e=>this.#o(e,!1),error:async e=>{return new G({data:this.#o((t=e,t instanceof j?t:new j("INTERNAL_SERVER_ERROR",{message:"Internal server error",cause:t})).toJSON(),!1),cause:e});var t}}):this.#o(e,!0)}#o(e,t){const[n,r,o,i]=this.jsonSerializer.serialize(e),s=0===r.length?void 0:r;if(!t||0===i.length)return{json:n,meta:s};const a=new FormData;return a.set("data",N({json:n,meta:s,maps:o})),i.forEach((e,t)=>{a.set(t.toString(),e)}),a}deserialize(e){return R(e)?he(e,{value:async e=>this.#i(e),error:async e=>{if(!(e instanceof G))return e;const t=this.#i(e.data);return V(t)?Y(t,{cause:e}):new G({data:t,cause:e})}}):this.#i(e)}#i(e){if(void 0===e)return;if(!(e instanceof FormData))return this.jsonSerializer.deserialize(e.json,e.meta??[]);const t=JSON.parse(e.get("data"));return this.jsonSerializer.deserialize(t.json,t.meta??[],t.maps,t=>e.get(t.toString()))}},xe=class extends ye{constructor(e,t){const n=new be(t),r=new we(n);super(new ve(r,t),e,t)}},Se=class extends ge{initRuntimeAdapter(e){for(const t of this.plugins)t.initRuntimeAdapter?.(e)}},ke=class{fetch;toFetchRequestOptions;adapterInterceptors;constructor(e){new Se(e.plugins).initRuntimeAdapter(e),this.fetch=e.fetch??globalThis.fetch.bind(globalThis),this.toFetchRequestOptions=e,this.adapterInterceptors=w(e.adapterInterceptors)}async call(e,t,n,r){const o=function(e,t={}){const n=function(e,t=new Headers){for(const[n,r]of Object.entries(e))if(Array.isArray(r))for(const e of r)t.append(n,e);else void 0!==r&&t.append(n,r);return t}(e.headers),r=function(e,t,n={}){if(e instanceof ReadableStream)return e;const r=t.get("content-disposition");return t.delete("content-type"),t.delete("content-disposition"),void 0!==e?e instanceof Blob?(t.set("content-type",e.type),t.set("content-length",e.size.toString()),t.set("content-disposition",r??function(e,t="inline"){return`${t}; filename="${e.replace(/[^\x20-\x7E]/g,"_").replace(/"/g,'\\"')}"; filename*=utf-8''${encodeURIComponent(e).replace(/['()*]/g,e=>`%${e.charCodeAt(0).toString(16).toUpperCase()}`).replace(/%(7C|60|5E)/g,(e,t)=>String.fromCharCode(Number.parseInt(t,16)))}`}(e instanceof File?e.name:"blob")),e):e instanceof FormData||e instanceof URLSearchParams?e:R(e)?(t.set("content-type","text/event-stream"),function(e,t={}){const n=t.eventIteratorKeepAliveEnabled??!0,r=t.eventIteratorKeepAliveInterval??5e3,o=t.eventIteratorKeepAliveComment??"",i=t.eventIteratorInitialCommentEnabled??!0,s=t.eventIteratorInitialComment??"";let a,c,l=!1;return new ReadableStream({start(e){c=E("stream_event_iterator"),i&&e.enqueue(le({comments:[s]}))},async pull(t){try{n&&(a=setInterval(()=>{t.enqueue(le({comments:[o]})),c?.addEvent("keepalive")},r));const i=await T(c,()=>e.next());if(clearInterval(a),l)return;const s=pe(i.value);if(!i.done||void 0!==i.value||void 0!==s){const e=i.done?"done":"message";t.enqueue(le({...s,event:e,data:N(i.value)})),c?.addEvent(e)}i.done&&(t.close(),c?.end())}catch(i){if(clearInterval(a),l)return;i instanceof G?(t.enqueue(le({...pe(i),event:"error",data:N(i.data)})),c?.addEvent("error"),t.close()):(I(c,i),t.error(i)),c?.end()}},async cancel(){try{l=!0,clearInterval(a),c?.addEvent("cancelled"),await T(c,()=>e.return?.())}catch(t){throw I(c,t),t}finally{c?.end()}}}).pipeThrough(new TextEncoderStream)}(e,n)):(t.set("content-type","application/json"),N(e)):void 0}(e.body,n,t);return new Request(e.url,{signal:e.signal,method:e.method,headers:n,body:r})}(e,this.toFetchRequestOptions);return function(e,t={}){return{body:k(()=>function(e,t={}){return M({name:"parse_standard_body",signal:t.signal},async()=>{const n=e.headers.get("content-disposition");if("string"==typeof n){const t=function(e){const t=e.match(/filename\*=(UTF-8'')?([^;]*)/i);if(t&&"string"==typeof t[2])return function(e){try{return decodeURIComponent(e)}catch{return e}}(t[2]);const n=e.match(/filename="((?:\\"|[^"])*)"/i);return n&&"string"==typeof n[1]?n[1].replace(/\\"/g,'"'):void 0}(n)??"blob",r=await e.blob();return new File([r],t,{type:r.type})}const r=e.headers.get("content-type");if(!r||r.startsWith("application/json"))return P(await e.text());if(r.startsWith("multipart/form-data"))return await e.formData();if(r.startsWith("application/x-www-form-urlencoded")){const t=await e.text();return new URLSearchParams(t)}if(r.startsWith("text/event-stream"))return function(e,t={}){const n=(e?.pipeThrough(new TextDecoderStream).pipeThrough(new ne))?.getReader();let r,o=!1;return new A(async()=>{r??=E("consume_event_iterator_stream");try{for(;;){if(void 0===n)return{done:!0,value:void 0};const{done:e,value:t}=await T(r,()=>n.read());if(e){if(o)throw new S("Stream was cancelled");return{done:!0,value:void 0}}switch(t.event){case"message":{let e=P(t.data);return F(e)&&(e=de(e,t)),r?.addEvent("message"),{done:!1,value:e}}case"error":{let e=new G({data:P(t.data)});throw e=de(e,t),r?.addEvent("error"),e}case"done":{let e=P(t.data);return F(e)&&(e=de(e,t)),r?.addEvent("done"),{done:!0,value:e}}default:r?.addEvent("maybe_keepalive")}}}catch(e){throw e instanceof G||I(r,e,t),e}},async e=>{try{"next"!==e&&(o=!0,r?.addEvent("cancelled")),await T(r,()=>n?.cancel())}catch(i){throw I(r,i,t),i}finally{r?.end()}})}(e.body,t);if(r.startsWith("text/plain"))return await e.text();const o=await e.blob();return new File([o],"blob",{type:o.type})})}(e,t)),status:e.status,get headers(){const t=me(e.headers);return Object.defineProperty(this,"headers",{value:t,writable:!0}),t},set headers(e){Object.defineProperty(this,"headers",{value:e,writable:!0})}}}(await D(this.adapterInterceptors,{...t,request:o,path:n,input:r,init:{redirect:"manual"}},({request:e,path:t,input:n,init:r,...o})=>this.fetch(e,r,o,t,n)),{signal:o.signal})}},Ce=class extends xe{constructor(e){super(new ke(e),e)}};function Ee(e){return fe(new Ce({url:e}))}var Ie="",Me=Ee(""),Te=new Proxy({},{get:(e,t)=>Me[t]}),Re=e=>e.filter(e=>"text"===e.type).map(e=>e.content).join("\n");function Oe(e,t="Unknown error"){return e instanceof Error?e.message:"string"==typeof e?e:t}function Ae(e,t){console.warn(void 0===t?e:`${e} ${Oe(t)}`)}var _e="marketrix_chat_context";function De(e,t){return`${e}_${function(e){return e.mtxId??(null!=e.mtxApp?String(e.mtxApp):"default")}(t)}`}var Pe={chat_id:null,messages:[],currentMode:"tell",isOpen:!1,config:null,timestamp:0};function Ne(e){try{return"undefined"==typeof localStorage?null:localStorage.getItem(e)}catch(t){return Ae("[StorageService] localStorage is unreadable:",t),null}}function Le(e,t){try{"undefined"!=typeof localStorage&&localStorage.setItem(e,t)}catch(n){Ae("[StorageService] localStorage is unwritable:",n)}}function Fe(e){if("object"!=typeof e||null===e)return!1;const t=e;return"string"==typeof t.id&&"string"==typeof t.content&&("user"===t.sender||"agent"===t.sender)&&"string"==typeof t.timestamp&&Array.isArray(t.parts)}function ze(e){const t=Ne(e);if(!t)return{...Pe};try{const e=function(e){if("object"!=typeof e||null===e)return{...Pe};const t=e,n=t.chat_id,r=t.currentMode,o=t.config,i=t.timestamp;return{chat_id:"string"==typeof n||null===n?n:Pe.chat_id,messages:Array.isArray(t.messages)?t.messages.filter(Fe):Pe.messages,currentMode:"tell"===r||"show"===r||"do"===r?r:Pe.currentMode,isOpen:"boolean"==typeof t.isOpen?t.isOpen:Pe.isOpen,config:"object"==typeof o?o:Pe.config,timestamp:"number"==typeof i?i:Pe.timestamp}}(JSON.parse(t));if(Date.now()-e.timestamp<=6048e5)return e}catch(n){Ae("[StorageService] Failed to parse the stored context:",n)}return{...Pe}}var $e,Be=new class{key=_e;context=ze(this.key);getContext(){return this.context}updateContext(e){this.context={...this.context,...e,timestamp:Date.now()},Le(this.key,JSON.stringify(this.context))}getChatId(){return this.context.chat_id}setChatId(e){this.updateContext({chat_id:e})}getCredentialedConfig(){const{config:e}=this.context;return e?.mtxId&&e.mtxKey?e:null}setConfig(e){this.key=De(_e,e),this.context=ze(this.key),this.updateContext({config:e})}},We=new class{creation=null;async getOrCreateChatId(){return Be.getChatId()||(this.creation??=(async()=>{const e=await Te.chatCreate(void 0);if(!e)throw new Error("API returned empty chat ID");return Be.setChatId(e),e})().finally(()=>{this.creation=null}),this.creation)}},Ue=Object.defineProperty,He=(e,t,n)=>((e,t,n)=>t in e?Ue(e,t,{enumerable:!0,configurable:!0,writable:!0,value:n}):e[t]=n)(e,"symbol"!=typeof t?t+"":t,n),je=/* @__PURE__ */(e=>(e[e.DomContentLoaded=0]="DomContentLoaded",e[e.Load=1]="Load",e[e.FullSnapshot=2]="FullSnapshot",e[e.IncrementalSnapshot=3]="IncrementalSnapshot",e[e.Meta=4]="Meta",e[e.Custom=5]="Custom",e[e.Plugin=6]="Plugin",e[e.Asset=7]="Asset",e))(je||{}),qe=/* @__PURE__ */(e=>(e[e.Mutation=0]="Mutation",e[e.MouseMove=1]="MouseMove",e[e.MouseInteraction=2]="MouseInteraction",e[e.Scroll=3]="Scroll",e[e.ViewportResize=4]="ViewportResize",e[e.Input=5]="Input",e[e.TouchMove=6]="TouchMove",e[e.MediaInteraction=7]="MediaInteraction",e[e.StyleSheetRule=8]="StyleSheetRule",e[e.CanvasMutation=9]="CanvasMutation",e[e.Font=10]="Font",e[e.Log=11]="Log",e[e.Drag=12]="Drag",e[e.StyleDeclaration=13]="StyleDeclaration",e[e.Selection=14]="Selection",e[e.AdoptedStyleSheet=15]="AdoptedStyleSheet",e[e.CustomElement=16]="CustomElement",e))(qe||{}),Ve=/* @__PURE__ */(e=>(e[e.MouseUp=0]="MouseUp",e[e.MouseDown=1]="MouseDown",e[e.Click=2]="Click",e[e.ContextMenu=3]="ContextMenu",e[e.DblClick=4]="DblClick",e[e.Focus=5]="Focus",e[e.Blur=6]="Blur",e[e.TouchStart=7]="TouchStart",e[e.TouchMove_Departed=8]="TouchMove_Departed",e[e.TouchEnd=9]="TouchEnd",e[e.TouchCancel=10]="TouchCancel",e))(Ve||{}),Ye=/* @__PURE__ */(e=>(e[e.Mouse=0]="Mouse",e[e.Pen=1]="Pen",e[e.Touch=2]="Touch",e))(Ye||{}),Ke=/* @__PURE__ */(e=>(e[e["2D"]=0]="2D",e[e.WebGL=1]="WebGL",e[e.WebGL2=2]="WebGL2",e))(Ke||{}),Xe=/* @__PURE__ */(e=>(e[e.Play=0]="Play",e[e.Pause=1]="Pause",e[e.Seeked=2]="Seeked",e[e.VolumeChange=3]="VolumeChange",e[e.RateChange=4]="RateChange",e))(Xe||{}),Ge=/* @__PURE__ */(e=>(e[e.Document=0]="Document",e[e.DocumentType=1]="DocumentType",e[e.Element=2]="Element",e[e.Text=3]="Text",e[e.CDATA=4]="CDATA",e[e.Comment=5]="Comment",e))(Ge||{}),Je={Node:["childNodes","parentNode","parentElement","textContent","ownerDocument"],ShadowRoot:["host","styleSheets"],Element:["shadowRoot","querySelector","querySelectorAll"],MutationObserver:[]},Ze={Node:["contains","getRootNode"],ShadowRoot:["getSelection"],Element:[],MutationObserver:["constructor"]},Qe={},et={};function tt(e){if(Qe[e])return Qe[e];const t=globalThis[e],n=t.prototype,r=e in Je?Je[e]:void 0,o=Boolean(r&&r.every(e=>{var t,r;return Boolean(null==(r=null==(t=Object.getOwnPropertyDescriptor(n,e))?void 0:t.get)?void 0:r.toString().includes("[native code]"))})),i=e in Ze?Ze[e]:void 0,s=Boolean(i&&i.every(e=>{var t;return"function"==typeof n[e]&&(null==(t=n[e])?void 0:t.toString().includes("[native code]"))}));if(o&&s&&!globalThis.Zone)return Qe[e]=t.prototype,t.prototype;try{const r=document.createElement("iframe");r.style.display="none",document.body.appendChild(r);const o=r.contentWindow;if(!o)return t.prototype;const i=o[e].prototype;if(!i)return r.remove(),n;const s=navigator.userAgent;return s.includes("Safari")&&!s.includes("Chrome")?(r.classList.add("rr-block"),r.setAttribute("__rrwebUntaintedMutationObserver",""),et[e]=()=>r.remove()):r.remove(),Qe[e]=i}catch{return n}}var nt={};function rt(e,t,n){var r;const o=`${e}.${String(n)}`;if(nt[o])return nt[o].call(t);const i=tt(e),s=null==(r=Object.getOwnPropertyDescriptor(i,n))?void 0:r.get;return s?(nt[o]=s,s.call(t)):t[n]}var ot={};function it(e,t,n){const r=`${e}.${String(n)}`;if(ot[r])return ot[r].bind(t);const o=tt(e)[n];return"function"!=typeof o?t[n]:(ot[r]=o,o.bind(t))}var st=Date.now;function at(e,t,n){try{if(!(t in e))return()=>{};const r=e[t],o=n(r);return"function"==typeof o&&(o.prototype=o.prototype||{},Object.defineProperties(o,{__rrweb_original__:{enumerable:!1,value:r}})),e[t]=o,()=>{e[t]=r}}catch{return()=>{}}}/* @__PURE__ */ /[1-9][0-9]{12}/.test(Date.now().toString())||(st=()=>/* @__PURE__ */(new Date).getTime());var ct=function(e){return rt("Node",e,"ownerDocument")},lt=function(e){return rt("Node",e,"childNodes")},ut=function(e){return rt("Node",e,"parentNode")},dt=function(e){return rt("Node",e,"parentElement")},pt=function(e){return rt("Node",e,"textContent")},ht=function(e,t){return it("Node",e,"contains")(t)},ft=function(e){return it("Node",e,"getRootNode")()},mt=function(e){return e&&"host"in e?rt("ShadowRoot",e,"host"):null},gt=function(e){return e&&"shadowRoot"in e?rt("Element",e,"shadowRoot"):null};function yt(e){return e.nodeType===e.ELEMENT_NODE}function bt(e){const t=e&&"host"in e&&"mode"in e&&mt(e)||null;return Boolean(t&&"shadowRoot"in t&>(t)===e)}function vt(e){return"[object ShadowRoot]"===Object.prototype.toString.call(e)}function wt(e){try{const n=e.rules||e.cssRules;if(!n)return null;let r=e.href;return!r&&e.ownerNode&&(r=e.ownerNode.baseURI),(t=Array.from(n,e=>xt(e,r)).join("")).includes(" background-clip: text;")&&!t.includes(" -webkit-background-clip: text;")&&(t=t.replace(/\sbackground-clip:\s*text;/g," -webkit-background-clip: text; background-clip: text;")),t}catch(n){return null}var t}function xt(e,t){if(function(e){return"styleSheet"in e}(e)){let t;try{t=wt(e.styleSheet)||function(e){const{cssText:t}=e;if(t.split('"').length<3)return t;const n=["@import",`url(${JSON.stringify(e.href)})`];return""===e.layerName?n.push("layer"):e.layerName&&n.push(`layer(${e.layerName})`),e.supportsText&&n.push(`supports(${e.supportsText})`),e.media.length&&n.push(e.media.mediaText),n.join(" ")+";"}(e)}catch(n){t=e.cssText}return e.styleSheet.href?_t(t,e.styleSheet.href):t}{let n=e.cssText;return function(e){return"selectorText"in e}(e)&&e.selectorText.includes(":")&&(n=n.replace(/(\[(?:[\w-]+)[^\\])(:(?:[\w-]+)\])/gm,"$1\\$2")),t?_t(n,t):n}}var St=class{constructor(){He(this,"idNodeMap",/* @__PURE__ */new Map),He(this,"nodeMetaMap",/* @__PURE__ */new WeakMap)}getId(e){var t;return e?(null==(t=this.getMeta(e))?void 0:t.id)??-1:-1}getNode(e){return this.idNodeMap.get(e)||null}getIds(){return Array.from(this.idNodeMap.keys())}getMeta(e){return this.nodeMetaMap.get(e)||null}removeNodeFromMap(e){const t=this.getId(e);this.idNodeMap.delete(t),e.childNodes&&e.childNodes.forEach(e=>this.removeNodeFromMap(e))}has(e){return this.idNodeMap.has(e)}hasNode(e){return this.nodeMetaMap.has(e)}add(e,t){const n=t.id;this.idNodeMap.set(n,e),this.nodeMetaMap.set(e,t)}replace(e,t){const n=this.getNode(e);if(n){const e=this.nodeMetaMap.get(n);e&&this.nodeMetaMap.set(t,e)}this.idNodeMap.set(e,t)}reset(){this.idNodeMap=/* @__PURE__ */new Map,this.nodeMetaMap=/* @__PURE__ */new WeakMap}};function kt({element:e,maskInputOptions:t,tagName:n,type:r,value:o,maskInputFn:i}){let s=o||"";const a=r&&Ct(r);return(t[n.toLowerCase()]||a&&t[a])&&(s=i?i(s,e):"*".repeat(s.length)),s}function Ct(e){return e.toLowerCase()}var Et="__rrweb_original__";function It(e){const t=e.type;return e.hasAttribute("data-rr-is-password")?"password":t?Ct(t):null}function Mt(e,t){let n;try{n=new URL(e,t??window.location.href)}catch(o){return null}const r=n.pathname.match(/\.([0-9a-z]+)(?:$)/i);return(null==r?void 0:r[1])??null}var Tt=/url\((?:(')([^']*)'|(")(.*?)"|([^)]*))\)/gm,Rt=/^(?:[a-z+]+:)?\/\//i,Ot=/^www\..*/i,At=/^(data:)([^,]*),(.*)/i;function _t(e,t){return(e||"").replace(Tt,(e,n,r,o,i,s)=>{const a=r||i||s,c=n||o||"";if(!a)return e;if(Rt.test(a)||Ot.test(a))return`url(${c}${a}${c})`;if(At.test(a))return`url(${c}${a}${c})`;if("/"===a[0])return`url(${c}${function(e){let t="";return t=e.indexOf("//")>-1?e.split("/").slice(0,3).join("/"):e.split("/")[0],t=t.split("?")[0],t}(t)+a}${c})`;const l=a.split("#")[0],u=a.substring(l.length),d=t.split("#")[0].split("/"),p=l.split("/");d.pop();for(const t of p)"."!==t&&(".."===t?d.pop():d.push(t));return`url(${c}${d.join("/")}${u}${c})`})}function Dt(e,t=!1){return t?e.replace(/(\/\*[^*]*\*\/)|[\s;]/g,""):e.replace(/(\/\*[^*]*\*\/)|[\s;]/g,"").replace(/0px/g,"0")}var Pt,Nt,Lt=1,Ft=/* @__PURE__ */new RegExp("[^a-z0-9-_:]");function zt(){return Lt++}var $t=/^[^ \t\n\r\u000c]+/,Bt=/^[, \t\n\r\u000c]+/,Wt=/* @__PURE__ */new WeakMap;function Ut(e,t){return t&&""!==t.trim()?Ht(e,t):t}function Ht(e,t){let n=Wt.get(e);if(n||(n=e.createElement("a"),Wt.set(e,n)),t){if(t.startsWith("blob:")||t.startsWith("data:"))return t}else t="";return n.setAttribute("href",t),n.href}function jt(e,t,n,r){return r?"src"===n||"href"===n&&("use"!==t||"#"!==r[0])||"xlink:href"===n&&"#"!==r[0]||"background"===n&&["table","td","th"].includes(t)?Ut(e,r):"srcset"===n?function(e,t){if(""===t.trim())return t;let n=0;function r(e){let r;const o=e.exec(t.substring(n));return o?(r=o[0],n+=r.length,r):""}const o=[];for(;r(Bt),!(n>=t.length);){let i=r($t);if(","===i.slice(-1))i=Ut(e,i.substring(0,i.length-1)),o.push(i);else{let r="";i=Ut(e,i);let s=!1;for(;;){const e=t.charAt(n);if(""===e){o.push((i+r).trim());break}if(s)")"===e&&(s=!1);else{if(","===e){n+=1,o.push((i+r).trim());break}"("===e&&(s=!0)}r+=e,n+=1}}}return o.join(", ")}(e,r):"style"===n?_t(r,Ht(e)):"object"===t&&"data"===n?Ut(e,r):r:r}function qt(e,t,n){return["video","audio"].includes(e)&&"autoplay"===Ct(t)}function Vt(e,t,n){if(!e)return!1;if(e.nodeType!==e.ELEMENT_NODE)return!!n&&Vt(ut(e),t,n);for(let r=e.classList.length;r--;){const n=e.classList[r];if(t.test(n))return!0}return!!n&&Vt(ut(e),t,n)}function Yt(e,t,n,r){let o;if(yt(e)){if(o=e,!lt(o).length)return!1}else{if(null===dt(e))return!1;o=dt(e)}try{if("string"==typeof t){if(r){if(o.closest(`.${t}`))return!0}else if(o.classList.contains(t))return!0}else if(Vt(o,t,r))return!0;if(n)if(r){if(o.closest(n))return!0}else if(o.matches(n))return!0}catch(i){}return!1}function Kt(e){return null==e?"":e.toLowerCase()}function Xt(e){return!0===e||"all"===e?{script:!0,comment:!0,headFavicon:!0,headWhitespace:!0,headMetaSocial:!0,headMetaRobots:!0,headMetaHttpEquiv:!0,headMetaVerification:!0,headMetaAuthorship:"all"===e,headMetaDescKeywords:"all"===e,headTitleMutations:"all"===e}:e||{}}function Gt(e,t){const{doc:n,mirror:r,blockClass:o,blockSelector:i,maskTextClass:s,maskTextSelector:a,skipChild:c=!1,inlineStylesheet:l=!0,maskInputOptions:u={},maskTextFn:d,maskInputFn:p,slimDOMOptions:h,dataURLOptions:f={},inlineImages:m=!1,recordCanvas:g=!1,onSerialize:y,onIframeLoad:b,iframeLoadTimeout:v=5e3,onStylesheetLoad:w,stylesheetLoadTimeout:x=5e3,keepIframeSrcFn:S=()=>!1,newlyAddedElement:k=!1,cssCaptured:C=!1}=t;let{needsMask:E}=t,{preserveWhiteSpace:I=!0}=t;E||(E=Yt(e,s,a,void 0===E));const M=function(e,t){const{doc:n,mirror:r,blockClass:o,blockSelector:i,needsMask:s,inlineStylesheet:a,maskInputOptions:c={},maskTextFn:l,maskInputFn:u,dataURLOptions:d={},inlineImages:p,recordCanvas:h,keepIframeSrcFn:f,newlyAddedElement:m=!1,cssCaptured:g=!1}=t,y=function(e,t){if(!t.hasNode(e))return;const n=t.getId(e);return 1===n?void 0:n}(n,r);switch(e.nodeType){case e.DOCUMENT_NODE:return"CSS1Compat"!==e.compatMode?{type:Ge.Document,childNodes:[],compatMode:e.compatMode}:{type:Ge.Document,childNodes:[]};case e.DOCUMENT_TYPE_NODE:return{type:Ge.DocumentType,name:e.name,publicId:e.publicId,systemId:e.systemId,rootId:y};case e.ELEMENT_NODE:return function(e,t){const{doc:n,blockClass:r,blockSelector:o,inlineStylesheet:i,maskInputOptions:s={},maskInputFn:a,dataURLOptions:c={},inlineImages:l,recordCanvas:u,keepIframeSrcFn:d,newlyAddedElement:p=!1,rootId:h}=t,f=function(e,t,n){try{if("string"==typeof t){if(e.classList.contains(t))return!0}else for(let n=e.classList.length;n--;){const r=e.classList[n];if(t.test(r))return!0}if(n)return e.matches(n)}catch(r){}return!1}(e,r,o),m=function(e){if(e instanceof HTMLFormElement)return"form";const t=Ct(e.tagName);return Ft.test(t)?"div":t}(e);let g={};const y=e.attributes.length;for(let x=0;x<y;x++){const t=e.attributes[x];qt(m,t.name,t.value)||(g[t.name]=jt(n,m,Ct(t.name),t.value))}if("link"===m&&i){const t=Array.from(n.styleSheets).find(t=>t.href===e.href);let r=null;t&&(r=wt(t)),r&&(delete g.rel,delete g.href,g._cssText=r)}if("style"===m&&e.sheet){let t=wt(e.sheet);t&&(e.childNodes.length>1&&(t=function(e,t){return function(e,t,n=!1){const r=Array.from(t.childNodes),o=[];let i=0;if(r.length>1&&e&&"string"==typeof e){let t=Dt(e,n);const s=t.length/e.length;for(let a=1;a<r.length;a++)if(r[a].textContent&&"string"==typeof r[a].textContent){const c=Dt(r[a].textContent,n),l=100;let u=3;for(;u<c.length&&(c[u].match(/[a-zA-Z0-9]/)||-1!==c.indexOf(c.substring(0,u),1));u++);for(;u<c.length;u++){let d=c.substring(0,u),p=t.split(d),h=-1;if(2===p.length)h=p[0].length;else if(p.length>2&&""===p[0]&&""!==r[a-1].textContent)h=t.indexOf(d,1);else if(1===p.length){if(d=d.substring(0,d.length-1),p=t.split(d),p.length<=1)return o.push(e),o;u=101}else u===c.length-1&&(h=t.indexOf(d));if(p.length>=2&&u>l){const e=r[a-1].textContent;if(e&&"string"==typeof e){const n=Dt(e).length;h=t.indexOf(d,n)}-1===h&&(h=p[0].length)}if(-1!==h){let a=Math.floor(h/s);for(;a>0&&a<e.length;){if(i+=1,i>50*r.length)return o.push(e),o;const c=Dt(e.substring(0,a),n);if(c.length===h){o.push(e.substring(0,a)),e=e.substring(a),t=t.substring(h);break}c.length<h?a+=Math.max(1,Math.floor((h-c.length)/s)):a-=Math.max(1,Math.floor((c.length-h)*s))}break}}}}return o.push(e),o}(e,t).join("/* rr_split */")}(t,e)),g._cssText=t)}if(["input","textarea","select"].includes(m)){const t=e.value,n=e.checked;"radio"!==g.type&&"checkbox"!==g.type&&"submit"!==g.type&&"button"!==g.type&&t?g.value=kt({element:e,type:It(e),tagName:m,value:t,maskInputOptions:s,maskInputFn:a}):n&&(g.checked=n)}if("option"===m&&(e.selected&&!s.select?g.selected=!0:delete g.selected),"dialog"===m&&e.open&&(g.rr_open_mode=e.matches("dialog:modal")?"modal":"non-modal"),"canvas"===m&&u)if("2d"===e.__context)(function(e){const t=e.getContext("2d");if(!t)return!0;for(let n=0;n<e.width;n+=50)for(let r=0;r<e.height;r+=50){const o=t.getImageData,i=Et in o?o[Et]:o;if(new Uint32Array(i.call(t,n,r,Math.min(50,e.width-n),Math.min(50,e.height-r)).data.buffer).some(e=>0!==e))return!1}return!0})(e)||(g.rr_dataURL=e.toDataURL(c.type,c.quality));else if(!("__context"in e)){const t=e.toDataURL(c.type,c.quality),r=n.createElement("canvas");r.width=e.width,r.height=e.height,t!==r.toDataURL(c.type,c.quality)&&(g.rr_dataURL=t)}if("img"===m&&l){Pt||(Pt=n.createElement("canvas"),Nt=Pt.getContext("2d"));const t=e,r=t.currentSrc||t.getAttribute("src")||"<unknown-src>",o=t.crossOrigin,i=()=>{t.removeEventListener("load",i);try{Pt.width=t.naturalWidth,Pt.height=t.naturalHeight,Nt.drawImage(t,0,0),g.rr_dataURL=Pt.toDataURL(c.type,c.quality)}catch(e){if("anonymous"!==t.crossOrigin)return t.crossOrigin="anonymous",void(t.complete&&0!==t.naturalWidth?i():t.addEventListener("load",i));console.warn(`Cannot inline img src=${r}! Error: ${e}`)}"anonymous"===t.crossOrigin&&(o?g.crossOrigin=o:t.removeAttribute("crossorigin"))};t.complete&&0!==t.naturalWidth?i():t.addEventListener("load",i)}if(["audio","video"].includes(m)){const t=g;t.rr_mediaState=e.paused?"paused":"played",t.rr_mediaCurrentTime=e.currentTime,t.rr_mediaPlaybackRate=e.playbackRate,t.rr_mediaMuted=e.muted,t.rr_mediaLoop=e.loop,t.rr_mediaVolume=e.volume}if(p||(e.scrollLeft&&(g.rr_scrollLeft=e.scrollLeft),e.scrollTop&&(g.rr_scrollTop=e.scrollTop)),f){const{width:t,height:n}=e.getBoundingClientRect();g={class:g.class,rr_width:`${t}px`,rr_height:`${n}px`}}let b;"iframe"!==m||d(g.src)||(e.contentDocument||(g.rr_src=g.src),delete g.src);try{customElements.get(m)&&(b=!0)}catch(w){}return{type:Ge.Element,tagName:m,attributes:g,childNodes:[],isSVG:(v=e,Boolean("svg"===v.tagName||v.ownerSVGElement)||void 0),needBlock:f,rootId:h,isCustom:b};var v}(e,{doc:n,blockClass:o,blockSelector:i,inlineStylesheet:a,maskInputOptions:c,maskInputFn:u,dataURLOptions:d,inlineImages:p,recordCanvas:h,keepIframeSrcFn:f,newlyAddedElement:m,rootId:y});case e.TEXT_NODE:return function(e,t){const{needsMask:n,maskTextFn:r,rootId:o,cssCaptured:i}=t,s=ut(e),a=s&&s.tagName;let c="";const l="STYLE"===a||void 0,u="SCRIPT"===a||void 0;return u?c="SCRIPT_PLACEHOLDER":i||(c=pt(e),l&&c&&(c=_t(c,Ht(t.doc)))),!l&&!u&&c&&n&&(c=r?r(c,dt(e)):c.replace(/[\S]/g,"*")),{type:Ge.Text,textContent:c||"",rootId:o}}(e,{doc:n,needsMask:s,maskTextFn:l,rootId:y,cssCaptured:g});case e.CDATA_SECTION_NODE:return{type:Ge.CDATA,textContent:"",rootId:y};case e.COMMENT_NODE:return{type:Ge.Comment,textContent:pt(e)||"",rootId:y};default:return!1}}(e,{doc:n,mirror:r,blockClass:o,blockSelector:i,needsMask:E,inlineStylesheet:l,maskInputOptions:u,maskTextFn:d,maskInputFn:p,dataURLOptions:f,inlineImages:m,recordCanvas:g,keepIframeSrcFn:S,newlyAddedElement:k,cssCaptured:C});if(!M)return console.warn(e,"not serialized"),null;let T;T=r.hasNode(e)?r.getId(e):function(e,t){if(t.comment&&e.type===Ge.Comment)return!0;if(e.type===Ge.Element){if(t.script&&("script"===e.tagName||"link"===e.tagName&&("preload"===e.attributes.rel&&"script"===e.attributes.as||"modulepreload"===e.attributes.rel)||"link"===e.tagName&&"prefetch"===e.attributes.rel&&"string"==typeof e.attributes.href&&"js"===Mt(e.attributes.href)))return!0;if(t.headFavicon&&("link"===e.tagName&&"shortcut icon"===e.attributes.rel||"meta"===e.tagName&&(Kt(e.attributes.name).match(/^msapplication-tile(image|color)$/)||"application-name"===Kt(e.attributes.name)||"icon"===Kt(e.attributes.rel)||"apple-touch-icon"===Kt(e.attributes.rel)||"shortcut icon"===Kt(e.attributes.rel))))return!0;if("meta"===e.tagName){if(t.headMetaDescKeywords&&Kt(e.attributes.name).match(/^description|keywords$/))return!0;if(t.headMetaSocial&&(Kt(e.attributes.property).match(/^(og|twitter|fb):/)||Kt(e.attributes.name).match(/^(og|twitter):/)||"pinterest"===Kt(e.attributes.name)))return!0;if(t.headMetaRobots&&("robots"===Kt(e.attributes.name)||"googlebot"===Kt(e.attributes.name)||"bingbot"===Kt(e.attributes.name)))return!0;if(t.headMetaHttpEquiv&&void 0!==e.attributes["http-equiv"])return!0;if(t.headMetaAuthorship&&("author"===Kt(e.attributes.name)||"generator"===Kt(e.attributes.name)||"framework"===Kt(e.attributes.name)||"publisher"===Kt(e.attributes.name)||"progid"===Kt(e.attributes.name)||Kt(e.attributes.property).match(/^article:/)||Kt(e.attributes.property).match(/^product:/)))return!0;if(t.headMetaVerification&&("google-site-verification"===Kt(e.attributes.name)||"yandex-verification"===Kt(e.attributes.name)||"csrf-token"===Kt(e.attributes.name)||"p:domain_verify"===Kt(e.attributes.name)||"verify-v1"===Kt(e.attributes.name)||"verification"===Kt(e.attributes.name)||"shopify-checkout-api-token"===Kt(e.attributes.name)))return!0}}return!1}(M,h)||!I&&M.type===Ge.Text&&!M.textContent.replace(/^\s+|\s+$/gm,"").length?-2:zt();const R=Object.assign(M,{id:T});if(r.add(e,R),-2===T)return null;y&&y(e);let O=!c;if(R.type===Ge.Element){O=O&&!R.needBlock,delete R.needBlock;const t=gt(e);t&&vt(t)&&(R.isShadowHost=!0)}if((R.type===Ge.Document||R.type===Ge.Element)&&O){h.headWhitespace&&R.type===Ge.Element&&"head"===R.tagName&&(I=!1);const t={doc:n,mirror:r,blockClass:o,blockSelector:i,needsMask:E,maskTextClass:s,maskTextSelector:a,skipChild:c,inlineStylesheet:l,maskInputOptions:u,maskTextFn:d,maskInputFn:p,slimDOMOptions:h,dataURLOptions:f,inlineImages:m,recordCanvas:g,preserveWhiteSpace:I,onSerialize:y,onIframeLoad:b,iframeLoadTimeout:v,onStylesheetLoad:w,stylesheetLoadTimeout:x,keepIframeSrcFn:S,cssCaptured:!1};if(R.type===Ge.Element&&"textarea"===R.tagName&&void 0!==R.attributes.value);else{R.type===Ge.Element&&void 0!==R.attributes._cssText&&"string"==typeof R.attributes._cssText&&(t.cssCaptured=!0);for(const n of Array.from(lt(e))){const e=Gt(n,t);e&&R.childNodes.push(e)}}let k=null;if(yt(e)&&(k=gt(e)))for(const e of Array.from(lt(k))){const n=Gt(e,t);n&&(vt(k)&&(n.isShadow=!0),R.childNodes.push(n))}}const A=ut(e);return A&&bt(A)&&vt(A)&&(R.isShadow=!0),R.type===Ge.Element&&"iframe"===R.tagName&&function(e,t,n){const r=e.contentWindow;if(!r)return;let o,i=!1;try{o=r.document.readyState}catch(a){return}if("complete"!==o){const r=setTimeout(()=>{i||(t(),i=!0)},n);return void e.addEventListener("load",()=>{clearTimeout(r),i=!0,t()})}const s="about:blank";if(r.location.href!==s||e.src===s||""===e.src)return setTimeout(t,0),e.addEventListener("load",t);e.addEventListener("load",t)}(e,()=>{const t=e.contentDocument;if(t&&b){const n=Gt(t,{doc:t,mirror:r,blockClass:o,blockSelector:i,needsMask:E,maskTextClass:s,maskTextSelector:a,skipChild:!1,inlineStylesheet:l,maskInputOptions:u,maskTextFn:d,maskInputFn:p,slimDOMOptions:h,dataURLOptions:f,inlineImages:m,recordCanvas:g,preserveWhiteSpace:I,onSerialize:y,onIframeLoad:b,iframeLoadTimeout:v,onStylesheetLoad:w,stylesheetLoadTimeout:x,keepIframeSrcFn:S});n&&b(e,n)}},v),R.type===Ge.Element&&"link"===R.tagName&&"string"==typeof R.attributes.rel&&("stylesheet"===R.attributes.rel||"preload"===R.attributes.rel&&"string"==typeof R.attributes.href&&"css"===Mt(R.attributes.href))&&function(e,t,n){let r,o=!1;try{r=e.sheet}catch(s){return}if(r)return;const i=setTimeout(()=>{o||(t(),o=!0)},n);e.addEventListener("load",()=>{clearTimeout(i),o=!0,t()})}(e,()=>{if(w){const t=Gt(e,{doc:n,mirror:r,blockClass:o,blockSelector:i,needsMask:E,maskTextClass:s,maskTextSelector:a,skipChild:!1,inlineStylesheet:l,maskInputOptions:u,maskTextFn:d,maskInputFn:p,slimDOMOptions:h,dataURLOptions:f,inlineImages:m,recordCanvas:g,preserveWhiteSpace:I,onSerialize:y,onIframeLoad:b,iframeLoadTimeout:v,onStylesheetLoad:w,stylesheetLoadTimeout:x,keepIframeSrcFn:S});t&&w(e,t)}},x),R}var Jt=class e{constructor(...e){He(this,"parentElement",null),He(this,"parentNode",null),He(this,"ownerDocument"),He(this,"firstChild",null),He(this,"lastChild",null),He(this,"previousSibling",null),He(this,"nextSibling",null),He(this,"ELEMENT_NODE",1),He(this,"TEXT_NODE",3),He(this,"nodeType"),He(this,"nodeName"),He(this,"RRNodeType")}get childNodes(){const e=[];let t=this.firstChild;for(;t;)e.push(t),t=t.nextSibling;return e}contains(t){if(!(t instanceof e))return!1;if(t.ownerDocument!==this.ownerDocument)return!1;if(t===this)return!0;for(;t.parentNode;){if(t.parentNode===this)return!0;t=t.parentNode}return!1}appendChild(e){throw new Error("RRDomException: Failed to execute 'appendChild' on 'RRNode': This RRNode type does not support this method.")}insertBefore(e,t){throw new Error("RRDomException: Failed to execute 'insertBefore' on 'RRNode': This RRNode type does not support this method.")}removeChild(e){throw new Error("RRDomException: Failed to execute 'removeChild' on 'RRNode': This RRNode type does not support this method.")}toString(){return"RRNode"}};function Zt(e,t,n=document){const r={capture:!0,passive:!0};return n.addEventListener(e,t,r),()=>n.removeEventListener(e,t,r)}var Qt="Please stop import mirror directly. Instead of that,\r\nnow you can use replayer.getMirror() to access the mirror instance of a replayer,\r\nor you can use record.mirror to access the mirror instance during recording.",en={map:{},getId:()=>(console.error(Qt),-1),getNode:()=>(console.error(Qt),null),removeNodeFromMap(){console.error(Qt)},has:()=>(console.error(Qt),!1),reset(){console.error(Qt)}};function tn(e,t,n={}){let r=null,o=0;return function(...i){const s=Date.now();o||!1!==n.leading||(o=s);const a=t-(s-o),c=this;a<=0||a>t?(r&&(clearTimeout(r),r=null),o=s,e.apply(c,i)):r||!1===n.trailing||(r=setTimeout(()=>{o=!1===n.leading?0:Date.now(),r=null,e.apply(c,i)},a))}}function nn(e,t,n,r,o=window){const i=o.Object.getOwnPropertyDescriptor(e,t);return o.Object.defineProperty(e,t,r?n:{set(e){setTimeout(()=>{n.set.call(this,e)},0),i&&i.set&&i.set.call(this,e)}}),()=>nn(e,t,i||{},!0)}function rn(e){var t,n,r,o;const i=e.document;return{left:i.scrollingElement?i.scrollingElement.scrollLeft:void 0!==e.pageXOffset?e.pageXOffset:i.documentElement.scrollLeft||(null==i?void 0:i.body)&&(null==(t=dt(i.body))?void 0:t.scrollLeft)||(null==(n=null==i?void 0:i.body)?void 0:n.scrollLeft)||0,top:i.scrollingElement?i.scrollingElement.scrollTop:void 0!==e.pageYOffset?e.pageYOffset:(null==i?void 0:i.documentElement.scrollTop)||(null==i?void 0:i.body)&&(null==(r=dt(i.body))?void 0:r.scrollTop)||(null==(o=null==i?void 0:i.body)?void 0:o.scrollTop)||0}}function on(){return window.innerHeight||document.documentElement&&document.documentElement.clientHeight||document.body&&document.body.clientHeight}function sn(){return window.innerWidth||document.documentElement&&document.documentElement.clientWidth||document.body&&document.body.clientWidth}function an(e){return e?e.nodeType===e.ELEMENT_NODE?e:dt(e):null}function cn(e,t,n,r){if(!e)return!1;const o=an(e);if(!o)return!1;try{if("string"==typeof t){if(o.classList.contains(t))return!0;if(r&&null!==o.closest("."+t))return!0}else if(Vt(o,t,r))return!0}catch(i){}if(n){if(o.matches(n))return!0;if(r&&null!==o.closest(n))return!0}return!1}function ln(e,t,n){return!("TITLE"!==e.tagName||!n.headTitleMutations)||-2===t.getId(e)}function un(e,t){if(bt(e))return!1;const n=t.getId(e);if(!t.has(n))return!0;const r=ut(e);return(!r||r.nodeType!==e.DOCUMENT_NODE)&&(!r||un(r,t))}function dn(e){return Boolean(e.changedTouches)}function pn(e,t){return Boolean("IFRAME"===e.nodeName&&t.getMeta(e))}function hn(e,t){return Boolean("LINK"===e.nodeName&&e.nodeType===e.ELEMENT_NODE&&e.getAttribute&&"stylesheet"===e.getAttribute("rel")&&t.getMeta(e))}function fn(e){return!!e&&(e instanceof Jt&&"shadowRoot"in e?Boolean(e.shadowRoot):Boolean(gt(e)))}"undefined"!=typeof window&&window.Proxy&&window.Reflect&&(en=new Proxy(en,{get:(e,t,n)=>("map"===t&&console.error(Qt),Reflect.get(e,t,n))}));var mn=class{constructor(){He(this,"id",1),He(this,"styleIDMap",/* @__PURE__ */new WeakMap),He(this,"idStyleMap",/* @__PURE__ */new Map)}getId(e){return this.styleIDMap.get(e)??-1}has(e){return this.styleIDMap.has(e)}add(e,t){if(this.has(e))return this.getId(e);let n;return n=void 0===t?this.id++:t,this.styleIDMap.set(e,n),this.idStyleMap.set(n,e),n}getStyle(e){return this.idStyleMap.get(e)||null}reset(){this.styleIDMap=/* @__PURE__ */new WeakMap,this.idStyleMap=/* @__PURE__ */new Map,this.id=1}generateId(){return this.id++}};function gn(e){var t;let n=null;return"getRootNode"in e&&(null==(t=ft(e))?void 0:t.nodeType)===Node.DOCUMENT_FRAGMENT_NODE&&mt(ft(e))&&(n=mt(ft(e))),n}function yn(e){const t=ct(e);return!!t&&(ht(t,e)||function(e){const t=ct(e);if(!t)return!1;const n=function(e){let t,n=e;for(;t=gn(n);)n=t;return n}(e);return ht(t,n)}(e))}function bn(e){return"__ln"in e}var vn,wn=class{constructor(){He(this,"length",0),He(this,"head",null),He(this,"tail",null)}get(e){if(e>=this.length)throw new Error("Position outside of list range");let t=this.head;for(let n=0;n<e;n++)t=(null==t?void 0:t.next)||null;return t}addNode(e){const t={value:e,previous:null,next:null};if(e.__ln=t,e.previousSibling&&bn(e.previousSibling)){const n=e.previousSibling.__ln.next;t.next=n,t.previous=e.previousSibling.__ln,e.previousSibling.__ln.next=t,n&&(n.previous=t)}else if(e.nextSibling&&bn(e.nextSibling)&&e.nextSibling.__ln.previous){const n=e.nextSibling.__ln.previous;t.previous=n,t.next=e.nextSibling.__ln,e.nextSibling.__ln.previous=t,n&&(n.next=t)}else this.head&&(this.head.previous=t),t.next=this.head,this.head=t;null===t.next&&(this.tail=t),this.length++}removeNode(e){const t=e.__ln;this.head&&(t.previous?(t.previous.next=t.next,t.next?t.next.previous=t.previous:this.tail=t.previous):(this.head=t.next,this.head?this.head.previous=null:this.tail=null),e.__ln&&delete e.__ln,this.length--)}},xn=(e,t)=>`${e}@${t}`,Sn=class{constructor(){He(this,"frozen",!1),He(this,"locked",!1),He(this,"texts",[]),He(this,"attributes",[]),He(this,"attributeMap",/* @__PURE__ */new WeakMap),He(this,"removes",[]),He(this,"mapRemoves",[]),He(this,"movedMap",{}),He(this,"addedSet",/* @__PURE__ */new Set),He(this,"movedSet",/* @__PURE__ */new Set),He(this,"droppedSet",/* @__PURE__ */new Set),He(this,"removesSubTreeCache",/* @__PURE__ */new Set),He(this,"mutationCb"),He(this,"blockClass"),He(this,"blockSelector"),He(this,"maskTextClass"),He(this,"maskTextSelector"),He(this,"inlineStylesheet"),He(this,"maskInputOptions"),He(this,"maskTextFn"),He(this,"maskInputFn"),He(this,"keepIframeSrcFn"),He(this,"recordCanvas"),He(this,"inlineImages"),He(this,"slimDOMOptions"),He(this,"dataURLOptions"),He(this,"doc"),He(this,"mirror"),He(this,"iframeManager"),He(this,"stylesheetManager"),He(this,"shadowDomManager"),He(this,"canvasManager"),He(this,"processedNodeManager"),He(this,"unattachedDoc"),He(this,"processMutations",e=>{e.forEach(this.processMutation),this.emit()}),He(this,"emit",()=>{if(this.frozen||this.locked)return;const e=[],t=/* @__PURE__ */new Set,n=new wn,r=e=>{let t=e,n=-2;for(;-2===n;)t=t&&t.nextSibling,n=t&&this.mirror.getId(t);return n},o=o=>{const i=ut(o);if(!i||!yn(o))return;let s=!1;if(o.nodeType===Node.TEXT_NODE){const e=i.tagName;if("TEXTAREA"===e)return;"STYLE"===e&&this.addedSet.has(i)&&(s=!0)}const a=bt(i)?this.mirror.getId(gn(o)):this.mirror.getId(i),c=r(o);if(-1===a||-1===c)return n.addNode(o);const l=Gt(o,{doc:this.doc,mirror:this.mirror,blockClass:this.blockClass,blockSelector:this.blockSelector,maskTextClass:this.maskTextClass,maskTextSelector:this.maskTextSelector,skipChild:!0,newlyAddedElement:!0,inlineStylesheet:this.inlineStylesheet,maskInputOptions:this.maskInputOptions,maskTextFn:this.maskTextFn,maskInputFn:this.maskInputFn,slimDOMOptions:this.slimDOMOptions,dataURLOptions:this.dataURLOptions,recordCanvas:this.recordCanvas,inlineImages:this.inlineImages,onSerialize:e=>{pn(e,this.mirror)&&this.iframeManager.addIframe(e),hn(e,this.mirror)&&this.stylesheetManager.trackLinkElement(e),fn(o)&&this.shadowDomManager.addShadowRoot(gt(o),this.doc)},onIframeLoad:(e,t)=>{this.iframeManager.attachIframe(e,t),this.shadowDomManager.observeAttachShadow(e)},onStylesheetLoad:(e,t)=>{this.stylesheetManager.attachLinkElement(e,t)},cssCaptured:s});l&&(e.push({parentId:a,nextId:c,node:l}),t.add(l.id))};for(;this.mapRemoves.length;)this.mirror.removeNodeFromMap(this.mapRemoves.shift());for(const a of this.movedSet)Cn(this.removesSubTreeCache,a,this.mirror)&&!this.movedSet.has(ut(a))||o(a);for(const a of this.addedSet)En(this.droppedSet,a)||Cn(this.removesSubTreeCache,a,this.mirror)?En(this.movedSet,a)?o(a):this.droppedSet.add(a):o(a);let i=null;for(;n.length;){let e=null;if(i){const t=this.mirror.getId(ut(i.value)),n=r(i.value);-1!==t&&-1!==n&&(e=i)}if(!e){let t=n.tail;for(;t;){const n=t;if(t=t.previous,n){const t=this.mirror.getId(ut(n.value));if(-1===r(n.value))continue;if(-1!==t){e=n;break}{const t=n.value,r=ut(t);if(r&&r.nodeType===Node.DOCUMENT_FRAGMENT_NODE){const t=mt(r);if(-1!==this.mirror.getId(t)){e=n;break}}}}}}if(!e){for(;n.head;)n.removeNode(n.head.value);break}i=e.previous,n.removeNode(e.value),o(e.value)}const s={texts:this.texts.map(e=>{const t=e.node,n=ut(t);return n&&"TEXTAREA"===n.tagName&&this.genTextAreaValueMutation(n),{id:this.mirror.getId(t),value:e.value}}).filter(e=>!t.has(e.id)).filter(e=>this.mirror.has(e.id)),attributes:this.attributes.map(e=>{const{attributes:t}=e;if("string"==typeof t.style){const n=JSON.stringify(e.styleDiff),r=JSON.stringify(e._unchangedStyles);n.length<t.style.length&&(n+r).split("var(").length===t.style.split("var(").length&&(t.style=e.styleDiff)}return{id:this.mirror.getId(e.node),attributes:t}}).filter(e=>!t.has(e.id)).filter(e=>this.mirror.has(e.id)),removes:this.removes,adds:e};(s.texts.length||s.attributes.length||s.removes.length||s.adds.length)&&(this.texts=[],this.attributes=[],this.attributeMap=/* @__PURE__ */new WeakMap,this.removes=[],this.addedSet=/* @__PURE__ */new Set,this.movedSet=/* @__PURE__ */new Set,this.droppedSet=/* @__PURE__ */new Set,this.removesSubTreeCache=/* @__PURE__ */new Set,this.movedMap={},this.mutationCb(s))}),He(this,"genTextAreaValueMutation",e=>{let t=this.attributeMap.get(e);t||(t={node:e,attributes:{},styleDiff:{},_unchangedStyles:{}},this.attributes.push(t),this.attributeMap.set(e,t));const n=Array.from(lt(e),e=>pt(e)||"").join("");t.attributes.value=kt({element:e,maskInputOptions:this.maskInputOptions,tagName:e.tagName,type:It(e),value:n,maskInputFn:this.maskInputFn})}),He(this,"processMutation",e=>{if(!ln(e.target,this.mirror,this.slimDOMOptions))switch(e.type){case"characterData":{const t=pt(e.target);cn(e.target,this.blockClass,this.blockSelector,!1)||t===e.oldValue||this.texts.push({value:Yt(e.target,this.maskTextClass,this.maskTextSelector,!0)&&t?this.maskTextFn?this.maskTextFn(t,an(e.target)):t.replace(/[\S]/g,"*"):t,node:e.target});break}case"attributes":{const n=e.target,r=Ct(n.tagName);let o=e.attributeName,i=e.target.getAttribute(o);if("value"===o){const e=It(n);i=kt({element:n,maskInputOptions:this.maskInputOptions,tagName:n.tagName,type:e,value:i,maskInputFn:this.maskInputFn})}if(cn(e.target,this.blockClass,this.blockSelector,!1)||i===e.oldValue)return;let s=this.attributeMap.get(e.target);if("iframe"===r&&"src"===o&&!this.keepIframeSrcFn(i)){if(n.contentDocument)return;o="rr_src"}if(s||(s={node:e.target,attributes:{},styleDiff:{},_unchangedStyles:{}},this.attributes.push(s),this.attributeMap.set(e.target,s)),"type"===o&&"input"===r&&"password"===(e.oldValue||"").toLowerCase()&&n.setAttribute("data-rr-is-password","true"),!qt(r,o))if(s.attributes[o]=jt(this.doc,r,Ct(o),i),"style"===o){if(!this.unattachedDoc)try{this.unattachedDoc=document.implementation.createHTMLDocument()}catch(t){this.unattachedDoc=this.doc}const r=this.unattachedDoc.createElement("span");e.oldValue&&r.setAttribute("style",e.oldValue);for(const e of Array.from(n.style)){const t=n.style.getPropertyValue(e),o=n.style.getPropertyPriority(e);t!==r.style.getPropertyValue(e)||o!==r.style.getPropertyPriority(e)?s.styleDiff[e]=""===o?t:[t,o]:s._unchangedStyles[e]=[t,o]}for(const e of Array.from(r.style))""===n.style.getPropertyValue(e)&&(s.styleDiff[e]=!1)}else"open"===o&&"DIALOG"===n.tagName&&(n.matches("dialog:modal")?s.attributes.rr_open_mode="modal":s.attributes.rr_open_mode="non-modal");break}case"childList":if(cn(e.target,this.blockClass,this.blockSelector,!0))return;if("TEXTAREA"===e.target.tagName)return void this.genTextAreaValueMutation(e.target);e.addedNodes.forEach(t=>this.genAdds(t,e.target)),e.removedNodes.forEach(t=>{const n=this.mirror.getId(t),r=bt(e.target)?this.mirror.getId(mt(e.target)):this.mirror.getId(e.target);cn(e.target,this.blockClass,this.blockSelector,!1)||ln(t,this.mirror,this.slimDOMOptions)||!function(e,t){return-1!==t.getId(e)}(t,this.mirror)||(this.addedSet.has(t)?(kn(this.addedSet,t),this.droppedSet.add(t)):this.addedSet.has(e.target)&&-1===n||un(e.target,this.mirror)||(this.movedSet.has(t)&&this.movedMap[xn(n,r)]?kn(this.movedSet,t):(this.removes.push({parentId:r,id:n,isShadow:!(!bt(e.target)||!vt(e.target))||void 0}),function(e,t){const n=[e];for(;n.length;){const e=n.pop();t.has(e)||(t.add(e),lt(e).forEach(e=>n.push(e)))}}(t,this.removesSubTreeCache))),this.mapRemoves.push(t))})}}),He(this,"genAdds",(e,t)=>{if(!this.processedNodeManager.inOtherBuffer(e,this)&&!this.addedSet.has(e)&&!this.movedSet.has(e)){if(this.mirror.hasNode(e)){if(ln(e,this.mirror,this.slimDOMOptions))return;this.movedSet.add(e);let n=null;t&&this.mirror.hasNode(t)&&(n=this.mirror.getId(t)),n&&-1!==n&&(this.movedMap[xn(this.mirror.getId(e),n)]=!0)}else this.addedSet.add(e),this.droppedSet.delete(e);cn(e,this.blockClass,this.blockSelector,!1)||(lt(e).forEach(e=>this.genAdds(e)),fn(e)&<(gt(e)).forEach(t=>{this.processedNodeManager.add(t,this),this.genAdds(t,e)}))}})}init(e){["mutationCb","blockClass","blockSelector","maskTextClass","maskTextSelector","inlineStylesheet","maskInputOptions","maskTextFn","maskInputFn","keepIframeSrcFn","recordCanvas","inlineImages","slimDOMOptions","dataURLOptions","doc","mirror","iframeManager","stylesheetManager","shadowDomManager","canvasManager","processedNodeManager"].forEach(t=>{this[t]=e[t]})}freeze(){this.frozen=!0,this.canvasManager.freeze()}unfreeze(){this.frozen=!1,this.canvasManager.unfreeze(),this.emit()}isFrozen(){return this.frozen}lock(){this.locked=!0,this.canvasManager.lock()}unlock(){this.locked=!1,this.canvasManager.unlock(),this.emit()}reset(){this.shadowDomManager.reset(),this.canvasManager.reset()}};function kn(e,t){e.delete(t),lt(t).forEach(t=>kn(e,t))}function Cn(e,t,n){return 0!==e.size&&function(e,t){const n=ut(t);return!!n&&e.has(n)}(e,t)}function En(e,t){return 0!==e.size&&In(e,t)}function In(e,t){const n=ut(t);return!!n&&(!!e.has(n)||In(e,n))}var Mn=e=>vn?(...t)=>{try{return e(...t)}catch(n){if(vn&&!0===vn(n))return;throw n}}:e,Tn=[];function Rn(e){try{if("composedPath"in e){const t=e.composedPath();if(t.length)return t[0]}else if("path"in e&&e.path.length)return e.path[0]}catch{}return e&&e.target}function On(e,t){const n=new Sn;Tn.push(n),n.init(e);const[r,o]=[tt("MutationObserver").constructor,et.MutationObserver??(()=>{})],i=new r(Mn(n.processMutations.bind(n)));return i.observe(t,{attributes:!0,attributeOldValue:!0,characterData:!0,characterDataOldValue:!0,childList:!0,subtree:!0}),[i,o]}function An({scrollCb:e,doc:t,mirror:n,blockClass:r,blockSelector:o,sampling:i}){return Zt("scroll",Mn(tn(Mn(i=>{const s=Rn(i);if(!s||cn(s,r,o,!0))return;const a=n.getId(s);if(s===t&&t.defaultView){const n=rn(t.defaultView);e({id:a,x:n.left,y:n.top})}else e({id:a,x:s.scrollLeft,y:s.scrollTop})}),i.scroll||100)),t)}var _n=["INPUT","TEXTAREA","SELECT"],Dn=/* @__PURE__ */new WeakMap;function Pn(e){return function e(t,n){if(zn("CSSGroupingRule")&&t.parentRule instanceof CSSGroupingRule||zn("CSSMediaRule")&&t.parentRule instanceof CSSMediaRule||zn("CSSSupportsRule")&&t.parentRule instanceof CSSSupportsRule||zn("CSSConditionRule")&&t.parentRule instanceof CSSConditionRule){const r=Array.from(t.parentRule.cssRules).indexOf(t);return n.unshift(r),e(t.parentRule,n)}if(t.parentStyleSheet){const e=Array.from(t.parentStyleSheet.cssRules).indexOf(t);n.unshift(e)}return n}(e,[])}function Nn(e,t,n){let r,o;return e?(e.ownerNode?r=t.getId(e.ownerNode):o=n.getId(e),{styleId:o,id:r}):{}}function Ln({mirror:e,stylesheetManager:t},n){var r,o,i;let s=null;s="#document"===n.nodeName?e.getId(n):e.getId(mt(n));const a="#document"===n.nodeName?null==(r=n.defaultView)?void 0:r.Document:null==(i=null==(o=n.ownerDocument)?void 0:o.defaultView)?void 0:i.ShadowRoot,c=(null==a?void 0:a.prototype)?Object.getOwnPropertyDescriptor(null==a?void 0:a.prototype,"adoptedStyleSheets"):void 0;return null!==s&&-1!==s&&a&&c?(Object.defineProperty(n,"adoptedStyleSheets",{configurable:c.configurable,enumerable:c.enumerable,get(){var e;return null==(e=c.get)?void 0:e.call(this)},set(e){var n;const r=null==(n=c.set)?void 0:n.call(this,e);if(null!==s&&-1!==s)try{t.adoptStyleSheets(e,s)}catch(o){}return r}}),Mn(()=>{Object.defineProperty(n,"adoptedStyleSheets",{configurable:c.configurable,enumerable:c.enumerable,get:c.get,set:c.set})})):()=>{}}function Fn(e,t={}){const n=e.doc.defaultView;if(!n)return()=>{};let r;!function(e,t){const{mutationCb:n,mousemoveCb:r,mouseInteractionCb:o,scrollCb:i,viewportResizeCb:s,inputCb:a,mediaInteractionCb:c,styleSheetRuleCb:l,styleDeclarationCb:u,canvasMutationCb:d,fontCb:p,selectionCb:h,customElementCb:f}=e;e.mutationCb=(...e)=>{t.mutation&&t.mutation(...e),n(...e)},e.mousemoveCb=(...e)=>{t.mousemove&&t.mousemove(...e),r(...e)},e.mouseInteractionCb=(...e)=>{t.mouseInteraction&&t.mouseInteraction(...e),o(...e)},e.scrollCb=(...e)=>{t.scroll&&t.scroll(...e),i(...e)},e.viewportResizeCb=(...e)=>{t.viewportResize&&t.viewportResize(...e),s(...e)},e.inputCb=(...e)=>{t.input&&t.input(...e),a(...e)},e.mediaInteractionCb=(...e)=>{t.mediaInteaction&&t.mediaInteaction(...e),c(...e)},e.styleSheetRuleCb=(...e)=>{t.styleSheetRule&&t.styleSheetRule(...e),l(...e)},e.styleDeclarationCb=(...e)=>{t.styleDeclaration&&t.styleDeclaration(...e),u(...e)},e.canvasMutationCb=(...e)=>{t.canvasMutation&&t.canvasMutation(...e),d(...e)},e.fontCb=(...e)=>{t.font&&t.font(...e),p(...e)},e.selectionCb=(...e)=>{t.selection&&t.selection(...e),h(...e)},e.customElementCb=(...e)=>{t.customElement&&t.customElement(...e),f(...e)}}(e,t);let o=()=>{};e.recordDOM&&([r,o]=On(e,e.doc));const i=function({mousemoveCb:e,sampling:t,doc:n,mirror:r}){if(!1===t.mousemove)return()=>{};const o="number"==typeof t.mousemove?t.mousemove:50,i="number"==typeof t.mousemoveCallback?t.mousemoveCallback:500;let s,a=[];const c=tn(Mn(t=>{const n=Date.now()-s;e(a.map(e=>(e.timeOffset-=n,e)),t),a=[],s=null}),i),l=Mn(tn(Mn(e=>{const t=Rn(e),{clientX:n,clientY:o}=dn(e)?e.changedTouches[0]:e;s||(s=st()),a.push({x:n,y:o,id:r.getId(t),timeOffset:st()-s}),c("undefined"!=typeof DragEvent&&e instanceof DragEvent?qe.Drag:e instanceof MouseEvent?qe.MouseMove:qe.TouchMove)}),o,{trailing:!1})),u=[Zt("mousemove",l,n),Zt("touchmove",l,n),Zt("drag",l,n)];return Mn(()=>{u.forEach(e=>e())})}(e),s=function({mouseInteractionCb:e,doc:t,mirror:n,blockClass:r,blockSelector:o,sampling:i}){if(!1===i.mouseInteraction)return()=>{};const s=!0===i.mouseInteraction||void 0===i.mouseInteraction?{}:i.mouseInteraction,a=[];let c=null;return Object.keys(Ve).filter(e=>Number.isNaN(Number(e))&&!e.endsWith("_Departed")&&!1!==s[e]).forEach(i=>{let s=Ct(i);const l=(t=>i=>{const s=Rn(i);if(cn(s,r,o,!0))return;let a=null,l=t;if("pointerType"in i){switch(i.pointerType){case"mouse":a=Ye.Mouse;break;case"touch":a=Ye.Touch;break;case"pen":a=Ye.Pen}a===Ye.Touch?Ve[t]===Ve.MouseDown?l="TouchStart":Ve[t]===Ve.MouseUp&&(l="TouchEnd"):Ye.Pen}else dn(i)&&(a=Ye.Touch);null!==a?(c=a,(l.startsWith("Touch")&&a===Ye.Touch||l.startsWith("Mouse")&&a===Ye.Mouse)&&(a=null)):Ve[t]===Ve.Click&&(a=c,c=null);const u=dn(i)?i.changedTouches[0]:i;if(!u)return;const d=n.getId(s),{clientX:p,clientY:h}=u;Mn(e)({type:Ve[l],id:d,x:p,y:h,...null!==a&&{pointerType:a}})})(i);if(window.PointerEvent)switch(Ve[i]){case Ve.MouseDown:case Ve.MouseUp:s=s.replace("mouse","pointer");break;case Ve.TouchStart:case Ve.TouchEnd:return}a.push(Zt(s,l,t))}),Mn(()=>{a.forEach(e=>e())})}(e),a=An(e),c=function({viewportResizeCb:e},{win:t}){let n=-1,r=-1;return Zt("resize",Mn(tn(Mn(()=>{const t=on(),o=sn();n===t&&r===o||(e({width:Number(o),height:Number(t)}),n=t,r=o)}),200)),t)}(e,{win:n}),l=function({inputCb:e,doc:t,mirror:n,blockClass:r,blockSelector:o,ignoreClass:i,ignoreSelector:s,maskInputOptions:a,maskInputFn:c,sampling:l,userTriggeredOnInput:u}){function d(e){let n=Rn(e);const l=e.isTrusted,d=n&&n.tagName;if(n&&"OPTION"===d&&(n=dt(n)),!n||!d||_n.indexOf(d)<0||cn(n,r,o,!0))return;if(n.classList.contains(i)||s&&n.matches(s))return;let h=n.value,f=!1;const m=It(n)||"";"radio"===m||"checkbox"===m?f=n.checked:(a[d.toLowerCase()]||a[m])&&(h=kt({element:n,maskInputOptions:a,tagName:d,type:m,value:h,maskInputFn:c})),p(n,u?{text:h,isChecked:f,userTriggered:l}:{text:h,isChecked:f});const g=n.name;"radio"===m&&g&&f&&t.querySelectorAll(`input[type="radio"][name="${g}"]`).forEach(e=>{if(e!==n){const t=e.value;p(e,u?{text:t,isChecked:!f,userTriggered:!1}:{text:t,isChecked:!f})}})}function p(t,r){const o=Dn.get(t);if(!o||o.text!==r.text||o.isChecked!==r.isChecked){Dn.set(t,r);const o=n.getId(t);Mn(e)({...r,id:o})}}const h=("last"===l.input?["change"]:["input","change"]).map(e=>Zt(e,Mn(d),t)),f=t.defaultView;if(!f)return()=>{h.forEach(e=>e())};const m=f.Object.getOwnPropertyDescriptor(f.HTMLInputElement.prototype,"value"),g=[[f.HTMLInputElement.prototype,"value"],[f.HTMLInputElement.prototype,"checked"],[f.HTMLSelectElement.prototype,"value"],[f.HTMLTextAreaElement.prototype,"value"],[f.HTMLSelectElement.prototype,"selectedIndex"],[f.HTMLOptionElement.prototype,"selected"]];return m&&m.set&&h.push(...g.map(e=>nn(e[0],e[1],{set(){Mn(d)({target:this,isTrusted:!1})}},!1,f))),Mn(()=>{h.forEach(e=>e())})}(e),u=function({mediaInteractionCb:e,blockClass:t,blockSelector:n,mirror:r,sampling:o,doc:i}){const s=Mn(i=>tn(Mn(o=>{const s=Rn(o);if(!s||cn(s,t,n,!0))return;const{currentTime:a,volume:c,muted:l,playbackRate:u,loop:d}=s;e({type:i,id:r.getId(s),currentTime:a,volume:c,muted:l,playbackRate:u,loop:d})}),o.media||500)),a=[Zt("play",s(Xe.Play),i),Zt("pause",s(Xe.Pause),i),Zt("seeked",s(Xe.Seeked),i),Zt("volumechange",s(Xe.VolumeChange),i),Zt("ratechange",s(Xe.RateChange),i)];return Mn(()=>{a.forEach(e=>e())})}(e);let d=()=>{},p=()=>{},h=()=>{},f=()=>{};e.recordDOM&&(d=function({styleSheetRuleCb:e,mirror:t,stylesheetManager:n},{win:r}){if(!r.CSSStyleSheet||!r.CSSStyleSheet.prototype)return()=>{};const o=r.CSSStyleSheet.prototype.insertRule;r.CSSStyleSheet.prototype.insertRule=new Proxy(o,{apply:Mn((r,o,i)=>{const[s,a]=i,{id:c,styleId:l}=Nn(o,t,n.styleMirror);return(c&&-1!==c||l&&-1!==l)&&e({id:c,styleId:l,adds:[{rule:s,index:a}]}),r.apply(o,i)})}),r.CSSStyleSheet.prototype.addRule=function(e,t,n=this.cssRules.length){const o=`${e} { ${t} }`;return r.CSSStyleSheet.prototype.insertRule.apply(this,[o,n])};const i=r.CSSStyleSheet.prototype.deleteRule;let s,a;r.CSSStyleSheet.prototype.deleteRule=new Proxy(i,{apply:Mn((r,o,i)=>{const[s]=i,{id:a,styleId:c}=Nn(o,t,n.styleMirror);return(a&&-1!==a||c&&-1!==c)&&e({id:a,styleId:c,removes:[{index:s}]}),r.apply(o,i)})}),r.CSSStyleSheet.prototype.removeRule=function(e){return r.CSSStyleSheet.prototype.deleteRule.apply(this,[e])},r.CSSStyleSheet.prototype.replace&&(s=r.CSSStyleSheet.prototype.replace,r.CSSStyleSheet.prototype.replace=new Proxy(s,{apply:Mn((r,o,i)=>{const[s]=i,{id:a,styleId:c}=Nn(o,t,n.styleMirror);return(a&&-1!==a||c&&-1!==c)&&e({id:a,styleId:c,replace:s}),r.apply(o,i)})})),r.CSSStyleSheet.prototype.replaceSync&&(a=r.CSSStyleSheet.prototype.replaceSync,r.CSSStyleSheet.prototype.replaceSync=new Proxy(a,{apply:Mn((r,o,i)=>{const[s]=i,{id:a,styleId:c}=Nn(o,t,n.styleMirror);return(a&&-1!==a||c&&-1!==c)&&e({id:a,styleId:c,replaceSync:s}),r.apply(o,i)})}));const c={};$n("CSSGroupingRule")?c.CSSGroupingRule=r.CSSGroupingRule:($n("CSSMediaRule")&&(c.CSSMediaRule=r.CSSMediaRule),$n("CSSConditionRule")&&(c.CSSConditionRule=r.CSSConditionRule),$n("CSSSupportsRule")&&(c.CSSSupportsRule=r.CSSSupportsRule));const l={};return Object.entries(c).forEach(([r,o])=>{l[r]={insertRule:o.prototype.insertRule,deleteRule:o.prototype.deleteRule},o.prototype.insertRule=new Proxy(l[r].insertRule,{apply:Mn((r,o,i)=>{const[s,a]=i,{id:c,styleId:l}=Nn(o.parentStyleSheet,t,n.styleMirror);return(c&&-1!==c||l&&-1!==l)&&e({id:c,styleId:l,adds:[{rule:s,index:[...Pn(o),a||0]}]}),r.apply(o,i)})}),o.prototype.deleteRule=new Proxy(l[r].deleteRule,{apply:Mn((r,o,i)=>{const[s]=i,{id:a,styleId:c}=Nn(o.parentStyleSheet,t,n.styleMirror);return(a&&-1!==a||c&&-1!==c)&&e({id:a,styleId:c,removes:[{index:[...Pn(o),s]}]}),r.apply(o,i)})})}),Mn(()=>{r.CSSStyleSheet.prototype.insertRule=o,r.CSSStyleSheet.prototype.deleteRule=i,s&&(r.CSSStyleSheet.prototype.replace=s),a&&(r.CSSStyleSheet.prototype.replaceSync=a),Object.entries(c).forEach(([e,t])=>{t.prototype.insertRule=l[e].insertRule,t.prototype.deleteRule=l[e].deleteRule})})}(e,{win:n}),p=Ln(e,e.doc),h=function({styleDeclarationCb:e,mirror:t,ignoreCSSAttributes:n,stylesheetManager:r},{win:o}){const i=o.CSSStyleDeclaration.prototype.setProperty;o.CSSStyleDeclaration.prototype.setProperty=new Proxy(i,{apply:Mn((o,s,a)=>{var c;const[l,u,d]=a;if(n.has(l))return i.apply(s,[l,u,d]);const{id:p,styleId:h}=Nn(null==(c=s.parentRule)?void 0:c.parentStyleSheet,t,r.styleMirror);return(p&&-1!==p||h&&-1!==h)&&e({id:p,styleId:h,set:{property:l,value:u,priority:d},index:Pn(s.parentRule)}),o.apply(s,a)})});const s=o.CSSStyleDeclaration.prototype.removeProperty;return o.CSSStyleDeclaration.prototype.removeProperty=new Proxy(s,{apply:Mn((o,i,a)=>{var c;const[l]=a;if(n.has(l))return s.apply(i,[l]);const{id:u,styleId:d}=Nn(null==(c=i.parentRule)?void 0:c.parentStyleSheet,t,r.styleMirror);return(u&&-1!==u||d&&-1!==d)&&e({id:u,styleId:d,remove:{property:l},index:Pn(i.parentRule)}),o.apply(i,a)})}),Mn(()=>{o.CSSStyleDeclaration.prototype.setProperty=i,o.CSSStyleDeclaration.prototype.removeProperty=s})}(e,{win:n}),e.collectFonts&&(f=function({fontCb:e,doc:t}){const n=t.defaultView;if(!n)return()=>{};const r=[],o=/* @__PURE__ */new WeakMap,i=n.FontFace;n.FontFace=function(e,t,n){const r=new i(e,t,n);return o.set(r,{family:e,buffer:"string"!=typeof t,descriptors:n,fontSource:"string"==typeof t?t:JSON.stringify(Array.from(new Uint8Array(t)))}),r};const s=at(t.fonts,"add",function(t){return function(n){return setTimeout(Mn(()=>{const t=o.get(n);t&&(e(t),o.delete(n))}),0),t.apply(this,[n])}});return r.push(()=>{n.FontFace=i}),r.push(s),Mn(()=>{r.forEach(e=>e())})}(e)));const m=function(e){const{doc:t,mirror:n,blockClass:r,blockSelector:o,selectionCb:i}=e;let s=!0;const a=Mn(()=>{const e=t.getSelection();if(!e||s&&(null==e?void 0:e.isCollapsed))return;s=e.isCollapsed||!1;const a=[],c=e.rangeCount||0;for(let t=0;t<c;t++){const{startContainer:i,startOffset:s,endContainer:c,endOffset:l}=e.getRangeAt(t);cn(i,r,o,!0)||cn(c,r,o,!0)||a.push({start:n.getId(i),startOffset:s,end:n.getId(c),endOffset:l})}i({ranges:a})});return a(),Zt("selectionchange",a)}(e),g=function({doc:e,customElementCb:t}){const n=e.defaultView;return n&&n.customElements?at(n.customElements,"define",function(e){return function(n,r,o){try{t({define:{name:n}})}catch(i){console.warn(`Custom element callback failed for ${n}`)}return e.apply(this,[n,r,o])}}):()=>{}}(e),y=[];for(const b of e.plugins)y.push(b.observer(b.callback,n,b.options));return Mn(()=>{Tn.forEach(e=>e.reset()),r?.disconnect(),o(),i(),s(),a(),c(),l(),u(),d(),p(),h(),f(),m(),g(),y.forEach(e=>e())})}function zn(e){return void 0!==window[e]}function $n(e){return Boolean(void 0!==window[e]&&window[e].prototype&&"insertRule"in window[e].prototype&&"deleteRule"in window[e].prototype)}for(var Bn=class{constructor(e){He(this,"iframeIdToRemoteIdMap",/* @__PURE__ */new WeakMap),He(this,"iframeRemoteIdToIdMap",/* @__PURE__ */new WeakMap),this.generateIdFn=e}getId(e,t,n,r){const o=n||this.getIdToRemoteIdMap(e),i=r||this.getRemoteIdToIdMap(e);let s=o.get(t);return s||(s=this.generateIdFn(),o.set(t,s),i.set(s,t)),s}getIds(e,t){const n=this.getIdToRemoteIdMap(e),r=this.getRemoteIdToIdMap(e);return t.map(t=>this.getId(e,t,n,r))}getRemoteId(e,t,n){const r=n||this.getRemoteIdToIdMap(e);return"number"!=typeof t?t:r.get(t)||-1}getRemoteIds(e,t){const n=this.getRemoteIdToIdMap(e);return t.map(t=>this.getRemoteId(e,t,n))}reset(e){if(!e)return this.iframeIdToRemoteIdMap=/* @__PURE__ */new WeakMap,void(this.iframeRemoteIdToIdMap=/* @__PURE__ */new WeakMap);this.iframeIdToRemoteIdMap.delete(e),this.iframeRemoteIdToIdMap.delete(e)}getIdToRemoteIdMap(e){let t=this.iframeIdToRemoteIdMap.get(e);return t||(t=/* @__PURE__ */new Map,this.iframeIdToRemoteIdMap.set(e,t)),t}getRemoteIdToIdMap(e){let t=this.iframeRemoteIdToIdMap.get(e);return t||(t=/* @__PURE__ */new Map,this.iframeRemoteIdToIdMap.set(e,t)),t}},Wn=class{constructor(e){He(this,"iframes",/* @__PURE__ */new WeakMap),He(this,"crossOriginIframeMap",/* @__PURE__ */new WeakMap),He(this,"crossOriginIframeMirror",new Bn(zt)),He(this,"crossOriginIframeStyleMirror"),He(this,"crossOriginIframeRootIdMap",/* @__PURE__ */new WeakMap),He(this,"mirror"),He(this,"mutationCb"),He(this,"wrappedEmit"),He(this,"loadListener"),He(this,"stylesheetManager"),He(this,"recordCrossOriginIframes"),this.mutationCb=e.mutationCb,this.wrappedEmit=e.wrappedEmit,this.stylesheetManager=e.stylesheetManager,this.recordCrossOriginIframes=e.recordCrossOriginIframes,this.crossOriginIframeStyleMirror=new Bn(this.stylesheetManager.styleMirror.generateId.bind(this.stylesheetManager.styleMirror)),this.mirror=e.mirror,this.recordCrossOriginIframes&&window.addEventListener("message",this.handleMessage.bind(this))}addIframe(e){this.iframes.set(e,!0),e.contentWindow&&this.crossOriginIframeMap.set(e.contentWindow,e)}addLoadListener(e){this.loadListener=e}attachIframe(e,t){var n,r;this.mutationCb({adds:[{parentId:this.mirror.getId(e),nextId:null,node:t}],removes:[],texts:[],attributes:[],isAttachIframe:!0}),this.recordCrossOriginIframes&&(null==(n=e.contentWindow)||n.addEventListener("message",this.handleMessage.bind(this))),null==(r=this.loadListener)||r.call(this,e),e.contentDocument&&e.contentDocument.adoptedStyleSheets&&e.contentDocument.adoptedStyleSheets.length>0&&this.stylesheetManager.adoptStyleSheets(e.contentDocument.adoptedStyleSheets,this.mirror.getId(e.contentDocument))}handleMessage(e){const t=e;if("rrweb"!==t.data.type||t.origin!==t.data.origin)return;if(!e.source)return;const n=this.crossOriginIframeMap.get(e.source);if(!n)return;const r=this.transformCrossOriginEvent(n,t.data.event);r&&this.wrappedEmit(r,t.data.isCheckout)}transformCrossOriginEvent(e,t){var n;switch(t.type){case je.FullSnapshot:{this.crossOriginIframeMirror.reset(e),this.crossOriginIframeStyleMirror.reset(e),this.replaceIdOnNode(t.data.node,e);const n=t.data.node.id;return this.crossOriginIframeRootIdMap.set(e,n),this.patchRootIdOnNode(t.data.node,n),{timestamp:t.timestamp,type:je.IncrementalSnapshot,data:{source:qe.Mutation,adds:[{parentId:this.mirror.getId(e),nextId:null,node:t.data.node}],removes:[],texts:[],attributes:[],isAttachIframe:!0}}}case je.Meta:case je.Load:case je.DomContentLoaded:return!1;case je.Plugin:return t;case je.Custom:return this.replaceIds(t.data.payload,e,["id","parentId","previousId","nextId"]),t;case je.IncrementalSnapshot:switch(t.data.source){case qe.Mutation:return t.data.adds.forEach(t=>{this.replaceIds(t,e,["parentId","nextId","previousId"]),this.replaceIdOnNode(t.node,e);const n=this.crossOriginIframeRootIdMap.get(e);n&&this.patchRootIdOnNode(t.node,n)}),t.data.removes.forEach(t=>{this.replaceIds(t,e,["parentId","id"])}),t.data.attributes.forEach(t=>{this.replaceIds(t,e,["id"])}),t.data.texts.forEach(t=>{this.replaceIds(t,e,["id"])}),t;case qe.Drag:case qe.TouchMove:case qe.MouseMove:return t.data.positions.forEach(t=>{this.replaceIds(t,e,["id"])}),t;case qe.ViewportResize:return!1;case qe.MediaInteraction:case qe.MouseInteraction:case qe.Scroll:case qe.CanvasMutation:case qe.Input:return this.replaceIds(t.data,e,["id"]),t;case qe.StyleSheetRule:case qe.StyleDeclaration:return this.replaceIds(t.data,e,["id"]),this.replaceStyleIds(t.data,e,["styleId"]),t;case qe.Font:return t;case qe.Selection:return t.data.ranges.forEach(t=>{this.replaceIds(t,e,["start","end"])}),t;case qe.AdoptedStyleSheet:return this.replaceIds(t.data,e,["id"]),this.replaceStyleIds(t.data,e,["styleIds"]),null==(n=t.data.styles)||n.forEach(t=>{this.replaceStyleIds(t,e,["styleId"])}),t}}return!1}replace(e,t,n,r){for(const o of r)(Array.isArray(t[o])||"number"==typeof t[o])&&(Array.isArray(t[o])?t[o]=e.getIds(n,t[o]):t[o]=e.getId(n,t[o]));return t}replaceIds(e,t,n){return this.replace(this.crossOriginIframeMirror,e,t,n)}replaceStyleIds(e,t,n){return this.replace(this.crossOriginIframeStyleMirror,e,t,n)}replaceIdOnNode(e,t){this.replaceIds(e,t,["id","rootId"]),"childNodes"in e&&e.childNodes.forEach(e=>{this.replaceIdOnNode(e,t)})}patchRootIdOnNode(e,t){e.type===Ge.Document||e.rootId||(e.rootId=t),"childNodes"in e&&e.childNodes.forEach(e=>{this.patchRootIdOnNode(e,t)})}},Un=class{constructor(e){He(this,"shadowDoms",/* @__PURE__ */new WeakSet),He(this,"mutationCb"),He(this,"scrollCb"),He(this,"bypassOptions"),He(this,"mirror"),He(this,"restoreHandlers",[]),this.mutationCb=e.mutationCb,this.scrollCb=e.scrollCb,this.bypassOptions=e.bypassOptions,this.mirror=e.mirror,this.init()}init(){this.reset(),this.patchAttachShadow(Element,document)}addShadowRoot(e,t){if(!vt(e))return;if(this.shadowDoms.has(e))return;this.shadowDoms.add(e);const[n]=On({...this.bypassOptions,doc:t,mutationCb:this.mutationCb,mirror:this.mirror,shadowDomManager:this},e);this.restoreHandlers.push(()=>n.disconnect()),this.restoreHandlers.push(An({...this.bypassOptions,scrollCb:this.scrollCb,doc:e,mirror:this.mirror})),setTimeout(()=>{e.adoptedStyleSheets&&e.adoptedStyleSheets.length>0&&this.bypassOptions.stylesheetManager.adoptStyleSheets(e.adoptedStyleSheets,this.mirror.getId(mt(e))),this.restoreHandlers.push(Ln({mirror:this.mirror,stylesheetManager:this.bypassOptions.stylesheetManager},e))},0)}observeAttachShadow(e){e.contentWindow&&e.contentDocument&&this.patchAttachShadow(e.contentWindow.Element,e.contentDocument)}patchAttachShadow(e,t){const n=this;this.restoreHandlers.push(at(e.prototype,"attachShadow",function(e){return function(r){const o=e.call(this,r),i=gt(this);return i&&yn(this)&&n.addShadowRoot(i,t),o}}))}reset(){this.restoreHandlers.forEach(e=>{try{e()}catch(t){}}),this.restoreHandlers=[],this.shadowDoms=/* @__PURE__ */new WeakSet}},Hn="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/",jn="undefined"==typeof Uint8Array?[]:/* @__PURE__ */new Uint8Array(256),qn=0;qn<64;qn++)jn[Hn.charCodeAt(qn)]=qn;var Vn=function(e){var t,n=new Uint8Array(e),r=n.length,o="";for(t=0;t<r;t+=3)o+=Hn[n[t]>>2],o+=Hn[(3&n[t])<<4|n[t+1]>>4],o+=Hn[(15&n[t+1])<<2|n[t+2]>>6],o+=Hn[63&n[t+2]];return r%3==2?o=o.substring(0,o.length-1)+"=":r%3==1&&(o=o.substring(0,o.length-2)+"=="),o},Yn=/* @__PURE__ */new Map,Kn=(e,t,n)=>{if(!e||!Jn(e,t)&&"object"!=typeof e)return;const r=function(e,t){let n=Yn.get(e);return n||(n=/* @__PURE__ */new Map,Yn.set(e,n)),n.has(t)||n.set(t,[]),n.get(t)}(n,e.constructor.name);let o=r.indexOf(e);return-1===o&&(o=r.length,r.push(e)),o};function Xn(e,t,n){if(e instanceof Array)return e.map(e=>Xn(e,t,n));if(null===e)return e;if(e instanceof Float32Array||e instanceof Float64Array||e instanceof Int32Array||e instanceof Uint32Array||e instanceof Uint8Array||e instanceof Uint16Array||e instanceof Int16Array||e instanceof Int8Array||e instanceof Uint8ClampedArray)return{rr_type:e.constructor.name,args:[Object.values(e)]};if(e instanceof ArrayBuffer)return{rr_type:e.constructor.name,base64:Vn(e)};if(e instanceof DataView)return{rr_type:e.constructor.name,args:[Xn(e.buffer,t,n),e.byteOffset,e.byteLength]};if(e instanceof HTMLImageElement){const t=e.constructor.name,{src:n}=e;return{rr_type:t,src:n}}return e instanceof HTMLCanvasElement?{rr_type:"HTMLImageElement",src:e.toDataURL()}:e instanceof ImageData?{rr_type:e.constructor.name,args:[Xn(e.data,t,n),e.width,e.height]}:Jn(e,t)||"object"==typeof e?{rr_type:e.constructor.name,index:Kn(e,t,n)}:e}var Gn=(e,t,n)=>e.map(e=>Xn(e,t,n)),Jn=(e,t)=>{const n=["WebGLActiveInfo","WebGLBuffer","WebGLFramebuffer","WebGLProgram","WebGLRenderbuffer","WebGLShader","WebGLShaderPrecisionFormat","WebGLTexture","WebGLUniformLocation","WebGLVertexArrayObject","WebGLVertexArrayObjectOES"].filter(e=>"function"==typeof t[e]);return Boolean(n.find(n=>e instanceof t[n]))};function Zn(e,t,n,r){const o=[];try{const i=at(e.HTMLCanvasElement.prototype,"getContext",function(e){return function(o,...i){if(!cn(this,t,n,!0)){const e=function(e){return"experimental-webgl"===e?"webgl":e}(o);if("__context"in this||(this.__context=e),r&&["webgl","webgl2"].includes(e))if(i[0]&&"object"==typeof i[0]){const e=i[0];e.preserveDrawingBuffer||(e.preserveDrawingBuffer=!0)}else i.splice(0,1,{preserveDrawingBuffer:!0})}return e.apply(this,[o,...i])}});o.push(i)}catch{console.error("failed to patch HTMLCanvasElement.prototype.getContext")}return()=>{o.forEach(e=>e())}}function Qn(e,t,n,r,o,i){const s=[],a=Object.getOwnPropertyNames(e);for(const c of a)if(!["isContextLost","canvas","drawingBufferWidth","drawingBufferHeight"].includes(c))try{if("function"!=typeof e[c])continue;const a=at(e,c,function(e){return function(...s){const a=e.apply(this,s);if(Kn(a,i,this),"tagName"in this.canvas&&!cn(this.canvas,r,o,!0)){const e=Gn(s,i,this),r={type:t,property:c,args:e};n(this.canvas,r)}return a}});s.push(a)}catch{const r=nn(e,c,{set(e){n(this.canvas,{type:t,property:c,args:[e],setter:!0})}});s.push(r)}return s}var er='(function() {\n "use strict";\n var chars = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/";\n var lookup = typeof Uint8Array === "undefined" ? [] : new Uint8Array(256);\n for (var i = 0; i < chars.length; i++) {\n lookup[chars.charCodeAt(i)] = i;\n }\n var encode = function(arraybuffer) {\n var bytes = new Uint8Array(arraybuffer), i2, len = bytes.length, base64 = "";\n for (i2 = 0; i2 < len; i2 += 3) {\n base64 += chars[bytes[i2] >> 2];\n base64 += chars[(bytes[i2] & 3) << 4 | bytes[i2 + 1] >> 4];\n base64 += chars[(bytes[i2 + 1] & 15) << 2 | bytes[i2 + 2] >> 6];\n base64 += chars[bytes[i2 + 2] & 63];\n }\n if (len % 3 === 2) {\n base64 = base64.substring(0, base64.length - 1) + "=";\n } else if (len % 3 === 1) {\n base64 = base64.substring(0, base64.length - 2) + "==";\n }\n return base64;\n };\n const lastBlobMap = /* @__PURE__ */ new Map();\n const transparentBlobMap = /* @__PURE__ */ new Map();\n async function getTransparentBlobFor(width, height, dataURLOptions) {\n const id = `${width}-${height}`;\n if ("OffscreenCanvas" in globalThis) {\n if (transparentBlobMap.has(id)) return transparentBlobMap.get(id);\n const offscreen = new OffscreenCanvas(width, height);\n offscreen.getContext("2d");\n const blob = await offscreen.convertToBlob(dataURLOptions);\n const arrayBuffer = await blob.arrayBuffer();\n const base64 = encode(arrayBuffer);\n transparentBlobMap.set(id, base64);\n return base64;\n } else {\n return "";\n }\n }\n const worker = self;\n worker.onmessage = async function(e) {\n if ("OffscreenCanvas" in globalThis) {\n const { id, bitmap, width, height, dataURLOptions } = e.data;\n const transparentBase64 = getTransparentBlobFor(\n width,\n height,\n dataURLOptions\n );\n const offscreen = new OffscreenCanvas(width, height);\n const ctx = offscreen.getContext("2d");\n ctx.drawImage(bitmap, 0, 0);\n bitmap.close();\n const blob = await offscreen.convertToBlob(dataURLOptions);\n const type = blob.type;\n const arrayBuffer = await blob.arrayBuffer();\n const base64 = encode(arrayBuffer);\n if (!lastBlobMap.has(id) && await transparentBase64 === base64) {\n lastBlobMap.set(id, base64);\n return worker.postMessage({ id });\n }\n if (lastBlobMap.get(id) === base64) return worker.postMessage({ id });\n worker.postMessage({\n id,\n type,\n base64,\n width,\n height\n });\n lastBlobMap.set(id, base64);\n } else {\n return worker.postMessage({ id: e.data.id });\n }\n };\n})();\n//# sourceMappingURL=image-bitmap-data-url-worker-IJpC7g_b.js.map\n',tr="undefined"!=typeof self&&self.Blob&&new Blob([er],{type:"text/javascript;charset=utf-8"});function nr(e){let t;try{if(t=tr&&(self.URL||self.webkitURL).createObjectURL(tr),!t)throw"";const n=new Worker(t,{name:null==e?void 0:e.name});return n.addEventListener("error",()=>{(self.URL||self.webkitURL).revokeObjectURL(t)}),n}catch(n){return new Worker("data:text/javascript;charset=utf-8,"+encodeURIComponent(er),{name:null==e?void 0:e.name})}finally{t&&(self.URL||self.webkitURL).revokeObjectURL(t)}}var rr,or,ir,sr=class{constructor(e){He(this,"pendingCanvasMutations",/* @__PURE__ */new Map),He(this,"rafStamps",{latestId:0,invokeId:null}),He(this,"mirror"),He(this,"mutationCb"),He(this,"resetObservers"),He(this,"frozen",!1),He(this,"locked",!1),He(this,"processMutation",(e,t)=>{(this.rafStamps.invokeId&&this.rafStamps.latestId!==this.rafStamps.invokeId||!this.rafStamps.invokeId)&&(this.rafStamps.invokeId=this.rafStamps.latestId),this.pendingCanvasMutations.has(e)||this.pendingCanvasMutations.set(e,[]),this.pendingCanvasMutations.get(e).push(t)});const{sampling:t="all",win:n,blockClass:r,blockSelector:o,recordCanvas:i,dataURLOptions:s}=e;this.mutationCb=e.mutationCb,this.mirror=e.mirror,i&&"all"===t&&this.initCanvasMutationObserver(n,r,o),i&&"number"==typeof t&&this.initCanvasFPSObserver(t,n,r,o,{dataURLOptions:s})}reset(){this.pendingCanvasMutations.clear(),this.resetObservers&&this.resetObservers()}freeze(){this.frozen=!0}unfreeze(){this.frozen=!1}lock(){this.locked=!0}unlock(){this.locked=!1}initCanvasFPSObserver(e,t,n,r,o){const i=Zn(t,n,r,!0),s=/* @__PURE__ */new Map,a=new nr;a.onmessage=e=>{const{id:t}=e.data;if(s.set(t,!1),!("base64"in e.data))return;const{base64:n,type:r,width:o,height:i}=e.data;this.mutationCb({id:t,type:Ke["2D"],commands:[{property:"clearRect",args:[0,0,o,i]},{property:"drawImage",args:[{rr_type:"ImageBitmap",args:[{rr_type:"Blob",data:[{rr_type:"ArrayBuffer",base64:n}],type:r}]},0,0]}]})};const c=1e3/e;let l,u=0;const d=e=>{u&&e-u<c||(u=e,(()=>{const e=[];return t.document.querySelectorAll("canvas").forEach(t=>{cn(t,n,r,!0)||e.push(t)}),e})().forEach(async e=>{var t;const n=this.mirror.getId(e);if(s.get(n))return;if(0===e.width||0===e.height)return;if(s.set(n,!0),["webgl","webgl2"].includes(e.__context)){const n=e.getContext(e.__context);!1===(null==(t=null==n?void 0:n.getContextAttributes())?void 0:t.preserveDrawingBuffer)&&n.clear(n.COLOR_BUFFER_BIT)}const r=await createImageBitmap(e);a.postMessage({id:n,bitmap:r,width:e.width,height:e.height,dataURLOptions:o.dataURLOptions},[r])})),l=requestAnimationFrame(d)};l=requestAnimationFrame(d),this.resetObservers=()=>{i(),cancelAnimationFrame(l)}}initCanvasMutationObserver(e,t,n){this.startRAFTimestamping(),this.startPendingCanvasMutationFlusher();const r=Zn(e,t,n,!1),o=function(e,t,n,r){const o=[],i=Object.getOwnPropertyNames(t.CanvasRenderingContext2D.prototype);for(const s of i)try{if("function"!=typeof t.CanvasRenderingContext2D.prototype[s])continue;const i=at(t.CanvasRenderingContext2D.prototype,s,function(o){return function(...i){return cn(this.canvas,n,r,!0)||setTimeout(()=>{const n=Gn(i,t,this);e(this.canvas,{type:Ke["2D"],property:s,args:n})},0),o.apply(this,i)}});o.push(i)}catch{const n=nn(t.CanvasRenderingContext2D.prototype,s,{set(t){e(this.canvas,{type:Ke["2D"],property:s,args:[t],setter:!0})}});o.push(n)}return()=>{o.forEach(e=>e())}}(this.processMutation.bind(this),e,t,n),i=function(e,t,n,r){const o=[];return void 0!==t.WebGLRenderingContext&&o.push(...Qn(t.WebGLRenderingContext.prototype,Ke.WebGL,e,n,r,t)),void 0!==t.WebGL2RenderingContext&&o.push(...Qn(t.WebGL2RenderingContext.prototype,Ke.WebGL2,e,n,r,t)),()=>{o.forEach(e=>e())}}(this.processMutation.bind(this),e,t,n);this.resetObservers=()=>{r(),o(),i()}}startPendingCanvasMutationFlusher(){requestAnimationFrame(()=>this.flushPendingCanvasMutations())}startRAFTimestamping(){const e=t=>{this.rafStamps.latestId=t,requestAnimationFrame(e)};requestAnimationFrame(e)}flushPendingCanvasMutations(){this.pendingCanvasMutations.forEach((e,t)=>{const n=this.mirror.getId(t);this.flushPendingCanvasMutationFor(t,n)}),requestAnimationFrame(()=>this.flushPendingCanvasMutations())}flushPendingCanvasMutationFor(e,t){if(this.frozen||this.locked)return;const n=this.pendingCanvasMutations.get(e);if(!n||-1===t)return;const r=n.map(e=>{const{type:t,...n}=e;return n}),{type:o}=n[0];this.mutationCb({id:t,type:o,commands:r}),this.pendingCanvasMutations.delete(e)}},ar=class{constructor(e){He(this,"trackedLinkElements",/* @__PURE__ */new WeakSet),He(this,"mutationCb"),He(this,"adoptedStyleSheetCb"),He(this,"styleMirror",new mn),this.mutationCb=e.mutationCb,this.adoptedStyleSheetCb=e.adoptedStyleSheetCb}attachLinkElement(e,t){"_cssText"in t.attributes&&this.mutationCb({adds:[],removes:[],texts:[],attributes:[{id:t.id,attributes:t.attributes}]}),this.trackLinkElement(e)}trackLinkElement(e){this.trackedLinkElements.has(e)||(this.trackedLinkElements.add(e),this.trackStylesheetInLinkElement(e))}adoptStyleSheets(e,t){if(0===e.length)return;const n={id:t,styleIds:[]},r=[];for(const o of e){let e;this.styleMirror.has(o)?e=this.styleMirror.getId(o):(e=this.styleMirror.add(o),r.push({styleId:e,rules:Array.from(o.rules||CSSRule,(e,t)=>({rule:xt(e,o.href),index:t}))})),n.styleIds.push(e)}r.length>0&&(n.styles=r),this.adoptedStyleSheetCb(n)}reset(){this.styleMirror.reset(),this.trackedLinkElements=/* @__PURE__ */new WeakSet}trackStylesheetInLinkElement(e){}},cr=class{constructor(){He(this,"nodeMap",/* @__PURE__ */new WeakMap),He(this,"active",!1)}inOtherBuffer(e,t){const n=this.nodeMap.get(e);return n&&Array.from(n).some(e=>e!==t)}add(e,t){this.active||(this.active=!0,requestAnimationFrame(()=>{this.nodeMap=/* @__PURE__ */new WeakMap,this.active=!1})),this.nodeMap.set(e,(this.nodeMap.get(e)||/* @__PURE__ */new Set).add(t))}destroy(){}},lr=!1;try{if(2!==Array.from([1],e=>2*e)[0]){const e=document.createElement("iframe");document.body.appendChild(e),Array.from=(null==($e=e.contentWindow)?void 0:$e.Array.from)||Array.from,document.body.removeChild(e)}}catch($d){}var ur=new St;function dr(e={}){const{emit:t,checkoutEveryNms:n,checkoutEveryNth:r,blockClass:o="rr-block",blockSelector:i=null,ignoreClass:s="rr-ignore",ignoreSelector:a=null,maskTextClass:c="rr-mask",maskTextSelector:l=null,inlineStylesheet:u=!0,maskAllInputs:d,maskInputOptions:p,slimDOMOptions:h,maskInputFn:f,maskTextFn:m,hooks:g,packFn:y,sampling:b={},dataURLOptions:v={},mousemoveWait:w,recordDOM:x=!0,recordCanvas:S=!1,recordCrossOriginIframes:k=!1,recordAfter:C=("DOMContentLoaded"===e.recordAfter?e.recordAfter:"load"),userTriggeredOnInput:E=!1,collectFonts:I=!1,inlineImages:M=!1,plugins:T,keepIframeSrcFn:R=()=>!1,ignoreCSSAttributes:O=/* @__PURE__ */new Set([]),errorHandler:A}=e;vn=A;const _=!k||window.parent===window;let D=!1;if(!_)try{window.parent.document&&(D=!1)}catch(V){D=!0}if(_&&!t)throw new Error("emit function is required");if(!_&&!D)return()=>{};void 0!==w&&void 0===b.mousemove&&(b.mousemove=w),ur.reset();const P=!0===d?{color:!0,date:!0,"datetime-local":!0,email:!0,month:!0,number:!0,range:!0,search:!0,tel:!0,text:!0,time:!0,url:!0,week:!0,textarea:!0,select:!0,password:!0}:void 0!==p?p:{password:!0},N=Xt(h);let L;!function(e=window){"NodeList"in e&&!e.NodeList.prototype.forEach&&(e.NodeList.prototype.forEach=Array.prototype.forEach),"DOMTokenList"in e&&!e.DOMTokenList.prototype.forEach&&(e.DOMTokenList.prototype.forEach=Array.prototype.forEach)}();let F=0;const z=e=>{for(const t of T||[])t.eventProcessor&&(e=t.eventProcessor(e));return y&&!D&&(e=y(e)),e};rr=(e,o)=>{var i;const s=e;if(s.timestamp=st(),!(null==(i=Tn[0])?void 0:i.isFrozen())||s.type===je.FullSnapshot||s.type===je.IncrementalSnapshot&&s.data.source===qe.Mutation||Tn.forEach(e=>e.unfreeze()),_)t?.(z(s),o);else if(D){const e={type:"rrweb",event:z(s),origin:window.location.origin,isCheckout:o};window.parent.postMessage(e,"*")}if(s.type===je.FullSnapshot)L=s,F=0;else if(s.type===je.IncrementalSnapshot){if(s.data.source===qe.Mutation&&s.data.isAttachIframe)return;F++;const e=r&&F>=r,t=n&&s.timestamp-L.timestamp>n;(e||t)&&or(!0)}};const $=e=>{rr({type:je.IncrementalSnapshot,data:{source:qe.Mutation,...e}})},B=e=>rr({type:je.IncrementalSnapshot,data:{source:qe.Scroll,...e}}),W=e=>rr({type:je.IncrementalSnapshot,data:{source:qe.CanvasMutation,...e}}),U=new ar({mutationCb:$,adoptedStyleSheetCb:e=>rr({type:je.IncrementalSnapshot,data:{source:qe.AdoptedStyleSheet,...e}})}),H=new Wn({mirror:ur,mutationCb:$,stylesheetManager:U,recordCrossOriginIframes:k,wrappedEmit:rr});for(const K of T||[])K.getMirror&&K.getMirror({nodeMirror:ur,crossOriginIframeMirror:H.crossOriginIframeMirror,crossOriginIframeStyleMirror:H.crossOriginIframeStyleMirror});const j=new cr;ir=new sr({recordCanvas:S,mutationCb:W,win:window,blockClass:o,blockSelector:i,mirror:ur,sampling:b.canvas,dataURLOptions:v});const q=new Un({mutationCb:$,scrollCb:B,bypassOptions:{blockClass:o,blockSelector:i,maskTextClass:c,maskTextSelector:l,inlineStylesheet:u,maskInputOptions:P,dataURLOptions:v,maskTextFn:m,maskInputFn:f,recordCanvas:S,inlineImages:M,sampling:b,slimDOMOptions:N,iframeManager:H,stylesheetManager:U,canvasManager:ir,keepIframeSrcFn:R,processedNodeManager:j},mirror:ur});or=(e=!1)=>{if(!x)return;rr({type:je.Meta,data:{href:window.location.href,width:sn(),height:on()}},e),U.reset(),q.init(),Tn.forEach(e=>e.lock());const t=function(e,t){const{mirror:n=new St,blockClass:r="rr-block",blockSelector:o=null,maskTextClass:i="rr-mask",maskTextSelector:s=null,inlineStylesheet:a=!0,inlineImages:c=!1,recordCanvas:l=!1,maskAllInputs:u=!1,maskTextFn:d,maskInputFn:p,slimDOM:h=!1,dataURLOptions:f,preserveWhiteSpace:m,onSerialize:g,onIframeLoad:y,iframeLoadTimeout:b,onStylesheetLoad:v,stylesheetLoadTimeout:w,keepIframeSrcFn:x=()=>!1}=t;return Gt(e,{doc:e,mirror:n,blockClass:r,blockSelector:o,maskTextClass:i,maskTextSelector:s,skipChild:!1,inlineStylesheet:a,maskInputOptions:!0===u?{color:!0,date:!0,"datetime-local":!0,email:!0,month:!0,number:!0,range:!0,search:!0,tel:!0,text:!0,time:!0,url:!0,week:!0,textarea:!0,select:!0,password:!0}:!1===u?{password:!0}:u,maskTextFn:d,maskInputFn:p,slimDOMOptions:Xt(h),dataURLOptions:f,inlineImages:c,recordCanvas:l,preserveWhiteSpace:m,onSerialize:g,onIframeLoad:y,iframeLoadTimeout:b,onStylesheetLoad:v,stylesheetLoadTimeout:w,keepIframeSrcFn:x,newlyAddedElement:!1})}(document,{mirror:ur,blockClass:o,blockSelector:i,maskTextClass:c,maskTextSelector:l,inlineStylesheet:u,maskAllInputs:P,maskTextFn:m,maskInputFn:f,slimDOM:N,dataURLOptions:v,recordCanvas:S,inlineImages:M,onSerialize:e=>{pn(e,ur)&&H.addIframe(e),hn(e,ur)&&U.trackLinkElement(e),fn(e)&&q.addShadowRoot(gt(e),document)},onIframeLoad:(e,t)=>{H.attachIframe(e,t),q.observeAttachShadow(e)},onStylesheetLoad:(e,t)=>{U.attachLinkElement(e,t)},keepIframeSrcFn:R});if(!t)return console.warn("Failed to snapshot the document");rr({type:je.FullSnapshot,data:{node:t,initialOffset:rn(window)}},e),Tn.forEach(e=>e.unlock()),document.adoptedStyleSheets&&document.adoptedStyleSheets.length>0&&U.adoptStyleSheets(document.adoptedStyleSheets,ur.getId(document))};try{const e=[],t=e=>{var t;return Mn(Fn)({mutationCb:$,mousemoveCb:(e,t)=>rr({type:je.IncrementalSnapshot,data:{source:t,positions:e}}),mouseInteractionCb:e=>rr({type:je.IncrementalSnapshot,data:{source:qe.MouseInteraction,...e}}),scrollCb:B,viewportResizeCb:e=>rr({type:je.IncrementalSnapshot,data:{source:qe.ViewportResize,...e}}),inputCb:e=>rr({type:je.IncrementalSnapshot,data:{source:qe.Input,...e}}),mediaInteractionCb:e=>rr({type:je.IncrementalSnapshot,data:{source:qe.MediaInteraction,...e}}),styleSheetRuleCb:e=>rr({type:je.IncrementalSnapshot,data:{source:qe.StyleSheetRule,...e}}),styleDeclarationCb:e=>rr({type:je.IncrementalSnapshot,data:{source:qe.StyleDeclaration,...e}}),canvasMutationCb:W,fontCb:e=>rr({type:je.IncrementalSnapshot,data:{source:qe.Font,...e}}),selectionCb:e=>{rr({type:je.IncrementalSnapshot,data:{source:qe.Selection,...e}})},customElementCb:e=>{rr({type:je.IncrementalSnapshot,data:{source:qe.CustomElement,...e}})},blockClass:o,ignoreClass:s,ignoreSelector:a,maskTextClass:c,maskTextSelector:l,maskInputOptions:P,inlineStylesheet:u,sampling:b,recordDOM:x,recordCanvas:S,inlineImages:M,userTriggeredOnInput:E,collectFonts:I,doc:e,maskInputFn:f,maskTextFn:m,keepIframeSrcFn:R,blockSelector:i,slimDOMOptions:N,dataURLOptions:v,mirror:ur,iframeManager:H,stylesheetManager:U,shadowDomManager:q,processedNodeManager:j,canvasManager:ir,ignoreCSSAttributes:O,plugins:(null==(t=null==T?void 0:T.filter(e=>e.observer))?void 0:t.map(e=>({observer:e.observer,options:e.options,callback:t=>rr({type:je.Plugin,data:{plugin:e.name,payload:t}})})))||[]},g)};H.addLoadListener(n=>{try{e.push(t(n.contentDocument))}catch(r){console.warn(r)}});const n=()=>{or(),e.push(t(document)),lr=!0};return["interactive","complete"].includes(document.readyState)?n():(e.push(Zt("DOMContentLoaded",()=>{rr({type:je.DomContentLoaded,data:{}}),"DOMContentLoaded"===C&&n()})),e.push(Zt("load",()=>{rr({type:je.Load,data:{}}),"load"===C&&n()},window))),()=>{e.forEach(e=>{try{e()}catch(t){String(t).toLowerCase().includes("cross-origin")||console.warn(t)}}),j.destroy(),lr=!1,vn=void 0}}catch(Y){console.warn(Y)}}dr.addCustomEvent=(e,t)=>{if(!lr)throw new Error("please add custom event after start recording");rr({type:je.Custom,data:{tag:e,payload:t}})},dr.freezePage=()=>{Tn.forEach(e=>e.freeze())},dr.takeFullSnapshot=e=>{if(!lr)throw new Error("please take full snapshot after start recording");or(e)},dr.mirror=ur;var pr="Chat is unavailable — the widget credentials were rejected.",hr=class extends Error{},fr=new class{abortController=null;chatId=null;status="disconnected";callbacks=/* @__PURE__ */new Set;tornDown=!1;credentialRejected=!1;reconnectAttempts=0;maxReconnectAttempts=10;reconnectDelay=1e3;maxReconnectDelay=3e4;reconnectTimer=null;connectionId=0;tabId=globalThis.crypto.randomUUID();registrationWaiters=/* @__PURE__ */new Set;addCallbacks(e){this.callbacks.add(e)}removeCallbacks(e){this.callbacks.delete(e)}isConnected(){return"registered"===this.status}reconnectSuppressed(){return this.tornDown||this.credentialRejected}canReconnect(){return null!==this.chatId&&!this.reconnectSuppressed()&&!this.isConnected()}reconnectNow(){this.canReconnect()&&null!==this.chatId&&(this.clearReconnectTimer(),this.resetBackoff(),this.abortConnection(),this.connect(this.chatId))}async ready(e){await this.connect(e),await this.waitUntilRegistered()}async waitUntilRegistered(){if(!this.isConnected()){if(this.credentialRejected)throw new hr(pr);await new Promise((e,t)=>this.registrationWaiters.add({resolve:e,reject:t}))}}async connect(e){if(this.credentialRejected)return;if(this.tornDown=!1,this.chatId===e&&("connecting"===this.status||"open"===this.status||"registered"===this.status))return;this.abortConnection(),this.chatId=e,this.status="connecting";const t=++this.connectionId;this.abortController=new AbortController;const n=this.abortController.signal;try{const r=Be.getCredentialedConfig(),o=await Te.widgetStream({chat_id:e,tab_id:this.tabId,...r&&{marketrix_id:r.mtxId,marketrix_key:r.mtxKey,...r.userId?{user_id:r.userId}:{}}},{signal:n});this.status="open",this.consumeEvents(o,t)}catch(r){n.aborted||(Ae("[StreamClient] Connection failed, will retry:",r),this.status="error",this.notifyError(/* @__PURE__ */new Error("Stream connection failed")),this.scheduleReconnect())}}async consumeEvents(e,t){let n=!1;try{for await(const r of e){if(this.connectionId!==t){n=!0;break}this.handleMessage(r)}}catch(r){this.connectionId!==t?n=!0:this.reconnectSuppressed()||(Ae("[StreamClient] Stream error:",r),this.status="error")}finally{n||this.connectionId!==t||this.reconnectSuppressed()||(this.status="disconnected",this.scheduleReconnect())}}disconnect(){this.tornDown=!0,this.credentialRejected=!1,this.clearReconnectTimer(),this.abortConnection(),this.chatId=null,this.settleWaiters(/* @__PURE__ */new Error("Stream disconnected before registration"))}send(e){return this.chatId?Te.widgetMessagePost({chat_id:this.chatId,tab_id:this.tabId,command:e}).then(()=>{}).catch(e=>{throw Ae("[StreamClient] Failed to send message, letting the caller report it:",e),e}):Promise.reject(/* @__PURE__ */new Error("No active chat"))}resetBackoff(){this.reconnectAttempts=0,this.reconnectDelay=1e3}notifyError(e){this.callbacks.forEach(t=>t.onError?.(e))}settleWaiters(e){for(const t of this.registrationWaiters)e?t.reject(e):t.resolve();this.registrationWaiters.clear()}giveUp(e){const t=new hr(e);this.notifyError(t),this.settleWaiters(t)}handleMessage(e){this.reconnectSuppressed()||"heartbeat"!==e.type&&("registered"===e.type&&e.chat_id===this.chatId&&(this.status="registered",this.resetBackoff(),this.settleWaiters()),"chat/error"===e.type&&"auth"===e.request_id&&(console.error("[StreamClient] Authentication failed — will not reconnect"),this.credentialRejected=!0,this.giveUp(pr)),this.callbacks.forEach(t=>t.onMessage?.(e)))}scheduleReconnect(){if(this.reconnectAttempts>=this.maxReconnectAttempts)return void this.giveUp("Could not reconnect to the assistant. Try again.");this.clearReconnectTimer(),this.reconnectAttempts++;const e=Math.min(this.reconnectDelay*Math.pow(2,this.reconnectAttempts-1),this.maxReconnectDelay);this.reconnectTimer=setTimeout(()=>{!this.reconnectSuppressed()&&this.chatId&&this.connect(this.chatId)},e)}abortConnection(){this.abortController?.abort(),this.abortController=null,this.status="disconnected"}clearReconnectTimer(){this.reconnectTimer&&(clearTimeout(this.reconnectTimer),this.reconnectTimer=null)}},mr=class{chatId;applicationId;events=[];sessionId=globalThis.crypto.randomUUID();stopRecording=null;flushTimer=null;flushPromise=Promise.resolve();stopped=!1;constructor(e,t){this.chatId=e,this.applicationId=t}async start(){this.stopRecording||this.stopped||(await fr.ready(this.chatId),this.stopped||(await Te.widgetMessagePost({chat_id:this.chatId,command:{type:"rrweb/metadata",rrweb_session_id:this.sessionId,chat_id:this.chatId,application_id:this.applicationId,url:window.location.href,timestamp:Date.now(),viewport:{width:window.innerWidth,height:window.innerHeight}}}),this.stopped||(this.stopRecording=dr({emit:e=>{this.events.push(e),this.flushTimer||(this.flushTimer=setTimeout(()=>{this.flush()},500))},maskAllInputs:!0,maskTextClass:/^(rr-mask|mtx-mask)$/,blockClass:/^(rr-block|mtx-block)$/}))))}stop(){this.stopped=!0,this.stopRecording?.(),this.stopRecording=null,this.flushTimer&&clearTimeout(this.flushTimer),this.flushTimer=null,this.flush()}flush(){return this.flushPromise=this.flushPromise.then(async()=>{this.flushTimer&&clearTimeout(this.flushTimer),this.flushTimer=null;const e=this.events.splice(0);if(e.length)try{await Te.widgetMessagePost({chat_id:this.chatId,command:{type:"rrweb/events",rrweb_session_id:this.sessionId,events:e}})}catch(t){this.events=e.concat(this.events).slice(0,2e4),Ae("[RrwebSessionRecorder] Failed to record session events, requeued for retry:",t),this.stopped||(this.flushTimer=setTimeout(()=>{this.flush()},500))}}),this.flushPromise}},gr=null,yr=null;function br(){return gr?.active&&"live"===gr.getVideoTracks()[0]?.readyState?gr:(gr=null,null)}function vr(){gr&&(gr.getTracks().forEach(e=>e.stop()),gr=null)}var wr={none:"0",sm:"calc(var(--radius) - 4px)",md:"calc(var(--radius) - 2px)",lg:"var(--radius)",xl:"calc(var(--radius) + 4px)",pill:"var(--radius-pill)"},xr={default:"var(--foreground)",muted:"var(--foreground-muted)",faint:"var(--foreground-faint)",inherit:"inherit"},Sr={tight:"1.25",snug:"1.375",normal:"1.5",relaxed:"1.625"},kr={none:"none",card:"0 1px 4px rgba(0,0,0,0.1)",section:"0 2px 8px rgba(0,0,0,0.06)",panel:"0 12px 40px rgba(0,0,0,0.16), 0 4px 12px rgba(0,0,0,0.08)",fab:"0 2px 8px rgba(0,0,0,0.18), 0 0 0 1px rgba(0,0,0,0.04)",button:"0 4px 6px -1px rgba(0,0,0,0.1)"},Cr=2147483003,Er={info:{background:"#f0f9ff",border:"1px solid #bae6fd",titleColor:"#0c4a6e",bodyColor:"#0369a1",closeColor:"#0284c7",actionBackground:"#e0f2fe"},error:{background:"#fef2f2",border:"1px solid #fecaca",titleColor:"#b91c1c",bodyColor:"#b91c1c",closeColor:"#dc2626",actionBackground:"#fee2e2"},neutral:{background:"rgba(255, 255, 255, 0.95)",border:"1px solid rgba(255, 255, 255, 0.2)",titleColor:"#1f2937",bodyColor:"#1f2937",closeColor:"#6b7280",actionBackground:"transparent"}};function Ir(e){if(e&&"none"!==e)return{boxShadow:kr[e]}}var Mr=/* @__PURE__ */new Set(["button","link","textbox","checkbox","radio","switch","tab","menuitem"]);function Tr(e){return Array.from(e.querySelectorAll('a[href], button:not([disabled]), input:not([disabled]), select:not([disabled]), textarea:not([disabled]), [tabindex]:not([tabindex="-1"])')).filter(e=>null!==e.offsetParent&&!function(e){for(let t=e;t;t=t.parentElement)if("true"===t.getAttribute("aria-hidden"))return!0;return!1}(e))}function*Rr(e){let t=e;for(;t;){yield t;const e=t.getRootNode();t=t.parentElement??(e instanceof ShadowRoot?e.host:null)}}function Or(e){if(!(e instanceof Element))return!1;try{const t=e.tagName.toLowerCase();if(!("button"===t||"input"===t||"textarea"===t||"select"===t||"a"===t&&e.hasAttribute("href")||Mr.has(e.getAttribute("role")??"")||"true"===e.getAttribute("contenteditable")||e.hasAttribute("onclick")||parseInt(e.getAttribute("tabindex")??"-1",10)>=0))return!1;const n=window.getComputedStyle(e);if("none"===n.display||"none"===n.pointerEvents)return!1;const r=e.getBoundingClientRect();if(r.width<=0||r.height<=0)return!1;for(const o of Rr(e))if(o!==e){const e=window.getComputedStyle(o).overflow;if("hidden"===e||"clip"===e){const e=o.getBoundingClientRect();if(r.right<e.left||r.left>e.right||r.bottom<e.top||r.top>e.bottom)return!1}if(o===document.body)break}for(let o=e.getRootNode();o instanceof ShadowRoot;o=o.host.getRootNode()){const e=o.host.getBoundingClientRect();if(e.width<=0||e.height<=0)return!1}return!0}catch(t){return console.error("[isIndexable] Unexpected error:",t),!1}}var Ar=["id","type","role","aria-label","name","href"],_r=new class{index=/* @__PURE__ */new Map;elementToSequence=/* @__PURE__ */new WeakMap;generateAnchoredSelector(e){const t=[];let n=e;for(;n!==document.body;){const e=n.id?`#${CSS.escape(n.id)}`:"";if(e&&1===document.querySelectorAll(e).length)return t.unshift(e),t.join(" > ");const r=n.parentElement;if(!r)break;const o=n.tagName,i=Array.from(r.children).filter(e=>e.tagName===o),s=i.length>1?`:nth-of-type(${i.indexOf(n)+1})`:"";t.unshift(o.toLowerCase()+s),n=r}return["body",...t].join(" > ")}indexElements(){this.index.clear(),this.elementToSequence=/* @__PURE__ */new WeakMap;const e=document.createTreeWalker(document.body,NodeFilter.SHOW_ELEMENT,{acceptNode:e=>{if(e instanceof HTMLElement&&null===e.offsetParent&&"BODY"!==e.tagName){const t=window.getComputedStyle(e),n="fixed"===t.position||"sticky"===t.position;if("none"===t.display)return NodeFilter.FILTER_REJECT;if(!n){let t=e.parentElement,n=!1;for(;t&&t!==document.body;){const e=window.getComputedStyle(t);if("fixed"===e.position||"sticky"===e.position){n=!0;break}t=t.parentElement}if(!n)return NodeFilter.FILTER_REJECT}}return NodeFilter.FILTER_ACCEPT}});let t=e.nextNode(),n=0;for(;t;){const r=t instanceof HTMLElement?t:null;if(r){const e=r.matches('a[href], button, input, textarea, select, [role="button"]'),t=r.classList.contains("cursor-pointer")||r.classList.contains("clickable"),o="function"==typeof r.onclick;(e||t||o||Or(r))&&(this.index.set(n,{element:r,selector:this.generateAnchoredSelector(r),identity:Ar.map(e=>r.getAttribute(e))}),this.elementToSequence.set(r,n),n++)}t=e.nextNode()}}reindexAndSnapshot(){this.indexElements();const e=document.documentElement.cloneNode(!0);for(const[n,{selector:r}]of this.index.entries())try{e.querySelector(r)?.setAttribute("data-id",n.toString())}catch(t){Ae(`[DomService] Failed to tag index ${n}:`,t)}return e.outerHTML}getSequenceForElement(e){return this.elementToSequence.get(e)}notInteractableReason(e,t){if(!document.body.contains(e))return`ELEMENT_NOT_INTERACTABLE: Element ${t} is not in the DOM`;const n=function(e){if("disabled"in e&&!0===e.disabled)return"is a disabled control";if("true"===e.getAttribute("aria-disabled"))return"is aria-disabled";for(const t of Rr(e))if(t.hasAttribute("inert"))return"is inside an inert subtree";return null}(e);if(n)return`ELEMENT_NOT_INTERACTABLE: Element ${t} ${n}`;const r=window.getComputedStyle(e);if("none"===r.display)return`ELEMENT_NOT_INTERACTABLE: Element ${t} has display:none`;if("hidden"===r.visibility)return`ELEMENT_NOT_INTERACTABLE: Element ${t} has visibility:hidden`;if(0===parseFloat(r.opacity))return`ELEMENT_NOT_INTERACTABLE: Element ${t} has opacity:0`;const o=e.getBoundingClientRect();if(0===o.width||0===o.height)return`ELEMENT_NOT_INTERACTABLE: Element ${t} has zero dimensions`;const i=o.left+o.width/2,s=o.top+o.height/2,a=document.elementFromPoint(i,s);if(a&&a!==e&&!e.contains(a)&&!a.closest("#marketrix-show-highlight, #marketrix-show-popup, .marketrix-widget-container")){const e=a.tagName.toLowerCase();return`ELEMENT_OBSCURED: Element ${t} is covered by ${a.className?`${e}.${a.className.split(" ")[0]}`:e}. The obscuring element may be a modal or overlay that needs to be dismissed first.`}return null}getValidatedElement(e){const t=this.index.get(e);if(!t)return{element:null,error:`Element ${e} not found`};const n=!document.contains(t.element),r=Ar.some((e,n)=>t.element.getAttribute(e)!==t.identity[n]);if(n||r)return{element:null,error:`DOM_CHANGED: Element at index ${e} ${n?"no longer exists":"has changed"}. Call get_html to get updated indices.`};const o=this.notInteractableReason(t.element,e);return o?{element:null,error:o}:{element:t.element}}},Dr=["scroll","resize","touchmove","wheel"],Pr="#3b82f6",Nr="#1f2937",Lr=new class{currentPopup=null;currentHighlight=null;currentElement=null;currentOptions=null;currentPromise=null;resolvePromise=null;rejectPromise=null;clickHandler=null;scrollHandler=null;visibilityCheckInterval=null;async showToolAction(e){const{element:t,explanation:n,isClickAction:r=!1,browserToolName:o}=e;return this.currentOptions?.element===t&&this.currentOptions.explanation===n&&this.currentOptions.browserToolName===o&&this.currentPromise||(this.cleanup(),this.currentOptions=e,this.currentElement=t,t.scrollIntoView({behavior:"instant",block:"center",inline:"center"}),this.createHighlight(),this.createPopup(n,r),this.setupPositionUpdates(),this.setupVisibilityMonitoring(),r&&this.setupClickHandler(),this.currentPromise=new Promise((e,t)=>{this.resolvePromise=e,this.rejectPromise=t})),this.currentPromise}cleanup(){if(this.takeSettlers().reject?.(/* @__PURE__ */new Error("Cancelled by cleanup")),this.clickHandler&&(document.removeEventListener("click",this.clickHandler,{capture:!0}),this.clickHandler=null),this.scrollHandler){for(const e of Dr)window.removeEventListener(e,this.scrollHandler,{capture:!0});this.scrollHandler=null}this.visibilityCheckInterval&&(clearInterval(this.visibilityCheckInterval),this.visibilityCheckInterval=null),this.currentPopup?.remove(),this.currentHighlight?.remove(),document.getElementById("marketrix-show-popup")?.remove(),document.getElementById("marketrix-show-highlight")?.remove(),this.currentPopup=null,this.currentHighlight=null,this.currentElement=null,this.currentOptions=null,this.currentPromise=null}settle(e){const{resolve:t,reject:n}=this.takeSettlers();e?n?.(new Error(e)):t?.(),this.cleanup()}takeSettlers(){const e={resolve:this.resolvePromise,reject:this.rejectPromise};return this.resolvePromise=null,this.rejectPromise=null,e}createHighlight(){const e=document.createElement("div");e.id="marketrix-show-highlight",e.style.cssText=`position:fixed;border:3px solid ${Pr};border-radius:4px;box-shadow:0 0 0 4px rgba(59,130,246,0.2),0 0 20px rgba(59,130,246,0.4);z-index:2147483645;pointer-events:none;transition:none;`,document.body.appendChild(e),this.currentHighlight=e,this.trackElement()}trackElement(){if(!this.currentElement||!this.currentHighlight)return;const e=this.currentElement.getBoundingClientRect();Object.assign(this.currentHighlight.style,{top:`${e.top}px`,left:`${e.left}px`,width:`${e.width}px`,height:`${e.height}px`}),this.updatePopupPosition()}createPopup(e,t){const n=document.createElement("div");n.id="marketrix-show-popup",n.innerHTML=t?`<div style="font-weight: 500; color: ${Nr}; font-size: 12px;">${this.escapeHtml(e)}</div>`:`<div style="margin-bottom:12px;font-weight:500;color:${Nr};font-size:12px;">${this.escapeHtml(e)}</div><div style="display:flex;gap:8px;justify-content:flex-end;"><button id="marketrix-show-continue" style="background:${Pr};color:white;border:none;border-radius:6px;padding:8px 16px;font-size:12px;font-weight:500;cursor:pointer;">Continue</button></div>`,n.style.cssText="position: fixed; width: 320px; background: white; border-radius: 8px;\n box-shadow: 0 4px 12px rgba(0, 0, 0, 0.15); z-index: 2147483646; padding: 16px;",document.body.appendChild(n),this.currentPopup=n,t||window.requestAnimationFrame(()=>{n.querySelector("#marketrix-show-continue")?.addEventListener("click",e=>{e.stopPropagation(),this.settle()})}),this.updatePopupPosition()}setupPositionUpdates(){this.scrollHandler=()=>this.trackElement();for(const e of Dr)window.addEventListener(e,this.scrollHandler,{capture:!0,passive:!0})}updatePopupPosition(){if(!this.currentPopup||!this.currentElement)return;const e=this.currentElement.getBoundingClientRect(),t=10,n=e.left+e.width/2,r=e.top+e.height/2,o=[{left:e.right+20,top:r-60},{left:e.left-320-20,top:r-60},{left:n-160,top:e.top-120-20},{left:n-160,top:e.bottom+20}];let i=o[0];for(const s of o)if(s.left>=t&&s.left+320<=window.innerWidth-t&&s.top>=t&&s.top+120<=window.innerHeight-t){i=s;break}this.currentPopup.style.left=`${Math.max(t,Math.min(i.left,window.innerWidth-320-t))}px`,this.currentPopup.style.top=`${Math.max(t,Math.min(i.top,window.innerHeight-120-t))}px`}setupClickHandler(){this.clickHandler=e=>{this.currentElement&&this.resolvePromise&&e.composedPath().includes(this.currentElement)&&(e.preventDefault(),e.stopPropagation(),this.settle())},document.addEventListener("click",this.clickHandler,{capture:!0})}setupVisibilityMonitoring(){this.visibilityCheckInterval=setInterval(()=>{const e=this.currentElement;if(!e)return;const t=e.getBoundingClientRect();if(t.bottom<0||t.top>window.innerHeight||t.right<0||t.left>window.innerWidth)return void this.settle("ELEMENT_OFF_SCREEN: The highlighted element scrolled out of view");const n=_r.getSequenceForElement(e)??-1,r=_r.notInteractableReason(e,n);r&&this.settle(r)},200)}escapeHtml(e){const t=document.createElement("div");return t.textContent=e,t.innerHTML}},Fr=e=>"string"==typeof e,zr=e=>"boolean"==typeof e,$r=(...e)=>t=>"string"==typeof t&&e.includes(t),Br={widget_enabled:zr,widget_appearance:$r("default","hidden"),widget_position:$r("bottom_left","bottom_right","top_left","top_right"),widget_header:Fr,widget_body:Fr,widget_greeting:Fr,widget_greeting_toast:zr,widget_recording:zr,widget_feature_tell:zr,widget_feature_show:zr,widget_feature_do:zr,widget_background_color:Fr,widget_text_color:Fr,widget_border_color:Fr,widget_accent_color:Fr,widget_secondary_color:Fr,widget_border_radius:Fr,widget_font_size:Fr,widget_width:Fr,widget_height:Fr,widget_animation_duration:Fr,widget_fade_duration:Fr,widget_chips:e=>Array.isArray(e)&&e.every(e=>"object"==typeof e&&null!==e&&$r("tell","show","do")(e.chip_mode)&&Fr(e.chip_text))},Wr=Object.keys(Br),Ur=/* @__PURE__ */new Set(["widget_border_radius","widget_font_size","widget_animation_duration","widget_fade_duration"]);function Hr(e){if("object"!=typeof e||null===e)return{invalidFields:["settings"]};const t=e,n=Wr.filter(e=>!Br[e](t[e]));if(n.length>0)return{invalidFields:n};const r={};for(const o of Wr)Ur.has(o)||(r[o]=t[o]);return{settings:r}}var jr=e=>`Widget settings are invalid: ${e.join(", ")}`;function qr(e,t={}){return{...t,...e}}var Vr=/* @__PURE__ */new Map;function Yr(){}var Kr=Object.freeze([]),Xr=Object.freeze({});function Gr(t){e.useEffect(t,Kr)}var Jr={};function Zr(t,n){const r=e.useRef(Jr);return r.current===Jr&&(r.current=t(n)),r}var Qr="undefined"!=typeof document?e.useLayoutEffect:()=>{},eo=function(e,...t){const n=new URL("https://base-ui.com/production-error");return n.searchParams.set("code",e.toString()),t.forEach(e=>n.searchParams.append("args[]",e)),`Base UI error #${e}; visit ${n} for the full message.`},to=/*#__PURE__*/e.createContext(void 0);function no(){const t=e.useContext(to);if(!t)throw new Error(eo(73));return t}var ro=parseInt(e.version,10);function oo(e){return ro>=e}var io=[],so=void 0;function ao(){return{didInitialize:!1}}var co,lo=oo(19)?function(t,n,r,o,i){const s=so;if(!s)return function(t,n,r,o,i){const s=e.useCallback(()=>n(t.getSnapshot(),r,o,i),[t,n,r,o,i]);return f(t.subscribe,s,s)}(t,n,r,o,i);const a=s.syncIndex;let c;return s.syncIndex+=1,s.didInitialize?(c=s.syncHooks[a],c.store===t&&c.selector===n&&Object.is(c.a1,r)&&Object.is(c.a2,o)&&Object.is(c.a3,i)||(c.store!==t&&(s.didChangeStore=!0),c.store=t,c.selector=n,c.a1=r,c.a2=o,c.a3=i,c.value=n(t.getSnapshot(),r,o,i))):(c={store:t,selector:n,a1:r,a2:o,a3:i,value:n(t.getSnapshot(),r,o,i)},s.syncHooks.push(c)),c.value}:function(e,t,n,r,o){return function(e,t,n,r){const o=d(null),i=e=>{const t=o.current;if(t&&Object.is(t.snapshot,e))return t.selection;const n=r(e);return o.current={snapshot:e,selection:n},n};return h(e,()=>i(t()),n&&(()=>i(n())))}(e.subscribe,e.getSnapshot,e.getSnapshot,e=>t(e,n,r,o))};function uo(e,t,n,r,o){return lo(e,t,n,r,o)}co={before(e){e.syncIndex=0,e.didInitialize||(e.syncTick=1,e.syncHooks=[],e.didChangeStore=!0,e.getSnapshot=()=>{let t=!1;for(let n=0;n<e.syncHooks.length;n+=1){const r=e.syncHooks[n],o=r.selector(r.store.state,r.a1,r.a2,r.a3);Object.is(r.value,o)||(t=!0,r.value=o)}return t&&(e.syncTick+=1),e.syncTick})},after(e){e.syncHooks.length>0&&(e.didChangeStore&&(e.didChangeStore=!1,e.subscribe=t=>{const n=/* @__PURE__ */new Set;for(const o of e.syncHooks)n.add(o.store);const r=[];for(const e of n)r.push(e.subscribe(t));return()=>{for(const e of r)e()}}),f(e.subscribe,e.getSnapshot,e.getSnapshot))}},io.push(co);var po=class{static create(e){return new this(e)}constructor(e){this.state=e,this.listeners=/* @__PURE__ */new Set,this.updateTick=0}subscribe=e=>(this.listeners.add(e),()=>{this.listeners.delete(e)});getSnapshot=()=>this.state;setState(e){if(this.state===e)return;this.state=e,this.updateTick+=1;const t=this.updateTick;for(const n of this.listeners){if(t!==this.updateTick)return;n(e)}}update(e){for(const t in e)if(!Object.is(this.state[t],e[t]))return void this.setState({...this.state,...e})}set(e,t){Object.is(this.state[e],t)||this.setState({...this.state,[e]:t})}notifyAll(){const e={...this.state};this.setState(e)}use(e,t,n,r){return uo(this,e,t,n,r)}},ho={...e},fo=ho.useInsertionEffect,mo=fo&&fo!==ho.useLayoutEffect?fo:e=>e();function go(e){const t=Zr(yo).current;return t.next=e,mo(t.effect),t.trampoline}function yo(){const e={next:void 0,callback:bo,trampoline:(...t)=>e.callback?.(...t),effect:()=>{e.callback=e.next}};return e}function bo(){}var vo=class extends po{constructor(e,t={},n){super(e),this.context=t,this.selectors=n}useSyncedValue(t,n){e.useDebugValue(t);const r=this;Qr(()=>{r.state[t]!==n&&r.set(t,n)},[r,t,n])}useSyncedValueWithCleanup(e,t){const n=this;Qr(()=>(n.state[e]!==t&&n.set(e,t),()=>{n.set(e,void 0)}),[n,e,t])}useSyncedValues(e){const t=this,n=Object.values(e);Qr(()=>{t.update(e)},[t,...n])}useControlledProp(t,n){e.useDebugValue(t);const r=this,o=void 0!==n;Qr(()=>{o&&!Object.is(r.state[t],n)&&r.setState({...r.state,[t]:n})},[r,t,n,o])}select(e,t,n,r){return(0,this.selectors[e])(this.state,t,n,r)}useState(t,n,r,o){return e.useDebugValue(t),uo(this,this.selectors[t],n,r,o)}useContextCallback(t,n){e.useDebugValue(t);const r=go(n??Yr);this.context[t]=r}useStateSetter(t){const n=e.useRef(void 0);return void 0===n.current&&(n.current=e=>{this.set(t,e)}),n.current}observe(e,t){let n;n="function"==typeof e?e:this.selectors[e];let r=n(this.state);return t(r,r,this),this.subscribe(e=>{const o=n(e);if(!Object.is(r,o)){const e=r;r=o,t(o,e,this)}})}};function wo(){return"undefined"!=typeof window}function xo(e){return ko(e)?(e.nodeName||"").toLowerCase():"#document"}function So(e){var t;return(null==e||null==(t=e.ownerDocument)?void 0:t.defaultView)||window}function ko(e){return!!wo()&&(e instanceof Node||e instanceof So(e).Node)}function Co(e){return!!wo()&&(e instanceof Element||e instanceof So(e).Element)}function Eo(e){return!!wo()&&(e instanceof HTMLElement||e instanceof So(e).HTMLElement)}function Io(e){return!(!wo()||"undefined"==typeof ShadowRoot)&&(e instanceof ShadowRoot||e instanceof So(e).ShadowRoot)}function Mo(e){return/^(html|body|#document)$/.test(xo(e))}function To(e){return So(e).getComputedStyle(e)}function Ro(e){if("html"===xo(e))return e;const t=e.assignedSlot||e.parentNode||Io(e)&&e.host||function(e){var t;return null==(t=(ko(e)?e.ownerDocument:e.document)||window.document)?void 0:t.documentElement}(e);return Io(t)?t.host:t}function Oo(...e){return()=>{for(let t=0;t<e.length;t+=1){const n=e[t];n&&n()}}}function Ao(e){return e?.ownerDocument||document}function _o(e,t,n,r){return e.addEventListener(t,n,r),()=>{e.removeEventListener(t,n,r)}}var Do=null;globalThis.requestAnimationFrame;var Po=new class{callbacks=[];callbacksCount=0;nextId=1;startId=1;isScheduled=!1;tick=e=>{this.isScheduled=!1;const t=this.callbacks,n=this.callbacksCount;if(this.callbacks=[],this.callbacksCount=0,this.startId=this.nextId,n>0)for(let r=0;r<t.length;r+=1)t[r]?.(e)};request(e){const t=this.nextId;return this.nextId+=1,this.callbacks.push(e),this.callbacksCount+=1,this.isScheduled||(requestAnimationFrame(this.tick),this.isScheduled=!0),t}cancel(e){const t=e-this.startId;t<0||t>=this.callbacks.length||null!==this.callbacks[t]&&(this.callbacks[t]=null,this.callbacksCount-=1)}},No=class e{static create(){return new e}static request(e){return Po.request(e)}static cancel(e){return Po.cancel(e)}currentId=Do;request(e){this.cancel(),this.currentId=Po.request(()=>{this.currentId=Do,e()})}cancel=()=>{this.currentId!==Do&&(Po.cancel(this.currentId),this.currentId=Do)};disposeEffect=()=>this.cancel};function Lo(){const e=Zr(No.create).current;return Gr(e.disposeEffect),e}var Fo=class e{static create(){return new e}currentId=0;start(e,t){this.clear(),this.currentId=setTimeout(()=>{this.currentId=0,t()},e)}isStarted(){return 0!==this.currentId}clear=()=>{0!==this.currentId&&(clearTimeout(this.currentId),this.currentId=0)};disposeEffect=()=>this.clear};function zo(){const e=Zr(Fo.create).current;return Gr(e.disposeEffect),e}var $o=0;function Bo(e,t){if("string"==typeof e)return{description:e};if("function"==typeof e){const n=e(t);return"string"==typeof n?{description:n}:n}return e}var{userAgent:Wo,platform:Uo,maxTouchPoints:Ho}="undefined"==typeof navigator?{userAgent:"",platform:"",maxTouchPoints:0}:{userAgent:navigator.userAgent,platform:navigator.platform??"",maxTouchPoints:navigator.maxTouchPoints??0},jo=Wo.toLowerCase(),qo=Uo.toLowerCase(),Vo=/^i(os$|p)/.test(qo)||"macintel"===qo&&Ho>1,Yo="android",Ko=qo===Yo||jo.includes(Yo),Xo=!Vo&&qo.startsWith("mac"),Go=(qo.startsWith("win"),!Ko&&/^(linux|chrome os)/.test(qo),Xo||Vo),Jo="undefined"!=typeof CSS&&!!CSS.supports?.("-webkit-backdrop-filter:none"),Zo=(!Jo&&jo.includes("firefox"),!Jo&&jo.includes("chrom"),Go),Qo=/jsdom|happydom/.test(jo);function ei(e){let t=e.activeElement;for(;null!=t?.shadowRoot?.activeElement;)t=t.shadowRoot.activeElement;return t}function ti(e,t){if(!e||!t)return!1;const n=t.getRootNode?.();if(e.contains(t))return!0;if(n&&Io(n)){let n=t;for(;n;){if(e===n)return!0;n=n.parentNode||n.host}}return!1}function ni(e){return"composedPath"in e?e.composedPath()[0]??e.target:e.target}var ri="data-base-ui-focusable",oi="data-starting-style",ii="data-ending-style",si={[oi]:""},ai={[ii]:""},ci={transitionStatus:e=>"starting"===e?si:"ending"===e?ai:null},li="data-open",ui="data-closed",di="data-anchor-hidden",pi={[li]:""},hi={[ui]:""},fi={[di]:""},mi={open:e=>e?pi:hi,anchorHidden:e=>e?fi:null},gi={...mi,...ci};function yi(e,t){if(null==t)return!1;if("composedPath"in e)return e.composedPath().includes(t);const n=e;return null!=n.target&&t.contains(n.target)}function bi(e){return Eo(e)&&e.matches("input:not([type='hidden']):not([disabled]),[contenteditable]:not([contenteditable='false']),textarea:not([disabled])")}function vi(e){return!!e&&"combobox"===e.getAttribute("role")&&bi(e)}function wi(e){if(!e||Qo)return!0;try{return e.matches(":focus-visible")}catch(t){return!0}}function xi(e){return e?e.hasAttribute("data-base-ui-focusable")?e:e.querySelector("[data-base-ui-focusable]")||e:null}function Si(e,t,n=!0){return e.filter(e=>e.parentId===t).flatMap(t=>[...!n||t.context?.open?[t]:[],...Si(e,t.id,n)])}function ki(e,t){let n=[],r=e.find(e=>e.id===t)?.parentId;for(;r;){const t=e.find(e=>e.id===r);r=t?.parentId,t&&(n=n.concat(t))}return n}function Ci(e){return!(""!==e.pointerType||!e.isTrusted)||(Ko&&e.pointerType?"click"===e.type&&1===e.buttons:0===e.detail&&!e.pointerType)}function Ei(e,t){return t<0||t>=e.length}function Ii(e,{startingIndex:t=-1,decrement:n=!1,disabledIndices:r,amount:o=1}={}){let i=t;do{i+=n?-o:o}while(i>=0&&i<=e.length-1&&Mi(e,i,r));return i}function Mi(e,t,n){if("function"==typeof n?n(t):n?.includes(t))return!0;const r=e[t];return!!r&&(!Ti(r)||!!r.matches(":disabled")||!n&&(r.hasAttribute("disabled")||"true"===r.getAttribute("aria-disabled")))}function Ti(e,t=(e?To(e):null)){return!(!(e&&e.isConnected&&t)||function(e){return"hidden"===e.visibility||"collapse"===e.visibility}(t))&&("function"==typeof e.checkVisibility?e.checkVisibility():"none"!==t.display&&"contents"!==t.display)}function Ri(e){const t=e.assignedSlot;if(t)return t;if(e.parentElement)return e.parentElement;const n=e.getRootNode();return Io(n)?n.host:null}function Oi(e){for(const t of Array.from(e.children))if("summary"===xo(t))return t;return null}function Ai(e,t){const n=Oi(t);return!!n&&(e===n||ti(n,e))}function _i(e){const t=e?xo(e):"";return null!=e&&e.matches('a[href],button,input,select,textarea,summary,details,iframe,object,embed,[tabindex],[contenteditable]:not([contenteditable="false"]),audio[controls],video[controls]')&&("summary"!==t||null!=e.parentElement&&"details"===xo(e.parentElement)&&Oi(e.parentElement)===e)&&("details"!==t||null==Oi(e))&&("input"!==t||"hidden"!==e.type)}function Di(e){if(!_i(e)||!e.isConnected||e.matches(":disabled"))return!1;for(let t=e;t;t=Ri(t)){const n=t!==e,r="slot"===xo(t);if(t.hasAttribute("inert"))return!1;if(n&&"details"===xo(t)&&!t.open&&!Ai(e,t)||t.hasAttribute("hidden")||!r&&!Pi(t,n))return!1}return!0}function Pi(e,t){const n=To(e);return t?"none"!==n.display:Ti(e,n)}function Ni(e){const t=e.tabIndex;if(t<0){const t=xo(e);if("details"===t||"audio"===t||"video"===t||Eo(e)&&e.isContentEditable)return 0}return t}function Li(e){if("input"!==xo(e))return null;const t=e;return"radio"===t.type&&""!==t.name?t:null}function Fi(e){if(Eo(e)&&"slot"===xo(e)){const t=e.assignedElements({flatten:!0});if(t.length>0)return t}return Eo(e)&&e.shadowRoot?Array.from(e.shadowRoot.children):Array.from(e.children)}function zi(e,t){Fi(e).forEach(e=>{_i(e)&&t.push(e),zi(e,t)})}function $i(e,t,n){Fi(e).forEach(e=>{Eo(e)&&e.matches(t)&&n.push(e),$i(e,t,n)})}function Bi(e){return Di(e)&&Ni(e)>=0}function Wi(e){const t=[];return zi(e,t),t.filter(Di)}function Ui(e){const t=Wi(e);return t.filter(e=>Ni(e)>=0&&function(e,t){const n=Li(e);if(!n)return!0;const r=t.find(e=>{const t=Li(e);return t?.name===n.name&&t.form===n.form&&t.checked});return r?r===n:t.find(e=>{const t=Li(e);return t?.name===n.name&&t.form===n.form})===n}(e,t))}function Hi(e,t){const n=Ui(e),r=n.length;if(0===r)return;const o=ei(Ao(e)),i=n.indexOf(o);return n[-1===i?1===t?0:r-1:i+t]}function ji(e){return Hi(Ao(e).body,1)||e}function qi(e){return Hi(Ao(e).body,-1)||e}function Vi(e,t){const n=t||e.currentTarget,r=e.relatedTarget;return!r||!ti(n,r)}function Yi(e){const t=[];$i(e,"[data-tabindex]",t),t.forEach(e=>{const t=e.dataset.tabindex;delete e.dataset.tabindex,t?e.setAttribute("tabindex",t):e.removeAttribute("tabindex")})}function Ki(e){const t=/* @__PURE__ */new Map;let n=0,r=0;return e.forEach((e,o)=>{const i="ending"===e.transitionStatus;t.set(e.id,{value:e,domIndex:o,visibleIndex:i?-1:n,offsetY:r}),r+=e.height||0,i||(n+=1)}),t}function Xi(e,t){let n=0;return e.map(e=>{if("ending"===e.transitionStatus)return e;const r=n>=t;return n+=1,e.limited===r?e:{...e,limited:r}})}var Gi={toasts:e=>e.toasts,isEmpty:e=>0===e.toasts.length,toast:(e,t)=>e.toastMetadata.get(t)?.value,toastIndex:(e,t)=>e.toastMetadata.get(t)?.domIndex??-1,toastOffsetY:(e,t)=>e.toastMetadata.get(t)?.offsetY??0,toastVisibleIndex:(e,t)=>e.toastMetadata.get(t)?.visibleIndex??-1,focused:e=>e.focused,expanded:e=>e.hovering||e.focused,expandedOrOutOfFocus:e=>e.hovering||e.focused||!e.isWindowFocused,prevFocusElement:e=>e.prevFocusElement},Ji=class extends vo{timers=/* @__PURE__ */new Map;areTimersPaused=!1;constructor(e){super({...e,toastMetadata:Ki(e.toasts)},{},Gi)}setViewport=e=>{this.set("viewport",e)};syncProviderProps(e,t){const n=this.state.limit!==t;if(this.state.timeout===e&&!n)return;const r={timeout:e,limit:t};if(n){const e=Xi(this.state.toasts,t);r.toasts=e,r.toastMetadata=Ki(e)}this.update(r)}disposeEffect=()=>()=>{this.timers.forEach(e=>{e.timeout?.clear()}),this.timers.clear()};removeToast(e,t=!1){const n=Gi.toastIndex(this.state,e);if(-1===n)return;const r=this.state.toasts[n];t||r?.onRemove?.();const o=[...this.state.toasts];o.splice(n,1),this.setToasts(o)}addToast=e=>{const{timeout:t,limit:n}=this.state,r=e.id||($o+=1,`toast-${Math.random().toString(36).slice(2,6)}-${$o}`);if(e.id){const t=Gi.toast(this.state,e.id);if(t){if("ending"!==t.transitionStatus){const{id:t,transitionStatus:n,...r}=e;return this.updateToastInternal(e.id,r,!0,!0),e.id}this.removeToast(e.id,!0)}}const o={...e,id:r,updateKey:0,transitionStatus:"starting"},i=[o,...this.state.toasts];this.setToasts(Xi(i,n));const s=o.timeout??t;return"loading"!==o.type&&s>0&&this.scheduleTimer(r,s,()=>this.closeToast(r)),Gi.expandedOrOutOfFocus(this.state)&&this.pauseTimers(),r};updateToast=(e,t)=>{const n=Gi.toast(this.state,e);n&&"ending"!==n.transitionStatus&&this.updateToastInternal(e,"function"==typeof t?t(n):t,!1,!0)};updateToastInternal=(e,t,n=!1,r=!1)=>{const{timeout:o,toasts:i}=this.state,s=Gi.toast(this.state,e);if(!s)return;if("ending"===s.transitionStatus)return;const a={...s,...t,...r&&{updateKey:s.updateKey+1}};this.setToasts(i.map(t=>t.id===e?a:t));const c=a.timeout??o,l=s.timeout??o,u=Object.hasOwn(t,"timeout"),d="ending"!==a.transitionStatus&&"loading"!==a.type&&c>0,p=this.timers.has(e),h=l!==c,f="loading"===s.type;d||!p?d&&(!p||h||u||f||n)&&(this.clearTimer(e),this.scheduleTimer(e,c,()=>this.closeToast(e)),Gi.expandedOrOutOfFocus(this.state)&&this.pauseTimers()):this.clearTimer(e)};closeToast=e=>{const t=void 0===e,{limit:n,toasts:r}=this.state;let o;if(t)o=r,this.clearTimers();else{const t=Gi.toast(this.state,e);if(!t)return;o=[t],this.clearTimer(e)}const i=Xi(r.map(n=>t||n.id===e?{...n,transitionStatus:"ending",height:0}:n),n);this.setToasts(i,!i.some(e=>"ending"!==e.transitionStatus)),o.forEach(e=>{"ending"!==e.transitionStatus&&e.onClose?.()}),this.handleFocusManagement(e)};promiseToast=(e,t)=>{const n=Bo(t.loading),r=this.addToast({...n,type:"loading"}),o=e.then(e=>{const n=Bo(t.success,e);return this.updateToast(r,{...n,type:"success",timeout:n.timeout}),e}).catch(e=>{const n=Bo(t.error,e);return this.updateToast(r,{...n,type:"error",timeout:n.timeout}),Promise.reject(e)});return{}.hasOwnProperty.call(t,"setPromise")&&t.setPromise(o),o};pauseTimers(){this.areTimersPaused||(this.areTimersPaused=!0,this.timers.forEach(e=>{e.timeout&&(e.timeout.clear(),e.remaining=Math.max(e.remaining-(Date.now()-e.start),0))}))}resumeTimers(){this.areTimersPaused&&(this.areTimersPaused=!1,this.timers.forEach((e,t)=>{e.remaining=e.remaining>0?e.remaining:e.delay,e.timeout??=Fo.create(),e.timeout.start(e.remaining,()=>{this.handleTimerFired(t),e.callback()}),e.start=Date.now()}))}restoreFocusToPrevElement(){this.state.prevFocusElement?.focus({preventScroll:!0})}handleDocumentPointerDown=e=>{if("touch"!==e.pointerType)return;const t=ni(e);ti(this.state.viewport,t)||(this.resumeTimers(),this.update({hovering:!1,focused:!1}))};scheduleTimer(e,t,n){const r=Date.now(),o=Gi.expandedOrOutOfFocus(this.state)?void 0:Fo.create();o?.start(t,()=>{this.handleTimerFired(e),n()}),this.timers.set(e,{timeout:o,start:r,delay:t,remaining:t,callback:n})}clearTimers(){this.timers.forEach(e=>{e.timeout?.clear()}),this.timers.clear(),this.areTimersPaused=!1}clearTimer(e){this.timers.get(e)?.timeout?.clear(),this.timers.delete(e),this.resetPausedStateIfNoTimersRemain()}handleTimerFired(e){this.timers.delete(e),this.resetPausedStateIfNoTimersRemain()}resetPausedStateIfNoTimersRemain(){0===this.timers.size&&(this.areTimersPaused=!1)}setToasts(e,t=0===e.length){const n={toasts:e,toastMetadata:Ki(e)};t&&(n.hovering=!1,n.focused=!1),this.update(n)}handleFocusManagement(e){const t=ei(Ao(this.state.viewport));if(!this.state.viewport||!ti(this.state.viewport,t)||!wi(t))return;if(void 0===e)return void this.restoreFocusToPrevElement();const n=Gi.toasts(this.state),r=Gi.toastIndex(this.state,e),o=(e,t)=>{for(let r=e;r>=0&&r<n.length;r+=t)if("ending"!==n[r].transitionStatus)return n[r];return null},i=o(r+1,1)??o(r-1,-1);i?i.ref?.current?.focus():this.restoreFocusToPrevElement()}},Zi=function(t){const{children:n,timeout:r=5e3,limit:o=3,toastManager:i}=t,s=Zr(()=>new Ji({timeout:r,limit:o,viewport:null,toasts:[],hovering:!1,focused:!1,isWindowFocused:!0,prevFocusElement:null})).current;return Gr(s.disposeEffect),e.useEffect(function(){if(i)return i[" subscribe"](({action:e,options:t})=>{const n=t.id;"promise"===e&&t.promise?s.promiseToast(t.promise,t):"update"===e&&n?s.updateToast(n,t.updates):"close"===e?s.closeToast(n):s.addToast(t)})},[s,i]),/*#__PURE__*/v(to.Provider,{value:s,children:[/*#__PURE__*/b(Qi,{store:s,timeout:r,limit:o}),n]})};function Qi(e){const{store:t,timeout:n,limit:r}=e;return Qr(()=>{t.syncProviderProps(n,r)},[t,n,r]),null}var es={clipPath:"inset(50%)",overflow:"hidden",whiteSpace:"nowrap",border:0,padding:0,width:1,height:1,margin:-1,position:"fixed",top:0,left:0},ts=/*#__PURE__*/e.forwardRef(function(t,n){const[r,o]=e.useState();return Qr(()=>{Zo&&Jo&&o("button")},[]),/*#__PURE__*/b("span",{...t,ref:n,style:es,"aria-hidden":!r||void 0,tabIndex:0,role:r,"data-base-ui-focus-guard":""})});function ns(e,t,n,r){const o=Zr(rs).current;return function(e,t,n,r,o){return e.refs[0]!==t||e.refs[1]!==n||e.refs[2]!==r||e.refs[3]!==o}(o,e,t,n,r)&&os(o,[e,t,n,r]),o.callback}function rs(){return{callback:null,cleanup:null,refs:[]}}function os(e,t){e.refs=t,t.every(e=>null==e)?e.callback=null:e.callback=n=>{if(e.cleanup&&(e.cleanup(),e.cleanup=null),null!=n){const r=Array(t.length).fill(null);for(let e=0;e<t.length;e+=1){const o=t[e];if(null!=o)switch(typeof o){case"function":{const t=o(n);"function"==typeof t&&(r[e]=t);break}case"object":o.current=n}}e.cleanup=()=>{for(let e=0;e<t.length;e+=1){const n=t[e];if(null!=n)switch(typeof n){case"function":{const t=r[e];"function"==typeof t?t():n(null);break}case"object":n.current=null}}}}}}function is(t){if(!/*#__PURE__*/e.isValidElement(t))return null;const n=t,r=n.props;return(oo(19)?r?.ref:n.ref)??null}function ss(e,t){return e&&!t?e:!e&&t?t:e||t?{...e,...t}:void 0}var as={};function cs(e,t,n,r,o){if(!(n||r||o||e))return ls(t);let i=ls(e);return t&&(i=us(i,t)),n&&(i=us(i,n)),r&&(i=us(i,r)),o&&(i=us(i,o)),i}function ls(e){return ps(e)?{...hs(e,as)}:function(e){const t={...e};for(const n in t){const e=t[n];ds(n,e)&&(t[n]=ms(e))}return t}(e)}function us(e,t){return ps(t)?hs(t,e):function(e,t){if(!t)return e;for(const n in t){const r=t[n];switch(n){case"style":e[n]=ss(e.style,r);break;case"className":e[n]=ys(e.className,r);break;default:ds(n,r)?e[n]=fs(e[n],r):e[n]=r}}return e}(e,t)}function ds(e,t){const n=e.charCodeAt(0),r=e.charCodeAt(1),o=e.charCodeAt(2);return 111===n&&110===r&&o>=65&&o<=90&&("function"==typeof t||void 0===t)}function ps(e){return"function"==typeof e}function hs(e,t){return ps(e)?e(t):e??as}function fs(e,t){return t?e?(...n)=>{const r=n[0];if(bs(r)){const o=r;gs(o);const i=t(...n);return o.baseUIHandlerPrevented||e?.(...n),i}const o=t(...n);return e?.(...n),o}:ms(t):e}function ms(e){return e?(...t)=>{const n=t[0];return bs(n)&&gs(n),e(...t)}:e}function gs(e){return e.preventBaseUIHandler=()=>{e.baseUIHandlerPrevented=!0},e}function ys(e,t){return t?e?t+" "+e:t:e}function bs(e){return null!=e&&"object"==typeof e&&"nativeEvent"in e}function vs(t,n,o={}){let i=n.render;!1!==o.enabled&&(i=function(t){if(t?.$$typeof!==ws)return t;const n=e.Children.toArray(t)[0];/*#__PURE__*/
|
|
1
|
+
import*as e from"react";import t,{createContext as n,createElement as r,forwardRef as o,useCallback as i,useContext as s,useEffect as a,useImperativeHandle as c,useLayoutEffect as l,useMemo as u,useRef as d,useState as p,useSyncExternalStore as h,useSyncExternalStore as f}from"react";import{createRoot as m}from"react-dom/client";import*as g from"react-dom";import{Fragment as y,jsx as b,jsxs as v}from"react/jsx-runtime";function w(e){return Array.isArray(e)?e:null==e?[]:[e]}var x="orpc",S=class extends Error{constructor(...e){super(...e),this.name="AbortError"}};function k(e){let t;return()=>{if(t)return t.result;const n=e();return t={result:n},n}}function C(){return globalThis["__@orpc/shared@1.15.1/otel/config__"]}function E(e,t={},n){return(C()?.tracer)?.startSpan(e,t,n)}function I(e,t,n={}){if(!e)return;const r=function(e){if(e instanceof Error){const t={message:e.message,name:e.name,stack:e.stack};return!("code"in e)||"string"!=typeof e.code&&"number"!=typeof e.code||(t.code=e.code),t}return{message:String(e)}}(t);e.recordException(r),n.signal?.aborted&&n.signal.reason===t||e.setStatus({code:2,message:r.message})}async function M({name:e,context:t,...n},r){const o=C()?.tracer;if(!o)return r();const i=async e=>{try{return await r(e)}catch(t){throw I(e,t,n),t}finally{e.end()}};return t?o.startActiveSpan(e,n,t,i):o.startActiveSpan(e,n,i)}async function T(e,t){const n=C();if(!e||!n)return t();const r=n.trace.setSpan(n.context.active(),e);return n.context.with(r,t)}function R(e){return!(!e||"object"!=typeof e)&&"next"in e&&"function"==typeof e.next&&Symbol.asyncIterator in e&&"function"==typeof e[Symbol.asyncIterator]}var O=Symbol.asyncDispose??Symbol.for("asyncDispose"),A=class{#e=!1;#t=!1;#n;#r;constructor(e,t){this.#n=t,this.#r=function(e){let t=Promise.resolve();return(...n)=>t=t.catch(()=>{}).then(()=>e(...n))}(async()=>{if(this.#e)return{done:!0,value:void 0};try{const t=await e();return t.done&&(this.#e=!0),t}catch(t){throw this.#e=!0,t}finally{this.#e&&!this.#t&&(this.#t=!0,await this.#n("next"))}})}next(){return this.#r()}async return(e){return this.#e=!0,this.#t||(this.#t=!0,await this.#n("return")),{done:!0,value:e}}async throw(e){throw this.#e=!0,this.#t||(this.#t=!0,await this.#n("throw")),e}async[O](){this.#e=!0,this.#t||(this.#t=!0,await this.#n("dispose"))}[Symbol.asyncIterator](){return this}};function _({name:e,...t},n){let r;return new A(async()=>{r??=E(e);try{const e=await T(r,()=>n.next());return r?.addEvent(e.done?"completed":"yielded"),e}catch(o){throw I(r,o,t),o}},async e=>{try{"next"!==e&&await T(r,()=>n.return?.())}catch(o){throw I(r,o,t),o}finally{r?.end()}})}function D(e,t,n){const r=(t,o)=>{const i=e[o];return i?i({...t,next:(e=t)=>r(e,o+1)}):n(t)};return r(t,0)}function P(e){if(e)return JSON.parse(e)}function N(e){return JSON.stringify(e)}function L(e){if(!e||"object"!=typeof e)return!1;const t=Object.getPrototypeOf(e);return t===Object.prototype||!t||!t.constructor}function F(e){return!!e&&("object"==typeof e||"function"==typeof e)}function z(e,...t){return"function"==typeof e?e(...t):e}function $(e){return new Proxy(e,{get(e,t,n){const r=Reflect.get(e,t,n);return"then"!==t||"function"!=typeof r?r:new Proxy(r,{apply(t,n,r){if(2!==r.length||r.some(e=>{return!("function"==typeof(t=e)&&W.test(t.toString()));var t}))return Reflect.apply(t,n,r);let o=!0;r[0].call(n,$(new Proxy(e,{get:(e,t,n)=>{if(!o||"then"!==t)return Reflect.get(e,t,n);o=!1}})))}})}})}var B,W=/^\s*function\s*\(\)\s*\{\s*\[native code\]\s*\}\s*$/,U=/* @__PURE__ */new Set(["bind","valueOf","toString","toJSON"]),H={BAD_REQUEST:{status:400,message:"Bad Request"},UNAUTHORIZED:{status:401,message:"Unauthorized"},FORBIDDEN:{status:403,message:"Forbidden"},NOT_FOUND:{status:404,message:"Not Found"},METHOD_NOT_SUPPORTED:{status:405,message:"Method Not Supported"},NOT_ACCEPTABLE:{status:406,message:"Not Acceptable"},TIMEOUT:{status:408,message:"Request Timeout"},CONFLICT:{status:409,message:"Conflict"},PRECONDITION_FAILED:{status:412,message:"Precondition Failed"},PAYLOAD_TOO_LARGE:{status:413,message:"Payload Too Large"},UNSUPPORTED_MEDIA_TYPE:{status:415,message:"Unsupported Media Type"},UNPROCESSABLE_CONTENT:{status:422,message:"Unprocessable Content"},TOO_MANY_REQUESTS:{status:429,message:"Too Many Requests"},CLIENT_CLOSED_REQUEST:{status:499,message:"Client Closed Request"},INTERNAL_SERVER_ERROR:{status:500,message:"Internal Server Error"},NOT_IMPLEMENTED:{status:501,message:"Not Implemented"},BAD_GATEWAY:{status:502,message:"Bad Gateway"},SERVICE_UNAVAILABLE:{status:503,message:"Service Unavailable"},GATEWAY_TIMEOUT:{status:504,message:"Gateway Timeout"}},j=class e extends Error{defined;code;status;data;static{const t=Symbol.for("__@orpc/client@1.15.1/error/ORPC_ERROR_CONSTRUCTORS__");globalThis[t]??=/* @__PURE__ */new WeakSet,(B=globalThis[t]).add(e)}constructor(e,...t){const n=function(e){return e[0]??{}}(t);if(void 0!==n.status&&!q(n.status))throw new Error("[ORPCError] Invalid error status code.");const r=function(e,t){return t||H[e]?.message||e}(e,n.message);super(r,n),this.code=e,this.status=function(e,t){return t??H[e]?.status??500}(e,n.status),this.defined=n.defined??!1,this.data=n.data}toJSON(){return{defined:this.defined,code:this.code,status:this.status,message:this.message,data:this.data}}static[Symbol.hasInstance](e){if(B.has(this)){const t=function(e){return F(e)?Object.getPrototypeOf(e)?.constructor:null}(e);if(t&&B.has(t))return!0}return super[Symbol.hasInstance](e)}};function q(e){return e<200||e>=400}function V(e){if(!L(e))return!1;const t=["defined","code","status","message","data"];return!Object.keys(e).some(e=>!t.includes(e))&&"defined"in e&&"boolean"==typeof e.defined&&"code"in e&&"string"==typeof e.code&&"status"in e&&"number"==typeof e.status&&q(e.status)&&"message"in e&&"string"==typeof e.message}function Y(e,t={}){return new j(e.code,{...t,...e})}var K=class extends TypeError{},X=class extends TypeError{},G=class extends Error{data;constructor(e){super(e?.message??"An error event was received",e),this.data=e?.data}},J=/\r\n|\r(?!\n)|\n/,Z=/(?:\r\n|\r(?!\n)|\n){2}/,Q=/(?:\r\n|\r(?!\n)|\n){2}/g;function ee(e){const t={data:void 0,event:void 0,id:void 0,retry:void 0,comments:[]};for(const n of e.split(J)){if(""===n)continue;const e=n.indexOf(":"),r=-1===e?"":n.slice(32===n.charCodeAt(e+1)?e+2:e+1);if(0!==e)switch(-1===e?n:n.slice(0,e)){case"data":t.data=void 0===t.data?r:`${t.data}\n${r}`;break;case"event":t.event=r;break;case"id":t.id=r;break;case"retry":{const e=Number.parseInt(r,10);e>=0&&e.toString()===r&&(t.retry=e);break}}else t.comments.push(r)}return t}var te=class{constructor(e={}){this.options=e}pending=[];tail="";discardLeadingLF=!1;feed(e){if(""===e)return;if(this.discardLeadingLF&&(this.discardLeadingLF=!1,10===e.charCodeAt(0)&&""===(e=e.slice(1))))return;const t=this.tail+e;if(!Z.test(t))return this.pending.push(e),void(this.tail=t.slice(-3));this.pending.push(e);const n=1===this.pending.length?e:this.pending.join(""),r=n.length-t.length,o=[];let i=0;for(const a of t.matchAll(Q))o.push(n.slice(i,r+a.index)),i=r+a.index+a[0].length;const s=n.slice(i);this.pending.length=0,this.tail=s.slice(-3),""===s?this.discardLeadingLF=13===e.charCodeAt(e.length-1):this.pending.push(s);for(const a of o){const e=ee(a);this.options.onEvent&&this.options.onEvent(e)}}end(){if(0!==this.pending.length)throw new X("Event Iterator ended before complete")}},ne=class extends TransformStream{constructor(){let e;super({start(t){e=new te({onEvent:e=>{t.enqueue(e)}})},transform(t){e.feed(t)},flush(){e.end()}})}},re=/\r\n|[\n\r]/,oe=/\r\n|[\n\r]/g;function ie(e){return re.test(e)}function se(e){if(ie(e))throw new K("Event's id must not contain a carriage return or newline character")}function ae(e){if(!Number.isInteger(e)||e<0)throw new K("Event's retry must be a integer and >= 0")}function ce(e){if(ie(e))throw new K("Event's comment must not contain a carriage return or newline character")}function le(e){let t="";var n;return t+=function(e){let t="";for(const n of e??[])ce(n),t+=`: ${n}\n`;return t}(e.comments),void 0!==e.event&&(function(e){if(ie(e))throw new K("Event's event must not contain a carriage return or newline character")}(e.event),t+=`event: ${e.event}\n`),void 0!==e.retry&&(ae(e.retry),t+=`retry: ${e.retry}\n`),void 0!==e.id&&(se(e.id),t+=`id: ${e.id}\n`),t+=void 0===(n=e.data)?"":`data: ${n.replace(oe,"\ndata: ")}\n`,t+="\n",t}var ue=Symbol("ORPC_EVENT_SOURCE_META");function de(e,t){if(void 0===t.id&&void 0===t.retry&&!t.comments?.length)return e;if(void 0!==t.id&&se(t.id),void 0!==t.retry&&ae(t.retry),void 0!==t.comments)for(const n of t.comments)ce(n);return new Proxy(e,{get:(e,n,r)=>n===ue?t:Reflect.get(e,n,r)})}function pe(e){return F(e)?Reflect.get(e,ue):void 0}function he(e,t){const n=async e=>{let n=await t.error(e);if(n!==e){const t=pe(e);t&&F(n)&&(n=de(n,t))}return n};return new A(async()=>{const{done:r,value:o}=await(async()=>{try{return await e.next()}catch(t){throw await n(t)}})();let i=await t.value(o,r);if(i!==o){const e=pe(o);e&&F(i)&&(i=de(i,e))}return{done:r,value:i}},async()=>{try{await(e.return?.())}catch(t){throw await n(t)}})}function fe(e,t={}){const n=t.path??[];return $(new Proxy(async(...[t,r={}])=>await e.call(n,t,function(e){return{...e,context:e.context??{}}}(r)),{get:(r,o)=>"string"!=typeof o||U.has(o)?Reflect.get(r,o):fe(e,{...t,path:[...n,o]})}))}function me(e,t={}){return e.forEach((e,n)=>{Array.isArray(t[n])?t[n].push(e):void 0!==t[n]?t[n]=[t[n],e]:t[n]=e}),t}var ge=class{plugins;constructor(e=[]){this.plugins=[...e].sort((e,t)=>(e.order??0)-(t.order??0))}init(e){for(const t of this.plugins)t.init?.(e)}},ye=class{constructor(e,t,n={}){this.codec=e,this.sender=t,new ge(n.plugins).init(n),this.interceptors=w(n.interceptors),this.clientInterceptors=w(n.clientInterceptors)}interceptors;clientInterceptors;call(e,t,n){return M({name:`${x}.${e.join("/")}`,signal:n.signal},r=>(r?.setAttribute("rpc.system",x),r?.setAttribute("rpc.method",e.join(".")),R(t)&&(t=_({name:"consume_event_iterator_input",signal:n.signal},t)),D(this.interceptors,{...n,path:e,input:t},async({path:e,input:t,...n})=>{const o=C();let i;const s=o?.trace.getActiveSpan()??r;s&&o&&(i=o?.trace.setSpan(o.context.active(),s));const a=await M({name:"encode_request",context:i},()=>this.codec.encode(e,t,n)),c=await D(this.clientInterceptors,{...n,input:t,path:e,request:a},({input:e,path:t,request:n,...r})=>M({name:"send_request",signal:r.signal,context:i},()=>this.sender.call(n,r,t,e))),l=await M({name:"decode_response",context:i},()=>this.codec.decode(c,n,e,t));return R(l)?_({name:"consume_event_iterator_output",signal:n.signal},l):l})))}},be=class{customSerializers;constructor(e={}){if(this.customSerializers=e.customJsonSerializers??[],this.customSerializers.length!==new Set(this.customSerializers.map(e=>e.type)).size)throw new Error("Custom serializer type must be unique.")}serialize(e,t=[],n=[],r=[],o=[]){for(const i of this.customSerializers)if(i.condition(e)){const s=this.serialize(i.serialize(e),t,n,r,o);return n.push([i.type,...t]),s}if(e instanceof Blob)return r.push(t),o.push(e),[e,n,r,o];if("bigint"==typeof e)return n.push([0,...t]),[e.toString(),n,r,o];if(e instanceof Date)return n.push([1,...t]),Number.isNaN(e.getTime())?[null,n,r,o]:[e.toISOString(),n,r,o];if(Number.isNaN(e))return n.push([2,...t]),[null,n,r,o];if(e instanceof URL)return n.push([4,...t]),[e.toString(),n,r,o];if(e instanceof RegExp)return n.push([5,...t]),[e.toString(),n,r,o];if(e instanceof Set){const i=this.serialize(Array.from(e),t,n,r,o);return n.push([6,...t]),i}if(e instanceof Map){const i=this.serialize(Array.from(e.entries()),t,n,r,o);return n.push([7,...t]),i}if(Array.isArray(e))return[e.map((e,i)=>void 0===e?(n.push([3,...t,i]),null):this.serialize(e,[...t,i],n,r,o)[0]),n,r,o];if(L(e)){const i={};for(const s in e)"toJSON"===s&&"function"==typeof e[s]||(i[s]=this.serialize(e[s],[...t,s],n,r,o)[0]);return[i,n,r,o]}return[e,n,r,o]}deserialize(e,t,n,r){const o={data:e};n&&r&&n.forEach((e,t)=>{let n=o,i="data";e.forEach(e=>{if(n=n[i],i=e,!Object.hasOwn(n,i))throw new Error(`Security error: accessing non-existent path during deserialization. Path segment: ${i}`)}),n[i]=r(t)});for(const i of t){const e=i[0];let t=o,n="data";for(let r=1;r<i.length;r++)if(t=t[n],n=i[r],!Object.hasOwn(t,n))throw new Error(`Security error: accessing non-existent path during deserialization. Path segment: ${n}`);for(const r of this.customSerializers)if(r.type===e){t[n]=r.deserialize(t[n]);break}switch(e){case 0:t[n]=BigInt(t[n]);break;case 1:t[n]=new Date(t[n]??"Invalid Date");break;case 2:t[n]=NaN;break;case 3:t[n]=void 0;break;case 4:t[n]=new URL(t[n]);break;case 5:{const[,e,r]=t[n].match(/^\/(.*)\/([a-z]*)$/);t[n]=new RegExp(e,r);break}case 6:t[n]=new Set(t[n]);break;case 7:t[n]=new Map(t[n])}}return o.data}},ve=class{constructor(e,t){this.serializer=e,this.baseUrl=t.url,this.maxUrlLength=t.maxUrlLength??2083,this.fallbackMethod=t.fallbackMethod??"POST",this.expectedMethod=t.method??this.fallbackMethod,this.headers=t.headers??{}}baseUrl;maxUrlLength;fallbackMethod;expectedMethod;headers;async encode(e,t,n){let r=function(e){return"function"==typeof e.forEach?me(e):e}(await z(this.headers,n,e,t));void 0!==n.lastEventId&&(r=function(e,t){const n={...e};for(const r in t)Array.isArray(t[r])?n[r]=[...w(n[r]),...t[r]]:void 0!==t[r]&&(Array.isArray(n[r])?n[r]=[...n[r],t[r]]:void 0!==n[r]?n[r]=[n[r],t[r]]:n[r]=t[r]);return n}(r,{"last-event-id":n.lastEventId}));const o=await z(this.expectedMethod,n,e,t),i=await z(this.baseUrl,n,e,t),s=new URL(i);s.pathname=`${s.pathname.replace(/\/$/,"")}${function(e){return`/${e.map(encodeURIComponent).join("/")}`}(e)}`;const a=this.serializer.serialize(t);if(!("GET"!==o||a instanceof FormData||R(a))){const i=await z(this.maxUrlLength,n,e,t),c=new URL(s);if(c.searchParams.append("data",N(a)),c.toString().length<=i)return{body:void 0,method:o,headers:r,url:c,signal:n.signal}}return{url:s,method:"GET"===o?this.fallbackMethod:o,headers:r,body:a,signal:n.signal}}async decode(e){const t=!q(e.status),n=await(async()=>{let t=!1;try{const n=await e.body();return t=!0,this.serializer.deserialize(n)}catch(n){if(!t)throw new Error("Cannot parse response body, please check the response body and content-type.",{cause:n});throw new Error("Invalid RPC response format.",{cause:n})}})();if(!t){if(V(n))throw Y(n);throw new j((r=e.status,Object.entries(H).find(([,e])=>e.status===r)?.[0]??"MALFORMED_ORPC_ERROR_RESPONSE"),{status:e.status,data:{...e,body:n}})}var r;return n}},we=class{constructor(e){this.jsonSerializer=e}serialize(e){return R(e)?he(e,{value:async e=>this.#o(e,!1),error:async e=>{return new G({data:this.#o((t=e,t instanceof j?t:new j("INTERNAL_SERVER_ERROR",{message:"Internal server error",cause:t})).toJSON(),!1),cause:e});var t}}):this.#o(e,!0)}#o(e,t){const[n,r,o,i]=this.jsonSerializer.serialize(e),s=0===r.length?void 0:r;if(!t||0===i.length)return{json:n,meta:s};const a=new FormData;return a.set("data",N({json:n,meta:s,maps:o})),i.forEach((e,t)=>{a.set(t.toString(),e)}),a}deserialize(e){return R(e)?he(e,{value:async e=>this.#i(e),error:async e=>{if(!(e instanceof G))return e;const t=this.#i(e.data);return V(t)?Y(t,{cause:e}):new G({data:t,cause:e})}}):this.#i(e)}#i(e){if(void 0===e)return;if(!(e instanceof FormData))return this.jsonSerializer.deserialize(e.json,e.meta??[]);const t=JSON.parse(e.get("data"));return this.jsonSerializer.deserialize(t.json,t.meta??[],t.maps,t=>e.get(t.toString()))}},xe=class extends ye{constructor(e,t){const n=new be(t),r=new we(n);super(new ve(r,t),e,t)}},Se=class extends ge{initRuntimeAdapter(e){for(const t of this.plugins)t.initRuntimeAdapter?.(e)}},ke=class{fetch;toFetchRequestOptions;adapterInterceptors;constructor(e){new Se(e.plugins).initRuntimeAdapter(e),this.fetch=e.fetch??globalThis.fetch.bind(globalThis),this.toFetchRequestOptions=e,this.adapterInterceptors=w(e.adapterInterceptors)}async call(e,t,n,r){const o=function(e,t={}){const n=function(e,t=new Headers){for(const[n,r]of Object.entries(e))if(Array.isArray(r))for(const e of r)t.append(n,e);else void 0!==r&&t.append(n,r);return t}(e.headers),r=function(e,t,n={}){if(e instanceof ReadableStream)return e;const r=t.get("content-disposition");return t.delete("content-type"),t.delete("content-disposition"),void 0!==e?e instanceof Blob?(t.set("content-type",e.type),t.set("content-length",e.size.toString()),t.set("content-disposition",r??function(e,t="inline"){return`${t}; filename="${e.replace(/[^\x20-\x7E]/g,"_").replace(/"/g,'\\"')}"; filename*=utf-8''${encodeURIComponent(e).replace(/['()*]/g,e=>`%${e.charCodeAt(0).toString(16).toUpperCase()}`).replace(/%(7C|60|5E)/g,(e,t)=>String.fromCharCode(Number.parseInt(t,16)))}`}(e instanceof File?e.name:"blob")),e):e instanceof FormData||e instanceof URLSearchParams?e:R(e)?(t.set("content-type","text/event-stream"),function(e,t={}){const n=t.eventIteratorKeepAliveEnabled??!0,r=t.eventIteratorKeepAliveInterval??5e3,o=t.eventIteratorKeepAliveComment??"",i=t.eventIteratorInitialCommentEnabled??!0,s=t.eventIteratorInitialComment??"";let a,c,l=!1;return new ReadableStream({start(e){c=E("stream_event_iterator"),i&&e.enqueue(le({comments:[s]}))},async pull(t){try{n&&(a=setInterval(()=>{t.enqueue(le({comments:[o]})),c?.addEvent("keepalive")},r));const i=await T(c,()=>e.next());if(clearInterval(a),l)return;const s=pe(i.value);if(!i.done||void 0!==i.value||void 0!==s){const e=i.done?"done":"message";t.enqueue(le({...s,event:e,data:N(i.value)})),c?.addEvent(e)}i.done&&(t.close(),c?.end())}catch(i){if(clearInterval(a),l)return;i instanceof G?(t.enqueue(le({...pe(i),event:"error",data:N(i.data)})),c?.addEvent("error"),t.close()):(I(c,i),t.error(i)),c?.end()}},async cancel(){try{l=!0,clearInterval(a),c?.addEvent("cancelled"),await T(c,()=>e.return?.())}catch(t){throw I(c,t),t}finally{c?.end()}}}).pipeThrough(new TextEncoderStream)}(e,n)):(t.set("content-type","application/json"),N(e)):void 0}(e.body,n,t);return new Request(e.url,{signal:e.signal,method:e.method,headers:n,body:r})}(e,this.toFetchRequestOptions);return function(e,t={}){return{body:k(()=>function(e,t={}){return M({name:"parse_standard_body",signal:t.signal},async()=>{const n=e.headers.get("content-disposition");if("string"==typeof n){const t=function(e){const t=e.match(/filename\*=(UTF-8'')?([^;]*)/i);if(t&&"string"==typeof t[2])return function(e){try{return decodeURIComponent(e)}catch{return e}}(t[2]);const n=e.match(/filename="((?:\\"|[^"])*)"/i);return n&&"string"==typeof n[1]?n[1].replace(/\\"/g,'"'):void 0}(n)??"blob",r=await e.blob();return new File([r],t,{type:r.type})}const r=e.headers.get("content-type");if(!r||r.startsWith("application/json"))return P(await e.text());if(r.startsWith("multipart/form-data"))return await e.formData();if(r.startsWith("application/x-www-form-urlencoded")){const t=await e.text();return new URLSearchParams(t)}if(r.startsWith("text/event-stream"))return function(e,t={}){const n=(e?.pipeThrough(new TextDecoderStream).pipeThrough(new ne))?.getReader();let r,o=!1;return new A(async()=>{r??=E("consume_event_iterator_stream");try{for(;;){if(void 0===n)return{done:!0,value:void 0};const{done:e,value:t}=await T(r,()=>n.read());if(e){if(o)throw new S("Stream was cancelled");return{done:!0,value:void 0}}switch(t.event){case"message":{let e=P(t.data);return F(e)&&(e=de(e,t)),r?.addEvent("message"),{done:!1,value:e}}case"error":{let e=new G({data:P(t.data)});throw e=de(e,t),r?.addEvent("error"),e}case"done":{let e=P(t.data);return F(e)&&(e=de(e,t)),r?.addEvent("done"),{done:!0,value:e}}default:r?.addEvent("maybe_keepalive")}}}catch(e){throw e instanceof G||I(r,e,t),e}},async e=>{try{"next"!==e&&(o=!0,r?.addEvent("cancelled")),await T(r,()=>n?.cancel())}catch(i){throw I(r,i,t),i}finally{r?.end()}})}(e.body,t);if(r.startsWith("text/plain"))return await e.text();const o=await e.blob();return new File([o],"blob",{type:o.type})})}(e,t)),status:e.status,get headers(){const t=me(e.headers);return Object.defineProperty(this,"headers",{value:t,writable:!0}),t},set headers(e){Object.defineProperty(this,"headers",{value:e,writable:!0})}}}(await D(this.adapterInterceptors,{...t,request:o,path:n,input:r,init:{redirect:"manual"}},({request:e,path:t,input:n,init:r,...o})=>this.fetch(e,r,o,t,n)),{signal:o.signal})}},Ce=class extends xe{constructor(e){super(new ke(e),e)}};function Ee(e){return fe(new Ce({url:e,fetch:(e,t)=>globalThis.fetch(e,{...t,credentials:"omit"})}))}var Ie="",Me=Ee(""),Te=new Proxy({},{get:(e,t)=>Me[t]}),Re=e=>e.filter(e=>"text"===e.type).map(e=>e.content).join("\n");function Oe(e,t="Unknown error"){return e instanceof Error?e.message:"string"==typeof e?e:t}function Ae(e,t){console.warn(void 0===t?e:`${e} ${Oe(t)}`)}var _e="marketrix_chat_context";function De(e,t){return`${e}_${function(e){return e.mtxId??(null!=e.mtxApp?String(e.mtxApp):"default")}(t)}`}var Pe={chat_id:null,messages:[],currentMode:"tell",isOpen:!1,config:null,timestamp:0};function Ne(e){try{return"undefined"==typeof localStorage?null:localStorage.getItem(e)}catch(t){return Ae("[StorageService] localStorage is unreadable:",t),null}}function Le(e,t){try{"undefined"!=typeof localStorage&&localStorage.setItem(e,t)}catch(n){Ae("[StorageService] localStorage is unwritable:",n)}}function Fe(e){if("object"!=typeof e||null===e)return!1;const t=e;return"string"==typeof t.id&&"string"==typeof t.content&&("user"===t.sender||"agent"===t.sender)&&"string"==typeof t.timestamp&&Array.isArray(t.parts)}function ze(e){const t=Ne(e);if(!t)return{...Pe};try{const e=function(e){if("object"!=typeof e||null===e)return{...Pe};const t=e,n=t.chat_id,r=t.currentMode,o=t.config,i=t.timestamp;return{chat_id:"string"==typeof n||null===n?n:Pe.chat_id,messages:Array.isArray(t.messages)?t.messages.filter(Fe):Pe.messages,currentMode:"tell"===r||"show"===r||"do"===r?r:Pe.currentMode,isOpen:"boolean"==typeof t.isOpen?t.isOpen:Pe.isOpen,config:"object"==typeof o?o:Pe.config,timestamp:"number"==typeof i?i:Pe.timestamp}}(JSON.parse(t));if(Date.now()-e.timestamp<=6048e5)return e}catch(n){Ae("[StorageService] Failed to parse the stored context:",n)}return{...Pe}}var $e,Be=new class{key=_e;context=ze(this.key);getContext(){return this.context}updateContext(e){this.context={...this.context,...e,timestamp:Date.now()},Le(this.key,JSON.stringify(this.context))}getChatId(){return this.context.chat_id}setChatId(e){this.updateContext({chat_id:e})}getCredentialedConfig(){const{config:e}=this.context;return e?.mtxId&&e.mtxKey?e:null}setConfig(e){this.key=De(_e,e),this.context=ze(this.key),this.updateContext({config:e})}},We=new class{creation=null;async getOrCreateChatId(){return Be.getChatId()||(this.creation??=(async()=>{const e=await Te.chatCreate(void 0);if(!e)throw new Error("API returned empty chat ID");return Be.setChatId(e),e})().finally(()=>{this.creation=null}),this.creation)}},Ue=Object.defineProperty,He=(e,t,n)=>((e,t,n)=>t in e?Ue(e,t,{enumerable:!0,configurable:!0,writable:!0,value:n}):e[t]=n)(e,"symbol"!=typeof t?t+"":t,n),je=/* @__PURE__ */(e=>(e[e.DomContentLoaded=0]="DomContentLoaded",e[e.Load=1]="Load",e[e.FullSnapshot=2]="FullSnapshot",e[e.IncrementalSnapshot=3]="IncrementalSnapshot",e[e.Meta=4]="Meta",e[e.Custom=5]="Custom",e[e.Plugin=6]="Plugin",e[e.Asset=7]="Asset",e))(je||{}),qe=/* @__PURE__ */(e=>(e[e.Mutation=0]="Mutation",e[e.MouseMove=1]="MouseMove",e[e.MouseInteraction=2]="MouseInteraction",e[e.Scroll=3]="Scroll",e[e.ViewportResize=4]="ViewportResize",e[e.Input=5]="Input",e[e.TouchMove=6]="TouchMove",e[e.MediaInteraction=7]="MediaInteraction",e[e.StyleSheetRule=8]="StyleSheetRule",e[e.CanvasMutation=9]="CanvasMutation",e[e.Font=10]="Font",e[e.Log=11]="Log",e[e.Drag=12]="Drag",e[e.StyleDeclaration=13]="StyleDeclaration",e[e.Selection=14]="Selection",e[e.AdoptedStyleSheet=15]="AdoptedStyleSheet",e[e.CustomElement=16]="CustomElement",e))(qe||{}),Ve=/* @__PURE__ */(e=>(e[e.MouseUp=0]="MouseUp",e[e.MouseDown=1]="MouseDown",e[e.Click=2]="Click",e[e.ContextMenu=3]="ContextMenu",e[e.DblClick=4]="DblClick",e[e.Focus=5]="Focus",e[e.Blur=6]="Blur",e[e.TouchStart=7]="TouchStart",e[e.TouchMove_Departed=8]="TouchMove_Departed",e[e.TouchEnd=9]="TouchEnd",e[e.TouchCancel=10]="TouchCancel",e))(Ve||{}),Ye=/* @__PURE__ */(e=>(e[e.Mouse=0]="Mouse",e[e.Pen=1]="Pen",e[e.Touch=2]="Touch",e))(Ye||{}),Ke=/* @__PURE__ */(e=>(e[e["2D"]=0]="2D",e[e.WebGL=1]="WebGL",e[e.WebGL2=2]="WebGL2",e))(Ke||{}),Xe=/* @__PURE__ */(e=>(e[e.Play=0]="Play",e[e.Pause=1]="Pause",e[e.Seeked=2]="Seeked",e[e.VolumeChange=3]="VolumeChange",e[e.RateChange=4]="RateChange",e))(Xe||{}),Ge=/* @__PURE__ */(e=>(e[e.Document=0]="Document",e[e.DocumentType=1]="DocumentType",e[e.Element=2]="Element",e[e.Text=3]="Text",e[e.CDATA=4]="CDATA",e[e.Comment=5]="Comment",e))(Ge||{}),Je={Node:["childNodes","parentNode","parentElement","textContent","ownerDocument"],ShadowRoot:["host","styleSheets"],Element:["shadowRoot","querySelector","querySelectorAll"],MutationObserver:[]},Ze={Node:["contains","getRootNode"],ShadowRoot:["getSelection"],Element:[],MutationObserver:["constructor"]},Qe={},et={};function tt(e){if(Qe[e])return Qe[e];const t=globalThis[e],n=t.prototype,r=e in Je?Je[e]:void 0,o=Boolean(r&&r.every(e=>{var t,r;return Boolean(null==(r=null==(t=Object.getOwnPropertyDescriptor(n,e))?void 0:t.get)?void 0:r.toString().includes("[native code]"))})),i=e in Ze?Ze[e]:void 0,s=Boolean(i&&i.every(e=>{var t;return"function"==typeof n[e]&&(null==(t=n[e])?void 0:t.toString().includes("[native code]"))}));if(o&&s&&!globalThis.Zone)return Qe[e]=t.prototype,t.prototype;try{const r=document.createElement("iframe");r.style.display="none",document.body.appendChild(r);const o=r.contentWindow;if(!o)return t.prototype;const i=o[e].prototype;if(!i)return r.remove(),n;const s=navigator.userAgent;return s.includes("Safari")&&!s.includes("Chrome")?(r.classList.add("rr-block"),r.setAttribute("__rrwebUntaintedMutationObserver",""),et[e]=()=>r.remove()):r.remove(),Qe[e]=i}catch{return n}}var nt={};function rt(e,t,n){var r;const o=`${e}.${String(n)}`;if(nt[o])return nt[o].call(t);const i=tt(e),s=null==(r=Object.getOwnPropertyDescriptor(i,n))?void 0:r.get;return s?(nt[o]=s,s.call(t)):t[n]}var ot={};function it(e,t,n){const r=`${e}.${String(n)}`;if(ot[r])return ot[r].bind(t);const o=tt(e)[n];return"function"!=typeof o?t[n]:(ot[r]=o,o.bind(t))}var st=Date.now;function at(e,t,n){try{if(!(t in e))return()=>{};const r=e[t],o=n(r);return"function"==typeof o&&(o.prototype=o.prototype||{},Object.defineProperties(o,{__rrweb_original__:{enumerable:!1,value:r}})),e[t]=o,()=>{e[t]=r}}catch{return()=>{}}}/* @__PURE__ */ /[1-9][0-9]{12}/.test(Date.now().toString())||(st=()=>/* @__PURE__ */(new Date).getTime());var ct=function(e){return rt("Node",e,"ownerDocument")},lt=function(e){return rt("Node",e,"childNodes")},ut=function(e){return rt("Node",e,"parentNode")},dt=function(e){return rt("Node",e,"parentElement")},pt=function(e){return rt("Node",e,"textContent")},ht=function(e,t){return it("Node",e,"contains")(t)},ft=function(e){return it("Node",e,"getRootNode")()},mt=function(e){return e&&"host"in e?rt("ShadowRoot",e,"host"):null},gt=function(e){return e&&"shadowRoot"in e?rt("Element",e,"shadowRoot"):null};function yt(e){return e.nodeType===e.ELEMENT_NODE}function bt(e){const t=e&&"host"in e&&"mode"in e&&mt(e)||null;return Boolean(t&&"shadowRoot"in t&>(t)===e)}function vt(e){return"[object ShadowRoot]"===Object.prototype.toString.call(e)}function wt(e){try{const n=e.rules||e.cssRules;if(!n)return null;let r=e.href;return!r&&e.ownerNode&&(r=e.ownerNode.baseURI),(t=Array.from(n,e=>xt(e,r)).join("")).includes(" background-clip: text;")&&!t.includes(" -webkit-background-clip: text;")&&(t=t.replace(/\sbackground-clip:\s*text;/g," -webkit-background-clip: text; background-clip: text;")),t}catch(n){return null}var t}function xt(e,t){if(function(e){return"styleSheet"in e}(e)){let t;try{t=wt(e.styleSheet)||function(e){const{cssText:t}=e;if(t.split('"').length<3)return t;const n=["@import",`url(${JSON.stringify(e.href)})`];return""===e.layerName?n.push("layer"):e.layerName&&n.push(`layer(${e.layerName})`),e.supportsText&&n.push(`supports(${e.supportsText})`),e.media.length&&n.push(e.media.mediaText),n.join(" ")+";"}(e)}catch(n){t=e.cssText}return e.styleSheet.href?_t(t,e.styleSheet.href):t}{let n=e.cssText;return function(e){return"selectorText"in e}(e)&&e.selectorText.includes(":")&&(n=n.replace(/(\[(?:[\w-]+)[^\\])(:(?:[\w-]+)\])/gm,"$1\\$2")),t?_t(n,t):n}}var St=class{constructor(){He(this,"idNodeMap",/* @__PURE__ */new Map),He(this,"nodeMetaMap",/* @__PURE__ */new WeakMap)}getId(e){var t;return e?(null==(t=this.getMeta(e))?void 0:t.id)??-1:-1}getNode(e){return this.idNodeMap.get(e)||null}getIds(){return Array.from(this.idNodeMap.keys())}getMeta(e){return this.nodeMetaMap.get(e)||null}removeNodeFromMap(e){const t=this.getId(e);this.idNodeMap.delete(t),e.childNodes&&e.childNodes.forEach(e=>this.removeNodeFromMap(e))}has(e){return this.idNodeMap.has(e)}hasNode(e){return this.nodeMetaMap.has(e)}add(e,t){const n=t.id;this.idNodeMap.set(n,e),this.nodeMetaMap.set(e,t)}replace(e,t){const n=this.getNode(e);if(n){const e=this.nodeMetaMap.get(n);e&&this.nodeMetaMap.set(t,e)}this.idNodeMap.set(e,t)}reset(){this.idNodeMap=/* @__PURE__ */new Map,this.nodeMetaMap=/* @__PURE__ */new WeakMap}};function kt({element:e,maskInputOptions:t,tagName:n,type:r,value:o,maskInputFn:i}){let s=o||"";const a=r&&Ct(r);return(t[n.toLowerCase()]||a&&t[a])&&(s=i?i(s,e):"*".repeat(s.length)),s}function Ct(e){return e.toLowerCase()}var Et="__rrweb_original__";function It(e){const t=e.type;return e.hasAttribute("data-rr-is-password")?"password":t?Ct(t):null}function Mt(e,t){let n;try{n=new URL(e,t??window.location.href)}catch(o){return null}const r=n.pathname.match(/\.([0-9a-z]+)(?:$)/i);return(null==r?void 0:r[1])??null}var Tt=/url\((?:(')([^']*)'|(")(.*?)"|([^)]*))\)/gm,Rt=/^(?:[a-z+]+:)?\/\//i,Ot=/^www\..*/i,At=/^(data:)([^,]*),(.*)/i;function _t(e,t){return(e||"").replace(Tt,(e,n,r,o,i,s)=>{const a=r||i||s,c=n||o||"";if(!a)return e;if(Rt.test(a)||Ot.test(a))return`url(${c}${a}${c})`;if(At.test(a))return`url(${c}${a}${c})`;if("/"===a[0])return`url(${c}${function(e){let t="";return t=e.indexOf("//")>-1?e.split("/").slice(0,3).join("/"):e.split("/")[0],t=t.split("?")[0],t}(t)+a}${c})`;const l=a.split("#")[0],u=a.substring(l.length),d=t.split("#")[0].split("/"),p=l.split("/");d.pop();for(const t of p)"."!==t&&(".."===t?d.pop():d.push(t));return`url(${c}${d.join("/")}${u}${c})`})}function Dt(e,t=!1){return t?e.replace(/(\/\*[^*]*\*\/)|[\s;]/g,""):e.replace(/(\/\*[^*]*\*\/)|[\s;]/g,"").replace(/0px/g,"0")}var Pt,Nt,Lt=1,Ft=/* @__PURE__ */new RegExp("[^a-z0-9-_:]");function zt(){return Lt++}var $t=/^[^ \t\n\r\u000c]+/,Bt=/^[, \t\n\r\u000c]+/,Wt=/* @__PURE__ */new WeakMap;function Ut(e,t){return t&&""!==t.trim()?Ht(e,t):t}function Ht(e,t){let n=Wt.get(e);if(n||(n=e.createElement("a"),Wt.set(e,n)),t){if(t.startsWith("blob:")||t.startsWith("data:"))return t}else t="";return n.setAttribute("href",t),n.href}function jt(e,t,n,r){return r?"src"===n||"href"===n&&("use"!==t||"#"!==r[0])||"xlink:href"===n&&"#"!==r[0]||"background"===n&&["table","td","th"].includes(t)?Ut(e,r):"srcset"===n?function(e,t){if(""===t.trim())return t;let n=0;function r(e){let r;const o=e.exec(t.substring(n));return o?(r=o[0],n+=r.length,r):""}const o=[];for(;r(Bt),!(n>=t.length);){let i=r($t);if(","===i.slice(-1))i=Ut(e,i.substring(0,i.length-1)),o.push(i);else{let r="";i=Ut(e,i);let s=!1;for(;;){const e=t.charAt(n);if(""===e){o.push((i+r).trim());break}if(s)")"===e&&(s=!1);else{if(","===e){n+=1,o.push((i+r).trim());break}"("===e&&(s=!0)}r+=e,n+=1}}}return o.join(", ")}(e,r):"style"===n?_t(r,Ht(e)):"object"===t&&"data"===n?Ut(e,r):r:r}function qt(e,t,n){return["video","audio"].includes(e)&&"autoplay"===Ct(t)}function Vt(e,t,n){if(!e)return!1;if(e.nodeType!==e.ELEMENT_NODE)return!!n&&Vt(ut(e),t,n);for(let r=e.classList.length;r--;){const n=e.classList[r];if(t.test(n))return!0}return!!n&&Vt(ut(e),t,n)}function Yt(e,t,n,r){let o;if(yt(e)){if(o=e,!lt(o).length)return!1}else{if(null===dt(e))return!1;o=dt(e)}try{if("string"==typeof t){if(r){if(o.closest(`.${t}`))return!0}else if(o.classList.contains(t))return!0}else if(Vt(o,t,r))return!0;if(n)if(r){if(o.closest(n))return!0}else if(o.matches(n))return!0}catch(i){}return!1}function Kt(e){return null==e?"":e.toLowerCase()}function Xt(e){return!0===e||"all"===e?{script:!0,comment:!0,headFavicon:!0,headWhitespace:!0,headMetaSocial:!0,headMetaRobots:!0,headMetaHttpEquiv:!0,headMetaVerification:!0,headMetaAuthorship:"all"===e,headMetaDescKeywords:"all"===e,headTitleMutations:"all"===e}:e||{}}function Gt(e,t){const{doc:n,mirror:r,blockClass:o,blockSelector:i,maskTextClass:s,maskTextSelector:a,skipChild:c=!1,inlineStylesheet:l=!0,maskInputOptions:u={},maskTextFn:d,maskInputFn:p,slimDOMOptions:h,dataURLOptions:f={},inlineImages:m=!1,recordCanvas:g=!1,onSerialize:y,onIframeLoad:b,iframeLoadTimeout:v=5e3,onStylesheetLoad:w,stylesheetLoadTimeout:x=5e3,keepIframeSrcFn:S=()=>!1,newlyAddedElement:k=!1,cssCaptured:C=!1}=t;let{needsMask:E}=t,{preserveWhiteSpace:I=!0}=t;E||(E=Yt(e,s,a,void 0===E));const M=function(e,t){const{doc:n,mirror:r,blockClass:o,blockSelector:i,needsMask:s,inlineStylesheet:a,maskInputOptions:c={},maskTextFn:l,maskInputFn:u,dataURLOptions:d={},inlineImages:p,recordCanvas:h,keepIframeSrcFn:f,newlyAddedElement:m=!1,cssCaptured:g=!1}=t,y=function(e,t){if(!t.hasNode(e))return;const n=t.getId(e);return 1===n?void 0:n}(n,r);switch(e.nodeType){case e.DOCUMENT_NODE:return"CSS1Compat"!==e.compatMode?{type:Ge.Document,childNodes:[],compatMode:e.compatMode}:{type:Ge.Document,childNodes:[]};case e.DOCUMENT_TYPE_NODE:return{type:Ge.DocumentType,name:e.name,publicId:e.publicId,systemId:e.systemId,rootId:y};case e.ELEMENT_NODE:return function(e,t){const{doc:n,blockClass:r,blockSelector:o,inlineStylesheet:i,maskInputOptions:s={},maskInputFn:a,dataURLOptions:c={},inlineImages:l,recordCanvas:u,keepIframeSrcFn:d,newlyAddedElement:p=!1,rootId:h}=t,f=function(e,t,n){try{if("string"==typeof t){if(e.classList.contains(t))return!0}else for(let n=e.classList.length;n--;){const r=e.classList[n];if(t.test(r))return!0}if(n)return e.matches(n)}catch(r){}return!1}(e,r,o),m=function(e){if(e instanceof HTMLFormElement)return"form";const t=Ct(e.tagName);return Ft.test(t)?"div":t}(e);let g={};const y=e.attributes.length;for(let x=0;x<y;x++){const t=e.attributes[x];qt(m,t.name,t.value)||(g[t.name]=jt(n,m,Ct(t.name),t.value))}if("link"===m&&i){const t=Array.from(n.styleSheets).find(t=>t.href===e.href);let r=null;t&&(r=wt(t)),r&&(delete g.rel,delete g.href,g._cssText=r)}if("style"===m&&e.sheet){let t=wt(e.sheet);t&&(e.childNodes.length>1&&(t=function(e,t){return function(e,t,n=!1){const r=Array.from(t.childNodes),o=[];let i=0;if(r.length>1&&e&&"string"==typeof e){let t=Dt(e,n);const s=t.length/e.length;for(let a=1;a<r.length;a++)if(r[a].textContent&&"string"==typeof r[a].textContent){const c=Dt(r[a].textContent,n),l=100;let u=3;for(;u<c.length&&(c[u].match(/[a-zA-Z0-9]/)||-1!==c.indexOf(c.substring(0,u),1));u++);for(;u<c.length;u++){let d=c.substring(0,u),p=t.split(d),h=-1;if(2===p.length)h=p[0].length;else if(p.length>2&&""===p[0]&&""!==r[a-1].textContent)h=t.indexOf(d,1);else if(1===p.length){if(d=d.substring(0,d.length-1),p=t.split(d),p.length<=1)return o.push(e),o;u=101}else u===c.length-1&&(h=t.indexOf(d));if(p.length>=2&&u>l){const e=r[a-1].textContent;if(e&&"string"==typeof e){const n=Dt(e).length;h=t.indexOf(d,n)}-1===h&&(h=p[0].length)}if(-1!==h){let a=Math.floor(h/s);for(;a>0&&a<e.length;){if(i+=1,i>50*r.length)return o.push(e),o;const c=Dt(e.substring(0,a),n);if(c.length===h){o.push(e.substring(0,a)),e=e.substring(a),t=t.substring(h);break}c.length<h?a+=Math.max(1,Math.floor((h-c.length)/s)):a-=Math.max(1,Math.floor((c.length-h)*s))}break}}}}return o.push(e),o}(e,t).join("/* rr_split */")}(t,e)),g._cssText=t)}if(["input","textarea","select"].includes(m)){const t=e.value,n=e.checked;"radio"!==g.type&&"checkbox"!==g.type&&"submit"!==g.type&&"button"!==g.type&&t?g.value=kt({element:e,type:It(e),tagName:m,value:t,maskInputOptions:s,maskInputFn:a}):n&&(g.checked=n)}if("option"===m&&(e.selected&&!s.select?g.selected=!0:delete g.selected),"dialog"===m&&e.open&&(g.rr_open_mode=e.matches("dialog:modal")?"modal":"non-modal"),"canvas"===m&&u)if("2d"===e.__context)(function(e){const t=e.getContext("2d");if(!t)return!0;for(let n=0;n<e.width;n+=50)for(let r=0;r<e.height;r+=50){const o=t.getImageData,i=Et in o?o[Et]:o;if(new Uint32Array(i.call(t,n,r,Math.min(50,e.width-n),Math.min(50,e.height-r)).data.buffer).some(e=>0!==e))return!1}return!0})(e)||(g.rr_dataURL=e.toDataURL(c.type,c.quality));else if(!("__context"in e)){const t=e.toDataURL(c.type,c.quality),r=n.createElement("canvas");r.width=e.width,r.height=e.height,t!==r.toDataURL(c.type,c.quality)&&(g.rr_dataURL=t)}if("img"===m&&l){Pt||(Pt=n.createElement("canvas"),Nt=Pt.getContext("2d"));const t=e,r=t.currentSrc||t.getAttribute("src")||"<unknown-src>",o=t.crossOrigin,i=()=>{t.removeEventListener("load",i);try{Pt.width=t.naturalWidth,Pt.height=t.naturalHeight,Nt.drawImage(t,0,0),g.rr_dataURL=Pt.toDataURL(c.type,c.quality)}catch(e){if("anonymous"!==t.crossOrigin)return t.crossOrigin="anonymous",void(t.complete&&0!==t.naturalWidth?i():t.addEventListener("load",i));console.warn(`Cannot inline img src=${r}! Error: ${e}`)}"anonymous"===t.crossOrigin&&(o?g.crossOrigin=o:t.removeAttribute("crossorigin"))};t.complete&&0!==t.naturalWidth?i():t.addEventListener("load",i)}if(["audio","video"].includes(m)){const t=g;t.rr_mediaState=e.paused?"paused":"played",t.rr_mediaCurrentTime=e.currentTime,t.rr_mediaPlaybackRate=e.playbackRate,t.rr_mediaMuted=e.muted,t.rr_mediaLoop=e.loop,t.rr_mediaVolume=e.volume}if(p||(e.scrollLeft&&(g.rr_scrollLeft=e.scrollLeft),e.scrollTop&&(g.rr_scrollTop=e.scrollTop)),f){const{width:t,height:n}=e.getBoundingClientRect();g={class:g.class,rr_width:`${t}px`,rr_height:`${n}px`}}let b;"iframe"!==m||d(g.src)||(e.contentDocument||(g.rr_src=g.src),delete g.src);try{customElements.get(m)&&(b=!0)}catch(w){}return{type:Ge.Element,tagName:m,attributes:g,childNodes:[],isSVG:(v=e,Boolean("svg"===v.tagName||v.ownerSVGElement)||void 0),needBlock:f,rootId:h,isCustom:b};var v}(e,{doc:n,blockClass:o,blockSelector:i,inlineStylesheet:a,maskInputOptions:c,maskInputFn:u,dataURLOptions:d,inlineImages:p,recordCanvas:h,keepIframeSrcFn:f,newlyAddedElement:m,rootId:y});case e.TEXT_NODE:return function(e,t){const{needsMask:n,maskTextFn:r,rootId:o,cssCaptured:i}=t,s=ut(e),a=s&&s.tagName;let c="";const l="STYLE"===a||void 0,u="SCRIPT"===a||void 0;return u?c="SCRIPT_PLACEHOLDER":i||(c=pt(e),l&&c&&(c=_t(c,Ht(t.doc)))),!l&&!u&&c&&n&&(c=r?r(c,dt(e)):c.replace(/[\S]/g,"*")),{type:Ge.Text,textContent:c||"",rootId:o}}(e,{doc:n,needsMask:s,maskTextFn:l,rootId:y,cssCaptured:g});case e.CDATA_SECTION_NODE:return{type:Ge.CDATA,textContent:"",rootId:y};case e.COMMENT_NODE:return{type:Ge.Comment,textContent:pt(e)||"",rootId:y};default:return!1}}(e,{doc:n,mirror:r,blockClass:o,blockSelector:i,needsMask:E,inlineStylesheet:l,maskInputOptions:u,maskTextFn:d,maskInputFn:p,dataURLOptions:f,inlineImages:m,recordCanvas:g,keepIframeSrcFn:S,newlyAddedElement:k,cssCaptured:C});if(!M)return console.warn(e,"not serialized"),null;let T;T=r.hasNode(e)?r.getId(e):function(e,t){if(t.comment&&e.type===Ge.Comment)return!0;if(e.type===Ge.Element){if(t.script&&("script"===e.tagName||"link"===e.tagName&&("preload"===e.attributes.rel&&"script"===e.attributes.as||"modulepreload"===e.attributes.rel)||"link"===e.tagName&&"prefetch"===e.attributes.rel&&"string"==typeof e.attributes.href&&"js"===Mt(e.attributes.href)))return!0;if(t.headFavicon&&("link"===e.tagName&&"shortcut icon"===e.attributes.rel||"meta"===e.tagName&&(Kt(e.attributes.name).match(/^msapplication-tile(image|color)$/)||"application-name"===Kt(e.attributes.name)||"icon"===Kt(e.attributes.rel)||"apple-touch-icon"===Kt(e.attributes.rel)||"shortcut icon"===Kt(e.attributes.rel))))return!0;if("meta"===e.tagName){if(t.headMetaDescKeywords&&Kt(e.attributes.name).match(/^description|keywords$/))return!0;if(t.headMetaSocial&&(Kt(e.attributes.property).match(/^(og|twitter|fb):/)||Kt(e.attributes.name).match(/^(og|twitter):/)||"pinterest"===Kt(e.attributes.name)))return!0;if(t.headMetaRobots&&("robots"===Kt(e.attributes.name)||"googlebot"===Kt(e.attributes.name)||"bingbot"===Kt(e.attributes.name)))return!0;if(t.headMetaHttpEquiv&&void 0!==e.attributes["http-equiv"])return!0;if(t.headMetaAuthorship&&("author"===Kt(e.attributes.name)||"generator"===Kt(e.attributes.name)||"framework"===Kt(e.attributes.name)||"publisher"===Kt(e.attributes.name)||"progid"===Kt(e.attributes.name)||Kt(e.attributes.property).match(/^article:/)||Kt(e.attributes.property).match(/^product:/)))return!0;if(t.headMetaVerification&&("google-site-verification"===Kt(e.attributes.name)||"yandex-verification"===Kt(e.attributes.name)||"csrf-token"===Kt(e.attributes.name)||"p:domain_verify"===Kt(e.attributes.name)||"verify-v1"===Kt(e.attributes.name)||"verification"===Kt(e.attributes.name)||"shopify-checkout-api-token"===Kt(e.attributes.name)))return!0}}return!1}(M,h)||!I&&M.type===Ge.Text&&!M.textContent.replace(/^\s+|\s+$/gm,"").length?-2:zt();const R=Object.assign(M,{id:T});if(r.add(e,R),-2===T)return null;y&&y(e);let O=!c;if(R.type===Ge.Element){O=O&&!R.needBlock,delete R.needBlock;const t=gt(e);t&&vt(t)&&(R.isShadowHost=!0)}if((R.type===Ge.Document||R.type===Ge.Element)&&O){h.headWhitespace&&R.type===Ge.Element&&"head"===R.tagName&&(I=!1);const t={doc:n,mirror:r,blockClass:o,blockSelector:i,needsMask:E,maskTextClass:s,maskTextSelector:a,skipChild:c,inlineStylesheet:l,maskInputOptions:u,maskTextFn:d,maskInputFn:p,slimDOMOptions:h,dataURLOptions:f,inlineImages:m,recordCanvas:g,preserveWhiteSpace:I,onSerialize:y,onIframeLoad:b,iframeLoadTimeout:v,onStylesheetLoad:w,stylesheetLoadTimeout:x,keepIframeSrcFn:S,cssCaptured:!1};if(R.type===Ge.Element&&"textarea"===R.tagName&&void 0!==R.attributes.value);else{R.type===Ge.Element&&void 0!==R.attributes._cssText&&"string"==typeof R.attributes._cssText&&(t.cssCaptured=!0);for(const n of Array.from(lt(e))){const e=Gt(n,t);e&&R.childNodes.push(e)}}let k=null;if(yt(e)&&(k=gt(e)))for(const e of Array.from(lt(k))){const n=Gt(e,t);n&&(vt(k)&&(n.isShadow=!0),R.childNodes.push(n))}}const A=ut(e);return A&&bt(A)&&vt(A)&&(R.isShadow=!0),R.type===Ge.Element&&"iframe"===R.tagName&&function(e,t,n){const r=e.contentWindow;if(!r)return;let o,i=!1;try{o=r.document.readyState}catch(a){return}if("complete"!==o){const r=setTimeout(()=>{i||(t(),i=!0)},n);return void e.addEventListener("load",()=>{clearTimeout(r),i=!0,t()})}const s="about:blank";if(r.location.href!==s||e.src===s||""===e.src)return setTimeout(t,0),e.addEventListener("load",t);e.addEventListener("load",t)}(e,()=>{const t=e.contentDocument;if(t&&b){const n=Gt(t,{doc:t,mirror:r,blockClass:o,blockSelector:i,needsMask:E,maskTextClass:s,maskTextSelector:a,skipChild:!1,inlineStylesheet:l,maskInputOptions:u,maskTextFn:d,maskInputFn:p,slimDOMOptions:h,dataURLOptions:f,inlineImages:m,recordCanvas:g,preserveWhiteSpace:I,onSerialize:y,onIframeLoad:b,iframeLoadTimeout:v,onStylesheetLoad:w,stylesheetLoadTimeout:x,keepIframeSrcFn:S});n&&b(e,n)}},v),R.type===Ge.Element&&"link"===R.tagName&&"string"==typeof R.attributes.rel&&("stylesheet"===R.attributes.rel||"preload"===R.attributes.rel&&"string"==typeof R.attributes.href&&"css"===Mt(R.attributes.href))&&function(e,t,n){let r,o=!1;try{r=e.sheet}catch(s){return}if(r)return;const i=setTimeout(()=>{o||(t(),o=!0)},n);e.addEventListener("load",()=>{clearTimeout(i),o=!0,t()})}(e,()=>{if(w){const t=Gt(e,{doc:n,mirror:r,blockClass:o,blockSelector:i,needsMask:E,maskTextClass:s,maskTextSelector:a,skipChild:!1,inlineStylesheet:l,maskInputOptions:u,maskTextFn:d,maskInputFn:p,slimDOMOptions:h,dataURLOptions:f,inlineImages:m,recordCanvas:g,preserveWhiteSpace:I,onSerialize:y,onIframeLoad:b,iframeLoadTimeout:v,onStylesheetLoad:w,stylesheetLoadTimeout:x,keepIframeSrcFn:S});t&&w(e,t)}},x),R}var Jt=class e{constructor(...e){He(this,"parentElement",null),He(this,"parentNode",null),He(this,"ownerDocument"),He(this,"firstChild",null),He(this,"lastChild",null),He(this,"previousSibling",null),He(this,"nextSibling",null),He(this,"ELEMENT_NODE",1),He(this,"TEXT_NODE",3),He(this,"nodeType"),He(this,"nodeName"),He(this,"RRNodeType")}get childNodes(){const e=[];let t=this.firstChild;for(;t;)e.push(t),t=t.nextSibling;return e}contains(t){if(!(t instanceof e))return!1;if(t.ownerDocument!==this.ownerDocument)return!1;if(t===this)return!0;for(;t.parentNode;){if(t.parentNode===this)return!0;t=t.parentNode}return!1}appendChild(e){throw new Error("RRDomException: Failed to execute 'appendChild' on 'RRNode': This RRNode type does not support this method.")}insertBefore(e,t){throw new Error("RRDomException: Failed to execute 'insertBefore' on 'RRNode': This RRNode type does not support this method.")}removeChild(e){throw new Error("RRDomException: Failed to execute 'removeChild' on 'RRNode': This RRNode type does not support this method.")}toString(){return"RRNode"}};function Zt(e,t,n=document){const r={capture:!0,passive:!0};return n.addEventListener(e,t,r),()=>n.removeEventListener(e,t,r)}var Qt="Please stop import mirror directly. Instead of that,\r\nnow you can use replayer.getMirror() to access the mirror instance of a replayer,\r\nor you can use record.mirror to access the mirror instance during recording.",en={map:{},getId:()=>(console.error(Qt),-1),getNode:()=>(console.error(Qt),null),removeNodeFromMap(){console.error(Qt)},has:()=>(console.error(Qt),!1),reset(){console.error(Qt)}};function tn(e,t,n={}){let r=null,o=0;return function(...i){const s=Date.now();o||!1!==n.leading||(o=s);const a=t-(s-o),c=this;a<=0||a>t?(r&&(clearTimeout(r),r=null),o=s,e.apply(c,i)):r||!1===n.trailing||(r=setTimeout(()=>{o=!1===n.leading?0:Date.now(),r=null,e.apply(c,i)},a))}}function nn(e,t,n,r,o=window){const i=o.Object.getOwnPropertyDescriptor(e,t);return o.Object.defineProperty(e,t,r?n:{set(e){setTimeout(()=>{n.set.call(this,e)},0),i&&i.set&&i.set.call(this,e)}}),()=>nn(e,t,i||{},!0)}function rn(e){var t,n,r,o;const i=e.document;return{left:i.scrollingElement?i.scrollingElement.scrollLeft:void 0!==e.pageXOffset?e.pageXOffset:i.documentElement.scrollLeft||(null==i?void 0:i.body)&&(null==(t=dt(i.body))?void 0:t.scrollLeft)||(null==(n=null==i?void 0:i.body)?void 0:n.scrollLeft)||0,top:i.scrollingElement?i.scrollingElement.scrollTop:void 0!==e.pageYOffset?e.pageYOffset:(null==i?void 0:i.documentElement.scrollTop)||(null==i?void 0:i.body)&&(null==(r=dt(i.body))?void 0:r.scrollTop)||(null==(o=null==i?void 0:i.body)?void 0:o.scrollTop)||0}}function on(){return window.innerHeight||document.documentElement&&document.documentElement.clientHeight||document.body&&document.body.clientHeight}function sn(){return window.innerWidth||document.documentElement&&document.documentElement.clientWidth||document.body&&document.body.clientWidth}function an(e){return e?e.nodeType===e.ELEMENT_NODE?e:dt(e):null}function cn(e,t,n,r){if(!e)return!1;const o=an(e);if(!o)return!1;try{if("string"==typeof t){if(o.classList.contains(t))return!0;if(r&&null!==o.closest("."+t))return!0}else if(Vt(o,t,r))return!0}catch(i){}if(n){if(o.matches(n))return!0;if(r&&null!==o.closest(n))return!0}return!1}function ln(e,t,n){return!("TITLE"!==e.tagName||!n.headTitleMutations)||-2===t.getId(e)}function un(e,t){if(bt(e))return!1;const n=t.getId(e);if(!t.has(n))return!0;const r=ut(e);return(!r||r.nodeType!==e.DOCUMENT_NODE)&&(!r||un(r,t))}function dn(e){return Boolean(e.changedTouches)}function pn(e,t){return Boolean("IFRAME"===e.nodeName&&t.getMeta(e))}function hn(e,t){return Boolean("LINK"===e.nodeName&&e.nodeType===e.ELEMENT_NODE&&e.getAttribute&&"stylesheet"===e.getAttribute("rel")&&t.getMeta(e))}function fn(e){return!!e&&(e instanceof Jt&&"shadowRoot"in e?Boolean(e.shadowRoot):Boolean(gt(e)))}"undefined"!=typeof window&&window.Proxy&&window.Reflect&&(en=new Proxy(en,{get:(e,t,n)=>("map"===t&&console.error(Qt),Reflect.get(e,t,n))}));var mn=class{constructor(){He(this,"id",1),He(this,"styleIDMap",/* @__PURE__ */new WeakMap),He(this,"idStyleMap",/* @__PURE__ */new Map)}getId(e){return this.styleIDMap.get(e)??-1}has(e){return this.styleIDMap.has(e)}add(e,t){if(this.has(e))return this.getId(e);let n;return n=void 0===t?this.id++:t,this.styleIDMap.set(e,n),this.idStyleMap.set(n,e),n}getStyle(e){return this.idStyleMap.get(e)||null}reset(){this.styleIDMap=/* @__PURE__ */new WeakMap,this.idStyleMap=/* @__PURE__ */new Map,this.id=1}generateId(){return this.id++}};function gn(e){var t;let n=null;return"getRootNode"in e&&(null==(t=ft(e))?void 0:t.nodeType)===Node.DOCUMENT_FRAGMENT_NODE&&mt(ft(e))&&(n=mt(ft(e))),n}function yn(e){const t=ct(e);return!!t&&(ht(t,e)||function(e){const t=ct(e);if(!t)return!1;const n=function(e){let t,n=e;for(;t=gn(n);)n=t;return n}(e);return ht(t,n)}(e))}function bn(e){return"__ln"in e}var vn,wn=class{constructor(){He(this,"length",0),He(this,"head",null),He(this,"tail",null)}get(e){if(e>=this.length)throw new Error("Position outside of list range");let t=this.head;for(let n=0;n<e;n++)t=(null==t?void 0:t.next)||null;return t}addNode(e){const t={value:e,previous:null,next:null};if(e.__ln=t,e.previousSibling&&bn(e.previousSibling)){const n=e.previousSibling.__ln.next;t.next=n,t.previous=e.previousSibling.__ln,e.previousSibling.__ln.next=t,n&&(n.previous=t)}else if(e.nextSibling&&bn(e.nextSibling)&&e.nextSibling.__ln.previous){const n=e.nextSibling.__ln.previous;t.previous=n,t.next=e.nextSibling.__ln,e.nextSibling.__ln.previous=t,n&&(n.next=t)}else this.head&&(this.head.previous=t),t.next=this.head,this.head=t;null===t.next&&(this.tail=t),this.length++}removeNode(e){const t=e.__ln;this.head&&(t.previous?(t.previous.next=t.next,t.next?t.next.previous=t.previous:this.tail=t.previous):(this.head=t.next,this.head?this.head.previous=null:this.tail=null),e.__ln&&delete e.__ln,this.length--)}},xn=(e,t)=>`${e}@${t}`,Sn=class{constructor(){He(this,"frozen",!1),He(this,"locked",!1),He(this,"texts",[]),He(this,"attributes",[]),He(this,"attributeMap",/* @__PURE__ */new WeakMap),He(this,"removes",[]),He(this,"mapRemoves",[]),He(this,"movedMap",{}),He(this,"addedSet",/* @__PURE__ */new Set),He(this,"movedSet",/* @__PURE__ */new Set),He(this,"droppedSet",/* @__PURE__ */new Set),He(this,"removesSubTreeCache",/* @__PURE__ */new Set),He(this,"mutationCb"),He(this,"blockClass"),He(this,"blockSelector"),He(this,"maskTextClass"),He(this,"maskTextSelector"),He(this,"inlineStylesheet"),He(this,"maskInputOptions"),He(this,"maskTextFn"),He(this,"maskInputFn"),He(this,"keepIframeSrcFn"),He(this,"recordCanvas"),He(this,"inlineImages"),He(this,"slimDOMOptions"),He(this,"dataURLOptions"),He(this,"doc"),He(this,"mirror"),He(this,"iframeManager"),He(this,"stylesheetManager"),He(this,"shadowDomManager"),He(this,"canvasManager"),He(this,"processedNodeManager"),He(this,"unattachedDoc"),He(this,"processMutations",e=>{e.forEach(this.processMutation),this.emit()}),He(this,"emit",()=>{if(this.frozen||this.locked)return;const e=[],t=/* @__PURE__ */new Set,n=new wn,r=e=>{let t=e,n=-2;for(;-2===n;)t=t&&t.nextSibling,n=t&&this.mirror.getId(t);return n},o=o=>{const i=ut(o);if(!i||!yn(o))return;let s=!1;if(o.nodeType===Node.TEXT_NODE){const e=i.tagName;if("TEXTAREA"===e)return;"STYLE"===e&&this.addedSet.has(i)&&(s=!0)}const a=bt(i)?this.mirror.getId(gn(o)):this.mirror.getId(i),c=r(o);if(-1===a||-1===c)return n.addNode(o);const l=Gt(o,{doc:this.doc,mirror:this.mirror,blockClass:this.blockClass,blockSelector:this.blockSelector,maskTextClass:this.maskTextClass,maskTextSelector:this.maskTextSelector,skipChild:!0,newlyAddedElement:!0,inlineStylesheet:this.inlineStylesheet,maskInputOptions:this.maskInputOptions,maskTextFn:this.maskTextFn,maskInputFn:this.maskInputFn,slimDOMOptions:this.slimDOMOptions,dataURLOptions:this.dataURLOptions,recordCanvas:this.recordCanvas,inlineImages:this.inlineImages,onSerialize:e=>{pn(e,this.mirror)&&this.iframeManager.addIframe(e),hn(e,this.mirror)&&this.stylesheetManager.trackLinkElement(e),fn(o)&&this.shadowDomManager.addShadowRoot(gt(o),this.doc)},onIframeLoad:(e,t)=>{this.iframeManager.attachIframe(e,t),this.shadowDomManager.observeAttachShadow(e)},onStylesheetLoad:(e,t)=>{this.stylesheetManager.attachLinkElement(e,t)},cssCaptured:s});l&&(e.push({parentId:a,nextId:c,node:l}),t.add(l.id))};for(;this.mapRemoves.length;)this.mirror.removeNodeFromMap(this.mapRemoves.shift());for(const a of this.movedSet)Cn(this.removesSubTreeCache,a,this.mirror)&&!this.movedSet.has(ut(a))||o(a);for(const a of this.addedSet)En(this.droppedSet,a)||Cn(this.removesSubTreeCache,a,this.mirror)?En(this.movedSet,a)?o(a):this.droppedSet.add(a):o(a);let i=null;for(;n.length;){let e=null;if(i){const t=this.mirror.getId(ut(i.value)),n=r(i.value);-1!==t&&-1!==n&&(e=i)}if(!e){let t=n.tail;for(;t;){const n=t;if(t=t.previous,n){const t=this.mirror.getId(ut(n.value));if(-1===r(n.value))continue;if(-1!==t){e=n;break}{const t=n.value,r=ut(t);if(r&&r.nodeType===Node.DOCUMENT_FRAGMENT_NODE){const t=mt(r);if(-1!==this.mirror.getId(t)){e=n;break}}}}}}if(!e){for(;n.head;)n.removeNode(n.head.value);break}i=e.previous,n.removeNode(e.value),o(e.value)}const s={texts:this.texts.map(e=>{const t=e.node,n=ut(t);return n&&"TEXTAREA"===n.tagName&&this.genTextAreaValueMutation(n),{id:this.mirror.getId(t),value:e.value}}).filter(e=>!t.has(e.id)).filter(e=>this.mirror.has(e.id)),attributes:this.attributes.map(e=>{const{attributes:t}=e;if("string"==typeof t.style){const n=JSON.stringify(e.styleDiff),r=JSON.stringify(e._unchangedStyles);n.length<t.style.length&&(n+r).split("var(").length===t.style.split("var(").length&&(t.style=e.styleDiff)}return{id:this.mirror.getId(e.node),attributes:t}}).filter(e=>!t.has(e.id)).filter(e=>this.mirror.has(e.id)),removes:this.removes,adds:e};(s.texts.length||s.attributes.length||s.removes.length||s.adds.length)&&(this.texts=[],this.attributes=[],this.attributeMap=/* @__PURE__ */new WeakMap,this.removes=[],this.addedSet=/* @__PURE__ */new Set,this.movedSet=/* @__PURE__ */new Set,this.droppedSet=/* @__PURE__ */new Set,this.removesSubTreeCache=/* @__PURE__ */new Set,this.movedMap={},this.mutationCb(s))}),He(this,"genTextAreaValueMutation",e=>{let t=this.attributeMap.get(e);t||(t={node:e,attributes:{},styleDiff:{},_unchangedStyles:{}},this.attributes.push(t),this.attributeMap.set(e,t));const n=Array.from(lt(e),e=>pt(e)||"").join("");t.attributes.value=kt({element:e,maskInputOptions:this.maskInputOptions,tagName:e.tagName,type:It(e),value:n,maskInputFn:this.maskInputFn})}),He(this,"processMutation",e=>{if(!ln(e.target,this.mirror,this.slimDOMOptions))switch(e.type){case"characterData":{const t=pt(e.target);cn(e.target,this.blockClass,this.blockSelector,!1)||t===e.oldValue||this.texts.push({value:Yt(e.target,this.maskTextClass,this.maskTextSelector,!0)&&t?this.maskTextFn?this.maskTextFn(t,an(e.target)):t.replace(/[\S]/g,"*"):t,node:e.target});break}case"attributes":{const n=e.target,r=Ct(n.tagName);let o=e.attributeName,i=e.target.getAttribute(o);if("value"===o){const e=It(n);i=kt({element:n,maskInputOptions:this.maskInputOptions,tagName:n.tagName,type:e,value:i,maskInputFn:this.maskInputFn})}if(cn(e.target,this.blockClass,this.blockSelector,!1)||i===e.oldValue)return;let s=this.attributeMap.get(e.target);if("iframe"===r&&"src"===o&&!this.keepIframeSrcFn(i)){if(n.contentDocument)return;o="rr_src"}if(s||(s={node:e.target,attributes:{},styleDiff:{},_unchangedStyles:{}},this.attributes.push(s),this.attributeMap.set(e.target,s)),"type"===o&&"input"===r&&"password"===(e.oldValue||"").toLowerCase()&&n.setAttribute("data-rr-is-password","true"),!qt(r,o))if(s.attributes[o]=jt(this.doc,r,Ct(o),i),"style"===o){if(!this.unattachedDoc)try{this.unattachedDoc=document.implementation.createHTMLDocument()}catch(t){this.unattachedDoc=this.doc}const r=this.unattachedDoc.createElement("span");e.oldValue&&r.setAttribute("style",e.oldValue);for(const e of Array.from(n.style)){const t=n.style.getPropertyValue(e),o=n.style.getPropertyPriority(e);t!==r.style.getPropertyValue(e)||o!==r.style.getPropertyPriority(e)?s.styleDiff[e]=""===o?t:[t,o]:s._unchangedStyles[e]=[t,o]}for(const e of Array.from(r.style))""===n.style.getPropertyValue(e)&&(s.styleDiff[e]=!1)}else"open"===o&&"DIALOG"===n.tagName&&(n.matches("dialog:modal")?s.attributes.rr_open_mode="modal":s.attributes.rr_open_mode="non-modal");break}case"childList":if(cn(e.target,this.blockClass,this.blockSelector,!0))return;if("TEXTAREA"===e.target.tagName)return void this.genTextAreaValueMutation(e.target);e.addedNodes.forEach(t=>this.genAdds(t,e.target)),e.removedNodes.forEach(t=>{const n=this.mirror.getId(t),r=bt(e.target)?this.mirror.getId(mt(e.target)):this.mirror.getId(e.target);cn(e.target,this.blockClass,this.blockSelector,!1)||ln(t,this.mirror,this.slimDOMOptions)||!function(e,t){return-1!==t.getId(e)}(t,this.mirror)||(this.addedSet.has(t)?(kn(this.addedSet,t),this.droppedSet.add(t)):this.addedSet.has(e.target)&&-1===n||un(e.target,this.mirror)||(this.movedSet.has(t)&&this.movedMap[xn(n,r)]?kn(this.movedSet,t):(this.removes.push({parentId:r,id:n,isShadow:!(!bt(e.target)||!vt(e.target))||void 0}),function(e,t){const n=[e];for(;n.length;){const e=n.pop();t.has(e)||(t.add(e),lt(e).forEach(e=>n.push(e)))}}(t,this.removesSubTreeCache))),this.mapRemoves.push(t))})}}),He(this,"genAdds",(e,t)=>{if(!this.processedNodeManager.inOtherBuffer(e,this)&&!this.addedSet.has(e)&&!this.movedSet.has(e)){if(this.mirror.hasNode(e)){if(ln(e,this.mirror,this.slimDOMOptions))return;this.movedSet.add(e);let n=null;t&&this.mirror.hasNode(t)&&(n=this.mirror.getId(t)),n&&-1!==n&&(this.movedMap[xn(this.mirror.getId(e),n)]=!0)}else this.addedSet.add(e),this.droppedSet.delete(e);cn(e,this.blockClass,this.blockSelector,!1)||(lt(e).forEach(e=>this.genAdds(e)),fn(e)&<(gt(e)).forEach(t=>{this.processedNodeManager.add(t,this),this.genAdds(t,e)}))}})}init(e){["mutationCb","blockClass","blockSelector","maskTextClass","maskTextSelector","inlineStylesheet","maskInputOptions","maskTextFn","maskInputFn","keepIframeSrcFn","recordCanvas","inlineImages","slimDOMOptions","dataURLOptions","doc","mirror","iframeManager","stylesheetManager","shadowDomManager","canvasManager","processedNodeManager"].forEach(t=>{this[t]=e[t]})}freeze(){this.frozen=!0,this.canvasManager.freeze()}unfreeze(){this.frozen=!1,this.canvasManager.unfreeze(),this.emit()}isFrozen(){return this.frozen}lock(){this.locked=!0,this.canvasManager.lock()}unlock(){this.locked=!1,this.canvasManager.unlock(),this.emit()}reset(){this.shadowDomManager.reset(),this.canvasManager.reset()}};function kn(e,t){e.delete(t),lt(t).forEach(t=>kn(e,t))}function Cn(e,t,n){return 0!==e.size&&function(e,t){const n=ut(t);return!!n&&e.has(n)}(e,t)}function En(e,t){return 0!==e.size&&In(e,t)}function In(e,t){const n=ut(t);return!!n&&(!!e.has(n)||In(e,n))}var Mn=e=>vn?(...t)=>{try{return e(...t)}catch(n){if(vn&&!0===vn(n))return;throw n}}:e,Tn=[];function Rn(e){try{if("composedPath"in e){const t=e.composedPath();if(t.length)return t[0]}else if("path"in e&&e.path.length)return e.path[0]}catch{}return e&&e.target}function On(e,t){const n=new Sn;Tn.push(n),n.init(e);const[r,o]=[tt("MutationObserver").constructor,et.MutationObserver??(()=>{})],i=new r(Mn(n.processMutations.bind(n)));return i.observe(t,{attributes:!0,attributeOldValue:!0,characterData:!0,characterDataOldValue:!0,childList:!0,subtree:!0}),[i,o]}function An({scrollCb:e,doc:t,mirror:n,blockClass:r,blockSelector:o,sampling:i}){return Zt("scroll",Mn(tn(Mn(i=>{const s=Rn(i);if(!s||cn(s,r,o,!0))return;const a=n.getId(s);if(s===t&&t.defaultView){const n=rn(t.defaultView);e({id:a,x:n.left,y:n.top})}else e({id:a,x:s.scrollLeft,y:s.scrollTop})}),i.scroll||100)),t)}var _n=["INPUT","TEXTAREA","SELECT"],Dn=/* @__PURE__ */new WeakMap;function Pn(e){return function e(t,n){if(zn("CSSGroupingRule")&&t.parentRule instanceof CSSGroupingRule||zn("CSSMediaRule")&&t.parentRule instanceof CSSMediaRule||zn("CSSSupportsRule")&&t.parentRule instanceof CSSSupportsRule||zn("CSSConditionRule")&&t.parentRule instanceof CSSConditionRule){const r=Array.from(t.parentRule.cssRules).indexOf(t);return n.unshift(r),e(t.parentRule,n)}if(t.parentStyleSheet){const e=Array.from(t.parentStyleSheet.cssRules).indexOf(t);n.unshift(e)}return n}(e,[])}function Nn(e,t,n){let r,o;return e?(e.ownerNode?r=t.getId(e.ownerNode):o=n.getId(e),{styleId:o,id:r}):{}}function Ln({mirror:e,stylesheetManager:t},n){var r,o,i;let s=null;s="#document"===n.nodeName?e.getId(n):e.getId(mt(n));const a="#document"===n.nodeName?null==(r=n.defaultView)?void 0:r.Document:null==(i=null==(o=n.ownerDocument)?void 0:o.defaultView)?void 0:i.ShadowRoot,c=(null==a?void 0:a.prototype)?Object.getOwnPropertyDescriptor(null==a?void 0:a.prototype,"adoptedStyleSheets"):void 0;return null!==s&&-1!==s&&a&&c?(Object.defineProperty(n,"adoptedStyleSheets",{configurable:c.configurable,enumerable:c.enumerable,get(){var e;return null==(e=c.get)?void 0:e.call(this)},set(e){var n;const r=null==(n=c.set)?void 0:n.call(this,e);if(null!==s&&-1!==s)try{t.adoptStyleSheets(e,s)}catch(o){}return r}}),Mn(()=>{Object.defineProperty(n,"adoptedStyleSheets",{configurable:c.configurable,enumerable:c.enumerable,get:c.get,set:c.set})})):()=>{}}function Fn(e,t={}){const n=e.doc.defaultView;if(!n)return()=>{};let r;!function(e,t){const{mutationCb:n,mousemoveCb:r,mouseInteractionCb:o,scrollCb:i,viewportResizeCb:s,inputCb:a,mediaInteractionCb:c,styleSheetRuleCb:l,styleDeclarationCb:u,canvasMutationCb:d,fontCb:p,selectionCb:h,customElementCb:f}=e;e.mutationCb=(...e)=>{t.mutation&&t.mutation(...e),n(...e)},e.mousemoveCb=(...e)=>{t.mousemove&&t.mousemove(...e),r(...e)},e.mouseInteractionCb=(...e)=>{t.mouseInteraction&&t.mouseInteraction(...e),o(...e)},e.scrollCb=(...e)=>{t.scroll&&t.scroll(...e),i(...e)},e.viewportResizeCb=(...e)=>{t.viewportResize&&t.viewportResize(...e),s(...e)},e.inputCb=(...e)=>{t.input&&t.input(...e),a(...e)},e.mediaInteractionCb=(...e)=>{t.mediaInteaction&&t.mediaInteaction(...e),c(...e)},e.styleSheetRuleCb=(...e)=>{t.styleSheetRule&&t.styleSheetRule(...e),l(...e)},e.styleDeclarationCb=(...e)=>{t.styleDeclaration&&t.styleDeclaration(...e),u(...e)},e.canvasMutationCb=(...e)=>{t.canvasMutation&&t.canvasMutation(...e),d(...e)},e.fontCb=(...e)=>{t.font&&t.font(...e),p(...e)},e.selectionCb=(...e)=>{t.selection&&t.selection(...e),h(...e)},e.customElementCb=(...e)=>{t.customElement&&t.customElement(...e),f(...e)}}(e,t);let o=()=>{};e.recordDOM&&([r,o]=On(e,e.doc));const i=function({mousemoveCb:e,sampling:t,doc:n,mirror:r}){if(!1===t.mousemove)return()=>{};const o="number"==typeof t.mousemove?t.mousemove:50,i="number"==typeof t.mousemoveCallback?t.mousemoveCallback:500;let s,a=[];const c=tn(Mn(t=>{const n=Date.now()-s;e(a.map(e=>(e.timeOffset-=n,e)),t),a=[],s=null}),i),l=Mn(tn(Mn(e=>{const t=Rn(e),{clientX:n,clientY:o}=dn(e)?e.changedTouches[0]:e;s||(s=st()),a.push({x:n,y:o,id:r.getId(t),timeOffset:st()-s}),c("undefined"!=typeof DragEvent&&e instanceof DragEvent?qe.Drag:e instanceof MouseEvent?qe.MouseMove:qe.TouchMove)}),o,{trailing:!1})),u=[Zt("mousemove",l,n),Zt("touchmove",l,n),Zt("drag",l,n)];return Mn(()=>{u.forEach(e=>e())})}(e),s=function({mouseInteractionCb:e,doc:t,mirror:n,blockClass:r,blockSelector:o,sampling:i}){if(!1===i.mouseInteraction)return()=>{};const s=!0===i.mouseInteraction||void 0===i.mouseInteraction?{}:i.mouseInteraction,a=[];let c=null;return Object.keys(Ve).filter(e=>Number.isNaN(Number(e))&&!e.endsWith("_Departed")&&!1!==s[e]).forEach(i=>{let s=Ct(i);const l=(t=>i=>{const s=Rn(i);if(cn(s,r,o,!0))return;let a=null,l=t;if("pointerType"in i){switch(i.pointerType){case"mouse":a=Ye.Mouse;break;case"touch":a=Ye.Touch;break;case"pen":a=Ye.Pen}a===Ye.Touch?Ve[t]===Ve.MouseDown?l="TouchStart":Ve[t]===Ve.MouseUp&&(l="TouchEnd"):Ye.Pen}else dn(i)&&(a=Ye.Touch);null!==a?(c=a,(l.startsWith("Touch")&&a===Ye.Touch||l.startsWith("Mouse")&&a===Ye.Mouse)&&(a=null)):Ve[t]===Ve.Click&&(a=c,c=null);const u=dn(i)?i.changedTouches[0]:i;if(!u)return;const d=n.getId(s),{clientX:p,clientY:h}=u;Mn(e)({type:Ve[l],id:d,x:p,y:h,...null!==a&&{pointerType:a}})})(i);if(window.PointerEvent)switch(Ve[i]){case Ve.MouseDown:case Ve.MouseUp:s=s.replace("mouse","pointer");break;case Ve.TouchStart:case Ve.TouchEnd:return}a.push(Zt(s,l,t))}),Mn(()=>{a.forEach(e=>e())})}(e),a=An(e),c=function({viewportResizeCb:e},{win:t}){let n=-1,r=-1;return Zt("resize",Mn(tn(Mn(()=>{const t=on(),o=sn();n===t&&r===o||(e({width:Number(o),height:Number(t)}),n=t,r=o)}),200)),t)}(e,{win:n}),l=function({inputCb:e,doc:t,mirror:n,blockClass:r,blockSelector:o,ignoreClass:i,ignoreSelector:s,maskInputOptions:a,maskInputFn:c,sampling:l,userTriggeredOnInput:u}){function d(e){let n=Rn(e);const l=e.isTrusted,d=n&&n.tagName;if(n&&"OPTION"===d&&(n=dt(n)),!n||!d||_n.indexOf(d)<0||cn(n,r,o,!0))return;if(n.classList.contains(i)||s&&n.matches(s))return;let h=n.value,f=!1;const m=It(n)||"";"radio"===m||"checkbox"===m?f=n.checked:(a[d.toLowerCase()]||a[m])&&(h=kt({element:n,maskInputOptions:a,tagName:d,type:m,value:h,maskInputFn:c})),p(n,u?{text:h,isChecked:f,userTriggered:l}:{text:h,isChecked:f});const g=n.name;"radio"===m&&g&&f&&t.querySelectorAll(`input[type="radio"][name="${g}"]`).forEach(e=>{if(e!==n){const t=e.value;p(e,u?{text:t,isChecked:!f,userTriggered:!1}:{text:t,isChecked:!f})}})}function p(t,r){const o=Dn.get(t);if(!o||o.text!==r.text||o.isChecked!==r.isChecked){Dn.set(t,r);const o=n.getId(t);Mn(e)({...r,id:o})}}const h=("last"===l.input?["change"]:["input","change"]).map(e=>Zt(e,Mn(d),t)),f=t.defaultView;if(!f)return()=>{h.forEach(e=>e())};const m=f.Object.getOwnPropertyDescriptor(f.HTMLInputElement.prototype,"value"),g=[[f.HTMLInputElement.prototype,"value"],[f.HTMLInputElement.prototype,"checked"],[f.HTMLSelectElement.prototype,"value"],[f.HTMLTextAreaElement.prototype,"value"],[f.HTMLSelectElement.prototype,"selectedIndex"],[f.HTMLOptionElement.prototype,"selected"]];return m&&m.set&&h.push(...g.map(e=>nn(e[0],e[1],{set(){Mn(d)({target:this,isTrusted:!1})}},!1,f))),Mn(()=>{h.forEach(e=>e())})}(e),u=function({mediaInteractionCb:e,blockClass:t,blockSelector:n,mirror:r,sampling:o,doc:i}){const s=Mn(i=>tn(Mn(o=>{const s=Rn(o);if(!s||cn(s,t,n,!0))return;const{currentTime:a,volume:c,muted:l,playbackRate:u,loop:d}=s;e({type:i,id:r.getId(s),currentTime:a,volume:c,muted:l,playbackRate:u,loop:d})}),o.media||500)),a=[Zt("play",s(Xe.Play),i),Zt("pause",s(Xe.Pause),i),Zt("seeked",s(Xe.Seeked),i),Zt("volumechange",s(Xe.VolumeChange),i),Zt("ratechange",s(Xe.RateChange),i)];return Mn(()=>{a.forEach(e=>e())})}(e);let d=()=>{},p=()=>{},h=()=>{},f=()=>{};e.recordDOM&&(d=function({styleSheetRuleCb:e,mirror:t,stylesheetManager:n},{win:r}){if(!r.CSSStyleSheet||!r.CSSStyleSheet.prototype)return()=>{};const o=r.CSSStyleSheet.prototype.insertRule;r.CSSStyleSheet.prototype.insertRule=new Proxy(o,{apply:Mn((r,o,i)=>{const[s,a]=i,{id:c,styleId:l}=Nn(o,t,n.styleMirror);return(c&&-1!==c||l&&-1!==l)&&e({id:c,styleId:l,adds:[{rule:s,index:a}]}),r.apply(o,i)})}),r.CSSStyleSheet.prototype.addRule=function(e,t,n=this.cssRules.length){const o=`${e} { ${t} }`;return r.CSSStyleSheet.prototype.insertRule.apply(this,[o,n])};const i=r.CSSStyleSheet.prototype.deleteRule;let s,a;r.CSSStyleSheet.prototype.deleteRule=new Proxy(i,{apply:Mn((r,o,i)=>{const[s]=i,{id:a,styleId:c}=Nn(o,t,n.styleMirror);return(a&&-1!==a||c&&-1!==c)&&e({id:a,styleId:c,removes:[{index:s}]}),r.apply(o,i)})}),r.CSSStyleSheet.prototype.removeRule=function(e){return r.CSSStyleSheet.prototype.deleteRule.apply(this,[e])},r.CSSStyleSheet.prototype.replace&&(s=r.CSSStyleSheet.prototype.replace,r.CSSStyleSheet.prototype.replace=new Proxy(s,{apply:Mn((r,o,i)=>{const[s]=i,{id:a,styleId:c}=Nn(o,t,n.styleMirror);return(a&&-1!==a||c&&-1!==c)&&e({id:a,styleId:c,replace:s}),r.apply(o,i)})})),r.CSSStyleSheet.prototype.replaceSync&&(a=r.CSSStyleSheet.prototype.replaceSync,r.CSSStyleSheet.prototype.replaceSync=new Proxy(a,{apply:Mn((r,o,i)=>{const[s]=i,{id:a,styleId:c}=Nn(o,t,n.styleMirror);return(a&&-1!==a||c&&-1!==c)&&e({id:a,styleId:c,replaceSync:s}),r.apply(o,i)})}));const c={};$n("CSSGroupingRule")?c.CSSGroupingRule=r.CSSGroupingRule:($n("CSSMediaRule")&&(c.CSSMediaRule=r.CSSMediaRule),$n("CSSConditionRule")&&(c.CSSConditionRule=r.CSSConditionRule),$n("CSSSupportsRule")&&(c.CSSSupportsRule=r.CSSSupportsRule));const l={};return Object.entries(c).forEach(([r,o])=>{l[r]={insertRule:o.prototype.insertRule,deleteRule:o.prototype.deleteRule},o.prototype.insertRule=new Proxy(l[r].insertRule,{apply:Mn((r,o,i)=>{const[s,a]=i,{id:c,styleId:l}=Nn(o.parentStyleSheet,t,n.styleMirror);return(c&&-1!==c||l&&-1!==l)&&e({id:c,styleId:l,adds:[{rule:s,index:[...Pn(o),a||0]}]}),r.apply(o,i)})}),o.prototype.deleteRule=new Proxy(l[r].deleteRule,{apply:Mn((r,o,i)=>{const[s]=i,{id:a,styleId:c}=Nn(o.parentStyleSheet,t,n.styleMirror);return(a&&-1!==a||c&&-1!==c)&&e({id:a,styleId:c,removes:[{index:[...Pn(o),s]}]}),r.apply(o,i)})})}),Mn(()=>{r.CSSStyleSheet.prototype.insertRule=o,r.CSSStyleSheet.prototype.deleteRule=i,s&&(r.CSSStyleSheet.prototype.replace=s),a&&(r.CSSStyleSheet.prototype.replaceSync=a),Object.entries(c).forEach(([e,t])=>{t.prototype.insertRule=l[e].insertRule,t.prototype.deleteRule=l[e].deleteRule})})}(e,{win:n}),p=Ln(e,e.doc),h=function({styleDeclarationCb:e,mirror:t,ignoreCSSAttributes:n,stylesheetManager:r},{win:o}){const i=o.CSSStyleDeclaration.prototype.setProperty;o.CSSStyleDeclaration.prototype.setProperty=new Proxy(i,{apply:Mn((o,s,a)=>{var c;const[l,u,d]=a;if(n.has(l))return i.apply(s,[l,u,d]);const{id:p,styleId:h}=Nn(null==(c=s.parentRule)?void 0:c.parentStyleSheet,t,r.styleMirror);return(p&&-1!==p||h&&-1!==h)&&e({id:p,styleId:h,set:{property:l,value:u,priority:d},index:Pn(s.parentRule)}),o.apply(s,a)})});const s=o.CSSStyleDeclaration.prototype.removeProperty;return o.CSSStyleDeclaration.prototype.removeProperty=new Proxy(s,{apply:Mn((o,i,a)=>{var c;const[l]=a;if(n.has(l))return s.apply(i,[l]);const{id:u,styleId:d}=Nn(null==(c=i.parentRule)?void 0:c.parentStyleSheet,t,r.styleMirror);return(u&&-1!==u||d&&-1!==d)&&e({id:u,styleId:d,remove:{property:l},index:Pn(i.parentRule)}),o.apply(i,a)})}),Mn(()=>{o.CSSStyleDeclaration.prototype.setProperty=i,o.CSSStyleDeclaration.prototype.removeProperty=s})}(e,{win:n}),e.collectFonts&&(f=function({fontCb:e,doc:t}){const n=t.defaultView;if(!n)return()=>{};const r=[],o=/* @__PURE__ */new WeakMap,i=n.FontFace;n.FontFace=function(e,t,n){const r=new i(e,t,n);return o.set(r,{family:e,buffer:"string"!=typeof t,descriptors:n,fontSource:"string"==typeof t?t:JSON.stringify(Array.from(new Uint8Array(t)))}),r};const s=at(t.fonts,"add",function(t){return function(n){return setTimeout(Mn(()=>{const t=o.get(n);t&&(e(t),o.delete(n))}),0),t.apply(this,[n])}});return r.push(()=>{n.FontFace=i}),r.push(s),Mn(()=>{r.forEach(e=>e())})}(e)));const m=function(e){const{doc:t,mirror:n,blockClass:r,blockSelector:o,selectionCb:i}=e;let s=!0;const a=Mn(()=>{const e=t.getSelection();if(!e||s&&(null==e?void 0:e.isCollapsed))return;s=e.isCollapsed||!1;const a=[],c=e.rangeCount||0;for(let t=0;t<c;t++){const{startContainer:i,startOffset:s,endContainer:c,endOffset:l}=e.getRangeAt(t);cn(i,r,o,!0)||cn(c,r,o,!0)||a.push({start:n.getId(i),startOffset:s,end:n.getId(c),endOffset:l})}i({ranges:a})});return a(),Zt("selectionchange",a)}(e),g=function({doc:e,customElementCb:t}){const n=e.defaultView;return n&&n.customElements?at(n.customElements,"define",function(e){return function(n,r,o){try{t({define:{name:n}})}catch(i){console.warn(`Custom element callback failed for ${n}`)}return e.apply(this,[n,r,o])}}):()=>{}}(e),y=[];for(const b of e.plugins)y.push(b.observer(b.callback,n,b.options));return Mn(()=>{Tn.forEach(e=>e.reset()),r?.disconnect(),o(),i(),s(),a(),c(),l(),u(),d(),p(),h(),f(),m(),g(),y.forEach(e=>e())})}function zn(e){return void 0!==window[e]}function $n(e){return Boolean(void 0!==window[e]&&window[e].prototype&&"insertRule"in window[e].prototype&&"deleteRule"in window[e].prototype)}for(var Bn=class{constructor(e){He(this,"iframeIdToRemoteIdMap",/* @__PURE__ */new WeakMap),He(this,"iframeRemoteIdToIdMap",/* @__PURE__ */new WeakMap),this.generateIdFn=e}getId(e,t,n,r){const o=n||this.getIdToRemoteIdMap(e),i=r||this.getRemoteIdToIdMap(e);let s=o.get(t);return s||(s=this.generateIdFn(),o.set(t,s),i.set(s,t)),s}getIds(e,t){const n=this.getIdToRemoteIdMap(e),r=this.getRemoteIdToIdMap(e);return t.map(t=>this.getId(e,t,n,r))}getRemoteId(e,t,n){const r=n||this.getRemoteIdToIdMap(e);return"number"!=typeof t?t:r.get(t)||-1}getRemoteIds(e,t){const n=this.getRemoteIdToIdMap(e);return t.map(t=>this.getRemoteId(e,t,n))}reset(e){if(!e)return this.iframeIdToRemoteIdMap=/* @__PURE__ */new WeakMap,void(this.iframeRemoteIdToIdMap=/* @__PURE__ */new WeakMap);this.iframeIdToRemoteIdMap.delete(e),this.iframeRemoteIdToIdMap.delete(e)}getIdToRemoteIdMap(e){let t=this.iframeIdToRemoteIdMap.get(e);return t||(t=/* @__PURE__ */new Map,this.iframeIdToRemoteIdMap.set(e,t)),t}getRemoteIdToIdMap(e){let t=this.iframeRemoteIdToIdMap.get(e);return t||(t=/* @__PURE__ */new Map,this.iframeRemoteIdToIdMap.set(e,t)),t}},Wn=class{constructor(e){He(this,"iframes",/* @__PURE__ */new WeakMap),He(this,"crossOriginIframeMap",/* @__PURE__ */new WeakMap),He(this,"crossOriginIframeMirror",new Bn(zt)),He(this,"crossOriginIframeStyleMirror"),He(this,"crossOriginIframeRootIdMap",/* @__PURE__ */new WeakMap),He(this,"mirror"),He(this,"mutationCb"),He(this,"wrappedEmit"),He(this,"loadListener"),He(this,"stylesheetManager"),He(this,"recordCrossOriginIframes"),this.mutationCb=e.mutationCb,this.wrappedEmit=e.wrappedEmit,this.stylesheetManager=e.stylesheetManager,this.recordCrossOriginIframes=e.recordCrossOriginIframes,this.crossOriginIframeStyleMirror=new Bn(this.stylesheetManager.styleMirror.generateId.bind(this.stylesheetManager.styleMirror)),this.mirror=e.mirror,this.recordCrossOriginIframes&&window.addEventListener("message",this.handleMessage.bind(this))}addIframe(e){this.iframes.set(e,!0),e.contentWindow&&this.crossOriginIframeMap.set(e.contentWindow,e)}addLoadListener(e){this.loadListener=e}attachIframe(e,t){var n,r;this.mutationCb({adds:[{parentId:this.mirror.getId(e),nextId:null,node:t}],removes:[],texts:[],attributes:[],isAttachIframe:!0}),this.recordCrossOriginIframes&&(null==(n=e.contentWindow)||n.addEventListener("message",this.handleMessage.bind(this))),null==(r=this.loadListener)||r.call(this,e),e.contentDocument&&e.contentDocument.adoptedStyleSheets&&e.contentDocument.adoptedStyleSheets.length>0&&this.stylesheetManager.adoptStyleSheets(e.contentDocument.adoptedStyleSheets,this.mirror.getId(e.contentDocument))}handleMessage(e){const t=e;if("rrweb"!==t.data.type||t.origin!==t.data.origin)return;if(!e.source)return;const n=this.crossOriginIframeMap.get(e.source);if(!n)return;const r=this.transformCrossOriginEvent(n,t.data.event);r&&this.wrappedEmit(r,t.data.isCheckout)}transformCrossOriginEvent(e,t){var n;switch(t.type){case je.FullSnapshot:{this.crossOriginIframeMirror.reset(e),this.crossOriginIframeStyleMirror.reset(e),this.replaceIdOnNode(t.data.node,e);const n=t.data.node.id;return this.crossOriginIframeRootIdMap.set(e,n),this.patchRootIdOnNode(t.data.node,n),{timestamp:t.timestamp,type:je.IncrementalSnapshot,data:{source:qe.Mutation,adds:[{parentId:this.mirror.getId(e),nextId:null,node:t.data.node}],removes:[],texts:[],attributes:[],isAttachIframe:!0}}}case je.Meta:case je.Load:case je.DomContentLoaded:return!1;case je.Plugin:return t;case je.Custom:return this.replaceIds(t.data.payload,e,["id","parentId","previousId","nextId"]),t;case je.IncrementalSnapshot:switch(t.data.source){case qe.Mutation:return t.data.adds.forEach(t=>{this.replaceIds(t,e,["parentId","nextId","previousId"]),this.replaceIdOnNode(t.node,e);const n=this.crossOriginIframeRootIdMap.get(e);n&&this.patchRootIdOnNode(t.node,n)}),t.data.removes.forEach(t=>{this.replaceIds(t,e,["parentId","id"])}),t.data.attributes.forEach(t=>{this.replaceIds(t,e,["id"])}),t.data.texts.forEach(t=>{this.replaceIds(t,e,["id"])}),t;case qe.Drag:case qe.TouchMove:case qe.MouseMove:return t.data.positions.forEach(t=>{this.replaceIds(t,e,["id"])}),t;case qe.ViewportResize:return!1;case qe.MediaInteraction:case qe.MouseInteraction:case qe.Scroll:case qe.CanvasMutation:case qe.Input:return this.replaceIds(t.data,e,["id"]),t;case qe.StyleSheetRule:case qe.StyleDeclaration:return this.replaceIds(t.data,e,["id"]),this.replaceStyleIds(t.data,e,["styleId"]),t;case qe.Font:return t;case qe.Selection:return t.data.ranges.forEach(t=>{this.replaceIds(t,e,["start","end"])}),t;case qe.AdoptedStyleSheet:return this.replaceIds(t.data,e,["id"]),this.replaceStyleIds(t.data,e,["styleIds"]),null==(n=t.data.styles)||n.forEach(t=>{this.replaceStyleIds(t,e,["styleId"])}),t}}return!1}replace(e,t,n,r){for(const o of r)(Array.isArray(t[o])||"number"==typeof t[o])&&(Array.isArray(t[o])?t[o]=e.getIds(n,t[o]):t[o]=e.getId(n,t[o]));return t}replaceIds(e,t,n){return this.replace(this.crossOriginIframeMirror,e,t,n)}replaceStyleIds(e,t,n){return this.replace(this.crossOriginIframeStyleMirror,e,t,n)}replaceIdOnNode(e,t){this.replaceIds(e,t,["id","rootId"]),"childNodes"in e&&e.childNodes.forEach(e=>{this.replaceIdOnNode(e,t)})}patchRootIdOnNode(e,t){e.type===Ge.Document||e.rootId||(e.rootId=t),"childNodes"in e&&e.childNodes.forEach(e=>{this.patchRootIdOnNode(e,t)})}},Un=class{constructor(e){He(this,"shadowDoms",/* @__PURE__ */new WeakSet),He(this,"mutationCb"),He(this,"scrollCb"),He(this,"bypassOptions"),He(this,"mirror"),He(this,"restoreHandlers",[]),this.mutationCb=e.mutationCb,this.scrollCb=e.scrollCb,this.bypassOptions=e.bypassOptions,this.mirror=e.mirror,this.init()}init(){this.reset(),this.patchAttachShadow(Element,document)}addShadowRoot(e,t){if(!vt(e))return;if(this.shadowDoms.has(e))return;this.shadowDoms.add(e);const[n]=On({...this.bypassOptions,doc:t,mutationCb:this.mutationCb,mirror:this.mirror,shadowDomManager:this},e);this.restoreHandlers.push(()=>n.disconnect()),this.restoreHandlers.push(An({...this.bypassOptions,scrollCb:this.scrollCb,doc:e,mirror:this.mirror})),setTimeout(()=>{e.adoptedStyleSheets&&e.adoptedStyleSheets.length>0&&this.bypassOptions.stylesheetManager.adoptStyleSheets(e.adoptedStyleSheets,this.mirror.getId(mt(e))),this.restoreHandlers.push(Ln({mirror:this.mirror,stylesheetManager:this.bypassOptions.stylesheetManager},e))},0)}observeAttachShadow(e){e.contentWindow&&e.contentDocument&&this.patchAttachShadow(e.contentWindow.Element,e.contentDocument)}patchAttachShadow(e,t){const n=this;this.restoreHandlers.push(at(e.prototype,"attachShadow",function(e){return function(r){const o=e.call(this,r),i=gt(this);return i&&yn(this)&&n.addShadowRoot(i,t),o}}))}reset(){this.restoreHandlers.forEach(e=>{try{e()}catch(t){}}),this.restoreHandlers=[],this.shadowDoms=/* @__PURE__ */new WeakSet}},Hn="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/",jn="undefined"==typeof Uint8Array?[]:/* @__PURE__ */new Uint8Array(256),qn=0;qn<64;qn++)jn[Hn.charCodeAt(qn)]=qn;var Vn=function(e){var t,n=new Uint8Array(e),r=n.length,o="";for(t=0;t<r;t+=3)o+=Hn[n[t]>>2],o+=Hn[(3&n[t])<<4|n[t+1]>>4],o+=Hn[(15&n[t+1])<<2|n[t+2]>>6],o+=Hn[63&n[t+2]];return r%3==2?o=o.substring(0,o.length-1)+"=":r%3==1&&(o=o.substring(0,o.length-2)+"=="),o},Yn=/* @__PURE__ */new Map,Kn=(e,t,n)=>{if(!e||!Jn(e,t)&&"object"!=typeof e)return;const r=function(e,t){let n=Yn.get(e);return n||(n=/* @__PURE__ */new Map,Yn.set(e,n)),n.has(t)||n.set(t,[]),n.get(t)}(n,e.constructor.name);let o=r.indexOf(e);return-1===o&&(o=r.length,r.push(e)),o};function Xn(e,t,n){if(e instanceof Array)return e.map(e=>Xn(e,t,n));if(null===e)return e;if(e instanceof Float32Array||e instanceof Float64Array||e instanceof Int32Array||e instanceof Uint32Array||e instanceof Uint8Array||e instanceof Uint16Array||e instanceof Int16Array||e instanceof Int8Array||e instanceof Uint8ClampedArray)return{rr_type:e.constructor.name,args:[Object.values(e)]};if(e instanceof ArrayBuffer)return{rr_type:e.constructor.name,base64:Vn(e)};if(e instanceof DataView)return{rr_type:e.constructor.name,args:[Xn(e.buffer,t,n),e.byteOffset,e.byteLength]};if(e instanceof HTMLImageElement){const t=e.constructor.name,{src:n}=e;return{rr_type:t,src:n}}return e instanceof HTMLCanvasElement?{rr_type:"HTMLImageElement",src:e.toDataURL()}:e instanceof ImageData?{rr_type:e.constructor.name,args:[Xn(e.data,t,n),e.width,e.height]}:Jn(e,t)||"object"==typeof e?{rr_type:e.constructor.name,index:Kn(e,t,n)}:e}var Gn=(e,t,n)=>e.map(e=>Xn(e,t,n)),Jn=(e,t)=>{const n=["WebGLActiveInfo","WebGLBuffer","WebGLFramebuffer","WebGLProgram","WebGLRenderbuffer","WebGLShader","WebGLShaderPrecisionFormat","WebGLTexture","WebGLUniformLocation","WebGLVertexArrayObject","WebGLVertexArrayObjectOES"].filter(e=>"function"==typeof t[e]);return Boolean(n.find(n=>e instanceof t[n]))};function Zn(e,t,n,r){const o=[];try{const i=at(e.HTMLCanvasElement.prototype,"getContext",function(e){return function(o,...i){if(!cn(this,t,n,!0)){const e=function(e){return"experimental-webgl"===e?"webgl":e}(o);if("__context"in this||(this.__context=e),r&&["webgl","webgl2"].includes(e))if(i[0]&&"object"==typeof i[0]){const e=i[0];e.preserveDrawingBuffer||(e.preserveDrawingBuffer=!0)}else i.splice(0,1,{preserveDrawingBuffer:!0})}return e.apply(this,[o,...i])}});o.push(i)}catch{console.error("failed to patch HTMLCanvasElement.prototype.getContext")}return()=>{o.forEach(e=>e())}}function Qn(e,t,n,r,o,i){const s=[],a=Object.getOwnPropertyNames(e);for(const c of a)if(!["isContextLost","canvas","drawingBufferWidth","drawingBufferHeight"].includes(c))try{if("function"!=typeof e[c])continue;const a=at(e,c,function(e){return function(...s){const a=e.apply(this,s);if(Kn(a,i,this),"tagName"in this.canvas&&!cn(this.canvas,r,o,!0)){const e=Gn(s,i,this),r={type:t,property:c,args:e};n(this.canvas,r)}return a}});s.push(a)}catch{const r=nn(e,c,{set(e){n(this.canvas,{type:t,property:c,args:[e],setter:!0})}});s.push(r)}return s}var er='(function() {\n "use strict";\n var chars = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/";\n var lookup = typeof Uint8Array === "undefined" ? [] : new Uint8Array(256);\n for (var i = 0; i < chars.length; i++) {\n lookup[chars.charCodeAt(i)] = i;\n }\n var encode = function(arraybuffer) {\n var bytes = new Uint8Array(arraybuffer), i2, len = bytes.length, base64 = "";\n for (i2 = 0; i2 < len; i2 += 3) {\n base64 += chars[bytes[i2] >> 2];\n base64 += chars[(bytes[i2] & 3) << 4 | bytes[i2 + 1] >> 4];\n base64 += chars[(bytes[i2 + 1] & 15) << 2 | bytes[i2 + 2] >> 6];\n base64 += chars[bytes[i2 + 2] & 63];\n }\n if (len % 3 === 2) {\n base64 = base64.substring(0, base64.length - 1) + "=";\n } else if (len % 3 === 1) {\n base64 = base64.substring(0, base64.length - 2) + "==";\n }\n return base64;\n };\n const lastBlobMap = /* @__PURE__ */ new Map();\n const transparentBlobMap = /* @__PURE__ */ new Map();\n async function getTransparentBlobFor(width, height, dataURLOptions) {\n const id = `${width}-${height}`;\n if ("OffscreenCanvas" in globalThis) {\n if (transparentBlobMap.has(id)) return transparentBlobMap.get(id);\n const offscreen = new OffscreenCanvas(width, height);\n offscreen.getContext("2d");\n const blob = await offscreen.convertToBlob(dataURLOptions);\n const arrayBuffer = await blob.arrayBuffer();\n const base64 = encode(arrayBuffer);\n transparentBlobMap.set(id, base64);\n return base64;\n } else {\n return "";\n }\n }\n const worker = self;\n worker.onmessage = async function(e) {\n if ("OffscreenCanvas" in globalThis) {\n const { id, bitmap, width, height, dataURLOptions } = e.data;\n const transparentBase64 = getTransparentBlobFor(\n width,\n height,\n dataURLOptions\n );\n const offscreen = new OffscreenCanvas(width, height);\n const ctx = offscreen.getContext("2d");\n ctx.drawImage(bitmap, 0, 0);\n bitmap.close();\n const blob = await offscreen.convertToBlob(dataURLOptions);\n const type = blob.type;\n const arrayBuffer = await blob.arrayBuffer();\n const base64 = encode(arrayBuffer);\n if (!lastBlobMap.has(id) && await transparentBase64 === base64) {\n lastBlobMap.set(id, base64);\n return worker.postMessage({ id });\n }\n if (lastBlobMap.get(id) === base64) return worker.postMessage({ id });\n worker.postMessage({\n id,\n type,\n base64,\n width,\n height\n });\n lastBlobMap.set(id, base64);\n } else {\n return worker.postMessage({ id: e.data.id });\n }\n };\n})();\n//# sourceMappingURL=image-bitmap-data-url-worker-IJpC7g_b.js.map\n',tr="undefined"!=typeof self&&self.Blob&&new Blob([er],{type:"text/javascript;charset=utf-8"});function nr(e){let t;try{if(t=tr&&(self.URL||self.webkitURL).createObjectURL(tr),!t)throw"";const n=new Worker(t,{name:null==e?void 0:e.name});return n.addEventListener("error",()=>{(self.URL||self.webkitURL).revokeObjectURL(t)}),n}catch(n){return new Worker("data:text/javascript;charset=utf-8,"+encodeURIComponent(er),{name:null==e?void 0:e.name})}finally{t&&(self.URL||self.webkitURL).revokeObjectURL(t)}}var rr,or,ir,sr=class{constructor(e){He(this,"pendingCanvasMutations",/* @__PURE__ */new Map),He(this,"rafStamps",{latestId:0,invokeId:null}),He(this,"mirror"),He(this,"mutationCb"),He(this,"resetObservers"),He(this,"frozen",!1),He(this,"locked",!1),He(this,"processMutation",(e,t)=>{(this.rafStamps.invokeId&&this.rafStamps.latestId!==this.rafStamps.invokeId||!this.rafStamps.invokeId)&&(this.rafStamps.invokeId=this.rafStamps.latestId),this.pendingCanvasMutations.has(e)||this.pendingCanvasMutations.set(e,[]),this.pendingCanvasMutations.get(e).push(t)});const{sampling:t="all",win:n,blockClass:r,blockSelector:o,recordCanvas:i,dataURLOptions:s}=e;this.mutationCb=e.mutationCb,this.mirror=e.mirror,i&&"all"===t&&this.initCanvasMutationObserver(n,r,o),i&&"number"==typeof t&&this.initCanvasFPSObserver(t,n,r,o,{dataURLOptions:s})}reset(){this.pendingCanvasMutations.clear(),this.resetObservers&&this.resetObservers()}freeze(){this.frozen=!0}unfreeze(){this.frozen=!1}lock(){this.locked=!0}unlock(){this.locked=!1}initCanvasFPSObserver(e,t,n,r,o){const i=Zn(t,n,r,!0),s=/* @__PURE__ */new Map,a=new nr;a.onmessage=e=>{const{id:t}=e.data;if(s.set(t,!1),!("base64"in e.data))return;const{base64:n,type:r,width:o,height:i}=e.data;this.mutationCb({id:t,type:Ke["2D"],commands:[{property:"clearRect",args:[0,0,o,i]},{property:"drawImage",args:[{rr_type:"ImageBitmap",args:[{rr_type:"Blob",data:[{rr_type:"ArrayBuffer",base64:n}],type:r}]},0,0]}]})};const c=1e3/e;let l,u=0;const d=e=>{u&&e-u<c||(u=e,(()=>{const e=[];return t.document.querySelectorAll("canvas").forEach(t=>{cn(t,n,r,!0)||e.push(t)}),e})().forEach(async e=>{var t;const n=this.mirror.getId(e);if(s.get(n))return;if(0===e.width||0===e.height)return;if(s.set(n,!0),["webgl","webgl2"].includes(e.__context)){const n=e.getContext(e.__context);!1===(null==(t=null==n?void 0:n.getContextAttributes())?void 0:t.preserveDrawingBuffer)&&n.clear(n.COLOR_BUFFER_BIT)}const r=await createImageBitmap(e);a.postMessage({id:n,bitmap:r,width:e.width,height:e.height,dataURLOptions:o.dataURLOptions},[r])})),l=requestAnimationFrame(d)};l=requestAnimationFrame(d),this.resetObservers=()=>{i(),cancelAnimationFrame(l)}}initCanvasMutationObserver(e,t,n){this.startRAFTimestamping(),this.startPendingCanvasMutationFlusher();const r=Zn(e,t,n,!1),o=function(e,t,n,r){const o=[],i=Object.getOwnPropertyNames(t.CanvasRenderingContext2D.prototype);for(const s of i)try{if("function"!=typeof t.CanvasRenderingContext2D.prototype[s])continue;const i=at(t.CanvasRenderingContext2D.prototype,s,function(o){return function(...i){return cn(this.canvas,n,r,!0)||setTimeout(()=>{const n=Gn(i,t,this);e(this.canvas,{type:Ke["2D"],property:s,args:n})},0),o.apply(this,i)}});o.push(i)}catch{const n=nn(t.CanvasRenderingContext2D.prototype,s,{set(t){e(this.canvas,{type:Ke["2D"],property:s,args:[t],setter:!0})}});o.push(n)}return()=>{o.forEach(e=>e())}}(this.processMutation.bind(this),e,t,n),i=function(e,t,n,r){const o=[];return void 0!==t.WebGLRenderingContext&&o.push(...Qn(t.WebGLRenderingContext.prototype,Ke.WebGL,e,n,r,t)),void 0!==t.WebGL2RenderingContext&&o.push(...Qn(t.WebGL2RenderingContext.prototype,Ke.WebGL2,e,n,r,t)),()=>{o.forEach(e=>e())}}(this.processMutation.bind(this),e,t,n);this.resetObservers=()=>{r(),o(),i()}}startPendingCanvasMutationFlusher(){requestAnimationFrame(()=>this.flushPendingCanvasMutations())}startRAFTimestamping(){const e=t=>{this.rafStamps.latestId=t,requestAnimationFrame(e)};requestAnimationFrame(e)}flushPendingCanvasMutations(){this.pendingCanvasMutations.forEach((e,t)=>{const n=this.mirror.getId(t);this.flushPendingCanvasMutationFor(t,n)}),requestAnimationFrame(()=>this.flushPendingCanvasMutations())}flushPendingCanvasMutationFor(e,t){if(this.frozen||this.locked)return;const n=this.pendingCanvasMutations.get(e);if(!n||-1===t)return;const r=n.map(e=>{const{type:t,...n}=e;return n}),{type:o}=n[0];this.mutationCb({id:t,type:o,commands:r}),this.pendingCanvasMutations.delete(e)}},ar=class{constructor(e){He(this,"trackedLinkElements",/* @__PURE__ */new WeakSet),He(this,"mutationCb"),He(this,"adoptedStyleSheetCb"),He(this,"styleMirror",new mn),this.mutationCb=e.mutationCb,this.adoptedStyleSheetCb=e.adoptedStyleSheetCb}attachLinkElement(e,t){"_cssText"in t.attributes&&this.mutationCb({adds:[],removes:[],texts:[],attributes:[{id:t.id,attributes:t.attributes}]}),this.trackLinkElement(e)}trackLinkElement(e){this.trackedLinkElements.has(e)||(this.trackedLinkElements.add(e),this.trackStylesheetInLinkElement(e))}adoptStyleSheets(e,t){if(0===e.length)return;const n={id:t,styleIds:[]},r=[];for(const o of e){let e;this.styleMirror.has(o)?e=this.styleMirror.getId(o):(e=this.styleMirror.add(o),r.push({styleId:e,rules:Array.from(o.rules||CSSRule,(e,t)=>({rule:xt(e,o.href),index:t}))})),n.styleIds.push(e)}r.length>0&&(n.styles=r),this.adoptedStyleSheetCb(n)}reset(){this.styleMirror.reset(),this.trackedLinkElements=/* @__PURE__ */new WeakSet}trackStylesheetInLinkElement(e){}},cr=class{constructor(){He(this,"nodeMap",/* @__PURE__ */new WeakMap),He(this,"active",!1)}inOtherBuffer(e,t){const n=this.nodeMap.get(e);return n&&Array.from(n).some(e=>e!==t)}add(e,t){this.active||(this.active=!0,requestAnimationFrame(()=>{this.nodeMap=/* @__PURE__ */new WeakMap,this.active=!1})),this.nodeMap.set(e,(this.nodeMap.get(e)||/* @__PURE__ */new Set).add(t))}destroy(){}},lr=!1;try{if(2!==Array.from([1],e=>2*e)[0]){const e=document.createElement("iframe");document.body.appendChild(e),Array.from=(null==($e=e.contentWindow)?void 0:$e.Array.from)||Array.from,document.body.removeChild(e)}}catch($d){}var ur=new St;function dr(e={}){const{emit:t,checkoutEveryNms:n,checkoutEveryNth:r,blockClass:o="rr-block",blockSelector:i=null,ignoreClass:s="rr-ignore",ignoreSelector:a=null,maskTextClass:c="rr-mask",maskTextSelector:l=null,inlineStylesheet:u=!0,maskAllInputs:d,maskInputOptions:p,slimDOMOptions:h,maskInputFn:f,maskTextFn:m,hooks:g,packFn:y,sampling:b={},dataURLOptions:v={},mousemoveWait:w,recordDOM:x=!0,recordCanvas:S=!1,recordCrossOriginIframes:k=!1,recordAfter:C=("DOMContentLoaded"===e.recordAfter?e.recordAfter:"load"),userTriggeredOnInput:E=!1,collectFonts:I=!1,inlineImages:M=!1,plugins:T,keepIframeSrcFn:R=()=>!1,ignoreCSSAttributes:O=/* @__PURE__ */new Set([]),errorHandler:A}=e;vn=A;const _=!k||window.parent===window;let D=!1;if(!_)try{window.parent.document&&(D=!1)}catch(V){D=!0}if(_&&!t)throw new Error("emit function is required");if(!_&&!D)return()=>{};void 0!==w&&void 0===b.mousemove&&(b.mousemove=w),ur.reset();const P=!0===d?{color:!0,date:!0,"datetime-local":!0,email:!0,month:!0,number:!0,range:!0,search:!0,tel:!0,text:!0,time:!0,url:!0,week:!0,textarea:!0,select:!0,password:!0}:void 0!==p?p:{password:!0},N=Xt(h);let L;!function(e=window){"NodeList"in e&&!e.NodeList.prototype.forEach&&(e.NodeList.prototype.forEach=Array.prototype.forEach),"DOMTokenList"in e&&!e.DOMTokenList.prototype.forEach&&(e.DOMTokenList.prototype.forEach=Array.prototype.forEach)}();let F=0;const z=e=>{for(const t of T||[])t.eventProcessor&&(e=t.eventProcessor(e));return y&&!D&&(e=y(e)),e};rr=(e,o)=>{var i;const s=e;if(s.timestamp=st(),!(null==(i=Tn[0])?void 0:i.isFrozen())||s.type===je.FullSnapshot||s.type===je.IncrementalSnapshot&&s.data.source===qe.Mutation||Tn.forEach(e=>e.unfreeze()),_)t?.(z(s),o);else if(D){const e={type:"rrweb",event:z(s),origin:window.location.origin,isCheckout:o};window.parent.postMessage(e,"*")}if(s.type===je.FullSnapshot)L=s,F=0;else if(s.type===je.IncrementalSnapshot){if(s.data.source===qe.Mutation&&s.data.isAttachIframe)return;F++;const e=r&&F>=r,t=n&&s.timestamp-L.timestamp>n;(e||t)&&or(!0)}};const $=e=>{rr({type:je.IncrementalSnapshot,data:{source:qe.Mutation,...e}})},B=e=>rr({type:je.IncrementalSnapshot,data:{source:qe.Scroll,...e}}),W=e=>rr({type:je.IncrementalSnapshot,data:{source:qe.CanvasMutation,...e}}),U=new ar({mutationCb:$,adoptedStyleSheetCb:e=>rr({type:je.IncrementalSnapshot,data:{source:qe.AdoptedStyleSheet,...e}})}),H=new Wn({mirror:ur,mutationCb:$,stylesheetManager:U,recordCrossOriginIframes:k,wrappedEmit:rr});for(const K of T||[])K.getMirror&&K.getMirror({nodeMirror:ur,crossOriginIframeMirror:H.crossOriginIframeMirror,crossOriginIframeStyleMirror:H.crossOriginIframeStyleMirror});const j=new cr;ir=new sr({recordCanvas:S,mutationCb:W,win:window,blockClass:o,blockSelector:i,mirror:ur,sampling:b.canvas,dataURLOptions:v});const q=new Un({mutationCb:$,scrollCb:B,bypassOptions:{blockClass:o,blockSelector:i,maskTextClass:c,maskTextSelector:l,inlineStylesheet:u,maskInputOptions:P,dataURLOptions:v,maskTextFn:m,maskInputFn:f,recordCanvas:S,inlineImages:M,sampling:b,slimDOMOptions:N,iframeManager:H,stylesheetManager:U,canvasManager:ir,keepIframeSrcFn:R,processedNodeManager:j},mirror:ur});or=(e=!1)=>{if(!x)return;rr({type:je.Meta,data:{href:window.location.href,width:sn(),height:on()}},e),U.reset(),q.init(),Tn.forEach(e=>e.lock());const t=function(e,t){const{mirror:n=new St,blockClass:r="rr-block",blockSelector:o=null,maskTextClass:i="rr-mask",maskTextSelector:s=null,inlineStylesheet:a=!0,inlineImages:c=!1,recordCanvas:l=!1,maskAllInputs:u=!1,maskTextFn:d,maskInputFn:p,slimDOM:h=!1,dataURLOptions:f,preserveWhiteSpace:m,onSerialize:g,onIframeLoad:y,iframeLoadTimeout:b,onStylesheetLoad:v,stylesheetLoadTimeout:w,keepIframeSrcFn:x=()=>!1}=t;return Gt(e,{doc:e,mirror:n,blockClass:r,blockSelector:o,maskTextClass:i,maskTextSelector:s,skipChild:!1,inlineStylesheet:a,maskInputOptions:!0===u?{color:!0,date:!0,"datetime-local":!0,email:!0,month:!0,number:!0,range:!0,search:!0,tel:!0,text:!0,time:!0,url:!0,week:!0,textarea:!0,select:!0,password:!0}:!1===u?{password:!0}:u,maskTextFn:d,maskInputFn:p,slimDOMOptions:Xt(h),dataURLOptions:f,inlineImages:c,recordCanvas:l,preserveWhiteSpace:m,onSerialize:g,onIframeLoad:y,iframeLoadTimeout:b,onStylesheetLoad:v,stylesheetLoadTimeout:w,keepIframeSrcFn:x,newlyAddedElement:!1})}(document,{mirror:ur,blockClass:o,blockSelector:i,maskTextClass:c,maskTextSelector:l,inlineStylesheet:u,maskAllInputs:P,maskTextFn:m,maskInputFn:f,slimDOM:N,dataURLOptions:v,recordCanvas:S,inlineImages:M,onSerialize:e=>{pn(e,ur)&&H.addIframe(e),hn(e,ur)&&U.trackLinkElement(e),fn(e)&&q.addShadowRoot(gt(e),document)},onIframeLoad:(e,t)=>{H.attachIframe(e,t),q.observeAttachShadow(e)},onStylesheetLoad:(e,t)=>{U.attachLinkElement(e,t)},keepIframeSrcFn:R});if(!t)return console.warn("Failed to snapshot the document");rr({type:je.FullSnapshot,data:{node:t,initialOffset:rn(window)}},e),Tn.forEach(e=>e.unlock()),document.adoptedStyleSheets&&document.adoptedStyleSheets.length>0&&U.adoptStyleSheets(document.adoptedStyleSheets,ur.getId(document))};try{const e=[],t=e=>{var t;return Mn(Fn)({mutationCb:$,mousemoveCb:(e,t)=>rr({type:je.IncrementalSnapshot,data:{source:t,positions:e}}),mouseInteractionCb:e=>rr({type:je.IncrementalSnapshot,data:{source:qe.MouseInteraction,...e}}),scrollCb:B,viewportResizeCb:e=>rr({type:je.IncrementalSnapshot,data:{source:qe.ViewportResize,...e}}),inputCb:e=>rr({type:je.IncrementalSnapshot,data:{source:qe.Input,...e}}),mediaInteractionCb:e=>rr({type:je.IncrementalSnapshot,data:{source:qe.MediaInteraction,...e}}),styleSheetRuleCb:e=>rr({type:je.IncrementalSnapshot,data:{source:qe.StyleSheetRule,...e}}),styleDeclarationCb:e=>rr({type:je.IncrementalSnapshot,data:{source:qe.StyleDeclaration,...e}}),canvasMutationCb:W,fontCb:e=>rr({type:je.IncrementalSnapshot,data:{source:qe.Font,...e}}),selectionCb:e=>{rr({type:je.IncrementalSnapshot,data:{source:qe.Selection,...e}})},customElementCb:e=>{rr({type:je.IncrementalSnapshot,data:{source:qe.CustomElement,...e}})},blockClass:o,ignoreClass:s,ignoreSelector:a,maskTextClass:c,maskTextSelector:l,maskInputOptions:P,inlineStylesheet:u,sampling:b,recordDOM:x,recordCanvas:S,inlineImages:M,userTriggeredOnInput:E,collectFonts:I,doc:e,maskInputFn:f,maskTextFn:m,keepIframeSrcFn:R,blockSelector:i,slimDOMOptions:N,dataURLOptions:v,mirror:ur,iframeManager:H,stylesheetManager:U,shadowDomManager:q,processedNodeManager:j,canvasManager:ir,ignoreCSSAttributes:O,plugins:(null==(t=null==T?void 0:T.filter(e=>e.observer))?void 0:t.map(e=>({observer:e.observer,options:e.options,callback:t=>rr({type:je.Plugin,data:{plugin:e.name,payload:t}})})))||[]},g)};H.addLoadListener(n=>{try{e.push(t(n.contentDocument))}catch(r){console.warn(r)}});const n=()=>{or(),e.push(t(document)),lr=!0};return["interactive","complete"].includes(document.readyState)?n():(e.push(Zt("DOMContentLoaded",()=>{rr({type:je.DomContentLoaded,data:{}}),"DOMContentLoaded"===C&&n()})),e.push(Zt("load",()=>{rr({type:je.Load,data:{}}),"load"===C&&n()},window))),()=>{e.forEach(e=>{try{e()}catch(t){String(t).toLowerCase().includes("cross-origin")||console.warn(t)}}),j.destroy(),lr=!1,vn=void 0}}catch(Y){console.warn(Y)}}dr.addCustomEvent=(e,t)=>{if(!lr)throw new Error("please add custom event after start recording");rr({type:je.Custom,data:{tag:e,payload:t}})},dr.freezePage=()=>{Tn.forEach(e=>e.freeze())},dr.takeFullSnapshot=e=>{if(!lr)throw new Error("please take full snapshot after start recording");or(e)},dr.mirror=ur;var pr="Chat is unavailable — the widget credentials were rejected.",hr=class extends Error{},fr=new class{abortController=null;chatId=null;status="disconnected";callbacks=/* @__PURE__ */new Set;tornDown=!1;credentialRejected=!1;reconnectAttempts=0;maxReconnectAttempts=10;reconnectDelay=1e3;maxReconnectDelay=3e4;reconnectTimer=null;connectionId=0;tabId=globalThis.crypto.randomUUID();registrationWaiters=/* @__PURE__ */new Set;addCallbacks(e){this.callbacks.add(e)}removeCallbacks(e){this.callbacks.delete(e)}isConnected(){return"registered"===this.status}reconnectSuppressed(){return this.tornDown||this.credentialRejected}canReconnect(){return null!==this.chatId&&!this.reconnectSuppressed()&&!this.isConnected()}reconnectNow(){this.canReconnect()&&null!==this.chatId&&(this.clearReconnectTimer(),this.resetBackoff(),this.abortConnection(),this.connect(this.chatId))}async ready(e){await this.connect(e),await this.waitUntilRegistered()}async waitUntilRegistered(){if(!this.isConnected()){if(this.credentialRejected)throw new hr(pr);await new Promise((e,t)=>this.registrationWaiters.add({resolve:e,reject:t}))}}async connect(e){if(this.credentialRejected)return;if(this.tornDown=!1,this.chatId===e&&("connecting"===this.status||"open"===this.status||"registered"===this.status))return;this.abortConnection(),this.chatId=e,this.status="connecting";const t=++this.connectionId;this.abortController=new AbortController;const n=this.abortController.signal;try{const r=Be.getCredentialedConfig(),o=await Te.widgetStream({chat_id:e,tab_id:this.tabId,...r&&{marketrix_id:r.mtxId,marketrix_key:r.mtxKey,...r.userId?{user_id:r.userId}:{}}},{signal:n});this.status="open",this.consumeEvents(o,t)}catch(r){n.aborted||(Ae("[StreamClient] Connection failed, will retry:",r),this.status="error",this.notifyError(/* @__PURE__ */new Error("Stream connection failed")),this.scheduleReconnect())}}async consumeEvents(e,t){let n=!1;try{for await(const r of e){if(this.connectionId!==t){n=!0;break}this.handleMessage(r)}}catch(r){this.connectionId!==t?n=!0:this.reconnectSuppressed()||(Ae("[StreamClient] Stream error:",r),this.status="error")}finally{n||this.connectionId!==t||this.reconnectSuppressed()||(this.status="disconnected",this.scheduleReconnect())}}disconnect(){this.tornDown=!0,this.credentialRejected=!1,this.clearReconnectTimer(),this.abortConnection(),this.chatId=null,this.settleWaiters(/* @__PURE__ */new Error("Stream disconnected before registration"))}send(e){return this.chatId?Te.widgetMessagePost({chat_id:this.chatId,tab_id:this.tabId,command:e}).then(()=>{}).catch(e=>{throw Ae("[StreamClient] Failed to send message, letting the caller report it:",e),e}):Promise.reject(/* @__PURE__ */new Error("No active chat"))}resetBackoff(){this.reconnectAttempts=0,this.reconnectDelay=1e3}notifyError(e){this.callbacks.forEach(t=>t.onError?.(e))}settleWaiters(e){for(const t of this.registrationWaiters)e?t.reject(e):t.resolve();this.registrationWaiters.clear()}giveUp(e){const t=new hr(e);this.notifyError(t),this.settleWaiters(t)}handleMessage(e){this.reconnectSuppressed()||"heartbeat"!==e.type&&("registered"===e.type&&e.chat_id===this.chatId&&(this.status="registered",this.resetBackoff(),this.settleWaiters()),"chat/error"===e.type&&"auth"===e.request_id&&(console.error("[StreamClient] Authentication failed — will not reconnect"),this.credentialRejected=!0,this.giveUp(pr)),this.callbacks.forEach(t=>t.onMessage?.(e)))}scheduleReconnect(){if(this.reconnectAttempts>=this.maxReconnectAttempts)return void this.giveUp("Could not reconnect to the assistant. Try again.");this.clearReconnectTimer(),this.reconnectAttempts++;const e=Math.min(this.reconnectDelay*Math.pow(2,this.reconnectAttempts-1),this.maxReconnectDelay);this.reconnectTimer=setTimeout(()=>{!this.reconnectSuppressed()&&this.chatId&&this.connect(this.chatId)},e)}abortConnection(){this.abortController?.abort(),this.abortController=null,this.status="disconnected"}clearReconnectTimer(){this.reconnectTimer&&(clearTimeout(this.reconnectTimer),this.reconnectTimer=null)}},mr=class{chatId;applicationId;events=[];sessionId=globalThis.crypto.randomUUID();stopRecording=null;flushTimer=null;flushPromise=Promise.resolve();stopped=!1;constructor(e,t){this.chatId=e,this.applicationId=t}async start(){this.stopRecording||this.stopped||(await fr.ready(this.chatId),this.stopped||(await Te.widgetMessagePost({chat_id:this.chatId,command:{type:"rrweb/metadata",rrweb_session_id:this.sessionId,chat_id:this.chatId,application_id:this.applicationId,url:window.location.href,timestamp:Date.now(),viewport:{width:window.innerWidth,height:window.innerHeight}}}),this.stopped||(this.stopRecording=dr({emit:e=>{this.events.push(e),this.flushTimer||(this.flushTimer=setTimeout(()=>{this.flush()},500))},maskAllInputs:!0,maskTextClass:/^(rr-mask|mtx-mask)$/,blockClass:/^(rr-block|mtx-block)$/}))))}stop(){this.stopped=!0,this.stopRecording?.(),this.stopRecording=null,this.flushTimer&&clearTimeout(this.flushTimer),this.flushTimer=null,this.flush()}flush(){return this.flushPromise=this.flushPromise.then(async()=>{this.flushTimer&&clearTimeout(this.flushTimer),this.flushTimer=null;const e=this.events.splice(0);if(e.length)try{await Te.widgetMessagePost({chat_id:this.chatId,command:{type:"rrweb/events",rrweb_session_id:this.sessionId,events:e}})}catch(t){this.events=e.concat(this.events).slice(0,2e4),Ae("[RrwebSessionRecorder] Failed to record session events, requeued for retry:",t),this.stopped||(this.flushTimer=setTimeout(()=>{this.flush()},500))}}),this.flushPromise}},gr=null,yr=null;function br(){return gr?.active&&"live"===gr.getVideoTracks()[0]?.readyState?gr:(gr=null,null)}function vr(){gr&&(gr.getTracks().forEach(e=>e.stop()),gr=null)}var wr={none:"0",sm:"calc(var(--radius) - 4px)",md:"calc(var(--radius) - 2px)",lg:"var(--radius)",xl:"calc(var(--radius) + 4px)",pill:"var(--radius-pill)"},xr={default:"var(--foreground)",muted:"var(--foreground-muted)",faint:"var(--foreground-faint)",inherit:"inherit"},Sr={tight:"1.25",snug:"1.375",normal:"1.5",relaxed:"1.625"},kr={none:"none",card:"0 1px 4px rgba(0,0,0,0.1)",section:"0 2px 8px rgba(0,0,0,0.06)",panel:"0 12px 40px rgba(0,0,0,0.16), 0 4px 12px rgba(0,0,0,0.08)",fab:"0 2px 8px rgba(0,0,0,0.18), 0 0 0 1px rgba(0,0,0,0.04)",button:"0 4px 6px -1px rgba(0,0,0,0.1)"},Cr=2147483003,Er={info:{background:"#f0f9ff",border:"1px solid #bae6fd",titleColor:"#0c4a6e",bodyColor:"#0369a1",closeColor:"#0284c7",actionBackground:"#e0f2fe"},error:{background:"#fef2f2",border:"1px solid #fecaca",titleColor:"#b91c1c",bodyColor:"#b91c1c",closeColor:"#dc2626",actionBackground:"#fee2e2"},neutral:{background:"rgba(255, 255, 255, 0.95)",border:"1px solid rgba(255, 255, 255, 0.2)",titleColor:"#1f2937",bodyColor:"#1f2937",closeColor:"#6b7280",actionBackground:"transparent"}};function Ir(e){if(e&&"none"!==e)return{boxShadow:kr[e]}}var Mr=/* @__PURE__ */new Set(["button","link","textbox","checkbox","radio","switch","tab","menuitem"]);function Tr(e){return Array.from(e.querySelectorAll('a[href], button:not([disabled]), input:not([disabled]), select:not([disabled]), textarea:not([disabled]), [tabindex]:not([tabindex="-1"])')).filter(e=>null!==e.offsetParent&&!function(e){for(let t=e;t;t=t.parentElement)if("true"===t.getAttribute("aria-hidden"))return!0;return!1}(e))}function*Rr(e){let t=e;for(;t;){yield t;const e=t.getRootNode();t=t.parentElement??(e instanceof ShadowRoot?e.host:null)}}function Or(e){if(!(e instanceof Element))return!1;try{const t=e.tagName.toLowerCase();if(!("button"===t||"input"===t||"textarea"===t||"select"===t||"a"===t&&e.hasAttribute("href")||Mr.has(e.getAttribute("role")??"")||"true"===e.getAttribute("contenteditable")||e.hasAttribute("onclick")||parseInt(e.getAttribute("tabindex")??"-1",10)>=0))return!1;const n=window.getComputedStyle(e);if("none"===n.display||"none"===n.pointerEvents)return!1;const r=e.getBoundingClientRect();if(r.width<=0||r.height<=0)return!1;for(const o of Rr(e))if(o!==e){const e=window.getComputedStyle(o).overflow;if("hidden"===e||"clip"===e){const e=o.getBoundingClientRect();if(r.right<e.left||r.left>e.right||r.bottom<e.top||r.top>e.bottom)return!1}if(o===document.body)break}for(let o=e.getRootNode();o instanceof ShadowRoot;o=o.host.getRootNode()){const e=o.host.getBoundingClientRect();if(e.width<=0||e.height<=0)return!1}return!0}catch(t){return console.error("[isIndexable] Unexpected error:",t),!1}}var Ar=["id","type","role","aria-label","name","href"],_r=new class{index=/* @__PURE__ */new Map;elementToSequence=/* @__PURE__ */new WeakMap;generateAnchoredSelector(e){const t=[];let n=e;for(;n!==document.body;){const e=n.id?`#${CSS.escape(n.id)}`:"";if(e&&1===document.querySelectorAll(e).length)return t.unshift(e),t.join(" > ");const r=n.parentElement;if(!r)break;const o=n.tagName,i=Array.from(r.children).filter(e=>e.tagName===o),s=i.length>1?`:nth-of-type(${i.indexOf(n)+1})`:"";t.unshift(o.toLowerCase()+s),n=r}return["body",...t].join(" > ")}indexElements(){this.index.clear(),this.elementToSequence=/* @__PURE__ */new WeakMap;const e=document.createTreeWalker(document.body,NodeFilter.SHOW_ELEMENT,{acceptNode:e=>{if(e instanceof HTMLElement&&null===e.offsetParent&&"BODY"!==e.tagName){const t=window.getComputedStyle(e),n="fixed"===t.position||"sticky"===t.position;if("none"===t.display)return NodeFilter.FILTER_REJECT;if(!n){let t=e.parentElement,n=!1;for(;t&&t!==document.body;){const e=window.getComputedStyle(t);if("fixed"===e.position||"sticky"===e.position){n=!0;break}t=t.parentElement}if(!n)return NodeFilter.FILTER_REJECT}}return NodeFilter.FILTER_ACCEPT}});let t=e.nextNode(),n=0;for(;t;){const r=t instanceof HTMLElement?t:null;if(r){const e=r.matches('a[href], button, input, textarea, select, [role="button"]'),t=r.classList.contains("cursor-pointer")||r.classList.contains("clickable"),o="function"==typeof r.onclick;(e||t||o||Or(r))&&(this.index.set(n,{element:r,selector:this.generateAnchoredSelector(r),identity:Ar.map(e=>r.getAttribute(e))}),this.elementToSequence.set(r,n),n++)}t=e.nextNode()}}reindexAndSnapshot(){this.indexElements();const e=document.documentElement.cloneNode(!0);for(const[n,{selector:r}]of this.index.entries())try{e.querySelector(r)?.setAttribute("data-id",n.toString())}catch(t){Ae(`[DomService] Failed to tag index ${n}:`,t)}return e.outerHTML}getSequenceForElement(e){return this.elementToSequence.get(e)}notInteractableReason(e,t){if(!document.body.contains(e))return`ELEMENT_NOT_INTERACTABLE: Element ${t} is not in the DOM`;const n=function(e){if("disabled"in e&&!0===e.disabled)return"is a disabled control";if("true"===e.getAttribute("aria-disabled"))return"is aria-disabled";for(const t of Rr(e))if(t.hasAttribute("inert"))return"is inside an inert subtree";return null}(e);if(n)return`ELEMENT_NOT_INTERACTABLE: Element ${t} ${n}`;const r=window.getComputedStyle(e);if("none"===r.display)return`ELEMENT_NOT_INTERACTABLE: Element ${t} has display:none`;if("hidden"===r.visibility)return`ELEMENT_NOT_INTERACTABLE: Element ${t} has visibility:hidden`;if(0===parseFloat(r.opacity))return`ELEMENT_NOT_INTERACTABLE: Element ${t} has opacity:0`;const o=e.getBoundingClientRect();if(0===o.width||0===o.height)return`ELEMENT_NOT_INTERACTABLE: Element ${t} has zero dimensions`;const i=o.left+o.width/2,s=o.top+o.height/2,a=document.elementFromPoint(i,s);if(a&&a!==e&&!e.contains(a)&&!a.closest("#marketrix-show-highlight, #marketrix-show-popup, .marketrix-widget-container")){const e=a.tagName.toLowerCase();return`ELEMENT_OBSCURED: Element ${t} is covered by ${a.className?`${e}.${a.className.split(" ")[0]}`:e}. The obscuring element may be a modal or overlay that needs to be dismissed first.`}return null}getValidatedElement(e){const t=this.index.get(e);if(!t)return{element:null,error:`Element ${e} not found`};const n=!document.contains(t.element),r=Ar.some((e,n)=>t.element.getAttribute(e)!==t.identity[n]);if(n||r)return{element:null,error:`DOM_CHANGED: Element at index ${e} ${n?"no longer exists":"has changed"}. Call get_html to get updated indices.`};const o=this.notInteractableReason(t.element,e);return o?{element:null,error:o}:{element:t.element}}},Dr=["scroll","resize","touchmove","wheel"],Pr="#3b82f6",Nr="#1f2937",Lr=new class{currentPopup=null;currentHighlight=null;currentElement=null;currentOptions=null;currentPromise=null;resolvePromise=null;rejectPromise=null;clickHandler=null;scrollHandler=null;visibilityCheckInterval=null;async showToolAction(e){const{element:t,explanation:n,isClickAction:r=!1,browserToolName:o}=e;return this.currentOptions?.element===t&&this.currentOptions.explanation===n&&this.currentOptions.browserToolName===o&&this.currentPromise||(this.cleanup(),this.currentOptions=e,this.currentElement=t,t.scrollIntoView({behavior:"instant",block:"center",inline:"center"}),this.createHighlight(),this.createPopup(n,r),this.setupPositionUpdates(),this.setupVisibilityMonitoring(),r&&this.setupClickHandler(),this.currentPromise=new Promise((e,t)=>{this.resolvePromise=e,this.rejectPromise=t})),this.currentPromise}cleanup(){if(this.takeSettlers().reject?.(/* @__PURE__ */new Error("Cancelled by cleanup")),this.clickHandler&&(document.removeEventListener("click",this.clickHandler,{capture:!0}),this.clickHandler=null),this.scrollHandler){for(const e of Dr)window.removeEventListener(e,this.scrollHandler,{capture:!0});this.scrollHandler=null}this.visibilityCheckInterval&&(clearInterval(this.visibilityCheckInterval),this.visibilityCheckInterval=null),this.currentPopup?.remove(),this.currentHighlight?.remove(),document.getElementById("marketrix-show-popup")?.remove(),document.getElementById("marketrix-show-highlight")?.remove(),this.currentPopup=null,this.currentHighlight=null,this.currentElement=null,this.currentOptions=null,this.currentPromise=null}settle(e){const{resolve:t,reject:n}=this.takeSettlers();e?n?.(new Error(e)):t?.(),this.cleanup()}takeSettlers(){const e={resolve:this.resolvePromise,reject:this.rejectPromise};return this.resolvePromise=null,this.rejectPromise=null,e}createHighlight(){const e=document.createElement("div");e.id="marketrix-show-highlight",e.style.cssText=`position:fixed;border:3px solid ${Pr};border-radius:4px;box-shadow:0 0 0 4px rgba(59,130,246,0.2),0 0 20px rgba(59,130,246,0.4);z-index:2147483645;pointer-events:none;transition:none;`,document.body.appendChild(e),this.currentHighlight=e,this.trackElement()}trackElement(){if(!this.currentElement||!this.currentHighlight)return;const e=this.currentElement.getBoundingClientRect();Object.assign(this.currentHighlight.style,{top:`${e.top}px`,left:`${e.left}px`,width:`${e.width}px`,height:`${e.height}px`}),this.updatePopupPosition()}createPopup(e,t){const n=document.createElement("div");n.id="marketrix-show-popup",n.innerHTML=t?`<div style="font-weight: 500; color: ${Nr}; font-size: 12px;">${this.escapeHtml(e)}</div>`:`<div style="margin-bottom:12px;font-weight:500;color:${Nr};font-size:12px;">${this.escapeHtml(e)}</div><div style="display:flex;gap:8px;justify-content:flex-end;"><button id="marketrix-show-continue" style="background:${Pr};color:white;border:none;border-radius:6px;padding:8px 16px;font-size:12px;font-weight:500;cursor:pointer;">Continue</button></div>`,n.style.cssText="position: fixed; width: 320px; background: white; border-radius: 8px;\n box-shadow: 0 4px 12px rgba(0, 0, 0, 0.15); z-index: 2147483646; padding: 16px;",document.body.appendChild(n),this.currentPopup=n,t||window.requestAnimationFrame(()=>{n.querySelector("#marketrix-show-continue")?.addEventListener("click",e=>{e.stopPropagation(),this.settle()})}),this.updatePopupPosition()}setupPositionUpdates(){this.scrollHandler=()=>this.trackElement();for(const e of Dr)window.addEventListener(e,this.scrollHandler,{capture:!0,passive:!0})}updatePopupPosition(){if(!this.currentPopup||!this.currentElement)return;const e=this.currentElement.getBoundingClientRect(),t=10,n=e.left+e.width/2,r=e.top+e.height/2,o=[{left:e.right+20,top:r-60},{left:e.left-320-20,top:r-60},{left:n-160,top:e.top-120-20},{left:n-160,top:e.bottom+20}];let i=o[0];for(const s of o)if(s.left>=t&&s.left+320<=window.innerWidth-t&&s.top>=t&&s.top+120<=window.innerHeight-t){i=s;break}this.currentPopup.style.left=`${Math.max(t,Math.min(i.left,window.innerWidth-320-t))}px`,this.currentPopup.style.top=`${Math.max(t,Math.min(i.top,window.innerHeight-120-t))}px`}setupClickHandler(){this.clickHandler=e=>{this.currentElement&&this.resolvePromise&&e.composedPath().includes(this.currentElement)&&(e.preventDefault(),e.stopPropagation(),this.settle())},document.addEventListener("click",this.clickHandler,{capture:!0})}setupVisibilityMonitoring(){this.visibilityCheckInterval=setInterval(()=>{const e=this.currentElement;if(!e)return;const t=e.getBoundingClientRect();if(t.bottom<0||t.top>window.innerHeight||t.right<0||t.left>window.innerWidth)return void this.settle("ELEMENT_OFF_SCREEN: The highlighted element scrolled out of view");const n=_r.getSequenceForElement(e)??-1,r=_r.notInteractableReason(e,n);r&&this.settle(r)},200)}escapeHtml(e){const t=document.createElement("div");return t.textContent=e,t.innerHTML}},Fr=e=>"string"==typeof e,zr=e=>"boolean"==typeof e,$r=(...e)=>t=>"string"==typeof t&&e.includes(t),Br={widget_enabled:zr,widget_appearance:$r("default","hidden"),widget_position:$r("bottom_left","bottom_right","top_left","top_right"),widget_header:Fr,widget_body:Fr,widget_greeting:Fr,widget_greeting_toast:zr,widget_recording:zr,widget_feature_tell:zr,widget_feature_show:zr,widget_feature_do:zr,widget_background_color:Fr,widget_text_color:Fr,widget_border_color:Fr,widget_accent_color:Fr,widget_secondary_color:Fr,widget_border_radius:Fr,widget_font_size:Fr,widget_width:Fr,widget_height:Fr,widget_animation_duration:Fr,widget_fade_duration:Fr,widget_chips:e=>Array.isArray(e)&&e.every(e=>"object"==typeof e&&null!==e&&$r("tell","show","do")(e.chip_mode)&&Fr(e.chip_text))},Wr=Object.keys(Br),Ur=/* @__PURE__ */new Set(["widget_border_radius","widget_font_size","widget_animation_duration","widget_fade_duration"]);function Hr(e){if("object"!=typeof e||null===e)return{invalidFields:["settings"]};const t=e,n=Wr.filter(e=>!Br[e](t[e]));if(n.length>0)return{invalidFields:n};const r={};for(const o of Wr)Ur.has(o)||(r[o]=t[o]);return{settings:r}}var jr=e=>`Widget settings are invalid: ${e.join(", ")}`;function qr(e,t={}){return{...t,...e}}var Vr=/* @__PURE__ */new Map;function Yr(){}var Kr=Object.freeze([]),Xr=Object.freeze({});function Gr(t){e.useEffect(t,Kr)}var Jr={};function Zr(t,n){const r=e.useRef(Jr);return r.current===Jr&&(r.current=t(n)),r}var Qr="undefined"!=typeof document?e.useLayoutEffect:()=>{},eo=function(e,...t){const n=new URL("https://base-ui.com/production-error");return n.searchParams.set("code",e.toString()),t.forEach(e=>n.searchParams.append("args[]",e)),`Base UI error #${e}; visit ${n} for the full message.`},to=/*#__PURE__*/e.createContext(void 0);function no(){const t=e.useContext(to);if(!t)throw new Error(eo(73));return t}var ro=parseInt(e.version,10);function oo(e){return ro>=e}var io=[],so=void 0;function ao(){return{didInitialize:!1}}var co,lo=oo(19)?function(t,n,r,o,i){const s=so;if(!s)return function(t,n,r,o,i){const s=e.useCallback(()=>n(t.getSnapshot(),r,o,i),[t,n,r,o,i]);return f(t.subscribe,s,s)}(t,n,r,o,i);const a=s.syncIndex;let c;return s.syncIndex+=1,s.didInitialize?(c=s.syncHooks[a],c.store===t&&c.selector===n&&Object.is(c.a1,r)&&Object.is(c.a2,o)&&Object.is(c.a3,i)||(c.store!==t&&(s.didChangeStore=!0),c.store=t,c.selector=n,c.a1=r,c.a2=o,c.a3=i,c.value=n(t.getSnapshot(),r,o,i))):(c={store:t,selector:n,a1:r,a2:o,a3:i,value:n(t.getSnapshot(),r,o,i)},s.syncHooks.push(c)),c.value}:function(e,t,n,r,o){return function(e,t,n,r){const o=d(null),i=e=>{const t=o.current;if(t&&Object.is(t.snapshot,e))return t.selection;const n=r(e);return o.current={snapshot:e,selection:n},n};return h(e,()=>i(t()),n&&(()=>i(n())))}(e.subscribe,e.getSnapshot,e.getSnapshot,e=>t(e,n,r,o))};function uo(e,t,n,r,o){return lo(e,t,n,r,o)}co={before(e){e.syncIndex=0,e.didInitialize||(e.syncTick=1,e.syncHooks=[],e.didChangeStore=!0,e.getSnapshot=()=>{let t=!1;for(let n=0;n<e.syncHooks.length;n+=1){const r=e.syncHooks[n],o=r.selector(r.store.state,r.a1,r.a2,r.a3);Object.is(r.value,o)||(t=!0,r.value=o)}return t&&(e.syncTick+=1),e.syncTick})},after(e){e.syncHooks.length>0&&(e.didChangeStore&&(e.didChangeStore=!1,e.subscribe=t=>{const n=/* @__PURE__ */new Set;for(const o of e.syncHooks)n.add(o.store);const r=[];for(const e of n)r.push(e.subscribe(t));return()=>{for(const e of r)e()}}),f(e.subscribe,e.getSnapshot,e.getSnapshot))}},io.push(co);var po=class{static create(e){return new this(e)}constructor(e){this.state=e,this.listeners=/* @__PURE__ */new Set,this.updateTick=0}subscribe=e=>(this.listeners.add(e),()=>{this.listeners.delete(e)});getSnapshot=()=>this.state;setState(e){if(this.state===e)return;this.state=e,this.updateTick+=1;const t=this.updateTick;for(const n of this.listeners){if(t!==this.updateTick)return;n(e)}}update(e){for(const t in e)if(!Object.is(this.state[t],e[t]))return void this.setState({...this.state,...e})}set(e,t){Object.is(this.state[e],t)||this.setState({...this.state,[e]:t})}notifyAll(){const e={...this.state};this.setState(e)}use(e,t,n,r){return uo(this,e,t,n,r)}},ho={...e},fo=ho.useInsertionEffect,mo=fo&&fo!==ho.useLayoutEffect?fo:e=>e();function go(e){const t=Zr(yo).current;return t.next=e,mo(t.effect),t.trampoline}function yo(){const e={next:void 0,callback:bo,trampoline:(...t)=>e.callback?.(...t),effect:()=>{e.callback=e.next}};return e}function bo(){}var vo=class extends po{constructor(e,t={},n){super(e),this.context=t,this.selectors=n}useSyncedValue(t,n){e.useDebugValue(t);const r=this;Qr(()=>{r.state[t]!==n&&r.set(t,n)},[r,t,n])}useSyncedValueWithCleanup(e,t){const n=this;Qr(()=>(n.state[e]!==t&&n.set(e,t),()=>{n.set(e,void 0)}),[n,e,t])}useSyncedValues(e){const t=this,n=Object.values(e);Qr(()=>{t.update(e)},[t,...n])}useControlledProp(t,n){e.useDebugValue(t);const r=this,o=void 0!==n;Qr(()=>{o&&!Object.is(r.state[t],n)&&r.setState({...r.state,[t]:n})},[r,t,n,o])}select(e,t,n,r){return(0,this.selectors[e])(this.state,t,n,r)}useState(t,n,r,o){return e.useDebugValue(t),uo(this,this.selectors[t],n,r,o)}useContextCallback(t,n){e.useDebugValue(t);const r=go(n??Yr);this.context[t]=r}useStateSetter(t){const n=e.useRef(void 0);return void 0===n.current&&(n.current=e=>{this.set(t,e)}),n.current}observe(e,t){let n;n="function"==typeof e?e:this.selectors[e];let r=n(this.state);return t(r,r,this),this.subscribe(e=>{const o=n(e);if(!Object.is(r,o)){const e=r;r=o,t(o,e,this)}})}};function wo(){return"undefined"!=typeof window}function xo(e){return ko(e)?(e.nodeName||"").toLowerCase():"#document"}function So(e){var t;return(null==e||null==(t=e.ownerDocument)?void 0:t.defaultView)||window}function ko(e){return!!wo()&&(e instanceof Node||e instanceof So(e).Node)}function Co(e){return!!wo()&&(e instanceof Element||e instanceof So(e).Element)}function Eo(e){return!!wo()&&(e instanceof HTMLElement||e instanceof So(e).HTMLElement)}function Io(e){return!(!wo()||"undefined"==typeof ShadowRoot)&&(e instanceof ShadowRoot||e instanceof So(e).ShadowRoot)}function Mo(e){return/^(html|body|#document)$/.test(xo(e))}function To(e){return So(e).getComputedStyle(e)}function Ro(e){if("html"===xo(e))return e;const t=e.assignedSlot||e.parentNode||Io(e)&&e.host||function(e){var t;return null==(t=(ko(e)?e.ownerDocument:e.document)||window.document)?void 0:t.documentElement}(e);return Io(t)?t.host:t}function Oo(...e){return()=>{for(let t=0;t<e.length;t+=1){const n=e[t];n&&n()}}}function Ao(e){return e?.ownerDocument||document}function _o(e,t,n,r){return e.addEventListener(t,n,r),()=>{e.removeEventListener(t,n,r)}}var Do=null;globalThis.requestAnimationFrame;var Po=new class{callbacks=[];callbacksCount=0;nextId=1;startId=1;isScheduled=!1;tick=e=>{this.isScheduled=!1;const t=this.callbacks,n=this.callbacksCount;if(this.callbacks=[],this.callbacksCount=0,this.startId=this.nextId,n>0)for(let r=0;r<t.length;r+=1)t[r]?.(e)};request(e){const t=this.nextId;return this.nextId+=1,this.callbacks.push(e),this.callbacksCount+=1,this.isScheduled||(requestAnimationFrame(this.tick),this.isScheduled=!0),t}cancel(e){const t=e-this.startId;t<0||t>=this.callbacks.length||null!==this.callbacks[t]&&(this.callbacks[t]=null,this.callbacksCount-=1)}},No=class e{static create(){return new e}static request(e){return Po.request(e)}static cancel(e){return Po.cancel(e)}currentId=Do;request(e){this.cancel(),this.currentId=Po.request(()=>{this.currentId=Do,e()})}cancel=()=>{this.currentId!==Do&&(Po.cancel(this.currentId),this.currentId=Do)};disposeEffect=()=>this.cancel};function Lo(){const e=Zr(No.create).current;return Gr(e.disposeEffect),e}var Fo=class e{static create(){return new e}currentId=0;start(e,t){this.clear(),this.currentId=setTimeout(()=>{this.currentId=0,t()},e)}isStarted(){return 0!==this.currentId}clear=()=>{0!==this.currentId&&(clearTimeout(this.currentId),this.currentId=0)};disposeEffect=()=>this.clear};function zo(){const e=Zr(Fo.create).current;return Gr(e.disposeEffect),e}var $o=0;function Bo(e,t){if("string"==typeof e)return{description:e};if("function"==typeof e){const n=e(t);return"string"==typeof n?{description:n}:n}return e}var{userAgent:Wo,platform:Uo,maxTouchPoints:Ho}="undefined"==typeof navigator?{userAgent:"",platform:"",maxTouchPoints:0}:{userAgent:navigator.userAgent,platform:navigator.platform??"",maxTouchPoints:navigator.maxTouchPoints??0},jo=Wo.toLowerCase(),qo=Uo.toLowerCase(),Vo=/^i(os$|p)/.test(qo)||"macintel"===qo&&Ho>1,Yo="android",Ko=qo===Yo||jo.includes(Yo),Xo=!Vo&&qo.startsWith("mac"),Go=(qo.startsWith("win"),!Ko&&/^(linux|chrome os)/.test(qo),Xo||Vo),Jo="undefined"!=typeof CSS&&!!CSS.supports?.("-webkit-backdrop-filter:none"),Zo=(!Jo&&jo.includes("firefox"),!Jo&&jo.includes("chrom"),Go),Qo=/jsdom|happydom/.test(jo);function ei(e){let t=e.activeElement;for(;null!=t?.shadowRoot?.activeElement;)t=t.shadowRoot.activeElement;return t}function ti(e,t){if(!e||!t)return!1;const n=t.getRootNode?.();if(e.contains(t))return!0;if(n&&Io(n)){let n=t;for(;n;){if(e===n)return!0;n=n.parentNode||n.host}}return!1}function ni(e){return"composedPath"in e?e.composedPath()[0]??e.target:e.target}var ri="data-base-ui-focusable",oi="data-starting-style",ii="data-ending-style",si={[oi]:""},ai={[ii]:""},ci={transitionStatus:e=>"starting"===e?si:"ending"===e?ai:null},li="data-open",ui="data-closed",di="data-anchor-hidden",pi={[li]:""},hi={[ui]:""},fi={[di]:""},mi={open:e=>e?pi:hi,anchorHidden:e=>e?fi:null},gi={...mi,...ci};function yi(e,t){if(null==t)return!1;if("composedPath"in e)return e.composedPath().includes(t);const n=e;return null!=n.target&&t.contains(n.target)}function bi(e){return Eo(e)&&e.matches("input:not([type='hidden']):not([disabled]),[contenteditable]:not([contenteditable='false']),textarea:not([disabled])")}function vi(e){return!!e&&"combobox"===e.getAttribute("role")&&bi(e)}function wi(e){if(!e||Qo)return!0;try{return e.matches(":focus-visible")}catch(t){return!0}}function xi(e){return e?e.hasAttribute("data-base-ui-focusable")?e:e.querySelector("[data-base-ui-focusable]")||e:null}function Si(e,t,n=!0){return e.filter(e=>e.parentId===t).flatMap(t=>[...!n||t.context?.open?[t]:[],...Si(e,t.id,n)])}function ki(e,t){let n=[],r=e.find(e=>e.id===t)?.parentId;for(;r;){const t=e.find(e=>e.id===r);r=t?.parentId,t&&(n=n.concat(t))}return n}function Ci(e){return!(""!==e.pointerType||!e.isTrusted)||(Ko&&e.pointerType?"click"===e.type&&1===e.buttons:0===e.detail&&!e.pointerType)}function Ei(e,t){return t<0||t>=e.length}function Ii(e,{startingIndex:t=-1,decrement:n=!1,disabledIndices:r,amount:o=1}={}){let i=t;do{i+=n?-o:o}while(i>=0&&i<=e.length-1&&Mi(e,i,r));return i}function Mi(e,t,n){if("function"==typeof n?n(t):n?.includes(t))return!0;const r=e[t];return!!r&&(!Ti(r)||!!r.matches(":disabled")||!n&&(r.hasAttribute("disabled")||"true"===r.getAttribute("aria-disabled")))}function Ti(e,t=(e?To(e):null)){return!(!(e&&e.isConnected&&t)||function(e){return"hidden"===e.visibility||"collapse"===e.visibility}(t))&&("function"==typeof e.checkVisibility?e.checkVisibility():"none"!==t.display&&"contents"!==t.display)}function Ri(e){const t=e.assignedSlot;if(t)return t;if(e.parentElement)return e.parentElement;const n=e.getRootNode();return Io(n)?n.host:null}function Oi(e){for(const t of Array.from(e.children))if("summary"===xo(t))return t;return null}function Ai(e,t){const n=Oi(t);return!!n&&(e===n||ti(n,e))}function _i(e){const t=e?xo(e):"";return null!=e&&e.matches('a[href],button,input,select,textarea,summary,details,iframe,object,embed,[tabindex],[contenteditable]:not([contenteditable="false"]),audio[controls],video[controls]')&&("summary"!==t||null!=e.parentElement&&"details"===xo(e.parentElement)&&Oi(e.parentElement)===e)&&("details"!==t||null==Oi(e))&&("input"!==t||"hidden"!==e.type)}function Di(e){if(!_i(e)||!e.isConnected||e.matches(":disabled"))return!1;for(let t=e;t;t=Ri(t)){const n=t!==e,r="slot"===xo(t);if(t.hasAttribute("inert"))return!1;if(n&&"details"===xo(t)&&!t.open&&!Ai(e,t)||t.hasAttribute("hidden")||!r&&!Pi(t,n))return!1}return!0}function Pi(e,t){const n=To(e);return t?"none"!==n.display:Ti(e,n)}function Ni(e){const t=e.tabIndex;if(t<0){const t=xo(e);if("details"===t||"audio"===t||"video"===t||Eo(e)&&e.isContentEditable)return 0}return t}function Li(e){if("input"!==xo(e))return null;const t=e;return"radio"===t.type&&""!==t.name?t:null}function Fi(e){if(Eo(e)&&"slot"===xo(e)){const t=e.assignedElements({flatten:!0});if(t.length>0)return t}return Eo(e)&&e.shadowRoot?Array.from(e.shadowRoot.children):Array.from(e.children)}function zi(e,t){Fi(e).forEach(e=>{_i(e)&&t.push(e),zi(e,t)})}function $i(e,t,n){Fi(e).forEach(e=>{Eo(e)&&e.matches(t)&&n.push(e),$i(e,t,n)})}function Bi(e){return Di(e)&&Ni(e)>=0}function Wi(e){const t=[];return zi(e,t),t.filter(Di)}function Ui(e){const t=Wi(e);return t.filter(e=>Ni(e)>=0&&function(e,t){const n=Li(e);if(!n)return!0;const r=t.find(e=>{const t=Li(e);return t?.name===n.name&&t.form===n.form&&t.checked});return r?r===n:t.find(e=>{const t=Li(e);return t?.name===n.name&&t.form===n.form})===n}(e,t))}function Hi(e,t){const n=Ui(e),r=n.length;if(0===r)return;const o=ei(Ao(e)),i=n.indexOf(o);return n[-1===i?1===t?0:r-1:i+t]}function ji(e){return Hi(Ao(e).body,1)||e}function qi(e){return Hi(Ao(e).body,-1)||e}function Vi(e,t){const n=t||e.currentTarget,r=e.relatedTarget;return!r||!ti(n,r)}function Yi(e){const t=[];$i(e,"[data-tabindex]",t),t.forEach(e=>{const t=e.dataset.tabindex;delete e.dataset.tabindex,t?e.setAttribute("tabindex",t):e.removeAttribute("tabindex")})}function Ki(e){const t=/* @__PURE__ */new Map;let n=0,r=0;return e.forEach((e,o)=>{const i="ending"===e.transitionStatus;t.set(e.id,{value:e,domIndex:o,visibleIndex:i?-1:n,offsetY:r}),r+=e.height||0,i||(n+=1)}),t}function Xi(e,t){let n=0;return e.map(e=>{if("ending"===e.transitionStatus)return e;const r=n>=t;return n+=1,e.limited===r?e:{...e,limited:r}})}var Gi={toasts:e=>e.toasts,isEmpty:e=>0===e.toasts.length,toast:(e,t)=>e.toastMetadata.get(t)?.value,toastIndex:(e,t)=>e.toastMetadata.get(t)?.domIndex??-1,toastOffsetY:(e,t)=>e.toastMetadata.get(t)?.offsetY??0,toastVisibleIndex:(e,t)=>e.toastMetadata.get(t)?.visibleIndex??-1,focused:e=>e.focused,expanded:e=>e.hovering||e.focused,expandedOrOutOfFocus:e=>e.hovering||e.focused||!e.isWindowFocused,prevFocusElement:e=>e.prevFocusElement},Ji=class extends vo{timers=/* @__PURE__ */new Map;areTimersPaused=!1;constructor(e){super({...e,toastMetadata:Ki(e.toasts)},{},Gi)}setViewport=e=>{this.set("viewport",e)};syncProviderProps(e,t){const n=this.state.limit!==t;if(this.state.timeout===e&&!n)return;const r={timeout:e,limit:t};if(n){const e=Xi(this.state.toasts,t);r.toasts=e,r.toastMetadata=Ki(e)}this.update(r)}disposeEffect=()=>()=>{this.timers.forEach(e=>{e.timeout?.clear()}),this.timers.clear()};removeToast(e,t=!1){const n=Gi.toastIndex(this.state,e);if(-1===n)return;const r=this.state.toasts[n];t||r?.onRemove?.();const o=[...this.state.toasts];o.splice(n,1),this.setToasts(o)}addToast=e=>{const{timeout:t,limit:n}=this.state,r=e.id||($o+=1,`toast-${Math.random().toString(36).slice(2,6)}-${$o}`);if(e.id){const t=Gi.toast(this.state,e.id);if(t){if("ending"!==t.transitionStatus){const{id:t,transitionStatus:n,...r}=e;return this.updateToastInternal(e.id,r,!0,!0),e.id}this.removeToast(e.id,!0)}}const o={...e,id:r,updateKey:0,transitionStatus:"starting"},i=[o,...this.state.toasts];this.setToasts(Xi(i,n));const s=o.timeout??t;return"loading"!==o.type&&s>0&&this.scheduleTimer(r,s,()=>this.closeToast(r)),Gi.expandedOrOutOfFocus(this.state)&&this.pauseTimers(),r};updateToast=(e,t)=>{const n=Gi.toast(this.state,e);n&&"ending"!==n.transitionStatus&&this.updateToastInternal(e,"function"==typeof t?t(n):t,!1,!0)};updateToastInternal=(e,t,n=!1,r=!1)=>{const{timeout:o,toasts:i}=this.state,s=Gi.toast(this.state,e);if(!s)return;if("ending"===s.transitionStatus)return;const a={...s,...t,...r&&{updateKey:s.updateKey+1}};this.setToasts(i.map(t=>t.id===e?a:t));const c=a.timeout??o,l=s.timeout??o,u=Object.hasOwn(t,"timeout"),d="ending"!==a.transitionStatus&&"loading"!==a.type&&c>0,p=this.timers.has(e),h=l!==c,f="loading"===s.type;d||!p?d&&(!p||h||u||f||n)&&(this.clearTimer(e),this.scheduleTimer(e,c,()=>this.closeToast(e)),Gi.expandedOrOutOfFocus(this.state)&&this.pauseTimers()):this.clearTimer(e)};closeToast=e=>{const t=void 0===e,{limit:n,toasts:r}=this.state;let o;if(t)o=r,this.clearTimers();else{const t=Gi.toast(this.state,e);if(!t)return;o=[t],this.clearTimer(e)}const i=Xi(r.map(n=>t||n.id===e?{...n,transitionStatus:"ending",height:0}:n),n);this.setToasts(i,!i.some(e=>"ending"!==e.transitionStatus)),o.forEach(e=>{"ending"!==e.transitionStatus&&e.onClose?.()}),this.handleFocusManagement(e)};promiseToast=(e,t)=>{const n=Bo(t.loading),r=this.addToast({...n,type:"loading"}),o=e.then(e=>{const n=Bo(t.success,e);return this.updateToast(r,{...n,type:"success",timeout:n.timeout}),e}).catch(e=>{const n=Bo(t.error,e);return this.updateToast(r,{...n,type:"error",timeout:n.timeout}),Promise.reject(e)});return{}.hasOwnProperty.call(t,"setPromise")&&t.setPromise(o),o};pauseTimers(){this.areTimersPaused||(this.areTimersPaused=!0,this.timers.forEach(e=>{e.timeout&&(e.timeout.clear(),e.remaining=Math.max(e.remaining-(Date.now()-e.start),0))}))}resumeTimers(){this.areTimersPaused&&(this.areTimersPaused=!1,this.timers.forEach((e,t)=>{e.remaining=e.remaining>0?e.remaining:e.delay,e.timeout??=Fo.create(),e.timeout.start(e.remaining,()=>{this.handleTimerFired(t),e.callback()}),e.start=Date.now()}))}restoreFocusToPrevElement(){this.state.prevFocusElement?.focus({preventScroll:!0})}handleDocumentPointerDown=e=>{if("touch"!==e.pointerType)return;const t=ni(e);ti(this.state.viewport,t)||(this.resumeTimers(),this.update({hovering:!1,focused:!1}))};scheduleTimer(e,t,n){const r=Date.now(),o=Gi.expandedOrOutOfFocus(this.state)?void 0:Fo.create();o?.start(t,()=>{this.handleTimerFired(e),n()}),this.timers.set(e,{timeout:o,start:r,delay:t,remaining:t,callback:n})}clearTimers(){this.timers.forEach(e=>{e.timeout?.clear()}),this.timers.clear(),this.areTimersPaused=!1}clearTimer(e){this.timers.get(e)?.timeout?.clear(),this.timers.delete(e),this.resetPausedStateIfNoTimersRemain()}handleTimerFired(e){this.timers.delete(e),this.resetPausedStateIfNoTimersRemain()}resetPausedStateIfNoTimersRemain(){0===this.timers.size&&(this.areTimersPaused=!1)}setToasts(e,t=0===e.length){const n={toasts:e,toastMetadata:Ki(e)};t&&(n.hovering=!1,n.focused=!1),this.update(n)}handleFocusManagement(e){const t=ei(Ao(this.state.viewport));if(!this.state.viewport||!ti(this.state.viewport,t)||!wi(t))return;if(void 0===e)return void this.restoreFocusToPrevElement();const n=Gi.toasts(this.state),r=Gi.toastIndex(this.state,e),o=(e,t)=>{for(let r=e;r>=0&&r<n.length;r+=t)if("ending"!==n[r].transitionStatus)return n[r];return null},i=o(r+1,1)??o(r-1,-1);i?i.ref?.current?.focus():this.restoreFocusToPrevElement()}},Zi=function(t){const{children:n,timeout:r=5e3,limit:o=3,toastManager:i}=t,s=Zr(()=>new Ji({timeout:r,limit:o,viewport:null,toasts:[],hovering:!1,focused:!1,isWindowFocused:!0,prevFocusElement:null})).current;return Gr(s.disposeEffect),e.useEffect(function(){if(i)return i[" subscribe"](({action:e,options:t})=>{const n=t.id;"promise"===e&&t.promise?s.promiseToast(t.promise,t):"update"===e&&n?s.updateToast(n,t.updates):"close"===e?s.closeToast(n):s.addToast(t)})},[s,i]),/*#__PURE__*/v(to.Provider,{value:s,children:[/*#__PURE__*/b(Qi,{store:s,timeout:r,limit:o}),n]})};function Qi(e){const{store:t,timeout:n,limit:r}=e;return Qr(()=>{t.syncProviderProps(n,r)},[t,n,r]),null}var es={clipPath:"inset(50%)",overflow:"hidden",whiteSpace:"nowrap",border:0,padding:0,width:1,height:1,margin:-1,position:"fixed",top:0,left:0},ts=/*#__PURE__*/e.forwardRef(function(t,n){const[r,o]=e.useState();return Qr(()=>{Zo&&Jo&&o("button")},[]),/*#__PURE__*/b("span",{...t,ref:n,style:es,"aria-hidden":!r||void 0,tabIndex:0,role:r,"data-base-ui-focus-guard":""})});function ns(e,t,n,r){const o=Zr(rs).current;return function(e,t,n,r,o){return e.refs[0]!==t||e.refs[1]!==n||e.refs[2]!==r||e.refs[3]!==o}(o,e,t,n,r)&&os(o,[e,t,n,r]),o.callback}function rs(){return{callback:null,cleanup:null,refs:[]}}function os(e,t){e.refs=t,t.every(e=>null==e)?e.callback=null:e.callback=n=>{if(e.cleanup&&(e.cleanup(),e.cleanup=null),null!=n){const r=Array(t.length).fill(null);for(let e=0;e<t.length;e+=1){const o=t[e];if(null!=o)switch(typeof o){case"function":{const t=o(n);"function"==typeof t&&(r[e]=t);break}case"object":o.current=n}}e.cleanup=()=>{for(let e=0;e<t.length;e+=1){const n=t[e];if(null!=n)switch(typeof n){case"function":{const t=r[e];"function"==typeof t?t():n(null);break}case"object":n.current=null}}}}}}function is(t){if(!/*#__PURE__*/e.isValidElement(t))return null;const n=t,r=n.props;return(oo(19)?r?.ref:n.ref)??null}function ss(e,t){return e&&!t?e:!e&&t?t:e||t?{...e,...t}:void 0}var as={};function cs(e,t,n,r,o){if(!(n||r||o||e))return ls(t);let i=ls(e);return t&&(i=us(i,t)),n&&(i=us(i,n)),r&&(i=us(i,r)),o&&(i=us(i,o)),i}function ls(e){return ps(e)?{...hs(e,as)}:function(e){const t={...e};for(const n in t){const e=t[n];ds(n,e)&&(t[n]=ms(e))}return t}(e)}function us(e,t){return ps(t)?hs(t,e):function(e,t){if(!t)return e;for(const n in t){const r=t[n];switch(n){case"style":e[n]=ss(e.style,r);break;case"className":e[n]=ys(e.className,r);break;default:ds(n,r)?e[n]=fs(e[n],r):e[n]=r}}return e}(e,t)}function ds(e,t){const n=e.charCodeAt(0),r=e.charCodeAt(1),o=e.charCodeAt(2);return 111===n&&110===r&&o>=65&&o<=90&&("function"==typeof t||void 0===t)}function ps(e){return"function"==typeof e}function hs(e,t){return ps(e)?e(t):e??as}function fs(e,t){return t?e?(...n)=>{const r=n[0];if(bs(r)){const o=r;gs(o);const i=t(...n);return o.baseUIHandlerPrevented||e?.(...n),i}const o=t(...n);return e?.(...n),o}:ms(t):e}function ms(e){return e?(...t)=>{const n=t[0];return bs(n)&&gs(n),e(...t)}:e}function gs(e){return e.preventBaseUIHandler=()=>{e.baseUIHandlerPrevented=!0},e}function ys(e,t){return t?e?t+" "+e:t:e}function bs(e){return null!=e&&"object"==typeof e&&"nativeEvent"in e}function vs(t,n,o={}){let i=n.render;!1!==o.enabled&&(i=function(t){if(t?.$$typeof!==ws)return t;const n=e.Children.toArray(t)[0];/*#__PURE__*/
|
|
2
2
|
return e.isValidElement(n)?n:t}(i));const s=function(e,t,n){const{className:r,style:o}=e,{state:i=Xr,ref:s,props:a,stateAttributesMapping:c,enabled:l=!0}=t,u=l?function(e,t){return"function"==typeof e?e(t):e}(r,i):void 0,d=l?function(e,t){return"function"==typeof e?e(t):e}(o,i):void 0,p=l?function(e,t){const n={};for(const r in e){const o=e[r];if(t?.hasOwnProperty(r)){const e=t[r](o);null!=e&&Object.assign(n,e);continue}!0===o?n[`data-${r.toLowerCase()}`]="":o&&(n[`data-${r.toLowerCase()}`]=o.toString())}return n}(i,c):Xr,h=l&&a?function(e){return Array.isArray(e)?function(e){if(0===e.length)return as;if(1===e.length)return ls(e[0]);let t=ls(e[0]);for(let n=1;n<e.length;n+=1)t=us(t,e[n]);return t}(e):cs(void 0,e)}(a):void 0,f=l?ss(p,h)??{}:Xr;return"undefined"!=typeof document&&(l?Array.isArray(s)?f.ref=function(e){const t=Zr(rs).current;return function(e,t){return e.refs.length!==t.length||e.refs.some((e,n)=>e!==t[n])}(t,e)&&os(t,e),t.callback}([f.ref,is(n),...s]):f.ref=ns(f.ref,is(n),s):ns(null,null)),l?(void 0!==u&&(f.className=ys(f.className,u)),void 0!==d&&(f.style=ss(f.style,d)),f):Xr}(n,o,i);return!1===o.enabled?null:function(t,n,o,i){if(n){if("function"==typeof n)return n(o,i);const t=cs(o,n.props);return t.ref=o.ref,/*#__PURE__*/e.cloneElement(n,t)}if(t&&"string"==typeof t)return function(t,n){return"button"===t?/*#__PURE__*/r("button",{type:"button",...n,key:n.key}):"img"===t?/*#__PURE__*/r("img",{alt:"",...n,key:n.key}):/*#__PURE__*/e.createElement(t,n)}(t,o);throw new Error(eo(8))}(t,i,s,o.state??Xr)}var ws=Symbol.for("react.lazy"),xs="--toast-frontmost-height",Ss=/*#__PURE__*/e.forwardRef(function(t,n){const{render:r,className:o,style:i,children:s,...a}=t,c=no(),l=zo(),u=e.useRef(!1),d=e.useRef(!1),p=e.useRef(!1),h=c.useState("isEmpty"),f=c.useState("toasts"),m=c.useState("focused"),g=c.useState("expanded"),y=c.useState("prevFocusElement"),w=f[0]?.height,x=f.some(e=>"ending"===e.transitionStatus),S=f.filter(e=>"high"===e.priority);function k(){c.state.toasts.some(e=>"ending"===e.transitionStatus)||p.current||!d.current||(c.state.isWindowFocused&&c.resumeTimers(),c.set("hovering",!1),d.current=!1)}function C(){c.pauseTimers(),c.set("hovering",!0),d.current=!1}function E(e){"touch"===e.pointerType&&(p.current=!1,k())}function I(){u.current?u.current=!1:m||wi(ei(Ao(c.state.viewport)))&&(c.set("focused",!0),c.pauseTimers())}e.useEffect(()=>{const e=c.state.viewport;if(!e||h)return;const t=So(e),n=Ao(e);return Oo(_o(t,"keydown",function(t){"F6"===t.key&&ni(t)!==e&&(t.preventDefault(),c.set("prevFocusElement",ei(n)),e?.focus({preventScroll:!0}),c.pauseTimers(),c.set("focused",!0))}),_o(t,"blur",function(e){ni(e)===t&&(c.set("isWindowFocused",!1),c.pauseTimers())},!0),_o(t,"focus",function(n){if(n.relatedTarget)return;const r=ni(n),o=ei(Ao(e));r!==t&&ti(e,r)&&wi(o)||c.resumeTimers(),l.start(0,()=>c.set("isWindowFocused",!0))},!0),_o(n,"pointerdown",c.handleDocumentPointerDown,!0))},[c,l,h]),e.useEffect(k,[x,c]);const M={tabIndex:-1,role:"region","aria-live":"polite","aria-atomic":!1,"aria-relevant":"additions text","aria-label":"Notifications",onMouseEnter:C,onMouseMove:C,onMouseLeave:function(){d.current=!0,k()},onFocus:I,onBlur:function(e){m&&!ti(c.state.viewport,e.relatedTarget)&&(c.set("focused",!1),c.state.isWindowFocused&&c.resumeTimers())},onKeyDown:function(e){"Tab"===e.key&&e.shiftKey&&ni(e.nativeEvent)===c.state.viewport&&(e.preventDefault(),c.restoreFocusToPrevElement())},onClick:I,onPointerDown:function(e){"touch"===e.pointerType&&(p.current=!0)},onPointerUp:E,onPointerCancel:E,style:{[xs]:w?`${w}px`:void 0}},T={expanded:g},R=!h&&y&&/*#__PURE__*/b(ts,{onFocus:function(e){u.current=!0;const t=e.relatedTarget===c.state.viewport?f.find(e=>"ending"!==e.transitionStatus&&!e.limited):void 0;t?t.ref?.current?.focus():c.restoreFocusToPrevElement()}}),O=vs("div",t,{ref:[n,c.setViewport],state:T,props:[M,a,{children:/*#__PURE__*/v(e.Fragment,{children:[R,s,R]})}]});/*#__PURE__*/
|
|
3
3
|
return v(e.Fragment,{children:[R,O,!m&&S.length>0&&/*#__PURE__*/b("div",{style:es,children:S.map(e=>/*#__PURE__*/v("div",{role:"alert","aria-atomic":!0,children:[/*#__PURE__*/b("div",{children:e.title}),/*#__PURE__*/b("div",{children:e.description})]},e.id))})]})});function ks(e){return oo(19)?e:e?"true":void 0}var Cs=/*#__PURE__*/e.createContext(void 0);function Es(){const t=e.useContext(Cs);if(!t)throw new Error(eo(66));return t}function Is(e){return null==e?e:"current"in e?e.current:e}var Ms=null;function Ts(t){const{enabled:n=!0,open:r,ref:o,batch:i=!1,onComplete:s}=t,a=go(s),c=function(e,t=!1,n=!1){const r=Lo();return go((o,i=null)=>{r.cancel();const s=Is(e);if(null==s)return;const a=s,c=()=>{n?function(){if(!Ms){const e=[];Ms=e,queueMicrotask(()=>{Ms=null,g.flushSync(()=>{for(const t of e)t()})})}Ms.push(()=>{i?.aborted||o()})}():g.flushSync(o)};if("function"!=typeof a.getAnimations||globalThis.BASE_UI_ANIMATIONS_DISABLED)o();else{if(t){const e=oi;if(!a.hasAttribute(e))return void r.request(l);const t=new MutationObserver(()=>{a.hasAttribute(e)||(t.disconnect(),l())});return t.observe(a,{attributes:!0,attributeFilter:[e]}),void i?.addEventListener("abort",()=>t.disconnect(),{once:!0})}r.request(l)}function l(){Promise.all(a.getAnimations().map(e=>e.finished)).then(()=>{i?.aborted||c()},()=>{i?.aborted||(a.getAnimations().some(e=>e.pending||"finished"!==e.playState)?l():c())})}})}(o,r,i);e.useEffect(()=>{if(!n)return;const e=new AbortController;return c(a,e.signal),()=>{e.abort()}},[n,r,a,c])}var Rs={clipPath:"inset(50%)",position:"fixed",top:0,left:0};function Os(e,t,n){switch(e){case"up":return-n;case"down":return n;case"left":return-t;case"right":return t;default:return 0}}var As="--toast-index",_s="--toast-offset-y",Ds="--toast-height",Ps="--toast-swipe-movement-x",Ns="--toast-swipe-movement-y",Ls="data-swipe-direction",Fs={...ci,swipeDirection:e=>e?{[Ls]:e}:null},zs=/*#__PURE__*/e.forwardRef(function(t,n){const{toast:r,render:o,className:i,swipeDirection:s=["down","right"],style:a,...c}=t,l=void 0!==r.positionerProps?.anchor;let u=[];l||(u=Array.isArray(s)?s:[s]);const d=u.length>0,p=no(),[h,f]=e.useState(void 0),[m,y]=e.useState(!1),[v,w]=e.useState(!1),[x,S]=e.useState({x:0,y:0}),[k,C]=e.useState({x:0,y:0,scale:1}),[E,I]=e.useState(),[M,T]=e.useState(),[R,O]=e.useState(null),A=e.useRef(null),_=e.useRef(void 0),D=e.useRef({x:0,y:0}),P=e.useRef({x:0,y:0,scale:1}),N=e.useRef(void 0),L=e.useRef(0),F=e.useRef(!1),z=e.useRef({x:0,y:0}),$=e.useRef(!1),B=e.useRef({x:0,y:0}),W=e.useRef(null),U=e.useRef(null),H=p.useState("toastIndex",r.id),j=p.useState("toastVisibleIndex",r.id),q=p.useState("toastOffsetY",r.id),V=p.useState("focused"),Y=p.useState("expanded");Ts({open:"ending"!==r.transitionStatus,ref:A,onComplete(){"ending"===r.transitionStatus&&p.removeToast(r.id)}});const K=go((e=!1)=>{const t=A.current;if(!t)return;const n=t.style.height;t.style.height="auto";const o=t.offsetHeight;function i(){p.updateToastInternal(r.id,{ref:A,height:o,transitionStatus:void 0})}t.style.height=n,e?g.flushSync(i):i()});function X(e){B.current=e,S(e)}Qr(()=>{const e=_.current;"starting"!==r.transitionStatus&&e===r.id||(void 0!==e&&(f(void 0),C({x:0,y:0,scale:1}),X({x:0,y:0})),_.current=r.id,K())},[K,r.id,r.transitionStatus]),Qr(()=>()=>{U.current?.abort()},[]);const G=go(e=>{if(e.pointerId!==W.current)return;W.current=null,U.current?.abort(),U.current=null,y(!1),w(!1),O(null);const t=P.current;if("pointercancel"===e.type||F.current)return X({x:t.x,y:t.y}),void f(void 0);const n=B.current,o=n.x-t.x,i=n.y-t.y;let s;for(const r of u)if(Os(r,o,i)>40){s=r;break}s?(f(s),p.closeToast(r.id)):(X({x:t.x,y:t.y}),f(void 0))});e.useEffect(()=>{const e=A.current;if(d&&e)return _o(e,"touchmove",function(t){null!==W.current&&ti(e,ni(t))&&t.preventDefault()},{passive:!1})},[d]);const J="high"===r.priority,Z={role:J?"alertdialog":"dialog",tabIndex:0,"aria-modal":!1,"aria-labelledby":E,"aria-describedby":M,"aria-hidden":!(!J||V)||void 0,onPointerDown:d?function(e){if(0!==e.button)return;if("touch"===e.pointerType&&p.pauseTimers(),ni(e.nativeEvent)?.closest('button,a,input,textarea,[role="button"],[data-base-ui-swipe-ignore],[data-swipe-ignore]'))return;F.current=!1,N.current=void 0,L.current=0,W.current=e.pointerId,D.current={x:e.clientX,y:e.clientY},z.current=D.current;const t=e.currentTarget,n=function(e){const t=So(e).getComputedStyle(e).transform;let n=0,r=0,o=1;if(t&&"none"!==t){const e=t.match(/matrix(?:3d)?\(([^)]+)\)/);if(e){const t=e[1].split(", ").map(parseFloat);6===t.length?(n=t[4],r=t[5],o=Math.sqrt(t[0]*t[0]+t[1]*t[1])):16===t.length&&(n=t[12],r=t[13],o=t[0])}}return{x:n,y:r,scale:o}}(t);P.current=n,C(n),X({x:n.x,y:n.y}),p.set("hovering",!0),y(!0),w(!1),O(null),$.current=!0,U.current?.abort();const r=new AbortController;U.current=r;const o=Ao(t);o.addEventListener("pointerup",G,{signal:r.signal}),o.addEventListener("pointercancel",G,{signal:r.signal}),t.setPointerCapture?.(e.pointerId)}:void 0,onPointerMove:d?function(e){if(e.pointerId!==W.current)return;e.preventDefault(),$.current&&(D.current={x:e.clientX,y:e.clientY},$.current=!1);const{clientY:t,clientX:n,movementX:r,movementY:o}=e;(o<0&&t>z.current.y||o>0&&t<z.current.y)&&(z.current={x:z.current.x,y:t}),(r<0&&n>z.current.x||r>0&&n<z.current.x)&&(z.current={x:n,y:z.current.y});const i=n-D.current.x,s=t-D.current.y,a=t-z.current.y,c=n-z.current.x;let l,d=R;if(!v&&Math.sqrt(i*i+s*s)>=1){w(!0);const e=u.includes("left")||u.includes("right"),t=u.includes("up")||u.includes("down");e&&t&&(d=Math.abs(i)>Math.abs(s)?"horizontal":"vertical",O(d))}if(N.current){const e=N.current,t=Os(e,c,a);t>40?(F.current=!1,f(e)):u.includes("left")&&u.includes("right")||u.includes("up")&&u.includes("down")||!(L.current-t>=10)||(F.current=!0)}else"vertical"===d?s>0?l="down":s<0&&(l="up"):"horizontal"===d?i>0?l="right":i<0&&(l="left"):l=Math.abs(i)>=Math.abs(s)?i>0?"right":"left":s>0?"down":"up",l&&u.includes(l)&&(N.current=l,L.current=Os(l,i,s),f(l));const p=function(e,t){const n=e=>e>0?e**.5:-(Math.abs(e)**.5),r=e>0&&!u.includes("right")||e<0&&!u.includes("left"),o=t>0&&!u.includes("down")||t<0&&!u.includes("up");return{x:r?n(e):e,y:o?n(t):t}}(i,s);let h=P.current.x,m=P.current.y;const g=u.includes("left")||u.includes("right"),y=u.includes("up")||u.includes("down");"vertical"!==d&&g&&(h+=p.x),"horizontal"!==d&&y&&(m+=p.y),X({x:h,y:m})}:void 0,onPointerUp:d?G:void 0,onPointerCancel:d?G:void 0,onKeyDown:function(e){if("Escape"===e.key){if(!A.current||!ti(A.current,ei(Ao(A.current))))return;p.closeToast(r.id)}},inert:ks(r.limited),style:{...function(){const e=x.x-k.x,t=x.y-k.y;return{transition:m?"none":void 0,transform:m?`translateX(${x.x}px) translateY(${x.y}px) scale(${k.scale})`:void 0,[Ps]:`${e}px`,[Ns]:`${t}px`}}(),[As]:"ending"===r.transitionStatus?H:j,[_s]:`${q}px`,[Ds]:r.height?`${r.height}px`:void 0}},Q=e.useMemo(()=>({toast:r,setTitleId:I,setDescriptionId:T,recalculateHeight:K,visibleIndex:j,expanded:Y}),[r,I,T,K,j,Y]),ee={transitionStatus:r.transitionStatus,expanded:Y,limited:r.limited||!1,type:r.type,swiping:m,swipeDirection:h},te=vs("div",t,{ref:[n,A],state:ee,stateAttributesMapping:Fs,props:[Z,c]});/*#__PURE__*/
|
|
4
4
|
return b(Cs.Provider,{value:Q,children:te})}),$s=0,Bs=ho.useId;function Ws(t,n){if(void 0!==Bs){const e=Bs();return t??(n?`${n}-${e}`:e)}return function(t,n="mui"){const[r,o]=e.useState(t),i=t||r;return e.useEffect(()=>{null==r&&o(`${n}-${$s+=1}`)},[r,n]),i}(t,n)}function Us(e){return null!=e&&"boolean"!=typeof e&&""!==e&&(!Array.isArray(e)||e.some(Us))}function Hs(t){/*#__PURE__*/
|
|
@@ -62,4 +62,4 @@ return v(vc,{ref:g,position:s?"absolute":"fixed",rounded:"lg",border:!0,overflow
|
|
|
62
62
|
return b(Al,{value:g,children:/* @__PURE__ */b(yc,{ref:o,"data-marketrix-widget":!0,position:"relative",style:{...w,...c&&{width:"100%",height:"100%"}},children:/* @__PURE__ */b(bl,{value:r,children:/* @__PURE__ */v(Rc,{container:r,offsetBottom:"top"===Ll(d).vertical?20:90,children:[y&&/* @__PURE__ */b(yc,{"data-screen-edge-glow":!0,position:"fixed",inset:"0",style:{boxShadow:`inset 0 0 22px 2px ${Tl(g.widget_accent_color,.72)}, inset 0 0 46px 10px ${Tl(g.widget_accent_color,.28)}`,pointerEvents:"none",zIndex:2147483001}}),
|
|
63
63
|
/* @__PURE__ */b(Bl,{label:"Widget",children:/* @__PURE__ */b(yd,{})}),
|
|
64
64
|
/* @__PURE__ */b(Ul,{onPositionCommit:e=>{h(e),c||Le(u,e)}}),
|
|
65
|
-
/* @__PURE__ */b(Oc,{error:i.error,onClearError:()=>s.setError(void 0),...fr.canReconnect()&&{onRetry:()=>{s.setError(void 0),fr.reconnectNow()}},greeting:t&&!i.error?e.widget_greeting:void 0,greetingBody:e.widget_body,onGreetingDismiss:()=>n(!1)})]})})})})},vd={mount:null},wd=null,xd=(e,t)=>{const n=e.attachShadow({mode:"closed"}),r=document.createElement("style");r.textContent=':root,:host{--foreground:oklch(14.5% 0 0);--card:oklch(100% 0 0);--card-foreground:oklch(14.5% 0 0);--primary:oklch(20.5% 0 0);--primary-foreground:oklch(98.5% 0 0);--secondary:oklch(97% 0 0);--secondary-foreground:oklch(20.5% 0 0);--border:oklch(92.2% 0 0);--ring:oklch(70.8% 0 0);--ring-offset:oklch(100% 0 0);--foreground-muted:#1f293799;--foreground-faint:#1f293766;--primary-hover:#3b82f6d9;--secondary-bg:#6b728033;--secondary-hover:#6b72804d;--font-sans:"Inter", ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, "Noto Sans", sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";--radius:.625rem;--shadow-sm:0 1px 3px 0px #0000001a, 0 1px 2px -1px #0000001a;--shadow-lg:0 1px 3px 0px #0000001a, 0 4px 6px -1px #0000001a;--duration-animation:.3s;--duration-fade:.2s;--radius-pill:9999px;--status-processing-rgb:49, 208, 109;--status-error-rgb:208, 52, 44;--overlay-dark:#111827}*,:before,:after{box-sizing:border-box;border:0 solid var(--border);margin:0;padding:0}:host,[data-marketrix-widget]{font-family:var(--font-sans);-webkit-text-size-adjust:100%;-webkit-tap-highlight-color:transparent;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;line-height:1.5}:where([data-marketrix-widget]) :where(h1,h2,h3){font-size:inherit;font-weight:inherit}:where([data-marketrix-widget]) :where(img,svg,video,canvas){vertical-align:middle;display:block}:where([data-marketrix-widget]) :where(img,video){max-width:100%;height:auto}:where([data-marketrix-widget]) :where(button,input,textarea){font:inherit;color:inherit;background:0 0;border-radius:0}:where([data-marketrix-widget]) :where(button){appearance:button}:where([data-marketrix-widget]) :where(textarea){resize:vertical}[data-marketrix-widget] [hidden]{display:none!important}[data-marketrix-widget],[data-marketrix-widget] *{pointer-events:auto;transition:color .2s ease-in-out,background-color .2s ease-in-out,border-color .2s ease-in-out,opacity .2s ease-in-out,box-shadow .2s ease-in-out,transform .2s ease-in-out}[data-resizing=true],[data-resizing=true] *{transition:none!important}@media (prefers-reduced-motion:reduce){[data-marketrix-widget]{--duration-animation:0s!important;--duration-fade:0s!important}}.mtx-button,.mtx-icon-button{cursor:pointer;justify-content:center;align-items:center;transition:all .2s ease-in-out;display:inline-flex}.mtx-button{border:1px solid #0000;gap:8px;font-weight:500}.mtx-button:focus-visible,.mtx-icon-button:focus-visible{box-shadow:0 0 0 2px var(--ring-offset), 0 0 0 4px var(--ring);outline:none}.mtx-button[data-size=sm]{min-height:28px;padding:4px 8px;font-size:.75rem}.mtx-button[data-size=md]{min-height:36px;padding:8px 16px;font-size:.875rem}.mtx-button[data-variant=primary]:hover{background:color-mix(in oklab, var(--primary) 90%, transparent)}.mtx-button[data-variant=secondary]{background:var(--secondary);color:var(--secondary-foreground)}.mtx-button[data-variant=secondary]:hover{background:color-mix(in oklab, var(--secondary) 80%, transparent)}.mtx-button[data-variant=ghost]{color:var(--foreground);border-color:var(--border);background:0 0}.mtx-button[data-variant=ghost]:hover{background:var(--border)}.mtx-button[data-variant=chip]{background:var(--secondary-bg);color:var(--foreground)}.mtx-button[data-variant=chip]:hover{background:var(--primary);color:var(--primary-foreground);border-color:var(--primary)}.mtx-button[data-variant=bare],.mtx-button[data-variant=tab]{background:0 0;border-color:#0000;min-height:0;padding:0}.mtx-button[data-variant=bare]{color:inherit}.mtx-button[data-variant=tab]{color:var(--foreground-muted);flex:1;min-width:0;height:100%;position:relative}.mtx-button[data-variant=tab]:hover{color:var(--foreground)}.mtx-button[data-variant=tab][aria-selected=true]{color:var(--primary);font-weight:600}.mtx-button[data-stacked=true]{flex-direction:column;gap:2px}.mtx-button[data-full=true]{width:100%}.mtx-icon-button{border-radius:var(--radius-pill);border:none;flex-shrink:0}.mtx-icon-button[data-size=xs]{width:20px;min-width:20px;height:20px}.mtx-icon-button[data-size=sm]{width:28px;min-width:28px;height:28px}.mtx-button[data-variant=primary],.mtx-icon-button[data-variant=primary]{background:var(--primary);color:var(--primary-foreground)}.mtx-icon-button[data-variant=primary]:hover{background:var(--primary-hover)}.mtx-icon-button[data-variant=secondary]{background:var(--secondary-bg);color:var(--foreground)}.mtx-icon-button[data-variant=secondary]:hover{background:var(--secondary-hover)}.mtx-icon-button[data-variant=ghost]{color:var(--foreground);opacity:.6;background:0 0}.mtx-icon-button[data-variant=ghost]:hover{opacity:1}.mtx-button[data-disabled=true],.mtx-icon-button[data-disabled=true]{opacity:.5;cursor:not-allowed;pointer-events:none}.mtx-icon{flex-shrink:0;display:inline-block}.mtx-avatar{flex-shrink:0}.mtx-spinner-ring{border-radius:var(--radius-pill);border-style:solid;border-color:#0000 currentColor currentColor;flex-shrink:0;animation:1s linear infinite mtx-spin}.mtx-visually-hidden{clip-path:inset(50%);white-space:nowrap;border-width:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.mtx-composer:focus-within{border-color:var(--foreground-faint)}.mtx-composer-input{resize:none;width:100%;min-height:0;color:var(--foreground);background:0 0;border:none;padding-left:12px;padding-right:12px;font-size:.875rem;display:block}.mtx-composer-input::placeholder{color:var(--foreground-faint)}.mtx-composer-input:focus{outline:none}.mtx-composer-input:disabled{cursor:not-allowed;opacity:.5}.mtx-mode-chip{border-radius:var(--radius-pill);cursor:pointer;background:var(--secondary-bg);color:var(--foreground-muted);border:none;align-items:center;gap:2px;padding:2px 8px;font-size:11px;font-weight:500;transition:all .2s ease-in-out;display:inline-flex}.mtx-mode-chip[data-active=true]{background:var(--primary);color:var(--primary-foreground);box-shadow:var(--shadow-sm)}.mtx-toast-viewport{flex-direction:column;gap:8px;max-width:420px;display:flex;position:fixed;left:50%;transform:translate(-50%)}.mtx-toast{animation:mtx-fade-in var(--duration-animation) ease-out}.mtx-toast[data-ending-style]{opacity:0;transition:opacity var(--duration-animation) ease-out}.mtx-dialog-backdrop{animation:mtx-dialog-overlay-in var(--duration-fade) ease-out;background:#0003;position:fixed;inset:0}.mtx-dialog-popup{border-radius:var(--radius);background:var(--card);width:100%;max-width:24rem;max-height:85vh;animation:mtx-dialog-content-in var(--duration-animation) ease-out;flex-direction:column;padding:16px;display:flex;position:fixed;top:50%;left:50%;overflow:auto;transform:translate(-50%,-50%)}.mtx-dialog-title{color:var(--foreground);margin-bottom:4px;font-size:1rem;font-weight:600}.mtx-dialog-description{color:var(--foreground-muted);margin-bottom:16px;font-size:.875rem;line-height:1.625}.mtx-fab-anchor{position:fixed}.mtx-fab-anchor[data-preview=true]{position:absolute}.mtx-fab-anchor[data-animated=true]{transition:transform var(--duration-animation) ease-in-out}.mtx-fab{width:56px;height:56px;transition:all var(--duration-animation) ease-in-out;position:relative;overflow:visible}.mtx-fab[data-open=false]:hover{transform:scale(1.1)}.mtx-fab[data-open=true]{opacity:0;pointer-events:none;transform:scale(0)}.mtx-fab-trigger{z-index:10;width:56px;min-width:56px;height:56px;position:relative}.mtx-fab-center{justify-content:center;align-items:center;width:100%;height:100%;position:relative}.mtx-fab-badge{width:48px;height:48px;transition:transform .167s cubic-bezier(.33,0,0,1),opacity .167s cubic-bezier(.33,0,0,1),background-color .167s cubic-bezier(.33,0,0,1);animation:.25s ease-out forwards mtx-launcher-entrance;position:relative;overflow:hidden}.mtx-fab-badge:hover{transition-duration:.25s;transform:scale(1.1)}.mtx-fab-badge:active{transition-duration:.134s;transition-timing-function:cubic-bezier(.45,0,.2,1);transform:scale(.85)}.mtx-fab-icon-layer{justify-content:center;align-items:center;transition-property:transform,opacity;transition-duration:.16s,80ms;transition-timing-function:linear;position:absolute;inset:0}.mtx-fab-avatar{z-index:10;object-fit:contain;width:100%;height:100%;position:relative}.mtx-fab-chevron{z-index:10;color:var(--foreground);pointer-events:none;position:relative}.mtx-fab-stop{z-index:20;border-radius:var(--radius-pill);background:var(--overlay-dark);text-transform:uppercase;letter-spacing:.025em;color:#fff;box-shadow:var(--shadow-lg);opacity:0;pointer-events:none;border:1px solid #ffffff40;padding:4px 10px;font-size:11px;font-weight:600;transition:opacity .15s ease-in-out;position:absolute;top:50%;transform:translateY(-50%)}.mtx-fab-stop[data-side=left]{margin-left:8px;left:100%}.mtx-fab-stop[data-side=right]{margin-right:8px;right:100%}.mtx-fab:hover .mtx-fab-stop,.mtx-fab:focus-within .mtx-fab-stop{opacity:1;pointer-events:auto}.mtx-tab-underline{border-radius:var(--radius-pill);background:var(--primary);opacity:0;height:2px;position:absolute;top:0;left:25%;right:25%}[aria-selected=true]>.mtx-tab-underline{opacity:1}.mtx-live-dot{width:6px;height:6px;display:inline-flex;position:relative}.mtx-live-dot-ping{border-radius:var(--radius-pill);opacity:.75;background:currentColor;width:100%;height:100%;animation:1s cubic-bezier(0,0,.2,1) infinite mtx-ping;display:inline-flex;position:absolute}.mtx-live-dot-core{border-radius:var(--radius-pill);background:currentColor;width:6px;height:6px;display:inline-flex;position:relative}.mtx-fab-glow{pointer-events:none;filter:blur(14px);will-change:transform, opacity;border-radius:50%;width:140%;height:140%;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.mtx-fab-ring{pointer-events:none;z-index:0;position:absolute;inset:-3px;overflow:visible}.mtx-fab-ring rect{fill:none;stroke-width:2.5px;stroke-linecap:round;stroke-linejoin:round;stroke-dasharray:40 120;animation:1.9s cubic-bezier(.4,0,.2,1) infinite mtx-fab-ring-travel}.mtx-fab-ring[data-tone=processing] rect{stroke:rgb(var(--status-processing-rgb));filter:drop-shadow(0 0 3px rgba(var(--status-processing-rgb), .7))}.mtx-fab-ring[data-tone=error] rect{stroke:rgb(var(--status-error-rgb));filter:drop-shadow(0 0 3px rgba(var(--status-error-rgb), .7))}.mtx-fab-glow[data-tone=processing]{--glow-rgb:var(--status-processing-rgb);--glow-op-base:.72;--glow-op-peak:1;--glow-op-near:.38;--glow-op-far:.24;--glow-op-near-peak:.55;--glow-op-far-peak:.33;animation:2s ease-in-out infinite mtx-fab-glow-pulse}.mtx-fab-glow[data-tone=error]{--glow-rgb:var(--status-error-rgb);--glow-op-base:.65;--glow-op-peak:.95;--glow-op-near:.34;--glow-op-far:.22;--glow-op-near-peak:.5;--glow-op-far-peak:.3;animation:1.5s ease-in-out infinite mtx-fab-glow-pulse}[data-screen-edge-glow]{animation:1.6s ease-in-out infinite mtx-screen-edge-pulse}[data-view-transition][data-direction=forward]{animation:.3s both mtx-view-slide-forward}[data-view-transition][data-direction=back]{animation:.3s both mtx-view-slide-back}@keyframes mtx-spin{to{transform:rotate(360deg)}}@keyframes mtx-ping{75%,to{opacity:0;transform:scale(2)}}@keyframes mtx-dialog-overlay-in{0%{opacity:0}to{opacity:1}}@keyframes mtx-dialog-content-in{0%{opacity:0;scale:.96}to{opacity:1;scale:1}}@keyframes mtx-fade-in{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}@keyframes mtx-launcher-entrance{0%{opacity:0;transform:scale(.5)}to{opacity:1;transform:scale(1)}}@keyframes mtx-screen-edge-pulse{0%,to{opacity:.55}50%{opacity:1}}@keyframes mtx-fab-ring-travel{0%{stroke-dashoffset:0;opacity:.5}18%{stroke-dashoffset:-112px;opacity:1}35%{stroke-dashoffset:-160px;opacity:.65}60%{stroke-dashoffset:-160px;opacity:.45}82%{stroke-dashoffset:-272px;opacity:1}to{stroke-dashoffset:-320px;opacity:.6}}@keyframes mtx-fab-glow-pulse{0%,to{opacity:var(--glow-op-base);background:radial-gradient(circle, rgba(var(--glow-rgb), 0) 38%, rgba(var(--glow-rgb), var(--glow-op-near)) 58%, rgba(var(--glow-rgb), var(--glow-op-far)) 68%, transparent 78%);transform:translate(-50%,-50%)scale(1)}50%{opacity:var(--glow-op-peak);background:radial-gradient(circle, rgba(var(--glow-rgb), 0) 34%, rgba(var(--glow-rgb), var(--glow-op-near-peak)) 56%, rgba(var(--glow-rgb), var(--glow-op-far-peak)) 68%, transparent 80%);transform:translate(-50%,-50%)scale(1.1)}}@keyframes mtx-view-slide-forward{0%{opacity:0;transform:translate(20px)}to{opacity:1;transform:translate(0)}}@keyframes mtx-view-slide-back{0%{opacity:0;transform:translate(-20px)}to{opacity:1;transform:translate(0)}}',n.appendChild(r);const o=document.createElement("div");return o.id=t,n.appendChild(o),{shadowRoot:n,mountEl:o}},Sd=e=>{const t=e??document.body,n=document.createElement("div");n.className="marketrix-widget-container",n.style.pointerEvents="auto",e&&Object.assign(n.style,{width:"100%",height:"100%",position:"relative",overflow:"visible"}),t.appendChild(n);const{shadowRoot:r,mountEl:o}=xd(n,"marketrix-widget-root");return Object.assign(o.style,{pointerEvents:"auto",width:"100%",height:"100%",position:"relative"}),{container:n,shadowRoot:r,mountEl:o}},kd=(e,n,r=!1)=>{const o=m(e);return o.render(/* @__PURE__ */b(t.StrictMode,{children:/* @__PURE__ */b(xl,{previewMode:r,children:/* @__PURE__ */b(bd,{config:n})})})),o},Cd=()=>null!==vd.mount,Ed=()=>vd.mount?.config??null,Id=(e,n="neutral")=>{if("undefined"==typeof window||"undefined"==typeof document)return;Md();const r=document.createElement("div");r.id="marketrix-widget-notice-container",r.className="marketrix-widget-notice-container",document.body.appendChild(r);const{mountEl:o}=xd(r,"marketrix-widget-notice-root");(wd=m(o)).render(/* @__PURE__ */b(t.StrictMode,{children:/* @__PURE__ */b(Rc,{container:o,children:/* @__PURE__ */b(Oc,{error:"error"===n?e:void 0,onClearError:Md,greeting:"error"===n?void 0:e,onGreetingDismiss:Md})})}))},Md=()=>{wd?.unmount(),wd=null,document.getElementById("marketrix-widget-notice-container")?.remove()},Td=null,Rd=0,Od=null;function Ad(e,t={}){const n=Hr(e);return n.invalidFields?(console.error(`Marketrix Widget: ${jr(n.invalidFields)}`),null):{...qr(n.settings,t),isPreviewMode:!0}}function _d(e,t,n=!1){const{container:r,mountEl:o}=Sd(t),i=kd(o,e,n);vd.mount={instance:i,config:e,container:r,host:t,previewMode:n}}var Dd=(e,t)=>{if(Td)return Td;if(window.__mtx?.state)return Promise.resolve();if(Cd())return Ae("Marketrix Widget: already initialized"),Promise.resolve();const n=async function(e,t,n){let r;window.__mtx={state:"initializing"},Id("Loading widget settings...");try{(e=>{if(!e?.trim())throw new Error("API URL is required for SDK configuration");e!==Ie&&(Ie=e,Me=Ee(e))})(e.mtxApiHost??""),r=await async function(e){const{mtxId:t,mtxKey:n}=e;if(!t||!n)throw new Error("Please provide mtxId + mtxKey");const r=`${t}:${n}`;let o=Vr.get(r);o||(o=async function(e,t,n){let r;try{({items:r}=await Te.widgetPublicSearch({marketrix_id:e,marketrix_key:t}))}catch(s){const e=Oe(s);throw function(e,t){return Object.assign(new Error(e),{cause:t})}(["Failed to fetch","ERR_CONNECTION_REFUSED","NetworkError","Network request failed"].some(t=>e.includes(t))?`Cannot connect to API server. Please ensure the API server is running at ${n||"configured API server"}. Error: ${e}`:`Widget validation failed: ${e}`,s)}if(!r.length)throw new Error("Widget not found or invalid credentials");const o=r.find(e=>"active"===e.status);if(!o){const e=r.map(e=>e.status).join(", ");throw new Error(`Found widget(s) but none are active. Current status(es): ${e}. Please activate the widget in the dashboard.`)}if(!o.application_id)throw new Error("Widget missing application_id");const i=Hr(o.settings);if(i.invalidFields)throw new Error(jr(i.invalidFields));return{settings:i.settings,applicationId:o.application_id}}(t,n,e.mtxApiHost),Vr.set(r,o),o.catch(()=>Vr.delete(r)));const{settings:i,applicationId:s}=await o;return{...qr(i,e),mtxId:t,mtxKey:n,mtxApp:s,isPreviewMode:!1}}(e)}catch(o){if(n!==Rd)return;return console.error("Marketrix Widget initialization failed:",o),Id(Oe(o,"Failed to initialize widget"),"error"),void(window.__mtx=void 0)}n===Rd&&(Md(),r.widget_enabled?(Be.setConfig(r),_d(r,t),window.__mtx={state:"active"},r.widget_recording&&r.mtxApp&&(async()=>{try{const e=await We.getOrCreateChatId();if(n!==Rd)return;const t=new mr(e,r.mtxApp);Od=t,await t.start(),n!==Rd&&(t.stop(),Od===t&&(Od=null))}catch(o){n===Rd&&console.error("Failed to start session recording:",o)}})()):window.__mtx=void 0)}(e,t,++Rd);return Td=n,n.then(()=>{Td===n&&(Td=null)},()=>{Td===n&&(Td=null)}),n},Pd=()=>{Rd++,fr.disconnect(),Od?.stop(),Od=null,vr(),Lr.cleanup();const e=vd.mount;vd.mount=null,e&&(e.instance.unmount(),e.container.remove()),Td=null,window.__mtx=void 0,Md()},Nd=async e=>{const t=vd.mount;if(!t)return;const{config:n,host:r,previewMode:o}=t,i={...n,...e};Pd(),o?_d(i,r,!0):await Dd(i,r)},Ld=({settings:e,container:t})=>{const n=d(null),r=d(null),o=d(null);return a(()=>{const i=t??n.current??document.body;if(!(i&&(s=i,s instanceof HTMLElement)))return void console.error("MarketrixWidgetPreview: Invalid container");var s;const a=Ad(e);if(!a)return;const{container:c,mountEl:l}=Sd(i);return o.current=c,r.current=kd(l,a,!0),()=>{r.current&&(r.current.unmount(),r.current=null),o.current&&(o.current.remove(),o.current=null)}},[e,t]),t?null:/* @__PURE__ */b("div",{ref:n,style:{width:"100%",height:"100%",position:"relative"}})},Fd=async e=>{const t=e.container;if(void 0!==e.settings){const{settings:n,container:r,...o}=e,i=Ad(e.settings,o);if(!i)return;Pd(),_d(i,t,!0)}else{if(void 0===e.mtxId||void 0===e.mtxKey)throw new Error("Invalid configuration: provide either settings (preview) or mtxId+mtxKey (production)");{const{container:n,...r}=e;await Dd(r,t)}}};"undefined"!=typeof window&&setTimeout(()=>{try{(e=>{if("undefined"==typeof window||"undefined"==typeof document)return;if(window.__mtx?.state)return;const t=document.querySelectorAll("script[mtx-id]"),n=t[t.length-1];if(!(n&&(r=n,r instanceof HTMLScriptElement)))return;var r;const o=n.getAttribute("mtx-id"),i=n.getAttribute("mtx-key"),s=n.getAttribute("mtx-api-host");if(!o||!i||!s){if(Cd())return;return console.error("[AutoInit] Missing required attributes:",{hasMtxId:!!o,hasMtxKey:!!i,hasMtxApiHost:!!s}),void Id("Please configure mtx-id, mtx-key and mtx-api-host","error")}const a={mtxId:o,mtxKey:i,mtxApiHost:s};"false"===n.getAttribute("mtx-use-screenshare")&&(a.use_screenshare=!1),e(a).catch(e=>console.error("[AutoInit] Failed to initialize widget:",e))})(Dd)}catch(e){console.error("Marketrix Widget: Auto-init registration failed",e)}},0);var zd={MarketrixWidgetPreview:Ld,mountWidget:Fd,initWidget:Dd,unmountWidget:Pd,updateMarketrixConfig:Nd,getCurrentConfig:Ed};export{Ld as MarketrixWidgetPreview,zd as default,Ed as getCurrentConfig,Dd as initWidget,Fd as mountWidget,Pd as unmountWidget,Nd as updateMarketrixConfig};
|
|
65
|
+
/* @__PURE__ */b(Oc,{error:i.error,onClearError:()=>s.setError(void 0),...fr.canReconnect()&&{onRetry:()=>{s.setError(void 0),fr.reconnectNow()}},greeting:t&&!i.error?e.widget_greeting:void 0,greetingBody:e.widget_body,onGreetingDismiss:()=>n(!1)})]})})})})},vd={mount:null},wd=null,xd=(e,t,n)=>{const r=e.attachShadow({mode:"closed"}),o=document.createElement("style");n&&(o.nonce=n),o.textContent=':root,:host{--foreground:oklch(14.5% 0 0);--card:oklch(100% 0 0);--card-foreground:oklch(14.5% 0 0);--primary:oklch(20.5% 0 0);--primary-foreground:oklch(98.5% 0 0);--secondary:oklch(97% 0 0);--secondary-foreground:oklch(20.5% 0 0);--border:oklch(92.2% 0 0);--ring:oklch(70.8% 0 0);--ring-offset:oklch(100% 0 0);--foreground-muted:#1f293799;--foreground-faint:#1f293766;--primary-hover:#3b82f6d9;--secondary-bg:#6b728033;--secondary-hover:#6b72804d;--font-sans:"Inter", ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, "Noto Sans", sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";--radius:.625rem;--shadow-sm:0 1px 3px 0px #0000001a, 0 1px 2px -1px #0000001a;--shadow-lg:0 1px 3px 0px #0000001a, 0 4px 6px -1px #0000001a;--duration-animation:.3s;--duration-fade:.2s;--radius-pill:9999px;--status-processing-rgb:49, 208, 109;--status-error-rgb:208, 52, 44;--overlay-dark:#111827}*,:before,:after{box-sizing:border-box;border:0 solid var(--border);margin:0;padding:0}:host,[data-marketrix-widget]{font-family:var(--font-sans);-webkit-text-size-adjust:100%;-webkit-tap-highlight-color:transparent;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;line-height:1.5}:where([data-marketrix-widget]) :where(h1,h2,h3){font-size:inherit;font-weight:inherit}:where([data-marketrix-widget]) :where(img,svg,video,canvas){vertical-align:middle;display:block}:where([data-marketrix-widget]) :where(img,video){max-width:100%;height:auto}:where([data-marketrix-widget]) :where(button,input,textarea){font:inherit;color:inherit;background:0 0;border-radius:0}:where([data-marketrix-widget]) :where(button){appearance:button}:where([data-marketrix-widget]) :where(textarea){resize:vertical}[data-marketrix-widget] [hidden]{display:none!important}[data-marketrix-widget],[data-marketrix-widget] *{pointer-events:auto;transition:color .2s ease-in-out,background-color .2s ease-in-out,border-color .2s ease-in-out,opacity .2s ease-in-out,box-shadow .2s ease-in-out,transform .2s ease-in-out}[data-resizing=true],[data-resizing=true] *{transition:none!important}@media (prefers-reduced-motion:reduce){[data-marketrix-widget]{--duration-animation:0s!important;--duration-fade:0s!important}}.mtx-button,.mtx-icon-button{cursor:pointer;justify-content:center;align-items:center;transition:all .2s ease-in-out;display:inline-flex}.mtx-button{border:1px solid #0000;gap:8px;font-weight:500}.mtx-button:focus-visible,.mtx-icon-button:focus-visible{box-shadow:0 0 0 2px var(--ring-offset), 0 0 0 4px var(--ring);outline:none}.mtx-button[data-size=sm]{min-height:28px;padding:4px 8px;font-size:.75rem}.mtx-button[data-size=md]{min-height:36px;padding:8px 16px;font-size:.875rem}.mtx-button[data-variant=primary]:hover{background:color-mix(in oklab, var(--primary) 90%, transparent)}.mtx-button[data-variant=secondary]{background:var(--secondary);color:var(--secondary-foreground)}.mtx-button[data-variant=secondary]:hover{background:color-mix(in oklab, var(--secondary) 80%, transparent)}.mtx-button[data-variant=ghost]{color:var(--foreground);border-color:var(--border);background:0 0}.mtx-button[data-variant=ghost]:hover{background:var(--border)}.mtx-button[data-variant=chip]{background:var(--secondary-bg);color:var(--foreground)}.mtx-button[data-variant=chip]:hover{background:var(--primary);color:var(--primary-foreground);border-color:var(--primary)}.mtx-button[data-variant=bare],.mtx-button[data-variant=tab]{background:0 0;border-color:#0000;min-height:0;padding:0}.mtx-button[data-variant=bare]{color:inherit}.mtx-button[data-variant=tab]{color:var(--foreground-muted);flex:1;min-width:0;height:100%;position:relative}.mtx-button[data-variant=tab]:hover{color:var(--foreground)}.mtx-button[data-variant=tab][aria-selected=true]{color:var(--primary);font-weight:600}.mtx-button[data-stacked=true]{flex-direction:column;gap:2px}.mtx-button[data-full=true]{width:100%}.mtx-icon-button{border-radius:var(--radius-pill);border:none;flex-shrink:0}.mtx-icon-button[data-size=xs]{width:20px;min-width:20px;height:20px}.mtx-icon-button[data-size=sm]{width:28px;min-width:28px;height:28px}.mtx-button[data-variant=primary],.mtx-icon-button[data-variant=primary]{background:var(--primary);color:var(--primary-foreground)}.mtx-icon-button[data-variant=primary]:hover{background:var(--primary-hover)}.mtx-icon-button[data-variant=secondary]{background:var(--secondary-bg);color:var(--foreground)}.mtx-icon-button[data-variant=secondary]:hover{background:var(--secondary-hover)}.mtx-icon-button[data-variant=ghost]{color:var(--foreground);opacity:.6;background:0 0}.mtx-icon-button[data-variant=ghost]:hover{opacity:1}.mtx-button[data-disabled=true],.mtx-icon-button[data-disabled=true]{opacity:.5;cursor:not-allowed;pointer-events:none}.mtx-icon{flex-shrink:0;display:inline-block}.mtx-avatar{flex-shrink:0}.mtx-spinner-ring{border-radius:var(--radius-pill);border-style:solid;border-color:#0000 currentColor currentColor;flex-shrink:0;animation:1s linear infinite mtx-spin}.mtx-visually-hidden{clip-path:inset(50%);white-space:nowrap;border-width:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.mtx-composer:focus-within{border-color:var(--foreground-faint)}.mtx-composer-input{resize:none;width:100%;min-height:0;color:var(--foreground);background:0 0;border:none;padding-left:12px;padding-right:12px;font-size:.875rem;display:block}.mtx-composer-input::placeholder{color:var(--foreground-faint)}.mtx-composer-input:focus{outline:none}.mtx-composer-input:disabled{cursor:not-allowed;opacity:.5}.mtx-mode-chip{border-radius:var(--radius-pill);cursor:pointer;background:var(--secondary-bg);color:var(--foreground-muted);border:none;align-items:center;gap:2px;padding:2px 8px;font-size:11px;font-weight:500;transition:all .2s ease-in-out;display:inline-flex}.mtx-mode-chip[data-active=true]{background:var(--primary);color:var(--primary-foreground);box-shadow:var(--shadow-sm)}.mtx-toast-viewport{flex-direction:column;gap:8px;max-width:420px;display:flex;position:fixed;left:50%;transform:translate(-50%)}.mtx-toast{animation:mtx-fade-in var(--duration-animation) ease-out}.mtx-toast[data-ending-style]{opacity:0;transition:opacity var(--duration-animation) ease-out}.mtx-dialog-backdrop{animation:mtx-dialog-overlay-in var(--duration-fade) ease-out;background:#0003;position:fixed;inset:0}.mtx-dialog-popup{border-radius:var(--radius);background:var(--card);width:100%;max-width:24rem;max-height:85vh;animation:mtx-dialog-content-in var(--duration-animation) ease-out;flex-direction:column;padding:16px;display:flex;position:fixed;top:50%;left:50%;overflow:auto;transform:translate(-50%,-50%)}.mtx-dialog-title{color:var(--foreground);margin-bottom:4px;font-size:1rem;font-weight:600}.mtx-dialog-description{color:var(--foreground-muted);margin-bottom:16px;font-size:.875rem;line-height:1.625}.mtx-fab-anchor{position:fixed}.mtx-fab-anchor[data-preview=true]{position:absolute}.mtx-fab-anchor[data-animated=true]{transition:transform var(--duration-animation) ease-in-out}.mtx-fab{width:56px;height:56px;transition:all var(--duration-animation) ease-in-out;position:relative;overflow:visible}.mtx-fab[data-open=false]:hover{transform:scale(1.1)}.mtx-fab[data-open=true]{opacity:0;pointer-events:none;transform:scale(0)}.mtx-fab-trigger{z-index:10;width:56px;min-width:56px;height:56px;position:relative}.mtx-fab-center{justify-content:center;align-items:center;width:100%;height:100%;position:relative}.mtx-fab-badge{width:48px;height:48px;transition:transform .167s cubic-bezier(.33,0,0,1),opacity .167s cubic-bezier(.33,0,0,1),background-color .167s cubic-bezier(.33,0,0,1);animation:.25s ease-out forwards mtx-launcher-entrance;position:relative;overflow:hidden}.mtx-fab-badge:hover{transition-duration:.25s;transform:scale(1.1)}.mtx-fab-badge:active{transition-duration:.134s;transition-timing-function:cubic-bezier(.45,0,.2,1);transform:scale(.85)}.mtx-fab-icon-layer{justify-content:center;align-items:center;transition-property:transform,opacity;transition-duration:.16s,80ms;transition-timing-function:linear;position:absolute;inset:0}.mtx-fab-avatar{z-index:10;object-fit:contain;width:100%;height:100%;position:relative}.mtx-fab-chevron{z-index:10;color:var(--foreground);pointer-events:none;position:relative}.mtx-fab-stop{z-index:20;border-radius:var(--radius-pill);background:var(--overlay-dark);text-transform:uppercase;letter-spacing:.025em;color:#fff;box-shadow:var(--shadow-lg);opacity:0;pointer-events:none;border:1px solid #ffffff40;padding:4px 10px;font-size:11px;font-weight:600;transition:opacity .15s ease-in-out;position:absolute;top:50%;transform:translateY(-50%)}.mtx-fab-stop[data-side=left]{margin-left:8px;left:100%}.mtx-fab-stop[data-side=right]{margin-right:8px;right:100%}.mtx-fab:hover .mtx-fab-stop,.mtx-fab:focus-within .mtx-fab-stop{opacity:1;pointer-events:auto}.mtx-tab-underline{border-radius:var(--radius-pill);background:var(--primary);opacity:0;height:2px;position:absolute;top:0;left:25%;right:25%}[aria-selected=true]>.mtx-tab-underline{opacity:1}.mtx-live-dot{width:6px;height:6px;display:inline-flex;position:relative}.mtx-live-dot-ping{border-radius:var(--radius-pill);opacity:.75;background:currentColor;width:100%;height:100%;animation:1s cubic-bezier(0,0,.2,1) infinite mtx-ping;display:inline-flex;position:absolute}.mtx-live-dot-core{border-radius:var(--radius-pill);background:currentColor;width:6px;height:6px;display:inline-flex;position:relative}.mtx-fab-glow{pointer-events:none;filter:blur(14px);will-change:transform, opacity;border-radius:50%;width:140%;height:140%;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.mtx-fab-ring{pointer-events:none;z-index:0;position:absolute;inset:-3px;overflow:visible}.mtx-fab-ring rect{fill:none;stroke-width:2.5px;stroke-linecap:round;stroke-linejoin:round;stroke-dasharray:40 120;animation:1.9s cubic-bezier(.4,0,.2,1) infinite mtx-fab-ring-travel}.mtx-fab-ring[data-tone=processing] rect{stroke:rgb(var(--status-processing-rgb));filter:drop-shadow(0 0 3px rgba(var(--status-processing-rgb), .7))}.mtx-fab-ring[data-tone=error] rect{stroke:rgb(var(--status-error-rgb));filter:drop-shadow(0 0 3px rgba(var(--status-error-rgb), .7))}.mtx-fab-glow[data-tone=processing]{--glow-rgb:var(--status-processing-rgb);--glow-op-base:.72;--glow-op-peak:1;--glow-op-near:.38;--glow-op-far:.24;--glow-op-near-peak:.55;--glow-op-far-peak:.33;animation:2s ease-in-out infinite mtx-fab-glow-pulse}.mtx-fab-glow[data-tone=error]{--glow-rgb:var(--status-error-rgb);--glow-op-base:.65;--glow-op-peak:.95;--glow-op-near:.34;--glow-op-far:.22;--glow-op-near-peak:.5;--glow-op-far-peak:.3;animation:1.5s ease-in-out infinite mtx-fab-glow-pulse}[data-screen-edge-glow]{animation:1.6s ease-in-out infinite mtx-screen-edge-pulse}[data-view-transition][data-direction=forward]{animation:.3s both mtx-view-slide-forward}[data-view-transition][data-direction=back]{animation:.3s both mtx-view-slide-back}@keyframes mtx-spin{to{transform:rotate(360deg)}}@keyframes mtx-ping{75%,to{opacity:0;transform:scale(2)}}@keyframes mtx-dialog-overlay-in{0%{opacity:0}to{opacity:1}}@keyframes mtx-dialog-content-in{0%{opacity:0;scale:.96}to{opacity:1;scale:1}}@keyframes mtx-fade-in{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}@keyframes mtx-launcher-entrance{0%{opacity:0;transform:scale(.5)}to{opacity:1;transform:scale(1)}}@keyframes mtx-screen-edge-pulse{0%,to{opacity:.55}50%{opacity:1}}@keyframes mtx-fab-ring-travel{0%{stroke-dashoffset:0;opacity:.5}18%{stroke-dashoffset:-112px;opacity:1}35%{stroke-dashoffset:-160px;opacity:.65}60%{stroke-dashoffset:-160px;opacity:.45}82%{stroke-dashoffset:-272px;opacity:1}to{stroke-dashoffset:-320px;opacity:.6}}@keyframes mtx-fab-glow-pulse{0%,to{opacity:var(--glow-op-base);background:radial-gradient(circle, rgba(var(--glow-rgb), 0) 38%, rgba(var(--glow-rgb), var(--glow-op-near)) 58%, rgba(var(--glow-rgb), var(--glow-op-far)) 68%, transparent 78%);transform:translate(-50%,-50%)scale(1)}50%{opacity:var(--glow-op-peak);background:radial-gradient(circle, rgba(var(--glow-rgb), 0) 34%, rgba(var(--glow-rgb), var(--glow-op-near-peak)) 56%, rgba(var(--glow-rgb), var(--glow-op-far-peak)) 68%, transparent 80%);transform:translate(-50%,-50%)scale(1.1)}}@keyframes mtx-view-slide-forward{0%{opacity:0;transform:translate(20px)}to{opacity:1;transform:translate(0)}}@keyframes mtx-view-slide-back{0%{opacity:0;transform:translate(-20px)}to{opacity:1;transform:translate(0)}}',r.appendChild(o);const i=document.createElement("div");return i.id=t,r.appendChild(i),{shadowRoot:r,mountEl:i}},Sd=(e,t)=>{const n=e??document.body,r=document.createElement("div");r.className="marketrix-widget-container",r.style.pointerEvents="auto",e&&Object.assign(r.style,{width:"100%",height:"100%",position:"relative",overflow:"visible"}),n.appendChild(r);const{shadowRoot:o,mountEl:i}=xd(r,"marketrix-widget-root",t);return Object.assign(i.style,{pointerEvents:"auto",width:"100%",height:"100%",position:"relative"}),{container:r,shadowRoot:o,mountEl:i}},kd=(e,n,r=!1)=>{const o=m(e);return o.render(/* @__PURE__ */b(t.StrictMode,{children:/* @__PURE__ */b(xl,{previewMode:r,children:/* @__PURE__ */b(bd,{config:n})})})),o},Cd=()=>null!==vd.mount,Ed=()=>vd.mount?.config??null,Id=(e,n="neutral")=>{if("undefined"==typeof window||"undefined"==typeof document)return;Md();const r=document.createElement("div");r.id="marketrix-widget-notice-container",r.className="marketrix-widget-notice-container",document.body.appendChild(r);const{mountEl:o}=xd(r,"marketrix-widget-notice-root");(wd=m(o)).render(/* @__PURE__ */b(t.StrictMode,{children:/* @__PURE__ */b(Rc,{container:o,children:/* @__PURE__ */b(Oc,{error:"error"===n?e:void 0,onClearError:Md,greeting:"error"===n?void 0:e,onGreetingDismiss:Md})})}))},Md=()=>{wd?.unmount(),wd=null,document.getElementById("marketrix-widget-notice-container")?.remove()},Td=null,Rd=0,Od=null;function Ad(e,t={}){const n=Hr(e);return n.invalidFields?(console.error(`Marketrix Widget: ${jr(n.invalidFields)}`),null):{...qr(n.settings,t),isPreviewMode:!0}}function _d(e,t,n=!1){const{container:r,mountEl:o}=Sd(t,e.styleNonce),i=kd(o,e,n);vd.mount={instance:i,config:e,container:r,host:t,previewMode:n}}var Dd=(e,t)=>{if(Td)return Td;if(window.__mtx?.state)return Promise.resolve();if(Cd())return Ae("Marketrix Widget: already initialized"),Promise.resolve();const n=async function(e,t,n){let r;window.__mtx={state:"initializing"},Id("Loading widget settings...");try{(e=>{if(!e?.trim())throw new Error("API URL is required for SDK configuration");e!==Ie&&(Ie=e,Me=Ee(e))})(e.mtxApiHost??""),r=await async function(e){const{mtxId:t,mtxKey:n}=e;if(!t||!n)throw new Error("Please provide mtxId + mtxKey");const r=`${t}:${n}`;let o=Vr.get(r);o||(o=async function(e,t,n){let r;try{({items:r}=await Te.widgetPublicSearch({marketrix_id:e,marketrix_key:t}))}catch(s){const e=Oe(s);throw function(e,t){return Object.assign(new Error(e),{cause:t})}(["Failed to fetch","ERR_CONNECTION_REFUSED","NetworkError","Network request failed"].some(t=>e.includes(t))?`Cannot connect to API server. Please ensure the API server is running at ${n||"configured API server"}. Error: ${e}`:`Widget validation failed: ${e}`,s)}if(!r.length)throw new Error("Widget not found or invalid credentials");const o=r.find(e=>"active"===e.status);if(!o){const e=r.map(e=>e.status).join(", ");throw new Error(`Found widget(s) but none are active. Current status(es): ${e}. Please activate the widget in the dashboard.`)}if(!o.application_id)throw new Error("Widget missing application_id");const i=Hr(o.settings);if(i.invalidFields)throw new Error(jr(i.invalidFields));return{settings:i.settings,applicationId:o.application_id}}(t,n,e.mtxApiHost),Vr.set(r,o),o.catch(()=>Vr.delete(r)));const{settings:i,applicationId:s}=await o;return{...qr(i,e),mtxId:t,mtxKey:n,mtxApp:s,isPreviewMode:!1}}(e)}catch(o){if(n!==Rd)return;return console.error("Marketrix Widget initialization failed:",o),Id(Oe(o,"Failed to initialize widget"),"error"),void(window.__mtx=void 0)}n===Rd&&(Md(),r.widget_enabled?(Be.setConfig(r),_d(r,t),window.__mtx={state:"active"},r.widget_recording&&r.mtxApp&&(async()=>{try{const e=await We.getOrCreateChatId();if(n!==Rd)return;const t=new mr(e,r.mtxApp);Od=t,await t.start(),n!==Rd&&(t.stop(),Od===t&&(Od=null))}catch(o){n===Rd&&console.error("Failed to start session recording:",o)}})()):window.__mtx=void 0)}(e,t,++Rd);return Td=n,n.then(()=>{Td===n&&(Td=null)},()=>{Td===n&&(Td=null)}),n},Pd=()=>{Rd++,fr.disconnect(),Od?.stop(),Od=null,vr(),Lr.cleanup();const e=vd.mount;vd.mount=null,e&&(e.instance.unmount(),e.container.remove()),Td=null,window.__mtx=void 0,Md()},Nd=async e=>{const t=vd.mount;if(!t)return;const{config:n,host:r,previewMode:o}=t,i={...n,...e};Pd(),o?_d(i,r,!0):await Dd(i,r)},Ld=({settings:e,container:t})=>{const n=d(null),r=d(null),o=d(null);return a(()=>{const i=t??n.current??document.body;if(!(i&&(s=i,s instanceof HTMLElement)))return void console.error("MarketrixWidgetPreview: Invalid container");var s;const a=Ad(e);if(!a)return;const{container:c,mountEl:l}=Sd(i,a.styleNonce);return o.current=c,r.current=kd(l,a,!0),()=>{r.current&&(r.current.unmount(),r.current=null),o.current&&(o.current.remove(),o.current=null)}},[e,t]),t?null:/* @__PURE__ */b("div",{ref:n,style:{width:"100%",height:"100%",position:"relative"}})},Fd=async e=>{const t=e.container;if(void 0!==e.settings){const{settings:n,container:r,...o}=e,i=Ad(e.settings,o);if(!i)return;Pd(),_d(i,t,!0)}else{if(void 0===e.mtxId||void 0===e.mtxKey)throw new Error("Invalid configuration: provide either settings (preview) or mtxId+mtxKey (production)");{const{container:n,...r}=e;await Dd(r,t)}}};"undefined"!=typeof window&&setTimeout(()=>{try{(e=>{if("undefined"==typeof window||"undefined"==typeof document)return;if(window.__mtx?.state)return;const t=document.querySelectorAll("script[mtx-id]"),n=t[t.length-1];if(!(n&&(r=n,r instanceof HTMLScriptElement)))return;var r;const o=n.getAttribute("mtx-id"),i=n.getAttribute("mtx-key"),s=n.getAttribute("mtx-api-host");if(!o||!i||!s){if(Cd())return;return console.error("[AutoInit] Missing required attributes:",{hasMtxId:!!o,hasMtxKey:!!i,hasMtxApiHost:!!s}),void Id("Please configure mtx-id, mtx-key and mtx-api-host","error")}const a={mtxId:o,mtxKey:i,mtxApiHost:s};"false"===n.getAttribute("mtx-use-screenshare")&&(a.use_screenshare=!1);const c=n.getAttribute("mtx-style-nonce");c&&(a.styleNonce=c),e(a).catch(e=>console.error("[AutoInit] Failed to initialize widget:",e))})(Dd)}catch(e){console.error("Marketrix Widget: Auto-init registration failed",e)}},0);var zd={MarketrixWidgetPreview:Ld,mountWidget:Fd,initWidget:Dd,unmountWidget:Pd,updateMarketrixConfig:Nd,getCurrentConfig:Ed};export{Ld as MarketrixWidgetPreview,zd as default,Ed as getCurrentConfig,Dd as initWidget,Fd as mountWidget,Pd as unmountWidget,Nd as updateMarketrixConfig};
|