@checksum-ai/runtime 4.4.1 → 4.5.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/.env +1 -1
- package/checksum-root/eslint.config.js +10 -1
- package/checksumlib.js +1 -1
- package/cli.js +197 -197
- package/index.js +175 -175
- package/package.json +1 -2
- package/postinstall.js +1 -1
package/checksumlib.js
CHANGED
|
@@ -72,7 +72,7 @@ https://www.w3ctech.com/topic/2226`));let u=t(...l);return u.postcssPlugin=e,u.p
|
|
|
72
72
|
https://evilmartians.com/chronicles/postcss-8-plugin-migration`),process.env.LANG&&process.env.LANG.startsWith("cn")&&console.warn(e+`: \u91CC\u9762 postcss.plugin \u88AB\u5F03\u7528. \u8FC1\u79FB\u6307\u5357:
|
|
73
73
|
https://www.w3ctech.com/topic/2226`));let u=t(...l);return u.postcssPlugin=e,u.postcssVersion=new nh().version,u}a(i,"creator");let o;return Object.defineProperty(i,"postcss",{get(){return o||(o=i()),o}}),i.process=function(l,u,f){return Te([i(f)]).process(l,u)},i},"plugin2");Te.stringify=ZD;Te.parse=rk;Te.fromJSON=JD;Te.list=nk;Te.comment=n=>new Dw(n);Te.atRule=n=>new kw(n);Te.decl=n=>new Lw(n);Te.rule=n=>new Pw(n);Te.root=n=>new Fw(n);Te.document=n=>new _w(n);Te.CssSyntaxError=YD;Te.Declaration=Lw;Te.Container=XD;Te.Processor=nh;Te.Document=_w;Te.Comment=Dw;Te.Warning=QD;Te.AtRule=kw;Te.Result=ek;Te.Input=tk;Te.Rule=Pw;Te.Root=Fw;Te.Node=ik;KD.registerPostcss(Te);var sk=Te;Te.default=Te;var qe=y_(sk);qe.stringify;qe.fromJSON;qe.plugin;qe.parse;qe.list;qe.document;qe.comment;qe.atRule;qe.rule;qe.decl;qe.root;qe.CssSyntaxError;qe.Declaration;qe.Container;qe.Processor;qe.Document;qe.Comment;qe.Warning;qe.AtRule;qe.Result;qe.Input;qe.Rule;qe.Root;qe.Node;var be=(n=>(n[n.Document=0]="Document",n[n.DocumentType=1]="DocumentType",n[n.Element=2]="Element",n[n.Text=3]="Text",n[n.CDATA=4]="CDATA",n[n.Comment=5]="Comment",n))(be||{});function ok(n){let e={},t=/;(?![^(]*\))/g,r=/:(.+)/,i=/\/\*.*?\*\//g;return n.replace(i,"").split(t).forEach(function(o){if(o){let l=o.split(r);l.length>1&&(e[fd(l[0].trim())]=l[1].trim())}}),e}a(ok,"parseCSSText");function Ub(n){let e=[];for(let t in n){let r=n[t];if(typeof r!="string")continue;let i=uk(t);e.push(`${i}: ${r};`)}return e.join(" ")}a(Ub,"toCSSText");var ak=/-([a-z])/g,lk=/^--[a-zA-Z0-9-]+$/,fd=a(n=>lk.test(n)?n:n.replace(ak,(e,t)=>t?t.toUpperCase():""),"camelize"),ck=/\B([A-Z])/g,uk=a(n=>n.replace(ck,"-$1").toLowerCase(),"hyphenate"),or=class n{static{a(this,"BaseRRNode")}constructor(...e){j(this,"parentElement",null),j(this,"parentNode",null),j(this,"ownerDocument"),j(this,"firstChild",null),j(this,"lastChild",null),j(this,"previousSibling",null),j(this,"nextSibling",null),j(this,"ELEMENT_NODE",1),j(this,"TEXT_NODE",3),j(this,"nodeType"),j(this,"nodeName"),j(this,"RRNodeType")}get childNodes(){let e=[],t=this.firstChild;for(;t;)e.push(t),t=t.nextSibling;return e}contains(e){if(e instanceof n){if(e.ownerDocument!==this.ownerDocument)return!1;if(e===this)return!0}else return!1;for(;e.parentNode;){if(e.parentNode===this)return!0;e=e.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"}},dd=class n extends or{static{a(this,"BaseRRDocument")}constructor(...e){super(e),j(this,"nodeType",9),j(this,"nodeName","#document"),j(this,"compatMode","CSS1Compat"),j(this,"RRNodeType",be.Document),j(this,"textContent",null),this.ownerDocument=this}get documentElement(){return this.childNodes.find(e=>e.RRNodeType===be.Element&&e.tagName==="HTML")||null}get body(){var e;return((e=this.documentElement)==null?void 0:e.childNodes.find(t=>t.RRNodeType===be.Element&&t.tagName==="BODY"))||null}get head(){var e;return((e=this.documentElement)==null?void 0:e.childNodes.find(t=>t.RRNodeType===be.Element&&t.tagName==="HEAD"))||null}get implementation(){return this}get firstElementChild(){return this.documentElement}appendChild(e){let t=e.RRNodeType;if((t===be.Element||t===be.DocumentType)&&this.childNodes.some(i=>i.RRNodeType===t))throw new Error(`RRDomException: Failed to execute 'appendChild' on 'RRNode': Only one ${t===be.Element?"RRElement":"RRDoctype"} on RRDocument allowed.`);let r=ih(this,e);return r.parentElement=null,r}insertBefore(e,t){let r=e.RRNodeType;if((r===be.Element||r===be.DocumentType)&&this.childNodes.some(o=>o.RRNodeType===r))throw new Error(`RRDomException: Failed to execute 'insertBefore' on 'RRNode': Only one ${r===be.Element?"RRElement":"RRDoctype"} on RRDocument allowed.`);let i=Hw(this,e,t);return i.parentElement=null,i}removeChild(e){return $w(this,e)}open(){this.firstChild=null,this.lastChild=null}close(){}write(e){let t;if(e==='<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "">'?t="-//W3C//DTD XHTML 1.0 Transitional//EN":e==='<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN" "">'&&(t="-//W3C//DTD HTML 4.0 Transitional//EN"),t){let r=this.createDocumentType("html",t,"");this.open(),this.appendChild(r)}}createDocument(e,t,r){return new n}createDocumentType(e,t,r){let i=new ol(e,t,r);return i.ownerDocument=this,i}createElement(e){let t=new Ti(e);return t.ownerDocument=this,t}createElementNS(e,t){return this.createElement(t)}createTextNode(e){let t=new al(e);return t.ownerDocument=this,t}createComment(e){let t=new ll(e);return t.ownerDocument=this,t}createCDATASection(e){let t=new cl(e);return t.ownerDocument=this,t}toString(){return"RRDocument"}},ol=class extends or{static{a(this,"BaseRRDocumentType")}constructor(e,t,r){super(),j(this,"nodeType",10),j(this,"RRNodeType",be.DocumentType),j(this,"name"),j(this,"publicId"),j(this,"systemId"),j(this,"textContent",null),this.name=e,this.publicId=t,this.systemId=r,this.nodeName=e}toString(){return"RRDocumentType"}},Ti=class extends or{static{a(this,"BaseRRElement")}constructor(e){super(),j(this,"nodeType",1),j(this,"RRNodeType",be.Element),j(this,"tagName"),j(this,"attributes",{}),j(this,"shadowRoot",null),j(this,"scrollLeft"),j(this,"scrollTop"),this.tagName=e.toUpperCase(),this.nodeName=e.toUpperCase()}get textContent(){let e="";return this.childNodes.forEach(t=>e+=t.textContent),e}set textContent(e){this.firstChild=null,this.lastChild=null,this.appendChild(this.ownerDocument.createTextNode(e))}get classList(){return new md(this.attributes.class,e=>{this.attributes.class=e})}get id(){return this.attributes.id||""}get className(){return this.attributes.class||""}get style(){let e=this.attributes.style?ok(this.attributes.style):{},t=/\B([A-Z])/g;return e.setProperty=(r,i,o)=>{if(t.test(r))return;let l=fd(r);i?e[l]=i:delete e[l],o==="important"&&(e[l]+=" !important"),this.attributes.style=Ub(e)},e.removeProperty=r=>{if(t.test(r))return"";let i=fd(r),o=e[i]||"";return delete e[i],this.attributes.style=Ub(e),o},e}getAttribute(e){return this.attributes[e]===void 0?null:this.attributes[e]}setAttribute(e,t){this.attributes[e]=t}setAttributeNS(e,t,r){this.setAttribute(t,r)}removeAttribute(e){delete this.attributes[e]}appendChild(e){return ih(this,e)}insertBefore(e,t){return Hw(this,e,t)}removeChild(e){return $w(this,e)}attachShadow(e){let t=this.ownerDocument.createElement("SHADOWROOT");return this.shadowRoot=t,t}dispatchEvent(e){return!0}toString(){let e="";for(let t in this.attributes)e+=`${t}="${this.attributes[t]}" `;return`${this.tagName} ${e}`}},hd=class extends Ti{static{a(this,"BaseRRMediaElement")}constructor(){super(...arguments),j(this,"currentTime"),j(this,"volume"),j(this,"paused"),j(this,"muted"),j(this,"playbackRate"),j(this,"loop")}attachShadow(e){throw new Error("RRDomException: Failed to execute 'attachShadow' on 'RRElement': This RRElement does not support attachShadow")}play(){this.paused=!1}pause(){this.paused=!0}},pd=class extends Ti{static{a(this,"BaseRRDialogElement")}constructor(){super(...arguments),j(this,"tagName","DIALOG"),j(this,"nodeName","DIALOG")}get isModal(){return this.getAttribute("rr_open_mode")==="modal"}get open(){return this.getAttribute("open")!==null}close(){this.removeAttribute("open"),this.removeAttribute("rr_open_mode")}show(){this.setAttribute("open",""),this.setAttribute("rr_open_mode","non-modal")}showModal(){this.setAttribute("open",""),this.setAttribute("rr_open_mode","modal")}},al=class extends or{static{a(this,"BaseRRText")}constructor(e){super(),j(this,"nodeType",3),j(this,"nodeName","#text"),j(this,"RRNodeType",be.Text),j(this,"data"),this.data=e}get textContent(){return this.data}set textContent(e){this.data=e}toString(){return`RRText text=${JSON.stringify(this.data)}`}},ll=class extends or{static{a(this,"BaseRRComment")}constructor(e){super(),j(this,"nodeType",8),j(this,"nodeName","#comment"),j(this,"RRNodeType",be.Comment),j(this,"data"),this.data=e}get textContent(){return this.data}set textContent(e){this.data=e}toString(){return`RRComment text=${JSON.stringify(this.data)}`}},cl=class extends or{static{a(this,"BaseRRCDATASection")}constructor(e){super(),j(this,"nodeName","#cdata-section"),j(this,"nodeType",4),j(this,"RRNodeType",be.CDATA),j(this,"data"),this.data=e}get textContent(){return this.data}set textContent(e){this.data=e}toString(){return`RRCDATASection data=${JSON.stringify(this.data)}`}},md=class{static{a(this,"ClassList")}constructor(e,t){if(j(this,"onChange"),j(this,"classes",[]),j(this,"add",(...r)=>{for(let i of r){let o=String(i);this.classes.indexOf(o)>=0||this.classes.push(o)}this.onChange&&this.onChange(this.classes.join(" "))}),j(this,"remove",(...r)=>{this.classes=this.classes.filter(i=>r.indexOf(i)===-1),this.onChange&&this.onChange(this.classes.join(" "))}),e){let r=e.trim().split(/\s+/);this.classes.push(...r)}this.onChange=t}};function ih(n,e){return e.parentNode&&e.parentNode.removeChild(e),n.lastChild?(n.lastChild.nextSibling=e,e.previousSibling=n.lastChild):(n.firstChild=e,e.previousSibling=null),n.lastChild=e,e.nextSibling=null,e.parentNode=n,e.parentElement=n,e.ownerDocument=n.ownerDocument,e}a(ih,"appendChild");function Hw(n,e,t){if(!t)return ih(n,e);if(t.parentNode!==n)throw new Error("Failed to execute 'insertBefore' on 'RRNode': The RRNode before which the new node is to be inserted is not a child of this RRNode.");return e===t||(e.parentNode&&e.parentNode.removeChild(e),e.previousSibling=t.previousSibling,t.previousSibling=e,e.nextSibling=t,e.previousSibling?e.previousSibling.nextSibling=e:n.firstChild=e,e.parentElement=n,e.parentNode=n,e.ownerDocument=n.ownerDocument),e}a(Hw,"insertBefore");function $w(n,e){if(e.parentNode!==n)throw new Error("Failed to execute 'removeChild' on 'RRNode': The RRNode to be removed is not a child of this RRNode.");return e.previousSibling?e.previousSibling.nextSibling=e.nextSibling:n.firstChild=e.nextSibling,e.nextSibling?e.nextSibling.previousSibling=e.previousSibling:n.lastChild=e.previousSibling,e.previousSibling=null,e.nextSibling=null,e.parentElement=null,e.parentNode=null,e}a($w,"removeChild");var Wt=(n=>(n[n.PLACEHOLDER=0]="PLACEHOLDER",n[n.ELEMENT_NODE=1]="ELEMENT_NODE",n[n.ATTRIBUTE_NODE=2]="ATTRIBUTE_NODE",n[n.TEXT_NODE=3]="TEXT_NODE",n[n.CDATA_SECTION_NODE=4]="CDATA_SECTION_NODE",n[n.ENTITY_REFERENCE_NODE=5]="ENTITY_REFERENCE_NODE",n[n.ENTITY_NODE=6]="ENTITY_NODE",n[n.PROCESSING_INSTRUCTION_NODE=7]="PROCESSING_INSTRUCTION_NODE",n[n.COMMENT_NODE=8]="COMMENT_NODE",n[n.DOCUMENT_NODE=9]="DOCUMENT_NODE",n[n.DOCUMENT_TYPE_NODE=10]="DOCUMENT_TYPE_NODE",n[n.DOCUMENT_FRAGMENT_NODE=11]="DOCUMENT_FRAGMENT_NODE",n))(Wt||{}),gd={svg:"http://www.w3.org/2000/svg","xlink:href":"http://www.w3.org/1999/xlink",xmlns:"http://www.w3.org/2000/xmlns/"},fk={altglyph:"altGlyph",altglyphdef:"altGlyphDef",altglyphitem:"altGlyphItem",animatecolor:"animateColor",animatemotion:"animateMotion",animatetransform:"animateTransform",clippath:"clipPath",feblend:"feBlend",fecolormatrix:"feColorMatrix",fecomponenttransfer:"feComponentTransfer",fecomposite:"feComposite",feconvolvematrix:"feConvolveMatrix",fediffuselighting:"feDiffuseLighting",fedisplacementmap:"feDisplacementMap",fedistantlight:"feDistantLight",fedropshadow:"feDropShadow",feflood:"feFlood",fefunca:"feFuncA",fefuncb:"feFuncB",fefuncg:"feFuncG",fefuncr:"feFuncR",fegaussianblur:"feGaussianBlur",feimage:"feImage",femerge:"feMerge",femergenode:"feMergeNode",femorphology:"feMorphology",feoffset:"feOffset",fepointlight:"fePointLight",fespecularlighting:"feSpecularLighting",fespotlight:"feSpotLight",fetile:"feTile",feturbulence:"feTurbulence",foreignobject:"foreignObject",glyphref:"glyphRef",lineargradient:"linearGradient",radialgradient:"radialGradient"},Er=null;function ul(n,e,t,r=e.mirror||e.ownerDocument.mirror){n=dk(n,e,t,r),Bw(n,e,t,r),hk(n,e,t)}a(ul,"diff");function dk(n,e,t,r){var i;if(t.afterAppend&&!Er&&(Er=new WeakSet,setTimeout(()=>{Er=null},0)),!sh(n,e)){let o=fl(e,t.mirror,r);(i=n.parentNode)==null||i.replaceChild(o,n),n=o}switch(e.RRNodeType){case be.Document:{if(!hi(n,e,t.mirror,r)){let o=r.getMeta(e);o&&(t.mirror.removeNodeFromMap(n),n.close(),n.open(),t.mirror.add(n,o),Er?.add(n))}break}case be.Element:{let o=n,l=e;switch(l.tagName){case"IFRAME":{let u=n.contentDocument;if(!u)break;ul(u,e.contentDocument,t,r);break}}l.shadowRoot&&(o.shadowRoot||o.attachShadow({mode:"open"}),Bw(o.shadowRoot,l.shadowRoot,t,r)),pk(o,l,r);break}}return n}a(dk,"diffBeforeUpdatingChildren");function hk(n,e,t){var r;switch(e.RRNodeType){case be.Document:{let i=e.scrollData;i&&t.applyScroll(i,!0);break}case be.Element:{let i=n,o=e;switch(o.scrollData&&t.applyScroll(o.scrollData,!0),o.inputData&&t.applyInput(o.inputData),o.tagName){case"AUDIO":case"VIDEO":{let l=n,u=o;u.paused!==void 0&&(u.paused?l.pause():l.play()),u.muted!==void 0&&(l.muted=u.muted),u.volume!==void 0&&(l.volume=u.volume),u.currentTime!==void 0&&(l.currentTime=u.currentTime),u.playbackRate!==void 0&&(l.playbackRate=u.playbackRate),u.loop!==void 0&&(l.loop=u.loop);break}case"CANVAS":{let l=e;if(l.rr_dataURL!==null){let u=document.createElement("img");u.onload=()=>{let f=i.getContext("2d");f&&f.drawImage(u,0,0,u.width,u.height)},u.src=l.rr_dataURL}l.canvasMutations.forEach(u=>t.applyCanvas(u.event,u.mutation,n));break}case"STYLE":{let l=i.sheet;l&&e.rules.forEach(u=>t.applyStyleSheetMutation(u,l));break}case"DIALOG":{let l=i,u=o,f=l.open,h=l.matches("dialog:modal"),p=u.open,g=u.isModal,y=h!==g,x=f!==p;if((y||f&&x)&&l.close(),p&&(x||y))try{g?l.showModal():l.show()}catch(w){console.warn(w)}break}}break}case be.Text:case be.Comment:case be.CDATA:{n.textContent!==e.data&&(n.textContent=e.data);break}}Er?.has(n)&&(Er.delete(n),(r=t.afterAppend)==null||r.call(t,n,t.mirror.getId(n)))}a(hk,"diffAfterUpdatingChildren");function pk(n,e,t){let r=n.attributes,i=e.attributes;for(let o in i){let l=i[o],u=t.getMeta(e);if(u?.isSVG&&gd[o])n.setAttributeNS(gd[o],o,l);else if(e.tagName==="CANVAS"&&o==="rr_dataURL"){let f=document.createElement("img");f.src=l,f.onload=()=>{let h=n.getContext("2d");h&&h.drawImage(f,0,0,f.width,f.height)}}else{if(e.tagName==="IFRAME"&&o==="srcdoc")continue;try{n.setAttribute(o,l)}catch(f){console.warn(f)}}}for(let{name:o}of Array.from(r))o in i||n.removeAttribute(o);e.scrollLeft&&(n.scrollLeft=e.scrollLeft),e.scrollTop&&(n.scrollTop=e.scrollTop)}a(pk,"diffProps");function Bw(n,e,t,r){let i=Array.from(n.childNodes),o=e.childNodes;if(i.length===0&&o.length===0)return;let l=0,u=i.length-1,f=0,h=o.length-1,p=i[l],g=i[u],y=o[f],x=o[h],w,C;for(;l<=u&&f<=h;)if(p===void 0)p=i[++l];else if(g===void 0)g=i[--u];else if(hi(p,y,t.mirror,r))p=i[++l],y=o[++f];else if(hi(g,x,t.mirror,r))g=i[--u],x=o[--h];else if(hi(p,x,t.mirror,r)){try{n.insertBefore(p,g.nextSibling)}catch(O){console.warn(O)}p=i[++l],x=o[--h]}else if(hi(g,y,t.mirror,r)){try{n.insertBefore(g,p)}catch(O){console.warn(O)}g=i[--u],y=o[++f]}else{if(!w){w={};for(let R=l;R<=u;R++){let L=i[R];L&&t.mirror.hasNode(L)&&(w[t.mirror.getId(L)]=R)}}C=w[r.getId(y)];let O=i[C];if(C!==void 0&&O&&hi(O,y,t.mirror,r)){try{n.insertBefore(O,p)}catch(R){console.warn(R)}i[C]=void 0}else{let R=fl(y,t.mirror,r);n.nodeName==="#document"&&p&&(R.nodeType===R.DOCUMENT_TYPE_NODE&&p.nodeType===p.DOCUMENT_TYPE_NODE||R.nodeType===R.ELEMENT_NODE&&p.nodeType===p.ELEMENT_NODE)&&(n.removeChild(p),t.mirror.removeNodeFromMap(p),p=i[++l]);try{n.insertBefore(R,p||null)}catch(L){console.warn(L)}}y=o[++f]}if(l>u){let O=o[h+1],R=null;for(O&&(R=t.mirror.getNode(r.getId(O)));f<=h;++f){let L=fl(o[f],t.mirror,r);try{n.insertBefore(L,R)}catch(B){console.warn(B)}}}else if(f>h)for(;l<=u;l++){let O=i[l];if(!(!O||O.parentNode!==n))try{n.removeChild(O),t.mirror.removeNodeFromMap(O)}catch(R){console.warn(R)}}let E=n.firstChild,M=e.firstChild;for(;E!==null&&M!==null;)ul(E,M,t,r),E=E.nextSibling,M=M.nextSibling}a(Bw,"diffChildren");function fl(n,e,t){let r=t.getId(n),i=t.getMeta(n),o=null;if(r>-1&&(o=e.getNode(r)),o!==null&&sh(o,n))return o;switch(n.RRNodeType){case be.Document:o=new Document;break;case be.DocumentType:o=document.implementation.createDocumentType(n.name,n.publicId,n.systemId);break;case be.Element:{let l=n.tagName.toLowerCase();l=fk[l]||l,i&&"isSVG"in i&&i?.isSVG?o=document.createElementNS(gd.svg,l):o=document.createElement(n.tagName);break}case be.Text:o=document.createTextNode(n.data);break;case be.Comment:o=document.createComment(n.data);break;case be.CDATA:o=document.createCDATASection(n.data);break}i&&e.add(o,{...i});try{Er?.add(o)}catch{}return o}a(fl,"createOrGetNode");function sh(n,e){return n.nodeType!==e.nodeType?!1:n.nodeType!==n.ELEMENT_NODE||n.tagName.toUpperCase()===e.tagName}a(sh,"sameNodeType");function hi(n,e,t,r){let i=t.getId(n),o=r.getId(e);return i===-1||i!==o?!1:sh(n,e)}a(hi,"nodeMatching");var Ri=class n extends dd{static{a(this,"RRDocument")}constructor(e){super(),j(this,"UNSERIALIZED_STARTING_ID",-2),j(this,"_unserializedId",this.UNSERIALIZED_STARTING_ID),j(this,"mirror",Sk()),j(this,"scrollData",null),e&&(this.mirror=e)}get unserializedId(){return this._unserializedId--}createDocument(e,t,r){return new n}createDocumentType(e,t,r){let i=new mk(e,t,r);return i.ownerDocument=this,i}createElement(e){let t=e.toUpperCase(),r;switch(t){case"AUDIO":case"VIDEO":r=new yd(t);break;case"IFRAME":r=new Sd(t,this.mirror);break;case"CANVAS":r=new Ed(t);break;case"STYLE":r=new wd(t);break;case"DIALOG":r=new bd(t);break;default:r=new Ii(t);break}return r.ownerDocument=this,r}createComment(e){let t=new yk(e);return t.ownerDocument=this,t}createCDATASection(e){let t=new bk(e);return t.ownerDocument=this,t}createTextNode(e){let t=new gk(e);return t.ownerDocument=this,t}destroyTree(){this.firstChild=null,this.lastChild=null,this.mirror.reset()}open(){super.open(),this._unserializedId=this.UNSERIALIZED_STARTING_ID}},mk=ol,Ii=class extends Ti{static{a(this,"RRElement")}constructor(){super(...arguments),j(this,"inputData",null),j(this,"scrollData",null)}},yd=class extends hd{static{a(this,"RRMediaElement")}},bd=class extends pd{static{a(this,"RRDialogElement")}},Ed=class extends Ii{static{a(this,"RRCanvasElement")}constructor(){super(...arguments),j(this,"rr_dataURL",null),j(this,"canvasMutations",[])}getContext(){return null}},wd=class extends Ii{static{a(this,"RRStyleElement")}constructor(){super(...arguments),j(this,"rules",[])}},Sd=class extends Ii{static{a(this,"RRIFrameElement")}constructor(e,t){super(e),j(this,"contentDocument",new Ri),this.contentDocument.mirror=t}},gk=al,yk=ll,bk=cl;function Ek(n){return n instanceof HTMLFormElement?"FORM":n.tagName.toUpperCase()}a(Ek,"getValidTagName");function Ww(n,e,t,r){let i;switch(n.nodeType){case Wt.DOCUMENT_NODE:r&&r.nodeName==="IFRAME"?i=r.contentDocument:(i=e,i.compatMode=n.compatMode);break;case Wt.DOCUMENT_TYPE_NODE:{let l=n;i=e.createDocumentType(l.name,l.publicId,l.systemId);break}case Wt.ELEMENT_NODE:{let l=n,u=Ek(l);i=e.createElement(u);let f=i;for(let{name:h,value:p}of Array.from(l.attributes))f.attributes[h]=p;l.scrollLeft&&(f.scrollLeft=l.scrollLeft),l.scrollTop&&(f.scrollTop=l.scrollTop);break}case Wt.TEXT_NODE:i=e.createTextNode(n.textContent||"");break;case Wt.CDATA_SECTION_NODE:i=e.createCDATASection(n.data);break;case Wt.COMMENT_NODE:i=e.createComment(n.textContent||"");break;case Wt.DOCUMENT_FRAGMENT_NODE:i=r.attachShadow({mode:"open"});break;default:return null}let o=t.getMeta(n);return e instanceof Ri&&(o||(o=Vw(i,e.unserializedId),t.add(n,o)),e.mirror.add(i,{...o})),i}a(Ww,"buildFromNode");function wk(n,e=g_(),t=new Ri){function r(i,o){let l=Ww(i,t,e,o);if(l!==null)if(o?.nodeName!=="IFRAME"&&i.nodeType!==Wt.DOCUMENT_FRAGMENT_NODE&&(o?.appendChild(l),l.parentNode=o,l.parentElement=o),i.nodeName==="IFRAME"){let u=i.contentDocument;u&&r(u,l)}else(i.nodeType===Wt.DOCUMENT_NODE||i.nodeType===Wt.ELEMENT_NODE||i.nodeType===Wt.DOCUMENT_FRAGMENT_NODE)&&(i.nodeType===Wt.ELEMENT_NODE&&i.shadowRoot&&r(i.shadowRoot,l),i.childNodes.forEach(u=>r(u,l)))}return a(r,"walk2"),r(n,null),t}a(wk,"buildFromDom");function Sk(){return new vd}a(Sk,"createMirror");var vd=class{static{a(this,"Mirror22")}constructor(){j(this,"idNodeMap",new Map),j(this,"nodeMetaMap",new WeakMap)}getId(e){var t;return e?((t=this.getMeta(e))==null?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){let t=this.getId(e);this.idNodeMap.delete(t),e.childNodes&&e.childNodes.forEach(r=>this.removeNodeFromMap(r))}has(e){return this.idNodeMap.has(e)}hasNode(e){return this.nodeMetaMap.has(e)}add(e,t){let r=t.id;this.idNodeMap.set(r,e),this.nodeMetaMap.set(e,t)}replace(e,t){let r=this.getNode(e);if(r){let i=this.nodeMetaMap.get(r);i&&this.nodeMetaMap.set(t,i)}this.idNodeMap.set(e,t)}reset(){this.idNodeMap=new Map,this.nodeMetaMap=new WeakMap}};function Vw(n,e){switch(n.RRNodeType){case be.Document:return{id:e,type:n.RRNodeType,childNodes:[]};case be.DocumentType:{let t=n;return{id:e,type:n.RRNodeType,name:t.name,publicId:t.publicId,systemId:t.systemId}}case be.Element:return{id:e,type:n.RRNodeType,tagName:n.tagName.toLowerCase(),attributes:{},childNodes:[]};case be.Text:return{id:e,type:n.RRNodeType,textContent:n.textContent||""};case be.Comment:return{id:e,type:n.RRNodeType,textContent:n.textContent||""};case be.CDATA:return{id:e,type:n.RRNodeType,textContent:""}}}a(Vw,"getDefaultSN");var zb={Node:["childNodes","parentNode","parentElement","textContent"],ShadowRoot:["host","styleSheets"],Element:["shadowRoot","querySelector","querySelectorAll"],MutationObserver:[]},Gb={Node:["contains","getRootNode"],ShadowRoot:["getSelection"],Element:[],MutationObserver:["constructor"]},Ha={},vk=a(()=>!!globalThis.Zone,"isAngularZonePresent");function oh(n){if(Ha[n])return Ha[n];let e=globalThis[n],t=e.prototype,r=n in zb?zb[n]:void 0,i=!!(r&&r.every(u=>{var f,h;return!!((h=(f=Object.getOwnPropertyDescriptor(t,u))==null?void 0:f.get)!=null&&h.toString().includes("[native code]"))})),o=n in Gb?Gb[n]:void 0,l=!!(o&&o.every(u=>{var f;return typeof t[u]=="function"&&((f=t[u])==null?void 0:f.toString().includes("[native code]"))}));if(i&&l&&!vk())return Ha[n]=e.prototype,e.prototype;try{let u=document.createElement("iframe");document.body.appendChild(u);let f=u.contentWindow;if(!f)return e.prototype;let h=f[n].prototype;return document.body.removeChild(u),h?Ha[n]=h:t}catch{return t}}a(oh,"getUntaintedPrototype");var If={};function un(n,e,t){var r;let i=`${n}.${String(t)}`;if(If[i])return If[i].call(e);let o=oh(n),l=(r=Object.getOwnPropertyDescriptor(o,t))==null?void 0:r.get;return l?(If[i]=l,l.call(e)):e[t]}a(un,"getUntaintedAccessor");var Af={};function Uw(n,e,t){let r=`${n}.${String(t)}`;if(Af[r])return Af[r].bind(e);let o=oh(n)[t];return typeof o!="function"?e[t]:(Af[r]=o,o.bind(e))}a(Uw,"getUntaintedMethod");function Ck(n){return un("Node",n,"childNodes")}a(Ck,"childNodes");function xk(n){return un("Node",n,"parentNode")}a(xk,"parentNode");function Mk(n){return un("Node",n,"parentElement")}a(Mk,"parentElement");function Tk(n){return un("Node",n,"textContent")}a(Tk,"textContent");function Rk(n,e){return Uw("Node",n,"contains")(e)}a(Rk,"contains");function Ik(n){return Uw("Node",n,"getRootNode")()}a(Ik,"getRootNode");function Ak(n){return!n||!("host"in n)?null:un("ShadowRoot",n,"host")}a(Ak,"host");function Ok(n){return n.styleSheets}a(Ok,"styleSheets");function Nk(n){return!n||!("shadowRoot"in n)?null:un("Element",n,"shadowRoot")}a(Nk,"shadowRoot");function Lk(n,e){return un("Element",n,"querySelector")(e)}a(Lk,"querySelector");function _k(n,e){return un("Element",n,"querySelectorAll")(e)}a(_k,"querySelectorAll");function zw(){return oh("MutationObserver").constructor}a(zw,"mutationObserverCtor");function kn(n,e,t){try{if(!(e in n))return()=>{};let r=n[e],i=t(r);return typeof i=="function"&&(i.prototype=i.prototype||{},Object.defineProperties(i,{__rrweb_original__:{enumerable:!1,value:r}})),n[e]=i,()=>{n[e]=r}}catch{return()=>{}}}a(kn,"patch");var pe={childNodes:Ck,parentNode:xk,parentElement:Mk,textContent:Tk,contains:Rk,getRootNode:Ik,host:Ak,styleSheets:Ok,shadowRoot:Nk,querySelector:Lk,querySelectorAll:_k,mutationObserver:zw,patch:kn};function vt(n,e,t=document){let r={capture:!0,passive:!0};return t.addEventListener(n,e,r),()=>t.removeEventListener(n,e,r)}a(vt,"on");var pi=`Please stop import mirror directly. Instead of that,\r
|
|
74
74
|
now you can use replayer.getMirror() to access the mirror instance of a replayer,\r
|
|
75
|
-
or you can use record.mirror to access the mirror instance during recording.`,jb={map:{},getId(){return console.error(pi),-1},getNode(){return console.error(pi),null},removeNodeFromMap(){console.error(pi)},has(){return console.error(pi),!1},reset(){console.error(pi)}};typeof window<"u"&&window.Proxy&&window.Reflect&&(jb=new Proxy(jb,{get(n,e,t){return e==="map"&&console.error(pi),Reflect.get(n,e,t)}}));function Bs(n,e,t={}){let r=null,i=0;return function(...o){let l=Date.now();!i&&t.leading===!1&&(i=l);let u=e-(l-i),f=this;u<=0||u>e?(r&&(clearTimeout(r),r=null),i=l,n.apply(f,o)):!r&&t.trailing!==!1&&(r=setTimeout(()=>{i=t.leading===!1?0:Date.now(),r=null,n.apply(f,o)},u))}}a(Bs,"throttle");function Ol(n,e,t,r,i=window){let o=i.Object.getOwnPropertyDescriptor(n,e);return i.Object.defineProperty(n,e,r?t:{set(l){setTimeout(()=>{t.set.call(this,l)},0),o&&o.set&&o.set.call(this,l)}}),()=>Ol(n,e,o||{},!0)}a(Ol,"hookSetter");var dl=Date.now;/[1-9][0-9]{12}/.test(Date.now().toString())||(dl=a(()=>new Date().getTime(),"nowTimestamp"));function Gw(n){var e,t,r,i;let o=n.document;return{left:o.scrollingElement?o.scrollingElement.scrollLeft:n.pageXOffset!==void 0?n.pageXOffset:o.documentElement.scrollLeft||o?.body&&((e=pe.parentElement(o.body))==null?void 0:e.scrollLeft)||((t=o?.body)==null?void 0:t.scrollLeft)||0,top:o.scrollingElement?o.scrollingElement.scrollTop:n.pageYOffset!==void 0?n.pageYOffset:o?.documentElement.scrollTop||o?.body&&((r=pe.parentElement(o.body))==null?void 0:r.scrollTop)||((i=o?.body)==null?void 0:i.scrollTop)||0}}a(Gw,"getWindowScroll");function jw(){return window.innerHeight||document.documentElement&&document.documentElement.clientHeight||document.body&&document.body.clientHeight}a(jw,"getWindowHeight");function qw(){return window.innerWidth||document.documentElement&&document.documentElement.clientWidth||document.body&&document.body.clientWidth}a(qw,"getWindowWidth");function Yw(n){return n?n.nodeType===n.ELEMENT_NODE?n:pe.parentElement(n):null}a(Yw,"closestElementOfNode");function Ct(n,e,t,r){if(!n)return!1;let i=Yw(n);if(!i)return!1;try{if(typeof e=="string"){if(i.classList.contains(e)||r&&i.closest("."+e)!==null)return!0}else if(Za(i,e,r))return!0}catch{}return!!(t&&(i.matches(t)||r&&i.closest(t)!==null))}a(Ct,"isBlocked");function Dk(n,e){return e.getId(n)!==-1}a(Dk,"isSerialized");function Of(n,e,t){return n.tagName==="TITLE"&&t.headTitleMutations?!0:e.getId(n)===Ns}a(Of,"isIgnored");function Kw(n,e){if(Ms(n))return!1;let t=e.getId(n);if(!e.has(t))return!0;let r=pe.parentNode(n);return r&&r.nodeType===n.DOCUMENT_NODE?!1:r?Kw(r,e):!0}a(Kw,"isAncestorRemoved");function Cd(n){return!!n.changedTouches}a(Cd,"legacy_isTouchEvent");function Xw(n=window){"NodeList"in n&&!n.NodeList.prototype.forEach&&(n.NodeList.prototype.forEach=Array.prototype.forEach),"DOMTokenList"in n&&!n.DOMTokenList.prototype.forEach&&(n.DOMTokenList.prototype.forEach=Array.prototype.forEach)}a(Xw,"polyfill$1");function kk(n){let e={},t=a((i,o)=>{let l={value:i,parent:o,children:[]};return e[i.node.id]=l,l},"putIntoMap"),r=[];for(let i of n){let{nextId:o,parentId:l}=i;if(o&&o in e){let u=e[o];if(u.parent){let f=u.parent.children.indexOf(u);u.parent.children.splice(f,0,t(i,u.parent))}else{let f=r.indexOf(u);r.splice(f,0,t(i,null))}continue}if(l in e){let u=e[l];u.children.push(t(i,u));continue}r.push(t(i,null))}return r}a(kk,"queueToResolveTrees");function Zw(n,e){e(n.value);for(let t=n.children.length-1;t>=0;t--)Zw(n.children[t],e)}a(Zw,"iterateResolveTree");function Is(n,e){return!!(n.nodeName==="IFRAME"&&e.getMeta(n))}a(Is,"isSerializedIframe");function Jw(n,e){return!!(n.nodeName==="LINK"&&n.nodeType===n.ELEMENT_NODE&&n.getAttribute&&n.getAttribute("rel")==="stylesheet"&&e.getMeta(n))}a(Jw,"isSerializedStylesheet");function Qw(n,e){var t,r;let i=(r=(t=n.ownerDocument)==null?void 0:t.defaultView)==null?void 0:r.frameElement;if(!i||i===e)return{x:0,y:0,relativeScale:1,absoluteScale:1};let o=i.getBoundingClientRect(),l=Qw(i,e),u=o.height/i.clientHeight;return{x:o.x*l.relativeScale+l.x,y:o.y*l.relativeScale+l.y,relativeScale:u,absoluteScale:l.absoluteScale*u}}a(Qw,"getBaseDimension");function Nn(n){return n?n instanceof or&&"shadowRoot"in n?!!n.shadowRoot:!!pe.shadowRoot(n):!1}a(Nn,"hasShadowRoot");function Cs(n,e){let t=n[e[0]];return e.length===1?t:Cs(t.cssRules[e[1]].cssRules,e.slice(2))}a(Cs,"getNestedRule");function qb(n){let e=[...n],t=e.pop();return{positions:e,index:t}}a(qb,"getPositionsAndIndex");function Pk(n){let e=new Set,t=[];for(let r=n.length;r--;){let i=n[r];e.has(i.id)||(t.push(i),e.add(i.id))}return t}a(Pk,"uniqueTextMutations");var hl=class{static{a(this,"StyleSheetMirror")}constructor(){k(this,"id",1),k(this,"styleIDMap",new WeakMap),k(this,"idStyleMap",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 r;return t===void 0?r=this.id++:r=t,this.styleIDMap.set(e,r),this.idStyleMap.set(r,e),r}getStyle(e){return this.idStyleMap.get(e)||null}reset(){this.styleIDMap=new WeakMap,this.idStyleMap=new Map,this.id=1}generateId(){return this.id++}};function eS(n){var e;let t=null;return"getRootNode"in n&&((e=pe.getRootNode(n))==null?void 0:e.nodeType)===Node.DOCUMENT_FRAGMENT_NODE&&pe.host(pe.getRootNode(n))&&(t=pe.host(pe.getRootNode(n))),t}a(eS,"getShadowHost");function Fk(n){let e=n,t;for(;t=eS(e);)e=t;return e}a(Fk,"getRootShadowHost");function Hk(n){let e=n.ownerDocument;if(!e)return!1;let t=Fk(n);return pe.contains(e,t)}a(Hk,"shadowHostInDom");function tS(n){let e=n.ownerDocument;return e?pe.contains(e,n)||Hk(n):!1}a(tS,"inDom");var W=(n=>(n[n.DomContentLoaded=0]="DomContentLoaded",n[n.Load=1]="Load",n[n.FullSnapshot=2]="FullSnapshot",n[n.IncrementalSnapshot=3]="IncrementalSnapshot",n[n.Meta=4]="Meta",n[n.Custom=5]="Custom",n[n.Plugin=6]="Plugin",n))(W||{}),$=(n=>(n[n.Mutation=0]="Mutation",n[n.MouseMove=1]="MouseMove",n[n.MouseInteraction=2]="MouseInteraction",n[n.Scroll=3]="Scroll",n[n.ViewportResize=4]="ViewportResize",n[n.Input=5]="Input",n[n.TouchMove=6]="TouchMove",n[n.MediaInteraction=7]="MediaInteraction",n[n.StyleSheetRule=8]="StyleSheetRule",n[n.CanvasMutation=9]="CanvasMutation",n[n.Font=10]="Font",n[n.Log=11]="Log",n[n.Drag=12]="Drag",n[n.StyleDeclaration=13]="StyleDeclaration",n[n.Selection=14]="Selection",n[n.AdoptedStyleSheet=15]="AdoptedStyleSheet",n[n.CustomElement=16]="CustomElement",n))($||{}),K=(n=>(n[n.MouseUp=0]="MouseUp",n[n.MouseDown=1]="MouseDown",n[n.Click=2]="Click",n[n.ContextMenu=3]="ContextMenu",n[n.DblClick=4]="DblClick",n[n.Focus=5]="Focus",n[n.Blur=6]="Blur",n[n.TouchStart=7]="TouchStart",n[n.TouchMove_Departed=8]="TouchMove_Departed",n[n.TouchEnd=9]="TouchEnd",n[n.TouchCancel=10]="TouchCancel",n))(K||{}),Pr=(n=>(n[n.Mouse=0]="Mouse",n[n.Pen=1]="Pen",n[n.Touch=2]="Touch",n))(Pr||{}),Br=(n=>(n[n["2D"]=0]="2D",n[n.WebGL=1]="WebGL",n[n.WebGL2=2]="WebGL2",n))(Br||{}),on=(n=>(n[n.Play=0]="Play",n[n.Pause=1]="Pause",n[n.Seeked=2]="Seeked",n[n.VolumeChange=3]="VolumeChange",n[n.RateChange=4]="RateChange",n))(on||{}),ye=(n=>(n.Start="start",n.Pause="pause",n.Resume="resume",n.Resize="resize",n.Finish="finish",n.FullsnapshotRebuilded="fullsnapshot-rebuilded",n.LoadStylesheetStart="load-stylesheet-start",n.LoadStylesheetEnd="load-stylesheet-end",n.SkipStart="skip-start",n.SkipEnd="skip-end",n.MouseInteraction="mouse-interaction",n.EventCast="event-cast",n.CustomEvent="custom-event",n.Flush="flush",n.StateChange="state-change",n.PlayBack="play-back",n.Destroy="destroy",n))(ye||{}),Fr=(n=>(n[n.Document=0]="Document",n[n.DocumentType=1]="DocumentType",n[n.Element=2]="Element",n[n.Text=3]="Text",n[n.CDATA=4]="CDATA",n[n.Comment=5]="Comment",n))(Fr||{});function Yb(n){return"__ln"in n}a(Yb,"isNodeInLinkedList");var xd=class{static{a(this,"DoubleLinkedList")}constructor(){k(this,"length",0),k(this,"head",null),k(this,"tail",null)}get(e){if(e>=this.length)throw new Error("Position outside of list range");let t=this.head;for(let r=0;r<e;r++)t=t?.next||null;return t}addNode(e){let t={value:e,previous:null,next:null};if(e.__ln=t,e.previousSibling&&Yb(e.previousSibling)){let r=e.previousSibling.__ln.next;t.next=r,t.previous=e.previousSibling.__ln,e.previousSibling.__ln.next=t,r&&(r.previous=t)}else if(e.nextSibling&&Yb(e.nextSibling)&&e.nextSibling.__ln.previous){let r=e.nextSibling.__ln.previous;t.previous=r,t.next=e.nextSibling.__ln,e.nextSibling.__ln.previous=t,r&&(r.next=t)}else this.head&&(this.head.previous=t),t.next=this.head,this.head=t;t.next===null&&(this.tail=t),this.length++}removeNode(e){let 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--)}},Kb=a((n,e)=>`${n}@${e}`,"moveKey"),Md=class{static{a(this,"MutationBuffer")}constructor(){k(this,"frozen",!1),k(this,"locked",!1),k(this,"texts",[]),k(this,"attributes",[]),k(this,"attributeMap",new WeakMap),k(this,"removes",[]),k(this,"mapRemoves",[]),k(this,"movedMap",{}),k(this,"addedSet",new Set),k(this,"movedSet",new Set),k(this,"droppedSet",new Set),k(this,"removesSubTreeCache",new Set),k(this,"mutationCb"),k(this,"blockClass"),k(this,"blockSelector"),k(this,"maskTextClass"),k(this,"maskTextSelector"),k(this,"inlineStylesheet"),k(this,"maskInputOptions"),k(this,"maskTextFn"),k(this,"maskInputFn"),k(this,"keepIframeSrcFn"),k(this,"recordCanvas"),k(this,"inlineImages"),k(this,"slimDOMOptions"),k(this,"dataURLOptions"),k(this,"doc"),k(this,"mirror"),k(this,"iframeManager"),k(this,"stylesheetManager"),k(this,"shadowDomManager"),k(this,"canvasManager"),k(this,"processedNodeManager"),k(this,"unattachedDoc"),k(this,"processMutations",e=>{e.forEach(this.processMutation),this.emit()}),k(this,"emit",()=>{if(this.frozen||this.locked)return;let e=[],t=new Set,r=new xd,i=a(f=>{let h=f,p=Ns;for(;p===Ns;)h=h&&h.nextSibling,p=h&&this.mirror.getId(h);return p},"getNextId"),o=a(f=>{let h=pe.parentNode(f);if(!h||!tS(f))return;let p=!1;if(f.nodeType===Node.TEXT_NODE){let w=h.tagName;if(w==="TEXTAREA")return;w==="STYLE"&&this.addedSet.has(h)&&(p=!0)}let g=Ms(h)?this.mirror.getId(eS(f)):this.mirror.getId(h),y=i(f);if(g===-1||y===-1)return r.addNode(f);let x=yi(f,{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:a(w=>{Is(w,this.mirror)&&this.iframeManager.addIframe(w),Jw(w,this.mirror)&&this.stylesheetManager.trackLinkElement(w),Nn(f)&&this.shadowDomManager.addShadowRoot(pe.shadowRoot(f),this.doc)},"onSerialize"),onIframeLoad:a((w,C)=>{this.iframeManager.attachIframe(w,C),this.shadowDomManager.observeAttachShadow(w)},"onIframeLoad"),onStylesheetLoad:a((w,C)=>{this.stylesheetManager.attachLinkElement(w,C)},"onStylesheetLoad"),cssCaptured:p});x&&(e.push({parentId:g,nextId:y,node:x}),t.add(x.id))},"pushAdd");for(;this.mapRemoves.length;)this.mirror.removeNodeFromMap(this.mapRemoves.shift());for(let f of this.movedSet)Xb(this.removesSubTreeCache,f,this.mirror)&&!this.movedSet.has(pe.parentNode(f))||o(f);for(let f of this.addedSet)!Zb(this.droppedSet,f)&&!Xb(this.removesSubTreeCache,f,this.mirror)||Zb(this.movedSet,f)?o(f):this.droppedSet.add(f);let l=null;for(;r.length;){let f=null;if(l){let h=this.mirror.getId(pe.parentNode(l.value)),p=i(l.value);h!==-1&&p!==-1&&(f=l)}if(!f){let h=r.tail;for(;h;){let p=h;if(h=h.previous,p){let g=this.mirror.getId(pe.parentNode(p.value));if(i(p.value)===-1)continue;if(g!==-1){f=p;break}else{let x=p.value,w=pe.parentNode(x);if(w&&w.nodeType===Node.DOCUMENT_FRAGMENT_NODE){let C=pe.host(w);if(this.mirror.getId(C)!==-1){f=p;break}}}}}}if(!f){for(;r.head;)r.removeNode(r.head.value);break}l=f.previous,r.removeNode(f.value),o(f.value)}let u={texts:this.texts.map(f=>{let h=f.node,p=pe.parentNode(h);return p&&p.tagName==="TEXTAREA"&&this.genTextAreaValueMutation(p),{id:this.mirror.getId(h),value:f.value}}).filter(f=>!t.has(f.id)).filter(f=>this.mirror.has(f.id)),attributes:this.attributes.map(f=>{let{attributes:h}=f;if(typeof h.style=="string"){let p=JSON.stringify(f.styleDiff),g=JSON.stringify(f._unchangedStyles);p.length<h.style.length&&(p+g).split("var(").length===h.style.split("var(").length&&(h.style=f.styleDiff)}return{id:this.mirror.getId(f.node),attributes:h}}).filter(f=>!t.has(f.id)).filter(f=>this.mirror.has(f.id)),removes:this.removes,adds:e};!u.texts.length&&!u.attributes.length&&!u.removes.length&&!u.adds.length||(this.texts=[],this.attributes=[],this.attributeMap=new WeakMap,this.removes=[],this.addedSet=new Set,this.movedSet=new Set,this.droppedSet=new Set,this.removesSubTreeCache=new Set,this.movedMap={},this.mutationCb(u))}),k(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));let r=Array.from(pe.childNodes(e),i=>pe.textContent(i)||"").join("");t.attributes.value=Ya({element:e,maskInputOptions:this.maskInputOptions,tagName:e.tagName,type:Ka(e),value:r,maskInputFn:this.maskInputFn})}),k(this,"processMutation",e=>{if(!Of(e.target,this.mirror,this.slimDOMOptions))switch(e.type){case"characterData":{let t=pe.textContent(e.target);!Ct(e.target,this.blockClass,this.blockSelector,!1)&&t!==e.oldValue&&this.texts.push({value:EE(e.target,this.maskTextClass,this.maskTextSelector,!0)&&t?this.maskTextFn?this.maskTextFn(t,Yw(e.target)):t.replace(/[\S]/g,"*"):t,node:e.target});break}case"attributes":{let t=e.target,r=e.attributeName,i=e.target.getAttribute(r);if(r==="value"){let l=Ka(t);i=Ya({element:t,maskInputOptions:this.maskInputOptions,tagName:t.tagName,type:l,value:i,maskInputFn:this.maskInputFn})}if(Ct(e.target,this.blockClass,this.blockSelector,!1)||i===e.oldValue)return;let o=this.attributeMap.get(e.target);if(t.tagName==="IFRAME"&&r==="src"&&!this.keepIframeSrcFn(i))if(!t.contentDocument)r="rr_src";else return;if(o||(o={node:e.target,attributes:{},styleDiff:{},_unchangedStyles:{}},this.attributes.push(o),this.attributeMap.set(e.target,o)),r==="type"&&t.tagName==="INPUT"&&(e.oldValue||"").toLowerCase()==="password"&&t.setAttribute("data-rr-is-password","true"),!bE(t.tagName,r))if(o.attributes[r]=yE(this.doc,ln(t.tagName),ln(r),i),r==="style"){if(!this.unattachedDoc)try{this.unattachedDoc=document.implementation.createHTMLDocument()}catch{this.unattachedDoc=this.doc}let l=this.unattachedDoc.createElement("span");e.oldValue&&l.setAttribute("style",e.oldValue);for(let u of Array.from(t.style)){let f=t.style.getPropertyValue(u),h=t.style.getPropertyPriority(u);f!==l.style.getPropertyValue(u)||h!==l.style.getPropertyPriority(u)?h===""?o.styleDiff[u]=f:o.styleDiff[u]=[f,h]:o._unchangedStyles[u]=[f,h]}for(let u of Array.from(l.style))t.style.getPropertyValue(u)===""&&(o.styleDiff[u]=!1)}else r==="open"&&t.tagName==="DIALOG"&&(t.matches("dialog:modal")?o.attributes.rr_open_mode="modal":o.attributes.rr_open_mode="non-modal");break}case"childList":{if(Ct(e.target,this.blockClass,this.blockSelector,!0))return;if(e.target.tagName==="TEXTAREA"){this.genTextAreaValueMutation(e.target);return}e.addedNodes.forEach(t=>this.genAdds(t,e.target)),e.removedNodes.forEach(t=>{let r=this.mirror.getId(t),i=Ms(e.target)?this.mirror.getId(pe.host(e.target)):this.mirror.getId(e.target);Ct(e.target,this.blockClass,this.blockSelector,!1)||Of(t,this.mirror,this.slimDOMOptions)||!Dk(t,this.mirror)||(this.addedSet.has(t)?(Td(this.addedSet,t),this.droppedSet.add(t)):this.addedSet.has(e.target)&&r===-1||Kw(e.target,this.mirror)||(this.movedSet.has(t)&&this.movedMap[Kb(r,i)]?Td(this.movedSet,t):(this.removes.push({parentId:i,id:r,isShadow:Ms(e.target)&&Ts(e.target)?!0:void 0}),$k(t,this.removesSubTreeCache))),this.mapRemoves.push(t))});break}}}),k(this,"genAdds",(e,t)=>{if(!this.processedNodeManager.inOtherBuffer(e,this)&&!(this.addedSet.has(e)||this.movedSet.has(e))){if(this.mirror.hasNode(e)){if(Of(e,this.mirror,this.slimDOMOptions))return;this.movedSet.add(e);let r=null;t&&this.mirror.hasNode(t)&&(r=this.mirror.getId(t)),r&&r!==-1&&(this.movedMap[Kb(this.mirror.getId(e),r)]=!0)}else this.addedSet.add(e),this.droppedSet.delete(e);Ct(e,this.blockClass,this.blockSelector,!1)||(pe.childNodes(e).forEach(r=>this.genAdds(r)),Nn(e)&&pe.childNodes(pe.shadowRoot(e)).forEach(r=>{this.processedNodeManager.add(r,this),this.genAdds(r,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 Td(n,e){n.delete(e),pe.childNodes(e).forEach(t=>Td(n,t))}a(Td,"deepDelete");function $k(n,e){let t=[n];for(;t.length;){let r=t.pop();e.has(r)||(e.add(r),pe.childNodes(r).forEach(i=>t.push(i)))}}a($k,"processRemoves");function Xb(n,e,t){return n.size===0?!1:Bk(n,e)}a(Xb,"isParentRemoved");function Bk(n,e,t){let r=pe.parentNode(e);return r?n.has(r):!1}a(Bk,"_isParentRemoved");function Zb(n,e){return n.size===0?!1:rS(n,e)}a(Zb,"isAncestorInSet");function rS(n,e){let t=pe.parentNode(e);return t?n.has(t)?!0:rS(n,t):!1}a(rS,"_isAncestorInSet");var As;function Wk(n){As=n}a(Wk,"registerErrorHandler");function Vk(){As=void 0}a(Vk,"unregisterErrorHandler");var we=a(n=>As?a((...t)=>{try{return n(...t)}catch(r){if(As&&As(r)===!0)return;throw r}},"rrwebWrapped"):n,"callbackWrapper"),Ln=[];function Gs(n){try{if("composedPath"in n){let e=n.composedPath();if(e.length)return e[0]}else if("path"in n&&n.path.length)return n.path[0]}catch{}return n&&n.target}a(Gs,"getEventTarget");function nS(n,e){let t=new Md;Ln.push(t),t.init(n);let r=new(zw())(we(t.processMutations.bind(t)));return r.observe(e,{attributes:!0,attributeOldValue:!0,characterData:!0,characterDataOldValue:!0,childList:!0,subtree:!0}),r}a(nS,"initMutationObserver");function Uk({mousemoveCb:n,sampling:e,doc:t,mirror:r}){if(e.mousemove===!1)return()=>{};let i=typeof e.mousemove=="number"?e.mousemove:50,o=typeof e.mousemoveCallback=="number"?e.mousemoveCallback:500,l=[],u,f=Bs(we(g=>{let y=Date.now()-u;n(l.map(x=>(x.timeOffset-=y,x)),g),l=[],u=null}),o),h=we(Bs(we(g=>{let y=Gs(g),{clientX:x,clientY:w}=Cd(g)?g.changedTouches[0]:g;u||(u=dl()),l.push({x,y:w,id:r.getId(y),timeOffset:dl()-u}),f(typeof DragEvent<"u"&&g instanceof DragEvent?$.Drag:g instanceof MouseEvent?$.MouseMove:$.TouchMove)}),i,{trailing:!1})),p=[vt("mousemove",h,t),vt("touchmove",h,t),vt("drag",h,t)];return we(()=>{p.forEach(g=>g())})}a(Uk,"initMoveObserver");function zk({mouseInteractionCb:n,doc:e,mirror:t,blockClass:r,blockSelector:i,sampling:o}){if(o.mouseInteraction===!1)return()=>{};let l=o.mouseInteraction===!0||o.mouseInteraction===void 0?{}:o.mouseInteraction,u=[],f=null,h=a(p=>g=>{let y=Gs(g);if(Ct(y,r,i,!0))return;let x=null,w=p;if("pointerType"in g){switch(g.pointerType){case"mouse":x=Pr.Mouse;break;case"touch":x=Pr.Touch;break;case"pen":x=Pr.Pen;break}x===Pr.Touch?K[p]===K.MouseDown?w="TouchStart":K[p]===K.MouseUp&&(w="TouchEnd"):Pr.Pen}else Cd(g)&&(x=Pr.Touch);x!==null?(f=x,(w.startsWith("Touch")&&x===Pr.Touch||w.startsWith("Mouse")&&x===Pr.Mouse)&&(x=null)):K[p]===K.Click&&(x=f,f=null);let C=Cd(g)?g.changedTouches[0]:g;if(!C)return;let E=t.getId(y),{clientX:M,clientY:O}=C;we(n)({type:K[w],id:E,x:M,y:O,...x!==null&&{pointerType:x}})},"getHandler");return Object.keys(K).filter(p=>Number.isNaN(Number(p))&&!p.endsWith("_Departed")&&l[p]!==!1).forEach(p=>{let g=ln(p),y=h(p);if(window.PointerEvent)switch(K[p]){case K.MouseDown:case K.MouseUp:g=g.replace("mouse","pointer");break;case K.TouchStart:case K.TouchEnd:return}u.push(vt(g,y,e))}),we(()=>{u.forEach(p=>p())})}a(zk,"initMouseInteractionObserver");function iS({scrollCb:n,doc:e,mirror:t,blockClass:r,blockSelector:i,sampling:o}){let l=we(Bs(we(u=>{let f=Gs(u);if(!f||Ct(f,r,i,!0))return;let h=t.getId(f);if(f===e&&e.defaultView){let p=Gw(e.defaultView);n({id:h,x:p.left,y:p.top})}else n({id:h,x:f.scrollLeft,y:f.scrollTop})}),o.scroll||100));return vt("scroll",l,e)}a(iS,"initScrollObserver");function Gk({viewportResizeCb:n},{win:e}){let t=-1,r=-1,i=we(Bs(we(()=>{let o=jw(),l=qw();(t!==o||r!==l)&&(n({width:Number(l),height:Number(o)}),t=o,r=l)}),200));return vt("resize",i,e)}a(Gk,"initViewportResizeObserver");var jk=["INPUT","TEXTAREA","SELECT"],Jb=new WeakMap;function qk({inputCb:n,doc:e,mirror:t,blockClass:r,blockSelector:i,ignoreClass:o,ignoreSelector:l,maskInputOptions:u,maskInputFn:f,sampling:h,userTriggeredOnInput:p}){function g(O){let R=Gs(O),L=O.isTrusted,B=R&&R.tagName;if(R&&B==="OPTION"&&(R=pe.parentElement(R)),!R||!B||jk.indexOf(B)<0||Ct(R,r,i,!0)||R.classList.contains(o)||l&&R.matches(l))return;let U=R.value,J=!1,te=Ka(R)||"";te==="radio"||te==="checkbox"?J=R.checked:(u[B.toLowerCase()]||u[te])&&(U=Ya({element:R,maskInputOptions:u,tagName:B,type:te,value:U,maskInputFn:f})),y(R,p?{text:U,isChecked:J,userTriggered:L}:{text:U,isChecked:J});let ce=R.name;te==="radio"&&ce&&J&&e.querySelectorAll(`input[type="radio"][name="${ce}"]`).forEach(Se=>{if(Se!==R){let Fe=Se.value;y(Se,p?{text:Fe,isChecked:!J,userTriggered:!1}:{text:Fe,isChecked:!J})}})}a(g,"eventHandler");function y(O,R){let L=Jb.get(O);if(!L||L.text!==R.text||L.isChecked!==R.isChecked){Jb.set(O,R);let B=t.getId(O);we(n)({...R,id:B})}}a(y,"cbWithDedup");let w=(h.input==="last"?["change"]:["input","change"]).map(O=>vt(O,we(g),e)),C=e.defaultView;if(!C)return()=>{w.forEach(O=>O())};let E=C.Object.getOwnPropertyDescriptor(C.HTMLInputElement.prototype,"value"),M=[[C.HTMLInputElement.prototype,"value"],[C.HTMLInputElement.prototype,"checked"],[C.HTMLSelectElement.prototype,"value"],[C.HTMLTextAreaElement.prototype,"value"],[C.HTMLSelectElement.prototype,"selectedIndex"],[C.HTMLOptionElement.prototype,"selected"]];return E&&E.set&&w.push(...M.map(O=>Ol(O[0],O[1],{set(){we(g)({target:this,isTrusted:!1})}},!1,C))),we(()=>{w.forEach(O=>O())})}a(qk,"initInputObserver");function pl(n){let e=[];function t(r,i){if($a("CSSGroupingRule")&&r.parentRule instanceof CSSGroupingRule||$a("CSSMediaRule")&&r.parentRule instanceof CSSMediaRule||$a("CSSSupportsRule")&&r.parentRule instanceof CSSSupportsRule||$a("CSSConditionRule")&&r.parentRule instanceof CSSConditionRule){let l=Array.from(r.parentRule.cssRules).indexOf(r);i.unshift(l)}else if(r.parentStyleSheet){let l=Array.from(r.parentStyleSheet.cssRules).indexOf(r);i.unshift(l)}return i}return a(t,"recurse"),t(n,e)}a(pl,"getNestedCSSRulePositions");function sn(n,e,t){let r,i;return n?(n.ownerNode?r=e.getId(n.ownerNode):i=t.getId(n),{styleId:i,id:r}):{}}a(sn,"getIdAndStyleId");function Yk({styleSheetRuleCb:n,mirror:e,stylesheetManager:t},{win:r}){if(!r.CSSStyleSheet||!r.CSSStyleSheet.prototype)return()=>{};let i=r.CSSStyleSheet.prototype.insertRule;r.CSSStyleSheet.prototype.insertRule=new Proxy(i,{apply:we((p,g,y)=>{let[x,w]=y,{id:C,styleId:E}=sn(g,e,t.styleMirror);return(C&&C!==-1||E&&E!==-1)&&n({id:C,styleId:E,adds:[{rule:x,index:w}]}),p.apply(g,y)})}),r.CSSStyleSheet.prototype.addRule=function(p,g,y=this.cssRules.length){let x=`${p} { ${g} }`;return r.CSSStyleSheet.prototype.insertRule.apply(this,[x,y])};let o=r.CSSStyleSheet.prototype.deleteRule;r.CSSStyleSheet.prototype.deleteRule=new Proxy(o,{apply:we((p,g,y)=>{let[x]=y,{id:w,styleId:C}=sn(g,e,t.styleMirror);return(w&&w!==-1||C&&C!==-1)&&n({id:w,styleId:C,removes:[{index:x}]}),p.apply(g,y)})}),r.CSSStyleSheet.prototype.removeRule=function(p){return r.CSSStyleSheet.prototype.deleteRule.apply(this,[p])};let l;r.CSSStyleSheet.prototype.replace&&(l=r.CSSStyleSheet.prototype.replace,r.CSSStyleSheet.prototype.replace=new Proxy(l,{apply:we((p,g,y)=>{let[x]=y,{id:w,styleId:C}=sn(g,e,t.styleMirror);return(w&&w!==-1||C&&C!==-1)&&n({id:w,styleId:C,replace:x}),p.apply(g,y)})}));let u;r.CSSStyleSheet.prototype.replaceSync&&(u=r.CSSStyleSheet.prototype.replaceSync,r.CSSStyleSheet.prototype.replaceSync=new Proxy(u,{apply:we((p,g,y)=>{let[x]=y,{id:w,styleId:C}=sn(g,e,t.styleMirror);return(w&&w!==-1||C&&C!==-1)&&n({id:w,styleId:C,replaceSync:x}),p.apply(g,y)})}));let f={};Ba("CSSGroupingRule")?f.CSSGroupingRule=r.CSSGroupingRule:(Ba("CSSMediaRule")&&(f.CSSMediaRule=r.CSSMediaRule),Ba("CSSConditionRule")&&(f.CSSConditionRule=r.CSSConditionRule),Ba("CSSSupportsRule")&&(f.CSSSupportsRule=r.CSSSupportsRule));let h={};return Object.entries(f).forEach(([p,g])=>{h[p]={insertRule:g.prototype.insertRule,deleteRule:g.prototype.deleteRule},g.prototype.insertRule=new Proxy(h[p].insertRule,{apply:we((y,x,w)=>{let[C,E]=w,{id:M,styleId:O}=sn(x.parentStyleSheet,e,t.styleMirror);return(M&&M!==-1||O&&O!==-1)&&n({id:M,styleId:O,adds:[{rule:C,index:[...pl(x),E||0]}]}),y.apply(x,w)})}),g.prototype.deleteRule=new Proxy(h[p].deleteRule,{apply:we((y,x,w)=>{let[C]=w,{id:E,styleId:M}=sn(x.parentStyleSheet,e,t.styleMirror);return(E&&E!==-1||M&&M!==-1)&&n({id:E,styleId:M,removes:[{index:[...pl(x),C]}]}),y.apply(x,w)})})}),we(()=>{r.CSSStyleSheet.prototype.insertRule=i,r.CSSStyleSheet.prototype.deleteRule=o,l&&(r.CSSStyleSheet.prototype.replace=l),u&&(r.CSSStyleSheet.prototype.replaceSync=u),Object.entries(f).forEach(([p,g])=>{g.prototype.insertRule=h[p].insertRule,g.prototype.deleteRule=h[p].deleteRule})})}a(Yk,"initStyleSheetObserver");function sS({mirror:n,stylesheetManager:e},t){var r,i,o;let l=null;t.nodeName==="#document"?l=n.getId(t):l=n.getId(pe.host(t));let u=t.nodeName==="#document"?(r=t.defaultView)==null?void 0:r.Document:(o=(i=t.ownerDocument)==null?void 0:i.defaultView)==null?void 0:o.ShadowRoot,f=u?.prototype?Object.getOwnPropertyDescriptor(u?.prototype,"adoptedStyleSheets"):void 0;return l===null||l===-1||!u||!f?()=>{}:(Object.defineProperty(t,"adoptedStyleSheets",{configurable:f.configurable,enumerable:f.enumerable,get(){var h;return(h=f.get)==null?void 0:h.call(this)},set(h){var p;let g=(p=f.set)==null?void 0:p.call(this,h);if(l!==null&&l!==-1)try{e.adoptStyleSheets(h,l)}catch{}return g}}),we(()=>{Object.defineProperty(t,"adoptedStyleSheets",{configurable:f.configurable,enumerable:f.enumerable,get:f.get,set:f.set})}))}a(sS,"initAdoptedStyleSheetObserver");function Kk({styleDeclarationCb:n,mirror:e,ignoreCSSAttributes:t,stylesheetManager:r},{win:i}){let o=i.CSSStyleDeclaration.prototype.setProperty;i.CSSStyleDeclaration.prototype.setProperty=new Proxy(o,{apply:we((u,f,h)=>{var p;let[g,y,x]=h;if(t.has(g))return o.apply(f,[g,y,x]);let{id:w,styleId:C}=sn((p=f.parentRule)==null?void 0:p.parentStyleSheet,e,r.styleMirror);return(w&&w!==-1||C&&C!==-1)&&n({id:w,styleId:C,set:{property:g,value:y,priority:x},index:pl(f.parentRule)}),u.apply(f,h)})});let l=i.CSSStyleDeclaration.prototype.removeProperty;return i.CSSStyleDeclaration.prototype.removeProperty=new Proxy(l,{apply:we((u,f,h)=>{var p;let[g]=h;if(t.has(g))return l.apply(f,[g]);let{id:y,styleId:x}=sn((p=f.parentRule)==null?void 0:p.parentStyleSheet,e,r.styleMirror);return(y&&y!==-1||x&&x!==-1)&&n({id:y,styleId:x,remove:{property:g},index:pl(f.parentRule)}),u.apply(f,h)})}),we(()=>{i.CSSStyleDeclaration.prototype.setProperty=o,i.CSSStyleDeclaration.prototype.removeProperty=l})}a(Kk,"initStyleDeclarationObserver");function Xk({mediaInteractionCb:n,blockClass:e,blockSelector:t,mirror:r,sampling:i,doc:o}){let l=we(f=>Bs(we(h=>{let p=Gs(h);if(!p||Ct(p,e,t,!0))return;let{currentTime:g,volume:y,muted:x,playbackRate:w,loop:C}=p;n({type:f,id:r.getId(p),currentTime:g,volume:y,muted:x,playbackRate:w,loop:C})}),i.media||500)),u=[vt("play",l(on.Play),o),vt("pause",l(on.Pause),o),vt("seeked",l(on.Seeked),o),vt("volumechange",l(on.VolumeChange),o),vt("ratechange",l(on.RateChange),o)];return we(()=>{u.forEach(f=>f())})}a(Xk,"initMediaInteractionObserver");function Zk({fontCb:n,doc:e}){let t=e.defaultView;if(!t)return()=>{};let r=[],i=new WeakMap,o=t.FontFace;t.FontFace=a(function(f,h,p){let g=new o(f,h,p);return i.set(g,{family:f,buffer:typeof h!="string",descriptors:p,fontSource:typeof h=="string"?h:JSON.stringify(Array.from(new Uint8Array(h)))}),g},"FontFace2");let l=kn(e.fonts,"add",function(u){return function(f){return setTimeout(we(()=>{let h=i.get(f);h&&(n(h),i.delete(f))}),0),u.apply(this,[f])}});return r.push(()=>{t.FontFace=o}),r.push(l),we(()=>{r.forEach(u=>u())})}a(Zk,"initFontObserver");function Jk(n){let{doc:e,mirror:t,blockClass:r,blockSelector:i,selectionCb:o}=n,l=!0,u=we(()=>{let f=e.getSelection();if(!f||l&&f?.isCollapsed)return;l=f.isCollapsed||!1;let h=[],p=f.rangeCount||0;for(let g=0;g<p;g++){let y=f.getRangeAt(g),{startContainer:x,startOffset:w,endContainer:C,endOffset:E}=y;Ct(x,r,i,!0)||Ct(C,r,i,!0)||h.push({start:t.getId(x),startOffset:w,end:t.getId(C),endOffset:E})}o({ranges:h})});return u(),vt("selectionchange",u)}a(Jk,"initSelectionObserver");function Qk({doc:n,customElementCb:e}){let t=n.defaultView;return!t||!t.customElements?()=>{}:kn(t.customElements,"define",function(i){return function(o,l,u){try{e({define:{name:o}})}catch{console.warn(`Custom element callback failed for ${o}`)}return i.apply(this,[o,l,u])}})}a(Qk,"initCustomElementObserver");function eP(n,e){let{mutationCb:t,mousemoveCb:r,mouseInteractionCb:i,scrollCb:o,viewportResizeCb:l,inputCb:u,mediaInteractionCb:f,styleSheetRuleCb:h,styleDeclarationCb:p,canvasMutationCb:g,fontCb:y,selectionCb:x,customElementCb:w}=n;n.mutationCb=(...C)=>{e.mutation&&e.mutation(...C),t(...C)},n.mousemoveCb=(...C)=>{e.mousemove&&e.mousemove(...C),r(...C)},n.mouseInteractionCb=(...C)=>{e.mouseInteraction&&e.mouseInteraction(...C),i(...C)},n.scrollCb=(...C)=>{e.scroll&&e.scroll(...C),o(...C)},n.viewportResizeCb=(...C)=>{e.viewportResize&&e.viewportResize(...C),l(...C)},n.inputCb=(...C)=>{e.input&&e.input(...C),u(...C)},n.mediaInteractionCb=(...C)=>{e.mediaInteaction&&e.mediaInteaction(...C),f(...C)},n.styleSheetRuleCb=(...C)=>{e.styleSheetRule&&e.styleSheetRule(...C),h(...C)},n.styleDeclarationCb=(...C)=>{e.styleDeclaration&&e.styleDeclaration(...C),p(...C)},n.canvasMutationCb=(...C)=>{e.canvasMutation&&e.canvasMutation(...C),g(...C)},n.fontCb=(...C)=>{e.font&&e.font(...C),y(...C)},n.selectionCb=(...C)=>{e.selection&&e.selection(...C),x(...C)},n.customElementCb=(...C)=>{e.customElement&&e.customElement(...C),w(...C)}}a(eP,"mergeHooks");function tP(n,e={}){let t=n.doc.defaultView;if(!t)return()=>{};eP(n,e);let r;n.recordDOM&&(r=nS(n,n.doc));let i=Uk(n),o=zk(n),l=iS(n),u=Gk(n,{win:t}),f=qk(n),h=Xk(n),p=a(()=>{},"styleSheetObserver"),g=a(()=>{},"adoptedStyleSheetObserver"),y=a(()=>{},"styleDeclarationObserver"),x=a(()=>{},"fontObserver");n.recordDOM&&(p=Yk(n,{win:t}),g=sS(n,n.doc),y=Kk(n,{win:t}),n.collectFonts&&(x=Zk(n)));let w=Jk(n),C=Qk(n),E=[];for(let M of n.plugins)E.push(M.observer(M.callback,t,M.options));return we(()=>{Ln.forEach(M=>M.reset()),r?.disconnect(),i(),o(),l(),u(),f(),h(),p(),g(),y(),x(),w(),C(),E.forEach(M=>M())})}a(tP,"initObservers");function $a(n){return typeof window[n]<"u"}a($a,"hasNestedCSSRule");function Ba(n){return!!(typeof window[n]<"u"&&window[n].prototype&&"insertRule"in window[n].prototype&&"deleteRule"in window[n].prototype)}a(Ba,"canMonkeyPatchNestedCSSRule");var ml=class{static{a(this,"CrossOriginIframeMirror")}constructor(e){k(this,"iframeIdToRemoteIdMap",new WeakMap),k(this,"iframeRemoteIdToIdMap",new WeakMap),this.generateIdFn=e}getId(e,t,r,i){let o=r||this.getIdToRemoteIdMap(e),l=i||this.getRemoteIdToIdMap(e),u=o.get(t);return u||(u=this.generateIdFn(),o.set(t,u),l.set(u,t)),u}getIds(e,t){let r=this.getIdToRemoteIdMap(e),i=this.getRemoteIdToIdMap(e);return t.map(o=>this.getId(e,o,r,i))}getRemoteId(e,t,r){let i=r||this.getRemoteIdToIdMap(e);if(typeof t!="number")return t;let o=i.get(t);return o||-1}getRemoteIds(e,t){let r=this.getRemoteIdToIdMap(e);return t.map(i=>this.getRemoteId(e,i,r))}reset(e){if(!e){this.iframeIdToRemoteIdMap=new WeakMap,this.iframeRemoteIdToIdMap=new WeakMap;return}this.iframeIdToRemoteIdMap.delete(e),this.iframeRemoteIdToIdMap.delete(e)}getIdToRemoteIdMap(e){let t=this.iframeIdToRemoteIdMap.get(e);return t||(t=new Map,this.iframeIdToRemoteIdMap.set(e,t)),t}getRemoteIdToIdMap(e){let t=this.iframeRemoteIdToIdMap.get(e);return t||(t=new Map,this.iframeRemoteIdToIdMap.set(e,t)),t}},Rd=class{static{a(this,"IframeManager")}constructor(e){k(this,"iframes",new WeakMap),k(this,"crossOriginIframeMap",new WeakMap),k(this,"crossOriginIframeMirror",new ml(gE)),k(this,"crossOriginIframeStyleMirror"),k(this,"crossOriginIframeRootIdMap",new WeakMap),k(this,"mirror"),k(this,"mutationCb"),k(this,"wrappedEmit"),k(this,"loadListener"),k(this,"stylesheetManager"),k(this,"recordCrossOriginIframes"),this.mutationCb=e.mutationCb,this.wrappedEmit=e.wrappedEmit,this.stylesheetManager=e.stylesheetManager,this.recordCrossOriginIframes=e.recordCrossOriginIframes,this.crossOriginIframeStyleMirror=new ml(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 r,i;this.mutationCb({adds:[{parentId:this.mirror.getId(e),nextId:null,node:t}],removes:[],texts:[],attributes:[],isAttachIframe:!0}),this.recordCrossOriginIframes&&((r=e.contentWindow)==null||r.addEventListener("message",this.handleMessage.bind(this))),(i=this.loadListener)==null||i.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){let t=e;if(t.data.type!=="rrweb"||t.origin!==t.data.origin||!e.source)return;let i=this.crossOriginIframeMap.get(e.source);if(!i)return;let o=this.transformCrossOriginEvent(i,t.data.event);o&&this.wrappedEmit(o,t.data.isCheckout)}transformCrossOriginEvent(e,t){var r;switch(t.type){case W.FullSnapshot:{this.crossOriginIframeMirror.reset(e),this.crossOriginIframeStyleMirror.reset(e),this.replaceIdOnNode(t.data.node,e);let i=t.data.node.id;return this.crossOriginIframeRootIdMap.set(e,i),this.patchRootIdOnNode(t.data.node,i),{timestamp:t.timestamp,type:W.IncrementalSnapshot,data:{source:$.Mutation,adds:[{parentId:this.mirror.getId(e),nextId:null,node:t.data.node}],removes:[],texts:[],attributes:[],isAttachIframe:!0}}}case W.Meta:case W.Load:case W.DomContentLoaded:return!1;case W.Plugin:return t;case W.Custom:return this.replaceIds(t.data.payload,e,["id","parentId","previousId","nextId"]),t;case W.IncrementalSnapshot:switch(t.data.source){case $.Mutation:return t.data.adds.forEach(i=>{this.replaceIds(i,e,["parentId","nextId","previousId"]),this.replaceIdOnNode(i.node,e);let o=this.crossOriginIframeRootIdMap.get(e);o&&this.patchRootIdOnNode(i.node,o)}),t.data.removes.forEach(i=>{this.replaceIds(i,e,["parentId","id"])}),t.data.attributes.forEach(i=>{this.replaceIds(i,e,["id"])}),t.data.texts.forEach(i=>{this.replaceIds(i,e,["id"])}),t;case $.Drag:case $.TouchMove:case $.MouseMove:return t.data.positions.forEach(i=>{this.replaceIds(i,e,["id"])}),t;case $.ViewportResize:return!1;case $.MediaInteraction:case $.MouseInteraction:case $.Scroll:case $.CanvasMutation:case $.Input:return this.replaceIds(t.data,e,["id"]),t;case $.StyleSheetRule:case $.StyleDeclaration:return this.replaceIds(t.data,e,["id"]),this.replaceStyleIds(t.data,e,["styleId"]),t;case $.Font:return t;case $.Selection:return t.data.ranges.forEach(i=>{this.replaceIds(i,e,["start","end"])}),t;case $.AdoptedStyleSheet:return this.replaceIds(t.data,e,["id"]),this.replaceStyleIds(t.data,e,["styleIds"]),(r=t.data.styles)==null||r.forEach(i=>{this.replaceStyleIds(i,e,["styleId"])}),t}}return!1}replace(e,t,r,i){for(let o of i)!Array.isArray(t[o])&&typeof t[o]!="number"||(Array.isArray(t[o])?t[o]=e.getIds(r,t[o]):t[o]=e.getId(r,t[o]));return t}replaceIds(e,t,r){return this.replace(this.crossOriginIframeMirror,e,t,r)}replaceStyleIds(e,t,r){return this.replace(this.crossOriginIframeStyleMirror,e,t,r)}replaceIdOnNode(e,t){this.replaceIds(e,t,["id","rootId"]),"childNodes"in e&&e.childNodes.forEach(r=>{this.replaceIdOnNode(r,t)})}patchRootIdOnNode(e,t){e.type!==Fr.Document&&!e.rootId&&(e.rootId=t),"childNodes"in e&&e.childNodes.forEach(r=>{this.patchRootIdOnNode(r,t)})}},Id=class{static{a(this,"ShadowDomManager")}constructor(e){k(this,"shadowDoms",new WeakSet),k(this,"mutationCb"),k(this,"scrollCb"),k(this,"bypassOptions"),k(this,"mirror"),k(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(!Ts(e)||this.shadowDoms.has(e))return;this.shadowDoms.add(e);let r=nS({...this.bypassOptions,doc:t,mutationCb:this.mutationCb,mirror:this.mirror,shadowDomManager:this},e);this.restoreHandlers.push(()=>r.disconnect()),this.restoreHandlers.push(iS({...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(pe.host(e))),this.restoreHandlers.push(sS({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){let r=this;this.restoreHandlers.push(kn(e.prototype,"attachShadow",function(i){return function(o){let l=i.call(this,o),u=pe.shadowRoot(this);return u&&tS(this)&&r.addShadowRoot(u,t),l}}))}reset(){this.restoreHandlers.forEach(e=>{try{e()}catch{}}),this.restoreHandlers=[],this.shadowDoms=new WeakSet}},bi="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/",xs=typeof Uint8Array>"u"?[]:new Uint8Array(256);for(vs=0;vs<bi.length;vs++)xs[bi.charCodeAt(vs)]=vs;var vs,rP=a(function(n){var e=new Uint8Array(n),t,r=e.length,i="";for(t=0;t<r;t+=3)i+=bi[e[t]>>2],i+=bi[(e[t]&3)<<4|e[t+1]>>4],i+=bi[(e[t+1]&15)<<2|e[t+2]>>6],i+=bi[e[t+2]&63];return r%3===2?i=i.substring(0,i.length-1)+"=":r%3===1&&(i=i.substring(0,i.length-2)+"=="),i},"encode"),nP=a(function(n){var e=n.length*.75,t=n.length,r,i=0,o,l,u,f;n[n.length-1]==="="&&(e--,n[n.length-2]==="="&&e--);var h=new ArrayBuffer(e),p=new Uint8Array(h);for(r=0;r<t;r+=4)o=xs[n.charCodeAt(r)],l=xs[n.charCodeAt(r+1)],u=xs[n.charCodeAt(r+2)],f=xs[n.charCodeAt(r+3)],p[i++]=o<<2|l>>4,p[i++]=(l&15)<<4|u>>2,p[i++]=(u&3)<<6|f&63;return h},"decode"),Qb=new Map;function iP(n,e){let t=Qb.get(n);return t||(t=new Map,Qb.set(n,t)),t.has(e)||t.set(e,[]),t.get(e)}a(iP,"variableListFor$1");var oS=a((n,e,t)=>{if(!n||!(lS(n,e)||typeof n=="object"))return;let r=n.constructor.name,i=iP(t,r),o=i.indexOf(n);return o===-1&&(o=i.length,i.push(n)),o},"saveWebGLVar");function ja(n,e,t){if(n instanceof Array)return n.map(r=>ja(r,e,t));if(n===null)return n;if(n instanceof Float32Array||n instanceof Float64Array||n instanceof Int32Array||n instanceof Uint32Array||n instanceof Uint8Array||n instanceof Uint16Array||n instanceof Int16Array||n instanceof Int8Array||n instanceof Uint8ClampedArray)return{rr_type:n.constructor.name,args:[Object.values(n)]};if(n instanceof ArrayBuffer){let r=n.constructor.name,i=rP(n);return{rr_type:r,base64:i}}else{if(n instanceof DataView)return{rr_type:n.constructor.name,args:[ja(n.buffer,e,t),n.byteOffset,n.byteLength]};if(n instanceof HTMLImageElement){let r=n.constructor.name,{src:i}=n;return{rr_type:r,src:i}}else if(n instanceof HTMLCanvasElement){let r="HTMLImageElement",i=n.toDataURL();return{rr_type:r,src:i}}else{if(n instanceof ImageData)return{rr_type:n.constructor.name,args:[ja(n.data,e,t),n.width,n.height]};if(lS(n,e)||typeof n=="object"){let r=n.constructor.name,i=oS(n,e,t);return{rr_type:r,index:i}}}}return n}a(ja,"serializeArg");var aS=a((n,e,t)=>n.map(r=>ja(r,e,t)),"serializeArgs"),lS=a((n,e)=>!!["WebGLActiveInfo","WebGLBuffer","WebGLFramebuffer","WebGLProgram","WebGLRenderbuffer","WebGLShader","WebGLShaderPrecisionFormat","WebGLTexture","WebGLUniformLocation","WebGLVertexArrayObject","WebGLVertexArrayObjectOES"].filter(i=>typeof e[i]=="function").find(i=>n instanceof e[i]),"isInstanceOfWebGLObject");function sP(n,e,t,r){let i=[],o=Object.getOwnPropertyNames(e.CanvasRenderingContext2D.prototype);for(let l of o)try{if(typeof e.CanvasRenderingContext2D.prototype[l]!="function")continue;let u=kn(e.CanvasRenderingContext2D.prototype,l,function(f){return function(...h){return Ct(this.canvas,t,r,!0)||setTimeout(()=>{let p=aS(h,e,this);n(this.canvas,{type:Br["2D"],property:l,args:p})},0),f.apply(this,h)}});i.push(u)}catch{let u=Ol(e.CanvasRenderingContext2D.prototype,l,{set(f){n(this.canvas,{type:Br["2D"],property:l,args:[f],setter:!0})}});i.push(u)}return()=>{i.forEach(l=>l())}}a(sP,"initCanvas2DMutationObserver");function oP(n){return n==="experimental-webgl"?"webgl":n}a(oP,"getNormalizedContextName");function eE(n,e,t,r){let i=[];try{let o=kn(n.HTMLCanvasElement.prototype,"getContext",function(l){return function(u,...f){if(!Ct(this,e,t,!0)){let h=oP(u);if("__context"in this||(this.__context=h),r&&["webgl","webgl2"].includes(h))if(f[0]&&typeof f[0]=="object"){let p=f[0];p.preserveDrawingBuffer||(p.preserveDrawingBuffer=!0)}else f.splice(0,1,{preserveDrawingBuffer:!0})}return l.apply(this,[u,...f])}});i.push(o)}catch{console.error("failed to patch HTMLCanvasElement.prototype.getContext")}return()=>{i.forEach(o=>o())}}a(eE,"initCanvasContextObserver");function tE(n,e,t,r,i,o){let l=[],u=Object.getOwnPropertyNames(n);for(let f of u)if(!["isContextLost","canvas","drawingBufferWidth","drawingBufferHeight"].includes(f))try{if(typeof n[f]!="function")continue;let h=kn(n,f,function(p){return function(...g){let y=p.apply(this,g);if(oS(y,o,this),"tagName"in this.canvas&&!Ct(this.canvas,r,i,!0)){let x=aS(g,o,this),w={type:e,property:f,args:x};t(this.canvas,w)}return y}});l.push(h)}catch{let h=Ol(n,f,{set(p){t(this.canvas,{type:e,property:f,args:[p],setter:!0})}});l.push(h)}return l}a(tE,"patchGLPrototype");function aP(n,e,t,r){let i=[];return i.push(...tE(e.WebGLRenderingContext.prototype,Br.WebGL,n,t,r,e)),typeof e.WebGL2RenderingContext<"u"&&i.push(...tE(e.WebGL2RenderingContext.prototype,Br.WebGL2,n,t,r,e)),()=>{i.forEach(o=>o())}}a(aP,"initCanvasWebGLMutationObserver");var cS="KGZ1bmN0aW9uKCkgewogICJ1c2Ugc3RyaWN0IjsKICB2YXIgY2hhcnMgPSAiQUJDREVGR0hJSktMTU5PUFFSU1RVVldYWVphYmNkZWZnaGlqa2xtbm9wcXJzdHV2d3h5ejAxMjM0NTY3ODkrLyI7CiAgdmFyIGxvb2t1cCA9IHR5cGVvZiBVaW50OEFycmF5ID09PSAidW5kZWZpbmVkIiA/IFtdIDogbmV3IFVpbnQ4QXJyYXkoMjU2KTsKICBmb3IgKHZhciBpID0gMDsgaSA8IGNoYXJzLmxlbmd0aDsgaSsrKSB7CiAgICBsb29rdXBbY2hhcnMuY2hhckNvZGVBdChpKV0gPSBpOwogIH0KICB2YXIgZW5jb2RlID0gZnVuY3Rpb24oYXJyYXlidWZmZXIpIHsKICAgIHZhciBieXRlcyA9IG5ldyBVaW50OEFycmF5KGFycmF5YnVmZmVyKSwgaTIsIGxlbiA9IGJ5dGVzLmxlbmd0aCwgYmFzZTY0ID0gIiI7CiAgICBmb3IgKGkyID0gMDsgaTIgPCBsZW47IGkyICs9IDMpIHsKICAgICAgYmFzZTY0ICs9IGNoYXJzW2J5dGVzW2kyXSA+PiAyXTsKICAgICAgYmFzZTY0ICs9IGNoYXJzWyhieXRlc1tpMl0gJiAzKSA8PCA0IHwgYnl0ZXNbaTIgKyAxXSA+PiA0XTsKICAgICAgYmFzZTY0ICs9IGNoYXJzWyhieXRlc1tpMiArIDFdICYgMTUpIDw8IDIgfCBieXRlc1tpMiArIDJdID4+IDZdOwogICAgICBiYXNlNjQgKz0gY2hhcnNbYnl0ZXNbaTIgKyAyXSAmIDYzXTsKICAgIH0KICAgIGlmIChsZW4gJSAzID09PSAyKSB7CiAgICAgIGJhc2U2NCA9IGJhc2U2NC5zdWJzdHJpbmcoMCwgYmFzZTY0Lmxlbmd0aCAtIDEpICsgIj0iOwogICAgfSBlbHNlIGlmIChsZW4gJSAzID09PSAxKSB7CiAgICAgIGJhc2U2NCA9IGJhc2U2NC5zdWJzdHJpbmcoMCwgYmFzZTY0Lmxlbmd0aCAtIDIpICsgIj09IjsKICAgIH0KICAgIHJldHVybiBiYXNlNjQ7CiAgfTsKICBjb25zdCBsYXN0QmxvYk1hcCA9IC8qIEBfX1BVUkVfXyAqLyBuZXcgTWFwKCk7CiAgY29uc3QgdHJhbnNwYXJlbnRCbG9iTWFwID0gLyogQF9fUFVSRV9fICovIG5ldyBNYXAoKTsKICBhc3luYyBmdW5jdGlvbiBnZXRUcmFuc3BhcmVudEJsb2JGb3Iod2lkdGgsIGhlaWdodCwgZGF0YVVSTE9wdGlvbnMpIHsKICAgIGNvbnN0IGlkID0gYCR7d2lkdGh9LSR7aGVpZ2h0fWA7CiAgICBpZiAoIk9mZnNjcmVlbkNhbnZhcyIgaW4gZ2xvYmFsVGhpcykgewogICAgICBpZiAodHJhbnNwYXJlbnRCbG9iTWFwLmhhcyhpZCkpIHJldHVybiB0cmFuc3BhcmVudEJsb2JNYXAuZ2V0KGlkKTsKICAgICAgY29uc3Qgb2Zmc2NyZWVuID0gbmV3IE9mZnNjcmVlbkNhbnZhcyh3aWR0aCwgaGVpZ2h0KTsKICAgICAgb2Zmc2NyZWVuLmdldENvbnRleHQoIjJkIik7CiAgICAgIGNvbnN0IGJsb2IgPSBhd2FpdCBvZmZzY3JlZW4uY29udmVydFRvQmxvYihkYXRhVVJMT3B0aW9ucyk7CiAgICAgIGNvbnN0IGFycmF5QnVmZmVyID0gYXdhaXQgYmxvYi5hcnJheUJ1ZmZlcigpOwogICAgICBjb25zdCBiYXNlNjQgPSBlbmNvZGUoYXJyYXlCdWZmZXIpOwogICAgICB0cmFuc3BhcmVudEJsb2JNYXAuc2V0KGlkLCBiYXNlNjQpOwogICAgICByZXR1cm4gYmFzZTY0OwogICAgfSBlbHNlIHsKICAgICAgcmV0dXJuICIiOwogICAgfQogIH0KICBjb25zdCB3b3JrZXIgPSBzZWxmOwogIHdvcmtlci5vbm1lc3NhZ2UgPSBhc3luYyBmdW5jdGlvbihlKSB7CiAgICBpZiAoIk9mZnNjcmVlbkNhbnZhcyIgaW4gZ2xvYmFsVGhpcykgewogICAgICBjb25zdCB7IGlkLCBiaXRtYXAsIHdpZHRoLCBoZWlnaHQsIGRhdGFVUkxPcHRpb25zIH0gPSBlLmRhdGE7CiAgICAgIGNvbnN0IHRyYW5zcGFyZW50QmFzZTY0ID0gZ2V0VHJhbnNwYXJlbnRCbG9iRm9yKAogICAgICAgIHdpZHRoLAogICAgICAgIGhlaWdodCwKICAgICAgICBkYXRhVVJMT3B0aW9ucwogICAgICApOwogICAgICBjb25zdCBvZmZzY3JlZW4gPSBuZXcgT2Zmc2NyZWVuQ2FudmFzKHdpZHRoLCBoZWlnaHQpOwogICAgICBjb25zdCBjdHggPSBvZmZzY3JlZW4uZ2V0Q29udGV4dCgiMmQiKTsKICAgICAgY3R4LmRyYXdJbWFnZShiaXRtYXAsIDAsIDApOwogICAgICBiaXRtYXAuY2xvc2UoKTsKICAgICAgY29uc3QgYmxvYiA9IGF3YWl0IG9mZnNjcmVlbi5jb252ZXJ0VG9CbG9iKGRhdGFVUkxPcHRpb25zKTsKICAgICAgY29uc3QgdHlwZSA9IGJsb2IudHlwZTsKICAgICAgY29uc3QgYXJyYXlCdWZmZXIgPSBhd2FpdCBibG9iLmFycmF5QnVmZmVyKCk7CiAgICAgIGNvbnN0IGJhc2U2NCA9IGVuY29kZShhcnJheUJ1ZmZlcik7CiAgICAgIGlmICghbGFzdEJsb2JNYXAuaGFzKGlkKSAmJiBhd2FpdCB0cmFuc3BhcmVudEJhc2U2NCA9PT0gYmFzZTY0KSB7CiAgICAgICAgbGFzdEJsb2JNYXAuc2V0KGlkLCBiYXNlNjQpOwogICAgICAgIHJldHVybiB3b3JrZXIucG9zdE1lc3NhZ2UoeyBpZCB9KTsKICAgICAgfQogICAgICBpZiAobGFzdEJsb2JNYXAuZ2V0KGlkKSA9PT0gYmFzZTY0KSByZXR1cm4gd29ya2VyLnBvc3RNZXNzYWdlKHsgaWQgfSk7CiAgICAgIHdvcmtlci5wb3N0TWVzc2FnZSh7CiAgICAgICAgaWQsCiAgICAgICAgdHlwZSwKICAgICAgICBiYXNlNjQsCiAgICAgICAgd2lkdGgsCiAgICAgICAgaGVpZ2h0CiAgICAgIH0pOwogICAgICBsYXN0QmxvYk1hcC5zZXQoaWQsIGJhc2U2NCk7CiAgICB9IGVsc2UgewogICAgICByZXR1cm4gd29ya2VyLnBvc3RNZXNzYWdlKHsgaWQ6IGUuZGF0YS5pZCB9KTsKICAgIH0KICB9Owp9KSgpOwovLyMgc291cmNlTWFwcGluZ1VSTD1pbWFnZS1iaXRtYXAtZGF0YS11cmwtd29ya2VyLUlKcEM3Z19iLmpzLm1hcAo=",lP=a(n=>Uint8Array.from(atob(n),e=>e.charCodeAt(0)),"decodeBase64"),rE=typeof window<"u"&&window.Blob&&new Blob([lP(cS)],{type:"text/javascript;charset=utf-8"});function cP(n){let e;try{if(e=rE&&(window.URL||window.webkitURL).createObjectURL(rE),!e)throw"";let t=new Worker(e,{name:n?.name});return t.addEventListener("error",()=>{(window.URL||window.webkitURL).revokeObjectURL(e)}),t}catch{return new Worker("data:text/javascript;base64,"+cS,{name:n?.name})}finally{e&&(window.URL||window.webkitURL).revokeObjectURL(e)}}a(cP,"WorkerWrapper");var Ad=class{static{a(this,"CanvasManager")}constructor(e){k(this,"pendingCanvasMutations",new Map),k(this,"rafStamps",{latestId:0,invokeId:null}),k(this,"mirror"),k(this,"mutationCb"),k(this,"resetObservers"),k(this,"frozen",!1),k(this,"locked",!1),k(this,"processMutation",(f,h)=>{(this.rafStamps.invokeId&&this.rafStamps.latestId!==this.rafStamps.invokeId||!this.rafStamps.invokeId)&&(this.rafStamps.invokeId=this.rafStamps.latestId),this.pendingCanvasMutations.has(f)||this.pendingCanvasMutations.set(f,[]),this.pendingCanvasMutations.get(f).push(h)});let{sampling:t="all",win:r,blockClass:i,blockSelector:o,recordCanvas:l,dataURLOptions:u}=e;this.mutationCb=e.mutationCb,this.mirror=e.mirror,l&&t==="all"&&this.initCanvasMutationObserver(r,i,o),l&&typeof t=="number"&&this.initCanvasFPSObserver(t,r,i,o,{dataURLOptions:u})}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,r,i,o){let l=eE(t,r,i,!0),u=new Map,f=new cP;f.onmessage=w=>{let{id:C}=w.data;if(u.set(C,!1),!("base64"in w.data))return;let{base64:E,type:M,width:O,height:R}=w.data;this.mutationCb({id:C,type:Br["2D"],commands:[{property:"clearRect",args:[0,0,O,R]},{property:"drawImage",args:[{rr_type:"ImageBitmap",args:[{rr_type:"Blob",data:[{rr_type:"ArrayBuffer",base64:E}],type:M}]},0,0]}]})};let h=1e3/e,p=0,g,y=a(()=>{let w=[];return t.document.querySelectorAll("canvas").forEach(C=>{Ct(C,r,i,!0)||w.push(C)}),w},"getCanvas"),x=a(w=>{if(p&&w-p<h){g=requestAnimationFrame(x);return}p=w,y().forEach(async C=>{var E;let M=this.mirror.getId(C);if(u.get(M)||C.width===0||C.height===0)return;if(u.set(M,!0),["webgl","webgl2"].includes(C.__context)){let R=C.getContext(C.__context);((E=R?.getContextAttributes())==null?void 0:E.preserveDrawingBuffer)===!1&&R.clear(R.COLOR_BUFFER_BIT)}let O=await createImageBitmap(C);f.postMessage({id:M,bitmap:O,width:C.width,height:C.height,dataURLOptions:o.dataURLOptions},[O])}),g=requestAnimationFrame(x)},"takeCanvasSnapshots");g=requestAnimationFrame(x),this.resetObservers=()=>{l(),cancelAnimationFrame(g)}}initCanvasMutationObserver(e,t,r){this.startRAFTimestamping(),this.startPendingCanvasMutationFlusher();let i=eE(e,t,r,!1),o=sP(this.processMutation.bind(this),e,t,r),l=aP(this.processMutation.bind(this),e,t,r);this.resetObservers=()=>{i(),o(),l()}}startPendingCanvasMutationFlusher(){requestAnimationFrame(()=>this.flushPendingCanvasMutations())}startRAFTimestamping(){let e=a(t=>{this.rafStamps.latestId=t,requestAnimationFrame(e)},"setLatestRAFTimestamp");requestAnimationFrame(e)}flushPendingCanvasMutations(){this.pendingCanvasMutations.forEach((e,t)=>{let r=this.mirror.getId(t);this.flushPendingCanvasMutationFor(t,r)}),requestAnimationFrame(()=>this.flushPendingCanvasMutations())}flushPendingCanvasMutationFor(e,t){if(this.frozen||this.locked)return;let r=this.pendingCanvasMutations.get(e);if(!r||t===-1)return;let i=r.map(l=>{let{type:u,...f}=l;return f}),{type:o}=r[0];this.mutationCb({id:t,type:o,commands:i}),this.pendingCanvasMutations.delete(e)}},Od=class{static{a(this,"StylesheetManager")}constructor(e){k(this,"trackedLinkElements",new WeakSet),k(this,"mutationCb"),k(this,"adoptedStyleSheetCb"),k(this,"styleMirror",new hl),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(e.length===0)return;let r={id:t,styleIds:[]},i=[];for(let o of e){let l;this.styleMirror.has(o)?l=this.styleMirror.getId(o):(l=this.styleMirror.add(o),i.push({styleId:l,rules:Array.from(o.rules||CSSRule,(u,f)=>({rule:pE(u,o.href),index:f}))})),r.styleIds.push(l)}i.length>0&&(r.styles=i),this.adoptedStyleSheetCb(r)}reset(){this.styleMirror.reset(),this.trackedLinkElements=new WeakSet}trackStylesheetInLinkElement(e){}},Nd=class{static{a(this,"ProcessedNodeManager")}constructor(){k(this,"nodeMap",new WeakMap),k(this,"active",!1)}inOtherBuffer(e,t){let r=this.nodeMap.get(e);return r&&Array.from(r).some(i=>i!==t)}add(e,t){this.active||(this.active=!0,requestAnimationFrame(()=>{this.nodeMap=new WeakMap,this.active=!1})),this.nodeMap.set(e,(this.nodeMap.get(e)||new Set).add(t))}destroy(){}},Qe,qa,Nf,gl=!1;try{if(Array.from([1],n=>n*2)[0]!==2){let n=document.createElement("iframe");document.body.appendChild(n),Array.from=((eb=n.contentWindow)==null?void 0:eb.Array.from)||Array.from,document.body.removeChild(n)}}catch(n){console.debug("Unable to override Array.from",n)}var sr=mE();function Zt(n={}){let{emit:e,checkoutEveryNms:t,checkoutEveryNth:r,blockClass:i="rr-block",blockSelector:o=null,ignoreClass:l="rr-ignore",ignoreSelector:u=null,maskTextClass:f="rr-mask",maskTextSelector:h=null,inlineStylesheet:p=!0,maskAllInputs:g,maskInputOptions:y,slimDOMOptions:x,maskInputFn:w,maskTextFn:C,hooks:E,packFn:M,sampling:O={},dataURLOptions:R={},mousemoveWait:L,recordDOM:B=!0,recordCanvas:U=!1,recordCrossOriginIframes:J=!1,recordAfter:te=n.recordAfter==="DOMContentLoaded"?n.recordAfter:"load",userTriggeredOnInput:ce=!1,collectFonts:Se=!1,inlineImages:Fe=!1,plugins:ze,keepIframeSrcFn:z=a(()=>!1,"keepIframeSrcFn"),ignoreCSSAttributes:xt=new Set([]),errorHandler:bt}=n;Wk(bt);let Q=J?window.parent===window:!0,ee=!1;if(!Q)try{window.parent.document&&(ee=!1)}catch{ee=!0}if(Q&&!e)throw new Error("emit function is required");if(!Q&&!ee)return()=>{};L!==void 0&&O.mousemove===void 0&&(O.mousemove=L),sr.reset();let et=g===!0?{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}:y!==void 0?y:{password:!0},Oe=x===!0||x==="all"?{script:!0,comment:!0,headFavicon:!0,headWhitespace:!0,headMetaSocial:!0,headMetaRobots:!0,headMetaHttpEquiv:!0,headMetaVerification:!0,headMetaAuthorship:x==="all",headMetaDescKeywords:x==="all",headTitleMutations:x==="all"}:x||{};Xw();let Le,gn=0,Wn=a(me=>{for(let Mt of ze||[])Mt.eventProcessor&&(me=Mt.eventProcessor(me));return M&&!ee&&(me=M(me)),me},"eventProcessor");Qe=a((me,Mt)=>{var Ee;let Ie=me;if(Ie.timestamp=dl(),(Ee=Ln[0])!=null&&Ee.isFrozen()&&Ie.type!==W.FullSnapshot&&!(Ie.type===W.IncrementalSnapshot&&Ie.data.source===$.Mutation)&&Ln.forEach(Vt=>Vt.unfreeze()),Q)e?.(Wn(Ie),Mt);else if(ee){let Vt={type:"rrweb",event:Wn(Ie),origin:window.location.origin,isCheckout:Mt};window.parent.postMessage(Vt,"*")}if(Ie.type===W.FullSnapshot)Le=Ie,gn=0;else if(Ie.type===W.IncrementalSnapshot){if(Ie.data.source===$.Mutation&&Ie.data.isAttachIframe)return;gn++;let Vt=r&&gn>=r,fe=t&&Ie.timestamp-Le.timestamp>t;(Vt||fe)&&qa(!0)}},"wrappedEmit");let ne=a(me=>{Qe({type:W.IncrementalSnapshot,data:{source:$.Mutation,...me}})},"wrappedMutationEmit"),Ze=a(me=>Qe({type:W.IncrementalSnapshot,data:{source:$.Scroll,...me}}),"wrappedScrollEmit"),Nt=a(me=>Qe({type:W.IncrementalSnapshot,data:{source:$.CanvasMutation,...me}}),"wrappedCanvasMutationEmit"),Lt=a(me=>Qe({type:W.IncrementalSnapshot,data:{source:$.AdoptedStyleSheet,...me}}),"wrappedAdoptedStyleSheetEmit"),ht=new Od({mutationCb:ne,adoptedStyleSheetCb:Lt}),at=new Rd({mirror:sr,mutationCb:ne,stylesheetManager:ht,recordCrossOriginIframes:J,wrappedEmit:Qe});for(let me of ze||[])me.getMirror&&me.getMirror({nodeMirror:sr,crossOriginIframeMirror:at.crossOriginIframeMirror,crossOriginIframeStyleMirror:at.crossOriginIframeStyleMirror});let Ui=new Nd;Nf=new Ad({recordCanvas:U,mutationCb:Nt,win:window,blockClass:i,blockSelector:o,mirror:sr,sampling:O.canvas,dataURLOptions:R});let Mr=new Id({mutationCb:ne,scrollCb:Ze,bypassOptions:{blockClass:i,blockSelector:o,maskTextClass:f,maskTextSelector:h,inlineStylesheet:p,maskInputOptions:et,dataURLOptions:R,maskTextFn:C,maskInputFn:w,recordCanvas:U,inlineImages:Fe,sampling:O,slimDOMOptions:Oe,iframeManager:at,stylesheetManager:ht,canvasManager:Nf,keepIframeSrcFn:z,processedNodeManager:Ui},mirror:sr});qa=a((me=!1)=>{if(!B)return;Qe({type:W.Meta,data:{href:window.location.href,width:qw(),height:jw()}},me),ht.reset(),Mr.init(),Ln.forEach(Ee=>Ee.lock());let Mt=fN(document,{mirror:sr,blockClass:i,blockSelector:o,maskTextClass:f,maskTextSelector:h,inlineStylesheet:p,maskAllInputs:et,maskTextFn:C,maskInputFn:w,slimDOM:Oe,dataURLOptions:R,recordCanvas:U,inlineImages:Fe,onSerialize:a(Ee=>{Is(Ee,sr)&&at.addIframe(Ee),Jw(Ee,sr)&&ht.trackLinkElement(Ee),Nn(Ee)&&Mr.addShadowRoot(pe.shadowRoot(Ee),document)},"onSerialize"),onIframeLoad:a((Ee,Ie)=>{at.attachIframe(Ee,Ie),Mr.observeAttachShadow(Ee)},"onIframeLoad"),onStylesheetLoad:a((Ee,Ie)=>{ht.attachLinkElement(Ee,Ie)},"onStylesheetLoad"),keepIframeSrcFn:z});if(!Mt)return console.warn("Failed to snapshot the document");Qe({type:W.FullSnapshot,data:{node:Mt,initialOffset:Gw(window)}},me),Ln.forEach(Ee=>Ee.unlock()),document.adoptedStyleSheets&&document.adoptedStyleSheets.length>0&&ht.adoptStyleSheets(document.adoptedStyleSheets,sr.getId(document))},"takeFullSnapshot$1");try{let me=[],Mt=a(Ie=>{var Vt;return we(tP)({mutationCb:ne,mousemoveCb:a((fe,Vn)=>Qe({type:W.IncrementalSnapshot,data:{source:Vn,positions:fe}}),"mousemoveCb"),mouseInteractionCb:a(fe=>Qe({type:W.IncrementalSnapshot,data:{source:$.MouseInteraction,...fe}}),"mouseInteractionCb"),scrollCb:Ze,viewportResizeCb:a(fe=>Qe({type:W.IncrementalSnapshot,data:{source:$.ViewportResize,...fe}}),"viewportResizeCb"),inputCb:a(fe=>Qe({type:W.IncrementalSnapshot,data:{source:$.Input,...fe}}),"inputCb"),mediaInteractionCb:a(fe=>Qe({type:W.IncrementalSnapshot,data:{source:$.MediaInteraction,...fe}}),"mediaInteractionCb"),styleSheetRuleCb:a(fe=>Qe({type:W.IncrementalSnapshot,data:{source:$.StyleSheetRule,...fe}}),"styleSheetRuleCb"),styleDeclarationCb:a(fe=>Qe({type:W.IncrementalSnapshot,data:{source:$.StyleDeclaration,...fe}}),"styleDeclarationCb"),canvasMutationCb:Nt,fontCb:a(fe=>Qe({type:W.IncrementalSnapshot,data:{source:$.Font,...fe}}),"fontCb"),selectionCb:a(fe=>{Qe({type:W.IncrementalSnapshot,data:{source:$.Selection,...fe}})},"selectionCb"),customElementCb:a(fe=>{Qe({type:W.IncrementalSnapshot,data:{source:$.CustomElement,...fe}})},"customElementCb"),blockClass:i,ignoreClass:l,ignoreSelector:u,maskTextClass:f,maskTextSelector:h,maskInputOptions:et,inlineStylesheet:p,sampling:O,recordDOM:B,recordCanvas:U,inlineImages:Fe,userTriggeredOnInput:ce,collectFonts:Se,doc:Ie,maskInputFn:w,maskTextFn:C,keepIframeSrcFn:z,blockSelector:o,slimDOMOptions:Oe,dataURLOptions:R,mirror:sr,iframeManager:at,stylesheetManager:ht,shadowDomManager:Mr,processedNodeManager:Ui,canvasManager:Nf,ignoreCSSAttributes:xt,plugins:((Vt=ze?.filter(fe=>fe.observer))==null?void 0:Vt.map(fe=>({observer:fe.observer,options:fe.options,callback:a(Vn=>Qe({type:W.Plugin,data:{plugin:fe.name,payload:Vn}}),"callback")})))||[]},E)},"observe");at.addLoadListener(Ie=>{try{me.push(Mt(Ie.contentDocument))}catch(Vt){console.warn(Vt)}});let Ee=a(()=>{qa(),me.push(Mt(document)),gl=!0},"init");return document.readyState==="interactive"||document.readyState==="complete"?Ee():(me.push(vt("DOMContentLoaded",()=>{Qe({type:W.DomContentLoaded,data:{}}),te==="DOMContentLoaded"&&Ee()})),me.push(vt("load",()=>{Qe({type:W.Load,data:{}}),te==="load"&&Ee()},window))),()=>{me.forEach(Ie=>Ie()),Ui.destroy(),gl=!1,Vk()}}catch(me){console.warn(me)}}a(Zt,"record");Zt.addCustomEvent=(n,e)=>{if(!gl)throw new Error("please add custom event after start recording");Qe({type:W.Custom,data:{tag:n,payload:e}})};Zt.freezePage=()=>{Ln.forEach(n=>n.freeze())};Zt.takeFullSnapshot=n=>{if(!gl)throw new Error("please take full snapshot after start recording");qa(n)};Zt.mirror=sr;function uS(n){return{all:n=n||new Map,on:a(function(e,t){var r=n.get(e);r?r.push(t):n.set(e,[t])},"on"),off:a(function(e,t){var r=n.get(e);r&&(t?r.splice(r.indexOf(t)>>>0,1):n.set(e,[]))},"off"),emit:a(function(e,t){var r=n.get(e);r&&r.slice().map(function(i){i(t)}),(r=n.get("*"))&&r.slice().map(function(i){i(e,t)})},"emit")}}a(uS,"mitt$1");var uP=Object.freeze(Object.defineProperty({__proto__:null,default:uS},Symbol.toStringTag,{value:"Module"}));function fP(n=window,e=document){if("scrollBehavior"in e.documentElement.style&&n.__forceSmoothScrollPolyfill__!==!0)return;let t=n.HTMLElement||n.Element,r=468,i={scroll:n.scroll||n.scrollTo,scrollBy:n.scrollBy,elementScroll:t.prototype.scroll||f,scrollIntoView:t.prototype.scrollIntoView},o=n.performance&&n.performance.now?n.performance.now.bind(n.performance):Date.now;function l(M){let O=["MSIE ","Trident/","Edge/"];return new RegExp(O.join("|")).test(M)}a(l,"isMicrosoftBrowser");let u=l(n.navigator.userAgent)?1:0;function f(M,O){this.scrollLeft=M,this.scrollTop=O}a(f,"scrollElement");function h(M){return .5*(1-Math.cos(Math.PI*M))}a(h,"ease");function p(M){if(M===null||typeof M!="object"||M.behavior===void 0||M.behavior==="auto"||M.behavior==="instant")return!0;if(typeof M=="object"&&M.behavior==="smooth")return!1;throw new TypeError("behavior member of ScrollOptions "+M.behavior+" is not a valid value for enumeration ScrollBehavior.")}a(p,"shouldBailOut");function g(M,O){if(O==="Y")return M.clientHeight+u<M.scrollHeight;if(O==="X")return M.clientWidth+u<M.scrollWidth}a(g,"hasScrollableSpace");function y(M,O){let R=n.getComputedStyle(M,null)["overflow"+O];return R==="auto"||R==="scroll"}a(y,"canOverflow");function x(M){let O=g(M,"Y")&&y(M,"Y"),R=g(M,"X")&&y(M,"X");return O||R}a(x,"isScrollable");function w(M){for(;M!==e.body&&x(M)===!1;)M=M.parentNode||M.host;return M}a(w,"findScrollableParent");function C(M){let O=o(),R,L,B,U=(O-M.startTime)/r;U=U>1?1:U,R=h(U),L=M.startX+(M.x-M.startX)*R,B=M.startY+(M.y-M.startY)*R,M.method.call(M.scrollable,L,B),(L!==M.x||B!==M.y)&&n.requestAnimationFrame(C.bind(n,M))}a(C,"step");function E(M,O,R){let L,B,U,J,te=o();M===e.body?(L=n,B=n.scrollX||n.pageXOffset,U=n.scrollY||n.pageYOffset,J=i.scroll):(L=M,B=M.scrollLeft,U=M.scrollTop,J=f),C({scrollable:L,method:J,startTime:te,startX:B,startY:U,x:O,y:R})}a(E,"smoothScroll"),n.scroll=n.scrollTo=function(){if(arguments[0]!==void 0){if(p(arguments[0])===!0){i.scroll.call(n,arguments[0].left!==void 0?arguments[0].left:typeof arguments[0]!="object"?arguments[0]:n.scrollX||n.pageXOffset,arguments[0].top!==void 0?arguments[0].top:arguments[1]!==void 0?arguments[1]:n.scrollY||n.pageYOffset);return}E.call(n,e.body,arguments[0].left!==void 0?~~arguments[0].left:n.scrollX||n.pageXOffset,arguments[0].top!==void 0?~~arguments[0].top:n.scrollY||n.pageYOffset)}},n.scrollBy=function(){if(arguments[0]!==void 0){if(p(arguments[0])){i.scrollBy.call(n,arguments[0].left!==void 0?arguments[0].left:typeof arguments[0]!="object"?arguments[0]:0,arguments[0].top!==void 0?arguments[0].top:arguments[1]!==void 0?arguments[1]:0);return}E.call(n,e.body,~~arguments[0].left+(n.scrollX||n.pageXOffset),~~arguments[0].top+(n.scrollY||n.pageYOffset))}},t.prototype.scroll=t.prototype.scrollTo=function(){if(arguments[0]===void 0)return;if(p(arguments[0])===!0){if(typeof arguments[0]=="number"&&arguments[1]===void 0)throw new SyntaxError("Value could not be converted");i.elementScroll.call(this,arguments[0].left!==void 0?~~arguments[0].left:typeof arguments[0]!="object"?~~arguments[0]:this.scrollLeft,arguments[0].top!==void 0?~~arguments[0].top:arguments[1]!==void 0?~~arguments[1]:this.scrollTop);return}let M=arguments[0].left,O=arguments[0].top;E.call(this,this,typeof M>"u"?this.scrollLeft:~~M,typeof O>"u"?this.scrollTop:~~O)},t.prototype.scrollBy=function(){if(arguments[0]!==void 0){if(p(arguments[0])===!0){i.elementScroll.call(this,arguments[0].left!==void 0?~~arguments[0].left+this.scrollLeft:~~arguments[0]+this.scrollLeft,arguments[0].top!==void 0?~~arguments[0].top+this.scrollTop:~~arguments[1]+this.scrollTop);return}this.scroll({left:~~arguments[0].left+this.scrollLeft,top:~~arguments[0].top+this.scrollTop,behavior:arguments[0].behavior})}},t.prototype.scrollIntoView=function(){if(p(arguments[0])===!0){i.scrollIntoView.call(this,arguments[0]===void 0?!0:arguments[0]);return}let M=w(this),O=M.getBoundingClientRect(),R=this.getBoundingClientRect();M!==e.body?(E.call(this,M,M.scrollLeft+R.left-O.left,M.scrollTop+R.top-O.top),n.getComputedStyle(M).position!=="fixed"&&n.scrollBy({left:O.left,top:O.top,behavior:"smooth"})):n.scrollBy({left:R.left,top:R.top,behavior:"smooth"})}}a(fP,"polyfill");var Ld=class{static{a(this,"Timer")}constructor(e=[],t){k(this,"timeOffset",0),k(this,"speed"),k(this,"actions"),k(this,"raf",null),k(this,"lastTimestamp"),this.actions=e,this.speed=t.speed}addAction(e){let t=this.raf===!0;if(!this.actions.length||this.actions[this.actions.length-1].delay<=e.delay)this.actions.push(e);else{let r=this.findActionIndex(e);this.actions.splice(r,0,e)}t&&(this.raf=requestAnimationFrame(this.rafCheck.bind(this)))}start(){this.timeOffset=0,this.lastTimestamp=performance.now(),this.raf=requestAnimationFrame(this.rafCheck.bind(this))}rafCheck(){let e=performance.now();for(this.timeOffset+=(e-this.lastTimestamp)*this.speed,this.lastTimestamp=e;this.actions.length;){let t=this.actions[0];if(this.timeOffset>=t.delay)this.actions.shift(),t.doAction();else break}this.actions.length>0?this.raf=requestAnimationFrame(this.rafCheck.bind(this)):this.raf=!0}clear(){this.raf&&(this.raf!==!0&&cancelAnimationFrame(this.raf),this.raf=null),this.actions.length=0}setSpeed(e){this.speed=e}isActive(){return this.raf!==null}findActionIndex(e){let t=0,r=this.actions.length-1;for(;t<=r;){let i=Math.floor((t+r)/2);if(this.actions[i].delay<e.delay)t=i+1;else if(this.actions[i].delay>e.delay)r=i-1;else return i+1}return t}};function nE(n,e){if(n.type===W.IncrementalSnapshot&&n.data.source===$.MouseMove&&n.data.positions&&n.data.positions.length){let t=n.data.positions[0].timeOffset,r=n.timestamp+t;return n.delay=r-e,r-e}return n.delay=n.timestamp-e,n.delay}a(nE,"addDelay");function iE(n,e){var t=typeof Symbol=="function"&&n[Symbol.iterator];if(!t)return n;var r,i,o=t.call(n),l=[];try{for(;(e===void 0||e-- >0)&&!(r=o.next()).done;)l.push(r.value)}catch(u){i={error:u}}finally{try{r&&!r.done&&(t=o.return)&&t.call(o)}finally{if(i)throw i.error}}return l}a(iE,"t");var Ei;(function(n){n[n.NotStarted=0]="NotStarted",n[n.Running=1]="Running",n[n.Stopped=2]="Stopped"})(Ei||(Ei={}));var fS={type:"xstate.init"};function Lf(n){return n===void 0?[]:[].concat(n)}a(Lf,"r");function mi(n){return{type:"xstate.assign",assignment:n}}a(mi,"o");function sE(n,e){return typeof(n=typeof n=="string"&&e&&e[n]?e[n]:n)=="string"?{type:n}:typeof n=="function"?{type:n.name,exec:n}:n}a(sE,"i");function yl(n){return function(e){return n===e}}a(yl,"a");function dS(n){return typeof n=="string"?{type:n}:n}a(dS,"u");function oE(n,e){return{value:n,context:e,actions:[],changed:!1,matches:yl(n)}}a(oE,"c");function aE(n,e,t){var r=e,i=!1;return[n.filter(function(o){if(o.type==="xstate.assign"){i=!0;var l=Object.assign({},r);return typeof o.assignment=="function"?l=o.assignment(r,t):Object.keys(o.assignment).forEach(function(u){l[u]=typeof o.assignment[u]=="function"?o.assignment[u](r,t):o.assignment[u]}),r=l,!1}return!0}),r,i]}a(aE,"f");function hS(n,e){e===void 0&&(e={});var t=iE(aE(Lf(n.states[n.initial].entry).map(function(l){return sE(l,e.actions)}),n.context,fS),2),r=t[0],i=t[1],o={config:n,_options:e,initialState:{value:n.initial,actions:r,context:i,matches:yl(n.initial)},transition:a(function(l,u){var f,h,p=typeof l=="string"?{value:l,context:n.context}:l,g=p.value,y=p.context,x=dS(u),w=n.states[g];if(w.on){var C=Lf(w.on[x.type]);try{for(var E=(function(ee){var et=typeof Symbol=="function"&&Symbol.iterator,Oe=et&&ee[et],Le=0;if(Oe)return Oe.call(ee);if(ee&&typeof ee.length=="number")return{next:a(function(){return ee&&Le>=ee.length&&(ee=void 0),{value:ee&&ee[Le++],done:!ee}},"next")};throw new TypeError(et?"Object is not iterable.":"Symbol.iterator is not defined.")})(C),M=E.next();!M.done;M=E.next()){var O=M.value;if(O===void 0)return oE(g,y);var R=typeof O=="string"?{target:O}:O,L=R.target,B=R.actions,U=B===void 0?[]:B,J=R.cond,te=J===void 0?function(){return!0}:J,ce=L===void 0,Se=L??g,Fe=n.states[Se];if(te(y,x)){var ze=iE(aE((ce?Lf(U):[].concat(w.exit,U,Fe.entry).filter(function(ee){return ee})).map(function(ee){return sE(ee,o._options.actions)}),y,x),3),z=ze[0],xt=ze[1],bt=ze[2],Q=L??g;return{value:Q,context:xt,actions:z,changed:L!==g||z.length>0||bt,matches:yl(Q)}}}}catch(ee){f={error:ee}}finally{try{M&&!M.done&&(h=E.return)&&h.call(E)}finally{if(f)throw f.error}}}return oE(g,y)},"transition")};return o}a(hS,"s");var lE=a(function(n,e){return n.actions.forEach(function(t){var r=t.exec;return r&&r(n.context,e)})},"l");function pS(n){var e=n.initialState,t=Ei.NotStarted,r=new Set,i={_machine:n,send:a(function(o){t===Ei.Running&&(e=n.transition(e,o),lE(e,dS(o)),r.forEach(function(l){return l(e)}))},"send"),subscribe:a(function(o){return r.add(o),o(e),{unsubscribe:a(function(){return r.delete(o)},"unsubscribe")}},"subscribe"),start:a(function(o){if(o){var l=typeof o=="object"?o:{context:n.config.context,value:o};e={value:l.value,actions:[],context:l.context,matches:yl(l.value)}}return t=Ei.Running,lE(e,fS),i},"start"),stop:a(function(){return t=Ei.Stopped,r.clear(),i},"stop"),get state(){return e},get status(){return t}};return i}a(pS,"v");function dP(n,e){for(let t=n.length-1;t>=0;t--){let r=n[t];if(r.type===W.Meta&&r.timestamp<=e)return n.slice(t)}return n}a(dP,"discardPriorSnapshots");function hP(n,{getCastFn:e,applyEventsSynchronously:t,emitter:r}){let i=hS({id:"player",context:n,initial:"paused",states:{playing:{on:{PAUSE:{target:"paused",actions:["pause"]},CAST_EVENT:{target:"playing",actions:"castEvent"},END:{target:"paused",actions:["resetLastPlayedEvent","pause"]},ADD_EVENT:{target:"playing",actions:["addEvent"]}}},paused:{on:{PLAY:{target:"playing",actions:["recordTimeOffset","play"]},CAST_EVENT:{target:"paused",actions:"castEvent"},TO_LIVE:{target:"live",actions:["startLive"]},ADD_EVENT:{target:"paused",actions:["addEvent"]}}},live:{on:{ADD_EVENT:{target:"live",actions:["addEvent"]},CAST_EVENT:{target:"live",actions:["castEvent"]}}}}},{actions:{castEvent:mi({lastPlayedEvent:a((o,l)=>l.type==="CAST_EVENT"?l.payload.event:o.lastPlayedEvent,"lastPlayedEvent")}),recordTimeOffset:mi((o,l)=>{let u=o.timeOffset;return"payload"in l&&"timeOffset"in l.payload&&(u=l.payload.timeOffset),{...o,timeOffset:u,baselineTime:o.events[0].timestamp+u}}),play(o){var l;let{timer:u,events:f,baselineTime:h,lastPlayedEvent:p}=o;u.clear();for(let w of f)nE(w,h);let g=dP(f,h),y=p?.timestamp;p?.type===W.IncrementalSnapshot&&p.data.source===$.MouseMove&&(y=p.timestamp+((l=p.data.positions[0])==null?void 0:l.timeOffset)),h<(y||0)&&r.emit(ye.PlayBack);let x=new Array;for(let w of g)if(!(y&&y<h&&(w.timestamp<=y||w===p)))if(w.timestamp<h)x.push(w);else{let C=e(w,!1);u.addAction({doAction:a(()=>{C()},"doAction"),delay:w.delay})}t(x),r.emit(ye.Flush),u.start()},pause(o){o.timer.clear()},resetLastPlayedEvent:mi(o=>({...o,lastPlayedEvent:null})),startLive:mi({baselineTime:a((o,l)=>(o.timer.start(),l.type==="TO_LIVE"&&l.payload.baselineTime?l.payload.baselineTime:Date.now()),"baselineTime")}),addEvent:mi((o,l)=>{let{baselineTime:u,timer:f,events:h}=o;if(l.type==="ADD_EVENT"){let{event:p}=l.payload;nE(p,u);let g=h.length-1;if(!h[g]||h[g].timestamp<=p.timestamp)h.push(p);else{let w=-1,C=0;for(;C<=g;){let E=Math.floor((C+g)/2);h[E].timestamp<=p.timestamp?C=E+1:g=E-1}w===-1&&(w=C),h.splice(w,0,p)}let y=p.timestamp<u,x=e(p,y);y?x():f.isActive()&&f.addAction({doAction:a(()=>{x()},"doAction"),delay:p.delay})}return{...o,events:h}})}});return pS(i)}a(hP,"createPlayerService");function pP(n){let e=hS({id:"speed",context:n,initial:"normal",states:{normal:{on:{FAST_FORWARD:{target:"skipping",actions:["recordSpeed","setSpeed"]},SET_SPEED:{target:"normal",actions:["setSpeed"]}}},skipping:{on:{BACK_TO_NORMAL:{target:"normal",actions:["restoreSpeed"]},SET_SPEED:{target:"normal",actions:["setSpeed"]}}}}},{actions:{setSpeed:a((t,r)=>{"payload"in r&&t.timer.setSpeed(r.payload.speed)},"setSpeed"),recordSpeed:mi({normalSpeed:a(t=>t.timer.speed,"normalSpeed")}),restoreSpeed:a(t=>{t.timer.setSpeed(t.normalSpeed)},"restoreSpeed")}});return pS(e)}a(pP,"createSpeedService");var mP=a(n=>[`.${n} { background: currentColor }`,"noscript { display: none !important; }"],"rules"),cE=new Map;function mS(n,e){let t=cE.get(n);return t||(t=new Map,cE.set(n,t)),t.has(e)||t.set(e,[]),t.get(e)}a(mS,"variableListFor");function an(n,e,t){return async r=>{if(r&&typeof r=="object"&&"rr_type"in r)if(t&&(t.isUnchanged=!1),r.rr_type==="ImageBitmap"&&"args"in r){let i=await an(n,e,t)(r.args);return await createImageBitmap.apply(null,i)}else if("index"in r){if(t||e===null)return r;let{rr_type:i,index:o}=r;return mS(e,i)[o]}else if("args"in r){let{rr_type:i,args:o}=r,l=window[i];return new l(...await Promise.all(o.map(an(n,e,t))))}else{if("base64"in r)return nP(r.base64);if("src"in r){let i=n.get(r.src);if(i)return i;{let o=new Image;return o.src=r.src,n.set(r.src,o),o}}else if("data"in r&&r.rr_type==="Blob"){let i=await Promise.all(r.data.map(an(n,e,t)));return new Blob(i,{type:r.type})}}else if(Array.isArray(r))return await Promise.all(r.map(an(n,e,t)));return r}}a(an,"deserializeArg");function gP(n,e){try{return e===Br.WebGL?n.getContext("webgl")||n.getContext("experimental-webgl"):n.getContext("webgl2")}catch{return null}}a(gP,"getContext");var yP=["WebGLActiveInfo","WebGLBuffer","WebGLFramebuffer","WebGLProgram","WebGLRenderbuffer","WebGLShader","WebGLShaderPrecisionFormat","WebGLTexture","WebGLUniformLocation","WebGLVertexArrayObject"];function bP(n,e){if(!e?.constructor)return;let{name:t}=e.constructor;if(!yP.includes(t))return;let r=mS(n,t);r.includes(e)||r.push(e)}a(bP,"saveToWebGLVarMap");async function EP({mutation:n,target:e,type:t,imageMap:r,errorHandler:i}){try{let o=gP(e,t);if(!o)return;if(n.setter){o[n.property]=n.args[0];return}let l=o[n.property],u=await Promise.all(n.args.map(an(r,o))),f=l.apply(o,u);bP(o,f);let h=!1}catch(o){i(n,o)}}a(EP,"webglMutation");async function wP({event:n,mutations:e,target:t,imageMap:r,errorHandler:i}){let o=t.getContext("2d");if(!o){i(e[0],new Error("Canvas context is null"));return}let l=e.map(async f=>Promise.all(f.args.map(an(r,o))));(await Promise.all(l)).forEach((f,h)=>{let p=e[h];try{if(p.setter){o[p.property]=p.args[0];return}let g=o[p.property];p.property==="drawImage"&&typeof p.args[0]=="string"?(r.get(n),g.apply(o,p.args)):g.apply(o,f)}catch(g){i(p,g)}})}a(wP,"canvasMutation$1");async function uE({event:n,mutation:e,target:t,imageMap:r,canvasEventMap:i,errorHandler:o}){try{let l=i.get(n)||e,u="commands"in l?l.commands:[l];if([Br.WebGL,Br.WebGL2].includes(e.type)){for(let f=0;f<u.length;f++){let h=u[f];await EP({mutation:h,type:e.type,target:t,imageMap:r,errorHandler:o})}return}await wP({event:n,mutations:u,target:t,imageMap:r,errorHandler:o})}catch(l){o(e,l)}}a(uE,"canvasMutation");var _d=class{static{a(this,"MediaManager")}constructor(e){k(this,"mediaMap",new Map),k(this,"warn"),k(this,"service"),k(this,"speedService"),k(this,"emitter"),k(this,"getCurrentTime"),k(this,"metadataCallbackMap",new Map),this.warn=e.warn,this.service=e.service,this.speedService=e.speedService,this.emitter=e.emitter,this.getCurrentTime=e.getCurrentTime,this.emitter.on(ye.Start,this.start.bind(this)),this.emitter.on(ye.SkipStart,this.start.bind(this)),this.emitter.on(ye.Pause,this.pause.bind(this)),this.emitter.on(ye.Finish,this.pause.bind(this)),this.speedService.subscribe(()=>{this.syncAllMediaElements()})}syncAllMediaElements(e={pause:!1}){this.mediaMap.forEach((t,r)=>{this.syncTargetWithState(r),e.pause&&r.pause()})}start(){this.syncAllMediaElements()}pause(){this.syncAllMediaElements({pause:!0})}seekTo({time:e,target:t,mediaState:r}){if(r.isPlaying){let o=(e-r.lastInteractionTimeOffset)/1e3*r.playbackRate,l="duration"in t&&t.duration;if(Number.isNaN(l)){this.waitForMetadata(t);return}let u=r.currentTimeAtLastInteraction+o;t.loop&&l!==!1&&(u=u%l),t.currentTime=u}else t.pause(),t.currentTime=r.currentTimeAtLastInteraction}waitForMetadata(e){if(this.metadataCallbackMap.has(e)||!("addEventListener"in e))return;let t=a(()=>{this.metadataCallbackMap.delete(e);let r=this.mediaMap.get(e);r&&this.seekTo({time:this.getCurrentTime(),target:e,mediaState:r})},"onLoadedMetadata");this.metadataCallbackMap.set(e,t),e.addEventListener("loadedmetadata",t,{once:!0})}getMediaStateFromMutation({target:e,timeOffset:t,mutation:r}){let i=this.mediaMap.get(e),{type:o,playbackRate:l,currentTime:u,muted:f,volume:h,loop:p}=r;return{isPlaying:o===on.Play||o!==on.Pause&&(i?.isPlaying||e.getAttribute("autoplay")!==null),currentTimeAtLastInteraction:u??i?.currentTimeAtLastInteraction??0,lastInteractionTimeOffset:t,playbackRate:l??i?.playbackRate??1,volume:h??i?.volume??1,muted:f??i?.muted??e.getAttribute("muted")===null,loop:p??i?.loop??e.getAttribute("loop")===null}}syncTargetWithState(e){let t=this.mediaMap.get(e);if(!t)return;let{muted:r,loop:i,volume:o,isPlaying:l}=t,u=this.service.state.matches("paused"),f=t.playbackRate*this.speedService.state.context.timer.speed;try{this.seekTo({time:this.getCurrentTime(),target:e,mediaState:t}),e.volume!==o&&(e.volume=o),e.muted=r,e.loop=i,e.playbackRate!==f&&(e.playbackRate=f),l&&!u?e.play():e.pause()}catch(h){this.warn(`Failed to replay media interactions: ${h.message||h}`)}}addMediaElements(e,t,r){if(!["AUDIO","VIDEO"].includes(e.nodeName))return;let i=e,o=r.getMeta(i);if(!o||!("attributes"in o))return;let l=this.service.state.matches("paused"),u=o.attributes,f=!1;u.rr_mediaState?f=u.rr_mediaState==="played":f=i.getAttribute("autoplay")!==null,f&&l&&i.pause();let h=1;typeof u.rr_mediaPlaybackRate=="number"&&(h=u.rr_mediaPlaybackRate);let p=!1;typeof u.rr_mediaMuted=="boolean"?p=u.rr_mediaMuted:p=i.getAttribute("muted")!==null;let g=!1;typeof u.rr_mediaLoop=="boolean"?g=u.rr_mediaLoop:g=i.getAttribute("loop")!==null;let y=1;typeof u.rr_mediaVolume=="number"&&(y=u.rr_mediaVolume);let x=0;typeof u.rr_mediaCurrentTime=="number"&&(x=u.rr_mediaCurrentTime),this.mediaMap.set(i,{isPlaying:f,currentTimeAtLastInteraction:x,lastInteractionTimeOffset:t,playbackRate:h,volume:y,muted:p,loop:g}),this.syncTargetWithState(i)}mediaMutation({target:e,timeOffset:t,mutation:r}){this.mediaMap.set(e,this.getMediaStateFromMutation({target:e,timeOffset:t,mutation:r})),this.syncTargetWithState(e)}isSupportedMediaElement(e){return["AUDIO","VIDEO"].includes(e.nodeName)}reset(){this.mediaMap.clear()}};function Wa(n,e){if(n.nodeName!=="DIALOG"||n instanceof or)return;let t=n,r=t.open,i=r&&t.matches("dialog:modal"),o=t.getAttribute("rr_open_mode"),l=typeof e?.attributes.open=="string"||typeof t.getAttribute("open")=="string",u=o==="modal";if(!(r&&!(i&&o==="non-modal"||!i&&u))){if(!t.isConnected){console.warn("dialog is not attached to the dom",t);return}r&&t.close(),l&&(u?t.showModal():t.show())}}a(Wa,"applyDialogToTopLevel");function SP(n,e){if(n.nodeName!=="DIALOG"||n instanceof or)return;let t=n;if(!t.isConnected){console.warn("dialog is not attached to the dom",t);return}e.attributes.open===null&&(t.removeAttribute("open"),t.removeAttribute("rr_open_mode"))}a(SP,"removeDialogFromTopLevel");var vP=5*1e3,CP=uS||uP,fE="[replayer]",_f={duration:500,lineCap:"round",lineWidth:3,strokeStyle:"red"};function dE(n){return n.type==W.IncrementalSnapshot&&(n.data.source==$.TouchMove||n.data.source==$.MouseInteraction&&n.data.type==K.TouchStart)}a(dE,"indicatesTouchDevice");var bl=class{static{a(this,"Replayer")}constructor(e,t){if(k(this,"wrapper"),k(this,"iframe"),k(this,"service"),k(this,"speedService"),k(this,"config"),k(this,"usingVirtualDom",!1),k(this,"virtualDom",new Ri),k(this,"mouse"),k(this,"mouseTail",null),k(this,"tailPositions",[]),k(this,"emitter",CP()),k(this,"nextUserInteractionEvent"),k(this,"legacy_missingNodeRetryMap",{}),k(this,"cache",Mb()),k(this,"imageMap",new Map),k(this,"canvasEventMap",new Map),k(this,"mirror",mE()),k(this,"styleMirror",new hl),k(this,"mediaManager"),k(this,"firstFullSnapshot",null),k(this,"newDocumentQueue",[]),k(this,"mousePos",null),k(this,"touchActive",null),k(this,"lastMouseDownEvent",null),k(this,"lastHoveredRootNode"),k(this,"lastSelectionData",null),k(this,"constructedStyleMutations",[]),k(this,"adoptedStyleSheets",[]),k(this,"handleResize",u=>{this.iframe.style.display="inherit";for(let f of[this.mouseTail,this.iframe])f&&(f.setAttribute("width",String(u.width)),f.setAttribute("height",String(u.height)))}),k(this,"applyEventsSynchronously",u=>{for(let f of u){switch(f.type){case W.DomContentLoaded:case W.Load:case W.Custom:continue;case W.FullSnapshot:case W.Meta:case W.Plugin:case W.IncrementalSnapshot:break}this.getCastFn(f,!0)()}}),k(this,"getCastFn",(u,f=!1)=>{let h;switch(u.type){case W.DomContentLoaded:case W.Load:break;case W.Custom:h=a(()=>{this.emitter.emit(ye.CustomEvent,u)},"castFn");break;case W.Meta:h=a(()=>this.emitter.emit(ye.Resize,{width:u.data.width,height:u.data.height}),"castFn");break;case W.FullSnapshot:h=a(()=>{var g;if(this.firstFullSnapshot){if(this.firstFullSnapshot===u){this.firstFullSnapshot=!0;return}}else this.firstFullSnapshot=!0;this.mediaManager.reset(),this.styleMirror.reset(),this.rebuildFullSnapshot(u,f),(g=this.iframe.contentWindow)==null||g.scrollTo(u.data.initialOffset)},"castFn");break;case W.IncrementalSnapshot:h=a(()=>{if(this.applyIncremental(u,f),!f&&(u===this.nextUserInteractionEvent&&(this.nextUserInteractionEvent=null,this.backToNormal()),this.config.skipInactive&&!this.nextUserInteractionEvent)){for(let g of this.service.state.context.events)if(!(g.timestamp<=u.timestamp)&&this.isUserInteraction(g)){g.delay-u.delay>this.config.inactivePeriodThreshold*this.speedService.state.context.timer.speed&&(this.nextUserInteractionEvent=g);break}if(this.nextUserInteractionEvent){let g=this.nextUserInteractionEvent.delay-u.delay,y={speed:Math.min(Math.round(g/vP),this.config.maxSpeed)};this.speedService.send({type:"FAST_FORWARD",payload:y}),this.emitter.emit(ye.SkipStart,y)}}},"castFn");break}return a(()=>{h&&h();for(let y of this.config.plugins||[])y.handler&&y.handler(u,f,{replayer:this});this.service.send({type:"CAST_EVENT",payload:{event:u}});let g=this.service.state.context.events.length-1;if(!this.config.liveMode&&u===this.service.state.context.events[g]){let y=a(()=>{g<this.service.state.context.events.length-1||(this.backToNormal(),this.service.send("END"),this.emitter.emit(ye.Finish))},"finish"),x=50;u.type===W.IncrementalSnapshot&&u.data.source===$.MouseMove&&u.data.positions.length&&(x+=Math.max(0,-u.data.positions[0].timeOffset)),setTimeout(y,x)}this.emitter.emit(ye.EventCast,u)},"wrappedCastFn")}),!t?.liveMode&&e.length<2)throw new Error("Replayer need at least 2 events.");let r={speed:1,maxSpeed:360,root:document.body,loadTimeout:0,skipInactive:!1,inactivePeriodThreshold:10*1e3,showWarning:!0,showDebug:!1,blockClass:"rr-block",liveMode:!1,insertStyleRules:[],triggerFocus:!0,UNSAFE_replayCanvas:!1,pauseAnimation:!0,mouseTail:_f,useVirtualDom:!0,logger:console};this.config=Object.assign({},r,t),this.handleResize=this.handleResize.bind(this),this.getCastFn=this.getCastFn.bind(this),this.applyEventsSynchronously=this.applyEventsSynchronously.bind(this),this.emitter.on(ye.Resize,this.handleResize),this.setupDom();for(let u of this.config.plugins||[])u.getMirror&&u.getMirror({nodeMirror:this.mirror});this.emitter.on(ye.Flush,()=>{if(this.usingVirtualDom){let u={mirror:this.mirror,applyCanvas:a((f,h,p)=>{uE({event:f,mutation:h,target:p,imageMap:this.imageMap,canvasEventMap:this.canvasEventMap,errorHandler:this.warnCanvasMutationFailed.bind(this)})},"applyCanvas"),applyInput:this.applyInput.bind(this),applyScroll:this.applyScroll.bind(this),applyStyleSheetMutation:a((f,h)=>{f.source===$.StyleSheetRule?this.applyStyleSheetRule(f,h):f.source===$.StyleDeclaration&&this.applyStyleDeclaration(f,h)},"applyStyleSheetMutation"),afterAppend:a((f,h)=>{for(let p of this.config.plugins||[])p.onBuild&&p.onBuild(f,{id:h,replayer:this})},"afterAppend")};if(this.iframe.contentDocument)try{ul(this.iframe.contentDocument,this.virtualDom,u,this.virtualDom.mirror)}catch(f){console.warn(f)}if(this.virtualDom.destroyTree(),this.usingVirtualDom=!1,Object.keys(this.legacy_missingNodeRetryMap).length)for(let f in this.legacy_missingNodeRetryMap)try{let h=this.legacy_missingNodeRetryMap[f],p=fl(h.node,this.mirror,this.virtualDom.mirror);ul(p,h.node,u,this.virtualDom.mirror),h.node=p}catch(h){this.warn(h)}this.constructedStyleMutations.forEach(f=>{this.applyStyleSheetMutation(f)}),this.constructedStyleMutations=[],this.adoptedStyleSheets.forEach(f=>{this.applyAdoptedStyleSheet(f)}),this.adoptedStyleSheets=[]}if(this.mousePos&&(this.moveAndHover(this.mousePos.x,this.mousePos.y,this.mousePos.id,!0,this.mousePos.debugData),this.mousePos=null),this.touchActive===!0?this.mouse.classList.add("touch-active"):this.touchActive===!1&&this.mouse.classList.remove("touch-active"),this.touchActive=null,this.lastMouseDownEvent){let[u,f]=this.lastMouseDownEvent;u.dispatchEvent(f)}this.lastMouseDownEvent=null,this.lastSelectionData&&(this.applySelection(this.lastSelectionData),this.lastSelectionData=null)}),this.emitter.on(ye.PlayBack,()=>{this.firstFullSnapshot=null,this.mirror.reset(),this.styleMirror.reset(),this.mediaManager.reset()});let i=new Ld([],{speed:this.config.speed});this.service=hP({events:e.map(u=>t&&t.unpackFn?t.unpackFn(u):u).sort((u,f)=>u.timestamp-f.timestamp),timer:i,timeOffset:0,baselineTime:0,lastPlayedEvent:null},{getCastFn:this.getCastFn,applyEventsSynchronously:this.applyEventsSynchronously,emitter:this.emitter}),this.service.start(),this.service.subscribe(u=>{this.emitter.emit(ye.StateChange,{player:u})}),this.speedService=pP({normalSpeed:-1,timer:i}),this.speedService.start(),this.speedService.subscribe(u=>{this.emitter.emit(ye.StateChange,{speed:u})}),this.mediaManager=new _d({warn:this.warn.bind(this),service:this.service,speedService:this.speedService,emitter:this.emitter,getCurrentTime:this.getCurrentTime.bind(this)});let o=this.service.state.context.events.find(u=>u.type===W.Meta),l=this.service.state.context.events.find(u=>u.type===W.FullSnapshot);if(o){let{width:u,height:f}=o.data;setTimeout(()=>{this.emitter.emit(ye.Resize,{width:u,height:f})},0)}l&&setTimeout(()=>{var u;this.firstFullSnapshot||(this.firstFullSnapshot=l,this.rebuildFullSnapshot(l),(u=this.iframe.contentWindow)==null||u.scrollTo(l.data.initialOffset))},1),this.service.state.context.events.find(dE)&&this.mouse.classList.add("touch-device")}get timer(){return this.service.state.context.timer}on(e,t){return this.emitter.on(e,t),this}off(e,t){return this.emitter.off(e,t),this}setConfig(e){Object.keys(e).forEach(t=>{e[t],this.config[t]=e[t]}),this.config.skipInactive||this.backToNormal(),typeof e.speed<"u"&&this.speedService.send({type:"SET_SPEED",payload:{speed:e.speed}}),typeof e.mouseTail<"u"&&(e.mouseTail===!1?this.mouseTail&&(this.mouseTail.style.display="none"):(this.mouseTail||(this.mouseTail=document.createElement("canvas"),this.mouseTail.width=Number.parseFloat(this.iframe.width),this.mouseTail.height=Number.parseFloat(this.iframe.height),this.mouseTail.classList.add("replayer-mouse-tail"),this.wrapper.insertBefore(this.mouseTail,this.iframe)),this.mouseTail.style.display="inherit"))}getMetaData(){let e=this.service.state.context.events[0],t=this.service.state.context.events[this.service.state.context.events.length-1];return{startTime:e.timestamp,endTime:t.timestamp,totalTime:t.timestamp-e.timestamp}}getCurrentTime(){return this.timer.timeOffset+this.getTimeOffset()}getTimeOffset(){let{baselineTime:e,events:t}=this.service.state.context;return e-t[0].timestamp}getMirror(){return this.mirror}play(e=0){var t,r;this.service.state.matches("paused")?this.service.send({type:"PLAY",payload:{timeOffset:e}}):(this.service.send({type:"PAUSE"}),this.service.send({type:"PLAY",payload:{timeOffset:e}})),(r=(t=this.iframe.contentDocument)==null?void 0:t.getElementsByTagName("html")[0])==null||r.classList.remove("rrweb-paused"),this.emitter.emit(ye.Start)}pause(e){var t,r;e===void 0&&this.service.state.matches("playing")&&this.service.send({type:"PAUSE"}),typeof e=="number"&&(this.play(e),this.service.send({type:"PAUSE"})),(r=(t=this.iframe.contentDocument)==null?void 0:t.getElementsByTagName("html")[0])==null||r.classList.add("rrweb-paused"),this.emitter.emit(ye.Pause)}resume(e=0){this.warn("The 'resume' was deprecated in 1.0. Please use 'play' method which has the same interface."),this.play(e),this.emitter.emit(ye.Resume)}destroy(){this.pause(),this.mirror.reset(),this.styleMirror.reset(),this.mediaManager.reset(),this.config.root.removeChild(this.wrapper),this.emitter.emit(ye.Destroy)}startLive(e){this.service.send({type:"TO_LIVE",payload:{baselineTime:e}})}addEvent(e){let t=this.config.unpackFn?this.config.unpackFn(e):e;dE(t)&&this.mouse.classList.add("touch-device"),Promise.resolve().then(()=>this.service.send({type:"ADD_EVENT",payload:{event:t}}))}enableInteract(){this.iframe.setAttribute("scrolling","auto"),this.iframe.style.pointerEvents="auto"}disableInteract(){this.iframe.setAttribute("scrolling","no"),this.iframe.style.pointerEvents="none"}resetCache(){this.cache=Mb()}setupDom(){this.wrapper=document.createElement("div"),this.wrapper.classList.add("replayer-wrapper"),this.config.root.appendChild(this.wrapper),this.mouse=document.createElement("div"),this.mouse.classList.add("replayer-mouse"),this.wrapper.appendChild(this.mouse),this.config.mouseTail!==!1&&(this.mouseTail=document.createElement("canvas"),this.mouseTail.classList.add("replayer-mouse-tail"),this.mouseTail.style.display="inherit",this.wrapper.appendChild(this.mouseTail)),this.iframe=document.createElement("iframe");let e=["allow-same-origin"];this.config.UNSAFE_replayCanvas&&e.push("allow-scripts"),this.iframe.style.display="none",this.iframe.setAttribute("sandbox",e.join(" ")),this.disableInteract(),this.wrapper.appendChild(this.iframe),this.iframe.contentWindow&&this.iframe.contentDocument&&(fP(this.iframe.contentWindow,this.iframe.contentDocument),Xw(this.iframe.contentWindow))}rebuildFullSnapshot(e,t=!1){if(!this.iframe.contentDocument)return this.warn("Looks like your replayer has been destroyed.");Object.keys(this.legacy_missingNodeRetryMap).length&&this.warn("Found unresolved missing node map",this.legacy_missingNodeRetryMap),this.legacy_missingNodeRetryMap={};let r=[],i=new Set,o=a((f,h)=>{if(f.nodeName==="DIALOG"&&i.add(f),this.collectIframeAndAttachDocument(r,f),this.mediaManager.isSupportedMediaElement(f)){let{events:p}=this.service.state.context;this.mediaManager.addMediaElements(f,e.timestamp-p[0].timestamp,this.mirror)}for(let p of this.config.plugins||[])p.onBuild&&p.onBuild(f,{id:h,replayer:this})},"afterAppend");this.usingVirtualDom&&(this.virtualDom.destroyTree(),this.usingVirtualDom=!1),this.mirror.reset(),u_(e.data.node,{doc:this.iframe.contentDocument,afterAppend:o,cache:this.cache,mirror:this.mirror}),o(this.iframe.contentDocument,e.data.node.id);for(let{mutationInQueue:f,builtNode:h}of r)this.attachDocumentToIframe(f,h),this.newDocumentQueue=this.newDocumentQueue.filter(p=>p!==f);let{documentElement:l,head:u}=this.iframe.contentDocument;this.insertStyleRules(l,u),i.forEach(f=>Wa(f)),this.service.state.matches("playing")||this.iframe.contentDocument.getElementsByTagName("html")[0].classList.add("rrweb-paused"),this.emitter.emit(ye.FullsnapshotRebuilded,e),t||this.waitForStylesheetLoad(),this.config.UNSAFE_replayCanvas&&this.preloadAllImages()}insertStyleRules(e,t){var r;let i=mP(this.config.blockClass).concat(this.config.insertStyleRules);if(this.config.pauseAnimation&&i.push("html.rrweb-paused *, html.rrweb-paused *:before, html.rrweb-paused *:after { animation-play-state: paused !important; }"),!!i.length)if(this.usingVirtualDom){let o=this.virtualDom.createElement("style");this.virtualDom.mirror.add(o,Vw(o,this.virtualDom.unserializedId)),e.insertBefore(o,t),o.rules.push({source:$.StyleSheetRule,adds:i.map((l,u)=>({rule:l,index:u}))})}else{let o=document.createElement("style");e.insertBefore(o,t);for(let l=0;l<i.length;l++)(r=o.sheet)==null||r.insertRule(i[l],l)}}attachDocumentToIframe(e,t){let r=this.usingVirtualDom?this.virtualDom.mirror:this.mirror,i=[],o=new Set,l=a((u,f)=>{u.nodeName==="DIALOG"&&o.add(u),this.collectIframeAndAttachDocument(i,u);let h=r.getMeta(u);if(h?.type===Fr.Element&&h?.tagName.toUpperCase()==="HTML"){let{documentElement:p,head:g}=t.contentDocument;this.insertStyleRules(p,g)}if(!this.usingVirtualDom)for(let p of this.config.plugins||[])p.onBuild&&p.onBuild(u,{id:f,replayer:this})},"afterAppend");Rs(e.node,{doc:t.contentDocument,mirror:r,hackCss:!0,skipChild:!1,afterAppend:l,cache:this.cache}),l(t.contentDocument,e.node.id);for(let{mutationInQueue:u,builtNode:f}of i)this.attachDocumentToIframe(u,f),this.newDocumentQueue=this.newDocumentQueue.filter(h=>h!==u);o.forEach(u=>Wa(u))}collectIframeAndAttachDocument(e,t){if(Is(t,this.mirror)){let r=this.newDocumentQueue.find(i=>i.parentId===this.mirror.getId(t));r&&e.push({mutationInQueue:r,builtNode:t})}}waitForStylesheetLoad(){var e;let t=(e=this.iframe.contentDocument)==null?void 0:e.head;if(t){let r=new Set,i,o=this.service.state,l=a(()=>{o=this.service.state},"stateHandler");this.emitter.on(ye.Start,l),this.emitter.on(ye.Pause,l);let u=a(()=>{this.emitter.off(ye.Start,l),this.emitter.off(ye.Pause,l)},"unsubscribe");t.querySelectorAll('link[rel="stylesheet"]').forEach(f=>{f.sheet||(r.add(f),f.addEventListener("load",()=>{r.delete(f),r.size===0&&i!==-1&&(o.matches("playing")&&this.play(this.getCurrentTime()),this.emitter.emit(ye.LoadStylesheetEnd),i&&clearTimeout(i),u())}))}),r.size>0&&(this.service.send({type:"PAUSE"}),this.emitter.emit(ye.LoadStylesheetStart),i=setTimeout(()=>{o.matches("playing")&&this.play(this.getCurrentTime()),i=-1,u()},this.config.loadTimeout))}}async preloadAllImages(){let e=[];for(let t of this.service.state.context.events)t.type===W.IncrementalSnapshot&&t.data.source===$.CanvasMutation&&(e.push(this.deserializeAndPreloadCanvasEvents(t.data,t)),("commands"in t.data?t.data.commands:[t.data]).forEach(i=>{this.preloadImages(i,t)}));return Promise.all(e)}preloadImages(e,t){if(e.property==="drawImage"&&typeof e.args[0]=="string"&&!this.imageMap.has(t)){let r=document.createElement("canvas"),i=r.getContext("2d"),o=i?.createImageData(r.width,r.height);i?.putImageData(o,0,0)}}async deserializeAndPreloadCanvasEvents(e,t){if(!this.canvasEventMap.has(t)){let r={isUnchanged:!0};if("commands"in e){let i=await Promise.all(e.commands.map(async o=>{let l=await Promise.all(o.args.map(an(this.imageMap,null,r)));return{...o,args:l}}));r.isUnchanged===!1&&this.canvasEventMap.set(t,{...e,commands:i})}else{let i=await Promise.all(e.args.map(an(this.imageMap,null,r)));r.isUnchanged===!1&&this.canvasEventMap.set(t,{...e,args:i})}}}applyIncremental(e,t){var r,i,o;let{data:l}=e;switch(l.source){case $.Mutation:{try{this.applyMutation(l,t)}catch(u){this.warn(`Exception in mutation ${u.message||u}`,l)}break}case $.Drag:case $.TouchMove:case $.MouseMove:if(t){let u=l.positions[l.positions.length-1];this.mousePos={x:u.x,y:u.y,id:u.id,debugData:l}}else l.positions.forEach(u=>{let f={doAction:a(()=>{this.moveAndHover(u.x,u.y,u.id,t,l)},"doAction"),delay:u.timeOffset+e.timestamp-this.service.state.context.baselineTime};this.timer.addAction(f)}),this.timer.addAction({doAction(){},delay:e.delay-((r=l.positions[0])==null?void 0:r.timeOffset)});break;case $.MouseInteraction:{if(l.id===-1)break;let u=new Event(ln(K[l.type])),f=this.mirror.getNode(l.id);if(!f)return this.debugNodeNotFound(l,l.id);this.emitter.emit(ye.MouseInteraction,{type:l.type,target:f});let{triggerFocus:h}=this.config;switch(l.type){case K.Blur:"blur"in f&&f.blur();break;case K.Focus:h&&f.focus&&f.focus({preventScroll:!0});break;case K.Click:case K.TouchStart:case K.TouchEnd:case K.MouseDown:case K.MouseUp:t?(l.type===K.TouchStart?this.touchActive=!0:l.type===K.TouchEnd&&(this.touchActive=!1),l.type===K.MouseDown?this.lastMouseDownEvent=[f,u]:l.type===K.MouseUp&&(this.lastMouseDownEvent=null),this.mousePos={x:l.x||0,y:l.y||0,id:l.id,debugData:l}):(l.type===K.TouchStart&&(this.tailPositions.length=0),this.moveAndHover(l.x||0,l.y||0,l.id,t,l),l.type===K.Click?(this.mouse.classList.remove("active"),this.mouse.offsetWidth,this.mouse.classList.add("active")):l.type===K.TouchStart?(this.mouse.offsetWidth,this.mouse.classList.add("touch-active")):l.type===K.TouchEnd?this.mouse.classList.remove("touch-active"):f.dispatchEvent(u));break;case K.TouchCancel:t?this.touchActive=!1:this.mouse.classList.remove("touch-active");break;default:f.dispatchEvent(u)}break}case $.Scroll:{if(l.id===-1)break;if(this.usingVirtualDom){let u=this.virtualDom.mirror.getNode(l.id);if(!u)return this.debugNodeNotFound(l,l.id);u.scrollData=l;break}this.applyScroll(l,t);break}case $.ViewportResize:this.emitter.emit(ye.Resize,{width:l.width,height:l.height});break;case $.Input:{if(l.id===-1)break;if(this.usingVirtualDom){let u=this.virtualDom.mirror.getNode(l.id);if(!u)return this.debugNodeNotFound(l,l.id);u.inputData=l;break}this.applyInput(l);break}case $.MediaInteraction:{let u=this.usingVirtualDom?this.virtualDom.mirror.getNode(l.id):this.mirror.getNode(l.id);if(!u)return this.debugNodeNotFound(l,l.id);let f=u,{events:h}=this.service.state.context;this.mediaManager.mediaMutation({target:f,timeOffset:e.timestamp-h[0].timestamp,mutation:l});break}case $.StyleSheetRule:case $.StyleDeclaration:{this.usingVirtualDom?l.styleId?this.constructedStyleMutations.push(l):l.id&&((i=this.virtualDom.mirror.getNode(l.id))==null||i.rules.push(l)):this.applyStyleSheetMutation(l);break}case $.CanvasMutation:{if(!this.config.UNSAFE_replayCanvas)return;if(this.usingVirtualDom){let u=this.virtualDom.mirror.getNode(l.id);if(!u)return this.debugNodeNotFound(l,l.id);u.canvasMutations.push({event:e,mutation:l})}else{let u=this.mirror.getNode(l.id);if(!u)return this.debugNodeNotFound(l,l.id);uE({event:e,mutation:l,target:u,imageMap:this.imageMap,canvasEventMap:this.canvasEventMap,errorHandler:this.warnCanvasMutationFailed.bind(this)})}break}case $.Font:{try{let u=new FontFace(l.family,l.buffer?new Uint8Array(JSON.parse(l.fontSource)):l.fontSource,l.descriptors);(o=this.iframe.contentDocument)==null||o.fonts.add(u)}catch(u){this.warn(u)}break}case $.Selection:{if(t){this.lastSelectionData=l;break}this.applySelection(l);break}case $.AdoptedStyleSheet:{this.usingVirtualDom?this.adoptedStyleSheets.push(l):this.applyAdoptedStyleSheet(l);break}}}applyMutation(e,t){if(this.config.useVirtualDom&&!this.usingVirtualDom&&t&&(this.usingVirtualDom=!0,wk(this.iframe.contentDocument,this.mirror,this.virtualDom),Object.keys(this.legacy_missingNodeRetryMap).length))for(let h in this.legacy_missingNodeRetryMap)try{let p=this.legacy_missingNodeRetryMap[h],g=Ww(p.node,this.virtualDom,this.mirror);g&&(p.node=g)}catch(p){this.warn(p)}let r=this.usingVirtualDom?this.virtualDom.mirror:this.mirror;e.removes=e.removes.filter(h=>r.getNode(h.id)?!0:(this.warnNodeNotFound(e,h.id),!1)),e.removes.forEach(h=>{var p;let g=r.getNode(h.id);if(!g)return;let y=r.getNode(h.parentId);if(!y)return this.warnNodeNotFound(e,h.parentId);if(h.isShadow&&Nn(y)&&(y=y.shadowRoot),r.removeNodeFromMap(g),y)try{y.removeChild(g),this.usingVirtualDom&&g.nodeName==="#text"&&y.nodeName==="STYLE"&&((p=y.rules)==null?void 0:p.length)>0&&(y.rules=[])}catch(x){if(x instanceof DOMException)this.warn("parent could not remove child in mutation",y,g,e);else throw x}});let i={...this.legacy_missingNodeRetryMap},o=[],l=a(h=>{let p=null;return h.nextId&&(p=r.getNode(h.nextId)),h.nextId!==null&&h.nextId!==void 0&&h.nextId!==-1&&!p},"nextNotInDOM"),u=a(h=>{var p,g;if(!this.iframe.contentDocument)return this.warn("Looks like your replayer has been destroyed.");let y=r.getNode(h.parentId);if(!y)return h.node.type===Fr.Document?this.newDocumentQueue.push(h):o.push(h);h.node.isShadow&&(Nn(y)||y.attachShadow({mode:"open"}),y=y.shadowRoot);let x=null,w=null;if(h.previousId&&(x=r.getNode(h.previousId)),h.nextId&&(w=r.getNode(h.nextId)),l(h))return o.push(h);if(h.node.rootId&&!r.getNode(h.node.rootId))return;let C=h.node.rootId?r.getNode(h.node.rootId):this.usingVirtualDom?this.virtualDom:this.iframe.contentDocument;if(Is(y,r)){this.attachDocumentToIframe(h,y);return}let E=a((R,L)=>{if(!this.usingVirtualDom){Wa(R);for(let B of this.config.plugins||[])B.onBuild&&B.onBuild(R,{id:L,replayer:this})}},"afterAppend"),M=Rs(h.node,{doc:C,mirror:r,skipChild:!0,hackCss:!0,cache:this.cache,afterAppend:E});if(h.previousId===-1||h.nextId===-1){i[h.node.id]={node:M,mutation:h};return}let O=r.getMeta(y);if(O&&O.type===Fr.Element&&h.node.type===Fr.Text){let R=Array.isArray(y.childNodes)?y.childNodes:Array.from(y.childNodes);if(O.tagName==="textarea")for(let L of R)L.nodeType===y.TEXT_NODE&&y.removeChild(L);else if(O.tagName==="style"&&R.length===1)for(let L of R)L.nodeType===y.TEXT_NODE&&!r.hasNode(L)&&(M.textContent=L.textContent,y.removeChild(L))}else if(O?.type===Fr.Document){let R=y;h.node.type===Fr.DocumentType&&((p=R.childNodes[0])==null?void 0:p.nodeType)===Node.DOCUMENT_TYPE_NODE&&R.removeChild(R.childNodes[0]),M.nodeName==="HTML"&&R.documentElement&&R.removeChild(R.documentElement)}if(x&&x.nextSibling&&x.nextSibling.parentNode?y.insertBefore(M,x.nextSibling):w&&w.parentNode?y.contains(w)?y.insertBefore(M,w):y.insertBefore(M,null):y.appendChild(M),E(M,h.node.id),this.usingVirtualDom&&M.nodeName==="#text"&&y.nodeName==="STYLE"&&((g=y.rules)==null?void 0:g.length)>0&&(y.rules=[]),Is(M,this.mirror)){let R=this.mirror.getId(M),L=this.newDocumentQueue.find(B=>B.parentId===R);L&&(this.attachDocumentToIframe(L,M),this.newDocumentQueue=this.newDocumentQueue.filter(B=>B!==L))}(h.previousId||h.nextId)&&this.legacy_resolveMissingNode(i,y,M,h)},"appendNode");e.adds.forEach(h=>{u(h)});let f=Date.now();for(;o.length;){let h=kk(o);if(o.length=0,Date.now()-f>500){this.warn("Timeout in the loop, please check the resolve tree data:",h);break}for(let p of h)r.getNode(p.value.parentId)?Zw(p,y=>{u(y)}):this.debug("Drop resolve tree since there is no parent for the root node.",p)}Object.keys(i).length&&Object.assign(this.legacy_missingNodeRetryMap,i),Pk(e.texts).forEach(h=>{var p;let g=r.getNode(h.id);if(!g)return e.removes.find(x=>x.id===h.id)?void 0:this.warnNodeNotFound(e,h.id);let y=g.parentElement;if(h.value&&y&&y.tagName==="STYLE"?g.textContent=xl(h.value,this.cache):g.textContent=h.value,this.usingVirtualDom){let x=g.parentNode;((p=x?.rules)==null?void 0:p.length)>0&&(x.rules=[])}}),e.attributes.forEach(h=>{var p;let g=r.getNode(h.id);if(!g)return e.removes.find(y=>y.id===h.id)?void 0:this.warnNodeNotFound(e,h.id);for(let y in h.attributes)if(typeof y=="string"){let x=h.attributes[y];if(x===null)g.removeAttribute(y),y==="open"&&SP(g,h);else if(typeof x=="string")try{if(y==="_cssText"&&(g.nodeName==="LINK"||g.nodeName==="STYLE"))try{let w=r.getMeta(g),C=Rs({...w,attributes:{...w.attributes,...h.attributes}},{doc:g.ownerDocument,mirror:r,skipChild:!0,hackCss:!0,cache:this.cache});Object.assign(w.attributes,h.attributes);let E=g.nextSibling,M=g.parentNode;if(C&&M){M.removeChild(g),M.insertBefore(C,E),r.replace(h.id,C);break}}catch{}if(y==="value"&&g.nodeName==="TEXTAREA"){let w=g;w.childNodes.forEach(E=>w.removeChild(E));let C=(p=g.ownerDocument)==null?void 0:p.createTextNode(x);C&&w.appendChild(C)}else g.setAttribute(y,x);y==="rr_open_mode"&&g.nodeName==="DIALOG"&&Wa(g,h)}catch(w){this.warn("An error occurred may due to the checkout feature.",w)}else if(y==="style"){let w=x,C=g;for(let E in w)if(w[E]===!1)C.style.removeProperty(E);else if(w[E]instanceof Array){let M=w[E];C.style.setProperty(E,M[0],M[1])}else{let M=w[E];C.style.setProperty(E,M)}}}})}applyScroll(e,t){var r,i;let o=this.mirror.getNode(e.id);if(!o)return this.debugNodeNotFound(e,e.id);let l=this.mirror.getMeta(o);if(o===this.iframe.contentDocument)(r=this.iframe.contentWindow)==null||r.scrollTo({top:e.y,left:e.x,behavior:t?"auto":"smooth"});else if(l?.type===Fr.Document)(i=o.defaultView)==null||i.scrollTo({top:e.y,left:e.x,behavior:t?"auto":"smooth"});else try{o.scrollTo({top:e.y,left:e.x,behavior:t?"auto":"smooth"})}catch{}}applyInput(e){let t=this.mirror.getNode(e.id);if(!t)return this.debugNodeNotFound(e,e.id);try{t.checked=e.isChecked,t.value=e.text}catch{}}applySelection(e){try{let t=new Set,r=e.ranges.map(({start:i,startOffset:o,end:l,endOffset:u})=>{let f=this.mirror.getNode(i),h=this.mirror.getNode(l);if(!f||!h)return;let p=new Range;p.setStart(f,o),p.setEnd(h,u);let g=f.ownerDocument,y=g?.getSelection();return y&&t.add(y),{range:p,selection:y}});t.forEach(i=>i.removeAllRanges()),r.forEach(i=>{var o;return i&&((o=i.selection)==null?void 0:o.addRange(i.range))})}catch{}}applyStyleSheetMutation(e){var t;let r=null;e.styleId?r=this.styleMirror.getStyle(e.styleId):e.id&&(r=((t=this.mirror.getNode(e.id))==null?void 0:t.sheet)||null),r&&(e.source===$.StyleSheetRule?this.applyStyleSheetRule(e,r):e.source===$.StyleDeclaration&&this.applyStyleDeclaration(e,r))}applyStyleSheetRule(e,t){var r,i,o,l;if((r=e.adds)==null||r.forEach(({rule:u,index:f})=>{try{if(Array.isArray(f)){let{positions:h,index:p}=qb(f);Cs(t.cssRules,h).insertRule(u,p)}else{let h=f===void 0?void 0:Math.min(f,t.cssRules.length);t?.insertRule(u,h)}}catch{}}),(i=e.removes)==null||i.forEach(({index:u})=>{try{if(Array.isArray(u)){let{positions:f,index:h}=qb(u);Cs(t.cssRules,f).deleteRule(h||0)}else t?.deleteRule(u)}catch{}}),e.replace)try{(o=t.replace)==null||o.call(t,e.replace)}catch{}if(e.replaceSync)try{(l=t.replaceSync)==null||l.call(t,e.replaceSync)}catch{}}applyStyleDeclaration(e,t){e.set&&Cs(t.rules,e.index).style.setProperty(e.set.property,e.set.value,e.set.priority),e.remove&&Cs(t.rules,e.index).style.removeProperty(e.remove.property)}applyAdoptedStyleSheet(e){var t;let r=this.mirror.getNode(e.id);if(!r)return;(t=e.styles)==null||t.forEach(u=>{var f;let h=null,p=null;if(Nn(r)?p=((f=r.ownerDocument)==null?void 0:f.defaultView)||null:r.nodeName==="#document"&&(p=r.defaultView),!!p)try{h=new p.CSSStyleSheet,this.styleMirror.add(h,u.styleId),this.applyStyleSheetRule({source:$.StyleSheetRule,adds:u.rules},h)}catch{}});let i=10,o=0,l=a((u,f)=>{let h=f.map(p=>this.styleMirror.getStyle(p)).filter(p=>p!==null);Nn(u)?u.shadowRoot.adoptedStyleSheets=h:u.nodeName==="#document"&&(u.adoptedStyleSheets=h),h.length!==f.length&&o<i&&(setTimeout(()=>l(u,f),0+100*o),o++)},"adoptStyleSheets");l(r,e.styleIds)}legacy_resolveMissingNode(e,t,r,i){let{previousId:o,nextId:l}=i,u=o&&e[o],f=l&&e[l];if(u){let{node:h,mutation:p}=u;t.insertBefore(h,r),delete e[p.node.id],delete this.legacy_missingNodeRetryMap[p.node.id],(p.previousId||p.nextId)&&this.legacy_resolveMissingNode(e,t,h,p)}if(f){let{node:h,mutation:p}=f;t.insertBefore(h,r.nextSibling),delete e[p.node.id],delete this.legacy_missingNodeRetryMap[p.node.id],(p.previousId||p.nextId)&&this.legacy_resolveMissingNode(e,t,h,p)}}moveAndHover(e,t,r,i,o){let l=this.mirror.getNode(r);if(!l)return this.debugNodeNotFound(o,r);let u=Qw(l,this.iframe),f=e*u.absoluteScale+u.x,h=t*u.absoluteScale+u.y;this.mouse.style.left=`${f}px`,this.mouse.style.top=`${h}px`,i||this.drawMouseTail({x:f,y:h}),this.hoverElements(l)}drawMouseTail(e){if(!this.mouseTail)return;let{lineCap:t,lineWidth:r,strokeStyle:i,duration:o}=this.config.mouseTail===!0?_f:Object.assign({},_f,this.config.mouseTail),l=a(()=>{if(!this.mouseTail)return;let u=this.mouseTail.getContext("2d");!u||!this.tailPositions.length||(u.clearRect(0,0,this.mouseTail.width,this.mouseTail.height),u.beginPath(),u.lineWidth=r,u.lineCap=t,u.strokeStyle=i,u.moveTo(this.tailPositions[0].x,this.tailPositions[0].y),this.tailPositions.forEach(f=>u.lineTo(f.x,f.y)),u.stroke())},"draw");this.tailPositions.push(e),l(),setTimeout(()=>{this.tailPositions=this.tailPositions.filter(u=>u!==e),l()},o/this.speedService.state.context.timer.speed)}hoverElements(e){var t;(t=this.lastHoveredRootNode||this.iframe.contentDocument)==null||t.querySelectorAll(".\\:hover").forEach(i=>{i.classList.remove(":hover")}),this.lastHoveredRootNode=e.getRootNode();let r=e;for(;r;)r.classList&&r.classList.add(":hover"),r=r.parentElement}isUserInteraction(e){return e.type!==W.IncrementalSnapshot?!1:e.data.source>$.Mutation&&e.data.source<=$.Input}backToNormal(){this.nextUserInteractionEvent=null,!this.speedService.state.matches("normal")&&(this.speedService.send({type:"BACK_TO_NORMAL"}),this.emitter.emit(ye.SkipEnd,{speed:this.speedService.state.context.normalSpeed}))}warnNodeNotFound(e,t){this.warn(`Node with id '${t}' not found. `,e)}warnCanvasMutationFailed(e,t){this.warn("Has error on canvas update",t,"canvas mutation:",e)}debugNodeNotFound(e,t){this.debug(`Node with id '${t}' not found. `,e)}warn(...e){this.config.showWarning&&this.config.logger.warn(fE,...e)}debug(...e){this.config.showDebug&&this.config.logger.log(fE,...e)}},{addCustomEvent:D5}=Zt,{freezePage:k5}=Zt,{takeFullSnapshot:P5}=Zt,xP="0.0.3-beta.1";typeof window<"u"&&(window.checksumRRWeb={version:xP});var MP=a(n=>n&&(n instanceof HTMLInputElement&&/|text|email|number|password|search|tel|url/.test(n.type||"")||n instanceof HTMLTextAreaElement)?!(n.disabled||n.readOnly):!1,"isEditableInputOrTextArea"),TP=a(n=>(n.ctrlKey?"ctrl ":"")+(n.altKey?"alt ":"")+(n.shiftKey?"shift ":"")+(n.metaKey?"meta ":"")+n.key,"formatKeyProperties"),yS=a(n=>{let e=a((r,i)=>{n({key:r,eventTarget:i})},"sendKeyEvent"),t=a(r=>{try{if(MP(r.target))return;e(TP(r),r.target)}catch{}},"onKeyUp");window.addEventListener("keyup",r=>{t(r)})},"startKeyboardObserver");var Nl=class n{constructor(e=document,t){this.target=e;this.onEvent=t;this.monitoredTextElements=[];this.inputEnabledSelectors=["[contenteditable=true]"].join(",");this.iframeObservers=[];this.monitorInputEnabledElement=a(e=>{e.addEventListener("input",t=>{this.onEvent({text:t.target.innerText,eventTarget:t.target})})},"monitorInputEnabledElement")}static{a(this,"ContendEditableObserver")}startObserver(){this.startIframesObserver(),this.observer=new MutationObserver(e=>{e.forEach(t=>{t.addedNodes.forEach(r=>{if(r.nodeType!==Node.ELEMENT_NODE)return;let i=r;i.matches(this.inputEnabledSelectors)||i.isContentEditable?this.monitorInputEnabledElement(i):Array.from(le("*",i)).filter(o=>o.matches(this.inputEnabledSelectors)||o.isContentEditable).forEach(this.monitorInputEnabledElement)})})}),this.observer.observe(this.target,{childList:!0,subtree:!0,attributes:!0,characterData:!0,attributeOldValue:!0,characterDataOldValue:!0}),this.startInputMonitoring()}startIframesObserver(){setInterval(()=>{le("iframe",this.target).forEach(t=>{if(this.iframeObservers.some(l=>l.iframe===t))return;let r=a(l=>{if(l.iframe.contentWindow)try{l.observer=new n(l.iframe.contentWindow.document,this.onEvent),l.observer.startObserver()}catch{}},"observeIframe"),i=t,o={iframe:i,observer:null};this.iframeObservers.push(o),i.contentWindow?r(o):i.addEventListener("load",()=>{r(o)})})},500)}startInputMonitoring(){this.monitoredTextElements=le(this.inputEnabledSelectors,this.target),this.monitoredTextElements.forEach(this.monitorInputEnabledElement)}};var Ll=class{constructor(e){this.onEvent=e;this.onURLChange=a(()=>{setTimeout(()=>{let e=window.location.href;if(e!==this.currentURL){this.currentURL=e;try{this.onEvent({url:e})}catch{}}})},"onURLChange")}static{a(this,"URLObserver")}start(){window.addEventListener("popstate",()=>{this.onURLChange()}),window.addEventListener("locationchange",()=>{this.onURLChange()}),window.addEventListener("hashchange",()=>{this.onURLChange()});let e=window.history.pushState;window.history.pushState=(...r)=>(this.onURLChange(),e.apply(window.history,r));let t=window.history.replaceState;window.history.replaceState=(...r)=>(this.onURLChange(),t.apply(window.history,r))}};var fn={defaultMerge:Symbol("deepmerge-ts: default merge"),skip:Symbol("deepmerge-ts: skip")},q5={defaultMerge:fn.defaultMerge};function RP(n,e){return e}a(RP,"defaultMetaDataUpdater");function IP(n,e){return n.filter(t=>t!==void 0)}a(IP,"defaultFilterValues");var bS;(function(n){n[n.NOT=0]="NOT",n[n.RECORD=1]="RECORD",n[n.ARRAY=2]="ARRAY",n[n.SET=3]="SET",n[n.MAP=4]="MAP",n[n.OTHER=5]="OTHER"})(bS||(bS={}));function ES(n){return typeof n!="object"||n===null?0:Array.isArray(n)?2:NP(n)?1:n instanceof Set?3:n instanceof Map?4:5}a(ES,"getObjectType");function AP(n){let e=new Set;for(let t of n)for(let r of[...Object.keys(t),...Object.getOwnPropertySymbols(t)])e.add(r);return e}a(AP,"getKeys");function OP(n,e){return typeof n=="object"&&Object.prototype.propertyIsEnumerable.call(n,e)}a(OP,"objectHasProperty");function SS(n){let e=0,t=n[0]?.[Symbol.iterator]();return{[Symbol.iterator](){return{next(){do{if(t===void 0)return{done:!0,value:void 0};let r=t.next();if(r.done===!0){e+=1,t=n[e]?.[Symbol.iterator]();continue}return{done:!1,value:r.value}}while(!0)}}}}}a(SS,"getIterableOfIterables");var wS=["[object Object]","[object Module]"];function NP(n){if(!wS.includes(Object.prototype.toString.call(n)))return!1;let{constructor:e}=n;if(e===void 0)return!0;let t=e.prototype;return!(t===null||typeof t!="object"||!wS.includes(Object.prototype.toString.call(t))||!t.hasOwnProperty("isPrototypeOf"))}a(NP,"isRecord");function LP(n,e,t){let r={};for(let i of AP(n)){let o=[];for(let f of n)OP(f,i)&&o.push(f[i]);if(o.length===0)continue;let l=e.metaDataUpdater(t,{key:i,parents:n}),u=CS(o,e,l);u!==fn.skip&&(i==="__proto__"?Object.defineProperty(r,i,{value:u,configurable:!0,enumerable:!0,writable:!0}):r[i]=u)}return r}a(LP,"mergeRecords$1");function _P(n){return n.flat()}a(_P,"mergeArrays$1");function DP(n){return new Set(SS(n))}a(DP,"mergeSets$1");function kP(n){return new Map(SS(n))}a(kP,"mergeMaps$1");function PP(n){return n.at(-1)}a(PP,"mergeOthers$1");var _l={mergeRecords:LP,mergeArrays:_P,mergeSets:DP,mergeMaps:kP,mergeOthers:PP};function vS(...n){return FP({})(...n)}a(vS,"deepmerge");function FP(n,e){let t=HP(n,r);function r(...i){return CS(i,t,e)}return a(r,"customizedDeepmerge"),r}a(FP,"deepmergeCustom");function HP(n,e){return{defaultMergeFunctions:_l,mergeFunctions:{..._l,...Object.fromEntries(Object.entries(n).filter(([t,r])=>Object.hasOwn(_l,t)).map(([t,r])=>r===!1?[t,_l.mergeOthers]:[t,r]))},metaDataUpdater:n.metaDataUpdater??RP,deepmerge:e,useImplicitDefaultMerging:n.enableImplicitDefaultMerging??!1,filterValues:n.filterValues===!1?void 0:n.filterValues??IP,actions:fn}}a(HP,"getUtils");function CS(n,e,t){let r=e.filterValues?.(n,t)??n;if(r.length===0)return;if(r.length===1)return ah(r,e,t);let i=ES(r[0]);if(i!==0&&i!==5){for(let o=1;o<r.length;o++)if(ES(r[o])!==i)return ah(r,e,t)}switch(i){case 1:return $P(r,e,t);case 2:return BP(r,e,t);case 3:return WP(r,e,t);case 4:return VP(r,e,t);default:return ah(r,e,t)}}a(CS,"mergeUnknowns");function $P(n,e,t){let r=e.mergeFunctions.mergeRecords(n,e,t);return r===fn.defaultMerge||e.useImplicitDefaultMerging&&r===void 0&&e.mergeFunctions.mergeRecords!==e.defaultMergeFunctions.mergeRecords?e.defaultMergeFunctions.mergeRecords(n,e,t):r}a($P,"mergeRecords");function BP(n,e,t){let r=e.mergeFunctions.mergeArrays(n,e,t);return r===fn.defaultMerge||e.useImplicitDefaultMerging&&r===void 0&&e.mergeFunctions.mergeArrays!==e.defaultMergeFunctions.mergeArrays?e.defaultMergeFunctions.mergeArrays(n):r}a(BP,"mergeArrays");function WP(n,e,t){let r=e.mergeFunctions.mergeSets(n,e,t);return r===fn.defaultMerge||e.useImplicitDefaultMerging&&r===void 0&&e.mergeFunctions.mergeSets!==e.defaultMergeFunctions.mergeSets?e.defaultMergeFunctions.mergeSets(n):r}a(WP,"mergeSets");function VP(n,e,t){let r=e.mergeFunctions.mergeMaps(n,e,t);return r===fn.defaultMerge||e.useImplicitDefaultMerging&&r===void 0&&e.mergeFunctions.mergeMaps!==e.defaultMergeFunctions.mergeMaps?e.defaultMergeFunctions.mergeMaps(n):r}a(VP,"mergeMaps");function ah(n,e,t){let r=e.mergeFunctions.mergeOthers(n,e,t);return r===fn.defaultMerge||e.useImplicitDefaultMerging&&r===void 0&&e.mergeFunctions.mergeOthers!==e.defaultMergeFunctions.mergeOthers?e.defaultMergeFunctions.mergeOthers(n):r}a(ah,"mergeOthers");var UP=a(()=>{},"selfObserveMutationCallback"),zP={sampling:{mousemove:!1},userTriggeredOnInput:!0,maskInputOptions:{password:!1}},Dl=class{constructor(e,t={}){this.eventHandler=e;this.options=t;this.logNativeMutationObserver=!1;this.stopRRWebRecording=a(()=>{},"stopRRWebRecording");this.start=a(()=>{this.stopRRWebRecording=Zt({...this.options,emit:a((e,t)=>{this.eventHandler(e,t)},"emit")})??(()=>{}),this.logNativeMutationObserver&&this.selfObserve(),this.startURLObserver(),this.startKeyboardObserver(),this.startContentEditableObserver()},"start");this.stop=a(()=>{this.stopRRWebRecording()},"stop");this.startURLObserver=a(()=>{this.urlObserver=new Ll(({url:e})=>{let t={url:e};this.addCustomEvent("url-change",t)}),this.urlObserver.start()},"startURLObserver");this.startContentEditableObserver=a(()=>{this.contentEditableObserver=new Nl(document,({text:e,eventTarget:t})=>{let r={text:e,id:this.tryGetMetaFromEventTarget(t)?.id};this.addCustomEvent("contenteditable-input",r)}),this.contentEditableObserver.startObserver()},"startContentEditableObserver");this.startKeyboardObserver=a(()=>{yS(({key:e,eventTarget:t})=>{let r={key:e,id:this.tryGetMetaFromEventTarget(t)?.id};this.addCustomEvent("key-stroke",r)})},"startKeyboardObserver");this.addCustomEvent=a((e,t)=>{Zt.addCustomEvent(e,t)},"addCustomEvent");this.tryGetMetaFromEventTarget=a(e=>{let t;try{t=this.getMeta(e)}catch{}return t},"tryGetMetaFromEventTarget");this.selfObserve=a(()=>{let e=document.getElementsByTagName("body"),t={attributes:!0,childList:!0,subtree:!0},r=new MutationObserver(UP),i=e[0];i&&r.observe(i,t)},"selfObserve");this.getNodeById=a(e=>Zt.mirror.getNode(e),"getNodeById");this.getMeta=a(e=>Zt.mirror.getMeta(e),"getMeta");this.eventHandler=e,this.options=vS(zP,t)}static{a(this,"SessionRecorder")}};var xS=[{selector:'path[d="M17.5 13V15.6667C17.5 16.0203 17.3361 16.3594 17.0444 16.6095C16.7527 16.8595 16.357 17 15.9444 17H5.05556C4.643 17 4.24733 16.8595 3.95561 16.6095C3.66389 16.3594 3.5 16.0203 3.5 15.6667V13"] + path[d="M14.6673 6.92057L10.5007 2.75391L6.33398 6.92057"] + path[d="M10.5 2.75391V12.7539"]',description:"export button"},{selector:'path[d="M16.0893 13.1868C16.6838 12.7754 17.1321 12.1858 17.3697 11.503C17.6072 10.8202 17.6216 10.0796 17.4107 9.38816C17.1999 8.69667 16.7748 8.09007 16.1968 7.65594C15.6187 7.2218 14.9177 6.9826 14.1948 6.97285H12.8308C12.6017 6.20011 12.1996 5.48973 11.6549 4.89565C11.1102 4.30157 10.4374 3.83943 9.68735 3.54431C8.93734 3.24918 8.12995 3.12885 7.32648 3.19244C6.52301 3.25603 5.7446 3.50187 5.05036 3.9113C4.35612 4.32072 3.7643 4.88297 3.31985 5.55533C2.8754 6.22769 2.59001 6.99248 2.48535 7.79164C2.38068 8.59079 2.4595 9.40329 2.71582 10.1674C2.97214 10.9316 3.39921 11.6272 3.96461 12.2016"] + path[d="M10.0273 10.0039V16.8241"] + path[d="M13.0585 13.0351L10.0273 10.0039L6.99609 13.0351"]',description:"import button"},{selector:'path[d="M20.4696 21.5303C20.7625 21.8232 21.2373 21.8232 21.5302 21.5303C21.8231 21.2374 21.8231 20.7626 21.5302 20.4697L20.4696 21.5303ZM17.1802 16.1197C16.8873 15.8268 16.4125 15.8268 16.1196 16.1197C15.8267 16.4126 15.8267 16.8874 16.1196 17.1803L17.1802 16.1197ZM18.25 11C18.25 15.0041 15.0041 18.25 11 18.25V19.75C15.8325 19.75 19.75 15.8325 19.75 11H18.25ZM11 18.25C6.99594 18.25 3.75 15.0041 3.75 11H2.25C2.25 15.8325 6.16751 19.75 11 19.75V18.25ZM3.75 11C3.75 6.99594 6.99594 3.75 11 3.75V2.25C6.16751 2.25 2.25 6.16751 2.25 11H3.75ZM11 3.75C15.0041 3.75 18.25 6.99594 18.25 11H19.75C19.75 6.16751 15.8325 2.25 11 2.25V3.75ZM21.5302 20.4697L17.1802 16.1197L16.1196 17.1803L20.4696 21.5303L21.5302 20.4697Z"]',description:"search"},{selector:'path[d="M3.75 10H16.875"] + path[d="M8.125 5L3.125 10L8.125 15"]',description:"back"},{selector:'path[d="M3.33301 8H12.6663"] + path[d="M8 3.33331L12.6667 7.99998L8 12.6666"]',description:"forward"},{selector:'path[d="M10 4.16667V15.8333"] + path[d="M4.16699 10H15.8337"]',description:"new or Add button"},{selector:'path[d="M10 10.75C10.4142 10.75 10.75 10.4142 10.75 10C10.75 9.58579 10.4142 9.25 10 9.25C9.58579 9.25 9.25 9.58579 9.25 10C9.25 10.4142 9.58579 10.75 10 10.75Z"] + path[d="M15.833 10.75C16.2472 10.75 16.583 10.4142 16.583 10C16.583 9.58579 16.2472 9.25 15.833 9.25C15.4188 9.25 15.083 9.58579 15.083 10C15.083 10.4142 15.4188 10.75 15.833 10.75Z"] + path[d="M4.16699 10.75C4.58121 10.75 4.91699 10.4142 4.91699 10C4.91699 9.58579 4.58121 9.25 4.16699 9.25C3.75278 9.25 3.41699 9.58579 3.41699 10C3.41699 10.4142 3.75278 10.75 4.16699 10.75Z"]',description:"open menu"},{selector:'path[d="M10 4.16667V15.8333"] + path[d="M4.16699 10H15.8337"]',description:"add filter"},{selector:'path[d="M15 5L5 15"] + path[d="M5 5L15 15"]',description:"close or remove"},{selector:'path[d="M4 6L8 10L12 6"]',description:"open or close dropdown"},{selector:'path[d="M10 17.5C14.1421 17.5 17.5 14.1421 17.5 10C17.5 5.85786 14.1421 2.5 10 2.5C5.85786 2.5 2.5 5.85786 2.5 10C2.5 14.1421 5.85786 17.5 10 17.5Z"] + path[d="M12.5 7.5L7.5 12.5"] + path[d="M7.5 7.5L12.5 12.5"]',description:"clear input"},{selector:'path[d="M3.33301 5.49054H4.81449H16.6663"] + path[d="M7.14286 5.49999V3.99999C7.14286 3.60216 7.29337 3.22063 7.56128 2.93932C7.82919 2.65802 8.19255 2.49998 8.57143 2.49998H11.4286C11.8075 2.49998 12.1708 2.65802 12.4387 2.93932C12.7066 3.22063 12.8571 3.60216 12.8571 3.99999V5.49999M15 5.49999V16C15 16.3978 14.8495 16.7793 14.5816 17.0607C14.3137 17.342 13.9503 17.5 13.5714 17.5H6.42857C6.04969 17.5 5.68633 17.342 5.41842 17.0607C5.15051 16.7793 5 16.3978 5 16V5.49999H15Z"] + path[d="M8.33203 9.23726V13.4039"] + path[d="M11.666 9.23726V13.4039"]',description:"delete"},{selector:'path[d="M13.3334 4L6.00008 11.3333L2.66675 8"]',description:"checked"},{selector:'path[d="M4.516 7.548c0.436-0.446 1.043-0.481 1.576 0l3.908 3.747 3.908-3.747c0.533-0.481 1.141-0.446 1.574 0 0.436 0.445 0.408 1.197 0 1.615-0.406 0.418-4.695 4.502-4.695 4.502-0.217 0.223-0.502 0.335-0.787 0.335s-0.57-0.112-0.789-0.335c0 0-4.287-4.084-4.695-4.502s-0.436-1.17 0-1.615z"]',description:"downward-pointing arrow"},{selector:'path[d="M18.0893 3.08926C18.4147 2.76382 18.4147 2.23618 18.0893 1.91074C17.7638 1.58531 17.2362 1.58531 16.9107 1.91074L18.0893 3.08926ZM9.41074 9.41074L8.82149 10L10 11.1785L10.5893 10.5893L9.41074 9.41074ZM16.9107 1.91074L9.41074 9.41074L10.5893 10.5893L18.0893 3.08926L16.9107 1.91074Z"] + path[d="M17.5 2.5L12.25 17.5L9.25 10.75L2.5 7.75L17.5 2.5Z"]',description:"send"}];var GP=300*1e3,kl=class{constructor(){this.observer=null;this.monitoringPeriodTimeout=null;this.flashingTextElements=[]}static{a(this,"FlashingElementsDetector")}start(){this.stop(),this.flashingTextElements=[],this.observer=new MutationObserver(e=>{e.forEach(t=>{t.addedNodes.length>0&&t.addedNodes.forEach(r=>{r instanceof HTMLElement&&this.includeElement(r)&&setTimeout(()=>{this.flashingTextElements.push(this.processTextElements(r))},1e3)})})}),this.observer.observe(document.body,{childList:!0,subtree:!0}),this.monitoringPeriodTimeout=setTimeout(()=>{this.stop()},GP)}stop(){this.monitoringPeriodTimeout&&(clearTimeout(this.monitoringPeriodTimeout),this.monitoringPeriodTimeout=null),this.observer&&(this.observer.disconnect(),this.observer=null)}get(){let e=this.flashingTextElements.map(r=>r.filter(i=>!i.isConnected||!i.parentElement||dt(i.parentElement).isHidden)).filter(r=>r.length).map(r=>`<span>${r.map(i=>i.textContent).join("</span><span>")}</span>`),t=new Set(e);return Array.from(t)}stopAndGet(){return this.stop(),this.get()}includeElement(e){return!(e.getElementsByTagName("*").length>50||e.outerHTML.length>5e3)}processTextElements(e){let t=document.createTreeWalker(e,NodeFilter.SHOW_TEXT,null),r,i=[];for(;r=t.nextNode();){let o=r.parentElement;r instanceof Text&&o&&!dt(o).isHidden&&i.push(r)}return i}};var Pn=class{static{a(this,"AlphaNumericCounter")}constructor(e){this.counter=e??"0"}increment(){let e=this.counter.length-1;for(;e>=0;){let t=this.counter.charAt(e);if(t==="9"){this.counter=this.replaceAt(this.counter,e,"a");return}if(t==="z"){if(this.counter=this.replaceAt(this.counter,e,"0"),e===0){this.counter="1"+this.counter;return}e--}else{this.counter=this.replaceAt(this.counter,e,String.fromCharCode(t.charCodeAt(0)+1));return}}}get(){return this.counter}incrementAndGet(){return this.increment(),this.get()}getAndIncrement(){let e=this.get();return this.increment(),e}replaceAt(e,t,r){return e.slice(0,t)+r+e.slice(t+r.length)}static compare(e,t){let r=e.length,i=t.length;if(r!==i)return r-i;for(let o=0;o<r;o++){let l=e.charCodeAt(o),u=t.charCodeAt(o);if(l!==u)return l-u}return 0}};var js="checksum-ignore",Fl="checksum-get-more-items",MS=20,jP=.7,Pl,TS,qP=0,RS=a((n,{forceIncludeAttribute:e,forceIncludeFileInput:t,forceIncludeElements:r,limit:i}={})=>{n.excludedElements?.forEach(w=>{w.removeAttribute(js)});let o=new Set;n.excludedElements=o;let l=n.element,u=i??Math.min(Math.ceil(l.children.length*.5),l.children.length-MS),f=a(w=>e&&(w.hasAttribute(e)||Array.from(w.querySelectorAll(`[${e}]`)).length>0)||t&&w.tagName.toLowerCase()==="input"&&w.type==="file"?!0:r?.includes(w)??!1,"isForceIncluded"),h=a(w=>{let C=0;if(n.elementsToKeep.includes(w))return C;let E=lh(w);E.length>=n.attributes.length&&C++;let M=E.filter(L=>n.attributes.includes(L)).length;M===n.attributes.length?C+=3:M>0&&C++;let R=ch(w).filter(L=>n.classes.includes(L)).length;return R===n.classes.length?C+=2:R>0&&C++,C},"scoreElement"),p=Array.from(l.children).filter(w=>w.tagName===n.tagName&&!f(w)).map(w=>({element:w,score:h(w)})).sort((w,C)=>C.score-w.score),{inViewportElements:g,outOfViewportElements:y}=p.reduce((w,C)=>{let{element:E}=C,M=je(E,"Element")?E:E?.parentElement;return M!==null&&hs(M)?w.inViewportElements.push(E):w.outOfViewportElements.push(E),w},{inViewportElements:[],outOfViewportElements:[]}),x=a(w=>{for(let C of w)if(o.add(C),o.size===u)return!0;return!1},"excludeElements");return x(y)||x(g),YP(n),Array.from(o)},"viewportReducer");function YP(n){let{excludedElements:e,element:t}=n;e?.forEach(r=>{r.setAttribute(js,"")}),t._getmoreitemsid||(t._getmoreitemsid="gm"+qP++),n.id=t._getmoreitemsid,t.setAttribute(Fl,n.id)}a(YP,"markTemplateElements");function lh(n){return Array.from(n.attributes).filter(e=>!e.name.startsWith("checksum")).map(e=>e.name.replace(/[0-9]/g,""))}a(lh,"mapAttributes");function ch(n){return n.className?.split(" ").filter(e=>e)??[]}a(ch,"getElementClasses");function wr(n=document.body,{nodeRepetitionsThreshold:e=MS}={}){try{return console.time("bettertemplatize"),Pl=new Set,IS(n,e),console.timeEnd("bettertemplatize"),console.log("[bettertemplatize] templates found:",Array.from(Pl)),Array.from(Pl)}catch(t){return console.error("[bettertemplatize] failed during template processing:",t instanceof Error?t.message:t),[]}}a(wr,"bettertemplatize");function IS(n,e){Array.from(n.children).forEach(t=>{if(t instanceof SVGElement)return;let r=t.children.length;if(r>=e){let i=Array.from(t.children),o=Math.ceil(r*jP);for(let l=0;l<r;l++){let u=0,f=i.slice(0,l);for(let h=l+1;h<r&&u+r-h>=o;h++)try{let p=i[l],g=i[h];if(p&&g&&AS(p,g)){if(u++,u>=o){Pl.add({element:t,...TS,elementsToKeep:f});return}}else g&&f.push(g)}catch{return}}}IS(t,e)})}a(IS,"traverse");var KP=.8,XP=.5,ZP=.8,JP=5;function AS(n,e,t=1){let r=[],i=[],o=a(C=>(C&&(TS={attributes:r,classes:i,tagName:n.nodeName}),C),"response");if(n.nodeType!==e.nodeType)return o(!1);if(n instanceof SVGElement&&e instanceof SVGElement||n.nodeType===Node.TEXT_NODE)return o(!0);if(n.nodeType!==Node.ELEMENT_NODE)return o(!1);let l=n,u=e;if(l.tagName.toLowerCase()!==u.tagName.toLowerCase())return o(!1);let f=lh(l),h=lh(u);if(r=f.filter(C=>h.includes(C)),r.length/Math.max(f.length,h.length)<KP)return o(!1);let p=ch(l),g=ch(u);if(i=p.filter(C=>g.includes(C)),i.length/Math.max(p.length,g.length)<XP)return o(!1);if(t>=JP)return o(!0);if(l.shadowRoot&&!u.shadowRoot||!l.shadowRoot&&u.shadowRoot)return o(!1);let y=Array.from(l.shadowRoot?l.shadowRoot.children:l.children),x=Array.from(u.shadowRoot?u.shadowRoot.children:u.children);if(y.length===0&&x.length===0)return o(!0);let w=0;for(let C=0;C<Math.min(y.length,x.length);C++){let E=y[C],M=x[C];E&&M&&AS(E,M,t+1)&&w++}return w/Math.max(y.length,x.length)<ZP?o(!1):o(!0)}a(AS,"areSimilar");function OS(n,e){let t=n.toLowerCase();return e?{resolvedTag:"div",dataTag:null}:t.includes("-")?{resolvedTag:"div",dataTag:t}:{resolvedTag:n,dataTag:null}}a(OS,"resolveTagName");var NS=16e3;var QP=!0,uh={markTransparentElementsAsHidden:!1,markElementsHiddenByTransparentElementAsVisible:!0},Hl=class{constructor(){this.interactableElements=[];this.nonInteractableElementsFromSimplifiedDom=[];this.interactableElementsFromSimplifiedDom=[];this.elementsInSimplifiedDomByChecksumId={};this.selectors={};this.checksumIdToRRwebIdMap={};this.flashingElementsDetector=new kl;this.forceIncludeElements=[];this.preMapReducedHTMLSelectors=!1;this.useRrwebIdsAsChecksumIds=!1;this.excludedNodes=0;this.nodeRepetitionsThreshold=50;this.reducePercentage=50;this.checksumIdCounter=new Pn("0");this.scrollableElements={};this.defaultReduceHTMLOptions={checkElementInstanceType:!0,extraAllowedAttributes:[],initialChecksumId:void 0,forceIncludeFileInput:!1,forceIncludeAttribute:void 0,invalidateCache:!1,svgIntegration:"aria-label",includeFlashingElements:!0,onForceIncludeElement:a(()=>{},"onForceIncludeElement"),limitNodeRepetitions:50,stopFlashingElementsDetection:!1,assignChecksumIdsToAllElements:!0,assignRrwebIdsToAllElements:!0,fromTimeMachine:!1}}static{a(this,"HTMLReducer")}preprocessDocument(e=document){rn("[preprocessDocument] querySelectorAllExtended");let t=le("*",e,{includeHTML:!0});nn("[preprocessDocument] querySelectorAllExtended"),rn("[preprocessDocument] isElementHidden");for(let r of t){if(this.shouldIgnoreElement(r))continue;let i=dt(r,uh);r.setAttribute("checksum-data-visible",!i.isHidden&&!i.isTransparent?"true":"false"),!i.isHidden&&i.isTransparent&&r.setAttribute("checksum-data-transparently-visible","true"),i.isBehindTransparentElement&&r.setAttribute("checksum-data-visible-under-transparent-element","true"),i.clickOffset&&r.setAttribute("checksum-data-click-offset",`${i.clickOffset.x};${i.clickOffset.y}`),this.markScrollableElement(r)}nn("[preprocessDocument] isElementHidden")}markScrollableElement(e){let{canScrollX:t,canScrollY:r,progressX:i,progressY:o}=ut.getScrollData(e);if(t&&i!==void 0&&(e.setAttribute("data-scrollable-x","true"),e.setAttribute("data-scrollable-x-progress",i.toString())),r&&o!==void 0&&(e.setAttribute("data-scrollable-y","true"),e.setAttribute("data-scrollable-y-progress",o.toString())),t||r)try{let l=this.getSessionMirror()?.getMeta(e)?.id;l&&(this.scrollableElements[l]={...t&&i!==void 0?{x:i}:{},...r&&o!==void 0?{y:o}:{}})}catch(l){console.error("[markScrollableElement] Error getting rrwebId and updating scrollable elements",e,l)}}setSessionRecorder(e){this.sessionRecorder=e}markInteractableElements(e,t=document,{forceIncludeAttribute:r,forceIncludeFileInput:i}={}){rn("[markInteractableElements]"),this.interactableElements=[];let o=An(t,e,{allowDisabled:!0,excludeCrossOriginIframes:!1}),l=a((h,p)=>(h._checksumid||(h._checksumid=p??this.checksumIdCounter.getAndIncrement()),h.setAttribute("checksumid",h._checksumid),h.setAttribute("checksuminteractable","true"),h._checksumid),"setChecksumIdForElement"),u=a((h,p=!1,g)=>{if(this.shouldIgnoreElement(h))return;let y=h.getAttribute("checksum-data-click-offset")?.split(";"),x=y&&{x:parseInt(y[0]??""),y:parseInt(y[1]??"")},w=l(h,g);this.interactableElements.push({checksumId:w,element:h,forced:p,clickOffset:x})},"handleInteractableElement");o.forEach(h=>u(h));let f=a(h=>{le(h,t,{includeHTML:!0}).forEach(p=>u(p,!0))},"forceIncludeSelector");r&&f(`[${r}]`),i&&f("input[type='file']"),this.forceIncludeElements.filter(({element:h})=>h?.isConnected).forEach(({element:h,checksumid:p})=>u(h,!0,p)),console.log(`Marked ${this.interactableElements.length} interactable elements`),nn("[markInteractableElements]")}truthyFilter(e){return!!e}shouldIgnoreElement(e){return e.hasAttribute(js)}getSessionMirror(e=!1){return e?window.checksum.timeMachine.sessionReplayer:this.sessionRecorder}generateSimplifiedDom(e,t,{extraAllowedAttributes:r=[],checkElementInstanceType:i=!0,forceIncludeAttribute:o=void 0,forceIncludeFileInput:l=!1,svgIntegration:u="aria-label",onForceIncludeElement:f=void 0,contentWindow:h=window,assignChecksumIdsToAllElements:p=!0,assignRrwebIdsToAllElements:g=!0,fromTimeMachine:y=!1}={}){if(!e)return null;let x=a((ne,Ze=ne)=>{if(ne._originalNode=Ze,!je(ne,"Element")||!je(Ze,"Element"))return ne;let Nt=ne,Lt=Ze;if(p&&!Lt.hasAttribute("checksumid")&&(Lt._checksumid||(Lt._checksumid=this.checksumIdCounter.getAndIncrement()),Nt.setAttribute("checksumid",Lt._checksumid),this.nonInteractableElementsFromSimplifiedDom.push({checksumId:Lt._checksumid,element:Lt})),g){let ht=this.getSessionMirror(y);if(ht){let at=ht.getMeta(Lt)?.id?.toString();at&&(Nt.setAttribute("rrwebid",at),this.useRrwebIdsAsChecksumIds&&(Nt.setAttribute("checksumid",at),Nt._checksumid=at))}}return this.checksumIdToRRwebIdMap[Lt._checksumid]=parseInt(Lt._rrwebid),ne},"processSimplifiedDOMNode"),w=a((ne,Ze=e)=>x(document.createTextNode(ne),Ze),"createTextNode"),C=a((ne,Ze=e)=>x(document.createElement(ne),Ze),"createElementNode");if(e.nodeType===Node.ELEMENT_NODE){let ne=e;if(ne.tagName.toLowerCase()==="head"||this.shouldIgnoreElement(ne))return null}if(e.nodeType===Node.TEXT_NODE)return!e.parentElement||e.parentElement.getAttribute("checksum-data-visible")==="false"&&!e.parentElement.hasAttribute("checksumid")||e.parentElement.tagName.toLowerCase()==="body"?null:e.textContent?.trim()?w(e.textContent+" "):null;if(e.nodeType!==Node.ELEMENT_NODE||i&&!(je(e,"HTMLElement")||je(e,"SVGElement")))return null;let E=e,M=E.tagName.toLowerCase()==="iframe"&&E.contentDocument,O=ii(M?M.documentElement:E,{flattenShadowRootChildren:!0});t.esraSelectionRules?.limitChildren?.forEach(ne=>{E.matches(ne.selector)&&O.length>ne.limit&&O.splice(ne.limit)});let R=O.map(ne=>this.generateSimplifiedDom(ne,t,{extraAllowedAttributes:r,checkElementInstanceType:i,forceIncludeAttribute:o,forceIncludeFileInput:l,svgIntegration:u,onForceIncludeElement:f,contentWindow:M?E.contentWindow:h,assignChecksumIdsToAllElements:p,assignRrwebIdsToAllElements:g,fromTimeMachine:y})).filter(this.truthyFilter),L=E.getAttribute("checksum-data-visible")!=="false",B=E.hasAttribute("checksumid"),U=E.hasAttribute("role"),{customDescription:J,customDescriptionTarget:te}=this.getElementCustomDescription(E,{enableSVGCustomDescription:!!u}),ce=!!J,Se=E.hasAttribute("aria-label")||E.hasAttribute("name")||E.hasAttribute("alt"),Fe=E.hasAttribute(Fl)||this.forceIncludeElements.map(ne=>ne.element).includes(E)||!!o&&E.hasAttribute(o)||l&&E.tagName.toLowerCase()==="input"&&E.getAttribute("type")==="file",ze=["form","button","input","textarea","a","table","th","tr","td","section","nav","header","footer","main","article","aside","li","ul","select","option","datalist"],z=B||L&&(U||Se||ce||E.matches(ze.join(",")));if(!(z||Fe)){if(!R.length)return null;let ne=R[0];if(R.length===1&&ne&&!je(ne,"Text"))return ne}!z&&Fe&&f?.(E);let{resolvedTag:bt,dataTag:Q}=OS(E.tagName,E.tagName.toLowerCase()==="body"&&E.ownerDocument!==document),ee=a(()=>{if(ce)switch(te){case"svg":switch(u){case"aria-label":{let ne=C("svg");return ne.setAttribute("aria-label",J),{simplifiedNode:ne,appendChildren:!1}}case"text":{if(E.hasAttribute("checksumid")){let Ze=C("div");return Ze.innerText=J,{simplifiedNode:Ze,appendChildren:!1}}return{simplifiedNode:w(` [${J}] `),appendChildren:!1}}}}return{simplifiedNode:C(bt)}},"makeSimplifiedNode"),{simplifiedNode:et,appendChildren:Oe=!0}=ee();if(!je(et,"Element"))return et;let Le=et,gn=["aria-.+","data-name","name","type","placeholder","content","value","role","icon","title","checksumid","checksuminteractable","checksum-get-more-items","checked","disabled","selected","label","required","inputmode","min","max","step","minlength","maxlength","alt","hidden","draggable","ondrop","ondragover","contenteditable","href","(data-)?test(-)?id"].concat(r),Wn=E.attributes;for(let ne of Wn)for(let Ze of gn)new RegExp("^"+Ze+"$").test(ne.name)&&Le.setAttribute(ne.name,ne.value);if(Q&&Le.setAttribute("data-tag",Q),E.isContentEditable?Le.setAttribute("contenteditable","true"):!["TEXTAREA","INPUT","SELECT"].includes(E.tagName)&&window.getComputedStyle(E).cursor==="text"&&Le.setAttribute("contenteditable","cursor-text"),je(E,"HTMLInputElement")&&E.getAttribute("type")==="checkbox")E.checked&&Le.setAttribute("checked","true");else if(je(E,"HTMLInputElement")||je(E,"HTMLSelectElement"))Le.setAttribute("value",E.value);else if(je(E,"HTMLTextAreaElement")&&!E.childNodes.length&&E.value){let ne=w(E.value);Le.appendChild(ne)}return Oe&&R.forEach(ne=>Le.appendChild(ne)),Le}getElementCustomDescription(e,{enableSVGCustomDescription:t=!0}={}){return(je(e,"SVGElement")||e.tagName.toLowerCase()==="svg")&&t?{customDescriptionTarget:"svg",customDescription:this.getSVGDescriptionForElement(e)}:{}}getSVGDescriptionForElement(e){let t=this.findSvgElementDescriptionFromBank(e);if(t)return t;let r=e.querySelector("title");if(r)return r.textContent??void 0}findSvgElementDescriptionFromBank(e){return this.getSvgBank().find(t=>e.matches(`svg:has(${t.selector})`))?.description}getSvgBank(){return xS}restoreDom(e=document){le("*",e).forEach(r=>{r.removeAttribute("checksum-data-visible"),r.removeAttribute("checksum-data-transparently-visible"),r.removeAttribute("checksum-data-visible-under-transparent-element"),r.removeAttribute("checksumid"),r.removeAttribute("checksuminteractable"),r.removeAttribute("checksum-data-click-offset"),r.removeAttribute(js),r.removeAttribute(Fl),r.removeAttribute("data-scrollable-x"),r.removeAttribute("data-scrollable-y"),r.removeAttribute("data-scrollable-x-progress"),r.removeAttribute("data-scrollable-y-progress"),r.removeAttribute("rrwebid")})}async mapAndStoreSelectors(){let e={},t=new Bt;for(let{checksumId:r,element:i,clickOffset:o,selector:l,locator:u,parentFramesSelectors:f}of await t.injectSelectorsAndLocators(this.interactableElementsFromSimplifiedDom)){if(!l){console.warn("Unable to get selector for element",i);continue}let h=i;e[r]={element:h,selector:l,locator:u,...o?{clickOffset:o}:{},parentFramesSelectors:f??[],innerText:h.innerText,rrwebId:this.checksumIdToRRwebIdMap[r]??NaN}}return e}shouldFurtherReduce(e){return e?e.outerHTML.length>NS:!0}async reduce(e=document,t,r={}){console.time("reduceHTML");let{initialChecksumId:i,forceIncludeAttribute:o,forceIncludeFileInput:l,invalidateCache:u,includeFlashingElements:f,limitNodeRepetitions:h,stopFlashingElementsDetection:p}=this.lastReduceHTMLOptions={...this.defaultReduceHTMLOptions,...r},g=Ot.getInstance("reduce",{target:e,monitorInput:!0,invalidate:u,log:!1});if(g.hasCache()){let M=g.get();if(M)return M}let y=f?this.flashingElementsDetector.get():void 0;p&&this.flashingElementsDetector.stop(),this.nodeRepetitionsThreshold=h,this.reducePercentage=50,this.templateNodes=void 0,this.excludedNodes=0,this.scrollableElements={};let x=a(M=>RS(M,{forceIncludeAttribute:o,forceIncludeFileInput:l,forceIncludeElements:this.forceIncludeElements.map(O=>O.element),limit:Math.min(Math.ceil(M.element.children.length*(this.reducePercentage/100)),M.element.children.length-6)}),"templateReducer");console.log("Running pre-templatize"),this.templatize(x),console.log("Preprocessing document..."),this.preprocessDocument(e);let w;for((i||!this.checksumIdCounter)&&(this.checksumIdCounter=new Pn(i??"0")),console.log("Marking interactable elements..."),this.markInteractableElements(t,e,{forceIncludeAttribute:o,forceIncludeFileInput:l});;){if(console.log("Generating simplified DOM..."),this.nonInteractableElementsFromSimplifiedDom=[],w=this.generateSimplifiedDom(e.documentElement,t,this.lastReduceHTMLOptions),!w)throw new Error("Unable to get simplified DOM");if(this.shouldFurtherReduce(w)){if(console.log(`Will further reduce (${w.outerHTML.length})...`),!this.templatize(x)){console.log(`Exceeded maximum html reduction, stopping (html size: ${w.outerHTML.length})`);break}}else break}console.log("Simplified DOM generated, length:",w.outerHTML.length);let C=new Set(Array.from(w.querySelectorAll("[checksumid]")).map(M=>M.getAttribute("checksumid")));this.interactableElementsFromSimplifiedDom=this.interactableElements.filter(M=>C.has(M.checksumId)),console.log(`Found ${this.interactableElementsFromSimplifiedDom.length} interactable elements in simplified DOM vs ${this.interactableElements.length} in original DOM`),console.log("Restoring DOM..."),this.restoreDom(e),this.preMapReducedHTMLSelectors=QP?!1:!!t.preMapReducedHTMLSelectors,this.preMapReducedHTMLSelectors?(console.log("Mapping selectors..."),this.selectors=await this.mapAndStoreSelectors(),console.log("Done mapping selectors")):this.selectors={},this.elementsInSimplifiedDomByChecksumId=[...this.interactableElementsFromSimplifiedDom,...this.nonInteractableElementsFromSimplifiedDom].reduce((M,O)=>(M[O.checksumId]=O,M),{});let E={reducedDomHTMLElement:w,reducedHTML:w.outerHTML,currentChecksumId:this.checksumIdCounter.get(),...y!==void 0?{flashingHTML:y}:{},scrollableElements:this.scrollableElements};return g.set(E),console.timeEnd("reduceHTML"),E}templatize(e){let t=this.excludedNodes,r=a(()=>Array.from(this.templateNodes??[]).reduce((i,o)=>i+e(o).length,0),"calcExculdedNodes");if(!this.templateNodes)this.templateNodes=wr(document.body,{nodeRepetitionsThreshold:this.nodeRepetitionsThreshold}),this.excludedNodes=r();else do{if(this.reducePercentage<98)this.reducePercentage=Math.min(this.reducePercentage+20,98),console.log("Increasing reduce percentage to",this.reducePercentage);else{if(this.nodeRepetitionsThreshold<=20)return!1;this.reducePercentage=50,this.nodeRepetitionsThreshold-=10,console.log("Reducing node repetitions threshold to",this.nodeRepetitionsThreshold),this.templateNodes=wr(document.body,{nodeRepetitionsThreshold:this.nodeRepetitionsThreshold})}this.excludedNodes=r()}while(t===this.excludedNodes);return console.log(`[templatize] ${this.excludedNodes} elements marked to ignore for ${this.templateNodes?.length} templates`),!0}getMoreElementsFromTemplate(e,t){try{let r=this.templateNodes?.find(h=>h.id===e);if(!r)throw new Error("Template not found");let{element:i,excludedElements:o}=r;if(!o)throw new Error("Template has no excluded elements");console.log("Preprocessing template node..."),this.preprocessDocument(i),console.log("Marking template interactable elements..."),this.markInteractableElements(t,i,this.lastReduceHTMLOptions);let l=[],u=a(()=>l.map(h=>h instanceof Element?h.outerHTML:"").join(""),"getElementsHTML"),f=o.values();for(;u().length<NS*.5;){let h=f.next().value;if(!h)break;let p=Array.from(h.querySelectorAll("[checksumid]")).concat(h._checksumid?[h]:[]);this.interactableElements.filter(g=>p.includes(g.element)).forEach(g=>{this.elementsInSimplifiedDomByChecksumId[g.element._checksumid]=g}),l.push(this.generateSimplifiedDom(h,t,this.lastReduceHTMLOptions)),o.delete(h)}return this.restoreDom(i),{items:u(),hasMoreItems:o.size>0}}catch(r){console.error("[getMoreElementsFromTemplate] error",r);return}}async getSelectorForChecksumId(e){let t=a(h=>({selector:e,element:h?h.element:null,locator:"",parentFramesSelectors:[],invalid:!0,rrwebId:this.checksumIdToRRwebIdMap[e]??NaN,...h?.clickOffset?{clickOffset:h.clickOffset}:{},innerText:h?h.element.innerText:""}),"makeDefaultResult"),r=new Bt,i=this.elementsInSimplifiedDomByChecksumId[e];if(!i||!i.element.isConnected)return this.preMapReducedHTMLSelectors&&this.selectors[e]?this.selectors[e]:t(i);let o=await r.getSelectorAndLocator(i.element);if(!o)return t(i);let{selector:l,locator:u,parentFramesSelectors:f}=o;return{...t(i),selector:l,locator:u,parentFramesSelectors:f??[],invalid:!1}}getElementForChecksumId(e){return this.elementsInSimplifiedDomByChecksumId[e]?.element}hasInnerTextByChecksumId(e,{maxLength:t=void 0,minLength:r=void 0}={}){if(!this.preMapReducedHTMLSelectors){let o=this.elementsInSimplifiedDomByChecksumId[e]?.element?.innerText;return!(!o||r&&o.length<r||t&&o.length>t)}return!!this.selectors[e]?.innerText}getInteractableElements(){return this.interactableElements}getInteractableElementsInReducedHTML(){return this.interactableElementsFromSimplifiedDom}startFlashingElementsDetection(){return this.flashingElementsDetector.start()}addForceIncludeElement(e){this.forceIncludeElements.push(e),e.element._checksumid=e.checksumid}};function _S(n){return n._debugSource?.fileName?n._debugSource?.fileName:""}a(_S,"getComponentpath");function LS(n,e){if(n==="Unknown"||typeof n!="string"||n.charAt(0)!==n.charAt(0).toUpperCase()||e.type?.$$typeof===Symbol.for("react.context")||e.type?.$$typeof===Symbol.for("react.forward_ref")||e.type?.$$typeof===Symbol.for("react.memo")||e.type?.$$typeof===Symbol.for("react.profiler")||e.type?.$$typeof===Symbol.for("react.suspense"))return!1;let t=_S(e);return!(/.*\/node_modules\//.test(t)||n===t||/^(?!.*src).*$/.test(t))}a(LS,"isComponentAllowed");function fh(n,e={}){if(!n)return["",{}];let t=n.type,r=t?t.name||t:"Unknown",i="";if(LS(r,n)){i+=`<${r}>`;let o=_S(n);e[r]=o}if(n.child){let[o,l]=fh(n.child,e);i+=o,e={...e,...l}}if(LS(r,n)&&(i+=`</${r}>`),n.sibling){let[o,l]=fh(n.sibling,e);i+=o,e={...e,...l}}return[i,e]}a(fh,"traverseReactTree");function DS(n){let e=n._reactRootContainer?._internalRoot.current;return e||console.log("No react tree in element",n),fh(e)}a(DS,"getReactTree");var Oi=class n{static{a(this,"FrontendLogger")}static{this.overriddenMethods=["log","warn","error"]}static{this.original={}}static removePrefix(){this.overriddenMethods.forEach(e=>{let t=n.original[e];t&&(console[e]=t)})}static setPrefix(e){this.overriddenMethods.forEach(t=>{let r=n.original[t]??console[t];n.original[t]=r,console[t]=(...i)=>{i.unshift(e),r.apply(console,i)}})}};var $l=class{constructor(e=i=>i.map(o=>o.target),t={childList:!0,subtree:!0,attributes:!0,attributeOldValue:!0},r={collectElement:!0}){this.filterElements=e;this.observeOptions=t;this.options=r;this.elements=[];this.mutationEventListeners=[]}static{a(this,"MutationDetector")}addEventListener(e,t){this.mutationEventListeners.push({selector:e,listener:t})}startListening(){this.elements=[],this.observer=new MutationObserver(e=>{this.options.collectElement&&(this.elements=[...this.elements,...this.filterElements(e)]),this.mutationEventListeners.length&&e.forEach(t=>{t.addedNodes.forEach(r=>{if(r.nodeType!==Node.ELEMENT_NODE)return;let i=r;this.mutationEventListeners.forEach(o=>{i.matches(o.selector)?o.listener(i):i.querySelectorAll(o.selector).forEach(l=>{o.listener(l)})})})})}),this.observer.observe(document.body,this.observeOptions)}stopListening(){return this.observer?.disconnect(),this.elements}};function kS(n){let e=n.filter(r=>r.addedNodes.length>0).reduce((r,i)=>[...r,...i.addedNodes],[]),t=n.filter(r=>r.type==="attributes"&&r.attributeName==="style"&&r.target instanceof HTMLElement&&/display\s*:\s*none/.test(r.oldValue??"")&&la(r.target).visible).map(r=>r.target);return[...e,...t]}a(kS,"poppingElementsFilter");function eF(n,e){let t=new Set,r=n;for(;r;)t.add(r),r=r.parentNode;let i=e;for(;i;){if(t.has(i))return i;i=i.parentNode}return null}a(eF,"findCommonAncestor");function dh(n,e){let t=eF(n,e),r=0,i;if(!t)return 99999;for(i=n;i&&i!==t;)r++,i=i.parentNode;for(i=e;i&&i!==t;)r++,i=i.parentNode;return r}a(dh,"distanceBetweenNodes");function hh(n,e){Object.assign(n.style,e)}a(hh,"mergeStyle");function tF(n){let e=window.getComputedStyle(n),t=e.transform;if(t.startsWith("matrix")){let r=parseFloat((t.split(",")[0]??"").replace("matrix(",""))||1,i=parseFloat(t.split(",")[3]??"")||1;return{scaleX:r,scaleY:i}}if(e.scale){let r=parseFloat(e.scale)||1,i=parseFloat(e.scale)||1;return{scaleX:r,scaleY:i}}return{scaleX:1,scaleY:1}}a(tF,"getScaleFromStyles");function PS(n,e){let t={left:0,top:0,right:0,bottom:0},r=1,i=1;if(e!==n.ownerDocument){let o=n.ownerDocument.defaultView?.frameElement;for(;o&&o.contentDocument!==e;){let l=o.getBoundingClientRect(),u=tF(o);r*=u.scaleX,i*=u.scaleY,t.left+=l.left,t.top+=l.top,o=o.ownerDocument.defaultView?.frameElement}}return{combinedScaleX:r,combinedScaleY:i,iframeOffset:t}}a(PS,"computeIframeTransform");function FS(n,e,{combinedScaleX:t,combinedScaleY:r,iframeOffset:i,elementBoundingBox:o,options:l}){let{highlightStyle:u={},pointerEvents:f,classNames:h=[]}=l,p=pf(n),g={top:o.top*r+i.top,left:o.left*t+i.left};if(!p){let x=e.defaultView?.scrollX||0,w=e.defaultView?.scrollY||0;g.left+=x,g.top+=w}let y=e.createElement("div");return y.style.outline="2px dashed rgba(255,0,0,.75)",y.style.position=p?"fixed":"absolute",y.style.left=g.left+"px",y.style.top=g.top+"px",y.style.width=o.width*t+"px",y.style.height=o.height*r+"px",y.style.pointerEvents=f??"none",y.style.zIndex="2147483647",y.className=["checksum-dom-cache-ignore",...h].join(" "),hh(y,u),y}a(FS,"buildHighlightDiv");function rF(n){return{mousePosition:n.mousePosition,text:n.text,textPosition:n.textPosition??"overlap",clear:n.clear??!0,shouldFlipHighlightTextOutsideViewport:n.shouldFlipHighlightTextOutsideViewport??!0,classNames:n.classNames??[],renderDocument:n.renderDocument,scroll:n.scroll??!1}}a(rF,"resolveHighlightDefaults");var ph=class{constructor(){this.lastHighlights=[]}static{a(this,"ElementHighlighter")}clearHighlights(){this.lastHighlights.length&&(this.lastHighlights.forEach(e=>e.remove()),this.lastHighlights=[])}highlightElement(e,t={}){let r=rF(t);if(r.clear&&this.clearHighlights(),!e)return;let i=r.renderDocument??e.ownerDocument,o=PS(e,r.renderDocument),l=e.getBoundingClientRect(),u=FS(e,i,{...o,elementBoundingBox:l,options:t});r.mousePosition&&this.buildMouseLocation(i,r.mousePosition,r.classNames);let f=i.createElement("div");r.text&&this.buildHoverText(f,u,{text:r.text,elementBoundingBox:l,options:t}),this.finalizeHighlight({element:e,elementDocument:i,newElement:u,hoverTextEl:f},{textPosition:r.textPosition,height:l.height,shouldFlipHighlightTextOutsideViewport:r.shouldFlipHighlightTextOutsideViewport,scroll:r.scroll})}finalizeHighlight({element:e,elementDocument:t,newElement:r,hoverTextEl:i},{textPosition:o,height:l,shouldFlipHighlightTextOutsideViewport:u,scroll:f}){t.body.appendChild(r),this.flipHighlightTextPositionOutsideViewport(i,o,l),this.lastHighlights.push(r),u&&this.flipHighlightTextPositionOutsideViewport(i,o,l),f&&new ut(e).scrollIntoView()}buildMouseLocation(e,t,r){let i=e.createElement("div");if(i.style.position="absolute",i.style.left=+t.x-16+"px",i.style.top=+t.y-16+"px",i.style.color="#004DFF",i.className=["checksum-dom-cache-ignore","mouse-cross",...r].join(" "),i.style.zIndex="2147483648",!e.head.querySelector("style[role=mouse-location]")){let o=e.head.appendChild(e.createElement("style"));o.setAttribute("role","mouse-location"),o.innerHTML=".mouse-cross:before, .mouse-cross:after {position: absolute;left: 15px;content: ' ';height: 33px;width: 3px;background-color: #004DFF;}.mouse-cross:before {transform: rotate(0deg);}.mouse-cross:after {transform: rotate(-90deg);}"}e.body.appendChild(i),this.lastHighlights.push(i)}buildHoverText(e,t,{text:r,elementBoundingBox:i,options:o}){let{textStyle:l={},textType:u="static",textPosition:f="overlap",textWidthType:h="rect",pointerEvents:p,classNames:g=[]}=o;e.className=["checksum-dom-cache-ignore",...g].join(" "),e.innerText=r,e.style.fontSize="12px",e.style.width=h==="rect"?`${i.width}px`:"auto",e.style.background="#000000a1",e.style.color="white",e.style.padding="5px",e.style.position="absolute",e.style.pointerEvents="none",e.style.userSelect="none",this.applyVerticalTextPosition(e,f,i.height),hh(e,l),t.appendChild(e),t.style.pointerEvents=p??"none",u==="hover"&&this.attachHoverToggle(t,e)}applyVerticalTextPosition(e,t,r){t==="above"?e.style.bottom=`${r}px`:t==="below"&&(e.style.top=`${r}px`)}attachHoverToggle(e,t){t.style.display="none",e.addEventListener("mouseover",()=>{t.style.display="block"}),e.addEventListener("mouseout",()=>{t.style.display="none"})}flipHighlightTextPositionOutsideViewport(e,t,r){t==="above"&&Sy(e)>0?(e.style.bottom="initial",e.style.top=`${r}px`):t==="below"&&vy(e)>0&&(e.style.top="initial",e.style.bottom=`${r}px`)}},Wr=new ph;function Bl(n,e){return typeof n!="string"?HS(n):`${JSON.stringify(n)}${e?"s":"i"}`}a(Bl,"escapeForTextSelector");function Wl(n,e=!1){return typeof n!="string"?HS(n):`"${n.replace(/\\/g,"\\\\").replace(/["]/g,'\\"')}"${e?"s":"i"}`}a(Wl,"escapeForAttributeSelector");function HS(n){return n.unicode||n.unicodeSets?String(n):String(n).replace(/(^|[^\\])(\\\\)*(["'`])/g,"$1$2\\$3").replace(/>>/g,"\\>\\>")}a(HS,"escapeRegexForSelector");var nF=10,Li=nF/2;var iF=100,sF=120,oF=140,aF=160,lF=180,cF=200;var rG=iF+Li,nG=sF+Li,iG=oF+Li,sG=aF+Li,oG=lF+Li,aG=cF+Li;function Ni(n){let e={full:"",immediate:[]};if(!uF(n)){let t="";if(n instanceof HTMLInputElement&&(n.type==="submit"||n.type==="button"))e={full:n.value,immediate:[n.value]};else{for(let r=n.firstChild;r;r=r.nextSibling)r.nodeType===Node.TEXT_NODE?(e.full+=r.nodeValue||"",t+=r.nodeValue||""):(t&&e.immediate.push(t),t="",r.nodeType===Node.ELEMENT_NODE&&(e.full+=Ni(r).full));t&&e.immediate.push(t),n.shadowRoot&&(e.full+=Ni(n.shadowRoot).full)}}return e}a(Ni,"elementText");function Vl(n){return n.replace(/\u200b/g,"").trim().replace(/\s+/g," ")}a(Vl,"normalizeWhiteSpace");function uF(n){let e=n.ownerDocument;return n.nodeName==="SCRIPT"||n.nodeName==="NOSCRIPT"||n.nodeName==="STYLE"||e.head&&e.head.contains(n)}a(uF,"shouldSkipForTextMatching");function qs(n){return n.trim().replace(/([!"#$%&'()*+,./:;<=>?@[\\\]^`{|}~])/g,"\\$1")}a(qs,"escapeSelector");function Vr(n){let e=n.ownerDocument?.defaultView;if(!e)return window.playwright;let t=e.playwright;return e!==window&&!t&&(e.playwright=window.playwright),e.playwright}a(Vr,"getElementWindowPlaywright");var Ul=["role","aria-label","aria-labelledby","aria-checked","checked","placeholder","title","alt","id","data-testid","data-test-id","data-test","class","id","style","href","src","path","type"];function zl(n){return typeof n=="object"&&n!==null&&n.nodeType===Node.ELEMENT_NODE}a(zl,"isElement");var dn={NONE:"",DESCENDANT:" ",CHILD:" > "},ke={id:"id",class:"class",tag:"tag",attribute:"attribute",nthchild:"nthchild",nthoftype:"nthoftype"};function $S(n,e){return Object.values(n).includes(e)}a($S,"isEnumValue");var fF="CssSelectorGenerator";function _i(n="unknown problem",...e){console.warn(`${fF}: ${n}`,...e)}a(_i,"showWarning");var dF={selectors:[ke.id,ke.class,ke.tag,ke.attribute],includeTag:!1,whitelist:[],blacklist:[],combineWithinSelector:!0,combineBetweenSelectors:!0,root:null,maxCombinations:Number.POSITIVE_INFINITY,maxCandidates:Number.POSITIVE_INFINITY,useScope:!1,ignoreGeneratedClassNames:!1};function Ys(n){return!!n}a(Ys,"sanitizeBoolean");function hF(n){return Array.isArray(n)?n.filter(e=>$S(ke,e)):[]}a(hF,"sanitizeSelectorTypes");function gh(n){return n instanceof RegExp}a(gh,"isRegExp");function pF(n){return["string","function"].includes(typeof n)||gh(n)}a(pF,"isCssSelectorMatch");function BS(n){return Array.isArray(n)?n.filter(pF):[]}a(BS,"sanitizeCssSelectorMatchList");function mF(n){return n!=null&&typeof n=="object"&&"nodeType"in n&&typeof n.nodeType=="number"}a(mF,"isNode");function WS(n){let e=[Node.DOCUMENT_NODE,Node.DOCUMENT_FRAGMENT_NODE,Node.ELEMENT_NODE];return mF(n)&&e.includes(n.nodeType)}a(WS,"isParentNode");function yh(n,e){if(WS(n))return n.contains(e)||_i("element root mismatch","Provided root does not contain the element. This will most likely result in producing a fallback selector using element's real root node. If you plan to use the selector using provided root (e.g. `root.querySelector`), it will not work as intended."),n;let t=e.getRootNode({composed:!1});return WS(t)?(t!==document&&_i("shadow root inferred","You did not provide a root and the element is a child of Shadow DOM. This will produce a selector using ShadowRoot as a root. If you plan to use the selector using document as a root (e.g. `document.querySelector`), it will not work as intended."),t):Ks(e)}a(yh,"sanitizeRoot");function mh(n){return typeof n=="number"?n:Number.POSITIVE_INFINITY}a(mh,"sanitizeMaxNumber");function VS(n,e={}){let t=Object.assign(Object.assign({},dF),e);return{selectors:hF(t.selectors),whitelist:BS(t.whitelist),blacklist:BS(t.blacklist),root:yh(t.root,n),combineWithinSelector:Ys(t.combineWithinSelector),combineBetweenSelectors:Ys(t.combineBetweenSelectors),includeTag:Ys(t.includeTag),maxCombinations:mh(t.maxCombinations),maxCandidates:mh(t.maxCandidates),useScope:Ys(t.useScope),maxResults:mh(t.maxResults),ignoreGeneratedClassNames:Ys(t.ignoreGeneratedClassNames)}}a(VS,"sanitizeOptions");function Sr(n=[]){let[e=[],...t]=n;return t.length===0?e:t.reduce((r,i)=>r.filter(o=>i.includes(o)),e)}a(Sr,"getIntersection");function US(n){return[].concat(...n)}a(US,"flattenArray");function gF(n){return n.replace(/[|\\{}()[\]^$+?.]/g,"\\$&").replace(/\*/g,".+")}a(gF,"wildcardToRegExp");function Fn(n){let e=n.map(t=>{if(gh(t))return r=>t.test(r);if(typeof t=="function")return r=>{let i=t(r);return typeof i!="boolean"?(_i("pattern matcher function invalid","Provided pattern matching function does not return boolean. It's result will be ignored.",t),!1):i};if(typeof t=="string"){let r=new RegExp("^"+gF(t)+"$");return i=>r.test(i)}return _i("pattern matcher invalid","Pattern matching only accepts strings, regular expressions and/or functions. This item is invalid and will be ignored.",t),()=>!1});return t=>e.some(r=>r(t))}a(Fn,"createPatternMatcher");function Xs(n,e,t){let r=Array.from(yh(t,n[0]).querySelectorAll(e));return r.length===n.length&&n.every(i=>r.includes(i))}a(Xs,"testSelector");function bh(n,e){e=e??Ks(n);let t=[],r=n;for(;r&&r!==e;)zl(r)&&t.push(r),r=r.parentNode;return t}a(bh,"getElementParents");function zS(n,e){return Sr(n.map(t=>bh(t,e)))}a(zS,"getParents");function Ks(n){return n.ownerDocument.querySelector(":root")}a(Ks,"getRootNode");var Gl=", ",GS=new RegExp(["^$","\\s"].join("|")),jS=new RegExp(["^$"].join("|")),jl=[ke.nthoftype,ke.tag,ke.id,ke.class,ke.attribute,ke.nthchild];var yF=Fn(["class","id","ng-*"]);function bF({name:n}){return`[${n}]`}a(bF,"attributeNodeToSimplifiedSelector");function EF({name:n,value:e}){return`[${n}='${e}']`}a(EF,"attributeNodeToSelector");function wF({nodeName:n,nodeValue:e},t){let r=t.tagName.toLowerCase();return["input","option"].includes(r)&&n==="value"||n==="src"&&e?.startsWith("data:")?!1:!yF(n)}a(wF,"isValidAttributeNode");function SF({nodeName:n,nodeValue:e}){return{name:vr(n),value:vr(e??void 0)}}a(SF,"sanitizeAttributeData");function Eh(n,e){let t=Array.from(n.attributes).filter(r=>wF(r,n)).map(SF);return[...t.map(bF),...t.map(EF)]}a(Eh,"getElementAttributeSelectors");function qS(n,e){let t=n.map(r=>Eh(r,e));return Sr(t)}a(qS,"getAttributeSelectors");var vF=/^[a-z_-]{3,}$/i,CF=/[bcdfghjklmnpqrstvwxyz]{4,}/i;function xF(n){if(!vF.test(n)||n.includes("_")&&!n.includes("__")||/^(css|sc|jsx|emotion|makeStyles|MuiButton|MuiBox)-/i.test(n))return!1;let e=n.split(/--|__|[-]|(?<=[a-z])(?=[A-Z])/).filter(t=>t.length>0);if(e.length===0||e.length===1&&e[0].length<4)return!1;for(let t of e)if(t.length<=2||CF.test(t))return!1;return!0}a(xF,"isWordLikeClassName");function wh(n,e){var t;let r=((t=n.getAttribute("class"))!==null&&t!==void 0?t:"").trim().split(/\s+/).filter(o=>!jS.test(o)),i=r;if(e?.ignoreGeneratedClassNames){let o=Fn(e.whitelist);i=r.filter(l=>{let u=`.${vr(l)}`;return o(u)?!0:xF(l)})}return i.map(o=>`.${vr(o)}`)}a(wh,"getElementClassSelectors");function YS(n,e){let t=n.map(r=>wh(r,e));return Sr(t)}a(YS,"getClassSelectors");function Sh(n,e){var t;let r=(t=n.getAttribute("id"))!==null&&t!==void 0?t:"",i=`#${vr(r)}`,o=n.getRootNode({composed:!1});return!GS.test(r)&&Xs([n],i,o)?[i]:[]}a(Sh,"getElementIdSelectors");function KS(n,e){return n.length===0||n.length>1?[]:Sh(n[0],e)}a(KS,"getIdSelector");function vh(n,e){let t=n.parentNode,r=t&&"children"in t?t.children:null;if(r){for(let i=0;i<r.length;i++)if(r[i]===n)return[`:nth-child(${String(i+1)})`]}return[]}a(vh,"getElementNthChildSelector");function XS(n,e){return Sr(n.map(t=>vh(t,e)))}a(XS,"getNthChildSelector");function Ch(n,e){return[vr(n.tagName.toLowerCase())]}a(Ch,"getElementTagSelectors");function ql(n,e){let t=[...new Set(US(n.map(r=>Ch(r,e))))];return t.length===0||t.length>1?[]:[t[0]]}a(ql,"getTagSelector");function xh(n,e){let t=ql([n])[0],r=n.parentNode,i=r&&"children"in r?r:null;if(i){let l=Array.from(i.children).filter(u=>u.tagName.toLowerCase()===t).indexOf(n);if(l>-1)return[`${t}:nth-of-type(${String(l+1)})`]}return[]}a(xh,"getElementNthOfTypeSelector");function ZS(n,e){return Sr(n.map(t=>xh(t,e)))}a(ZS,"getNthOfTypeSelector");function*Th(n=[],{maxResults:e=Number.POSITIVE_INFINITY}={}){let t=0,r=Mh(1);for(;r.length<=n.length&&t<e;)t+=1,yield r.map(o=>n[o]),r=MF(r,n.length-1)}a(Th,"powerSetGenerator");function JS(n=[],{maxResults:e=Number.POSITIVE_INFINITY}={}){return Array.from(Th(n,{maxResults:e}))}a(JS,"getPowerSet");function MF(n=[],e=0){let t=n.length;if(t===0)return[];let r=[...n];r[t-1]+=1;for(let i=t-1;i>=0;i--)if(r[i]>e){if(i===0)return Mh(t+1);r[i-1]++,r[i]=r[i-1]+1}return r[t-1]>e?Mh(t+1):r}a(MF,"bumpOffsets");function Mh(n=1){return Array.from(Array(n).keys())}a(Mh,"generateOffsets");function*QS(n={}){let e=Object.entries(n);if(e.length===0)return;let t=[{index:e.length-1,partial:{}}];for(;t.length>0;){let r=t.pop();if(!r)break;let{index:i,partial:o}=r;if(i<0){yield o;continue}let[l,u]=e[i];for(let f=u.length-1;f>=0;f--)t.push({index:i-1,partial:Object.assign(Object.assign({},o),{[l]:u[f]})})}}a(QS,"cartesianProductGenerator");var TF="3a".toUpperCase(),RF=/[ !"#$%&'()\[\]{|}<>*+,./;=?@^`~\\]/;function vr(n=""){return CSS?CSS.escape(n):IF(n)}a(vr,"sanitizeSelectorItem");function IF(n=""){return n.split("").map(e=>e===":"?`\\${TF} `:RF.test(e)?`\\${e}`:escape(e).replace(/%/g,"\\")).join("")}a(IF,"legacySanitizeSelectorItem");var AF={tag:ql,id:KS,class:YS,attribute:qS,nthchild:XS,nthoftype:ZS},OF={tag:Ch,id:Sh,class:wh,attribute:Eh,nthchild:vh,nthoftype:xh};function ev(n,e,t){return OF[e](n,t)}a(ev,"getElementSelectorsByType");function NF(n,e,t){let r=AF[e];return r(n,t)}a(NF,"getSelectorsByType");function LF(n=[],e,t){return n.filter(r=>t(r)||!e(r))}a(LF,"filterSelectors");function _F(n=[],e){return n.sort((t,r)=>{let i=e(t),o=e(r);return i&&!o?-1:!i&&o?1:0})}a(_F,"orderSelectors");function*DF(n,e){let t=new Set,r=kF(n,e);for(let i of $F(r,e))t.has(i)||(t.add(i),yield i)}a(DF,"allSelectorsGenerator");function kF(n,e){let{blacklist:t,whitelist:r,combineWithinSelector:i,maxCombinations:o}=e,l=Fn(t),u=Fn(r),f=a((h,p)=>{let g=NF(n,p,e),y=LF(g,l,u),x=_F(y,u);return h[p]=i?Array.from(Th(x,{maxResults:o})):x.map(w=>[w]),h},"reducer");return PF(e).reduce(f,{})}a(kF,"getSelectorsList");function PF(n){let{selectors:e,includeTag:t}=n,r=[...e];return t&&!r.includes("tag")&&r.push("tag"),r}a(PF,"getSelectorsToGet");function FF(n){return n.includes(ke.tag)||n.includes(ke.nthoftype)?[...n]:[...n,ke.tag]}a(FF,"addTagTypeIfNeeded");function HF(n){let{selectors:e,combineBetweenSelectors:t,includeTag:r,maxCandidates:i}=n,o=t?JS(e,{maxResults:i}):e.map(l=>[l]);return r?o.map(FF):o}a(HF,"combineSelectorTypes");function*$F(n,e){for(let t of HF(e))yield*BF(t,n)}a($F,"selectorTypeCombinationsGenerator");function*BF(n,e){let t={};for(let r of n){let i=e[r];i&&i.length>0&&(t[r]=i)}for(let r of QS(t))yield VF(r)}a(BF,"constructedSelectorsGenerator");function WF(n,e){return e[n]?e[n].join(""):""}a(WF,"constructSelectorType");function VF(n={}){let e=[...jl];return n[ke.tag]&&n[ke.nthoftype]&&e.splice(e.indexOf(ke.tag),1),e.map(t=>WF(t,n)).join("")}a(VF,"constructSelector");function UF(n,e){return[...n.map(t=>e+dn.DESCENDANT+t),...n.map(t=>e+dn.CHILD+t)]}a(UF,"generateCandidateCombinations");function*zF(n,e){if(e==="")yield*n;else for(let t of n)yield*UF([t],e)}a(zF,"candidatesGenerator");function*GF(n,e,t="",r){let i=DF(n,r);for(let o of zF(i,t))Xs(n,o,e)&&(yield o)}a(GF,"selectorWithinRootGenerator");function*jF(n,e,t="",r){if(n.length===0)return null;let i=[n.length>1?n:[],...zS(n,e).map(o=>[o])];for(let o of i)for(let l of GF(o,e,t,r))yield{foundElements:o,selector:l}}a(jF,"closestIdentifiableParentGenerator");function*tv({elements:n,root:e,rootSelector:t="",options:r}){let i=e,o=t,l=!0;for(;l;){let u=!1;for(let f of jF(n,i,o,r)){let{foundElements:h,selector:p}=f;if(u=!0,Xs(n,p,e))yield p;else{i=h[0],o=p;break}}u||(l=!1)}}a(tv,"selectorGenerator");function rv(n){(n instanceof NodeList||n instanceof HTMLCollection)&&(n=Array.from(n));let e=(Array.isArray(n)?n:[n]).filter(zl);return[...new Set(e)]}a(rv,"sanitizeSelectorNeedle");function qF(n){return{value:n,include:!1}}a(qF,"createElementSelectorData");function nv(n,e,t=dn.NONE){let r={};return e.forEach(i=>{Reflect.set(r,i,ev(n,i).map(qF))}),{element:n,operator:t,selectors:r}}a(nv,"createElementData");function iv({selectors:n,operator:e}){let t=[...jl];n[ke.tag]&&n[ke.nthoftype]&&(t=t.filter(i=>i!==ke.tag));let r="";return t.forEach(i=>{var o;((o=n[i])!==null&&o!==void 0?o:[]).forEach(({value:u,include:f})=>{f&&(r+=u)})}),e+r}a(iv,"constructElementSelector");function YF(n,e){let t=bh(n,e).reverse(),r=e instanceof ShadowRoot,i=t.map((l,u)=>{var f;let h=nv(l,[ke.nthchild],r&&u===0?dn.NONE:dn.CHILD);return((f=h.selectors.nthchild)!==null&&f!==void 0?f:[]).forEach(p=>{p.include=!0}),h});return[r?"":e?":scope":":root",...i.map(iv)].join("")}a(YF,"getElementFallbackSelector");function sv(n,e){return n.map(t=>YF(t,e)).join(Gl)}a(sv,"getFallbackSelector");var KF=function(n,e){var t={};for(var r in n)Object.prototype.hasOwnProperty.call(n,r)&&e.indexOf(r)<0&&(t[r]=n[r]);if(n!=null&&typeof Object.getOwnPropertySymbols=="function")for(var i=0,r=Object.getOwnPropertySymbols(n);i<r.length;i++)e.indexOf(r[i])<0&&Object.prototype.propertyIsEnumerable.call(n,r[i])&&(t[r[i]]=n[r[i]]);return t};function Rh(n,e={}){let t=Object.assign(Object.assign({},e),{maxResults:1});return XF(n,t).next().value}a(Rh,"getCssSelector");function*XF(n,e={}){var t;let r=rv(n),i=VS(r[0],e),o=(t=i.root)!==null&&t!==void 0?t:Ks(r[0]),l=0;for(let f of tv({elements:r,options:i,root:o,rootSelector:""}))if(yield f,l++,l>=i.maxResults)return;if(r.length>1){let{maxResults:f}=e,h=KF(e,["maxResults"]);if(yield r.map(p=>Rh(p,h)).join(Gl),l++,l>=i.maxResults)return}let u=e.root!==void 0;yield sv(r,i.useScope||u?o:void 0)}a(XF,"cssSelectorGenerator");var Yl=a(n=>new Promise(e=>setTimeout(e,n)),"awaitSleep"),ov=a(async(n,e=1e3,t)=>{if(e===null)return n;let r="guard-timed-out",i={id:null},o=a(async()=>new Promise(l=>{i.id=setTimeout(()=>{i.id=null,l(r)},e+1e3)}),"guard");try{let l=await Promise.race([n,o()]);if(i.id!==null&&(clearTimeout(i.id),i.id=null),typeof l=="string"&&l===r)throw typeof t=="function"?new Error(t()):new Error(t??"guardReturnTimedOut");return l}catch(l){throw i.id!==null&&clearTimeout(i.id),l}},"guardReturn");var JF=!1,Hn=class n{constructor(e){this.locators=[];this.elements=[];this.locators=e}static{a(this,"LocatorChain")}hasDuplicateFilters(){let e=this.locators.map(t=>t.options?.hasText).filter(t=>t);return e.length!==new Set(e).size}cloneAndAddCandidate(e){return new n([e,...this.locators.slice()])}toLocatorCandidate(){return{selector:this.getSelector(),locator:this.getLocator()}}getSelector(){return this.locators.map(e=>e.selector).join(" >> ")}getLocator(){return this.locators.map(e=>e.locator).join(".")}},pn=class n{constructor(e=document){this.rootNode=e;this.MAX_TESTING_SELECTORS=50;this.MAX_SINGLE_ELEMENT_SELECTORS=5;this.MAX_PROCESSING_TIME=15e3;this.MAX_MULTICANDIDATE_PROCESSING=5;this.startTimestamp=Date.now()}static{a(this,"PlaywrightCustomLocatorGenerator")}get targetElement(){if(!this._targetElement)throw new Error("Target element is not set");return this._targetElement}async generate(e,t=[],r={}){let{isPartOfListItem:i,isForContextElement:o,useTextContent:l,addCSSSelectorGenerator:u,expandCSSKeyElements:f,bruteForceMode:h}={isPartOfListItem:!1,isForContextElement:!1,useTextContent:!0,addCSSSelectorGenerator:!0,expandCSSKeyElements:!0,bruteForceMode:!1,...r};if(je(e,"HTMLOptionElement")){let y=e.closest("select");if(y)return this.generate(y,t,{isPartOfListItem:i})}this._targetElement=e,this.startTimestamp=Date.now();let p=[];for(t=t.filter(y=>Array.from(document.querySelectorAll(y.selector)).includes(y.element)),f&&this.expandCSSKeyFeatures(e,t);e&&e!==this.rootNode;){await Yl(0);let y=this.getAllLocators(e,t,{useTextContent:l,bruteForceMode:h}),x=[],w=a(async E=>{if(!E.hasDuplicateFilters())try{await Yl(0);let{elements:M}=this.getLocatorBase(e).locator(E.getSelector());M?.some(O=>O===this.targetElement)&&(E.elements=M.filter(O=>hn(O)||O.constructor.name===this.targetElement.constructor.name),x.push(E))}catch(M){console.log(M,E.getSelector())}},"testCandidate");if(p.length)for(let E of y)for(let M of p)await w(M.cloneAndAddCandidate(E));else for(let E of y)await w(new Hn([E]));if(x.length===0&&p.length===0){let E=e.tagName.toLowerCase();p.push(new Hn([{selector:E,locator:this.getSelectorLocator(E),elements:this.getLocatorBase(e).locator(e.tagName.toLowerCase()).elements.filter(M=>hn(M))}]))}if(p.push(...x),o)return p.map(E=>E.toLocatorCandidate());if(p.length>this.MAX_TESTING_SELECTORS||p.filter(E=>E.elements.length===1).length>this.MAX_SINGLE_ELEMENT_SELECTORS||this.checkTimeout(!1))break;let C=e.parentElement;if(!C)break;e=C}if(i){let y=this.filterListItemsSelectors(p);if(y?.length)return y.map(x=>({...x.toLocatorCandidate(),isListSelector:!0}))}let g=[];try{for(let y of p)this.checkTimeout(),g.push(...y.elements.length===1?[y]:await this.reduceMultiCandidates(y))}catch(y){y instanceof tn&&console.warn("[PlaywrightCustomLocatorGenerator] Timeout error")}if(!g?.length&&(console.log("no single element selector found"),!f))return this.generate(e,t,{isPartOfListItem:i,isForContextElement:o,useTextContent:l,addCSSSelectorGenerator:!0,expandCSSKeyElements:!0});if(u){let y=await this.addCSSSelectorGenerator();y&&g.unshift(y)}if(this.rootNode===document&&l){let y=await new Bt().getSelectorAndLocator(this.targetElement);if(y){let{selector:x,locator:w}=y;g.unshift(new Hn([{selector:x,locator:w}]))}}return g=g.concat(await this.addOptionalParentSelector(l,u,f)),Array.from(new Map(g.map(y=>[y.toLocatorCandidate().selector,y.toLocatorCandidate()])).values())}testSelector(e,t,r,i=!0){let o=Vr(t).selector(t),l=this.getLocatorBase(t).locator(o);console.log("Locator result",l);let u=a(h=>!(i&&(h.elements.length!==1||t!==h.element)||!h.elements.includes(t)),"testResult");if(!u(l))return{valid:!1};let f={};if(r?.locatorWithVars?.length)try{let p=new Function(`{ return function(element) { ${r.variablesCode}; return this.getLocatorBase(element).locator(\`${r.locatorWithVars}\`); } }`)().call(this,t);if(console.log("Locator with vars result",p),!u(p))return{valid:!1};f={selectorWithVars:o,locatorWithVars:r.locatorWithVars}}catch(h){return console.error("Error testing selector with variables",h instanceof Error?h.message:void 0),{valid:!1}}return{valid:!0,selector:o,locator:e,...f}}async addCSSSelectorGenerator(){try{let e=this.rootNode===document?{}:{root:this.rootNode},t=await ov(new Promise(r=>{let i=Rh(this.targetElement,e);r(i)}),2e3);if(t.length<50)return new Hn([{selector:t,locator:`locator('${t}')`}])}catch(e){console.error("Error getting CSS selector",e)}}async addOptionalParentSelector(e,t,r){try{let i=Vr(this.targetElement),o=i.locator(i.selector(this.targetElement)).element;o!==this.targetElement&&o?.contains(this.targetElement)&&await this.generate(o,[],{isPartOfListItem:!1,isForContextElement:!1,useTextContent:e,addCSSSelectorGenerator:t,expandCSSKeyElements:r})}catch{}return[]}expandCSSKeyFeatures(e,t,r=4){try{let i=[];for(;e&&e!==this.rootNode&&i.length<r&&e!==document.documentElement;){Array.from(e.attributes).filter(({name:u,value:f})=>f.length<30&&!Ul.includes(u)).forEach(u=>{try{if(i.length>r-1)return;let f=`[${u.name}${u.value?`="${u.value}"`:""}]`;try{if(!e.parentElement||e.parentElement.querySelectorAll(f).length>1)return}catch{console.warn(`Error checking selector - ${f}, continuing`);return}if(!t.some(h=>h.selector.includes(f))&&this.getLocatorBase(e).locator(f).element===e){let h={element:e,selector:f};t.push(h),i.push(h)}}catch(f){console.warn("Error processing css key feature",{name:u.name,value:u.value},f)}});let l=e.parentElement;if(!l)break;e=l}i.length}catch(i){console.error("Error extracting CSS key features",i)}}async generateArbitraryItemListSelector(e,t=[]){console.log("generateArbitraryItemListSelector",e);try{let r=wr(document.body,{nodeRepetitionsThreshold:5});if(!r?.length)throw new Error("No templates found in the page");let i=r.find(x=>x.element.contains(e));if(!i)throw new Error("No template found for target element");console.log("Found template for target element",i);let o=await new n().generate(i.element,t,{isPartOfListItem:!1,isForContextElement:!1,useTextContent:!1});console.log("baseCustomSelectors",o);let l=o[0];if(!l)throw new Error("No base selector found for the list root element");let u=l.selector,f=this.getSelectorLocator(u,i.element);console.log("Randomly selected baseSelector",u);let h=a(()=>{let x=[],w=new $n,C=e;for(;C&&C!==i.element;){let E="",M=!1,O=!1,R=!1;for(;!E.length;)E=w.getSelectorPart(C,{useClasses:O,useId:M,useTag:R}),M?(O=!0,R=!0):M=!0;x.push({selector:E,element:C}),C=C.parentElement}return x},"getCSSFeatures"),p=h();console.log("cssFeatures",p);let g=(await new n(i.element).generate(e,h(),{isPartOfListItem:!0,isForContextElement:!1,useTextContent:!1})).map(x=>({...x,elements:[]})),y=g.filter(x=>(x.elements=this.getLocatorBase(e).locator(u).locator(x.selector).elements,x.elements.length>Math.ceil(i.element.children.length*.7)));return console.log("elementSelectors",g),y.map(({selector:x,locator:w})=>({selector:`${u} >> ${x}`,locator:`${f}.${w}`}))}catch(r){console.error("[findGenericItemListSelector] error",r)}}filterListItemsSelectors(e){try{let t=wr(document.body,{nodeRepetitionsThreshold:5});if(!t?.length)throw new Error("No templates found in the page");return e.filter(r=>{if(r.elements.length<2)return!1;let i=new $n().getSmallestCommonRoot(r.elements);return!(!i||!t.some(o=>o.element===i)||Array.from(i.children).some(o=>{r.elements.filter(l=>o.contains(l)).length}))})}catch(t){console.error("[filterListItemsSelectors] error",t instanceof Error?t.message:void 0)}}getLocatorBase(e){let t=Vr(e);return this.rootNode===document||this.rootNode.nodeType===9?t:t.locator(t.selector(this.rootNode))}getSelectorLocator(e,t){return Vr(t??this.targetElement).asLocator("javascript",e)}async reduceMultiCandidates(e){await Yl(0);let{elements:t}=e,r=e.getSelector().split(" >> "),i=[],o=this.getLocatorBase(this.targetElement),l=a(p=>{try{return i.push(new Hn([{selector:p,locator:this.getSelectorLocator(p)}])),i.length>=this.MAX_MULTICANDIDATE_PROCESSING}catch(g){return console.error(g),!1}},"addCandidateWithSelector"),u=a(p=>e.getSelector()+(r[r.length-1]===this.targetElement.tagName.toLowerCase()?p:` >> internal:and=${QF(this.targetElement.tagName.toLowerCase()+p)}`),"addCSSFilterToLocator"),f=a(p=>o.locator(p).elements.length===1?l(p):!1,"addIfSingularAndCheckLimit");if(t.length<5){let p=t.indexOf(this.targetElement);p!==-1&&l(e.getSelector()+` >> nth=${p}`)}let h=this.targetElement.parentElement;if(h&&t.every(p=>p.parentElement===h&&p.tagName===this.targetElement.tagName)){let p=Array.from(h.children).indexOf(this.targetElement);if(p!==-1){let g=u(`:nth-child(${p+1})`);f(g)&&l(g)}}for(let p of Array.from(this.targetElement.classList).filter(g=>!pr.includes(g))){let g=u(`.${qs(p)}`);try{if(f(g))return i}catch(y){console.error(y)}}for(let p of Array.from(this.targetElement.attributes).filter(g=>!Ul.includes(g.name))){let g=u(`[${p.name}`+(p.value?`="${p.value}"]`:"]"));try{if(f(g))return i}catch(y){console.error(y)}}return i}getAllLocators(e,t,r={}){r={exact:!0,useTextContent:!0,...r};let i=[this.getByRoleLocator(e,r),r.useTextContent?this.getByTextLocator(e,r):null,this.getByLabelLocator(e,r),this.getByPlaceholderLocator(e,r),this.getByTitleLocator(e,r),this.getByAltLocator(e,r),this.getTestIdLocator(e,r),...e===this.targetElement?[this.getInnerFeaturesLocator(e)]:[],...t.filter(o=>o.element===e).map(o=>({selector:o.selector,locator:this.getSelectorLocator(o.selector)}))].filter(o=>!!o);return!i.length&&r.bruteForceMode?i.concat(this.findUniqueCSSLocatorForElement(e)):i}findUniqueCSSLocatorForElement(e,t=5){let r=[],i=a(o=>(r.push({selector:o,locator:`locator('${o}')`}),r.length>=t),"addCandidate");for(let o of Array.from(e.attributes).filter(({name:l,value:u})=>u.length<30&&!Ul.includes(l)))try{let l=`[${o.name}${o.value?`="${o.value}"`:""}]`;if(e.ownerDocument.querySelectorAll(l).length===1&&i(l))return r}catch{}for(let o of Array.from(e.classList).filter(l=>!pr.includes(l)))try{let l=`.${qs(o)}`;if(e.ownerDocument.querySelectorAll(l).length===1&&i(l))return r}catch{}return r}getInnerFeaturesLocator(e){let t=e.tagName.toLowerCase();if(!hn(e)||["html","body","div"].includes(t))return;let r=new Dr().extract(e).filter(o=>!o.isRoot).slice(0,4).map(o=>gs(o).pop());if(r.length<2)return;let i=t+r.map(o=>`:has(${o})`).join("");return{selector:i,locator:this.getSelectorLocator(i)}}getByRoleLocator(e,t={}){try{if(!hn(e))throw new Error("Provided element is not an HTMLElement");let r={},i={button:"button",input:a(w=>{let C=w instanceof HTMLInputElement?w.type:void 0;return C==="checkbox"?"checkbox":C==="radio"?"radio":"textbox"},"input"),select:"listbox",a:"link",h1:"heading",h2:"heading",h3:"heading",h4:"heading",h5:"heading",h6:"heading",li:"listitem",option:"option",textarea:"textbox",table:"table",tr:"row",th:"columnheader",td:"cell",img:"img"},o=e.tagName.toLowerCase(),l=i[o],u=e.getAttribute("role")||(l instanceof Function?l(e):l);if(!u)return;let f=[];if(u==="heading"&&!e.hasAttribute("aria-level")){let w=parseInt(o.charAt(1),10);f.push(["level",String(w)])}(u==="checkbox"||u==="radio")&&f.push(["checked",String(e.getAttribute("aria-checked")??e.getAttribute("checked")??"false")]);let h=a(()=>{let w=a(L=>this.limitTextLength(this.normalize(L),t.exact),"normalize"),C={text:"",exact:!1},E=e.getAttribute("aria-label")??e.getAttribute("aria-labelledby")??e.getAttribute("title");if(E)return w(E);let M=Ni(e),O=Vl(M.full);if(!O?.length)return C;let R=w(O);return r.hasText=R.text,R},"getAccessibleName"),{text:p,exact:g}=h();p&&p.length>0&&p.length<30&&f.push(["name",Wl(p,g)]);let y=a(()=>{let w=`internal:role=${u}${f.map(([C,E])=>`[${C}=${E}]`).join("")}`;return{locator:this.getSelectorLocator(w),selector:w,options:r}},"getSelection"),x=y();if(p?.length&&g&&!this.getLocatorBase(e).locator(x.selector).elements.includes(e)){let w=f.find(C=>C[0]==="name");w&&(w[1]=Wl(p,!1),x=y())}return x}catch(r){console.error("Error getting role locator",r instanceof Error?r.message:void 0)}}getByTextLocator(e,t={}){try{if(!hn(e))return;let r=Vl(Ni(e).full);if(!r?.length||r.length>100)return;let i={};if(Array.from(e.children).filter(u=>hn(u)).some(u=>Vl(Ni(u).full)===r)){i.hasText=r;let u=`${e.tagName.toLowerCase()} >> internal:has-text=${Bl(r,!1)}`;return{selector:u,locator:this.getSelectorLocator(u),options:i}}let o=a(u=>{let h="internal:text="+Bl(r,u);return{selector:h,locator:this.getSelectorLocator(h),options:i}},"getSelection"),l=o(t.exact);return t.exact&&!this.getLocatorBase(e).locator(l.selector).elements.includes(e)&&(l=o(!1)),l}catch{}}getByLabelLocator(e,t={}){try{if(!hn(e)||!["input","textarea","select"].includes(e.tagName.toLowerCase()))return;let r=a(u=>({selector:`internal:label=${Bl(u,t.exact)}`,locator:`getByLabel('${u}')`}),"respond"),i=e.getAttribute("aria-label");if(i)return r(i);let o=e.getAttribute("aria-labelledby");if(o){let u=document.getElementById(o);if(u){let f=u.innerText.trim();if(f)return r(f)}}let l=e.getAttribute("id");if(l){let u=document.querySelector(`label[for="${l}"]`);if(u){let f=u.innerText.trim();if(f)return r(f)}}}catch{}}getByPlaceholderLocator(e,t={}){if(["input","textarea"].includes(e.tagName?.toLowerCase()))return this.getByAttributeLocator(e,"placeholder",t)}getByTitleLocator(e,t={}){return this.getByAttributeLocator(e,"title",t)}getByAltLocator(e,t={}){return this.getByAttributeLocator(e,"alt",t)}getTestIdLocator(e,t={}){for(let r of["data-testid","data-test-id","data-test"])if(e.getAttribute(r))return this.getByAttributeLocator(e,r,{...t,locatorName:"getByTestId"})}getByAttributeLocator(e,t,r={}){try{if(!hn(e))return;let i=e.getAttribute(t);if(i)return{selector:`internal:attr=[${t}=${Wl(i,r.exact)}]`,locator:(r.locatorName??`getBy${t.charAt(0).toUpperCase()+t.slice(1)}`)+`('${i}')`}}catch{}}normalize(e){return e.replace(/\n/g,"").replace(/[ \t]+/g," ").trim()}limitTextLength(e,t=!0){for(;e?.length>30&&e.length<100&&e.includes(" ");)e=e.split(" ").slice(0,-1).join(" "),t=!1;return{text:e,exact:t}}checkTimeout(e=!0){if(JF)return!1;if(this.MAX_PROCESSING_TIME&&Date.now()-this.startTimestamp>this.MAX_PROCESSING_TIME){if(e)throw new tn;return!0}return!1}};function QF(n){return`"${n.replace(/\\/g,"\\\\").replace(/["]/g,'\\"')}"`}a(QF,"escapeForAndLocator");function hn(n){return je(n,"HTMLElement")}a(hn,"isInstanceOfHTMLElement");function eH(n){let e=n.nodeName.toLowerCase(),t={found:!1};if(["name","label","aria-label","data-testid","role"].forEach(r=>{n.hasAttribute(r)&&(e+=`[@${r}="${n.getAttribute(r)}"]`,t.found=!0)}),!t.found){let r=1,i=n.previousSibling;for(;i;)i.nodeType===Node.ELEMENT_NODE&&i.nodeName===n.nodeName&&r++,i=i.previousSibling;r>1&&(e+=`[${r}]`)}return e}a(eH,"getNodeIdentifier");function av(n=document,e){try{if(!n||!e||!n.contains(e))throw new Error("Child is not a descendant of the given element.");let t=[],r=e;for(;r!==n;){if(!r)throw new Error("Child is not a descendant of the given element.");r.nodeType===Node.ELEMENT_NODE&&t.unshift(eH(r)),r=r.parentElement}return t.join("/")}catch(t){console.error("Failed to get relative xpath",t);return}}a(av,"getRelativeXPath");function lv(n,e){return[new XPathEvaluator().evaluate(e,n,null,XPathResult.FIRST_ORDERED_NODE_TYPE,null).singleNodeValue].filter(i=>i instanceof HTMLElement)}a(lv,"findElementsByXPath");var $n=class{constructor(e){this.htmlReducer=e;this.BASE_MAX_COMPONENTS_FOR_SELECTOR_COMBINATION=13;this.MAX_SELECTORS_PER_CONTEXT_ELEMENT=10;this.innerFeaturesExtractor=new Dr;this.innerTextExtractor=new fi}static{a(this,"CompoundSelector")}filter(e,{isPartOfListItem:t=!1}={}){e.forEach(f=>{let h=this.htmlReducer?.getElementForChecksumId(f.selection.checksumid);h instanceof HTMLElement?f.element=h:delete f.element});let r=e.splice(e.findIndex(f=>f.isTarget),1)[0],i=r?.element;if(!r||!i)throw new Error("Target element not found");let o=e.filter(f=>!!f.element&&!f.element.contains(i)&&!i.contains(f.element)&&!e.some(h=>h!==f&&(h.element===f.element||!!h.element?.contains(f.element??null)))).concat(r);if(console.log(`filtered context elements, ${e.length+1} > ${o.length}`),!t)return o;let l=wr(document.body,{nodeRepetitionsThreshold:4});if(!l?.length)return[];let u=l.find(f=>f.element.contains(i));return u?(console.log("Found template for target element",u),o.filter(f=>u.element.contains(f.element??null))):[]}async generate(e,{isPartOfListItem:t=!1}={}){let r=e.filter(u=>u.isTarget)[0];if(e=this.filter(e,{isPartOfListItem:t}),e.length<2)throw new Error("Not enough elements found for the given checksum ids");if(!r?.element)throw new Error("Target element not found");let i=this.getSmallestCommonRoot(e.map(u=>u.element).filter(u=>u!==void 0));if(!i)throw new Error("No common root found for the given elements");this.extractFeaturesMetadata(e);let o=r.featuresMetadata;if(!o)throw new Error("Target element features metadata not found");return{targetSelection:{xpath:av(i,r.element)??"",cssSelectors:this.generateAllContextualSelectors(i,r.element).filter(u=>u&&u.trim().length>0),playwrightSelectors:await new pn(i).generate(r.element,[],{addCSSSelectorGenerator:!1,expandCSSKeyElements:!1}),featuresMetadata:o},contextElements:e}}async select(e,t){e.forEach(o=>{if(o.find(l=>!l||!l.isConnected))throw new Error("One or more context elements are not connected to the DOM")});let r=a((o,l)=>{try{return o.selector(l)}catch{let u=l.ownerDocument?.defaultView?.parent?.document?.defaultView?.playwright;if(u)try{return u.selector(l)}catch{return}return}},"getElementSelector"),i=this.getSmallestCommonParents(e).map(this.calculateElementSize).sort((o,l)=>o.size-l.size).map(o=>o.element);return t?i.map(o=>{let l=Vr(o),u=r(l,o);if(!u)return null;let{element:f}=l.locator(u).locator(t);return f?r(l,f):null}).filter(o=>!!o):i.map(o=>{let l=Vr(o);if(!l){console.warn("Failed getting playwright for element",o);return}return r(l,o)}).filter(o=>!!o)}async selectFromMetadata(e){let{contextElements:t}=e;t.forEach(i=>this.getSelectorCandidatesForContextElement(i));let r=fa(t.map(i=>(i.candidatesSelectors??[]).map((o,l)=>l)));for(let i of r){t.forEach((l,u)=>{let f=i[u],h=f!==void 0?l.candidatesSelectors?.[f]:void 0;h!==void 0?l.selector=h:delete l.selector});let o=this.getSmallestCommonParentsFromMetadata(t).map(this.calculateElementSize).sort((l,u)=>l.size-u.size).map(l=>l.element);for(let l of o){let u=this.generateTargetSelectotionHistogram(l,e.targetSelection);if(u.size>0)return Array.from(u.keys()).slice(0,20).map(h=>Vr(h).generateSelectorAndLocator(h))}}return[]}generateTargetSelectotionHistogram(e,t){let r=new Map,i=a(o=>{o.filter(l=>l instanceof HTMLElement).forEach(l=>{r.set(l,(r.get(l)||0)+1)})},"addElementstoHistogram");if(t.xpath)try{i(lv(e,t.xpath))}catch{}return t.cssSelectors.forEach(o=>{try{i(le(o,e))}catch{}}),new Map([...r.entries()].sort((o,l)=>l[1]-o[1]))}calculateElementSize(e){let t=e.getBoundingClientRect();return{element:e,size:t.width*t.height}}getSelectorCandidatesForContextElement(e){let{featuresMetadata:t}=e;if(!t)throw new Error("Context element features metadata not found");let r=this.buildSelectorsCombination(t);e.candidatesSelectors=[];for(let i=0;i<r.length&&e.candidatesSelectors.length<this.MAX_SELECTORS_PER_CONTEXT_ELEMENT;i++){let o=r[i];if(o===void 0)continue;document.querySelector(o)&&e.candidatesSelectors.push(o)}}buildSelectorsCombination(e){let t=this.BASE_MAX_COMPONENTS_FOR_SELECTOR_COMBINATION,r=a(y=>{let x=[[]];for(let w=0;w<y.length;w++){let C=x.length;for(let E=0;E<C;E++){let M=x[E],O=y[w];M&&O!==void 0&&x.push(M.concat(O))}}return x},"getCombinations"),i=a(y=>y.trim().replace(/([!"#$%&'()*+,./:;<=>?@[\\\]^`{|}~])/g,"\\$1"),"escapeSelector"),o=e.tag,l=e.innerFeatures.filter(y=>!y.isRoot).map(y=>`:has(${gs(y)})`).slice(0,4),u=e.classes.map(y=>`.${i(y)}`),f=Object.entries(e.attributes).map(([y,x])=>`[${y}="${i(x)}"]`),h=a(()=>l.length+1+u.length+f.length>t,"exceedsMaxLength");for(;h()&&(u.pop(),!!h());)f.pop();let p=r([...u,...f,...l]),g=p.map(y=>[o,...y]);return p.push(...g),p.map(y=>y.join("")).filter(y=>y).sort((y,x)=>x.length-y.length)}extractFeaturesMetadata(e){e.forEach(t=>{let r=t.element;if(!r)return;let i=r.getAttribute("id");t.featuresMetadata={...i!==null?{id:i}:{},tag:r.tagName.toLowerCase(),innerText:this.innerTextExtractor.extract(r),innerFeatures:this.innerFeaturesExtractor.extract(r),classes:Array.from(r.classList).filter(o=>!pr.includes(o))||[],attributes:Array.from(r.attributes).reduce((o,l)=>(["class","style","id"].includes(l.name)||(o[l.name]=l.value),o),{})}})}generateAllContextualSelectors(e,t){let r=[],i=[!0,!1];for(let l of i)for(let u of i)for(let f of i)r.push({useId:l,useClasses:u,useTag:f});let o=r.map(l=>this.createContextualSelector(e,t,l)).filter(l=>!!l).filter(l=>{try{let u=le(l,e);return u.length===1&&u[0]===t}catch{return!1}});return[...new Set(o)]}createContextualSelector(e,t,{useId:r=!1,useClasses:i=!0,useTag:o=!0}){if(!e||!t)return null;let l=[],u=t;for(;u&&u!==e;)l.unshift(this.getSelectorPart(u,{useId:r,useClasses:i,useTag:o})),u=u.parentElement;return u?l.join(" ").trim():null}getSelectorPart(e,{useId:t=!1,useClasses:r=!0,useTag:i=!0}){if(t&&e.id&&e.id.match(/^\D/))return`#${e.id}`;let o=i?e.tagName.toLowerCase():"";if(r&&e.className){let l=e.className.trim().split(/\s+/).filter(u=>!pr.includes(u)).map(qs).join(".");l.length>0&&(o+="."+l)}return["name","label","aria-label","data-testid","role"].forEach(l=>{e.hasAttribute(l)&&(o+=`[${l}="${e.getAttribute(l)}"]`)}),o.trim()}getSmallestCommonRoot(e){let t=a(i=>{let o=[];for(;i;)o.push(i),i=i.parentElement;return o},"getAncestors"),r=t(e[0]);for(let i=1;i<e.length;i++){let o=t(e[i]);r=r.filter(l=>o.includes(l))}return r[0]??null}getSmallestCommonParentsFromMetadata(e){let t=e.map(r=>{try{if(!r.selector)return[];let i=le(r.selector);return r.selection.type==="content"?i.filter(o=>o.textContent===r.selection.value):i}catch{return[]}});return t.some(r=>r.length===0)?[]:this.getSmallestCommonParents(t)}getSmallestCommonParents(e){let t=new Set;fa(e).forEach(o=>{let l=this.getSmallestCommonRoot(o);l&&t.add(l)});let i=Array.from(t);return i.filter(o=>!i.some(l=>o!==l&&o.contains(l)))}};var Kl=class{constructor(){this.MAX_SNIPPET_SIZE=12e3;this.MAX_LIONTAIL_SIZE=6e3;this.MAX_ATTRIBUTE_SIZE=100;this.elementsInSimplifiedDomByChecksumId={}}static{a(this,"ParentChainReducer")}async reduce(e,t={useLionTail:!0,useChecksumIds:!0}){if(console.log("[ParentChainReducer] will reduce",e),!je(e,"HTMLElement")&&!je(e,"SVGElement"))throw new Error("Element is not an HTMLElement");return{reducedHTML:this.getAncestorsHTMLSnippet(e,t)}}getElementForChecksumId(e){return this.elementsInSimplifiedDomByChecksumId[e]}getAncestorsHTMLSnippet(e,{useLionTail:t=!0,useChecksumIds:r=!0}={}){this.elementsInSimplifiedDomByChecksumId={};let i=this.MAX_LIONTAIL_SIZE,o=this.MAX_ATTRIBUTE_SIZE,l=[],u=e;e.setAttribute("checksum-selected","true");try{for(;u;)l.push(u),u.parentNode&&u.parentNode instanceof ShadowRoot?u=u.parentNode.host:u=u.parentElement;l.reverse();let f=a(y=>{if(y instanceof Element)for(let x=y.attributes.length-1;x>=0;x--){let w=y.attributes[x];w&&w.name.length+w.value.length>o&&y.removeAttribute(w.name)}return y},"normalizeNode"),h,p=new Pn;do{h=(l[0]??e).cloneNode(!1);let y=h,x=ni(h);for(let w=1;w<l.length;w++){let C=l[w];if(!C)continue;if(t){let M=ni(C).length;if(M<=i&&x.length+M<=this.MAX_SNIPPET_SIZE){let O=this.deepCloneNode(C,r?p:void 0);y.appendChild(O);break}}let E=f(C.cloneNode(C===e));if(r&&E instanceof Element){let M=p.getAndIncrement();E.setAttribute("checksumid",M),this.elementsInSimplifiedDomByChecksumId[M]=C}y.appendChild(E),y=E}i=Math.max(i-10,0),o=Math.max(o-10,0)}while(h.outerHTML.length>this.MAX_SNIPPET_SIZE&&o>0);return this.filterNodeClasses(h),ni(h,{limitAttributeLength:!0})}catch(f){console.error("Error while getting ancestors HTML snippet",f);return}finally{e.removeAttribute("checksum-selected")}}deepCloneNode(e,t){let r=e.cloneNode(!1),i=[e],o=[r];for(;i.length;){let l=i.shift(),u=o.shift();if(!l||!u)break;for(let f=0;f<l.childNodes.length;f++){let h=l.childNodes[f];if(!h)continue;let p=h.cloneNode(!1);if(u.appendChild(p),t&&je(h,"HTMLElement")){let g=t.getAndIncrement();p.setAttribute("checksumid",g),this.elementsInSimplifiedDomByChecksumId[g]=h}i.push(h),o.push(p)}}return r}filterNodeClasses(e){let t=a(r=>{if("classList"in r){let i=r,o=i.classList;for(let l=0;l<o.length;l++){let u=o[l];u&&pr.includes(u)&&i.classList.remove(u)}for(let l=0;l<i.children.length;l++){let u=i.children[l];u&&t(u)}}},"filterClasses");t(e)}};var Xl=class{static{a(this,"FilesObserver")}constructor(e){this.fileInputsWithListeners=new Set,this.filesMap={},this.observer=null,this.sessionMirror=e}async getFilesByRrwebId(e){let t=this.filesMap[e]??[];try{let r=await Promise.all(t.map(async i=>({data:await tH(i),fileName:i.name})));return this.filesMap[e]=[],r}catch{return console.error("Error while parsing files to base 64"),[]}}init(){this.observeDOMChanges(),window.addEventListener("unload",this.cleanup.bind(this))}handleFileChange(e){let t=e.target,r=Array.from(t.files??[]),i=this.sessionMirror.getMeta(t);i&&(this.filesMap[i.id]=r)}addFileInputListeners(e){e.forEach(t=>{this.fileInputsWithListeners.has(t)||(t.addEventListener("change",this.handleFileChange.bind(this)),this.fileInputsWithListeners.add(t))})}observeDOMChanges(){let e=window.document,t=e.querySelectorAll('input[type="file"]');this.addFileInputListeners(t);let r=a(()=>{this.observer=new MutationObserver(o=>{o.forEach(l=>{if(l.type==="childList"){let u=l.target.querySelectorAll('input[type="file"]');this.addFileInputListeners(u)}})}),this.observer.observe(e.body,{childList:!0,subtree:!0})},"onBodyReady"),i=new MutationObserver(function(){e.body&&(i.disconnect(),r())});i.observe(e.documentElement,{childList:!0,subtree:!0})}cleanup(){this.observer&&this.observer.disconnect(),this.fileInputsWithListeners.forEach(e=>{e.removeEventListener("change",this.handleFileChange)}),this.fileInputsWithListeners.clear(),this.filesMap={}}},tH=a(n=>new Promise((e,t)=>{let r=new FileReader;r.onloadend=()=>{r.result?e(r.result.toString()):t(new Error("File reading failed"))},r.onerror=()=>{t(new Error("File reading failed"))},r.readAsDataURL(n)}),"convertFileToBase64");var Zl=class{constructor(e){this.sessionRecorder=e}static{a(this,"NativeDialogObserver")}init(){this.overrideDialog("alert"),this.overrideDialog("confirm"),this.overrideDialog("prompt")}overrideDialog(e){let t=a((r,i)=>{let o=this.determineDialogAction(i,e);this.sessionRecorder.addCustomEvent("native-dialog-event",{dialogType:e,dialogMessage:r,dialogResult:i,dialogAction:o})},"recordDialogEvent");if(e==="alert"){let r=window.alert.bind(window);window.alert=i=>{let o=r(i);return t(i??""),o}}else if(e==="confirm"){let r=window.confirm.bind(window);window.confirm=i=>{let o=r(i);return t(i??"",o),o}}else{let r=window.prompt.bind(window);window.prompt=i=>{let o=r(i);return t(i??"",o),o}}}determineDialogAction(e,t){return t==="alert"?"native_accept":e?"native_accept":"native_dismiss"}};function cv(n){return Reflect.get(window,"checksum")?.timeMachine.sessionReplayer.getMeta(n)?.id}a(cv,"getNodeRrwebId");async function uv(n,e,t){let r=await n.getSelectorAndLocator(e,{rootDocument:t,ignoredIframesSelectors:[".replayer-wrapper > iframe"],flags:{origin:"element-inspector"}}).catch(()=>null),i=r?.locator??"",o=r?.selector??"",l=r?.parentFramesSelectors??[],u=await n.selector(o,l).catch(()=>e),f=u&&u!==e?cv(u):void 0;return{locator:i,selector:o,parentFramesSelectors:l,locatorRrwebId:f}}a(uv,"generateInspectedElementSelection");var Jl=class n{constructor(){this.locatorCache=new Map}static{a(this,"InspectedElementCache")}static getInstance(){return n.instance??=new n,n.instance}setTimestamp(e){this.currentTimestamp=e}getCachedLocatorForElement(e){try{return this.currentTimestamp?this.locatorCache.get(this.getKeyForElement(e)):void 0}catch{return}}setCachedLocatorForElement(e,t){this.currentTimestamp&&this.locatorCache.set(this.getKeyForElement(e),t)}getKeyForElement(e){let t=cv(e);if(!t)throw new Error("Can't find rrwebId for element");return`${t}_${this.currentTimestamp}`}};function rH(n){let t=document.querySelector(".replayer-wrapper > iframe")?.contentDocument??null;return!t&&n.nodeType===Node.DOCUMENT_NODE&&(t=n),t??=document,t.defaultView}a(rH,"resolveDefaultView");var Ql=class n{constructor({rootDocument:e=document,getRenderDocument:t=a(u=>u?.document,"getRenderDocument"),defaultView:r,topLevelInspector:i,rootDocumentForSelectorGenerator:o,eventName:l}={}){this.hoveredElement=null;this.wasHoveredElementSelected=!1;this.selected=[];this.singleSelection=!0;this.subDocumentInspector=null;this.listening=!1;this.locatorCache=Jl.getInstance();this.onMouseOut=a(()=>{Wr.clearHighlights()},"onMouseOut");this.onMouseOver=a(e=>{this.onMouseOverAsync(e)},"onMouseOver");this.onMouseOverAsync=a(async e=>{let t=e.composedPath()[0];if(!t)return;let r=this.resolveHoverTargetElement(t);if(r){Wr.clearHighlights(),this.hoveredElement&&this.hoveredElement.removeEventListener("click",this.onClick,{capture:!0});try{await this.highlightHoveredElement(t,r)}catch(i){console.error("Error inspecting element",i.message)}}},"onMouseOverAsync");this.onClick=a(e=>{this.onClickAsync(e)},"onClick");this.onClickAsync=a(e=>{e.stopPropagation(),e.preventDefault(),!this.wasHoveredElementSelected&&(this.wasHoveredElementSelected=!0,this.hoveredElementSelection&&this.selected.push(this.hoveredElementSelection),this.singleSelection&&(this.topLevelInspector?this.topLevelInspector.stop():this.stop()),window.parent.postMessage({type:this.eventName,data:this.selected[this.selected.length-1]},"*"))},"onClickAsync");this.handleSubDocument=a((e,t)=>{if(this.subDocumentInspector){if(this.subDocumentInspector.rootDocument===e)return!0;this.stopSubDocumentInspector(!0)}return this.subDocumentInspector=new n({rootDocument:e,defaultView:t,topLevelInspector:this.topLevelInspector??this,getRenderDocument:this.getRenderDocument,eventName:this.eventName}),this.subDocumentInspector.start({singleSelection:this.singleSelection,timestamp:this.currentTimestamp}),!0},"handleSubDocument");this.stopSubDocumentInspector=a(e=>{this.subDocumentInspector&&(this.subDocumentInspector.stop(e),this.subDocumentInspector=null)},"stopSubDocumentInspector");this.rootDocument=e,this.topLevelInspector=i,this.getRenderDocument=t,this.eventName=l,this.defaultView=r??this.getDefaultView(),this.playwrightElementSelectorGenerator=new Bt,this.rootDocumentForSelectorGenerator=o??this.getDefaultView()?.document??document}static{a(this,"ElementInspector")}getDefaultView(){return rH(this.rootDocument)}start({singleSelection:e,timestamp:t}={singleSelection:!0}){this.singleSelection=e,this.locatorCache.setTimestamp(t),this.currentTimestamp=t,this.stop(),this.cleanSelection(),this.rootDocument.addEventListener("mouseover",this.onMouseOver),this.rootDocument.addEventListener("mouseout",this.onMouseOut),this.listening=!0}stop(e=!1){this.listening&&(this.listening=!1,this.subDocumentInspector&&this.stopSubDocumentInspector(e),Wr.clearHighlights(),this.hoveredElement&&this.hoveredElement.removeEventListener("click",this.onClick,{capture:!0}),this.currentTimestamp=void 0,this.hoveredElement=null,this.wasHoveredElementSelected=!1,this.rootDocument.removeEventListener("mouseover",this.onMouseOver),e&&this.cleanSelection())}cleanSelection(){this.subDocumentInspector&&this.subDocumentInspector.cleanSelection(),this.selected=[]}consumeSelections(){if(this.subDocumentInspector)return this.subDocumentInspector.consumeSelections();let e=this.selected;return this.cleanSelection(),e}resolveHoverTargetElement(e){if("getRootNode"in e){let r=e.getRootNode();if(r!==this.rootDocument)return this.handleSubDocument(r,this.defaultView),null}if(je(e,"HTMLIFrameElement")){let r=e.contentDocument;return r&&this.handleSubDocument(r,r.defaultView),null}if(this.subDocumentInspector&&this.stopSubDocumentInspector(!0),!je(e,"HTMLElement"))return null;let t=e;return t===this.hoveredElement||t.matches(".element-inspector-ignore")?null:t}async highlightHoveredElement(e,t){let{locator:r,selector:i,parentFramesSelectors:o,locatorRrwebId:l}=await this.getInspectedElementSelection(t,this.rootDocumentForSelectorGenerator),u=this.getRenderDocument(this.defaultView);if(Wr.highlightElement(t,{text:r.replace("frameLocator('iframe').",""),textPosition:"below",textWidthType:"auto",pointerEvents:"none",classNames:["element-inspector-ignore"],...u?{renderDocument:u}:{}}),l){let p=Reflect.get(window,"checksum")?.timeMachine.sessionReplayer.getNodeById(l);p&&Wr.highlightElement(p,{clear:!1,pointerEvents:"none",classNames:["element-inspector-ignore"],...u?{renderDocument:u}:{}})}this.hoveredElement=t,this.hoveredElementSelection={locator:r,selector:i,...o!==void 0?{parentFramesSelectors:o}:{}},this.wasHoveredElementSelected=!1,e.addEventListener("click",this.onClick,{capture:!0})}async getInspectedElementSelection(e,t){let r=this.locatorCache.getCachedLocatorForElement(e);return r||(r=await uv(this.playwrightElementSelectorGenerator,e,t),this.locatorCache.setCachedLocatorForElement(e,r)),r}};var Ih=typeof navigator<"u"?navigator.userAgent.toLowerCase().indexOf("firefox")>0:!1;function Ah(n,e,t,r){n.addEventListener?n.addEventListener(e,t,r):n.attachEvent&&n.attachEvent(`on${e}`,t)}a(Ah,"addEvent");function Zs(n,e,t,r){n&&(n.removeEventListener?n.removeEventListener(e,t,r):n.detachEvent&&n.detachEvent(`on${e}`,t))}a(Zs,"removeEvent");function hv(n,e){let t=e.slice(0,e.length-1),r=[];for(let i=0;i<t.length;i++)r.push(n[t[i].toLowerCase()]);return r}a(hv,"getMods");function pv(n){typeof n!="string"&&(n=""),n=n.replace(/\s/g,"");let e=n.split(","),t=e.lastIndexOf("");for(;t>=0;)e[t-1]+=",",e.splice(t,1),t=e.lastIndexOf("");return e}a(pv,"getKeys");function nH(n,e){let t=n.length>=e.length?n:e,r=n.length>=e.length?e:n,i=!0;for(let o=0;o<t.length;o++)r.indexOf(t[o])===-1&&(i=!1);return i}a(nH,"compareArray");function mv(n){let e=n.keyCode||n.which||n.charCode;return n.key&&/^[a-z]$/i.test(n.key)?n.key.toUpperCase().charCodeAt(0):(n.code&&/^Key[A-Z]$/.test(n.code)&&(e=n.code.charCodeAt(3)),e)}a(mv,"getLayoutIndependentKeyCode");var eo={backspace:8,"\u232B":8,tab:9,clear:12,enter:13,"\u21A9":13,return:13,esc:27,escape:27,space:32,left:37,up:38,right:39,down:40,arrowup:38,arrowdown:40,arrowleft:37,arrowright:39,del:46,delete:46,ins:45,insert:45,home:36,end:35,pageup:33,pagedown:34,capslock:20,num_0:96,num_1:97,num_2:98,num_3:99,num_4:100,num_5:101,num_6:102,num_7:103,num_8:104,num_9:105,num_multiply:106,num_add:107,num_enter:108,num_subtract:109,num_decimal:110,num_divide:111,"\u21EA":20,",":188,".":190,"/":191,"`":192,"-":Ih?173:189,"=":Ih?61:187,";":Ih?59:186,"'":222,"{":219,"}":221,"[":219,"]":221,"\\":220},Jt={"\u21E7":16,shift:16,"\u2325":18,alt:18,option:18,"\u2303":17,ctrl:17,control:17,"\u2318":91,cmd:91,meta:91,command:91},Js={16:"shiftKey",18:"altKey",17:"ctrlKey",91:"metaKey",shiftKey:16,ctrlKey:17,altKey:18,metaKey:91},st={16:!1,18:!1,17:!1,91:!1},Xe={};for(let n=1;n<20;n++)eo[`f${n}`]=111+n;var Ve=[],Qs=null,Di=null,gv="all",Ur=new Map,ki=a(n=>eo[n.toLowerCase()]||Jt[n.toLowerCase()]||n.toUpperCase().charCodeAt(0),"code"),iH=a(n=>Object.keys(eo).find(e=>eo[e]===n),"getKey"),sH=a(n=>Object.keys(Jt).find(e=>Jt[e]===n),"getModifier"),yv=a(n=>{gv=n||"all"},"setScope"),to=a(()=>gv||"all","getScope"),oH=a(()=>Ve.slice(0),"getPressedKeyCodes"),aH=a(()=>Ve.map(n=>iH(n)||sH(n)||String.fromCharCode(n)),"getPressedKeyString"),lH=a(()=>{let n=[];return Object.keys(Xe).forEach(e=>{Xe[e].forEach(({key:t,scope:r,mods:i,shortcut:o})=>{n.push({scope:r,shortcut:o,mods:i,keys:t.split("+").map(l=>ki(l))})})}),n},"getAllKeyCodes"),bv=a(n=>{let e=n.target||n.srcElement,{tagName:t}=e,r=!0,i=t==="INPUT"&&!["checkbox","radio","range","button","file","reset","submit","color"].includes(e.type);return(e.isContentEditable||(i||t==="TEXTAREA"||t==="SELECT")&&!e.readOnly)&&(r=!1),r},"filter"),cH=a(n=>(typeof n=="string"&&(n=ki(n)),Ve.indexOf(n)!==-1),"isPressed"),uH=a((n,e)=>{let t,r;n||(n=to());for(let i in Xe)if(Object.prototype.hasOwnProperty.call(Xe,i))for(t=Xe[i],r=0;r<t.length;)t[r].scope===n?t.splice(r,1).forEach(({element:l})=>Nh(l)):r++;to()===n&&yv(e||"all")},"deleteScope");function fH(n){let e=mv(n);n.key&&n.key.toLowerCase()==="capslock"&&(e=ki(n.key));let t=Ve.indexOf(e);if(t>=0&&Ve.splice(t,1),n.key&&n.key.toLowerCase()==="meta"&&Ve.splice(0,Ve.length),(e===93||e===224)&&(e=91),e in st){st[e]=!1;for(let r in Jt)Jt[r]===e&&(Cr[r]=!1)}}a(fH,"clearModifier");var Ev=a((n,...e)=>{if(typeof n>"u")Object.keys(Xe).forEach(t=>{Array.isArray(Xe[t])&&Xe[t].forEach(r=>ec(r)),delete Xe[t]}),Nh(null);else if(Array.isArray(n))n.forEach(t=>{t.key&&ec(t)});else if(typeof n=="object")n.key&&ec(n);else if(typeof n=="string"){let[t,r]=e;typeof t=="function"&&(r=t,t=""),ec({key:n,scope:t,method:r,splitKey:"+"})}},"unbind"),ec=a(({key:n,scope:e,method:t,splitKey:r="+"})=>{pv(n).forEach(o=>{let l=o.split(r),u=l.length,f=l[u-1],h=f==="*"?"*":ki(f);if(!Xe[h])return;e||(e=to());let p=u>1?hv(Jt,l):[],g=[];Xe[h]=Xe[h].filter(y=>{let w=(t?y.method===t:!0)&&y.scope===e&&nH(y.mods,p);return w&&g.push(y.element),!w}),g.forEach(y=>Nh(y))})},"eachUnbind");function fv(n,e,t,r){if(e.element!==r)return;let i;if(e.scope===t||e.scope==="all"){i=e.mods.length>0;for(let o in st)Object.prototype.hasOwnProperty.call(st,o)&&(!st[o]&&e.mods.indexOf(+o)>-1||st[o]&&e.mods.indexOf(+o)===-1)&&(i=!1);(e.mods.length===0&&!st[16]&&!st[18]&&!st[17]&&!st[91]||i||e.shortcut==="*")&&(e.keys=[],e.keys=e.keys.concat(Ve),e.method(n,e)===!1&&(n.preventDefault?n.preventDefault():n.returnValue=!1,n.stopPropagation&&n.stopPropagation(),n.cancelBubble&&(n.cancelBubble=!0)))}}a(fv,"eventHandler");function dv(n,e){let t=Xe["*"],r=mv(n);if(n.key&&n.key.toLowerCase()==="capslock"||!(Cr.filter||bv).call(this,n))return;if((r===93||r===224)&&(r=91),Ve.indexOf(r)===-1&&r!==229&&Ve.push(r),["metaKey","ctrlKey","altKey","shiftKey"].forEach(f=>{let h=Js[f];n[f]&&Ve.indexOf(h)===-1?Ve.push(h):!n[f]&&Ve.indexOf(h)>-1?Ve.splice(Ve.indexOf(h),1):f==="metaKey"&&n[f]&&(Ve=Ve.filter(p=>p in Js||p===r))}),r in st){st[r]=!0;for(let f in Jt)if(Object.prototype.hasOwnProperty.call(Jt,f)){let h=Js[Jt[f]];Cr[f]=n[h]}if(!t)return}for(let f in st)Object.prototype.hasOwnProperty.call(st,f)&&(st[f]=n[Js[f]]);n.getModifierState&&!(n.altKey&&!n.ctrlKey)&&n.getModifierState("AltGraph")&&(Ve.indexOf(17)===-1&&Ve.push(17),Ve.indexOf(18)===-1&&Ve.push(18),st[17]=!0,st[18]=!0);let o=to();if(t)for(let f=0;f<t.length;f++)t[f].scope===o&&(n.type==="keydown"&&t[f].keydown||n.type==="keyup"&&t[f].keyup)&&fv(n,t[f],o,e);if(!(r in Xe))return;let l=Xe[r],u=l.length;for(let f=0;f<u;f++)if((n.type==="keydown"&&l[f].keydown||n.type==="keyup"&&l[f].keyup)&&l[f].key){let h=l[f],{splitKey:p}=h,g=h.key.split(p),y=[];for(let x=0;x<g.length;x++)y.push(ki(g[x]));y.sort().join("")===Ve.sort().join("")&&fv(n,h,o,e)}}a(dv,"dispatch");var Cr=a(function n(e,t,r){Ve=[];let i=pv(e),o=[],l="all",u=document,f=0,h=!1,p=!0,g="+",y=!1,x=!1;if(r===void 0&&typeof t=="function"&&(r=t),Object.prototype.toString.call(t)==="[object Object]"){let w=t;w.scope&&(l=w.scope),w.element&&(u=w.element),w.keyup&&(h=w.keyup),w.keydown!==void 0&&(p=w.keydown),w.capture!==void 0&&(y=w.capture),typeof w.splitKey=="string"&&(g=w.splitKey),w.single===!0&&(x=!0)}for(typeof t=="string"&&(l=t),x&&Ev(e,l);f<i.length;f++){let w=i[f].split(g);o=[],w.length>1&&(o=hv(Jt,w));let C=w[w.length-1];C=C==="*"?"*":ki(C),C in Xe||(Xe[C]=[]),Xe[C].push({keyup:h,keydown:p,scope:l,mods:o,shortcut:i[f],method:r,key:i[f],splitKey:g,element:u})}if(typeof u<"u"&&typeof window<"u"){if(!Ur.has(u)){let w=a((E=window.event)=>dv(E,u),"keydownListener"),C=a((E=window.event)=>{dv(E,u),fH(E)},"keyupListenr");Ur.set(u,{keydownListener:w,keyupListenr:C,capture:y}),Ah(u,"keydown",w,y),Ah(u,"keyup",C,y)}if(!Qs){let w=a(()=>{Ve=[]},"listener");Qs={listener:w,capture:y},Ah(window,"focus",w,y)}if(!Di&&typeof document<"u"){let w=a(()=>{Ve=[];for(let M in st)st[M]=!1;for(let M in Jt)n[M]=!1},"onFullscreenChange"),C=w,E=w;document.addEventListener("fullscreenchange",C),document.addEventListener("webkitfullscreenchange",E),Di={fullscreen:C,webkit:E}}}},"hotkeys2");function dH(n,e="all"){Object.keys(Xe).forEach(t=>{Xe[t].filter(i=>i.scope===e&&i.shortcut===n).forEach(i=>{i&&i.method&&i.method({},i)})})}a(dH,"trigger");function Nh(n){let e=Object.values(Xe).flat();if(e.findIndex(({element:r})=>r===n)<0&&n){let{keydownListener:r,keyupListenr:i,capture:o}=Ur.get(n)||{};r&&i&&(Zs(n,"keyup",i,o),Zs(n,"keydown",r,o),Ur.delete(n))}if(e.length<=0||Ur.size<=0){if(Array.from(Ur.keys()).forEach(i=>{let{keydownListener:o,keyupListenr:l,capture:u}=Ur.get(i)||{};o&&l&&(Zs(i,"keyup",l,u),Zs(i,"keydown",o,u),Ur.delete(i))}),Ur.clear(),Object.keys(Xe).forEach(i=>delete Xe[i]),Qs){let{listener:i,capture:o}=Qs;Zs(window,"focus",i,o),Qs=null}Di&&typeof document<"u"&&(document.removeEventListener("fullscreenchange",Di.fullscreen),document.removeEventListener("webkitfullscreenchange",Di.webkit),Di=null)}}a(Nh,"removeKeyEvent");var Oh={getPressedKeyString:aH,setScope:yv,getScope:to,deleteScope:uH,getPressedKeyCodes:oH,getAllKeyCodes:lH,isPressed:cH,filter:bv,trigger:dH,unbind:Ev,keyMap:eo,modifier:Jt,modifierMap:Js};for(let n in Oh){let e=n;Object.prototype.hasOwnProperty.call(Oh,e)&&(Cr[e]=Oh[e])}if(typeof window<"u"){let n=window.hotkeys;Cr.noConflict=e=>(e&&window.hotkeys===Cr&&(window.hotkeys=n),Cr),window.hotkeys=Cr}var Pi=class{constructor(){this.boundShortcuts=[]}static{a(this,"KeybindingsManager")}addKeybinding(e){let t=e.key.toLowerCase();if(this.boundShortcuts.includes(t))return;this.boundShortcuts.push(t),Cr(t,{capture:!0,keydown:!0},i=>{i.preventDefault(),e.callback(i)})}};var tc=class{constructor(e){this.sessionRecorder=e;this.elementInspector=null;this.keybindingsManager=new Pi;this.activeHandler=null;this.createHandler=a(e=>({handlerFunc:a(t=>{try{e.handlerFunc(t)}finally{this.stopObserver()}},"handlerFunc"),handlerType:e.handlerType}),"createHandler");this.toHaveTextHandler=a(()=>e=>{let t=e.data?.data,r=window.prompt(`Please enter the expected text for the element:
|
|
75
|
+
or you can use record.mirror to access the mirror instance during recording.`,jb={map:{},getId(){return console.error(pi),-1},getNode(){return console.error(pi),null},removeNodeFromMap(){console.error(pi)},has(){return console.error(pi),!1},reset(){console.error(pi)}};typeof window<"u"&&window.Proxy&&window.Reflect&&(jb=new Proxy(jb,{get(n,e,t){return e==="map"&&console.error(pi),Reflect.get(n,e,t)}}));function Bs(n,e,t={}){let r=null,i=0;return function(...o){let l=Date.now();!i&&t.leading===!1&&(i=l);let u=e-(l-i),f=this;u<=0||u>e?(r&&(clearTimeout(r),r=null),i=l,n.apply(f,o)):!r&&t.trailing!==!1&&(r=setTimeout(()=>{i=t.leading===!1?0:Date.now(),r=null,n.apply(f,o)},u))}}a(Bs,"throttle");function Ol(n,e,t,r,i=window){let o=i.Object.getOwnPropertyDescriptor(n,e);return i.Object.defineProperty(n,e,r?t:{set(l){setTimeout(()=>{t.set.call(this,l)},0),o&&o.set&&o.set.call(this,l)}}),()=>Ol(n,e,o||{},!0)}a(Ol,"hookSetter");var dl=Date.now;/[1-9][0-9]{12}/.test(Date.now().toString())||(dl=a(()=>new Date().getTime(),"nowTimestamp"));function Gw(n){var e,t,r,i;let o=n.document;return{left:o.scrollingElement?o.scrollingElement.scrollLeft:n.pageXOffset!==void 0?n.pageXOffset:o.documentElement.scrollLeft||o?.body&&((e=pe.parentElement(o.body))==null?void 0:e.scrollLeft)||((t=o?.body)==null?void 0:t.scrollLeft)||0,top:o.scrollingElement?o.scrollingElement.scrollTop:n.pageYOffset!==void 0?n.pageYOffset:o?.documentElement.scrollTop||o?.body&&((r=pe.parentElement(o.body))==null?void 0:r.scrollTop)||((i=o?.body)==null?void 0:i.scrollTop)||0}}a(Gw,"getWindowScroll");function jw(){return window.innerHeight||document.documentElement&&document.documentElement.clientHeight||document.body&&document.body.clientHeight}a(jw,"getWindowHeight");function qw(){return window.innerWidth||document.documentElement&&document.documentElement.clientWidth||document.body&&document.body.clientWidth}a(qw,"getWindowWidth");function Yw(n){return n?n.nodeType===n.ELEMENT_NODE?n:pe.parentElement(n):null}a(Yw,"closestElementOfNode");function Ct(n,e,t,r){if(!n)return!1;let i=Yw(n);if(!i)return!1;try{if(typeof e=="string"){if(i.classList.contains(e)||r&&i.closest("."+e)!==null)return!0}else if(Za(i,e,r))return!0}catch{}return!!(t&&(i.matches(t)||r&&i.closest(t)!==null))}a(Ct,"isBlocked");function Dk(n,e){return e.getId(n)!==-1}a(Dk,"isSerialized");function Of(n,e,t){return n.tagName==="TITLE"&&t.headTitleMutations?!0:e.getId(n)===Ns}a(Of,"isIgnored");function Kw(n,e){if(Ms(n))return!1;let t=e.getId(n);if(!e.has(t))return!0;let r=pe.parentNode(n);return r&&r.nodeType===n.DOCUMENT_NODE?!1:r?Kw(r,e):!0}a(Kw,"isAncestorRemoved");function Cd(n){return!!n.changedTouches}a(Cd,"legacy_isTouchEvent");function Xw(n=window){"NodeList"in n&&!n.NodeList.prototype.forEach&&(n.NodeList.prototype.forEach=Array.prototype.forEach),"DOMTokenList"in n&&!n.DOMTokenList.prototype.forEach&&(n.DOMTokenList.prototype.forEach=Array.prototype.forEach)}a(Xw,"polyfill$1");function kk(n){let e={},t=a((i,o)=>{let l={value:i,parent:o,children:[]};return e[i.node.id]=l,l},"putIntoMap"),r=[];for(let i of n){let{nextId:o,parentId:l}=i;if(o&&o in e){let u=e[o];if(u.parent){let f=u.parent.children.indexOf(u);u.parent.children.splice(f,0,t(i,u.parent))}else{let f=r.indexOf(u);r.splice(f,0,t(i,null))}continue}if(l in e){let u=e[l];u.children.push(t(i,u));continue}r.push(t(i,null))}return r}a(kk,"queueToResolveTrees");function Zw(n,e){e(n.value);for(let t=n.children.length-1;t>=0;t--)Zw(n.children[t],e)}a(Zw,"iterateResolveTree");function Is(n,e){return!!(n.nodeName==="IFRAME"&&e.getMeta(n))}a(Is,"isSerializedIframe");function Jw(n,e){return!!(n.nodeName==="LINK"&&n.nodeType===n.ELEMENT_NODE&&n.getAttribute&&n.getAttribute("rel")==="stylesheet"&&e.getMeta(n))}a(Jw,"isSerializedStylesheet");function Qw(n,e){var t,r;let i=(r=(t=n.ownerDocument)==null?void 0:t.defaultView)==null?void 0:r.frameElement;if(!i||i===e)return{x:0,y:0,relativeScale:1,absoluteScale:1};let o=i.getBoundingClientRect(),l=Qw(i,e),u=o.height/i.clientHeight;return{x:o.x*l.relativeScale+l.x,y:o.y*l.relativeScale+l.y,relativeScale:u,absoluteScale:l.absoluteScale*u}}a(Qw,"getBaseDimension");function Nn(n){return n?n instanceof or&&"shadowRoot"in n?!!n.shadowRoot:!!pe.shadowRoot(n):!1}a(Nn,"hasShadowRoot");function Cs(n,e){let t=n[e[0]];return e.length===1?t:Cs(t.cssRules[e[1]].cssRules,e.slice(2))}a(Cs,"getNestedRule");function qb(n){let e=[...n],t=e.pop();return{positions:e,index:t}}a(qb,"getPositionsAndIndex");function Pk(n){let e=new Set,t=[];for(let r=n.length;r--;){let i=n[r];e.has(i.id)||(t.push(i),e.add(i.id))}return t}a(Pk,"uniqueTextMutations");var hl=class{static{a(this,"StyleSheetMirror")}constructor(){k(this,"id",1),k(this,"styleIDMap",new WeakMap),k(this,"idStyleMap",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 r;return t===void 0?r=this.id++:r=t,this.styleIDMap.set(e,r),this.idStyleMap.set(r,e),r}getStyle(e){return this.idStyleMap.get(e)||null}reset(){this.styleIDMap=new WeakMap,this.idStyleMap=new Map,this.id=1}generateId(){return this.id++}};function eS(n){var e;let t=null;return"getRootNode"in n&&((e=pe.getRootNode(n))==null?void 0:e.nodeType)===Node.DOCUMENT_FRAGMENT_NODE&&pe.host(pe.getRootNode(n))&&(t=pe.host(pe.getRootNode(n))),t}a(eS,"getShadowHost");function Fk(n){let e=n,t;for(;t=eS(e);)e=t;return e}a(Fk,"getRootShadowHost");function Hk(n){let e=n.ownerDocument;if(!e)return!1;let t=Fk(n);return pe.contains(e,t)}a(Hk,"shadowHostInDom");function tS(n){let e=n.ownerDocument;return e?pe.contains(e,n)||Hk(n):!1}a(tS,"inDom");var W=(n=>(n[n.DomContentLoaded=0]="DomContentLoaded",n[n.Load=1]="Load",n[n.FullSnapshot=2]="FullSnapshot",n[n.IncrementalSnapshot=3]="IncrementalSnapshot",n[n.Meta=4]="Meta",n[n.Custom=5]="Custom",n[n.Plugin=6]="Plugin",n))(W||{}),$=(n=>(n[n.Mutation=0]="Mutation",n[n.MouseMove=1]="MouseMove",n[n.MouseInteraction=2]="MouseInteraction",n[n.Scroll=3]="Scroll",n[n.ViewportResize=4]="ViewportResize",n[n.Input=5]="Input",n[n.TouchMove=6]="TouchMove",n[n.MediaInteraction=7]="MediaInteraction",n[n.StyleSheetRule=8]="StyleSheetRule",n[n.CanvasMutation=9]="CanvasMutation",n[n.Font=10]="Font",n[n.Log=11]="Log",n[n.Drag=12]="Drag",n[n.StyleDeclaration=13]="StyleDeclaration",n[n.Selection=14]="Selection",n[n.AdoptedStyleSheet=15]="AdoptedStyleSheet",n[n.CustomElement=16]="CustomElement",n))($||{}),K=(n=>(n[n.MouseUp=0]="MouseUp",n[n.MouseDown=1]="MouseDown",n[n.Click=2]="Click",n[n.ContextMenu=3]="ContextMenu",n[n.DblClick=4]="DblClick",n[n.Focus=5]="Focus",n[n.Blur=6]="Blur",n[n.TouchStart=7]="TouchStart",n[n.TouchMove_Departed=8]="TouchMove_Departed",n[n.TouchEnd=9]="TouchEnd",n[n.TouchCancel=10]="TouchCancel",n))(K||{}),Pr=(n=>(n[n.Mouse=0]="Mouse",n[n.Pen=1]="Pen",n[n.Touch=2]="Touch",n))(Pr||{}),Br=(n=>(n[n["2D"]=0]="2D",n[n.WebGL=1]="WebGL",n[n.WebGL2=2]="WebGL2",n))(Br||{}),on=(n=>(n[n.Play=0]="Play",n[n.Pause=1]="Pause",n[n.Seeked=2]="Seeked",n[n.VolumeChange=3]="VolumeChange",n[n.RateChange=4]="RateChange",n))(on||{}),ye=(n=>(n.Start="start",n.Pause="pause",n.Resume="resume",n.Resize="resize",n.Finish="finish",n.FullsnapshotRebuilded="fullsnapshot-rebuilded",n.LoadStylesheetStart="load-stylesheet-start",n.LoadStylesheetEnd="load-stylesheet-end",n.SkipStart="skip-start",n.SkipEnd="skip-end",n.MouseInteraction="mouse-interaction",n.EventCast="event-cast",n.CustomEvent="custom-event",n.Flush="flush",n.StateChange="state-change",n.PlayBack="play-back",n.Destroy="destroy",n))(ye||{}),Fr=(n=>(n[n.Document=0]="Document",n[n.DocumentType=1]="DocumentType",n[n.Element=2]="Element",n[n.Text=3]="Text",n[n.CDATA=4]="CDATA",n[n.Comment=5]="Comment",n))(Fr||{});function Yb(n){return"__ln"in n}a(Yb,"isNodeInLinkedList");var xd=class{static{a(this,"DoubleLinkedList")}constructor(){k(this,"length",0),k(this,"head",null),k(this,"tail",null)}get(e){if(e>=this.length)throw new Error("Position outside of list range");let t=this.head;for(let r=0;r<e;r++)t=t?.next||null;return t}addNode(e){let t={value:e,previous:null,next:null};if(e.__ln=t,e.previousSibling&&Yb(e.previousSibling)){let r=e.previousSibling.__ln.next;t.next=r,t.previous=e.previousSibling.__ln,e.previousSibling.__ln.next=t,r&&(r.previous=t)}else if(e.nextSibling&&Yb(e.nextSibling)&&e.nextSibling.__ln.previous){let r=e.nextSibling.__ln.previous;t.previous=r,t.next=e.nextSibling.__ln,e.nextSibling.__ln.previous=t,r&&(r.next=t)}else this.head&&(this.head.previous=t),t.next=this.head,this.head=t;t.next===null&&(this.tail=t),this.length++}removeNode(e){let 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--)}},Kb=a((n,e)=>`${n}@${e}`,"moveKey"),Md=class{static{a(this,"MutationBuffer")}constructor(){k(this,"frozen",!1),k(this,"locked",!1),k(this,"texts",[]),k(this,"attributes",[]),k(this,"attributeMap",new WeakMap),k(this,"removes",[]),k(this,"mapRemoves",[]),k(this,"movedMap",{}),k(this,"addedSet",new Set),k(this,"movedSet",new Set),k(this,"droppedSet",new Set),k(this,"removesSubTreeCache",new Set),k(this,"mutationCb"),k(this,"blockClass"),k(this,"blockSelector"),k(this,"maskTextClass"),k(this,"maskTextSelector"),k(this,"inlineStylesheet"),k(this,"maskInputOptions"),k(this,"maskTextFn"),k(this,"maskInputFn"),k(this,"keepIframeSrcFn"),k(this,"recordCanvas"),k(this,"inlineImages"),k(this,"slimDOMOptions"),k(this,"dataURLOptions"),k(this,"doc"),k(this,"mirror"),k(this,"iframeManager"),k(this,"stylesheetManager"),k(this,"shadowDomManager"),k(this,"canvasManager"),k(this,"processedNodeManager"),k(this,"unattachedDoc"),k(this,"processMutations",e=>{e.forEach(this.processMutation),this.emit()}),k(this,"emit",()=>{if(this.frozen||this.locked)return;let e=[],t=new Set,r=new xd,i=a(f=>{let h=f,p=Ns;for(;p===Ns;)h=h&&h.nextSibling,p=h&&this.mirror.getId(h);return p},"getNextId"),o=a(f=>{let h=pe.parentNode(f);if(!h||!tS(f))return;let p=!1;if(f.nodeType===Node.TEXT_NODE){let w=h.tagName;if(w==="TEXTAREA")return;w==="STYLE"&&this.addedSet.has(h)&&(p=!0)}let g=Ms(h)?this.mirror.getId(eS(f)):this.mirror.getId(h),y=i(f);if(g===-1||y===-1)return r.addNode(f);let x=yi(f,{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:a(w=>{Is(w,this.mirror)&&this.iframeManager.addIframe(w),Jw(w,this.mirror)&&this.stylesheetManager.trackLinkElement(w),Nn(f)&&this.shadowDomManager.addShadowRoot(pe.shadowRoot(f),this.doc)},"onSerialize"),onIframeLoad:a((w,C)=>{this.iframeManager.attachIframe(w,C),this.shadowDomManager.observeAttachShadow(w)},"onIframeLoad"),onStylesheetLoad:a((w,C)=>{this.stylesheetManager.attachLinkElement(w,C)},"onStylesheetLoad"),cssCaptured:p});x&&(e.push({parentId:g,nextId:y,node:x}),t.add(x.id))},"pushAdd");for(;this.mapRemoves.length;)this.mirror.removeNodeFromMap(this.mapRemoves.shift());for(let f of this.movedSet)Xb(this.removesSubTreeCache,f,this.mirror)&&!this.movedSet.has(pe.parentNode(f))||o(f);for(let f of this.addedSet)!Zb(this.droppedSet,f)&&!Xb(this.removesSubTreeCache,f,this.mirror)||Zb(this.movedSet,f)?o(f):this.droppedSet.add(f);let l=null;for(;r.length;){let f=null;if(l){let h=this.mirror.getId(pe.parentNode(l.value)),p=i(l.value);h!==-1&&p!==-1&&(f=l)}if(!f){let h=r.tail;for(;h;){let p=h;if(h=h.previous,p){let g=this.mirror.getId(pe.parentNode(p.value));if(i(p.value)===-1)continue;if(g!==-1){f=p;break}else{let x=p.value,w=pe.parentNode(x);if(w&&w.nodeType===Node.DOCUMENT_FRAGMENT_NODE){let C=pe.host(w);if(this.mirror.getId(C)!==-1){f=p;break}}}}}}if(!f){for(;r.head;)r.removeNode(r.head.value);break}l=f.previous,r.removeNode(f.value),o(f.value)}let u={texts:this.texts.map(f=>{let h=f.node,p=pe.parentNode(h);return p&&p.tagName==="TEXTAREA"&&this.genTextAreaValueMutation(p),{id:this.mirror.getId(h),value:f.value}}).filter(f=>!t.has(f.id)).filter(f=>this.mirror.has(f.id)),attributes:this.attributes.map(f=>{let{attributes:h}=f;if(typeof h.style=="string"){let p=JSON.stringify(f.styleDiff),g=JSON.stringify(f._unchangedStyles);p.length<h.style.length&&(p+g).split("var(").length===h.style.split("var(").length&&(h.style=f.styleDiff)}return{id:this.mirror.getId(f.node),attributes:h}}).filter(f=>!t.has(f.id)).filter(f=>this.mirror.has(f.id)),removes:this.removes,adds:e};!u.texts.length&&!u.attributes.length&&!u.removes.length&&!u.adds.length||(this.texts=[],this.attributes=[],this.attributeMap=new WeakMap,this.removes=[],this.addedSet=new Set,this.movedSet=new Set,this.droppedSet=new Set,this.removesSubTreeCache=new Set,this.movedMap={},this.mutationCb(u))}),k(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));let r=Array.from(pe.childNodes(e),i=>pe.textContent(i)||"").join("");t.attributes.value=Ya({element:e,maskInputOptions:this.maskInputOptions,tagName:e.tagName,type:Ka(e),value:r,maskInputFn:this.maskInputFn})}),k(this,"processMutation",e=>{if(!Of(e.target,this.mirror,this.slimDOMOptions))switch(e.type){case"characterData":{let t=pe.textContent(e.target);!Ct(e.target,this.blockClass,this.blockSelector,!1)&&t!==e.oldValue&&this.texts.push({value:EE(e.target,this.maskTextClass,this.maskTextSelector,!0)&&t?this.maskTextFn?this.maskTextFn(t,Yw(e.target)):t.replace(/[\S]/g,"*"):t,node:e.target});break}case"attributes":{let t=e.target,r=e.attributeName,i=e.target.getAttribute(r);if(r==="value"){let l=Ka(t);i=Ya({element:t,maskInputOptions:this.maskInputOptions,tagName:t.tagName,type:l,value:i,maskInputFn:this.maskInputFn})}if(Ct(e.target,this.blockClass,this.blockSelector,!1)||i===e.oldValue)return;let o=this.attributeMap.get(e.target);if(t.tagName==="IFRAME"&&r==="src"&&!this.keepIframeSrcFn(i))if(!t.contentDocument)r="rr_src";else return;if(o||(o={node:e.target,attributes:{},styleDiff:{},_unchangedStyles:{}},this.attributes.push(o),this.attributeMap.set(e.target,o)),r==="type"&&t.tagName==="INPUT"&&(e.oldValue||"").toLowerCase()==="password"&&t.setAttribute("data-rr-is-password","true"),!bE(t.tagName,r))if(o.attributes[r]=yE(this.doc,ln(t.tagName),ln(r),i),r==="style"){if(!this.unattachedDoc)try{this.unattachedDoc=document.implementation.createHTMLDocument()}catch{this.unattachedDoc=this.doc}let l=this.unattachedDoc.createElement("span");e.oldValue&&l.setAttribute("style",e.oldValue);for(let u of Array.from(t.style)){let f=t.style.getPropertyValue(u),h=t.style.getPropertyPriority(u);f!==l.style.getPropertyValue(u)||h!==l.style.getPropertyPriority(u)?h===""?o.styleDiff[u]=f:o.styleDiff[u]=[f,h]:o._unchangedStyles[u]=[f,h]}for(let u of Array.from(l.style))t.style.getPropertyValue(u)===""&&(o.styleDiff[u]=!1)}else r==="open"&&t.tagName==="DIALOG"&&(t.matches("dialog:modal")?o.attributes.rr_open_mode="modal":o.attributes.rr_open_mode="non-modal");break}case"childList":{if(Ct(e.target,this.blockClass,this.blockSelector,!0))return;if(e.target.tagName==="TEXTAREA"){this.genTextAreaValueMutation(e.target);return}e.addedNodes.forEach(t=>this.genAdds(t,e.target)),e.removedNodes.forEach(t=>{let r=this.mirror.getId(t),i=Ms(e.target)?this.mirror.getId(pe.host(e.target)):this.mirror.getId(e.target);Ct(e.target,this.blockClass,this.blockSelector,!1)||Of(t,this.mirror,this.slimDOMOptions)||!Dk(t,this.mirror)||(this.addedSet.has(t)?(Td(this.addedSet,t),this.droppedSet.add(t)):this.addedSet.has(e.target)&&r===-1||Kw(e.target,this.mirror)||(this.movedSet.has(t)&&this.movedMap[Kb(r,i)]?Td(this.movedSet,t):(this.removes.push({parentId:i,id:r,isShadow:Ms(e.target)&&Ts(e.target)?!0:void 0}),$k(t,this.removesSubTreeCache))),this.mapRemoves.push(t))});break}}}),k(this,"genAdds",(e,t)=>{if(!this.processedNodeManager.inOtherBuffer(e,this)&&!(this.addedSet.has(e)||this.movedSet.has(e))){if(this.mirror.hasNode(e)){if(Of(e,this.mirror,this.slimDOMOptions))return;this.movedSet.add(e);let r=null;t&&this.mirror.hasNode(t)&&(r=this.mirror.getId(t)),r&&r!==-1&&(this.movedMap[Kb(this.mirror.getId(e),r)]=!0)}else this.addedSet.add(e),this.droppedSet.delete(e);Ct(e,this.blockClass,this.blockSelector,!1)||(pe.childNodes(e).forEach(r=>this.genAdds(r)),Nn(e)&&pe.childNodes(pe.shadowRoot(e)).forEach(r=>{this.processedNodeManager.add(r,this),this.genAdds(r,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 Td(n,e){n.delete(e),pe.childNodes(e).forEach(t=>Td(n,t))}a(Td,"deepDelete");function $k(n,e){let t=[n];for(;t.length;){let r=t.pop();e.has(r)||(e.add(r),pe.childNodes(r).forEach(i=>t.push(i)))}}a($k,"processRemoves");function Xb(n,e,t){return n.size===0?!1:Bk(n,e)}a(Xb,"isParentRemoved");function Bk(n,e,t){let r=pe.parentNode(e);return r?n.has(r):!1}a(Bk,"_isParentRemoved");function Zb(n,e){return n.size===0?!1:rS(n,e)}a(Zb,"isAncestorInSet");function rS(n,e){let t=pe.parentNode(e);return t?n.has(t)?!0:rS(n,t):!1}a(rS,"_isAncestorInSet");var As;function Wk(n){As=n}a(Wk,"registerErrorHandler");function Vk(){As=void 0}a(Vk,"unregisterErrorHandler");var we=a(n=>As?a((...t)=>{try{return n(...t)}catch(r){if(As&&As(r)===!0)return;throw r}},"rrwebWrapped"):n,"callbackWrapper"),Ln=[];function Gs(n){try{if("composedPath"in n){let e=n.composedPath();if(e.length)return e[0]}else if("path"in n&&n.path.length)return n.path[0]}catch{}return n&&n.target}a(Gs,"getEventTarget");function nS(n,e){let t=new Md;Ln.push(t),t.init(n);let r=new(zw())(we(t.processMutations.bind(t)));return r.observe(e,{attributes:!0,attributeOldValue:!0,characterData:!0,characterDataOldValue:!0,childList:!0,subtree:!0}),r}a(nS,"initMutationObserver");function Uk({mousemoveCb:n,sampling:e,doc:t,mirror:r}){if(e.mousemove===!1)return()=>{};let i=typeof e.mousemove=="number"?e.mousemove:50,o=typeof e.mousemoveCallback=="number"?e.mousemoveCallback:500,l=[],u,f=Bs(we(g=>{let y=Date.now()-u;n(l.map(x=>(x.timeOffset-=y,x)),g),l=[],u=null}),o),h=we(Bs(we(g=>{let y=Gs(g),{clientX:x,clientY:w}=Cd(g)?g.changedTouches[0]:g;u||(u=dl()),l.push({x,y:w,id:r.getId(y),timeOffset:dl()-u}),f(typeof DragEvent<"u"&&g instanceof DragEvent?$.Drag:g instanceof MouseEvent?$.MouseMove:$.TouchMove)}),i,{trailing:!1})),p=[vt("mousemove",h,t),vt("touchmove",h,t),vt("drag",h,t)];return we(()=>{p.forEach(g=>g())})}a(Uk,"initMoveObserver");function zk({mouseInteractionCb:n,doc:e,mirror:t,blockClass:r,blockSelector:i,sampling:o}){if(o.mouseInteraction===!1)return()=>{};let l=o.mouseInteraction===!0||o.mouseInteraction===void 0?{}:o.mouseInteraction,u=[],f=null,h=a(p=>g=>{let y=Gs(g);if(Ct(y,r,i,!0))return;let x=null,w=p;if("pointerType"in g){switch(g.pointerType){case"mouse":x=Pr.Mouse;break;case"touch":x=Pr.Touch;break;case"pen":x=Pr.Pen;break}x===Pr.Touch?K[p]===K.MouseDown?w="TouchStart":K[p]===K.MouseUp&&(w="TouchEnd"):Pr.Pen}else Cd(g)&&(x=Pr.Touch);x!==null?(f=x,(w.startsWith("Touch")&&x===Pr.Touch||w.startsWith("Mouse")&&x===Pr.Mouse)&&(x=null)):K[p]===K.Click&&(x=f,f=null);let C=Cd(g)?g.changedTouches[0]:g;if(!C)return;let E=t.getId(y),{clientX:M,clientY:O}=C;we(n)({type:K[w],id:E,x:M,y:O,...x!==null&&{pointerType:x}})},"getHandler");return Object.keys(K).filter(p=>Number.isNaN(Number(p))&&!p.endsWith("_Departed")&&l[p]!==!1).forEach(p=>{let g=ln(p),y=h(p);if(window.PointerEvent)switch(K[p]){case K.MouseDown:case K.MouseUp:g=g.replace("mouse","pointer");break;case K.TouchStart:case K.TouchEnd:return}u.push(vt(g,y,e))}),we(()=>{u.forEach(p=>p())})}a(zk,"initMouseInteractionObserver");function iS({scrollCb:n,doc:e,mirror:t,blockClass:r,blockSelector:i,sampling:o}){let l=we(Bs(we(u=>{let f=Gs(u);if(!f||Ct(f,r,i,!0))return;let h=t.getId(f);if(f===e&&e.defaultView){let p=Gw(e.defaultView);n({id:h,x:p.left,y:p.top})}else n({id:h,x:f.scrollLeft,y:f.scrollTop})}),o.scroll||100));return vt("scroll",l,e)}a(iS,"initScrollObserver");function Gk({viewportResizeCb:n},{win:e}){let t=-1,r=-1,i=we(Bs(we(()=>{let o=jw(),l=qw();(t!==o||r!==l)&&(n({width:Number(l),height:Number(o)}),t=o,r=l)}),200));return vt("resize",i,e)}a(Gk,"initViewportResizeObserver");var jk=["INPUT","TEXTAREA","SELECT"],Jb=new WeakMap;function qk({inputCb:n,doc:e,mirror:t,blockClass:r,blockSelector:i,ignoreClass:o,ignoreSelector:l,maskInputOptions:u,maskInputFn:f,sampling:h,userTriggeredOnInput:p}){function g(O){let R=Gs(O),L=O.isTrusted,B=R&&R.tagName;if(R&&B==="OPTION"&&(R=pe.parentElement(R)),!R||!B||jk.indexOf(B)<0||Ct(R,r,i,!0)||R.classList.contains(o)||l&&R.matches(l))return;let U=R.value,J=!1,te=Ka(R)||"";te==="radio"||te==="checkbox"?J=R.checked:(u[B.toLowerCase()]||u[te])&&(U=Ya({element:R,maskInputOptions:u,tagName:B,type:te,value:U,maskInputFn:f})),y(R,p?{text:U,isChecked:J,userTriggered:L}:{text:U,isChecked:J});let ce=R.name;te==="radio"&&ce&&J&&e.querySelectorAll(`input[type="radio"][name="${ce}"]`).forEach(Se=>{if(Se!==R){let Fe=Se.value;y(Se,p?{text:Fe,isChecked:!J,userTriggered:!1}:{text:Fe,isChecked:!J})}})}a(g,"eventHandler");function y(O,R){let L=Jb.get(O);if(!L||L.text!==R.text||L.isChecked!==R.isChecked){Jb.set(O,R);let B=t.getId(O);we(n)({...R,id:B})}}a(y,"cbWithDedup");let w=(h.input==="last"?["change"]:["input","change"]).map(O=>vt(O,we(g),e)),C=e.defaultView;if(!C)return()=>{w.forEach(O=>O())};let E=C.Object.getOwnPropertyDescriptor(C.HTMLInputElement.prototype,"value"),M=[[C.HTMLInputElement.prototype,"value"],[C.HTMLInputElement.prototype,"checked"],[C.HTMLSelectElement.prototype,"value"],[C.HTMLTextAreaElement.prototype,"value"],[C.HTMLSelectElement.prototype,"selectedIndex"],[C.HTMLOptionElement.prototype,"selected"]];return E&&E.set&&w.push(...M.map(O=>Ol(O[0],O[1],{set(){we(g)({target:this,isTrusted:!1})}},!1,C))),we(()=>{w.forEach(O=>O())})}a(qk,"initInputObserver");function pl(n){let e=[];function t(r,i){if($a("CSSGroupingRule")&&r.parentRule instanceof CSSGroupingRule||$a("CSSMediaRule")&&r.parentRule instanceof CSSMediaRule||$a("CSSSupportsRule")&&r.parentRule instanceof CSSSupportsRule||$a("CSSConditionRule")&&r.parentRule instanceof CSSConditionRule){let l=Array.from(r.parentRule.cssRules).indexOf(r);i.unshift(l)}else if(r.parentStyleSheet){let l=Array.from(r.parentStyleSheet.cssRules).indexOf(r);i.unshift(l)}return i}return a(t,"recurse"),t(n,e)}a(pl,"getNestedCSSRulePositions");function sn(n,e,t){let r,i;return n?(n.ownerNode?r=e.getId(n.ownerNode):i=t.getId(n),{styleId:i,id:r}):{}}a(sn,"getIdAndStyleId");function Yk({styleSheetRuleCb:n,mirror:e,stylesheetManager:t},{win:r}){if(!r.CSSStyleSheet||!r.CSSStyleSheet.prototype)return()=>{};let i=r.CSSStyleSheet.prototype.insertRule;r.CSSStyleSheet.prototype.insertRule=new Proxy(i,{apply:we((p,g,y)=>{let[x,w]=y,{id:C,styleId:E}=sn(g,e,t.styleMirror);return(C&&C!==-1||E&&E!==-1)&&n({id:C,styleId:E,adds:[{rule:x,index:w}]}),p.apply(g,y)})}),r.CSSStyleSheet.prototype.addRule=function(p,g,y=this.cssRules.length){let x=`${p} { ${g} }`;return r.CSSStyleSheet.prototype.insertRule.apply(this,[x,y])};let o=r.CSSStyleSheet.prototype.deleteRule;r.CSSStyleSheet.prototype.deleteRule=new Proxy(o,{apply:we((p,g,y)=>{let[x]=y,{id:w,styleId:C}=sn(g,e,t.styleMirror);return(w&&w!==-1||C&&C!==-1)&&n({id:w,styleId:C,removes:[{index:x}]}),p.apply(g,y)})}),r.CSSStyleSheet.prototype.removeRule=function(p){return r.CSSStyleSheet.prototype.deleteRule.apply(this,[p])};let l;r.CSSStyleSheet.prototype.replace&&(l=r.CSSStyleSheet.prototype.replace,r.CSSStyleSheet.prototype.replace=new Proxy(l,{apply:we((p,g,y)=>{let[x]=y,{id:w,styleId:C}=sn(g,e,t.styleMirror);return(w&&w!==-1||C&&C!==-1)&&n({id:w,styleId:C,replace:x}),p.apply(g,y)})}));let u;r.CSSStyleSheet.prototype.replaceSync&&(u=r.CSSStyleSheet.prototype.replaceSync,r.CSSStyleSheet.prototype.replaceSync=new Proxy(u,{apply:we((p,g,y)=>{let[x]=y,{id:w,styleId:C}=sn(g,e,t.styleMirror);return(w&&w!==-1||C&&C!==-1)&&n({id:w,styleId:C,replaceSync:x}),p.apply(g,y)})}));let f={};Ba("CSSGroupingRule")?f.CSSGroupingRule=r.CSSGroupingRule:(Ba("CSSMediaRule")&&(f.CSSMediaRule=r.CSSMediaRule),Ba("CSSConditionRule")&&(f.CSSConditionRule=r.CSSConditionRule),Ba("CSSSupportsRule")&&(f.CSSSupportsRule=r.CSSSupportsRule));let h={};return Object.entries(f).forEach(([p,g])=>{h[p]={insertRule:g.prototype.insertRule,deleteRule:g.prototype.deleteRule},g.prototype.insertRule=new Proxy(h[p].insertRule,{apply:we((y,x,w)=>{let[C,E]=w,{id:M,styleId:O}=sn(x.parentStyleSheet,e,t.styleMirror);return(M&&M!==-1||O&&O!==-1)&&n({id:M,styleId:O,adds:[{rule:C,index:[...pl(x),E||0]}]}),y.apply(x,w)})}),g.prototype.deleteRule=new Proxy(h[p].deleteRule,{apply:we((y,x,w)=>{let[C]=w,{id:E,styleId:M}=sn(x.parentStyleSheet,e,t.styleMirror);return(E&&E!==-1||M&&M!==-1)&&n({id:E,styleId:M,removes:[{index:[...pl(x),C]}]}),y.apply(x,w)})})}),we(()=>{r.CSSStyleSheet.prototype.insertRule=i,r.CSSStyleSheet.prototype.deleteRule=o,l&&(r.CSSStyleSheet.prototype.replace=l),u&&(r.CSSStyleSheet.prototype.replaceSync=u),Object.entries(f).forEach(([p,g])=>{g.prototype.insertRule=h[p].insertRule,g.prototype.deleteRule=h[p].deleteRule})})}a(Yk,"initStyleSheetObserver");function sS({mirror:n,stylesheetManager:e},t){var r,i,o;let l=null;t.nodeName==="#document"?l=n.getId(t):l=n.getId(pe.host(t));let u=t.nodeName==="#document"?(r=t.defaultView)==null?void 0:r.Document:(o=(i=t.ownerDocument)==null?void 0:i.defaultView)==null?void 0:o.ShadowRoot,f=u?.prototype?Object.getOwnPropertyDescriptor(u?.prototype,"adoptedStyleSheets"):void 0;return l===null||l===-1||!u||!f?()=>{}:(Object.defineProperty(t,"adoptedStyleSheets",{configurable:f.configurable,enumerable:f.enumerable,get(){var h;return(h=f.get)==null?void 0:h.call(this)},set(h){var p;let g=(p=f.set)==null?void 0:p.call(this,h);if(l!==null&&l!==-1)try{e.adoptStyleSheets(h,l)}catch{}return g}}),we(()=>{Object.defineProperty(t,"adoptedStyleSheets",{configurable:f.configurable,enumerable:f.enumerable,get:f.get,set:f.set})}))}a(sS,"initAdoptedStyleSheetObserver");function Kk({styleDeclarationCb:n,mirror:e,ignoreCSSAttributes:t,stylesheetManager:r},{win:i}){let o=i.CSSStyleDeclaration.prototype.setProperty;i.CSSStyleDeclaration.prototype.setProperty=new Proxy(o,{apply:we((u,f,h)=>{var p;let[g,y,x]=h;if(t.has(g))return o.apply(f,[g,y,x]);let{id:w,styleId:C}=sn((p=f.parentRule)==null?void 0:p.parentStyleSheet,e,r.styleMirror);return(w&&w!==-1||C&&C!==-1)&&n({id:w,styleId:C,set:{property:g,value:y,priority:x},index:pl(f.parentRule)}),u.apply(f,h)})});let l=i.CSSStyleDeclaration.prototype.removeProperty;return i.CSSStyleDeclaration.prototype.removeProperty=new Proxy(l,{apply:we((u,f,h)=>{var p;let[g]=h;if(t.has(g))return l.apply(f,[g]);let{id:y,styleId:x}=sn((p=f.parentRule)==null?void 0:p.parentStyleSheet,e,r.styleMirror);return(y&&y!==-1||x&&x!==-1)&&n({id:y,styleId:x,remove:{property:g},index:pl(f.parentRule)}),u.apply(f,h)})}),we(()=>{i.CSSStyleDeclaration.prototype.setProperty=o,i.CSSStyleDeclaration.prototype.removeProperty=l})}a(Kk,"initStyleDeclarationObserver");function Xk({mediaInteractionCb:n,blockClass:e,blockSelector:t,mirror:r,sampling:i,doc:o}){let l=we(f=>Bs(we(h=>{let p=Gs(h);if(!p||Ct(p,e,t,!0))return;let{currentTime:g,volume:y,muted:x,playbackRate:w,loop:C}=p;n({type:f,id:r.getId(p),currentTime:g,volume:y,muted:x,playbackRate:w,loop:C})}),i.media||500)),u=[vt("play",l(on.Play),o),vt("pause",l(on.Pause),o),vt("seeked",l(on.Seeked),o),vt("volumechange",l(on.VolumeChange),o),vt("ratechange",l(on.RateChange),o)];return we(()=>{u.forEach(f=>f())})}a(Xk,"initMediaInteractionObserver");function Zk({fontCb:n,doc:e}){let t=e.defaultView;if(!t)return()=>{};let r=[],i=new WeakMap,o=t.FontFace;t.FontFace=a(function(f,h,p){let g=new o(f,h,p);return i.set(g,{family:f,buffer:typeof h!="string",descriptors:p,fontSource:typeof h=="string"?h:JSON.stringify(Array.from(new Uint8Array(h)))}),g},"FontFace2");let l=kn(e.fonts,"add",function(u){return function(f){return setTimeout(we(()=>{let h=i.get(f);h&&(n(h),i.delete(f))}),0),u.apply(this,[f])}});return r.push(()=>{t.FontFace=o}),r.push(l),we(()=>{r.forEach(u=>u())})}a(Zk,"initFontObserver");function Jk(n){let{doc:e,mirror:t,blockClass:r,blockSelector:i,selectionCb:o}=n,l=!0,u=we(()=>{let f=e.getSelection();if(!f||l&&f?.isCollapsed)return;l=f.isCollapsed||!1;let h=[],p=f.rangeCount||0;for(let g=0;g<p;g++){let y=f.getRangeAt(g),{startContainer:x,startOffset:w,endContainer:C,endOffset:E}=y;Ct(x,r,i,!0)||Ct(C,r,i,!0)||h.push({start:t.getId(x),startOffset:w,end:t.getId(C),endOffset:E})}o({ranges:h})});return u(),vt("selectionchange",u)}a(Jk,"initSelectionObserver");function Qk({doc:n,customElementCb:e}){let t=n.defaultView;return!t||!t.customElements?()=>{}:kn(t.customElements,"define",function(i){return function(o,l,u){try{e({define:{name:o}})}catch{console.warn(`Custom element callback failed for ${o}`)}return i.apply(this,[o,l,u])}})}a(Qk,"initCustomElementObserver");function eP(n,e){let{mutationCb:t,mousemoveCb:r,mouseInteractionCb:i,scrollCb:o,viewportResizeCb:l,inputCb:u,mediaInteractionCb:f,styleSheetRuleCb:h,styleDeclarationCb:p,canvasMutationCb:g,fontCb:y,selectionCb:x,customElementCb:w}=n;n.mutationCb=(...C)=>{e.mutation&&e.mutation(...C),t(...C)},n.mousemoveCb=(...C)=>{e.mousemove&&e.mousemove(...C),r(...C)},n.mouseInteractionCb=(...C)=>{e.mouseInteraction&&e.mouseInteraction(...C),i(...C)},n.scrollCb=(...C)=>{e.scroll&&e.scroll(...C),o(...C)},n.viewportResizeCb=(...C)=>{e.viewportResize&&e.viewportResize(...C),l(...C)},n.inputCb=(...C)=>{e.input&&e.input(...C),u(...C)},n.mediaInteractionCb=(...C)=>{e.mediaInteaction&&e.mediaInteaction(...C),f(...C)},n.styleSheetRuleCb=(...C)=>{e.styleSheetRule&&e.styleSheetRule(...C),h(...C)},n.styleDeclarationCb=(...C)=>{e.styleDeclaration&&e.styleDeclaration(...C),p(...C)},n.canvasMutationCb=(...C)=>{e.canvasMutation&&e.canvasMutation(...C),g(...C)},n.fontCb=(...C)=>{e.font&&e.font(...C),y(...C)},n.selectionCb=(...C)=>{e.selection&&e.selection(...C),x(...C)},n.customElementCb=(...C)=>{e.customElement&&e.customElement(...C),w(...C)}}a(eP,"mergeHooks");function tP(n,e={}){let t=n.doc.defaultView;if(!t)return()=>{};eP(n,e);let r;n.recordDOM&&(r=nS(n,n.doc));let i=Uk(n),o=zk(n),l=iS(n),u=Gk(n,{win:t}),f=qk(n),h=Xk(n),p=a(()=>{},"styleSheetObserver"),g=a(()=>{},"adoptedStyleSheetObserver"),y=a(()=>{},"styleDeclarationObserver"),x=a(()=>{},"fontObserver");n.recordDOM&&(p=Yk(n,{win:t}),g=sS(n,n.doc),y=Kk(n,{win:t}),n.collectFonts&&(x=Zk(n)));let w=Jk(n),C=Qk(n),E=[];for(let M of n.plugins)E.push(M.observer(M.callback,t,M.options));return we(()=>{Ln.forEach(M=>M.reset()),r?.disconnect(),i(),o(),l(),u(),f(),h(),p(),g(),y(),x(),w(),C(),E.forEach(M=>M())})}a(tP,"initObservers");function $a(n){return typeof window[n]<"u"}a($a,"hasNestedCSSRule");function Ba(n){return!!(typeof window[n]<"u"&&window[n].prototype&&"insertRule"in window[n].prototype&&"deleteRule"in window[n].prototype)}a(Ba,"canMonkeyPatchNestedCSSRule");var ml=class{static{a(this,"CrossOriginIframeMirror")}constructor(e){k(this,"iframeIdToRemoteIdMap",new WeakMap),k(this,"iframeRemoteIdToIdMap",new WeakMap),this.generateIdFn=e}getId(e,t,r,i){let o=r||this.getIdToRemoteIdMap(e),l=i||this.getRemoteIdToIdMap(e),u=o.get(t);return u||(u=this.generateIdFn(),o.set(t,u),l.set(u,t)),u}getIds(e,t){let r=this.getIdToRemoteIdMap(e),i=this.getRemoteIdToIdMap(e);return t.map(o=>this.getId(e,o,r,i))}getRemoteId(e,t,r){let i=r||this.getRemoteIdToIdMap(e);if(typeof t!="number")return t;let o=i.get(t);return o||-1}getRemoteIds(e,t){let r=this.getRemoteIdToIdMap(e);return t.map(i=>this.getRemoteId(e,i,r))}reset(e){if(!e){this.iframeIdToRemoteIdMap=new WeakMap,this.iframeRemoteIdToIdMap=new WeakMap;return}this.iframeIdToRemoteIdMap.delete(e),this.iframeRemoteIdToIdMap.delete(e)}getIdToRemoteIdMap(e){let t=this.iframeIdToRemoteIdMap.get(e);return t||(t=new Map,this.iframeIdToRemoteIdMap.set(e,t)),t}getRemoteIdToIdMap(e){let t=this.iframeRemoteIdToIdMap.get(e);return t||(t=new Map,this.iframeRemoteIdToIdMap.set(e,t)),t}},Rd=class{static{a(this,"IframeManager")}constructor(e){k(this,"iframes",new WeakMap),k(this,"crossOriginIframeMap",new WeakMap),k(this,"crossOriginIframeMirror",new ml(gE)),k(this,"crossOriginIframeStyleMirror"),k(this,"crossOriginIframeRootIdMap",new WeakMap),k(this,"mirror"),k(this,"mutationCb"),k(this,"wrappedEmit"),k(this,"loadListener"),k(this,"stylesheetManager"),k(this,"recordCrossOriginIframes"),this.mutationCb=e.mutationCb,this.wrappedEmit=e.wrappedEmit,this.stylesheetManager=e.stylesheetManager,this.recordCrossOriginIframes=e.recordCrossOriginIframes,this.crossOriginIframeStyleMirror=new ml(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 r,i;this.mutationCb({adds:[{parentId:this.mirror.getId(e),nextId:null,node:t}],removes:[],texts:[],attributes:[],isAttachIframe:!0}),this.recordCrossOriginIframes&&((r=e.contentWindow)==null||r.addEventListener("message",this.handleMessage.bind(this))),(i=this.loadListener)==null||i.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){let t=e;if(t.data.type!=="rrweb"||t.origin!==t.data.origin||!e.source)return;let i=this.crossOriginIframeMap.get(e.source);if(!i)return;let o=this.transformCrossOriginEvent(i,t.data.event);o&&this.wrappedEmit(o,t.data.isCheckout)}transformCrossOriginEvent(e,t){var r;switch(t.type){case W.FullSnapshot:{this.crossOriginIframeMirror.reset(e),this.crossOriginIframeStyleMirror.reset(e),this.replaceIdOnNode(t.data.node,e);let i=t.data.node.id;return this.crossOriginIframeRootIdMap.set(e,i),this.patchRootIdOnNode(t.data.node,i),{timestamp:t.timestamp,type:W.IncrementalSnapshot,data:{source:$.Mutation,adds:[{parentId:this.mirror.getId(e),nextId:null,node:t.data.node}],removes:[],texts:[],attributes:[],isAttachIframe:!0}}}case W.Meta:case W.Load:case W.DomContentLoaded:return!1;case W.Plugin:return t;case W.Custom:return this.replaceIds(t.data.payload,e,["id","parentId","previousId","nextId"]),t;case W.IncrementalSnapshot:switch(t.data.source){case $.Mutation:return t.data.adds.forEach(i=>{this.replaceIds(i,e,["parentId","nextId","previousId"]),this.replaceIdOnNode(i.node,e);let o=this.crossOriginIframeRootIdMap.get(e);o&&this.patchRootIdOnNode(i.node,o)}),t.data.removes.forEach(i=>{this.replaceIds(i,e,["parentId","id"])}),t.data.attributes.forEach(i=>{this.replaceIds(i,e,["id"])}),t.data.texts.forEach(i=>{this.replaceIds(i,e,["id"])}),t;case $.Drag:case $.TouchMove:case $.MouseMove:return t.data.positions.forEach(i=>{this.replaceIds(i,e,["id"])}),t;case $.ViewportResize:return!1;case $.MediaInteraction:case $.MouseInteraction:case $.Scroll:case $.CanvasMutation:case $.Input:return this.replaceIds(t.data,e,["id"]),t;case $.StyleSheetRule:case $.StyleDeclaration:return this.replaceIds(t.data,e,["id"]),this.replaceStyleIds(t.data,e,["styleId"]),t;case $.Font:return t;case $.Selection:return t.data.ranges.forEach(i=>{this.replaceIds(i,e,["start","end"])}),t;case $.AdoptedStyleSheet:return this.replaceIds(t.data,e,["id"]),this.replaceStyleIds(t.data,e,["styleIds"]),(r=t.data.styles)==null||r.forEach(i=>{this.replaceStyleIds(i,e,["styleId"])}),t}}return!1}replace(e,t,r,i){for(let o of i)!Array.isArray(t[o])&&typeof t[o]!="number"||(Array.isArray(t[o])?t[o]=e.getIds(r,t[o]):t[o]=e.getId(r,t[o]));return t}replaceIds(e,t,r){return this.replace(this.crossOriginIframeMirror,e,t,r)}replaceStyleIds(e,t,r){return this.replace(this.crossOriginIframeStyleMirror,e,t,r)}replaceIdOnNode(e,t){this.replaceIds(e,t,["id","rootId"]),"childNodes"in e&&e.childNodes.forEach(r=>{this.replaceIdOnNode(r,t)})}patchRootIdOnNode(e,t){e.type!==Fr.Document&&!e.rootId&&(e.rootId=t),"childNodes"in e&&e.childNodes.forEach(r=>{this.patchRootIdOnNode(r,t)})}},Id=class{static{a(this,"ShadowDomManager")}constructor(e){k(this,"shadowDoms",new WeakSet),k(this,"mutationCb"),k(this,"scrollCb"),k(this,"bypassOptions"),k(this,"mirror"),k(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(!Ts(e)||this.shadowDoms.has(e))return;this.shadowDoms.add(e);let r=nS({...this.bypassOptions,doc:t,mutationCb:this.mutationCb,mirror:this.mirror,shadowDomManager:this},e);this.restoreHandlers.push(()=>r.disconnect()),this.restoreHandlers.push(iS({...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(pe.host(e))),this.restoreHandlers.push(sS({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){let r=this;this.restoreHandlers.push(kn(e.prototype,"attachShadow",function(i){return function(o){let l=i.call(this,o),u=pe.shadowRoot(this);return u&&tS(this)&&r.addShadowRoot(u,t),l}}))}reset(){this.restoreHandlers.forEach(e=>{try{e()}catch{}}),this.restoreHandlers=[],this.shadowDoms=new WeakSet}},bi="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/",xs=typeof Uint8Array>"u"?[]:new Uint8Array(256);for(vs=0;vs<bi.length;vs++)xs[bi.charCodeAt(vs)]=vs;var vs,rP=a(function(n){var e=new Uint8Array(n),t,r=e.length,i="";for(t=0;t<r;t+=3)i+=bi[e[t]>>2],i+=bi[(e[t]&3)<<4|e[t+1]>>4],i+=bi[(e[t+1]&15)<<2|e[t+2]>>6],i+=bi[e[t+2]&63];return r%3===2?i=i.substring(0,i.length-1)+"=":r%3===1&&(i=i.substring(0,i.length-2)+"=="),i},"encode"),nP=a(function(n){var e=n.length*.75,t=n.length,r,i=0,o,l,u,f;n[n.length-1]==="="&&(e--,n[n.length-2]==="="&&e--);var h=new ArrayBuffer(e),p=new Uint8Array(h);for(r=0;r<t;r+=4)o=xs[n.charCodeAt(r)],l=xs[n.charCodeAt(r+1)],u=xs[n.charCodeAt(r+2)],f=xs[n.charCodeAt(r+3)],p[i++]=o<<2|l>>4,p[i++]=(l&15)<<4|u>>2,p[i++]=(u&3)<<6|f&63;return h},"decode"),Qb=new Map;function iP(n,e){let t=Qb.get(n);return t||(t=new Map,Qb.set(n,t)),t.has(e)||t.set(e,[]),t.get(e)}a(iP,"variableListFor$1");var oS=a((n,e,t)=>{if(!n||!(lS(n,e)||typeof n=="object"))return;let r=n.constructor.name,i=iP(t,r),o=i.indexOf(n);return o===-1&&(o=i.length,i.push(n)),o},"saveWebGLVar");function ja(n,e,t){if(n instanceof Array)return n.map(r=>ja(r,e,t));if(n===null)return n;if(n instanceof Float32Array||n instanceof Float64Array||n instanceof Int32Array||n instanceof Uint32Array||n instanceof Uint8Array||n instanceof Uint16Array||n instanceof Int16Array||n instanceof Int8Array||n instanceof Uint8ClampedArray)return{rr_type:n.constructor.name,args:[Object.values(n)]};if(n instanceof ArrayBuffer){let r=n.constructor.name,i=rP(n);return{rr_type:r,base64:i}}else{if(n instanceof DataView)return{rr_type:n.constructor.name,args:[ja(n.buffer,e,t),n.byteOffset,n.byteLength]};if(n instanceof HTMLImageElement){let r=n.constructor.name,{src:i}=n;return{rr_type:r,src:i}}else if(n instanceof HTMLCanvasElement){let r="HTMLImageElement",i=n.toDataURL();return{rr_type:r,src:i}}else{if(n instanceof ImageData)return{rr_type:n.constructor.name,args:[ja(n.data,e,t),n.width,n.height]};if(lS(n,e)||typeof n=="object"){let r=n.constructor.name,i=oS(n,e,t);return{rr_type:r,index:i}}}}return n}a(ja,"serializeArg");var aS=a((n,e,t)=>n.map(r=>ja(r,e,t)),"serializeArgs"),lS=a((n,e)=>!!["WebGLActiveInfo","WebGLBuffer","WebGLFramebuffer","WebGLProgram","WebGLRenderbuffer","WebGLShader","WebGLShaderPrecisionFormat","WebGLTexture","WebGLUniformLocation","WebGLVertexArrayObject","WebGLVertexArrayObjectOES"].filter(i=>typeof e[i]=="function").find(i=>n instanceof e[i]),"isInstanceOfWebGLObject");function sP(n,e,t,r){let i=[],o=Object.getOwnPropertyNames(e.CanvasRenderingContext2D.prototype);for(let l of o)try{if(typeof e.CanvasRenderingContext2D.prototype[l]!="function")continue;let u=kn(e.CanvasRenderingContext2D.prototype,l,function(f){return function(...h){return Ct(this.canvas,t,r,!0)||setTimeout(()=>{let p=aS(h,e,this);n(this.canvas,{type:Br["2D"],property:l,args:p})},0),f.apply(this,h)}});i.push(u)}catch{let u=Ol(e.CanvasRenderingContext2D.prototype,l,{set(f){n(this.canvas,{type:Br["2D"],property:l,args:[f],setter:!0})}});i.push(u)}return()=>{i.forEach(l=>l())}}a(sP,"initCanvas2DMutationObserver");function oP(n){return n==="experimental-webgl"?"webgl":n}a(oP,"getNormalizedContextName");function eE(n,e,t,r){let i=[];try{let o=kn(n.HTMLCanvasElement.prototype,"getContext",function(l){return function(u,...f){if(!Ct(this,e,t,!0)){let h=oP(u);if("__context"in this||(this.__context=h),r&&["webgl","webgl2"].includes(h))if(f[0]&&typeof f[0]=="object"){let p=f[0];p.preserveDrawingBuffer||(p.preserveDrawingBuffer=!0)}else f.splice(0,1,{preserveDrawingBuffer:!0})}return l.apply(this,[u,...f])}});i.push(o)}catch{console.error("failed to patch HTMLCanvasElement.prototype.getContext")}return()=>{i.forEach(o=>o())}}a(eE,"initCanvasContextObserver");function tE(n,e,t,r,i,o){let l=[],u=Object.getOwnPropertyNames(n);for(let f of u)if(!["isContextLost","canvas","drawingBufferWidth","drawingBufferHeight"].includes(f))try{if(typeof n[f]!="function")continue;let h=kn(n,f,function(p){return function(...g){let y=p.apply(this,g);if(oS(y,o,this),"tagName"in this.canvas&&!Ct(this.canvas,r,i,!0)){let x=aS(g,o,this),w={type:e,property:f,args:x};t(this.canvas,w)}return y}});l.push(h)}catch{let h=Ol(n,f,{set(p){t(this.canvas,{type:e,property:f,args:[p],setter:!0})}});l.push(h)}return l}a(tE,"patchGLPrototype");function aP(n,e,t,r){let i=[];return i.push(...tE(e.WebGLRenderingContext.prototype,Br.WebGL,n,t,r,e)),typeof e.WebGL2RenderingContext<"u"&&i.push(...tE(e.WebGL2RenderingContext.prototype,Br.WebGL2,n,t,r,e)),()=>{i.forEach(o=>o())}}a(aP,"initCanvasWebGLMutationObserver");var cS="KGZ1bmN0aW9uKCkgewogICJ1c2Ugc3RyaWN0IjsKICB2YXIgY2hhcnMgPSAiQUJDREVGR0hJSktMTU5PUFFSU1RVVldYWVphYmNkZWZnaGlqa2xtbm9wcXJzdHV2d3h5ejAxMjM0NTY3ODkrLyI7CiAgdmFyIGxvb2t1cCA9IHR5cGVvZiBVaW50OEFycmF5ID09PSAidW5kZWZpbmVkIiA/IFtdIDogbmV3IFVpbnQ4QXJyYXkoMjU2KTsKICBmb3IgKHZhciBpID0gMDsgaSA8IGNoYXJzLmxlbmd0aDsgaSsrKSB7CiAgICBsb29rdXBbY2hhcnMuY2hhckNvZGVBdChpKV0gPSBpOwogIH0KICB2YXIgZW5jb2RlID0gZnVuY3Rpb24oYXJyYXlidWZmZXIpIHsKICAgIHZhciBieXRlcyA9IG5ldyBVaW50OEFycmF5KGFycmF5YnVmZmVyKSwgaTIsIGxlbiA9IGJ5dGVzLmxlbmd0aCwgYmFzZTY0ID0gIiI7CiAgICBmb3IgKGkyID0gMDsgaTIgPCBsZW47IGkyICs9IDMpIHsKICAgICAgYmFzZTY0ICs9IGNoYXJzW2J5dGVzW2kyXSA+PiAyXTsKICAgICAgYmFzZTY0ICs9IGNoYXJzWyhieXRlc1tpMl0gJiAzKSA8PCA0IHwgYnl0ZXNbaTIgKyAxXSA+PiA0XTsKICAgICAgYmFzZTY0ICs9IGNoYXJzWyhieXRlc1tpMiArIDFdICYgMTUpIDw8IDIgfCBieXRlc1tpMiArIDJdID4+IDZdOwogICAgICBiYXNlNjQgKz0gY2hhcnNbYnl0ZXNbaTIgKyAyXSAmIDYzXTsKICAgIH0KICAgIGlmIChsZW4gJSAzID09PSAyKSB7CiAgICAgIGJhc2U2NCA9IGJhc2U2NC5zdWJzdHJpbmcoMCwgYmFzZTY0Lmxlbmd0aCAtIDEpICsgIj0iOwogICAgfSBlbHNlIGlmIChsZW4gJSAzID09PSAxKSB7CiAgICAgIGJhc2U2NCA9IGJhc2U2NC5zdWJzdHJpbmcoMCwgYmFzZTY0Lmxlbmd0aCAtIDIpICsgIj09IjsKICAgIH0KICAgIHJldHVybiBiYXNlNjQ7CiAgfTsKICBjb25zdCBsYXN0QmxvYk1hcCA9IC8qIEBfX1BVUkVfXyAqLyBuZXcgTWFwKCk7CiAgY29uc3QgdHJhbnNwYXJlbnRCbG9iTWFwID0gLyogQF9fUFVSRV9fICovIG5ldyBNYXAoKTsKICBhc3luYyBmdW5jdGlvbiBnZXRUcmFuc3BhcmVudEJsb2JGb3Iod2lkdGgsIGhlaWdodCwgZGF0YVVSTE9wdGlvbnMpIHsKICAgIGNvbnN0IGlkID0gYCR7d2lkdGh9LSR7aGVpZ2h0fWA7CiAgICBpZiAoIk9mZnNjcmVlbkNhbnZhcyIgaW4gZ2xvYmFsVGhpcykgewogICAgICBpZiAodHJhbnNwYXJlbnRCbG9iTWFwLmhhcyhpZCkpIHJldHVybiB0cmFuc3BhcmVudEJsb2JNYXAuZ2V0KGlkKTsKICAgICAgY29uc3Qgb2Zmc2NyZWVuID0gbmV3IE9mZnNjcmVlbkNhbnZhcyh3aWR0aCwgaGVpZ2h0KTsKICAgICAgb2Zmc2NyZWVuLmdldENvbnRleHQoIjJkIik7CiAgICAgIGNvbnN0IGJsb2IgPSBhd2FpdCBvZmZzY3JlZW4uY29udmVydFRvQmxvYihkYXRhVVJMT3B0aW9ucyk7CiAgICAgIGNvbnN0IGFycmF5QnVmZmVyID0gYXdhaXQgYmxvYi5hcnJheUJ1ZmZlcigpOwogICAgICBjb25zdCBiYXNlNjQgPSBlbmNvZGUoYXJyYXlCdWZmZXIpOwogICAgICB0cmFuc3BhcmVudEJsb2JNYXAuc2V0KGlkLCBiYXNlNjQpOwogICAgICByZXR1cm4gYmFzZTY0OwogICAgfSBlbHNlIHsKICAgICAgcmV0dXJuICIiOwogICAgfQogIH0KICBjb25zdCB3b3JrZXIgPSBzZWxmOwogIHdvcmtlci5vbm1lc3NhZ2UgPSBhc3luYyBmdW5jdGlvbihlKSB7CiAgICBpZiAoIk9mZnNjcmVlbkNhbnZhcyIgaW4gZ2xvYmFsVGhpcykgewogICAgICBjb25zdCB7IGlkLCBiaXRtYXAsIHdpZHRoLCBoZWlnaHQsIGRhdGFVUkxPcHRpb25zIH0gPSBlLmRhdGE7CiAgICAgIGNvbnN0IHRyYW5zcGFyZW50QmFzZTY0ID0gZ2V0VHJhbnNwYXJlbnRCbG9iRm9yKAogICAgICAgIHdpZHRoLAogICAgICAgIGhlaWdodCwKICAgICAgICBkYXRhVVJMT3B0aW9ucwogICAgICApOwogICAgICBjb25zdCBvZmZzY3JlZW4gPSBuZXcgT2Zmc2NyZWVuQ2FudmFzKHdpZHRoLCBoZWlnaHQpOwogICAgICBjb25zdCBjdHggPSBvZmZzY3JlZW4uZ2V0Q29udGV4dCgiMmQiKTsKICAgICAgY3R4LmRyYXdJbWFnZShiaXRtYXAsIDAsIDApOwogICAgICBiaXRtYXAuY2xvc2UoKTsKICAgICAgY29uc3QgYmxvYiA9IGF3YWl0IG9mZnNjcmVlbi5jb252ZXJ0VG9CbG9iKGRhdGFVUkxPcHRpb25zKTsKICAgICAgY29uc3QgdHlwZSA9IGJsb2IudHlwZTsKICAgICAgY29uc3QgYXJyYXlCdWZmZXIgPSBhd2FpdCBibG9iLmFycmF5QnVmZmVyKCk7CiAgICAgIGNvbnN0IGJhc2U2NCA9IGVuY29kZShhcnJheUJ1ZmZlcik7CiAgICAgIGlmICghbGFzdEJsb2JNYXAuaGFzKGlkKSAmJiBhd2FpdCB0cmFuc3BhcmVudEJhc2U2NCA9PT0gYmFzZTY0KSB7CiAgICAgICAgbGFzdEJsb2JNYXAuc2V0KGlkLCBiYXNlNjQpOwogICAgICAgIHJldHVybiB3b3JrZXIucG9zdE1lc3NhZ2UoeyBpZCB9KTsKICAgICAgfQogICAgICBpZiAobGFzdEJsb2JNYXAuZ2V0KGlkKSA9PT0gYmFzZTY0KSByZXR1cm4gd29ya2VyLnBvc3RNZXNzYWdlKHsgaWQgfSk7CiAgICAgIHdvcmtlci5wb3N0TWVzc2FnZSh7CiAgICAgICAgaWQsCiAgICAgICAgdHlwZSwKICAgICAgICBiYXNlNjQsCiAgICAgICAgd2lkdGgsCiAgICAgICAgaGVpZ2h0CiAgICAgIH0pOwogICAgICBsYXN0QmxvYk1hcC5zZXQoaWQsIGJhc2U2NCk7CiAgICB9IGVsc2UgewogICAgICByZXR1cm4gd29ya2VyLnBvc3RNZXNzYWdlKHsgaWQ6IGUuZGF0YS5pZCB9KTsKICAgIH0KICB9Owp9KSgpOwovLyMgc291cmNlTWFwcGluZ1VSTD1pbWFnZS1iaXRtYXAtZGF0YS11cmwtd29ya2VyLUlKcEM3Z19iLmpzLm1hcAo=",lP=a(n=>Uint8Array.from(atob(n),e=>e.charCodeAt(0)),"decodeBase64"),rE=typeof window<"u"&&window.Blob&&new Blob([lP(cS)],{type:"text/javascript;charset=utf-8"});function cP(n){let e;try{if(e=rE&&(window.URL||window.webkitURL).createObjectURL(rE),!e)throw"";let t=new Worker(e,{name:n?.name});return t.addEventListener("error",()=>{(window.URL||window.webkitURL).revokeObjectURL(e)}),t}catch{return new Worker("data:text/javascript;base64,"+cS,{name:n?.name})}finally{e&&(window.URL||window.webkitURL).revokeObjectURL(e)}}a(cP,"WorkerWrapper");var Ad=class{static{a(this,"CanvasManager")}constructor(e){k(this,"pendingCanvasMutations",new Map),k(this,"rafStamps",{latestId:0,invokeId:null}),k(this,"mirror"),k(this,"mutationCb"),k(this,"resetObservers"),k(this,"frozen",!1),k(this,"locked",!1),k(this,"processMutation",(f,h)=>{(this.rafStamps.invokeId&&this.rafStamps.latestId!==this.rafStamps.invokeId||!this.rafStamps.invokeId)&&(this.rafStamps.invokeId=this.rafStamps.latestId),this.pendingCanvasMutations.has(f)||this.pendingCanvasMutations.set(f,[]),this.pendingCanvasMutations.get(f).push(h)});let{sampling:t="all",win:r,blockClass:i,blockSelector:o,recordCanvas:l,dataURLOptions:u}=e;this.mutationCb=e.mutationCb,this.mirror=e.mirror,l&&t==="all"&&this.initCanvasMutationObserver(r,i,o),l&&typeof t=="number"&&this.initCanvasFPSObserver(t,r,i,o,{dataURLOptions:u})}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,r,i,o){let l=eE(t,r,i,!0),u=new Map,f=new cP;f.onmessage=w=>{let{id:C}=w.data;if(u.set(C,!1),!("base64"in w.data))return;let{base64:E,type:M,width:O,height:R}=w.data;this.mutationCb({id:C,type:Br["2D"],commands:[{property:"clearRect",args:[0,0,O,R]},{property:"drawImage",args:[{rr_type:"ImageBitmap",args:[{rr_type:"Blob",data:[{rr_type:"ArrayBuffer",base64:E}],type:M}]},0,0]}]})};let h=1e3/e,p=0,g,y=a(()=>{let w=[];return t.document.querySelectorAll("canvas").forEach(C=>{Ct(C,r,i,!0)||w.push(C)}),w},"getCanvas"),x=a(w=>{if(p&&w-p<h){g=requestAnimationFrame(x);return}p=w,y().forEach(async C=>{var E;let M=this.mirror.getId(C);if(u.get(M)||C.width===0||C.height===0)return;if(u.set(M,!0),["webgl","webgl2"].includes(C.__context)){let R=C.getContext(C.__context);((E=R?.getContextAttributes())==null?void 0:E.preserveDrawingBuffer)===!1&&R.clear(R.COLOR_BUFFER_BIT)}let O=await createImageBitmap(C);f.postMessage({id:M,bitmap:O,width:C.width,height:C.height,dataURLOptions:o.dataURLOptions},[O])}),g=requestAnimationFrame(x)},"takeCanvasSnapshots");g=requestAnimationFrame(x),this.resetObservers=()=>{l(),cancelAnimationFrame(g)}}initCanvasMutationObserver(e,t,r){this.startRAFTimestamping(),this.startPendingCanvasMutationFlusher();let i=eE(e,t,r,!1),o=sP(this.processMutation.bind(this),e,t,r),l=aP(this.processMutation.bind(this),e,t,r);this.resetObservers=()=>{i(),o(),l()}}startPendingCanvasMutationFlusher(){requestAnimationFrame(()=>this.flushPendingCanvasMutations())}startRAFTimestamping(){let e=a(t=>{this.rafStamps.latestId=t,requestAnimationFrame(e)},"setLatestRAFTimestamp");requestAnimationFrame(e)}flushPendingCanvasMutations(){this.pendingCanvasMutations.forEach((e,t)=>{let r=this.mirror.getId(t);this.flushPendingCanvasMutationFor(t,r)}),requestAnimationFrame(()=>this.flushPendingCanvasMutations())}flushPendingCanvasMutationFor(e,t){if(this.frozen||this.locked)return;let r=this.pendingCanvasMutations.get(e);if(!r||t===-1)return;let i=r.map(l=>{let{type:u,...f}=l;return f}),{type:o}=r[0];this.mutationCb({id:t,type:o,commands:i}),this.pendingCanvasMutations.delete(e)}},Od=class{static{a(this,"StylesheetManager")}constructor(e){k(this,"trackedLinkElements",new WeakSet),k(this,"mutationCb"),k(this,"adoptedStyleSheetCb"),k(this,"styleMirror",new hl),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(e.length===0)return;let r={id:t,styleIds:[]},i=[];for(let o of e){let l;this.styleMirror.has(o)?l=this.styleMirror.getId(o):(l=this.styleMirror.add(o),i.push({styleId:l,rules:Array.from(o.rules||CSSRule,(u,f)=>({rule:pE(u,o.href),index:f}))})),r.styleIds.push(l)}i.length>0&&(r.styles=i),this.adoptedStyleSheetCb(r)}reset(){this.styleMirror.reset(),this.trackedLinkElements=new WeakSet}trackStylesheetInLinkElement(e){}},Nd=class{static{a(this,"ProcessedNodeManager")}constructor(){k(this,"nodeMap",new WeakMap),k(this,"active",!1)}inOtherBuffer(e,t){let r=this.nodeMap.get(e);return r&&Array.from(r).some(i=>i!==t)}add(e,t){this.active||(this.active=!0,requestAnimationFrame(()=>{this.nodeMap=new WeakMap,this.active=!1})),this.nodeMap.set(e,(this.nodeMap.get(e)||new Set).add(t))}destroy(){}},Qe,qa,Nf,gl=!1;try{if(Array.from([1],n=>n*2)[0]!==2){let n=document.createElement("iframe");document.body.appendChild(n),Array.from=((eb=n.contentWindow)==null?void 0:eb.Array.from)||Array.from,document.body.removeChild(n)}}catch(n){console.debug("Unable to override Array.from",n)}var sr=mE();function Zt(n={}){let{emit:e,checkoutEveryNms:t,checkoutEveryNth:r,blockClass:i="rr-block",blockSelector:o=null,ignoreClass:l="rr-ignore",ignoreSelector:u=null,maskTextClass:f="rr-mask",maskTextSelector:h=null,inlineStylesheet:p=!0,maskAllInputs:g,maskInputOptions:y,slimDOMOptions:x,maskInputFn:w,maskTextFn:C,hooks:E,packFn:M,sampling:O={},dataURLOptions:R={},mousemoveWait:L,recordDOM:B=!0,recordCanvas:U=!1,recordCrossOriginIframes:J=!1,recordAfter:te=n.recordAfter==="DOMContentLoaded"?n.recordAfter:"load",userTriggeredOnInput:ce=!1,collectFonts:Se=!1,inlineImages:Fe=!1,plugins:ze,keepIframeSrcFn:z=a(()=>!1,"keepIframeSrcFn"),ignoreCSSAttributes:xt=new Set([]),errorHandler:bt}=n;Wk(bt);let Q=J?window.parent===window:!0,ee=!1;if(!Q)try{window.parent.document&&(ee=!1)}catch{ee=!0}if(Q&&!e)throw new Error("emit function is required");if(!Q&&!ee)return()=>{};L!==void 0&&O.mousemove===void 0&&(O.mousemove=L),sr.reset();let et=g===!0?{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}:y!==void 0?y:{password:!0},Oe=x===!0||x==="all"?{script:!0,comment:!0,headFavicon:!0,headWhitespace:!0,headMetaSocial:!0,headMetaRobots:!0,headMetaHttpEquiv:!0,headMetaVerification:!0,headMetaAuthorship:x==="all",headMetaDescKeywords:x==="all",headTitleMutations:x==="all"}:x||{};Xw();let Le,gn=0,Wn=a(me=>{for(let Mt of ze||[])Mt.eventProcessor&&(me=Mt.eventProcessor(me));return M&&!ee&&(me=M(me)),me},"eventProcessor");Qe=a((me,Mt)=>{var Ee;let Ie=me;if(Ie.timestamp=dl(),(Ee=Ln[0])!=null&&Ee.isFrozen()&&Ie.type!==W.FullSnapshot&&!(Ie.type===W.IncrementalSnapshot&&Ie.data.source===$.Mutation)&&Ln.forEach(Vt=>Vt.unfreeze()),Q)e?.(Wn(Ie),Mt);else if(ee){let Vt={type:"rrweb",event:Wn(Ie),origin:window.location.origin,isCheckout:Mt};window.parent.postMessage(Vt,"*")}if(Ie.type===W.FullSnapshot)Le=Ie,gn=0;else if(Ie.type===W.IncrementalSnapshot){if(Ie.data.source===$.Mutation&&Ie.data.isAttachIframe)return;gn++;let Vt=r&&gn>=r,fe=t&&Ie.timestamp-Le.timestamp>t;(Vt||fe)&&qa(!0)}},"wrappedEmit");let ne=a(me=>{Qe({type:W.IncrementalSnapshot,data:{source:$.Mutation,...me}})},"wrappedMutationEmit"),Ze=a(me=>Qe({type:W.IncrementalSnapshot,data:{source:$.Scroll,...me}}),"wrappedScrollEmit"),Nt=a(me=>Qe({type:W.IncrementalSnapshot,data:{source:$.CanvasMutation,...me}}),"wrappedCanvasMutationEmit"),Lt=a(me=>Qe({type:W.IncrementalSnapshot,data:{source:$.AdoptedStyleSheet,...me}}),"wrappedAdoptedStyleSheetEmit"),ht=new Od({mutationCb:ne,adoptedStyleSheetCb:Lt}),at=new Rd({mirror:sr,mutationCb:ne,stylesheetManager:ht,recordCrossOriginIframes:J,wrappedEmit:Qe});for(let me of ze||[])me.getMirror&&me.getMirror({nodeMirror:sr,crossOriginIframeMirror:at.crossOriginIframeMirror,crossOriginIframeStyleMirror:at.crossOriginIframeStyleMirror});let Ui=new Nd;Nf=new Ad({recordCanvas:U,mutationCb:Nt,win:window,blockClass:i,blockSelector:o,mirror:sr,sampling:O.canvas,dataURLOptions:R});let Mr=new Id({mutationCb:ne,scrollCb:Ze,bypassOptions:{blockClass:i,blockSelector:o,maskTextClass:f,maskTextSelector:h,inlineStylesheet:p,maskInputOptions:et,dataURLOptions:R,maskTextFn:C,maskInputFn:w,recordCanvas:U,inlineImages:Fe,sampling:O,slimDOMOptions:Oe,iframeManager:at,stylesheetManager:ht,canvasManager:Nf,keepIframeSrcFn:z,processedNodeManager:Ui},mirror:sr});qa=a((me=!1)=>{if(!B)return;Qe({type:W.Meta,data:{href:window.location.href,width:qw(),height:jw()}},me),ht.reset(),Mr.init(),Ln.forEach(Ee=>Ee.lock());let Mt=fN(document,{mirror:sr,blockClass:i,blockSelector:o,maskTextClass:f,maskTextSelector:h,inlineStylesheet:p,maskAllInputs:et,maskTextFn:C,maskInputFn:w,slimDOM:Oe,dataURLOptions:R,recordCanvas:U,inlineImages:Fe,onSerialize:a(Ee=>{Is(Ee,sr)&&at.addIframe(Ee),Jw(Ee,sr)&&ht.trackLinkElement(Ee),Nn(Ee)&&Mr.addShadowRoot(pe.shadowRoot(Ee),document)},"onSerialize"),onIframeLoad:a((Ee,Ie)=>{at.attachIframe(Ee,Ie),Mr.observeAttachShadow(Ee)},"onIframeLoad"),onStylesheetLoad:a((Ee,Ie)=>{ht.attachLinkElement(Ee,Ie)},"onStylesheetLoad"),keepIframeSrcFn:z});if(!Mt)return console.warn("Failed to snapshot the document");Qe({type:W.FullSnapshot,data:{node:Mt,initialOffset:Gw(window)}},me),Ln.forEach(Ee=>Ee.unlock()),document.adoptedStyleSheets&&document.adoptedStyleSheets.length>0&&ht.adoptStyleSheets(document.adoptedStyleSheets,sr.getId(document))},"takeFullSnapshot$1");try{let me=[],Mt=a(Ie=>{var Vt;return we(tP)({mutationCb:ne,mousemoveCb:a((fe,Vn)=>Qe({type:W.IncrementalSnapshot,data:{source:Vn,positions:fe}}),"mousemoveCb"),mouseInteractionCb:a(fe=>Qe({type:W.IncrementalSnapshot,data:{source:$.MouseInteraction,...fe}}),"mouseInteractionCb"),scrollCb:Ze,viewportResizeCb:a(fe=>Qe({type:W.IncrementalSnapshot,data:{source:$.ViewportResize,...fe}}),"viewportResizeCb"),inputCb:a(fe=>Qe({type:W.IncrementalSnapshot,data:{source:$.Input,...fe}}),"inputCb"),mediaInteractionCb:a(fe=>Qe({type:W.IncrementalSnapshot,data:{source:$.MediaInteraction,...fe}}),"mediaInteractionCb"),styleSheetRuleCb:a(fe=>Qe({type:W.IncrementalSnapshot,data:{source:$.StyleSheetRule,...fe}}),"styleSheetRuleCb"),styleDeclarationCb:a(fe=>Qe({type:W.IncrementalSnapshot,data:{source:$.StyleDeclaration,...fe}}),"styleDeclarationCb"),canvasMutationCb:Nt,fontCb:a(fe=>Qe({type:W.IncrementalSnapshot,data:{source:$.Font,...fe}}),"fontCb"),selectionCb:a(fe=>{Qe({type:W.IncrementalSnapshot,data:{source:$.Selection,...fe}})},"selectionCb"),customElementCb:a(fe=>{Qe({type:W.IncrementalSnapshot,data:{source:$.CustomElement,...fe}})},"customElementCb"),blockClass:i,ignoreClass:l,ignoreSelector:u,maskTextClass:f,maskTextSelector:h,maskInputOptions:et,inlineStylesheet:p,sampling:O,recordDOM:B,recordCanvas:U,inlineImages:Fe,userTriggeredOnInput:ce,collectFonts:Se,doc:Ie,maskInputFn:w,maskTextFn:C,keepIframeSrcFn:z,blockSelector:o,slimDOMOptions:Oe,dataURLOptions:R,mirror:sr,iframeManager:at,stylesheetManager:ht,shadowDomManager:Mr,processedNodeManager:Ui,canvasManager:Nf,ignoreCSSAttributes:xt,plugins:((Vt=ze?.filter(fe=>fe.observer))==null?void 0:Vt.map(fe=>({observer:fe.observer,options:fe.options,callback:a(Vn=>Qe({type:W.Plugin,data:{plugin:fe.name,payload:Vn}}),"callback")})))||[]},E)},"observe");at.addLoadListener(Ie=>{try{me.push(Mt(Ie.contentDocument))}catch(Vt){console.warn(Vt)}});let Ee=a(()=>{qa(),me.push(Mt(document)),gl=!0},"init");return document.readyState==="interactive"||document.readyState==="complete"?Ee():(me.push(vt("DOMContentLoaded",()=>{Qe({type:W.DomContentLoaded,data:{}}),te==="DOMContentLoaded"&&Ee()})),me.push(vt("load",()=>{Qe({type:W.Load,data:{}}),te==="load"&&Ee()},window))),()=>{me.forEach(Ie=>Ie()),Ui.destroy(),gl=!1,Vk()}}catch(me){console.warn(me)}}a(Zt,"record");Zt.addCustomEvent=(n,e)=>{if(!gl)throw new Error("please add custom event after start recording");Qe({type:W.Custom,data:{tag:n,payload:e}})};Zt.freezePage=()=>{Ln.forEach(n=>n.freeze())};Zt.takeFullSnapshot=n=>{if(!gl)throw new Error("please take full snapshot after start recording");qa(n)};Zt.mirror=sr;function uS(n){return{all:n=n||new Map,on:a(function(e,t){var r=n.get(e);r?r.push(t):n.set(e,[t])},"on"),off:a(function(e,t){var r=n.get(e);r&&(t?r.splice(r.indexOf(t)>>>0,1):n.set(e,[]))},"off"),emit:a(function(e,t){var r=n.get(e);r&&r.slice().map(function(i){i(t)}),(r=n.get("*"))&&r.slice().map(function(i){i(e,t)})},"emit")}}a(uS,"mitt$1");var uP=Object.freeze(Object.defineProperty({__proto__:null,default:uS},Symbol.toStringTag,{value:"Module"}));function fP(n=window,e=document){if("scrollBehavior"in e.documentElement.style&&n.__forceSmoothScrollPolyfill__!==!0)return;let t=n.HTMLElement||n.Element,r=468,i={scroll:n.scroll||n.scrollTo,scrollBy:n.scrollBy,elementScroll:t.prototype.scroll||f,scrollIntoView:t.prototype.scrollIntoView},o=n.performance&&n.performance.now?n.performance.now.bind(n.performance):Date.now;function l(M){let O=["MSIE ","Trident/","Edge/"];return new RegExp(O.join("|")).test(M)}a(l,"isMicrosoftBrowser");let u=l(n.navigator.userAgent)?1:0;function f(M,O){this.scrollLeft=M,this.scrollTop=O}a(f,"scrollElement");function h(M){return .5*(1-Math.cos(Math.PI*M))}a(h,"ease");function p(M){if(M===null||typeof M!="object"||M.behavior===void 0||M.behavior==="auto"||M.behavior==="instant")return!0;if(typeof M=="object"&&M.behavior==="smooth")return!1;throw new TypeError("behavior member of ScrollOptions "+M.behavior+" is not a valid value for enumeration ScrollBehavior.")}a(p,"shouldBailOut");function g(M,O){if(O==="Y")return M.clientHeight+u<M.scrollHeight;if(O==="X")return M.clientWidth+u<M.scrollWidth}a(g,"hasScrollableSpace");function y(M,O){let R=n.getComputedStyle(M,null)["overflow"+O];return R==="auto"||R==="scroll"}a(y,"canOverflow");function x(M){let O=g(M,"Y")&&y(M,"Y"),R=g(M,"X")&&y(M,"X");return O||R}a(x,"isScrollable");function w(M){for(;M!==e.body&&x(M)===!1;)M=M.parentNode||M.host;return M}a(w,"findScrollableParent");function C(M){let O=o(),R,L,B,U=(O-M.startTime)/r;U=U>1?1:U,R=h(U),L=M.startX+(M.x-M.startX)*R,B=M.startY+(M.y-M.startY)*R,M.method.call(M.scrollable,L,B),(L!==M.x||B!==M.y)&&n.requestAnimationFrame(C.bind(n,M))}a(C,"step");function E(M,O,R){let L,B,U,J,te=o();M===e.body?(L=n,B=n.scrollX||n.pageXOffset,U=n.scrollY||n.pageYOffset,J=i.scroll):(L=M,B=M.scrollLeft,U=M.scrollTop,J=f),C({scrollable:L,method:J,startTime:te,startX:B,startY:U,x:O,y:R})}a(E,"smoothScroll"),n.scroll=n.scrollTo=function(){if(arguments[0]!==void 0){if(p(arguments[0])===!0){i.scroll.call(n,arguments[0].left!==void 0?arguments[0].left:typeof arguments[0]!="object"?arguments[0]:n.scrollX||n.pageXOffset,arguments[0].top!==void 0?arguments[0].top:arguments[1]!==void 0?arguments[1]:n.scrollY||n.pageYOffset);return}E.call(n,e.body,arguments[0].left!==void 0?~~arguments[0].left:n.scrollX||n.pageXOffset,arguments[0].top!==void 0?~~arguments[0].top:n.scrollY||n.pageYOffset)}},n.scrollBy=function(){if(arguments[0]!==void 0){if(p(arguments[0])){i.scrollBy.call(n,arguments[0].left!==void 0?arguments[0].left:typeof arguments[0]!="object"?arguments[0]:0,arguments[0].top!==void 0?arguments[0].top:arguments[1]!==void 0?arguments[1]:0);return}E.call(n,e.body,~~arguments[0].left+(n.scrollX||n.pageXOffset),~~arguments[0].top+(n.scrollY||n.pageYOffset))}},t.prototype.scroll=t.prototype.scrollTo=function(){if(arguments[0]===void 0)return;if(p(arguments[0])===!0){if(typeof arguments[0]=="number"&&arguments[1]===void 0)throw new SyntaxError("Value could not be converted");i.elementScroll.call(this,arguments[0].left!==void 0?~~arguments[0].left:typeof arguments[0]!="object"?~~arguments[0]:this.scrollLeft,arguments[0].top!==void 0?~~arguments[0].top:arguments[1]!==void 0?~~arguments[1]:this.scrollTop);return}let M=arguments[0].left,O=arguments[0].top;E.call(this,this,typeof M>"u"?this.scrollLeft:~~M,typeof O>"u"?this.scrollTop:~~O)},t.prototype.scrollBy=function(){if(arguments[0]!==void 0){if(p(arguments[0])===!0){i.elementScroll.call(this,arguments[0].left!==void 0?~~arguments[0].left+this.scrollLeft:~~arguments[0]+this.scrollLeft,arguments[0].top!==void 0?~~arguments[0].top+this.scrollTop:~~arguments[1]+this.scrollTop);return}this.scroll({left:~~arguments[0].left+this.scrollLeft,top:~~arguments[0].top+this.scrollTop,behavior:arguments[0].behavior})}},t.prototype.scrollIntoView=function(){if(p(arguments[0])===!0){i.scrollIntoView.call(this,arguments[0]===void 0?!0:arguments[0]);return}let M=w(this),O=M.getBoundingClientRect(),R=this.getBoundingClientRect();M!==e.body?(E.call(this,M,M.scrollLeft+R.left-O.left,M.scrollTop+R.top-O.top),n.getComputedStyle(M).position!=="fixed"&&n.scrollBy({left:O.left,top:O.top,behavior:"smooth"})):n.scrollBy({left:R.left,top:R.top,behavior:"smooth"})}}a(fP,"polyfill");var Ld=class{static{a(this,"Timer")}constructor(e=[],t){k(this,"timeOffset",0),k(this,"speed"),k(this,"actions"),k(this,"raf",null),k(this,"lastTimestamp"),this.actions=e,this.speed=t.speed}addAction(e){let t=this.raf===!0;if(!this.actions.length||this.actions[this.actions.length-1].delay<=e.delay)this.actions.push(e);else{let r=this.findActionIndex(e);this.actions.splice(r,0,e)}t&&(this.raf=requestAnimationFrame(this.rafCheck.bind(this)))}start(){this.timeOffset=0,this.lastTimestamp=performance.now(),this.raf=requestAnimationFrame(this.rafCheck.bind(this))}rafCheck(){let e=performance.now();for(this.timeOffset+=(e-this.lastTimestamp)*this.speed,this.lastTimestamp=e;this.actions.length;){let t=this.actions[0];if(this.timeOffset>=t.delay)this.actions.shift(),t.doAction();else break}this.actions.length>0?this.raf=requestAnimationFrame(this.rafCheck.bind(this)):this.raf=!0}clear(){this.raf&&(this.raf!==!0&&cancelAnimationFrame(this.raf),this.raf=null),this.actions.length=0}setSpeed(e){this.speed=e}isActive(){return this.raf!==null}findActionIndex(e){let t=0,r=this.actions.length-1;for(;t<=r;){let i=Math.floor((t+r)/2);if(this.actions[i].delay<e.delay)t=i+1;else if(this.actions[i].delay>e.delay)r=i-1;else return i+1}return t}};function nE(n,e){if(n.type===W.IncrementalSnapshot&&n.data.source===$.MouseMove&&n.data.positions&&n.data.positions.length){let t=n.data.positions[0].timeOffset,r=n.timestamp+t;return n.delay=r-e,r-e}return n.delay=n.timestamp-e,n.delay}a(nE,"addDelay");function iE(n,e){var t=typeof Symbol=="function"&&n[Symbol.iterator];if(!t)return n;var r,i,o=t.call(n),l=[];try{for(;(e===void 0||e-- >0)&&!(r=o.next()).done;)l.push(r.value)}catch(u){i={error:u}}finally{try{r&&!r.done&&(t=o.return)&&t.call(o)}finally{if(i)throw i.error}}return l}a(iE,"t");var Ei;(function(n){n[n.NotStarted=0]="NotStarted",n[n.Running=1]="Running",n[n.Stopped=2]="Stopped"})(Ei||(Ei={}));var fS={type:"xstate.init"};function Lf(n){return n===void 0?[]:[].concat(n)}a(Lf,"r");function mi(n){return{type:"xstate.assign",assignment:n}}a(mi,"o");function sE(n,e){return typeof(n=typeof n=="string"&&e&&e[n]?e[n]:n)=="string"?{type:n}:typeof n=="function"?{type:n.name,exec:n}:n}a(sE,"i");function yl(n){return function(e){return n===e}}a(yl,"a");function dS(n){return typeof n=="string"?{type:n}:n}a(dS,"u");function oE(n,e){return{value:n,context:e,actions:[],changed:!1,matches:yl(n)}}a(oE,"c");function aE(n,e,t){var r=e,i=!1;return[n.filter(function(o){if(o.type==="xstate.assign"){i=!0;var l=Object.assign({},r);return typeof o.assignment=="function"?l=o.assignment(r,t):Object.keys(o.assignment).forEach(function(u){l[u]=typeof o.assignment[u]=="function"?o.assignment[u](r,t):o.assignment[u]}),r=l,!1}return!0}),r,i]}a(aE,"f");function hS(n,e){e===void 0&&(e={});var t=iE(aE(Lf(n.states[n.initial].entry).map(function(l){return sE(l,e.actions)}),n.context,fS),2),r=t[0],i=t[1],o={config:n,_options:e,initialState:{value:n.initial,actions:r,context:i,matches:yl(n.initial)},transition:a(function(l,u){var f,h,p=typeof l=="string"?{value:l,context:n.context}:l,g=p.value,y=p.context,x=dS(u),w=n.states[g];if(w.on){var C=Lf(w.on[x.type]);try{for(var E=(function(ee){var et=typeof Symbol=="function"&&Symbol.iterator,Oe=et&&ee[et],Le=0;if(Oe)return Oe.call(ee);if(ee&&typeof ee.length=="number")return{next:a(function(){return ee&&Le>=ee.length&&(ee=void 0),{value:ee&&ee[Le++],done:!ee}},"next")};throw new TypeError(et?"Object is not iterable.":"Symbol.iterator is not defined.")})(C),M=E.next();!M.done;M=E.next()){var O=M.value;if(O===void 0)return oE(g,y);var R=typeof O=="string"?{target:O}:O,L=R.target,B=R.actions,U=B===void 0?[]:B,J=R.cond,te=J===void 0?function(){return!0}:J,ce=L===void 0,Se=L??g,Fe=n.states[Se];if(te(y,x)){var ze=iE(aE((ce?Lf(U):[].concat(w.exit,U,Fe.entry).filter(function(ee){return ee})).map(function(ee){return sE(ee,o._options.actions)}),y,x),3),z=ze[0],xt=ze[1],bt=ze[2],Q=L??g;return{value:Q,context:xt,actions:z,changed:L!==g||z.length>0||bt,matches:yl(Q)}}}}catch(ee){f={error:ee}}finally{try{M&&!M.done&&(h=E.return)&&h.call(E)}finally{if(f)throw f.error}}}return oE(g,y)},"transition")};return o}a(hS,"s");var lE=a(function(n,e){return n.actions.forEach(function(t){var r=t.exec;return r&&r(n.context,e)})},"l");function pS(n){var e=n.initialState,t=Ei.NotStarted,r=new Set,i={_machine:n,send:a(function(o){t===Ei.Running&&(e=n.transition(e,o),lE(e,dS(o)),r.forEach(function(l){return l(e)}))},"send"),subscribe:a(function(o){return r.add(o),o(e),{unsubscribe:a(function(){return r.delete(o)},"unsubscribe")}},"subscribe"),start:a(function(o){if(o){var l=typeof o=="object"?o:{context:n.config.context,value:o};e={value:l.value,actions:[],context:l.context,matches:yl(l.value)}}return t=Ei.Running,lE(e,fS),i},"start"),stop:a(function(){return t=Ei.Stopped,r.clear(),i},"stop"),get state(){return e},get status(){return t}};return i}a(pS,"v");function dP(n,e){for(let t=n.length-1;t>=0;t--){let r=n[t];if(r.type===W.Meta&&r.timestamp<=e)return n.slice(t)}return n}a(dP,"discardPriorSnapshots");function hP(n,{getCastFn:e,applyEventsSynchronously:t,emitter:r}){let i=hS({id:"player",context:n,initial:"paused",states:{playing:{on:{PAUSE:{target:"paused",actions:["pause"]},CAST_EVENT:{target:"playing",actions:"castEvent"},END:{target:"paused",actions:["resetLastPlayedEvent","pause"]},ADD_EVENT:{target:"playing",actions:["addEvent"]}}},paused:{on:{PLAY:{target:"playing",actions:["recordTimeOffset","play"]},CAST_EVENT:{target:"paused",actions:"castEvent"},TO_LIVE:{target:"live",actions:["startLive"]},ADD_EVENT:{target:"paused",actions:["addEvent"]}}},live:{on:{ADD_EVENT:{target:"live",actions:["addEvent"]},CAST_EVENT:{target:"live",actions:["castEvent"]}}}}},{actions:{castEvent:mi({lastPlayedEvent:a((o,l)=>l.type==="CAST_EVENT"?l.payload.event:o.lastPlayedEvent,"lastPlayedEvent")}),recordTimeOffset:mi((o,l)=>{let u=o.timeOffset;return"payload"in l&&"timeOffset"in l.payload&&(u=l.payload.timeOffset),{...o,timeOffset:u,baselineTime:o.events[0].timestamp+u}}),play(o){var l;let{timer:u,events:f,baselineTime:h,lastPlayedEvent:p}=o;u.clear();for(let w of f)nE(w,h);let g=dP(f,h),y=p?.timestamp;p?.type===W.IncrementalSnapshot&&p.data.source===$.MouseMove&&(y=p.timestamp+((l=p.data.positions[0])==null?void 0:l.timeOffset)),h<(y||0)&&r.emit(ye.PlayBack);let x=new Array;for(let w of g)if(!(y&&y<h&&(w.timestamp<=y||w===p)))if(w.timestamp<h)x.push(w);else{let C=e(w,!1);u.addAction({doAction:a(()=>{C()},"doAction"),delay:w.delay})}t(x),r.emit(ye.Flush),u.start()},pause(o){o.timer.clear()},resetLastPlayedEvent:mi(o=>({...o,lastPlayedEvent:null})),startLive:mi({baselineTime:a((o,l)=>(o.timer.start(),l.type==="TO_LIVE"&&l.payload.baselineTime?l.payload.baselineTime:Date.now()),"baselineTime")}),addEvent:mi((o,l)=>{let{baselineTime:u,timer:f,events:h}=o;if(l.type==="ADD_EVENT"){let{event:p}=l.payload;nE(p,u);let g=h.length-1;if(!h[g]||h[g].timestamp<=p.timestamp)h.push(p);else{let w=-1,C=0;for(;C<=g;){let E=Math.floor((C+g)/2);h[E].timestamp<=p.timestamp?C=E+1:g=E-1}w===-1&&(w=C),h.splice(w,0,p)}let y=p.timestamp<u,x=e(p,y);y?x():f.isActive()&&f.addAction({doAction:a(()=>{x()},"doAction"),delay:p.delay})}return{...o,events:h}})}});return pS(i)}a(hP,"createPlayerService");function pP(n){let e=hS({id:"speed",context:n,initial:"normal",states:{normal:{on:{FAST_FORWARD:{target:"skipping",actions:["recordSpeed","setSpeed"]},SET_SPEED:{target:"normal",actions:["setSpeed"]}}},skipping:{on:{BACK_TO_NORMAL:{target:"normal",actions:["restoreSpeed"]},SET_SPEED:{target:"normal",actions:["setSpeed"]}}}}},{actions:{setSpeed:a((t,r)=>{"payload"in r&&t.timer.setSpeed(r.payload.speed)},"setSpeed"),recordSpeed:mi({normalSpeed:a(t=>t.timer.speed,"normalSpeed")}),restoreSpeed:a(t=>{t.timer.setSpeed(t.normalSpeed)},"restoreSpeed")}});return pS(e)}a(pP,"createSpeedService");var mP=a(n=>[`.${n} { background: currentColor }`,"noscript { display: none !important; }"],"rules"),cE=new Map;function mS(n,e){let t=cE.get(n);return t||(t=new Map,cE.set(n,t)),t.has(e)||t.set(e,[]),t.get(e)}a(mS,"variableListFor");function an(n,e,t){return async r=>{if(r&&typeof r=="object"&&"rr_type"in r)if(t&&(t.isUnchanged=!1),r.rr_type==="ImageBitmap"&&"args"in r){let i=await an(n,e,t)(r.args);return await createImageBitmap.apply(null,i)}else if("index"in r){if(t||e===null)return r;let{rr_type:i,index:o}=r;return mS(e,i)[o]}else if("args"in r){let{rr_type:i,args:o}=r,l=window[i];return new l(...await Promise.all(o.map(an(n,e,t))))}else{if("base64"in r)return nP(r.base64);if("src"in r){let i=n.get(r.src);if(i)return i;{let o=new Image;return o.src=r.src,n.set(r.src,o),o}}else if("data"in r&&r.rr_type==="Blob"){let i=await Promise.all(r.data.map(an(n,e,t)));return new Blob(i,{type:r.type})}}else if(Array.isArray(r))return await Promise.all(r.map(an(n,e,t)));return r}}a(an,"deserializeArg");function gP(n,e){try{return e===Br.WebGL?n.getContext("webgl")||n.getContext("experimental-webgl"):n.getContext("webgl2")}catch{return null}}a(gP,"getContext");var yP=["WebGLActiveInfo","WebGLBuffer","WebGLFramebuffer","WebGLProgram","WebGLRenderbuffer","WebGLShader","WebGLShaderPrecisionFormat","WebGLTexture","WebGLUniformLocation","WebGLVertexArrayObject"];function bP(n,e){if(!e?.constructor)return;let{name:t}=e.constructor;if(!yP.includes(t))return;let r=mS(n,t);r.includes(e)||r.push(e)}a(bP,"saveToWebGLVarMap");async function EP({mutation:n,target:e,type:t,imageMap:r,errorHandler:i}){try{let o=gP(e,t);if(!o)return;if(n.setter){o[n.property]=n.args[0];return}let l=o[n.property],u=await Promise.all(n.args.map(an(r,o))),f=l.apply(o,u);bP(o,f);let h=!1}catch(o){i(n,o)}}a(EP,"webglMutation");async function wP({event:n,mutations:e,target:t,imageMap:r,errorHandler:i}){let o=t.getContext("2d");if(!o){i(e[0],new Error("Canvas context is null"));return}let l=e.map(async f=>Promise.all(f.args.map(an(r,o))));(await Promise.all(l)).forEach((f,h)=>{let p=e[h];try{if(p.setter){o[p.property]=p.args[0];return}let g=o[p.property];p.property==="drawImage"&&typeof p.args[0]=="string"?(r.get(n),g.apply(o,p.args)):g.apply(o,f)}catch(g){i(p,g)}})}a(wP,"canvasMutation$1");async function uE({event:n,mutation:e,target:t,imageMap:r,canvasEventMap:i,errorHandler:o}){try{let l=i.get(n)||e,u="commands"in l?l.commands:[l];if([Br.WebGL,Br.WebGL2].includes(e.type)){for(let f=0;f<u.length;f++){let h=u[f];await EP({mutation:h,type:e.type,target:t,imageMap:r,errorHandler:o})}return}await wP({event:n,mutations:u,target:t,imageMap:r,errorHandler:o})}catch(l){o(e,l)}}a(uE,"canvasMutation");var _d=class{static{a(this,"MediaManager")}constructor(e){k(this,"mediaMap",new Map),k(this,"warn"),k(this,"service"),k(this,"speedService"),k(this,"emitter"),k(this,"getCurrentTime"),k(this,"metadataCallbackMap",new Map),this.warn=e.warn,this.service=e.service,this.speedService=e.speedService,this.emitter=e.emitter,this.getCurrentTime=e.getCurrentTime,this.emitter.on(ye.Start,this.start.bind(this)),this.emitter.on(ye.SkipStart,this.start.bind(this)),this.emitter.on(ye.Pause,this.pause.bind(this)),this.emitter.on(ye.Finish,this.pause.bind(this)),this.speedService.subscribe(()=>{this.syncAllMediaElements()})}syncAllMediaElements(e={pause:!1}){this.mediaMap.forEach((t,r)=>{this.syncTargetWithState(r),e.pause&&r.pause()})}start(){this.syncAllMediaElements()}pause(){this.syncAllMediaElements({pause:!0})}seekTo({time:e,target:t,mediaState:r}){if(r.isPlaying){let o=(e-r.lastInteractionTimeOffset)/1e3*r.playbackRate,l="duration"in t&&t.duration;if(Number.isNaN(l)){this.waitForMetadata(t);return}let u=r.currentTimeAtLastInteraction+o;t.loop&&l!==!1&&(u=u%l),t.currentTime=u}else t.pause(),t.currentTime=r.currentTimeAtLastInteraction}waitForMetadata(e){if(this.metadataCallbackMap.has(e)||!("addEventListener"in e))return;let t=a(()=>{this.metadataCallbackMap.delete(e);let r=this.mediaMap.get(e);r&&this.seekTo({time:this.getCurrentTime(),target:e,mediaState:r})},"onLoadedMetadata");this.metadataCallbackMap.set(e,t),e.addEventListener("loadedmetadata",t,{once:!0})}getMediaStateFromMutation({target:e,timeOffset:t,mutation:r}){let i=this.mediaMap.get(e),{type:o,playbackRate:l,currentTime:u,muted:f,volume:h,loop:p}=r;return{isPlaying:o===on.Play||o!==on.Pause&&(i?.isPlaying||e.getAttribute("autoplay")!==null),currentTimeAtLastInteraction:u??i?.currentTimeAtLastInteraction??0,lastInteractionTimeOffset:t,playbackRate:l??i?.playbackRate??1,volume:h??i?.volume??1,muted:f??i?.muted??e.getAttribute("muted")===null,loop:p??i?.loop??e.getAttribute("loop")===null}}syncTargetWithState(e){let t=this.mediaMap.get(e);if(!t)return;let{muted:r,loop:i,volume:o,isPlaying:l}=t,u=this.service.state.matches("paused"),f=t.playbackRate*this.speedService.state.context.timer.speed;try{this.seekTo({time:this.getCurrentTime(),target:e,mediaState:t}),e.volume!==o&&(e.volume=o),e.muted=r,e.loop=i,e.playbackRate!==f&&(e.playbackRate=f),l&&!u?e.play():e.pause()}catch(h){this.warn(`Failed to replay media interactions: ${h.message||h}`)}}addMediaElements(e,t,r){if(!["AUDIO","VIDEO"].includes(e.nodeName))return;let i=e,o=r.getMeta(i);if(!o||!("attributes"in o))return;let l=this.service.state.matches("paused"),u=o.attributes,f=!1;u.rr_mediaState?f=u.rr_mediaState==="played":f=i.getAttribute("autoplay")!==null,f&&l&&i.pause();let h=1;typeof u.rr_mediaPlaybackRate=="number"&&(h=u.rr_mediaPlaybackRate);let p=!1;typeof u.rr_mediaMuted=="boolean"?p=u.rr_mediaMuted:p=i.getAttribute("muted")!==null;let g=!1;typeof u.rr_mediaLoop=="boolean"?g=u.rr_mediaLoop:g=i.getAttribute("loop")!==null;let y=1;typeof u.rr_mediaVolume=="number"&&(y=u.rr_mediaVolume);let x=0;typeof u.rr_mediaCurrentTime=="number"&&(x=u.rr_mediaCurrentTime),this.mediaMap.set(i,{isPlaying:f,currentTimeAtLastInteraction:x,lastInteractionTimeOffset:t,playbackRate:h,volume:y,muted:p,loop:g}),this.syncTargetWithState(i)}mediaMutation({target:e,timeOffset:t,mutation:r}){this.mediaMap.set(e,this.getMediaStateFromMutation({target:e,timeOffset:t,mutation:r})),this.syncTargetWithState(e)}isSupportedMediaElement(e){return["AUDIO","VIDEO"].includes(e.nodeName)}reset(){this.mediaMap.clear()}};function Wa(n,e){if(n.nodeName!=="DIALOG"||n instanceof or)return;let t=n,r=t.open,i=r&&t.matches("dialog:modal"),o=t.getAttribute("rr_open_mode"),l=typeof e?.attributes.open=="string"||typeof t.getAttribute("open")=="string",u=o==="modal";if(!(r&&!(i&&o==="non-modal"||!i&&u))){if(!t.isConnected){console.warn("dialog is not attached to the dom",t);return}r&&t.close(),l&&(u?t.showModal():t.show())}}a(Wa,"applyDialogToTopLevel");function SP(n,e){if(n.nodeName!=="DIALOG"||n instanceof or)return;let t=n;if(!t.isConnected){console.warn("dialog is not attached to the dom",t);return}e.attributes.open===null&&(t.removeAttribute("open"),t.removeAttribute("rr_open_mode"))}a(SP,"removeDialogFromTopLevel");var vP=5*1e3,CP=uS||uP,fE="[replayer]",_f={duration:500,lineCap:"round",lineWidth:3,strokeStyle:"red"};function dE(n){return n.type==W.IncrementalSnapshot&&(n.data.source==$.TouchMove||n.data.source==$.MouseInteraction&&n.data.type==K.TouchStart)}a(dE,"indicatesTouchDevice");var bl=class{static{a(this,"Replayer")}constructor(e,t){if(k(this,"wrapper"),k(this,"iframe"),k(this,"service"),k(this,"speedService"),k(this,"config"),k(this,"usingVirtualDom",!1),k(this,"virtualDom",new Ri),k(this,"mouse"),k(this,"mouseTail",null),k(this,"tailPositions",[]),k(this,"emitter",CP()),k(this,"nextUserInteractionEvent"),k(this,"legacy_missingNodeRetryMap",{}),k(this,"cache",Mb()),k(this,"imageMap",new Map),k(this,"canvasEventMap",new Map),k(this,"mirror",mE()),k(this,"styleMirror",new hl),k(this,"mediaManager"),k(this,"firstFullSnapshot",null),k(this,"newDocumentQueue",[]),k(this,"mousePos",null),k(this,"touchActive",null),k(this,"lastMouseDownEvent",null),k(this,"lastHoveredRootNode"),k(this,"lastSelectionData",null),k(this,"constructedStyleMutations",[]),k(this,"adoptedStyleSheets",[]),k(this,"handleResize",u=>{this.iframe.style.display="inherit";for(let f of[this.mouseTail,this.iframe])f&&(f.setAttribute("width",String(u.width)),f.setAttribute("height",String(u.height)))}),k(this,"applyEventsSynchronously",u=>{for(let f of u){switch(f.type){case W.DomContentLoaded:case W.Load:case W.Custom:continue;case W.FullSnapshot:case W.Meta:case W.Plugin:case W.IncrementalSnapshot:break}this.getCastFn(f,!0)()}}),k(this,"getCastFn",(u,f=!1)=>{let h;switch(u.type){case W.DomContentLoaded:case W.Load:break;case W.Custom:h=a(()=>{this.emitter.emit(ye.CustomEvent,u)},"castFn");break;case W.Meta:h=a(()=>this.emitter.emit(ye.Resize,{width:u.data.width,height:u.data.height}),"castFn");break;case W.FullSnapshot:h=a(()=>{var g;if(this.firstFullSnapshot){if(this.firstFullSnapshot===u){this.firstFullSnapshot=!0;return}}else this.firstFullSnapshot=!0;this.mediaManager.reset(),this.styleMirror.reset(),this.rebuildFullSnapshot(u,f),(g=this.iframe.contentWindow)==null||g.scrollTo(u.data.initialOffset)},"castFn");break;case W.IncrementalSnapshot:h=a(()=>{if(this.applyIncremental(u,f),!f&&(u===this.nextUserInteractionEvent&&(this.nextUserInteractionEvent=null,this.backToNormal()),this.config.skipInactive&&!this.nextUserInteractionEvent)){for(let g of this.service.state.context.events)if(!(g.timestamp<=u.timestamp)&&this.isUserInteraction(g)){g.delay-u.delay>this.config.inactivePeriodThreshold*this.speedService.state.context.timer.speed&&(this.nextUserInteractionEvent=g);break}if(this.nextUserInteractionEvent){let g=this.nextUserInteractionEvent.delay-u.delay,y={speed:Math.min(Math.round(g/vP),this.config.maxSpeed)};this.speedService.send({type:"FAST_FORWARD",payload:y}),this.emitter.emit(ye.SkipStart,y)}}},"castFn");break}return a(()=>{h&&h();for(let y of this.config.plugins||[])y.handler&&y.handler(u,f,{replayer:this});this.service.send({type:"CAST_EVENT",payload:{event:u}});let g=this.service.state.context.events.length-1;if(!this.config.liveMode&&u===this.service.state.context.events[g]){let y=a(()=>{g<this.service.state.context.events.length-1||(this.backToNormal(),this.service.send("END"),this.emitter.emit(ye.Finish))},"finish"),x=50;u.type===W.IncrementalSnapshot&&u.data.source===$.MouseMove&&u.data.positions.length&&(x+=Math.max(0,-u.data.positions[0].timeOffset)),setTimeout(y,x)}this.emitter.emit(ye.EventCast,u)},"wrappedCastFn")}),!t?.liveMode&&e.length<2)throw new Error("Replayer need at least 2 events.");let r={speed:1,maxSpeed:360,root:document.body,loadTimeout:0,skipInactive:!1,inactivePeriodThreshold:10*1e3,showWarning:!0,showDebug:!1,blockClass:"rr-block",liveMode:!1,insertStyleRules:[],triggerFocus:!0,UNSAFE_replayCanvas:!1,pauseAnimation:!0,mouseTail:_f,useVirtualDom:!0,logger:console};this.config=Object.assign({},r,t),this.handleResize=this.handleResize.bind(this),this.getCastFn=this.getCastFn.bind(this),this.applyEventsSynchronously=this.applyEventsSynchronously.bind(this),this.emitter.on(ye.Resize,this.handleResize),this.setupDom();for(let u of this.config.plugins||[])u.getMirror&&u.getMirror({nodeMirror:this.mirror});this.emitter.on(ye.Flush,()=>{if(this.usingVirtualDom){let u={mirror:this.mirror,applyCanvas:a((f,h,p)=>{uE({event:f,mutation:h,target:p,imageMap:this.imageMap,canvasEventMap:this.canvasEventMap,errorHandler:this.warnCanvasMutationFailed.bind(this)})},"applyCanvas"),applyInput:this.applyInput.bind(this),applyScroll:this.applyScroll.bind(this),applyStyleSheetMutation:a((f,h)=>{f.source===$.StyleSheetRule?this.applyStyleSheetRule(f,h):f.source===$.StyleDeclaration&&this.applyStyleDeclaration(f,h)},"applyStyleSheetMutation"),afterAppend:a((f,h)=>{for(let p of this.config.plugins||[])p.onBuild&&p.onBuild(f,{id:h,replayer:this})},"afterAppend")};if(this.iframe.contentDocument)try{ul(this.iframe.contentDocument,this.virtualDom,u,this.virtualDom.mirror)}catch(f){console.warn(f)}if(this.virtualDom.destroyTree(),this.usingVirtualDom=!1,Object.keys(this.legacy_missingNodeRetryMap).length)for(let f in this.legacy_missingNodeRetryMap)try{let h=this.legacy_missingNodeRetryMap[f],p=fl(h.node,this.mirror,this.virtualDom.mirror);ul(p,h.node,u,this.virtualDom.mirror),h.node=p}catch(h){this.warn(h)}this.constructedStyleMutations.forEach(f=>{this.applyStyleSheetMutation(f)}),this.constructedStyleMutations=[],this.adoptedStyleSheets.forEach(f=>{this.applyAdoptedStyleSheet(f)}),this.adoptedStyleSheets=[]}if(this.mousePos&&(this.moveAndHover(this.mousePos.x,this.mousePos.y,this.mousePos.id,!0,this.mousePos.debugData),this.mousePos=null),this.touchActive===!0?this.mouse.classList.add("touch-active"):this.touchActive===!1&&this.mouse.classList.remove("touch-active"),this.touchActive=null,this.lastMouseDownEvent){let[u,f]=this.lastMouseDownEvent;u.dispatchEvent(f)}this.lastMouseDownEvent=null,this.lastSelectionData&&(this.applySelection(this.lastSelectionData),this.lastSelectionData=null)}),this.emitter.on(ye.PlayBack,()=>{this.firstFullSnapshot=null,this.mirror.reset(),this.styleMirror.reset(),this.mediaManager.reset()});let i=new Ld([],{speed:this.config.speed});this.service=hP({events:e.map(u=>t&&t.unpackFn?t.unpackFn(u):u).sort((u,f)=>u.timestamp-f.timestamp),timer:i,timeOffset:0,baselineTime:0,lastPlayedEvent:null},{getCastFn:this.getCastFn,applyEventsSynchronously:this.applyEventsSynchronously,emitter:this.emitter}),this.service.start(),this.service.subscribe(u=>{this.emitter.emit(ye.StateChange,{player:u})}),this.speedService=pP({normalSpeed:-1,timer:i}),this.speedService.start(),this.speedService.subscribe(u=>{this.emitter.emit(ye.StateChange,{speed:u})}),this.mediaManager=new _d({warn:this.warn.bind(this),service:this.service,speedService:this.speedService,emitter:this.emitter,getCurrentTime:this.getCurrentTime.bind(this)});let o=this.service.state.context.events.find(u=>u.type===W.Meta),l=this.service.state.context.events.find(u=>u.type===W.FullSnapshot);if(o){let{width:u,height:f}=o.data;setTimeout(()=>{this.emitter.emit(ye.Resize,{width:u,height:f})},0)}l&&setTimeout(()=>{var u;this.firstFullSnapshot||(this.firstFullSnapshot=l,this.rebuildFullSnapshot(l),(u=this.iframe.contentWindow)==null||u.scrollTo(l.data.initialOffset))},1),this.service.state.context.events.find(dE)&&this.mouse.classList.add("touch-device")}get timer(){return this.service.state.context.timer}on(e,t){return this.emitter.on(e,t),this}off(e,t){return this.emitter.off(e,t),this}setConfig(e){Object.keys(e).forEach(t=>{e[t],this.config[t]=e[t]}),this.config.skipInactive||this.backToNormal(),typeof e.speed<"u"&&this.speedService.send({type:"SET_SPEED",payload:{speed:e.speed}}),typeof e.mouseTail<"u"&&(e.mouseTail===!1?this.mouseTail&&(this.mouseTail.style.display="none"):(this.mouseTail||(this.mouseTail=document.createElement("canvas"),this.mouseTail.width=Number.parseFloat(this.iframe.width),this.mouseTail.height=Number.parseFloat(this.iframe.height),this.mouseTail.classList.add("replayer-mouse-tail"),this.wrapper.insertBefore(this.mouseTail,this.iframe)),this.mouseTail.style.display="inherit"))}getMetaData(){let e=this.service.state.context.events[0],t=this.service.state.context.events[this.service.state.context.events.length-1];return{startTime:e.timestamp,endTime:t.timestamp,totalTime:t.timestamp-e.timestamp}}getCurrentTime(){return this.timer.timeOffset+this.getTimeOffset()}getTimeOffset(){let{baselineTime:e,events:t}=this.service.state.context;return e-t[0].timestamp}getMirror(){return this.mirror}play(e=0){var t,r;this.service.state.matches("paused")?this.service.send({type:"PLAY",payload:{timeOffset:e}}):(this.service.send({type:"PAUSE"}),this.service.send({type:"PLAY",payload:{timeOffset:e}})),(r=(t=this.iframe.contentDocument)==null?void 0:t.getElementsByTagName("html")[0])==null||r.classList.remove("rrweb-paused"),this.emitter.emit(ye.Start)}pause(e){var t,r;e===void 0&&this.service.state.matches("playing")&&this.service.send({type:"PAUSE"}),typeof e=="number"&&(this.play(e),this.service.send({type:"PAUSE"})),(r=(t=this.iframe.contentDocument)==null?void 0:t.getElementsByTagName("html")[0])==null||r.classList.add("rrweb-paused"),this.emitter.emit(ye.Pause)}resume(e=0){this.warn("The 'resume' was deprecated in 1.0. Please use 'play' method which has the same interface."),this.play(e),this.emitter.emit(ye.Resume)}destroy(){this.pause(),this.mirror.reset(),this.styleMirror.reset(),this.mediaManager.reset(),this.config.root.removeChild(this.wrapper),this.emitter.emit(ye.Destroy)}startLive(e){this.service.send({type:"TO_LIVE",payload:{baselineTime:e}})}addEvent(e){let t=this.config.unpackFn?this.config.unpackFn(e):e;dE(t)&&this.mouse.classList.add("touch-device"),Promise.resolve().then(()=>this.service.send({type:"ADD_EVENT",payload:{event:t}}))}enableInteract(){this.iframe.setAttribute("scrolling","auto"),this.iframe.style.pointerEvents="auto"}disableInteract(){this.iframe.setAttribute("scrolling","no"),this.iframe.style.pointerEvents="none"}resetCache(){this.cache=Mb()}setupDom(){this.wrapper=document.createElement("div"),this.wrapper.classList.add("replayer-wrapper"),this.config.root.appendChild(this.wrapper),this.mouse=document.createElement("div"),this.mouse.classList.add("replayer-mouse"),this.wrapper.appendChild(this.mouse),this.config.mouseTail!==!1&&(this.mouseTail=document.createElement("canvas"),this.mouseTail.classList.add("replayer-mouse-tail"),this.mouseTail.style.display="inherit",this.wrapper.appendChild(this.mouseTail)),this.iframe=document.createElement("iframe");let e=["allow-same-origin"];this.config.UNSAFE_replayCanvas&&e.push("allow-scripts"),this.iframe.style.display="none",this.iframe.setAttribute("sandbox",e.join(" ")),this.disableInteract(),this.wrapper.appendChild(this.iframe),this.iframe.contentWindow&&this.iframe.contentDocument&&(fP(this.iframe.contentWindow,this.iframe.contentDocument),Xw(this.iframe.contentWindow))}rebuildFullSnapshot(e,t=!1){if(!this.iframe.contentDocument)return this.warn("Looks like your replayer has been destroyed.");Object.keys(this.legacy_missingNodeRetryMap).length&&this.warn("Found unresolved missing node map",this.legacy_missingNodeRetryMap),this.legacy_missingNodeRetryMap={};let r=[],i=new Set,o=a((f,h)=>{if(f.nodeName==="DIALOG"&&i.add(f),this.collectIframeAndAttachDocument(r,f),this.mediaManager.isSupportedMediaElement(f)){let{events:p}=this.service.state.context;this.mediaManager.addMediaElements(f,e.timestamp-p[0].timestamp,this.mirror)}for(let p of this.config.plugins||[])p.onBuild&&p.onBuild(f,{id:h,replayer:this})},"afterAppend");this.usingVirtualDom&&(this.virtualDom.destroyTree(),this.usingVirtualDom=!1),this.mirror.reset(),u_(e.data.node,{doc:this.iframe.contentDocument,afterAppend:o,cache:this.cache,mirror:this.mirror}),o(this.iframe.contentDocument,e.data.node.id);for(let{mutationInQueue:f,builtNode:h}of r)this.attachDocumentToIframe(f,h),this.newDocumentQueue=this.newDocumentQueue.filter(p=>p!==f);let{documentElement:l,head:u}=this.iframe.contentDocument;this.insertStyleRules(l,u),i.forEach(f=>Wa(f)),this.service.state.matches("playing")||this.iframe.contentDocument.getElementsByTagName("html")[0].classList.add("rrweb-paused"),this.emitter.emit(ye.FullsnapshotRebuilded,e),t||this.waitForStylesheetLoad(),this.config.UNSAFE_replayCanvas&&this.preloadAllImages()}insertStyleRules(e,t){var r;let i=mP(this.config.blockClass).concat(this.config.insertStyleRules);if(this.config.pauseAnimation&&i.push("html.rrweb-paused *, html.rrweb-paused *:before, html.rrweb-paused *:after { animation-play-state: paused !important; }"),!!i.length)if(this.usingVirtualDom){let o=this.virtualDom.createElement("style");this.virtualDom.mirror.add(o,Vw(o,this.virtualDom.unserializedId)),e.insertBefore(o,t),o.rules.push({source:$.StyleSheetRule,adds:i.map((l,u)=>({rule:l,index:u}))})}else{let o=document.createElement("style");e.insertBefore(o,t);for(let l=0;l<i.length;l++)(r=o.sheet)==null||r.insertRule(i[l],l)}}attachDocumentToIframe(e,t){let r=this.usingVirtualDom?this.virtualDom.mirror:this.mirror,i=[],o=new Set,l=a((u,f)=>{u.nodeName==="DIALOG"&&o.add(u),this.collectIframeAndAttachDocument(i,u);let h=r.getMeta(u);if(h?.type===Fr.Element&&h?.tagName.toUpperCase()==="HTML"){let{documentElement:p,head:g}=t.contentDocument;this.insertStyleRules(p,g)}if(!this.usingVirtualDom)for(let p of this.config.plugins||[])p.onBuild&&p.onBuild(u,{id:f,replayer:this})},"afterAppend");Rs(e.node,{doc:t.contentDocument,mirror:r,hackCss:!0,skipChild:!1,afterAppend:l,cache:this.cache}),l(t.contentDocument,e.node.id);for(let{mutationInQueue:u,builtNode:f}of i)this.attachDocumentToIframe(u,f),this.newDocumentQueue=this.newDocumentQueue.filter(h=>h!==u);o.forEach(u=>Wa(u))}collectIframeAndAttachDocument(e,t){if(Is(t,this.mirror)){let r=this.newDocumentQueue.find(i=>i.parentId===this.mirror.getId(t));r&&e.push({mutationInQueue:r,builtNode:t})}}waitForStylesheetLoad(){var e;let t=(e=this.iframe.contentDocument)==null?void 0:e.head;if(t){let r=new Set,i,o=this.service.state,l=a(()=>{o=this.service.state},"stateHandler");this.emitter.on(ye.Start,l),this.emitter.on(ye.Pause,l);let u=a(()=>{this.emitter.off(ye.Start,l),this.emitter.off(ye.Pause,l)},"unsubscribe");t.querySelectorAll('link[rel="stylesheet"]').forEach(f=>{f.sheet||(r.add(f),f.addEventListener("load",()=>{r.delete(f),r.size===0&&i!==-1&&(o.matches("playing")&&this.play(this.getCurrentTime()),this.emitter.emit(ye.LoadStylesheetEnd),i&&clearTimeout(i),u())}))}),r.size>0&&(this.service.send({type:"PAUSE"}),this.emitter.emit(ye.LoadStylesheetStart),i=setTimeout(()=>{o.matches("playing")&&this.play(this.getCurrentTime()),i=-1,u()},this.config.loadTimeout))}}async preloadAllImages(){let e=[];for(let t of this.service.state.context.events)t.type===W.IncrementalSnapshot&&t.data.source===$.CanvasMutation&&(e.push(this.deserializeAndPreloadCanvasEvents(t.data,t)),("commands"in t.data?t.data.commands:[t.data]).forEach(i=>{this.preloadImages(i,t)}));return Promise.all(e)}preloadImages(e,t){if(e.property==="drawImage"&&typeof e.args[0]=="string"&&!this.imageMap.has(t)){let r=document.createElement("canvas"),i=r.getContext("2d"),o=i?.createImageData(r.width,r.height);i?.putImageData(o,0,0)}}async deserializeAndPreloadCanvasEvents(e,t){if(!this.canvasEventMap.has(t)){let r={isUnchanged:!0};if("commands"in e){let i=await Promise.all(e.commands.map(async o=>{let l=await Promise.all(o.args.map(an(this.imageMap,null,r)));return{...o,args:l}}));r.isUnchanged===!1&&this.canvasEventMap.set(t,{...e,commands:i})}else{let i=await Promise.all(e.args.map(an(this.imageMap,null,r)));r.isUnchanged===!1&&this.canvasEventMap.set(t,{...e,args:i})}}}applyIncremental(e,t){var r,i,o;let{data:l}=e;switch(l.source){case $.Mutation:{try{this.applyMutation(l,t)}catch(u){this.warn(`Exception in mutation ${u.message||u}`,l)}break}case $.Drag:case $.TouchMove:case $.MouseMove:if(t){let u=l.positions[l.positions.length-1];this.mousePos={x:u.x,y:u.y,id:u.id,debugData:l}}else l.positions.forEach(u=>{let f={doAction:a(()=>{this.moveAndHover(u.x,u.y,u.id,t,l)},"doAction"),delay:u.timeOffset+e.timestamp-this.service.state.context.baselineTime};this.timer.addAction(f)}),this.timer.addAction({doAction(){},delay:e.delay-((r=l.positions[0])==null?void 0:r.timeOffset)});break;case $.MouseInteraction:{if(l.id===-1)break;let u=new Event(ln(K[l.type])),f=this.mirror.getNode(l.id);if(!f)return this.debugNodeNotFound(l,l.id);this.emitter.emit(ye.MouseInteraction,{type:l.type,target:f});let{triggerFocus:h}=this.config;switch(l.type){case K.Blur:"blur"in f&&f.blur();break;case K.Focus:h&&f.focus&&f.focus({preventScroll:!0});break;case K.Click:case K.TouchStart:case K.TouchEnd:case K.MouseDown:case K.MouseUp:t?(l.type===K.TouchStart?this.touchActive=!0:l.type===K.TouchEnd&&(this.touchActive=!1),l.type===K.MouseDown?this.lastMouseDownEvent=[f,u]:l.type===K.MouseUp&&(this.lastMouseDownEvent=null),this.mousePos={x:l.x||0,y:l.y||0,id:l.id,debugData:l}):(l.type===K.TouchStart&&(this.tailPositions.length=0),this.moveAndHover(l.x||0,l.y||0,l.id,t,l),l.type===K.Click?(this.mouse.classList.remove("active"),this.mouse.offsetWidth,this.mouse.classList.add("active")):l.type===K.TouchStart?(this.mouse.offsetWidth,this.mouse.classList.add("touch-active")):l.type===K.TouchEnd?this.mouse.classList.remove("touch-active"):f.dispatchEvent(u));break;case K.TouchCancel:t?this.touchActive=!1:this.mouse.classList.remove("touch-active");break;default:f.dispatchEvent(u)}break}case $.Scroll:{if(l.id===-1)break;if(this.usingVirtualDom){let u=this.virtualDom.mirror.getNode(l.id);if(!u)return this.debugNodeNotFound(l,l.id);u.scrollData=l;break}this.applyScroll(l,t);break}case $.ViewportResize:this.emitter.emit(ye.Resize,{width:l.width,height:l.height});break;case $.Input:{if(l.id===-1)break;if(this.usingVirtualDom){let u=this.virtualDom.mirror.getNode(l.id);if(!u)return this.debugNodeNotFound(l,l.id);u.inputData=l;break}this.applyInput(l);break}case $.MediaInteraction:{let u=this.usingVirtualDom?this.virtualDom.mirror.getNode(l.id):this.mirror.getNode(l.id);if(!u)return this.debugNodeNotFound(l,l.id);let f=u,{events:h}=this.service.state.context;this.mediaManager.mediaMutation({target:f,timeOffset:e.timestamp-h[0].timestamp,mutation:l});break}case $.StyleSheetRule:case $.StyleDeclaration:{this.usingVirtualDom?l.styleId?this.constructedStyleMutations.push(l):l.id&&((i=this.virtualDom.mirror.getNode(l.id))==null||i.rules.push(l)):this.applyStyleSheetMutation(l);break}case $.CanvasMutation:{if(!this.config.UNSAFE_replayCanvas)return;if(this.usingVirtualDom){let u=this.virtualDom.mirror.getNode(l.id);if(!u)return this.debugNodeNotFound(l,l.id);u.canvasMutations.push({event:e,mutation:l})}else{let u=this.mirror.getNode(l.id);if(!u)return this.debugNodeNotFound(l,l.id);uE({event:e,mutation:l,target:u,imageMap:this.imageMap,canvasEventMap:this.canvasEventMap,errorHandler:this.warnCanvasMutationFailed.bind(this)})}break}case $.Font:{try{let u=new FontFace(l.family,l.buffer?new Uint8Array(JSON.parse(l.fontSource)):l.fontSource,l.descriptors);(o=this.iframe.contentDocument)==null||o.fonts.add(u)}catch(u){this.warn(u)}break}case $.Selection:{if(t){this.lastSelectionData=l;break}this.applySelection(l);break}case $.AdoptedStyleSheet:{this.usingVirtualDom?this.adoptedStyleSheets.push(l):this.applyAdoptedStyleSheet(l);break}}}applyMutation(e,t){if(this.config.useVirtualDom&&!this.usingVirtualDom&&t&&(this.usingVirtualDom=!0,wk(this.iframe.contentDocument,this.mirror,this.virtualDom),Object.keys(this.legacy_missingNodeRetryMap).length))for(let h in this.legacy_missingNodeRetryMap)try{let p=this.legacy_missingNodeRetryMap[h],g=Ww(p.node,this.virtualDom,this.mirror);g&&(p.node=g)}catch(p){this.warn(p)}let r=this.usingVirtualDom?this.virtualDom.mirror:this.mirror;e.removes=e.removes.filter(h=>r.getNode(h.id)?!0:(this.warnNodeNotFound(e,h.id),!1)),e.removes.forEach(h=>{var p;let g=r.getNode(h.id);if(!g)return;let y=r.getNode(h.parentId);if(!y)return this.warnNodeNotFound(e,h.parentId);if(h.isShadow&&Nn(y)&&(y=y.shadowRoot),r.removeNodeFromMap(g),y)try{y.removeChild(g),this.usingVirtualDom&&g.nodeName==="#text"&&y.nodeName==="STYLE"&&((p=y.rules)==null?void 0:p.length)>0&&(y.rules=[])}catch(x){if(x instanceof DOMException)this.warn("parent could not remove child in mutation",y,g,e);else throw x}});let i={...this.legacy_missingNodeRetryMap},o=[],l=a(h=>{let p=null;return h.nextId&&(p=r.getNode(h.nextId)),h.nextId!==null&&h.nextId!==void 0&&h.nextId!==-1&&!p},"nextNotInDOM"),u=a(h=>{var p,g;if(!this.iframe.contentDocument)return this.warn("Looks like your replayer has been destroyed.");let y=r.getNode(h.parentId);if(!y)return h.node.type===Fr.Document?this.newDocumentQueue.push(h):o.push(h);h.node.isShadow&&(Nn(y)||y.attachShadow({mode:"open"}),y=y.shadowRoot);let x=null,w=null;if(h.previousId&&(x=r.getNode(h.previousId)),h.nextId&&(w=r.getNode(h.nextId)),l(h))return o.push(h);if(h.node.rootId&&!r.getNode(h.node.rootId))return;let C=h.node.rootId?r.getNode(h.node.rootId):this.usingVirtualDom?this.virtualDom:this.iframe.contentDocument;if(Is(y,r)){this.attachDocumentToIframe(h,y);return}let E=a((R,L)=>{if(!this.usingVirtualDom){Wa(R);for(let B of this.config.plugins||[])B.onBuild&&B.onBuild(R,{id:L,replayer:this})}},"afterAppend"),M=Rs(h.node,{doc:C,mirror:r,skipChild:!0,hackCss:!0,cache:this.cache,afterAppend:E});if(h.previousId===-1||h.nextId===-1){i[h.node.id]={node:M,mutation:h};return}let O=r.getMeta(y);if(O&&O.type===Fr.Element&&h.node.type===Fr.Text){let R=Array.isArray(y.childNodes)?y.childNodes:Array.from(y.childNodes);if(O.tagName==="textarea")for(let L of R)L.nodeType===y.TEXT_NODE&&y.removeChild(L);else if(O.tagName==="style"&&R.length===1)for(let L of R)L.nodeType===y.TEXT_NODE&&!r.hasNode(L)&&(M.textContent=L.textContent,y.removeChild(L))}else if(O?.type===Fr.Document){let R=y;h.node.type===Fr.DocumentType&&((p=R.childNodes[0])==null?void 0:p.nodeType)===Node.DOCUMENT_TYPE_NODE&&R.removeChild(R.childNodes[0]),M.nodeName==="HTML"&&R.documentElement&&R.removeChild(R.documentElement)}if(x&&x.nextSibling&&x.nextSibling.parentNode?y.insertBefore(M,x.nextSibling):w&&w.parentNode?y.contains(w)?y.insertBefore(M,w):y.insertBefore(M,null):y.appendChild(M),E(M,h.node.id),this.usingVirtualDom&&M.nodeName==="#text"&&y.nodeName==="STYLE"&&((g=y.rules)==null?void 0:g.length)>0&&(y.rules=[]),Is(M,this.mirror)){let R=this.mirror.getId(M),L=this.newDocumentQueue.find(B=>B.parentId===R);L&&(this.attachDocumentToIframe(L,M),this.newDocumentQueue=this.newDocumentQueue.filter(B=>B!==L))}(h.previousId||h.nextId)&&this.legacy_resolveMissingNode(i,y,M,h)},"appendNode");e.adds.forEach(h=>{u(h)});let f=Date.now();for(;o.length;){let h=kk(o);if(o.length=0,Date.now()-f>500){this.warn("Timeout in the loop, please check the resolve tree data:",h);break}for(let p of h)r.getNode(p.value.parentId)?Zw(p,y=>{u(y)}):this.debug("Drop resolve tree since there is no parent for the root node.",p)}Object.keys(i).length&&Object.assign(this.legacy_missingNodeRetryMap,i),Pk(e.texts).forEach(h=>{var p;let g=r.getNode(h.id);if(!g)return e.removes.find(x=>x.id===h.id)?void 0:this.warnNodeNotFound(e,h.id);let y=g.parentElement;if(h.value&&y&&y.tagName==="STYLE"?g.textContent=xl(h.value,this.cache):g.textContent=h.value,this.usingVirtualDom){let x=g.parentNode;((p=x?.rules)==null?void 0:p.length)>0&&(x.rules=[])}}),e.attributes.forEach(h=>{var p;let g=r.getNode(h.id);if(!g)return e.removes.find(y=>y.id===h.id)?void 0:this.warnNodeNotFound(e,h.id);for(let y in h.attributes)if(typeof y=="string"){let x=h.attributes[y];if(x===null)g.removeAttribute(y),y==="open"&&SP(g,h);else if(typeof x=="string")try{if(y==="_cssText"&&(g.nodeName==="LINK"||g.nodeName==="STYLE"))try{let w=r.getMeta(g),C=Rs({...w,attributes:{...w.attributes,...h.attributes}},{doc:g.ownerDocument,mirror:r,skipChild:!0,hackCss:!0,cache:this.cache});Object.assign(w.attributes,h.attributes);let E=g.nextSibling,M=g.parentNode;if(C&&M){M.removeChild(g),M.insertBefore(C,E),r.replace(h.id,C);break}}catch{}if(y==="value"&&g.nodeName==="TEXTAREA"){let w=g;w.childNodes.forEach(E=>w.removeChild(E));let C=(p=g.ownerDocument)==null?void 0:p.createTextNode(x);C&&w.appendChild(C)}else g.setAttribute(y,x);y==="rr_open_mode"&&g.nodeName==="DIALOG"&&Wa(g,h)}catch(w){this.warn("An error occurred may due to the checkout feature.",w)}else if(y==="style"){let w=x,C=g;for(let E in w)if(w[E]===!1)C.style.removeProperty(E);else if(w[E]instanceof Array){let M=w[E];C.style.setProperty(E,M[0],M[1])}else{let M=w[E];C.style.setProperty(E,M)}}}})}applyScroll(e,t){var r,i;let o=this.mirror.getNode(e.id);if(!o)return this.debugNodeNotFound(e,e.id);let l=this.mirror.getMeta(o);if(o===this.iframe.contentDocument)(r=this.iframe.contentWindow)==null||r.scrollTo({top:e.y,left:e.x,behavior:t?"auto":"smooth"});else if(l?.type===Fr.Document)(i=o.defaultView)==null||i.scrollTo({top:e.y,left:e.x,behavior:t?"auto":"smooth"});else try{o.scrollTo({top:e.y,left:e.x,behavior:t?"auto":"smooth"})}catch{}}applyInput(e){let t=this.mirror.getNode(e.id);if(!t)return this.debugNodeNotFound(e,e.id);try{t.checked=e.isChecked,t.value=e.text}catch{}}applySelection(e){try{let t=new Set,r=e.ranges.map(({start:i,startOffset:o,end:l,endOffset:u})=>{let f=this.mirror.getNode(i),h=this.mirror.getNode(l);if(!f||!h)return;let p=new Range;p.setStart(f,o),p.setEnd(h,u);let g=f.ownerDocument,y=g?.getSelection();return y&&t.add(y),{range:p,selection:y}});t.forEach(i=>i.removeAllRanges()),r.forEach(i=>{var o;return i&&((o=i.selection)==null?void 0:o.addRange(i.range))})}catch{}}applyStyleSheetMutation(e){var t;let r=null;e.styleId?r=this.styleMirror.getStyle(e.styleId):e.id&&(r=((t=this.mirror.getNode(e.id))==null?void 0:t.sheet)||null),r&&(e.source===$.StyleSheetRule?this.applyStyleSheetRule(e,r):e.source===$.StyleDeclaration&&this.applyStyleDeclaration(e,r))}applyStyleSheetRule(e,t){var r,i,o,l;if((r=e.adds)==null||r.forEach(({rule:u,index:f})=>{try{if(Array.isArray(f)){let{positions:h,index:p}=qb(f);Cs(t.cssRules,h).insertRule(u,p)}else{let h=f===void 0?void 0:Math.min(f,t.cssRules.length);t?.insertRule(u,h)}}catch{}}),(i=e.removes)==null||i.forEach(({index:u})=>{try{if(Array.isArray(u)){let{positions:f,index:h}=qb(u);Cs(t.cssRules,f).deleteRule(h||0)}else t?.deleteRule(u)}catch{}}),e.replace)try{(o=t.replace)==null||o.call(t,e.replace)}catch{}if(e.replaceSync)try{(l=t.replaceSync)==null||l.call(t,e.replaceSync)}catch{}}applyStyleDeclaration(e,t){e.set&&Cs(t.rules,e.index).style.setProperty(e.set.property,e.set.value,e.set.priority),e.remove&&Cs(t.rules,e.index).style.removeProperty(e.remove.property)}applyAdoptedStyleSheet(e){var t;let r=this.mirror.getNode(e.id);if(!r)return;(t=e.styles)==null||t.forEach(u=>{var f;let h=null,p=null;if(Nn(r)?p=((f=r.ownerDocument)==null?void 0:f.defaultView)||null:r.nodeName==="#document"&&(p=r.defaultView),!!p)try{h=new p.CSSStyleSheet,this.styleMirror.add(h,u.styleId),this.applyStyleSheetRule({source:$.StyleSheetRule,adds:u.rules},h)}catch{}});let i=10,o=0,l=a((u,f)=>{let h=f.map(p=>this.styleMirror.getStyle(p)).filter(p=>p!==null);Nn(u)?u.shadowRoot.adoptedStyleSheets=h:u.nodeName==="#document"&&(u.adoptedStyleSheets=h),h.length!==f.length&&o<i&&(setTimeout(()=>l(u,f),0+100*o),o++)},"adoptStyleSheets");l(r,e.styleIds)}legacy_resolveMissingNode(e,t,r,i){let{previousId:o,nextId:l}=i,u=o&&e[o],f=l&&e[l];if(u){let{node:h,mutation:p}=u;t.insertBefore(h,r),delete e[p.node.id],delete this.legacy_missingNodeRetryMap[p.node.id],(p.previousId||p.nextId)&&this.legacy_resolveMissingNode(e,t,h,p)}if(f){let{node:h,mutation:p}=f;t.insertBefore(h,r.nextSibling),delete e[p.node.id],delete this.legacy_missingNodeRetryMap[p.node.id],(p.previousId||p.nextId)&&this.legacy_resolveMissingNode(e,t,h,p)}}moveAndHover(e,t,r,i,o){let l=this.mirror.getNode(r);if(!l)return this.debugNodeNotFound(o,r);let u=Qw(l,this.iframe),f=e*u.absoluteScale+u.x,h=t*u.absoluteScale+u.y;this.mouse.style.left=`${f}px`,this.mouse.style.top=`${h}px`,i||this.drawMouseTail({x:f,y:h}),this.hoverElements(l)}drawMouseTail(e){if(!this.mouseTail)return;let{lineCap:t,lineWidth:r,strokeStyle:i,duration:o}=this.config.mouseTail===!0?_f:Object.assign({},_f,this.config.mouseTail),l=a(()=>{if(!this.mouseTail)return;let u=this.mouseTail.getContext("2d");!u||!this.tailPositions.length||(u.clearRect(0,0,this.mouseTail.width,this.mouseTail.height),u.beginPath(),u.lineWidth=r,u.lineCap=t,u.strokeStyle=i,u.moveTo(this.tailPositions[0].x,this.tailPositions[0].y),this.tailPositions.forEach(f=>u.lineTo(f.x,f.y)),u.stroke())},"draw");this.tailPositions.push(e),l(),setTimeout(()=>{this.tailPositions=this.tailPositions.filter(u=>u!==e),l()},o/this.speedService.state.context.timer.speed)}hoverElements(e){var t;(t=this.lastHoveredRootNode||this.iframe.contentDocument)==null||t.querySelectorAll(".\\:hover").forEach(i=>{i.classList.remove(":hover")}),this.lastHoveredRootNode=e.getRootNode();let r=e;for(;r;)r.classList&&r.classList.add(":hover"),r=r.parentElement}isUserInteraction(e){return e.type!==W.IncrementalSnapshot?!1:e.data.source>$.Mutation&&e.data.source<=$.Input}backToNormal(){this.nextUserInteractionEvent=null,!this.speedService.state.matches("normal")&&(this.speedService.send({type:"BACK_TO_NORMAL"}),this.emitter.emit(ye.SkipEnd,{speed:this.speedService.state.context.normalSpeed}))}warnNodeNotFound(e,t){this.warn(`Node with id '${t}' not found. `,e)}warnCanvasMutationFailed(e,t){this.warn("Has error on canvas update",t,"canvas mutation:",e)}debugNodeNotFound(e,t){this.debug(`Node with id '${t}' not found. `,e)}warn(...e){this.config.showWarning&&this.config.logger.warn(fE,...e)}debug(...e){this.config.showDebug&&this.config.logger.log(fE,...e)}},{addCustomEvent:D5}=Zt,{freezePage:k5}=Zt,{takeFullSnapshot:P5}=Zt,xP="0.0.3-beta.1";typeof window<"u"&&(window.checksumRRWeb={version:xP});var MP=a(n=>n&&(n instanceof HTMLInputElement&&/|text|email|number|password|search|tel|url/.test(n.type||"")||n instanceof HTMLTextAreaElement)?!(n.disabled||n.readOnly):!1,"isEditableInputOrTextArea"),TP=a(n=>(n.ctrlKey?"ctrl ":"")+(n.altKey?"alt ":"")+(n.shiftKey?"shift ":"")+(n.metaKey?"meta ":"")+n.key,"formatKeyProperties"),yS=a(n=>{let e=a((r,i)=>{n({key:r,eventTarget:i})},"sendKeyEvent"),t=a(r=>{try{if(MP(r.target))return;e(TP(r),r.target)}catch{}},"onKeyUp");window.addEventListener("keyup",r=>{t(r)})},"startKeyboardObserver");var Nl=class n{constructor(e=document,t){this.target=e;this.onEvent=t;this.monitoredTextElements=[];this.inputEnabledSelectors=["[contenteditable=true]"].join(",");this.iframeObservers=[];this.monitorInputEnabledElement=a(e=>{e.addEventListener("input",t=>{this.onEvent({text:t.target.innerText,eventTarget:t.target})})},"monitorInputEnabledElement")}static{a(this,"ContendEditableObserver")}startObserver(){this.startIframesObserver(),this.observer=new MutationObserver(e=>{e.forEach(t=>{t.addedNodes.forEach(r=>{if(r.nodeType!==Node.ELEMENT_NODE)return;let i=r;i.matches(this.inputEnabledSelectors)||i.isContentEditable?this.monitorInputEnabledElement(i):Array.from(le("*",i)).filter(o=>o.matches(this.inputEnabledSelectors)||o.isContentEditable).forEach(this.monitorInputEnabledElement)})})}),this.observer.observe(this.target,{childList:!0,subtree:!0,attributes:!0,characterData:!0,attributeOldValue:!0,characterDataOldValue:!0}),this.startInputMonitoring()}startIframesObserver(){setInterval(()=>{le("iframe",this.target).forEach(t=>{if(this.iframeObservers.some(l=>l.iframe===t))return;let r=a(l=>{if(l.iframe.contentWindow)try{l.observer=new n(l.iframe.contentWindow.document,this.onEvent),l.observer.startObserver()}catch{}},"observeIframe"),i=t,o={iframe:i,observer:null};this.iframeObservers.push(o),i.contentWindow?r(o):i.addEventListener("load",()=>{r(o)})})},500)}startInputMonitoring(){this.monitoredTextElements=le(this.inputEnabledSelectors,this.target),this.monitoredTextElements.forEach(this.monitorInputEnabledElement)}};var Ll=class{constructor(e){this.onEvent=e;this.onURLChange=a(()=>{setTimeout(()=>{let e=window.location.href;if(e!==this.currentURL){this.currentURL=e;try{this.onEvent({url:e})}catch{}}})},"onURLChange")}static{a(this,"URLObserver")}start(){window.addEventListener("popstate",()=>{this.onURLChange()}),window.addEventListener("locationchange",()=>{this.onURLChange()}),window.addEventListener("hashchange",()=>{this.onURLChange()});let e=window.history.pushState;window.history.pushState=(...r)=>(this.onURLChange(),e.apply(window.history,r));let t=window.history.replaceState;window.history.replaceState=(...r)=>(this.onURLChange(),t.apply(window.history,r))}};var fn={defaultMerge:Symbol("deepmerge-ts: default merge"),skip:Symbol("deepmerge-ts: skip")},q5={defaultMerge:fn.defaultMerge};function RP(n,e){return e}a(RP,"defaultMetaDataUpdater");function IP(n,e){return n.filter(t=>t!==void 0)}a(IP,"defaultFilterValues");var bS;(function(n){n[n.NOT=0]="NOT",n[n.RECORD=1]="RECORD",n[n.ARRAY=2]="ARRAY",n[n.SET=3]="SET",n[n.MAP=4]="MAP",n[n.OTHER=5]="OTHER"})(bS||(bS={}));function ES(n){return typeof n!="object"||n===null?0:Array.isArray(n)?2:NP(n)?1:n instanceof Set?3:n instanceof Map?4:5}a(ES,"getObjectType");function AP(n){let e=new Set;for(let t of n)for(let r of[...Object.keys(t),...Object.getOwnPropertySymbols(t)])e.add(r);return e}a(AP,"getKeys");function OP(n,e){return typeof n=="object"&&Object.prototype.propertyIsEnumerable.call(n,e)}a(OP,"objectHasProperty");function SS(n){let e=0,t=n[0]?.[Symbol.iterator]();return{[Symbol.iterator](){return{next(){do{if(t===void 0)return{done:!0,value:void 0};let r=t.next();if(r.done===!0){e+=1,t=n[e]?.[Symbol.iterator]();continue}return{done:!1,value:r.value}}while(!0)}}}}}a(SS,"getIterableOfIterables");var wS=["[object Object]","[object Module]"];function NP(n){if(!wS.includes(Object.prototype.toString.call(n)))return!1;let{constructor:e}=n;if(e===void 0)return!0;let t=e.prototype;return!(t===null||typeof t!="object"||!wS.includes(Object.prototype.toString.call(t))||!t.hasOwnProperty("isPrototypeOf"))}a(NP,"isRecord");function LP(n,e,t){let r={};for(let i of AP(n)){let o=[];for(let f of n)OP(f,i)&&o.push(f[i]);if(o.length===0)continue;let l=e.metaDataUpdater(t,{key:i,parents:n}),u=CS(o,e,l);u!==fn.skip&&(i==="__proto__"?Object.defineProperty(r,i,{value:u,configurable:!0,enumerable:!0,writable:!0}):r[i]=u)}return r}a(LP,"mergeRecords$1");function _P(n){return n.flat()}a(_P,"mergeArrays$1");function DP(n){return new Set(SS(n))}a(DP,"mergeSets$1");function kP(n){return new Map(SS(n))}a(kP,"mergeMaps$1");function PP(n){return n.at(-1)}a(PP,"mergeOthers$1");var _l={mergeRecords:LP,mergeArrays:_P,mergeSets:DP,mergeMaps:kP,mergeOthers:PP};function vS(...n){return FP({})(...n)}a(vS,"deepmerge");function FP(n,e){let t=HP(n,r);function r(...i){return CS(i,t,e)}return a(r,"customizedDeepmerge"),r}a(FP,"deepmergeCustom");function HP(n,e){return{defaultMergeFunctions:_l,mergeFunctions:{..._l,...Object.fromEntries(Object.entries(n).filter(([t,r])=>Object.hasOwn(_l,t)).map(([t,r])=>r===!1?[t,_l.mergeOthers]:[t,r]))},metaDataUpdater:n.metaDataUpdater??RP,deepmerge:e,useImplicitDefaultMerging:n.enableImplicitDefaultMerging??!1,filterValues:n.filterValues===!1?void 0:n.filterValues??IP,actions:fn}}a(HP,"getUtils");function CS(n,e,t){let r=e.filterValues?.(n,t)??n;if(r.length===0)return;if(r.length===1)return ah(r,e,t);let i=ES(r[0]);if(i!==0&&i!==5){for(let o=1;o<r.length;o++)if(ES(r[o])!==i)return ah(r,e,t)}switch(i){case 1:return $P(r,e,t);case 2:return BP(r,e,t);case 3:return WP(r,e,t);case 4:return VP(r,e,t);default:return ah(r,e,t)}}a(CS,"mergeUnknowns");function $P(n,e,t){let r=e.mergeFunctions.mergeRecords(n,e,t);return r===fn.defaultMerge||e.useImplicitDefaultMerging&&r===void 0&&e.mergeFunctions.mergeRecords!==e.defaultMergeFunctions.mergeRecords?e.defaultMergeFunctions.mergeRecords(n,e,t):r}a($P,"mergeRecords");function BP(n,e,t){let r=e.mergeFunctions.mergeArrays(n,e,t);return r===fn.defaultMerge||e.useImplicitDefaultMerging&&r===void 0&&e.mergeFunctions.mergeArrays!==e.defaultMergeFunctions.mergeArrays?e.defaultMergeFunctions.mergeArrays(n):r}a(BP,"mergeArrays");function WP(n,e,t){let r=e.mergeFunctions.mergeSets(n,e,t);return r===fn.defaultMerge||e.useImplicitDefaultMerging&&r===void 0&&e.mergeFunctions.mergeSets!==e.defaultMergeFunctions.mergeSets?e.defaultMergeFunctions.mergeSets(n):r}a(WP,"mergeSets");function VP(n,e,t){let r=e.mergeFunctions.mergeMaps(n,e,t);return r===fn.defaultMerge||e.useImplicitDefaultMerging&&r===void 0&&e.mergeFunctions.mergeMaps!==e.defaultMergeFunctions.mergeMaps?e.defaultMergeFunctions.mergeMaps(n):r}a(VP,"mergeMaps");function ah(n,e,t){let r=e.mergeFunctions.mergeOthers(n,e,t);return r===fn.defaultMerge||e.useImplicitDefaultMerging&&r===void 0&&e.mergeFunctions.mergeOthers!==e.defaultMergeFunctions.mergeOthers?e.defaultMergeFunctions.mergeOthers(n):r}a(ah,"mergeOthers");var UP=a(()=>{},"selfObserveMutationCallback"),zP={sampling:{mousemove:!1},userTriggeredOnInput:!0,maskInputOptions:{password:!1}},Dl=class{constructor(e,t={}){this.eventHandler=e;this.options=t;this.logNativeMutationObserver=!1;this.stopRRWebRecording=a(()=>{},"stopRRWebRecording");this.start=a(()=>{this.stopRRWebRecording=Zt({...this.options,emit:a((e,t)=>{this.eventHandler(e,t)},"emit")})??(()=>{}),this.logNativeMutationObserver&&this.selfObserve(),this.startURLObserver(),this.startKeyboardObserver(),this.startContentEditableObserver()},"start");this.stop=a(()=>{this.stopRRWebRecording()},"stop");this.startURLObserver=a(()=>{this.urlObserver=new Ll(({url:e})=>{let t={url:e};this.addCustomEvent("url-change",t)}),this.urlObserver.start()},"startURLObserver");this.startContentEditableObserver=a(()=>{this.contentEditableObserver=new Nl(document,({text:e,eventTarget:t})=>{let r={text:e,id:this.tryGetMetaFromEventTarget(t)?.id};this.addCustomEvent("contenteditable-input",r)}),this.contentEditableObserver.startObserver()},"startContentEditableObserver");this.startKeyboardObserver=a(()=>{yS(({key:e,eventTarget:t})=>{let r={key:e,id:this.tryGetMetaFromEventTarget(t)?.id};this.addCustomEvent("key-stroke",r)})},"startKeyboardObserver");this.addCustomEvent=a((e,t)=>{try{Zt.addCustomEvent(e,t)}catch{}},"addCustomEvent");this.tryGetMetaFromEventTarget=a(e=>{let t;try{t=this.getMeta(e)}catch{}return t},"tryGetMetaFromEventTarget");this.selfObserve=a(()=>{let e=document.getElementsByTagName("body"),t={attributes:!0,childList:!0,subtree:!0},r=new MutationObserver(UP),i=e[0];i&&r.observe(i,t)},"selfObserve");this.getNodeById=a(e=>Zt.mirror.getNode(e),"getNodeById");this.getMeta=a(e=>Zt.mirror.getMeta(e),"getMeta");this.eventHandler=e,this.options=vS(zP,t)}static{a(this,"SessionRecorder")}};var xS=[{selector:'path[d="M17.5 13V15.6667C17.5 16.0203 17.3361 16.3594 17.0444 16.6095C16.7527 16.8595 16.357 17 15.9444 17H5.05556C4.643 17 4.24733 16.8595 3.95561 16.6095C3.66389 16.3594 3.5 16.0203 3.5 15.6667V13"] + path[d="M14.6673 6.92057L10.5007 2.75391L6.33398 6.92057"] + path[d="M10.5 2.75391V12.7539"]',description:"export button"},{selector:'path[d="M16.0893 13.1868C16.6838 12.7754 17.1321 12.1858 17.3697 11.503C17.6072 10.8202 17.6216 10.0796 17.4107 9.38816C17.1999 8.69667 16.7748 8.09007 16.1968 7.65594C15.6187 7.2218 14.9177 6.9826 14.1948 6.97285H12.8308C12.6017 6.20011 12.1996 5.48973 11.6549 4.89565C11.1102 4.30157 10.4374 3.83943 9.68735 3.54431C8.93734 3.24918 8.12995 3.12885 7.32648 3.19244C6.52301 3.25603 5.7446 3.50187 5.05036 3.9113C4.35612 4.32072 3.7643 4.88297 3.31985 5.55533C2.8754 6.22769 2.59001 6.99248 2.48535 7.79164C2.38068 8.59079 2.4595 9.40329 2.71582 10.1674C2.97214 10.9316 3.39921 11.6272 3.96461 12.2016"] + path[d="M10.0273 10.0039V16.8241"] + path[d="M13.0585 13.0351L10.0273 10.0039L6.99609 13.0351"]',description:"import button"},{selector:'path[d="M20.4696 21.5303C20.7625 21.8232 21.2373 21.8232 21.5302 21.5303C21.8231 21.2374 21.8231 20.7626 21.5302 20.4697L20.4696 21.5303ZM17.1802 16.1197C16.8873 15.8268 16.4125 15.8268 16.1196 16.1197C15.8267 16.4126 15.8267 16.8874 16.1196 17.1803L17.1802 16.1197ZM18.25 11C18.25 15.0041 15.0041 18.25 11 18.25V19.75C15.8325 19.75 19.75 15.8325 19.75 11H18.25ZM11 18.25C6.99594 18.25 3.75 15.0041 3.75 11H2.25C2.25 15.8325 6.16751 19.75 11 19.75V18.25ZM3.75 11C3.75 6.99594 6.99594 3.75 11 3.75V2.25C6.16751 2.25 2.25 6.16751 2.25 11H3.75ZM11 3.75C15.0041 3.75 18.25 6.99594 18.25 11H19.75C19.75 6.16751 15.8325 2.25 11 2.25V3.75ZM21.5302 20.4697L17.1802 16.1197L16.1196 17.1803L20.4696 21.5303L21.5302 20.4697Z"]',description:"search"},{selector:'path[d="M3.75 10H16.875"] + path[d="M8.125 5L3.125 10L8.125 15"]',description:"back"},{selector:'path[d="M3.33301 8H12.6663"] + path[d="M8 3.33331L12.6667 7.99998L8 12.6666"]',description:"forward"},{selector:'path[d="M10 4.16667V15.8333"] + path[d="M4.16699 10H15.8337"]',description:"new or Add button"},{selector:'path[d="M10 10.75C10.4142 10.75 10.75 10.4142 10.75 10C10.75 9.58579 10.4142 9.25 10 9.25C9.58579 9.25 9.25 9.58579 9.25 10C9.25 10.4142 9.58579 10.75 10 10.75Z"] + path[d="M15.833 10.75C16.2472 10.75 16.583 10.4142 16.583 10C16.583 9.58579 16.2472 9.25 15.833 9.25C15.4188 9.25 15.083 9.58579 15.083 10C15.083 10.4142 15.4188 10.75 15.833 10.75Z"] + path[d="M4.16699 10.75C4.58121 10.75 4.91699 10.4142 4.91699 10C4.91699 9.58579 4.58121 9.25 4.16699 9.25C3.75278 9.25 3.41699 9.58579 3.41699 10C3.41699 10.4142 3.75278 10.75 4.16699 10.75Z"]',description:"open menu"},{selector:'path[d="M10 4.16667V15.8333"] + path[d="M4.16699 10H15.8337"]',description:"add filter"},{selector:'path[d="M15 5L5 15"] + path[d="M5 5L15 15"]',description:"close or remove"},{selector:'path[d="M4 6L8 10L12 6"]',description:"open or close dropdown"},{selector:'path[d="M10 17.5C14.1421 17.5 17.5 14.1421 17.5 10C17.5 5.85786 14.1421 2.5 10 2.5C5.85786 2.5 2.5 5.85786 2.5 10C2.5 14.1421 5.85786 17.5 10 17.5Z"] + path[d="M12.5 7.5L7.5 12.5"] + path[d="M7.5 7.5L12.5 12.5"]',description:"clear input"},{selector:'path[d="M3.33301 5.49054H4.81449H16.6663"] + path[d="M7.14286 5.49999V3.99999C7.14286 3.60216 7.29337 3.22063 7.56128 2.93932C7.82919 2.65802 8.19255 2.49998 8.57143 2.49998H11.4286C11.8075 2.49998 12.1708 2.65802 12.4387 2.93932C12.7066 3.22063 12.8571 3.60216 12.8571 3.99999V5.49999M15 5.49999V16C15 16.3978 14.8495 16.7793 14.5816 17.0607C14.3137 17.342 13.9503 17.5 13.5714 17.5H6.42857C6.04969 17.5 5.68633 17.342 5.41842 17.0607C5.15051 16.7793 5 16.3978 5 16V5.49999H15Z"] + path[d="M8.33203 9.23726V13.4039"] + path[d="M11.666 9.23726V13.4039"]',description:"delete"},{selector:'path[d="M13.3334 4L6.00008 11.3333L2.66675 8"]',description:"checked"},{selector:'path[d="M4.516 7.548c0.436-0.446 1.043-0.481 1.576 0l3.908 3.747 3.908-3.747c0.533-0.481 1.141-0.446 1.574 0 0.436 0.445 0.408 1.197 0 1.615-0.406 0.418-4.695 4.502-4.695 4.502-0.217 0.223-0.502 0.335-0.787 0.335s-0.57-0.112-0.789-0.335c0 0-4.287-4.084-4.695-4.502s-0.436-1.17 0-1.615z"]',description:"downward-pointing arrow"},{selector:'path[d="M18.0893 3.08926C18.4147 2.76382 18.4147 2.23618 18.0893 1.91074C17.7638 1.58531 17.2362 1.58531 16.9107 1.91074L18.0893 3.08926ZM9.41074 9.41074L8.82149 10L10 11.1785L10.5893 10.5893L9.41074 9.41074ZM16.9107 1.91074L9.41074 9.41074L10.5893 10.5893L18.0893 3.08926L16.9107 1.91074Z"] + path[d="M17.5 2.5L12.25 17.5L9.25 10.75L2.5 7.75L17.5 2.5Z"]',description:"send"}];var GP=300*1e3,kl=class{constructor(){this.observer=null;this.monitoringPeriodTimeout=null;this.flashingTextElements=[]}static{a(this,"FlashingElementsDetector")}start(){this.stop(),this.flashingTextElements=[],this.observer=new MutationObserver(e=>{e.forEach(t=>{t.addedNodes.length>0&&t.addedNodes.forEach(r=>{r instanceof HTMLElement&&this.includeElement(r)&&setTimeout(()=>{this.flashingTextElements.push(this.processTextElements(r))},1e3)})})}),this.observer.observe(document.body,{childList:!0,subtree:!0}),this.monitoringPeriodTimeout=setTimeout(()=>{this.stop()},GP)}stop(){this.monitoringPeriodTimeout&&(clearTimeout(this.monitoringPeriodTimeout),this.monitoringPeriodTimeout=null),this.observer&&(this.observer.disconnect(),this.observer=null)}get(){let e=this.flashingTextElements.map(r=>r.filter(i=>!i.isConnected||!i.parentElement||dt(i.parentElement).isHidden)).filter(r=>r.length).map(r=>`<span>${r.map(i=>i.textContent).join("</span><span>")}</span>`),t=new Set(e);return Array.from(t)}stopAndGet(){return this.stop(),this.get()}includeElement(e){return!(e.getElementsByTagName("*").length>50||e.outerHTML.length>5e3)}processTextElements(e){let t=document.createTreeWalker(e,NodeFilter.SHOW_TEXT,null),r,i=[];for(;r=t.nextNode();){let o=r.parentElement;r instanceof Text&&o&&!dt(o).isHidden&&i.push(r)}return i}};var Pn=class{static{a(this,"AlphaNumericCounter")}constructor(e){this.counter=e??"0"}increment(){let e=this.counter.length-1;for(;e>=0;){let t=this.counter.charAt(e);if(t==="9"){this.counter=this.replaceAt(this.counter,e,"a");return}if(t==="z"){if(this.counter=this.replaceAt(this.counter,e,"0"),e===0){this.counter="1"+this.counter;return}e--}else{this.counter=this.replaceAt(this.counter,e,String.fromCharCode(t.charCodeAt(0)+1));return}}}get(){return this.counter}incrementAndGet(){return this.increment(),this.get()}getAndIncrement(){let e=this.get();return this.increment(),e}replaceAt(e,t,r){return e.slice(0,t)+r+e.slice(t+r.length)}static compare(e,t){let r=e.length,i=t.length;if(r!==i)return r-i;for(let o=0;o<r;o++){let l=e.charCodeAt(o),u=t.charCodeAt(o);if(l!==u)return l-u}return 0}};var js="checksum-ignore",Fl="checksum-get-more-items",MS=20,jP=.7,Pl,TS,qP=0,RS=a((n,{forceIncludeAttribute:e,forceIncludeFileInput:t,forceIncludeElements:r,limit:i}={})=>{n.excludedElements?.forEach(w=>{w.removeAttribute(js)});let o=new Set;n.excludedElements=o;let l=n.element,u=i??Math.min(Math.ceil(l.children.length*.5),l.children.length-MS),f=a(w=>e&&(w.hasAttribute(e)||Array.from(w.querySelectorAll(`[${e}]`)).length>0)||t&&w.tagName.toLowerCase()==="input"&&w.type==="file"?!0:r?.includes(w)??!1,"isForceIncluded"),h=a(w=>{let C=0;if(n.elementsToKeep.includes(w))return C;let E=lh(w);E.length>=n.attributes.length&&C++;let M=E.filter(L=>n.attributes.includes(L)).length;M===n.attributes.length?C+=3:M>0&&C++;let R=ch(w).filter(L=>n.classes.includes(L)).length;return R===n.classes.length?C+=2:R>0&&C++,C},"scoreElement"),p=Array.from(l.children).filter(w=>w.tagName===n.tagName&&!f(w)).map(w=>({element:w,score:h(w)})).sort((w,C)=>C.score-w.score),{inViewportElements:g,outOfViewportElements:y}=p.reduce((w,C)=>{let{element:E}=C,M=je(E,"Element")?E:E?.parentElement;return M!==null&&hs(M)?w.inViewportElements.push(E):w.outOfViewportElements.push(E),w},{inViewportElements:[],outOfViewportElements:[]}),x=a(w=>{for(let C of w)if(o.add(C),o.size===u)return!0;return!1},"excludeElements");return x(y)||x(g),YP(n),Array.from(o)},"viewportReducer");function YP(n){let{excludedElements:e,element:t}=n;e?.forEach(r=>{r.setAttribute(js,"")}),t._getmoreitemsid||(t._getmoreitemsid="gm"+qP++),n.id=t._getmoreitemsid,t.setAttribute(Fl,n.id)}a(YP,"markTemplateElements");function lh(n){return Array.from(n.attributes).filter(e=>!e.name.startsWith("checksum")).map(e=>e.name.replace(/[0-9]/g,""))}a(lh,"mapAttributes");function ch(n){return n.className?.split(" ").filter(e=>e)??[]}a(ch,"getElementClasses");function wr(n=document.body,{nodeRepetitionsThreshold:e=MS}={}){try{return console.time("bettertemplatize"),Pl=new Set,IS(n,e),console.timeEnd("bettertemplatize"),console.log("[bettertemplatize] templates found:",Array.from(Pl)),Array.from(Pl)}catch(t){return console.error("[bettertemplatize] failed during template processing:",t instanceof Error?t.message:t),[]}}a(wr,"bettertemplatize");function IS(n,e){Array.from(n.children).forEach(t=>{if(t instanceof SVGElement)return;let r=t.children.length;if(r>=e){let i=Array.from(t.children),o=Math.ceil(r*jP);for(let l=0;l<r;l++){let u=0,f=i.slice(0,l);for(let h=l+1;h<r&&u+r-h>=o;h++)try{let p=i[l],g=i[h];if(p&&g&&AS(p,g)){if(u++,u>=o){Pl.add({element:t,...TS,elementsToKeep:f});return}}else g&&f.push(g)}catch{return}}}IS(t,e)})}a(IS,"traverse");var KP=.8,XP=.5,ZP=.8,JP=5;function AS(n,e,t=1){let r=[],i=[],o=a(C=>(C&&(TS={attributes:r,classes:i,tagName:n.nodeName}),C),"response");if(n.nodeType!==e.nodeType)return o(!1);if(n instanceof SVGElement&&e instanceof SVGElement||n.nodeType===Node.TEXT_NODE)return o(!0);if(n.nodeType!==Node.ELEMENT_NODE)return o(!1);let l=n,u=e;if(l.tagName.toLowerCase()!==u.tagName.toLowerCase())return o(!1);let f=lh(l),h=lh(u);if(r=f.filter(C=>h.includes(C)),r.length/Math.max(f.length,h.length)<KP)return o(!1);let p=ch(l),g=ch(u);if(i=p.filter(C=>g.includes(C)),i.length/Math.max(p.length,g.length)<XP)return o(!1);if(t>=JP)return o(!0);if(l.shadowRoot&&!u.shadowRoot||!l.shadowRoot&&u.shadowRoot)return o(!1);let y=Array.from(l.shadowRoot?l.shadowRoot.children:l.children),x=Array.from(u.shadowRoot?u.shadowRoot.children:u.children);if(y.length===0&&x.length===0)return o(!0);let w=0;for(let C=0;C<Math.min(y.length,x.length);C++){let E=y[C],M=x[C];E&&M&&AS(E,M,t+1)&&w++}return w/Math.max(y.length,x.length)<ZP?o(!1):o(!0)}a(AS,"areSimilar");function OS(n,e){let t=n.toLowerCase();return e?{resolvedTag:"div",dataTag:null}:t.includes("-")?{resolvedTag:"div",dataTag:t}:{resolvedTag:n,dataTag:null}}a(OS,"resolveTagName");var NS=16e3;var QP=!0,uh={markTransparentElementsAsHidden:!1,markElementsHiddenByTransparentElementAsVisible:!0},Hl=class{constructor(){this.interactableElements=[];this.nonInteractableElementsFromSimplifiedDom=[];this.interactableElementsFromSimplifiedDom=[];this.elementsInSimplifiedDomByChecksumId={};this.selectors={};this.checksumIdToRRwebIdMap={};this.flashingElementsDetector=new kl;this.forceIncludeElements=[];this.preMapReducedHTMLSelectors=!1;this.useRrwebIdsAsChecksumIds=!1;this.excludedNodes=0;this.nodeRepetitionsThreshold=50;this.reducePercentage=50;this.checksumIdCounter=new Pn("0");this.scrollableElements={};this.defaultReduceHTMLOptions={checkElementInstanceType:!0,extraAllowedAttributes:[],initialChecksumId:void 0,forceIncludeFileInput:!1,forceIncludeAttribute:void 0,invalidateCache:!1,svgIntegration:"aria-label",includeFlashingElements:!0,onForceIncludeElement:a(()=>{},"onForceIncludeElement"),limitNodeRepetitions:50,stopFlashingElementsDetection:!1,assignChecksumIdsToAllElements:!0,assignRrwebIdsToAllElements:!0,fromTimeMachine:!1}}static{a(this,"HTMLReducer")}preprocessDocument(e=document){rn("[preprocessDocument] querySelectorAllExtended");let t=le("*",e,{includeHTML:!0});nn("[preprocessDocument] querySelectorAllExtended"),rn("[preprocessDocument] isElementHidden");for(let r of t){if(this.shouldIgnoreElement(r))continue;let i=dt(r,uh);r.setAttribute("checksum-data-visible",!i.isHidden&&!i.isTransparent?"true":"false"),!i.isHidden&&i.isTransparent&&r.setAttribute("checksum-data-transparently-visible","true"),i.isBehindTransparentElement&&r.setAttribute("checksum-data-visible-under-transparent-element","true"),i.clickOffset&&r.setAttribute("checksum-data-click-offset",`${i.clickOffset.x};${i.clickOffset.y}`),this.markScrollableElement(r)}nn("[preprocessDocument] isElementHidden")}markScrollableElement(e){let{canScrollX:t,canScrollY:r,progressX:i,progressY:o}=ut.getScrollData(e);if(t&&i!==void 0&&(e.setAttribute("data-scrollable-x","true"),e.setAttribute("data-scrollable-x-progress",i.toString())),r&&o!==void 0&&(e.setAttribute("data-scrollable-y","true"),e.setAttribute("data-scrollable-y-progress",o.toString())),t||r)try{let l=this.getSessionMirror()?.getMeta(e)?.id;l&&(this.scrollableElements[l]={...t&&i!==void 0?{x:i}:{},...r&&o!==void 0?{y:o}:{}})}catch(l){console.error("[markScrollableElement] Error getting rrwebId and updating scrollable elements",e,l)}}setSessionRecorder(e){this.sessionRecorder=e}markInteractableElements(e,t=document,{forceIncludeAttribute:r,forceIncludeFileInput:i}={}){rn("[markInteractableElements]"),this.interactableElements=[];let o=An(t,e,{allowDisabled:!0,excludeCrossOriginIframes:!1}),l=a((h,p)=>(h._checksumid||(h._checksumid=p??this.checksumIdCounter.getAndIncrement()),h.setAttribute("checksumid",h._checksumid),h.setAttribute("checksuminteractable","true"),h._checksumid),"setChecksumIdForElement"),u=a((h,p=!1,g)=>{if(this.shouldIgnoreElement(h))return;let y=h.getAttribute("checksum-data-click-offset")?.split(";"),x=y&&{x:parseInt(y[0]??""),y:parseInt(y[1]??"")},w=l(h,g);this.interactableElements.push({checksumId:w,element:h,forced:p,clickOffset:x})},"handleInteractableElement");o.forEach(h=>u(h));let f=a(h=>{le(h,t,{includeHTML:!0}).forEach(p=>u(p,!0))},"forceIncludeSelector");r&&f(`[${r}]`),i&&f("input[type='file']"),this.forceIncludeElements.filter(({element:h})=>h?.isConnected).forEach(({element:h,checksumid:p})=>u(h,!0,p)),console.log(`Marked ${this.interactableElements.length} interactable elements`),nn("[markInteractableElements]")}truthyFilter(e){return!!e}shouldIgnoreElement(e){return e.hasAttribute(js)}getSessionMirror(e=!1){return e?window.checksum.timeMachine.sessionReplayer:this.sessionRecorder}generateSimplifiedDom(e,t,{extraAllowedAttributes:r=[],checkElementInstanceType:i=!0,forceIncludeAttribute:o=void 0,forceIncludeFileInput:l=!1,svgIntegration:u="aria-label",onForceIncludeElement:f=void 0,contentWindow:h=window,assignChecksumIdsToAllElements:p=!0,assignRrwebIdsToAllElements:g=!0,fromTimeMachine:y=!1}={}){if(!e)return null;let x=a((ne,Ze=ne)=>{if(ne._originalNode=Ze,!je(ne,"Element")||!je(Ze,"Element"))return ne;let Nt=ne,Lt=Ze;if(p&&!Lt.hasAttribute("checksumid")&&(Lt._checksumid||(Lt._checksumid=this.checksumIdCounter.getAndIncrement()),Nt.setAttribute("checksumid",Lt._checksumid),this.nonInteractableElementsFromSimplifiedDom.push({checksumId:Lt._checksumid,element:Lt})),g){let ht=this.getSessionMirror(y);if(ht){let at=ht.getMeta(Lt)?.id?.toString();at&&(Nt.setAttribute("rrwebid",at),this.useRrwebIdsAsChecksumIds&&(Nt.setAttribute("checksumid",at),Nt._checksumid=at))}}return this.checksumIdToRRwebIdMap[Lt._checksumid]=parseInt(Lt._rrwebid),ne},"processSimplifiedDOMNode"),w=a((ne,Ze=e)=>x(document.createTextNode(ne),Ze),"createTextNode"),C=a((ne,Ze=e)=>x(document.createElement(ne),Ze),"createElementNode");if(e.nodeType===Node.ELEMENT_NODE){let ne=e;if(ne.tagName.toLowerCase()==="head"||this.shouldIgnoreElement(ne))return null}if(e.nodeType===Node.TEXT_NODE)return!e.parentElement||e.parentElement.getAttribute("checksum-data-visible")==="false"&&!e.parentElement.hasAttribute("checksumid")||e.parentElement.tagName.toLowerCase()==="body"?null:e.textContent?.trim()?w(e.textContent+" "):null;if(e.nodeType!==Node.ELEMENT_NODE||i&&!(je(e,"HTMLElement")||je(e,"SVGElement")))return null;let E=e,M=E.tagName.toLowerCase()==="iframe"&&E.contentDocument,O=ii(M?M.documentElement:E,{flattenShadowRootChildren:!0});t.esraSelectionRules?.limitChildren?.forEach(ne=>{E.matches(ne.selector)&&O.length>ne.limit&&O.splice(ne.limit)});let R=O.map(ne=>this.generateSimplifiedDom(ne,t,{extraAllowedAttributes:r,checkElementInstanceType:i,forceIncludeAttribute:o,forceIncludeFileInput:l,svgIntegration:u,onForceIncludeElement:f,contentWindow:M?E.contentWindow:h,assignChecksumIdsToAllElements:p,assignRrwebIdsToAllElements:g,fromTimeMachine:y})).filter(this.truthyFilter),L=E.getAttribute("checksum-data-visible")!=="false",B=E.hasAttribute("checksumid"),U=E.hasAttribute("role"),{customDescription:J,customDescriptionTarget:te}=this.getElementCustomDescription(E,{enableSVGCustomDescription:!!u}),ce=!!J,Se=E.hasAttribute("aria-label")||E.hasAttribute("name")||E.hasAttribute("alt"),Fe=E.hasAttribute(Fl)||this.forceIncludeElements.map(ne=>ne.element).includes(E)||!!o&&E.hasAttribute(o)||l&&E.tagName.toLowerCase()==="input"&&E.getAttribute("type")==="file",ze=["form","button","input","textarea","a","table","th","tr","td","section","nav","header","footer","main","article","aside","li","ul","select","option","datalist"],z=B||L&&(U||Se||ce||E.matches(ze.join(",")));if(!(z||Fe)){if(!R.length)return null;let ne=R[0];if(R.length===1&&ne&&!je(ne,"Text"))return ne}!z&&Fe&&f?.(E);let{resolvedTag:bt,dataTag:Q}=OS(E.tagName,E.tagName.toLowerCase()==="body"&&E.ownerDocument!==document),ee=a(()=>{if(ce)switch(te){case"svg":switch(u){case"aria-label":{let ne=C("svg");return ne.setAttribute("aria-label",J),{simplifiedNode:ne,appendChildren:!1}}case"text":{if(E.hasAttribute("checksumid")){let Ze=C("div");return Ze.innerText=J,{simplifiedNode:Ze,appendChildren:!1}}return{simplifiedNode:w(` [${J}] `),appendChildren:!1}}}}return{simplifiedNode:C(bt)}},"makeSimplifiedNode"),{simplifiedNode:et,appendChildren:Oe=!0}=ee();if(!je(et,"Element"))return et;let Le=et,gn=["aria-.+","data-name","name","type","placeholder","content","value","role","icon","title","checksumid","checksuminteractable","checksum-get-more-items","checked","disabled","selected","label","required","inputmode","min","max","step","minlength","maxlength","alt","hidden","draggable","ondrop","ondragover","contenteditable","href","(data-)?test(-)?id"].concat(r),Wn=E.attributes;for(let ne of Wn)for(let Ze of gn)new RegExp("^"+Ze+"$").test(ne.name)&&Le.setAttribute(ne.name,ne.value);if(Q&&Le.setAttribute("data-tag",Q),E.isContentEditable?Le.setAttribute("contenteditable","true"):!["TEXTAREA","INPUT","SELECT"].includes(E.tagName)&&window.getComputedStyle(E).cursor==="text"&&Le.setAttribute("contenteditable","cursor-text"),je(E,"HTMLInputElement")&&E.getAttribute("type")==="checkbox")E.checked&&Le.setAttribute("checked","true");else if(je(E,"HTMLInputElement")||je(E,"HTMLSelectElement"))Le.setAttribute("value",E.value);else if(je(E,"HTMLTextAreaElement")&&!E.childNodes.length&&E.value){let ne=w(E.value);Le.appendChild(ne)}return Oe&&R.forEach(ne=>Le.appendChild(ne)),Le}getElementCustomDescription(e,{enableSVGCustomDescription:t=!0}={}){return(je(e,"SVGElement")||e.tagName.toLowerCase()==="svg")&&t?{customDescriptionTarget:"svg",customDescription:this.getSVGDescriptionForElement(e)}:{}}getSVGDescriptionForElement(e){let t=this.findSvgElementDescriptionFromBank(e);if(t)return t;let r=e.querySelector("title");if(r)return r.textContent??void 0}findSvgElementDescriptionFromBank(e){return this.getSvgBank().find(t=>e.matches(`svg:has(${t.selector})`))?.description}getSvgBank(){return xS}restoreDom(e=document){le("*",e).forEach(r=>{r.removeAttribute("checksum-data-visible"),r.removeAttribute("checksum-data-transparently-visible"),r.removeAttribute("checksum-data-visible-under-transparent-element"),r.removeAttribute("checksumid"),r.removeAttribute("checksuminteractable"),r.removeAttribute("checksum-data-click-offset"),r.removeAttribute(js),r.removeAttribute(Fl),r.removeAttribute("data-scrollable-x"),r.removeAttribute("data-scrollable-y"),r.removeAttribute("data-scrollable-x-progress"),r.removeAttribute("data-scrollable-y-progress"),r.removeAttribute("rrwebid")})}async mapAndStoreSelectors(){let e={},t=new Bt;for(let{checksumId:r,element:i,clickOffset:o,selector:l,locator:u,parentFramesSelectors:f}of await t.injectSelectorsAndLocators(this.interactableElementsFromSimplifiedDom)){if(!l){console.warn("Unable to get selector for element",i);continue}let h=i;e[r]={element:h,selector:l,locator:u,...o?{clickOffset:o}:{},parentFramesSelectors:f??[],innerText:h.innerText,rrwebId:this.checksumIdToRRwebIdMap[r]??NaN}}return e}shouldFurtherReduce(e){return e?e.outerHTML.length>NS:!0}async reduce(e=document,t,r={}){console.time("reduceHTML");let{initialChecksumId:i,forceIncludeAttribute:o,forceIncludeFileInput:l,invalidateCache:u,includeFlashingElements:f,limitNodeRepetitions:h,stopFlashingElementsDetection:p}=this.lastReduceHTMLOptions={...this.defaultReduceHTMLOptions,...r},g=Ot.getInstance("reduce",{target:e,monitorInput:!0,invalidate:u,log:!1});if(g.hasCache()){let M=g.get();if(M)return M}let y=f?this.flashingElementsDetector.get():void 0;p&&this.flashingElementsDetector.stop(),this.nodeRepetitionsThreshold=h,this.reducePercentage=50,this.templateNodes=void 0,this.excludedNodes=0,this.scrollableElements={};let x=a(M=>RS(M,{forceIncludeAttribute:o,forceIncludeFileInput:l,forceIncludeElements:this.forceIncludeElements.map(O=>O.element),limit:Math.min(Math.ceil(M.element.children.length*(this.reducePercentage/100)),M.element.children.length-6)}),"templateReducer");console.log("Running pre-templatize"),this.templatize(x),console.log("Preprocessing document..."),this.preprocessDocument(e);let w;for((i||!this.checksumIdCounter)&&(this.checksumIdCounter=new Pn(i??"0")),console.log("Marking interactable elements..."),this.markInteractableElements(t,e,{forceIncludeAttribute:o,forceIncludeFileInput:l});;){if(console.log("Generating simplified DOM..."),this.nonInteractableElementsFromSimplifiedDom=[],w=this.generateSimplifiedDom(e.documentElement,t,this.lastReduceHTMLOptions),!w)throw new Error("Unable to get simplified DOM");if(this.shouldFurtherReduce(w)){if(console.log(`Will further reduce (${w.outerHTML.length})...`),!this.templatize(x)){console.log(`Exceeded maximum html reduction, stopping (html size: ${w.outerHTML.length})`);break}}else break}console.log("Simplified DOM generated, length:",w.outerHTML.length);let C=new Set(Array.from(w.querySelectorAll("[checksumid]")).map(M=>M.getAttribute("checksumid")));this.interactableElementsFromSimplifiedDom=this.interactableElements.filter(M=>C.has(M.checksumId)),console.log(`Found ${this.interactableElementsFromSimplifiedDom.length} interactable elements in simplified DOM vs ${this.interactableElements.length} in original DOM`),console.log("Restoring DOM..."),this.restoreDom(e),this.preMapReducedHTMLSelectors=QP?!1:!!t.preMapReducedHTMLSelectors,this.preMapReducedHTMLSelectors?(console.log("Mapping selectors..."),this.selectors=await this.mapAndStoreSelectors(),console.log("Done mapping selectors")):this.selectors={},this.elementsInSimplifiedDomByChecksumId=[...this.interactableElementsFromSimplifiedDom,...this.nonInteractableElementsFromSimplifiedDom].reduce((M,O)=>(M[O.checksumId]=O,M),{});let E={reducedDomHTMLElement:w,reducedHTML:w.outerHTML,currentChecksumId:this.checksumIdCounter.get(),...y!==void 0?{flashingHTML:y}:{},scrollableElements:this.scrollableElements};return g.set(E),console.timeEnd("reduceHTML"),E}templatize(e){let t=this.excludedNodes,r=a(()=>Array.from(this.templateNodes??[]).reduce((i,o)=>i+e(o).length,0),"calcExculdedNodes");if(!this.templateNodes)this.templateNodes=wr(document.body,{nodeRepetitionsThreshold:this.nodeRepetitionsThreshold}),this.excludedNodes=r();else do{if(this.reducePercentage<98)this.reducePercentage=Math.min(this.reducePercentage+20,98),console.log("Increasing reduce percentage to",this.reducePercentage);else{if(this.nodeRepetitionsThreshold<=20)return!1;this.reducePercentage=50,this.nodeRepetitionsThreshold-=10,console.log("Reducing node repetitions threshold to",this.nodeRepetitionsThreshold),this.templateNodes=wr(document.body,{nodeRepetitionsThreshold:this.nodeRepetitionsThreshold})}this.excludedNodes=r()}while(t===this.excludedNodes);return console.log(`[templatize] ${this.excludedNodes} elements marked to ignore for ${this.templateNodes?.length} templates`),!0}getMoreElementsFromTemplate(e,t){try{let r=this.templateNodes?.find(h=>h.id===e);if(!r)throw new Error("Template not found");let{element:i,excludedElements:o}=r;if(!o)throw new Error("Template has no excluded elements");console.log("Preprocessing template node..."),this.preprocessDocument(i),console.log("Marking template interactable elements..."),this.markInteractableElements(t,i,this.lastReduceHTMLOptions);let l=[],u=a(()=>l.map(h=>h instanceof Element?h.outerHTML:"").join(""),"getElementsHTML"),f=o.values();for(;u().length<NS*.5;){let h=f.next().value;if(!h)break;let p=Array.from(h.querySelectorAll("[checksumid]")).concat(h._checksumid?[h]:[]);this.interactableElements.filter(g=>p.includes(g.element)).forEach(g=>{this.elementsInSimplifiedDomByChecksumId[g.element._checksumid]=g}),l.push(this.generateSimplifiedDom(h,t,this.lastReduceHTMLOptions)),o.delete(h)}return this.restoreDom(i),{items:u(),hasMoreItems:o.size>0}}catch(r){console.error("[getMoreElementsFromTemplate] error",r);return}}async getSelectorForChecksumId(e){let t=a(h=>({selector:e,element:h?h.element:null,locator:"",parentFramesSelectors:[],invalid:!0,rrwebId:this.checksumIdToRRwebIdMap[e]??NaN,...h?.clickOffset?{clickOffset:h.clickOffset}:{},innerText:h?h.element.innerText:""}),"makeDefaultResult"),r=new Bt,i=this.elementsInSimplifiedDomByChecksumId[e];if(!i||!i.element.isConnected)return this.preMapReducedHTMLSelectors&&this.selectors[e]?this.selectors[e]:t(i);let o=await r.getSelectorAndLocator(i.element);if(!o)return t(i);let{selector:l,locator:u,parentFramesSelectors:f}=o;return{...t(i),selector:l,locator:u,parentFramesSelectors:f??[],invalid:!1}}getElementForChecksumId(e){return this.elementsInSimplifiedDomByChecksumId[e]?.element}hasInnerTextByChecksumId(e,{maxLength:t=void 0,minLength:r=void 0}={}){if(!this.preMapReducedHTMLSelectors){let o=this.elementsInSimplifiedDomByChecksumId[e]?.element?.innerText;return!(!o||r&&o.length<r||t&&o.length>t)}return!!this.selectors[e]?.innerText}getInteractableElements(){return this.interactableElements}getInteractableElementsInReducedHTML(){return this.interactableElementsFromSimplifiedDom}startFlashingElementsDetection(){return this.flashingElementsDetector.start()}addForceIncludeElement(e){this.forceIncludeElements.push(e),e.element._checksumid=e.checksumid}};function _S(n){return n._debugSource?.fileName?n._debugSource?.fileName:""}a(_S,"getComponentpath");function LS(n,e){if(n==="Unknown"||typeof n!="string"||n.charAt(0)!==n.charAt(0).toUpperCase()||e.type?.$$typeof===Symbol.for("react.context")||e.type?.$$typeof===Symbol.for("react.forward_ref")||e.type?.$$typeof===Symbol.for("react.memo")||e.type?.$$typeof===Symbol.for("react.profiler")||e.type?.$$typeof===Symbol.for("react.suspense"))return!1;let t=_S(e);return!(/.*\/node_modules\//.test(t)||n===t||/^(?!.*src).*$/.test(t))}a(LS,"isComponentAllowed");function fh(n,e={}){if(!n)return["",{}];let t=n.type,r=t?t.name||t:"Unknown",i="";if(LS(r,n)){i+=`<${r}>`;let o=_S(n);e[r]=o}if(n.child){let[o,l]=fh(n.child,e);i+=o,e={...e,...l}}if(LS(r,n)&&(i+=`</${r}>`),n.sibling){let[o,l]=fh(n.sibling,e);i+=o,e={...e,...l}}return[i,e]}a(fh,"traverseReactTree");function DS(n){let e=n._reactRootContainer?._internalRoot.current;return e||console.log("No react tree in element",n),fh(e)}a(DS,"getReactTree");var Oi=class n{static{a(this,"FrontendLogger")}static{this.overriddenMethods=["log","warn","error"]}static{this.original={}}static removePrefix(){this.overriddenMethods.forEach(e=>{let t=n.original[e];t&&(console[e]=t)})}static setPrefix(e){this.overriddenMethods.forEach(t=>{let r=n.original[t]??console[t];n.original[t]=r,console[t]=(...i)=>{i.unshift(e),r.apply(console,i)}})}};var $l=class{constructor(e=i=>i.map(o=>o.target),t={childList:!0,subtree:!0,attributes:!0,attributeOldValue:!0},r={collectElement:!0}){this.filterElements=e;this.observeOptions=t;this.options=r;this.elements=[];this.mutationEventListeners=[]}static{a(this,"MutationDetector")}addEventListener(e,t){this.mutationEventListeners.push({selector:e,listener:t})}startListening(){this.elements=[],this.observer=new MutationObserver(e=>{this.options.collectElement&&(this.elements=[...this.elements,...this.filterElements(e)]),this.mutationEventListeners.length&&e.forEach(t=>{t.addedNodes.forEach(r=>{if(r.nodeType!==Node.ELEMENT_NODE)return;let i=r;this.mutationEventListeners.forEach(o=>{i.matches(o.selector)?o.listener(i):i.querySelectorAll(o.selector).forEach(l=>{o.listener(l)})})})})}),this.observer.observe(document.body,this.observeOptions)}stopListening(){return this.observer?.disconnect(),this.elements}};function kS(n){let e=n.filter(r=>r.addedNodes.length>0).reduce((r,i)=>[...r,...i.addedNodes],[]),t=n.filter(r=>r.type==="attributes"&&r.attributeName==="style"&&r.target instanceof HTMLElement&&/display\s*:\s*none/.test(r.oldValue??"")&&la(r.target).visible).map(r=>r.target);return[...e,...t]}a(kS,"poppingElementsFilter");function eF(n,e){let t=new Set,r=n;for(;r;)t.add(r),r=r.parentNode;let i=e;for(;i;){if(t.has(i))return i;i=i.parentNode}return null}a(eF,"findCommonAncestor");function dh(n,e){let t=eF(n,e),r=0,i;if(!t)return 99999;for(i=n;i&&i!==t;)r++,i=i.parentNode;for(i=e;i&&i!==t;)r++,i=i.parentNode;return r}a(dh,"distanceBetweenNodes");function hh(n,e){Object.assign(n.style,e)}a(hh,"mergeStyle");function tF(n){let e=window.getComputedStyle(n),t=e.transform;if(t.startsWith("matrix")){let r=parseFloat((t.split(",")[0]??"").replace("matrix(",""))||1,i=parseFloat(t.split(",")[3]??"")||1;return{scaleX:r,scaleY:i}}if(e.scale){let r=parseFloat(e.scale)||1,i=parseFloat(e.scale)||1;return{scaleX:r,scaleY:i}}return{scaleX:1,scaleY:1}}a(tF,"getScaleFromStyles");function PS(n,e){let t={left:0,top:0,right:0,bottom:0},r=1,i=1;if(e!==n.ownerDocument){let o=n.ownerDocument.defaultView?.frameElement;for(;o&&o.contentDocument!==e;){let l=o.getBoundingClientRect(),u=tF(o);r*=u.scaleX,i*=u.scaleY,t.left+=l.left,t.top+=l.top,o=o.ownerDocument.defaultView?.frameElement}}return{combinedScaleX:r,combinedScaleY:i,iframeOffset:t}}a(PS,"computeIframeTransform");function FS(n,e,{combinedScaleX:t,combinedScaleY:r,iframeOffset:i,elementBoundingBox:o,options:l}){let{highlightStyle:u={},pointerEvents:f,classNames:h=[]}=l,p=pf(n),g={top:o.top*r+i.top,left:o.left*t+i.left};if(!p){let x=e.defaultView?.scrollX||0,w=e.defaultView?.scrollY||0;g.left+=x,g.top+=w}let y=e.createElement("div");return y.style.outline="2px dashed rgba(255,0,0,.75)",y.style.position=p?"fixed":"absolute",y.style.left=g.left+"px",y.style.top=g.top+"px",y.style.width=o.width*t+"px",y.style.height=o.height*r+"px",y.style.pointerEvents=f??"none",y.style.zIndex="2147483647",y.className=["checksum-dom-cache-ignore",...h].join(" "),hh(y,u),y}a(FS,"buildHighlightDiv");function rF(n){return{mousePosition:n.mousePosition,text:n.text,textPosition:n.textPosition??"overlap",clear:n.clear??!0,shouldFlipHighlightTextOutsideViewport:n.shouldFlipHighlightTextOutsideViewport??!0,classNames:n.classNames??[],renderDocument:n.renderDocument,scroll:n.scroll??!1}}a(rF,"resolveHighlightDefaults");var ph=class{constructor(){this.lastHighlights=[]}static{a(this,"ElementHighlighter")}clearHighlights(){this.lastHighlights.length&&(this.lastHighlights.forEach(e=>e.remove()),this.lastHighlights=[])}highlightElement(e,t={}){let r=rF(t);if(r.clear&&this.clearHighlights(),!e)return;let i=r.renderDocument??e.ownerDocument,o=PS(e,r.renderDocument),l=e.getBoundingClientRect(),u=FS(e,i,{...o,elementBoundingBox:l,options:t});r.mousePosition&&this.buildMouseLocation(i,r.mousePosition,r.classNames);let f=i.createElement("div");r.text&&this.buildHoverText(f,u,{text:r.text,elementBoundingBox:l,options:t}),this.finalizeHighlight({element:e,elementDocument:i,newElement:u,hoverTextEl:f},{textPosition:r.textPosition,height:l.height,shouldFlipHighlightTextOutsideViewport:r.shouldFlipHighlightTextOutsideViewport,scroll:r.scroll})}finalizeHighlight({element:e,elementDocument:t,newElement:r,hoverTextEl:i},{textPosition:o,height:l,shouldFlipHighlightTextOutsideViewport:u,scroll:f}){t.body.appendChild(r),this.flipHighlightTextPositionOutsideViewport(i,o,l),this.lastHighlights.push(r),u&&this.flipHighlightTextPositionOutsideViewport(i,o,l),f&&new ut(e).scrollIntoView()}buildMouseLocation(e,t,r){let i=e.createElement("div");if(i.style.position="absolute",i.style.left=+t.x-16+"px",i.style.top=+t.y-16+"px",i.style.color="#004DFF",i.className=["checksum-dom-cache-ignore","mouse-cross",...r].join(" "),i.style.zIndex="2147483648",!e.head.querySelector("style[role=mouse-location]")){let o=e.head.appendChild(e.createElement("style"));o.setAttribute("role","mouse-location"),o.innerHTML=".mouse-cross:before, .mouse-cross:after {position: absolute;left: 15px;content: ' ';height: 33px;width: 3px;background-color: #004DFF;}.mouse-cross:before {transform: rotate(0deg);}.mouse-cross:after {transform: rotate(-90deg);}"}e.body.appendChild(i),this.lastHighlights.push(i)}buildHoverText(e,t,{text:r,elementBoundingBox:i,options:o}){let{textStyle:l={},textType:u="static",textPosition:f="overlap",textWidthType:h="rect",pointerEvents:p,classNames:g=[]}=o;e.className=["checksum-dom-cache-ignore",...g].join(" "),e.innerText=r,e.style.fontSize="12px",e.style.width=h==="rect"?`${i.width}px`:"auto",e.style.background="#000000a1",e.style.color="white",e.style.padding="5px",e.style.position="absolute",e.style.pointerEvents="none",e.style.userSelect="none",this.applyVerticalTextPosition(e,f,i.height),hh(e,l),t.appendChild(e),t.style.pointerEvents=p??"none",u==="hover"&&this.attachHoverToggle(t,e)}applyVerticalTextPosition(e,t,r){t==="above"?e.style.bottom=`${r}px`:t==="below"&&(e.style.top=`${r}px`)}attachHoverToggle(e,t){t.style.display="none",e.addEventListener("mouseover",()=>{t.style.display="block"}),e.addEventListener("mouseout",()=>{t.style.display="none"})}flipHighlightTextPositionOutsideViewport(e,t,r){t==="above"&&Sy(e)>0?(e.style.bottom="initial",e.style.top=`${r}px`):t==="below"&&vy(e)>0&&(e.style.top="initial",e.style.bottom=`${r}px`)}},Wr=new ph;function Bl(n,e){return typeof n!="string"?HS(n):`${JSON.stringify(n)}${e?"s":"i"}`}a(Bl,"escapeForTextSelector");function Wl(n,e=!1){return typeof n!="string"?HS(n):`"${n.replace(/\\/g,"\\\\").replace(/["]/g,'\\"')}"${e?"s":"i"}`}a(Wl,"escapeForAttributeSelector");function HS(n){return n.unicode||n.unicodeSets?String(n):String(n).replace(/(^|[^\\])(\\\\)*(["'`])/g,"$1$2\\$3").replace(/>>/g,"\\>\\>")}a(HS,"escapeRegexForSelector");var nF=10,Li=nF/2;var iF=100,sF=120,oF=140,aF=160,lF=180,cF=200;var rG=iF+Li,nG=sF+Li,iG=oF+Li,sG=aF+Li,oG=lF+Li,aG=cF+Li;function Ni(n){let e={full:"",immediate:[]};if(!uF(n)){let t="";if(n instanceof HTMLInputElement&&(n.type==="submit"||n.type==="button"))e={full:n.value,immediate:[n.value]};else{for(let r=n.firstChild;r;r=r.nextSibling)r.nodeType===Node.TEXT_NODE?(e.full+=r.nodeValue||"",t+=r.nodeValue||""):(t&&e.immediate.push(t),t="",r.nodeType===Node.ELEMENT_NODE&&(e.full+=Ni(r).full));t&&e.immediate.push(t),n.shadowRoot&&(e.full+=Ni(n.shadowRoot).full)}}return e}a(Ni,"elementText");function Vl(n){return n.replace(/\u200b/g,"").trim().replace(/\s+/g," ")}a(Vl,"normalizeWhiteSpace");function uF(n){let e=n.ownerDocument;return n.nodeName==="SCRIPT"||n.nodeName==="NOSCRIPT"||n.nodeName==="STYLE"||e.head&&e.head.contains(n)}a(uF,"shouldSkipForTextMatching");function qs(n){return n.trim().replace(/([!"#$%&'()*+,./:;<=>?@[\\\]^`{|}~])/g,"\\$1")}a(qs,"escapeSelector");function Vr(n){let e=n.ownerDocument?.defaultView;if(!e)return window.playwright;let t=e.playwright;return e!==window&&!t&&(e.playwright=window.playwright),e.playwright}a(Vr,"getElementWindowPlaywright");var Ul=["role","aria-label","aria-labelledby","aria-checked","checked","placeholder","title","alt","id","data-testid","data-test-id","data-test","class","id","style","href","src","path","type"];function zl(n){return typeof n=="object"&&n!==null&&n.nodeType===Node.ELEMENT_NODE}a(zl,"isElement");var dn={NONE:"",DESCENDANT:" ",CHILD:" > "},ke={id:"id",class:"class",tag:"tag",attribute:"attribute",nthchild:"nthchild",nthoftype:"nthoftype"};function $S(n,e){return Object.values(n).includes(e)}a($S,"isEnumValue");var fF="CssSelectorGenerator";function _i(n="unknown problem",...e){console.warn(`${fF}: ${n}`,...e)}a(_i,"showWarning");var dF={selectors:[ke.id,ke.class,ke.tag,ke.attribute],includeTag:!1,whitelist:[],blacklist:[],combineWithinSelector:!0,combineBetweenSelectors:!0,root:null,maxCombinations:Number.POSITIVE_INFINITY,maxCandidates:Number.POSITIVE_INFINITY,useScope:!1,ignoreGeneratedClassNames:!1};function Ys(n){return!!n}a(Ys,"sanitizeBoolean");function hF(n){return Array.isArray(n)?n.filter(e=>$S(ke,e)):[]}a(hF,"sanitizeSelectorTypes");function gh(n){return n instanceof RegExp}a(gh,"isRegExp");function pF(n){return["string","function"].includes(typeof n)||gh(n)}a(pF,"isCssSelectorMatch");function BS(n){return Array.isArray(n)?n.filter(pF):[]}a(BS,"sanitizeCssSelectorMatchList");function mF(n){return n!=null&&typeof n=="object"&&"nodeType"in n&&typeof n.nodeType=="number"}a(mF,"isNode");function WS(n){let e=[Node.DOCUMENT_NODE,Node.DOCUMENT_FRAGMENT_NODE,Node.ELEMENT_NODE];return mF(n)&&e.includes(n.nodeType)}a(WS,"isParentNode");function yh(n,e){if(WS(n))return n.contains(e)||_i("element root mismatch","Provided root does not contain the element. This will most likely result in producing a fallback selector using element's real root node. If you plan to use the selector using provided root (e.g. `root.querySelector`), it will not work as intended."),n;let t=e.getRootNode({composed:!1});return WS(t)?(t!==document&&_i("shadow root inferred","You did not provide a root and the element is a child of Shadow DOM. This will produce a selector using ShadowRoot as a root. If you plan to use the selector using document as a root (e.g. `document.querySelector`), it will not work as intended."),t):Ks(e)}a(yh,"sanitizeRoot");function mh(n){return typeof n=="number"?n:Number.POSITIVE_INFINITY}a(mh,"sanitizeMaxNumber");function VS(n,e={}){let t=Object.assign(Object.assign({},dF),e);return{selectors:hF(t.selectors),whitelist:BS(t.whitelist),blacklist:BS(t.blacklist),root:yh(t.root,n),combineWithinSelector:Ys(t.combineWithinSelector),combineBetweenSelectors:Ys(t.combineBetweenSelectors),includeTag:Ys(t.includeTag),maxCombinations:mh(t.maxCombinations),maxCandidates:mh(t.maxCandidates),useScope:Ys(t.useScope),maxResults:mh(t.maxResults),ignoreGeneratedClassNames:Ys(t.ignoreGeneratedClassNames)}}a(VS,"sanitizeOptions");function Sr(n=[]){let[e=[],...t]=n;return t.length===0?e:t.reduce((r,i)=>r.filter(o=>i.includes(o)),e)}a(Sr,"getIntersection");function US(n){return[].concat(...n)}a(US,"flattenArray");function gF(n){return n.replace(/[|\\{}()[\]^$+?.]/g,"\\$&").replace(/\*/g,".+")}a(gF,"wildcardToRegExp");function Fn(n){let e=n.map(t=>{if(gh(t))return r=>t.test(r);if(typeof t=="function")return r=>{let i=t(r);return typeof i!="boolean"?(_i("pattern matcher function invalid","Provided pattern matching function does not return boolean. It's result will be ignored.",t),!1):i};if(typeof t=="string"){let r=new RegExp("^"+gF(t)+"$");return i=>r.test(i)}return _i("pattern matcher invalid","Pattern matching only accepts strings, regular expressions and/or functions. This item is invalid and will be ignored.",t),()=>!1});return t=>e.some(r=>r(t))}a(Fn,"createPatternMatcher");function Xs(n,e,t){let r=Array.from(yh(t,n[0]).querySelectorAll(e));return r.length===n.length&&n.every(i=>r.includes(i))}a(Xs,"testSelector");function bh(n,e){e=e??Ks(n);let t=[],r=n;for(;r&&r!==e;)zl(r)&&t.push(r),r=r.parentNode;return t}a(bh,"getElementParents");function zS(n,e){return Sr(n.map(t=>bh(t,e)))}a(zS,"getParents");function Ks(n){return n.ownerDocument.querySelector(":root")}a(Ks,"getRootNode");var Gl=", ",GS=new RegExp(["^$","\\s"].join("|")),jS=new RegExp(["^$"].join("|")),jl=[ke.nthoftype,ke.tag,ke.id,ke.class,ke.attribute,ke.nthchild];var yF=Fn(["class","id","ng-*"]);function bF({name:n}){return`[${n}]`}a(bF,"attributeNodeToSimplifiedSelector");function EF({name:n,value:e}){return`[${n}='${e}']`}a(EF,"attributeNodeToSelector");function wF({nodeName:n,nodeValue:e},t){let r=t.tagName.toLowerCase();return["input","option"].includes(r)&&n==="value"||n==="src"&&e?.startsWith("data:")?!1:!yF(n)}a(wF,"isValidAttributeNode");function SF({nodeName:n,nodeValue:e}){return{name:vr(n),value:vr(e??void 0)}}a(SF,"sanitizeAttributeData");function Eh(n,e){let t=Array.from(n.attributes).filter(r=>wF(r,n)).map(SF);return[...t.map(bF),...t.map(EF)]}a(Eh,"getElementAttributeSelectors");function qS(n,e){let t=n.map(r=>Eh(r,e));return Sr(t)}a(qS,"getAttributeSelectors");var vF=/^[a-z_-]{3,}$/i,CF=/[bcdfghjklmnpqrstvwxyz]{4,}/i;function xF(n){if(!vF.test(n)||n.includes("_")&&!n.includes("__")||/^(css|sc|jsx|emotion|makeStyles|MuiButton|MuiBox)-/i.test(n))return!1;let e=n.split(/--|__|[-]|(?<=[a-z])(?=[A-Z])/).filter(t=>t.length>0);if(e.length===0||e.length===1&&e[0].length<4)return!1;for(let t of e)if(t.length<=2||CF.test(t))return!1;return!0}a(xF,"isWordLikeClassName");function wh(n,e){var t;let r=((t=n.getAttribute("class"))!==null&&t!==void 0?t:"").trim().split(/\s+/).filter(o=>!jS.test(o)),i=r;if(e?.ignoreGeneratedClassNames){let o=Fn(e.whitelist);i=r.filter(l=>{let u=`.${vr(l)}`;return o(u)?!0:xF(l)})}return i.map(o=>`.${vr(o)}`)}a(wh,"getElementClassSelectors");function YS(n,e){let t=n.map(r=>wh(r,e));return Sr(t)}a(YS,"getClassSelectors");function Sh(n,e){var t;let r=(t=n.getAttribute("id"))!==null&&t!==void 0?t:"",i=`#${vr(r)}`,o=n.getRootNode({composed:!1});return!GS.test(r)&&Xs([n],i,o)?[i]:[]}a(Sh,"getElementIdSelectors");function KS(n,e){return n.length===0||n.length>1?[]:Sh(n[0],e)}a(KS,"getIdSelector");function vh(n,e){let t=n.parentNode,r=t&&"children"in t?t.children:null;if(r){for(let i=0;i<r.length;i++)if(r[i]===n)return[`:nth-child(${String(i+1)})`]}return[]}a(vh,"getElementNthChildSelector");function XS(n,e){return Sr(n.map(t=>vh(t,e)))}a(XS,"getNthChildSelector");function Ch(n,e){return[vr(n.tagName.toLowerCase())]}a(Ch,"getElementTagSelectors");function ql(n,e){let t=[...new Set(US(n.map(r=>Ch(r,e))))];return t.length===0||t.length>1?[]:[t[0]]}a(ql,"getTagSelector");function xh(n,e){let t=ql([n])[0],r=n.parentNode,i=r&&"children"in r?r:null;if(i){let l=Array.from(i.children).filter(u=>u.tagName.toLowerCase()===t).indexOf(n);if(l>-1)return[`${t}:nth-of-type(${String(l+1)})`]}return[]}a(xh,"getElementNthOfTypeSelector");function ZS(n,e){return Sr(n.map(t=>xh(t,e)))}a(ZS,"getNthOfTypeSelector");function*Th(n=[],{maxResults:e=Number.POSITIVE_INFINITY}={}){let t=0,r=Mh(1);for(;r.length<=n.length&&t<e;)t+=1,yield r.map(o=>n[o]),r=MF(r,n.length-1)}a(Th,"powerSetGenerator");function JS(n=[],{maxResults:e=Number.POSITIVE_INFINITY}={}){return Array.from(Th(n,{maxResults:e}))}a(JS,"getPowerSet");function MF(n=[],e=0){let t=n.length;if(t===0)return[];let r=[...n];r[t-1]+=1;for(let i=t-1;i>=0;i--)if(r[i]>e){if(i===0)return Mh(t+1);r[i-1]++,r[i]=r[i-1]+1}return r[t-1]>e?Mh(t+1):r}a(MF,"bumpOffsets");function Mh(n=1){return Array.from(Array(n).keys())}a(Mh,"generateOffsets");function*QS(n={}){let e=Object.entries(n);if(e.length===0)return;let t=[{index:e.length-1,partial:{}}];for(;t.length>0;){let r=t.pop();if(!r)break;let{index:i,partial:o}=r;if(i<0){yield o;continue}let[l,u]=e[i];for(let f=u.length-1;f>=0;f--)t.push({index:i-1,partial:Object.assign(Object.assign({},o),{[l]:u[f]})})}}a(QS,"cartesianProductGenerator");var TF="3a".toUpperCase(),RF=/[ !"#$%&'()\[\]{|}<>*+,./;=?@^`~\\]/;function vr(n=""){return CSS?CSS.escape(n):IF(n)}a(vr,"sanitizeSelectorItem");function IF(n=""){return n.split("").map(e=>e===":"?`\\${TF} `:RF.test(e)?`\\${e}`:escape(e).replace(/%/g,"\\")).join("")}a(IF,"legacySanitizeSelectorItem");var AF={tag:ql,id:KS,class:YS,attribute:qS,nthchild:XS,nthoftype:ZS},OF={tag:Ch,id:Sh,class:wh,attribute:Eh,nthchild:vh,nthoftype:xh};function ev(n,e,t){return OF[e](n,t)}a(ev,"getElementSelectorsByType");function NF(n,e,t){let r=AF[e];return r(n,t)}a(NF,"getSelectorsByType");function LF(n=[],e,t){return n.filter(r=>t(r)||!e(r))}a(LF,"filterSelectors");function _F(n=[],e){return n.sort((t,r)=>{let i=e(t),o=e(r);return i&&!o?-1:!i&&o?1:0})}a(_F,"orderSelectors");function*DF(n,e){let t=new Set,r=kF(n,e);for(let i of $F(r,e))t.has(i)||(t.add(i),yield i)}a(DF,"allSelectorsGenerator");function kF(n,e){let{blacklist:t,whitelist:r,combineWithinSelector:i,maxCombinations:o}=e,l=Fn(t),u=Fn(r),f=a((h,p)=>{let g=NF(n,p,e),y=LF(g,l,u),x=_F(y,u);return h[p]=i?Array.from(Th(x,{maxResults:o})):x.map(w=>[w]),h},"reducer");return PF(e).reduce(f,{})}a(kF,"getSelectorsList");function PF(n){let{selectors:e,includeTag:t}=n,r=[...e];return t&&!r.includes("tag")&&r.push("tag"),r}a(PF,"getSelectorsToGet");function FF(n){return n.includes(ke.tag)||n.includes(ke.nthoftype)?[...n]:[...n,ke.tag]}a(FF,"addTagTypeIfNeeded");function HF(n){let{selectors:e,combineBetweenSelectors:t,includeTag:r,maxCandidates:i}=n,o=t?JS(e,{maxResults:i}):e.map(l=>[l]);return r?o.map(FF):o}a(HF,"combineSelectorTypes");function*$F(n,e){for(let t of HF(e))yield*BF(t,n)}a($F,"selectorTypeCombinationsGenerator");function*BF(n,e){let t={};for(let r of n){let i=e[r];i&&i.length>0&&(t[r]=i)}for(let r of QS(t))yield VF(r)}a(BF,"constructedSelectorsGenerator");function WF(n,e){return e[n]?e[n].join(""):""}a(WF,"constructSelectorType");function VF(n={}){let e=[...jl];return n[ke.tag]&&n[ke.nthoftype]&&e.splice(e.indexOf(ke.tag),1),e.map(t=>WF(t,n)).join("")}a(VF,"constructSelector");function UF(n,e){return[...n.map(t=>e+dn.DESCENDANT+t),...n.map(t=>e+dn.CHILD+t)]}a(UF,"generateCandidateCombinations");function*zF(n,e){if(e==="")yield*n;else for(let t of n)yield*UF([t],e)}a(zF,"candidatesGenerator");function*GF(n,e,t="",r){let i=DF(n,r);for(let o of zF(i,t))Xs(n,o,e)&&(yield o)}a(GF,"selectorWithinRootGenerator");function*jF(n,e,t="",r){if(n.length===0)return null;let i=[n.length>1?n:[],...zS(n,e).map(o=>[o])];for(let o of i)for(let l of GF(o,e,t,r))yield{foundElements:o,selector:l}}a(jF,"closestIdentifiableParentGenerator");function*tv({elements:n,root:e,rootSelector:t="",options:r}){let i=e,o=t,l=!0;for(;l;){let u=!1;for(let f of jF(n,i,o,r)){let{foundElements:h,selector:p}=f;if(u=!0,Xs(n,p,e))yield p;else{i=h[0],o=p;break}}u||(l=!1)}}a(tv,"selectorGenerator");function rv(n){(n instanceof NodeList||n instanceof HTMLCollection)&&(n=Array.from(n));let e=(Array.isArray(n)?n:[n]).filter(zl);return[...new Set(e)]}a(rv,"sanitizeSelectorNeedle");function qF(n){return{value:n,include:!1}}a(qF,"createElementSelectorData");function nv(n,e,t=dn.NONE){let r={};return e.forEach(i=>{Reflect.set(r,i,ev(n,i).map(qF))}),{element:n,operator:t,selectors:r}}a(nv,"createElementData");function iv({selectors:n,operator:e}){let t=[...jl];n[ke.tag]&&n[ke.nthoftype]&&(t=t.filter(i=>i!==ke.tag));let r="";return t.forEach(i=>{var o;((o=n[i])!==null&&o!==void 0?o:[]).forEach(({value:u,include:f})=>{f&&(r+=u)})}),e+r}a(iv,"constructElementSelector");function YF(n,e){let t=bh(n,e).reverse(),r=e instanceof ShadowRoot,i=t.map((l,u)=>{var f;let h=nv(l,[ke.nthchild],r&&u===0?dn.NONE:dn.CHILD);return((f=h.selectors.nthchild)!==null&&f!==void 0?f:[]).forEach(p=>{p.include=!0}),h});return[r?"":e?":scope":":root",...i.map(iv)].join("")}a(YF,"getElementFallbackSelector");function sv(n,e){return n.map(t=>YF(t,e)).join(Gl)}a(sv,"getFallbackSelector");var KF=function(n,e){var t={};for(var r in n)Object.prototype.hasOwnProperty.call(n,r)&&e.indexOf(r)<0&&(t[r]=n[r]);if(n!=null&&typeof Object.getOwnPropertySymbols=="function")for(var i=0,r=Object.getOwnPropertySymbols(n);i<r.length;i++)e.indexOf(r[i])<0&&Object.prototype.propertyIsEnumerable.call(n,r[i])&&(t[r[i]]=n[r[i]]);return t};function Rh(n,e={}){let t=Object.assign(Object.assign({},e),{maxResults:1});return XF(n,t).next().value}a(Rh,"getCssSelector");function*XF(n,e={}){var t;let r=rv(n),i=VS(r[0],e),o=(t=i.root)!==null&&t!==void 0?t:Ks(r[0]),l=0;for(let f of tv({elements:r,options:i,root:o,rootSelector:""}))if(yield f,l++,l>=i.maxResults)return;if(r.length>1){let{maxResults:f}=e,h=KF(e,["maxResults"]);if(yield r.map(p=>Rh(p,h)).join(Gl),l++,l>=i.maxResults)return}let u=e.root!==void 0;yield sv(r,i.useScope||u?o:void 0)}a(XF,"cssSelectorGenerator");var Yl=a(n=>new Promise(e=>setTimeout(e,n)),"awaitSleep"),ov=a(async(n,e=1e3,t)=>{if(e===null)return n;let r="guard-timed-out",i={id:null},o=a(async()=>new Promise(l=>{i.id=setTimeout(()=>{i.id=null,l(r)},e+1e3)}),"guard");try{let l=await Promise.race([n,o()]);if(i.id!==null&&(clearTimeout(i.id),i.id=null),typeof l=="string"&&l===r)throw typeof t=="function"?new Error(t()):new Error(t??"guardReturnTimedOut");return l}catch(l){throw i.id!==null&&clearTimeout(i.id),l}},"guardReturn");var JF=!1,Hn=class n{constructor(e){this.locators=[];this.elements=[];this.locators=e}static{a(this,"LocatorChain")}hasDuplicateFilters(){let e=this.locators.map(t=>t.options?.hasText).filter(t=>t);return e.length!==new Set(e).size}cloneAndAddCandidate(e){return new n([e,...this.locators.slice()])}toLocatorCandidate(){return{selector:this.getSelector(),locator:this.getLocator()}}getSelector(){return this.locators.map(e=>e.selector).join(" >> ")}getLocator(){return this.locators.map(e=>e.locator).join(".")}},pn=class n{constructor(e=document){this.rootNode=e;this.MAX_TESTING_SELECTORS=50;this.MAX_SINGLE_ELEMENT_SELECTORS=5;this.MAX_PROCESSING_TIME=15e3;this.MAX_MULTICANDIDATE_PROCESSING=5;this.startTimestamp=Date.now()}static{a(this,"PlaywrightCustomLocatorGenerator")}get targetElement(){if(!this._targetElement)throw new Error("Target element is not set");return this._targetElement}async generate(e,t=[],r={}){let{isPartOfListItem:i,isForContextElement:o,useTextContent:l,addCSSSelectorGenerator:u,expandCSSKeyElements:f,bruteForceMode:h}={isPartOfListItem:!1,isForContextElement:!1,useTextContent:!0,addCSSSelectorGenerator:!0,expandCSSKeyElements:!0,bruteForceMode:!1,...r};if(je(e,"HTMLOptionElement")){let y=e.closest("select");if(y)return this.generate(y,t,{isPartOfListItem:i})}this._targetElement=e,this.startTimestamp=Date.now();let p=[];for(t=t.filter(y=>Array.from(document.querySelectorAll(y.selector)).includes(y.element)),f&&this.expandCSSKeyFeatures(e,t);e&&e!==this.rootNode;){await Yl(0);let y=this.getAllLocators(e,t,{useTextContent:l,bruteForceMode:h}),x=[],w=a(async E=>{if(!E.hasDuplicateFilters())try{await Yl(0);let{elements:M}=this.getLocatorBase(e).locator(E.getSelector());M?.some(O=>O===this.targetElement)&&(E.elements=M.filter(O=>hn(O)||O.constructor.name===this.targetElement.constructor.name),x.push(E))}catch(M){console.log(M,E.getSelector())}},"testCandidate");if(p.length)for(let E of y)for(let M of p)await w(M.cloneAndAddCandidate(E));else for(let E of y)await w(new Hn([E]));if(x.length===0&&p.length===0){let E=e.tagName.toLowerCase();p.push(new Hn([{selector:E,locator:this.getSelectorLocator(E),elements:this.getLocatorBase(e).locator(e.tagName.toLowerCase()).elements.filter(M=>hn(M))}]))}if(p.push(...x),o)return p.map(E=>E.toLocatorCandidate());if(p.length>this.MAX_TESTING_SELECTORS||p.filter(E=>E.elements.length===1).length>this.MAX_SINGLE_ELEMENT_SELECTORS||this.checkTimeout(!1))break;let C=e.parentElement;if(!C)break;e=C}if(i){let y=this.filterListItemsSelectors(p);if(y?.length)return y.map(x=>({...x.toLocatorCandidate(),isListSelector:!0}))}let g=[];try{for(let y of p)this.checkTimeout(),g.push(...y.elements.length===1?[y]:await this.reduceMultiCandidates(y))}catch(y){y instanceof tn&&console.warn("[PlaywrightCustomLocatorGenerator] Timeout error")}if(!g?.length&&(console.log("no single element selector found"),!f))return this.generate(e,t,{isPartOfListItem:i,isForContextElement:o,useTextContent:l,addCSSSelectorGenerator:!0,expandCSSKeyElements:!0});if(u){let y=await this.addCSSSelectorGenerator();y&&g.unshift(y)}if(this.rootNode===document&&l){let y=await new Bt().getSelectorAndLocator(this.targetElement);if(y){let{selector:x,locator:w}=y;g.unshift(new Hn([{selector:x,locator:w}]))}}return g=g.concat(await this.addOptionalParentSelector(l,u,f)),Array.from(new Map(g.map(y=>[y.toLocatorCandidate().selector,y.toLocatorCandidate()])).values())}testSelector(e,t,r,i=!0){let o=Vr(t).selector(t),l=this.getLocatorBase(t).locator(o);console.log("Locator result",l);let u=a(h=>!(i&&(h.elements.length!==1||t!==h.element)||!h.elements.includes(t)),"testResult");if(!u(l))return{valid:!1};let f={};if(r?.locatorWithVars?.length)try{let p=new Function(`{ return function(element) { ${r.variablesCode}; return this.getLocatorBase(element).locator(\`${r.locatorWithVars}\`); } }`)().call(this,t);if(console.log("Locator with vars result",p),!u(p))return{valid:!1};f={selectorWithVars:o,locatorWithVars:r.locatorWithVars}}catch(h){return console.error("Error testing selector with variables",h instanceof Error?h.message:void 0),{valid:!1}}return{valid:!0,selector:o,locator:e,...f}}async addCSSSelectorGenerator(){try{let e=this.rootNode===document?{}:{root:this.rootNode},t=await ov(new Promise(r=>{let i=Rh(this.targetElement,e);r(i)}),2e3);if(t.length<50)return new Hn([{selector:t,locator:`locator('${t}')`}])}catch(e){console.error("Error getting CSS selector",e)}}async addOptionalParentSelector(e,t,r){try{let i=Vr(this.targetElement),o=i.locator(i.selector(this.targetElement)).element;o!==this.targetElement&&o?.contains(this.targetElement)&&await this.generate(o,[],{isPartOfListItem:!1,isForContextElement:!1,useTextContent:e,addCSSSelectorGenerator:t,expandCSSKeyElements:r})}catch{}return[]}expandCSSKeyFeatures(e,t,r=4){try{let i=[];for(;e&&e!==this.rootNode&&i.length<r&&e!==document.documentElement;){Array.from(e.attributes).filter(({name:u,value:f})=>f.length<30&&!Ul.includes(u)).forEach(u=>{try{if(i.length>r-1)return;let f=`[${u.name}${u.value?`="${u.value}"`:""}]`;try{if(!e.parentElement||e.parentElement.querySelectorAll(f).length>1)return}catch{console.warn(`Error checking selector - ${f}, continuing`);return}if(!t.some(h=>h.selector.includes(f))&&this.getLocatorBase(e).locator(f).element===e){let h={element:e,selector:f};t.push(h),i.push(h)}}catch(f){console.warn("Error processing css key feature",{name:u.name,value:u.value},f)}});let l=e.parentElement;if(!l)break;e=l}i.length}catch(i){console.error("Error extracting CSS key features",i)}}async generateArbitraryItemListSelector(e,t=[]){console.log("generateArbitraryItemListSelector",e);try{let r=wr(document.body,{nodeRepetitionsThreshold:5});if(!r?.length)throw new Error("No templates found in the page");let i=r.find(x=>x.element.contains(e));if(!i)throw new Error("No template found for target element");console.log("Found template for target element",i);let o=await new n().generate(i.element,t,{isPartOfListItem:!1,isForContextElement:!1,useTextContent:!1});console.log("baseCustomSelectors",o);let l=o[0];if(!l)throw new Error("No base selector found for the list root element");let u=l.selector,f=this.getSelectorLocator(u,i.element);console.log("Randomly selected baseSelector",u);let h=a(()=>{let x=[],w=new $n,C=e;for(;C&&C!==i.element;){let E="",M=!1,O=!1,R=!1;for(;!E.length;)E=w.getSelectorPart(C,{useClasses:O,useId:M,useTag:R}),M?(O=!0,R=!0):M=!0;x.push({selector:E,element:C}),C=C.parentElement}return x},"getCSSFeatures"),p=h();console.log("cssFeatures",p);let g=(await new n(i.element).generate(e,h(),{isPartOfListItem:!0,isForContextElement:!1,useTextContent:!1})).map(x=>({...x,elements:[]})),y=g.filter(x=>(x.elements=this.getLocatorBase(e).locator(u).locator(x.selector).elements,x.elements.length>Math.ceil(i.element.children.length*.7)));return console.log("elementSelectors",g),y.map(({selector:x,locator:w})=>({selector:`${u} >> ${x}`,locator:`${f}.${w}`}))}catch(r){console.error("[findGenericItemListSelector] error",r)}}filterListItemsSelectors(e){try{let t=wr(document.body,{nodeRepetitionsThreshold:5});if(!t?.length)throw new Error("No templates found in the page");return e.filter(r=>{if(r.elements.length<2)return!1;let i=new $n().getSmallestCommonRoot(r.elements);return!(!i||!t.some(o=>o.element===i)||Array.from(i.children).some(o=>{r.elements.filter(l=>o.contains(l)).length}))})}catch(t){console.error("[filterListItemsSelectors] error",t instanceof Error?t.message:void 0)}}getLocatorBase(e){let t=Vr(e);return this.rootNode===document||this.rootNode.nodeType===9?t:t.locator(t.selector(this.rootNode))}getSelectorLocator(e,t){return Vr(t??this.targetElement).asLocator("javascript",e)}async reduceMultiCandidates(e){await Yl(0);let{elements:t}=e,r=e.getSelector().split(" >> "),i=[],o=this.getLocatorBase(this.targetElement),l=a(p=>{try{return i.push(new Hn([{selector:p,locator:this.getSelectorLocator(p)}])),i.length>=this.MAX_MULTICANDIDATE_PROCESSING}catch(g){return console.error(g),!1}},"addCandidateWithSelector"),u=a(p=>e.getSelector()+(r[r.length-1]===this.targetElement.tagName.toLowerCase()?p:` >> internal:and=${QF(this.targetElement.tagName.toLowerCase()+p)}`),"addCSSFilterToLocator"),f=a(p=>o.locator(p).elements.length===1?l(p):!1,"addIfSingularAndCheckLimit");if(t.length<5){let p=t.indexOf(this.targetElement);p!==-1&&l(e.getSelector()+` >> nth=${p}`)}let h=this.targetElement.parentElement;if(h&&t.every(p=>p.parentElement===h&&p.tagName===this.targetElement.tagName)){let p=Array.from(h.children).indexOf(this.targetElement);if(p!==-1){let g=u(`:nth-child(${p+1})`);f(g)&&l(g)}}for(let p of Array.from(this.targetElement.classList).filter(g=>!pr.includes(g))){let g=u(`.${qs(p)}`);try{if(f(g))return i}catch(y){console.error(y)}}for(let p of Array.from(this.targetElement.attributes).filter(g=>!Ul.includes(g.name))){let g=u(`[${p.name}`+(p.value?`="${p.value}"]`:"]"));try{if(f(g))return i}catch(y){console.error(y)}}return i}getAllLocators(e,t,r={}){r={exact:!0,useTextContent:!0,...r};let i=[this.getByRoleLocator(e,r),r.useTextContent?this.getByTextLocator(e,r):null,this.getByLabelLocator(e,r),this.getByPlaceholderLocator(e,r),this.getByTitleLocator(e,r),this.getByAltLocator(e,r),this.getTestIdLocator(e,r),...e===this.targetElement?[this.getInnerFeaturesLocator(e)]:[],...t.filter(o=>o.element===e).map(o=>({selector:o.selector,locator:this.getSelectorLocator(o.selector)}))].filter(o=>!!o);return!i.length&&r.bruteForceMode?i.concat(this.findUniqueCSSLocatorForElement(e)):i}findUniqueCSSLocatorForElement(e,t=5){let r=[],i=a(o=>(r.push({selector:o,locator:`locator('${o}')`}),r.length>=t),"addCandidate");for(let o of Array.from(e.attributes).filter(({name:l,value:u})=>u.length<30&&!Ul.includes(l)))try{let l=`[${o.name}${o.value?`="${o.value}"`:""}]`;if(e.ownerDocument.querySelectorAll(l).length===1&&i(l))return r}catch{}for(let o of Array.from(e.classList).filter(l=>!pr.includes(l)))try{let l=`.${qs(o)}`;if(e.ownerDocument.querySelectorAll(l).length===1&&i(l))return r}catch{}return r}getInnerFeaturesLocator(e){let t=e.tagName.toLowerCase();if(!hn(e)||["html","body","div"].includes(t))return;let r=new Dr().extract(e).filter(o=>!o.isRoot).slice(0,4).map(o=>gs(o).pop());if(r.length<2)return;let i=t+r.map(o=>`:has(${o})`).join("");return{selector:i,locator:this.getSelectorLocator(i)}}getByRoleLocator(e,t={}){try{if(!hn(e))throw new Error("Provided element is not an HTMLElement");let r={},i={button:"button",input:a(w=>{let C=w instanceof HTMLInputElement?w.type:void 0;return C==="checkbox"?"checkbox":C==="radio"?"radio":"textbox"},"input"),select:"listbox",a:"link",h1:"heading",h2:"heading",h3:"heading",h4:"heading",h5:"heading",h6:"heading",li:"listitem",option:"option",textarea:"textbox",table:"table",tr:"row",th:"columnheader",td:"cell",img:"img"},o=e.tagName.toLowerCase(),l=i[o],u=e.getAttribute("role")||(l instanceof Function?l(e):l);if(!u)return;let f=[];if(u==="heading"&&!e.hasAttribute("aria-level")){let w=parseInt(o.charAt(1),10);f.push(["level",String(w)])}(u==="checkbox"||u==="radio")&&f.push(["checked",String(e.getAttribute("aria-checked")??e.getAttribute("checked")??"false")]);let h=a(()=>{let w=a(L=>this.limitTextLength(this.normalize(L),t.exact),"normalize"),C={text:"",exact:!1},E=e.getAttribute("aria-label")??e.getAttribute("aria-labelledby")??e.getAttribute("title");if(E)return w(E);let M=Ni(e),O=Vl(M.full);if(!O?.length)return C;let R=w(O);return r.hasText=R.text,R},"getAccessibleName"),{text:p,exact:g}=h();p&&p.length>0&&p.length<30&&f.push(["name",Wl(p,g)]);let y=a(()=>{let w=`internal:role=${u}${f.map(([C,E])=>`[${C}=${E}]`).join("")}`;return{locator:this.getSelectorLocator(w),selector:w,options:r}},"getSelection"),x=y();if(p?.length&&g&&!this.getLocatorBase(e).locator(x.selector).elements.includes(e)){let w=f.find(C=>C[0]==="name");w&&(w[1]=Wl(p,!1),x=y())}return x}catch(r){console.error("Error getting role locator",r instanceof Error?r.message:void 0)}}getByTextLocator(e,t={}){try{if(!hn(e))return;let r=Vl(Ni(e).full);if(!r?.length||r.length>100)return;let i={};if(Array.from(e.children).filter(u=>hn(u)).some(u=>Vl(Ni(u).full)===r)){i.hasText=r;let u=`${e.tagName.toLowerCase()} >> internal:has-text=${Bl(r,!1)}`;return{selector:u,locator:this.getSelectorLocator(u),options:i}}let o=a(u=>{let h="internal:text="+Bl(r,u);return{selector:h,locator:this.getSelectorLocator(h),options:i}},"getSelection"),l=o(t.exact);return t.exact&&!this.getLocatorBase(e).locator(l.selector).elements.includes(e)&&(l=o(!1)),l}catch{}}getByLabelLocator(e,t={}){try{if(!hn(e)||!["input","textarea","select"].includes(e.tagName.toLowerCase()))return;let r=a(u=>({selector:`internal:label=${Bl(u,t.exact)}`,locator:`getByLabel('${u}')`}),"respond"),i=e.getAttribute("aria-label");if(i)return r(i);let o=e.getAttribute("aria-labelledby");if(o){let u=document.getElementById(o);if(u){let f=u.innerText.trim();if(f)return r(f)}}let l=e.getAttribute("id");if(l){let u=document.querySelector(`label[for="${l}"]`);if(u){let f=u.innerText.trim();if(f)return r(f)}}}catch{}}getByPlaceholderLocator(e,t={}){if(["input","textarea"].includes(e.tagName?.toLowerCase()))return this.getByAttributeLocator(e,"placeholder",t)}getByTitleLocator(e,t={}){return this.getByAttributeLocator(e,"title",t)}getByAltLocator(e,t={}){return this.getByAttributeLocator(e,"alt",t)}getTestIdLocator(e,t={}){for(let r of["data-testid","data-test-id","data-test"])if(e.getAttribute(r))return this.getByAttributeLocator(e,r,{...t,locatorName:"getByTestId"})}getByAttributeLocator(e,t,r={}){try{if(!hn(e))return;let i=e.getAttribute(t);if(i)return{selector:`internal:attr=[${t}=${Wl(i,r.exact)}]`,locator:(r.locatorName??`getBy${t.charAt(0).toUpperCase()+t.slice(1)}`)+`('${i}')`}}catch{}}normalize(e){return e.replace(/\n/g,"").replace(/[ \t]+/g," ").trim()}limitTextLength(e,t=!0){for(;e?.length>30&&e.length<100&&e.includes(" ");)e=e.split(" ").slice(0,-1).join(" "),t=!1;return{text:e,exact:t}}checkTimeout(e=!0){if(JF)return!1;if(this.MAX_PROCESSING_TIME&&Date.now()-this.startTimestamp>this.MAX_PROCESSING_TIME){if(e)throw new tn;return!0}return!1}};function QF(n){return`"${n.replace(/\\/g,"\\\\").replace(/["]/g,'\\"')}"`}a(QF,"escapeForAndLocator");function hn(n){return je(n,"HTMLElement")}a(hn,"isInstanceOfHTMLElement");function eH(n){let e=n.nodeName.toLowerCase(),t={found:!1};if(["name","label","aria-label","data-testid","role"].forEach(r=>{n.hasAttribute(r)&&(e+=`[@${r}="${n.getAttribute(r)}"]`,t.found=!0)}),!t.found){let r=1,i=n.previousSibling;for(;i;)i.nodeType===Node.ELEMENT_NODE&&i.nodeName===n.nodeName&&r++,i=i.previousSibling;r>1&&(e+=`[${r}]`)}return e}a(eH,"getNodeIdentifier");function av(n=document,e){try{if(!n||!e||!n.contains(e))throw new Error("Child is not a descendant of the given element.");let t=[],r=e;for(;r!==n;){if(!r)throw new Error("Child is not a descendant of the given element.");r.nodeType===Node.ELEMENT_NODE&&t.unshift(eH(r)),r=r.parentElement}return t.join("/")}catch(t){console.error("Failed to get relative xpath",t);return}}a(av,"getRelativeXPath");function lv(n,e){return[new XPathEvaluator().evaluate(e,n,null,XPathResult.FIRST_ORDERED_NODE_TYPE,null).singleNodeValue].filter(i=>i instanceof HTMLElement)}a(lv,"findElementsByXPath");var $n=class{constructor(e){this.htmlReducer=e;this.BASE_MAX_COMPONENTS_FOR_SELECTOR_COMBINATION=13;this.MAX_SELECTORS_PER_CONTEXT_ELEMENT=10;this.innerFeaturesExtractor=new Dr;this.innerTextExtractor=new fi}static{a(this,"CompoundSelector")}filter(e,{isPartOfListItem:t=!1}={}){e.forEach(f=>{let h=this.htmlReducer?.getElementForChecksumId(f.selection.checksumid);h instanceof HTMLElement?f.element=h:delete f.element});let r=e.splice(e.findIndex(f=>f.isTarget),1)[0],i=r?.element;if(!r||!i)throw new Error("Target element not found");let o=e.filter(f=>!!f.element&&!f.element.contains(i)&&!i.contains(f.element)&&!e.some(h=>h!==f&&(h.element===f.element||!!h.element?.contains(f.element??null)))).concat(r);if(console.log(`filtered context elements, ${e.length+1} > ${o.length}`),!t)return o;let l=wr(document.body,{nodeRepetitionsThreshold:4});if(!l?.length)return[];let u=l.find(f=>f.element.contains(i));return u?(console.log("Found template for target element",u),o.filter(f=>u.element.contains(f.element??null))):[]}async generate(e,{isPartOfListItem:t=!1}={}){let r=e.filter(u=>u.isTarget)[0];if(e=this.filter(e,{isPartOfListItem:t}),e.length<2)throw new Error("Not enough elements found for the given checksum ids");if(!r?.element)throw new Error("Target element not found");let i=this.getSmallestCommonRoot(e.map(u=>u.element).filter(u=>u!==void 0));if(!i)throw new Error("No common root found for the given elements");this.extractFeaturesMetadata(e);let o=r.featuresMetadata;if(!o)throw new Error("Target element features metadata not found");return{targetSelection:{xpath:av(i,r.element)??"",cssSelectors:this.generateAllContextualSelectors(i,r.element).filter(u=>u&&u.trim().length>0),playwrightSelectors:await new pn(i).generate(r.element,[],{addCSSSelectorGenerator:!1,expandCSSKeyElements:!1}),featuresMetadata:o},contextElements:e}}async select(e,t){e.forEach(o=>{if(o.find(l=>!l||!l.isConnected))throw new Error("One or more context elements are not connected to the DOM")});let r=a((o,l)=>{try{return o.selector(l)}catch{let u=l.ownerDocument?.defaultView?.parent?.document?.defaultView?.playwright;if(u)try{return u.selector(l)}catch{return}return}},"getElementSelector"),i=this.getSmallestCommonParents(e).map(this.calculateElementSize).sort((o,l)=>o.size-l.size).map(o=>o.element);return t?i.map(o=>{let l=Vr(o),u=r(l,o);if(!u)return null;let{element:f}=l.locator(u).locator(t);return f?r(l,f):null}).filter(o=>!!o):i.map(o=>{let l=Vr(o);if(!l){console.warn("Failed getting playwright for element",o);return}return r(l,o)}).filter(o=>!!o)}async selectFromMetadata(e){let{contextElements:t}=e;t.forEach(i=>this.getSelectorCandidatesForContextElement(i));let r=fa(t.map(i=>(i.candidatesSelectors??[]).map((o,l)=>l)));for(let i of r){t.forEach((l,u)=>{let f=i[u],h=f!==void 0?l.candidatesSelectors?.[f]:void 0;h!==void 0?l.selector=h:delete l.selector});let o=this.getSmallestCommonParentsFromMetadata(t).map(this.calculateElementSize).sort((l,u)=>l.size-u.size).map(l=>l.element);for(let l of o){let u=this.generateTargetSelectotionHistogram(l,e.targetSelection);if(u.size>0)return Array.from(u.keys()).slice(0,20).map(h=>Vr(h).generateSelectorAndLocator(h))}}return[]}generateTargetSelectotionHistogram(e,t){let r=new Map,i=a(o=>{o.filter(l=>l instanceof HTMLElement).forEach(l=>{r.set(l,(r.get(l)||0)+1)})},"addElementstoHistogram");if(t.xpath)try{i(lv(e,t.xpath))}catch{}return t.cssSelectors.forEach(o=>{try{i(le(o,e))}catch{}}),new Map([...r.entries()].sort((o,l)=>l[1]-o[1]))}calculateElementSize(e){let t=e.getBoundingClientRect();return{element:e,size:t.width*t.height}}getSelectorCandidatesForContextElement(e){let{featuresMetadata:t}=e;if(!t)throw new Error("Context element features metadata not found");let r=this.buildSelectorsCombination(t);e.candidatesSelectors=[];for(let i=0;i<r.length&&e.candidatesSelectors.length<this.MAX_SELECTORS_PER_CONTEXT_ELEMENT;i++){let o=r[i];if(o===void 0)continue;document.querySelector(o)&&e.candidatesSelectors.push(o)}}buildSelectorsCombination(e){let t=this.BASE_MAX_COMPONENTS_FOR_SELECTOR_COMBINATION,r=a(y=>{let x=[[]];for(let w=0;w<y.length;w++){let C=x.length;for(let E=0;E<C;E++){let M=x[E],O=y[w];M&&O!==void 0&&x.push(M.concat(O))}}return x},"getCombinations"),i=a(y=>y.trim().replace(/([!"#$%&'()*+,./:;<=>?@[\\\]^`{|}~])/g,"\\$1"),"escapeSelector"),o=e.tag,l=e.innerFeatures.filter(y=>!y.isRoot).map(y=>`:has(${gs(y)})`).slice(0,4),u=e.classes.map(y=>`.${i(y)}`),f=Object.entries(e.attributes).map(([y,x])=>`[${y}="${i(x)}"]`),h=a(()=>l.length+1+u.length+f.length>t,"exceedsMaxLength");for(;h()&&(u.pop(),!!h());)f.pop();let p=r([...u,...f,...l]),g=p.map(y=>[o,...y]);return p.push(...g),p.map(y=>y.join("")).filter(y=>y).sort((y,x)=>x.length-y.length)}extractFeaturesMetadata(e){e.forEach(t=>{let r=t.element;if(!r)return;let i=r.getAttribute("id");t.featuresMetadata={...i!==null?{id:i}:{},tag:r.tagName.toLowerCase(),innerText:this.innerTextExtractor.extract(r),innerFeatures:this.innerFeaturesExtractor.extract(r),classes:Array.from(r.classList).filter(o=>!pr.includes(o))||[],attributes:Array.from(r.attributes).reduce((o,l)=>(["class","style","id"].includes(l.name)||(o[l.name]=l.value),o),{})}})}generateAllContextualSelectors(e,t){let r=[],i=[!0,!1];for(let l of i)for(let u of i)for(let f of i)r.push({useId:l,useClasses:u,useTag:f});let o=r.map(l=>this.createContextualSelector(e,t,l)).filter(l=>!!l).filter(l=>{try{let u=le(l,e);return u.length===1&&u[0]===t}catch{return!1}});return[...new Set(o)]}createContextualSelector(e,t,{useId:r=!1,useClasses:i=!0,useTag:o=!0}){if(!e||!t)return null;let l=[],u=t;for(;u&&u!==e;)l.unshift(this.getSelectorPart(u,{useId:r,useClasses:i,useTag:o})),u=u.parentElement;return u?l.join(" ").trim():null}getSelectorPart(e,{useId:t=!1,useClasses:r=!0,useTag:i=!0}){if(t&&e.id&&e.id.match(/^\D/))return`#${e.id}`;let o=i?e.tagName.toLowerCase():"";if(r&&e.className){let l=e.className.trim().split(/\s+/).filter(u=>!pr.includes(u)).map(qs).join(".");l.length>0&&(o+="."+l)}return["name","label","aria-label","data-testid","role"].forEach(l=>{e.hasAttribute(l)&&(o+=`[${l}="${e.getAttribute(l)}"]`)}),o.trim()}getSmallestCommonRoot(e){let t=a(i=>{let o=[];for(;i;)o.push(i),i=i.parentElement;return o},"getAncestors"),r=t(e[0]);for(let i=1;i<e.length;i++){let o=t(e[i]);r=r.filter(l=>o.includes(l))}return r[0]??null}getSmallestCommonParentsFromMetadata(e){let t=e.map(r=>{try{if(!r.selector)return[];let i=le(r.selector);return r.selection.type==="content"?i.filter(o=>o.textContent===r.selection.value):i}catch{return[]}});return t.some(r=>r.length===0)?[]:this.getSmallestCommonParents(t)}getSmallestCommonParents(e){let t=new Set;fa(e).forEach(o=>{let l=this.getSmallestCommonRoot(o);l&&t.add(l)});let i=Array.from(t);return i.filter(o=>!i.some(l=>o!==l&&o.contains(l)))}};var Kl=class{constructor(){this.MAX_SNIPPET_SIZE=12e3;this.MAX_LIONTAIL_SIZE=6e3;this.MAX_ATTRIBUTE_SIZE=100;this.elementsInSimplifiedDomByChecksumId={}}static{a(this,"ParentChainReducer")}async reduce(e,t={useLionTail:!0,useChecksumIds:!0}){if(console.log("[ParentChainReducer] will reduce",e),!je(e,"HTMLElement")&&!je(e,"SVGElement"))throw new Error("Element is not an HTMLElement");return{reducedHTML:this.getAncestorsHTMLSnippet(e,t)}}getElementForChecksumId(e){return this.elementsInSimplifiedDomByChecksumId[e]}getAncestorsHTMLSnippet(e,{useLionTail:t=!0,useChecksumIds:r=!0}={}){this.elementsInSimplifiedDomByChecksumId={};let i=this.MAX_LIONTAIL_SIZE,o=this.MAX_ATTRIBUTE_SIZE,l=[],u=e;e.setAttribute("checksum-selected","true");try{for(;u;)l.push(u),u.parentNode&&u.parentNode instanceof ShadowRoot?u=u.parentNode.host:u=u.parentElement;l.reverse();let f=a(y=>{if(y instanceof Element)for(let x=y.attributes.length-1;x>=0;x--){let w=y.attributes[x];w&&w.name.length+w.value.length>o&&y.removeAttribute(w.name)}return y},"normalizeNode"),h,p=new Pn;do{h=(l[0]??e).cloneNode(!1);let y=h,x=ni(h);for(let w=1;w<l.length;w++){let C=l[w];if(!C)continue;if(t){let M=ni(C).length;if(M<=i&&x.length+M<=this.MAX_SNIPPET_SIZE){let O=this.deepCloneNode(C,r?p:void 0);y.appendChild(O);break}}let E=f(C.cloneNode(C===e));if(r&&E instanceof Element){let M=p.getAndIncrement();E.setAttribute("checksumid",M),this.elementsInSimplifiedDomByChecksumId[M]=C}y.appendChild(E),y=E}i=Math.max(i-10,0),o=Math.max(o-10,0)}while(h.outerHTML.length>this.MAX_SNIPPET_SIZE&&o>0);return this.filterNodeClasses(h),ni(h,{limitAttributeLength:!0})}catch(f){console.error("Error while getting ancestors HTML snippet",f);return}finally{e.removeAttribute("checksum-selected")}}deepCloneNode(e,t){let r=e.cloneNode(!1),i=[e],o=[r];for(;i.length;){let l=i.shift(),u=o.shift();if(!l||!u)break;for(let f=0;f<l.childNodes.length;f++){let h=l.childNodes[f];if(!h)continue;let p=h.cloneNode(!1);if(u.appendChild(p),t&&je(h,"HTMLElement")){let g=t.getAndIncrement();p.setAttribute("checksumid",g),this.elementsInSimplifiedDomByChecksumId[g]=h}i.push(h),o.push(p)}}return r}filterNodeClasses(e){let t=a(r=>{if("classList"in r){let i=r,o=i.classList;for(let l=0;l<o.length;l++){let u=o[l];u&&pr.includes(u)&&i.classList.remove(u)}for(let l=0;l<i.children.length;l++){let u=i.children[l];u&&t(u)}}},"filterClasses");t(e)}};var Xl=class{static{a(this,"FilesObserver")}constructor(e){this.fileInputsWithListeners=new Set,this.filesMap={},this.observer=null,this.sessionMirror=e}async getFilesByRrwebId(e){let t=this.filesMap[e]??[];try{let r=await Promise.all(t.map(async i=>({data:await tH(i),fileName:i.name})));return this.filesMap[e]=[],r}catch{return console.error("Error while parsing files to base 64"),[]}}init(){this.observeDOMChanges(),window.addEventListener("unload",this.cleanup.bind(this))}handleFileChange(e){let t=e.target,r=Array.from(t.files??[]),i=this.sessionMirror.getMeta(t);i&&(this.filesMap[i.id]=r)}addFileInputListeners(e){e.forEach(t=>{this.fileInputsWithListeners.has(t)||(t.addEventListener("change",this.handleFileChange.bind(this)),this.fileInputsWithListeners.add(t))})}observeDOMChanges(){let e=window.document,t=e.querySelectorAll('input[type="file"]');this.addFileInputListeners(t);let r=a(()=>{this.observer=new MutationObserver(o=>{o.forEach(l=>{if(l.type==="childList"){let u=l.target.querySelectorAll('input[type="file"]');this.addFileInputListeners(u)}})}),this.observer.observe(e.body,{childList:!0,subtree:!0})},"onBodyReady"),i=new MutationObserver(function(){e.body&&(i.disconnect(),r())});i.observe(e.documentElement,{childList:!0,subtree:!0})}cleanup(){this.observer&&this.observer.disconnect(),this.fileInputsWithListeners.forEach(e=>{e.removeEventListener("change",this.handleFileChange)}),this.fileInputsWithListeners.clear(),this.filesMap={}}},tH=a(n=>new Promise((e,t)=>{let r=new FileReader;r.onloadend=()=>{r.result?e(r.result.toString()):t(new Error("File reading failed"))},r.onerror=()=>{t(new Error("File reading failed"))},r.readAsDataURL(n)}),"convertFileToBase64");var Zl=class{constructor(e){this.sessionRecorder=e}static{a(this,"NativeDialogObserver")}init(){this.overrideDialog("alert"),this.overrideDialog("confirm"),this.overrideDialog("prompt")}overrideDialog(e){let t=a((r,i)=>{let o=this.determineDialogAction(i,e);this.sessionRecorder.addCustomEvent("native-dialog-event",{dialogType:e,dialogMessage:r,dialogResult:i,dialogAction:o})},"recordDialogEvent");if(e==="alert"){let r=window.alert.bind(window);window.alert=i=>{let o=r(i);return t(i??""),o}}else if(e==="confirm"){let r=window.confirm.bind(window);window.confirm=i=>{let o=r(i);return t(i??"",o),o}}else{let r=window.prompt.bind(window);window.prompt=i=>{let o=r(i);return t(i??"",o),o}}}determineDialogAction(e,t){return t==="alert"?"native_accept":e?"native_accept":"native_dismiss"}};function cv(n){return Reflect.get(window,"checksum")?.timeMachine.sessionReplayer.getMeta(n)?.id}a(cv,"getNodeRrwebId");async function uv(n,e,t){let r=await n.getSelectorAndLocator(e,{rootDocument:t,ignoredIframesSelectors:[".replayer-wrapper > iframe"],flags:{origin:"element-inspector"}}).catch(()=>null),i=r?.locator??"",o=r?.selector??"",l=r?.parentFramesSelectors??[],u=await n.selector(o,l).catch(()=>e),f=u&&u!==e?cv(u):void 0;return{locator:i,selector:o,parentFramesSelectors:l,locatorRrwebId:f}}a(uv,"generateInspectedElementSelection");var Jl=class n{constructor(){this.locatorCache=new Map}static{a(this,"InspectedElementCache")}static getInstance(){return n.instance??=new n,n.instance}setTimestamp(e){this.currentTimestamp=e}getCachedLocatorForElement(e){try{return this.currentTimestamp?this.locatorCache.get(this.getKeyForElement(e)):void 0}catch{return}}setCachedLocatorForElement(e,t){this.currentTimestamp&&this.locatorCache.set(this.getKeyForElement(e),t)}getKeyForElement(e){let t=cv(e);if(!t)throw new Error("Can't find rrwebId for element");return`${t}_${this.currentTimestamp}`}};function rH(n){let t=document.querySelector(".replayer-wrapper > iframe")?.contentDocument??null;return!t&&n.nodeType===Node.DOCUMENT_NODE&&(t=n),t??=document,t.defaultView}a(rH,"resolveDefaultView");var Ql=class n{constructor({rootDocument:e=document,getRenderDocument:t=a(u=>u?.document,"getRenderDocument"),defaultView:r,topLevelInspector:i,rootDocumentForSelectorGenerator:o,eventName:l}={}){this.hoveredElement=null;this.wasHoveredElementSelected=!1;this.selected=[];this.singleSelection=!0;this.subDocumentInspector=null;this.listening=!1;this.locatorCache=Jl.getInstance();this.onMouseOut=a(()=>{Wr.clearHighlights()},"onMouseOut");this.onMouseOver=a(e=>{this.onMouseOverAsync(e)},"onMouseOver");this.onMouseOverAsync=a(async e=>{let t=e.composedPath()[0];if(!t)return;let r=this.resolveHoverTargetElement(t);if(r){Wr.clearHighlights(),this.hoveredElement&&this.hoveredElement.removeEventListener("click",this.onClick,{capture:!0});try{await this.highlightHoveredElement(t,r)}catch(i){console.error("Error inspecting element",i.message)}}},"onMouseOverAsync");this.onClick=a(e=>{this.onClickAsync(e)},"onClick");this.onClickAsync=a(e=>{e.stopPropagation(),e.preventDefault(),!this.wasHoveredElementSelected&&(this.wasHoveredElementSelected=!0,this.hoveredElementSelection&&this.selected.push(this.hoveredElementSelection),this.singleSelection&&(this.topLevelInspector?this.topLevelInspector.stop():this.stop()),window.parent.postMessage({type:this.eventName,data:this.selected[this.selected.length-1]},"*"))},"onClickAsync");this.handleSubDocument=a((e,t)=>{if(this.subDocumentInspector){if(this.subDocumentInspector.rootDocument===e)return!0;this.stopSubDocumentInspector(!0)}return this.subDocumentInspector=new n({rootDocument:e,defaultView:t,topLevelInspector:this.topLevelInspector??this,getRenderDocument:this.getRenderDocument,eventName:this.eventName}),this.subDocumentInspector.start({singleSelection:this.singleSelection,timestamp:this.currentTimestamp}),!0},"handleSubDocument");this.stopSubDocumentInspector=a(e=>{this.subDocumentInspector&&(this.subDocumentInspector.stop(e),this.subDocumentInspector=null)},"stopSubDocumentInspector");this.rootDocument=e,this.topLevelInspector=i,this.getRenderDocument=t,this.eventName=l,this.defaultView=r??this.getDefaultView(),this.playwrightElementSelectorGenerator=new Bt,this.rootDocumentForSelectorGenerator=o??this.getDefaultView()?.document??document}static{a(this,"ElementInspector")}getDefaultView(){return rH(this.rootDocument)}start({singleSelection:e,timestamp:t}={singleSelection:!0}){this.singleSelection=e,this.locatorCache.setTimestamp(t),this.currentTimestamp=t,this.stop(),this.cleanSelection(),this.rootDocument.addEventListener("mouseover",this.onMouseOver),this.rootDocument.addEventListener("mouseout",this.onMouseOut),this.listening=!0}stop(e=!1){this.listening&&(this.listening=!1,this.subDocumentInspector&&this.stopSubDocumentInspector(e),Wr.clearHighlights(),this.hoveredElement&&this.hoveredElement.removeEventListener("click",this.onClick,{capture:!0}),this.currentTimestamp=void 0,this.hoveredElement=null,this.wasHoveredElementSelected=!1,this.rootDocument.removeEventListener("mouseover",this.onMouseOver),e&&this.cleanSelection())}cleanSelection(){this.subDocumentInspector&&this.subDocumentInspector.cleanSelection(),this.selected=[]}consumeSelections(){if(this.subDocumentInspector)return this.subDocumentInspector.consumeSelections();let e=this.selected;return this.cleanSelection(),e}resolveHoverTargetElement(e){if("getRootNode"in e){let r=e.getRootNode();if(r!==this.rootDocument)return this.handleSubDocument(r,this.defaultView),null}if(je(e,"HTMLIFrameElement")){let r=e.contentDocument;return r&&this.handleSubDocument(r,r.defaultView),null}if(this.subDocumentInspector&&this.stopSubDocumentInspector(!0),!je(e,"HTMLElement"))return null;let t=e;return t===this.hoveredElement||t.matches(".element-inspector-ignore")?null:t}async highlightHoveredElement(e,t){let{locator:r,selector:i,parentFramesSelectors:o,locatorRrwebId:l}=await this.getInspectedElementSelection(t,this.rootDocumentForSelectorGenerator),u=this.getRenderDocument(this.defaultView);if(Wr.highlightElement(t,{text:r.replace("frameLocator('iframe').",""),textPosition:"below",textWidthType:"auto",pointerEvents:"none",classNames:["element-inspector-ignore"],...u?{renderDocument:u}:{}}),l){let p=Reflect.get(window,"checksum")?.timeMachine.sessionReplayer.getNodeById(l);p&&Wr.highlightElement(p,{clear:!1,pointerEvents:"none",classNames:["element-inspector-ignore"],...u?{renderDocument:u}:{}})}this.hoveredElement=t,this.hoveredElementSelection={locator:r,selector:i,...o!==void 0?{parentFramesSelectors:o}:{}},this.wasHoveredElementSelected=!1,e.addEventListener("click",this.onClick,{capture:!0})}async getInspectedElementSelection(e,t){let r=this.locatorCache.getCachedLocatorForElement(e);return r||(r=await uv(this.playwrightElementSelectorGenerator,e,t),this.locatorCache.setCachedLocatorForElement(e,r)),r}};var Ih=typeof navigator<"u"?navigator.userAgent.toLowerCase().indexOf("firefox")>0:!1;function Ah(n,e,t,r){n.addEventListener?n.addEventListener(e,t,r):n.attachEvent&&n.attachEvent(`on${e}`,t)}a(Ah,"addEvent");function Zs(n,e,t,r){n&&(n.removeEventListener?n.removeEventListener(e,t,r):n.detachEvent&&n.detachEvent(`on${e}`,t))}a(Zs,"removeEvent");function hv(n,e){let t=e.slice(0,e.length-1),r=[];for(let i=0;i<t.length;i++)r.push(n[t[i].toLowerCase()]);return r}a(hv,"getMods");function pv(n){typeof n!="string"&&(n=""),n=n.replace(/\s/g,"");let e=n.split(","),t=e.lastIndexOf("");for(;t>=0;)e[t-1]+=",",e.splice(t,1),t=e.lastIndexOf("");return e}a(pv,"getKeys");function nH(n,e){let t=n.length>=e.length?n:e,r=n.length>=e.length?e:n,i=!0;for(let o=0;o<t.length;o++)r.indexOf(t[o])===-1&&(i=!1);return i}a(nH,"compareArray");function mv(n){let e=n.keyCode||n.which||n.charCode;return n.key&&/^[a-z]$/i.test(n.key)?n.key.toUpperCase().charCodeAt(0):(n.code&&/^Key[A-Z]$/.test(n.code)&&(e=n.code.charCodeAt(3)),e)}a(mv,"getLayoutIndependentKeyCode");var eo={backspace:8,"\u232B":8,tab:9,clear:12,enter:13,"\u21A9":13,return:13,esc:27,escape:27,space:32,left:37,up:38,right:39,down:40,arrowup:38,arrowdown:40,arrowleft:37,arrowright:39,del:46,delete:46,ins:45,insert:45,home:36,end:35,pageup:33,pagedown:34,capslock:20,num_0:96,num_1:97,num_2:98,num_3:99,num_4:100,num_5:101,num_6:102,num_7:103,num_8:104,num_9:105,num_multiply:106,num_add:107,num_enter:108,num_subtract:109,num_decimal:110,num_divide:111,"\u21EA":20,",":188,".":190,"/":191,"`":192,"-":Ih?173:189,"=":Ih?61:187,";":Ih?59:186,"'":222,"{":219,"}":221,"[":219,"]":221,"\\":220},Jt={"\u21E7":16,shift:16,"\u2325":18,alt:18,option:18,"\u2303":17,ctrl:17,control:17,"\u2318":91,cmd:91,meta:91,command:91},Js={16:"shiftKey",18:"altKey",17:"ctrlKey",91:"metaKey",shiftKey:16,ctrlKey:17,altKey:18,metaKey:91},st={16:!1,18:!1,17:!1,91:!1},Xe={};for(let n=1;n<20;n++)eo[`f${n}`]=111+n;var Ve=[],Qs=null,Di=null,gv="all",Ur=new Map,ki=a(n=>eo[n.toLowerCase()]||Jt[n.toLowerCase()]||n.toUpperCase().charCodeAt(0),"code"),iH=a(n=>Object.keys(eo).find(e=>eo[e]===n),"getKey"),sH=a(n=>Object.keys(Jt).find(e=>Jt[e]===n),"getModifier"),yv=a(n=>{gv=n||"all"},"setScope"),to=a(()=>gv||"all","getScope"),oH=a(()=>Ve.slice(0),"getPressedKeyCodes"),aH=a(()=>Ve.map(n=>iH(n)||sH(n)||String.fromCharCode(n)),"getPressedKeyString"),lH=a(()=>{let n=[];return Object.keys(Xe).forEach(e=>{Xe[e].forEach(({key:t,scope:r,mods:i,shortcut:o})=>{n.push({scope:r,shortcut:o,mods:i,keys:t.split("+").map(l=>ki(l))})})}),n},"getAllKeyCodes"),bv=a(n=>{let e=n.target||n.srcElement,{tagName:t}=e,r=!0,i=t==="INPUT"&&!["checkbox","radio","range","button","file","reset","submit","color"].includes(e.type);return(e.isContentEditable||(i||t==="TEXTAREA"||t==="SELECT")&&!e.readOnly)&&(r=!1),r},"filter"),cH=a(n=>(typeof n=="string"&&(n=ki(n)),Ve.indexOf(n)!==-1),"isPressed"),uH=a((n,e)=>{let t,r;n||(n=to());for(let i in Xe)if(Object.prototype.hasOwnProperty.call(Xe,i))for(t=Xe[i],r=0;r<t.length;)t[r].scope===n?t.splice(r,1).forEach(({element:l})=>Nh(l)):r++;to()===n&&yv(e||"all")},"deleteScope");function fH(n){let e=mv(n);n.key&&n.key.toLowerCase()==="capslock"&&(e=ki(n.key));let t=Ve.indexOf(e);if(t>=0&&Ve.splice(t,1),n.key&&n.key.toLowerCase()==="meta"&&Ve.splice(0,Ve.length),(e===93||e===224)&&(e=91),e in st){st[e]=!1;for(let r in Jt)Jt[r]===e&&(Cr[r]=!1)}}a(fH,"clearModifier");var Ev=a((n,...e)=>{if(typeof n>"u")Object.keys(Xe).forEach(t=>{Array.isArray(Xe[t])&&Xe[t].forEach(r=>ec(r)),delete Xe[t]}),Nh(null);else if(Array.isArray(n))n.forEach(t=>{t.key&&ec(t)});else if(typeof n=="object")n.key&&ec(n);else if(typeof n=="string"){let[t,r]=e;typeof t=="function"&&(r=t,t=""),ec({key:n,scope:t,method:r,splitKey:"+"})}},"unbind"),ec=a(({key:n,scope:e,method:t,splitKey:r="+"})=>{pv(n).forEach(o=>{let l=o.split(r),u=l.length,f=l[u-1],h=f==="*"?"*":ki(f);if(!Xe[h])return;e||(e=to());let p=u>1?hv(Jt,l):[],g=[];Xe[h]=Xe[h].filter(y=>{let w=(t?y.method===t:!0)&&y.scope===e&&nH(y.mods,p);return w&&g.push(y.element),!w}),g.forEach(y=>Nh(y))})},"eachUnbind");function fv(n,e,t,r){if(e.element!==r)return;let i;if(e.scope===t||e.scope==="all"){i=e.mods.length>0;for(let o in st)Object.prototype.hasOwnProperty.call(st,o)&&(!st[o]&&e.mods.indexOf(+o)>-1||st[o]&&e.mods.indexOf(+o)===-1)&&(i=!1);(e.mods.length===0&&!st[16]&&!st[18]&&!st[17]&&!st[91]||i||e.shortcut==="*")&&(e.keys=[],e.keys=e.keys.concat(Ve),e.method(n,e)===!1&&(n.preventDefault?n.preventDefault():n.returnValue=!1,n.stopPropagation&&n.stopPropagation(),n.cancelBubble&&(n.cancelBubble=!0)))}}a(fv,"eventHandler");function dv(n,e){let t=Xe["*"],r=mv(n);if(n.key&&n.key.toLowerCase()==="capslock"||!(Cr.filter||bv).call(this,n))return;if((r===93||r===224)&&(r=91),Ve.indexOf(r)===-1&&r!==229&&Ve.push(r),["metaKey","ctrlKey","altKey","shiftKey"].forEach(f=>{let h=Js[f];n[f]&&Ve.indexOf(h)===-1?Ve.push(h):!n[f]&&Ve.indexOf(h)>-1?Ve.splice(Ve.indexOf(h),1):f==="metaKey"&&n[f]&&(Ve=Ve.filter(p=>p in Js||p===r))}),r in st){st[r]=!0;for(let f in Jt)if(Object.prototype.hasOwnProperty.call(Jt,f)){let h=Js[Jt[f]];Cr[f]=n[h]}if(!t)return}for(let f in st)Object.prototype.hasOwnProperty.call(st,f)&&(st[f]=n[Js[f]]);n.getModifierState&&!(n.altKey&&!n.ctrlKey)&&n.getModifierState("AltGraph")&&(Ve.indexOf(17)===-1&&Ve.push(17),Ve.indexOf(18)===-1&&Ve.push(18),st[17]=!0,st[18]=!0);let o=to();if(t)for(let f=0;f<t.length;f++)t[f].scope===o&&(n.type==="keydown"&&t[f].keydown||n.type==="keyup"&&t[f].keyup)&&fv(n,t[f],o,e);if(!(r in Xe))return;let l=Xe[r],u=l.length;for(let f=0;f<u;f++)if((n.type==="keydown"&&l[f].keydown||n.type==="keyup"&&l[f].keyup)&&l[f].key){let h=l[f],{splitKey:p}=h,g=h.key.split(p),y=[];for(let x=0;x<g.length;x++)y.push(ki(g[x]));y.sort().join("")===Ve.sort().join("")&&fv(n,h,o,e)}}a(dv,"dispatch");var Cr=a(function n(e,t,r){Ve=[];let i=pv(e),o=[],l="all",u=document,f=0,h=!1,p=!0,g="+",y=!1,x=!1;if(r===void 0&&typeof t=="function"&&(r=t),Object.prototype.toString.call(t)==="[object Object]"){let w=t;w.scope&&(l=w.scope),w.element&&(u=w.element),w.keyup&&(h=w.keyup),w.keydown!==void 0&&(p=w.keydown),w.capture!==void 0&&(y=w.capture),typeof w.splitKey=="string"&&(g=w.splitKey),w.single===!0&&(x=!0)}for(typeof t=="string"&&(l=t),x&&Ev(e,l);f<i.length;f++){let w=i[f].split(g);o=[],w.length>1&&(o=hv(Jt,w));let C=w[w.length-1];C=C==="*"?"*":ki(C),C in Xe||(Xe[C]=[]),Xe[C].push({keyup:h,keydown:p,scope:l,mods:o,shortcut:i[f],method:r,key:i[f],splitKey:g,element:u})}if(typeof u<"u"&&typeof window<"u"){if(!Ur.has(u)){let w=a((E=window.event)=>dv(E,u),"keydownListener"),C=a((E=window.event)=>{dv(E,u),fH(E)},"keyupListenr");Ur.set(u,{keydownListener:w,keyupListenr:C,capture:y}),Ah(u,"keydown",w,y),Ah(u,"keyup",C,y)}if(!Qs){let w=a(()=>{Ve=[]},"listener");Qs={listener:w,capture:y},Ah(window,"focus",w,y)}if(!Di&&typeof document<"u"){let w=a(()=>{Ve=[];for(let M in st)st[M]=!1;for(let M in Jt)n[M]=!1},"onFullscreenChange"),C=w,E=w;document.addEventListener("fullscreenchange",C),document.addEventListener("webkitfullscreenchange",E),Di={fullscreen:C,webkit:E}}}},"hotkeys2");function dH(n,e="all"){Object.keys(Xe).forEach(t=>{Xe[t].filter(i=>i.scope===e&&i.shortcut===n).forEach(i=>{i&&i.method&&i.method({},i)})})}a(dH,"trigger");function Nh(n){let e=Object.values(Xe).flat();if(e.findIndex(({element:r})=>r===n)<0&&n){let{keydownListener:r,keyupListenr:i,capture:o}=Ur.get(n)||{};r&&i&&(Zs(n,"keyup",i,o),Zs(n,"keydown",r,o),Ur.delete(n))}if(e.length<=0||Ur.size<=0){if(Array.from(Ur.keys()).forEach(i=>{let{keydownListener:o,keyupListenr:l,capture:u}=Ur.get(i)||{};o&&l&&(Zs(i,"keyup",l,u),Zs(i,"keydown",o,u),Ur.delete(i))}),Ur.clear(),Object.keys(Xe).forEach(i=>delete Xe[i]),Qs){let{listener:i,capture:o}=Qs;Zs(window,"focus",i,o),Qs=null}Di&&typeof document<"u"&&(document.removeEventListener("fullscreenchange",Di.fullscreen),document.removeEventListener("webkitfullscreenchange",Di.webkit),Di=null)}}a(Nh,"removeKeyEvent");var Oh={getPressedKeyString:aH,setScope:yv,getScope:to,deleteScope:uH,getPressedKeyCodes:oH,getAllKeyCodes:lH,isPressed:cH,filter:bv,trigger:dH,unbind:Ev,keyMap:eo,modifier:Jt,modifierMap:Js};for(let n in Oh){let e=n;Object.prototype.hasOwnProperty.call(Oh,e)&&(Cr[e]=Oh[e])}if(typeof window<"u"){let n=window.hotkeys;Cr.noConflict=e=>(e&&window.hotkeys===Cr&&(window.hotkeys=n),Cr),window.hotkeys=Cr}var Pi=class{constructor(){this.boundShortcuts=[]}static{a(this,"KeybindingsManager")}addKeybinding(e){let t=e.key.toLowerCase();if(this.boundShortcuts.includes(t))return;this.boundShortcuts.push(t),Cr(t,{capture:!0,keydown:!0},i=>{i.preventDefault(),e.callback(i)})}};var tc=class{constructor(e){this.sessionRecorder=e;this.elementInspector=null;this.keybindingsManager=new Pi;this.activeHandler=null;this.createHandler=a(e=>({handlerFunc:a(t=>{try{e.handlerFunc(t)}finally{this.stopObserver()}},"handlerFunc"),handlerType:e.handlerType}),"createHandler");this.toHaveTextHandler=a(()=>e=>{let t=e.data?.data,r=window.prompt(`Please enter the expected text for the element:
|
|
76
76
|
${t.locator}`);r!==null&&this.sessionRecorder.addCustomEvent("assertion",{matcher:`toHaveText("${r}")`,locator:t.locator})},"toHaveTextHandler");this.toBeVisibleHandler=a(()=>e=>{let t=e.data?.data;this.sessionRecorder.addCustomEvent("assertion",{matcher:"toBeVisible()",locator:t.locator})},"toBeVisibleHandler")}static{a(this,"AssertionsObserver")}init(){this.keybindingsManager.addKeybinding({key:"ctrl+\u2318+a",callback:a(()=>this.toggleObserver({handlerFunc:this.toHaveTextHandler(),handlerType:"toHaveText"}),"callback")}),this.keybindingsManager.addKeybinding({key:"ctrl+\u2318+s",callback:a(()=>this.toggleObserver({handlerFunc:this.toBeVisibleHandler(),handlerType:"toBeVisible"}),"callback")}),this.keybindingsManager.addKeybinding({key:"esc",callback:a(e=>{this.activeHandler&&(e.stopPropagation(),this.cleanUpHandler())},"callback")})}toggleObserver(e){if(this.activeHandler){this.cleanUpHandler();return}let t=this.createHandler(e);this.activeHandler=t,this.startObserver(),window.addEventListener("message",t.handlerFunc,{once:!0})}cleanUpHandler(){this.activeHandler&&(window.removeEventListener("message",this.activeHandler.handlerFunc),this.stopObserver(),this.activeHandler=null)}isInspectorActive(){return!!this.elementInspector}enableEventsFilter(){this.sessionRecorder.addCustomEvent("filter",{filter:{only:[{type:W.Custom,tag:"assertion"}],exclude:[]}})}disableEventsFilter(){this.sessionRecorder.addCustomEvent("filter",{filter:{only:[],exclude:[]}})}startObserver(){this.elementInspector=new Ql({rootDocument:window.document}),this.elementInspector.start(),this.enableEventsFilter()}stopObserver(){this.isInspectorActive()&&(this.elementInspector?.stop(),this.elementInspector=null,this.disableEventsFilter(),this.cleanUpHandler())}};var rc=class{constructor(e){this.sessionRecorder=e;this.elementInspector=null;this.keybindingsManager=new Pi;this.activeHandler=null;this.lastMousePosition={x:0,y:0};this.listenForMouseMove()}static{a(this,"ActionsObserver")}init(){this.keybindingsManager.addKeybinding({key:"ctrl+\u2318+h",callback:a(()=>{(async()=>{try{await this.handleImmediateHover()}catch(e){console.error("[ActionsObserver] calling handleImmediateHover:",e)}})()},"callback")})}listenForMouseMove(){try{document.addEventListener("mousemove",e=>{try{this.lastMousePosition.x=e.clientX,this.lastMousePosition.y=e.clientY}catch(t){console.error("[ActionsObserver] mousemove event listener error:",t)}})}catch(e){console.error("[ActionsObserver] listenForMouseMove error:",e)}}async handleImmediateHover(){let e=document.elementFromPoint(this.lastMousePosition.x,this.lastMousePosition.y);if(!e)return;let r=(await new Bt().getSelectorAndLocator(e))?.locator;r&&(this.sessionRecorder.addCustomEvent("hover",{locator:r}),this.highlightElement(e))}highlightElement(e){if(!("style"in e))return;let t=e,r=t.style.backgroundColor,i=t.style.transition;t.style.transition="background-color 0.3s ease",t.style.backgroundColor="rgba(255, 255, 0, 0.3)",setTimeout(()=>{t.style.backgroundColor=r,t.style.transition=i},500)}cleanUpHandler(){this.activeHandler&&(window.removeEventListener("message",this.activeHandler.handlerFunc),this.stopObserver(),this.activeHandler=null)}isInspectorActive(){return!!this.elementInspector}stopObserver(){this.isInspectorActive()&&(this.elementInspector?.stop(),this.elementInspector=null,this.cleanUpHandler())}};var nc=class{constructor(e){this.sessionRecorder=e}static{a(this,"BlobObserver")}init(){this.overrideCreateObjectURL()}overrideCreateObjectURL(){let e=URL.createObjectURL.bind(URL);URL.createObjectURL=t=>{let r=e(t);return typeof t.arrayBuffer!="function"||t.arrayBuffer().then(i=>{let o=new Uint8Array(i),l=Array.from(o);this.sessionRecorder.addCustomEvent("blob-data",{blobData:l,mimeType:t.type,originalUrl:r})}).catch(i=>{console.warn("Failed to process blob data for recording:",i)}),r}}};var hH="$checksum",ic=class{constructor(){this.testIdCounter=0;this.initialized=!1;this.config={};Oi.setPrefix(hH),this.elementSelector=new Bt,this.htmlReducer=new Hl,this.parentChainReducer=new Kl,this.compoundSelector=new $n(this.htmlReducer)}static{a(this,"ChecksumTestGenerator")}getCompoundSelector(){return this.compoundSelector}betterTemplatizr(e){return wr(e)}async buildCustomPlaywrightSelectors(e,t=[],r={},i=document){typeof e=="string"&&(e=this.htmlReducer.getElementForChecksumId(e));let o=t.map(l=>({...l,element:this.parentChainReducer.getElementForChecksumId(l.checksumId)})).filter(({element:l})=>!!l);return await new pn(i).generate(e,o,{isPartOfListItem:!1,isForContextElement:!1,addCSSSelectorGenerator:!0,expandCSSKeyElements:!0,...r})}async buildArbitraryListItem(e){return typeof e=="string"&&(e=this.htmlReducer.getElementForChecksumId(e)),await new pn().generateArbitraryItemListSelector(e)??[]}testElementSelector(e,t,r,i=!0){let o=typeof t=="string"?this.htmlReducer.getElementForChecksumId(t):t;return o?new pn().testSelector(e,o,r,i):(console.error("Element not found",t),{valid:!1,error:"Element not found"})}async getParentChainHTML(e,t=!0,r=!0){return typeof e=="string"&&(e=this.htmlReducer.getElementForChecksumId(e)),(await this.parentChainReducer.reduce(e,{useLionTail:t,useChecksumIds:r})).reducedHTML??""}init(e,t={},{sessionRecorder:r=!0,filesObserver:i=!1,assertionsObserver:o=!1,actionsObserver:l=!1,nativeDialogObserver:u=!1,blobObserver:f=!0}={}){this.appSpecificRules=e,this.config=t,!this.initialized&&(this.initialized=!0,r&&(this.sessionMirror=new Dl((h,p)=>{h.isCheckout=p,window.checksumSendBroadcastMessage?.("rrweb",[h]),this.lastRrwebEventTimestamp=h.timestamp},t.recordOptions)),i&&this.sessionMirror&&(this.filesObserver=new Xl(this.sessionMirror),this.filesObserver.init()),o&&this.sessionMirror&&(this.assertionsObserver=new tc(this.sessionMirror),this.assertionsObserver.init()),l&&this.sessionMirror&&(this.actionsObserver=new rc(this.sessionMirror),this.actionsObserver.init()),u&&this.sessionMirror&&(this.nativeDialogObserver=new Zl(this.sessionMirror),this.nativeDialogObserver.init()),f&&this.sessionMirror&&(this.blobObserver=new nc(this.sessionMirror),this.blobObserver.init()),this.sessionMirror&&(this.sessionMirror.start(),this.htmlReducer.setSessionRecorder(this.sessionMirror)),On.limitChildren=this.appSpecificRules?.esraSelectionRules?.limitChildren??[],this.config.esraTimeout!==void 0&&(On.timeout=this.config.esraTimeout),this.config.showFrontendLogs?Oi.removePrefix():this.config.logPrefix?.length&&Oi.setPrefix(this.config.logPrefix))}getElementSelector(){return this.elementSelector}getLastSelectionLogs(){return this.currentESRASelector?this.currentESRASelector.getLastSelectionLogs():{}}getBestMatchingElementSimilarityScore(e){return this.currentESRASelector=new On(e),this.currentESRASelector.selectOne().score}async extractESRAMetadata(e){return new kr(document).extract(e).toMetadata()}async select(e,t){return await this.elementSelector.selector(e,t)}async getSelectionDataForSelector(e,t){try{let r=await this.elementSelector.selector(e,t);if(!(r instanceof HTMLElement))return console.warn("could not find element for selector: "+e),null;let o=(await this.elementSelector.getSelectorAndLocator(r,{testIdSelector:this.appSpecificRules?.esraSelectionRules?.testIdSelector}))?.locator??"",l=await this.extractESRAMetadata(r);return{generatedLocator:o,esraMetadata:l,selector:e,...t!==void 0&&{parentFramesSelectors:t}}}catch(r){console.log("getMetadataForSelector exception",r);return}}async getMatchingElementSelectionData(e,{minSelectionScore:t,cachedSelector:r,staticMetadata:i}={minSelectionScore:.3},o=!1){try{let l=null,u,f;if(r&&(console.log("Trying to locate using cached selector",r),l=await this.elementSelector.selector(r)),!l){console.log("Trying to locate using ESRA",e),ua(i)&&console.log("and static data",i),this.currentESRASelector=new On(e,i);let p=this.currentESRASelector.selectOne({minSelectionScore:t});t!==void 0&&p.score>=t?(l=p.candidate,u=p.score,f=p.clickOffset):console.log("Best matching element was below threshold",p)}if(console.log(l?[`Located with score ${u}`,l]:"Element not located"),!l)return;o&&new ut(l).scrollIntoView(),this.highlightElement(l);let h=await this.makeMatchingElementSelectionData(l,u);return f&&(h.clickOffset=f),h}catch(l){console.log("getMatchingElementSelectionData exception",l);return}}getAllInteractableElementsForLastSelectQuery(){if(!this.currentESRASelector)return Promise.resolve([]);let e=this.currentESRASelector.getFinalCandidates();return Promise.all(e.map(async t=>({esraMetadata:t.esraMetadata,selectionData:await this.makeMatchingElementSelectionData(t.candidate,t.score)})))}async getInteractableElementsRaw(){return An()}async getInteractableElements(){let e=An(),t=new kr(document);return Promise.all(e.map(async r=>{let i=t.extract(r).toMetadata(),o=await this.makeMatchingElementSelectionData(r);return{esraMetadata:i,selectionData:o}}))}getCurrentESRASelector(){return this.currentESRASelector}startFlashingElementsDetection(){return this.htmlReducer.startFlashingElementsDetection()}async reduceHTML(e={},t={},r=document){let i=await this.htmlReducer.reduce(r,{...this.appSpecificRules,...e},t);if(this.lastRrwebEventTimestamp&&(i.lastRRwebEvent={timestamp:this.lastRrwebEventTimestamp}),t.extractESRAForInterpretationRequiredElements){console.log("Extracting ESRA for interpretation required elements...");let o=this.htmlReducer.getInteractableElementsInReducedHTML();i.elementsForNodeInterpretation=o.reduce((l,{checksumId:u,element:f})=>{if(!(f instanceof HTMLElement)||f.innerText?.trim().length)return l;let p=new kr(document).extract(f).toMetadata();return[...l,{checksumId:u,esraMetadata:p}]},[]),console.log("Done with ESRA extraction for interpretation required elements")}return i}getMoreItemsForTemplate(e,t={}){return this.htmlReducer.getMoreElementsFromTemplate(e,{...this.appSpecificRules,...t})}displayInterpretationForElements(e){this.clearHighlights(),this.htmlReducer.getInteractableElements().forEach(({checksumId:r,element:i})=>{let o=e[r];if(o){if(!i.isConnected){console.log(`Element ${r} is not connected to the DOM, skipping display`);return}this.highlightElement(i,{text:o,textType:"hover",clear:!1,textStyle:{width:"120px"}})}})}async overlayInteractableElementsWithChecksumId({reduceBeforeRender:e=!1,mode:t="full",textPosition:r=t==="tag"?"above":void 0,shouldFlipHighlightTextOutsideViewport:i=!0,scrollIntoView:o=!1,checksumId:l}={}){this.clearHighlights(),e&&await this.reduceHTML();let u=a((h,p,g)=>{if(!p.isConnected){console.log(`Element ${h} is not connected to the DOM, skipping display`);return}let{width:y,height:x}=p.getBoundingClientRect();if(y<=0||x<=0)return;function w(R){switch(t){case"tag":return{background:R,width:"initial",left:"-2px",border:`3px dashed ${R}`,"font-weight":"bold"};case"full":return{background:"black",height:"100%"};default:return}}a(w,"getTextStyleByMode");function C(R){let L=["red","gold","green","steelBlue","orange","hotPink","darkViolet","brown"];return R?L[R%L.length]??"red":"red"}a(C,"getColor");let E=C(g);function M(){switch(t){case"tag":return{outline:`3px dashed ${E}`};case"full":return{outline:"none"};case"selected":return{outline:"6px dashed red",opacity:"0.7"}}}a(M,"getHighlightStyle");let O=w(E);this.highlightElement(p,{...h!==null&&{text:h},clear:!1,highlightStyle:M(),...r?{textPosition:r}:{},...O!==void 0&&{textStyle:O},shouldFlipHighlightTextOutsideViewport:i})},"overlayElement");if(t==="selected"&&l){let h=await this.getElementForChecksumId(l);u(null,h,0);return}this.htmlReducer.getInteractableElementsInReducedHTML().filter(h=>!dt(h.element,{...uh,scrollIntoView:o}).isHidden).forEach(({checksumId:h,element:p},g)=>{u(h,p,g)})}async getElementForChecksumId(e){return this.htmlReducer.getElementForChecksumId(e)}async getSelectorForChecksumId(e){let t=await this.htmlReducer.getSelectorForChecksumId(e),{element:r,innerText:i,...o}=t;return o}hasInnerTextByChecksumId(e){return this.htmlReducer.hasInnerTextByChecksumId(e)}async getSelectorByPosition(e,t){let r=document.elementFromPoint(e,t);return await this.elementSelector.getSelectorAndLocator(r)}isInput(e){let r=le(e)[0];return r?["input","textarea"].includes(r.tagName.toLowerCase()):!1}querySelectorExtended(e){return le(e)}getReactTree(e){return DS(e)}isHidden(e,t){return dt(e,t)}showGrid(){this.removeGrid();let e=document.createElement("style");e.id="checksum_grid_style",e.innerHTML=`
|
|
77
77
|
.checksum_grid {
|
|
78
78
|
background-image: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADIAAAAyCAYAAAAeP4ixAAAAAXNSR0IArs4c6QAAAJ1JREFUaEPtksEJgDAUxX73H1oRxAECkSrppacXaNI1M8f84Kz7Idf95XP0kM3yVWSzIFORikgG+lqSWIytCFYnDSsiicXYimB10rAikliMrQhWJw0rIonF2IpgddKwIpJYjK0IVicNKyKJxdiKYHXSsCKSWIytCFYnDSsiicXYimB10rAikliMrQhWJw0rIonF2IpgddLwKSLx38Oej8ZiASoSUGMAAAAASUVORK5CYII=");
|