@reticlehq/browser 3.7.0 → 3.8.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.
Files changed (92) hide show
  1. package/dist/actions/action-report.d.ts +10 -0
  2. package/dist/actions/action-report.js +29 -2
  3. package/dist/actions/actions-dom.d.ts +4 -0
  4. package/dist/actions/actions-dom.js +20 -4
  5. package/dist/actions/actions.d.ts +1 -0
  6. package/dist/actions/actions.js +35 -17
  7. package/dist/actions/appeared-text.js +2 -2
  8. package/dist/actions/click-target.d.ts +1 -0
  9. package/dist/actions/click-target.js +14 -0
  10. package/dist/actions/danger-context.d.ts +2 -1
  11. package/dist/actions/danger-context.js +20 -5
  12. package/dist/activate.d.ts +14 -0
  13. package/dist/activate.js +43 -0
  14. package/dist/busy.d.ts +3 -0
  15. package/dist/busy.js +42 -0
  16. package/dist/commands/commands.js +45 -17
  17. package/dist/connect-options.d.ts +12 -1
  18. package/dist/connect-options.js +18 -1
  19. package/dist/dom/a11y.d.ts +2 -0
  20. package/dist/dom/a11y.js +191 -159
  21. package/dist/dom/chart.d.ts +3 -2
  22. package/dist/dom/chart.js +3 -2
  23. package/dist/dom/dom-ignore.d.ts +6 -0
  24. package/dist/dom/dom-ignore.js +43 -1
  25. package/dist/dom/layout-audit.d.ts +15 -0
  26. package/dist/dom/layout-audit.js +208 -0
  27. package/dist/dom/paint-context.d.ts +15 -0
  28. package/dist/dom/paint-context.js +78 -0
  29. package/dist/dom/query.d.ts +2 -1
  30. package/dist/dom/query.js +97 -34
  31. package/dist/dom/shadow-registry.d.ts +1 -0
  32. package/dist/dom/shadow-registry.js +27 -0
  33. package/dist/dom/snapshot.d.ts +5 -0
  34. package/dist/dom/snapshot.js +85 -34
  35. package/dist/dom/stable-selector.d.ts +1 -0
  36. package/dist/dom/stable-selector.js +19 -0
  37. package/dist/dom/text-match.d.ts +12 -0
  38. package/dist/dom/text-match.js +115 -0
  39. package/dist/dom/theme.d.ts +1 -0
  40. package/dist/dom/theme.js +21 -9
  41. package/dist/dom/virtualized.js +5 -1
  42. package/dist/index.d.ts +2 -1
  43. package/dist/index.js +5 -0
  44. package/dist/observers/blind-spots.js +3 -2
  45. package/dist/observers/canvas.d.ts +18 -0
  46. package/dist/observers/canvas.js +76 -0
  47. package/dist/observers/dom.js +66 -18
  48. package/dist/observers/field.d.ts +11 -0
  49. package/dist/observers/field.js +117 -13
  50. package/dist/observers/install-all.js +4 -0
  51. package/dist/observers/media.d.ts +2 -0
  52. package/dist/observers/media.js +32 -0
  53. package/dist/observers/net-detail/network-body.d.ts +2 -0
  54. package/dist/observers/net-detail/network-body.js +8 -1
  55. package/dist/observers/network.js +26 -6
  56. package/dist/observers/route.d.ts +2 -0
  57. package/dist/observers/route.js +33 -4
  58. package/dist/presenter/chrome/presenter-report-copy.d.ts +0 -5
  59. package/dist/presenter/chrome/presenter-report-copy.js +0 -14
  60. package/dist/presenter/hud-telemetry.js +1 -1
  61. package/dist/presenter/presenter-chat-views.d.ts +3 -4
  62. package/dist/presenter/presenter-chat-views.js +47 -20
  63. package/dist/presenter/presenter-config.d.ts +1 -0
  64. package/dist/presenter/presenter-config.js +1 -0
  65. package/dist/presenter/presenter-frame.d.ts +3 -2
  66. package/dist/presenter/presenter-frame.js +24 -15
  67. package/dist/presenter/presenter-harness-row.d.ts +4 -15
  68. package/dist/presenter/presenter-harness-row.js +11 -50
  69. package/dist/presenter/presenter-report-styles.js +0 -17
  70. package/dist/presenter/presenter-report.d.ts +1 -2
  71. package/dist/presenter/presenter-report.js +4 -54
  72. package/dist/presenter/presenter-run-state.js +2 -1
  73. package/dist/presenter/presenter-settings.d.ts +2 -3
  74. package/dist/presenter/presenter-settings.js +14 -17
  75. package/dist/presenter/presenter-shell.d.ts +6 -4
  76. package/dist/presenter/presenter-shell.js +37 -7
  77. package/dist/presenter/presenter.js +32 -11
  78. package/dist/registry/store-adapters.d.ts +5 -2
  79. package/dist/registry/store-adapters.js +40 -10
  80. package/dist/reticle-inject.js +602 -611
  81. package/dist/reticle.d.ts +4 -2
  82. package/dist/reticle.js +36 -6
  83. package/dist/security/page-location.d.ts +2 -0
  84. package/dist/security/page-location.js +7 -0
  85. package/dist/security/serialization.js +1 -1
  86. package/dist/storage-keys.d.ts +1 -0
  87. package/dist/storage-keys.js +1 -0
  88. package/dist/timers/native/native-timers.d.ts +1 -0
  89. package/dist/timers/native/native-timers.js +5 -0
  90. package/dist/transport/transport.d.ts +1 -0
  91. package/dist/transport/transport.js +18 -0
  92. package/package.json +6 -2
@@ -1,8 +1,8 @@
1
- "use strict";var ReticleSdk=(()=>{var em=Object.defineProperty;var ZC=Object.getOwnPropertyDescriptor;var QC=Object.getOwnPropertyNames;var JC=Object.prototype.hasOwnProperty;var JT=t=>{throw TypeError(t)};var S=(t,e,n)=>()=>{if(n)throw n[0];try{return t&&(e=t(t=0)),e}catch(r){throw n=[r],r}};var bs=(t,e)=>{for(var n in e)em(t,n,{get:e[n],enumerable:!0})},eL=(t,e,n,r)=>{if(e&&typeof e=="object"||typeof e=="function")for(let o of QC(e))!JC.call(t,o)&&o!==n&&em(t,o,{get:()=>e[o],enumerable:!(r=ZC(e,o))||r.enumerable});return t};var tL=t=>eL(em({},"__esModule",{value:!0}),t);var tm=(t,e,n)=>e.has(t)||JT("Cannot "+n);var c=(t,e,n)=>(tm(t,e,"read from private field"),n?n.call(t):e.get(t)),b=(t,e,n)=>e.has(t)?JT("Cannot add the same private member more than once"):e instanceof WeakSet?e.add(t):e.set(t,n),h=(t,e,n,r)=>(tm(t,e,"write to private field"),r?r.call(t,n):e.set(t,n),n),E=(t,e,n)=>(tm(t,e,"access private method"),n);var eS=(t,e,n,r)=>({set _(o){h(t,e,o,n)},get _(){return c(t,e,r)}});var tS=S(()=>{"use strict"});var le,nm,P,vr,Pl=S(()=>{(function(t){t.assertEqual=o=>{};function e(o){}t.assertIs=e;function n(o){throw new Error}t.assertNever=n,t.arrayToEnum=o=>{let a={};for(let s of o)a[s]=s;return a},t.getValidEnumValues=o=>{let a=t.objectKeys(o).filter(l=>typeof o[o[l]]!="number"),s={};for(let l of a)s[l]=o[l];return t.objectValues(s)},t.objectValues=o=>t.objectKeys(o).map(function(a){return o[a]}),t.objectKeys=typeof Object.keys=="function"?o=>Object.keys(o):o=>{let a=[];for(let s in o)Object.prototype.hasOwnProperty.call(o,s)&&a.push(s);return a},t.find=(o,a)=>{for(let s of o)if(a(s))return s},t.isInteger=typeof Number.isInteger=="function"?o=>Number.isInteger(o):o=>typeof o=="number"&&Number.isFinite(o)&&Math.floor(o)===o;function r(o,a=" | "){return o.map(s=>typeof s=="string"?`'${s}'`:s).join(a)}t.joinValues=r,t.jsonStringifyReplacer=(o,a)=>typeof a=="bigint"?a.toString():a})(le||(le={}));(function(t){t.mergeShapes=(e,n)=>({...e,...n})})(nm||(nm={}));P=le.arrayToEnum(["string","nan","number","integer","float","boolean","date","bigint","symbol","function","undefined","null","array","object","unknown","promise","void","never","map","set"]),vr=t=>{switch(typeof t){case"undefined":return P.undefined;case"string":return P.string;case"number":return Number.isNaN(t)?P.nan:P.number;case"boolean":return P.boolean;case"function":return P.function;case"bigint":return P.bigint;case"symbol":return P.symbol;case"object":return Array.isArray(t)?P.array:t===null?P.null:t.then&&typeof t.then=="function"&&t.catch&&typeof t.catch=="function"?P.promise:typeof Map!="undefined"&&t instanceof Map?P.map:typeof Set!="undefined"&&t instanceof Set?P.set:typeof Date!="undefined"&&t instanceof Date?P.date:P.object;default:return P.unknown}}});var N,nL,Zt,Yu=S(()=>{Pl();N=le.arrayToEnum(["invalid_type","invalid_literal","custom","invalid_union","invalid_union_discriminator","invalid_enum_value","unrecognized_keys","invalid_arguments","invalid_return_type","invalid_date","invalid_string","too_small","too_big","invalid_intersection_types","not_multiple_of","not_finite"]),nL=t=>JSON.stringify(t,null,2).replace(/"([^"]+)":/g,"$1:"),Zt=class t extends Error{get errors(){return this.issues}constructor(e){super(),this.issues=[],this.addIssue=r=>{this.issues=[...this.issues,r]},this.addIssues=(r=[])=>{this.issues=[...this.issues,...r]};let n=new.target.prototype;Object.setPrototypeOf?Object.setPrototypeOf(this,n):this.__proto__=n,this.name="ZodError",this.issues=e}format(e){let n=e||function(a){return a.message},r={_errors:[]},o=a=>{for(let s of a.issues)if(s.code==="invalid_union")s.unionErrors.map(o);else if(s.code==="invalid_return_type")o(s.returnTypeError);else if(s.code==="invalid_arguments")o(s.argumentsError);else if(s.path.length===0)r._errors.push(n(s));else{let l=r,d=0;for(;d<s.path.length;){let u=s.path[d];d===s.path.length-1?(l[u]=l[u]||{_errors:[]},l[u]._errors.push(n(s))):l[u]=l[u]||{_errors:[]},l=l[u],d++}}};return o(this),r}static assert(e){if(!(e instanceof t))throw new Error(`Not a ZodError: ${e}`)}toString(){return this.message}get message(){return JSON.stringify(this.issues,le.jsonStringifyReplacer,2)}get isEmpty(){return this.issues.length===0}flatten(e=n=>n.message){let n={},r=[];for(let o of this.issues)if(o.path.length>0){let a=o.path[0];n[a]=n[a]||[],n[a].push(e(o))}else r.push(e(o));return{formErrors:r,fieldErrors:n}}get formErrors(){return this.flatten()}};Zt.create=t=>new Zt(t)});var rL,oo,rm=S(()=>{Yu();Pl();rL=(t,e)=>{let n;switch(t.code){case N.invalid_type:t.received===P.undefined?n="Required":n=`Expected ${t.expected}, received ${t.received}`;break;case N.invalid_literal:n=`Invalid literal value, expected ${JSON.stringify(t.expected,le.jsonStringifyReplacer)}`;break;case N.unrecognized_keys:n=`Unrecognized key(s) in object: ${le.joinValues(t.keys,", ")}`;break;case N.invalid_union:n="Invalid input";break;case N.invalid_union_discriminator:n=`Invalid discriminator value. Expected ${le.joinValues(t.options)}`;break;case N.invalid_enum_value:n=`Invalid enum value. Expected ${le.joinValues(t.options)}, received '${t.received}'`;break;case N.invalid_arguments:n="Invalid function arguments";break;case N.invalid_return_type:n="Invalid function return type";break;case N.invalid_date:n="Invalid date";break;case N.invalid_string:typeof t.validation=="object"?"includes"in t.validation?(n=`Invalid input: must include "${t.validation.includes}"`,typeof t.validation.position=="number"&&(n=`${n} at one or more positions greater than or equal to ${t.validation.position}`)):"startsWith"in t.validation?n=`Invalid input: must start with "${t.validation.startsWith}"`:"endsWith"in t.validation?n=`Invalid input: must end with "${t.validation.endsWith}"`:le.assertNever(t.validation):t.validation!=="regex"?n=`Invalid ${t.validation}`:n="Invalid";break;case N.too_small:t.type==="array"?n=`Array must contain ${t.exact?"exactly":t.inclusive?"at least":"more than"} ${t.minimum} element(s)`:t.type==="string"?n=`String must contain ${t.exact?"exactly":t.inclusive?"at least":"over"} ${t.minimum} character(s)`:t.type==="number"?n=`Number must be ${t.exact?"exactly equal to ":t.inclusive?"greater than or equal to ":"greater than "}${t.minimum}`:t.type==="bigint"?n=`Number must be ${t.exact?"exactly equal to ":t.inclusive?"greater than or equal to ":"greater than "}${t.minimum}`:t.type==="date"?n=`Date must be ${t.exact?"exactly equal to ":t.inclusive?"greater than or equal to ":"greater than "}${new Date(Number(t.minimum))}`:n="Invalid input";break;case N.too_big:t.type==="array"?n=`Array must contain ${t.exact?"exactly":t.inclusive?"at most":"less than"} ${t.maximum} element(s)`:t.type==="string"?n=`String must contain ${t.exact?"exactly":t.inclusive?"at most":"under"} ${t.maximum} character(s)`:t.type==="number"?n=`Number must be ${t.exact?"exactly":t.inclusive?"less than or equal to":"less than"} ${t.maximum}`:t.type==="bigint"?n=`BigInt must be ${t.exact?"exactly":t.inclusive?"less than or equal to":"less than"} ${t.maximum}`:t.type==="date"?n=`Date must be ${t.exact?"exactly":t.inclusive?"smaller than or equal to":"smaller than"} ${new Date(Number(t.maximum))}`:n="Invalid input";break;case N.custom:n="Invalid input";break;case N.invalid_intersection_types:n="Intersection results could not be merged";break;case N.not_multiple_of:n=`Number must be a multiple of ${t.multipleOf}`;break;case N.not_finite:n="Number must be finite";break;default:n=e.defaultError,le.assertNever(t)}return{message:n}},oo=rL});function oL(t){nS=t}function Ts(){return nS}var nS,Xu=S(()=>{rm();nS=oo});function M(t,e){let n=Ts(),r=Hl({issueData:e,data:t.data,path:t.path,errorMaps:[t.common.contextualErrorMap,t.schemaErrorMap,n,n===oo?void 0:oo].filter(o=>!!o)});t.common.issues.push(r)}var Hl,iL,ft,W,Bi,yt,qu,Zu,zo,Ss,om=S(()=>{Xu();rm();Hl=t=>{let{data:e,path:n,errorMaps:r,issueData:o}=t,a=[...n,...o.path||[]],s={...o,path:a};if(o.message!==void 0)return{...o,path:a,message:o.message};let l="",d=r.filter(u=>!!u).slice().reverse();for(let u of d)l=u(s,{data:e,defaultError:l}).message;return{...o,path:a,message:l}},iL=[];ft=class t{constructor(){this.value="valid"}dirty(){this.value==="valid"&&(this.value="dirty")}abort(){this.value!=="aborted"&&(this.value="aborted")}static mergeArray(e,n){let r=[];for(let o of n){if(o.status==="aborted")return W;o.status==="dirty"&&e.dirty(),r.push(o.value)}return{status:e.value,value:r}}static async mergeObjectAsync(e,n){let r=[];for(let o of n){let a=await o.key,s=await o.value;r.push({key:a,value:s})}return t.mergeObjectSync(e,r)}static mergeObjectSync(e,n){let r={};for(let o of n){let{key:a,value:s}=o;if(a.status==="aborted"||s.status==="aborted")return W;a.status==="dirty"&&e.dirty(),s.status==="dirty"&&e.dirty(),a.value!=="__proto__"&&(typeof s.value!="undefined"||o.alwaysSet)&&(r[a.value]=s.value)}return{status:e.value,value:r}}},W=Object.freeze({status:"aborted"}),Bi=t=>({status:"dirty",value:t}),yt=t=>({status:"valid",value:t}),qu=t=>t.status==="aborted",Zu=t=>t.status==="dirty",zo=t=>t.status==="valid",Ss=t=>typeof Promise!="undefined"&&t instanceof Promise});var rS=S(()=>{});var V,oS=S(()=>{(function(t){t.errToObj=e=>typeof e=="string"?{message:e}:e||{},t.toString=e=>typeof e=="string"?e:e==null?void 0:e.message})(V||(V={}))});function Q(t){if(!t)return{};let{errorMap:e,invalid_type_error:n,required_error:r,description:o}=t;if(e&&(n||r))throw new Error(`Can't use "invalid_type_error" or "required_error" in conjunction with custom error map.`);return e?{errorMap:e,description:o}:{errorMap:(s,l)=>{var u,p;let{message:d}=t;return s.code==="invalid_enum_value"?{message:d!=null?d:l.defaultError}:typeof l.data=="undefined"?{message:(u=d!=null?d:r)!=null?u:l.defaultError}:s.code!=="invalid_type"?{message:l.defaultError}:{message:(p=d!=null?d:n)!=null?p:l.defaultError}},description:o}}function cS(t){let e="[0-5]\\d";t.precision?e=`${e}\\.\\d{${t.precision}}`:t.precision==null&&(e=`${e}(\\.\\d+)?`);let n=t.precision?"+":"?";return`([01]\\d|2[0-3]):[0-5]\\d(:${e})${n}`}function xL(t){return new RegExp(`^${cS(t)}$`)}function lS(t){let e=`${sS}T${cS(t)}`,n=[];return n.push(t.local?"Z?":"Z"),t.offset&&n.push("([+-]\\d{2}:?\\d{2})"),e=`${e}(${n.join("|")})`,new RegExp(`^${e}$`)}function AL(t,e){return!!((e==="v4"||!e)&&mL.test(t)||(e==="v6"||!e)&&EL.test(t))}function yL(t,e){if(!uL.test(t))return!1;try{let[n]=t.split(".");if(!n)return!1;let r=n.replace(/-/g,"+").replace(/_/g,"/").padEnd(n.length+(4-n.length%4)%4,"="),o=JSON.parse(atob(r));return!(typeof o!="object"||o===null||"typ"in o&&(o==null?void 0:o.typ)!=="JWT"||!o.alg||e&&o.alg!==e)}catch{return!1}}function vL(t,e){return!!((e==="v4"||!e)&&gL.test(t)||(e==="v6"||!e)&&bL.test(t))}function RL(t,e){let n=(t.toString().split(".")[1]||"").length,r=(e.toString().split(".")[1]||"").length,o=n>r?n:r,a=Number.parseInt(t.toFixed(o).replace(".","")),s=Number.parseInt(e.toFixed(o).replace(".",""));return a%s/10**o}function _s(t){if(t instanceof Qt){let e={};for(let n in t.shape){let r=t.shape[n];e[n]=Ln.create(_s(r))}return new Qt({...t._def,shape:()=>e})}else return t instanceof so?new so({...t._def,type:_s(t.element)}):t instanceof Ln?Ln.create(_s(t.unwrap())):t instanceof Nr?Nr.create(_s(t.unwrap())):t instanceof Rr?Rr.create(t.items.map(e=>_s(e))):t}function am(t,e){let n=vr(t),r=vr(e);if(t===e)return{valid:!0,data:t};if(n===P.object&&r===P.object){let o=le.objectKeys(e),a=le.objectKeys(t).filter(l=>o.indexOf(l)!==-1),s={...t,...e};for(let l of a){let d=am(t[l],e[l]);if(!d.valid)return{valid:!1};s[l]=d.data}return{valid:!0,data:s}}else if(n===P.array&&r===P.array){if(t.length!==e.length)return{valid:!1};let o=[];for(let a=0;a<t.length;a++){let s=t[a],l=e[a],d=am(s,l);if(!d.valid)return{valid:!1};o.push(d.data)}return{valid:!0,data:o}}else return n===P.date&&r===P.date&&+t==+e?{valid:!0,data:t}:{valid:!1}}function dS(t,e){return new Ji({values:t,typeName:z.ZodEnum,...Q(e)})}function aS(t,e){let n=typeof t=="function"?t(e):typeof t=="string"?{message:t}:t;return typeof n=="string"?{message:n}:n}function uS(t,e={},n){return t?Xo.create().superRefine((r,o)=>{var s,l;let a=t(r);if(a instanceof Promise)return a.then(d=>{var u,p;if(!d){let f=aS(e,r),m=(p=(u=f.fatal)!=null?u:n)!=null?p:!0;o.addIssue({code:"custom",...f,fatal:m})}});if(!a){let d=aS(e,r),u=(l=(s=d.fatal)!=null?s:n)!=null?l:!0;o.addIssue({code:"custom",...d,fatal:u})}}):Xo.create()}var kn,iS,ie,aL,sL,cL,lL,dL,uL,pL,fL,hL,im,mL,gL,EL,bL,TL,SL,sS,_L,Yo,Vi,ji,Ki,Wi,xs,zi,Yi,Xo,ao,er,As,so,Qt,Xi,io,Qu,qi,Rr,Ju,ys,vs,ep,Zi,Qi,Ji,ea,qo,Dn,Ln,Nr,ta,na,Rs,NL,Ul,Fl,ra,wL,z,OL,pS,fS,IL,CL,hS,LL,kL,DL,ML,$L,PL,HL,UL,FL,GL,BL,VL,jL,KL,WL,zL,YL,XL,qL,ZL,QL,JL,e1,t1,n1,r1,o1,i1,a1,s1,c1,l1,d1,u1,mS=S(()=>{Yu();Xu();oS();om();Pl();kn=class{constructor(e,n,r,o){this._cachedPath=[],this.parent=e,this.data=n,this._path=r,this._key=o}get path(){return this._cachedPath.length||(Array.isArray(this._key)?this._cachedPath.push(...this._path,...this._key):this._cachedPath.push(...this._path,this._key)),this._cachedPath}},iS=(t,e)=>{if(zo(e))return{success:!0,data:e.value};if(!t.common.issues.length)throw new Error("Validation failed but no issues detected.");return{success:!1,get error(){if(this._error)return this._error;let n=new Zt(t.common.issues);return this._error=n,this._error}}};ie=class{get description(){return this._def.description}_getType(e){return vr(e.data)}_getOrReturnCtx(e,n){return n||{common:e.parent.common,data:e.data,parsedType:vr(e.data),schemaErrorMap:this._def.errorMap,path:e.path,parent:e.parent}}_processInputParams(e){return{status:new ft,ctx:{common:e.parent.common,data:e.data,parsedType:vr(e.data),schemaErrorMap:this._def.errorMap,path:e.path,parent:e.parent}}}_parseSync(e){let n=this._parse(e);if(Ss(n))throw new Error("Synchronous parse encountered promise.");return n}_parseAsync(e){let n=this._parse(e);return Promise.resolve(n)}parse(e,n){let r=this.safeParse(e,n);if(r.success)return r.data;throw r.error}safeParse(e,n){var a;let r={common:{issues:[],async:(a=n==null?void 0:n.async)!=null?a:!1,contextualErrorMap:n==null?void 0:n.errorMap},path:(n==null?void 0:n.path)||[],schemaErrorMap:this._def.errorMap,parent:null,data:e,parsedType:vr(e)},o=this._parseSync({data:e,path:r.path,parent:r});return iS(r,o)}"~validate"(e){var r,o;let n={common:{issues:[],async:!!this["~standard"].async},path:[],schemaErrorMap:this._def.errorMap,parent:null,data:e,parsedType:vr(e)};if(!this["~standard"].async)try{let a=this._parseSync({data:e,path:[],parent:n});return zo(a)?{value:a.value}:{issues:n.common.issues}}catch(a){(o=(r=a==null?void 0:a.message)==null?void 0:r.toLowerCase())!=null&&o.includes("encountered")&&(this["~standard"].async=!0),n.common={issues:[],async:!0}}return this._parseAsync({data:e,path:[],parent:n}).then(a=>zo(a)?{value:a.value}:{issues:n.common.issues})}async parseAsync(e,n){let r=await this.safeParseAsync(e,n);if(r.success)return r.data;throw r.error}async safeParseAsync(e,n){let r={common:{issues:[],contextualErrorMap:n==null?void 0:n.errorMap,async:!0},path:(n==null?void 0:n.path)||[],schemaErrorMap:this._def.errorMap,parent:null,data:e,parsedType:vr(e)},o=this._parse({data:e,path:r.path,parent:r}),a=await(Ss(o)?o:Promise.resolve(o));return iS(r,a)}refine(e,n){let r=o=>typeof n=="string"||typeof n=="undefined"?{message:n}:typeof n=="function"?n(o):n;return this._refinement((o,a)=>{let s=e(o),l=()=>a.addIssue({code:N.custom,...r(o)});return typeof Promise!="undefined"&&s instanceof Promise?s.then(d=>d?!0:(l(),!1)):s?!0:(l(),!1)})}refinement(e,n){return this._refinement((r,o)=>e(r)?!0:(o.addIssue(typeof n=="function"?n(r,o):n),!1))}_refinement(e){return new Dn({schema:this,typeName:z.ZodEffects,effect:{type:"refinement",refinement:e}})}superRefine(e){return this._refinement(e)}constructor(e){this.spa=this.safeParseAsync,this._def=e,this.parse=this.parse.bind(this),this.safeParse=this.safeParse.bind(this),this.parseAsync=this.parseAsync.bind(this),this.safeParseAsync=this.safeParseAsync.bind(this),this.spa=this.spa.bind(this),this.refine=this.refine.bind(this),this.refinement=this.refinement.bind(this),this.superRefine=this.superRefine.bind(this),this.optional=this.optional.bind(this),this.nullable=this.nullable.bind(this),this.nullish=this.nullish.bind(this),this.array=this.array.bind(this),this.promise=this.promise.bind(this),this.or=this.or.bind(this),this.and=this.and.bind(this),this.transform=this.transform.bind(this),this.brand=this.brand.bind(this),this.default=this.default.bind(this),this.catch=this.catch.bind(this),this.describe=this.describe.bind(this),this.pipe=this.pipe.bind(this),this.readonly=this.readonly.bind(this),this.isNullable=this.isNullable.bind(this),this.isOptional=this.isOptional.bind(this),this["~standard"]={version:1,vendor:"zod",validate:n=>this["~validate"](n)}}optional(){return Ln.create(this,this._def)}nullable(){return Nr.create(this,this._def)}nullish(){return this.nullable().optional()}array(){return so.create(this)}promise(){return qo.create(this,this._def)}or(e){return Xi.create([this,e],this._def)}and(e){return qi.create(this,e,this._def)}transform(e){return new Dn({...Q(this._def),schema:this,typeName:z.ZodEffects,effect:{type:"transform",transform:e}})}default(e){let n=typeof e=="function"?e:()=>e;return new ta({...Q(this._def),innerType:this,defaultValue:n,typeName:z.ZodDefault})}brand(){return new Ul({typeName:z.ZodBranded,type:this,...Q(this._def)})}catch(e){let n=typeof e=="function"?e:()=>e;return new na({...Q(this._def),innerType:this,catchValue:n,typeName:z.ZodCatch})}describe(e){let n=this.constructor;return new n({...this._def,description:e})}pipe(e){return Fl.create(this,e)}readonly(){return ra.create(this)}isOptional(){return this.safeParse(void 0).success}isNullable(){return this.safeParse(null).success}},aL=/^c[^\s-]{8,}$/i,sL=/^[0-9a-z]+$/,cL=/^[0-9A-HJKMNP-TV-Z]{26}$/i,lL=/^[0-9a-fA-F]{8}\b-[0-9a-fA-F]{4}\b-[0-9a-fA-F]{4}\b-[0-9a-fA-F]{4}\b-[0-9a-fA-F]{12}$/i,dL=/^[a-z0-9_-]{21}$/i,uL=/^[A-Za-z0-9-_]+\.[A-Za-z0-9-_]+\.[A-Za-z0-9-_]*$/,pL=/^[-+]?P(?!$)(?:(?:[-+]?\d+Y)|(?:[-+]?\d+[.,]\d+Y$))?(?:(?:[-+]?\d+M)|(?:[-+]?\d+[.,]\d+M$))?(?:(?:[-+]?\d+W)|(?:[-+]?\d+[.,]\d+W$))?(?:(?:[-+]?\d+D)|(?:[-+]?\d+[.,]\d+D$))?(?:T(?=[\d+-])(?:(?:[-+]?\d+H)|(?:[-+]?\d+[.,]\d+H$))?(?:(?:[-+]?\d+M)|(?:[-+]?\d+[.,]\d+M$))?(?:[-+]?\d+(?:[.,]\d+)?S)?)??$/,fL=/^(?!\.)(?!.*\.\.)([A-Z0-9_'+\-\.]*)[A-Z0-9_+-]@([A-Z0-9][A-Z0-9\-]*\.)+[A-Z]{2,}$/i,hL="^(\\p{Extended_Pictographic}|\\p{Emoji_Component})+$",mL=/^(?:(?:25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])\.){3}(?:25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])$/,gL=/^(?:(?:25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])\.){3}(?:25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])\/(3[0-2]|[12]?[0-9])$/,EL=/^(([0-9a-fA-F]{1,4}:){7,7}[0-9a-fA-F]{1,4}|([0-9a-fA-F]{1,4}:){1,7}:|([0-9a-fA-F]{1,4}:){1,6}:[0-9a-fA-F]{1,4}|([0-9a-fA-F]{1,4}:){1,5}(:[0-9a-fA-F]{1,4}){1,2}|([0-9a-fA-F]{1,4}:){1,4}(:[0-9a-fA-F]{1,4}){1,3}|([0-9a-fA-F]{1,4}:){1,3}(:[0-9a-fA-F]{1,4}){1,4}|([0-9a-fA-F]{1,4}:){1,2}(:[0-9a-fA-F]{1,4}){1,5}|[0-9a-fA-F]{1,4}:((:[0-9a-fA-F]{1,4}){1,6})|:((:[0-9a-fA-F]{1,4}){1,7}|:)|fe80:(:[0-9a-fA-F]{0,4}){0,4}%[0-9a-zA-Z]{1,}|::(ffff(:0{1,4}){0,1}:){0,1}((25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])\.){3,3}(25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])|([0-9a-fA-F]{1,4}:){1,4}:((25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])\.){3,3}(25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9]))$/,bL=/^(([0-9a-fA-F]{1,4}:){7,7}[0-9a-fA-F]{1,4}|([0-9a-fA-F]{1,4}:){1,7}:|([0-9a-fA-F]{1,4}:){1,6}:[0-9a-fA-F]{1,4}|([0-9a-fA-F]{1,4}:){1,5}(:[0-9a-fA-F]{1,4}){1,2}|([0-9a-fA-F]{1,4}:){1,4}(:[0-9a-fA-F]{1,4}){1,3}|([0-9a-fA-F]{1,4}:){1,3}(:[0-9a-fA-F]{1,4}){1,4}|([0-9a-fA-F]{1,4}:){1,2}(:[0-9a-fA-F]{1,4}){1,5}|[0-9a-fA-F]{1,4}:((:[0-9a-fA-F]{1,4}){1,6})|:((:[0-9a-fA-F]{1,4}){1,7}|:)|fe80:(:[0-9a-fA-F]{0,4}){0,4}%[0-9a-zA-Z]{1,}|::(ffff(:0{1,4}){0,1}:){0,1}((25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])\.){3,3}(25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])|([0-9a-fA-F]{1,4}:){1,4}:((25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])\.){3,3}(25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9]))\/(12[0-8]|1[01][0-9]|[1-9]?[0-9])$/,TL=/^([0-9a-zA-Z+/]{4})*(([0-9a-zA-Z+/]{2}==)|([0-9a-zA-Z+/]{3}=))?$/,SL=/^([0-9a-zA-Z-_]{4})*(([0-9a-zA-Z-_]{2}(==)?)|([0-9a-zA-Z-_]{3}(=)?))?$/,sS="((\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-((0[13578]|1[02])-(0[1-9]|[12]\\d|3[01])|(0[469]|11)-(0[1-9]|[12]\\d|30)|(02)-(0[1-9]|1\\d|2[0-8])))",_L=new RegExp(`^${sS}$`);Yo=class t extends ie{_parse(e){if(this._def.coerce&&(e.data=String(e.data)),this._getType(e)!==P.string){let a=this._getOrReturnCtx(e);return M(a,{code:N.invalid_type,expected:P.string,received:a.parsedType}),W}let r=new ft,o;for(let a of this._def.checks)if(a.kind==="min")e.data.length<a.value&&(o=this._getOrReturnCtx(e,o),M(o,{code:N.too_small,minimum:a.value,type:"string",inclusive:!0,exact:!1,message:a.message}),r.dirty());else if(a.kind==="max")e.data.length>a.value&&(o=this._getOrReturnCtx(e,o),M(o,{code:N.too_big,maximum:a.value,type:"string",inclusive:!0,exact:!1,message:a.message}),r.dirty());else if(a.kind==="length"){let s=e.data.length>a.value,l=e.data.length<a.value;(s||l)&&(o=this._getOrReturnCtx(e,o),s?M(o,{code:N.too_big,maximum:a.value,type:"string",inclusive:!0,exact:!0,message:a.message}):l&&M(o,{code:N.too_small,minimum:a.value,type:"string",inclusive:!0,exact:!0,message:a.message}),r.dirty())}else if(a.kind==="email")fL.test(e.data)||(o=this._getOrReturnCtx(e,o),M(o,{validation:"email",code:N.invalid_string,message:a.message}),r.dirty());else if(a.kind==="emoji")im||(im=new RegExp(hL,"u")),im.test(e.data)||(o=this._getOrReturnCtx(e,o),M(o,{validation:"emoji",code:N.invalid_string,message:a.message}),r.dirty());else if(a.kind==="uuid")lL.test(e.data)||(o=this._getOrReturnCtx(e,o),M(o,{validation:"uuid",code:N.invalid_string,message:a.message}),r.dirty());else if(a.kind==="nanoid")dL.test(e.data)||(o=this._getOrReturnCtx(e,o),M(o,{validation:"nanoid",code:N.invalid_string,message:a.message}),r.dirty());else if(a.kind==="cuid")aL.test(e.data)||(o=this._getOrReturnCtx(e,o),M(o,{validation:"cuid",code:N.invalid_string,message:a.message}),r.dirty());else if(a.kind==="cuid2")sL.test(e.data)||(o=this._getOrReturnCtx(e,o),M(o,{validation:"cuid2",code:N.invalid_string,message:a.message}),r.dirty());else if(a.kind==="ulid")cL.test(e.data)||(o=this._getOrReturnCtx(e,o),M(o,{validation:"ulid",code:N.invalid_string,message:a.message}),r.dirty());else if(a.kind==="url")try{new URL(e.data)}catch{o=this._getOrReturnCtx(e,o),M(o,{validation:"url",code:N.invalid_string,message:a.message}),r.dirty()}else a.kind==="regex"?(a.regex.lastIndex=0,a.regex.test(e.data)||(o=this._getOrReturnCtx(e,o),M(o,{validation:"regex",code:N.invalid_string,message:a.message}),r.dirty())):a.kind==="trim"?e.data=e.data.trim():a.kind==="includes"?e.data.includes(a.value,a.position)||(o=this._getOrReturnCtx(e,o),M(o,{code:N.invalid_string,validation:{includes:a.value,position:a.position},message:a.message}),r.dirty()):a.kind==="toLowerCase"?e.data=e.data.toLowerCase():a.kind==="toUpperCase"?e.data=e.data.toUpperCase():a.kind==="startsWith"?e.data.startsWith(a.value)||(o=this._getOrReturnCtx(e,o),M(o,{code:N.invalid_string,validation:{startsWith:a.value},message:a.message}),r.dirty()):a.kind==="endsWith"?e.data.endsWith(a.value)||(o=this._getOrReturnCtx(e,o),M(o,{code:N.invalid_string,validation:{endsWith:a.value},message:a.message}),r.dirty()):a.kind==="datetime"?lS(a).test(e.data)||(o=this._getOrReturnCtx(e,o),M(o,{code:N.invalid_string,validation:"datetime",message:a.message}),r.dirty()):a.kind==="date"?_L.test(e.data)||(o=this._getOrReturnCtx(e,o),M(o,{code:N.invalid_string,validation:"date",message:a.message}),r.dirty()):a.kind==="time"?xL(a).test(e.data)||(o=this._getOrReturnCtx(e,o),M(o,{code:N.invalid_string,validation:"time",message:a.message}),r.dirty()):a.kind==="duration"?pL.test(e.data)||(o=this._getOrReturnCtx(e,o),M(o,{validation:"duration",code:N.invalid_string,message:a.message}),r.dirty()):a.kind==="ip"?AL(e.data,a.version)||(o=this._getOrReturnCtx(e,o),M(o,{validation:"ip",code:N.invalid_string,message:a.message}),r.dirty()):a.kind==="jwt"?yL(e.data,a.alg)||(o=this._getOrReturnCtx(e,o),M(o,{validation:"jwt",code:N.invalid_string,message:a.message}),r.dirty()):a.kind==="cidr"?vL(e.data,a.version)||(o=this._getOrReturnCtx(e,o),M(o,{validation:"cidr",code:N.invalid_string,message:a.message}),r.dirty()):a.kind==="base64"?TL.test(e.data)||(o=this._getOrReturnCtx(e,o),M(o,{validation:"base64",code:N.invalid_string,message:a.message}),r.dirty()):a.kind==="base64url"?SL.test(e.data)||(o=this._getOrReturnCtx(e,o),M(o,{validation:"base64url",code:N.invalid_string,message:a.message}),r.dirty()):le.assertNever(a);return{status:r.value,value:e.data}}_regex(e,n,r){return this.refinement(o=>e.test(o),{validation:n,code:N.invalid_string,...V.errToObj(r)})}_addCheck(e){return new t({...this._def,checks:[...this._def.checks,e]})}email(e){return this._addCheck({kind:"email",...V.errToObj(e)})}url(e){return this._addCheck({kind:"url",...V.errToObj(e)})}emoji(e){return this._addCheck({kind:"emoji",...V.errToObj(e)})}uuid(e){return this._addCheck({kind:"uuid",...V.errToObj(e)})}nanoid(e){return this._addCheck({kind:"nanoid",...V.errToObj(e)})}cuid(e){return this._addCheck({kind:"cuid",...V.errToObj(e)})}cuid2(e){return this._addCheck({kind:"cuid2",...V.errToObj(e)})}ulid(e){return this._addCheck({kind:"ulid",...V.errToObj(e)})}base64(e){return this._addCheck({kind:"base64",...V.errToObj(e)})}base64url(e){return this._addCheck({kind:"base64url",...V.errToObj(e)})}jwt(e){return this._addCheck({kind:"jwt",...V.errToObj(e)})}ip(e){return this._addCheck({kind:"ip",...V.errToObj(e)})}cidr(e){return this._addCheck({kind:"cidr",...V.errToObj(e)})}datetime(e){var n,r;return typeof e=="string"?this._addCheck({kind:"datetime",precision:null,offset:!1,local:!1,message:e}):this._addCheck({kind:"datetime",precision:typeof(e==null?void 0:e.precision)=="undefined"?null:e==null?void 0:e.precision,offset:(n=e==null?void 0:e.offset)!=null?n:!1,local:(r=e==null?void 0:e.local)!=null?r:!1,...V.errToObj(e==null?void 0:e.message)})}date(e){return this._addCheck({kind:"date",message:e})}time(e){return typeof e=="string"?this._addCheck({kind:"time",precision:null,message:e}):this._addCheck({kind:"time",precision:typeof(e==null?void 0:e.precision)=="undefined"?null:e==null?void 0:e.precision,...V.errToObj(e==null?void 0:e.message)})}duration(e){return this._addCheck({kind:"duration",...V.errToObj(e)})}regex(e,n){return this._addCheck({kind:"regex",regex:e,...V.errToObj(n)})}includes(e,n){return this._addCheck({kind:"includes",value:e,position:n==null?void 0:n.position,...V.errToObj(n==null?void 0:n.message)})}startsWith(e,n){return this._addCheck({kind:"startsWith",value:e,...V.errToObj(n)})}endsWith(e,n){return this._addCheck({kind:"endsWith",value:e,...V.errToObj(n)})}min(e,n){return this._addCheck({kind:"min",value:e,...V.errToObj(n)})}max(e,n){return this._addCheck({kind:"max",value:e,...V.errToObj(n)})}length(e,n){return this._addCheck({kind:"length",value:e,...V.errToObj(n)})}nonempty(e){return this.min(1,V.errToObj(e))}trim(){return new t({...this._def,checks:[...this._def.checks,{kind:"trim"}]})}toLowerCase(){return new t({...this._def,checks:[...this._def.checks,{kind:"toLowerCase"}]})}toUpperCase(){return new t({...this._def,checks:[...this._def.checks,{kind:"toUpperCase"}]})}get isDatetime(){return!!this._def.checks.find(e=>e.kind==="datetime")}get isDate(){return!!this._def.checks.find(e=>e.kind==="date")}get isTime(){return!!this._def.checks.find(e=>e.kind==="time")}get isDuration(){return!!this._def.checks.find(e=>e.kind==="duration")}get isEmail(){return!!this._def.checks.find(e=>e.kind==="email")}get isURL(){return!!this._def.checks.find(e=>e.kind==="url")}get isEmoji(){return!!this._def.checks.find(e=>e.kind==="emoji")}get isUUID(){return!!this._def.checks.find(e=>e.kind==="uuid")}get isNANOID(){return!!this._def.checks.find(e=>e.kind==="nanoid")}get isCUID(){return!!this._def.checks.find(e=>e.kind==="cuid")}get isCUID2(){return!!this._def.checks.find(e=>e.kind==="cuid2")}get isULID(){return!!this._def.checks.find(e=>e.kind==="ulid")}get isIP(){return!!this._def.checks.find(e=>e.kind==="ip")}get isCIDR(){return!!this._def.checks.find(e=>e.kind==="cidr")}get isBase64(){return!!this._def.checks.find(e=>e.kind==="base64")}get isBase64url(){return!!this._def.checks.find(e=>e.kind==="base64url")}get minLength(){let e=null;for(let n of this._def.checks)n.kind==="min"&&(e===null||n.value>e)&&(e=n.value);return e}get maxLength(){let e=null;for(let n of this._def.checks)n.kind==="max"&&(e===null||n.value<e)&&(e=n.value);return e}};Yo.create=t=>{var e;return new Yo({checks:[],typeName:z.ZodString,coerce:(e=t==null?void 0:t.coerce)!=null?e:!1,...Q(t)})};Vi=class t extends ie{constructor(){super(...arguments),this.min=this.gte,this.max=this.lte,this.step=this.multipleOf}_parse(e){if(this._def.coerce&&(e.data=Number(e.data)),this._getType(e)!==P.number){let a=this._getOrReturnCtx(e);return M(a,{code:N.invalid_type,expected:P.number,received:a.parsedType}),W}let r,o=new ft;for(let a of this._def.checks)a.kind==="int"?le.isInteger(e.data)||(r=this._getOrReturnCtx(e,r),M(r,{code:N.invalid_type,expected:"integer",received:"float",message:a.message}),o.dirty()):a.kind==="min"?(a.inclusive?e.data<a.value:e.data<=a.value)&&(r=this._getOrReturnCtx(e,r),M(r,{code:N.too_small,minimum:a.value,type:"number",inclusive:a.inclusive,exact:!1,message:a.message}),o.dirty()):a.kind==="max"?(a.inclusive?e.data>a.value:e.data>=a.value)&&(r=this._getOrReturnCtx(e,r),M(r,{code:N.too_big,maximum:a.value,type:"number",inclusive:a.inclusive,exact:!1,message:a.message}),o.dirty()):a.kind==="multipleOf"?RL(e.data,a.value)!==0&&(r=this._getOrReturnCtx(e,r),M(r,{code:N.not_multiple_of,multipleOf:a.value,message:a.message}),o.dirty()):a.kind==="finite"?Number.isFinite(e.data)||(r=this._getOrReturnCtx(e,r),M(r,{code:N.not_finite,message:a.message}),o.dirty()):le.assertNever(a);return{status:o.value,value:e.data}}gte(e,n){return this.setLimit("min",e,!0,V.toString(n))}gt(e,n){return this.setLimit("min",e,!1,V.toString(n))}lte(e,n){return this.setLimit("max",e,!0,V.toString(n))}lt(e,n){return this.setLimit("max",e,!1,V.toString(n))}setLimit(e,n,r,o){return new t({...this._def,checks:[...this._def.checks,{kind:e,value:n,inclusive:r,message:V.toString(o)}]})}_addCheck(e){return new t({...this._def,checks:[...this._def.checks,e]})}int(e){return this._addCheck({kind:"int",message:V.toString(e)})}positive(e){return this._addCheck({kind:"min",value:0,inclusive:!1,message:V.toString(e)})}negative(e){return this._addCheck({kind:"max",value:0,inclusive:!1,message:V.toString(e)})}nonpositive(e){return this._addCheck({kind:"max",value:0,inclusive:!0,message:V.toString(e)})}nonnegative(e){return this._addCheck({kind:"min",value:0,inclusive:!0,message:V.toString(e)})}multipleOf(e,n){return this._addCheck({kind:"multipleOf",value:e,message:V.toString(n)})}finite(e){return this._addCheck({kind:"finite",message:V.toString(e)})}safe(e){return this._addCheck({kind:"min",inclusive:!0,value:Number.MIN_SAFE_INTEGER,message:V.toString(e)})._addCheck({kind:"max",inclusive:!0,value:Number.MAX_SAFE_INTEGER,message:V.toString(e)})}get minValue(){let e=null;for(let n of this._def.checks)n.kind==="min"&&(e===null||n.value>e)&&(e=n.value);return e}get maxValue(){let e=null;for(let n of this._def.checks)n.kind==="max"&&(e===null||n.value<e)&&(e=n.value);return e}get isInt(){return!!this._def.checks.find(e=>e.kind==="int"||e.kind==="multipleOf"&&le.isInteger(e.value))}get isFinite(){let e=null,n=null;for(let r of this._def.checks){if(r.kind==="finite"||r.kind==="int"||r.kind==="multipleOf")return!0;r.kind==="min"?(n===null||r.value>n)&&(n=r.value):r.kind==="max"&&(e===null||r.value<e)&&(e=r.value)}return Number.isFinite(n)&&Number.isFinite(e)}};Vi.create=t=>new Vi({checks:[],typeName:z.ZodNumber,coerce:(t==null?void 0:t.coerce)||!1,...Q(t)});ji=class t extends ie{constructor(){super(...arguments),this.min=this.gte,this.max=this.lte}_parse(e){if(this._def.coerce)try{e.data=BigInt(e.data)}catch{return this._getInvalidInput(e)}if(this._getType(e)!==P.bigint)return this._getInvalidInput(e);let r,o=new ft;for(let a of this._def.checks)a.kind==="min"?(a.inclusive?e.data<a.value:e.data<=a.value)&&(r=this._getOrReturnCtx(e,r),M(r,{code:N.too_small,type:"bigint",minimum:a.value,inclusive:a.inclusive,message:a.message}),o.dirty()):a.kind==="max"?(a.inclusive?e.data>a.value:e.data>=a.value)&&(r=this._getOrReturnCtx(e,r),M(r,{code:N.too_big,type:"bigint",maximum:a.value,inclusive:a.inclusive,message:a.message}),o.dirty()):a.kind==="multipleOf"?e.data%a.value!==BigInt(0)&&(r=this._getOrReturnCtx(e,r),M(r,{code:N.not_multiple_of,multipleOf:a.value,message:a.message}),o.dirty()):le.assertNever(a);return{status:o.value,value:e.data}}_getInvalidInput(e){let n=this._getOrReturnCtx(e);return M(n,{code:N.invalid_type,expected:P.bigint,received:n.parsedType}),W}gte(e,n){return this.setLimit("min",e,!0,V.toString(n))}gt(e,n){return this.setLimit("min",e,!1,V.toString(n))}lte(e,n){return this.setLimit("max",e,!0,V.toString(n))}lt(e,n){return this.setLimit("max",e,!1,V.toString(n))}setLimit(e,n,r,o){return new t({...this._def,checks:[...this._def.checks,{kind:e,value:n,inclusive:r,message:V.toString(o)}]})}_addCheck(e){return new t({...this._def,checks:[...this._def.checks,e]})}positive(e){return this._addCheck({kind:"min",value:BigInt(0),inclusive:!1,message:V.toString(e)})}negative(e){return this._addCheck({kind:"max",value:BigInt(0),inclusive:!1,message:V.toString(e)})}nonpositive(e){return this._addCheck({kind:"max",value:BigInt(0),inclusive:!0,message:V.toString(e)})}nonnegative(e){return this._addCheck({kind:"min",value:BigInt(0),inclusive:!0,message:V.toString(e)})}multipleOf(e,n){return this._addCheck({kind:"multipleOf",value:e,message:V.toString(n)})}get minValue(){let e=null;for(let n of this._def.checks)n.kind==="min"&&(e===null||n.value>e)&&(e=n.value);return e}get maxValue(){let e=null;for(let n of this._def.checks)n.kind==="max"&&(e===null||n.value<e)&&(e=n.value);return e}};ji.create=t=>{var e;return new ji({checks:[],typeName:z.ZodBigInt,coerce:(e=t==null?void 0:t.coerce)!=null?e:!1,...Q(t)})};Ki=class extends ie{_parse(e){if(this._def.coerce&&(e.data=!!e.data),this._getType(e)!==P.boolean){let r=this._getOrReturnCtx(e);return M(r,{code:N.invalid_type,expected:P.boolean,received:r.parsedType}),W}return yt(e.data)}};Ki.create=t=>new Ki({typeName:z.ZodBoolean,coerce:(t==null?void 0:t.coerce)||!1,...Q(t)});Wi=class t extends ie{_parse(e){if(this._def.coerce&&(e.data=new Date(e.data)),this._getType(e)!==P.date){let a=this._getOrReturnCtx(e);return M(a,{code:N.invalid_type,expected:P.date,received:a.parsedType}),W}if(Number.isNaN(e.data.getTime())){let a=this._getOrReturnCtx(e);return M(a,{code:N.invalid_date}),W}let r=new ft,o;for(let a of this._def.checks)a.kind==="min"?e.data.getTime()<a.value&&(o=this._getOrReturnCtx(e,o),M(o,{code:N.too_small,message:a.message,inclusive:!0,exact:!1,minimum:a.value,type:"date"}),r.dirty()):a.kind==="max"?e.data.getTime()>a.value&&(o=this._getOrReturnCtx(e,o),M(o,{code:N.too_big,message:a.message,inclusive:!0,exact:!1,maximum:a.value,type:"date"}),r.dirty()):le.assertNever(a);return{status:r.value,value:new Date(e.data.getTime())}}_addCheck(e){return new t({...this._def,checks:[...this._def.checks,e]})}min(e,n){return this._addCheck({kind:"min",value:e.getTime(),message:V.toString(n)})}max(e,n){return this._addCheck({kind:"max",value:e.getTime(),message:V.toString(n)})}get minDate(){let e=null;for(let n of this._def.checks)n.kind==="min"&&(e===null||n.value>e)&&(e=n.value);return e!=null?new Date(e):null}get maxDate(){let e=null;for(let n of this._def.checks)n.kind==="max"&&(e===null||n.value<e)&&(e=n.value);return e!=null?new Date(e):null}};Wi.create=t=>new Wi({checks:[],coerce:(t==null?void 0:t.coerce)||!1,typeName:z.ZodDate,...Q(t)});xs=class extends ie{_parse(e){if(this._getType(e)!==P.symbol){let r=this._getOrReturnCtx(e);return M(r,{code:N.invalid_type,expected:P.symbol,received:r.parsedType}),W}return yt(e.data)}};xs.create=t=>new xs({typeName:z.ZodSymbol,...Q(t)});zi=class extends ie{_parse(e){if(this._getType(e)!==P.undefined){let r=this._getOrReturnCtx(e);return M(r,{code:N.invalid_type,expected:P.undefined,received:r.parsedType}),W}return yt(e.data)}};zi.create=t=>new zi({typeName:z.ZodUndefined,...Q(t)});Yi=class extends ie{_parse(e){if(this._getType(e)!==P.null){let r=this._getOrReturnCtx(e);return M(r,{code:N.invalid_type,expected:P.null,received:r.parsedType}),W}return yt(e.data)}};Yi.create=t=>new Yi({typeName:z.ZodNull,...Q(t)});Xo=class extends ie{constructor(){super(...arguments),this._any=!0}_parse(e){return yt(e.data)}};Xo.create=t=>new Xo({typeName:z.ZodAny,...Q(t)});ao=class extends ie{constructor(){super(...arguments),this._unknown=!0}_parse(e){return yt(e.data)}};ao.create=t=>new ao({typeName:z.ZodUnknown,...Q(t)});er=class extends ie{_parse(e){let n=this._getOrReturnCtx(e);return M(n,{code:N.invalid_type,expected:P.never,received:n.parsedType}),W}};er.create=t=>new er({typeName:z.ZodNever,...Q(t)});As=class extends ie{_parse(e){if(this._getType(e)!==P.undefined){let r=this._getOrReturnCtx(e);return M(r,{code:N.invalid_type,expected:P.void,received:r.parsedType}),W}return yt(e.data)}};As.create=t=>new As({typeName:z.ZodVoid,...Q(t)});so=class t extends ie{_parse(e){let{ctx:n,status:r}=this._processInputParams(e),o=this._def;if(n.parsedType!==P.array)return M(n,{code:N.invalid_type,expected:P.array,received:n.parsedType}),W;if(o.exactLength!==null){let s=n.data.length>o.exactLength.value,l=n.data.length<o.exactLength.value;(s||l)&&(M(n,{code:s?N.too_big:N.too_small,minimum:l?o.exactLength.value:void 0,maximum:s?o.exactLength.value:void 0,type:"array",inclusive:!0,exact:!0,message:o.exactLength.message}),r.dirty())}if(o.minLength!==null&&n.data.length<o.minLength.value&&(M(n,{code:N.too_small,minimum:o.minLength.value,type:"array",inclusive:!0,exact:!1,message:o.minLength.message}),r.dirty()),o.maxLength!==null&&n.data.length>o.maxLength.value&&(M(n,{code:N.too_big,maximum:o.maxLength.value,type:"array",inclusive:!0,exact:!1,message:o.maxLength.message}),r.dirty()),n.common.async)return Promise.all([...n.data].map((s,l)=>o.type._parseAsync(new kn(n,s,n.path,l)))).then(s=>ft.mergeArray(r,s));let a=[...n.data].map((s,l)=>o.type._parseSync(new kn(n,s,n.path,l)));return ft.mergeArray(r,a)}get element(){return this._def.type}min(e,n){return new t({...this._def,minLength:{value:e,message:V.toString(n)}})}max(e,n){return new t({...this._def,maxLength:{value:e,message:V.toString(n)}})}length(e,n){return new t({...this._def,exactLength:{value:e,message:V.toString(n)}})}nonempty(e){return this.min(1,e)}};so.create=(t,e)=>new so({type:t,minLength:null,maxLength:null,exactLength:null,typeName:z.ZodArray,...Q(e)});Qt=class t extends ie{constructor(){super(...arguments),this._cached=null,this.nonstrict=this.passthrough,this.augment=this.extend}_getCached(){if(this._cached!==null)return this._cached;let e=this._def.shape(),n=le.objectKeys(e);return this._cached={shape:e,keys:n},this._cached}_parse(e){if(this._getType(e)!==P.object){let u=this._getOrReturnCtx(e);return M(u,{code:N.invalid_type,expected:P.object,received:u.parsedType}),W}let{status:r,ctx:o}=this._processInputParams(e),{shape:a,keys:s}=this._getCached(),l=[];if(!(this._def.catchall instanceof er&&this._def.unknownKeys==="strip"))for(let u in o.data)s.includes(u)||l.push(u);let d=[];for(let u of s){let p=a[u],f=o.data[u];d.push({key:{status:"valid",value:u},value:p._parse(new kn(o,f,o.path,u)),alwaysSet:u in o.data})}if(this._def.catchall instanceof er){let u=this._def.unknownKeys;if(u==="passthrough")for(let p of l)d.push({key:{status:"valid",value:p},value:{status:"valid",value:o.data[p]}});else if(u==="strict")l.length>0&&(M(o,{code:N.unrecognized_keys,keys:l}),r.dirty());else if(u!=="strip")throw new Error("Internal ZodObject error: invalid unknownKeys value.")}else{let u=this._def.catchall;for(let p of l){let f=o.data[p];d.push({key:{status:"valid",value:p},value:u._parse(new kn(o,f,o.path,p)),alwaysSet:p in o.data})}}return o.common.async?Promise.resolve().then(async()=>{let u=[];for(let p of d){let f=await p.key,m=await p.value;u.push({key:f,value:m,alwaysSet:p.alwaysSet})}return u}).then(u=>ft.mergeObjectSync(r,u)):ft.mergeObjectSync(r,d)}get shape(){return this._def.shape()}strict(e){return V.errToObj,new t({...this._def,unknownKeys:"strict",...e!==void 0?{errorMap:(n,r)=>{var a,s,l,d;let o=(l=(s=(a=this._def).errorMap)==null?void 0:s.call(a,n,r).message)!=null?l:r.defaultError;return n.code==="unrecognized_keys"?{message:(d=V.errToObj(e).message)!=null?d:o}:{message:o}}}:{}})}strip(){return new t({...this._def,unknownKeys:"strip"})}passthrough(){return new t({...this._def,unknownKeys:"passthrough"})}extend(e){return new t({...this._def,shape:()=>({...this._def.shape(),...e})})}merge(e){return new t({unknownKeys:e._def.unknownKeys,catchall:e._def.catchall,shape:()=>({...this._def.shape(),...e._def.shape()}),typeName:z.ZodObject})}setKey(e,n){return this.augment({[e]:n})}catchall(e){return new t({...this._def,catchall:e})}pick(e){let n={};for(let r of le.objectKeys(e))e[r]&&this.shape[r]&&(n[r]=this.shape[r]);return new t({...this._def,shape:()=>n})}omit(e){let n={};for(let r of le.objectKeys(this.shape))e[r]||(n[r]=this.shape[r]);return new t({...this._def,shape:()=>n})}deepPartial(){return _s(this)}partial(e){let n={};for(let r of le.objectKeys(this.shape)){let o=this.shape[r];e&&!e[r]?n[r]=o:n[r]=o.optional()}return new t({...this._def,shape:()=>n})}required(e){let n={};for(let r of le.objectKeys(this.shape))if(e&&!e[r])n[r]=this.shape[r];else{let a=this.shape[r];for(;a instanceof Ln;)a=a._def.innerType;n[r]=a}return new t({...this._def,shape:()=>n})}keyof(){return dS(le.objectKeys(this.shape))}};Qt.create=(t,e)=>new Qt({shape:()=>t,unknownKeys:"strip",catchall:er.create(),typeName:z.ZodObject,...Q(e)});Qt.strictCreate=(t,e)=>new Qt({shape:()=>t,unknownKeys:"strict",catchall:er.create(),typeName:z.ZodObject,...Q(e)});Qt.lazycreate=(t,e)=>new Qt({shape:t,unknownKeys:"strip",catchall:er.create(),typeName:z.ZodObject,...Q(e)});Xi=class extends ie{_parse(e){let{ctx:n}=this._processInputParams(e),r=this._def.options;function o(a){for(let l of a)if(l.result.status==="valid")return l.result;for(let l of a)if(l.result.status==="dirty")return n.common.issues.push(...l.ctx.common.issues),l.result;let s=a.map(l=>new Zt(l.ctx.common.issues));return M(n,{code:N.invalid_union,unionErrors:s}),W}if(n.common.async)return Promise.all(r.map(async a=>{let s={...n,common:{...n.common,issues:[]},parent:null};return{result:await a._parseAsync({data:n.data,path:n.path,parent:s}),ctx:s}})).then(o);{let a,s=[];for(let d of r){let u={...n,common:{...n.common,issues:[]},parent:null},p=d._parseSync({data:n.data,path:n.path,parent:u});if(p.status==="valid")return p;p.status==="dirty"&&!a&&(a={result:p,ctx:u}),u.common.issues.length&&s.push(u.common.issues)}if(a)return n.common.issues.push(...a.ctx.common.issues),a.result;let l=s.map(d=>new Zt(d));return M(n,{code:N.invalid_union,unionErrors:l}),W}}get options(){return this._def.options}};Xi.create=(t,e)=>new Xi({options:t,typeName:z.ZodUnion,...Q(e)});io=t=>t instanceof Zi?io(t.schema):t instanceof Dn?io(t.innerType()):t instanceof Qi?[t.value]:t instanceof Ji?t.options:t instanceof ea?le.objectValues(t.enum):t instanceof ta?io(t._def.innerType):t instanceof zi?[void 0]:t instanceof Yi?[null]:t instanceof Ln?[void 0,...io(t.unwrap())]:t instanceof Nr?[null,...io(t.unwrap())]:t instanceof Ul||t instanceof ra?io(t.unwrap()):t instanceof na?io(t._def.innerType):[],Qu=class t extends ie{_parse(e){let{ctx:n}=this._processInputParams(e);if(n.parsedType!==P.object)return M(n,{code:N.invalid_type,expected:P.object,received:n.parsedType}),W;let r=this.discriminator,o=n.data[r],a=this.optionsMap.get(o);return a?n.common.async?a._parseAsync({data:n.data,path:n.path,parent:n}):a._parseSync({data:n.data,path:n.path,parent:n}):(M(n,{code:N.invalid_union_discriminator,options:Array.from(this.optionsMap.keys()),path:[r]}),W)}get discriminator(){return this._def.discriminator}get options(){return this._def.options}get optionsMap(){return this._def.optionsMap}static create(e,n,r){let o=new Map;for(let a of n){let s=io(a.shape[e]);if(!s.length)throw new Error(`A discriminator value for key \`${e}\` could not be extracted from all schema options`);for(let l of s){if(o.has(l))throw new Error(`Discriminator property ${String(e)} has duplicate value ${String(l)}`);o.set(l,a)}}return new t({typeName:z.ZodDiscriminatedUnion,discriminator:e,options:n,optionsMap:o,...Q(r)})}};qi=class extends ie{_parse(e){let{status:n,ctx:r}=this._processInputParams(e),o=(a,s)=>{if(qu(a)||qu(s))return W;let l=am(a.value,s.value);return l.valid?((Zu(a)||Zu(s))&&n.dirty(),{status:n.value,value:l.data}):(M(r,{code:N.invalid_intersection_types}),W)};return r.common.async?Promise.all([this._def.left._parseAsync({data:r.data,path:r.path,parent:r}),this._def.right._parseAsync({data:r.data,path:r.path,parent:r})]).then(([a,s])=>o(a,s)):o(this._def.left._parseSync({data:r.data,path:r.path,parent:r}),this._def.right._parseSync({data:r.data,path:r.path,parent:r}))}};qi.create=(t,e,n)=>new qi({left:t,right:e,typeName:z.ZodIntersection,...Q(n)});Rr=class t extends ie{_parse(e){let{status:n,ctx:r}=this._processInputParams(e);if(r.parsedType!==P.array)return M(r,{code:N.invalid_type,expected:P.array,received:r.parsedType}),W;if(r.data.length<this._def.items.length)return M(r,{code:N.too_small,minimum:this._def.items.length,inclusive:!0,exact:!1,type:"array"}),W;!this._def.rest&&r.data.length>this._def.items.length&&(M(r,{code:N.too_big,maximum:this._def.items.length,inclusive:!0,exact:!1,type:"array"}),n.dirty());let a=[...r.data].map((s,l)=>{let d=this._def.items[l]||this._def.rest;return d?d._parse(new kn(r,s,r.path,l)):null}).filter(s=>!!s);return r.common.async?Promise.all(a).then(s=>ft.mergeArray(n,s)):ft.mergeArray(n,a)}get items(){return this._def.items}rest(e){return new t({...this._def,rest:e})}};Rr.create=(t,e)=>{if(!Array.isArray(t))throw new Error("You must pass an array of schemas to z.tuple([ ... ])");return new Rr({items:t,typeName:z.ZodTuple,rest:null,...Q(e)})};Ju=class t extends ie{get keySchema(){return this._def.keyType}get valueSchema(){return this._def.valueType}_parse(e){let{status:n,ctx:r}=this._processInputParams(e);if(r.parsedType!==P.object)return M(r,{code:N.invalid_type,expected:P.object,received:r.parsedType}),W;let o=[],a=this._def.keyType,s=this._def.valueType;for(let l in r.data)o.push({key:a._parse(new kn(r,l,r.path,l)),value:s._parse(new kn(r,r.data[l],r.path,l)),alwaysSet:l in r.data});return r.common.async?ft.mergeObjectAsync(n,o):ft.mergeObjectSync(n,o)}get element(){return this._def.valueType}static create(e,n,r){return n instanceof ie?new t({keyType:e,valueType:n,typeName:z.ZodRecord,...Q(r)}):new t({keyType:Yo.create(),valueType:e,typeName:z.ZodRecord,...Q(n)})}},ys=class extends ie{get keySchema(){return this._def.keyType}get valueSchema(){return this._def.valueType}_parse(e){let{status:n,ctx:r}=this._processInputParams(e);if(r.parsedType!==P.map)return M(r,{code:N.invalid_type,expected:P.map,received:r.parsedType}),W;let o=this._def.keyType,a=this._def.valueType,s=[...r.data.entries()].map(([l,d],u)=>({key:o._parse(new kn(r,l,r.path,[u,"key"])),value:a._parse(new kn(r,d,r.path,[u,"value"]))}));if(r.common.async){let l=new Map;return Promise.resolve().then(async()=>{for(let d of s){let u=await d.key,p=await d.value;if(u.status==="aborted"||p.status==="aborted")return W;(u.status==="dirty"||p.status==="dirty")&&n.dirty(),l.set(u.value,p.value)}return{status:n.value,value:l}})}else{let l=new Map;for(let d of s){let u=d.key,p=d.value;if(u.status==="aborted"||p.status==="aborted")return W;(u.status==="dirty"||p.status==="dirty")&&n.dirty(),l.set(u.value,p.value)}return{status:n.value,value:l}}}};ys.create=(t,e,n)=>new ys({valueType:e,keyType:t,typeName:z.ZodMap,...Q(n)});vs=class t extends ie{_parse(e){let{status:n,ctx:r}=this._processInputParams(e);if(r.parsedType!==P.set)return M(r,{code:N.invalid_type,expected:P.set,received:r.parsedType}),W;let o=this._def;o.minSize!==null&&r.data.size<o.minSize.value&&(M(r,{code:N.too_small,minimum:o.minSize.value,type:"set",inclusive:!0,exact:!1,message:o.minSize.message}),n.dirty()),o.maxSize!==null&&r.data.size>o.maxSize.value&&(M(r,{code:N.too_big,maximum:o.maxSize.value,type:"set",inclusive:!0,exact:!1,message:o.maxSize.message}),n.dirty());let a=this._def.valueType;function s(d){let u=new Set;for(let p of d){if(p.status==="aborted")return W;p.status==="dirty"&&n.dirty(),u.add(p.value)}return{status:n.value,value:u}}let l=[...r.data.values()].map((d,u)=>a._parse(new kn(r,d,r.path,u)));return r.common.async?Promise.all(l).then(d=>s(d)):s(l)}min(e,n){return new t({...this._def,minSize:{value:e,message:V.toString(n)}})}max(e,n){return new t({...this._def,maxSize:{value:e,message:V.toString(n)}})}size(e,n){return this.min(e,n).max(e,n)}nonempty(e){return this.min(1,e)}};vs.create=(t,e)=>new vs({valueType:t,minSize:null,maxSize:null,typeName:z.ZodSet,...Q(e)});ep=class t extends ie{constructor(){super(...arguments),this.validate=this.implement}_parse(e){let{ctx:n}=this._processInputParams(e);if(n.parsedType!==P.function)return M(n,{code:N.invalid_type,expected:P.function,received:n.parsedType}),W;function r(l,d){return Hl({data:l,path:n.path,errorMaps:[n.common.contextualErrorMap,n.schemaErrorMap,Ts(),oo].filter(u=>!!u),issueData:{code:N.invalid_arguments,argumentsError:d}})}function o(l,d){return Hl({data:l,path:n.path,errorMaps:[n.common.contextualErrorMap,n.schemaErrorMap,Ts(),oo].filter(u=>!!u),issueData:{code:N.invalid_return_type,returnTypeError:d}})}let a={errorMap:n.common.contextualErrorMap},s=n.data;if(this._def.returns instanceof qo){let l=this;return yt(async function(...d){let u=new Zt([]),p=await l._def.args.parseAsync(d,a).catch(g=>{throw u.addIssue(r(d,g)),u}),f=await Reflect.apply(s,this,p);return await l._def.returns._def.type.parseAsync(f,a).catch(g=>{throw u.addIssue(o(f,g)),u})})}else{let l=this;return yt(function(...d){let u=l._def.args.safeParse(d,a);if(!u.success)throw new Zt([r(d,u.error)]);let p=Reflect.apply(s,this,u.data),f=l._def.returns.safeParse(p,a);if(!f.success)throw new Zt([o(p,f.error)]);return f.data})}}parameters(){return this._def.args}returnType(){return this._def.returns}args(...e){return new t({...this._def,args:Rr.create(e).rest(ao.create())})}returns(e){return new t({...this._def,returns:e})}implement(e){return this.parse(e)}strictImplement(e){return this.parse(e)}static create(e,n,r){return new t({args:e||Rr.create([]).rest(ao.create()),returns:n||ao.create(),typeName:z.ZodFunction,...Q(r)})}},Zi=class extends ie{get schema(){return this._def.getter()}_parse(e){let{ctx:n}=this._processInputParams(e);return this._def.getter()._parse({data:n.data,path:n.path,parent:n})}};Zi.create=(t,e)=>new Zi({getter:t,typeName:z.ZodLazy,...Q(e)});Qi=class extends ie{_parse(e){if(e.data!==this._def.value){let n=this._getOrReturnCtx(e);return M(n,{received:n.data,code:N.invalid_literal,expected:this._def.value}),W}return{status:"valid",value:e.data}}get value(){return this._def.value}};Qi.create=(t,e)=>new Qi({value:t,typeName:z.ZodLiteral,...Q(e)});Ji=class t extends ie{_parse(e){if(typeof e.data!="string"){let n=this._getOrReturnCtx(e),r=this._def.values;return M(n,{expected:le.joinValues(r),received:n.parsedType,code:N.invalid_type}),W}if(this._cache||(this._cache=new Set(this._def.values)),!this._cache.has(e.data)){let n=this._getOrReturnCtx(e),r=this._def.values;return M(n,{received:n.data,code:N.invalid_enum_value,options:r}),W}return yt(e.data)}get options(){return this._def.values}get enum(){let e={};for(let n of this._def.values)e[n]=n;return e}get Values(){let e={};for(let n of this._def.values)e[n]=n;return e}get Enum(){let e={};for(let n of this._def.values)e[n]=n;return e}extract(e,n=this._def){return t.create(e,{...this._def,...n})}exclude(e,n=this._def){return t.create(this.options.filter(r=>!e.includes(r)),{...this._def,...n})}};Ji.create=dS;ea=class extends ie{_parse(e){let n=le.getValidEnumValues(this._def.values),r=this._getOrReturnCtx(e);if(r.parsedType!==P.string&&r.parsedType!==P.number){let o=le.objectValues(n);return M(r,{expected:le.joinValues(o),received:r.parsedType,code:N.invalid_type}),W}if(this._cache||(this._cache=new Set(le.getValidEnumValues(this._def.values))),!this._cache.has(e.data)){let o=le.objectValues(n);return M(r,{received:r.data,code:N.invalid_enum_value,options:o}),W}return yt(e.data)}get enum(){return this._def.values}};ea.create=(t,e)=>new ea({values:t,typeName:z.ZodNativeEnum,...Q(e)});qo=class extends ie{unwrap(){return this._def.type}_parse(e){let{ctx:n}=this._processInputParams(e);if(n.parsedType!==P.promise&&n.common.async===!1)return M(n,{code:N.invalid_type,expected:P.promise,received:n.parsedType}),W;let r=n.parsedType===P.promise?n.data:Promise.resolve(n.data);return yt(r.then(o=>this._def.type.parseAsync(o,{path:n.path,errorMap:n.common.contextualErrorMap})))}};qo.create=(t,e)=>new qo({type:t,typeName:z.ZodPromise,...Q(e)});Dn=class extends ie{innerType(){return this._def.schema}sourceType(){return this._def.schema._def.typeName===z.ZodEffects?this._def.schema.sourceType():this._def.schema}_parse(e){let{status:n,ctx:r}=this._processInputParams(e),o=this._def.effect||null,a={addIssue:s=>{M(r,s),s.fatal?n.abort():n.dirty()},get path(){return r.path}};if(a.addIssue=a.addIssue.bind(a),o.type==="preprocess"){let s=o.transform(r.data,a);if(r.common.async)return Promise.resolve(s).then(async l=>{if(n.value==="aborted")return W;let d=await this._def.schema._parseAsync({data:l,path:r.path,parent:r});return d.status==="aborted"?W:d.status==="dirty"?Bi(d.value):n.value==="dirty"?Bi(d.value):d});{if(n.value==="aborted")return W;let l=this._def.schema._parseSync({data:s,path:r.path,parent:r});return l.status==="aborted"?W:l.status==="dirty"?Bi(l.value):n.value==="dirty"?Bi(l.value):l}}if(o.type==="refinement"){let s=l=>{let d=o.refinement(l,a);if(r.common.async)return Promise.resolve(d);if(d instanceof Promise)throw new Error("Async refinement encountered during synchronous parse operation. Use .parseAsync instead.");return l};if(r.common.async===!1){let l=this._def.schema._parseSync({data:r.data,path:r.path,parent:r});return l.status==="aborted"?W:(l.status==="dirty"&&n.dirty(),s(l.value),{status:n.value,value:l.value})}else return this._def.schema._parseAsync({data:r.data,path:r.path,parent:r}).then(l=>l.status==="aborted"?W:(l.status==="dirty"&&n.dirty(),s(l.value).then(()=>({status:n.value,value:l.value}))))}if(o.type==="transform")if(r.common.async===!1){let s=this._def.schema._parseSync({data:r.data,path:r.path,parent:r});if(!zo(s))return W;let l=o.transform(s.value,a);if(l instanceof Promise)throw new Error("Asynchronous transform encountered during synchronous parse operation. Use .parseAsync instead.");return{status:n.value,value:l}}else return this._def.schema._parseAsync({data:r.data,path:r.path,parent:r}).then(s=>zo(s)?Promise.resolve(o.transform(s.value,a)).then(l=>({status:n.value,value:l})):W);le.assertNever(o)}};Dn.create=(t,e,n)=>new Dn({schema:t,typeName:z.ZodEffects,effect:e,...Q(n)});Dn.createWithPreprocess=(t,e,n)=>new Dn({schema:e,effect:{type:"preprocess",transform:t},typeName:z.ZodEffects,...Q(n)});Ln=class extends ie{_parse(e){return this._getType(e)===P.undefined?yt(void 0):this._def.innerType._parse(e)}unwrap(){return this._def.innerType}};Ln.create=(t,e)=>new Ln({innerType:t,typeName:z.ZodOptional,...Q(e)});Nr=class extends ie{_parse(e){return this._getType(e)===P.null?yt(null):this._def.innerType._parse(e)}unwrap(){return this._def.innerType}};Nr.create=(t,e)=>new Nr({innerType:t,typeName:z.ZodNullable,...Q(e)});ta=class extends ie{_parse(e){let{ctx:n}=this._processInputParams(e),r=n.data;return n.parsedType===P.undefined&&(r=this._def.defaultValue()),this._def.innerType._parse({data:r,path:n.path,parent:n})}removeDefault(){return this._def.innerType}};ta.create=(t,e)=>new ta({innerType:t,typeName:z.ZodDefault,defaultValue:typeof e.default=="function"?e.default:()=>e.default,...Q(e)});na=class extends ie{_parse(e){let{ctx:n}=this._processInputParams(e),r={...n,common:{...n.common,issues:[]}},o=this._def.innerType._parse({data:r.data,path:r.path,parent:{...r}});return Ss(o)?o.then(a=>({status:"valid",value:a.status==="valid"?a.value:this._def.catchValue({get error(){return new Zt(r.common.issues)},input:r.data})})):{status:"valid",value:o.status==="valid"?o.value:this._def.catchValue({get error(){return new Zt(r.common.issues)},input:r.data})}}removeCatch(){return this._def.innerType}};na.create=(t,e)=>new na({innerType:t,typeName:z.ZodCatch,catchValue:typeof e.catch=="function"?e.catch:()=>e.catch,...Q(e)});Rs=class extends ie{_parse(e){if(this._getType(e)!==P.nan){let r=this._getOrReturnCtx(e);return M(r,{code:N.invalid_type,expected:P.nan,received:r.parsedType}),W}return{status:"valid",value:e.data}}};Rs.create=t=>new Rs({typeName:z.ZodNaN,...Q(t)});NL=Symbol("zod_brand"),Ul=class extends ie{_parse(e){let{ctx:n}=this._processInputParams(e),r=n.data;return this._def.type._parse({data:r,path:n.path,parent:n})}unwrap(){return this._def.type}},Fl=class t extends ie{_parse(e){let{status:n,ctx:r}=this._processInputParams(e);if(r.common.async)return(async()=>{let a=await this._def.in._parseAsync({data:r.data,path:r.path,parent:r});return a.status==="aborted"?W:a.status==="dirty"?(n.dirty(),Bi(a.value)):this._def.out._parseAsync({data:a.value,path:r.path,parent:r})})();{let o=this._def.in._parseSync({data:r.data,path:r.path,parent:r});return o.status==="aborted"?W:o.status==="dirty"?(n.dirty(),{status:"dirty",value:o.value}):this._def.out._parseSync({data:o.value,path:r.path,parent:r})}}static create(e,n){return new t({in:e,out:n,typeName:z.ZodPipeline})}},ra=class extends ie{_parse(e){let n=this._def.innerType._parse(e),r=o=>(zo(o)&&(o.value=Object.freeze(o.value)),o);return Ss(n)?n.then(o=>r(o)):r(n)}unwrap(){return this._def.innerType}};ra.create=(t,e)=>new ra({innerType:t,typeName:z.ZodReadonly,...Q(e)});wL={object:Qt.lazycreate};(function(t){t.ZodString="ZodString",t.ZodNumber="ZodNumber",t.ZodNaN="ZodNaN",t.ZodBigInt="ZodBigInt",t.ZodBoolean="ZodBoolean",t.ZodDate="ZodDate",t.ZodSymbol="ZodSymbol",t.ZodUndefined="ZodUndefined",t.ZodNull="ZodNull",t.ZodAny="ZodAny",t.ZodUnknown="ZodUnknown",t.ZodNever="ZodNever",t.ZodVoid="ZodVoid",t.ZodArray="ZodArray",t.ZodObject="ZodObject",t.ZodUnion="ZodUnion",t.ZodDiscriminatedUnion="ZodDiscriminatedUnion",t.ZodIntersection="ZodIntersection",t.ZodTuple="ZodTuple",t.ZodRecord="ZodRecord",t.ZodMap="ZodMap",t.ZodSet="ZodSet",t.ZodFunction="ZodFunction",t.ZodLazy="ZodLazy",t.ZodLiteral="ZodLiteral",t.ZodEnum="ZodEnum",t.ZodEffects="ZodEffects",t.ZodNativeEnum="ZodNativeEnum",t.ZodOptional="ZodOptional",t.ZodNullable="ZodNullable",t.ZodDefault="ZodDefault",t.ZodCatch="ZodCatch",t.ZodPromise="ZodPromise",t.ZodBranded="ZodBranded",t.ZodPipeline="ZodPipeline",t.ZodReadonly="ZodReadonly"})(z||(z={}));OL=(t,e={message:`Input not instance of ${t.name}`})=>uS(n=>n instanceof t,e),pS=Yo.create,fS=Vi.create,IL=Rs.create,CL=ji.create,hS=Ki.create,LL=Wi.create,kL=xs.create,DL=zi.create,ML=Yi.create,$L=Xo.create,PL=ao.create,HL=er.create,UL=As.create,FL=so.create,GL=Qt.create,BL=Qt.strictCreate,VL=Xi.create,jL=Qu.create,KL=qi.create,WL=Rr.create,zL=Ju.create,YL=ys.create,XL=vs.create,qL=ep.create,ZL=Zi.create,QL=Qi.create,JL=Ji.create,e1=ea.create,t1=qo.create,n1=Dn.create,r1=Ln.create,o1=Nr.create,i1=Dn.createWithPreprocess,a1=Fl.create,s1=()=>pS().optional(),c1=()=>fS().optional(),l1=()=>hS().optional(),d1={string:(t=>Yo.create({...t,coerce:!0})),number:(t=>Vi.create({...t,coerce:!0})),boolean:(t=>Ki.create({...t,coerce:!0})),bigint:(t=>ji.create({...t,coerce:!0})),date:(t=>Wi.create({...t,coerce:!0}))},u1=W});var i={};bs(i,{BRAND:()=>NL,DIRTY:()=>Bi,EMPTY_PATH:()=>iL,INVALID:()=>W,NEVER:()=>u1,OK:()=>yt,ParseStatus:()=>ft,Schema:()=>ie,ZodAny:()=>Xo,ZodArray:()=>so,ZodBigInt:()=>ji,ZodBoolean:()=>Ki,ZodBranded:()=>Ul,ZodCatch:()=>na,ZodDate:()=>Wi,ZodDefault:()=>ta,ZodDiscriminatedUnion:()=>Qu,ZodEffects:()=>Dn,ZodEnum:()=>Ji,ZodError:()=>Zt,ZodFirstPartyTypeKind:()=>z,ZodFunction:()=>ep,ZodIntersection:()=>qi,ZodIssueCode:()=>N,ZodLazy:()=>Zi,ZodLiteral:()=>Qi,ZodMap:()=>ys,ZodNaN:()=>Rs,ZodNativeEnum:()=>ea,ZodNever:()=>er,ZodNull:()=>Yi,ZodNullable:()=>Nr,ZodNumber:()=>Vi,ZodObject:()=>Qt,ZodOptional:()=>Ln,ZodParsedType:()=>P,ZodPipeline:()=>Fl,ZodPromise:()=>qo,ZodReadonly:()=>ra,ZodRecord:()=>Ju,ZodSchema:()=>ie,ZodSet:()=>vs,ZodString:()=>Yo,ZodSymbol:()=>xs,ZodTransformer:()=>Dn,ZodTuple:()=>Rr,ZodType:()=>ie,ZodUndefined:()=>zi,ZodUnion:()=>Xi,ZodUnknown:()=>ao,ZodVoid:()=>As,addIssueToContext:()=>M,any:()=>$L,array:()=>FL,bigint:()=>CL,boolean:()=>hS,coerce:()=>d1,custom:()=>uS,date:()=>LL,datetimeRegex:()=>lS,defaultErrorMap:()=>oo,discriminatedUnion:()=>jL,effect:()=>n1,enum:()=>JL,function:()=>qL,getErrorMap:()=>Ts,getParsedType:()=>vr,instanceof:()=>OL,intersection:()=>KL,isAborted:()=>qu,isAsync:()=>Ss,isDirty:()=>Zu,isValid:()=>zo,late:()=>wL,lazy:()=>ZL,literal:()=>QL,makeIssue:()=>Hl,map:()=>YL,nan:()=>IL,nativeEnum:()=>e1,never:()=>HL,null:()=>ML,nullable:()=>o1,number:()=>fS,object:()=>GL,objectUtil:()=>nm,oboolean:()=>l1,onumber:()=>c1,optional:()=>r1,ostring:()=>s1,pipeline:()=>a1,preprocess:()=>i1,promise:()=>t1,quotelessJson:()=>nL,record:()=>zL,set:()=>XL,setErrorMap:()=>oL,strictObject:()=>BL,string:()=>pS,symbol:()=>kL,transformer:()=>n1,tuple:()=>WL,undefined:()=>DL,union:()=>VL,unknown:()=>PL,util:()=>le,void:()=>UL});var sm=S(()=>{Xu();om();rS();Pl();mS();Yu()});var ne=S(()=>{sm();sm()});var Ns,cm=S(()=>{"use strict";Ns={ACT:"reticle_act",ACT_SEQUENCE:"reticle_act_sequence",ACT_AND_WAIT:"reticle_act_and_wait",INVOKE:"reticle_invoke"}});var tp,lm,C,eB,p1,tB,co=S(()=>{"use strict";tp={SIGNAL:"signal",NET:"net",STATE:"state"},lm={ELEMENT:"element",TEXT:"text"},C={ELEMENT:lm.ELEMENT,TEXT:lm.TEXT,SIGNAL:tp.SIGNAL,NET:tp.NET,STATE:tp.STATE,ROUTE:"route",CONSOLE:"console",ANIMATION:"animation",SETTLED:"settled",COMPARE:"compare",ALL_OF:"allOf",ANY_OF:"anyOf",NOT:"not"},eB=new Set(Object.values(tp)),p1=new Set(Object.values(lm)),tB=new Set([...p1,C.ROUTE])});var gS,ES,bS,dm,f1,TS,Mn,SS,Le,kt,np,Gl=S(()=>{"use strict";gS=1,ES={FLOW_REPLAY:"flow_replay",MANUAL:"manual"},bS={PASS:"pass",DRIFT:"drift",ERROR:"error",FAIL:"fail"},dm=2,f1=3,TS=new Set([1,dm,f1]),Mn={TESTID:"testid",ROLE:"role",SIGNAL:"signal",COMPONENT:"component"},SS="unresolved",Le={ASSERT_SIGNAL:"assert-signal",ASSERT_VISIBLE:"assert-visible",ASSERT_STATE:"assert-state",ASSERT_NET:"assert-net",MARK_DYNAMIC:"mark-dynamic",SUCCESS_STATE:"success-state",INTENT:"intent"},kt={IDLE:"idle",RECORDING:"recording",ANNOTATING:"annotating"},np={ACTIVE:"active",QUARANTINED:"quarantined",DRAFT:"draft"}});var _S,um=S(()=>{"use strict";_S={READ:"read",IDEMPOTENT:"idempotent",COMMITS:"commits"}});var xS=S(()=>{"use strict"});var x,AS=S(()=>{"use strict";x={DOM_ADDED:"dom.added",DOM_REMOVED:"dom.removed",DOM_ATTR:"dom.attr",DOM_TEXT:"dom.text",NET_REQUEST:"net.request",NET_PENDING:"net.pending",NET_STREAM:"net.stream",PERF:"perf",ROUTE_CHANGE:"route.change",CONSOLE_LOG:"console.log",CONSOLE_WARN:"console.warn",CONSOLE_ERROR:"console.error",CONSOLE_INFO:"console.info",CONSOLE_DEBUG:"console.debug",ERROR_UNCAUGHT:"error.uncaught",VISIBLE_SHOWN:"visible.shown",ANIM_START:"anim.start",ANIM_END:"anim.end",SCROLL_POSITION:"scroll.position",REVEAL_SHOWN:"reveal.shown",SIGNAL:"signal",STATE_CHANGE:"state.change",STORAGE_CHANGE:"storage.change",PAGE_HEALTH:"page.health",CONTEXT_OPENED:"context.opened",DIALOG_OPENED:"dialog.opened",RENDER_COMMIT:"render.commit",FOCUS_CHANGE:"focus.change",FIELD_CHANGE:"field.change",FLOW_RECORDED:"flow.recorded",TRANSPORT_OVERFLOW:"transport.overflow",TRUNCATED:"truncated",BLIND_SPOT:"blind-spot",SDK_FAILED:"sdk.failed",NET_DETAIL:"net.detail",HUMAN_CONTROL:"human.control",HUMAN_MARK:"human.mark",DOWNLOAD:"download",HUD_USED:"hud.used"}});function vS(t=pm,e=h1){return`ws://${e}:${String(t)}${oa}`}var pm,oa,rp,yS,h1,$n,op,sB,G,_e,ip,RS,ws,cB,NS,dB,ap,sp,wS,Os,cp,m1,uB,k,OS,IS,fe,et,L,je,Is,Dt,Mt=S(()=>{"use strict";xS();AS();pm=4400,oa="/reticle",rp=1,yS=1,h1="localhost";$n={SESSION:"__reticle_session",PROJECT:"__reticle_project",OPENED:"__reticle_opened",HUD:"__reticle_hud"},op="https://app.reticle.sh",sB={MAX_RUNS:50,MAX_BYTES:4*1024*1024},G={MAX_MESSAGE_BYTES:1024*1024,MAX_MESSAGES_PER_SECOND:2e4,MAX_SESSIONS:32,MAX_PENDING_CONNECTIONS:16,HELLO_TIMEOUT_MS:5e3,MAX_BUFFER_BYTES:8*1024*1024,MAX_SESSION_ID_LENGTH:128,MAX_URL_LENGTH:4096,MAX_TITLE_LENGTH:512,MAX_ADAPTERS:32,MAX_CONTRACT_NAMES:128,MAX_ADAPTER_NAME_LENGTH:128,MAX_TOKEN_LENGTH:512,MAX_COMMAND_ID_LENGTH:128,MAX_COMMAND_NAME_LENGTH:128,MAX_REF_LENGTH:128,MAX_ERROR_LENGTH:4096,MAX_STACK_LENGTH:4e3,MAX_SERIALIZE_DEPTH:8,MAX_COLLECTION_ITEMS:200,MAX_OBJECT_KEYS:200,MAX_STRING_LENGTH:64*1024,MAX_MARK_NOTE_LENGTH:2e3,MAX_MARK_LABEL_LENGTH:256},_e="[REDACTED]",ip="confirmDangerous",RS="native",ws={NO_PROVIDER:"no-visual-provider",CAPTURE_FAILED:"capture-failed",BASELINE_MISSING:"baseline-missing",DIMENSION_MISMATCH:"dimension-mismatch",FULL_PAGE_UNSUPPORTED:"full-page-unsupported",NOT_COMPOSITED:"window-not-composited"},cB=1440*60*1e3,NS=1,dB={MAX_EVENTS:2e3,MAX_AGE_MS:6e4,MAX_BYTES:G.MAX_BUFFER_BYTES},ap="__reticle_renders",sp={DOM:"dom",JOURNAL:"journal"},wS={WINDOW:"window"},Os={LCP:"lcp",CLS:"cls",LONGTASK:"longtask"},cp={HOVER_NATIVE_ENTER_LEAVE:"target has enter/leave handlers; synthetic hover may not trigger them \u2014 expect no state change",REAL_INPUT_FELL_BACK:"real-input provider was available but failed; fell back to synthetic dispatch",CLICK_OCCLUDED:"target is visually occluded by another element; a real user could not click it (synthetic dispatch still delivered the event) \u2014 dismiss the overlay or scroll the target clear",GLOBAL_PRESS:"press landed on the focused element or document \u2014 no named target was given, so this effect does not claim one"},m1="console.",uB=[x.CONSOLE_LOG,x.CONSOLE_WARN,x.CONSOLE_ERROR,x.CONSOLE_INFO].map(t=>t.slice(m1.length)),k={CLICK:"click",DBLCLICK:"dblclick",HOVER:"hover",FOCUS:"focus",BLUR:"blur",FILL:"fill",TYPE:"type",CLEAR:"clear",SELECT:"select",CHECK:"check",UNCHECK:"uncheck",SUBMIT:"submit",PRESS:"press",UPLOAD:"upload",SCROLL_INTO_VIEW:"scrollIntoView",SCROLL:"scroll",DRAG:"drag",TAP:"tap",ZOOM:"zoom"},OS={TIMEOUT:"timeout",THROTTLED:"throttled"},IS={UNAVAILABLE:"component-state-unavailable"},fe={VISIBLE:"visible",HIDDEN:"hidden",ENABLED:"enabled",DISABLED:"disabled",CHECKED:"checked",EXPANDED:"expanded",PRESSED:"pressed",FOCUSED:"focused",PRESENT:"present",IN_VIEWPORT:"inViewport"},et={ROLE:"role",TEXT:"text",LABEL:"label",PLACEHOLDER:"placeholder",TESTID:"testid",ALT:"alt",COMPONENT:"component"},L={SNAPSHOT:"snapshot",QUERY:"query",MATCH:"match",INSPECT:"inspect",ACT:"act",ACT_SEQUENCE:"act_sequence",ANIMATIONS:"animations",NARRATE:"narrate",CLOCK:"clock",CAPABILITIES:"capabilities",STATE_READ:"state_read",STORAGE_READ:"storage_read",SCROLL:"scroll",SESSION_CONFIG:"session_config",PRESENTER:"presenter",IMPACT:"impact",CAPTURE:"capture",RENDER:"render",NAVIGATE:"navigate",REFRESH:"refresh",FLOWS:"flows",FLOW_PROGRESS:"flow.progress",PLAN:"plan",MARKERS:"markers"},je={IDLE:"idle",READING:"reading",ACTING:"acting"},Is={FULL:"full",INTERACTIVE:"interactive",STATUS:"status"},Dt={HELLO:"hello",COMMAND:"command",COMMAND_RESULT:"command_result",EVENT:"event"}});var Pn,g1,Hn,mB,ia=S(()=>{"use strict";ne();Pn={WEB:"web",DESKTOP:"desktop",MOBILE:"mobile",SERVICE:"service",GAME:"game",DEVICE:"device"},g1=i.union([i.nativeEnum(Pn),i.string().regex(/^x-[a-z0-9-]+$/,"a surface this specification does not name must start with x-")]),Hn=i.object({surface:g1,instance:i.string().min(1),epoch:i.number().int().nonnegative().optional(),locator:i.string().optional(),revision:i.string().optional()}),mB=i.object({kind:i.enum(["instance","epoch"]),from:i.string(),to:i.string()})});var R,gn,Jt,$t,fm,hm,tr=S(()=>{"use strict";ne();R={UI:"ui",NET:"net",STATE:"state",SIGNAL:"signal",LOG:"log",ROUTE:"route",STORAGE:"storage",TIME:"time",VISUAL:"visual"},gn=i.union([i.nativeEnum(R),i.string().regex(/^x-[a-z0-9-]+$/,"a channel this specification does not name must start with x-")]),Jt={INDEPENDENT:"independent",ACTUATION_DERIVED:"actuation-derived"},$t={CONSEQUENCE:"consequence",PRESENCE:"presence",CONTEXT:"context"},fm=i.object({id:gn,independence:i.nativeEnum(Jt),grade:i.nativeEnum($t),note:i.string().optional()}),hm={[R.UI]:{independence:Jt.ACTUATION_DERIVED,grade:$t.PRESENCE},[R.NET]:{independence:Jt.INDEPENDENT,grade:$t.CONSEQUENCE},[R.STATE]:{independence:Jt.ACTUATION_DERIVED,grade:$t.CONSEQUENCE},[R.SIGNAL]:{independence:Jt.ACTUATION_DERIVED,grade:$t.CONSEQUENCE},[R.LOG]:{independence:Jt.INDEPENDENT,grade:$t.CONTEXT},[R.ROUTE]:{independence:Jt.ACTUATION_DERIVED,grade:$t.PRESENCE},[R.STORAGE]:{independence:Jt.ACTUATION_DERIVED,grade:$t.CONSEQUENCE},[R.TIME]:{independence:Jt.INDEPENDENT,grade:$t.CONTEXT},[R.VISUAL]:{independence:Jt.ACTUATION_DERIVED,grade:$t.PRESENCE}}});var CS=S(()=>{"use strict"});var xB,LS=S(()=>{"use strict";ne();ia();xB=i.object({id:i.string().min(1),subject:Hn,capturedAt:i.number().int(),payload:i.unknown().optional()})});var vB,kS=S(()=>{"use strict";ne();vB=i.object({mutation:i.string().min(1)})});var E1,mm,b1,T1,DS,MS,gm,$S,PS,Bl=S(()=>{"use strict";ne();tr();E1={USER:"user",DEVELOPER:"developer",AGENT:"agent",SYSTEM:"system",WORKFLOW:"workflow",DERIVED:"derived"},mm={DECLARED:"declared",BOUND:"bound",ABANDONED:"abandoned"},b1=i.object({id:i.string().min(1),statement:i.string().min(1),origin:i.nativeEnum(E1),claims:i.array(i.string()).default([]),declaredAt:i.number().int().optional()}),T1=i.discriminatedUnion("status",[i.object({status:i.literal(mm.ABANDONED),abandonedBecause:i.string().trim().min(1)}),i.object({status:i.literal(mm.DECLARED),abandonedBecause:i.undefined().optional()}),i.object({status:i.literal(mm.BOUND),abandonedBecause:i.undefined().optional()})]),DS=b1.and(T1),MS={BEFORE_ACTION:"before-action",AFTER_ACTION:"after-action"},gm=i.object({id:i.string().min(1),predicate:i.unknown(),reads:i.string().min(1),channels:i.array(gn).min(1)}),$S=i.object({id:i.string().min(1),intent:i.string().optional(),statement:i.string().min(1),declaredAt:i.nativeEnum(MS),assertions:i.array(gm).default([])}),PS=i.object({id:i.string().min(1),statement:i.string().min(1),predicate:i.unknown(),channels:i.array(gn).min(1),severity:i.enum(["blocking","advisory"]).default("blocking")})});var S1,Cs,kB,Em,HS,US,_1,FS,Zo=S(()=>{"use strict";ne();tr();ia();S1=i.object({id:i.string().min(1),window:i.string().min(1),channel:gn,at:i.number().int(),value:i.unknown(),summary:i.string().min(1)}),Cs={AUTHORITATIVE:"authoritative",DERIVED:"derived",OBSERVED:"observed",LEARNED:"learned"},kB={[Cs.LEARNED]:0,[Cs.OBSERVED]:1,[Cs.DERIVED]:2,[Cs.AUTHORITATIVE]:3},Em=i.object({class:i.nativeEnum(Cs),source:i.string().min(1),method:i.string().min(1),subject:Hn,at:i.number().int(),confidence:i.number().min(0).max(1).optional()}),HS=i.object({observation:S1,provenance:Em,independence:i.nativeEnum(Jt),grade:i.nativeEnum($t)}),US={CHANNEL_UNOBSERVED:"channel-unobserved",BOUNDARY_UNCROSSABLE:"boundary-uncrossable",BUFFER_TRUNCATED:"buffer-truncated",REDACTED:"redacted",STILL_IN_FLIGHT:"still-in-flight",EFFECT_ELSEWHERE:"effect-elsewhere"},_1=i.object({kind:i.nativeEnum(US),channel:gn.optional(),detail:i.string().min(1),impeaching:i.boolean(),remedy:i.string().optional()}),FS=i.object({window:i.string().min(1),observed:i.array(gn),blindSpots:i.array(_1)})});var A1,y1,lp,v1,dp,bm,HB,GS=S(()=>{"use strict";ne();tr();Zo();A1=i.object({channel:gn}),y1=i.union([i.object({summary:i.string().min(1),valueContains:i.string().min(1)}),i.object({summary:i.string().min(1).optional(),valueContains:i.undefined().optional()})]),lp=A1.and(y1),v1={EXACTLY:"exactly",AT_LEAST:"at-least",AT_MOST:"at-most"},dp={COUNT:"count",PRESENT:"present",ABSENT:"absent",MEASURE:"measure"},bm={EQUALS:"equals",AT_LEAST:"at-least",AT_MOST:"at-most"},HB=i.discriminatedUnion("kind",[i.object({kind:i.literal(dp.COUNT),match:lp,op:i.nativeEnum(v1),value:i.number().int().nonnegative()}),i.object({kind:i.literal(dp.PRESENT),match:lp}),i.object({kind:i.literal(dp.ABSENT),match:lp}),i.object({kind:i.literal(dp.MEASURE),match:lp,op:i.nativeEnum(bm),value:i.number().finite(),tolerance:i.number().nonnegative().finite().default(0)})])});var BB,Tm,VB,up,BS,Vl,VS,jB,aa=S(()=>{"use strict";ne();ia();BB=i.object({name:i.string().min(1),meaning:i.string().min(1),parameters:i.unknown().optional(),mutating:i.boolean()}),Tm={UNDECLARED:"undeclared",UNSUPPORTED:"unsupported",UNRESOLVED:"unresolved",UNAVAILABLE:"unavailable",GUARDED:"guarded",MALFORMED:"malformed"},VB=i.object({ref:i.string().min(1),describes:i.string().min(1),at:i.string().optional()}),up=i.object({id:i.string().min(1),actor:i.string().min(1),capability:i.string().min(1),target:i.string().optional(),parameters:i.unknown().optional(),at:i.number().int()}),BS=i.object({action:i.string().min(1),dispatched:i.boolean(),refused:i.object({reason:i.nativeEnum(Tm),detail:i.string().min(1)}).optional(),subject:Hn,at:i.number().int()}),Vl={QUIESCENCE:"quiescence",TICKS:"ticks",ACK:"ack",SIGNAL:"signal",SETTLED_PHYSICAL:"settled-physical",EXIT:"exit",TERMINATED:"terminated",BUDGET_EXHAUSTED:"budget-exhausted"},VS=i.object({id:i.string().min(1),openedAt:i.number().int(),closedAt:i.number().int().optional(),budgetMs:i.number().int().positive(),closes:i.nativeEnum(Vl),closedBy:i.nativeEnum(Vl).optional(),subject:Hn}),jB=new Set([Vl.BUDGET_EXHAUSTED,Vl.TERMINATED])});var pp,R1,jS,N1,Sm,_m,KS,Ls=S(()=>{"use strict";ne();tr();pp={YES:"yes",NO:"no",UNKNOWN:"unknown",NO_FAULT:"no-fault"},R1=i.string().min(1),jS={ADVANCED_OVER_FAILURE:"advanced-over-failure",CLAIMED_OVER_FAILURE:"claimed-over-failure",EFFECT_DISCARDED:"effect-discarded",CLAIM_UNCORROBORATED:"claim-uncorroborated",FAILURE_INSIDE_SUCCESS:"failure-inside-success",VALUE_NOT_APPLIED:"value-not-applied",DUPLICATED_EFFECT:"duplicated-effect",STALE_APPLIED:"stale-applied",NO_EFFECT:"no-effect",FAULT_MISATTRIBUTED:"fault-misattributed",EVIDENCE_SUPERSEDED:"evidence-superseded",EVIDENCE_PREDATES_EDIT:"evidence-predates-edit"},N1=i.union([i.nativeEnum(jS),i.string().regex(/^x-[a-z0-9-]+$/,"an anomaly this specification does not name must start with x-")]),Sm={OBSERVED:"observed",ABSENCE_DERIVED:"absence-derived",ADVISORY:"advisory"},_m=i.object({kind:N1,tier:i.nativeEnum(Sm),claim:i.string().min(1),counter:i.string().min(1),between:i.tuple([gn,gn]),evidence:i.array(i.string()).default([])}),KS=i.object({id:i.string().min(1),claim:i.string().min(1),window:i.string().min(1),verdict:i.nativeEnum(pp),grade:i.nativeEnum($t).optional(),reasons:i.array(R1).default([]),evidence:i.array(i.string()).default([]),anomalies:i.array(_m).default([]),supersedes:i.string().optional(),at:i.number().int()})});var w1,O1,I1,e4,WS,C1,t4,xm=S(()=>{"use strict";ne();aa();Bl();Zo();Ls();w1=i.string().min(1).regex(/^(?!.*(?:^|\/)\.{1,2}(?:\/|$))[^/]+(?:\/[^/]+)*$/,{message:"a flow name is `/`-separated segments: no empty segment, no leading or trailing slash, no `.` or `..`"}),O1=i.object({id:i.string().min(1),invoke:w1,with:i.unknown().optional(),at:i.number().int()}),I1=i.union([up,O1]),e4=i.object({name:i.string().min(1),version:i.number().int().positive(),startState:i.unknown().optional(),requires:i.unknown().optional(),ensures:i.unknown().optional(),claim:i.string().min(1),steps:i.array(I1),expects:i.array(gm).default([]),mayRebind:i.boolean().default(!1)}),WS=i.object({verdict:i.string().min(1),expected:i.string().min(1),actual:i.string().min(1),evidence:i.array(i.string()).min(1),location:i.object({file:i.string(),line:i.number().int().optional(),symbol:i.string().optional()}).optional(),instruction:i.string().min(1)}),C1={INVARIANT:"invariant",FAILURE_MODE:"failure-mode",GAP:"gap",REPAIR_OUTCOME:"repair-outcome"},t4=i.object({id:i.string().min(1),kind:i.nativeEnum(C1),statement:i.string().min(1),provenance:Em,observations:i.number().int().nonnegative().default(0),promotedBy:i.string().optional(),promotedAt:i.number().int().optional()})});var L1,k1,u4,zS=S(()=>{"use strict";ne();tr();Bl();aa();Zo();Ls();xm();ia();L1="1.0",k1=i.object({constraint:i.string().min(1),at:i.number().int(),detail:i.string().min(1),evidence:i.array(i.string()).default([])}),u4=i.object({ovp:i.literal(L1),id:i.string().min(1),verifier:i.object({name:i.string().min(1),version:i.string().min(1),profile:i.string().optional()}),subject:Hn,channels:i.array(fm),witnesses:i.array(i.object({name:i.string().min(1),subject:Hn,channels:i.array(fm)})).default([]),intents:i.array(DS).default([]),claims:i.array($S).default([]),constraints:i.array(PS).default([]),actions:i.array(up).default([]),receipts:i.array(BS).default([]),windows:i.array(VS).default([]),evidence:i.array(HS).default([]),coverage:i.array(FS).default([]),anomalies:i.array(_m).default([]),verdicts:i.array(KS).default([]),violations:i.array(k1).default([]),repairs:i.array(WS).default([]),startedAt:i.number().int(),endedAt:i.number().int()})});var Am=S(()=>{"use strict";Ls()});var ym=S(()=>{"use strict";Bl();tr();Zo();aa();Ls()});var vm=S(()=>{"use strict";aa();tr();Am();Zo();ym()});var Rm=S(()=>{"use strict"});var YS=S(()=>{"use strict";Rm()});var sa,$4,P4,H4,XS=S(()=>{"use strict";ne();tr();sa={EFFECT:"effect",IN_REALM:"in-realm",SURFACE:"surface"},$4=[sa.EFFECT,sa.IN_REALM,sa.SURFACE],P4={[sa.EFFECT]:[R.NET,R.LOG],[sa.IN_REALM]:[R.NET,R.LOG,R.STATE,R.SIGNAL],[sa.SURFACE]:[R.NET,R.LOG,R.STATE,R.SIGNAL,R.UI]},H4=i.object({name:i.string().min(1),version:i.string().min(1),platform:i.string().min(1),claims:i.nativeEnum(sa),homepage:i.string().optional()})});var qS=S(()=>{"use strict";vm();tr();aa();Zo();ia()});var ks=S(()=>{"use strict";ia();tr();CS();LS();kS();Bl();GS();aa();Zo();Ls();xm();zS();vm();Am();Rm();YS();ym();XS();qS()});var lo,Ke,ZS,Pt,Qo=S(()=>{"use strict";lo={YES:"yes",NO:"no",UNKNOWN:"unknown",NO_FAULT:"no-fault"},Ke={VERSION_SKEW:"version_skew",CAPABILITY_ABSENT:"capability-absent",INCONCLUSIVE:"inconclusive",OBSERVATION_LOST:"observation_lost",WINDOW_CLOSED_EARLY:"window_closed_early",ASSERTION_FAILED:"assertion_failed",CONTRADICTED:"contradicted",ALREADY_TRUE:"already_true",HIDDEN_MATCH:"hidden_match",UNCLEAN_CAPTURE:"unclean_capture",VACUOUS_GRADE:"vacuous_grade",NOTHING_DECLARED:"nothing_declared",OUTCOME_PENDING:"outcome_pending",OUTCOME_UNREAD:"outcome_unread",UNSETTLED:"unsettled",EVIDENCE_INCOMPLETE:"evidence_incomplete",PROVED:"proved",ABSENCE_BLIND_SPOT:"absence_blind_spot"},ZS={BUFFER_LOSS:"buffer_loss",TRANSPORT_GAP:"transport_gap",BLIND_SPOT:"blind_spot",JOURNAL_LOSS:"journal_loss",OTHER:"other"},Pt={CLOSED_SHADOW_ROOT:"closed-shadow-root",RATE_LIMITED:"rate-limited",CROSS_ORIGIN_IFRAME:"cross-origin-iframe",UNINSTRUMENTED_FRAME:"uninstrumented-frame",VIRTUALIZED_UNMOUNTED:"virtualized-unmounted",WRAPPED_NETWORK:"wrapped-network",UNOBSERVED_IPC:"unobserved-ipc",VERDICTLESS_SEND:"verdictless-send",UNWATCHED_STATE:"unwatched-state"}});var $1,P1,QS,Nm=S(()=>{"use strict";ne();Qo();$1={FINDABLE:"findable",DISCOVERABILITY:"discoverability",AGENT_ASSUMPTION:"agent_assumption",DEFECT:"defect"},P1=20,QS=i.object({goal:i.string().min(1).max(500),kind:i.nativeEnum($1),agent:i.object({verified:i.nativeEnum(lo),claim:i.string().max(2e3)}),harness:i.object({verified:i.nativeEnum(lo),found:i.boolean(),searched:i.array(i.string().max(500)).max(P1),gaveUpAt:i.string().max(500).optional()})})});var H1,U1,F1,G1,B1,V1,JS,j1,fp,K1,W1,z1,Y1,X1,q1,Z1,Q1,J1,ek,AV,tk,wm,Om,nk,rk,ok,ik,ak,sk,ck,lk,dk,uk,yV,Im=S(()=>{"use strict";ne();ks();co();Qo();Nm();H1=3,U1=1,F1=2,G1={pass:lo.YES,fail:lo.NO},B1={network:C.NET,layout:C.ELEMENT},V1=i.string().brand(),JS={PASS:"pass",FAIL:"fail",PARTIAL:"partial",UNKNOWN:"unknown"},j1={PASS:"pass",FAIL:"fail",SKIPPED:"skipped",HEALED:"healed"},fp={AUTH:"auth",PAYMENT:"payment",DB:"db",MIGRATION:"migration",RLS:"rls",SECRETS:"secrets",DESTRUCTIVE:"destructive",EXTERNAL:"external"},K1={LOW:"low",MEDIUM:"medium",HIGH:"high",CRITICAL:"critical"},W1={EDIT:"edit",CI:"ci",MANUAL:"manual",OEM:"oem"},z1={ADDED:"added",MODIFIED:"modified",DELETED:"deleted"},Y1={CODING_AGENT:"coding-agent",OEM_PIPELINE:"oem-pipeline",HUMAN:"human"},X1={REACT:"react",NEXT:"next",VITE:"vite",OTHER:"other"},q1={PREVIEW:"preview",CI:"ci",LOCAL:"local"},Z1={HIGH:"high",MEDIUM:"medium",LOW:"low"},Q1={DEV:"dev",PROD_PREVIEW:"prod-preview"},J1=i.object({file:i.string(),line:i.number().optional(),component:i.string().optional()}),ek=i.object({path:i.string(),changeKind:i.nativeEnum(z1),risk:i.array(i.nativeEnum(fp)).default([])}),AV=64*1024,tk={BROWSER:"browser",RENDERED:"rendered"},wm={RUNS_DIR:"runs",MANIFEST_FILE:"shots.jsonl",JPEG_QUALITY:.7,MAX_SIDE_PX:1600,MAX_PER_RUN:300,MAX_BYTES:1.5*1024*1024},Om=i.object({file:i.string(),source:i.nativeEnum(tk),width:i.number(),height:i.number(),sha256:i.string()}),nk=Om.extend({seq:i.number(),tool:i.string(),step:i.string().optional(),verdict:i.boolean().optional(),checkId:i.string().optional(),actionId:i.string().optional()}),rk=i.object({step:i.number(),anchor:i.string(),ok:i.boolean(),page:i.string().optional(),endPage:i.string().optional(),consequence:i.string().optional(),error:i.string().optional(),drift:i.string().optional(),screenshot:Om.optional()}),ok=i.object({startPath:i.string().optional(),steps:i.array(i.unknown())}),ik=i.object({name:i.string(),template:i.string().optional(),status:i.nativeEnum(j1),steps:i.number(),durationMs:i.number(),oracle:i.string().optional(),healed:i.object({from:i.string(),to:i.string(),consequenceVerified:i.boolean()}).optional(),evidenceRef:i.string().optional(),failureReason:i.string().optional(),stepResults:i.array(rk).optional(),recording:ok.optional(),recordingOmitted:i.boolean().optional()}),ak=i.object({kind:i.preprocess(t=>{var e;return typeof t=="string"&&(e=B1[t])!=null?e:t},i.nativeEnum(C).optional()),predicate:i.string(),status:i.preprocess(t=>{var e;return typeof t=="string"&&(e=G1[t])!=null?e:t},i.nativeEnum(lo)),evidence:i.unknown().optional(),declaredBeforeActing:i.boolean().optional(),expected:i.string().optional(),observed:i.string().optional(),grade:i.string().optional(),couldNotSee:i.array(i.string()).optional(),reason:i.string().optional(),checkId:i.string().optional(),actionId:i.string().optional(),intent:i.string().optional(),screenshot:Om.optional(),supersedes:i.string().optional()}),sk=i.object({surface:i.nativeEnum(fp),severity:i.nativeEnum(K1),detail:i.string(),evidence:i.object({file:i.string().optional(),line:i.number().optional(),network:i.string().optional()}).optional(),gated:i.boolean().default(!1)}),ck=i.object({consoleErrors:i.array(i.object({level:i.string(),message:i.string(),at:i.number()})).default([]),networkAnomalies:i.array(i.object({method:i.string(),url:i.string(),status:i.number().optional(),issue:i.string()})).default([]),stateAssertions:i.array(i.object({store:i.string(),path:i.string(),expected:i.unknown(),actual:i.unknown(),ok:i.boolean()})).default([]),timeline:i.array(i.object({at:i.number(),kind:i.string(),summary:i.string()})).default([])}),lk=i.object({flow:i.string().optional(),step:i.number().optional(),expected:i.string(),actual:i.string(),sourceLocation:J1.optional(),suggestedPrompt:i.string()}),dk=i.object({status:i.nativeEnum(JS),reasons:i.array(i.string()).default([]),confidence:i.nativeEnum(Z1),blockingRisks:i.number().default(0),checkId:i.string().optional(),supersedes:i.string().optional()}),uk=i.object({alg:i.string(),value:i.string(),signedAt:i.number()}),yV=i.object({schemaVersion:i.union([i.literal(H1),i.literal(F1),i.literal(U1)]),runId:V1,createdAt:i.number(),durationMs:i.number(),profile:i.nativeEnum(Q1),project:i.object({name:i.string(),framework:i.nativeEnum(X1),commit:i.string().optional(),env:i.nativeEnum(q1).optional(),previewUrl:i.string().optional()}),agent:i.object({id:i.string(),kind:i.nativeEnum(Y1),model:i.string().optional()}),trigger:i.object({kind:i.nativeEnum(W1),diffRef:i.string().optional(),note:i.string().optional()}),editEpoch:i.number().optional(),subject:Hn.optional(),context:i.record(i.unknown()).optional(),changedFiles:i.array(ek).default([]),flows:i.array(ik).default([]),checks:i.array(ak).default([]),risks:i.array(sk).default([]),evidence:ck,repair:i.object({failurePackets:i.array(lk).default([])}).optional(),screenshots:i.array(nk).optional(),verdict:dk,signature:uk.optional(),disparity:i.array(QS).optional(),agentClaim:i.nativeEnum(JS).optional()})});var pk,jl,fk,hk,mk,gk,CV,Ek,bk,Tk,LV,kV,Cm=S(()=>{"use strict";ne();Mt();Gl();Im();pk=i.array(i.string().refine(t=>!t.includes("="),t=>({message:`\`attrs\` takes attribute NAMES only, not \`name=value\` \u2014 got ${JSON.stringify(t)}. It PROJECTS each attribute onto the match, it does not filter on it. Drop the \`=value\` half and read the returned \`attrs\` map, or assert the value with an \`element\` predicate carrying \`value\`.`}))),jl=i.object({by:i.nativeEnum(et).optional(),value:i.string().optional(),role:i.string().optional(),name:i.string().optional(),text:i.string().optional(),label:i.string().optional(),placeholder:i.string().optional(),testid:i.string().optional(),alt:i.string().optional(),component:i.string().optional(),attrs:pk.optional(),source:i.object({file:i.string(),line:i.number(),column:i.number().optional()}).strict().optional(),scope:i.string().optional(),self:i.boolean().optional(),matchCase:i.boolean().optional()}).strict(),fk=i.object({name:i.string(),steps:i.array(i.string())}),hk=i.object({surface:i.nativeEnum(fp),paths:i.array(i.string()).optional(),note:i.string().optional()}),mk=i.object({owner:i.string().optional(),safety:i.array(i.string()).optional(),scope:i.array(i.string()).optional(),redact:i.array(i.string()).optional(),risk:i.array(hk).optional()}),gk=i.object({testids:i.array(i.string()),signals:i.array(i.string()),stores:i.array(i.string()),flows:i.array(fk),governance:mk.optional()}),CV=i.object({version:i.literal(NS),generatedAt:i.number(),capabilities:gk}),Ek=i.object({consoleErrors:i.number().optional(),networkErrors:i.number().optional(),driftSteps:i.number().optional()}),bk=i.object({kind:i.nativeEnum(ES),name:i.string(),status:i.nativeEnum(bS),at:i.number(),summary:i.string().optional(),evidence:Ek.optional(),durationMs:i.number().optional()}),Tk=i.object({flows:i.array(i.string()).optional(),routes:i.array(i.string()).optional(),bestObservability:i.object({percent:i.number(),at:i.number()}).optional()}),LV=i.object({version:i.literal(gS),learned:Tk.optional(),runs:i.array(bk)}),kV=i.discriminatedUnion("kind",[i.object({kind:i.literal(Le.ASSERT_SIGNAL),name:i.string().min(1),dataMatches:i.record(i.unknown()).optional()}),i.object({kind:i.literal(Le.ASSERT_VISIBLE),testid:i.string().min(1)}),i.object({kind:i.literal(Le.ASSERT_STATE),statePath:i.string().min(1),store:i.string().min(1).optional(),equals:i.unknown().optional()}),i.object({kind:i.literal(Le.ASSERT_NET),net:i.object({method:i.string().min(1).optional(),urlContains:i.string().min(1).optional(),status:i.number().optional(),count:i.number().int().nonnegative().optional()})}),i.object({kind:i.literal(Le.MARK_DYNAMIC),testid:i.string().min(1)}),i.object({kind:i.literal(Le.SUCCESS_STATE),signal:i.string().min(1).optional(),testid:i.string().min(1).optional(),statePath:i.string().min(1).optional(),store:i.string().min(1).optional(),equals:i.unknown().optional(),hold:i.boolean().optional(),net:i.object({method:i.string().min(1).optional(),urlContains:i.string().min(1).optional(),status:i.number().optional(),count:i.number().int().nonnegative().optional()}).optional(),console:i.object({level:i.string().min(1).optional(),absent:i.boolean().optional()}).optional(),text:i.object({contains:i.string().min(1),scope:i.string().min(1).optional(),absent:i.boolean().optional(),visible:i.boolean().optional()}).optional()}),i.object({kind:i.literal(Le.INTENT),text:i.string().min(1)})])});function t_(t,e){let n=e_(t),r=e_(e);return[...new Set([...Object.keys(n),...Object.keys(r)])].every(a=>n[a]===r[a])}function e_(t){var e,n;return C.NET===t.from?{...t,body:(e=t.body)!=null?e:km.RESPONSE,method:(n=t.method)==null?void 0:n.toUpperCase()}:{...t}}var km,hp,Lm,Dm,Mm=S(()=>{"use strict";ne();co();km={RESPONSE:"response",REQUEST:"request"},hp={VALUE:"value",NUMBER:"number"},Lm=i.string().min(1),Dm=i.discriminatedUnion("from",[i.object({from:i.literal(C.NET),urlContains:i.string().min(1),method:i.string().optional(),body:i.enum([km.RESPONSE,km.REQUEST]).optional(),path:Lm}).strict(),i.object({from:i.literal(C.SIGNAL),name:i.string().min(1),path:Lm}).strict(),i.object({from:i.literal(C.STATE),store:i.string().optional(),path:Lm}).strict(),i.object({from:i.literal(C.TEXT),scope:i.string().min(1)}).strict()])});var n_,$m,Pm=S(()=>{"use strict";ne();ks();n_=i.object({op:i.nativeEnum(bm),value:i.number().finite(),tolerance:i.number().finite().nonnegative().optional()}).strict(),$m=i.discriminatedUnion("property",[i.object({property:i.literal("nonEmpty")}).strict(),i.object({property:i.literal("oneOf"),values:i.array(i.unknown()).min(1)}).strict(),i.object({property:i.literal("withinTolerance"),of:i.number().finite(),tolerance:i.number().finite().nonnegative()}).strict(),i.object({property:i.literal("matchesPattern"),pattern:i.string().min(1)}).strict(),i.object({property:i.literal("type"),is:i.enum(["string","number","boolean","array","object"])}).strict(),i.object({property:i.literal("changed")}).strict(),i.object({property:i.literal("unchanged")}).strict(),i.object({property:i.literal("increased"),by:n_.optional()}).strict(),i.object({property:i.literal("decreased"),by:n_.optional()}).strict()])});function xk(t){if(t.kind!==void 0||typeof t[Hm]!="string")return t;let e={...t,kind:t[Hm]};return delete e[Hm],e}function Ak(t){if(typeof t!="object"||t===null||Array.isArray(t))return t;let n=xk(t),r=typeof n.kind=="string"?n.kind:"",o=Sk[r],a=n;if(o!==void 0){a={...n};for(let[s,l]of Object.entries(o))a[s]!==void 0&&(a[l]===void 0&&(a[l]=a[s]),delete a[s])}return C.ELEMENT===r?yk(a):a}function yk(t){let e=_k.filter(o=>t[o]!==void 0);if(e.length===0)return t;let n={...t},r={};for(let o of e)r[o]=n[o],delete n[o];return n.query===void 0&&(n.query=r),n}function vk(){return i.discriminatedUnion("kind",[i.object({kind:i.literal(C.ELEMENT),query:jl,state:i.nativeEnum(fe).optional(),absent:i.boolean().optional()}).strict(),i.object({kind:i.literal(C.TEXT),contains:i.string().optional(),visible:i.boolean().optional(),absent:i.boolean().optional(),scope:i.string().optional(),self:i.boolean().optional(),satisfies:$m.optional(),ignoreCase:i.boolean().optional()}).strict(),i.object({kind:i.literal(C.NET),method:i.string().optional(),urlContains:i.string().optional(),status:i.number().optional(),ok:i.boolean().optional(),since:i.number().optional(),count:i.number().int().nonnegative().optional(),bodyContains:i.string().min(1).optional(),bodyMatches:i.record(i.string(),i.unknown()).optional(),requestBodyContains:i.string().min(1).optional(),requestBodyMatches:i.record(i.string(),i.unknown()).optional(),repeatable:i.boolean().optional()}).strict(),i.object({kind:i.literal(C.ROUTE),pathname:i.string().optional(),contains:i.string().optional(),since:i.number().optional()}).strict(),i.object({kind:i.literal(C.CONSOLE),level:i.string().optional(),contains:i.string().min(1).optional(),absent:i.boolean().optional(),since:i.number().optional()}).strict(),i.object({kind:i.literal(C.ANIMATION),name:i.string().optional(),target:i.string().optional(),completed:i.boolean().optional(),since:i.number().optional()}).strict(),i.object({kind:i.literal(C.SIGNAL),name:i.string().optional(),dataMatches:i.record(i.unknown()).optional(),count:i.number().int().nonnegative().optional(),since:i.number().optional()}).strict(),i.object({kind:i.literal(C.STATE),store:i.string().optional(),path:i.string(),equals:i.unknown().optional(),satisfies:$m.optional()}).strict(),i.object({kind:i.literal(C.SETTLED),quietMs:i.number().positive().optional()}).strict(),i.object({kind:i.literal(C.COMPARE),left:Dm,right:Dm,as:i.enum([hp.VALUE,hp.NUMBER]).optional(),tolerance:i.number().finite().nonnegative().optional()}).strict(),i.object({kind:i.literal(C.ALL_OF),predicates:i.array(Kl).min(1)}).strict(),i.object({kind:i.literal(C.ANY_OF),predicates:i.array(Kl).min(1)}).strict(),i.object({kind:i.literal(C.NOT),predicate:Kl}).strict()])}function Rk(t,e){if(typeof t!="object"||t===null)return;let n=t;if(C.NET===n.kind){Nk(n.repeatable,n.urlContains,e);return}if(C.COMPARE===n.kind){wk(t,e);return}C.TEXT===n.kind&&(n.contains===void 0&&n.satisfies===void 0&&e.addIssue({code:i.ZodIssueCode.custom,message:"a text predicate must say WHAT about the text: `contains` for a substring, `satisfies` for a property of it. With neither it matches any element with any text and cannot fail"}),n.satisfies!==void 0&&n.contains===void 0&&n.scope===void 0&&e.addIssue({code:i.ZodIssueCode.custom,message:"`satisfies` needs a subject: add `scope` (the element whose text is tested, with `self: true` to read the scope root itself) or a `contains` that selects one. Without either, the locator is every element on the page and the property would run against whichever one happened to match first"}))}function Nk(t,e,n){t===!0&&(typeof e=="string"&&e.trim().length>0||n.addIssue({code:i.ZodIssueCode.custom,message:'`repeatable: true` needs a non-empty `urlContains` naming the read endpoint, for example `{ kind: "net", method: "POST", urlContains: "/graphql", repeatable: true }`. Without one it would excuse every request in the window from duplicate-request, a real double submit included'}))}function wk(t,e){t_(t.left,t.right)&&e.addIssue({code:i.ZodIssueCode.custom,message:"`left` and `right` read the same value, so this comparison agrees with itself on every page and cannot fail. Compare two different readings: what the page shows against what the server answered, or what was sent against what came back"}),t.tolerance!==void 0&&hp.NUMBER!==t.as&&e.addIssue({code:i.ZodIssueCode.custom,message:'`tolerance` applies to a numeric comparison only: add `as: "number"`'})}var Sk,Hm,_k,Kl,Um=S(()=>{"use strict";ne();Cm();Mt();Mm();co();Pm();Sk={[C.TEXT]:{text:"contains",value:"contains",query:"contains"},[C.ROUTE]:{path:"pathname",urlContains:"contains",url:"contains",pathContains:"contains"},[C.NET]:{url:"urlContains",responseBodyMatches:"bodyMatches",pathContains:"urlContains"},[C.CONSOLE]:{textContains:"contains"},[C.SIGNAL]:{data:"dataMatches"},[C.ALL_OF]:{of:"predicates"},[C.ANY_OF]:{of:"predicates"},[C.NOT]:{of:"predicate"}},Hm="type",_k=Object.keys(jl.shape);Kl=i.lazy(()=>i.preprocess(Ak,vk()).superRefine(Rk))});function r_(t){return`${t} is an element ref, which only exists in the session that minted it \u2014 scope by a CSS selector or a testid so the flow can check it again`}function mp(t){let e=(n,r)=>r!==void 0&&Ok.test(r)?`${n} "${r}"`:void 0;switch(t.kind){case C.ALL_OF:case C.ANY_OF:for(let n of t.predicates){let r=mp(n);if(r!==void 0)return r}return;case C.NOT:return mp(t.predicate);case C.TEXT:return e("text.scope",t.scope);case C.ELEMENT:return e("element.query.scope",t.query.scope);case C.ANIMATION:return e("animation.target",t.target);case C.COMPARE:for(let[n,r]of[["left",t.left],["right",t.right]]){if(C.TEXT!==r.from)continue;let o=e(`compare.${n}.scope`,r.scope);if(o!==void 0)return o}return;default:return}}var Ok,Fm=S(()=>{"use strict";co();Ok=/^e\d+$/});function i_(t){let e=[];if(t.signal!==void 0){let s={kind:C.SIGNAL,name:t.signal};t.signalData!==void 0&&(s.dataMatches=t.signalData),t.signalCount!==void 0&&(s.count=t.signalCount,e.push({kind:C.SETTLED})),e.push(s)}if(t.route!==void 0){let s={kind:C.ROUTE};return t.route.pathname!==void 0&&(s.pathname=t.route.pathname),t.route.contains!==void 0&&(s.contains=t.route.contains),s}if(t.net!==void 0){let s={kind:C.NET};t.net.method!==void 0&&(s.method=t.net.method),t.net.urlContains!==void 0&&(s.urlContains=t.net.urlContains),t.net.status!==void 0&&(s.status=t.net.status),t.net.count!==void 0&&(s.count=t.net.count,e.push({kind:C.SETTLED})),e.push(s)}if(t.console!==void 0){let s={kind:C.CONSOLE};t.console.level!==void 0&&(s.level=t.console.level),t.console.absent!==void 0&&(s.absent=t.console.absent,t.console.absent&&e.push({kind:C.SETTLED})),e.push(s)}let n=t.state;if(n!==void 0){let s={kind:C.STATE,path:n.path};n.store!==void 0&&(s.store=n.store),n.equals!==void 0&&(s.equals=n.equals),n.hold===!0&&e.push({kind:C.SETTLED}),e.push(s)}let r=t.element;if(r!==void 0){let s={};r.testid!==void 0&&(s.testid=r.testid),r.role!==void 0&&(s.role=r.role),r.name!==void 0&&(s.name=r.name),Object.keys(s).length>0&&e.push({kind:C.ELEMENT,query:s})}let o=t.text;if(o!==void 0){let s={kind:C.TEXT,contains:o.contains};o.scope!==void 0&&(s.scope=o.scope),o.visible!==void 0&&(s.visible=o.visible),o.absent===!0&&(s.absent=!0,e.push({kind:C.SETTLED})),e.push(s)}let[a]=e;if(e.length!==0)return e.length===1&&a!==void 0?a:{kind:C.ALL_OF,predicates:e}}var o_,Gm=S(()=>{"use strict";ne();co();o_=i.object({route:i.object({pathname:i.string().optional(),contains:i.string().optional()}).optional(),signal:i.string().optional(),signalData:i.record(i.unknown()).optional(),signalCount:i.number().int().nonnegative().optional(),net:i.object({method:i.string().optional(),urlContains:i.string().optional(),status:i.number().optional(),count:i.number().int().nonnegative().optional()}).strict().optional(),console:i.object({level:i.string().optional(),absent:i.boolean().optional()}).strict().optional(),element:i.object({testid:i.string().optional(),role:i.string().optional(),name:i.string().optional()}).strict().optional(),text:i.object({contains:i.string().min(1),scope:i.string().optional(),absent:i.boolean().optional(),visible:i.boolean().optional()}).strict().optional(),state:i.object({store:i.string().optional(),path:i.string(),equals:i.unknown().optional(),hold:i.boolean().optional()}).strict().optional()}).strict()});var a_=S(()=>{"use strict"});var c_,Ik,Bm,s_,Ck,l_,Lk,cj,d_=S(()=>{"use strict";ne();Gl();um();Mt();Um();Fm();Gm();Gl();a_();c_=i.discriminatedUnion("kind",[i.object({kind:i.literal(Mn.TESTID),value:i.string().min(1),source:i.object({file:i.string(),line:i.number(),column:i.number().optional()}).optional()}),i.object({kind:i.literal(Mn.ROLE),role:i.string().min(1),name:i.string().optional(),nth:i.number().int().min(0).optional(),of:i.number().int().min(2).optional()}),i.object({kind:i.literal(Mn.SIGNAL),name:i.string().min(1)}),i.object({kind:i.literal(Mn.COMPONENT),component:i.string().optional(),source:i.object({file:i.string(),line:i.number(),column:i.number().optional()}).optional(),role:i.string().optional(),name:i.string().optional()})]),Ik=Kl.superRefine((t,e)=>{let n=mp(t);n!==void 0&&e.addIssue({code:i.ZodIssueCode.custom,message:r_(n)})}),Bm=i.union([Ik,o_.transform(t=>i_(t))]),s_=i.array(Bm).transform(t=>t.filter(e=>e!==void 0)),Ck=i.object({tool:i.string(),anchor:c_,source:i.object({file:i.string().min(1),line:i.number().int().positive().optional()}).optional(),id:i.string().min(1).optional(),effect:i.nativeEnum(_S).optional(),healed:i.object({from:i.string(),at:i.number()}).optional(),action:i.nativeEnum(k).optional(),args:i.record(i.unknown()).optional(),expect:Bm.optional(),degraded:i.boolean().optional(),timeoutMs:i.number().int().nonnegative().optional(),invoke:i.string().min(1).optional(),page:i.string().optional(),endPage:i.string().optional()}),l_=Ck.extend({steps:i.lazy(()=>i.array(l_).optional())}),Lk=i.object({version:i.number().int().refine(t=>TS.has(t)),name:i.string(),intent:i.string().optional(),intentId:i.string().optional(),projectId:i.string().optional(),startPath:i.string().optional(),template:i.string().min(1).optional(),fixture:i.string().optional(),requires:s_.optional(),ensures:s_.optional(),author:i.object({agent:i.string().min(1).optional(),person:i.string().min(1).optional()}).optional(),createdAt:i.number(),steps:i.array(l_),signalTimeoutMs:i.number().int().positive().optional(),success:Bm.optional(),dynamic:i.array(c_).optional(),labels:i.array(i.string().min(1)).optional(),needs:i.array(i.string().min(1)).optional(),status:i.enum([np.ACTIVE,np.QUARANTINED,np.DRAFT]).optional(),learned:i.array(i.object({kind:i.string().min(1),step:i.number().int().min(-1),state:i.enum(["open","guarded"]),cleanRuns:i.number().int().nonnegative().optional()})).optional(),knownBugs:i.array(i.object({id:i.string().min(1),summary:i.string().min(1),assertions:i.array(i.string())})).optional(),quarantine:i.object({reason:i.string().min(1),since:i.string().min(1),owner:i.string().min(1),until:i.string().optional()}).optional()}),cj=i.object({name:i.string(),flow:Lk})});var u_=S(()=>{"use strict"});var p_=S(()=>{"use strict"});var f_=S(()=>{"use strict"});var Ds,gp,h_,m_=S(()=>{"use strict";Ds="data-reticle-source",gp="__RETICLE_ROOT__",h_="__RETICLE_SDK_VERSION__"});var ca,g_,E_,b_=S(()=>{"use strict";ca="data-testid",g_=["data-test-subj","data-cy","data-test","data-qa","data-e2e"],E_=/^[a-zA-Z_][\w-]*$/});var T_,S_=S(()=>{"use strict";Mt();T_=new Set([x.DOM_TEXT,x.ANIM_START,x.ANIM_END,x.RENDER_COMMIT,x.PAGE_HEALTH,x.SCROLL_POSITION])});function Vm(t){let e=t.text;if(typeof e=="string"&&0<e.length)return e;let n=t.key;return typeof n=="string"&&0<n.length?n:kk}function jm(t){let e=t.keys;if(!Array.isArray(e))return[];let n=[];for(let r of e)typeof r=="string"&&0<r.length&&n.push(r);return n}function Mk(t){let e=t.modifiers;return Array.isArray(e)&&0<e.length}function x_(t){if(Mk(t))return!0;let e=jm(t);if(1<e.length)return!0;if(e.length===1){let n=e[0];return n!==void 0&&__.has(n.toLowerCase())}return __.has(Vm(t).toLowerCase())}var kk,Dk,__,A_=S(()=>{"use strict";kk="Enter",Dk=["Escape","Tab"],__=new Set(Dk.map(t=>t.toLowerCase()))});function Ms(t){return typeof t!="number"||!Number.isFinite(t)||t<=0?0:Math.min(t,3e4)}var y_=S(()=>{"use strict"});var it,_j,v_=S(()=>{"use strict";Qo();it={CODE:"code",ENVIRONMENT:"environment",HARNESS:"harness",COULD_NOT_SEE:"could-not-see",NONE:"none"},_j={[Ke.ASSERTION_FAILED]:it.CODE,[Ke.CONTRADICTED]:it.CODE,[Ke.OUTCOME_PENDING]:it.ENVIRONMENT,[Ke.UNSETTLED]:it.ENVIRONMENT,[Ke.VERSION_SKEW]:it.HARNESS,[Ke.WINDOW_CLOSED_EARLY]:it.HARNESS,[Ke.NOTHING_DECLARED]:it.HARNESS,[Ke.VACUOUS_GRADE]:it.HARNESS,[Ke.ALREADY_TRUE]:it.HARNESS,[Ke.HIDDEN_MATCH]:it.HARNESS,[Ke.CAPABILITY_ABSENT]:it.COULD_NOT_SEE,[Ke.OBSERVATION_LOST]:it.COULD_NOT_SEE,[Ke.UNCLEAN_CAPTURE]:it.COULD_NOT_SEE,[Ke.EVIDENCE_INCOMPLETE]:it.COULD_NOT_SEE,[Ke.ABSENCE_BLIND_SPOT]:it.COULD_NOT_SEE,[Ke.OUTCOME_UNREAD]:it.COULD_NOT_SEE,[Ke.INCONCLUSIVE]:it.COULD_NOT_SEE,[Ke.PROVED]:it.NONE}});var la,$k,Pk,Hk,yj,R_=S(()=>{"use strict";ne();la={CONNECTING:"connecting",WAITING_FOR_APP:"waiting_for_app",FLOWS_FOUND:"flows_found",FLOW_STARTED:"flow_started",FLOW_FINISHED:"flow_finished",GRADING:"grading",PUSHED:"pushed"},$k=120,Pk=200,Hk=i.object({phase:i.enum([la.CONNECTING,la.WAITING_FOR_APP,la.FLOWS_FOUND,la.FLOW_STARTED,la.FLOW_FINISHED,la.GRADING,la.PUSHED]),index:i.number().int().nonnegative().optional(),total:i.number().int().nonnegative().optional(),name:i.string().max($k).optional(),ok:i.boolean().optional(),at:i.number().int().nonnegative()}),yj=i.object({runId:i.string().min(1).max(200),events:i.array(Hk).max(Pk)})});function N_(t){return t===Me.ACTIVE||t===Me.PAUSED||t===Me.ENDED}var Me,Wl,Ht,da,w_,O_,ua,Km=S(()=>{"use strict";Me={ACTIVE:"active",PAUSED:"paused",ENDED:"ended"};Wl="auto",Ht={PAUSE:"pause",RESUME:"resume",END:"end",MESSAGE:"message",REPLAY:"replay",SYNC:"sync",SIGNIN:"signin",HARNESS:"harness",HARNESS_RUN:"harness-run",HARNESS_STOP:"harness-stop",HARNESS_LINK:"harness-link"},da={TESTID:"testid",COMPONENT:"component",ROLE:"role",POSITION:"position"},w_={HEARTBEAT_MS:5e3,STALE_THRESHOLD_MS:12e3,LEDGER_NOTICE_FRACTION:.25},O_={IDLE_END_MS:3e5,IDLE_END_MIN_MS:5e3,REAP_INTERVAL_MS:5e3,BRIDGE_LOST_MS:15e3,DAEMON_IDLE_SHUTDOWN_MS:3e5,DAEMON_IDLE_CHECK_MS:3e4},ua={VISIBILITY:"visibilitychange",FOCUS:"focus",BLUR:"blur",HEARTBEAT:"heartbeat",INITIAL:"initial"}});var en,vt,Jo,zl,En,Ep,$s,tn,Yl=S(()=>{"use strict";en={BUBBLE:"bubble",COLLAPSED:"collapsed",EXPANDED:"expanded"},vt={CHAT:"chat",FLOWS:"flows",NOTES:"notes",HARNESS:"harness",SETTINGS:"settings",REPORT:"report",ACCOUNT:"account",NONE:"none"},Jo={RAIL:"rail",HARNESS:"harness",HEADER:"header"},zl={ON:"on",OFF:"off"},En={SHOWN:"shown",HIDDEN:"hidden",REMOVED:"removed"},Ep={TOP_LEFT:"top-left",TOP_RIGHT:"top-right",BOTTOM_LEFT:"bottom-left",BOTTOM_RIGHT:"bottom-right"},$s={PLAYING:"playing",PASSED:"passed",FAILED:"failed"},tn={PENDING:"pending",RUNNING:"running",PASSED:"passed",FAILED:"failed",BLOCKED:"blocked",NOT_TAKEN:"not-taken",UNDECIDED:"undecided"}});var Xl,wj,I_=S(()=>{"use strict";Xl="[data-reticle-overlay],[data-reticle-cursor],[data-reticle-hud],[data-reticle-glow],[data-reticle-mark],[data-reticle-blocker],[data-reticle-tour]",wj=`${Xl}{display:none !important}`});var Wm,C_,Uk,Fk,Gk,Lj,kj,pa,bp,zm=S(()=>{"use strict";ne();Yl();Wm={TAB:"tab",HEADLESS:"headless",HEADED:"headed"},C_={LOCAL:"local",PLATFORM:"platform"},Uk=2e3,Fk=128,Gk=500,Lj={target:i.enum([Wm.TAB,Wm.HEADLESS,Wm.HEADED]),mode:i.enum([C_.LOCAL,C_.PLATFORM]),url:i.string().url().refine(t=>/^https?:/i.test(t)),hud:i.enum([En.SHOWN,En.HIDDEN,En.REMOVED]),persona:i.string().min(1).max(Uk),maxSteps:i.number().int().min(1).max(Gk),record:i.boolean(),plan:i.string().min(1).max(Fk),confirmDangerous:i.boolean()},kj=i.object({seq:i.number().int().nonnegative(),tool:i.string().min(1).max(100),args:i.record(i.unknown()).default({})}),pa={SOURCE:"source",TESTID:"testid"},bp="file:line source mapping"});var Tp,k_,D_,L_,Mj,M_=S(()=>{"use strict";Tp="https://calendar.app.google/h9NRDbBBQetyTzWM6",k_="hey@reticle.sh",D_="mailto:hey@reticle.sh?subject=Reticle%20feedback",L_="npx @reticlehq/server identify --context company --email you@company.com",Mj={HUMAN:`Stuck, or want Reticle to work differently? Talk to the founder: ${Tp} \xB7 or leave your email: ${L_}`,AGENT:`If the person you are working with is stuck or Reticle got in their way, offer them a call with the founder (${Tp}) or the email command (${L_}). Offer it; never book a call or submit an email for them.`}});function $_(t){let e="";for(let n=0;n<8;n++){let r=Math.floor(t()*Ym.length);e+=Ym[Math.min(Math.max(r,0),Ym.length-1)]}return e}var Ym,P_=S(()=>{"use strict";Ym="0123456789abcdefghijklmnopqrstuvwxyz"});var H_=S(()=>{"use strict"});var nr,Xm,ql,Bk,Uj,U_,Zl,F_,qm,Sp,_p=S(()=>{"use strict";nr={FETCH:"fetch",XHR:"xhr",BEACON:"beacon",IPC:"ipc",DOCUMENT:"document",NAVIGATION:"navigation"},Xm="ipc://",ql={OK:200,ERROR:500},Bk={NEXT_DEV_OVERLAY:"/__nextjs",NEXT_HMR:"/_next/webpack-hmr",NEXT_HMR_CHUNKS:"/_next/static/webpack/",WEBPACK_HOT_UPDATE:".hot-update.",VITE_CLIENT:"/@vite/",VITE_REACT_REFRESH:"/@react-refresh",VITE_PING:"/__vite_ping"},Uj=Object.values(Bk),U_="urlRaw",Zl="requestShape",F_="none",qm="Next-Action",Sp="nextAction"});function Zm(t){return Vk.test(t)}function G_(t){let e=new Set;for(let n of t!=null?t:[]){let r=n.trim().toLowerCase();r.length>0&&e.add(r)}return e}function B_(t,e){var s,l;let n=G_((s=t==null?void 0:t.keys)==null?void 0:s.filter(d=>typeof d=="string")),r=((l=t==null?void 0:t.keys)!=null?l:[]).filter(d=>d instanceof RegExp),o=G_(t==null?void 0:t.allow),a=[...o].filter(d=>Zm(d)&&!n.has(d));return a.length>0&&e!==void 0&&e(`[reticle] redact.allow is exempting ${a.join(", ")} from redaction. The default rule treats ${a.length===1?"that key":"those keys"} as a credential, so ${a.length===1?"its value":"their values"} will now reach the agent transcript and the on-disk journal in cleartext.`),{isSensitiveKey:d=>{let u=d.toLowerCase();if(n.has(u))return!0;for(let p of r)if(p.lastIndex=0,p.test(d))return!0;return o.has(u)?!1:Zm(d)}}}function V_(t){Qm=t}function tt(t){return Qm===void 0?Zm(t):Qm.isSensitiveKey(t)}function Wk(t){return new TextEncoder().encode(t).byteLength}function zk(t){if(!/^data:/i.test(t))return;let e=t.indexOf(","),n=e===-1?t.slice(5):t.slice(5,e),[r="",...o]=n.split(";"),a=/^[\w.+-]+\/[\w.+-]+$/.test(r)?r:"text/plain",s=o.some(d=>d.toLowerCase()==="base64")?";base64":"",l=e===-1?"":t.slice(e+1);return`data:${a}${s},<\u2026${String(Wk(l))} bytes\u2026>`}function xp(t,e=tt){var y;let n=zk(t);if(n!==void 0)return n;let r=t.indexOf("#"),o=r===-1?"":t.slice(r),a=r===-1?t:t.slice(0,r),s=a.indexOf("?"),l=s===-1?a:a.slice(0,s),d=s===-1?"":a.slice(s+1),u=!1,p=l,f=/^([a-z][a-z0-9+.-]*:\/\/)[^/]*@/i.exec(l);f!==null&&(p=`${(y=f[1])!=null?y:""}${_e}@${l.slice(f[0].length)}`,u=!0);let m=d;if(d!==""){let A=new URLSearchParams(d),v=!1;for(let O of[...A.keys()])e(O)&&(A.set(O,_e),v=!0);v&&(m=A.toString(),u=!0)}let g=p.split("/");for(let A=0;A+1<g.length;A++){let v=g[A],O=g[A+1];v!==void 0&&O!==void 0&&O.length>=Kk&&jk.test(v)&&(g[A+1]=_e,u=!0)}let T=o;if(o.length>1&&(T=o.replace(/(^|[#&?/])([A-Za-z0-9_.-]+)=([^&\s]+)/g,(A,v,O)=>e(O)?`${v}${O}=${_e}`:A),T!==o&&(u=!0)),!u)return t;let _=s===-1?"":`?${m}`;return`${g.join("/")}${_}${T}`}function wr(t,e=tt){let n=xp(t,e);return n===t?{url:n}:{url:n,[U_]:t}}function j_(t){var r;let e=new Set,n=[];for(let o of(r=t==null?void 0:t.keys)!=null?r:[]){if(typeof o!="string")continue;let a=o.trim();if(a.length===0||a.length>eg)continue;let s=a.toLowerCase();if(!e.has(s)&&(e.add(s),n.push(a),n.length>=Jm))break}return n}function fa(t){return t.replace(Yk,_e)}var Vk,Qm,jk,Kk,Jm,eg,Yk,tg=S(()=>{"use strict";Mt();_p();Vk=/password|passwd|passcode|pass[-_]?phrase|(?:otp|totp|mfa|recovery|backup)[-_]?codes?|(?:^|[-_])(?:otp|totp)(?=$|[-_])|secret|(?:(?:access|refresh|auth|bearer|api|id|session|csrf|client)[-_]?tokens?|(?:^|[-_])tokens?(?=$|[-_]))|session[-_]?id|(?:^|[-_])(?:sid|pwd|jwt)(?=$|[-_])|authorization|(?:^|[-_])(?:set[-_])?cookie(?=$|[-_])|api[-_]?key|access[-_]?key|private[-_]?key|client[-_]?secret|credit[-_]?card|card[-_]?(?:number|num|no|pan)(?=$|[-_])|(?:^|[-_])(?:card|pan)(?=$|[-_])|cvv|cvc|ssn|(?:^|[-_])(?:signature|sig)$|(?:^|[-_])credential$|x-(?:amz|goog)-(?:signature|credential|security-token)$/i;jk=/^(reset|verify|verification|confirm|activate|invite|magic|magiclink|token|key|oauth|unsubscribe|password)$/i,Kk=12;Jm=64,eg=128;Yk=/eyJ[A-Za-z0-9_-]{4,}\.[A-Za-z0-9_-]{4,}\.[A-Za-z0-9_-]{4,}|(?:sk|rk)_(?:live|test)_[A-Za-z0-9]{10,}|sk-(?:ant|proj|svcacct|admin)-[A-Za-z0-9_-]{20,}|(?:AKIA|ASIA)[0-9A-Z]{16}|gh[pousr]_[A-Za-z0-9]{20,}|github_pat_[A-Za-z0-9_]{22,}|AIza[0-9A-Za-z_-]{35}|xox[baprs]-[A-Za-z0-9-]{10,}|ya29\.[A-Za-z0-9._-]{20,}/g});var Or,Ap=S(()=>{"use strict";Or={WEB:"web",WEBVIEW:"webview",NATIVE:"native",SERVICE:"service"}});function ng(){return[R.UI,R.NET,R.STATE,R.SIGNAL,R.LOG,R.ROUTE,R.TIME]}var zj,Yj,yp=S(()=>{"use strict";ks();co();zj={[C.ELEMENT]:[R.UI],[C.TEXT]:[R.UI],[C.SIGNAL]:[R.SIGNAL],[C.NET]:[R.NET],[C.STATE]:[R.STATE],[C.ROUTE]:[R.ROUTE],[C.CONSOLE]:[R.LOG],[C.ANIMATION]:[R.UI,R.TIME],[C.SETTLED]:[R.TIME,R.NET],[C.COMPARE]:[R.UI,R.NET,R.STATE,R.SIGNAL],[C.ALL_OF]:ng(),[C.ANY_OF]:ng(),[C.NOT]:ng()};Yj=Object.fromEntries(Object.entries(hm).map(([t,e])=>[t,e.independence]))});function rg(t){let e=t.toLowerCase().replace(/^\[|\]$/g,"");if(qk.includes(e))return!0;let n=e.split(".");return Qk===n.length&&Zk===n[0]&&n.every(r=>{if(!/^\d{1,3}$/.test(r))return!1;let o=Number(r);return o>=0&&o<=Jk})}function W_(t,e){return rg(e)||eD.includes(t.toLowerCase())?!0:e.toLowerCase()===tD}function z_(t,e){return e!==void 0&&K_.has(e.trim().toLowerCase())?!1:Xk.test(t.replace(/[_-]+/g," "))}function Y_(t,e){var r;if(e!==void 0&&K_.has(e.trim().toLowerCase()))return;let n=t.replace(/[_-]+/g," ");return(r=nD.find(([,o])=>o.test(n)))==null?void 0:r[0]}var Xk,K_,qk,Zk,Qk,Jk,eD,tD,nn,nD,X_,og=S(()=>{"use strict";Xk=/\b(delete|remove|destroy|erase|drop|terminate|revoke|reset|close account|cancel subscription|purchase|buy|pay|payment|place order|confirm order|send money|send funds|transfer|withdraw|refund)\b/i,K_=new Set(["option","radio"]),qk=["localhost","::1","0:0:0:0:0:0:0:1"],Zk="127",Qk=4,Jk=255;eD=["file:","app:","tauri:"],tD="tauri.localhost";nn={INVITE:"invite",SEND:"send",SHARE:"share",DELETE:"delete",PAY:"pay",PUBLISH:"publish",REVOKE:"revoke",TRANSFER:"transfer",SIGN_OUT:"sign out",CHANGE_ROLE:"change role",CREATE_KEY:"create key",CHANGE_STATE:"change state"},nD=[[nn.INVITE,/\binvit(?:e|es|ed|ing|ation|ations)\b|\/invit/i],[nn.TRANSFER,/\b(?:transfer|send money|send funds|withdraw)\b/i],[nn.SEND,/\b(?:send|sends|sending|resend|email (?:it|them|the))\b/i],[nn.SHARE,/\b(?:share|shares|sharing)\b/i],[nn.DELETE,/\b(?:delete|deletes|deleting|remove|removes|removing|destroy|erase|drop)\b/i],[nn.PAY,/\b(?:pay|pays|paying|payment|purchase|buy|checkout|check out|subscribe|upgrade|place order|confirm order|refund|add (?:a )?card|start (?:the |your |a )?(?:\d+-day |free )?trial)\b|\/(?:billing|checkout)\b/i],[nn.PUBLISH,/\b(?:publish|publishes|deploy|deploys|go live)\b/i],[nn.REVOKE,/\b(?:revoke|revokes|deactivate|suspend)\b/i],[nn.SIGN_OUT,/\b(?:sign ?out|log ?out|sign off)\b/i],[nn.CHANGE_ROLE,/\b(?:change (?:the |their |his |her )?role|make (?:an? )?(?:admin|owner)|promote|demote|set role)\b/i],[nn.CREATE_KEY,/\b(?:create|generate|new|mint)(?: an?)?(?: api)? key\b|\/keys\b/i],[nn.CHANGE_STATE,/\b(?:reassign|reassigns|reopen|reopens|re-open|archive|archives|unarchive|approve|approves|reject|rejects|mark as (?:fixed|resolved|done|closed))\b/i]];X_=t=>`would need to ${t} \u2014 not done (outward action): the journey does not ask for it`});var vp,q_,rD,Z_,Q_,J_,oD,iD,Ql,ag,aD,sD,a6,sg=S(()=>{"use strict";ne();Yl();Mt();Km();tg();Ap();yp();og();vp=i.string().min(1).max(G.MAX_SESSION_ID_LENGTH),q_=i.string().max(G.MAX_REF_LENGTH),rD=i.string().min(1).max(8),Z_=i.object({kind:i.nativeEnum(Ht),text:i.string().optional()}),Q_=i.object({control:i.string().max(48).regex(/^[a-z][a-zA-Z-]*(\.[a-zA-Z-]+)?$/).optional(),toggle:i.nativeEnum(zl).optional(),view:i.nativeEnum(en).optional(),panel:i.nativeEnum(vt).optional(),slide:i.string().max(56).optional(),prompt:i.nativeEnum(Jo).optional()}),J_=i.object({note:i.string().min(1).max(G.MAX_MARK_NOTE_LENGTH),anchor:i.string().max(G.MAX_REF_LENGTH),strategy:i.nativeEnum(da),label:i.string().max(G.MAX_MARK_LABEL_LENGTH).optional(),source:i.object({file:i.string().max(G.MAX_URL_LENGTH),line:i.number().int().min(0)}).optional(),route:i.string().max(G.MAX_URL_LENGTH).optional()}),oD=i.object({t:i.number(),type:i.nativeEnum(x),sessionId:vp,ref:q_.optional(),seq:i.number().int().min(0).optional(),actionId:q_.optional(),attribution:i.nativeEnum(wS).optional(),documentId:rD.optional(),editEpoch:i.number().int().min(0).optional(),data:i.record(i.unknown()).default({})}),iD=i.object({kind:i.literal(Dt.HELLO),protocolVersion:i.number().int().min(yS).max(rp),sessionId:vp,url:i.string().max(G.MAX_URL_LENGTH),title:i.string().max(G.MAX_TITLE_LENGTH),projectId:vp.optional(),adapters:i.array(i.string().max(G.MAX_ADAPTER_NAME_LENGTH)).max(G.MAX_ADAPTERS),token:i.string().max(G.MAX_TOKEN_LENGTH).optional(),platform:i.nativeEnum(Or).optional(),channels:i.array(i.nativeEnum(R)).max(G.MAX_ADAPTERS).optional(),commands:i.array(i.string().max(G.MAX_TOKEN_LENGTH)).max(G.MAX_ADAPTERS).optional(),contractParts:i.object({commands:i.array(i.string()).max(G.MAX_CONTRACT_NAMES),events:i.array(i.string()).max(G.MAX_CONTRACT_NAMES),actions:i.array(i.string()).max(G.MAX_CONTRACT_NAMES)}).optional(),hasCapabilities:i.boolean().optional(),captureBodies:i.boolean().optional(),sourceMapping:i.boolean().optional(),sdkVersion:i.string().max(G.MAX_ADAPTER_NAME_LENGTH).optional(),contract:i.string().max(G.MAX_ADAPTER_NAME_LENGTH).optional(),redactKeys:i.array(i.string().min(1).max(eg)).max(Jm).optional()}),Ql={HARNESS:"harness"},ag=i.object({kind:i.literal(Dt.COMMAND),id:i.string().min(1).max(G.MAX_COMMAND_ID_LENGTH),sessionId:vp.optional(),name:i.string().min(1).max(G.MAX_COMMAND_NAME_LENGTH),args:i.record(i.unknown()).default({}),by:i.nativeEnum(Ql).optional(),outward:i.object({allowed:i.array(i.nativeEnum(nn)).max(16)}).optional()}),aD=i.object({kind:i.literal(Dt.COMMAND_RESULT),id:i.string().min(1).max(G.MAX_COMMAND_ID_LENGTH),ok:i.boolean(),result:i.unknown().optional(),error:i.string().max(G.MAX_ERROR_LENGTH).optional()}),sD=i.object({kind:i.literal(Dt.EVENT),event:oD}),a6=i.discriminatedUnion("kind",[iD,ag,aD,sD])});var cD,lD,ei,dD,$e,uD,pD,fD,hD,mD,gD,cg,ex,ED,tx,Ps=S(()=>{"use strict";ne();cD={AGENT:"agent",HUMAN:"human"},lD={BUG:"bug",GAP:"gap",AMBIGUITY:"ambiguity",FEATURE_REQUEST:"feature_request",IMPROVEMENT:"improvement",EXPERIENCE:"experience"},ei={WEB:"web",ELECTRON:"electron",TAURI:"tauri"},dD={BLINK:"blink",GECKO:"gecko",WEBKIT:"webkit"},$e={CHROME:"chrome",EDGE:"edge",ARC:"arc",DIA:"dia",BRAVE:"brave",OPERA:"opera",FIREFOX:"firefox",SAFARI:"safari",OTHER:"other"},uD={CDP:"cdp",SDK:"sdk"},pD={USER:"user",PROJECT:"project"},fD=4e3,hD=8e3,mD=1,gD=5,cg=1e3,ex=i.object({source:i.nativeEnum(cD),kind:i.nativeEnum(lD),text:i.string().min(1).max(fD),trace:i.string().max(hD).optional(),rating:i.number().int().min(mD).max(gD).optional(),need:i.string().max(cg).optional(),impact:i.string().max(cg).optional(),currentApproach:i.string().max(cg).optional(),model:i.string().min(1).max(64).optional(),clientVersion:i.string().min(1).max(32).optional(),stack:i.string().min(1).max(64).optional(),stackMajor:i.number().int().nonnegative().optional(),runtime:i.nativeEnum(ei).optional(),engine:i.nativeEnum(dD).optional(),driver:i.nativeEnum(uD).optional(),client:i.string().min(1).max(64).optional(),mcpScope:i.nativeEnum(pD).optional()}),ED={COMPANY:"company",SIDE_PROJECT:"side_project",OPEN_SOURCE:"open_source",LEARNING:"learning"},tx=i.object({context:i.nativeEnum(ED),company:i.string().min(1).max(128).optional(),email:i.string().min(3).max(254).optional()})});var Ir,Cr,Np,ed,lg,ha,bD,TD,g6,Rp,SD,_D,xD,Jl,E6,nx=S(()=>{"use strict";ne();Mt();Qo();Ps();sg();_p();Ir={SSE:"sse",WS:"ws",FETCH:"fetch"},Cr={OPEN:"open",IN:"in",OUT:"out",CLOSE:"close"},Np={UP:"up",DOWN:"down"},ed={PUSH:"push",REPLACE:"replace",POP:"pop"},lg="how",ha={LOCAL:"local",SESSION:"session",COOKIE:"cookies"},bD=i.object({name:i.string().describe("Cookie name."),value:i.string().describe("Cookie value."),domain:i.string().optional().describe("Cookie domain. Defaults to the navigation URL domain."),path:i.string().optional().describe('Cookie path. Defaults to "/".'),url:i.string().optional().describe("Cookie URL. Defaults to the navigation URL."),httpOnly:i.boolean().optional().describe("Whether the cookie is httpOnly."),secure:i.boolean().optional().describe("Whether the cookie is secure."),sameSite:i.enum(["Strict","Lax","None"]).optional().describe("SameSite policy."),expires:i.number().optional().describe("Unix timestamp in seconds for cookie expiration.")}),TD=i.union([i.record(i.string()),i.array(bD)]),g6=i.object({local:i.record(i.string()).optional().describe("Key-value pairs to seed into window.localStorage before first navigation."),session:i.record(i.string()).optional().describe("Key-value pairs to seed into window.sessionStorage before first navigation."),cookies:TD.optional().describe("Cookies to seed before first navigation: a name-value record scoped to the lease URL or an array of cookie objects.")}).strict(),Rp=i.object({role:i.string().optional(),name:i.string().optional()}),SD=i.object({mimeType:i.string(),bytes:i.number(),filename:i.string().optional(),lines:i.number().optional(),preview:i.string().optional(),previewTruncated:i.boolean().optional()}).passthrough(),_D=i.object({transport:i.nativeEnum(Ir),direction:i.nativeEnum(Cr),url:i.string(),urlRaw:i.string().optional()}).passthrough(),xD=i.object({id:i.string(),method:i.string(),url:i.string(),status:i.number(),ok:i.boolean(),durationMs:i.number(),initiator:i.string(),urlRaw:i.string().optional(),[Sp]:i.string().optional(),[Zl]:i.string().optional()}).passthrough(),Jl=i.object({message:i.string()}).passthrough(),E6={[x.DOM_ADDED]:Rp,[x.DOM_REMOVED]:Rp,[x.DOM_ATTR]:i.object({attr:i.string(),value:i.string().optional(),old:i.string().optional()}).passthrough(),[x.DOM_TEXT]:i.object({text:i.string(),old:i.string().optional()}),[x.NET_REQUEST]:xD,[x.NET_PENDING]:i.object({id:i.string(),method:i.string(),url:i.string(),initiator:i.string(),urlRaw:i.string().optional()}),[x.NET_STREAM]:_D,[x.DOWNLOAD]:SD,[x.PERF]:i.object({metric:i.nativeEnum(Os),value:i.number(),at:i.number(),shifted:i.object({ref:i.string(),selector:i.string()}).optional()}),[x.ROUTE_CHANGE]:i.object({from:i.string(),to:i.string(),pathname:i.string(),search:i.string(),hash:i.string(),[lg]:i.nativeEnum(ed)}),[x.CONSOLE_LOG]:Jl,[x.CONSOLE_WARN]:Jl,[x.CONSOLE_ERROR]:Jl,[x.CONSOLE_INFO]:Jl,[x.CONSOLE_DEBUG]:Jl,[x.ERROR_UNCAUGHT]:i.object({message:i.string(),source:i.string().optional(),line:i.number().optional(),kind:i.string().optional()}).passthrough(),[x.VISIBLE_SHOWN]:Rp,[x.ANIM_START]:i.object({name:i.string()}),[x.ANIM_END]:i.object({name:i.string()}),[x.SCROLL_POSITION]:i.object({x:i.number(),y:i.number(),percent:i.number(),direction:i.nativeEnum(Np)}),[x.REVEAL_SHOWN]:Rp.passthrough(),[x.SIGNAL]:i.object({name:i.string(),data:i.unknown().optional()}),[x.STATE_CHANGE]:i.object({name:i.string(),value:i.unknown()}).passthrough(),[x.STORAGE_CHANGE]:i.object({area:i.nativeEnum(ha),key:i.string(),old:i.string().optional(),new:i.string().optional()}),[x.PAGE_HEALTH]:i.object({hidden:i.boolean(),focused:i.boolean(),reason:i.string().optional(),brand:i.nativeEnum($e).optional(),runtime:i.string().optional(),engine:i.string().optional(),windowLabel:i.string().optional(),documentStatus:i.number().int().optional()}).passthrough(),[x.CONTEXT_OPENED]:i.object({href:i.string().optional()}).passthrough(),[x.DIALOG_OPENED]:i.object({kind:i.enum(["alert","confirm","prompt"]),message:i.string().optional(),answered:i.union([i.boolean(),i.null()]).optional()}).passthrough(),[x.RENDER_COMMIT]:i.object({commits:i.number()}),[x.FOCUS_CHANGE]:i.object({to:i.string().optional(),from:i.string().optional(),toBody:i.boolean()}),[x.FIELD_CHANGE]:i.object({field:i.string(),kind:i.enum(["input","change"]),length:i.number().int().nonnegative(),value:i.string().optional(),redacted:i.literal(!0).optional()}),[x.FLOW_RECORDED]:i.object({name:i.string(),flow:i.unknown()}),[x.TRANSPORT_OVERFLOW]:i.object({dropped:i.number()}),[x.TRUNCATED]:i.object({channel:i.string(),dropped:i.number()}),[x.BLIND_SPOT]:i.object({kind:i.nativeEnum(Pt),count:i.number()}),[x.SDK_FAILED]:i.object({site:i.string().max(64),message:i.string().max(500),errorType:i.string().max(64).optional()}),[x.NET_DETAIL]:i.object({url:i.string(),method:i.string().optional(),status:i.number(),headers:i.record(i.string()),resourceType:i.string().optional()}).passthrough(),[x.HUMAN_CONTROL]:Z_,[x.HUMAN_MARK]:J_,[x.HUD_USED]:Q_}});var S6,rx=S(()=>{"use strict";Mt();S6=new Set([x.NET_REQUEST,x.NET_PENDING,x.NET_STREAM,x.NET_DETAIL,x.CONSOLE_ERROR,x.CONSOLE_WARN,x.ERROR_UNCAUGHT,x.ROUTE_CHANGE,x.SIGNAL,x.STORAGE_CHANGE,x.FLOW_RECORDED,x.TRANSPORT_OVERFLOW,x.TRUNCATED,x.BLIND_SPOT])});var ox=S(()=>{"use strict"});var ix,ax=S(()=>{"use strict";ix=t=>t});var me,R6,N6,w6,sx=S(()=>{"use strict";yp();me={UI_ADVANCED_REQUEST_FAILED:"ui-advanced-request-failed",SIGNAL_CONTRADICTED:"signal-contradicted",RESPONSE_IGNORED:"response-ignored",SIGNAL_WITHOUT_CONSEQUENCE:"signal-without-consequence",STATE_VS_RENDER:"state-vs-render",CONSEQUENCE_ELSEWHERE:"consequence-elsewhere",DUPLICATE_REQUEST:"duplicate-request",DUPLICATE_REQUEST_UNRELATED:"duplicate-request-unrelated",SCREEN_REQUEST_MISMATCH:"screen-request-mismatch",STALE_RESPONSE_APPLIED:"stale-response-applied",PARTIAL_FAILURE_IN_OK_RESPONSE:"partial-failure-in-ok-response",UNIT_MISMATCH:"unit-mismatch",PAGINATION_NOT_FETCHED:"pagination-not-fetched",WRITE_FIELD_IGNORED:"write-field-ignored",REQUEST_NEVER_SETTLED:"request-never-settled",FAILURE_MISATTRIBUTED:"failure-misattributed",ACTION_HAD_NO_EFFECT:"action-had-no-effect",ROUTE_RENDERED_NOTHING:"route-rendered-nothing",ROUTE_RENDERED_NOTHING_CRASHED:"route-rendered-nothing-crashed",EVIDENCE_SUPERSEDED:"evidence-superseded",EVIDENCE_PREDATES_EDIT:"evidence-predates-edit"},R6=new Set([me.REQUEST_NEVER_SETTLED,me.RESPONSE_IGNORED,me.SIGNAL_WITHOUT_CONSEQUENCE,me.STATE_VS_RENDER,me.CONSEQUENCE_ELSEWHERE,me.ROUTE_RENDERED_NOTHING,me.ACTION_HAD_NO_EFFECT,me.DUPLICATE_REQUEST,me.EVIDENCE_SUPERSEDED,me.EVIDENCE_PREDATES_EDIT]),N6=new Set([me.DUPLICATE_REQUEST_UNRELATED,me.SCREEN_REQUEST_MISMATCH]),w6={[me.UI_ADVANCED_REQUEST_FAILED]:[R.UI,R.NET],[me.SIGNAL_CONTRADICTED]:[R.SIGNAL,R.NET],[me.RESPONSE_IGNORED]:[R.NET,R.UI],[me.SIGNAL_WITHOUT_CONSEQUENCE]:[R.SIGNAL,R.NET],[me.STATE_VS_RENDER]:[R.STATE,R.UI],[me.CONSEQUENCE_ELSEWHERE]:[R.NET,R.UI],[me.DUPLICATE_REQUEST]:[R.NET,R.NET],[me.DUPLICATE_REQUEST_UNRELATED]:[R.NET,R.NET],[me.SCREEN_REQUEST_MISMATCH]:[R.UI,R.NET],[me.STALE_RESPONSE_APPLIED]:[R.NET,R.UI],[me.PARTIAL_FAILURE_IN_OK_RESPONSE]:[R.NET,R.NET],[me.UNIT_MISMATCH]:[R.UI,R.NET],[me.PAGINATION_NOT_FETCHED]:[R.UI,R.NET],[me.WRITE_FIELD_IGNORED]:[R.NET,R.NET],[me.REQUEST_NEVER_SETTLED]:[R.TIME,R.NET],[me.FAILURE_MISATTRIBUTED]:[R.UI,R.NET],[me.ACTION_HAD_NO_EFFECT]:[R.NET,R.UI],[me.ROUTE_RENDERED_NOTHING]:[R.ROUTE,R.NET],[me.ROUTE_RENDERED_NOTHING_CRASHED]:[R.ROUTE,R.LOG],[me.EVIDENCE_SUPERSEDED]:[R.TIME,R.UI],[me.EVIDENCE_PREDATES_EDIT]:[R.TIME,R.UI]}});var uo,wp,C6,L6,cx=S(()=>{"use strict";Mt();uo="__reticleIpc",wp="reticle_capture",C6=ws.FULL_PAGE_UNSUPPORTED,L6=ws.NOT_COMPOSITED});var lx=S(()=>{"use strict"});function dx(t){return t===Hs.CALM||t===Hs.WAITING||t===Hs.ASK||t===Hs.WARN}var Hs,ux,M6,$6,px=S(()=>{"use strict";Hs={CALM:"calm",WAITING:"waiting",ASK:"ask",WARN:"warn"};ux="note that a lease is a SEPARATE context: the human watching this tab sees nothing of what you do there, so prefer this tab while someone is following along",M6='tab hidden and may be un-focusable from here; timers and rAF are clamped in a background tab, so an action can land on a page that never advances. Refocus it, or acquire a guaranteed scriptable context yourself with `reticle_run { tool: "reticle_lease", args: { action: "acquire", url } }` (a human can equivalently run `reticle drive <url>`) \u2014 '+ux,$6="tab is not hidden but has not reported health recently \u2014 usually a quiet page rather than a stuck one, and very often still driveable. This is also the tab a human can see, so try it first. Timing-sensitive work (animations, debounces, gestures) is what degrades: pass `refuseWhenThrottled: true` to refuse rather than act over events that may not land. Lease a separate context only if a drive here actually fails; "+ux});var fx,AD,B6,V6,j6,hx=S(()=>{"use strict";ne();Mt();Qo();co();fx=1,AD=i.object({harness:i.string().min(1).max(G.MAX_REF_LENGTH),driver:i.string().min(1).max(G.MAX_COMMAND_NAME_LENGTH),persona:i.string().max(1e3).optional()}),B6=i.object({v:i.literal(fx),actionId:i.string().min(1).max(G.MAX_REF_LENGTH),tool:i.string().min(1).max(G.MAX_COMMAND_NAME_LENGTH),args:i.record(i.unknown()).default({}),effect:i.unknown().optional(),settled:i.boolean().optional(),settledInMs:i.number().int().min(0).optional(),seqRange:i.object({from:i.number().int().min(0),to:i.number().int().min(0)}).optional(),tRange:i.object({from:i.number().int().min(0),to:i.number().int().min(0)}),at:i.number().int().min(0),drivenBy:AD.optional(),agent:i.string().min(1).max(G.MAX_REF_LENGTH).optional()}),V6=i.object({v:i.literal(fx),channel:i.literal(sp.JOURNAL),capBytes:i.number().int().min(1).optional(),bytesOnDisk:i.number().int().min(0).optional(),droppedInBatch:i.number().int().min(0).optional(),at:i.number().optional()}),j6=i.object({claim:i.string().min(1).max(G.MAX_STRING_LENGTH),verified:i.nativeEnum(lo),source:i.string().max(G.MAX_URL_LENGTH).optional(),observed:i.string().max(G.MAX_STRING_LENGTH).optional(),expected:i.string().max(G.MAX_STRING_LENGTH).optional(),kind:i.nativeEnum(C).optional(),declaredBeforeActing:i.boolean().optional(),net:i.array(i.object({method:i.string().max(G.MAX_COMMAND_NAME_LENGTH),url:i.string().max(G.MAX_URL_LENGTH),status:i.number().optional(),body:i.string().max(G.MAX_STRING_LENGTH).optional()})).max(5).optional(),grade:i.string().max(G.MAX_STRING_LENGTH).optional(),couldNotSee:i.array(i.string().max(G.MAX_STRING_LENGTH)).optional(),reason:i.string().max(G.MAX_STRING_LENGTH).optional()})});var mx=S(()=>{"use strict"});var Y6,gx=S(()=>{"use strict";ne();Y6=i.object({port:i.number(),pid:i.number(),cwd:i.string(),projectId:i.string().optional(),startedAt:i.number()})});var Z6,Ex=S(()=>{"use strict";ne();Z6=i.object({port:i.number(),pid:i.number(),root:i.string(),url:i.string(),sdkVersion:i.string().min(1).optional(),startedAt:i.number(),projectId:i.string().optional()})});var yD,eK,bx=S(()=>{"use strict";ne();yD=i.object({directory:i.string().min(1),lastSeenAt:i.number()}),eK=i.object({version:i.literal(1),projects:i.record(i.string(),yD)})});var vD,dg,RD,ND,wD,rK,Tx=S(()=>{"use strict";ne();vD=1,dg={DECLARED:"declared",BOUND:"bound",PROVED:"proved"},RD=i.object({route:i.string().optional(),flow:i.string().optional(),files:i.array(i.string()).optional()}),ND=i.object({verdictId:i.string(),grade:i.string(),at:i.number(),runId:i.string().optional()}),wD=i.object({id:i.string().min(1),statement:i.string().min(1),state:i.enum([dg.DECLARED,dg.BOUND,dg.PROVED]),declaredAt:i.number(),binding:i.unknown().optional(),surface:RD.optional(),provenBy:ND.optional(),amended:i.array(i.object({statement:i.string(),at:i.number()})).optional()}),rK=i.object({version:i.literal(vD),intents:i.record(i.string(),wD)})});var Sx=S(()=>{"use strict"});function td(t){return OD[t]}var qe,OD,ug=S(()=>{"use strict";qe={NO_SOURCE_MAPPING:"no-source-mapping",NO_STORE_REGISTERED:"no-store-registered",NO_SIGNAL_ON_MUTATION:"no-signal-on-mutation",UNDECLARED_CONTROL:"undeclared-control",MISSING_TESTID:"missing-testid",UNDECLARED_CHANGE:"undeclared-change",INTENT_UNDISCHARGED:"intent-undischarged",NO_FLOW_INTENT:"no-flow-intent",SOURCE_MAPPING_OFF:"source-mapping-off"},OD={[qe.NO_SOURCE_MAPPING]:"add the Reticle build plugin (@reticlehq/vite-plugin, @reticlehq/next, or the babel plugin) so elements carry data-reticle-source",[qe.NO_STORE_REGISTERED]:"import { registerStore } from '@reticlehq/browser' and call registerStore(name, store) with a subscribable store so its changes are observed; a bare getter is readable but does not report changes. For component-local React state, import { useReticleStore } from '@reticlehq/react/store' and call useReticleStore(name, value), assert the DOM, or read it with reticle_look { action: 'state', ref: '...' }",[qe.NO_SIGNAL_ON_MUTATION]:"fire reticle.signal(name, data) where this state is committed \u2014 commitAndSignal binds the two so they cannot drift",[qe.UNDECLARED_CONTROL]:"add this control to reticle.describe() so the capability contract matches what the app actually exposes",[qe.MISSING_TESTID]:'add data-testid="..." on this control so the flow can name it after a refactor',[qe.UNDECLARED_CHANGE]:'declare it with reticle_intent { action: "declare", intents: [{ id, statement }] } \u2014 the statement is prose, in your own words: which user does what, and what should become true',[qe.INTENT_UNDISCHARGED]:'draw a verdict whose `until` asserts the intent itself, then it discharges \u2014 or call reticle_run({ tool: "reticle_context" }) to see exactly what is still owed',[qe.SOURCE_MAPPING_OFF]:"nothing to install \u2014 this build has sourceMapping turned off, so no element carries data-reticle-source. Re-enable it in the Reticle plugin options unless this app renders through a non-DOM reconciler (react-three-fiber, react-pdf, ink), where the stamp is what would break it",[qe.NO_FLOW_INTENT]:'save it again with intent: "<which user does what, and what should become true>" \u2014 prose, in your own words \u2014 or set intentId to an intent already in the ledger'}});var po,_x,uK,pK,xx=S(()=>{"use strict";ne();ks();ug();zm();po={PAGE_CONNECTED:"page connected",DOM_ACTIONS:"DOM actions",NETWORK:"network",CONSOLE:"console",APP_STATE:"app state (store registered)",SIGNALS:"signals on mutation",SOURCE_MAPPING:bp,TEST_IDS:"stable test ids"},_x="run `npx @reticlehq/server init` in the app so its pages connect to Reticle in development",uK=[{capability:po.PAGE_CONNECTED,gaps:[],cost:"no page has connected, so nothing can be verified",fix:_x},{capability:po.DOM_ACTIONS,channel:R.UI,always:!0,gaps:[],cost:"controls cannot be driven or read",fix:_x},{capability:po.NETWORK,channel:R.NET,always:!0,gaps:[],cost:"requests cannot be asserted, so a save that never reached the server can pass",fix:"update @reticlehq/browser so the page reports its network channel"},{capability:po.CONSOLE,channel:R.LOG,always:!0,gaps:[],cost:"errors thrown in the page are invisible to a verdict",fix:"update @reticlehq/browser so the page reports its console channel"},{capability:po.APP_STATE,channel:R.STATE,gaps:[qe.NO_STORE_REGISTERED],cost:"state predicates fall back to reading the DOM",fix:td(qe.NO_STORE_REGISTERED)},{capability:po.SIGNALS,channel:R.SIGNAL,gaps:[qe.NO_SIGNAL_ON_MUTATION],cost:"the app never says it succeeded, so every verdict infers success from the DOM",fix:td(qe.NO_SIGNAL_ON_MUTATION)},{capability:po.SOURCE_MAPPING,channel:pa.SOURCE,gaps:[qe.NO_SOURCE_MAPPING,qe.SOURCE_MAPPING_OFF],perControl:[qe.NO_SOURCE_MAPPING],cost:"a broken control is named, never the line that renders it",fix:td(qe.NO_SOURCE_MAPPING)},{capability:po.TEST_IDS,channel:pa.TESTID,gaps:[qe.MISSING_TESTID],cost:"a saved flow loses its controls after a refactor",fix:td(qe.MISSING_TESTID)}],pK=i.array(i.nativeEnum(po)).max(8)});function ID(t){return Array.isArray(t)||typeof t=="string"}function CD(t){if(Array.isArray(t))return{keys:[...t.slice(0,49).map((n,r)=>String(r)),pg],total:t.length+1};if(typeof t=="string")return{keys:[pg],total:1};if(t instanceof Map){let e=[],n=0;for(let r of t.keys())n+=1,typeof r=="string"&&e.length<49&&e.push(r);return t.has(nd)?{keys:e,total:n}:{keys:[...e,nd],total:n+1}}if(t instanceof Set){let e=[];for(let n of t)typeof n=="string"&&e.length<49&&e.push(n);return{keys:[...e,nd],total:t.size+1}}if(typeof t=="object"&&t!==null){let e=Object.keys(t);return{keys:e.slice(0,50),total:e.length}}return{keys:[],total:0}}function Op(t){let{keys:e,total:n}=CD(t);return{found:!1,value:null,availableKeys:e,...n>e.length?{totalKeys:n}:{}}}function Ax(t,e){let n=e.split(".").filter(o=>o.length>0),r=t;for(let o of n){if(pg===o&&ID(r)){r=r.length;continue}if(Array.isArray(r)){let a=Number(o);if(!Number.isInteger(a)||a<0||String(a)!==o||a>=r.length)return Op(r);r=r[a];continue}if(r instanceof Map){if(r.has(o)){r=r.get(o);continue}if(nd===o){r=r.size;continue}return Op(r)}if(r instanceof Set){if(nd===o){r=r.size;continue}if(r.has(o)){r=!0;continue}return Op(r)}if(typeof r=="object"&&r!==null&&Object.hasOwn(r,o)){r=r[o];continue}return Op(r)}return{found:!0,value:r}}function Us(t,e){if(e<0)return t;if(t instanceof Date)return Number.isNaN(t.getTime())?null:t.toISOString();if(t instanceof Set)return e===0?`[Set(${String(t.size)})]`:[...t].map(n=>Us(n,e-1));if(t instanceof Map){if(e===0)return`{Map(${String(t.size)})}`;let n=Object.create(null);for(let[r,o]of t)n[String(r)]=Us(o,e-1);return n}if(Array.isArray(t))return e===0?`[Array(${String(t.length)})]`:t.map(n=>Us(n,e-1));if(typeof t=="object"&&t!==null){let n=Object.keys(t);if(e===0)return`{\u2026${String(n.length)} keys}`;let r=Object.create(null);for(let o of n)r[o]=Us(t[o],e-1);return r}return t}var pg,nd,yx=S(()=>{"use strict";pg="length";nd="size"});var gK,EK,vx=S(()=>{"use strict";Mt();gK={[fe.ENABLED]:"en",[fe.DISABLED]:"dis",[fe.CHECKED]:"chk",[fe.EXPANDED]:"exp",[fe.PRESSED]:"prs",[fe.FOCUSED]:"focus"},EK=new Set([fe.PRESENT,fe.VISIBLE,fe.HIDDEN])});var ma,SK,_K,Rx=S(()=>{"use strict";ne();ma={SHARE_PROOF:"share_proof",RUN_HISTORY:"run_history",TEAM_REVIEW:"team_review",CORPUS_HEAL:"corpus_heal",CI_GATE:"ci_gate",HOSTED_RUNNER:"hosted_runner"},SK=i.object({capability:i.nativeEnum(ma),reason:i.string(),unlockedBy:i.string(),learnMoreUrl:i.string().url()}),_K={[ma.SHARE_PROOF]:{reason:"Sharing a verification result with a teammate needs a hosted, linkable proof page.",unlockedBy:"Link a free Reticle Cloud account (reticle connect), then share the run."},[ma.RUN_HISTORY]:{reason:"Run history beyond this session lives in the hosted dashboard; local keeps only a buffer.",unlockedBy:"Link a free Reticle Cloud account to keep run history and trends."},[ma.TEAM_REVIEW]:{reason:"A shared review queue of pinned mistakes is a team feature \u2014 it needs a hosted store.",unlockedBy:"Add your team to Reticle Cloud to share a review queue."},[ma.CORPUS_HEAL]:{reason:"Corpus-ranked heal uses refactor outcomes learned across the fleet, served from the cloud.",unlockedBy:"Enable the hosted heal service on Reticle Cloud."},[ma.CI_GATE]:{reason:"Verify-before-merge is a governance gate that runs in your CI against a hosted policy.",unlockedBy:"Configure the Reticle Cloud CI gate for your repository."},[ma.HOSTED_RUNNER]:{reason:"Verifying without a local browser (CI, a background agent, or a deployed URL) needs a browser we run for you.",unlockedBy:"Link a Reticle Cloud account to run verifications on hosted browsers."}}});var rd,Nx,wx,LD,Ox,Ix=S(()=>{"use strict";ne();rd={INSTALL:"install",ONBOARD:"onboard",FIRST_RUN:"first_run"},Nx={STARTED:"started",COMPLETED:"completed",FAILED:"failed",ABANDONED:"abandoned",SKIPPED:"skipped"},wx={[rd.INSTALL]:["script_started","runtime_ready","cli_installed","agents_detected","mcp_registered"],[rd.ONBOARD]:["tour_started","concept_shown","first_look","first_act","first_verdict"],[rd.FIRST_RUN]:["project_detected","instrumented","app_connected","driven","flow_recorded","verdict_produced"]},LD=Object.values(wx).flatMap(t=>[...t]),Ox=i.object({phase:i.nativeEnum(rd),step:i.enum(LD),status:i.nativeEnum(Nx),elapsedMs:i.number().int().nonnegative().optional(),reason:i.string().max(64).optional(),stack:i.string().max(64).optional(),unattended:i.boolean().optional(),firstEver:i.boolean().optional()})});var Cx,fg=S(()=>{"use strict";Cx={AUTH_REFUSED:"auth_refused",LEASE_EXPIRED:"lease_expired",TAB_GONE:"tab_gone",NAVIGATED_AWAY:"navigated_away",ROUTE_SERVER_ERROR:"route_server_error",APP_NOT_REOPENED:"app_not_reopened",CONFIG_ELSEWHERE:"config_elsewhere",NO_LISTENER_NO_CONFIG:"no_listener_no_config",NO_LISTENER:"no_listener",NO_CONFIG:"no_config",SDK_NOT_REACHING_DAEMON:"sdk_not_reaching_daemon"}});var kD,Lx,hg=S(()=>{"use strict";ne();fg();kD={NO_SESSION:"no_session",NO_MATCH:"no_match",UNSUPPORTED:"unsupported",BAD_ARGS:"bad_args",NOT_READY:"not_ready",OTHER:"other"},Lx=i.object({tool:i.string().min(1).max(64),reason:i.nativeEnum(kD),noSessionReason:i.nativeEnum(Cx).optional(),retried:i.boolean()})});var DD,Dx,IK,kx,MD,$D,mg,PD,HD,Mx,UD,FD,$x,gg=S(()=>{"use strict";ne();DD={CONNECT:"connect",CLOSE_GAPS:"close_gaps",SWITCH_ON:"switch_on",EXPLORE:"explore"},Dx={B0:"0-19",B20:"20-39",B40:"40-59",B60:"60-79",B80:"80-100"},IK=Object.values(Dx),kx=i.object({fingerprint:i.string().min(1).max(64),count:i.number().int().nonnegative(),message:i.string().max(300),tool:i.string().max(64).optional()}),MD={NONE:"none",LOCAL_ONLY:"local_only",REMOTE:"remote"},$D={GITHUB:"github",GITLAB:"gitlab",BITBUCKET:"bitbucket",AZURE:"azure",SOURCEHUT:"sourcehut",CODEBERG:"codeberg",SELF_HOSTED:"self_hosted"},mg=i.object({rssMb:i.number().int().nonnegative(),heapUsedMb:i.number().int().nonnegative(),freeMemMb:i.number().int().nonnegative(),totalMemMb:i.number().int().nonnegative(),load1x100:i.number().int().nonnegative(),cpuCount:i.number().int().nonnegative()}),PD=i.object({totalMs:i.number().int().nonnegative(),maxMs:i.number().int().nonnegative()}),HD=i.object({attempts:i.number().int().nonnegative(),successes:i.number().int().nonnegative(),failures:i.record(i.string(),i.number().int().nonnegative()).optional()}),Mx=i.object({durationMs:i.number().int().nonnegative(),toolCalls:i.number().int().nonnegative(),toolCounts:i.record(i.string(),i.number().int().nonnegative()),toolErrors:i.number().int().nonnegative(),errors:i.array(kx).max(40).optional(),sdkFailures:i.number().int().nonnegative().optional(),sdkErrors:i.array(kx).max(40).optional(),verifications:i.number().int().nonnegative(),bugsFound:i.number().int().nonnegative().optional(),bugKinds:i.record(i.string(),i.number().int().nonnegative()).optional(),toolParams:i.record(i.string(),i.record(i.string(),i.number().int().nonnegative())).optional(),connections:i.record(i.string(),HD).optional(),toolTiming:i.record(i.string(),PD).optional(),busyMs:i.number().int().nonnegative().optional(),browserMs:i.number().int().nonnegative().optional(),browserCommands:i.number().int().nonnegative().optional(),peakConcurrentTools:i.number().int().nonnegative().optional(),unknownToolCalls:i.number().int().nonnegative().optional(),unknownTools:i.record(i.string().max(64),i.number().int().nonnegative()).optional(),noSessionErrors:i.number().int().nonnegative().optional(),postSocketFailures:i.number().int().nonnegative().optional(),postRetriesSaved:i.number().int().nonnegative().optional(),consecutiveRepeats:i.record(i.number().int().positive()).optional(),abandonedActions:i.number().int().nonnegative().optional(),machine:mg.optional(),clients:i.array(i.string().max(64)).max(8).optional(),clientVersions:i.record(i.string().max(64),i.string().max(32)).optional(),surface:i.string().max(32).optional(),appConnects:i.number().int().nonnegative().optional(),msToFirstApp:i.number().int().nonnegative().optional(),endReason:i.enum(["never_used","explored","abandoned","verified","client_left"]).optional(),feedbackPrompted:i.number().int().nonnegative().optional(),errorClasses:i.record(i.string().max(16),i.number().int().nonnegative()).optional(),errorsRecovered:i.number().int().nonnegative().optional(),errorsRepeated:i.number().int().nonnegative().optional(),endedWithVerdict:i.boolean().optional(),lifetimeToolCalls:i.number().int().nonnegative().optional(),lifetimeVerifications:i.number().int().nonnegative().optional(),lifetimeBugsFound:i.number().int().nonnegative().optional(),updateNudged:i.boolean().optional(),updateOffered:i.string().max(32).optional(),hudControls:i.record(i.number()).optional(),hudViewMs:i.record(i.number()).optional(),hudPanelMs:i.record(i.number()).optional(),hudSlides:i.record(i.number()).optional(),hudJourney:i.array(i.string().max(64)).max(60).optional(),hudJourneyCut:i.literal(!0).optional(),nudgesShown:i.record(i.nativeEnum(DD),i.number().int().positive()).optional(),harnessRefusedCoverage:i.record(i.nativeEnum(Dx),i.number().int().positive()).optional(),final:i.boolean(),exit:i.enum(["idle","signal","unknown"]).optional()}),UD={TINY:"tiny",SMALL:"small",MEDIUM:"medium",LARGE:"large",HUGE:"huge"},FD={NO_APP_FOUND:"no_app_found",MANIFEST_UNRECOGNISED:"manifest_unrecognised",WORKSPACE_APPS_UNRECOGNISED:"workspace_apps_unrecognised",WORKSPACE_ROOT_NO_APPS:"workspace_root_no_apps",DISCOVERY_FAILED:"discovery_failed"},$x=i.object({stack:i.string().min(1).max(64).optional(),stackSource:i.enum(["cwd","workspace"]).optional(),stackUnknownReason:i.nativeEnum(FD).optional(),stackMajor:i.number().int().nonnegative().optional(),size:i.nativeEnum(UD).optional(),monorepo:i.boolean().optional(),git:i.nativeEnum(MD),forge:i.nativeEnum($D).optional(),ageWeeks:i.number().int().nonnegative().optional(),flowCount:i.number().int().nonnegative(),baselineCount:i.number().int().nonnegative(),visualBaselineCount:i.number().int().nonnegative(),runCount:i.number().int().nonnegative(),hasContract:i.boolean(),initialized:i.boolean().optional(),appConnectedBefore:i.boolean().optional(),capsuleCount:i.number().int().nonnegative(),featuresUsed:i.array(i.string().max(32)).max(24),featureDepth:i.number().min(0).max(1)})});var Px,Eg=S(()=>{"use strict";Px={ACTIVE:"active",MISSING:"missing",INVALID:"invalid",EXPIRED:"expired",EVAL:"eval"}});var GD,BD,VD,bg,jD,KD,WD,zD,YD,XD,qD,Hx,Tg=S(()=>{"use strict";ne();Yl();GD={SIGNED_OUT:"signed_out",SIGNED_IN:"signed_in",LINKED:"linked"},BD={CLAUDE_CODE:"claude_code",CLAUDE_DESKTOP:"claude_desktop",CODEX:"codex",CURSOR:"cursor",GEMINI_CLI:"gemini_cli",ANTIGRAVITY:"antigravity",WINDSURF:"windsurf",CLINE:"cline",OPENCODE:"opencode",ZED:"zed",VSCODE:"vscode",OTHER:"other"},VD={NPX:"npx",GLOBAL:"global",PROJECT:"project",OTHER:"other"},bg={ZERO:"0",ONE:"1",TWO_THREE:"2-3",FOUR_NINE:"4-9",TEN_PLUS:"10+"},jD=i.object({view:i.nativeEnum(vt).optional(),surface:i.nativeEnum(Jo).optional(),tabs:i.nativeEnum(bg).optional()}),KD={CONNECT:"connect",HUD:"hud",LINK:"link"},WD=i.object({via:i.nativeEnum(KD)}),zD={STARTED:"started",COMPLETED:"completed"},YD={PROVED:"proved",NOT_PROVED:"not_proved",FAILED:"failed",BLOCKED:"blocked",STOPPED:"stopped"},XD={AGENT:"agent",HUD:"hud",DASHBOARD:"dashboard",CLI_TRY:"cli_try",PLAN:"plan"},qD=i.object({phase:i.nativeEnum(zD),source:i.nativeEnum(XD),hosted:i.boolean(),outcome:i.nativeEnum(YD).optional(),journeys:i.nativeEnum(bg).optional(),replayed:i.nativeEnum(bg).optional()}),Hx={accountState:i.nativeEnum(GD).optional(),linked:i.boolean().optional(),workspaceId:i.string().min(1).max(128).optional(),client:i.nativeEnum(BD).optional(),launch:i.nativeEnum(VD).optional(),hud:jD.optional(),link:WD.optional(),harness:qD.optional()}});var ZD,QD,Ux,Sg=S(()=>{"use strict";ne();ZD={CONTRADICTION:"contradiction",CRAWL:"crawl",REPLAY:"replay",ASSERTION:"assertion"},QD={APP:"app",REQUEST:"request",RETICLE:"reticle",UNCLASSIFIED:"unclassified"},Ux=i.object({source:i.nativeEnum(ZD),kind:i.string().min(1).max(64),falseGreen:i.boolean(),tool:i.string().min(1).max(64).optional(),repeat:i.boolean(),attribution:i.nativeEnum(QD),fingerprint:i.string().max(16).optional(),occurrence:i.number().int().positive().optional()})});var JD,Ut,YK,eM,tM,nM,rM,oM,Fx,iM,aM,sM,cM,lM,dM,uM,pM,fM,hM,XK,Gx=S(()=>{"use strict";ne();Ix();hg();gg();Ps();Qo();Ps();Eg();Tg();Sg();Sg();JD=3,Ut={RETICLE_INSTALLED:"reticle_installed",CLI_COMMAND_RUN:"cli_command_run",DAEMON_STARTED:"daemon_started",DAEMON_STOPPED:"daemon_stopped",SESSION_PROGRESS:"session_progress",VERIFICATION_COMPLETED:"verification_completed",PROJECT_PROFILED:"project_profiled",VERSION_CHANGED:"version_changed",RUNTIME_CRASHED:"runtime_crashed",FEEDBACK_SUBMITTED:"feedback_submitted",IDENTIFIED:"identified",MCP_CLIENT_CONNECTED:"mcp_client_connected",APP_INSTRUMENTED:"app_instrumented",MCP_CONNECTION_LOST:"mcp_connection_lost",INIT_COMPLETED:"init_completed",ONBOARDING_STEP:"onboarding_step",BUG_FOUND:"bug_found",TOOL_REFUSED:"tool_refused",HUD_VIEWED:"hud_viewed",HUD_SIGNIN_PROMPTED:"hud_signin_prompted",PLATFORM_LINKED:"platform_linked",HARNESS_RUN:"harness_run"},YK=new Set([Ut.DAEMON_STARTED,Ut.DAEMON_STOPPED,Ut.SESSION_PROGRESS,Ut.MCP_CLIENT_CONNECTED,Ut.APP_INSTRUMENTED,Ut.PROJECT_PROFILED,Ut.VERIFICATION_COMPLETED,Ut.BUG_FOUND,Ut.RUNTIME_CRASHED,Ut.FEEDBACK_SUBMITTED,Ut.TOOL_REFUSED,Ut.HUD_VIEWED,Ut.HUD_SIGNIN_PROMPTED,Ut.HARNESS_RUN]),eM={HUMAN:"human",AGENT:"agent"},tM={GIT_ORIGIN:"git_origin",GIT_ROOT:"git_root",PACKAGE_ROOT:"package_root",CWD:"cwd"},nM={HARNESS:"harness"},rM=i.object({via:i.string().min(1).max(64),verified:i.string().min(1).max(16),passed:i.boolean(),falseGreenCaught:i.boolean(),durationMs:i.number().int().nonnegative().optional(),browser:i.string().min(1).max(16).optional(),brand:i.nativeEnum($e).optional(),reason:i.nativeEnum(Ke).optional(),uncleanLoss:i.nativeEnum(ZS).optional(),driven:i.nativeEnum(nM).optional()}),oM=i.object({from:i.string().min(1).max(64),to:i.string().min(1).max(64),nudged:i.boolean().optional(),direction:i.string().min(1).max(16)}),Fx={RETICLE:"reticle",OTHER:"other"},iM=i.object({kind:i.string().min(1).max(32),errorType:i.string().min(1).max(64).optional(),fingerprint:i.string().min(1).max(64).optional(),message:i.string().max(300).optional(),frames:i.array(i.string().max(120)).max(12).optional(),tool:i.string().min(1).max(64).optional(),breadcrumb:i.array(i.string().max(64)).max(12).optional(),nodeVersion:i.string().max(24).optional(),arch:i.string().max(16).optional(),machine:mg.optional(),syscall:i.string().max(32).optional(),errno:i.string().max(32).optional(),loopback:i.boolean().optional(),port:i.enum([Fx.RETICLE,Fx.OTHER]).optional(),internalFrame:i.string().max(64).optional()}),aM=i.object({reconnect:i.boolean(),daemonAgeMs:i.number().int().nonnegative(),client:i.string().min(1).max(64).optional(),appConnected:i.boolean().optional()}),sM=i.object({initialized:i.boolean(),agentAttached:i.boolean(),msToFirstApp:i.number().int().nonnegative(),firstEver:i.boolean().optional()}),cM={FIRST:"first",BUDGET_SPENT:"budget_spent",RECOVERED:"recovered"},lM={SSE_ENDED:"sse_ended",DAEMON_SHUTDOWN:"daemon_shutdown",SSE_ERROR:"sse_error",SSE_ABORTED:"sse_aborted",SSE_CLOSED:"sse_closed",CONNECT_ERROR:"connect_error",OTHER:"other"},dM=i.object({stage:i.nativeEnum(cM),reason:i.nativeEnum(lM),attempts:i.number().int().nonnegative(),pendingLost:i.number().int().nonnegative().optional()}),uM={SKILL_FILE:"skill_file",NPX_SKILL:"npx_skill",PLUGIN:"plugin",INSTALL_SCRIPT:"install_script",DOCS_SITE:"docs_site",README:"readme",CLI_DIRECT:"cli_direct",UNKNOWN:"unknown"},pM={CONTAINER:"container",HOSTED_WORKSPACE:"hosted_workspace",CI_RUNNER:"ci_runner",AGENT_SANDBOX:"agent_sandbox"},fM={CONNECTED:"connected",NO_DAEMON:"no_daemon",NO_SESSION:"no_session",NO_PAGE:"no_page"},hM=i.object({ok:i.boolean(),reason:i.string().max(64).optional(),stack:i.string().max(64).optional(),mcpRegistered:i.boolean().optional(),confirmation:i.nativeEnum(fM).optional()}),XK=i.object({v:i.literal(JD),anonymousId:i.string().min(1).max(128),projectId:i.string().min(1).max(128).optional(),sessionId:i.string().min(1).max(64).optional(),event:i.nativeEnum(Ut),ts:i.number().int().nonnegative(),version:i.string().min(1).max(64),ci:i.boolean(),automation:i.nativeEnum(pM).optional(),projectIdSource:i.nativeEnum(tM).optional(),os:i.string().min(1).max(32),tzOffsetMin:i.number().int().min(-900).max(900).optional(),internal:i.boolean().optional(),idEphemeral:i.boolean().optional(),feedback:ex.optional(),actor:i.nativeEnum(eM).optional(),command:i.string().min(1).max(32).optional(),flags:i.array(i.string().max(32)).max(16).optional(),session:Mx.optional(),project:$x.optional(),verification:rM.optional(),versionChange:oM.optional(),crash:iM.optional(),identity:tx.optional(),connection:aM.optional(),init:hM.optional(),onboarding:Ox.optional(),bug:Ux.optional(),refusal:Lx.optional(),outage:dM.optional(),instrumentation:sM.optional(),installSource:i.nativeEnum(uM).optional(),licenseId:i.string().min(1).max(64).optional(),licenseStatus:i.nativeEnum(Px).optional(),licenseKeyPresent:i.boolean().optional(),...Hx})});var Bx=S(()=>{"use strict"});var e3,Vx=S(()=>{"use strict";cm();e3={SESSIONS:"reticle_sessions",LOOK:"reticle_look",SNAPSHOT:"reticle_snapshot",QUERY:"reticle_query",INSPECT:"reticle_inspect",ACT:Ns.ACT,ACT_SEQUENCE:Ns.ACT_SEQUENCE,ACT_AND_WAIT:Ns.ACT_AND_WAIT,OBSERVE:"reticle_observe",LINEAGE:"reticle_lineage",WAIT_FOR:"reticle_wait_for",NETWORK:"reticle_network",CONSOLE:"reticle_console",ANIMATIONS:"reticle_animations",ASSERT:"reticle_assert",RECONCILE:"reticle_reconcile",BASELINE_SAVE:"reticle_baseline_save",BASELINE_LIST:"reticle_baseline_list",DIFF:"reticle_diff",RECORD_START:"reticle_record_start",RECORD_STOP:"reticle_record_stop",REPLAY:"reticle_replay",EXPLORE:"reticle_explore",NARRATE:"reticle_narrate",CLOCK:"reticle_clock",STATE:"reticle_state",STORAGE:"reticle_storage",CAPABILITIES:"reticle_capabilities",CONTRACT_SAVE:"reticle_contract_save",DOMAIN:"reticle_domain",FLOW_SAVE:"reticle_flow_save",FLOW_LIST:"reticle_flow_list",FLOW_LOAD:"reticle_flow_load",FLOW_DELETE:"reticle_flow_delete",FLOW_REPLAY:"reticle_flow_replay",FLOW_VERIFY:"reticle_flow_verify",FLOW_SAVE_RECORDED:"reticle_flow_save_recorded",FLOW_HEAL:"reticle_flow_heal",FLOW_MUTATE:"reticle_flow_mutate",ANNOTATE:"reticle_annotate",AFFECTED:"reticle_affected",COVERAGE:"reticle_coverage",VERIFY_CHANGE:"reticle_verify_change",VERIFY_EXPLORE:"reticle_verify_explore",INTENT:"reticle_intent",CONTEXT:"reticle_context",VERIFY:"reticle_verify",PROJECT:"reticle_project",ACCOUNT:"reticle_account",MEMORY:"reticle_memory",RUN_RECORD:"reticle_run_record",SCREENSHOT:"reticle_screenshot",NETWORK_MOCK:"reticle_network_mock",VIEWPORT:"reticle_viewport",VISUAL_DIFF:"reticle_visual_diff",CRAWL:"reticle_crawl",SCROLL_TO:"reticle_scroll_to",SESSION_TUNE:"reticle_session_tune",END_SESSION:"reticle_end_session",YIELD:"reticle_yield",RESUME:"reticle_resume",MESSAGES:"reticle_messages",REVIEW:"reticle_review",WAIT_READY:"reticle_wait_ready",NAVIGATE:"reticle_navigate",REFRESH:"reticle_refresh",RUN_EXPORT:"reticle_run_export",BASELINE:"reticle_baseline",SESSION:"reticle_session",RECORD:"reticle_record",FLOW:"reticle_flow",LEASE:"reticle_lease",LEASE_ACQUIRE:"reticle_lease_acquire",LEASE_RELEASE:"reticle_lease_release",TOOLS:"reticle_tools",RUN:"reticle_run",FEEDBACK:"reticle_feedback"}});var jx=S(()=>{"use strict"});var Kx=S(()=>{"use strict"});var c3,l3,d3,u3,Wx=S(()=>{"use strict";ks();Ps();Ap();Mt();c3={[ei.WEB]:{surface:Pn.WEB,isDesktopShell:!1,usesWebKit:!1,ownsCoverageKinds:!1,hasOwnBaselineDirectory:!1},[ei.ELECTRON]:{surface:Pn.DESKTOP,isDesktopShell:!0,projectMarker:{dependency:"electron"},usesWebKit:!1,ownsCoverageKinds:!0,hasOwnBaselineDirectory:!0},[ei.TAURI]:{surface:Pn.DESKTOP,isDesktopShell:!0,projectMarker:{file:"src-tauri/tauri.conf.json"},usesWebKit:!0,ownsCoverageKinds:!1,hasOwnBaselineDirectory:!0}},l3=new Set(Object.values($n)),d3={[ei.WEB]:Or.WEB,[ei.ELECTRON]:Or.WEBVIEW,[ei.TAURI]:Or.WEBVIEW},u3={[Pn.WEB]:{reset:"cheap",replayPrefix:"free",time:"injectable",observation:"exact",actions:"reversible"},[Pn.DESKTOP]:{reset:"cheap",replayPrefix:"free",time:"injectable",observation:"exact",actions:"reversible"},[Pn.MOBILE]:{reset:"costly",replayPrefix:"costly",time:"wall",observation:"exact",actions:"reversible"},[Pn.SERVICE]:{reset:"costly",replayPrefix:"unsafe",time:"wall",observation:"exact",actions:"irreversible"},[Pn.GAME]:{reset:"cheap",replayPrefix:"free",time:"stepped",observation:"exact",actions:"reversible"},[Pn.DEVICE]:{reset:"costly",replayPrefix:"unsafe",time:"wall",observation:"sampled",actions:"irreversible"}}});var Xx,mM,gM,zx,EM,qx,bM,Yx,TM,nt,SM,_M,xM,AM,Zx,yM,vM,Qx,_g=S(()=>{"use strict";ne();Xx=i.object({calls:i.number().int().nonnegative(),verdicts:i.number().int().nonnegative(),passed:i.number().int().nonnegative(),failed:i.number().int().nonnegative(),unknown:i.number().int().nonnegative(),refusals:i.number().int().nonnegative(),marks:i.number().int().nonnegative(),sessions:i.number().int().nonnegative(),tokensReturned:i.number().int().nonnegative(),drivingMs:i.number().int().nonnegative()}),mM=i.object({date:i.string(),counts:Xx}),gM=i.object({longestRunMs:i.number().int().nonnegative(),bestVerdictDay:i.number().int().nonnegative(),bestDefectDay:i.number().int().nonnegative(),streakDays:i.number().int().nonnegative(),bestStreakDays:i.number().int().nonnegative()}),zx=i.object({value:i.number().nonnegative(),basis:i.string()}),EM=i.object({tokens:zx,minutes:zx}),qx=10,bM=i.object({at:i.number().int().nonnegative(),title:i.string(),detail:i.string().optional(),source:i.string().optional()}),Yx=i.object({counts:Xx,days:i.array(mM),records:gM,savings:EM,since:i.number().int().nonnegative(),defects:i.array(bM).default([])}),TM=i.object({signedIn:i.boolean(),org:i.string().optional(),email:i.string().optional(),host:i.string().optional()}),nt={FREE:"free",TRIAL:"trial",PAID:"paid"},SM=i.object({provider:i.string(),harnessEnabled:i.boolean(),harnessEntitled:i.boolean(),providerReady:i.boolean().optional(),credits:i.object({used:i.number().int().min(0),limit:i.number().int().min(0),kind:i.enum([nt.FREE,nt.TRIAL,nt.PAID]).optional(),daysLeft:i.number().int().min(0).optional()}).optional(),platformUrl:i.string().optional(),gate:i.object({unlocked:i.boolean(),percent:i.number().int().min(0).max(100).optional(),reason:i.string().max(400).optional(),prompt:i.string().max(4e3).optional()}).optional(),plan:i.object({kind:i.enum([nt.FREE,nt.TRIAL,nt.PAID]),daysLeft:i.number().int().min(0).optional(),seats:i.number().int().min(0).optional()}).optional(),harnessRuns:i.number().int().min(0).optional(),memoryEntries:i.number().int().min(0).optional()}),_M=i.object({runId:i.string(),steps:i.number().int().min(0)}),xM=500,AM=5,Zx=64,yM=i.object({text:i.string().max(xM),seen:i.boolean(),by:i.string().max(Zx).optional()}),vM=i.object({agents:i.array(i.string().max(Zx)).max(8),notes:i.array(yM).max(AM)}),Qx=i.object({schemaVersion:i.number().int().positive(),project:Yx,global:Yx,projectName:i.string().optional(),dashboardUrl:i.string().optional(),account:TM.optional(),harnessConfig:SM.optional(),harnessDrive:_M.optional(),agent:vM.optional(),notices:i.array(i.unknown()).max(8).optional(),coverage:i.record(i.number()).optional(),sync:i.record(i.unknown()).optional(),instrumentation:i.record(i.unknown()).optional()})});var Jx=S(()=>{"use strict"});function Fs(t){let e=2166136261;for(let n=0;n<t.length;n++)e^=t.charCodeAt(n),e=Math.imul(e,16777619)>>>0;return e.toString(16).padStart(8,"0")}function eA(t){let e=Object.keys(t).sort().map(n=>{var r;return`${n}:${[...(r=t[n])!=null?r:[]].sort().join(",")}`}).join("|");return Fs(e)}var xg,od,tA=S(()=>{"use strict";Mt();xg=eA({messageKinds:Object.values(Dt),commands:Object.values(L),actions:Object.values(k),events:Object.values(x)}),od={commands:Object.values(L),events:Object.values(x),actions:Object.values(k)}});var nA,rA=S(()=>{"use strict";nA="[Reticle] this page could not open a websocket to "});var oA=S(()=>{"use strict"});var H=S(()=>{"use strict";tS();u_();p_();f_();Mt();m_();b_();S_();A_();y_();Qo();v_();R_();Km();Yl();I_();zm();M_();P_();H_();sg();nx();rx();Gl();cm();d_();um();ox();Im();Nm();Cm();ax();_p();sx();cx();co();Pm();Mm();Um();Fm();Gm();lx();px();hx();mx();gx();Ex();bx();Tx();Sx();ug();xx();og();tg();yx();vx();Rx();Gx();fg();hg();Bx();Vx();jx();Ap();yp();Kx();Wx();gg();Tg();Eg();Ps();_g();Jx();tA();rA();oA()});function aA(t){Ag=t}function yg(t){sA=t}function lA(){return Ag}function dA(t){iA=t.join(",")}function ht(t){return t.closest(ti)!==null}function ni(t){return ht(t)?!cA()||t.closest(NM)===null:!1}function Gs(t){return t!==null&&t.closest(ti)!==null}function rn(t){let n=[cA()?wM:ti,RM,iA].filter(r=>r.length>0).join(",");return t.closest(n)!==null}function Ip(t){for(let e of Array.from(t.querySelectorAll(OM)))if(e.closest(ti)===null&&!(e instanceof HTMLElement&&(e.hidden||e.closest("[hidden]")!==null))&&!(e instanceof HTMLElement&&getComputedStyle(e).display==="none"))return!0;return!1}var ti,RM,iA,Ag,sA,cA,NM,wM,OM,at=S(()=>{"use strict";H();ti=Xl,RM="[data-agentation],#__next-build-watcher,nextjs-portal,[data-nextjs-dialog],[data-nextjs-toast]",iA="",Ag=!1;sA=!1;cA=()=>Ag&&!sA;NM="[data-reticle-dock]";wM="[data-reticle-log],[data-reticle-harness-log],[data-reticle-chat-pill-text],[data-reticle-agent-said],[data-reticle-agent-note]";OM='dialog[open], [aria-modal="true"]'});function Bs(){return Cp}function rr(){return`[${Cp}]`}function Pe(t){return t.getAttribute(Cp)}function uA(t){Cp=t!==void 0&&E_.test(t)?t:ca}var Cp,on=S(()=>{"use strict";H();Cp=ca});function pA(t,e){var o;if(t===null||typeof t!="object")return;let r=((o=t.ownerDocument)!=null?o:t).defaultView;if(r!=null)return r[e]}function bn(t,e,n){var o;let r=(o=pA(t,e))!=null?o:n;return typeof r=="function"&&t instanceof r}function EA(t){let e=Ft(t)?"HTMLTextAreaElement":"HTMLInputElement",n=pA(t,e);if(typeof n!="function")return;let r=n.prototype;return typeof r=="object"&&r!==null?r:void 0}var an,vg,Ze,IM,ri,ve,Ft,or,Vs,fA,hA,mA,gA,Lp,Un=S(()=>{"use strict";an=t=>bn(t,"Element",typeof Element=="undefined"?void 0:Element),vg=t=>bn(t,"HTMLImageElement",typeof HTMLImageElement=="undefined"?void 0:HTMLImageElement),Ze=t=>bn(t,"HTMLElement",typeof HTMLElement=="undefined"?void 0:HTMLElement),IM=t=>bn(t,"SVGElement",typeof SVGElement=="undefined"?void 0:SVGElement),ri=t=>Ze(t)||IM(t),ve=t=>bn(t,"HTMLInputElement",typeof HTMLInputElement=="undefined"?void 0:HTMLInputElement),Ft=t=>bn(t,"HTMLTextAreaElement",typeof HTMLTextAreaElement=="undefined"?void 0:HTMLTextAreaElement),or=t=>bn(t,"HTMLSelectElement",typeof HTMLSelectElement=="undefined"?void 0:HTMLSelectElement),Vs=t=>bn(t,"HTMLButtonElement",typeof HTMLButtonElement=="undefined"?void 0:HTMLButtonElement),fA=t=>bn(t,"HTMLMeterElement",typeof HTMLMeterElement=="undefined"?void 0:HTMLMeterElement),hA=t=>bn(t,"HTMLOutputElement",typeof HTMLOutputElement=="undefined"?void 0:HTMLOutputElement),mA=t=>bn(t,"HTMLProgressElement",typeof HTMLProgressElement=="undefined"?void 0:HTMLProgressElement),gA=t=>bn(t,"HTMLFormElement",typeof HTMLFormElement=="undefined"?void 0:HTMLFormElement),Lp=t=>bn(t,"HTMLIFrameElement",typeof HTMLIFrameElement=="undefined"?void 0:HTMLIFrameElement)});function $p(t){return CM.has(t)||t.startsWith(kp)||t.startsWith(Dp)||t.startsWith(Mp)}var st,kp,Dp,Mp,CM,Lr=S(()=>{"use strict";st={SESSION:"__reticle_session",REF_BASE:"__reticle_ref_base",PRESENTER_LOG:"reticle-presenter-log",PRESENTER_LOG_OWNER:"reticle-presenter-log-owner",PRESENTER_SETTINGS:"reticle-presenter-settings",PRESENTER_MINIMISED:"reticle-presenter-minimised",PRESENTER_VIEW:"reticle-presenter-view",CAROUSEL_DISMISSED:"reticle.carousel.dismissed",ANNOTATION_HISTORY:"reticle.annotations.history.v1"},kp="reticle.tour.seen.",Dp="reticle.harness.persona.",Mp="reticle.impact.seen.",CM=new Set(Object.values(st))});function ga(t){let e=G.MAX_REF_LENGTH;return e>=t.length?t:`${t.slice(0,e)}${LM}`}function MM(t){try{let e=t==null?void 0:t.getItem(TA),n=e==null?Number.NaN:Number(e);return Number.isSafeInteger(n)&&n>0?n:0}catch{return 0}}var bA,LM,Rg,kM,TA,DM,ad,ct,sd,fo,js,Ks,Ws,ho,SA,Ng,_A,id,J,Rt=S(()=>{"use strict";H();Lr();bA=1e4,LM="\u2026",Rg="e";kM=1e3,TA=st.REF_BASE,DM=100;id=class{constructor(e=()=>globalThis.sessionStorage){b(this,ho);b(this,ad,new WeakMap);b(this,ct,new Map);b(this,sd);b(this,fo,0);b(this,js,0);b(this,Ks,0);b(this,Ws,0);h(this,sd,e)}get size(){return c(this,ct).size}markEdited(){h(this,Ws,c(this,fo))}mintedBeforeLastEdit(e){if(c(this,Ws)===0||!e.startsWith(Rg))return!1;let n=Number(e.slice(Rg.length));return Number.isSafeInteger(n)&&n>0&&n<=c(this,Ws)}refFor(e){let n=c(this,ad).get(e);if(n!==void 0){let o=c(this,ct).get(n);return c(this,ct).delete(n),c(this,ct).set(n,o!=null?o:new WeakRef(e)),n}c(this,fo)>=c(this,js)&&E(this,ho,SA).call(this),h(this,fo,c(this,fo)+1);let r=ix(`${Rg}${String(c(this,fo))}`);return c(this,ad).set(e,r),c(this,ct).set(r,new WeakRef(e)),h(this,Ks,c(this,Ks)+1),c(this,Ks)>=kM?(h(this,Ks,0),E(this,ho,_A).call(this)):c(this,ct).size>bA&&E(this,ho,Ng).call(this),r}resolve(e){let n=c(this,ct).get(e);if(n===void 0)return null;let r=n.deref();return r===void 0||!r.isConnected?(c(this,ct).delete(e),null):(c(this,ct).delete(e),c(this,ct).set(e,n),r)}};ad=new WeakMap,ct=new WeakMap,sd=new WeakMap,fo=new WeakMap,js=new WeakMap,Ks=new WeakMap,Ws=new WeakMap,ho=new WeakSet,SA=function(){let e;try{e=c(this,sd).call(this)}catch{e=void 0}let n=Math.max(MM(e),c(this,fo));h(this,js,n+DM);try{e==null||e.setItem(TA,String(c(this,js)))}catch{}h(this,fo,n)},Ng=function(){let e=c(this,ct).keys().next();e.done!==!0&&c(this,ct).delete(e.value)},_A=function(){for(let[e,n]of c(this,ct)){let r=n.deref();(r===void 0||!r.isConnected)&&c(this,ct).delete(e)}for(;c(this,ct).size>bA;)E(this,ho,Ng).call(this)};J=new id});function Re(t,e){return t[e]}function xA(t){let e=Object.getOwnPropertyDescriptor(t,"value");return e===void 0?void 0:Re(e,"set")}var oi=S(()=>{"use strict"});function HM(){for(let t of ii)t.deref()===void 0&&ii.delete(t);for(;ii.size>$M;){let t=ii.values().next();if(t.done===!0)break;ii.delete(t.value)}}function vA(){let t=[];for(let e of ii){let n=e.deref();n!==void 0&&t.push(n)}return t}function yA(t,e){if(!AA.has(t)){AA.add(t),ii.add(new WeakRef(t)),Og+=1,Og>=PM&&(Og=0,HM()),Ig.add(e);for(let n of Pp)n(t)}}function RA(){return vA()}function NA(t){return Ig.has(t)}function zs(t){if(!Ig.has(t))return null;for(let e of vA())if(e.host===t)return e;return null}function wA(t){return Pp.add(t),()=>Pp.delete(t)}function OA(){let t=Element.prototype,e=Re(t,"attachShadow");if(typeof e!="function")return()=>{};wg+=1;let n=function(a){let s=e.call(this,a);return yA(s,this),s};t.attachShadow=n;let r=o=>{for(let a of o.querySelectorAll("*")){let s=a.shadowRoot;s!==null&&(yA(s,a),r(s))}};return document.documentElement!==null&&r(document.documentElement),()=>{Re(t,"attachShadow")===n&&(t.attachShadow=e),wg-=1,!(wg>0)&&(ii.clear(),Pp.clear())}}var wg,ii,AA,Ig,$M,PM,Og,Pp,Ys=S(()=>{"use strict";oi();wg=0,ii=new Set,AA=new WeakSet,Ig=new WeakSet,$M=4e3,PM=250,Og=0;Pp=new Set});function IA(t){var n;return((n=t.match(/-?\d*\.?\d+(?:e[-+]?\d+)?|NaN|Infinity|-Infinity/gi))!=null?n:[]).map(r=>Number(r))}function GM(t){return/NaN|Infinity/i.test(t)?!0:IA(t).some(e=>!Number.isFinite(e))}function BM(t){let e=IA(t).filter(a=>Number.isFinite(a));if(e.length===0)return!0;let n=e.filter((a,s)=>s%2===0),r=e.filter((a,s)=>s%2===1),o=a=>a.every(s=>s===a[0]);return n.length>1&&o(n)&&o(r)}function Hp(t){let e=[],n=0;for(let o of UM)for(let a of Array.from(t.querySelectorAll(o)))for(let s of FM){let l=a.getAttribute(s);if(l===null)continue;n+=1;let d=l.length>120?`${l.slice(0,120)}\u2026`:l;GM(l)?e.push({kind:"non-finite-coordinates",tag:o,attr:s,sample:d}):l.trim().length===0?e.push({kind:"empty-geometry",tag:o,attr:s,sample:d}):BM(l)&&e.push({kind:"degenerate-geometry",tag:o,attr:s,sample:d})}let r=t.querySelectorAll("canvas").length>0;return{examined:n,findings:e,canvas:r}}function CA(t,e){var o,a,s,l,d,u,p;let n=(a=(o=e.Chart)==null?void 0:o.getChart)==null?void 0:a.call(o,t);if(n!=null)return{library:"chartjs",data:(s=n.data)!=null?s:null};let r=(d=(l=e.echarts)==null?void 0:l.getInstanceByDom)==null?void 0:d.call(l,t);return r!=null?{library:"echarts",data:(p=(u=r.getOption)==null?void 0:u.call(r))!=null?p:null}:null}var UM,FM,Cg=S(()=>{"use strict";UM=["path","polyline","polygon"],FM=["d","points"]});function cd(t,e,n){let r=Math.max(0,Math.min(n,e.remainingCharacters));if(t.length<=r)return e.remainingCharacters-=t.length,t;e.truncatedValues+=1;let o=r<=ld.length?ld.slice(0,r):`${t.slice(0,r-ld.length)}${ld}`;return e.remainingCharacters-=o.length,o}function dd(t,e,n,r){if(r!==void 0&&tt(r))return _e;if(n>G.MAX_SERIALIZE_DEPTH||e.nodes>=Xs)return e.truncatedValues+=1,ld;if(e.nodes+=1,t===null||typeof t=="boolean")return t;if(typeof t=="string")return cd(t,e,(r==null?void 0:r.toLowerCase())==="error"?G.MAX_ERROR_LENGTH:G.MAX_STRING_LENGTH);if(typeof t=="number")return Number.isFinite(t)?t:null;if(typeof t=="bigint")return t.toString();if(typeof t=="undefined"||typeof t=="function"||typeof t=="symbol")return qs;if(t instanceof Date)return Number.isNaN(t.getTime())?null:t.toISOString();if(t instanceof Map){let o=Object.create(null),a=0;for(let[s,l]of t){if(e.nodes>=Xs||a>=G.MAX_COLLECTION_ITEMS){e.droppedItems+=t.size-a;break}let d=cd(typeof s=="string"?s:String(s),e,LA),u=dd(l,e,n+1,d);u!==qs&&(o[d]=u),a+=1}return o}if(t instanceof Set){let o=[],a=0;for(let s of t){if(e.nodes>=Xs||a>=G.MAX_COLLECTION_ITEMS){e.droppedItems+=t.size-a;break}let l=dd(s,e,n+1);o.push(l===qs?null:l),a+=1}return o}if(ArrayBuffer.isView(t)&&!(t instanceof DataView)){let o=t.length,a=[],s=0;for(let l of t){if(e.nodes>=Xs||s>=G.MAX_COLLECTION_ITEMS){e.droppedItems+=o-s;break}a.push(l),e.nodes+=1,s+=1}return a}if(t instanceof Error)return{name:cd(t.name,e,256),message:cd(t.message,e,G.MAX_ERROR_LENGTH)};if(e.seen.has(t))return"[CIRCULAR]";e.seen.add(t);try{if(Array.isArray(t)){let d=[],u=t.slice(0,G.MAX_COLLECTION_ITEMS);e.droppedItems+=Math.max(0,t.length-u.length);for(let p of u){if(e.nodes>=Xs){e.droppedItems+=1;continue}let f=dd(p,e,n+1);if(e.nodes>=Xs){e.droppedItems+=1;continue}d.push(f===qs?null:f)}return d}let o=Object.create(null),a=Object.keys(t),s=a.slice(0,G.MAX_OBJECT_KEYS);e.droppedItems+=Math.max(0,a.length-s.length);let l=s.map(d=>{try{let u=t[d];return{key:d,value:u,scalar:u===null||typeof u!="object",ok:!0}}catch{return{key:d,value:void 0,scalar:!0,ok:!1}}});for(let d of[...l.filter(u=>u.scalar),...l.filter(u=>!u.scalar)]){let u=cd(d.key,e,LA);if(!d.ok){o[u]=Lg;continue}try{let p=dd(d.value,e,n+1,d.key);p!==qs&&(o[u]=p)}catch{o[u]=Lg}}return o}finally{e.seen.delete(t)}}function ud(t){return pd(t).value}function pd(t){let e={seen:new WeakSet,remainingCharacters:VM,nodes:0,droppedItems:0,truncatedValues:0},n=dd(t,e,0),r=n===qs?null:n;if(e.droppedItems===0&&e.truncatedValues===0)return{value:r};let o=[];return e.droppedItems>0&&o.push(`${e.droppedItems} item(s) dropped`),e.truncatedValues>0&&o.push(`${e.truncatedValues} value(s) truncated`),{value:r,truncation:{droppedItems:e.droppedItems,truncatedValues:e.truncatedValues,note:`partial \u2014 ${o.join(", ")}; this is NOT the whole value. Scope the read with \`path\`/\`depth\` to see the rest.`}}}function kr(t){try{return JSON.stringify(ud(t))}catch{return JSON.stringify(Lg)}}var ld,Lg,qs,LA,VM,Xs,Dr=S(()=>{"use strict";H();ld="[TRUNCATED]",Lg="[UNSERIALIZABLE]",qs=Symbol("omit"),LA=256,VM=Math.floor(G.MAX_MESSAGE_BYTES/4),Xs=G.MAX_COLLECTION_ITEMS*5});function jM(t){if(t===null)return;let e=/^(.*):(\d+):(\d+)$/.exec(t);if(e===null)return;let n=e[1],r=Number(e[2]);if(!(n===void 0||n.length===0||!Number.isFinite(r)))return{file:n,line:r}}function fd(t){let e=t.closest(`[${kg}]`);return e!==null?jM(e.getAttribute(kg)):void 0}function Up(t,e){return e!==void 0?{file:e.file,line:e.line}:fd(t)}function kA(t){return t.querySelector(`[${kg}]`)!==null}function Fp(t){return t===void 0?void 0:`${t.file}:${String(t.line)}`}var kg,hd=S(()=>{"use strict";H();kg=Ds});function qM(t){let e=t.type.toLowerCase();return e==="search"?"searchbox":XM.has(e)?"textbox":e==="checkbox"?"checkbox":e==="radio"?"radio":e==="range"?"slider":e==="number"?"spinbutton":e==="submit"||e==="button"||e==="reset"?"button":"textbox"}function ZM(t){let e=t.getAttribute("aria-label");if(e!==null&&e.trim().length>0)return!0;let n=t.getAttribute("aria-labelledby");if(n!==null&&n.trim().length>0)return!0;let r=t.getAttribute("title");return r!==null&&r.trim().length>0}function xe(t){var r;let e=t.getAttribute("role");if(e!==null&&e.trim().length>0)return e.trim();switch(t.tagName.toLowerCase()){case"a":return t.hasAttribute("href")?"link":"generic";case"button":return"button";case"input":return qM(t);case"textarea":return"textbox";case"select":return t.multiple?"listbox":"combobox";case"h1":case"h2":case"h3":case"h4":case"h5":case"h6":return"heading";case"ul":case"ol":return"list";case"li":return"listitem";case"nav":return"navigation";case"main":return"main";case"aside":return"complementary";case"dialog":return"dialog";case"img":return"img";case"table":return"table";case"tr":return"row";case"tbody":case"thead":case"tfoot":return"rowgroup";case"td":return t.closest('[role~="grid"], [role~="treegrid"]')!==null?"gridcell":"cell";case"th":{let o=((r=t.getAttribute("scope"))!=null?r:"").toLowerCase();return o==="row"||o==="rowgroup"?"rowheader":"columnheader"}case"option":return"option";case"optgroup":return"group";case"section":return ZM(t)?"region":"generic";case"article":return"article";case"fieldset":return"group";case"details":return"group";case"summary":return"button";case"progress":return"progressbar";case"meter":return"meter";case"output":return"status";case"hr":return"separator";case"area":return t.hasAttribute("href")?"link":"generic";case"form":return"form";case"p":return"paragraph";case"header":return"banner";case"footer":return"contentinfo";default:return"generic"}}function Zs(t){return t.replace(/\s+/g," ").trim()}function QM(t){let e=t.getAttribute("aria-labelledby");if(e===null)return null;let n=[];for(let o of e.split(/\s+/)){let a=t.ownerDocument.getElementById(o);a!==null&&n.push(Zs(md(a)))}let r=n.join(" ").trim();return r.length>0?r:null}function md(t){var o;if(t.nodeType===Node.TEXT_NODE)return(o=t.textContent)!=null?o:"";if(t.nodeType!==Node.ELEMENT_NODE)return"";let e=t;if(e.getAttribute("aria-hidden")==="true")return"";if(vg(e)){let a=e.getAttribute("alt");return a===null?"":a}let n="",r=!1;for(let a of e.childNodes){let s=md(a);if(s.length===0)continue;let l=Node.ELEMENT_NODE===a.nodeType;n.length>0&&(l||r)&&(n+=" "),n+=s,r=l}return n}function Ne(t){let e=QM(t);if(e!==null)return e;let n=t.getAttribute("aria-label");if(n!==null&&n.trim().length>0)return n.trim();if(vg(t)){let a=t.getAttribute("alt");if(a!==null)return a.trim()}if(ve(t)||Ft(t)||or(t)||Vs(t)||fA(t)||hA(t)||mA(t)){let a=t.labels;if(a!==null&&a.length>0){let s=[...a].map(l=>Zs(md(l))).join(" ").trim();if(s.length>0)return s}}if(t.tagName.toLowerCase()==="fieldset"){let a=[...t.children].find(s=>s.tagName.toLowerCase()==="legend");if(a!==void 0){let s=Zs(md(a));if(s.length>0)return s}}if(ve(t)||Ft(t)||or(t)){if(ve(t)){let a=t.type.toLowerCase();if(a==="submit"||a==="button"||a==="reset"){let s=Zs(t.value);if(s.length>0)return s}}if(ve(t)||Ft(t)){let a=t.getAttribute("placeholder");if(a!==null&&a.trim().length>0)return a.trim()}}if(YM.has(xe(t))){let a=Zs(md(t));if(a.length>0)return a}let o=t.getAttribute("title");return o!==null&&o.trim().length>0?o.trim():""}function Gp(t,e){let n=t.getAttribute(e);if(n!==null)return n==="true"}function go(t,e=Gt(t)){let n=[fe.PRESENT];n.push(e?fe.VISIBLE:fe.HIDDEN);let o=(Vs(t)||ve(t)||or(t)||Ft(t))&&t.disabled||Gp(t,"aria-disabled")===!0;return n.push(o?fe.DISABLED:fe.ENABLED),(ve(t)&&(t.type==="checkbox"||t.type==="radio")&&t.checked||Gp(t,"aria-checked")===!0)&&n.push(fe.CHECKED),Gp(t,"aria-expanded")===!0&&n.push(fe.EXPANDED),Gp(t,"aria-pressed")===!0&&n.push(fe.PRESSED),t.ownerDocument.activeElement===t&&n.push(fe.FOCUSED),n}function ir(t){var o,a,s,l,d;if(!ve(t)&&!Ft(t)&&!or(t))return!1;let e=(o=t.getAttribute("autocomplete"))!=null?o:"",n=[(a=t.getAttribute("name"))!=null?a:"",t.id,(s=Pe(t))!=null?s:"",(l=t.getAttribute(ca))!=null?l:"",(d=t.getAttribute("aria-label"))!=null?d:""],r=JM.test(e);return ve(t)&&t.type.toLowerCase()==="password"||r||n.some(tt)}function Mg(t){if(ve(t)||Ft(t)||or(t))return ir(t)?t.value===""?"":_e:t.value;let e=t.getAttribute("aria-valuenow");return e!=null?e:void 0}function e2(t){let e=t.parentElement;if(e===null)return!1;let n=e.closest(KM);if(n===null||n.hasAttribute(WM))return!1;let r=Array.from(n.children).find(o=>zM===o.localName);return r===void 0||!r.contains(t)}function t2(t){return!t.ownerDocument.hidden||!("getAnimations"in t)?!1:t.getAnimations().some(e=>e.playState==="running"||e.pending)}function r2(t){return t.hasAttribute(n2)}function o2(t,e){return!!(t.getAttribute("aria-hidden")==="true"&&!r2(t)||Ze(t)&&t.hidden||e2(t)||e!==null&&(e.display==="none"||e.visibility==="hidden"||e.visibility==="collapse"||Number.parseFloat(e.opacity||"1")===0&&!t2(t)))}function i2(t){let e=t.parentElement;if(e===null||e.shadowRoot!==null)return null;let n=zs(e);if(n===null)return null;for(let r of Array.from(n.querySelectorAll("slot")))if(r.assignedElements().includes(t))return r;return null}function a2(t){var r;let e=(r=t.assignedSlot)!=null?r:i2(t);if(e!==null)return e;if(t.parentElement!==null)return t.parentElement;let n=t.getRootNode().host;return n!=null?n:null}function BA(t){if(t===void 0)return new Map;let e=PA.get(t);return e===void 0&&(e=new Map,PA.set(t,e)),e}function mo(t,e){var r,o,a;let n=e.get(t);if(n===void 0){let s=(o=(r=t.ownerDocument.defaultView)==null?void 0:r.getComputedStyle(t))!=null?o:null;if(o2(t,s))return n={hidden:!0,style:s,parent:null,clipX:!1,clipY:!1,scrollX:!1,scrollY:!1,hasClipping:!1},e.set(t,n),n;let l=a2(t),d=l===null?void 0:mo(l,e),[u,p]=Dg(s),f=t.ownerDocument.documentElement,g=!(t===f||t===t.ownerDocument.body&&Dg(mo(f,e).style).every(y=>y==="visible"))&&!FA.has((a=s==null?void 0:s.display)!=null?a:"")&&!(Ze(t)&&(s==null?void 0:s.display)==="inline"),T=g&&DA.has(u),_=g&&DA.has(p);n={hidden:(d==null?void 0:d.hidden)===!0,style:s,parent:l,clipX:T,clipY:_,scrollX:g&&MA.has(u),scrollY:g&&MA.has(p),hasClipping:T||_||(d==null?void 0:d.hasClipping)===!0},e.set(t,n)}return n}function Dg(t){var o;let e=(o=t==null?void 0:t.overflow)!=null?o:"",[n="visible",r=n]=(e===""?"visible":e).split(/\s+/);return[t===null||t.overflowX===""?n:t.overflowX,t===null||t.overflowY===""?r:t.overflowY]}function l2(t,e,n){for(let r=mo(t,n).parent;r!==null;r=mo(r,n).parent){let o=mo(r,n).style;if(o===null||o.display==="contents")continue;if(!e&&o.position!==""&&o.position!=="static")return r;let a=!(o.display==="inline"&&Ze(r)&&!c2.has(r.localName))&&o.display!=="table-column"&&o.display!=="table-column-group",s=l=>a||!GA.has(l);if([...$A].some(l=>{let d=o.getPropertyValue(l);return s(l)&&d!==""&&d!=="none"})||o.willChange.split(",").some(l=>$A.has(l.trim())&&s(l.trim()))||a&&!FA.has(o.display)&&(o.contain.split(/\s+/).some(l=>s2.has(l))||o.contentVisibility==="auto"))return r}return null}function HA(t,e){var ce;if(e.clipBox!==void 0)return e.clipBox;let n=t.getBoundingClientRect(),r=e.style,o=he=>Number.parseFloat(he!=null?he:"")||0,a=(he,Ie)=>Ie===void 0||Ie===""||Ie==="none"||Ie==="hidden"?0:o(he),s=Ze(t)&&t.offsetWidth>0?n.width/t.offsetWidth:1,l=Ze(t)&&t.offsetHeight>0?n.height/t.offsetHeight:1,d=Ze(t)&&t.offsetWidth>0?n.left+t.clientLeft*s:n.left+a(r==null?void 0:r.borderLeftWidth,r==null?void 0:r.borderLeftStyle),u=Ze(t)&&t.offsetHeight>0?n.top+t.clientTop*l:n.top+a(r==null?void 0:r.borderTopWidth,r==null?void 0:r.borderTopStyle),p=Ze(t)&&t.offsetWidth>0?d+t.clientWidth*s:n.right-a(r==null?void 0:r.borderRightWidth,r==null?void 0:r.borderRightStyle),f=Ze(t)&&t.offsetHeight>0?u+t.clientHeight*l:n.bottom-a(r==null?void 0:r.borderBottomWidth,r==null?void 0:r.borderBottomStyle),m=((ce=r==null?void 0:r.overflowClipMargin)!=null?ce:"").split(/\s+/),g=o(m.at(-1)),T=m.includes("border-box"),_=m.includes("content-box"),[y,A]=Dg(r),v=y==="clip"?(T?n.left:d+(_?o(r==null?void 0:r.paddingLeft)*s:0))-g*s:d,O=y==="clip"?(T?n.right:p-(_?o(r==null?void 0:r.paddingRight)*s:0))+g*s:p,B=A==="clip"?(T?n.top:u+(_?o(r==null?void 0:r.paddingTop)*l:0))-g*l:u,oe=A==="clip"?(T?n.bottom:f-(_?o(r==null?void 0:r.paddingBottom)*l:0))+g*l:f;return e.clipBox={left:v,right:O,top:B,bottom:oe,width:O-v,height:oe-B},e.clipBox}function d2(t,e,n,r){let o=(u,p,f,m,g)=>{if(p>m&&u<g)return[u,p];let T=Math.min(f,g-m);return u>=g?[g-T,g]:[m,m+T]},[a,s]=n?o(t.left,t.right,t.width,e.left,e.right):[t.left,t.right],[l,d]=r?o(t.top,t.bottom,t.height,e.top,e.bottom):[t.top,t.bottom];return{left:a,right:s,top:l,bottom:d,width:s-a,height:d-l}}function VA(t,e,n,r=!1){let o=n,a=mo(t,e);if(a.hidden)return null;if(a.parent===null||!mo(a.parent,e).hasClipping)return o;let s;for(let l=t;l!==null;l=mo(l,e).parent){let d=mo(l,e);if(d.hidden)return null;l===s&&(s=void 0);let u=d.style;if(r&&l!==t&&s===void 0&&(d.scrollX||d.scrollY)&&(o!=null||(o=t.getBoundingClientRect()),o.width>0&&o.height>0&&(o=d2(o,HA(l,d),d.scrollX,d.scrollY))),l!==t&&s===void 0&&(d.clipX||d.clipY)&&(o!=null||(o=t.getBoundingClientRect()),o.width>0&&o.height>0)){let p=HA(l,d),f=d.clipX?Math.max(o.left,p.left):o.left,m=d.clipX?Math.min(o.right,p.right):o.right,g=d.clipY?Math.max(o.top,p.top):o.top,T=d.clipY?Math.min(o.bottom,p.bottom):o.bottom;if(m<=f||T<=g)return null;o={left:f,right:m,top:g,bottom:T,width:m-f,height:T-g}}s===void 0&&((u==null?void 0:u.position)==="absolute"||(u==null?void 0:u.position)==="fixed")&&(s=l2(l,(u==null?void 0:u.position)==="fixed",e))}return o}function $g(t,e){if(!Gt(t,e))return!1;let n=t.ownerDocument.defaultView;if(n===null)return!1;let r=VA(t,BA(e),t.getBoundingClientRect());return r==null||r.width<=0||r.height<=0?!1:r.bottom>0&&r.right>0&&r.top<n.innerHeight&&r.left<n.innerWidth}function Gt(t,e){if(!t.isConnected)return!1;let n=e==null?void 0:e.get(t);if(n!==void 0)return n;let r=VA(t,BA(e),void 0,!0)!==null;return e!==void 0&&e.set(t,r),r}function u2(t){var n;let e=Zs((n=t.textContent)!=null?n:"");return e.length>UA?`${e.slice(0,UA)}\u2026`:e}function Mr(t,e){let n=Mg(t),r=u2(t),o=Ne(t),a=Gt(t,e),s={ref:J.refFor(t),role:xe(t),name:o,states:go(t,a),visible:a};n!==void 0&&n.length>0&&(s.value=n),r.length>0&&r!==o&&(s.text=r);let l=Fp(fd(t));if(l!==void 0&&(s.source=l),t.querySelector("path, polyline, polygon")!==null){let d=Hp(t).findings;d.length>0&&(s.chart=d)}return s}var KM,WM,zM,YM,XM,JM,n2,DA,MA,FA,GA,$A,s2,c2,PA,UA,Bt=S(()=>{"use strict";on();H();Un();Rt();Ys();Cg();Dr();hd();KM="details",WM="open",zM="summary",YM=new Set(["button","link","heading","option","listitem","cell","checkbox","columnheader","radio","row","rowheader","tab","tooltip","menuitem","menuitemcheckbox","menuitemradio","treeitem","gridcell","switch","status","alert"]),XM=new Set(["text","email","tel","url","password",""]);JM=/\b(cc-|current-password|new-password|one-time-code)/i;n2="data-aria-hidden";DA=new Set(["hidden","clip"]),MA=new Set(["auto","scroll"]),FA=new Set(["contents","table-row","table-row-group","table-header-group","table-footer-group","table-column","table-column-group"]),GA=new Set(["transform","translate","rotate","scale","perspective"]),$A=new Set([...GA,"filter","backdrop-filter"]),s2=new Set(["layout","paint","strict","content"]),c2=new Set(["img","video","audio","canvas","iframe","embed","object","input","textarea","select"]),PA=new WeakMap;UA=80});function sy(t){var o;let e=[],n=new Set,r;try{r=t.querySelectorAll(rr())}catch{return e}for(let a=0;a<r.length&&e.length<F2;a+=1){let s=(o=r[a])==null?void 0:o.getAttribute(Bs());if(s==null)continue;let l=s.trim();l.length===0||n.has(l)||l.startsWith(G2)||(n.add(l),e.push(l))}return e}var F2,G2,cy=S(()=>{"use strict";on();F2=200,G2="reticle-"});var Bg,ly,Vg,ar,Td=S(()=>{"use strict";Bg=globalThis,Vg=typeof((ly=Bg.console)==null?void 0:ly.warn)=="function"?Bg.console.warn.bind(Bg.console):null,ar=(...t)=>{Vg==null||Vg(...t)}});function my(t){return jg.add(t),()=>jg.delete(t)}function B2(t){if(t===null||typeof t!="object"&&typeof t!="function")return!1;let e=t;return typeof e.getState=="function"&&typeof e.subscribe=="function"}function gy(t,e,n){if(K2(t,e),B2(e)){let r=()=>e.getState(),o=a=>e.subscribe(a);ec.set(t,r),Wp.set(t,o),dy(t,r,o);return}if(typeof e!="function"){let r=typeof e=="object"&&e!==null&&"subscribe"in e;ar(`[reticle] store "${t}" is neither a getter function nor a {getState, subscribe} store`+(r?" \u2014 it has subscribe but no getState. Wrap it with an adapter or add getState.":"."));return}if(ec.set(t,e),n!==void 0){Wp.set(t,n),dy(t,e,n);return}j2(t)}function dy(t,e,n){for(let r of jg)try{r([t,e,n])}catch{}}function Ey(t){ec.delete(t),Wp.delete(t)}function ai(){return[...ec.keys()]}function by(){let t=[];for(let[e,n]of Wp){let r=ec.get(e);r!==void 0&&t.push([e,r,n])}return t}function Wg(t){let e={};for(let[n,r]of ec)if(!(t!==void 0&&n!==t))try{e[n]=r()}catch(o){e[n]={__error:o instanceof Error?o.message:String(o)}}return e}function Ty(t){return Sd(t).stores}function Sd(t){let e={},n={};for(let[r,o]of Object.entries(Wg(t))){let a=pd(o);e[r]=a.value,a.truncation!==void 0&&(n[r]=a.truncation)}return Object.keys(n).length>0?{stores:e,truncation:n}:{stores:e}}function j2(t){V2.has(t)||uy.has(t)||(uy.add(t),ar(`[reticle] store "${t}" was registered without a subscribe function. It can be READ, but its changes are invisible: no STATE_CHANGE events, no state diffs in causal summaries, and a state predicate will never see it update. Pass the store object (or a subscribe callback) to fix.`))}function zp(t,e){Sy.set(t,e)}function K2(t,e){if(e===null||typeof e!="object"&&typeof e!="function")return;Kg.set(e,t);let n=Sy.get(e);n!==void 0&&Kg.set(n,t)}function _y(t){if(!(t===null||typeof t!="object"&&typeof t!="function"))return Kg.get(t)}var Eo,py,ec,fy,Wp,hy,jg,uy,V2,Kg,Sy,Ea=S(()=>{"use strict";H();Td();Dr();Eo=globalThis,ec=(py=Eo.__reticleStores)!=null?py:Eo.__reticleStores=new Map,Wp=(fy=Eo.__reticleStoreSubs)!=null?fy:Eo.__reticleStoreSubs=new Map,jg=(hy=Eo.__reticleStoreListeners)!=null?hy:Eo.__reticleStoreListeners=new Set;uy=new Set,V2=new Set([ap]);Kg=new WeakMap,Sy=new WeakMap});function Ay(){return typeof document=="undefined"?[]:sy(document)}function yy(){return ai().filter(t=>ap!==t)}function Xp(t,e){let n=[...t];for(let r of e)n.includes(r)||n.push(r);return n}function W2(){return{testids:[],signals:[],stores:[],flows:[]}}function Yg(t,e){if(e!==void 0)for(let n of e)t.includes(n)||t.push(n)}function qp(t){Yp=t}function tc(t){if(Yg(sn.testids,t.testids),Yg(sn.signals,t.signals),Yg(sn.stores,t.stores),t.flows!==void 0)for(let e of t.flows){let n=sn.flows.find(r=>r.name===e.name);n===void 0?sn.flows.push({name:e.name,steps:[...e.steps]}):n.steps=[...e.steps]}Yp==null||Yp()}function si(){return{testids:Xp(sn.testids,Ay()),signals:[...sn.signals],stores:Xp(sn.stores,yy()),flows:sn.flows.map(t=>({name:t.name,steps:[...t.steps]})),...lA()?{presenterExposed:!0}:{}}}function vy(){return[...sn.testids]}function Zp(){return sn.signals.length>0||sn.flows.length>0||Xp(sn.testids,Ay()).length>0||Xp(sn.stores,yy()).length>0}var zg,xy,sn,Yp,ci=S(()=>{"use strict";H();at();cy();Ea();zg=globalThis;sn=(xy=zg.__reticleCapabilities)!=null?xy:zg.__reticleCapabilities=W2()});function Ny(t){nc.some(e=>e.name===t.name)||nc.push(t)}function $r(t){for(let e of nc){let n;try{n=e.identify(t)}catch{continue}if(n!=null)return n}return null}function Qp(t){for(let e of nc){if(e.readState===void 0)continue;let n=e.readState(t);if(n!==void 0)return n}}function Jp(t){for(let e of nc)if(e.hasHoverHandlers!==void 0&&e.hasHoverHandlers(t))return!0;return!1}function _d(){return nc.map(t=>t.name)}var Xg,Ry,nc,li=S(()=>{"use strict";Xg=globalThis,nc=(Ry=Xg.__reticleAdapters)!=null?Ry:Xg.__reticleAdapters=[]});function rf(){return Jg>0}function We(t){Jg+=1;try{return t()}finally{Jg-=1}}var Jg,rc=S(()=>{"use strict";Jg=0});var Gn,Vy,rE,jy,Wy,Ky,af,ee,Te,zy,Yy,Xy,di,qy,lt=S(()=>{"use strict";Gn=globalThis,Vy=typeof Gn.setTimeout=="function"?Gn.setTimeout.bind(Gn):null,rE=typeof Gn.clearTimeout=="function"?Gn.clearTimeout.bind(Gn):null,jy=typeof Gn.requestAnimationFrame=="function"?Gn.requestAnimationFrame.bind(Gn):null,Ky=typeof((Wy=Gn.performance)==null?void 0:Wy.now)=="function"?Gn.performance.now.bind(Gn.performance):null,af=()=>Ky?Ky():0,ee=(t,e=0)=>Vy?Vy(t,e):0,Te=t=>{rE==null||rE(t)},zy=(t,e)=>{let n=!1,r=0,o=()=>{n||(t(),!n&&(r=ee(o,e)))};return r=ee(o,e),()=>{n=!0,Te(r)}},Yy=200,Xy=(t=Yy)=>new Promise(e=>{let n=!1,r=a=>{n||(n=!0,Te(o),e({settled:a}))},o=ee(()=>r(!1),t);jy?jy(()=>r(!0)):ee(()=>r(!0),0)}),di=()=>Xy().then(()=>{}),qy=async(t=Yy)=>(await Promise.resolve(),Xy(t))});var Vv={};bs(Vv,{MASK:()=>Gv,cloneForRender:()=>Bv,renderPage:()=>UP});function kP(t){var e;return t instanceof HTMLInputElement&&t.type==="password"?!0:[t.name,t.id,(e=t.getAttribute("autocomplete"))!=null?e:""].some(n=>n.length>0&&tt(n))}function DP(t,e){if(t instanceof HTMLInputElement||t instanceof HTMLTextAreaElement){let n=kP(t)&&t.value.length>0?Gv:t.value;t instanceof HTMLTextAreaElement?e.textContent=n:e.setAttribute("value",n)}t instanceof HTMLInputElement&&(t.checked?e.setAttribute("checked",""):e.removeAttribute("checked")),t instanceof HTMLOptionElement&&(t.selected?e.setAttribute("selected",""):e.removeAttribute("selected"))}function MP(t){var r;let e=[...Array.from(t.styleSheets),...(r=t.adoptedStyleSheets)!=null?r:[]],n=[];for(let o of e)try{for(let a of Array.from(o.cssRules))n.push(a.cssText)}catch{}return n.join(`
2
- `)}function Bv(t){var l;let e=t.documentElement,n=e.cloneNode(!0),r=e.querySelectorAll("*"),o=n.querySelectorAll("*");r.forEach((d,u)=>{let p=o[u];p!==void 0&&DP(d,p)});let a=[ti,"script","noscript",'link[rel~="stylesheet"]',"style"];n.querySelectorAll(a.join(",")).forEach(d=>d.remove());let s=t.createElement("style");return s.textContent=MP(t),((l=n.querySelector("head"))!=null?l:n).append(s),n}function $P(t){let e=t.defaultView;for(let n of[t.body,t.documentElement]){if(e===null||n===null)continue;let r=e.getComputedStyle(n).backgroundColor;if(r.length>0&&r!=="transparent"&&r!=="rgba(0, 0, 0, 0)")return r}return IP}function PP(t){return new Promise((e,n)=>{let r=new Image,o=setTimeout(()=>n(new Error("the page did not render in time")),wP);r.onload=()=>{clearTimeout(o),e(r)},r.onerror=()=>{clearTimeout(o),n(new Error("the page could not be drawn as an image"))},r.src=t})}function HP(t){let e=[];for(let n=0;n<t.length;n+=Fv)e.push(t.slice(n,n+Fv));return e}async function UP(){try{let t=Math.max(1,window.innerWidth),e=Math.max(1,window.innerHeight),n=Bv(document);n.style.transform=`translate(${String(-window.scrollX)}px, ${String(-window.scrollY)}px)`;let r=new XMLSerializer().serializeToString(n),o=`<svg xmlns="${OP}" width="${String(t)}" height="${String(e)}"><foreignObject x="0" y="0" width="100%" height="100%">${r}</foreignObject></svg>`,a=await PP(`data:image/svg+xml;charset=utf-8,${encodeURIComponent(o)}`),s=$P(document),l=Math.min(1,wm.MAX_SIDE_PX/Math.max(t,e));for(let d=0;d<NP;d+=1,l*=RP){let u=document.createElement("canvas");u.width=Math.max(1,Math.round(t*l)),u.height=Math.max(1,Math.round(e*l));let p=u.getContext("2d");if(p===null)return{ok:!1,reason:"this page has no 2D canvas to draw into"};p.fillStyle=s,p.fillRect(0,0,u.width,u.height),p.drawImage(a,0,0,u.width,u.height);let f=u.toDataURL(CP,wm.JPEG_QUALITY).replace(LP,"");if(f.length<=vP)return{ok:!0,width:u.width,height:u.height,chunks:HP(f)}}return{ok:!1,reason:"the rendered page was too large to send, even scaled down"}}catch(t){return{ok:!1,reason:t instanceof Error?t.message:String(t)}}}var Gv,vP,Fv,RP,NP,wP,OP,IP,CP,LP,jv=S(()=>{"use strict";H();at();Gv="\u2022\u2022\u2022\u2022\u2022\u2022\u2022\u2022",vP=24e4,Fv=6e4,RP=.75,NP=4,wP=5e3,OP="http://www.w3.org/2000/svg",IP="#ffffff",CP="image/jpeg",LP=/^data:[^,]*,/});function Af(t,e){return`${nA}${t}. ${String(e)} attempts, all failed. That is everything the page can see: from inside the browser it cannot tell a daemon that is not there from one it is not allowed to reach, so this is not evidence about the daemon. What answers it: run \`npx @reticlehq/server status\` to see whether one is listening and on which port. If your app runs in a container, devcontainer or WSL, the daemon is on a different host, so point the page at it: RETICLE_PORT or reticle({ port }) with the Vite plugin, reticle.connect({ url }) by hand. An https page cannot open a ws:// socket. Still retrying\u2026`}var Jv,TE=S(()=>{"use strict";H();Jv="Can't reach Reticle from this page. Run reticle status to check, or reticle serve to start it."});var Fe,Tn,ln,CE=S(()=>{"use strict";Fe={READ:"read",ACT:"act",NARRATION:"narration",HUMAN:"human"},Tn={PASS:"pass",FAIL:"fail"},ln={AGENT:"agent",HARNESS:"harness"}});function $d(t){switch(t){case k.CLICK:case k.DBLCLICK:return"Clicking";case k.FILL:case k.TYPE:return"Typing into";case k.HOVER:return"Hovering";case k.SELECT:return"Selecting";case k.SUBMIT:return"Submitting";case k.CHECK:case k.UNCHECK:return"Toggling";case k.UPLOAD:return"Uploading to";case k.DRAG:return"Dragging";default:return t}}var LE=S(()=>{"use strict";H()});function Ao(t){return typeof t=="string"&&t.length>0}function WH(t){var n;return`${(n=t.file.split("/").pop())!=null?n:t.file}:${t.line}`}function IN(t){var e;if(Ao(t.testid))return{strategy:lr.TESTID,value:t.testid,stable:!0};if(Ao(t.component)&&t.source!==void 0)return{strategy:lr.COMPONENT,value:`${t.component}@${WH(t.source)}`,stable:!0};if(Ao(t.component)&&(Ao(t.role)||Ao(t.name))){let n=Ao(t.name)?t.name:t.role;return{strategy:lr.COMPONENT,value:`${t.component}[${n!=null?n:""}]`,stable:!0}}if(Ao(t.role)&&Ao(t.name))return{strategy:lr.ROLE,value:`${t.role}:${t.name}`,stable:!1};if(Ao(t.role)){let n=t.nth!==void 0?`#${t.nth}`:"";return{strategy:lr.ROLE,value:`${t.role}${n}`,stable:!1}}return{strategy:lr.POSITION,value:`el#${(e=t.nth)!=null?e:0}`,stable:!1}}var lr,CN=S(()=>{"use strict";lr={TESTID:"testid",COMPONENT:"component",ROLE:"role",POSITION:"position"}});function YH(t,e,n){return n.length>0?e.length>0?`${e} "${n}"`:`"${n}"`:e.length>0?e:t.tagName.toLowerCase()}function Gd(t){var p;let e=(p=Pe(t))!=null?p:void 0,n=$r(t),r=n==null?void 0:n.componentStack[0],o=Up(t,n==null?void 0:n.source),a=xe(t),s=Ne(t),l={};e!==void 0&&(l.testid=e),r!==void 0&&(l.component=r),o!==void 0&&(l.source=o),a.length>0&&(l.role=a),s.length>0&&(l.name=s);let d=IN(l),u={anchor:d.value,strategy:zH[d.strategy],label:YH(t,a,s)};return o!==void 0&&(u.source=o),u}var zH,PE=S(()=>{"use strict";on();H();CN();Bt();li();hd();zH={[lr.TESTID]:da.TESTID,[lr.COMPONENT]:da.COMPONENT,[lr.ROLE]:da.ROLE,[lr.POSITION]:da.POSITION}});function LN(t){return`${String(t)} ${t===1?"note":"notes"} on this page`}function If(t,e){let n=t.length,r=`I marked ${String(n)} ${n===1?"issue":"issues"} on ${e} with Reticle. Fix each one, then verify it in the running app:`,o=t.map((a,s)=>{let l=a.source===void 0?a.anchor:`${a.anchor}, ${a.source}`;return`${String(s+1)}. ${a.note}
3
- ${a.label} (${l}) on ${a.route}`});return[r,"",...o].join(`
4
- `)}var HE=S(()=>{"use strict"});var Cf,ge,UE,MN,$N,PN,kN,HN,UN,FN=S(()=>{"use strict";Cf="data-reticle-mark",ge=t=>`[${Cf}="${t}"]`,UE="What should change?",MN="Add",$N="Cancel",PN="+",kN=2147483601,HN=`
5
- ${ge("root")}{position:fixed;inset:0;pointer-events:none;z-index:${String(kN)};}
1
+ "use strict";var ReticleSdk=(()=>{var Vm=Object.defineProperty;var Ak=Object.getOwnPropertyDescriptor;var yk=Object.getOwnPropertyNames;var vk=Object.prototype.hasOwnProperty;var JS=t=>{throw TypeError(t)};var S=(t,e,n)=>()=>{if(n)throw n[0];try{return t&&(e=t(t=0)),e}catch(r){throw n=[r],r}};var Ua=(t,e)=>{for(var n in e)Vm(t,n,{get:e[n],enumerable:!0})},Rk=(t,e,n,r)=>{if(e&&typeof e=="object"||typeof e=="function")for(let o of yk(e))!vk.call(t,o)&&o!==n&&Vm(t,o,{get:()=>e[o],enumerable:!(r=Ak(e,o))||r.enumerable});return t};var Nk=t=>Rk(Vm({},"__esModule",{value:!0}),t);var jm=(t,e,n)=>e.has(t)||JS("Cannot "+n);var c=(t,e,n)=>(jm(t,e,"read from private field"),n?n.call(t):e.get(t)),b=(t,e,n)=>e.has(t)?JS("Cannot add the same private member more than once"):e instanceof WeakSet?e.add(t):e.set(t,n),f=(t,e,n,r)=>(jm(t,e,"write to private field"),r?r.call(t,n):e.set(t,n),n),E=(t,e,n)=>(jm(t,e,"access private method"),n);var e_=(t,e,n,r)=>({set _(o){f(t,e,o,n)},get _(){return c(t,e,r)}});var t_=S(()=>{"use strict"});var de,Km,U,Pr,ed=S(()=>{(function(t){t.assertEqual=o=>{};function e(o){}t.assertIs=e;function n(o){throw new Error}t.assertNever=n,t.arrayToEnum=o=>{let s={};for(let a of o)s[a]=a;return s},t.getValidEnumValues=o=>{let s=t.objectKeys(o).filter(l=>typeof o[o[l]]!="number"),a={};for(let l of s)a[l]=o[l];return t.objectValues(a)},t.objectValues=o=>t.objectKeys(o).map(function(s){return o[s]}),t.objectKeys=typeof Object.keys=="function"?o=>Object.keys(o):o=>{let s=[];for(let a in o)Object.prototype.hasOwnProperty.call(o,a)&&s.push(a);return s},t.find=(o,s)=>{for(let a of o)if(s(a))return a},t.isInteger=typeof Number.isInteger=="function"?o=>Number.isInteger(o):o=>typeof o=="number"&&Number.isFinite(o)&&Math.floor(o)===o;function r(o,s=" | "){return o.map(a=>typeof a=="string"?`'${a}'`:a).join(s)}t.joinValues=r,t.jsonStringifyReplacer=(o,s)=>typeof s=="bigint"?s.toString():s})(de||(de={}));(function(t){t.mergeShapes=(e,n)=>({...e,...n})})(Km||(Km={}));U=de.arrayToEnum(["string","nan","number","integer","float","boolean","date","bigint","symbol","function","undefined","null","array","object","unknown","promise","void","never","map","set"]),Pr=t=>{switch(typeof t){case"undefined":return U.undefined;case"string":return U.string;case"number":return Number.isNaN(t)?U.nan:U.number;case"boolean":return U.boolean;case"function":return U.function;case"bigint":return U.bigint;case"symbol":return U.symbol;case"object":return Array.isArray(t)?U.array:t===null?U.null:t.then&&typeof t.then=="function"&&t.catch&&typeof t.catch=="function"?U.promise:typeof Map!="undefined"&&t instanceof Map?U.map:typeof Set!="undefined"&&t instanceof Set?U.set:typeof Date!="undefined"&&t instanceof Date?U.date:U.object;default:return U.unknown}}});var w,wk,sn,Op=S(()=>{ed();w=de.arrayToEnum(["invalid_type","invalid_literal","custom","invalid_union","invalid_union_discriminator","invalid_enum_value","unrecognized_keys","invalid_arguments","invalid_return_type","invalid_date","invalid_string","too_small","too_big","invalid_intersection_types","not_multiple_of","not_finite"]),wk=t=>JSON.stringify(t,null,2).replace(/"([^"]+)":/g,"$1:"),sn=class t extends Error{get errors(){return this.issues}constructor(e){super(),this.issues=[],this.addIssue=r=>{this.issues=[...this.issues,r]},this.addIssues=(r=[])=>{this.issues=[...this.issues,...r]};let n=new.target.prototype;Object.setPrototypeOf?Object.setPrototypeOf(this,n):this.__proto__=n,this.name="ZodError",this.issues=e}format(e){let n=e||function(s){return s.message},r={_errors:[]},o=s=>{for(let a of s.issues)if(a.code==="invalid_union")a.unionErrors.map(o);else if(a.code==="invalid_return_type")o(a.returnTypeError);else if(a.code==="invalid_arguments")o(a.argumentsError);else if(a.path.length===0)r._errors.push(n(a));else{let l=r,d=0;for(;d<a.path.length;){let u=a.path[d];d===a.path.length-1?(l[u]=l[u]||{_errors:[]},l[u]._errors.push(n(a))):l[u]=l[u]||{_errors:[]},l=l[u],d++}}};return o(this),r}static assert(e){if(!(e instanceof t))throw new Error(`Not a ZodError: ${e}`)}toString(){return this.message}get message(){return JSON.stringify(this.issues,de.jsonStringifyReplacer,2)}get isEmpty(){return this.issues.length===0}flatten(e=n=>n.message){let n={},r=[];for(let o of this.issues)if(o.path.length>0){let s=o.path[0];n[s]=n[s]||[],n[s].push(e(o))}else r.push(e(o));return{formErrors:r,fieldErrors:n}}get formErrors(){return this.flatten()}};sn.create=t=>new sn(t)});var Ok,So,Wm=S(()=>{Op();ed();Ok=(t,e)=>{let n;switch(t.code){case w.invalid_type:t.received===U.undefined?n="Required":n=`Expected ${t.expected}, received ${t.received}`;break;case w.invalid_literal:n=`Invalid literal value, expected ${JSON.stringify(t.expected,de.jsonStringifyReplacer)}`;break;case w.unrecognized_keys:n=`Unrecognized key(s) in object: ${de.joinValues(t.keys,", ")}`;break;case w.invalid_union:n="Invalid input";break;case w.invalid_union_discriminator:n=`Invalid discriminator value. Expected ${de.joinValues(t.options)}`;break;case w.invalid_enum_value:n=`Invalid enum value. Expected ${de.joinValues(t.options)}, received '${t.received}'`;break;case w.invalid_arguments:n="Invalid function arguments";break;case w.invalid_return_type:n="Invalid function return type";break;case w.invalid_date:n="Invalid date";break;case w.invalid_string:typeof t.validation=="object"?"includes"in t.validation?(n=`Invalid input: must include "${t.validation.includes}"`,typeof t.validation.position=="number"&&(n=`${n} at one or more positions greater than or equal to ${t.validation.position}`)):"startsWith"in t.validation?n=`Invalid input: must start with "${t.validation.startsWith}"`:"endsWith"in t.validation?n=`Invalid input: must end with "${t.validation.endsWith}"`:de.assertNever(t.validation):t.validation!=="regex"?n=`Invalid ${t.validation}`:n="Invalid";break;case w.too_small:t.type==="array"?n=`Array must contain ${t.exact?"exactly":t.inclusive?"at least":"more than"} ${t.minimum} element(s)`:t.type==="string"?n=`String must contain ${t.exact?"exactly":t.inclusive?"at least":"over"} ${t.minimum} character(s)`:t.type==="number"?n=`Number must be ${t.exact?"exactly equal to ":t.inclusive?"greater than or equal to ":"greater than "}${t.minimum}`:t.type==="bigint"?n=`Number must be ${t.exact?"exactly equal to ":t.inclusive?"greater than or equal to ":"greater than "}${t.minimum}`:t.type==="date"?n=`Date must be ${t.exact?"exactly equal to ":t.inclusive?"greater than or equal to ":"greater than "}${new Date(Number(t.minimum))}`:n="Invalid input";break;case w.too_big:t.type==="array"?n=`Array must contain ${t.exact?"exactly":t.inclusive?"at most":"less than"} ${t.maximum} element(s)`:t.type==="string"?n=`String must contain ${t.exact?"exactly":t.inclusive?"at most":"under"} ${t.maximum} character(s)`:t.type==="number"?n=`Number must be ${t.exact?"exactly":t.inclusive?"less than or equal to":"less than"} ${t.maximum}`:t.type==="bigint"?n=`BigInt must be ${t.exact?"exactly":t.inclusive?"less than or equal to":"less than"} ${t.maximum}`:t.type==="date"?n=`Date must be ${t.exact?"exactly":t.inclusive?"smaller than or equal to":"smaller than"} ${new Date(Number(t.maximum))}`:n="Invalid input";break;case w.custom:n="Invalid input";break;case w.invalid_intersection_types:n="Intersection results could not be merged";break;case w.not_multiple_of:n=`Number must be a multiple of ${t.multipleOf}`;break;case w.not_finite:n="Number must be finite";break;default:n=e.defaultError,de.assertNever(t)}return{message:n}},So=Ok});function Ik(t){n_=t}function Fa(){return n_}var n_,Ip=S(()=>{Wm();n_=So});function P(t,e){let n=Fa(),r=td({issueData:e,data:t.data,path:t.path,errorMaps:[t.common.contextualErrorMap,t.schemaErrorMap,n,n===So?void 0:So].filter(o=>!!o)});t.common.issues.push(r)}var td,Ck,bt,z,ss,Dt,Cp,Lp,ai,Ga,zm=S(()=>{Ip();Wm();td=t=>{let{data:e,path:n,errorMaps:r,issueData:o}=t,s=[...n,...o.path||[]],a={...o,path:s};if(o.message!==void 0)return{...o,path:s,message:o.message};let l="",d=r.filter(u=>!!u).slice().reverse();for(let u of d)l=u(a,{data:e,defaultError:l}).message;return{...o,path:s,message:l}},Ck=[];bt=class t{constructor(){this.value="valid"}dirty(){this.value==="valid"&&(this.value="dirty")}abort(){this.value!=="aborted"&&(this.value="aborted")}static mergeArray(e,n){let r=[];for(let o of n){if(o.status==="aborted")return z;o.status==="dirty"&&e.dirty(),r.push(o.value)}return{status:e.value,value:r}}static async mergeObjectAsync(e,n){let r=[];for(let o of n){let s=await o.key,a=await o.value;r.push({key:s,value:a})}return t.mergeObjectSync(e,r)}static mergeObjectSync(e,n){let r={};for(let o of n){let{key:s,value:a}=o;if(s.status==="aborted"||a.status==="aborted")return z;s.status==="dirty"&&e.dirty(),a.status==="dirty"&&e.dirty(),s.value!=="__proto__"&&(typeof a.value!="undefined"||o.alwaysSet)&&(r[s.value]=a.value)}return{status:e.value,value:r}}},z=Object.freeze({status:"aborted"}),ss=t=>({status:"dirty",value:t}),Dt=t=>({status:"valid",value:t}),Cp=t=>t.status==="aborted",Lp=t=>t.status==="dirty",ai=t=>t.status==="valid",Ga=t=>typeof Promise!="undefined"&&t instanceof Promise});var r_=S(()=>{});var V,o_=S(()=>{(function(t){t.errToObj=e=>typeof e=="string"?{message:e}:e||{},t.toString=e=>typeof e=="string"?e:e==null?void 0:e.message})(V||(V={}))});function re(t){if(!t)return{};let{errorMap:e,invalid_type_error:n,required_error:r,description:o}=t;if(e&&(n||r))throw new Error(`Can't use "invalid_type_error" or "required_error" in conjunction with custom error map.`);return e?{errorMap:e,description:o}:{errorMap:(a,l)=>{var u,p;let{message:d}=t;return a.code==="invalid_enum_value"?{message:d!=null?d:l.defaultError}:typeof l.data=="undefined"?{message:(u=d!=null?d:r)!=null?u:l.defaultError}:a.code!=="invalid_type"?{message:l.defaultError}:{message:(p=d!=null?d:n)!=null?p:l.defaultError}},description:o}}function c_(t){let e="[0-5]\\d";t.precision?e=`${e}\\.\\d{${t.precision}}`:t.precision==null&&(e=`${e}(\\.\\d+)?`);let n=t.precision?"+":"?";return`([01]\\d|2[0-3]):[0-5]\\d(:${e})${n}`}function Yk(t){return new RegExp(`^${c_(t)}$`)}function l_(t){let e=`${a_}T${c_(t)}`,n=[];return n.push(t.local?"Z?":"Z"),t.offset&&n.push("([+-]\\d{2}:?\\d{2})"),e=`${e}(${n.join("|")})`,new RegExp(`^${e}$`)}function Xk(t,e){return!!((e==="v4"||!e)&&Gk.test(t)||(e==="v6"||!e)&&Vk.test(t))}function qk(t,e){if(!$k.test(t))return!1;try{let[n]=t.split(".");if(!n)return!1;let r=n.replace(/-/g,"+").replace(/_/g,"/").padEnd(n.length+(4-n.length%4)%4,"="),o=JSON.parse(atob(r));return!(typeof o!="object"||o===null||"typ"in o&&(o==null?void 0:o.typ)!=="JWT"||!o.alg||e&&o.alg!==e)}catch{return!1}}function Zk(t,e){return!!((e==="v4"||!e)&&Bk.test(t)||(e==="v6"||!e)&&jk.test(t))}function Qk(t,e){let n=(t.toString().split(".")[1]||"").length,r=(e.toString().split(".")[1]||"").length,o=n>r?n:r,s=Number.parseInt(t.toFixed(o).replace(".","")),a=Number.parseInt(e.toFixed(o).replace(".",""));return s%a/10**o}function Ba(t){if(t instanceof an){let e={};for(let n in t.shape){let r=t.shape[n];e[n]=$n.create(Ba(r))}return new an({...t._def,shape:()=>e})}else return t instanceof Ao?new Ao({...t._def,type:Ba(t.element)}):t instanceof $n?$n.create(Ba(t.unwrap())):t instanceof Hr?Hr.create(Ba(t.unwrap())):t instanceof $r?$r.create(t.items.map(e=>Ba(e))):t}function Xm(t,e){let n=Pr(t),r=Pr(e);if(t===e)return{valid:!0,data:t};if(n===U.object&&r===U.object){let o=de.objectKeys(e),s=de.objectKeys(t).filter(l=>o.indexOf(l)!==-1),a={...t,...e};for(let l of s){let d=Xm(t[l],e[l]);if(!d.valid)return{valid:!1};a[l]=d.data}return{valid:!0,data:a}}else if(n===U.array&&r===U.array){if(t.length!==e.length)return{valid:!1};let o=[];for(let s=0;s<t.length;s++){let a=t[s],l=e[s],d=Xm(a,l);if(!d.valid)return{valid:!1};o.push(d.data)}return{valid:!0,data:o}}else return n===U.date&&r===U.date&&+t==+e?{valid:!0,data:t}:{valid:!1}}function d_(t,e){return new Es({values:t,typeName:q.ZodEnum,...re(e)})}function s_(t,e){let n=typeof t=="function"?t(e):typeof t=="string"?{message:t}:t;return typeof n=="string"?{message:n}:n}function u_(t,e={},n){return t?li.create().superRefine((r,o)=>{var a,l;let s=t(r);if(s instanceof Promise)return s.then(d=>{var u,p;if(!d){let h=s_(e,r),m=(p=(u=h.fatal)!=null?u:n)!=null?p:!0;o.addIssue({code:"custom",...h,fatal:m})}});if(!s){let d=s_(e,r),u=(l=(a=d.fatal)!=null?a:n)!=null?l:!0;o.addIssue({code:"custom",...d,fatal:u})}}):li.create()}var Hn,i_,ae,Lk,kk,Dk,Mk,Pk,$k,Hk,Uk,Fk,Ym,Gk,Bk,Vk,jk,Kk,Wk,a_,zk,ci,as,cs,ls,ds,Va,us,ps,li,xo,lr,ja,Ao,an,fs,_o,kp,hs,$r,Dp,Ka,Wa,Mp,ms,gs,Es,bs,di,Un,$n,Hr,Ts,Ss,za,Jk,nd,rd,_s,eD,q,tD,p_,f_,nD,rD,h_,oD,iD,sD,aD,cD,lD,dD,uD,pD,fD,hD,mD,gD,ED,bD,TD,SD,_D,xD,AD,yD,vD,RD,ND,wD,OD,ID,CD,LD,kD,DD,MD,PD,$D,m_=S(()=>{Op();Ip();o_();zm();ed();Hn=class{constructor(e,n,r,o){this._cachedPath=[],this.parent=e,this.data=n,this._path=r,this._key=o}get path(){return this._cachedPath.length||(Array.isArray(this._key)?this._cachedPath.push(...this._path,...this._key):this._cachedPath.push(...this._path,this._key)),this._cachedPath}},i_=(t,e)=>{if(ai(e))return{success:!0,data:e.value};if(!t.common.issues.length)throw new Error("Validation failed but no issues detected.");return{success:!1,get error(){if(this._error)return this._error;let n=new sn(t.common.issues);return this._error=n,this._error}}};ae=class{get description(){return this._def.description}_getType(e){return Pr(e.data)}_getOrReturnCtx(e,n){return n||{common:e.parent.common,data:e.data,parsedType:Pr(e.data),schemaErrorMap:this._def.errorMap,path:e.path,parent:e.parent}}_processInputParams(e){return{status:new bt,ctx:{common:e.parent.common,data:e.data,parsedType:Pr(e.data),schemaErrorMap:this._def.errorMap,path:e.path,parent:e.parent}}}_parseSync(e){let n=this._parse(e);if(Ga(n))throw new Error("Synchronous parse encountered promise.");return n}_parseAsync(e){let n=this._parse(e);return Promise.resolve(n)}parse(e,n){let r=this.safeParse(e,n);if(r.success)return r.data;throw r.error}safeParse(e,n){var s;let r={common:{issues:[],async:(s=n==null?void 0:n.async)!=null?s:!1,contextualErrorMap:n==null?void 0:n.errorMap},path:(n==null?void 0:n.path)||[],schemaErrorMap:this._def.errorMap,parent:null,data:e,parsedType:Pr(e)},o=this._parseSync({data:e,path:r.path,parent:r});return i_(r,o)}"~validate"(e){var r,o;let n={common:{issues:[],async:!!this["~standard"].async},path:[],schemaErrorMap:this._def.errorMap,parent:null,data:e,parsedType:Pr(e)};if(!this["~standard"].async)try{let s=this._parseSync({data:e,path:[],parent:n});return ai(s)?{value:s.value}:{issues:n.common.issues}}catch(s){(o=(r=s==null?void 0:s.message)==null?void 0:r.toLowerCase())!=null&&o.includes("encountered")&&(this["~standard"].async=!0),n.common={issues:[],async:!0}}return this._parseAsync({data:e,path:[],parent:n}).then(s=>ai(s)?{value:s.value}:{issues:n.common.issues})}async parseAsync(e,n){let r=await this.safeParseAsync(e,n);if(r.success)return r.data;throw r.error}async safeParseAsync(e,n){let r={common:{issues:[],contextualErrorMap:n==null?void 0:n.errorMap,async:!0},path:(n==null?void 0:n.path)||[],schemaErrorMap:this._def.errorMap,parent:null,data:e,parsedType:Pr(e)},o=this._parse({data:e,path:r.path,parent:r}),s=await(Ga(o)?o:Promise.resolve(o));return i_(r,s)}refine(e,n){let r=o=>typeof n=="string"||typeof n=="undefined"?{message:n}:typeof n=="function"?n(o):n;return this._refinement((o,s)=>{let a=e(o),l=()=>s.addIssue({code:w.custom,...r(o)});return typeof Promise!="undefined"&&a instanceof Promise?a.then(d=>d?!0:(l(),!1)):a?!0:(l(),!1)})}refinement(e,n){return this._refinement((r,o)=>e(r)?!0:(o.addIssue(typeof n=="function"?n(r,o):n),!1))}_refinement(e){return new Un({schema:this,typeName:q.ZodEffects,effect:{type:"refinement",refinement:e}})}superRefine(e){return this._refinement(e)}constructor(e){this.spa=this.safeParseAsync,this._def=e,this.parse=this.parse.bind(this),this.safeParse=this.safeParse.bind(this),this.parseAsync=this.parseAsync.bind(this),this.safeParseAsync=this.safeParseAsync.bind(this),this.spa=this.spa.bind(this),this.refine=this.refine.bind(this),this.refinement=this.refinement.bind(this),this.superRefine=this.superRefine.bind(this),this.optional=this.optional.bind(this),this.nullable=this.nullable.bind(this),this.nullish=this.nullish.bind(this),this.array=this.array.bind(this),this.promise=this.promise.bind(this),this.or=this.or.bind(this),this.and=this.and.bind(this),this.transform=this.transform.bind(this),this.brand=this.brand.bind(this),this.default=this.default.bind(this),this.catch=this.catch.bind(this),this.describe=this.describe.bind(this),this.pipe=this.pipe.bind(this),this.readonly=this.readonly.bind(this),this.isNullable=this.isNullable.bind(this),this.isOptional=this.isOptional.bind(this),this["~standard"]={version:1,vendor:"zod",validate:n=>this["~validate"](n)}}optional(){return $n.create(this,this._def)}nullable(){return Hr.create(this,this._def)}nullish(){return this.nullable().optional()}array(){return Ao.create(this)}promise(){return di.create(this,this._def)}or(e){return fs.create([this,e],this._def)}and(e){return hs.create(this,e,this._def)}transform(e){return new Un({...re(this._def),schema:this,typeName:q.ZodEffects,effect:{type:"transform",transform:e}})}default(e){let n=typeof e=="function"?e:()=>e;return new Ts({...re(this._def),innerType:this,defaultValue:n,typeName:q.ZodDefault})}brand(){return new nd({typeName:q.ZodBranded,type:this,...re(this._def)})}catch(e){let n=typeof e=="function"?e:()=>e;return new Ss({...re(this._def),innerType:this,catchValue:n,typeName:q.ZodCatch})}describe(e){let n=this.constructor;return new n({...this._def,description:e})}pipe(e){return rd.create(this,e)}readonly(){return _s.create(this)}isOptional(){return this.safeParse(void 0).success}isNullable(){return this.safeParse(null).success}},Lk=/^c[^\s-]{8,}$/i,kk=/^[0-9a-z]+$/,Dk=/^[0-9A-HJKMNP-TV-Z]{26}$/i,Mk=/^[0-9a-fA-F]{8}\b-[0-9a-fA-F]{4}\b-[0-9a-fA-F]{4}\b-[0-9a-fA-F]{4}\b-[0-9a-fA-F]{12}$/i,Pk=/^[a-z0-9_-]{21}$/i,$k=/^[A-Za-z0-9-_]+\.[A-Za-z0-9-_]+\.[A-Za-z0-9-_]*$/,Hk=/^[-+]?P(?!$)(?:(?:[-+]?\d+Y)|(?:[-+]?\d+[.,]\d+Y$))?(?:(?:[-+]?\d+M)|(?:[-+]?\d+[.,]\d+M$))?(?:(?:[-+]?\d+W)|(?:[-+]?\d+[.,]\d+W$))?(?:(?:[-+]?\d+D)|(?:[-+]?\d+[.,]\d+D$))?(?:T(?=[\d+-])(?:(?:[-+]?\d+H)|(?:[-+]?\d+[.,]\d+H$))?(?:(?:[-+]?\d+M)|(?:[-+]?\d+[.,]\d+M$))?(?:[-+]?\d+(?:[.,]\d+)?S)?)??$/,Uk=/^(?!\.)(?!.*\.\.)([A-Z0-9_'+\-\.]*)[A-Z0-9_+-]@([A-Z0-9][A-Z0-9\-]*\.)+[A-Z]{2,}$/i,Fk="^(\\p{Extended_Pictographic}|\\p{Emoji_Component})+$",Gk=/^(?:(?:25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])\.){3}(?:25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])$/,Bk=/^(?:(?:25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])\.){3}(?:25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])\/(3[0-2]|[12]?[0-9])$/,Vk=/^(([0-9a-fA-F]{1,4}:){7,7}[0-9a-fA-F]{1,4}|([0-9a-fA-F]{1,4}:){1,7}:|([0-9a-fA-F]{1,4}:){1,6}:[0-9a-fA-F]{1,4}|([0-9a-fA-F]{1,4}:){1,5}(:[0-9a-fA-F]{1,4}){1,2}|([0-9a-fA-F]{1,4}:){1,4}(:[0-9a-fA-F]{1,4}){1,3}|([0-9a-fA-F]{1,4}:){1,3}(:[0-9a-fA-F]{1,4}){1,4}|([0-9a-fA-F]{1,4}:){1,2}(:[0-9a-fA-F]{1,4}){1,5}|[0-9a-fA-F]{1,4}:((:[0-9a-fA-F]{1,4}){1,6})|:((:[0-9a-fA-F]{1,4}){1,7}|:)|fe80:(:[0-9a-fA-F]{0,4}){0,4}%[0-9a-zA-Z]{1,}|::(ffff(:0{1,4}){0,1}:){0,1}((25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])\.){3,3}(25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])|([0-9a-fA-F]{1,4}:){1,4}:((25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])\.){3,3}(25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9]))$/,jk=/^(([0-9a-fA-F]{1,4}:){7,7}[0-9a-fA-F]{1,4}|([0-9a-fA-F]{1,4}:){1,7}:|([0-9a-fA-F]{1,4}:){1,6}:[0-9a-fA-F]{1,4}|([0-9a-fA-F]{1,4}:){1,5}(:[0-9a-fA-F]{1,4}){1,2}|([0-9a-fA-F]{1,4}:){1,4}(:[0-9a-fA-F]{1,4}){1,3}|([0-9a-fA-F]{1,4}:){1,3}(:[0-9a-fA-F]{1,4}){1,4}|([0-9a-fA-F]{1,4}:){1,2}(:[0-9a-fA-F]{1,4}){1,5}|[0-9a-fA-F]{1,4}:((:[0-9a-fA-F]{1,4}){1,6})|:((:[0-9a-fA-F]{1,4}){1,7}|:)|fe80:(:[0-9a-fA-F]{0,4}){0,4}%[0-9a-zA-Z]{1,}|::(ffff(:0{1,4}){0,1}:){0,1}((25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])\.){3,3}(25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])|([0-9a-fA-F]{1,4}:){1,4}:((25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])\.){3,3}(25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9]))\/(12[0-8]|1[01][0-9]|[1-9]?[0-9])$/,Kk=/^([0-9a-zA-Z+/]{4})*(([0-9a-zA-Z+/]{2}==)|([0-9a-zA-Z+/]{3}=))?$/,Wk=/^([0-9a-zA-Z-_]{4})*(([0-9a-zA-Z-_]{2}(==)?)|([0-9a-zA-Z-_]{3}(=)?))?$/,a_="((\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-((0[13578]|1[02])-(0[1-9]|[12]\\d|3[01])|(0[469]|11)-(0[1-9]|[12]\\d|30)|(02)-(0[1-9]|1\\d|2[0-8])))",zk=new RegExp(`^${a_}$`);ci=class t extends ae{_parse(e){if(this._def.coerce&&(e.data=String(e.data)),this._getType(e)!==U.string){let s=this._getOrReturnCtx(e);return P(s,{code:w.invalid_type,expected:U.string,received:s.parsedType}),z}let r=new bt,o;for(let s of this._def.checks)if(s.kind==="min")e.data.length<s.value&&(o=this._getOrReturnCtx(e,o),P(o,{code:w.too_small,minimum:s.value,type:"string",inclusive:!0,exact:!1,message:s.message}),r.dirty());else if(s.kind==="max")e.data.length>s.value&&(o=this._getOrReturnCtx(e,o),P(o,{code:w.too_big,maximum:s.value,type:"string",inclusive:!0,exact:!1,message:s.message}),r.dirty());else if(s.kind==="length"){let a=e.data.length>s.value,l=e.data.length<s.value;(a||l)&&(o=this._getOrReturnCtx(e,o),a?P(o,{code:w.too_big,maximum:s.value,type:"string",inclusive:!0,exact:!0,message:s.message}):l&&P(o,{code:w.too_small,minimum:s.value,type:"string",inclusive:!0,exact:!0,message:s.message}),r.dirty())}else if(s.kind==="email")Uk.test(e.data)||(o=this._getOrReturnCtx(e,o),P(o,{validation:"email",code:w.invalid_string,message:s.message}),r.dirty());else if(s.kind==="emoji")Ym||(Ym=new RegExp(Fk,"u")),Ym.test(e.data)||(o=this._getOrReturnCtx(e,o),P(o,{validation:"emoji",code:w.invalid_string,message:s.message}),r.dirty());else if(s.kind==="uuid")Mk.test(e.data)||(o=this._getOrReturnCtx(e,o),P(o,{validation:"uuid",code:w.invalid_string,message:s.message}),r.dirty());else if(s.kind==="nanoid")Pk.test(e.data)||(o=this._getOrReturnCtx(e,o),P(o,{validation:"nanoid",code:w.invalid_string,message:s.message}),r.dirty());else if(s.kind==="cuid")Lk.test(e.data)||(o=this._getOrReturnCtx(e,o),P(o,{validation:"cuid",code:w.invalid_string,message:s.message}),r.dirty());else if(s.kind==="cuid2")kk.test(e.data)||(o=this._getOrReturnCtx(e,o),P(o,{validation:"cuid2",code:w.invalid_string,message:s.message}),r.dirty());else if(s.kind==="ulid")Dk.test(e.data)||(o=this._getOrReturnCtx(e,o),P(o,{validation:"ulid",code:w.invalid_string,message:s.message}),r.dirty());else if(s.kind==="url")try{new URL(e.data)}catch{o=this._getOrReturnCtx(e,o),P(o,{validation:"url",code:w.invalid_string,message:s.message}),r.dirty()}else s.kind==="regex"?(s.regex.lastIndex=0,s.regex.test(e.data)||(o=this._getOrReturnCtx(e,o),P(o,{validation:"regex",code:w.invalid_string,message:s.message}),r.dirty())):s.kind==="trim"?e.data=e.data.trim():s.kind==="includes"?e.data.includes(s.value,s.position)||(o=this._getOrReturnCtx(e,o),P(o,{code:w.invalid_string,validation:{includes:s.value,position:s.position},message:s.message}),r.dirty()):s.kind==="toLowerCase"?e.data=e.data.toLowerCase():s.kind==="toUpperCase"?e.data=e.data.toUpperCase():s.kind==="startsWith"?e.data.startsWith(s.value)||(o=this._getOrReturnCtx(e,o),P(o,{code:w.invalid_string,validation:{startsWith:s.value},message:s.message}),r.dirty()):s.kind==="endsWith"?e.data.endsWith(s.value)||(o=this._getOrReturnCtx(e,o),P(o,{code:w.invalid_string,validation:{endsWith:s.value},message:s.message}),r.dirty()):s.kind==="datetime"?l_(s).test(e.data)||(o=this._getOrReturnCtx(e,o),P(o,{code:w.invalid_string,validation:"datetime",message:s.message}),r.dirty()):s.kind==="date"?zk.test(e.data)||(o=this._getOrReturnCtx(e,o),P(o,{code:w.invalid_string,validation:"date",message:s.message}),r.dirty()):s.kind==="time"?Yk(s).test(e.data)||(o=this._getOrReturnCtx(e,o),P(o,{code:w.invalid_string,validation:"time",message:s.message}),r.dirty()):s.kind==="duration"?Hk.test(e.data)||(o=this._getOrReturnCtx(e,o),P(o,{validation:"duration",code:w.invalid_string,message:s.message}),r.dirty()):s.kind==="ip"?Xk(e.data,s.version)||(o=this._getOrReturnCtx(e,o),P(o,{validation:"ip",code:w.invalid_string,message:s.message}),r.dirty()):s.kind==="jwt"?qk(e.data,s.alg)||(o=this._getOrReturnCtx(e,o),P(o,{validation:"jwt",code:w.invalid_string,message:s.message}),r.dirty()):s.kind==="cidr"?Zk(e.data,s.version)||(o=this._getOrReturnCtx(e,o),P(o,{validation:"cidr",code:w.invalid_string,message:s.message}),r.dirty()):s.kind==="base64"?Kk.test(e.data)||(o=this._getOrReturnCtx(e,o),P(o,{validation:"base64",code:w.invalid_string,message:s.message}),r.dirty()):s.kind==="base64url"?Wk.test(e.data)||(o=this._getOrReturnCtx(e,o),P(o,{validation:"base64url",code:w.invalid_string,message:s.message}),r.dirty()):de.assertNever(s);return{status:r.value,value:e.data}}_regex(e,n,r){return this.refinement(o=>e.test(o),{validation:n,code:w.invalid_string,...V.errToObj(r)})}_addCheck(e){return new t({...this._def,checks:[...this._def.checks,e]})}email(e){return this._addCheck({kind:"email",...V.errToObj(e)})}url(e){return this._addCheck({kind:"url",...V.errToObj(e)})}emoji(e){return this._addCheck({kind:"emoji",...V.errToObj(e)})}uuid(e){return this._addCheck({kind:"uuid",...V.errToObj(e)})}nanoid(e){return this._addCheck({kind:"nanoid",...V.errToObj(e)})}cuid(e){return this._addCheck({kind:"cuid",...V.errToObj(e)})}cuid2(e){return this._addCheck({kind:"cuid2",...V.errToObj(e)})}ulid(e){return this._addCheck({kind:"ulid",...V.errToObj(e)})}base64(e){return this._addCheck({kind:"base64",...V.errToObj(e)})}base64url(e){return this._addCheck({kind:"base64url",...V.errToObj(e)})}jwt(e){return this._addCheck({kind:"jwt",...V.errToObj(e)})}ip(e){return this._addCheck({kind:"ip",...V.errToObj(e)})}cidr(e){return this._addCheck({kind:"cidr",...V.errToObj(e)})}datetime(e){var n,r;return typeof e=="string"?this._addCheck({kind:"datetime",precision:null,offset:!1,local:!1,message:e}):this._addCheck({kind:"datetime",precision:typeof(e==null?void 0:e.precision)=="undefined"?null:e==null?void 0:e.precision,offset:(n=e==null?void 0:e.offset)!=null?n:!1,local:(r=e==null?void 0:e.local)!=null?r:!1,...V.errToObj(e==null?void 0:e.message)})}date(e){return this._addCheck({kind:"date",message:e})}time(e){return typeof e=="string"?this._addCheck({kind:"time",precision:null,message:e}):this._addCheck({kind:"time",precision:typeof(e==null?void 0:e.precision)=="undefined"?null:e==null?void 0:e.precision,...V.errToObj(e==null?void 0:e.message)})}duration(e){return this._addCheck({kind:"duration",...V.errToObj(e)})}regex(e,n){return this._addCheck({kind:"regex",regex:e,...V.errToObj(n)})}includes(e,n){return this._addCheck({kind:"includes",value:e,position:n==null?void 0:n.position,...V.errToObj(n==null?void 0:n.message)})}startsWith(e,n){return this._addCheck({kind:"startsWith",value:e,...V.errToObj(n)})}endsWith(e,n){return this._addCheck({kind:"endsWith",value:e,...V.errToObj(n)})}min(e,n){return this._addCheck({kind:"min",value:e,...V.errToObj(n)})}max(e,n){return this._addCheck({kind:"max",value:e,...V.errToObj(n)})}length(e,n){return this._addCheck({kind:"length",value:e,...V.errToObj(n)})}nonempty(e){return this.min(1,V.errToObj(e))}trim(){return new t({...this._def,checks:[...this._def.checks,{kind:"trim"}]})}toLowerCase(){return new t({...this._def,checks:[...this._def.checks,{kind:"toLowerCase"}]})}toUpperCase(){return new t({...this._def,checks:[...this._def.checks,{kind:"toUpperCase"}]})}get isDatetime(){return!!this._def.checks.find(e=>e.kind==="datetime")}get isDate(){return!!this._def.checks.find(e=>e.kind==="date")}get isTime(){return!!this._def.checks.find(e=>e.kind==="time")}get isDuration(){return!!this._def.checks.find(e=>e.kind==="duration")}get isEmail(){return!!this._def.checks.find(e=>e.kind==="email")}get isURL(){return!!this._def.checks.find(e=>e.kind==="url")}get isEmoji(){return!!this._def.checks.find(e=>e.kind==="emoji")}get isUUID(){return!!this._def.checks.find(e=>e.kind==="uuid")}get isNANOID(){return!!this._def.checks.find(e=>e.kind==="nanoid")}get isCUID(){return!!this._def.checks.find(e=>e.kind==="cuid")}get isCUID2(){return!!this._def.checks.find(e=>e.kind==="cuid2")}get isULID(){return!!this._def.checks.find(e=>e.kind==="ulid")}get isIP(){return!!this._def.checks.find(e=>e.kind==="ip")}get isCIDR(){return!!this._def.checks.find(e=>e.kind==="cidr")}get isBase64(){return!!this._def.checks.find(e=>e.kind==="base64")}get isBase64url(){return!!this._def.checks.find(e=>e.kind==="base64url")}get minLength(){let e=null;for(let n of this._def.checks)n.kind==="min"&&(e===null||n.value>e)&&(e=n.value);return e}get maxLength(){let e=null;for(let n of this._def.checks)n.kind==="max"&&(e===null||n.value<e)&&(e=n.value);return e}};ci.create=t=>{var e;return new ci({checks:[],typeName:q.ZodString,coerce:(e=t==null?void 0:t.coerce)!=null?e:!1,...re(t)})};as=class t extends ae{constructor(){super(...arguments),this.min=this.gte,this.max=this.lte,this.step=this.multipleOf}_parse(e){if(this._def.coerce&&(e.data=Number(e.data)),this._getType(e)!==U.number){let s=this._getOrReturnCtx(e);return P(s,{code:w.invalid_type,expected:U.number,received:s.parsedType}),z}let r,o=new bt;for(let s of this._def.checks)s.kind==="int"?de.isInteger(e.data)||(r=this._getOrReturnCtx(e,r),P(r,{code:w.invalid_type,expected:"integer",received:"float",message:s.message}),o.dirty()):s.kind==="min"?(s.inclusive?e.data<s.value:e.data<=s.value)&&(r=this._getOrReturnCtx(e,r),P(r,{code:w.too_small,minimum:s.value,type:"number",inclusive:s.inclusive,exact:!1,message:s.message}),o.dirty()):s.kind==="max"?(s.inclusive?e.data>s.value:e.data>=s.value)&&(r=this._getOrReturnCtx(e,r),P(r,{code:w.too_big,maximum:s.value,type:"number",inclusive:s.inclusive,exact:!1,message:s.message}),o.dirty()):s.kind==="multipleOf"?Qk(e.data,s.value)!==0&&(r=this._getOrReturnCtx(e,r),P(r,{code:w.not_multiple_of,multipleOf:s.value,message:s.message}),o.dirty()):s.kind==="finite"?Number.isFinite(e.data)||(r=this._getOrReturnCtx(e,r),P(r,{code:w.not_finite,message:s.message}),o.dirty()):de.assertNever(s);return{status:o.value,value:e.data}}gte(e,n){return this.setLimit("min",e,!0,V.toString(n))}gt(e,n){return this.setLimit("min",e,!1,V.toString(n))}lte(e,n){return this.setLimit("max",e,!0,V.toString(n))}lt(e,n){return this.setLimit("max",e,!1,V.toString(n))}setLimit(e,n,r,o){return new t({...this._def,checks:[...this._def.checks,{kind:e,value:n,inclusive:r,message:V.toString(o)}]})}_addCheck(e){return new t({...this._def,checks:[...this._def.checks,e]})}int(e){return this._addCheck({kind:"int",message:V.toString(e)})}positive(e){return this._addCheck({kind:"min",value:0,inclusive:!1,message:V.toString(e)})}negative(e){return this._addCheck({kind:"max",value:0,inclusive:!1,message:V.toString(e)})}nonpositive(e){return this._addCheck({kind:"max",value:0,inclusive:!0,message:V.toString(e)})}nonnegative(e){return this._addCheck({kind:"min",value:0,inclusive:!0,message:V.toString(e)})}multipleOf(e,n){return this._addCheck({kind:"multipleOf",value:e,message:V.toString(n)})}finite(e){return this._addCheck({kind:"finite",message:V.toString(e)})}safe(e){return this._addCheck({kind:"min",inclusive:!0,value:Number.MIN_SAFE_INTEGER,message:V.toString(e)})._addCheck({kind:"max",inclusive:!0,value:Number.MAX_SAFE_INTEGER,message:V.toString(e)})}get minValue(){let e=null;for(let n of this._def.checks)n.kind==="min"&&(e===null||n.value>e)&&(e=n.value);return e}get maxValue(){let e=null;for(let n of this._def.checks)n.kind==="max"&&(e===null||n.value<e)&&(e=n.value);return e}get isInt(){return!!this._def.checks.find(e=>e.kind==="int"||e.kind==="multipleOf"&&de.isInteger(e.value))}get isFinite(){let e=null,n=null;for(let r of this._def.checks){if(r.kind==="finite"||r.kind==="int"||r.kind==="multipleOf")return!0;r.kind==="min"?(n===null||r.value>n)&&(n=r.value):r.kind==="max"&&(e===null||r.value<e)&&(e=r.value)}return Number.isFinite(n)&&Number.isFinite(e)}};as.create=t=>new as({checks:[],typeName:q.ZodNumber,coerce:(t==null?void 0:t.coerce)||!1,...re(t)});cs=class t extends ae{constructor(){super(...arguments),this.min=this.gte,this.max=this.lte}_parse(e){if(this._def.coerce)try{e.data=BigInt(e.data)}catch{return this._getInvalidInput(e)}if(this._getType(e)!==U.bigint)return this._getInvalidInput(e);let r,o=new bt;for(let s of this._def.checks)s.kind==="min"?(s.inclusive?e.data<s.value:e.data<=s.value)&&(r=this._getOrReturnCtx(e,r),P(r,{code:w.too_small,type:"bigint",minimum:s.value,inclusive:s.inclusive,message:s.message}),o.dirty()):s.kind==="max"?(s.inclusive?e.data>s.value:e.data>=s.value)&&(r=this._getOrReturnCtx(e,r),P(r,{code:w.too_big,type:"bigint",maximum:s.value,inclusive:s.inclusive,message:s.message}),o.dirty()):s.kind==="multipleOf"?e.data%s.value!==BigInt(0)&&(r=this._getOrReturnCtx(e,r),P(r,{code:w.not_multiple_of,multipleOf:s.value,message:s.message}),o.dirty()):de.assertNever(s);return{status:o.value,value:e.data}}_getInvalidInput(e){let n=this._getOrReturnCtx(e);return P(n,{code:w.invalid_type,expected:U.bigint,received:n.parsedType}),z}gte(e,n){return this.setLimit("min",e,!0,V.toString(n))}gt(e,n){return this.setLimit("min",e,!1,V.toString(n))}lte(e,n){return this.setLimit("max",e,!0,V.toString(n))}lt(e,n){return this.setLimit("max",e,!1,V.toString(n))}setLimit(e,n,r,o){return new t({...this._def,checks:[...this._def.checks,{kind:e,value:n,inclusive:r,message:V.toString(o)}]})}_addCheck(e){return new t({...this._def,checks:[...this._def.checks,e]})}positive(e){return this._addCheck({kind:"min",value:BigInt(0),inclusive:!1,message:V.toString(e)})}negative(e){return this._addCheck({kind:"max",value:BigInt(0),inclusive:!1,message:V.toString(e)})}nonpositive(e){return this._addCheck({kind:"max",value:BigInt(0),inclusive:!0,message:V.toString(e)})}nonnegative(e){return this._addCheck({kind:"min",value:BigInt(0),inclusive:!0,message:V.toString(e)})}multipleOf(e,n){return this._addCheck({kind:"multipleOf",value:e,message:V.toString(n)})}get minValue(){let e=null;for(let n of this._def.checks)n.kind==="min"&&(e===null||n.value>e)&&(e=n.value);return e}get maxValue(){let e=null;for(let n of this._def.checks)n.kind==="max"&&(e===null||n.value<e)&&(e=n.value);return e}};cs.create=t=>{var e;return new cs({checks:[],typeName:q.ZodBigInt,coerce:(e=t==null?void 0:t.coerce)!=null?e:!1,...re(t)})};ls=class extends ae{_parse(e){if(this._def.coerce&&(e.data=!!e.data),this._getType(e)!==U.boolean){let r=this._getOrReturnCtx(e);return P(r,{code:w.invalid_type,expected:U.boolean,received:r.parsedType}),z}return Dt(e.data)}};ls.create=t=>new ls({typeName:q.ZodBoolean,coerce:(t==null?void 0:t.coerce)||!1,...re(t)});ds=class t extends ae{_parse(e){if(this._def.coerce&&(e.data=new Date(e.data)),this._getType(e)!==U.date){let s=this._getOrReturnCtx(e);return P(s,{code:w.invalid_type,expected:U.date,received:s.parsedType}),z}if(Number.isNaN(e.data.getTime())){let s=this._getOrReturnCtx(e);return P(s,{code:w.invalid_date}),z}let r=new bt,o;for(let s of this._def.checks)s.kind==="min"?e.data.getTime()<s.value&&(o=this._getOrReturnCtx(e,o),P(o,{code:w.too_small,message:s.message,inclusive:!0,exact:!1,minimum:s.value,type:"date"}),r.dirty()):s.kind==="max"?e.data.getTime()>s.value&&(o=this._getOrReturnCtx(e,o),P(o,{code:w.too_big,message:s.message,inclusive:!0,exact:!1,maximum:s.value,type:"date"}),r.dirty()):de.assertNever(s);return{status:r.value,value:new Date(e.data.getTime())}}_addCheck(e){return new t({...this._def,checks:[...this._def.checks,e]})}min(e,n){return this._addCheck({kind:"min",value:e.getTime(),message:V.toString(n)})}max(e,n){return this._addCheck({kind:"max",value:e.getTime(),message:V.toString(n)})}get minDate(){let e=null;for(let n of this._def.checks)n.kind==="min"&&(e===null||n.value>e)&&(e=n.value);return e!=null?new Date(e):null}get maxDate(){let e=null;for(let n of this._def.checks)n.kind==="max"&&(e===null||n.value<e)&&(e=n.value);return e!=null?new Date(e):null}};ds.create=t=>new ds({checks:[],coerce:(t==null?void 0:t.coerce)||!1,typeName:q.ZodDate,...re(t)});Va=class extends ae{_parse(e){if(this._getType(e)!==U.symbol){let r=this._getOrReturnCtx(e);return P(r,{code:w.invalid_type,expected:U.symbol,received:r.parsedType}),z}return Dt(e.data)}};Va.create=t=>new Va({typeName:q.ZodSymbol,...re(t)});us=class extends ae{_parse(e){if(this._getType(e)!==U.undefined){let r=this._getOrReturnCtx(e);return P(r,{code:w.invalid_type,expected:U.undefined,received:r.parsedType}),z}return Dt(e.data)}};us.create=t=>new us({typeName:q.ZodUndefined,...re(t)});ps=class extends ae{_parse(e){if(this._getType(e)!==U.null){let r=this._getOrReturnCtx(e);return P(r,{code:w.invalid_type,expected:U.null,received:r.parsedType}),z}return Dt(e.data)}};ps.create=t=>new ps({typeName:q.ZodNull,...re(t)});li=class extends ae{constructor(){super(...arguments),this._any=!0}_parse(e){return Dt(e.data)}};li.create=t=>new li({typeName:q.ZodAny,...re(t)});xo=class extends ae{constructor(){super(...arguments),this._unknown=!0}_parse(e){return Dt(e.data)}};xo.create=t=>new xo({typeName:q.ZodUnknown,...re(t)});lr=class extends ae{_parse(e){let n=this._getOrReturnCtx(e);return P(n,{code:w.invalid_type,expected:U.never,received:n.parsedType}),z}};lr.create=t=>new lr({typeName:q.ZodNever,...re(t)});ja=class extends ae{_parse(e){if(this._getType(e)!==U.undefined){let r=this._getOrReturnCtx(e);return P(r,{code:w.invalid_type,expected:U.void,received:r.parsedType}),z}return Dt(e.data)}};ja.create=t=>new ja({typeName:q.ZodVoid,...re(t)});Ao=class t extends ae{_parse(e){let{ctx:n,status:r}=this._processInputParams(e),o=this._def;if(n.parsedType!==U.array)return P(n,{code:w.invalid_type,expected:U.array,received:n.parsedType}),z;if(o.exactLength!==null){let a=n.data.length>o.exactLength.value,l=n.data.length<o.exactLength.value;(a||l)&&(P(n,{code:a?w.too_big:w.too_small,minimum:l?o.exactLength.value:void 0,maximum:a?o.exactLength.value:void 0,type:"array",inclusive:!0,exact:!0,message:o.exactLength.message}),r.dirty())}if(o.minLength!==null&&n.data.length<o.minLength.value&&(P(n,{code:w.too_small,minimum:o.minLength.value,type:"array",inclusive:!0,exact:!1,message:o.minLength.message}),r.dirty()),o.maxLength!==null&&n.data.length>o.maxLength.value&&(P(n,{code:w.too_big,maximum:o.maxLength.value,type:"array",inclusive:!0,exact:!1,message:o.maxLength.message}),r.dirty()),n.common.async)return Promise.all([...n.data].map((a,l)=>o.type._parseAsync(new Hn(n,a,n.path,l)))).then(a=>bt.mergeArray(r,a));let s=[...n.data].map((a,l)=>o.type._parseSync(new Hn(n,a,n.path,l)));return bt.mergeArray(r,s)}get element(){return this._def.type}min(e,n){return new t({...this._def,minLength:{value:e,message:V.toString(n)}})}max(e,n){return new t({...this._def,maxLength:{value:e,message:V.toString(n)}})}length(e,n){return new t({...this._def,exactLength:{value:e,message:V.toString(n)}})}nonempty(e){return this.min(1,e)}};Ao.create=(t,e)=>new Ao({type:t,minLength:null,maxLength:null,exactLength:null,typeName:q.ZodArray,...re(e)});an=class t extends ae{constructor(){super(...arguments),this._cached=null,this.nonstrict=this.passthrough,this.augment=this.extend}_getCached(){if(this._cached!==null)return this._cached;let e=this._def.shape(),n=de.objectKeys(e);return this._cached={shape:e,keys:n},this._cached}_parse(e){if(this._getType(e)!==U.object){let u=this._getOrReturnCtx(e);return P(u,{code:w.invalid_type,expected:U.object,received:u.parsedType}),z}let{status:r,ctx:o}=this._processInputParams(e),{shape:s,keys:a}=this._getCached(),l=[];if(!(this._def.catchall instanceof lr&&this._def.unknownKeys==="strip"))for(let u in o.data)a.includes(u)||l.push(u);let d=[];for(let u of a){let p=s[u],h=o.data[u];d.push({key:{status:"valid",value:u},value:p._parse(new Hn(o,h,o.path,u)),alwaysSet:u in o.data})}if(this._def.catchall instanceof lr){let u=this._def.unknownKeys;if(u==="passthrough")for(let p of l)d.push({key:{status:"valid",value:p},value:{status:"valid",value:o.data[p]}});else if(u==="strict")l.length>0&&(P(o,{code:w.unrecognized_keys,keys:l}),r.dirty());else if(u!=="strip")throw new Error("Internal ZodObject error: invalid unknownKeys value.")}else{let u=this._def.catchall;for(let p of l){let h=o.data[p];d.push({key:{status:"valid",value:p},value:u._parse(new Hn(o,h,o.path,p)),alwaysSet:p in o.data})}}return o.common.async?Promise.resolve().then(async()=>{let u=[];for(let p of d){let h=await p.key,m=await p.value;u.push({key:h,value:m,alwaysSet:p.alwaysSet})}return u}).then(u=>bt.mergeObjectSync(r,u)):bt.mergeObjectSync(r,d)}get shape(){return this._def.shape()}strict(e){return V.errToObj,new t({...this._def,unknownKeys:"strict",...e!==void 0?{errorMap:(n,r)=>{var s,a,l,d;let o=(l=(a=(s=this._def).errorMap)==null?void 0:a.call(s,n,r).message)!=null?l:r.defaultError;return n.code==="unrecognized_keys"?{message:(d=V.errToObj(e).message)!=null?d:o}:{message:o}}}:{}})}strip(){return new t({...this._def,unknownKeys:"strip"})}passthrough(){return new t({...this._def,unknownKeys:"passthrough"})}extend(e){return new t({...this._def,shape:()=>({...this._def.shape(),...e})})}merge(e){return new t({unknownKeys:e._def.unknownKeys,catchall:e._def.catchall,shape:()=>({...this._def.shape(),...e._def.shape()}),typeName:q.ZodObject})}setKey(e,n){return this.augment({[e]:n})}catchall(e){return new t({...this._def,catchall:e})}pick(e){let n={};for(let r of de.objectKeys(e))e[r]&&this.shape[r]&&(n[r]=this.shape[r]);return new t({...this._def,shape:()=>n})}omit(e){let n={};for(let r of de.objectKeys(this.shape))e[r]||(n[r]=this.shape[r]);return new t({...this._def,shape:()=>n})}deepPartial(){return Ba(this)}partial(e){let n={};for(let r of de.objectKeys(this.shape)){let o=this.shape[r];e&&!e[r]?n[r]=o:n[r]=o.optional()}return new t({...this._def,shape:()=>n})}required(e){let n={};for(let r of de.objectKeys(this.shape))if(e&&!e[r])n[r]=this.shape[r];else{let s=this.shape[r];for(;s instanceof $n;)s=s._def.innerType;n[r]=s}return new t({...this._def,shape:()=>n})}keyof(){return d_(de.objectKeys(this.shape))}};an.create=(t,e)=>new an({shape:()=>t,unknownKeys:"strip",catchall:lr.create(),typeName:q.ZodObject,...re(e)});an.strictCreate=(t,e)=>new an({shape:()=>t,unknownKeys:"strict",catchall:lr.create(),typeName:q.ZodObject,...re(e)});an.lazycreate=(t,e)=>new an({shape:t,unknownKeys:"strip",catchall:lr.create(),typeName:q.ZodObject,...re(e)});fs=class extends ae{_parse(e){let{ctx:n}=this._processInputParams(e),r=this._def.options;function o(s){for(let l of s)if(l.result.status==="valid")return l.result;for(let l of s)if(l.result.status==="dirty")return n.common.issues.push(...l.ctx.common.issues),l.result;let a=s.map(l=>new sn(l.ctx.common.issues));return P(n,{code:w.invalid_union,unionErrors:a}),z}if(n.common.async)return Promise.all(r.map(async s=>{let a={...n,common:{...n.common,issues:[]},parent:null};return{result:await s._parseAsync({data:n.data,path:n.path,parent:a}),ctx:a}})).then(o);{let s,a=[];for(let d of r){let u={...n,common:{...n.common,issues:[]},parent:null},p=d._parseSync({data:n.data,path:n.path,parent:u});if(p.status==="valid")return p;p.status==="dirty"&&!s&&(s={result:p,ctx:u}),u.common.issues.length&&a.push(u.common.issues)}if(s)return n.common.issues.push(...s.ctx.common.issues),s.result;let l=a.map(d=>new sn(d));return P(n,{code:w.invalid_union,unionErrors:l}),z}}get options(){return this._def.options}};fs.create=(t,e)=>new fs({options:t,typeName:q.ZodUnion,...re(e)});_o=t=>t instanceof ms?_o(t.schema):t instanceof Un?_o(t.innerType()):t instanceof gs?[t.value]:t instanceof Es?t.options:t instanceof bs?de.objectValues(t.enum):t instanceof Ts?_o(t._def.innerType):t instanceof us?[void 0]:t instanceof ps?[null]:t instanceof $n?[void 0,..._o(t.unwrap())]:t instanceof Hr?[null,..._o(t.unwrap())]:t instanceof nd||t instanceof _s?_o(t.unwrap()):t instanceof Ss?_o(t._def.innerType):[],kp=class t extends ae{_parse(e){let{ctx:n}=this._processInputParams(e);if(n.parsedType!==U.object)return P(n,{code:w.invalid_type,expected:U.object,received:n.parsedType}),z;let r=this.discriminator,o=n.data[r],s=this.optionsMap.get(o);return s?n.common.async?s._parseAsync({data:n.data,path:n.path,parent:n}):s._parseSync({data:n.data,path:n.path,parent:n}):(P(n,{code:w.invalid_union_discriminator,options:Array.from(this.optionsMap.keys()),path:[r]}),z)}get discriminator(){return this._def.discriminator}get options(){return this._def.options}get optionsMap(){return this._def.optionsMap}static create(e,n,r){let o=new Map;for(let s of n){let a=_o(s.shape[e]);if(!a.length)throw new Error(`A discriminator value for key \`${e}\` could not be extracted from all schema options`);for(let l of a){if(o.has(l))throw new Error(`Discriminator property ${String(e)} has duplicate value ${String(l)}`);o.set(l,s)}}return new t({typeName:q.ZodDiscriminatedUnion,discriminator:e,options:n,optionsMap:o,...re(r)})}};hs=class extends ae{_parse(e){let{status:n,ctx:r}=this._processInputParams(e),o=(s,a)=>{if(Cp(s)||Cp(a))return z;let l=Xm(s.value,a.value);return l.valid?((Lp(s)||Lp(a))&&n.dirty(),{status:n.value,value:l.data}):(P(r,{code:w.invalid_intersection_types}),z)};return r.common.async?Promise.all([this._def.left._parseAsync({data:r.data,path:r.path,parent:r}),this._def.right._parseAsync({data:r.data,path:r.path,parent:r})]).then(([s,a])=>o(s,a)):o(this._def.left._parseSync({data:r.data,path:r.path,parent:r}),this._def.right._parseSync({data:r.data,path:r.path,parent:r}))}};hs.create=(t,e,n)=>new hs({left:t,right:e,typeName:q.ZodIntersection,...re(n)});$r=class t extends ae{_parse(e){let{status:n,ctx:r}=this._processInputParams(e);if(r.parsedType!==U.array)return P(r,{code:w.invalid_type,expected:U.array,received:r.parsedType}),z;if(r.data.length<this._def.items.length)return P(r,{code:w.too_small,minimum:this._def.items.length,inclusive:!0,exact:!1,type:"array"}),z;!this._def.rest&&r.data.length>this._def.items.length&&(P(r,{code:w.too_big,maximum:this._def.items.length,inclusive:!0,exact:!1,type:"array"}),n.dirty());let s=[...r.data].map((a,l)=>{let d=this._def.items[l]||this._def.rest;return d?d._parse(new Hn(r,a,r.path,l)):null}).filter(a=>!!a);return r.common.async?Promise.all(s).then(a=>bt.mergeArray(n,a)):bt.mergeArray(n,s)}get items(){return this._def.items}rest(e){return new t({...this._def,rest:e})}};$r.create=(t,e)=>{if(!Array.isArray(t))throw new Error("You must pass an array of schemas to z.tuple([ ... ])");return new $r({items:t,typeName:q.ZodTuple,rest:null,...re(e)})};Dp=class t extends ae{get keySchema(){return this._def.keyType}get valueSchema(){return this._def.valueType}_parse(e){let{status:n,ctx:r}=this._processInputParams(e);if(r.parsedType!==U.object)return P(r,{code:w.invalid_type,expected:U.object,received:r.parsedType}),z;let o=[],s=this._def.keyType,a=this._def.valueType;for(let l in r.data)o.push({key:s._parse(new Hn(r,l,r.path,l)),value:a._parse(new Hn(r,r.data[l],r.path,l)),alwaysSet:l in r.data});return r.common.async?bt.mergeObjectAsync(n,o):bt.mergeObjectSync(n,o)}get element(){return this._def.valueType}static create(e,n,r){return n instanceof ae?new t({keyType:e,valueType:n,typeName:q.ZodRecord,...re(r)}):new t({keyType:ci.create(),valueType:e,typeName:q.ZodRecord,...re(n)})}},Ka=class extends ae{get keySchema(){return this._def.keyType}get valueSchema(){return this._def.valueType}_parse(e){let{status:n,ctx:r}=this._processInputParams(e);if(r.parsedType!==U.map)return P(r,{code:w.invalid_type,expected:U.map,received:r.parsedType}),z;let o=this._def.keyType,s=this._def.valueType,a=[...r.data.entries()].map(([l,d],u)=>({key:o._parse(new Hn(r,l,r.path,[u,"key"])),value:s._parse(new Hn(r,d,r.path,[u,"value"]))}));if(r.common.async){let l=new Map;return Promise.resolve().then(async()=>{for(let d of a){let u=await d.key,p=await d.value;if(u.status==="aborted"||p.status==="aborted")return z;(u.status==="dirty"||p.status==="dirty")&&n.dirty(),l.set(u.value,p.value)}return{status:n.value,value:l}})}else{let l=new Map;for(let d of a){let u=d.key,p=d.value;if(u.status==="aborted"||p.status==="aborted")return z;(u.status==="dirty"||p.status==="dirty")&&n.dirty(),l.set(u.value,p.value)}return{status:n.value,value:l}}}};Ka.create=(t,e,n)=>new Ka({valueType:e,keyType:t,typeName:q.ZodMap,...re(n)});Wa=class t extends ae{_parse(e){let{status:n,ctx:r}=this._processInputParams(e);if(r.parsedType!==U.set)return P(r,{code:w.invalid_type,expected:U.set,received:r.parsedType}),z;let o=this._def;o.minSize!==null&&r.data.size<o.minSize.value&&(P(r,{code:w.too_small,minimum:o.minSize.value,type:"set",inclusive:!0,exact:!1,message:o.minSize.message}),n.dirty()),o.maxSize!==null&&r.data.size>o.maxSize.value&&(P(r,{code:w.too_big,maximum:o.maxSize.value,type:"set",inclusive:!0,exact:!1,message:o.maxSize.message}),n.dirty());let s=this._def.valueType;function a(d){let u=new Set;for(let p of d){if(p.status==="aborted")return z;p.status==="dirty"&&n.dirty(),u.add(p.value)}return{status:n.value,value:u}}let l=[...r.data.values()].map((d,u)=>s._parse(new Hn(r,d,r.path,u)));return r.common.async?Promise.all(l).then(d=>a(d)):a(l)}min(e,n){return new t({...this._def,minSize:{value:e,message:V.toString(n)}})}max(e,n){return new t({...this._def,maxSize:{value:e,message:V.toString(n)}})}size(e,n){return this.min(e,n).max(e,n)}nonempty(e){return this.min(1,e)}};Wa.create=(t,e)=>new Wa({valueType:t,minSize:null,maxSize:null,typeName:q.ZodSet,...re(e)});Mp=class t extends ae{constructor(){super(...arguments),this.validate=this.implement}_parse(e){let{ctx:n}=this._processInputParams(e);if(n.parsedType!==U.function)return P(n,{code:w.invalid_type,expected:U.function,received:n.parsedType}),z;function r(l,d){return td({data:l,path:n.path,errorMaps:[n.common.contextualErrorMap,n.schemaErrorMap,Fa(),So].filter(u=>!!u),issueData:{code:w.invalid_arguments,argumentsError:d}})}function o(l,d){return td({data:l,path:n.path,errorMaps:[n.common.contextualErrorMap,n.schemaErrorMap,Fa(),So].filter(u=>!!u),issueData:{code:w.invalid_return_type,returnTypeError:d}})}let s={errorMap:n.common.contextualErrorMap},a=n.data;if(this._def.returns instanceof di){let l=this;return Dt(async function(...d){let u=new sn([]),p=await l._def.args.parseAsync(d,s).catch(g=>{throw u.addIssue(r(d,g)),u}),h=await Reflect.apply(a,this,p);return await l._def.returns._def.type.parseAsync(h,s).catch(g=>{throw u.addIssue(o(h,g)),u})})}else{let l=this;return Dt(function(...d){let u=l._def.args.safeParse(d,s);if(!u.success)throw new sn([r(d,u.error)]);let p=Reflect.apply(a,this,u.data),h=l._def.returns.safeParse(p,s);if(!h.success)throw new sn([o(p,h.error)]);return h.data})}}parameters(){return this._def.args}returnType(){return this._def.returns}args(...e){return new t({...this._def,args:$r.create(e).rest(xo.create())})}returns(e){return new t({...this._def,returns:e})}implement(e){return this.parse(e)}strictImplement(e){return this.parse(e)}static create(e,n,r){return new t({args:e||$r.create([]).rest(xo.create()),returns:n||xo.create(),typeName:q.ZodFunction,...re(r)})}},ms=class extends ae{get schema(){return this._def.getter()}_parse(e){let{ctx:n}=this._processInputParams(e);return this._def.getter()._parse({data:n.data,path:n.path,parent:n})}};ms.create=(t,e)=>new ms({getter:t,typeName:q.ZodLazy,...re(e)});gs=class extends ae{_parse(e){if(e.data!==this._def.value){let n=this._getOrReturnCtx(e);return P(n,{received:n.data,code:w.invalid_literal,expected:this._def.value}),z}return{status:"valid",value:e.data}}get value(){return this._def.value}};gs.create=(t,e)=>new gs({value:t,typeName:q.ZodLiteral,...re(e)});Es=class t extends ae{_parse(e){if(typeof e.data!="string"){let n=this._getOrReturnCtx(e),r=this._def.values;return P(n,{expected:de.joinValues(r),received:n.parsedType,code:w.invalid_type}),z}if(this._cache||(this._cache=new Set(this._def.values)),!this._cache.has(e.data)){let n=this._getOrReturnCtx(e),r=this._def.values;return P(n,{received:n.data,code:w.invalid_enum_value,options:r}),z}return Dt(e.data)}get options(){return this._def.values}get enum(){let e={};for(let n of this._def.values)e[n]=n;return e}get Values(){let e={};for(let n of this._def.values)e[n]=n;return e}get Enum(){let e={};for(let n of this._def.values)e[n]=n;return e}extract(e,n=this._def){return t.create(e,{...this._def,...n})}exclude(e,n=this._def){return t.create(this.options.filter(r=>!e.includes(r)),{...this._def,...n})}};Es.create=d_;bs=class extends ae{_parse(e){let n=de.getValidEnumValues(this._def.values),r=this._getOrReturnCtx(e);if(r.parsedType!==U.string&&r.parsedType!==U.number){let o=de.objectValues(n);return P(r,{expected:de.joinValues(o),received:r.parsedType,code:w.invalid_type}),z}if(this._cache||(this._cache=new Set(de.getValidEnumValues(this._def.values))),!this._cache.has(e.data)){let o=de.objectValues(n);return P(r,{received:r.data,code:w.invalid_enum_value,options:o}),z}return Dt(e.data)}get enum(){return this._def.values}};bs.create=(t,e)=>new bs({values:t,typeName:q.ZodNativeEnum,...re(e)});di=class extends ae{unwrap(){return this._def.type}_parse(e){let{ctx:n}=this._processInputParams(e);if(n.parsedType!==U.promise&&n.common.async===!1)return P(n,{code:w.invalid_type,expected:U.promise,received:n.parsedType}),z;let r=n.parsedType===U.promise?n.data:Promise.resolve(n.data);return Dt(r.then(o=>this._def.type.parseAsync(o,{path:n.path,errorMap:n.common.contextualErrorMap})))}};di.create=(t,e)=>new di({type:t,typeName:q.ZodPromise,...re(e)});Un=class extends ae{innerType(){return this._def.schema}sourceType(){return this._def.schema._def.typeName===q.ZodEffects?this._def.schema.sourceType():this._def.schema}_parse(e){let{status:n,ctx:r}=this._processInputParams(e),o=this._def.effect||null,s={addIssue:a=>{P(r,a),a.fatal?n.abort():n.dirty()},get path(){return r.path}};if(s.addIssue=s.addIssue.bind(s),o.type==="preprocess"){let a=o.transform(r.data,s);if(r.common.async)return Promise.resolve(a).then(async l=>{if(n.value==="aborted")return z;let d=await this._def.schema._parseAsync({data:l,path:r.path,parent:r});return d.status==="aborted"?z:d.status==="dirty"?ss(d.value):n.value==="dirty"?ss(d.value):d});{if(n.value==="aborted")return z;let l=this._def.schema._parseSync({data:a,path:r.path,parent:r});return l.status==="aborted"?z:l.status==="dirty"?ss(l.value):n.value==="dirty"?ss(l.value):l}}if(o.type==="refinement"){let a=l=>{let d=o.refinement(l,s);if(r.common.async)return Promise.resolve(d);if(d instanceof Promise)throw new Error("Async refinement encountered during synchronous parse operation. Use .parseAsync instead.");return l};if(r.common.async===!1){let l=this._def.schema._parseSync({data:r.data,path:r.path,parent:r});return l.status==="aborted"?z:(l.status==="dirty"&&n.dirty(),a(l.value),{status:n.value,value:l.value})}else return this._def.schema._parseAsync({data:r.data,path:r.path,parent:r}).then(l=>l.status==="aborted"?z:(l.status==="dirty"&&n.dirty(),a(l.value).then(()=>({status:n.value,value:l.value}))))}if(o.type==="transform")if(r.common.async===!1){let a=this._def.schema._parseSync({data:r.data,path:r.path,parent:r});if(!ai(a))return z;let l=o.transform(a.value,s);if(l instanceof Promise)throw new Error("Asynchronous transform encountered during synchronous parse operation. Use .parseAsync instead.");return{status:n.value,value:l}}else return this._def.schema._parseAsync({data:r.data,path:r.path,parent:r}).then(a=>ai(a)?Promise.resolve(o.transform(a.value,s)).then(l=>({status:n.value,value:l})):z);de.assertNever(o)}};Un.create=(t,e,n)=>new Un({schema:t,typeName:q.ZodEffects,effect:e,...re(n)});Un.createWithPreprocess=(t,e,n)=>new Un({schema:e,effect:{type:"preprocess",transform:t},typeName:q.ZodEffects,...re(n)});$n=class extends ae{_parse(e){return this._getType(e)===U.undefined?Dt(void 0):this._def.innerType._parse(e)}unwrap(){return this._def.innerType}};$n.create=(t,e)=>new $n({innerType:t,typeName:q.ZodOptional,...re(e)});Hr=class extends ae{_parse(e){return this._getType(e)===U.null?Dt(null):this._def.innerType._parse(e)}unwrap(){return this._def.innerType}};Hr.create=(t,e)=>new Hr({innerType:t,typeName:q.ZodNullable,...re(e)});Ts=class extends ae{_parse(e){let{ctx:n}=this._processInputParams(e),r=n.data;return n.parsedType===U.undefined&&(r=this._def.defaultValue()),this._def.innerType._parse({data:r,path:n.path,parent:n})}removeDefault(){return this._def.innerType}};Ts.create=(t,e)=>new Ts({innerType:t,typeName:q.ZodDefault,defaultValue:typeof e.default=="function"?e.default:()=>e.default,...re(e)});Ss=class extends ae{_parse(e){let{ctx:n}=this._processInputParams(e),r={...n,common:{...n.common,issues:[]}},o=this._def.innerType._parse({data:r.data,path:r.path,parent:{...r}});return Ga(o)?o.then(s=>({status:"valid",value:s.status==="valid"?s.value:this._def.catchValue({get error(){return new sn(r.common.issues)},input:r.data})})):{status:"valid",value:o.status==="valid"?o.value:this._def.catchValue({get error(){return new sn(r.common.issues)},input:r.data})}}removeCatch(){return this._def.innerType}};Ss.create=(t,e)=>new Ss({innerType:t,typeName:q.ZodCatch,catchValue:typeof e.catch=="function"?e.catch:()=>e.catch,...re(e)});za=class extends ae{_parse(e){if(this._getType(e)!==U.nan){let r=this._getOrReturnCtx(e);return P(r,{code:w.invalid_type,expected:U.nan,received:r.parsedType}),z}return{status:"valid",value:e.data}}};za.create=t=>new za({typeName:q.ZodNaN,...re(t)});Jk=Symbol("zod_brand"),nd=class extends ae{_parse(e){let{ctx:n}=this._processInputParams(e),r=n.data;return this._def.type._parse({data:r,path:n.path,parent:n})}unwrap(){return this._def.type}},rd=class t extends ae{_parse(e){let{status:n,ctx:r}=this._processInputParams(e);if(r.common.async)return(async()=>{let s=await this._def.in._parseAsync({data:r.data,path:r.path,parent:r});return s.status==="aborted"?z:s.status==="dirty"?(n.dirty(),ss(s.value)):this._def.out._parseAsync({data:s.value,path:r.path,parent:r})})();{let o=this._def.in._parseSync({data:r.data,path:r.path,parent:r});return o.status==="aborted"?z:o.status==="dirty"?(n.dirty(),{status:"dirty",value:o.value}):this._def.out._parseSync({data:o.value,path:r.path,parent:r})}}static create(e,n){return new t({in:e,out:n,typeName:q.ZodPipeline})}},_s=class extends ae{_parse(e){let n=this._def.innerType._parse(e),r=o=>(ai(o)&&(o.value=Object.freeze(o.value)),o);return Ga(n)?n.then(o=>r(o)):r(n)}unwrap(){return this._def.innerType}};_s.create=(t,e)=>new _s({innerType:t,typeName:q.ZodReadonly,...re(e)});eD={object:an.lazycreate};(function(t){t.ZodString="ZodString",t.ZodNumber="ZodNumber",t.ZodNaN="ZodNaN",t.ZodBigInt="ZodBigInt",t.ZodBoolean="ZodBoolean",t.ZodDate="ZodDate",t.ZodSymbol="ZodSymbol",t.ZodUndefined="ZodUndefined",t.ZodNull="ZodNull",t.ZodAny="ZodAny",t.ZodUnknown="ZodUnknown",t.ZodNever="ZodNever",t.ZodVoid="ZodVoid",t.ZodArray="ZodArray",t.ZodObject="ZodObject",t.ZodUnion="ZodUnion",t.ZodDiscriminatedUnion="ZodDiscriminatedUnion",t.ZodIntersection="ZodIntersection",t.ZodTuple="ZodTuple",t.ZodRecord="ZodRecord",t.ZodMap="ZodMap",t.ZodSet="ZodSet",t.ZodFunction="ZodFunction",t.ZodLazy="ZodLazy",t.ZodLiteral="ZodLiteral",t.ZodEnum="ZodEnum",t.ZodEffects="ZodEffects",t.ZodNativeEnum="ZodNativeEnum",t.ZodOptional="ZodOptional",t.ZodNullable="ZodNullable",t.ZodDefault="ZodDefault",t.ZodCatch="ZodCatch",t.ZodPromise="ZodPromise",t.ZodBranded="ZodBranded",t.ZodPipeline="ZodPipeline",t.ZodReadonly="ZodReadonly"})(q||(q={}));tD=(t,e={message:`Input not instance of ${t.name}`})=>u_(n=>n instanceof t,e),p_=ci.create,f_=as.create,nD=za.create,rD=cs.create,h_=ls.create,oD=ds.create,iD=Va.create,sD=us.create,aD=ps.create,cD=li.create,lD=xo.create,dD=lr.create,uD=ja.create,pD=Ao.create,fD=an.create,hD=an.strictCreate,mD=fs.create,gD=kp.create,ED=hs.create,bD=$r.create,TD=Dp.create,SD=Ka.create,_D=Wa.create,xD=Mp.create,AD=ms.create,yD=gs.create,vD=Es.create,RD=bs.create,ND=di.create,wD=Un.create,OD=$n.create,ID=Hr.create,CD=Un.createWithPreprocess,LD=rd.create,kD=()=>p_().optional(),DD=()=>f_().optional(),MD=()=>h_().optional(),PD={string:(t=>ci.create({...t,coerce:!0})),number:(t=>as.create({...t,coerce:!0})),boolean:(t=>ls.create({...t,coerce:!0})),bigint:(t=>cs.create({...t,coerce:!0})),date:(t=>ds.create({...t,coerce:!0}))},$D=z});var i={};Ua(i,{BRAND:()=>Jk,DIRTY:()=>ss,EMPTY_PATH:()=>Ck,INVALID:()=>z,NEVER:()=>$D,OK:()=>Dt,ParseStatus:()=>bt,Schema:()=>ae,ZodAny:()=>li,ZodArray:()=>Ao,ZodBigInt:()=>cs,ZodBoolean:()=>ls,ZodBranded:()=>nd,ZodCatch:()=>Ss,ZodDate:()=>ds,ZodDefault:()=>Ts,ZodDiscriminatedUnion:()=>kp,ZodEffects:()=>Un,ZodEnum:()=>Es,ZodError:()=>sn,ZodFirstPartyTypeKind:()=>q,ZodFunction:()=>Mp,ZodIntersection:()=>hs,ZodIssueCode:()=>w,ZodLazy:()=>ms,ZodLiteral:()=>gs,ZodMap:()=>Ka,ZodNaN:()=>za,ZodNativeEnum:()=>bs,ZodNever:()=>lr,ZodNull:()=>ps,ZodNullable:()=>Hr,ZodNumber:()=>as,ZodObject:()=>an,ZodOptional:()=>$n,ZodParsedType:()=>U,ZodPipeline:()=>rd,ZodPromise:()=>di,ZodReadonly:()=>_s,ZodRecord:()=>Dp,ZodSchema:()=>ae,ZodSet:()=>Wa,ZodString:()=>ci,ZodSymbol:()=>Va,ZodTransformer:()=>Un,ZodTuple:()=>$r,ZodType:()=>ae,ZodUndefined:()=>us,ZodUnion:()=>fs,ZodUnknown:()=>xo,ZodVoid:()=>ja,addIssueToContext:()=>P,any:()=>cD,array:()=>pD,bigint:()=>rD,boolean:()=>h_,coerce:()=>PD,custom:()=>u_,date:()=>oD,datetimeRegex:()=>l_,defaultErrorMap:()=>So,discriminatedUnion:()=>gD,effect:()=>wD,enum:()=>vD,function:()=>xD,getErrorMap:()=>Fa,getParsedType:()=>Pr,instanceof:()=>tD,intersection:()=>ED,isAborted:()=>Cp,isAsync:()=>Ga,isDirty:()=>Lp,isValid:()=>ai,late:()=>eD,lazy:()=>AD,literal:()=>yD,makeIssue:()=>td,map:()=>SD,nan:()=>nD,nativeEnum:()=>RD,never:()=>dD,null:()=>aD,nullable:()=>ID,number:()=>f_,object:()=>fD,objectUtil:()=>Km,oboolean:()=>MD,onumber:()=>DD,optional:()=>OD,ostring:()=>kD,pipeline:()=>LD,preprocess:()=>CD,promise:()=>ND,quotelessJson:()=>wk,record:()=>TD,set:()=>_D,setErrorMap:()=>Ik,strictObject:()=>hD,string:()=>p_,symbol:()=>iD,transformer:()=>wD,tuple:()=>bD,undefined:()=>sD,union:()=>mD,unknown:()=>lD,util:()=>de,void:()=>uD});var qm=S(()=>{Ip();zm();r_();ed();m_();Op()});var J=S(()=>{qm();qm()});var Ya,Zm=S(()=>{"use strict";Ya={ACT:"reticle_act",ACT_SEQUENCE:"reticle_act_sequence",ACT_AND_WAIT:"reticle_act_and_wait",INVOKE:"reticle_invoke"}});var Pp,Qm,Jm,I,zj,HD,Yj,yo=S(()=>{"use strict";Pp={SIGNAL:"signal",NET:"net",STATE:"state"},Qm={ELEMENT:"element",TEXT:"text"},Jm={NETWORK:"network",APP:"app"},I={ELEMENT:Qm.ELEMENT,TEXT:Qm.TEXT,SIGNAL:Pp.SIGNAL,NET:Pp.NET,STATE:Pp.STATE,ROUTE:"route",CONSOLE:"console",ANIMATION:"animation",SETTLED:"settled",COMPARE:"compare",ALL_OF:"allOf",ANY_OF:"anyOf",NOT:"not"},zj=new Set(Object.values(Pp)),HD=new Set(Object.values(Qm)),Yj=new Set([...HD,I.ROUTE])});var g_,E_,b_,eg,UD,T_,Fn,S_,De,jt,$p,od=S(()=>{"use strict";g_=1,E_={FLOW_REPLAY:"flow_replay",MANUAL:"manual"},b_={PASS:"pass",DRIFT:"drift",ERROR:"error",FAIL:"fail"},eg=2,UD=3,T_=new Set([1,eg,UD]),Fn={TESTID:"testid",ROLE:"role",SIGNAL:"signal",COMPONENT:"component"},S_="unresolved",De={ASSERT_SIGNAL:"assert-signal",ASSERT_VISIBLE:"assert-visible",ASSERT_STATE:"assert-state",ASSERT_NET:"assert-net",MARK_DYNAMIC:"mark-dynamic",SUCCESS_STATE:"success-state",INTENT:"intent"},jt={IDLE:"idle",RECORDING:"recording",ANNOTATING:"annotating"},$p={ACTIVE:"active",QUARANTINED:"quarantined",DRAFT:"draft"}});var __,tg=S(()=>{"use strict";__={READ:"read",IDEMPOTENT:"idempotent",COMMITS:"commits"}});var x_=S(()=>{"use strict"});var x,id,xs,A_=S(()=>{"use strict";x={DOM_ADDED:"dom.added",DOM_REMOVED:"dom.removed",DOM_ATTR:"dom.attr",DOM_TEXT:"dom.text",NET_REQUEST:"net.request",NET_PENDING:"net.pending",NET_STREAM:"net.stream",PERF:"perf",ROUTE_CHANGE:"route.change",CONSOLE_LOG:"console.log",CONSOLE_WARN:"console.warn",CONSOLE_ERROR:"console.error",CONSOLE_INFO:"console.info",CONSOLE_DEBUG:"console.debug",ERROR_UNCAUGHT:"error.uncaught",VISIBLE_SHOWN:"visible.shown",ANIM_START:"anim.start",ANIM_END:"anim.end",SCROLL_POSITION:"scroll.position",REVEAL_SHOWN:"reveal.shown",SIGNAL:"signal",STATE_CHANGE:"state.change",STORAGE_CHANGE:"storage.change",PAGE_HEALTH:"page.health",CONTEXT_OPENED:"context.opened",DIALOG_OPENED:"dialog.opened",RENDER_COMMIT:"render.commit",FOCUS_CHANGE:"focus.change",FIELD_CHANGE:"field.change",FLOW_RECORDED:"flow.recorded",TRANSPORT_OVERFLOW:"transport.overflow",TRUNCATED:"truncated",BLIND_SPOT:"blind-spot",SDK_FAILED:"sdk.failed",NET_DETAIL:"net.detail",HUMAN_CONTROL:"human.control",HUMAN_MARK:"human.mark",DOWNLOAD:"download",HUD_USED:"hud.used",MEDIA_STATE:"media.state",CANVAS_DIGEST:"canvas.digest"},id={PLAY:"play",PLAYING:"playing",PAUSE:"pause",SEEKED:"seeked",ENDED:"ended",LOADED_DATA:"loadeddata",CAN_PLAY:"canplay",WAITING:"waiting",ERROR:"error"},xs={POLL:"poll",ACT:"act"}});function v_(t=ng,e=FD){return`ws://${e}:${String(t)}${As}`}var ng,As,Hp,y_,FD,Gn,Up,e6,G,ye,Fp,R_,N_,w_,Xa,t6,O_,r6,sd,Gp,Bp,I_,qa,ad,GD,o6,L,C_,L_,ue,et,k,We,Za,Kt,Wt=S(()=>{"use strict";x_();A_();ng=4400,As="/reticle",Hp=1,y_=1,FD="localhost";Gn={SESSION:"__reticle_session",PROJECT:"__reticle_project",OPENED:"__reticle_opened",HUD:"__reticle_hud"},Up="https://app.reticle.sh",e6={MAX_RUNS:50,MAX_BYTES:4*1024*1024},G={MAX_MESSAGE_BYTES:1024*1024,MAX_MESSAGES_PER_SECOND:2e4,MAX_SESSIONS:32,MAX_PENDING_CONNECTIONS:16,HELLO_TIMEOUT_MS:5e3,MAX_BUFFER_BYTES:8*1024*1024,MAX_SESSION_ID_LENGTH:128,MAX_URL_LENGTH:4096,MAX_TITLE_LENGTH:512,MAX_ADAPTERS:32,MAX_CONTRACT_NAMES:128,MAX_ADAPTER_NAME_LENGTH:128,MAX_TOKEN_LENGTH:512,MAX_COMMAND_ID_LENGTH:128,MAX_COMMAND_NAME_LENGTH:128,MAX_REF_LENGTH:128,MAX_ERROR_LENGTH:4096,MAX_STACK_LENGTH:4e3,MAX_SERIALIZE_DEPTH:8,MAX_COLLECTION_ITEMS:200,MAX_OBJECT_KEYS:200,MAX_STRING_LENGTH:64*1024,MAX_MARK_NOTE_LENGTH:2e3,MAX_MARK_LABEL_LENGTH:256},ye="[REDACTED]",Fp="confirmDangerous",R_="native",N_="reveal",w_="inViewport",Xa={NO_PROVIDER:"no-visual-provider",CAPTURE_FAILED:"capture-failed",BASELINE_MISSING:"baseline-missing",DIMENSION_MISMATCH:"dimension-mismatch",FULL_PAGE_UNSUPPORTED:"full-page-unsupported",CROP_UNSUPPORTED:"crop-unsupported",NOT_COMPOSITED:"window-not-composited"},t6=1440*60*1e3,O_=1,r6={MAX_EVENTS:2e3,MAX_AGE_MS:6e4,MAX_BYTES:G.MAX_BUFFER_BYTES},sd="reticle:busy",Gp="__reticle_renders",Bp={DOM:"dom",JOURNAL:"journal"},I_={WINDOW:"window"},qa={LCP:"lcp",CLS:"cls",LONGTASK:"longtask"},ad={HOVER_NATIVE_ENTER_LEAVE:"target has enter/leave handlers; synthetic hover may not trigger them \u2014 expect no state change",REAL_INPUT_FELL_BACK:"real-input provider was available but failed; fell back to synthetic dispatch",CLICK_OCCLUDED:"target is visually occluded by another element; a real user could not click it (synthetic dispatch still delivered the event) \u2014 dismiss the overlay or scroll the target clear",GLOBAL_PRESS:"press landed on the focused element or document \u2014 no named target was given, so this effect does not claim one",CLICK_NOT_A_CONTROL:"target is not a control and sits inside none (no button/link/input role, onclick, tabindex or pointer cursor), so a click on it may do nothing \u2014 if nothing happened, target the control inside it by role"},GD="console.",o6=[x.CONSOLE_LOG,x.CONSOLE_WARN,x.CONSOLE_ERROR,x.CONSOLE_INFO].map(t=>t.slice(GD.length)),L={CLICK:"click",DBLCLICK:"dblclick",HOVER:"hover",FOCUS:"focus",BLUR:"blur",FILL:"fill",TYPE:"type",CLEAR:"clear",SELECT:"select",CHECK:"check",UNCHECK:"uncheck",SUBMIT:"submit",PRESS:"press",UPLOAD:"upload",SCROLL_INTO_VIEW:"scrollIntoView",SCROLL:"scroll",DRAG:"drag",TAP:"tap",ZOOM:"zoom"},C_={TIMEOUT:"timeout",THROTTLED:"throttled"},L_={UNAVAILABLE:"component-state-unavailable"},ue={VISIBLE:"visible",HIDDEN:"hidden",ENABLED:"enabled",DISABLED:"disabled",CHECKED:"checked",EXPANDED:"expanded",PRESSED:"pressed",FOCUSED:"focused",PRESENT:"present",IN_VIEWPORT:"inViewport"},et={ROLE:"role",TEXT:"text",LABEL:"label",PLACEHOLDER:"placeholder",TESTID:"testid",ALT:"alt",COMPONENT:"component"},k={SNAPSHOT:"snapshot",QUERY:"query",MATCH:"match",INSPECT:"inspect",ACT:"act",ACT_SEQUENCE:"act_sequence",ANIMATIONS:"animations",NARRATE:"narrate",CLOCK:"clock",CAPABILITIES:"capabilities",STATE_READ:"state_read",STORAGE_READ:"storage_read",SCROLL:"scroll",SESSION_CONFIG:"session_config",PRESENTER:"presenter",IMPACT:"impact",CAPTURE:"capture",RENDER:"render",NAVIGATE:"navigate",REFRESH:"refresh",FLOWS:"flows",FLOW_PROGRESS:"flow.progress",PLAN:"plan",MARKERS:"markers"},We={IDLE:"idle",READING:"reading",ACTING:"acting"},Za={FULL:"full",INTERACTIVE:"interactive",STATUS:"status"},Kt={HELLO:"hello",COMMAND:"command",COMMAND_RESULT:"command_result",EVENT:"event"}});var Bn,BD,Vn,c6,ys=S(()=>{"use strict";J();Bn={WEB:"web",DESKTOP:"desktop",MOBILE:"mobile",SERVICE:"service",GAME:"game",DEVICE:"device"},BD=i.union([i.nativeEnum(Bn),i.string().regex(/^x-[a-z0-9-]+$/,"a surface this specification does not name must start with x-")]),Vn=i.object({surface:BD,instance:i.string().min(1),epoch:i.number().int().nonnegative().optional(),locator:i.string().optional(),revision:i.string().optional()}),c6=i.object({kind:i.enum(["instance","epoch"]),from:i.string(),to:i.string()})});var R,_n,cn,zt,rg,og,dr=S(()=>{"use strict";J();R={UI:"ui",NET:"net",STATE:"state",SIGNAL:"signal",LOG:"log",ROUTE:"route",STORAGE:"storage",TIME:"time",VISUAL:"visual"},_n=i.union([i.nativeEnum(R),i.string().regex(/^x-[a-z0-9-]+$/,"a channel this specification does not name must start with x-")]),cn={INDEPENDENT:"independent",ACTUATION_DERIVED:"actuation-derived"},zt={CONSEQUENCE:"consequence",PRESENCE:"presence",CONTEXT:"context"},rg=i.object({id:_n,independence:i.nativeEnum(cn),grade:i.nativeEnum(zt),note:i.string().optional()}),og={[R.UI]:{independence:cn.ACTUATION_DERIVED,grade:zt.PRESENCE},[R.NET]:{independence:cn.INDEPENDENT,grade:zt.CONSEQUENCE},[R.STATE]:{independence:cn.ACTUATION_DERIVED,grade:zt.CONSEQUENCE},[R.SIGNAL]:{independence:cn.ACTUATION_DERIVED,grade:zt.CONSEQUENCE},[R.LOG]:{independence:cn.INDEPENDENT,grade:zt.CONTEXT},[R.ROUTE]:{independence:cn.ACTUATION_DERIVED,grade:zt.PRESENCE},[R.STORAGE]:{independence:cn.ACTUATION_DERIVED,grade:zt.CONSEQUENCE},[R.TIME]:{independence:cn.INDEPENDENT,grade:zt.CONTEXT},[R.VISUAL]:{independence:cn.ACTUATION_DERIVED,grade:zt.PRESENCE}}});var k_=S(()=>{"use strict"});var m6,D_=S(()=>{"use strict";J();ys();m6=i.object({id:i.string().min(1),subject:Vn,capturedAt:i.number().int(),payload:i.unknown().optional()})});var b6,M_=S(()=>{"use strict";J();b6=i.object({mutation:i.string().min(1)})});var VD,ig,jD,KD,P_,$_,sg,H_,U_,cd=S(()=>{"use strict";J();dr();VD={USER:"user",DEVELOPER:"developer",AGENT:"agent",SYSTEM:"system",WORKFLOW:"workflow",DERIVED:"derived"},ig={DECLARED:"declared",BOUND:"bound",ABANDONED:"abandoned"},jD=i.object({id:i.string().min(1),statement:i.string().min(1),origin:i.nativeEnum(VD),claims:i.array(i.string()).default([]),declaredAt:i.number().int().optional()}),KD=i.discriminatedUnion("status",[i.object({status:i.literal(ig.ABANDONED),abandonedBecause:i.string().trim().min(1)}),i.object({status:i.literal(ig.DECLARED),abandonedBecause:i.undefined().optional()}),i.object({status:i.literal(ig.BOUND),abandonedBecause:i.undefined().optional()})]),P_=jD.and(KD),$_={BEFORE_ACTION:"before-action",AFTER_ACTION:"after-action"},sg=i.object({id:i.string().min(1),predicate:i.unknown(),reads:i.string().min(1),channels:i.array(_n).min(1)}),H_=i.object({id:i.string().min(1),intent:i.string().optional(),statement:i.string().min(1),declaredAt:i.nativeEnum($_),assertions:i.array(sg).default([])}),U_=i.object({id:i.string().min(1),statement:i.string().min(1),predicate:i.unknown(),channels:i.array(_n).min(1),severity:i.enum(["blocking","advisory"]).default("blocking")})});var WD,Qa,R6,ag,F_,G_,zD,B_,ui=S(()=>{"use strict";J();dr();ys();WD=i.object({id:i.string().min(1),window:i.string().min(1),channel:_n,at:i.number().int(),value:i.unknown(),summary:i.string().min(1)}),Qa={AUTHORITATIVE:"authoritative",DERIVED:"derived",OBSERVED:"observed",LEARNED:"learned"},R6={[Qa.LEARNED]:0,[Qa.OBSERVED]:1,[Qa.DERIVED]:2,[Qa.AUTHORITATIVE]:3},ag=i.object({class:i.nativeEnum(Qa),source:i.string().min(1),method:i.string().min(1),subject:Vn,at:i.number().int(),confidence:i.number().min(0).max(1).optional()}),F_=i.object({observation:WD,provenance:ag,independence:i.nativeEnum(cn),grade:i.nativeEnum(zt)}),G_={CHANNEL_UNOBSERVED:"channel-unobserved",BOUNDARY_UNCROSSABLE:"boundary-uncrossable",BUFFER_TRUNCATED:"buffer-truncated",REDACTED:"redacted",STILL_IN_FLIGHT:"still-in-flight",EFFECT_ELSEWHERE:"effect-elsewhere"},zD=i.object({kind:i.nativeEnum(G_),channel:_n.optional(),detail:i.string().min(1),impeaching:i.boolean(),remedy:i.string().optional()}),B_=i.object({window:i.string().min(1),observed:i.array(_n),blindSpots:i.array(zD)})});var XD,qD,Vp,ZD,jp,cg,C6,V_=S(()=>{"use strict";J();dr();ui();XD=i.object({channel:_n}),qD=i.union([i.object({summary:i.string().min(1),valueContains:i.string().min(1)}),i.object({summary:i.string().min(1).optional(),valueContains:i.undefined().optional()})]),Vp=XD.and(qD),ZD={EXACTLY:"exactly",AT_LEAST:"at-least",AT_MOST:"at-most"},jp={COUNT:"count",PRESENT:"present",ABSENT:"absent",MEASURE:"measure"},cg={EQUALS:"equals",AT_LEAST:"at-least",AT_MOST:"at-most"},C6=i.discriminatedUnion("kind",[i.object({kind:i.literal(jp.COUNT),match:Vp,op:i.nativeEnum(ZD),value:i.number().int().nonnegative()}),i.object({kind:i.literal(jp.PRESENT),match:Vp}),i.object({kind:i.literal(jp.ABSENT),match:Vp}),i.object({kind:i.literal(jp.MEASURE),match:Vp,op:i.nativeEnum(cg),value:i.number().finite(),tolerance:i.number().nonnegative().finite().default(0)})])});var M6,lg,P6,Kp,j_,ld,K_,$6,vs=S(()=>{"use strict";J();ys();M6=i.object({name:i.string().min(1),meaning:i.string().min(1),parameters:i.unknown().optional(),mutating:i.boolean()}),lg={UNDECLARED:"undeclared",UNSUPPORTED:"unsupported",UNRESOLVED:"unresolved",UNAVAILABLE:"unavailable",GUARDED:"guarded",MALFORMED:"malformed"},P6=i.object({ref:i.string().min(1),describes:i.string().min(1),at:i.string().optional()}),Kp=i.object({id:i.string().min(1),actor:i.string().min(1),capability:i.string().min(1),target:i.string().optional(),parameters:i.unknown().optional(),at:i.number().int()}),j_=i.object({action:i.string().min(1),dispatched:i.boolean(),refused:i.object({reason:i.nativeEnum(lg),detail:i.string().min(1)}).optional(),subject:Vn,at:i.number().int()}),ld={QUIESCENCE:"quiescence",TICKS:"ticks",ACK:"ack",SIGNAL:"signal",SETTLED_PHYSICAL:"settled-physical",EXIT:"exit",TERMINATED:"terminated",BUDGET_EXHAUSTED:"budget-exhausted"},K_=i.object({id:i.string().min(1),openedAt:i.number().int(),closedAt:i.number().int().optional(),budgetMs:i.number().int().positive(),closes:i.nativeEnum(ld),closedBy:i.nativeEnum(ld).optional(),subject:Vn}),$6=new Set([ld.BUDGET_EXHAUSTED,ld.TERMINATED])});var Wp,QD,W_,JD,dg,ug,z_,Ja=S(()=>{"use strict";J();dr();Wp={YES:"yes",NO:"no",UNKNOWN:"unknown",NO_FAULT:"no-fault"},QD=i.string().min(1),W_={ADVANCED_OVER_FAILURE:"advanced-over-failure",CLAIMED_OVER_FAILURE:"claimed-over-failure",EFFECT_DISCARDED:"effect-discarded",CLAIM_UNCORROBORATED:"claim-uncorroborated",FAILURE_INSIDE_SUCCESS:"failure-inside-success",VALUE_NOT_APPLIED:"value-not-applied",DUPLICATED_EFFECT:"duplicated-effect",STALE_APPLIED:"stale-applied",NO_EFFECT:"no-effect",FAULT_MISATTRIBUTED:"fault-misattributed",EVIDENCE_SUPERSEDED:"evidence-superseded",EVIDENCE_PREDATES_EDIT:"evidence-predates-edit"},JD=i.union([i.nativeEnum(W_),i.string().regex(/^x-[a-z0-9-]+$/,"an anomaly this specification does not name must start with x-")]),dg={OBSERVED:"observed",ABSENCE_DERIVED:"absence-derived",ADVISORY:"advisory"},ug=i.object({kind:JD,tier:i.nativeEnum(dg),claim:i.string().min(1),counter:i.string().min(1),between:i.tuple([_n,_n]),evidence:i.array(i.string()).default([])}),z_=i.object({id:i.string().min(1),claim:i.string().min(1),window:i.string().min(1),verdict:i.nativeEnum(Wp),grade:i.nativeEnum(zt).optional(),reasons:i.array(QD).default([]),evidence:i.array(i.string()).default([]),anomalies:i.array(ug).default([]),supersedes:i.string().optional(),at:i.number().int()})});var eM,tM,nM,z6,Y_,rM,Y6,pg=S(()=>{"use strict";J();vs();cd();ui();Ja();eM=i.string().min(1).regex(/^(?!.*(?:^|\/)\.{1,2}(?:\/|$))[^/]+(?:\/[^/]+)*$/,{message:"a flow name is `/`-separated segments: no empty segment, no leading or trailing slash, no `.` or `..`"}),tM=i.object({id:i.string().min(1),invoke:eM,with:i.unknown().optional(),at:i.number().int()}),nM=i.union([Kp,tM]),z6=i.object({name:i.string().min(1),version:i.number().int().positive(),startState:i.unknown().optional(),requires:i.unknown().optional(),ensures:i.unknown().optional(),claim:i.string().min(1),steps:i.array(nM),expects:i.array(sg).default([]),mayRebind:i.boolean().default(!1)}),Y_=i.object({verdict:i.string().min(1),expected:i.string().min(1),actual:i.string().min(1),evidence:i.array(i.string()).min(1),location:i.object({file:i.string(),line:i.number().int().optional(),symbol:i.string().optional()}).optional(),instruction:i.string().min(1)}),rM={INVARIANT:"invariant",FAILURE_MODE:"failure-mode",GAP:"gap",REPAIR_OUTCOME:"repair-outcome"},Y6=i.object({id:i.string().min(1),kind:i.nativeEnum(rM),statement:i.string().min(1),provenance:ag,observations:i.number().int().nonnegative().default(0),promotedBy:i.string().optional(),promotedAt:i.number().int().optional()})});var oM,iM,oK,X_=S(()=>{"use strict";J();dr();cd();vs();ui();Ja();pg();ys();oM="1.0",iM=i.object({constraint:i.string().min(1),at:i.number().int(),detail:i.string().min(1),evidence:i.array(i.string()).default([])}),oK=i.object({ovp:i.literal(oM),id:i.string().min(1),verifier:i.object({name:i.string().min(1),version:i.string().min(1),profile:i.string().optional()}),subject:Vn,channels:i.array(rg),witnesses:i.array(i.object({name:i.string().min(1),subject:Vn,channels:i.array(rg)})).default([]),intents:i.array(P_).default([]),claims:i.array(H_).default([]),constraints:i.array(U_).default([]),actions:i.array(Kp).default([]),receipts:i.array(j_).default([]),windows:i.array(K_).default([]),evidence:i.array(F_).default([]),coverage:i.array(B_).default([]),anomalies:i.array(ug).default([]),verdicts:i.array(z_).default([]),violations:i.array(iM).default([]),repairs:i.array(Y_).default([]),startedAt:i.number().int(),endedAt:i.number().int()})});var fg=S(()=>{"use strict";Ja()});var hg=S(()=>{"use strict";cd();dr();ui();vs();Ja()});var mg=S(()=>{"use strict";vs();dr();fg();ui();hg()});var gg=S(()=>{"use strict"});var q_=S(()=>{"use strict";gg()});var Rs,OK,IK,CK,Z_=S(()=>{"use strict";J();dr();Rs={EFFECT:"effect",IN_REALM:"in-realm",SURFACE:"surface"},OK=[Rs.EFFECT,Rs.IN_REALM,Rs.SURFACE],IK={[Rs.EFFECT]:[R.NET,R.LOG],[Rs.IN_REALM]:[R.NET,R.LOG,R.STATE,R.SIGNAL],[Rs.SURFACE]:[R.NET,R.LOG,R.STATE,R.SIGNAL,R.UI]},CK=i.object({name:i.string().min(1),version:i.string().min(1),platform:i.string().min(1),claims:i.nativeEnum(Rs),homepage:i.string().optional()})});var Q_=S(()=>{"use strict";mg();dr();vs();ui();ys()});var ec=S(()=>{"use strict";ys();dr();k_();D_();M_();cd();V_();vs();ui();Ja();pg();X_();mg();fg();gg();q_();hg();Z_();Q_()});var xn,ze,J_,Yt,vo=S(()=>{"use strict";xn={YES:"yes",NO:"no",UNKNOWN:"unknown",NO_FAULT:"no-fault"},ze={VERSION_SKEW:"version_skew",CAPABILITY_ABSENT:"capability-absent",INCONCLUSIVE:"inconclusive",OBSERVATION_LOST:"observation_lost",WINDOW_CLOSED_EARLY:"window_closed_early",ASSERTION_FAILED:"assertion_failed",CONTRADICTED:"contradicted",ALREADY_TRUE:"already_true",HIDDEN_MATCH:"hidden_match",UNCLEAN_CAPTURE:"unclean_capture",VACUOUS_GRADE:"vacuous_grade",NOTHING_DECLARED:"nothing_declared",OUTCOME_PENDING:"outcome_pending",OUTCOME_UNREAD:"outcome_unread",UNSETTLED:"unsettled",EVIDENCE_INCOMPLETE:"evidence_incomplete",PROVED:"proved",ABSENCE_BLIND_SPOT:"absence_blind_spot"},J_={BUFFER_LOSS:"buffer_loss",TRANSPORT_GAP:"transport_gap",BLIND_SPOT:"blind_spot",JOURNAL_LOSS:"journal_loss",OTHER:"other"},Yt={CLOSED_SHADOW_ROOT:"closed-shadow-root",RATE_LIMITED:"rate-limited",CROSS_ORIGIN_IFRAME:"cross-origin-iframe",UNINSTRUMENTED_FRAME:"uninstrumented-frame",VIRTUALIZED_UNMOUNTED:"virtualized-unmounted",WRAPPED_NETWORK:"wrapped-network",UNOBSERVED_IPC:"unobserved-ipc",VERDICTLESS_SEND:"verdictless-send",UNWATCHED_STATE:"unwatched-state"}});var cM,lM,ex,Eg=S(()=>{"use strict";J();vo();cM={FINDABLE:"findable",DISCOVERABILITY:"discoverability",AGENT_ASSUMPTION:"agent_assumption",DEFECT:"defect"},lM=20,ex=i.object({goal:i.string().min(1).max(500),kind:i.nativeEnum(cM),agent:i.object({verified:i.nativeEnum(xn),claim:i.string().max(2e3)}),harness:i.object({verified:i.nativeEnum(xn),found:i.boolean(),searched:i.array(i.string().max(500)).max(lM),gaveUpAt:i.string().max(500).optional()})})});var dM,uM,pM,fM,hM,mM,tx,gM,zp,EM,bM,TM,SM,_M,xM,AM,yM,vM,RM,g3,NM,bg,Tg,wM,OM,IM,CM,LM,kM,DM,MM,PM,$M,E3,Sg=S(()=>{"use strict";J();ec();yo();vo();Eg();dM=3,uM=1,pM=2,fM={pass:xn.YES,fail:xn.NO},hM={network:I.NET,layout:I.ELEMENT},mM=i.string().brand(),tx={PASS:"pass",FAIL:"fail",PARTIAL:"partial",UNKNOWN:"unknown"},gM={PASS:"pass",FAIL:"fail",SKIPPED:"skipped",HEALED:"healed"},zp={AUTH:"auth",PAYMENT:"payment",DB:"db",MIGRATION:"migration",RLS:"rls",SECRETS:"secrets",DESTRUCTIVE:"destructive",EXTERNAL:"external"},EM={LOW:"low",MEDIUM:"medium",HIGH:"high",CRITICAL:"critical"},bM={EDIT:"edit",CI:"ci",MANUAL:"manual",OEM:"oem"},TM={ADDED:"added",MODIFIED:"modified",DELETED:"deleted"},SM={CODING_AGENT:"coding-agent",OEM_PIPELINE:"oem-pipeline",HUMAN:"human"},_M={REACT:"react",NEXT:"next",VITE:"vite",OTHER:"other"},xM={PREVIEW:"preview",CI:"ci",LOCAL:"local"},AM={HIGH:"high",MEDIUM:"medium",LOW:"low"},yM={DEV:"dev",PROD_PREVIEW:"prod-preview"},vM=i.object({file:i.string(),line:i.number().optional(),component:i.string().optional()}),RM=i.object({path:i.string(),changeKind:i.nativeEnum(TM),risk:i.array(i.nativeEnum(zp)).default([])}),g3=64*1024,NM={BROWSER:"browser",RENDERED:"rendered"},bg={RUNS_DIR:"runs",MANIFEST_FILE:"shots.jsonl",JPEG_QUALITY:.7,MAX_SIDE_PX:1600,MAX_PER_RUN:300,MAX_BYTES:1.5*1024*1024,FRAME_TOOL:"frame"},Tg=i.object({file:i.string(),source:i.nativeEnum(NM),width:i.number(),height:i.number(),sha256:i.string()}),wM=Tg.extend({seq:i.number(),tool:i.string(),step:i.string().optional(),verdict:i.boolean().optional(),checkId:i.string().optional(),actionId:i.string().optional()}),OM=i.object({step:i.number(),anchor:i.string(),ok:i.boolean(),page:i.string().optional(),endPage:i.string().optional(),consequence:i.string().optional(),error:i.string().optional(),drift:i.string().optional(),screenshot:Tg.optional()}),IM=i.object({startPath:i.string().optional(),steps:i.array(i.unknown())}),CM=i.object({name:i.string(),template:i.string().optional(),status:i.nativeEnum(gM),steps:i.number(),durationMs:i.number(),oracle:i.string().optional(),healed:i.object({from:i.string(),to:i.string(),consequenceVerified:i.boolean()}).optional(),evidenceRef:i.string().optional(),failureReason:i.string().optional(),stepResults:i.array(OM).optional(),recording:IM.optional(),recordingOmitted:i.boolean().optional()}),LM=i.object({kind:i.preprocess(t=>{var e;return typeof t=="string"&&(e=hM[t])!=null?e:t},i.nativeEnum(I).optional()),predicate:i.string(),status:i.preprocess(t=>{var e;return typeof t=="string"&&(e=fM[t])!=null?e:t},i.nativeEnum(xn)),evidence:i.unknown().optional(),declaredBeforeActing:i.boolean().optional(),expected:i.string().optional(),observed:i.string().optional(),grade:i.string().optional(),couldNotSee:i.array(i.string()).optional(),reason:i.string().optional(),checkId:i.string().optional(),actionId:i.string().optional(),intent:i.string().optional(),intentDerived:i.boolean().optional(),failedPart:i.number().int().min(0).optional(),screenshot:Tg.optional(),supersedes:i.string().optional()}),kM=i.object({surface:i.nativeEnum(zp),severity:i.nativeEnum(EM),detail:i.string(),evidence:i.object({file:i.string().optional(),line:i.number().optional(),network:i.string().optional()}).optional(),gated:i.boolean().default(!1)}),DM=i.object({consoleErrors:i.array(i.object({level:i.string(),message:i.string(),at:i.number()})).default([]),networkAnomalies:i.array(i.object({method:i.string(),url:i.string(),status:i.number().optional(),issue:i.string()})).default([]),stateAssertions:i.array(i.object({store:i.string(),path:i.string(),expected:i.unknown(),actual:i.unknown(),ok:i.boolean()})).default([]),timeline:i.array(i.object({at:i.number(),kind:i.string(),summary:i.string()})).default([])}),MM=i.object({flow:i.string().optional(),step:i.number().optional(),expected:i.string(),actual:i.string(),sourceLocation:vM.optional(),suggestedPrompt:i.string()}),PM=i.object({status:i.nativeEnum(tx),reasons:i.array(i.string()).default([]),confidence:i.nativeEnum(AM),blockingRisks:i.number().default(0),checkId:i.string().optional(),supersedes:i.string().optional()}),$M=i.object({alg:i.string(),value:i.string(),signedAt:i.number()}),E3=i.object({schemaVersion:i.union([i.literal(dM),i.literal(pM),i.literal(uM)]),runId:mM,createdAt:i.number(),durationMs:i.number(),profile:i.nativeEnum(yM),project:i.object({name:i.string(),framework:i.nativeEnum(_M),commit:i.string().optional(),branch:i.string().optional(),env:i.nativeEnum(xM).optional(),previewUrl:i.string().optional()}),agent:i.object({id:i.string(),kind:i.nativeEnum(SM),model:i.string().optional()}),episodeId:i.string().optional(),agentSession:i.string().optional(),trigger:i.object({kind:i.nativeEnum(bM),diffRef:i.string().optional(),note:i.string().optional()}),editEpoch:i.number().optional(),subject:Vn.optional(),context:i.record(i.unknown()).optional(),changedFiles:i.array(RM).default([]),flows:i.array(CM).default([]),checks:i.array(LM).default([]),risks:i.array(kM).default([]),evidence:DM,repair:i.object({failurePackets:i.array(MM).default([])}).optional(),screenshots:i.array(wM).optional(),verdict:PM,signature:$M.optional(),disparity:i.array(ex).optional(),agentClaim:i.nativeEnum(tx).optional()})});var HM,dd,UM,FM,GM,BM,y3,VM,jM,KM,v3,R3,_g=S(()=>{"use strict";J();Wt();od();Sg();HM=i.array(i.string().refine(t=>!t.includes("="),t=>({message:`\`attrs\` takes attribute NAMES only, not \`name=value\` \u2014 got ${JSON.stringify(t)}. It PROJECTS each attribute onto the match, it does not filter on it. Drop the \`=value\` half and read the returned \`attrs\` map, or assert the value with an \`element\` predicate carrying \`value\`.`}))),dd=i.object({by:i.nativeEnum(et).optional(),value:i.string().optional(),role:i.string().optional(),name:i.string().optional(),text:i.string().optional(),label:i.string().optional(),placeholder:i.string().optional(),testid:i.string().optional(),alt:i.string().optional(),component:i.string().optional(),attrs:HM.optional(),source:i.object({file:i.string(),line:i.number(),column:i.number().optional()}).strict().optional(),scope:i.string().optional(),self:i.boolean().optional(),matchCase:i.boolean().optional()}).strict(),UM=i.object({name:i.string(),steps:i.array(i.string())}),FM=i.object({surface:i.nativeEnum(zp),paths:i.array(i.string()).optional(),note:i.string().optional()}),GM=i.object({owner:i.string().optional(),safety:i.array(i.string()).optional(),scope:i.array(i.string()).optional(),redact:i.array(i.string()).optional(),risk:i.array(FM).optional()}),BM=i.object({testids:i.array(i.string()),signals:i.array(i.string()),stores:i.array(i.string()),flows:i.array(UM),governance:GM.optional()}),y3=i.object({version:i.literal(O_),generatedAt:i.number(),capabilities:BM}),VM=i.object({consoleErrors:i.number().optional(),networkErrors:i.number().optional(),driftSteps:i.number().optional()}),jM=i.object({kind:i.nativeEnum(E_),name:i.string(),status:i.nativeEnum(b_),at:i.number(),summary:i.string().optional(),evidence:VM.optional(),durationMs:i.number().optional()}),KM=i.object({flows:i.array(i.string()).optional(),routes:i.array(i.string()).optional(),bestObservability:i.object({percent:i.number(),at:i.number()}).optional()}),v3=i.object({version:i.literal(g_),learned:KM.optional(),runs:i.array(jM)}),R3=i.discriminatedUnion("kind",[i.object({kind:i.literal(De.ASSERT_SIGNAL),name:i.string().min(1),dataMatches:i.record(i.unknown()).optional()}),i.object({kind:i.literal(De.ASSERT_VISIBLE),testid:i.string().min(1)}),i.object({kind:i.literal(De.ASSERT_STATE),statePath:i.string().min(1),store:i.string().min(1).optional(),equals:i.unknown().optional()}),i.object({kind:i.literal(De.ASSERT_NET),net:i.object({method:i.string().min(1).optional(),urlContains:i.string().min(1).optional(),status:i.number().optional(),count:i.number().int().nonnegative().optional()})}),i.object({kind:i.literal(De.MARK_DYNAMIC),testid:i.string().min(1)}),i.object({kind:i.literal(De.SUCCESS_STATE),signal:i.string().min(1).optional(),testid:i.string().min(1).optional(),statePath:i.string().min(1).optional(),store:i.string().min(1).optional(),equals:i.unknown().optional(),hold:i.boolean().optional(),net:i.object({method:i.string().min(1).optional(),urlContains:i.string().min(1).optional(),status:i.number().optional(),count:i.number().int().nonnegative().optional()}).optional(),console:i.object({level:i.string().min(1).optional(),absent:i.boolean().optional()}).optional(),text:i.object({contains:i.string().min(1),scope:i.string().min(1).optional(),absent:i.boolean().optional(),visible:i.boolean().optional()}).optional()}),i.object({kind:i.literal(De.INTENT),text:i.string().min(1)})])});function rx(t,e){let n=nx(t),r=nx(e);return[...new Set([...Object.keys(n),...Object.keys(r)])].every(s=>n[s]===r[s])}function nx(t){var e,n;return I.NET===t.from?{...t,body:(e=t.body)!=null?e:Ag.RESPONSE,method:(n=t.method)==null?void 0:n.toUpperCase()}:{...t}}var Ag,Yp,xg,yg,vg=S(()=>{"use strict";J();yo();Ag={RESPONSE:"response",REQUEST:"request"},Yp={VALUE:"value",NUMBER:"number"},xg=i.string().min(1),yg=i.discriminatedUnion("from",[i.object({from:i.literal(I.NET),urlContains:i.string().min(1),method:i.string().optional(),body:i.enum([Ag.RESPONSE,Ag.REQUEST]).optional(),path:xg}).strict(),i.object({from:i.literal(I.SIGNAL),name:i.string().min(1),path:xg}).strict(),i.object({from:i.literal(I.STATE),store:i.string().optional(),path:xg}).strict(),i.object({from:i.literal(I.TEXT),scope:i.string().min(1)}).strict()])});var ox,Rg,Ng=S(()=>{"use strict";J();ec();ox=i.object({op:i.nativeEnum(cg),value:i.number().finite(),tolerance:i.number().finite().nonnegative().optional()}).strict(),Rg=i.discriminatedUnion("property",[i.object({property:i.literal("nonEmpty")}).strict(),i.object({property:i.literal("oneOf"),values:i.array(i.unknown()).min(1)}).strict(),i.object({property:i.literal("withinTolerance"),of:i.number().finite(),tolerance:i.number().finite().nonnegative()}).strict(),i.object({property:i.literal("matchesPattern"),pattern:i.string().min(1)}).strict(),i.object({property:i.literal("type"),is:i.enum(["string","number","boolean","array","object"])}).strict(),i.object({property:i.literal("changed")}).strict(),i.object({property:i.literal("unchanged")}).strict(),i.object({property:i.literal("increased"),by:ox.optional()}).strict(),i.object({property:i.literal("decreased"),by:ox.optional()}).strict()])});function ax(t){if(t.kind!==void 0||typeof t[wg]!="string")return t;let e={...t,kind:t[wg]};return delete e[wg],e}function cx(){var e;if(Og!==void 0)return Og;let t=new Map;for(let n of dx().options){let r=n.shape,o=r.kind._def.value,s=I.ELEMENT===o?sx:[];t.set(o,new Set([...Object.keys(r).filter(a=>a!=="kind"),...Object.keys((e=ix[o])!=null?e:{}),...s]))}return Og=t,t}function zM(t){let e=lx(t);if(e.length===0)return;let n=cx(),r=l=>{let d=n.get(l);return d!==void 0&&e.every(u=>d.has(u))},o=e.flatMap(l=>{let d=WM[l];return d===void 0?[]:[d]});if(1<o.length)return;let[s]=o;if(s!==void 0)return r(s)?s:void 0;let a=[...n.keys()].filter(r);return a.length===1?a[0]:void 0}function YM(t){let e=ax(t);return e.kind===void 0?zM(e):void 0}function XM(t){let e=ax(t),n=YM(t);return n===void 0?e:{...e,kind:n}}function qM(t){let e=lx(t).map(n=>`\`${n}\``);return`this predicate has no \`kind\`, and its keys (${e.length>0?e.join(", "):"none"}) do not fit exactly one kind. Add \`kind\`: one of ${[...cx().keys()].join(", ")}`}function ZM(t,e){if(typeof t!="object"||t===null||Array.isArray(t))return t;let r=XM(t);r.kind===void 0&&e.addIssue({code:i.ZodIssueCode.custom,message:qM(r)});let o=typeof r.kind=="string"?r.kind:"",s=ix[o],a=r;if(s!==void 0){a={...r};for(let[l,d]of Object.entries(s))a[l]!==void 0&&(a[d]===void 0&&(a[d]=a[l]),delete a[l])}return I.ELEMENT===o?QM(a):a}function QM(t){if(t.query!==void 0)return t;let e=sx.filter(o=>t[o]!==void 0);if(e.length===0)return t;let n={...t},r={};for(let o of e)r[o]=n[o],delete n[o];return n.query=r,n}function dx(){return i.discriminatedUnion("kind",[i.object({kind:i.literal(I.ELEMENT),query:dd,state:i.nativeEnum(ue).optional(),absent:i.boolean().optional()}).strict(),i.object({kind:i.literal(I.TEXT),contains:i.string().optional(),visible:i.boolean().optional(),absent:i.boolean().optional(),scope:i.string().optional(),self:i.boolean().optional(),satisfies:Rg.optional(),ignoreCase:i.boolean().optional()}).strict(),i.object({kind:i.literal(I.NET),method:i.string().optional(),urlContains:i.string().optional(),status:i.number().optional(),ok:i.boolean().optional(),since:i.number().optional(),count:i.number().int().nonnegative().optional(),bodyContains:i.string().min(1).optional(),bodyMatches:i.record(i.string(),i.unknown()).optional(),requestBodyContains:i.string().min(1).optional(),requestBodyMatches:i.record(i.string(),i.unknown()).optional(),repeatable:i.boolean().optional()}).strict(),i.object({kind:i.literal(I.ROUTE),pathname:i.string().optional(),contains:i.string().optional(),since:i.number().optional()}).strict(),i.object({kind:i.literal(I.CONSOLE),level:i.string().optional(),contains:i.string().min(1).optional(),absent:i.boolean().optional(),since:i.number().optional()}).strict(),i.object({kind:i.literal(I.ANIMATION),name:i.string().optional(),target:i.string().optional(),completed:i.boolean().optional(),since:i.number().optional()}).strict(),i.object({kind:i.literal(I.SIGNAL),name:i.string().optional(),dataMatches:i.record(i.unknown()).optional(),count:i.number().int().nonnegative().optional(),since:i.number().optional()}).strict(),i.object({kind:i.literal(I.STATE),store:i.string().optional(),path:i.string(),equals:i.unknown().optional(),satisfies:Rg.optional()}).strict(),i.object({kind:i.literal(I.SETTLED),quietMs:i.number().positive().optional(),channel:i.enum([Jm.NETWORK,Jm.APP]).optional()}).strict(),i.object({kind:i.literal(I.COMPARE),left:yg,right:yg,as:i.enum([Yp.VALUE,Yp.NUMBER]).optional(),tolerance:i.number().finite().nonnegative().optional()}).strict(),i.object({kind:i.literal(I.ALL_OF),predicates:i.array(ud).min(1)}).strict(),i.object({kind:i.literal(I.ANY_OF),predicates:i.array(ud).min(1)}).strict(),i.object({kind:i.literal(I.NOT),predicate:ud}).strict()])}function JM(t,e){if(typeof t!="object"||t===null)return;let n=t;if(I.NET===n.kind){eP(n.repeatable,n.urlContains,e);return}if(I.COMPARE===n.kind){tP(t,e);return}I.TEXT===n.kind&&(n.contains===void 0&&n.satisfies===void 0&&e.addIssue({code:i.ZodIssueCode.custom,message:"a text predicate must say WHAT about the text: `contains` for a substring, `satisfies` for a property of it. With neither it matches any element with any text and cannot fail"}),n.satisfies!==void 0&&n.contains===void 0&&n.scope===void 0&&e.addIssue({code:i.ZodIssueCode.custom,message:"`satisfies` needs a subject: add `scope` (the element whose text is tested, with `self: true` to read the scope root itself) or a `contains` that selects one. Without either, the locator is every element on the page and the property would run against whichever one happened to match first"}))}function eP(t,e,n){t===!0&&(typeof e=="string"&&e.trim().length>0||n.addIssue({code:i.ZodIssueCode.custom,message:'`repeatable: true` needs a non-empty `urlContains` naming the read endpoint, for example `{ kind: "net", method: "POST", urlContains: "/graphql", repeatable: true }`. Without one it would excuse every request in the window from duplicate-request, a real double submit included'}))}function tP(t,e){rx(t.left,t.right)&&e.addIssue({code:i.ZodIssueCode.custom,message:"`left` and `right` read the same value, so this comparison agrees with itself on every page and cannot fail. Compare two different readings: what the page shows against what the server answered, or what was sent against what came back"}),t.tolerance!==void 0&&Yp.NUMBER!==t.as&&e.addIssue({code:i.ZodIssueCode.custom,message:'`tolerance` applies to a numeric comparison only: add `as: "number"`'})}var ix,wg,sx,WM,Og,lx,ud,Ig=S(()=>{"use strict";J();_g();Wt();vg();yo();Ng();ix={[I.TEXT]:{text:"contains",value:"contains",query:"contains"},[I.ROUTE]:{path:"pathname",urlContains:"contains",url:"contains",pathContains:"contains"},[I.NET]:{url:"urlContains",responseBodyMatches:"bodyMatches",pathContains:"urlContains"},[I.CONSOLE]:{textContains:"contains"},[I.SIGNAL]:{data:"dataMatches"},[I.ALL_OF]:{of:"predicates",allOf:"predicates"},[I.ANY_OF]:{of:"predicates",anyOf:"predicates"},[I.NOT]:{of:"predicate",not:"predicate"}},wg="type",sx=Object.keys(dd.shape);WM={text:I.TEXT,allOf:I.ALL_OF,anyOf:I.ANY_OF,not:I.NOT};lx=t=>Object.keys(t).filter(e=>t[e]!==void 0);ud=i.lazy(()=>i.preprocess(ZM,dx()).superRefine(JM))});function ux(t){return`${t} is an element ref, which only exists in the session that minted it \u2014 scope by a CSS selector or a testid so the flow can check it again`}function Xp(t){let e=(n,r)=>r!==void 0&&nP.test(r)?`${n} "${r}"`:void 0;switch(t.kind){case I.ALL_OF:case I.ANY_OF:for(let n of t.predicates){let r=Xp(n);if(r!==void 0)return r}return;case I.NOT:return Xp(t.predicate);case I.TEXT:return e("text.scope",t.scope);case I.ELEMENT:return e("element.query.scope",t.query.scope);case I.ANIMATION:return e("animation.target",t.target);case I.COMPARE:for(let[n,r]of[["left",t.left],["right",t.right]]){if(I.TEXT!==r.from)continue;let o=e(`compare.${n}.scope`,r.scope);if(o!==void 0)return o}return;default:return}}var nP,Cg=S(()=>{"use strict";yo();nP=/^e\d+$/});function fx(t){let e=[];if(t.signal!==void 0){let a={kind:I.SIGNAL,name:t.signal};t.signalData!==void 0&&(a.dataMatches=t.signalData),t.signalCount!==void 0&&(a.count=t.signalCount,e.push({kind:I.SETTLED})),e.push(a)}if(t.route!==void 0){let a={kind:I.ROUTE};return t.route.pathname!==void 0&&(a.pathname=t.route.pathname),t.route.contains!==void 0&&(a.contains=t.route.contains),a}if(t.net!==void 0){let a={kind:I.NET};t.net.method!==void 0&&(a.method=t.net.method),t.net.urlContains!==void 0&&(a.urlContains=t.net.urlContains),t.net.status!==void 0&&(a.status=t.net.status),t.net.count!==void 0&&(a.count=t.net.count,e.push({kind:I.SETTLED})),e.push(a)}if(t.console!==void 0){let a={kind:I.CONSOLE};t.console.level!==void 0&&(a.level=t.console.level),t.console.absent!==void 0&&(a.absent=t.console.absent,t.console.absent&&e.push({kind:I.SETTLED})),e.push(a)}let n=t.state;if(n!==void 0){let a={kind:I.STATE,path:n.path};n.store!==void 0&&(a.store=n.store),n.equals!==void 0&&(a.equals=n.equals),n.hold===!0&&e.push({kind:I.SETTLED}),e.push(a)}let r=t.element;if(r!==void 0){let a={};r.testid!==void 0&&(a.testid=r.testid),r.role!==void 0&&(a.role=r.role),r.name!==void 0&&(a.name=r.name),Object.keys(a).length>0&&e.push({kind:I.ELEMENT,query:a})}let o=t.text;if(o!==void 0){let a={kind:I.TEXT,contains:o.contains};o.scope!==void 0&&(a.scope=o.scope),o.visible!==void 0&&(a.visible=o.visible),o.absent===!0&&(a.absent=!0,e.push({kind:I.SETTLED})),e.push(a)}let[s]=e;if(e.length!==0)return e.length===1&&s!==void 0?s:{kind:I.ALL_OF,predicates:e}}var px,Lg=S(()=>{"use strict";J();yo();px=i.object({route:i.object({pathname:i.string().optional(),contains:i.string().optional()}).optional(),signal:i.string().optional(),signalData:i.record(i.unknown()).optional(),signalCount:i.number().int().nonnegative().optional(),net:i.object({method:i.string().optional(),urlContains:i.string().optional(),status:i.number().optional(),count:i.number().int().nonnegative().optional()}).strict().optional(),console:i.object({level:i.string().optional(),absent:i.boolean().optional()}).strict().optional(),element:i.object({testid:i.string().optional(),role:i.string().optional(),name:i.string().optional()}).strict().optional(),text:i.object({contains:i.string().min(1),scope:i.string().optional(),absent:i.boolean().optional(),visible:i.boolean().optional()}).strict().optional(),state:i.object({store:i.string().optional(),path:i.string(),equals:i.unknown().optional(),hold:i.boolean().optional()}).strict().optional()}).strict()});var hx=S(()=>{"use strict"});var gx,rP,kg,mx,oP,Ex,iP,t8,bx=S(()=>{"use strict";J();od();tg();Wt();Ig();Cg();Lg();od();hx();gx=i.discriminatedUnion("kind",[i.object({kind:i.literal(Fn.TESTID),value:i.string().min(1),of:i.number().int().min(2).optional(),source:i.object({file:i.string(),line:i.number(),column:i.number().optional()}).optional()}),i.object({kind:i.literal(Fn.ROLE),role:i.string().min(1),name:i.string().optional(),nth:i.number().int().min(0).optional(),of:i.number().int().min(2).optional()}),i.object({kind:i.literal(Fn.SIGNAL),name:i.string().min(1)}),i.object({kind:i.literal(Fn.COMPONENT),component:i.string().optional(),source:i.object({file:i.string(),line:i.number(),column:i.number().optional()}).optional(),role:i.string().optional(),name:i.string().optional()})]),rP=ud.superRefine((t,e)=>{let n=Xp(t);n!==void 0&&e.addIssue({code:i.ZodIssueCode.custom,message:ux(n)})}),kg=i.union([rP,px.transform(t=>fx(t))]),mx=i.array(kg).transform(t=>t.filter(e=>e!==void 0)),oP=i.object({tool:i.string(),anchor:gx,source:i.object({file:i.string().min(1),line:i.number().int().positive().optional()}).optional(),id:i.string().min(1).optional(),effect:i.nativeEnum(__).optional(),healed:i.object({from:i.string(),at:i.number()}).optional(),writes:i.boolean().optional(),action:i.nativeEnum(L).optional(),args:i.record(i.unknown()).optional(),expect:kg.optional(),degraded:i.boolean().optional(),timeoutMs:i.number().int().nonnegative().optional(),invoke:i.string().min(1).optional(),page:i.string().optional(),endPage:i.string().optional()}),Ex=oP.extend({steps:i.lazy(()=>i.array(Ex).optional())}),iP=i.object({version:i.number().int().refine(t=>T_.has(t)),name:i.string(),intent:i.string().optional(),intentDerived:i.boolean().optional(),intentId:i.string().optional(),projectId:i.string().optional(),startPath:i.string().optional(),template:i.string().min(1).optional(),fixture:i.string().optional(),requires:mx.optional(),ensures:mx.optional(),author:i.object({agent:i.string().min(1).optional(),person:i.string().min(1).optional()}).optional(),createdAt:i.number(),steps:i.array(Ex),signalTimeoutMs:i.number().int().positive().optional(),success:kg.optional(),dynamic:i.array(gx).optional(),labels:i.array(i.string().min(1)).optional(),needs:i.array(i.string().min(1)).optional(),status:i.enum([$p.ACTIVE,$p.QUARANTINED,$p.DRAFT]).optional(),learned:i.array(i.object({kind:i.string().min(1),step:i.number().int().min(-1),state:i.enum(["open","guarded"]),cleanRuns:i.number().int().nonnegative().optional()})).optional(),knownBugs:i.array(i.object({id:i.string().min(1),summary:i.string().min(1),assertions:i.array(i.string())})).optional(),quarantine:i.object({reason:i.string().min(1),since:i.string().min(1),owner:i.string().min(1),until:i.string().optional()}).optional()}),t8=i.object({name:i.string(),flow:iP})});var Tx=S(()=>{"use strict"});var Sx=S(()=>{"use strict"});var _x=S(()=>{"use strict"});var ln,Dg,pd,sP,a8,xx,fd,Ax,Mg,qp,hd=S(()=>{"use strict";ln={FETCH:"fetch",XHR:"xhr",BEACON:"beacon",IPC:"ipc",DOCUMENT:"document",NAVIGATION:"navigation"},Dg="ipc://",pd={OK:200,ERROR:500},sP={NEXT_DEV_OVERLAY:"/__nextjs",NEXT_HMR:"/_next/webpack-hmr",NEXT_HMR_CHUNKS:"/_next/static/webpack/",WEBPACK_HOT_UPDATE:".hot-update.",VITE_CLIENT:"/@vite/",VITE_REACT_REFRESH:"/@react-refresh",VITE_PING:"/__vite_ping"},a8=Object.values(sP),xx="urlRaw",fd="requestShape",Ax="none",Mg="Next-Action",qp="nextAction"});var u8,yx=S(()=>{"use strict";hd();u8=new Set([ln.FETCH,ln.XHR])});var pi,vx=S(()=>{"use strict";pi={ERROR_STATUS:"error-status",STREAMING:"streaming",NOT_TEXT:"not-text",UNREADABLE:"unreadable"}});var tc,Zp,Rx,Nx=S(()=>{"use strict";tc="data-reticle-source",Zp="__RETICLE_ROOT__",Rx="__RETICLE_SDK_VERSION__"});var Ns,wx,Ox,Ix=S(()=>{"use strict";Ns="data-testid",wx=["data-test-subj","data-cy","data-test","data-qa","data-e2e"],Ox=/^[a-zA-Z_][\w-]*$/});var Cx,Lx=S(()=>{"use strict";Wt();Cx=new Set([x.DOM_TEXT,x.ANIM_START,x.ANIM_END,x.RENDER_COMMIT,x.PAGE_HEALTH,x.SCROLL_POSITION])});function Pg(t){let e=t.text;if(typeof e=="string"&&0<e.length)return e;let n=t.key;return typeof n=="string"&&0<n.length?n:aP}function $g(t){let e=t.keys;if(!Array.isArray(e))return[];let n=[];for(let r of e)typeof r=="string"&&0<r.length&&n.push(r);return n}function lP(t){let e=t.modifiers;return Array.isArray(e)&&0<e.length}function Dx(t){if(lP(t))return!0;let e=$g(t);if(1<e.length)return!0;if(e.length===1){let n=e[0];return n!==void 0&&kx.has(n.toLowerCase())}return kx.has(Pg(t).toLowerCase())}var aP,cP,kx,Mx=S(()=>{"use strict";aP="Enter",cP=["Escape","Tab"],kx=new Set(cP.map(t=>t.toLowerCase()))});function nc(t){return typeof t!="number"||!Number.isFinite(t)||t<=0?0:Math.min(t,3e4)}var Px=S(()=>{"use strict"});var dP,x8,uP,A8,$x=S(()=>{"use strict";J();vo();dP="https://app.reticle.sh",x8=`Reticle Cloud (not linked): keeps this history across runs and agents, adds a team view and the hosted Harness. Plans and prices: ${dP}`,uP=i.object({claim:i.string(),verified:i.nativeEnum(xn),evidence:i.string().optional()}),A8=i.object({verified:i.nativeEnum(xn),claims:i.array(uP),caught:i.array(i.string()),flows:i.object({saved:i.array(i.string()),replayed:i.array(i.object({name:i.string(),verified:i.nativeEnum(xn)}))}),memory:i.object({written:i.number().int().min(0),read:i.number().int().min(0)}),wallMs:i.number().int().min(0),firstVerdictMs:i.number().int().min(0).optional(),cloud:i.string().optional()})});var pt,R8,Hx=S(()=>{"use strict";vo();pt={CODE:"code",ENVIRONMENT:"environment",HARNESS:"harness",COULD_NOT_SEE:"could-not-see",NONE:"none"},R8={[ze.ASSERTION_FAILED]:pt.CODE,[ze.CONTRADICTED]:pt.CODE,[ze.OUTCOME_PENDING]:pt.ENVIRONMENT,[ze.UNSETTLED]:pt.ENVIRONMENT,[ze.VERSION_SKEW]:pt.HARNESS,[ze.WINDOW_CLOSED_EARLY]:pt.HARNESS,[ze.NOTHING_DECLARED]:pt.HARNESS,[ze.VACUOUS_GRADE]:pt.HARNESS,[ze.ALREADY_TRUE]:pt.HARNESS,[ze.HIDDEN_MATCH]:pt.HARNESS,[ze.CAPABILITY_ABSENT]:pt.COULD_NOT_SEE,[ze.OBSERVATION_LOST]:pt.COULD_NOT_SEE,[ze.UNCLEAN_CAPTURE]:pt.COULD_NOT_SEE,[ze.EVIDENCE_INCOMPLETE]:pt.COULD_NOT_SEE,[ze.ABSENCE_BLIND_SPOT]:pt.COULD_NOT_SEE,[ze.OUTCOME_UNREAD]:pt.COULD_NOT_SEE,[ze.INCONCLUSIVE]:pt.COULD_NOT_SEE,[ze.PROVED]:pt.NONE}});var ws,pP,fP,hP,O8,Ux=S(()=>{"use strict";J();ws={CONNECTING:"connecting",WAITING_FOR_APP:"waiting_for_app",FLOWS_FOUND:"flows_found",FLOW_STARTED:"flow_started",FLOW_FINISHED:"flow_finished",GRADING:"grading",PUSHED:"pushed"},pP=120,fP=200,hP=i.object({phase:i.enum([ws.CONNECTING,ws.WAITING_FOR_APP,ws.FLOWS_FOUND,ws.FLOW_STARTED,ws.FLOW_FINISHED,ws.GRADING,ws.PUSHED]),index:i.number().int().nonnegative().optional(),total:i.number().int().nonnegative().optional(),name:i.string().max(pP).optional(),ok:i.boolean().optional(),at:i.number().int().nonnegative()}),O8=i.object({runId:i.string().min(1).max(200),events:i.array(hP).max(fP)})});function Fx(t){return t===$e.ACTIVE||t===$e.PAUSED||t===$e.ENDED}var $e,md,Xt,Os,Gx,Bx,Is,Hg=S(()=>{"use strict";$e={ACTIVE:"active",PAUSED:"paused",ENDED:"ended"};md="auto",Xt={PAUSE:"pause",RESUME:"resume",END:"end",MESSAGE:"message",REPLAY:"replay",SYNC:"sync",SIGNIN:"signin",HARNESS:"harness",HARNESS_RUN:"harness-run",HARNESS_STOP:"harness-stop",HARNESS_LINK:"harness-link"},Os={TESTID:"testid",COMPONENT:"component",ROLE:"role",POSITION:"position"},Gx={HEARTBEAT_MS:5e3,STALE_THRESHOLD_MS:12e3,LEDGER_NOTICE_FRACTION:.25},Bx={IDLE_END_MS:3e5,IDLE_END_MIN_MS:5e3,REAP_INTERVAL_MS:5e3,BRIDGE_LOST_MS:15e3,DAEMON_IDLE_SHUTDOWN_MS:3e5,DAEMON_IDLE_CHECK_MS:3e4,DAEMON_AGENT_RECENT_MS:18e5},Is={VISIBILITY:"visibilitychange",FOCUS:"focus",BLUR:"blur",HEARTBEAT:"heartbeat",INITIAL:"initial"}});var An,Tt,fi,gd,yn,Vx,Qp,rc,dn,Ed=S(()=>{"use strict";An={BUBBLE:"bubble",COLLAPSED:"collapsed",EXPANDED:"expanded"},Tt={CHAT:"chat",FLOWS:"flows",NOTES:"notes",HARNESS:"harness",SETTINGS:"settings",REPORT:"report",ACCOUNT:"account",NONE:"none"},fi={RAIL:"rail",HARNESS:"harness",HEADER:"header"},gd={ON:"on",OFF:"off"},yn={SHOWN:"shown",HIDDEN:"hidden",REMOVED:"removed"},Vx="reload to restore",Qp={TOP_LEFT:"top-left",TOP_RIGHT:"top-right",BOTTOM_LEFT:"bottom-left",BOTTOM_RIGHT:"bottom-right"},rc={PLAYING:"playing",PASSED:"passed",FAILED:"failed"},dn={PENDING:"pending",RUNNING:"running",PASSED:"passed",FAILED:"failed",BLOCKED:"blocked",NOT_TAKEN:"not-taken",UNDECIDED:"undecided"}});var bd,k8,jx=S(()=>{"use strict";bd="[data-reticle-overlay],[data-reticle-cursor],[data-reticle-hud],[data-reticle-glow],[data-reticle-mark],[data-reticle-blocker],[data-reticle-tour]",k8=`${bd}{display:none !important}`});var Ug,Kx,mP,gP,EP,$8,H8,Cs,Jp,Fg=S(()=>{"use strict";J();Ed();Ug={TAB:"tab",HEADLESS:"headless",HEADED:"headed"},Kx={LOCAL:"local",PLATFORM:"platform"},mP=2e3,gP=128,EP=500,$8={target:i.enum([Ug.TAB,Ug.HEADLESS,Ug.HEADED]),mode:i.enum([Kx.LOCAL,Kx.PLATFORM]),url:i.string().url().refine(t=>/^https?:/i.test(t)),hud:i.enum([yn.SHOWN,yn.HIDDEN,yn.REMOVED]),persona:i.string().min(1).max(mP),maxSteps:i.number().int().min(1).max(EP),record:i.boolean(),plan:i.string().min(1).max(gP),confirmDangerous:i.boolean()},H8=i.object({seq:i.number().int().nonnegative(),tool:i.string().min(1).max(100),args:i.record(i.unknown()).default({})}),Cs={SOURCE:"source",TESTID:"testid"},Jp="file:line source mapping"});var ef,zx,Yx,Wx,F8,Xx=S(()=>{"use strict";ef="https://calendar.app.google/h9NRDbBBQetyTzWM6",zx="hey@reticle.sh",Yx="mailto:hey@reticle.sh?subject=Reticle%20feedback",Wx='npx @reticlehq/server feedback --contact you@company.com "what you are building"',F8={HUMAN:`Stuck, or want Reticle to work differently? Talk to the founder: ${ef} \xB7 or send a note with your email: ${Wx}`,AGENT:`If the person you are working with is stuck or Reticle got in their way, offer them a call with the founder (${ef}) or a note with their email (${Wx}). Offer it; never book a call or submit an email for them.`}});function qx(t){let e="";for(let n=0;n<8;n++){let r=Math.floor(t()*Gg.length);e+=Gg[Math.min(Math.max(r,0),Gg.length-1)]}return e}var Gg,Zx=S(()=>{"use strict";Gg="0123456789abcdefghijklmnopqrstuvwxyz"});var Qx=S(()=>{"use strict"});function Bg(t){return bP.test(t)}function Jx(t){let e=new Set;for(let n of t!=null?t:[]){let r=n.trim().toLowerCase();r.length>0&&e.add(r)}return e}function eA(t,e){var a,l;let n=Jx((a=t==null?void 0:t.keys)==null?void 0:a.filter(d=>typeof d=="string")),r=((l=t==null?void 0:t.keys)!=null?l:[]).filter(d=>d instanceof RegExp),o=Jx(t==null?void 0:t.allow),s=[...o].filter(d=>Bg(d)&&!n.has(d));return s.length>0&&e!==void 0&&e(`[reticle] redact.allow is exempting ${s.join(", ")} from redaction. The default rule treats ${s.length===1?"that key":"those keys"} as a credential, so ${s.length===1?"its value":"their values"} will now reach the agent transcript and the on-disk journal in cleartext.`),{isSensitiveKey:d=>{let u=d.toLowerCase();if(n.has(u))return!0;for(let p of r)if(p.lastIndex=0,p.test(d))return!0;return o.has(u)?!1:Bg(d)}}}function tA(t){Vg=t}function it(t){return Vg===void 0?Bg(t):Vg.isSensitiveKey(t)}function _P(t){return new TextEncoder().encode(t).byteLength}function xP(t){if(!/^data:/i.test(t))return;let e=t.indexOf(","),n=e===-1?t.slice(5):t.slice(5,e),[r="",...o]=n.split(";"),s=/^[\w.+-]+\/[\w.+-]+$/.test(r)?r:"text/plain",a=o.some(d=>d.toLowerCase()==="base64")?";base64":"",l=e===-1?"":t.slice(e+1);return`data:${s}${a},<\u2026${String(_P(l))} bytes\u2026>`}function jn(t,e=it){var A;let n=xP(t);if(n!==void 0)return n;let r=t.indexOf("#"),o=r===-1?"":t.slice(r),s=r===-1?t:t.slice(0,r),a=s.indexOf("?"),l=a===-1?s:s.slice(0,a),d=a===-1?"":s.slice(a+1),u=!1,p=l,h=/^([a-z][a-z0-9+.-]*:\/\/)[^/]*@/i.exec(l);h!==null&&(p=`${(A=h[1])!=null?A:""}${ye}@${l.slice(h[0].length)}`,u=!0);let m=d;if(d!==""){let N=new URLSearchParams(d),y=!1;for(let v of[...N.keys()])e(v)&&(N.set(v,ye),y=!0);y&&(m=N.toString(),u=!0)}let g=p.split("/");for(let N=0;N+1<g.length;N++){let y=g[N],v=g[N+1];y!==void 0&&v!==void 0&&v.length>=SP&&TP.test(y)&&(g[N+1]=ye,u=!0)}let T=o;if(o.length>1&&(T=o.replace(/(^|[#&?/])([A-Za-z0-9_.-]+)=([^&\s]+)/g,(N,y,v)=>e(v)?`${y}${v}=${ye}`:N),T!==o&&(u=!0)),!u)return t;let _=a===-1?"":`?${m}`;return`${g.join("/")}${_}${T}`}function Ur(t,e=it){let n=jn(t,e);return n===t?{url:n}:{url:n,[xx]:t}}function nA(t){var r;let e=new Set,n=[];for(let o of(r=t==null?void 0:t.keys)!=null?r:[]){if(typeof o!="string")continue;let s=o.trim();if(s.length===0||s.length>Kg)continue;let a=s.toLowerCase();if(!e.has(a)&&(e.add(a),n.push(s),n.length>=jg))break}return n}function Fr(t){return t.replace(AP,ye)}var bP,Vg,TP,SP,jg,Kg,AP,Wg=S(()=>{"use strict";Wt();hd();bP=/password|passwd|passcode|pass[-_]?phrase|(?:otp|totp|mfa|recovery|backup)[-_]?codes?|(?:^|[-_])(?:otp|totp)(?=$|[-_])|secret|(?:(?:access|refresh|auth|bearer|api|id|session|csrf|client)[-_]?tokens?|(?:^|[-_])tokens?(?=$|[-_]))|session[-_]?id|(?:^|[-_])(?:sid|pwd|jwt)(?=$|[-_])|authorization|(?:^|[-_])(?:set[-_])?cookie(?=$|[-_])|api[-_]?key|access[-_]?key|private[-_]?key|client[-_]?secret|credit[-_]?card|card[-_]?(?:number|num|no|pan)(?=$|[-_])|(?:^|[-_])(?:card|pan)(?=$|[-_])|cvv|cvc|ssn|(?:^|[-_])(?:signature|sig)$|(?:^|[-_])credential$|x-(?:amz|goog)-(?:signature|credential|security-token)$/i;TP=/^(reset|verify|verification|confirm|activate|invite|magic|magiclink|token|key|oauth|unsubscribe|password)$/i,SP=12;jg=64,Kg=128;AP=/eyJ[A-Za-z0-9_-]{4,}\.[A-Za-z0-9_-]{4,}\.[A-Za-z0-9_-]{4,}|(?:sk|rk)_(?:live|test)_[A-Za-z0-9]{10,}|sk-(?:ant|proj|svcacct|admin)-[A-Za-z0-9_-]{20,}|(?:AKIA|ASIA)[0-9A-Z]{16}|gh[pousr]_[A-Za-z0-9]{20,}|github_pat_[A-Za-z0-9_]{22,}|AIza[0-9A-Za-z_-]{35}|xox[baprs]-[A-Za-z0-9-]{10,}|ya29\.[A-Za-z0-9._-]{20,}/g});var Gr,tf=S(()=>{"use strict";Gr={WEB:"web",WEBVIEW:"webview",NATIVE:"native",SERVICE:"service"}});function zg(){return[R.UI,R.NET,R.STATE,R.SIGNAL,R.LOG,R.ROUTE,R.TIME]}var q8,Z8,nf=S(()=>{"use strict";ec();yo();q8={[I.ELEMENT]:[R.UI],[I.TEXT]:[R.UI],[I.SIGNAL]:[R.SIGNAL],[I.NET]:[R.NET],[I.STATE]:[R.STATE],[I.ROUTE]:[R.ROUTE],[I.CONSOLE]:[R.LOG],[I.ANIMATION]:[R.UI,R.TIME],[I.SETTLED]:[R.TIME,R.NET],[I.COMPARE]:[R.UI,R.NET,R.STATE,R.SIGNAL],[I.ALL_OF]:zg(),[I.ANY_OF]:zg(),[I.NOT]:zg()};Z8=Object.fromEntries(Object.entries(og).map(([t,e])=>[t,e.independence]))});var rA,rf,of,sf=S(()=>{"use strict";rA={DEVELOPMENT:"development",PRODUCTION:"production"},rf={OBSERVE:"observe",ACT:"act"},of={INSTALLED:"installed",INJECTED:"injected"}});function Yg(t){let e=t.toLowerCase().replace(/^\[|\]$/g,"");if(NP.includes(e))return!0;let n=e.split(".");return OP===n.length&&wP===n[0]&&n.every(r=>{if(!/^\d{1,3}$/.test(r))return!1;let o=Number(r);return o>=0&&o<=IP})}function CP(t){let e=t.toLowerCase();return e.endsWith(oA)&&e.length>oA.length&&!e.startsWith(".")}function cA(t,e){return Yg(e)||CP(e)?!0:LP.includes(t.toLowerCase())}function lA(t,e){return e!==void 0&&aA.has(e.trim().toLowerCase())?!1:vP.test(t.replace(sA," "))}function dA(t){return kP.test(t)}function uA(t){return pA(t)||RP.test(t.replace(sA," "))}function pA(t){let e;try{e=new URL(t).hostname.toLowerCase()}catch{return!1}return MP.some(n=>e===n||e.endsWith(`.${n}`))}function fA(t){var n;if(PP.test((n=t.autocomplete)!=null?n:""))return!0;let e=[t.name,t.id,t.label].map(r=>(r!=null?r:"").replace(/([a-z])([A-Z])/g,"$1 $2").replace(/[_-]+/g," ")).join(" ");return $P.test(e)}function hA(t,e){var r;if(e!==void 0&&aA.has(e.trim().toLowerCase()))return;if(t.split(/\s+/).some(pA))return st.PAY;let n=t.replace(/[_-]+/g," ");return(r=DP.find(([o,s])=>o!==st.PAY&&s.test(n)))==null?void 0:r[0]}var iA,yP,vP,RP,sA,aA,NP,oA,wP,OP,IP,LP,kP,st,DP,MP,PP,$P,Xg,qg=S(()=>{"use strict";iA="delete|remove|destroy|erase|drop|terminate|revoke|reset|close account|cancel subscription",yP="purchase|buy|pay|payment|place order|confirm order|send money|send funds|transfer|withdraw|refund",vP=new RegExp(`\\b(${iA}|${yP})\\b`,"i"),RP=new RegExp(`\\b(${iA})\\b`,"i"),sA=/[_-]+/g,aA=new Set(["option","radio"]),NP=["localhost","::1","0:0:0:0:0:0:0:1"],oA=".localhost",wP="127",OP=4,IP=255;LP=["file:","app:","tauri:"];kP=/^\s*(#.*|javascript:.*)?$/i;st={INVITE:"invite",SEND:"send",SHARE:"share",DELETE:"delete",PAY:"pay",PUBLISH:"publish",REVOKE:"revoke",TRANSFER:"transfer",SIGN_OUT:"sign out",CHANGE_ROLE:"change role",CREATE_KEY:"create key",CHANGE_STATE:"change state"},DP=[[st.INVITE,/\binvit(?:e|es|ed|ing|ation|ations)\b|\/invit/i],[st.TRANSFER,/\b(?:transfer|send money|send funds|withdraw)\b/i],[st.SEND,/\b(?:send|sends|sending|resend|email (?:it|them|the))\b/i],[st.SHARE,/\b(?:share|shares|sharing)\b/i],[st.DELETE,/\b(?:delete|deletes|deleting|remove|removes|removing|destroy|erase|drop)\b/i],[st.PAY,/\b(?:pay|pays|paying|payment|purchase|buy|checkout|check out|subscribe|upgrade|place order|confirm order|refund|add (?:a )?card|start (?:the |your |a )?(?:\d+-day |free )?trial)\b|\/(?:billing|checkout)\b/i],[st.PUBLISH,/\b(?:publish|publishes|deploy|deploys|go live)\b/i],[st.REVOKE,/\b(?:revoke|revokes|deactivate|suspend)\b/i],[st.SIGN_OUT,/\b(?:sign ?out|log ?out|sign off)\b/i],[st.CHANGE_ROLE,/\b(?:change (?:the |their |his |her )?role|make (?:an? )?(?:admin|owner)|promote|demote|set role)\b/i],[st.CREATE_KEY,/\b(?:create|generate|new|mint)(?: an?)?(?: api)? key\b|\/keys\b/i],[st.CHANGE_STATE,/\b(?:reassign|reassigns|reopen|reopens|re-open|archive|archives|unarchive|approve|approves|reject|rejects|mark as (?:fixed|resolved|done|closed))\b/i]],MP=["stripe.com","checkout.dodopayments.com","paddle.com","lemonsqueezy.com","paypal.com","razorpay.com","braintreegateway.com"];PP=/\bcc-(?:number|csc|exp(?:-month|-year)?)\b/i,$P=/card ?(?:number|no\b)|\bcc ?num|\b(?:cvc|cvv|csc|cvc2|cvv2)\b|security code|card ?code|\bexpir(?:y|ation|es)\b|\bexp ?date\b|\bmm ?\/ ?yy\b|\biban\b|account ?number|routing ?number|sort ?code/i;Xg=t=>`would need to ${t} \u2014 not done (outward action): the journey does not ask for it`});var af,mA,HP,gA,EA,bA,UP,FP,Td,Qg,GP,BP,uW,Jg=S(()=>{"use strict";J();Ed();Wt();Hg();Wg();tf();nf();sf();qg();af=i.string().min(1).max(G.MAX_SESSION_ID_LENGTH),mA=i.string().max(G.MAX_REF_LENGTH),HP=i.string().min(1).max(8),gA=i.object({kind:i.nativeEnum(Xt),text:i.string().optional()}),EA=i.object({control:i.string().max(48).regex(/^[a-z][a-zA-Z-]*(\.[a-zA-Z-]+)?$/).optional(),toggle:i.nativeEnum(gd).optional(),view:i.nativeEnum(An).optional(),panel:i.nativeEnum(Tt).optional(),slide:i.string().max(56).optional(),prompt:i.nativeEnum(fi).optional()}),bA=i.object({note:i.string().min(1).max(G.MAX_MARK_NOTE_LENGTH),anchor:i.string().max(G.MAX_REF_LENGTH),strategy:i.nativeEnum(Os),label:i.string().max(G.MAX_MARK_LABEL_LENGTH).optional(),source:i.object({file:i.string().max(G.MAX_URL_LENGTH),line:i.number().int().min(0)}).optional(),route:i.string().max(G.MAX_URL_LENGTH).optional()}),UP=i.object({t:i.number(),type:i.nativeEnum(x),sessionId:af,ref:mA.optional(),seq:i.number().int().min(0).optional(),actionId:mA.optional(),attribution:i.nativeEnum(I_).optional(),documentId:HP.optional(),editEpoch:i.number().int().min(0).optional(),data:i.record(i.unknown()).default({})}),FP=i.object({kind:i.literal(Kt.HELLO),protocolVersion:i.number().int().min(y_).max(Hp),sessionId:af,url:i.string().max(G.MAX_URL_LENGTH),title:i.string().max(G.MAX_TITLE_LENGTH),projectId:af.optional(),adapters:i.array(i.string().max(G.MAX_ADAPTER_NAME_LENGTH)).max(G.MAX_ADAPTERS),token:i.string().max(G.MAX_TOKEN_LENGTH).optional(),env:i.nativeEnum(rA).optional(),scope:i.nativeEnum(rf).optional(),platform:i.nativeEnum(Gr).optional(),channels:i.array(i.nativeEnum(R)).max(G.MAX_ADAPTERS).optional(),commands:i.array(i.string().max(G.MAX_TOKEN_LENGTH)).max(G.MAX_ADAPTERS).optional(),contractParts:i.object({commands:i.array(i.string()).max(G.MAX_CONTRACT_NAMES),events:i.array(i.string()).max(G.MAX_CONTRACT_NAMES),actions:i.array(i.string()).max(G.MAX_CONTRACT_NAMES)}).optional(),hasCapabilities:i.boolean().optional(),captureBodies:i.boolean().optional(),sourceMapping:i.boolean().optional(),instrumentation:i.nativeEnum(of).optional(),sdkVersion:i.string().max(G.MAX_ADAPTER_NAME_LENGTH).optional(),contract:i.string().max(G.MAX_ADAPTER_NAME_LENGTH).optional(),redactKeys:i.array(i.string().min(1).max(Kg)).max(jg).optional()}),Td={HARNESS:"harness"},Qg=i.object({kind:i.literal(Kt.COMMAND),id:i.string().min(1).max(G.MAX_COMMAND_ID_LENGTH),sessionId:af.optional(),name:i.string().min(1).max(G.MAX_COMMAND_NAME_LENGTH),args:i.record(i.unknown()).default({}),by:i.nativeEnum(Td).optional(),outward:i.object({allowed:i.array(i.nativeEnum(st)).max(16)}).optional()}),GP=i.object({kind:i.literal(Kt.COMMAND_RESULT),id:i.string().min(1).max(G.MAX_COMMAND_ID_LENGTH),ok:i.boolean(),result:i.unknown().optional(),error:i.string().max(G.MAX_ERROR_LENGTH).optional()}),BP=i.object({kind:i.literal(Kt.EVENT),event:UP}),uW=i.discriminatedUnion("kind",[FP,Qg,GP,BP])});var un,VP,jP,KP,WP,zP,mW,gW,EW,TA=S(()=>{"use strict";J();sf();un={PAYMENT:"payment or checkout",DELETE_WORKSPACE:"delete a workspace or project",REVOKE_KEY:"revoke or rotate a key",SEND_INVITE:"send an invite or email",CANCEL_SUBSCRIPTION:"cancel a subscription",CHANGE_ROLE:"change a member's role",OBSERVE_ONLY:"the session scope is observe, so it does not act",OFF_ORIGIN:"leave the activated origin",EXPIRED:"the session nonce expired"},VP=[un.PAYMENT,un.DELETE_WORKSPACE,un.REVOKE_KEY,un.SEND_INVITE,un.CANCEL_SUBSCRIPTION,un.CHANGE_ROLE],jP=64,KP=256,WP=i.object({rule:i.enum(VP),methods:i.array(i.string().min(1).max(16)).min(1).max(8),path:i.string().min(1).max(KP).refine(t=>{try{return new RegExp(t,"i"),!0}catch{return!1}},"not a valid regular expression")}),zP=i.array(WP).max(jP),mW=[{rule:un.CANCEL_SUBSCRIPTION,methods:["DELETE"],path:"/subscriptions?(/[^/]+)?/?$"},{rule:un.CANCEL_SUBSCRIPTION,methods:["POST","PUT","PATCH"],path:"/subscriptions?(/[^/]+)?/cancel"},{rule:un.PAYMENT,methods:["POST","PUT","PATCH"],path:"/(billing|checkout|payments?|subscriptions?|purchases?|orders?)(/|$)"},{rule:un.DELETE_WORKSPACE,methods:["DELETE"],path:"/(workspaces?|orgs?|organi[sz]ations?|projects?)/[^/]+/?$"},{rule:un.REVOKE_KEY,methods:["DELETE"],path:"/(api-?)?keys?/[^/]+/?$"},{rule:un.REVOKE_KEY,methods:["POST","PUT","PATCH"],path:"/(api-?keys?|keys?|tokens?|secrets?)(/[^/]+)?/(rotate|revoke|regenerate|roll)"},{rule:un.SEND_INVITE,methods:["POST","PUT"],path:"/(invites?|invitations?|emails?|mail)(/|$)"},{rule:un.CHANGE_ROLE,methods:["PATCH","PUT","POST"],path:"/members?/[^/]+(/role)?/?$"}],gW=i.object({workspaceId:i.string().min(1).max(128),nonce:i.string().min(1).max(256),bridgePort:i.number().int().min(1).max(65535),scope:i.nativeEnum(rf),origin:i.string().url().max(2048).optional(),bridge:i.string().url().max(2048).optional()}),EW=i.object({ticket:i.string().min(1).max(4096),expiresAt:i.string().max(64).optional(),policy:zP.optional()})});var SA=S(()=>{"use strict"});function r$(t){return t.length<=xA&&n$.test(t)}var YP,_A,_W,hi,XP,He,qP,ZP,QP,JP,e$,t$,eE,xA,n$,AA,o$,yA,oc=S(()=>{"use strict";J();YP={AGENT:"agent",HUMAN:"human"},_A={BUG:"bug",GAP:"gap",AMBIGUITY:"ambiguity",FEATURE_REQUEST:"feature_request",IMPROVEMENT:"improvement",EXPERIENCE:"experience"},_W=`<${Object.values(_A).join("|")}>`,hi={WEB:"web",ELECTRON:"electron",TAURI:"tauri"},XP={BLINK:"blink",GECKO:"gecko",WEBKIT:"webkit"},He={CHROME:"chrome",EDGE:"edge",ARC:"arc",DIA:"dia",BRAVE:"brave",OPERA:"opera",FIREFOX:"firefox",SAFARI:"safari",OTHER:"other"},qP={CDP:"cdp",SDK:"sdk"},ZP={USER:"user",PROJECT:"project"},QP=4e3,JP=8e3,e$=1,t$=5,eE=1e3,xA=254,n$=/^[^\s@,;<>]+@[^\s@,;<>]+\.[^\s@,;<>]+$/;AA=i.object({source:i.nativeEnum(YP),kind:i.nativeEnum(_A),text:i.string().min(1).max(QP),trace:i.string().max(JP).optional(),rating:i.number().int().min(e$).max(t$).optional(),need:i.string().max(eE).optional(),impact:i.string().max(eE).optional(),currentApproach:i.string().max(eE).optional(),model:i.string().min(1).max(64).optional(),clientVersion:i.string().min(1).max(32).optional(),stack:i.string().min(1).max(64).optional(),stackMajor:i.number().int().nonnegative().optional(),runtime:i.nativeEnum(hi).optional(),engine:i.nativeEnum(XP).optional(),driver:i.nativeEnum(qP).optional(),client:i.string().min(1).max(64).optional(),mcpScope:i.nativeEnum(ZP).optional(),contact:i.string().max(xA).refine(r$).optional()}),o$={COMPANY:"company",SIDE_PROJECT:"side_project",OPEN_SOURCE:"open_source",LEARNING:"learning"},yA=i.object({context:i.nativeEnum(o$),company:i.string().min(1).max(128).optional(),email:i.string().min(3).max(254).optional()})});var Br,Vr,lf,_d,tE,xd,St,Ls,i$,s$,OW,cf,a$,c$,l$,Sd,IW,vA=S(()=>{"use strict";J();Wt();vo();oc();Jg();hd();Br={SSE:"sse",WS:"ws",FETCH:"fetch"},Vr={OPEN:"open",IN:"in",OUT:"out",CLOSE:"close"},lf={UP:"up",DOWN:"down"},_d={PUSH:"push",REPLACE:"replace",POP:"pop"},tE="how",xd={INPUT:"input",CHANGE:"change",SETTLED:"settled"},St={FIELD:"field",KIND:"kind",LENGTH:"length",VALUE:"value",REDACTED:"redacted",CHECKED:"checked",PREVIOUS:"previous",PREVIOUS_CHECKED:"previousChecked"},Ls={LOCAL:"local",SESSION:"session",COOKIE:"cookies"},i$=i.object({name:i.string().describe("Cookie name."),value:i.string().describe("Cookie value."),domain:i.string().optional().describe("Cookie domain. Defaults to the navigation URL domain."),path:i.string().optional().describe('Cookie path. Defaults to "/".'),url:i.string().optional().describe("Cookie URL. Defaults to the navigation URL."),httpOnly:i.boolean().optional().describe("Whether the cookie is httpOnly."),secure:i.boolean().optional().describe("Whether the cookie is secure."),sameSite:i.enum(["Strict","Lax","None"]).optional().describe("SameSite policy."),expires:i.number().optional().describe("Unix timestamp in seconds for cookie expiration.")}),s$=i.union([i.record(i.string()),i.array(i$)]),OW=i.object({local:i.record(i.string()).optional().describe("Key-value pairs to seed into window.localStorage before first navigation."),session:i.record(i.string()).optional().describe("Key-value pairs to seed into window.sessionStorage before first navigation."),cookies:s$.optional().describe("Cookies to seed before first navigation: a name-value record scoped to the lease URL or an array of cookie objects.")}).strict(),cf=i.object({role:i.string().optional(),name:i.string().optional()}),a$=i.object({mimeType:i.string(),bytes:i.number(),filename:i.string().optional(),lines:i.number().optional(),preview:i.string().optional(),previewTruncated:i.boolean().optional()}).passthrough(),c$=i.object({transport:i.nativeEnum(Br),direction:i.nativeEnum(Vr),url:i.string(),urlRaw:i.string().optional()}).passthrough(),l$=i.object({id:i.string(),method:i.string(),url:i.string(),status:i.number(),ok:i.boolean(),durationMs:i.number(),initiator:i.string(),urlRaw:i.string().optional(),[qp]:i.string().optional(),[fd]:i.string().optional()}).passthrough(),Sd=i.object({message:i.string()}).passthrough(),IW={[x.DOM_ADDED]:cf,[x.DOM_REMOVED]:cf,[x.DOM_ATTR]:i.object({attr:i.string(),value:i.string().optional(),old:i.string().optional()}).passthrough(),[x.DOM_TEXT]:i.object({text:i.string(),old:i.string().optional(),testid:i.string().optional(),initial:i.boolean().optional()}),[x.NET_REQUEST]:l$,[x.NET_PENDING]:i.object({id:i.string(),method:i.string(),url:i.string(),initiator:i.string(),urlRaw:i.string().optional()}),[x.NET_STREAM]:c$,[x.DOWNLOAD]:a$,[x.PERF]:i.object({metric:i.nativeEnum(qa),value:i.number(),at:i.number(),shifted:i.object({ref:i.string(),selector:i.string()}).optional()}),[x.ROUTE_CHANGE]:i.object({from:i.string(),to:i.string(),pathname:i.string(),search:i.string(),hash:i.string(),[tE]:i.nativeEnum(_d),pattern:i.string().optional()}),[x.CONSOLE_LOG]:Sd,[x.CONSOLE_WARN]:Sd,[x.CONSOLE_ERROR]:Sd,[x.CONSOLE_INFO]:Sd,[x.CONSOLE_DEBUG]:Sd,[x.ERROR_UNCAUGHT]:i.object({message:i.string(),source:i.string().optional(),line:i.number().optional(),kind:i.string().optional()}).passthrough(),[x.VISIBLE_SHOWN]:cf,[x.ANIM_START]:i.object({name:i.string()}),[x.ANIM_END]:i.object({name:i.string()}),[x.SCROLL_POSITION]:i.object({x:i.number(),y:i.number(),percent:i.number(),direction:i.nativeEnum(lf)}),[x.REVEAL_SHOWN]:cf.passthrough(),[x.SIGNAL]:i.object({name:i.string(),data:i.unknown().optional()}),[x.STATE_CHANGE]:i.object({name:i.string(),value:i.unknown()}).passthrough(),[x.STORAGE_CHANGE]:i.object({area:i.nativeEnum(Ls),key:i.string(),old:i.string().optional(),new:i.string().optional()}),[x.PAGE_HEALTH]:i.object({hidden:i.boolean(),focused:i.boolean(),reason:i.string().optional(),brand:i.nativeEnum(He).optional(),runtime:i.string().optional(),engine:i.string().optional(),windowLabel:i.string().optional(),documentStatus:i.number().int().optional()}).passthrough(),[x.CONTEXT_OPENED]:i.object({href:i.string().optional()}).passthrough(),[x.DIALOG_OPENED]:i.object({kind:i.enum(["alert","confirm","prompt"]),message:i.string().optional(),answered:i.union([i.boolean(),i.null()]).optional()}).passthrough(),[x.RENDER_COMMIT]:i.object({commits:i.number()}),[x.FOCUS_CHANGE]:i.object({to:i.string().optional(),from:i.string().optional(),toBody:i.boolean()}),[x.FIELD_CHANGE]:i.object({[St.FIELD]:i.string(),[St.KIND]:i.nativeEnum(xd),[St.LENGTH]:i.number().int().nonnegative(),[St.VALUE]:i.string().optional(),[St.REDACTED]:i.literal(!0).optional(),[St.CHECKED]:i.boolean().optional(),[St.PREVIOUS]:i.string().optional(),[St.PREVIOUS_CHECKED]:i.boolean().optional()}),[x.FLOW_RECORDED]:i.object({name:i.string(),flow:i.unknown()}),[x.TRANSPORT_OVERFLOW]:i.object({dropped:i.number()}),[x.TRUNCATED]:i.object({channel:i.string(),dropped:i.number()}),[x.BLIND_SPOT]:i.object({kind:i.nativeEnum(Yt),count:i.number()}),[x.SDK_FAILED]:i.object({site:i.string().max(64),message:i.string().max(500),errorType:i.string().max(64).optional()}),[x.NET_DETAIL]:i.object({url:i.string(),method:i.string().optional(),status:i.number(),headers:i.record(i.string()),resourceType:i.string().optional()}).passthrough(),[x.HUMAN_CONTROL]:gA,[x.HUMAN_MARK]:bA,[x.HUD_USED]:EA,[x.MEDIA_STATE]:i.object({event:i.nativeEnum(id),tag:i.enum(["video","audio"]),currentTime:i.number(),duration:i.number().optional(),readyState:i.number().int().min(0).max(4),paused:i.boolean()}),[x.CANVAS_DIGEST]:i.object({digest:i.string(),width:i.number().int().nonnegative(),height:i.number().int().nonnegative(),mean:i.tuple([i.number(),i.number(),i.number()]),trigger:i.nativeEnum(xs).optional()})}});var kW,RA=S(()=>{"use strict";Wt();kW=new Set([x.NET_REQUEST,x.NET_PENDING,x.NET_STREAM,x.NET_DETAIL,x.CONSOLE_ERROR,x.CONSOLE_WARN,x.ERROR_UNCAUGHT,x.ROUTE_CHANGE,x.SIGNAL,x.STORAGE_CHANGE,x.FLOW_RECORDED,x.TRANSPORT_OVERFLOW,x.TRUNCATED,x.BLIND_SPOT])});var NA=S(()=>{"use strict"});var wA,OA=S(()=>{"use strict";wA=t=>t});var me,UW,FW,GW,IA=S(()=>{"use strict";nf();me={UI_ADVANCED_REQUEST_FAILED:"ui-advanced-request-failed",UI_ADVANCED_UNSIGNALLED:"ui-advanced-unsignalled",SIGNAL_CONTRADICTED:"signal-contradicted",RESPONSE_IGNORED:"response-ignored",SIGNAL_WITHOUT_CONSEQUENCE:"signal-without-consequence",STATE_VS_RENDER:"state-vs-render",CONSEQUENCE_ELSEWHERE:"consequence-elsewhere",DUPLICATE_REQUEST:"duplicate-request",DUPLICATE_REQUEST_UNRELATED:"duplicate-request-unrelated",SCREEN_REQUEST_MISMATCH:"screen-request-mismatch",STALE_RESPONSE_APPLIED:"stale-response-applied",PARTIAL_FAILURE_IN_OK_RESPONSE:"partial-failure-in-ok-response",UNIT_MISMATCH:"unit-mismatch",PAGINATION_NOT_FETCHED:"pagination-not-fetched",WRITE_FIELD_IGNORED:"write-field-ignored",REQUEST_NEVER_SETTLED:"request-never-settled",FAILURE_MISATTRIBUTED:"failure-misattributed",ACTION_HAD_NO_EFFECT:"action-had-no-effect",ROUTE_RENDERED_NOTHING:"route-rendered-nothing",ROUTE_RENDERED_NOTHING_CRASHED:"route-rendered-nothing-crashed",EVIDENCE_SUPERSEDED:"evidence-superseded",EVIDENCE_PREDATES_EDIT:"evidence-predates-edit"},UW=new Set([me.REQUEST_NEVER_SETTLED,me.UI_ADVANCED_UNSIGNALLED,me.RESPONSE_IGNORED,me.SIGNAL_WITHOUT_CONSEQUENCE,me.STATE_VS_RENDER,me.CONSEQUENCE_ELSEWHERE,me.ROUTE_RENDERED_NOTHING,me.ACTION_HAD_NO_EFFECT,me.DUPLICATE_REQUEST,me.EVIDENCE_SUPERSEDED,me.EVIDENCE_PREDATES_EDIT]),FW=new Set([me.DUPLICATE_REQUEST_UNRELATED,me.SCREEN_REQUEST_MISMATCH]),GW={[me.UI_ADVANCED_REQUEST_FAILED]:[R.UI,R.NET],[me.UI_ADVANCED_UNSIGNALLED]:[R.UI,R.NET],[me.SIGNAL_CONTRADICTED]:[R.SIGNAL,R.NET],[me.RESPONSE_IGNORED]:[R.NET,R.UI],[me.SIGNAL_WITHOUT_CONSEQUENCE]:[R.SIGNAL,R.NET],[me.STATE_VS_RENDER]:[R.STATE,R.UI],[me.CONSEQUENCE_ELSEWHERE]:[R.NET,R.UI],[me.DUPLICATE_REQUEST]:[R.NET,R.NET],[me.DUPLICATE_REQUEST_UNRELATED]:[R.NET,R.NET],[me.SCREEN_REQUEST_MISMATCH]:[R.UI,R.NET],[me.STALE_RESPONSE_APPLIED]:[R.NET,R.UI],[me.PARTIAL_FAILURE_IN_OK_RESPONSE]:[R.NET,R.NET],[me.UNIT_MISMATCH]:[R.UI,R.NET],[me.PAGINATION_NOT_FETCHED]:[R.UI,R.NET],[me.WRITE_FIELD_IGNORED]:[R.NET,R.NET],[me.REQUEST_NEVER_SETTLED]:[R.TIME,R.NET],[me.FAILURE_MISATTRIBUTED]:[R.UI,R.NET],[me.ACTION_HAD_NO_EFFECT]:[R.NET,R.UI],[me.ROUTE_RENDERED_NOTHING]:[R.ROUTE,R.NET],[me.ROUTE_RENDERED_NOTHING_CRASHED]:[R.ROUTE,R.LOG],[me.EVIDENCE_SUPERSEDED]:[R.TIME,R.UI],[me.EVIDENCE_PREDATES_EDIT]:[R.TIME,R.UI]}});var Ro,df,jW,KW,CA=S(()=>{"use strict";Wt();Ro="__reticleIpc",df="reticle_capture",jW=Xa.FULL_PAGE_UNSUPPORTED,KW=Xa.NOT_COMPOSITED});var LA=S(()=>{"use strict"});var kA=S(()=>{"use strict"});var DA=S(()=>{"use strict"});function MA(t){return t===ic.CALM||t===ic.WAITING||t===ic.ASK||t===ic.WARN}var ic,PA,qW,ZW,$A=S(()=>{"use strict";ic={CALM:"calm",WAITING:"waiting",ASK:"ask",WARN:"warn"};PA="note that a lease is a SEPARATE context: the human watching this tab sees nothing of what you do there, so prefer this tab while someone is following along",qW='tab hidden and may be un-focusable from here; timers and rAF are clamped in a background tab, so an action can land on a page that never advances. Refocus it, or acquire a guaranteed scriptable context yourself with `reticle_run { tool: "reticle_lease", args: { action: "acquire", url } }` (a human can equivalently run `reticle drive <url>`) \u2014 '+PA,ZW="tab is not hidden but has not reported health recently \u2014 usually a quiet page rather than a stuck one, and very often still driveable. This is also the tab a human can see, so try it first. Timing-sensitive work (animations, debounces, gestures) is what degrades: pass `refuseWhenThrottled: true` to refuse rather than act over events that may not land. Lease a separate context only if a drive here actually fails; "+PA});var HA,d$,r9,o9,i9,UA=S(()=>{"use strict";J();Wt();vo();yo();HA=1,d$=i.object({harness:i.string().min(1).max(G.MAX_REF_LENGTH),driver:i.string().min(1).max(G.MAX_COMMAND_NAME_LENGTH),persona:i.string().max(1e3).optional()}),r9=i.object({v:i.literal(HA),actionId:i.string().min(1).max(G.MAX_REF_LENGTH),tool:i.string().min(1).max(G.MAX_COMMAND_NAME_LENGTH),args:i.record(i.unknown()).default({}),effect:i.unknown().optional(),settled:i.boolean().optional(),settledInMs:i.number().int().min(0).optional(),seqRange:i.object({from:i.number().int().min(0),to:i.number().int().min(0)}).optional(),tRange:i.object({from:i.number().int().min(0),to:i.number().int().min(0)}),at:i.number().int().min(0),drivenBy:d$.optional(),agent:i.string().min(1).max(G.MAX_REF_LENGTH).optional()}),o9=i.object({v:i.literal(HA),channel:i.literal(Bp.JOURNAL),capBytes:i.number().int().min(1).optional(),bytesOnDisk:i.number().int().min(0).optional(),droppedInBatch:i.number().int().min(0).optional(),at:i.number().optional()}),i9=i.object({claim:i.string().min(1).max(G.MAX_STRING_LENGTH),verified:i.nativeEnum(xn),source:i.string().max(G.MAX_URL_LENGTH).optional(),observed:i.string().max(G.MAX_STRING_LENGTH).optional(),expected:i.string().max(G.MAX_STRING_LENGTH).optional(),kind:i.nativeEnum(I).optional(),declaredBeforeActing:i.boolean().optional(),net:i.array(i.object({method:i.string().max(G.MAX_COMMAND_NAME_LENGTH),url:i.string().max(G.MAX_URL_LENGTH),status:i.number().optional(),body:i.string().max(G.MAX_STRING_LENGTH).optional()})).max(5).optional(),grade:i.string().max(G.MAX_STRING_LENGTH).optional(),couldNotSee:i.array(i.string().max(G.MAX_STRING_LENGTH)).optional(),reason:i.string().max(G.MAX_STRING_LENGTH).optional(),intent:i.string().max(G.MAX_STRING_LENGTH).optional(),intentDerived:i.boolean().optional(),failedPart:i.number().int().min(0).optional()})});var FA=S(()=>{"use strict"});var l9,GA=S(()=>{"use strict";J();l9=i.object({port:i.number(),pid:i.number(),cwd:i.string(),projectId:i.string().optional(),startedAt:i.number()})});var p9,BA=S(()=>{"use strict";J();p9=i.object({port:i.number(),pid:i.number(),root:i.string(),url:i.string(),sdkVersion:i.string().min(1).optional(),startedAt:i.number(),projectId:i.string().optional()})});var u$,m9,VA=S(()=>{"use strict";J();u$=i.object({directory:i.string().min(1),lastSeenAt:i.number()}),m9=i.object({version:i.literal(1),projects:i.record(i.string(),u$)})});var p$,nE,f$,h$,m$,b9,jA=S(()=>{"use strict";J();p$=1,nE={DECLARED:"declared",BOUND:"bound",PROVED:"proved"},f$=i.object({route:i.string().optional(),flow:i.string().optional(),files:i.array(i.string()).optional()}),h$=i.object({verdictId:i.string(),grade:i.string(),at:i.number(),runId:i.string().optional()}),m$=i.object({id:i.string().min(1),statement:i.string().min(1),state:i.enum([nE.DECLARED,nE.BOUND,nE.PROVED]),declaredAt:i.number(),binding:i.unknown().optional(),surface:f$.optional(),provenBy:h$.optional(),amended:i.array(i.object({statement:i.string(),at:i.number()})).optional()}),b9=i.object({version:i.literal(p$),intents:i.record(i.string(),m$)})});var KA=S(()=>{"use strict"});function Ad(t){return g$[t]}var tt,g$,E$,x9,rE=S(()=>{"use strict";J();tt={NO_SOURCE_MAPPING:"no-source-mapping",NO_STORE_REGISTERED:"no-store-registered",NO_SIGNAL_ON_MUTATION:"no-signal-on-mutation",UNDECLARED_CONTROL:"undeclared-control",MISSING_TESTID:"missing-testid",UNDECLARED_CHANGE:"undeclared-change",INTENT_UNDISCHARGED:"intent-undischarged",NO_FLOW_INTENT:"no-flow-intent",SOURCE_MAPPING_OFF:"source-mapping-off"},g$={[tt.NO_SOURCE_MAPPING]:"add the Reticle build plugin (@reticlehq/vite-plugin, @reticlehq/next, or the babel plugin) so elements carry data-reticle-source",[tt.NO_STORE_REGISTERED]:"import { registerStore } from '@reticlehq/browser' and call registerStore(name, store) with a subscribable store so its changes are observed; a bare getter is readable but does not report changes. For component-local React state, import { useReticleStore } from '@reticlehq/react/store' and call useReticleStore(name, value), assert the DOM, or read it with reticle_look { action: 'state', ref: '...' }",[tt.NO_SIGNAL_ON_MUTATION]:"fire reticle.signal(name, data) where this state is committed \u2014 commitAndSignal binds the two so they cannot drift",[tt.UNDECLARED_CONTROL]:"add this control to reticle.describe() so the capability contract matches what the app actually exposes",[tt.MISSING_TESTID]:'add data-testid="..." on this control so the flow can name it after a refactor',[tt.UNDECLARED_CHANGE]:'declare it with reticle_intent { action: "declare", intents: [{ id, statement }] } \u2014 the statement is prose, in your own words: which user does what, and what should become true',[tt.INTENT_UNDISCHARGED]:'draw a verdict whose `until` asserts the intent itself, then it discharges \u2014 or call reticle_run({ tool: "reticle_context" }) to see exactly what is still owed',[tt.SOURCE_MAPPING_OFF]:"nothing to install \u2014 this build has sourceMapping turned off, so no element carries data-reticle-source. Re-enable it in the Reticle plugin options unless this app renders through a non-DOM reconciler (react-three-fiber, react-pdf, ink), where the stamp is what would break it",[tt.NO_FLOW_INTENT]:'save it again with intent: "<which user does what, and what should become true>" \u2014 prose, in your own words \u2014 or set intentId to an intent already in the ledger'};E$={PIXELS_UNOBSERVED:"pixels-unobserved",CLAIM_ARITHMETIC_UNCHECKED:"claim-arithmetic-unchecked"},x9=i.object({kind:i.nativeEnum(E$),detail:i.string().min(1)})});var No,WA,w9,O9,zA=S(()=>{"use strict";J();ec();rE();Fg();No={PAGE_CONNECTED:"page connected",DOM_ACTIONS:"DOM actions",NETWORK:"network",CONSOLE:"console",APP_STATE:"app state (store registered)",SIGNALS:"signals on mutation",SOURCE_MAPPING:Jp,TEST_IDS:"stable test ids"},WA="run `npx @reticlehq/server init` in the app so its pages connect to Reticle in development",w9=[{capability:No.PAGE_CONNECTED,gaps:[],cost:"no page has connected, so nothing can be verified",fix:WA},{capability:No.DOM_ACTIONS,channel:R.UI,always:!0,gaps:[],cost:"controls cannot be driven or read",fix:WA},{capability:No.NETWORK,channel:R.NET,always:!0,gaps:[],cost:"requests cannot be asserted, so a save that never reached the server can pass",fix:"update @reticlehq/browser so the page reports its network channel"},{capability:No.CONSOLE,channel:R.LOG,always:!0,gaps:[],cost:"errors thrown in the page are invisible to a verdict",fix:"update @reticlehq/browser so the page reports its console channel"},{capability:No.APP_STATE,channel:R.STATE,gaps:[tt.NO_STORE_REGISTERED],cost:"state predicates fall back to reading the DOM",fix:Ad(tt.NO_STORE_REGISTERED)},{capability:No.SIGNALS,channel:R.SIGNAL,gaps:[tt.NO_SIGNAL_ON_MUTATION],cost:"the app never says it succeeded, so every verdict infers success from the DOM",fix:Ad(tt.NO_SIGNAL_ON_MUTATION)},{capability:No.SOURCE_MAPPING,channel:Cs.SOURCE,gaps:[tt.NO_SOURCE_MAPPING,tt.SOURCE_MAPPING_OFF],perControl:[tt.NO_SOURCE_MAPPING],cost:"a broken control is named, never the line that renders it",fix:Ad(tt.NO_SOURCE_MAPPING)},{capability:No.TEST_IDS,channel:Cs.TESTID,gaps:[tt.MISSING_TESTID],cost:"a saved flow loses its controls after a refactor",fix:Ad(tt.MISSING_TESTID)}],O9=i.array(i.nativeEnum(No)).max(8)});var YA=S(()=>{"use strict"});function b$(t){return Array.isArray(t)||typeof t=="string"}function T$(t){if(Array.isArray(t))return{keys:[...t.slice(0,49).map((n,r)=>String(r)),oE],total:t.length+1};if(typeof t=="string")return{keys:[oE],total:1};if(t instanceof Map){let e=[],n=0;for(let r of t.keys())n+=1,typeof r=="string"&&e.length<49&&e.push(r);return t.has(yd)?{keys:e,total:n}:{keys:[...e,yd],total:n+1}}if(t instanceof Set){let e=[];for(let n of t)typeof n=="string"&&e.length<49&&e.push(n);return{keys:[...e,yd],total:t.size+1}}if(typeof t=="object"&&t!==null){let e=Object.keys(t);return{keys:e.slice(0,50),total:e.length}}return{keys:[],total:0}}function uf(t){let{keys:e,total:n}=T$(t);return{found:!1,value:null,availableKeys:e,...n>e.length?{totalKeys:n}:{}}}function XA(t,e){let n=e.split(".").filter(o=>o.length>0),r=t;for(let o of n){if(oE===o&&b$(r)){r=r.length;continue}if(Array.isArray(r)){let s=Number(o);if(!Number.isInteger(s)||s<0||String(s)!==o||s>=r.length)return uf(r);r=r[s];continue}if(r instanceof Map){if(r.has(o)){r=r.get(o);continue}if(yd===o){r=r.size;continue}return uf(r)}if(r instanceof Set){if(yd===o){r=r.size;continue}if(r.has(o)){r=!0;continue}return uf(r)}if(typeof r=="object"&&r!==null&&Object.hasOwn(r,o)){r=r[o];continue}return uf(r)}return{found:!0,value:r}}function sc(t,e){if(e<0)return t;if(t instanceof Date)return Number.isNaN(t.getTime())?null:t.toISOString();if(t instanceof Set)return e===0?`[Set(${String(t.size)})]`:[...t].map(n=>sc(n,e-1));if(t instanceof Map){if(e===0)return`{Map(${String(t.size)})}`;let n=Object.create(null);for(let[r,o]of t)n[String(r)]=sc(o,e-1);return n}if(Array.isArray(t))return e===0?`[Array(${String(t.length)})]`:t.map(n=>sc(n,e-1));if(typeof t=="object"&&t!==null){let n=Object.keys(t);if(e===0)return`{\u2026${String(n.length)} keys}`;let r=Object.create(null);for(let o of n)r[o]=sc(t[o],e-1);return r}return t}var oE,yd,qA=S(()=>{"use strict";oE="length";yd="size"});var D9,M9,ZA=S(()=>{"use strict";Wt();D9={[ue.ENABLED]:"en",[ue.DISABLED]:"dis",[ue.CHECKED]:"chk",[ue.EXPANDED]:"exp",[ue.PRESSED]:"prs",[ue.FOCUSED]:"focus"},M9=new Set([ue.PRESENT,ue.VISIBLE,ue.HIDDEN])});var ks,H9,U9,QA=S(()=>{"use strict";J();ks={SHARE_PROOF:"share_proof",RUN_HISTORY:"run_history",TEAM_REVIEW:"team_review",CORPUS_HEAL:"corpus_heal",CI_GATE:"ci_gate",HOSTED_RUNNER:"hosted_runner"},H9=i.object({capability:i.nativeEnum(ks),reason:i.string(),unlockedBy:i.string(),learnMoreUrl:i.string().url()}),U9={[ks.SHARE_PROOF]:{reason:"Sharing a verification result with a teammate needs a hosted, linkable proof page.",unlockedBy:"Link a free Reticle Cloud account (reticle connect), then share the run."},[ks.RUN_HISTORY]:{reason:"Run history beyond this session lives in the hosted dashboard; local keeps only a buffer.",unlockedBy:"Link a free Reticle Cloud account to keep run history and trends."},[ks.TEAM_REVIEW]:{reason:"A shared review queue of pinned mistakes is a team feature \u2014 it needs a hosted store.",unlockedBy:"Add your team to Reticle Cloud to share a review queue."},[ks.CORPUS_HEAL]:{reason:"Corpus-ranked heal uses refactor outcomes learned across the fleet, served from the cloud.",unlockedBy:"Enable the hosted heal service on Reticle Cloud."},[ks.CI_GATE]:{reason:"Verify-before-merge is a governance gate that runs in your CI against a hosted policy.",unlockedBy:"Configure the Reticle Cloud CI gate for your repository."},[ks.HOSTED_RUNNER]:{reason:"Verifying without a local browser (CI, a background agent, or a deployed URL) needs a browser we run for you.",unlockedBy:"Link a Reticle Cloud account to run verifications on hosted browsers."}}});var vd,JA,ey,ty,S$,ny,ry=S(()=>{"use strict";J();vd={INSTALL:"install",ONBOARD:"onboard",FIRST_RUN:"first_run"},JA={STARTED:"started",COMPLETED:"completed",FAILED:"failed",ABANDONED:"abandoned",SKIPPED:"skipped"},ey={[vd.INSTALL]:["script_started","runtime_ready","cli_installed","agents_detected","mcp_registered"],[vd.ONBOARD]:["tour_started","concept_shown","first_look","first_act","first_verdict"],[vd.FIRST_RUN]:["project_detected","next_step_offered","instrumented","app_connected","driven","flow_recorded","verdict_produced"]},ty={LEASE:"lease",INIT_CONSENT:"init_consent"},S$=Object.values(ey).flatMap(t=>[...t]),ny=i.object({phase:i.nativeEnum(vd),step:i.enum(S$),status:i.nativeEnum(JA),elapsedMs:i.number().int().nonnegative().optional(),reason:i.string().max(64).optional(),stack:i.string().max(64).optional(),unattended:i.boolean().optional(),firstEver:i.boolean().optional(),offered:i.nativeEnum(ty).optional(),nextFollowed:i.boolean().optional()})});var oy,iE=S(()=>{"use strict";oy={AUTH_REFUSED:"auth_refused",LEASE_EXPIRED:"lease_expired",TAB_GONE:"tab_gone",NAVIGATED_AWAY:"navigated_away",ROUTE_SERVER_ERROR:"route_server_error",APP_NOT_REOPENED:"app_not_reopened",CONFIG_ELSEWHERE:"config_elsewhere",NO_LISTENER_NO_CONFIG:"no_listener_no_config",NO_LISTENER:"no_listener",NO_CONFIG:"no_config",SDK_NOT_REACHING_DAEMON:"sdk_not_reaching_daemon"}});var _$,iy,sE=S(()=>{"use strict";J();iE();_$={NO_SESSION:"no_session",NO_MATCH:"no_match",UNSUPPORTED:"unsupported",BAD_ARGS:"bad_args",NOT_READY:"not_ready",OTHER:"other"},iy=i.object({tool:i.string().min(1).max(64),reason:i.nativeEnum(_$),noSessionReason:i.nativeEnum(oy).optional(),retried:i.boolean()})});var x$,ay,Y9,sy,A$,y$,aE,v$,R$,cy,N$,w$,ly,cE=S(()=>{"use strict";J();x$={CONNECT:"connect",CLOSE_GAPS:"close_gaps",SWITCH_ON:"switch_on",EXPLORE:"explore"},ay={B0:"0-19",B20:"20-39",B40:"40-59",B60:"60-79",B80:"80-100"},Y9=Object.values(ay),sy=i.object({fingerprint:i.string().min(1).max(64),count:i.number().int().nonnegative(),message:i.string().max(300),tool:i.string().max(64).optional()}),A$={NONE:"none",LOCAL_ONLY:"local_only",REMOTE:"remote"},y$={GITHUB:"github",GITLAB:"gitlab",BITBUCKET:"bitbucket",AZURE:"azure",SOURCEHUT:"sourcehut",CODEBERG:"codeberg",SELF_HOSTED:"self_hosted"},aE=i.object({rssMb:i.number().int().nonnegative(),heapUsedMb:i.number().int().nonnegative(),freeMemMb:i.number().int().nonnegative(),totalMemMb:i.number().int().nonnegative(),load1x100:i.number().int().nonnegative(),cpuCount:i.number().int().nonnegative()}),v$=i.object({totalMs:i.number().int().nonnegative(),maxMs:i.number().int().nonnegative()}),R$=i.object({attempts:i.number().int().nonnegative(),successes:i.number().int().nonnegative(),failures:i.record(i.string(),i.number().int().nonnegative()).optional()}),cy=i.object({durationMs:i.number().int().nonnegative(),toolCalls:i.number().int().nonnegative(),toolCounts:i.record(i.string(),i.number().int().nonnegative()),toolErrors:i.number().int().nonnegative(),errors:i.array(sy).max(40).optional(),sdkFailures:i.number().int().nonnegative().optional(),sdkErrors:i.array(sy).max(40).optional(),verifications:i.number().int().nonnegative(),bugsFound:i.number().int().nonnegative().optional(),bugKinds:i.record(i.string(),i.number().int().nonnegative()).optional(),toolParams:i.record(i.string(),i.record(i.string(),i.number().int().nonnegative())).optional(),connections:i.record(i.string(),R$).optional(),toolTiming:i.record(i.string(),v$).optional(),busyMs:i.number().int().nonnegative().optional(),browserMs:i.number().int().nonnegative().optional(),browserCommands:i.number().int().nonnegative().optional(),peakConcurrentTools:i.number().int().nonnegative().optional(),unknownToolCalls:i.number().int().nonnegative().optional(),unknownTools:i.record(i.string().max(64),i.number().int().nonnegative()).optional(),noSessionErrors:i.number().int().nonnegative().optional(),postSocketFailures:i.number().int().nonnegative().optional(),postRetriesSaved:i.number().int().nonnegative().optional(),consecutiveRepeats:i.record(i.number().int().positive()).optional(),abandonedActions:i.number().int().nonnegative().optional(),machine:aE.optional(),clients:i.array(i.string().max(64)).max(8).optional(),clientVersions:i.record(i.string().max(64),i.string().max(32)).optional(),surface:i.string().max(32).optional(),appConnects:i.number().int().nonnegative().optional(),msToFirstApp:i.number().int().nonnegative().optional(),sdkVersion:i.string().min(1).max(32).optional(),toolCallsBeforeApp:i.number().int().nonnegative().optional(),endReason:i.enum(["never_used","explored","abandoned","verified","client_left"]).optional(),feedbackPrompted:i.number().int().nonnegative().optional(),errorClasses:i.record(i.string().max(16),i.number().int().nonnegative()).optional(),errorsRecovered:i.number().int().nonnegative().optional(),errorsRepeated:i.number().int().nonnegative().optional(),endedWithVerdict:i.boolean().optional(),lifetimeToolCalls:i.number().int().nonnegative().optional(),lifetimeVerifications:i.number().int().nonnegative().optional(),lifetimeBugsFound:i.number().int().nonnegative().optional(),updateNudged:i.boolean().optional(),updateOffered:i.string().max(32).optional(),hudControls:i.record(i.number()).optional(),hudViewMs:i.record(i.number()).optional(),hudPanelMs:i.record(i.number()).optional(),hudSlides:i.record(i.number()).optional(),hudJourney:i.array(i.string().max(64)).max(60).optional(),hudJourneyCut:i.literal(!0).optional(),nudgesShown:i.record(i.nativeEnum(x$),i.number().int().positive()).optional(),harnessRefusedCoverage:i.record(i.nativeEnum(ay),i.number().int().positive()).optional(),final:i.boolean(),exit:i.enum(["idle","signal","unknown"]).optional()}),N$={TINY:"tiny",SMALL:"small",MEDIUM:"medium",LARGE:"large",HUGE:"huge"},w$={NO_APP_FOUND:"no_app_found",MANIFEST_UNRECOGNISED:"manifest_unrecognised",WORKSPACE_APPS_UNRECOGNISED:"workspace_apps_unrecognised",WORKSPACE_ROOT_NO_APPS:"workspace_root_no_apps",DISCOVERY_FAILED:"discovery_failed"},ly=i.object({stack:i.string().min(1).max(64).optional(),stackSource:i.enum(["cwd","workspace"]).optional(),stackUnknownReason:i.nativeEnum(w$).optional(),stackMajor:i.number().int().nonnegative().optional(),size:i.nativeEnum(N$).optional(),monorepo:i.boolean().optional(),git:i.nativeEnum(A$),forge:i.nativeEnum(y$).optional(),ageWeeks:i.number().int().nonnegative().optional(),flowCount:i.number().int().nonnegative(),baselineCount:i.number().int().nonnegative(),visualBaselineCount:i.number().int().nonnegative(),runCount:i.number().int().nonnegative(),hasContract:i.boolean(),initialized:i.boolean().optional(),appConnectedBefore:i.boolean().optional(),capsuleCount:i.number().int().nonnegative(),featuresUsed:i.array(i.string().max(32)).max(24),featureDepth:i.number().min(0).max(1)})});var dy,lE=S(()=>{"use strict";dy={ACTIVE:"active",MISSING:"missing",INVALID:"invalid",EXPIRED:"expired",EVAL:"eval"}});var O$,I$,C$,dE,L$,k$,D$,M$,P$,$$,H$,U$,uy,py,F$,G$,B$,V$,j$,fy,uE=S(()=>{"use strict";J();Ed();O$={SIGNED_OUT:"signed_out",SIGNED_IN:"signed_in",LINKED:"linked"},I$={CLAUDE_CODE:"claude_code",CLAUDE_DESKTOP:"claude_desktop",CODEX:"codex",CURSOR:"cursor",GEMINI_CLI:"gemini_cli",ANTIGRAVITY:"antigravity",WINDSURF:"windsurf",CLINE:"cline",OPENCODE:"opencode",ZED:"zed",VSCODE:"vscode",OTHER:"other"},C$={NPX:"npx",GLOBAL:"global",PROJECT:"project",OTHER:"other"},dE={ZERO:"0",ONE:"1",TWO_THREE:"2-3",FOUR_NINE:"4-9",TEN_PLUS:"10+"},L$=i.object({view:i.nativeEnum(Tt).optional(),surface:i.nativeEnum(fi).optional(),tabs:i.nativeEnum(dE).optional()}),k$={CONNECT:"connect",HUD:"hud",LINK:"link"},D$=i.object({via:i.nativeEnum(k$)}),M$={STARTED:"started",COMPLETED:"completed"},P$={PROVED:"proved",NOT_PROVED:"not_proved",FAILED:"failed",BLOCKED:"blocked",STOPPED:"stopped"},$$={NOT_LINKED:"not_linked",PLATFORM_UNREACHABLE:"platform_unreachable",HARNESS_OFF:"harness_off",NO_CREDITS:"no_credits",NOT_ENTITLED:"not_entitled",COVERAGE_GATE:"coverage_gate",VERSION_SKEW:"version_skew",BROKEN:"broken",OTHER:"other"},H$={AGENT:"agent",HUD:"hud",DASHBOARD:"dashboard",CLI_TRY:"cli_try",PLAN:"plan"},U$=i.object({phase:i.nativeEnum(M$),source:i.nativeEnum(H$),hosted:i.boolean(),outcome:i.nativeEnum(P$).optional(),journeys:i.nativeEnum(dE).optional(),replayed:i.nativeEnum(dE).optional(),reason:i.nativeEnum($$).optional()}),uy={accountState:i.nativeEnum(O$).optional(),linked:i.boolean().optional(),workspaceId:i.string().min(1).max(128).optional(),client:i.nativeEnum(I$).optional(),launch:i.nativeEnum(C$).optional(),hud:L$.optional(),link:D$.optional(),harness:U$.optional()},py={ECONNRESET:"ECONNRESET",ECONNREFUSED:"ECONNREFUSED",EPIPE:"EPIPE",ETIMEDOUT:"ETIMEDOUT",OTHER:"other"},F$={STDIN_END:"stdin_end",IDLE:"idle",CLIENT_GONE_STORM:"client_gone_storm",WAKE_FAILED:"wake_failed"},G$=i.object({reason:i.nativeEnum(F$),uptimeMs:i.number().int().nonnegative(),drops:i.number().int().nonnegative(),toolCalls:i.number().int().nonnegative(),proxyId:i.string().min(1).max(64).optional()}),B$=i.object({ageMs:i.number().int().nonnegative()}),V$={FOREIGN:"foreign",OTHER_PROJECT:"other_project"},j$=i.object({presence:i.nativeEnum(V$)}),fy={proxyExit:G$.optional(),daemonDeath:B$.optional(),wakeRefusal:j$.optional()}});var K$,W$,hy,pE=S(()=>{"use strict";J();K$={CONTRADICTION:"contradiction",CRAWL:"crawl",REPLAY:"replay",ASSERTION:"assertion"},W$={APP:"app",REQUEST:"request",RETICLE:"reticle",UNCLASSIFIED:"unclassified"},hy=i.object({source:i.nativeEnum(K$),kind:i.string().min(1).max(64),falseGreen:i.boolean(),tool:i.string().min(1).max(64).optional(),repeat:i.boolean(),attribution:i.nativeEnum(W$),fingerprint:i.string().max(16).optional(),occurrence:i.number().int().positive().optional()})});var z$,qt,pz,Y$,X$,q$,Z$,Q$,my,J$,e2,t2,n2,r2,o2,i2,s2,a2,c2,l2,fz,gy=S(()=>{"use strict";J();ry();sE();cE();oc();vo();oc();lE();uE();pE();pE();z$=3,qt={RETICLE_INSTALLED:"reticle_installed",CLI_COMMAND_RUN:"cli_command_run",DAEMON_STARTED:"daemon_started",DAEMON_STOPPED:"daemon_stopped",SESSION_PROGRESS:"session_progress",VERIFICATION_COMPLETED:"verification_completed",PROJECT_PROFILED:"project_profiled",VERSION_CHANGED:"version_changed",RUNTIME_CRASHED:"runtime_crashed",FEEDBACK_SUBMITTED:"feedback_submitted",IDENTIFIED:"identified",MCP_CLIENT_CONNECTED:"mcp_client_connected",APP_INSTRUMENTED:"app_instrumented",MCP_CONNECTION_LOST:"mcp_connection_lost",MCP_PROXY_EXITED:"mcp_proxy_exited",DAEMON_DIED_UNCLEAN:"daemon_died_unclean",WAKE_REFUSED:"wake_refused",INIT_COMPLETED:"init_completed",ONBOARDING_STEP:"onboarding_step",BUG_FOUND:"bug_found",TOOL_REFUSED:"tool_refused",HUD_VIEWED:"hud_viewed",HUD_SIGNIN_PROMPTED:"hud_signin_prompted",PLATFORM_LINKED:"platform_linked",HARNESS_RUN:"harness_run"},pz=new Set([qt.DAEMON_STARTED,qt.DAEMON_STOPPED,qt.SESSION_PROGRESS,qt.MCP_CLIENT_CONNECTED,qt.APP_INSTRUMENTED,qt.PROJECT_PROFILED,qt.VERIFICATION_COMPLETED,qt.BUG_FOUND,qt.RUNTIME_CRASHED,qt.FEEDBACK_SUBMITTED,qt.TOOL_REFUSED,qt.HUD_VIEWED,qt.HUD_SIGNIN_PROMPTED,qt.HARNESS_RUN]),Y$={HUMAN:"human",AGENT:"agent"},X$={GIT_ORIGIN:"git_origin",GIT_ROOT:"git_root",PACKAGE_ROOT:"package_root",CWD:"cwd"},q$={HARNESS:"harness"},Z$=i.object({via:i.string().min(1).max(64),verified:i.string().min(1).max(16),passed:i.boolean(),falseGreenCaught:i.boolean(),durationMs:i.number().int().nonnegative().optional(),browser:i.string().min(1).max(16).optional(),brand:i.nativeEnum(He).optional(),reason:i.nativeEnum(ze).optional(),uncleanLoss:i.nativeEnum(J_).optional(),driven:i.nativeEnum(q$).optional(),sdkVersion:i.string().min(1).max(32).optional()}),Q$=i.object({from:i.string().min(1).max(64),to:i.string().min(1).max(64),nudged:i.boolean().optional(),direction:i.string().min(1).max(16)}),my={RETICLE:"reticle",OTHER:"other"},J$=i.object({kind:i.string().min(1).max(32),errorType:i.string().min(1).max(64).optional(),fingerprint:i.string().min(1).max(64).optional(),message:i.string().max(300).optional(),frames:i.array(i.string().max(120)).max(12).optional(),tool:i.string().min(1).max(64).optional(),breadcrumb:i.array(i.string().max(64)).max(12).optional(),nodeVersion:i.string().max(24).optional(),arch:i.string().max(16).optional(),machine:aE.optional(),syscall:i.string().max(32).optional(),errno:i.string().max(32).optional(),loopback:i.boolean().optional(),port:i.enum([my.RETICLE,my.OTHER]).optional(),internalFrame:i.string().max(64).optional()}),e2=i.object({reconnect:i.boolean(),daemonAgeMs:i.number().int().nonnegative(),client:i.string().min(1).max(64).optional(),appConnected:i.boolean().optional(),proxyId:i.string().min(1).max(64).optional()}),t2=i.object({initialized:i.boolean(),agentAttached:i.boolean(),msToFirstApp:i.number().int().nonnegative(),firstEver:i.boolean().optional()}),n2={FIRST:"first",BUDGET_SPENT:"budget_spent",RECOVERED:"recovered"},r2={SSE_ENDED:"sse_ended",DAEMON_SHUTDOWN:"daemon_shutdown",SSE_ERROR:"sse_error",SSE_ABORTED:"sse_aborted",SSE_CLOSED:"sse_closed",CONNECT_ERROR:"connect_error",SSE_RESET:"sse_reset",OTHER:"other"},o2=i.object({stage:i.nativeEnum(n2),reason:i.nativeEnum(r2),attempts:i.number().int().nonnegative(),pendingLost:i.number().int().nonnegative().optional(),errCode:i.nativeEnum(py).optional(),responded:i.boolean().optional(),proxyId:i.string().min(1).max(64).optional()}),i2={SKILL_FILE:"skill_file",NPX_SKILL:"npx_skill",PLUGIN:"plugin",INSTALL_SCRIPT:"install_script",DOCS_SITE:"docs_site",README:"readme",BLOG:"blog",CLI_DIRECT:"cli_direct",UNKNOWN:"unknown"},s2={CONTAINER:"container",HOSTED_WORKSPACE:"hosted_workspace",CI_RUNNER:"ci_runner",AGENT_SANDBOX:"agent_sandbox"},a2={CONNECTED:"connected",NO_DAEMON:"no_daemon",NO_SESSION:"no_session",NO_PAGE:"no_page"},c2={NO_DEV_COMMAND:"no_dev_command",SPLIT_LOOPBACK:"split_loopback",PORT_BUSY:"port_busy",DEV_SERVER_EXITED:"dev_server_exited",NO_URL:"no_url",NOT_READY:"not_ready",PAGE_NOT_SERVED:"page_not_served",PAGE_TLS_REFUSED:"page_tls_refused",SDK_MISSING:"sdk_missing",NO_SESSION:"no_session",DESKTOP_NO_SESSION:"desktop_no_session"},l2=i.object({ok:i.boolean(),reason:i.string().max(64).optional(),stack:i.string().max(64).optional(),mcpRegistered:i.boolean().optional(),confirmation:i.nativeEnum(a2).optional(),stop:i.nativeEnum(c2).optional()}),fz=i.object({v:i.literal(z$),anonymousId:i.string().min(1).max(128),projectId:i.string().min(1).max(128).optional(),sessionId:i.string().min(1).max(64).optional(),event:i.nativeEnum(qt),ts:i.number().int().nonnegative(),version:i.string().min(1).max(64),ci:i.boolean(),automation:i.nativeEnum(s2).optional(),projectIdSource:i.nativeEnum(X$).optional(),os:i.string().min(1).max(32),tzOffsetMin:i.number().int().min(-900).max(900).optional(),internal:i.boolean().optional(),idEphemeral:i.boolean().optional(),feedback:AA.optional(),actor:i.nativeEnum(Y$).optional(),command:i.string().min(1).max(32).optional(),flags:i.array(i.string().max(32)).max(16).optional(),session:cy.optional(),project:ly.optional(),verification:Z$.optional(),versionChange:Q$.optional(),crash:J$.optional(),identity:yA.optional(),connection:e2.optional(),init:l2.optional(),onboarding:ny.optional(),bug:hy.optional(),refusal:iy.optional(),outage:o2.optional(),instrumentation:t2.optional(),installSource:i.nativeEnum(i2).optional(),licenseId:i.string().min(1).max(64).optional(),licenseStatus:i.nativeEnum(dy).optional(),licenseKeyPresent:i.boolean().optional(),...uy,...fy})});var Ey=S(()=>{"use strict"});var by,fE=S(()=>{"use strict";Zm();by={SESSIONS:"reticle_sessions",LOOK:"reticle_look",SNAPSHOT:"reticle_snapshot",QUERY:"reticle_query",INSPECT:"reticle_inspect",ACT:Ya.ACT,ACT_SEQUENCE:Ya.ACT_SEQUENCE,ACT_AND_WAIT:Ya.ACT_AND_WAIT,OBSERVE:"reticle_observe",LINEAGE:"reticle_lineage",WAIT_FOR:"reticle_wait_for",NETWORK:"reticle_network",CONSOLE:"reticle_console",ANIMATIONS:"reticle_animations",ASSERT:"reticle_assert",RECONCILE:"reticle_reconcile",BASELINE_SAVE:"reticle_baseline_save",BASELINE_LIST:"reticle_baseline_list",DIFF:"reticle_diff",RECORD_START:"reticle_record_start",RECORD_STOP:"reticle_record_stop",REPLAY:"reticle_replay",EXPLORE:"reticle_explore",NARRATE:"reticle_narrate",CLOCK:"reticle_clock",STATE:"reticle_state",STORAGE:"reticle_storage",CAPABILITIES:"reticle_capabilities",CONTRACT_SAVE:"reticle_contract_save",DOMAIN:"reticle_domain",FLOW_SAVE:"reticle_flow_save",FLOW_LIST:"reticle_flow_list",FLOW_LOAD:"reticle_flow_load",FLOW_DELETE:"reticle_flow_delete",FLOW_REPLAY:"reticle_flow_replay",FLOW_VERIFY:"reticle_flow_verify",FLOW_SAVE_RECORDED:"reticle_flow_save_recorded",FLOW_HEAL:"reticle_flow_heal",FLOW_MUTATE:"reticle_flow_mutate",ANNOTATE:"reticle_annotate",AFFECTED:"reticle_affected",COVERAGE:"reticle_coverage",VERIFY_CHANGE:"reticle_verify_change",VERIFY_EXPLORE:"reticle_verify_explore",INTENT:"reticle_intent",CONTEXT:"reticle_context",MAP:"reticle_map",VERIFY:"reticle_verify",PROJECT:"reticle_project",ACCOUNT:"reticle_account",MEMORY:"reticle_memory",RUN_RECORD:"reticle_run_record",SCREENSHOT:"reticle_screenshot",NETWORK_MOCK:"reticle_network_mock",VIEWPORT:"reticle_viewport",VISUAL_DIFF:"reticle_visual_diff",CRAWL:"reticle_crawl",SCROLL_TO:"reticle_scroll_to",SESSION_TUNE:"reticle_session_tune",END_SESSION:"reticle_end_session",YIELD:"reticle_yield",RESUME:"reticle_resume",MESSAGES:"reticle_messages",REVIEW:"reticle_review",WAIT_READY:"reticle_wait_ready",NAVIGATE:"reticle_navigate",REFRESH:"reticle_refresh",RUN_EXPORT:"reticle_run_export",BASELINE:"reticle_baseline",SESSION:"reticle_session",RECORD:"reticle_record",FLOW:"reticle_flow",LEASE:"reticle_lease",LEASE_ACQUIRE:"reticle_lease_acquire",LEASE_RELEASE:"reticle_lease_release",TOOLS:"reticle_tools",RUN:"reticle_run",FEEDBACK:"reticle_feedback"}});var Ty,d2,pf,u2,_z,xz,Az,Sy=S(()=>{"use strict";J();fE();Ty="reticle connect",d2={HARNESS_NOT_LINKED:"harness_not_linked"},pf={HUMAN:"human",AGENT:"agent"},u2=i.discriminatedUnion("who",[i.object({who:i.literal(pf.HUMAN),run:i.string()}),i.object({who:i.literal(pf.AGENT),tool:i.string()})]),_z=i.object({code:i.enum([d2.HARNESS_NOT_LINKED]),next:i.array(u2)}),xz=[{who:pf.HUMAN,run:Ty},{who:pf.AGENT,tool:by.ACT_AND_WAIT}],Az=`Connect your Reticle account to run the Harness: \`${Ty}\`.`});var _y=S(()=>{"use strict"});var xy=S(()=>{"use strict"});var Cz,Lz,kz,Dz,Ay=S(()=>{"use strict";ec();oc();tf();Wt();Cz={[hi.WEB]:{surface:Bn.WEB,isDesktopShell:!1,usesWebKit:!1,ownsCoverageKinds:!1,hasOwnBaselineDirectory:!1},[hi.ELECTRON]:{surface:Bn.DESKTOP,isDesktopShell:!0,projectMarker:{dependency:"electron"},usesWebKit:!1,ownsCoverageKinds:!0,hasOwnBaselineDirectory:!0},[hi.TAURI]:{surface:Bn.DESKTOP,isDesktopShell:!0,projectMarker:{file:"src-tauri/tauri.conf.json"},usesWebKit:!0,ownsCoverageKinds:!1,hasOwnBaselineDirectory:!0}},Lz=new Set(Object.values(Gn)),kz={[hi.WEB]:Gr.WEB,[hi.ELECTRON]:Gr.WEBVIEW,[hi.TAURI]:Gr.WEBVIEW},Dz={[Bn.WEB]:{reset:"cheap",replayPrefix:"free",time:"injectable",observation:"exact",actions:"reversible"},[Bn.DESKTOP]:{reset:"cheap",replayPrefix:"free",time:"injectable",observation:"exact",actions:"reversible"},[Bn.MOBILE]:{reset:"costly",replayPrefix:"costly",time:"wall",observation:"exact",actions:"reversible"},[Bn.SERVICE]:{reset:"costly",replayPrefix:"unsafe",time:"wall",observation:"exact",actions:"irreversible"},[Bn.GAME]:{reset:"cheap",replayPrefix:"free",time:"stepped",observation:"exact",actions:"reversible"},[Bn.DEVICE]:{reset:"costly",replayPrefix:"unsafe",time:"wall",observation:"sampled",actions:"irreversible"}}});var Ry,p2,f2,yy,h2,Ny,m2,vy,g2,at,E2,b2,T2,S2,_2,x2,wy,A2,y2,Oy,hE=S(()=>{"use strict";J();Ry=i.object({calls:i.number().int().nonnegative(),verdicts:i.number().int().nonnegative(),passed:i.number().int().nonnegative(),failed:i.number().int().nonnegative(),unknown:i.number().int().nonnegative(),refusals:i.number().int().nonnegative(),marks:i.number().int().nonnegative(),sessions:i.number().int().nonnegative(),tokensReturned:i.number().int().nonnegative(),drivingMs:i.number().int().nonnegative()}),p2=i.object({date:i.string(),counts:Ry}),f2=i.object({longestRunMs:i.number().int().nonnegative(),bestVerdictDay:i.number().int().nonnegative(),bestDefectDay:i.number().int().nonnegative(),streakDays:i.number().int().nonnegative(),bestStreakDays:i.number().int().nonnegative()}),yy=i.object({value:i.number().nonnegative(),basis:i.string()}),h2=i.object({tokens:yy,minutes:yy}),Ny=10,m2=i.object({at:i.number().int().nonnegative(),title:i.string(),detail:i.string().optional(),source:i.string().optional()}),vy=i.object({counts:Ry,days:i.array(p2),records:f2,savings:h2,since:i.number().int().nonnegative(),defects:i.array(m2).default([])}),g2=i.object({signedIn:i.boolean(),org:i.string().optional(),email:i.string().optional(),host:i.string().optional()}),at={FREE:"free",TRIAL:"trial",PAID:"paid"},E2=i.object({provider:i.string(),harnessEnabled:i.boolean(),harnessEntitled:i.boolean(),providerReady:i.boolean().optional(),credits:i.object({used:i.number().min(0),limit:i.number().min(0),kind:i.enum([at.FREE,at.TRIAL,at.PAID]).optional(),daysLeft:i.number().int().min(0).optional()}).optional(),platformUrl:i.string().optional(),planUrl:i.string().optional(),plan:i.object({kind:i.enum([at.FREE,at.TRIAL,at.PAID]),daysLeft:i.number().int().min(0).optional(),seats:i.number().int().min(0).optional()}).optional(),harnessRuns:i.number().int().min(0).optional(),memoryEntries:i.number().int().min(0).optional()}),b2=60,T2=i.object({runId:i.string(),steps:i.number().int().min(0),lines:i.array(i.string()).max(b2).optional()}),S2=i.object({runUrl:i.string().optional(),said:i.string().optional(),seq:i.number().int().min(0).optional()}),_2=500,x2=5,wy=64,A2=i.object({text:i.string().max(_2),seen:i.boolean(),by:i.string().max(wy).optional()}),y2=i.object({agents:i.array(i.string().max(wy)).max(8),notes:i.array(A2).max(x2)}),Oy=i.object({schemaVersion:i.number().int().positive(),project:vy,global:vy,projectName:i.string().optional(),dashboardUrl:i.string().optional(),account:g2.optional(),harnessConfig:E2.optional(),harnessDrive:T2.optional(),lastDrive:S2.optional(),agent:y2.optional(),notices:i.array(i.unknown()).max(8).optional(),coverage:i.record(i.number()).optional(),sync:i.record(i.unknown()).optional(),instrumentation:i.record(i.unknown()).optional()})});var Iy=S(()=>{"use strict"});function ac(t){let e=2166136261;for(let n=0;n<t.length;n++)e^=t.charCodeAt(n),e=Math.imul(e,16777619)>>>0;return e.toString(16).padStart(8,"0")}function Cy(t){let e=Object.keys(t).sort().map(n=>{var r;return`${n}:${[...(r=t[n])!=null?r:[]].sort().join(",")}`}).join("|");return ac(e)}var mE,Rd,Ly=S(()=>{"use strict";Wt();mE=Cy({messageKinds:Object.values(Kt),commands:Object.values(k),actions:Object.values(L),events:Object.values(x)}),Rd={commands:Object.values(k),events:Object.values(x),actions:Object.values(L)}});var ky,Dy=S(()=>{"use strict";ky="[Reticle] this page could not open a websocket to "});var My=S(()=>{"use strict"});var D=S(()=>{"use strict";t_();Tx();Sx();_x();yx();Wt();vx();Nx();Ix();Lx();Mx();Px();vo();$x();Hx();Ux();Hg();Ed();jx();Fg();Xx();Zx();Qx();Jg();sf();TA();SA();vA();RA();od();Zm();bx();tg();NA();Sg();Eg();_g();OA();hd();IA();CA();yo();Ng();vg();Ig();Cg();Lg();LA();kA();DA();$A();UA();FA();GA();BA();VA();jA();KA();rE();zA();YA();qg();Wg();qA();ZA();QA();gy();iE();sE();Ey();fE();Sy();_y();tf();nf();xy();Ay();cE();uE();lE();oc();hE();Iy();Ly();Dy();My()});function ve(t,e){return t[e]}function Py(t){let e=Object.getOwnPropertyDescriptor(t,"value");return e===void 0?void 0:ve(e,"set")}var wo=S(()=>{"use strict"});function N2(){for(let t of mi)t.deref()===void 0&&mi.delete(t);for(;mi.size>v2;){let t=mi.values().next();if(t.done===!0)break;mi.delete(t.value)}}function Uy(){let t=[];for(let e of mi){let n=e.deref();n!==void 0&&t.push(n)}return t}function Hy(t,e){if(!$y.has(t)){$y.add(t),mi.add(new WeakRef(t)),EE+=1,EE>=R2&&(EE=0,N2()),bE.add(e);for(let n of ff)n(t)}}function Fy(){return Uy()}function Gy(t){return bE.has(t)}function Ds(t){if(!bE.has(t))return null;for(let e of Uy())if(e.host===t)return e;return null}function By(t){return ff.add(t),()=>ff.delete(t)}function Vy(){let t=Element.prototype,e=ve(t,"attachShadow");if(typeof e!="function")return()=>{};gE+=1;let n=function(s){let a=e.call(this,s);return Hy(a,this),a};t.attachShadow=n;let r=o=>{for(let s of o.querySelectorAll("*")){let a=s.shadowRoot;a!==null&&(Hy(a,s),r(a))}};return document.documentElement!==null&&r(document.documentElement),()=>{ve(t,"attachShadow")===n&&(t.attachShadow=e),gE-=1,!(gE>0)&&(mi.clear(),ff.clear())}}function w2(t){let e=t.parentElement;if(e===null||e.shadowRoot!==null)return null;let n=Ds(e);if(n===null)return null;for(let r of Array.from(n.querySelectorAll("slot")))if(r.assignedElements().includes(t))return r;return null}function gi(t){var r;let e=(r=t.assignedSlot)!=null?r:w2(t);if(e!==null)return e;if(t.parentElement!==null)return t.parentElement;let n=t.getRootNode().host;return n!=null?n:null}var gE,mi,$y,bE,v2,R2,EE,ff,Oo=S(()=>{"use strict";wo();gE=0,mi=new Set,$y=new WeakSet,bE=new WeakSet,v2=4e3,R2=250,EE=0;ff=new Set});function Wy(t){SE=t}function _E(t){zy=t}function Xy(){return SE}function qy(t){Ky=t.join(",")}function ft(t){return t.closest(Ei)!==null}function bi(t){return ft(t)?!Yy()||t.closest(I2)===null:!1}function jr(t){return t!==null&&t.closest(Ei)!==null}function _t(t){let n=[Yy()?C2:Ei,O2,Ky].filter(r=>r.length>0).join(",");return t.closest(n)!==null}function Nd(t){return _t(t)||ft(t)}function D2(t){var r;let e=t.querySelector(k2);if(e!==null)return{name:TE.VITE,host:e};for(let o of Array.from(t.querySelectorAll(L2))){let s=(r=o.shadowRoot)!=null?r:Ds(o);if((s!=null?s:o).querySelector(jy)!==null)return{name:TE.NEXT,host:o}}let n=t.querySelector(jy);return n===null?void 0:{name:TE.NEXT,host:n}}function Zy(t){let e=t[0];if(e===void 0)return;let n=D2(e.ownerDocument);if(n!==void 0)return t.some(r=>!M2(r,n.host))?n.name:void 0}function M2(t,e){var n;for(let r=t;r!==null;){if(r===e)return!0;let o=r.getRootNode();r=(n=r.parentNode)!=null?n:o instanceof ShadowRoot?o.host:null}return!1}function hf(t){for(let e of Array.from(t.querySelectorAll(P2)))if(e.closest(Ei)===null&&!(e instanceof HTMLElement&&(e.hidden||e.closest("[hidden]")!==null))&&!(e instanceof HTMLElement&&getComputedStyle(e).display==="none"))return!0;return!1}var Ei,O2,Ky,SE,zy,Yy,I2,C2,TE,L2,jy,k2,P2,Ye=S(()=>{"use strict";D();Oo();Ei=bd,O2="[data-agentation],#__next-build-watcher,nextjs-portal,[data-nextjs-dialog],[data-nextjs-toast]",Ky="",SE=!1;zy=!1;Yy=()=>SE&&!zy;I2="[data-reticle-dock]";C2="[data-reticle-log],[data-reticle-harness-log],[data-reticle-chat-pill-text],[data-reticle-agent-said],[data-reticle-agent-note],[data-reticle-act-line]";TE={NEXT:"Next.js error dialog",VITE:"Vite error overlay"},L2="nextjs-portal",jy="[data-nextjs-dialog]",k2="vite-error-overlay";P2='dialog[open], [aria-modal="true"]'});function Ti(){return mf}function Kn(){return`[${mf}]`}function Te(t){return t.getAttribute(mf)}function rv(t){mf=t!==void 0&&Ox.test(t)?t:Ns}var mf,xt=S(()=>{"use strict";D();mf=Ns});function ov(t,e){var o;if(t===null||typeof t!="object")return;let r=((o=t.ownerDocument)!=null?o:t).defaultView;if(r!=null)return r[e]}function vn(t,e,n){var o;let r=(o=ov(t,e))!=null?o:n;return typeof r=="function"&&t instanceof r}function lv(t){let e=fn(t)?"HTMLTextAreaElement":"HTMLInputElement",n=ov(t,e);if(typeof n!="function")return;let r=n.prototype;return typeof r=="object"&&r!==null?r:void 0}var pn,xE,Xe,G2,Si,Ie,fn,ur,wd,iv,sv,av,cv,gf,Rn=S(()=>{"use strict";pn=t=>vn(t,"Element",typeof Element=="undefined"?void 0:Element),xE=t=>vn(t,"HTMLImageElement",typeof HTMLImageElement=="undefined"?void 0:HTMLImageElement),Xe=t=>vn(t,"HTMLElement",typeof HTMLElement=="undefined"?void 0:HTMLElement),G2=t=>vn(t,"SVGElement",typeof SVGElement=="undefined"?void 0:SVGElement),Si=t=>Xe(t)||G2(t),Ie=t=>vn(t,"HTMLInputElement",typeof HTMLInputElement=="undefined"?void 0:HTMLInputElement),fn=t=>vn(t,"HTMLTextAreaElement",typeof HTMLTextAreaElement=="undefined"?void 0:HTMLTextAreaElement),ur=t=>vn(t,"HTMLSelectElement",typeof HTMLSelectElement=="undefined"?void 0:HTMLSelectElement),wd=t=>vn(t,"HTMLButtonElement",typeof HTMLButtonElement=="undefined"?void 0:HTMLButtonElement),iv=t=>vn(t,"HTMLMeterElement",typeof HTMLMeterElement=="undefined"?void 0:HTMLMeterElement),sv=t=>vn(t,"HTMLOutputElement",typeof HTMLOutputElement=="undefined"?void 0:HTMLOutputElement),av=t=>vn(t,"HTMLProgressElement",typeof HTMLProgressElement=="undefined"?void 0:HTMLProgressElement),cv=t=>vn(t,"HTMLFormElement",typeof HTMLFormElement=="undefined"?void 0:HTMLFormElement),gf=t=>vn(t,"HTMLIFrameElement",typeof HTMLIFrameElement=="undefined"?void 0:HTMLIFrameElement)});function Sf(t){return B2.has(t)||t.startsWith(Ef)||t.startsWith(bf)||t.startsWith(Tf)}var ct,Ef,bf,Tf,B2,Kr=S(()=>{"use strict";ct={SESSION:"__reticle_session",REF_BASE:"__reticle_ref_base",PRESENTER_LOG:"reticle-presenter-log",PRESENTER_LOG_OWNER:"reticle-presenter-log-owner",PRESENTER_SETTINGS:"reticle-presenter-settings",PRESENTER_MINIMISED:"reticle-presenter-minimised",PRESENTER_OPEN:"reticle-presenter-open",PRESENTER_VIEW:"reticle-presenter-view",CAROUSEL_DISMISSED:"reticle.carousel.dismissed",ANNOTATION_HISTORY:"reticle.annotations.history.v1"},Ef="reticle.tour.seen.",bf="reticle.harness.persona.",Tf="reticle.impact.seen.",B2=new Set(Object.values(ct))});function Ms(t){let e=G.MAX_REF_LENGTH;return e>=t.length?t:`${t.slice(0,e)}${V2}`}function W2(t){try{let e=t==null?void 0:t.getItem(uv),n=e==null?Number.NaN:Number(e);return Number.isSafeInteger(n)&&n>0?n:0}catch{return 0}}var dv,V2,AE,j2,uv,K2,Id,ht,Cd,Io,cc,lc,dc,Co,pv,yE,fv,Od,X,lt=S(()=>{"use strict";D();Kr();dv=1e4,V2="\u2026",AE="e";j2=1e3,uv=ct.REF_BASE,K2=100;Od=class{constructor(e=()=>globalThis.sessionStorage){b(this,Co);b(this,Id,new WeakMap);b(this,ht,new Map);b(this,Cd);b(this,Io,0);b(this,cc,0);b(this,lc,0);b(this,dc,0);f(this,Cd,e)}get size(){return c(this,ht).size}markEdited(){f(this,dc,c(this,Io))}mintedBeforeLastEdit(e){if(c(this,dc)===0||!e.startsWith(AE))return!1;let n=Number(e.slice(AE.length));return Number.isSafeInteger(n)&&n>0&&n<=c(this,dc)}refFor(e){let n=c(this,Id).get(e);if(n!==void 0){let o=c(this,ht).get(n);return c(this,ht).delete(n),c(this,ht).set(n,o!=null?o:new WeakRef(e)),n}c(this,Io)>=c(this,cc)&&E(this,Co,pv).call(this),f(this,Io,c(this,Io)+1);let r=wA(`${AE}${String(c(this,Io))}`);return c(this,Id).set(e,r),c(this,ht).set(r,new WeakRef(e)),f(this,lc,c(this,lc)+1),c(this,lc)>=j2?(f(this,lc,0),E(this,Co,fv).call(this)):c(this,ht).size>dv&&E(this,Co,yE).call(this),r}resolve(e){let n=c(this,ht).get(e);if(n===void 0)return null;let r=n.deref();return r===void 0||!r.isConnected?(c(this,ht).delete(e),null):(c(this,ht).delete(e),c(this,ht).set(e,n),r)}};Id=new WeakMap,ht=new WeakMap,Cd=new WeakMap,Io=new WeakMap,cc=new WeakMap,lc=new WeakMap,dc=new WeakMap,Co=new WeakSet,pv=function(){let e;try{e=c(this,Cd).call(this)}catch{e=void 0}let n=Math.max(W2(e),c(this,Io));f(this,cc,n+K2);try{e==null||e.setItem(uv,String(c(this,cc)))}catch{}f(this,Io,n)},yE=function(){let e=c(this,ht).keys().next();e.done!==!0&&c(this,ht).delete(e.value)},fv=function(){for(let[e,n]of c(this,ht)){let r=n.deref();(r===void 0||!r.isConnected)&&c(this,ht).delete(e)}for(;c(this,ht).size>dv;)E(this,Co,yE).call(this)};X=new Od});function X2(t){if(t.id.length>0)return`#${t.id}`;let e=t.getAttribute("class");return e!==null&&e.trim().length>0?`.${e.trim().split(/\s+/).join(".")}`:t.tagName.toLowerCase()}function hv(t){let e=t.ownerDocument.defaultView;if(e===null)return[];let n=[];for(let r=t;r!==null&&r!==t.ownerDocument.documentElement;r=r.parentElement){let o=e.getComputedStyle(r);for(let s of z2){let a=o.getPropertyValue(s);a.length>0&&a!==Y2[s]&&n.push({on:X2(r),property:s,value:a})}}return n}function _f(t){var o;let e=(o=t==null?void 0:t.overflow)!=null?o:"",[n="visible",r=n]=(e===""?"visible":e).split(/\s+/);return[t===null||t.overflowX===""?n:t.overflowX,t===null||t.overflowY===""?r:t.overflowY]}function vE(t,e){var Y;if(e.clipBox!==void 0)return e.clipBox;let n=t.getBoundingClientRect(),r=e.style,o=te=>Number.parseFloat(te!=null?te:"")||0,s=(te,Ce)=>Ce===void 0||Ce===""||Ce==="none"||Ce==="hidden"?0:o(te),a=Xe(t)&&t.offsetWidth>0?n.width/t.offsetWidth:1,l=Xe(t)&&t.offsetHeight>0?n.height/t.offsetHeight:1,d=Xe(t)&&t.offsetWidth>0?n.left+t.clientLeft*a:n.left+s(r==null?void 0:r.borderLeftWidth,r==null?void 0:r.borderLeftStyle),u=Xe(t)&&t.offsetHeight>0?n.top+t.clientTop*l:n.top+s(r==null?void 0:r.borderTopWidth,r==null?void 0:r.borderTopStyle),p=Xe(t)&&t.offsetWidth>0?d+t.clientWidth*a:n.right-s(r==null?void 0:r.borderRightWidth,r==null?void 0:r.borderRightStyle),h=Xe(t)&&t.offsetHeight>0?u+t.clientHeight*l:n.bottom-s(r==null?void 0:r.borderBottomWidth,r==null?void 0:r.borderBottomStyle),m=((Y=r==null?void 0:r.overflowClipMargin)!=null?Y:"").split(/\s+/),g=o(m.at(-1)),T=m.includes("border-box"),_=m.includes("content-box"),[A,N]=_f(r),y=A==="clip"?(T?n.left:d+(_?o(r==null?void 0:r.paddingLeft)*a:0))-g*a:d,v=A==="clip"?(T?n.right:p-(_?o(r==null?void 0:r.paddingRight)*a:0))+g*a:p,O=N==="clip"?(T?n.top:u+(_?o(r==null?void 0:r.paddingTop)*l:0))-g*l:u,j=N==="clip"?(T?n.bottom:h-(_?o(r==null?void 0:r.paddingBottom)*l:0))+g*l:h;return e.clipBox={left:y,right:v,top:O,bottom:j,width:v-y,height:j-O},e.clipBox}function mv(t,e,n,r){let o=(u,p,h,m,g)=>{if(p>m&&u<g)return[u,p];let T=Math.min(h,g-m);return u>=g?[g-T,g]:[m,m+T]},[s,a]=n?o(t.left,t.right,t.width,e.left,e.right):[t.left,t.right],[l,d]=r?o(t.top,t.bottom,t.height,e.top,e.bottom):[t.top,t.bottom];return{left:s,right:a,top:l,bottom:d,width:a-s,height:d-l}}var z2,Y2,RE=S(()=>{"use strict";Rn();z2=["filter","opacity","transform","mix-blend-mode","backdrop-filter"],Y2={filter:"none",opacity:"1",transform:"none","mix-blend-mode":"normal","backdrop-filter":"none"}});function gv(t){var n;return((n=t.match(/-?\d*\.?\d+(?:e[-+]?\d+)?|NaN|Infinity|-Infinity/gi))!=null?n:[]).map(r=>Number(r))}function Q2(t){return/NaN|Infinity/i.test(t)?!0:gv(t).some(e=>!Number.isFinite(e))}function J2(t){let e=gv(t).filter(s=>Number.isFinite(s));if(e.length===0)return!0;let n=e.filter((s,a)=>a%2===0),r=e.filter((s,a)=>a%2===1),o=s=>s.every(a=>a===s[0]);return n.length>1&&o(n)&&o(r)}function xf(t){let e=[],n=0;for(let o of q2)for(let s of Array.from(t.querySelectorAll(o)))for(let a of Z2){let l=s.getAttribute(a);if(l===null)continue;n+=1;let d=l.length>120?`${l.slice(0,120)}\u2026`:l;Q2(l)?e.push({kind:"non-finite-coordinates",tag:o,attr:a,sample:d}):l.trim().length===0?e.push({kind:"empty-geometry",tag:o,attr:a,sample:d}):J2(l)&&e.push({kind:"degenerate-geometry",tag:o,attr:a,sample:d})}let r=t.querySelectorAll("canvas").length>0;return{examined:n,findings:e,canvas:r}}function Ev(t,e){var s,a,l,d,u,p,h;let n=e,r=(a=(s=n.Chart)==null?void 0:s.getChart)==null?void 0:a.call(s,t);if(r!=null)return{library:"chartjs",data:(l=r.data)!=null?l:null};let o=(u=(d=n.echarts)==null?void 0:d.getInstanceByDom)==null?void 0:u.call(d,t);return o!=null?{library:"echarts",data:(h=(p=o.getOption)==null?void 0:p.call(o))!=null?h:null}:null}var q2,Z2,NE=S(()=>{"use strict";q2=["path","polyline","polygon"],Z2=["d","points"]});function Ld(t,e,n){let r=Math.max(0,Math.min(n,e.remainingCharacters));if(t.length<=r)return e.remainingCharacters-=t.length,t;e.truncatedValues+=1;let o=r<=kd.length?kd.slice(0,r):`${t.slice(0,r-kd.length)}${kd}`;return e.remainingCharacters-=o.length,o}function Dd(t,e,n,r){if(r!==void 0&&it(r))return ye;if(n>G.MAX_SERIALIZE_DEPTH||e.nodes>=uc)return e.truncatedValues+=1,kd;if(e.nodes+=1,t===null||typeof t=="boolean")return t;if(typeof t=="string")return Ld(Fr(t),e,(r==null?void 0:r.toLowerCase())==="error"?G.MAX_ERROR_LENGTH:G.MAX_STRING_LENGTH);if(typeof t=="number")return Number.isFinite(t)?t:null;if(typeof t=="bigint")return t.toString();if(typeof t=="undefined"||typeof t=="function"||typeof t=="symbol")return pc;if(t instanceof Date)return Number.isNaN(t.getTime())?null:t.toISOString();if(t instanceof Map){let o=Object.create(null),s=0;for(let[a,l]of t){if(e.nodes>=uc||s>=G.MAX_COLLECTION_ITEMS){e.droppedItems+=t.size-s;break}let d=Ld(typeof a=="string"?a:String(a),e,bv),u=Dd(l,e,n+1,d);u!==pc&&(o[d]=u),s+=1}return o}if(t instanceof Set){let o=[],s=0;for(let a of t){if(e.nodes>=uc||s>=G.MAX_COLLECTION_ITEMS){e.droppedItems+=t.size-s;break}let l=Dd(a,e,n+1);o.push(l===pc?null:l),s+=1}return o}if(ArrayBuffer.isView(t)&&!(t instanceof DataView)){let o=t.length,s=[],a=0;for(let l of t){if(e.nodes>=uc||a>=G.MAX_COLLECTION_ITEMS){e.droppedItems+=o-a;break}s.push(l),e.nodes+=1,a+=1}return s}if(t instanceof Error)return{name:Ld(t.name,e,256),message:Ld(t.message,e,G.MAX_ERROR_LENGTH)};if(e.seen.has(t))return"[CIRCULAR]";e.seen.add(t);try{if(Array.isArray(t)){let d=[],u=t.slice(0,G.MAX_COLLECTION_ITEMS);e.droppedItems+=Math.max(0,t.length-u.length);for(let p of u){if(e.nodes>=uc){e.droppedItems+=1;continue}let h=Dd(p,e,n+1);if(e.nodes>=uc){e.droppedItems+=1;continue}d.push(h===pc?null:h)}return d}let o=Object.create(null),s=Object.keys(t),a=s.slice(0,G.MAX_OBJECT_KEYS);e.droppedItems+=Math.max(0,s.length-a.length);let l=a.map(d=>{try{let u=t[d];return{key:d,value:u,scalar:u===null||typeof u!="object",ok:!0}}catch{return{key:d,value:void 0,scalar:!0,ok:!1}}});for(let d of[...l.filter(u=>u.scalar),...l.filter(u=>!u.scalar)]){let u=Ld(d.key,e,bv);if(!d.ok){o[u]=wE;continue}try{let p=Dd(d.value,e,n+1,d.key);p!==pc&&(o[u]=p)}catch{o[u]=wE}}return o}finally{e.seen.delete(t)}}function Md(t){return Pd(t).value}function Pd(t){let e={seen:new WeakSet,remainingCharacters:e5,nodes:0,droppedItems:0,truncatedValues:0},n=Dd(t,e,0),r=n===pc?null:n;if(e.droppedItems===0&&e.truncatedValues===0)return{value:r};let o=[];return e.droppedItems>0&&o.push(`${e.droppedItems} item(s) dropped`),e.truncatedValues>0&&o.push(`${e.truncatedValues} value(s) truncated`),{value:r,truncation:{droppedItems:e.droppedItems,truncatedValues:e.truncatedValues,note:`partial \u2014 ${o.join(", ")}; this is NOT the whole value. Scope the read with \`path\`/\`depth\` to see the rest.`}}}function Wr(t){try{return JSON.stringify(Md(t))}catch{return JSON.stringify(wE)}}var kd,wE,pc,bv,e5,uc,pr=S(()=>{"use strict";D();kd="[TRUNCATED]",wE="[UNSERIALIZABLE]",pc=Symbol("omit"),bv=256,e5=Math.floor(G.MAX_MESSAGE_BYTES/4),uc=G.MAX_COLLECTION_ITEMS*5});function t5(t){if(t===null)return;let e=/^(.*):(\d+):(\d+)$/.exec(t);if(e===null)return;let n=e[1],r=Number(e[2]);if(!(n===void 0||n.length===0||!Number.isFinite(r)))return{file:n,line:r}}function $d(t){let e=t.closest(`[${OE}]`);return e!==null?t5(e.getAttribute(OE)):void 0}function Af(t,e){return e!==void 0?{file:e.file,line:e.line}:$d(t)}function Tv(t){return t.querySelector(`[${OE}]`)!==null}function yf(t){return t===void 0?void 0:`${t.file}:${String(t.line)}`}var OE,Hd=S(()=>{"use strict";D();OE=tc});function o5(t){let e=t.type.toLowerCase();return e==="search"?"searchbox":r5.has(e)?"textbox":e==="checkbox"?"checkbox":e==="radio"?"radio":e==="range"?"slider":e==="number"?"spinbutton":e==="submit"||e==="button"||e==="reset"?"button":"textbox"}function i5(t){let e=t.getAttribute("aria-label");if(e!==null&&e.trim().length>0)return!0;let n=t.getAttribute("aria-labelledby");if(n!==null&&n.trim().length>0)return!0;let r=t.getAttribute("title");return r!==null&&r.trim().length>0}function Ne(t){var r;let e=t.getAttribute("role");if(e!==null&&e.trim().length>0)return e.trim();switch(t.tagName.toLowerCase()){case"a":return t.hasAttribute("href")?"link":"generic";case"button":return"button";case"input":return o5(t);case"textarea":return"textbox";case"select":return t.multiple?"listbox":"combobox";case"h1":case"h2":case"h3":case"h4":case"h5":case"h6":return"heading";case"ul":case"ol":return"list";case"li":return"listitem";case"nav":return"navigation";case"main":return"main";case"aside":return"complementary";case"dialog":return"dialog";case"img":return"img";case"table":return"table";case"tr":return"row";case"tbody":case"thead":case"tfoot":return"rowgroup";case"td":return t.closest('[role~="grid"], [role~="treegrid"]')!==null?"gridcell":"cell";case"th":{let o=((r=t.getAttribute("scope"))!=null?r:"").toLowerCase();return o==="row"||o==="rowgroup"?"rowheader":"columnheader"}case"option":return"option";case"optgroup":return"group";case"section":return i5(t)?"region":"generic";case"article":return"article";case"fieldset":return"group";case"details":return"group";case"summary":return"button";case"progress":return"progressbar";case"meter":return"meter";case"output":return"status";case"hr":return"separator";case"area":return t.hasAttribute("href")?"link":"generic";case"form":return"form";case"p":return"paragraph";case"header":return"banner";case"footer":return"contentinfo";default:return"generic"}}function _i(t){return t.replace(/\s+/g," ").trim()}function s5(t){let e=t.getAttribute("aria-labelledby");if(e===null)return null;let n=[];for(let o of e.split(/\s+/)){let s=t.ownerDocument.getElementById(o);s!==null&&n.push(_i(Ps(s)))}let r=n.join(" ").trim();return r.length>0?r:null}function Ps(t){var o;if(t.nodeType===Node.TEXT_NODE)return(o=t.textContent)!=null?o:"";if(t.nodeType!==Node.ELEMENT_NODE)return"";let e=t;if(e.getAttribute("aria-hidden")==="true")return"";if(xE(e)){let s=e.getAttribute("alt");return s===null?"":s}let n="",r=!1;for(let s of e.childNodes){let a=Ps(s);if(a.length===0)continue;let l=Node.ELEMENT_NODE===s.nodeType;n.length>0&&(l||r)&&(n+=" "),n+=a,r=l}return n}function Se(t){let e=s5(t);if(e!==null)return e;let n=t.getAttribute("aria-label");if(n!==null&&n.trim().length>0)return n.trim();if(xE(t)){let s=t.getAttribute("alt");if(s!==null)return s.trim()}if(Ie(t)||fn(t)||ur(t)||wd(t)||iv(t)||sv(t)||av(t)){let s=t.labels;if(s!==null&&s.length>0){let a=[...s].map(l=>_i(Ps(l))).join(" ").trim();if(a.length>0)return a}}if(t.tagName.toLowerCase()==="fieldset"){let s=[...t.children].find(a=>a.tagName.toLowerCase()==="legend");if(s!==void 0){let a=_i(Ps(s));if(a.length>0)return a}}if(t.tagName.toLowerCase()==="table"){let s=[...t.children].find(a=>a.tagName.toLowerCase()==="caption");if(s!==void 0){let a=_i(Ps(s));if(a.length>0)return a}}if(t.tagName.toLowerCase()==="figure"){let s=[...t.children].find(a=>a.tagName.toLowerCase()==="figcaption");if(s!==void 0){let a=_i(Ps(s));if(a.length>0)return a}}if(Ie(t)||fn(t)||ur(t)){if(Ie(t)){let s=t.type.toLowerCase();if(s==="submit"||s==="button"||s==="reset"){let a=_i(t.value);if(a.length>0)return a}}if(Ie(t)||fn(t)){let s=t.getAttribute("placeholder");if(s!==null&&s.trim().length>0)return s.trim()}}if(n5.has(Ne(t))){let s=_i(Ps(t));if(s.length>0)return s}let o=t.getAttribute("title");return o!==null&&o.trim().length>0?o.trim():""}function vf(t,e){let n=t.getAttribute(e);if(n!==null)return n==="true"}function Lo(t,e=Pt(t)){let n=[ue.PRESENT];n.push(e?ue.VISIBLE:ue.HIDDEN);let r=t.matches(":disabled")||vf(t,"aria-disabled")===!0;return n.push(r?ue.DISABLED:ue.ENABLED),(Ie(t)&&(t.type==="checkbox"||t.type==="radio")&&t.checked||vf(t,"aria-checked")===!0)&&n.push(ue.CHECKED),(vf(t,"aria-expanded")===!0||a5(t))&&n.push(ue.EXPANDED),vf(t,"aria-pressed")===!0&&n.push(ue.PRESSED),t.ownerDocument.activeElement===t&&n.push(ue.FOCUSED),n}function a5(t){let e=t.parentElement;return IE!==t.localName||e===null||vv!==e.localName?!1:Array.from(e.children).find(r=>IE===r.localName)===t&&e.hasAttribute(Rv)}function Zt(t){var o,s,a,l,d;if(!Ie(t)&&!fn(t)&&!ur(t))return!1;let e=(o=t.getAttribute("autocomplete"))!=null?o:"",n=[(s=t.getAttribute("name"))!=null?s:"",t.id,(a=Te(t))!=null?a:"",(l=t.getAttribute(Ns))!=null?l:"",(d=t.getAttribute("aria-label"))!=null?d:""],r=c5.test(e);return Ie(t)&&t.type.toLowerCase()==="password"||r||n.some(it)}function CE(t){if(Ie(t)||fn(t)||ur(t))return Zt(t)?t.value===""?"":ye:t.value;let e=t.getAttribute("aria-valuenow");return e!=null?e:void 0}function l5(t){let e=t.parentElement;if(e===null)return!1;let n=e.closest(vv);if(n===null||n.hasAttribute(Rv))return!1;let r=Array.from(n.children).find(o=>IE===o.localName);return r===void 0||!r.contains(t)}function d5(t){return!t.ownerDocument.hidden||!("getAnimations"in t)?!1:t.getAnimations().some(e=>e.playState==="running"||e.pending)}function p5(t){return t.hasAttribute(u5)}function LE(t,e){return!!(Xe(t)&&t.hidden||l5(t)||e!==null&&(e.display==="none"||e.visibility==="hidden"||e.visibility==="collapse"||Number.parseFloat(e.opacity||"1")===0&&!d5(t)))}function f5(t,e){return t.getAttribute("aria-hidden")==="true"&&!p5(t)?!0:LE(t,e)}function Nv(t){var r,o;let e=!1,n=t;for(;n!==null;){n.getAttribute("aria-hidden")==="true"&&(e=!0);let s=(o=(r=n.ownerDocument.defaultView)==null?void 0:r.getComputedStyle(n))!=null?o:null;if(LE(n,s))return!1;n=gi(n)}return e}function wv(t){var n,r;let e=t;for(;e!==null;){if(e.getAttribute("aria-hidden")==="true")return!1;let o=(r=(n=e.ownerDocument.defaultView)==null?void 0:n.getComputedStyle(e))!=null?r:null;if(LE(e,o))return!1;e=gi(e)}return!0}function Cv(t){if(t===void 0)return new Map;let e=Av.get(t);return e===void 0&&(e=new Map,Av.set(t,e)),e}function zr(t,e){var r,o,s;let n=e.get(t);if(n===void 0){let a=(o=(r=t.ownerDocument.defaultView)==null?void 0:r.getComputedStyle(t))!=null?o:null;if(f5(t,a))return n={hidden:!0,style:a,parent:null,clipX:!1,clipY:!1,scrollX:!1,scrollY:!1,hasClipping:!1},e.set(t,n),n;let l=gi(t),d=l===null?void 0:zr(l,e),[u,p]=_f(a),h=t.ownerDocument.documentElement,g=!(t===h||t===t.ownerDocument.body&&_f(zr(h,e).style).every(A=>A==="visible"))&&!Ov.has((s=a==null?void 0:a.display)!=null?s:"")&&!(Xe(t)&&(a==null?void 0:a.display)==="inline"),T=g&&Sv.has(u),_=g&&Sv.has(p);n={hidden:(d==null?void 0:d.hidden)===!0,style:a,parent:l,clipX:T,clipY:_,scrollX:g&&_v.has(u),scrollY:g&&_v.has(p),hasClipping:T||_||(d==null?void 0:d.hasClipping)===!0},e.set(t,n)}return n}function g5(t,e,n){for(let r=zr(t,n).parent;r!==null;r=zr(r,n).parent){let o=zr(r,n).style;if(o===null||o.display==="contents")continue;if(!e&&o.position!==""&&o.position!=="static")return r;let s=!(o.display==="inline"&&Xe(r)&&!m5.has(r.localName))&&o.display!=="table-column"&&o.display!=="table-column-group",a=l=>s||!Iv.has(l);if([...xv].some(l=>{let d=o.getPropertyValue(l);return a(l)&&d!==""&&d!=="none"})||o.willChange.split(",").some(l=>xv.has(l.trim())&&a(l.trim()))||s&&!Ov.has(o.display)&&(o.contain.split(/\s+/).some(l=>h5.has(l))||o.contentVisibility==="auto"))return r}return null}function Lv(t,e,n,r=!1){let o=n,s=zr(t,e);if(s.hidden)return null;if(s.parent===null||!zr(s.parent,e).hasClipping)return o;let a;for(let l=t;l!==null;l=zr(l,e).parent){let d=zr(l,e);if(d.hidden)return null;l===a&&(a=void 0);let u=d.style;if(r&&l!==t&&a===void 0&&(d.scrollX||d.scrollY)&&(o!=null||(o=t.getBoundingClientRect()),o.width>0&&o.height>0&&(o=mv(o,vE(l,d),d.scrollX,d.scrollY))),l!==t&&a===void 0&&(d.clipX||d.clipY)&&(o!=null||(o=t.getBoundingClientRect()),o.width>0&&o.height>0)){let p=vE(l,d),h=d.clipX?Math.max(o.left,p.left):o.left,m=d.clipX?Math.min(o.right,p.right):o.right,g=d.clipY?Math.max(o.top,p.top):o.top,T=d.clipY?Math.min(o.bottom,p.bottom):o.bottom;if(m<=h||T<=g)return null;o={left:h,right:m,top:g,bottom:T,width:m-h,height:T-g}}a===void 0&&((u==null?void 0:u.position)==="absolute"||(u==null?void 0:u.position)==="fixed")&&(a=g5(l,(u==null?void 0:u.position)==="fixed",e))}return o}function kE(t,e){if(!Pt(t,e))return!1;let n=t.ownerDocument.defaultView;if(n===null)return!1;let r=Lv(t,Cv(e),t.getBoundingClientRect());return r==null||r.width<=0||r.height<=0?!1:r.bottom>0&&r.right>0&&r.top<n.innerHeight&&r.left<n.innerWidth}function E5(t,e){let n=zr(t,e);if(!n.clipX&&!n.clipY)return!1;let r=Array.from(t.getClientRects());return r.length>0&&r.every(o=>n.clipX&&o.width===0||n.clipY&&o.height===0)}function Pt(t,e){if(!t.isConnected)return!1;let n=e==null?void 0:e.get(t);if(n!==void 0)return n;let r=Cv(e),o=Lv(t,r,void 0,!0)!==null&&!E5(t,r);return e!==void 0&&e.set(t,o),o}function b5(t){var n;let e=_i((n=t.textContent)!=null?n:"");return e.length>yv?`${e.slice(0,yv)}\u2026`:e}function Yr(t,e){let n=CE(t),r=b5(t),o=Se(t),s=Pt(t,e),a={ref:X.refFor(t),role:Ne(t),name:o,states:Lo(t,s),visible:s};n!==void 0&&n.length>0&&(a.value=n),r.length>0&&r!==o&&(a.text=r);let l=yf($d(t));if(l!==void 0&&(a.source=l),t.querySelector("path, polyline, polygon")!==null){let d=xf(t).findings;d.length>0&&(a.chart=d)}return a}var vv,Rv,IE,n5,r5,c5,u5,Sv,_v,Ov,Iv,xv,h5,m5,Av,yv,mt=S(()=>{"use strict";xt();D();Rn();lt();Oo();RE();NE();pr();Hd();vv="details",Rv="open",IE="summary",n5=new Set(["button","link","heading","option","listitem","cell","checkbox","columnheader","radio","row","rowheader","tab","tooltip","menuitem","menuitemcheckbox","menuitemradio","treeitem","gridcell","switch","status","alert"]),r5=new Set(["text","email","tel","url","password",""]);c5=/\b(cc-|current-password|new-password|one-time-code)/i;u5="data-aria-hidden";Sv=new Set(["hidden","clip"]),_v=new Set(["auto","scroll"]),Ov=new Set(["contents","table-row","table-row-group","table-header-group","table-footer-group","table-column","table-column-group"]),Iv=new Set(["transform","translate","rotate","scale","perspective"]),xv=new Set([...Iv,"filter","backdrop-filter"]),h5=new Set(["layout","paint","strict","content"]),m5=new Set(["img","video","audio","canvas","iframe","embed","object","input","textarea","select"]),Av=new WeakMap;yv=80});function jv(t){mc.some(e=>e.name===t.name)||mc.push(t)}function Wn(t){for(let e of mc){let n;try{n=e.identify(t)}catch{continue}if(n!=null)return n}return null}function Nf(t){for(let e of mc){if(e.readState===void 0)continue;let n=e.readState(t);if(n!==void 0)return n}}function wf(t){for(let e of mc)if(e.hasHoverHandlers!==void 0&&e.hasHoverHandlers(t))return!0;return!1}function Bd(){return mc.map(t=>t.name)}var $E,Vv,mc,ko=S(()=>{"use strict";$E=globalThis,mc=(Vv=$E.__reticleAdapters)!=null?Vv:$E.__reticleAdapters=[]});function Of(){return jn(location.href)}function If(t=!0){return jn(`${location.pathname}${location.search}${t?location.hash:""}`)}var Vd=S(()=>{"use strict";D()});function fR(t){var o;let e=[],n=new Set,r;try{r=t.querySelectorAll(Kn())}catch{return e}for(let s=0;s<r.length&&e.length<nH;s+=1){let a=(o=r[s])==null?void 0:o.getAttribute(Ti());if(a==null)continue;let l=a.trim();l.length===0||n.has(l)||l.startsWith(rH)||(n.add(l),e.push(l))}return e}var nH,rH,hR=S(()=>{"use strict";xt();nH=200,rH="reticle-"});var GE,mR,BE,fr,jd=S(()=>{"use strict";GE=globalThis,BE=typeof((mR=GE.console)==null?void 0:mR.warn)=="function"?GE.console.warn.bind(GE.console):null,fr=(...t)=>{BE==null||BE(...t)}});function _R(t){return VE.add(t),()=>VE.delete(t)}function oH(t){if(t===null||typeof t!="object"&&typeof t!="function")return!1;let e=t;return typeof e.getState=="function"&&typeof e.subscribe=="function"}function xR(t,e,n){if(aH(t,e),oH(e)){let r=()=>e.getState(),o=s=>e.subscribe(s);Ec.set(t,r),kf.set(t,o),gR(t,r,o);return}if(typeof e!="function"){let r=typeof e=="object"&&e!==null&&"subscribe"in e;fr(`[reticle] store "${t}" is neither a getter function nor a {getState, subscribe} store`+(r?" \u2014 it has subscribe but no getState. Wrap it with an adapter or add getState.":"."));return}if(Ec.set(t,e),n!==void 0){kf.set(t,n),gR(t,e,n);return}sH(t)}function gR(t,e,n){for(let r of VE)try{r([t,e,n])}catch{}}function AR(t){Ec.delete(t),kf.delete(t)}function Ai(){return[...Ec.keys()]}function yR(){let t=[];for(let[e,n]of kf){let r=Ec.get(e);r!==void 0&&t.push([e,r,n])}return t}function KE(t){let e={};for(let[n,r]of Ec)if(!(t!==void 0&&n!==t))try{e[n]=r()}catch(o){e[n]={__error:o instanceof Error?o.message:String(o)}}return e}function vR(t){return Kd(t).stores}function Kd(t){let e={},n={};for(let[r,o]of Object.entries(KE(t))){let s=Pd(o);e[r]=s.value,s.truncation!==void 0&&(n[r]=s.truncation)}return Object.keys(n).length>0?{stores:e,truncation:n}:{stores:e}}function sH(t){iH.has(t)||ER.has(t)||(ER.add(t),fr(`[reticle] store "${t}" was registered without a subscribe function. It can be READ, but its changes are invisible: no STATE_CHANGE events, no state diffs in causal summaries, and a state predicate will never see it update. Pass the store object (or a subscribe callback) to fix.`))}function Df(t,e){RR.set(t,e)}function aH(t,e){if(e===null||typeof e!="object"&&typeof e!="function")return;jE.set(e,t);let n=RR.get(e);n!==void 0&&jE.set(n,t)}function NR(t){if(!(t===null||typeof t!="object"&&typeof t!="function"))return jE.get(t)}var Do,bR,Ec,TR,kf,SR,VE,ER,iH,jE,RR,$s=S(()=>{"use strict";D();jd();pr();Do=globalThis,Ec=(bR=Do.__reticleStores)!=null?bR:Do.__reticleStores=new Map,kf=(TR=Do.__reticleStoreSubs)!=null?TR:Do.__reticleStoreSubs=new Map,VE=(SR=Do.__reticleStoreListeners)!=null?SR:Do.__reticleStoreListeners=new Set;ER=new Set,iH=new Set([Gp]);jE=new WeakMap,RR=new WeakMap});function OR(){return typeof document=="undefined"?[]:fR(document)}function IR(){return Ai().filter(t=>Gp!==t)}function Pf(t,e){let n=[...t];for(let r of e)n.includes(r)||n.push(r);return n}function cH(){return{testids:[],signals:[],stores:[],flows:[]}}function zE(t,e){if(e!==void 0)for(let n of e)t.includes(n)||t.push(n)}function $f(t){Mf=t}function bc(t){if(zE(hn.testids,t.testids),zE(hn.signals,t.signals),zE(hn.stores,t.stores),t.flows!==void 0)for(let e of t.flows){let n=hn.flows.find(r=>r.name===e.name);n===void 0?hn.flows.push({name:e.name,steps:[...e.steps]}):n.steps=[...e.steps]}Mf==null||Mf()}function yi(){return{testids:Pf(hn.testids,OR()),signals:[...hn.signals],stores:Pf(hn.stores,IR()),flows:hn.flows.map(t=>({name:t.name,steps:[...t.steps]})),...Xy()?{presenterExposed:!0}:{}}}function CR(){return[...hn.testids]}function Hf(){return hn.signals.length>0||hn.flows.length>0||Pf(hn.testids,OR()).length>0||Pf(hn.stores,IR()).length>0}var WE,wR,hn,Mf,vi=S(()=>{"use strict";D();Ye();hR();$s();WE=globalThis;hn=(wR=WE.__reticleCapabilities)!=null?wR:WE.__reticleCapabilities=cH()});function jf(){return JE>0}function qe(t){JE+=1;try{return t()}finally{JE-=1}}var JE,Tc=S(()=>{"use strict";JE=0});function sN(t){if(!(typeof t!="number"||!Number.isFinite(t)))return Math.max(0,Math.min(t,ob))}var Yn,eN,rb,tN,rN,nN,Wf,oe,_e,zf,ob,oN,Ri,iN,dt=S(()=>{"use strict";Yn=globalThis,eN=typeof Yn.setTimeout=="function"?Yn.setTimeout.bind(Yn):null,rb=typeof Yn.clearTimeout=="function"?Yn.clearTimeout.bind(Yn):null,tN=typeof Yn.requestAnimationFrame=="function"?Yn.requestAnimationFrame.bind(Yn):null,nN=typeof((rN=Yn.performance)==null?void 0:rN.now)=="function"?Yn.performance.now.bind(Yn.performance):null,Wf=()=>nN?nN():0,oe=(t,e=0)=>eN?eN(t,e):0,_e=t=>{rb==null||rb(t)},zf=(t,e)=>{let n=!1,r=0,o=()=>{n||(t(),!n&&(r=oe(o,e)))};return r=oe(o,e),()=>{n=!0,_e(r)}},ob=200,oN=(t=ob)=>new Promise(e=>{let n=!1,r=s=>{n||(n=!0,_e(o),e({settled:s}))},o=oe(()=>r(!1),t);tN?tN(()=>r(!0)):oe(()=>r(!0),0)}),Ri=()=>oN().then(()=>{}),iN=async(t=ob)=>(await Promise.resolve(),oN(t))});var uw={};Ua(uw,{MASK:()=>lw,cloneForRender:()=>dw,renderPage:()=>kF});function NF(t){var e;return t instanceof HTMLInputElement&&t.type==="password"?!0:[t.name,t.id,(e=t.getAttribute("autocomplete"))!=null?e:""].some(n=>n.length>0&&it(n))}function wF(t,e){if(t instanceof HTMLInputElement||t instanceof HTMLTextAreaElement){let n=NF(t)&&t.value.length>0?lw:t.value;t instanceof HTMLTextAreaElement?e.textContent=n:e.setAttribute("value",n)}t instanceof HTMLInputElement&&(t.checked?e.setAttribute("checked",""):e.removeAttribute("checked")),t instanceof HTMLOptionElement&&(t.selected?e.setAttribute("selected",""):e.removeAttribute("selected"))}function OF(t){var r;let e=[...Array.from(t.styleSheets),...(r=t.adoptedStyleSheets)!=null?r:[]],n=[];for(let o of e)try{for(let s of Array.from(o.cssRules))n.push(s.cssText)}catch{}return n.join(`
2
+ `)}function dw(t){var l;let e=t.documentElement,n=e.cloneNode(!0),r=e.querySelectorAll("*"),o=n.querySelectorAll("*");r.forEach((d,u)=>{let p=o[u];p!==void 0&&wF(d,p)});let s=[Ei,"script","noscript",'link[rel~="stylesheet"]',"style"];n.querySelectorAll(s.join(",")).forEach(d=>d.remove());let a=t.createElement("style");return a.textContent=OF(t),((l=n.querySelector("head"))!=null?l:n).append(a),n}function IF(t){let e=t.defaultView;for(let n of[t.body,t.documentElement]){if(e===null||n===null)continue;let r=e.getComputedStyle(n).backgroundColor;if(r.length>0&&r!=="transparent"&&r!=="rgba(0, 0, 0, 0)")return r}return yF}function CF(t){return new Promise((e,n)=>{let r=new Image,o=setTimeout(()=>n(new Error("the page did not render in time")),xF);r.onload=()=>{clearTimeout(o),e(r)},r.onerror=()=>{clearTimeout(o),n(new Error("the page could not be drawn as an image"))},r.src=t})}function LF(t){let e=[];for(let n=0;n<t.length;n+=cw)e.push(t.slice(n,n+cw));return e}async function kF(){try{let t=Math.max(1,window.innerWidth),e=Math.max(1,window.innerHeight),n=dw(document);n.style.transform=`translate(${String(-window.scrollX)}px, ${String(-window.scrollY)}px)`;let r=new XMLSerializer().serializeToString(n),o=`<svg xmlns="${AF}" width="${String(t)}" height="${String(e)}"><foreignObject x="0" y="0" width="100%" height="100%">${r}</foreignObject></svg>`,s=await CF(`data:image/svg+xml;charset=utf-8,${encodeURIComponent(o)}`),a=IF(document),l=Math.min(1,bg.MAX_SIDE_PX/Math.max(t,e));for(let d=0;d<_F;d+=1,l*=SF){let u=document.createElement("canvas");u.width=Math.max(1,Math.round(t*l)),u.height=Math.max(1,Math.round(e*l));let p=u.getContext("2d");if(p===null)return{ok:!1,reason:"this page has no 2D canvas to draw into"};p.fillStyle=a,p.fillRect(0,0,u.width,u.height),p.drawImage(s,0,0,u.width,u.height);let h=u.toDataURL(vF,bg.JPEG_QUALITY).replace(RF,"");if(h.length<=TF)return{ok:!0,width:u.width,height:u.height,chunks:LF(h)}}return{ok:!1,reason:"the rendered page was too large to send, even scaled down"}}catch(t){return{ok:!1,reason:t instanceof Error?t.message:String(t)}}}var lw,TF,cw,SF,_F,xF,AF,yF,vF,RF,pw=S(()=>{"use strict";D();Ye();lw="\u2022\u2022\u2022\u2022\u2022\u2022\u2022\u2022",TF=24e4,cw=6e4,SF=.75,_F=4,xF=5e3,AF="http://www.w3.org/2000/svg",yF="#ffffff",vF="image/jpeg",RF=/^data:[^,]*,/});function dh(t,e){return`${ky}${t}. ${String(e)} attempts, all failed. That is everything the page can see: from inside the browser it cannot tell a daemon that is not there from one it is not allowed to reach, so this is not evidence about the daemon. What answers it: run \`npx @reticlehq/server status\` to see whether one is listening and on which port. If your app runs in a container, devcontainer or WSL, the daemon is on a different host, so point the page at it: RETICLE_PORT or reticle({ port }) with the Vite plugin, reticle.connect({ url }) by hand. An https page cannot open a ws:// socket. Still retrying\u2026`}var _w,_b=S(()=>{"use strict";D();_w="Can't reach Reticle from this page. Run reticle status to check, or reticle serve to start it."});var ke,Nn,Jt,kb=S(()=>{"use strict";ke={READ:"read",ACT:"act",NARRATION:"narration",HUMAN:"human"},Nn={PASS:"pass",FAIL:"fail"},Jt={AGENT:"agent",HARNESS:"harness"}});function uu(t){switch(t){case L.CLICK:case L.DBLCLICK:return"Clicking";case L.FILL:case L.TYPE:return"Typing into";case L.HOVER:return"Hovering";case L.SELECT:return"Selecting";case L.SUBMIT:return"Submitting";case L.CHECK:case L.UNCHECK:return"Toggling";case L.UPLOAD:return"Uploading to";case L.DRAG:return"Dragging";default:return t}}var Db=S(()=>{"use strict";D()});function Fo(t){return typeof t=="string"&&t.length>0}function FB(t){var n;return`${(n=t.file.split("/").pop())!=null?n:t.file}:${t.line}`}function ZO(t){var e;if(Fo(t.testid))return{strategy:Er.TESTID,value:t.testid,stable:!0};if(Fo(t.component)&&t.source!==void 0)return{strategy:Er.COMPONENT,value:`${t.component}@${FB(t.source)}`,stable:!0};if(Fo(t.component)&&(Fo(t.role)||Fo(t.name))){let n=Fo(t.name)?t.name:t.role;return{strategy:Er.COMPONENT,value:`${t.component}[${n!=null?n:""}]`,stable:!0}}if(Fo(t.role)&&Fo(t.name))return{strategy:Er.ROLE,value:`${t.role}:${t.name}`,stable:!1};if(Fo(t.role)){let n=t.nth!==void 0?`#${t.nth}`:"";return{strategy:Er.ROLE,value:`${t.role}${n}`,stable:!1}}return{strategy:Er.POSITION,value:`el#${(e=t.nth)!=null?e:0}`,stable:!1}}var Er,QO=S(()=>{"use strict";Er={TESTID:"testid",COMPONENT:"component",ROLE:"role",POSITION:"position"}});function BB(t,e,n){return n.length>0?e.length>0?`${e} "${n}"`:`"${n}"`:e.length>0?e:t.tagName.toLowerCase()}function gu(t){var p;let e=(p=Te(t))!=null?p:void 0,n=Wn(t),r=n==null?void 0:n.componentStack[0],o=Af(t,n==null?void 0:n.source),s=Ne(t),a=Se(t),l={};e!==void 0&&(l.testid=e),r!==void 0&&(l.component=r),o!==void 0&&(l.source=o),s.length>0&&(l.role=s),a.length>0&&(l.name=a);let d=ZO(l),u={anchor:d.value,strategy:GB[d.strategy],label:BB(t,s,a)};return o!==void 0&&(u.source=o),u}var GB,Ub=S(()=>{"use strict";xt();D();QO();mt();ko();Hd();GB={[Er.TESTID]:Os.TESTID,[Er.COMPONENT]:Os.COMPONENT,[Er.ROLE]:Os.ROLE,[Er.POSITION]:Os.POSITION}});function JO(t){return`${String(t)} ${t===1?"note":"notes"} on this page`}function Sh(t,e){let n=t.length,r=`I marked ${String(n)} ${n===1?"issue":"issues"} on ${e} with Reticle. Fix each one, then verify it in the running app:`,o=t.map((s,a)=>{let l=s.source===void 0?s.anchor:`${s.anchor}, ${s.source}`;return`${String(a+1)}. ${s.note}
3
+ ${s.label} (${l}) on ${s.route}`});return[r,"",...o].join(`
4
+ `)}var Fb=S(()=>{"use strict"});var _h,ge,Gb,n0,r0,o0,e0,i0,s0,a0=S(()=>{"use strict";_h="data-reticle-mark",ge=t=>`[${_h}="${t}"]`,Gb="What should change?",n0="Add",r0="Cancel",o0="+",e0=2147483601,i0=`
5
+ ${ge("root")}{position:fixed;inset:0;pointer-events:none;z-index:${String(e0)};}
6
6
  ${ge("root")}[data-hide="1"] ${ge("pin")}{display:none;}
7
7
  html[data-reticle-mark-active] *{cursor:crosshair !important;}
8
8
  html[data-reticle-mark-active] [data-reticle-overlay],
@@ -38,7 +38,7 @@ ${ge("tipq")}{display:block;font-size:12px;font-style:italic;color:rgba(255,255,
38
38
  margin-bottom:5px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}
39
39
  ${ge("tipn")}{display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}
40
40
  ${ge("pop")}{position:fixed;pointer-events:auto;width:280px;box-sizing:border-box;padding:12px 16px 14px;
41
- background:#1a1a1a;border-radius:16px;color:#fff;z-index:${String(kN+8)};
41
+ background:#1a1a1a;border-radius:16px;color:#fff;z-index:${String(e0+8)};
42
42
  box-shadow:0 4px 24px rgba(0,0,0,.3),0 0 0 1px rgba(255,255,255,.08);
43
43
  font:13px/1.45 system-ui,-apple-system,"Segoe UI",sans-serif;transform:translateX(-50%);opacity:0;}
44
44
  ${ge("pop")}[data-in="1"]{opacity:1;animation:reticle-mark-pop-in .2s cubic-bezier(.34,1.56,.64,1) forwards;}
@@ -65,23 +65,23 @@ ${ge("pop")} button[data-send]:disabled{opacity:.4;cursor:not-allowed;}
65
65
  40%{transform:translateX(calc(-50% + 3px))}
66
66
  60%{transform:translateX(calc(-50% - 2px))}
67
67
  80%{transform:translateX(calc(-50% + 2px))}}
68
- `,UN=`<div ${Cf}="hi"><span ${Cf}="hilabel"></span></div><div ${Cf}="sel" hidden></div>`});function VN(t){return t.source===void 0?void 0:`${t.source.file}:${String(t.source.line)}`}function kf(){return typeof location=="undefined"?"":location.pathname+location.search}function ZH(t){return Gd(t).anchor}function QH(t){if(t===void 0||typeof getComputedStyle=="undefined")return!1;let e=getComputedStyle(t).position;return e==="fixed"||e==="sticky"}function KN(t,e){let n=document.elementsFromPoint.bind(document);if(n!==void 0){for(let r of n(t,e))if(!Gs(r))return r}}function WN(t,e){let n=window.innerWidth,r=window.innerHeight,o=Math.min(Math.max(t,Lf+GN/2),n-Lf-GN/2),a=e+12;return a+BN>r-Lf&&(a=Math.max(Lf,e-BN-12)),{left:o,top:a}}function JH(t){var a;let e=Pe(t);if(e!==null&&e.length>0)return e;let n=t.tagName.toLowerCase(),r=t.getAttribute("aria-label");if(r!==null&&r.length>0)return`${n} "${r}"`;let o=((a=t.textContent)!=null?a:"").trim().replace(/\s+/g," ").slice(0,40);return o.length>0?`${n} "${o}"`:n}function rw(t){let e=new Da(t);return e.mount(),e}var XH,qH,GN,BN,Lf,Ur,FE,yo,Sc,_c,Vd,jd,Kd,_n,xn,xc,va,dn,Ra,Vn,vo,jn,mt,Ti,Na,Ro,No,wa,Oa,Wd,zd,Ia,Ac,yc,Ca,$,zN,Tc,YN,XN,qN,ZN,Df,GE,BE,QN,VE,La,ka,JN,jE,KE,ew,WE,zE,tw,Bd,YE,nw,dr,Da,jN,XE=S(()=>{"use strict";on();rc();H();at();PE();HE();lt();FN();XH=130,qH=250,GN=280,BN=170,Lf=8,Ur="data-reticle-mark",FE="data-reticle-mark-active",yo=t=>`[${Ur}="${t}"]`,Da=class{constructor(e){b(this,$);b(this,Sc);b(this,_c);b(this,Vd);b(this,jd);b(this,Kd);b(this,_n);b(this,xn);b(this,xc);b(this,va);b(this,dn);b(this,Ra);b(this,Vn);b(this,vo);b(this,jn,!1);b(this,mt,[]);b(this,Ti);b(this,Na);b(this,Ro);b(this,No);b(this,wa);b(this,Oa);b(this,Wd);b(this,zd);b(this,Ia);b(this,Ac);b(this,yc);b(this,Ca);b(this,La);b(this,ka,{x:0,y:0});var n;h(this,Sc,e.emit),h(this,_c,e.now),h(this,Vd,e.onMark),h(this,jd,(n=e.shouldBlock)!=null?n:(()=>!0)),h(this,Kd,e.onCountChange)}get active(){return c(this,jn)}get markCount(){return c(this,mt).length}annotations(){return c(this,mt).map(({id:e,createdAt:n,note:r,label:o,anchor:a,route:s,source:l})=>({id:e,createdAt:n,note:r,label:o,anchor:a,route:s,...l===void 0?{}:{source:l}}))}mount(){var o,a,s;if(c(this,_n)!==void 0||typeof document=="undefined")return;let e=document.createElement("style");e.setAttribute(Ur,"style"),e.textContent=HN,document.head.appendChild(e);let n=document.createElement("div");n.setAttribute(Ur,"root"),n.innerHTML=UN,document.body.appendChild(n),h(this,_n,n),h(this,xn,(o=n.querySelector(yo("hi")))!=null?o:void 0),h(this,xc,(a=n.querySelector(yo("hilabel")))!=null?a:void 0),h(this,va,(s=n.querySelector(yo("sel")))!=null?s:void 0);let r=new AbortController;h(this,yc,r),document.addEventListener("click",l=>E(this,$,XN).call(this,l),{capture:!0,signal:r.signal}),document.addEventListener("mousemove",l=>E(this,$,qN).call(this,l),{passive:!0,capture:!0,signal:r.signal}),document.addEventListener("keydown",l=>E(this,$,YN).call(this,l),{signal:r.signal}),window.addEventListener("scroll",()=>E(this,$,YE).call(this),{capture:!0,signal:r.signal}),window.addEventListener("resize",()=>E(this,$,YE).call(this),{signal:r.signal}),h(this,Ca,new MutationObserver(()=>this.syncAnchors())),c(this,Ca).observe(document.documentElement,{childList:!0,subtree:!0}),c(this,Ac)!==void 0&&this.setAccent(c(this,Ac))}setAccent(e){var n;h(this,Ac,e),(n=c(this,_n))==null||n.style.setProperty("--reticle-mark-accent",e)}attachChrome(e){var n,r;h(this,No,e.markersBtn),h(this,wa,e.clearBtn),h(this,Oa,e.copyRow),h(this,Wd,e.onCount),h(this,zd,e.onMarksChange),h(this,Ia,e.countEl),(n=c(this,No))==null||n.addEventListener("click",o=>{o.stopPropagation(),E(this,$,zN).call(this)}),(r=c(this,wa))==null||r.addEventListener("click",o=>{o.stopPropagation(),this.clearAll()}),E(this,$,Tc).call(this)}destroy(){var e,n,r;(e=c(this,yc))==null||e.abort(),h(this,yc,void 0),(n=c(this,Ca))==null||n.disconnect(),h(this,Ca,void 0),c(this,Vn)!==void 0&&Te(c(this,Vn)),c(this,vo)!==void 0&&Te(c(this,vo)),E(this,$,dr).call(this),document.documentElement.removeAttribute(FE),(r=c(this,_n))==null||r.remove(),document.querySelectorAll(`style[${Ur}="style"]`).forEach(o=>o.remove()),h(this,_n,void 0),h(this,jn,!1),h(this,mt,[])}toggle(e){h(this,jn,e!=null?e:!c(this,jn)),c(this,jn)?document.documentElement.setAttribute(FE,"1"):(document.documentElement.removeAttribute(FE),E(this,$,Df).call(this),E(this,$,dr).call(this)),E(this,$,Tc).call(this)}agentPrompt(e){return If(c(this,mt),e)}clearAll(){E(this,$,dr).call(this);for(let e of c(this,mt))e.pin.remove();h(this,mt,[]),E(this,$,Tc).call(this)}syncAnchors(){let e=kf();for(let n of c(this,mt))n.target!==void 0&&document.contains(n.target)?n.pin.removeAttribute("data-stale"):(n.target=void 0,n.pin.setAttribute("data-stale","1")),n.pin.hidden=n.route!==e;E(this,$,Bd).call(this)}};Sc=new WeakMap,_c=new WeakMap,Vd=new WeakMap,jd=new WeakMap,Kd=new WeakMap,_n=new WeakMap,xn=new WeakMap,xc=new WeakMap,va=new WeakMap,dn=new WeakMap,Ra=new WeakMap,Vn=new WeakMap,vo=new WeakMap,jn=new WeakMap,mt=new WeakMap,Ti=new WeakMap,Na=new WeakMap,Ro=new WeakMap,No=new WeakMap,wa=new WeakMap,Oa=new WeakMap,Wd=new WeakMap,zd=new WeakMap,Ia=new WeakMap,Ac=new WeakMap,yc=new WeakMap,Ca=new WeakMap,$=new WeakSet,zN=function(){var r,o;let e=c(this,_n);if(e===void 0)return;let n=e.getAttribute("data-hide")==="1"?"0":"1";n==="1"?e.setAttribute("data-hide","1"):e.removeAttribute("data-hide"),(r=c(this,No))==null||r.setAttribute("data-active",n==="0"?"0":"1"),(o=c(this,No))==null||o.setAttribute("aria-pressed",n==="1"?"true":"false")},Tc=function(){var n,r,o,a,s;let e=c(this,mt).length;if((n=c(this,Kd))==null||n.call(this,e),c(this,Ia)!==void 0&&(c(this,Ia).textContent=String(e),c(this,Ia).hidden=e===0),(r=c(this,wa))==null||r.toggleAttribute("disabled",e===0),(o=c(this,Wd))==null||o.call(this,e),(a=c(this,zd))==null||a.call(this,this.annotations()),c(this,Oa)!==void 0){c(this,Oa).hidden=e===0;let l=c(this,Oa).querySelector("[data-reticle-marks-text]");l!==null&&(l.textContent=LN(e))}(s=c(this,No))==null||s.toggleAttribute("disabled",e===0)},YN=function(e){if(!(e.key!=="Escape"||!c(this,jn))){if(c(this,dn)!==void 0){e.preventDefault(),E(this,$,dr).call(this);return}this.toggle(!1)}},XN=function(e){var l,d;if(!c(this,jn)||rf())return;let n=e.target;if(!(n instanceof Element))return;let r=n.hasAttribute(jN)?KN(e.clientX,e.clientY):n;if(r===void 0||ht(r)||((l=c(this,No))==null?void 0:l.contains(r))===!0||((d=c(this,wa))==null?void 0:d.contains(r))===!0||r.closest(yo("pin"))!==null||r.closest(yo("pop"))!==null)return;if(c(this,dn)!==void 0){e.preventDefault(),e.stopPropagation(),E(this,$,KE).call(this);return}let o=r instanceof HTMLElement?r:r.parentElement;if(o===null)return;c(this,jd).call(this)?(e.preventDefault(),e.stopPropagation()):e.preventDefault();let a=ZH(o),s=c(this,mt).find(u=>u.anchor===a&&u.route===kf());if(s!==void 0){E(this,$,GE).call(this,s);return}E(this,$,QN).call(this,o,e.clientX,e.clientY)},qN=function(e){c(this,Vn)!==void 0&&Te(c(this,Vn)),h(this,Vn,ee(()=>{h(this,Vn,void 0),E(this,$,ZN).call(this,e)},XH))},ZN=function(e){if(c(this,xn)===void 0)return;let n=e.target,r=n instanceof Element&&n.hasAttribute(jN)?KN(e.clientX,e.clientY):n;if(!c(this,jn)||c(this,dn)!==void 0||!(r instanceof Element)||ht(r)||r.closest(yo("pin"))!==null){c(this,xn).setAttribute("data-on","0");return}let a=r.getBoundingClientRect();if(a.width===0&&a.height===0){c(this,xn).setAttribute("data-on","0");return}c(this,xn).style.left=`${String(a.left)}px`,c(this,xn).style.top=`${String(a.top)}px`,c(this,xn).style.width=`${String(a.width)}px`,c(this,xn).style.height=`${String(a.height)}px`,c(this,xn).setAttribute("data-on","1"),c(this,xc)!==void 0&&(c(this,xc).textContent=JH(r))},Df=function(){var e;c(this,Vn)!==void 0&&(Te(c(this,Vn)),h(this,Vn,void 0)),(e=c(this,xn))==null||e.setAttribute("data-on","0")},GE=function(e){E(this,$,dr).call(this),h(this,Ti,e),h(this,Na,e.anchor),h(this,Ro,e.target),E(this,$,Df).call(this);let n=E(this,$,BE).call(this,e);E(this,$,VE).call(this,e.label,n.x,n.y,e.note),E(this,$,zE).call(this,n.x,n.y),E(this,$,Bd).call(this)},BE=function(e){let n=e.target;if(n!==void 0&&n.isConnected){let r=n.getBoundingClientRect();if(r.width>0||r.height>0)return{x:r.left+r.width/2,y:r.top+r.height/2}}return{x:e.clientX,y:e.isFixed?e.clientY:e.yDoc-window.scrollY}},QN=function(e,n,r){let o=Gd(e),a=o.anchor;if(c(this,Na)===a&&c(this,dn)!==void 0){E(this,$,KE).call(this);return}E(this,$,dr).call(this),E(this,$,Df).call(this),h(this,Ti,void 0),h(this,Na,a),h(this,Ro,e);let s=o.source!==void 0?`${o.label} \xB7 ${o.source.file}:${String(o.source.line)}`:o.label;E(this,$,VE).call(this,s,n,r,""),E(this,$,zE).call(this,n,r),E(this,$,Bd).call(this),E(this,$,JN).call(this,o,n,r)},VE=function(e,n,r,o){var p,f;let a=document.createElement("div");a.setAttribute(Ur,"pop"),a.setAttribute("role","dialog"),a.setAttribute("aria-label",UE),a.innerHTML=`<div class="reticle-mark-where"></div>
69
- <textarea rows="2" placeholder="${UE}"></textarea>
68
+ `,s0=`<div ${_h}="hi"><span ${_h}="hilabel"></span></div><div ${_h}="sel" hidden></div>`});function d0(t){return t.source===void 0?void 0:`${t.source.file}:${String(t.source.line)}`}function Ah(){return typeof location=="undefined"?"":location.pathname+location.search}function KB(t){return gu(t).anchor}function WB(t){if(t===void 0||typeof getComputedStyle=="undefined")return!1;let e=getComputedStyle(t).position;return e==="fixed"||e==="sticky"}function p0(t,e){let n=document.elementsFromPoint.bind(document);if(n!==void 0){for(let r of n(t,e))if(!jr(r))return r}}function f0(t,e){let n=window.innerWidth,r=window.innerHeight,o=Math.min(Math.max(t,xh+c0/2),n-xh-c0/2),s=e+12;return s+l0>r-xh&&(s=Math.max(xh,e-l0-12)),{left:o,top:s}}function zB(t){var s;let e=Te(t);if(e!==null&&e.length>0)return e;let n=t.tagName.toLowerCase(),r=t.getAttribute("aria-label");if(r!==null&&r.length>0)return`${n} "${r}"`;let o=((s=t.textContent)!=null?s:"").trim().replace(/\s+/g," ").slice(0,40);return o.length>0?`${n} "${o}"`:n}function y0(t){let e=new ea(t);return e.mount(),e}var VB,jB,c0,l0,xh,Zr,Bb,Go,Uc,Fc,bu,Tu,Su,On,In,Gc,Ks,mn,Ws,qn,Bo,Zn,At,Pi,zs,Vo,jo,Ys,Xs,_u,xu,qs,Bc,Vc,Zs,H,h0,Hc,m0,g0,E0,b0,yh,Vb,jb,T0,Kb,Qs,Js,S0,Wb,zb,_0,Yb,Xb,x0,Eu,qb,A0,br,ea,u0,Zb=S(()=>{"use strict";xt();Tc();D();Ye();Ub();Fb();dt();a0();VB=130,jB=250,c0=280,l0=170,xh=8,Zr="data-reticle-mark",Bb="data-reticle-mark-active",Go=t=>`[${Zr}="${t}"]`,ea=class{constructor(e){b(this,H);b(this,Uc);b(this,Fc);b(this,bu);b(this,Tu);b(this,Su);b(this,On);b(this,In);b(this,Gc);b(this,Ks);b(this,mn);b(this,Ws);b(this,qn);b(this,Bo);b(this,Zn,!1);b(this,At,[]);b(this,Pi);b(this,zs);b(this,Vo);b(this,jo);b(this,Ys);b(this,Xs);b(this,_u);b(this,xu);b(this,qs);b(this,Bc);b(this,Vc);b(this,Zs);b(this,Qs);b(this,Js,{x:0,y:0});var n;f(this,Uc,e.emit),f(this,Fc,e.now),f(this,bu,e.onMark),f(this,Tu,(n=e.shouldBlock)!=null?n:(()=>!0)),f(this,Su,e.onCountChange)}get active(){return c(this,Zn)}get markCount(){return c(this,At).length}annotations(){return c(this,At).map(({id:e,createdAt:n,note:r,label:o,anchor:s,route:a,source:l})=>({id:e,createdAt:n,note:r,label:o,anchor:s,route:a,...l===void 0?{}:{source:l}}))}mount(){var o,s,a;if(c(this,On)!==void 0||typeof document=="undefined")return;let e=document.createElement("style");e.setAttribute(Zr,"style"),e.textContent=i0,document.head.appendChild(e);let n=document.createElement("div");n.setAttribute(Zr,"root"),n.innerHTML=s0,document.body.appendChild(n),f(this,On,n),f(this,In,(o=n.querySelector(Go("hi")))!=null?o:void 0),f(this,Gc,(s=n.querySelector(Go("hilabel")))!=null?s:void 0),f(this,Ks,(a=n.querySelector(Go("sel")))!=null?a:void 0);let r=new AbortController;f(this,Vc,r),document.addEventListener("click",l=>E(this,H,g0).call(this,l),{capture:!0,signal:r.signal}),document.addEventListener("mousemove",l=>E(this,H,E0).call(this,l),{passive:!0,capture:!0,signal:r.signal}),document.addEventListener("keydown",l=>E(this,H,m0).call(this,l),{signal:r.signal}),window.addEventListener("scroll",()=>E(this,H,qb).call(this),{capture:!0,signal:r.signal}),window.addEventListener("resize",()=>E(this,H,qb).call(this),{signal:r.signal}),f(this,Zs,new MutationObserver(()=>this.syncAnchors())),c(this,Zs).observe(document.documentElement,{childList:!0,subtree:!0}),c(this,Bc)!==void 0&&this.setAccent(c(this,Bc))}setAccent(e){var n;f(this,Bc,e),(n=c(this,On))==null||n.style.setProperty("--reticle-mark-accent",e)}attachChrome(e){var n,r;f(this,jo,e.markersBtn),f(this,Ys,e.clearBtn),f(this,Xs,e.copyRow),f(this,_u,e.onCount),f(this,xu,e.onMarksChange),f(this,qs,e.countEl),(n=c(this,jo))==null||n.addEventListener("click",o=>{o.stopPropagation(),E(this,H,h0).call(this)}),(r=c(this,Ys))==null||r.addEventListener("click",o=>{o.stopPropagation(),this.clearAll()}),E(this,H,Hc).call(this)}destroy(){var e,n,r;(e=c(this,Vc))==null||e.abort(),f(this,Vc,void 0),(n=c(this,Zs))==null||n.disconnect(),f(this,Zs,void 0),c(this,qn)!==void 0&&_e(c(this,qn)),c(this,Bo)!==void 0&&_e(c(this,Bo)),E(this,H,br).call(this),document.documentElement.removeAttribute(Bb),(r=c(this,On))==null||r.remove(),document.querySelectorAll(`style[${Zr}="style"]`).forEach(o=>o.remove()),f(this,On,void 0),f(this,Zn,!1),f(this,At,[])}toggle(e){f(this,Zn,e!=null?e:!c(this,Zn)),c(this,Zn)?document.documentElement.setAttribute(Bb,"1"):(document.documentElement.removeAttribute(Bb),E(this,H,yh).call(this),E(this,H,br).call(this)),E(this,H,Hc).call(this)}agentPrompt(e){return Sh(c(this,At),e)}clearAll(){E(this,H,br).call(this);for(let e of c(this,At))e.pin.remove();f(this,At,[]),E(this,H,Hc).call(this)}syncAnchors(){let e=Ah();for(let n of c(this,At))n.target!==void 0&&document.contains(n.target)?n.pin.removeAttribute("data-stale"):(n.target=void 0,n.pin.setAttribute("data-stale","1")),n.pin.hidden=n.route!==e;E(this,H,Eu).call(this)}};Uc=new WeakMap,Fc=new WeakMap,bu=new WeakMap,Tu=new WeakMap,Su=new WeakMap,On=new WeakMap,In=new WeakMap,Gc=new WeakMap,Ks=new WeakMap,mn=new WeakMap,Ws=new WeakMap,qn=new WeakMap,Bo=new WeakMap,Zn=new WeakMap,At=new WeakMap,Pi=new WeakMap,zs=new WeakMap,Vo=new WeakMap,jo=new WeakMap,Ys=new WeakMap,Xs=new WeakMap,_u=new WeakMap,xu=new WeakMap,qs=new WeakMap,Bc=new WeakMap,Vc=new WeakMap,Zs=new WeakMap,H=new WeakSet,h0=function(){var r,o;let e=c(this,On);if(e===void 0)return;let n=e.getAttribute("data-hide")==="1"?"0":"1";n==="1"?e.setAttribute("data-hide","1"):e.removeAttribute("data-hide"),(r=c(this,jo))==null||r.setAttribute("data-active",n==="0"?"0":"1"),(o=c(this,jo))==null||o.setAttribute("aria-pressed",n==="1"?"true":"false")},Hc=function(){var n,r,o,s,a;let e=c(this,At).length;if((n=c(this,Su))==null||n.call(this,e),c(this,qs)!==void 0&&(c(this,qs).textContent=String(e),c(this,qs).hidden=e===0),(r=c(this,Ys))==null||r.toggleAttribute("disabled",e===0),(o=c(this,_u))==null||o.call(this,e),(s=c(this,xu))==null||s.call(this,this.annotations()),c(this,Xs)!==void 0){c(this,Xs).hidden=e===0;let l=c(this,Xs).querySelector("[data-reticle-marks-text]");l!==null&&(l.textContent=JO(e))}(a=c(this,jo))==null||a.toggleAttribute("disabled",e===0)},m0=function(e){if(!(e.key!=="Escape"||!c(this,Zn))){if(c(this,mn)!==void 0){e.preventDefault(),E(this,H,br).call(this);return}this.toggle(!1)}},g0=function(e){var l,d;if(!c(this,Zn)||jf())return;let n=e.target;if(!(n instanceof Element))return;let r=n.hasAttribute(u0)?p0(e.clientX,e.clientY):n;if(r===void 0||ft(r)||((l=c(this,jo))==null?void 0:l.contains(r))===!0||((d=c(this,Ys))==null?void 0:d.contains(r))===!0||r.closest(Go("pin"))!==null||r.closest(Go("pop"))!==null)return;if(c(this,mn)!==void 0){e.preventDefault(),e.stopPropagation(),E(this,H,zb).call(this);return}let o=r instanceof HTMLElement?r:r.parentElement;if(o===null)return;c(this,Tu).call(this)?(e.preventDefault(),e.stopPropagation()):e.preventDefault();let s=KB(o),a=c(this,At).find(u=>u.anchor===s&&u.route===Ah());if(a!==void 0){E(this,H,Vb).call(this,a);return}E(this,H,T0).call(this,o,e.clientX,e.clientY)},E0=function(e){c(this,qn)!==void 0&&_e(c(this,qn)),f(this,qn,oe(()=>{f(this,qn,void 0),E(this,H,b0).call(this,e)},VB))},b0=function(e){if(c(this,In)===void 0)return;let n=e.target,r=n instanceof Element&&n.hasAttribute(u0)?p0(e.clientX,e.clientY):n;if(!c(this,Zn)||c(this,mn)!==void 0||!(r instanceof Element)||ft(r)||r.closest(Go("pin"))!==null){c(this,In).setAttribute("data-on","0");return}let s=r.getBoundingClientRect();if(s.width===0&&s.height===0){c(this,In).setAttribute("data-on","0");return}c(this,In).style.left=`${String(s.left)}px`,c(this,In).style.top=`${String(s.top)}px`,c(this,In).style.width=`${String(s.width)}px`,c(this,In).style.height=`${String(s.height)}px`,c(this,In).setAttribute("data-on","1"),c(this,Gc)!==void 0&&(c(this,Gc).textContent=zB(r))},yh=function(){var e;c(this,qn)!==void 0&&(_e(c(this,qn)),f(this,qn,void 0)),(e=c(this,In))==null||e.setAttribute("data-on","0")},Vb=function(e){E(this,H,br).call(this),f(this,Pi,e),f(this,zs,e.anchor),f(this,Vo,e.target),E(this,H,yh).call(this);let n=E(this,H,jb).call(this,e);E(this,H,Kb).call(this,e.label,n.x,n.y,e.note),E(this,H,Xb).call(this,n.x,n.y),E(this,H,Eu).call(this)},jb=function(e){let n=e.target;if(n!==void 0&&n.isConnected){let r=n.getBoundingClientRect();if(r.width>0||r.height>0)return{x:r.left+r.width/2,y:r.top+r.height/2}}return{x:e.clientX,y:e.isFixed?e.clientY:e.yDoc-window.scrollY}},T0=function(e,n,r){let o=gu(e),s=o.anchor;if(c(this,zs)===s&&c(this,mn)!==void 0){E(this,H,zb).call(this);return}E(this,H,br).call(this),E(this,H,yh).call(this),f(this,Pi,void 0),f(this,zs,s),f(this,Vo,e);let a=o.source!==void 0?`${o.label} \xB7 ${o.source.file}:${String(o.source.line)}`:o.label;E(this,H,Kb).call(this,a,n,r,""),E(this,H,Xb).call(this,n,r),E(this,H,Eu).call(this),E(this,H,S0).call(this,o,n,r)},Kb=function(e,n,r,o){var p,h;let s=document.createElement("div");s.setAttribute(Zr,"pop"),s.setAttribute("role","dialog"),s.setAttribute("aria-label",Gb),s.innerHTML=`<div class="reticle-mark-where"></div>
69
+ <textarea rows="2" placeholder="${Gb}"></textarea>
70
70
  <div class="reticle-mark-row">
71
- <button type="button" data-cancel data-reticle-mark-cancel>${$N}</button>
72
- <button type="button" data-send data-reticle-mark-send disabled>${MN}</button>
73
- </div>`;let s=a.querySelector(".reticle-mark-where");s!==null&&(s.textContent=e);let l=WN(n,r);a.style.left=`${String(l.left)}px`,a.style.top=`${String(l.top)}px`,(p=c(this,_n))==null||p.appendChild(a),h(this,dn,a),requestAnimationFrame(()=>a.setAttribute("data-in","1"));let d=a.querySelector("textarea"),u=a.querySelector("button[data-send]");d!==null&&(d.value=o,u!==null&&(u.disabled=d.value.trim().length===0),d.addEventListener("input",()=>{u!==null&&(u.disabled=d.value.trim().length===0)}),d.addEventListener("keydown",m=>{m.stopPropagation(),!m.isComposing&&(m.key==="Escape"?(m.preventDefault(),E(this,$,dr).call(this)):m.key==="Enter"&&!m.shiftKey&&(m.preventDefault(),E(this,$,jE).call(this)))}),ee(()=>d.focus(),50)),(f=a.querySelector("button[data-cancel]"))==null||f.addEventListener("click",()=>E(this,$,dr).call(this)),u==null||u.addEventListener("click",()=>E(this,$,jE).call(this)),h(this,La,void 0),h(this,ka,{x:n,y:r})},La=new WeakMap,ka=new WeakMap,JN=function(e,n,r){h(this,La,e),h(this,ka,{x:n,y:r})},jE=function(){var o,a,s;let e=(s=(a=(o=c(this,dn))==null?void 0:o.querySelector("textarea"))==null?void 0:a.value.trim())!=null?s:"";if(e.length===0)return;let n=c(this,Ti);if(n!==void 0){n.note=e;let l=n.pin.querySelector(yo("tipn"));l!==null&&(l.textContent=e),c(this,Sc).call(this,x.HUMAN_MARK,{note:e,anchor:n.anchor,label:n.label,route:n.route}),E(this,$,WE).call(this,e,n.anchor,n.label,c(this,mt).indexOf(n)+1,n.source),E(this,$,Tc).call(this),E(this,$,dr).call(this);return}let r=c(this,La);r!==void 0&&(E(this,$,ew).call(this,e,r,c(this,ka).x,c(this,ka).y),E(this,$,dr).call(this))},KE=function(){let e=c(this,dn);e!==void 0&&(e.classList.remove("reticle-mark-shake"),e.offsetWidth,e.classList.add("reticle-mark-shake"),c(this,vo)!==void 0&&Te(c(this,vo)),h(this,vo,ee(()=>{e.classList.remove("reticle-mark-shake"),h(this,vo,void 0)},qH)))},ew=function(e,n,r,o){let a={note:e,anchor:n.anchor,strategy:n.strategy,label:n.label,route:kf()};n.source!==void 0&&(a.source=n.source),c(this,Sc).call(this,x.HUMAN_MARK,a),c(this,_c).call(this),E(this,$,tw).call(this,n,e,r,o),E(this,$,WE).call(this,e,n.anchor,n.label,c(this,mt).length,VN(n))},WE=function(e,n,r,o,a){var l;let s={note:e,anchor:n,label:r,index:o};a!==void 0&&(s.source=a),(l=c(this,Vd))==null||l.call(this,s)},zE=function(e,n){var o,a;(o=c(this,Ra))==null||o.remove();let r=document.createElement("div");r.setAttribute(Ur,"pending"),r.textContent=PN,r.style.left=`${String(e)}px`,r.style.top=`${String(n)}px`,(a=c(this,_n))==null||a.appendChild(r),h(this,Ra,r)},tw=function(e,n,r,o){if(c(this,_n)===void 0)return;let a=document.createElement("button");a.type="button",a.setAttribute(Ur,"pin"),a.setAttribute("aria-label",e.label);let s=c(this,mt).length+1;a.innerHTML=`<span>${String(s)}</span><span ${Ur}="tip"><span ${Ur}="tipq"></span><span ${Ur}="tipn"></span></span>`;let l=a.querySelector(yo("tipq")),d=a.querySelector(yo("tipn"));l!==null&&(l.textContent=e.label),d!==null&&(d.textContent=n);let u=QH(c(this,Ro)),p=u?o:o+window.scrollY;a.style.left=`${String(r/window.innerWidth*100)}%`,a.style.top=`${String(u?o:p-window.scrollY)}px`,c(this,_n).appendChild(a);let f=c(this,_c).call(this),m={id:`${e.anchor}:${String(f)}:${String(s)}`,createdAt:f,note:n,label:e.label,anchor:e.anchor,route:kf(),xPct:r/window.innerWidth*100,yDoc:p,clientX:r,clientY:o,isFixed:u,pin:a,target:c(this,Ro),source:VN(e)};a.addEventListener("click",g=>{g.preventDefault(),g.stopPropagation(),c(this,jn)&&E(this,$,GE).call(this,m)}),c(this,mt).push(m),E(this,$,Tc).call(this)},Bd=function(){let e=c(this,va);if(e===void 0)return;let n=c(this,Ro);if(n===void 0||!document.contains(n)||c(this,dn)===void 0){e.hidden=!0;return}let r=n.getBoundingClientRect();e.hidden=!1,e.style.left=`${String(r.left)}px`,e.style.top=`${String(r.top)}px`,e.style.width=`${String(r.width)}px`,e.style.height=`${String(r.height)}px`},YE=function(){for(let e of c(this,mt)){if(e.isFixed){e.pin.style.top=`${String(e.clientY)}px`;continue}e.pin.style.top=`${String(e.yDoc-window.scrollY)}px`}E(this,$,nw).call(this),E(this,$,Bd).call(this)},nw=function(){let e=c(this,dn),n=c(this,Ti);if(e===void 0||n===void 0)return;let r=E(this,$,BE).call(this,n),o=WN(r.x,r.y);e.style.left=`${String(o.left)}px`,e.style.top=`${String(o.top)}px`},dr=function(){var e,n;(e=c(this,dn))==null||e.remove(),h(this,dn,void 0),(n=c(this,Ra))==null||n.remove(),h(this,Ra,void 0),h(this,Na,void 0),h(this,Ro,void 0),h(this,La,void 0),h(this,Ti,void 0),c(this,va)!==void 0&&(c(this,va).hidden=!0)};jN="data-reticle-blocker"});var eU,Mf,tU,ow,iw=S(()=>{"use strict";eU={view:'<g><path d="M15 12a3 3 0 1 1-6 0a3 3 0 0 1 6 0"/><path d="M2.458 12C3.732 7.943 7.523 5 12 5c4.478 0 8.268 2.943 9.542 7c-1.274 4.057-5.064 7-9.542 7s-8.268-2.943-9.542-7"/></g>',pointer:'<path d="M15.042 21.672L13.684 16.6m0 0l-2.51 2.225l.569-9.47l5.227 7.917l-3.286-.672ZM12 2.25V4.5m5.834.166l-1.591 1.591M20.25 10.5H18M7.757 14.743l-1.59 1.59M6 10.5H3.75m4.007-4.243l-1.59-1.59"/>',send:'<path d="M6 12 3.269 3.126A59.768 59.768 0 0 1 21.485 12 59.77 59.77 0 0 1 3.27 20.876L5.999 12Zm0 0h7.5"/>',chart:'<path d="M9 19v-6a2 2 0 0 0-2-2H5a2 2 0 0 0-2 2v6a2 2 0 0 0 2 2h2a2 2 0 0 0 2-2m0 0V9a2 2 0 0 1 2-2h2a2 2 0 0 1 2 2v10m-6 0a2 2 0 0 0 2 2h2a2 2 0 0 0 2-2m0 0V5a2 2 0 0 1 2-2h2a2 2 0 0 1 2 2v14a2 2 0 0 1-2 2h-2a2 2 0 0 1-2-2"/>',"caret-down":'<path d="m19 9l-7 7l-7-7"/>',check:'<path d="m5 13l4 4L19 7"/>',remove:'<path d="m4.5 19.5l15-15m-15 0l15 15"/>',pause:'<path d="M8 5v14M16 5v14"/>',play:'<path d="M8 5.75v12.5L18 12 8 5.75Z"/>',stop:'<rect x="6.5" y="6.5" width="11" height="11" rx="2"/>',copy:'<path d="M8 7v8a2 2 0 0 0 2 2h6M8 7V5a2 2 0 0 1 2-2h4.586a1 1 0 0 1 .707.293l4.414 4.414a1 1 0 0 1 .293.707V15a2 2 0 0 1-2 2h-2M8 7H6a2 2 0 0 0-2 2v10a2 2 0 0 0 2 2h8a2 2 0 0 0 2-2v-2"/>',download:'<path d="M3 16.5v2.25A2.25 2.25 0 0 0 5.25 21h13.5A2.25 2.25 0 0 0 21 18.75V16.5M16.5 12L12 16.5m0 0L7.5 12m4.5 4.5V3"/>',message:'<path d="M8.625 9.75a.375.375 0 1 1-.75 0a.375.375 0 0 1 .75 0Zm0 0H8.25m4.125 0a.375.375 0 1 1-.75 0a.375.375 0 0 1 .75 0Zm0 0H12m4.125 0a.375.375 0 1 1-.75 0a.375.375 0 0 1 .75 0Zm0 0h-.375m-13.5 3.01c0 1.6 1.123 2.994 2.707 3.227c1.087.16 2.185.283 3.293.369V21l4.184-4.183a1.14 1.14 0 0 1 .778-.332a48.294 48.294 0 0 0 5.83-.498c1.585-.233 2.708-1.626 2.708-3.228V6.741c0-1.602-1.123-2.995-2.707-3.228A48.394 48.394 0 0 0 12 3c-2.392 0-4.744.175-7.043.513C3.373 3.746 2.25 5.14 2.25 6.741v6.018Z"/>',gear:'<g><path d="M9.594 3.94c.09-.542.56-.94 1.11-.94h2.593c.55 0 1.02.398 1.11.94l.213 1.281c.063.374.313.686.645.87c.074.04.147.083.22.127c.324.196.72.257 1.075.124l1.217-.456a1.125 1.125 0 0 1 1.37.49l1.296 2.247a1.125 1.125 0 0 1-.26 1.431l-1.003.827c-.293.24-.438.613-.431.992a6.759 6.759 0 0 1 0 .255c-.007.378.138.75.43.99l1.005.828c.424.35.534.954.26 1.43l-1.298 2.247a1.125 1.125 0 0 1-1.369.491l-1.217-.456c-.355-.133-.75-.072-1.076.124a6.57 6.57 0 0 1-.22.128c-.331.183-.581.495-.644.869l-.213 1.28c-.09.543-.56.941-1.11.941h-2.594c-.55 0-1.02-.398-1.11-.94l-.213-1.281c-.062-.374-.312-.686-.644-.87a6.52 6.52 0 0 1-.22-.127c-.325-.196-.72-.257-1.076-.124l-1.217.456a1.125 1.125 0 0 1-1.369-.49l-1.297-2.247a1.125 1.125 0 0 1 .26-1.431l1.004-.827c.292-.24.437-.613.43-.992a6.932 6.932 0 0 1 0-.255c.007-.378-.138-.75-.43-.99l-1.004-.828a1.125 1.125 0 0 1-.26-1.43l1.297-2.247a1.125 1.125 0 0 1 1.37-.491l1.216.456c.356.133.751.072 1.076-.124c.072-.044.146-.087.22-.128c.332-.183.582-.495.644-.869l.214-1.281Z"/><path d="M15 12a3 3 0 1 1-6 0a3 3 0 0 1 6 0Z"/></g>',layout:'<path d="M3.75 6A2.25 2.25 0 0 1 6 3.75h2.25A2.25 2.25 0 0 1 10.5 6v2.25a2.25 2.25 0 0 1-2.25 2.25H6a2.25 2.25 0 0 1-2.25-2.25V6Zm0 9.75A2.25 2.25 0 0 1 6 13.5h2.25a2.25 2.25 0 0 1 2.25 2.25V18a2.25 2.25 0 0 1-2.25 2.25H6A2.25 2.25 0 0 1 3.75 18v-2.25ZM13.5 6a2.25 2.25 0 0 1 2.25-2.25H18A2.25 2.25 0 0 1 20.25 6v2.25A2.25 2.25 0 0 1 18 10.5h-2.25a2.25 2.25 0 0 1-2.25-2.25V6Zm0 9.75a2.25 2.25 0 0 1 2.25-2.25H18a2.25 2.25 0 0 1 2.25 2.25V18A2.25 2.25 0 0 1 18 20.25h-2.25A2.25 2.25 0 0 1 13.5 18v-2.25Z"/>',notes:'<path d="M9 12h3.75M9 15h3.75M9 18h3.75m3 .75H18a2.25 2.25 0 0 0 2.25-2.25V6.108c0-1.135-.845-2.098-1.976-2.192a48.424 48.424 0 0 0-1.123-.08m-5.801 0c-.065.21-.1.433-.1.664c0 .414.336.75.75.75h4.5a.75.75 0 0 0 .75-.75a2.25 2.25 0 0 0-.1-.664m-5.8 0A2.251 2.251 0 0 1 13.5 2.25H15a2.25 2.25 0 0 1 2.15 1.586m-5.8 0c-.376.023-.75.05-1.124.08C9.095 4.01 8.25 4.973 8.25 6.108V8.25m0 0H4.875c-.621 0-1.125.504-1.125 1.125v11.25c0 .621.504 1.125 1.125 1.125h9.75c.621 0 1.125-.504 1.125-1.125V9.375c0-.621-.504-1.125-1.125-1.125H8.25ZM6.75 12h.008v.008H6.75V12Zm0 3h.008v.008H6.75V15Zm0 3h.008v.008H6.75V18Z"/>',trash:'<path d="m19 7l-.867 12.142A2 2 0 0 1 16.138 21H7.862a2 2 0 0 1-1.995-1.858L5 7m5 4v6m4-6v6m1-10V4a1 1 0 0 0-1-1h-4a1 1 0 0 0-1 1v3M4 7h16"/>',help:'<path d="M8.228 9c.549-1.165 2.03-2 3.772-2c2.21 0 4 1.343 4 3c0 1.4-1.278 2.575-3.006 2.907c-.542.104-.994.54-.994 1.093m0 3h.01M21 12a9 9 0 1 1-18 0a9 9 0 0 1 18 0"/>',"caret-right":'<path d="m9 5l7 7l-7 7"/>',annotate:'<path d="m16.862 4.487l1.687-1.688a1.875 1.875 0 1 1 2.652 2.652L10.582 16.07a4.5 4.5 0 0 1-1.897 1.13L6 18l.8-2.685a4.5 4.5 0 0 1 1.13-1.897l8.932-8.931Zm0 0L19.5 7.125M18 14v4.75A2.25 2.25 0 0 1 15.75 21H5.25A2.25 2.25 0 0 1 3 18.75V8.25A2.25 2.25 0 0 1 5.25 6H10"/>',sync:'<path d="M4.5 12c0-1.232.046-2.453.138-3.662a4.006 4.006 0 0 1 3.7-3.7a48.678 48.678 0 0 1 7.324 0a4.006 4.006 0 0 1 3.7 3.7c.017.22.032.441.046.662M4.5 12l-3-3m3 3l3-3m12 3c0 1.232-.046 2.453-.138 3.662a4.006 4.006 0 0 1-3.7 3.7a48.657 48.657 0 0 1-7.324 0a4.006 4.006 0 0 1-3.7-3.7c-.017-.22-.032-.441-.046-.662M19.5 12l-3 3m3-3l3 3"/>'},Mf=eU,tU={chart:'<path fill="currentColor" d="M2 11a1 1 0 0 1 1-1h2a1 1 0 0 1 1 1v5a1 1 0 0 1-1 1H3a1 1 0 0 1-1-1zm6-4a1 1 0 0 1 1-1h2a1 1 0 0 1 1 1v9a1 1 0 0 1-1 1H9a1 1 0 0 1-1-1zm6-3a1 1 0 0 1 1-1h2a1 1 0 0 1 1 1v12a1 1 0 0 1-1 1h-2a1 1 0 0 1-1-1z"/>',annotate:'<path fill="currentColor" fill-rule="evenodd" d="m5.433 13.916l1.262-3.154a4 4 0 0 1 .885-1.343L14.5 2.5a2.121 2.121 0 1 1 3 3l-6.92 6.919c-.383.383-.84.684-1.343.885l-3.154 1.262a.5.5 0 0 1-.65-.65ZM2.5 5.75c0-.69.56-1.25 1.25-1.25H10A.75.75 0 0 0 10 3H3.75A2.75 2.75 0 0 0 1 5.75v10.5A2.75 2.75 0 0 0 3.75 19h10.5A2.75 2.75 0 0 0 17 16.25V10a.75.75 0 0 0-1.5 0v6.25c0 .69-.56 1.25-1.25 1.25H3.75c-.69 0-1.25-.56-1.25-1.25V5.75Z" clip-rule="evenodd"/>',message:'<path fill="currentColor" fill-rule="evenodd" d="M10 2c-2.236 0-4.43.18-6.57.524C1.993 2.755 1 4.014 1 5.426v5.148c0 1.413.993 2.67 2.43 2.902c.848.137 1.705.248 2.57.331v3.443a.75.75 0 0 0 1.28.53l3.58-3.579a.78.78 0 0 1 .527-.224a41.202 41.202 0 0 0 5.183-.5c1.437-.232 2.43-1.49 2.43-2.903V5.426c0-1.413-.993-2.67-2.43-2.902A41.289 41.289 0 0 0 10 2Zm0 7a1 1 0 1 0 0-2a1 1 0 0 0 0 2ZM8 8a1 1 0 1 1-2 0a1 1 0 0 1 2 0Zm5 1a1 1 0 1 0 0-2a1 1 0 0 0 0 2Z" clip-rule="evenodd"/>',view:'<g fill="currentColor"><path d="M10 12a2 2 0 1 0 0-4a2 2 0 0 0 0 4"/><path fill-rule="evenodd" d="M.458 10C1.732 5.943 5.522 3 10 3s8.268 2.943 9.542 7c-1.274 4.057-5.064 7-9.542 7S1.732 14.057.458 10M14 10a4 4 0 1 1-8 0a4 4 0 0 1 8 0" clip-rule="evenodd"/></g>',gear:'<path fill="currentColor" fill-rule="evenodd" d="M7.84 1.804A1 1 0 0 1 8.82 1h2.36a1 1 0 0 1 .98.804l.331 1.652a6.993 6.993 0 0 1 1.929 1.115l1.598-.54a1 1 0 0 1 1.186.447l1.18 2.044a1 1 0 0 1-.205 1.251l-1.267 1.113a7.047 7.047 0 0 1 0 2.228l1.267 1.113a1 1 0 0 1 .206 1.25l-1.18 2.045a1 1 0 0 1-1.187.447l-1.598-.54a6.993 6.993 0 0 1-1.929 1.115l-.33 1.652a1 1 0 0 1-.98.804H8.82a1 1 0 0 1-.98-.804l-.331-1.652a6.993 6.993 0 0 1-1.929-1.115l-1.598.54a1 1 0 0 1-1.186-.447l-1.18-2.044a1 1 0 0 1 .205-1.251l1.267-1.114a7.05 7.05 0 0 1 0-2.227L1.821 7.773a1 1 0 0 1-.206-1.25l1.18-2.045a1 1 0 0 1 1.187-.447l1.598.54a6.993 6.993 0 0 1 1.93-1.115l.33-1.652ZM10 13a3 3 0 1 0 0-6a3 3 0 0 0 0 6Z" clip-rule="evenodd"/>'},ow=tU});function nU(t,e){let n=`${t}:${String(e)}`,r=aw.get(n);if(r!==void 0)return document.importNode(r,!0);let o=Mf[t];if(o===void 0)throw new Error(`missing heroicon body: ${String(t)}`);let s=new DOMParser().parseFromString(`<svg xmlns="${Yd}" viewBox="${Xd}" fill="none">${o}</svg>`,"image/svg+xml").documentElement,l=s instanceof SVGSVGElement?document.importNode(s,!0):document.createElementNS(Yd,"svg");return l.setAttribute("viewBox",Xd),l.setAttribute("width",String(e)),l.setAttribute("height",String(e)),l.setAttribute("fill","none"),s instanceof SVGSVGElement||(l.innerHTML=o),aw.set(n,l),document.importNode(l,!0)}function Fr(t,e=16){let n=document.createElement("span");return n.className="reticle-hi-icon",n.setAttribute("aria-hidden","true"),n.style.width=`${String(e)}px`,n.style.height=`${String(e)}px`,n.appendChild(nU(t,e)),n}function qE(t,e,n=16){t.replaceChildren(Fr(e,n))}function Ee(t,e=16){let n=Mf[t];if(n===void 0)throw new Error(`missing heroicon body: ${String(t)}`);return`<span class="reticle-hi-icon" aria-hidden="true" style="width:${String(e)}px;height:${String(e)}px"><svg xmlns="${Yd}" viewBox="${Xd}" width="${String(e)}" height="${String(e)}" fill="none">${n}</svg></span>`}function $f(t,e=16){let n=Mf[t],r=ow[t];if(n===void 0||r===void 0)throw new Error(`missing heroicon toggle pair: ${String(t)}`);let o=String(e);return`<span class="reticle-hi-toggle" aria-hidden="true" style="width:${o}px;height:${o}px"><span class="reticle-hi-icon reticle-hi-icon--outline" style="width:${o}px;height:${o}px"><svg xmlns="${Yd}" viewBox="${Xd}" width="${o}" height="${o}" fill="none">${n}</svg></span><span class="reticle-hi-icon reticle-hi-icon--solid" style="width:${o}px;height:${o}px"><svg xmlns="${Yd}" viewBox="${Xd}" width="${o}" height="${o}" fill="currentColor">${r}</svg></span></span>`}var Y,pe,Yd,Xd,aw,ur=S(()=>{"use strict";iw();Y={VIEW:"view",POINTER:"pointer",SEND:"send",CHART:"chart",CARET_DOWN:"caret-down",CHECK:"check",REMOVE:"remove",PAUSE:"pause",PLAY:"play",STOP:"stop",COPY:"copy",DOWNLOAD:"download",MESSAGE:"message",NOTES:"notes",GEAR:"gear",LAYOUT:"layout",TRASH:"trash",HELP:"help",CARET_RIGHT:"caret-right",ANNOTATE:"annotate",SYNC:"sync"},pe={CHIP:11,LOG:11,TALLY:12,CTL:10,SEND:14,MIN:12,HELP:12,NAV:18,TOOLBAR:18,FAB:22},Yd="http://www.w3.org/2000/svg",Xd="0 0 24 24",aw=new Map});function qd(t){t.scrollTop=t.scrollHeight,t.toggleAttribute(uU,t.scrollHeight>t.clientHeight+1)}function mw(t){qd(t),requestAnimationFrame(()=>{qd(t),requestAnimationFrame(()=>qd(t))}),ee(()=>qd(t),dU)}function gw(t){return[...t.children].filter(e=>e.hasAttribute(Ff))}function Bf(t,e){let n=gw(t);for(let r of n.slice(0,Math.max(0,n.length-e)))r.remove()}function Vf(t){for(let e of gw(t))e.remove()}function eb(t){return t===void 0||!Number.isFinite(t)||t<=0?rU:Math.floor(t)}function Qd(t){let e=Math.max(0,Math.floor(t/1e3));if(e<60)return`${e}s`;let n=Math.floor(e/60);if(n<60)return e%60===0?`${n}m`:`${n}m ${e%60}s`;let r=Math.floor(n/60);return n%60===0?`${r}h`:`${r}h ${n%60}m`}function Ew(t){return Qd(t)}function tb(t,e,n,r,o,a=ln.AGENT){var _,y,A;let s=e===Fe.READ?pU(t,n,a):void 0;if(s!==void 0){let v=Number((_=s.getAttribute(lw))!=null?_:"1")+1;s.setAttribute(lw,String(v));let O=s.querySelector(`.${dw}`);O===null&&(O=document.createElement("span"),O.className=dw,(y=s.querySelector(`.${Hf}`))==null||y.after(O)),O.textContent=`\xD7${String(v)}`;let B=s.querySelector(`[${Zd}]`);B!==null&&(B.textContent=r);let oe=s.querySelector(`.${Gf}`);return oe===null?{result:()=>{}}:uw(s,oe)}let l=e===Fe.ACT||e===Fe.READ;if(l&&((A=t.getAttribute(Uf))!=null?A:ln.AGENT)!==a){let v=document.createElement("div");v.setAttribute(Ff,""),v.setAttribute(QE,cU),v.setAttribute(ZE,a);let O=document.createElement("span");O.className=Hf,O.textContent=sU[a],v.appendChild(O),t.appendChild(v)}l&&t.setAttribute(Uf,a);let d=document.createElement("div");d.setAttribute(Ff,""),d.setAttribute(QE,e),d.setAttribute(ZE,a),e===Fe.ACT&&d.setAttribute(fw,"running");let u=document.createElement("span");u.setAttribute(Zd,""),u.textContent=r;let p=[];e!==Fe.HUMAN&&p.push(u);let f=oU[e],m=iU[e];if(f.length>0||m!==void 0){let v=document.createElement("span");if(v.className=lU,v.setAttribute("data-mode",aU[e]),m!==void 0&&v.appendChild(Fr(m,pe.LOG)),f.length>0){let O=document.createElement("span");O.className="reticle-chip-label",O.textContent=f,v.appendChild(O)}p.push(v)}let g=document.createElement("span");g.className=Hf,g.textContent=n;let T=document.createElement("span");return T.className=Gf,p.push(g),e!==Fe.HUMAN&&p.push(T),d.append(...p),t.appendChild(d),Bf(t,o),requestAnimationFrame(()=>{qd(t)}),uw(d,T)}function pU(t,e,n){var o;let r=t.lastElementChild;if(!(!(r instanceof HTMLElement)||!r.hasAttribute(Ff))&&!(r.getAttribute(QE)!==Fe.READ||r.getAttribute(ZE)!==n))return((o=r.querySelector(`.${Hf}`))==null?void 0:o.textContent)===e?r:void 0}function uw(t,e){return{result:n=>{if(t.setAttribute(fw,n),n===Tn.PASS){e.textContent=sw.pass,e.className=`${Gf} ${cw.pass}`;return}e.textContent=` ${sw[n]}`,e.className=`${Gf} ${cw[n]}`}}}var rU,oU,iU,pw,aU,sw,sU,Uf,ZE,fw,cU,cw,JE,Ff,Zd,QE,Hf,lw,dw,Gf,lU,Pf,dU,hw,uU,wo=S(()=>{"use strict";H();CE();lt();ur();rU=50,oU={read:"READ",act:"ACT",narration:"",human:""},iU={read:Y.VIEW,act:Y.POINTER},pw={[je.IDLE]:"",[je.READING]:"READING",[je.ACTING]:"ACTING"},aU={read:je.READING,act:je.ACTING,narration:je.IDLE,human:je.IDLE},sw={pass:"\u2713",fail:"Fail"},sU={agent:"Your agent is driving",harness:"Reticle Harness is driving"},Uf="data-reticle-log-actor",ZE="data-actor",fw="data-state",cU="handover",cw={pass:"reticle-pass",fail:"reticle-fail"},JE="data-reticle-log",Ff="data-reticle-log-row",Zd="data-reticle-log-time",QE="data-kind",Hf="reticle-log-text",lw="data-reticle-repeat",dw="reticle-log-repeat",Gf="reticle-res",lU="reticle-chip",Pf={TITLE:"Reticle checks your app from the inside.",OFFLINE_TITLE:"Not connected yet.",OFFLINE_BODY:"Once Reticle is running, this page connects by itself and the steps show here.",BODY:"Ask your coding agent to verify a change with Reticle: each step shows here, live.\\AOr open Harness below: Reticle clicks through the app as the person you pick and reports what breaks."},dU=160,hw=`
71
+ <button type="button" data-cancel data-reticle-mark-cancel>${r0}</button>
72
+ <button type="button" data-send data-reticle-mark-send disabled>${n0}</button>
73
+ </div>`;let a=s.querySelector(".reticle-mark-where");a!==null&&(a.textContent=e);let l=f0(n,r);s.style.left=`${String(l.left)}px`,s.style.top=`${String(l.top)}px`,(p=c(this,On))==null||p.appendChild(s),f(this,mn,s),requestAnimationFrame(()=>s.setAttribute("data-in","1"));let d=s.querySelector("textarea"),u=s.querySelector("button[data-send]");d!==null&&(d.value=o,u!==null&&(u.disabled=d.value.trim().length===0),d.addEventListener("input",()=>{u!==null&&(u.disabled=d.value.trim().length===0)}),d.addEventListener("keydown",m=>{m.stopPropagation(),!m.isComposing&&(m.key==="Escape"?(m.preventDefault(),E(this,H,br).call(this)):m.key==="Enter"&&!m.shiftKey&&(m.preventDefault(),E(this,H,Wb).call(this)))}),oe(()=>d.focus(),50)),(h=s.querySelector("button[data-cancel]"))==null||h.addEventListener("click",()=>E(this,H,br).call(this)),u==null||u.addEventListener("click",()=>E(this,H,Wb).call(this)),f(this,Qs,void 0),f(this,Js,{x:n,y:r})},Qs=new WeakMap,Js=new WeakMap,S0=function(e,n,r){f(this,Qs,e),f(this,Js,{x:n,y:r})},Wb=function(){var o,s,a;let e=(a=(s=(o=c(this,mn))==null?void 0:o.querySelector("textarea"))==null?void 0:s.value.trim())!=null?a:"";if(e.length===0)return;let n=c(this,Pi);if(n!==void 0){n.note=e;let l=n.pin.querySelector(Go("tipn"));l!==null&&(l.textContent=e),c(this,Uc).call(this,x.HUMAN_MARK,{note:e,anchor:n.anchor,label:n.label,route:n.route}),E(this,H,Yb).call(this,e,n.anchor,n.label,c(this,At).indexOf(n)+1,n.source),E(this,H,Hc).call(this),E(this,H,br).call(this);return}let r=c(this,Qs);r!==void 0&&(E(this,H,_0).call(this,e,r,c(this,Js).x,c(this,Js).y),E(this,H,br).call(this))},zb=function(){let e=c(this,mn);e!==void 0&&(e.classList.remove("reticle-mark-shake"),e.offsetWidth,e.classList.add("reticle-mark-shake"),c(this,Bo)!==void 0&&_e(c(this,Bo)),f(this,Bo,oe(()=>{e.classList.remove("reticle-mark-shake"),f(this,Bo,void 0)},jB)))},_0=function(e,n,r,o){let s={note:e,anchor:n.anchor,strategy:n.strategy,label:n.label,route:Ah()};n.source!==void 0&&(s.source=n.source),c(this,Uc).call(this,x.HUMAN_MARK,s),c(this,Fc).call(this),E(this,H,x0).call(this,n,e,r,o),E(this,H,Yb).call(this,e,n.anchor,n.label,c(this,At).length,d0(n))},Yb=function(e,n,r,o,s){var l;let a={note:e,anchor:n,label:r,index:o};s!==void 0&&(a.source=s),(l=c(this,bu))==null||l.call(this,a)},Xb=function(e,n){var o,s;(o=c(this,Ws))==null||o.remove();let r=document.createElement("div");r.setAttribute(Zr,"pending"),r.textContent=o0,r.style.left=`${String(e)}px`,r.style.top=`${String(n)}px`,(s=c(this,On))==null||s.appendChild(r),f(this,Ws,r)},x0=function(e,n,r,o){if(c(this,On)===void 0)return;let s=document.createElement("button");s.type="button",s.setAttribute(Zr,"pin"),s.setAttribute("aria-label",e.label);let a=c(this,At).length+1;s.innerHTML=`<span>${String(a)}</span><span ${Zr}="tip"><span ${Zr}="tipq"></span><span ${Zr}="tipn"></span></span>`;let l=s.querySelector(Go("tipq")),d=s.querySelector(Go("tipn"));l!==null&&(l.textContent=e.label),d!==null&&(d.textContent=n);let u=WB(c(this,Vo)),p=u?o:o+window.scrollY;s.style.left=`${String(r/window.innerWidth*100)}%`,s.style.top=`${String(u?o:p-window.scrollY)}px`,c(this,On).appendChild(s);let h=c(this,Fc).call(this),m={id:`${e.anchor}:${String(h)}:${String(a)}`,createdAt:h,note:n,label:e.label,anchor:e.anchor,route:Ah(),xPct:r/window.innerWidth*100,yDoc:p,clientX:r,clientY:o,isFixed:u,pin:s,target:c(this,Vo),source:d0(e)};s.addEventListener("click",g=>{g.preventDefault(),g.stopPropagation(),c(this,Zn)&&E(this,H,Vb).call(this,m)}),c(this,At).push(m),E(this,H,Hc).call(this)},Eu=function(){let e=c(this,Ks);if(e===void 0)return;let n=c(this,Vo);if(n===void 0||!document.contains(n)||c(this,mn)===void 0){e.hidden=!0;return}let r=n.getBoundingClientRect();e.hidden=!1,e.style.left=`${String(r.left)}px`,e.style.top=`${String(r.top)}px`,e.style.width=`${String(r.width)}px`,e.style.height=`${String(r.height)}px`},qb=function(){for(let e of c(this,At)){if(e.isFixed){e.pin.style.top=`${String(e.clientY)}px`;continue}e.pin.style.top=`${String(e.yDoc-window.scrollY)}px`}E(this,H,A0).call(this),E(this,H,Eu).call(this)},A0=function(){let e=c(this,mn),n=c(this,Pi);if(e===void 0||n===void 0)return;let r=E(this,H,jb).call(this,n),o=f0(r.x,r.y);e.style.left=`${String(o.left)}px`,e.style.top=`${String(o.top)}px`},br=function(){var e,n;(e=c(this,mn))==null||e.remove(),f(this,mn,void 0),(n=c(this,Ws))==null||n.remove(),f(this,Ws,void 0),f(this,zs,void 0),f(this,Vo,void 0),f(this,Qs,void 0),f(this,Pi,void 0),c(this,Ks)!==void 0&&(c(this,Ks).hidden=!0)};u0="data-reticle-blocker"});var YB,vh,XB,w0,O0=S(()=>{"use strict";YB={view:'<g><path d="M15 12a3 3 0 1 1-6 0a3 3 0 0 1 6 0"/><path d="M2.458 12C3.732 7.943 7.523 5 12 5c4.478 0 8.268 2.943 9.542 7c-1.274 4.057-5.064 7-9.542 7s-8.268-2.943-9.542-7"/></g>',pointer:'<path d="M15.042 21.672L13.684 16.6m0 0l-2.51 2.225l.569-9.47l5.227 7.917l-3.286-.672ZM12 2.25V4.5m5.834.166l-1.591 1.591M20.25 10.5H18M7.757 14.743l-1.59 1.59M6 10.5H3.75m4.007-4.243l-1.59-1.59"/>',send:'<path d="M6 12 3.269 3.126A59.768 59.768 0 0 1 21.485 12 59.77 59.77 0 0 1 3.27 20.876L5.999 12Zm0 0h7.5"/>',chart:'<path d="M9 19v-6a2 2 0 0 0-2-2H5a2 2 0 0 0-2 2v6a2 2 0 0 0 2 2h2a2 2 0 0 0 2-2m0 0V9a2 2 0 0 1 2-2h2a2 2 0 0 1 2 2v10m-6 0a2 2 0 0 0 2 2h2a2 2 0 0 0 2-2m0 0V5a2 2 0 0 1 2-2h2a2 2 0 0 1 2 2v14a2 2 0 0 1-2 2h-2a2 2 0 0 1-2-2"/>',"caret-down":'<path d="m19 9l-7 7l-7-7"/>',check:'<path d="m5 13l4 4L19 7"/>',remove:'<path d="m4.5 19.5l15-15m-15 0l15 15"/>',pause:'<path d="M8 5v14M16 5v14"/>',play:'<path d="M8 5.75v12.5L18 12 8 5.75Z"/>',stop:'<rect x="6.5" y="6.5" width="11" height="11" rx="2"/>',copy:'<path d="M8 7v8a2 2 0 0 0 2 2h6M8 7V5a2 2 0 0 1 2-2h4.586a1 1 0 0 1 .707.293l4.414 4.414a1 1 0 0 1 .293.707V15a2 2 0 0 1-2 2h-2M8 7H6a2 2 0 0 0-2 2v10a2 2 0 0 0 2 2h8a2 2 0 0 0 2-2v-2"/>',download:'<path d="M3 16.5v2.25A2.25 2.25 0 0 0 5.25 21h13.5A2.25 2.25 0 0 0 21 18.75V16.5M16.5 12L12 16.5m0 0L7.5 12m4.5 4.5V3"/>',message:'<path d="M8.625 9.75a.375.375 0 1 1-.75 0a.375.375 0 0 1 .75 0Zm0 0H8.25m4.125 0a.375.375 0 1 1-.75 0a.375.375 0 0 1 .75 0Zm0 0H12m4.125 0a.375.375 0 1 1-.75 0a.375.375 0 0 1 .75 0Zm0 0h-.375m-13.5 3.01c0 1.6 1.123 2.994 2.707 3.227c1.087.16 2.185.283 3.293.369V21l4.184-4.183a1.14 1.14 0 0 1 .778-.332a48.294 48.294 0 0 0 5.83-.498c1.585-.233 2.708-1.626 2.708-3.228V6.741c0-1.602-1.123-2.995-2.707-3.228A48.394 48.394 0 0 0 12 3c-2.392 0-4.744.175-7.043.513C3.373 3.746 2.25 5.14 2.25 6.741v6.018Z"/>',gear:'<g><path d="M9.594 3.94c.09-.542.56-.94 1.11-.94h2.593c.55 0 1.02.398 1.11.94l.213 1.281c.063.374.313.686.645.87c.074.04.147.083.22.127c.324.196.72.257 1.075.124l1.217-.456a1.125 1.125 0 0 1 1.37.49l1.296 2.247a1.125 1.125 0 0 1-.26 1.431l-1.003.827c-.293.24-.438.613-.431.992a6.759 6.759 0 0 1 0 .255c-.007.378.138.75.43.99l1.005.828c.424.35.534.954.26 1.43l-1.298 2.247a1.125 1.125 0 0 1-1.369.491l-1.217-.456c-.355-.133-.75-.072-1.076.124a6.57 6.57 0 0 1-.22.128c-.331.183-.581.495-.644.869l-.213 1.28c-.09.543-.56.941-1.11.941h-2.594c-.55 0-1.02-.398-1.11-.94l-.213-1.281c-.062-.374-.312-.686-.644-.87a6.52 6.52 0 0 1-.22-.127c-.325-.196-.72-.257-1.076-.124l-1.217.456a1.125 1.125 0 0 1-1.369-.49l-1.297-2.247a1.125 1.125 0 0 1 .26-1.431l1.004-.827c.292-.24.437-.613.43-.992a6.932 6.932 0 0 1 0-.255c.007-.378-.138-.75-.43-.99l-1.004-.828a1.125 1.125 0 0 1-.26-1.43l1.297-2.247a1.125 1.125 0 0 1 1.37-.491l1.216.456c.356.133.751.072 1.076-.124c.072-.044.146-.087.22-.128c.332-.183.582-.495.644-.869l.214-1.281Z"/><path d="M15 12a3 3 0 1 1-6 0a3 3 0 0 1 6 0Z"/></g>',layout:'<path d="M3.75 6A2.25 2.25 0 0 1 6 3.75h2.25A2.25 2.25 0 0 1 10.5 6v2.25a2.25 2.25 0 0 1-2.25 2.25H6a2.25 2.25 0 0 1-2.25-2.25V6Zm0 9.75A2.25 2.25 0 0 1 6 13.5h2.25a2.25 2.25 0 0 1 2.25 2.25V18a2.25 2.25 0 0 1-2.25 2.25H6A2.25 2.25 0 0 1 3.75 18v-2.25ZM13.5 6a2.25 2.25 0 0 1 2.25-2.25H18A2.25 2.25 0 0 1 20.25 6v2.25A2.25 2.25 0 0 1 18 10.5h-2.25a2.25 2.25 0 0 1-2.25-2.25V6Zm0 9.75a2.25 2.25 0 0 1 2.25-2.25H18a2.25 2.25 0 0 1 2.25 2.25V18A2.25 2.25 0 0 1 18 20.25h-2.25A2.25 2.25 0 0 1 13.5 18v-2.25Z"/>',notes:'<path d="M9 12h3.75M9 15h3.75M9 18h3.75m3 .75H18a2.25 2.25 0 0 0 2.25-2.25V6.108c0-1.135-.845-2.098-1.976-2.192a48.424 48.424 0 0 0-1.123-.08m-5.801 0c-.065.21-.1.433-.1.664c0 .414.336.75.75.75h4.5a.75.75 0 0 0 .75-.75a2.25 2.25 0 0 0-.1-.664m-5.8 0A2.251 2.251 0 0 1 13.5 2.25H15a2.25 2.25 0 0 1 2.15 1.586m-5.8 0c-.376.023-.75.05-1.124.08C9.095 4.01 8.25 4.973 8.25 6.108V8.25m0 0H4.875c-.621 0-1.125.504-1.125 1.125v11.25c0 .621.504 1.125 1.125 1.125h9.75c.621 0 1.125-.504 1.125-1.125V9.375c0-.621-.504-1.125-1.125-1.125H8.25ZM6.75 12h.008v.008H6.75V12Zm0 3h.008v.008H6.75V15Zm0 3h.008v.008H6.75V18Z"/>',trash:'<path d="m19 7l-.867 12.142A2 2 0 0 1 16.138 21H7.862a2 2 0 0 1-1.995-1.858L5 7m5 4v6m4-6v6m1-10V4a1 1 0 0 0-1-1h-4a1 1 0 0 0-1 1v3M4 7h16"/>',help:'<path d="M8.228 9c.549-1.165 2.03-2 3.772-2c2.21 0 4 1.343 4 3c0 1.4-1.278 2.575-3.006 2.907c-.542.104-.994.54-.994 1.093m0 3h.01M21 12a9 9 0 1 1-18 0a9 9 0 0 1 18 0"/>',"caret-right":'<path d="m9 5l7 7l-7 7"/>',annotate:'<path d="m16.862 4.487l1.687-1.688a1.875 1.875 0 1 1 2.652 2.652L10.582 16.07a4.5 4.5 0 0 1-1.897 1.13L6 18l.8-2.685a4.5 4.5 0 0 1 1.13-1.897l8.932-8.931Zm0 0L19.5 7.125M18 14v4.75A2.25 2.25 0 0 1 15.75 21H5.25A2.25 2.25 0 0 1 3 18.75V8.25A2.25 2.25 0 0 1 5.25 6H10"/>',sync:'<path d="M4.5 12c0-1.232.046-2.453.138-3.662a4.006 4.006 0 0 1 3.7-3.7a48.678 48.678 0 0 1 7.324 0a4.006 4.006 0 0 1 3.7 3.7c.017.22.032.441.046.662M4.5 12l-3-3m3 3l3-3m12 3c0 1.232-.046 2.453-.138 3.662a4.006 4.006 0 0 1-3.7 3.7a48.657 48.657 0 0 1-7.324 0a4.006 4.006 0 0 1-3.7-3.7c-.017-.22-.032-.441-.046-.662M19.5 12l-3 3m3-3l3 3"/>'},vh=YB,XB={chart:'<path fill="currentColor" d="M2 11a1 1 0 0 1 1-1h2a1 1 0 0 1 1 1v5a1 1 0 0 1-1 1H3a1 1 0 0 1-1-1zm6-4a1 1 0 0 1 1-1h2a1 1 0 0 1 1 1v9a1 1 0 0 1-1 1H9a1 1 0 0 1-1-1zm6-3a1 1 0 0 1 1-1h2a1 1 0 0 1 1 1v12a1 1 0 0 1-1 1h-2a1 1 0 0 1-1-1z"/>',annotate:'<path fill="currentColor" fill-rule="evenodd" d="m5.433 13.916l1.262-3.154a4 4 0 0 1 .885-1.343L14.5 2.5a2.121 2.121 0 1 1 3 3l-6.92 6.919c-.383.383-.84.684-1.343.885l-3.154 1.262a.5.5 0 0 1-.65-.65ZM2.5 5.75c0-.69.56-1.25 1.25-1.25H10A.75.75 0 0 0 10 3H3.75A2.75 2.75 0 0 0 1 5.75v10.5A2.75 2.75 0 0 0 3.75 19h10.5A2.75 2.75 0 0 0 17 16.25V10a.75.75 0 0 0-1.5 0v6.25c0 .69-.56 1.25-1.25 1.25H3.75c-.69 0-1.25-.56-1.25-1.25V5.75Z" clip-rule="evenodd"/>',message:'<path fill="currentColor" fill-rule="evenodd" d="M10 2c-2.236 0-4.43.18-6.57.524C1.993 2.755 1 4.014 1 5.426v5.148c0 1.413.993 2.67 2.43 2.902c.848.137 1.705.248 2.57.331v3.443a.75.75 0 0 0 1.28.53l3.58-3.579a.78.78 0 0 1 .527-.224a41.202 41.202 0 0 0 5.183-.5c1.437-.232 2.43-1.49 2.43-2.903V5.426c0-1.413-.993-2.67-2.43-2.902A41.289 41.289 0 0 0 10 2Zm0 7a1 1 0 1 0 0-2a1 1 0 0 0 0 2ZM8 8a1 1 0 1 1-2 0a1 1 0 0 1 2 0Zm5 1a1 1 0 1 0 0-2a1 1 0 0 0 0 2Z" clip-rule="evenodd"/>',view:'<g fill="currentColor"><path d="M10 12a2 2 0 1 0 0-4a2 2 0 0 0 0 4"/><path fill-rule="evenodd" d="M.458 10C1.732 5.943 5.522 3 10 3s8.268 2.943 9.542 7c-1.274 4.057-5.064 7-9.542 7S1.732 14.057.458 10M14 10a4 4 0 1 1-8 0a4 4 0 0 1 8 0" clip-rule="evenodd"/></g>',gear:'<path fill="currentColor" fill-rule="evenodd" d="M7.84 1.804A1 1 0 0 1 8.82 1h2.36a1 1 0 0 1 .98.804l.331 1.652a6.993 6.993 0 0 1 1.929 1.115l1.598-.54a1 1 0 0 1 1.186.447l1.18 2.044a1 1 0 0 1-.205 1.251l-1.267 1.113a7.047 7.047 0 0 1 0 2.228l1.267 1.113a1 1 0 0 1 .206 1.25l-1.18 2.045a1 1 0 0 1-1.187.447l-1.598-.54a6.993 6.993 0 0 1-1.929 1.115l-.33 1.652a1 1 0 0 1-.98.804H8.82a1 1 0 0 1-.98-.804l-.331-1.652a6.993 6.993 0 0 1-1.929-1.115l-1.598.54a1 1 0 0 1-1.186-.447l-1.18-2.044a1 1 0 0 1 .205-1.251l1.267-1.114a7.05 7.05 0 0 1 0-2.227L1.821 7.773a1 1 0 0 1-.206-1.25l1.18-2.045a1 1 0 0 1 1.187-.447l1.598.54a6.993 6.993 0 0 1 1.93-1.115l.33-1.652ZM10 13a3 3 0 1 0 0-6a3 3 0 0 0 0 6Z" clip-rule="evenodd"/>'},w0=XB});function qB(t,e){let n=`${t}:${String(e)}`,r=I0.get(n);if(r!==void 0)return document.importNode(r,!0);let o=vh[t];if(o===void 0)throw new Error(`missing heroicon body: ${String(t)}`);let a=new DOMParser().parseFromString(`<svg xmlns="${Au}" viewBox="${yu}" fill="none">${o}</svg>`,"image/svg+xml").documentElement,l=a instanceof SVGSVGElement?document.importNode(a,!0):document.createElementNS(Au,"svg");return l.setAttribute("viewBox",yu),l.setAttribute("width",String(e)),l.setAttribute("height",String(e)),l.setAttribute("fill","none"),a instanceof SVGSVGElement||(l.innerHTML=o),I0.set(n,l),document.importNode(l,!0)}function Qr(t,e=16){let n=document.createElement("span");return n.className="reticle-hi-icon",n.setAttribute("aria-hidden","true"),n.style.width=`${String(e)}px`,n.style.height=`${String(e)}px`,n.appendChild(qB(t,e)),n}function Qb(t,e,n=16){t.replaceChildren(Qr(e,n))}function Ee(t,e=16){let n=vh[t];if(n===void 0)throw new Error(`missing heroicon body: ${String(t)}`);return`<span class="reticle-hi-icon" aria-hidden="true" style="width:${String(e)}px;height:${String(e)}px"><svg xmlns="${Au}" viewBox="${yu}" width="${String(e)}" height="${String(e)}" fill="none">${n}</svg></span>`}function Rh(t,e=16){let n=vh[t],r=w0[t];if(n===void 0||r===void 0)throw new Error(`missing heroicon toggle pair: ${String(t)}`);let o=String(e);return`<span class="reticle-hi-toggle" aria-hidden="true" style="width:${o}px;height:${o}px"><span class="reticle-hi-icon reticle-hi-icon--outline" style="width:${o}px;height:${o}px"><svg xmlns="${Au}" viewBox="${yu}" width="${o}" height="${o}" fill="none">${n}</svg></span><span class="reticle-hi-icon reticle-hi-icon--solid" style="width:${o}px;height:${o}px"><svg xmlns="${Au}" viewBox="${yu}" width="${o}" height="${o}" fill="currentColor">${r}</svg></span></span>`}var Q,he,Au,yu,I0,Tr=S(()=>{"use strict";O0();Q={VIEW:"view",POINTER:"pointer",SEND:"send",CHART:"chart",CARET_DOWN:"caret-down",CHECK:"check",REMOVE:"remove",PAUSE:"pause",PLAY:"play",STOP:"stop",COPY:"copy",DOWNLOAD:"download",MESSAGE:"message",NOTES:"notes",GEAR:"gear",LAYOUT:"layout",TRASH:"trash",HELP:"help",CARET_RIGHT:"caret-right",ANNOTATE:"annotate",SYNC:"sync"},he={CHIP:11,LOG:11,TALLY:12,CTL:10,SEND:14,MIN:12,HELP:12,NAV:18,TOOLBAR:18,FAB:22},Au="http://www.w3.org/2000/svg",yu="0 0 24 24",I0=new Map});function vu(t){t.scrollTop=t.scrollHeight,t.toggleAttribute(iV,t.scrollHeight>t.clientHeight+1)}function U0(t){vu(t),requestAnimationFrame(()=>{vu(t),requestAnimationFrame(()=>vu(t))}),oe(()=>vu(t),oV)}function F0(t){return[...t.children].filter(e=>e.hasAttribute(Ih))}function Lh(t,e){let n=F0(t);for(let r of n.slice(0,Math.max(0,n.length-e)))r.remove()}function kh(t){for(let e of F0(t))e.remove()}function nT(t){return t===void 0||!Number.isFinite(t)||t<=0?ZB:Math.floor(t)}function Nu(t){let e=Math.max(0,Math.floor(t/1e3));if(e<60)return`${e}s`;let n=Math.floor(e/60);if(n<60)return e%60===0?`${n}m`:`${n}m ${e%60}s`;let r=Math.floor(n/60);return n%60===0?`${r}h`:`${r}h ${n%60}m`}function G0(t){return Nu(t)}function Dh(t,e,n,r,o,s=Jt.AGENT){var _,A,N;let a=e===ke.READ?sV(t,n,s):void 0;if(a!==void 0){let y=Number((_=a.getAttribute(k0))!=null?_:"1")+1;a.setAttribute(k0,String(y));let v=a.querySelector(`.${D0}`);v===null&&(v=document.createElement("span"),v.className=D0,(A=a.querySelector(`.${wh}`))==null||A.after(v)),v.textContent=`\xD7${String(y)}`;let O=a.querySelector(`[${Ru}]`);O!==null&&(O.textContent=r);let j=a.querySelector(`.${Ch}`);return j===null?{result:()=>{}}:M0(a,j)}let l=e===ke.ACT||e===ke.READ;if(l&&((N=t.getAttribute(Oh))!=null?N:Jt.AGENT)!==s){let y=document.createElement("div");y.setAttribute(Ih,""),y.setAttribute(eT,nV),y.setAttribute(Jb,s);let v=document.createElement("span");v.className=wh,v.textContent=tV[s],y.appendChild(v),t.appendChild(y)}l&&t.setAttribute(Oh,s);let d=document.createElement("div");d.setAttribute(Ih,""),d.setAttribute(eT,e),d.setAttribute(Jb,s),e===ke.ACT&&d.setAttribute($0,"running");let u=document.createElement("span");u.setAttribute(Ru,""),u.textContent=r;let p=[];e!==ke.HUMAN&&p.push(u);let h=QB[e],m=JB[e];if(h.length>0||m!==void 0){let y=document.createElement("span");if(y.className=rV,y.setAttribute("data-mode",eV[e]),m!==void 0&&y.appendChild(Qr(m,he.LOG)),h.length>0){let v=document.createElement("span");v.className="reticle-chip-label",v.textContent=h,y.appendChild(v)}p.push(y)}let g=document.createElement("span");g.className=wh,g.textContent=n;let T=document.createElement("span");return T.className=Ch,p.push(g),e!==ke.HUMAN&&p.push(T),d.append(...p),t.appendChild(d),Lh(t,o),requestAnimationFrame(()=>{vu(t)}),M0(d,T)}function sV(t,e,n){var o;let r=t.lastElementChild;if(!(!(r instanceof HTMLElement)||!r.hasAttribute(Ih))&&!(r.getAttribute(eT)!==ke.READ||r.getAttribute(Jb)!==n))return((o=r.querySelector(`.${wh}`))==null?void 0:o.textContent)===e?r:void 0}function M0(t,e){return{result:n=>{if(t.setAttribute($0,n),n===Nn.PASS){e.textContent=C0.pass,e.className=`${Ch} ${L0.pass}`;return}e.textContent=` ${C0[n]}`,e.className=`${Ch} ${L0[n]}`}}}var ZB,QB,JB,P0,eV,C0,tV,Oh,Jb,$0,nV,L0,tT,Ih,Ru,eT,wh,k0,D0,Ch,rV,Nh,oV,H0,iV,Ko=S(()=>{"use strict";D();kb();dt();Tr();ZB=50,QB={read:"READ",act:"ACT",narration:"",human:""},JB={read:Q.VIEW,act:Q.POINTER},P0={[We.IDLE]:"",[We.READING]:"READING",[We.ACTING]:"ACTING"},eV={read:We.READING,act:We.ACTING,narration:We.IDLE,human:We.IDLE},C0={pass:"\u2713",fail:"Fail"},tV={agent:"Your agent is driving",harness:"Reticle Harness is driving"},Oh="data-reticle-log-actor",Jb="data-actor",$0="data-state",nV="handover",L0={pass:"reticle-pass",fail:"reticle-fail"},tT="data-reticle-log",Ih="data-reticle-log-row",Ru="data-reticle-log-time",eT="data-kind",wh="reticle-log-text",k0="data-reticle-repeat",D0="reticle-log-repeat",Ch="reticle-res",rV="reticle-chip",Nh={TITLE:"Reticle checks your app from the inside.",OFFLINE_TITLE:"Not connected yet.",OFFLINE_BODY:"Once Reticle is running, this page connects by itself and the steps show here.",BODY:"Ask your coding agent to verify a change with Reticle: each step shows here, live.\\AOr open Harness below: Reticle clicks through the app as the person you pick and reports what breaks."},oV=160,H0=`
74
74
  [data-reticle-log]{flex:1;min-height:0;overflow-y:auto;overscroll-behavior:contain;pointer-events:auto;touch-action:pan-y;
75
75
  display:flex;flex-direction:column;
76
76
  gap:4px;padding:8px 10px 10px;scrollbar-width:thin;scrollbar-color:rgba(255,255,255,.16) transparent;
77
77
  background:transparent;}
78
78
  [data-reticle-log]:empty{align-items:center;justify-content:center;gap:6px;padding:16px 18px;}
79
- [data-reticle-log]:empty::before{content:"${Pf.TITLE}";display:block;text-align:center;
79
+ [data-reticle-log]:empty::before{content:"${Nh.TITLE}";display:block;text-align:center;
80
80
  color:var(--reticle-hud-text);font-size:var(--reticle-hud-size-base);font-weight:600;line-height:1.4;}
81
- [data-reticle-log]:empty::after{content:"${Pf.BODY}";display:block;max-width:260px;text-align:center;white-space:pre-line;
81
+ [data-reticle-log]:empty::after{content:"${Nh.BODY}";display:block;max-width:260px;text-align:center;white-space:pre-line;
82
82
  color:var(--reticle-hud-text-muted);font-size:var(--reticle-hud-size-sm);line-height:1.5;}
83
- [data-reticle-state="unreachable"] [data-reticle-log]:empty::before{content:"${Pf.OFFLINE_TITLE}";}
84
- [data-reticle-state="unreachable"] [data-reticle-log]:empty::after{content:"${Pf.OFFLINE_BODY}";}
83
+ [data-reticle-state="unreachable"] [data-reticle-log]:empty::before{content:"${Nh.OFFLINE_TITLE}";}
84
+ [data-reticle-state="unreachable"] [data-reticle-log]:empty::after{content:"${Nh.OFFLINE_BODY}";}
85
85
  [data-reticle-log]::-webkit-scrollbar{width:8px;}
86
86
  [data-reticle-log]::-webkit-scrollbar-thumb{background:rgba(255,255,255,.14);border-radius:8px;border:2px solid transparent;background-clip:content-box;}
87
87
  [data-reticle-log]::-webkit-scrollbar-thumb:hover{background:rgba(255,255,255,.26);background-clip:content-box;}
@@ -104,7 +104,7 @@ ${ge("pop")} button[data-send]:disabled{opacity:.4;cursor:not-allowed;}
104
104
  [data-reticle-log] [data-reticle-log-row] .reticle-chip-label{
105
105
  position:absolute;width:1px;height:1px;margin:-1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap;}
106
106
  [data-reticle-log] [data-reticle-log-row][data-kind="read"] .reticle-chip{opacity:.5;}
107
- [${Zd}]{flex:none;color:var(--reticle-faint);font-size:11px;font-variant-numeric:tabular-nums;padding-top:2px;min-width:2em;opacity:.85;}
107
+ [${Ru}]{flex:none;color:var(--reticle-faint);font-size:11px;font-variant-numeric:tabular-nums;padding-top:2px;min-width:2em;opacity:.85;}
108
108
  [data-reticle-log] .reticle-log-text{flex:1;min-width:0;color:var(--reticle-muted);overflow-wrap:anywhere;word-break:break-word;}
109
109
  [data-reticle-log] .reticle-log-repeat{flex:none;color:var(--reticle-muted);font-variant-numeric:tabular-nums;opacity:.7;}
110
110
  [data-reticle-log] .reticle-res{flex:none;font-size:7.5px;font-weight:600;letter-spacing:.05em;text-transform:uppercase;color:var(--reticle-bad);opacity:.75;padding-top:2px;}
@@ -135,21 +135,21 @@ ${ge("pop")} button[data-send]:disabled{opacity:.4;cursor:not-allowed;}
135
135
  /* What the Harness or the daemon says about a drive reads as a notice, not an aside. */
136
136
  [data-reticle-log-row][data-kind="narration"]{font-style:normal;color:var(--reticle-fg);margin:4px 0;padding:7px 10px;
137
137
  border-radius:10px;background:rgba(255,255,255,.05);border:1px solid rgba(255,255,255,.08);}
138
- `;uU="data-reticle-log-scrollable"});function Sw(t,e=typeof navigator=="undefined"?void 0:navigator){return t!==void 0?t:(e==null?void 0:e.webdriver)===!0?0:fU}var Ma,bw,Jd,Tw,jf,fU,pr,_w,xw,Aw,fr,yw,vw,Rw,Oo,Si,Wt,Kf,nb,ke,ot,D,Nw,Wf,zt,Io,_i,Nt,vc,zf,Yf,Xf,qf,ww,Zf,rb,un,w,ob,gt,Ye,eu,I,ib,Rc,ab,Qf,Ow,tu,Iw,Nc,Jf,Gr,Cw,eh,th,nh,sb,rh,Lw,kw,cb,ut=S(()=>{"use strict";Lr();Ma={SESSION:"session",BUSY:"busy"},bw=Ma.SESSION,Jd="data-busy",Tw="1",jf="0",fU=450;pr={IDLE:"idle",BUSY:"busy",FADING:"fading"},_w=700,xw=1e3,Aw=4e3,fr={READY:"Ready",PLANNING_PREFIX:"planning next action \xB7 ",STOPPED:"stopped",STOPPED_PREFIX:"stopped \xB7 ",NOW:"now",SINCE_LAST:" since last action",harnessTesting:t=>`Testing \xB7 Harness \xB7 ${String(t)} step${t===1?"":"s"}`},yw=3e5,vw=5e3,Rw=250,Oo="1",Si="0",Wt="data-on",Kf="data-reticle-state",nb="unreachable",ke="data-reticle-min",ot="data-reticle-chat",D="data-reticle-dock",Nw="data-reticle-fab",Wf="data-reticle-chat-toggle",zt="data-reticle-chat-panel",Io="data-reticle-chat-placement",_i="data-reticle-settings-placement",Nt="data-reticle-dock-align",vc={ABOVE:"above",BELOW:"below"},zf="data-reticle-markers-btn",Yf="data-reticle-clear-marks",Xf="data-reticle-copy-marks",qf="data-reticle-marks-row",ww="data-reticle-mark-count",Zf="data-reticle-annotate-btn",rb="data-reticle-chat-min",un="data-reticle-report",w="data-reticle-report-panel",ob="data-reticle-report-close",gt="data-reticle-chat-pill",Ye="data-reticle-settings",eu="data-reticle-settings-btn",I="data-reticle-settings-panel",ib="data-reticle-settings-close",Rc="data-reticle-setting",ab=st.PRESENTER_SETTINGS,Qf=st.PRESENTER_MINIMISED,Ow="data-reticle-ambient-glow",tu="data-reticle-live",Iw="data-reticle-block",Nc="data-reticle-hidden",Jf="data-reticle-log-ts",Gr="data-reticle-reduce-motion",Cw="https://github.com/reticlehq/reticle/blob/main/docs/getting-started.md",eh="data-dragged",th="--reticle-hud-x",nh="--reticle-hud-y",sb=4,rh=8,Lw="[data-reticle-pause], [data-reticle-annotate-btn], [data-reticle-markers-btn], [data-reticle-clear-marks], [data-reticle-copy-marks], [data-reticle-end], [data-reticle-min-btn], [data-reticle-settings-btn], [data-reticle-settings-panel], [data-reticle-report-btn], [data-reticle-report-panel], [data-reticle-chat-panel], [data-reticle-chat-toggle], [data-reticle-workspace-btn], [data-reticle-workspace-menu], [data-reticle-copy], [data-reticle-export], .reticle-toolbar-chrome button, .reticle-toolbar-actions button, input, textarea, select, a, .reticle-head-ctl, [data-reticle-tally], .reticle-maxhint",kw="data-reticle-throttled",cb=100});var An,lb,nu,hr,wc,Dw,oh,Mw,mr=S(()=>{"use strict";An="reticle-hud-surface",lb="linear-gradient(165deg,#121218 0%,#09090c 42%,#000 100%)",nu=`background:${lb};box-shadow:inset 0 1px 0 rgba(255,255,255,.09),0 0 0 1px rgba(255,255,255,.09);`,hr="0 16px 40px rgba(0,0,0,.58),0 0 0 1px rgba(255,255,255,.08)",wc=["background:radial-gradient(130% 80% at 50% 0%,color-mix(in srgb,var(--reticle-c-active) 20%,transparent),transparent 62%),","linear-gradient(180deg,#121a2e,#080b14);","border:1px solid color-mix(in srgb,var(--reticle-c-active) 30%,rgba(255,255,255,.1));",`box-shadow:${hr},0 0 64px -12px color-mix(in srgb,var(--reticle-c-active) 75%,transparent);`].join(""),Dw=`
139
- .${An}{
138
+ `;iV="data-reticle-log-scrollable"});function j0(t,e=typeof navigator=="undefined"?void 0:navigator){return t!==void 0?t:(e==null?void 0:e.webdriver)===!0?0:aV}var ta,B0,wu,V0,Mh,aV,Sr,K0,W0,z0,_r,Y0,X0,q0,Wo,$i,tn,Ph,rT,Me,ut,M,Z0,$h,nn,zo,Hi,Ht,jc,Hh,Uh,Fh,Gh,Q0,Bh,oT,gn,$,iT,yt,Qe,Ou,C,sT,Kc,aT,Vh,jh,J0,Iu,eI,Wc,Kh,Jr,tI,Wh,zh,Yh,cT,Xh,nI,rI,lT,Et=S(()=>{"use strict";Kr();ta={SESSION:"session",BUSY:"busy"},B0=ta.SESSION,wu="data-busy",V0="1",Mh="0",aV=450;Sr={IDLE:"idle",BUSY:"busy",FADING:"fading"},K0=700,W0=1e3,z0=4e3,_r={READY:"Ready",PLANNING_PREFIX:"planning next action \xB7 ",STOPPED:"stopped",STOPPED_PREFIX:"stopped \xB7 ",NOW:"now",SINCE_LAST:" since last action",harnessTesting:t=>`Testing \xB7 Harness \xB7 ${String(t)} step${t===1?"":"s"}`},Y0=3e5,X0=5e3,q0=250,Wo="1",$i="0",tn="data-on",Ph="data-reticle-state",rT="unreachable",Me="data-reticle-min",ut="data-reticle-chat",M="data-reticle-dock",Z0="data-reticle-fab",$h="data-reticle-chat-toggle",nn="data-reticle-chat-panel",zo="data-reticle-chat-placement",Hi="data-reticle-settings-placement",Ht="data-reticle-dock-align",jc={ABOVE:"above",BELOW:"below"},Hh="data-reticle-markers-btn",Uh="data-reticle-clear-marks",Fh="data-reticle-copy-marks",Gh="data-reticle-marks-row",Q0="data-reticle-mark-count",Bh="data-reticle-annotate-btn",oT="data-reticle-chat-min",gn="data-reticle-report",$="data-reticle-report-panel",iT="data-reticle-report-close",yt="data-reticle-chat-pill",Qe="data-reticle-settings",Ou="data-reticle-settings-btn",C="data-reticle-settings-panel",sT="data-reticle-settings-close",Kc="data-reticle-setting",aT=ct.PRESENTER_SETTINGS,Vh=ct.PRESENTER_MINIMISED,jh=ct.PRESENTER_OPEN,J0="data-reticle-ambient-glow",Iu="data-reticle-live",eI="data-reticle-block",Wc="data-reticle-hidden",Kh="data-reticle-log-ts",Jr="data-reticle-reduce-motion",tI="https://github.com/reticlehq/reticle/blob/main/docs/getting-started.md",Wh="data-dragged",zh="--reticle-hud-x",Yh="--reticle-hud-y",cT=4,Xh=8,nI="[data-reticle-pause], [data-reticle-annotate-btn], [data-reticle-markers-btn], [data-reticle-clear-marks], [data-reticle-copy-marks], [data-reticle-end], [data-reticle-min-btn], [data-reticle-settings-btn], [data-reticle-settings-panel], [data-reticle-report-btn], [data-reticle-report-panel], [data-reticle-chat-panel], [data-reticle-chat-toggle], [data-reticle-workspace-btn], [data-reticle-workspace-menu], [data-reticle-copy], [data-reticle-export], .reticle-toolbar-chrome button, .reticle-toolbar-actions button, input, textarea, select, a, .reticle-head-ctl, [data-reticle-tally], .reticle-maxhint",rI="data-reticle-throttled",lT=100});var Cn,dT,Cu,xr,zc,oI,qh,iI,Ar=S(()=>{"use strict";Cn="reticle-hud-surface",dT="linear-gradient(165deg,#121218 0%,#09090c 42%,#000 100%)",Cu=`background:${dT};box-shadow:inset 0 1px 0 rgba(255,255,255,.09),0 0 0 1px rgba(255,255,255,.09);`,xr="0 16px 40px rgba(0,0,0,.58),0 0 0 1px rgba(255,255,255,.08)",zc=["background:radial-gradient(130% 80% at 50% 0%,color-mix(in srgb,var(--reticle-c-active) 20%,transparent),transparent 62%),","linear-gradient(180deg,#121a2e,#080b14);","border:1px solid color-mix(in srgb,var(--reticle-c-active) 30%,rgba(255,255,255,.1));",`box-shadow:${xr},0 0 64px -12px color-mix(in srgb,var(--reticle-c-active) 75%,transparent);`].join(""),oI=`
139
+ .${Cn}{
140
140
  position:relative;overflow:hidden;
141
141
  contain:layout style paint;
142
- ${nu}
142
+ ${Cu}
143
143
  }
144
- .${An}::before,
144
+ .${Cn}::before,
145
145
  [data-reticle-hud] .reticle-hud-deco::after{
146
146
  content:"";position:absolute;inset:0;pointer-events:none;border-radius:inherit;z-index:1;
147
147
  background:
148
148
  radial-gradient(ellipse 120% 70% at 50% -18%,rgba(255,255,255,.07),transparent 52%),
149
149
  linear-gradient(180deg,rgba(255,255,255,.035) 0%,transparent 36%,rgba(0,0,0,.12) 100%);
150
150
  }
151
- .${An} > *{position:relative;z-index:2;}`,oh="reticle-hud-log-well",Mw=`
152
- .${oh}{
151
+ .${Cn} > *{position:relative;z-index:2;}`,qh="reticle-hud-log-well",iI=`
152
+ .${qh}{
153
153
  /* A settled height, but still allowed to shrink: pinned with flex:none it pushed the composer
154
154
  off the bottom of the panel the moment the rest of the content grew. */
155
155
  /* A flex column, so the feed inside actually FILLS the height: as a plain block the log was only
@@ -159,241 +159,241 @@ ${ge("pop")} button[data-send]:disabled{opacity:.4;cursor:not-allowed;}
159
159
  flex:1 1 auto;height:240px;min-height:120px;max-height:300px;overflow:hidden;
160
160
  contain:layout style paint;
161
161
  margin:0 6px;border-radius:12px;background:transparent;}
162
- .${oh} > *{position:relative;z-index:1;}`});function Oc(t){return t.getAttribute(eh)==="1"}function Ic(t,e,n,r,o,a,s=rh){let l=s,d=s,u=Math.max(l,o-n-s),p=Math.max(d,a-r-s);return{left:Math.max(l,Math.min(t,u)),top:Math.max(d,Math.min(e,p))}}function xi(t,e,n){t.setAttribute(eh,"1"),t.style.setProperty(th,`${String(e)}px`),t.style.setProperty(nh,`${String(n)}px`)}function ru(t){t.removeAttribute(eh),t.style.removeProperty(th),t.style.removeProperty(nh)}function Cc(t){let e=t.getBoundingClientRect();return{left:e.left,top:e.top,width:e.width,height:e.height}}function ih(t){let e=t.style.getPropertyValue(th),n=t.style.getPropertyValue(nh);if(e!==""&&n!=="")return{left:Number.parseFloat(e),top:Number.parseFloat(n)};let r=t.getBoundingClientRect();return{left:r.left,top:r.top}}function ou(t){if(!Oc(t))return;let{left:e,top:n}=ih(t),{width:r,height:o}=Cc(t),a=Ic(e,n,r,o,window.innerWidth,window.innerHeight);xi(t,a.left,a.top)}var iu=S(()=>{"use strict";ut()});function EU(t){var a,s,l,d,u,p,f,m;if(t.length===0)return;let e=(s=(a=t[0])==null?void 0:a.left)!=null?s:0,n=(d=(l=t[0])==null?void 0:l.top)!=null?d:0,r=(p=(u=t[0])==null?void 0:u.right)!=null?p:0,o=(m=(f=t[0])==null?void 0:f.bottom)!=null?m:0;for(let g of t.slice(1))e=Math.min(e,g.left),n=Math.min(n,g.top),r=Math.max(r,g.right),o=Math.max(o,g.bottom);return{left:e,top:n,right:r,bottom:o}}function Gw(t,e,n){return t>=n?vc.ABOVE:e>=n?vc.BELOW:e>t?vc.BELOW:vc.ABOVE}function Bw(t,e,n,r){let o=vc.ABOVE===t?e-r:n-r;return Math.max(0,o)}function Vw(t,e,n){let r=`${String(n)}px`;t.style.setProperty(e,r),t.style.maxHeight=r}function jw(t,e){t.style.removeProperty(e),t.style.removeProperty("max-height")}function ah(t){if(t===null)return!1;let e=window.getComputedStyle(t);return e.display!=="none"&&e.visibility!=="hidden"}function bU(t){let e=t.querySelector(`[${$w}]`);if(e instanceof HTMLElement)return e;if(t.hasAttribute($w)||Oc(t))return t}function Kw(t,e){let n=bU(t);if(n===void 0)return;let r=e.getAttribute(ot)==="1",o=e.getAttribute(Ye)==="1",a=t.querySelector(`[${zt}]`),s=t.querySelector(`[${I}]`),l=rh,d=window.innerWidth,u=window.innerHeight,p=n.getBoundingClientRect(),f=p.top-l,m=u-p.bottom-l;if(r&&a instanceof HTMLElement&&ah(a)){let B=a.getBoundingClientRect().height||Uw,oe=Gw(f,m,B+Pw);t.setAttribute(Io,oe);let ce=Math.min(Uw,Math.max(mU,Bw(oe,f,m,Pw)));Vw(a,"--reticle-chat-max-h",ce)}else t.removeAttribute(Io),a instanceof HTMLElement&&jw(a,"--reticle-chat-max-h");if(o&&s instanceof HTMLElement&&ah(s)){let B=s.getBoundingClientRect().height||Fw,oe=Gw(f,m,B+hU+Hw);t.setAttribute(_i,oe);let ce=Math.min(Fw,Math.max(gU,Bw(oe,f,m,Hw)));Vw(s,"--reticle-settings-max-h",ce)}else t.removeAttribute(_i),s instanceof HTMLElement&&jw(s,"--reticle-settings-max-h");let g=Math.max(r&&a instanceof HTMLElement?a.getBoundingClientRect().width:0,o&&s instanceof HTMLElement?s.getBoundingClientRect().width:0);if(r||o){let B=p.right-g,oe=p.left+g;B<l||p.left<l?t.setAttribute(Nt,"start"):oe>d-l||p.right>d-l?t.setAttribute(Nt,"end"):t.setAttribute(Nt,"end")}else t.removeAttribute(Nt);if(!r&&!o){Oc(t)&&ou(t);return}let T=[p];r&&a instanceof HTMLElement&&ah(a)&&T.push(a.getBoundingClientRect()),o&&s instanceof HTMLElement&&ah(s)&&T.push(s.getBoundingClientRect());let _=EU(T);if(_===void 0)return;let y=0,A=0;if(_.left<l?y=l-_.left:_.right>d-l&&(y=d-l-_.right),_.top<l?A=l-_.top:_.bottom>u-l&&(A=u-l-_.bottom),y===0&&A===0)return;let v=t.getBoundingClientRect(),O=Oc(t)?ih(t):{left:v.left,top:v.top};xi(t,O.left+y,O.top+A)}function gr(t,e){sh!==void 0&&cancelAnimationFrame(sh),sh=requestAnimationFrame(()=>{sh=void 0,Kw(t,e),requestAnimationFrame(()=>Kw(t,e))})}function Ww(t){let e=t.querySelector(`[${D}]`);return e instanceof HTMLElement?e:void 0}var $w,Pw,Hw,hU,mU,Uw,Fw,gU,sh,au=S(()=>{"use strict";ut();iu();$w="data-reticle-hud",Pw=8,Hw=12,hU=44,mU=160,Uw=440,Fw=520,gU=200});function Yw(t,e){var u,p;let n=()=>{gr(t,e)},r=new AbortController,{signal:o}=r,a=()=>n();window.addEventListener("resize",a,{signal:o});let s;typeof ResizeObserver!="undefined"&&(s=new ResizeObserver(()=>n()),s.observe(t));let l=new MutationObserver(()=>n());l.observe(e,{attributes:!0,attributeFilter:[ke,ot,Ye]});let d=()=>n();return(u=window.visualViewport)==null||u.addEventListener("resize",d,{signal:o}),(p=window.visualViewport)==null||p.addEventListener("scroll",d,{signal:o}),()=>{r.abort(),s==null||s.disconnect(),l.disconnect()}}function TU(t,e,n={}){let r=!1,o=0,a=0,s=0,l=0,d=!1,u,p=()=>{var O;let v=d;if(r=!1,e.classList.remove(zw),u=void 0,d=!1,v){let B=t.parentElement;B instanceof HTMLElement?gr(t,B):ou(t)}(O=n.onDragEnd)==null||O.call(n,v)},f=v=>{if(v.button!==0)return;let O=v.target;if(!(O instanceof Element)||O.closest(Lw)!==null)return;let B=t.getBoundingClientRect();o=v.clientX,a=v.clientY,s=B.left,l=B.top,r=!0,d=!1,u=v.pointerId,e.classList.add(zw),typeof e.setPointerCapture=="function"&&e.setPointerCapture(v.pointerId),v.preventDefault()},m=v=>{var he;if(!r||v.pointerId!==u)return;let O=v.clientX-o,B=v.clientY-a;if(!d&&Math.abs(O)<sb&&Math.abs(B)<sb)return;d=!0,(he=n.onDragMove)==null||he.call(n);let oe=Cc(t),ce=Ic(s+O,l+B,oe.width,oe.height,window.innerWidth,window.innerHeight);xi(t,ce.left,ce.top),v.preventDefault()},g=v=>{typeof e.releasePointerCapture=="function"&&e.releasePointerCapture(v)},T=v=>{!r||v.pointerId!==u||(d&&v.preventDefault(),g(v.pointerId),p())},_=v=>{!r||v.pointerId!==u||(g(v.pointerId),p())},y=new AbortController,{signal:A}=y;return e.addEventListener("pointerdown",f,{signal:A}),e.addEventListener("pointermove",m,{signal:A}),e.addEventListener("pointerup",T,{signal:A}),e.addEventListener("pointercancel",_,{signal:A}),()=>{y.abort(),r&&g(u!=null?u:0),p()}}function Xw(t,e,n={}){let r=e.map(o=>TU(t,o,n));return()=>{for(let o of r)o()}}var zw,db=S(()=>{"use strict";ut();au();iu();iu();zw="reticle-drag-handle--dragging"});var ch,ub=S(()=>{"use strict";ut();mr();ch=`
163
- [data-reticle-overlay][${Ye}="1"] [data-reticle-chat-panel]{
162
+ .${qh} > *{position:relative;z-index:1;}`});function Yc(t){return t.getAttribute(Wh)==="1"}function Xc(t,e,n,r,o,s,a=Xh){let l=a,d=a,u=Math.max(l,o-n-a),p=Math.max(d,s-r-a);return{left:Math.max(l,Math.min(t,u)),top:Math.max(d,Math.min(e,p))}}function Ui(t,e,n){t.setAttribute(Wh,"1"),t.style.setProperty(zh,`${String(e)}px`),t.style.setProperty(Yh,`${String(n)}px`)}function Lu(t){t.removeAttribute(Wh),t.style.removeProperty(zh),t.style.removeProperty(Yh)}function qc(t){let e=t.getBoundingClientRect();return{left:e.left,top:e.top,width:e.width,height:e.height}}function Zh(t){let e=t.style.getPropertyValue(zh),n=t.style.getPropertyValue(Yh);if(e!==""&&n!=="")return{left:Number.parseFloat(e),top:Number.parseFloat(n)};let r=t.getBoundingClientRect();return{left:r.left,top:r.top}}function ku(t){if(!Yc(t))return;let{left:e,top:n}=Zh(t),{width:r,height:o}=qc(t),s=Xc(e,n,r,o,window.innerWidth,window.innerHeight);Ui(t,s.left,s.top)}var Du=S(()=>{"use strict";Et()});function uV(t){var s,a,l,d,u,p,h,m;if(t.length===0)return;let e=(a=(s=t[0])==null?void 0:s.left)!=null?a:0,n=(d=(l=t[0])==null?void 0:l.top)!=null?d:0,r=(p=(u=t[0])==null?void 0:u.right)!=null?p:0,o=(m=(h=t[0])==null?void 0:h.bottom)!=null?m:0;for(let g of t.slice(1))e=Math.min(e,g.left),n=Math.min(n,g.top),r=Math.max(r,g.right),o=Math.max(o,g.bottom);return{left:e,top:n,right:r,bottom:o}}function uI(t,e,n){return t>=n?jc.ABOVE:e>=n?jc.BELOW:e>t?jc.BELOW:jc.ABOVE}function pI(t,e,n,r){let o=jc.ABOVE===t?e-r:n-r;return Math.max(0,o)}function fI(t,e,n){let r=`${String(n)}px`;t.style.setProperty(e,r),t.style.maxHeight=r}function hI(t,e){t.style.removeProperty(e),t.style.removeProperty("max-height")}function Qh(t){if(t===null)return!1;let e=window.getComputedStyle(t);return e.display!=="none"&&e.visibility!=="hidden"}function pV(t){let e=t.querySelector(`[${sI}]`);if(e instanceof HTMLElement)return e;if(t.hasAttribute(sI)||Yc(t))return t}function mI(t,e){let n=pV(t);if(n===void 0)return;let r=e.getAttribute(ut)==="1",o=e.getAttribute(Qe)==="1",s=t.querySelector(`[${nn}]`),a=t.querySelector(`[${C}]`),l=Xh,d=window.innerWidth,u=window.innerHeight,p=n.getBoundingClientRect(),h=p.top-l,m=u-p.bottom-l;if(r&&s instanceof HTMLElement&&Qh(s)){let O=s.getBoundingClientRect().height||lI,j=uI(h,m,O+aI);t.setAttribute(zo,j);let Y=Math.min(lI,Math.max(lV,pI(j,h,m,aI)));fI(s,"--reticle-chat-max-h",Y)}else t.removeAttribute(zo),s instanceof HTMLElement&&hI(s,"--reticle-chat-max-h");if(o&&a instanceof HTMLElement&&Qh(a)){let O=a.getBoundingClientRect().height||dI,j=uI(h,m,O+cV+cI);t.setAttribute(Hi,j);let Y=Math.min(dI,Math.max(dV,pI(j,h,m,cI)));fI(a,"--reticle-settings-max-h",Y)}else t.removeAttribute(Hi),a instanceof HTMLElement&&hI(a,"--reticle-settings-max-h");let g=Math.max(r&&s instanceof HTMLElement?s.getBoundingClientRect().width:0,o&&a instanceof HTMLElement?a.getBoundingClientRect().width:0);if(r||o){let O=p.right-g,j=p.left+g;O<l||p.left<l?t.setAttribute(Ht,"start"):j>d-l||p.right>d-l?t.setAttribute(Ht,"end"):t.setAttribute(Ht,"end")}else t.removeAttribute(Ht);if(!r&&!o){Yc(t)&&ku(t);return}let T=[p];r&&s instanceof HTMLElement&&Qh(s)&&T.push(s.getBoundingClientRect()),o&&a instanceof HTMLElement&&Qh(a)&&T.push(a.getBoundingClientRect());let _=uV(T);if(_===void 0)return;let A=0,N=0;if(_.left<l?A=l-_.left:_.right>d-l&&(A=d-l-_.right),_.top<l?N=l-_.top:_.bottom>u-l&&(N=u-l-_.bottom),A===0&&N===0)return;let y=t.getBoundingClientRect(),v=Yc(t)?Zh(t):{left:y.left,top:y.top};Ui(t,v.left+A,v.top+N)}function yr(t,e){Jh!==void 0&&cancelAnimationFrame(Jh),Jh=requestAnimationFrame(()=>{Jh=void 0,mI(t,e),requestAnimationFrame(()=>mI(t,e))})}function gI(t){let e=t.querySelector(`[${M}]`);return e instanceof HTMLElement?e:void 0}var sI,aI,cI,cV,lV,lI,dI,dV,Jh,Mu=S(()=>{"use strict";Et();Du();sI="data-reticle-hud",aI=8,cI=12,cV=44,lV=160,lI=440,dI=520,dV=200});function bI(t,e){var u,p;let n=()=>{yr(t,e)},r=new AbortController,{signal:o}=r,s=()=>n();window.addEventListener("resize",s,{signal:o});let a;typeof ResizeObserver!="undefined"&&(a=new ResizeObserver(()=>n()),a.observe(t));let l=new MutationObserver(()=>n());l.observe(e,{attributes:!0,attributeFilter:[Me,ut,Qe]});let d=()=>n();return(u=window.visualViewport)==null||u.addEventListener("resize",d,{signal:o}),(p=window.visualViewport)==null||p.addEventListener("scroll",d,{signal:o}),()=>{r.abort(),a==null||a.disconnect(),l.disconnect()}}function fV(t,e,n={}){let r=!1,o=0,s=0,a=0,l=0,d=!1,u,p=()=>{var v;let y=d;if(r=!1,e.classList.remove(EI),u=void 0,d=!1,y){let O=t.parentElement;O instanceof HTMLElement?yr(t,O):ku(t)}(v=n.onDragEnd)==null||v.call(n,y)},h=y=>{if(y.button!==0)return;let v=y.target;if(!(v instanceof Element)||v.closest(nI)!==null)return;let O=t.getBoundingClientRect();o=y.clientX,s=y.clientY,a=O.left,l=O.top,r=!0,d=!1,u=y.pointerId,e.classList.add(EI),typeof e.setPointerCapture=="function"&&e.setPointerCapture(y.pointerId),y.preventDefault()},m=y=>{var te;if(!r||y.pointerId!==u)return;let v=y.clientX-o,O=y.clientY-s;if(!d&&Math.abs(v)<cT&&Math.abs(O)<cT)return;d=!0,(te=n.onDragMove)==null||te.call(n);let j=qc(t),Y=Xc(a+v,l+O,j.width,j.height,window.innerWidth,window.innerHeight);Ui(t,Y.left,Y.top),y.preventDefault()},g=y=>{typeof e.releasePointerCapture=="function"&&e.releasePointerCapture(y)},T=y=>{!r||y.pointerId!==u||(d&&y.preventDefault(),g(y.pointerId),p())},_=y=>{!r||y.pointerId!==u||(g(y.pointerId),p())},A=new AbortController,{signal:N}=A;return e.addEventListener("pointerdown",h,{signal:N}),e.addEventListener("pointermove",m,{signal:N}),e.addEventListener("pointerup",T,{signal:N}),e.addEventListener("pointercancel",_,{signal:N}),()=>{A.abort(),r&&g(u!=null?u:0),p()}}function TI(t,e,n={}){let r=e.map(o=>fV(t,o,n));return()=>{for(let o of r)o()}}var EI,uT=S(()=>{"use strict";Et();Mu();Du();Du();EI="reticle-drag-handle--dragging"});var em,pT=S(()=>{"use strict";Et();Ar();em=`
163
+ [data-reticle-overlay][${Qe}="1"] [data-reticle-chat-panel]{
164
164
  display:none !important;visibility:hidden !important;pointer-events:none !important;}
165
- [${I}]{
165
+ [${C}]{
166
166
  position:absolute;right:0;left:auto;top:auto;bottom:calc(100% + 12px);z-index:30;
167
167
  box-sizing:border-box;display:flex;flex-direction:column;width:272px;min-height:0;
168
168
  max-width:min(272px,calc(100vw - 16px));
169
169
  max-height:min(var(--reticle-settings-max-h,78vh),calc(100vh - 96px));
170
170
  padding:0;border:none;border-radius:16px;overflow:hidden;
171
- box-shadow:${hr};
171
+ box-shadow:${xr};
172
172
  color:var(--reticle-fg);font-size:13px;line-height:1.35;
173
173
  opacity:0;pointer-events:none;visibility:hidden;touch-action:manipulation;
174
174
  transform:translate3d(0,6px,0) scale(.98);
175
175
  transition:opacity .14s ease,transform .18s cubic-bezier(.22,1,.36,1),visibility .14s;
176
- contain:none;isolation:isolate;${nu}}
177
- [${D}][${_i}="below"] [${I}]{
176
+ contain:none;isolation:isolate;${Cu}}
177
+ [${M}][${Hi}="below"] [${C}]{
178
178
  bottom:auto;top:calc(100% + 12px);}
179
- [${D}][${Nt}="start"] [${I}]{
179
+ [${M}][${Ht}="start"] [${C}]{
180
180
  right:auto;left:0;}
181
- [${D}][${_i}="below"] [${I}].${An}::after{
181
+ [${M}][${Hi}="below"] [${C}].${Cn}::after{
182
182
  top:auto;bottom:100%;margin-top:0;margin-bottom:-4px;box-shadow:-1px -1px 0 0 rgba(255,255,255,.08);}
183
- [${D}][${Nt}="start"] [${I}].${An}::after{
183
+ [${M}][${Ht}="start"] [${C}].${Cn}::after{
184
184
  right:auto;left:14px;}
185
- [data-reticle-overlay][${Ye}="1"] [${I}]{
185
+ [data-reticle-overlay][${Qe}="1"] [${C}]{
186
186
  opacity:1;pointer-events:auto;visibility:visible;transform:translate3d(0,0,0) scale(1);}
187
- [${I}] .reticle-settings-inner{
187
+ [${C}] .reticle-settings-inner{
188
188
  position:relative;z-index:2;display:grid;grid-template-rows:auto minmax(0,1fr) auto;
189
189
  flex:1 1 auto;min-height:0;max-height:100%;overflow:hidden;}
190
- [${I}] .reticle-settings-head{
190
+ [${C}] .reticle-settings-head{
191
191
  display:flex;flex-shrink:0;align-items:center;justify-content:space-between;gap:8px;
192
192
  padding:12px 14px 8px;border-bottom:1px solid rgba(255,255,255,.06);}
193
- [${I}] .reticle-settings-title{
193
+ [${C}] .reticle-settings-title{
194
194
  font-size:12px;font-weight:600;letter-spacing:.06em;text-transform:uppercase;color:rgba(255,255,255,.45);}
195
- [${I}].${An}::after{
195
+ [${C}].${Cn}::after{
196
196
  content:"";position:absolute;top:100%;right:14px;width:8px;height:8px;margin-top:-4px;
197
197
  background:#000;transform:rotate(45deg);box-shadow:1px 1px 0 0 rgba(255,255,255,.08);z-index:0;pointer-events:none;}
198
- [${I}] .reticle-settings-close{
198
+ [${C}] .reticle-settings-close{
199
199
  position:relative;top:auto;right:auto;z-index:1;
200
200
  display:inline-flex;align-items:center;justify-content:center;
201
201
  width:24px;height:24px;padding:0;border:none;border-radius:999px;cursor:pointer;
202
202
  background:rgba(255,255,255,.06);color:var(--reticle-muted);line-height:0;
203
203
  transition:background .15s,color .15s,transform .1s;}
204
- [${I}] .reticle-settings-close:hover{background:rgba(255,255,255,.12);color:var(--reticle-fg);}
205
- [${I}] .reticle-settings-close:active{transform:scale(.94);}
206
- [${I}] .reticle-settings-close:focus-visible{outline:2px solid rgba(59,130,246,.65);outline-offset:1px;}
207
- [${I}] .reticle-settings-body{
204
+ [${C}] .reticle-settings-close:hover{background:rgba(255,255,255,.12);color:var(--reticle-fg);}
205
+ [${C}] .reticle-settings-close:active{transform:scale(.94);}
206
+ [${C}] .reticle-settings-close:focus-visible{outline:2px solid rgba(59,130,246,.65);outline-offset:1px;}
207
+ [${C}] .reticle-settings-body{
208
208
  min-height:0;padding:6px 0 4px;overflow-x:hidden;overflow-y:auto;
209
209
  overscroll-behavior:contain;-webkit-overflow-scrolling:touch;
210
210
  scrollbar-width:thin;scrollbar-color:rgba(255,255,255,.14) transparent;
211
211
  background:linear-gradient(180deg,#0a0a0e 0%,#000 100%);}
212
- [${I}] .reticle-settings-body::-webkit-scrollbar{width:8px;}
213
- [${I}] .reticle-settings-body::-webkit-scrollbar-thumb{
212
+ [${C}] .reticle-settings-body::-webkit-scrollbar{width:8px;}
213
+ [${C}] .reticle-settings-body::-webkit-scrollbar-thumb{
214
214
  background:rgba(255,255,255,.14);border-radius:8px;border:2px solid transparent;background-clip:content-box;}
215
- [${I}] .reticle-settings-row{
215
+ [${C}] .reticle-settings-row{
216
216
  display:flex;align-items:center;justify-content:space-between;gap:12px;
217
217
  padding:8px 14px;min-height:30px;}
218
- [${I}] .reticle-settings-labelcol{display:flex;flex:1;min-width:0;flex-direction:column;gap:2px;}
219
- [${I}] .reticle-settings-label{
218
+ [${C}] .reticle-settings-labelcol{display:flex;flex:1;min-width:0;flex-direction:column;gap:2px;}
219
+ [${C}] .reticle-settings-label{
220
220
  display:inline-flex;align-items:center;gap:6px;color:rgba(255,255,255,.86);font-size:13px;font-weight:500;}
221
- [${I}] .reticle-settings-desc{color:rgba(255,255,255,.5);font-size:11px;line-height:1.35;}
222
- [${I}] .reticle-settings-help{
221
+ [${C}] .reticle-settings-desc{color:rgba(255,255,255,.5);font-size:11px;line-height:1.35;}
222
+ [${C}] .reticle-settings-help{
223
223
  display:inline-flex;align-items:center;justify-content:center;
224
224
  width:14px;height:14px;border:none;border-radius:999px;padding:0;cursor:help;
225
225
  background:transparent;color:rgba(255,255,255,.35);line-height:0;flex:none;}
226
- [${I}] .reticle-settings-help:hover{color:rgba(255,255,255,.75);}
227
- [${I}] .reticle-settings-help:focus-visible{outline:2px solid rgba(59,130,246,.55);outline-offset:1px;}
228
- [${I}] .reticle-settings-cycle{
226
+ [${C}] .reticle-settings-help:hover{color:rgba(255,255,255,.75);}
227
+ [${C}] .reticle-settings-help:focus-visible{outline:2px solid rgba(59,130,246,.55);outline-offset:1px;}
228
+ [${C}] .reticle-settings-cycle{
229
229
  display:inline-flex;align-items:center;gap:8px;border:none;border-radius:8px;cursor:pointer;
230
230
  background:rgba(255,255,255,.08);color:#fff;font:inherit;font-size:12px;font-weight:600;
231
231
  padding:5px 8px 5px 10px;transition:background .15s,transform .1s;}
232
- [${I}] .reticle-settings-cycle:hover{background:rgba(255,255,255,.12);}
233
- [${I}] .reticle-settings-cycle:active{transform:scale(.97);}
234
- [${I}] .reticle-settings-cycle:focus-visible{outline:2px solid rgba(59,130,246,.55);outline-offset:1px;}
235
- [${I}] .reticle-settings-dots{display:inline-flex;flex-direction:column;gap:2px;}
236
- [${I}] .reticle-settings-dot{
232
+ [${C}] .reticle-settings-cycle:hover{background:rgba(255,255,255,.12);}
233
+ [${C}] .reticle-settings-cycle:active{transform:scale(.97);}
234
+ [${C}] .reticle-settings-cycle:focus-visible{outline:2px solid rgba(59,130,246,.55);outline-offset:1px;}
235
+ [${C}] .reticle-settings-dots{display:inline-flex;flex-direction:column;gap:2px;}
236
+ [${C}] .reticle-settings-dot{
237
237
  width:3px;height:3px;border-radius:999px;background:rgba(255,255,255,.22);}
238
- [${I}] .reticle-settings-dot[data-on="1"]{background:var(--reticle-accent);}
239
- [${I}] .reticle-settings-toggle{
238
+ [${C}] .reticle-settings-dot[data-on="1"]{background:var(--reticle-accent);}
239
+ [${C}] .reticle-settings-toggle{
240
240
  position:relative;width:28px;height:18px;border:none;border-radius:999px;cursor:pointer;padding:0;flex:none;
241
241
  background:rgba(255,255,255,.16);transition:background .15s ease,box-shadow .15s ease;}
242
- [${I}] .reticle-settings-toggle[data-on="1"]{background:var(--reticle-accent);}
243
- [${I}] .reticle-settings-toggle::after{
242
+ [${C}] .reticle-settings-toggle[data-on="1"]{background:var(--reticle-accent);}
243
+ [${C}] .reticle-settings-toggle::after{
244
244
  content:"";position:absolute;top:2px;left:2px;width:14px;height:14px;border-radius:50%;
245
245
  background:#fafafa;box-shadow:0 1px 2px rgba(0,0,0,.35);transition:transform .15s ease;}
246
- [${I}] .reticle-settings-toggle[data-on="1"]::after{transform:translateX(10px);}
247
- [${I}] .reticle-settings-toggle:focus-visible{outline:2px solid rgba(59,130,246,.55);outline-offset:2px;}
248
- [${I}] .reticle-settings-row[data-disabled="1"]{opacity:.45;pointer-events:none;}
249
- [${I}] .reticle-settings-section{
246
+ [${C}] .reticle-settings-toggle[data-on="1"]::after{transform:translateX(10px);}
247
+ [${C}] .reticle-settings-toggle:focus-visible{outline:2px solid rgba(59,130,246,.55);outline-offset:2px;}
248
+ [${C}] .reticle-settings-row[data-disabled="1"]{opacity:.45;pointer-events:none;}
249
+ [${C}] .reticle-settings-section{
250
250
  padding:10px 14px 6px;color:rgba(255,255,255,.38);font-size:11px;font-weight:600;letter-spacing:.08em;text-transform:uppercase;}
251
- [${I}] .reticle-settings-swatches{
251
+ [${C}] .reticle-settings-swatches{
252
252
  display:flex;gap:8px;flex-wrap:wrap;padding:0 14px 10px;}
253
- [${I}] .reticle-settings-swatch{
253
+ [${C}] .reticle-settings-swatch{
254
254
  width:24px;height:24px;border-radius:999px;padding:0;cursor:pointer;
255
255
  border:2px solid transparent;background-clip:padding-box;
256
256
  box-shadow:inset 0 0 0 1px rgba(0,0,0,.25);transition:transform .12s,border-color .12s;}
257
- [${I}] .reticle-settings-swatch:hover{transform:scale(1.06);}
258
- [${I}] .reticle-settings-swatch[data-on="1"]{
257
+ [${C}] .reticle-settings-swatch:hover{transform:scale(1.06);}
258
+ [${C}] .reticle-settings-swatch[data-on="1"]{
259
259
  border-color:#fff;box-shadow:0 0 0 1px rgba(0,0,0,.35);}
260
- [${I}] .reticle-settings-swatch:focus-visible{outline:2px solid rgba(59,130,246,.65);outline-offset:2px;}
261
- [${I}] .reticle-settings-checkrow{
260
+ [${C}] .reticle-settings-swatch:focus-visible{outline:2px solid rgba(59,130,246,.65);outline-offset:2px;}
261
+ [${C}] .reticle-settings-checkrow{
262
262
  display:flex;align-items:center;gap:10px;padding:7px 14px;color:rgba(255,255,255,.86);font-size:13px;
263
263
  cursor:pointer;user-select:none;margin:0;transition:background .12s;}
264
- [${I}] .reticle-settings-checkrow:hover{background:rgba(255,255,255,.03);}
265
- [${I}] .reticle-settings-check{
264
+ [${C}] .reticle-settings-checkrow:hover{background:rgba(255,255,255,.03);}
265
+ [${C}] .reticle-settings-check{
266
266
  width:16px;height:16px;border-radius:5px;border:1px solid rgba(255,255,255,.22);
267
267
  background:rgba(255,255,255,.04);display:inline-flex;align-items:center;justify-content:center;
268
268
  color:transparent;font-size:11px;line-height:1;flex:none;transition:background .12s,border-color .12s,color .12s;}
269
- [${I}] .reticle-settings-check[data-on="1"]{
269
+ [${C}] .reticle-settings-check[data-on="1"]{
270
270
  background:#fafafa;border-color:#fafafa;color:#111;}
271
- [${I}] .reticle-settings-check:focus-visible{outline:2px solid rgba(59,130,246,.55);outline-offset:2px;}
272
- [${I}] .reticle-settings-foot{
271
+ [${C}] .reticle-settings-check:focus-visible{outline:2px solid rgba(59,130,246,.55);outline-offset:2px;}
272
+ [${C}] .reticle-settings-foot{
273
273
  flex-shrink:0;margin-top:2px;border-top:1px solid rgba(255,255,255,.08);
274
274
  display:flex;flex-direction:column;gap:0;background:#000;}
275
- [${I}] .reticle-settings-reset{
275
+ [${C}] .reticle-settings-reset{
276
276
  width:100%;display:flex;align-items:center;justify-content:center;gap:6px;
277
277
  border:none;background:rgba(255,255,255,.04);color:rgba(255,255,255,.78);font:inherit;font-size:12px;font-weight:600;
278
278
  padding:10px 14px;cursor:pointer;text-align:center;transition:background .12s,color .12s;}
279
- [${I}] .reticle-settings-reset:hover{background:rgba(255,255,255,.08);color:#fff;}
280
- [${I}] .reticle-settings-reset:focus-visible{outline:2px solid rgba(59,130,246,.55);outline-offset:-2px;}
281
- [${I}] .reticle-settings-link{
279
+ [${C}] .reticle-settings-reset:hover{background:rgba(255,255,255,.08);color:#fff;}
280
+ [${C}] .reticle-settings-reset:focus-visible{outline:2px solid rgba(59,130,246,.55);outline-offset:-2px;}
281
+ [${C}] .reticle-settings-link{
282
282
  width:100%;display:flex;align-items:center;justify-content:space-between;gap:8px;
283
283
  border:none;background:transparent;color:rgba(255,255,255,.82);font:inherit;font-size:13px;
284
284
  padding:11px 14px;cursor:pointer;text-align:left;transition:background .12s,color .12s;
285
285
  text-decoration:none;box-sizing:border-box;}
286
- [${I}] .reticle-settings-link-caret{display:inline-flex;align-items:center;flex:none;opacity:.55;}
287
- [${I}] .reticle-settings-link:hover{background:rgba(255,255,255,.04);color:#fff;}
288
- [${I}] .reticle-settings-link:focus-visible{outline:2px solid rgba(59,130,246,.55);outline-offset:-2px;}
289
- [${I}] .reticle-settings-kill-row{padding:12px 14px 14px;border-top:1px solid rgba(255,255,255,.08);}
290
- [${I}] .reticle-settings-kill{
286
+ [${C}] .reticle-settings-link-caret{display:inline-flex;align-items:center;flex:none;opacity:.55;}
287
+ [${C}] .reticle-settings-link:hover{background:rgba(255,255,255,.04);color:#fff;}
288
+ [${C}] .reticle-settings-link:focus-visible{outline:2px solid rgba(59,130,246,.55);outline-offset:-2px;}
289
+ [${C}] .reticle-settings-kill-row{padding:12px 14px 14px;border-top:1px solid rgba(255,255,255,.08);}
290
+ [${C}] .reticle-settings-kill{
291
291
  width:100%;display:flex;align-items:center;justify-content:center;
292
292
  border:1px solid rgba(239,68,68,.55);border-radius:8px;background:rgba(239,68,68,.12);color:#f87171;
293
293
  font:inherit;font-size:13px;font-weight:600;padding:8px 12px;cursor:pointer;
294
294
  transition:background .12s,border-color .12s,color .12s;}
295
- [${I}] .reticle-settings-kill:hover{background:rgba(239,68,68,.22);border-color:#ef4444;color:#fca5a5;}
296
- [${I}] .reticle-settings-kill[data-armed="1"]{background:#ef4444;border-color:#ef4444;color:#fff;}
297
- [${I}] .reticle-settings-kill:focus-visible{outline:2px solid rgba(239,68,68,.6);outline-offset:2px;}
298
- [${I}] .reticle-settings-kill-sub{margin:8px 0 0;font-size:11px;line-height:1.45;color:rgba(255,255,255,.55);}
295
+ [${C}] .reticle-settings-kill:hover{background:rgba(239,68,68,.22);border-color:#ef4444;color:#fca5a5;}
296
+ [${C}] .reticle-settings-kill[data-armed="1"]{background:#ef4444;border-color:#ef4444;color:#fff;}
297
+ [${C}] .reticle-settings-kill:focus-visible{outline:2px solid rgba(239,68,68,.6);outline-offset:2px;}
298
+ [${C}] .reticle-settings-kill-sub{margin:8px 0 0;font-size:11px;line-height:1.45;color:rgba(255,255,255,.55);}
299
299
  /* The SDK version line sits straight in the foot, so it takes the rows' inset rather than none. */
300
- [${I}] .reticle-settings-foot > .reticle-settings-kill-sub{padding:0 14px;}
301
- [data-reticle-overlay][${Ye}="1"] [data-reticle-hud] .reticle-tb-tip{
300
+ [${C}] .reticle-settings-foot > .reticle-settings-kill-sub{padding:0 14px;}
301
+ [data-reticle-overlay][${Qe}="1"] [data-reticle-hud] .reticle-tb-tip{
302
302
  opacity:0;visibility:hidden;transition-delay:0s;}
303
303
  /* The dock's accent IS the theme's active colour, published as --reticle-accent on the overlay by
304
304
  applyPresenterSettings. It used to be a seventh independent picker with its own attribute. */
305
305
  [data-reticle-dock]{--reticle-accent-soft:color-mix(in srgb,var(--reticle-accent) 18%,transparent);}
306
306
  /* One chip per theme: three bands (active, idle, ended) over the theme's name. */
307
- [${I}] .reticle-settings-themes{
307
+ [${C}] .reticle-settings-themes{
308
308
  display:grid;grid-template-columns:repeat(auto-fit,minmax(72px,1fr));gap:8px;padding:4px 14px 12px;}
309
- [${I}] .reticle-settings-theme{
309
+ [${C}] .reticle-settings-theme{
310
310
  display:flex;flex-direction:column;align-items:stretch;gap:0;padding:0;overflow:hidden;
311
311
  border:1px solid rgba(255,255,255,.12);border-radius:10px;background:rgba(255,255,255,.03);
312
312
  cursor:pointer;transition:border-color .15s ease,background .15s ease;}
313
- [${I}] .reticle-settings-theme:hover{background:rgba(255,255,255,.07);}
314
- [${I}] .reticle-settings-theme[data-on="1"]{
313
+ [${C}] .reticle-settings-theme:hover{background:rgba(255,255,255,.07);}
314
+ [${C}] .reticle-settings-theme[data-on="1"]{
315
315
  border-color:#fff;background:rgba(255,255,255,.1);}
316
- [${I}] .reticle-settings-theme-band{display:block;height:6px;}
317
- [${I}] .reticle-settings-theme-band:first-of-type{height:10px;}
318
- [${I}] .reticle-settings-theme-name{
316
+ [${C}] .reticle-settings-theme-band{display:block;height:6px;}
317
+ [${C}] .reticle-settings-theme-band:first-of-type{height:10px;}
318
+ [${C}] .reticle-settings-theme-name{
319
319
  display:block;padding:5px 6px 6px;color:rgba(255,255,255,.78);font-size:11px;text-align:center;}
320
320
  [data-reticle-blocker]{
321
321
  position:fixed;inset:0;z-index:1;background:rgba(0,0,0,.16);pointer-events:auto;}
322
322
  [data-reticle-overlay][data-reticle-block="0"] [data-reticle-blocker]{
323
323
  display:none;pointer-events:none;}
324
- [data-reticle-overlay][data-reticle-hidden="1"] [${D}],
325
- [data-reticle-overlay][data-reticle-hidden="1"] [${I}]{display:none !important;}
324
+ [data-reticle-overlay][data-reticle-hidden="1"] [${M}],
325
+ [data-reticle-overlay][data-reticle-hidden="1"] [${C}]{display:none !important;}
326
326
 
327
- `});function Zw(t){return su!=null||(su=new Set([...SU,...Object.entries(_U).flatMap(([e,n])=>n.map(r=>`${e}.${r}`))])),su.has(t)}var SU,qw,_U,su,Qw=S(()=>{"use strict";SU=["fab","pause","chat-toggle","markers-btn","end","clear-marks","copy-marks","copy","export","annotate-btn","report-btn","settings-btn","min-btn","chat-min","chat-pill","chat-impact","copy-all-notes","promo-link","replay","carousel-dot","carousel-prev","carousel-next","carousel-close","page-close","team-open","team-save","talk-book","account-signin","account-trigger","account-signout","account-dashboard","sync-now","report-scope","report-close","share-x","share-in","share-copy","refer","settings-close","settings-help","settings-reset","settings-mcp","settings-kill","feedback-email","feedback-call","workspace-btn","workspace-copy","mark-cancel","mark-send","harness-switch","harness-run","harness-stop","harness-open","harness-toggle","harness-link","harness-copy-prompt","agent-copy","defects-all","plan-close","plan-journey"],qw=["setting","check","settings-cycle","theme","tour-target","link","annotation-tab","chat-view-btn"],_U={setting:["autoOpenChat","showTimestamps","showTally","reactComponents","hideUntilRestart","harnessEnabled","reduceMotion","ambientGlow"],check:["blockPageInteractions","clearOnCopy"],"settings-cycle":["outputDetail"],theme:["signal","traffic","mono","neon","ember"],"tour-target":["copy","back","done","next","skip"],link:["docs","github","site","discord","defect","dashboard"],"annotation-tab":["current","history"],"chat-view-btn":["activity","flows","annotations","harness"]}});function vU(t){try{let e=new URL(t);return e.protocol!=="https:"?!1:xU.has(e.hostname)?!0:AU===e.hostname&&e.pathname.startsWith(yU)}catch{return!1}}var xU,AU,yU,pb,RU,yq,Jw=S(()=>{"use strict";ne();xU=new Set(["reticle.sh","www.reticle.sh","app.reticle.sh","docs.reticle.sh"]),AU="github.com",yU="/reticlehq/";pb=i.object({id:i.string().regex(/^[a-z0-9-]{1,48}$/),kicker:i.string().min(1).max(40).optional(),title:i.string().min(1).max(80),detail:i.string().min(1).max(120).optional(),cta:i.object({label:i.string().min(1).max(24),url:i.string().refine(vU)}).optional()}),RU=i.object({signedIn:i.boolean().optional(),entitled:i.boolean().optional()}),yq=pb.extend({audience:RU.optional(),from:i.string().optional(),until:i.string().optional(),minSdk:i.string().optional(),weight:i.number().optional()})});function Ai(t){return t!==void 0&&t.used>=t.limit}function o0(t){let e=`${$a(Math.max(0,t.limit-t.used))} of ${$a(t.limit)}`;return nt.FREE===t.kind?`${e} free credits`:nt.TRIAL===t.kind?`${e} trial credits`:`${e} credits left`}function hb(t){let e=t.kind===void 0?void 0:NU[t.kind],n=Math.max(0,t.limit-t.used),r=t.daysLeft===void 0?"":` \xB7 ${String(t.daysLeft)} day${t.daysLeft===1?"":"s"} left`;return`${e===void 0?"":`${e}: `}${$a(t.used)} of ${$a(t.limit)} credits used \xB7 ${$a(n)} left${r}`}function lh(t){return nt.FREE===t.kind?{said:`Your ${$a(t.limit)} free credits are used.`,action:`Add a card to start your ${String(fb)}-day trial`}:nt.TRIAL===t.kind?{said:`Your ${$a(t.limit)} trial credits are used. Pro starts when your trial ends.`}:{said:"This month's credits are used. They renew over the next 30 days."}}var fb,e0,t0,n0,r0,$a,NU,i0=S(()=>{"use strict";_g();fb=14,e0=10,t0=500,n0=`Sign up: ${String(e0)} free credits to try Reticle Harness \xB7 add a card for a ${String(t0)}-credit, ${String(fb)}-day trial`,r0=`a card starts a ${String(fb)}-day trial with ${String(t0)} Harness credits; without one, ${String(e0)} sign-up credits`,$a=t=>t.toLocaleString("en-US",{maximumFractionDigits:2});NU={[nt.FREE]:"Free",[nt.TRIAL]:"Trial"}});var Lc=S(()=>{"use strict";Qw();Jw();i0()});function Z(t){return t.replace(/&/g,"&amp;").replace(/</g,"&lt;").replace(/>/g,"&gt;").replace(/"/g,"&quot;")}function Co(t){try{let e=new URL(t).protocol;return e==="https:"||e==="http:"}catch{return!1}}var Pa=S(()=>{"use strict"});function cu(t,e){let n=document.createElement("template");n.innerHTML=e,a0(t,n.content)}function a0(t,e){let n=[...t.childNodes],r=[...e.childNodes];r.forEach((o,a)=>{let s=n[a];s===void 0?t.appendChild(o):s.nodeType===o.nodeType&&s.nodeName===o.nodeName?wU(s,o):t.replaceChild(o,s)});for(let o of n.slice(r.length))t.removeChild(o)}function wU(t,e){if(!(t instanceof Element)||!(e instanceof Element)){t.nodeValue!==e.nodeValue&&(t.nodeValue=e.nodeValue);return}for(let{name:n}of[...t.attributes])e.hasAttribute(n)||t.removeAttribute(n);for(let{name:n,value:r}of[...e.attributes])t.getAttribute(n)!==r&&t.setAttribute(n,r);a0(t,e)}var mb=S(()=>{"use strict"});function c0(t){let n=(t!=null?t:"").trim().split(/[\s._-]+/).filter(r=>r.length>0).slice(0,2).map(r=>{var o;return(o=[...r][0])!=null?o:""}).join("");return n.length>0?n.toUpperCase():te.AVATAR_FALLBACK}function Dc(t,e={},n=!1){var l;if(t===void 0)return"";if(!t.signedIn)return n?`<div class="reticle-account" ${s0}><button type="button" class="reticle-account-signin" ${wt} title="${te.SIGNIN_TITLE}" aria-label="${te.SIGNIN_TITLE}">${te.SIGNED_OUT}</button></div>`:"";let r=(l=t.org)!=null?l:"",o=r.length>0?Z(r):te.SIGNED_IN_AS,a=`<span class="reticle-account-avatar" aria-hidden="true">${Z(c0(t.org))}</span>`,s=`<button type="button" class="reticle-account-trigger" ${uh} aria-haspopup="true" aria-expanded="false" title="${te.TRIGGER_TITLE}" aria-label="${te.TRIGGER_TITLE}: ${o}">${a}</button>`;return`<div class="reticle-account" ${s0}>${s}${LU(t,e)}</div>`}function Lo(t,e){return e===void 0||e.length===0?"":`<div class="reticle-account-row"><span class="reticle-account-k">${Z(t)}</span><span class="reticle-account-v" title="${Z(e)}">${Z(e)}</span></div>`}function LU(t,e){var d,u;let n=(d=t.org)!=null?d:"",r=`<div class="reticle-account-head"><span class="reticle-account-avatar reticle-account-avatar--lg" aria-hidden="true">${Z(c0(t.org))}</span><span class="reticle-account-who"><span class="reticle-account-org">${n.length>0?Z(n):te.SIGNED_IN_AS}</span>`+(t.email!==void 0&&t.email.length>0?`<span class="reticle-account-email" title="${Z(t.email)}">${Z(t.email)}</span>`:n.length>0?`<span class="reticle-account-email">${te.SIGNED_IN_AS}</span>`:"")+"</span></div>",o=Lo(te.HOST_LABEL,t.host)+Lo(te.PROJECT_LABEL,e.projectName)+Lo(te.VERDICTS_LABEL,e.verdicts!==void 0?String(e.verdicts):void 0)+Lo(te.DEFECTS_LABEL,e.defects!==void 0?String(e.defects):void 0)+Lo(te.ON_PLATFORM_LABEL,e.onPlatform)+Lo(te.PLAN_LABEL,e.plan)+Lo(te.CREDITS_LABEL,e.credits)+Lo(te.HARNESS_RUNS_LABEL,e.harnessRuns)+Lo(te.MEMORY_LABEL,e.memory),s=e.dashboardUrl!==void 0&&Co(e.dashboardUrl)?`<a class="reticle-account-action" data-reticle-account-dashboard href="${Z((u=e.dashboardUrl)!=null?u:"")}" target="_blank" rel="noreferrer noopener" title="${te.DASHBOARD_TITLE}">${Ee(Y.VIEW,pe.HELP)}<span>${te.DASHBOARD_ACTION}</span></a>`:`<button type="button" class="reticle-account-action reticle-account-action--hint" ${wt} data-reticle-copy="${te.LINK_COMMAND}" title="${te.LINK_HINT}"><span>${te.LINK_HINT}</span></button>`,l=`<button type="button" class="reticle-account-action" ${OU} data-reticle-copy="${te.SIGNOUT_COMMAND}" title="${te.SIGNOUT_TITLE}"><span>${te.SIGNOUT_ACTION}</span></button>`;return`<div class="reticle-account-menu" ${yi} role="menu" aria-label="${te.MENU_LABEL}" aria-hidden="true" hidden>`+r+(o.length>0?`<div class="reticle-account-rows">${o}</div>`:"")+`<div class="reticle-account-actions">${s}${l}</div></div>`}function l0(t,e){let n=t==null?void 0:t.plan,r=e==null?void 0:e.onPlatform;return{...n===void 0?{}:{plan:[kU[n.kind],n.daysLeft===void 0?"":`${gb(n.daysLeft,"day","days")} left`,n.seats===void 0?"":gb(n.seats,"seat","seats")].filter(o=>o.length>0).join(" \xB7 ")},...(t==null?void 0:t.credits)===void 0?{}:{credits:`${Math.max(0,t.credits.limit-t.credits.used).toLocaleString("en-US")} of ${t.credits.limit.toLocaleString("en-US")} left`},...(t==null?void 0:t.harnessRuns)===void 0?{}:{harnessRuns:String(t.harnessRuns)},...(t==null?void 0:t.memoryEntries)===void 0?{}:{memory:gb(t.memoryEntries,"entry","entries")},...typeof r=="number"?{onPlatform:String(r)}:{}}}function d0(t,e){return t===void 0||!t.signedIn?"":e!==void 0&&Co(e)?`<a ${IU} class="reticle-team-link" href="${Z(e)}" target="_blank" rel="noreferrer noopener" title="${Z(dh.OPEN_TITLE)}">${dh.OPEN}</a>`:`<button type="button" ${lu} class="reticle-team-link" title="${Z(dh.SAVE_TITLE)}"><span>${dh.SAVE_LINK}</span></button>`}function du(t,e){var o;let n=t.querySelector(`[${yi}]:not([hidden])`)!==null;if(cu(t,e),!n)return;let r=t.querySelector(`[${yi}]`);r!==null&&(r.removeAttribute("hidden"),r.setAttribute("aria-hidden","false"),(o=t.querySelector(`[${uh}]`))==null||o.setAttribute("aria-expanded","true"))}function bb(t){return t===void 0||!Co(t)?"":`<button type="button" class="reticle-sync-now" ${Eb} title="${te.SYNC_TITLE}" aria-label="${te.SYNC_TITLE}">${Ee(Y.SYNC,pe.HELP)}</button>`}function u0(t,e){let n=new AbortController,{signal:r}=n,o=l=>{for(let d of t.querySelectorAll(`[${yi}]`))d!==l&&(d.setAttribute("hidden",""),d.setAttribute("aria-hidden","true"));for(let d of t.querySelectorAll(`[${uh}]`))l!==void 0&&d.parentElement===l.parentElement||d.setAttribute("aria-expanded","false")},a=(l,d)=>{var f;let u=(f=l.querySelector("span"))!=null?f:l,p=u.textContent;u.textContent=d,setTimeout(()=>{u.textContent=p},CU)},s=async(l,d)=>{try{if(navigator.clipboard===void 0)throw new Error("Clipboard unavailable");await navigator.clipboard.writeText(l),a(d,te.COPIED)}catch{a(d,l===te.SIGNOUT_COMMAND?te.SIGNOUT_COPY_FAILED:`Run ${l} in terminal`)}};return t.addEventListener("click",l=>{var m,g;let d=l.target;if(!(d instanceof Element))return;let u=d.closest(`[${uh}]`);if(u instanceof HTMLElement){l.preventDefault(),l.stopPropagation();let T=(m=u.parentElement)==null?void 0:m.querySelector(`[${yi}]`);if(!(T instanceof HTMLElement))return;let _=!T.hasAttribute("hidden");if(o(),_)return;T.removeAttribute("hidden"),T.setAttribute("aria-hidden","false"),u.setAttribute("aria-expanded","true");return}let p=d.closest("[data-reticle-copy]");if(p instanceof HTMLElement){l.preventDefault(),l.stopPropagation();let T=(g=p.getAttribute("data-reticle-copy"))!=null?g:"";T.length>0&&s(T,p);return}let f=d.closest(`[${wt}]`);if(f instanceof HTMLElement){l.preventDefault(),l.stopPropagation(),e==null||e(),s(te.SIGNIN_COMMAND,f);return}o()},{signal:r}),document.addEventListener("pointerdown",l=>{let d=l.target;d instanceof Node&&t.contains(d)||o()},{signal:r}),document.addEventListener("keydown",l=>{l.key!=="Escape"||t.querySelector(`[${yi}]:not([hidden])`)===null||(l.stopPropagation(),o())},{signal:r}),()=>n.abort()}var s0,wt,Eb,uh,yi,OU,IU,lu,kc,dh,te,CU,kU,gb,Br=S(()=>{"use strict";H();Lc();ur();Pa();mb();s0="data-reticle-account",wt="data-reticle-account-signin",Eb="data-reticle-sync-now",uh="data-reticle-account-trigger",yi="data-reticle-account-menu",OU="data-reticle-account-signout",IU="data-reticle-team-open",lu="data-reticle-team-save",kc="data-reticle-team",dh={OPEN:"Open on dashboard \u2197",OPEN_TITLE:"This project's runs, kept for your team on the Reticle dashboard",SAVE_LINK:"Save runs for your team",SAVE_TITLE:`Keep every run, flow and Harness result on a dashboard your team shares. On Reticle, ${r0}.`},te={SIGNED_OUT:"Sign in",SIGNIN_TITLE:"Sign in through your browser. Also copies `reticle connect`, for a terminal",SIGNIN_COMMAND:"reticle connect",DASHBOARD_TITLE:"Open this project on the dashboard",SYNC_TITLE:"Push to the dashboard now, instead of waiting for the next sync",COPIED:"Copied",AVATAR_FALLBACK:"\u2022",MENU_LABEL:"Reticle account",TRIGGER_TITLE:"Your Reticle account",SIGNED_IN_AS:"Signed in",DASHBOARD_ACTION:"Open dashboard",LINK_HINT:"Not linked \u2014 run `reticle connect` to keep a record on the dashboard",LINK_COMMAND:"reticle connect",SIGNOUT_ACTION:"Copy sign-out command",SIGNOUT_TITLE:"Copy `reticle logout` to run in your terminal",SIGNOUT_COMMAND:"reticle logout",SIGNOUT_COPY_FAILED:"Run reticle logout in terminal",PROJECT_LABEL:"Project",HOST_LABEL:"Host",VERDICTS_LABEL:"Verdicts",DEFECTS_LABEL:"Defects found",PLAN_LABEL:"Plan",CREDITS_LABEL:"Credits",HARNESS_RUNS_LABEL:"Harness runs",MEMORY_LABEL:"Memory",ON_PLATFORM_LABEL:"Runs on dashboard"},CU=1200;kU={[nt.FREE]:"Free",[nt.TRIAL]:"Trial",[nt.PAID]:"Pro"},gb=(t,e,n)=>`${String(t)} ${t===1?e:n}`});var A0={};bs(A0,{HARNESS_LOCKED_HELP:()=>b0,OutputDetail:()=>Er,PresenterSettingsPanel:()=>pu,SETTINGS_ACCOUNT_ATTR:()=>Nb,SETTINGS_CSS:()=>ch,blockerHtml:()=>Cb,creditsLeft:()=>T0,getPresenterSettings:()=>yn,loadPresenterSettings:()=>Rb,paintHarnessRow:()=>S0,paintSdkVersion:()=>Ob,paintSettingsAccount:()=>wb,settingsPanelHtml:()=>Ib,statusTheme:()=>fu,syncPageBlocker:()=>hh});function fu(t){var e;return(e=vb.find(n=>n.id===t))!=null?e:DU}function yn(){return Et}function Rb(){if(typeof localStorage=="undefined")return{...Kn};try{let t=localStorage.getItem(ab);if(t===null)return{...Kn};let e=JSON.parse(t);if(typeof e!="object"||e===null)return{...Kn};let n=e;return{outputDetail:MU(n.outputDetail)?n.outputDetail:Kn.outputDetail,reactComponents:n.reactComponents===!0,hideUntilRestart:!1,statusThemeId:$U(n.statusThemeId)?n.statusThemeId:Kn.statusThemeId,ambientGlow:typeof n.ambientGlow=="boolean"?n.ambientGlow:Kn.ambientGlow,clearOnCopy:n.clearOnCopy===!0,blockPageInteractions:typeof n.blockPageInteractions=="boolean"?n.blockPageInteractions:Kn.blockPageInteractions,showTally:typeof n.showTally=="boolean"?n.showTally:Kn.showTally,showTimestamps:typeof n.showTimestamps=="boolean"?n.showTimestamps:Kn.showTimestamps,autoOpenChat:typeof n.autoOpenChat=="boolean"?n.autoOpenChat:Kn.autoOpenChat,reduceMotion:typeof n.reduceMotion=="boolean"?n.reduceMotion:Kn.reduceMotion}}catch{return{...Kn}}}function MU(t){return t===Er.MINIMAL||t===Er.STANDARD||t===Er.VERBOSE}function $U(t){return vb.some(e=>e.id===t)}function PU(t){if(Et=t,typeof localStorage!="undefined")try{localStorage.setItem(ab,JSON.stringify(t))}catch{}}function HU(t){let e={...Et,...t};return PU(e),e}function UU(){return Ee(Y.HELP,pe.HELP)}function Tb(t,e,n=""){let r=UU(),o=n===""?"":`<span class="reticle-settings-desc">${n}</span>`;return`<span class="reticle-settings-labelcol"><span class="reticle-settings-label">${t}<button type="button" class="reticle-settings-help" data-reticle-settings-help title="${e}" aria-label="${e}">${r}</button></span>${o}</span>`}function vi(t,e,n=""){let[r,o]=Mc[t];return`<div class="reticle-settings-row" ${n}>
328
- ${Tb(r,e,o)}
329
- <button type="button" class="reticle-settings-toggle" ${Rc}="${t}" role="switch" aria-checked="false"></button>
330
- </div>`}function p0(t,e){let[n,r]=Mc[t];return`<label class="reticle-settings-checkrow" data-reticle-check-row="${t}">
327
+ `});function _I(t){return Pu!=null||(Pu=new Set([...hV,...Object.entries(mV).flatMap(([e,n])=>n.map(r=>`${e}.${r}`))])),Pu.has(t)}var hV,SI,mV,Pu,xI=S(()=>{"use strict";hV=["fab","pause","chat-toggle","markers-btn","end","clear-marks","copy-marks","copy","export","annotate-btn","report-btn","settings-btn","min-btn","chat-min","chat-pill","chat-impact","copy-all-notes","promo-link","replay","carousel-dot","carousel-prev","carousel-next","carousel-close","page-close","team-open","team-save","talk-book","account-signin","account-trigger","account-signout","account-dashboard","sync-now","report-scope","report-close","share-x","share-in","share-copy","refer","settings-close","settings-help","settings-reset","settings-mcp","settings-kill","feedback-email","feedback-call","workspace-btn","workspace-copy","mark-cancel","mark-send","harness-switch","harness-run","harness-stop","harness-open","harness-toggle","harness-link","agent-copy","defects-all","plan-close","plan-journey"],SI=["setting","check","settings-cycle","theme","tour-target","link","annotation-tab","chat-view-btn"],mV={setting:["autoOpenChat","showTimestamps","showTally","reactComponents","hideUntilRestart","harnessEnabled","reduceMotion","ambientGlow"],check:["blockPageInteractions","clearOnCopy"],"settings-cycle":["outputDetail"],theme:["signal","traffic","mono","neon","ember"],"tour-target":["copy","back","done","next","skip"],link:["docs","github","site","discord","defect","dashboard"],"annotation-tab":["current","history"],"chat-view-btn":["activity","flows","annotations","harness"]}});function TV(t){try{let e=new URL(t);return e.protocol!=="https:"?!1:gV.has(e.hostname)?!0:EV===e.hostname&&e.pathname.startsWith(bV)}catch{return!1}}var gV,EV,bV,fT,SV,ene,AI=S(()=>{"use strict";J();gV=new Set(["reticle.sh","www.reticle.sh","app.reticle.sh","docs.reticle.sh"]),EV="github.com",bV="/reticlehq/";fT=i.object({id:i.string().regex(/^[a-z0-9-]{1,48}$/),kicker:i.string().min(1).max(40).optional(),title:i.string().min(1).max(80),detail:i.string().min(1).max(120).optional(),cta:i.object({label:i.string().min(1).max(24),url:i.string().refine(TV)}).optional()}),SV=i.object({signedIn:i.boolean().optional(),entitled:i.boolean().optional()}),ene=fT.extend({audience:SV.optional(),from:i.string().optional(),until:i.string().optional(),minSdk:i.string().optional(),weight:i.number().optional()})});function Fi(t){return t!==void 0&&t.used>=t.limit}function NI(t){let e=`${na(Math.max(0,t.limit-t.used))} of ${na(t.limit)}`;return at.FREE===t.kind?`${e} free credits`:at.TRIAL===t.kind?`${e} trial credits`:`${e} credits left`}function mT(t){let e=t.kind===void 0?void 0:_V[t.kind],n=Math.max(0,t.limit-t.used),r=t.daysLeft===void 0?"":` \xB7 ${String(t.daysLeft)} day${t.daysLeft===1?"":"s"} left`;return`${e===void 0?"":`${e}: `}${na(t.used)} of ${na(t.limit)} credits used \xB7 ${na(n)} left${r}`}function tm(t){return at.FREE===t.kind?{said:`Your ${na(t.limit)} free credits are used.`,action:`Add a card to start your ${String(hT)}-day trial`}:at.TRIAL===t.kind?{said:`Your ${na(t.limit)} trial credits are used. Pro starts when your trial ends.`}:{said:"This month's credits are used. They renew over the next 30 days."}}var hT,yI,vI,RI,na,_V,wI=S(()=>{"use strict";hE();hT=14,yI=500,vI=`Sign up: free credits to try Reticle \xB7 add a card for a ${String(yI)}-credit, ${String(hT)}-day trial`,RI=`a card starts a ${String(hT)}-day trial with ${String(yI)} credits; without one, free sign-up credits`,na=t=>t.toLocaleString("en-US",{maximumFractionDigits:2});_V={[at.FREE]:"Free",[at.TRIAL]:"Trial"}});var Zc=S(()=>{"use strict";xI();AI();wI()});function ne(t){return t.replace(/&/g,"&amp;").replace(/</g,"&lt;").replace(/>/g,"&gt;").replace(/"/g,"&quot;")}function Qn(t){try{let e=new URL(t).protocol;return e==="https:"||e==="http:"}catch{return!1}}var ra=S(()=>{"use strict"});function $u(t,e){let n=document.createElement("template");n.innerHTML=e,OI(t,n.content)}function OI(t,e){let n=[...t.childNodes],r=[...e.childNodes];r.forEach((o,s)=>{let a=n[s];a===void 0?t.appendChild(o):a.nodeType===o.nodeType&&a.nodeName===o.nodeName?xV(a,o):t.replaceChild(o,a)});for(let o of n.slice(r.length))t.removeChild(o)}function xV(t,e){if(!(t instanceof Element)||!(e instanceof Element)){t.nodeValue!==e.nodeValue&&(t.nodeValue=e.nodeValue);return}for(let{name:n}of[...t.attributes])e.hasAttribute(n)||t.removeAttribute(n);for(let{name:n,value:r}of[...e.attributes])t.getAttribute(n)!==r&&t.setAttribute(n,r);OI(t,e)}var gT=S(()=>{"use strict"});function CI(t){let n=(t!=null?t:"").trim().split(/[\s._-]+/).filter(r=>r.length>0).slice(0,2).map(r=>{var o;return(o=[...r][0])!=null?o:""}).join("");return n.length>0?n.toUpperCase():ie.AVATAR_FALLBACK}function Jc(t,e={},n=!1){var l;if(t===void 0)return"";if(!t.signedIn)return n?`<div class="reticle-account" ${II}><button type="button" class="reticle-account-signin" ${Ut} title="${ie.SIGNIN_TITLE}" aria-label="${ie.SIGNIN_TITLE}">${ie.SIGNED_OUT}</button></div>`:"";let r=(l=t.org)!=null?l:"",o=r.length>0?ne(r):ie.SIGNED_IN_AS,s=`<span class="reticle-account-avatar" aria-hidden="true">${ne(CI(t.org))}</span>`,a=`<button type="button" class="reticle-account-trigger" ${rm} aria-haspopup="true" aria-expanded="false" title="${ie.TRIGGER_TITLE}" aria-label="${ie.TRIGGER_TITLE}: ${o}">${s}</button>`;return`<div class="reticle-account" ${II}>${a}${RV(t,e)}</div>`}function Yo(t,e){return e===void 0||e.length===0?"":`<div class="reticle-account-row"><span class="reticle-account-k">${ne(t)}</span><span class="reticle-account-v" title="${ne(e)}">${ne(e)}</span></div>`}function RV(t,e){var d,u;let n=(d=t.org)!=null?d:"",r=`<div class="reticle-account-head"><span class="reticle-account-avatar reticle-account-avatar--lg" aria-hidden="true">${ne(CI(t.org))}</span><span class="reticle-account-who"><span class="reticle-account-org">${n.length>0?ne(n):ie.SIGNED_IN_AS}</span>`+(t.email!==void 0&&t.email.length>0?`<span class="reticle-account-email" title="${ne(t.email)}">${ne(t.email)}</span>`:n.length>0?`<span class="reticle-account-email">${ie.SIGNED_IN_AS}</span>`:"")+"</span></div>",o=Yo(ie.HOST_LABEL,t.host)+Yo(ie.PROJECT_LABEL,e.projectName)+Yo(ie.VERDICTS_LABEL,e.verdicts!==void 0?String(e.verdicts):void 0)+Yo(ie.DEFECTS_LABEL,e.defects!==void 0?String(e.defects):void 0)+Yo(ie.ON_PLATFORM_LABEL,e.onPlatform)+Yo(ie.PLAN_LABEL,e.plan)+Yo(ie.CREDITS_LABEL,e.credits)+Yo(ie.HARNESS_RUNS_LABEL,e.harnessRuns)+Yo(ie.MEMORY_LABEL,e.memory),a=e.dashboardUrl!==void 0&&Qn(e.dashboardUrl)?`<a class="reticle-account-action" data-reticle-account-dashboard href="${ne((u=e.dashboardUrl)!=null?u:"")}" target="_blank" rel="noreferrer noopener" title="${ie.DASHBOARD_TITLE}">${Ee(Q.VIEW,he.HELP)}<span>${ie.DASHBOARD_ACTION}</span></a>`:`<button type="button" class="reticle-account-action reticle-account-action--hint" ${Ut} data-reticle-copy="${ie.LINK_COMMAND}" title="${ie.LINK_HINT}"><span>${ie.LINK_HINT}</span></button>`,l=`<button type="button" class="reticle-account-action" ${AV} data-reticle-copy="${ie.SIGNOUT_COMMAND}" title="${ie.SIGNOUT_TITLE}"><span>${ie.SIGNOUT_ACTION}</span></button>`;return`<div class="reticle-account-menu" ${Gi} role="menu" aria-label="${ie.MENU_LABEL}" aria-hidden="true" hidden>`+r+(o.length>0?`<div class="reticle-account-rows">${o}</div>`:"")+`<div class="reticle-account-actions">${a}${l}</div></div>`}function LI(t,e){let n=t==null?void 0:t.plan,r=e==null?void 0:e.onPlatform;return{...n===void 0?{}:{plan:[NV[n.kind],n.daysLeft===void 0?"":`${ET(n.daysLeft,"day","days")} left`,n.seats===void 0?"":ET(n.seats,"seat","seats")].filter(o=>o.length>0).join(" \xB7 ")},...(t==null?void 0:t.credits)===void 0?{}:{credits:`${Math.max(0,t.credits.limit-t.credits.used).toLocaleString("en-US")} of ${t.credits.limit.toLocaleString("en-US")} left`},...(t==null?void 0:t.harnessRuns)===void 0?{}:{harnessRuns:String(t.harnessRuns)},...(t==null?void 0:t.memoryEntries)===void 0?{}:{memory:ET(t.memoryEntries,"entry","entries")},...typeof r=="number"?{onPlatform:String(r)}:{}}}function kI(t,e){return t===void 0||!t.signedIn?"":e!==void 0&&Qn(e)?`<a ${yV} class="reticle-team-link" href="${ne(e)}" target="_blank" rel="noreferrer noopener" title="${ne(nm.OPEN_TITLE)}">${nm.OPEN}</a>`:`<button type="button" ${Hu} class="reticle-team-link" title="${ne(nm.SAVE_TITLE)}"><span>${nm.SAVE_LINK}</span></button>`}function Uu(t,e){var o;let n=t.querySelector(`[${Gi}]:not([hidden])`)!==null;if($u(t,e),!n)return;let r=t.querySelector(`[${Gi}]`);r!==null&&(r.removeAttribute("hidden"),r.setAttribute("aria-hidden","false"),(o=t.querySelector(`[${rm}]`))==null||o.setAttribute("aria-expanded","true"))}function TT(t){return t===void 0||!Qn(t)?"":`<button type="button" class="reticle-sync-now" ${bT} title="${ie.SYNC_TITLE}" aria-label="${ie.SYNC_TITLE}">${Ee(Q.SYNC,he.HELP)}</button>`}function DI(t,e){let n=new AbortController,{signal:r}=n,o=l=>{for(let d of t.querySelectorAll(`[${Gi}]`))d!==l&&(d.setAttribute("hidden",""),d.setAttribute("aria-hidden","true"));for(let d of t.querySelectorAll(`[${rm}]`))l!==void 0&&d.parentElement===l.parentElement||d.setAttribute("aria-expanded","false")},s=(l,d)=>{var h;let u=(h=l.querySelector("span"))!=null?h:l,p=u.textContent;u.textContent=d,setTimeout(()=>{u.textContent=p},vV)},a=async(l,d)=>{try{if(navigator.clipboard===void 0)throw new Error("Clipboard unavailable");await navigator.clipboard.writeText(l),s(d,ie.COPIED)}catch{s(d,l===ie.SIGNOUT_COMMAND?ie.SIGNOUT_COPY_FAILED:`Run ${l} in terminal`)}};return t.addEventListener("click",l=>{var m,g;let d=l.target;if(!(d instanceof Element))return;let u=d.closest(`[${rm}]`);if(u instanceof HTMLElement){l.preventDefault(),l.stopPropagation();let T=(m=u.parentElement)==null?void 0:m.querySelector(`[${Gi}]`);if(!(T instanceof HTMLElement))return;let _=!T.hasAttribute("hidden");if(o(),_)return;T.removeAttribute("hidden"),T.setAttribute("aria-hidden","false"),u.setAttribute("aria-expanded","true");return}let p=d.closest("[data-reticle-copy]");if(p instanceof HTMLElement){l.preventDefault(),l.stopPropagation();let T=(g=p.getAttribute("data-reticle-copy"))!=null?g:"";T.length>0&&a(T,p);return}let h=d.closest(`[${Ut}]`);if(h instanceof HTMLElement){l.preventDefault(),l.stopPropagation(),e==null||e(),a(ie.SIGNIN_COMMAND,h);return}o()},{signal:r}),document.addEventListener("pointerdown",l=>{let d=l.target;d instanceof Node&&t.contains(d)||o()},{signal:r}),document.addEventListener("keydown",l=>{l.key!=="Escape"||t.querySelector(`[${Gi}]:not([hidden])`)===null||(l.stopPropagation(),o())},{signal:r}),()=>n.abort()}var II,Ut,bT,rm,Gi,AV,yV,Hu,Qc,nm,ie,vV,NV,ET,eo=S(()=>{"use strict";D();Zc();Tr();ra();gT();II="data-reticle-account",Ut="data-reticle-account-signin",bT="data-reticle-sync-now",rm="data-reticle-account-trigger",Gi="data-reticle-account-menu",AV="data-reticle-account-signout",yV="data-reticle-team-open",Hu="data-reticle-team-save",Qc="data-reticle-team",nm={OPEN:"Open on dashboard \u2197",OPEN_TITLE:"This project's runs, kept for your team on the Reticle dashboard",SAVE_LINK:"Save runs for your team",SAVE_TITLE:`Keep every run, flow and Harness result on a dashboard your team shares. On Reticle, ${RI}.`},ie={SIGNED_OUT:"Sign in",SIGNIN_TITLE:"Sign in through your browser. Also copies `reticle connect`, for a terminal",SIGNIN_COMMAND:"reticle connect",DASHBOARD_TITLE:"Open this project on the dashboard",SYNC_TITLE:"Push to the dashboard now, instead of waiting for the next sync",COPIED:"Copied",AVATAR_FALLBACK:"\u2022",MENU_LABEL:"Reticle account",TRIGGER_TITLE:"Your Reticle account",SIGNED_IN_AS:"Signed in",DASHBOARD_ACTION:"Open dashboard",LINK_HINT:"Not linked \u2014 run `reticle connect` to keep a record on the dashboard",LINK_COMMAND:"reticle connect",SIGNOUT_ACTION:"Copy sign-out command",SIGNOUT_TITLE:"Copy `reticle logout` to run in your terminal",SIGNOUT_COMMAND:"reticle logout",SIGNOUT_COPY_FAILED:"Run reticle logout in terminal",PROJECT_LABEL:"Project",HOST_LABEL:"Host",VERDICTS_LABEL:"Verdicts",DEFECTS_LABEL:"Defects found",PLAN_LABEL:"Plan",CREDITS_LABEL:"Credits",HARNESS_RUNS_LABEL:"Harness runs",MEMORY_LABEL:"Memory",ON_PLATFORM_LABEL:"Runs on dashboard"},vV=1200;NV={[at.FREE]:"Free",[at.TRIAL]:"Trial",[at.PAID]:"Pro"},ET=(t,e,n)=>`${String(t)} ${t===1?e:n}`});var WI={};Ua(WI,{HARNESS_LOCKED_HELP:()=>GI,OutputDetail:()=>vr,PresenterSettingsPanel:()=>Gu,SETTINGS_ACCOUNT_ATTR:()=>wT,SETTINGS_CSS:()=>em,blockerHtml:()=>LT,creditsLeft:()=>BI,getPresenterSettings:()=>nr,loadPresenterSettings:()=>NT,paintHarnessRow:()=>VI,paintSdkVersion:()=>IT,paintSettingsAccount:()=>OT,settingsPanelHtml:()=>CT,statusTheme:()=>Bu,syncPageBlocker:()=>sm});function Bu(t){var e;return(e=RT.find(n=>n.id===t))!=null?e:wV}function nr(){return vt}function NT(){if(typeof localStorage=="undefined")return{...Jn};try{let t=localStorage.getItem(aT);if(t===null)return{...Jn};let e=JSON.parse(t);if(typeof e!="object"||e===null)return{...Jn};let n=e;return{outputDetail:OV(n.outputDetail)?n.outputDetail:Jn.outputDetail,reactComponents:n.reactComponents===!0,hideUntilRestart:!1,statusThemeId:IV(n.statusThemeId)?n.statusThemeId:Jn.statusThemeId,ambientGlow:typeof n.ambientGlow=="boolean"?n.ambientGlow:Jn.ambientGlow,clearOnCopy:n.clearOnCopy===!0,blockPageInteractions:typeof n.blockPageInteractions=="boolean"?n.blockPageInteractions:Jn.blockPageInteractions,showTally:typeof n.showTally=="boolean"?n.showTally:Jn.showTally,showTimestamps:typeof n.showTimestamps=="boolean"?n.showTimestamps:Jn.showTimestamps,autoOpenChat:typeof n.autoOpenChat=="boolean"?n.autoOpenChat:Jn.autoOpenChat,reduceMotion:typeof n.reduceMotion=="boolean"?n.reduceMotion:Jn.reduceMotion}}catch{return{...Jn}}}function OV(t){return t===vr.MINIMAL||t===vr.STANDARD||t===vr.VERBOSE}function IV(t){return RT.some(e=>e.id===t)}function CV(t){if(vt=t,typeof localStorage!="undefined")try{localStorage.setItem(aT,JSON.stringify(t))}catch{}}function LV(t){let e={...vt,...t};return CV(e),e}function kV(){return Ee(Q.HELP,he.HELP)}function ST(t,e,n=""){let r=kV(),o=n===""?"":`<span class="reticle-settings-desc">${n}</span>`;return`<span class="reticle-settings-labelcol"><span class="reticle-settings-label">${t}<button type="button" class="reticle-settings-help" data-reticle-settings-help title="${e}" aria-label="${e}">${r}</button></span>${o}</span>`}function Bi(t,e,n=""){let[r,o]=el[t];return`<div class="reticle-settings-row" ${n}>
328
+ ${ST(r,e,o)}
329
+ <button type="button" class="reticle-settings-toggle" ${Kc}="${t}" role="switch" aria-checked="false"></button>
330
+ </div>`}function MI(t,e){let[n,r]=el[t];return`<label class="reticle-settings-checkrow" data-reticle-check-row="${t}">
331
331
  <span class="reticle-settings-check" data-reticle-check="${t}" role="checkbox" aria-checked="${e?"true":"false"}" tabindex="0"></span>
332
332
  <span class="reticle-settings-labelcol"><span class="reticle-settings-check-label">${n}</span><span class="reticle-settings-desc">${r}</span></span>
333
- </label>`}function T0(t){return t===void 0?"":Ai(t)?lh(t).said:o0(t)}function S0(t,e,n){let r=t.querySelector(`[${g0}]`);if(!(r instanceof HTMLElement))return;if(e===void 0){r.hidden=!0;return}r.hidden=!1;let o=r.querySelector(`[${Rc}="harnessEnabled"]`);if(!(o instanceof HTMLElement))return;let a=n!==void 0&&!n.unlocked?n.reason:void 0,s=e.harnessEntitled&&a===void 0;o.setAttribute("aria-checked",e.harnessEnabled&&s?"true":"false"),o.setAttribute("aria-disabled",s?"false":"true");let l=r.querySelector("[data-reticle-settings-help]"),d=T0(e.credits);l instanceof HTMLElement&&(l.title=a!=null?a:s?[E0,d].filter(u=>0<u.length).join(" "):Ai(e.credits)?d:b0)}function wb(t,e,n,r={}){let o=t.querySelector(`[${m0}]`),a=t.querySelector(`[${Nb}]`);if(!(o instanceof HTMLElement)||!(a instanceof HTMLElement))return;let s=Dc(e,{...r,dashboardUrl:n},!0);o.hidden=s.length===0,du(a,s)}function Ob(t,e){let n=t.querySelector(`[${_0}]`);n!==null&&(n.textContent=e===void 0?_b.UNKNOWN:_b.KNOWN(e))}function Ib(){let t=Ee(Y.REMOVE,pe.MIN),e=Ee(Y.CARET_RIGHT,pe.HELP),n="How much detail is included when you copy or export the run",r="Include React component paths in exported run state when available",o="Hide the Reticle HUD until you reload the page",a=E0;return`<div ${I} class="reticle-settings ${An}" role="region" aria-label="Reticle settings" aria-hidden="true">
333
+ </label>`}function BI(t){return t===void 0?"":Fi(t)?tm(t).said:NI(t)}function VI(t,e){let n=t.querySelector(`[${UI}]`);if(!(n instanceof HTMLElement))return;if(e===void 0){n.hidden=!0;return}n.hidden=!1;let r=n.querySelector(`[${Kc}="harnessEnabled"]`);if(!(r instanceof HTMLElement))return;let o=e.harnessEntitled;r.setAttribute("aria-checked",e.harnessEnabled&&o?"true":"false"),r.setAttribute("aria-disabled",o?"false":"true");let s=n.querySelector("[data-reticle-settings-help]"),a=BI(e.credits);s instanceof HTMLElement&&(s.title=o?[FI,a].filter(l=>0<l.length).join(" "):Fi(e.credits)?a:GI)}function OT(t,e,n,r={}){let o=t.querySelector(`[${HI}]`),s=t.querySelector(`[${wT}]`);if(!(o instanceof HTMLElement)||!(s instanceof HTMLElement))return;let a=Jc(e,{...r,dashboardUrl:n},!0);o.hidden=a.length===0,Uu(s,a)}function IT(t,e){let n=t.querySelector(`[${jI}]`);n!==null&&(n.textContent=e===void 0?xT.UNKNOWN:xT.KNOWN(e))}function CT(){let t=Ee(Q.REMOVE,he.MIN),e=Ee(Q.CARET_RIGHT,he.HELP),n="How much detail is included when you copy or export the run",r="Include React component paths in exported run state when available",o="Hide the Reticle HUD until you reload the page",s=FI;return`<div ${C} class="reticle-settings ${Cn}" role="region" aria-label="Reticle settings" aria-hidden="true">
334
334
  <div class="reticle-settings-inner">
335
335
  <div class="reticle-settings-head">
336
336
  <span class="reticle-settings-title">Settings</span>
337
- <button type="button" ${ib} class="reticle-settings-close" title="Close settings" aria-label="Close settings">${t}</button>
337
+ <button type="button" ${sT} class="reticle-settings-close" title="Close settings" aria-label="Close settings">${t}</button>
338
338
  </div>
339
339
  <div class="reticle-settings-body">
340
340
  <div class="reticle-settings-section">Session</div>
341
341
  <div class="reticle-settings-row">
342
- ${Tb(Mc.outputDetail[0],n,Mc.outputDetail[1])}
342
+ ${ST(el.outputDetail[0],n,el.outputDetail[1])}
343
343
  <button type="button" class="reticle-settings-cycle" data-reticle-settings-cycle="outputDetail"><span data-reticle-cycle-label></span><span class="reticle-settings-dots" data-reticle-cycle-dots></span></button>
344
344
  </div>
345
- ${vi("autoOpenChat","On by default. Opens the agent chat by itself when a session starts and when you expand the HUD. Off leaves the toolbar bare until you ask for the chat.")}
346
- ${vi("showTimestamps","Show relative timestamps on each activity-log row")}
347
- ${vi("showTally","Show the pass/fail score pill in the toolbar")}
345
+ ${Bi("autoOpenChat","On by default. Opens the agent chat by itself when a session starts and when you expand the HUD. Off leaves the toolbar bare until you ask for the chat.")}
346
+ ${Bi("showTimestamps","Show relative timestamps on each activity-log row")}
347
+ ${Bi("showTally","Show the pass/fail score pill in the toolbar")}
348
348
  <div class="reticle-settings-section">Inspector</div>
349
- ${vi("reactComponents",r,"data-reticle-settings-react-row")}
349
+ ${Bi("reactComponents",r,"data-reticle-settings-react-row")}
350
350
  <div class="reticle-settings-section">Interaction</div>
351
- ${p0("blockPageInteractions",!0)}
352
- ${p0("clearOnCopy",!1)}
353
- ${vi("hideUntilRestart",o)}
354
- ${vi("harnessEnabled",a,`${g0} hidden`)}
355
- ${vi("reduceMotion","Reduce HUD animations for accessibility")}
351
+ ${MI("blockPageInteractions",!0)}
352
+ ${MI("clearOnCopy",!1)}
353
+ ${Bi("hideUntilRestart",o)}
354
+ ${Bi("harnessEnabled",s,`${UI} hidden`)}
355
+ ${Bi("reduceMotion","Reduce HUD animations for accessibility")}
356
356
  <div class="reticle-settings-section">Account</div>
357
- <div class="reticle-settings-row" ${m0} hidden>
358
- ${Tb(Mc.workspace[0],FU,Mc.workspace[1])}
359
- <span ${Nb}></span>
357
+ <div class="reticle-settings-row" ${HI} hidden>
358
+ ${ST(el.workspace[0],DV,el.workspace[1])}
359
+ <span ${wT}></span>
360
360
  </div>
361
361
  <div class="reticle-settings-section">Status theme</div>
362
- ${vi("ambientGlow","Glow the page edges in the status colour while a session is live. Off keeps the HUD signals and leaves your app alone.")}
362
+ ${Bi("ambientGlow","Glow the page edges in the status colour while a session is live. Off keeps the HUD signals and leaves your app alone.")}
363
363
  <div class="reticle-settings-themes" data-reticle-settings-themes></div>
364
364
  <div class="reticle-settings-section">Help</div>
365
365
  <div class="reticle-settings-foot">
366
366
  <button type="button" class="reticle-settings-reset" data-reticle-settings-reset>Reset HUD position</button>
367
367
  <button type="button" class="reticle-settings-link" data-reticle-settings-mcp>MCP setup guide<span class="reticle-settings-link-caret" aria-hidden="true">${e}</span></button>
368
- <a class="reticle-settings-link" data-reticle-feedback-email href="${D_}" target="_blank" rel="noopener noreferrer" title="${ph.EMAIL_TITLE}">${ph.EMAIL}<span class="reticle-settings-link-caret" aria-hidden="true">${e}</span></a>
369
- <a class="reticle-settings-link" data-reticle-feedback-call href="${Tp}" target="_blank" rel="noopener noreferrer" title="${ph.CALL_TITLE}">${ph.CALL}<span class="reticle-settings-link-caret" aria-hidden="true">${e}</span></a>
370
- <p class="reticle-settings-kill-sub" ${_0}>${_b.UNKNOWN}</p>
368
+ <a class="reticle-settings-link" data-reticle-feedback-email href="${Yx}" target="_blank" rel="noopener noreferrer" title="${om.EMAIL_TITLE}">${om.EMAIL}<span class="reticle-settings-link-caret" aria-hidden="true">${e}</span></a>
369
+ <a class="reticle-settings-link" data-reticle-feedback-call href="${ef}" target="_blank" rel="noopener noreferrer" title="${om.CALL_TITLE}">${om.CALL}<span class="reticle-settings-link-caret" aria-hidden="true">${e}</span></a>
370
+ <p class="reticle-settings-kill-sub" ${jI}>${xT.UNKNOWN}</p>
371
371
  <div class="reticle-settings-kill-row">
372
- <button type="button" class="reticle-settings-kill" ${Sb}><span data-reticle-kill-label>${fh.LABEL}</span></button>
373
- <p class="reticle-settings-kill-sub">${fh.WARNING}</p>
372
+ <button type="button" class="reticle-settings-kill" ${_T}><span data-reticle-kill-label>${im.LABEL}</span></button>
373
+ <p class="reticle-settings-kill-sub">${im.WARNING}</p>
374
374
  </div>
375
375
  </div>
376
376
  </div>
377
377
  </div>
378
- </div>`}function h0(t,e){let n=fu(e.statusThemeId);t.style.setProperty("--reticle-mark-accent",n.active),t.style.setProperty("--reticle-accent",n.active),t.style.setProperty("--reticle-c-active",n.active),t.style.setProperty("--reticle-c-idle",n.idle),t.style.setProperty("--reticle-c-ended",n.ended),t.setAttribute(Ow,e.ambientGlow?"1":"0"),e.hideUntilRestart?t.setAttribute(Nc,"1"):t.removeAttribute(Nc),t.setAttribute(Jf,e.showTimestamps?"1":"0"),t.setAttribute(Gr,e.reduceMotion?"1":"0");let r=t.querySelector("[data-reticle-tally]");r instanceof HTMLElement&&!e.showTally&&r.setAttribute("hidden","")}function hh(t,e,n){t.setAttribute(Iw,e.blockPageInteractions&&n?"1":"0")}function Cb(){return'<div data-reticle-blocker aria-hidden="true"></div>'}var Er,Ha,vb,DU,uu,Kn,Et,Mc,Nb,m0,f0,g0,E0,b0,FU,ph,Sb,fh,_0,_b,Yt,bt,zn,Vr,be,xb,Wn,Ab,Ri,yb,x0,pu,$c=S(()=>{"use strict";ut();ur();mr();db();au();ub();Lc();H();Br();Er={MINIMAL:"minimal",STANDARD:"standard",VERBOSE:"verbose"},Ha={SIGNAL:"signal",TRAFFIC:"traffic",MONO:"mono",NEON:"neon",EMBER:"ember"},vb=[{id:Ha.SIGNAL,label:"Signal",active:"#3b82f6",idle:"#eab308",ended:"#ef4444"},{id:Ha.TRAFFIC,label:"Traffic",active:"#22c55e",idle:"#eab308",ended:"#ef4444"},{id:Ha.MONO,label:"Mono",active:"#fafafa",idle:"#a3a3a3",ended:"#525252"},{id:Ha.NEON,label:"Neon",active:"#06b6d4",idle:"#a855f7",ended:"#f43f5e"},{id:Ha.EMBER,label:"Ember",active:"#f97316",idle:"#facc15",ended:"#7f1d1d"}],DU={id:Ha.SIGNAL,label:"Signal",active:"#3b82f6",idle:"#eab308",ended:"#ef4444"};uu=[{value:Er.MINIMAL,label:"Minimal"},{value:Er.STANDARD,label:"Standard"},{value:Er.VERBOSE,label:"Verbose"}],Kn={outputDetail:Er.STANDARD,statusThemeId:Ha.SIGNAL,ambientGlow:!0,reactComponents:!1,hideUntilRestart:!1,clearOnCopy:!1,blockPageInteractions:!0,showTally:!1,showTimestamps:!0,autoOpenChat:!0,reduceMotion:!1},Et=Rb();Mc={outputDetail:["Output detail","How much a copied run includes."],autoOpenChat:["Open the log automatically","Opens this panel when a session starts."],showTimestamps:["Show timestamps","Shows how long ago each log row happened."],showTally:["Show pass/fail count","A score pill for this session in the toolbar."],reactComponents:["React component names","Adds component names to copied runs."],blockPageInteractions:["Block page while adding notes","Clicks pin a note instead of using the app."],clearOnCopy:["Clear notes after copying","Starts fresh once your notes are copied."],hideUntilRestart:["Hide until reload","Hides the HUD until this page reloads."],harnessEnabled:["Allow Reticle to drive","Off by default. Unlocks at 80% instrumentation; lets Run Harness test this project."],reduceMotion:["Reduce motion","Fewer HUD animations."],ambientGlow:["Page glow","Tints the page edges while a session runs."],workspace:["Workspace","The Reticle account this machine is signed in to."]};Nb="data-reticle-settings-account",m0="data-reticle-settings-account-row",f0="data-reticle-settings-helptext",g0="data-reticle-settings-harness-row",E0="Let Reticle test this app by itself to find defects, from Run Harness or from your coding agent. Off blocks every run. Set here or in your dashboard \u2014 both write to the same place.",b0="The Harness is not available to this workspace right now: see Plan in your Reticle dashboard.";FU=`Whether this machine is signed in to a Reticle workspace. Press ${te.SIGNED_OUT} to sign in through your browser.`;ph={EMAIL:"Email the founder",EMAIL_TITLE:`Write to ${k_}: a problem, a wish, anything`,CALL:"Book a call",CALL_TITLE:"Pick a time to talk it through"},Sb="data-reticle-settings-kill",fh={LABEL:"Kill Reticle",ARMED:"Click again to kill Reticle",WARNING:"Disconnects Reticle from this page: no HUD, no agent, nothing recorded. To bring it back, restart your dev server or reload the page."},_0="data-reticle-sdk-version",_b={UNKNOWN:"Reticle SDK version unknown",KNOWN:t=>`Reticle SDK ${t}`};pu=class{constructor(e={}){b(this,be);b(this,Yt);b(this,bt);b(this,zn);b(this,Vr);h(this,Vr,e),Et=Rb()}contains(e){var n;return((n=c(this,bt))==null?void 0:n.contains(e))===!0}mount(e){var a,s,l,d,u,p,f;h(this,Yt,e);let n=e.querySelector(`[${I}]`);h(this,bt,n instanceof HTMLElement?n:void 0),(a=c(this,bt))==null||a.addEventListener("pointerdown",m=>{m.stopPropagation()});let r=e.querySelector(`[${eu}]`);h(this,zn,r instanceof HTMLElement?r:void 0);let o=e.querySelector(`[${ib}]`);if(o instanceof HTMLElement&&qE(o,Y.REMOVE,pe.MIN),c(this,zn)!==void 0){let m=c(this,zn).querySelector(".reticle-nav-label");qE(c(this,zn),Y.GEAR,pe.TOOLBAR),m!==null&&c(this,zn).append(m),c(this,zn).addEventListener("click",g=>{g.stopPropagation(),this.open()})}(s=e.querySelector('[data-reticle-settings-cycle="outputDetail"]'))==null||s.addEventListener("click",m=>{m.stopPropagation();let g=uu.findIndex(_=>_.value===Et.outputDetail),T=uu[(g+1)%uu.length];T!==void 0&&E(this,be,Wn).call(this,{outputDetail:T.value})});for(let m of e.querySelectorAll(".reticle-settings-help"))m.setAttribute("aria-expanded","false"),m.addEventListener("click",g=>{var A;g.stopPropagation();let T=m.closest(".reticle-settings-row");if(T===null)return;let _=T.querySelector(`[${f0}]`);if(_!==null){_.remove(),m.setAttribute("aria-expanded","false");return}let y=document.createElement("p");y.className="reticle-settings-helptext",y.setAttribute(f0,""),y.textContent=(A=m.getAttribute("title"))!=null?A:"",T.appendChild(y),m.setAttribute("aria-expanded","true")});for(let m of e.querySelectorAll(`[${Rc}]`)){let g=()=>{var _,y,A,v;if(!(m instanceof HTMLElement))return;let T=m.getAttribute(Rc);if(T==="harnessEnabled"){if(m.getAttribute("aria-disabled")==="true")return;let O=m.getAttribute("aria-checked")!=="true";m.setAttribute("aria-checked",O?"true":"false"),(y=(_=c(this,Vr)).onHarness)==null||y.call(_,O)}else if(T==="reactComponents")E(this,be,Wn).call(this,{reactComponents:!Et.reactComponents});else if(T==="hideUntilRestart"){let O=!Et.hideUntilRestart;E(this,be,Wn).call(this,{hideUntilRestart:O}),O&&((v=(A=c(this,Vr)).onHideUntilRestart)==null||v.call(A))}else T==="showTally"?E(this,be,Wn).call(this,{showTally:!Et.showTally}):T==="autoOpenChat"?E(this,be,Wn).call(this,{autoOpenChat:!Et.autoOpenChat}):T==="showTimestamps"?E(this,be,Wn).call(this,{showTimestamps:!Et.showTimestamps}):T==="reduceMotion"?E(this,be,Wn).call(this,{reduceMotion:!Et.reduceMotion}):T==="ambientGlow"&&E(this,be,Wn).call(this,{ambientGlow:!Et.ambientGlow})};m.addEventListener("click",T=>{T.stopPropagation(),g()}),m.addEventListener("keydown",T=>{T instanceof KeyboardEvent&&(T.key===" "||T.key==="Enter")&&(T.preventDefault(),T.stopPropagation(),g())})}for(let m of e.querySelectorAll("[data-reticle-check]")){let g=()=>{if(!(m instanceof HTMLElement))return;let _=m.getAttribute("data-reticle-check");_==="clearOnCopy"?E(this,be,Wn).call(this,{clearOnCopy:!Et.clearOnCopy}):_==="blockPageInteractions"&&E(this,be,Wn).call(this,{blockPageInteractions:!Et.blockPageInteractions})},T=m.closest("[data-reticle-check-row]");T==null||T.addEventListener("click",_=>{_.stopPropagation(),!(_.target instanceof HTMLElement&&_.target.classList.contains("reticle-settings-help"))&&g()}),m.addEventListener("keydown",_=>{_ instanceof KeyboardEvent&&(_.key===" "||_.key==="Enter")&&(_.preventDefault(),g())})}(l=e.querySelector("[data-reticle-settings-mcp]"))==null||l.addEventListener("click",m=>{m.stopPropagation(),window.open(Cw,"_blank","noopener,noreferrer")}),(d=e.querySelector("[data-reticle-settings-reset]"))==null||d.addEventListener("click",m=>{m.stopPropagation();let g=e.querySelector(`[${D}]`);g instanceof HTMLElement&&ru(g)}),(u=e.querySelector(`[${Sb}]`))==null||u.addEventListener("click",m=>{var _,y;m.stopPropagation();let g=m.currentTarget;if(!(g instanceof HTMLElement))return;if(g.getAttribute("data-armed")==="1"){(y=(_=c(this,Vr)).onKill)==null||y.call(_);return}g.setAttribute("data-armed","1");let T=g.querySelector("[data-reticle-kill-label]");T!==null&&(T.textContent=fh.ARMED)}),o==null||o.addEventListener("click",m=>{m.stopPropagation(),this.close()}),E(this,be,x0).call(this),E(this,be,Ab).call(this),h0(e,Et),(f=(p=c(this,Vr)).onSettingsChange)==null||f.call(p,Et)}paintHarness(e,n){let r=c(this,bt);r!==void 0&&S0(r,e,n)}teardown(){h(this,Yt,void 0),h(this,bt,void 0),h(this,zn,void 0)}isOpen(){var e;return((e=c(this,Yt))==null?void 0:e.getAttribute(Ye))==="1"}open(){var e,n,r,o;c(this,Yt)!==void 0&&((n=(e=c(this,Vr)).onBeforeOpen)==null||n.call(e),c(this,Yt).setAttribute(Ye,"1"),(r=c(this,bt))==null||r.setAttribute("aria-hidden","false"),(o=c(this,zn))==null||o.setAttribute("data-active","1"),E(this,be,xb).call(this))}close(){var n,r,o;if(c(this,Yt)===void 0)return;let e=(n=c(this,bt))==null?void 0:n.querySelector(`[${Sb}]`);if(e instanceof HTMLElement){e.removeAttribute("data-armed");let a=e.querySelector("[data-reticle-kill-label]");a!==null&&(a.textContent=fh.LABEL)}c(this,Yt).setAttribute(Ye,"0"),(r=c(this,bt))==null||r.setAttribute("aria-hidden","true"),(o=c(this,zn))==null||o.setAttribute("data-active","0"),E(this,be,xb).call(this)}toggle(){this.isOpen()?this.close():this.open()}};Yt=new WeakMap,bt=new WeakMap,zn=new WeakMap,Vr=new WeakMap,be=new WeakSet,xb=function(){if(c(this,Yt)===void 0)return;let e=Ww(c(this,Yt));e!==void 0&&gr(e,c(this,Yt))},Wn=function(e){var r,o;let n=HU(e);c(this,Yt)!==void 0&&h0(c(this,Yt),n),E(this,be,Ab).call(this),(o=(r=c(this,Vr)).onSettingsChange)==null||o.call(r,n)},Ab=function(){var o,a,s,l,d,u;let e=Et,n=(o=c(this,bt))==null?void 0:o.querySelector("[data-reticle-cycle-label]");n!=null&&(n.textContent=(s=(a=uu.find(p=>p.value===e.outputDetail))==null?void 0:a.label)!=null?s:"Standard");let r=(l=c(this,bt))==null?void 0:l.querySelector("[data-reticle-cycle-dots]");r!=null&&r.replaceChildren(...uu.map(p=>{let f=document.createElement("span");return f.className="reticle-settings-dot",f.setAttribute("data-on",p.value===e.outputDetail?"1":"0"),f})),E(this,be,Ri).call(this,"reactComponents",e.reactComponents),E(this,be,Ri).call(this,"hideUntilRestart",e.hideUntilRestart),E(this,be,Ri).call(this,"showTally",e.showTally),E(this,be,Ri).call(this,"autoOpenChat",e.autoOpenChat),E(this,be,Ri).call(this,"showTimestamps",e.showTimestamps),E(this,be,Ri).call(this,"reduceMotion",e.reduceMotion),E(this,be,Ri).call(this,"ambientGlow",e.ambientGlow),E(this,be,yb).call(this,"clearOnCopy",e.clearOnCopy),E(this,be,yb).call(this,"blockPageInteractions",e.blockPageInteractions);for(let p of(u=(d=c(this,bt))==null?void 0:d.querySelectorAll("[data-reticle-theme]"))!=null?u:[])p instanceof HTMLElement&&p.setAttribute("data-on",p.getAttribute("data-reticle-theme")===e.statusThemeId?"1":"0")},Ri=function(e,n){var o;let r=(o=c(this,bt))==null?void 0:o.querySelector(`[${Rc}="${e}"]`);r instanceof HTMLElement&&(r.setAttribute("data-on",n?"1":"0"),r.setAttribute("aria-checked",n?"true":"false"))},yb=function(e,n){var o;let r=(o=c(this,bt))==null?void 0:o.querySelector(`[data-reticle-check="${e}"]`);r instanceof HTMLElement&&(r.setAttribute("data-on",n?"1":"0"),r.setAttribute("aria-checked",n?"true":"false"),r.textContent=n?"\u2713":"")},x0=function(){var n;let e=(n=c(this,bt))==null?void 0:n.querySelector("[data-reticle-settings-themes]");e!=null&&e.replaceChildren(...vb.map(r=>{let o=document.createElement("button");o.type="button",o.className="reticle-settings-theme",o.setAttribute("data-reticle-theme",r.id),o.title=r.label,o.setAttribute("aria-label",`${r.label} status theme`);for(let s of[r.active,r.idle,r.ended]){let l=document.createElement("span");l.className="reticle-settings-theme-band",l.style.background=s,o.appendChild(l)}let a=document.createElement("span");return a.className="reticle-settings-theme-name",a.textContent=r.label,o.appendChild(a),o.addEventListener("click",s=>{s.stopPropagation(),E(this,be,Wn).call(this,{statusThemeId:r.id})}),o}))}});function WU(){let t=globalThis[gp];return typeof t=="string"&&t.length>0?t:void 0}function zU(t){let n=t.replace(/\\/g,"/").replace(/\/+$/,"").split("/").filter(o=>o.length>0),r=n[n.length-1];return r!==void 0&&r.length>0?r:Mb}function YU(){if(typeof window=="undefined")return;let t=new URLSearchParams(window.location.search).get($n.PROJECT);return t!==null&&t.length>0?t:void 0}function I0(){let t=WU(),e=YU(),n=t!==void 0?zU(t):Mb;if(t===void 0&&e===void 0)return{folder:n};let r={folder:n};return t!==void 0&&(r.root=t),e!==void 0&&(r.projectId=e),r}function C0(){let t=Ee(Y.LAYOUT,pe.HELP),e=Ee(Y.CARET_DOWN,pe.HELP),n=Ee(Y.COPY,pe.HELP);return`<div class="reticle-workspace-wrap">
379
- <button type="button" class="reticle-workspace" ${mh} aria-haspopup="true" aria-expanded="false" title="${VU}">
378
+ </div>`}function $I(t,e){let n=Bu(e.statusThemeId);t.style.setProperty("--reticle-mark-accent",n.active),t.style.setProperty("--reticle-accent",n.active),t.style.setProperty("--reticle-c-active",n.active),t.style.setProperty("--reticle-c-idle",n.idle),t.style.setProperty("--reticle-c-ended",n.ended),t.setAttribute(J0,e.ambientGlow?"1":"0"),e.hideUntilRestart?t.setAttribute(Wc,"1"):t.removeAttribute(Wc),t.setAttribute(Kh,e.showTimestamps?"1":"0"),t.setAttribute(Jr,e.reduceMotion?"1":"0");let r=t.querySelector("[data-reticle-tally]");r instanceof HTMLElement&&!e.showTally&&r.setAttribute("hidden","")}function sm(t,e,n){t.setAttribute(eI,e.blockPageInteractions&&n?"1":"0")}function LT(){return'<div data-reticle-blocker aria-hidden="true"></div>'}var vr,oa,RT,wV,Fu,Jn,vt,el,wT,HI,PI,UI,FI,GI,DV,om,_T,im,jI,xT,rn,Rt,tr,to,be,AT,er,yT,Vi,vT,KI,Gu,tl=S(()=>{"use strict";Et();Tr();Ar();uT();Mu();pT();Zc();D();eo();vr={MINIMAL:"minimal",STANDARD:"standard",VERBOSE:"verbose"},oa={SIGNAL:"signal",TRAFFIC:"traffic",MONO:"mono",NEON:"neon",EMBER:"ember"},RT=[{id:oa.SIGNAL,label:"Signal",active:"#3b82f6",idle:"#eab308",ended:"#ef4444"},{id:oa.TRAFFIC,label:"Traffic",active:"#22c55e",idle:"#eab308",ended:"#ef4444"},{id:oa.MONO,label:"Mono",active:"#fafafa",idle:"#a3a3a3",ended:"#525252"},{id:oa.NEON,label:"Neon",active:"#06b6d4",idle:"#a855f7",ended:"#f43f5e"},{id:oa.EMBER,label:"Ember",active:"#f97316",idle:"#facc15",ended:"#7f1d1d"}],wV={id:oa.SIGNAL,label:"Signal",active:"#3b82f6",idle:"#eab308",ended:"#ef4444"};Fu=[{value:vr.MINIMAL,label:"Minimal"},{value:vr.STANDARD,label:"Standard"},{value:vr.VERBOSE,label:"Verbose"}],Jn={outputDetail:vr.STANDARD,statusThemeId:oa.SIGNAL,ambientGlow:!0,reactComponents:!1,hideUntilRestart:!1,clearOnCopy:!1,blockPageInteractions:!0,showTally:!1,showTimestamps:!0,autoOpenChat:!0,reduceMotion:!1},vt=NT();el={outputDetail:["Output detail","How much a copied run includes."],autoOpenChat:["Open the log automatically","Opens this panel when an agent starts to act in this tab."],showTimestamps:["Show timestamps","Shows how long ago each log row happened."],showTally:["Show pass/fail count","A score pill for this session in the toolbar."],reactComponents:["React component names","Adds component names to copied runs."],blockPageInteractions:["Block page while adding notes","Clicks pin a note instead of using the app."],clearOnCopy:["Clear notes after copying","Starts fresh once your notes are copied."],hideUntilRestart:["Hide until reload","Hides the HUD until this page reloads."],harnessEnabled:["Allow Reticle to drive","Off by default. Lets Run Harness test this project."],reduceMotion:["Reduce motion","Fewer HUD animations."],ambientGlow:["Page glow","Tints the page edges while a session runs."],workspace:["Workspace","The Reticle account this machine is signed in to."]};wT="data-reticle-settings-account",HI="data-reticle-settings-account-row",PI="data-reticle-settings-helptext",UI="data-reticle-settings-harness-row",FI="Let Reticle test this app by itself to find defects, from Run Harness or from your coding agent. Off blocks every run. Set here or in your dashboard \u2014 both write to the same place.",GI="The Harness is not available to this workspace right now: see Plan in your Reticle dashboard.";DV=`Whether this machine is signed in to a Reticle workspace. Press ${ie.SIGNED_OUT} to sign in through your browser.`;om={EMAIL:"Email the founder",EMAIL_TITLE:`Write to ${zx}: a problem, a wish, anything`,CALL:"Book a call",CALL_TITLE:"Pick a time to talk it through"},_T="data-reticle-settings-kill",im={LABEL:"Kill Reticle",ARMED:"Click again to kill Reticle",WARNING:"Disconnects Reticle from this page: no HUD, no agent, nothing recorded. To bring it back, restart your dev server or reload the page."},jI="data-reticle-sdk-version",xT={UNKNOWN:"Reticle SDK version unknown",KNOWN:t=>`Reticle SDK ${t}`};Gu=class{constructor(e={}){b(this,be);b(this,rn);b(this,Rt);b(this,tr);b(this,to);f(this,to,e),vt=NT()}contains(e){var n;return((n=c(this,Rt))==null?void 0:n.contains(e))===!0}mount(e){var s,a,l,d,u,p,h;f(this,rn,e);let n=e.querySelector(`[${C}]`);f(this,Rt,n instanceof HTMLElement?n:void 0),(s=c(this,Rt))==null||s.addEventListener("pointerdown",m=>{m.stopPropagation()});let r=e.querySelector(`[${Ou}]`);f(this,tr,r instanceof HTMLElement?r:void 0);let o=e.querySelector(`[${sT}]`);if(o instanceof HTMLElement&&Qb(o,Q.REMOVE,he.MIN),c(this,tr)!==void 0){let m=c(this,tr).querySelector(".reticle-nav-label");Qb(c(this,tr),Q.GEAR,he.TOOLBAR),m!==null&&c(this,tr).append(m),c(this,tr).addEventListener("click",g=>{g.stopPropagation(),this.open()})}(a=e.querySelector('[data-reticle-settings-cycle="outputDetail"]'))==null||a.addEventListener("click",m=>{m.stopPropagation();let g=Fu.findIndex(_=>_.value===vt.outputDetail),T=Fu[(g+1)%Fu.length];T!==void 0&&E(this,be,er).call(this,{outputDetail:T.value})});for(let m of e.querySelectorAll(".reticle-settings-help"))m.setAttribute("aria-expanded","false"),m.addEventListener("click",g=>{var N;g.stopPropagation();let T=m.closest(".reticle-settings-row");if(T===null)return;let _=T.querySelector(`[${PI}]`);if(_!==null){_.remove(),m.setAttribute("aria-expanded","false");return}let A=document.createElement("p");A.className="reticle-settings-helptext",A.setAttribute(PI,""),A.textContent=(N=m.getAttribute("title"))!=null?N:"",T.appendChild(A),m.setAttribute("aria-expanded","true")});for(let m of e.querySelectorAll(`[${Kc}]`)){let g=()=>{var _,A,N,y;if(!(m instanceof HTMLElement))return;let T=m.getAttribute(Kc);if(T==="harnessEnabled"){if(m.getAttribute("aria-disabled")==="true")return;let v=m.getAttribute("aria-checked")!=="true";m.setAttribute("aria-checked",v?"true":"false"),(A=(_=c(this,to)).onHarness)==null||A.call(_,v)}else if(T==="reactComponents")E(this,be,er).call(this,{reactComponents:!vt.reactComponents});else if(T==="hideUntilRestart"){let v=!vt.hideUntilRestart;E(this,be,er).call(this,{hideUntilRestart:v}),v&&((y=(N=c(this,to)).onHideUntilRestart)==null||y.call(N))}else T==="showTally"?E(this,be,er).call(this,{showTally:!vt.showTally}):T==="autoOpenChat"?E(this,be,er).call(this,{autoOpenChat:!vt.autoOpenChat}):T==="showTimestamps"?E(this,be,er).call(this,{showTimestamps:!vt.showTimestamps}):T==="reduceMotion"?E(this,be,er).call(this,{reduceMotion:!vt.reduceMotion}):T==="ambientGlow"&&E(this,be,er).call(this,{ambientGlow:!vt.ambientGlow})};m.addEventListener("click",T=>{T.stopPropagation(),g()}),m.addEventListener("keydown",T=>{T instanceof KeyboardEvent&&(T.key===" "||T.key==="Enter")&&(T.preventDefault(),T.stopPropagation(),g())})}for(let m of e.querySelectorAll("[data-reticle-check]")){let g=()=>{if(!(m instanceof HTMLElement))return;let _=m.getAttribute("data-reticle-check");_==="clearOnCopy"?E(this,be,er).call(this,{clearOnCopy:!vt.clearOnCopy}):_==="blockPageInteractions"&&E(this,be,er).call(this,{blockPageInteractions:!vt.blockPageInteractions})},T=m.closest("[data-reticle-check-row]");T==null||T.addEventListener("click",_=>{_.stopPropagation(),!(_.target instanceof HTMLElement&&_.target.classList.contains("reticle-settings-help"))&&g()}),m.addEventListener("keydown",_=>{_ instanceof KeyboardEvent&&(_.key===" "||_.key==="Enter")&&(_.preventDefault(),g())})}(l=e.querySelector("[data-reticle-settings-mcp]"))==null||l.addEventListener("click",m=>{m.stopPropagation(),window.open(tI,"_blank","noopener,noreferrer")}),(d=e.querySelector("[data-reticle-settings-reset]"))==null||d.addEventListener("click",m=>{m.stopPropagation();let g=e.querySelector(`[${M}]`);g instanceof HTMLElement&&Lu(g)}),(u=e.querySelector(`[${_T}]`))==null||u.addEventListener("click",m=>{var _,A;m.stopPropagation();let g=m.currentTarget;if(!(g instanceof HTMLElement))return;if(g.getAttribute("data-armed")==="1"){(A=(_=c(this,to)).onKill)==null||A.call(_);return}g.setAttribute("data-armed","1");let T=g.querySelector("[data-reticle-kill-label]");T!==null&&(T.textContent=im.ARMED)}),o==null||o.addEventListener("click",m=>{m.stopPropagation(),this.close()}),E(this,be,KI).call(this),E(this,be,yT).call(this),$I(e,vt),(h=(p=c(this,to)).onSettingsChange)==null||h.call(p,vt)}paintHarness(e){let n=c(this,Rt);n!==void 0&&VI(n,e)}teardown(){f(this,rn,void 0),f(this,Rt,void 0),f(this,tr,void 0)}isOpen(){var e;return((e=c(this,rn))==null?void 0:e.getAttribute(Qe))==="1"}open(){var e,n,r,o;c(this,rn)!==void 0&&((n=(e=c(this,to)).onBeforeOpen)==null||n.call(e),c(this,rn).setAttribute(Qe,"1"),(r=c(this,Rt))==null||r.setAttribute("aria-hidden","false"),(o=c(this,tr))==null||o.setAttribute("data-active","1"),E(this,be,AT).call(this))}close(){var n,r,o;if(c(this,rn)===void 0)return;let e=(n=c(this,Rt))==null?void 0:n.querySelector(`[${_T}]`);if(e instanceof HTMLElement){e.removeAttribute("data-armed");let s=e.querySelector("[data-reticle-kill-label]");s!==null&&(s.textContent=im.LABEL)}c(this,rn).setAttribute(Qe,"0"),(r=c(this,Rt))==null||r.setAttribute("aria-hidden","true"),(o=c(this,tr))==null||o.setAttribute("data-active","0"),E(this,be,AT).call(this)}toggle(){this.isOpen()?this.close():this.open()}};rn=new WeakMap,Rt=new WeakMap,tr=new WeakMap,to=new WeakMap,be=new WeakSet,AT=function(){if(c(this,rn)===void 0)return;let e=gI(c(this,rn));e!==void 0&&yr(e,c(this,rn))},er=function(e){var r,o;let n=LV(e);c(this,rn)!==void 0&&$I(c(this,rn),n),E(this,be,yT).call(this),(o=(r=c(this,to)).onSettingsChange)==null||o.call(r,n)},yT=function(){var o,s,a,l,d,u;let e=vt,n=(o=c(this,Rt))==null?void 0:o.querySelector("[data-reticle-cycle-label]");n!=null&&(n.textContent=(a=(s=Fu.find(p=>p.value===e.outputDetail))==null?void 0:s.label)!=null?a:"Standard");let r=(l=c(this,Rt))==null?void 0:l.querySelector("[data-reticle-cycle-dots]");r!=null&&r.replaceChildren(...Fu.map(p=>{let h=document.createElement("span");return h.className="reticle-settings-dot",h.setAttribute("data-on",p.value===e.outputDetail?"1":"0"),h})),E(this,be,Vi).call(this,"reactComponents",e.reactComponents),E(this,be,Vi).call(this,"hideUntilRestart",e.hideUntilRestart),E(this,be,Vi).call(this,"showTally",e.showTally),E(this,be,Vi).call(this,"autoOpenChat",e.autoOpenChat),E(this,be,Vi).call(this,"showTimestamps",e.showTimestamps),E(this,be,Vi).call(this,"reduceMotion",e.reduceMotion),E(this,be,Vi).call(this,"ambientGlow",e.ambientGlow),E(this,be,vT).call(this,"clearOnCopy",e.clearOnCopy),E(this,be,vT).call(this,"blockPageInteractions",e.blockPageInteractions);for(let p of(u=(d=c(this,Rt))==null?void 0:d.querySelectorAll("[data-reticle-theme]"))!=null?u:[])p instanceof HTMLElement&&p.setAttribute("data-on",p.getAttribute("data-reticle-theme")===e.statusThemeId?"1":"0")},Vi=function(e,n){var o;let r=(o=c(this,Rt))==null?void 0:o.querySelector(`[${Kc}="${e}"]`);r instanceof HTMLElement&&(r.setAttribute("data-on",n?"1":"0"),r.setAttribute("aria-checked",n?"true":"false"))},vT=function(e,n){var o;let r=(o=c(this,Rt))==null?void 0:o.querySelector(`[data-reticle-check="${e}"]`);r instanceof HTMLElement&&(r.setAttribute("data-on",n?"1":"0"),r.setAttribute("aria-checked",n?"true":"false"),r.textContent=n?"\u2713":"")},KI=function(){var n;let e=(n=c(this,Rt))==null?void 0:n.querySelector("[data-reticle-settings-themes]");e!=null&&e.replaceChildren(...RT.map(r=>{let o=document.createElement("button");o.type="button",o.className="reticle-settings-theme",o.setAttribute("data-reticle-theme",r.id),o.title=r.label,o.setAttribute("aria-label",`${r.label} status theme`);for(let a of[r.active,r.idle,r.ended]){let l=document.createElement("span");l.className="reticle-settings-theme-band",l.style.background=a,o.appendChild(l)}let s=document.createElement("span");return s.className="reticle-settings-theme-name",s.textContent=r.label,o.appendChild(s),o.addEventListener("click",a=>{a.stopPropagation(),E(this,be,er).call(this,{statusThemeId:r.id})}),o}))}});function FV(){let t=globalThis[Zp];return typeof t=="string"&&t.length>0?t:void 0}function GV(t){let n=t.replace(/\\/g,"/").replace(/\/+$/,"").split("/").filter(o=>o.length>0),r=n[n.length-1];return r!==void 0&&r.length>0?r:PT}function BV(){if(typeof window=="undefined")return;let t=new URLSearchParams(window.location.search).get(Gn.PROJECT);return t!==null&&t.length>0?t:void 0}function JI(){let t=FV(),e=BV(),n=t!==void 0?GV(t):PT;if(t===void 0&&e===void 0)return{folder:n};let r={folder:n};return t!==void 0&&(r.root=t),e!==void 0&&(r.projectId=e),r}function eC(){let t=Ee(Q.LAYOUT,he.HELP),e=Ee(Q.CARET_DOWN,he.HELP),n=Ee(Q.COPY,he.HELP);return`<div class="reticle-workspace-wrap">
379
+ <button type="button" class="reticle-workspace" ${am} aria-haspopup="true" aria-expanded="false" title="${$V}">
380
380
  <span class="reticle-workspace-icon" aria-hidden="true">${t}</span>
381
- <span class="reticle-workspace-k">${BU}</span>
382
- <span class="reticle-workspace-name" ${N0}>${Mb}</span>
381
+ <span class="reticle-workspace-k">${PV}</span>
382
+ <span class="reticle-workspace-name" ${qI}>${PT}</span>
383
383
  <span class="reticle-workspace-caret" aria-hidden="true">${e}</span>
384
384
  </button>
385
- <div class="reticle-workspace-menu" ${R0} role="region" aria-label="${Lb}" aria-hidden="true" hidden>
385
+ <div class="reticle-workspace-menu" ${XI} role="region" aria-label="${kT}" aria-hidden="true" hidden>
386
386
  <div class="reticle-workspace-menu-head">
387
- <div class="reticle-workspace-menu-title">${Lb}</div>
387
+ <div class="reticle-workspace-menu-title">${kT}</div>
388
388
  <div class="reticle-workspace-menu-actions">
389
- <button type="button" class="reticle-workspace-copy" ${kb} title="${y0}" aria-label="${y0}">${n}</button>
389
+ <button type="button" class="reticle-workspace-copy" ${DT} title="${zI}" aria-label="${zI}">${n}</button>
390
390
  </div>
391
391
  </div>
392
392
  <div class="reticle-workspace-menu-row"><span class="reticle-workspace-menu-k">Folder</span><span class="reticle-workspace-menu-v" data-reticle-workspace-folder></span></div>
393
- <div class="reticle-workspace-menu-row"><span class="reticle-workspace-menu-k">Path</span><span class="reticle-workspace-menu-v reticle-workspace-menu-path" ${w0}></span></div>
394
- <div class="reticle-workspace-menu-row" data-reticle-workspace-project-row hidden><span class="reticle-workspace-menu-k">${jU}</span><span class="reticle-workspace-menu-v" ${O0}></span></div>
393
+ <div class="reticle-workspace-menu-row"><span class="reticle-workspace-menu-k">Path</span><span class="reticle-workspace-menu-v reticle-workspace-menu-path" ${ZI}></span></div>
394
+ <div class="reticle-workspace-menu-row" data-reticle-workspace-project-row hidden><span class="reticle-workspace-menu-k">${HV}</span><span class="reticle-workspace-menu-v" ${QI}></span></div>
395
395
  </div>
396
- </div>`}function v0(t){var p,f;let e=I0(),n=t.querySelector(".reticle-workspace-wrap");if(n instanceof HTMLElement){let m=e.root!==void 0||e.projectId!==void 0;n.toggleAttribute("hidden",!m)}let r=t.querySelector(`[${mh}] [${N0}]`);r instanceof HTMLElement&&(r.textContent=e.folder);let o=t.querySelector("[data-reticle-workspace-folder]");o instanceof HTMLElement&&(o.textContent=e.folder);let a=t.querySelector(`[${w0}]`);a instanceof HTMLElement&&(a.textContent=(p=e.root)!=null?p:"-",a.title=(f=e.root)!=null?f:"");let s=t.querySelector(`[${O0}]`),l=t.querySelector("[data-reticle-workspace-project-row]"),d=t.querySelector(`[${kb}]`);e.projectId!==void 0?(l==null||l.removeAttribute("hidden"),s instanceof HTMLElement&&(s.textContent=e.projectId)):(l==null||l.setAttribute("hidden",""),s instanceof HTMLElement&&(s.textContent="")),d instanceof HTMLButtonElement&&(d.disabled=e.root===void 0);let u=t.querySelector(`[${mh}]`);u instanceof HTMLElement&&e.root!==void 0&&(u.title=`${Lb}: ${e.root}`)}function L0(t){let e=new AbortController;v0(t);let n=t.querySelector(`[${mh}]`),r=t.querySelector(`[${R0}]`),o=t.querySelector(`[${kb}]`);if(!(n instanceof HTMLElement)||!(r instanceof HTMLElement))return()=>{};let a=()=>{r.setAttribute("aria-hidden","true"),r.setAttribute("hidden",""),n.setAttribute("aria-expanded","false")},s=()=>{v0(t),r.removeAttribute("hidden"),r.setAttribute("aria-hidden","false"),n.setAttribute("aria-expanded","true")},l=()=>{r.getAttribute("aria-hidden")==="true"||r.hasAttribute("hidden")?s():a()},d=g=>{g.stopPropagation(),l()},u=g=>{var A;let T=g.target;if(!(T instanceof Element))return;let _=T.closest(`[${wt}]`);if(_===null)return;g.stopPropagation(),(A=navigator.clipboard)==null||A.writeText(te.SIGNIN_COMMAND).catch(()=>{});let y=_.textContent;_.textContent=te.COPIED,setTimeout(()=>{_.textContent=y},GU)};r.addEventListener("click",u);let p=g=>{let T=g.target;T instanceof Node&&(n.contains(T)||r.contains(T)||a())},f=g=>{g.key==="Escape"&&(r.getAttribute("aria-hidden")==="true"||r.hasAttribute("hidden")||(g.preventDefault(),g.stopPropagation(),a()))},m=g=>{var _;g.stopPropagation();let T=I0().root;if(T!==void 0&&((_=navigator.clipboard)==null||_.writeText(T),o instanceof HTMLButtonElement)){let y=o.title;o.title=KU,window.setTimeout(()=>{o.title=y},1200)}};return n.addEventListener("click",d),r.addEventListener("pointerdown",g=>g.stopPropagation()),o==null||o.addEventListener("click",m),document.addEventListener("pointerdown",p,{signal:e.signal}),document.addEventListener("keydown",f,{signal:e.signal}),()=>{n.removeEventListener("click",d),o==null||o.removeEventListener("click",m),e.abort()}}function k0(t,e,n,r={}){let o=t.querySelector(`[${kc}]`);o instanceof HTMLElement&&du(o,d0(e,n));let a=t.querySelector(`[${Db}]`);if(!(a instanceof HTMLElement))return;let s=!(o instanceof HTMLElement);du(a,Dc(e,{...r,dashboardUrl:n},s))}var mh,R0,N0,w0,O0,kb,Db,GU,Lb,BU,VU,jU,y0,KU,Mb,$b=S(()=>{"use strict";H();ur();Br();mh="data-reticle-workspace-btn",R0="data-reticle-workspace-menu",N0="data-reticle-workspace-name",w0="data-reticle-workspace-path",O0="data-reticle-workspace-project",kb="data-reticle-workspace-copy",Db="data-reticle-toolbar-account",GU=1200,Lb="Workspace",BU="Project",VU="The project folder this page is served from, which Reticle reports to. Click for its path.",jU="Project",y0="Copy path",KU="Copied",Mb="This page"});function $0(t){return typeof t=="string"&&XU.has(t)?t:tn.PENDING}function hu(t){return typeof t=="string"?t:""}function Hb(t){return Array.isArray(t)?t.filter(e=>typeof e=="object"&&e!==null):[]}function F0(t){let e=Hb(t.lanes).map(r=>({id:hu(r.id),journeys:Hb(r.journeys).map(o=>({id:hu(o.id),title:hu(o.title),...typeof o.persona=="string"?{persona:o.persona}:{},waitsOn:Array.isArray(o.waitsOn)?o.waitsOn.map(hu):[],status:$0(o.status),steps:Hb(o.steps).map(a=>({label:hu(a.label),status:$0(a.status)}))}))}));return e.length===0?void 0:{parallel:typeof t.parallel=="number"?t.parallel:1,lanes:e}}function Tt(t,e,n){let r=document.createElement(t);return r.className=e,n!==void 0&&(r.textContent=n),r}var P0,D0,Pb,H0,Pc,M0,U0,XU,Hc,gu,Ua,Uc,ko,mu,G0,gh,Eh=S(()=>{"use strict";H();P0="data-reticle-plan",D0="data-reticle-plan-close",Pb="data-reticle-plan-journey",H0=`<div ${P0} class="reticle-plan" hidden></div>`,Pc={TITLE:"Harness plan",CLOSE:"Hide the plan",WAITS:"waits on",AT_ONCE:"at once",LANE:"Lane"},M0={[tn.PENDING]:"\u25CB",[tn.RUNNING]:"\u25D0",[tn.PASSED]:"\u2713",[tn.FAILED]:"\u2717",[tn.BLOCKED]:"\u2298",[tn.NOT_TAKEN]:"\u2013",[tn.UNDECIDED]:"?"},U0=`
396
+ </div>`}function YI(t){var p,h;let e=JI(),n=t.querySelector(".reticle-workspace-wrap");if(n instanceof HTMLElement){let m=e.root!==void 0||e.projectId!==void 0;n.toggleAttribute("hidden",!m)}let r=t.querySelector(`[${am}] [${qI}]`);r instanceof HTMLElement&&(r.textContent=e.folder);let o=t.querySelector("[data-reticle-workspace-folder]");o instanceof HTMLElement&&(o.textContent=e.folder);let s=t.querySelector(`[${ZI}]`);s instanceof HTMLElement&&(s.textContent=(p=e.root)!=null?p:"-",s.title=(h=e.root)!=null?h:"");let a=t.querySelector(`[${QI}]`),l=t.querySelector("[data-reticle-workspace-project-row]"),d=t.querySelector(`[${DT}]`);e.projectId!==void 0?(l==null||l.removeAttribute("hidden"),a instanceof HTMLElement&&(a.textContent=e.projectId)):(l==null||l.setAttribute("hidden",""),a instanceof HTMLElement&&(a.textContent="")),d instanceof HTMLButtonElement&&(d.disabled=e.root===void 0);let u=t.querySelector(`[${am}]`);u instanceof HTMLElement&&e.root!==void 0&&(u.title=`${kT}: ${e.root}`)}function tC(t){let e=new AbortController;YI(t);let n=t.querySelector(`[${am}]`),r=t.querySelector(`[${XI}]`),o=t.querySelector(`[${DT}]`);if(!(n instanceof HTMLElement)||!(r instanceof HTMLElement))return()=>{};let s=()=>{r.setAttribute("aria-hidden","true"),r.setAttribute("hidden",""),n.setAttribute("aria-expanded","false")},a=()=>{YI(t),r.removeAttribute("hidden"),r.setAttribute("aria-hidden","false"),n.setAttribute("aria-expanded","true")},l=()=>{r.getAttribute("aria-hidden")==="true"||r.hasAttribute("hidden")?a():s()},d=g=>{g.stopPropagation(),l()},u=g=>{var N;let T=g.target;if(!(T instanceof Element))return;let _=T.closest(`[${Ut}]`);if(_===null)return;g.stopPropagation(),(N=navigator.clipboard)==null||N.writeText(ie.SIGNIN_COMMAND).catch(()=>{});let A=_.textContent;_.textContent=ie.COPIED,setTimeout(()=>{_.textContent=A},MV)};r.addEventListener("click",u);let p=g=>{let T=g.target;T instanceof Node&&(n.contains(T)||r.contains(T)||s())},h=g=>{g.key==="Escape"&&(r.getAttribute("aria-hidden")==="true"||r.hasAttribute("hidden")||(g.preventDefault(),g.stopPropagation(),s()))},m=g=>{var _;g.stopPropagation();let T=JI().root;if(T!==void 0&&((_=navigator.clipboard)==null||_.writeText(T),o instanceof HTMLButtonElement)){let A=o.title;o.title=UV,window.setTimeout(()=>{o.title=A},1200)}};return n.addEventListener("click",d),r.addEventListener("pointerdown",g=>g.stopPropagation()),o==null||o.addEventListener("click",m),document.addEventListener("pointerdown",p,{signal:e.signal}),document.addEventListener("keydown",h,{signal:e.signal}),()=>{n.removeEventListener("click",d),o==null||o.removeEventListener("click",m),e.abort()}}function nC(t,e,n,r={}){let o=t.querySelector(`[${Qc}]`);o instanceof HTMLElement&&Uu(o,kI(e,n));let s=t.querySelector(`[${MT}]`);if(!(s instanceof HTMLElement))return;let a=!(o instanceof HTMLElement);Uu(s,Jc(e,{...r,dashboardUrl:n},a))}var am,XI,qI,ZI,QI,DT,MT,MV,kT,PV,$V,HV,zI,UV,PT,$T=S(()=>{"use strict";D();Tr();eo();am="data-reticle-workspace-btn",XI="data-reticle-workspace-menu",qI="data-reticle-workspace-name",ZI="data-reticle-workspace-path",QI="data-reticle-workspace-project",DT="data-reticle-workspace-copy",MT="data-reticle-toolbar-account",MV=1200,kT="Workspace",PV="Project",$V="The project folder this page is served from, which Reticle reports to. Click for its path.",HV="Project",zI="Copy path",UV="Copied",PT="This page"});function iC(t){return typeof t=="string"&&VV.has(t)?t:dn.PENDING}function Vu(t){return typeof t=="string"?t:""}function UT(t){return Array.isArray(t)?t.filter(e=>typeof e=="object"&&e!==null):[]}function lC(t){let e=UT(t.lanes).map(r=>({id:Vu(r.id),journeys:UT(r.journeys).map(o=>({id:Vu(o.id),title:Vu(o.title),...typeof o.persona=="string"?{persona:o.persona}:{},waitsOn:Array.isArray(o.waitsOn)?o.waitsOn.map(Vu):[],status:iC(o.status),steps:UT(o.steps).map(s=>({label:Vu(s.label),status:iC(s.status)}))}))}));return e.length===0?void 0:{parallel:typeof t.parallel=="number"?t.parallel:1,lanes:e}}function Nt(t,e,n){let r=document.createElement(t);return r.className=e,n!==void 0&&(r.textContent=n),r}var sC,rC,HT,aC,nl,oC,cC,VV,rl,Ku,ia,ol,Xo,ju,dC,cm,lm=S(()=>{"use strict";D();sC="data-reticle-plan",rC="data-reticle-plan-close",HT="data-reticle-plan-journey",aC=`<div ${sC} class="reticle-plan" hidden></div>`,nl={TITLE:"Harness plan",CLOSE:"Hide the plan",WAITS:"waits on",AT_ONCE:"at once",LANE:"Lane"},oC={[dn.PENDING]:"\u25CB",[dn.RUNNING]:"\u25D0",[dn.PASSED]:"\u2713",[dn.FAILED]:"\u2717",[dn.BLOCKED]:"\u2298",[dn.NOT_TAKEN]:"\u2013",[dn.UNDECIDED]:"?"},cC=`
397
397
  [data-reticle-page-panel="harness"] .reticle-plan{flex:none;margin:0 10px 8px;padding:8px 10px;border:1px solid var(--reticle-hud-border);border-radius:10px;background:rgba(255,255,255,.03);}
398
398
  [data-reticle-page-panel="harness"] .reticle-plan[hidden]{display:none;}
399
399
  [data-reticle-page-panel="harness"] .reticle-plan-head{display:flex;align-items:center;gap:8px;margin-bottom:6px;font-size:var(--reticle-hud-size-xs);color:var(--reticle-hud-text-muted);}
@@ -418,7 +418,7 @@ ${ge("pop")} button[data-send]:disabled{opacity:.4;cursor:not-allowed;}
418
418
  [data-reticle-page-panel="harness"] .reticle-plan-steps{margin:4px 0 0 18px;display:flex;flex-direction:column;gap:2px;}
419
419
  [data-reticle-page-panel="harness"] .reticle-plan-step{display:flex;gap:6px;color:var(--reticle-hud-text-muted);font-size:11px;min-width:0;}
420
420
  [data-reticle-page-panel="harness"] .reticle-plan-step span:last-child{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;}
421
- `,XU=new Set(Object.values(tn));gh=class{constructor(){b(this,ko);b(this,Hc);b(this,gu);b(this,Ua,!1);b(this,Uc,new Map)}mount(e){var n,r;h(this,Hc,(n=e.querySelector(`[${P0}]`))!=null?n:void 0),(r=c(this,Hc))==null||r.addEventListener("click",o=>{let a=o.target;if(!(a instanceof Element))return;if(a.closest(`[${D0}]`)!==null){h(this,Ua,!0),E(this,ko,mu).call(this);return}let s=a.closest(`[${Pb}]`),l=s==null?void 0:s.getAttribute(Pb);l!=null&&(c(this,Uc).set(l,(s==null?void 0:s.getAttribute("aria-expanded"))!=="true"),E(this,ko,mu).call(this))}),E(this,ko,mu).call(this)}paint(e){e.lanes.every(r=>r.journeys.every(o=>tn.PENDING===o.status))&&(h(this,Ua,!1),c(this,Uc).clear()),h(this,gu,e),E(this,ko,mu).call(this)}};Hc=new WeakMap,gu=new WeakMap,Ua=new WeakMap,Uc=new WeakMap,ko=new WeakSet,mu=function(){let e=c(this,Hc),n=c(this,gu);if(e===void 0||(e.replaceChildren(),e.hidden=n===void 0||c(this,Ua),n===void 0||c(this,Ua)))return;let r=n.lanes.flatMap(d=>d.journeys),o=r.filter(d=>tn.PASSED===d.status).length,a=Tt("div","reticle-plan-head");a.append(Tt("strong","",Pc.TITLE),Tt("span","",`${String(o)} of ${String(r.length)} passed \xB7 ${String(n.lanes.length)} lane(s)`+(1<n.parallel?`, ${String(n.parallel)} ${Pc.AT_ONCE}`:"")));let s=Tt("button","reticle-plan-close","\xD7");s.setAttribute("type","button"),s.setAttribute(D0,""),s.setAttribute("aria-label",Pc.CLOSE),s.setAttribute("title",Pc.CLOSE),a.append(s);let l=Tt("div","reticle-plan-lanes");for(let d of n.lanes){let u=Tt("div","reticle-plan-lane"),p=Tt("span","reticle-plan-lane-name",d.id);p.setAttribute("title",`${Pc.LANE} ${d.id}`);let f=Tt("div","reticle-plan-lane-journeys");for(let m of d.journeys)f.append(E(this,ko,G0).call(this,d.id,m));u.append(p,f),l.append(u)}e.append(a,l)},G0=function(e,n){var d;let r=`${e}/${n.id}`,o=(d=c(this,Uc).get(r))!=null?d:tn.RUNNING===n.status||tn.FAILED===n.status,a=Tt("button","reticle-plan-journey");a.setAttribute("type","button"),a.setAttribute(Pb,r),a.setAttribute("data-status",n.status),a.setAttribute("aria-expanded",String(o));let s=Tt("span","reticle-plan-row");s.append(Tt("span","reticle-plan-glyph",M0[n.status]),Tt("b","",n.title)),a.append(s);let l=[n.persona,0<n.waitsOn.length?`${Pc.WAITS} ${n.waitsOn.join(", ")}`:void 0].filter(u=>u!==void 0&&0<u.length);if(0<l.length&&a.append(Tt("span","reticle-plan-meta",l.join(" \xB7 "))),o&&0<n.steps.length){let u=Tt("span","reticle-plan-steps");for(let p of n.steps){let f=Tt("span","reticle-plan-step");f.setAttribute("data-status",p.status),f.append(Tt("span","reticle-plan-glyph",M0[p.status]),Tt("span","",p.label)),u.append(f)}a.append(u)}return a}});function Th(t){return Fb.find(e=>e.id===t)}function B0(t,e){let n=Th(t);if(n!==void 0)return`${n.label}: ${n.hint}`;let r=e.trim();return r.length===0?void 0:r}function Gb(t){var e,n;return(n=(e=Th(t))==null?void 0:e.label)!=null?n:Fa.CUSTOM_SHORT}function V0(t,e=!1){var o,a;let n=[...Fb.map(s=>({id:s.id,label:s.label,hint:s.hint})),{id:Ub,label:Fa.CUSTOM,hint:Fa.CUSTOM_HINT}].map(s=>`<option value="${s.id}" title="${Z(s.hint)}"${s.id===t?" selected":""}>${Z(s.label)}</option>`).join(""),r=Z((a=(o=Th(t))==null?void 0:o.hint)!=null?a:Fa.CUSTOM_HINT);return`<label class="reticle-harness-as" for="${Fc}">${Fa.LABEL}</label><select id="${Fc}" data-reticle-harness-persona-pick class="reticle-harness-persona" title="${r}" aria-describedby="${Fc}-hint"${e?" disabled":""}>${n}</select><span id="${Fc}-hint" class="reticle-sr">${r}</span>`}function Bb(t,e=!1){return Ub===t?`<input type="text" id="${qU}" data-reticle-harness-persona class="reticle-harness-persona" aria-label="${Fa.CUSTOM_HINT}" placeholder="${Fa.CUSTOM_PLACEHOLDER}"${e?" disabled":""}>`:""}function Vb(t){return t!=null&&(Ub===t||Th(t))?t:void 0}function j0(t){var e;try{return(e=Vb(localStorage.getItem(`${Dp}${t!=null?t:""}`)))!=null?e:bh}catch{return bh}}function K0(t,e){try{localStorage.setItem(`${Dp}${t!=null?t:""}`,e)}catch{}}var Ub,Fb,bh,Fa,Fc,qU,jb=S(()=>{"use strict";Lr();Pa();Ub="custom",Fb=[{id:"first-time",label:"First-time visitor",hint:"starts from the first page, reads the labels and follows the obvious path"},{id:"power-user",label:"Returning power user",hint:"goes straight to the main task, takes shortcuts and repeats it quickly"},{id:"phone",label:"On a phone, slow connection",hint:"small-screen habits: taps, waits on loading, retries when nothing seems to happen"},{id:"keyboard",label:"Keyboard only",hint:"Tab, Enter and Escape only: focus order, traps and controls it cannot reach"},{id:"careless",label:"Careless user (bad and unexpected input)",hint:"empty fields, wrong formats, very long text, double submits, going back mid-flow"},{id:"admin",label:"Admin / settings",hint:"changes settings and permissions, then checks they stick after a reload"}],bh=Fb[0].id,Fa={LABEL:"As",CUSTOM:"Custom\u2026",CUSTOM_SHORT:"Custom",CUSTOM_HINT:"Describe who to be or what to try, in your own words.",CUSTOM_PLACEHOLDER:"e.g. a first-time shopper paying by card"},Fc="reticle-harness-persona-pick",qU="reticle-harness-persona"});function z0(t,e){var s,l,d,u;let n=ZU(t),r=e==null?void 0:e.gate;if(r===void 0)return n;let o=(s=r.prompt)!=null?s:n==null?void 0:n.prompt,a=r.unlocked?void 0:(l=r.reason)!=null?l:n==null?void 0:n.reason;return{percent:(u=(d=r.percent)!=null?d:n==null?void 0:n.percent)!=null?u:0,unlocked:r.unlocked,...a===void 0?{}:{reason:a},...o===void 0?{}:{prompt:o}}}function ZU(t){let e=t==null?void 0:t.harnessGate;if(typeof e!="object"||e===null)return;let n=e,r=n.percent,o=n.unlocked;if(typeof r!="number"||typeof o!="boolean")return;let a=n.reason,s=t==null?void 0:t.prompt;return{percent:Math.round(r),unlocked:o,...typeof a=="string"?{reason:a}:{},...typeof s=="string"?{prompt:s}:{}}}function X0(t){return t===void 0||Ai(t)?"":hb(t)}function QU(t,e){if(t.kind===void 0)return Ga(`${Do(re.NO_CREDITS)}${Eu(e,re.MORE)}`);let n=lh(t),r=n.action!==void 0?Eu(e,`${n.action} \u2197`):nt.TRIAL===t.kind?Eu(e,re.PLAN):"";return Sh(`${Do(n.said)}${r}`)}function JU(t){if(t.starting===!0)return re.STARTING;let e=t.gate;if(e!==void 0&&!e.unlocked&&e.reason!==void 0)return re.footSetup(e.percent);let n=t.config;if(n===void 0)return re.FOOT_LINK;if(n.credits!==void 0&&Ai(n.credits))return re.FOOT_NO_CREDITS;if(!n.harnessEntitled)return re.FOOT_NOT_ENTITLED;if(n.providerReady===!1)return re.FOOT_NO_PROVIDER;let r=n.credits;return r===void 0?"":re.creditsLeft(Math.max(0,r.limit-r.used),r.daysLeft)}function eF(t){let e=t.config;return e===void 0||t.gate!==void 0&&!t.gate.unlocked&&t.gate.reason!==void 0||e.credits!==void 0&&Ai(e.credits)?!1:e.harnessEntitled&&e.providerReady!==!1}function q0(t){var a,s;if(t.account===void 0||!t.account.signedIn)return"";if(t.drive!==void 0&&t.canDrive)return Ga(`<button type="button" ${_h} class="reticle-harness-open"><span class="reticle-harness-name">${re.NAME}</span><span class="reticle-harness-state">${Z(re.driving(t.startedAs===void 0?void 0:Gb(t.startedAs),t.drive.steps))}</span><span class="reticle-harness-chev" aria-hidden="true">\u203A</span></button>${Y0}`);let e=((a=t.config)==null?void 0:a.harnessEnabled)===!0,n=(s=t.config)==null?void 0:s.credits,r=n===void 0?"":` title="${Z(hb(n))}"`,o=eF(t)?`<button type="button" role="switch" ${Wb} class="reticle-harness-toggle" aria-checked="${String(e)}" aria-label="${re.TOGGLE}"><span class="reticle-harness-knob"></span></button>`:"";return Ga(`<button type="button" ${_h} class="reticle-harness-open"${r}><span class="reticle-harness-name">${re.NAME}</span><span class="reticle-harness-state">${Z(JU(t))}</span><span class="reticle-harness-chev" aria-hidden="true">\u203A</span></button>${o}`)}function Z0(t){if(t.account===void 0)return"";if(!t.account.signedIn)return Sh(`${Do(re.SIGNED_OUT)}<button type="button" ${wt} class="reticle-harness-link">${re.SIGN_IN}</button>`);if(t.drive!==void 0&&t.canDrive)return W0(Do(re.driving(t.startedAs===void 0?void 0:Gb(t.startedAs),t.drive.steps)),Y0)+Bb(t.pick,!0);let e=t.gate;if(e!==void 0&&!e.unlocked&&e.reason!==void 0)return Sh(`${Do(Z(e.reason))}${e.prompt===void 0?"":`<button type="button" ${zb} class="reticle-harness-link">${re.COPY_PROMPT}</button>`}`);let n=t.config;if(n===void 0)return Sh(`${Do(re.UNLINKED)}<button type="button" ${bu} class="reticle-harness-run"${t.linking===!0?" disabled":""}>${t.linking===!0?re.LINKING:re.LINK}</button>`);if(n.credits!==void 0&&Ai(n.credits))return QU(n.credits,t.planUrl);if(!n.harnessEntitled)return Ga(`${Do(re.NOT_ENTITLED)}${Eu(t.planUrl,re.PLANS)}`);if(n.providerReady===!1)return Ga(`${Do(re.NO_PROVIDER)}${Eu(t.setupUrl,re.SET_UP)}`);if(!n.harnessEnabled)return Ga(`${Do(e===void 0?re.OFF:re.canSwitchOn(e.percent))}<button type="button" ${Kb} class="reticle-harness-run">${re.TURN_ON}</button>`);if(!t.canDrive)return"";let r=t.starting===!0;return W0(V0(t.pick,r),`<button type="button" data-reticle-harness-run class="reticle-harness-run"${r?" disabled":""}>${r?re.STARTING:re.RUN}</button>`)+Bb(t.pick,r)}var re,Kb,bu,_h,xh,Wb,zb,Ga,Sh,Do,W0,Y0,Eu,Yb,Ah=S(()=>{"use strict";H();Lc();Pa();Br();jb();re={RUN:"Run Harness",STARTING:"Starting\u2026",STOP:"Stop",SIGNED_OUT:n0,SIGN_IN:"Sign in",UNLINKED:"This project is not on your dashboard yet.",LINK:"Link this project",LINKING:"Linking\u2026",NOT_ENTITLED:"Harness is not on your plan",NO_CREDITS:"No Harness credits left",NO_PROVIDER:"No model provider set",OFF:"Harness is off",canSwitchOn:t=>`Setup score ${String(t)}%. Harness is off.`,TURN_ON:"Switch on",COPY_PROMPT:"Copy setup prompt",COPIED:"Copied",SET_UP:"Set up \u2197",PLANS:"See plans \u2197",PLAN:"Plan \u2197",MORE:"Get more \u2197",driving:(t,e)=>`Driving${t===void 0?"":` as ${t}`} \xB7 ${String(e)} step${e===1?"":"s"}`,NAME:"Harness",TOGGLE:"Reticle Harness on this project",creditsLeft:(t,e)=>`${t.toLocaleString("en-US")} credit${t===1?"":"s"}${e===void 0?"":` \xB7 ${String(e)} day${e===1?"":"s"}`}`,FOOT_LINK:"Link project",FOOT_NO_CREDITS:"No credits",FOOT_NOT_ENTITLED:"Not on your plan",FOOT_NO_PROVIDER:"No model provider",footSetup:t=>`Setup ${String(t)}% \xB7 needs 80%`,PAGE_TITLE:"Reticle Harness",LOG_LABEL:"What the Harness did",LOG_EMPTY:"Runs show here, step by step.",PAGE_SUBTITLE:"Tests your app by itself"},Kb="data-reticle-harness-switch",bu="data-reticle-harness-link",_h="data-reticle-harness-open",xh="data-reticle-harness-log",Wb="data-reticle-harness-toggle",zb="data-reticle-harness-copy-prompt";Ga=t=>`<div class="reticle-harness-row">${t}</div>`,Sh=t=>`<div class="reticle-harness-row reticle-harness-row-wrap">${t}</div>`,Do=t=>`<span class="reticle-harness-said">${t}</span>`,W0=(t,e)=>Ga(`<span class="reticle-harness-lead">${t}</span>${e}`),Y0=`<button type="button" data-reticle-harness-stop class="reticle-harness-run reticle-harness-stop">${re.STOP}</button>`,Eu=(t,e)=>`<a class="reticle-harness-link" href="${t}" target="_blank" rel="noopener noreferrer">${e}</a>`;Yb=`
421
+ `,VV=new Set(Object.values(dn));cm=class{constructor(){b(this,Xo);b(this,rl);b(this,Ku);b(this,ia,!1);b(this,ol,new Map)}mount(e){var n,r;f(this,rl,(n=e.querySelector(`[${sC}]`))!=null?n:void 0),(r=c(this,rl))==null||r.addEventListener("click",o=>{let s=o.target;if(!(s instanceof Element))return;if(s.closest(`[${rC}]`)!==null){f(this,ia,!0),E(this,Xo,ju).call(this);return}let a=s.closest(`[${HT}]`),l=a==null?void 0:a.getAttribute(HT);l!=null&&(c(this,ol).set(l,(a==null?void 0:a.getAttribute("aria-expanded"))!=="true"),E(this,Xo,ju).call(this))}),E(this,Xo,ju).call(this)}paint(e){e.lanes.every(r=>r.journeys.every(o=>dn.PENDING===o.status))&&(f(this,ia,!1),c(this,ol).clear()),f(this,Ku,e),E(this,Xo,ju).call(this)}};rl=new WeakMap,Ku=new WeakMap,ia=new WeakMap,ol=new WeakMap,Xo=new WeakSet,ju=function(){let e=c(this,rl),n=c(this,Ku);if(e===void 0||(e.replaceChildren(),e.hidden=n===void 0||c(this,ia),n===void 0||c(this,ia)))return;let r=n.lanes.flatMap(d=>d.journeys),o=r.filter(d=>dn.PASSED===d.status).length,s=Nt("div","reticle-plan-head");s.append(Nt("strong","",nl.TITLE),Nt("span","",`${String(o)} of ${String(r.length)} passed \xB7 ${String(n.lanes.length)} lane(s)`+(1<n.parallel?`, ${String(n.parallel)} ${nl.AT_ONCE}`:"")));let a=Nt("button","reticle-plan-close","\xD7");a.setAttribute("type","button"),a.setAttribute(rC,""),a.setAttribute("aria-label",nl.CLOSE),a.setAttribute("title",nl.CLOSE),s.append(a);let l=Nt("div","reticle-plan-lanes");for(let d of n.lanes){let u=Nt("div","reticle-plan-lane"),p=Nt("span","reticle-plan-lane-name",d.id);p.setAttribute("title",`${nl.LANE} ${d.id}`);let h=Nt("div","reticle-plan-lane-journeys");for(let m of d.journeys)h.append(E(this,Xo,dC).call(this,d.id,m));u.append(p,h),l.append(u)}e.append(s,l)},dC=function(e,n){var d;let r=`${e}/${n.id}`,o=(d=c(this,ol).get(r))!=null?d:dn.RUNNING===n.status||dn.FAILED===n.status,s=Nt("button","reticle-plan-journey");s.setAttribute("type","button"),s.setAttribute(HT,r),s.setAttribute("data-status",n.status),s.setAttribute("aria-expanded",String(o));let a=Nt("span","reticle-plan-row");a.append(Nt("span","reticle-plan-glyph",oC[n.status]),Nt("b","",n.title)),s.append(a);let l=[n.persona,0<n.waitsOn.length?`${nl.WAITS} ${n.waitsOn.join(", ")}`:void 0].filter(u=>u!==void 0&&0<u.length);if(0<l.length&&s.append(Nt("span","reticle-plan-meta",l.join(" \xB7 "))),o&&0<n.steps.length){let u=Nt("span","reticle-plan-steps");for(let p of n.steps){let h=Nt("span","reticle-plan-step");h.setAttribute("data-status",p.status),h.append(Nt("span","reticle-plan-glyph",oC[p.status]),Nt("span","",p.label)),u.append(h)}s.append(u)}return s}});function um(t){return GT.find(e=>e.id===t)}function uC(t,e){let n=um(t);if(n!==void 0)return`${n.label}: ${n.hint}`;let r=e.trim();return r.length===0?void 0:r}function BT(t){var e,n;return(n=(e=um(t))==null?void 0:e.label)!=null?n:sa.CUSTOM_SHORT}function pC(t,e=!1){var o,s;let n=[...GT.map(a=>({id:a.id,label:a.label,hint:a.hint})),{id:FT,label:sa.CUSTOM,hint:sa.CUSTOM_HINT}].map(a=>`<option value="${a.id}" title="${ne(a.hint)}"${a.id===t?" selected":""}>${ne(a.label)}</option>`).join(""),r=ne((s=(o=um(t))==null?void 0:o.hint)!=null?s:sa.CUSTOM_HINT);return`<label class="reticle-harness-as" for="${il}">${sa.LABEL}</label><select id="${il}" data-reticle-harness-persona-pick class="reticle-harness-persona" title="${r}" aria-describedby="${il}-hint"${e?" disabled":""}>${n}</select><span id="${il}-hint" class="reticle-sr">${r}</span>`}function VT(t,e=!1){return FT===t?`<input type="text" id="${jV}" data-reticle-harness-persona class="reticle-harness-persona" aria-label="${sa.CUSTOM_HINT}" placeholder="${sa.CUSTOM_PLACEHOLDER}"${e?" disabled":""}>`:""}function jT(t){return t!=null&&(FT===t||um(t))?t:void 0}function fC(t){var e;try{return(e=jT(localStorage.getItem(`${bf}${t!=null?t:""}`)))!=null?e:dm}catch{return dm}}function hC(t,e){try{localStorage.setItem(`${bf}${t!=null?t:""}`,e)}catch{}}var FT,GT,dm,sa,il,jV,KT=S(()=>{"use strict";Kr();ra();FT="custom",GT=[{id:"first-time",label:"First-time visitor",hint:"starts from the first page, reads the labels and follows the obvious path"},{id:"power-user",label:"Returning power user",hint:"goes straight to the main task, takes shortcuts and repeats it quickly"},{id:"phone",label:"On a phone, slow connection",hint:"small-screen habits: taps, waits on loading, retries when nothing seems to happen"},{id:"keyboard",label:"Keyboard only",hint:"Tab, Enter and Escape only: focus order, traps and controls it cannot reach"},{id:"careless",label:"Careless user (bad and unexpected input)",hint:"empty fields, wrong formats, very long text, double submits, going back mid-flow"},{id:"admin",label:"Admin / settings",hint:"changes settings and permissions, then checks they stick after a reload"}],dm=GT[0].id,sa={LABEL:"As",CUSTOM:"Custom\u2026",CUSTOM_SHORT:"Custom",CUSTOM_HINT:"Describe who to be or what to try, in your own words.",CUSTOM_PLACEHOLDER:"e.g. a first-time shopper paying by card"},il="reticle-harness-persona-pick",jV="reticle-harness-persona"});function EC(t){return t===void 0||Fi(t)?"":mT(t)}function KV(t,e){if(t.kind===void 0)return aa(`${qo(le.NO_CREDITS)}${sl(e,le.MORE)}`);let n=tm(t),r=n.action!==void 0?sl(e,`${n.action} \u2197`):at.TRIAL===t.kind?sl(e,le.PLAN):"";return fm(`${qo(n.said)}${r}`)}function WV(t){if(t.starting===!0)return le.STARTING;let e=t.config;if(e===void 0)return le.FOOT_LINK;if(e.credits!==void 0&&Fi(e.credits))return le.FOOT_NO_CREDITS;if(!e.harnessEntitled)return le.FOOT_NOT_ENTITLED;if(e.providerReady===!1)return le.FOOT_NO_PROVIDER;let n=e.credits;return n===void 0?"":le.creditsLeft(Math.max(0,n.limit-n.used),n.daysLeft)}function zV(t){let e=t.config;return e===void 0||e.credits!==void 0&&Fi(e.credits)?!1:e.harnessEntitled&&e.providerReady!==!1}function bC(t){var s,a;if(t.account===void 0||!t.account.signedIn)return"";if(t.drive!==void 0&&t.canDrive)return aa(`<button type="button" ${pm} class="reticle-harness-open"><span class="reticle-harness-name">${le.NAME}</span><span class="reticle-harness-state">${ne(le.driving(t.startedAs===void 0?void 0:BT(t.startedAs),t.drive.steps))}</span><span class="reticle-harness-chev" aria-hidden="true">\u203A</span></button>${gC}`);let e=((s=t.config)==null?void 0:s.harnessEnabled)===!0,n=(a=t.config)==null?void 0:a.credits,r=n===void 0?"":` title="${ne(mT(n))}"`,o=zV(t)?`<button type="button" role="switch" ${zT} class="reticle-harness-toggle" aria-checked="${String(e)}" aria-label="${le.TOGGLE}"><span class="reticle-harness-knob"></span></button>`:"";return aa(`<button type="button" ${pm} class="reticle-harness-open"${r}><span class="reticle-harness-name">${le.NAME}</span><span class="reticle-harness-state">${ne(WV(t))}</span><span class="reticle-harness-chev" aria-hidden="true">\u203A</span></button>${o}`)}function TC(t){if(t.account===void 0)return"";if(!t.account.signedIn)return fm(`${qo(le.SIGNED_OUT)}<button type="button" ${Ut} class="reticle-harness-link">${le.SIGN_IN}</button>`);if(t.drive!==void 0&&t.canDrive)return mC(qo(le.driving(t.startedAs===void 0?void 0:BT(t.startedAs),t.drive.steps)),gC)+VT(t.pick,!0);let e=t.config;if(e===void 0)return fm(`${qo(le.UNLINKED)}<button type="button" ${Wu} class="reticle-harness-run"${t.linking===!0?" disabled":""}>${t.linking===!0?le.LINKING:le.LINK}</button>`);if(e.credits!==void 0&&Fi(e.credits))return KV(e.credits,t.planUrl);if(!e.harnessEntitled)return aa(`${qo(le.NOT_ENTITLED)}${sl(t.planUrl,le.PLANS)}`);if(e.providerReady===!1)return aa(`${qo(le.NO_PROVIDER)}${sl(t.setupUrl,le.SET_UP)}`);if(!e.harnessEnabled)return aa(`${qo(le.OFF)}<button type="button" ${WT} class="reticle-harness-run">${le.TURN_ON}</button>`);if(!t.canDrive)return"";let n=t.starting===!0;return mC(pC(t.pick,n),`<button type="button" data-reticle-harness-run class="reticle-harness-run"${n?" disabled":""}>${n?le.STARTING:le.RUN}</button>`)+VT(t.pick,n)+(n?"":YV(t.last))}function YV(t){return t===void 0||t.said===void 0&&t.runUrl===void 0?"":fm(`${t.said===void 0?"":qo(ne(t.said))}${t.runUrl===void 0?"":sl(t.runUrl,le.RESULT)}`)}var le,WT,Wu,pm,hm,zT,aa,fm,qo,mC,gC,sl,YT,mm=S(()=>{"use strict";D();Zc();ra();eo();KT();le={RUN:"Run Harness",STARTING:"Starting\u2026",STOP:"Stop",SIGNED_OUT:vI,SIGN_IN:"Sign in",UNLINKED:"This project is not on your dashboard yet.",LINK:"Link this project",LINKING:"Linking\u2026",NOT_ENTITLED:"Harness is not on your plan",NO_CREDITS:"No credits left",NO_PROVIDER:"No model provider set",OFF:"Harness is off",TURN_ON:"Switch on",SET_UP:"Set up \u2197",PLANS:"See plans \u2197",PLAN:"Plan \u2197",MORE:"Get more \u2197",driving:(t,e)=>`Driving${t===void 0?"":` as ${t}`} \xB7 ${String(e)} step${e===1?"":"s"}`,NAME:"Harness",TOGGLE:"Reticle Harness on this project",creditsLeft:(t,e)=>`${t.toLocaleString("en-US")} credit${t===1?"":"s"}${e===void 0?"":` \xB7 ${String(e)} day${e===1?"":"s"}`}`,FOOT_LINK:"Link project",FOOT_NO_CREDITS:"No credits",FOOT_NOT_ENTITLED:"Not on your plan",FOOT_NO_PROVIDER:"No model provider",PAGE_TITLE:"Reticle Harness",LOG_LABEL:"What the Harness did",LOG_EMPTY:"Runs show here, step by step.",PAGE_SUBTITLE:"Tests your app by itself",RESULT:"See the result \u2197"},WT="data-reticle-harness-switch",Wu="data-reticle-harness-link",pm="data-reticle-harness-open",hm="data-reticle-harness-log",zT="data-reticle-harness-toggle",aa=t=>`<div class="reticle-harness-row">${t}</div>`,fm=t=>`<div class="reticle-harness-row reticle-harness-row-wrap">${t}</div>`,qo=t=>`<span class="reticle-harness-said">${t}</span>`,mC=(t,e)=>aa(`<span class="reticle-harness-lead">${t}</span>${e}`),gC=`<button type="button" data-reticle-harness-stop class="reticle-harness-run reticle-harness-stop">${le.STOP}</button>`,sl=(t,e)=>`<a class="reticle-harness-link" href="${t}" target="_blank" rel="noopener noreferrer">${e}</a>`;YT=`
422
422
  [data-reticle-chat-panel] .reticle-harness-spot{flex:none;display:flex;flex-direction:column;gap:4px;}
423
423
  [data-reticle-chat-panel] .reticle-harness-spot[hidden],[data-reticle-chat-panel] .reticle-harness-spot:empty{display:none;}
424
424
  [data-reticle-chat-panel] .reticle-harness-row{display:flex;align-items:center;gap:6px;min-height:30px;min-width:0;}
@@ -457,10 +457,10 @@ ${ge("pop")} button[data-send]:disabled{opacity:.4;cursor:not-allowed;}
457
457
  [data-reticle-chat-panel] .reticle-sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;}
458
458
  [data-reticle-chat-panel] .reticle-foot-meta{margin:0;font-size:11px;line-height:1.3;color:var(--reticle-hud-text-muted);overflow-wrap:anywhere;}
459
459
  [data-reticle-chat-panel] .reticle-foot-meta:empty{display:none;}
460
- `});function jr(t){return t<1e3?String(Math.round(t)):t<1e6?`${J0(t/1e3)}k`:`${J0(t/1e6)}M`}function J0(t){return t>=10?String(Math.round(t)):String(Math.round(t*10)/10)}function Tu(t){let e=Math.floor(t/1e3);if(e<60)return`${String(e)}s`;let n=Math.floor(e/60);if(n<60)return`${String(n)}m`;let r=Math.floor(n/60);return n%60===0?`${String(r)}h`:`${String(r)}h ${String(n%60)}m`}function Xb(t,e){let n=t.counts,r=e!==void 0&&e.length>0?` on ${e}`:"",o=[`My agent verified its own work ${String(n.verdicts)} times${r}.`,`${String(n.failed)} checks it refused to pass before I looked at any of them.`];return n.unknown>0&&o.push(`${String(n.unknown)} came back "unknown" - it drove the app and could not tell. That is the number I watch.`),t.records.longestRunMs>0&&o.push(`Longest unattended run: ${Tu(t.records.longestRunMs)}.`),o.join(`
461
- `)}function tO(t){let e=new URLSearchParams({text:t,url:Ni.SITE});return Q0.length>0&&e.set("via",Q0),`https://twitter.com/intent/tweet?${e.toString()}`}function nO(){return`https://www.linkedin.com/sharing/share-offsite/?url=${encodeURIComponent(Ni.SITE)}`}function qb(){return`I have been verifying my agent's work from inside the running app with Reticle - it returns pass/fail with the file:line to fix. ${Ni.SITE}`}function rO(t){let e=Qx.safeParse(t);return e.success?e.data:void 0}var Ni,Q0,j,eO,oO,yh=S(()=>{"use strict";H();Ni={DOCS:"https://docs.reticle.sh",SITE:"https://reticle.sh",GITHUB:"https://github.com/reticlehq/reticle",DISCORD:"https://discord.gg/BwAbzv9ZRz"},Q0="",j={TITLE:"Impact",COVERAGE:"Reticle Coverage",COVERAGE_HELP:"How much of this app Reticle has reached, touched and proved, from the coverage ledger in .reticle",PROJECT:"This project",GLOBAL:"All projects",GLOBAL_TITLE:"Every project on this computer",SCOPE_LABEL:"Show impact for",heroDefects:t=>`failed check${t===1?"":"s"} caught before you shipped`,VERDICTS:"Verdicts",PASSED:"passed",FAILED:"failed",UNKNOWN:"unknown",UNKNOWN_HELP:"Reticle drove the app and could not tell what happened. Not a pass - shown, not hidden.",CALLS:"Tool calls",TOKENS:"Tokens returned",DRIVING:"Time driving",SESSIONS:"Sessions",STREAK:"day streak",LONGEST:"Longest run",SAVED_TOKENS:"Tokens saved",SAVED_MINUTES:"Time saved",ESTIMATE_TAG:"estimate",CHART:"Verdicts, last 30 days",DEFECTS:"What broke",DEFECTS_MORE:"Manage all of them on the dashboard \u2014 triage, assign, and push to GitHub",DEFECTS_SEE_ALL:"See all on the dashboard",DEFECTS_SEE_ALL_TITLE:"Sign up free, link this project, and see every bug Reticle caught",DEFECT_LINK_TITLE:"Open on the dashboard to triage or push to GitHub",LOCAL_ONLY:"This record stops at this machine.",LOCAL_ONLY_ACTION:"reticle connect",LOCAL_ONLY_TAIL:"keeps it, and lets a team see it.",UNLINKED:"Signed in, but this repo is not linked.",UNLINKED_ACTION:"reticle connect",UNLINKED_TAIL:"sends this record to your workspace.",DEFECTS_NONE:"Nothing has failed a declared consequence yet.",EMPTY:"Nothing recorded yet. Drive the app once and this fills in.",SHARE:"Share",COPY:"Copy",COPIED:"Copied",SEE_RUN:"See it in your dashboard",KEY_REFUSED:"Key refused",NOT_SENT:"not synced",NOT_SENT_HELP:"Runs saved on this machine but not on your dashboard yet. Run reticle connect in this project to send them.",INSTRUMENTATION:"What Reticle can see",INSTRUMENTATION_HELP:"What Reticle can see in this app, from its handshake and the gaps its verdicts recorded",covered:(t,e)=>`${String(t)} of ${String(e)}`,NOT_SEEN_YET:"not checked yet",COPY_PROMPT:"Copy prompt for your coding agent",SHARE_LABEL:"Share",POST_X:"X",POST_IN:"LinkedIn",REFER:"Invite a friend"},eO={"page connected":"Page connected","DOM actions":"Clicks and typing",network:"Network requests",console:"Console errors","app state (store registered)":"App state","signals on mutation":"Success signals from your code","file:line source mapping":"Source file and line","stable test ids":"Stable test ids"};oO=[{key:"reached",label:"routes reached"},{key:"touched",label:"controls touched"},{key:"proved",label:"controls proved"},{key:"branched",label:"write failures driven"},{key:"executed",label:"code executed"}]});var tF,Su,iO,aO,Gc,vh,sO=S(()=>{"use strict";yh();tF=1600,Su={NONE:"No coding agent connected",named:t=>`${t} connected`,COPY:"Copy prompt",prompt:t=>`Use Reticle to check ${t} in my running app, then tell me the verdict.`},iO=`<div data-reticle-agent-spot class="reticle-agent-spot" hidden>
462
- <div class="reticle-agent-row"><span data-reticle-agent-dot class="reticle-agent-dot" aria-hidden="true"></span><span data-reticle-agent-said class="reticle-agent-said">${Su.NONE}</span><button type="button" data-reticle-agent-copy class="reticle-agent-copy" aria-label="${j.COPY_PROMPT}" title="${j.COPY_PROMPT}">${Su.COPY}</button></div>
463
- </div>`,aO=`
460
+ `});function no(t){return t<1e3?String(Math.round(t)):t<1e6?`${_C(t/1e3)}k`:`${_C(t/1e6)}M`}function _C(t){return t>=10?String(Math.round(t)):String(Math.round(t*10)/10)}function zu(t){let e=Math.floor(t/1e3);if(e<60)return`${String(e)}s`;let n=Math.floor(e/60);if(n<60)return`${String(n)}m`;let r=Math.floor(n/60);return n%60===0?`${String(r)}h`:`${String(r)}h ${String(n%60)}m`}function XT(t,e){let n=t.counts,r=e!==void 0&&e.length>0?` on ${e}`:"",o=[`My agent verified its own work ${String(n.verdicts)} times${r}.`,`${String(n.failed)} checks it refused to pass before I looked at any of them.`];return n.unknown>0&&o.push(`${String(n.unknown)} came back "unknown" - it drove the app and could not tell. That is the number I watch.`),t.records.longestRunMs>0&&o.push(`Longest unattended run: ${zu(t.records.longestRunMs)}.`),o.join(`
461
+ `)}function xC(t){let e=new URLSearchParams({text:t,url:ji.SITE});return SC.length>0&&e.set("via",SC),`https://twitter.com/intent/tweet?${e.toString()}`}function AC(){return`https://www.linkedin.com/sharing/share-offsite/?url=${encodeURIComponent(ji.SITE)}`}function qT(){return`I have been verifying my agent's work from inside the running app with Reticle - it returns pass/fail with the file:line to fix. ${ji.SITE}`}function yC(t){let e=Oy.safeParse(t);return e.success?e.data:void 0}var ji,SC,W,vC,gm=S(()=>{"use strict";D();ji={DOCS:"https://docs.reticle.sh",SITE:"https://reticle.sh",GITHUB:"https://github.com/reticlehq/reticle",DISCORD:"https://discord.gg/BwAbzv9ZRz"},SC="",W={TITLE:"Impact",COVERAGE:"Reticle Coverage",COVERAGE_HELP:"How much of this app Reticle has reached, touched and proved, from the coverage ledger in .reticle",PROJECT:"This project",GLOBAL:"All projects",GLOBAL_TITLE:"Every project on this computer",SCOPE_LABEL:"Show impact for",heroDefects:t=>`failed check${t===1?"":"s"} caught before you shipped`,VERDICTS:"Verdicts",PASSED:"passed",FAILED:"failed",UNKNOWN:"unknown",UNKNOWN_HELP:"Reticle drove the app and could not tell what happened. Not a pass - shown, not hidden.",CALLS:"Tool calls",TOKENS:"Tokens returned",DRIVING:"Time driving",SESSIONS:"Sessions",STREAK:"day streak",LONGEST:"Longest run",SAVED_TOKENS:"Tokens saved",SAVED_MINUTES:"Time saved",ESTIMATE_TAG:"estimate",CHART:"Verdicts, last 30 days",DEFECTS:"What broke",DEFECTS_MORE:"Manage all of them on the dashboard \u2014 triage, assign, and push to GitHub",DEFECTS_SEE_ALL:"See all on the dashboard",DEFECTS_SEE_ALL_TITLE:"Sign up free, link this project, and see every bug Reticle caught",DEFECT_LINK_TITLE:"Open on the dashboard to triage or push to GitHub",LOCAL_ONLY:"This record stops at this machine.",LOCAL_ONLY_ACTION:"reticle connect",LOCAL_ONLY_TAIL:"keeps it, and lets a team see it.",UNLINKED:"Signed in, but this repo is not linked.",UNLINKED_ACTION:"reticle connect",UNLINKED_TAIL:"sends this record to your workspace.",DEFECTS_NONE:"Nothing has failed a declared consequence yet.",EMPTY:"Nothing recorded yet. Drive the app once and this fills in.",SHARE:"Share",COPY:"Copy",COPIED:"Copied",SEE_RUN:"See it in your dashboard",KEY_REFUSED:"Key refused",NOT_SENT:"not synced",NOT_SENT_HELP:"Runs saved on this machine but not on your dashboard yet. Run reticle connect in this project to send them.",COPY_PROMPT:"Copy prompt for your coding agent",SHARE_LABEL:"Share",POST_X:"X",POST_IN:"LinkedIn",REFER:"Invite a friend"};vC=[{key:"reached",label:"routes reached"},{key:"touched",label:"controls touched"},{key:"proved",label:"controls proved"},{key:"branched",label:"write failures driven"},{key:"executed",label:"code executed"}]});var XV,Yu,RC,NC,al,Em,wC=S(()=>{"use strict";gm();XV=1600,Yu={NONE:"No coding agent connected",named:t=>`${t} connected`,COPY:"Copy prompt",prompt:t=>`Use Reticle to check ${t} in my running app, then tell me the verdict.`},RC=`<div data-reticle-agent-spot class="reticle-agent-spot" hidden>
462
+ <div class="reticle-agent-row"><span data-reticle-agent-dot class="reticle-agent-dot" aria-hidden="true"></span><span data-reticle-agent-said class="reticle-agent-said">${Yu.NONE}</span><button type="button" data-reticle-agent-copy class="reticle-agent-copy" aria-label="${W.COPY_PROMPT}" title="${W.COPY_PROMPT}">${Yu.COPY}</button></div>
463
+ </div>`,NC=`
464
464
  [data-reticle-chat-panel] .reticle-agent-spot{flex:none;display:flex;flex-direction:column;gap:3px;}
465
465
  [data-reticle-chat-panel] .reticle-agent-spot[hidden]{display:none;}
466
466
  [data-reticle-chat-panel] .reticle-agent-row{display:flex;align-items:center;gap:8px;min-width:0;min-height:30px;padding:0 var(--reticle-hud-space-2);}
@@ -471,40 +471,40 @@ ${ge("pop")} button[data-send]:disabled{opacity:.4;cursor:not-allowed;}
471
471
  [data-reticle-chat-panel] .reticle-agent-copy{flex:none;height:22px;padding:0 9px;border:1px solid var(--reticle-hud-border-strong);border-radius:11px;background:transparent;color:var(--reticle-hud-text);font:inherit;font-size:11px;font-weight:600;cursor:pointer;white-space:nowrap;}
472
472
  [data-reticle-chat-panel] .reticle-agent-copy:hover{border-color:var(--reticle-hud-brand);color:var(--reticle-hud-brand);}
473
473
  [data-reticle-chat-panel] .reticle-agent-copy[hidden]{display:none;}
474
- `,vh=class{constructor(){b(this,Gc)}mount(e,n){var r;h(this,Gc,e),(r=e.querySelector("[data-reticle-agent-copy]"))==null||r.addEventListener("click",o=>{var s;let a=o.currentTarget;(s=navigator.clipboard)==null||s.writeText(Su.prompt(location.href)).catch(()=>{}).finally(()=>{a instanceof HTMLElement&&(a.textContent=j.COPIED,window.setTimeout(()=>a.textContent=j.COPY_PROMPT,tF))})},{signal:n})}teardown(){h(this,Gc,void 0)}paint(e){var l;let n=c(this,Gc),r=n==null?void 0:n.querySelector("[data-reticle-agent-spot]");if(n===void 0||r===null||r===void 0||(r.hidden=e===void 0,e===void 0))return;let o=0<e.agents.length;(l=r.querySelector(".reticle-agent-row"))==null||l.setAttribute("data-connected",o?"1":"0");let a=r.querySelector("[data-reticle-agent-said]");a!==null&&(a.textContent=o?Su.named(e.agents.join(", ")):Su.NONE);let s=r.querySelector("[data-reticle-agent-copy]");s!==null&&(s.hidden=o)}};Gc=new WeakMap});function iT(t,e){let n=[t==null?void 0:t.platformUrl,e.host].find(r=>r!==void 0&&Co(r));return Z((n!=null?n:op).replace(/\/+$/,""))}function aF(t){if(typeof t!="object"||t===null)return!1;let e=t;return typeof e.id=="string"&&typeof e.note=="string"&&typeof e.label=="string"&&typeof e.anchor=="string"&&typeof e.route=="string"&&typeof e.createdAt=="number"&&typeof e.pageUrl=="string"}function sF(){var t;try{let e=JSON.parse((t=localStorage.getItem(hO))!=null?t:"[]");return Array.isArray(e)?e.filter(aF).slice(0,oT):[]}catch{return[]}}function cF(t){var e;try{return Number((e=localStorage.getItem(`${Mp}${t!=null?t:""}`))!=null?e:0)||0}catch{return}}function cO(t,e){try{localStorage.setItem(`${Mp}${t!=null?t:""}`,String(e))}catch{}}function lF(t){try{localStorage.setItem(hO,JSON.stringify(t.slice(0,oT)))}catch{}}function pO(){var t,e;try{let n=JSON.parse((t=globalThis.sessionStorage.getItem(st.PRESENTER_VIEW))!=null?t:"{}"),r=n!==null&&typeof n=="object"?n:{};return{view:(e=fO.find(a=>a===r.view))!=null?e:"activity",runFocused:r.runFocused===!0}}catch{return{view:"activity",runFocused:!1}}}function Jb(t){try{globalThis.sessionStorage.setItem(st.PRESENTER_VIEW,JSON.stringify(t))}catch{}}var fO,hO,oT,nF,rF,oF,iF,mO,gO,_u,wi,eT,Ba,EO,Zb,lO,dO,uO,Bc,bO,TO,SO,Qb,Xt,Mo,Au,Vc,Wr,yu,Va,jc,Kc,Wc,Oi,zc,vu,Yc,ja,zr,Ka,Yr,Ii,Wa,Xc,qc,Zc,Qc,za,$o,ae,tT,Rh,Nh,Kr,nT,wh,xu,_O,rT,Oh,Ih=S(()=>{"use strict";H();Eh();HE();ut();ur();mr();wo();Ah();Pa();mb();Lr();jb();sO();Br();fO=["flows","annotations","harness"],hO=st.ANNOTATION_HISTORY,oT=200,nF="/settings?group=project",rF="#model",oF="/settings?group=billing",iF=2e4;mO=`${iO}
475
- <div data-reticle-harness-spot class="reticle-harness-spot" hidden></div>`,gO=`<section data-reticle-page-panel="flows" class="reticle-page-panel reticle-flows-view" role="region" aria-label="Saved Flows" hidden>
474
+ `,Em=class{constructor(){b(this,al)}mount(e,n){var r;f(this,al,e),(r=e.querySelector("[data-reticle-agent-copy]"))==null||r.addEventListener("click",o=>{var a;let s=o.currentTarget;(a=navigator.clipboard)==null||a.writeText(Yu.prompt(location.href)).catch(()=>{}).finally(()=>{s instanceof HTMLElement&&(s.textContent=W.COPIED,window.setTimeout(()=>s.textContent=W.COPY_PROMPT,XV))})},{signal:n})}teardown(){f(this,al,void 0)}paint(e){var l;let n=c(this,al),r=n==null?void 0:n.querySelector("[data-reticle-agent-spot]");if(n===void 0||r===null||r===void 0||(r.hidden=e===void 0,e===void 0))return;let o=0<e.agents.length;(l=r.querySelector(".reticle-agent-row"))==null||l.setAttribute("data-connected",o?"1":"0");let s=r.querySelector("[data-reticle-agent-said]");s!==null&&(s.textContent=o?Yu.named(e.agents.join(", ")):Yu.NONE);let a=r.querySelector("[data-reticle-agent-copy]");a!==null&&(a.hidden=o)}};al=new WeakMap});function iS(t,e){let n=[JV(t==null?void 0:t.planUrl),t==null?void 0:t.platformUrl,e.host].find(r=>r!==void 0&&Qn(r));return ne((n!=null?n:Up).replace(/\/+$/,""))}function JV(t){if(!(t===void 0||!Qn(t)))try{return new URL(t).origin}catch{return}}function e4(t){if(typeof t!="object"||t===null)return!1;let e=t;return typeof e.id=="string"&&typeof e.note=="string"&&typeof e.label=="string"&&typeof e.anchor=="string"&&typeof e.route=="string"&&typeof e.createdAt=="number"&&typeof e.pageUrl=="string"}function t4(){var t;try{let e=JSON.parse((t=localStorage.getItem(PC))!=null?t:"[]");return Array.isArray(e)?e.filter(e4).slice(0,oS):[]}catch{return[]}}function n4(t){var e;try{return Number((e=localStorage.getItem(`${Tf}${t!=null?t:""}`))!=null?e:0)||0}catch{return}}function IC(t,e){try{localStorage.setItem(`${Tf}${t!=null?t:""}`,String(e))}catch{}}function r4(t){try{localStorage.setItem(PC,JSON.stringify(t.slice(0,oS)))}catch{}}function DC(){var t,e;try{let n=JSON.parse((t=globalThis.sessionStorage.getItem(ct.PRESENTER_VIEW))!=null?t:"{}"),r=n!==null&&typeof n=="object"?n:{};return{view:(e=MC.find(s=>s===r.view))!=null?e:"activity",runFocused:r.runFocused===!0}}catch{return{view:"activity",runFocused:!1}}}function JT(t){try{globalThis.sessionStorage.setItem(ct.PRESENTER_VIEW,JSON.stringify(t))}catch{}}var MC,PC,oS,qV,ZV,QV,OC,$C,HC,Xu,Ki,eS,ca,UC,ZT,CC,LC,kC,cl,FC,GC,BC,QT,on,Zo,Zu,ll,ro,Qu,la,dl,ul,Wi,pl,Ju,fl,da,oo,ua,io,zi,pa,hl,ml,fa,so,gl,ha,El,ao,ep,tp,se,tS,bm,Tm,Rr,nS,Sm,qu,VC,rS,_m,xm=S(()=>{"use strict";D();lm();Fb();Et();Tr();Ar();Ko();mm();ra();gT();Kr();KT();wC();eo();MC=["flows","annotations","harness"],PC=ct.ANNOTATION_HISTORY,oS=200,qV="/settings?group=project",ZV="#model",QV="/settings?group=billing",OC=2e4;$C=`${RC}
475
+ <div data-reticle-harness-spot class="reticle-harness-spot" hidden></div>`,HC=`<section data-reticle-page-panel="flows" class="reticle-page-panel reticle-flows-view" role="region" aria-label="Saved Flows" hidden>
476
476
  <div class="reticle-page-heading"><span class="reticle-page-titles"><strong>Saved flows</strong><span class="reticle-page-subtitle">Journeys your agent verified, replayable here</span></span><button type="button" data-reticle-page-close aria-label="Close Saved Flows" title="Close">\xD7</button></div>
477
477
  <div data-reticle-all-flows class="reticle-all-flows"></div>
478
- </section>`,_u=pe.NAV,wi={LOG:"Log",FLOWS:"Flows",NOTES:"Notes",IMPACT:"Impact",HARNESS:"Harness",SETTINGS:"Settings",HIDE:"Hide"},eT={SEEN:"Open Impact",NEW:"Open Impact, new results"},Ba=t=>`<span class="reticle-nav-label">${t}</span>`,EO=`<nav class="reticle-chat-nav" aria-label="Reticle views">
479
- <button type="button" ${Wf} data-reticle-chat-view-btn="activity" aria-label="Agent log" title="Agent log" aria-current="page">${Ee(Y.MESSAGE,_u)}${Ba(wi.LOG)}</button>
480
- <button type="button" data-reticle-chat-view-btn="harness" aria-label="${re.PAGE_TITLE}" title="${re.PAGE_TITLE}" hidden>${Ee(Y.PLAY,_u)}${Ba(wi.HARNESS)}</button>
481
- <button type="button" data-reticle-chat-view-btn="flows" aria-label="Saved flows" title="Saved flows">${Ee(Y.LAYOUT,_u)}${Ba(wi.FLOWS)}</button>
482
- <button type="button" data-reticle-chat-view-btn="annotations" aria-label="Notes" title="Notes">${Ee(Y.NOTES,_u)}<span class="reticle-nav-label">${wi.NOTES}<span data-reticle-note-count class="reticle-nav-count" hidden></span></span></button>
483
- <button type="button" data-reticle-chat-impact class="reticle-chat-impact" aria-label="${eT.SEEN}" title="Impact">${Ee(Y.CHART,_u)}${Ba(wi.IMPACT)}<span data-reticle-impact-dot class="reticle-nav-dot" aria-hidden="true" hidden></span></button>
484
- </nav>`,Zb=pe.TOOLBAR,lO="Show note markers on the page",dO="Clear notes from this page",uO="Copy all notes",Bc={SUBTITLE:"Feedback for your agent",SUBTITLE_FULL:"Pin feedback on the page for your agent",PAGE_EMPTY:"No notes on this page",PAGE_HINT:"Select Add notes, then click anything on the page to pin feedback for your agent.",HISTORY_EMPTY:"No saved notes yet",HISTORY_HINT:"Notes from every page you annotate are kept here."},bO=`<section data-reticle-page-panel="harness" class="reticle-page-panel reticle-harness-page" role="region" aria-label="${re.PAGE_TITLE}" hidden>
485
- <div class="reticle-page-heading"><span class="reticle-page-titles"><strong>${re.PAGE_TITLE}</strong><span class="reticle-page-subtitle">${re.PAGE_SUBTITLE}</span></span><button type="button" data-reticle-page-close aria-label="Close ${re.PAGE_TITLE}" title="Close">\xD7</button></div>
478
+ </section>`,Xu=he.NAV,Ki={LOG:"Log",FLOWS:"Flows",NOTES:"Notes",IMPACT:"Impact",HARNESS:"Harness",SETTINGS:"Settings",HIDE:"Hide"},eS={SEEN:"Open Impact",NEW:"Open Impact, new results"},ca=t=>`<span class="reticle-nav-label">${t}</span>`,UC=`<nav class="reticle-chat-nav" aria-label="Reticle views">
479
+ <button type="button" ${$h} data-reticle-chat-view-btn="activity" aria-label="Agent log" title="Agent log" aria-current="page">${Ee(Q.MESSAGE,Xu)}${ca(Ki.LOG)}</button>
480
+ <button type="button" data-reticle-chat-view-btn="harness" aria-label="${le.PAGE_TITLE}" title="${le.PAGE_TITLE}" hidden>${Ee(Q.PLAY,Xu)}${ca(Ki.HARNESS)}</button>
481
+ <button type="button" data-reticle-chat-view-btn="flows" aria-label="Saved flows" title="Saved flows">${Ee(Q.LAYOUT,Xu)}${ca(Ki.FLOWS)}</button>
482
+ <button type="button" data-reticle-chat-view-btn="annotations" aria-label="Notes" title="Notes">${Ee(Q.NOTES,Xu)}<span class="reticle-nav-label">${Ki.NOTES}<span data-reticle-note-count class="reticle-nav-count" hidden></span></span></button>
483
+ <button type="button" data-reticle-chat-impact class="reticle-chat-impact" aria-label="${eS.SEEN}" title="Impact">${Ee(Q.CHART,Xu)}${ca(Ki.IMPACT)}<span data-reticle-impact-dot class="reticle-nav-dot" aria-hidden="true" hidden></span></button>
484
+ </nav>`,ZT=he.TOOLBAR,CC="Show note markers on the page",LC="Clear notes from this page",kC="Copy all notes",cl={SUBTITLE:"Feedback for your agent",SUBTITLE_FULL:"Pin feedback on the page for your agent",PAGE_EMPTY:"No notes on this page",PAGE_HINT:"Select Add notes, then click anything on the page to pin feedback for your agent.",HISTORY_EMPTY:"No saved notes yet",HISTORY_HINT:"Notes from every page you annotate are kept here."},FC=`<section data-reticle-page-panel="harness" class="reticle-page-panel reticle-harness-page" role="region" aria-label="${le.PAGE_TITLE}" hidden>
485
+ <div class="reticle-page-heading"><span class="reticle-page-titles"><strong>${le.PAGE_TITLE}</strong><span class="reticle-page-subtitle">${le.PAGE_SUBTITLE}</span></span><button type="button" data-reticle-page-close aria-label="Close ${le.PAGE_TITLE}" title="Close">\xD7</button></div>
486
486
  <div data-reticle-harness-page class="reticle-harness-body"></div>
487
- ${H0}
488
- <div ${xh} ${Uf}="${ln.HARNESS}" class="reticle-harness-log" aria-live="polite" aria-label="${re.LOG_LABEL}"></div>
487
+ ${aC}
488
+ <div ${hm} ${Oh}="${Jt.HARNESS}" class="reticle-harness-log" aria-live="polite" aria-label="${le.LOG_LABEL}"></div>
489
489
  <p data-reticle-harness-page-meta class="reticle-foot-meta"></p>
490
- </section>`,TO=`<section data-reticle-page-panel="annotations" class="reticle-page-panel reticle-annotations-view" role="region" aria-label="Notes" hidden>
491
- <div class="reticle-page-heading"><span class="reticle-page-titles"><strong>Notes</strong><span class="reticle-page-subtitle" title="${Bc.SUBTITLE_FULL}">${Bc.SUBTITLE}</span></span><button type="button" ${Zf} class="reticle-add-notes reticle-primary-btn" title="Add notes" aria-label="Add notes" aria-pressed="false" data-active="0"><span class="reticle-add-notes-icon">${Ee(Y.ANNOTATE,pe.TOOLBAR)}</span><span data-reticle-notes-toggle-label>Add notes</span></button><button type="button" data-reticle-page-close aria-label="Close Notes" title="Close">\xD7</button></div>
490
+ </section>`,GC=`<section data-reticle-page-panel="annotations" class="reticle-page-panel reticle-annotations-view" role="region" aria-label="Notes" hidden>
491
+ <div class="reticle-page-heading"><span class="reticle-page-titles"><strong>Notes</strong><span class="reticle-page-subtitle" title="${cl.SUBTITLE_FULL}">${cl.SUBTITLE}</span></span><button type="button" ${Bh} class="reticle-add-notes reticle-primary-btn" title="Add notes" aria-label="Add notes" aria-pressed="false" data-active="0"><span class="reticle-add-notes-icon">${Ee(Q.ANNOTATE,he.TOOLBAR)}</span><span data-reticle-notes-toggle-label>Add notes</span></button><button type="button" data-reticle-page-close aria-label="Close Notes" title="Close">\xD7</button></div>
492
492
  <div class="reticle-annotations-tabs" role="group" aria-label="Notes lists">
493
493
  <span class="reticle-segmented"><button type="button" data-reticle-annotation-tab="current" aria-pressed="true">This page</button><button type="button" data-reticle-annotation-tab="history" aria-pressed="false">History</button></span>
494
494
  <div data-reticle-current-annotation-actions class="reticle-annotation-actions" aria-label="Current page note actions">
495
- <button type="button" ${zf} class="reticle-annotation-icon-btn reticle-annotation-marker-toggle" title="${lO}" aria-label="${lO}" aria-pressed="false" data-active="0" disabled>${$f(Y.VIEW,Zb)}</button>
496
- <button type="button" ${Yf} class="reticle-annotation-icon-btn" title="${dO}" aria-label="${dO}" disabled>${Ee(Y.TRASH,Zb)}</button>
495
+ <button type="button" ${Hh} class="reticle-annotation-icon-btn reticle-annotation-marker-toggle" title="${CC}" aria-label="${CC}" aria-pressed="false" data-active="0" disabled>${Rh(Q.VIEW,ZT)}</button>
496
+ <button type="button" ${Uh} class="reticle-annotation-icon-btn" title="${LC}" aria-label="${LC}" disabled>${Ee(Q.TRASH,ZT)}</button>
497
497
  </div>
498
- <button type="button" data-reticle-copy-all-notes class="reticle-annotation-icon-btn reticle-copy-all" title="${uO}" aria-label="${uO}">${Ee(Y.COPY,Zb)}</button>
498
+ <button type="button" data-reticle-copy-all-notes class="reticle-annotation-icon-btn reticle-copy-all" title="${kC}" aria-label="${kC}">${Ee(Q.COPY,ZT)}</button>
499
499
  </div>
500
500
  <div data-reticle-annotation-list class="reticle-annotation-list"></div>
501
- </section>`,SO=`
502
- ${Yb}
503
- ${Yb.replaceAll("[data-reticle-chat-panel]",'[data-reticle-page-panel="harness"]')}
501
+ </section>`,BC=`
502
+ ${YT}
503
+ ${YT.replaceAll("[data-reticle-chat-panel]",'[data-reticle-page-panel="harness"]')}
504
504
  [data-reticle-page-panel="harness"] .reticle-harness-body{flex:none;display:flex;flex-direction:column;gap:var(--reticle-hud-space-2);padding:var(--reticle-hud-space-3);}
505
505
  /* The run as it happens, then its result: the Harness's rows only, scrolling under the controls. */
506
506
  [data-reticle-page-panel="harness"] .reticle-harness-log{flex:1;min-height:0;overflow-y:auto;padding:0 var(--reticle-hud-space-3) var(--reticle-hud-space-2);}
507
- [data-reticle-page-panel="harness"] .reticle-harness-log:empty::before{content:"${re.LOG_EMPTY}";display:block;padding:var(--reticle-hud-space-2) 0;color:var(--reticle-hud-text-faint);font-size:11px;}
507
+ [data-reticle-page-panel="harness"] .reticle-harness-log:empty::before{content:"${le.LOG_EMPTY}";display:block;padding:var(--reticle-hud-space-2) 0;color:var(--reticle-hud-text-faint);font-size:11px;}
508
508
  [data-reticle-page-panel="harness"] .reticle-foot-meta{flex:none;padding:0 var(--reticle-hud-space-3) var(--reticle-hud-space-3);}
509
509
  [data-reticle-page-open="harness"] [data-reticle-page-panel="harness"]{display:flex;}
510
510
  [data-reticle-page-open="harness"] [data-reticle-chat-panel]{display:none!important;}
@@ -525,7 +525,7 @@ ${Yb.replaceAll("[data-reticle-chat-panel]",'[data-reticle-page-panel="harness"]
525
525
  /* New results since Impact was last opened: a dot on the icon's corner, out of the flow, so no number can push the label. */
526
526
  [data-reticle-hud] .reticle-chat-nav .reticle-nav-dot{position:absolute;top:4px;left:calc(50% + 5px);width:7px;height:7px;border-radius:50%;background:var(--reticle-hud-brand);box-shadow:0 0 0 2px var(--reticle-hud-surface);pointer-events:none;}
527
527
  [data-reticle-hud] .reticle-chat-nav .reticle-nav-dot[hidden]{display:none;}
528
- [data-reticle-page-panel]{position:absolute;right:0;left:auto;bottom:calc(100% + 8px);z-index:6;box-sizing:border-box;width:var(--reticle-dock-w);max-width:min(var(--reticle-dock-w),calc(100vw - 16px));height:min(var(--reticle-chat-max-h,var(--reticle-chat-h)),calc(100vh - 120px));max-height:min(var(--reticle-chat-max-h,var(--reticle-chat-h)),calc(100vh - 120px));flex-direction:column;overflow:hidden;border-radius:var(--reticle-hud-radius-lg);${wc}color:var(--reticle-hud-text);font-size:13px;line-height:1.5;pointer-events:auto;text-align:left;}
528
+ [data-reticle-page-panel]{position:absolute;right:0;left:auto;bottom:calc(100% + 8px);z-index:6;box-sizing:border-box;width:var(--reticle-dock-w);max-width:min(var(--reticle-dock-w),calc(100vw - 16px));height:min(var(--reticle-chat-max-h,var(--reticle-chat-h)),calc(100vh - 120px));max-height:min(var(--reticle-chat-max-h,var(--reticle-chat-h)),calc(100vh - 120px));flex-direction:column;overflow:hidden;border-radius:var(--reticle-hud-radius-lg);${zc}color:var(--reticle-hud-text);font-size:13px;line-height:1.5;pointer-events:auto;text-align:left;}
529
529
  [data-reticle-page-panel][hidden]{display:none!important;}
530
530
  [data-reticle-page-open="annotations"] [data-reticle-page-panel="annotations"],[data-reticle-page-open="flows"] [data-reticle-page-panel="flows"]{display:flex;}
531
531
  [data-reticle-page-open="annotations"] [data-reticle-chat-panel],[data-reticle-page-open="flows"] [data-reticle-chat-panel]{display:none!important;}
@@ -560,7 +560,7 @@ ${Yb.replaceAll("[data-reticle-chat-panel]",'[data-reticle-page-panel="harness"]
560
560
  [data-reticle-page-panel="annotations"] .reticle-annotation-content span{display:block;margin-top:3px;font-size:var(--reticle-hud-size-xs);color:var(--reticle-hud-text-muted);overflow-wrap:anywhere;}
561
561
  [data-reticle-page-panel="annotations"] .reticle-annotation-item button{flex:none;border:1px solid var(--reticle-line);border-radius:6px;background:rgba(255,255,255,.04);color:var(--reticle-muted);font:inherit;font-size:11px;padding:4px 6px;cursor:pointer;}
562
562
  [data-reticle-page-panel="annotations"] .reticle-annotation-item button:hover{color:#fff;background:rgba(255,255,255,.1);}
563
- ${aO}`,Qb="[data-reticle-harness-page] :is([data-reticle-harness-run],[data-reticle-harness-stop])";Oh=class{constructor(e,n,r){b(this,ae);b(this,Xt);b(this,Mo,pO().view);b(this,Au,pO().runFocused);b(this,Vc,!1);b(this,Wr,"current");b(this,yu,[]);b(this,Va,sF());b(this,jc);b(this,Kc);b(this,Wc);b(this,Oi,0);b(this,zc,!1);b(this,vu);b(this,Yc);b(this,ja);b(this,zr);b(this,Ka);b(this,Yr);b(this,Ii,bh);b(this,Wa,"");b(this,Xc,"");b(this,qc,"");b(this,Zc,!1);b(this,Qc,new vh);b(this,za);b(this,$o);h(this,vu,e),h(this,Yc,n),h(this,zr,r)}mount(e){var a,s,l,d,u,p,f;h(this,Xt,e),h(this,ja,new AbortController);let n=c(this,ja).signal;e.querySelectorAll("[data-reticle-chat-view-btn]").forEach(m=>m.addEventListener("click",()=>{let g=m.getAttribute("data-reticle-chat-view-btn");c(this,Yc).call(this,g),this.open(g)},{signal:n})),(a=e.querySelector("[data-reticle-chat-impact]"))==null||a.addEventListener("click",()=>c(this,vu).call(this),{signal:n});let r=m=>{var v,O,B,oe,ce,he,Ie;let g=m.target;if(!(g instanceof Element))return;if(g.closest(`[${_h}]`)!==null){c(this,Yc).call(this,"harness"),this.open("harness");return}if(g.closest(`[${Kb}]`)!==null){(v=c(this,zr))==null||v.setHarness(!0);return}let T=g.closest(`[${Wb}]`);if(T!==null){let Ge=T.getAttribute("aria-checked")!=="true";T.setAttribute("aria-checked",String(Ge)),(O=c(this,zr))==null||O.setHarness(Ge);return}let _=g.closest(`[${bu}],[${lu}]:not([${wt}])`);if(_!==null){if(_.disabled)return;h(this,Zc,!0),(B=c(this,zr))==null||B.link(),E(this,ae,Kr).call(this);return}let y=g.closest("[data-reticle-harness-run]");if(y!==null){if(y.disabled)return;h(this,za,c(this,Ii)),E(this,ae,Rh).call(this,!0),(oe=c(this,zr))==null||oe.run(B0(c(this,Ii),c(this,Wa)));return}if(g.closest("[data-reticle-harness-stop]")!==null){(ce=c(this,zr))==null||ce.stop();return}let A=g.closest(`[${zb}]`);if(A!==null){let Ge=(he=c(this,Wc))==null?void 0:he.prompt;Ge!==void 0&&((Ie=navigator.clipboard)==null||Ie.writeText(Ge).then(()=>A.textContent=re.COPIED).catch(()=>{}))}};(s=e.querySelector("[data-reticle-harness-spot]"))==null||s.addEventListener("click",r,{signal:n}),(l=e.querySelector("[data-reticle-harness-page]"))==null||l.addEventListener("click",r,{signal:n}),(d=e.querySelector(`[${kc}]`))==null||d.addEventListener("click",r,{signal:n});let o=e.querySelector("[data-reticle-harness-page]");o==null||o.addEventListener("change",m=>{var _,y;let g=m.target;if(!(g instanceof HTMLSelectElement))return;let T=Vb(g.value);T!==void 0&&(h(this,Ii,T),K0(c(this,Yr),T),E(this,ae,Kr).call(this),(y=(_=c(this,Xt))==null?void 0:_.querySelector(`#${Fc}`))==null||y.focus())},{signal:n}),o==null||o.addEventListener("input",m=>{m.target instanceof HTMLInputElement&&h(this,Wa,m.target.value)},{signal:n}),c(this,Qc).mount(e,n),e.querySelectorAll("[data-reticle-annotation-tab]").forEach(m=>m.addEventListener("click",()=>{h(this,Wr,m.getAttribute("data-reticle-annotation-tab")==="history"?"history":"current"),E(this,ae,xu).call(this)},{signal:n})),(u=e.querySelector("[data-reticle-annotate-btn]"))==null||u.addEventListener("click",()=>{h(this,Wr,"current"),E(this,ae,xu).call(this)},{signal:n}),(p=e.querySelector("[data-reticle-copy-all-notes]"))==null||p.addEventListener("click",()=>E(this,ae,_O).call(this),{signal:n}),e.querySelectorAll("[data-reticle-page-close]").forEach(m=>m.addEventListener("click",()=>this.closePage(),{signal:n})),(f=e.querySelector("[data-reticle-annotation-list]"))==null||f.addEventListener("click",m=>{let g=m.target;if(!(g instanceof Element))return;let T=g.closest("[data-reticle-copy-note]");if(T===null)return;let _=Number(T.getAttribute("data-reticle-copy-note"));if(!Number.isInteger(_))return;let y=E(this,ae,wh).call(this)[_];y!==void 0&&E(this,ae,rT).call(this,[y],"pageUrl"in y?y.pageUrl:location.href)},{signal:n}),e.addEventListener("focusin",m=>E(this,ae,tT).call(this,m.target instanceof Element&&m.target.matches(Qb)),{signal:n}),e.addEventListener("focusout",m=>{let g=m.relatedTarget;E(this,ae,tT).call(this,g instanceof Element&&g.matches(Qb))},{signal:n}),this.open(c(this,Mo)),E(this,ae,Kr).call(this),this.paintImpact(c(this,Oi)),E(this,ae,xu).call(this)}teardown(){var e;E(this,ae,Rh).call(this,!1),(e=c(this,ja))==null||e.abort(),h(this,ja,void 0),h(this,Xt,void 0),h(this,Xc,""),h(this,qc,""),c(this,Qc).teardown()}open(e){var o;if(e!=="activity"&&!fO.includes(e))return;h(this,Mo,e),Jb({view:e,runFocused:c(this,Vc)});let n=c(this,Xt);if(n===void 0)return;e==="activity"?n.removeAttribute("data-reticle-page-open"):n.setAttribute("data-reticle-page-open",e);let r=n.querySelector("[data-reticle-chat-panel]");r!==null&&(r.hidden=e!=="activity"),n.querySelectorAll("[data-reticle-page-panel]").forEach(a=>{a.hidden=a.getAttribute("data-reticle-page-panel")!==e}),(o=c(this,Xt))==null||o.querySelectorAll("[data-reticle-chat-view-btn]").forEach(a=>{a.getAttribute("data-reticle-chat-view-btn")===e?a.setAttribute("aria-current","page"):a.removeAttribute("aria-current")})}closePage(){let e=c(this,Xt);e!==void 0&&(e.removeAttribute("data-reticle-page-open"),e.querySelectorAll("[data-reticle-page-panel]").forEach(n=>{n.hidden=!0}),h(this,Mo,"activity"),Jb({view:"activity",runFocused:!1}),e.querySelectorAll("[data-reticle-chat-view-btn]").forEach(n=>{n.removeAttribute("aria-current")}))}setProjectId(e){h(this,Yr,e),h(this,Ii,j0(e)),E(this,ae,Kr).call(this),E(this,ae,Nh).call(this)}paintAgent(e){c(this,Qc).paint(e),E(this,ae,nT).call(this)}paintAccount(e){var r;h(this,jc,e);let n=(r=c(this,Xt))==null?void 0:r.querySelector('[data-reticle-chat-view-btn="harness"]');n!=null&&(n.hidden=(e==null?void 0:e.signedIn)!==!0),E(this,ae,Kr).call(this)}paintDrive(e){h(this,Ka,e),e!==void 0?E(this,ae,Rh).call(this,!1):c(this,$o)===void 0&&h(this,za,void 0),E(this,ae,Kr).call(this)}paintHarness(e,n){e!==void 0&&h(this,Zc,!1),h(this,Kc,e),h(this,Wc,n),E(this,ae,Kr).call(this)}paintImpact(e){h(this,Oi,e),c(this,zc)&&cO(c(this,Yr),e),E(this,ae,Nh).call(this)}setImpactOpen(e){h(this,zc,e),e&&cO(c(this,Yr),c(this,Oi)),E(this,ae,Nh).call(this)}paintAnnotations(e){var a;h(this,yu,[...e]);let n=location.href,r=new Map(c(this,Va).map(s=>[s.id,s]));for(let s of e)r.set(s.id,{...s,pageUrl:n});h(this,Va,[...r.values()].sort((s,l)=>l.createdAt-s.createdAt).slice(0,oT)),lF(c(this,Va));let o=(a=c(this,Xt))==null?void 0:a.querySelector("[data-reticle-note-count]");o!=null&&(o.hidden=e.length===0,o.textContent=String(e.length)),E(this,ae,xu).call(this)}};Xt=new WeakMap,Mo=new WeakMap,Au=new WeakMap,Vc=new WeakMap,Wr=new WeakMap,yu=new WeakMap,Va=new WeakMap,jc=new WeakMap,Kc=new WeakMap,Wc=new WeakMap,Oi=new WeakMap,zc=new WeakMap,vu=new WeakMap,Yc=new WeakMap,ja=new WeakMap,zr=new WeakMap,Ka=new WeakMap,Yr=new WeakMap,Ii=new WeakMap,Wa=new WeakMap,Xc=new WeakMap,qc=new WeakMap,Zc=new WeakMap,Qc=new WeakMap,za=new WeakMap,$o=new WeakMap,ae=new WeakSet,tT=function(e){e!==c(this,Vc)&&(h(this,Vc,e),Jb({view:c(this,Mo),runFocused:e}))},Rh=function(e){c(this,$o)!==void 0&&clearTimeout(c(this,$o)),h(this,$o,e?setTimeout(()=>{h(this,$o,void 0),c(this,Ka)===void 0&&h(this,za,void 0),E(this,ae,Kr).call(this)},iF):void 0),e&&E(this,ae,Kr).call(this)},Nh=function(){var a;let e=(a=c(this,Xt))==null?void 0:a.querySelector("[data-reticle-chat-impact]"),n=e==null?void 0:e.querySelector("[data-reticle-impact-dot]");if(e==null||n===void 0||n===null)return;let r=c(this,zc)?c(this,Oi):cF(c(this,Yr)),o=r!==void 0&&c(this,Oi)>r;n.hidden=!o,e.setAttribute("aria-label",o?eT.NEW:eT.SEEN)},Kr=function(){let e=c(this,Xt),n=e==null?void 0:e.querySelector("[data-reticle-harness-spot]");if(e===void 0||n===null||n===void 0)return;let r=c(this,jc),o=c(this,Kc);n.hidden=!1;let a=iT(o,r!=null?r:{signedIn:!1}),s=c(this,Yr)===void 0?"":`&project=${encodeURIComponent(c(this,Yr))}`,l={account:r,config:o,gate:c(this,Wc),drive:c(this,Ka),canDrive:c(this,zr)!==void 0,pick:c(this,Ii),startedAs:c(this,za),setupUrl:`${a}${nF}${s}${rF}`,planUrl:`${a}${oF}`,linking:c(this,Zc),starting:c(this,$o)!==void 0&&c(this,Ka)===void 0},d=q0(l);d!==c(this,Xc)&&(cu(n,d),h(this,Xc,d)),r!==void 0&&!r.signedIn&&c(this,Mo)==="harness"&&this.closePage();let u=e.querySelector("[data-reticle-harness-page]");if(u!==null){let p=Z0(l);p!==c(this,qc)&&(cu(u,p),h(this,qc,p));let f=c(this,Au)?u.querySelector(Qb):null;f!==null&&c(this,Mo)==="harness"&&(h(this,Au,!1),f.focus());let m=u.querySelector("[data-reticle-harness-persona]");m!==null&&m.value!==c(this,Wa)&&(m.value=c(this,Wa))}E(this,ae,nT).call(this)},nT=function(){var r,o,a;let e=((r=c(this,jc))==null?void 0:r.signedIn)===!0,n=(o=c(this,Xt))==null?void 0:o.querySelector("[data-reticle-harness-page-meta]");n!=null&&(n.textContent=e?X0((a=c(this,Kc))==null?void 0:a.credits):"")},wh=function(){return c(this,Wr)==="history"?c(this,Va):c(this,yu)},xu=function(){let e=c(this,Xt);if(e===void 0)return;let n=e.querySelector("[data-reticle-current-annotation-actions]");n!==null&&(n.hidden=c(this,Wr)==="history"),e.querySelectorAll("[data-reticle-annotation-tab]").forEach(a=>a.setAttribute("aria-pressed",String(a.getAttribute("data-reticle-annotation-tab")===c(this,Wr))));let r=e.querySelector("[data-reticle-annotation-list]");if(r===null)return;r.replaceChildren();let o=E(this,ae,wh).call(this);if(o.length===0){let a=document.createElement("div");a.className="reticle-annotation-empty";let s=document.createElement("strong"),l=document.createElement("span"),d=c(this,Wr)==="history";s.textContent=d?Bc.HISTORY_EMPTY:Bc.PAGE_EMPTY,l.textContent=d?Bc.HISTORY_HINT:Bc.PAGE_HINT,a.append(s,l),r.appendChild(a);return}o.forEach((a,s)=>{let l=document.createElement("div");l.className="reticle-annotation-item";let d=document.createElement("div");d.className="reticle-annotation-content";let u=document.createElement("strong");u.textContent=a.note;let p=document.createElement("span");p.textContent=`${a.label} \xB7 ${a.route}${a.source===void 0?"":` \xB7 ${a.source}`}`,d.append(u,p);let f=document.createElement("button");f.type="button",f.textContent="Copy",f.setAttribute("data-reticle-copy-note",String(s)),l.append(d,f),r.appendChild(l)})},_O=function(){let e=E(this,ae,wh).call(this);e.length>0&&E(this,ae,rT).call(this,e,c(this,Wr)==="history"?location.origin:location.href)},rT=function(e,n){var r;(r=navigator.clipboard)==null||r.writeText(If(e,n)).catch(()=>{})}});function gF(t){let{name:e,done:n,total:r,status:o}=t;if(!(typeof e!="string"||typeof n!="number"||typeof r!="number")&&Object.values($s).includes(o))return{name:e,done:n,total:r,status:o}}function TF(t){let e=t.replace(/[-_]+/g," ").trim();return e.length===0?t:e.charAt(0).toUpperCase()+e.slice(1)}function vO(t,e){let n=e?Y.PLAY:Y.PAUSE,r=e?Jc.RESUME:Jc.PAUSE;t.setAttribute("aria-label",r),t.setAttribute("title",r),t.replaceChildren(Fr(n,pe.TOOLBAR)),t.classList.toggle("reticle-tb-btn--primary",e),t.setAttribute("data-active",e?"1":"0")}function SF(t){var e,n,r,o,a,s,l;return{pauseBtn:(e=t.querySelector("[data-reticle-pause]"))!=null?e:void 0,endBtn:(n=t.querySelector("[data-reticle-end]"))!=null?n:void 0,banner:(r=t.querySelector("[data-reticle-banner]"))!=null?r:void 0,copyBtn:(o=t.querySelector("[data-reticle-copy]"))!=null?o:void 0,exportBtn:(a=t.querySelector("[data-reticle-export]"))!=null?a:void 0,exportMsg:(s=t.querySelector("[data-reticle-export-msg]"))!=null?s:void 0,allFlows:(l=t.querySelector("[data-reticle-all-flows]"))!=null?l:void 0}}var dF,xO,uF,pF,Jc,fF,NO,AO,yO,hF,mF,EF,bF,wO,Ch,OO,RO,Lh,IO,CO,LO,kO,pn,Po,Xr,Ya,Ru,el,tl,nl,rl,Xa,vn,Xe,aT,DO,MO,$O,PO,kh,Dh,Mh,sT=S(()=>{"use strict";on();H();lt();ut();ur();$c();$b();Ih();dF="data-reticle-state",xO="data-reticle-tone",uF="data-on",pF="0",Jc={PAUSE:"Pause",RESUME:"Resume",END:"End",SEND:"Send"},fF="PAUSED",NO="Session ended",AO="Copy run",yO="Export",hF=6e3,mF={[$s.PLAYING]:"\u23F5",[$s.PASSED]:"\u2713",[$s.FAILED]:"\u2717"};EF="Copied \u2713",bF="reticle-run.json",wO=4e3,Ch={REPLAYABLE:"Replay without an agent",ELSEWHERE:"Starts on another page",EMPTY_TITLE:"No saved flows yet",EMPTY_HINT:"Every journey your agent verifies is saved here, ready to replay in one click."};OO=`
563
+ ${NC}`,QT="[data-reticle-harness-page] :is([data-reticle-harness-run],[data-reticle-harness-stop])";_m=class{constructor(e,n,r){b(this,se);b(this,on);b(this,Zo,DC().view);b(this,Zu,DC().runFocused);b(this,ll,!1);b(this,ro,"current");b(this,Qu,[]);b(this,la,t4());b(this,dl);b(this,ul);b(this,Wi,0);b(this,pl,!1);b(this,Ju);b(this,fl);b(this,da);b(this,oo);b(this,ua);b(this,io);b(this,zi,dm);b(this,pa,"");b(this,hl,"");b(this,ml,"");b(this,fa,!1);b(this,so);b(this,gl,new Em);b(this,ha);b(this,El);b(this,ao);b(this,ep);b(this,tp);f(this,Ju,e),f(this,fl,n),f(this,oo,r)}mount(e){var s,a,l,d,u,p,h;f(this,on,e),f(this,da,new AbortController);let n=c(this,da).signal;e.querySelectorAll("[data-reticle-chat-view-btn]").forEach(m=>m.addEventListener("click",()=>{let g=m.getAttribute("data-reticle-chat-view-btn");c(this,fl).call(this,g),this.open(g)},{signal:n})),(s=e.querySelector("[data-reticle-chat-impact]"))==null||s.addEventListener("click",()=>c(this,Ju).call(this),{signal:n});let r=m=>{var N,y,v,O,j;let g=m.target;if(!(g instanceof Element))return;if(g.closest(`[${pm}]`)!==null){c(this,fl).call(this,"harness"),this.open("harness");return}if(g.closest(`[${WT}]`)!==null){(N=c(this,oo))==null||N.setHarness(!0);return}let T=g.closest(`[${zT}]`);if(T!==null){let Y=T.getAttribute("aria-checked")!=="true";T.setAttribute("aria-checked",String(Y)),(y=c(this,oo))==null||y.setHarness(Y);return}let _=g.closest(`[${Wu}],[${Hu}]:not([${Ut}])`);if(_!==null){if(_.disabled)return;f(this,fa,!0),c(this,so)!==void 0&&clearTimeout(c(this,so)),f(this,so,setTimeout(()=>{f(this,so,void 0),f(this,fa,!1),E(this,se,Rr).call(this)},OC)),(v=c(this,oo))==null||v.link(),E(this,se,Rr).call(this);return}let A=g.closest("[data-reticle-harness-run]");if(A!==null){if(A.disabled)return;f(this,ha,c(this,zi)),f(this,tp,c(this,ep)),E(this,se,bm).call(this,!0),(O=c(this,oo))==null||O.run(uC(c(this,zi),c(this,pa)));return}if(g.closest("[data-reticle-harness-stop]")!==null){(j=c(this,oo))==null||j.stop();return}};(a=e.querySelector("[data-reticle-harness-spot]"))==null||a.addEventListener("click",r,{signal:n}),(l=e.querySelector("[data-reticle-harness-page]"))==null||l.addEventListener("click",r,{signal:n}),(d=e.querySelector(`[${Qc}]`))==null||d.addEventListener("click",r,{signal:n});let o=e.querySelector("[data-reticle-harness-page]");o==null||o.addEventListener("change",m=>{var _,A;let g=m.target;if(!(g instanceof HTMLSelectElement))return;let T=jT(g.value);T!==void 0&&(f(this,zi,T),hC(c(this,io),T),E(this,se,Rr).call(this),(A=(_=c(this,on))==null?void 0:_.querySelector(`#${il}`))==null||A.focus())},{signal:n}),o==null||o.addEventListener("input",m=>{m.target instanceof HTMLInputElement&&f(this,pa,m.target.value)},{signal:n}),c(this,gl).mount(e,n),e.querySelectorAll("[data-reticle-annotation-tab]").forEach(m=>m.addEventListener("click",()=>{f(this,ro,m.getAttribute("data-reticle-annotation-tab")==="history"?"history":"current"),E(this,se,qu).call(this)},{signal:n})),(u=e.querySelector("[data-reticle-annotate-btn]"))==null||u.addEventListener("click",()=>{f(this,ro,"current"),E(this,se,qu).call(this)},{signal:n}),(p=e.querySelector("[data-reticle-copy-all-notes]"))==null||p.addEventListener("click",()=>E(this,se,VC).call(this),{signal:n}),e.querySelectorAll("[data-reticle-page-close]").forEach(m=>m.addEventListener("click",()=>this.closePage(),{signal:n})),(h=e.querySelector("[data-reticle-annotation-list]"))==null||h.addEventListener("click",m=>{let g=m.target;if(!(g instanceof Element))return;let T=g.closest("[data-reticle-copy-note]");if(T===null)return;let _=Number(T.getAttribute("data-reticle-copy-note"));if(!Number.isInteger(_))return;let A=E(this,se,Sm).call(this)[_];A!==void 0&&E(this,se,rS).call(this,[A],"pageUrl"in A?A.pageUrl:location.href)},{signal:n}),e.addEventListener("focusin",m=>E(this,se,tS).call(this,m.target instanceof Element&&m.target.matches(QT)),{signal:n}),e.addEventListener("focusout",m=>{let g=m.relatedTarget;E(this,se,tS).call(this,g instanceof Element&&g.matches(QT))},{signal:n}),this.open(c(this,Zo)),E(this,se,Rr).call(this),this.paintImpact(c(this,Wi)),E(this,se,qu).call(this)}teardown(){var e;E(this,se,bm).call(this,!1),(e=c(this,da))==null||e.abort(),f(this,da,void 0),f(this,on,void 0),f(this,hl,""),f(this,ml,""),c(this,gl).teardown()}open(e){var o;if(e!=="activity"&&!MC.includes(e))return;f(this,Zo,e),JT({view:e,runFocused:c(this,ll)});let n=c(this,on);if(n===void 0)return;e==="activity"?n.removeAttribute("data-reticle-page-open"):n.setAttribute("data-reticle-page-open",e);let r=n.querySelector("[data-reticle-chat-panel]");r!==null&&(r.hidden=e!=="activity"),n.querySelectorAll("[data-reticle-page-panel]").forEach(s=>{s.hidden=s.getAttribute("data-reticle-page-panel")!==e}),(o=c(this,on))==null||o.querySelectorAll("[data-reticle-chat-view-btn]").forEach(s=>{s.getAttribute("data-reticle-chat-view-btn")===e?s.setAttribute("aria-current","page"):s.removeAttribute("aria-current")})}closePage(){let e=c(this,on);e!==void 0&&(e.removeAttribute("data-reticle-page-open"),e.querySelectorAll("[data-reticle-page-panel]").forEach(n=>{n.hidden=!0}),f(this,Zo,"activity"),JT({view:"activity",runFocused:!1}),e.querySelectorAll("[data-reticle-chat-view-btn]").forEach(n=>{n.removeAttribute("aria-current")}))}setProjectId(e){f(this,io,e),f(this,zi,fC(e)),E(this,se,Rr).call(this),E(this,se,Tm).call(this)}paintAgent(e){c(this,gl).paint(e),E(this,se,nS).call(this)}paintAccount(e){var r;f(this,dl,e);let n=(r=c(this,on))==null?void 0:r.querySelector('[data-reticle-chat-view-btn="harness"]');n!=null&&(n.hidden=(e==null?void 0:e.signedIn)!==!0),E(this,se,Rr).call(this)}paintDrive(e,n){f(this,ua,e);let r=(n==null?void 0:n.runUrl)!==void 0&&Qn(n.runUrl)?ne(n.runUrl):void 0;f(this,El,n===void 0?void 0:{...r===void 0?{}:{runUrl:r},...n.said===void 0?{}:{said:n.said}}),f(this,ep,n==null?void 0:n.seq);let o=(n==null?void 0:n.seq)!==void 0&&n.seq!==c(this,tp)&&c(this,ao)!==void 0;(e!==void 0||o)&&E(this,se,bm).call(this,!1),e===void 0&&c(this,ao)===void 0&&f(this,ha,void 0),E(this,se,Rr).call(this)}paintHarness(e){e!==void 0&&(f(this,fa,!1),c(this,so)!==void 0&&clearTimeout(c(this,so)),f(this,so,void 0)),f(this,ul,e),E(this,se,Rr).call(this)}paintImpact(e){f(this,Wi,e),c(this,pl)&&IC(c(this,io),e),E(this,se,Tm).call(this)}setImpactOpen(e){f(this,pl,e),e&&IC(c(this,io),c(this,Wi)),E(this,se,Tm).call(this)}paintAnnotations(e){var s;f(this,Qu,[...e]);let n=location.href,r=new Map(c(this,la).map(a=>[a.id,a]));for(let a of e)r.set(a.id,{...a,pageUrl:n});f(this,la,[...r.values()].sort((a,l)=>l.createdAt-a.createdAt).slice(0,oS)),r4(c(this,la));let o=(s=c(this,on))==null?void 0:s.querySelector("[data-reticle-note-count]");o!=null&&(o.hidden=e.length===0,o.textContent=String(e.length)),E(this,se,qu).call(this)}};on=new WeakMap,Zo=new WeakMap,Zu=new WeakMap,ll=new WeakMap,ro=new WeakMap,Qu=new WeakMap,la=new WeakMap,dl=new WeakMap,ul=new WeakMap,Wi=new WeakMap,pl=new WeakMap,Ju=new WeakMap,fl=new WeakMap,da=new WeakMap,oo=new WeakMap,ua=new WeakMap,io=new WeakMap,zi=new WeakMap,pa=new WeakMap,hl=new WeakMap,ml=new WeakMap,fa=new WeakMap,so=new WeakMap,gl=new WeakMap,ha=new WeakMap,El=new WeakMap,ao=new WeakMap,ep=new WeakMap,tp=new WeakMap,se=new WeakSet,tS=function(e){e!==c(this,ll)&&(f(this,ll,e),JT({view:c(this,Zo),runFocused:e}))},bm=function(e){c(this,ao)!==void 0&&clearTimeout(c(this,ao)),f(this,ao,e?setTimeout(()=>{f(this,ao,void 0),c(this,ua)===void 0&&f(this,ha,void 0),E(this,se,Rr).call(this)},OC):void 0),e&&E(this,se,Rr).call(this)},Tm=function(){var s;let e=(s=c(this,on))==null?void 0:s.querySelector("[data-reticle-chat-impact]"),n=e==null?void 0:e.querySelector("[data-reticle-impact-dot]");if(e==null||n===void 0||n===null)return;let r=c(this,pl)?c(this,Wi):n4(c(this,io)),o=r!==void 0&&c(this,Wi)>r;n.hidden=!o,e.setAttribute("aria-label",o?eS.NEW:eS.SEEN)},Rr=function(){let e=c(this,on),n=e==null?void 0:e.querySelector("[data-reticle-harness-spot]");if(e===void 0||n===null||n===void 0)return;let r=c(this,dl),o=c(this,ul);n.hidden=!1;let s=iS(o,r!=null?r:{signedIn:!1}),a=c(this,io)===void 0?"":`&project=${encodeURIComponent(c(this,io))}`,l={account:r,config:o,drive:c(this,ua),canDrive:c(this,oo)!==void 0,pick:c(this,zi),startedAs:c(this,ha),setupUrl:`${s}${qV}${a}${ZV}`,planUrl:(o==null?void 0:o.planUrl)!==void 0&&Qn(o.planUrl)?ne(o.planUrl):`${s}${QV}`,linking:c(this,fa),starting:c(this,ao)!==void 0&&c(this,ua)===void 0,...c(this,El)===void 0?{}:{last:c(this,El)}},d=bC(l);d!==c(this,hl)&&($u(n,d),f(this,hl,d)),r!==void 0&&!r.signedIn&&c(this,Zo)==="harness"&&this.closePage();let u=e.querySelector("[data-reticle-harness-page]");if(u!==null){let p=TC(l);p!==c(this,ml)&&($u(u,p),f(this,ml,p));let h=c(this,Zu)?u.querySelector(QT):null;h!==null&&c(this,Zo)==="harness"&&(f(this,Zu,!1),h.focus());let m=u.querySelector("[data-reticle-harness-persona]");m!==null&&m.value!==c(this,pa)&&(m.value=c(this,pa))}E(this,se,nS).call(this)},nS=function(){var r,o,s;let e=((r=c(this,dl))==null?void 0:r.signedIn)===!0,n=(o=c(this,on))==null?void 0:o.querySelector("[data-reticle-harness-page-meta]");n!=null&&(n.textContent=e?EC((s=c(this,ul))==null?void 0:s.credits):"")},Sm=function(){return c(this,ro)==="history"?c(this,la):c(this,Qu)},qu=function(){let e=c(this,on);if(e===void 0)return;let n=e.querySelector("[data-reticle-current-annotation-actions]");n!==null&&(n.hidden=c(this,ro)==="history"),e.querySelectorAll("[data-reticle-annotation-tab]").forEach(s=>s.setAttribute("aria-pressed",String(s.getAttribute("data-reticle-annotation-tab")===c(this,ro))));let r=e.querySelector("[data-reticle-annotation-list]");if(r===null)return;r.replaceChildren();let o=E(this,se,Sm).call(this);if(o.length===0){let s=document.createElement("div");s.className="reticle-annotation-empty";let a=document.createElement("strong"),l=document.createElement("span"),d=c(this,ro)==="history";a.textContent=d?cl.HISTORY_EMPTY:cl.PAGE_EMPTY,l.textContent=d?cl.HISTORY_HINT:cl.PAGE_HINT,s.append(a,l),r.appendChild(s);return}o.forEach((s,a)=>{let l=document.createElement("div");l.className="reticle-annotation-item";let d=document.createElement("div");d.className="reticle-annotation-content";let u=document.createElement("strong");u.textContent=s.note;let p=document.createElement("span");p.textContent=`${s.label} \xB7 ${s.route}${s.source===void 0?"":` \xB7 ${s.source}`}`,d.append(u,p);let h=document.createElement("button");h.type="button",h.textContent="Copy",h.setAttribute("data-reticle-copy-note",String(a)),l.append(d,h),r.appendChild(l)})},VC=function(){let e=E(this,se,Sm).call(this);e.length>0&&E(this,se,rS).call(this,e,c(this,ro)==="history"?location.origin:location.href)},rS=function(e,n){var r;(r=navigator.clipboard)==null||r.writeText(Sh(e,n)).catch(()=>{})}});function d4(t){let{name:e,done:n,total:r,status:o}=t;if(!(typeof e!="string"||typeof n!="number"||typeof r!="number")&&Object.values(rc).includes(o))return{name:e,done:n,total:r,status:o}}function f4(t){let e=t.replace(/[-_]+/g," ").trim();return e.length===0?t:e.charAt(0).toUpperCase()+e.slice(1)}function zC(t,e){let n=e?Q.PLAY:Q.PAUSE,r=e?bl.RESUME:bl.PAUSE;t.setAttribute("aria-label",r),t.setAttribute("title",r),t.replaceChildren(Qr(n,he.TOOLBAR)),t.classList.toggle("reticle-tb-btn--primary",e),t.setAttribute("data-active",e?"1":"0")}function h4(t){var e,n,r,o,s,a,l;return{pauseBtn:(e=t.querySelector("[data-reticle-pause]"))!=null?e:void 0,endBtn:(n=t.querySelector("[data-reticle-end]"))!=null?n:void 0,banner:(r=t.querySelector("[data-reticle-banner]"))!=null?r:void 0,copyBtn:(o=t.querySelector("[data-reticle-copy]"))!=null?o:void 0,exportBtn:(s=t.querySelector("[data-reticle-export]"))!=null?s:void 0,exportMsg:(a=t.querySelector("[data-reticle-export-msg]"))!=null?a:void 0,allFlows:(l=t.querySelector("[data-reticle-all-flows]"))!=null?l:void 0}}var o4,jC,i4,s4,bl,a4,XC,KC,WC,c4,l4,u4,p4,qC,Am,ZC,YC,ym,QC,JC,eL,tL,En,Qo,co,ma,np,Tl,Sl,_l,xl,ga,Ln,Je,sS,nL,rL,oL,iL,vm,Rm,Nm,aS=S(()=>{"use strict";xt();D();dt();Et();Tr();tl();$T();xm();o4="data-reticle-state",jC="data-reticle-tone",i4="data-on",s4="0",bl={PAUSE:"Pause",RESUME:"Resume",END:"End",SEND:"Send"},a4="PAUSED",XC="Session ended",KC="Copy run",WC="Export",c4=6e3,l4={[rc.PLAYING]:"\u23F5",[rc.PASSED]:"\u2713",[rc.FAILED]:"\u2717"};u4="Copied \u2713",p4="reticle-run.json",qC=4e3,Am={REPLAYABLE:"Replay without an agent",ELSEWHERE:"Starts on another page",EMPTY_TITLE:"No saved flows yet",EMPTY_HINT:"Every journey your agent verifies is saved here, ready to replay in one click."};ZC=`
564
564
  [data-reticle-chat-panel] [data-reticle-foot]{flex:none;padding:6px 10px 8px;border-top:1px solid rgba(255,255,255,.07);
565
565
  background:linear-gradient(180deg,rgba(0,0,0,.35) 0%,rgba(0,0,0,.55) 100%);pointer-events:auto;}
566
566
  [data-reticle-chat-panel] .reticle-foot-workspace-row{display:flex;flex-wrap:wrap;align-items:center;min-width:0;}
@@ -663,7 +663,7 @@ ${aO}`,Qb="[data-reticle-harness-page] :is([data-reticle-harness-run],[data-reti
663
663
  [data-reticle-chat-panel] .reticle-marks-copy[data-copied="1"]{color:#22c55e;border-color:#22c55e;}
664
664
  [data-reticle-hud] .reticle-export-msg{position:absolute;width:1px;height:1px;margin:-1px;padding:0;
665
665
  overflow:hidden;clip-path:inset(50%);white-space:nowrap;border:0;}
666
- `;RO="Copy for your agent",Lh=pe.TOOLBAR,IO=`<button type="button" data-reticle-pause class="reticle-status-btn" title="${Jc.PAUSE}" aria-label="${Jc.PAUSE}">${Ee(Y.PAUSE,Lh)}</button><span data-reticle-badge class="reticle-pause-badge">${fF}</span><button type="button" data-reticle-end class="reticle-status-btn reticle-status-stop" title="${Jc.END}" aria-label="${Jc.END}">${Ee(Y.STOP,Lh)}</button><button type="button" data-reticle-copy class="reticle-status-btn" title="${AO}" aria-label="${AO}" hidden>${Ee(Y.COPY,Lh)}</button><button type="button" data-reticle-export class="reticle-status-btn" title="${yO}" aria-label="${yO}" hidden>${Ee(Y.DOWNLOAD,Lh)}</button><span data-reticle-export-msg class="reticle-export-msg" aria-live="polite"></span>`,CO=`<div data-reticle-banner class="reticle-banner">${NO}</div>`,LO=`<div ${qf} class="reticle-marks-row" hidden><span data-reticle-marks-text class="reticle-marks-text"></span><button type="button" ${Xf} class="reticle-marks-copy" title="${RO}">${Ee(Y.COPY,pe.HELP)}<span>${RO}</span></button></div>`,kO=`<div data-reticle-foot><div class="reticle-foot-stack">${mO}<div class="reticle-foot-workspace-row">${C0()}</div></div></div>`;Mh=class{constructor(e){b(this,Xe);b(this,pn,{pauseBtn:void 0,endBtn:void 0,banner:void 0,copyBtn:void 0,exportBtn:void 0,exportMsg:void 0,allFlows:void 0});b(this,Po,Me.ACTIVE);b(this,Xr);b(this,Ya);b(this,Ru);b(this,el,[]);b(this,tl);b(this,nl);b(this,rl);b(this,Xa);b(this,vn);h(this,vn,e)}get state(){return c(this,Po)}mount(e,n){var s,l,d,u,p;h(this,Xa,new AbortController);let{signal:r}=c(this,Xa);h(this,Ya,e),h(this,Ru,n),h(this,pn,SF(e));let o=c(this,pn).pauseBtn;o!==void 0&&vO(o,c(this,Po)===Me.PAUSED),(s=c(this,pn).pauseBtn)==null||s.addEventListener("click",()=>E(this,Xe,$O).call(this),{signal:r}),(l=c(this,pn).endBtn)==null||l.addEventListener("click",()=>E(this,Xe,PO).call(this),{signal:r});let a=f=>{let m=f.target;if(!(m instanceof HTMLElement))return;let g=m.closest("[data-reticle-replay]");if(g===null||g.disabled)return;let T=g.getAttribute("data-reticle-replay");T!==null&&T.length>0&&c(this,vn).emit(Ht.REPLAY,T)};(d=c(this,pn).allFlows)==null||d.addEventListener("click",a,{signal:r}),(u=c(this,pn).copyBtn)==null||u.addEventListener("click",()=>E(this,Xe,DO).call(this),{signal:r}),(p=c(this,pn).exportBtn)==null||p.addEventListener("click",()=>E(this,Xe,MO).call(this),{signal:r}),h(this,rl,L0(e)),E(this,Xe,Dh).call(this),this.setState(Me.ACTIVE)}teardown(){var e,n;(e=c(this,Xa))==null||e.abort(),h(this,Xa,void 0),(n=c(this,rl))==null||n.call(this),h(this,rl,void 0),c(this,Xr)!==void 0&&Te(c(this,Xr)),h(this,Xr,void 0)}setFlowProgress(e){let n=gF(e);n!==void 0&&(h(this,tl,n),c(this,nl)!==void 0&&Te(c(this,nl)),h(this,nl,$s.PLAYING===n.status?void 0:ee(()=>{h(this,tl,void 0),E(this,Xe,kh).call(this)},hF)),E(this,Xe,kh).call(this))}setFlows(e){let n=Array.isArray(e)?e:[];h(this,el,n.map(r=>{if(typeof r=="string")return r.length>0?{name:r}:null;if(typeof r=="object"&&r!==null){let o=r,a=o.name;if(typeof a!="string"||a.length===0)return null;let s=o.start,l=o.createdAt;return{name:a,...typeof s=="string"&&s.length>0?{start:s}:{},...typeof l=="number"&&Number.isFinite(l)?{createdAt:l}:{}}}return null}).filter(r=>r!==null)),E(this,Xe,Dh).call(this)}refilterFlows(){E(this,Xe,Dh).call(this)}setState(e,n,r){var l,d,u,p,f;h(this,Po,e),(l=c(this,Ya))==null||l.setAttribute(dF,e);let o=r!==void 0&&r!==Hs.CALM;o?(d=c(this,Ya))==null||d.setAttribute(xO,r):(u=c(this,Ya))==null||u.removeAttribute(xO),c(this,Xr)!==void 0&&(Te(c(this,Xr)),h(this,Xr,void 0));let a=c(this,pn),s=e===Me.ENDED;if(a.pauseBtn!==void 0&&(vO(a.pauseBtn,e===Me.PAUSED),a.pauseBtn.hidden=s),a.endBtn!==void 0&&(a.endBtn.hidden=s),a.copyBtn!==void 0&&(s?a.copyBtn.removeAttribute("hidden"):a.copyBtn.setAttribute("hidden","")),a.exportBtn!==void 0&&(s?a.exportBtn.removeAttribute("hidden"):a.exportBtn.setAttribute("hidden","")),a.banner!==void 0){let m=n!==void 0&&n.trim().length>0?n.trim():"";a.banner.textContent=o&&m.length>0?m:`${NO}${m.length>0?` \xB7 ${m}`:""}`}if(s){let m=c(this,Ru);h(this,Xr,ee(()=>{m==null||m.setAttribute(uF,pF)},c(this,vn).endedFadeMs))}(f=(p=c(this,vn)).onStateChange)==null||f.call(p,e)}};pn=new WeakMap,Po=new WeakMap,Xr=new WeakMap,Ya=new WeakMap,Ru=new WeakMap,el=new WeakMap,tl=new WeakMap,nl=new WeakMap,rl=new WeakMap,Xa=new WeakMap,vn=new WeakMap,Xe=new WeakSet,aT=function(){return JSON.stringify(c(this,vn).runState(),null,2)},DO=function(){var n,r,o;(n=navigator.clipboard)==null||n.writeText(E(this,Xe,aT).call(this)),yn().clearOnCopy&&((o=(r=c(this,vn)).clearRunLog)==null||o.call(r));let e=c(this,pn).exportMsg;e!==void 0&&(e.textContent=EF,e.setAttribute("data-show","1"),ee(()=>e.setAttribute("data-show","0"),1600))},MO=function(){var o,a;let e=new Blob([E(this,Xe,aT).call(this)],{type:"application/json"}),n=URL.createObjectURL(e),r=document.createElement("a");r.href=n,r.download=bF,r.click(),URL.revokeObjectURL(n),yn().clearOnCopy&&((a=(o=c(this,vn)).clearRunLog)==null||a.call(o))},$O=function(){c(this,Po)===Me.PAUSED?(c(this,vn).emit(Ht.RESUME),this.setState(Me.ACTIVE)):c(this,Po)===Me.ACTIVE&&(c(this,vn).emit(Ht.PAUSE),this.setState(Me.PAUSED))},PO=function(){c(this,Po)!==Me.ENDED&&(c(this,vn).emit(Ht.END),this.setState(Me.ENDED))},kh=function(){var n,r,o;let e=c(this,tl);for(let a of(r=(n=c(this,pn).allFlows)==null?void 0:n.querySelectorAll("[data-reticle-replay]"))!=null?r:[]){let s=(o=a.getAttribute("data-reticle-replay"))!=null?o:"";if(!(e!==void 0&&e.name===s)){a.removeAttribute("data-state"),a.style.removeProperty("--reticle-flow-progress"),a.classList.contains("reticle-flow")&&(a.textContent=`\u25B6 ${s}`);continue}let d=0<e.total?Math.round(100*e.done/e.total):4;a.setAttribute("data-state",e.status),a.style.setProperty("--reticle-flow-progress",`${String(Math.max(4,d))}%`);let u=mF[e.status];a.classList.contains("reticle-flow")&&(a.textContent=`${u} ${s}`);let p=a.querySelector(".reticle-flow-play");p!==null&&(p.textContent=u);let f=a.querySelector(".reticle-flow-meta");f!==null&&0<e.total&&(f.textContent=`Step ${String(e.done)} of ${String(e.total)}`)}},Dh=function(){let e=c(this,pn).allFlows;if(e===void 0)return;let n=e.ownerDocument,r=new Set(Array.from(n.querySelectorAll(rr())).map(s=>Pe(s))),o=s=>s.start===void 0||r.has(s.start);e.replaceChildren();let a=(s,l,d)=>{let u=n.createElement("button");u.type="button",u.className="reticle-flow-row",u.setAttribute("data-reticle-replay",l.name),u.title=l.name,u.disabled=!d;let p=n.createElement("span");p.className="reticle-flow-play",p.setAttribute("aria-hidden","true"),p.textContent="\u25B6";let f=n.createElement("span");f.className="reticle-flow-text";let m=n.createElement("span");m.className="reticle-flow-name",m.textContent=TF(l.name);let g=n.createElement("span");g.className="reticle-flow-meta",g.textContent=d?Ch.REPLAYABLE:Ch.ELSEWHERE,f.append(m,g),u.append(p,f),s.appendChild(u)};if(c(this,el).length===0){let s=n.createElement("div");s.className="reticle-flows-empty";let l=n.createElement("strong");l.textContent=Ch.EMPTY_TITLE;let d=n.createElement("span");d.textContent=Ch.EMPTY_HINT,s.append(l,d),e.appendChild(s)}else for(let s of[...c(this,el)].sort((l,d)=>{var u,p;return((u=d.createdAt)!=null?u:0)-((p=l.createdAt)!=null?p:0)}))a(e,s,o(s));E(this,Xe,kh).call(this)}});var se,U,X,br,cT,HO,UO=S(()=>{"use strict";wo();ut();ut();mr();se="data-reticle-overlay",U="data-reticle-hud",X="data-reticle-chat-panel",br="data-reticle-state",cT="data-reticle-tone",HO=`
666
+ `;YC="Copy for your agent",ym=he.TOOLBAR,QC=`<button type="button" data-reticle-pause class="reticle-status-btn" title="${bl.PAUSE}" aria-label="${bl.PAUSE}">${Ee(Q.PAUSE,ym)}</button><span data-reticle-badge class="reticle-pause-badge">${a4}</span><button type="button" data-reticle-end class="reticle-status-btn reticle-status-stop" title="${bl.END}" aria-label="${bl.END}">${Ee(Q.STOP,ym)}</button><button type="button" data-reticle-copy class="reticle-status-btn" title="${KC}" aria-label="${KC}" hidden>${Ee(Q.COPY,ym)}</button><button type="button" data-reticle-export class="reticle-status-btn" title="${WC}" aria-label="${WC}" hidden>${Ee(Q.DOWNLOAD,ym)}</button><span data-reticle-export-msg class="reticle-export-msg" aria-live="polite"></span>`,JC=`<div data-reticle-banner class="reticle-banner">${XC}</div>`,eL=`<div ${Gh} class="reticle-marks-row" hidden><span data-reticle-marks-text class="reticle-marks-text"></span><button type="button" ${Fh} class="reticle-marks-copy" title="${YC}">${Ee(Q.COPY,he.HELP)}<span>${YC}</span></button></div>`,tL=`<div data-reticle-foot><div class="reticle-foot-stack">${$C}<div class="reticle-foot-workspace-row">${eC()}</div></div></div>`;Nm=class{constructor(e){b(this,Je);b(this,En,{pauseBtn:void 0,endBtn:void 0,banner:void 0,copyBtn:void 0,exportBtn:void 0,exportMsg:void 0,allFlows:void 0});b(this,Qo,$e.ACTIVE);b(this,co);b(this,ma);b(this,np);b(this,Tl,[]);b(this,Sl);b(this,_l);b(this,xl);b(this,ga);b(this,Ln);f(this,Ln,e)}get state(){return c(this,Qo)}mount(e,n){var a,l,d,u,p;f(this,ga,new AbortController);let{signal:r}=c(this,ga);f(this,ma,e),f(this,np,n),f(this,En,h4(e));let o=c(this,En).pauseBtn;o!==void 0&&zC(o,c(this,Qo)===$e.PAUSED),(a=c(this,En).pauseBtn)==null||a.addEventListener("click",()=>E(this,Je,oL).call(this),{signal:r}),(l=c(this,En).endBtn)==null||l.addEventListener("click",()=>E(this,Je,iL).call(this),{signal:r});let s=h=>{let m=h.target;if(!(m instanceof HTMLElement))return;let g=m.closest("[data-reticle-replay]");if(g===null||g.disabled)return;let T=g.getAttribute("data-reticle-replay");T!==null&&T.length>0&&c(this,Ln).emit(Xt.REPLAY,T)};(d=c(this,En).allFlows)==null||d.addEventListener("click",s,{signal:r}),(u=c(this,En).copyBtn)==null||u.addEventListener("click",()=>E(this,Je,nL).call(this),{signal:r}),(p=c(this,En).exportBtn)==null||p.addEventListener("click",()=>E(this,Je,rL).call(this),{signal:r}),f(this,xl,tC(e)),E(this,Je,Rm).call(this),this.setState($e.ACTIVE)}teardown(){var e,n;(e=c(this,ga))==null||e.abort(),f(this,ga,void 0),(n=c(this,xl))==null||n.call(this),f(this,xl,void 0),c(this,co)!==void 0&&_e(c(this,co)),f(this,co,void 0)}setFlowProgress(e){let n=d4(e);n!==void 0&&(f(this,Sl,n),c(this,_l)!==void 0&&_e(c(this,_l)),f(this,_l,rc.PLAYING===n.status?void 0:oe(()=>{f(this,Sl,void 0),E(this,Je,vm).call(this)},c4)),E(this,Je,vm).call(this))}setFlows(e){let n=Array.isArray(e)?e:[];f(this,Tl,n.map(r=>{if(typeof r=="string")return r.length>0?{name:r}:null;if(typeof r=="object"&&r!==null){let o=r,s=o.name;if(typeof s!="string"||s.length===0)return null;let a=o.start,l=o.createdAt;return{name:s,...typeof a=="string"&&a.length>0?{start:a}:{},...typeof l=="number"&&Number.isFinite(l)?{createdAt:l}:{}}}return null}).filter(r=>r!==null)),E(this,Je,Rm).call(this)}refilterFlows(){E(this,Je,Rm).call(this)}setState(e,n,r){var l,d,u,p,h;f(this,Qo,e),(l=c(this,ma))==null||l.setAttribute(o4,e);let o=r!==void 0&&r!==ic.CALM;o?(d=c(this,ma))==null||d.setAttribute(jC,r):(u=c(this,ma))==null||u.removeAttribute(jC),c(this,co)!==void 0&&(_e(c(this,co)),f(this,co,void 0));let s=c(this,En),a=e===$e.ENDED;if(s.pauseBtn!==void 0&&(zC(s.pauseBtn,e===$e.PAUSED),s.pauseBtn.hidden=a),s.endBtn!==void 0&&(s.endBtn.hidden=a),s.copyBtn!==void 0&&(a?s.copyBtn.removeAttribute("hidden"):s.copyBtn.setAttribute("hidden","")),s.exportBtn!==void 0&&(a?s.exportBtn.removeAttribute("hidden"):s.exportBtn.setAttribute("hidden","")),s.banner!==void 0){let m=n!==void 0&&n.trim().length>0?n.trim():"";s.banner.textContent=o&&m.length>0?m:`${XC}${m.length>0?` \xB7 ${m}`:""}`}if(a){let m=c(this,np);f(this,co,oe(()=>{m==null||m.setAttribute(i4,s4)},c(this,Ln).endedFadeMs))}(h=(p=c(this,Ln)).onStateChange)==null||h.call(p,e)}};En=new WeakMap,Qo=new WeakMap,co=new WeakMap,ma=new WeakMap,np=new WeakMap,Tl=new WeakMap,Sl=new WeakMap,_l=new WeakMap,xl=new WeakMap,ga=new WeakMap,Ln=new WeakMap,Je=new WeakSet,sS=function(){return JSON.stringify(c(this,Ln).runState(),null,2)},nL=function(){var n,r,o;(n=navigator.clipboard)==null||n.writeText(E(this,Je,sS).call(this)),nr().clearOnCopy&&((o=(r=c(this,Ln)).clearRunLog)==null||o.call(r));let e=c(this,En).exportMsg;e!==void 0&&(e.textContent=u4,e.setAttribute("data-show","1"),oe(()=>e.setAttribute("data-show","0"),1600))},rL=function(){var o,s;let e=new Blob([E(this,Je,sS).call(this)],{type:"application/json"}),n=URL.createObjectURL(e),r=document.createElement("a");r.href=n,r.download=p4,r.click(),URL.revokeObjectURL(n),nr().clearOnCopy&&((s=(o=c(this,Ln)).clearRunLog)==null||s.call(o))},oL=function(){c(this,Qo)===$e.PAUSED?(c(this,Ln).emit(Xt.RESUME),this.setState($e.ACTIVE)):c(this,Qo)===$e.ACTIVE&&(c(this,Ln).emit(Xt.PAUSE),this.setState($e.PAUSED))},iL=function(){c(this,Qo)!==$e.ENDED&&(c(this,Ln).emit(Xt.END),this.setState($e.ENDED))},vm=function(){var n,r,o;let e=c(this,Sl);for(let s of(r=(n=c(this,En).allFlows)==null?void 0:n.querySelectorAll("[data-reticle-replay]"))!=null?r:[]){let a=(o=s.getAttribute("data-reticle-replay"))!=null?o:"";if(!(e!==void 0&&e.name===a)){s.removeAttribute("data-state"),s.style.removeProperty("--reticle-flow-progress"),s.classList.contains("reticle-flow")&&(s.textContent=`\u25B6 ${a}`);continue}let d=0<e.total?Math.round(100*e.done/e.total):4;s.setAttribute("data-state",e.status),s.style.setProperty("--reticle-flow-progress",`${String(Math.max(4,d))}%`);let u=l4[e.status];s.classList.contains("reticle-flow")&&(s.textContent=`${u} ${a}`);let p=s.querySelector(".reticle-flow-play");p!==null&&(p.textContent=u);let h=s.querySelector(".reticle-flow-meta");h!==null&&0<e.total&&(h.textContent=`Step ${String(e.done)} of ${String(e.total)}`)}},Rm=function(){let e=c(this,En).allFlows;if(e===void 0)return;let n=e.ownerDocument,r=new Set(Array.from(n.querySelectorAll(Kn())).map(a=>Te(a))),o=a=>a.start===void 0||r.has(a.start);e.replaceChildren();let s=(a,l,d)=>{let u=n.createElement("button");u.type="button",u.className="reticle-flow-row",u.setAttribute("data-reticle-replay",l.name),u.title=l.name,u.disabled=!d;let p=n.createElement("span");p.className="reticle-flow-play",p.setAttribute("aria-hidden","true"),p.textContent="\u25B6";let h=n.createElement("span");h.className="reticle-flow-text";let m=n.createElement("span");m.className="reticle-flow-name",m.textContent=f4(l.name);let g=n.createElement("span");g.className="reticle-flow-meta",g.textContent=d?Am.REPLAYABLE:Am.ELSEWHERE,h.append(m,g),u.append(p,h),a.appendChild(u)};if(c(this,Tl).length===0){let a=n.createElement("div");a.className="reticle-flows-empty";let l=n.createElement("strong");l.textContent=Am.EMPTY_TITLE;let d=n.createElement("span");d.textContent=Am.EMPTY_HINT,a.append(l,d),e.appendChild(a)}else for(let a of[...c(this,Tl)].sort((l,d)=>{var u,p;return((u=d.createdAt)!=null?u:0)-((p=l.createdAt)!=null?p:0)}))s(e,a,o(a));E(this,Je,vm).call(this)}});var ce,F,ee,Nr,cS,sL,aL=S(()=>{"use strict";Ko();Et();Et();Ar();ce="data-reticle-overlay",F="data-reticle-hud",ee="data-reticle-chat-panel",Nr="data-reticle-state",cS="data-reticle-tone",sL=`
667
667
  /**
668
668
  * ONE colour says what the session is doing, and the user picks all three.
669
669
  *
@@ -672,13 +672,13 @@ ${aO}`,Qb="[data-reticle-harness-page] :is([data-reticle-harness-run],[data-reti
672
672
  * The defaults are blue / amber / red; the settings panel writes --reticle-c-* from the swatches,
673
673
  * because a signal colour that disappears into the user's own palette is not a signal.
674
674
  */
675
- [${se}]{
675
+ [${ce}]{
676
676
  --reticle-c-active:#3b82f6;--reticle-c-idle:#eab308;--reticle-c-ended:#ef4444;
677
677
  --reticle-state:var(--reticle-c-idle);}
678
- [${se}][${tu}="active"]{--reticle-state:var(--reticle-c-active);}
679
- [${se}][${br}="paused"]{--reticle-state:var(--reticle-c-idle);}
680
- [${se}][${br}="ended"]{--reticle-state:var(--reticle-c-ended);}
681
- [${D}]{
678
+ [${ce}][${Iu}="active"]{--reticle-state:var(--reticle-c-active);}
679
+ [${ce}][${Nr}="paused"]{--reticle-state:var(--reticle-c-idle);}
680
+ [${ce}][${Nr}="ended"]{--reticle-state:var(--reticle-c-ended);}
681
+ [${M}]{
682
682
  --reticle-surface:color-mix(in srgb,var(--reticle-hud-surface) 78%,transparent);
683
683
  /* No literal here: --reticle-accent is published on the overlay from the chosen status theme.
684
684
  Redefining it on the dock made every accented control - toolbar toggles, focus rings, the send
@@ -703,17 +703,17 @@ ${aO}`,Qb="[data-reticle-harness-page] :is([data-reticle-harness-run],[data-reti
703
703
  /* The log is the reason the panel exists, so it gets the height rather than the chrome. */
704
704
  --reticle-chat-h:var(--reticle-hud-panel-height,440px);
705
705
  opacity:0;transform:translate3d(0,8px,0);transition:opacity var(--reticle-shell-fast),transform var(--reticle-shell-fast);}
706
- [${D}][data-dragged="1"]{left:var(--reticle-hud-x);top:var(--reticle-hud-y);bottom:auto;right:auto;transform:none;}
707
- [${D}][data-dragged="1"][data-on="1"]{transform:none;}
708
- [${D}][data-on="1"]{opacity:1;transform:translate3d(0,0,0);pointer-events:none;}
709
- [${D}][data-on="0"]{opacity:0;pointer-events:none;}
706
+ [${M}][data-dragged="1"]{left:var(--reticle-hud-x);top:var(--reticle-hud-y);bottom:auto;right:auto;transform:none;}
707
+ [${M}][data-dragged="1"][data-on="1"]{transform:none;}
708
+ [${M}][data-on="1"]{opacity:1;transform:translate3d(0,0,0);pointer-events:none;}
709
+ [${M}][data-on="0"]{opacity:0;pointer-events:none;}
710
710
  /**
711
711
  * The panel is painted by HUD_GLASS_PAINT: an opaque navy fill, lit by the state colour, with that
712
712
  * colour glowing behind it. No backdrop-filter: blur(24px) here was measured as the single most
713
713
  * expensive thing in the whole SDK.
714
714
  */
715
- [${X}]{
716
- ${wc}
715
+ [${ee}]{
716
+ ${zc}
717
717
  display:none;position:absolute;right:0;left:auto;bottom:calc(100% + 8px);top:auto;z-index:5;
718
718
  box-sizing:border-box;width:var(--reticle-dock-w);max-width:min(var(--reticle-dock-w),calc(100vw - 16px));
719
719
  height:min(var(--reticle-chat-max-h,var(--reticle-chat-h)),calc(100vh - 120px));
@@ -724,15 +724,15 @@ ${aO}`,Qb="[data-reticle-harness-page] :is([data-reticle-harness-run],[data-reti
724
724
  contain:layout style paint;
725
725
  transform:translateZ(0);
726
726
  pointer-events:none;}
727
- [${D}][${Io}="below"] [${X}]{
727
+ [${M}][${zo}="below"] [${ee}]{
728
728
  bottom:auto;top:calc(100% + 8px);}
729
- [${D}][${Nt}="start"] [${X}]{
729
+ [${M}][${Ht}="start"] [${ee}]{
730
730
  right:auto;left:0;}
731
- [${se}][${ot}="1"] [${X}]{
731
+ [${ce}][${ut}="1"] [${ee}]{
732
732
  display:flex;pointer-events:auto;}
733
- [${X}][hidden]{display:none!important;}
734
- [${D}][${Io}="below"] [data-reticle-page-panel]{bottom:auto;top:calc(100% + 8px);}
735
- [${D}][${Nt}="start"] [data-reticle-page-panel]{right:auto;left:0;}
733
+ [${ee}][hidden]{display:none!important;}
734
+ [${M}][${zo}="below"] [data-reticle-page-panel]{bottom:auto;top:calc(100% + 8px);}
735
+ [${M}][${Ht}="start"] [data-reticle-page-panel]{right:auto;left:0;}
736
736
  /**
737
737
  * Idle, and not blocking the page: the card is not in use.
738
738
  *
@@ -740,13 +740,13 @@ ${aO}`,Qb="[data-reticle-harness-page] :is([data-reticle-harness-run],[data-reti
740
740
  * under the card landed on an empty transcript. Playwright named that div. The card passes the
741
741
  * event through. The buttons stay clickable, which is the chrome a person still needs (#992).
742
742
  */
743
- [${se}][data-reticle-mode="idle"][data-reticle-block="0"] [${X}],
744
- [${se}][data-reticle-mode="idle"][data-reticle-block="0"] [${X}] [data-reticle-log]{
743
+ [${ce}][data-reticle-mode="idle"][data-reticle-block="0"] [${ee}],
744
+ [${ce}][data-reticle-mode="idle"][data-reticle-block="0"] [${ee}] [data-reticle-log]{
745
745
  pointer-events:none;}
746
746
  /* ...except a log with more than it shows: a feed nobody can scroll back through is not a log. */
747
- [${se}][data-reticle-mode="idle"][data-reticle-block="0"] [${X}] [data-reticle-log][data-reticle-log-scrollable]{
747
+ [${ce}][data-reticle-mode="idle"][data-reticle-block="0"] [${ee}] [data-reticle-log][data-reticle-log-scrollable]{
748
748
  pointer-events:auto;}
749
- [${se}][data-reticle-mode="idle"][data-reticle-block="0"] [${X}] :is(button,a,input,select,textarea){
749
+ [${ce}][data-reticle-mode="idle"][data-reticle-block="0"] [${ee}] :is(button,a,input,select,textarea){
750
750
  pointer-events:auto;}
751
751
  /**
752
752
  * Minimising the chat leaves a CAPSULE, not a hole: the same glass, the same state dot, the last
@@ -754,7 +754,7 @@ ${aO}`,Qb="[data-reticle-harness-page] :is([data-reticle-harness-run],[data-reti
754
754
  * clicked. Leaving the toolbar alone above an empty gap would make a minimised session look
755
755
  * identical to no session at all.
756
756
  */
757
- [${gt}]{
757
+ [${yt}]{
758
758
  display:none;position:absolute;right:0;left:auto;bottom:calc(100% + 8px);z-index:5;
759
759
  box-sizing:border-box;width:var(--reticle-dock-w);
760
760
  max-width:min(var(--reticle-dock-w),calc(100vw - 16px));
@@ -763,101 +763,101 @@ ${aO}`,Qb="[data-reticle-harness-page] :is([data-reticle-harness-run],[data-reti
763
763
  radial-gradient(120% 160% at 50% 0%,color-mix(in srgb,var(--reticle-state) 18%,transparent),transparent 70%),
764
764
  linear-gradient(180deg,rgba(13,15,22,.96),rgba(19,22,32,.94));
765
765
  border:1px solid color-mix(in srgb,var(--reticle-state) 26%,rgba(255,255,255,.1));
766
- box-shadow:${hr},0 0 34px -14px var(--reticle-state);
766
+ box-shadow:${xr},0 0 34px -14px var(--reticle-state);
767
767
  color:var(--reticle-muted);font-family:var(--reticle-font);font-size:11px;line-height:1;
768
768
  transition:transform .1s ease,border-color .2s ease;}
769
- [${D}][${Io}="below"] [${gt}]{bottom:auto;top:calc(100% + 8px);}
770
- [${D}][${Nt}="start"] [${gt}]{right:auto;left:0;}
771
- [${se}][${ke}="0"]:not([${ot}="1"]) [${gt}]{
769
+ [${M}][${zo}="below"] [${yt}]{bottom:auto;top:calc(100% + 8px);}
770
+ [${M}][${Ht}="start"] [${yt}]{right:auto;left:0;}
771
+ [${ce}][${Me}="0"]:not([${ut}="1"]) [${yt}]{
772
772
  display:inline-flex;pointer-events:auto;}
773
- [${gt}]:hover{border-color:color-mix(in srgb,var(--reticle-c-active) 45%,transparent);}
774
- [${gt}]:active{transform:scale(.98);}
773
+ [${yt}]:hover{border-color:color-mix(in srgb,var(--reticle-c-active) 45%,transparent);}
774
+ [${yt}]:active{transform:scale(.98);}
775
775
  /* No dot in the capsule: the mark, the border and the glow already carry the state colour, and a
776
776
  pulsing dot next to a line of text that changes on its own was two things moving for one fact. */
777
- [${gt}] .reticle-mark{flex:none;height:14px;width:auto;color:var(--reticle-fg);opacity:.9;}
777
+ [${yt}] .reticle-mark{flex:none;height:14px;width:auto;color:var(--reticle-fg);opacity:.9;}
778
778
  /* Header: who this panel belongs to, and what the session is doing right now. */
779
- [${X}] .reticle-chat-head{
779
+ [${ee}] .reticle-chat-head{
780
780
  flex:none;display:flex;align-items:center;gap:8px;padding:11px 44px 9px 14px;
781
781
  border-bottom:1px solid rgba(255,255,255,.06);}
782
- [${X}] .reticle-chat-brand{display:inline-flex;align-items:center;gap:7px;color:var(--reticle-fg);}
782
+ [${ee}] .reticle-chat-brand{display:inline-flex;align-items:center;gap:7px;color:var(--reticle-fg);}
783
783
  /* The account capsule lives in the header, not the toolbar. The toolbar row is already 13px over its
784
784
  own width, so a 20px avatar there pushed the close button outside the panel. The header has the
785
785
  space, is visible under exactly the same condition, and is where an account avatar belongs anyway.
786
786
  margin-left:auto right-aligns it; the head reserves 44px of right padding for the caret above it,
787
787
  so the two never overlap. The :empty rule keeps the gap closed when no account state was sent. */
788
- [${X}] .reticle-head-account{margin-left:auto;display:inline-flex;align-items:center;}
789
- [${X}] .reticle-head-account:empty{display:none;}
788
+ [${ee}] .reticle-head-account{margin-left:auto;display:inline-flex;align-items:center;}
789
+ [${ee}] .reticle-head-account:empty{display:none;}
790
790
  /* The quiet way to the platform: one line of small text before the avatar, cut short before it pushes. */
791
- [${X}] .reticle-head-team{margin-left:auto;min-width:0;display:inline-flex;}
792
- [${X}] .reticle-head-team:empty{display:none;}
793
- [${X}] .reticle-head-team:not(:empty) + .reticle-head-account{margin-left:0;}
794
- [${X}] .reticle-team-link{min-width:0;max-width:100%;overflow:hidden;padding:0;border:0;background:none;cursor:pointer;font:inherit;font-size:var(--reticle-hud-size-xs);font-weight:500;color:var(--reticle-hud-text-muted);text-decoration:none;white-space:nowrap;text-overflow:ellipsis;}
795
- [${X}] .reticle-team-link span{display:block;overflow:hidden;text-overflow:ellipsis;}
796
- [${X}] .reticle-team-link:hover{color:var(--reticle-hud-brand);}
797
- [${X}] .reticle-team-link:focus-visible{outline:2px solid var(--reticle-hud-brand);outline-offset:2px;border-radius:var(--reticle-hud-radius-sm);}
798
- [${X}] .reticle-chat-brand .reticle-mark{height:14px;width:auto;}
799
- [${X}] .reticle-chat-brandname{font-size:12.5px;font-weight:600;letter-spacing:.01em;}
800
- [${X}] .reticle-view-heading{display:flex;justify-content:space-between;align-items:baseline;gap:8px;min-height:28px;box-sizing:border-box;padding:6px 12px 4px;border-bottom:1px solid var(--reticle-hud-border);}
801
- [${X}] .reticle-view-heading strong{font-size:11px;font-weight:600;}
791
+ [${ee}] .reticle-head-team{margin-left:auto;min-width:0;display:inline-flex;}
792
+ [${ee}] .reticle-head-team:empty{display:none;}
793
+ [${ee}] .reticle-head-team:not(:empty) + .reticle-head-account{margin-left:0;}
794
+ [${ee}] .reticle-team-link{min-width:0;max-width:100%;overflow:hidden;padding:0;border:0;background:none;cursor:pointer;font:inherit;font-size:var(--reticle-hud-size-xs);font-weight:500;color:var(--reticle-hud-text-muted);text-decoration:none;white-space:nowrap;text-overflow:ellipsis;}
795
+ [${ee}] .reticle-team-link span{display:block;overflow:hidden;text-overflow:ellipsis;}
796
+ [${ee}] .reticle-team-link:hover{color:var(--reticle-hud-brand);}
797
+ [${ee}] .reticle-team-link:focus-visible{outline:2px solid var(--reticle-hud-brand);outline-offset:2px;border-radius:var(--reticle-hud-radius-sm);}
798
+ [${ee}] .reticle-chat-brand .reticle-mark{height:14px;width:auto;}
799
+ [${ee}] .reticle-chat-brandname{font-size:12.5px;font-weight:600;letter-spacing:.01em;}
800
+ [${ee}] .reticle-view-heading{display:flex;justify-content:space-between;align-items:baseline;gap:8px;min-height:28px;box-sizing:border-box;padding:6px 12px 4px;border-bottom:1px solid var(--reticle-hud-border);}
801
+ [${ee}] .reticle-view-heading strong{font-size:11px;font-weight:600;}
802
802
  /* No state word here: the activity strip immediately below already says "idle \xB7 21s", and the
803
803
  dot in front of it carries the same colour. One fact, one place. */
804
- [${gt}] .reticle-chat-pill-text{
804
+ [${yt}] .reticle-chat-pill-text{
805
805
  flex:1;text-align:left;
806
806
  min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;
807
807
  font-variant-numeric:tabular-nums;letter-spacing:.01em;}
808
- [${gt}] .reticle-chat-pill-time{
808
+ [${yt}] .reticle-chat-pill-time{
809
809
  flex:none;color:var(--reticle-faint);font-variant-numeric:tabular-nums;}
810
- [${gt}] .reticle-chat-pill-caret{
810
+ [${yt}] .reticle-chat-pill-caret{
811
811
  flex:none;display:inline-flex;color:var(--reticle-faint);line-height:0;transform:rotate(180deg);}
812
- [${gt}] .reticle-chat-pill-caret svg{
812
+ [${yt}] .reticle-chat-pill-caret svg{
813
813
  display:block;fill:none;stroke:currentColor;stroke-width:1.5;stroke-linecap:round;stroke-linejoin:round;}
814
814
  /* Minimise the chat without collapsing the whole HUD \u2014 sits over the panel's top-right corner. */
815
- [${D}] .reticle-chat-min{
815
+ [${M}] .reticle-chat-min{
816
816
  position:absolute;top:6px;right:6px;z-index:4;
817
817
  width:26px;height:26px;padding:0;border:none;border-radius:50%;cursor:pointer;
818
818
  display:inline-flex;align-items:center;justify-content:center;
819
819
  background:transparent;color:rgba(255,255,255,.6);line-height:0;}
820
- [${D}] .reticle-chat-min:hover{background:rgba(255,255,255,.07);color:var(--reticle-fg);}
821
- [${D}] .reticle-chat-min svg{display:block;fill:none;stroke:currentColor;stroke-width:1.5;
820
+ [${M}] .reticle-chat-min:hover{background:rgba(255,255,255,.07);color:var(--reticle-fg);}
821
+ [${M}] .reticle-chat-min svg{display:block;fill:none;stroke:currentColor;stroke-width:1.5;
822
822
  stroke-linecap:round;stroke-linejoin:round;}
823
- [${se}][${Jf}="0"] [${Zd}]{display:none;}
824
- [${se}][${Gr}="1"] [${U}],
825
- [${se}][${Gr}="1"] [${X}],
826
- [${se}][${Gr}="1"] [data-reticle-settings-panel]{
823
+ [${ce}][${Kh}="0"] [${Ru}]{display:none;}
824
+ [${ce}][${Jr}="1"] [${F}],
825
+ [${ce}][${Jr}="1"] [${ee}],
826
+ [${ce}][${Jr}="1"] [data-reticle-settings-panel]{
827
827
  transition-duration:.01ms !important;}
828
- [${se}][${Gr}="1"] .reticle-fab-pulse,
829
- [${se}][${Gr}="1"] .reticle-act-dot,
830
- [${se}][${Gr}="1"] [data-bump="1"]{animation:none !important;}
831
- [${U}]{
828
+ [${ce}][${Jr}="1"] .reticle-fab-pulse,
829
+ [${ce}][${Jr}="1"] .reticle-act-dot,
830
+ [${ce}][${Jr}="1"] [data-bump="1"]{animation:none !important;}
831
+ [${F}]{
832
832
  /* Centre the toolbar in the pill. The toolbar is 32px inside a 36px content box and, as a plain
833
833
  block child, sat flush against padding-top - every icon rode 2px high in a rounded bar, which
834
834
  is exactly the offset the eye picks up on a pill. */
835
835
  position:relative;box-sizing:border-box;pointer-events:auto;flex:none;
836
836
  display:flex;align-items:center;
837
837
  width:44px;height:44px;min-height:44px;max-height:44px;overflow:visible;
838
- background:${lb};
838
+ background:${dT};
839
839
  color:#fff;border:none;border-radius:22px;
840
840
  box-shadow:0 2px 12px rgba(0,0,0,.45),inset 0 1px 0 rgba(255,255,255,.06),0 0 0 1px rgba(255,255,255,.1);
841
841
  contain:layout style;
842
842
  transition:width .26s var(--reticle-shell-ease),border-radius .26s var(--reticle-shell-ease),
843
843
  transform var(--reticle-shell-fast),opacity .18s ease;
844
844
  will-change:width,border-radius,transform;}
845
- [${se}][${ke}="0"] [${U}]{
845
+ [${ce}][${Me}="0"] [${F}]{
846
846
  box-shadow:0 4px 20px rgba(0,0,0,.5),inset 0 1px 0 rgba(255,255,255,.08),0 0 0 1px rgba(255,255,255,.12);}
847
- [${U}] .reticle-hud-deco{
847
+ [${F}] .reticle-hud-deco{
848
848
  position:absolute;inset:0;z-index:0;border-radius:inherit;pointer-events:none;
849
849
  opacity:0;visibility:hidden;}
850
- [${se}][${ke}="0"] [${U}] .reticle-hud-deco{
850
+ [${ce}][${Me}="0"] [${F}] .reticle-hud-deco{
851
851
  opacity:1;visibility:visible;}
852
- [${U}][data-on="0"]{opacity:0;transform:scale(.8);pointer-events:none;}
853
- [${U}][data-on="1"]{opacity:1;transform:scale(1);}
852
+ [${F}][data-on="0"]{opacity:0;transform:scale(.8);pointer-events:none;}
853
+ [${F}][data-on="1"]{opacity:1;transform:scale(1);}
854
854
  /* The expanded HUD IS the shared column width; the toolbar fills its content box. Sizing the
855
855
  toolbar to the dock width instead pushed it past the HUD's padding, and the last button - Exit -
856
856
  rendered outside the rounded box it belongs to. */
857
- [${se}][${ke}="0"] [${U}]{
857
+ [${ce}][${Me}="0"] [${F}]{
858
858
  width:min(calc(100vw - 24px),var(--reticle-dock-w));height:44px;min-height:44px;max-height:44px;
859
859
  min-width:44px;border-radius:24px;padding:4px 6px;}
860
- [${U}] .reticle-fab{
860
+ [${F}] .reticle-fab{
861
861
  position:absolute;inset:0;z-index:2;display:inline-flex;align-items:center;justify-content:center;
862
862
  width:44px;height:44px;padding:0;margin:0;border:none;border-radius:22px;cursor:pointer;
863
863
  background:transparent;color:var(--reticle-fg);line-height:0;
@@ -867,116 +867,116 @@ ${aO}`,Qb="[data-reticle-harness-page] :is([data-reticle-harness-run],[data-reti
867
867
  * waiting or done. It carries the state colour as a halo: breathing while the agent drives, a
868
868
  * steady soft ring while idle, and a flat dim ring once the session has ended.
869
869
  */
870
- [${se}][${ke}="1"] [${U}] .reticle-fab{
870
+ [${ce}][${Me}="1"] [${F}] .reticle-fab{
871
871
  cursor:grab;touch-action:none;user-select:none;
872
872
  box-shadow:0 0 0 1px color-mix(in srgb,var(--reticle-state) 55%,transparent),
873
873
  0 0 14px -2px color-mix(in srgb,var(--reticle-state) 45%,transparent);}
874
- [${se}][${ke}="1"][${tu}="active"] [${U}] .reticle-fab{
874
+ [${ce}][${Me}="1"][${Iu}="active"] [${F}] .reticle-fab{
875
875
  animation:reticle-fab-breathe 1.6s ease-in-out infinite;}
876
- [${se}][${ke}="1"][${br}="ended"] [${U}] .reticle-fab{
876
+ [${ce}][${Me}="1"][${Nr}="ended"] [${F}] .reticle-fab{
877
877
  animation:none;box-shadow:0 0 0 1px color-mix(in srgb,var(--reticle-state) 40%,transparent);}
878
878
  @keyframes reticle-fab-breathe{
879
879
  0%,100%{box-shadow:0 0 0 1px color-mix(in srgb,var(--reticle-state) 70%,transparent),
880
880
  0 0 16px -2px color-mix(in srgb,var(--reticle-state) 55%,transparent)}
881
881
  50%{box-shadow:0 0 0 2px var(--reticle-state),
882
882
  0 0 28px 2px color-mix(in srgb,var(--reticle-state) 70%,transparent)}}
883
- [${se}][${Gr}="1"] [${U}] .reticle-fab{animation:none;}
884
- [${se}][${ke}="1"] [${U}] .reticle-fab.reticle-drag-handle--dragging{
883
+ [${ce}][${Jr}="1"] [${F}] .reticle-fab{animation:none;}
884
+ [${ce}][${Me}="1"] [${F}] .reticle-fab.reticle-drag-handle--dragging{
885
885
  cursor:grabbing;}
886
- [${U}] .reticle-fab-mark{height:22px;width:auto;pointer-events:none;}
887
- [${U}] .reticle-fab:hover{background:rgba(255,255,255,.08);}
888
- [${U}] .reticle-fab:active{transform:scale(.95);}
889
- [${U}] .reticle-fab:focus-visible{outline:2px solid color-mix(in srgb,var(--reticle-accent) 75%,transparent);outline-offset:2px;}
890
- [${U}] .reticle-fab-pulse{
886
+ [${F}] .reticle-fab-mark{height:22px;width:auto;pointer-events:none;}
887
+ [${F}] .reticle-fab:hover{background:rgba(255,255,255,.08);}
888
+ [${F}] .reticle-fab:active{transform:scale(.95);}
889
+ [${F}] .reticle-fab:focus-visible{outline:2px solid color-mix(in srgb,var(--reticle-accent) 75%,transparent);outline-offset:2px;}
890
+ [${F}] .reticle-fab-pulse{
891
891
  position:absolute;top:6px;right:6px;width:6px;height:6px;border-radius:50%;
892
892
  background:var(--reticle-accent);opacity:0;transform:scale(.6);transition:opacity .2s,transform .2s;}
893
- [${U}] .reticle-fab[data-pulse="1"] .reticle-fab-pulse{opacity:1;transform:scale(1);}
894
- [${U}] .reticle-fab-badge{
893
+ [${F}] .reticle-fab[data-pulse="1"] .reticle-fab-pulse{opacity:1;transform:scale(1);}
894
+ [${F}] .reticle-fab-badge{
895
895
  position:absolute;top:-13px;right:-13px;min-width:18px;height:18px;padding:0 5px;border-radius:9px;
896
896
  background:var(--reticle-accent);color:#fff;font-size:10px;font-weight:600;
897
897
  display:flex;align-items:center;justify-content:center;pointer-events:none;
898
898
  box-shadow:0 1px 3px rgba(0,0,0,.15);}
899
- [${U}] .reticle-fab-badge[hidden]{display:none;}
900
- [${se}][${ke}="0"] [${U}] .reticle-fab{
899
+ [${F}] .reticle-fab-badge[hidden]{display:none;}
900
+ [${ce}][${Me}="0"] [${F}] .reticle-fab{
901
901
  opacity:0;pointer-events:none;visibility:hidden;}
902
902
  /* The toolbar is the third element in the same column, so it carries the same width as the chat
903
903
  and the capsule above it and spreads its groups across it, rather than hugging its icons. */
904
- [${U}] .reticle-toolbar{
904
+ [${F}] .reticle-toolbar{
905
905
  position:relative;z-index:1;display:none;align-items:center;justify-content:space-between;
906
906
  box-sizing:border-box;width:100%;
907
907
  gap:4px;height:32px;padding:0 2px;
908
908
  overflow:visible;opacity:0;transform:scale(.94);pointer-events:none;
909
909
  transition:opacity .2s var(--reticle-shell-ease),transform .18s var(--reticle-shell-ease);}
910
- [${se}][${ke}="0"] [${U}] .reticle-toolbar{
910
+ [${ce}][${Me}="0"] [${F}] .reticle-toolbar{
911
911
  display:flex;opacity:1;transform:scale(1);pointer-events:auto;}
912
912
  /* The HUD block is transformed, which makes it a stacking context at level 0 inside the dock, so a
913
913
  tooltip's z-index only ranked it within the block and it drew behind the chat and settings panels,
914
914
  its siblings. Lift the block while a tooltip can show. */
915
- [${U}]:hover,[${U}]:focus-within{z-index:${String(cb)};}
916
- [${U}] .reticle-toolbar-drag{cursor:grab;touch-action:none;user-select:none;}
917
- [${U}] .reticle-toolbar-drag.reticle-drag-handle--dragging{cursor:grabbing;}
918
- [${U}] .reticle-toolbar-actions{
915
+ [${F}]:hover,[${F}]:focus-within{z-index:${String(lT)};}
916
+ [${F}] .reticle-toolbar-drag{cursor:grab;touch-action:none;user-select:none;}
917
+ [${F}] .reticle-toolbar-drag.reticle-drag-handle--dragging{cursor:grabbing;}
918
+ [${F}] .reticle-toolbar-actions{
919
919
  display:inline-flex;align-items:center;gap:2px;flex:none;
920
920
  padding:2px;border-radius:999px;background:rgba(0,0,0,.2);}
921
- [${U}] .reticle-toolbar-chrome{display:grid;grid-auto-flow:column;grid-auto-columns:minmax(0,1fr);align-items:center;gap:var(--reticle-hud-space-1);flex:1;min-width:0;}
922
- [${U}] .reticle-tb-sep{width:1px;height:14px;background:rgba(255,255,255,.12);margin:0 4px;flex:none;align-self:center;}
921
+ [${F}] .reticle-toolbar-chrome{display:grid;grid-auto-flow:column;grid-auto-columns:minmax(0,1fr);align-items:center;gap:var(--reticle-hud-space-1);flex:1;min-width:0;}
922
+ [${F}] .reticle-tb-sep{width:1px;height:14px;background:rgba(255,255,255,.12);margin:0 4px;flex:none;align-self:center;}
923
923
 
924
- [${U}] .reticle-tb-wrap{position:relative;display:flex;align-items:center;justify-content:center;overflow:visible;}
925
- [${U}] .reticle-tb-btn{
924
+ [${F}] .reticle-tb-wrap{position:relative;display:flex;align-items:center;justify-content:center;overflow:visible;}
925
+ [${F}] .reticle-tb-btn{
926
926
  flex:none;display:inline-flex;align-items:center;justify-content:center;
927
927
  width:var(--reticle-hud-control-size);height:var(--reticle-hud-control-size);padding:0;border:none;border-radius:var(--reticle-hud-radius-pill);cursor:pointer;
928
928
  background:transparent;color:rgba(255,255,255,.85);line-height:0;
929
929
  transition:background-color .15s ease,color .15s ease,transform .1s ease,opacity .2s ease;}
930
- [${U}] .reticle-tb-btn:hover{background:rgba(255,255,255,.12);color:#fff;}
931
- [${U}] .reticle-tb-btn:active{transform:scale(.92);}
932
- [${U}] .reticle-tb-btn:focus-visible{outline:2px solid color-mix(in srgb,var(--reticle-accent) 65%,transparent);outline-offset:1px;}
933
- [${U}] .reticle-tb-btn:disabled{opacity:.35;cursor:not-allowed;transform:none;}
934
- [${U}] .reticle-tb-btn[data-active="1"]{color:var(--reticle-accent);
930
+ [${F}] .reticle-tb-btn:hover{background:rgba(255,255,255,.12);color:#fff;}
931
+ [${F}] .reticle-tb-btn:active{transform:scale(.92);}
932
+ [${F}] .reticle-tb-btn:focus-visible{outline:2px solid color-mix(in srgb,var(--reticle-accent) 65%,transparent);outline-offset:1px;}
933
+ [${F}] .reticle-tb-btn:disabled{opacity:.35;cursor:not-allowed;transform:none;}
934
+ [${F}] .reticle-tb-btn[data-active="1"]{color:var(--reticle-accent);
935
935
  background:color-mix(in srgb, var(--reticle-accent) 25%, transparent);}
936
- [${U}] .reticle-tb-btn--toggle[data-active="1"]{
936
+ [${F}] .reticle-tb-btn--toggle[data-active="1"]{
937
937
  color:var(--reticle-accent);background:transparent;}
938
- [${U}] .reticle-tb-btn--toggle[data-active="1"]:hover{background:rgba(255,255,255,.06);color:var(--reticle-accent);}
939
- [${U}] .reticle-hi-toggle{
938
+ [${F}] .reticle-tb-btn--toggle[data-active="1"]:hover{background:rgba(255,255,255,.06);color:var(--reticle-accent);}
939
+ [${F}] .reticle-hi-toggle{
940
940
  position:relative;display:inline-flex;align-items:center;justify-content:center;
941
941
  width:18px;height:18px;line-height:0;flex:none;}
942
- [${U}] .reticle-hi-toggle .reticle-hi-icon{
942
+ [${F}] .reticle-hi-toggle .reticle-hi-icon{
943
943
  position:absolute;inset:0;display:inline-flex;align-items:center;justify-content:center;
944
944
  transition:opacity .14s ease;}
945
- [${U}] .reticle-hi-toggle .reticle-hi-icon--solid{opacity:0;}
946
- [${U}] .reticle-hi-toggle .reticle-hi-icon--solid svg{
945
+ [${F}] .reticle-hi-toggle .reticle-hi-icon--solid{opacity:0;}
946
+ [${F}] .reticle-hi-toggle .reticle-hi-icon--solid svg{
947
947
  transform:scale(1.12);transform-origin:center;}
948
948
  /*
949
949
  * Active toggles keep the OUTLINE icon. The solid heroicon is a filled glyph next to 1.5px strokes
950
950
  * everywhere else, so a pressed button reads as a heavier typeface rather than as a state. Accent
951
951
  * colour and the background above already carry the state without changing the icon's weight.
952
952
  */
953
- [${U}] .reticle-tb-btn--toggle[data-active="1"] .reticle-hi-icon--outline{opacity:1;}
954
- [${U}] .reticle-tb-btn--toggle .reticle-hi-icon--solid{opacity:0;}
955
- [${U}] .reticle-tb-btn--toggle .reticle-hi-icon--solid svg{color:inherit;}
956
- [${U}] .reticle-tb-btn--primary[data-active="1"]{
953
+ [${F}] .reticle-tb-btn--toggle[data-active="1"] .reticle-hi-icon--outline{opacity:1;}
954
+ [${F}] .reticle-tb-btn--toggle .reticle-hi-icon--solid{opacity:0;}
955
+ [${F}] .reticle-tb-btn--toggle .reticle-hi-icon--solid svg{color:inherit;}
956
+ [${F}] .reticle-tb-btn--primary[data-active="1"]{
957
957
  color:#fff;background:rgba(255,255,255,.14);}
958
- [${U}] .reticle-tb-btn[data-danger]:hover:not(:disabled){color:#ff383c;
958
+ [${F}] .reticle-tb-btn[data-danger]:hover:not(:disabled){color:#ff383c;
959
959
  background:color-mix(in srgb, #ff383c 25%, transparent);}
960
- [${U}] .reticle-tb-tip{
960
+ [${F}] .reticle-tb-tip{
961
961
  position:absolute;bottom:calc(100% + 14px);left:50%;transform:translateX(-50%) scale(.95);
962
962
  padding:6px 10px;background:#1a1a1a;color:rgba(255,255,255,.9);font-size:12px;font-weight:500;
963
- border-radius:8px;white-space:nowrap;opacity:0;visibility:hidden;pointer-events:none;z-index:${String(cb)};
963
+ border-radius:8px;white-space:nowrap;opacity:0;visibility:hidden;pointer-events:none;z-index:${String(lT)};
964
964
  box-shadow:0 2px 8px rgba(0,0,0,.3);transition:opacity .135s ease,transform .135s ease,visibility .135s;}
965
- [${U}] .reticle-tb-tip::after{
965
+ [${F}] .reticle-tb-tip::after{
966
966
  content:"";position:absolute;top:calc(100% - 4px);left:50%;transform:translateX(-50%) rotate(45deg);
967
967
  width:8px;height:8px;background:#1a1a1a;border-radius:0 0 2px 0;}
968
- [${U}] .reticle-tb-wrap:hover .reticle-tb-tip{
968
+ [${F}] .reticle-tb-wrap:hover .reticle-tb-tip{
969
969
  opacity:1;visibility:visible;transform:translateX(-50%) scale(1);transition-delay:.3s;}
970
- [${U}] .reticle-tb-wrap:has(.reticle-tb-btn:disabled):hover .reticle-tb-tip{opacity:0;visibility:hidden;}
971
- [${U}] .reticle-tb-wrap--pause:hover .reticle-pause-badge{opacity:0;}
972
- [${U}] .reticle-tb-kbd{margin-left:4px;opacity:.5;}
973
- [${U}] .reticle-pause-badge{
970
+ [${F}] .reticle-tb-wrap:has(.reticle-tb-btn:disabled):hover .reticle-tb-tip{opacity:0;visibility:hidden;}
971
+ [${F}] .reticle-tb-wrap--pause:hover .reticle-pause-badge{opacity:0;}
972
+ [${F}] .reticle-tb-kbd{margin-left:4px;opacity:.5;}
973
+ [${F}] .reticle-pause-badge{
974
974
  display:none;position:absolute;bottom:calc(100% + 5px);left:50%;transform:translateX(-50%);
975
975
  align-items:center;flex:none;font-weight:600;letter-spacing:.08em;font-size:7px;
976
976
  color:var(--reticle-fg);border:1px solid rgba(255,255,255,.16);background:rgba(0,0,0,.55);
977
977
  padding:2px 6px;border-radius:999px;white-space:nowrap;pointer-events:none;z-index:2;
978
978
  transition:opacity .12s ease;}
979
- [${se}][${br}="paused"] [data-reticle-badge]{display:inline-flex;}
979
+ [${ce}][${Nr}="paused"] [data-reticle-badge]{display:inline-flex;}
980
980
  /**
981
981
  * The mode, ON the status row rather than under it.
982
982
  *
@@ -984,46 +984,46 @@ ${aO}`,Qb="[data-reticle-harness-page] :is([data-reticle-harness-run],[data-reti
984
984
  * from the elided action text. Nothing above or below moves: growing and shrinking by the height of
985
985
  * this pill on every tool call makes one status line look like a second UI appearing and leaving.
986
986
  */
987
- [${D}] .reticle-chip{display:none;flex:none;align-items:center;gap:4px;font-size:8px;font-weight:600;letter-spacing:.06em;
987
+ [${M}] .reticle-chip{display:none;flex:none;align-items:center;gap:4px;font-size:8px;font-weight:600;letter-spacing:.06em;
988
988
  height:16px;padding:0 7px;line-height:1;border-radius:999px;text-transform:uppercase;
989
989
  background:rgba(255,255,255,.06);opacity:0;transition:opacity .12s ease;}
990
- [${D}] .reticle-chip[data-mode="reading"],
991
- [${D}] .reticle-chip[data-mode="acting"]{opacity:1;}
992
- [${D}] .reticle-chip[data-mode="reading"],
993
- [${D}] .reticle-chip[data-mode="acting"]{display:inline-flex;color:var(--reticle-fg);}
994
- [${D}] .reticle-tally[hidden]{display:none;}
995
- [${D}] .reticle-tally{align-self:center;flex:none;}
996
- [${D}] .reticle-pill-group{
990
+ [${M}] .reticle-chip[data-mode="reading"],
991
+ [${M}] .reticle-chip[data-mode="acting"]{opacity:1;}
992
+ [${M}] .reticle-chip[data-mode="reading"],
993
+ [${M}] .reticle-chip[data-mode="acting"]{display:inline-flex;color:var(--reticle-fg);}
994
+ [${M}] .reticle-tally[hidden]{display:none;}
995
+ [${M}] .reticle-tally{align-self:center;flex:none;}
996
+ [${M}] .reticle-pill-group{
997
997
  display:inline-flex;align-items:stretch;flex:none;border-radius:999px;overflow:hidden;
998
998
  background:rgba(255,255,255,.06);box-shadow:inset 0 0 0 1px rgba(255,255,255,.1);}
999
- [${D}] .reticle-pill-segment{
999
+ [${M}] .reticle-pill-segment{
1000
1000
  display:inline-flex;align-items:center;gap:4px;height:22px;padding:0 8px;
1001
1001
  font-size:11px;font-weight:600;font-variant-numeric:tabular-nums;line-height:1;color:var(--reticle-fg);}
1002
- [${D}] .reticle-pill-segment[data-z="1"]{opacity:.4;}
1003
- [${D}] .reticle-t-pass.reticle-pill-segment{background:rgba(34,197,94,.14);color:#bbf7d0;}
1004
- [${D}] .reticle-t-fail.reticle-pill-segment{background:rgba(239,68,68,.14);color:#fecaca;}
1005
- [${D}] .reticle-pill-sep{width:1px;align-self:stretch;background:rgba(255,255,255,.12);flex:none;margin:0;}
1006
- [${D}] .reticle-pill-count{min-width:1ch;}
1007
- [${D}] .reticle-tally .reticle-hi-icon{opacity:.92;}
1002
+ [${M}] .reticle-pill-segment[data-z="1"]{opacity:.4;}
1003
+ [${M}] .reticle-t-pass.reticle-pill-segment{background:rgba(34,197,94,.14);color:#bbf7d0;}
1004
+ [${M}] .reticle-t-fail.reticle-pill-segment{background:rgba(239,68,68,.14);color:#fecaca;}
1005
+ [${M}] .reticle-pill-sep{width:1px;align-self:stretch;background:rgba(255,255,255,.12);flex:none;margin:0;}
1006
+ [${M}] .reticle-pill-count{min-width:1ch;}
1007
+ [${M}] .reticle-tally .reticle-hi-icon{opacity:.92;}
1008
1008
  @keyframes reticle-tally-pop{0%{transform:scale(1)}38%{transform:scale(1.3)}100%{transform:scale(1)}}
1009
- [${D}] .reticle-tally [data-bump="1"]{display:inline-flex;animation:reticle-tally-pop .36s cubic-bezier(.16,1,.3,1);}
1010
- [${U}] .reticle-hi-icon{display:inline-flex;align-items:center;justify-content:center;line-height:1;flex-shrink:0;color:inherit;}
1011
- [${U}] .reticle-hi-icon svg{display:block;fill:none;stroke:currentColor;stroke-width:1.5;stroke-linecap:round;stroke-linejoin:round;}
1012
- [${U}] .reticle-live{display:none;}
1013
- [${X}] .reticle-act-strip{flex:none;display:flex;align-items:center;gap:7px;min-height:36px;box-sizing:border-box;padding:4px 12px;
1009
+ [${M}] .reticle-tally [data-bump="1"]{display:inline-flex;animation:reticle-tally-pop .36s cubic-bezier(.16,1,.3,1);}
1010
+ [${F}] .reticle-hi-icon{display:inline-flex;align-items:center;justify-content:center;line-height:1;flex-shrink:0;color:inherit;}
1011
+ [${F}] .reticle-hi-icon svg{display:block;fill:none;stroke:currentColor;stroke-width:1.5;stroke-linecap:round;stroke-linejoin:round;}
1012
+ [${F}] .reticle-live{display:none;}
1013
+ [${ee}] .reticle-act-strip{flex:none;display:flex;align-items:center;gap:7px;min-height:36px;box-sizing:border-box;padding:4px 12px;
1014
1014
  border-bottom:1px solid rgba(255,255,255,.07);background:rgba(0,0,0,.22);}
1015
- [${X}] .reticle-act-dot{flex:none;width:7px;height:7px;border-radius:50%;background:var(--reticle-faint);
1015
+ [${ee}] .reticle-act-dot{flex:none;width:7px;height:7px;border-radius:50%;background:var(--reticle-faint);
1016
1016
  box-shadow:0 0 0 2px rgba(255,255,255,.04);transition:background .2s,box-shadow .2s;}
1017
1017
  /**
1018
1018
  * The status dot carries the session state in COLOUR, not only in the word next to it - and in the
1019
1019
  * user's own colour for that state, so it reads against their app rather than ours.
1020
1020
  */
1021
- [${X}] .reticle-act-strip[data-liveness="active"] .reticle-act-dot,
1022
- [${X}] .reticle-act-strip[data-liveness="idle"] .reticle-act-dot{
1021
+ [${ee}] .reticle-act-strip[data-liveness="active"] .reticle-act-dot,
1022
+ [${ee}] .reticle-act-strip[data-liveness="idle"] .reticle-act-dot{
1023
1023
  background:var(--reticle-state);
1024
1024
  box-shadow:0 0 0 2px color-mix(in srgb,var(--reticle-state) 18%,transparent),
1025
1025
  0 0 8px color-mix(in srgb,var(--reticle-state) 45%,transparent);}
1026
- [${X}] .reticle-act-strip[data-liveness="idle"] .reticle-act-dot{
1026
+ [${ee}] .reticle-act-strip[data-liveness="idle"] .reticle-act-dot{
1027
1027
  animation:reticle-idle-pulse 2.4s ease-in-out infinite;}
1028
1028
  /**
1029
1029
  * Unreachable: present, and plainly not working.
@@ -1031,26 +1031,26 @@ ${aO}`,Qb="[data-reticle-harness-page] :is([data-reticle-harness-run],[data-reti
1031
1031
  * Muted rather than alarming. Nothing is broken in the user's app \u2014 Reticle simply has nobody to
1032
1032
  * talk to \u2014 and a dev overlay that shouts about its own plumbing is one the user turns off.
1033
1033
  */
1034
- [${se}][${br}="unreachable"]{--reticle-state:var(--reticle-faint);}
1035
- [${se}][${br}="unreachable"] [${X}] .reticle-act-dot{animation:none;}
1034
+ [${ce}][${Nr}="unreachable"]{--reticle-state:var(--reticle-faint);}
1035
+ [${ce}][${Nr}="unreachable"] [${ee}] .reticle-act-dot{animation:none;}
1036
1036
  /* The one status that is a sentence to act on: two lines, full contrast, the detail on hover. */
1037
- [${se}][${br}="unreachable"] [${X}] .reticle-act{white-space:normal;line-height:1.35;color:var(--reticle-fg);cursor:help;}
1038
- [${se}][${br}="paused"] [${X}] .reticle-act-dot,
1039
- [${se}][${br}="ended"] [${X}] .reticle-act-dot{animation:none;}
1037
+ [${ce}][${Nr}="unreachable"] [${ee}] .reticle-act{white-space:normal;line-height:1.35;color:var(--reticle-fg);cursor:help;}
1038
+ [${ce}][${Nr}="paused"] [${ee}] .reticle-act-dot,
1039
+ [${ce}][${Nr}="ended"] [${ee}] .reticle-act-dot{animation:none;}
1040
1040
  @keyframes reticle-idle-pulse{0%,100%{opacity:.45;transform:scale(.92)}50%{opacity:1;transform:scale(1)}}
1041
- [${X}] .reticle-act{display:block;flex:1;min-width:0;color:var(--reticle-muted);font-size:11px;
1041
+ [${ee}] .reticle-act{display:block;flex:1;min-width:0;color:var(--reticle-muted);font-size:11px;
1042
1042
  font-variant-numeric:tabular-nums;letter-spacing:.01em;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}
1043
- [${X}] .reticle-act-actions{display:flex;align-items:center;gap:4px;flex:none;margin-left:auto;}
1044
- [${X}] .reticle-status-btn{position:relative;width:26px;height:26px;display:inline-flex;align-items:center;justify-content:center;
1043
+ [${ee}] .reticle-act-actions{display:flex;align-items:center;gap:4px;flex:none;margin-left:auto;}
1044
+ [${ee}] .reticle-status-btn{position:relative;width:26px;height:26px;display:inline-flex;align-items:center;justify-content:center;
1045
1045
  border:1px solid var(--reticle-line);border-radius:var(--reticle-hud-radius-sm);background:transparent;color:var(--reticle-muted);cursor:pointer;}
1046
- [${X}] .reticle-status-btn[hidden]{display:none;}
1047
- [${X}] .reticle-status-btn:hover:not(:disabled){background:var(--reticle-hud-hover);color:var(--reticle-fg);}
1048
- [${X}] .reticle-status-btn:focus-visible{outline:2px solid var(--reticle-accent);outline-offset:2px;}
1049
- [${X}] .reticle-status-btn:disabled{opacity:.35;cursor:not-allowed;}
1050
- [${X}] .reticle-status-stop:hover:not(:disabled){color:var(--reticle-state);border-color:var(--reticle-state);}
1051
- [${X}] .reticle-act-actions .reticle-pause-badge{display:none;position:static;transform:none;padding:2px 5px;font-size:8px;}
1052
- [${X}] .reticle-act-strip[data-liveness="active"] .reticle-act{color:var(--reticle-fg);}
1053
- [${U}] .reticle-pass{color:var(--reticle-ok);}[${U}] .reticle-fail{color:var(--reticle-bad);}
1046
+ [${ee}] .reticle-status-btn[hidden]{display:none;}
1047
+ [${ee}] .reticle-status-btn:hover:not(:disabled){background:var(--reticle-hud-hover);color:var(--reticle-fg);}
1048
+ [${ee}] .reticle-status-btn:focus-visible{outline:2px solid var(--reticle-accent);outline-offset:2px;}
1049
+ [${ee}] .reticle-status-btn:disabled{opacity:.35;cursor:not-allowed;}
1050
+ [${ee}] .reticle-status-stop:hover:not(:disabled){color:var(--reticle-state);border-color:var(--reticle-state);}
1051
+ [${ee}] .reticle-act-actions .reticle-pause-badge{display:none;position:static;transform:none;padding:2px 5px;font-size:8px;}
1052
+ [${ee}] .reticle-act-strip[data-liveness="active"] .reticle-act{color:var(--reticle-fg);}
1053
+ [${F}] .reticle-pass{color:var(--reticle-ok);}[${F}] .reticle-fail{color:var(--reticle-bad);}
1054
1054
  /**
1055
1055
  * Paused and ended keep the STATE colour rather than washing out to grey.
1056
1056
  *
@@ -1060,19 +1060,19 @@ ${aO}`,Qb="[data-reticle-harness-page] :is([data-reticle-harness-run],[data-reti
1060
1060
  * the theme's own paused/ended colour now, so "which state am I in" is answered by the same hue
1061
1061
  * everywhere: the dot, the glow, the FAB halo, and the toolbar.
1062
1062
  */
1063
- [${se}][${br}="paused"] [${U}],
1064
- [${se}][${br}="ended"] [${U}],
1065
- [${se}][${cT}="waiting"] [${U}]{
1063
+ [${ce}][${Nr}="paused"] [${F}],
1064
+ [${ce}][${Nr}="ended"] [${F}],
1065
+ [${ce}][${cS}="waiting"] [${F}]{
1066
1066
  --reticle-accent:var(--reticle-state);
1067
1067
  --reticle-accent-soft:color-mix(in srgb,var(--reticle-state) 18%,transparent);}
1068
- [${se}][${cT}="ask"] [${U}],
1069
- [${se}][${cT}="warn"] [${U}]{
1068
+ [${ce}][${cS}="ask"] [${F}],
1069
+ [${ce}][${cS}="warn"] [${F}]{
1070
1070
  --reticle-accent:var(--reticle-state);
1071
1071
  --reticle-accent-soft:color-mix(in srgb,var(--reticle-state) 18%,transparent);}
1072
1072
  @media (max-width:480px){
1073
- [${X}]{width:min(100vw - 24px,320px);max-height:min(440px,calc(100vh - 100px));}
1074
- [${se}][${ke}="0"] [${U}]{max-width:calc(100vw - 24px);}
1075
- }`});var FO,GO,BO,VO=S(()=>{"use strict";mr();FO=20,GO=28,BO=`
1073
+ [${ee}]{width:min(100vw - 24px,320px);max-height:min(440px,calc(100vh - 100px));}
1074
+ [${ce}][${Me}="0"] [${F}]{max-width:calc(100vw - 24px);}
1075
+ }`});var cL,lL,dL,uL=S(()=>{"use strict";Ar();cL=20,lL=28,dL=`
1076
1076
  /* The control establishes its own stacking context, and a high one.
1077
1077
  Its menu is absolutely positioned inside a panel whose other children (the log well, the act strip)
1078
1078
  are themselves positioned with their own z-index, so a z-index on the MENU alone was being compared
@@ -1090,11 +1090,11 @@ ${aO}`,Qb="[data-reticle-harness-page] :is([data-reticle-harness-run],[data-reti
1090
1090
  .reticle-account{position:relative;z-index:9;display:inline-flex;align-items:center;gap:6px;flex:none;}
1091
1091
  .reticle-account-avatar{
1092
1092
  display:inline-flex;align-items:center;justify-content:center;
1093
- width:${String(FO)}px;height:${String(FO)}px;border-radius:999px;
1093
+ width:${String(cL)}px;height:${String(cL)}px;border-radius:999px;
1094
1094
  font-size:9px;font-weight:600;letter-spacing:.02em;
1095
1095
  background:rgba(255,255,255,.12);color:rgba(255,255,255,.92);user-select:none;}
1096
1096
  .reticle-account-avatar--lg{
1097
- width:${String(GO)}px;height:${String(GO)}px;font-size:11px;}
1097
+ width:${String(lL)}px;height:${String(lL)}px;font-size:11px;}
1098
1098
 
1099
1099
  /* The trigger is the avatar plus a hit area, never a second visual element: an avatar that looks
1100
1100
  like a button reads as an action, and this one opens a menu about a state. */
@@ -1124,8 +1124,8 @@ ${aO}`,Qb="[data-reticle-harness-page] :is([data-reticle-harness-run],[data-reti
1124
1124
  /* The HUD's own surface tokens, not a colour invented here. A menu with its own near-black is a
1125
1125
  second design language in the same panel, and a translucent one lets the panel's empty-state text
1126
1126
  read straight through the rows -- which is what the first version did. */
1127
- ${nu}
1128
- box-shadow:inset 0 1px 0 rgba(255,255,255,.09),${hr};
1127
+ ${Cu}
1128
+ box-shadow:inset 0 1px 0 rgba(255,255,255,.09),${xr};
1129
1129
  font-size:11px;color:rgba(255,255,255,.78);text-align:left;}
1130
1130
  .reticle-account-menu[hidden]{display:none;}
1131
1131
 
@@ -1167,8 +1167,8 @@ ${aO}`,Qb="[data-reticle-harness-page] :is([data-reticle-harness-run],[data-reti
1167
1167
  display:inline-flex;align-items:center;justify-content:center;
1168
1168
  border:none;background:transparent;color:rgba(255,255,255,.6);cursor:pointer;line-height:0;padding:2px;}
1169
1169
  .reticle-account-dashboard:hover{color:#fff;}
1170
- `});var _F,jO,KO=S(()=>{"use strict";mr();ut();_F="data-reticle-overlay",jO=`
1171
- [${w}]{
1170
+ `});var m4,pL,fL=S(()=>{"use strict";Ar();Et();m4="data-reticle-overlay",pL=`
1171
+ [${$}]{
1172
1172
  position:absolute;right:0;left:auto;bottom:calc(100% + 12px);z-index:31;
1173
1173
  box-sizing:border-box;display:flex;flex-direction:column;width:var(--reticle-dock-w);
1174
1174
  max-width:min(var(--reticle-dock-w),calc(100vw - 16px));max-height:calc(100vh - 140px);
@@ -1177,101 +1177,84 @@ ${aO}`,Qb="[data-reticle-harness-page] :is([data-reticle-harness-run],[data-reti
1177
1177
  background:
1178
1178
  radial-gradient(130% 90% at 50% 0%,color-mix(in srgb,var(--reticle-c-active) 18%,transparent),transparent 62%),
1179
1179
  linear-gradient(180deg,rgba(13,15,22,.96),rgba(19,22,32,.94));
1180
- box-shadow:${hr},0 0 54px -18px var(--reticle-c-active);
1180
+ box-shadow:${xr},0 0 54px -18px var(--reticle-c-active);
1181
1181
  color:var(--reticle-fg);font-family:var(--reticle-font);
1182
1182
  transition:opacity .18s ease,transform .18s ease,visibility .18s;}
1183
- [${D}][${Nt}="start"] [${w}]{right:auto;left:0;}
1184
- [${_F}][${un}="1"] [${w}]{
1183
+ [${M}][${Ht}="start"] [${$}]{right:auto;left:0;}
1184
+ [${m4}][${gn}="1"] [${$}]{
1185
1185
  opacity:1;visibility:visible;transform:translate3d(0,0,0) scale(1);pointer-events:auto;}
1186
- [${w}] .reticle-report-inner{
1186
+ [${$}] .reticle-report-inner{
1187
1187
  display:flex;flex-direction:column;min-height:0;overflow:hidden;}
1188
- [${w}] .reticle-report-head{
1188
+ [${$}] .reticle-report-head{
1189
1189
  flex:none;display:flex;align-items:center;gap:8px;padding:11px 12px 9px 14px;
1190
1190
  border-bottom:1px solid rgba(255,255,255,.06);}
1191
- [${w}] .reticle-report-title{font-size:12.5px;font-weight:600;}
1192
- [${w}] .reticle-report-scope{
1191
+ [${$}] .reticle-report-title{font-size:12.5px;font-weight:600;}
1192
+ [${$}] .reticle-report-scope{
1193
1193
  margin-left:auto;padding:3px 9px;border-radius:999px;cursor:pointer;
1194
1194
  border:1px solid rgba(255,255,255,.14);background:rgba(255,255,255,.04);
1195
1195
  color:var(--reticle-muted);font:inherit;font-size:11px;}
1196
- [${w}] .reticle-report-scope:hover{background:rgba(255,255,255,.08);color:var(--reticle-fg);}
1197
- [${w}] .reticle-report-close{
1196
+ [${$}] .reticle-report-scope:hover{background:rgba(255,255,255,.08);color:var(--reticle-fg);}
1197
+ [${$}] .reticle-report-close{
1198
1198
  flex:none;display:inline-flex;align-items:center;justify-content:center;width:22px;height:22px;
1199
1199
  border:none;background:transparent;color:var(--reticle-faint);cursor:pointer;line-height:0;}
1200
- [${w}] .reticle-report-close svg{display:block;fill:none;stroke:currentColor;stroke-width:1.6;}
1201
- [${w}] .reticle-report-body{
1200
+ [${$}] .reticle-report-close svg{display:block;fill:none;stroke:currentColor;stroke-width:1.6;}
1201
+ [${$}] .reticle-report-body{
1202
1202
  flex:1;min-height:0;overflow-y:auto;overscroll-behavior:contain;padding:12px 14px 6px;
1203
1203
  scrollbar-width:thin;scrollbar-color:rgba(255,255,255,.14) transparent;}
1204
- [${w}] .reticle-report-empty{
1204
+ [${$}] .reticle-report-empty{
1205
1205
  margin:0;padding:22px 6px;text-align:center;color:var(--reticle-faint);font-size:12px;}
1206
1206
  /* The streak sits above the hero, as a flame and a number: it is the one stat that is about
1207
1207
  TODAY, so it reads first and never competes with the count it sits over. */
1208
- [${w}] .reticle-report-streak{
1208
+ [${$}] .reticle-report-streak{
1209
1209
  display:inline-flex;align-items:baseline;gap:5px;margin-bottom:8px;padding:3px 9px;
1210
1210
  border-radius:999px;background:rgba(255,255,255,.05);
1211
1211
  border:1px solid color-mix(in srgb,var(--reticle-c-active) 22%,transparent);
1212
1212
  font-size:12px;font-weight:600;font-variant-numeric:tabular-nums;}
1213
- [${w}] .reticle-report-streak-label{
1213
+ [${$}] .reticle-report-streak-label{
1214
1214
  color:var(--reticle-faint);font-size:11px;font-weight:400;}
1215
- [${w}] .reticle-report-hero{display:flex;flex-direction:column;gap:2px;margin-bottom:10px;}
1216
- [${w}] .reticle-report-hero-value{
1215
+ [${$}] .reticle-report-hero{display:flex;flex-direction:column;gap:2px;margin-bottom:10px;}
1216
+ [${$}] .reticle-report-hero-value{
1217
1217
  font-size:34px;font-weight:700;line-height:1;letter-spacing:-.02em;color:var(--reticle-c-active);}
1218
- [${w}] .reticle-report-hero-label{color:var(--reticle-muted);font-size:12px;}
1219
- [${w}] .reticle-report-verdicts{display:flex;gap:6px;margin-bottom:12px;}
1220
- [${w}] .reticle-sync-status{font-size:11px;color:var(--reticle-faint);font-variant-numeric:tabular-nums;white-space:nowrap;}
1221
- [${w}] .reticle-sync-status[data-reticle-sync-status="refused"]{color:var(--reticle-c-error,#f87171);}
1222
- [${w}] .reticle-report-coverage{display:flex;flex-wrap:wrap;align-items:baseline;gap:4px 10px;margin-bottom:12px;padding:8px 10px;border:1px solid var(--reticle-hud-border);border-radius:var(--reticle-hud-radius-sm,8px);}
1223
- [${w}] .reticle-report-coverage-value{font-size:18px;font-weight:600;font-variant-numeric:tabular-nums;color:var(--reticle-hud-text);}
1224
- [${w}] .reticle-report-coverage-levels{display:flex;flex-wrap:wrap;gap:4px 10px;width:100%;font-size:11px;color:var(--reticle-faint);font-variant-numeric:tabular-nums;}
1225
- [${w}] .reticle-report-instrumentation{margin-bottom:12px;padding:10px;border:1px solid var(--reticle-hud-border);border-radius:var(--reticle-hud-radius-md);}
1226
- [${w}] .reticle-report-instrumentation-head{display:flex;align-items:baseline;justify-content:space-between;gap:8px;}
1227
- [${w}] .reticle-report-instrumentation-head .reticle-report-section{margin-bottom:0;}
1228
- [${w}] .reticle-report-instrumentation-value{font-size:13px;font-weight:600;font-variant-numeric:tabular-nums;color:var(--reticle-hud-text);}
1229
- [${w}] .reticle-report-caps{display:grid;grid-template-columns:1fr 1fr;gap:4px 10px;margin:8px 0 0;padding:0;list-style:none;}
1230
- [${w}] .reticle-report-cap{display:flex;flex-wrap:wrap;align-items:baseline;gap:0 6px;min-width:0;font-size:11px;line-height:1.4;color:var(--reticle-muted);}
1231
- [${w}] .reticle-report-cap-mark{flex:none;width:10px;text-align:center;}
1232
- [${w}] .reticle-report-cap-name{flex:1;min-width:0;}
1233
- [${w}] .reticle-report-cap[data-state="seen"] .reticle-report-cap-mark{color:#86efac;}
1234
- [${w}] .reticle-report-cap[data-state="missing"]{grid-column:1/-1;color:var(--reticle-hud-text);}
1235
- [${w}] .reticle-report-cap[data-state="missing"] .reticle-report-cap-mark{color:#fca5a5;}
1236
- [${w}] .reticle-report-cap[data-state="unseen"]{color:var(--reticle-faint);}
1237
- [${w}] .reticle-report-cap-cost{flex-basis:100%;padding-left:16px;color:var(--reticle-faint);}
1238
- [${w}] .reticle-report-caps-note{display:block;margin-top:6px;color:var(--reticle-faint);font-size:11px;}
1239
- [${w}] .reticle-report-copy-prompt{display:block;width:100%;margin-top:10px;padding:6px 10px;border:1px solid color-mix(in srgb,var(--reticle-hud-brand) 50%,transparent);
1240
- border-radius:var(--reticle-hud-radius-sm);background:var(--reticle-hud-brand-soft);color:var(--reticle-hud-brand);font:inherit;font-size:12px;font-weight:600;cursor:pointer;}
1241
- [${w}] .reticle-report-copy-prompt:hover{filter:brightness(1.15);}
1242
- [${w}] .reticle-report-verdict{
1218
+ [${$}] .reticle-report-hero-label{color:var(--reticle-muted);font-size:12px;}
1219
+ [${$}] .reticle-report-verdicts{display:flex;gap:6px;margin-bottom:12px;}
1220
+ [${$}] .reticle-sync-status{font-size:11px;color:var(--reticle-faint);font-variant-numeric:tabular-nums;white-space:nowrap;}
1221
+ [${$}] .reticle-sync-status[data-reticle-sync-status="refused"]{color:var(--reticle-c-error,#f87171);}
1222
+ [${$}] .reticle-report-coverage{display:flex;flex-wrap:wrap;align-items:baseline;gap:4px 10px;margin-bottom:12px;padding:8px 10px;border:1px solid var(--reticle-hud-border);border-radius:var(--reticle-hud-radius-sm,8px);}
1223
+ [${$}] .reticle-report-coverage-value{font-size:18px;font-weight:600;font-variant-numeric:tabular-nums;color:var(--reticle-hud-text);}
1224
+ [${$}] .reticle-report-coverage-levels{display:flex;flex-wrap:wrap;gap:4px 10px;width:100%;font-size:11px;color:var(--reticle-faint);font-variant-numeric:tabular-nums;}
1225
+ [${$}] .reticle-report-verdict{
1243
1226
  flex:1;padding:5px 8px;border-radius:8px;font-size:11px;text-align:center;
1244
1227
  background:rgba(255,255,255,.05);color:var(--reticle-muted);}
1245
- [${w}] .reticle-report-verdict[data-kind="fail"]{color:#fca5a5;}
1246
- [${w}] .reticle-report-verdict[data-kind="unknown"]{color:#fcd34d;}
1247
- [${w}] .reticle-report-grid{
1228
+ [${$}] .reticle-report-verdict[data-kind="fail"]{color:#fca5a5;}
1229
+ [${$}] .reticle-report-verdict[data-kind="unknown"]{color:#fcd34d;}
1230
+ [${$}] .reticle-report-grid{
1248
1231
  display:grid;grid-template-columns:repeat(3,1fr);gap:6px;}
1249
- [${w}] .reticle-report-card{
1232
+ [${$}] .reticle-report-card{
1250
1233
  display:flex;flex-direction:column;gap:2px;padding:8px;border-radius:10px;
1251
1234
  background:rgba(255,255,255,.04);}
1252
- [${w}] .reticle-report-value{font-size:15px;font-weight:600;font-variant-numeric:tabular-nums;}
1253
- [${w}] .reticle-report-label{color:var(--reticle-faint);font-size:11px;line-height:1.3;}
1235
+ [${$}] .reticle-report-value{font-size:15px;font-weight:600;font-variant-numeric:tabular-nums;}
1236
+ [${$}] .reticle-report-label{color:var(--reticle-faint);font-size:11px;line-height:1.3;}
1254
1237
  /* An estimate is labelled as one, and its label carries what it is measured against. */
1255
- [${w}] .reticle-report-basis{
1238
+ [${$}] .reticle-report-basis{
1256
1239
  display:block;margin-top:2px;color:var(--reticle-c-active);opacity:.8;
1257
1240
  font-size:11px;letter-spacing:.06em;text-transform:uppercase;cursor:help;}
1258
- [${w}] .reticle-report-defects-wrap{margin-top:14px;}
1241
+ [${$}] .reticle-report-defects-wrap{margin-top:14px;}
1259
1242
  /* The heading and its push control on one line, so the button reads as belonging to this section
1260
1243
  rather than floating above the list. */
1261
- [${w}] .reticle-report-defects-head{
1244
+ [${$}] .reticle-report-defects-head{
1262
1245
  display:flex;align-items:center;justify-content:space-between;gap:8px;}
1263
- [${w}] .reticle-report-defects{
1246
+ [${$}] .reticle-report-defects{
1264
1247
  display:flex;flex-direction:column;gap:6px;margin:0;padding:0;list-style:none;}
1265
1248
  /* A left rule rather than a card per row: ten cards in a 320px panel is a wall, and the rule keeps
1266
1249
  the list scannable as a list \u2014 which is what a person is doing when they open this. */
1267
- [${w}] .reticle-report-defect{
1250
+ [${$}] .reticle-report-defect{
1268
1251
  display:flex;flex-direction:column;gap:1px;padding:4px 0 4px 8px;
1269
1252
  border-left:2px solid color-mix(in srgb,#f87171 70%,transparent);}
1270
- [${w}] .reticle-report-defect-title{
1253
+ [${$}] .reticle-report-defect-title{
1271
1254
  font-size:11px;line-height:1.35;overflow-wrap:anywhere;}
1272
- [${w}] .reticle-report-defect-detail{
1255
+ [${$}] .reticle-report-defect-detail{
1273
1256
  color:var(--reticle-faint);font-size:11px;line-height:1.35;overflow-wrap:anywhere;}
1274
- [${w}] .reticle-report-defect-source{
1257
+ [${$}] .reticle-report-defect-source{
1275
1258
  color:var(--reticle-faint);font-size:11px;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;
1276
1259
  overflow-wrap:anywhere;}
1277
1260
  .reticle-report-defect-link{flex:none;display:inline-flex;align-items:center;justify-content:center;
@@ -1280,68 +1263,68 @@ ${aO}`,Qb="[data-reticle-harness-page] :is([data-reticle-harness-run],[data-reti
1280
1263
  .reticle-report-defect:hover .reticle-report-defect-link,
1281
1264
  .reticle-report-defect-link:focus-visible{opacity:1;}
1282
1265
  .reticle-report-defect-link:hover{color:var(--reticle-fg);background:rgba(255,255,255,.07);}
1283
- [${w}] .reticle-report-defects-more{
1266
+ [${$}] .reticle-report-defects-more{
1284
1267
  display:inline-block;margin-top:8px;font-size:11px;color:var(--reticle-c-active);
1285
1268
  text-decoration:none;}
1286
- [${w}] .reticle-report-defects-more:hover{text-decoration:underline;}
1287
- [${w}] .reticle-report-defects-all{display:inline-block;margin-top:8px;border:0;padding:0;background:none;cursor:pointer;font:inherit;font-size:11px;font-weight:500;color:var(--reticle-c-active);}
1288
- [${w}] .reticle-report-defects-all:hover{text-decoration:underline;}
1289
- [${w}] .reticle-report-local-only{
1269
+ [${$}] .reticle-report-defects-more:hover{text-decoration:underline;}
1270
+ [${$}] .reticle-report-defects-all{display:inline-block;margin-top:8px;border:0;padding:0;background:none;cursor:pointer;font:inherit;font-size:11px;font-weight:500;color:var(--reticle-c-active);}
1271
+ [${$}] .reticle-report-defects-all:hover{text-decoration:underline;}
1272
+ [${$}] .reticle-report-local-only{
1290
1273
  margin:14px 0 0;padding-top:10px;border-top:1px solid var(--reticle-line);
1291
1274
  color:var(--reticle-faint);font-size:11px;line-height:1.45;}
1292
- [${w}] .reticle-report-local-only code{
1275
+ [${$}] .reticle-report-local-only code{
1293
1276
  font-family:ui-monospace,SFMono-Regular,Menlo,monospace;color:var(--reticle-c-active);}
1294
- [${w}] .reticle-report-chart-wrap{margin-top:12px;}
1295
- [${w}] .reticle-report-section{
1277
+ [${$}] .reticle-report-chart-wrap{margin-top:12px;}
1278
+ [${$}] .reticle-report-section{
1296
1279
  display:block;margin-bottom:6px;color:var(--reticle-faint);font-size:11px;
1297
1280
  letter-spacing:.06em;text-transform:uppercase;}
1298
1281
  /* Thirty fixed slots, not a flex row: one recorded day is one thin bar on a month's axis, and a
1299
1282
  single stretched block would read as "a month of solid work" on the day you install it. */
1300
- [${w}] .reticle-report-chart{
1283
+ [${$}] .reticle-report-chart{
1301
1284
  display:grid;grid-template-columns:repeat(30,1fr);align-items:end;gap:2px;height:44px;padding:0 1px;}
1302
- [${w}] .reticle-report-bar{
1285
+ [${$}] .reticle-report-bar{
1303
1286
  min-width:2px;border-radius:2px 2px 0 0;
1304
1287
  background:color-mix(in srgb,var(--reticle-c-active) 55%,transparent);}
1305
- [${w}] .reticle-report-bar[data-hot="1"]{background:#f87171;}
1288
+ [${$}] .reticle-report-bar[data-hot="1"]{background:#f87171;}
1306
1289
  /* Sharing is a quiet row under the record, never the loudest thing on the panel. */
1307
- [${w}] .reticle-report-foot{
1290
+ [${$}] .reticle-report-foot{
1308
1291
  flex:none;display:flex;flex-wrap:nowrap;align-items:center;gap:2px;padding:6px 10px 2px 14px;
1309
1292
  border-top:1px solid rgba(255,255,255,.06);}
1310
- [${w}] .reticle-report-share-label{margin-right:4px;color:var(--reticle-faint);font-size:11px;}
1311
- [${w}] .reticle-report-share{
1293
+ [${$}] .reticle-report-share-label{margin-right:4px;color:var(--reticle-faint);font-size:11px;}
1294
+ [${$}] .reticle-report-share{
1312
1295
  flex:none;padding:3px 6px;border:0;border-radius:6px;cursor:pointer;font:inherit;font-size:11px;
1313
1296
  background:transparent;color:var(--reticle-muted);white-space:nowrap;}
1314
- [${w}] .reticle-report-share:hover{background:rgba(255,255,255,.08);color:var(--reticle-fg);}
1315
- [${w}] .reticle-report-refer{margin-left:auto;color:var(--reticle-hud-brand);}
1316
- [${w}] .reticle-report-links{
1297
+ [${$}] .reticle-report-share:hover{background:rgba(255,255,255,.08);color:var(--reticle-fg);}
1298
+ [${$}] .reticle-report-refer{margin-left:auto;color:var(--reticle-hud-brand);}
1299
+ [${$}] .reticle-report-links{
1317
1300
  flex:none;display:flex;gap:12px;padding:2px 14px 10px;}
1318
- [${w}] .reticle-report-links a{
1301
+ [${$}] .reticle-report-links a{
1319
1302
  color:var(--reticle-faint);font-size:11px;text-decoration:none;}
1320
- [${w}] .reticle-report-links a:hover{color:var(--reticle-fg);text-decoration:underline;}
1303
+ [${$}] .reticle-report-links a:hover{color:var(--reticle-fg);text-decoration:underline;}
1321
1304
 
1322
1305
  /* Who this record belongs to, and the push-now control. Tokens only \u2014 no literal colours. */
1323
- [${w}] .reticle-report-identity{
1306
+ [${$}] .reticle-report-identity{
1324
1307
  display:flex;align-items:center;justify-content:flex-end;gap:6px;padding:10px 14px 0;min-height:0;}
1325
- [${w}] .reticle-report-identity:empty{display:none;}
1326
- [${w}] .reticle-sync-now{
1308
+ [${$}] .reticle-report-identity:empty{display:none;}
1309
+ [${$}] .reticle-sync-now{
1327
1310
  display:inline-flex;align-items:center;justify-content:center;
1328
1311
  border:none;background:transparent;color:var(--reticle-faint);cursor:pointer;line-height:0;padding:2px;}
1329
- [${w}] .reticle-sync-now:hover{color:var(--reticle-fg);}
1312
+ [${$}] .reticle-sync-now:hover{color:var(--reticle-fg);}
1330
1313
  /* The one moment this control has an opinion: it says it is going, not that it has arrived. */
1331
- [${w}] .reticle-sync-now[data-syncing="1"]{
1314
+ [${$}] .reticle-sync-now[data-syncing="1"]{
1332
1315
  color:var(--reticle-c-active);animation:reticle-sync-spin 900ms linear infinite;}
1333
1316
  @keyframes reticle-sync-spin{to{transform:rotate(360deg);}}
1334
1317
  @media (prefers-reduced-motion:reduce){
1335
- [${w}] .reticle-sync-now[data-syncing="1"]{animation:none;}}
1336
- `});var WO,zO=S(()=>{"use strict";WO=`
1318
+ [${$}] .reticle-sync-now[data-syncing="1"]{animation:none;}}
1319
+ `});var hL,mL=S(()=>{"use strict";hL=`
1337
1320
  .reticle-talk-title{display:block;font-weight:600;font-size:12px;padding-right:18px;}
1338
1321
  .reticle-talk-body{margin:6px 0 8px;font-size:11px;line-height:1.45;opacity:.8;}
1339
1322
  .reticle-talk-book{display:inline-block;font-size:11px;font-weight:600;padding:4px 10px;border-radius:6px;background:var(--reticle-accent,#4f7cff);color:#fff;text-decoration:none;}
1340
- `});function dT(t){let e=lT.get(t);e!==void 0&&clearInterval(e),lT.delete(t)}function AF(){var t;try{return((t=globalThis.matchMedia)==null?void 0:t.call(globalThis,"(prefers-reduced-motion: reduce)").matches)===!0}catch{return!1}}function $h(t,e){t.setAttribute("data-active",String(e));let n=t.querySelectorAll(`[${Nu}]`),r=t.querySelector(`[${JO}]`);r!==null&&(r.textContent=`${String(e+1)} / ${String(n.length)}`),n.forEach((o,a)=>{o.hidden=a!==e}),t.querySelectorAll(`[${Ph}]`).forEach((o,a)=>{o.setAttribute("aria-current",String(a===e))})}function vF(t,e){if(t.length===0)return"";let n=yF(e,t.length),r=t.map((a,s)=>`<div ${Nu}="${a.id}" class="reticle-carousel-slide"${s===n?"":" hidden"}>${a.html}</div>`).join(""),o=t.length===1?"":`<div class="reticle-carousel-controls"><button type="button" ${ZO} aria-label="Previous message" class="reticle-carousel-arrow">\u2039</button><div class="reticle-carousel-dots">${t.map((a,s)=>`<button type="button" ${Ph}="${String(s)}" class="reticle-carousel-dot" aria-label="Show ${a.id}" aria-current="${String(s===n)}"></button>`).join("")}</div><span ${JO} aria-live="polite">${String(n+1)} / ${String(t.length)}</span><button type="button" ${QO} aria-label="Next message" class="reticle-carousel-arrow">\u203A</button></div>`;return`<div ${XO} class="reticle-carousel" role="region" aria-label="Reticle" data-active="${String(n)}">
1341
- <button type="button" ${qO} class="reticle-carousel-close" aria-label="${YO}" title="${YO}">\xD7</button>
1323
+ `});function dS(t){let e=lS.get(t);e!==void 0&&clearInterval(e),lS.delete(t)}function E4(){var t;try{return((t=globalThis.matchMedia)==null?void 0:t.call(globalThis,"(prefers-reduced-motion: reduce)").matches)===!0}catch{return!1}}function wm(t,e){t.setAttribute("data-active",String(e));let n=t.querySelectorAll(`[${rp}]`),r=t.querySelector(`[${_L}]`);r!==null&&(r.textContent=`${String(e+1)} / ${String(n.length)}`),n.forEach((o,s)=>{o.hidden=s!==e}),t.querySelectorAll(`[${Om}]`).forEach((o,s)=>{o.setAttribute("aria-current",String(s===e))})}function T4(t,e){if(t.length===0)return"";let n=b4(e,t.length),r=t.map((s,a)=>`<div ${rp}="${s.id}" class="reticle-carousel-slide"${a===n?"":" hidden"}>${s.html}</div>`).join(""),o=t.length===1?"":`<div class="reticle-carousel-controls"><button type="button" ${TL} aria-label="Previous message" class="reticle-carousel-arrow">\u2039</button><div class="reticle-carousel-dots">${t.map((s,a)=>`<button type="button" ${Om}="${String(a)}" class="reticle-carousel-dot" aria-label="Show ${s.id}" aria-current="${String(a===n)}"></button>`).join("")}</div><span ${_L} aria-live="polite">${String(n+1)} / ${String(t.length)}</span><button type="button" ${SL} aria-label="Next message" class="reticle-carousel-arrow">\u203A</button></div>`;return`<div ${EL} class="reticle-carousel" role="region" aria-label="Reticle" data-active="${String(n)}">
1324
+ <button type="button" ${bL} class="reticle-carousel-close" aria-label="${gL}" title="${gL}">\xD7</button>
1342
1325
  <div class="reticle-carousel-track">${r}</div>
1343
1326
  ${o}
1344
- </div>`}function RF(t){try{return(t==null?void 0:t.getItem(eI))==="1"}catch{return!1}}function tI(t,e,n){var l,d,u,p;let r=t.querySelector(`:scope > [${XO}]`),o=Number((l=r==null?void 0:r.getAttribute("data-active"))!=null?l:"0");if(r==null||r.remove(),dT(t),RF(n))return;let a=vF(e,o);if(a==="")return;t.insertAdjacentHTML("afterbegin",a);let s=t.firstElementChild;if(s instanceof HTMLElement){(d=s.querySelector(`[${qO}]`))==null||d.addEventListener("click",f=>{f.preventDefault(),f.stopPropagation();try{n==null||n.setItem(eI,"1")}catch{}dT(t),s.remove()});for(let f of s.querySelectorAll(`[${Ph}]`))f.addEventListener("click",m=>{m.preventDefault(),m.stopPropagation(),$h(s,Number(f.getAttribute(Ph)))});(u=s.querySelector(`[${ZO}]`))==null||u.addEventListener("click",f=>{f.preventDefault(),f.stopPropagation(),$h(s,(Number(s.getAttribute("data-active"))+e.length-1)%e.length)}),(p=s.querySelector(`[${QO}]`))==null||p.addEventListener("click",f=>{f.preventDefault(),f.stopPropagation(),$h(s,(Number(s.getAttribute("data-active"))+1)%e.length)}),NF(t,s,e.length)}}function NF(t,e,n){if(n<2||AF())return;let r=!1,o=()=>{r=!0},a=()=>{r=!1};e.addEventListener("mouseenter",o),e.addEventListener("mouseleave",a),e.addEventListener("focusin",o),e.addEventListener("focusout",a),lT.set(t,setInterval(()=>{if(!e.isConnected){dT(t);return}r||$h(e,(Number(e.getAttribute("data-active"))+1)%n)},xF))}var XO,Nu,Ph,qO,ZO,QO,JO,eI,YO,xF,lT,yF,nI,Hh=S(()=>{"use strict";Lr();XO="data-reticle-carousel",Nu="data-reticle-carousel-slide",Ph="data-reticle-carousel-dot",qO="data-reticle-carousel-close",ZO="data-reticle-carousel-prev",QO="data-reticle-carousel-next",JO="data-reticle-carousel-position",eI=st.CAROUSEL_DISMISSED,YO="Close",xF=6e3,lT=new WeakMap;yF=(t,e)=>Number.isInteger(t)&&t>=0&&t<e?t:0;nI=`
1327
+ </div>`}function S4(t){try{return(t==null?void 0:t.getItem(xL))==="1"}catch{return!1}}function AL(t,e,n){var l,d,u,p;let r=t.querySelector(`:scope > [${EL}]`),o=Number((l=r==null?void 0:r.getAttribute("data-active"))!=null?l:"0");if(r==null||r.remove(),dS(t),S4(n))return;let s=T4(e,o);if(s==="")return;t.insertAdjacentHTML("afterbegin",s);let a=t.firstElementChild;if(a instanceof HTMLElement){(d=a.querySelector(`[${bL}]`))==null||d.addEventListener("click",h=>{h.preventDefault(),h.stopPropagation();try{n==null||n.setItem(xL,"1")}catch{}dS(t),a.remove()});for(let h of a.querySelectorAll(`[${Om}]`))h.addEventListener("click",m=>{m.preventDefault(),m.stopPropagation(),wm(a,Number(h.getAttribute(Om)))});(u=a.querySelector(`[${TL}]`))==null||u.addEventListener("click",h=>{h.preventDefault(),h.stopPropagation(),wm(a,(Number(a.getAttribute("data-active"))+e.length-1)%e.length)}),(p=a.querySelector(`[${SL}]`))==null||p.addEventListener("click",h=>{h.preventDefault(),h.stopPropagation(),wm(a,(Number(a.getAttribute("data-active"))+1)%e.length)}),_4(t,a,e.length)}}function _4(t,e,n){if(n<2||E4())return;let r=!1,o=()=>{r=!0},s=()=>{r=!1};e.addEventListener("mouseenter",o),e.addEventListener("mouseleave",s),e.addEventListener("focusin",o),e.addEventListener("focusout",s),lS.set(t,setInterval(()=>{if(!e.isConnected){dS(t);return}r||wm(e,(Number(e.getAttribute("data-active"))+1)%n)},g4))}var EL,rp,Om,bL,TL,SL,_L,xL,gL,g4,lS,b4,yL,Im=S(()=>{"use strict";Kr();EL="data-reticle-carousel",rp="data-reticle-carousel-slide",Om="data-reticle-carousel-dot",bL="data-reticle-carousel-close",TL="data-reticle-carousel-prev",SL="data-reticle-carousel-next",_L="data-reticle-carousel-position",xL=ct.CAROUSEL_DISMISSED,gL="Close",g4=6e3,lS=new WeakMap;b4=(t,e)=>Number.isInteger(t)&&t>=0&&t<e?t:0;yL=`
1345
1328
  .reticle-carousel{position:relative;margin:8px 10px;padding:10px 12px 8px;border:1px solid var(--reticle-line,#2a2f3a);border-radius:10px;background:var(--reticle-surface-inset,rgba(255,255,255,.03));}
1346
1329
  .reticle-carousel-track{height:100px;overflow:hidden;}
1347
1330
  .reticle-carousel-slide .reticle-talk{margin:0;padding:0;border:0;background:none;}
@@ -1354,120 +1337,119 @@ ${aO}`,Qb="[data-reticle-harness-page] :is([data-reticle-harness-run],[data-reti
1354
1337
  .reticle-carousel-arrow{width:24px;height:24px;flex:none;display:inline-flex;align-items:center;justify-content:center;border:1px solid var(--reticle-line);border-radius:6px;background:rgba(255,255,255,.04);color:var(--reticle-fg);font:inherit;font-size:18px;line-height:1;cursor:pointer;}
1355
1338
  .reticle-carousel-arrow:hover{border-color:var(--reticle-accent);background:var(--reticle-accent-soft);}
1356
1339
  .reticle-carousel-position{margin-left:auto;color:var(--reticle-muted);font-size:11px;font-variant-numeric:tabular-nums;white-space:nowrap;}
1357
- `});function aI(t,e){let n=t.querySelector(`[${Fh}]`),r=t.querySelector(`[${Gh}]`),o=e!==void 0&&!e.signedIn;n!==null&&(n.hidden=!o),r!==null&&(r.hidden=o)}var ye,Fh,Gh,wF,Ot,Uh,uT,iI,pT,rI,oI,sI,Bh=S(()=>{"use strict";Br();ut();mr();ye="data-reticle-rail",Fh="data-reticle-rail-signin",Gh="data-reticle-rail-promo",wF="data-reticle-page-open",Ot="data-reticle-page-panel",Uh="data-reticle-overlay",uT={TITLE:"Sign in to try Reticle Harness",DETAIL:"Free Harness credits to start.",CTA:"Sign in"},iI=`<div ${ye} class="reticle-rail" role="complementary" aria-label="Reticle">
1358
- <div ${Fh} class="reticle-rail-signin" hidden>
1359
- <span class="reticle-rail-copy"><strong>${uT.TITLE}</strong><span>${uT.DETAIL}</span></span>
1360
- <button type="button" ${wt} class="reticle-rail-cta" title="${te.SIGNIN_TITLE}">${uT.CTA}</button>
1361
- </div>
1362
- <div ${Gh} class="reticle-rail-promo"></div>
1363
- </div>`;pT=`:is([${zt}],[${Ot}],[${w}],[${I}])`,rI=`[${Uh}][${ke}="0"]:is([${ot}="1"],[${wF}],[${un}="1"],[${Ye}="1"])`,oI=`[${D}]:is([${Io}="below"],[${_i}="below"])`,sI=`
1364
- [${D}]{
1340
+ `});function wL(t,e){let n=t.querySelector(`[${rr}]`),r=t.querySelector(`[${Be}]`),o=e!==void 0&&!e.signedIn;n!==null&&(n.hidden=!o),r!==null&&(r.hidden=o)}var Be,rr,hS,x4,Ft,Cm,uS,RL,NL,pS,fS,vL,OL,Lm=S(()=>{"use strict";eo();Et();Ar();Be="data-reticle-rail",rr="data-reticle-rail-signin",hS="data-reticle-rail-promo",x4="data-reticle-page-open",Ft="data-reticle-page-panel",Cm="data-reticle-overlay",uS={TITLE:"Sign in to try Reticle Harness",DETAIL:"Free credits to start.",CTA:"Sign in"},RL=`<div ${rr} class="reticle-rail-signin" hidden>
1341
+ <span class="reticle-rail-copy"><strong>${uS.TITLE}</strong><span>${uS.DETAIL}</span></span>
1342
+ <button type="button" ${Ut} class="reticle-rail-cta" title="${ie.SIGNIN_TITLE}">${uS.CTA}</button>
1343
+ </div>`,NL=`<div ${Be} class="reticle-rail" role="complementary" aria-label="Reticle">
1344
+ <div ${hS} class="reticle-rail-promo"></div>
1345
+ </div>`;pS=`:is([${nn}],[${Ft}],[${$}],[${C}])`,fS=`[${Cm}][${Me}="0"]:is([${ut}="1"],[${x4}],[${gn}="1"],[${Qe}="1"])`,vL=`[${M}]:is([${zo}="below"],[${Hi}="below"])`,OL=`
1346
+ [${M}]{
1365
1347
  /* Short enough to leave most of a laptop screen to the app; the log scrolls inside it. */
1366
1348
  --reticle-frame-h:min(440px,60vh,calc(100vh - 190px));
1367
1349
  --reticle-rail-h:52px;--reticle-frame-gap:6px;}
1368
- [${D}] ${pT}{
1350
+ [${M}] ${pS}{
1369
1351
  right:0;left:auto;top:auto;
1370
1352
  bottom:calc(100% + 8px + var(--reticle-rail-h) + var(--reticle-frame-gap));
1371
1353
  width:var(--reticle-dock-w);max-width:min(var(--reticle-dock-w),calc(100vw - 24px));
1372
1354
  height:var(--reticle-frame-h);max-height:var(--reticle-frame-h);
1373
1355
  border-radius:var(--reticle-hud-radius-lg);
1374
- ${wc}}
1375
- [${D}] [${I}]::after{display:none;}
1376
- [${D}] [${I}] .reticle-settings-inner{height:100%;}
1377
- [${D}] [${I}] :is(.reticle-settings-body,.reticle-settings-foot){background:transparent;}
1378
- [${D}] [${w}] .reticle-report-inner{height:100%;}
1356
+ ${zc}}
1357
+ [${M}] [${C}]::after{display:none;}
1358
+ [${M}] [${C}] .reticle-settings-inner{height:100%;}
1359
+ [${M}] [${C}] :is(.reticle-settings-body,.reticle-settings-foot){background:transparent;}
1360
+ [${M}] [${$}] .reticle-report-inner{height:100%;}
1379
1361
  /* The Agent Log section fills the frame, so the footer sits on the bottom edge, not mid-panel. */
1380
- [${zt}] .reticle-chat-view{flex:1;min-height:0;display:flex;flex-direction:column;}
1381
- [${zt}] .reticle-chat-view > .reticle-hud-log-well{flex:1;min-height:0;}
1362
+ [${nn}] .reticle-chat-view{flex:1;min-height:0;display:flex;flex-direction:column;}
1363
+ [${nn}] .reticle-chat-view > .reticle-hud-log-well{flex:1;min-height:0;}
1382
1364
  /*
1383
1365
  * Two rows above the log in every state: the header and the status row. "Session ended" (or the
1384
1366
  * handoff notice) takes the status text's place instead of arriving as a row of its own, and the
1385
1367
  * Harness block sits in the footer above the project capsule.
1386
1368
  */
1387
- [${Uh}] [${zt}] .reticle-act-strip .reticle-banner{display:none;flex:1;min-width:0;min-height:0;padding:0;border:0;background:none;
1369
+ [${Cm}] [${nn}] .reticle-act-strip .reticle-banner{display:none;flex:1;min-width:0;min-height:0;padding:0;border:0;background:none;
1388
1370
  font-size:11px;font-weight:600;line-height:1.3;color:var(--reticle-hud-text);
1389
1371
  overflow:hidden;-webkit-box-orient:vertical;-webkit-line-clamp:2;}
1390
- [${Uh}][data-reticle-state="ended"] [${zt}] .reticle-act-strip .reticle-banner{display:-webkit-box;}
1391
- [${Uh}][data-reticle-state="ended"] [${zt}] .reticle-act-strip .reticle-act{display:none;}
1392
- [${zt}] .reticle-foot-workspace-row{gap:var(--reticle-hud-space-2);}
1372
+ [${Cm}][data-reticle-state="ended"] [${nn}] .reticle-act-strip .reticle-banner{display:-webkit-box;}
1373
+ [${Cm}][data-reticle-state="ended"] [${nn}] .reticle-act-strip .reticle-act{display:none;}
1374
+ [${nn}] .reticle-foot-workspace-row{gap:var(--reticle-hud-space-2);}
1393
1375
  /* The Harness block sits above the project capsule, full width: one clear thing to press. */
1394
- [${zt}] [data-reticle-foot] .reticle-foot-stack{display:flex;flex-direction:column;gap:var(--reticle-hud-space-2);}
1395
- [${zt}] [data-reticle-foot] .reticle-foot-workspace-row:has(> .reticle-workspace-wrap[hidden]){display:none;}
1396
- ${oI} ${pT}{bottom:auto;top:calc(100% + 8px + var(--reticle-rail-h) + var(--reticle-frame-gap));}
1397
- [${D}][${Nt}="start"] :is(${pT},[${ye}]){right:auto;left:0;}
1376
+ [${nn}] [data-reticle-foot] .reticle-foot-stack{display:flex;flex-direction:column;gap:var(--reticle-hud-space-2);}
1377
+ [${nn}] [data-reticle-foot] .reticle-foot-workspace-row:has(> .reticle-workspace-wrap[hidden]){display:none;}
1378
+ ${vL} ${pS}{bottom:auto;top:calc(100% + 8px + var(--reticle-rail-h) + var(--reticle-frame-gap));}
1379
+ [${M}][${Ht}="start"] :is(${pS},[${Be}]){right:auto;left:0;}
1398
1380
 
1399
1381
  /* \u2500\u2500 Every page's header: title over a one-line subtitle, its actions, then close. \u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500 */
1400
- [${D}] :is(.reticle-page-heading,.reticle-report-head,.reticle-settings-head){
1382
+ [${M}] :is(.reticle-page-heading,.reticle-report-head,.reticle-settings-head){
1401
1383
  flex:none;display:flex;align-items:center;gap:var(--reticle-hud-space-2);min-height:52px;box-sizing:border-box;
1402
1384
  padding:var(--reticle-hud-space-2) var(--reticle-hud-space-2) var(--reticle-hud-space-2) var(--reticle-hud-space-3);
1403
1385
  border-bottom:1px solid var(--reticle-hud-border);background:none;}
1404
- [${D}] .reticle-page-titles{display:flex;flex:1;min-width:0;flex-direction:column;gap:1px;}
1405
- [${D}] :is(.reticle-page-heading strong,.reticle-report-title,.reticle-settings-title){
1386
+ [${M}] .reticle-page-titles{display:flex;flex:1;min-width:0;flex-direction:column;gap:1px;}
1387
+ [${M}] :is(.reticle-page-heading strong,.reticle-report-title,.reticle-settings-title){
1406
1388
  font-size:var(--reticle-hud-size-base);font-weight:600;letter-spacing:0;text-transform:none;color:var(--reticle-hud-text);}
1407
- [${D}] .reticle-settings-title{flex:1;}
1408
- [${D}] .reticle-page-heading .reticle-page-subtitle{padding:0;border:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;
1389
+ [${M}] .reticle-settings-title{flex:1;}
1390
+ [${M}] .reticle-page-heading .reticle-page-subtitle{padding:0;border:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;
1409
1391
  font-size:var(--reticle-hud-size-xs);color:var(--reticle-hud-text-muted);}
1410
- [${D}] .reticle-primary-btn{flex:none;display:inline-flex;align-items:center;gap:5px;height:28px;padding:0 var(--reticle-hud-space-3);
1392
+ [${M}] .reticle-primary-btn{flex:none;display:inline-flex;align-items:center;gap:5px;height:28px;padding:0 var(--reticle-hud-space-3);
1411
1393
  border:0;border-radius:var(--reticle-hud-radius-pill);background:var(--reticle-hud-brand);color:#160b02;
1412
1394
  font:inherit;font-size:var(--reticle-hud-size-sm);font-weight:700;white-space:nowrap;cursor:pointer;}
1413
- [${D}] .reticle-primary-btn:hover{filter:brightness(1.08);}
1414
- [${D}] .reticle-page-heading .reticle-primary-btn{width:auto;height:28px;border-radius:var(--reticle-hud-radius-pill);background:var(--reticle-hud-brand);color:#160b02;font-size:var(--reticle-hud-size-sm);}
1395
+ [${M}] .reticle-primary-btn:hover{filter:brightness(1.08);}
1396
+ [${M}] .reticle-page-heading .reticle-primary-btn{width:auto;height:28px;border-radius:var(--reticle-hud-radius-pill);background:var(--reticle-hud-brand);color:#160b02;font-size:var(--reticle-hud-size-sm);}
1415
1397
  /* One close control everywhere: a quiet 28px square, the same glyph weight on every page. */
1416
- [${D}] :is([data-reticle-page-close],.reticle-report-close,.reticle-settings-close){flex:none;width:28px;height:28px;
1398
+ [${M}] :is([data-reticle-page-close],.reticle-report-close,.reticle-settings-close){flex:none;width:28px;height:28px;
1417
1399
  display:inline-flex;align-items:center;justify-content:center;padding:0;border:0;border-radius:var(--reticle-hud-radius-sm);
1418
1400
  background:transparent;color:var(--reticle-hud-text-muted);font-size:18px;line-height:1;cursor:pointer;}
1419
- [${D}] :is([data-reticle-page-close],.reticle-report-close,.reticle-settings-close):hover{background:var(--reticle-hud-hover);color:var(--reticle-hud-text);}
1420
- [${D}] .reticle-primary-btn[data-active="1"]{background:var(--reticle-hud-text);color:var(--reticle-hud-ground);}
1421
- [${D}] .reticle-primary-btn svg{display:block;fill:none;stroke:currentColor;stroke-width:1.8;}
1401
+ [${M}] :is([data-reticle-page-close],.reticle-report-close,.reticle-settings-close):hover{background:var(--reticle-hud-hover);color:var(--reticle-hud-text);}
1402
+ [${M}] .reticle-primary-btn[data-active="1"]{background:var(--reticle-hud-text);color:var(--reticle-hud-ground);}
1403
+ [${M}] .reticle-primary-btn svg{display:block;fill:none;stroke:currentColor;stroke-width:1.8;}
1422
1404
  /* One empty state for every page: what is missing, then how it gets filled. */
1423
- [${D}] :is(.reticle-flows-empty,.reticle-annotation-empty){display:flex;flex-direction:column;align-items:center;gap:6px;
1405
+ [${M}] :is(.reticle-flows-empty,.reticle-annotation-empty){display:flex;flex-direction:column;align-items:center;gap:6px;
1424
1406
  margin:auto 0;padding:40px var(--reticle-hud-space-4);text-align:center;}
1425
- [${D}] :is(.reticle-flows-empty,.reticle-annotation-empty) strong{font-size:var(--reticle-hud-size-base);font-weight:600;color:var(--reticle-hud-text);}
1426
- [${D}] :is(.reticle-flows-empty,.reticle-annotation-empty) span{max-width:260px;font-size:var(--reticle-hud-size-sm);line-height:1.45;color:var(--reticle-hud-text-muted);}
1407
+ [${M}] :is(.reticle-flows-empty,.reticle-annotation-empty) strong{font-size:var(--reticle-hud-size-base);font-weight:600;color:var(--reticle-hud-text);}
1408
+ [${M}] :is(.reticle-flows-empty,.reticle-annotation-empty) span{max-width:260px;font-size:var(--reticle-hud-size-sm);line-height:1.45;color:var(--reticle-hud-text-muted);}
1427
1409
 
1428
1410
  /* \u2500\u2500 Saved flows: one row per journey. \u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500 */
1429
- [${Ot}="flows"] .reticle-all-flows{display:flex;flex-direction:column;gap:var(--reticle-hud-space-1);padding:var(--reticle-hud-space-2);}
1430
- [${Ot}="flows"] .reticle-flow-row{display:flex;align-items:center;gap:var(--reticle-hud-space-3);width:100%;min-height:48px;
1411
+ [${Ft}="flows"] .reticle-all-flows{display:flex;flex-direction:column;gap:var(--reticle-hud-space-1);padding:var(--reticle-hud-space-2);}
1412
+ [${Ft}="flows"] .reticle-flow-row{display:flex;align-items:center;gap:var(--reticle-hud-space-3);width:100%;min-height:48px;
1431
1413
  padding:var(--reticle-hud-space-2) var(--reticle-hud-space-3);border:1px solid transparent;border-radius:var(--reticle-hud-radius-md);
1432
1414
  background:transparent;color:var(--reticle-hud-text);font:inherit;text-align:left;cursor:pointer;}
1433
- [${Ot}="flows"] .reticle-flow-row:hover:not(:disabled){background:var(--reticle-hud-hover);border-color:var(--reticle-hud-border);}
1434
- [${Ot}="flows"] .reticle-flow-row:focus-visible{outline:2px solid var(--reticle-hud-brand);outline-offset:1px;}
1435
- [${Ot}="flows"] .reticle-flow-row:disabled{cursor:not-allowed;opacity:.5;}
1436
- [${Ot}="flows"] .reticle-flow-play{flex:none;display:inline-flex;align-items:center;justify-content:center;width:28px;height:28px;
1415
+ [${Ft}="flows"] .reticle-flow-row:hover:not(:disabled){background:var(--reticle-hud-hover);border-color:var(--reticle-hud-border);}
1416
+ [${Ft}="flows"] .reticle-flow-row:focus-visible{outline:2px solid var(--reticle-hud-brand);outline-offset:1px;}
1417
+ [${Ft}="flows"] .reticle-flow-row:disabled{cursor:not-allowed;opacity:.5;}
1418
+ [${Ft}="flows"] .reticle-flow-play{flex:none;display:inline-flex;align-items:center;justify-content:center;width:28px;height:28px;
1437
1419
  border-radius:50%;background:var(--reticle-hud-brand-soft);color:var(--reticle-hud-brand);font-size:11px;}
1438
- [${Ot}="flows"] .reticle-flow-row:disabled .reticle-flow-play{background:var(--reticle-hud-inset);color:var(--reticle-hud-text-faint);}
1439
- [${Ot}="flows"] .reticle-flow-text{display:flex;flex:1;min-width:0;flex-direction:column;gap:1px;}
1440
- [${Ot}="flows"] .reticle-flow-name{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:var(--reticle-hud-size-sm);font-weight:600;}
1441
- [${Ot}="flows"] .reticle-flow-meta{font-size:var(--reticle-hud-size-xs);color:var(--reticle-hud-text-muted);}
1420
+ [${Ft}="flows"] .reticle-flow-row:disabled .reticle-flow-play{background:var(--reticle-hud-inset);color:var(--reticle-hud-text-faint);}
1421
+ [${Ft}="flows"] .reticle-flow-text{display:flex;flex:1;min-width:0;flex-direction:column;gap:1px;}
1422
+ [${Ft}="flows"] .reticle-flow-name{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:var(--reticle-hud-size-sm);font-weight:600;}
1423
+ [${Ft}="flows"] .reticle-flow-meta{font-size:var(--reticle-hud-size-xs);color:var(--reticle-hud-text-muted);}
1442
1424
 
1443
1425
  /* \u2500\u2500 Notes: a segmented list switch, then the page's tools on the right. \u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500 */
1444
- [${Ot}="annotations"] .reticle-annotations-tabs{gap:var(--reticle-hud-space-1);padding:var(--reticle-hud-space-2) var(--reticle-hud-space-3);}
1426
+ [${Ft}="annotations"] .reticle-annotations-tabs{gap:var(--reticle-hud-space-1);padding:var(--reticle-hud-space-2) var(--reticle-hud-space-3);}
1445
1427
  /* One segmented switch for every "show me this or that": Notes' list and Impact's scope. */
1446
- [${D}] .reticle-segmented{display:inline-flex;flex:none;padding:2px;border-radius:var(--reticle-hud-radius-sm);background:var(--reticle-hud-inset);}
1447
- [${Ot}="annotations"] .reticle-segmented{margin-right:auto;}
1448
- [${D}] .reticle-segmented button{height:24px;padding:0 var(--reticle-hud-space-3);border:0;border-radius:4px;background:transparent;
1428
+ [${M}] .reticle-segmented{display:inline-flex;flex:none;padding:2px;border-radius:var(--reticle-hud-radius-sm);background:var(--reticle-hud-inset);}
1429
+ [${Ft}="annotations"] .reticle-segmented{margin-right:auto;}
1430
+ [${M}] .reticle-segmented button{height:24px;padding:0 var(--reticle-hud-space-3);border:0;border-radius:4px;background:transparent;
1449
1431
  color:var(--reticle-hud-text-muted);font:inherit;font-size:var(--reticle-hud-size-xs);white-space:nowrap;cursor:pointer;}
1450
- [${D}] .reticle-segmented button:hover{color:var(--reticle-hud-text);}
1451
- [${D}] .reticle-segmented button[aria-pressed="true"]{background:var(--reticle-hud-border-strong);color:var(--reticle-hud-text);}
1452
- [${D}] .reticle-report-head .reticle-segmented{margin-left:auto;}
1453
- [${Ot}="annotations"] .reticle-annotations-tabs .reticle-copy-all{margin-left:0;color:var(--reticle-hud-text-muted);}
1454
- [${Ot}="annotations"] .reticle-annotation-list{display:flex;flex-direction:column;}
1455
- [${Ot}="annotations"] .reticle-annotation-item{padding:var(--reticle-hud-space-3) 2px;}
1432
+ [${M}] .reticle-segmented button:hover{color:var(--reticle-hud-text);}
1433
+ [${M}] .reticle-segmented button[aria-pressed="true"]{background:var(--reticle-hud-border-strong);color:var(--reticle-hud-text);}
1434
+ [${M}] .reticle-report-head .reticle-segmented{margin-left:auto;}
1435
+ [${Ft}="annotations"] .reticle-annotations-tabs .reticle-copy-all{margin-left:0;color:var(--reticle-hud-text-muted);}
1436
+ [${Ft}="annotations"] .reticle-annotation-list{display:flex;flex-direction:column;}
1437
+ [${Ft}="annotations"] .reticle-annotation-item{padding:var(--reticle-hud-space-3) 2px;}
1456
1438
 
1457
1439
  /* \u2500\u2500 Impact: the streak and the account share the first line instead of a row each. \u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500 */
1458
- [${w}] .reticle-report-top{display:flex;align-items:center;justify-content:space-between;gap:var(--reticle-hud-space-2);min-height:28px;margin-bottom:var(--reticle-hud-space-2);}
1459
- [${w}] .reticle-report-top .reticle-report-streak{margin-bottom:0;}
1460
- [${w}] .reticle-report-top .reticle-report-identity{margin:0 0 0 auto;padding:0;}
1461
- [${w}] .reticle-report-hero-value{color:var(--reticle-hud-text);}
1462
- [${w}] .reticle-report-card{background:var(--reticle-hud-inset);border-radius:var(--reticle-hud-radius-md);}
1463
- [${w}] :is(.reticle-report-foot,.reticle-report-links){padding-left:var(--reticle-hud-space-3);padding-right:var(--reticle-hud-space-3);}
1440
+ [${$}] .reticle-report-top{display:flex;align-items:center;justify-content:space-between;gap:var(--reticle-hud-space-2);min-height:28px;margin-bottom:var(--reticle-hud-space-2);}
1441
+ [${$}] .reticle-report-top .reticle-report-streak{margin-bottom:0;}
1442
+ [${$}] .reticle-report-top .reticle-report-identity{margin:0 0 0 auto;padding:0;}
1443
+ [${$}] .reticle-report-hero-value{color:var(--reticle-hud-text);}
1444
+ [${$}] .reticle-report-card{background:var(--reticle-hud-inset);border-radius:var(--reticle-hud-radius-md);}
1445
+ [${$}] :is(.reticle-report-foot,.reticle-report-links){padding-left:var(--reticle-hud-space-3);padding-right:var(--reticle-hud-space-3);}
1464
1446
 
1465
1447
  /* \u2500\u2500 Settings: the help links scroll with the rest instead of pinning a footer over the options. */
1466
- [${I}] .reticle-settings-body .reticle-settings-foot{margin-top:0;border-top:0;}
1467
- [${I}] .reticle-settings-row{flex-wrap:wrap;}
1468
- [${I}] .reticle-settings-helptext{flex-basis:100%;margin:6px 0 2px;font-size:var(--reticle-hud-size-xs);line-height:1.45;color:var(--reticle-hud-text-muted);}
1469
- [${I}] .reticle-settings-help[aria-expanded="true"]{color:var(--reticle-hud-brand);}
1470
- [${I}] .reticle-settings-reset{background:none;text-align:left;padding-left:14px;font-weight:500;}
1448
+ [${C}] .reticle-settings-body .reticle-settings-foot{margin-top:0;border-top:0;}
1449
+ [${C}] .reticle-settings-row{flex-wrap:wrap;}
1450
+ [${C}] .reticle-settings-helptext{flex-basis:100%;margin:6px 0 2px;font-size:var(--reticle-hud-size-xs);line-height:1.45;color:var(--reticle-hud-text-muted);}
1451
+ [${C}] .reticle-settings-help[aria-expanded="true"]{color:var(--reticle-hud-brand);}
1452
+ [${C}] .reticle-settings-reset{background:none;text-align:left;padding-left:14px;font-weight:500;}
1471
1453
 
1472
1454
  /* \u2500\u2500 Toolbar: Settings and Exit are tabs like the four beside them, so they light the same way. \u2500\u2500 */
1473
1455
  [data-reticle-hud] .reticle-toolbar-chrome .reticle-tb-btn{width:100%;height:auto;flex-direction:column;gap:2px;min-height:42px;padding:4px 0 3px;
@@ -1476,44 +1458,52 @@ ${oI} ${pT}{bottom:auto;top:calc(100% + 8px + var(--reticle-rail-h) + var(--reti
1476
1458
  [data-reticle-hud] .reticle-toolbar-chrome .reticle-tb-btn[data-active="1"],
1477
1459
  [data-reticle-hud] .reticle-toolbar-chrome .reticle-tb-btn[data-active="1"]:hover{background:transparent;color:var(--reticle-hud-text);}
1478
1460
 
1479
- [${ye}]{
1461
+ [${Be}]{
1480
1462
  display:none;position:absolute;right:0;left:auto;bottom:calc(100% + 8px);z-index:7;
1481
1463
  box-sizing:border-box;width:var(--reticle-dock-w);max-width:min(var(--reticle-dock-w),calc(100vw - 24px));
1482
1464
  height:var(--reticle-rail-h);padding:0 var(--reticle-hud-space-3);align-items:center;
1483
1465
  border:1px solid color-mix(in srgb,var(--reticle-hud-brand) 30%,var(--reticle-hud-border));
1484
1466
  border-radius:var(--reticle-hud-radius-lg);
1485
1467
  background:linear-gradient(135deg,var(--reticle-hud-brand-soft),var(--reticle-hud-surface) 65%);
1486
- box-shadow:${hr};color:var(--reticle-hud-text);font-family:var(--reticle-font);
1468
+ box-shadow:${xr};color:var(--reticle-hud-text);font-family:var(--reticle-font);
1487
1469
  pointer-events:auto;}
1488
- ${oI} [${ye}]{bottom:auto;top:calc(100% + 8px);}
1489
- ${rI} [${ye}]{display:flex;}
1470
+ ${vL} [${Be}]{bottom:auto;top:calc(100% + 8px);}
1471
+ ${fS} [${Be}]{display:flex;}
1472
+ ${fS} [${Be}][hidden]{display:none;}
1473
+ /* No rail, no gap for it: the page sits straight above the toolbar. */
1474
+ [${M}]:has(> [${Be}][hidden]){--reticle-rail-h:0px;--reticle-frame-gap:0px;}
1490
1475
  /* The capsule and the rail share a slot: the capsule is for "nothing open", the rail for "a page is". */
1491
- ${rI} [${gt}]{display:none !important;}
1492
- [${ye}] > [hidden]{display:none !important;}
1493
- [${ye}] .reticle-rail-signin,[${ye}] .reticle-rail-promo{flex:1;min-width:0;}
1494
- [${ye}] .reticle-rail-signin{display:flex;align-items:center;gap:var(--reticle-hud-space-3);}
1495
- [${ye}] .reticle-rail-copy{display:flex;flex:1;min-width:0;flex-direction:column;line-height:1.3;}
1496
- [${ye}] .reticle-rail-copy strong{font-size:var(--reticle-hud-size-sm);font-weight:600;}
1497
- [${ye}] .reticle-rail-copy span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:var(--reticle-hud-size-xs);color:var(--reticle-hud-text-muted);}
1498
- [${ye}] .reticle-rail-cta{flex:none;height:28px;padding:0 var(--reticle-hud-space-3);border:0;border-radius:var(--reticle-hud-radius-pill);
1476
+ ${fS} [${yt}]{display:none !important;}
1477
+ [${Be}] > [hidden]{display:none !important;}
1478
+ [${Be}] .reticle-rail-promo{flex:1;min-width:0;}
1479
+ /* The sign-in ask: one row in the Agent Log, above its footer. */
1480
+ [${rr}]{display:flex;flex:none;align-items:center;gap:var(--reticle-hud-space-3);
1481
+ margin:0 var(--reticle-hud-space-3) var(--reticle-hud-space-2);padding:var(--reticle-hud-space-2) var(--reticle-hud-space-3);
1482
+ border:1px solid color-mix(in srgb,var(--reticle-hud-brand) 30%,var(--reticle-hud-border));border-radius:var(--reticle-hud-radius-md);
1483
+ background:linear-gradient(135deg,var(--reticle-hud-brand-soft),transparent 65%);}
1484
+ [${rr}][hidden]{display:none;}
1485
+ [${rr}] .reticle-rail-copy{display:flex;flex:1;min-width:0;flex-direction:column;line-height:1.3;}
1486
+ [${rr}] .reticle-rail-copy strong{font-size:var(--reticle-hud-size-sm);font-weight:600;}
1487
+ [${rr}] .reticle-rail-copy span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:var(--reticle-hud-size-xs);color:var(--reticle-hud-text-muted);}
1488
+ [${rr}] .reticle-rail-cta{flex:none;height:28px;padding:0 var(--reticle-hud-space-3);border:0;border-radius:var(--reticle-hud-radius-pill);
1499
1489
  background:var(--reticle-hud-brand);color:#160b02;font:inherit;font-size:var(--reticle-hud-size-sm);font-weight:700;cursor:pointer;}
1500
- [${ye}] .reticle-rail-cta:hover{filter:brightness(1.08);}
1501
- [${ye}] .reticle-rail-cta:focus-visible{outline:2px solid var(--reticle-hud-text);outline-offset:2px;}
1490
+ [${rr}] .reticle-rail-cta:hover{filter:brightness(1.08);}
1491
+ [${rr}] .reticle-rail-cta:focus-visible{outline:2px solid var(--reticle-hud-text);outline-offset:2px;}
1502
1492
  /* The promo: one line of copy, its link, and dots. The carousel draws no frame of its own here. */
1503
- [${ye}] .reticle-carousel{margin:0;padding:0;border:0;background:none;}
1504
- [${ye}] .reticle-carousel-track{height:32px;overflow:hidden;}
1505
- [${ye}] :is(.reticle-carousel-close,.reticle-carousel-arrow,[data-reticle-carousel-position]){display:none;}
1506
- [${ye}] .reticle-carousel-controls{position:absolute;right:var(--reticle-hud-space-3);top:6px;height:auto;margin:0;}
1507
- [${ye}] .reticle-carousel-dots{position:static;display:flex;gap:4px;margin:0;}
1508
- [${ye}] .reticle-carousel-dot{width:10px;height:3px;padding:0;border:0;border-radius:99px;background:var(--reticle-hud-text-muted);opacity:.35;cursor:pointer;}
1509
- [${ye}] .reticle-carousel-dot[aria-current="true"]{background:var(--reticle-hud-brand);opacity:1;}
1510
- [${ye}] .reticle-promo-copy{display:grid;grid-template-columns:minmax(0,1fr) auto;column-gap:8px;padding-right:0;}
1511
- [${ye}] .reticle-promo-kicker{display:none;}
1512
- [${ye}] .reticle-promo-title{grid-column:1/-1;overflow:hidden;padding-right:40px;font-size:var(--reticle-hud-size-sm);font-weight:600;line-height:1.3;text-overflow:ellipsis;white-space:nowrap;}
1513
- [${ye}] .reticle-promo-detail{grid-column:1;overflow:hidden;color:var(--reticle-hud-text-muted);font-size:var(--reticle-hud-size-xs);line-height:1.3;text-overflow:ellipsis;white-space:nowrap;}
1514
- [${ye}] .reticle-promo-link{position:static;grid-column:2;color:var(--reticle-hud-brand);font-size:var(--reticle-hud-size-xs);font-weight:600;text-decoration:none;white-space:nowrap;}
1515
- [${ye}] .reticle-promo-link:hover{text-decoration:underline;}
1516
- `});var cI,lI=S(()=>{"use strict";cI=`
1493
+ [${Be}] .reticle-carousel{margin:0;padding:0;border:0;background:none;}
1494
+ [${Be}] .reticle-carousel-track{height:32px;overflow:hidden;}
1495
+ [${Be}] :is(.reticle-carousel-close,.reticle-carousel-arrow,[data-reticle-carousel-position]){display:none;}
1496
+ [${Be}] .reticle-carousel-controls{position:absolute;right:var(--reticle-hud-space-3);top:6px;height:auto;margin:0;}
1497
+ [${Be}] .reticle-carousel-dots{position:static;display:flex;gap:4px;margin:0;}
1498
+ [${Be}] .reticle-carousel-dot{width:10px;height:3px;padding:0;border:0;border-radius:99px;background:var(--reticle-hud-text-muted);opacity:.35;cursor:pointer;}
1499
+ [${Be}] .reticle-carousel-dot[aria-current="true"]{background:var(--reticle-hud-brand);opacity:1;}
1500
+ [${Be}] .reticle-promo-copy{display:grid;grid-template-columns:minmax(0,1fr) auto;column-gap:8px;padding-right:0;}
1501
+ [${Be}] .reticle-promo-kicker{display:none;}
1502
+ [${Be}] .reticle-promo-title{grid-column:1/-1;overflow:hidden;padding-right:40px;font-size:var(--reticle-hud-size-sm);font-weight:600;line-height:1.3;text-overflow:ellipsis;white-space:nowrap;}
1503
+ [${Be}] .reticle-promo-detail{grid-column:1;overflow:hidden;color:var(--reticle-hud-text-muted);font-size:var(--reticle-hud-size-xs);line-height:1.3;text-overflow:ellipsis;white-space:nowrap;}
1504
+ [${Be}] .reticle-promo-link{position:static;grid-column:2;color:var(--reticle-hud-brand);font-size:var(--reticle-hud-size-xs);font-weight:600;text-decoration:none;white-space:nowrap;}
1505
+ [${Be}] .reticle-promo-link:hover{text-decoration:underline;}
1506
+ `});var IL,CL=S(()=>{"use strict";IL=`
1517
1507
  [data-reticle-overlay]{
1518
1508
  --reticle-hud-space-0:0px;
1519
1509
  --reticle-hud-space-1:4px;
@@ -1546,8 +1536,8 @@ ${rI} [${gt}]{display:none !important;}
1546
1536
  --reticle-hud-brand-soft:#2a1b0d;
1547
1537
  --reticle-hud-ease:cubic-bezier(.4,0,.2,1);
1548
1538
  }
1549
- `});var dI,uI=S(()=>{"use strict";wo();sT();UO();ub();VO();mr();KO();zO();Hh();Ih();Eh();Bh();lI();dI=`
1550
- ${cI}
1539
+ `});var LL,kL=S(()=>{"use strict";Ko();aS();aL();pT();uL();Ar();fL();mL();Im();xm();lm();Lm();CL();LL=`
1540
+ ${IL}
1551
1541
  [data-reticle-overlay]{position:fixed;inset:0;pointer-events:none;z-index:${String(2147483600)};}
1552
1542
  /**
1553
1543
  * The session glow: the page itself says an agent is here, and BREATHES while it is working.
@@ -1597,103 +1587,104 @@ ${cI}
1597
1587
  [data-reticle-overlay] .reticle-sl-icon{display:inline-flex;align-items:center;justify-content:center;line-height:1;flex-shrink:0;color:inherit;overflow:visible;}
1598
1588
  [data-reticle-overlay] .reticle-hi-icon svg,
1599
1589
  [data-reticle-overlay] .reticle-sl-icon svg{display:block;fill:none;stroke:currentColor;stroke-width:1.5;stroke-linecap:round;stroke-linejoin:round;overflow:visible;}
1600
- ${Dw}
1601
- ${Mw}
1602
- ${HO}
1603
- ${ch}
1604
- ${jO}
1605
- ${BO}
1606
- ${WO}
1607
- ${nI}
1608
- ${hw}
1609
- ${SO}
1610
- ${U0}
1611
- ${OO}
1612
- ${sI}`});function EI(){let t=Ee(Y.REMOVE,pe.MIN);return`<div ${w} class="reticle-report ${An}" role="region" aria-label="Reticle impact" aria-hidden="true">
1590
+ ${oI}
1591
+ ${iI}
1592
+ ${sL}
1593
+ ${em}
1594
+ ${pL}
1595
+ ${dL}
1596
+ ${hL}
1597
+ ${yL}
1598
+ ${H0}
1599
+ ${BC}
1600
+ ${cC}
1601
+ ${ZC}
1602
+ ${OL}`});function UL(){let t=Ee(Q.REMOVE,he.MIN);return`<div ${$} class="reticle-report ${Cn}" role="region" aria-label="Reticle impact" aria-hidden="true">
1613
1603
  <div class="reticle-report-inner">
1614
1604
  <div class="reticle-report-head">
1615
- <span class="reticle-report-title">${j.TITLE}</span>
1616
- <span class="reticle-segmented reticle-report-scopes" role="group" aria-label="${j.SCOPE_LABEL}"><button type="button" ${jh}="${mT.PROJECT}" aria-pressed="true">${j.PROJECT}</button><button type="button" ${jh}="${mT.MACHINE}" aria-pressed="false" title="${j.GLOBAL_TITLE}">${j.GLOBAL}</button></span>
1617
- <button type="button" ${ob} class="reticle-report-close" title="Close" aria-label="Close impact">${t}</button>
1605
+ <span class="reticle-report-title">${W.TITLE}</span>
1606
+ <span class="reticle-segmented reticle-report-scopes" role="group" aria-label="${W.SCOPE_LABEL}"><button type="button" ${Dm}="${mS.PROJECT}" aria-pressed="true">${W.PROJECT}</button><button type="button" ${Dm}="${mS.MACHINE}" aria-pressed="false" title="${W.GLOBAL_TITLE}">${W.GLOBAL}</button></span>
1607
+ <button type="button" ${iT} class="reticle-report-close" title="Close" aria-label="Close impact">${t}</button>
1618
1608
  </div>
1619
1609
  <div class="reticle-report-body" data-reticle-report-body></div>
1620
- <div class="reticle-report-foot" role="group" aria-label="${j.SHARE_LABEL}">
1621
- <span class="reticle-report-share-label">${j.SHARE_LABEL}</span>
1622
- <button type="button" ${fI} class="reticle-report-share">${j.POST_X}</button>
1623
- <button type="button" ${hI} class="reticle-report-share">${j.POST_IN}</button>
1624
- <button type="button" ${mI} class="reticle-report-share">${j.COPY}</button>
1625
- <button type="button" ${gI} class="reticle-report-share reticle-report-refer">${j.REFER}</button>
1610
+ <div class="reticle-report-foot" role="group" aria-label="${W.SHARE_LABEL}">
1611
+ <span class="reticle-report-share-label">${W.SHARE_LABEL}</span>
1612
+ <button type="button" ${ML} class="reticle-report-share">${W.POST_X}</button>
1613
+ <button type="button" ${PL} class="reticle-report-share">${W.POST_IN}</button>
1614
+ <button type="button" ${$L} class="reticle-report-share">${W.COPY}</button>
1615
+ <button type="button" ${HL} class="reticle-report-share reticle-report-refer">${W.REFER}</button>
1626
1616
  </div>
1627
1617
  <div class="reticle-report-links">
1628
- <a data-reticle-link="docs" href="${Ni.DOCS}" target="_blank" rel="noreferrer noopener">Docs</a>
1629
- <a data-reticle-link="github" href="${Ni.GITHUB}" target="_blank" rel="noreferrer noopener">GitHub</a>
1630
- <a data-reticle-link="site" href="${Ni.SITE}" target="_blank" rel="noreferrer noopener">reticle.sh</a>
1631
- <a data-reticle-link="discord" href="${Ni.DISCORD}" target="_blank" rel="noreferrer noopener">Discord</a>
1618
+ <a data-reticle-link="docs" href="${ji.DOCS}" target="_blank" rel="noreferrer noopener">Docs</a>
1619
+ <a data-reticle-link="github" href="${ji.GITHUB}" target="_blank" rel="noreferrer noopener">GitHub</a>
1620
+ <a data-reticle-link="site" href="${ji.SITE}" target="_blank" rel="noreferrer noopener">reticle.sh</a>
1621
+ <a data-reticle-link="discord" href="${ji.DISCORD}" target="_blank" rel="noreferrer noopener">Discord</a>
1632
1622
  </div>
1633
1623
  </div>
1634
- </div>`}function Ci(t,e,n){let r=n===void 0?"":`<span class="reticle-report-basis" title="${n}">${j.ESTIMATE_TAG}</span>`;return`<div class="reticle-report-card"><span class="reticle-report-value">${t}</span><span class="reticle-report-label">${e}${r}</span></div>`}function IF(t){let e=t.days.slice(-30);if(e.length===0)return"";let n=Math.max(1,...e.map(o=>o.counts.verdicts)),r=e.map(o=>{let a=Math.max(4,Math.round(o.counts.verdicts/n*100)),s=`${o.date}: ${String(o.counts.verdicts)} verdicts, ${String(o.counts.failed)} defects`,l=o.counts.failed>0?' data-hot="1"':"";return`<span class="reticle-report-bar" style="height:${String(a)}%" title="${s}"${l}></span>`}).join("");return`<div class="reticle-report-chart-wrap"><span class="reticle-report-section">${j.CHART}</span><div class="reticle-report-chart">${r}</div></div>`}function CF(t,e){var u;let n=((u=t.defects)!=null?u:[]).slice(0,qx);if(n.length===0)return"";let r=e!==void 0&&Co(e),o=r?`<a class="reticle-report-defect-link" data-reticle-link="defect" href="${Z(e)}" target="_blank" rel="noreferrer noopener" title="${j.DEFECT_LINK_TITLE}" aria-label="${j.DEFECT_LINK_TITLE}">${Ee(Y.VIEW,pe.SEND)}</a>`:"",a=n.map(p=>{let f=p.detail===void 0?"":`<span class="reticle-report-defect-detail">${Z(p.detail)}</span>`,m=p.source===void 0?"":`<span class="reticle-report-defect-source">${Z(p.source)}</span>`;return`<li class="reticle-report-defect"><span class="reticle-report-defect-title">${Z(p.title)}</span>${f}${m}${o}</li>`}).join(""),s=t.counts.failed>n.length,l=r?`<a class="reticle-report-defects-more" data-reticle-link="dashboard" href="${Z(e)}" target="_blank" rel="noreferrer noopener">${j.DEFECTS_MORE}${s?` (${String(t.counts.failed)})`:""}</a>`:s?`<button type="button" data-reticle-defects-all ${wt} class="reticle-report-defects-all" title="${j.DEFECTS_SEE_ALL_TITLE}">${j.DEFECTS_SEE_ALL} (${String(t.counts.failed)}) \u2192</button>`:"",d=bb(e);return`<div class="reticle-report-defects-wrap"><div class="reticle-report-defects-head"><span class="reticle-report-section">${j.DEFECTS}</span>${d}</div><ul class="reticle-report-defects">${a}</ul>${l}</div>`}function LF(t){if(t===void 0)return"";let e=d=>typeof t[d]=="number"?t[d]:0,n=t.status,r=typeof t.keyRefused=="string"?t.keyRefused:void 0,o=r!==void 0?j.KEY_REFUSED:n==="refused"?`${String(e("refused"))} refused`:n==="pending"?`${String(e("pending"))} waiting`:n==="on-platform"?`Synced \xB7 ${String(e("onPlatform"))}`:n==="local-only"?`${String(e("pending"))} ${j.NOT_SENT}`:void 0;if(o===void 0)return"";let a=r!==void 0?r:n==="local-only"?j.NOT_SENT_HELP:typeof t.said=="string"?t.said:"",s=t.runUrl,l=typeof s=="string"&&Co(s)?` <a class="reticle-sync-run" data-reticle-link="run" href="${Z(s)}" target="_blank" rel="noreferrer noopener">${j.SEE_RUN}</a>`:"";return`<span class="reticle-sync-status" data-reticle-sync-status="${Z(String(n))}" title="${Z(a)}">${o}</span>${l}`}function hT(t,e,n=""){let r=t==="seen"?"\u2713":t==="missing"?"\u2715":"\u25CB",o=n===""?"":`<span class="reticle-report-cap-cost">${n}</span>`;return`<li class="reticle-report-cap" data-state="${t}"><span class="reticle-report-cap-mark" aria-hidden="true">${r}</span><span class="reticle-report-cap-name">${e}</span>${o}</li>`}function kF(t){if(t===void 0)return"";let e=t.covered,n=t.total;if(typeof e!="number"||typeof n!="number")return"";let r=p=>{let f=t[p];return Array.isArray(f)?f:[]},o=r("seen").flatMap(p=>{let f=fT(p);return f===void 0?[]:[hT("seen",f)]}),a=r("missing").flatMap(p=>{if(typeof p!="object"||p===null)return[];let f=p,m=fT(f.capability),g=typeof f.cost=="string"?Z(f.cost):"";return m===void 0?[]:[hT("missing",m,g)]}),s=r("notSeenYet").flatMap(p=>{let f=fT(p);return f===void 0?[]:[hT("unseen",f)]}),l=[...a,...o,...s],d=l.length===0?"":`<ul class="reticle-report-caps">${l.join("")}</ul>${s.length===0?"":`<span class="reticle-report-caps-note">\u25CB ${j.NOT_SEEN_YET}</span>`}`,u=typeof t.prompt=="string"?`<button type="button" class="reticle-report-copy-prompt" ${bI}>${j.COPY_PROMPT}</button>`:"";return`<div class="reticle-report-instrumentation" title="${j.INSTRUMENTATION_HELP}"><div class="reticle-report-instrumentation-head"><span class="reticle-report-section">${j.INSTRUMENTATION}</span><span class="reticle-report-instrumentation-value">${j.covered(Math.round(e),Math.round(n))}</span></div>${d}${u}</div>`}function DF(t){var a,s;if(t===void 0)return"";let e=oO.filter(l=>typeof t[l.key]=="number");if(e.length===0)return"";let n=l=>{var d;return`${String(Math.round((d=t[l])!=null?d:0))}%`},r=typeof t.proved=="number"?n("proved"):n((s=(a=e[0])==null?void 0:a.key)!=null?s:""),o=e.map(l=>`<span class="reticle-report-coverage-level">${n(l.key)} ${l.label}</span>`).join("");return`<div class="reticle-report-coverage" title="${j.COVERAGE_HELP}"><span class="reticle-report-section">${j.COVERAGE}</span><span class="reticle-report-coverage-value">${r}</span><div class="reticle-report-coverage-levels">${o}</div></div>`}function MF(t,e,n,r,o,a,s){let l=t.counts;if(l.calls===0)return`<p class="reticle-report-empty">${j.EMPTY}</p>`;let d=t.records.streakDays>0?`<span class="reticle-report-streak" title="Consecutive days with at least one verdict">\u{1F525} ${String(t.records.streakDays)} <span class="reticle-report-streak-label">${j.STREAK}</span></span>`:"",u=`<div class="reticle-report-hero"><span class="reticle-report-hero-value">${jr(l.failed)}</span><span class="reticle-report-hero-label">${j.heroDefects(l.failed)}</span></div>`,p=`<div class="reticle-report-verdicts" title="${j.UNKNOWN_HELP}">
1635
- <span class="reticle-report-verdict" data-kind="pass">${jr(l.passed)} ${j.PASSED}</span>
1636
- <span class="reticle-report-verdict" data-kind="fail">${jr(l.failed)} ${j.FAILED}</span>
1637
- <span class="reticle-report-verdict" data-kind="unknown">${jr(l.unknown)} ${j.UNKNOWN}</span>
1638
- </div>`,f=[Ci(jr(l.verdicts),j.VERDICTS),Ci(jr(l.calls),j.CALLS),Ci(Tu(l.drivingMs),j.DRIVING),Ci(jr(l.sessions),j.SESSIONS),Ci(Tu(t.records.longestRunMs),j.LONGEST),Ci(jr(l.tokensReturned),j.TOKENS),Ci(jr(t.savings.tokens.value),j.SAVED_TOKENS,t.savings.tokens.basis),Ci(Tu(t.savings.minutes.value*6e4),j.SAVED_MINUTES,t.savings.minutes.basis)].join(""),m=`<div class="reticle-report-identity">${Dc(n,{dashboardUrl:e,projectName:r,verdicts:l.verdicts,defects:l.failed})}${bb(e)}${LF(a)}</div>`;return`<div class="reticle-report-top">${d}${m}</div>${u}${p}${kF(s)}${DF(o)}<div class="reticle-report-grid">${f}</div>${CF(t,e)}${IF(t)}${$F(t,e,n)}`}function $F(t,e,n){if(e!==void 0||t.counts.verdicts<=0||n===void 0)return"";let[r,o,a]=n.signedIn?[j.UNLINKED,j.UNLINKED_ACTION,j.UNLINKED_TAIL]:[j.LOCAL_ONLY,j.LOCAL_ONLY_ACTION,j.LOCAL_ONLY_TAIL];return`<p class="reticle-report-local-only">${r} <code>${o}</code> ${a}</p>`}var jh,mT,fI,hI,mI,gI,OF,fT,bI,PF,pI,qa,il,Li,fn,Ho,al,St,TI,Vh,gT,ol,Kh,SI=S(()=>{"use strict";H();ur();mr();Pa();Br();ut();yh();jh="data-reticle-report-scope",mT={PROJECT:"project",MACHINE:"machine"},fI="data-reticle-share-x",hI="data-reticle-share-in",mI="data-reticle-share-copy",gI="data-reticle-refer",OF=1600;fT=t=>{var e;return typeof t=="string"?Z((e=eO[t])!=null?e:t):void 0};bI="data-reticle-copy-prompt";PF=1200,pI="data-syncing",Kh=class{constructor(e={}){b(this,St);b(this,qa);b(this,il);b(this,Li);b(this,fn);b(this,Ho,!1);b(this,al);h(this,al,e)}mount(e){var r,o,a,s,l,d,u;h(this,Li,e),h(this,qa,(r=e.querySelector(`[${w}]`))!=null?r:void 0),h(this,il,(o=e.querySelector("[data-reticle-report-body]"))!=null?o:void 0),(a=e.querySelector(`[${ob}]`))==null||a.addEventListener("click",p=>{p.stopPropagation(),this.close()});let n=e.querySelectorAll(`[${jh}]`);for(let p of n)p.addEventListener("click",f=>{f.stopPropagation(),h(this,Ho,mT.MACHINE===p.getAttribute(jh));for(let m of n)m.setAttribute("aria-pressed",m===p?"true":"false");E(this,St,Vh).call(this)});(s=e.querySelector(`[${fI}]`))==null||s.addEventListener("click",p=>{p.stopPropagation(),E(this,St,gT).call(this,tO(this.shareText()))}),(l=e.querySelector(`[${hI}]`))==null||l.addEventListener("click",p=>{p.stopPropagation(),E(this,St,ol).call(this,this.shareText()),E(this,St,gT).call(this,nO())}),(d=e.querySelector(`[${mI}]`))==null||d.addEventListener("click",p=>{p.stopPropagation(),E(this,St,ol).call(this,this.shareText(),p.currentTarget)}),(u=e.querySelector(`[${gI}]`))==null||u.addEventListener("click",p=>{p.stopPropagation(),E(this,St,ol).call(this,qb(),p.currentTarget)}),e.addEventListener("click",p=>{var y,A,v,O;let f=p.target;if(!(f instanceof Element))return;let m=f.closest(`[${wt}]`);if(m!==null){p.stopPropagation(),E(this,St,ol).call(this,te.SIGNIN_COMMAND,m);return}let g=f.closest(`[${bI}]`),T=(A=(y=c(this,fn))==null?void 0:y.instrumentation)==null?void 0:A.prompt;if(g!==null&&typeof T=="string"){p.stopPropagation(),E(this,St,ol).call(this,T,g);return}let _=f.closest(`[${Eb}]`);_!==null&&(p.stopPropagation(),(O=(v=c(this,al)).onSyncNow)==null||O.call(v),_.setAttribute(pI,"1"),setTimeout(()=>_.removeAttribute(pI),PF))})}setSnapshot(e){h(this,fn,e),this.isOpen()&&E(this,St,Vh).call(this)}snapshot(){return c(this,fn)}isOpen(){var e;return((e=c(this,Li))==null?void 0:e.getAttribute(un))==="1"}open(){var e,n,r;c(this,Li)!==void 0&&((n=(e=c(this,al)).onBeforeOpen)==null||n.call(e),E(this,St,Vh).call(this),c(this,Li).setAttribute(un,"1"),(r=c(this,qa))==null||r.setAttribute("aria-hidden","false"))}close(){var e,n;(e=c(this,Li))==null||e.setAttribute(un,"0"),(n=c(this,qa))==null||n.setAttribute("aria-hidden","true")}toggle(){this.isOpen()?this.close():this.open()}contains(e){var n;return((n=c(this,qa))==null?void 0:n.contains(e))===!0}shareText(){let e=c(this,fn);return e===void 0?qb():c(this,Ho)?Xb(e.global):Xb(e.project,e.projectName)}};qa=new WeakMap,il=new WeakMap,Li=new WeakMap,fn=new WeakMap,Ho=new WeakMap,al=new WeakMap,St=new WeakSet,TI=function(){let e=c(this,fn);if(e!==void 0)return c(this,Ho)?e.global:e.project},Vh=function(){var n,r,o,a,s,l;let e=E(this,St,TI).call(this);c(this,il)!==void 0&&(c(this,il).innerHTML=e===void 0?`<p class="reticle-report-empty">${j.EMPTY}</p>`:MF(e,(n=c(this,fn))==null?void 0:n.dashboardUrl,(r=c(this,fn))==null?void 0:r.account,(o=c(this,fn))==null?void 0:o.projectName,c(this,Ho)||(a=c(this,fn))==null?void 0:a.coverage,c(this,Ho)||(s=c(this,fn))==null?void 0:s.sync,c(this,Ho)||(l=c(this,fn))==null?void 0:l.instrumentation))},gT=function(e){window.open(e,"_blank","noopener,noreferrer")},ol=async function(e,n){var r,o;try{await((r=navigator.clipboard)==null?void 0:r.writeText(e))}catch{}if(n instanceof HTMLElement){let a=(o=n.textContent)!=null?o:"";n.textContent=j.COPIED,window.setTimeout(()=>{n.textContent=a},OF)}}});function BF(t){let e=t.kicker===void 0?"":`<span class="reticle-promo-kicker">${Z(t.kicker)}</span>`,n=t.detail===void 0?"":`<span class="reticle-promo-detail" title="${Z(t.detail)}">${Z(t.detail)}</span>`,r=t.cta===void 0?"":`<a data-reticle-promo-link class="reticle-promo-link" href="${Z(t.cta.url)}" target="_blank" rel="noopener noreferrer">${Z(t.cta.label)} \u2192</a>`;return{id:`${GF}${t.id}`,html:`<div class="reticle-promo-copy">${e}<strong class="reticle-promo-title">${Z(t.title)}</strong>${n}${r}</div>`}}function xI(t=[],e=op){let n=t.flatMap(r=>{let o=pb.safeParse(r);return o.success&&!o.data.id.startsWith(FF)?[o.data]:[]});return 0<n.length?n.map(BF):[...UF(e)]}var HF,_I,wu,UF,FF,GF,AI=S(()=>{"use strict";Lc();Pa();H();HF="/settings?group=billing",_I={REPLAY:"replay-confidence",NOTES:"notes-for-agent"},wu={REPLAY_TITLE:"Replay what your agent verified",REPLAY_DETAIL:"Saved flows re-run after each edit.",REPLAY_LINK:"See how \u2192",NOTES_TITLE:"Point your agent at anything",NOTES_DETAIL:"Open Notes, then click an element."},UF=t=>[{id:_I.REPLAY,html:`<div class="reticle-promo-copy"><strong class="reticle-promo-title">${wu.REPLAY_TITLE}</strong><span class="reticle-promo-detail">${wu.REPLAY_DETAIL}</span><a data-reticle-promo-link class="reticle-promo-link" href="${t}${HF}" target="_blank" rel="noopener noreferrer">${wu.REPLAY_LINK}</a></div>`},{id:_I.NOTES,html:`<div class="reticle-promo-copy"><strong class="reticle-promo-title">${wu.NOTES_TITLE}</strong><span class="reticle-promo-detail">${wu.NOTES_DETAIL}</span></div>`}],FF="harness",GF="notice-"});var VF,yI,ET,jF,vI,RI=S(()=>{"use strict";VF="Reticle",yI='<path d="M92.82 92.16C93.07 93.4 91.77 94.4 90.63 93.83C89.62 93.33 88.62 92.82 87.63 92.3C71.14 83.78 54.79 72.27 39.61 57.96C39.09 57.49 38.57 56.98 38.06 56.49C22.45 41.52 9.78 25.14 .33 8.52C0.29 8.45 .25 8.38 .2 8.31C-0.44 7.2 .51 5.84 1.79 6.05L24.07 9.71C43.06 12.83 60.63 11.75 75.55 6.53L93.95 .09C95.15-0.33 96.31 .78 95.93 1.98L90.1 20.49C85.37 35.48 84.9 52.97 88.69 71.73L92.83 92.16H92.82Z"/><path d="M58.72 89.23L6.15 92.8C5.24 92.86 4.48 92.13 4.51 91.22L6.56 30.39C6.61 28.91 8.51 28.36 9.35 29.57C16.23 39.43 24.98 52.35 33.01 61.26C41.05 70.17 50.6 78.72 59.62 86.56C60.65 87.45 60.08 89.13 58.72 89.23Z"/>',ET=`<svg class="reticle-mark" viewBox="0 0 96 94" fill="currentColor" aria-hidden="true">${yI}</svg>`,jF=`<svg class="reticle-fab-mark" viewBox="0 0 96 94" fill="currentColor" aria-hidden="true">${yI}</svg>`,vI=`<button type="button" class="reticle-fab" data-reticle-fab aria-label="Start ${VF}" aria-expanded="false">${jF}<span class="reticle-fab-pulse" aria-hidden="true"></span><span data-reticle-mark-count class="reticle-fab-badge" hidden>0</span></button>`});function ST(t,e=[],n){let r=t.querySelector(`[${Gh}]`);if(r===null)return;let o;try{o=window.sessionStorage}catch{o=void 0}tI(r,xI(e,n),o)}function zF(){try{return globalThis.sessionStorage.getItem(Qf)==="1"}catch{return!1}}function II(t){try{t?globalThis.sessionStorage.setItem(Qf,"1"):globalThis.sessionStorage.removeItem(Qf)}catch{}}function AT(t){return t&&!zF()}var NI,KF,wI,OI,bT,WF,TT,Se,It,Yn,Za,sl,_t,Qe,cl,ll,Qa,Ja,qr,ki,es,ts,Zr,Tr,ns,dl,Iu,Uo,ul,hn,Wh,_T,xT,CI,zh,Yh,Ou,yT=S(()=>{"use strict";at();SI();$b();Br();$c();ut();Hh();AI();Bh();RI();wo();db();au();ur();mr();Ih();$c();NI="reticle-toolbar-drag",KF=120,wI="Minimise chat",OI="Open agent chat",bT="Settings",WF="Reticle",TT="Exit";Ou=class{constructor(e={}){b(this,hn);b(this,Se);b(this,It);b(this,Yn);b(this,Za);b(this,sl);b(this,_t);b(this,Qe);b(this,cl);b(this,ll);b(this,Qa,!1);b(this,Ja,!1);b(this,qr);b(this,ki,!1);b(this,es);b(this,ts);b(this,Zr,new Kh({onBeforeOpen:()=>{c(this,_t).close(),this.closeChat()},onSyncNow:()=>{var e,n;return(n=(e=c(this,Tr)).onSyncNow)==null?void 0:n.call(e)}}));b(this,Tr);b(this,ns);b(this,dl,[]);b(this,Iu);b(this,Uo);b(this,ul);b(this,zh,e=>{if(c(this,Se)===void 0||c(this,It)===void 0||!c(this,_t).isOpen())return;let n=e.target;n instanceof Node&&(c(this,It).contains(n)||c(this,_t).contains(n)||c(this,_t).close())});b(this,Yh,e=>{if(e.key!=="Escape"||c(this,Se)===void 0||e.defaultPrevented||Ip(document))return;let n=e.target;if(!(n instanceof HTMLElement&&(n.tagName==="INPUT"||n.tagName==="TEXTAREA"||n.isContentEditable===!0))){if(this.isChatOpen()){this.closeChat();return}if(c(this,_t).isOpen()){c(this,_t).close();return}this.isCollapsed()||this.collapse()}});h(this,Tr,e),h(this,Qe,new Oh(()=>{c(this,Qe).closePage(),this.closeChat(),c(this,Zr).open()},n=>{if(n==="activity"){c(this,Qe).open(n),this.showChat();return}this.isCollapsed()&&this.expand(),this.closeChat(),c(this,_t).close(),c(this,Zr).close()},{run:n=>{var r;return(r=e.onHarnessRun)==null?void 0:r.call(e,n)},stop:()=>{var n;return(n=e.onHarnessStop)==null?void 0:n.call(e)},setHarness:n=>{var r;return(r=e.onHarness)==null?void 0:r.call(e,n)},link:()=>{var n;return(n=e.onHarnessLink)==null?void 0:n.call(e)}})),h(this,_t,new pu({...e.settings,onBeforeOpen:()=>{var n,r;this.closeChat(),c(this,Qe).closePage(),c(this,Zr).close(),(r=(n=e.settings)==null?void 0:n.onBeforeOpen)==null||r.call(n)}}))}setProjectId(e){c(this,Qe).setProjectId(e)}paintHarnessDrive(e){c(this,Qe).paintDrive(e)}paintAgent(e){c(this,Qe).paintAgent(e)}paintHarness(e,n){h(this,Iu,e),c(this,_t).paintHarness(e,n),c(this,Qe).paintHarness(e,n),E(this,hn,_T).call(this)}paintImpact(e){c(this,Qe).paintImpact(e)}paintAnnotations(e){c(this,Qe).paintAnnotations(e)}openView(e){e==="activity"?this.showChat():(this.isCollapsed()&&this.expand(),this.closeChat(),c(this,_t).close(),c(this,Zr).close()),c(this,Qe).open(e)}paintAccount(e,n,r={}){h(this,ns,{account:e,dashboardUrl:n,details:r}),c(this,Se)!==void 0&&(k0(c(this,Se),e,n,r),wb(c(this,Se),e,n,r),aI(c(this,Se),e),c(this,Qe).paintAccount(e),E(this,hn,_T).call(this))}paintNotices(e=[]){h(this,dl,e),h(this,Uo,E(this,hn,Wh).call(this)),c(this,Se)!==void 0&&ST(c(this,Se),e,c(this,Uo))}static dockHtml(e,n,r,o,a){let s=$f(Y.GEAR,pe.TOOLBAR),l=Ee(Y.REMOVE,pe.TOOLBAR);return`<div ${D} role="complementary" aria-label="Reticle">
1639
- <div ${zt} class="reticle-chat-panel ${An}" role="region" aria-label="Agent Log" aria-hidden="true">
1624
+ </div>`}function Yi(t,e,n){let r=n===void 0?"":`<span class="reticle-report-basis" title="${n}">${W.ESTIMATE_TAG}</span>`;return`<div class="reticle-report-card"><span class="reticle-report-value">${t}</span><span class="reticle-report-label">${e}${r}</span></div>`}function y4(t){let e=t.days.slice(-30);if(e.length===0)return"";let n=Math.max(1,...e.map(o=>o.counts.verdicts)),r=e.map(o=>{let s=Math.max(4,Math.round(o.counts.verdicts/n*100)),a=`${o.date}: ${String(o.counts.verdicts)} verdicts, ${String(o.counts.failed)} defects`,l=o.counts.failed>0?' data-hot="1"':"";return`<span class="reticle-report-bar" style="height:${String(s)}%" title="${a}"${l}></span>`}).join("");return`<div class="reticle-report-chart-wrap"><span class="reticle-report-section">${W.CHART}</span><div class="reticle-report-chart">${r}</div></div>`}function v4(t,e){var u;let n=((u=t.defects)!=null?u:[]).slice(0,Ny);if(n.length===0)return"";let r=e!==void 0&&Qn(e),o=r?`<a class="reticle-report-defect-link" data-reticle-link="defect" href="${ne(e)}" target="_blank" rel="noreferrer noopener" title="${W.DEFECT_LINK_TITLE}" aria-label="${W.DEFECT_LINK_TITLE}">${Ee(Q.VIEW,he.SEND)}</a>`:"",s=n.map(p=>{let h=p.detail===void 0?"":`<span class="reticle-report-defect-detail">${ne(p.detail)}</span>`,m=p.source===void 0?"":`<span class="reticle-report-defect-source">${ne(p.source)}</span>`;return`<li class="reticle-report-defect"><span class="reticle-report-defect-title">${ne(p.title)}</span>${h}${m}${o}</li>`}).join(""),a=t.counts.failed>n.length,l=r?`<a class="reticle-report-defects-more" data-reticle-link="dashboard" href="${ne(e)}" target="_blank" rel="noreferrer noopener">${W.DEFECTS_MORE}${a?` (${String(t.counts.failed)})`:""}</a>`:a?`<button type="button" data-reticle-defects-all ${Ut} class="reticle-report-defects-all" title="${W.DEFECTS_SEE_ALL_TITLE}">${W.DEFECTS_SEE_ALL} (${String(t.counts.failed)}) \u2192</button>`:"",d=TT(e);return`<div class="reticle-report-defects-wrap"><div class="reticle-report-defects-head"><span class="reticle-report-section">${W.DEFECTS}</span>${d}</div><ul class="reticle-report-defects">${s}</ul>${l}</div>`}function R4(t){if(t===void 0)return"";let e=d=>typeof t[d]=="number"?t[d]:0,n=t.status,r=typeof t.keyRefused=="string"?t.keyRefused:void 0,o=r!==void 0?W.KEY_REFUSED:n==="refused"?`${String(e("refused"))} refused`:n==="pending"?`${String(e("pending"))} waiting`:n==="on-platform"?`Synced \xB7 ${String(e("onPlatform"))}`:n==="local-only"?`${String(e("pending"))} ${W.NOT_SENT}`:void 0;if(o===void 0)return"";let s=r!==void 0?r:n==="local-only"?W.NOT_SENT_HELP:typeof t.said=="string"?t.said:"",a=t.runUrl,l=typeof a=="string"&&Qn(a)?` <a class="reticle-sync-run" data-reticle-link="run" href="${ne(a)}" target="_blank" rel="noreferrer noopener">${W.SEE_RUN}</a>`:"";return`<span class="reticle-sync-status" data-reticle-sync-status="${ne(String(n))}" title="${ne(s)}">${o}</span>${l}`}function N4(t){var s,a;if(t===void 0)return"";let e=vC.filter(l=>typeof t[l.key]=="number");if(e.length===0)return"";let n=l=>{var d;return`${String(Math.round((d=t[l])!=null?d:0))}%`},r=typeof t.proved=="number"?n("proved"):n((a=(s=e[0])==null?void 0:s.key)!=null?a:""),o=e.map(l=>`<span class="reticle-report-coverage-level">${n(l.key)} ${l.label}</span>`).join("");return`<div class="reticle-report-coverage" title="${W.COVERAGE_HELP}"><span class="reticle-report-section">${W.COVERAGE}</span><span class="reticle-report-coverage-value">${r}</span><div class="reticle-report-coverage-levels">${o}</div></div>`}function w4(t,e,n,r,o,s){let a=t.counts;if(a.calls===0)return`<p class="reticle-report-empty">${W.EMPTY}</p>`;let l=t.records.streakDays>0?`<span class="reticle-report-streak" title="Consecutive days with at least one verdict">\u{1F525} ${String(t.records.streakDays)} <span class="reticle-report-streak-label">${W.STREAK}</span></span>`:"",d=`<div class="reticle-report-hero"><span class="reticle-report-hero-value">${no(a.failed)}</span><span class="reticle-report-hero-label">${W.heroDefects(a.failed)}</span></div>`,u=`<div class="reticle-report-verdicts" title="${W.UNKNOWN_HELP}">
1625
+ <span class="reticle-report-verdict" data-kind="pass">${no(a.passed)} ${W.PASSED}</span>
1626
+ <span class="reticle-report-verdict" data-kind="fail">${no(a.failed)} ${W.FAILED}</span>
1627
+ <span class="reticle-report-verdict" data-kind="unknown">${no(a.unknown)} ${W.UNKNOWN}</span>
1628
+ </div>`,p=[Yi(no(a.verdicts),W.VERDICTS),Yi(no(a.calls),W.CALLS),Yi(zu(a.drivingMs),W.DRIVING),Yi(no(a.sessions),W.SESSIONS),Yi(zu(t.records.longestRunMs),W.LONGEST),Yi(no(a.tokensReturned),W.TOKENS),Yi(no(t.savings.tokens.value),W.SAVED_TOKENS,t.savings.tokens.basis),Yi(zu(t.savings.minutes.value*6e4),W.SAVED_MINUTES,t.savings.minutes.basis)].join(""),h=`<div class="reticle-report-identity">${Jc(n,{dashboardUrl:e,projectName:r,verdicts:a.verdicts,defects:a.failed})}${TT(e)}${R4(s)}</div>`;return`<div class="reticle-report-top">${l}${h}</div>${d}${u}${N4(o)}<div class="reticle-report-grid">${p}</div>${v4(t,e)}${y4(t)}${O4(t,e,n)}`}function O4(t,e,n){if(e!==void 0||t.counts.verdicts<=0||n===void 0)return"";let[r,o,s]=n.signedIn?[W.UNLINKED,W.UNLINKED_ACTION,W.UNLINKED_TAIL]:[W.LOCAL_ONLY,W.LOCAL_ONLY_ACTION,W.LOCAL_ONLY_TAIL];return`<p class="reticle-report-local-only">${r} <code>${o}</code> ${s}</p>`}var Dm,mS,ML,PL,$L,HL,A4,I4,DL,Ea,Al,Xi,or,qi,yl,Gt,FL,km,gS,op,Mm,GL=S(()=>{"use strict";D();Tr();Ar();ra();eo();Et();gm();Dm="data-reticle-report-scope",mS={PROJECT:"project",MACHINE:"machine"},ML="data-reticle-share-x",PL="data-reticle-share-in",$L="data-reticle-share-copy",HL="data-reticle-refer",A4=1600;I4=1200,DL="data-syncing",Mm=class{constructor(e={}){b(this,Gt);b(this,Ea);b(this,Al);b(this,Xi);b(this,or);b(this,qi,!1);b(this,yl);f(this,yl,e)}mount(e){var r,o,s,a,l,d,u;f(this,Xi,e),f(this,Ea,(r=e.querySelector(`[${$}]`))!=null?r:void 0),f(this,Al,(o=e.querySelector("[data-reticle-report-body]"))!=null?o:void 0),(s=e.querySelector(`[${iT}]`))==null||s.addEventListener("click",p=>{p.stopPropagation(),this.close()});let n=e.querySelectorAll(`[${Dm}]`);for(let p of n)p.addEventListener("click",h=>{h.stopPropagation(),f(this,qi,mS.MACHINE===p.getAttribute(Dm));for(let m of n)m.setAttribute("aria-pressed",m===p?"true":"false");E(this,Gt,km).call(this)});(a=e.querySelector(`[${ML}]`))==null||a.addEventListener("click",p=>{p.stopPropagation(),E(this,Gt,gS).call(this,xC(this.shareText()))}),(l=e.querySelector(`[${PL}]`))==null||l.addEventListener("click",p=>{p.stopPropagation(),E(this,Gt,op).call(this,this.shareText()),E(this,Gt,gS).call(this,AC())}),(d=e.querySelector(`[${$L}]`))==null||d.addEventListener("click",p=>{p.stopPropagation(),E(this,Gt,op).call(this,this.shareText(),p.currentTarget)}),(u=e.querySelector(`[${HL}]`))==null||u.addEventListener("click",p=>{p.stopPropagation(),E(this,Gt,op).call(this,qT(),p.currentTarget)}),e.addEventListener("click",p=>{var T,_;let h=p.target;if(!(h instanceof Element))return;let m=h.closest(`[${Ut}]`);if(m!==null){p.stopPropagation(),E(this,Gt,op).call(this,ie.SIGNIN_COMMAND,m);return}let g=h.closest(`[${bT}]`);g!==null&&(p.stopPropagation(),(_=(T=c(this,yl)).onSyncNow)==null||_.call(T),g.setAttribute(DL,"1"),setTimeout(()=>g.removeAttribute(DL),I4))})}setSnapshot(e){f(this,or,e),this.isOpen()&&E(this,Gt,km).call(this)}snapshot(){return c(this,or)}isOpen(){var e;return((e=c(this,Xi))==null?void 0:e.getAttribute(gn))==="1"}open(){var e,n,r;c(this,Xi)!==void 0&&((n=(e=c(this,yl)).onBeforeOpen)==null||n.call(e),E(this,Gt,km).call(this),c(this,Xi).setAttribute(gn,"1"),(r=c(this,Ea))==null||r.setAttribute("aria-hidden","false"))}close(){var e,n;(e=c(this,Xi))==null||e.setAttribute(gn,"0"),(n=c(this,Ea))==null||n.setAttribute("aria-hidden","true")}toggle(){this.isOpen()?this.close():this.open()}contains(e){var n;return((n=c(this,Ea))==null?void 0:n.contains(e))===!0}shareText(){let e=c(this,or);return e===void 0?qT():c(this,qi)?XT(e.global):XT(e.project,e.projectName)}};Ea=new WeakMap,Al=new WeakMap,Xi=new WeakMap,or=new WeakMap,qi=new WeakMap,yl=new WeakMap,Gt=new WeakSet,FL=function(){let e=c(this,or);if(e!==void 0)return c(this,qi)?e.global:e.project},km=function(){var n,r,o,s,a;let e=E(this,Gt,FL).call(this);c(this,Al)!==void 0&&(c(this,Al).innerHTML=e===void 0?`<p class="reticle-report-empty">${W.EMPTY}</p>`:w4(e,(n=c(this,or))==null?void 0:n.dashboardUrl,(r=c(this,or))==null?void 0:r.account,(o=c(this,or))==null?void 0:o.projectName,c(this,qi)||(s=c(this,or))==null?void 0:s.coverage,c(this,qi)||(a=c(this,or))==null?void 0:a.sync))},gS=function(e){window.open(e,"_blank","noopener,noreferrer")},op=async function(e,n){var r,o;try{await((r=navigator.clipboard)==null?void 0:r.writeText(e))}catch{}if(n instanceof HTMLElement){let s=(o=n.textContent)!=null?o:"";n.textContent=W.COPIED,window.setTimeout(()=>{n.textContent=s},A4)}}});function M4(t){let e=t.kicker===void 0?"":`<span class="reticle-promo-kicker">${ne(t.kicker)}</span>`,n=t.detail===void 0?"":`<span class="reticle-promo-detail" title="${ne(t.detail)}">${ne(t.detail)}</span>`,r=t.cta===void 0?"":`<a data-reticle-promo-link class="reticle-promo-link" href="${ne(t.cta.url)}" target="_blank" rel="noopener noreferrer">${ne(t.cta.label)} \u2192</a>`;return{id:`${D4}${t.id}`,html:`<div class="reticle-promo-copy">${e}<strong class="reticle-promo-title">${ne(t.title)}</strong>${n}${r}</div>`}}function VL(t=[],e=Up){let n=t.flatMap(r=>{let o=fT.safeParse(r);return o.success&&!o.data.id.startsWith(k4)?[o.data]:[]});return 0<n.length?n.map(M4):[...L4(e)]}var C4,BL,ip,L4,k4,D4,jL=S(()=>{"use strict";Zc();ra();D();C4="/settings?group=billing",BL={REPLAY:"replay-confidence",NOTES:"notes-for-agent"},ip={REPLAY_TITLE:"Replay what your agent verified",REPLAY_DETAIL:"Saved flows re-run after each edit.",REPLAY_LINK:"See how \u2192",NOTES_TITLE:"Point your agent at anything",NOTES_DETAIL:"Open Notes, then click an element."},L4=t=>[{id:BL.REPLAY,html:`<div class="reticle-promo-copy"><strong class="reticle-promo-title">${ip.REPLAY_TITLE}</strong><span class="reticle-promo-detail">${ip.REPLAY_DETAIL}</span><a data-reticle-promo-link class="reticle-promo-link" href="${t}${C4}" target="_blank" rel="noopener noreferrer">${ip.REPLAY_LINK}</a></div>`},{id:BL.NOTES,html:`<div class="reticle-promo-copy"><strong class="reticle-promo-title">${ip.NOTES_TITLE}</strong><span class="reticle-promo-detail">${ip.NOTES_DETAIL}</span></div>`}],k4="harness",D4="notice-"});var P4,KL,ES,$4,WL,zL=S(()=>{"use strict";P4="Reticle",KL='<path d="M92.82 92.16C93.07 93.4 91.77 94.4 90.63 93.83C89.62 93.33 88.62 92.82 87.63 92.3C71.14 83.78 54.79 72.27 39.61 57.96C39.09 57.49 38.57 56.98 38.06 56.49C22.45 41.52 9.78 25.14 .33 8.52C0.29 8.45 .25 8.38 .2 8.31C-0.44 7.2 .51 5.84 1.79 6.05L24.07 9.71C43.06 12.83 60.63 11.75 75.55 6.53L93.95 .09C95.15-0.33 96.31 .78 95.93 1.98L90.1 20.49C85.37 35.48 84.9 52.97 88.69 71.73L92.83 92.16H92.82Z"/><path d="M58.72 89.23L6.15 92.8C5.24 92.86 4.48 92.13 4.51 91.22L6.56 30.39C6.61 28.91 8.51 28.36 9.35 29.57C16.23 39.43 24.98 52.35 33.01 61.26C41.05 70.17 50.6 78.72 59.62 86.56C60.65 87.45 60.08 89.13 58.72 89.23Z"/>',ES=`<svg class="reticle-mark" viewBox="0 0 96 94" fill="currentColor" aria-hidden="true">${KL}</svg>`,$4=`<svg class="reticle-fab-mark" viewBox="0 0 96 94" fill="currentColor" aria-hidden="true">${KL}</svg>`,WL=`<button type="button" class="reticle-fab" data-reticle-fab aria-label="Start ${P4}" aria-expanded="false">${$4}<span class="reticle-fab-pulse" aria-hidden="true"></span><span data-reticle-mark-count class="reticle-fab-badge" hidden>0</span></button>`});function SS(t,e=[],n){let r=t.querySelector(`[${hS}]`);if(r===null)return;let o;try{o=window.sessionStorage}catch{o=void 0}AL(r,VL(e,n),o)}function JL(){try{return globalThis.sessionStorage.getItem(Vh)==="1"}catch{return!1}}function ZL(t){try{t?globalThis.sessionStorage.setItem(Vh,"1"):globalThis.sessionStorage.removeItem(Vh)}catch{}}function F4(){try{return globalThis.localStorage.getItem(jh)==="1"}catch{return!1}}function vl(t){try{t?globalThis.localStorage.setItem(jh,"1"):globalThis.localStorage.removeItem(jh)}catch{}}function AS(){return F4()&&!JL()}function e1(t){return t&&!JL()}var YL,H4,XL,qL,bS,U4,TS,xe,Bt,ir,ba,Rl,wt,nt,Nl,wl,Ta,Sa,lo,Zi,_a,xa,uo,wr,Aa,Ol,ap,Jo,Il,bn,Pm,_S,xS,QL,$m,Hm,sp,yS=S(()=>{"use strict";Ye();GL();$T();eo();tl();Et();Im();jL();Lm();zL();Ko();uT();Mu();Tr();Ar();xm();tl();YL="reticle-toolbar-drag",H4=120,XL="Minimise chat",qL="Open agent chat",bS="Settings",U4="Reticle",TS="Exit";sp=class{constructor(e={}){b(this,bn);b(this,xe);b(this,Bt);b(this,ir);b(this,ba);b(this,Rl);b(this,wt);b(this,nt);b(this,Nl);b(this,wl);b(this,Ta,!1);b(this,Sa,!1);b(this,lo);b(this,Zi,!1);b(this,_a);b(this,xa);b(this,uo,new Mm({onBeforeOpen:()=>{c(this,wt).close(),this.closeChat()},onSyncNow:()=>{var e,n;return(n=(e=c(this,wr)).onSyncNow)==null?void 0:n.call(e)}}));b(this,wr);b(this,Aa);b(this,Ol,[]);b(this,ap);b(this,Jo);b(this,Il);b(this,$m,e=>{if(c(this,xe)===void 0||c(this,Bt)===void 0||!c(this,wt).isOpen())return;let n=e.target;n instanceof Node&&(c(this,Bt).contains(n)||c(this,wt).contains(n)||c(this,wt).close())});b(this,Hm,e=>{if(e.key!=="Escape"||c(this,xe)===void 0||e.defaultPrevented||hf(document))return;let n=e.target;if(!(n instanceof HTMLElement&&(n.tagName==="INPUT"||n.tagName==="TEXTAREA"||n.isContentEditable===!0))){if(this.isChatOpen()){vl(!1),this.closeChat();return}if(c(this,wt).isOpen()){c(this,wt).close();return}this.isCollapsed()||(vl(!1),this.collapse())}});f(this,wr,e),f(this,nt,new _m(()=>{c(this,nt).closePage(),this.closeChat(),c(this,uo).open()},n=>{if(n==="activity"){c(this,nt).open(n),this.showChat();return}this.isCollapsed()&&this.expand(),this.closeChat(),c(this,wt).close(),c(this,uo).close()},{run:n=>{var r;return(r=e.onHarnessRun)==null?void 0:r.call(e,n)},stop:()=>{var n;return(n=e.onHarnessStop)==null?void 0:n.call(e)},setHarness:n=>{var r;return(r=e.onHarness)==null?void 0:r.call(e,n)},link:()=>{var n;return(n=e.onHarnessLink)==null?void 0:n.call(e)}})),f(this,wt,new Gu({...e.settings,onBeforeOpen:()=>{var n,r;this.closeChat(),c(this,nt).closePage(),c(this,uo).close(),(r=(n=e.settings)==null?void 0:n.onBeforeOpen)==null||r.call(n)}}))}setProjectId(e){c(this,nt).setProjectId(e)}paintHarnessDrive(e,n){c(this,nt).paintDrive(e,n)}paintAgent(e){c(this,nt).paintAgent(e)}paintHarness(e){f(this,ap,e),c(this,wt).paintHarness(e),c(this,nt).paintHarness(e),E(this,bn,_S).call(this)}paintImpact(e){c(this,nt).paintImpact(e)}paintAnnotations(e){c(this,nt).paintAnnotations(e)}openView(e){e==="activity"?this.showChat():(this.isCollapsed()&&this.expand(),this.closeChat(),c(this,wt).close(),c(this,uo).close()),c(this,nt).open(e)}paintAccount(e,n,r={}){f(this,Aa,{account:e,dashboardUrl:n,details:r}),c(this,xe)!==void 0&&(nC(c(this,xe),e,n,r),OT(c(this,xe),e,n,r),wL(c(this,xe),e),c(this,nt).paintAccount(e),E(this,bn,_S).call(this))}paintNotices(e=[]){f(this,Ol,e),f(this,Jo,E(this,bn,Pm).call(this)),c(this,xe)!==void 0&&SS(c(this,xe),e,c(this,Jo))}static dockHtml(e,n,r,o,s){let a=Rh(Q.GEAR,he.TOOLBAR),l=Ee(Q.REMOVE,he.TOOLBAR);return`<div ${M} role="complementary" aria-label="Reticle">
1629
+ <div ${nn} class="reticle-chat-panel ${Cn}" role="region" aria-label="Agent Log" aria-hidden="true">
1640
1630
  <div class="reticle-chat-head">
1641
- <span class="reticle-chat-brand">${ET}<span class="reticle-chat-brandname">${WF}</span></span>
1642
- <span ${kc} class="reticle-head-team"></span>
1643
- <span ${Db} class="reticle-head-account"></span>
1631
+ <span class="reticle-chat-brand">${ES}<span class="reticle-chat-brandname">${U4}</span></span>
1632
+ <span ${Qc} class="reticle-head-team"></span>
1633
+ <span ${MT} class="reticle-head-account"></span>
1644
1634
  </div>
1645
- <button type="button" ${rb} class="reticle-chat-min" title="${wI}" aria-label="${wI}">${Ee(Y.CARET_DOWN,pe.TOOLBAR)}</button>
1635
+ <button type="button" ${oT} class="reticle-chat-min" title="${XL}" aria-label="${XL}">${Ee(Q.CARET_DOWN,he.TOOLBAR)}</button>
1646
1636
  ${e}
1647
1637
  <span class="reticle-tally" data-reticle-tally hidden></span>
1648
1638
  <section class="reticle-chat-view" role="region" aria-label="Agent Log">
1649
1639
  ${n}
1650
- <div class="${oh}"><div ${r}></div></div>
1640
+ <div class="${qh}"><div ${r}></div></div>
1651
1641
  ${o}
1652
1642
  </section>
1653
- ${a}
1643
+ ${RL}
1644
+ ${s}
1654
1645
  </div>
1655
- ${gO}
1656
- ${bO}
1657
- ${TO}
1658
- <button type="button" ${gt} class="reticle-chat-pill" title="${OI}" aria-label="${OI}">
1659
- ${ET}
1646
+ ${HC}
1647
+ ${FC}
1648
+ ${GC}
1649
+ <button type="button" ${yt} class="reticle-chat-pill" title="${qL}" aria-label="${qL}">
1650
+ ${ES}
1660
1651
  <span class="reticle-chat-pill-text" data-reticle-chat-pill-text></span>
1661
1652
  <span class="reticle-chat-pill-time" data-reticle-chat-pill-time></span>
1662
- <span class="reticle-chat-pill-caret" aria-hidden="true">${Ee(Y.CARET_DOWN,pe.TOOLBAR)}</span>
1653
+ <span class="reticle-chat-pill-caret" aria-hidden="true">${Ee(Q.CARET_DOWN,he.TOOLBAR)}</span>
1663
1654
  </button>
1664
- ${Ib()}
1665
- ${EI()}
1666
- ${iI}
1655
+ ${CT()}
1656
+ ${UL()}
1657
+ ${NL}
1667
1658
  <div data-reticle-hud>
1668
1659
  <div class="reticle-hud-deco" aria-hidden="true"></div>
1669
- ${vI}
1670
- <div class="reticle-toolbar ${NI}" role="toolbar" aria-label="Reticle controls">
1660
+ ${WL}
1661
+ <div class="reticle-toolbar ${YL}" role="toolbar" aria-label="Reticle controls">
1671
1662
  <div class="reticle-toolbar-chrome">
1672
- ${EO}
1663
+ ${UC}
1673
1664
  <div class="reticle-tb-wrap">
1674
- <button type="button" ${eu} class="reticle-tb-btn reticle-tb-btn--toggle" title="${bT}" aria-label="${bT}" aria-pressed="false" data-active="0">${s}${Ba(wi.SETTINGS)}</button>
1675
- <span class="reticle-tb-tip">${bT}</span>
1665
+ <button type="button" ${Ou} class="reticle-tb-btn reticle-tb-btn--toggle" title="${bS}" aria-label="${bS}" aria-pressed="false" data-active="0">${a}${ca(Ki.SETTINGS)}</button>
1666
+ <span class="reticle-tb-tip">${bS}</span>
1676
1667
  </div>
1677
1668
  <div class="reticle-tb-wrap">
1678
- <button type="button" data-reticle-min-btn class="reticle-tb-btn" title="${TT}" aria-label="${TT}">${l}${Ba(wi.HIDE)}</button>
1679
- <span class="reticle-tb-tip">${TT}<span class="reticle-tb-kbd">Esc</span></span>
1669
+ <button type="button" data-reticle-min-btn class="reticle-tb-btn" title="${TS}" aria-label="${TS}">${l}${ca(Ki.HIDE)}</button>
1670
+ <span class="reticle-tb-tip">${TS}<span class="reticle-tb-kbd">Esc</span></span>
1680
1671
  </div>
1681
1672
  </div>
1682
1673
  </div>
1683
1674
  </div>
1684
- </div>`}get report(){return c(this,Zr)}isAnnotateOn(){return c(this,ki)}setAnnotateOn(e){var r,o,a,s,l,d,u;h(this,ki,e),(r=c(this,qr))==null||r.setAttribute("aria-pressed",e?"true":"false"),(o=c(this,qr))==null||o.setAttribute("data-active",e?"1":"0"),(a=c(this,qr))==null||a.setAttribute("aria-label",e?"Stop adding notes":"Add notes"),(s=c(this,qr))==null||s.setAttribute("title",e?"Stop adding notes":"Add notes");let n=(l=c(this,qr))==null?void 0:l.querySelector("[data-reticle-notes-toggle-label]");n!=null&&(n.textContent=e?"Stop adding notes":"Add notes"),(u=(d=c(this,Se))==null?void 0:d.querySelector('[data-reticle-chat-view-btn="annotations"]'))==null||u.setAttribute("data-capture",e?"1":"0")}mount(e){var f,m,g,T;h(this,ts,new AbortController);let{signal:n}=c(this,ts);h(this,Se,e),h(this,It,(f=e.querySelector(`[${D}]`))!=null?f:void 0);let r=e.querySelector(`[${Nw}]`);h(this,Yn,r instanceof HTMLButtonElement?r:void 0);let o=e.querySelector(`[${zt}]`);h(this,Za,o instanceof HTMLElement?o:void 0);let a=e.querySelector(`[${Zf}]`);h(this,qr,a instanceof HTMLButtonElement?a:void 0),this.setAnnotateOn(c(this,ki)),(m=c(this,qr))==null||m.addEventListener("click",_=>{var y,A;_.preventDefault(),_.stopPropagation(),this.setAnnotateOn(!c(this,ki)),(A=(y=c(this,Tr)).onAnnotateToggle)==null||A.call(y,c(this,ki))},{signal:n});let s=e.querySelector(`[${gt}]`);s==null||s.addEventListener("click",_=>{_.preventDefault(),_.stopPropagation(),this.showChat()},{signal:n});let l=e.querySelector(`[${rb}]`);l==null||l.addEventListener("click",_=>{_.preventDefault(),_.stopPropagation(),this.closeChat()},{signal:n});let d=e.querySelector("[data-reticle-min-btn]");h(this,sl,d instanceof HTMLButtonElement?d:void 0),e.setAttribute(ke,"1"),e.setAttribute(Ye,"0"),e.removeAttribute(ot),c(this,_t).mount(e),c(this,Zr).mount(e),c(this,Qe).mount(e),h(this,Uo,E(this,hn,Wh).call(this)),ST(e,c(this,dl),c(this,Uo)),h(this,es,new MutationObserver(()=>E(this,hn,xT).call(this))),c(this,es).observe(e,{attributes:!0,attributeFilter:[ot,Ye,un]}),E(this,hn,xT).call(this),(g=c(this,Yn))==null||g.addEventListener("click",_=>{if(_.stopPropagation(),c(this,Ja)){h(this,Ja,!1);return}this.expand()},{signal:n}),(T=c(this,sl))==null||T.addEventListener("click",_=>{_.stopPropagation(),this.collapse()},{signal:n});let u=e.querySelector(`.${NI}`),p=[c(this,Yn),u].filter(_=>_ instanceof HTMLElement);if(c(this,It)!==void 0&&p.length>0&&(h(this,cl,Xw(c(this,It),p,{onDragMove:()=>{h(this,Ja,!0)},onDragEnd:_=>{h(this,Ja,_&&this.isCollapsed())}})),h(this,ll,Yw(c(this,It),e))),document.addEventListener("pointerdown",c(this,zh),{signal:n}),document.addEventListener("keydown",c(this,Yh),{signal:n}),h(this,ul,u0(e,()=>{var _,y;return(y=(_=c(this,Tr)).onSignIn)==null?void 0:y.call(_)})),c(this,ns)!==void 0){let _=c(this,ns);this.paintAccount(_.account,_.dashboardUrl,_.details)}}teardown(){var e,n,r,o,a;(e=c(this,ul))==null||e.call(this),h(this,ul,void 0),(n=c(this,ts))==null||n.abort(),h(this,ts,void 0),(r=c(this,es))==null||r.disconnect(),h(this,es,void 0),(o=c(this,cl))==null||o.call(this),h(this,cl,void 0),(a=c(this,ll))==null||a.call(this),h(this,ll,void 0),c(this,_t).teardown(),c(this,Qe).teardown(),h(this,Se,void 0),h(this,It,void 0),h(this,Yn,void 0),h(this,Za,void 0),h(this,sl,void 0)}isCollapsed(){var e;return((e=c(this,Se))==null?void 0:e.getAttribute(ke))==="1"}isChatOpen(){var e;return((e=c(this,Se))==null?void 0:e.getAttribute(ot))==="1"}expand(){var e,n;c(this,Se)===void 0||!this.isCollapsed()||c(this,Qa)||(E(this,hn,CI).call(this),c(this,Se).setAttribute(ke,"0"),II(!1),c(this,Yn)!==void 0&&c(this,Yn).setAttribute("aria-expanded","true"),(n=(e=c(this,Tr)).onExpand)==null||n.call(e),this.openChat(),c(this,It)!==void 0&&gr(c(this,It),c(this,Se)))}collapse(){var e,n;c(this,Se)!==void 0&&(h(this,Qa,!1),this.closeChat(),c(this,_t).close(),c(this,Se).setAttribute(ke,"1"),II(!0),c(this,Yn)!==void 0&&c(this,Yn).setAttribute("aria-expanded","false"),(n=(e=c(this,Tr)).onCollapse)==null||n.call(e))}openChat(){var n,r,o;if(c(this,Se)===void 0||(this.isCollapsed()&&this.expand(),c(this,_t).close(),c(this,Qe).closePage(),c(this,Qe).open("activity"),this.isChatOpen()))return;c(this,Se).setAttribute(ot,"1");let e=c(this,Se).querySelector("[data-reticle-log]");e!==null&&mw(e),(n=c(this,Za))==null||n.setAttribute("aria-hidden","false"),(o=(r=c(this,Tr)).onChatOpen)==null||o.call(r),c(this,It)!==void 0&&gr(c(this,It),c(this,Se))}closeChat(){var e,n,r;c(this,Se)===void 0||!this.isChatOpen()||(c(this,Se).removeAttribute(ot),(e=c(this,Za))==null||e.setAttribute("aria-hidden","true"),(r=(n=c(this,Tr)).onChatClose)==null||r.call(n),c(this,It)!==void 0&&gr(c(this,It),c(this,Se)))}toggleChat(){this.isChatOpen()?this.closeChat():this.showChat()}showChat(){c(this,Zr).close(),this.openChat()}pulseFab(e){var n;(n=c(this,Yn))==null||n.setAttribute("data-pulse",e?"1":"0")}};Se=new WeakMap,It=new WeakMap,Yn=new WeakMap,Za=new WeakMap,sl=new WeakMap,_t=new WeakMap,Qe=new WeakMap,cl=new WeakMap,ll=new WeakMap,Qa=new WeakMap,Ja=new WeakMap,qr=new WeakMap,ki=new WeakMap,es=new WeakMap,ts=new WeakMap,Zr=new WeakMap,Tr=new WeakMap,ns=new WeakMap,dl=new WeakMap,Iu=new WeakMap,Uo=new WeakMap,ul=new WeakMap,hn=new WeakSet,Wh=function(){var e,n;return iT(c(this,Iu),(n=(e=c(this,ns))==null?void 0:e.account)!=null?n:{signedIn:!1})},_T=function(){let e=E(this,hn,Wh).call(this);c(this,Se)===void 0||e===c(this,Uo)||(h(this,Uo,e),ST(c(this,Se),c(this,dl),e))},xT=function(){let e=c(this,Se);if(e===void 0)return;let n=(o,a)=>{let s=e.querySelector(`[${o}]`);s==null||s.setAttribute("data-active",a?"1":"0"),s==null||s.setAttribute("aria-pressed",a?"true":"false")};n(Wf,e.getAttribute(ot)==="1"),n(eu,e.getAttribute(Ye)==="1");let r=e.querySelector("[data-reticle-chat-impact]");if(r!==null){let o=e.getAttribute(un)==="1";r.setAttribute("data-active",o?"1":"0"),c(this,Qe).setImpactOpen(o),o?r.setAttribute("aria-current","page"):r.removeAttribute("aria-current")}},CI=function(){h(this,Qa,!0),window.setTimeout(()=>{h(this,Qa,!1)},KF)},zh=new WeakMap,Yh=new WeakMap});function LI(t){var r,o;let e=(r=t.startMs)!=null?r:t.now,n={reads:0,acts:0,narrations:0,human:0,passes:0,fails:0};for(let a of t.runLog)a.kind===Fe.READ?n.reads+=1:a.kind===Fe.ACT?n.acts+=1:a.kind===Fe.NARRATION?n.narrations+=1:a.kind===Fe.HUMAN&&(n.human+=1),a.result===Tn.PASS?n.passes+=1:a.result===Tn.FAIL&&(n.fails+=1);return{session:t.sessionId,url:typeof location=="undefined"?"":location.href,state:t.state,startedMs:e,durationMs:Math.max(0,((o=t.endMs)!=null?o:t.now)-e),counts:n,capabilities:si(),log:t.runLog.map(a=>({...a}))}}var kI=S(()=>{"use strict";wo();ci()});function DI(t,e,n){t!==void 0&&(t.setAttribute("data-on","1"),t.style.transform=`translate(${String(e)}px, ${String(n)}px)`)}function MI(t,e){t!==void 0&&(t.style.left=`${String(e.left-4)}px`,t.style.top=`${String(e.top-4)}px`,t.style.width=`${String(e.width+8)}px`,t.style.height=`${String(e.height+8)}px`,t.setAttribute("data-on","1"),ee(()=>t.setAttribute("data-on","0"),700))}function $I(t,e,n){if(t===void 0)return;let r=document.createElement("div");r.setAttribute("data-reticle-ripple",""),r.style.left=`${String(e)}px`,r.style.top=`${String(n)}px`,t.appendChild(r),ee(()=>r.remove(),520)}function vT(t){return new Promise(e=>ee(e,t))}var PI=S(()=>{"use strict";lt()});var Sr,rs,_r,xr,Di,pl,fl,os,Cu,hl,Lu,Xn,HI,RT,NT,UI,Xh,FI=S(()=>{"use strict";H();lt();ut();Xh=class{constructor(e){b(this,Xn);b(this,Sr,pr.IDLE);b(this,rs,0);b(this,_r);b(this,xr);b(this,Di);b(this,pl);b(this,fl);b(this,os);b(this,Cu);b(this,hl);b(this,Lu);h(this,fl,e.now),h(this,os,e.idleAfterMs),h(this,Cu,e.glowFadeMs),h(this,hl,e.borderMode),h(this,Lu,e.setMode)}setElements(e,n){h(this,Di,e),h(this,pl,n)}phase(){return c(this,Sr)}lastActivityMs(){return c(this,rs)}resetActivity(e){h(this,rs,e)}markActivity(e=c(this,fl).call(this)){h(this,rs,e),(c(this,Sr)===pr.IDLE||c(this,Sr)===pr.FADING)&&E(this,Xn,HI).call(this),E(this,Xn,RT).call(this)}scheduleIdle(){E(this,Xn,RT).call(this)}teardown(){c(this,_r)!==void 0&&Te(c(this,_r)),c(this,xr)!==void 0&&Te(c(this,xr)),h(this,_r,void 0),h(this,xr,void 0)}};Sr=new WeakMap,rs=new WeakMap,_r=new WeakMap,xr=new WeakMap,Di=new WeakMap,pl=new WeakMap,fl=new WeakMap,os=new WeakMap,Cu=new WeakMap,hl=new WeakMap,Lu=new WeakMap,Xn=new WeakSet,HI=function(){var e,n,r;c(this,xr)!==void 0&&(Te(c(this,xr)),h(this,xr,void 0)),h(this,Sr,pr.BUSY),c(this,hl)===Ma.SESSION?(e=c(this,Di))==null||e.setAttribute(Jd,Tw):(n=c(this,Di))==null||n.setAttribute(Wt,Oo),(r=c(this,pl))==null||r.setAttribute(Wt,Oo)},RT=function(){c(this,_r)!==void 0&&Te(c(this,_r)),h(this,_r,ee(()=>E(this,Xn,NT).call(this),c(this,os)))},NT=function(){if(h(this,_r,void 0),c(this,Sr)!==pr.BUSY)return;let e=c(this,fl).call(this)-c(this,rs);if(e<c(this,os)){h(this,_r,ee(()=>E(this,Xn,NT).call(this),c(this,os)-e));return}E(this,Xn,UI).call(this)},UI=function(){var e,n,r;h(this,Sr,pr.FADING),c(this,hl)===Ma.SESSION?(e=c(this,Di))==null||e.setAttribute(Jd,jf):(n=c(this,Di))==null||n.setAttribute(Wt,Si),(r=c(this,pl))==null||r.setAttribute(Wt,Si),c(this,Lu).call(this,je.IDLE),h(this,xr,ee(()=>{h(this,xr,void 0),c(this,Sr)===pr.FADING&&h(this,Sr,pr.IDLE)},c(this,Cu)))}});function GI(t,e,n){let r=YF(e);if(t===void 0)return r;if(r.passes===0&&r.fails===0)return t.setAttribute("hidden",""),t.replaceChildren(),r;let o=t.ownerDocument;t.removeAttribute("hidden"),t.className="reticle-tally reticle-pill-group reticle-head-ctl",t.replaceChildren();let a=o.createElement("span");if(a.className="reticle-t-pass reticle-pill-segment",r.passes===0&&a.setAttribute("data-z","1"),r.passes>n.passes&&a.setAttribute("data-bump","1"),a.append(Fr(Y.CHECK,pe.TALLY)),r.passes>0){let d=o.createElement("span");d.className="reticle-pill-count",d.textContent=String(r.passes),a.append(d)}let s=o.createElement("span");s.className="reticle-pill-sep",s.setAttribute("aria-hidden","true");let l=o.createElement("span");if(l.className="reticle-t-fail reticle-pill-segment",r.fails===0&&l.setAttribute("data-z","1"),r.fails>n.fails&&l.setAttribute("data-bump","1"),l.append(Fr(Y.REMOVE,pe.TALLY)),r.fails>0){let d=o.createElement("span");d.className="reticle-pill-count",d.textContent=String(r.fails),l.append(d)}return t.append(a,s,l),r}function YF(t){let e=0,n=0;for(let r of t)r.result===Tn.PASS?e+=1:r.result===Tn.FAIL&&(n+=1);return{passes:e,fails:n}}var BI=S(()=>{"use strict";wo();ur()});function KI(t){for(let e of Array.from(t.attributes)){if(!e.name.startsWith(VI))continue;let n=e.name.slice(VI.length),r=qw.includes(n)?`${n}.${e.value}`:n;if(Zw(r))return r}}function qF(t){for(let e of t)if(e instanceof Element&&KI(e)!==void 0)return e}function wT(t){let e=ZF(t);return en.BUBBLE===e.view||t.querySelector(`[${yi}]:not([hidden])`)===null?e:{view:e.view,panel:vt.ACCOUNT}}function ZF(t){if(t.getAttribute(ke)==="1")return{view:en.BUBBLE,panel:vt.NONE};if(t.getAttribute(Ye)==="1")return{view:en.EXPANDED,panel:vt.SETTINGS};if(t.getAttribute(un)==="1")return{view:en.EXPANDED,panel:vt.REPORT};let e=t.getAttribute(jI);return e==="flows"?{view:en.EXPANDED,panel:vt.FLOWS}:e==="annotations"?{view:en.EXPANDED,panel:vt.NOTES}:e==="harness"?{view:en.EXPANDED,panel:vt.HARNESS}:t.getAttribute(ot)==="1"?{view:en.EXPANDED,panel:vt.CHAT}:{view:en.COLLAPSED,panel:vt.NONE}}function WI(t,e,n){let r=g=>{try{n(g)}catch{}},o=g=>{var y;let T=qF(g.composedPath());if(T===void 0||!Gs(T))return;let _=KI(T);if(_!==void 0){if(!XF.has((y=T.getAttribute("role"))!=null?y:"")){r({control:_});return}ee(()=>{let A=T.getAttribute("aria-checked")==="true";r({control:_,toggle:A?zl.ON:zl.OFF})},0)}},a="",s=()=>{let g=wT(e),T=`${g.view}/${g.panel}`;T!==a&&(a=T,r(g))},l="",d=()=>{var _;if(vt.CHAT!==wT(e).panel)return;let g=e.querySelector(`[${Nu}]:not([hidden])`),T=(_=g==null?void 0:g.getAttribute(Nu))!=null?_:"";T.length===0||T===l||(l=T,r({slide:T}))},u=new Set,p=()=>{let g=wT(e);for(let T of QF){if(u.has(T.surface)||!T.shown(g))continue;let _=e.querySelector(T.selector);_===null||!JF(_)||(u.add(T.surface),r({prompt:T.surface}))}},f=new MutationObserver(()=>{d(),s(),p()});f.observe(e,{subtree:!0,childList:!0,attributes:!0,attributeFilter:["data-active","hidden"]}),t.addEventListener("click",o,!0);let m=new MutationObserver(g=>{s(),0<g.length&&d(),p()});return m.observe(e,{attributes:!0,attributeFilter:[ke,ot,Ye,un,jI]}),s(),p(),()=>{t.removeEventListener("click",o,!0),m.disconnect(),f.disconnect()}}var VI,jI,XF,QF,JF,zI=S(()=>{"use strict";Lc();H();at();lt();ut();Hh();Br();Ah();Bh();VI="data-reticle-",jI="data-reticle-page-open",XF=new Set(["switch","checkbox"]);QF=[{surface:Jo.RAIL,selector:`[${Fh}]`,shown:t=>en.EXPANDED===t.view},{surface:Jo.HARNESS,selector:`[data-reticle-page-panel="harness"] :is([${wt}],[${bu}])`,shown:t=>vt.HARNESS===t.panel},{surface:Jo.HEADER,selector:`[${lu}]`,shown:t=>en.BUBBLE!==t.view}],JF=t=>t.closest("[hidden]")===null});function YI(){var t;try{let e=JSON.parse((t=globalThis.sessionStorage.getItem(OT))!=null?t:"[]");return Array.isArray(e)?e.filter(n=>typeof n=="object"&&n!==null&&typeof n.text=="string"&&typeof n.kind=="string"&&typeof n.ts=="string"&&typeof n.at=="number"):[]}catch{return[]}}function ku(t){try{globalThis.sessionStorage.setItem(OT,JSON.stringify(t))}catch{}}function XI(t){try{let e=t!=null?t:"",n=globalThis.sessionStorage.getItem(st.PRESENTER_LOG_OWNER);return globalThis.sessionStorage.setItem(st.PRESENTER_LOG_OWNER,e),n===null||n===e?!1:(globalThis.sessionStorage.removeItem(OT),!0)}catch{return!1}}var OT,qI=S(()=>{"use strict";Lr();OT=st.PRESENTER_LOG});var aC={};bs(aC,{GlowPhase:()=>pr,LOG_KIND:()=>Fe,LOG_RESULT:()=>Tn,Presenter:()=>IT});var eG,gl,De,Fo,as,Du,ss,Ar,El,bl,$i,Go,cs,Tl,Sl,Rn,_l,Mu,ls,Nn,Qr,$u,Ct,xl,Pu,Hu,ds,Jr,yr,wn,qn,Zn,Uu,Pi,Fu,Qn,eo,On,Al,yl,In,we,vl,K,ZI,QI,is,CT,JI,eC,Mi,LT,tC,nC,kT,rC,oC,DT,ml,iC,IT,sC=S(()=>{"use strict";H();Rt();TE();LE();lt();wo();uI();yT();Ah();Br();yh();au();iu();ut();kI();PI();FI();ur();BI();sT();$c();yT();zI();Eh();qI();ut();wo();eG=1600,IT=class{constructor(e={}){b(this,K);b(this,gl);b(this,De);b(this,Fo);b(this,as);b(this,Du);b(this,ss);b(this,Ar);b(this,El);b(this,bl);b(this,$i);b(this,Go);b(this,cs);b(this,Tl,{passes:0,fails:0});b(this,Sl,je.IDLE);b(this,Rn);b(this,_l);b(this,Mu);b(this,ls);b(this,Nn);b(this,Qr,"");b(this,$u);b(this,Ct);b(this,xl);b(this,Pu);b(this,Hu);b(this,ds);b(this,Jr,[]);b(this,yr,!1);b(this,wn);b(this,qn);b(this,Zn);b(this,Uu);b(this,Pi);b(this,Fu,new gh);b(this,Qn,[]);b(this,eo);b(this,On);b(this,Al);b(this,yl);b(this,In);b(this,we);b(this,vl);var n,r,o,a,s,l,d,u,p;h(this,gl,Sw(e.paceMs)),h(this,Rn,(n=e.now)!=null?n:af),h(this,_l,(r=e.heartbeatMs)!=null?r:xw),h(this,Mu,(o=e.idleNoticeMs)!=null?o:Aw),h(this,xl,(a=e.idleEndMs)!=null?a:yw),h(this,Pu,(s=e.sessionId)!=null?s:""),h(this,ls,(l=e.border)!=null?l:bw),h(this,Nn,new Xh({now:c(this,Rn),idleAfterMs:(d=e.idleAfterMs)!=null?d:_w,glowFadeMs:(u=e.glowFadeMs)!=null?u:Rw,borderMode:c(this,ls),setMode:f=>this.setMode(f)})),h(this,wn,eb(e.logMax)),h(this,On,e.onControl),h(this,Al,e.onHudUse),h(this,In,new Mh({emit:(f,m)=>{var g;return(g=c(this,On))==null?void 0:g.call(this,m!==void 0?{kind:f,text:m}:{kind:f})},logHuman:f=>{this.log(Fe.HUMAN,f)},endedFadeMs:(p=e.endedFadeMs)!=null?p:wO,runState:()=>this.runState(),clearRunLog:()=>E(this,K,kT).call(this),onStateChange:()=>E(this,K,is).call(this)})),h(this,we,new Ou({onChatOpen:()=>c(this,we).pulseFab(!1),onExpand:()=>E(this,K,is).call(this),onAnnotateToggle:()=>E(this,K,is).call(this),onCollapse:()=>E(this,K,is).call(this),onSyncNow:()=>{var f;return(f=c(this,On))==null?void 0:f.call(this,{kind:Ht.SYNC})},onSignIn:()=>{var f;return(f=c(this,On))==null?void 0:f.call(this,{kind:Ht.SIGNIN})},onHarness:f=>{var m;return(m=c(this,On))==null?void 0:m.call(this,{kind:Ht.HARNESS,text:f?"on":"off"})},onHarnessRun:f=>{var m;return(m=c(this,On))==null?void 0:m.call(this,{kind:Ht.HARNESS_RUN,...f===void 0?{}:{text:f}})},onHarnessStop:()=>{var f;return(f=c(this,On))==null?void 0:f.call(this,{kind:Ht.HARNESS_STOP})},onHarnessLink:()=>{var f;return(f=c(this,On))==null?void 0:f.call(this,{kind:Ht.HARNESS_LINK})},settings:{onBeforeOpen:()=>{c(this,we).isCollapsed()&&c(this,we).expand()},onHideUntilRestart:()=>E(this,K,rC).call(this),onKill:()=>{var f;return(f=e.onKill)==null?void 0:f.call(e)},onSettingsChange:f=>E(this,K,oC).call(this,f),onHarness:f=>{var m;return(m=c(this,On))==null?void 0:m.call(this,{kind:Ht.HARNESS,text:f?"on":"off"})}}})),c(this,we).setProjectId(e.projectId)}setControlHandler(e){h(this,On,e)}get state(){return c(this,In).state}get sessionActive(){return c(this,yr)}setState(e,n,r){c(this,In).setState(e,n,r)}refilterFlows(){c(this,In).refilterFlows()}showSdkVersion(e){c(this,De)!==void 0&&Ob(c(this,De),e)}handlePush(e){var s;let n=e.args;if(e.name===L.FLOWS)return void c(this,In).setFlows(n.flows);if(e.name===L.FLOW_PROGRESS)return void c(this,In).setFlowProgress(n);if(e.name===L.PLAN){let l=F0(n);l!==void 0&&c(this,Fu).paint(l);return}if(e.name===L.IMPACT){let l=rO(n.snapshot);if(l!==void 0){c(this,we).report.setSnapshot(l),c(this,we).paintNotices(l.notices),c(this,we).paintHarness(l.harnessConfig,z0(l.instrumentation,l.harnessConfig)),c(this,we).paintHarnessDrive(l.harnessDrive),E(this,K,eC).call(this,l.harnessDrive),c(this,we).paintAgent(l.agent),c(this,we).paintImpact(l.project.counts.verdicts);let d=((s=l.account)==null?void 0:s.signedIn)===!0?l.account.email:void 0;XI(d)&&E(this,K,kT).call(this),c(this,we).paintAccount(l.account,l.dashboardUrl,{projectName:l.projectName,dashboardUrl:l.dashboardUrl,verdicts:l.project.counts.verdicts,defects:l.project.counts.failed,...l0(l.harnessConfig,l.sync)})}return}let r=n.state,o=n.tone,a=typeof n.text=="string"&&n.text.length>0?n.text:void 0;N_(r)&&this.setState(r,a,dx(o)?o:void 0)}get logMax(){return c(this,wn)}set logMax(e){h(this,wn,eb(e)),E(this,K,iC).call(this)}mount(){var o,a,s,l,d,u,p,f,m,g,T,_;if(c(this,De)!==void 0||typeof document=="undefined")return;let e=document.createElement("style");e.setAttribute("data-reticle-overlay",""),e.textContent=dI,document.head.appendChild(e);let n=document.createElement("div");n.setAttribute("data-reticle-overlay","");let r=`<div class="reticle-act-strip" data-liveness="idle"><span class="reticle-act-dot" aria-hidden="true"></span><span class="reticle-act">${fr.READY}</span>${CO}<span class="reticle-chip" data-reticle-chip></span><div class="reticle-act-actions">${IO}</div></div>`;n.innerHTML=`
1685
- ${Cb()}
1675
+ </div>`}get report(){return c(this,uo)}isAnnotateOn(){return c(this,Zi)}setAnnotateOn(e){var r,o,s,a,l,d,u;f(this,Zi,e),(r=c(this,lo))==null||r.setAttribute("aria-pressed",e?"true":"false"),(o=c(this,lo))==null||o.setAttribute("data-active",e?"1":"0"),(s=c(this,lo))==null||s.setAttribute("aria-label",e?"Stop adding notes":"Add notes"),(a=c(this,lo))==null||a.setAttribute("title",e?"Stop adding notes":"Add notes");let n=(l=c(this,lo))==null?void 0:l.querySelector("[data-reticle-notes-toggle-label]");n!=null&&(n.textContent=e?"Stop adding notes":"Add notes"),(u=(d=c(this,xe))==null?void 0:d.querySelector('[data-reticle-chat-view-btn="annotations"]'))==null||u.setAttribute("data-capture",e?"1":"0")}mount(e){var h,m,g,T;f(this,xa,new AbortController);let{signal:n}=c(this,xa);f(this,xe,e),f(this,Bt,(h=e.querySelector(`[${M}]`))!=null?h:void 0);let r=e.querySelector(`[${Z0}]`);f(this,ir,r instanceof HTMLButtonElement?r:void 0);let o=e.querySelector(`[${nn}]`);f(this,ba,o instanceof HTMLElement?o:void 0);let s=e.querySelector(`[${Bh}]`);f(this,lo,s instanceof HTMLButtonElement?s:void 0),this.setAnnotateOn(c(this,Zi)),(m=c(this,lo))==null||m.addEventListener("click",_=>{var A,N;_.preventDefault(),_.stopPropagation(),this.setAnnotateOn(!c(this,Zi)),(N=(A=c(this,wr)).onAnnotateToggle)==null||N.call(A,c(this,Zi))},{signal:n});let a=e.querySelector(`[${yt}]`);a==null||a.addEventListener("click",_=>{_.preventDefault(),_.stopPropagation(),vl(!0),this.showChat()},{signal:n});let l=e.querySelector(`[${oT}]`);l==null||l.addEventListener("click",_=>{_.preventDefault(),_.stopPropagation(),vl(!1),this.closeChat()},{signal:n});let d=e.querySelector("[data-reticle-min-btn]");f(this,Rl,d instanceof HTMLButtonElement?d:void 0),e.setAttribute(Me,"1"),e.setAttribute(Qe,"0"),e.removeAttribute(ut),c(this,wt).mount(e),c(this,uo).mount(e),c(this,nt).mount(e),f(this,Jo,E(this,bn,Pm).call(this)),SS(e,c(this,Ol),c(this,Jo)),f(this,_a,new MutationObserver(()=>E(this,bn,xS).call(this))),c(this,_a).observe(e,{attributes:!0,attributeFilter:[ut,Qe,gn]}),E(this,bn,xS).call(this),(g=c(this,ir))==null||g.addEventListener("click",_=>{if(_.stopPropagation(),c(this,Sa)){f(this,Sa,!1);return}vl(!0),this.expand()},{signal:n}),(T=c(this,Rl))==null||T.addEventListener("click",_=>{_.stopPropagation(),vl(!1),this.collapse()},{signal:n});let u=e.querySelector(`.${YL}`),p=[c(this,ir),u].filter(_=>_ instanceof HTMLElement);if(c(this,Bt)!==void 0&&p.length>0&&(f(this,Nl,TI(c(this,Bt),p,{onDragMove:()=>{f(this,Sa,!0)},onDragEnd:_=>{f(this,Sa,_&&this.isCollapsed())}})),f(this,wl,bI(c(this,Bt),e))),document.addEventListener("pointerdown",c(this,$m),{signal:n}),document.addEventListener("keydown",c(this,Hm),{signal:n}),f(this,Il,DI(e,()=>{var _,A;return(A=(_=c(this,wr)).onSignIn)==null?void 0:A.call(_)})),c(this,Aa)!==void 0){let _=c(this,Aa);this.paintAccount(_.account,_.dashboardUrl,_.details)}}teardown(){var e,n,r,o,s;(e=c(this,Il))==null||e.call(this),f(this,Il,void 0),(n=c(this,xa))==null||n.abort(),f(this,xa,void 0),(r=c(this,_a))==null||r.disconnect(),f(this,_a,void 0),(o=c(this,Nl))==null||o.call(this),f(this,Nl,void 0),(s=c(this,wl))==null||s.call(this),f(this,wl,void 0),c(this,wt).teardown(),c(this,nt).teardown(),f(this,xe,void 0),f(this,Bt,void 0),f(this,ir,void 0),f(this,ba,void 0),f(this,Rl,void 0)}isCollapsed(){var e;return((e=c(this,xe))==null?void 0:e.getAttribute(Me))==="1"}isChatOpen(){var e;return((e=c(this,xe))==null?void 0:e.getAttribute(ut))==="1"}expand(){var e,n;c(this,xe)===void 0||!this.isCollapsed()||c(this,Ta)||(E(this,bn,QL).call(this),c(this,xe).setAttribute(Me,"0"),ZL(!1),c(this,ir)!==void 0&&c(this,ir).setAttribute("aria-expanded","true"),(n=(e=c(this,wr)).onExpand)==null||n.call(e),this.openChat(),c(this,Bt)!==void 0&&yr(c(this,Bt),c(this,xe)))}collapse(){var e,n;c(this,xe)!==void 0&&(f(this,Ta,!1),this.closeChat(),c(this,wt).close(),c(this,xe).setAttribute(Me,"1"),ZL(!0),c(this,ir)!==void 0&&c(this,ir).setAttribute("aria-expanded","false"),(n=(e=c(this,wr)).onCollapse)==null||n.call(e))}openChat(){var n,r,o;if(c(this,xe)===void 0||(this.isCollapsed()&&this.expand(),c(this,wt).close(),c(this,nt).closePage(),c(this,nt).open("activity"),this.isChatOpen()))return;c(this,xe).setAttribute(ut,"1");let e=c(this,xe).querySelector("[data-reticle-log]");e!==null&&U0(e),(n=c(this,ba))==null||n.setAttribute("aria-hidden","false"),(o=(r=c(this,wr)).onChatOpen)==null||o.call(r),c(this,Bt)!==void 0&&yr(c(this,Bt),c(this,xe))}closeChat(){var e,n,r;c(this,xe)===void 0||!this.isChatOpen()||(c(this,xe).removeAttribute(ut),(e=c(this,ba))==null||e.setAttribute("aria-hidden","true"),(r=(n=c(this,wr)).onChatClose)==null||r.call(n),c(this,Bt)!==void 0&&yr(c(this,Bt),c(this,xe)))}toggleChat(){this.isChatOpen()?this.closeChat():this.showChat()}showChat(){c(this,uo).close(),this.openChat()}pulseFab(e){var n;(n=c(this,ir))==null||n.setAttribute("data-pulse",e?"1":"0")}};xe=new WeakMap,Bt=new WeakMap,ir=new WeakMap,ba=new WeakMap,Rl=new WeakMap,wt=new WeakMap,nt=new WeakMap,Nl=new WeakMap,wl=new WeakMap,Ta=new WeakMap,Sa=new WeakMap,lo=new WeakMap,Zi=new WeakMap,_a=new WeakMap,xa=new WeakMap,uo=new WeakMap,wr=new WeakMap,Aa=new WeakMap,Ol=new WeakMap,ap=new WeakMap,Jo=new WeakMap,Il=new WeakMap,bn=new WeakSet,Pm=function(){var e,n;return iS(c(this,ap),(n=(e=c(this,Aa))==null?void 0:e.account)!=null?n:{signedIn:!1})},_S=function(){let e=E(this,bn,Pm).call(this);c(this,xe)===void 0||e===c(this,Jo)||(f(this,Jo,e),SS(c(this,xe),c(this,Ol),e))},xS=function(){let e=c(this,xe);if(e===void 0)return;let n=(o,s)=>{let a=e.querySelector(`[${o}]`);a==null||a.setAttribute("data-active",s?"1":"0"),a==null||a.setAttribute("aria-pressed",s?"true":"false")};n($h,e.getAttribute(ut)==="1"),n(Ou,e.getAttribute(Qe)==="1");let r=e.querySelector("[data-reticle-chat-impact]");if(r!==null){let o=e.getAttribute(gn)==="1";r.setAttribute("data-active",o?"1":"0"),c(this,nt).setImpactOpen(o),o?r.setAttribute("aria-current","page"):r.removeAttribute("aria-current")}},QL=function(){f(this,Ta,!0),window.setTimeout(()=>{f(this,Ta,!1)},H4)},$m=new WeakMap,Hm=new WeakMap});function t1(t){var r,o;let e=(r=t.startMs)!=null?r:t.now,n={reads:0,acts:0,narrations:0,human:0,passes:0,fails:0};for(let s of t.runLog)s.kind===ke.READ?n.reads+=1:s.kind===ke.ACT?n.acts+=1:s.kind===ke.NARRATION?n.narrations+=1:s.kind===ke.HUMAN&&(n.human+=1),s.result===Nn.PASS?n.passes+=1:s.result===Nn.FAIL&&(n.fails+=1);return{session:t.sessionId,url:typeof location=="undefined"?"":Of(),state:t.state,startedMs:e,durationMs:Math.max(0,((o=t.endMs)!=null?o:t.now)-e),counts:n,capabilities:yi(),log:t.runLog.map(s=>({...s}))}}var n1=S(()=>{"use strict";Vd();Ko();vi()});function r1(t,e,n){t!==void 0&&(t.setAttribute("data-on","1"),t.style.transform=`translate(${String(e)}px, ${String(n)}px)`)}function o1(t,e){t!==void 0&&(t.style.left=`${String(e.left-4)}px`,t.style.top=`${String(e.top-4)}px`,t.style.width=`${String(e.width+8)}px`,t.style.height=`${String(e.height+8)}px`,t.setAttribute("data-on","1"),oe(()=>t.setAttribute("data-on","0"),700))}function i1(t,e,n){if(t===void 0)return;let r=document.createElement("div");r.setAttribute("data-reticle-ripple",""),r.style.left=`${String(e)}px`,r.style.top=`${String(n)}px`,t.appendChild(r),oe(()=>r.remove(),520)}function vS(t){return new Promise(e=>oe(e,t))}var s1=S(()=>{"use strict";dt()});var Or,ya,Ir,Cr,Qi,Cl,Ll,va,cp,kl,lp,sr,a1,RS,NS,c1,Um,l1=S(()=>{"use strict";D();dt();Et();Um=class{constructor(e){b(this,sr);b(this,Or,Sr.IDLE);b(this,ya,0);b(this,Ir);b(this,Cr);b(this,Qi);b(this,Cl);b(this,Ll);b(this,va);b(this,cp);b(this,kl);b(this,lp);f(this,Ll,e.now),f(this,va,e.idleAfterMs),f(this,cp,e.glowFadeMs),f(this,kl,e.borderMode),f(this,lp,e.setMode)}setElements(e,n){f(this,Qi,e),f(this,Cl,n)}phase(){return c(this,Or)}lastActivityMs(){return c(this,ya)}resetActivity(e){f(this,ya,e)}markActivity(e=c(this,Ll).call(this)){f(this,ya,e),(c(this,Or)===Sr.IDLE||c(this,Or)===Sr.FADING)&&E(this,sr,a1).call(this),E(this,sr,RS).call(this)}scheduleIdle(){E(this,sr,RS).call(this)}teardown(){c(this,Ir)!==void 0&&_e(c(this,Ir)),c(this,Cr)!==void 0&&_e(c(this,Cr)),f(this,Ir,void 0),f(this,Cr,void 0)}};Or=new WeakMap,ya=new WeakMap,Ir=new WeakMap,Cr=new WeakMap,Qi=new WeakMap,Cl=new WeakMap,Ll=new WeakMap,va=new WeakMap,cp=new WeakMap,kl=new WeakMap,lp=new WeakMap,sr=new WeakSet,a1=function(){var e,n,r;c(this,Cr)!==void 0&&(_e(c(this,Cr)),f(this,Cr,void 0)),f(this,Or,Sr.BUSY),c(this,kl)===ta.SESSION?(e=c(this,Qi))==null||e.setAttribute(wu,V0):(n=c(this,Qi))==null||n.setAttribute(tn,Wo),(r=c(this,Cl))==null||r.setAttribute(tn,Wo)},RS=function(){c(this,Ir)!==void 0&&_e(c(this,Ir)),f(this,Ir,oe(()=>E(this,sr,NS).call(this),c(this,va)))},NS=function(){if(f(this,Ir,void 0),c(this,Or)!==Sr.BUSY)return;let e=c(this,Ll).call(this)-c(this,ya);if(e<c(this,va)){f(this,Ir,oe(()=>E(this,sr,NS).call(this),c(this,va)-e));return}E(this,sr,c1).call(this)},c1=function(){var e,n,r;f(this,Or,Sr.FADING),c(this,kl)===ta.SESSION?(e=c(this,Qi))==null||e.setAttribute(wu,Mh):(n=c(this,Qi))==null||n.setAttribute(tn,$i),(r=c(this,Cl))==null||r.setAttribute(tn,$i),c(this,lp).call(this,We.IDLE),f(this,Cr,oe(()=>{f(this,Cr,void 0),c(this,Or)===Sr.FADING&&f(this,Or,Sr.IDLE)},c(this,cp)))}});function d1(t,e,n){let r=G4(e);if(t===void 0)return r;if(r.passes===0&&r.fails===0)return t.setAttribute("hidden",""),t.replaceChildren(),r;let o=t.ownerDocument;t.removeAttribute("hidden"),t.className="reticle-tally reticle-pill-group reticle-head-ctl",t.replaceChildren();let s=o.createElement("span");if(s.className="reticle-t-pass reticle-pill-segment",r.passes===0&&s.setAttribute("data-z","1"),r.passes>n.passes&&s.setAttribute("data-bump","1"),s.append(Qr(Q.CHECK,he.TALLY)),r.passes>0){let d=o.createElement("span");d.className="reticle-pill-count",d.textContent=String(r.passes),s.append(d)}let a=o.createElement("span");a.className="reticle-pill-sep",a.setAttribute("aria-hidden","true");let l=o.createElement("span");if(l.className="reticle-t-fail reticle-pill-segment",r.fails===0&&l.setAttribute("data-z","1"),r.fails>n.fails&&l.setAttribute("data-bump","1"),l.append(Qr(Q.REMOVE,he.TALLY)),r.fails>0){let d=o.createElement("span");d.className="reticle-pill-count",d.textContent=String(r.fails),l.append(d)}return t.append(s,a,l),r}function G4(t){let e=0,n=0;for(let r of t)r.result===Nn.PASS?e+=1:r.result===Nn.FAIL&&(n+=1);return{passes:e,fails:n}}var u1=S(()=>{"use strict";Ko();Tr()});function h1(t){for(let e of Array.from(t.attributes)){if(!e.name.startsWith(p1))continue;let n=e.name.slice(p1.length),r=SI.includes(n)?`${n}.${e.value}`:n;if(_I(r))return r}}function V4(t){for(let e of t)if(e instanceof Element&&h1(e)!==void 0)return e}function wS(t){let e=j4(t);return An.BUBBLE===e.view||t.querySelector(`[${Gi}]:not([hidden])`)===null?e:{view:e.view,panel:Tt.ACCOUNT}}function j4(t){if(t.getAttribute(Me)==="1")return{view:An.BUBBLE,panel:Tt.NONE};if(t.getAttribute(Qe)==="1")return{view:An.EXPANDED,panel:Tt.SETTINGS};if(t.getAttribute(gn)==="1")return{view:An.EXPANDED,panel:Tt.REPORT};let e=t.getAttribute(f1);return e==="flows"?{view:An.EXPANDED,panel:Tt.FLOWS}:e==="annotations"?{view:An.EXPANDED,panel:Tt.NOTES}:e==="harness"?{view:An.EXPANDED,panel:Tt.HARNESS}:t.getAttribute(ut)==="1"?{view:An.EXPANDED,panel:Tt.CHAT}:{view:An.COLLAPSED,panel:Tt.NONE}}function m1(t,e,n){let r=g=>{try{n(g)}catch{}},o=g=>{var A;let T=V4(g.composedPath());if(T===void 0||!jr(T))return;let _=h1(T);if(_!==void 0){if(!B4.has((A=T.getAttribute("role"))!=null?A:"")){r({control:_});return}oe(()=>{let N=T.getAttribute("aria-checked")==="true";r({control:_,toggle:N?gd.ON:gd.OFF})},0)}},s="",a=()=>{let g=wS(e),T=`${g.view}/${g.panel}`;T!==s&&(s=T,r(g))},l="",d=()=>{var _;if(Tt.CHAT!==wS(e).panel)return;let g=e.querySelector(`[${rp}]:not([hidden])`),T=(_=g==null?void 0:g.getAttribute(rp))!=null?_:"";T.length===0||T===l||(l=T,r({slide:T}))},u=new Set,p=()=>{let g=wS(e);for(let T of K4){if(u.has(T.surface)||!T.shown(g))continue;let _=e.querySelector(T.selector);_===null||!W4(_)||(u.add(T.surface),r({prompt:T.surface}))}},h=new MutationObserver(()=>{d(),a(),p()});h.observe(e,{subtree:!0,childList:!0,attributes:!0,attributeFilter:["data-active","hidden"]}),t.addEventListener("click",o,!0);let m=new MutationObserver(g=>{a(),0<g.length&&d(),p()});return m.observe(e,{attributes:!0,attributeFilter:[Me,ut,Qe,gn,f1]}),a(),p(),()=>{t.removeEventListener("click",o,!0),m.disconnect(),h.disconnect()}}var p1,f1,B4,K4,W4,g1=S(()=>{"use strict";Zc();D();Ye();dt();Et();Im();eo();mm();Lm();p1="data-reticle-",f1="data-reticle-page-open",B4=new Set(["switch","checkbox"]);K4=[{surface:fi.RAIL,selector:`[${rr}]`,shown:t=>Tt.CHAT===t.panel},{surface:fi.HARNESS,selector:`[data-reticle-page-panel="harness"] :is([${Ut}],[${Wu}])`,shown:t=>Tt.HARNESS===t.panel},{surface:fi.HEADER,selector:`[${Hu}]`,shown:t=>An.BUBBLE!==t.view}],W4=t=>t.closest("[hidden]")===null});function E1(){var t;try{let e=JSON.parse((t=globalThis.sessionStorage.getItem(OS))!=null?t:"[]");return Array.isArray(e)?e.filter(n=>typeof n=="object"&&n!==null&&typeof n.text=="string"&&typeof n.kind=="string"&&typeof n.ts=="string"&&typeof n.at=="number"):[]}catch{return[]}}function dp(t){try{globalThis.sessionStorage.setItem(OS,JSON.stringify(t))}catch{}}function b1(t){try{let e=t!=null?t:"",n=globalThis.sessionStorage.getItem(ct.PRESENTER_LOG_OWNER);return globalThis.sessionStorage.setItem(ct.PRESENTER_LOG_OWNER,e),n===null||n===e?!1:(globalThis.sessionStorage.removeItem(OS),!0)}catch{return!1}}var OS,T1=S(()=>{"use strict";Kr();OS=ct.PRESENTER_LOG});var I1={};Ua(I1,{GlowPhase:()=>Sr,LOG_KIND:()=>ke,LOG_RESULT:()=>Nn,Presenter:()=>IS});var z4,Ml,Pe,ei,Na,up,wa,Lr,Pl,$l,es,ti,Oa,Hl,Ul,kn,Fl,pp,Ia,Dn,po,fp,Vt,Gl,hp,mp,Ca,fo,kr,gp,Tn,ar,Dr,Ep,ts,bp,cr,ho,Mn,Bl,Vl,Pn,we,jl,Tp,K,S1,_1,Ra,CS,x1,A1,Ji,LS,y1,v1,kS,R1,N1,DS,w1,Dl,O1,IS,C1=S(()=>{"use strict";D();lt();_b();Db();dt();Ko();kL();yS();mm();eo();gm();Mu();Du();Et();n1();s1();l1();Tr();u1();aS();tl();yS();g1();lm();T1();Et();Ko();z4=1600,IS=class{constructor(e={}){b(this,K);b(this,Ml);b(this,Pe);b(this,ei);b(this,Na);b(this,up);b(this,wa);b(this,Lr);b(this,Pl);b(this,$l);b(this,es);b(this,ti);b(this,Oa);b(this,Hl,{passes:0,fails:0});b(this,Ul,We.IDLE);b(this,kn);b(this,Fl);b(this,pp);b(this,Ia);b(this,Dn);b(this,po,"");b(this,fp);b(this,Vt);b(this,Gl);b(this,hp);b(this,mp);b(this,Ca);b(this,fo,[]);b(this,kr,!1);b(this,gp,!1);b(this,Tn);b(this,ar);b(this,Dr);b(this,Ep);b(this,ts);b(this,bp,new cm);b(this,cr,[]);b(this,ho);b(this,Mn);b(this,Bl);b(this,Vl);b(this,Pn);b(this,we);b(this,jl);b(this,Tp,!1);var n,r,o,s,a,l,d,u,p;f(this,Ml,j0(e.paceMs)),f(this,kn,(n=e.now)!=null?n:Wf),f(this,Fl,(r=e.heartbeatMs)!=null?r:W0),f(this,pp,(o=e.idleNoticeMs)!=null?o:z0),f(this,Gl,(s=e.idleEndMs)!=null?s:Y0),f(this,hp,(a=e.sessionId)!=null?a:""),f(this,Ia,(l=e.border)!=null?l:B0),f(this,Dn,new Um({now:c(this,kn),idleAfterMs:(d=e.idleAfterMs)!=null?d:K0,glowFadeMs:(u=e.glowFadeMs)!=null?u:q0,borderMode:c(this,Ia),setMode:h=>this.setMode(h)})),f(this,Tn,nT(e.logMax)),f(this,Mn,e.onControl),f(this,Bl,e.onHudUse),f(this,Pn,new Nm({emit:(h,m)=>{var g;return(g=c(this,Mn))==null?void 0:g.call(this,m!==void 0?{kind:h,text:m}:{kind:h})},logHuman:h=>{this.log(ke.HUMAN,h)},endedFadeMs:(p=e.endedFadeMs)!=null?p:qC,runState:()=>this.runState(),clearRunLog:()=>E(this,K,kS).call(this),onStateChange:()=>E(this,K,Ra).call(this)})),f(this,we,new sp({onChatOpen:()=>c(this,we).pulseFab(!1),onExpand:()=>E(this,K,Ra).call(this),onAnnotateToggle:()=>E(this,K,Ra).call(this),onCollapse:()=>E(this,K,Ra).call(this),onSyncNow:()=>{var h;return(h=c(this,Mn))==null?void 0:h.call(this,{kind:Xt.SYNC})},onSignIn:()=>{var h;return(h=c(this,Mn))==null?void 0:h.call(this,{kind:Xt.SIGNIN})},onHarness:h=>{var m;return(m=c(this,Mn))==null?void 0:m.call(this,{kind:Xt.HARNESS,text:h?"on":"off"})},onHarnessRun:h=>{var m;return(m=c(this,Mn))==null?void 0:m.call(this,{kind:Xt.HARNESS_RUN,...h===void 0?{}:{text:h}})},onHarnessStop:()=>{var h;return(h=c(this,Mn))==null?void 0:h.call(this,{kind:Xt.HARNESS_STOP})},onHarnessLink:()=>{var h;return(h=c(this,Mn))==null?void 0:h.call(this,{kind:Xt.HARNESS_LINK})},settings:{onBeforeOpen:()=>{c(this,we).isCollapsed()&&c(this,we).expand()},onHideUntilRestart:()=>E(this,K,R1).call(this),onKill:()=>{var h;return(h=e.onKill)==null?void 0:h.call(e)},onSettingsChange:h=>E(this,K,N1).call(this,h),onHarness:h=>{var m;return(m=c(this,Mn))==null?void 0:m.call(this,{kind:Xt.HARNESS,text:h?"on":"off"})}}})),c(this,we).setProjectId(e.projectId)}setControlHandler(e){f(this,Mn,e)}get state(){return c(this,Pn).state}get sessionActive(){return c(this,kr)}setState(e,n,r){c(this,Pn).setState(e,n,r)}refilterFlows(){c(this,Pn).refilterFlows()}showSdkVersion(e){c(this,Pe)!==void 0&&IT(c(this,Pe),e)}handlePush(e){var a;let n=e.args;if(e.name===k.FLOWS)return void c(this,Pn).setFlows(n.flows);if(e.name===k.FLOW_PROGRESS)return void c(this,Pn).setFlowProgress(n);if(e.name===k.PLAN){let l=lC(n);l!==void 0&&c(this,bp).paint(l);return}if(e.name===k.IMPACT){let l=yC(n.snapshot);if(l!==void 0){c(this,we).report.setSnapshot(l),c(this,we).paintNotices(l.notices),c(this,we).paintHarness(l.harnessConfig),c(this,we).paintHarnessDrive(l.harnessDrive,l.lastDrive),E(this,K,A1).call(this,l.harnessDrive),c(this,we).paintAgent(l.agent),c(this,we).paintImpact(l.project.counts.verdicts);let d=((a=l.account)==null?void 0:a.signedIn)===!0?l.account.email:void 0;b1(d)&&E(this,K,kS).call(this),c(this,we).paintAccount(l.account,l.dashboardUrl,{projectName:l.projectName,dashboardUrl:l.dashboardUrl,verdicts:l.project.counts.verdicts,defects:l.project.counts.failed,...LI(l.harnessConfig,l.sync)})}return}let r=n.state,o=n.tone,s=typeof n.text=="string"&&n.text.length>0?n.text:void 0;Fx(r)&&this.setState(r,s,MA(o)?o:void 0)}get logMax(){return c(this,Tn)}set logMax(e){f(this,Tn,nT(e)),E(this,K,O1).call(this)}mount(){var o,s,a,l,d,u,p,h,m,g,T,_;if(c(this,Pe)!==void 0||typeof document=="undefined")return;let e=document.createElement("style");e.setAttribute("data-reticle-overlay",""),e.textContent=LL,document.head.appendChild(e);let n=document.createElement("div");n.setAttribute("data-reticle-overlay","");let r=`<div class="reticle-act-strip" data-liveness="idle"><span class="reticle-act-dot" aria-hidden="true"></span><span class="reticle-act" data-reticle-act-line>${_r.READY}</span>${JC}<span class="reticle-chip" data-reticle-chip></span><div class="reticle-act-actions">${QC}</div></div>`;n.innerHTML=`
1676
+ ${LT()}
1686
1677
  <div data-reticle-glow></div>
1687
1678
  <div data-reticle-cursor></div>
1688
1679
  <div data-reticle-ring></div>
1689
- ${Ou.dockHtml(r,"",JE,LO,kO)}`,document.body.appendChild(n),h(this,De,n),h(this,Fo,(o=n.querySelector("[data-reticle-glow]"))!=null?o:void 0),h(this,as,(a=n.querySelector("[data-reticle-cursor]"))!=null?a:void 0),h(this,Du,(s=n.querySelector("[data-reticle-ring]"))!=null?s:void 0),h(this,ss,(l=n.querySelector("[data-reticle-hud]"))!=null?l:void 0),h(this,Ar,(d=n.querySelector(".reticle-act"))!=null?d:void 0),h(this,El,(u=n.querySelector(".reticle-act-strip"))!=null?u:void 0),h(this,bl,(p=n.querySelector("[data-reticle-chat-pill-text]"))!=null?p:void 0),h(this,$i,(f=n.querySelector("[data-reticle-chat-pill-time]"))!=null?f:void 0),h(this,qn,(m=n.querySelector(`[${JE}]`))!=null?m:void 0),h(this,Zn,(g=n.querySelector(`[${xh}]`))!=null?g:void 0),h(this,Go,(T=n.querySelector("[data-reticle-chip]"))!=null?T:void 0),h(this,cs,(_=n.querySelector("[data-reticle-tally]"))!=null?_:void 0),c(this,we).mount(n),hh(n,yn(),!1),c(this,Nn).setElements(c(this,Fo),c(this,as)),c(this,In).mount(n,c(this,Fo)),c(this,Fu).mount(n),c(this,Al)!==void 0&&h(this,yl,WI(document,n,c(this,Al))),this.setMode(c(this,Sl)),E(this,K,ZI).call(this),E(this,K,ml).call(this)}bindAnnotator(e){h(this,vl,e);let n=c(this,De);if(n===void 0)return;let r=n.querySelector(`[${zf}]`),o=n.querySelector(`[${Yf}]`),a=n.querySelector(`[${ww}]`),s=n.querySelector(`[${Xf}]`),l=n.querySelector(`[${qf}]`),d={};l instanceof HTMLElement&&(d.copyRow=l);let u=e.markCount;d.onCount=p=>{u===0&&p>0&&c(this,we).openView("annotations"),u=p},d.onMarksChange=p=>c(this,we).paintAnnotations(p),s instanceof HTMLElement&&s.addEventListener("click",p=>{p.stopPropagation(),E(this,K,QI).call(this,e,s)}),r instanceof HTMLElement&&(d.markersBtn=r),o instanceof HTMLElement&&(d.clearBtn=o),a instanceof HTMLElement&&(d.countEl=a),e.attachChrome(d),e.setAccent(fu(yn().statusThemeId).active),E(this,K,is).call(this)}destroy(){var e,n;c(this,Nn).teardown(),c(this,Ct)!==void 0&&Te(c(this,Ct)),h(this,Ct,void 0),(e=c(this,yl))==null||e.call(this),h(this,yl,void 0),c(this,we).teardown(),c(this,In).teardown(),h(this,yr,!1),h(this,eo,void 0),h(this,qn,void 0),h(this,Zn,void 0),h(this,Qn,[]),ku([]),(n=c(this,De))==null||n.remove(),document.querySelectorAll("style[data-reticle-overlay]").forEach(r=>r.remove()),h(this,De,void 0)}sessionStart(){var e,n;if(this.state===Me.ENDED){E(this,K,JI).call(this);return}c(this,yr)||(nb===((e=c(this,De))==null?void 0:e.getAttribute(Kf))&&c(this,De).removeAttribute(Kf),h(this,yr,!0),(n=c(this,Hu))!=null||h(this,Hu,c(this,Rn).call(this)),h(this,ds,void 0),E(this,K,CT).call(this),c(this,Nn).resetActivity(c(this,Rn).call(this)),E(this,K,LT).call(this),AT(yn().autoOpenChat)&&c(this,we).openChat())}showUnreachable(e,n){var o,a,s,l;if(c(this,yr))return;(o=c(this,De))==null||o.setAttribute(Kf,nb);let r=(a=c(this,De))==null?void 0:a.querySelector("[data-reticle-dock]");r==null||r.setAttribute(Wt,Oo),(s=c(this,ss))==null||s.setAttribute(Wt,Oo),h(this,Qr,Jv),E(this,K,Mi).call(this,c(this,Qr),!0),(l=c(this,Ar))==null||l.setAttribute("title",Af(e,n)),AT(yn().autoOpenChat)&&c(this,we).openChat()}sessionEnd(){var n,r,o,a;if(!c(this,yr))return;h(this,yr,!1),c(this,Ct)!==void 0&&(Te(c(this,Ct)),h(this,Ct,void 0));let e=(n=c(this,De))==null?void 0:n.querySelector("[data-reticle-dock]");e==null||e.setAttribute(Wt,Si),(r=c(this,ss))==null||r.setAttribute(Wt,Si),c(this,we).collapse(),c(this,ls)===Ma.SESSION&&((o=c(this,Fo))==null||o.setAttribute(Wt,Si),(a=c(this,Fo))==null||a.setAttribute(Jd,jf))}markActivity(){c(this,Nn).markActivity()}scheduleIdle(){c(this,Nn).scheduleIdle()}glowPhase(){return c(this,Nn).phase()}get mode(){return c(this,Sl)}setMode(e){var n,r;if(h(this,Sl,e),(n=c(this,De))==null||n.setAttribute("data-reticle-mode",e),c(this,Go)!==void 0){let o=pw[e];if(c(this,Go).setAttribute("data-mode",e),c(this,Go).replaceChildren(),o.length>0){let a=e===je.READING?Y.VIEW:e===je.ACTING?Y.POINTER:void 0;a!==void 0&&c(this,Go).appendChild(Fr(a,pe.CHIP));let s=document.createElement("span");s.className="reticle-chip-label",s.textContent=o,c(this,Go).appendChild(s)}}e===je.READING&&((r=c(this,as))==null||r.setAttribute(Wt,Si))}status(e){this.markActivity(),c(this,$i)!==void 0&&(c(this,$i).textContent=fr.NOW),h(this,Qr,e),E(this,K,Mi).call(this,e,!1)}placeHud(e,n){let r=c(this,De);if(r===void 0)return[];let o=[];if(En.REMOVED===e)return this.destroy(),[e];En.HIDDEN===e&&r.setAttribute(Nc,"1"),En.SHOWN===e&&r.removeAttribute(Nc),e!==void 0&&o.push(e);let a=r.querySelector(`[${D}]`);if(n!==void 0&&a instanceof HTMLElement){if(Ep.BOTTOM_RIGHT===n)ru(a);else{let s=Cc(a),l=n.endsWith("left")?0:window.innerWidth,d=n.startsWith("top")?0:window.innerHeight,u=Ic(l,d,s.width,s.height,window.innerWidth,window.innerHeight);xi(a,u.left,u.top)}o.push(n),gr(a,r)}return o}setIdleEndMs(e){Number.isFinite(e)&&h(this,xl,Math.max(vw,Math.floor(e)))}runState(){let e=LI({sessionId:c(this,Pu),state:this.state,startMs:c(this,Hu),endMs:c(this,ds),now:c(this,Rn).call(this),runLog:c(this,Jr)}),n=yn();return n.outputDetail===Er.MINIMAL?{session:e.session,url:e.url,state:e.state,startedMs:e.startedMs,durationMs:e.durationMs,counts:e.counts}:n.outputDetail===Er.VERBOSE&&n.reactComponents?{...e,includeReactComponents:!0}:e}log(e,n,r,o,a=!1){var g;let s=c(this,Rn).call(this);if(c(this,Nn).markActivity(s),h(this,$u,o),c(this,qn)===void 0)return;let l=n.trim();if(l.length===0)return;(g=c(this,eo))!=null||h(this,eo,s);let d=r!==void 0?{at:s-c(this,eo),kind:e,text:l,result:r}:{at:s-c(this,eo),kind:e,text:l};for(c(this,Jr).push(d);c(this,Jr).length>c(this,wn);)c(this,Jr).shift();let u=Ew(s-c(this,eo)),p=E(this,K,DT).call(this,o,a).map(T=>tb(T,e,l,u,c(this,wn),o)),f={result:T=>p.forEach(_=>_.result(T))};r!==void 0&&f.result(r);let m={kind:e,text:l,ts:u,at:s-c(this,eo),...o===void 0?{}:{actor:o},...a?{summary:!0}:{},...r===void 0?{}:{result:r}};for(c(this,Qn).push(m);c(this,Qn).length>c(this,wn);)c(this,Qn).shift();return ku(c(this,Qn)),c(this,we).isCollapsed()&&c(this,we).pulseFab(!0),E(this,K,ml).call(this),{result:T=>{f.result(T),d.result=T,m.result=T,ku(c(this,Qn)),E(this,K,ml).call(this)}}}narrate(e,n="info",r=ln.AGENT,o=!1){let a=n==="info"?e:`[${n}] ${e}`;return this.log(Fe.NARRATION,a,void 0,r,o)}setThrottled(e){var n;(n=c(this,De))==null||n.setAttribute(kw,e?"1":"0"),e&&c(this,Ar)!==void 0&&(c(this,Ar).textContent="Tab backgrounded - actions throttled. Bring tab to front or use `reticle drive`.")}async beforeAct(e,n,r){let o=J.resolve(e);if(this.status(`${$d(n)} ${r}`),!(o instanceof HTMLElement)){await vT(c(this,gl));return}let a=o.getBoundingClientRect(),s=a.left+a.width/2,l=a.top+a.height/2;DI(c(this,as),s,l),MI(c(this,Du),a),await vT(c(this,gl)),(k.CLICK===n||k.DBLCLICK===n||k.SUBMIT===n)&&$I(c(this,De),s,l)}};gl=new WeakMap,De=new WeakMap,Fo=new WeakMap,as=new WeakMap,Du=new WeakMap,ss=new WeakMap,Ar=new WeakMap,El=new WeakMap,bl=new WeakMap,$i=new WeakMap,Go=new WeakMap,cs=new WeakMap,Tl=new WeakMap,Sl=new WeakMap,Rn=new WeakMap,_l=new WeakMap,Mu=new WeakMap,ls=new WeakMap,Nn=new WeakMap,Qr=new WeakMap,$u=new WeakMap,Ct=new WeakMap,xl=new WeakMap,Pu=new WeakMap,Hu=new WeakMap,ds=new WeakMap,Jr=new WeakMap,yr=new WeakMap,wn=new WeakMap,qn=new WeakMap,Zn=new WeakMap,Uu=new WeakMap,Pi=new WeakMap,Fu=new WeakMap,Qn=new WeakMap,eo=new WeakMap,On=new WeakMap,Al=new WeakMap,yl=new WeakMap,In=new WeakMap,we=new WeakMap,vl=new WeakMap,K=new WeakSet,ZI=function(){if(!(c(this,qn)===void 0||0<c(this,Qn).length))for(let e of YI().slice(-c(this,wn))){for(let n of E(this,K,DT).call(this,e.actor,e.summary===!0)){let r=tb(n,e.kind,e.text,e.ts,c(this,wn),e.actor);e.result!==void 0&&r.result(e.result)}h(this,eo,c(this,Rn).call(this)-e.at),c(this,Jr).push({at:e.at,kind:e.kind,text:e.text,...e.result===void 0?{}:{result:e.result}}),c(this,Qn).push(e)}},QI=function(e,n){var o;let r=e.agentPrompt(window.location.href);(o=navigator.clipboard)==null||o.writeText(r).catch(()=>{}),n.setAttribute("data-copied","1"),ee(()=>n.removeAttribute("data-copied"),eG),yn().clearOnCopy&&e.clearAll()},is=function(){var n;let e=!c(this,we).isCollapsed()&&c(this,we).isAnnotateOn();(n=c(this,vl))==null||n.toggle(e),c(this,De)!==void 0&&hh(c(this,De),yn(),e)},CT=function(){var n,r,o;let e=(n=c(this,De))==null?void 0:n.querySelector("[data-reticle-dock]");e==null||e.setAttribute(Wt,Oo),(r=c(this,ss))==null||r.setAttribute(Wt,Oo),c(this,ls)===Ma.SESSION&&((o=c(this,Fo))==null||o.setAttribute(Wt,Oo))},JI=function(){c(this,In).setState(Me.ACTIVE),h(this,ds,void 0),E(this,K,CT).call(this),c(this,Nn).resetActivity(c(this,Rn).call(this)),E(this,K,LT).call(this)},eC=function(e){e!==void 0&&e.runId!==c(this,Uu)&&(h(this,Uu,e.runId),c(this,Zn)!==void 0&&Vf(c(this,Zn)));let n=c(this,Pi);h(this,Pi,e==null?void 0:e.steps),e!==void 0?E(this,K,Mi).call(this,c(this,Qr),!1):n!==void 0&&E(this,K,Mi).call(this,fr.READY,!0)},Mi=function(e,n){var a;let r=c(this,Pi)===void 0?e:fr.harnessTesting(c(this,Pi));c(this,Ar)!==void 0&&(c(this,Ar).textContent=r,c(this,Ar).removeAttribute("title"));let o=n?"idle":"active";c(this,El)!==void 0&&c(this,El).setAttribute("data-liveness",o),(a=c(this,De))==null||a.setAttribute(tu,o),c(this,bl)!==void 0&&(c(this,bl).textContent=n?c(this,Qr)!==""?c(this,Qr):fr.READY:r)},LT=function(){c(this,Ct)!==void 0&&Te(c(this,Ct));let e=()=>{E(this,K,tC).call(this),h(this,Ct,ee(e,c(this,_l)))};h(this,Ct,ee(e,c(this,_l)))},tC=function(){if(!c(this,yr)||c(this,Ar)===void 0||this.state===Me.ENDED)return;let e=c(this,Rn).call(this)-c(this,Nn).lastActivityMs();if(e>=c(this,xl)){E(this,K,nC).call(this,e);return}if(e<c(this,Mu)||c(this,Qr)===""||c(this,Pi)!==void 0)return;if(ln.HARNESS===c(this,$u)){E(this,K,Mi).call(this,fr.READY,!0);return}let n=fr.SINCE_LAST;E(this,K,Mi).call(this,`${fr.PLANNING_PREFIX}${Qd(e)}${n}`,!0),c(this,$i)!==void 0&&(c(this,$i).textContent=Qd(e))},nC=function(e){h(this,ds,c(this,Rn).call(this)),c(this,In).setState(Me.ENDED,`${fr.STOPPED_PREFIX}${Qd(e)} quiet`),E(this,K,Mi).call(this,fr.STOPPED,!1),c(this,Ct)!==void 0&&(Te(c(this,Ct)),h(this,Ct,void 0))},kT=function(){h(this,Jr,[]),h(this,Qn,[]),ku([]),h(this,Tl,{passes:0,fails:0}),c(this,qn)!==void 0&&Vf(c(this,qn)),c(this,Zn)!==void 0&&Vf(c(this,Zn)),E(this,K,ml).call(this)},rC=function(){var e;(e=c(this,De))==null||e.setAttribute("data-reticle-hidden","1"),c(this,we).collapse()},oC=function(e){var n,r;(n=c(this,vl))==null||n.setAccent(fu(e.statusThemeId).active),e.showTally?E(this,K,ml).call(this):(r=c(this,cs))==null||r.setAttribute("hidden",""),E(this,K,is).call(this)},DT=function(e,n){let r=c(this,qn),o=c(this,Zn);return ln.HARNESS!==e||o===void 0?r===void 0?[]:[r]:n&&r!==void 0?[r,o]:[o]},ml=function(){var e;if(!yn().showTally){(e=c(this,cs))==null||e.setAttribute("hidden","");return}h(this,Tl,GI(c(this,cs),c(this,Jr),c(this,Tl)))},iC=function(){c(this,qn)!==void 0&&(Bf(c(this,qn),c(this,wn)),c(this,Zn)!==void 0&&Bf(c(this,Zn),c(this,wn)))}});var Be,cC,lC,dC,uC=S(()=>{"use strict";Be={NONE:"none",HUD:"hud",APP:"app",HUD_CHAT:"hud-chat",HUD_FLOWS:"hud-flows",HUD_ANNOTATE:"hud-annotate",HUD_IMPACT:"hud-impact",HUD_SETTINGS:"hud-settings"},cC=[{label:"Verify one flow",text:"verify the login flow with Reticle, and tell me the verdict"},{label:"Check what is proved",text:"/reticle"},{label:"Let it loose",text:"monkey-test the checkout flow with Reticle and tell me what breaks"}],lC=[{id:"connect",title:"Yayyy! It is connected",say:"That panel is Reticle. Seeing it is your proof the SDK is connected to your app.",why:"It only mounts on a connected session, so it cannot show up without one. Having the tools is not the same as being set up.",call:'reticle_session { action: "list" }',anchor:Be.HUD},{id:"look",title:"Look, without pixels",say:"Take a semantic snapshot. You get the controls and their refs, not pixels, so you can point at things by name.",why:"A ref is stable across snapshots, which is what lets you plan several steps before spending any of them.",call:'reticle_look { action: "page" }',anchor:Be.APP},{id:"declare",title:"Say it first",say:'Decide what should happen BEFORE you touch anything. "Clicking Pay makes the receipt appear" is a claim that can be wrong.',why:"This is the whole idea. A consequence named first is a check; the same sentence written after the fact is a rationalisation, and it is the difference between a verdict and a story.",call:'until: { signal: "order:placed" } // a consequence \u2014 not until: { ms: 500 }',anchor:Be.NONE},{id:"verdict",title:"Act, and prove it",say:"Act and prove in one call. The answer says verified yes / no / unknown, and `because` names the evidence that decided it.",why:'Only `reticle_act_and_wait` and `reticle_assert` produce a verdict. A drive that ends without one has no result, however many tools it used \u2014 and "unknown" is an honest answer, not a pass.',call:'reticle_act_and_wait { ref, action: "click", until: { signal: "order:placed" } }',anchor:Be.HUD}],dC=[{id:"hud-chat",title:"Agent Log",say:"Watch what your agent is doing in your app, as it happens, and which steps it proved.",anchor:Be.HUD_CHAT,tryIt:"Open it."},{id:"hud-flows",title:"Saved flows",say:"Every journey your agent verifies is saved here. Replay one with a click, with no agent in the loop.",anchor:Be.HUD_FLOWS,tryIt:"Open them."},{id:"hud-annotate",title:"Notes",say:"Open Notes, then click anywhere in your app to drop a numbered pin with a note. Hand the pins to your agent and it fixes them.",anchor:Be.HUD_ANNOTATE,tryIt:"Open Notes, then pin something in your app."},{id:"hud-impact",title:"What's the impact?",say:"Everything Reticle has done here. Every bug it caught, every metric.",anchor:Be.HUD_IMPACT,tryIt:"Take a look."},{id:"hud-settings",title:"Make it yours",say:"Change how Reticle looks and behaves.",anchor:Be.HUD_SETTINGS,tryIt:"Open it."}]});var MT=S(()=>{"use strict";uC()});function HT(){return[...$T.map(nG),{index:tG,title:"Get Started",body:"Paste one of these into Claude Code, Cursor, Codex, or whatever you use.",anchor:Be.NONE,prompts:cC}]}function Gu(t){return t.split("&").join("&amp;").split("<").join("&lt;").split(">").join("&gt;").split('"').join("&quot;")}function rG(t){return Gu(t).replace(/`([^`]+)`/g,'<code class="reticle-tour-code">$1</code>')}function UT(t,e){let n=t+e;return n<0?0:n>qh-1?qh-1:n}function gC(t,e,n){let r=Math.max(0,t.left),o=Math.max(0,t.top),a=Math.min(e,t.left+t.width),s=Math.min(n,t.top+t.height);return[{left:0,top:0,width:e,height:o},{left:0,top:s,width:e,height:n-s},{left:0,top:o,width:r,height:s-o},{left:a,top:o,width:e-a,height:s-o}].filter(d=>d.width>0&&d.height>0)}function EC(t){let e=HT().map(s=>`<span class="reticle-tour-dot${s.index===t.index?" is-on":""}" aria-hidden="true"></span>`).join(""),n=t.tryIt===void 0?"":`<p class="reticle-tour-try" ${Bo}="try">${Gu(t.tryIt)}</p>`,r=t.prompts===void 0?"":'<div class="reticle-tour-prompts">'+t.prompts.map((s,l)=>`<div class="reticle-tour-prompt" ${Bu}="${String(l)}"><span class="reticle-tour-prompt-label">${Gu(s.label)}</span><pre class="reticle-tour-prompt-text">${Gu(s.text)}</pre><button type="button" class="reticle-tour-copy" ${Bo}="copy" ${Bu}="${String(l)}">${PT}</button></div>`).join("")+"</div>",o=t.index===0?"":`<button type="button" class="reticle-tour-back" ${Bo}="back">Back</button>`,a=FT(t.index)?`<button type="button" class="reticle-tour-next" ${Bo}="done">Done</button>`:`<button type="button" class="reticle-tour-next" ${Bo}="next">Next</button>`;return`<div class="reticle-tour-card" role="dialog" aria-modal="false" aria-label="Reticle tour"><button type="button" class="reticle-tour-skip" ${Bo}="skip" aria-label="Skip the tour">Skip</button><p class="reticle-tour-step">Step ${String(t.index+1)} of ${String(qh)}</p><h2 class="reticle-tour-title">${Gu(t.title)}</h2><p class="reticle-tour-body">${rG(t.body)}</p>`+n+r+`<div class="reticle-tour-foot"><div class="reticle-tour-dots">${e}</div><div class="reticle-tour-nav">${o}${a}</div></div></div>`}var $T,tG,qh,de,Bo,Bu,PT,pC,fC,hC,nG,mC,FT,bC,TC=S(()=>{"use strict";MT();$T=[...lC.slice(0,1),...dC],tG=$T.length,qh=$T.length+1,de="data-reticle-tour",Bo="data-reticle-tour-target",Bu="data-reticle-tour-prompt",PT="Copy",pC="Copied",fC="Selected \u2014 press Ctrl/Cmd+C",hC=1600,nG=(t,e)=>{var n;return{index:e,title:t.title,body:t.say,anchor:(n=t.anchor)!=null?n:Be.NONE,...t.tryIt===void 0?{}:{tryIt:t.tryIt}}},mC=t=>t.tryIt!==void 0;FT=t=>t===qh-1;bC=`
1690
- [${de}]{position:fixed;inset:0;z-index:${String(2147483630)};pointer-events:none;
1680
+ ${sp.dockHtml(r,"",tT,eL,tL)}`,document.body.appendChild(n),f(this,Pe,n),f(this,ei,(o=n.querySelector("[data-reticle-glow]"))!=null?o:void 0),f(this,Na,(s=n.querySelector("[data-reticle-cursor]"))!=null?s:void 0),f(this,up,(a=n.querySelector("[data-reticle-ring]"))!=null?a:void 0),f(this,wa,(l=n.querySelector("[data-reticle-hud]"))!=null?l:void 0),f(this,Lr,(d=n.querySelector(".reticle-act"))!=null?d:void 0),f(this,Pl,(u=n.querySelector(".reticle-act-strip"))!=null?u:void 0),f(this,$l,(p=n.querySelector("[data-reticle-chat-pill-text]"))!=null?p:void 0),f(this,es,(h=n.querySelector("[data-reticle-chat-pill-time]"))!=null?h:void 0),f(this,ar,(m=n.querySelector(`[${tT}]`))!=null?m:void 0),f(this,Dr,(g=n.querySelector(`[${hm}]`))!=null?g:void 0),f(this,ti,(T=n.querySelector("[data-reticle-chip]"))!=null?T:void 0),f(this,Oa,(_=n.querySelector("[data-reticle-tally]"))!=null?_:void 0),c(this,we).mount(n),sm(n,nr(),!1),c(this,Dn).setElements(c(this,ei),c(this,Na)),c(this,Pn).mount(n,c(this,ei)),c(this,bp).mount(n),c(this,Bl)!==void 0&&f(this,Vl,m1(document,n,c(this,Bl))),this.setMode(c(this,Ul)),E(this,K,S1).call(this),E(this,K,Dl).call(this)}bindAnnotator(e){f(this,jl,e);let n=c(this,Pe);if(n===void 0)return;let r=n.querySelector(`[${Hh}]`),o=n.querySelector(`[${Uh}]`),s=n.querySelector(`[${Q0}]`),a=n.querySelector(`[${Fh}]`),l=n.querySelector(`[${Gh}]`),d={};l instanceof HTMLElement&&(d.copyRow=l);let u=e.markCount;d.onCount=p=>{u===0&&p>0&&c(this,we).openView("annotations"),u=p},d.onMarksChange=p=>c(this,we).paintAnnotations(p),a instanceof HTMLElement&&a.addEventListener("click",p=>{p.stopPropagation(),E(this,K,_1).call(this,e,a)}),r instanceof HTMLElement&&(d.markersBtn=r),o instanceof HTMLElement&&(d.clearBtn=o),s instanceof HTMLElement&&(d.countEl=s),e.attachChrome(d),e.setAccent(Bu(nr().statusThemeId).active),E(this,K,Ra).call(this)}destroy(){var e,n;c(this,Dn).teardown(),c(this,Vt)!==void 0&&_e(c(this,Vt)),f(this,Vt,void 0),(e=c(this,Vl))==null||e.call(this),f(this,Vl,void 0),c(this,we).teardown(),c(this,Pn).teardown(),f(this,kr,!1),f(this,ho,void 0),f(this,ar,void 0),f(this,Dr,void 0),f(this,cr,[]),dp([]),(n=c(this,Pe))==null||n.remove(),document.querySelectorAll("style[data-reticle-overlay]").forEach(r=>r.remove()),f(this,Pe,void 0)}sessionStart(){var e,n;if(this.state===$e.ENDED){E(this,K,x1).call(this);return}c(this,kr)||(rT===((e=c(this,Pe))==null?void 0:e.getAttribute(Ph))&&c(this,Pe).removeAttribute(Ph),f(this,kr,!0),(n=c(this,mp))!=null||f(this,mp,c(this,kn).call(this)),f(this,Ca,void 0),E(this,K,CS).call(this),c(this,Dn).resetActivity(c(this,kn).call(this)),E(this,K,LS).call(this),AS()&&c(this,we).openChat())}showUnreachable(e,n){var o,s,a,l;if(c(this,kr))return;(o=c(this,Pe))==null||o.setAttribute(Ph,rT);let r=(s=c(this,Pe))==null?void 0:s.querySelector("[data-reticle-dock]");r==null||r.setAttribute(tn,Wo),(a=c(this,wa))==null||a.setAttribute(tn,Wo),f(this,po,_w),E(this,K,Ji).call(this,c(this,po),!0),(l=c(this,Lr))==null||l.setAttribute("title",dh(e,n)),AS()&&c(this,we).openChat()}sessionEnd(){var n,r,o,s;if(!c(this,kr))return;f(this,kr,!1),c(this,Vt)!==void 0&&(_e(c(this,Vt)),f(this,Vt,void 0));let e=(n=c(this,Pe))==null?void 0:n.querySelector("[data-reticle-dock]");e==null||e.setAttribute(tn,$i),(r=c(this,wa))==null||r.setAttribute(tn,$i),c(this,we).collapse(),c(this,Ia)===ta.SESSION&&((o=c(this,ei))==null||o.setAttribute(tn,$i),(s=c(this,ei))==null||s.setAttribute(wu,Mh))}markActivity(){c(this,Dn).markActivity()}scheduleIdle(){c(this,Dn).scheduleIdle()}glowPhase(){return c(this,Dn).phase()}get mode(){return c(this,Ul)}setMode(e){var n,r;if(f(this,Ul,e),(n=c(this,Pe))==null||n.setAttribute("data-reticle-mode",e),c(this,ti)!==void 0){let o=P0[e];if(c(this,ti).setAttribute("data-mode",e),c(this,ti).replaceChildren(),o.length>0){let s=e===We.READING?Q.VIEW:e===We.ACTING?Q.POINTER:void 0;s!==void 0&&c(this,ti).appendChild(Qr(s,he.CHIP));let a=document.createElement("span");a.className="reticle-chip-label",a.textContent=o,c(this,ti).appendChild(a)}}e===We.READING&&((r=c(this,Na))==null||r.setAttribute(tn,$i))}status(e){this.markActivity(),c(this,es)!==void 0&&(c(this,es).textContent=_r.NOW),f(this,po,e),E(this,K,Ji).call(this,e,!1)}placeHud(e,n){let r=c(this,Pe);if(r===void 0)return c(this,Tp)?[Vx]:[];let o=[];if(yn.REMOVED===e)return f(this,Tp,!0),this.destroy(),[e];yn.HIDDEN===e&&r.setAttribute(Wc,"1"),yn.SHOWN===e&&r.removeAttribute(Wc),e!==void 0&&o.push(e);let s=r.querySelector(`[${M}]`);if(n!==void 0&&s instanceof HTMLElement){if(Qp.BOTTOM_RIGHT===n)Lu(s);else{let a=qc(s),l=n.endsWith("left")?0:window.innerWidth,d=n.startsWith("top")?0:window.innerHeight,u=Xc(l,d,a.width,a.height,window.innerWidth,window.innerHeight);Ui(s,u.left,u.top)}o.push(n),yr(s,r)}return o}setIdleEndMs(e){Number.isFinite(e)&&f(this,Gl,Math.max(X0,Math.floor(e)))}runState(){let e=t1({sessionId:c(this,hp),state:this.state,startMs:c(this,mp),endMs:c(this,Ca),now:c(this,kn).call(this),runLog:c(this,fo)}),n=nr();return n.outputDetail===vr.MINIMAL?{session:e.session,url:e.url,state:e.state,startedMs:e.startedMs,durationMs:e.durationMs,counts:e.counts}:n.outputDetail===vr.VERBOSE&&n.reactComponents?{...e,includeReactComponents:!0}:e}log(e,n,r,o,s=!1){var g;let a=c(this,kn).call(this);if(c(this,Dn).markActivity(a),f(this,fp,o),c(this,ar)===void 0)return;let l=n.trim();if(l.length===0)return;(g=c(this,ho))!=null||f(this,ho,a);let d=r!==void 0?{at:a-c(this,ho),kind:e,text:l,result:r}:{at:a-c(this,ho),kind:e,text:l};for(c(this,fo).push(d);c(this,fo).length>c(this,Tn);)c(this,fo).shift();let u=G0(a-c(this,ho)),p=E(this,K,DS).call(this,o,s).map(T=>Dh(T,e,l,u,c(this,Tn),o)),h={result:T=>p.forEach(_=>_.result(T))};r!==void 0&&h.result(r);let m={kind:e,text:l,ts:u,at:a-c(this,ho),...o===void 0?{}:{actor:o},...s?{summary:!0}:{},...r===void 0?{}:{result:r}};for(c(this,cr).push(m);c(this,cr).length>c(this,Tn);)c(this,cr).shift();return dp(c(this,cr)),E(this,K,w1).call(this,e),c(this,we).isCollapsed()&&c(this,we).pulseFab(!0),E(this,K,Dl).call(this),{result:T=>{h.result(T),d.result=T,m.result=T,dp(c(this,cr)),E(this,K,Dl).call(this)}}}narrate(e,n="info",r=Jt.AGENT,o=!1){let s=n==="info"?e:`[${n}] ${e}`;return this.log(ke.NARRATION,s,void 0,r,o)}setThrottled(e){var n;(n=c(this,Pe))==null||n.setAttribute(rI,e?"1":"0"),e&&c(this,Lr)!==void 0&&(c(this,Lr).textContent="Tab backgrounded - actions throttled. Bring tab to front or use `reticle drive`.")}async beforeAct(e,n,r){let o=X.resolve(e);if(this.status(`${uu(n)} ${r}`),!(o instanceof HTMLElement)){await vS(c(this,Ml));return}let s=o.getBoundingClientRect(),a=s.left+s.width/2,l=s.top+s.height/2;r1(c(this,Na),a,l),o1(c(this,up),s),await vS(c(this,Ml)),(L.CLICK===n||L.DBLCLICK===n||L.SUBMIT===n)&&i1(c(this,Pe),a,l)}};Ml=new WeakMap,Pe=new WeakMap,ei=new WeakMap,Na=new WeakMap,up=new WeakMap,wa=new WeakMap,Lr=new WeakMap,Pl=new WeakMap,$l=new WeakMap,es=new WeakMap,ti=new WeakMap,Oa=new WeakMap,Hl=new WeakMap,Ul=new WeakMap,kn=new WeakMap,Fl=new WeakMap,pp=new WeakMap,Ia=new WeakMap,Dn=new WeakMap,po=new WeakMap,fp=new WeakMap,Vt=new WeakMap,Gl=new WeakMap,hp=new WeakMap,mp=new WeakMap,Ca=new WeakMap,fo=new WeakMap,kr=new WeakMap,gp=new WeakMap,Tn=new WeakMap,ar=new WeakMap,Dr=new WeakMap,Ep=new WeakMap,ts=new WeakMap,bp=new WeakMap,cr=new WeakMap,ho=new WeakMap,Mn=new WeakMap,Bl=new WeakMap,Vl=new WeakMap,Pn=new WeakMap,we=new WeakMap,jl=new WeakMap,Tp=new WeakMap,K=new WeakSet,S1=function(){if(!(c(this,ar)===void 0||0<c(this,cr).length))for(let e of E1().slice(-c(this,Tn))){for(let n of E(this,K,DS).call(this,e.actor,e.summary===!0)){let r=Dh(n,e.kind,e.text,e.ts,c(this,Tn),e.actor);e.result!==void 0&&r.result(e.result)}f(this,ho,c(this,kn).call(this)-e.at),c(this,fo).push({at:e.at,kind:e.kind,text:e.text,...e.result===void 0?{}:{result:e.result}}),c(this,cr).push(e)}},_1=function(e,n){var o;let r=e.agentPrompt(window.location.href);(o=navigator.clipboard)==null||o.writeText(r).catch(()=>{}),n.setAttribute("data-copied","1"),oe(()=>n.removeAttribute("data-copied"),z4),nr().clearOnCopy&&e.clearAll()},Ra=function(){var n;let e=!c(this,we).isCollapsed()&&c(this,we).isAnnotateOn();(n=c(this,jl))==null||n.toggle(e),c(this,Pe)!==void 0&&sm(c(this,Pe),nr(),e)},CS=function(){var n,r,o;let e=(n=c(this,Pe))==null?void 0:n.querySelector("[data-reticle-dock]");e==null||e.setAttribute(tn,Wo),(r=c(this,wa))==null||r.setAttribute(tn,Wo),c(this,Ia)===ta.SESSION&&((o=c(this,ei))==null||o.setAttribute(tn,Wo))},x1=function(){c(this,Pn).setState($e.ACTIVE),f(this,Ca,void 0),E(this,K,CS).call(this),c(this,Dn).resetActivity(c(this,kn).call(this)),E(this,K,LS).call(this)},A1=function(e){var o;let n=c(this,Dr);if(e!==void 0&&e.runId!==c(this,Ep)&&(f(this,Ep,e.runId),n!==void 0&&kh(n)),n!==void 0&&n.childElementCount===0)for(let s of(o=e==null?void 0:e.lines)!=null?o:[])Dh(n,ke.NARRATION,s,"",c(this,Tn),Jt.HARNESS);let r=c(this,ts);f(this,ts,e==null?void 0:e.steps),e!==void 0?E(this,K,Ji).call(this,c(this,po),!1):r!==void 0&&E(this,K,Ji).call(this,_r.READY,!0)},Ji=function(e,n){var s;let r=c(this,ts)===void 0?e:_r.harnessTesting(c(this,ts));c(this,Lr)!==void 0&&(c(this,Lr).textContent=r,c(this,Lr).removeAttribute("title"));let o=n?"idle":"active";c(this,Pl)!==void 0&&c(this,Pl).setAttribute("data-liveness",o),(s=c(this,Pe))==null||s.setAttribute(Iu,o),c(this,$l)!==void 0&&(c(this,$l).textContent=n?c(this,po)!==""?c(this,po):_r.READY:r)},LS=function(){c(this,Vt)!==void 0&&_e(c(this,Vt));let e=()=>{E(this,K,y1).call(this),f(this,Vt,oe(e,c(this,Fl)))};f(this,Vt,oe(e,c(this,Fl)))},y1=function(){if(!c(this,kr)||c(this,Lr)===void 0||this.state===$e.ENDED)return;let e=c(this,kn).call(this)-c(this,Dn).lastActivityMs();if(e>=c(this,Gl)){E(this,K,v1).call(this,e);return}if(e<c(this,pp)||c(this,po)===""||c(this,ts)!==void 0)return;if(Jt.HARNESS===c(this,fp)){E(this,K,Ji).call(this,_r.READY,!0);return}let n=_r.SINCE_LAST;E(this,K,Ji).call(this,`${_r.PLANNING_PREFIX}${Nu(e)}${n}`,!0),c(this,es)!==void 0&&(c(this,es).textContent=Nu(e))},v1=function(e){f(this,Ca,c(this,kn).call(this)),c(this,Pn).setState($e.ENDED,`${_r.STOPPED_PREFIX}${Nu(e)} quiet`),E(this,K,Ji).call(this,_r.STOPPED,!1),c(this,Vt)!==void 0&&(_e(c(this,Vt)),f(this,Vt,void 0))},kS=function(){f(this,fo,[]),f(this,cr,[]),dp([]),f(this,Hl,{passes:0,fails:0}),c(this,ar)!==void 0&&kh(c(this,ar)),c(this,Dr)!==void 0&&kh(c(this,Dr)),E(this,K,Dl).call(this)},R1=function(){var e;(e=c(this,Pe))==null||e.setAttribute("data-reticle-hidden","1"),c(this,we).collapse()},N1=function(e){var n,r;(n=c(this,jl))==null||n.setAccent(Bu(e.statusThemeId).active),e.showTally?E(this,K,Dl).call(this):(r=c(this,Oa))==null||r.setAttribute("hidden",""),E(this,K,Ra).call(this)},DS=function(e,n){let r=c(this,ar),o=c(this,Dr);return Jt.HARNESS!==e||o===void 0?r===void 0?[]:[r]:n&&r!==void 0?[r,o]:[o]},w1=function(e){c(this,gp)||ke.HUMAN===e||(f(this,gp,!0),e1(nr().autoOpenChat)&&c(this,we).openChat())},Dl=function(){var e;if(!nr().showTally){(e=c(this,Oa))==null||e.setAttribute("hidden","");return}f(this,Hl,d1(c(this,Oa),c(this,fo),c(this,Hl)))},O1=function(){c(this,ar)!==void 0&&(Lh(c(this,ar),c(this,Tn)),c(this,Dr)!==void 0&&Lh(c(this,Dr),c(this,Tn)))}});var Ve,L1,k1,D1,M1=S(()=>{"use strict";Ve={NONE:"none",HUD:"hud",APP:"app",HUD_CHAT:"hud-chat",HUD_FLOWS:"hud-flows",HUD_ANNOTATE:"hud-annotate",HUD_IMPACT:"hud-impact",HUD_SETTINGS:"hud-settings"},L1=[{label:"Verify one flow",text:"verify the login flow with Reticle, and tell me the verdict"},{label:"Check what is proved",text:"/reticle"},{label:"Let it loose",text:"monkey-test the checkout flow with Reticle and tell me what breaks"}],k1=[{id:"connect",title:"Yayyy! It is connected",say:"That panel is Reticle. Seeing it is your proof the SDK is connected to your app.",why:"It only mounts on a connected session, so it cannot show up without one. Having the tools is not the same as being set up.",call:'reticle_session { action: "list" }',anchor:Ve.HUD},{id:"look",title:"Look, without pixels",say:"Take a semantic snapshot. You get the controls and their refs, not pixels, so you can point at things by name.",why:"A ref is stable across snapshots, which is what lets you plan several steps before spending any of them.",call:'reticle_look { action: "page" }',anchor:Ve.APP},{id:"declare",title:"Say it first",say:'Decide what should happen BEFORE you touch anything. "Clicking Pay makes the receipt appear" is a claim that can be wrong.',why:"This is the whole idea. A consequence named first is a check; the same sentence written after the fact is a rationalisation, and it is the difference between a verdict and a story.",call:'until: { signal: "order:placed" } // a consequence \u2014 not until: { ms: 500 }',anchor:Ve.NONE},{id:"verdict",title:"Act, and prove it",say:"Act and prove in one call. The answer says verified yes / no / unknown, and `because` names the evidence that decided it.",why:'Only `reticle_act_and_wait` and `reticle_assert` produce a verdict. A drive that ends without one has no result, however many tools it used \u2014 and "unknown" is an honest answer, not a pass.',call:'reticle_act_and_wait { ref, action: "click", until: { signal: "order:placed" } }',anchor:Ve.HUD}],D1=[{id:"hud-chat",title:"Agent Log",say:"Watch what your agent is doing in your app, as it happens, and which steps it proved.",anchor:Ve.HUD_CHAT,tryIt:"Open it."},{id:"hud-flows",title:"Saved flows",say:"Every journey your agent verifies is saved here. Replay one with a click, with no agent in the loop.",anchor:Ve.HUD_FLOWS,tryIt:"Open them."},{id:"hud-annotate",title:"Notes",say:"Open Notes, then click anywhere in your app to drop a numbered pin with a note. Hand the pins to your agent and it fixes them.",anchor:Ve.HUD_ANNOTATE,tryIt:"Open Notes, then pin something in your app."},{id:"hud-impact",title:"What's the impact?",say:"Everything Reticle has done here. Every bug it caught, every metric.",anchor:Ve.HUD_IMPACT,tryIt:"Take a look."},{id:"hud-settings",title:"Make it yours",say:"Change how Reticle looks and behaves.",anchor:Ve.HUD_SETTINGS,tryIt:"Open it."}]});var MS=S(()=>{"use strict";M1()});function HS(){return[...PS.map(X4),{index:Y4,title:"Get Started",body:"Paste one of these into Claude Code, Cursor, Codex, or whatever you use.",anchor:Ve.NONE,prompts:L1}]}function Sp(t){return t.split("&").join("&amp;").split("<").join("&lt;").split(">").join("&gt;").split('"').join("&quot;")}function q4(t){return Sp(t).replace(/`([^`]+)`/g,'<code class="reticle-tour-code">$1</code>')}function US(t,e){let n=t+e;return n<0?0:n>Fm-1?Fm-1:n}function F1(t,e,n){let r=Math.max(0,t.left),o=Math.max(0,t.top),s=Math.min(e,t.left+t.width),a=Math.min(n,t.top+t.height);return[{left:0,top:0,width:e,height:o},{left:0,top:a,width:e,height:n-a},{left:0,top:o,width:r,height:a-o},{left:s,top:o,width:e-s,height:a-o}].filter(d=>d.width>0&&d.height>0)}function G1(t){let e=HS().map(a=>`<span class="reticle-tour-dot${a.index===t.index?" is-on":""}" aria-hidden="true"></span>`).join(""),n=t.tryIt===void 0?"":`<p class="reticle-tour-try" ${ni}="try">${Sp(t.tryIt)}</p>`,r=t.prompts===void 0?"":'<div class="reticle-tour-prompts">'+t.prompts.map((a,l)=>`<div class="reticle-tour-prompt" ${_p}="${String(l)}"><span class="reticle-tour-prompt-label">${Sp(a.label)}</span><pre class="reticle-tour-prompt-text">${Sp(a.text)}</pre><button type="button" class="reticle-tour-copy" ${ni}="copy" ${_p}="${String(l)}">${$S}</button></div>`).join("")+"</div>",o=t.index===0?"":`<button type="button" class="reticle-tour-back" ${ni}="back">Back</button>`,s=FS(t.index)?`<button type="button" class="reticle-tour-next" ${ni}="done">Done</button>`:`<button type="button" class="reticle-tour-next" ${ni}="next">Next</button>`;return`<div class="reticle-tour-card" role="dialog" aria-modal="false" aria-label="Reticle tour"><button type="button" class="reticle-tour-skip" ${ni}="skip" aria-label="Skip the tour">Skip</button><p class="reticle-tour-step">Step ${String(t.index+1)} of ${String(Fm)}</p><h2 class="reticle-tour-title">${Sp(t.title)}</h2><p class="reticle-tour-body">${q4(t.body)}</p>`+n+r+`<div class="reticle-tour-foot"><div class="reticle-tour-dots">${e}</div><div class="reticle-tour-nav">${o}${s}</div></div></div>`}var PS,Y4,Fm,pe,ni,_p,$S,P1,$1,H1,X4,U1,FS,B1,V1=S(()=>{"use strict";MS();PS=[...k1.slice(0,1),...D1],Y4=PS.length,Fm=PS.length+1,pe="data-reticle-tour",ni="data-reticle-tour-target",_p="data-reticle-tour-prompt",$S="Copy",P1="Copied",$1="Selected \u2014 press Ctrl/Cmd+C",H1=1600,X4=(t,e)=>{var n;return{index:e,title:t.title,body:t.say,anchor:(n=t.anchor)!=null?n:Ve.NONE,...t.tryIt===void 0?{}:{tryIt:t.tryIt}}},U1=t=>t.tryIt!==void 0;FS=t=>t===Fm-1;B1=`
1681
+ [${pe}]{position:fixed;inset:0;z-index:${String(2147483630)};pointer-events:none;
1691
1682
  font:13px/1.55 ui-sans-serif,system-ui,-apple-system,Segoe UI,Roboto,sans-serif;}
1692
- [${de}] .reticle-tour-scrim{position:absolute;inset:0;background:rgba(6,8,14,.55);
1683
+ [${pe}] .reticle-tour-scrim{position:absolute;inset:0;background:rgba(6,8,14,.55);
1693
1684
  backdrop-filter:blur(1.5px);pointer-events:auto;z-index:0;}
1694
1685
  /* Blocks the click everywhere the hole is not. Same job as the scrim, minus the one rectangle the
1695
1686
  slide is inviting somebody to press. */
1696
- [${de}] .reticle-tour-blocker{position:absolute;pointer-events:auto;z-index:0;}
1687
+ [${pe}] .reticle-tour-blocker{position:absolute;pointer-events:auto;z-index:0;}
1697
1688
  /* Ringed slides dim through the ring's own 9999px shadow, which leaves a hole over the thing being
1698
1689
  pointed at. The scrim would cover that hole -- dimming the HUD the slide is ABOUT, and washing
1699
1690
  the page twice (~80% rather than 55%).
@@ -1701,7 +1692,7 @@ ${sI}`});function EI(){let t=Ee(Y.REMOVE,pe.MIN);return`<div ${w} class="reticle
1701
1692
  VISIBLY blocking: reported from the field on 3.1.0 by several users, one of whom removed the
1702
1693
  plugin, because a cleared scrim went on eating every press on a page that looked lit and
1703
1694
  reachable. An overlay that looks transparent and behaves opaque reads as the app being broken. */
1704
- [${de}] .reticle-tour-scrim.is-clear{background:transparent;backdrop-filter:none;
1695
+ [${pe}] .reticle-tour-scrim.is-clear{background:transparent;backdrop-filter:none;
1705
1696
  pointer-events:none;}
1706
1697
  /* Above the ring, and the z-index is the whole point.
1707
1698
  The ring is appended after the card, and both are positioned with an auto z-index, so the ring
@@ -1709,58 +1700,58 @@ ${sI}`});function EI(){let t=Ee(Y.REMOVE,pe.MIN);return`<div ${w} class="reticle
1709
1700
  card as well. On every ringed slide the card was washed at 55% and read as sitting BEHIND the page
1710
1701
  it was drawn over. The ring must stay above the scrim and below the card; saying so explicitly is
1711
1702
  the fix, because DOM order alone cannot express "between these two". */
1712
- [${de}] .reticle-tour-card{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);
1703
+ [${pe}] .reticle-tour-card{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);
1713
1704
  width:min(430px,calc(100vw - 32px));box-sizing:border-box;pointer-events:auto;z-index:3;
1714
1705
  background:#14161d;color:#e8eaf0;border:1px solid #2b303d;border-radius:14px;padding:20px 20px 16px;
1715
1706
  box-shadow:0 24px 60px rgba(0,0,0,.5);}
1716
- [${de}] .reticle-tour-skip{position:absolute;top:10px;right:12px;background:none;border:0;
1707
+ [${pe}] .reticle-tour-skip{position:absolute;top:10px;right:12px;background:none;border:0;
1717
1708
  color:#8a93a6;font:inherit;font-size:12px;cursor:pointer;padding:4px 6px;border-radius:6px;}
1718
- [${de}] .reticle-tour-skip:hover{color:#e8eaf0;background:rgba(255,255,255,.06);}
1719
- [${de}] .reticle-tour-step{margin:0 0 6px;font-size:11px;letter-spacing:.06em;
1709
+ [${pe}] .reticle-tour-skip:hover{color:#e8eaf0;background:rgba(255,255,255,.06);}
1710
+ [${pe}] .reticle-tour-step{margin:0 0 6px;font-size:11px;letter-spacing:.06em;
1720
1711
  text-transform:uppercase;color:#7f8798;}
1721
- [${de}] .reticle-tour-title{margin:0 0 8px;font-size:18px;line-height:1.25;font-weight:650;
1712
+ [${pe}] .reticle-tour-title{margin:0 0 8px;font-size:18px;line-height:1.25;font-weight:650;
1722
1713
  color:#f2f4f8;}
1723
- [${de}] .reticle-tour-body{margin:0 0 10px;color:#c9cedb;}
1714
+ [${pe}] .reticle-tour-body{margin:0 0 10px;color:#c9cedb;}
1724
1715
  /* A call named inside a sentence. Sets its own colour for the reason every other text class does:
1725
1716
  an inherited one loses to any direct element selector in the host app. */
1726
- [${de}] .reticle-tour-code{padding:1px 5px;border-radius:5px;background:#0c0e14;
1717
+ [${pe}] .reticle-tour-code{padding:1px 5px;border-radius:5px;background:#0c0e14;
1727
1718
  border:1px solid #232834;color:#9fb6ff;
1728
1719
  font:11.5px/1.45 ui-monospace,SFMono-Regular,Menlo,monospace;overflow-wrap:anywhere;}
1729
- [${de}] .reticle-tour-try{margin:0 0 12px;padding:8px 10px;border-radius:8px;
1720
+ [${pe}] .reticle-tour-try{margin:0 0 12px;padding:8px 10px;border-radius:8px;
1730
1721
  background:rgba(99,102,241,.1);border:1px solid rgba(99,102,241,.32);color:#c7cbff;
1731
1722
  font-size:12.5px;font-weight:550;}
1732
- [${de}] .reticle-tour-prompts{display:flex;flex-direction:column;gap:8px;margin:0 0 12px;}
1733
- [${de}] .reticle-tour-prompt{display:grid;gap:6px;padding:9px 10px;border-radius:8px;
1723
+ [${pe}] .reticle-tour-prompts{display:flex;flex-direction:column;gap:8px;margin:0 0 12px;}
1724
+ [${pe}] .reticle-tour-prompt{display:grid;gap:6px;padding:9px 10px;border-radius:8px;
1734
1725
  background:#0c0e14;border:1px solid #232834;
1735
1726
  grid-template-columns:1fr auto;grid-template-areas:"label copy" "text text";align-items:center;}
1736
- [${de}] .reticle-tour-prompt-label{grid-area:label;color:#8a93a6;font-size:11px;
1727
+ [${pe}] .reticle-tour-prompt-label{grid-area:label;color:#8a93a6;font-size:11px;
1737
1728
  letter-spacing:.05em;text-transform:uppercase;}
1738
- [${de}] .reticle-tour-prompt-text{grid-area:text;width:100%;box-sizing:border-box;margin:0;
1729
+ [${pe}] .reticle-tour-prompt-text{grid-area:text;width:100%;box-sizing:border-box;margin:0;
1739
1730
  white-space:pre-wrap;overflow-wrap:anywhere;color:#c9cedb;
1740
1731
  font:12px/1.5 ui-monospace,SFMono-Regular,Menlo,monospace;}
1741
- [${de}] .reticle-tour-copy{grid-area:copy;padding:5px 10px;border-radius:6px;
1732
+ [${pe}] .reticle-tour-copy{grid-area:copy;padding:5px 10px;border-radius:6px;
1742
1733
  border:1px solid #2b303d;background:transparent;color:#c9cedb;font:inherit;font-size:11.5px;
1743
1734
  font-weight:600;cursor:pointer;white-space:nowrap;}
1744
- [${de}] .reticle-tour-copy:hover{background:rgba(255,255,255,.07);color:#fff;}
1735
+ [${pe}] .reticle-tour-copy:hover{background:rgba(255,255,255,.07);color:#fff;}
1745
1736
  /* The flash that tells somebody the click did something. Colour AND text: colour alone is not an
1746
1737
  answer for the people who cannot see the difference. */
1747
- [${de}] .reticle-tour-copy.is-done{background:#16a34a;border-color:#16a34a;color:#fff;}
1748
- [${de}] .reticle-tour-copy.is-manual{background:#b45309;border-color:#b45309;color:#fff;}
1749
- [${de}] .reticle-tour-foot{display:flex;align-items:center;justify-content:space-between;gap:12px;}
1750
- [${de}] .reticle-tour-dots{display:flex;gap:6px;}
1751
- [${de}] .reticle-tour-dot{width:6px;height:6px;border-radius:50%;background:#333a49;}
1752
- [${de}] .reticle-tour-dot.is-on{background:#6366f1;}
1753
- [${de}] .reticle-tour-nav{display:flex;gap:8px;}
1754
- [${de}] .reticle-tour-back,[${de}] .reticle-tour-next{padding:8px 14px;border-radius:8px;
1738
+ [${pe}] .reticle-tour-copy.is-done{background:#16a34a;border-color:#16a34a;color:#fff;}
1739
+ [${pe}] .reticle-tour-copy.is-manual{background:#b45309;border-color:#b45309;color:#fff;}
1740
+ [${pe}] .reticle-tour-foot{display:flex;align-items:center;justify-content:space-between;gap:12px;}
1741
+ [${pe}] .reticle-tour-dots{display:flex;gap:6px;}
1742
+ [${pe}] .reticle-tour-dot{width:6px;height:6px;border-radius:50%;background:#333a49;}
1743
+ [${pe}] .reticle-tour-dot.is-on{background:#6366f1;}
1744
+ [${pe}] .reticle-tour-nav{display:flex;gap:8px;}
1745
+ [${pe}] .reticle-tour-back,[${pe}] .reticle-tour-next{padding:8px 14px;border-radius:8px;
1755
1746
  font:inherit;font-weight:600;cursor:pointer;border:1px solid #2b303d;background:transparent;color:#c9cedb;}
1756
- [${de}] .reticle-tour-next{background:#6366f1;border-color:#6366f1;color:#fff;}
1757
- [${de}] .reticle-tour-next:hover{filter:brightness(1.08);}
1758
- [${de}] .reticle-tour-back:hover{background:rgba(255,255,255,.06);color:#e8eaf0;}
1759
- [${de}] .reticle-tour-ring{position:absolute;border-radius:14px;pointer-events:none;z-index:1;
1747
+ [${pe}] .reticle-tour-next{background:#6366f1;border-color:#6366f1;color:#fff;}
1748
+ [${pe}] .reticle-tour-next:hover{filter:brightness(1.08);}
1749
+ [${pe}] .reticle-tour-back:hover{background:rgba(255,255,255,.06);color:#e8eaf0;}
1750
+ [${pe}] .reticle-tour-ring{position:absolute;border-radius:14px;pointer-events:none;z-index:1;
1760
1751
  box-shadow:0 0 0 3px #6366f1,0 0 0 9999px rgba(6,8,14,.55);transition:all .25s ease;}
1761
1752
  /* A ring somebody is being asked to press, rather than to look at: it pulses, so the invitation in
1762
1753
  the prose has something on the page agreeing with it. */
1763
- [${de}] .reticle-tour-ring.is-live{animation:reticle-tour-pulse 1.8s ease-in-out infinite;}
1754
+ [${pe}] .reticle-tour-ring.is-live{animation:reticle-tour-pulse 1.8s ease-in-out infinite;}
1764
1755
  @keyframes reticle-tour-pulse{
1765
1756
  0%,100%{box-shadow:0 0 0 3px #6366f1,0 0 0 9999px rgba(6,8,14,.55);}
1766
1757
  50%{box-shadow:0 0 0 6px rgba(99,102,241,.55),0 0 0 9999px rgba(6,8,14,.55);}
@@ -1769,13 +1760,13 @@ ${sI}`});function EI(){let t=Ee(Y.REMOVE,pe.MIN);return`<div ${w} class="reticle
1769
1760
  something small and wrong for the app: the hole becomes the whole viewport, the dimming
1770
1761
  disappears, and the card is left competing with a fully lit page while the ring edges sit off at
1771
1762
  the margins pointing at nothing. An outline says "all of this" without turning the lights on. */
1772
- [${de}] .reticle-tour-ring.is-region{box-shadow:none;border:2px dashed #7c83f5;
1763
+ [${pe}] .reticle-tour-ring.is-region{box-shadow:none;border:2px dashed #7c83f5;
1773
1764
  background:rgba(99,102,241,.06);}
1774
1765
  @media (prefers-reduced-motion:reduce){
1775
- [${de}] .reticle-tour-ring{transition:none;}
1766
+ [${pe}] .reticle-tour-ring{transition:none;}
1776
1767
  }
1777
- `});var AC={};bs(AC,{HUD_CONTROL_SELECTORS:()=>SC,TOUR_SEEN_KEY_PREFIX:()=>kp,isLastSlide:()=>FT,mountTour:()=>lG,openedByReticle:()=>_C,safeLocalStorage:()=>dG,tourAlreadySeen:()=>xC,tourSeenKey:()=>GT});function aG(t,e){var s;let n=Number.POSITIVE_INFINITY,r=Number.POSITIVE_INFINITY,o=Number.NEGATIVE_INFINITY,a=Number.NEGATIVE_INFINITY;for(let l of e){let d=(s=t.querySelector(l))==null?void 0:s.getBoundingClientRect();d===void 0||d.width<=0||d.height<=0||(n=Math.min(n,d.left),r=Math.min(r,d.top),o=Math.max(o,d.left+d.width),a=Math.max(a,d.top+d.height))}if(o!==Number.NEGATIVE_INFINITY)return{left:n,top:r,width:o-n,height:a-r}}function sG(t,e){var r;if(Be.HUD===e)return aG(t,iG);let n=SC[e];if(n!==void 0){let o=(r=t.querySelector(n))==null?void 0:r.getBoundingClientRect();return o===void 0?void 0:o}if(Be.APP===e)for(let o of oG){let a=t.querySelector(o);if(a===null)continue;let s=a.getBoundingClientRect();if(s.width>0)return s}}function _C(t){if(t===void 0||t==="")return!1;let e=new URLSearchParams(t.startsWith("?")?t.slice(1):t);return e.has($n.OPENED)||e.has($n.SESSION)||e.has($n.PROJECT)}function xC(t,e){if(t===void 0)return!0;try{return t.getItem(GT(e))!==null}catch{return!0}}function cG(t,e){try{t==null||t.setItem(GT(e),"1")}catch{}}function lG(t){var y;if(t.isDriving()||_C(t.search)||((y=t.navigator)==null?void 0:y.webdriver)===!0||xC(t.storage,t.projectId))return;let e=t.document,n=e.createElement("style");n.setAttribute(de,""),n.textContent=bC,e.head.appendChild(n);let r=e.createElement("div");r.setAttribute(de,"");let o=HT(),a=0,s=!0,l=()=>{},d=()=>{},u=()=>{s&&(s=!1,l(),d(),r.remove(),n.remove())},p=()=>{s&&(cG(t.storage,t.projectId),u())},f=()=>{t.isDriving()&&u()},m=()=>{var v,O,B,oe;let A=o[a];if(A!==void 0&&(r.innerHTML=`<div class="reticle-tour-scrim"></div>${EC(A)}`,Be.NONE!==A.anchor)){let ce=sG(e,A.anchor);if(ce!==void 0&&ce.width>0){let he=Be.APP===A.anchor,Ie=e.createElement("div");Ie.className=he?"reticle-tour-ring is-region":"reticle-tour-ring";let Ge=he?-2:6;if(Ie.style.left=`${String(Math.round(ce.left-Ge))}px`,Ie.style.top=`${String(Math.round(ce.top-Ge))}px`,Ie.style.width=`${String(Math.round(ce.width+Ge*2))}px`,Ie.style.height=`${String(Math.round(ce.height+Ge*2))}px`,r.appendChild(Ie),he||(v=r.querySelector(".reticle-tour-scrim"))==null||v.classList.add("is-clear"),mC(A)){Ie.classList.add("is-live"),(O=r.querySelector(".reticle-tour-scrim"))==null||O.remove();let mn=e.defaultView;for(let Cn of gC({left:ce.left-Ge,top:ce.top-Ge,width:ce.width+Ge*2,height:ce.height+Ge*2},(B=mn==null?void 0:mn.innerWidth)!=null?B:e.documentElement.clientWidth,(oe=mn==null?void 0:mn.innerHeight)!=null?oe:e.documentElement.clientHeight)){let pt=e.createElement("div");pt.className="reticle-tour-blocker",pt.style.left=`${String(Math.round(Cn.left))}px`,pt.style.top=`${String(Math.round(Cn.top))}px`,pt.style.width=`${String(Math.round(Cn.width))}px`,pt.style.height=`${String(Math.round(Cn.height))}px`,r.appendChild(pt)}}}}},g=A=>{var Ie,Ge;let v=o[a],O=Number(A.getAttribute(Bu)),B=(Ie=v==null?void 0:v.prompts)==null?void 0:Ie[O];if(B===void 0)return;let oe=(mn,Cn)=>{var pt;A.textContent=mn,A.classList.add(Cn),(pt=e.defaultView)==null||pt.setTimeout(()=>{A.textContent=PT,A.classList.remove(Cn)},hC)},ce=mn=>{var pt;if(mn){oe(pC,"is-done");return}let Cn=r.querySelector(`.reticle-tour-prompt[${Bu}="${String(O)}"] .reticle-tour-prompt-text`);Cn!==null&&((pt=t.select)==null||pt.call(t,Cn)),oe(fC,"is-manual")},he=(Ge=t.copy)==null?void 0:Ge.call(t,B.text);if(he===void 0){ce(!1);return}if(typeof he=="boolean"){ce(he);return}he.then(ce).catch(()=>{ce(!1)})};r.addEventListener("click",A=>{let v=A.target;if(!(v instanceof Element))return;let O=v.closest(`[${Bo}]`);if(O===null)return;let B=O.getAttribute(Bo);if(B===null)return;if(A.preventDefault(),A.stopPropagation(),B==="skip"||B==="done"){p();return}if(B==="copy"){g(O);return}let oe=UT(a,B==="back"?-1:1);oe!==a&&(a=oe,m())});let T=A=>{if(!s||Ip(e))return;let v=A.key==="ArrowRight"?1:A.key==="ArrowLeft"?-1:0;if(A.key==="Escape"){A.preventDefault(),p();return}if(v===0)return;let O=UT(a,v);O!==a&&(A.preventDefault(),a=O,m())};e.addEventListener("keydown",T),l=()=>{e.removeEventListener("keydown",T)},m(),e.body.appendChild(r);let _=e.querySelector("[data-reticle-overlay]");if(_!==null){let A=new MutationObserver(f);A.observe(_,{attributes:!0,attributeFilter:["data-reticle-mode"]}),d=()=>A.disconnect(),f()}return{destroy:p,isOpen:()=>s}}function dG(){try{return window.localStorage}catch{return}}var oG,iG,SC,GT,yC=S(()=>{"use strict";TC();MT();H();at();Lr();oG=["main","#root","#app"],iG=["[data-reticle-hud]","[data-reticle-chat-panel]"];SC={[Be.HUD_CHAT]:"[data-reticle-chat-toggle]",[Be.HUD_FLOWS]:'[data-reticle-chat-view-btn="flows"]',[Be.HUD_ANNOTATE]:'[data-reticle-chat-view-btn="annotations"]',[Be.HUD_IMPACT]:"[data-reticle-chat-impact]",[Be.HUD_SETTINGS]:"[data-reticle-settings-btn]"};GT=t=>`${kp}${t}`});var yG={};bs(yG,{Annotator:()=>Da,RefRegistry:()=>id,Reticle:()=>Ll,SESSION_AUTO:()=>Wl,adapterNames:()=>_d,buildSnapshot:()=>Kp,canvasChartData:()=>CA,commitAndSignal:()=>KC,createReticleEmitter:()=>jC,describe:()=>Mr,elementHasHoverHandlers:()=>Jp,executeAction:()=>wd,executeSequence:()=>gf,getAccessibleName:()=>Ne,getCapabilities:()=>si,getRole:()=>xe,getStates:()=>go,hasCapabilities:()=>Zp,identifyComponent:()=>$r,inspectChart:()=>Hp,installAnnotator:()=>rw,isVisible:()=>Gt,jotaiStore:()=>$C,markAdapterSource:()=>zp,matchQuery:()=>xd,mobxStore:()=>UC,piniaStore:()=>BC,pushStore:()=>VC,readComponentState:()=>Qp,readStores:()=>Ty,readStoresWithTruncation:()=>Sd,recoilStore:()=>FC,refs:()=>J,registerAdapter:()=>Ny,registerCapabilities:()=>tc,registerReticleDomain:()=>WC,registerStore:()=>gy,resolveMarkAnchor:()=>Gd,reticle:()=>Qh,runQuery:()=>nf,setCapabilitiesListener:()=>qp,setIgnoreSelectors:()=>dA,sourceOwner:()=>_y,storeNames:()=>ai,svelteStore:()=>GC,tanstackQueryStore:()=>MC,unregisterStore:()=>Ey,valtioStore:()=>HC,xstateStore:()=>PC});at();H();Bt();Un();var p2=new Set(["submit","button","reset","image"]);function f2(t){return Ze(t)&&t.isContentEditable||t instanceof HTMLTextAreaElement?!0:t instanceof HTMLInputElement?!p2.has(t.type.toLowerCase()):!1}var h2="A",m2=/^\s*(#.*|javascript:.*)?$/i;function g2(t){if(h2!==t.tagName)return;let e=t.getAttribute("href");return e===null||m2.test(e)?void 0:e}function gd(t){var o,a,s,l,d,u;let e=g2(t);if(e!==void 0)return e;let n=t.closest("form"),r=f2(t)?["",""]:[(o=t.textContent)!=null?o:"",(a=t.getAttribute("value"))!=null?a:""];return[Ne(t),...r,(s=t.getAttribute("title"))!=null?s:"",(l=t.getAttribute("aria-label"))!=null?l:"",(d=t.getAttribute("href"))!=null?d:"",(u=n==null?void 0:n.getAttribute("action"))!=null?u:""].join(" ")}var E2='button[type="submit"], input[type="submit"], button:not([type]):not([type=""])';function jA(t){var n;let e=(n=t.closest("form"))==null?void 0:n.querySelector(E2);return Ze(e)?e:null}function Bp(t,e){return z_(t,e)}var Pg;function Hg(t){Pg=t}function KA(t){if(Pg!==void 0)for(let e of t){if(e===null)continue;let n=Y_(gd(e),xe(e));if(n!==void 0&&!Pg.includes(n))throw new Error(X_(n))}}H();on();var WA=(t,e)=>Array.from(t.querySelectorAll(e)).some(n=>n.closest(Xl)===null);function zA(t){return[...WA(t,`[${Ds}]`)?[pa.SOURCE]:[],...WA(t,rr())?[pa.TESTID]:[]]}function YA(t){return t.buildPlugin||0<t.adapters.length||t.markers.includes(pa.SOURCE)?[]:[bp]}H();Lr();var XA=st.SESSION;function qA(t,e,n){var l;let r=()=>{try{let d=e==null?void 0:e.getItem(XA);return d!=null&&d.length>0?d:void 0}catch{return}},o=d=>{try{e==null||e.setItem(XA,d)}catch{}},a=t!==void 0&&t.length>0?t:void 0,s=(l=a!=null?a:r())!=null?l:n();return o(s),s}Rt();var b2="vite:afterUpdate",T2=3,S2="no longer resolves to an element",_2="the code changed underneath it";function Ug(t){return t!==null&&typeof t=="object"?t:void 0}function x2(t){var e;return typeof((e=Ug(t))==null?void 0:e.on)=="function"}function A2(t){var r,o;let e=(r=Ug(t))==null?void 0:r.updates;if(!Array.isArray(e))return[];let n=[];for(let a of e){let s=(o=Ug(a))==null?void 0:o.path;typeof s=="string"&&s.length>0&&!n.includes(s)&&n.push(s)}return n}var Ed,Qs,Js,Fg=class{constructor(e){b(this,Ed,0);b(this,Qs,[]);b(this,Js);h(this,Js,e)}get current(){return c(this,Ed)}observe(e){x2(e)&&e.on(b2,n=>this.applied(A2(n)))}applied(e){h(this,Ed,c(this,Ed)+1),h(this,Qs,e.slice(0,T2)),c(this,Js).markEdited()}staleRefMessage(e){let n=`ref '${ga(e)}' ${S2}`;if(!c(this,Js).mintedBeforeLastEdit(e))return n;let r=c(this,Qs).length===0?"the page hot-updated":`${c(this,Qs).join(", ")} hot-updated`;return`${n} \u2014 ${r} after this ref was taken, so ${_2} and the framework replaced the node. Query again for a fresh ref: this is your own edit landing, not the app failing.`}};Ed=new WeakMap,Qs=new WeakMap,Js=new WeakMap;var bd=new Fg(J);H();H();Ys();Un();Bt();Rt();at();var jp=new Set(["button","link","textbox","searchbox","checkbox","radio","combobox","listbox","slider","spinbutton","switch","tab","menuitem","option"]),y2=new Set(["script","style","noscript","template","head","meta","link"]),v2=new Set(["alert","status"]);function JA(t,e){if(v2.has(e))return!0;let n=t.getAttribute("aria-live");return n!==null&&n!=="off"}var ZA=80;function R2(t){let e=ey(t),n=(e.own?e.text:"").replace(/\s+/g," ").trim();return n.length>ZA?`${n.slice(0,ZA)}\u2026`:n}function ey(t){var r,o;let e="",n=!1;for(let a of t.childNodes)if(a.nodeType===3)e+=(r=a.textContent)!=null?r:"",n||(n=0<((o=a.textContent)!=null?o:"").trim().length);else if(an(a)&&ny(a)){let s=ey(a);e+=s.text,n||(n=s.own)}else an(a)&&ty(a)&&jp.has(xe(a))&&(e+=Ne(a));return{text:e,own:n}}function ty(t){let e=t.ownerDocument.defaultView,n=t.parentElement;if(e===null||n===null)return!1;let r=e.getComputedStyle(n).display;return r.includes("flex")||r.includes("grid")?!1:e.getComputedStyle(t).display==="inline"}function ny(t){if(oy(t)||!ty(t))return!1;let e=xe(t);return!jp.has(e)&&!JA(t,e)&&Ne(t).length===0}var N2=50;function ry(t){return t.getAttribute("aria-hidden")==="true"?!0:t instanceof HTMLElement&&t.hidden}function oy(t){return y2.has(t.tagName.toLowerCase())||rn(t)?!0:ry(t)}function w2(t){let e=go(t).filter(n=>n===fe.DISABLED||n===fe.CHECKED||n===fe.EXPANDED||n===fe.PRESSED||n===fe.FOCUSED);return e.length>0?` [${e.join(",")}]`:""}function O2(t,e,n,r,o,a=""){let s=" ".repeat(e),l=Mg(t),d=r,u=d.length>0?` "${d}"`:"",p=jp.has(n)||d.length>0?` (ref=${J.refFor(t)})`:"",f=l!==void 0&&l.length>0?` [value="${l}"]`:"",m=o.length>0?` [${o}]`:"",g=a.length>0?` [text="${a}"]`:"";return`${s}- ${n}${u}${p}${f}${g}${m}${w2(t)}`}function I2(t,e){return`${" ".repeat(t)}- text "${e}"`}function C2(t){if(t===null)return"";let e=t.display;if(e==="grid"||e==="inline-grid"){let n=t.gridTemplateColumns;return n!==""&&n!=="none"?`grid-cols:${n}`:"grid"}return""}var iy=t=>t.hasAttribute("data-aria-hidden")&&t.getAttribute("aria-hidden")==="true";function QA(t,e){for(let n of t){if(e.unread.length>=N2){e.unreadOverflow=!0;return}e.unread.push(J.refFor(n))}}function L2(t){var r,o;let e=[...t.children],n=(r=t.shadowRoot)!=null?r:zs(t);if(n!==null&&e.push(...n.children),Lp(t))try{let a=(o=t.contentDocument)==null?void 0:o.body;a!=null&&e.push(...a.children)}catch{}return e}function Gg(t,e,n,r){if(!(n.throughOverlay===!0&&iy(t)&&!rn(t)&&!(t instanceof HTMLElement&&t.hidden))&&oy(t)){ry(t)&&(n.hiddenSkipped+=1);return}let a=t.ownerDocument.defaultView,s=a!==null?a.getComputedStyle(t):null;if(s!==null&&s.display==="none"){n.hiddenSkipped+=1;return}if(s!==null&&s.display==="inline"&&!r&&ny(t)){Vp(t,e,n,r);return}let l=xe(t),d=Ne(t),u=jp.has(l),p=r||JA(t,l),f=n.mode===Is.INTERACTIVE&&!p,m=!f&&d.length===0?R2(t):"",g=f?"":C2(s),T=u,_=T||l!=="generic"||d.length>0||m.length>0||g.length>0,y=f?T:_;f&&!y&&_&&(n.leanSkipped+=1),y?(n.nodes+=1,n.lines.push(l==="generic"&&m.length>0&&g.length===0?I2(e,m):O2(t,e,l,d,g,m)),Vp(t,e+1,n,p)):Vp(t,e,n,p)}function Vp(t,e,n,r=!1){let o=L2(t);if(e>n.maxDepth){o.length>0&&(n.truncated=!0,QA([t],n));return}for(let a=0;a<o.length;a+=1){if(n.nodes>=n.maxNodes){n.truncated=!0,QA(o.slice(a),n);return}let s=o[a];s!==void 0&&Gg(s,e,n,r)}}function k2(t){let e=t.querySelectorAll('[role="dialog"], dialog[open], [aria-modal="true"]'),n=[];for(let r of e)ht(r)||Gt(r)&&n.push(Ne(r)||"(unnamed dialog)");return n}var D2='[role="dialog"], [role="alertdialog"], dialog[open], [aria-modal="true"]';function M2(t){if(t!==document.body)return;let e=document.body.querySelectorAll('[role="dialog"], dialog[open], [aria-modal="true"]'),n,r;for(let s of e)if(!ht(s)){if(Gt(s)){n=s;break}r!=null||(r=s)}if(n!=null||(n=r),n===void 0)return;let o=n,a=Array.from(document.body.children).filter(s=>!s.contains(o));if(a.length!==0&&a.every(s=>s.getAttribute("aria-hidden")==="true"))return"the rest of the page is aria-hidden behind an open overlay (a focus-trap modal), so this snapshot shows only the overlay. If it will not close its cleanup may be stuck on a throttled tab: dismiss the overlay, or snapshot with { scope } inside it."}function $2(t){let e=k2(t),n=M2(t);return{route:`${location.pathname}${location.search}${location.hash}`,title:document.title,...e.length>0?{visibleDialogs:e}:{},...n!==void 0?{overlayHidingPage:n}:{}}}function Kp(t={}){var l,d,u,p;let e=(l=t.mode)!=null?l:Is.FULL,n=t.scope!==void 0?(d=J.resolve(t.scope))!=null?d:document.querySelector(t.scope):document.body,r=t.scope!==void 0&&!(n instanceof Element),o=n instanceof Element?n:document.body,a=$2(o);if(r)return{tree:"",status:a,nodes:0,truncated:!1,scopeMissing:!0};if(e===Is.STATUS)return{tree:"",status:a,nodes:0,truncated:!1};let s={lines:[],nodes:0,leanSkipped:0,hiddenSkipped:0,truncated:!1,mode:e,maxNodes:(u=t.maxNodes)!=null?u:400,maxDepth:(p=t.maxDepth)!=null?p:20,unread:[],unreadOverflow:!1};if(t.includeRoot===!0?Gg(o,0,s,!1):Vp(o,0,s),s.nodes===0&&o===document.body){s.throughOverlay=!0;for(let f of Array.from(o.children))iy(f)&&f.querySelector(D2)!==null&&Gg(f,0,s,!1);s.throughOverlay=!1}return{tree:s.lines.join(`
1778
- `),status:a,nodes:s.nodes,truncated:s.truncated,...s.nodes===0?{domElements:o.querySelectorAll("*").length}:{},...s.leanSkipped>0?{leanSkipped:s.leanSkipped}:{},...s.hiddenSkipped>0?{hiddenSkipped:s.hiddenSkipped}:{},...s.unread.length>0?{unread:s.unread}:{},...s.unreadOverflow?{unreadOverflow:!0}:{}}}var P2=["filter","opacity","transform","mix-blend-mode","backdrop-filter"],H2={filter:"none",opacity:"1",transform:"none","mix-blend-mode":"normal","backdrop-filter":"none"};function U2(t){if(t.id.length>0)return`#${t.id}`;let e=t.getAttribute("class");return e!==null&&e.trim().length>0?`.${e.trim().split(/\s+/).join(".")}`:t.tagName.toLowerCase()}function ay(t){let e=t.ownerDocument.defaultView;if(e===null)return[];let n=[];for(let r=t;r!==null&&r!==t.ownerDocument.documentElement;r=r.parentElement){let o=e.getComputedStyle(r);for(let a of P2){let s=o.getPropertyValue(a);s.length>0&&s!==H2[a]&&n.push({on:U2(r),property:a,value:s})}}return n}H();Un();Ys();Bt();at();Dr();ci();li();Rt();on();var $y=Ds,z2=12,Y2=2e3,X2=()=>`[${$y}], ${rr()}, button, a, input, select, textarea, [role]`;function Pr(t){return[...Node.ELEMENT_NODE===t.nodeType?[t]:[],...Array.from(t.querySelectorAll("*"))]}function Fn(t){return t.replace(/\s+/g," ").trim().normalize("NFC")}function Zg(t,e){return Fn(t).toLowerCase().includes(Fn(e).toLowerCase())}function Qg(t,e,n){return e.matchCase!==!0?Zg(t,n):Fn(t).includes(Fn(n))}function q2(t,e){return Fn(t)===Fn(e)}var Z2=["script","style","template","noscript"];function Py(t){return Z2.includes(t.tagName.toLowerCase())}function Q2(t){if(ve(t)){let e=t.type.toLowerCase();if(e==="submit"||e==="button"||e==="reset")return t.value}return Py(t)?"":Array.from(t.childNodes).filter(e=>Node.TEXT_NODE===e.nodeType).map(e=>{var n;return(n=e.textContent)!=null?n:""}).join("")}function ef(t,e){var a;if(Py(t)||rn(t))return"";let n=Gt(t,e),r=J2(t),o="";for(let s of Array.from(t.childNodes))if(Node.TEXT_NODE===s.nodeType&&n)o+=(a=s.textContent)!=null?a:"";else if(an(s)){let l=ef(s,e);o+=r||e$(s)?` ${l} `:l}return o}function J2(t){var n,r;let e=(r=(n=t.ownerDocument.defaultView)==null?void 0:n.getComputedStyle(t).display)!=null?r:"";return e.includes("flex")||e.includes("grid")}function e$(t){var n,r;let e=(r=(n=t.ownerDocument.defaultView)==null?void 0:n.getComputedStyle(t).display)!=null?r:"inline";return!e.startsWith("inline")&&e!=="contents"}function t$(t){if(ve(t)||Ft(t)||or(t))return!0;let e=t.tagName.toLowerCase();return e==="button"||e==="meter"||e==="output"||e==="progress"||t.hasAttribute("aria-label")||t.hasAttribute("aria-labelledby")}function tf(t){if(t===void 0)return{container:document.body,scopeMissing:!1};let e=J.resolve(t);if(ri(e))return{container:e,scopeMissing:!1};try{let n=document.querySelector(t);if(ri(n))return{container:n,scopeMissing:!1}}catch{}return{container:null,scopeMissing:!0}}function n$(t,e){let n=`${e.file}:${e.line}:`.replace(/\\/g,"\\\\").replace(/"/g,'\\"');try{return Array.from(t.querySelectorAll(`[${$y}^="${n}"]`))}catch{return[]}}function r$(t,e){let n=[],r=0;for(let o of Array.from(t.querySelectorAll(X2()))){if(r>=Y2)break;r+=1;let a=$r(o);a!==null&&a.componentStack[0]===e&&n.push(o)}return n}function wy(t,e){if(e.source!==void 0){let n=n$(t,e.source);if(n.length>0)return n}return e.component!==void 0&&e.component.length>0?r$(t,e.component):[]}function o$(t,e){return t===e||e==="textbox"&&t==="searchbox"}function qg(t,e,n){return Pr(t).filter(r=>o$(xe(r),e)&&(n===void 0||q2(Ne(r),n)))}function Oy(t,e,n){return Pr(t).filter(r=>Qg(Q2(r),n,e))}function Iy(t,e){let n=Fn(e).toLowerCase(),r=[],o=[];for(let a of Pr(t)){if(!t$(a))continue;let s=Fn(Ne(a)).toLowerCase();s.includes(n)&&(s===n?r:o).push(a)}return r.length>0?r:o}function Cy(t,e){return Pr(t).filter(n=>{let r=n.getAttribute("placeholder");return r!==null&&Zg(r,e)})}function Ly(t,e){return Pr(t).filter(n=>Pe(n)===e)}function ky(t,e){return Pr(t).filter(n=>{let r=n.getAttribute("alt");return r!==null&&Zg(r,e)})}function Dy(t,e){var o;let n=e.by,r=e.value;if(n!==void 0&&r!==void 0)switch(n){case et.ROLE:return qg(t,r,e.name);case et.TEXT:return Oy(t,r,e);case et.LABEL:return Iy(t,r);case et.PLACEHOLDER:return Cy(t,r);case et.TESTID:return Ly(t,r);case et.ALT:return ky(t,r);case et.COMPONENT:return wy(t,{...e,component:(o=e.component)!=null?o:r});default:throw new Error(`unsupported query strategy '${String(n)}' - use one of: ${Object.values(et).join(", ")}`)}return e.component!==void 0||e.source!==void 0?wy(t,e):e.role!==void 0?qg(t,e.role,e.name):e.text!==void 0?Oy(t,e.text,e):e.label!==void 0?Iy(t,e.label):e.placeholder!==void 0?Cy(t,e.placeholder):e.testid!==void 0?Ly(t,e.testid):e.alt!==void 0?ky(t,e.alt):[]}function i$(t){var e,n;try{return(n=(e=t.contentDocument)==null?void 0:e.body)!=null?n:null}catch{return null}}var a$=3;function s$(t){let e=[],n=(r,o)=>{var a;for(let s of r.querySelectorAll("*")){let l=(a=s.shadowRoot)!=null?a:zs(s);if(l!==null){e.push(l),n(l,o);continue}if(o>=a$||!Lp(s))continue;let d=i$(s);d!==null&&(e.push(d),n(d,o+1))}};return n(t,0),e}function Hy(t){let{container:e,scopeMissing:n}=tf(t.scope);if(e===null)return{candidates:[],scopeMissing:!0};if(t.self===!0)return t.scope===void 0?{candidates:[],scopeMissing:n}:t.text!==void 0&&!Qg(ef(e,new Map),t,t.text)?{candidates:[],scopeMissing:n}:{candidates:rn(e)?[]:[e],scopeMissing:n};let r=new Set,o=[],a=s=>{for(let l of s)r.has(l)||rn(l)||(r.add(l),o.push(l))};a(Dy(e,t));for(let s of s$(e))a(Dy(s,t));return{candidates:o,scopeMissing:n}}var c$=512,l$=12;function d$(t,e){let n={};for(let r of e.slice(0,l$)){let o=t.getAttribute(r);o!==null&&(n[r]=tt(r)?_e:o.slice(0,c$))}return Object.keys(n).length>0?n:void 0}function u$(t,e,n){return fe.IN_VIEWPORT===e?$g(t,n):go(t,Gt(t,n)).includes(e)}var My=G.MAX_COLLECTION_ITEMS;function xd(t,e,n=My,r=!0){let o=Hy(t),a=o.scopeMissing,s=r&&g$(t)?Fy(t):void 0,l=o.candidates.length===0?tf(t.scope).container:null,d=l===null||s===void 0?void 0:Uy(l,s,t),u=d===void 0?o.candidates:[d],p=new Map,f=e===void 0?u:u.filter(y=>u$(y,e,p)),m=t.attrs,g=f.slice(0,Math.max(0,Math.min(n,My))),T=g.length>1||fe.IN_VIEWPORT===e,_=g.map(y=>{let A=Mr(y,p);if(T&&$g(y,p)&&!A.states.includes(fe.IN_VIEWPORT)&&(A={...A,states:[...A.states,fe.IN_VIEWPORT]}),m===void 0||m.length===0)return A;let v=d$(y,m);return v===void 0?A:{...A,attrs:v}});return{matched:f.length>0,count:f.length,elements:_,...a?{scopeMissing:!0}:{},...f.length===0?{hint:Gy(t)}:{}}}function p$(t){let e=t.getAttribute("aria-labelledby");if(e===null)return;let n=e.split(/\s+/).map(r=>{var o,a,s;return r.length>0&&(s=(a=(o=t.ownerDocument.getElementById(r))==null?void 0:o.textContent)==null?void 0:a.trim())!=null?s:""}).filter(r=>r.length>0).join(" ");return n.length>0?n:void 0}function f$(t){var o,a,s,l,d,u,p,f;let e=(o=tf(t.scope).container)!=null?o:document.body,n=[],r=["list","listbox","grid","table","tree","treegrid","dialog","alertdialog","navigation","main","banner","form","search","menu","menubar","tablist"];for(let m of r){let g=qg(e,m,void 0);for(let T of g){if(ht(T))continue;let _=(l=(s=(a=T.getAttribute("aria-label"))!=null?a:p$(T))!=null?s:Pe(T))!=null?l:void 0,y=T.querySelectorAll("[role]"),A=[];for(let O of Array.from(y)){if(A.length>=3)break;let B=O.getAttribute("role"),oe=(f=(p=(d=O.getAttribute("aria-label"))!=null?d:Pe(O))!=null?p:(u=O.textContent)==null?void 0:u.trim().slice(0,40))!=null?f:"";B!==null&&oe.length>0&&A.push(`${B}[${oe}]`)}let v={role:m,childCount:y.length,sample:A};if(_!==void 0&&_.length>0&&(v.name=_),n.push(v),n.length>=10)return n}}return n}function Uy(t,e,n){let r,o=-1,a=new Map;for(let s of Pr(t)){if(rn(s)||!Qg(ef(s,a),n,e))continue;let l=0;for(let d=s.parentElement;d!==null;d=d.parentElement)l++;l>o&&(r=s,o=l)}return r}function h$(t,e){let n=Fn(e).toLowerCase();if(n.length===0)return;let r=new Map;for(let o of Pr(t)){if(rn(o))continue;let a=Fn(ef(o,r)),s=a.toLowerCase().indexOf(n);if(s!==-1)return a.slice(s,s+n.length)}}var m$=new Set(["text","matchCase","scope","by","value"]);function g$(t){return(t.by===void 0||et.TEXT===t.by)&&Object.keys(t).every(e=>m$.has(e))}function Fy(t){return t.text!==void 0?t.text:et.TEXT===t.by?t.value:void 0}var E$=5;function b$(t,e){let n=et.ROLE===e.by?e.value:e.role,r=e.name;if(n===void 0||r===void 0||r.length===0)return[];let o=Fn(r).toLowerCase();if(o.length===0)return[];let a=[];for(let s of Pr(t)){if(rn(s)||xe(s)!==n)continue;let l=Fn(Ne(s));if(l.length===0)continue;let d=l.toLowerCase();if(!(!d.includes(o)&&!o.includes(d))&&(a.includes(l)||a.push(l),a.length>=E$))break}return a}function T$(t,e){if(et.TESTID!==e.by||e.value===void 0)return;let n=Bs();for(let r of[ca,...g_]){if(r===n)continue;if(Pr(t).some(a=>a.getAttribute(r)===e.value&&!rn(a)))return r}}function Gy(t){var m;let e=(m=tf(t.scope).container)!=null?m:document.body,n=e.querySelectorAll(rr()),r=[],o=new Set;for(let g of Array.from(n)){if(rn(g))continue;let T=Pe(g);T===null||T.length===0||o.has(T)||(o.add(T),r.length<z2&&r.push(T))}let a=vy(),s=r.some(g=>a.includes(g)),d={route:`${location.pathname}${location.search}`,presentTestids:r,...o.size>r.length?{presentTestidsTotal:o.size}:{},presentRegions:f$(t),knownEmptyState:s},u=Fy(t);if(u!==void 0){let g=Uy(e,u,t);if(g!==void 0)d.splitText=Mr(g);else if(t.matchCase===!0){let T=h$(e,u);T!==void 0&&(d.caseMiss=T)}}let p=b$(e,t);p.length>0&&(d.nameNearMiss=p);let f=T$(e,t);return f!==void 0&&(d.testidFoundUnder=f),d}function By(t){return Hy(t).candidates}function nf(t,e){let n=xd(t,void 0,e,!1),r=n.scopeMissing===!0?{scopeMissing:!0}:{};return n.elements.length===0?{elements:n.elements,count:n.count,hint:Gy(t),...r}:{elements:n.elements,count:n.count,...r}}H();rc();Rt();oi();Un();var S$=/\b(current|new)-password\b/,_$=/Chrome|Chromium|Edg\/|Firefox|Gecko\//;function eE(t,e=navigator.userAgent){var r,o,a;return!(t instanceof HTMLInputElement)||!(t.type.toLowerCase()==="password"||S$.test((r=t.getAttribute("autocomplete"))!=null?r:""))||_$.test(e)?!1:600<=Number((a=(o=/AppleWebKit\/(\d+)/.exec(e))==null?void 0:o[1])!=null?a:0)}function of(t,e){let n=EA(t),r=n===void 0?void 0:xA(n);r!==void 0?r.call(t,e):t.value=e;let o=t.dispatchEvent(new Event("input",{bubbles:!0,cancelable:!0}));return t.dispatchEvent(new Event("change",{bubbles:!0})),!o}function x$(t){let e=t.getAttribute("contenteditable");if(Ze(t)&&t.isContentEditable||e!==null&&e!=="false"||t.getAttribute("role")==="textbox")return!0;if(!("editContext"in t))return!1;let n=t;return n.editContext!==null&&n.editContext!==void 0}function tE(t,e){if(x$(t))throw new Error(`cannot ${e} a contenteditable or EditContext editor; use press or an input`)}function nE(t,e){if(t.disabled)throw new Error(`cannot ${e} a disabled <${t.tagName.toLowerCase()}> \u2014 a user could not edit it, so forcing the value would put the app in a state nobody can reach`);if(t.readOnly)throw new Error(`cannot ${e} a readonly <${t.tagName.toLowerCase()}> \u2014 a user could not edit it, so forcing the value would put the app in a state nobody can reach`)}Bt();li();Un();lt();at();Bt();var oE=200,Zy=" | ",A$=3,y$=/\p{L}/u;function v$(t){return y$.test(t)}var R$=3;function N$(t){return t instanceof Element&&t.querySelectorAll("*").length>R$}var oc,Ad,ui,iE,aE,sf=class{constructor(){b(this,ui);b(this,oc,new Set);b(this,Ad,0)}collect(e){for(let n of e){if(E(this,ui,iE).call(this))return;if(n.type==="characterData"){E(this,ui,aE).call(this,n.target.textContent,n.target.parentElement);continue}for(let r of n.addedNodes){if(E(this,ui,iE).call(this))return;if(N$(r))continue;let o=A$===r.nodeType?r.parentElement:w$(r);E(this,ui,aE).call(this,r.textContent,o)}}}effect(e){let n=[...c(this,oc)].filter(o=>o!==e);if(n.length===0)return{};let r=n.join(Zy);return{appeared:r.length>oE?`${r.slice(0,oE)}\u2026`:r}}};oc=new WeakMap,Ad=new WeakMap,ui=new WeakSet,iE=function(){return c(this,Ad)>oE},aE=function(e,n){if(n!==null&&rn(n)||n!==null&&ir(n))return;let r=(e!=null?e:"").replace(/\s+/g," ").trim();r.length!==0&&v$(r)&&(c(this,oc).has(r)||(c(this,oc).add(r),h(this,Ad,c(this,Ad)+(r.length+Zy.length))))};function w$(t){return t instanceof Element?t:t.parentElement}H();Un();var O$=new Set(["checkbox","switch"]),Qy="aria-checked",cf=t=>{var e;return!ve(t)&&O$.has((e=t.getAttribute("role"))!=null?e:"")},Jy=t=>t.getAttribute(Qy)==="true";function ev(t,e,n){var o;if(n||!cf(t)||e!==k.CHECK&&e!==k.UNCHECK)return;let r=e===k.CHECK;if(Jy(t)!==r)throw new Error(`${e} clicked the ${(o=t.getAttribute("role"))!=null?o:""} but ${Qy} is still "${String(!r)}" \u2014 the app did not toggle it`)}function lf(t,e){if(e!==k.CHECK&&e!==k.UNCHECK)return!1;let n=e===k.CHECK;return ve(t)?t.checked===n:cf(t)&&Jy(t)===n}H();rc();lt();Un();var sE=t=>new Promise(e=>ee(e,t));function I$(t,e=""){return typeof t=="string"?t:e}function uf(t){return Vm(t)}var C$=["metaKey","ctrlKey","shiftKey","altKey"],ov={meta:"metaKey",cmd:"metaKey",command:"metaKey",super:"metaKey",win:"metaKey",control:"ctrlKey",ctrl:"ctrlKey",shift:"shiftKey",alt:"altKey",option:"altKey",opt:"altKey"};function iv(t){let e=t.modifiers,n=Array.isArray(e)?e.map(o=>I$(o).toLowerCase()):[],r={metaKey:!1,ctrlKey:!1,shiftKey:!1,altKey:!1};for(let o of n){let a=ov[o];a!==void 0&&(r[a]=!0)}return r}function tv(t){return ov[t.toLowerCase()]}function df(t,e){let n=t.code;return typeof n=="string"&&0<n.length?n:e===" "?"Space":e.length===1?/[a-z]/i.test(e)?`Key${e.toUpperCase()}`:/[0-9]/.test(e)?`Digit${e}`:"":/^[A-Z][A-Za-z0-9]*$/.test(e)&&D$.has(e)?e:""}function pf(t,e,n,r,o=!1){if(nv!==e&&e.length!==1)return;let a=new KeyboardEvent("keypress",{key:e,code:n,bubbles:!0,cancelable:!0,repeat:o,...r}),s=nv===e?L$:e.charCodeAt(0);for(let l of k$)Object.defineProperty(a,l,{value:s});We(()=>t.dispatchEvent(a))}var nv="Enter",L$=13,k$=["keyCode","charCode","which"],D$=new Set(["Enter","Escape","Tab","Backspace","Delete","Home","End","PageUp","PageDown","ArrowUp","ArrowDown","ArrowLeft","ArrowRight","Insert","F1","F2","F3","F4","F5","F6","F7","F8","F9","F10","F11","F12"]),M$="no document to press into";function av(){let t=document.activeElement;if(Ze(t)&&document.body!==t)return t;if(Ze(document.body))return document.body;let e=document.documentElement;if(Ze(e))return e;throw new Error(M$)}function sv(t,e,n){return t.length===0&&x_(n)&&k.PRESS===e}function cv(t){return jm(t)}var $$=33,rv=500,P$={Backspace:8,Tab:9,Enter:13,Shift:16,Control:17,Alt:18,Escape:27," ":32,PageUp:33,PageDown:34,End:35,Home:36,ArrowLeft:37,ArrowUp:38,ArrowRight:39,ArrowDown:40,Delete:46,Meta:91},H$=/^[a-z0-9]$/i,U$=t=>{var e;return(e=P$[t])!=null?e:H$.test(t)?t.toUpperCase().charCodeAt(0):0};function yd(t,e){let n=new KeyboardEvent(t,e),r=U$(e.key);for(let o of["keyCode","which"])Object.defineProperty(n,o,{get:()=>r});return n}async function lv(t,e,n,r,o){let a=Date.now();for(o>rv&&await sE(rv);Date.now()-a<o;)We(()=>t.dispatchEvent(yd("keydown",{key:e,code:n,bubbles:!0,cancelable:!0,repeat:!0,...r})))&&pf(t,e,n,r,!0),await sE(Math.min($$,Math.max(0,o-(Date.now()-a))))}async function dv(t,e,n,r){let o={...n},a=(p,f)=>{let m=df({},f);return We(()=>t.dispatchEvent(yd(p,{key:f,code:m,bubbles:!0,cancelable:!0,...o})))},s=new Map;for(let p of C$)o[p]&&s.set(p,1);let l=p=>{var f;s.set(p,((f=s.get(p))!=null?f:0)+1),o[p]=!0},d=p=>{var m;let f=((m=s.get(p))!=null?m:1)-1;s.set(p,f),f<=0&&(o[p]=!1)},u=!1;for(let p of e){let f=tv(p);f!==void 0&&l(f);let m=a("keydown",p);m||(u=!0),m&&pf(t,p,df({},p),o),cE(t,p,m)}r>0&&await sE(r);for(let p of[...e].reverse()){let f=tv(p);f!==void 0&&d(f),a("keyup",p)}return u}function cE(t,e,n){var r,o;if(!(e!=="Escape"||!n))for(let a=t.closest("dialog");a!==null;a=(o=(r=a.parentElement)==null?void 0:r.closest("dialog"))!=null?o:null){try{if(!a.open||!a.matches(":modal"))continue}catch{return}typeof a.requestClose=="function"?a.requestClose():a.dispatchEvent(new Event("cancel",{cancelable:!0}))&&a.close();return}}on();H();Bt();li();function uv(t){var l;let e=(l=Pe(t))!=null?l:void 0,n=$r(t),r={};e!==void 0&&(r.testid=e);let o=n==null?void 0:n.componentStack[0];o!==void 0&&(r.component=o),(n==null?void 0:n.source)!==void 0&&(r.source=n.source);let a=xe(t),s=Ne(t);if(a.length>0&&(r.role=a),s.length>0&&(r.name=s),a.length>0&&s.length>0){let d=By({by:et.ROLE,value:a,name:s}),u=d.indexOf(t);1<d.length&&0<=u&&(r.nth=u,r.of=d.length)}return r}var pv=(t,e,n,r,o,a,s)=>{let l={ok:!0,ref:t,action:e,dispatched:!0,settled:r,settleReason:o,effect:n};return a.testid!==void 0&&(l.testid=a.testid),a.component!==void 0&&(l.component=a.component),a.source!==void 0&&(l.source=a.source),a.role!==void 0&&(l.role=a.role),a.name!==void 0&&(l.name=a.name),a.nth!==void 0&&(l.nth=a.nth),a.of!==void 0&&(l.of=a.of),s!==void 0&&(l.warning=s),l};Rt();at();var F$=[[.5,.5],[.25,.25],[.75,.25],[.25,.75],[.75,.75]],G$=3;function ff(t,e){var u;if(e.width===0||e.height===0)return null;let n=t.ownerDocument;if(typeof n.elementFromPoint!="function")return null;let r=n,o=p=>Gs(p)&&p!==t&&!t.contains(p)&&!p.contains(t),a=(p,f)=>{var g,T,_;return(_=((T=(g=r.elementsFromPoint)==null?void 0:g.call(r,p,f))!=null?T:[n.elementFromPoint(p,f)]).find(y=>y!==null&&!o(y)))!=null?_:null},s=new Map;for(let[p,f]of F$){let m=a(e.left+e.width*p,e.top+e.height*f);m!==null&&(m===t||t.contains(m)||m.contains(t)||s.set(m,((u=s.get(m))!=null?u:0)+1))}let l=null,d=0;for(let[p,f]of s)f>d&&(l=p,d=f);return d>=G$?l:null}lt();rc();var hf={occluded:!1,occludedBy:null,scrolledIntoView:!1};function pi(t,e,n={}){return new MouseEvent(e,{...n,view:t.ownerDocument.defaultView})}function mf(t,e,n){let r={...n,view:t.ownerDocument.defaultView};return typeof PointerEvent=="function"?new PointerEvent(e,r):new MouseEvent(e,r)}var dt=1,vd=0;function He(t,e,n,r,o,a=0){let s={bubbles:!(e.endsWith("enter")||e.endsWith("leave")),cancelable:!0,detail:a,clientX:n.x,clientY:n.y,screenX:n.x,screenY:n.y,buttons:r,button:0,...o!==void 0?{relatedTarget:o}:{}};return t.dispatchEvent(e.startsWith("pointer")?mf(t,e,{...s,pointerId:1,isPrimary:!0}):pi(t,e,s))}async function Rd(t,e,n){var u;let r=t.ownerDocument,o=(u=r.activeElement)!=null?u:r.body,a=lE(t),s=n!=null?n:0;We(()=>He(t,"pointerdown",a,dt,o,s)),We(()=>He(t,"mousedown",a,dt,void 0,s)),t.tabIndex>=0&&typeof t.focus=="function"&&t.focus();let l=0;if(e!==void 0&&e.ms>0){let p=e.now();await e.sleep(e.ms),l=e.now()-p}return We(()=>He(t,"pointerup",a,vd,o,s)),We(()=>He(t,"mouseup",a,vd,void 0,s)),{prevented:!We(()=>He(t,"click",a,vd,void 0,s)),heldMs:l}}function B$(t){return t.width>0||t.height>0}function V$(t,e){let n=t.ownerDocument.defaultView;if(n===null)return!1;let r=e.left+e.width/2,o=e.top+e.height/2;return r<0||o<0||r>n.innerWidth||o>n.innerHeight}function j$(t,e){let n=ff(t,e);return n===null?{occluded:!1,occludedBy:null}:{occluded:!0,occludedBy:J.refFor(n)}}function gv(t){if(typeof t.getBoundingClientRect!="function")return hf;let e=t.getBoundingClientRect();if(!B$(e))return hf;let n=!1;return V$(t,e)&&typeof t.scrollIntoView=="function"&&(t.scrollIntoView({block:"center",inline:"center"}),n=!0,e=t.getBoundingClientRect()),{...j$(t,e),scrolledIntoView:n}}function dE(t,e,n=null){We(()=>t.dispatchEvent(mf(t,e,{bubbles:!0,cancelable:!0,relatedTarget:n})))}function Ev(t,e,n=null){We(()=>t.dispatchEvent(mf(t,e,{bubbles:!1,cancelable:!0,relatedTarget:n})))}function K$(t){if(typeof DataTransfer!="function")return null;let e=new DataTransfer,n=Array.isArray(t)?t:t!==void 0?[t]:[];for(let r of n)if(typeof r=="object"&&r!==null){let o=r;typeof o.mime=="string"&&typeof o.value=="string"&&e.setData(o.mime,o.value)}return e}var fv=5;function lE(t){let e=t.getBoundingClientRect();return{x:e.left+e.width/2,y:e.top+e.height/2}}function W$(t,e,n){return{x:Math.round(t.x+(e.x-t.x)*n),y:Math.round(t.y+(e.y-t.y)*n)}}async function uE(t,e,n){let r=e!=null?e:t,o=lE(t),a=lE(r),s=t.getBoundingClientRect(),l=e!==null?r.getBoundingClientRect():null,d=(m,g)=>g.x>=m.left&&g.x<=m.right&&g.y>=m.top&&g.y<=m.bottom;He(t,"pointerdown",o,dt),He(t,"mousedown",o,dt),await di();let u=!1,p=!1;for(let m=1;m<=fv;m+=1){let g=W$(o,a,m/fv);!u&&!d(s,g)&&(u=!0,He(t,"pointerout",g,dt,r),He(t,"mouseout",g,dt,r),He(t,"pointerleave",g,dt,r),He(t,"mouseleave",g,dt,r)),u&&!p&&l!==null&&d(l,g)&&(p=!0,He(r,"pointerover",g,dt,t),He(r,"mouseover",g,dt,t),He(r,"pointerenter",g,dt,t),He(r,"mouseenter",g,dt,t)),He(r,"pointermove",g,dt),He(r,"mousemove",g,dt),await di()}!p&&l!==null&&(He(r,"pointerover",a,dt,t),He(r,"mouseover",a,dt,t),He(r,"pointerenter",a,dt,t),He(r,"mouseenter",a,dt,t)),He(r,"pointerup",a,vd),He(r,"mouseup",a,vd);let f=!1;if(typeof DragEvent=="function"){let m=K$(n),g={bubbles:!0,cancelable:!0};m!==null&&(g.dataTransfer=m),t.dispatchEvent(new DragEvent("dragstart",g)),await di(),r.dispatchEvent(new DragEvent("dragenter",g)),r.dispatchEvent(new DragEvent("dragover",g)),await di(),f=!r.dispatchEvent(new DragEvent("drop",g)),t.dispatchEvent(new DragEvent("dragend",g))}return f}async function bv(t,e){let n=z$(t);hv(t,"pointerdown"),We(()=>t.dispatchEvent(mv("touchstart",n))),t.tabIndex>=0&&typeof t.focus=="function"&&t.focus();let r=0;if(e!==void 0&&e.ms>0){let a=e.now();await e.sleep(e.ms),r=e.now()-a}return We(()=>t.dispatchEvent(mv("touchend",[]))),hv(t,"pointerup"),{prevented:!We(()=>t.dispatchEvent(pi(t,"click",{bubbles:!0,cancelable:!0}))),heldMs:r}}function hv(t,e){We(()=>t.dispatchEvent(mf(t,e,{bubbles:!0,cancelable:!0,pointerType:"touch",isPrimary:!0,width:23,height:23})))}function z$(t){if(typeof Touch!="function"||typeof t.getBoundingClientRect!="function")return[];let e=t.getBoundingClientRect();try{return[new Touch({identifier:0,target:t,clientX:e.left+e.width/2,clientY:e.top+e.height/2})]}catch{return[]}}function mv(t,e){if(typeof TouchEvent=="function")try{return new TouchEvent(t,{bubbles:!0,cancelable:!0,touches:e,targetTouches:e,changedTouches:e})}catch{}return new Event(t,{bubbles:!0,cancelable:!0})}var Y$=new Set(["menu","menubar","listbox","dialog","alertdialog","tooltip"]),X$="closed";function Tv(t){var e,n;for(let r=t.parentElement;r!==null;r=r.parentElement)if(X$===r.getAttribute("data-state")&&Y$.has((e=r.getAttribute("role"))!=null?e:""))throw new Error(`'${(n=r.getAttribute("role"))!=null?n:"popup"}' holding this element is closing (data-state="closed"), so a person could not click it: look again once it has gone and act on what is open`)}Rt();var q$=400,Z$=.8;function Q$(t,e){var r;let n=t;for(;n!==null&&n!==document.body;){let o=getComputedStyle(n),a=e==="x"?o.overflowX:o.overflowY,s=e==="x"?n.scrollWidth>n.clientWidth:n.scrollHeight>n.clientHeight;if((a==="auto"||a==="scroll")&&s)return n;n=n.parentElement}return(r=document.scrollingElement)!=null?r:document.documentElement}function Sv(t,e,n,r){let o=t!==void 0?J.resolve(t):null;return pE(o instanceof Element?o:void 0,e,n,r)}function pE(t,e,n,r){var p;let a=t!==void 0?Q$(t,r!==void 0&&r!==0&&(e===void 0||e===0)?"x":"y"):(p=document.scrollingElement)!=null?p:document.documentElement,s=a.scrollTop,l=a.scrollLeft;if(n!==void 0&&n>=0&&n<=1)a.scrollTop=Math.round(a.scrollHeight*n);else if(r!==void 0&&r!==0&&(a.scrollLeft=l+r),r===void 0||e!==void 0&&e!==0){let f=e!=null?e:Math.round(a.clientHeight*Z$)||q$;a.scrollTop=s+f}a.dispatchEvent(new Event("scroll",{bubbles:!1}));let d=a.scrollTop,u=a.scrollLeft;return{scrolled:d!==s||u!==l,scrollTop:d,scrollHeight:a.scrollHeight,clientHeight:a.clientHeight,atEnd:d+a.clientHeight>=a.scrollHeight-1,atStart:d<=1,scrollLeft:u,scrollWidth:a.scrollWidth,clientWidth:a.clientWidth,atLeftEnd:u<=1,atRightEnd:u+a.clientWidth>=a.scrollWidth-1}}function Nd(t,e=""){return typeof t=="string"?t:e}function J$(t){let e=J.resolve(t);if(e===null)throw new Error(`ref '${ga(t)}' no longer resolves to an element`);if(!ri(e))throw new Error(`ref '${ga(t)}' is not an HTML or SVG element`);return e}var eP=new Set([k.FILL,k.TYPE,k.CLEAR,k.SELECT]),tP=t=>eP.has(t),nP=new Set([k.CLICK,k.DBLCLICK,k.CHECK,k.UNCHECK]);function yv(t){let e=Nd(t.toRef);return e!==""?e:Nd(t.target)}var _v=new Set(["content","name","type","__base64"]),rP=new Set([ip,RS,"holdMs"]);function oP(t){let e=Object.keys(t),n=e.filter(o=>!_v.has(o)&&!rP.has(o));if(n.length===0&&e.some(o=>_v.has(o)))return;let r=n.length===0?"no file was described":`upload does not read ${n.join(", ")}, so it would be dropped`;throw new Error(`upload needs the file described as args: { name, content?, type? } \u2014 ${r}. To upload a file from disk, use the reticle daemon which reads it via args.path and delivers real bytes; calling with { path } directly reaches only fabricated content.`)}function iP(t,e,n){let r=e===k.CLICK||e===k.DBLCLICK||e===k.CHECK||e===k.UNCHECK||e===k.DRAG||e===k.SUBMIT||e===k.PRESS&&uf(n)==="Enter",o=e===k.DRAG?J.resolve(yv(n)):null,a=e===k.PRESS&&uf(n)==="Enter"?jA(t):null;r&&KA([t,a,ri(o)?o:null]);let s=Bp(gd(t),xe(t))||a!==null&&Bp(gd(a),xe(a)),l=ri(o)&&Bp(gd(o),xe(o));if(r&&(s||l)&&n[ip]!==!0)throw new Error(`potentially destructive action blocked; retry with args.${ip}=true`)}function aP(t,e){var r,o;if(t.some(a=>a.value===e))return e;let n=t.filter(a=>a.label.trim()===e.trim());return n.length===1&&(o=(r=n[0])==null?void 0:r.value)!=null?o:e}function vv(t){return!go(t).includes(fe.DISABLED)}function xv(t){if(ve(t)||Ft(t)||or(t))return t.value}function Av(t){let e=t.ownerDocument.activeElement;return e===null||e===t.ownerDocument.body?null:J.refFor(e)}async function sP(t,e,n){if(k.CLICK===e){let r=Ms(n.holdMs);return await Rd(t,r===0?void 0:{ms:r,sleep:hE,now:()=>Date.now()})}if(k.TAP===e){let r=Ms(n.holdMs);return await bv(t,r===0?void 0:{ms:r,sleep:hE,now:()=>Date.now()})}return{prevented:await lP(t,e,n),heldMs:0}}var cP="cannot zoom from inside the page \u2014 CSS zoom changes how it LOOKS without changing the layout viewport, visualViewport or media queries, so a layout that breaks at 200% would be reported as checked and passing. Drive a real browser (reticle drive <url>, or reticle_lease) and zoom there.";function fE(t){return typeof t=="number"&&Number.isFinite(t)?t:void 0}async function lP(t,e,n){var r;switch(e){case k.DBLCLICK:return await Rd(t,void 0,1),await Rd(t,void 0,2),!We(()=>t.dispatchEvent(pi(t,"dblclick",{bubbles:!0,cancelable:!0,detail:2})));case k.HOVER:{let o=t.ownerDocument,a=(r=o.activeElement)!=null?r:o.body;dE(t,"pointerover",a),t.dispatchEvent(pi(t,"mouseover",{bubbles:!0,relatedTarget:a})),Ev(t,"pointerenter",a),t.dispatchEvent(pi(t,"mouseenter",{relatedTarget:a})),dE(t,"pointermove",a);let s=t.dispatchEvent(pi(t,"mousemove",{bubbles:!0,cancelable:!0})),l=Ms(n.holdMs);return l>0&&await hE(l),!s}case k.FOCUS:return t.focus(),t.dispatchEvent(new FocusEvent("focusin",{bubbles:!0})),!1;case k.BLUR:{let a=t.getRootNode().activeElement===t;return t.blur(),a||(t.dispatchEvent(new FocusEvent("blur")),t.dispatchEvent(new FocusEvent("focusout",{bubbles:!0}))),!1}case k.FILL:if(ve(t)||Ft(t)){if(typeof n.value!="string")throw new Error("fill requires a string `value` \u2014 pass it nested, as args: { value: '\u2026' }. To empty a field on purpose use the `clear` action, or fill with an explicit \"\".");return nE(t,"fill"),eE(t)||t.focus(),of(t,n.value)}throw tE(t,"fill"),new Error(`cannot fill a <${t.tagName.toLowerCase()}>`);case k.TYPE:if(ve(t)||Ft(t)){if(typeof n.text!="string")throw new Error("type requires a string `text` \u2014 pass it nested, as args: { text: '\u2026' }.");return nE(t,"type"),t.focus(),of(t,t.value+n.text)}throw tE(t,"type into"),new Error(`cannot type into a <${t.tagName.toLowerCase()}>`);case k.CLEAR:if(ve(t)||Ft(t))return of(t,"");throw new Error(`cannot clear a <${t.tagName.toLowerCase()}>`);case k.SELECT:if(or(t)){if(typeof n.value!="string")throw new Error("select requires a string `value` \u2014 pass it nested, as args: { value: '\u2026' }.");let o=Array.from(t.options),a=aP(o,n.value);if(!o.some(s=>s.value===a)){let s=o.map(l=>`${l.value} (${l.label})`).join(", ");throw new Error(`no <option> with value '${ga(a)}' \u2014 available: ${o.length===0?"(none)":s}`)}return t.value=a,t.dispatchEvent(new Event("change",{bubbles:!0})),!1}throw new Error(`cannot select on a <${t.tagName.toLowerCase()}>`);case k.CHECK:case k.UNCHECK:{let o=cf(t);if(!ve(t)&&!o)throw new Error(`cannot (un)check a <${t.tagName.toLowerCase()}>`);if(!vv(t))throw new Error(`cannot ${e} a disabled control \u2014 a real user could not, so neither will Reticle`);if(!ve(t))return lf(t,e)?!1:(await Rd(t)).prevented;if(t.type==="radio"&&e===k.UNCHECK)throw new Error("cannot uncheck a radio button \u2014 a real user could not; select another radio in the group");if(lf(t,e))return!1;let a=pi(t,"click",{bubbles:!0,cancelable:!0,composed:!0});return!We(()=>t.dispatchEvent(a))||a.defaultPrevented}case k.SUBMIT:{let o=gA(t)?t:t.closest("form");if(o===null)throw new Error("no form to submit");return o.requestSubmit(),!1}case k.PRESS:{let o=iv(n),a=cv(n);if(a.length>0)return await dv(t,a,o,Ms(n.holdMs));let s=uf(n),l=df(n,s),d=We(()=>t.dispatchEvent(yd("keydown",{key:s,code:l,bubbles:!0,cancelable:!0,...o})));cE(t,s,d),d&&pf(t,s,l,o);let u=Ms(n.holdMs);return u>0&&await lv(t,s,l,o,u),We(()=>t.dispatchEvent(yd("keyup",{key:s,code:l,bubbles:!0,...o}))),!d}case k.SCROLL_INTO_VIEW:return t.scrollIntoView(),!1;case k.ZOOM:throw new Error(cP);case k.SCROLL:{let o=fE(n.dy),a=fE(n.dx),s=fE(n.fraction);return pE(t,o,s,a),!1}case k.UPLOAD:{if(!ve(t)||t.type!=="file")throw new Error('upload target must be a <input type="file">');oP(n);let o=Nd(n.content,"reticle test file"),a=o;if(n.__base64===!0){let u=atob(o),p=new Uint8Array(u.length);for(let f=0;f<u.length;f++)p[f]=u.charCodeAt(f);a=p.buffer.slice(0)}let s=new File([a],Nd(n.name,"file.txt"),{type:Nd(n.type,"text/plain")}),l=new DataTransfer;l.items.add(s),t.files=l.files;let d=t.dispatchEvent(new Event("input",{bubbles:!0,cancelable:!0}));return t.dispatchEvent(new Event("change",{bubbles:!0})),!d}case k.DRAG:{let o=yv(n);if(o==="")return await uE(t,null,n.data);let a=J.resolve(o);if(!ri(a))throw new Error(`drag target '${ga(o)}' did not resolve to an element \u2014 pass a ref from reticle_snapshot or reticle_query as args.toRef (alias: args.target)`);return await uE(t,a,n.data)}default:throw new Error(`unknown action '${e}'`)}}function dP(t){if(!(typeof t!="number"||!Number.isFinite(t)))return Math.max(0,Math.min(t,uP))}var uP=200;async function wd(t,e,n={}){let r=0<t.length,o=sv(t,e,n)?av():J$(t);r&&iP(o,e,n),r&&Tv(o);let a=r?uv(o):{},s=Gt(o),l=vv(o),d=Av(o),u=xv(o),p=nP.has(e)?gv(o):hf,f=lf(o,e),m=0,g=new sf,T=new MutationObserver(he=>{m+=he.length,g.collect(he)});T.observe(o.ownerDocument.documentElement,{subtree:!0,childList:!0,attributes:!0,characterData:!0});let _=!1,y=0,A=!1,v=null;try{let he=await sP(o,e,n);_=he.prevented,y=he.heldMs}finally{let he=dP(n.settleMs),Ie=await qy(he);A=Ie.settled,v=Ie.settled?null:OS.TIMEOUT,T.disconnect()}ev(o,e,f);let O=xv(o),B=Av(o),oe={dispatched:!0,targetMatched:r&&o.isConnected,visible:s,enabled:l,defaultPrevented:_,focusMoved:d!==B?`${d!=null?d:"null"}->${B!=null?B:"null"}`:null,valueChanged:tP(e)?u!==O:!1,...k.FILL===e&&eE(o)?{autofillSafe:!0}:{},domMutatedWithin:m,...g.effect(O),occluded:p.occluded,occludedBy:p.occludedBy,scrolledIntoView:p.scrolledIntoView,...y>0?{heldMs:y}:{},...f?{alreadyAtValue:!0}:{}},ce=r?p.occluded?cp.CLICK_OCCLUDED:e===k.HOVER&&Jp(o)?cp.HOVER_NATIVE_ENTER_LEAVE:void 0:cp.GLOBAL_PRESS;return pv(t,e,oe,A,v,a,ce)}var hE=t=>new Promise(e=>ee(e,t));async function gf(t){var r;let e=[],n=[];for(let o of t){let a=await wd(o.ref,o.action,(r=o.args)!=null?r:{});e.push(a.effect);let s={ref:a.ref,action:a.action,dispatched:a.dispatched,settled:a.settled,settleReason:a.settleReason};a.testid!==void 0&&(s.testid=a.testid),a.component!==void 0&&(s.component=a.component),a.role!==void 0&&(s.role=a.role),a.name!==void 0&&(s.name=a.name),a.source!==void 0&&(s.source=a.source),a.warning!==void 0&&(s.warning=a.warning),n.push(s)}return{ok:!0,count:t.length,effects:e,steps:n}}Bt();hd();var Rv="data-theme";function pP(){let t=new Set;for(let e of Array.from(document.styleSheets)){let n=null;try{n=e.cssRules}catch{continue}if(n!==null){for(let r of Array.from(n))if(r instanceof CSSStyleRule)for(let o of Array.from(r.style))o.startsWith("--")&&t.add(o)}}return t}function fP(){var o;let t=new Map,e=(o=document.body)!=null?o:document.documentElement;if(e===null)return t;let n=getComputedStyle(e),r=document.createElement("span");r.style.position="absolute",r.style.pointerEvents="none",document.body.appendChild(r);try{for(let a of pP()){let s=hP(r,n.getPropertyValue(a).trim());if(s===null)continue;let l=t.get(s);l===void 0?t.set(s,[a]):l.push(a)}}finally{r.remove()}for(let a of t.values())a.sort();return t}function hP(t,e){return e.length===0||(t.style.color="",t.style.color=e,t.style.color==="")?null:getComputedStyle(t).color}function Nv(t){return t==="rgba(0, 0, 0, 0)"||t==="transparent"}function mP(){let t=document.documentElement;if(t===null)return null;let e=Array.from(t.classList).map(o=>`.${o}`).join(""),n=t.getAttribute(Rv),r=`${e}${n===null?"":`[${Rv}="${n}"]`}`;return r.length===0?null:r}function wv(t){var e;return t.length===1&&(e=t[0])!=null?e:null}function Ov(t){var l,d;let e=fP(),n=(l=e.get(t.color))!=null?l:[],r=(d=e.get(t.backgroundColor))!=null?d:[],o=!Nv(t.color)&&n.length===0,a=!Nv(t.backgroundColor)&&r.length===0,s=0;for(let u of e.values())s+=u.length;return{colorToken:wv(n),colorTokens:n,backgroundToken:wv(r),backgroundTokens:r,offTheme:s>0&&(o||a),tokenCount:s,themeScope:mP()}}Rt();Un();H();Dr();Lr();function q(t){try{t()}catch{}}function cn(t){try{return t()}catch{return}}function Od(t){try{return t()}catch{return null}}function Ef(t){var n;let e={};if(t===null)return e;for(let r=0;r<t.length;r+=1){let o=t.key(r);if(o===null)continue;let a=(n=t.getItem(o))!=null?n:"";e[o]=tt(o)?_e:fa(a)}return e}function Iv(){let t={},e="";try{e=typeof document!="undefined"?document.cookie:""}catch{return t}for(let n of e.split(";")){let r=n.indexOf("=");if(r===-1)continue;let o=n.slice(0,r).trim();if(o==="")continue;if(tt(o)){t[o]=_e;continue}let a="";try{a=decodeURIComponent(n.slice(r+1).trim())}catch{a=n.slice(r+1).trim()}t[o]=fa(a)}return t}function Cv(t){return t===ha.LOCAL?Ef(Od(()=>window.localStorage)):t===ha.SESSION?Ef(Od(()=>window.sessionStorage)):ha.COOKIE===t?Iv():{local:Ef(Od(()=>window.localStorage)),session:Ef(Od(()=>window.sessionStorage)),cookies:Iv()}}function ba(t,e){if(e!==null)return tt(t)?_e:fa(e)}function Lv(t){var p,f,m;if(typeof Storage=="undefined")return()=>{};let e=Storage.prototype,n=(p=Object.getOwnPropertyDescriptor(e,"setItem"))==null?void 0:p.value,r=(f=Object.getOwnPropertyDescriptor(e,"removeItem"))==null?void 0:f.value,o=(m=Object.getOwnPropertyDescriptor(e,"clear"))==null?void 0:m.value;if(n===void 0||r===void 0||o===void 0)return()=>{};let a=g=>g===Od(()=>window.sessionStorage)?ha.SESSION:ha.LOCAL,s=(g,T)=>{try{return g.getItem(T)}catch{return null}},l=function(g,T){var y;let _=(y=cn(()=>s(this,g)))!=null?y:null;n.call(this,g,T),_!==T&&($p(g)||q(()=>{var A;t(x.STORAGE_CHANGE,{area:a(this),key:g,...ba(g,_)===void 0?{}:{old:ba(g,_)},new:(A=ba(g,T))!=null?A:_e})}))};e.setItem=l;let d=function(g){var _;let T=(_=cn(()=>s(this,g)))!=null?_:null;r.call(this,g),!$p(g)&&q(()=>{t(x.STORAGE_CHANGE,{area:a(this),key:g,...ba(g,T)===void 0?{}:{old:ba(g,T)}})})};e.removeItem=d;let u=function(){let g=a(this),T=[];try{for(let _=0;_<this.length;_+=1){let y=this.key(_);y!==null&&!$p(y)&&T.push({key:y,old:s(this,y)})}}catch{}o.call(this);for(let{key:_,old:y}of T)q(()=>{t(x.STORAGE_CHANGE,{area:g,key:_,...ba(_,y)===void 0?{}:{old:ba(_,y)}})})};return e.clear=u,()=>{e.setItem===l&&(e.setItem=n),e.removeItem===d&&(e.removeItem=r),e.clear===u&&(e.clear=o)}}H();lt();at();var gP=ws.FULL_PAGE_UNSUPPORTED,EP=[gP,ws.NOT_COMPOSITED],bP="__TAURI_INTERNALS__";function TP(){let t=window[bP];if(typeof(t==null?void 0:t.invoke)!="function")return;let e=t.invoke.bind(t);return async n=>{let r=await e(wp,{fullPage:n===!0});return typeof r=="string"?r:null}}async function SP(t){let e=[...document.querySelectorAll(ti)],n=e.map(r=>r.style.visibility);for(let r of e)r.style.visibility="hidden";try{return e.length>0&&(await di(),await di()),await t()}finally{e.forEach((r,o)=>{var a;r.style.visibility=(a=n[o])!=null?a:""})}}async function kv(t=!1){let e=window[uo],n=typeof(e==null?void 0:e.capture)=="function"?e.capture:TP();if(n===void 0)return{ok:!1,reason:"no desktop capture helper installed"};try{let r=await SP(()=>n(t));return typeof r=="string"&&r.length>0?{ok:!0,path:r}:{ok:!1,reason:"capture returned no image"}}catch(r){let o=r instanceof Error?r.message:String(r);for(let a of EP)if(o.includes(a))return{ok:!1,reason:a};return{ok:!1,reason:o}}}li();Ea();Dr();ci();function _P(t,e){var n;return(n=Object.getOwnPropertyDescriptor(t,e))==null?void 0:n.value}function sr(t,e){let n=_P(t,e);if(n===void 0)throw new Error(`[Reticle] cannot patch ${String(e)}: it is not an own property of the target`);return n}oi();var xP=12e4,ac=!1,bo=0,Dv=0,Mv=1,To=[],ic=null,Ta,bf={};function $v(){if(ic===null)return;let t=ic,e=t.clearTimeout.bind(window);Ta!==void 0&&e(Ta),Ta=t.setTimeout.bind(window)(()=>{Ta=void 0,sc()},xP)}function Pv(){return ac}function Hv(){if(ac||typeof window=="undefined")return;ac=!0,bo=0,Dv=Date.now(),ic={setTimeout:sr(window,"setTimeout"),clearTimeout:sr(window,"clearTimeout"),setInterval:sr(window,"setInterval"),clearInterval:sr(window,"clearInterval"),dateNow:sr(Date,"now")};let t=(r,o,a)=>{let s=Mv;return Mv+=1,To.push({id:s,time:bo+Math.max(0,o),cb:r,interval:a}),s},e=r=>{To=To.filter(o=>o.id!==r)},n=(r,o)=>()=>{r(...o)};window.setTimeout=((r,o=0,...a)=>t(n(r,a),o)),window.clearTimeout=(r=>e(r)),window.setInterval=((r,o=0,...a)=>t(n(r,a),o,Math.max(1,o))),window.clearInterval=(r=>e(r)),bf={setTimeout:Re(window,"setTimeout"),clearTimeout:Re(window,"clearTimeout"),setInterval:Re(window,"setInterval"),clearInterval:Re(window,"clearInterval")},Date.now=()=>Dv+bo,bf.dateNow=Re(Date,"now"),$v()}function Uv(t){if(!ac)return;let e=bo+Math.max(0,t),n=0;for(;n+=1,!(n>1e5);){let o=To.filter(a=>a.time<=e).sort((a,s)=>a.time-s.time)[0];if(o===void 0)break;To=To.filter(a=>a!==o),bo=o.time,o.cb(),o.interval!==void 0&&To.push({...o,time:bo+o.interval})}bo=e,$v()}function sc(){if(!ac||ic===null)return;let t=ic,e=To;Ta!==void 0&&(t.clearTimeout.bind(window)(Ta),Ta=void 0);let n=bf;bf={},window.setTimeout===n.setTimeout&&(window.setTimeout=t.setTimeout),window.clearTimeout===n.clearTimeout&&(window.clearTimeout=t.clearTimeout),window.setInterval===n.setInterval&&(window.setInterval=t.setInterval),window.clearInterval===n.clearInterval&&(window.clearInterval=t.clearInterval),Date.now===n.dateNow&&(Date.now=t.dateNow);let r=bo;if(ic=null,To=[],ac=!1,bo=0,e.length===0)return;let o=t.setTimeout.bind(window),a=t.setInterval.bind(window),s=new Map,l={},d=u=>{s.delete(u),s.size===0&&l.current!==void 0&&yP(t,l.current)};for(let u of e)u.interval!==void 0?s.set(u.id,a(u.cb,u.interval)):s.set(u.id,o(()=>{d(u.id),u.cb()},Math.max(0,u.time-r)));l.current=AP(s,t,d)}function AP(t,e,n){let r=o=>{let a=o.bind(window);return(s=>{let l=t.get(s);if(l===void 0){a(s);return}a(l),n(s)})};return window.clearTimeout=r(e.clearTimeout),window.clearInterval=r(e.clearInterval),{clearTimeout:Re(window,"clearTimeout"),clearInterval:Re(window,"clearInterval")}}function yP(t,e){window.clearTimeout===e.clearTimeout&&(window.clearTimeout=t.clearTimeout),window.clearInterval===e.clearInterval&&(window.clearInterval=t.clearInterval)}var Tf="_reticle_reload";function Ue(t){return typeof t=="string"?t:void 0}function zv(t){return typeof t=="number"?t:void 0}function Kv(t){return typeof t=="object"&&t!==null?t:{}}function FP(t){if(typeof t!="object"||t===null)return;let e=t;if(!(typeof e.file!="string"||typeof e.line!="number"))return{file:e.file,line:e.line,column:zv(e.column)}}function GP(t){return{by:Ue(t.by),value:Ue(t.value),role:Ue(t.role),name:Ue(t.name),text:Ue(t.text),label:Ue(t.label),placeholder:Ue(t.placeholder),testid:Ue(t.testid),alt:Ue(t.alt),component:Ue(t.component),scope:Ue(t.scope),self:t.self===!0?!0:void 0,attrs:Array.isArray(t.attrs)?t.attrs.filter(e=>typeof e=="string"):void 0,source:FP(t.source)}}function BP(t){var f,m,g,T,_,y,A;let e=J.resolve(t);if(e===null)throw new Error(bd.staleRefMessage(t));let n=e.getBoundingClientRect(),r=$r(e),o=e.ownerDocument.defaultView,a=o!==null?o.getComputedStyle(e):null,s=a!==null?{color:a.color,backgroundColor:a.backgroundColor,opacity:a.opacity,cursor:a.cursor,display:a.display,visibility:a.visibility}:null,l=Fp(Up(e,r==null?void 0:r.source)),d=l!==void 0?void 0:kA(e.ownerDocument)?"This element has no source stamp. Others on the page do, so the stamping loader is running \u2014 the nearest stamped ancestor is out of range, or this element is rendered outside instrumented code.":"No element in this document carries a source stamp, so the stamping loader is not running: an older adapter, a bundler whose hook never ran, or a build the plugin was dropped from. Add @reticlehq/vite-plugin (or @reticlehq/babel-plugin) to the dev build and restart the dev server to get `file:line` back.",u={scrollTop:e.scrollTop,scrollHeight:e.scrollHeight,clientHeight:e.clientHeight,overflowY:(f=a==null?void 0:a.overflowY)!=null?f:"visible",scrollLeft:e.scrollLeft,scrollWidth:e.scrollWidth,clientWidth:e.clientWidth,overflowX:(m=a==null?void 0:a.overflowX)!=null?m:"visible"},p=ay(e);return{...Mr(e),...l!==void 0?{source:l}:{},...p.length>0?{paintContext:p}:{},...d!==void 0?{sourceUnavailable:d}:{},tag:e.tagName.toLowerCase(),href:(g=e.getAttribute("href"))!=null?g:void 0,formAction:(Vs(e)||ve(e))&&(_=(T=e.form)==null?void 0:T.getAttribute("action"))!=null?_:void 0,formText:(Vs(e)||ve(e))&&(A=(y=e.form)==null?void 0:y.textContent)!=null?A:void 0,box:{x:n.x,y:n.y,width:n.width,height:n.height},occluded:VP(e,n),styles:s,scroll:u,theme:a!==null?Ov(a):null,component:r}}function VP(t,e){return ff(t,e)!==null}function jP(t){return typeof t=="object"&&t!==null&&"ok"in t&&typeof t.ok=="boolean"}var Wv={ok:!1,reason:IS.UNAVAILABLE};function KP(t,e,n,r){let o=ai();if(n!==void 0||r!==void 0){let d=Wg(e);if(e!==void 0&&!Object.hasOwn(d,e))return{store:e,path:n,found:!1,value:null,storeNames:o};let u=e!==void 0?d[e]:{stores:d,storeNames:o},p=n!==void 0?Ax(u,n):{found:!0,value:u},f=p.found&&r!==void 0?Us(p.value,r):p.value,m=pd(f);return{store:e,path:n,found:p.found,value:m.value,...m.truncation===void 0?{}:{truncation:m.truncation},..."availableKeys"in p?{availableKeys:p.availableKeys}:{},..."totalKeys"in p?{totalKeys:p.totalKeys}:{},storeNames:o}}let{stores:a,truncation:s}=Sd(e),l={stores:a,storeNames:o};if(s!==void 0&&(l.truncation=s),t!==void 0&&t.length>0){let d=J.resolve(t);if(d===null)l.component=Wv;else{let u=Qp(d);l.component=jP(u)?u:Wv}}return l}function WP(){let t=document;return typeof t.getAnimations!="function"?{animations:[]}:{animations:t.getAnimations().map(n=>{var s;let r=n.effect,o=r==null?void 0:r.getTiming(),a=(s=r==null?void 0:r.target)!=null?s:null;return{playState:n.playState,currentTime:n.currentTime,duration:o==null?void 0:o.duration,target:a===null?null:Mr(a)}})}}function zP(t,e){if(t.length===0||t.length>G.MAX_URL_LENGTH)return null;try{let n=new URL(t,e);return n.protocol==="http:"||n.protocol==="https:"?n.toString():null}catch{return null}}function Yv(){let t=new Map;return t.set(L.SNAPSHOT,e=>{var n;return Kp({scope:Ue(e.scope),mode:(n=Ue(e.mode))!=null?n:Is.FULL,includeRoot:e.includeRoot===!0})}),t.set(L.QUERY,e=>{let n=e.limit;return nf(GP(e),typeof n=="number"?n:void 0)}),t.set(L.MATCH,e=>xd(jl.parse(Kv(e.query)),Ue(e.state))),t.set(L.ACT,e=>{var r,o;let n=(r=Ue(e.action))!=null?r:"";return wd((o=Ue(e.ref))!=null?o:"",n,Kv(e.args))}),t.set(L.ACT_SEQUENCE,e=>gf(Array.isArray(e.steps)?e.steps:[])),t.set(L.INSPECT,e=>{var n;return BP((n=Ue(e.ref))!=null?n:"")}),t.set(L.ANIMATIONS,()=>WP()),t.set(L.CLOCK,e=>{if(e.reset===!0)sc();else{e.freeze===!0&&Hv();let n=e.advanceMs;typeof n=="number"&&Uv(n)}return{frozen:Pv()}}),t.set(L.STATE_READ,e=>KP(Ue(e.ref),Ue(e.store),Ue(e.path),zv(e.depth))),t.set(L.STORAGE_READ,e=>Cv(Ue(e.area))),t.set(L.CAPABILITIES,()=>si()),t.set(L.CAPTURE,e=>kv(e.fullPage===!0)),t.set(L.RENDER,()=>Promise.resolve().then(()=>(jv(),Vv)).then(e=>e.renderPage())),t.set(L.SCROLL,e=>{let n=e.dy,r=e.fraction;return Sv(Ue(e.ref),typeof n=="number"?n:void 0,typeof r=="number"?r:void 0)}),t.set(L.NAVIGATE,e=>{let n=Ue(e.url);if(n===void 0||n.length===0)return{ok:!1,reason:"url required"};let r=zP(n,window.location.href);return r===null?{ok:!1,reason:"only http(s) navigation is allowed"}:(window.location.assign(r),{ok:!0,url:r})}),t.set(L.REFRESH,e=>{if(e.hard===!0){let n=new URL(window.location.href);n.searchParams.set(Tf,String(Date.now())),window.location.replace(n.toString())}else window.location.reload();return{ok:!0}}),t}H();lt();Td();Dr();function YP(t){if(typeof document=="undefined")return()=>{};let e=()=>{document.visibilityState==="visible"&&t()};return document.addEventListener("visibilitychange",e),()=>document.removeEventListener("visibilitychange",e)}var mE=1e3,XP=3e4;function qP(t){return Math.min(t*2,XP)}var ZP=500,QP=1008,JP=3,Vt,So,fi,xf,hi,cc,lc,Sa,dc,Cd,uc,Ld,pc,_a,fc,hc,jt,kd,Ae,Xv,Sf,gE,qv,EE,bE,Zv,Id,Qv,_f=class{constructor(e){b(this,Ae);b(this,Vt);b(this,So,[]);b(this,fi,[]);b(this,xf,0);b(this,hi,!1);b(this,cc,!1);b(this,lc);b(this,Sa,mE);b(this,dc,!1);b(this,Cd,!1);b(this,uc,0);b(this,Ld,!1);b(this,pc,0);b(this,_a);b(this,fc);b(this,hc);b(this,jt);b(this,kd);var n;h(this,jt,e),h(this,kd,(n=e.now)!=null?n:af)}connect(){var e,n;typeof WebSocket!="undefined"&&(h(this,hi,!1),(n=c(this,hc))!=null||h(this,hc,((e=c(this,jt).onVisible)!=null?e:YP)(()=>E(this,Ae,Xv).call(this))),E(this,Ae,Sf).call(this))}sendEvent(e){E(this,Ae,Id).call(this,kr({kind:Dt.EVENT,event:e}),{seq:e.seq,t:e.t,type:e.type})}reannounce(){c(this,Vt)===void 0||c(this,Vt).readyState!==WebSocket.OPEN||c(this,Vt).send(JSON.stringify(c(this,jt).hello()))}close(){var e,n;h(this,hi,!0),(e=c(this,hc))==null||e.call(this),h(this,hc,void 0),(n=c(this,Vt))==null||n.close(),h(this,Vt,void 0)}};Vt=new WeakMap,So=new WeakMap,fi=new WeakMap,xf=new WeakMap,hi=new WeakMap,cc=new WeakMap,lc=new WeakMap,Sa=new WeakMap,dc=new WeakMap,Cd=new WeakMap,uc=new WeakMap,Ld=new WeakMap,pc=new WeakMap,_a=new WeakMap,fc=new WeakMap,hc=new WeakMap,jt=new WeakMap,kd=new WeakMap,Ae=new WeakSet,Xv=function(){c(this,hi)||(h(this,Sa,mE),c(this,Vt)===void 0&&(h(this,cc,!1),E(this,Ae,Sf).call(this)))},Sf=function(){let e;try{e=new WebSocket(c(this,jt).url)}catch{E(this,Ae,bE).call(this),E(this,Ae,EE).call(this),E(this,Ae,gE).call(this);return}h(this,Vt,e),e.onopen=()=>{var o,a,s;h(this,lc,void 0),h(this,dc,!1),h(this,Cd,!0),h(this,Sa,mE);let n=c(this,jt).hello();(o=c(this,fc))!=null||h(this,fc,n.sessionId),e.send(JSON.stringify(n)),E(this,Ae,Qv).call(this,e,n.sessionId);let r=[...c(this,So),...c(this,fi)].sort((l,d)=>l.order-d.order);for(let l of r)e.send(l.text);h(this,So,[]),h(this,fi,[]),(s=(a=c(this,jt)).onConnected)==null||s.call(a)},e.onmessage=n=>{let r=n.data;E(this,Ae,Zv).call(this,typeof r=="string"?r:String(r))},e.onclose=n=>{var r,o;if(h(this,Vt,void 0),n.code===QP){h(this,cc,!0);let a=n.reason.length>0?n.reason:"policy violation";ar(`[reticle] bridge refused the connection: ${a} \u2014 not retrying until you come back to this tab.`),(o=(r=c(this,jt)).onConnectionLost)==null||o.call(r);return}E(this,Ae,bE).call(this),E(this,Ae,EE).call(this),E(this,Ae,gE).call(this)},e.onerror=()=>{e.close()}},gE=function(){var r;if(c(this,hi)||c(this,cc))return;let e=c(this,Sa);h(this,Sa,qP(e)),((r=c(this,jt).schedule)!=null?r:ee)(()=>E(this,Ae,qv).call(this),e)},qv=function(){c(this,hi)||c(this,Vt)!==void 0||E(this,Ae,Sf).call(this)},EE=function(){var e,n;c(this,Cd)||c(this,Ld)||(h(this,uc,c(this,uc)+1),c(this,uc)>=JP&&(h(this,Ld,!0),(n=(e=c(this,jt)).onUnreachable)==null||n.call(e,{url:c(this,jt).url,attempts:c(this,uc)})))},bE=function(){var n,r,o;let e=c(this,kd).call(this);(n=c(this,lc))!=null||h(this,lc,e),!c(this,dc)&&e-c(this,lc)>=O_.BRIDGE_LOST_MS&&(h(this,dc,!0),(o=(r=c(this,jt)).onConnectionLost)==null||o.call(r))},Zv=async function(e){var s;let n;try{n=JSON.parse(e)}catch{return}let r=ag.safeParse(n);if(!r.success){let l=n==null?void 0:n.id;typeof l=="string"&&l.length>0&&E(this,Ae,Id).call(this,kr({kind:Dt.COMMAND_RESULT,id:l,ok:!1,error:"this page could not parse the command \u2014 the @reticlehq/browser SDK and the daemon are probably different versions. Nothing ran."}));return}let o=r.data;if(o.sessionId!==void 0&&o.sessionId!==c(this,fc)){E(this,Ae,Id).call(this,kr({kind:Dt.COMMAND_RESULT,id:o.id,ok:!1,error:`command addressed to session ${o.sessionId} but this page is ${(s=c(this,fc))!=null?s:"(none)"} \u2014 the page reconnected under a new id, or two sessions share a socket. Nothing ran.`}));return}let a;try{a=await c(this,jt).handleCommand(o)}catch(l){a={ok:!1,error:l instanceof Error?l.message:String(l)}}E(this,Ae,Id).call(this,kr({kind:Dt.COMMAND_RESULT,id:o.id,ok:a.ok,result:a.result,error:a.error}))},Id=function(e,n){if(c(this,Vt)!==void 0&&c(this,Vt).readyState===WebSocket.OPEN){c(this,Vt).send(e);return}if(c(this,So).length+c(this,fi).length>=ZP){let a=c(this,So).length>0?c(this,So).shift():c(this,fi).shift();if((a==null?void 0:a.event)!==void 0){h(this,pc,c(this,pc)+1);let s=c(this,_a);(s===void 0||a.event.t<s.t)&&h(this,_a,a.event)}}let r=n!==void 0&&T_.has(n.type),o=eS(this,xf)._++;r?c(this,So).push({text:e,event:n,order:o}):c(this,fi).push({text:e,event:n,order:o})},Qv=function(e,n){let r=c(this,_a);if(r===void 0)return;let o={t:r.t,seq:r.seq,type:x.TRANSPORT_OVERFLOW,sessionId:n,data:{dropped:c(this,pc)}};e.send(kr({kind:Dt.EVENT,event:o})),h(this,_a,void 0),h(this,pc,0)};TE();li();H();Ea();function eR(){let t=[R.UI,R.NET,R.LOG,R.ROUTE,R.STORAGE,R.TIME,R.SIGNAL];return ai().length>0?[...t,R.STATE]:t}H();var e5="__TAURI_INTERNALS__";function tR(){if(typeof window=="undefined")return Or.SERVICE;let t=window;return t[uo]!==void 0||t[e5]!==void 0?Or.WEBVIEW:Or.WEB}var t5=[L.SNAPSHOT,L.QUERY,L.MATCH,L.INSPECT,L.ACT,L.ACT_SEQUENCE,L.ANIMATIONS,L.NARRATE,L.CLOCK,L.CAPABILITIES,L.STATE_READ,L.STORAGE_READ,L.SCROLL,L.SESSION_CONFIG,L.PRESENTER,L.IMPACT,L.CAPTURE,L.RENDER,L.NAVIGATE,L.REFRESH,L.FLOWS,L.FLOW_PROGRESS,L.PLAN,L.MARKERS];function nR(){return[...t5]}ci();on();H();Bt();Rt();at();Ys();Un();function n5(t){var e,n;try{return(n=(e=t.contentDocument)==null?void 0:e.body)!=null?n:null}catch{return null}}function SE(t){let e=[],n=(r,o)=>{if(!(o>=3))for(let a of r.querySelectorAll("iframe")){let s=n5(a);s!==null&&(e.push(s),n(s,o+1))}};return n(t,0),e}function rR(t){let e=new AbortController,n=()=>{for(let o of SE(document))t(o)};n();let r=o=>{o.target instanceof HTMLIFrameElement&&n()};return document.addEventListener("load",r,{capture:!0,signal:e.signal}),()=>e.abort()}function oR(t){var r;let e=an(t)?t:null;if(e===null)return;let n=e.closest(rr());return(r=n?Pe(n):null)!=null?r:J.refFor(e)}var r5=["class","hidden","disabled","open","aria-hidden","aria-expanded","aria-selected","aria-checked","data-state","style","src","href","value"],iR=120;function yf(t){if(t!==null)return t.length>iR?`${t.slice(0,iR)}\u2026`:t}var o5=new Set(["dialog","alertdialog"]),i5=new Set(["alert","status"]),Dd=40;function aR(t,e){return t!=="generic"||e.length>0}var a5=40;function sR(t){let e=xe(t),n=Ne(t);if(aR(e,n))return{role:e,name:n,el:t};let r=0;for(let o of t.querySelectorAll("*")){if(r>=a5)return;if(r+=1,ni(o))continue;let a=xe(o),s=Ne(o);if(aR(a,s))return{role:a,name:s,el:o}}}var s5=3;function _E(t){var r;let e="";for(let o of t)o.nodeType===s5&&(e+=(r=o.nodeValue)!=null?r:"");let n=e.trim();return n.length>0?n:void 0}var c5=new Set(["class","style","type","disabled","readonly","required","hidden"]);function l5(t,e){return!c5.has(e)&&!e.startsWith("aria-")&&ir(t)}function cR(t){let e=OA(),n=new MutationObserver(s=>{var f,m,g,T,_;let l=0,d=0,u=0,p=0;for(let y of s){if(y.type==="attributes"){let A=y.target;if(an(A)&&y.attributeName!==null&&!ni(A)){if(u>=Dd){p+=1;continue}u+=1;let v=l5(A,y.attributeName),O=v?_e:yf(A.getAttribute(y.attributeName)),B=v&&y.oldValue!==null?_e:yf(y.oldValue);t(x.DOM_ATTR,{attr:y.attributeName,...O===void 0?{}:{value:O},...B===void 0?{}:{old:B}},J.refFor(A))}continue}if(y.type==="characterData"){let A=y.target.parentElement;if(A!==null&&!ni(A)){if(u>=Dd){p+=1;continue}u+=1;let v=ir(A),O=v?_e:((f=y.target.textContent)!=null?f:"").trim().slice(0,80),B=v?void 0:yf((g=(m=y.oldValue)==null?void 0:m.trim())!=null?g:null);t(x.DOM_TEXT,{text:O,...B===void 0?{}:{old:B}},J.refFor(A))}continue}if(_E(y.addedNodes)!==void 0||_E(y.removedNodes)!==void 0){let A=an(y.target)?y.target:null;if(A!==null&&!ni(A))if(u>=Dd)p+=1;else{u+=1;let v=ir(A),O=v?_e:((T=A.textContent)!=null?T:"").trim().slice(0,80),B=v?void 0:yf((_=_E(y.removedNodes))!=null?_:null);t(x.DOM_TEXT,{text:O,...B===void 0?{}:{old:B}},J.refFor(A))}}for(let A of y.addedNodes){if(!an(A))continue;if(l>=Dd){p+=1;continue}if(ni(A))continue;let v=sR(A);if(v===void 0)continue;let{role:O,name:B}=v;l+=1;let oe=J.refFor(v.el);t(x.DOM_ADDED,{role:O,name:B,region:oR(y.target)},oe),(o5.has(O)||i5.has(O)||A.getAttribute("aria-modal")==="true")&&Gt(A)&&t(x.VISIBLE_SHOWN,{role:O,name:B},oe)}for(let A of y.removedNodes){if(!an(A))continue;if(d>=Dd){p+=1;continue}if(ni(A)||an(y.target)&&ni(y.target))continue;let v=sR(A);if(v===void 0)continue;let{role:O,name:B}=v;d+=1,t(x.DOM_REMOVED,{role:O,name:B,region:oR(y.target)})}}p>0&&t(x.TRUNCATED,{channel:sp.DOM,dropped:p})}),r={subtree:!0,childList:!0,attributes:!0,attributeFilter:r5,attributeOldValue:!0,characterData:!0,characterDataOldValue:!0};n.observe(document.documentElement,r);for(let s of RA())n.observe(s,r);let o=wA(s=>n.observe(s,r)),a=rR(s=>n.observe(s,r));return()=>{a(),o(),e(),n.disconnect()}}H();Ea();Dr();function lR(t){return typeof t=="object"&&t!==null&&!Array.isArray(t)}function d5(t,e){if(!lR(t)||!lR(e))return Object.is(t,e)?[]:[{path:"",old:t,new:e}];let n=[];for(let r of new Set([...Object.keys(t),...Object.keys(e)]))Object.is(t[r],e[r])||n.push({path:r,old:t[r],new:e[r]});return n}function dR(t,e){return tt(t)?_e:ud(e)}function uR(t,e){if(Object.is(t,e))return!0;try{return JSON.stringify(t)===JSON.stringify(e)}catch{return!1}}function pR(t){try{return t()}catch{return}}function fR(t){let e=new Map,n=([o,a,s])=>{var d;try{(d=e.get(o))==null||d()}catch{}let l=pR(a);e.set(o,s(()=>{q(()=>{let u=pR(a),p=d5(l,u);l=u;for(let f of p){let m=dR(f.path,f.new),g=dR(f.path,f.old);(tt(f.path)?uR(ud(f.old),ud(f.new)):uR(g,m))||q(()=>t(x.STATE_CHANGE,{name:o,path:f.path,value:m,old:g}))}})}))};for(let o of by())n(o);e.size===0&&t(x.BLIND_SPOT,{kind:Pt.UNWATCHED_STATE,count:1});let r=my(o=>{let a=e.size===0;n(o),a&&e.size>0&&t(x.BLIND_SPOT,{kind:Pt.UNWATCHED_STATE,count:0})});return()=>{r();for(let o of e.values())try{o()}catch{}e.clear()}}H();Bt();function mc(t){if(!(t instanceof Element)||t===document.body)return;let e=xe(t),n=Ne(t);return n.length>0?`${e} "${n}"`:e}function u5(t){return t===null||t===document.body}function hR(t){let e=new AbortController,{signal:n}=e,r=null,o=s=>{let l=s.target,d=r;r=l,t(x.FOCUS_CHANGE,{...mc(l)===void 0?{}:{to:mc(l)},...mc(d)===void 0?{}:{from:mc(d)},toBody:u5(l)})},a=s=>{if(s.relatedTarget!==null)return;let l=r;r=null,t(x.FOCUS_CHANGE,{...mc(l)===void 0?{}:{from:mc(l)},toBody:!0})};return document.addEventListener("focusin",o,{signal:n}),document.addEventListener("focusout",a,{signal:n}),()=>e.abort()}on();H();Bt();var mR=160,p5=150;function gR(t){return t instanceof HTMLInputElement||t instanceof HTMLTextAreaElement||t instanceof HTMLSelectElement}function f5(t){let e=Pe(t);if(e!==null&&e.length>0)return e;if(t.name.length>0)return t.name;let n=Ne(t);if(n.length>0)return n;let r=t.getAttribute("id");return r!==null&&r.length>0?r:t.tagName.toLowerCase()}function ER(t){let e=new AbortController,{signal:n}=e,r=new Map,o=(d,u)=>{let p=d.value,f=ir(d);t(x.FIELD_CHANGE,{field:f5(d),kind:u,length:p.length,...f?{redacted:!0}:{value:p.length>mR?`${p.slice(0,mR)}\u2026`:p}})},a=d=>{let u=r.get(d);u!==void 0&&clearTimeout(u),r.delete(d)},s=d=>{let u=d.target;gR(u)&&(a(u),r.set(u,setTimeout(()=>{r.delete(u),o(u,"input")},p5)))},l=d=>{let u=d.target;gR(u)&&(a(u),o(u,"change"))};return document.addEventListener("input",s,{signal:n,capture:!0}),document.addEventListener("change",l,{signal:n,capture:!0}),()=>{for(let d of r.values())clearTimeout(d);r.clear(),e.abort()}}H();function h5(t){let e=t;for(let n=0;n<3;n+=1){let r=Array.from(e.children).filter(a=>a instanceof HTMLElement),o=r.length===1?r[0]:void 0;if(o===void 0||o.offsetHeight<e.scrollHeight*.9)return e;e=o}return e}function m5(t){let e=t.scrollHeight,n=t.clientHeight;if(n<=0||e<n*1.2)return 0;let r=h5(t),o=Array.from(r.children).filter(p=>p instanceof HTMLElement);if(o.length<2)return 0;let a=1/0,s=0,l=0;for(let p of o){let f=p.offsetTop,m=f+p.offsetHeight;f<a&&(a=f),m>s&&(s=m),l+=p.offsetHeight}let d=Math.max(0,a)+Math.max(0,e-s);if(d<e*.25)return 0;let u=l/o.length;return u<=0?0:Math.round(d/u)}function bR(){let t=0;for(let e of document.querySelectorAll("*"))e.scrollHeight<=e.clientHeight||(t+=m5(e));return t}Ys();lt();function g5(){var e;let t=0;for(let n of document.querySelectorAll("*"))n.tagName.includes("-")&&n.shadowRoot===null&&(NA(n)||n.children.length>0||((e=n.textContent)!=null?e:"").trim().length>0||n.offsetHeight<=0&&n.offsetWidth<=0||(t+=1));return t}function E5(t){let e=t.getAttribute("src");if(e===null||e.length===0)return!1;try{return t.contentDocument===null}catch{return!0}}function b5(t){let e=0;for(let n of t)E5(n)&&(e+=1);return e}function T5(){return b5(Array.from(document.querySelectorAll("iframe")))}function S5(){return SE(document).length}var _5=250;function TR(t){let e=[{kind:Pt.CROSS_ORIGIN_IFRAME,count:T5},{kind:Pt.UNINSTRUMENTED_FRAME,count:S5},{kind:Pt.CLOSED_SHADOW_ROOT,count:g5},{kind:Pt.VIRTUALIZED_UNMOUNTED,count:bR}],n=new Map,r=()=>{for(let s of e){let l=s.count();l!==n.get(s.kind)&&(n.set(s.kind,l),l>0&&t(x.BLIND_SPOT,{kind:s.kind,count:l}))}};r();let o,a=new MutationObserver(()=>{o===void 0&&(o=ee(()=>{o=void 0,r()},_5))});return a.observe(document.documentElement,{childList:!0,subtree:!0}),()=>{o!==void 0&&Te(o),a.disconnect()}}H();oi();H();Dr();lt();var x5=/application\/json|text\/|application\/xml|x-www-form-urlencoded|graphql/i,A5=/event-stream|x-ndjson|application\/stream/i,y5=/event-stream/i;function xR(t,e){return t!==null&&y5.test(t)?!1:e===null}var v5=500;async function AR(t){let e;try{return await Promise.race([t,new Promise(n=>{e=ee(()=>n(void 0),v5)})])}finally{e!==void 0&&Te(e)}}function xE(t){return t===null||A5.test(t)?!1:x5.test(t)}var yR=8192,R5=262144,N5=256,Md=yR;function vR(t){Number.isFinite(t)&&(Md=Math.min(R5,Math.max(N5,Math.floor(t))))}var w5=yR*2;function O5(t){let e=Md*2;return t?Math.min(e,w5):e}var I5=/\b(Bearer|Basic)\s+(?=[A-Za-z0-9._~+/=-]{16,})(?=[A-Za-z0-9._~+/=-]*[\d._~+/=-])[A-Za-z0-9._~+/=-]+/gi;function SR(t){return t.replace(I5,(e,n)=>`${n} ${_e}`).replace(/([A-Za-z0-9_.-]+)(\s*[=:]\s*"?)([^&\s,;"}]+)/g,(e,n,r)=>tt(n)?`${n}${r}${_e}`:e)}var _R=4096;function AE(t,e){return e&&t>=400}function yE(t,e){let n=mi(t,e);return n.body.length<=_R?n:{body:n.body.slice(0,_R),truncated:!0}}function mi(t,e){let n=e!==null&&/json|graphql/i.test(e),r=O5(!n),o=t.length>r,a=o?t.slice(0,r):t,s;if(n)try{s=kr(JSON.parse(a))}catch{s=SR(a)}else s=SR(a);s=fa(s);let l=o||s.length>Md;return{body:s.length>Md?s.slice(0,Md):s,truncated:l}}var C5=/text\/|json|csv|xml|ndjson|javascript/i,L5=2e3;function RR(t,e={}){if(typeof URL.createObjectURL!="function")return()=>{};let n=new AbortController,r=URL.createObjectURL.bind(URL),o=new Map,a=Re(URL,"createObjectURL"),s=function(g){let T=r(g);return q(()=>{if(typeof Blob!="undefined"&&g instanceof Blob){let _=C5.test(g.type)?g.text().catch(()=>{}):Promise.resolve(void 0);o.set(T,{type:g.type,size:g.size,text:_})}}),T};URL.createObjectURL=s;let l=(m,g)=>{let T=o.get(m);T!==void 0&&(o.delete(m),T.text.then(_=>{q(()=>{d(T,g,_)})}))},d=(m,g,T)=>{let _={mimeType:m.type,bytes:m.size};if(g!==void 0&&g.length>0&&(_.filename=g),T!==void 0&&(_.lines=T.split(`
1779
- `).filter(y=>y.length>0).length,e.capturePreview===!0)){let{body:y,truncated:A}=mi(T.slice(0,L5),m.type);_.preview=y,A&&(_.previewTruncated=!0)}t(x.DOWNLOAD,_)},u=m=>{q(()=>{var _,y;let g=m.target,T=g instanceof Element?g.closest("a[download]"):null;T!==null&&l((_=T.getAttribute("href"))!=null?_:"",(y=T.getAttribute("download"))!=null?y:void 0)})};document.addEventListener("click",u,{capture:!0,signal:n.signal});let p=Re(HTMLAnchorElement.prototype,"click"),f=function(){let g=cn(()=>{var T,_;return this.hasAttribute("download")?{href:(T=this.getAttribute("href"))!=null?T:"",name:(_=this.getAttribute("download"))!=null?_:void 0}:void 0});p.call(this),q(()=>{g!==void 0&&l(g.href,g.name)})};return HTMLAnchorElement.prototype.click=f,()=>{n.abort(),URL.createObjectURL===s&&(URL.createObjectURL=a),HTMLAnchorElement.prototype.click===f&&(HTMLAnchorElement.prototype.click=p),o.clear()}}H();oi();function NR(t){let e=Re(window,"open");if(e===void 0)return()=>{};let r=function(o,a,s){let l=e.call(this,o,a,s);return q(()=>{t(x.CONTEXT_OPENED,{...o===void 0?{}:{href:o}})}),l};return window.open=r,()=>{window.open===r&&(window.open=e)}}H();oi();H();H();lt();var k5=1e4;function wR(t,e,n,r,o,a){var d;if(!xR(o,a)||typeof((d=e.body)==null?void 0:d.getReader)!="function")return;let s;try{s=e.clone()}catch{return}let l=s.body;l!==null&&(t(x.NET_STREAM,{transport:Ir.FETCH,direction:Cr.OPEN,...r,id:n}),(async()=>{let u=l.getReader(),p=!1,f,m=new Promise(g=>{f=ee(()=>g("expired"),k5)});try{for(;;){let g=await Promise.race([u.read(),m]);if(g==="expired"){p=!0,u.cancel().catch(()=>{});break}if(g.done)break}}catch{}finally{f!==void 0&&Te(f)}t(x.NET_STREAM,{transport:Ir.FETCH,direction:Cr.CLOSE,...r,id:n,...p?{gaveUp:!0}:{}})})())}function D5(t){if(t instanceof ArrayBuffer)return t.byteLength;if(typeof Blob!="undefined"&&t instanceof Blob)return t.size;if(ArrayBuffer.isView(t))return t.byteLength}function vE(t,e){if(typeof t!="string"){let r=D5(t);return r===void 0?{frameType:typeof t}:{frameType:"binary",frameBytes:r}}let n={frameBytes:t.length};if(e){let{body:r,truncated:o}=mi(t,"application/json");n.frame=r,o&&(n.frameTruncated=!0)}return n}var gc={NULL:"0",STRING:"s",NUMBER:"n",BOOLEAN:"b",OTHER:"?"};function vf(t){if(t===null)return gc.NULL;if(Array.isArray(t))return`[${t.map(vf).join(",")}]`;if(typeof t=="object"){let e=t;return`{${Object.keys(e).sort().map(n=>`${n}:${vf(e[n])}`).join(",")}}`}return typeof t=="string"?gc.STRING:typeof t=="number"?gc.NUMBER:typeof t=="boolean"?gc.BOOLEAN:gc.OTHER}function wE(t,e){return Fs(`${t}#${String(e)}`)}function M5(t){try{return vf(JSON.parse(t))}catch{return gc.OTHER}}var $5=1<<20,P5=9,H5=10,U5=13,F5=32,G5=127;function B5(t){for(let e=0;e<t.length;e+=1){let n=t.charCodeAt(e);if(n===G5||n<F5&&n!==P5&&n!==H5&&n!==U5)return!0}return!1}function V5(t){if((t instanceof ArrayBuffer||ArrayBuffer.isView(t))&&!(t.byteLength>$5))try{let e=new TextDecoder("utf-8",{fatal:!0}).decode(t);return B5(e)?void 0:e}catch{return}}function j5(t){let e=[],n=0;return t.forEach((r,o)=>{typeof r=="string"&&(n+=r.length),e.push(JSON.stringify([o,typeof r=="string"?0:[r.type,r.size]]))}),e.length===0?void 0:wE(e.sort().join(),n)}function RE(t,e){let n,r="application/json",o=F_,a=V5(t),s=()=>{var p,f;return(f=(p=t.constructor)==null?void 0:p.name)!=null?f:typeof t};if(typeof t=="string"||a!==void 0)n=a!=null?a:t,n.length>0&&(o=wE(M5(n),n.length));else if(typeof FormData!="undefined"&&t instanceof FormData){let p=j5(t);return{...p===void 0?{}:{[Zl]:p},...e?{requestBodyType:s()}:{}}}else if(typeof URLSearchParams!="undefined"&&t instanceof URLSearchParams){if(n=t.toString(),r="application/x-www-form-urlencoded",n.length>0){let p=Object.fromEntries(new URLSearchParams(n));o=wE(vf(p),n.length)}}else if(t!=null)return e?{requestBodyType:s()}:{};let l={[Zl]:o};if(!e||n===void 0||n.length===0)return l;let{body:d,truncated:u}=mi(n,r);return u?{...l,requestBody:d,requestBodyTruncated:!0}:{...l,requestBody:d}}function OR(t){return t>=200&&t<400}function IR(t,e,n){let r={};t!==""&&(r.statusText=t),e!==null&&e!==""&&(r.contentType=e);let o=n!==null?Number.parseInt(n,10):Number.NaN;return Number.isFinite(o)&&(r.responseSize=o),r}function K5(t){return typeof t=="string"?t:t instanceof URL?t.href:t.url}function W5(t,e){return(e==null?void 0:e.method)!==void 0?e.method.toUpperCase():t instanceof Request?t.method.toUpperCase():"GET"}function z5(t,e){var n,r;if(e!==void 0&&e.headers!==void 0)return(n=cn(()=>new Headers(e.headers).get(qm)))!=null?n:void 0;if(t instanceof Request)return(r=cn(()=>t.headers.get(qm)))!=null?r:void 0}var Y5=/@reticlehq|reticle\.ts|network\.ts|transport\.ts|<anonymous>|new Promise|node:internal/i,X5=/node_modules|\/\.vite\/deps\//i;function q5(t){var r;if(t===void 0)return;let e=t.split(`
1780
- `).slice(1).map(o=>o.trim()).filter(o=>o.length>0&&!Y5.test(o)),n=e.find(o=>!X5.test(o));return(r=n!=null?n:e[0])==null?void 0:r.slice(0,300)}function NE(){return q5(new Error().stack)}function Z5(t){if(t===void 0)return{};let e={};return t.responseStart>0&&t.requestStart>0&&(e.ttfbMs=Math.round(t.responseStart-t.requestStart)),t.transferSize>0&&(e.transferSize=t.transferSize),e}function CR(t){try{let e=performance.getEntriesByName(t,"resource");return Z5(e[e.length-1])}catch{return{}}}function Q5(t){try{return new URL(t,location.href).pathname===oa}catch{return t.includes(oa)}}function J5(t){try{return Function.prototype.toString.call(t).includes("native code")}catch{return!1}}var LR=new WeakSet;function kR(t,e={}){var gs,WT,zT;let n=e.captureBodies===!0,r=e.captureErrorBodies!==!1,o=e.reinterpret,a=sr(window,"fetch"),s=a.bind(window);!J5(a)&&!LR.has(a)&&t(x.BLIND_SPOT,{kind:Pt.WRAPPED_NETWORK,count:1});let l=0,d=()=>`n${++l}`;window.fetch=async(Ce,ue)=>{var XT,qT,ZT;let Je=K5(Ce);if(((XT=e.ignore)==null?void 0:XT.call(e,Je))===!0)return s(Ce,ue);let xt=d(),Ve=performance.now(),qt=W5(Ce,ue),Lt=z5(Ce,ue),Wo=Lt===void 0?{}:{[Sp]:Lt},Gi=(qT=cn(()=>RE(ue==null?void 0:ue.body,n)))!=null?qT:{},Es=wr(Je),zu=Es.url,YT=cn(()=>NE()),Jh=YT===void 0?{}:{initiatorStack:YT};q(()=>{t(x.NET_PENDING,{id:xt,method:qt,...Es,initiator:"fetch",...Jh})});try{let At=await s(Ce,ue),zC=performance.now(),kl=(ZT=cn(()=>At.headers.get("content-type")))!=null?ZT:null;q(()=>{wR(t,At,xt,Es,kl,At.headers.get("content-length"))}),Ge.add(Je);let QT=Dl=>{q(()=>{var Ml;t(x.NET_REQUEST,{id:xt,method:qt,...Es,status:At.status,ok:OR(At.status),durationMs:Math.round(zC-Ve),initiator:"fetch",...Jh,...CR(Je),...IR(At.statusText,kl,At.headers.get("content-length")),...Gi,...Wo,...Dl,...(Ml=o==null?void 0:o(zu,$l=>At.headers.get($l)))!=null?Ml:{}})})},YC=AE(At.status,r);if((n||YC)&&xE(kl)){let Dl;try{Dl=At.clone()}catch{}(async()=>{let Ml={};if(Dl!==void 0)try{let $l=await AR(Dl.text());if($l!==void 0){let{body:XC,truncated:qC}=n?mi($l,kl):yE($l,kl);Ml={responseBody:XC,...qC?{responseBodyTruncated:!0}:{},...n?{}:{responseBodyReason:"error-status"}}}}catch{}try{QT(Ml)}catch{}})().catch(()=>{})}else QT({});return At}catch(At){throw q(()=>{t(x.NET_REQUEST,{id:xt,method:qt,url:zu,status:0,ok:!1,error:At instanceof Error?At.message:String(At),durationMs:Math.round(performance.now()-Ve),initiator:"fetch",...Jh,...Wo})}),At}};let u=sr(window,"fetch");LR.add(u);let p=new WeakMap,f=XMLHttpRequest.prototype,m=Re(f,"open"),g=Re(f,"send"),T=m;f.open=function(Ce,ue,...Je){q(()=>{p.set(this,{id:d(),method:Ce.toUpperCase(),url:xp(String(ue)),rawUrl:String(ue),start:0})}),T.call(this,Ce,ue,...Je)};let _=Re(f,"open"),y=new WeakSet;f.send=function(Ce){q(()=>{var Je;let ue=p.get(this);if(ue!==void 0){ue.start=performance.now(),ue.reqFields=(Je=cn(()=>RE(Ce!=null?Ce:null,n)))!=null?Je:{},ue.initiatorStack=NE();let xt=ue.initiatorStack===void 0?{}:{initiatorStack:ue.initiatorStack};t(x.NET_PENDING,{id:ue.id,method:ue.method,...wr(ue.rawUrl),initiator:"xhr",...xt}),y.has(this)||(y.add(this),this.addEventListener("loadend",()=>{q(()=>{let Ve=p.get(this);if(Ve===void 0)return;Ge.add(Ve.rawUrl);let qt=this.getResponseHeader("content-type"),Lt={},Wo=this.responseType===""||this.responseType==="text",Gi=AE(this.status,r);if((n||Gi)&&Wo&&xE(qt))try{let{body:Es,truncated:zu}=n?mi(this.responseText,qt):yE(this.responseText,qt);Lt={responseBody:Es,...zu?{responseBodyTruncated:!0}:{},...n?{}:{responseBodyReason:"error-status"}}}catch{}t(x.NET_REQUEST,{id:Ve.id,method:Ve.method,...wr(Ve.rawUrl),status:this.status,ok:OR(this.status),durationMs:Math.round(performance.now()-Ve.start),initiator:"xhr",...Ve.initiatorStack===void 0?{}:{initiatorStack:Ve.initiatorStack},...CR(Ve.rawUrl),...IR(this.statusText,qt,this.getResponseHeader("content-length")),...Ve.reqFields,...Lt})})}))}}),g.call(this,Ce!=null?Ce:null)};let A=Re(f,"send"),v=window.EventSource,O=window.WebSocket,B,oe;n&&typeof v=="function"&&(window.EventSource=class extends v{constructor(Ce,ue){super(Ce,ue),q(()=>{let Je=wr(String(Ce));t(x.NET_STREAM,{transport:Ir.SSE,direction:Cr.OPEN,...Je}),this.addEventListener("message",xt=>{q(()=>{t(x.NET_STREAM,{transport:Ir.SSE,direction:Cr.IN,...Je,...vE(xt.data,n)})})})})}},B=window.EventSource),n&&typeof O=="function"&&(window.WebSocket=(WT=class extends O{constructor(ue,Je){super(ue,Je);b(this,gs);h(this,gs,Q5(String(ue))),!c(this,gs)&&q(()=>{let xt=wr(String(ue));t(x.NET_STREAM,{transport:Ir.WS,direction:Cr.OPEN,...xt}),this.addEventListener("message",Ve=>{q(()=>{t(x.NET_STREAM,{transport:Ir.WS,direction:Cr.IN,...xt,...vE(Ve.data,n)})})})})}send(ue){if(c(this,gs)){super.send(ue);return}super.send(ue),q(()=>{t(x.NET_STREAM,{transport:Ir.WS,direction:Cr.OUT,...wr(this.url),...vE(ue,n)})})}},gs=new WeakMap,WT),oe=window.WebSocket);let ce=typeof navigator!="undefined"?Object.getPrototypeOf(navigator):null,he=ce===null||(zT=Object.getOwnPropertyDescriptor(ce,"sendBeacon"))==null?void 0:zT.value,Ie;ce!==null&&he!==void 0&&(Ie=function(Ce,ue){let Je=d(),xt=cn(()=>wr(String(Ce))),Ve=cn(()=>NE()),qt=he.call(this,Ce,ue);return q(()=>{t(x.NET_REQUEST,{id:Je,method:"POST",...xt,status:0,ok:qt,queued:qt,durationMs:0,initiator:"beacon",...Ve===void 0?{}:{initiatorStack:Ve},...RE(ue,!1)})}),qt},ce.sendBeacon=Ie);let Ge=new Set,mn=0,Cn=200,pt;if(typeof PerformanceObserver!="undefined")try{let Ce=new PerformanceObserver(ue=>{var Je,xt,Ve;for(let qt of ue.getEntries()){let Lt=qt;if(mn>=Cn)return;let Wo=Lt.initiatorType||"other";if(Wo==="fetch"||Wo==="xmlhttprequest")continue;let Gi=Lt.name;Ge.has(Gi)||(Ge.add(Gi),mn+=1,t(x.NET_REQUEST,{id:d(),method:"GET",...wr(Gi),durationMs:Math.round(Lt.duration),initiator:Wo,...Lt.transferSize>0?{transferSize:Lt.transferSize}:{},...((Je=Lt.responseStatus)!=null?Je:0)>0?{status:Lt.responseStatus,ok:((xt=Lt.responseStatus)!=null?xt:0)>=200&&((Ve=Lt.responseStatus)!=null?Ve:0)<400}:{}}))}});pt=Ce,Ce.observe({type:"resource",buffered:!0})}catch{}return()=>{pt==null||pt.disconnect(),window.fetch===u&&(window.fetch=a),Re(f,"open")===_&&(f.open=m),Re(f,"send")===A&&(f.send=g),B!==void 0&&window.EventSource===B&&(window.EventSource=v),oe!==void 0&&window.WebSocket===oe&&(window.WebSocket=O),ce!==null&&he!==void 0&&ce.sendBeacon===Ie&&(ce.sendBeacon=he)}}H();var eH="Tauri-Response",tH="error",DR={OK:"Ok",ERROR:"Err"},MR=/^(?:ipc:\/\/[^/]*|https?:\/\/ipc\.localhost(?::\d+)?)\/(.+)$/;function $R(t,e){let n=MR.exec(t),r=n==null?void 0:n[1];if(r===void 0)return;let o=e(eH)!==tH;return{url:`${Xm}${r}`,initiator:nr.IPC,method:nr.IPC,ok:o,status:o?ql.OK:ql.ERROR,statusText:o?DR.OK:DR.ERROR}}function PR(t){var e;return((e=MR.exec(t))==null?void 0:e[1])===wp}function nH(){return navigator.userAgent.includes("Electron")}function HR(t,e={}){let n=window[uo];if(typeof(n==null?void 0:n.subscribe)!="function")return nH()&&t(x.BLIND_SPOT,{kind:Pt.UNOBSERVED_IPC,count:1}),()=>{};let r=n.subscribe(o=>{q(()=>{var d;let a=`${Xm}${o.channel}`;if(o.phase==="start"){t(x.NET_PENDING,{id:o.id,method:nr.IPC,url:a,initiator:nr.IPC});return}let s=o.oneWay===!0&&o.ok===void 0;s&&t(x.BLIND_SPOT,{kind:Pt.VERDICTLESS_SEND,count:1});let l=o.ok===!0;t(x.NET_REQUEST,{id:o.id,method:nr.IPC,url:a,...s?{}:{ok:l,status:l?ql.OK:ql.ERROR},...o.oneWay===!0?{oneWay:!0}:{},durationMs:(d=o.durationMs)!=null?d:0,initiator:nr.IPC,...o.error===void 0?{}:{error:o.error},...o.responseSize===void 0?{}:{responseSize:o.responseSize},...e.captureBodies===!0?{...o.requestBody===void 0?{}:{requestBody:o.requestBody},...o.responseBody===void 0?{}:{responseBody:o.responseBody},...o.responseBodyTruncated===!0?{responseBodyTruncated:!0}:{}}:{}})})});return()=>{var o;(o=n.unsubscribe)==null||o.call(n,r)}}H();Rt();on();at();Un();var UR=t=>t===void 0?0:Math.max(0,t.width)*Math.max(0,t.height);function FR(t){let e=globalThis.CSS;if(typeof(e==null?void 0:e.escape)=="function")return e.escape(t);let n="";for(let[r,o]of[...t].entries())/\d/.test(o)&&(r===0||r===1&&t.startsWith("-"))?n+=`\\${o.charCodeAt(0).toString(16)} `:/[\w-]/.test(o)?n+=o:n+=`\\${o}`;return n}function rH(t){let e=Pe(t);if(e!==null)return`[${Bs()}="${e.replace(/["\\]/g,"\\$&")}"]`;let n=t.tagName.toLowerCase();if(0<t.id.length)return`${n}#${FR(t.id)}`;let r=t.classList.item(0);return r===null?n:`${n}.${FR(r)}`}function oH(t){var n;let e;for(let r of t!=null?t:[]){let o=(n=r.node)!=null?n:null,a=o===null?null:an(o)?o:o.parentElement;if(a===null||ht(a))continue;let s=Math.max(UR(r.previousRect),UR(r.currentRect));(e===void 0||s>e.area)&&(e={el:a,area:s})}return e===void 0?void 0:{ref:J.refFor(e.el),selector:rH(e.el)}}function GR(t){if(typeof PerformanceObserver!="function")return()=>{};let e=[],n=(a,s)=>{try{let l=new PerformanceObserver(d=>{for(let u of d.getEntries())s(u)});l.observe({type:a,buffered:!0}),e.push(l)}catch{}},r=0,o=0;return n("largest-contentful-paint",a=>{let s=Math.round(a.startTime);s<=o||(o=s,t(x.PERF,{metric:Os.LCP,value:s,at:s}))}),n("layout-shift",a=>{var d;let s=a;if(s.hadRecentInput===!0)return;r+=(d=s.value)!=null?d:0;let l=oH(s.sources);t(x.PERF,{metric:Os.CLS,value:r,at:Math.round(a.startTime),...l===void 0?{}:{shifted:l}})}),n("longtask",a=>{t(x.PERF,{metric:Os.LONGTASK,value:Math.round(a.duration),at:Math.round(a.startTime)})}),()=>{for(let a of e)a.disconnect()}}H();oi();function iH(){return{pathname:location.pathname,search:location.search,hash:location.hash,href:location.href}}function BR(t){let e=new AbortController,n=Re(history,"pushState"),r=Re(history,"replaceState"),o=n.bind(history),a=r.bind(history),s=location.href,l=(f,m)=>{q(()=>{let g=iH();g.href!==f&&(s=g.href,t(x.ROUTE_CHANGE,{from:f,to:g.href,pathname:g.pathname,search:g.search,hash:g.hash,[lg]:m}))})},d=(f,m,g)=>{let T=location.href;o(f,m,g!=null?g:null),l(T,ed.PUSH)},u=(f,m,g)=>{let T=location.href;a(f,m,g!=null?g:null),l(T,ed.REPLACE)};history.pushState=d,history.replaceState=u;let p=()=>{l(s,ed.POP)};return window.addEventListener("popstate",p,{signal:e.signal}),window.addEventListener("hashchange",p,{signal:e.signal}),()=>{history.pushState===d&&(history.pushState=n),history.replaceState===u&&(history.replaceState=r),e.abort()}}H();var aH=new Set(["navigate","reload","back_forward"]);function sH(){try{let[t]=performance.getEntriesByType("navigation");return t}catch{return}}function VR(t){var s,l;let e=sH(),n=e==null?void 0:e.type,r=e==null?void 0:e.name;if(e===void 0||typeof r!="string"||r.length===0)return()=>{};if(typeof n!="string"||!aH.has(n))return()=>{};let o=e.responseStatus,a=typeof o=="number"&&o>0;return t(x.NET_REQUEST,{id:`doc-${String(Math.round((s=e.duration)!=null?s:0))}`,method:"GET",url:r,initiator:nr.DOCUMENT,durationMs:Math.round((l=e.duration)!=null?l:0),...a?{status:o,ok:o<400}:{},navigationType:n,...typeof e.transferSize=="number"?{transferSize:e.transferSize}:{}}),()=>{}}H();var cH=/^(javascript|mailto|tel|sms|blob|data):/i;function lH(){if(typeof window=="undefined")return;let t=window.navigation;return t instanceof EventTarget?t:void 0}function dH(t){if(!(t instanceof Element))return;let e=t.closest("a");return e instanceof HTMLAnchorElement?e:void 0}var uH=1e3;function jR(t,e,n){if(t.length===0||cH.test(t))return!1;if(e)return!0;try{let r=new URL(t,n),o=new URL(n);return r.origin===o.origin?r.pathname!==o.pathname||r.search!==o.search:!0}catch{return!1}}function KR(t){if(typeof document=="undefined")return()=>{};let e=0,n,r=(l,d)=>{let u=Date.now();n!==void 0&&n.url===l&&u-n.at<uH||(n={url:l,at:u},e+=1,t(x.NET_PENDING,{id:`nav-${String(e)}`,method:"GET",url:l,initiator:nr.NAVIGATION,...d?{download:!0}:{}}))},o=l=>{q(()=>{var g;let d=dH(l.target);if(d===void 0)return;let u=(g=d.getAttribute("href"))!=null?g:"",p=document.location.href,f=d.hasAttribute("download");if(!jR(u,f,p))return;let m=new URL(u,p).toString();queueMicrotask(()=>{q(()=>{l.defaultPrevented||r(m,f)})})})},a=l=>{q(()=>{let d=l.destination;if(d===void 0||d.sameDocument)return;let u=d.url;jR(u,!1,document.location.href)&&queueMicrotask(()=>{q(()=>{l.defaultPrevented||r(u,!1)})})})},s=lH();return s!==void 0&&s.addEventListener("navigate",a),document.addEventListener("click",o,!0),()=>{document.removeEventListener("click",o,!0),s!==void 0&&s.removeEventListener("navigate",a)}}H();Dr();H();var pH=3,fH=256,hH={emit:!0},mH={emit:!1};function gH(t){if(t<10)return!1;let e=t;for(;e%10===0;)e/=10;return e===1}function EH(t){var e,n,r;return Fs([t.message,(e=t.source)!=null?e:"",t.line===void 0?"":String(t.line),(n=t.kind)!=null?n:"",(r=t.stack)!=null?r:""].join("\0"))}function WR(t=pH,e=fH){let n=new Map;return{admit(r){var s,l;let o=EH(r),a=((s=n.get(o))!=null?s:0)+1;if(n.delete(o),n.size>=e){let d=n.keys().next();(l=d.done)!=null&&l||n.delete(d.value)}return n.set(o,a),a<=t?hH:gH(a)?{emit:!0,repeats:a}:mH}}}var zR="securitypolicyviolation",bH="report",TH={log:x.CONSOLE_LOG,warn:x.CONSOLE_WARN,error:x.CONSOLE_ERROR,info:x.CONSOLE_INFO,debug:x.CONSOLE_DEBUG};function SH(t){return t.map(e=>typeof e=="string"?e:e instanceof Error?e.message:kr(e)).join(" ")}var YR=G.MAX_STACK_LENGTH;function OE(t){if(!(t===void 0||t.length===0))return t.length>YR?t.slice(0,YR):t}function _H(t){for(let e of t)if(e instanceof Error)return OE(e.stack)}function XR(t){let e=["log","warn","error","info","debug"],n=new Map,r=new Map;for(let f of e){let m=sr(console,f);n.set(f,m);let g=m.bind(console),T=(..._)=>{g(..._),q(()=>{let y=f==="error"?_H(_):void 0;t(TH[f],{message:SH(_),...y===void 0?{}:{stack:y}})})};r.set(f,T),console[f]=T}let o=WR(),a=f=>{let m=o.admit(f);m.emit&&t(x.ERROR_UNCAUGHT,{...f,...m.repeats===void 0?{}:{repeats:m.repeats}})},s=f=>{var m,g;if(!(f instanceof ErrorEvent)){let T=f.target;if(!(T instanceof Element)||T===document)return;let _=T.tagName.toLowerCase(),y=(g=(m=T.getAttribute("src"))!=null?m:T.getAttribute("href"))!=null?g:"";q(()=>{let A=`<${_}> failed to load${y.length===0?"":`: ${y}`}`;a({message:A,kind:"resource",...y.length===0?{}:{source:y}})});return}q(()=>{let T=OE(f.error instanceof Error?f.error.stack:void 0),_={message:f.message,source:f.filename,line:f.lineno,...T===void 0?{}:{stack:T}};a(_)})},l=f=>{q(()=>{let m=f.reason,g=OE(m instanceof Error?m.stack:void 0),T={message:m instanceof Error?m.message:String(m),kind:"unhandledrejection",...g===void 0?{}:{stack:g}};a(T)})},d=f=>{let m=f.blockedURI.length===0?"inline content":f.blockedURI,g=bH===f.disposition;t(g?x.CONSOLE_WARN:x.CONSOLE_ERROR,{message:g?`[Report Only] Content Security Policy directive: ${f.violatedDirective} would block ${m}`:`Content Security Policy directive: ${f.violatedDirective} blocked ${m}`,kind:zR,...f.blockedURI.length===0?{}:{source:f.blockedURI}})},u=new AbortController,{signal:p}=u;return window.addEventListener("error",s,{capture:!0,signal:p}),window.addEventListener("unhandledrejection",l,{signal:p}),window.addEventListener(zR,d,{capture:!0,signal:p}),()=>{for(let[f,m]of n)console[f]===r.get(f)&&(console[f]=m);u.abort()}}H();rc();var xH={alert:void 0,confirm:!1,prompt:null},AH=["alert","confirm","prompt"];function qR(t){let e=window,n=new Map,r=new Map;for(let o of AH){let a=e[o];if(typeof a!="function")continue;n.set(o,a);let s=a.bind(window),l=(...d)=>{if(!rf())return s(...d);let u=xH[o],p=d[0];return q(()=>{t(x.DIALOG_OPENED,{kind:o,...typeof p=="string"?{message:p}:{},...u===void 0?{}:{answered:u}})}),u};r.set(o,l),e[o]=l}return()=>{for(let[o,a]of n)e[o]===r.get(o)&&(e[o]=a)}}H();Rt();at();function ZR(t){let e=new AbortController,{signal:n}=e,r=s=>{let l=s.target;l instanceof Element&&!ht(l)&&t(x.ANIM_START,{name:s.animationName},J.refFor(l))},o=s=>{let l=s.target;l instanceof Element&&!ht(l)&&t(x.ANIM_END,{name:s.animationName},J.refFor(l))},a=s=>{let l=s.target;l instanceof Element&&!ht(l)&&t(x.ANIM_END,{name:s.propertyName,kind:"transition"},J.refFor(l))};return document.addEventListener("animationstart",r,{capture:!0,signal:n}),document.addEventListener("animationend",o,{capture:!0,signal:n}),document.addEventListener("transitionend",a,{capture:!0,signal:n}),()=>e.abort()}H();Rt();lt();var QR=100,yH="[data-reticle-reveal], [data-reveal], section";function JR(t){let e=new AbortController,{signal:n}=e,r=0,o=0,a,s=()=>{r=performance.now();let u=window.scrollY,p=Math.max(1,document.documentElement.scrollHeight-window.innerHeight);t(x.SCROLL_POSITION,{x:window.scrollX,y:u,percent:Math.round(u/p*100),direction:u>=o?Np.DOWN:Np.UP}),o=u},l=()=>{let u=performance.now()-r;if(u>=QR){a!==void 0&&(Te(a),a=void 0),s();return}a===void 0&&(a=ee(()=>{a=void 0,s()},QR-u))};window.addEventListener("scroll",l,{passive:!0,signal:n});let d;if(typeof IntersectionObserver=="function"){d=new IntersectionObserver(p=>{for(let f of p)f.isIntersecting&&t(x.REVEAL_SHOWN,{ratio:f.intersectionRatio},J.refFor(f.target))},{threshold:.25});let u=d;for(let p of document.querySelectorAll(yH))u.observe(p)}return()=>{e.abort(),a!==void 0&&Te(a),d==null||d.disconnect()}}H();lt();function tN(){let t=window;return t.__TAURI_INTERNALS__!==void 0||t.__TAURI__!==void 0?"tauri":navigator.userAgent.includes("Electron")||t[uo]!==void 0?"electron":"web"}function vH(){let t=navigator.userAgent;return/Chrome|Chromium|Edg\//.test(t)?"blink":/Gecko\/|Firefox/.test(t)?"gecko":"webkit"}var RH={"google chrome":$e.CHROME,chrome:$e.CHROME,"microsoft edge":$e.EDGE,edge:$e.EDGE,brave:$e.BRAVE,opera:$e.OPERA,arc:$e.ARC,dia:$e.DIA,firefox:$e.FIREFOX,safari:$e.SAFARI};function NH(t){return t==="chromium"||t.includes("not")&&t.includes("brand")}function wH(){var e;try{let r=(e=navigator.userAgentData)==null?void 0:e.brands;if(Array.isArray(r)){let o;for(let a of r){let s=typeof(a==null?void 0:a.brand)=="string"?a.brand.toLowerCase():"";if(s===""||NH(s))continue;let l=RH[s];if(l!==void 0)if($e.CHROME===l)o=l;else return l}return o!=null?o:$e.OTHER}}catch{}let t=navigator.userAgent;return/Edg\//.test(t)?$e.EDGE:/OPR\/|Opera/.test(t)?$e.OPERA:/Firefox/.test(t)?$e.FIREFOX:/Chrome|Chromium/.test(t)?$e.CHROME:/Safari/.test(t)?$e.SAFARI:$e.OTHER}var eN=typeof window!="undefined"&&typeof window.fetch=="function"?window.fetch.bind(window):void 0;function OH(){var n,r;let t=window.__TAURI_INTERNALS__,e=(r=(n=t==null?void 0:t.metadata)==null?void 0:n.currentWindow)==null?void 0:r.label;return typeof e=="string"&&e.length>0?e:void 0}function IH(){try{let[t]=performance.getEntriesByType("navigation"),e=t==null?void 0:t.responseStatus;return typeof e=="number"&&e>0?e:void 0}catch{return}}async function CH(t){let e=IH();if(e!==void 0)return e;try{return t==="web"||eN===void 0||!/^https?:$/.test(location.protocol)?void 0:(await eN(location.href,{method:"HEAD",cache:"no-store"})).status}catch{return}}async function LH(){let t=window[uo];if(typeof(t==null?void 0:t.windowLabel)=="function")try{let e=await t.windowLabel();return typeof e=="string"&&e.length>0?e:void 0}catch{return}}function kH(t){return{hidden:document.visibilityState==="hidden",focused:document.hasFocus(),runtime:tN(),engine:vH(),brand:wH(),...t===void 0?{}:{windowLabel:t}}}function nN(t){let e=new AbortController,{signal:n}=e,r,o=OH(),a=l=>{t(x.PAGE_HEALTH,{...kH(o),...r===void 0?{}:{documentStatus:r},reason:l})};document.addEventListener("visibilitychange",()=>a(ua.VISIBILITY),{signal:n}),window.addEventListener("focus",()=>a(ua.FOCUS),{signal:n}),window.addEventListener("blur",()=>a(ua.BLUR),{signal:n}),a(ua.INITIAL),Promise.all([CH(tN()),o===void 0?LH():Promise.resolve(o)]).then(([l,d])=>{n.aborted||l===void 0&&d===o||(r=l,o=d,a(ua.HEARTBEAT))});let s=zy(()=>a(ua.HEARTBEAT),w_.HEARTBEAT_MS);return()=>{s(),e.abort()}}H();var ze={CONNECT:"connect",DOM_OBSERVER:"dom_observer",NETWORK_OBSERVER:"network_observer",CONSOLE_OBSERVER:"console_observer",IPC_OBSERVER:"ipc_observer",HEALTH_OBSERVER:"health_observer",ROUTER_OBSERVER:"router_observer",ANIMATION_OBSERVER:"animation_observer",STORE_ADAPTER:"store_adapter",SNAPSHOT:"snapshot",ACTION:"action",COMMAND:"command",RECORDER:"recorder",TRANSPORT:"transport",TEARDOWN:"teardown"},DH=500;function IE(t,e,n){try{let r=n instanceof Error?n.message:String(n);t(x.SDK_FAILED,{site:e,message:r.slice(0,DH),...n instanceof Error?{errorType:n.constructor.name.slice(0,64)}:{}})}catch{}}function rt(t,e,n){try{return n()}catch(r){return IE(t,e,r),()=>{}}}function rN(t,e){for(let n of e)try{n()}catch(r){IE(t,ze.TEARDOWN,r)}}function oN(t,e){return[rt(t,ze.NETWORK_OBSERVER,()=>kR(t,{captureBodies:e.captureBodies,...e.captureErrorBodies===void 0?{}:{captureErrorBodies:e.captureErrorBodies},reinterpret:$R,ignore:PR})),rt(t,ze.IPC_OBSERVER,()=>HR(t,{captureBodies:e.captureBodies})),rt(t,ze.ANIMATION_OBSERVER,()=>GR(t)),rt(t,ze.ROUTER_OBSERVER,()=>BR(t)),rt(t,ze.NETWORK_OBSERVER,()=>VR(t)),rt(t,ze.NETWORK_OBSERVER,()=>KR(t)),rt(t,ze.CONSOLE_OBSERVER,()=>XR(t)),rt(t,ze.CONSOLE_OBSERVER,()=>qR(t)),rt(t,ze.ANIMATION_OBSERVER,()=>ZR(t)),rt(t,ze.DOM_OBSERVER,()=>JR(t)),rt(t,ze.DOM_OBSERVER,()=>cR(t)),rt(t,ze.STORE_ADAPTER,()=>Lv(t)),rt(t,ze.STORE_ADAPTER,()=>fR(t)),rt(t,ze.DOM_OBSERVER,()=>hR(t)),rt(t,ze.DOM_OBSERVER,()=>ER(t)),rt(t,ze.NETWORK_OBSERVER,()=>RR(t,{capturePreview:e.captureBodies})),rt(t,ze.DOM_OBSERVER,()=>TR(t)),rt(t,ze.HEALTH_OBSERVER,()=>nN(t)),rt(t,ze.DOM_OBSERVER,()=>NR(t))]}on();var MH=["position:fixed","bottom:8px","right:8px","z-index:2147483647","font:11px ui-monospace,SFMono-Regular,Menlo,monospace","background:#151823","color:#e6e9f0","border:1px solid #2a2f3d","border-radius:8px","padding:6px 10px","pointer-events:none","opacity:0.85"].join(";");function iN(){let t=document.createElement("div");return t.setAttribute("data-reticle-overlay",""),t.style.cssText=MH,t.textContent="Reticle: connecting\u2026",document.body.appendChild(t),{update:e=>{t.textContent=`Reticle ${e.connected?"\u25CF":"\u25CB"} ${String(e.events)} events`},destroy:()=>{t.remove()}}}CE();LE();H();Rt();Bt();function Sn(t,e=""){return typeof t=="string"?t:e}function _o(t){let e=Sn(t);return e===""?void 0:e}function Rf(t){let e=J.resolve(t);if(!(e instanceof Element))return t;let n=Mr(e);return n.name.length>0?`${n.role} "${n.name}"`:`${n.role} (${t})`}function aN(t){switch(t){case L.ACT:case L.ACT_SEQUENCE:return je.ACTING;case L.SNAPSHOT:case L.QUERY:case L.MATCH:case L.INSPECT:case L.ANIMATIONS:case L.STATE_READ:case L.CAPABILITIES:return je.READING;default:return je.IDLE}}function sN(t,e={}){var n;switch(t){case L.SNAPSHOT:return"Looking at the page";case L.QUERY:case L.MATCH:{let r=t===L.MATCH?(n=e.query)!=null?n:{}:e,o=$H(r);return o!==void 0?`Finding ${o}`:"Finding an element"}case L.INSPECT:{let r=_o(e.ref);return r!==void 0?`Inspecting ${Rf(r)}`:"Inspecting an element"}case L.ANIMATIONS:return"Reading animations";case L.STATE_READ:{let r=_o(e.store);return r!==void 0?`Reading state: ${r}`:"Reading state"}case L.CAPABILITIES:return"Reading capabilities";default:return t}}function $H(t){var o,a,s,l;let e=(o=_o(t.testid))!=null?o:et.TESTID===Sn(t.by)?_o(t.value):void 0;if(e!==void 0)return`[testid=${e}]`;let n=_o(t.name),r=(l=(s=(a=_o(t.value))!=null?a:_o(t.text))!=null?s:_o(t.label))!=null?l:_o(t.role);return r!==void 0?n!==void 0?`"${r}" (${n})`:`"${r}"`:n!==void 0?`"${n}"`:void 0}Td();on();H();H();hd();Bt();at();ci();var cN=["position:fixed","top:8px","left:50%","transform:translateX(-50%)","z-index:2147483647","display:flex","gap:6px","align-items:center","flex-wrap:wrap","max-width:90vw","font:12px ui-sans-serif,system-ui,sans-serif","background:#151823","color:#e6e9f0","border:1px solid #2a2f3d","border-radius:10px","padding:6px 10px","box-shadow:0 8px 30px rgba(0,0,0,.5)"].join(";"),Nf=["font:inherit","cursor:pointer","background:#262b3a","color:#e6e9f0","border:1px solid #3a4151","border-radius:7px","padding:3px 9px"].join(";"),kE=["font:inherit","background:#0e1018","color:#e6e9f0","border:1px solid #3a4151","border-radius:7px","padding:3px 8px"].join(";"),lN=["opacity:.75","margin-left:4px"].join(";"),dN=["display:flex","gap:6px","align-items:center","flex-wrap:wrap"].join(";");var PH="recorded 0 steps",HH="recording\u2026",uN="ready",UH="pick an annotation",FH=Ns.ACT,DE={record:"Record",stop:"Stop",annotate:"Annotate"},GH={[Le.ASSERT_SIGNAL]:"assert signal",[Le.ASSERT_VISIBLE]:"assert visible",[Le.ASSERT_STATE]:"assert state",[Le.ASSERT_NET]:"assert request",[Le.MARK_DYNAMIC]:"mark dynamic",[Le.SUCCESS_STATE]:"success state",[Le.INTENT]:"intent"},BH=new Set([Le.ASSERT_SIGNAL,Le.SUCCESS_STATE]),VH="recorded-flow";function hN(t){let e=Pe(t);if(e!==null&&e.length>0)return{anchor:{kind:Mn.TESTID,value:e},degraded:!1};let n=xe(t),r=Ne(t);return n!=="generic"&&(n.length>0||r.length>0)?{anchor:r.length>0?{kind:Mn.ROLE,role:n,name:r}:{kind:Mn.ROLE,role:n},degraded:!1}:{anchor:{kind:Mn.ROLE,role:SS},degraded:!0}}function pN(t){return t instanceof HTMLTextAreaElement?!0:t instanceof HTMLInputElement&&Pd(t)==="textbox"}function Pd(t){let e=t.type.toLowerCase();return e==="checkbox"?"checkbox":e==="radio"?"radio":["text","email","tel","url","search","password",""].includes(e)?"textbox":"other"}function Ec(t,e,n){let{anchor:r,degraded:o}=hN(t),a={tool:FH,anchor:r,action:e};n!==void 0&&(a.args=n),o&&(a.degraded=!0);let s=fd(t);return s!==void 0&&(a.source=s.line===void 0?{file:s.file}:{file:s.file,line:s.line}),a}function jH(t,e,n,r,o){let a=e.map(u=>({...u})),s=[],l;for(let u of n){if(u.kind===Le.MARK_DYNAMIC){s.push(u.anchor);continue}if(u.kind===Le.SUCCESS_STATE){u.signal!==void 0&&(l={kind:C.SIGNAL,name:u.signal});continue}let p=a.at(-1);p!==void 0&&(u.kind===Le.ASSERT_SIGNAL&&u.signal!==void 0?p.expect=fN(p.expect,{kind:C.SIGNAL,name:u.signal}):u.kind===Le.ASSERT_VISIBLE&&(p.expect=fN(p.expect,{kind:C.ELEMENT,query:KH(u.anchor)})))}let d={version:dm,name:t,createdAt:r,steps:a};return o!==void 0&&o.length>0&&(d.startPath=o),s.length>0&&(d.dynamic=s),l!==void 0&&(d.success=l),d}function fN(t,e){return t===void 0?e:t.kind===C.ALL_OF?{kind:C.ALL_OF,predicates:[...t.predicates,e]}:{kind:C.ALL_OF,predicates:[t,e]}}function KH(t){return t.kind===Mn.TESTID?{testid:t.value}:t.kind===Mn.ROLE?t.name!==void 0?{role:t.role,name:t.name}:{role:t.role}:{}}var Aa,Bn,Kt,Fd,Ei,xo,bc,bi,ya,Hr,cr,F,mN,Hd,gN,EN,bN,TN,gi,SN,_N,$E,xN,AN,yN,xa,vN,wf,RN,NN,Ud,Of,wN,ME=class{constructor(e){b(this,F);b(this,Aa);b(this,Bn,kt.IDLE);b(this,Kt,[]);b(this,Fd);b(this,Ei,[]);b(this,xo);b(this,bc);b(this,bi);b(this,ya);b(this,Hr);b(this,cr);h(this,Aa,e)}phase(){return c(this,Bn)}steps(){return c(this,Kt).map(e=>({...e}))}mount(){c(this,bi)===void 0&&typeof document!="undefined"&&(E(this,F,vN).call(this),E(this,F,mN).call(this))}destroy(){var e,n;(e=c(this,bc))==null||e.abort(),h(this,bc,void 0),(n=c(this,bi))==null||n.remove(),h(this,bi,void 0),h(this,ya,void 0),h(this,Hr,void 0),h(this,Bn,kt.IDLE),h(this,Kt,[]),h(this,Ei,[]),h(this,cr,void 0),h(this,xo,void 0)}};Aa=new WeakMap,Bn=new WeakMap,Kt=new WeakMap,Fd=new WeakMap,Ei=new WeakMap,xo=new WeakMap,bc=new WeakMap,bi=new WeakMap,ya=new WeakMap,Hr=new WeakMap,cr=new WeakMap,F=new WeakSet,mN=function(){let e=new AbortController;h(this,bc,e);let n={capture:!0,signal:e.signal};document.addEventListener("click",r=>E(this,F,gN).call(this,r),n),document.addEventListener("input",r=>E(this,F,EN).call(this,r),n),document.addEventListener("change",r=>E(this,F,bN).call(this,r),n),document.addEventListener("submit",r=>E(this,F,TN).call(this,r),n)},Hd=function(e){let n=e.target;if(n instanceof Element&&!ht(n))return n},gN=function(e){let n=E(this,F,Hd).call(this,e);if(n!==void 0){if(c(this,Bn)===kt.ANNOTATING){E(this,F,SN).call(this,n);return}c(this,Bn)===kt.RECORDING&&(n instanceof HTMLInputElement&&(Pd(n)==="checkbox"||Pd(n)==="radio")||n instanceof HTMLSelectElement||(E(this,F,gi).call(this),c(this,Kt).push(Ec(n,k.CLICK))))}},EN=function(e){if(c(this,Bn)!==kt.RECORDING)return;let n=E(this,F,Hd).call(this,e);n===void 0||!pN(n)||h(this,xo,{el:n,value:n.value})},bN=function(e){if(c(this,Bn)!==kt.RECORDING)return;let n=E(this,F,Hd).call(this,e);if(n!==void 0){if(n instanceof HTMLInputElement&&Pd(n)==="checkbox"){E(this,F,gi).call(this),c(this,Kt).push(Ec(n,n.checked?k.CHECK:k.UNCHECK));return}if(n instanceof HTMLInputElement&&Pd(n)==="radio"){E(this,F,gi).call(this),c(this,Kt).push(Ec(n,k.CHECK));return}if(n instanceof HTMLSelectElement){E(this,F,gi).call(this),c(this,Kt).push(Ec(n,k.SELECT,{value:n.value}));return}pN(n)&&(h(this,xo,{el:n,value:n.value}),E(this,F,gi).call(this))}},TN=function(e){if(c(this,Bn)!==kt.RECORDING)return;let n=E(this,F,Hd).call(this,e);n!==void 0&&(E(this,F,gi).call(this),c(this,Kt).push(Ec(n,k.SUBMIT)))},gi=function(){let e=c(this,xo);if(e===void 0)return;h(this,xo,void 0);let n=ir(e.el)?_e:e.value;c(this,Kt).push(Ec(e.el,k.FILL,{value:n}))},SN=function(e){let n=c(this,cr);if(n===void 0)return;let{anchor:r}=hN(e),o={kind:n.kind,anchor:r},a=E(this,F,$E).call(this);a!==void 0&&(o.signal=a),c(this,Ei).push(o),h(this,cr,void 0),E(this,F,xa).call(this,kt.RECORDING),E(this,F,Ud).call(this)},_N=function(){let e=c(this,cr);if(e===void 0)return;let n=c(this,Kt).at(-1);if(n===void 0){h(this,cr,void 0),E(this,F,xa).call(this,kt.RECORDING),E(this,F,Ud).call(this);return}let r={kind:e.kind,anchor:n.anchor},o=E(this,F,$E).call(this);o!==void 0&&(r.signal=o),c(this,Ei).push(r),h(this,cr,void 0),E(this,F,xa).call(this,kt.RECORDING),E(this,F,Ud).call(this)},$E=function(){var r,o;let e=(r=c(this,Hr))==null?void 0:r.querySelector("[data-reticle-signal]"),n=(o=e==null?void 0:e.value)!=null?o:"";return n.length>0?n:void 0},xN=function(){h(this,Kt,[]),h(this,Fd,typeof location=="undefined"?void 0:location.pathname),h(this,Ei,[]),h(this,xo,void 0),h(this,cr,void 0),E(this,F,xa).call(this,kt.RECORDING),E(this,F,Of).call(this,HH)},AN=function(){var r,o;E(this,F,gi).call(this);let e=(o=(r=E(this,F,wN).call(this))!=null?r:c(this,Aa).defaultName)!=null?o:VH,n=jH(e,c(this,Kt),c(this,Ei),c(this,Aa).now(),c(this,Fd));c(this,Aa).emit(x.FLOW_RECORDED,{name:e,flow:n}),E(this,F,Of).call(this,c(this,Kt).length===0?PH:uN),E(this,F,xa).call(this,kt.IDLE),E(this,F,Ud).call(this)},yN=function(){c(this,Bn)===kt.RECORDING&&(E(this,F,xa).call(this,kt.ANNOTATING),E(this,F,Of).call(this,UH),E(this,F,RN).call(this))},xa=function(e){h(this,Bn,e)},vN=function(){let e=document.createElement("div");e.setAttribute("data-reticle-overlay",""),e.style.cssText=cN;let n=document.createElement("input");n.setAttribute("data-reticle-name",""),n.setAttribute("placeholder","flow name"),n.style.cssText=kE,e.appendChild(n),e.appendChild(E(this,F,wf).call(this,"record",DE.record,()=>E(this,F,xN).call(this))),e.appendChild(E(this,F,wf).call(this,"stop",DE.stop,()=>E(this,F,AN).call(this))),e.appendChild(E(this,F,wf).call(this,"annotate",DE.annotate,()=>E(this,F,yN).call(this)));let r=document.createElement("span");r.setAttribute("data-reticle-status",""),r.style.cssText=lN,r.textContent=uN,e.appendChild(r);let o=document.createElement("div");o.setAttribute("data-reticle-menu",""),o.style.cssText=dN,e.appendChild(o),document.body.appendChild(e),h(this,bi,e),h(this,ya,r),h(this,Hr,o)},wf=function(e,n,r){let o=document.createElement("button");return o.setAttribute("data-reticle-action",e),o.textContent=n,o.style.cssText=Nf,o.addEventListener("click",r),o},RN=function(){let e=c(this,Hr);if(e!==void 0){e.textContent="";for(let n of Object.values(Le)){if(n===Le.INTENT)continue;let r=document.createElement("button");r.setAttribute("data-reticle-annkind",n),r.textContent=GH[n],r.style.cssText=Nf,r.addEventListener("click",()=>E(this,F,NN).call(this,n)),e.appendChild(r)}}},NN=function(e){h(this,cr,{kind:e});let n=c(this,Hr);if(n===void 0)return;if(BH.has(e)){let o=document.createElement("select");o.setAttribute("data-reticle-signal",""),o.style.cssText=kE;for(let a of si().signals){let s=document.createElement("option");s.value=a,s.textContent=a,o.appendChild(s)}n.appendChild(o)}let r=document.createElement("button");r.setAttribute("data-reticle-action","annotate-confirm"),r.textContent="on prior step",r.style.cssText=Nf,r.addEventListener("click",()=>E(this,F,_N).call(this)),n.appendChild(r)},Ud=function(){c(this,Hr)!==void 0&&(c(this,Hr).textContent="")},Of=function(e){c(this,ya)!==void 0&&(c(this,ya).textContent=e)},wN=function(){var r,o;let e=(r=c(this,bi))==null?void 0:r.querySelector("[data-reticle-name]"),n=(o=e==null?void 0:e.value.trim())!=null?o:"";return n.length>0?n:void 0};function ON(t){return new ME(t)}XE();function uG(t,e){return t==="production"&&!e}function pG(t){let e;try{e=new URL(t)}catch{return{url:t,adjusted:!1}}return e.protocol!=="ws:"&&e.protocol!=="wss:"||e.pathname!==""&&e.pathname!=="/"?{url:t,adjusted:!1}:(e.pathname=oa,{url:e.toString(),adjusted:!0})}function fG(t,e,n,r,o="http:"){var d;let a;try{a=new URL(e)}catch{return{allowed:!1,reason:"invalid Reticle bridge URL"}}if(a.protocol!=="ws:"&&a.protocol!=="wss:")return{allowed:!1,reason:"Reticle bridge URL must use ws:// or wss://"};if(((d=r==null?void 0:r.length)!=null?d:0)>G.MAX_TOKEN_LENGTH)return{allowed:!1,reason:`Reticle pairing token exceeds ${String(G.MAX_TOKEN_LENGTH)} characters`};let s=!rg(a.hostname);return s&&a.protocol!=="wss:"?{allowed:!1,reason:"a non-local Reticle bridge must use wss://"}:!W_(o,t)||s?n?r===void 0||r.length===0?{allowed:!1,reason:"a pairing token is required outside localhost"}:{allowed:!0}:{allowed:!1,reason:"Reticle is disabled outside localhost unless allowNonLocalhost is explicitly enabled"}:{allowed:!0}}var hG=20,mG="[Reticle] killed for this page. Restart your dev server or reload the page to bring it back.",gG="Session ended - lost connection to Reticle (the agent is no longer running).";function EG(t,e){return t===void 0||t===Wl?e():t}function bG(){try{let t=new URL(window.location.href);if(!t.searchParams.has(Tf))return;t.searchParams.delete(Tf),window.history.replaceState(window.history.state,"",t.toString())}catch{}}function BT(t){let e=new URLSearchParams(t),n={},r=e.get($n.SESSION),o=e.get($n.PROJECT),a=VT(En,e.get($n.HUD));return r!==null&&r.length>0&&(n.session=r),o!==null&&o.length>0&&(n.projectId=o),a!==void 0&&(n.hud=a),n}function TG(t){return t===void 0?{placed:[]}:{remember:t,placed:En.SHOWN===t?[]:[t]}}function SG(t,e){var a;let n=BT(e),r=t.session!==void 0&&t.session!==Wl?t.session:void 0,o=(a=t.projectId)!=null?a:n.projectId;return{session:r!=null?r:n.session,projectId:o!==void 0&&o.length>0?o:void 0}}function _G(t){return{t:t.t,seq:t.seq,type:t.type,sessionId:t.sessionId,ref:t.ref,documentId:t.documentId,editEpoch:0===t.editEpoch?void 0:t.editEpoch,data:t.data}}var Vo,Vu,us,to,ps,Zh,ju,Hi,Oe,Rl,fs,jo,Ku,Nl,Wu,hs,no,wl,Ol,Ui,Il,ms,Fi,Cl,Ko,Jn,RC,ro,NC,wC,OC,IC,Ll=class{constructor(){b(this,Jn);b(this,Vo);b(this,Vu,new Map);b(this,us,[]);b(this,to,!1);b(this,ps,"default");b(this,Zh,$_(Math.random));b(this,ju,0);b(this,Hi);b(this,Oe);b(this,Rl,new Map);b(this,fs,[]);b(this,jo);b(this,Ku);b(this,Nl,!1);b(this,Wu,!1);b(this,hs);b(this,no);b(this,wl,0);b(this,Ol);b(this,Ui);b(this,Il,!1);b(this,ms);b(this,Fi);b(this,Cl,[]);b(this,Ko);b(this,ro,(e,n,r)=>{var a,s,l;let o=_G({seq:c(this,wl),t:Math.round(performance.now()-c(this,ju)),type:e,sessionId:c(this,ps),documentId:c(this,Zh),editEpoch:bd.current,data:n,ref:r});try{(a=c(this,Vo))==null||a.sendEvent(o),h(this,wl,c(this,wl)+1),(s=c(this,Hi))==null||s.update({connected:!0,events:c(this,wl)}),e===x.ROUTE_CHANGE&&((l=c(this,Oe))==null||l.refilterFlows())}catch{}})}connect(e={}){var f,m,g,T,_,y;if(c(this,to)||typeof window=="undefined"||typeof document=="undefined")return;let n=globalThis.process,r=(f=n==null?void 0:n.env)==null?void 0:f.NODE_ENV;if(uG(r,e.allowInProduction===!0)){globalThis.console.warn("[Reticle] disabled in production (NODE_ENV=production). Gate the import behind import.meta.env.DEV, or pass allowInProduction:true to override.");return}bG();let o=pG((m=e.url)!=null?m:vS(pm)),a=o.url;o.adjusted&&globalThis.console.warn(`[Reticle] bridge URL has no path; using ${a} (the bridge only accepts WebSocket upgrades on ${oa}).`);let s=fG(window.location.hostname,a,e.allowNonLocalhost===!0,e.token,window.location.protocol);if(!s.allowed){globalThis.console.warn(`[Reticle] ${(g=s.reason)!=null?g:"connection blocked"}`);return}e.root!==void 0&&e.root.length>0&&(globalThis[gp]=e.root);let l=(T=e.sdkVersion)!=null?T:globalThis[h_];h(this,Ui,typeof l=="string"&&l.length>0?l:void 0);let d=SG(e,window.location.search),u=EG(d.session,()=>"");h(this,ps,qA(u.length>0?u:void 0,typeof globalThis.sessionStorage=="undefined"?void 0:globalThis.sessionStorage,()=>{var A;return typeof((A=globalThis.crypto)==null?void 0:A.randomUUID)=="function"?`s${globalThis.crypto.randomUUID()}`:`s${Date.now().toString(36)}`})),h(this,Ol,e.token!==void 0&&e.token.length>0?e.token:void 0),h(this,Fi,d.projectId),E(this,Jn,NC).call(this,e.redact),h(this,ju,performance.now()),h(this,Vu,Yv()),h(this,Vo,new _f({url:a,hello:()=>E(this,Jn,wC).call(this),handleCommand:A=>E(this,Jn,OC).call(this,A),onConnected:()=>{var A;h(this,Wu,!0),(A=c(this,Oe))==null||A.sessionStart()},onConnectionLost:()=>{var A;sc(),((A=c(this,Oe))==null?void 0:A.sessionActive)===!0&&c(this,Oe).setState(Me.ENDED,gG)},onUnreachable:({url:A,attempts:v})=>{var O;ar(Af(A,v)),(O=c(this,Oe))==null||O.showUnreachable(A,v)}})),qp(()=>{var A;return(A=c(this,Vo))==null?void 0:A.reannounce()}),aA(e.exposePresenter===!0),uA(e.testIdAttribute),e.networkBodyMaxChars!==void 0&&vR(e.networkBodyMaxChars);let p=c(this,ro);h(this,Il,e.captureNetworkBodies===!0),h(this,ms,typeof e.sourceMapping=="boolean"?e.sourceMapping:void 0),h(this,us,oN(p,{captureBodies:c(this,Il),...e.captureErrorBodies===void 0?{}:{captureErrorBodies:e.captureErrorBodies}})),e.overlay===!0&&(h(this,Hi,iN()),c(this,Hi).update({connected:!0,events:0})),h(this,jo,BT(window.location.search).hud),e.present!==!1&&En.REMOVED!==c(this,jo)&&E(this,Jn,RC).call(this,e),e.recorder===!0&&(h(this,hs,ON({emit:p,now:()=>Date.now()})),c(this,hs).mount()),((_=e.annotate)!=null?_:e.present!==!1)&&(h(this,no,new Da({emit:p,now:()=>Date.now(),onMark:A=>{var v;return(v=c(this,Oe))==null?void 0:v.log(Fe.HUMAN,`\u{1F6A9} #${String(A.index)} ${A.label}${A.source!==void 0?` \xB7 ${A.source}`:""} \u2014 ${A.note}`)},shouldBlock:()=>{var A,v;return(v=(A=c(this,Ku))==null?void 0:A.call(this).blockPageInteractions)!=null?v:!0}})),c(this,no).mount(),(y=c(this,Oe))==null||y.bindAnnotator(c(this,no))),c(this,Vo).connect(),h(this,to,!0)}get connected(){return c(this,to)}signal(e,n={}){c(this,ro).call(this,x.SIGNAL,{name:e,data:n})}state(e,n){c(this,ro).call(this,x.STATE_CHANGE,{name:e,value:n})}renderCommit(e){e>0&&c(this,ro).call(this,x.RENDER_COMMIT,{commits:e})}describe(e){tc(e)}endSession(){var e;(e=c(this,Oe))==null||e.setState(Me.ENDED)}observeHotUpdates(e){bd.observe(e)}disconnect(){var e,n,r,o,a,s;c(this,to)&&(rN(c(this,ro),c(this,us)),h(this,us,[]),(e=c(this,Vo))==null||e.close(),h(this,Vo,void 0),(n=c(this,Hi))==null||n.destroy(),h(this,Hi,void 0),(r=c(this,Oe))==null||r.sessionEnd(),(o=c(this,Oe))==null||o.destroy(),h(this,Oe,void 0),(a=c(this,hs))==null||a.destroy(),h(this,hs,void 0),(s=c(this,no))==null||s.destroy(),h(this,no,void 0),sc(),h(this,to,!1))}};Vo=new WeakMap,Vu=new WeakMap,us=new WeakMap,to=new WeakMap,ps=new WeakMap,Zh=new WeakMap,ju=new WeakMap,Hi=new WeakMap,Oe=new WeakMap,Rl=new WeakMap,fs=new WeakMap,jo=new WeakMap,Ku=new WeakMap,Nl=new WeakMap,Wu=new WeakMap,hs=new WeakMap,no=new WeakMap,wl=new WeakMap,Ol=new WeakMap,Ui=new WeakMap,Il=new WeakMap,ms=new WeakMap,Fi=new WeakMap,Cl=new WeakMap,Ko=new WeakMap,Jn=new WeakSet,RC=function(e){c(this,Nl)||(h(this,Nl,!0),Promise.resolve().then(()=>(sC(),aC)).then(({Presenter:n})=>Promise.resolve().then(()=>($c(),A0)).then(r=>({Presenter:n,settings:r}))).then(({Presenter:n,settings:r})=>{if(!c(this,to))return;h(this,Ku,r.getPresenterSettings);let o={};e.pace!==void 0&&(o.paceMs=e.pace),e.narrationDwellMs!==void 0&&(o.narrationDwellMs=e.narrationDwellMs),e.border!==void 0&&(o.border=e.border),e.logMax!==void 0&&(o.logMax=e.logMax),e.endedFadeMs!==void 0&&(o.endedFadeMs=e.endedFadeMs),e.idleEndMs!==void 0&&(o.idleEndMs=e.idleEndMs),o.sessionId=c(this,ps),c(this,Fi)!==void 0&&(o.projectId=c(this,Fi)),o.onControl=s=>c(this,ro).call(this,x.HUMAN_CONTROL,s.text!==void 0?{kind:s.kind,text:s.text}:{kind:s.kind}),o.onHudUse=s=>c(this,ro).call(this,x.HUD_USED,{...s}),o.onKill=()=>{this.disconnect(),ar(mG)};let a=new n(o);h(this,Oe,a),a.mount(),a.showSdkVersion(c(this,Ui));for(let s of c(this,Rl).values())a.handlePush(s);c(this,Rl).clear(),0<c(this,fs).length&&a.sessionStart();for(let s of c(this,fs).splice(0))a.narrate(s.text,s.level,s.actor,s.summary);c(this,jo)!==void 0&&a.placeHud(c(this,jo),void 0),h(this,jo,void 0),Promise.resolve().then(()=>(yC(),AC)).then(s=>{var d;if(!c(this,to))return;let l=s.mountTour({document,storage:s.safeLocalStorage(),projectId:(d=BT(window.location.search).projectId)!=null?d:window.location.origin,isDriving:()=>je.IDLE!==a.mode,search:window.location.search,navigator,copy:u=>{var p,f;return(f=(p=navigator.clipboard)==null?void 0:p.writeText(u).then(()=>!0,()=>!1))!=null?f:!1},select:u=>{let p=window.getSelection();if(p===null)return;let f=document.createRange();f.selectNodeContents(u),p.removeAllRanges(),p.addRange(f)}});l!==void 0&&c(this,us).push(l.destroy)}),c(this,Wu)&&a.sessionStart(),c(this,no)!==void 0&&a.bindAnnotator(c(this,no))}).catch(()=>{}))},ro=new WeakMap,NC=function(e){V_(B_(e,ar)),h(this,Cl,j_(e))},wC=function(){return{kind:Dt.HELLO,protocolVersion:rp,sessionId:c(this,ps),...c(this,Fi)===void 0?{}:{projectId:c(this,Fi)},url:location.href,title:document.title,adapters:_d(),...c(this,Ol)===void 0?{}:{token:c(this,Ol)},hasCapabilities:Zp(),channels:eR(),platform:tR(),commands:nR(),captureBodies:c(this,Il),...c(this,ms)===void 0?{}:{sourceMapping:c(this,ms)},...c(this,Ui)===void 0?{}:{sdkVersion:c(this,Ui)},contract:xg,contractParts:{commands:[...od.commands],events:[...od.events],actions:[...od.actions]},...c(this,Cl).length===0?{}:{redactKeys:c(this,Cl)}}},OC=async function(e){var r,o,a,s,l,d,u,p;if(e.name===L.MARKERS){let f=zA(document),m=c(this,Ui)!==void 0||c(this,ms)!==void 0,g=YA({buildPlugin:m,adapters:_d(),markers:f});return{ok:!0,result:{markers:f,...g.length===0?{}:{notApplicable:g}}}}if(e.name===L.NARRATE)return c(this,Oe)===void 0&&c(this,Nl)?(c(this,fs).length<hG&&c(this,fs).push({text:Sn(e.args.text),level:Sn(e.args.level,"info"),actor:vC(e.args),summary:e.args.summary===!0}),{ok:!0,result:{shown:!1,buffered:!0}}):((r=c(this,Oe))==null||r.sessionStart(),(o=c(this,Oe))==null||o.narrate(Sn(e.args.text),Sn(e.args.level,"info"),vC(e.args),e.args.summary===!0),{ok:!0,result:{shown:c(this,Oe)!==void 0}});if(e.name===L.SESSION_CONFIG){let f=e.args.idleEndMs;typeof f=="number"&&((a=c(this,Oe))==null||a.setIdleEndMs(f));let m=VT(En,e.args.hud),g=VT(Ep,e.args.corner),T=c(this,Oe),_;if(T!==void 0)_=T.placeHud(m,g);else{let y=TG(m);y.remember!==void 0&&h(this,jo,y.remember),_=y.placed}return{ok:!0,result:{applied:c(this,Oe)!==void 0,idleEndMs:f,...0<_.length?{hud:_}:{}}}}if(e.name===L.PRESENTER||e.name===L.FLOWS||e.name===L.FLOW_PROGRESS||e.name===L.PLAN||e.name===L.IMPACT)return c(this,Oe)===void 0?(c(this,Rl).set(e.name,e),{ok:!0,result:{applied:!1,buffered:!0}}):(c(this,Oe).handlePush(e),{ok:!0,result:{applied:!0}});let n=c(this,Vu).get(e.name);if(n===void 0)return{ok:!1,error:`unknown command '${e.name}'`};(s=c(this,Oe))==null||s.sessionStart(),await E(this,Jn,IC).call(this,e),yg(Ql.HARNESS===e.by),Hg((l=e.outward)==null?void 0:l.allowed);try{let f=await n(e.args);return(d=c(this,Ko))==null||d.result(Tn.PASS),{ok:!0,result:f}}catch(f){return(u=c(this,Ko))==null||u.result(Tn.FAIL),{ok:!1,error:f instanceof Error?f.message:String(f)}}finally{yg(!1),Hg(void 0),h(this,Ko,void 0),(p=c(this,Oe))==null||p.scheduleIdle()}},IC=async function(e){let n=c(this,Oe);if(n===void 0)return;n.setMode(aN(e.name)),h(this,Ko,void 0);let r=Ql.HARNESS===e.by?ln.HARNESS:ln.AGENT;if(e.name===L.ACT){let o=Sn(e.args.ref),a=Rf(o);h(this,Ko,n.log(Fe.ACT,`${$d(Sn(e.args.action))} ${a}`,void 0,r)),await n.beforeAct(o,Sn(e.args.action),a)}else if(e.name===L.ACT_SEQUENCE){let o=Array.isArray(e.args.steps)?e.args.steps:[];for(let a of o){let s=a,l=Sn(s.ref),d=Rf(l);h(this,Ko,n.log(Fe.ACT,`${$d(Sn(s.action))} ${d}`,void 0,r)),await n.beforeAct(l,Sn(s.action),d)}}else{let o=sN(e.name,e.args);n.status(o),n.log(Fe.READ,o,void 0,r)}};function vC(t){return Ql.HARNESS===t.actor?ln.HARNESS:ln.AGENT}function VT(t,e){return Object.values(t).includes(e)?e:void 0}var jT=globalThis,CC,Qh=(CC=jT.__reticleInstance)!=null?CC:jT.__reticleInstance=new Ll;H();at();li();Ea();Td();Ea();function DC(t){try{return KT(t,new WeakMap)}catch{return t}}function KT(t,e){if(typeof t!="object"||t===null)return t;let n=e.get(t);if(n!==void 0)return n;if(Array.isArray(t)){let a=[];e.set(t,a);for(let s of t)a.push(KT(s,e));return a}let r=Object.getPrototypeOf(t);if(r!==Object.prototype&&r!==null)return t;let o={};e.set(t,o);for(let[a,s]of Object.entries(t))o[a]=KT(s,e);return o}function MC(t){let e={getState:()=>{var r,o,a;let n={};for(let s of t.getQueryCache().getAll()){let l=s.queryKey.map(d=>String(d)).join("/");n[l]={status:s.state.status,fetchStatus:s.state.fetchStatus,isStale:(r=s.isStale)==null?void 0:r.call(s),dataUpdatedAt:s.state.dataUpdatedAt,error:(a=(o=s.state.error)==null?void 0:o.message)!=null?a:null,data:s.state.data}}return n},subscribe:n=>t.getQueryCache().subscribe(n)};return zp(e,t),e}function $C(t,e){return{getState:()=>{let n={};for(let[r,o]of Object.entries(e))n[r]=t.get(o);return n},subscribe:n=>{let r=Object.values(e).map(o=>t.sub(o,n));return()=>{for(let o of r)o()}}}}function PC(t){return{getState:()=>t.getSnapshot(),subscribe:e=>{let n=t.subscribe(e);return()=>n.unsubscribe()}}}function HC(t,e,n){return{getState:()=>e(t),subscribe:r=>n(t,r)}}function UC(t,e,n){return{getState:()=>e(t),subscribe:r=>n(()=>e(t),()=>r())}}var LC={HAS_VALUE:"hasValue",LOADING:"loading",HAS_ERROR:"hasError"};function xG(t){if(t.state===LC.HAS_ERROR){let e=t.contents;return{status:t.state,value:null,error:e instanceof Error?e.message:String(e)}}return t.state!==LC.HAS_VALUE?{status:t.state,value:null,error:null}:{status:t.state,value:t.contents,error:null}}function FC(t,e,n){return{getState:()=>{let r=e(),o={};for(let[a,s]of Object.entries(t))o[a]=xG(r.getLoadable(s));return o},subscribe:n}}function kC(t){if(typeof t=="function"){t();return}t.unsubscribe()}function GC(t,e=ar){let n=!1;return{getState:()=>{let r,o=!1;return kC(t.subscribe(a=>{r=DC(a),o=!0})),!o&&!n&&(n=!0,e("[reticle] a store passed to svelteStore did not call its subscriber synchronously, so its current value cannot be read. reticle_state will report undefined for it. Svelte stores always call back immediately; an RxJS Observable does not unless it is a BehaviorSubject.")),r},subscribe:r=>{let o=!0,a=t.subscribe(()=>{o||r()});return o=!1,()=>kC(a)}}}var AG={detached:!0,flush:"sync"};function BC(t){return{getState:()=>DC(t.$state),subscribe:e=>t.$subscribe(()=>e(),{...AG})}}function VC(t){let e=t,n=new Set;return{store:{getState:()=>e,subscribe:o=>(n.add(o),()=>n.delete(o))},push:o=>{e=o;for(let a of n)a()}}}ci();function jC(t={}){var n;let e=(n=t.target)!=null?n:Qh;return{signal(r,o={}){e.connected&&e.signal(r,o)},state(r,o){e.connected&&e.state(r,o)}}}function KC(t,e,n,r){let o=e();return t.signal(n,r),o}ci();function WC(t){let e={};t.testids!==void 0&&(e.testids=[...t.testids]),t.signals!==void 0&&(e.signals=[...t.signals]),t.stores!==void 0&&(e.stores=[...t.stores]),tc(e)}Cg();Bt();Rt();XE();PE();return tL(yG);})();
1768
+ `});var z1={};Ua(z1,{HUD_CONTROL_SELECTORS:()=>j1,TOUR_SEEN_KEY_PREFIX:()=>Ef,isLastSlide:()=>FS,mountTour:()=>nj,openedByReticle:()=>K1,safeLocalStorage:()=>rj,tourAlreadySeen:()=>W1,tourSeenKey:()=>GS});function J4(t,e){var a;let n=Number.POSITIVE_INFINITY,r=Number.POSITIVE_INFINITY,o=Number.NEGATIVE_INFINITY,s=Number.NEGATIVE_INFINITY;for(let l of e){let d=(a=t.querySelector(l))==null?void 0:a.getBoundingClientRect();d===void 0||d.width<=0||d.height<=0||(n=Math.min(n,d.left),r=Math.min(r,d.top),o=Math.max(o,d.left+d.width),s=Math.max(s,d.top+d.height))}if(o!==Number.NEGATIVE_INFINITY)return{left:n,top:r,width:o-n,height:s-r}}function ej(t,e){var r;if(Ve.HUD===e)return J4(t,Q4);let n=j1[e];if(n!==void 0){let o=(r=t.querySelector(n))==null?void 0:r.getBoundingClientRect();return o===void 0?void 0:o}if(Ve.APP===e)for(let o of Z4){let s=t.querySelector(o);if(s===null)continue;let a=s.getBoundingClientRect();if(a.width>0)return a}}function K1(t){if(t===void 0||t==="")return!1;let e=new URLSearchParams(t.startsWith("?")?t.slice(1):t);return e.has(Gn.OPENED)||e.has(Gn.SESSION)||e.has(Gn.PROJECT)}function W1(t,e){if(t===void 0)return!0;try{return t.getItem(GS(e))!==null}catch{return!0}}function tj(t,e){try{t==null||t.setItem(GS(e),"1")}catch{}}function nj(t){var A;if(t.isDriving()||K1(t.search)||((A=t.navigator)==null?void 0:A.webdriver)===!0||W1(t.storage,t.projectId))return;let e=t.document,n=e.createElement("style");n.setAttribute(pe,""),n.textContent=B1,e.head.appendChild(n);let r=e.createElement("div");r.setAttribute(pe,"");let o=HS(),s=0,a=!0,l=()=>{},d=()=>{},u=()=>{a&&(a=!1,l(),d(),r.remove(),n.remove())},p=()=>{a&&(tj(t.storage,t.projectId),u())},h=()=>{t.isDriving()&&u()},m=()=>{var y,v,O,j;let N=o[s];if(N!==void 0&&(r.innerHTML=`<div class="reticle-tour-scrim"></div>${G1(N)}`,Ve.NONE!==N.anchor)){let Y=ej(e,N.anchor);if(Y!==void 0&&Y.width>0){let te=Ve.APP===N.anchor,Ce=e.createElement("div");Ce.className=te?"reticle-tour-ring is-region":"reticle-tour-ring";let je=te?-2:6;if(Ce.style.left=`${String(Math.round(Y.left-je))}px`,Ce.style.top=`${String(Math.round(Y.top-je))}px`,Ce.style.width=`${String(Math.round(Y.width+je*2))}px`,Ce.style.height=`${String(Math.round(Y.height+je*2))}px`,r.appendChild(Ce),te||(y=r.querySelector(".reticle-tour-scrim"))==null||y.classList.add("is-clear"),U1(N)){Ce.classList.add("is-live"),(v=r.querySelector(".reticle-tour-scrim"))==null||v.remove();let Ae=e.defaultView;for(let rt of F1({left:Y.left-je,top:Y.top-je,width:Y.width+je*2,height:Y.height+je*2},(O=Ae==null?void 0:Ae.innerWidth)!=null?O:e.documentElement.clientWidth,(j=Ae==null?void 0:Ae.innerHeight)!=null?j:e.documentElement.clientHeight)){let Ot=e.createElement("div");Ot.className="reticle-tour-blocker",Ot.style.left=`${String(Math.round(rt.left))}px`,Ot.style.top=`${String(Math.round(rt.top))}px`,Ot.style.width=`${String(Math.round(rt.width))}px`,Ot.style.height=`${String(Math.round(rt.height))}px`,r.appendChild(Ot)}}}}},g=N=>{var Ce,je;let y=o[s],v=Number(N.getAttribute(_p)),O=(Ce=y==null?void 0:y.prompts)==null?void 0:Ce[v];if(O===void 0)return;let j=(Ae,rt)=>{var Ot;N.textContent=Ae,N.classList.add(rt),(Ot=e.defaultView)==null||Ot.setTimeout(()=>{N.textContent=$S,N.classList.remove(rt)},H1)},Y=Ae=>{var Ot;if(Ae){j(P1,"is-done");return}let rt=r.querySelector(`.reticle-tour-prompt[${_p}="${String(v)}"] .reticle-tour-prompt-text`);rt!==null&&((Ot=t.select)==null||Ot.call(t,rt)),j($1,"is-manual")},te=(je=t.copy)==null?void 0:je.call(t,O.text);if(te===void 0){Y(!1);return}if(typeof te=="boolean"){Y(te);return}te.then(Y).catch(()=>{Y(!1)})};r.addEventListener("click",N=>{let y=N.target;if(!(y instanceof Element))return;let v=y.closest(`[${ni}]`);if(v===null)return;let O=v.getAttribute(ni);if(O===null)return;if(N.preventDefault(),N.stopPropagation(),O==="skip"||O==="done"){p();return}if(O==="copy"){g(v);return}let j=US(s,O==="back"?-1:1);j!==s&&(s=j,m())});let T=N=>{if(!a||hf(e))return;let y=N.key==="ArrowRight"?1:N.key==="ArrowLeft"?-1:0;if(N.key==="Escape"){N.preventDefault(),p();return}if(y===0)return;let v=US(s,y);v!==s&&(N.preventDefault(),s=v,m())};e.addEventListener("keydown",T),l=()=>{e.removeEventListener("keydown",T)},m(),e.body.appendChild(r);let _=e.querySelector("[data-reticle-overlay]");if(_!==null){let N=new MutationObserver(h);N.observe(_,{attributes:!0,attributeFilter:["data-reticle-mode"]}),d=()=>N.disconnect(),h()}return{destroy:p,isOpen:()=>a}}function rj(){try{return window.localStorage}catch{return}}var Z4,Q4,j1,GS,Y1=S(()=>{"use strict";V1();MS();D();Ye();Kr();Z4=["main","#root","#app"],Q4=["[data-reticle-hud]","[data-reticle-chat-panel]"];j1={[Ve.HUD_CHAT]:"[data-reticle-chat-toggle]",[Ve.HUD_FLOWS]:'[data-reticle-chat-view-btn="flows"]',[Ve.HUD_ANNOTATE]:'[data-reticle-chat-view-btn="annotations"]',[Ve.HUD_IMPACT]:"[data-reticle-chat-impact]",[Ve.HUD_SETTINGS]:"[data-reticle-settings-btn]"};GS=t=>`${Ef}${t}`});var Ej={};Ua(Ej,{Annotator:()=>ea,RefRegistry:()=>Od,Reticle:()=>ql,SESSION_AUTO:()=>md,adapterNames:()=>Bd,buildSnapshot:()=>Lf,canvasChartData:()=>Ev,commitAndSignal:()=>Ek,createReticleEmitter:()=>gk,describe:()=>Yr,elementHasHoverHandlers:()=>wf,executeAction:()=>ru,executeSequence:()=>rh,getAccessibleName:()=>Se,getCapabilities:()=>yi,getRole:()=>Ne,getStates:()=>Lo,hasCapabilities:()=>Hf,identifyComponent:()=>Wn,inspectChart:()=>xf,installAnnotator:()=>y0,isVisible:()=>Pt,jotaiStore:()=>ck,markAdapterSource:()=>Df,matchQuery:()=>Yd,mobxStore:()=>uk,piniaStore:()=>hk,pushStore:()=>mk,readComponentState:()=>Nf,readStores:()=>vR,readStoresWithTruncation:()=>Kd,recoilStore:()=>pk,refs:()=>X,registerAdapter:()=>jv,registerCapabilities:()=>bc,registerReticleDomain:()=>bk,registerStore:()=>xR,resolveMarkAnchor:()=>gu,reticle:()=>Zl,runQuery:()=>Vf,setCapabilitiesListener:()=>$f,setIgnoreSelectors:()=>qy,sourceOwner:()=>NR,storeNames:()=>Ai,svelteStore:()=>fk,tanstackQueryStore:()=>ak,trackShortTimers:()=>gj,unregisterStore:()=>AR,valtioStore:()=>dk,xstateStore:()=>lk});Ye();D();wo();function Qy(t,e){e(sd,{delta:1});let n=()=>{e(sd,{delta:-1})};return t.then(n,n),t}var $2=1e3;function Jy(t,e=$2){let n=ve(window,"setTimeout"),r=ve(window,"clearTimeout"),o=n.bind(window),s=r.bind(window),a=new Set,l=d=>{a.delete(d)&&t(sd,{delta:-1})};return window.setTimeout=((d,u=0,...p)=>{if(typeof d!="function"||u>e)return Reflect.apply(n,window,[d,u,...p]);t(sd,{delta:1});let h=o(()=>{l(h),d(...p)},u);return a.add(h),h}),window.clearTimeout=(d=>{d!==void 0&&l(d),s(d)}),()=>{window.setTimeout=n,window.clearTimeout=r}}D();function Z(t){try{t()}catch{}}function Mt(t){try{return t()}catch{return}}wo();D();function H2(){return{pathname:location.pathname,search:location.search,hash:location.hash,href:location.href}}var ev=[];function tv(t){ev=t.map(e=>({pattern:e,parts:e.split("/").filter(Boolean)}))}function U2(){var e,n;let t=(n=(e=globalThis.next)==null?void 0:e.router)==null?void 0:n.pathname;if(!(typeof t!="string"||!t.startsWith("/")))return t.replace(/\[\.\.\.[^\]]+\]/g,"*").replace(/\[([^\]]+)\]/g,":$1")}function F2(t){var r;let e=t.split("/").filter(Boolean),n;for(let{pattern:o,parts:s}of ev){let a=s.at(-1)==="*",l=a?s.slice(0,-1):s;if((a?e.length<l.length:e.length!==l.length)||!l.every((u,p)=>u.startsWith(":")||u===e[p]))continue;let d=s.filter(u=>u.startsWith(":")||u==="*").length;(n===void 0||d<n.params)&&(n={pattern:o,params:d})}return(r=n==null?void 0:n.pattern)!=null?r:U2()}function nv(t){let e=new AbortController,n=ve(history,"pushState"),r=ve(history,"replaceState"),o=n.bind(history),s=r.bind(history),a=location.href,l=(h,m)=>{Z(()=>{let g=H2();if(g.href===h)return;a=g.href;let T=F2(g.pathname);t(x.ROUTE_CHANGE,{from:jn(h),to:jn(g.href),pathname:g.pathname,...T===void 0?{}:{pattern:T},search:jn(g.search),hash:jn(g.hash),[tE]:m})})},d=(h,m,g)=>{let T=location.href;o(h,m,g!=null?g:null),l(T,_d.PUSH)},u=(h,m,g)=>{let T=location.href;s(h,m,g!=null?g:null),l(T,_d.REPLACE)};history.pushState=d,history.replaceState=u;let p=()=>{l(a,_d.POP)};return window.addEventListener("popstate",p,{signal:e.signal}),window.addEventListener("hashchange",p,{signal:e.signal}),()=>{history.pushState===d&&(history.pushState=n),history.replaceState===u&&(history.replaceState=r),e.abort()}}D();mt();Rn();var T5=new Set(["submit","button","reset","image"]);function S5(t){return Xe(t)&&t.isContentEditable||t instanceof HTMLTextAreaElement?!0:t instanceof HTMLInputElement?!T5.has(t.type.toLowerCase()):!1}var _5="A";function kv(t){if(_5!==t.tagName)return;let e=t.getAttribute("href");return e===null||dA(e)?void 0:e}function Dv(t){var o,s,a,l,d,u;let e=kv(t);if(e!==void 0)return e;let n=t.closest("form"),r=S5(t)?["",""]:[(o=t.textContent)!=null?o:"",(s=t.getAttribute("value"))!=null?s:""];return[Se(t),...r,(a=t.getAttribute("title"))!=null?a:"",(l=t.getAttribute("aria-label"))!=null?l:"",(d=t.getAttribute("href"))!=null?d:"",(u=n==null?void 0:n.getAttribute("action"))!=null?u:""].join(" ")}var x5='button[type="submit"], input[type="submit"], button:not([type]):not([type=""])';function Mv(t){var n;let e=(n=t.closest("form"))==null?void 0:n.querySelector(x5);return Xe(e)?e:null}function Rf(t){let e=kv(t);return e!==void 0?uA(e):lA(Dv(t),Ne(t))}var Ud;function DE(t){Ud=t}function Pv(t){if(Ud!==void 0)for(let e of t){if(e===null)continue;let n=hA(Dv(e),Ne(e));if(n!==void 0&&!Ud.includes(n))throw new Error(Xg(n))}}function $v(t){var n,r,o,s,a;if(Ud===void 0||Ud.includes(st.PAY))return;let e={autocomplete:(n=t.getAttribute("autocomplete"))!=null?n:void 0,name:(r=t.getAttribute("name"))!=null?r:void 0,id:(o=t.getAttribute("id"))!=null?o:void 0,inputMode:(s=t.getAttribute("inputmode"))!=null?s:void 0,label:`${Se(t)} ${(a=t.getAttribute("placeholder"))!=null?a:""}`};if(fA(e))throw new Error(Xg(st.PAY))}D();xt();var Hv=(t,e)=>Array.from(t.querySelectorAll(e)).some(n=>n.closest(bd)===null);function Uv(t){return[...Hv(t,`[${tc}]`)?[Cs.SOURCE]:[],...Hv(t,Kn())?[Cs.TESTID]:[]]}function Fv(t){return t.buildPlugin||0<t.adapters.length||t.markers.includes(Cs.SOURCE)?[]:[Jp]}D();Kr();var Gv=ct.SESSION;function Bv(t,e,n){var l;let r=()=>{try{let d=e==null?void 0:e.getItem(Gv);return d!=null&&d.length>0?d:void 0}catch{return}},o=d=>{try{e==null||e.setItem(Gv,d)}catch{}},s=t!==void 0&&t.length>0?t:void 0,a=(l=s!=null?s:r())!=null?l:n();return o(a),a}lt();var A5="vite:afterUpdate",y5=3,v5="no longer resolves to an element",R5="the code changed underneath it";function ME(t){return t!==null&&typeof t=="object"?t:void 0}function N5(t){var e;return typeof((e=ME(t))==null?void 0:e.on)=="function"}function w5(t){var r,o;let e=(r=ME(t))==null?void 0:r.updates;if(!Array.isArray(e))return[];let n=[];for(let s of e){let a=(o=ME(s))==null?void 0:o.path;typeof a=="string"&&a.length>0&&!n.includes(a)&&n.push(a)}return n}var Fd,fc,hc,PE=class{constructor(e){b(this,Fd,0);b(this,fc,[]);b(this,hc);f(this,hc,e)}get current(){return c(this,Fd)}observe(e){N5(e)&&e.on(A5,n=>this.applied(w5(n)))}applied(e){f(this,Fd,c(this,Fd)+1),f(this,fc,e.slice(0,y5)),c(this,hc).markEdited()}staleRefMessage(e){let n=`ref '${Ms(e)}' ${v5}`;if(!c(this,hc).mintedBeforeLastEdit(e))return n;let r=c(this,fc).length===0?"the page hot-updated":`${c(this,fc).join(", ")} hot-updated`;return`${n} \u2014 ${r} after this ref was taken, so ${R5} and the framework replaced the node. Query again for a fresh ref: this is your own edit landing, not the app failing.`}};Fd=new WeakMap,fc=new WeakMap,hc=new WeakMap;var Gd=new PE(X);D();D();Oo();Rn();mt();lt();xt();ko();lt();mt();Ye();var HE={CLIPPED:"clipped",OVERLAP:"overlap",CONTRAST:"contrast"},UE=20,O5=300,I5=60,Kv=1,Wv=.25,C5=4.5,L5=3,k5=24,D5=18.66,M5=700,P5='button, a[href], input:not([type="hidden"]), select, textarea, [role="button"], [role="link"], [role="tab"], [role="menuitem"]',zv=/rect\(\s*0(px)?[\s,]+0(px)?[\s,]+0(px)?[\s,]+0(px)?\s*\)|inset\(\s*50%/,Yv=4,Xv=t=>{let e=t.getBoundingClientRect();if(e.width<Yv||e.height<Yv)return null;let n=getComputedStyle(t);return n.visibility==="hidden"||n.display==="none"||n.opacity==="0"||zv.test(n.clip)||zv.test(n.clipPath)?null:e},qv=t=>{var e;return(Se(t)||((e=t.textContent)!=null?e:"")).replace(/\s+/g," ").trim().slice(0,I5)},$5=t=>[...t.childNodes].filter(e=>Node.TEXT_NODE===e.nodeType).map(e=>{var n;return(n=e.textContent)!=null?n:""}).join("").trim(),Zv=new Set(["hidden","clip"]),H5=t=>{let e=getComputedStyle(t),n=t.scrollWidth>t.clientWidth+Kv&&Zv.has(e.overflowX),r=t.scrollHeight>t.clientHeight+Kv&&Zv.has(e.overflowY);return e.textOverflow==="ellipsis"||e.getPropertyValue("-webkit-line-clamp")!==""&&e.getPropertyValue("-webkit-line-clamp")!=="none"||!n&&!r?null:n?{detail:`${String(t.scrollWidth)}px of text in a ${String(t.clientWidth)}px box, cut with no ellipsis`,value:t.scrollWidth,bound:t.clientWidth}:{detail:`${String(t.scrollHeight)}px of text in a ${String(t.clientHeight)}px box, cut with no line clamp`,value:t.scrollHeight,bound:t.clientHeight}},U5=/rgba?\(\s*([\d.]+)[\s,]+([\d.]+)[\s,]+([\d.]+)(?:[\s,/]+([\d.]+%?))?\s*\)/,eR=t=>{let e=U5.exec(t);if(e===null)return null;let n=e[4],r=1;return n!==void 0&&(r=n.endsWith("%")?Number(n.slice(0,-1))/100:Number(n)),[Number(e[1]),Number(e[2]),Number(e[3]),r]},Qv=([t,e,n])=>{let r=o=>{let s=o/255;return s<=.03928?s/12.92:((s+.055)/1.055)**2.4};return .2126*r(t)+.7152*r(e)+.0722*r(n)},tR=(t,e)=>{let n=t[3];return[t[0]*n+e[0]*(1-n),t[1]*n+e[1]*(1-n),t[2]*n+e[2]*(1-n),1]},F5=t=>{let e=[];for(let n=t;n!==null;n=n.parentElement){let r=getComputedStyle(n);if(r.backgroundImage!=="none"&&r.backgroundImage!=="")return null;let o=eR(r.backgroundColor);if(o!==null&&o[3]>0&&(e.push(o),o[3]===1))break}return e.reduceRight((n,r)=>tR(r,n),[255,255,255,1])},G5=t=>{let e=getComputedStyle(t),n=eR(e.color),r=F5(t);if(n===null||r===null)return null;let o=tR(n,r),[s,a]=[Qv(o),Qv(r)].sort((p,h)=>h-p),l=Number.parseFloat(e.fontSize),d=Number.parseInt(e.fontWeight,10),u=l>=k5||l>=D5&&d>=M5;return{ratio:(s+.05)/(a+.05),min:u?L5:C5}},nR=(t,e,...n)=>{if(typeof document.elementFromPoint!="function")return!0;let r=document.elementFromPoint(t,e);return r!==null&&n.some(o=>o===r||o.contains(r))},xi=2,Jv=(t,e)=>[[e.left+e.width/2,e.top+e.height/2],[e.left+xi,e.top+xi],[e.right-xi,e.top+xi],[e.left+xi,e.bottom-xi],[e.right-xi,e.bottom-xi]].some(([n=0,r=0])=>nR(n,r,t)),B5=(t,e)=>{let n=Math.min(t.right,e.right)-Math.max(t.left,e.left),r=Math.min(t.bottom,e.bottom)-Math.max(t.top,e.top);return n<=0||r<=0?0:n*r/Math.min(t.width*t.height,e.width*e.height)};function rR(t=document.body){let e=[],n=(o,s,a)=>{e.length<UE&&e.push({kind:o,ref:X.refFor(s),what:qv(s),...a})};for(let o of t.querySelectorAll("*")){if(e.length>=UE)break;if(_t(o)||$5(o)==="")continue;let s=Xv(o);if(s===null||!nR(s.left+s.width/2,s.top+s.height/2,o))continue;let a=H5(o);a!==null&&n(HE.CLIPPED,o,a);let l=G5(o);l!==null&&l.ratio<l.min&&n(HE.CONTRAST,o,{detail:`contrast ${l.ratio.toFixed(2)}:1, under ${String(l.min)}:1`,value:Math.round(l.ratio*100)/100,bound:l.min})}let r=[...t.querySelectorAll(P5)].filter(o=>!_t(o)).slice(0,O5).flatMap(o=>{let s=Xv(o);return s===null?[]:[{el:o,rect:s}]});for(let[o,s]of r.entries())for(let a of r.slice(o+1)){if(e.length>=UE)return e;if(s.el.contains(a.el)||a.el.contains(s.el))continue;let l=B5(s.rect,a.rect);l>=Wv&&Jv(s.el,s.rect)&&Jv(a.el,a.rect)&&n(HE.OVERLAP,s.el,{detail:`drawn over "${qv(a.el)}" (${X.refFor(a.el)})`,value:Math.round(l*100)/100,bound:Wv})}return e}Vd();Ye();var gc=new Set(["button","link","textbox","searchbox","checkbox","radio","combobox","listbox","slider","spinbutton","switch","tab","menuitem","option"]),V5=new Set(["script","style","noscript","template","head","meta","link"]),j5=new Set(["alert","status"]);function sR(t,e){if(j5.has(e))return!0;let n=t.getAttribute("aria-live");return n!==null&&n!=="off"}var oR=80;function K5(t){let e=aR(t),n=(e.own?e.text:"").replace(/\s+/g," ").trim();return n.length>oR?`${n.slice(0,oR)}\u2026`:n}function aR(t){var r,o;let e="",n=!1;for(let s of t.childNodes)if(s.nodeType===3)e+=(r=s.textContent)!=null?r:"",n||(n=0<((o=s.textContent)!=null?o:"").trim().length);else if(pn(s)&&lR(s)){let a=aR(s);e+=a.text,n||(n=a.own)}else pn(s)&&cR(s)&&gc.has(Ne(s))&&(e+=Se(s));return{text:e,own:n}}function cR(t){let e=t.ownerDocument.defaultView,n=t.parentElement;if(e===null||n===null)return!1;let r=e.getComputedStyle(n).display;return r.includes("flex")||r.includes("grid")?!1:e.getComputedStyle(t).display==="inline"}function lR(t){if(uR(t)||!cR(t))return!1;let e=Ne(t);return!gc.has(e)&&!sR(t,e)&&Se(t).length===0}var W5=50;function dR(t){return t.getAttribute("aria-hidden")==="true"?!0:t instanceof HTMLElement&&t.hidden}function uR(t){return V5.has(t.tagName.toLowerCase())||_t(t)?!0:dR(t)}function z5(t){let e=Lo(t).filter(n=>n===ue.DISABLED||n===ue.CHECKED||n===ue.EXPANDED||n===ue.PRESSED||n===ue.FOCUSED);return e.length>0?` [${e.join(",")}]`:""}function Y5(t,e,n,r,o,s="",a=!1){let l=" ".repeat(e),d=CE(t),u=r,p=u.length>0?` "${u}"`:"",h=gc.has(n)||u.length>0?` (ref=${X.refFor(t)})`:"",m=d!==void 0&&d.length>0?` [value="${d}"]`:"",g=o.length>0?` [${o}]`:"",T=s.length>0?` [text="${s}"]`:"",_=a?Te(t):null,A=a?Wn(t):null,N=_===null?A==null?void 0:A.componentStack[0]:void 0,y=A==null?void 0:A.source,v="";_!==null?v=` [testid=${_}]`:N!==void 0&&(v=` [component=${N}]`);let O=`${v}${y===void 0?"":` [src=${y.file}:${String(y.line)}]`}`;return`${l}- ${n}${p}${h}${m}${T}${g}${z5(t)}${O}`}function X5(t,e){return`${" ".repeat(t)}- text "${e}"`}function q5(t){if(t===null)return"";let e=t.display;if(e==="grid"||e==="inline-grid"){let n=t.gridTemplateColumns;return n!==""&&n!=="none"?`grid-cols:${n}`:"grid"}return""}var pR=t=>t.hasAttribute("data-aria-hidden")&&t.getAttribute("aria-hidden")==="true";function iR(t,e){for(let n of t){if(e.unread.length>=W5){e.unreadOverflow=!0;return}e.unread.push(X.refFor(n))}}function Z5(t){var r,o;let e=[...t.children],n=(r=t.shadowRoot)!=null?r:Ds(t);if(n!==null&&e.push(...n.children),gf(t))try{let s=(o=t.contentDocument)==null?void 0:o.body;s!=null&&e.push(...s.children)}catch{}return e}function FE(t,e,n,r){if(!(n.throughOverlay===!0&&pR(t)&&!_t(t)&&!(t instanceof HTMLElement&&t.hidden))&&uR(t)){dR(t)&&(n.hiddenSkipped+=1);return}let s=t.ownerDocument.defaultView,a=s!==null?s.getComputedStyle(t):null;if(a!==null&&a.display==="none"){n.hiddenSkipped+=1;return}if(a!==null&&a.display==="inline"&&!r&&lR(t)){Cf(t,e,n,r);return}let l=Ne(t),d=Se(t),u=gc.has(l),p=r||sR(t,l),h=n.mode===Za.INTERACTIVE&&!p,m=!h&&d.length===0?K5(t):"",g=h?"":q5(a),T=u,_=T||l!=="generic"||d.length>0||m.length>0||g.length>0,A=h?T:_;h&&!A&&_&&(n.leanSkipped+=1),A?(n.nodes+=1,n.lines.push(l==="generic"&&m.length>0&&g.length===0?X5(e,m):Y5(t,e,l,d,g,m,n.ids===!0)),Cf(t,e+1,n,p)):Cf(t,e,n,p)}function Cf(t,e,n,r=!1){let o=Z5(t);if(e>n.maxDepth){o.length>0&&(n.truncated=!0,iR([t],n));return}for(let s=0;s<o.length;s+=1){if(n.nodes>=n.maxNodes){n.truncated=!0,iR(o.slice(s),n);return}let a=o[s];a!==void 0&&FE(a,e,n,r)}}function Q5(t){let e=t.querySelectorAll('[role="dialog"], dialog[open], [aria-modal="true"]'),n=[];for(let r of e)ft(r)||Pt(r)&&n.push(Se(r)||"(unnamed dialog)");return n}var J5='[role="dialog"], [role="alertdialog"], dialog[open], [aria-modal="true"]';function eH(t){if(t!==document.body)return;let e=document.body.querySelectorAll('[role="dialog"], dialog[open], [aria-modal="true"]'),n,r;for(let a of e)if(!ft(a)){if(Pt(a)){n=a;break}r!=null||(r=a)}if(n!=null||(n=r),n===void 0)return;let o=n,s=Array.from(document.body.children).filter(a=>!a.contains(o));if(s.length!==0&&s.every(a=>a.getAttribute("aria-hidden")==="true"))return"the rest of the page is aria-hidden behind an open overlay (a focus-trap modal), so this snapshot shows only the overlay. If it will not close its cleanup may be stuck on a throttled tab: dismiss the overlay, or snapshot with { scope } inside it."}function tH(t){let e=Q5(t),n=eH(t);return{route:If(),title:document.title,...e.length>0?{visibleDialogs:e}:{},...n!==void 0?{overlayHidingPage:n}:{}}}function Lf(t={}){var d,u,p,h;let e=(d=t.mode)!=null?d:Za.FULL,n=(u=t.scope)==null?void 0:u.trim(),r=document.body;if(n!==void 0&&n!==""&&(r=X.resolve(n),r===null))try{r=document.querySelector(n)}catch{}let o=r===null,s=r!=null?r:document.body,a=tH(s);if(o)return{tree:"",status:a,nodes:0,truncated:!1,scopeMissing:!0};if(e===Za.STATUS)return{tree:"",status:a,nodes:0,truncated:!1};let l={lines:[],nodes:0,leanSkipped:0,hiddenSkipped:0,truncated:!1,mode:e,maxNodes:(p=t.maxNodes)!=null?p:400,maxDepth:(h=t.maxDepth)!=null?h:20,unread:[],unreadOverflow:!1,...t.ids===!0?{ids:!0}:{}};if(t.includeRoot===!0?FE(s,0,l,!1):Cf(s,0,l),l.nodes===0&&s===document.body){l.throughOverlay=!0;for(let m of Array.from(s.children))pR(m)&&m.querySelector(J5)!==null&&FE(m,0,l,!1);l.throughOverlay=!1}return{tree:l.lines.join(`
1769
+ `),status:a,nodes:l.nodes,truncated:l.truncated,...l.nodes===0?{domElements:s.querySelectorAll("*").length}:{},...l.leanSkipped>0?{leanSkipped:l.leanSkipped}:{},...l.hiddenSkipped>0?{hiddenSkipped:l.hiddenSkipped}:{},...l.unread.length>0?{unread:l.unread}:{},...l.unreadOverflow?{unreadOverflow:!0}:{},...t.audit===!0?{audit:rR(s)}:{}}}RE();D();Rn();Oo();mt();Ye();pr();vi();ko();lt();xt();xt();function LR(t){let e=lH(t);if(e===void 0)return;let n=t.ownerDocument.querySelectorAll(e);return n.length===1&&n[0]===t?e:void 0}function lH(t){let e=Te(t);if(e!==null&&0<e.length){let r=e.replace(/\\/g,"\\\\").replace(/"/g,'\\"');return`[${Ti()}="${r}"]`}let n=t.getAttribute("id");if(n!==null&&/^[A-Za-z_][A-Za-z0-9_-]*$/.test(n))return`#${n}`}Oo();function Uf(t){return t.replace(/\s+/g," ").trim().normalize("NFC")}var dH=/[\u2018\u2019]/g,uH=/[\u201c\u201d]/g,pH=/[\u2013\u2014]/g;function Ff(t){return t.replace(dH,"'").replace(uH,'"').replace(pH,"-")}function hr(t){return Ff(Uf(t))}function Hs(t,e){return hr(t).toLowerCase().includes(hr(e).toLowerCase())}function Wd(t,e,n){return e.matchCase!==!0?Hs(t,n):hr(t).includes(hr(n))}function $R(t,e){return hr(t)===hr(e)}var YE={uppercase:t=>t.toUpperCase(),lowercase:t=>t.toLowerCase(),capitalize:t=>t.replace(/(^|\s)(\p{L})/gu,(e,n,r)=>n+r.toUpperCase())};function HR(t,e){var r,o,s;let n=(o=(r=t.ownerDocument.defaultView)==null?void 0:r.getComputedStyle(t).textTransform)!=null?o:"";return(s=YE[n])==null?void 0:s.call(YE,e)}var fH=1.5,hH=.05,mH=[255,255,255,1];function kR(t){let e=/^rgba?\(\s*([\d.]+)[\s,]+([\d.]+)[\s,]+([\d.]+)(?:[\s,/]+([\d.]+))?\s*\)$/.exec(t);if(e!==null)return[Number(e[1]),Number(e[2]),Number(e[3]),e[4]===void 0?1:Number(e[4])]}function DR(t,e){let n=t[3],r=(o,s)=>o*n+s*(1-n);return[r(t[0],e[0]),r(t[1],e[1]),r(t[2],e[2]),1]}function XE(t){let e=t/255;return e<=.03928?e/12.92:((e+.055)/1.055)**2.4}function MR(t){return .2126*XE(t[0])+.7152*XE(t[1])+.0722*XE(t[2])}function gH(t,e){let n=MR(t),r=MR(e);return(Math.max(n,r)+.05)/(Math.min(n,r)+.05)}function PR(t){return`rgb(${[t[0],t[1],t[2]].map(e=>String(Math.round(e))).join(", ")})`}function EH(t){let e=Number.parseFloat(t.getPropertyValue("-webkit-text-stroke-width"));return/\dpx/.test(t.textShadow)||e>0}function bH(t){let e=t.ownerDocument.defaultView;if(e===null)return;let n=e.getComputedStyle(t),r=kR(n.color);if(r===void 0||EH(n))return;let o=1,s=[],a=!1;for(let p=t;p!==null;p=gi(p)){let h=e.getComputedStyle(p),m=Number.parseFloat(h.opacity);if(o*=Number.isNaN(m)?1:m,a)continue;if(h.backgroundImage!==""&&h.backgroundImage!=="none")return;let g=kR(h.backgroundColor);if(g===void 0)return;g[3]>0&&s.push(g),a=g[3]>=1}if(o<hH)return`the composed opacity is ${o.toFixed(2)}`;let l=s.reduceRight((p,h)=>DR(h,p),mH),d=DR(r,l),u=gH(d,l);if(!(u>=fH))return`text ${PR(d)} on ${PR(l)}: contrast ${u.toFixed(2)}:1`}function UR(t){let e=t.map(bH);return e.length>0&&e.every(n=>n!==void 0)?e[0]:void 0}Vd();var XR=tc,TH=12,SH=2e3,_H=()=>`[${XR}], ${Kn()}, button, a, input, select, textarea, [role]`;function zn(t){return[...Node.ELEMENT_NODE===t.nodeType?[t]:[],...Array.from(t.querySelectorAll("*"))]}var xH=["script","style","template","noscript"];function qR(t){return xH.includes(t.tagName.toLowerCase())}function AH(t){if(Ie(t)){let e=t.type.toLowerCase();if(e==="submit"||e==="button"||e==="reset")return t.value}return qR(t)?"":Array.from(t.childNodes).filter(e=>Node.TEXT_NODE===e.nodeType).map(e=>{var n;return(n=e.textContent)!=null?n:""}).join("")}function zd(t,e){var s;if(qR(t)||Nd(t))return"";let n=Pt(t,e),r=yH(t),o="";for(let a of Array.from(t.childNodes))if(Node.TEXT_NODE===a.nodeType&&n)o+=(s=a.textContent)!=null?s:"";else if(pn(a)){let l=zd(a,e);o+=r||vH(a)?` ${l} `:l}return o}function yH(t){var n,r;let e=(r=(n=t.ownerDocument.defaultView)==null?void 0:n.getComputedStyle(t).display)!=null?r:"";return e.includes("flex")||e.includes("grid")}function vH(t){var n,r;let e=(r=(n=t.ownerDocument.defaultView)==null?void 0:n.getComputedStyle(t).display)!=null?r:"inline";return!e.startsWith("inline")&&e!=="contents"}function RH(t){if(Ie(t)||fn(t)||ur(t))return!0;let e=t.tagName.toLowerCase();return e==="button"||e==="meter"||e==="output"||e==="progress"||t.hasAttribute("aria-label")||t.hasAttribute("aria-labelledby")}function Bf(t){if(t===void 0)return{container:document.body,scopeMissing:!1};let e=X.resolve(t);if(Si(e))return{container:e,scopeMissing:!1};try{let n=document.querySelector(t);if(Si(n))return{container:n,scopeMissing:!1}}catch{}return{container:null,scopeMissing:!0}}function NH(t,e){let n=`${e.file}:${e.line}:`.replace(/\\/g,"\\\\").replace(/"/g,'\\"');try{return Array.from(t.querySelectorAll(`[${XR}^="${n}"]`))}catch{return[]}}function wH(t,e){let n=[],r=0;for(let o of Array.from(t.querySelectorAll(_H()))){if(r>=SH)break;r+=1;let s=Wn(o);s!==null&&s.componentStack[0]===e&&n.push(o)}return n}function FR(t,e){if(e.source!==void 0){let n=NH(t,e.source);if(n.length>0)return n}return e.component!==void 0&&e.component.length>0?wH(t,e.component):[]}function OH(t,e){return t===e||e==="textbox"&&t==="searchbox"}var IH="option",CH="option",LH="select",GR=1;function ZE(t){if(CH!==t.localName)return!1;let e=t.closest(LH);return ur(e)?Pt(e)?kH(e):!0:!1}function kH(t){let e=t.getBoundingClientRect();return e.width>0&&e.height>0&&e.width<=GR&&e.height<=GR}function DH(t,e){if(IH!==t)return e;let n=e.filter(r=>!ZE(r));return n.length===e.length?e:n}function qE(t,e,n){let r=zn(t).filter(o=>OH(Ne(o),e)&&(n===void 0||$R(Se(o),n)));return DH(e,r)}function BR(t,e,n){return zn(t).filter(r=>{let o=AH(r);if(Wd(o,n,e))return!0;if(n.matchCase!==!0||!Hs(o,e))return!1;let s=HR(r,o);return s!==void 0&&Wd(s,n,e)})}function VR(t,e){let n=hr(e).toLowerCase(),r=[],o=[];for(let s of zn(t)){if(!RH(s))continue;let a=hr(Se(s)).toLowerCase();a.includes(n)&&(a===n?r:o).push(s)}return r.length>0?r:o}function jR(t,e){return zn(t).filter(n=>{let r=n.getAttribute("placeholder");return r!==null&&Hs(r,e)})}function KR(t,e){return zn(t).filter(n=>Te(n)===e)}function WR(t,e){return zn(t).filter(n=>{let r=n.getAttribute("alt");return r!==null&&Hs(r,e)})}function zR(t,e){var o;let n=e.by,r=e.value;if(n!==void 0&&r!==void 0)switch(n){case et.ROLE:return qE(t,r,e.name);case et.TEXT:return BR(t,r,e);case et.LABEL:return VR(t,r);case et.PLACEHOLDER:return jR(t,r);case et.TESTID:return KR(t,r);case et.ALT:return WR(t,r);case et.COMPONENT:return FR(t,{...e,component:(o=e.component)!=null?o:r});default:throw new Error(`unsupported query strategy '${String(n)}' - use one of: ${Object.values(et).join(", ")}`)}return e.component!==void 0||e.source!==void 0?FR(t,e):e.role!==void 0?qE(t,e.role,e.name):e.text!==void 0?BR(t,e.text,e):e.label!==void 0?VR(t,e.label):e.placeholder!==void 0?jR(t,e.placeholder):e.testid!==void 0?KR(t,e.testid):e.alt!==void 0?WR(t,e.alt):[]}function MH(t){var e,n;try{return(n=(e=t.contentDocument)==null?void 0:e.body)!=null?n:null}catch{return null}}var PH=3;function $H(t){let e=[],n=(r,o)=>{var s;for(let a of r.querySelectorAll("*")){let l=(s=a.shadowRoot)!=null?s:Ds(a);if(l!==null){e.push(l),n(l,o);continue}if(o>=PH||!gf(a))continue;let d=MH(a);d!==null&&(e.push(d),n(d,o+1))}};return n(t,0),e}function ZR(t){let{container:e,scopeMissing:n}=Bf(t.scope);if(e===null)return{candidates:[],scopeMissing:!0};if(t.self===!0)return t.scope===void 0?{candidates:[],scopeMissing:n}:t.text!==void 0&&!Wd(zd(e,new Map),t,t.text)?{candidates:[],scopeMissing:n}:{candidates:_t(e)?[]:[e],scopeMissing:n};let r=new Set,o=[],s=Gf(t)===void 0?_t:Nd,a=l=>{for(let d of l)r.has(d)||s(d)||(r.add(d),o.push(d))};a(zR(e,t));for(let l of $H(e))a(zR(l,t));return{candidates:o,scopeMissing:n}}var HH=512,UH=12;function FH(t,e){let n={};for(let r of e.slice(0,UH)){let o=t.getAttribute(r);o!==null&&(n[r]=it(r)?ye:o.slice(0,HH))}return Object.keys(n).length>0?n:void 0}function GH(t,e,n){return ue.IN_VIEWPORT===e?kE(t,n):Lo(t,Pt(t,n)).includes(e)}var YR=G.MAX_COLLECTION_ITEMS;function Yd(t,e,n=YR,r=!0,o=!0){let s=ZR(t),a=s.scopeMissing,l=r&&WH(t)?Gf(t):void 0,d=s.candidates.length===0?Bf(t.scope).container:null,u=d===null||l===void 0?void 0:QR(d,l,t),p=u===void 0?s.candidates:[u],h=new Map,m=e===void 0?p:p.filter(v=>GH(v,e,h)),g=t.attrs,T=m.slice(0,Math.max(0,Math.min(n,YR))),_=T.length>1||ue.IN_VIEWPORT===e,A=T.map(v=>{let O=Yr(v,h);if(_&&kE(v,h)&&!O.states.includes(ue.IN_VIEWPORT)&&(O={...O,states:[...O.states,ue.IN_VIEWPORT]}),g===void 0||g.length===0)return O;let j=FH(v,g);return j===void 0?O:{...O,attrs:j}}),N=Zy(m),y=Gf(t)===void 0?void 0:UR(T);return{matched:m.length>0,count:m.length,elements:A,...a?{scopeMissing:!0}:{},...N===void 0?{}:{coveredBy:N},...y===void 0?{}:{unreadable:y},...m.length===0?{hint:JR(t,e,o)}:{}}}function BH(t){let e=t.getAttribute("aria-labelledby");if(e===null)return;let n=e.split(/\s+/).map(r=>{var o,s,a;return r.length>0&&(a=(s=(o=t.ownerDocument.getElementById(r))==null?void 0:o.textContent)==null?void 0:s.trim())!=null?a:""}).filter(r=>r.length>0).join(" ");return n.length>0?n:void 0}function VH(t){var o,s,a,l,d,u,p,h;let e=(o=Bf(t.scope).container)!=null?o:document.body,n=[],r=["list","listbox","grid","table","tree","treegrid","dialog","alertdialog","navigation","main","banner","form","search","menu","menubar","tablist"];for(let m of r){let g=qE(e,m,void 0);for(let T of g){if(ft(T))continue;let _=(l=(a=(s=T.getAttribute("aria-label"))!=null?s:BH(T))!=null?a:Te(T))!=null?l:void 0,A=T.querySelectorAll("[role]"),N=[];for(let v of Array.from(A)){if(N.length>=3)break;let O=v.getAttribute("role"),j=(h=(p=(d=v.getAttribute("aria-label"))!=null?d:Te(v))!=null?p:(u=v.textContent)==null?void 0:u.trim().slice(0,40))!=null?h:"";O!==null&&j.length>0&&N.push(`${O}[${j}]`)}let y={role:m,childCount:A.length,sample:N};if(_!==void 0&&_.length>0&&(y.name=_),n.push(y),n.length>=10)return n}}return n}function QR(t,e,n){let r,o=-1,s=new Map;for(let a of zn(t)){if(_t(a)||!Wd(zd(a,s),n,e))continue;let l=0;for(let d=a.parentElement;d!==null;d=d.parentElement)l++;l>o&&(r=a,o=l)}return r}function jH(t,e){let n=hr(e).toLowerCase();if(n.length===0)return;let r=new Map;for(let o of zn(t)){if(_t(o))continue;let s=Uf(zd(o,r)),a=Ff(s).toLowerCase().indexOf(n);if(a!==-1)return s.slice(a,a+n.length)}}var KH=new Set(["text","matchCase","scope","by","value"]);function WH(t){return(t.by===void 0||et.TEXT===t.by)&&Object.keys(t).every(e=>KH.has(e))}function Gf(t){return t.text!==void 0?t.text:et.TEXT===t.by?t.value:void 0}var zH=5;function YH(t,e){let n=et.ROLE===e.by?e.value:e.role,r=e.name;if(n===void 0||r===void 0||r.length===0)return[];let o=hr(r).toLowerCase();if(o.length===0)return[];let s=[];for(let a of zn(t)){if(_t(a)||Ne(a)!==n)continue;let l=Uf(Se(a));if(l.length===0)continue;let d=Ff(l).toLowerCase();if(!(!d.includes(o)&&!o.includes(d))&&(s.includes(l)||s.push(l),s.length>=zH))break}return s}function XH(t,e){if(et.TESTID!==e.by||e.value===void 0)return;let n=Ti();for(let r of[Ns,...wx]){if(r===n)continue;if(zn(t).some(s=>s.getAttribute(r)===e.value&&!_t(s)))return r}}function qH(t,e){var o;let n=!1;for(let s of zn(t))if(!_t(s)&&Nv(s)&&Hs((o=s.textContent)!=null?o:"",e)){n=!0;break}if(!n)return!1;let r=new Map;for(let s of zn(t))if(!_t(s)&&wv(s)&&Hs(zd(s,r),e))return!1;return!0}function JR(t,e,n=!0){var T;let r=(T=Bf(t.scope).container)!=null?T:document.body,o=r.querySelectorAll(Kn()),s=[],a=new Set;for(let _ of Array.from(o)){if(_t(_))continue;let A=Te(_);A===null||A.length===0||a.has(A)||(a.add(A),s.length<TH&&s.push(A))}let l=CR(),d=s.some(_=>l.includes(_)),p={route:If(!1),presentTestids:s,...a.size>s.length?{presentTestidsTotal:a.size}:{},presentRegions:VH(t),knownEmptyState:d},h=Gf(t);if(h!==void 0){let _=QR(r,h,t);if(_!==void 0){let A=Yr(_),N=LR(_);p.splitText=N===void 0?A:{...A,selector:N}}else if(t.matchCase===!0){let A=jH(r,h);A!==void 0&&(p.caseMiss=A)}}n&&h!==void 0&&p.splitText===void 0&&(e===void 0||ue.VISIBLE===e||ue.IN_VIEWPORT===e)&&qH(r,h)&&(p.ariaHiddenMatch=!0);let m=YH(r,t);m.length>0&&(p.nameNearMiss=m);let g=XH(r,t);return g!==void 0&&(p.testidFoundUnder=g),p}function QE(t){return ZR(t).candidates}function Vf(t,e){let n=Yd(t,void 0,e,!1),r=n.scopeMissing===!0?{scopeMissing:!0}:{};return n.elements.length===0?{elements:n.elements,count:n.count,hint:JR(t),...r}:{elements:n.elements,count:n.count,...r}}D();Ye();Tc();lt();wo();Rn();var ZH=/\b(current|new)-password\b/,QH=/Chrome|Chromium|Edg\/|Firefox|Gecko\//;function eb(t,e=navigator.userAgent){var r,o,s;return!(t instanceof HTMLInputElement)||!(t.type.toLowerCase()==="password"||ZH.test((r=t.getAttribute("autocomplete"))!=null?r:""))||QH.test(e)?!1:600<=Number((s=(o=/AppleWebKit\/(\d+)/.exec(e))==null?void 0:o[1])!=null?s:0)}function Kf(t,e){let n=lv(t),r=n===void 0?void 0:Py(n);r!==void 0?r.call(t,e):t.value=e;let o=t.dispatchEvent(new Event("input",{bubbles:!0,cancelable:!0}));return t.dispatchEvent(new Event("change",{bubbles:!0})),!o}function JH(t){let e=t.getAttribute("contenteditable");if(Xe(t)&&t.isContentEditable||e!==null&&e!=="false"||t.getAttribute("role")==="textbox")return!0;if(!("editContext"in t))return!1;let n=t;return n.editContext!==null&&n.editContext!==void 0}function tb(t,e){if(JH(t))throw new Error(`cannot ${e} a contenteditable or EditContext editor; use press or an input`)}function nb(t,e){if(t.disabled)throw new Error(`cannot ${e} a disabled <${t.tagName.toLowerCase()}> \u2014 a user could not edit it, so forcing the value would put the app in a state nobody can reach`);if(t.readOnly)throw new Error(`cannot ${e} a readonly <${t.tagName.toLowerCase()}> \u2014 a user could not edit it, so forcing the value would put the app in a state nobody can reach`)}mt();ko();Rn();dt();xt();D();mt();var aN=160,eU=150,tU="checkbox",nU="radio",Xd;function Yf(t){return t instanceof HTMLInputElement||t instanceof HTMLTextAreaElement||t instanceof HTMLSelectElement}function lN(t){return t instanceof HTMLInputElement&&(tU===t.type||nU===t.type)}function ib(t){return lN(t)?{value:t.value,checked:t.checked}:{value:t.value}}function rU(t,e){return t.checked!==void 0||e.checked!==void 0?t.checked!==e.checked:t.value!==e.value}function cN(t){return t.length>aN?`${t.slice(0,aN)}\u2026`:t}function oU(t){let e=Te(t);if(e!==null&&e.length>0)return e;if(t.name.length>0)return t.name;let n=Se(t);if(n.length>0)return n;let r=t.getAttribute("id");return r!==null&&r.length>0?r:t.tagName.toLowerCase()}function dN(t,e,n,r){let o=Zt(t),s={[St.FIELD]:oU(t),[St.KIND]:e,[St.LENGTH]:n.value.length};return n.checked!==void 0&&(s[St.CHECKED]=n.checked),(r==null?void 0:r.checked)!==void 0&&(s[St.PREVIOUS_CHECKED]=r.checked),o?(s[St.REDACTED]=!0,s):(s[St.VALUE]=cN(n.value),r!==void 0&&r.checked===void 0&&(s[St.PREVIOUS]=cN(r.value)),s)}function iU(t){return lN(t)?"checked":"value"}function sU(t,e){for(let n=Object.getPrototypeOf(t);n!==null;){let r=Object.getOwnPropertyDescriptor(n,e);if(r!==void 0)return r;n=Object.getPrototypeOf(n)}}function aU(t,e){var u;let n=Object.getOwnPropertyDescriptor(t,e),r=n!=null?n:sU(t,e),o=r===void 0?void 0:Reflect.get(r,"get"),s=r===void 0?void 0:Reflect.get(r,"set"),a=!1;if(!(typeof o=="function"&&typeof s=="function")||(n==null?void 0:n.configurable)===!1)return{stop:()=>{},written:()=>a};Object.defineProperty(t,e,{configurable:!0,enumerable:(u=r==null?void 0:r.enumerable)!=null?u:!1,get(){return Reflect.apply(o,this,[])},set(p){a=!0,Reflect.apply(s,this,[p])}});let d=!1;return{stop:()=>{d||(d=!0,n===void 0?Reflect.deleteProperty(t,e):Object.defineProperty(t,e,n))},written:()=>a}}function uN(t){if(!(!Yf(t)||t instanceof HTMLSelectElement))return{before:ib(t),...aU(t,iU(t))}}function pN(t,e){let n=Xd;if(e===void 0||(e.stop(),n===void 0||!Yf(t)||!t.isConnected||!e.written()))return;let r=e.before;if(Zt(t)&&r.checked===void 0)return;let o=ib(t);rU(r,o)&&n(x.FIELD_CHANGE,dN(t,xd.SETTLED,o,r))}function fN(t){let e=new AbortController,{signal:n}=e,r=Xd;Xd=t;let o=new Map,s=(u,p)=>{t(x.FIELD_CHANGE,dN(u,p,ib(u)))},a=u=>{let p=o.get(u);p!==void 0&&clearTimeout(p),o.delete(u)},l=u=>{let p=u.target;Yf(p)&&(a(p),o.set(p,setTimeout(()=>{o.delete(p),s(p,xd.INPUT)},eU)))},d=u=>{let p=u.target;Yf(p)&&(a(p),s(p,xd.CHANGE))};return document.addEventListener("input",l,{signal:n,capture:!0}),document.addEventListener("change",d,{signal:n,capture:!0}),()=>{for(let u of o.values())clearTimeout(u);o.clear(),Xd===t&&(Xd=r),e.abort()}}Ye();mt();var sb=200,hN=" | ",cU=3,lU=/\p{L}/u;function dU(t){return lU.test(t)}var uU=3;function pU(t){return t instanceof Element&&t.querySelectorAll("*").length>uU}var Sc,qd,Ni,ab,cb,Xf=class{constructor(){b(this,Ni);b(this,Sc,new Set);b(this,qd,0)}collect(e){for(let n of e){if(E(this,Ni,ab).call(this))return;if(n.type==="characterData"){E(this,Ni,cb).call(this,n.target.textContent,n.target.parentElement);continue}for(let r of n.addedNodes){if(E(this,Ni,ab).call(this))return;if(pU(r))continue;let o=cU===r.nodeType?r.parentElement:fU(r);E(this,Ni,cb).call(this,r.textContent,o)}}}effect(e){let n=[...c(this,Sc)].filter(o=>o!==e);if(n.length===0)return{};let r=n.join(hN);return{appeared:r.length>sb?`${r.slice(0,sb)}\u2026`:r}}};Sc=new WeakMap,qd=new WeakMap,Ni=new WeakSet,ab=function(){return c(this,qd)>sb},cb=function(e,n){if(n!==null&&Nd(n)||n!==null&&Zt(n))return;let r=(e!=null?e:"").replace(/\s+/g," ").trim();r.length!==0&&dU(r)&&(c(this,Sc).has(r)||(c(this,Sc).add(r),f(this,qd,c(this,qd)+(r.length+hN.length))))};function fU(t){return t instanceof Element?t:t.parentElement}D();Rn();var hU=new Set(["checkbox","switch"]),mN="aria-checked",qf=t=>{var e;return!Ie(t)&&hU.has((e=t.getAttribute("role"))!=null?e:"")},gN=t=>t.getAttribute(mN)==="true";function EN(t,e,n){var o;if(n||!qf(t)||e!==L.CHECK&&e!==L.UNCHECK)return;let r=e===L.CHECK;if(gN(t)!==r)throw new Error(`${e} clicked the ${(o=t.getAttribute("role"))!=null?o:""} but ${mN} is still "${String(!r)}" \u2014 the app did not toggle it`)}function Zf(t,e){if(e!==L.CHECK&&e!==L.UNCHECK)return!1;let n=e===L.CHECK;return Ie(t)?t.checked===n:qf(t)&&gN(t)===n}D();Tc();dt();Rn();var lb=t=>new Promise(e=>oe(e,t));function mU(t,e=""){return typeof t=="string"?t:e}function Jf(t){return Pg(t)}var gU=["metaKey","ctrlKey","shiftKey","altKey"],_N={meta:"metaKey",cmd:"metaKey",command:"metaKey",super:"metaKey",win:"metaKey",control:"ctrlKey",ctrl:"ctrlKey",shift:"shiftKey",alt:"altKey",option:"altKey",opt:"altKey"};function xN(t){let e=t.modifiers,n=Array.isArray(e)?e.map(o=>mU(o).toLowerCase()):[],r={metaKey:!1,ctrlKey:!1,shiftKey:!1,altKey:!1};for(let o of n){let s=_N[o];s!==void 0&&(r[s]=!0)}return r}function bN(t){return _N[t.toLowerCase()]}function Qf(t,e){let n=t.code;return typeof n=="string"&&0<n.length?n:e===" "?"Space":e.length===1?/[a-z]/i.test(e)?`Key${e.toUpperCase()}`:/[0-9]/.test(e)?`Digit${e}`:"":/^[A-Z][A-Za-z0-9]*$/.test(e)&&TU.has(e)?e:""}function eh(t,e,n,r,o=!1){if(TN!==e&&e.length!==1)return;let s=new KeyboardEvent("keypress",{key:e,code:n,bubbles:!0,cancelable:!0,repeat:o,...r}),a=TN===e?EU:e.charCodeAt(0);for(let l of bU)Object.defineProperty(s,l,{value:a});qe(()=>t.dispatchEvent(s))}var TN="Enter",EU=13,bU=["keyCode","charCode","which"],TU=new Set(["Enter","Escape","Tab","Backspace","Delete","Home","End","PageUp","PageDown","ArrowUp","ArrowDown","ArrowLeft","ArrowRight","Insert","F1","F2","F3","F4","F5","F6","F7","F8","F9","F10","F11","F12"]),SU="no document to press into";function AN(){let t=document.activeElement;if(Xe(t)&&document.body!==t)return t;if(Xe(document.body))return document.body;let e=document.documentElement;if(Xe(e))return e;throw new Error(SU)}function yN(t,e,n){return t.length===0&&Dx(n)&&L.PRESS===e}function vN(t){return $g(t)}var _U=33,SN=500,xU={Backspace:8,Tab:9,Enter:13,Shift:16,Control:17,Alt:18,Escape:27," ":32,PageUp:33,PageDown:34,End:35,Home:36,ArrowLeft:37,ArrowUp:38,ArrowRight:39,ArrowDown:40,Delete:46,Meta:91},AU=/^[a-z0-9]$/i,yU=t=>{var e;return(e=xU[t])!=null?e:AU.test(t)?t.toUpperCase().charCodeAt(0):0};function Zd(t,e){let n=new KeyboardEvent(t,e),r=yU(e.key);for(let o of["keyCode","which"])Object.defineProperty(n,o,{get:()=>r});return n}async function RN(t,e,n,r,o){let s=Date.now();for(o>SN&&await lb(SN);Date.now()-s<o;)qe(()=>t.dispatchEvent(Zd("keydown",{key:e,code:n,bubbles:!0,cancelable:!0,repeat:!0,...r})))&&eh(t,e,n,r,!0),await lb(Math.min(_U,Math.max(0,o-(Date.now()-s))))}async function NN(t,e,n,r){let o={...n},s=(p,h)=>{let m=Qf({},h);return qe(()=>t.dispatchEvent(Zd(p,{key:h,code:m,bubbles:!0,cancelable:!0,...o})))},a=new Map;for(let p of gU)o[p]&&a.set(p,1);let l=p=>{var h;a.set(p,((h=a.get(p))!=null?h:0)+1),o[p]=!0},d=p=>{var m;let h=((m=a.get(p))!=null?m:1)-1;a.set(p,h),h<=0&&(o[p]=!1)},u=!1;for(let p of e){let h=bN(p);h!==void 0&&l(h);let m=s("keydown",p);m||(u=!0),m&&eh(t,p,Qf({},p),o),db(t,p,m)}r>0&&await lb(r);for(let p of[...e].reverse()){let h=bN(p);h!==void 0&&d(h),s("keyup",p)}return u}function db(t,e,n){var r,o;if(!(e!=="Escape"||!n))for(let s=t.closest("dialog");s!==null;s=(o=(r=s.parentElement)==null?void 0:r.closest("dialog"))!=null?o:null){try{if(!s.open||!s.matches(":modal"))continue}catch{return}typeof s.requestClose=="function"?s.requestClose():s.dispatchEvent(new Event("cancel",{cancelable:!0}))&&s.close();return}}xt();D();mt();ko();Ye();var vU="canvas";function wN(t){var o,s,a,l;let e=(s=(o=t.defaultView)==null?void 0:o.innerWidth)!=null?s:0,n=(l=(a=t.defaultView)==null?void 0:a.innerHeight)!=null?l:0,r=0;for(let d of t.querySelectorAll(vU)){if(jr(d))continue;let u=d.getBoundingClientRect(),p=u.width>0&&u.height>0,h=u.bottom>0&&u.right>0&&u.top<n&&u.left<e;p&&h&&(r+=1)}return r}function ON(t){var l;let e=(l=Te(t))!=null?l:void 0,n=Wn(t),r={};if(e!==void 0){r.testid=e;let d=QE({by:et.TESTID,value:e}).length;1<d&&(r.testidOf=d)}let o=n==null?void 0:n.componentStack[0];o!==void 0&&(r.component=o),(n==null?void 0:n.source)!==void 0&&(r.source=n.source);let s=Ne(t),a=Se(t);if(s.length>0&&(r.role=s),a.length>0&&(r.name=a),Zt(t)&&(r.secret=!0),s.length>0&&a.length>0){let d=QE({by:et.ROLE,value:s,name:a}),u=d.indexOf(t);1<d.length&&0<=u&&(r.nth=u,r.of=d.length)}return r}var IN=(t,e,n,r,o,s,a)=>{let l={ok:!0,ref:t,action:e,dispatched:!0,settled:r,settleReason:o,effect:n};return s.testid!==void 0&&(l.testid=s.testid),s.testidOf!==void 0&&(l.testidOf=s.testidOf),s.component!==void 0&&(l.component=s.component),s.source!==void 0&&(l.source=s.source),s.role!==void 0&&(l.role=s.role),s.name!==void 0&&(l.name=s.name),s.nth!==void 0&&(l.nth=s.nth),s.of!==void 0&&(l.of=s.of),s.secret!==void 0&&(l.secret=s.secret),a!==void 0&&(l.warning=a),l};lt();xt();mt();Ye();var RU=[[.5,.5],[.25,.25],[.75,.25],[.25,.75],[.75,.75]],NU=3;function th(t,e){var u;if(e.width===0||e.height===0)return null;let n=t.ownerDocument;if(typeof n.elementFromPoint!="function")return null;let r=n,o=p=>jr(p)&&p!==t&&!t.contains(p)&&!p.contains(t),s=(p,h)=>{var g,T,_;return(_=((T=(g=r.elementsFromPoint)==null?void 0:g.call(r,p,h))!=null?T:[n.elementFromPoint(p,h)]).find(A=>A!==null&&!o(A)))!=null?_:null},a=new Map;for(let[p,h]of RU){let m=s(e.left+e.width*p,e.top+e.height*h);m!==null&&(m===t||t.contains(m)||m.contains(t)||a.set(m,((u=a.get(m))!=null?u:0)+1))}let l=null,d=0;for(let[p,h]of a)h>d&&(l=p,d=h);return d>=NU?l:null}dt();Tc();var Qd={occluded:!1,occludedBy:null,scrolledIntoView:!1};function wi(t,e,n={}){return new MouseEvent(e,{...n,view:t.ownerDocument.defaultView})}function nh(t,e,n){let r={...n,view:t.ownerDocument.defaultView};return typeof PointerEvent=="function"?new PointerEvent(e,r):new MouseEvent(e,r)}var gt=1,Jd=0;function Ue(t,e,n,r,o,s=0){let a={bubbles:!(e.endsWith("enter")||e.endsWith("leave")),cancelable:!0,detail:s,clientX:n.x,clientY:n.y,screenX:n.x,screenY:n.y,buttons:r,button:0,...o!==void 0?{relatedTarget:o}:{}};return t.dispatchEvent(e.startsWith("pointer")?nh(t,e,{...a,pointerId:1,isPrimary:!0}):wi(t,e,a))}async function tu(t,e,n){var u;let r=t.ownerDocument,o=(u=r.activeElement)!=null?u:r.body,s=ub(t),a=n!=null?n:0;qe(()=>Ue(t,"pointerdown",s,gt,o,a)),qe(()=>Ue(t,"mousedown",s,gt,void 0,a)),t.tabIndex>=0&&typeof t.focus=="function"&&t.focus();let l=0;if(e!==void 0&&e.ms>0){let p=e.now();await e.sleep(e.ms),l=e.now()-p}return qe(()=>Ue(t,"pointerup",s,Jd,o,a)),qe(()=>Ue(t,"mouseup",s,Jd,void 0,a)),{prevented:!qe(()=>Ue(t,"click",s,Jd,void 0,a)),heldMs:l}}function wU(t){return t.width>0||t.height>0}function eu(t,e){let n=t.ownerDocument.defaultView;if(n===null)return!1;let r=e.left+e.width/2,o=e.top+e.height/2;return r<0||o<0||r>n.innerWidth||o>n.innerHeight}function OU(t,e){let n=th(t,e);return n===null?{occluded:!1,occludedBy:null}:{occluded:!0,occludedBy:X.refFor(n),occluderName:IU(n)}}function IU(t){let e=Te(t);if(e!==null&&e.length>0)return`[data-testid="${e}"]`;let n=Se(t).trim();return n.length>0?`${Ne(t)} "${n.slice(0,40)}"`:t.tagName.toLowerCase()}function CU(t){if(typeof t.getClientRects!="function")return!1;let e=Array.from(t.getClientRects());return e.length>0&&e.every(n=>n.width===0||n.height===0)}function DN(t){if(typeof t.getBoundingClientRect!="function")return Qd;let e=t.getBoundingClientRect();if(!wU(e))return CU(t)?{...Qd,noSize:!0}:Qd;let n=!1;eu(t,e)&&typeof t.scrollIntoView=="function"&&(t.scrollIntoView({block:"center",inline:"center"}),n=!0,e=t.getBoundingClientRect());let r=n&&eu(t,e);return{...OU(t,e),scrolledIntoView:n,...r?{offViewport:!0}:{}}}function pb(t,e,n=null){qe(()=>t.dispatchEvent(nh(t,e,{bubbles:!0,cancelable:!0,relatedTarget:n})))}function MN(t,e,n=null){qe(()=>t.dispatchEvent(nh(t,e,{bubbles:!1,cancelable:!0,relatedTarget:n})))}function LU(t){if(typeof DataTransfer!="function")return null;let e=new DataTransfer,n=Array.isArray(t)?t:t!==void 0?[t]:[];for(let r of n)if(typeof r=="object"&&r!==null){let o=r;typeof o.mime=="string"&&typeof o.value=="string"&&e.setData(o.mime,o.value)}return e}var CN=5;function ub(t){let e=t.getBoundingClientRect();return{x:e.left+e.width/2,y:e.top+e.height/2}}function kU(t,e,n){return{x:Math.round(t.x+(e.x-t.x)*n),y:Math.round(t.y+(e.y-t.y)*n)}}async function fb(t,e,n){let r=e!=null?e:t,o=ub(t),s=ub(r),a=t.getBoundingClientRect(),l=e!==null?r.getBoundingClientRect():null,d=(m,g)=>g.x>=m.left&&g.x<=m.right&&g.y>=m.top&&g.y<=m.bottom;Ue(t,"pointerdown",o,gt),Ue(t,"mousedown",o,gt),await Ri();let u=!1,p=!1;for(let m=1;m<=CN;m+=1){let g=kU(o,s,m/CN);!u&&!d(a,g)&&(u=!0,Ue(t,"pointerout",g,gt,r),Ue(t,"mouseout",g,gt,r),Ue(t,"pointerleave",g,gt,r),Ue(t,"mouseleave",g,gt,r)),u&&!p&&l!==null&&d(l,g)&&(p=!0,Ue(r,"pointerover",g,gt,t),Ue(r,"mouseover",g,gt,t),Ue(r,"pointerenter",g,gt,t),Ue(r,"mouseenter",g,gt,t)),Ue(r,"pointermove",g,gt),Ue(r,"mousemove",g,gt),await Ri()}!p&&l!==null&&(Ue(r,"pointerover",s,gt,t),Ue(r,"mouseover",s,gt,t),Ue(r,"pointerenter",s,gt,t),Ue(r,"mouseenter",s,gt,t)),Ue(r,"pointerup",s,Jd),Ue(r,"mouseup",s,Jd);let h=!1;if(typeof DragEvent=="function"){let m=LU(n),g={bubbles:!0,cancelable:!0};m!==null&&(g.dataTransfer=m),t.dispatchEvent(new DragEvent("dragstart",g)),await Ri(),r.dispatchEvent(new DragEvent("dragenter",g)),r.dispatchEvent(new DragEvent("dragover",g)),await Ri(),h=!r.dispatchEvent(new DragEvent("drop",g)),t.dispatchEvent(new DragEvent("dragend",g))}return h}async function PN(t,e){let n=DU(t);LN(t,"pointerdown"),qe(()=>t.dispatchEvent(kN("touchstart",n))),t.tabIndex>=0&&typeof t.focus=="function"&&t.focus();let r=0;if(e!==void 0&&e.ms>0){let s=e.now();await e.sleep(e.ms),r=e.now()-s}return qe(()=>t.dispatchEvent(kN("touchend",[]))),LN(t,"pointerup"),{prevented:!qe(()=>t.dispatchEvent(wi(t,"click",{bubbles:!0,cancelable:!0}))),heldMs:r}}function LN(t,e){qe(()=>t.dispatchEvent(nh(t,e,{bubbles:!0,cancelable:!0,pointerType:"touch",isPrimary:!0,width:23,height:23})))}function DU(t){if(typeof Touch!="function"||typeof t.getBoundingClientRect!="function")return[];let e=t.getBoundingClientRect();try{return[new Touch({identifier:0,target:t,clientX:e.left+e.width/2,clientY:e.top+e.height/2})]}catch{return[]}}function kN(t,e){if(typeof TouchEvent=="function")try{return new TouchEvent(t,{bubbles:!0,cancelable:!0,touches:e,targetTouches:e,changedTouches:e})}catch{}return new Event(t,{bubbles:!0,cancelable:!0})}var MU=new Set(["menu","menubar","listbox","dialog","alertdialog","tooltip"]),PU="closed";function $N(t){var e,n;for(let r=t.parentElement;r!==null;r=r.parentElement)if(PU===r.getAttribute("data-state")&&MU.has((e=r.getAttribute("role"))!=null?e:""))throw new Error(`'${(n=r.getAttribute("role"))!=null?n:"popup"}' holding this element is closing (data-state="closed"), so a person could not click it: look again once it has gone and act on what is open`)}lt();var $U=400,HU=.8;function UU(t,e){var r;let n=t;for(;n!==null&&n!==document.body;){let o=getComputedStyle(n),s=e==="x"?o.overflowX:o.overflowY,a=e==="x"?n.scrollWidth>n.clientWidth:n.scrollHeight>n.clientHeight;if((s==="auto"||s==="scroll")&&a)return n;n=n.parentElement}return(r=document.scrollingElement)!=null?r:document.documentElement}function HN(t,e,n,r){let o=t!==void 0?X.resolve(t):null;return hb(o instanceof Element?o:void 0,e,n,r)}function hb(t,e,n,r){var p;let s=t!==void 0?UU(t,r!==void 0&&r!==0&&(e===void 0||e===0)?"x":"y"):(p=document.scrollingElement)!=null?p:document.documentElement,a=s.scrollTop,l=s.scrollLeft;if(n!==void 0&&n>=0&&n<=1)s.scrollTop=Math.round(s.scrollHeight*n);else if(r!==void 0&&r!==0&&(s.scrollLeft=l+r),r===void 0||e!==void 0&&e!==0){let h=e!=null?e:Math.round(s.clientHeight*HU)||$U;s.scrollTop=a+h}s.dispatchEvent(new Event("scroll",{bubbles:!1}));let d=s.scrollTop,u=s.scrollLeft;return{scrolled:d!==a||u!==l,scrollTop:d,scrollHeight:s.scrollHeight,clientHeight:s.clientHeight,atEnd:d+s.clientHeight>=s.scrollHeight-1,atStart:d<=1,scrollLeft:u,scrollWidth:s.scrollWidth,clientWidth:s.clientWidth,atLeftEnd:u<=1,atRightEnd:u+s.clientWidth>=s.scrollWidth-1}}D();mt();Oo();var FU='label, summary, [onclick], [tabindex], [contenteditable]:not([contenteditable="false"])';function UN(t,e){if(L.CLICK!==e&&L.DBLCLICK!==e)return!1;for(let n=t;n!==null;n=gi(n))if(gc.has(Ne(n))||n.matches(FU))return!1;return getComputedStyle(t).cursor!=="pointer"}function nu(t,e=""){return typeof t=="string"?t:e}function GU(t){let e=X.resolve(t);if(e===null)throw new Error(`ref '${Ms(t)}' no longer resolves to an element`);if(!Si(e))throw new Error(`ref '${Ms(t)}' is not an HTML or SVG element`);return e}var BU=new Set([L.FILL,L.TYPE,L.CLEAR,L.SELECT]),VU=t=>BU.has(t),VN=new Set([L.CLICK,L.DBLCLICK,L.CHECK,L.UNCHECK]);function jN(t){let e=nu(t.toRef);return e!==""?e:nu(t.target)}var FN=new Set(["content","name","type","__base64"]),jU=new Set([Fp,R_,"holdMs"]);function KU(t){let e=Object.keys(t),n=e.filter(o=>!FN.has(o)&&!jU.has(o));if(n.length===0&&e.some(o=>FN.has(o)))return;let r=n.length===0?"no file was described":`upload does not read ${n.join(", ")}, so it would be dropped`;throw new Error(`upload needs the file described as args: { name, content?, type? } \u2014 ${r}. To upload a file from disk, use the reticle daemon which reads it via args.path and delivers real bytes; calling with { path } directly reaches only fabricated content.`)}function WU(t,e,n){let r=e===L.CLICK||e===L.DBLCLICK||e===L.CHECK||e===L.UNCHECK||e===L.DRAG||e===L.SUBMIT||e===L.PRESS&&Jf(n)==="Enter",o=e===L.DRAG?X.resolve(jN(n)):null,s=e===L.PRESS&&Jf(n)==="Enter"?Mv(t):null;r&&Pv([t,s,Si(o)?o:null]),(e===L.FILL||e===L.TYPE)&&$v(t);let a=Rf(t)||s!==null&&Rf(s),l=Si(o)&&Rf(o);if(r&&(a||l)&&n[Fp]!==!0)throw new Error(`potentially destructive action blocked; retry with args.${Fp}=true`);if(VN.has(e)&&t instanceof HTMLElement&&ZE(t))throw new Error("cannot click a native <option> inside a visually-hidden <select> \u2014 open the dropdown and target the visible option")}function zU(t,e){var r,o;if(t.some(s=>s.value===e))return e;let n=t.filter(s=>s.label.trim()===e.trim());return n.length===1&&(o=(r=n[0])==null?void 0:r.value)!=null?o:e}function KN(t){return!Lo(t).includes(ue.DISABLED)}function GN(t){if(Ie(t)||fn(t)||ur(t))return t.value}function BN(t){let e=t.ownerDocument.activeElement;return e===null||e===t.ownerDocument.body?null:X.refFor(e)}async function YU(t,e,n){if(L.CLICK===e){let r=nc(n.holdMs);return await tu(t,r===0?void 0:{ms:r,sleep:gb,now:()=>Date.now()})}if(L.TAP===e){let r=nc(n.holdMs);return await PN(t,r===0?void 0:{ms:r,sleep:gb,now:()=>Date.now()})}return{prevented:await qU(t,e,n),heldMs:0}}var XU="cannot zoom from inside the page \u2014 CSS zoom changes how it LOOKS without changing the layout viewport, visualViewport or media queries, so a layout that breaks at 200% would be reported as checked and passing. Drive a real browser (reticle drive <url>, or reticle_lease) and zoom there.";function mb(t){return typeof t=="number"&&Number.isFinite(t)?t:void 0}async function qU(t,e,n){var r;switch(e){case L.DBLCLICK:return await tu(t,void 0,1),await tu(t,void 0,2),!qe(()=>t.dispatchEvent(wi(t,"dblclick",{bubbles:!0,cancelable:!0,detail:2})));case L.HOVER:{let o=t.ownerDocument,s=(r=o.activeElement)!=null?r:o.body;pb(t,"pointerover",s),t.dispatchEvent(wi(t,"mouseover",{bubbles:!0,relatedTarget:s})),MN(t,"pointerenter",s),t.dispatchEvent(wi(t,"mouseenter",{relatedTarget:s})),pb(t,"pointermove",s);let a=t.dispatchEvent(wi(t,"mousemove",{bubbles:!0,cancelable:!0})),l=nc(n.holdMs);return l>0&&await gb(l),!a}case L.FOCUS:return t.focus(),t.dispatchEvent(new FocusEvent("focusin",{bubbles:!0})),!1;case L.BLUR:{let s=t.getRootNode().activeElement===t;return t.blur(),s||(t.dispatchEvent(new FocusEvent("blur")),t.dispatchEvent(new FocusEvent("focusout",{bubbles:!0}))),!1}case L.FILL:if(Ie(t)||fn(t)){if(typeof n.value!="string")throw new Error("fill requires a string `value` \u2014 pass it nested, as args: { value: '\u2026' }. To empty a field on purpose use the `clear` action, or fill with an explicit \"\".");return nb(t,"fill"),eb(t)||t.focus(),Kf(t,n.value)}throw tb(t,"fill"),new Error(`cannot fill a <${t.tagName.toLowerCase()}>`);case L.TYPE:if(Ie(t)||fn(t)){if(typeof n.text!="string")throw new Error("type requires a string `text` \u2014 pass it nested, as args: { text: '\u2026' }.");return nb(t,"type"),t.focus(),Kf(t,t.value+n.text)}throw tb(t,"type into"),new Error(`cannot type into a <${t.tagName.toLowerCase()}>`);case L.CLEAR:if(Ie(t)||fn(t))return Kf(t,"");throw new Error(`cannot clear a <${t.tagName.toLowerCase()}>`);case L.SELECT:if(ur(t)){if(typeof n.value!="string")throw new Error("select requires a string `value` \u2014 pass it nested, as args: { value: '\u2026' }.");let o=Array.from(t.options),s=zU(o,n.value);if(!o.some(a=>a.value===s)){let a=o.map(l=>`${l.value} (${l.label})`).join(", ");throw new Error(`no <option> with value '${Ms(s)}' \u2014 available: ${o.length===0?"(none)":a}`)}return t.value=s,t.dispatchEvent(new Event("change",{bubbles:!0})),!1}throw new Error(`cannot select on a <${t.tagName.toLowerCase()}>`);case L.CHECK:case L.UNCHECK:{let o=qf(t);if(!Ie(t)&&!o)throw new Error(`cannot (un)check a <${t.tagName.toLowerCase()}>`);if(!KN(t))throw new Error(`cannot ${e} a disabled control \u2014 a real user could not, so neither will Reticle`);if(!Ie(t))return Zf(t,e)?!1:(await tu(t)).prevented;if(t.type==="radio"&&e===L.UNCHECK)throw new Error("cannot uncheck a radio button \u2014 a real user could not; select another radio in the group");if(Zf(t,e))return!1;let s=wi(t,"click",{bubbles:!0,cancelable:!0,composed:!0});return!qe(()=>t.dispatchEvent(s))||s.defaultPrevented}case L.SUBMIT:{let o=cv(t)?t:t.closest("form");if(o===null)throw new Error("no form to submit");return o.requestSubmit(),!1}case L.PRESS:{let o=xN(n),s=vN(n);if(s.length>0)return await NN(t,s,o,nc(n.holdMs));let a=Jf(n),l=Qf(n,a),d=qe(()=>t.dispatchEvent(Zd("keydown",{key:a,code:l,bubbles:!0,cancelable:!0,...o})));db(t,a,d),d&&eh(t,a,l,o);let u=nc(n.holdMs);return u>0&&await RN(t,a,l,o,u),qe(()=>t.dispatchEvent(Zd("keyup",{key:a,code:l,bubbles:!0,...o}))),!d}case L.SCROLL_INTO_VIEW:return t.scrollIntoView(),!1;case L.ZOOM:throw new Error(XU);case L.SCROLL:{let o=mb(n.dy),s=mb(n.dx),a=mb(n.fraction);return hb(t,o,a,s),!1}case L.UPLOAD:{if(!Ie(t)||t.type!=="file")throw new Error('upload target must be a <input type="file">');KU(n);let o=nu(n.content,"reticle test file"),s=o;if(n.__base64===!0){let u=atob(o),p=new Uint8Array(u.length);for(let h=0;h<u.length;h++)p[h]=u.charCodeAt(h);s=p.buffer.slice(0)}let a=new File([s],nu(n.name,"file.txt"),{type:nu(n.type,"text/plain")}),l=new DataTransfer;l.items.add(a),t.files=l.files;let d=t.dispatchEvent(new Event("input",{bubbles:!0,cancelable:!0}));return t.dispatchEvent(new Event("change",{bubbles:!0})),!d}case L.DRAG:{let o=jN(n);if(o==="")return await fb(t,null,n.data);let s=X.resolve(o);if(!Si(s))throw new Error(`drag target '${Ms(o)}' did not resolve to an element \u2014 pass a ref from reticle_snapshot or reticle_query as args.toRef (alias: args.target)`);return await fb(t,s,n.data)}default:throw new Error(`unknown action '${e}'`)}}async function ru(t,e,n={}){let r=0<t.length,o=yN(t,e,n)?AN():GU(t);r&&WU(o,e,n),r&&$N(o);let s=r?ON(o):{},a=Pt(o),l=KN(o),d=BN(o),u=GN(o),p=uN(o),h=VN.has(e)?DN(o):Qd,m=Zf(o,e),g=UN(o,e),T=0,_=new Xf,A=new MutationObserver(Ae=>{T+=Ae.length,_.collect(Ae)});A.observe(o.ownerDocument.documentElement,{subtree:!0,childList:!0,attributes:!0,characterData:!0});let N=!1,y=0,v=!1,O=null;try{let Ae=await YU(o,e,n);N=Ae.prevented,y=Ae.heldMs}finally{let Ae=sN(n.settleMs),rt=await iN(Ae);v=rt.settled,O=rt.settled?null:C_.TIMEOUT,A.disconnect(),p==null||p.stop()}EN(o,e,m);let j=GN(o);pN(o,p);let Y=BN(o),te={dispatched:!0,targetMatched:r&&o.isConnected,visible:a,enabled:l,defaultPrevented:N,focusMoved:d!==Y?`${d!=null?d:"null"}->${Y!=null?Y:"null"}`:null,valueChanged:VU(e)?u!==j:!1,...L.FILL===e&&eb(o)?{autofillSafe:!0}:{},domMutatedWithin:T,..._.effect(j),occluded:h.occluded,occludedBy:h.occludedBy,scrolledIntoView:h.scrolledIntoView,...h.occluderName===void 0?{}:{occluderName:h.occluderName},...h.noSize===!0?{noSize:!0}:{},...h.offViewport===!0?{offViewport:!0}:{},...y>0?{heldMs:y}:{},...m?{alreadyAtValue:!0}:{},...ZU()},Ce=r?h.occluded?ad.CLICK_OCCLUDED:e===L.HOVER&&wf(o)?ad.HOVER_NATIVE_ENTER_LEAVE:g?ad.CLICK_NOT_A_CONTROL:void 0:ad.GLOBAL_PRESS,je=IN(t,e,te,v,O,s,Ce);return jr(o)?{...je,reticleUi:!0}:je}function ZU(){let t=wN(document);return t>0?{canvases:t}:{}}var gb=t=>new Promise(e=>oe(e,t));async function rh(t){var r;let e=[],n=[];for(let o of t){let s=await ru(o.ref,o.action,(r=o.args)!=null?r:{});e.push(s.effect);let a={ref:s.ref,action:s.action,dispatched:s.dispatched,settled:s.settled,settleReason:s.settleReason};s.testid!==void 0&&(a.testid=s.testid),s.component!==void 0&&(a.component=s.component),s.role!==void 0&&(a.role=s.role),s.name!==void 0&&(a.name=s.name),s.source!==void 0&&(a.source=s.source),s.secret!==void 0&&(a.secret=s.secret),s.warning!==void 0&&(a.warning=s.warning),n.push(a)}return{ok:!0,count:t.length,effects:e,steps:n}}mt();Hd();var WN="data-theme";function QU(t){return"cssRules"in t&&t.cssRules instanceof CSSRuleList}function XN(t,e,n){if(!(n<=0))for(let r of Array.from(t))if(r instanceof CSSStyleRule)for(let o of Array.from(r.style))o.startsWith("--")&&e.add(o);else QU(r)&&XN(r.cssRules,e,n-1)}function JU(){let t=new Set;for(let e of Array.from(document.styleSheets)){let n=null;try{n=e.cssRules}catch{continue}n!==null&&XN(n,t,8)}return t}function eF(){var o;let t=new Map,e=(o=document.body)!=null?o:document.documentElement;if(e===null)return t;let n=getComputedStyle(e),r=document.createElement("span");r.style.position="absolute",r.style.pointerEvents="none",document.body.appendChild(r);try{for(let s of JU()){let a=tF(r,n.getPropertyValue(s).trim());if(a===null)continue;let l=t.get(a);l===void 0?t.set(a,[s]):l.push(s)}}finally{r.remove()}for(let s of t.values())s.sort();return t}function tF(t,e){return e.length===0||(t.style.color="",t.style.color=e,t.style.color==="")?null:getComputedStyle(t).color}function zN(t){return t==="rgba(0, 0, 0, 0)"||t==="transparent"}function nF(){let t=document.documentElement;if(t===null)return null;let e=Array.from(t.classList).map(o=>`.${o}`).join(""),n=t.getAttribute(WN),r=`${e}${n===null?"":`[${WN}="${n}"]`}`;return r.length===0?null:r}function YN(t){var e;return t.length===1&&(e=t[0])!=null?e:null}function qN(t){var l,d;let e=eF(),n=(l=e.get(t.color))!=null?l:[],r=(d=e.get(t.backgroundColor))!=null?d:[],o=!zN(t.color)&&n.length===0,s=!zN(t.backgroundColor)&&r.length===0,a=0;for(let u of e.values())a+=u.length;return{colorToken:YN(n),colorTokens:n,backgroundToken:YN(r),backgroundTokens:r,offTheme:a>0&&(o||s),tokenCount:a,themeScope:nF()}}lt();Rn();D();pr();Kr();function ou(t){try{return t()}catch{return null}}function oh(t){var n;let e={};if(t===null)return e;for(let r=0;r<t.length;r+=1){let o=t.key(r);if(o===null)continue;let s=(n=t.getItem(o))!=null?n:"";e[o]=it(o)?ye:Fr(s)}return e}function ZN(){let t={},e="";try{e=typeof document!="undefined"?document.cookie:""}catch{return t}for(let n of e.split(";")){let r=n.indexOf("=");if(r===-1)continue;let o=n.slice(0,r).trim();if(o==="")continue;if(it(o)){t[o]=ye;continue}let s="";try{s=decodeURIComponent(n.slice(r+1).trim())}catch{s=n.slice(r+1).trim()}t[o]=Fr(s)}return t}function QN(t){return t===Ls.LOCAL?oh(ou(()=>window.localStorage)):t===Ls.SESSION?oh(ou(()=>window.sessionStorage)):Ls.COOKIE===t?ZN():{local:oh(ou(()=>window.localStorage)),session:oh(ou(()=>window.sessionStorage)),cookies:ZN()}}function Us(t,e){if(e!==null)return it(t)?ye:Fr(e)}function JN(t){var p,h,m;if(typeof Storage=="undefined")return()=>{};let e=Storage.prototype,n=(p=Object.getOwnPropertyDescriptor(e,"setItem"))==null?void 0:p.value,r=(h=Object.getOwnPropertyDescriptor(e,"removeItem"))==null?void 0:h.value,o=(m=Object.getOwnPropertyDescriptor(e,"clear"))==null?void 0:m.value;if(n===void 0||r===void 0||o===void 0)return()=>{};let s=g=>g===ou(()=>window.sessionStorage)?Ls.SESSION:Ls.LOCAL,a=(g,T)=>{try{return g.getItem(T)}catch{return null}},l=function(g,T){var A;let _=(A=Mt(()=>a(this,g)))!=null?A:null;n.call(this,g,T),_!==T&&(Sf(g)||Z(()=>{var N;t(x.STORAGE_CHANGE,{area:s(this),key:g,...Us(g,_)===void 0?{}:{old:Us(g,_)},new:(N=Us(g,T))!=null?N:ye})}))};e.setItem=l;let d=function(g){var _;let T=(_=Mt(()=>a(this,g)))!=null?_:null;r.call(this,g),!Sf(g)&&Z(()=>{t(x.STORAGE_CHANGE,{area:s(this),key:g,...Us(g,T)===void 0?{}:{old:Us(g,T)}})})};e.removeItem=d;let u=function(){let g=s(this),T=[];try{for(let _=0;_<this.length;_+=1){let A=this.key(_);A!==null&&!Sf(A)&&T.push({key:A,old:a(this,A)})}}catch{}o.call(this);for(let{key:_,old:A}of T)Z(()=>{t(x.STORAGE_CHANGE,{area:g,key:_,...Us(_,A)===void 0?{}:{old:Us(_,A)}})})};return e.clear=u,()=>{e.setItem===l&&(e.setItem=n),e.removeItem===d&&(e.removeItem=r),e.clear===u&&(e.clear=o)}}D();lt();dt();var _c=16,rF=500,oF=4,iF=2166136261,sF=16777619,aF=8;function cF(t){var s,a;let e=iF,n=[0,0,0],r=Math.max(1,t.length/4);for(let l=0;l<t.length;l+=4)for(let d=0;d<3;d+=1){let u=(s=t[l+d])!=null?s:0;n[d]=((a=n[d])!=null?a:0)+u,e=Math.imul(e^Math.floor(u/aF),sF)>>>0}let o=n.map(l=>Math.round(l/r));return{digest:e.toString(16).padStart(8,"0"),mean:o}}function lF(t){if(t.width===0||t.height===0)return;let e=document.createElement("canvas");e.width=_c,e.height=_c;let n=e.getContext("2d");if(n===null)return;let r=Mt(()=>(n.drawImage(t,0,0,_c,_c),n.getImageData(0,0,_c,_c).data));return r===void 0?void 0:{data:r,width:t.width,height:t.height}}var xc;function Eb(){xc==null||xc(xs.ACT)}function ew(t,e={}){var l,d;let n=(l=e.sample)!=null?l:lF,r=(d=e.every)!=null?d:zf,o=new WeakMap,s=u=>{Z(()=>{let p=Array.from(document.querySelectorAll("canvas")).slice(0,oF);for(let h of p){let m=n(h);if(m===void 0)continue;let{digest:g,mean:T}=cF(m.data);xs.POLL===u&&o.get(h)===g||(o.set(h,g),t(x.CANVAS_DIGEST,{digest:g,width:m.width,height:m.height,mean:T,trigger:u},X.refFor(h)))}})};xc=s;let a=r(()=>s(xs.POLL),rF);return()=>{a(),xc===s&&(xc=void 0)}}D();dt();Ye();var dF=Xa.FULL_PAGE_UNSUPPORTED,uF=[dF,Xa.NOT_COMPOSITED],pF="__TAURI_INTERNALS__";function fF(){let t=window[pF];if(typeof(t==null?void 0:t.invoke)!="function")return;let e=t.invoke.bind(t);return async n=>{let r=await e(df,{fullPage:n===!0});return typeof r=="string"?r:null}}async function hF(t){let e=[...document.querySelectorAll(Ei)],n=e.map(r=>r.style.visibility);for(let r of e)r.style.visibility="hidden";try{return e.length>0&&(await Ri(),await Ri()),await t()}finally{e.forEach((r,o)=>{var s;r.style.visibility=(s=n[o])!=null?s:""})}}async function tw(t=!1){let e=window[Ro],n=typeof(e==null?void 0:e.capture)=="function"?e.capture:fF();if(n===void 0)return{ok:!1,reason:"no desktop capture helper installed"};try{let r=await hF(()=>n(t));return typeof r=="string"&&r.length>0?{ok:!0,path:r}:{ok:!1,reason:"capture returned no image"}}catch(r){let o=r instanceof Error?r.message:String(r);for(let s of uF)if(o.includes(s))return{ok:!1,reason:s};return{ok:!1,reason:o}}}ko();$s();pr();vi();function mF(t,e){var n;return(n=Object.getOwnPropertyDescriptor(t,e))==null?void 0:n.value}function mr(t,e){let n=mF(t,e);if(n===void 0)throw new Error(`[Reticle] cannot patch ${String(e)}: it is not an own property of the target`);return n}wo();var gF=12e4,yc=!1,Mo=0,nw=0,rw=1,Po=[],Ac=null,Fs,ih={};function ow(){if(Ac===null)return;let t=Ac,e=t.clearTimeout.bind(window);Fs!==void 0&&e(Fs),Fs=t.setTimeout.bind(window)(()=>{Fs=void 0,vc()},gF)}function iw(){return yc}function sw(){if(yc||typeof window=="undefined")return;yc=!0,Mo=0,nw=Date.now(),Ac={setTimeout:mr(window,"setTimeout"),clearTimeout:mr(window,"clearTimeout"),setInterval:mr(window,"setInterval"),clearInterval:mr(window,"clearInterval"),dateNow:mr(Date,"now")};let t=(r,o,s)=>{let a=rw;return rw+=1,Po.push({id:a,time:Mo+Math.max(0,o),cb:r,interval:s}),a},e=r=>{Po=Po.filter(o=>o.id!==r)},n=(r,o)=>()=>{r(...o)};window.setTimeout=((r,o=0,...s)=>t(n(r,s),o)),window.clearTimeout=(r=>e(r)),window.setInterval=((r,o=0,...s)=>t(n(r,s),o,Math.max(1,o))),window.clearInterval=(r=>e(r)),ih={setTimeout:ve(window,"setTimeout"),clearTimeout:ve(window,"clearTimeout"),setInterval:ve(window,"setInterval"),clearInterval:ve(window,"clearInterval")},Date.now=()=>nw+Mo,ih.dateNow=ve(Date,"now"),ow()}function aw(t){if(!yc)return;let e=Mo+Math.max(0,t),n=0;for(;n+=1,!(n>1e5);){let o=Po.filter(s=>s.time<=e).sort((s,a)=>s.time-a.time)[0];if(o===void 0)break;Po=Po.filter(s=>s!==o),Mo=o.time,o.cb(),o.interval!==void 0&&Po.push({...o,time:Mo+o.interval})}Mo=e,ow()}function vc(){if(!yc||Ac===null)return;let t=Ac,e=Po;Fs!==void 0&&(t.clearTimeout.bind(window)(Fs),Fs=void 0);let n=ih;ih={},window.setTimeout===n.setTimeout&&(window.setTimeout=t.setTimeout),window.clearTimeout===n.clearTimeout&&(window.clearTimeout=t.clearTimeout),window.setInterval===n.setInterval&&(window.setInterval=t.setInterval),window.clearInterval===n.clearInterval&&(window.clearInterval=t.clearInterval),Date.now===n.dateNow&&(Date.now=t.dateNow);let r=Mo;if(Ac=null,Po=[],yc=!1,Mo=0,e.length===0)return;let o=t.setTimeout.bind(window),s=t.setInterval.bind(window),a=new Map,l={},d=u=>{a.delete(u),a.size===0&&l.current!==void 0&&bF(t,l.current)};for(let u of e)u.interval!==void 0?a.set(u.id,s(u.cb,u.interval)):a.set(u.id,o(()=>{d(u.id),u.cb()},Math.max(0,u.time-r)));l.current=EF(a,t,d)}function EF(t,e,n){let r=o=>{let s=o.bind(window);return(a=>{let l=t.get(a);if(l===void 0){s(a);return}s(l),n(a)})};return window.clearTimeout=r(e.clearTimeout),window.clearInterval=r(e.clearInterval),{clearTimeout:ve(window,"clearTimeout"),clearInterval:ve(window,"clearInterval")}}function bF(t,e){window.clearTimeout===e.clearTimeout&&(window.clearTimeout=t.clearTimeout),window.clearInterval===e.clearInterval&&(window.clearInterval=t.clearInterval)}var sh="_reticle_reload";function Fe(t){return typeof t=="string"?t:void 0}function mw(t){return typeof t=="number"?t:void 0}function fw(t){return typeof t=="object"&&t!==null?t:{}}function DF(t){if(typeof t!="object"||t===null)return;let e=t;if(!(typeof e.file!="string"||typeof e.line!="number"))return{file:e.file,line:e.line,column:mw(e.column)}}function MF(t){return{by:Fe(t.by),value:Fe(t.value),role:Fe(t.role),name:Fe(t.name),text:Fe(t.text),label:Fe(t.label),placeholder:Fe(t.placeholder),testid:Fe(t.testid),alt:Fe(t.alt),component:Fe(t.component),scope:Fe(t.scope),self:t.self===!0?!0:void 0,attrs:Array.isArray(t.attrs)?t.attrs.filter(e=>typeof e=="string"):void 0,source:DF(t.source)}}function PF(t,e=!1){var g,T,_,A,N,y,v;let n=X.resolve(t);if(n===null)throw new Error(Gd.staleRefMessage(t));let r=e&&typeof n.scrollIntoView=="function"&&eu(n,n.getBoundingClientRect());r&&n.scrollIntoView({block:"center",inline:"center"});let o=n.getBoundingClientRect(),s=Wn(n),a=n.ownerDocument.defaultView,l=a!==null?a.getComputedStyle(n):null,d=l!==null?{color:l.color,backgroundColor:l.backgroundColor,opacity:l.opacity,cursor:l.cursor,display:l.display,visibility:l.visibility}:null,u=yf(Af(n,s==null?void 0:s.source)),p=u!==void 0?void 0:Tv(n.ownerDocument)?"This element has no source stamp. Others on the page do, so the stamping loader is running \u2014 the nearest stamped ancestor is out of range, or this element is rendered outside instrumented code.":"No element in this document carries a source stamp, so the stamping loader is not running: an older adapter, a bundler whose hook never ran, or a build the plugin was dropped from. Add @reticlehq/vite-plugin (or @reticlehq/babel-plugin) to the dev build and restart the dev server to get `file:line` back.",h={scrollTop:n.scrollTop,scrollHeight:n.scrollHeight,clientHeight:n.clientHeight,overflowY:(g=l==null?void 0:l.overflowY)!=null?g:"visible",scrollLeft:n.scrollLeft,scrollWidth:n.scrollWidth,clientWidth:n.clientWidth,overflowX:(T=l==null?void 0:l.overflowX)!=null?T:"visible"},m=hv(n);return{...Yr(n),...u!==void 0?{source:u}:{},...m.length>0?{paintContext:m}:{},...p!==void 0?{sourceUnavailable:p}:{},tag:n.tagName.toLowerCase(),href:(_=n.getAttribute("href"))!=null?_:void 0,formAction:(wd(n)||Ie(n))&&(N=(A=n.form)==null?void 0:A.getAttribute("action"))!=null?N:void 0,formText:(wd(n)||Ie(n))&&(v=(y=n.form)==null?void 0:y.textContent)!=null?v:void 0,box:{x:o.x,y:o.y,width:o.width,height:o.height},...r?{scrolledIntoView:!0}:{},...e?{[w_]:!eu(n,o)}:{},occluded:$F(n,o),styles:d,scroll:h,theme:l!==null?qN(l):null,component:s}}function $F(t,e){return th(t,e)!==null}function HF(t){return typeof t=="object"&&t!==null&&"ok"in t&&typeof t.ok=="boolean"}var hw={ok:!1,reason:L_.UNAVAILABLE};function UF(t,e,n,r){let o=Ai();if(n!==void 0||r!==void 0){let d=KE(e);if(e!==void 0&&!Object.hasOwn(d,e))return{store:e,path:n,found:!1,value:null,storeNames:o};let u=e!==void 0?d[e]:{stores:d,storeNames:o},p=n!==void 0?XA(u,n):{found:!0,value:u},h=p.found&&r!==void 0?sc(p.value,r):p.value,m=Pd(h);return{store:e,path:n,found:p.found,value:m.value,...m.truncation===void 0?{}:{truncation:m.truncation},..."availableKeys"in p?{availableKeys:p.availableKeys}:{},..."totalKeys"in p?{totalKeys:p.totalKeys}:{},storeNames:o}}let{stores:s,truncation:a}=Kd(e),l={stores:s,storeNames:o};if(a!==void 0&&(l.truncation=a),t!==void 0&&t.length>0){let d=X.resolve(t);if(d===null)l.component=hw;else{let u=Nf(d);l.component=HF(u)?u:hw}}return l}function FF(){let t=document;return typeof t.getAnimations!="function"?{animations:[]}:{animations:t.getAnimations().map(n=>{var a;let r=n.effect,o=r==null?void 0:r.getTiming(),s=(a=r==null?void 0:r.target)!=null?a:null;return{playState:n.playState,currentTime:n.currentTime,duration:o==null?void 0:o.duration,target:s===null?null:Yr(s)}})}}function GF(t,e){if(t.length===0||t.length>G.MAX_URL_LENGTH)return null;try{let n=new URL(t,e);return n.protocol==="http:"||n.protocol==="https:"?n.toString():null}catch{return null}}function gw(){let t=new Map;return t.set(k.SNAPSHOT,e=>{var n;return Lf({scope:Fe(e.scope),mode:(n=Fe(e.mode))!=null?n:Za.FULL,includeRoot:e.includeRoot===!0,ids:e.ids===!0,audit:e.audit===!0})}),t.set(k.QUERY,e=>{let n=e.limit;return Vf(MF(e),typeof n=="number"?n:void 0)}),t.set(k.MATCH,e=>Yd(dd.parse(fw(e.query)),Fe(e.state),void 0,void 0,e.diagnose===!0)),t.set(k.ACT,async e=>{var o,s;let n=(o=Fe(e.action))!=null?o:"",r=await ru((s=Fe(e.ref))!=null?s:"",n,fw(e.args));return Eb(),r}),t.set(k.ACT_SEQUENCE,async e=>{let n=await rh(Array.isArray(e.steps)?e.steps:[]);return Eb(),n}),t.set(k.INSPECT,e=>{var n;return PF((n=Fe(e.ref))!=null?n:"",e[N_]===!0)}),t.set(k.ANIMATIONS,()=>FF()),t.set(k.CLOCK,e=>{if(e.reset===!0)vc();else{e.freeze===!0&&sw();let n=e.advanceMs;typeof n=="number"&&aw(n)}return{frozen:iw()}}),t.set(k.STATE_READ,e=>UF(Fe(e.ref),Fe(e.store),Fe(e.path),mw(e.depth))),t.set(k.STORAGE_READ,e=>QN(Fe(e.area))),t.set(k.CAPABILITIES,()=>yi()),t.set(k.CAPTURE,e=>tw(e.fullPage===!0)),t.set(k.RENDER,()=>Promise.resolve().then(()=>(pw(),uw)).then(e=>e.renderPage())),t.set(k.SCROLL,e=>{let n=e.dy,r=e.fraction;return HN(Fe(e.ref),typeof n=="number"?n:void 0,typeof r=="number"?r:void 0)}),t.set(k.NAVIGATE,e=>{let n=Fe(e.url);if(n===void 0||n.length===0)return{ok:!1,reason:"url required"};let r=GF(n,window.location.href);return r===null?{ok:!1,reason:"only http(s) navigation is allowed"}:(window.location.assign(r),{ok:!0,url:r})}),t.set(k.REFRESH,e=>{if(e.hard===!0){let n=new URL(window.location.href);n.searchParams.set(sh,String(Date.now())),window.location.replace(n.toString())}else window.location.reload();return{ok:!0}}),t}D();dt();jd();pr();function BF(t){if(typeof document=="undefined")return()=>{};let e=()=>{document.visibilityState==="visible"&&t()};return document.addEventListener("visibilitychange",e),()=>document.removeEventListener("visibilitychange",e)}var ah=1e3,VF=3e4;function jF(t){return Math.min(t*2,VF)}var KF=500,WF=1008,zF=3,$t,$o,Oi,lh,Xr,Ii,Nc,wc,Ci,Oc,su,Ic,au,Cc,Gs,Lc,kc,Qt,cu,Re,Ew,Rc,bb,bw,Tb,Sb,Tw,iu,Sw,ch=class{constructor(e){b(this,Re);b(this,$t);b(this,$o,[]);b(this,Oi,[]);b(this,lh,0);b(this,Xr,!1);b(this,Ii,!1);b(this,Nc,!1);b(this,wc);b(this,Ci,ah);b(this,Oc,!1);b(this,su,!1);b(this,Ic,0);b(this,au,!1);b(this,Cc,0);b(this,Gs);b(this,Lc);b(this,kc);b(this,Qt);b(this,cu);var n;f(this,Qt,e),f(this,cu,(n=e.now)!=null?n:Wf)}connect(){var e,n;typeof WebSocket!="undefined"&&(f(this,Xr,!1),(n=c(this,kc))!=null||f(this,kc,((e=c(this,Qt).onVisible)!=null?e:BF)(()=>E(this,Re,Ew).call(this))),E(this,Re,Rc).call(this))}sendEvent(e){E(this,Re,iu).call(this,Wr({kind:Kt.EVENT,event:e}),{seq:e.seq,t:e.t,type:e.type})}redialAfterRefusal(){if(!c(this,Xr)){if(c(this,Ii)&&c(this,$t)===void 0){f(this,Ii,!1),f(this,Ci,ah),E(this,Re,Rc).call(this);return}f(this,Nc,!0)}}reannounce(){c(this,$t)===void 0||c(this,$t).readyState!==WebSocket.OPEN||c(this,$t).send(JSON.stringify(c(this,Qt).hello()))}close(){var e,n;f(this,Xr,!0),(e=c(this,kc))==null||e.call(this),f(this,kc,void 0),(n=c(this,$t))==null||n.close(),f(this,$t,void 0)}};$t=new WeakMap,$o=new WeakMap,Oi=new WeakMap,lh=new WeakMap,Xr=new WeakMap,Ii=new WeakMap,Nc=new WeakMap,wc=new WeakMap,Ci=new WeakMap,Oc=new WeakMap,su=new WeakMap,Ic=new WeakMap,au=new WeakMap,Cc=new WeakMap,Gs=new WeakMap,Lc=new WeakMap,kc=new WeakMap,Qt=new WeakMap,cu=new WeakMap,Re=new WeakSet,Ew=function(){c(this,Xr)||(f(this,Ci,ah),c(this,$t)===void 0&&(f(this,Ii,!1),E(this,Re,Rc).call(this)))},Rc=function(){let e;try{e=new WebSocket(c(this,Qt).url)}catch{E(this,Re,Sb).call(this),E(this,Re,Tb).call(this),E(this,Re,bb).call(this);return}f(this,$t,e),e.onopen=()=>{var o,s,a;f(this,wc,void 0),f(this,Oc,!1),f(this,su,!0),f(this,Ci,ah);let n=c(this,Qt).hello();(o=c(this,Lc))!=null||f(this,Lc,n.sessionId),e.send(JSON.stringify(n)),E(this,Re,Sw).call(this,e,n.sessionId);let r=[...c(this,$o),...c(this,Oi)].sort((l,d)=>l.order-d.order);for(let l of r)e.send(l.text);f(this,$o,[]),f(this,Oi,[]),(a=(s=c(this,Qt)).onConnected)==null||a.call(s)},e.onmessage=n=>{let r=n.data;E(this,Re,Tw).call(this,typeof r=="string"?r:String(r))},e.onclose=n=>{var r,o;if(f(this,$t,void 0),n.code===WF){if(c(this,Nc)&&!c(this,Xr)){f(this,Nc,!1),E(this,Re,Rc).call(this);return}f(this,Ii,!0);let s=n.reason.length>0?n.reason:"policy violation";fr(`[reticle] bridge refused the connection: ${s} \u2014 not retrying until you come back to this tab.`),(o=(r=c(this,Qt)).onConnectionLost)==null||o.call(r);return}E(this,Re,Sb).call(this),E(this,Re,Tb).call(this),E(this,Re,bb).call(this)},e.onerror=()=>{e.close()}},bb=function(){var r;if(c(this,Xr)||c(this,Ii))return;let e=c(this,Ci);f(this,Ci,jF(e)),((r=c(this,Qt).schedule)!=null?r:oe)(()=>E(this,Re,bw).call(this),e)},bw=function(){c(this,Xr)||c(this,$t)!==void 0||E(this,Re,Rc).call(this)},Tb=function(){var e,n;c(this,su)||c(this,au)||(f(this,Ic,c(this,Ic)+1),c(this,Ic)>=zF&&(f(this,au,!0),(n=(e=c(this,Qt)).onUnreachable)==null||n.call(e,{url:c(this,Qt).url,attempts:c(this,Ic)})))},Sb=function(){var n,r,o;let e=c(this,cu).call(this);(n=c(this,wc))!=null||f(this,wc,e),!c(this,Oc)&&e-c(this,wc)>=Bx.BRIDGE_LOST_MS&&(f(this,Oc,!0),(o=(r=c(this,Qt)).onConnectionLost)==null||o.call(r))},Tw=async function(e){var a;let n;try{n=JSON.parse(e)}catch{return}let r=Qg.safeParse(n);if(!r.success){let l=n==null?void 0:n.id;typeof l=="string"&&l.length>0&&E(this,Re,iu).call(this,Wr({kind:Kt.COMMAND_RESULT,id:l,ok:!1,error:"this page could not parse the command \u2014 the @reticlehq/browser SDK and the daemon are probably different versions. Nothing ran."}));return}let o=r.data;if(o.sessionId!==void 0&&o.sessionId!==c(this,Lc)){E(this,Re,iu).call(this,Wr({kind:Kt.COMMAND_RESULT,id:o.id,ok:!1,error:`command addressed to session ${o.sessionId} but this page is ${(a=c(this,Lc))!=null?a:"(none)"} \u2014 the page reconnected under a new id, or two sessions share a socket. Nothing ran.`}));return}let s;try{s=await c(this,Qt).handleCommand(o)}catch(l){s={ok:!1,error:l instanceof Error?l.message:String(l)}}E(this,Re,iu).call(this,Wr({kind:Kt.COMMAND_RESULT,id:o.id,ok:s.ok,result:s.result,error:s.error}))},iu=function(e,n){if(c(this,$t)!==void 0&&c(this,$t).readyState===WebSocket.OPEN){c(this,$t).send(e);return}if(c(this,$o).length+c(this,Oi).length>=KF){let s=c(this,$o).length>0?c(this,$o).shift():c(this,Oi).shift();if((s==null?void 0:s.event)!==void 0){f(this,Cc,c(this,Cc)+1);let a=c(this,Gs);(a===void 0||s.event.t<a.t)&&f(this,Gs,s.event)}}let r=n!==void 0&&Cx.has(n.type),o=e_(this,lh)._++;r?c(this,$o).push({text:e,event:n,order:o}):c(this,Oi).push({text:e,event:n,order:o})},Sw=function(e,n){let r=c(this,Gs);if(r===void 0)return;let o={t:r.t,seq:r.seq,type:x.TRANSPORT_OVERFLOW,sessionId:n,data:{dropped:c(this,Cc)}};e.send(Wr({kind:Kt.EVENT,event:o})),f(this,Gs,void 0),f(this,Cc,0)};_b();ko();D();$s();function xw(){let t=[R.UI,R.NET,R.LOG,R.ROUTE,R.STORAGE,R.TIME,R.SIGNAL];return Ai().length>0?[...t,R.STATE]:t}D();var YF="__TAURI_INTERNALS__";function Aw(){if(typeof window=="undefined")return Gr.SERVICE;let t=window;return t[Ro]!==void 0||t[YF]!==void 0?Gr.WEBVIEW:Gr.WEB}var XF=[k.SNAPSHOT,k.QUERY,k.MATCH,k.INSPECT,k.ACT,k.ACT_SEQUENCE,k.ANIMATIONS,k.NARRATE,k.CLOCK,k.CAPABILITIES,k.STATE_READ,k.STORAGE_READ,k.SCROLL,k.SESSION_CONFIG,k.PRESENTER,k.IMPACT,k.CAPTURE,k.RENDER,k.NAVIGATE,k.REFRESH,k.FLOWS,k.FLOW_PROGRESS,k.PLAN,k.MARKERS];function yw(){return[...XF]}vi();xt();D();mt();lt();Ye();Oo();Rn();function qF(t){var e,n;try{return(n=(e=t.contentDocument)==null?void 0:e.body)!=null?n:null}catch{return null}}function xb(t){let e=[],n=(r,o)=>{if(!(o>=3))for(let s of r.querySelectorAll("iframe")){let a=qF(s);a!==null&&(e.push(a),n(a,o+1))}};return n(t,0),e}function vw(t){let e=new AbortController,n=()=>{for(let o of xb(document))t(o)};n();let r=o=>{o.target instanceof HTMLIFrameElement&&n()};return document.addEventListener("load",r,{capture:!0,signal:e.signal}),()=>e.abort()}function Rw(t){var r;let e=pn(t)?t:null;if(e===null)return;let n=e.closest(Kn());return(r=n?Te(n):null)!=null?r:X.refFor(e)}var ZF=["class","hidden","disabled","open","aria-hidden","aria-expanded","aria-selected","aria-checked","data-state","style","src","href","value"],Nw=120;function uh(t){if(t!==null)return t.length>Nw?`${t.slice(0,Nw)}\u2026`:t}var QF=new Set(["dialog","alertdialog"]),JF=new Set(["alert","status"]),lu=40;function ww(t,e){return t!=="generic"||e.length>0}var eG=40;function Ow(t){let e=Ne(t),n=Se(t);if(ww(e,n))return{role:e,name:n,el:t};let r=0;for(let o of t.querySelectorAll("*")){if(r>=eG)return;if(r+=1,bi(o))continue;let s=Ne(o),a=Se(o);if(ww(s,a))return{role:s,name:a,el:o}}}var tG=3;function Ab(t){var r;let e="";for(let o of t)o.nodeType===tG&&(e+=(r=o.nodeValue)!=null?r:"");let n=e.trim();return n.length>0?n:void 0}var nG=new Set(["class","style","type","disabled","readonly","required","hidden"]);function rG(t,e){return!nG.has(e)&&!e.startsWith("aria-")&&Zt(t)}var oG=3,iG=50;function sG(t){let e=t;for(let n=0;e!==null&&n<=oG;n+=1){let r=Te(e);if(r!==null&&r.length>0)return r;e=e.parentElement}}var Iw=t=>{let e=sG(t);return e===void 0?{}:{testid:e}};function Cw(t){let e=Vy(),n=new MutationObserver(a=>{var m,g,T,_,A,N,y;let l=0,d=0,u=0,p=0,h=0;for(let v of a){if(v.type==="attributes"){let O=v.target;if(pn(O)&&v.attributeName!==null&&!bi(O)){if(u>=lu){h+=1;continue}u+=1;let j=rG(O,v.attributeName),Y=j?ye:uh(O.getAttribute(v.attributeName)),te=j&&v.oldValue!==null?ye:uh(v.oldValue);t(x.DOM_ATTR,{attr:v.attributeName,...Y===void 0?{}:{value:Y},...te===void 0?{}:{old:te}},X.refFor(O))}continue}if(v.type==="characterData"){let O=v.target.parentElement;if(O!==null&&!bi(O)){if(u>=lu){h+=1;continue}u+=1;let j=Zt(O),Y=j?ye:((m=v.target.textContent)!=null?m:"").trim().slice(0,80),te=j?void 0:uh((T=(g=v.oldValue)==null?void 0:g.trim())!=null?T:null);t(x.DOM_TEXT,{text:Y,...te===void 0?{}:{old:te},...Iw(O)},X.refFor(O))}continue}if(Ab(v.addedNodes)!==void 0||Ab(v.removedNodes)!==void 0){let O=pn(v.target)?v.target:null;if(O!==null&&!bi(O))if(u>=lu)h+=1;else{u+=1;let j=Zt(O),Y=j?ye:((_=O.textContent)!=null?_:"").trim().slice(0,80),te=j?void 0:uh((A=Ab(v.removedNodes))!=null?A:null);t(x.DOM_TEXT,{text:Y,...te===void 0?{}:{old:te},...Iw(O)},X.refFor(O))}}for(let O of v.addedNodes){if(!pn(O))continue;if(l>=lu){h+=1;continue}if(bi(O))continue;let j=[O,...Array.from(O.querySelectorAll(Kn()))].filter(Ae=>Te(Ae)!==null);for(let Ae of j){let rt=((N=Ae.textContent)!=null?N:"").trim();if(rt.length===0)continue;if(p>=iG){h+=1;continue}p+=1;let Ot=Zt(Ae)?ye:rt.slice(0,80);t(x.DOM_TEXT,{text:Ot,testid:(y=Te(Ae))!=null?y:"",initial:!0},X.refFor(Ae))}let Y=Ow(O);if(Y===void 0)continue;let{role:te,name:Ce}=Y;l+=1;let je=X.refFor(Y.el);t(x.DOM_ADDED,{role:te,name:Ce,region:Rw(v.target)},je),(QF.has(te)||JF.has(te)||O.getAttribute("aria-modal")==="true")&&Pt(O)&&t(x.VISIBLE_SHOWN,{role:te,name:Ce},je)}for(let O of v.removedNodes){if(!pn(O))continue;if(d>=lu){h+=1;continue}if(bi(O)||pn(v.target)&&bi(v.target))continue;let j=Ow(O);if(j===void 0)continue;let{role:Y,name:te}=j;d+=1,t(x.DOM_REMOVED,{role:Y,name:te,region:Rw(v.target)})}}h>0&&t(x.TRUNCATED,{channel:Bp.DOM,dropped:h})}),r={subtree:!0,childList:!0,attributes:!0,attributeFilter:ZF,attributeOldValue:!0,characterData:!0,characterDataOldValue:!0};n.observe(document.documentElement,r);for(let a of Fy())n.observe(a,r);let o=By(a=>n.observe(a,r)),s=vw(a=>n.observe(a,r));return()=>{s(),o(),e(),n.disconnect()}}D();$s();pr();function Lw(t){return typeof t=="object"&&t!==null&&!Array.isArray(t)}function aG(t,e){if(!Lw(t)||!Lw(e))return Object.is(t,e)?[]:[{path:"",old:t,new:e}];let n=[];for(let r of new Set([...Object.keys(t),...Object.keys(e)]))Object.is(t[r],e[r])||n.push({path:r,old:t[r],new:e[r]});return n}function kw(t,e){return it(t)?ye:Md(e)}function Dw(t,e){if(Object.is(t,e))return!0;try{return JSON.stringify(t)===JSON.stringify(e)}catch{return!1}}function Mw(t){try{return t()}catch{return}}function Pw(t){let e=new Map,n=([o,s,a])=>{var d;try{(d=e.get(o))==null||d()}catch{}let l=Mw(s);e.set(o,a(()=>{Z(()=>{let u=Mw(s),p=aG(l,u);l=u;for(let h of p){let m=kw(h.path,h.new),g=kw(h.path,h.old);(it(h.path)?Dw(Md(h.old),Md(h.new)):Dw(g,m))||Z(()=>t(x.STATE_CHANGE,{name:o,path:h.path,value:m,old:g}))}})}))};for(let o of yR())n(o);e.size===0&&t(x.BLIND_SPOT,{kind:Yt.UNWATCHED_STATE,count:1});let r=_R(o=>{let s=e.size===0;n(o),s&&e.size>0&&t(x.BLIND_SPOT,{kind:Yt.UNWATCHED_STATE,count:0})});return()=>{r();for(let o of e.values())try{o()}catch{}e.clear()}}D();mt();function Dc(t){if(!(t instanceof Element)||t===document.body)return;let e=Ne(t),n=Se(t);return n.length>0?`${e} "${n}"`:e}function cG(t){return t===null||t===document.body}function $w(t){let e=new AbortController,{signal:n}=e,r=null,o=a=>{let l=a.target,d=r;r=l,t(x.FOCUS_CHANGE,{...Dc(l)===void 0?{}:{to:Dc(l)},...Dc(d)===void 0?{}:{from:Dc(d)},toBody:cG(l)})},s=a=>{if(a.relatedTarget!==null)return;let l=r;r=null,t(x.FOCUS_CHANGE,{...Dc(l)===void 0?{}:{from:Dc(l)},toBody:!0})};return document.addEventListener("focusin",o,{signal:n}),document.addEventListener("focusout",s,{signal:n}),()=>e.abort()}D();function lG(t){let e=t;for(let n=0;n<3;n+=1){let r=Array.from(e.children).filter(s=>s instanceof HTMLElement),o=r.length===1?r[0]:void 0;if(o===void 0||o.offsetHeight<e.scrollHeight*.9)return e;e=o}return e}function dG(t){let e=t.scrollHeight,n=t.clientHeight;if(n<=0||e<n*1.2)return 0;let r=lG(t),o=Array.from(r.children).filter(m=>m instanceof HTMLElement);if(o.length<2)return 0;let s=1/0,a=0,l=0,d=t.getBoundingClientRect(),u=t.offsetHeight>0&&d.height>0?d.height/t.offsetHeight:1;for(let m of o){let g=(m.getBoundingClientRect().top-d.top)/u-t.clientTop+t.scrollTop,T=g+m.offsetHeight;g<s&&(s=g),T>a&&(a=T),l+=m.offsetHeight}let p=Math.max(0,s)+Math.max(0,e-a);if(p<e*.25)return 0;let h=l/o.length;return h<=0?0:Math.round(p/h)}function Hw(){let t=0;for(let e of document.querySelectorAll("*"))e.scrollHeight<=e.clientHeight||(t+=dG(e));return t}Oo();dt();function uG(){var e;let t=0;for(let n of document.querySelectorAll("*"))n.tagName.includes("-")&&n.shadowRoot===null&&(Gy(n)||n.children.length>0||((e=n.textContent)!=null?e:"").trim().length>0||n.offsetHeight<=0&&n.offsetWidth<=0||(t+=1));return t}function pG(t){let e=t.getAttribute("src");if(e===null||e.length===0)return!1;try{return t.contentDocument===null}catch{return!0}}function fG(t){let e=0;for(let n of t)pG(n)&&(e+=1);return e}function hG(){return fG(Array.from(document.querySelectorAll("iframe")))}function mG(){return xb(document).length}var gG=250;function Uw(t){let e=[{kind:Yt.CROSS_ORIGIN_IFRAME,count:hG},{kind:Yt.UNINSTRUMENTED_FRAME,count:mG},{kind:Yt.CLOSED_SHADOW_ROOT,count:uG},{kind:Yt.VIRTUALIZED_UNMOUNTED,count:Hw}],n=new Map,r=()=>{for(let a of e){let l=a.count(),d=n.get(a.kind);l!==d&&(n.set(a.kind,l),(l>0||d!==void 0)&&t(x.BLIND_SPOT,{kind:a.kind,count:l}))}};r();let o,s=new MutationObserver(()=>{o===void 0&&(o=oe(()=>{o=void 0,r()},gG))});return s.observe(document.documentElement,{childList:!0,subtree:!0}),()=>{o!==void 0&&_e(o),s.disconnect()}}D();wo();D();pr();dt();var EG=/application\/json|text\/|application\/xml|x-www-form-urlencoded|graphql/i,Bw=/event-stream|x-ndjson|application\/stream/i,bG=/event-stream/i;function Vw(t,e){return t!==null&&bG.test(t)?!1:e===null}var TG=500;async function jw(t){let e;try{return await Promise.race([t,new Promise(n=>{e=oe(()=>n(void 0),TG)})])}finally{e!==void 0&&_e(e)}}function yb(t){if(t!==null)return Bw.test(t)?pi.STREAMING:pi.NOT_TEXT}function ph(t){return t===null||Bw.test(t)?!1:EG.test(t)}var Kw=8192,SG=262144,_G=256,du=Kw;function Ww(t){Number.isFinite(t)&&(du=Math.min(SG,Math.max(_G,Math.floor(t))))}var xG=Kw*2;function AG(t){let e=du*2;return t?Math.min(e,xG):e}var yG=/\b(Bearer|Basic)\s+(?=[A-Za-z0-9._~+/=-]{16,})(?=[A-Za-z0-9._~+/=-]*[\d._~+/=-])[A-Za-z0-9._~+/=-]+/gi;function Fw(t){return t.replace(yG,(e,n)=>`${n} ${ye}`).replace(/([A-Za-z0-9_.-]+)(\s*[=:]\s*"?)([^&\s,;"}]+)/g,(e,n,r)=>it(n)?`${n}${r}${ye}`:e)}var Gw=4096;function vb(t,e){return e&&t>=400}function Rb(t,e){let n=Li(t,e);return n.body.length<=Gw?n:{body:n.body.slice(0,Gw),truncated:!0}}function Li(t,e){let n=e!==null&&/json|graphql/i.test(e),r=AG(!n),o=t.length>r,s=o?t.slice(0,r):t,a;if(n)try{a=Wr(JSON.parse(s))}catch{a=Fw(s)}else a=Fw(s);a=Fr(a);let l=o||a.length>du;return{body:a.length>du?a.slice(0,du):a,truncated:l}}var vG=/text\/|json|csv|xml|ndjson|javascript/i,RG=2e3;function zw(t,e={}){if(typeof URL.createObjectURL!="function")return()=>{};let n=new AbortController,r=URL.createObjectURL.bind(URL),o=new Map,s=ve(URL,"createObjectURL"),a=function(g){let T=r(g);return Z(()=>{if(typeof Blob!="undefined"&&g instanceof Blob){let _=vG.test(g.type)?g.text().catch(()=>{}):Promise.resolve(void 0);o.set(T,{type:g.type,size:g.size,text:_})}}),T};URL.createObjectURL=a;let l=(m,g)=>{let T=o.get(m);T!==void 0&&(o.delete(m),T.text.then(_=>{Z(()=>{d(T,g,_)})}))},d=(m,g,T)=>{let _={mimeType:m.type,bytes:m.size};if(g!==void 0&&g.length>0&&(_.filename=g),T!==void 0&&(_.lines=T.split(`
1770
+ `).filter(A=>A.length>0).length,e.capturePreview===!0)){let{body:A,truncated:N}=Li(T.slice(0,RG),m.type);_.preview=A,N&&(_.previewTruncated=!0)}t(x.DOWNLOAD,_)},u=m=>{Z(()=>{var _,A;let g=m.target,T=g instanceof Element?g.closest("a[download]"):null;T!==null&&l((_=T.getAttribute("href"))!=null?_:"",(A=T.getAttribute("download"))!=null?A:void 0)})};document.addEventListener("click",u,{capture:!0,signal:n.signal});let p=ve(HTMLAnchorElement.prototype,"click"),h=function(){let g=Mt(()=>{var T,_;return this.hasAttribute("download")?{href:(T=this.getAttribute("href"))!=null?T:"",name:(_=this.getAttribute("download"))!=null?_:void 0}:void 0});p.call(this),Z(()=>{g!==void 0&&l(g.href,g.name)})};return HTMLAnchorElement.prototype.click=h,()=>{n.abort(),URL.createObjectURL===a&&(URL.createObjectURL=s),HTMLAnchorElement.prototype.click===h&&(HTMLAnchorElement.prototype.click=p),o.clear()}}D();wo();function Yw(t){let e=ve(window,"open");if(e===void 0)return()=>{};let r=function(o,s,a){let l=e.call(this,o,s,a);return Z(()=>{t(x.CONTEXT_OPENED,{...o===void 0?{}:{href:o}})}),l};return window.open=r,()=>{window.open===r&&(window.open=e)}}D();wo();D();D();dt();var NG=1e4;function Xw(t,e,n,r,o,s){var d;if(!Vw(o,s)||typeof((d=e.body)==null?void 0:d.getReader)!="function")return;let a;try{a=e.clone()}catch{return}let l=a.body;l!==null&&(t(x.NET_STREAM,{transport:Br.FETCH,direction:Vr.OPEN,...r,id:n}),(async()=>{let u=l.getReader(),p=!1,h,m=new Promise(g=>{h=oe(()=>g("expired"),NG)});try{for(;;){let g=await Promise.race([u.read(),m]);if(g==="expired"){p=!0,u.cancel().catch(()=>{});break}if(g.done)break}}catch{}finally{h!==void 0&&_e(h)}t(x.NET_STREAM,{transport:Br.FETCH,direction:Vr.CLOSE,...r,id:n,...p?{gaveUp:!0}:{}})})())}function wG(t){if(t instanceof ArrayBuffer)return t.byteLength;if(typeof Blob!="undefined"&&t instanceof Blob)return t.size;if(ArrayBuffer.isView(t))return t.byteLength}function Nb(t,e){if(typeof t!="string"){let r=wG(t);return r===void 0?{frameType:typeof t}:{frameType:"binary",frameBytes:r}}let n={frameBytes:t.length};if(e){let{body:r,truncated:o}=Li(t,"application/json");n.frame=r,o&&(n.frameTruncated=!0)}return n}var Mc={NULL:"0",STRING:"s",NUMBER:"n",BOOLEAN:"b",OTHER:"?"};function mh(t){if(t===null)return Mc.NULL;if(Array.isArray(t))return`[${t.map(mh).join(",")}]`;if(typeof t=="object"){let e=t;return`{${Object.keys(e).sort().map(n=>`${n}:${mh(e[n])}`).join(",")}}`}return typeof t=="string"?Mc.STRING:typeof t=="number"?Mc.NUMBER:typeof t=="boolean"?Mc.BOOLEAN:Mc.OTHER}function Ib(t,e){return ac(`${t}#${String(e)}`)}function OG(t){try{return mh(JSON.parse(t))}catch{return Mc.OTHER}}var IG=1<<20,CG=9,LG=10,kG=13,DG=32,MG=127;function PG(t){for(let e=0;e<t.length;e+=1){let n=t.charCodeAt(e);if(n===MG||n<DG&&n!==CG&&n!==LG&&n!==kG)return!0}return!1}function $G(t){if((t instanceof ArrayBuffer||ArrayBuffer.isView(t))&&!(t.byteLength>IG))try{let e=new TextDecoder("utf-8",{fatal:!0}).decode(t);return PG(e)?void 0:e}catch{return}}function HG(t){let e=[],n=0;return t.forEach((r,o)=>{typeof r=="string"&&(n+=r.length),e.push(JSON.stringify([o,typeof r=="string"?0:[r.type,r.size]]))}),e.length===0?void 0:Ib(e.sort().join(),n)}function wb(t,e){let n,r="application/json",o=Ax,s=$G(t),a=()=>{var p,h;return(h=(p=t.constructor)==null?void 0:p.name)!=null?h:typeof t};if(typeof t=="string"||s!==void 0)n=s!=null?s:t,n.length>0&&(o=Ib(OG(n),n.length));else if(typeof FormData!="undefined"&&t instanceof FormData){let p=HG(t);return{...p===void 0?{}:{[fd]:p},...e?{requestBodyType:a()}:{}}}else if(typeof URLSearchParams!="undefined"&&t instanceof URLSearchParams){if(n=t.toString(),r="application/x-www-form-urlencoded",n.length>0){let p=Object.fromEntries(new URLSearchParams(n));o=Ib(mh(p),n.length)}}else if(t!=null)return e?{requestBodyType:a()}:{};let l={[fd]:o};if(!e||n===void 0||n.length===0)return l;let{body:d,truncated:u}=Li(n,r);return u?{...l,requestBody:d,requestBodyTruncated:!0}:{...l,requestBody:d}}function qw(t){return t>=200&&t<400}function Zw(t,e,n){let r={};t!==""&&(r.statusText=t),e!==null&&e!==""&&(r.contentType=e);let o=n!==null?Number.parseInt(n,10):Number.NaN;return Number.isFinite(o)&&(r.responseSize=o),r}function UG(t){return typeof t=="string"?t:t instanceof URL?t.href:t.url}function FG(t,e){return(e==null?void 0:e.method)!==void 0?e.method.toUpperCase():t instanceof Request?t.method.toUpperCase():"GET"}function GG(t,e){var n,r;if(e!==void 0&&e.headers!==void 0)return(n=Mt(()=>new Headers(e.headers).get(Mg)))!=null?n:void 0;if(t instanceof Request)return(r=Mt(()=>t.headers.get(Mg)))!=null?r:void 0}var BG=/@reticlehq|reticle\.ts|network\.ts|transport\.ts|<anonymous>|new Promise|node:internal/i,VG=/node_modules|\/\.vite\/deps\//i;function jG(t){var r;if(t===void 0)return;let e=t.split(`
1771
+ `).slice(1).map(o=>o.trim()).filter(o=>o.length>0&&!BG.test(o)),n=e.find(o=>!VG.test(o));return(r=n!=null?n:e[0])==null?void 0:r.slice(0,300)}function Ob(){return jG(new Error().stack)}function KG(t){if(t===void 0)return{};let e={};return t.responseStart>0&&t.requestStart>0&&(e.ttfbMs=Math.round(t.responseStart-t.requestStart)),t.transferSize>0&&(e.transferSize=t.transferSize),e}function Qw(t){try{let e=performance.getEntriesByName(t,"resource");return KG(e[e.length-1])}catch{return{}}}function WG(t){try{return new URL(t,location.href).pathname===As}catch{return t.includes(As)}}function zG(t){try{return Function.prototype.toString.call(t).includes("native code")}catch{return!1}}var Jw=new WeakSet,fh=Symbol.for("reticle.network"),hh=()=>window;function eO(t,e={}){var $a,WS,zS;if(hh()[fh]!==void 0)return()=>{};let n={};hh()[fh]=n;let r=e.captureBodies===!0,o=e.captureErrorBodies!==!1,s=e.reinterpret,a=mr(window,"fetch"),l=a.bind(window);!zG(a)&&!Jw.has(a)&&t(x.BLIND_SPOT,{kind:Yt.WRAPPED_NETWORK,count:1});let d=0,u=()=>`n${++d}`;window.fetch=async(Le,fe)=>{var XS,qS,ZS;let ot=UG(Le);if(((XS=e.ignore)==null?void 0:XS.call(e,ot))===!0)return l(Le,fe);let It=u(),Ke=performance.now(),Ct=FG(Le,fe),Lt=GG(Le,fe),ii=Lt===void 0?{}:{[qp]:Lt},is=(qS=Mt(()=>wb(fe==null?void 0:fe.body,r)))!=null?qS:{},To=Ur(ot),wp=To.url,YS=Mt(()=>Ob()),Bm=YS===void 0?{}:{initiatorStack:YS};Z(()=>{t(x.NET_PENDING,{id:It,method:Ct,...To,initiator:"fetch",...Bm})});try{let kt=await l(Le,fe),Tk=performance.now(),Ha=(ZS=Mt(()=>kt.headers.get("content-type")))!=null?ZS:null;Z(()=>{Xw(t,kt,It,To,Ha,kt.headers.get("content-length"))}),Ae.add(ot);let QS=si=>{Z(()=>{var Ql;t(x.NET_REQUEST,{id:It,method:Ct,...To,status:kt.status,ok:qw(kt.status),durationMs:Math.round(Tk-Ke),initiator:"fetch",...Bm,...Qw(ot),...Zw(kt.statusText,Ha,kt.headers.get("content-length")),...is,...ii,...si,...(Ql=s==null?void 0:s(wp,Jl=>kt.headers.get(Jl)))!=null?Ql:{}})})},Sk=vb(kt.status,o);if((r||Sk)&&ph(Ha)){let si;try{si=kt.clone()}catch{}(async()=>{let Ql=r?{responseBodyReason:pi.UNREADABLE}:{};if(si!==void 0)try{let Jl=await jw(si.text());if(Jl!==void 0){let{body:_k,truncated:xk}=r?Li(Jl,Ha):Rb(Jl,Ha);Ql={responseBody:_k,...xk?{responseBodyTruncated:!0}:{},...r?{}:{responseBodyReason:pi.ERROR_STATUS}}}}catch{}try{QS(Ql)}catch{}})().catch(()=>{})}else{let si=r?yb(Ha):void 0;QS(si===void 0?{}:{responseBodyReason:si})}return kt}catch(kt){throw Z(()=>{t(x.NET_REQUEST,{id:It,method:Ct,url:wp,status:0,ok:!1,error:kt instanceof Error?kt.message:String(kt),durationMs:Math.round(performance.now()-Ke),initiator:"fetch",...Bm,...ii})}),kt}};let p=mr(window,"fetch");Jw.add(p);let h=new WeakMap,m=XMLHttpRequest.prototype,g=ve(m,"open"),T=ve(m,"send"),_=g;m.open=function(Le,fe,...ot){Z(()=>{h.set(this,{id:u(),method:Le.toUpperCase(),url:jn(String(fe)),rawUrl:String(fe),start:0})}),_.call(this,Le,fe,...ot)};let A=ve(m,"open"),N=new WeakSet;m.send=function(Le){Z(()=>{var ot;let fe=h.get(this);if(fe!==void 0){fe.start=performance.now(),fe.reqFields=(ot=Mt(()=>wb(Le!=null?Le:null,r)))!=null?ot:{},fe.initiatorStack=Ob();let It=fe.initiatorStack===void 0?{}:{initiatorStack:fe.initiatorStack};t(x.NET_PENDING,{id:fe.id,method:fe.method,...Ur(fe.rawUrl),initiator:"xhr",...It}),N.has(this)||(N.add(this),this.addEventListener("loadend",()=>{Z(()=>{let Ke=h.get(this);if(Ke===void 0)return;Ae.add(Ke.rawUrl);let Ct=this.getResponseHeader("content-type"),Lt={},ii=this.responseType===""||this.responseType==="text",is=vb(this.status,o);if(r){let To=ph(Ct)?pi.UNREADABLE:yb(Ct);To!==void 0&&(Lt={responseBodyReason:To})}if((r||is)&&ii&&ph(Ct))try{let{body:To,truncated:wp}=r?Li(this.responseText,Ct):Rb(this.responseText,Ct);Lt={responseBody:To,...wp?{responseBodyTruncated:!0}:{},...r?{}:{responseBodyReason:pi.ERROR_STATUS}}}catch{}t(x.NET_REQUEST,{id:Ke.id,method:Ke.method,...Ur(Ke.rawUrl),status:this.status,ok:qw(this.status),durationMs:Math.round(performance.now()-Ke.start),initiator:"xhr",...Ke.initiatorStack===void 0?{}:{initiatorStack:Ke.initiatorStack},...Qw(Ke.rawUrl),...Zw(this.statusText,Ct,this.getResponseHeader("content-length")),...Ke.reqFields,...Lt})})}))}}),T.call(this,Le!=null?Le:null)};let y=ve(m,"send"),v=window.EventSource,O=window.WebSocket,j,Y;r&&typeof v=="function"&&(window.EventSource=class extends v{constructor(Le,fe){super(Le,fe),Z(()=>{let ot=Ur(String(Le));t(x.NET_STREAM,{transport:Br.SSE,direction:Vr.OPEN,...ot}),this.addEventListener("message",It=>{Z(()=>{t(x.NET_STREAM,{transport:Br.SSE,direction:Vr.IN,...ot,...Nb(It.data,r)})})})})}},j=window.EventSource),r&&typeof O=="function"&&(window.WebSocket=(WS=class extends O{constructor(fe,ot){super(fe,ot);b(this,$a);f(this,$a,WG(String(fe))),!c(this,$a)&&Z(()=>{let It=Ur(String(fe));t(x.NET_STREAM,{transport:Br.WS,direction:Vr.OPEN,...It}),this.addEventListener("message",Ke=>{Z(()=>{t(x.NET_STREAM,{transport:Br.WS,direction:Vr.IN,...It,...Nb(Ke.data,r)})})})})}send(fe){if(c(this,$a)){super.send(fe);return}super.send(fe),Z(()=>{t(x.NET_STREAM,{transport:Br.WS,direction:Vr.OUT,...Ur(this.url),...Nb(fe,r)})})}},$a=new WeakMap,WS),Y=window.WebSocket);let te=typeof navigator!="undefined"?Object.getPrototypeOf(navigator):null,Ce=te===null||(zS=Object.getOwnPropertyDescriptor(te,"sendBeacon"))==null?void 0:zS.value,je;te!==null&&Ce!==void 0&&(je=function(Le,fe){let ot=u(),It=Mt(()=>Ur(String(Le))),Ke=Mt(()=>Ob()),Ct=Ce.call(this,Le,fe);return Z(()=>{t(x.NET_REQUEST,{id:ot,method:"POST",...It,status:0,ok:Ct,queued:Ct,durationMs:0,initiator:"beacon",...Ke===void 0?{}:{initiatorStack:Ke},...wb(fe,!1)})}),Ct},te.sendBeacon=je);let Ae=new Set,rt=0,Ot=200,Np;if(typeof PerformanceObserver!="undefined")try{let Le=new PerformanceObserver(fe=>{var ot,It,Ke;for(let Ct of fe.getEntries()){let Lt=Ct;if(rt>=Ot)return;let ii=Lt.initiatorType||"other";if(ii==="fetch"||ii==="xmlhttprequest")continue;let is=Lt.name;Ae.has(is)||(Ae.add(is),rt+=1,t(x.NET_REQUEST,{id:u(),method:"GET",...Ur(is),durationMs:Math.round(Lt.duration),initiator:ii,...Lt.transferSize>0?{transferSize:Lt.transferSize}:{},...((ot=Lt.responseStatus)!=null?ot:0)>0?{status:Lt.responseStatus,ok:((It=Lt.responseStatus)!=null?It:0)>=200&&((Ke=Lt.responseStatus)!=null?Ke:0)<400}:{}}))}});Np=Le,Le.observe({type:"resource",buffered:!0})}catch{}return()=>{hh()[fh]===n&&delete hh()[fh],Np==null||Np.disconnect(),window.fetch===p&&(window.fetch=a),ve(m,"open")===A&&(m.open=g),ve(m,"send")===y&&(m.send=T),j!==void 0&&window.EventSource===j&&(window.EventSource=v),Y!==void 0&&window.WebSocket===Y&&(window.WebSocket=O),te!==null&&Ce!==void 0&&te.sendBeacon===je&&(te.sendBeacon=Ce)}}D();var YG="Tauri-Response",XG="error",tO={OK:"Ok",ERROR:"Err"},nO=/^(?:ipc:\/\/[^/]*|https?:\/\/ipc\.localhost(?::\d+)?)\/(.+)$/;function rO(t,e){let n=nO.exec(t),r=n==null?void 0:n[1];if(r===void 0)return;let o=e(YG)!==XG;return{url:`${Dg}${r}`,initiator:ln.IPC,method:ln.IPC,ok:o,status:o?pd.OK:pd.ERROR,statusText:o?tO.OK:tO.ERROR}}function oO(t){var e;return((e=nO.exec(t))==null?void 0:e[1])===df}function qG(){return navigator.userAgent.includes("Electron")}function iO(t,e={}){let n=window[Ro];if(typeof(n==null?void 0:n.subscribe)!="function")return qG()&&t(x.BLIND_SPOT,{kind:Yt.UNOBSERVED_IPC,count:1}),()=>{};let r=n.subscribe(o=>{Z(()=>{var d;let s=`${Dg}${o.channel}`;if(o.phase==="start"){t(x.NET_PENDING,{id:o.id,method:ln.IPC,url:s,initiator:ln.IPC});return}let a=o.oneWay===!0&&o.ok===void 0;a&&t(x.BLIND_SPOT,{kind:Yt.VERDICTLESS_SEND,count:1});let l=o.ok===!0;t(x.NET_REQUEST,{id:o.id,method:ln.IPC,url:s,...a?{}:{ok:l,status:l?pd.OK:pd.ERROR},...o.oneWay===!0?{oneWay:!0}:{},durationMs:(d=o.durationMs)!=null?d:0,initiator:ln.IPC,...o.error===void 0?{}:{error:o.error},...o.responseSize===void 0?{}:{responseSize:o.responseSize},...e.captureBodies===!0?{...o.requestBody===void 0?{}:{requestBody:o.requestBody},...o.responseBody===void 0?{}:{responseBody:o.responseBody},...o.responseBodyTruncated===!0?{responseBodyTruncated:!0}:{}}:{}})})});return()=>{var o;(o=n.unsubscribe)==null||o.call(n,r)}}D();lt();xt();Ye();Rn();var sO=t=>t===void 0?0:Math.max(0,t.width)*Math.max(0,t.height);function aO(t){let e=globalThis.CSS;if(typeof(e==null?void 0:e.escape)=="function")return e.escape(t);let n="";for(let[r,o]of[...t].entries())/\d/.test(o)&&(r===0||r===1&&t.startsWith("-"))?n+=`\\${o.charCodeAt(0).toString(16)} `:/[\w-]/.test(o)?n+=o:n+=`\\${o}`;return n}function ZG(t){let e=Te(t);if(e!==null)return`[${Ti()}="${e.replace(/["\\]/g,"\\$&")}"]`;let n=t.tagName.toLowerCase();if(0<t.id.length)return`${n}#${aO(t.id)}`;let r=t.classList.item(0);return r===null?n:`${n}.${aO(r)}`}function QG(t){var n;let e;for(let r of t!=null?t:[]){let o=(n=r.node)!=null?n:null,s=o===null?null:pn(o)?o:o.parentElement;if(s===null||ft(s))continue;let a=Math.max(sO(r.previousRect),sO(r.currentRect));(e===void 0||a>e.area)&&(e={el:s,area:a})}return e===void 0?void 0:{ref:X.refFor(e.el),selector:ZG(e.el)}}function cO(t){if(typeof PerformanceObserver!="function")return()=>{};let e=[],n=(s,a)=>{try{let l=new PerformanceObserver(d=>{for(let u of d.getEntries())a(u)});l.observe({type:s,buffered:!0}),e.push(l)}catch{}},r=0,o=0;return n("largest-contentful-paint",s=>{let a=Math.round(s.startTime);a<=o||(o=a,t(x.PERF,{metric:qa.LCP,value:a,at:a}))}),n("layout-shift",s=>{var d;let a=s;if(a.hadRecentInput===!0)return;r+=(d=a.value)!=null?d:0;let l=QG(a.sources);t(x.PERF,{metric:qa.CLS,value:r,at:Math.round(s.startTime),...l===void 0?{}:{shifted:l}})}),n("longtask",s=>{t(x.PERF,{metric:qa.LONGTASK,value:Math.round(s.duration),at:Math.round(s.startTime)})}),()=>{for(let s of e)s.disconnect()}}D();var JG=new Set(["navigate","reload","back_forward"]);function eB(){try{let[t]=performance.getEntriesByType("navigation");return t}catch{return}}function lO(t){var a,l;let e=eB(),n=e==null?void 0:e.type,r=e==null?void 0:e.name;if(e===void 0||typeof r!="string"||r.length===0)return()=>{};if(typeof n!="string"||!JG.has(n))return()=>{};let o=e.responseStatus,s=typeof o=="number"&&o>0;return t(x.NET_REQUEST,{id:`doc-${String(Math.round((a=e.duration)!=null?a:0))}`,method:"GET",url:r,initiator:ln.DOCUMENT,durationMs:Math.round((l=e.duration)!=null?l:0),...s?{status:o,ok:o<400}:{},navigationType:n,...typeof e.transferSize=="number"?{transferSize:e.transferSize}:{}}),()=>{}}D();var tB=/^(javascript|mailto|tel|sms|blob|data):/i;function nB(){if(typeof window=="undefined")return;let t=window.navigation;return t instanceof EventTarget?t:void 0}function rB(t){if(!(t instanceof Element))return;let e=t.closest("a");return e instanceof HTMLAnchorElement?e:void 0}var oB=1e3;function dO(t,e,n){if(t.length===0||tB.test(t))return!1;if(e)return!0;try{let r=new URL(t,n),o=new URL(n);return r.origin===o.origin?r.pathname!==o.pathname||r.search!==o.search:!0}catch{return!1}}function uO(t){if(typeof document=="undefined")return()=>{};let e=0,n,r=(l,d)=>{let u=Date.now();n!==void 0&&n.url===l&&u-n.at<oB||(n={url:l,at:u},e+=1,t(x.NET_PENDING,{id:`nav-${String(e)}`,method:"GET",url:l,initiator:ln.NAVIGATION,...d?{download:!0}:{}}))},o=l=>{Z(()=>{var g;let d=rB(l.target);if(d===void 0)return;let u=(g=d.getAttribute("href"))!=null?g:"",p=document.location.href,h=d.hasAttribute("download");if(!dO(u,h,p))return;let m=new URL(u,p).toString();queueMicrotask(()=>{Z(()=>{l.defaultPrevented||r(m,h)})})})},s=l=>{Z(()=>{let d=l.destination;if(d===void 0||d.sameDocument)return;let u=d.url;dO(u,!1,document.location.href)&&queueMicrotask(()=>{Z(()=>{l.defaultPrevented||r(u,!1)})})})},a=nB();return a!==void 0&&a.addEventListener("navigate",s),document.addEventListener("click",o,!0),()=>{document.removeEventListener("click",o,!0),a!==void 0&&a.removeEventListener("navigate",s)}}D();pr();D();var iB=3,sB=256,aB={emit:!0},cB={emit:!1};function lB(t){if(t<10)return!1;let e=t;for(;e%10===0;)e/=10;return e===1}function dB(t){var e,n,r;return ac([t.message,(e=t.source)!=null?e:"",t.line===void 0?"":String(t.line),(n=t.kind)!=null?n:"",(r=t.stack)!=null?r:""].join("\0"))}function pO(t=iB,e=sB){let n=new Map;return{admit(r){var a,l;let o=dB(r),s=((a=n.get(o))!=null?a:0)+1;if(n.delete(o),n.size>=e){let d=n.keys().next();(l=d.done)!=null&&l||n.delete(d.value)}return n.set(o,s),s<=t?aB:lB(s)?{emit:!0,repeats:s}:cB}}}var fO="securitypolicyviolation",uB="report",pB={log:x.CONSOLE_LOG,warn:x.CONSOLE_WARN,error:x.CONSOLE_ERROR,info:x.CONSOLE_INFO,debug:x.CONSOLE_DEBUG};function fB(t){return t.map(e=>typeof e=="string"?e:e instanceof Error?e.message:Wr(e)).join(" ")}var hO=G.MAX_STACK_LENGTH;function Cb(t){if(!(t===void 0||t.length===0))return t.length>hO?t.slice(0,hO):t}function hB(t){for(let e of t)if(e instanceof Error)return Cb(e.stack)}function mO(t){let e=["log","warn","error","info","debug"],n=new Map,r=new Map;for(let h of e){let m=mr(console,h);n.set(h,m);let g=m.bind(console),T=(..._)=>{g(..._),Z(()=>{let A=h==="error"?hB(_):void 0;t(pB[h],{message:fB(_),...A===void 0?{}:{stack:A}})})};r.set(h,T),console[h]=T}let o=pO(),s=h=>{let m=o.admit(h);m.emit&&t(x.ERROR_UNCAUGHT,{...h,...m.repeats===void 0?{}:{repeats:m.repeats}})},a=h=>{var m,g;if(!(h instanceof ErrorEvent)){let T=h.target;if(!(T instanceof Element)||T===document)return;let _=T.tagName.toLowerCase(),A=(g=(m=T.getAttribute("src"))!=null?m:T.getAttribute("href"))!=null?g:"";Z(()=>{let N=`<${_}> failed to load${A.length===0?"":`: ${A}`}`;s({message:N,kind:"resource",...A.length===0?{}:{source:A}})});return}Z(()=>{let T=Cb(h.error instanceof Error?h.error.stack:void 0),_={message:h.message,source:h.filename,line:h.lineno,...T===void 0?{}:{stack:T}};s(_)})},l=h=>{Z(()=>{let m=h.reason,g=Cb(m instanceof Error?m.stack:void 0),T={message:m instanceof Error?m.message:String(m),kind:"unhandledrejection",...g===void 0?{}:{stack:g}};s(T)})},d=h=>{let m=h.blockedURI.length===0?"inline content":h.blockedURI,g=uB===h.disposition;t(g?x.CONSOLE_WARN:x.CONSOLE_ERROR,{message:g?`[Report Only] Content Security Policy directive: ${h.violatedDirective} would block ${m}`:`Content Security Policy directive: ${h.violatedDirective} blocked ${m}`,kind:fO,...h.blockedURI.length===0?{}:{source:h.blockedURI}})},u=new AbortController,{signal:p}=u;return window.addEventListener("error",a,{capture:!0,signal:p}),window.addEventListener("unhandledrejection",l,{signal:p}),window.addEventListener(fO,d,{capture:!0,signal:p}),()=>{for(let[h,m]of n)console[h]===r.get(h)&&(console[h]=m);u.abort()}}D();Tc();var mB={alert:void 0,confirm:!1,prompt:null},gB=["alert","confirm","prompt"];function gO(t){let e=window,n=new Map,r=new Map;for(let o of gB){let s=e[o];if(typeof s!="function")continue;n.set(o,s);let a=s.bind(window),l=(...d)=>{if(!jf())return a(...d);let u=mB[o],p=d[0];return Z(()=>{t(x.DIALOG_OPENED,{kind:o,...typeof p=="string"?{message:p}:{},...u===void 0?{}:{answered:u}})}),u};r.set(o,l),e[o]=l}return()=>{for(let[o,s]of n)e[o]===r.get(o)&&(e[o]=s)}}D();lt();Ye();function EO(t){let e=new AbortController,{signal:n}=e,r=a=>{let l=a.target;l instanceof Element&&!ft(l)&&t(x.ANIM_START,{name:a.animationName},X.refFor(l))},o=a=>{let l=a.target;l instanceof Element&&!ft(l)&&t(x.ANIM_END,{name:a.animationName},X.refFor(l))},s=a=>{let l=a.target;l instanceof Element&&!ft(l)&&t(x.ANIM_END,{name:a.propertyName,kind:"transition"},X.refFor(l))};return document.addEventListener("animationstart",r,{capture:!0,signal:n}),document.addEventListener("animationend",o,{capture:!0,signal:n}),document.addEventListener("transitionend",s,{capture:!0,signal:n}),()=>e.abort()}D();lt();dt();var bO=100,EB="[data-reticle-reveal], [data-reveal], section";function TO(t){let e=new AbortController,{signal:n}=e,r=0,o=0,s,a=()=>{r=performance.now();let u=window.scrollY,p=Math.max(1,document.documentElement.scrollHeight-window.innerHeight);t(x.SCROLL_POSITION,{x:window.scrollX,y:u,percent:Math.round(u/p*100),direction:u>=o?lf.DOWN:lf.UP}),o=u},l=()=>{let u=performance.now()-r;if(u>=bO){s!==void 0&&(_e(s),s=void 0),a();return}s===void 0&&(s=oe(()=>{s=void 0,a()},bO-u))};window.addEventListener("scroll",l,{passive:!0,signal:n});let d;if(typeof IntersectionObserver=="function"){d=new IntersectionObserver(p=>{for(let h of p)h.isIntersecting&&t(x.REVEAL_SHOWN,{ratio:h.intersectionRatio},X.refFor(h.target))},{threshold:.25});let u=d;for(let p of document.querySelectorAll(EB))u.observe(p)}return()=>{e.abort(),s!==void 0&&_e(s),d==null||d.disconnect()}}D();dt();function _O(){let t=window;return t.__TAURI_INTERNALS__!==void 0||t.__TAURI__!==void 0?"tauri":navigator.userAgent.includes("Electron")||t[Ro]!==void 0?"electron":"web"}function bB(){let t=navigator.userAgent;return/Chrome|Chromium|Edg\//.test(t)?"blink":/Gecko\/|Firefox/.test(t)?"gecko":"webkit"}var TB={"google chrome":He.CHROME,chrome:He.CHROME,"microsoft edge":He.EDGE,edge:He.EDGE,brave:He.BRAVE,opera:He.OPERA,arc:He.ARC,dia:He.DIA,firefox:He.FIREFOX,safari:He.SAFARI};function SB(t){return t==="chromium"||t.includes("not")&&t.includes("brand")}function _B(){var e;try{let r=(e=navigator.userAgentData)==null?void 0:e.brands;if(Array.isArray(r)){let o;for(let s of r){let a=typeof(s==null?void 0:s.brand)=="string"?s.brand.toLowerCase():"";if(a===""||SB(a))continue;let l=TB[a];if(l!==void 0)if(He.CHROME===l)o=l;else return l}return o!=null?o:He.OTHER}}catch{}let t=navigator.userAgent;return/Edg\//.test(t)?He.EDGE:/OPR\/|Opera/.test(t)?He.OPERA:/Firefox/.test(t)?He.FIREFOX:/Chrome|Chromium/.test(t)?He.CHROME:/Safari/.test(t)?He.SAFARI:He.OTHER}var SO=typeof window!="undefined"&&typeof window.fetch=="function"?window.fetch.bind(window):void 0;function xB(){var n,r;let t=window.__TAURI_INTERNALS__,e=(r=(n=t==null?void 0:t.metadata)==null?void 0:n.currentWindow)==null?void 0:r.label;return typeof e=="string"&&e.length>0?e:void 0}function AB(){try{let[t]=performance.getEntriesByType("navigation"),e=t==null?void 0:t.responseStatus;return typeof e=="number"&&e>0?e:void 0}catch{return}}async function yB(t){let e=AB();if(e!==void 0)return e;try{return t==="web"||SO===void 0||!/^https?:$/.test(location.protocol)?void 0:(await SO(location.href,{method:"HEAD",cache:"no-store"})).status}catch{return}}async function vB(){let t=window[Ro];if(typeof(t==null?void 0:t.windowLabel)=="function")try{let e=await t.windowLabel();return typeof e=="string"&&e.length>0?e:void 0}catch{return}}function RB(t){return{hidden:document.visibilityState==="hidden",focused:document.hasFocus(),runtime:_O(),engine:bB(),brand:_B(),...t===void 0?{}:{windowLabel:t}}}function xO(t){let e=new AbortController,{signal:n}=e,r,o=xB(),s=l=>{t(x.PAGE_HEALTH,{...RB(o),...r===void 0?{}:{documentStatus:r},reason:l})};document.addEventListener("visibilitychange",()=>s(Is.VISIBILITY),{signal:n}),window.addEventListener("focus",()=>s(Is.FOCUS),{signal:n}),window.addEventListener("blur",()=>s(Is.BLUR),{signal:n}),s(Is.INITIAL),Promise.all([yB(_O()),o===void 0?vB():Promise.resolve(o)]).then(([l,d])=>{n.aborted||l===void 0&&d===o||(r=l,o=d,s(Is.HEARTBEAT))});let a=zf(()=>s(Is.HEARTBEAT),Gx.HEARTBEAT_MS);return()=>{a(),e.abort()}}D();lt();var NB={VIDEO:"video",AUDIO:"audio"};function AO(t){let e=new AbortController,n=r=>{Z(()=>{let o=r.target;if(!(o instanceof HTMLMediaElement))return;let s=NB[o.tagName];if(s===void 0)return;let a=Number.isFinite(o.duration)?o.duration:void 0;t(x.MEDIA_STATE,{event:r.type,tag:s,currentTime:o.currentTime,...a===void 0?{}:{duration:a},readyState:o.readyState,paused:o.paused},X.refFor(o))})};for(let r of Object.values(id))document.addEventListener(r,n,{capture:!0,signal:e.signal});return()=>e.abort()}D();var Ge={CONNECT:"connect",DOM_OBSERVER:"dom_observer",NETWORK_OBSERVER:"network_observer",CONSOLE_OBSERVER:"console_observer",IPC_OBSERVER:"ipc_observer",HEALTH_OBSERVER:"health_observer",ROUTER_OBSERVER:"router_observer",ANIMATION_OBSERVER:"animation_observer",STORE_ADAPTER:"store_adapter",SNAPSHOT:"snapshot",ACTION:"action",COMMAND:"command",RECORDER:"recorder",TRANSPORT:"transport",TEARDOWN:"teardown"},wB=500;function Lb(t,e,n){try{let r=n instanceof Error?n.message:String(n);t(x.SDK_FAILED,{site:e,message:r.slice(0,wB),...n instanceof Error?{errorType:n.constructor.name.slice(0,64)}:{}})}catch{}}function Ze(t,e,n){try{return n()}catch(r){return Lb(t,e,r),()=>{}}}function yO(t,e){for(let n of e)try{n()}catch(r){Lb(t,Ge.TEARDOWN,r)}}function vO(t,e){return[Ze(t,Ge.NETWORK_OBSERVER,()=>eO(t,{captureBodies:e.captureBodies,...e.captureErrorBodies===void 0?{}:{captureErrorBodies:e.captureErrorBodies},reinterpret:rO,ignore:oO})),Ze(t,Ge.IPC_OBSERVER,()=>iO(t,{captureBodies:e.captureBodies})),Ze(t,Ge.ANIMATION_OBSERVER,()=>cO(t)),Ze(t,Ge.ROUTER_OBSERVER,()=>nv(t)),Ze(t,Ge.NETWORK_OBSERVER,()=>lO(t)),Ze(t,Ge.NETWORK_OBSERVER,()=>uO(t)),Ze(t,Ge.CONSOLE_OBSERVER,()=>mO(t)),Ze(t,Ge.CONSOLE_OBSERVER,()=>gO(t)),Ze(t,Ge.ANIMATION_OBSERVER,()=>EO(t)),Ze(t,Ge.DOM_OBSERVER,()=>TO(t)),Ze(t,Ge.DOM_OBSERVER,()=>Cw(t)),Ze(t,Ge.STORE_ADAPTER,()=>JN(t)),Ze(t,Ge.STORE_ADAPTER,()=>Pw(t)),Ze(t,Ge.DOM_OBSERVER,()=>$w(t)),Ze(t,Ge.DOM_OBSERVER,()=>fN(t)),Ze(t,Ge.NETWORK_OBSERVER,()=>zw(t,{capturePreview:e.captureBodies})),Ze(t,Ge.DOM_OBSERVER,()=>Uw(t)),Ze(t,Ge.HEALTH_OBSERVER,()=>xO(t)),Ze(t,Ge.DOM_OBSERVER,()=>Yw(t)),Ze(t,Ge.DOM_OBSERVER,()=>AO(t)),Ze(t,Ge.DOM_OBSERVER,()=>ew(t))]}xt();Vd();pr();var OB=["position:fixed","bottom:8px","right:8px","z-index:2147483647","font:11px ui-monospace,SFMono-Regular,Menlo,monospace","background:#151823","color:#e6e9f0","border:1px solid #2a2f3d","border-radius:8px","padding:6px 10px","pointer-events:none","opacity:0.85"].join(";");function RO(){let t=document.createElement("div");return t.setAttribute("data-reticle-overlay",""),t.style.cssText=OB,t.textContent="Reticle: connecting\u2026",document.body.appendChild(t),{update:e=>{t.textContent=`Reticle ${e.connected?"\u25CF":"\u25CB"} ${String(e.events)} events`},destroy:()=>{t.remove()}}}kb();Db();D();lt();mt();function wn(t,e=""){return typeof t=="string"?t:e}function Ho(t){let e=wn(t);return e===""?void 0:e}function gh(t){let e=X.resolve(t);if(!(e instanceof Element))return t;let n=Yr(e);return n.name.length>0?`${n.role} "${n.name}"`:`${n.role} (${t})`}function NO(t){switch(t){case k.ACT:case k.ACT_SEQUENCE:return We.ACTING;case k.SNAPSHOT:case k.QUERY:case k.MATCH:case k.INSPECT:case k.ANIMATIONS:case k.STATE_READ:case k.CAPABILITIES:return We.READING;default:return We.IDLE}}function wO(t,e={}){var n;switch(t){case k.SNAPSHOT:return"Looking at the page";case k.QUERY:case k.MATCH:{let r=t===k.MATCH?(n=e.query)!=null?n:{}:e,o=IB(r);return o!==void 0?`Finding ${o}`:"Finding an element"}case k.INSPECT:{let r=Ho(e.ref);return r!==void 0?`Inspecting ${gh(r)}`:"Inspecting an element"}case k.ANIMATIONS:return"Reading animations";case k.STATE_READ:{let r=Ho(e.store);return r!==void 0?`Reading state: ${r}`:"Reading state"}case k.CAPABILITIES:return"Reading capabilities";default:return t}}function IB(t){var o,s,a,l;let e=(o=Ho(t.testid))!=null?o:et.TESTID===wn(t.by)?Ho(t.value):void 0;if(e!==void 0)return`[testid=${e}]`;let n=Ho(t.name),r=(l=(a=(s=Ho(t.value))!=null?s:Ho(t.text))!=null?a:Ho(t.label))!=null?l:Ho(t.role);return r!==void 0?n!==void 0?`"${r}" (${n})`:`"${r}"`:n!==void 0?`"${n}"`:void 0}jd();xt();D();D();Hd();mt();Ye();vi();var OO=["position:fixed","top:8px","left:50%","transform:translateX(-50%)","z-index:2147483647","display:flex","gap:6px","align-items:center","flex-wrap:wrap","max-width:90vw","font:12px ui-sans-serif,system-ui,sans-serif","background:#151823","color:#e6e9f0","border:1px solid #2a2f3d","border-radius:10px","padding:6px 10px","box-shadow:0 8px 30px rgba(0,0,0,.5)"].join(";"),Eh=["font:inherit","cursor:pointer","background:#262b3a","color:#e6e9f0","border:1px solid #3a4151","border-radius:7px","padding:3px 9px"].join(";"),Mb=["font:inherit","background:#0e1018","color:#e6e9f0","border:1px solid #3a4151","border-radius:7px","padding:3px 8px"].join(";"),IO=["opacity:.75","margin-left:4px"].join(";"),CO=["display:flex","gap:6px","align-items:center","flex-wrap:wrap"].join(";");var CB="recorded 0 steps",LB="recording\u2026",LO="ready",kB="pick an annotation",DB=Ya.ACT,Pb={record:"Record",stop:"Stop",annotate:"Annotate"},MB={[De.ASSERT_SIGNAL]:"assert signal",[De.ASSERT_VISIBLE]:"assert visible",[De.ASSERT_STATE]:"assert state",[De.ASSERT_NET]:"assert request",[De.MARK_DYNAMIC]:"mark dynamic",[De.SUCCESS_STATE]:"success state",[De.INTENT]:"intent"},PB=new Set([De.ASSERT_SIGNAL,De.SUCCESS_STATE]),$B="recorded-flow";function MO(t){let e=Te(t);if(e!==null&&e.length>0)return{anchor:{kind:Fn.TESTID,value:e},degraded:!1};let n=Ne(t),r=Se(t);return n!=="generic"&&(n.length>0||r.length>0)?{anchor:r.length>0?{kind:Fn.ROLE,role:n,name:r}:{kind:Fn.ROLE,role:n},degraded:!1}:{anchor:{kind:Fn.ROLE,role:S_},degraded:!0}}function kO(t){return t instanceof HTMLTextAreaElement?!0:t instanceof HTMLInputElement&&pu(t)==="textbox"}function pu(t){let e=t.type.toLowerCase();return e==="checkbox"?"checkbox":e==="radio"?"radio":["text","email","tel","url","search","password",""].includes(e)?"textbox":"other"}function Pc(t,e,n){let{anchor:r,degraded:o}=MO(t),s={tool:DB,anchor:r,action:e};n!==void 0&&(s.args=n),o&&(s.degraded=!0);let a=$d(t);return a!==void 0&&(s.source=a.line===void 0?{file:a.file}:{file:a.file,line:a.line}),s}function HB(t,e,n,r,o){let s=e.map(u=>({...u})),a=[],l;for(let u of n){if(u.kind===De.MARK_DYNAMIC){a.push(u.anchor);continue}if(u.kind===De.SUCCESS_STATE){u.signal!==void 0&&(l={kind:I.SIGNAL,name:u.signal});continue}let p=s.at(-1);p!==void 0&&(u.kind===De.ASSERT_SIGNAL&&u.signal!==void 0?p.expect=DO(p.expect,{kind:I.SIGNAL,name:u.signal}):u.kind===De.ASSERT_VISIBLE&&(p.expect=DO(p.expect,{kind:I.ELEMENT,query:UB(u.anchor)})))}let d={version:eg,name:t,createdAt:r,steps:s};return o!==void 0&&o.length>0&&(d.startPath=o),a.length>0&&(d.dynamic=a),l!==void 0&&(d.success=l),d}function DO(t,e){return t===void 0?e:t.kind===I.ALL_OF?{kind:I.ALL_OF,predicates:[...t.predicates,e]}:{kind:I.ALL_OF,predicates:[t,e]}}function UB(t){return t.kind===Fn.TESTID?{testid:t.value}:t.kind===Fn.ROLE?t.name!==void 0?{role:t.role,name:t.name}:{role:t.role}:{}}var Vs,Xn,en,mu,Di,Uo,$c,Mi,js,qr,gr,B,PO,fu,$O,HO,UO,FO,ki,GO,BO,Hb,VO,jO,KO,Bs,WO,bh,zO,YO,hu,Th,XO,$b=class{constructor(e){b(this,B);b(this,Vs);b(this,Xn,jt.IDLE);b(this,en,[]);b(this,mu);b(this,Di,[]);b(this,Uo);b(this,$c);b(this,Mi);b(this,js);b(this,qr);b(this,gr);f(this,Vs,e)}phase(){return c(this,Xn)}steps(){return c(this,en).map(e=>({...e}))}mount(){c(this,Mi)===void 0&&typeof document!="undefined"&&(E(this,B,WO).call(this),E(this,B,PO).call(this))}destroy(){var e,n;(e=c(this,$c))==null||e.abort(),f(this,$c,void 0),(n=c(this,Mi))==null||n.remove(),f(this,Mi,void 0),f(this,js,void 0),f(this,qr,void 0),f(this,Xn,jt.IDLE),f(this,en,[]),f(this,Di,[]),f(this,gr,void 0),f(this,Uo,void 0)}};Vs=new WeakMap,Xn=new WeakMap,en=new WeakMap,mu=new WeakMap,Di=new WeakMap,Uo=new WeakMap,$c=new WeakMap,Mi=new WeakMap,js=new WeakMap,qr=new WeakMap,gr=new WeakMap,B=new WeakSet,PO=function(){let e=new AbortController;f(this,$c,e);let n={capture:!0,signal:e.signal};document.addEventListener("click",r=>E(this,B,$O).call(this,r),n),document.addEventListener("input",r=>E(this,B,HO).call(this,r),n),document.addEventListener("change",r=>E(this,B,UO).call(this,r),n),document.addEventListener("submit",r=>E(this,B,FO).call(this,r),n)},fu=function(e){let n=e.target;if(n instanceof Element&&!ft(n))return n},$O=function(e){let n=E(this,B,fu).call(this,e);if(n!==void 0){if(c(this,Xn)===jt.ANNOTATING){E(this,B,GO).call(this,n);return}c(this,Xn)===jt.RECORDING&&(n instanceof HTMLInputElement&&(pu(n)==="checkbox"||pu(n)==="radio")||n instanceof HTMLSelectElement||(E(this,B,ki).call(this),c(this,en).push(Pc(n,L.CLICK))))}},HO=function(e){if(c(this,Xn)!==jt.RECORDING)return;let n=E(this,B,fu).call(this,e);n===void 0||!kO(n)||f(this,Uo,{el:n,value:n.value})},UO=function(e){if(c(this,Xn)!==jt.RECORDING)return;let n=E(this,B,fu).call(this,e);if(n!==void 0){if(n instanceof HTMLInputElement&&pu(n)==="checkbox"){E(this,B,ki).call(this),c(this,en).push(Pc(n,n.checked?L.CHECK:L.UNCHECK));return}if(n instanceof HTMLInputElement&&pu(n)==="radio"){E(this,B,ki).call(this),c(this,en).push(Pc(n,L.CHECK));return}if(n instanceof HTMLSelectElement){E(this,B,ki).call(this),c(this,en).push(Pc(n,L.SELECT,{value:n.value}));return}kO(n)&&(f(this,Uo,{el:n,value:n.value}),E(this,B,ki).call(this))}},FO=function(e){if(c(this,Xn)!==jt.RECORDING)return;let n=E(this,B,fu).call(this,e);n!==void 0&&(E(this,B,ki).call(this),c(this,en).push(Pc(n,L.SUBMIT)))},ki=function(){let e=c(this,Uo);if(e===void 0)return;f(this,Uo,void 0);let n=Zt(e.el)?ye:e.value;c(this,en).push(Pc(e.el,L.FILL,{value:n}))},GO=function(e){let n=c(this,gr);if(n===void 0)return;let{anchor:r}=MO(e),o={kind:n.kind,anchor:r},s=E(this,B,Hb).call(this);s!==void 0&&(o.signal=s),c(this,Di).push(o),f(this,gr,void 0),E(this,B,Bs).call(this,jt.RECORDING),E(this,B,hu).call(this)},BO=function(){let e=c(this,gr);if(e===void 0)return;let n=c(this,en).at(-1);if(n===void 0){f(this,gr,void 0),E(this,B,Bs).call(this,jt.RECORDING),E(this,B,hu).call(this);return}let r={kind:e.kind,anchor:n.anchor},o=E(this,B,Hb).call(this);o!==void 0&&(r.signal=o),c(this,Di).push(r),f(this,gr,void 0),E(this,B,Bs).call(this,jt.RECORDING),E(this,B,hu).call(this)},Hb=function(){var r,o;let e=(r=c(this,qr))==null?void 0:r.querySelector("[data-reticle-signal]"),n=(o=e==null?void 0:e.value)!=null?o:"";return n.length>0?n:void 0},VO=function(){f(this,en,[]),f(this,mu,typeof location=="undefined"?void 0:location.pathname),f(this,Di,[]),f(this,Uo,void 0),f(this,gr,void 0),E(this,B,Bs).call(this,jt.RECORDING),E(this,B,Th).call(this,LB)},jO=function(){var r,o;E(this,B,ki).call(this);let e=(o=(r=E(this,B,XO).call(this))!=null?r:c(this,Vs).defaultName)!=null?o:$B,n=HB(e,c(this,en),c(this,Di),c(this,Vs).now(),c(this,mu));c(this,Vs).emit(x.FLOW_RECORDED,{name:e,flow:n}),E(this,B,Th).call(this,c(this,en).length===0?CB:LO),E(this,B,Bs).call(this,jt.IDLE),E(this,B,hu).call(this)},KO=function(){c(this,Xn)===jt.RECORDING&&(E(this,B,Bs).call(this,jt.ANNOTATING),E(this,B,Th).call(this,kB),E(this,B,zO).call(this))},Bs=function(e){f(this,Xn,e)},WO=function(){let e=document.createElement("div");e.setAttribute("data-reticle-overlay",""),e.style.cssText=OO;let n=document.createElement("input");n.setAttribute("data-reticle-name",""),n.setAttribute("placeholder","flow name"),n.style.cssText=Mb,e.appendChild(n),e.appendChild(E(this,B,bh).call(this,"record",Pb.record,()=>E(this,B,VO).call(this))),e.appendChild(E(this,B,bh).call(this,"stop",Pb.stop,()=>E(this,B,jO).call(this))),e.appendChild(E(this,B,bh).call(this,"annotate",Pb.annotate,()=>E(this,B,KO).call(this)));let r=document.createElement("span");r.setAttribute("data-reticle-status",""),r.style.cssText=IO,r.textContent=LO,e.appendChild(r);let o=document.createElement("div");o.setAttribute("data-reticle-menu",""),o.style.cssText=CO,e.appendChild(o),document.body.appendChild(e),f(this,Mi,e),f(this,js,r),f(this,qr,o)},bh=function(e,n,r){let o=document.createElement("button");return o.setAttribute("data-reticle-action",e),o.textContent=n,o.style.cssText=Eh,o.addEventListener("click",r),o},zO=function(){let e=c(this,qr);if(e!==void 0){e.textContent="";for(let n of Object.values(De)){if(n===De.INTENT)continue;let r=document.createElement("button");r.setAttribute("data-reticle-annkind",n),r.textContent=MB[n],r.style.cssText=Eh,r.addEventListener("click",()=>E(this,B,YO).call(this,n)),e.appendChild(r)}}},YO=function(e){f(this,gr,{kind:e});let n=c(this,qr);if(n===void 0)return;if(PB.has(e)){let o=document.createElement("select");o.setAttribute("data-reticle-signal",""),o.style.cssText=Mb;for(let s of yi().signals){let a=document.createElement("option");a.value=s,a.textContent=s,o.appendChild(a)}n.appendChild(o)}let r=document.createElement("button");r.setAttribute("data-reticle-action","annotate-confirm"),r.textContent="on prior step",r.style.cssText=Eh,r.addEventListener("click",()=>E(this,B,BO).call(this)),n.appendChild(r)},hu=function(){c(this,qr)!==void 0&&(c(this,qr).textContent="")},Th=function(e){c(this,js)!==void 0&&(c(this,js).textContent=e)},XO=function(){var r,o;let e=(r=c(this,Mi))==null?void 0:r.querySelector("[data-reticle-name]"),n=(o=e==null?void 0:e.value.trim())!=null?o:"";return n.length>0?n:void 0};function qO(t){return new $b(t)}Zb();D();function v0(t){return{...t.env===void 0?{}:{env:t.env},...t.scope===void 0?{}:{scope:t.scope},...t.injected===!0?{instrumentation:of.INJECTED}:{}}}function R0(t,e){return t==="production"&&!e}function N0(t,e){let n=t.token;if(!(t.lease!==!0||n===void 0||n.length===0||n===e))return n}function oj(t){let e;try{e=new URL(t)}catch{return{url:t,adjusted:!1}}return e.protocol!=="ws:"&&e.protocol!=="wss:"||e.pathname!==""&&e.pathname!=="/"?{url:t,adjusted:!1}:(e.pathname=As,{url:e.toString(),adjusted:!0})}function ij(t,e,n,r,o="http:"){var d;let s;try{s=new URL(e)}catch{return{allowed:!1,reason:"invalid Reticle bridge URL"}}if(s.protocol!=="ws:"&&s.protocol!=="wss:")return{allowed:!1,reason:"Reticle bridge URL must use ws:// or wss://"};if(((d=r==null?void 0:r.length)!=null?d:0)>G.MAX_TOKEN_LENGTH)return{allowed:!1,reason:`Reticle pairing token exceeds ${String(G.MAX_TOKEN_LENGTH)} characters`};let a=!Yg(s.hostname);return a&&s.protocol!=="wss:"?{allowed:!1,reason:"a non-local Reticle bridge must use wss://"}:!cA(o,t)||a?n?r===void 0||r.length===0?{allowed:!1,reason:"a pairing token is required outside localhost"}:{allowed:!0}:{allowed:!1,reason:"Reticle is disabled outside localhost unless allowNonLocalhost is explicitly enabled"}:{allowed:!0}}var sj=20,aj="[Reticle] killed for this page. Restart your dev server or reload the page to bring it back.",cj="Session ended - lost connection to Reticle (the agent is no longer running).";function lj(t,e){return t===void 0||t===md?e():t}function dj(){try{let t=new URL(window.location.href);if(!t.searchParams.has(sh))return;t.searchParams.delete(sh),window.history.replaceState(window.history.state,"",t.toString())}catch{}}function BS(t){let e=new URLSearchParams(t),n={},r=e.get(Gn.SESSION),o=e.get(Gn.PROJECT),s=VS(yn,e.get(Gn.HUD));return r!==null&&r.length>0&&(n.session=r),o!==null&&o.length>0&&(n.projectId=o),s!==void 0&&(n.hud=s),n}function uj(t){return t===void 0?{placed:[]}:{remember:t,placed:yn.SHOWN===t?[]:[t]}}function X1(t,e){var s;let n=BS(e),r=t.session!==void 0&&t.session!==md?t.session:void 0,o=(s=t.projectId)!=null?s:n.projectId;return{session:r!=null?r:n.session,projectId:o!==void 0&&o.length>0?o:void 0}}function pj(t){return{t:t.t,seq:t.seq,type:t.type,sessionId:t.sessionId,ref:t.ref,documentId:t.documentId,editEpoch:0===t.editEpoch?void 0:t.editEpoch,data:t.data}}var Mr,xp,La,mo,ka,Gm,Ap,ns,Oe,Kl,Da,ri,yp,Wl,vp,Ma,go,zl,rs,Rp,os,Yl,Pa,Eo,Xl,oi,Sn,Z1,bo,Q1,J1,ek,tk,nk,ql=class{constructor(){b(this,Sn);b(this,Mr);b(this,xp,new Map);b(this,La,[]);b(this,mo,!1);b(this,ka,"default");b(this,Gm,qx(Math.random));b(this,Ap,0);b(this,ns);b(this,Oe);b(this,Kl,new Map);b(this,Da,[]);b(this,ri);b(this,yp);b(this,Wl,!1);b(this,vp,!1);b(this,Ma);b(this,go);b(this,zl,0);b(this,rs);b(this,Rp,{});b(this,os);b(this,Yl,!1);b(this,Pa);b(this,Eo);b(this,Xl,[]);b(this,oi);b(this,bo,(e,n,r)=>{var s,a,l;let o=pj({seq:c(this,zl),t:Math.round(performance.now()-c(this,Ap)),type:e,sessionId:c(this,ka),documentId:c(this,Gm),editEpoch:Gd.current,data:n,ref:r});try{(s=c(this,Mr))==null||s.sendEvent(o),f(this,zl,c(this,zl)+1),(a=c(this,ns))==null||a.update({connected:!0,events:c(this,zl)}),e===x.ROUTE_CHANGE&&((l=c(this,Oe))==null||l.refilterFlows())}catch{}})}connect(e={}){var h,m,g,T,_,A,N;if(c(this,mo)){let y=N0(e,c(this,rs));y!==void 0&&(f(this,rs,y),(h=c(this,Mr))==null||h.redialAfterRefusal()),E(this,Sn,J1).call(this,e);return}if(typeof window=="undefined"||typeof document=="undefined")return;let n=globalThis.process,r=(m=n==null?void 0:n.env)==null?void 0:m.NODE_ENV;if(R0(r,e.allowInProduction===!0)){globalThis.console.warn("[Reticle] disabled in production (NODE_ENV=production). Gate the import behind import.meta.env.DEV, or pass allowInProduction:true to override.");return}dj();let o=oj((g=e.url)!=null?g:v_(ng)),s=o.url;o.adjusted&&globalThis.console.warn(`[Reticle] bridge URL has no path; using ${s} (the bridge only accepts WebSocket upgrades on ${As}).`);let a=ij(window.location.hostname,s,e.allowNonLocalhost===!0,e.token,window.location.protocol);if(!a.allowed){globalThis.console.warn(`[Reticle] ${(T=a.reason)!=null?T:"connection blocked"}`);return}e.root!==void 0&&e.root.length>0&&(globalThis[Zp]=e.root);let l=(_=e.sdkVersion)!=null?_:globalThis[Rx];f(this,os,typeof l=="string"&&l.length>0?l:void 0);let d=X1(e,window.location.search),u=lj(d.session,()=>"");f(this,ka,Bv(u.length>0?u:void 0,typeof globalThis.sessionStorage=="undefined"?void 0:globalThis.sessionStorage,()=>{var y;return typeof((y=globalThis.crypto)==null?void 0:y.randomUUID)=="function"?`s${globalThis.crypto.randomUUID()}`:`s${Date.now().toString(36)}`})),f(this,rs,e.token!==void 0&&e.token.length>0?e.token:void 0),f(this,Eo,d.projectId),f(this,Rp,v0(e)),E(this,Sn,Q1).call(this,e.redact),f(this,Ap,performance.now()),f(this,xp,gw()),f(this,Mr,new ch({url:s,hello:()=>E(this,Sn,ek).call(this),handleCommand:y=>E(this,Sn,tk).call(this,y),onConnected:()=>{var y;f(this,vp,!0),(y=c(this,Oe))==null||y.sessionStart()},onConnectionLost:()=>{var y;vc(),((y=c(this,Oe))==null?void 0:y.sessionActive)===!0&&c(this,Oe).setState($e.ENDED,cj)},onUnreachable:({url:y,attempts:v})=>{var O;fr(dh(y,v)),(O=c(this,Oe))==null||O.showUnreachable(y,v)}})),$f(()=>{var y;return(y=c(this,Mr))==null?void 0:y.reannounce()}),Wy(e.exposePresenter===!0),rv(e.testIdAttribute),e.networkBodyMaxChars!==void 0&&Ww(e.networkBodyMaxChars);let p=c(this,bo);f(this,Yl,e.captureNetworkBodies===!0),f(this,Pa,typeof e.sourceMapping=="boolean"?e.sourceMapping:void 0),f(this,La,vO(p,{captureBodies:c(this,Yl),...e.captureErrorBodies===void 0?{}:{captureErrorBodies:e.captureErrorBodies}})),e.overlay===!0&&(f(this,ns,RO()),c(this,ns).update({connected:!0,events:0})),f(this,ri,BS(window.location.search).hud),e.present!==!1&&yn.REMOVED!==c(this,ri)&&E(this,Sn,Z1).call(this,e),e.recorder===!0&&(f(this,Ma,qO({emit:p,now:()=>Date.now()})),c(this,Ma).mount()),((A=e.annotate)!=null?A:e.present!==!1)&&(f(this,go,new ea({emit:p,now:()=>Date.now(),onMark:y=>{var v;return(v=c(this,Oe))==null?void 0:v.log(ke.HUMAN,`\u{1F6A9} #${String(y.index)} ${y.label}${y.source!==void 0?` \xB7 ${y.source}`:""} \u2014 ${y.note}`)},shouldBlock:()=>{var y,v;return(v=(y=c(this,yp))==null?void 0:y.call(this).blockPageInteractions)!=null?v:!0}})),c(this,go).mount(),(N=c(this,Oe))==null||N.bindAnnotator(c(this,go))),c(this,Mr).connect(),f(this,mo,!0)}get connected(){return c(this,mo)}routes(e){tv(e)}signal(e,n={}){c(this,bo).call(this,x.SIGNAL,{name:e,data:n})}busy(e){return Qy(e,(n,r)=>{this.signal(n,r)})}state(e,n){c(this,bo).call(this,x.STATE_CHANGE,{name:e,value:n})}renderCommit(e){e>0&&c(this,bo).call(this,x.RENDER_COMMIT,{commits:e})}describe(e){bc(e)}endSession(){var e;(e=c(this,Oe))==null||e.setState($e.ENDED)}observeHotUpdates(e){Gd.observe(e)}disconnect(){var e,n,r,o,s,a;c(this,mo)&&(yO(c(this,bo),c(this,La)),f(this,La,[]),(e=c(this,Mr))==null||e.close(),f(this,Mr,void 0),(n=c(this,ns))==null||n.destroy(),f(this,ns,void 0),(r=c(this,Oe))==null||r.sessionEnd(),(o=c(this,Oe))==null||o.destroy(),f(this,Oe,void 0),(s=c(this,Ma))==null||s.destroy(),f(this,Ma,void 0),(a=c(this,go))==null||a.destroy(),f(this,go,void 0),vc(),f(this,mo,!1))}};Mr=new WeakMap,xp=new WeakMap,La=new WeakMap,mo=new WeakMap,ka=new WeakMap,Gm=new WeakMap,Ap=new WeakMap,ns=new WeakMap,Oe=new WeakMap,Kl=new WeakMap,Da=new WeakMap,ri=new WeakMap,yp=new WeakMap,Wl=new WeakMap,vp=new WeakMap,Ma=new WeakMap,go=new WeakMap,zl=new WeakMap,rs=new WeakMap,Rp=new WeakMap,os=new WeakMap,Yl=new WeakMap,Pa=new WeakMap,Eo=new WeakMap,Xl=new WeakMap,oi=new WeakMap,Sn=new WeakSet,Z1=function(e){c(this,Wl)||(f(this,Wl,!0),Promise.resolve().then(()=>(C1(),I1)).then(({Presenter:n})=>Promise.resolve().then(()=>(tl(),WI)).then(r=>({Presenter:n,settings:r}))).then(({Presenter:n,settings:r})=>{if(!c(this,mo))return;f(this,yp,r.getPresenterSettings);let o={};e.pace!==void 0&&(o.paceMs=e.pace),e.narrationDwellMs!==void 0&&(o.narrationDwellMs=e.narrationDwellMs),e.border!==void 0&&(o.border=e.border),e.logMax!==void 0&&(o.logMax=e.logMax),e.endedFadeMs!==void 0&&(o.endedFadeMs=e.endedFadeMs),e.idleEndMs!==void 0&&(o.idleEndMs=e.idleEndMs),o.sessionId=c(this,ka),c(this,Eo)!==void 0&&(o.projectId=c(this,Eo)),o.onControl=a=>c(this,bo).call(this,x.HUMAN_CONTROL,a.text!==void 0?{kind:a.kind,text:a.text}:{kind:a.kind}),o.onHudUse=a=>c(this,bo).call(this,x.HUD_USED,{...a}),o.onKill=()=>{this.disconnect(),fr(aj)};let s=new n(o);f(this,Oe,s),s.mount(),s.showSdkVersion(c(this,os));for(let a of c(this,Kl).values())s.handlePush(a);c(this,Kl).clear(),0<c(this,Da).length&&s.sessionStart();for(let a of c(this,Da).splice(0))s.narrate(a.text,a.level,a.actor,a.summary);c(this,ri)!==void 0&&s.placeHud(c(this,ri),void 0),f(this,ri,void 0),Promise.resolve().then(()=>(Y1(),z1)).then(a=>{var d;if(!c(this,mo))return;let l=a.mountTour({document,storage:a.safeLocalStorage(),projectId:(d=BS(window.location.search).projectId)!=null?d:window.location.origin,isDriving:()=>We.IDLE!==s.mode,search:window.location.search,navigator,copy:u=>{var p,h;return(h=(p=navigator.clipboard)==null?void 0:p.writeText(u).then(()=>!0,()=>!1))!=null?h:!1},select:u=>{let p=window.getSelection();if(p===null)return;let h=document.createRange();h.selectNodeContents(u),p.removeAllRanges(),p.addRange(h)}});l!==void 0&&c(this,La).push(l.destroy)}),c(this,vp)&&s.sessionStart(),c(this,go)!==void 0&&s.bindAnnotator(c(this,go))}).catch(()=>{}))},bo=new WeakMap,Q1=function(e){tA(eA(e,fr)),f(this,Xl,nA(e))},J1=function(e){var r;if(c(this,Eo)!==void 0)return;let n=X1(e,window.location.search).projectId;n!==void 0&&(f(this,Eo,n),(r=c(this,Mr))==null||r.reannounce())},ek=function(){return{kind:Kt.HELLO,protocolVersion:Hp,sessionId:c(this,ka),...c(this,Eo)===void 0?{}:{projectId:c(this,Eo)},url:Of(),title:Fr(document.title),adapters:Bd(),...c(this,rs)===void 0?{}:{token:c(this,rs)},...c(this,Rp),hasCapabilities:Hf(),channels:xw(),platform:Aw(),commands:yw(),captureBodies:c(this,Yl),...c(this,Pa)===void 0?{}:{sourceMapping:c(this,Pa)},...c(this,os)===void 0?{}:{sdkVersion:c(this,os)},contract:mE,contractParts:{commands:[...Rd.commands],events:[...Rd.events],actions:[...Rd.actions]},...c(this,Xl).length===0?{}:{redactKeys:c(this,Xl)}}},tk=async function(e){var r,o,s,a,l,d,u,p;if(e.name===k.MARKERS){let h=Uv(document),m=c(this,os)!==void 0||c(this,Pa)!==void 0,g=Fv({buildPlugin:m,adapters:Bd(),markers:h});return{ok:!0,result:{markers:h,...g.length===0?{}:{notApplicable:g}}}}if(e.name===k.NARRATE)return c(this,Oe)===void 0&&c(this,Wl)?(c(this,Da).length<sj&&c(this,Da).push({text:wn(e.args.text),level:wn(e.args.level,"info"),actor:q1(e.args),summary:e.args.summary===!0}),{ok:!0,result:{shown:!1,buffered:!0}}):((r=c(this,Oe))==null||r.sessionStart(),(o=c(this,Oe))==null||o.narrate(wn(e.args.text),wn(e.args.level,"info"),q1(e.args),e.args.summary===!0),{ok:!0,result:{shown:c(this,Oe)!==void 0}});if(e.name===k.SESSION_CONFIG){let h=e.args.idleEndMs;typeof h=="number"&&((s=c(this,Oe))==null||s.setIdleEndMs(h));let m=VS(yn,e.args.hud),g=VS(Qp,e.args.corner),T=c(this,Oe),_;if(T!==void 0)_=T.placeHud(m,g);else{let A=uj(m);A.remember!==void 0&&f(this,ri,A.remember),_=A.placed}return{ok:!0,result:{applied:c(this,Oe)!==void 0,idleEndMs:h,...0<_.length?{hud:_}:{}}}}if(e.name===k.PRESENTER||e.name===k.FLOWS||e.name===k.FLOW_PROGRESS||e.name===k.PLAN||e.name===k.IMPACT)return c(this,Oe)===void 0?(c(this,Kl).set(e.name,e),{ok:!0,result:{applied:!1,buffered:!0}}):(c(this,Oe).handlePush(e),{ok:!0,result:{applied:!0}});let n=c(this,xp).get(e.name);if(n===void 0)return{ok:!1,error:`unknown command '${e.name}'`};(a=c(this,Oe))==null||a.sessionStart(),await E(this,Sn,nk).call(this,e),_E(Td.HARNESS===e.by),DE((l=e.outward)==null?void 0:l.allowed);try{let h=await n(e.args);return(d=c(this,oi))==null||d.result(Nn.PASS),{ok:!0,result:h}}catch(h){return(u=c(this,oi))==null||u.result(Nn.FAIL),{ok:!1,error:h instanceof Error?h.message:String(h)}}finally{_E(!1),DE(void 0),f(this,oi,void 0),(p=c(this,Oe))==null||p.scheduleIdle()}},nk=async function(e){let n=c(this,Oe);if(n===void 0)return;n.setMode(NO(e.name)),f(this,oi,void 0);let r=Td.HARNESS===e.by?Jt.HARNESS:Jt.AGENT;if(e.name===k.ACT){let o=wn(e.args.ref),s=gh(o);f(this,oi,n.log(ke.ACT,`${uu(wn(e.args.action))} ${s}`,void 0,r)),await n.beforeAct(o,wn(e.args.action),s)}else if(e.name===k.ACT_SEQUENCE){let o=Array.isArray(e.args.steps)?e.args.steps:[];for(let s of o){let a=s,l=wn(a.ref),d=gh(l);f(this,oi,n.log(ke.ACT,`${uu(wn(a.action))} ${d}`,void 0,r)),await n.beforeAct(l,wn(a.action),d)}}else{let o=wO(e.name,e.args);n.status(o),n.log(ke.READ,o,void 0,r)}};function q1(t){return Td.HARNESS===t.actor?Jt.HARNESS:Jt.AGENT}function VS(t,e){return Object.values(t).includes(e)?e:void 0}var jS=globalThis,rk,Zl=(rk=jS.__reticleInstance)!=null?rk:jS.__reticleInstance=new ql;D();Ye();ko();$s();jd();$s();function sk(t){try{return KS(t,new WeakMap)}catch{return t}}function KS(t,e){if(typeof t!="object"||t===null)return t;let n=e.get(t);if(n!==void 0)return n;if(Array.isArray(t)){let s=[];e.set(t,s);for(let a of t)s.push(KS(a,e));return s}let r=Object.getPrototypeOf(t);if(r!==Object.prototype&&r!==null)return t;let o={};e.set(t,o);for(let[s,a]of Object.entries(t))o[s]=KS(a,e);return o}function fj(t){return typeof t!="object"||t===null?String(t):JSON.stringify(t,(e,n)=>{if(typeof n!="object"||n===null||Array.isArray(n))return n;let r=Object.getPrototypeOf(n);if(r!==Object.prototype&&r!==null)return n;let o=n,s={};for(let a of Object.keys(o).sort())s[a]=o[a];return s})}function ak(t){let e={getState:()=>{var r,o,s;let n={};for(let a of t.getQueryCache().getAll()){let l=a.queryKey.map(fj).join("/");n[l]={status:a.state.status,fetchStatus:a.state.fetchStatus,isStale:(r=a.isStale)==null?void 0:r.call(a),isInvalidated:a.state.isInvalidated,dataUpdatedAt:a.state.dataUpdatedAt,error:(s=(o=a.state.error)==null?void 0:o.message)!=null?s:null,data:a.state.data}}return n},subscribe:n=>t.getQueryCache().subscribe(n)};return Df(e,t),e}function ck(t,e){return{getState:()=>{let n={};for(let[r,o]of Object.entries(e))n[r]=t.get(o);return n},subscribe:n=>{let r=Object.values(e).map(o=>t.sub(o,n));return()=>{for(let o of r)o()}}}}function lk(t){return{getState:()=>t.getSnapshot(),subscribe:e=>{let n=t.subscribe(e);return()=>n.unsubscribe()}}}function dk(t,e,n){return{getState:()=>e(t),subscribe:r=>n(t,r)}}function uk(t,e,n){return{getState:()=>e(t),subscribe:r=>n(()=>e(t),()=>r())}}var ok={HAS_VALUE:"hasValue",LOADING:"loading",HAS_ERROR:"hasError"};function hj(t){if(t.state===ok.HAS_ERROR){let e=t.contents;return{status:t.state,value:null,error:e instanceof Error?e.message:String(e)}}return t.state!==ok.HAS_VALUE?{status:t.state,value:null,error:null}:{status:t.state,value:t.contents,error:null}}function pk(t,e,n){return{getState:()=>{let r=e(),o={};for(let[s,a]of Object.entries(t))o[s]=hj(r.getLoadable(a));return o},subscribe:n}}function ik(t){if(typeof t=="function"){t();return}t.unsubscribe()}function fk(t,e=fr){let n=!1;return{getState:()=>{let r,o=!1;return ik(t.subscribe(s=>{r=sk(s),o=!0})),!o&&!n&&(n=!0,e("[reticle] a store passed to svelteStore did not call its subscriber synchronously, so its current value cannot be read. reticle_state will report undefined for it. Svelte stores always call back immediately; an RxJS Observable does not unless it is a BehaviorSubject.")),r},subscribe:r=>{let o=!0,s=t.subscribe(()=>{o||r()});return o=!1,()=>ik(s)}}}var mj={detached:!0,flush:"sync"};function hk(t){return{getState:()=>sk(t.$state),subscribe:e=>t.$subscribe(()=>e(),{...mj})}}function mk(t){let e=t,n=new Set;return{store:{getState:()=>e,subscribe:o=>(n.add(o),()=>n.delete(o))},push:o=>{e=o;for(let s of n)s()}}}vi();function gk(t={}){var n;let e=(n=t.target)!=null?n:Zl;return{signal(r,o={}){e.connected&&e.signal(r,o)},state(r,o){e.connected&&e.state(r,o)}}}function Ek(t,e,n,r){let o=e();return t.signal(n,r),o}vi();function bk(t){let e={};t.testids!==void 0&&(e.testids=[...t.testids]),t.signals!==void 0&&(e.signals=[...t.signals]),t.stores!==void 0&&(e.stores=[...t.stores]),bc(e)}NE();mt();lt();Zb();Ub();var gj=t=>Jy((e,n)=>{Zl.signal(e,n)},t);return Nk(Ej);})();
1781
1772
  if(typeof module==="object"&&module&&module.exports)module.exports=ReticleSdk;