@qartisan/playwright-loupe 0.1.1 → 0.1.3

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.
@@ -4,16 +4,18 @@
4
4
  <meta charset="utf-8" />
5
5
  <meta name="viewport" content="width=device-width, initial-scale=1" />
6
6
  <title>Loupe report</title>
7
- <script type="module">var e,t,n,r,i,a,o,s,c,l,u,d,f,p,m,h={},g=[],_=/acit|ex(?:s|g|n|p|$)|rph|grid|ows|mnc|ntw|ine[ch]|zoo|^ord|itera/i,v=Array.isArray;function y(e,t){for(var n in t)e[n]=t[n];return e}function ee(e){e&&e.parentNode&&e.parentNode.removeChild(e)}function b(t,n,r){var i,a,o,s={};for(o in n)o==`key`?i=n[o]:o==`ref`?a=n[o]:s[o]=n[o];if(arguments.length>2&&(s.children=arguments.length>3?e.call(arguments,2):r),typeof t==`function`&&t.defaultProps!=null)for(o in t.defaultProps)s[o]===void 0&&(s[o]=t.defaultProps[o]);return x(t,s,i,a,null)}function x(e,r,i,a,o){var s={type:e,props:r,key:i,ref:a,__k:null,__:null,__b:0,__e:null,__c:null,constructor:void 0,__v:o??++n,__i:-1,__u:0};return o==null&&t.vnode!=null&&t.vnode(s),s}function S(e){return e.children}function te(e,t){this.props=e,this.context=t}function ne(e,t){if(t==null)return e.__?ne(e.__,e.__i+1):null;for(var n;t<e.__k.length;t++)if((n=e.__k[t])!=null&&n.__e!=null)return n.__e;return typeof e.type==`function`?ne(e):null}function C(e){if(e.__P&&e.__d){var n=e.__v,r=n.__e,i=[],a=[],o=y({},n);o.__v=n.__v+1,t.vnode&&t.vnode(o),ue(e.__P,o,n,e.__n,e.__P.namespaceURI,32&n.__u?[r]:null,i,r??ne(n),!!(32&n.__u),a),o.__v=n.__v,o.__.__k[o.__i]=o,fe(i,o,a),n.__e=n.__=null,o.__e!=r&&w(o)}}function w(e){if((e=e.__)!=null&&e.__c!=null)return e.__e=e.__c.base=null,e.__k.some(function(t){if(t!=null&&t.__e!=null)return e.__e=e.__c.base=t.__e}),w(e)}function re(e){(!e.__d&&(e.__d=!0)&&i.push(e)&&!T.__r++||a!=t.debounceRendering)&&((a=t.debounceRendering)||o)(T)}function T(){try{for(var e,t=1;i.length;)i.length>t&&i.sort(s),e=i.shift(),t=i.length,C(e)}finally{i.length=T.__r=0}}function ie(e,t,n,r,i,a,o,s,c,l,u){var d,f,p,m,_,v,y=r&&r.__k||g,ee=t.length;for(c=ae(n,t,y,c,ee),d=0;d<ee;d++)(p=n.__k[d])!=null&&(f=p.__i!=-1&&y[p.__i]||h,p.__i=d,v=ue(e,p,f,i,a,o,s,c,l,u),m=p.__e,p.ref&&f.ref!=p.ref&&(f.ref&&he(f.ref,null,p),u.push(p.ref,p.__c||m,p)),_==null&&m!=null&&(_=m),4&p.__u?(c=oe(p,c,e),f.__e&&(f.__e=null)):typeof p.type==`function`&&v!==void 0?c=v:m&&(c=m.nextSibling),p.__u&=-7);return n.__e=_,c}function ae(e,t,n,r,i){var a,o,s,c,l,u=n.length,d=u,f=0;for(e.__k=Array(i),a=0;a<i;a++)(o=t[a])!=null&&typeof o!=`boolean`&&typeof o!=`function`?(typeof o==`string`||typeof o==`number`||typeof o==`bigint`||o.constructor==String?o=e.__k[a]=x(null,o,null,null,null):v(o)?o=e.__k[a]=x(S,{children:o},null,null,null):o.constructor===void 0&&o.__b>0?o=e.__k[a]=x(o.type,o.props,o.key,o.ref?o.ref:null,o.__v):e.__k[a]=o,c=a+f,o.__=e,o.__b=e.__b+1,s=null,(l=o.__i=se(o,n,c,d))!=-1&&(d--,(s=n[l])&&(s.__u|=2)),s==null||s.__v==null?(l==-1&&(i>u?f--:i<u&&f++),typeof o.type!=`function`&&(o.__u|=4)):l!=c&&(l==c-1?f--:l==c+1?f++:(l>c?f--:f++,o.__u|=4))):e.__k[a]=null;if(d)for(a=0;a<u;a++)(s=n[a])!=null&&!(2&s.__u)&&(s.__e==r&&(r=ne(s)),ge(s,s));return r}function oe(e,t,n){var r,i;if(typeof e.type==`function`){for(r=e.__k,i=0;r&&i<r.length;i++)r[i]&&(r[i].__=e,t=oe(r[i],t,n));return t}e.__e!=t&&(t&&e.type&&!t.parentNode&&(t=ne(e)),t=n.insertBefore(e.__e,t||null));do t&&=t.nextSibling;while(t!=null&&t.nodeType==8);return t}function se(e,t,n,r){var i,a,o,s=e.key,c=e.type,l=t[n],u=l!=null&&!(2&l.__u);if(l===null&&s==null||u&&s==l.key&&c==l.type)return n;if(r>+!!u){for(i=n-1,a=n+1;i>=0||a<t.length;)if((l=t[o=i>=0?i--:a++])!=null&&!(2&l.__u)&&s==l.key&&c==l.type)return o}return-1}function ce(e,t,n){t[0]==`-`?e.setProperty(t,n??``):e[t]=n==null?``:typeof n!=`number`||_.test(t)?n:n+`px`}function E(e,t,n,r,i){var a,o;n:if(t==`style`){if(typeof n==`string`)e.style.cssText=n;else{if(typeof r==`string`&&(e.style.cssText=r=``),r)for(t in r)n&&t in n||ce(e.style,t,``);if(n)for(t in n)r&&n[t]==r[t]||ce(e.style,t,n[t])}}else if(t[0]==`o`&&t[1]==`n`)a=t!=(t=t.replace(d,`$1`)),o=t.toLowerCase(),t=o in e||t==`onFocusOut`||t==`onFocusIn`?o.slice(2):t.slice(2),e.l||={},e.l[t+a]=n,n?r?n[u]=r[u]:(n[u]=f,e.addEventListener(t,a?m:p,a)):e.removeEventListener(t,a?m:p,a);else{if(i==`http://www.w3.org/2000/svg`)t=t.replace(/xlink(H|:h)/,`h`).replace(/sName$/,`s`);else if(t!=`width`&&t!=`height`&&t!=`href`&&t!=`list`&&t!=`form`&&t!=`tabIndex`&&t!=`download`&&t!=`rowSpan`&&t!=`colSpan`&&t!=`role`&&t!=`popover`&&t in e)try{e[t]=n??``;break n}catch{}typeof n==`function`||(n==null||!1===n&&t[4]!=`-`?e.removeAttribute(t):e.setAttribute(t,t==`popover`&&n==1?``:n))}}function le(e){return function(n){if(this.l){var r=this.l[n.type+e];if(n[l]==null)n[l]=f++;else if(n[l]<r[u])return;return r(t.event?t.event(n):n)}}}function ue(e,n,r,i,a,o,s,c,l,u){var d,f,p,m,h,_,b,x,C,w,re,T,ae,oe,se,ce,E=n.type;if(n.constructor!==void 0)return null;128&r.__u&&(l=!!(32&r.__u),o=[c=n.__e=r.__e]),(d=t.__b)&&d(n);n:if(typeof E==`function`){f=s.length;try{if(C=n.props,w=E.prototype&&E.prototype.render,re=(d=E.contextType)&&i[d.__c],T=d?re?re.props.value:d.__:i,r.__c?x=(p=n.__c=r.__c).__=p.__E:(w?n.__c=p=new E(C,T):(n.__c=p=new te(C,T),p.constructor=E,p.render=_e),re&&re.sub(p),p.state||(p.state={}),p.__n=i,m=p.__d=!0,p.__h=[],p._sb=[]),w&&p.__s==null&&(p.__s=p.state),w&&E.getDerivedStateFromProps!=null&&(p.__s==p.state&&(p.__s=y({},p.__s)),y(p.__s,E.getDerivedStateFromProps(C,p.__s))),h=p.props,_=p.state,p.__v=n,m)w&&E.getDerivedStateFromProps==null&&p.componentWillMount!=null&&p.componentWillMount(),w&&p.componentDidMount!=null&&p.__h.push(p.componentDidMount);else{if(w&&E.getDerivedStateFromProps==null&&C!==h&&p.componentWillReceiveProps!=null&&p.componentWillReceiveProps(C,T),n.__v==r.__v||!p.__e&&p.shouldComponentUpdate!=null&&!1===p.shouldComponentUpdate(C,p.__s,T)){n.__v!=r.__v&&(p.props=C,p.state=p.__s,p.__d=!1),n.__e=r.__e,n.__k=r.__k,n.__k.some(function(e){e&&(e.__=n)}),g.push.apply(p.__h,p._sb),p._sb=[],p.__h.length&&s.push(p),c=ne(r);break n}p.componentWillUpdate!=null&&p.componentWillUpdate(C,p.__s,T),w&&p.componentDidUpdate!=null&&p.__h.push(function(){p.componentDidUpdate(h,_,b)})}if(p.context=T,p.props=C,p.__P=e,p.__e=!1,ae=t.__r,oe=0,w)p.state=p.__s,p.__d=!1,ae&&ae(n),d=p.render(p.props,p.state,p.context),g.push.apply(p.__h,p._sb),p._sb=[];else do p.__d=!1,ae&&ae(n),d=p.render(p.props,p.state,p.context),p.state=p.__s;while(p.__d&&++oe<25);p.state=p.__s,p.getChildContext!=null&&(i=y(y({},i),p.getChildContext())),w&&!m&&p.getSnapshotBeforeUpdate!=null&&(b=p.getSnapshotBeforeUpdate(h,_)),se=d!=null&&d.type===S&&d.key==null?pe(d.props.children):d,c=ie(e,v(se)?se:[se],n,r,i,a,o,s,c,l,u),p.base=n.__e,n.__u&=-161,p.__h.length&&s.push(p),x&&(p.__E=p.__=null)}catch(e){if(s.length=f,n.__v=null,l||o!=null){if(e.then){for(n.__u|=l?160:128;c&&c.nodeType==8&&c.nextSibling;)c=c.nextSibling;o!=null&&(o[o.indexOf(c)]=null),n.__e=c}else if(o!=null)for(ce=o.length;ce--;)ee(o[ce])}else n.__e=r.__e;n.__k??=r.__k||[],e.then||de(n),t.__e(e,n,r)}}else o==null&&n.__v==r.__v?(n.__k=r.__k,n.__e=r.__e):c=n.__e=me(r.__e,n,r,i,a,o,s,l,u);return(d=t.diffed)&&d(n),128&n.__u?void 0:c}function de(e){e&&(e.__c&&(e.__c.__e=!0),e.__k&&e.__k.some(de))}function fe(e,n,r){for(var i=0;i<r.length;i++)he(r[i],r[++i],r[++i]);t.__c&&t.__c(n,e),e.some(function(n){try{e=n.__h,n.__h=[],e.some(function(e){e.call(n)})}catch(e){t.__e(e,n.__v)}})}function pe(e){return typeof e!=`object`||!e||e.__b>0?e:v(e)?e.map(pe):e.constructor===void 0?y({},e):null}function me(n,r,i,a,o,s,c,l,u){var d,f,p,m,g,_,y,b=i.props||h,x=r.props,S=r.type;if(S==`svg`?o=`http://www.w3.org/2000/svg`:S==`math`?o=`http://www.w3.org/1998/Math/MathML`:o||=`http://www.w3.org/1999/xhtml`,s!=null){for(d=0;d<s.length;d++)if((g=s[d])&&`setAttribute`in g==!!S&&(S?g.localName==S:g.nodeType==3)){n=g,s[d]=null;break}}if(n==null){if(S==null)return document.createTextNode(x);n=document.createElementNS(o,S,x.is&&x),l&&=(t.__m&&t.__m(r,s),!1),s=null}if(S==null)b===x||l&&n.data==x||(n.data=x);else{if(s=S==`textarea`&&x.defaultValue!=null?null:s&&e.call(n.childNodes),!l&&s!=null)for(b={},d=0;d<n.attributes.length;d++)b[(g=n.attributes[d]).name]=g.value;for(d in b)g=b[d],d==`dangerouslySetInnerHTML`?p=g:d==`children`||d in x||d==`value`&&`defaultValue`in x||d==`checked`&&`defaultChecked`in x||E(n,d,null,g,o);for(d in x)g=x[d],d==`children`?m=g:d==`dangerouslySetInnerHTML`?f=g:d==`value`?_=g:d==`checked`?y=g:l&&typeof g!=`function`||b[d]===g||E(n,d,g,b[d],o);if(f)l||p&&(f.__html==p.__html||f.__html==n.innerHTML)||(n.innerHTML=f.__html),r.__k=[];else if(p&&(n.innerHTML=``),ie(r.type==`template`?n.content:n,v(m)?m:[m],r,i,a,S==`foreignObject`?`http://www.w3.org/1999/xhtml`:o,s,c,s?s[0]:i.__k&&ne(i,0),l,u),s!=null)for(d=s.length;d--;)ee(s[d]);l&&S!=`textarea`||(d=`value`,S==`progress`&&_==null?n.removeAttribute(`value`):_!=null&&(_!==n[d]||S==`progress`&&!_||S==`option`&&_!=b[d])&&E(n,d,_,b[d],o),d=`checked`,y!=null&&y!=n[d]&&E(n,d,y,b[d],o))}return n}function he(e,n,r){try{if(typeof e==`function`){var i=typeof e.__u==`function`;i&&e.__u(),i&&n==null||(e.__u=e(n))}else e.current=n}catch(e){t.__e(e,r)}}function ge(e,n,r){var i,a;if(t.unmount&&t.unmount(e),(i=e.ref)&&(i.current&&i.current!=e.__e||he(i,null,n)),(i=e.__c)!=null){if(i.componentWillUnmount)try{i.componentWillUnmount()}catch(e){t.__e(e,n)}i.base=i.__P=i.__n=null}if(i=e.__k)for(a=0;a<i.length;a++)i[a]&&ge(i[a],n,r||typeof e.type!=`function`);r||ee(e.__e),e.__c=e.__=e.__e=void 0}function _e(e,t,n){return this.constructor(e,n)}function ve(n,r,i){var a,o,s,c;r==document&&(r=document.documentElement),t.__&&t.__(n,r),o=(a=typeof i==`function`)?null:i&&i.__k||r.__k,s=[],c=[],ue(r,n=(!a&&i||r).__k=b(S,null,[n]),o||h,h,r.namespaceURI,!a&&i?[i]:o?null:r.firstChild?e.call(r.childNodes):null,s,!a&&i?i:o?o.__e:r.firstChild,a,c),fe(s,n,c),n.props.children=null}e=g.slice,t={__e:function(e,t,n,r){for(var i,a,o;t=t.__;)if((i=t.__c)&&!i.__)try{if((a=i.constructor)&&a.getDerivedStateFromError!=null&&(i.setState(a.getDerivedStateFromError(e)),o=i.__d),i.componentDidCatch!=null&&(i.componentDidCatch(e,r||{}),o=i.__d),o)return i.__E=i}catch(t){e=t}throw e}},n=0,r=function(e){return e!=null&&e.constructor===void 0},te.prototype.setState=function(e,t){var n=this.__s!=null&&this.__s!=this.state?this.__s:this.__s=y({},this.state);typeof e==`function`&&(e=e(y({},n),this.props)),e&&y(n,e),e!=null&&this.__v&&(t&&this._sb.push(t),re(this))},te.prototype.forceUpdate=function(e){this.__v&&(this.__e=!0,e&&this.__h.push(e),re(this))},te.prototype.render=S,i=[],o=typeof Promise==`function`?Promise.prototype.then.bind(Promise.resolve()):setTimeout,s=function(e,t){return e.__v.__b-t.__v.__b},T.__r=0,c=Math.random().toString(8),l=`__d`+c,u=`__a`+c,d=/(PointerCapture)$|Capture$/i,f=0,p=le(!1),m=le(!0);var ye,D,be,xe,Se=0,Ce=[],O=t,we=O.__b,Te=O.__r,Ee=O.diffed,De=O.__c,Oe=O.unmount,ke=O.__;function Ae(e,t){O.__h&&O.__h(D,e,Se||t),Se=0;var n=D.__H||(D.__H={__:[],__h:[]});return e>=n.__.length&&n.__.push({}),n.__[e]}function k(e){return Se=1,je(ze,e)}function je(e,t,n){var r=Ae(ye++,2);if(r.t=e,!r.__c&&(r.__=[n?n(t):ze(void 0,t),function(e){var t=r.__N?r.__N[0]:r.__[0],n=r.t(t,e);t!==n&&(r.__N=[n,r.__[1]],r.__c.setState({}))}],r.__c=D,!D.__f)){var i=function(e,t,n){if(!r.__c.__H)return!0;var i=!1,o=r.__c.props!==e;if(r.__c.__H.__.some(function(e){if(e.__N){i=!0;var t=e.__[0];e.__=e.__N,e.__N=void 0,t!==e.__[0]&&(o=!0)}}),a){var s=a.call(this,e,t,n);return i?s||o:s}return!i||o};D.__f=!0;var a=D.shouldComponentUpdate,o=D.componentWillUpdate;D.componentWillUpdate=function(e,t,n){if(this.__e){var r=a;a=void 0,i(e,t,n),a=r}o&&o.call(this,e,t,n)},D.shouldComponentUpdate=i}return r.__N||r.__}function A(e,t){var n=Ae(ye++,3);!O.__s&&Re(n.__H,t)&&(n.__=e,n.u=t,D.__H.__h.push(n))}function j(e,t){var n=Ae(ye++,4);!O.__s&&Re(n.__H,t)&&(n.__=e,n.u=t,D.__h.push(n))}function M(e){return Se=5,N(function(){return{current:e}},[])}function N(e,t){var n=Ae(ye++,7);return Re(n.__H,t)&&(n.__=e(),n.__H=t,n.__h=e),n.__}function Me(){var e=Ae(ye++,11);if(!e.__){for(var t=D.__v;t!==null&&!t.__m&&t.__!==null;)t=t.__;var n=t.__m||(t.__m=[0,0]);e.__=`P`+n[0]+`-`+n[1]++}return e.__}function Ne(){for(var e;e=Ce.shift();){var t=e.__H;if(e.__P&&t)try{t.__h.some(Ie),t.__h.some(Le),t.__h=[]}catch(n){t.__h=[],O.__e(n,e.__v)}}}O.__b=function(e){D=null,we&&we(e)},O.__=function(e,t){e&&t.__k&&t.__k.__m&&(e.__m=t.__k.__m),ke&&ke(e,t)},O.__r=function(e){Te&&Te(e),ye=0;var t=(D=e.__c).__H;t&&(be===D?(t.__h=[],D.__h=[],t.__.some(function(e){e.__N&&(e.__=e.__N),e.u=e.__N=void 0})):(t.__h.some(Ie),t.__h.some(Le),t.__h=[],ye=0)),be=D},O.diffed=function(e){Ee&&Ee(e);var t=e.__c;t&&t.__H&&(t.__H.__h.length&&(Ce.push(t)!==1&&xe===O.requestAnimationFrame||((xe=O.requestAnimationFrame)||Fe)(Ne)),t.__H.__.some(function(e){e.u&&=(e.__H=e.u,void 0)})),be=D=null},O.__c=function(e,t){t.some(function(e){try{e.__h.some(Ie),e.__h=e.__h.filter(function(e){return!e.__||Le(e)})}catch(n){t.some(function(e){e.__h&&=[]}),t=[],O.__e(n,e.__v)}}),De&&De(e,t)},O.unmount=function(e){Oe&&Oe(e);var t,n=e.__c;n&&n.__H&&(n.__H.__.some(function(e){try{Ie(e)}catch(e){t=e}}),n.__H=void 0,t&&O.__e(t,n.__v))};var Pe=typeof requestAnimationFrame==`function`;function Fe(e){var t,n=function(){clearTimeout(r),Pe&&cancelAnimationFrame(t),setTimeout(e)},r=setTimeout(n,35);Pe&&(t=requestAnimationFrame(n))}function Ie(e){var t=D,n=e.__c;typeof n==`function`&&(e.__c=void 0,n()),D=t}function Le(e){var t=D;e.__c=e.__(),D=t}function Re(e,t){return!e||e.length!==t.length||t.some(function(t,n){return t!==e[n]})}function ze(e,t){return typeof t==`function`?t(e):t}var Be=Symbol.for(`preact-signals`);function Ve(){if(F>1)F--;else{var e,t=!1;for((function(){var e=Ye;for(Ye=void 0;e!==void 0;){var t=e.S;if(t.v===e.v)for(var n=t.t;n!==void 0;n=n.x)n.i===e.i&&(n.i=t.i);e=e.o}})();Ge!==void 0;){var n=Ge;for(Ge=void 0,Ke++;n!==void 0;){var r=n.u;if(n.u=void 0,n.f&=-3,!(8&n.f)&&Qe(n))try{n.c()}catch(n){t||=(e=n,!0)}n=r}}if(Ke=0,F--,t)throw e}}function He(e){if(F>0)return e();Je=++qe,F++;try{return e()}finally{Ve()}}var Ue,P=void 0;function We(e){var t=P,n=Ue;P=void 0,Ue=void 0;try{return e()}finally{P=t,Ue=n}}var Ge=void 0,F=0,Ke=0,qe=0,Je=0,Ye=void 0,Xe=0;function Ze(e){if(P!==void 0){var t=e.n;if(t===void 0||t.t!==P)return t={i:0,S:e,p:P.s,n:void 0,t:P,e:void 0,x:void 0,r:t},P.s!==void 0&&(P.s.n=t),P.s=t,e.n=t,32&P.f&&e.S(t),t;if(t.i===-1)return t.i=0,t.n!==void 0&&(t.n.p=t.p,t.p!==void 0&&(t.p.n=t.n),t.p=P.s,t.n=void 0,P.s.n=t,P.s=t),t}}function I(e,t){this.v=e,this.i=0,this.n=void 0,this.t=void 0,this.l=0,this.W=t?.watched,this.Z=t?.unwatched,this.name=t?.name}I.prototype.brand=Be,I.prototype.h=function(){return!0},I.prototype.S=function(e){var t=this,n=this.t;n!==e&&e.e===void 0&&(e.x=n,this.t=e,n===void 0?We(function(){var e;(e=t.W)==null||e.call(t)}):n.e=e)},I.prototype.U=function(e){var t=this;if(this.t!==void 0){var n=e.e,r=e.x;n!==void 0&&(n.x=r,e.e=void 0),r!==void 0&&(r.e=n,e.x=void 0),e===this.t&&(this.t=r,r===void 0&&We(function(){var e;(e=t.Z)==null||e.call(t)}))}},I.prototype.subscribe=function(e){var t=this;return st(function(){var n=t.value;We(function(){return e(n)})},{name:`sub`})},I.prototype.valueOf=function(){return this.value},I.prototype.toString=function(){return this.value+``},I.prototype.toJSON=function(){return this.value},I.prototype.peek=function(){var e=this;return We(function(){return e.value})},Object.defineProperty(I.prototype,"value",{get:function(){var e=Ze(this);return e!==void 0&&(e.i=this.i),this.v},set:function(e){if(e!==this.v){if(Ke>100)throw Error(`Cycle detected`);(function(e){F!==0&&Ke===0&&e.l!==Je&&(e.l=Je,Ye={S:e,v:e.v,i:e.i,o:Ye})})(this),this.v=e,this.i++,Xe++,F++;try{for(var t=this.t;t!==void 0;t=t.x)t.t.N()}finally{Ve()}}}});function L(e,t){return new I(e,t)}function Qe(e){for(var t=e.s;t!==void 0;t=t.n)if(t.S.i!==t.i||!t.S.h()||t.S.i!==t.i)return!0;return!1}function $e(e){for(var t=e.s;t!==void 0;t=t.n){var n=t.S.n;if(n!==void 0&&(t.r=n),t.S.n=t,t.i=-1,t.n===void 0){e.s=t;break}}}function et(e){for(var t=e.s,n=void 0;t!==void 0;){var r=t.p;t.i===-1?(t.S.U(t),r!==void 0&&(r.n=t.n),t.n!==void 0&&(t.n.p=r)):n=t,t.S.n=t.r,t.r!==void 0&&(t.r=void 0),t=r}e.s=n}function tt(e,t){I.call(this,void 0,t),this.x=e,this.s=void 0,this.g=Xe-1,this.f=4}tt.prototype=new I,tt.prototype.h=function(){if(this.f&=-3,1&this.f)return!1;if((36&this.f)==32||(this.f&=-5,this.g===Xe))return!0;if(this.g=Xe,this.f|=1,this.i>0&&!Qe(this))return this.f&=-2,!0;var e=P;try{$e(this),P=this;var t=this.x();(16&this.f||this.v!==t||this.i===0)&&(this.v=t,this.f&=-17,this.i++)}catch(e){this.v=e,this.f|=16,this.i++}return P=e,et(this),this.f&=-2,!0},tt.prototype.S=function(e){if(this.t===void 0){this.f|=36;for(var t=this.s;t!==void 0;t=t.n)t.S.S(t)}I.prototype.S.call(this,e)},tt.prototype.U=function(e){if(this.t!==void 0&&(I.prototype.U.call(this,e),this.t===void 0)){this.f&=-33;for(var t=this.s;t!==void 0;t=t.n)t.S.U(t)}},tt.prototype.N=function(){if(!(2&this.f)){this.f|=6;for(var e=this.t;e!==void 0;e=e.x)e.t.N()}},Object.defineProperty(tt.prototype,"value",{get:function(){if(1&this.f)throw Error(`Cycle detected`);var e=Ze(this);if(this.h(),e!==void 0&&(e.i=this.i),16&this.f)throw this.v;return this.v}});function nt(e,t){return new tt(e,t)}function rt(e){var t=e.m;if(e.m=void 0,typeof t==`function`){F++;var n=P;P=void 0;try{t()}catch(t){throw e.f&=-2,e.f|=8,it(e),t}finally{P=n,Ve()}}}function it(e){for(var t=e.s;t!==void 0;t=t.n)t.S.U(t);e.x=void 0,e.s=void 0,rt(e)}function at(e){if(P!==this)throw Error(`Out-of-order effect`);et(this),P=e,this.f&=-2,8&this.f&&it(this),Ve()}function ot(e,t){this.x=e,this.m=void 0,this.s=void 0,this.u=void 0,this.f=32,this.name=t?.name,Ue&&Ue.push(this)}ot.prototype.c=function(){var e=this.S();try{if(8&this.f||this.x===void 0)return;var t=this.x();typeof t==`function`&&(this.m=t)}finally{e()}},ot.prototype.S=function(){if(1&this.f)throw Error(`Cycle detected`);this.f|=1,this.f&=-9,rt(this),$e(this),F++;var e=P;return P=this,at.bind(this,e)},ot.prototype.N=function(){2&this.f||(this.f|=2,this.u=Ge,Ge=this)},ot.prototype.d=function(){this.f|=8,1&this.f||it(this)},ot.prototype.dispose=function(){this.d()};function st(e,t){var n=new ot(e,t);try{n.c()}catch(e){throw n.d(),e}var r=n.d.bind(n);return r[Symbol.dispose]=r,r}var ct,lt,ut=typeof window<`u`&&!!window.__PREACT_SIGNALS_DEVTOOLS__,dt=[];st(function(){ct=this.N})();function ft(e,n){t[e]=n.bind(null,t[e]||function(){})}function pt(e){if(lt){var t=lt;lt=void 0,t()}lt=e&&e.S()}function mt(e){var t=this,n=e.data,i=gt(n);i.name=`ReactiveDom`,i.value=n;var a=N(function(){for(var e=t,n=t.__v;n=n.__;)if(n.__c){n.__c.__$f|=4;break}var a=nt(function(){var e=i.value.value;return e===0?0:!0===e?``:e||``}),o=nt(function(){return!Array.isArray(a.value)&&!r(a.value)}),s=st(function(){if(this.N=yt,o.value){var t=a.value;e.__v&&e.__v.__e&&e.__v.__e.nodeType===3&&(e.__v.__e.data=t)}}),c=t.__$u.d;return t.__$u.d=function(){s(),c.call(this)},[o,a]},[]),o=a[0],s=a[1];return o.value?s.peek():s.value}mt.displayName=`ReactiveTextNode`,Object.defineProperties(I.prototype,{constructor:{configurable:!0,value:void 0},type:{configurable:!0,value:mt},props:{configurable:!0,get:function(){var e=this;return{data:{get value(){return e.value}}}}},__b:{configurable:!0,value:1}}),ft(`__b`,function(e,t){if(pt(),typeof t.type==`string`){var n,r=t.props;for(var i in r)if(i!==`children`){var a=r[i];a instanceof I&&(n||(t.__np=n={}),n[i]=a,r[i]=a.peek())}}e(t)}),ft(`__r`,function(e,t){if(e(t),t.type!==S){pt();var n,r=t.__c;r&&(r.__$f&=-2,(n=r.__$u)===void 0&&(r.__$u=n=function(e,t){var n;return st(function(){n=this},{name:t}),n.c=e,n}(function(e){return function(){var t;ut&&((t=this.y)==null||t.call(this)),e.__$f|=1,e.setState({})}}(r),typeof t.type==`function`?t.type.displayName||t.type.name:``))),pt(n)}}),ft(`__e`,function(e,t,n,r){pt(),e(t,n,r)}),ft(`diffed`,function(e,t){pt();var n;if(typeof t.type==`string`&&(n=t.__e)){var r=t.__np,i=t.props,a=n.U;if(a)for(var o in a){var s=a[o];s===void 0||r&&o in r||(s.d(),a[o]=void 0)}if(r)for(var c in a||(a={},n.U=a),r){var l=a[c],u=r[c];l===void 0?(l=ht(n,c,u,i),a[c]=l):l.o(u,i)}}e(t)});function ht(e,t,n,r){var i=t in e&&e.ownerSVGElement===void 0,a=L(n);return{o:function(e,t){a.value=e,r=t},d:st(function(){this.N=yt;var n=a.value.value;r[t]!==n&&(r[t]=n,i?e[t]=n:n!=null&&(!1!==n||t[4]===`-`)?e.setAttribute(t,n):e.removeAttribute(t))})}}ft(`unmount`,function(e,t){if(typeof t.type==`string`){var n=t.__e;if(n){var r=n.U;if(r)for(var i in n.U=void 0,r){var a=r[i];a&&a.d()}}var o=t.__np;if(o){var s=t.props;for(var c in o)s[c]=o[c]}t.__np=void 0}else{var l=t.__c;if(l){l.__$f|=8;var u=l.__$u;u&&(l.__$u=void 0,u.d())}}e(t)}),ft(`__h`,function(e,t,n,r){r<3&&(t.__$f|=2),e(t,n,r)}),te.prototype.shouldComponentUpdate=function(e,t){if(this.__R)return!0;var n=this.__$u,r=n&&n.s!==void 0;for(var i in t)return!0;if(this.__f||typeof this.u==`boolean`&&!0===this.u){var a=2&this.__$f;if(!(r||a||4&this.__$f)||1&this.__$f)return!0}else if(!(r||4&this.__$f)||3&this.__$f)return!0;for(var o in e)if(o!==`__source`&&e[o]!==this.props[o])return!0;for(var s in this.props)if(!(s in e))return!0;return!1};function gt(e,t){return N(function(){return L(e,t)},[])}var _t=function(e){queueMicrotask(function(){queueMicrotask(e)})};function vt(){He(function(){for(var e;e=dt.shift();)ct.call(e)})}function yt(){dt.push(this)===1&&(t.requestAnimationFrame||_t)(vt)}var bt=L({text:``,seq:0});function xt(e){bt.value={text:e,seq:bt.value.seq+1}}var St=L(null);async function Ct(e){try{return typeof navigator.clipboard?.writeText==`function`&&(await navigator.clipboard.writeText(e),!0)}catch{return!1}}async function wt(e,t){return await Ct(t)?(xt(`${e} copied to the clipboard.`),!0):(St.value={label:e,text:t},!1)}function Tt(e){try{return window.localStorage.getItem(e)}catch{return null}}function Et(e,t){try{window.localStorage.setItem(e,t)}catch{}}var Dt=`loupe.sidebar`,Ot=`(max-width: 760px)`;function kt(){return window.matchMedia(Ot).matches}var R=L(!kt()&&Tt(Dt)!==`closed`);function At(){R.value=!R.value,kt()||Et(Dt,R.value?`open`:`closed`)}var jt=L(null);function Mt(e){R.value=!0,jt.value={key:e,seq:(jt.value?.seq??0)+1}}var Nt=/^(0|[1-9]\d*)$/,Pt={"run-errors":{page:`errors`}};function Ft(e){try{return decodeURIComponent(e)}catch{return null}}function It(e){return Ft(e)??e}function Lt(e){let t=e.split(`/`).filter(e=>e!==``).map(Ft);if(t.some(e=>e===null))return{page:`not-found`,path:e};let[n,r,i,a]=t;if(t.length===0)return{page:`dashboard`};if(t.length===1&&(n===`errors`||n===`health`||n===`tests`))return{page:n};if(n===`errors`&&r===`category`&&t.length===3&&i!==void 0)return{page:`errors`,category:i};if(t.length===1&&n!==void 0&&Object.hasOwn(Pt,n))return Pt[n];if(n===`group`&&r!==void 0&&t.length===2)return{page:`group`,signature:r};if(n===`test`&&r!==void 0){if(t.length===2)return{page:`test`,id:r,repeatEachIndex:0};if(t.length===4&&i===`repeat`&&a!==void 0&&Nt.test(a))return{page:`test`,id:r,repeatEachIndex:Number(a)}}return{page:`not-found`,path:e}}function Rt(e){let t=e.startsWith(`#`)?e.slice(1):e,n=t.indexOf(`?`),r=n===-1?t:t.slice(0,n),i=n===-1?``:t.slice(n+1);return{route:Lt(r),search:i}}function zt(e){switch(e.page){case`dashboard`:return`/`;case`errors`:return e.category===void 0?`/errors`:`/errors/category/${encodeURIComponent(e.category)}`;case`health`:return`/health`;case`tests`:return`/tests`;case`test`:{let t=`/test/${encodeURIComponent(e.id)}`;return e.repeatEachIndex===0?t:`${t}/repeat/${e.repeatEachIndex}`}case`group`:return`/group/${encodeURIComponent(e.signature)}`;case`not-found`:return e.path.startsWith(`/`)?e.path:`/${e.path}`}}function z(e){return`#${zt(e.route)}${e.search?`?${e.search}`:``}`}function Bt(e){let t=((e.startsWith(`#`)?e.slice(1):e).split(`?`)[0]??``).split(`/`).filter(e=>e!==``);return t.length!==1||!Object.hasOwn(Pt,It(t[0]))?null:z(Rt(e))}var Vt=(e,t)=>e;function Ht(){let e=window.location.hash,t=Rt(e),n={route:t.route,search:Vt(t.search,t.route)};return(Bt(e)!==null||n.search!==t.search)&&window.history.replaceState(window.history.state,``,z(n)),n}var B=L(Ht());function Ut(){let e=Ht();z(e)!==z(B.value)&&(B.value=e)}window.addEventListener(`hashchange`,Ut),window.addEventListener(`popstate`,Ut);function Wt(e){Vt=e,Ut()}var Gt=new Set([`attempt`]);function Kt(e){return e.split(`&`).filter(e=>e!==``&&!Gt.has(e.split(`=`)[0]??``)).join(`&`)}function V(e){return z({route:e,search:Vt(Kt(B.value.search),e)})}function qt(e){window.location.hash=V(e)}function Jt(e,t){let n=z(e);n!==z(B.value)&&(t===`push`?window.history.pushState(null,``,n):window.history.replaceState(window.history.state,``,n),B.value=e)}var Yt=[`passed`,`failed`,`flaky`,`skipped`];function Xt(e,t){return t.status!==e.expectedStatus&&t.status!==`skipped`}function Zt(e){let t=new Map;for(let n of e.tests)for(let e of n.attempts)if(Xt(n,e))for(let r of e.errors){let i=t.get(r.signature);i||(i={signature:r.signature,category:r.category??`Uncategorized`,message:r.message,tests:[],failed:0,flaky:0},t.set(r.signature,i));let a=i.tests[i.tests.length-1];a?.test===n?a.attempts.includes(e.index)||a.attempts.push(e.index):(i.tests.push({test:n,attempts:[e.index]}),n.outcome===`failed`?i.failed+=1:n.outcome===`flaky`&&(i.flaky+=1))}return[...t.values()]}function Qt(e){return e.map((e,t)=>({group:e,index:t})).sort((e,t)=>t.group.failed-e.group.failed||t.group.flaky-e.group.flaky||e.index-t.index).map(({group:e})=>e)}function $t(e){return e.split(`
8
- `).find(e=>e.trim()!==``)?.trim()??``}var en=/^(?:Error: )?(?:expect(?:\.soft|\.poll)?\(\w+\)\.(?:not\.)?\w+\([^)]*\)(?: failed)?|Timed out \d+ms waiting for expect\(.*)$/,tn=/^\s*Locator:\s+(.+?)\s*$/m,nn=/^\s*(?:- )?\u2190 (\d{3}\b.*?)\s*$/m;function rn(e){let t=$t(e);if(!en.test(t))return t;let n=tn.exec(e);if(n)return`Locator: ${n[1]}`;let r=nn.exec(e);return r?`\u2190 ${r[1]}`:t}function an(e){return{headline:rn(e.message),firstTest:e.tests[0]?.test??null,others:Math.max(0,e.tests.length-1)}}function on(e){return e.tests.some(({test:e})=>e.attempts.length>1)?`failed on ${e.tests.reduce((e,{attempts:t})=>e+t.length,0)} of ${e.tests.reduce((e,{test:t})=>e+t.attempts.length,0)} attempts`:null}function sn(e,t){let n=new Map;for(let e of t){let t=n.get(e.category);t||(t={tests:new Set,groups:[]},n.set(e.category,t)),t.groups.push(e);for(let{test:n}of e.tests)t.tests.add(n)}let r=e.categories.map(e=>e.name);return[...r.filter(e=>n.has(e)),...[...n.keys()].filter(e=>!r.includes(e))].map(e=>{let t=n.get(e);return{name:e,tests:t.tests.size,groups:t.groups}})}function cn(e){let{stats:t,status:n,errors:r}=e.run;return t.failed>0||n!==`passed`||r.length>0?`failed`:t.flaky>0?`flaky`:`passed`}function ln(e){return Yt.filter(t=>e[t]>0).map(t=>({outcome:t,count:e[t],share:e.total>0?e[t]/e.total:0}))}function un(e){let t=e.total-e.skipped;return t>0?e.passed/t:null}var dn=`Pass rate: passed / (total − skipped). Skipped tests are excluded; flaky tests do not count as passed.`;function fn(e){let t=e*100;return t>99&&t<100?`99%`:t>0&&t<1?`<1%`:`${Math.round(t)}%`}function pn(e){return e.projects.filter(e=>e.stats.total>0).map(t=>{let n=e.tests.filter(e=>e.project===t.name).reduce((e,t)=>e+t.durationMs,0);return{project:t,passRate:un(t.stats),durationMs:n}})}function mn(e){return e.dimensions.map(t=>{let n=new Map,r=e=>{let r=n.get(e);return r||(r={value:e,passed:0,failed:0,flaky:0,skipped:0,total:0,unknown:t.values!==null&&!t.values.includes(e),caseVariants:[]},n.set(e,r)),r};for(let e of t.values??[])r(e);let i=0;for(let n of e.tests){let e=n.dimensions[t.name]??[];e.length===0&&(i+=1);for(let t of new Set(e)){let e=r(t);e[n.outcome]+=1,e.total+=1}}let a=t.values??[],o=[...n.keys()].filter(e=>!a.includes(e)).sort((e,t)=>e.localeCompare(t)),s=[...a,...o].map(e=>n.get(e)),c=bn(s.map(e=>e.value));for(let e of s)e.caseVariants=c.get(e.value)??[];return{definition:t,values:s,without:i}})}function hn(e){return e.values.length<=8?`bars`:`tiles`}function gn(e){return e.failed>0?`failed`:e.flaky>0?`flaky`:e.passed>0?`passed`:e.skipped>0?`skipped`:`none`}var _n={failed:0,flaky:1,passed:2,skipped:3,none:4};function vn(e){return e.map((e,t)=>({row:e,index:t,status:gn(e)})).sort((e,t)=>_n[e.status]-_n[t.status]||t.row.failed-e.row.failed||t.row.flaky-e.row.flaky||e.index-t.index).map(({row:e})=>e)}function yn(e){let t=t=>e.filter(e=>gn(e)===t).length,n=[[t(`passed`),`all passed`],[t(`failed`),`with failures`],[t(`flaky`),`flaky`],[t(`skipped`),`skipped only`],[t(`none`),`without tests`]];return[`${e.length} ${e.length===1?`value`:`values`}`,...n.filter(([e])=>e>0).map(([e,t])=>`${e} ${t}`)].join(` · `)}function bn(e){let t=new Map;for(let n of new Set(e)){let e=n.toLowerCase();t.set(e,[...t.get(e)??[],n])}let n=new Map;for(let e of t.values())if(!(e.length<2))for(let t of e)n.set(t,e.filter(e=>e!==t));return n}function xn(e){return e.tests.filter(e=>e.outcome===`flaky`).map(e=>({test:e,error:e.attempts.find(t=>Xt(e,t))?.errors[0]??null}))}function Sn(e,t=10){return e.tests.filter(e=>e.outcome!==`skipped`&&e.durationMs>0).map((e,t)=>({test:e,index:t})).sort((e,t)=>t.test.durationMs-e.test.durationMs||e.index-t.index).slice(0,t).map(({test:e})=>e)}var Cn=[`skip`,`fixme`];function wn(e){return e.tests.filter(e=>e.outcome===`skipped`).map(e=>{let t=[...e.annotations,...e.attempts[e.attempts.length-1]?.annotations??[]].find(e=>Cn.includes(e.type));return{test:e,kind:t?t.type:null,reason:t?.description?.trim()||null}})}var Tn=/^@([^:\s]+):(.+)$/;function En(e){let t=Tn.exec(e);return t?{prefix:t[1]??``,value:t[2]??``}:null}var Dn=[`status`,`title`,`project`,`file`,`duration`,`category`,`attempts`],On={column:`declaration`,direction:`asc`};function kn(e){return In(Object.keys(e)).map(t=>[t,e[t]??[]]).filter(([,e])=>e.length>0)}var An={q:``,facets:{},sort:On},jn=[`status`,`project`,`tag`],Mn=`dim.`;function Nn(e){return`${Mn}${e}`}function Pn(e){return e.startsWith(Mn)?e.slice(4):null}function Fn(e,t){return e<t?-1:+(e>t)}function In(e){let t=e=>e===`category`?4:Pn(e)===null?jn.indexOf(e):3;return[...e].sort((e,n)=>t(e)-t(n)||Fn(e,n))}function Ln(e){try{return decodeURIComponent(e.replace(/\+/g,` `))}catch{return null}}function Rn(e){let[t,n,...r]=e.split(`:`);return r.length>0||n===void 0?null:t===`declaration`?n===`asc`?On:null:!Dn.includes(t??``)||n!==`asc`&&n!==`desc`?null:{column:t,direction:n}}function zn(e,t){let n=e;if(e.startsWith(`#`)){let t=e.indexOf(`?`);n=t===-1?``:e.slice(t+1)}else e.startsWith(`?`)&&(n=e.slice(1));let r={},i=``,a=On;for(let e of n.split(`&`)){if(e===``)continue;let n=e.indexOf(`=`),o=Ln(n===-1?e:e.slice(0,n)),s=n===-1?``:e.slice(n+1);if(o===null)continue;if(o===`q`){i=Ln(s)??``;continue}if(o===`sort`){a=Rn(Ln(s)??``)??a;continue}if(!(jn.includes(o)||o===`category`||o.startsWith(Mn)&&o.length>4))continue;let c=o,l=t?.get(c);if(!t||l)for(let e of s.split(`,`)){let t=Ln(e);t===null||t===``||l&&!l.has(t)||(r[c]??=[]).push(t)}}return Bn({q:i,facets:r,sort:a})}function Bn(e){let t={};for(let[n,r]of kn(e.facets))t[n]=[...new Set(r)].sort(Fn);return{q:e.q,facets:t,sort:e.sort}}function Vn(e){return e.column===On.column&&e.direction===On.direction}function Hn(e){let t=Bn(e),n=[],r=t.q.trim();r!==``&&n.push(`q=${encodeURIComponent(r)}`);for(let[e,r]of kn(t.facets))n.push(`${encodeURIComponent(e)}=${r.map(encodeURIComponent).join(`,`)}`);return Vn(t.sort)||n.push(`sort=${t.sort.column}:${t.sort.direction}`),n.join(`&`)}function Un(e){return(e.q.trim()===``?0:1)+kn(e.facets).reduce((e,[,t])=>e+t.length,0)}function Wn(e,t,n,r){let i=e.facets[t]??[],a=r?[...i,n]:i.filter(e=>e!==n);return{...e,facets:{...e.facets,[t]:a}}}function Gn(e){return{...An,sort:e.sort}}var Kn={dimensionTagPrefixes:new Set};function qn(e){return{dimensionTagPrefixes:new Set(e.dimensions.filter(e=>e.source===`tag`).map(e=>e.key))}}function Jn(e,t){return t.dimensionTagPrefixes.size===0?[...e]:e.filter(e=>{let n=En(e);return n===null||!t.dimensionTagPrefixes.has(n.prefix)})}function Yn(e){return e.normalize(`NFD`).replace(/\p{M}/gu,``).toLowerCase()}function Xn(e){return Yn(e).split(/\s+/).filter(e=>e!==``)}function Zn(e){let t=new Set;for(let n of e.attempts)if(Xt(e,n))for(let e of n.errors)t.add(e.category??`Uncategorized`);return[...t]}var Qn=new WeakMap;function $n(e){let t=Qn.get(e);return t||(t={haystack:Yn([[...e.suitePath,e.title].join(` › `),e.file,e.project,...e.tags,...Object.values(e.dimensions).flat()].join(`
9
- `)),categories:Zn(e)},Qn.set(e,t)),t}function er(e){return $n(e).categories}function tr(e){let t=er(e),n=e.category!==null&&t.includes(e.category)?e.category:t[0]??null;return{primary:n,others:t.filter(e=>e!==n)}}function nr(e,t,n=Kn){switch(t){case`status`:return[e.outcome];case`project`:return[e.project];case`tag`:return Jn(e.tags,n);case`category`:return er(e);default:return e.dimensions[Pn(t)??``]??[]}}function rr(e,t){if(t.length===0)return!0;let{haystack:n}=$n(e);return t.every(e=>n.includes(e))}function ir(e,t,n,r){if(n.length===0)return!0;let i=nr(e,t,r);return n.some(e=>i.includes(e))}function ar(e,t,n=Kn){let r=Xn(t.q),i=kn(t.facets);return e.filter(e=>rr(e,r)&&i.every(([t,r])=>ir(e,t,r,n)))}function or(e,t,n,r=Kn){let i=new Map;for(let[e,t]of n)i.set(e,new Map([...t].map(e=>[e,0])));let a=Xn(t.q),o=kn(t.facets),s=(e,t)=>{let n=i.get(t);if(n)for(let i of new Set(nr(e,t,r))){let e=n.get(i);e!==void 0&&n.set(i,e+1)}};for(let t of e){if(!rr(t,a))continue;let e=null,i=0;for(let[n,a]of o)if(!ir(t,n,a,r)&&(i+=1,e=n,i>1))break;if(!(i>1)){if(e!==null)s(t,e);else for(let e of n.keys())s(t,e)}}return i}function sr(e){let t=qn(e),n=n=>new Set(e.tests.flatMap(e=>nr(e,n,t))),r=(e,t)=>new Set([...e.filter(e=>t.has(e)),...[...t].filter(t=>!e.includes(t)).sort((e,t)=>e.localeCompare(t))]),i=new Map,a=(e,t)=>{t.size>0&&i.set(e,t)};a(`status`,r([`failed`,`flaky`,...Yt.filter(e=>e!==`failed`&&e!==`flaky`)],n(`status`))),a(`category`,r(e.categories.map(e=>e.name),n(`category`)));let o=n(`project`);o.delete(``),a(`project`,r(e.projects.map(e=>e.name),o)),a(`tag`,r([],n(`tag`)));for(let t of e.dimensions){let e=Nn(t.name);a(e,r(t.values??[],n(e)))}return i}var cr={failed:0,flaky:1,passed:2,skipped:3},lr=new Intl.Collator(void 0,{numeric:!0,sensitivity:`base`});function ur(e){return[...e.suitePath,e.title].join(` › `)}function dr(e){return e===`duration`||e===`attempts`?`desc`:`asc`}function fr(e,t){return e.column===t?{column:t,direction:e.direction===`asc`?`desc`:`asc`}:{column:t,direction:dr(t)}}var pr={title:ur,project:e=>e.project,file:e=>`${e.file}:${e.line}`,category:e=>tr(e).primary};function mr(e,t){let n=[...new Set(e.map(t).filter(e=>e!==null))].sort(lr.compare),r=new Map(n.map((e,t)=>[e,t]));return new Map(e.map(e=>{let n=t(e);return[e,n===null?null:r.get(n)??null]}))}function hr(e,t=[]){let n={title:mr(e,pr.title),project:mr(e,pr.project),file:mr(e,pr.file),category:mr(e,pr.category)},r=(e,t)=>n[e].get(t)??0,i=[...e].sort((e,t)=>r(`title`,e)-r(`title`,t)||r(`project`,e)-r(`project`,t)||e.repeatEachIndex-t.repeatEachIndex),a=new Map(t.map((e,t)=>[e,t]));for(let t of e)a.has(t.project)||a.set(t.project,a.size);let o=[...e].sort((e,t)=>(a.get(e.project)??0)-(a.get(t.project)??0)||lr.compare(e.file,t.file)||e.line-t.line||e.column-t.column||r(`title`,e)-r(`title`,t)||e.repeatEachIndex-t.repeatEachIndex);return{text:n,order:new Map(i.map((e,t)=>[e,t])),declaration:new Map(o.map((e,t)=>[e,t]))}}function gr(e,t,n){switch(t){case`declaration`:return n.declaration.get(e)??0;case`status`:return cr[e.outcome];case`duration`:return e.durationMs;case`attempts`:return e.attempts.length;default:return n.text[t].get(e)??null}}function _r(e,t,n){return e===null||t===null?e===t?0:e===null?1:-1:n*(e-t)}function vr(e,t,n=hr(e)){let r=t.direction===`asc`?1:-1,i=t.column===`status`||t.column===`declaration`?n.declaration:n.order;return e.map(e=>({test:e,key:gr(e,t.column,n),order:i.get(e)??0})).sort((e,t)=>_r(e.key,t.key,r)||e.order-t.order).map(({test:e})=>e)}var yr=/^(0|[1-9]\d{0,5})$/;function br(e){let t=null,n=!1;for(let r of e.split(`&`)){let[e,i=``]=r.split(`=`);e===`attempt`&&yr.test(i)&&(t=Number(i)),e===`steps`&&i===`all`&&(n=!0)}return{attempt:t,allSteps:n}}function xr(e){let t=[];return e.attempt!==null&&t.push(`attempt=${e.attempt}`),e.allSteps&&t.push(`steps=all`),t.join(`&`)}function Sr(...e){return e.filter(e=>e!==``).join(`&`)}var Cr=L(new Map),wr=L(Kn);function Tr(e){Cr.value=sr(e),wr.value=qn(e),Wt((e,t)=>Sr(Hn(zn(e,Cr.value)),Er(e,t)))}function Er(e,t){return t.page===`test`?xr(br(e)):``}var Dr=nt(()=>zn(B.value.search,Cr.value));function Or(e,t=B.value.route){return z({route:t,search:Hn(e)})}function kr(e,t=`push`,n=B.value.route){let r=B.value,i=z({route:n,search:``})===z({route:r.route,search:``})?Er(r.search,n):``;Jt({route:n,search:Sr(Hn(e),i)},t)}function Ar(e,t=`replace`){let{route:n,search:r}=B.value;Jt({route:n,search:Sr(Hn(zn(r,Cr.value)),e)},t)}function jr(e){return e.replace(/\\/g,`/`)}function Mr(e){let t=null;for(let n of e){let e=jr(n).split(`/`).slice(0,-1);if(t===null){t=e;continue}let r=0;for(;r<t.length&&r<e.length&&t[r]===e[r];)r+=1;if(t.length=r,r===0)break}return t&&t.length>0?`${t.join(`/`)}/`:``}function Nr(e,t){let n=jr(e);return t!==``&&n.startsWith(t)?n.slice(t.length):n}var Pr=4;function Fr(e){let t=/(?:\.[^./]{1,6}){1,2}$/.exec(e.slice(1))?.[0]??``,n=e.slice(0,e.length-t.length),r=n.length>12?Pr:0;return[n.slice(0,n.length-r),`${n.slice(n.length-r)}${t}`]}var Ir=[{name:`blue`,reference:`#466cc8`,light:{text:`#385db7`,bg:`#eaf0fe`,border:`#5981df`},dark:{text:`#9ebdff`,bg:`#18233c`,border:`#577cd3`}},{name:`cyan`,reference:`#0a7da1`,light:{text:`#0a708f`,bg:`#e0f4fd`,border:`#2b8fb4`},dark:{text:`#60cdf5`,bg:`#002837`,border:`#268cb1`}},{name:`teal`,reference:`#04837c`,light:{text:`#09726c`,bg:`#dbf7f4`,border:`#29958e`},dark:{text:`#6ed2c9`,bg:`#002b28`,border:`#25928b`}},{name:`violet`,reference:`#8656b7`,light:{text:`#7747a7`,bg:`#f4ecfe`,border:`#9e6ed2`},dark:{text:`#cfaafc`,bg:`#2a1d37`,border:`#9468c3`}},{name:`magenta`,reference:`#ad4681`,light:{text:`#9d3772`,bg:`#feeaf3`,border:`#cc629d`},dark:{text:`#f79dcc`,bg:`#351928`,border:`#bb598f`}},{name:`orange`,reference:`#ab5803`,light:{text:`#954d09`,bg:`#feece1`,border:`#c6702b`},dark:{text:`#f9a970`,bg:`#361d0a`,border:`#bc671f`}},{name:`brown`,reference:`#745f43`,light:{text:`#3c2d18`,bg:`#f5e9d9`,border:`#60503a`},dark:{text:`#b7a182`,bg:`#302412`,border:`#ae9779`}},{name:`gold`,reference:`#b9a542`,light:{text:`#736308`,bg:`#f5f1da`,border:`#9a861a`},dark:{text:`#d2be5d`,bg:`#2b2403`,border:`#94800e`}}],Lr={name:`neutral`,reference:`#6b6b6b`,light:{text:`#636363`,bg:`#f0f0f0`,border:`#868686`},dark:{text:`#bebebe`,bg:`#242424`,border:`#808080`}};Ir.map(e=>e.name);function Rr(e){let t=e.toLowerCase();return[...Ir,Lr].find(e=>e.reference===t)??null}var zr={light:[`#f7f5f0`,`#ffffff`,`#eeeae2`],dark:[`#080808`,`#0d0d0d`,`#161616`]},Br=4.5,Vr=/^#[0-9a-fA-F]{6}$/;function Hr(e){return Vr.test(e)}function Ur(e){if(!Hr(e))throw TypeError(`not a #rrggbb color: ${e}`);let t=Number.parseInt(e.slice(1),16);return[t>>16&255,t>>8&255,t&255]}function Wr([e,t,n]){return`#${[e,t,n].map(e=>Math.round(Math.min(255,Math.max(0,e))).toString(16).padStart(2,`0`)).join(``)}`}function Gr(e){let t=e/255;return t<=.04045?t/12.92:((t+.055)/1.055)**2.4}function Kr(e){return(e<=.0031308?e*12.92:1.055*e**(1/2.4)-.055)*255}function qr(e){let[t,n,r]=Ur(e).map(Gr);return .2126*t+.7152*n+.0722*r}function Jr(e,t){let[n,r]=[qr(e),qr(t)].sort((e,t)=>t-e);return(n+.05)/(r+.05)}function Yr(e){let[t,n,r]=Ur(e).map(Gr),i=Math.cbrt(.4122214708*t+.5363325363*n+.0514459929*r),a=Math.cbrt(.2119034982*t+.6806995451*n+.1073969566*r),o=Math.cbrt(.0883024619*t+.2817188376*n+.6299787005*r),s=.2104542553*i+.793617785*a-.0040720468*o,c=1.9779984951*i-2.428592205*a+.4505937099*o,l=.0259040371*i+.7827717662*a-.808675766*o,u=Math.atan2(l,c)*180/Math.PI;return{l:s,c:Math.hypot(c,l),h:u<0?u+360:u}}function Xr({l:e,c:t,h:n}){let r=t*Math.cos(n*Math.PI/180),i=t*Math.sin(n*Math.PI/180),a=(e+.3963377774*r+.2158037573*i)**3,o=(e-.1055613458*r-.0638541728*i)**3,s=(e-.0894841775*r-1.291485548*i)**3;return[4.0767416621*a-3.3077115913*o+.2309699292*s,-1.2684380046*a+2.6097574011*o-.3413193965*s,-.0041960863*a-.7034186147*o+1.707614701*s]}function Zr(e){let t=e.c;for(;;){let n=Xr({...e,c:t});if(n.every(e=>e>=-1e-4&&e<=1.0001)||t<=0)return Wr(n.map(e=>Kr(Math.min(1,Math.max(0,e)))));t=Math.max(0,t-.005)}}function Qr(e,t,n,r){let i=t<n?.01:-.01;for(let a=t;i>0?a<=n:a>=n;a+=i){let t=Zr({...e,l:a});if(r(t))return t}return Zr({...e,l:n})}function $r(e,t){let n=Yr(e),r=n.c<.02?0:n.c,i=zr[t];if(t===`light`){let e=Zr({...n,l:.955,c:Math.min(r,.03)});return{text:Qr({...n,c:Math.min(r,.16)},.5,0,t=>Jr(t,e)>=Br),bg:e,border:Qr({...n,c:Math.min(r,.18)},.66,0,t=>[e,...i].every(e=>Jr(t,e)>=3))}}let a=Zr({...n,l:.26,c:Math.min(r,.05)});return{text:Qr({...n,c:Math.min(r,.12)},.8,1,e=>Jr(e,a)>=Br),bg:a,border:Qr({...n,c:Math.min(r,.14)},.6,1,e=>[a,...i].every(t=>Jr(e,t)>=3))}}var ei=new Map;function ti(e){let t=e&&Hr(e)?e.toLowerCase():Lr.reference,n=ei.get(t);if(!n){let e=Rr(t);n=e?{light:e.light,dark:e.dark}:{light:$r(t,`light`),dark:$r(t,`dark`)},ei.set(t,n)}return n}function ni(e){let{light:t,dark:n}=ti(e);return{"--cat-text-light":t.text,"--cat-bg-light":t.bg,"--cat-border-light":t.border,"--cat-text-dark":n.text,"--cat-bg-dark":n.bg,"--cat-border-dark":n.border}}function ri(e){return new Map(e.map(e=>[e.name,e.color]))}function H(e){if(e<1e3)return`${Math.round(e)} ms`;if(e<6e4)return`${(e/1e3).toFixed(1)} s`;let t=Math.round(e/1e3);if(t<3600)return`${Math.floor(t/60)} min ${String(t%60).padStart(2,`0`)} s`;let n=Math.round(t/60);return`${Math.floor(n/60)} h ${String(n%60).padStart(2,`0`)} min`}function U(e,t,n=`${t}s`){return`${e} ${e===1?t:n}`}var ii=`\0`,ai={project:`p`,folder:`d`,file:`f`,suite:`s`};function oi(){return{total:0,passed:0,failed:0,flaky:0,skipped:0}}function si(e,t){return`t${ii}${e}${ii}${t}`}function ci(e){return`p${ii}${e}`}function li(e,t,n,r){let i={kind:e,key:t,labels:[n],children:[],counts:oi(),line:1/0};return r!==void 0&&(i.path=r),i}function ui(e,t){return e.kind===`folder`==(t.kind===`folder`)?fi(e).localeCompare(fi(t)):e.kind===`folder`?-1:1}function di(e,t){return e.line===t.line?e.kind===`test`&&t.kind===`test`?e.column-t.column||e.repeatEachIndex-t.repeatEachIndex:e.kind===t.kind?fi(e).localeCompare(fi(t)):e.kind===`test`?1:-1:e.line-t.line}function fi(e){return e.kind===`test`?e.title:e.labels.join(` › `)}function pi(e){for(let t of e.children){if(t.kind===`test`)e.counts.total+=1,e.counts[t.outcome]+=1;else{pi(t);for(let n of[`total`,`passed`,`failed`,`flaky`,`skipped`])e.counts[n]+=t.counts[n]}e.line=Math.min(e.line,t.line)}e.kind===`project`||e.kind===`folder`?e.children.sort(ui):e.children.sort(di)}function mi(e){let t=e;for(;;){let e=t.children.length===1?t.children[0]:void 0;if(t.kind===`folder`&&e?.kind===`folder`)t={...e,key:t.key,labels:[`${t.labels.join(`/`)}/${e.labels.join(`/`)}`]};else{if(t.kind===`project`||t.kind===`folder`||e?.kind!==`suite`)break;t={...t,labels:[...t.labels,...e.labels],children:e.children}}}return{...t,children:t.children.map(e=>e.kind===`test`?e:mi(e))}}function hi(e,t={}){let n=t.prefix??Mr(e.tests.map(e=>e.file)),r=new Map;for(let t of e.projects)r.set(t.name,li(`project`,ci(t.name),t.name||`(unnamed project)`));let i=new Map;for(let t of e.tests){let e=r.get(t.project);e||(e=li(`project`,ci(t.project),t.project||`(unnamed project)`),r.set(t.project,e));let a=Nr(t.file,n).split(`/`),o=a.pop()??t.file,s=[...a.map((e,t)=>[`folder`,e,`${n}${a.slice(0,t+1).join(`/`)}`]),[`file`,o,jr(t.file)],...t.suitePath.map(e=>[`suite`,e])];for(let[t,n,r]of s){let a=`${e.key}${ii}${ai[t]}${ii}${n}`,o=i.get(a);o||(o=li(t,a,n,r),i.set(a,o),e.children.push(o)),e=o}e.children.push(gi(t))}let a=[...r.values()].filter(e=>e.children.length>0);for(let e of a)pi(e);return a.map(mi)}function gi(e){return{kind:`test`,key:si(e.id,e.repeatEachIndex),testId:e.id,repeatEachIndex:e.repeatEachIndex,title:e.title,outcome:e.outcome,line:e.line,column:e.column}}function _i(e,t){let n=[],r=(e,i,a)=>{e.forEach((o,s)=>{n.push({node:o,level:i,parentKey:a,position:s+1,siblings:e.length}),o.kind!==`test`&&t.has(o.key)&&r(o.children,i+1,o.key)})};return r(e,1,null),n}function vi(e,t){for(let n of e){if(n.key===t)return[];if(n.kind===`test`)continue;let e=vi(n.children,t);if(e)return[n.key,...e]}return null}function yi(e){return e.flatMap(e=>e.kind===`test`?[]:[e.key,...yi(e.children)])}var bi=/^[\w@%+=:,./-]+$/;function xi(e){return bi.test(e)?e:`'${e.replace(/'/g,`'\\''`)}'`}function Si(e,t){return e<t?-1:+(e>t)}function Ci(e){let t=new Map;for(let n of e){let e=t.get(n.project);e||(e=new Map,t.set(n.project,e)),e.set(`${n.file}:${n.line}`,n)}return new Map([...t].map(([e,t])=>[e,[...t.values()].sort((e,t)=>Si(e.file,t.file)||e.line-t.line).map(e=>`${e.file}:${e.line}`)]))}function wi(e,t){let n=t.filter(e=>e!==``).map(e=>`--project=${xi(e)}`);return[`npx playwright test`,...e.map(xi),...n].join(` `)}function Ti(e){let t=new Map;for(let[n,r]of Ci(e)){let e=n===``?`\0unnamed`:r.join(`\0`),i=t.get(e);i?i.projects.push(n):t.set(e,{locations:r,projects:[n]})}return[...t.values()].map(({locations:e,projects:t})=>wi(e,t)).join(` && `)}function Ei(e){return e.filter(e=>e.outcome===`failed`)}function Di(e,t){return Ei(e).filter(e=>e.file===t)}function Oi(e,t){let n=Di(e,t.file);if(!n.some(e=>e.line!==t.line))return null;let r=[...Ci(n)].map(([e,t])=>({project:e||`(unnamed project)`,count:t.length})),i=e=>e===1?`failed test`:`failed tests`,[a]=r;return r.length===1&&a?{tests:n,label:`${a.count} ${i(a.count)} in this file`}:a&&r.every(({count:e})=>e===a.count)?{tests:n,label:`${a.count} ${i(a.count)} in this file, in ${r.map(({project:e})=>e).join(`, `)}`}:{tests:n,label:`failed tests in this file: ${r.map(({project:e,count:t})=>`${t} in ${e}`).join(`, `)}`}}var ki=`For a POSIX shell (bash, zsh), run from the Playwright root directory: paths are relative to it. A file:line argument targets the line where the test is declared, and reruns every test declared on that line. The command is only valid while the file has not changed since the run.`,Ai=0;Array.isArray;function W(e,n,r,i,a,o){n||={};var s,c,l=n;if(`ref`in l)for(c in l={},n)c==`ref`?s=n[c]:l[c]=n[c];var u={type:e,props:l,key:r,ref:s,__k:null,__:null,__b:0,__e:null,__c:null,constructor:void 0,__v:--Ai,__i:-1,__u:0,__source:a,__self:o};if(typeof e==`function`&&(s=e.defaultProps))for(c in s)l[c]===void 0&&(l[c]=s[c]);return t.vnode&&t.vnode(u),u}function G({name:e,color:t}){return W(`span`,{class:`category-badge`,style:ni(t),title:`Error category: ${e}`,children:e})}function K({children:e,class:t}){return W(`svg`,{class:`icon ${t??``}`,viewBox:`0 0 16 16`,width:`16`,height:`16`,"aria-hidden":`true`,focusable:`false`,children:e})}var ji={passed:`Passed`,failed:`Failed`,flaky:`Flaky`,skipped:`Skipped`};function q(e){return ji[e]}function J({outcome:e,labelled:t=!1,decorative:n=!1}){let r={passed:W(`path`,{d:`M4.5 8.2l2.3 2.3 4.7-4.9`,fill:`none`,stroke:`currentColor`,"stroke-width":`1.8`,"stroke-linecap":`round`,"stroke-linejoin":`round`}),failed:W(`path`,{d:`M5.5 5.5l5 5m0-5l-5 5`,fill:`none`,stroke:`currentColor`,"stroke-width":`1.8`,"stroke-linecap":`round`}),flaky:W(`path`,{d:`M10.9 5.6A3.6 3.6 0 0 0 4.6 7M5.1 10.4A3.6 3.6 0 0 0 11.4 9M10.9 3.6v2h-2M5.1 12.4v-2h2`,fill:`none`,stroke:`currentColor`,"stroke-width":`1.5`,"stroke-linecap":`round`,"stroke-linejoin":`round`}),skipped:W(`path`,{d:`M5 8h6`,fill:`none`,stroke:`currentColor`,"stroke-width":`1.8`,"stroke-linecap":`round`})}[e];return W(`span`,{class:`outcome-icon outcome-${e}`,title:t||n?void 0:ji[e],"aria-hidden":n?`true`:void 0,children:[W(K,{children:[W(`circle`,{cx:`8`,cy:`8`,r:`7`,fill:`none`,stroke:`currentColor`,"stroke-width":`1.4`}),r]}),!n&&W(`span`,{class:t?`outcome-text`:`visually-hidden`,children:ji[e]})]})}function Y(e){return W(K,{...e,children:W(`path`,{d:`M6 4l4 4-4 4`,fill:`none`,stroke:`currentColor`,"stroke-width":`1.6`,"stroke-linecap":`round`,"stroke-linejoin":`round`})})}function Mi(e){return W(K,{...e,children:[W(`rect`,{x:`1.5`,y:`2.5`,width:`13`,height:`11`,rx:`1.5`,fill:`none`,stroke:`currentColor`,"stroke-width":`1.3`}),W(`path`,{d:`M6 2.5v11`,stroke:`currentColor`,"stroke-width":`1.3`})]})}function Ni(e){return W(K,{...e,children:[W(`rect`,{x:`1.5`,y:`2.5`,width:`13`,height:`9`,rx:`1.5`,fill:`none`,stroke:`currentColor`,"stroke-width":`1.3`}),W(`path`,{d:`M5.5 14h5M8 11.5V14`,stroke:`currentColor`,"stroke-width":`1.3`,"stroke-linecap":`round`})]})}function Pi(e){return W(K,{...e,children:[W(`circle`,{cx:`8`,cy:`8`,r:`3`,fill:`none`,stroke:`currentColor`,"stroke-width":`1.3`}),W(`path`,{d:`M8 1v1.6M8 13.4V15M1 8h1.6M13.4 8H15M3 3l1.1 1.1M11.9 11.9L13 13M3 13l1.1-1.1M11.9 4.1L13 3`,stroke:`currentColor`,"stroke-width":`1.3`,"stroke-linecap":`round`})]})}function Fi(e){return W(K,{...e,children:W(`path`,{d:`M13.5 9.6A5.8 5.8 0 0 1 6.4 2.5a5.8 5.8 0 1 0 7.1 7.1z`,fill:`none`,stroke:`currentColor`,"stroke-width":`1.3`,"stroke-linejoin":`round`})})}function Ii(e){return W(K,{...e,children:W(`path`,{d:`M2 2.5h5v5H2zM9 2.5h5v3H9zM9 7.5h5v6H9zM2 9.5h5v4H2z`,fill:`none`,stroke:`currentColor`,"stroke-width":`1.3`,"stroke-linejoin":`round`})})}function Li(e){return W(K,{...e,children:[W(`path`,{d:`M8 1.8l6.5 11.4H1.5z`,fill:`none`,stroke:`currentColor`,"stroke-width":`1.3`,"stroke-linejoin":`round`}),W(`path`,{d:`M8 6.2v3.3`,stroke:`currentColor`,"stroke-width":`1.5`,"stroke-linecap":`round`}),W(`circle`,{cx:`8`,cy:`11.4`,r:`.9`,fill:`currentColor`})]})}function Ri(e){return W(K,{...e,children:[W(`circle`,{cx:`8`,cy:`8`,r:`6.3`,fill:`none`,stroke:`currentColor`,"stroke-width":`1.3`}),W(`path`,{d:`M8 4.6v4`,stroke:`currentColor`,"stroke-width":`1.5`,"stroke-linecap":`round`}),W(`circle`,{cx:`8`,cy:`11.1`,r:`.9`,fill:`currentColor`})]})}function zi(e){return W(K,{...e,children:W(`path`,{d:`M1.5 8.5h3l1.5-4 2.5 7 1.8-4.5 1 1.5h3.2`,fill:`none`,stroke:`currentColor`,"stroke-width":`1.3`,"stroke-linecap":`round`,"stroke-linejoin":`round`})})}function Bi(e){return W(K,{...e,children:[W(`path`,{d:`M6 4h8M6 8h8M6 12h8`,stroke:`currentColor`,"stroke-width":`1.3`,"stroke-linecap":`round`}),W(`circle`,{cx:`2.8`,cy:`4`,r:`1`,fill:`currentColor`}),W(`circle`,{cx:`2.8`,cy:`8`,r:`1`,fill:`currentColor`}),W(`circle`,{cx:`2.8`,cy:`12`,r:`1`,fill:`currentColor`})]})}function Vi(e){return W(K,{...e,children:[W(`circle`,{cx:`7`,cy:`7`,r:`4.5`,fill:`none`,stroke:`currentColor`,"stroke-width":`1.4`}),W(`path`,{d:`M10.4 10.4L14 14`,stroke:`currentColor`,"stroke-width":`1.4`,"stroke-linecap":`round`})]})}function Hi(e){return W(K,{...e,children:W(`path`,{d:`M4.5 4.5l7 7m0-7l-7 7`,stroke:`currentColor`,"stroke-width":`1.5`,"stroke-linecap":`round`})})}function Ui({direction:e,...t}){return W(K,{...t,children:[e!==`desc`&&W(`path`,{d:`M5 6.5L8 3.5l3 3`,fill:`none`,stroke:`currentColor`,"stroke-width":`1.4`,"stroke-linecap":`round`,"stroke-linejoin":`round`}),e!==`asc`&&W(`path`,{d:`M5 9.5l3 3 3-3`,fill:`none`,stroke:`currentColor`,"stroke-width":`1.4`,"stroke-linecap":`round`,"stroke-linejoin":`round`})]})}function Wi(e){return W(K,{...e,children:[W(`rect`,{x:`5.5`,y:`5.5`,width:`8`,height:`9`,rx:`1.5`,fill:`none`,stroke:`currentColor`,"stroke-width":`1.3`}),W(`path`,{d:`M10.5 3.5v-.5A1.5 1.5 0 0 0 9 1.5H4A1.5 1.5 0 0 0 2.5 3v7A1.5 1.5 0 0 0 4 11.5h.5`,fill:`none`,stroke:`currentColor`,"stroke-width":`1.3`})]})}function Gi(e){return W(K,{...e,children:W(`path`,{d:`M3.5 8.5l3 3 6-6.5`,fill:`none`,stroke:`currentColor`,"stroke-width":`1.6`,"stroke-linecap":`round`,"stroke-linejoin":`round`})})}function Ki(e){return W(K,{...e,children:[W(`rect`,{x:`1`,y:`3.5`,width:`14`,height:`9`,rx:`1.5`,fill:`none`,stroke:`currentColor`,"stroke-width":`1.3`}),W(`path`,{d:`M4 6.5h1M7.5 6.5h1M11 6.5h1M4 9.5h8`,stroke:`currentColor`,"stroke-width":`1.3`,"stroke-linecap":`round`})]})}var qi=2e3;function Ji({label:e,text:t,help:n,children:r}){let[i,a]=k(!1),o=M(void 0),s=Me();return A(()=>()=>clearTimeout(o.current),[]),W(S,{children:[W(`button`,{type:`button`,class:`button copy-button`,title:n,"aria-describedby":n?s:void 0,onClick:async()=>{await wt(e,t())&&(a(!0),clearTimeout(o.current),o.current=setTimeout(()=>a(!1),qi))},children:[W(i?Gi:Wi,{}),W(`span`,{children:r}),i&&W(`span`,{class:`copy-done`,children:` · Copied`})]}),n&&W(`span`,{id:s,hidden:!0,children:n})]})}function Yi({group:e}){return W(`span`,{class:`group-split`,children:[`failed`,`flaky`].filter(t=>e[t]>0).map(t=>W(`span`,{class:`group-split-part split-${t}`,children:[W(J,{outcome:t,decorative:!0}),e[t],` `,t]},t))})}var Xi=`https://github.com/qartisan/playwright-loupe/blob/main/docs/config.md#dimensions`;function Zi(e){return V({page:`test`,id:e.id,repeatEachIndex:e.repeatEachIndex})}function Qi(e,t){let n=Dr.value;return Or({...n,facets:{...n.facets,category:t===void 0?[]:[t]}},{page:`group`,signature:e})}function $i(e,t){return Or({...An,facets:{[e]:[t]}},{page:`tests`})}function ea(e){return e||`(unnamed project)`}function ta({rate:e}){return W(`span`,{class:`pass-rate`,title:dn,children:[W(`strong`,{children:fn(e)}),` pass rate`,W(`span`,{class:`visually-hidden`,children:` (skipped tests excluded)`})]})}function X({id:e,title:t,note:n,class:r,children:i}){return W(`section`,{class:`widget ${r??``}`,"aria-labelledby":e,children:[W(`h2`,{id:e,children:t}),n&&W(`p`,{class:`widget-note`,children:n}),i]})}function na({report:e,children:t}){let n=cn(e),{stats:r}=e.run,i=ln(r),a=un(r),o=i.map(({outcome:e,count:t})=>`${t} ${q(e).toLowerCase()}`).join(`, `);return W(`section`,{class:`widget widget-verdict`,"aria-labelledby":`w-verdict`,children:[W(`h2`,{id:`w-verdict`,class:`visually-hidden`,children:`Verdict`}),W(`div`,{class:`verdict`,children:[W(`p`,{class:`verdict-outcome outcome-${n}`,"data-verdict":n,children:[W(J,{outcome:n,decorative:!0}),W(`span`,{children:q(n)})]}),W(`p`,{class:`verdict-meta`,children:[a!==null&&W(S,{children:[W(ta,{rate:a}),` ·`,` `]}),U(r.total,`test`),` in `,W(`strong`,{children:H(e.run.durationMs)})]})]}),t,i.length>0&&W(S,{children:[W(`div`,{class:`outcome-bar`,role:`img`,"aria-label":o,children:i.map(({outcome:e,count:t,share:n})=>W(`span`,{class:`outcome-bar-part bar-${e}`,style:{flexGrow:n},title:`${t} ${q(e).toLowerCase()}`},e))}),W(`ul`,{class:`outcome-legend`,"aria-hidden":`true`,children:i.map(({outcome:e,count:t})=>W(`li`,{children:[W(J,{outcome:e,decorative:!0}),t,` `,q(e).toLowerCase()]},e))})]})]})}function ra({tests:e,action:t=`Copy rerun command`}){let n=Ei(e);return n.length===0?null:W(`div`,{class:`rerun-failed`,children:[W(Ji,{label:`Rerun command`,help:ki,text:()=>Ti(n),children:[t,` · `,U(n.length,`failed test`)]}),n.length>100&&W(`p`,{class:`rerun-note`,children:[`The command lists `,U(n.length,`test`),`: it is long, and some terminals may cut it.`]})]})}function ia({errors:e}){return W(X,{id:`w-run-errors`,class:`widget-run-errors`,title:W(S,{children:[W(Li,{}),U(e.length,`error`),` outside tests`]}),note:`A file that failed to load, a global setup or teardown, a worker teardown: Playwright may have run fewer tests.`,children:[W(`ul`,{class:`widget-list`,children:e.slice(0,3).map((e,t)=>W(`li`,{children:W(`code`,{children:rn(e.message)})},t))}),W(`p`,{class:`widget-more`,children:W(`a`,{href:V({page:`errors`}),children:`See the errors`})})]})}function aa({error:e,color:t}){let n=e.location?`${e.location.file}:${e.location.line}:${e.location.column}`:null;return W(`li`,{class:`run-error`,children:[W(`div`,{class:`run-error-meta`,children:[e.category&&W(G,{name:e.category,color:t}),e.project!==null&&W(`span`,{children:[`Project `,e.project||`(unnamed)`]}),n&&W(`code`,{children:n})]}),W(`pre`,{class:`message error-message`,children:e.message}),e.snippet&&W(`pre`,{class:`code-snippet`,children:e.snippet}),e.stack&&e.stack!==e.message&&W(`details`,{children:[W(`summary`,{children:`Stack trace`}),W(`pre`,{class:`stack`,children:e.stack})]})]})}function oa({group:e,colors:t,inCategory:n}){let{headline:r,firstTest:i,others:a}=an(e),o=on(e);return W(`a`,{class:`group-row`,href:Qi(e.signature,n),children:[W(`span`,{class:`group-row-head`,children:[n===void 0&&W(G,{name:e.category,color:t.get(e.category)}),W(`span`,{class:`group-row-counts`,children:[W(Yi,{group:e}),o&&W(`span`,{class:`group-attempts`,children:o})]})]}),i&&W(`span`,{class:`group-test`,children:[i.title,a>0&&W(`span`,{class:`muted`,children:[` +`,U(a,`other`)]})]}),W(`code`,{class:`group-message`,children:r})]})}function sa({groups:e,colors:t,inCategory:n}){return W(`ol`,{class:`widget-list group-list`,children:e.map(e=>W(`li`,{children:W(oa,{group:e,colors:t,inCategory:n})},e.signature))})}function ca({categories:e,colors:t}){let n=Math.max(...e.map(e=>e.tests),1);return W(`ul`,{class:`widget-list category-bars`,children:e.map(e=>W(`li`,{children:W(`a`,{class:`category-bar-row`,href:$i(`category`,e.name),children:[W(G,{name:e.name,color:t.get(e.name)}),W(`span`,{class:`category-bar-track`,"aria-hidden":`true`,children:W(`span`,{class:`category-bar`,style:{...ni(t.get(e.name)),width:`${e.tests/n*100}%`}})}),W(`span`,{class:`group-count`,children:U(e.tests,`test`)})]})},e.name))})}function la({categories:e,colors:t,open:n}){return W(`ul`,{class:`widget-list category-list`,children:e.map(e=>W(`li`,{"data-category":e.name,children:W(`details`,{open:e.name===n,children:[W(`summary`,{children:[W(Y,{class:`chevron`}),W(G,{name:e.name,color:t.get(e.name)}),W(`span`,{class:`muted`,children:U(e.groups.length,`error group`)}),W(`span`,{class:`group-count`,children:U(e.tests,`test`)})]}),W(sa,{groups:e.groups,colors:t,inCategory:e.name})]})},e.name))})}function ua({projects:e}){return W(`ul`,{class:`project-cards`,children:e.map(({project:e,passRate:t,durationMs:n})=>W(`li`,{children:W(`button`,{type:`button`,class:`project-card`,"aria-controls":`sidebar`,title:`Show this project in the sidebar`,onClick:()=>Mt(ci(e.name)),children:[W(`span`,{class:`project-name`,children:ea(e.name)}),W(`span`,{class:`counts`,children:[`passed`,`failed`,`flaky`,`skipped`].filter(t=>e.stats[t]>0).map(t=>W(`span`,{class:`count`,children:[W(J,{outcome:t,decorative:!0}),e.stats[t],` `,W(`span`,{class:`visually-hidden`,children:q(t).toLowerCase()})]},t))}),W(`span`,{class:`project-meta`,children:[U(e.stats.total,`test`),t!==null&&W(S,{children:[` · `,W(ta,{rate:t})]}),` `,`· `,H(n),` test time`]})]})},e.name))})}function da({value:e}){return W(`td`,{class:e===0?`zero`:void 0,children:e})}var fa=[`passed`,`failed`,`flaky`,`skipped`];function pa(e){let t=fa.filter(t=>e[t]>0).map(t=>`${e[t]} ${t}`);return t.length>0?t.join(`, `):`no tests`}function ma(e){return[...e.unknown?[`unknown value`]:[],...e.caseVariants.length>0?[`likely duplicate of ${e.caseVariants.join(`, `)}`]:[]]}function ha({row:e}){return W(S,{children:[e.unknown&&W(`span`,{class:`hygiene-flag flag-unknown`,title:`Not among the values declared in the config`,children:[W(Li,{}),`unknown value`]}),e.caseVariants.length>0&&W(`span`,{class:`hygiene-flag flag-case`,title:`Differs from another value only by case. Tags are case-sensitive, so they are counted apart.`,children:[W(Li,{}),`likely duplicate of `,e.caseVariants.join(`, `)]})]})}function ga({name:e,values:t}){return W(`ul`,{class:`dimension-bars`,children:t.map(t=>W(`li`,{class:`dimension-bar-row`,"data-value":t.value,children:[W(`span`,{class:`dimension-value-cell`,children:[W(_a,{name:e,row:t}),W(ha,{row:t})]}),W(`span`,{class:`outcome-bar dimension-bar`,role:`img`,"aria-label":`${t.value}: ${pa(t)}`,title:pa(t),children:fa.filter(e=>t[e]>0).map(e=>W(`span`,{class:`outcome-bar-part bar-${e}`,style:{flexGrow:t[e]}},e))}),W(`span`,{class:`dimension-bar-counts`,"aria-hidden":`true`,children:[`failed`,`flaky`].filter(e=>t[e]>0).map(e=>W(`span`,{class:`count`,children:[W(J,{outcome:e,decorative:!0}),t[e]]},e))}),W(`span`,{class:`dimension-total`,"aria-hidden":`true`,children:t.total})]},t.value))})}function _a({name:e,row:t}){return t.total===0?W(`span`,{class:`dimension-value`,children:t.value}):W(`a`,{class:`dimension-value`,href:$i(Nn(e),t.value),title:`Show the ${U(t.total,`test`)} with ${e} ${t.value}`,children:t.value})}var va={failed:`with failures`,flaky:`flaky`,passed:`all passed`,skipped:`skipped only`,none:`no tests`},Z=L(null);function ya(e,t){let n=Z.value;n?.key===e&&n.source===t&&(Z.value=null)}function ba(e){e.key===`Escape`&&Z.value&&(Z.value=null)}function xa({name:e,values:t}){return A(()=>(document.addEventListener(`keydown`,ba),()=>{document.removeEventListener(`keydown`,ba),Z.value?.key.startsWith(`${e}\u0000`)&&(Z.value=null)}),[e]),W(S,{children:[W(`p`,{class:`tile-summary`,children:yn(t)}),W(`ul`,{class:`dimension-tiles`,"aria-label":`${e} values`,children:vn(t).map(t=>{let n=gn(t),r=ma(t),i=[pa(t),...r].join(`; `),a=`${e}\u0000${t.value}`,o=Z.value?.key===a,s={class:`dimension-tile tile-${n}${o?` tooltip-open`:``}`,"data-value":t.value,"data-status":n,onPointerEnter:()=>Z.value={key:a,source:`hover`},onPointerLeave:()=>ya(a,`hover`),onFocus:()=>Z.value={key:a,source:`focus`},onBlur:()=>ya(a,`focus`)},c=W(S,{children:[n===`none`?W(`span`,{class:`tile-icon-none`,"aria-hidden":`true`}):W(J,{outcome:n,decorative:!0}),W(`span`,{class:`tile-value`,children:t.value}),r.length>0&&W(Li,{class:`tile-flag`}),W(`span`,{class:`visually-hidden`,children:[`: `,va[n],`, `,i]}),W(`span`,{class:`tile-details`,"aria-hidden":`true`,hidden:!o,children:[W(`strong`,{children:t.value}),W(`span`,{children:va[n]}),W(`span`,{children:pa(t)}),r.map(e=>W(`span`,{class:`tile-note`,children:e},e))]})]});return W(`li`,{children:t.total>0?W(`a`,{...s,href:$i(Nn(e),t.value),children:c}):W(`span`,{...s,tabIndex:0,children:c})},t.value)})})]})}function Sa({distribution:e}){let{definition:t,values:n,without:r}=e,i=`w-dimension-${t.name}`,a=hn(e);return W(`section`,{class:`widget widget-dimension`,"aria-labelledby":i,"data-dimension":t.name,"data-representation":a,children:[W(`h2`,{id:i,children:t.name}),W(`p`,{class:`widget-note`,children:[`From `,t.source===`tag`?`tags @${t.key}:…`:`annotations of type "${t.key}"`,r>0&&` · ${U(r,`test`)} without a value`]}),W(a===`bars`?ga:xa,{name:t.name,values:n}),W(`details`,{class:`dimension-table`,children:[W(`summary`,{children:[W(Y,{class:`chevron`}),`Table`]}),W(`table`,{class:`data-table`,children:[W(`thead`,{children:W(`tr`,{children:[W(`th`,{scope:`col`,children:`Value`}),fa.map(e=>W(`th`,{scope:`col`,children:W(J,{outcome:e,labelled:!0})},e)),W(`th`,{scope:`col`,children:`Total`})]})}),W(`tbody`,{children:n.map(e=>W(`tr`,{children:[W(`th`,{scope:`row`,children:[W(_a,{name:t.name,row:e}),W(ha,{row:e})]}),fa.map(t=>W(da,{value:e[t]},t)),W(da,{value:e.total})]},e.value))})]})]}),t.values===null&&W(`p`,{class:`widget-hint`,children:[`No expected values are configured, so typos cannot be flagged as unknown. Declare them with `,W(`code`,{children:`values`}),` in`,` `,W(`a`,{href:Xi,target:`_blank`,rel:`noopener noreferrer`,children:`the dimension definition`}),`.`]})]})}function Ca({test:e,children:t,aside:n}){return W(`div`,{class:`test-line`,children:[W(J,{outcome:e.outcome}),W(`span`,{class:`test-text`,children:[W(`a`,{href:Zi(e),children:e.title}),W(`span`,{class:`test-where`,children:[ea(e.project),` · `,e.file,e.repeatEachIndex>0&&` · repeat ${e.repeatEachIndex}`]}),t]}),n]})}function wa(e){return`${e.id}/${e.repeatEachIndex}`}function Ta({tests:e}){return W(X,{id:`w-slowest`,class:`widget-slowest`,title:`Slowest tests`,note:`Total duration, retries included.`,children:W(`ol`,{class:`widget-list`,children:e.map(e=>W(`li`,{children:W(Ca,{test:e,aside:W(`span`,{class:`duration`,children:H(e.durationMs)}),children:e.attempts.length>1&&W(`span`,{class:`test-where`,children:U(e.attempts.length,`attempt`)})})},wa(e)))})})}function Ea({tests:e}){return W(X,{id:`w-skipped`,class:`widget-skipped`,title:`Skipped tests`,children:W(`ul`,{class:`widget-list`,children:e.map(({test:e,kind:t,reason:n})=>W(`li`,{children:W(Ca,{test:e,children:W(`span`,{class:`test-where`,children:[t===`fixme`&&W(`span`,{class:`skip-kind`,children:`fixme`}),` `,n??W(`span`,{class:`muted`,children:`No reason given`})]})})},wa(e)))})})}function Da({tests:e,colors:t}){return W(X,{id:`w-flaky`,class:`widget-flaky`,title:`Flaky tests`,note:`Failed, then passed on a retry: the error of the failing attempt.`,children:W(`ul`,{class:`widget-list`,children:e.map(({test:e,error:n})=>W(`li`,{children:W(Ca,{test:e,children:n&&W(`span`,{class:`flaky-error`,children:[n.category&&W(G,{name:n.category,color:t.get(n.category)}),W(`code`,{children:rn(n.message)})]})})},wa(e)))})})}function Oa({report:e,groups:t,category:n}){let r=M(null);A(()=>{if(n===void 0)return;let e=[...r.current?.querySelectorAll(`[data-category]`)??[]].find(e=>e.dataset.category===n);e?.scrollIntoView({block:`start`}),e?.querySelector(`summary`)?.focus({preventScroll:!0})},[n]);let i=N(()=>Qt(t),[t]),a=N(()=>sn(e,i),[e,i]),o=N(()=>ri(e.categories),[e]),{errors:s}=e.run;return W(`div`,{class:`page view view-errors`,ref:r,children:[W(`h1`,{children:`Errors`}),s.length===0&&t.length===0&&W(`p`,{class:`muted`,children:`No errors in this run.`}),s.length>0&&W(X,{id:`w-run-errors`,class:`widget-run-error-list`,title:U(s.length,`run error`),note:`Reported outside any test: a file that failed to load, a global setup or teardown, a worker teardown. Playwright may have run fewer tests because of them.`,children:W(`ol`,{class:`run-errors`,children:s.map((e,t)=>W(aa,{error:e,color:e.category?o.get(e.category):void 0},t))})}),i.length>0&&W(X,{id:`w-groups`,class:`widget-groups`,title:U(i.length,`error group`),note:`Errors grouped by normalized signature: most failed tests first, then most flaky tests.`,children:W(sa,{groups:i,colors:o})}),a.length>0&&W(X,{id:`w-categories`,class:`widget-categories`,title:`Error categories`,note:`Failing tests per category; flaky tests count, and a test can be in several categories.`,children:W(la,{categories:a,colors:o,open:n},n)})]})}function ka({label:e,position:t,total:n,outside:r,previous:i,next:a,previousLabel:o,nextLabel:s,keys:c}){return W(`nav`,{class:`pager`,"aria-label":e,children:[W(`button`,{type:`button`,class:`button pager-button`,disabled:!i,"aria-keyshortcuts":c[0],onClick:i??void 0,children:[W(Y,{class:`chevron-back`}),o]}),W(`span`,{class:`pager-position`,children:t===null?r:`${t} of ${n}`}),W(`button`,{type:`button`,class:`button pager-button`,disabled:!a,"aria-keyshortcuts":c[1],onClick:a??void 0,children:[s,W(Y,{})]})]})}function Aa(e,t){let n=e.indexOf(t);return n===-1?{position:null,total:e.length,previous:null,next:null}:{position:n+1,total:e.length,previous:e[n-1]??null,next:e[n+1]??null}}function ja(e,t=[]){let n=Qt(e);return t.length===0?n:n.filter(e=>t.includes(e.category))}function Ma(e,t,n){let r=n.length>0&&n.includes(t.category);return{...Aa(ja(e,r?n:[]),t),restricted:r}}var Na=[{keys:[`j`,`k`],action:`Next / previous test`,where:`Test detail`},{keys:[`[`,`]`],action:`Previous / next attempt`,where:`Test detail`},{keys:[`n`,`p`],action:`Next / previous error group`,where:`Error group page`},{keys:[`←`,`→`],action:`Previous / next screenshot`,where:`Screenshot viewer`},{keys:[`/`],action:`Focus the search`,where:`Everywhere`},{keys:[`Escape`],action:`Clear the search, close a dialog`,where:`Everywhere`},{keys:[`?`],action:`Show keyboard shortcuts`,where:`Everywhere`}];function Pa(e){return e instanceof HTMLElement?e.isContentEditable||e instanceof HTMLTextAreaElement||e instanceof HTMLSelectElement?!0:e instanceof HTMLInputElement&&![`checkbox`,`radio`,`button`,`submit`,`reset`,`range`,`color`,`file`].includes(e.type):!1}function Fa(e){return e.defaultPrevented||e.ctrlKey||e.altKey||e.metaKey||e.isComposing||Pa(e.target)?!1:document.querySelector(`dialog[open]`)===null}function Ia(e){let t=M(e);t.current=e,j(()=>{let e=e=>{if(!Fa(e))return;let n=t.current[e.key];n&&(e.preventDefault(),n())};return document.addEventListener(`keydown`,e),()=>document.removeEventListener(`keydown`,e)},[])}function La({message:e=`This page does not exist in this report.`}){return W(`div`,{class:`page`,children:[W(`h1`,{children:`Not found`}),W(`p`,{children:e}),W(`p`,{children:W(`a`,{href:V({page:`dashboard`}),children:`Back to the dashboard`})})]})}function Ra(e){return e===0?`first run`:`retry ${e}`}function za({report:e,groups:t,group:n}){let r=Dr.value.facets.category??[],i=n?Ma(t,n,r):null,a=e=>e?()=>qt({page:`group`,signature:e.signature}):null;if(Ia({n:a(i?.next),p:a(i?.previous)}),!n||!i)return W(La,{message:`No error group with this signature in this report.`});let o=ri(e.categories).get(n.category);return W(`div`,{class:`page group-page`,children:[W(ka,{label:i.restricted?`Error groups in ${r.join(`, `)}`:`Error groups`,position:i.position,total:i.total,outside:``,previous:a(i.previous),next:a(i.next),previousLabel:`Previous group`,nextLabel:`Next group`,keys:[`p`,`n`]}),W(`p`,{class:`breadcrumb`,children:i.restricted?`Error group · ${r.join(`, `)}`:`Error group`}),W(`h1`,{children:[U(n.tests.length,`test`),` failing with this error`]}),W(`dl`,{class:`group-meta`,children:[W(`div`,{children:[W(`dt`,{children:`Category`}),W(`dd`,{children:W(G,{name:n.category,color:o})})]}),W(`div`,{children:[W(`dt`,{children:`Tests`}),W(`dd`,{children:W(Yi,{group:n})})]}),W(`div`,{children:[W(`dt`,{children:`Signature`}),W(`dd`,{children:W(`code`,{children:n.signature})})]})]}),W(`h2`,{children:`Sample message`}),W(`pre`,{class:`message group-sample`,children:n.message}),W(`h2`,{children:`Affected tests`}),W(`table`,{class:`affected-tests`,children:[W(`thead`,{children:W(`tr`,{children:[W(`th`,{scope:`col`,children:`Test`}),W(`th`,{scope:`col`,children:`Project`}),W(`th`,{scope:`col`,children:`File`}),W(`th`,{scope:`col`,children:`Error in`})]})}),W(`tbody`,{children:n.tests.map(({test:e,attempts:t})=>W(`tr`,{children:[W(`td`,{children:W(`span`,{class:`test-cell`,children:[W(J,{outcome:e.outcome}),W(`a`,{href:V({page:`test`,id:e.id,repeatEachIndex:e.repeatEachIndex}),children:[...e.suitePath,e.title].join(` › `)}),e.repeatEachIndex>0&&W(`span`,{class:`row-note`,children:[`repeat `,e.repeatEachIndex]})]})}),W(`td`,{children:e.project||`(unnamed project)`}),W(`td`,{children:W(`code`,{children:[e.file,`:`,e.line]})}),W(`td`,{children:[t.map(Ra).join(`, `),W(`span`,{class:`muted`,children:[` of `,U(e.attempts.length,`attempt`)]})]})]},`${e.id}/${e.repeatEachIndex}`))})]})]})}function Ba({report:e}){let t=N(()=>({dimensions:mn(e).filter(e=>e.values.length>0),slowest:Sn(e),skipped:wn(e),flaky:xn(e)}),[e]),n=N(()=>ri(e.categories),[e]),r=t.dimensions.length+t.slowest.length+t.skipped.length+t.flaky.length===0;return W(`div`,{class:`page view view-health`,children:[W(`h1`,{children:`Suite health`}),r&&W(`p`,{class:`muted`,children:`No dimension, slow, skipped or flaky test to show for this run.`}),t.dimensions.length>0&&W(`div`,{class:`widget-grid dimension-grid`,children:t.dimensions.map(e=>W(Sa,{distribution:e},e.definition.name))}),(t.slowest.length>0||t.skipped.length>0||t.flaky.length>0)&&W(`div`,{class:`widget-grid`,children:[t.slowest.length>0&&W(Ta,{tests:t.slowest}),t.flaky.length>0&&W(Da,{tests:t.flaky,colors:n}),t.skipped.length>0&&W(Ea,{tests:t.skipped})]})]})}var Va={env:`LOUPE_RUN_SCOPE=partial`,"file-filter":`file filter`,grep:`grep filter`,"project-filter":`project filter`,"last-failed":`--last-failed`,"only-changed":`--only-changed`,"test-list":`test list`,only:`test.only`,shard:`single shard`,list:`--list (no test ran)`};function Ha(e){return Va[e]??e}var Ua={"github-actions":`GitHub Actions`,gitlab:`GitLab CI`,"azure-pipelines":`Azure Pipelines`,circleci:`CircleCI`,jenkins:`Jenkins`,bitbucket:`Bitbucket Pipelines`,buildkite:`Buildkite`,travis:`Travis CI`};function Wa(e){return typeof e==`string`&&e.trim()!==``?e.trim():null}function Ga(e,t){return e===`partial`?t.length>0?`Partial run: ${t.map(Ha).join(`, `)}`:`Partial run`:`Full run`}function Ka(e,t){if(!e)return`No`;let n=Wa(t);return n===null?`Yes`:Ua[n]??n}function qa(e){return e?`${e.current} of ${e.total}`:null}function Ja(e){let{run:t,generator:n}=e,r=Wa(t.git.commit);return[{title:`Run`,rows:[{label:`Scope`,value:Ga(t.scope,t.scopeReasons)},{label:`CI`,value:Ka(t.environment.ci,t.environment.ciProvider)},Number.isFinite(t.workers)?{label:`Workers`,value:String(t.workers)}:null,Ya(`Shard`,qa(t.shard))]},{title:`Code`,rows:[r===null?null:{label:`Commit`,value:r.slice(0,7),full:r},Ya(`Branch`,t.git.branch),Ya(`Repository`,t.git.remote)]},{title:`Environment`,rows:[Ya(`Playwright`,t.playwrightVersion),Ya(`Loupe`,n.version),Ya(`Node`,t.environment.nodeVersion),Ya(`OS`,t.environment.os)]}].map(({title:e,rows:t})=>({title:e,rows:t.filter(e=>e!==null)})).filter(e=>e.rows.length>0)}function Ya(e,t){let n=Wa(t);return n===null?null:{label:e,value:n}}function Xa({report:e}){return W(X,{id:`w-run-details`,class:`widget-run-details`,title:`Run details`,children:W(`div`,{class:`run-details`,children:Ja(e).map(({title:e,rows:t})=>W(`div`,{class:`run-details-group`,children:[W(`h3`,{id:`run-details-${e.toLowerCase()}`,children:e}),W(`dl`,{"aria-labelledby":`run-details-${e.toLowerCase()}`,children:t.map(({label:e,value:t,full:n})=>W(`div`,{children:[W(`dt`,{children:e}),W(`dd`,{children:n===void 0?t:W(S,{children:[W(`code`,{title:n,children:t}),W(Ji,{label:`Commit hash`,help:n,text:()=>n,children:[`Copy`,W(`span`,{class:`visually-hidden`,children:` commit hash`})]})]})})]},e))})]},e))})})}function Za({report:e,groups:t,matched:n}){let r=N(()=>({categories:sn(e,t),projects:pn(e)}),[e,t]),i=N(()=>ri(e.categories),[e]);return W(`div`,{class:`page view view-overview`,children:[W(`h1`,{children:`Overview`}),W(na,{report:e,children:W(ra,{tests:n,action:`Rerun failed tests`})}),e.run.errors.length>0&&W(ia,{errors:e.run.errors}),r.categories.length>0&&W(X,{id:`w-categories`,class:`widget-categories`,title:`Error categories`,note:W(S,{children:[`Failing tests per category. `,W(`a`,{href:V({page:`errors`}),children:[`All `,U(t.length,`error group`)]})]}),children:W(ca,{categories:r.categories,colors:i})}),r.projects.length>0&&W(X,{id:`w-projects`,class:`widget-projects`,title:`Projects`,children:W(ua,{projects:r.projects})}),W(Xa,{report:e})]})}var Qa=[`diff`,`side`,`slider`,`overlay`],$a={diff:`Diff`,side:`Side by side`,slider:`Slider`,overlay:`Overlay`};function eo(e){let t=new Map;for(let n of e){if(n.kind!==`screenshot`||!n.comparison)continue;let{group:e,role:r}=n.comparison,i=t.get(e);i||t.set(e,i={group:e,images:{}}),!i.images[r]&&(i.images[r]=n)}let n=[...t.values()].filter(e=>Object.keys(e.images).length>1),r=new Set(n.flatMap(e=>Object.values(e.images))),i={comparisons:n,screenshots:[],videos:[],traces:[],files:[]};for(let t of e)r.has(t)||(t.kind===`screenshot`?i.screenshots.push(t):t.kind===`video`?i.videos.push(t):t.kind===`trace`?i.traces.push(t):i.files.push(t));return i}function to(e){return[...e.comparisons.map(e=>({type:`comparison`,set:e})),...e.screenshots.map(e=>({type:`image`,attachment:e}))]}function no(e){let{expected:t,actual:n,diff:r}=e.images;return Qa.filter(e=>e===`diff`?r!==void 0:t!==void 0&&n!==void 0)}function ro(e,t){return t!==null&&e.includes(t)?t:e.includes(`diff`)?`diff`:e[0]??`side`}function io(e,t){let n;try{n=new URL(Q(e),t)}catch{return null}if(n.protocol!==`file:`||n.host!==``)return null;let r;try{r=decodeURIComponent(n.pathname)}catch{return null}return/^\/[A-Za-z]:(?:\/|$)/.test(r)?r.slice(1):r}function ao(e,t){return`npx playwright show-trace ${xi(io(e,t)??e)}`}function oo(e,t){let n=e.trim(),r=n===``?``:`Requires Playwright ${n} or later. `;return t?`${r}Run it from your project root, in a POSIX shell (bash, zsh), so it uses the project's own Playwright.`:`${r}Run it from the report folder (the one containing index.html), in a POSIX shell (bash, zsh); it uses the project's own Playwright.`}function Q(e){return e.split(`/`).map(encodeURIComponent).join(`/`)}var so=L(null),co={expected:`Expected`,actual:`Actual`,diff:`Diff`};function lo(e){let[t,n]=k({}),r=Object.entries(e.images);return A(()=>{let e=!0,t=(t,r)=>{e&&n(e=>({...e,[t]:r}))};for(let[e,n]of r){if(!n.path){t(e,null);continue}let r=new Image;r.onload=()=>t(e,[r.naturalWidth,r.naturalHeight]),r.onerror=()=>t(e,null),r.src=Q(n.path)}return()=>{e=!1}},[r.map(([e,t])=>`${e}:${t.path}`).join(`
10
- `)]),t}function uo(e){return e===void 0?`…`:e===null?`not found`:`${e[0]} × ${e[1]}`}function fo({set:e,sizes:t,mode:n,onImageClick:r}){let[i,a]=k(50),[o,s]=k(50),c=Me(),{expected:l,actual:u}=e.images,[d,f]=[t.expected,t.actual];if(d===null)return W(Ko,{attachment:l});if(f===null)return W(Ko,{attachment:u});if(!d||!f)return W(`div`,{class:`cmp-loading`});let p=Math.max(d[0],f[0]),m=Math.max(d[1],f[1]),h=(t,n,i)=>W(`img`,{class:`cmp-layer`,src:Q(t.path??``),alt:`${co[i]} (${e.group})`,style:{width:`${n[0]/p*100}%`},onClick:r});return W(S,{children:[W(`div`,{class:`cmp-stack`,style:{"--w":p,"--h":m},children:[h(l,d,`expected`),W(`div`,{class:`cmp-top`,style:n===`slider`?{clipPath:`inset(0 0 0 ${i}%)`}:{opacity:o/100},children:h(u,f,`actual`)}),n===`slider`&&W(S,{children:[W(`input`,{type:`range`,class:`cmp-range`,min:0,max:100,value:i,"aria-label":`Divider position`,"aria-describedby":c,"aria-valuetext":`${i}%`,onInput:e=>a(Number(e.currentTarget.value))}),W(`span`,{class:`cmp-divider`,style:{left:`${i}%`}})]})]}),n===`slider`&&W(`p`,{class:`cmp-hint`,id:c,children:`Drag the divider, or use the arrow keys: expected on the left, actual on the right.`}),n===`overlay`&&W(`label`,{class:`cmp-opacity`,children:[`Actual opacity`,W(`input`,{type:`range`,min:0,max:100,value:o,"aria-valuetext":`${o}%`,onInput:e=>s(Number(e.currentTarget.value))}),W(`output`,{children:[o,`%`]})]})]})}function po({set:e,onImageClick:t}){let n=no(e),r=ro(n,so.value),i=lo(e),{expected:a,actual:o,diff:s}=e.images,c=n=>{let r=e.images[n];return r&&W(qo,{attachment:r,alt:`${co[n]} (${e.group})`,class:`cmp-image`,onClick:t},r.path)},l=i.expected&&i.actual?[i.expected,i.actual]:null,u=l&&(l[0][0]!==l[1][0]||l[0][1]!==l[1][1]);return W(`div`,{class:`comparison`,children:[W(`div`,{class:`cmp-modes`,role:`group`,"aria-label":`Comparison mode`,children:n.map(e=>W(`button`,{type:`button`,class:`button toggle-button`,"aria-pressed":e===r,onClick:()=>so.value=e,children:$a[e]},e))}),r===`diff`&&c(`diff`),r===`side`&&W(`div`,{class:`cmp-side${l?` cmp-scaled`:``}`,style:l?{"--w":l[0][0]+l[1][0],"--h":Math.max(l[0][1],l[1][1])}:void 0,children:[`expected`,`actual`].map((e,t)=>W(`figure`,{style:l?{flexGrow:l[t][0]}:void 0,children:[W(`figcaption`,{children:co[e]}),c(e)]},e))}),(r===`slider`||r===`overlay`)&&W(fo,{set:e,sizes:i,mode:r,onImageClick:t}),W(`p`,{class:`cmp-sizes`,children:[[[`expected`,a],[`actual`,o],[`diff`,s]].map(([e,t])=>t&&W(`span`,{children:[t.path?W(`a`,{href:Q(t.path),target:`_blank`,rel:`noopener`,children:co[e]}):co[e],` `,uo(i[e])]},e)),u&&W(`strong`,{class:`cmp-differ`,children:`Expected and actual sizes differ`})]})]})}function mo({set:e,open:t}){return W(`article`,{class:`comparison-card`,"aria-label":`Screenshot comparison ${e.group}`,children:[W(`div`,{class:`comparison-head`,children:[W(`h4`,{children:e.group}),W(`button`,{type:`button`,class:`button`,onClick:t,children:`Open in viewer`})]}),W(po,{set:e})]})}function ho({open:e,onClose:t,title:n,class:r,actions:i,children:a}){let o=M(null),s=M(null),c=Me();return j(()=>{let t=o.current;t&&(e&&!t.open?(s.current=document.activeElement instanceof HTMLElement?document.activeElement:null,t.showModal()):!e&&t.open&&t.close())}),W(`dialog`,{ref:o,class:`dialog ${r??``}`,"aria-labelledby":c,onClose:()=>{if(o.current?.open)return;t();let e=document.activeElement;(!e||e===document.body||o.current?.contains(e))&&s.current?.focus(),s.current=null},onClick:e=>{e.target===o.current&&o.current?.close()},children:[W(`div`,{class:`dialog-head`,children:[W(`h2`,{id:c,children:n}),W(`div`,{class:`dialog-actions`,children:[i,W(`button`,{type:`button`,class:`icon-button`,title:`Close`,onClick:()=>o.current?.close(),children:[W(Hi,{}),W(`span`,{class:`visually-hidden`,children:`Close`})]})]})]}),a]})}function go(){let e=St.value,t=M(null);return j(()=>{e&&(t.current?.focus(),t.current?.select())},[e]),W(ho,{open:e!==null,onClose:()=>St.value=null,title:`Copy ${e?.label.toLowerCase()??``}`,class:`copy-dialog`,children:[W(`p`,{class:`dialog-note`,children:`The browser did not allow copying from this page. The text is selected: press Ctrl+C (⌘C on macOS) to copy it.`}),W(`textarea`,{ref:t,class:`copy-text`,readOnly:!0,rows:8,"aria-label":e?.label??``,value:e?.text??``,spellcheck:!1})]})}function _o({open:e,onClose:t}){return W(ho,{open:e,onClose:t,title:`Keyboard shortcuts`,class:`shortcuts-dialog`,children:[W(`table`,{class:`shortcuts-table`,children:[W(`thead`,{children:W(`tr`,{children:[W(`th`,{scope:`col`,children:`Key`}),W(`th`,{scope:`col`,children:`Action`}),W(`th`,{scope:`col`,children:`Where`})]})}),W(`tbody`,{children:Na.map(({keys:e,action:t,where:n})=>W(`tr`,{children:[W(`td`,{children:e.map((e,t)=>W(`span`,{children:[t>0&&` / `,W(`kbd`,{children:e})]},e))}),W(`td`,{children:t}),W(`td`,{children:n})]},t))})]}),W(`p`,{class:`dialog-note`,children:`Single keys do nothing while typing in a field or with Ctrl, Alt or Meta held.`})]})}function vo({attachment:e,playwrightVersion:t}){let{path:n}=e,r=window.location.href,i=oo(t,n!==null&&io(n,r)!==null);return W(`div`,{class:`trace-card`,children:[W(`span`,{class:`attachment-name`,children:e.name}),n?W(S,{children:[W(`div`,{class:`trace-actions`,children:[W(Ji,{label:`Trace command`,help:i,text:()=>ao(n,r),children:`Copy trace command`}),W(`a`,{class:`button trace-download`,href:Q(n),download:n.slice(n.lastIndexOf(`/`)+1),children:`Download trace`})]}),W(`p`,{class:`trace-help`,children:i})]}):W(`span`,{class:`muted`,children:`(file missing)`})]})}var yo=/^((Expected|Received)(?: [a-z]+)*:)(\s+)(\S.*)$/,bo=/^- Expected(?:\s+- \d+)?$/,xo=/^\+ Received(?:\s+\+ \d+)?$/,So=/^[-+ ] /;function Co(e){return[{text:e,tone:null}]}function wo(e){let t=yo.exec(e);if(!t)return null;let[,n=``,r,i=``,a=``]=t;return[{text:`${n}${i}`,tone:null},{text:a,tone:r===`Expected`?`expected`:`received`}]}function To(e){return e.startsWith(`- `)?[{text:e,tone:`expected`}]:e.startsWith(`+ `)?[{text:e,tone:`received`}]:Co(e)}function Eo(e){let t=e.split(`
11
- `),n=[],r=0;for(;r<t.length;){let e=t[r],i=t[r+1];if(bo.test(e)&&i!==void 0&&xo.test(i)){for(n.push([{text:e,tone:`expected`}],[{text:i,tone:`received`}]),r+=2;r<t.length&&t[r]===``;)n.push(Co(t[r++]));for(;r<t.length&&So.test(t[r]);)n.push(To(t[r++]))}else n.push(wo(e)??Co(e)),r+=1}return n}var Do=/^(>)(\s*\d+ \|.*)$/,Oo=/^(\s*\|\s*)(\^+)(\s*)$/;function ko(e){return e.split(`
12
- `).map(e=>{let t=Do.exec(e);if(t)return[{text:t[1],tone:`marker`},{text:t[2],tone:`strong`}];let n=Oo.exec(e);return n?[{text:n[1],tone:null},{text:n[2],tone:`marker`},...n[3]?[{text:n[3],tone:null}]:[]]:Co(e)})}function Ao(e){let t=[],n=e,r=``;for(;;){let e=-1;for(let t=n.length-1;t>=0;t--)if(n[t]?.error){e=t;break}if(e===-1)return t;let i=`${r}${e}`;t.push(i),n=n[e].steps,r=`${i}.`}}function jo(e){return e.category===`test.step`||e.error!==null}function Mo(e,t){let n=new Set(Ao(e)),r=[...n].pop(),i=(e,a)=>e.flatMap((e,o)=>{let s=`${a}${o}`,c=i(e.steps,`${s}.`);return t==="default"&&!jo(e)&&c.length===0?[]:[{step:e,key:s,children:c,onFailingPath:n.has(s),failing:s===r}]});return i(e,``)}function No(e,t){let n=[],r=e;for(let e of t){let t=r[Number(e.split(`.`).pop())];if(!t)break;n.push(t),r=t.steps}return n}function Po(e,t=5){let n=Ao(e);if(n.length===0)return null;let r=No(e,n),i=r.length>1?r[r.length-2].steps:e,a=Number(n[n.length-1].split(`.`).pop());return{path:r,preceding:i.slice(Math.max(0,a-t),a)}}function Fo({lines:e}){return W(S,{children:e.map((e,t)=>W(S,{children:[t>0&&`
13
- `,e.map((e,t)=>e.tone?W(`span`,{class:`tone-${e.tone}`,children:e.text},t):e.text)]},t))})}function Io(e){return e?e.column===void 0?`${e.file}:${e.line}`:`${e.file}:${e.line}:${e.column}`:null}function Lo({error:e,group:t,color:n}){let r=Io(e.location);return W(`article`,{class:`error-card`,children:[W(`div`,{class:`error-head`,children:[W(G,{name:e.category??`Uncategorized`,color:n}),r&&W(`code`,{class:`error-location`,children:r}),t&&W(`a`,{class:`error-group-link`,href:Qi(t.signature),title:`Every test failing with this error`,children:[`View error group `,W(`span`,{class:`muted`,children:[`(`,U(t.tests.length,`test`),`)`]})]})]}),W(`pre`,{class:`message error-message`,children:W(Fo,{lines:Eo(e.message)})}),e.snippet&&W(`pre`,{class:`code-snippet`,children:W(Fo,{lines:ko(e.snippet)})}),e.stack&&e.stack!==e.message&&W(`details`,{class:`stack-details`,children:[W(`summary`,{children:[W(Y,{class:`chevron`}),`Show stack`]}),W(`pre`,{class:`stack`,children:e.stack})]})]})}function Ro(e){return e.error!==null&&!e.steps.some(e=>e.error!==null)}function zo({node:e,mode:t,expanded:n,toggle:r}){let{step:i,children:a}=e,o=n.has(e.key),s=Io(i.location?{file:i.location.file,line:i.location.line}:null);return W(`li`,{class:`step${e.onFailingPath?` step-failing-path`:``}${e.failing?` step-failing`:``}`,"data-category":i.category,children:[W(`div`,{class:`step-row`,children:[a.length>0?W(`button`,{type:`button`,class:`step-toggle`,"aria-expanded":o,onClick:()=>r(e.key),children:[W(Y,{class:`chevron`}),W(`span`,{class:`visually-hidden`,children:[o?`Collapse`:`Expand`,` `,i.title]})]}):W(`span`,{class:`step-toggle-space`}),i.error?W(J,{outcome:`failed`}):W(`span`,{class:`step-icon-space`}),W(`span`,{class:`step-text`,children:[W(`span`,{class:`step-title`,children:i.title}),i.subtitle&&W(`span`,{class:`step-subtitle`,children:[` `,i.subtitle]}),t===`all`&&W(`span`,{class:`step-category`,children:i.category}),e.failing&&W(`span`,{class:`visually-hidden`,children:` (failing step)`})]}),s&&W(`code`,{class:`step-location`,children:s}),W(`span`,{class:`step-duration`,children:H(i.durationMs)})]}),i.error&&Ro(i)&&W(`pre`,{class:`message step-error`,children:W(Fo,{lines:Eo(i.error.message)})}),o&&a.length>0&&W(Bo,{nodes:a,mode:t,expanded:n,toggle:r})]})}function Bo({nodes:e,mode:t,expanded:n,toggle:r}){return W(`ul`,{class:`step-list`,children:e.map(e=>W(zo,{node:e,mode:t,expanded:n,toggle:r},e.key))})}function Vo({steps:e,mode:t}){let n=Mo(e,t),[r,i]=k(()=>new Set(Ao(e)));return n.length===0?W(`p`,{class:`muted`,children:[`No `,t==="default"?`test.step or failing step`:`step`,` in this attempt.`]}):W(Bo,{nodes:n,mode:t,expanded:r,toggle:e=>i(t=>{let n=new Set(t);return n.has(e)?n.delete(e):n.add(e),n})})}var Ho=new TextEncoder;function Uo(e){return e<1e3?`${e} B`:e<1e6?`${(e/1e3).toFixed(1)} kB`:`${(e/1e6).toFixed(1)} MB`}function Wo({attachment:e}){let t=t=>W(`span`,{class:`attachment-meta`,children:[e.contentType,t&&` · ${t}`]});return e.body===null?W(`div`,{class:`attachment-file`,children:[e.path?W(`a`,{class:`attachment-name`,href:Q(e.path),children:e.name}):W(`span`,{class:`attachment-name`,children:[e.name,` `,W(`span`,{class:`muted`,children:`(file missing)`})]}),t(null)]}):W(`details`,{class:`attachment-body`,children:[W(`summary`,{children:[W(Y,{class:`chevron`}),W(`span`,{class:`attachment-name`,children:e.name}),t(Uo(Ho.encode(e.body).length))]}),W(`pre`,{children:e.body})]})}function Go({name:e,output:t}){if(t.text===``&&!t.truncated)return null;let n=t.text.split(`
14
- `).filter((e,t,n)=>e!==``||t<n.length-1).length;return W(`details`,{class:`output-block`,children:[W(`summary`,{children:[W(Y,{class:`chevron`}),W(`span`,{class:`output-name`,children:e}),W(`span`,{class:`muted`,children:U(n,`line`)}),t.truncated&&W(`span`,{class:`output-truncated`,children:`truncated`})]}),t.truncated&&W(`p`,{class:`output-notice`,children:`Truncated: the report keeps the first 32,768 characters of each attempt.`}),W(`pre`,{children:t.text})]})}function Ko({attachment:e,note:t=`File not found`}){return W(`span`,{class:`media-missing`,children:[W(`strong`,{children:e.name}),W(`span`,{children:t}),W(`code`,{children:e.path??`no file in the report`})]})}function qo({attachment:e,alt:t=e.name,lazy:n=!1,class:r,onClick:i}){let[a,o]=k(!1);return!e.path||a?W(Ko,{attachment:e}):W(`img`,{src:Q(e.path),alt:t,class:r,loading:n?`lazy`:void 0,decoding:`async`,onError:()=>o(!0),onClick:i})}function Jo({attachment:e,label:t=`Open original`}){return e.path?W(`a`,{class:`open-original`,href:Q(e.path),target:`_blank`,rel:`noopener`,children:t}):null}function Yo({screenshots:e,open:t}){return W(`ul`,{class:`thumbs`,children:e.map((e,n)=>W(`li`,{children:W(`button`,{type:`button`,class:`thumb`,onClick:()=>t(n),children:[W(qo,{attachment:e,lazy:!0},e.path),W(`span`,{class:`thumb-name`,"aria-hidden":`true`,children:e.name})]})},n))})}function Xo(e,t){let n=M(t);n.current=t,A(()=>{if(!e)return;let t=e=>{let t={ArrowLeft:-1,ArrowRight:1}[e.key];!t||e.defaultPrevented||e.ctrlKey||e.altKey||e.metaKey||e.shiftKey||Pa(e.target)||e.target instanceof HTMLInputElement&&e.target.type===`range`||(e.preventDefault(),n.current(t))};return document.addEventListener(`keydown`,t),()=>document.removeEventListener(`keydown`,t)},[e])}function Zo({items:e,index:t,setIndex:n}){let[r,i]=k(null),a=t!==null&&r===t,o=t===null?void 0:e[t],s=r=>{t!==null&&e[t+r]&&n(t+r)};Xo(o!==void 0,s);let c=()=>i(a?null:t);return W(ho,{open:o!==void 0,onClose:()=>{n(null),i(null)},title:o?o.type===`image`?o.attachment.name:o.set.group:``,class:`lightbox${a?` actual-size`:``}`,actions:o?.type===`image`&&W(Jo,{attachment:o.attachment}),children:o&&t!==null&&W(S,{children:[W(`div`,{class:`lightbox-stage`,onClick:e=>{e.target===e.currentTarget&&n(null)},children:o.type===`image`?W(qo,{attachment:o.attachment,class:`lightbox-image`,onClick:c},o.attachment.path):W(po,{set:o.set,onImageClick:c},o.set.group)}),W(`div`,{class:`lightbox-bar`,children:[W(`button`,{type:`button`,class:`button pager-button`,disabled:t===0,onClick:()=>s(-1),children:`← Previous`}),W(`span`,{class:`lightbox-position`,"aria-live":`polite`,children:[t+1,` of `,e.length]}),W(`button`,{type:`button`,class:`button pager-button`,disabled:t===e.length-1,onClick:()=>s(1),children:`Next →`}),W(`button`,{type:`button`,class:`button toggle-button`,"aria-pressed":a,onClick:c,children:`Actual size`})]})]})})}function Qo({attachment:e}){let[t,n]=k(!1);return W(`figure`,{class:`video`,children:[e.path&&!t?W(`video`,{controls:!0,preload:`metadata`,children:W(`source`,{src:Q(e.path),type:e.contentType,onError:()=>n(!0)})}):W(Ko,{attachment:e,note:e.path?`Cannot play this video`:`File not found`}),W(`figcaption`,{children:[W(`span`,{class:`attachment-name`,children:e.name}),W(Jo,{attachment:e})]})]})}function $o({label:e,count:t,children:n}){return t===0?null:W(`section`,{class:`attachment-group`,"aria-label":e,children:[W(`h3`,{children:[e,` `,W(`span`,{class:`muted`,children:t})]}),n]})}function es({attachments:e}){return W(`ul`,{class:`attachment-list`,children:e.map((e,t)=>W(`li`,{children:W(Wo,{attachment:e})},t))})}function ts({attachments:e,playwrightVersion:t}){let n=eo(e),[r,i]=k(null),a=e=>i(e===null?null:{index:e}),o=B.value;A(()=>i(null),[o]);let s=n.files.filter(e=>e.kind===`text`),c=n.files.filter(e=>e.kind!==`text`);return W(`div`,{class:`attachment-groups`,children:[W($o,{label:`Screenshots`,count:n.comparisons.length+n.screenshots.length,children:[n.comparisons.map((e,t)=>W(mo,{set:e,open:()=>a(t)},e.group)),n.screenshots.length>0&&W(Yo,{screenshots:n.screenshots,open:e=>a(n.comparisons.length+e)})]}),W($o,{label:`Videos`,count:n.videos.length,children:n.videos.map((e,t)=>W(Qo,{attachment:e},`${t}/${e.path}`))}),W($o,{label:`Traces`,count:n.traces.length,children:n.traces.map((e,n)=>W(vo,{attachment:e,playwrightVersion:t},n))}),W($o,{label:`Text`,count:s.length,children:W(es,{attachments:s})}),W($o,{label:`Other`,count:c.length,children:W(es,{attachments:c})}),W(Zo,{items:to(n),index:r?.index??null,setIndex:a})]})}function ns(e){return e===0?`Attempt 1`:`Retry ${e}`}function rs(e){let t=e.attempts.filter(t=>Xt(e,t));return t[t.length-1]??e.attempts[e.attempts.length-1]??null}function is(e,t){if(t===null)return{attempt:rs(e),valid:!0};let n=e.attempts.find(e=>e.index===t);return n?{attempt:n,valid:!0}:{attempt:rs(e),valid:!1}}var as=`A Playwright test failed. Explain the most likely cause of the failure, say whether the problem is more likely in the test or in the application under test, and suggest a fix.`;function os(e){let t=e.replace(/\s+$/,``),n=Math.max(2,...[...t.matchAll(/`+/g)].map(e=>e[0].length)),r="`".repeat(n+1);return`${r}\n${t}\n${r}`}function ss(e){return e.location?`${e.location.file}:${e.location.line}:${e.location.column}`:null}function cs(e){return e.subtitle?`${e.title} (${e.subtitle})`:e.title}function ls(e,t,n,r){let i=[`## Error${n>1?` ${t+1} of ${n}`:``}`,``,`Category: ${e.category??`Uncategorized`}`],a=ss(e);return a&&i.push(`Location: ${a}`),i.push(``,`Message:`,os(e.message)),e.snippet&&i.push(``,`Code:`,os(e.snippet)),r.includeStack&&e.stack&&e.stack!==e.message&&i.push(``,`Stack:`,os(e.stack)),i}function us(e,t,n){let r=e.attempts.findIndex(e=>e.index===t.index)+1,i=[as,``,`## Test`,``,`- Title: ${[...e.suitePath,e.title].join(` › `)}`,`- Location: ${e.file}:${e.line}`,`- Project: ${e.project||`(unnamed)`}`,`- Outcome: ${e.outcome}`,`- Attempt: ${r} of ${e.attempts.length} (${ns(t.index).toLowerCase()}), status ${t.status}`,`- Error category: ${t.errors[0]?.category??e.category??`none`}`];e.tags.length>0&&i.push(`- Tags: ${e.tags.join(`, `)}`);let a=[...e.annotations,...t.annotations];a.length>0&&i.push(`- Annotations: ${a.map(({type:e,description:t})=>t?`${e}: ${t}`:e).join(`; `)}`),t.errors.forEach((e,r)=>i.push(``,...ls(e,r,t.errors.length,n))),t.errors.length===0&&i.push(``,`## Error`,``,`This attempt reported no error.`);let o=Po(t.steps);return o&&(i.push(``,`## Failing step`,``,o.path.map(cs).join(` › `)),o.preceding.length>0&&i.push(``,`Steps before it, at the same level:`,...o.preceding.map((e,t)=>`${t+1}. ${cs(e)}`))),t.attachments.length>0&&i.push(``,`## Attachments (not included)`,``,...t.attachments.map(e=>`- ${e.name} (${e.contentType})`)),`${i.join(`
15
- `)}\n`}var ds={passed:`passed`,failed:`failed`,timedOut:`failed`,interrupted:`failed`,skipped:`skipped`},fs={passed:`Passed`,failed:`Failed`,timedOut:`Timed out`,interrupted:`Interrupted`,skipped:`Skipped`};function ps(e){return{page:`test`,id:e.id,repeatEachIndex:e.repeatEachIndex}}function ms({type:e,description:t}){return t?`${e}: ${t}`:e}function hs({test:e}){let t=Object.entries(e.dimensions).filter(([,e])=>e.length>0);return e.tags.length===0&&e.annotations.length===0&&t.length===0?null:W(`dl`,{class:`test-meta`,children:[e.tags.length>0&&W(`div`,{children:[W(`dt`,{children:`Tags`}),W(`dd`,{class:`chips`,children:e.tags.map(e=>W(`span`,{class:`tag`,children:e},e))})]}),e.annotations.length>0&&W(`div`,{children:[W(`dt`,{children:`Annotations`}),W(`dd`,{class:`chips`,children:e.annotations.map((e,t)=>W(`span`,{class:`tag`,children:ms(e)},t))})]}),t.map(([e,t])=>W(`div`,{children:[W(`dt`,{children:e}),W(`dd`,{children:t.join(`, `)})]},e))]})}function gs({test:e,selected:t,select:n}){let r=M(null),i=t=>{let i=e.attempts[(t+e.attempts.length)%e.attempts.length];i&&(n(i),r.current?.querySelector(`[data-attempt="${i.index}"]`)?.focus())},a=e.attempts.indexOf(t);return W(`div`,{class:`attempt-tabs`,role:`tablist`,"aria-label":`Attempts`,ref:r,onKeyDown:t=>{let n={ArrowRight:a+1,ArrowLeft:a-1,Home:0,End:e.attempts.length-1}[t.key];n!==void 0&&(t.preventDefault(),i(n))},children:e.attempts.map(e=>{let r=e===t;return W(`button`,{type:`button`,role:`tab`,id:`attempt-tab-${e.index}`,class:`attempt-tab`,"data-attempt":e.index,"aria-selected":r,"aria-controls":`attempt-panel`,tabIndex:r?0:-1,onClick:()=>n(e),children:[W(J,{outcome:ds[e.status],decorative:!0}),W(`span`,{children:ns(e.index)}),W(`span`,{class:`visually-hidden`,children:[`, `,fs[e.status]]}),W(`span`,{class:`attempt-duration`,children:H(e.durationMs)})]},e.index)})})}function _s({test:e,attempt:t,params:n,groups:r,colors:i,playwrightVersion:a}){let o=n.allSteps?`all`:`default`,s=new Set(e.annotations.map(ms)),c=t.annotations.filter(e=>!s.has(ms(e)));return W(S,{children:[t.errors.length>0&&W(`section`,{class:`detail-section`,"aria-labelledby":`detail-errors`,children:[W(`h2`,{id:`detail-errors`,children:t.errors.length===1?`Error`:U(t.errors.length,`error`)}),t.errors.map((e,t)=>W(Lo,{error:e,group:r.get(e.signature),color:e.category?i.get(e.category):void 0},t))]}),t.steps.length>0&&W(`section`,{class:`detail-section`,"aria-labelledby":`detail-steps`,children:[W(`div`,{class:`section-head`,children:[W(`h2`,{id:`detail-steps`,children:`Steps`}),W(`button`,{type:`button`,class:`button toggle-button`,"aria-pressed":n.allSteps,onClick:()=>Ar(xr({...n,allSteps:!n.allSteps})),children:`Show all steps`})]}),W(Vo,{steps:t.steps,mode:o},`${e.id}/${e.repeatEachIndex}/${t.index}`)]}),t.attachments.length>0&&W(`section`,{class:`detail-section`,"aria-labelledby":`detail-attachments`,children:[W(`h2`,{id:`detail-attachments`,children:`Attachments`}),W(ts,{attachments:t.attachments,playwrightVersion:a},`${e.id}/${e.repeatEachIndex}/${t.index}`)]}),c.length>0&&W(`section`,{class:`detail-section`,"aria-labelledby":`detail-annotations`,children:[W(`h2`,{id:`detail-annotations`,children:`Annotations of this attempt`}),W(`ul`,{class:`chips`,children:c.map((e,t)=>W(`li`,{class:`tag`,children:ms(e)},t))})]}),(t.stdout.text!==``||t.stderr.text!==``||t.stdout.truncated||t.stderr.truncated)&&W(`section`,{class:`detail-section`,"aria-labelledby":`detail-output`,children:[W(`h2`,{id:`detail-output`,children:`Output`}),W(Go,{name:`stdout`,output:t.stdout}),W(Go,{name:`stderr`,output:t.stderr})]})]})}function vs({report:e,test:t,sequence:n,groups:r,settings:i}){let a=N(()=>ri(e.categories),[e]),o=br(B.value.search),s=t?is(t,o.attempt):null,c=s?.attempt??null;j(()=>{s&&!s.valid&&Ar(xr({...o,attempt:null}))},[s?.valid]);let l=t?Aa(n,t):null,u=e=>e?()=>qt(ps(e)):null,d=e=>{if(!t||!c)return null;let n=t.attempts[t.attempts.indexOf(c)+e];return n?()=>Ar(xr({...o,attempt:n.index})):null};if(Ia({j:u(l?.next),k:u(l?.previous),"[":d(-1),"]":d(1)}),!t)return W(La,{message:`No test with this id in this report.`});let{primary:f}=tr(t),p=Oi(e.tests,t);return W(`div`,{class:`page test-page`,children:[W(ka,{label:`Tests in the current list`,position:l?.position??null,total:n.length,outside:`Not in the current list (${U(n.length,`test`)})`,previous:u(l?.previous),next:u(l?.next),previousLabel:`Previous`,nextLabel:`Next`,keys:[`k`,`j`]}),W(`header`,{class:`test-header`,children:[W(`h1`,{class:`test-title`,children:[t.suitePath.map((e,t)=>W(`span`,{class:`title-suite`,children:[e,W(`span`,{class:`title-separator`,children:` › `})]},t)),t.title,t.repeatEachIndex>0&&W(`span`,{class:`row-note`,children:[` repeat `,t.repeatEachIndex]})]}),W(`div`,{class:`test-summary`,children:[W(J,{outcome:t.outcome,labelled:!0}),W(`span`,{children:ea(t.project)}),W(`code`,{children:[t.file,`:`,t.line]}),W(`span`,{children:H(t.durationMs)}),f!==null&&W(G,{name:f,color:a.get(f)})]}),W(hs,{test:t}),W(`div`,{class:`test-actions`,children:[W(Ji,{label:`Rerun command`,help:ki,text:()=>Ti([t]),children:`Copy rerun command`}),p&&W(Ji,{label:`Rerun command`,help:`For a POSIX shell (bash, zsh), run from the Playwright root directory: paths are relative to it. A file:line argument targets the line where the test is declared, and reruns every test declared on that line. The command is only valid while the file has not changed since the run.`,text:()=>Ti(p.tests),children:[`Copy rerun command · `,p.label]}),c&&c.errors.length>0&&W(Ji,{label:`AI prompt`,help:`A description of this attempt's failure, in English, to paste in the AI assistant of your choice. Nothing is sent anywhere.`,text:()=>us(t,c,{includeStack:i.aiPrompt.includeStack}),children:`Copy AI prompt`})]})]}),c&&t.attempts.length>1&&W(gs,{test:t,selected:c,select:e=>Ar(xr({...o,attempt:e.index}))}),c&&W(`div`,{class:`attempt-panel`,id:`attempt-panel`,role:t.attempts.length>1?`tabpanel`:void 0,"aria-labelledby":t.attempts.length>1?`attempt-tab-${c.index}`:void 0,children:W(_s,{test:t,attempt:c,params:o,groups:r,colors:a,playwrightVersion:e.run.playwrightVersion})})]})}function ys(e){let t=Pn(e);return t===null?{status:`Status`,project:`Project`,tag:`Tag`,category:`Error category`}[e]:t}function bs(e,t){return e===`status`?q(t):e===`project`?t||`(unnamed project)`:t}function xs({facet:e,value:t,colors:n}){return e===`status`?W(J,{outcome:t,labelled:!0}):e===`category`?W(G,{name:t,color:n.get(t)}):W(`span`,{class:`facet-value`,children:bs(e,t)})}function Ss({state:e,facet:t,values:n,counts:r,colors:i}){let a=M(null),o=e.facets[t]??[],s=ys(t);return A(()=>{let e=e=>{let t=a.current;t?.open&&!t.contains(e.target)&&(t.open=!1)};return document.addEventListener(`pointerdown`,e),()=>document.removeEventListener(`pointerdown`,e)},[]),W(`details`,{class:`facet`,ref:a,onKeyDown:e=>{let t=a.current;e.key===`Escape`&&t?.open&&(t.open=!1,t.querySelector(`summary`)?.focus(),e.stopPropagation())},"data-facet":t,children:[W(`summary`,{class:`facet-button`,children:[W(`span`,{children:s}),o.length>0&&W(`span`,{class:`facet-selected`,children:[o.length,W(`span`,{class:`visually-hidden`,children:` selected`})]}),W(Y,{class:`chevron`})]}),W(`fieldset`,{class:`facet-menu`,children:[W(`legend`,{class:`visually-hidden`,children:s}),[...n].map(n=>{let a=r?.get(n)??0,s=o.includes(n);return W(`label`,{class:`facet-option${a===0&&!s?` facet-option-empty`:``}`,children:[W(`input`,{type:`checkbox`,checked:s,onChange:r=>kr(Wn(e,t,n,r.currentTarget.checked))}),W(xs,{facet:t,value:n,colors:i}),W(`span`,{class:`facet-count`,children:[a,W(`span`,{class:`visually-hidden`,children:[` `,a===1?`test`:`tests`]})]})]},n)})]})]})}function Cs({state:e,domain:t,counts:n,colors:r}){return W(`div`,{class:`facets`,role:`group`,"aria-label":`Filters`,children:[...t].filter(([e,t])=>e!==`project`||t.size>1).map(([t,i])=>W(Ss,{state:e,facet:t,values:i,counts:n.get(t),colors:r},t))})}function ws(e,t){let n=[];e.q.trim()!==``&&n.push({key:`q`,label:`Search: ${e.q.trim()}`,remove:e=>({...e,q:``})});let r=new Map([...t.keys()].map((e,t)=>[e,t])),i=kn(e.facets).sort(([e],[t])=>(r.get(e)??1/0)-(r.get(t)??1/0));for(let[e,t]of i)for(let r of t)n.push({key:`${e}\u0000${r}`,label:`${ys(e)}: ${bs(e,r)}`,remove:t=>Wn(t,e,r,!1)});return n}function Ts({state:e,domain:t}){let n=ws(e,t),r=M(null),i=M(null);return j(()=>{if(i.current===null)return;let e=[...r.current?.querySelectorAll(`button`)??[]],t=e[Math.min(i.current,e.length-2)]??e[e.length-1];i.current=null,t?t.focus():document.querySelector(`.facets summary`)?.focus()}),n.length===0?null:W(`div`,{class:`filter-chips`,ref:r,children:[W(`ul`,{"aria-label":`Active filters`,children:n.map((t,n)=>W(`li`,{children:W(`button`,{type:`button`,class:`chip`,"aria-label":`Remove filter ${t.label}`,onClick:()=>{i.current=n,kr(t.remove(e))},children:[W(`span`,{children:t.label}),W(Hi,{})]})},t.key))}),W(`button`,{type:`button`,class:`text-button`,onClick:()=>{i.current=0,kr(Gn(e))},children:`Clear all`})]})}var Es=new Intl.NumberFormat(`en-US`);function $(e){return Es.format(e)}function Ds(e,t){return Math.min(e,Math.max(t,0))}function Os(e,t,n){let r=e=>e===1?`test`:`tests`;return e<t?t===n?`Showing ${$(e)} of ${$(n)} ${r(n)}`:`Showing ${$(e)} of ${$(t)} matching ${r(t)} (${$(n)} in total)`:t===n?`${$(n)} ${r(n)}`:`${$(t)} of ${$(n)} ${r(n)}`}function ks(e,t,n){let r=[];for(let{name:n}of t)for(let t of new Set(e.dimensions[n]??[]))r.push({facet:Nn(n),value:t,label:t,name:`${n}: ${t}`});let i=[...new Set(Jn(e.tags,n))].sort((e,t)=>e.localeCompare(t));for(let e of i)r.push({facet:`tag`,value:e,label:e,name:`Tag: ${e}`});return r}var As=new WeakMap;function js(e){let t=As.get(e);if(!t){let n=qn(e);t=new Map(e.tests.map(t=>[t.id,ks(t,e.dimensions,n)])),As.set(e,t)}return t}function Ms(e,t,n=4){if(e.length<=n)return{shown:[...e],hidden:0};let r=n-e.filter(t).length,i=e.filter(e=>t(e)?!0:(--r,r>=0));return{shown:i,hidden:e.length-i.length}}function Ns(e,t){return e.facets[t.facet]?.includes(t.value)??!1}function Ps(e,t){return Wn(e,t.facet,t.value,!Ns(e,t))}var Fs=[{column:`status`,label:`Status`},{column:`title`,label:`Test`},{column:`project`,label:`Project`},{column:`file`,label:`File`},{column:`duration`,label:`Duration`,numeric:!0},{column:`category`,label:`Error category`},{column:`attempts`,label:`Attempts`,numeric:!0}];function Is({report:e,state:t,sorted:n}){let r=N(()=>ri(e.categories),[e]),i=js(e),a=N(()=>or(e.tests,t,Cr.value,wr.value),[e,Hn({...t,sort:On})]),o=e.tests.length,s=Hn(t),c=M({viewKey:s,limit:500});c.current.viewKey!==s&&(c.current={viewKey:s,limit:500});let[,l]=k(0),u=Ds(n.length,c.current.limit),d=N(()=>n.slice(0,u),[n,u]),f=Os(u,n.length,o),p=M(null),m=M(null);j(()=>{m.current!==null&&(p.current?.rows[m.current]?.querySelector(`a`)?.focus(),m.current=null)});let h=e=>{m.current=u,c.current={viewKey:s,limit:e},l(e=>e+1)};return W(`div`,{class:`page view view-tests`,children:[W(`h1`,{children:`Tests`}),o>0&&W(`div`,{class:`filter-bar`,children:[W(Cs,{state:t,domain:Cr.value,counts:a,colors:r}),W(Ts,{state:t,domain:Cr.value})]}),W(`p`,{class:`result-count`,"aria-live":`polite`,"aria-atomic":`true`,children:f}),W(ra,{tests:n}),o===0?W(`p`,{class:`muted`,children:`No tests in this run.`}):n.length===0?W(`div`,{class:`empty-state`,children:[W(`p`,{children:`No tests match these filters.`}),W(`button`,{type:`button`,class:`button`,onClick:()=>kr(Gn(t)),children:`Reset filters`})]}):W(`div`,{class:`table-scroll`,children:W(`table`,{class:`tests-table`,children:[W(`thead`,{children:W(`tr`,{children:Fs.map(({column:e,label:n,numeric:r})=>{let i=t.sort.column===e;return W(`th`,{scope:`col`,class:r?`numeric`:void 0,"aria-sort":i?t.sort.direction===`asc`?`ascending`:`descending`:void 0,children:W(`button`,{type:`button`,class:`sort-button`,onClick:()=>kr({...t,sort:fr(t.sort,e)}),children:[n,W(Ui,{direction:i?t.sort.direction:null,class:i?`sort-active`:`sort-idle`})]})},e)})})}),W(`tbody`,{ref:p,children:d.map(e=>W(Vs,{test:e,chips:i.get(e.id)??zs,state:t,colors:r},`${e.id}/${e.repeatEachIndex}`))})]})}),u<n.length&&W(`div`,{class:`table-more`,children:[W(`p`,{children:f}),W(`button`,{type:`button`,class:`button`,onClick:()=>h(u+500),children:[`Show `,Math.min(500,n.length-u),` more`]}),W(`button`,{type:`button`,class:`button`,onClick:()=>h(n.length),children:`Show all`})]})]})}function Ls({path:e}){let t=e.split(`/`);return W(S,{children:t.map((e,n)=>W(S,{children:[e,n<t.length-1&&W(S,{children:[`/`,W(`wbr`,{})]})]},n))})}function Rs({test:e,colors:t}){let{primary:n,others:r}=tr(e);return n===null?null:W(`span`,{class:`category-badges`,children:[W(G,{name:n,color:t.get(n)}),r.length>0&&W(`span`,{class:`category-more`,title:`Other ${r.length===1?`category`:`categories`} in failing attempts: ${r.join(`, `)}`,children:[W(`span`,{"aria-hidden":`true`,children:[`+`,r.length]}),W(`span`,{class:`visually-hidden`,children:[`, and `,U(r.length,`other category`,`other categories`),`: `,r.join(`, `)]})]})]})}var zs=[];function Bs({chips:e,state:t}){let[n,r]=k(!1);if(e.length===0)return null;let i=e=>Ns(t,e),a=Ms(e,i);return W(`div`,{class:`test-chips`,role:`group`,"aria-label":`Tags and dimensions`,children:[(n?e:a.shown).map(e=>{let n=i(e),r=n?`Remove filter ${e.name}`:e.name;return W(`a`,{class:`test-chip${n?` test-chip-active`:``}`,href:Or(Ps(t,e),{page:`tests`}),title:r,"aria-label":r,children:[e.label,n&&W(Hi,{})]},`${e.facet}\u0000${e.value}`)}),a.hidden>0&&W(`button`,{type:`button`,class:`test-chip-more`,"aria-expanded":n,onClick:()=>r(!n),children:[n?`Show less`:`+${a.hidden}`,!n&&W(`span`,{class:`visually-hidden`,children:` more tags and dimensions`})]})]})}var Vs=class extends te{shouldComponentUpdate(e){let{test:t,chips:n,state:r,colors:i}=this.props;return e.test!==t||e.chips!==n||e.state!==r||e.colors!==i}render(){return W(Hs,{...this.props})}};function Hs({test:e,chips:t,state:n,colors:r}){return W(`tr`,{children:[W(`td`,{children:W(J,{outcome:e.outcome,labelled:!0})}),W(`td`,{class:`cell-title`,children:[W(`a`,{href:Zi(e),children:ur(e)}),e.repeatEachIndex>0&&W(`span`,{class:`row-note`,children:[` repeat `,e.repeatEachIndex]}),W(Bs,{chips:t,state:n})]}),W(`td`,{class:`cell-project`,children:ea(e.project)}),W(`td`,{children:W(`code`,{children:W(Ls,{path:`${e.file}:${e.line}`})})}),W(`td`,{class:`numeric`,children:H(e.durationMs)}),W(`td`,{children:W(Rs,{test:e,colors:r})}),W(`td`,{class:`numeric`,children:e.attempts.length})]})}function Us({version:e}){return W(`footer`,{class:`footer`,children:[`Loupe — a reporter for Playwright `,W(`span`,{class:`muted`,children:[`· v`,e]})]})}function Ws(e,t={}){if(typeof e!=`string`||e===``)return null;let n=new Date(e);if(Number.isNaN(n.getTime()))return null;let r=t.timeZone===void 0?{}:{timeZone:t.timeZone},i=new Intl.DateTimeFormat(t.locale,{year:`numeric`,month:`short`,day:`numeric`,hour:`2-digit`,minute:`2-digit`,timeZoneName:`short`,...r}),a=new Intl.DateTimeFormat(t.locale,{dateStyle:`full`,timeStyle:`long`,...r});return{utc:n.toISOString(),label:i.format(n),full:a.format(n),timeZone:i.resolvedOptions().timeZone}}var Gs=[`system`,`light`,`dark`],Ks=`loupe.theme`,qs=L(`system`);function Js(e){return typeof e==`string`&&Gs.includes(e)}function Ys(e){let t=Tt(Ks);qs.value=Js(t)?t:Js(e)?e:`system`,st(()=>{let e=document.documentElement;qs.value===`system`?delete e.dataset.theme:e.dataset.theme=qs.value})}function Xs(e){qs.value=e,Et(Ks,e)}var Zs={passed:`Passed`,failed:`Failed`,timedout:`Timed out`,interrupted:`Interrupted`},Qs={system:`System theme`,light:`Light theme`,dark:`Dark theme`},$s={system:Ni,light:Pi,dark:Fi};function ec(){return W(`div`,{class:`theme-switch`,role:`group`,"aria-label":`Theme`,children:Gs.map(e=>{let t=$s[e];return W(`button`,{type:`button`,class:`icon-button`,"aria-pressed":qs.value===e,title:Qs[e],onClick:()=>Xs(e),children:[W(t,{}),W(`span`,{class:`visually-hidden`,children:Qs[e]})]},e)})})}function tc(){let[e,t]=k(!1);return Ia({"?":()=>t(!0)}),W(S,{children:[W(`button`,{type:`button`,class:`icon-button`,title:`Keyboard shortcuts (?)`,"aria-keyshortcuts":`?`,onClick:()=>t(!0),children:[W(Ki,{}),W(`span`,{class:`visually-hidden`,children:`Keyboard shortcuts`})]}),W(_o,{open:e,onClose:()=>t(!1)})]})}function nc({startedAt:e,durationMs:t}){let n=N(()=>Ws(e),[e]),[r,i]=k(!1);return W(`div`,{class:`run-time`,onPointerLeave:()=>i(!1),children:[W(`dt`,{class:`visually-hidden`,children:`Run`}),W(`dd`,{children:[n&&W(S,{children:[W(`time`,{dateTime:n.utc,tabIndex:0,"aria-describedby":`run-time-details`,onKeyDown:e=>e.key===`Escape`&&i(!0),onBlur:()=>i(!1),children:n.label}),` · `]}),H(t)]}),n&&W(`span`,{id:`run-time-details`,role:`tooltip`,class:`run-time-details${r?` dismissed`:``}`,children:[W(`span`,{children:n.full}),W(`span`,{children:[`Time zone: `,n.timeZone]}),W(`span`,{children:[`UTC: `,n.utc]})]})]})}function rc({outcome:e,count:t}){let n=q(e).toLowerCase(),r=W(S,{children:[W(J,{outcome:e,decorative:!0}),W(`span`,{class:`count-value`,children:t}),W(`span`,{class:`visually-hidden`,children:[` `,n]})]});return t===0?W(`li`,{class:`count zero`,title:q(e),children:r}):W(`li`,{class:`count`,children:W(`a`,{class:`count-link`,href:Or({...An,facets:{status:[e]}},{page:`tests`}),title:`Show the ${t} ${n} ${t===1?`test`:`tests`}`,children:r})})}function ic({report:e,title:t}){let{run:n}=e;return W(S,{children:[W(`header`,{class:`header`,children:[W(`div`,{class:`header-main`,children:[W(`div`,{class:`header-identity`,children:[W(`div`,{class:`header-name`,children:[W(`button`,{type:`button`,class:`icon-button`,"aria-controls":`sidebar`,"aria-expanded":R.value,title:R.value?`Hide sidebar`:`Show sidebar`,onClick:At,children:[W(Mi,{}),W(`span`,{class:`visually-hidden`,children:R.value?`Hide sidebar`:`Show sidebar`})]}),W(`div`,{class:`brand`,children:[W(`span`,{class:`wordmark`,children:`Loupe`}),W(`a`,{class:`title`,href:V({page:`dashboard`}),title:t,children:t})]})]}),W(`span`,{class:`run-status run-${n.status}`,children:[W(J,{outcome:n.status===`passed`?`passed`:`failed`,decorative:!0}),Zs[n.status]??n.status]})]}),W(`ul`,{class:`counts`,"aria-label":`Test counts`,children:Yt.map(e=>W(rc,{outcome:e,count:n.stats[e]},e))}),W(`dl`,{class:`run-meta`,children:[W(nc,{startedAt:n.startedAt,durationMs:n.durationMs}),n.environment.name&&W(`div`,{children:[W(`dt`,{children:`Environment`}),W(`dd`,{children:n.environment.name})]})]})]}),W(`div`,{class:`header-tools`,children:[W(tc,{}),W(ec,{})]})]}),n.scope===`partial`&&W(`div`,{class:`banner banner-partial`,role:`note`,children:[W(Li,{}),W(`p`,{children:[W(`strong`,{children:`Partial run.`}),` Only part of the suite ran, so these results do not cover every test.`,n.scopeReasons.length>0&&W(S,{children:[` `,`Detected from: `,n.scopeReasons.map(Ha).join(`, `),`.`]})]})]})]})}function ac({roots:e,route:t,prefix:n,expandAll:r,emptyMessage:i}){let a=t.page===`test`?si(t.id,t.repeatEachIndex):null,[o,s]=k(()=>new Set(e.map(e=>e.key))),[c,l]=k(null),u=M(new Map),d=M(!1),f=M(!1),[p,m]=k(null),h=M(null),g=jt.value;j(()=>{g&&e.some(e=>e.key===g.key)&&(m(g.key),s(e=>e.has(g.key)?e:new Set([...e,g.key])),h.current=g.key,l(g.key))},[e,g]),j(()=>{a&&m(null)},[a]),j(()=>{if(!a)return;let t=vi(e,a);t&&(f.current=!0,l(a),s(e=>t.every(t=>e.has(t))?e:new Set([...e,...t])))},[e,a]),j(()=>{if(!r)return;let t=yi(e);s(e=>t.every(t=>e.has(t))?e:new Set([...e,...t]))},[e,r]);let _=N(()=>_i(e,o),[e,o]),v=N(()=>new Map(_.map((e,t)=>[e.node.key,t])),[_]),y=c!==null&&v.has(c)?c:a!==null&&v.has(a)?a:_[0]?.node.key??null;j(()=>{f.current&&a&&u.current.has(a)&&(f.current=!1,u.current.get(a)?.scrollIntoView({block:`nearest`}));let e=h.current===null?void 0:u.current.get(h.current);e&&(h.current=null,e.focus({preventScroll:!0}),e.scrollIntoView({block:`nearest`})),d.current&&y&&(d.current=!1,u.current.get(y)?.focus())});let ee=n!==``&&W(`p`,{class:`tree-prefix`,title:`Folder shared by every test file, left out of the tree`,children:[W(`span`,{class:`visually-hidden`,children:`Files in `}),n]}),b=e=>{e&&(d.current=!0,l(e.node.key))},x=(e,t)=>{s(n=>{if(n.has(e)===t)return n;let r=new Set(n);return t?r.add(e):r.delete(e),r})};return W(`div`,{class:`tree-section`,children:[W(`div`,{class:`tree-toolbar`,children:[W(`h2`,{id:`tree-heading`,children:`Tests`}),W(`button`,{type:`button`,class:`text-button`,onClick:()=>s(new Set(yi(e))),children:`Expand all`}),W(`button`,{type:`button`,class:`text-button`,onClick:()=>s(new Set),children:`Collapse all`})]}),ee,e.length===0?W(`p`,{class:`tree-empty`,children:i}):W(`ul`,{class:`tree`,role:`tree`,"aria-labelledby":`tree-heading`,onKeyDown:e=>{if(y===null||e.altKey||e.ctrlKey||e.metaKey)return;let t=v.get(y)??0,n=_[t];if(!n)return;let{node:r}=n,i=r.kind!==`test`,a=i&&o.has(r.key);switch(e.key){case`ArrowDown`:b(_[t+1]);break;case`ArrowUp`:b(_[t-1]);break;case`Home`:b(_[0]);break;case`End`:b(_[_.length-1]);break;case`ArrowRight`:i&&!a?x(r.key,!0):a&&b(_[t+1]);break;case`ArrowLeft`:a?x(r.key,!1):n.parentKey!==null&&b(_[v.get(n.parentKey)??-1]);break;case`Enter`:case` `:r.kind===`test`?qt({page:`test`,id:r.testId,repeatEachIndex:r.repeatEachIndex}):x(r.key,!a);break;default:return}e.preventDefault()},children:_.map(e=>{let{key:t}=e.node,n={ref:e=>{e?u.current.set(t,e):u.current.delete(t)},role:`treeitem`,"aria-level":e.level,"aria-setsize":e.siblings,"aria-posinset":e.position,tabIndex:t===y?0:-1,style:{"--level":e.level},onFocus:()=>l(t)};return e.node.kind===`test`?W(`li`,{...n,class:`tree-row tree-test`,"aria-selected":t===a,children:W(oc,{node:e.node})},t):W(`li`,{...n,class:`tree-row tree-group tree-${e.node.kind}${t===p?` revealed`:``}`,"aria-expanded":o.has(t),children:W(cc,{node:e.node,onToggle:()=>x(t,!o.has(t))})},t)})})]})}function oc({node:e}){return W(`a`,{class:`row-content`,tabIndex:-1,href:V({page:`test`,id:e.testId,repeatEachIndex:e.repeatEachIndex}),children:[W(J,{outcome:e.outcome}),W(`span`,{class:`row-label`,children:e.title}),e.repeatEachIndex>0&&W(`span`,{class:`row-note`,children:[`repeat `,e.repeatEachIndex]})]})}function sc({name:e,path:t}){let[n,r]=Fr(e);return W(`span`,{class:`label-part file-name`,children:[W(`span`,{class:`name-head`,"aria-hidden":`true`,children:n}),r&&W(`span`,{class:`name-tail`,"aria-hidden":`true`,children:r}),W(`span`,{class:`visually-hidden`,children:t})]})}function cc({node:e,onToggle:t}){let{counts:n}=e,r=[U(n.total,`test`),`${n.failed} failed`,...n.flaky>0?[`${n.flaky} flaky`]:[]].join(`, `),[i=``,...a]=e.labels,o=[e.kind===`folder`?`${e.path??i}/`:e.path??i,...a].join(` › `);return W(`div`,{class:`row-content`,onClick:t,children:[W(Y,{class:`chevron`}),W(`span`,{class:`row-label`,title:o,children:[e.kind===`file`?W(sc,{name:i,path:e.path??i}):W(`span`,{class:`label-part`,children:i}),a.map((e,t)=>W(`span`,{class:`label-part`,children:e},t))]}),W(`span`,{class:`row-counts`,title:r,children:[W(`span`,{class:`visually-hidden`,children:r}),n.failed>0&&W(`span`,{class:`badge badge-failed`,"aria-hidden":`true`,children:n.failed}),W(`span`,{class:`row-total`,"aria-hidden":`true`,children:n.total})]})]})}var lc=200,uc=300;function dc({page:e,route:t,children:n,class:r}){return W(`li`,{children:W(`a`,{class:`nav-link ${r??``}`,href:V({page:e}),"aria-current":t.page===e?`page`:void 0,children:n})})}function fc(){let e=Dr.value.q,[t,n]=k(e),r=M(null),i=M(void 0);j(()=>{e.trim()!==t.trim()&&(clearTimeout(i.current),n(e))},[e]),j(()=>{let e=e=>{e.key===`/`&&Fa(e)&&(e.preventDefault(),R.value?r.current?.focus():(R.value=!0,setTimeout(()=>r.current?.focus(),0)))};return document.addEventListener(`keydown`,e),()=>{document.removeEventListener(`keydown`,e),clearTimeout(i.current)}},[]);let a=e=>kr({...Dr.value,q:e},`replace`);return W(`div`,{class:`search-field`,children:[W(`label`,{for:`sidebar-search`,class:`visually-hidden`,children:`Search tests`}),W(Vi,{}),W(`input`,{ref:r,id:`sidebar-search`,type:`search`,placeholder:`Search tests`,autoComplete:`off`,spellcheck:!1,"aria-keyshortcuts":`/`,value:t,onInput:e=>{let t=e.currentTarget.value;n(t),clearTimeout(i.current),i.current=setTimeout(()=>a(t),lc)},onKeyDown:e=>{e.key===`Escape`&&t!==``&&(e.preventDefault(),clearTimeout(i.current),n(``),a(``))}}),W(`kbd`,{class:`search-key`,"aria-hidden":`true`,children:`/`})]})}function pc({matched:e,route:t}){let n=Dr.value,r=Un(n);return W(`div`,{class:`filter-indicator`,"aria-live":t.page===`tests`?`off`:`polite`,children:r>0&&W(`p`,{children:[W(`span`,{children:U(r,`filter`)}),` · `,W(`a`,{href:V({page:`tests`}),children:U(e,`test`)}),W(`button`,{type:`button`,class:`text-button`,onClick:()=>kr(Gn(n)),children:`Clear`})]})})}function mc({report:e,tree:t,prefix:n,matched:r,route:i,open:a}){let o=e.run.errors.length,s=Un(Dr.value)>0;return W(`nav`,{id:`sidebar`,class:`sidebar`,"aria-label":`Report`,hidden:!a,children:[W(`div`,{class:`sidebar-search`,role:`search`,children:[W(fc,{}),W(pc,{matched:r,route:i})]}),W(`ul`,{class:`nav-fixed`,children:[W(dc,{page:`dashboard`,route:i,children:[W(Ii,{}),W(`span`,{children:`Overview`})]}),W(dc,{page:`errors`,route:i,class:o>0?`nav-has-run-errors`:void 0,children:[W(Ri,{}),W(`span`,{children:`Errors`}),o>0&&W(`span`,{class:`nav-marker`,title:U(o,`run error`),children:[W(Li,{}),W(`span`,{class:`badge badge-failed`,children:o}),W(`span`,{class:`visually-hidden`,children:[`, `,U(o,`run error`)]})]})]}),W(dc,{page:`health`,route:i,children:[W(zi,{}),W(`span`,{children:`Suite health`})]}),W(dc,{page:`tests`,route:i,children:[W(Bi,{}),W(`span`,{children:`Tests`})]})]}),W(ac,{roots:t,route:i,prefix:n,expandAll:s&&r<=uc,emptyMessage:e.tests.length===0?`No tests in this run.`:`No tests match the filters.`})]})}function hc({report:e,settings:t}){let n=Dr.value,r=N(()=>ar(e.tests,n,wr.value),[e,Hn({...n,sort:On})]),i=N(()=>Mr(e.tests.map(e=>e.file)),[e]),a=N(()=>hi({projects:e.projects,tests:r},{prefix:i}),[e,r,i]),o=N(()=>new Map(e.tests.map(e=>[si(e.id,e.repeatEachIndex),e])),[e]),s=N(()=>hr(e.tests,e.projects.map(e=>e.name)),[e]),c=N(()=>vr(r,n.sort,s),[r,s,n.sort.column,n.sort.direction]),l=N(()=>Zt(e),[e]),u=N(()=>Qt(l),[l]),d=N(()=>new Map(l.map(e=>[e.signature,e])),[l]),{route:f}=B.value,p=M(null);A(()=>{(f.page!==`errors`||f.category===void 0)&&p.current?.scrollTo(0,0),kt()&&(R.value=!1)},[JSON.stringify(f)]);let m;switch(f.page){case`dashboard`:m=W(Za,{report:e,groups:l,matched:c});break;case`errors`:m=W(Oa,{report:e,groups:l,category:f.category});break;case`health`:m=W(Ba,{report:e});break;case`tests`:m=W(Is,{report:e,state:n,sorted:c});break;case`test`:m=W(vs,{report:e,test:o.get(si(f.id,f.repeatEachIndex)),sequence:c,groups:d,settings:t});break;case`group`:m=W(za,{report:e,groups:u,group:d.get(f.signature)});break;case`not-found`:m=W(La,{})}return W(`div`,{class:`app ${R.value?`sidebar-open`:`sidebar-closed`}`,children:[W(ic,{report:e,title:t.title}),W(`div`,{class:`layout`,children:[W(mc,{report:e,tree:a,prefix:i,matched:r.length,route:f,open:R.value}),W(`main`,{class:`main`,ref:p,tabIndex:-1,children:[m,W(Us,{version:e.generator.version})]})]}),W(go,{}),W(`p`,{class:`visually-hidden`,role:`status`,"aria-live":`polite`,children:[bt.value.text,bt.value.seq%2==1?`\xA0`:``]})]})}var gc={title:`Loupe report`,theme:`system`,screenshots:{defaultView:`side-by-side`},aiPrompt:{includeStack:!0}};function _c(e){return typeof e==`object`&&!!e&&!Array.isArray(e)}function vc(e){let t;try{t=JSON.parse(e??``)}catch{return{ok:!1,message:`The report data is missing or is not valid JSON.`}}return _c(t)?t.schemaVersion===1?!_c(t.run)||!Array.isArray(t.tests)||!Array.isArray(t.projects)?{ok:!1,message:`The report data is incomplete: run, projects or tests is missing.`}:{ok:!0,report:t}:{ok:!1,message:`Unsupported report schema version ${JSON.stringify(t.schemaVersion)}: this renderer reads version 1.`}:{ok:!1,message:`The report data is not a Loupe report.`}}function yc(e){try{let t=JSON.parse(e??``);return _c(t)?{...gc,...t,screenshots:{...gc.screenshots,..._c(t.screenshots)?t.screenshots:{}},aiPrompt:{...gc.aiPrompt,..._c(t.aiPrompt)?t.aiPrompt:{}}}:gc}catch{return gc}}var bc=yc(document.getElementById(`loupe-settings`)?.textContent);document.title=bc.title,Ys(bc.theme);var xc=vc(document.getElementById(`loupe-data`)?.textContent),Sc=document.getElementById(`app`)??document.body;xc.ok&&Tr(xc.report),ve(xc.ok?W(hc,{report:xc.report,settings:bc}):W(`div`,{class:`load-error`,role:`alert`,children:[W(`h1`,{children:`Loupe could not open this report`}),W(`p`,{children:xc.message})]}),Sc);</script>
16
- <style>@font-face{font-family:DM Sans;font-style:normal;font-weight:400;font-display:swap;src:url(data:font/woff2;base64,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)format("woff2")}@font-face{font-family:DM Sans;font-style:normal;font-weight:600;font-display:swap;src:url(data:font/woff2;base64,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)format("woff2")}:root{--bg:#f7f5f0;--bg-card:#fff;--bg-muted:#eeeae2;--fg:#111;--fg-secondary:#666;--border:#e8e4dc;--border-control:#8a857c;--status-passed:#3e6e51;--status-failed:#b3261e;--status-flaky:#6b4a05;--status-flaky-bg:#fbf0d9;--status-skipped:#666;--diff-expected:#1f6b3a;--diff-received:#b3261e;--chip-bg:#f2efe9;--chip-fg:#4a4741;--chip-border:#d6d1c7;--chip-active-bg:#3d3a35;--chip-active-fg:#fff;--shadow:0 8px 24px #1111111f;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}@media (prefers-color-scheme:dark){:root:not([data-theme=light]){--bg:#080808;--bg-card:#0d0d0d;--bg-muted:#161616;--fg:#f0ede8;--fg-secondary:#8a8a8a;--border:#262626;--border-control:#6b6b6b;--status-passed:#7da88a;--status-failed:#f28b82;--status-flaky:#f0cf8a;--status-flaky-bg:#1f1705;--status-skipped:#8a8a8a;--diff-expected:#7fc79a;--diff-received:#f28b82;--chip-bg:#1a1a1a;--chip-fg:#c4c0ba;--chip-border:#333;--chip-active-bg:#d9d5cf;--chip-active-fg:#0d0d0d;--shadow:0 8px 24px #0009;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}:root:not([data-theme=light]) .category-badge,:root:not([data-theme=light]) .category-bar{--cat-text:var(--cat-text-dark);--cat-bg:var(--cat-bg-dark);--cat-border:var(--cat-border-dark)}}:root[data-theme=dark]{--bg:#080808;--bg-card:#0d0d0d;--bg-muted:#161616;--fg:#f0ede8;--fg-secondary:#8a8a8a;--border:#262626;--border-control:#6b6b6b;--status-passed:#7da88a;--status-failed:#f28b82;--status-flaky:#f0cf8a;--status-flaky-bg:#1f1705;--status-skipped:#8a8a8a;--diff-expected:#7fc79a;--diff-received:#f28b82;--chip-bg:#1a1a1a;--chip-fg:#c4c0ba;--chip-border:#333;--chip-active-bg:#d9d5cf;--chip-active-fg:#0d0d0d;--shadow:0 8px 24px #0009;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}:root{--font-sans:"DM Sans", system-ui, -apple-system, "Segoe UI", Roboto, sans-serif;--font-mono:ui-monospace, SFMono-Regular, Menlo, Consolas, "Liberation Mono", monospace}.category-badge,.category-bar{--cat-text:var(--cat-text-light);--cat-bg:var(--cat-bg-light);--cat-border:var(--cat-border-light)}:root[data-theme=dark] .category-badge,:root[data-theme=dark] .category-bar{--cat-text:var(--cat-text-dark);--cat-bg:var(--cat-bg-dark);--cat-border:var(--cat-border-dark)}*{box-sizing:border-box}html,body{height:100%}body{background:var(--bg);color:var(--fg);font:14px/1.5 var(--font-sans);margin:0}#app{height:100%}a{color:var(--fg);text-decoration:underline;-webkit-text-decoration-color:var(--border-control);text-decoration-color:var(--border-control);text-underline-offset:2px}a:hover{text-decoration-color:currentColor}:focus-visible{outline:2px solid var(--fg);outline-offset:2px}code,pre,kbd{font-family:var(--font-mono);font-size:12.5px}h1,h2,h3,strong,b{font-weight:600}[hidden]{display:none!important}.visually-hidden{clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.muted{color:var(--fg-secondary)}.icon{flex:none;display:block}.app{flex-direction:column;height:100%;display:flex}.layout{flex:1;min-height:0;display:flex;position:relative}.main{flex-direction:column;flex:1;min-width:0;display:flex;overflow:auto}.main:focus{outline:none}.main>.page{flex:1}.header{border-bottom:1px solid var(--border);background:var(--bg-card);grid-template-columns:minmax(0,1fr) auto;align-items:start;gap:8px 16px;padding:8px 16px;display:grid}.header-main{flex-wrap:wrap;align-items:center;gap:8px 20px;min-width:0;min-height:30px;display:flex}.header-identity{align-items:center;gap:8px 12px;min-width:0;display:flex}.header-name{align-items:center;gap:8px;min-width:0;display:flex}.header-identity .run-status{flex:none}@media (width<=440px){.header-identity{flex-wrap:wrap}}.brand{align-items:baseline;gap:10px;min-width:0;display:flex}.wordmark{color:var(--status-passed);letter-spacing:-.01em;font-size:18px;font-weight:600}.header .title{min-width:0;color:inherit;text-overflow:ellipsis;white-space:nowrap;font-size:15px;font-weight:600;text-decoration:none;overflow:hidden}.header .title:hover{text-decoration:underline}.run-status{border:1px solid;border-radius:999px;align-items:center;gap:4px;padding:1px 8px 1px 4px;font-size:12px;font-weight:600;display:inline-flex}.run-passed{color:var(--status-passed)}.run-failed,.run-timedout,.run-interrupted{color:var(--status-failed)}.counts{flex-wrap:wrap;gap:4px 12px;margin:0;padding:0;list-style:none;display:flex}.count{font-variant-numeric:tabular-nums;align-items:center;gap:4px;font-weight:600;display:flex}.count.zero{font-weight:400}.count.zero .outcome-icon{color:var(--fg-secondary)}.count-link{color:inherit;border-radius:4px;align-items:center;gap:4px;margin:-2px -4px;padding:2px 4px;text-decoration:none;display:flex}.count-link:hover{background:var(--bg-muted)}.count-link:hover .count-value{text-decoration:underline}.run-meta{color:var(--fg-secondary);flex-wrap:wrap;gap:4px 16px;margin:0;font-size:13px;display:flex}.run-meta div{gap:4px;min-width:0;display:flex}.run-meta dt:after{content:":"}.run-meta dd{color:var(--fg);text-overflow:ellipsis;white-space:nowrap;margin:0;overflow:hidden}.run-time{position:relative}.run-time dd{white-space:normal;overflow:visible}.run-time time{-webkit-text-decoration:underline dotted var(--border-control);text-decoration:underline dotted var(--border-control);text-underline-offset:3px;cursor:help;border-radius:2px}.run-time-details{z-index:20;border:1px solid var(--border-control);background:var(--bg-card);box-shadow:var(--shadow);color:var(--fg);white-space:nowrap;border-radius:6px;flex-direction:column;gap:2px;margin-top:4px;padding:8px 10px;font-size:13px;display:none;position:absolute;top:100%;left:0}.run-time-details:before{content:"";height:6px;position:absolute;bottom:100%;left:0;right:0}.run-time:hover .run-time-details,.run-time:focus-within .run-time-details{display:flex}.run-time .run-time-details.dismissed{display:none}.header-tools{align-items:center;gap:8px;display:flex}.theme-switch{border:1px solid var(--border-control);border-radius:6px;display:flex}.theme-switch .icon-button{border-radius:0}.theme-switch .icon-button:first-child{border-radius:5px 0 0 5px}.theme-switch .icon-button:last-child{border-radius:0 5px 5px 0}.theme-switch [aria-pressed=true]{background:var(--bg-muted);color:var(--fg)}.icon-button{width:30px;height:30px;color:var(--fg-secondary);cursor:pointer;background:0 0;border:0;border-radius:6px;justify-content:center;align-items:center;padding:0;display:inline-flex}.icon-button:hover{background:var(--bg-muted);color:var(--fg)}.text-button{color:var(--fg-secondary);font:inherit;cursor:pointer;background:0 0;border:0;border-radius:4px;padding:2px 6px;font-size:12px}.text-button:hover{background:var(--bg-card);color:var(--fg)}.banner{border-bottom:1px solid var(--border);background:var(--status-flaky-bg);color:var(--status-flaky);align-items:flex-start;gap:8px;padding:8px 16px;display:flex}.banner .icon{margin-top:2px}.banner p{margin:0}.outcome-icon{align-items:center;gap:6px;display:inline-flex}.outcome-passed{color:var(--status-passed)}.outcome-failed{color:var(--status-failed)}.outcome-flaky{color:var(--status-flaky)}.outcome-skipped{color:var(--status-skipped)}.outcome-text{font-weight:600}.badge{text-align:center;font-variant-numeric:tabular-nums;border-radius:999px;min-width:20px;padding:0 6px;font-size:12px;font-weight:600;line-height:16px;display:inline-block}.badge-failed{color:var(--status-failed);border:1px solid}.category-badge{border:1px solid var(--cat-border);background:var(--cat-bg);max-width:100%;color:var(--cat-text);white-space:nowrap;text-overflow:ellipsis;border-radius:999px;align-items:center;padding:0 8px;font-size:12px;font-weight:600;line-height:20px;display:inline-flex;overflow:hidden}.sidebar{border-right:1px solid var(--border);background:var(--bg-muted);flex-direction:column;flex:none;width:340px;max-width:85vw;display:flex;overflow:auto}.nav-fixed{border-bottom:1px solid var(--border);margin:0;padding:8px;list-style:none}.nav-link{color:inherit;border-radius:6px;align-items:center;gap:8px;padding:4px 8px;text-decoration:none;display:flex}.nav-link:hover{background:var(--bg-card)}.nav-link[aria-current=page]{background:var(--bg-card);box-shadow:inset 3px 0 0 var(--fg);font-weight:600}.nav-link .icon{color:var(--fg-secondary)}.nav-marker{align-items:center;gap:4px;margin-left:auto;display:inline-flex}.nav-marker .icon{color:var(--status-failed)}.sidebar-search{z-index:2;border-bottom:1px solid var(--border);background:var(--bg-muted);padding:8px 8px 0;position:sticky;top:0}.search-field{align-items:center;margin-bottom:8px;display:flex;position:relative}.search-field>.icon{color:var(--fg-secondary);pointer-events:none;position:absolute;left:8px}.search-field input{border:1px solid var(--border-control);background:var(--bg-card);width:100%;min-height:32px;color:var(--fg);font:inherit;border-radius:6px;padding:4px 30px}.search-field input::placeholder{color:var(--fg-secondary);opacity:1}.search-field input:focus-visible{outline-offset:0}.search-key{border:1px solid var(--border-control);color:var(--fg-secondary);pointer-events:none;border-radius:4px;padding:0 5px;font-size:11px;line-height:16px;position:absolute;right:8px}.search-field input:focus~.search-key,.search-field input:not(:placeholder-shown)~.search-key{display:none}.filter-indicator p{color:var(--fg-secondary);flex-wrap:wrap;align-items:center;gap:4px;margin:-2px 0 8px;padding:0 4px;font-size:13px;display:flex}.filter-indicator a{color:var(--fg);font-weight:600}.filter-indicator .text-button{text-decoration:underline;-webkit-text-decoration-color:var(--border-control);text-decoration-color:var(--border-control);text-underline-offset:2px;margin-left:auto}.tree-section{padding:8px 0}.tree-toolbar{align-items:center;gap:2px;padding:0 8px 4px 16px;display:flex}.tree-toolbar h2{color:var(--fg-secondary);text-transform:uppercase;letter-spacing:.04em;flex:1;margin:0;font-size:12px;font-weight:600}.tree-empty{color:var(--fg-secondary);padding:0 16px}.tree-prefix{color:var(--fg-secondary);font-family:var(--font-mono);text-overflow:ellipsis;white-space:nowrap;margin:0 16px 4px;font-size:12px;overflow:hidden}.tree{margin:0;padding:0 8px;list-style:none}.tree-row{outline-offset:-2px;border-radius:6px}.row-content{min-height:28px;padding:2px 8px 2px calc((var(--level) - 1) * 16px + 8px);color:inherit;cursor:pointer;align-items:center;gap:6px;text-decoration:none;display:flex}.tree-row:hover{background:var(--bg-card)}.tree-test[aria-selected=true],.tree-row.revealed{background:var(--bg-card);box-shadow:inset 3px 0 0 var(--fg)}.tree-test[aria-selected=true]{font-weight:600}.chevron{color:var(--fg-secondary);transition:transform .1s}.tree-group[aria-expanded=true]>.row-content .chevron{transform:rotate(90deg)}.tree-project>.row-content{font-weight:600}.row-label{text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;overflow:hidden}.tree-group .row-label{display:flex}.tree-group .label-part{text-overflow:ellipsis;white-space:pre;flex:0 auto;min-width:0;overflow:hidden}.label-part+.label-part:before{content:" › ";color:var(--fg-secondary)}.tree-group .file-name{display:flex}.tree-group .label-part+.label-part{flex-shrink:8}.name-head{text-overflow:ellipsis;min-width:0;overflow:hidden}.name-tail{flex:none}.row-note{color:var(--fg-secondary);font-size:12px;font-weight:400}.row-counts{flex:none;align-items:center;gap:6px;display:flex}.row-total{min-width:20px;color:var(--fg-secondary);text-align:right;font-variant-numeric:tabular-nums;font-size:12px}.page{padding:24px}.page h1{margin:0 0 12px;font-size:22px;line-height:1.3}.breadcrumb{color:var(--fg-secondary);overflow-wrap:anywhere;margin:0 0 4px;font-size:13px}.test-title{overflow-wrap:anywhere}pre.message{background:var(--bg-muted);white-space:pre-wrap;overflow-wrap:anywhere;border-radius:6px;margin:0;padding:8px 12px;overflow:auto}.run-errors{flex-direction:column;gap:16px;margin:0;padding:0;list-style:none;display:flex}.run-error{border:1px solid var(--border);border-left:3px solid var(--status-failed);background:var(--bg-card);border-radius:6px;padding:12px 16px}.run-error-meta{color:var(--fg-secondary);flex-wrap:wrap;align-items:center;gap:4px 12px;font-size:13px;display:flex}.run-error pre{background:var(--bg-muted);white-space:pre-wrap;overflow-wrap:anywhere;border-radius:6px;margin:8px 0 0;padding:8px 12px;overflow:auto}.run-error details{margin-top:8px}.run-error summary{color:var(--fg-secondary);cursor:pointer}.load-error{max-width:640px;margin:48px auto;padding:0 16px}.load-error h1{color:var(--status-failed);font-size:20px}.page{container-type:inline-size}.view{flex-direction:column;gap:16px;display:flex}.view>*,.view h1{max-width:1280px}.view>h1{margin-bottom:0}.widget{border:1px solid var(--border);background:var(--bg-card);border-radius:8px;min-width:0;padding:16px}.widget>h2{margin:0 0 12px;font-size:15px;line-height:1.3}.widget-note{color:var(--fg-secondary);margin:-8px 0 12px;font-size:13px}.widget-hint{color:var(--fg-secondary);margin:12px 0 0;font-size:13px}.widget-list{flex-direction:column;margin:0;padding:0;list-style:none;display:flex}.widget-list>li{border-top:1px solid var(--border)}.widget-list>li:first-child{border-top:0}.widget-more{margin:8px 0 0}.run-details{grid-template-columns:repeat(auto-fit,minmax(min(100%,240px),1fr));gap:16px 32px;font-size:13px;display:grid}.run-details-group h3{color:var(--fg-secondary);text-transform:uppercase;letter-spacing:.04em;margin:0 0 6px;font-size:12px;font-weight:600}.run-details dl{flex-direction:column;gap:6px;margin:0;display:flex}.run-details dl>div{grid-template-columns:84px minmax(0,1fr);align-items:baseline;gap:12px;display:grid}.run-details dt{color:var(--fg-secondary)}.run-details dd{overflow-wrap:anywhere;flex-wrap:wrap;align-items:baseline;gap:4px 8px;min-width:0;margin:0;display:flex}.run-details .copy-button{min-height:0;padding:1px 6px;font-size:12px;line-height:16px}.widget-grid{grid-template-columns:repeat(auto-fit,minmax(max(380px,50% - 8px),1fr));align-items:start;gap:16px;display:grid}.widget-grid>:last-child:nth-child(odd){grid-column:1/-1}@container (width<=900px){.widget-grid{grid-template-columns:minmax(0,1fr)}}.verdict{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px 32px;display:flex}.verdict-outcome{align-items:center;gap:10px;margin:0;font-size:22px;font-weight:600;display:flex}.verdict-outcome .icon{width:28px;height:28px}.verdict-outcome.outcome-flaky{background:var(--status-flaky-bg);border-radius:8px;padding:2px 12px 2px 8px}.verdict-meta{color:var(--fg-secondary);font-variant-numeric:tabular-nums;margin:0}.verdict-meta strong{color:var(--fg)}.outcome-bar{border-radius:5px;gap:2px;height:10px;margin:12px 0 8px;display:flex;overflow:hidden}.outcome-bar-part{flex-basis:0;min-width:4px}.bar-passed{background:var(--status-passed)}.bar-failed{background:var(--status-failed)}.bar-flaky{background:var(--status-flaky)}.bar-skipped{background:var(--status-skipped)}.outcome-legend{color:var(--fg-secondary);font-variant-numeric:tabular-nums;flex-wrap:wrap;gap:4px 16px;margin:0;padding:0;font-size:13px;list-style:none;display:flex}.outcome-legend li{align-items:center;gap:4px;display:flex}.widget-run-errors{border-left:3px solid var(--status-failed)}.widget-run-errors h2{align-items:center;gap:8px;display:flex}.widget-run-errors h2 .icon{color:var(--status-failed)}.widget-run-errors .widget-list code{text-overflow:ellipsis;white-space:nowrap;display:block;overflow:hidden}.widget-run-errors .widget-list li{padding:6px 0}.group-row{color:inherit;flex-direction:column;gap:2px;padding:8px 4px;text-decoration:none;display:flex}.group-row:hover{background:var(--bg-muted)}.group-row-head{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:4px 12px;display:flex}.group-test{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.group-row:hover .group-test{text-decoration:underline}.group-message{color:var(--fg-secondary);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.group-count{font-variant-numeric:tabular-nums;white-space:nowrap;font-weight:600}.group-split{font-variant-numeric:tabular-nums;white-space:nowrap;flex-wrap:wrap;gap:4px 12px;font-weight:600;display:inline-flex}.group-split-part{align-items:center;gap:4px;display:inline-flex}.group-row-counts{flex-wrap:wrap;align-items:center;gap:4px 10px;margin-left:auto;display:inline-flex}.group-attempts{color:var(--fg-secondary);font-variant-numeric:tabular-nums;white-space:nowrap;font-size:13px}.category-bars{grid-template-columns:minmax(0,max-content) minmax(40px,1fr) auto;display:grid}.category-bars>li{grid-column:1/-1;grid-template-columns:subgrid;display:grid}.category-bar-row{grid-column:1/-1;grid-template-columns:subgrid;color:inherit;align-items:center;gap:8px;padding:6px 4px;text-decoration:none;display:grid}.category-bar-row:hover{background:var(--bg-muted)}.category-bar-row .category-badge{justify-self:start}.category-bar-track{height:8px;display:block}.category-bar{background:var(--cat-border);border-radius:4px;min-width:4px;height:100%;display:block}.category-list>li>details>summary{cursor:pointer;align-items:center;gap:8px;padding:8px 4px;list-style:none;display:flex}.category-list>li>details>summary::-webkit-details-marker{display:none}.category-list>li>details>summary:hover{background:var(--bg-muted)}.category-list summary .chevron{transition:transform .1s}.category-list details[open]>summary .chevron{transform:rotate(90deg)}.category-list summary .group-count{margin-left:auto}.category-list .widget-list{margin:0 0 8px 28px}.project-cards{flex-wrap:wrap;gap:12px;margin:0;padding:0;list-style:none;display:flex}.project-cards>li{flex:240px;min-width:0}.project-card{border:1px solid var(--border-control);background:var(--bg-card);width:100%;height:100%;color:inherit;font:inherit;text-align:left;cursor:pointer;border-radius:8px;flex-direction:column;gap:6px;padding:12px;display:flex}.project-card:hover{background:var(--bg-muted)}.project-name{text-overflow:ellipsis;white-space:nowrap;font-weight:600;overflow:hidden}.project-card .counts{flex-wrap:wrap;font-size:13px}.project-meta{color:var(--fg-secondary);font-size:13px}.data-table{border-collapse:collapse;font-variant-numeric:tabular-nums;width:100%}.data-table th,.data-table td{border-top:1px solid var(--border);text-align:right;vertical-align:top;padding:6px 8px}.data-table thead th{color:var(--fg-secondary);border-top:0;font-size:12px;font-weight:600}.data-table thead th .outcome-icon{justify-content:flex-end}.data-table th:first-child,.data-table td:first-child{text-align:left}.data-table .zero{color:var(--fg-secondary)}.data-table tbody th{overflow-wrap:anywhere;font-weight:400}.dimension-bars{grid-template-columns:minmax(0,max-content) minmax(60px,1fr) auto auto;align-items:center;gap:0 12px;margin:0;padding:0;list-style:none;display:grid}.dimension-bar-row{grid-column:1/-1;grid-template-columns:subgrid;border-top:1px solid var(--border);align-items:center;padding:6px 0;display:grid}.dimension-bar-row:first-child{border-top:0}.dimension-value-cell{overflow-wrap:anywhere;min-width:0}a.dimension-value{font-weight:600}.dimension-bar{height:10px;margin:0}.dimension-bar:empty{background:var(--bg-muted)}.dimension-bar-counts{justify-content:flex-end;gap:10px;font-size:13px;display:flex}.dimension-bar-counts .count{font-weight:600}.dimension-total{min-width:28px;color:var(--fg-secondary);text-align:right;font-variant-numeric:tabular-nums;font-size:13px}.tile-summary{margin:0 0 10px;font-size:13px}.dimension-tiles{grid-template-columns:repeat(auto-fill,minmax(140px,1fr));gap:6px;margin:0;padding:0;list-style:none;display:grid}.dimension-tiles>li{min-width:0;display:flex}.dimension-tile{color:inherit;border:1px solid var(--border);border-left:4px solid var(--tile-color);background:var(--bg-card);cursor:pointer;border-radius:6px;flex:1;align-items:center;gap:6px;min-width:0;padding:6px 8px;font-size:13px;text-decoration:none;display:flex;position:relative}span.dimension-tile{cursor:default}.dimension-tile:hover,.dimension-tile:focus-visible{background:var(--bg-muted)}.tile-failed{--tile-color:var(--status-failed)}.tile-flaky{--tile-color:var(--status-flaky);background:var(--status-flaky-bg)}.tile-passed{--tile-color:var(--status-passed)}.tile-skipped,.tile-none{--tile-color:var(--status-skipped)}.tile-failed .tile-value,.tile-flaky .tile-value{font-weight:600}.tile-value{text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;overflow:hidden}.tile-icon-none{border:1.4px dashed var(--status-skipped);border-radius:50%;flex:none;width:16px;height:16px}.tile-flag{color:var(--status-flaky)}.tile-details{z-index:5;border:1px solid var(--border-control);background:var(--bg-card);min-width:180px;max-width:280px;box-shadow:var(--shadow);color:var(--fg);overflow-wrap:anywhere;border-radius:6px;flex-direction:column;gap:2px;padding:8px 10px;font-weight:400;display:none;position:absolute;bottom:calc(100% + 6px);left:0}.tooltip-open .tile-details{display:flex}.tile-details:after{content:"";height:8px;position:absolute;top:100%;left:0;right:0}.tile-note{color:var(--status-flaky)}.dimension-table{margin-top:12px}.dimension-table>summary{color:var(--fg-secondary);cursor:pointer;align-items:center;gap:4px;font-size:13px;list-style:none;display:inline-flex}.dimension-table>summary::-webkit-details-marker{display:none}.dimension-table>summary:hover{color:var(--fg)}.dimension-table[open]>summary .chevron{transform:rotate(90deg)}.dimension-table>.data-table{margin-top:8px}.pass-rate{cursor:help}.pass-rate strong{color:var(--fg)}.hygiene-flag{color:var(--status-flaky);align-items:center;gap:4px;margin-top:2px;font-size:12px;display:flex}.test-line{align-items:center;gap:8px;padding:6px 0;display:flex}.test-line .test-text{flex:1;min-width:0}.test-line .test-text a{overflow-wrap:anywhere}.test-line .test-where{color:var(--fg-secondary);text-overflow:ellipsis;white-space:nowrap;font-size:12px;display:block;overflow:hidden}.test-line .duration{font-variant-numeric:tabular-nums;flex:none}.skip-kind{border:1px solid var(--border-control);text-transform:uppercase;border-radius:4px;padding:0 6px;font-size:11px;font-weight:600}.flaky-error{align-items:center;gap:8px;min-width:0;margin-top:2px;display:flex}.flaky-error code{color:var(--fg-secondary);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.group-meta{flex-wrap:wrap;align-items:center;gap:8px 16px;margin:0 0 16px;display:flex}.group-meta div{align-items:center;gap:6px;display:flex}.group-meta dt{color:var(--fg-secondary)}.group-meta dd{margin:0}.group-page h2{margin:24px 0 8px;font-size:16px}.affected-tests{border-collapse:collapse;width:100%}.affected-tests th,.affected-tests td{border-top:1px solid var(--border);text-align:left;vertical-align:top;overflow-wrap:anywhere;padding:6px 8px}.affected-tests thead th{color:var(--fg-secondary);border-top:0;font-size:12px;font-weight:600}.affected-tests .test-cell{align-items:flex-start;gap:6px;display:flex}.filter-bar{flex-direction:column;gap:10px;display:flex}.facets{flex-wrap:wrap;gap:8px;display:flex}.facet{position:relative}.facet-button{border:1px solid var(--border-control);background:var(--bg-card);cursor:pointer;border-radius:6px;align-items:center;gap:6px;min-height:32px;padding:4px 8px 4px 12px;list-style:none;display:inline-flex}.facet-button::-webkit-details-marker{display:none}.facet-button:hover{background:var(--bg-muted)}.facet-button .chevron{transition:transform .1s;transform:rotate(90deg)}.facet[open]>.facet-button .chevron{transform:rotate(-90deg)}.facet-selected{background:var(--fg);min-width:20px;color:var(--bg-card);text-align:center;font-variant-numeric:tabular-nums;border-radius:999px;padding:0 6px;font-size:12px;font-weight:600;line-height:18px}.facet-menu{z-index:15;border:1px solid var(--border-control);background:var(--bg-card);min-width:220px;max-width:min(360px,90vw);max-height:360px;box-shadow:var(--shadow);border-radius:6px;flex-direction:column;margin:0;padding:4px;display:flex;position:absolute;top:calc(100% + 4px);left:0;overflow:auto}.facet-option{cursor:pointer;border-radius:4px;align-items:center;gap:8px;min-height:30px;padding:2px 8px;display:flex}.facet-option:hover{background:var(--bg-muted)}.facet-option input{width:16px;height:16px;accent-color:var(--fg);flex:none;margin:0}.facet-option .facet-value,.facet-option .category-badge{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.facet-count{color:var(--fg-secondary);font-variant-numeric:tabular-nums;margin-left:auto;padding-left:12px;font-size:12px}.facet-option-empty>:not(input):not(.facet-count){opacity:.7}.filter-chips{flex-wrap:wrap;align-items:center;gap:6px;display:flex}.filter-chips ul{display:contents}.filter-chips li{list-style:none;display:flex}.chip{border:1px solid var(--border-control);background:var(--bg-muted);max-width:320px;color:var(--fg);font:inherit;cursor:pointer;border-radius:999px;align-items:center;gap:4px;padding:2px 6px 2px 10px;font-size:13px;display:inline-flex}.chip span{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.chip .icon{color:var(--fg-secondary)}.chip:hover .icon{color:var(--fg)}.result-count{color:var(--fg-secondary);font-variant-numeric:tabular-nums;margin:0}.empty-state{border:1px dashed var(--border-control);border-radius:8px;flex-direction:column;align-items:flex-start;gap:8px;padding:24px;display:flex}.empty-state p{margin:0}.button{border:1px solid var(--border-control);background:var(--bg-card);min-height:32px;color:var(--fg);font:inherit;cursor:pointer;border-radius:6px;padding:4px 12px}.button:hover{background:var(--bg-muted)}.view-tests>.table-scroll{max-width:none}.table-scroll{border:1px solid var(--border);background:var(--bg-card);border-radius:8px;overflow-x:auto}.tests-table{border-collapse:collapse;width:100%;font-size:13px}.tests-table th,.tests-table td{border-top:1px solid var(--border);text-align:left;vertical-align:top;padding:6px 10px}.tests-table thead th{background:var(--bg-card);white-space:nowrap;border-top:0;position:sticky;top:0}.tests-table .numeric{text-align:right;font-variant-numeric:tabular-nums;white-space:nowrap}.tests-table tbody tr:hover{background:var(--bg-muted)}.tests-table .outcome-icon{white-space:nowrap}.cell-title{overflow-wrap:anywhere;min-width:240px}.cell-project{white-space:nowrap}.category-badges{flex-wrap:wrap;align-items:center;gap:4px;display:flex}.category-more{color:var(--fg-secondary);cursor:help;font-size:12px;font-weight:600}.test-chips{flex-wrap:wrap;gap:4px;margin-top:4px;display:flex}.test-chip{border:1px solid var(--chip-border);background:var(--chip-bg);max-width:100%;color:var(--chip-fg);overflow-wrap:anywhere;border-radius:4px;align-items:center;gap:2px;padding:0 6px;font-size:12px;line-height:18px;text-decoration:none;display:inline-flex}.test-chip:hover{border-color:var(--border-control);color:var(--fg)}.test-chip-active,.test-chip-active:hover{border-color:var(--chip-active-bg);background:var(--chip-active-bg);color:var(--chip-active-fg)}.test-chip .icon{flex:none;width:12px;height:12px}.test-chip-more{color:var(--fg-secondary);font:inherit;cursor:pointer;background:0 0;border:1px solid #0000;border-radius:4px;padding:0 6px;font-size:12px;line-height:18px}.test-chip-more:hover{border-color:var(--chip-border);color:var(--fg)}.table-more{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.table-more p{color:var(--fg-secondary);font-variant-numeric:tabular-nums;margin:0 8px 0 0}.sort-button{color:var(--fg-secondary);font:inherit;cursor:pointer;background:0 0;border:0;border-radius:4px;align-items:center;gap:2px;margin:-2px -4px;padding:2px 4px;font-size:12px;font-weight:600;display:inline-flex}.numeric .sort-button{flex-direction:row-reverse}.sort-button:hover{background:var(--bg-muted);color:var(--fg)}[aria-sort]>.sort-button{color:var(--fg)}.sort-idle{opacity:.5}.copy-button{align-items:center;gap:6px;display:inline-flex}.copy-button .icon,.copy-done{color:var(--fg-secondary)}.rerun-failed{flex-wrap:wrap;align-items:center;gap:4px 12px;display:flex}.rerun-note{color:var(--fg-secondary);margin:0;font-size:13px}.widget-verdict .rerun-failed{margin-top:12px}.pager{flex-wrap:wrap;align-items:center;gap:8px;margin-bottom:16px;display:flex}.pager-button{align-items:center;gap:4px;display:inline-flex}.pager-button:disabled{color:var(--fg-secondary);cursor:default}.pager-button:disabled:hover{background:var(--bg-card)}.pager-position{color:var(--fg-secondary);font-variant-numeric:tabular-nums}.chevron-back{transform:rotate(180deg)}.test-page{flex-direction:column;max-width:1280px;display:flex}.test-header{flex-direction:column;gap:10px;display:flex}.test-header h1{margin:0}.title-suite{color:var(--fg-secondary);font-weight:400}.test-summary{flex-wrap:wrap;align-items:center;gap:4px 16px;display:flex}.test-summary code{overflow-wrap:anywhere}.test-meta{flex-wrap:wrap;gap:6px 24px;margin:0;font-size:13px;display:flex}.test-meta div{align-items:baseline;gap:6px;display:flex}.test-meta dt{color:var(--fg-secondary)}.test-meta dd{margin:0}.chips{flex-wrap:wrap;gap:4px;margin:0;padding:0;list-style:none;display:flex}.tag{border:1px solid var(--border-control);background:var(--bg-card);overflow-wrap:anywhere;border-radius:999px;padding:0 8px;font-size:12px;line-height:20px}.test-actions{flex-wrap:wrap;gap:8px;display:flex}.attempt-tabs{border-bottom:1px solid var(--border-control);flex-wrap:wrap;gap:4px;margin-top:20px;display:flex}.attempt-tab{color:var(--fg-secondary);font:inherit;cursor:pointer;background:0 0;border:1px solid #0000;border-radius:6px 6px 0 0;align-items:center;gap:6px;margin-bottom:-1px;padding:6px 12px;display:inline-flex}.attempt-tab:hover{background:var(--bg-muted);color:var(--fg)}.attempt-tab[aria-selected=true]{border-color:var(--border-control) var(--border-control) var(--bg);background:var(--bg);color:var(--fg);font-weight:600}.attempt-duration{color:var(--fg-secondary);font-variant-numeric:tabular-nums;font-size:12px;font-weight:400}.attempt-panel{flex-direction:column;gap:16px;margin-top:16px;display:flex}.detail-section{border:1px solid var(--border);background:var(--bg-card);border-radius:8px;flex-direction:column;gap:10px;min-width:0;padding:16px;display:flex}.detail-section h2{margin:0;font-size:15px}.section-head{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px;display:flex}.toggle-button[aria-pressed=true]{background:var(--bg-muted);box-shadow:inset 0 0 0 1px var(--fg)}.error-card{border:1px solid var(--border);border-left:3px solid var(--status-failed);border-radius:6px;flex-direction:column;gap:8px;padding:12px;display:flex}.error-head{flex-wrap:wrap;align-items:center;gap:4px 12px;font-size:13px;display:flex}.error-location{color:var(--fg-secondary);overflow-wrap:anywhere}.error-group-link{margin-left:auto}pre.code-snippet,pre.stack,.output-block pre,.attachment-body pre{background:var(--bg-muted);border-radius:6px;margin:0;padding:8px 12px;overflow:auto}pre.stack,.output-block pre,.attachment-body pre{white-space:pre-wrap;overflow-wrap:anywhere}.tone-expected{color:var(--diff-expected)}.tone-received{color:var(--diff-received)}.tone-marker{color:var(--status-failed);font-weight:600}.tone-strong{font-weight:600}.stack-details>summary,.attachment-body>summary,.output-block>summary{color:var(--fg-secondary);cursor:pointer;flex-wrap:wrap;align-items:center;gap:6px;list-style:none;display:inline-flex}.stack-details>summary::-webkit-details-marker{display:none}.attachment-body>summary::-webkit-details-marker{display:none}.output-block>summary::-webkit-details-marker{display:none}.stack-details>summary:hover,.attachment-body>summary:hover,.output-block>summary:hover{color:var(--fg)}.stack-details[open]>summary .chevron,.attachment-body[open]>summary .chevron,.output-block[open]>summary .chevron{transform:rotate(90deg)}.stack-details>pre,.attachment-body>pre,.output-block>pre{margin-top:6px}.step-list{margin:0;padding:0;list-style:none}.step-list .step-list{border-left:1px solid var(--border);margin-left:22px;padding-left:0}.step-row{border-radius:4px;align-items:center;gap:6px;min-height:28px;padding:2px 6px 2px 2px;display:flex}.step-row:hover{background:var(--bg-muted)}.step-failing-path>.step-row{box-shadow:inset 3px 0 0 var(--status-failed)}.step-failing>.step-row{background:var(--bg-muted);font-weight:600}.step-toggle{width:22px;height:22px;color:var(--fg-secondary);cursor:pointer;background:0 0;border:0;border-radius:4px;flex:none;justify-content:center;align-items:center;padding:0;display:inline-flex}.step-toggle:hover{background:var(--bg-card);color:var(--fg)}.step-toggle[aria-expanded=true] .chevron{transform:rotate(90deg)}.step-toggle-space{flex:none;width:22px}.step-icon-space{flex:none;width:16px}.step-text{overflow-wrap:anywhere;flex:1;min-width:0}.step-subtitle{color:var(--fg-secondary);font-family:var(--font-mono);font-size:12.5px;font-weight:400}.step-category{border:1px solid var(--border-control);color:var(--fg-secondary);white-space:nowrap;border-radius:4px;margin-left:8px;padding:0 6px;font-size:11px;font-weight:400}.step-location{max-width:40%;color:var(--fg-secondary);text-overflow:ellipsis;white-space:nowrap;flex:none;font-weight:400;overflow:hidden}.step-duration{min-width:56px;color:var(--fg-secondary);text-align:right;font-variant-numeric:tabular-nums;flex:none;font-size:12px;font-weight:400}pre.step-error{margin:2px 0 6px 50px;font-weight:400}.attachment-groups{flex-direction:column;gap:12px;display:flex}.attachment-group h3{margin:0 0 4px;font-size:13px}.attachment-list{flex-direction:column;gap:4px;margin:0;padding:0;list-style:none;display:flex}.attachment-file{flex-wrap:wrap;align-items:baseline;gap:4px 10px;display:flex}.attachment-name{overflow-wrap:anywhere}.attachment-body .attachment-name{color:var(--fg)}.attachment-meta{color:var(--fg-secondary);font-size:12px}.thumbs{flex-wrap:wrap;gap:12px;margin:0;padding:0;list-style:none;display:flex}.thumb{border:1px solid var(--border);background:var(--bg-card);width:184px;color:var(--fg);font:inherit;cursor:zoom-in;border-radius:8px;flex-direction:column;gap:4px;padding:6px;font-size:12px;display:flex}.thumb:hover{border-color:var(--border-control)}.thumb img{object-fit:contain;background:var(--bg-muted);border-radius:4px;width:100%;height:120px;display:block}.thumb-name{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.media-missing{border:1px dashed var(--border-control);min-height:120px;color:var(--fg-secondary);text-align:center;overflow-wrap:anywhere;border-radius:4px;flex-direction:column;justify-content:center;gap:2px;padding:8px;font-size:12px;display:flex}.media-missing strong{color:var(--fg)}.open-original{white-space:nowrap;font-size:12px}.video{margin:0 0 12px}.video video{background:#000;border-radius:6px;width:100%;max-width:960px;display:block}.video figcaption{flex-wrap:wrap;align-items:baseline;gap:4px 12px;margin-top:4px;display:flex}.dialog-actions{flex:none;align-items:center;gap:8px;display:flex}.dialog-head h2{overflow-wrap:anywhere;min-width:0}.dialog.lightbox{--stage-h:calc(100vh - 150px);width:calc(100vw - 32px);max-width:none;height:calc(100vh - 32px);max-height:none;padding:12px 16px}.lightbox[open]{flex-direction:column;display:flex}.lightbox .dialog-head{margin-bottom:8px}.lightbox-stage{flex:1;min-height:0;display:flex;overflow:auto}.lightbox-stage>*{margin:auto}.lightbox-image{max-width:100%;max-height:var(--stage-h);cursor:zoom-in;display:block}.actual-size .lightbox-image{cursor:zoom-out;max-width:none;max-height:none}.lightbox-bar{flex-wrap:wrap;justify-content:center;align-items:center;gap:8px 12px;padding-top:8px;display:flex}.lightbox-position{min-width:64px;color:var(--fg-secondary);text-align:center;font-variant-numeric:tabular-nums}.comparison-card{border:1px solid var(--border);border-radius:8px;margin-bottom:12px;padding:12px}.comparison-head{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px;margin-bottom:8px;display:flex}.comparison-head h4{font-size:13px;font-family:var(--font-mono);overflow-wrap:anywhere;margin:0;font-weight:400}.comparison{flex-direction:column;align-items:flex-start;gap:8px;min-width:0;display:flex}.lightbox-stage>.comparison{align-items:center;width:100%}.actual-size .lightbox-stage>.comparison{width:max-content}.cmp-modes{flex-wrap:wrap;gap:6px;display:flex}.cmp-image,.cmp-side img{max-width:100%;max-height:var(--stage-h,70vh);background:var(--bg-muted);cursor:zoom-in;display:block}.cmp-side{align-items:flex-start;gap:12px;max-width:100%;display:flex}.cmp-side figure{flex:0 auto;min-width:0;margin:0}.cmp-scaled{width:min(calc(var(--w) * 1px + 12px), 100%, calc(var(--stage-h,70vh) * var(--w) / var(--h) + 12px))}.cmp-scaled figure{flex-shrink:1;flex-basis:0}.cmp-side.cmp-scaled img{width:100%;max-height:none}.cmp-side figcaption,.cmp-opacity,.cmp-sizes,.cmp-hint{color:var(--fg-secondary);font-size:12px}.cmp-stack{width:min(calc(var(--w) * 1px), 100%, calc(var(--stage-h,70vh) * var(--w) / var(--h)));aspect-ratio:var(--w) / var(--h);background:var(--bg-muted);position:relative;overflow:hidden}.cmp-layer{max-width:none;height:auto;display:block;position:absolute;top:0;left:0}.cmp-top{position:absolute;inset:0}.cmp-range{opacity:0;cursor:ew-resize;width:100%;height:100%;margin:0;position:absolute;inset:0}.cmp-divider{background:var(--fg);width:2px;box-shadow:0 0 0 1px var(--bg-card);pointer-events:none;margin-left:-1px;position:absolute;top:0;bottom:0}.cmp-range:focus-visible+.cmp-divider{outline:2px solid var(--fg);outline-offset:2px}.cmp-opacity{align-items:center;gap:8px;display:flex}.cmp-opacity output{font-variant-numeric:tabular-nums;min-width:40px}.cmp-sizes{flex-wrap:wrap;gap:4px 14px;margin:0;display:flex}.cmp-hint{margin:0}.cmp-differ{color:var(--status-failed);font-weight:600}.trace-card{flex-direction:column;align-items:flex-start;gap:6px;margin-bottom:12px;display:flex}.trace-actions{flex-wrap:wrap;gap:8px;display:flex}.trace-download{align-items:center;text-decoration:none;display:inline-flex}.trace-help{color:var(--fg-secondary);margin:0;font-size:12px}.cmp-loading{background:var(--bg-muted);border-radius:4px;width:100%;height:120px}.actual-size .cmp-image,.actual-size .cmp-side img{cursor:zoom-out;max-width:none;max-height:none}.actual-size .cmp-side{max-width:none}.actual-size .cmp-scaled{width:calc(var(--w) * 1px + 12px)}.actual-size .cmp-stack{width:calc(var(--w) * 1px)}.output-block>summary .output-name{color:var(--fg);font-family:var(--font-mono)}.output-truncated{color:var(--status-flaky);border:1px solid;border-radius:4px;padding:0 6px;font-size:11px;font-weight:600}.output-notice{color:var(--status-flaky);margin:6px 0 0;font-size:13px}.dialog{border:1px solid var(--border-control);background:var(--bg-card);width:min(640px,100vw - 32px);max-height:calc(100vh - 64px);box-shadow:var(--shadow);color:var(--fg);border-radius:8px;padding:16px 20px 20px}.dialog::backdrop{background:#0006}.dialog-head{justify-content:space-between;align-items:center;gap:12px;margin-bottom:12px;display:flex}.dialog-head h2{margin:0;font-size:16px}.dialog-note{color:var(--fg-secondary);margin:12px 0 0;font-size:13px}.copy-dialog .dialog-note{margin:0 0 8px}.copy-text{border:1px solid var(--border-control);background:var(--bg-muted);width:100%;color:var(--fg);font-family:var(--font-mono);resize:vertical;border-radius:6px;padding:8px;font-size:12.5px}.shortcuts-table{border-collapse:collapse;width:100%;font-size:13px}.shortcuts-table th,.shortcuts-table td{border-top:1px solid var(--border);text-align:left;vertical-align:top;padding:6px 8px}.shortcuts-table thead th{color:var(--fg-secondary);border-top:0;font-size:12px;font-weight:600}.shortcuts-table td:first-child{white-space:nowrap}.shortcuts-table kbd{border:1px solid var(--border-control);background:var(--bg-muted);border-radius:4px;padding:0 5px;font-size:12px}.footer{border-top:1px solid var(--border);color:var(--fg-secondary);padding:16px 24px;font-size:12px}@media (width<=760px){.header{padding:8px 12px}.sidebar{z-index:10;box-shadow:var(--shadow);position:absolute;inset:0 auto 0 0}.page{padding:16px}.footer{padding:12px 16px}.affected-tests thead{display:none}.affected-tests tr{border-top:1px solid var(--border);padding:6px 0;display:block}.affected-tests td{border:0;padding:2px 0;display:block}.run-time-details{white-space:normal}.step-location{display:none}pre.step-error,.error-group-link{margin-left:0}}
7
+ <script type="module">var e,t,n,r,i,a,o,s,c,l,u,d,f,p,m,h={},g=[],_=/acit|ex(?:s|g|n|p|$)|rph|grid|ows|mnc|ntw|ine[ch]|zoo|^ord|itera/i,v=Array.isArray;function y(e,t){for(var n in t)e[n]=t[n];return e}function ee(e){e&&e.parentNode&&e.parentNode.removeChild(e)}function b(t,n,r){var i,a,o,s={};for(o in n)o==`key`?i=n[o]:o==`ref`?a=n[o]:s[o]=n[o];if(arguments.length>2&&(s.children=arguments.length>3?e.call(arguments,2):r),typeof t==`function`&&t.defaultProps!=null)for(o in t.defaultProps)s[o]===void 0&&(s[o]=t.defaultProps[o]);return x(t,s,i,a,null)}function x(e,r,i,a,o){var s={type:e,props:r,key:i,ref:a,__k:null,__:null,__b:0,__e:null,__c:null,constructor:void 0,__v:o??++n,__i:-1,__u:0};return o==null&&t.vnode!=null&&t.vnode(s),s}function S(e){return e.children}function te(e,t){this.props=e,this.context=t}function ne(e,t){if(t==null)return e.__?ne(e.__,e.__i+1):null;for(var n;t<e.__k.length;t++)if((n=e.__k[t])!=null&&n.__e!=null)return n.__e;return typeof e.type==`function`?ne(e):null}function C(e){if(e.__P&&e.__d){var n=e.__v,r=n.__e,i=[],a=[],o=y({},n);o.__v=n.__v+1,t.vnode&&t.vnode(o),ue(e.__P,o,n,e.__n,e.__P.namespaceURI,32&n.__u?[r]:null,i,r??ne(n),!!(32&n.__u),a),o.__v=n.__v,o.__.__k[o.__i]=o,fe(i,o,a),n.__e=n.__=null,o.__e!=r&&w(o)}}function w(e){if((e=e.__)!=null&&e.__c!=null)return e.__e=e.__c.base=null,e.__k.some(function(t){if(t!=null&&t.__e!=null)return e.__e=e.__c.base=t.__e}),w(e)}function re(e){(!e.__d&&(e.__d=!0)&&i.push(e)&&!T.__r++||a!=t.debounceRendering)&&((a=t.debounceRendering)||o)(T)}function T(){try{for(var e,t=1;i.length;)i.length>t&&i.sort(s),e=i.shift(),t=i.length,C(e)}finally{i.length=T.__r=0}}function ie(e,t,n,r,i,a,o,s,c,l,u){var d,f,p,m,_,v,y=r&&r.__k||g,ee=t.length;for(c=ae(n,t,y,c,ee),d=0;d<ee;d++)(p=n.__k[d])!=null&&(f=p.__i!=-1&&y[p.__i]||h,p.__i=d,v=ue(e,p,f,i,a,o,s,c,l,u),m=p.__e,p.ref&&f.ref!=p.ref&&(f.ref&&he(f.ref,null,p),u.push(p.ref,p.__c||m,p)),_==null&&m!=null&&(_=m),4&p.__u?(c=oe(p,c,e),f.__e&&(f.__e=null)):typeof p.type==`function`&&v!==void 0?c=v:m&&(c=m.nextSibling),p.__u&=-7);return n.__e=_,c}function ae(e,t,n,r,i){var a,o,s,c,l,u=n.length,d=u,f=0;for(e.__k=Array(i),a=0;a<i;a++)(o=t[a])!=null&&typeof o!=`boolean`&&typeof o!=`function`?(typeof o==`string`||typeof o==`number`||typeof o==`bigint`||o.constructor==String?o=e.__k[a]=x(null,o,null,null,null):v(o)?o=e.__k[a]=x(S,{children:o},null,null,null):o.constructor===void 0&&o.__b>0?o=e.__k[a]=x(o.type,o.props,o.key,o.ref?o.ref:null,o.__v):e.__k[a]=o,c=a+f,o.__=e,o.__b=e.__b+1,s=null,(l=o.__i=se(o,n,c,d))!=-1&&(d--,(s=n[l])&&(s.__u|=2)),s==null||s.__v==null?(l==-1&&(i>u?f--:i<u&&f++),typeof o.type!=`function`&&(o.__u|=4)):l!=c&&(l==c-1?f--:l==c+1?f++:(l>c?f--:f++,o.__u|=4))):e.__k[a]=null;if(d)for(a=0;a<u;a++)(s=n[a])!=null&&!(2&s.__u)&&(s.__e==r&&(r=ne(s)),ge(s,s));return r}function oe(e,t,n){var r,i;if(typeof e.type==`function`){for(r=e.__k,i=0;r&&i<r.length;i++)r[i]&&(r[i].__=e,t=oe(r[i],t,n));return t}e.__e!=t&&(t&&e.type&&!t.parentNode&&(t=ne(e)),t=n.insertBefore(e.__e,t||null));do t&&=t.nextSibling;while(t!=null&&t.nodeType==8);return t}function se(e,t,n,r){var i,a,o,s=e.key,c=e.type,l=t[n],u=l!=null&&!(2&l.__u);if(l===null&&s==null||u&&s==l.key&&c==l.type)return n;if(r>+!!u){for(i=n-1,a=n+1;i>=0||a<t.length;)if((l=t[o=i>=0?i--:a++])!=null&&!(2&l.__u)&&s==l.key&&c==l.type)return o}return-1}function ce(e,t,n){t[0]==`-`?e.setProperty(t,n??``):e[t]=n==null?``:typeof n!=`number`||_.test(t)?n:n+`px`}function E(e,t,n,r,i){var a,o;n:if(t==`style`){if(typeof n==`string`)e.style.cssText=n;else{if(typeof r==`string`&&(e.style.cssText=r=``),r)for(t in r)n&&t in n||ce(e.style,t,``);if(n)for(t in n)r&&n[t]==r[t]||ce(e.style,t,n[t])}}else if(t[0]==`o`&&t[1]==`n`)a=t!=(t=t.replace(d,`$1`)),o=t.toLowerCase(),t=o in e||t==`onFocusOut`||t==`onFocusIn`?o.slice(2):t.slice(2),e.l||={},e.l[t+a]=n,n?r?n[u]=r[u]:(n[u]=f,e.addEventListener(t,a?m:p,a)):e.removeEventListener(t,a?m:p,a);else{if(i==`http://www.w3.org/2000/svg`)t=t.replace(/xlink(H|:h)/,`h`).replace(/sName$/,`s`);else if(t!=`width`&&t!=`height`&&t!=`href`&&t!=`list`&&t!=`form`&&t!=`tabIndex`&&t!=`download`&&t!=`rowSpan`&&t!=`colSpan`&&t!=`role`&&t!=`popover`&&t in e)try{e[t]=n??``;break n}catch{}typeof n==`function`||(n==null||!1===n&&t[4]!=`-`?e.removeAttribute(t):e.setAttribute(t,t==`popover`&&n==1?``:n))}}function le(e){return function(n){if(this.l){var r=this.l[n.type+e];if(n[l]==null)n[l]=f++;else if(n[l]<r[u])return;return r(t.event?t.event(n):n)}}}function ue(e,n,r,i,a,o,s,c,l,u){var d,f,p,m,h,_,b,x,C,w,re,T,ae,oe,se,ce,E=n.type;if(n.constructor!==void 0)return null;128&r.__u&&(l=!!(32&r.__u),o=[c=n.__e=r.__e]),(d=t.__b)&&d(n);n:if(typeof E==`function`){f=s.length;try{if(C=n.props,w=E.prototype&&E.prototype.render,re=(d=E.contextType)&&i[d.__c],T=d?re?re.props.value:d.__:i,r.__c?x=(p=n.__c=r.__c).__=p.__E:(w?n.__c=p=new E(C,T):(n.__c=p=new te(C,T),p.constructor=E,p.render=_e),re&&re.sub(p),p.state||(p.state={}),p.__n=i,m=p.__d=!0,p.__h=[],p._sb=[]),w&&p.__s==null&&(p.__s=p.state),w&&E.getDerivedStateFromProps!=null&&(p.__s==p.state&&(p.__s=y({},p.__s)),y(p.__s,E.getDerivedStateFromProps(C,p.__s))),h=p.props,_=p.state,p.__v=n,m)w&&E.getDerivedStateFromProps==null&&p.componentWillMount!=null&&p.componentWillMount(),w&&p.componentDidMount!=null&&p.__h.push(p.componentDidMount);else{if(w&&E.getDerivedStateFromProps==null&&C!==h&&p.componentWillReceiveProps!=null&&p.componentWillReceiveProps(C,T),n.__v==r.__v||!p.__e&&p.shouldComponentUpdate!=null&&!1===p.shouldComponentUpdate(C,p.__s,T)){n.__v!=r.__v&&(p.props=C,p.state=p.__s,p.__d=!1),n.__e=r.__e,n.__k=r.__k,n.__k.some(function(e){e&&(e.__=n)}),g.push.apply(p.__h,p._sb),p._sb=[],p.__h.length&&s.push(p),c=ne(r);break n}p.componentWillUpdate!=null&&p.componentWillUpdate(C,p.__s,T),w&&p.componentDidUpdate!=null&&p.__h.push(function(){p.componentDidUpdate(h,_,b)})}if(p.context=T,p.props=C,p.__P=e,p.__e=!1,ae=t.__r,oe=0,w)p.state=p.__s,p.__d=!1,ae&&ae(n),d=p.render(p.props,p.state,p.context),g.push.apply(p.__h,p._sb),p._sb=[];else do p.__d=!1,ae&&ae(n),d=p.render(p.props,p.state,p.context),p.state=p.__s;while(p.__d&&++oe<25);p.state=p.__s,p.getChildContext!=null&&(i=y(y({},i),p.getChildContext())),w&&!m&&p.getSnapshotBeforeUpdate!=null&&(b=p.getSnapshotBeforeUpdate(h,_)),se=d!=null&&d.type===S&&d.key==null?pe(d.props.children):d,c=ie(e,v(se)?se:[se],n,r,i,a,o,s,c,l,u),p.base=n.__e,n.__u&=-161,p.__h.length&&s.push(p),x&&(p.__E=p.__=null)}catch(e){if(s.length=f,n.__v=null,l||o!=null){if(e.then){for(n.__u|=l?160:128;c&&c.nodeType==8&&c.nextSibling;)c=c.nextSibling;o!=null&&(o[o.indexOf(c)]=null),n.__e=c}else if(o!=null)for(ce=o.length;ce--;)ee(o[ce])}else n.__e=r.__e;n.__k??=r.__k||[],e.then||de(n),t.__e(e,n,r)}}else o==null&&n.__v==r.__v?(n.__k=r.__k,n.__e=r.__e):c=n.__e=me(r.__e,n,r,i,a,o,s,l,u);return(d=t.diffed)&&d(n),128&n.__u?void 0:c}function de(e){e&&(e.__c&&(e.__c.__e=!0),e.__k&&e.__k.some(de))}function fe(e,n,r){for(var i=0;i<r.length;i++)he(r[i],r[++i],r[++i]);t.__c&&t.__c(n,e),e.some(function(n){try{e=n.__h,n.__h=[],e.some(function(e){e.call(n)})}catch(e){t.__e(e,n.__v)}})}function pe(e){return typeof e!=`object`||!e||e.__b>0?e:v(e)?e.map(pe):e.constructor===void 0?y({},e):null}function me(n,r,i,a,o,s,c,l,u){var d,f,p,m,g,_,y,b=i.props||h,x=r.props,S=r.type;if(S==`svg`?o=`http://www.w3.org/2000/svg`:S==`math`?o=`http://www.w3.org/1998/Math/MathML`:o||=`http://www.w3.org/1999/xhtml`,s!=null){for(d=0;d<s.length;d++)if((g=s[d])&&`setAttribute`in g==!!S&&(S?g.localName==S:g.nodeType==3)){n=g,s[d]=null;break}}if(n==null){if(S==null)return document.createTextNode(x);n=document.createElementNS(o,S,x.is&&x),l&&=(t.__m&&t.__m(r,s),!1),s=null}if(S==null)b===x||l&&n.data==x||(n.data=x);else{if(s=S==`textarea`&&x.defaultValue!=null?null:s&&e.call(n.childNodes),!l&&s!=null)for(b={},d=0;d<n.attributes.length;d++)b[(g=n.attributes[d]).name]=g.value;for(d in b)g=b[d],d==`dangerouslySetInnerHTML`?p=g:d==`children`||d in x||d==`value`&&`defaultValue`in x||d==`checked`&&`defaultChecked`in x||E(n,d,null,g,o);for(d in x)g=x[d],d==`children`?m=g:d==`dangerouslySetInnerHTML`?f=g:d==`value`?_=g:d==`checked`?y=g:l&&typeof g!=`function`||b[d]===g||E(n,d,g,b[d],o);if(f)l||p&&(f.__html==p.__html||f.__html==n.innerHTML)||(n.innerHTML=f.__html),r.__k=[];else if(p&&(n.innerHTML=``),ie(r.type==`template`?n.content:n,v(m)?m:[m],r,i,a,S==`foreignObject`?`http://www.w3.org/1999/xhtml`:o,s,c,s?s[0]:i.__k&&ne(i,0),l,u),s!=null)for(d=s.length;d--;)ee(s[d]);l&&S!=`textarea`||(d=`value`,S==`progress`&&_==null?n.removeAttribute(`value`):_!=null&&(_!==n[d]||S==`progress`&&!_||S==`option`&&_!=b[d])&&E(n,d,_,b[d],o),d=`checked`,y!=null&&y!=n[d]&&E(n,d,y,b[d],o))}return n}function he(e,n,r){try{if(typeof e==`function`){var i=typeof e.__u==`function`;i&&e.__u(),i&&n==null||(e.__u=e(n))}else e.current=n}catch(e){t.__e(e,r)}}function ge(e,n,r){var i,a;if(t.unmount&&t.unmount(e),(i=e.ref)&&(i.current&&i.current!=e.__e||he(i,null,n)),(i=e.__c)!=null){if(i.componentWillUnmount)try{i.componentWillUnmount()}catch(e){t.__e(e,n)}i.base=i.__P=i.__n=null}if(i=e.__k)for(a=0;a<i.length;a++)i[a]&&ge(i[a],n,r||typeof e.type!=`function`);r||ee(e.__e),e.__c=e.__=e.__e=void 0}function _e(e,t,n){return this.constructor(e,n)}function ve(n,r,i){var a,o,s,c;r==document&&(r=document.documentElement),t.__&&t.__(n,r),o=(a=typeof i==`function`)?null:i&&i.__k||r.__k,s=[],c=[],ue(r,n=(!a&&i||r).__k=b(S,null,[n]),o||h,h,r.namespaceURI,!a&&i?[i]:o?null:r.firstChild?e.call(r.childNodes):null,s,!a&&i?i:o?o.__e:r.firstChild,a,c),fe(s,n,c),n.props.children=null}e=g.slice,t={__e:function(e,t,n,r){for(var i,a,o;t=t.__;)if((i=t.__c)&&!i.__)try{if((a=i.constructor)&&a.getDerivedStateFromError!=null&&(i.setState(a.getDerivedStateFromError(e)),o=i.__d),i.componentDidCatch!=null&&(i.componentDidCatch(e,r||{}),o=i.__d),o)return i.__E=i}catch(t){e=t}throw e}},n=0,r=function(e){return e!=null&&e.constructor===void 0},te.prototype.setState=function(e,t){var n=this.__s!=null&&this.__s!=this.state?this.__s:this.__s=y({},this.state);typeof e==`function`&&(e=e(y({},n),this.props)),e&&y(n,e),e!=null&&this.__v&&(t&&this._sb.push(t),re(this))},te.prototype.forceUpdate=function(e){this.__v&&(this.__e=!0,e&&this.__h.push(e),re(this))},te.prototype.render=S,i=[],o=typeof Promise==`function`?Promise.prototype.then.bind(Promise.resolve()):setTimeout,s=function(e,t){return e.__v.__b-t.__v.__b},T.__r=0,c=Math.random().toString(8),l=`__d`+c,u=`__a`+c,d=/(PointerCapture)$|Capture$/i,f=0,p=le(!1),m=le(!0);var ye,D,be,xe,Se=0,Ce=[],O=t,we=O.__b,Te=O.__r,Ee=O.diffed,De=O.__c,Oe=O.unmount,ke=O.__;function Ae(e,t){O.__h&&O.__h(D,e,Se||t),Se=0;var n=D.__H||(D.__H={__:[],__h:[]});return e>=n.__.length&&n.__.push({}),n.__[e]}function k(e){return Se=1,je(ze,e)}function je(e,t,n){var r=Ae(ye++,2);if(r.t=e,!r.__c&&(r.__=[n?n(t):ze(void 0,t),function(e){var t=r.__N?r.__N[0]:r.__[0],n=r.t(t,e);t!==n&&(r.__N=[n,r.__[1]],r.__c.setState({}))}],r.__c=D,!D.__f)){var i=function(e,t,n){if(!r.__c.__H)return!0;var i=!1,o=r.__c.props!==e;if(r.__c.__H.__.some(function(e){if(e.__N){i=!0;var t=e.__[0];e.__=e.__N,e.__N=void 0,t!==e.__[0]&&(o=!0)}}),a){var s=a.call(this,e,t,n);return i?s||o:s}return!i||o};D.__f=!0;var a=D.shouldComponentUpdate,o=D.componentWillUpdate;D.componentWillUpdate=function(e,t,n){if(this.__e){var r=a;a=void 0,i(e,t,n),a=r}o&&o.call(this,e,t,n)},D.shouldComponentUpdate=i}return r.__N||r.__}function A(e,t){var n=Ae(ye++,3);!O.__s&&Re(n.__H,t)&&(n.__=e,n.u=t,D.__H.__h.push(n))}function j(e,t){var n=Ae(ye++,4);!O.__s&&Re(n.__H,t)&&(n.__=e,n.u=t,D.__h.push(n))}function M(e){return Se=5,N(function(){return{current:e}},[])}function N(e,t){var n=Ae(ye++,7);return Re(n.__H,t)&&(n.__=e(),n.__H=t,n.__h=e),n.__}function Me(){var e=Ae(ye++,11);if(!e.__){for(var t=D.__v;t!==null&&!t.__m&&t.__!==null;)t=t.__;var n=t.__m||(t.__m=[0,0]);e.__=`P`+n[0]+`-`+n[1]++}return e.__}function Ne(){for(var e;e=Ce.shift();){var t=e.__H;if(e.__P&&t)try{t.__h.some(Ie),t.__h.some(Le),t.__h=[]}catch(n){t.__h=[],O.__e(n,e.__v)}}}O.__b=function(e){D=null,we&&we(e)},O.__=function(e,t){e&&t.__k&&t.__k.__m&&(e.__m=t.__k.__m),ke&&ke(e,t)},O.__r=function(e){Te&&Te(e),ye=0;var t=(D=e.__c).__H;t&&(be===D?(t.__h=[],D.__h=[],t.__.some(function(e){e.__N&&(e.__=e.__N),e.u=e.__N=void 0})):(t.__h.some(Ie),t.__h.some(Le),t.__h=[],ye=0)),be=D},O.diffed=function(e){Ee&&Ee(e);var t=e.__c;t&&t.__H&&(t.__H.__h.length&&(Ce.push(t)!==1&&xe===O.requestAnimationFrame||((xe=O.requestAnimationFrame)||Fe)(Ne)),t.__H.__.some(function(e){e.u&&=(e.__H=e.u,void 0)})),be=D=null},O.__c=function(e,t){t.some(function(e){try{e.__h.some(Ie),e.__h=e.__h.filter(function(e){return!e.__||Le(e)})}catch(n){t.some(function(e){e.__h&&=[]}),t=[],O.__e(n,e.__v)}}),De&&De(e,t)},O.unmount=function(e){Oe&&Oe(e);var t,n=e.__c;n&&n.__H&&(n.__H.__.some(function(e){try{Ie(e)}catch(e){t=e}}),n.__H=void 0,t&&O.__e(t,n.__v))};var Pe=typeof requestAnimationFrame==`function`;function Fe(e){var t,n=function(){clearTimeout(r),Pe&&cancelAnimationFrame(t),setTimeout(e)},r=setTimeout(n,35);Pe&&(t=requestAnimationFrame(n))}function Ie(e){var t=D,n=e.__c;typeof n==`function`&&(e.__c=void 0,n()),D=t}function Le(e){var t=D;e.__c=e.__(),D=t}function Re(e,t){return!e||e.length!==t.length||t.some(function(t,n){return t!==e[n]})}function ze(e,t){return typeof t==`function`?t(e):t}var Be=Symbol.for(`preact-signals`);function Ve(){if(F>1)F--;else{var e,t=!1;for((function(){var e=Ye;for(Ye=void 0;e!==void 0;){var t=e.S;if(t.v===e.v)for(var n=t.t;n!==void 0;n=n.x)n.i===e.i&&(n.i=t.i);e=e.o}})();Ge!==void 0;){var n=Ge;for(Ge=void 0,Ke++;n!==void 0;){var r=n.u;if(n.u=void 0,n.f&=-3,!(8&n.f)&&Qe(n))try{n.c()}catch(n){t||=(e=n,!0)}n=r}}if(Ke=0,F--,t)throw e}}function He(e){if(F>0)return e();Je=++qe,F++;try{return e()}finally{Ve()}}var Ue,P=void 0;function We(e){var t=P,n=Ue;P=void 0,Ue=void 0;try{return e()}finally{P=t,Ue=n}}var Ge=void 0,F=0,Ke=0,qe=0,Je=0,Ye=void 0,Xe=0;function Ze(e){if(P!==void 0){var t=e.n;if(t===void 0||t.t!==P)return t={i:0,S:e,p:P.s,n:void 0,t:P,e:void 0,x:void 0,r:t},P.s!==void 0&&(P.s.n=t),P.s=t,e.n=t,32&P.f&&e.S(t),t;if(t.i===-1)return t.i=0,t.n!==void 0&&(t.n.p=t.p,t.p!==void 0&&(t.p.n=t.n),t.p=P.s,t.n=void 0,P.s.n=t,P.s=t),t}}function I(e,t){this.v=e,this.i=0,this.n=void 0,this.t=void 0,this.l=0,this.W=t?.watched,this.Z=t?.unwatched,this.name=t?.name}I.prototype.brand=Be,I.prototype.h=function(){return!0},I.prototype.S=function(e){var t=this,n=this.t;n!==e&&e.e===void 0&&(e.x=n,this.t=e,n===void 0?We(function(){var e;(e=t.W)==null||e.call(t)}):n.e=e)},I.prototype.U=function(e){var t=this;if(this.t!==void 0){var n=e.e,r=e.x;n!==void 0&&(n.x=r,e.e=void 0),r!==void 0&&(r.e=n,e.x=void 0),e===this.t&&(this.t=r,r===void 0&&We(function(){var e;(e=t.Z)==null||e.call(t)}))}},I.prototype.subscribe=function(e){var t=this;return st(function(){var n=t.value;We(function(){return e(n)})},{name:`sub`})},I.prototype.valueOf=function(){return this.value},I.prototype.toString=function(){return this.value+``},I.prototype.toJSON=function(){return this.value},I.prototype.peek=function(){var e=this;return We(function(){return e.value})},Object.defineProperty(I.prototype,"value",{get:function(){var e=Ze(this);return e!==void 0&&(e.i=this.i),this.v},set:function(e){if(e!==this.v){if(Ke>100)throw Error(`Cycle detected`);(function(e){F!==0&&Ke===0&&e.l!==Je&&(e.l=Je,Ye={S:e,v:e.v,i:e.i,o:Ye})})(this),this.v=e,this.i++,Xe++,F++;try{for(var t=this.t;t!==void 0;t=t.x)t.t.N()}finally{Ve()}}}});function L(e,t){return new I(e,t)}function Qe(e){for(var t=e.s;t!==void 0;t=t.n)if(t.S.i!==t.i||!t.S.h()||t.S.i!==t.i)return!0;return!1}function $e(e){for(var t=e.s;t!==void 0;t=t.n){var n=t.S.n;if(n!==void 0&&(t.r=n),t.S.n=t,t.i=-1,t.n===void 0){e.s=t;break}}}function et(e){for(var t=e.s,n=void 0;t!==void 0;){var r=t.p;t.i===-1?(t.S.U(t),r!==void 0&&(r.n=t.n),t.n!==void 0&&(t.n.p=r)):n=t,t.S.n=t.r,t.r!==void 0&&(t.r=void 0),t=r}e.s=n}function tt(e,t){I.call(this,void 0,t),this.x=e,this.s=void 0,this.g=Xe-1,this.f=4}tt.prototype=new I,tt.prototype.h=function(){if(this.f&=-3,1&this.f)return!1;if((36&this.f)==32||(this.f&=-5,this.g===Xe))return!0;if(this.g=Xe,this.f|=1,this.i>0&&!Qe(this))return this.f&=-2,!0;var e=P;try{$e(this),P=this;var t=this.x();(16&this.f||this.v!==t||this.i===0)&&(this.v=t,this.f&=-17,this.i++)}catch(e){this.v=e,this.f|=16,this.i++}return P=e,et(this),this.f&=-2,!0},tt.prototype.S=function(e){if(this.t===void 0){this.f|=36;for(var t=this.s;t!==void 0;t=t.n)t.S.S(t)}I.prototype.S.call(this,e)},tt.prototype.U=function(e){if(this.t!==void 0&&(I.prototype.U.call(this,e),this.t===void 0)){this.f&=-33;for(var t=this.s;t!==void 0;t=t.n)t.S.U(t)}},tt.prototype.N=function(){if(!(2&this.f)){this.f|=6;for(var e=this.t;e!==void 0;e=e.x)e.t.N()}},Object.defineProperty(tt.prototype,"value",{get:function(){if(1&this.f)throw Error(`Cycle detected`);var e=Ze(this);if(this.h(),e!==void 0&&(e.i=this.i),16&this.f)throw this.v;return this.v}});function nt(e,t){return new tt(e,t)}function rt(e){var t=e.m;if(e.m=void 0,typeof t==`function`){F++;var n=P;P=void 0;try{t()}catch(t){throw e.f&=-2,e.f|=8,it(e),t}finally{P=n,Ve()}}}function it(e){for(var t=e.s;t!==void 0;t=t.n)t.S.U(t);e.x=void 0,e.s=void 0,rt(e)}function at(e){if(P!==this)throw Error(`Out-of-order effect`);et(this),P=e,this.f&=-2,8&this.f&&it(this),Ve()}function ot(e,t){this.x=e,this.m=void 0,this.s=void 0,this.u=void 0,this.f=32,this.name=t?.name,Ue&&Ue.push(this)}ot.prototype.c=function(){var e=this.S();try{if(8&this.f||this.x===void 0)return;var t=this.x();typeof t==`function`&&(this.m=t)}finally{e()}},ot.prototype.S=function(){if(1&this.f)throw Error(`Cycle detected`);this.f|=1,this.f&=-9,rt(this),$e(this),F++;var e=P;return P=this,at.bind(this,e)},ot.prototype.N=function(){2&this.f||(this.f|=2,this.u=Ge,Ge=this)},ot.prototype.d=function(){this.f|=8,1&this.f||it(this)},ot.prototype.dispose=function(){this.d()};function st(e,t){var n=new ot(e,t);try{n.c()}catch(e){throw n.d(),e}var r=n.d.bind(n);return r[Symbol.dispose]=r,r}var ct,lt,ut=typeof window<`u`&&!!window.__PREACT_SIGNALS_DEVTOOLS__,dt=[];st(function(){ct=this.N})();function ft(e,n){t[e]=n.bind(null,t[e]||function(){})}function pt(e){if(lt){var t=lt;lt=void 0,t()}lt=e&&e.S()}function mt(e){var t=this,n=e.data,i=gt(n);i.name=`ReactiveDom`,i.value=n;var a=N(function(){for(var e=t,n=t.__v;n=n.__;)if(n.__c){n.__c.__$f|=4;break}var a=nt(function(){var e=i.value.value;return e===0?0:!0===e?``:e||``}),o=nt(function(){return!Array.isArray(a.value)&&!r(a.value)}),s=st(function(){if(this.N=yt,o.value){var t=a.value;e.__v&&e.__v.__e&&e.__v.__e.nodeType===3&&(e.__v.__e.data=t)}}),c=t.__$u.d;return t.__$u.d=function(){s(),c.call(this)},[o,a]},[]),o=a[0],s=a[1];return o.value?s.peek():s.value}mt.displayName=`ReactiveTextNode`,Object.defineProperties(I.prototype,{constructor:{configurable:!0,value:void 0},type:{configurable:!0,value:mt},props:{configurable:!0,get:function(){var e=this;return{data:{get value(){return e.value}}}}},__b:{configurable:!0,value:1}}),ft(`__b`,function(e,t){if(pt(),typeof t.type==`string`){var n,r=t.props;for(var i in r)if(i!==`children`){var a=r[i];a instanceof I&&(n||(t.__np=n={}),n[i]=a,r[i]=a.peek())}}e(t)}),ft(`__r`,function(e,t){if(e(t),t.type!==S){pt();var n,r=t.__c;r&&(r.__$f&=-2,(n=r.__$u)===void 0&&(r.__$u=n=function(e,t){var n;return st(function(){n=this},{name:t}),n.c=e,n}(function(e){return function(){var t;ut&&((t=this.y)==null||t.call(this)),e.__$f|=1,e.setState({})}}(r),typeof t.type==`function`?t.type.displayName||t.type.name:``))),pt(n)}}),ft(`__e`,function(e,t,n,r){pt(),e(t,n,r)}),ft(`diffed`,function(e,t){pt();var n;if(typeof t.type==`string`&&(n=t.__e)){var r=t.__np,i=t.props,a=n.U;if(a)for(var o in a){var s=a[o];s===void 0||r&&o in r||(s.d(),a[o]=void 0)}if(r)for(var c in a||(a={},n.U=a),r){var l=a[c],u=r[c];l===void 0?(l=ht(n,c,u,i),a[c]=l):l.o(u,i)}}e(t)});function ht(e,t,n,r){var i=t in e&&e.ownerSVGElement===void 0,a=L(n);return{o:function(e,t){a.value=e,r=t},d:st(function(){this.N=yt;var n=a.value.value;r[t]!==n&&(r[t]=n,i?e[t]=n:n!=null&&(!1!==n||t[4]===`-`)?e.setAttribute(t,n):e.removeAttribute(t))})}}ft(`unmount`,function(e,t){if(typeof t.type==`string`){var n=t.__e;if(n){var r=n.U;if(r)for(var i in n.U=void 0,r){var a=r[i];a&&a.d()}}var o=t.__np;if(o){var s=t.props;for(var c in o)s[c]=o[c]}t.__np=void 0}else{var l=t.__c;if(l){l.__$f|=8;var u=l.__$u;u&&(l.__$u=void 0,u.d())}}e(t)}),ft(`__h`,function(e,t,n,r){r<3&&(t.__$f|=2),e(t,n,r)}),te.prototype.shouldComponentUpdate=function(e,t){if(this.__R)return!0;var n=this.__$u,r=n&&n.s!==void 0;for(var i in t)return!0;if(this.__f||typeof this.u==`boolean`&&!0===this.u){var a=2&this.__$f;if(!(r||a||4&this.__$f)||1&this.__$f)return!0}else if(!(r||4&this.__$f)||3&this.__$f)return!0;for(var o in e)if(o!==`__source`&&e[o]!==this.props[o])return!0;for(var s in this.props)if(!(s in e))return!0;return!1};function gt(e,t){return N(function(){return L(e,t)},[])}var _t=function(e){queueMicrotask(function(){queueMicrotask(e)})};function vt(){He(function(){for(var e;e=dt.shift();)ct.call(e)})}function yt(){dt.push(this)===1&&(t.requestAnimationFrame||_t)(vt)}var bt=L({text:``,seq:0});function xt(e){bt.value={text:e,seq:bt.value.seq+1}}var St=L(null);async function Ct(e){try{return typeof navigator.clipboard?.writeText==`function`&&(await navigator.clipboard.writeText(e),!0)}catch{return!1}}async function wt(e,t){return await Ct(t)?(xt(`${e} copied to the clipboard.`),!0):(St.value={label:e,text:t},!1)}function Tt(e){try{return window.localStorage.getItem(e)}catch{return null}}function Et(e,t){try{window.localStorage.setItem(e,t)}catch{}}var Dt=`loupe.sidebar`,Ot=`(max-width: 760px)`;function kt(){return window.matchMedia(Ot).matches}var R=L(!kt()&&Tt(Dt)!==`closed`);function At(){R.value=!R.value,kt()||Et(Dt,R.value?`open`:`closed`)}var jt=L(null);function Mt(e){R.value=!0,jt.value={key:e,seq:(jt.value?.seq??0)+1}}var Nt=/^(0|[1-9]\d*)$/,Pt={"run-errors":{page:`errors`}};function Ft(e){try{return decodeURIComponent(e)}catch{return null}}function It(e){return Ft(e)??e}function Lt(e){let t=e.split(`/`).filter(e=>e!==``).map(Ft);if(t.some(e=>e===null))return{page:`not-found`,path:e};let[n,r,i,a]=t;if(t.length===0)return{page:`dashboard`};if(t.length===1&&(n===`errors`||n===`health`||n===`tests`))return{page:n};if(n===`errors`&&r===`category`&&t.length===3&&i!==void 0)return{page:`errors`,category:i};if(t.length===1&&n!==void 0&&Object.hasOwn(Pt,n))return Pt[n];if(n===`group`&&r!==void 0&&t.length===2)return{page:`group`,signature:r};if(n===`test`&&r!==void 0){if(t.length===2)return{page:`test`,id:r,repeatEachIndex:0};if(t.length===4&&i===`repeat`&&a!==void 0&&Nt.test(a))return{page:`test`,id:r,repeatEachIndex:Number(a)}}return{page:`not-found`,path:e}}function Rt(e){let t=e.startsWith(`#`)?e.slice(1):e,n=t.indexOf(`?`),r=n===-1?t:t.slice(0,n),i=n===-1?``:t.slice(n+1);return{route:Lt(r),search:i}}function zt(e){switch(e.page){case`dashboard`:return`/`;case`errors`:return e.category===void 0?`/errors`:`/errors/category/${encodeURIComponent(e.category)}`;case`health`:return`/health`;case`tests`:return`/tests`;case`test`:{let t=`/test/${encodeURIComponent(e.id)}`;return e.repeatEachIndex===0?t:`${t}/repeat/${e.repeatEachIndex}`}case`group`:return`/group/${encodeURIComponent(e.signature)}`;case`not-found`:return e.path.startsWith(`/`)?e.path:`/${e.path}`}}function z(e){return`#${zt(e.route)}${e.search?`?${e.search}`:``}`}function Bt(e){let t=((e.startsWith(`#`)?e.slice(1):e).split(`?`)[0]??``).split(`/`).filter(e=>e!==``);return t.length!==1||!Object.hasOwn(Pt,It(t[0]))?null:z(Rt(e))}var Vt=(e,t)=>e;function Ht(){let e=window.location.hash,t=Rt(e),n={route:t.route,search:Vt(t.search,t.route)};return(Bt(e)!==null||n.search!==t.search)&&window.history.replaceState(window.history.state,``,z(n)),n}var B=L(Ht());function Ut(){let e=Ht();z(e)!==z(B.value)&&(B.value=e)}window.addEventListener(`hashchange`,Ut),window.addEventListener(`popstate`,Ut);function Wt(e){Vt=e,Ut()}var Gt=new Set([`attempt`]);function Kt(e){return e.split(`&`).filter(e=>e!==``&&!Gt.has(e.split(`=`)[0]??``)).join(`&`)}function V(e){return z({route:e,search:Vt(Kt(B.value.search),e)})}function qt(e){window.location.hash=V(e)}function Jt(e,t){let n=z(e);n!==z(B.value)&&(t===`push`?window.history.pushState(null,``,n):window.history.replaceState(window.history.state,``,n),B.value=e)}var Yt=[`passed`,`failed`,`flaky`,`skipped`],Xt=[/^Test timeout of \d+ms exceeded\.$/,/^Test timeout of \d+ms exceeded while setting up "[^"]*"\.$/,/^Tearing down "[^"]*" exceeded the test timeout of \d+ms\.$/,/^Test timeout of \d+ms exceeded while running "(?:beforeEach|afterEach)" hook\.$/,/^Fixture "[^"]*" timeout of \d+ms exceeded during (?:setup|teardown)\.$/,/^"(?:beforeAll|afterAll)" hook timeout of \d+ms exceeded\.$/];function Zt(e){let t=e.split(`
8
+ `).find(e=>e.trim()!==``)?.trim()??``;return Xt.some(e=>e.test(t))}function Qt(e,t){let n=e.errors[0];return t>0&&n!==void 0&&Zt(n.message)}function $t(e){return`${e} more only seen after a test timeout`}function en(e,t){let n=`${e} ${e===1?`error group`:`error groups`}`;return t>0?`${n} · ${$t(t)}`:n}function tn(e){return`${e} ${e===1?`group`:`groups`} only seen after a test timeout`}var nn=`Playwright skipped this test without a skip annotation, usually because a dependency project or an earlier test of its serial group failed, the failure limit (--max-failures) was reached, or the run was stopped.`;function rn(e){return e.type===`skip`||e.type===`fixme`}function an(e){if(e.outcome!==`skipped`)return null;let t=[...e.attempts.at(-1)?.annotations??[],...e.annotations].filter(rn);if(t.length===0)return{kind:`notRun`,text:null};let n=t.find(e=>e.description?.trim());return{kind:(n??t[0]).type,text:n?.description?.trim()??null}}var on={skip:`Skipped`,fixme:`Fixme`};function sn(e){if(e.kind===`notRun`)return`Not run`;let t=on[e.kind];return e.text===null?`${t} (no reason given)`:`${t}: ${e.text}`}function cn(e){return e.kind===`notRun`?`Not run. ${nn}`:sn(e)}function ln(e,t){return t.status!==e.expectedStatus&&t.status!==`skipped`}function un(e){let t=new Map;for(let n of e.tests)for(let e of n.attempts)if(ln(n,e))for(let[r,i]of e.errors.entries()){let a=t.get(i.signature);a||(a={signature:i.signature,category:i.category??`Uncategorized`,message:i.message,tests:[],failed:0,flaky:0,afterTimeout:!0},t.set(i.signature,a)),Qt(e,r)||(a.afterTimeout=!1);let o=a.tests[a.tests.length-1];o?.test===n?o.attempts.includes(e.index)||o.attempts.push(e.index):(a.tests.push({test:n,attempts:[e.index]}),n.outcome===`failed`?a.failed+=1:n.outcome===`flaky`&&(a.flaky+=1))}return[...t.values()]}function dn(e){return e.map((e,t)=>({group:e,index:t})).sort((e,t)=>Number(e.group.afterTimeout)-Number(t.group.afterTimeout)||t.group.failed-e.group.failed||t.group.flaky-e.group.flaky||e.index-t.index).map(({group:e})=>e)}function fn(e){return{visible:e.filter(e=>!e.afterTimeout),folded:e.filter(e=>e.afterTimeout)}}function pn(e){return e.split(`
9
+ `).find(e=>e.trim()!==``)?.trim()??``}var mn=/^(?:Error: )?(?:expect(?:\.soft|\.poll)?\(\w+\)\.(?:not\.)?\w+\([^)]*\)(?: failed)?|Timed out \d+ms waiting for expect\(.*)$/,hn=/^\s*Locator:\s+(.+?)\s*$/m,gn=/^\s*(?:- )?\u2190 (\d{3}\b.*?)\s*$/m;function _n(e){let t=pn(e);if(!mn.test(t))return t;let n=hn.exec(e);if(n)return`Locator: ${n[1]}`;let r=gn.exec(e);return r?`\u2190 ${r[1]}`:t}function vn(e){return{headline:_n(e.message),firstTest:e.tests[0]?.test??null,others:Math.max(0,e.tests.length-1)}}function yn(e){return e.tests.some(({test:e})=>e.attempts.length>1)?`failed on ${e.tests.reduce((e,{attempts:t})=>e+t.length,0)} of ${e.tests.reduce((e,{test:t})=>e+t.attempts.length,0)} attempts`:null}function bn(e,t){let n=new Map;for(let e of t){let t=n.get(e.category);t||(t={tests:new Set,groups:[]},n.set(e.category,t)),t.groups.push(e);for(let{test:n}of e.tests)t.tests.add(n)}let r=e.categories.map(e=>e.name);return[...r.filter(e=>n.has(e)),...[...n.keys()].filter(e=>!r.includes(e))].map(e=>{let t=n.get(e);return{name:e,tests:t.tests.size,groups:t.groups}})}function xn(e){let{stats:t,status:n,errors:r}=e.run;return t.failed>0||n!==`passed`||r.length>0?`failed`:t.flaky>0?`flaky`:`passed`}function Sn(e){return Yt.filter(t=>e[t]>0).map(t=>({outcome:t,count:e[t],share:e.total>0?e[t]/e.total:0}))}function Cn(e){let t=e.total-e.skipped;return t>0?e.passed/t:null}var wn=`Pass rate: passed / (total − skipped). Skipped tests are excluded; flaky tests do not count as passed.`;function Tn(e){let t=e*100;return t>99&&t<100?`99%`:t>0&&t<1?`<1%`:`${Math.round(t)}%`}function En(e){return e.projects.filter(e=>e.stats.total>0).map(t=>{let n=e.tests.filter(e=>e.project===t.name).reduce((e,t)=>e+t.durationMs,0);return{project:t,passRate:Cn(t.stats),durationMs:n}})}function Dn(e){return e.dimensions.map(t=>{let n=new Map,r=e=>{let r=n.get(e);return r||(r={value:e,passed:0,failed:0,flaky:0,skipped:0,total:0,unknown:t.values!==null&&!t.values.includes(e),caseVariants:[]},n.set(e,r)),r};for(let e of t.values??[])r(e);let i=0;for(let n of e.tests){let e=n.dimensions[t.name]??[];e.length===0&&(i+=1);for(let t of new Set(e)){let e=r(t);e[n.outcome]+=1,e.total+=1}}let a=t.values??[],o=[...n.keys()].filter(e=>!a.includes(e)).sort((e,t)=>e.localeCompare(t)),s=[...a,...o].map(e=>n.get(e)),c=Nn(s.map(e=>e.value));for(let e of s)e.caseVariants=c.get(e.value)??[];return{definition:t,values:s,without:i}})}function On(e){return e.values.length<=8?`bars`:`tiles`}function kn(e){return e.failed>0?`failed`:e.flaky>0?`flaky`:e.passed>0?`passed`:e.skipped>0?`skipped`:`none`}var An={failed:0,flaky:1,passed:2,skipped:3,none:4};function jn(e){return e.map((e,t)=>({row:e,index:t,status:kn(e)})).sort((e,t)=>An[e.status]-An[t.status]||t.row.failed-e.row.failed||t.row.flaky-e.row.flaky||e.index-t.index).map(({row:e})=>e)}function Mn(e){let t=t=>e.filter(e=>kn(e)===t).length,n=[[t(`passed`),`all passed`],[t(`failed`),`with failures`],[t(`flaky`),`flaky`],[t(`skipped`),`skipped only`],[t(`none`),`without tests`]];return[`${e.length} ${e.length===1?`value`:`values`}`,...n.filter(([e])=>e>0).map(([e,t])=>`${e} ${t}`)].join(` · `)}function Nn(e){let t=new Map;for(let n of new Set(e)){let e=n.toLowerCase();t.set(e,[...t.get(e)??[],n])}let n=new Map;for(let e of t.values())if(!(e.length<2))for(let t of e)n.set(t,e.filter(e=>e!==t));return n}function Pn(e){return e.tests.filter(e=>e.outcome===`flaky`).map(e=>({test:e,error:e.attempts.find(t=>ln(e,t))?.errors[0]??null}))}function Fn(e,t=10){return e.tests.filter(e=>e.outcome!==`skipped`&&e.durationMs>0).map((e,t)=>({test:e,index:t})).sort((e,t)=>t.test.durationMs-e.test.durationMs||e.index-t.index).slice(0,t).map(({test:e})=>e)}function In(e){return e.tests.flatMap(e=>{let t=an(e);return t?[{test:e,reason:t}]:[]})}var Ln=/^@([^:\s]+):(.+)$/;function Rn(e){let t=Ln.exec(e);return t?{prefix:t[1]??``,value:t[2]??``}:null}var zn=/^\s+at (.+)$/,Bn=/^(.+?) \((.+)\)$/,Vn=/^(.*?):(\d+)(?::\d+)?$/;function Hn(e){let t=e;if(t.startsWith(`file://`)&&(t=t.slice(7)),t.includes(`%`))try{t=decodeURIComponent(t)}catch{}return t=t.replace(/\\/g,`/`),/^\/[A-Za-z]:\//.test(t)?t.slice(1):t}function Un(e){if(e===null)return null;let t=e.replace(/^async /,``).replace(/^new /,``).replace(/\s*\[as [^\]]*\]$/,``).replace(/^Object\./,``).replace(/<anonymous>/g,``).replace(/^\.+|\.+$/g,``).trim();return t===``?null:t}function Wn(e){if(!e)return[];let t=[];for(let n of e.split(`
10
+ `)){let e=zn.exec(n);if(!e)continue;let r=e[1].trim();r.startsWith(`async `)&&!Bn.test(r)&&(r=r.slice(6));let i=Bn.exec(r),a=Hn(i?i[2]:r),o=Vn.exec(a);t.push({fn:Un(i?i[1]:null),path:o?o[1]:a,line:o?Number(o[2]):null})}return t}function Gn(e){return/(?:^|\/)node_modules\//.test(e)||e.startsWith(`node:`)||/(?:^|\/)playwright(?:-core)?\/lib\//.test(e)||e===`native`||e===`<anonymous>`}function Kn(e,t){if(e.startsWith(t))return e.slice(t.length);let n=t.replace(/\/$/,``).split(`/`),r=e.split(`/`),i=0;for(;i<n.length&&i<r.length-1&&n[i]===r[i];)i+=1;return i===0?e:[...Array(n.length-i).fill(`..`),...r.slice(i)].join(`/`)}var qn={root:null,points:[],byTest:new Map};function Jn(e){return[e.file,...e.suitePath,e.title].join(`\0`)}function Yn(e){let t=[];for(let n of e)for(let e of n.attempts)if(ln(n,e))for(let r of e.errors)t.push({test:n,signature:r.signature,category:r.category??`Uncategorized`,frames:Wn(r.stack)});return t}function Xn(e){let t=new Map;for(let{test:n,frames:r}of e){let e=`/${n.file}`;for(let i of r){if(!i.path.endsWith(e))continue;let r=i.path.slice(0,i.path.length-n.file.length);t.set(r,(t.get(r)??0)+1)}}let n=null;for(let e of t)(n===null||e[1]>n[1]||e[1]===n[1]&&(e[0].length<n[0].length||e[0].length===n[0].length&&e[0]<n[0]))&&(n=e);return n?.[0]??null}function Zn(e,t){return t.identities.size-e.identities.size||t.files.size-e.files.size||(e.key<t.key?-1:+(e.key>t.key))}var Qn={failed:0,flaky:1,other:2};function $n(e){let t=Yn(e.tests),n=Xn(t);if(n===null)return{...qn,root:null};let r=new Set(e.tests.map(e=>e.file)),i=new Map,a=[],o=new Map;for(let{test:e,signature:s,category:c,frames:l}of t){let t=new Map,u=a.length;l.forEach((a,l)=>{if(a.fn===null||Gn(a.path))return;let d=Kn(a.path,n);if(r.has(d))return;let f=`${d}#${a.fn}`,p=i.get(f);if(p||(p={key:f,file:d,fn:a.fn,lines:new Set,identities:new Map,files:new Set,signatures:new Set,categories:new Set,stacks:[]},i.set(f,p)),a.line!==null&&p.lines.add(a.line),t.has(f))return;t.set(f,l);let m=Jn(e),h=e.outcome===`failed`?`failed`:e.outcome===`flaky`?`flaky`:`other`,g=p.identities.get(m);(g===void 0||Qn[h]<Qn[g])&&p.identities.set(m,h),p.files.add(e.file),p.signatures.add(s),p.categories.add(c),p.stacks.push(u);let _=o.get(e);_||o.set(e,_=new Set),_.add(f)}),a.push(t)}let s=[...i.values()].filter(e=>e.identities.size>=5&&e.files.size>=3&&e.signatures.size>=2).sort(Zn),c=new Map;for(let e of s){let t=null,n=-1,r=a[e.stacks[0]];for(let i of s){if(i===e||i.identities.size<e.identities.size||![...e.identities.keys()].every(e=>i.identities.has(e))||!e.stacks.every(t=>{let n=a[t],r=n.get(i.key);return r!==void 0&&r>n.get(e.key)}))continue;let o=r.get(i.key);(t===null||i.identities.size<t.identities.size||i.identities.size===t.identities.size&&o>n)&&(t=i,n=o)}t&&c.set(e.key,t)}let l=e=>{let t=c.get(e.key);return t?l(t):e},u=s.filter(e=>!c.has(e.key)).slice(0,5).map(e=>{let t=[...e.identities.values()];return{key:e.key,file:e.file,fn:e.fn,lines:[...e.lines].sort((e,t)=>e-t),tests:e.identities.size,failed:t.filter(e=>e===`failed`).length,flaky:t.filter(e=>e===`flaky`).length,files:e.files.size,signatures:[...e.signatures],categories:[...e.categories],via:s.filter(t=>c.has(t.key)&&l(t)===e).map(({key:e,file:t,fn:n})=>({key:e,file:t,fn:n}))}}),d=u.map(e=>e.key),f=new Map;for(let[e,t]of o){let n=d.filter(e=>t.has(e));n.length>0&&f.set(e,n)}return{root:n,points:u,byTest:f}}var er=new WeakMap;function tr(e){let t=er.get(e.tests);return t||(t=$n(e),er.set(e.tests,t)),t}var nr=[`status`,`title`,`project`,`file`,`duration`,`category`,`attempts`],rr={column:`declaration`,direction:`asc`};function ir(e){return dr(Object.keys(e)).map(t=>[t,e[t]??[]]).filter(([,e])=>e.length>0)}var ar={q:``,facets:{},sort:rr},or=[`status`,`project`,`tag`],sr=`dim.`;function cr(e){return`${sr}${e}`}function lr(e){return e.startsWith(sr)?e.slice(4):null}function ur(e,t){return e<t?-1:+(e>t)}function dr(e){let t=e=>e===`point`?5:e===`category`?4:lr(e)===null?or.indexOf(e):3;return[...e].sort((e,n)=>t(e)-t(n)||ur(e,n))}function fr(e){try{return decodeURIComponent(e.replace(/\+/g,` `))}catch{return null}}function pr(e){let[t,n,...r]=e.split(`:`);return r.length>0||n===void 0?null:t===`declaration`?n===`asc`?rr:null:!nr.includes(t??``)||n!==`asc`&&n!==`desc`?null:{column:t,direction:n}}function mr(e,t){let n=e;if(e.startsWith(`#`)){let t=e.indexOf(`?`);n=t===-1?``:e.slice(t+1)}else e.startsWith(`?`)&&(n=e.slice(1));let r={},i=``,a=rr;for(let e of n.split(`&`)){if(e===``)continue;let n=e.indexOf(`=`),o=fr(n===-1?e:e.slice(0,n)),s=n===-1?``:e.slice(n+1);if(o===null)continue;if(o===`q`){i=fr(s)??``;continue}if(o===`sort`){a=pr(fr(s)??``)??a;continue}if(!(or.includes(o)||o===`category`||o===`point`||o.startsWith(sr)&&o.length>4))continue;let c=o,l=t?.get(c);if(!t||l)for(let e of s.split(`,`)){let t=fr(e);t===null||t===``||l&&!l.has(t)||(r[c]??=[]).push(t)}}return hr({q:i,facets:r,sort:a})}function hr(e){let t={};for(let[n,r]of ir(e.facets))t[n]=[...new Set(r)].sort(ur);return{q:e.q,facets:t,sort:e.sort}}function gr(e){return e.column===rr.column&&e.direction===rr.direction}function _r(e){let t=hr(e),n=[],r=t.q.trim();r!==``&&n.push(`q=${encodeURIComponent(r)}`);for(let[e,r]of ir(t.facets))n.push(`${encodeURIComponent(e)}=${r.map(encodeURIComponent).join(`,`)}`);return gr(t.sort)||n.push(`sort=${t.sort.column}:${t.sort.direction}`),n.join(`&`)}function vr(e){return(e.q.trim()===``?0:1)+ir(e.facets).reduce((e,[,t])=>e+t.length,0)}function yr(e,t,n,r){let i=e.facets[t]??[],a=r?[...i,n]:i.filter(e=>e!==n);return{...e,facets:{...e.facets,[t]:a}}}function br(e){return{...ar,sort:e.sort}}var xr={dimensionTagPrefixes:new Set,failurePoints:new Map};function Sr(e){return{dimensionTagPrefixes:new Set(e.dimensions.filter(e=>e.source===`tag`).map(e=>e.key)),failurePoints:e.tests?tr({tests:e.tests}).byTest:new Map}}function Cr(e,t){return t.dimensionTagPrefixes.size===0?[...e]:e.filter(e=>{let n=Rn(e);return n===null||!t.dimensionTagPrefixes.has(n.prefix)})}function wr(e){return e.normalize(`NFD`).replace(/\p{M}/gu,``).toLowerCase()}function Tr(e){return wr(e).split(/\s+/).filter(e=>e!==``)}function Er(e){let t=new Set;for(let n of e.attempts)if(ln(e,n))for(let e of n.errors)t.add(e.category??`Uncategorized`);return[...t]}var Dr=new WeakMap;function Or(e){let t=Dr.get(e);return t||(t={haystack:wr([[...e.suitePath,e.title].join(` › `),e.file,e.project,...e.tags,...Object.values(e.dimensions).flat(),an(e)?.text??``].join(`
11
+ `)),categories:Er(e)},Dr.set(e,t)),t}function kr(e){return Or(e).categories}function Ar(e){let t=kr(e),n=e.category!==null&&t.includes(e.category)?e.category:t[0]??null;return{primary:n,others:t.filter(e=>e!==n)}}function jr(e,t,n=xr){switch(t){case`status`:return[e.outcome];case`project`:return[e.project];case`tag`:return Cr(e.tags,n);case`category`:return kr(e);case`point`:return n.failurePoints.get(e)??[];default:return e.dimensions[lr(t)??``]??[]}}function Mr(e,t){if(t.length===0)return!0;let{haystack:n}=Or(e);return t.every(e=>n.includes(e))}function Nr(e,t,n,r){if(n.length===0)return!0;let i=jr(e,t,r);return n.some(e=>i.includes(e))}function Pr(e,t,n=xr){let r=Tr(t.q),i=ir(t.facets);return e.filter(e=>Mr(e,r)&&i.every(([t,r])=>Nr(e,t,r,n)))}function Fr(e,t,n,r=xr){let i=new Map;for(let[e,t]of n)i.set(e,new Map([...t].map(e=>[e,0])));let a=Tr(t.q),o=ir(t.facets),s=(e,t)=>{let n=i.get(t);if(n)for(let i of new Set(jr(e,t,r))){let e=n.get(i);e!==void 0&&n.set(i,e+1)}};for(let t of e){if(!Mr(t,a))continue;let e=null,i=0;for(let[n,a]of o)if(!Nr(t,n,a,r)&&(i+=1,e=n,i>1))break;if(!(i>1)){if(e!==null)s(t,e);else for(let e of n.keys())s(t,e)}}return i}function Ir(e){let t=Sr(e),n=n=>new Set(e.tests.flatMap(e=>jr(e,n,t))),r=(e,t)=>new Set([...e.filter(e=>t.has(e)),...[...t].filter(t=>!e.includes(t)).sort((e,t)=>e.localeCompare(t))]),i=new Map,a=(e,t)=>{t.size>0&&i.set(e,t)};a(`status`,r([`failed`,`flaky`,...Yt.filter(e=>e!==`failed`&&e!==`flaky`)],n(`status`))),a(`category`,r(e.categories.map(e=>e.name),n(`category`))),a(`point`,new Set(tr(e).points.map(e=>e.key)));let o=n(`project`);o.delete(``),a(`project`,r(e.projects.map(e=>e.name),o)),a(`tag`,r([],n(`tag`)));for(let t of e.dimensions){let e=cr(t.name);a(e,r(t.values??[],n(e)))}return i}var Lr={failed:0,flaky:1,passed:2,skipped:3},Rr=new Intl.Collator(void 0,{numeric:!0,sensitivity:`base`});function zr(e){return[...e.suitePath,e.title].join(` › `)}function Br(e){return e===`duration`||e===`attempts`?`desc`:`asc`}function Vr(e,t){return e.column===t?{column:t,direction:e.direction===`asc`?`desc`:`asc`}:{column:t,direction:Br(t)}}var Hr={title:zr,project:e=>e.project,file:e=>`${e.file}:${e.line}`,category:e=>Ar(e).primary};function Ur(e,t){let n=[...new Set(e.map(t).filter(e=>e!==null))].sort(Rr.compare),r=new Map(n.map((e,t)=>[e,t]));return new Map(e.map(e=>{let n=t(e);return[e,n===null?null:r.get(n)??null]}))}function Wr(e,t=[]){let n={title:Ur(e,Hr.title),project:Ur(e,Hr.project),file:Ur(e,Hr.file),category:Ur(e,Hr.category)},r=(e,t)=>n[e].get(t)??0,i=[...e].sort((e,t)=>r(`title`,e)-r(`title`,t)||r(`project`,e)-r(`project`,t)||e.repeatEachIndex-t.repeatEachIndex),a=new Map(t.map((e,t)=>[e,t]));for(let t of e)a.has(t.project)||a.set(t.project,a.size);let o=[...e].sort((e,t)=>(a.get(e.project)??0)-(a.get(t.project)??0)||Rr.compare(e.file,t.file)||e.line-t.line||e.column-t.column||r(`title`,e)-r(`title`,t)||e.repeatEachIndex-t.repeatEachIndex);return{text:n,order:new Map(i.map((e,t)=>[e,t])),declaration:new Map(o.map((e,t)=>[e,t]))}}function Gr(e,t,n){switch(t){case`declaration`:return n.declaration.get(e)??0;case`status`:return Lr[e.outcome];case`duration`:return e.durationMs;case`attempts`:return e.attempts.length;default:return n.text[t].get(e)??null}}function Kr(e,t,n){return e===null||t===null?e===t?0:e===null?1:-1:n*(e-t)}function qr(e,t,n=Wr(e)){let r=t.direction===`asc`?1:-1,i=t.column===`status`||t.column===`declaration`?n.declaration:n.order;return e.map(e=>({test:e,key:Gr(e,t.column,n),order:i.get(e)??0})).sort((e,t)=>Kr(e.key,t.key,r)||e.order-t.order).map(({test:e})=>e)}var Jr=/^(0|[1-9]\d{0,5})$/;function Yr(e){let t=null,n=!1;for(let r of e.split(`&`)){let[e,i=``]=r.split(`=`);e===`attempt`&&Jr.test(i)&&(t=Number(i)),e===`steps`&&i===`all`&&(n=!0)}return{attempt:t,allSteps:n}}function Xr(e){let t=[];return e.attempt!==null&&t.push(`attempt=${e.attempt}`),e.allSteps&&t.push(`steps=all`),t.join(`&`)}function Zr(...e){return e.filter(e=>e!==``).join(`&`)}var Qr=L(new Map),$r=L(xr);function ei(e){Qr.value=Ir(e),$r.value=Sr(e),Wt((e,t)=>Zr(_r(mr(e,Qr.value)),ti(e,t)))}function ti(e,t){return t.page===`test`?Xr(Yr(e)):``}var ni=nt(()=>mr(B.value.search,Qr.value));function ri(e,t=B.value.route){return z({route:t,search:_r(e)})}function ii(e,t=`push`,n=B.value.route){let r=B.value,i=z({route:n,search:``})===z({route:r.route,search:``})?ti(r.search,n):``;Jt({route:n,search:Zr(_r(e),i)},t)}function ai(e,t=`replace`){let{route:n,search:r}=B.value;Jt({route:n,search:Zr(_r(mr(r,Qr.value)),e)},t)}function oi(e){return e.replace(/\\/g,`/`)}function si(e){let t=null;for(let n of e){let e=oi(n).split(`/`).slice(0,-1);if(t===null){t=e;continue}let r=0;for(;r<t.length&&r<e.length&&t[r]===e[r];)r+=1;if(t.length=r,r===0)break}return t&&t.length>0?`${t.join(`/`)}/`:``}function ci(e,t){let n=oi(e);return t!==``&&n.startsWith(t)?n.slice(t.length):n}var li=4;function ui(e){let t=/(?:\.[^./]{1,6}){1,2}$/.exec(e.slice(1))?.[0]??``,n=e.slice(0,e.length-t.length),r=n.length>12?li:0;return[n.slice(0,n.length-r),`${n.slice(n.length-r)}${t}`]}var di=[{name:`blue`,reference:`#466cc8`,light:{text:`#385db7`,bg:`#eaf0fe`,border:`#5981df`},dark:{text:`#9ebdff`,bg:`#18233c`,border:`#577cd3`}},{name:`cyan`,reference:`#0a7da1`,light:{text:`#0a708f`,bg:`#e0f4fd`,border:`#2b8fb4`},dark:{text:`#60cdf5`,bg:`#002837`,border:`#268cb1`}},{name:`teal`,reference:`#04837c`,light:{text:`#09726c`,bg:`#dbf7f4`,border:`#29958e`},dark:{text:`#6ed2c9`,bg:`#002b28`,border:`#25928b`}},{name:`violet`,reference:`#8656b7`,light:{text:`#7747a7`,bg:`#f4ecfe`,border:`#9e6ed2`},dark:{text:`#cfaafc`,bg:`#2a1d37`,border:`#9468c3`}},{name:`magenta`,reference:`#ad4681`,light:{text:`#9d3772`,bg:`#feeaf3`,border:`#cc629d`},dark:{text:`#f79dcc`,bg:`#351928`,border:`#bb598f`}},{name:`orange`,reference:`#ab5803`,light:{text:`#954d09`,bg:`#feece1`,border:`#c6702b`},dark:{text:`#f9a970`,bg:`#361d0a`,border:`#bc671f`}},{name:`brown`,reference:`#745f43`,light:{text:`#3c2d18`,bg:`#f5e9d9`,border:`#60503a`},dark:{text:`#b7a182`,bg:`#302412`,border:`#ae9779`}},{name:`gold`,reference:`#b9a542`,light:{text:`#736308`,bg:`#f5f1da`,border:`#9a861a`},dark:{text:`#d2be5d`,bg:`#2b2403`,border:`#94800e`}}],fi={name:`neutral`,reference:`#6b6b6b`,light:{text:`#636363`,bg:`#f0f0f0`,border:`#868686`},dark:{text:`#bebebe`,bg:`#242424`,border:`#808080`}};di.map(e=>e.name);function pi(e){let t=e.toLowerCase();return[...di,fi].find(e=>e.reference===t)??null}var mi={light:[`#f7f5f0`,`#ffffff`,`#eeeae2`],dark:[`#080808`,`#0d0d0d`,`#161616`]},hi=4.5,gi=/^#[0-9a-fA-F]{6}$/;function _i(e){return gi.test(e)}function vi(e){if(!_i(e))throw TypeError(`not a #rrggbb color: ${e}`);let t=Number.parseInt(e.slice(1),16);return[t>>16&255,t>>8&255,t&255]}function yi([e,t,n]){return`#${[e,t,n].map(e=>Math.round(Math.min(255,Math.max(0,e))).toString(16).padStart(2,`0`)).join(``)}`}function bi(e){let t=e/255;return t<=.04045?t/12.92:((t+.055)/1.055)**2.4}function xi(e){return(e<=.0031308?e*12.92:1.055*e**(1/2.4)-.055)*255}function Si(e){let[t,n,r]=vi(e).map(bi);return .2126*t+.7152*n+.0722*r}function Ci(e,t){let[n,r]=[Si(e),Si(t)].sort((e,t)=>t-e);return(n+.05)/(r+.05)}function wi(e){let[t,n,r]=vi(e).map(bi),i=Math.cbrt(.4122214708*t+.5363325363*n+.0514459929*r),a=Math.cbrt(.2119034982*t+.6806995451*n+.1073969566*r),o=Math.cbrt(.0883024619*t+.2817188376*n+.6299787005*r),s=.2104542553*i+.793617785*a-.0040720468*o,c=1.9779984951*i-2.428592205*a+.4505937099*o,l=.0259040371*i+.7827717662*a-.808675766*o,u=Math.atan2(l,c)*180/Math.PI;return{l:s,c:Math.hypot(c,l),h:u<0?u+360:u}}function Ti({l:e,c:t,h:n}){let r=t*Math.cos(n*Math.PI/180),i=t*Math.sin(n*Math.PI/180),a=(e+.3963377774*r+.2158037573*i)**3,o=(e-.1055613458*r-.0638541728*i)**3,s=(e-.0894841775*r-1.291485548*i)**3;return[4.0767416621*a-3.3077115913*o+.2309699292*s,-1.2684380046*a+2.6097574011*o-.3413193965*s,-.0041960863*a-.7034186147*o+1.707614701*s]}function Ei(e){let t=e.c;for(;;){let n=Ti({...e,c:t});if(n.every(e=>e>=-1e-4&&e<=1.0001)||t<=0)return yi(n.map(e=>xi(Math.min(1,Math.max(0,e)))));t=Math.max(0,t-.005)}}function Di(e,t,n,r){let i=t<n?.01:-.01;for(let a=t;i>0?a<=n:a>=n;a+=i){let t=Ei({...e,l:a});if(r(t))return t}return Ei({...e,l:n})}function Oi(e,t){let n=wi(e),r=n.c<.02?0:n.c,i=mi[t];if(t===`light`){let e=Ei({...n,l:.955,c:Math.min(r,.03)});return{text:Di({...n,c:Math.min(r,.16)},.5,0,t=>Ci(t,e)>=hi),bg:e,border:Di({...n,c:Math.min(r,.18)},.66,0,t=>[e,...i].every(e=>Ci(t,e)>=3))}}let a=Ei({...n,l:.26,c:Math.min(r,.05)});return{text:Di({...n,c:Math.min(r,.12)},.8,1,e=>Ci(e,a)>=hi),bg:a,border:Di({...n,c:Math.min(r,.14)},.6,1,e=>[a,...i].every(t=>Ci(e,t)>=3))}}var ki=new Map;function Ai(e){let t=e&&_i(e)?e.toLowerCase():fi.reference,n=ki.get(t);if(!n){let e=pi(t);n=e?{light:e.light,dark:e.dark}:{light:Oi(t,`light`),dark:Oi(t,`dark`)},ki.set(t,n)}return n}function ji(e){let{light:t,dark:n}=Ai(e);return{"--cat-text-light":t.text,"--cat-bg-light":t.bg,"--cat-border-light":t.border,"--cat-text-dark":n.text,"--cat-bg-dark":n.bg,"--cat-border-dark":n.border}}function Mi(e){return new Map(e.map(e=>[e.name,e.color]))}function H(e){if(e<1e3)return`${Math.round(e)} ms`;if(e<6e4)return`${(e/1e3).toFixed(1)} s`;let t=Math.round(e/1e3);if(t<3600)return`${Math.floor(t/60)} min ${String(t%60).padStart(2,`0`)} s`;let n=Math.round(t/60);return`${Math.floor(n/60)} h ${String(n%60).padStart(2,`0`)} min`}function U(e,t,n=`${t}s`){return`${e} ${e===1?t:n}`}var Ni=`\0`,Pi={project:`p`,folder:`d`,file:`f`,suite:`s`};function Fi(){return{total:0,passed:0,failed:0,flaky:0,skipped:0}}function Ii(e,t){return`t${Ni}${e}${Ni}${t}`}function Li(e){return`p${Ni}${e}`}function Ri(e,t,n,r){let i={kind:e,key:t,labels:[n],children:[],counts:Fi(),line:1/0};return r!==void 0&&(i.path=r),i}function zi(e,t){return e.kind===`folder`==(t.kind===`folder`)?Vi(e).localeCompare(Vi(t)):e.kind===`folder`?-1:1}function Bi(e,t){return e.line===t.line?e.kind===`test`&&t.kind===`test`?e.column-t.column||e.repeatEachIndex-t.repeatEachIndex:e.kind===t.kind?Vi(e).localeCompare(Vi(t)):e.kind===`test`?1:-1:e.line-t.line}function Vi(e){return e.kind===`test`?e.title:e.labels.join(` › `)}function Hi(e){for(let t of e.children){if(t.kind===`test`)e.counts.total+=1,e.counts[t.outcome]+=1;else{Hi(t);for(let n of[`total`,`passed`,`failed`,`flaky`,`skipped`])e.counts[n]+=t.counts[n]}e.line=Math.min(e.line,t.line)}e.kind===`project`||e.kind===`folder`?e.children.sort(zi):e.children.sort(Bi)}function Ui(e){let t=e;for(;;){let e=t.children.length===1?t.children[0]:void 0;if(t.kind===`folder`&&e?.kind===`folder`)t={...e,key:t.key,labels:[`${t.labels.join(`/`)}/${e.labels.join(`/`)}`]};else{if(t.kind===`project`||t.kind===`folder`||e?.kind!==`suite`)break;t={...t,labels:[...t.labels,...e.labels],children:e.children}}}return{...t,children:t.children.map(e=>e.kind===`test`?e:Ui(e))}}function Wi(e,t={}){let n=t.prefix??si(e.tests.map(e=>e.file)),r=new Map;for(let t of e.projects)r.set(t.name,Ri(`project`,Li(t.name),t.name||`(unnamed project)`));let i=new Map;for(let t of e.tests){let e=r.get(t.project);e||(e=Ri(`project`,Li(t.project),t.project||`(unnamed project)`),r.set(t.project,e));let a=ci(t.file,n).split(`/`),o=a.pop()??t.file,s=[...a.map((e,t)=>[`folder`,e,`${n}${a.slice(0,t+1).join(`/`)}`]),[`file`,o,oi(t.file)],...t.suitePath.map(e=>[`suite`,e])];for(let[t,n,r]of s){let a=`${e.key}${Ni}${Pi[t]}${Ni}${n}`,o=i.get(a);o||(o=Ri(t,a,n,r),i.set(a,o),e.children.push(o)),e=o}e.children.push(Gi(t))}let a=[...r.values()].filter(e=>e.children.length>0);for(let e of a)Hi(e);return a.map(Ui)}function Gi(e){return{kind:`test`,key:Ii(e.id,e.repeatEachIndex),testId:e.id,repeatEachIndex:e.repeatEachIndex,title:e.title,outcome:e.outcome,line:e.line,column:e.column}}function Ki(e,t){let n=[],r=(e,i,a)=>{e.forEach((o,s)=>{n.push({node:o,level:i,parentKey:a,position:s+1,siblings:e.length}),o.kind!==`test`&&t.has(o.key)&&r(o.children,i+1,o.key)})};return r(e,1,null),n}function qi(e,t){for(let n of e){if(n.key===t)return[];if(n.kind===`test`)continue;let e=qi(n.children,t);if(e)return[n.key,...e]}return null}function Ji(e){return e.flatMap(e=>e.kind===`test`?[]:[e.key,...Ji(e.children)])}var Yi=/^[\w@%+=:,./-]+$/;function Xi(e){return Yi.test(e)?e:`'${e.replace(/'/g,`'\\''`)}'`}function Zi(e,t){return e<t?-1:+(e>t)}function Qi(e){let t=new Map;for(let n of e){let e=t.get(n.project);e||(e=new Map,t.set(n.project,e)),e.set(`${n.file}:${n.line}`,n)}return new Map([...t].map(([e,t])=>[e,[...t.values()].sort((e,t)=>Zi(e.file,t.file)||e.line-t.line).map(e=>`${e.file}:${e.line}`)]))}function $i(e,t){let n=t.filter(e=>e!==``).map(e=>`--project=${Xi(e)}`);return[`npx playwright test`,...e.map(Xi),...n].join(` `)}function ea(e){let t=new Map;for(let[n,r]of Qi(e)){let e=n===``?`\0unnamed`:r.join(`\0`),i=t.get(e);i?i.projects.push(n):t.set(e,{locations:r,projects:[n]})}return[...t.values()].map(({locations:e,projects:t})=>$i(e,t)).join(` && `)}function ta(e){return e.filter(e=>e.outcome===`failed`)}function na(e,t){return ta(e).filter(e=>e.file===t)}function ra(e,t){let n=na(e,t.file);if(!n.some(e=>e.line!==t.line))return null;let r=[...Qi(n)].map(([e,t])=>({project:e||`(unnamed project)`,count:t.length})),i=e=>e===1?`failed test`:`failed tests`,[a]=r;return r.length===1&&a?{tests:n,label:`${a.count} ${i(a.count)} in this file`}:a&&r.every(({count:e})=>e===a.count)?{tests:n,label:`${a.count} ${i(a.count)} in this file, in ${r.map(({project:e})=>e).join(`, `)}`}:{tests:n,label:`failed tests in this file: ${r.map(({project:e,count:t})=>`${t} in ${e}`).join(`, `)}`}}var ia=`For a POSIX shell (bash, zsh), run from the Playwright root directory: paths are relative to it. A file:line argument targets the line where the test is declared, and reruns every test declared on that line. The command is only valid while the file has not changed since the run.`,aa=0;Array.isArray;function W(e,n,r,i,a,o){n||={};var s,c,l=n;if(`ref`in l)for(c in l={},n)c==`ref`?s=n[c]:l[c]=n[c];var u={type:e,props:l,key:r,ref:s,__k:null,__:null,__b:0,__e:null,__c:null,constructor:void 0,__v:--aa,__i:-1,__u:0,__source:a,__self:o};if(typeof e==`function`&&(s=e.defaultProps))for(c in s)l[c]===void 0&&(l[c]=s[c]);return t.vnode&&t.vnode(u),u}function G({name:e,color:t}){return W(`span`,{class:`category-badge`,style:ji(t),title:`Error category: ${e}`,children:e})}function K({children:e,class:t}){return W(`svg`,{class:`icon ${t??``}`,viewBox:`0 0 16 16`,width:`16`,height:`16`,"aria-hidden":`true`,focusable:`false`,children:e})}var oa={passed:`Passed`,failed:`Failed`,flaky:`Flaky`,skipped:`Skipped`};function q(e){return oa[e]}function J({outcome:e,labelled:t=!1,decorative:n=!1}){let r={passed:W(`path`,{d:`M4.5 8.2l2.3 2.3 4.7-4.9`,fill:`none`,stroke:`currentColor`,"stroke-width":`1.8`,"stroke-linecap":`round`,"stroke-linejoin":`round`}),failed:W(`path`,{d:`M5.5 5.5l5 5m0-5l-5 5`,fill:`none`,stroke:`currentColor`,"stroke-width":`1.8`,"stroke-linecap":`round`}),flaky:W(`path`,{d:`M10.9 5.6A3.6 3.6 0 0 0 4.6 7M5.1 10.4A3.6 3.6 0 0 0 11.4 9M10.9 3.6v2h-2M5.1 12.4v-2h2`,fill:`none`,stroke:`currentColor`,"stroke-width":`1.5`,"stroke-linecap":`round`,"stroke-linejoin":`round`}),skipped:W(`path`,{d:`M5 8h6`,fill:`none`,stroke:`currentColor`,"stroke-width":`1.8`,"stroke-linecap":`round`})}[e];return W(`span`,{class:`outcome-icon outcome-${e}`,title:t||n?void 0:oa[e],"aria-hidden":n?`true`:void 0,children:[W(K,{children:[W(`circle`,{cx:`8`,cy:`8`,r:`7`,fill:`none`,stroke:`currentColor`,"stroke-width":`1.4`}),r]}),!n&&W(`span`,{class:t?`outcome-text`:`visually-hidden`,children:oa[e]})]})}function Y(e){return W(K,{...e,children:W(`path`,{d:`M6 4l4 4-4 4`,fill:`none`,stroke:`currentColor`,"stroke-width":`1.6`,"stroke-linecap":`round`,"stroke-linejoin":`round`})})}function sa(e){return W(K,{...e,children:[W(`rect`,{x:`1.5`,y:`2.5`,width:`13`,height:`11`,rx:`1.5`,fill:`none`,stroke:`currentColor`,"stroke-width":`1.3`}),W(`path`,{d:`M6 2.5v11`,stroke:`currentColor`,"stroke-width":`1.3`})]})}function ca(e){return W(K,{...e,children:[W(`rect`,{x:`1.5`,y:`2.5`,width:`13`,height:`9`,rx:`1.5`,fill:`none`,stroke:`currentColor`,"stroke-width":`1.3`}),W(`path`,{d:`M5.5 14h5M8 11.5V14`,stroke:`currentColor`,"stroke-width":`1.3`,"stroke-linecap":`round`})]})}function la(e){return W(K,{...e,children:[W(`circle`,{cx:`8`,cy:`8`,r:`3`,fill:`none`,stroke:`currentColor`,"stroke-width":`1.3`}),W(`path`,{d:`M8 1v1.6M8 13.4V15M1 8h1.6M13.4 8H15M3 3l1.1 1.1M11.9 11.9L13 13M3 13l1.1-1.1M11.9 4.1L13 3`,stroke:`currentColor`,"stroke-width":`1.3`,"stroke-linecap":`round`})]})}function ua(e){return W(K,{...e,children:W(`path`,{d:`M13.5 9.6A5.8 5.8 0 0 1 6.4 2.5a5.8 5.8 0 1 0 7.1 7.1z`,fill:`none`,stroke:`currentColor`,"stroke-width":`1.3`,"stroke-linejoin":`round`})})}function da(e){return W(K,{...e,children:W(`path`,{d:`M2 2.5h5v5H2zM9 2.5h5v3H9zM9 7.5h5v6H9zM2 9.5h5v4H2z`,fill:`none`,stroke:`currentColor`,"stroke-width":`1.3`,"stroke-linejoin":`round`})})}function fa(e){return W(K,{...e,children:[W(`path`,{d:`M8 1.8l6.5 11.4H1.5z`,fill:`none`,stroke:`currentColor`,"stroke-width":`1.3`,"stroke-linejoin":`round`}),W(`path`,{d:`M8 6.2v3.3`,stroke:`currentColor`,"stroke-width":`1.5`,"stroke-linecap":`round`}),W(`circle`,{cx:`8`,cy:`11.4`,r:`.9`,fill:`currentColor`})]})}function pa(e){return W(K,{...e,children:[W(`circle`,{cx:`8`,cy:`8`,r:`6.3`,fill:`none`,stroke:`currentColor`,"stroke-width":`1.3`}),W(`path`,{d:`M8 4.6v4`,stroke:`currentColor`,"stroke-width":`1.5`,"stroke-linecap":`round`}),W(`circle`,{cx:`8`,cy:`11.1`,r:`.9`,fill:`currentColor`})]})}function ma(e){return W(K,{...e,children:W(`path`,{d:`M1.5 8.5h3l1.5-4 2.5 7 1.8-4.5 1 1.5h3.2`,fill:`none`,stroke:`currentColor`,"stroke-width":`1.3`,"stroke-linecap":`round`,"stroke-linejoin":`round`})})}function ha(e){return W(K,{...e,children:[W(`path`,{d:`M6 4h8M6 8h8M6 12h8`,stroke:`currentColor`,"stroke-width":`1.3`,"stroke-linecap":`round`}),W(`circle`,{cx:`2.8`,cy:`4`,r:`1`,fill:`currentColor`}),W(`circle`,{cx:`2.8`,cy:`8`,r:`1`,fill:`currentColor`}),W(`circle`,{cx:`2.8`,cy:`12`,r:`1`,fill:`currentColor`})]})}function ga(e){return W(K,{...e,children:[W(`circle`,{cx:`7`,cy:`7`,r:`4.5`,fill:`none`,stroke:`currentColor`,"stroke-width":`1.4`}),W(`path`,{d:`M10.4 10.4L14 14`,stroke:`currentColor`,"stroke-width":`1.4`,"stroke-linecap":`round`})]})}function _a(e){return W(K,{...e,children:W(`path`,{d:`M4.5 4.5l7 7m0-7l-7 7`,stroke:`currentColor`,"stroke-width":`1.5`,"stroke-linecap":`round`})})}function va({direction:e,...t}){return W(K,{...t,children:[e!==`desc`&&W(`path`,{d:`M5 6.5L8 3.5l3 3`,fill:`none`,stroke:`currentColor`,"stroke-width":`1.4`,"stroke-linecap":`round`,"stroke-linejoin":`round`}),e!==`asc`&&W(`path`,{d:`M5 9.5l3 3 3-3`,fill:`none`,stroke:`currentColor`,"stroke-width":`1.4`,"stroke-linecap":`round`,"stroke-linejoin":`round`})]})}function ya(e){return W(K,{...e,children:[W(`rect`,{x:`5.5`,y:`5.5`,width:`8`,height:`9`,rx:`1.5`,fill:`none`,stroke:`currentColor`,"stroke-width":`1.3`}),W(`path`,{d:`M10.5 3.5v-.5A1.5 1.5 0 0 0 9 1.5H4A1.5 1.5 0 0 0 2.5 3v7A1.5 1.5 0 0 0 4 11.5h.5`,fill:`none`,stroke:`currentColor`,"stroke-width":`1.3`})]})}function ba(e){return W(K,{...e,children:W(`path`,{d:`M3.5 8.5l3 3 6-6.5`,fill:`none`,stroke:`currentColor`,"stroke-width":`1.6`,"stroke-linecap":`round`,"stroke-linejoin":`round`})})}function xa(e){return W(K,{...e,children:[W(`rect`,{x:`1`,y:`3.5`,width:`14`,height:`9`,rx:`1.5`,fill:`none`,stroke:`currentColor`,"stroke-width":`1.3`}),W(`path`,{d:`M4 6.5h1M7.5 6.5h1M11 6.5h1M4 9.5h8`,stroke:`currentColor`,"stroke-width":`1.3`,"stroke-linecap":`round`})]})}var Sa=2e3;function Ca({label:e,text:t,help:n,children:r}){let[i,a]=k(!1),o=M(void 0),s=Me();return A(()=>()=>clearTimeout(o.current),[]),W(S,{children:[W(`button`,{type:`button`,class:`button copy-button`,title:n,"aria-describedby":n?s:void 0,onClick:async()=>{await wt(e,t())&&(a(!0),clearTimeout(o.current),o.current=setTimeout(()=>a(!1),Sa))},children:[W(i?ba:ya,{}),W(`span`,{children:r}),i&&W(`span`,{class:`copy-done`,children:` · Copied`})]}),n&&W(`span`,{id:s,hidden:!0,children:n})]})}function wa({group:e}){return W(`span`,{class:`group-split`,children:[`failed`,`flaky`].filter(t=>e[t]>0).map(t=>W(`span`,{class:`group-split-part split-${t}`,children:[W(J,{outcome:t,decorative:!0}),e[t],` `,t]},t))})}function Ta({reason:e,class:t}){return W(`span`,{class:`skip-reason ${t}`,title:cn(e),children:[sn(e),e.kind===`notRun`&&W(`span`,{class:`visually-hidden`,children:[`. `,`Playwright skipped this test without a skip annotation, usually because a dependency project or an earlier test of its serial group failed, the failure limit (--max-failures) was reached, or the run was stopped.`]})]})}var Ea=`https://github.com/qartisan/playwright-loupe/blob/main/docs/config.md#dimensions`;function Da(e){return V({page:`test`,id:e.id,repeatEachIndex:e.repeatEachIndex})}function Oa(e,t){let n=ni.value;return ri({...n,facets:{...n.facets,category:t===void 0?[]:[t]}},{page:`group`,signature:e})}function ka(e,t){return ri({...ar,facets:{[e]:[t]}},{page:`tests`})}function Aa(e){return e||`(unnamed project)`}function ja({rate:e}){return W(`span`,{class:`pass-rate`,title:wn,children:[W(`strong`,{children:Tn(e)}),` pass rate`,W(`span`,{class:`visually-hidden`,children:` (skipped tests excluded)`})]})}function X({id:e,title:t,note:n,class:r,children:i}){return W(`section`,{class:`widget ${r??``}`,"aria-labelledby":e,children:[W(`h2`,{id:e,children:t}),n&&W(`p`,{class:`widget-note`,children:n}),i]})}function Ma({report:e,children:t}){let n=xn(e),{stats:r}=e.run,i=Sn(r),a=Cn(r),o=i.map(({outcome:e,count:t})=>`${t} ${q(e).toLowerCase()}`).join(`, `);return W(`section`,{class:`widget widget-verdict`,"aria-labelledby":`w-verdict`,children:[W(`h2`,{id:`w-verdict`,class:`visually-hidden`,children:`Verdict`}),W(`div`,{class:`verdict`,children:[W(`p`,{class:`verdict-outcome outcome-${n}`,"data-verdict":n,children:[W(J,{outcome:n,decorative:!0}),W(`span`,{children:q(n)})]}),W(`p`,{class:`verdict-meta`,children:[a!==null&&W(S,{children:[W(ja,{rate:a}),` ·`,` `]}),U(r.total,`test`),` in `,W(`strong`,{children:H(e.run.durationMs)})]})]}),t,i.length>0&&W(S,{children:[W(`div`,{class:`outcome-bar`,role:`img`,"aria-label":o,children:i.map(({outcome:e,count:t,share:n})=>W(`span`,{class:`outcome-bar-part bar-${e}`,style:{flexGrow:n},title:`${t} ${q(e).toLowerCase()}`},e))}),W(`ul`,{class:`outcome-legend`,"aria-hidden":`true`,children:i.map(({outcome:e,count:t})=>W(`li`,{children:[W(J,{outcome:e,decorative:!0}),t,` `,q(e).toLowerCase()]},e))})]})]})}function Na({tests:e,action:t=`Copy rerun command`}){let n=ta(e);return n.length===0?null:W(`div`,{class:`rerun-failed`,children:[W(Ca,{label:`Rerun command`,help:ia,text:()=>ea(n),children:[t,` · `,U(n.length,`failed test`)]}),n.length>100&&W(`p`,{class:`rerun-note`,children:[`The command lists `,U(n.length,`test`),`: it is long, and some terminals may cut it.`]})]})}function Pa({errors:e}){return W(X,{id:`w-run-errors`,class:`widget-run-errors`,title:W(S,{children:[W(fa,{}),U(e.length,`error`),` outside tests`]}),note:`A file that failed to load, a global setup or teardown, a worker teardown: Playwright may have run fewer tests.`,children:[W(`ul`,{class:`widget-list`,children:e.slice(0,3).map((e,t)=>W(`li`,{children:W(`code`,{children:_n(e.message)})},t))}),W(`p`,{class:`widget-more`,children:W(`a`,{href:V({page:`errors`}),children:`See the errors`})})]})}function Fa({error:e,color:t}){let n=e.location?`${e.location.file}:${e.location.line}:${e.location.column}`:null;return W(`li`,{class:`run-error`,children:[W(`div`,{class:`run-error-meta`,children:[e.category&&W(G,{name:e.category,color:t}),e.project!==null&&W(`span`,{children:[`Project `,e.project||`(unnamed)`]}),n&&W(`code`,{children:n})]}),W(`pre`,{class:`message error-message`,children:e.message}),e.snippet&&W(`pre`,{class:`code-snippet`,children:e.snippet}),e.stack&&e.stack!==e.message&&W(`details`,{children:[W(`summary`,{children:`Stack trace`}),W(`pre`,{class:`stack`,children:e.stack})]})]})}function Ia({group:e,colors:t,inCategory:n}){let{headline:r,firstTest:i,others:a}=vn(e),o=yn(e);return W(`a`,{class:`group-row`,href:Oa(e.signature,n),children:[W(`span`,{class:`group-row-head`,children:[n===void 0&&W(G,{name:e.category,color:t.get(e.category)}),W(`span`,{class:`group-row-counts`,children:[W(wa,{group:e}),o&&W(`span`,{class:`group-attempts`,children:o})]})]}),i&&W(`span`,{class:`group-test`,children:[i.title,a>0&&W(`span`,{class:`muted`,children:[` +`,U(a,`other`)]})]}),W(`code`,{class:`group-message`,children:r})]})}function La({groups:e,colors:t,inCategory:n}){return W(`ol`,{class:`widget-list group-list`,children:e.map(e=>W(`li`,{children:W(Ia,{group:e,colors:t,inCategory:n})},e.signature))})}function Ra(e,t){let n=t.map(e=>e.name),r=e=>e===`Uncategorized`?1/0:n.includes(e)?n.indexOf(e):n.length;return[...e].sort((e,t)=>r(e)-r(t)||(e<t?-1:+(e>t)))}function za({points:e,colors:t,categories:n}){return W(X,{id:`w-failure-points`,class:`widget-failure-points`,title:`Common failure points`,note:`Functions from your code that appear in the stack of several failures, in different files and error groups. A lead, not a diagnosis.`,children:W(`ol`,{class:`widget-list point-list`,children:e.map(e=>W(`li`,{"data-point":e.key,children:W(`a`,{class:`point-row`,href:ka(`point`,e.key),children:[W(`code`,{class:`point-fn`,children:e.fn}),W(`span`,{class:`point-where`,children:[W(`code`,{children:e.file}),` · `,e.lines.length===1?`line`:`lines`,` `,e.lines.join(`, `)]}),e.via.length>0&&W(`span`,{class:`point-via`,children:[`via`,` `,e.via.map((e,t)=>W(`span`,{children:[t>0&&`, `,W(`code`,{title:e.key,children:e.fn})]},e.key))]}),W(`span`,{class:`point-counts`,children:[W(`span`,{class:`group-count`,children:[U(e.tests,`test`),` · `,U(e.files,`file`),` · `,U(e.signatures.length,`error group`)]}),e.flaky>0&&W(wa,{group:e})]}),W(`span`,{class:`point-categories`,children:Ra(e.categories,n).map(e=>W(G,{name:e,color:t.get(e)},e))})]})},e.key))})})}function Ba({groups:e,colors:t,inCategory:n}){return e.length===0?null:W(`details`,{class:`after-timeout`,children:[W(`summary`,{children:[W(Y,{class:`chevron`}),tn(e.length)]}),W(`p`,{class:`widget-note`,children:`Raised by the action still running when the test timed out: never the first error of an attempt.`}),W(La,{groups:e,colors:t,inCategory:n})]})}function Va({categories:e,colors:t}){let n=Math.max(...e.map(e=>e.tests),1);return W(`ul`,{class:`widget-list category-bars`,children:e.map(e=>W(`li`,{children:W(`a`,{class:`category-bar-row`,href:ka(`category`,e.name),children:[W(G,{name:e.name,color:t.get(e.name)}),W(`span`,{class:`category-bar-track`,"aria-hidden":`true`,children:W(`span`,{class:`category-bar`,style:{...ji(t.get(e.name)),width:`${e.tests/n*100}%`}})}),W(`span`,{class:`group-count`,children:U(e.tests,`test`)})]})},e.name))})}function Ha({categories:e,colors:t,open:n}){return W(`ul`,{class:`widget-list category-list`,children:e.map(e=>{let{visible:r,folded:i}=fn(e.groups);return W(`li`,{"data-category":e.name,children:W(`details`,{open:e.name===n,children:[W(`summary`,{children:[W(Y,{class:`chevron`}),W(G,{name:e.name,color:t.get(e.name)}),W(`span`,{class:`muted`,children:en(r.length,i.length)}),W(`span`,{class:`group-count`,children:U(e.tests,`test`)})]}),r.length>0&&W(La,{groups:r,colors:t,inCategory:e.name}),W(Ba,{groups:i,colors:t,inCategory:e.name})]})},e.name)})})}function Ua({projects:e}){return W(`ul`,{class:`project-cards`,children:e.map(({project:e,passRate:t,durationMs:n})=>W(`li`,{children:W(`button`,{type:`button`,class:`project-card`,"aria-controls":`sidebar`,title:`Show this project in the sidebar`,onClick:()=>Mt(Li(e.name)),children:[W(`span`,{class:`project-name`,children:Aa(e.name)}),W(`span`,{class:`counts`,children:[`passed`,`failed`,`flaky`,`skipped`].filter(t=>e.stats[t]>0).map(t=>W(`span`,{class:`count`,children:[W(J,{outcome:t,decorative:!0}),e.stats[t],` `,W(`span`,{class:`visually-hidden`,children:q(t).toLowerCase()})]},t))}),W(`span`,{class:`project-meta`,children:[U(e.stats.total,`test`),t!==null&&W(S,{children:[` · `,W(ja,{rate:t})]}),` `,`· `,H(n),` test time`]})]})},e.name))})}function Wa({value:e}){return W(`td`,{class:e===0?`zero`:void 0,children:e})}var Ga=[`passed`,`failed`,`flaky`,`skipped`];function Ka(e){let t=Ga.filter(t=>e[t]>0).map(t=>`${e[t]} ${t}`);return t.length>0?t.join(`, `):`no tests`}function qa(e){return[...e.unknown?[`unknown value`]:[],...e.caseVariants.length>0?[`likely duplicate of ${e.caseVariants.join(`, `)}`]:[]]}function Ja({row:e}){return W(S,{children:[e.unknown&&W(`span`,{class:`hygiene-flag flag-unknown`,title:`Not among the values declared in the config`,children:[W(fa,{}),`unknown value`]}),e.caseVariants.length>0&&W(`span`,{class:`hygiene-flag flag-case`,title:`Differs from another value only by case. Tags are case-sensitive, so they are counted apart.`,children:[W(fa,{}),`likely duplicate of `,e.caseVariants.join(`, `)]})]})}function Ya({name:e,values:t}){return W(`ul`,{class:`dimension-bars`,children:t.map(t=>W(`li`,{class:`dimension-bar-row`,"data-value":t.value,children:[W(`span`,{class:`dimension-value-cell`,children:[W(Xa,{name:e,row:t}),W(Ja,{row:t})]}),W(`span`,{class:`outcome-bar dimension-bar`,role:`img`,"aria-label":`${t.value}: ${Ka(t)}`,title:Ka(t),children:Ga.filter(e=>t[e]>0).map(e=>W(`span`,{class:`outcome-bar-part bar-${e}`,style:{flexGrow:t[e]}},e))}),W(`span`,{class:`dimension-bar-counts`,"aria-hidden":`true`,children:[`failed`,`flaky`].filter(e=>t[e]>0).map(e=>W(`span`,{class:`count`,children:[W(J,{outcome:e,decorative:!0}),t[e]]},e))}),W(`span`,{class:`dimension-total`,"aria-hidden":`true`,children:t.total})]},t.value))})}function Xa({name:e,row:t}){return t.total===0?W(`span`,{class:`dimension-value`,children:t.value}):W(`a`,{class:`dimension-value`,href:ka(cr(e),t.value),title:`Show the ${U(t.total,`test`)} with ${e} ${t.value}`,children:t.value})}var Za={failed:`with failures`,flaky:`flaky`,passed:`all passed`,skipped:`skipped only`,none:`no tests`},Z=L(null);function Qa(e,t){let n=Z.value;n?.key===e&&n.source===t&&(Z.value=null)}function $a(e){e.key===`Escape`&&Z.value&&(Z.value=null)}function eo({name:e,values:t}){return A(()=>(document.addEventListener(`keydown`,$a),()=>{document.removeEventListener(`keydown`,$a),Z.value?.key.startsWith(`${e}\u0000`)&&(Z.value=null)}),[e]),W(S,{children:[W(`p`,{class:`tile-summary`,children:Mn(t)}),W(`ul`,{class:`dimension-tiles`,"aria-label":`${e} values`,children:jn(t).map(t=>{let n=kn(t),r=qa(t),i=[Ka(t),...r].join(`; `),a=`${e}\u0000${t.value}`,o=Z.value?.key===a,s={class:`dimension-tile tile-${n}${o?` tooltip-open`:``}`,"data-value":t.value,"data-status":n,onPointerEnter:()=>Z.value={key:a,source:`hover`},onPointerLeave:()=>Qa(a,`hover`),onFocus:()=>Z.value={key:a,source:`focus`},onBlur:()=>Qa(a,`focus`)},c=W(S,{children:[n===`none`?W(`span`,{class:`tile-icon-none`,"aria-hidden":`true`}):W(J,{outcome:n,decorative:!0}),W(`span`,{class:`tile-value`,children:t.value}),r.length>0&&W(fa,{class:`tile-flag`}),W(`span`,{class:`visually-hidden`,children:[`: `,Za[n],`, `,i]}),W(`span`,{class:`tile-details`,"aria-hidden":`true`,hidden:!o,children:[W(`strong`,{children:t.value}),W(`span`,{children:Za[n]}),W(`span`,{children:Ka(t)}),r.map(e=>W(`span`,{class:`tile-note`,children:e},e))]})]});return W(`li`,{children:t.total>0?W(`a`,{...s,href:ka(cr(e),t.value),children:c}):W(`span`,{...s,tabIndex:0,children:c})},t.value)})})]})}function to({distribution:e}){let{definition:t,values:n,without:r}=e,i=`w-dimension-${t.name}`,a=On(e);return W(`section`,{class:`widget widget-dimension`,"aria-labelledby":i,"data-dimension":t.name,"data-representation":a,children:[W(`h2`,{id:i,children:t.name}),W(`p`,{class:`widget-note`,children:[`From `,t.source===`tag`?`tags @${t.key}:…`:`annotations of type "${t.key}"`,r>0&&` · ${U(r,`test`)} without a value`]}),W(a===`bars`?Ya:eo,{name:t.name,values:n}),W(`details`,{class:`dimension-table`,children:[W(`summary`,{children:[W(Y,{class:`chevron`}),`Table`]}),W(`table`,{class:`data-table`,children:[W(`thead`,{children:W(`tr`,{children:[W(`th`,{scope:`col`,children:`Value`}),Ga.map(e=>W(`th`,{scope:`col`,children:W(J,{outcome:e,labelled:!0})},e)),W(`th`,{scope:`col`,children:`Total`})]})}),W(`tbody`,{children:n.map(e=>W(`tr`,{children:[W(`th`,{scope:`row`,children:[W(Xa,{name:t.name,row:e}),W(Ja,{row:e})]}),Ga.map(t=>W(Wa,{value:e[t]},t)),W(Wa,{value:e.total})]},e.value))})]})]}),t.values===null&&W(`p`,{class:`widget-hint`,children:[`No expected values are configured, so typos cannot be flagged as unknown. Declare them with `,W(`code`,{children:`values`}),` in`,` `,W(`a`,{href:Ea,target:`_blank`,rel:`noopener noreferrer`,children:`the dimension definition`}),`.`]})]})}function no({test:e,children:t,aside:n}){return W(`div`,{class:`test-line`,children:[W(J,{outcome:e.outcome}),W(`span`,{class:`test-text`,children:[W(`a`,{href:Da(e),children:e.title}),W(`span`,{class:`test-where`,children:[Aa(e.project),` · `,e.file,e.repeatEachIndex>0&&` · repeat ${e.repeatEachIndex}`]}),t]}),n]})}function ro(e){return`${e.id}/${e.repeatEachIndex}`}function io({tests:e}){return W(X,{id:`w-slowest`,class:`widget-slowest`,title:`Slowest tests`,note:`Total duration, retries included.`,children:W(`ol`,{class:`widget-list`,children:e.map(e=>W(`li`,{children:W(no,{test:e,aside:W(`span`,{class:`duration`,children:H(e.durationMs)}),children:e.attempts.length>1&&W(`span`,{class:`test-where`,children:U(e.attempts.length,`attempt`)})})},ro(e)))})})}function ao({tests:e}){return W(X,{id:`w-skipped`,class:`widget-skipped`,title:`Skipped tests`,children:W(`ul`,{class:`widget-list`,children:e.map(({test:e,reason:t})=>W(`li`,{children:W(no,{test:e,children:W(Ta,{reason:t,class:`test-where`})})},ro(e)))})})}function oo({tests:e,colors:t}){return W(X,{id:`w-flaky`,class:`widget-flaky`,title:`Flaky tests`,note:`Failed, then passed on a retry: the error of the failing attempt.`,children:W(`ul`,{class:`widget-list`,children:e.map(({test:e,error:n})=>W(`li`,{children:W(no,{test:e,children:n&&W(`span`,{class:`flaky-error`,children:[n.category&&W(G,{name:n.category,color:t.get(n.category)}),W(`code`,{children:_n(n.message)})]})})},ro(e)))})})}function so({report:e,groups:t,category:n}){let r=M(null);A(()=>{if(n===void 0)return;let e=[...r.current?.querySelectorAll(`[data-category]`)??[]].find(e=>e.dataset.category===n);e?.scrollIntoView({block:`start`}),e?.querySelector(`summary`)?.focus({preventScroll:!0})},[n]);let i=N(()=>dn(t),[t]),{visible:a,folded:o}=N(()=>fn(i),[i]),s=N(()=>bn(e,i),[e,i]),c=N(()=>Mi(e.categories),[e]),{errors:l}=e.run;return W(`div`,{class:`page view view-errors`,ref:r,children:[W(`h1`,{children:`Errors`}),l.length===0&&t.length===0&&W(`p`,{class:`muted`,children:`No errors in this run.`}),l.length>0&&W(X,{id:`w-run-errors`,class:`widget-run-error-list`,title:U(l.length,`run error`),note:`Reported outside any test: a file that failed to load, a global setup or teardown, a worker teardown. Playwright may have run fewer tests because of them.`,children:W(`ol`,{class:`run-errors`,children:l.map((e,t)=>W(Fa,{error:e,color:e.category?c.get(e.category):void 0},t))})}),i.length>0&&W(X,{id:`w-groups`,class:`widget-groups`,title:U(a.length,`error group`),note:`Errors grouped by normalized signature: most failed tests first, then most flaky tests.${o.length>0?` ${en(a.length,o.length)}.`:``}`,children:[a.length>0&&W(La,{groups:a,colors:c}),W(Ba,{groups:o,colors:c})]}),s.length>0&&W(X,{id:`w-categories`,class:`widget-categories`,title:`Error categories`,note:`Failing tests per category; flaky tests count, and a test can be in several categories.`,children:W(Ha,{categories:s,colors:c,open:n},n)})]})}function co({label:e,position:t,total:n,outside:r,previous:i,next:a,previousLabel:o,nextLabel:s,keys:c}){return W(`nav`,{class:`pager`,"aria-label":e,children:[W(`button`,{type:`button`,class:`button pager-button`,disabled:!i,"aria-keyshortcuts":c[0],onClick:i??void 0,children:[W(Y,{class:`chevron-back`}),o]}),W(`span`,{class:`pager-position`,children:t===null?r:`${t} of ${n}`}),W(`button`,{type:`button`,class:`button pager-button`,disabled:!a,"aria-keyshortcuts":c[1],onClick:a??void 0,children:[s,W(Y,{})]})]})}function lo(e,t){let n=e.indexOf(t);return n===-1?{position:null,total:e.length,previous:null,next:null}:{position:n+1,total:e.length,previous:e[n-1]??null,next:e[n+1]??null}}function uo(e,t=[]){let n=dn(e);return t.length===0?n:n.filter(e=>t.includes(e.category))}function fo(e,t,n){let r=n.length>0&&n.includes(t.category);return{...lo(uo(e,r?n:[]),t),restricted:r}}var po=[{keys:[`j`,`k`],action:`Next / previous test`,where:`Test detail`},{keys:[`[`,`]`],action:`Previous / next attempt`,where:`Test detail`},{keys:[`n`,`p`],action:`Next / previous error group`,where:`Error group page`},{keys:[`←`,`→`],action:`Previous / next screenshot`,where:`Screenshot viewer`},{keys:[`/`],action:`Focus the search`,where:`Everywhere`},{keys:[`Escape`],action:`Clear the search, close a dialog`,where:`Everywhere`},{keys:[`?`],action:`Show keyboard shortcuts`,where:`Everywhere`}];function mo(e){return e instanceof HTMLElement?e.isContentEditable||e instanceof HTMLTextAreaElement||e instanceof HTMLSelectElement?!0:e instanceof HTMLInputElement&&![`checkbox`,`radio`,`button`,`submit`,`reset`,`range`,`color`,`file`].includes(e.type):!1}function ho(e){return e.defaultPrevented||e.ctrlKey||e.altKey||e.metaKey||e.isComposing||mo(e.target)?!1:document.querySelector(`dialog[open]`)===null}function go(e){let t=M(e);t.current=e,j(()=>{let e=e=>{if(!ho(e))return;let n=t.current[e.key];n&&(e.preventDefault(),n())};return document.addEventListener(`keydown`,e),()=>document.removeEventListener(`keydown`,e)},[])}function _o({message:e=`This page does not exist in this report.`}){return W(`div`,{class:`page`,children:[W(`h1`,{children:`Not found`}),W(`p`,{children:e}),W(`p`,{children:W(`a`,{href:V({page:`dashboard`}),children:`Back to the dashboard`})})]})}function vo(e){return e===0?`first run`:`retry ${e}`}function yo({report:e,groups:t,group:n}){let r=ni.value.facets.category??[],i=n?fo(t,n,r):null,a=e=>e?()=>qt({page:`group`,signature:e.signature}):null;if(go({n:a(i?.next),p:a(i?.previous)}),!n||!i)return W(_o,{message:`No error group with this signature in this report.`});let o=Mi(e.categories).get(n.category);return W(`div`,{class:`page group-page`,children:[W(co,{label:i.restricted?`Error groups in ${r.join(`, `)}`:`Error groups`,position:i.position,total:i.total,outside:``,previous:a(i.previous),next:a(i.next),previousLabel:`Previous group`,nextLabel:`Next group`,keys:[`p`,`n`]}),W(`p`,{class:`breadcrumb`,children:i.restricted?`Error group · ${r.join(`, `)}`:`Error group`}),W(`h1`,{children:[U(n.tests.length,`test`),` failing with this error`]}),n.afterTimeout&&W(`p`,{class:`group-note`,children:`Only seen after a test timeout: raised by the action still running when the test timed out, never as the first error of an attempt.`}),W(`dl`,{class:`group-meta`,children:[W(`div`,{children:[W(`dt`,{children:`Category`}),W(`dd`,{children:W(G,{name:n.category,color:o})})]}),W(`div`,{children:[W(`dt`,{children:`Tests`}),W(`dd`,{children:W(wa,{group:n})})]}),W(`div`,{children:[W(`dt`,{children:`Signature`}),W(`dd`,{children:W(`code`,{children:n.signature})})]})]}),W(`h2`,{children:`Sample message`}),W(`pre`,{class:`message group-sample`,children:n.message}),W(`h2`,{children:`Affected tests`}),W(`table`,{class:`affected-tests`,children:[W(`thead`,{children:W(`tr`,{children:[W(`th`,{scope:`col`,children:`Test`}),W(`th`,{scope:`col`,children:`Project`}),W(`th`,{scope:`col`,children:`File`}),W(`th`,{scope:`col`,children:`Error in`})]})}),W(`tbody`,{children:n.tests.map(({test:e,attempts:t})=>W(`tr`,{children:[W(`td`,{children:W(`span`,{class:`test-cell`,children:[W(J,{outcome:e.outcome}),W(`a`,{href:V({page:`test`,id:e.id,repeatEachIndex:e.repeatEachIndex}),children:[...e.suitePath,e.title].join(` › `)}),e.repeatEachIndex>0&&W(`span`,{class:`row-note`,children:[`repeat `,e.repeatEachIndex]})]})}),W(`td`,{children:e.project||`(unnamed project)`}),W(`td`,{children:W(`code`,{children:[e.file,`:`,e.line]})}),W(`td`,{children:[t.map(vo).join(`, `),W(`span`,{class:`muted`,children:[` of `,U(e.attempts.length,`attempt`)]})]})]},`${e.id}/${e.repeatEachIndex}`))})]})]})}function bo({report:e}){let t=N(()=>({dimensions:Dn(e).filter(e=>e.values.length>0),slowest:Fn(e),skipped:In(e),flaky:Pn(e)}),[e]),n=N(()=>Mi(e.categories),[e]),r=t.dimensions.length+t.slowest.length+t.skipped.length+t.flaky.length===0;return W(`div`,{class:`page view view-health`,children:[W(`h1`,{children:`Suite health`}),r&&W(`p`,{class:`muted`,children:`No dimension, slow, skipped or flaky test to show for this run.`}),t.dimensions.length>0&&W(`div`,{class:`widget-grid dimension-grid`,children:t.dimensions.map(e=>W(to,{distribution:e},e.definition.name))}),(t.slowest.length>0||t.skipped.length>0||t.flaky.length>0)&&W(`div`,{class:`widget-grid`,children:[t.slowest.length>0&&W(io,{tests:t.slowest}),t.flaky.length>0&&W(oo,{tests:t.flaky,colors:n}),t.skipped.length>0&&W(ao,{tests:t.skipped})]})]})}var xo={env:`LOUPE_RUN_SCOPE=partial`,"file-filter":`file filter`,grep:`grep filter`,"project-filter":`project filter`,"last-failed":`--last-failed`,"only-changed":`--only-changed`,"test-list":`test list`,only:`test.only`,shard:`single shard`,list:`--list (no test ran)`};function So(e){return xo[e]??e}var Co={"github-actions":`GitHub Actions`,gitlab:`GitLab CI`,"azure-pipelines":`Azure Pipelines`,circleci:`CircleCI`,jenkins:`Jenkins`,bitbucket:`Bitbucket Pipelines`,buildkite:`Buildkite`,travis:`Travis CI`};function wo(e){return typeof e==`string`&&e.trim()!==``?e.trim():null}function To(e,t){return e===`partial`?t.length>0?`Partial run: ${t.map(So).join(`, `)}`:`Partial run`:`Full run`}function Eo(e,t){if(!e)return`No`;let n=wo(t);return n===null?`Yes`:Co[n]??n}function Do(e){return e?`${e.current} of ${e.total}`:null}function Oo(e){let{run:t,generator:n}=e,r=wo(t.git.commit);return[{title:`Run`,rows:[{label:`Scope`,value:To(t.scope,t.scopeReasons)},{label:`CI`,value:Eo(t.environment.ci,t.environment.ciProvider)},Number.isFinite(t.workers)?{label:`Workers`,value:String(t.workers)}:null,ko(`Shard`,Do(t.shard))]},{title:`Code`,rows:[r===null?null:{label:`Commit`,value:r.slice(0,7),full:r},ko(`Branch`,t.git.branch),ko(`Repository`,t.git.remote)]},{title:`Environment`,rows:[ko(`Playwright`,t.playwrightVersion),ko(`Loupe`,n.version),ko(`Node`,t.environment.nodeVersion),ko(`OS`,t.environment.os)]}].map(({title:e,rows:t})=>({title:e,rows:t.filter(e=>e!==null)})).filter(e=>e.rows.length>0)}function ko(e,t){let n=wo(t);return n===null?null:{label:e,value:n}}function Ao({report:e}){return W(X,{id:`w-run-details`,class:`widget-run-details`,title:`Run details`,children:W(`div`,{class:`run-details`,children:Oo(e).map(({title:e,rows:t})=>W(`div`,{class:`run-details-group`,children:[W(`h3`,{id:`run-details-${e.toLowerCase()}`,children:e}),W(`dl`,{"aria-labelledby":`run-details-${e.toLowerCase()}`,children:t.map(({label:e,value:t,full:n})=>W(`div`,{children:[W(`dt`,{children:e}),W(`dd`,{children:n===void 0?t:W(S,{children:[W(`code`,{title:n,children:t}),W(Ca,{label:`Commit hash`,help:n,text:()=>n,children:[`Copy`,W(`span`,{class:`visually-hidden`,children:` commit hash`})]})]})})]},e))})]},e))})})}function jo({report:e,groups:t,matched:n}){let r=N(()=>({categories:bn(e,t),projects:En(e),points:tr(e).points}),[e,t]),i=N(()=>Mi(e.categories),[e]),{visible:a,folded:o}=fn(t);return W(`div`,{class:`page view view-overview`,children:[W(`h1`,{children:`Overview`}),W(Ma,{report:e,children:W(Na,{tests:n,action:`Rerun failed tests`})}),e.run.errors.length>0&&W(Pa,{errors:e.run.errors}),r.points.length>0&&W(za,{points:r.points,colors:i,categories:e.categories}),r.categories.length>0&&W(X,{id:`w-categories`,class:`widget-categories`,title:`Error categories`,note:W(S,{children:[`Failing tests per category. `,W(`a`,{href:V({page:`errors`}),children:[`All `,U(a.length,`error group`)]}),o.length>0&&` · ${$t(o.length)}`]}),children:W(Va,{categories:r.categories,colors:i})}),r.projects.length>0&&W(X,{id:`w-projects`,class:`widget-projects`,title:`Projects`,children:W(Ua,{projects:r.projects})}),W(Ao,{report:e})]})}var Mo=[`diff`,`side`,`slider`,`overlay`],No={diff:`Diff`,side:`Side by side`,slider:`Slider`,overlay:`Overlay`};function Po(e){let t=new Map;for(let n of e){if(n.kind!==`screenshot`||!n.comparison)continue;let{group:e,role:r}=n.comparison,i=t.get(e);i||t.set(e,i={group:e,images:{}}),!i.images[r]&&(i.images[r]=n)}let n=[...t.values()].filter(e=>Object.keys(e.images).length>1),r=new Set(n.flatMap(e=>Object.values(e.images))),i={comparisons:n,screenshots:[],videos:[],traces:[],files:[]};for(let t of e)r.has(t)||(t.kind===`screenshot`?i.screenshots.push(t):t.kind===`video`?i.videos.push(t):t.kind===`trace`?i.traces.push(t):i.files.push(t));return i}function Fo(e){return[...e.comparisons.map(e=>({type:`comparison`,set:e})),...e.screenshots.map(e=>({type:`image`,attachment:e}))]}function Io(e){let{expected:t,actual:n,diff:r}=e.images;return Mo.filter(e=>e===`diff`?r!==void 0:t!==void 0&&n!==void 0)}function Lo(e,t){return t!==null&&e.includes(t)?t:e.includes(`diff`)?`diff`:e[0]??`side`}function Ro(e,t){let n;try{n=new URL(Q(e),t)}catch{return null}if(n.protocol!==`file:`||n.host!==``)return null;let r;try{r=decodeURIComponent(n.pathname)}catch{return null}return/^\/[A-Za-z]:(?:\/|$)/.test(r)?r.slice(1):r}function zo(e,t){return`npx playwright show-trace ${Xi(Ro(e,t)??e)}`}function Bo(e,t){let n=e.trim(),r=n===``?``:`Requires Playwright ${n} or later. `;return t?`${r}Run it from your project root, in a POSIX shell (bash, zsh), so it uses the project's own Playwright.`:`${r}Run it from the report folder (the one containing index.html), in a POSIX shell (bash, zsh); it uses the project's own Playwright.`}function Q(e){return e.split(`/`).map(encodeURIComponent).join(`/`)}var Vo=L(null),Ho={expected:`Expected`,actual:`Actual`,diff:`Diff`};function Uo(e){let[t,n]=k({}),r=Object.entries(e.images);return A(()=>{let e=!0,t=(t,r)=>{e&&n(e=>({...e,[t]:r}))};for(let[e,n]of r){if(!n.path){t(e,null);continue}let r=new Image;r.onload=()=>t(e,[r.naturalWidth,r.naturalHeight]),r.onerror=()=>t(e,null),r.src=Q(n.path)}return()=>{e=!1}},[r.map(([e,t])=>`${e}:${t.path}`).join(`
12
+ `)]),t}function Wo(e){return e===void 0?`…`:e===null?`not found`:`${e[0]} × ${e[1]}`}function Go({set:e,sizes:t,mode:n,onImageClick:r}){let[i,a]=k(50),[o,s]=k(50),c=Me(),{expected:l,actual:u}=e.images,[d,f]=[t.expected,t.actual];if(d===null)return W(Ts,{attachment:l});if(f===null)return W(Ts,{attachment:u});if(!d||!f)return W(`div`,{class:`cmp-loading`});let p=Math.max(d[0],f[0]),m=Math.max(d[1],f[1]),h=(t,n,i)=>W(`img`,{class:`cmp-layer`,src:Q(t.path??``),alt:`${Ho[i]} (${e.group})`,style:{width:`${n[0]/p*100}%`},onClick:r});return W(S,{children:[W(`div`,{class:`cmp-stack`,style:{"--w":p,"--h":m},children:[h(l,d,`expected`),W(`div`,{class:`cmp-top`,style:n===`slider`?{clipPath:`inset(0 0 0 ${i}%)`}:{opacity:o/100},children:h(u,f,`actual`)}),n===`slider`&&W(S,{children:[W(`input`,{type:`range`,class:`cmp-range`,min:0,max:100,value:i,"aria-label":`Divider position`,"aria-describedby":c,"aria-valuetext":`${i}%`,onInput:e=>a(Number(e.currentTarget.value))}),W(`span`,{class:`cmp-divider`,style:{left:`${i}%`}})]})]}),n===`slider`&&W(`p`,{class:`cmp-hint`,id:c,children:`Drag the divider, or use the arrow keys: expected on the left, actual on the right.`}),n===`overlay`&&W(`label`,{class:`cmp-opacity`,children:[`Actual opacity`,W(`input`,{type:`range`,min:0,max:100,value:o,"aria-valuetext":`${o}%`,onInput:e=>s(Number(e.currentTarget.value))}),W(`output`,{children:[o,`%`]})]})]})}function Ko({set:e,onImageClick:t}){let n=Io(e),r=Lo(n,Vo.value),i=Uo(e),{expected:a,actual:o,diff:s}=e.images,c=n=>{let r=e.images[n];return r&&W(Es,{attachment:r,alt:`${Ho[n]} (${e.group})`,class:`cmp-image`,onClick:t},r.path)},l=i.expected&&i.actual?[i.expected,i.actual]:null,u=l&&(l[0][0]!==l[1][0]||l[0][1]!==l[1][1]);return W(`div`,{class:`comparison`,children:[W(`div`,{class:`cmp-modes`,role:`group`,"aria-label":`Comparison mode`,children:n.map(e=>W(`button`,{type:`button`,class:`button toggle-button`,"aria-pressed":e===r,onClick:()=>Vo.value=e,children:No[e]},e))}),r===`diff`&&c(`diff`),r===`side`&&W(`div`,{class:`cmp-side${l?` cmp-scaled`:``}`,style:l?{"--w":l[0][0]+l[1][0],"--h":Math.max(l[0][1],l[1][1])}:void 0,children:[`expected`,`actual`].map((e,t)=>W(`figure`,{style:l?{flexGrow:l[t][0]}:void 0,children:[W(`figcaption`,{children:Ho[e]}),c(e)]},e))}),(r===`slider`||r===`overlay`)&&W(Go,{set:e,sizes:i,mode:r,onImageClick:t}),W(`p`,{class:`cmp-sizes`,children:[[[`expected`,a],[`actual`,o],[`diff`,s]].map(([e,t])=>t&&W(`span`,{children:[t.path?W(`a`,{href:Q(t.path),target:`_blank`,rel:`noopener`,children:Ho[e]}):Ho[e],` `,Wo(i[e])]},e)),u&&W(`strong`,{class:`cmp-differ`,children:`Expected and actual sizes differ`})]})]})}function qo({set:e,open:t}){return W(`article`,{class:`comparison-card`,"aria-label":`Screenshot comparison ${e.group}`,children:[W(`div`,{class:`comparison-head`,children:[W(`h4`,{children:e.group}),W(`button`,{type:`button`,class:`button`,onClick:t,children:`Open in viewer`})]}),W(Ko,{set:e})]})}function Jo({open:e,onClose:t,title:n,class:r,actions:i,children:a}){let o=M(null),s=M(null),c=Me();return j(()=>{let t=o.current;t&&(e&&!t.open?(s.current=document.activeElement instanceof HTMLElement?document.activeElement:null,t.showModal()):!e&&t.open&&t.close())}),W(`dialog`,{ref:o,class:`dialog ${r??``}`,"aria-labelledby":c,onClose:()=>{if(o.current?.open)return;t();let e=document.activeElement;(!e||e===document.body||o.current?.contains(e))&&s.current?.focus(),s.current=null},onClick:e=>{e.target===o.current&&o.current?.close()},children:[W(`div`,{class:`dialog-head`,children:[W(`h2`,{id:c,children:n}),W(`div`,{class:`dialog-actions`,children:[i,W(`button`,{type:`button`,class:`icon-button`,title:`Close`,onClick:()=>o.current?.close(),children:[W(_a,{}),W(`span`,{class:`visually-hidden`,children:`Close`})]})]})]}),a]})}function Yo(){let e=St.value,t=M(null);return j(()=>{e&&(t.current?.focus(),t.current?.select())},[e]),W(Jo,{open:e!==null,onClose:()=>St.value=null,title:`Copy ${e?.label.toLowerCase()??``}`,class:`copy-dialog`,children:[W(`p`,{class:`dialog-note`,children:`The browser did not allow copying from this page. The text is selected: press Ctrl+C (⌘C on macOS) to copy it.`}),W(`textarea`,{ref:t,class:`copy-text`,readOnly:!0,rows:8,"aria-label":e?.label??``,value:e?.text??``,spellcheck:!1})]})}function Xo({open:e,onClose:t}){return W(Jo,{open:e,onClose:t,title:`Keyboard shortcuts`,class:`shortcuts-dialog`,children:[W(`table`,{class:`shortcuts-table`,children:[W(`thead`,{children:W(`tr`,{children:[W(`th`,{scope:`col`,children:`Key`}),W(`th`,{scope:`col`,children:`Action`}),W(`th`,{scope:`col`,children:`Where`})]})}),W(`tbody`,{children:po.map(({keys:e,action:t,where:n})=>W(`tr`,{children:[W(`td`,{children:e.map((e,t)=>W(`span`,{children:[t>0&&` / `,W(`kbd`,{children:e})]},e))}),W(`td`,{children:t}),W(`td`,{children:n})]},t))})]}),W(`p`,{class:`dialog-note`,children:`Single keys do nothing while typing in a field or with Ctrl, Alt or Meta held.`})]})}function Zo({attachment:e,playwrightVersion:t}){let{path:n}=e,r=window.location.href,i=Bo(t,n!==null&&Ro(n,r)!==null);return W(`div`,{class:`trace-card`,children:[W(`span`,{class:`attachment-name`,children:e.name}),n?W(S,{children:[W(`div`,{class:`trace-actions`,children:[W(Ca,{label:`Trace command`,help:i,text:()=>zo(n,r),children:`Copy trace command`}),W(`a`,{class:`button trace-download`,href:Q(n),download:n.slice(n.lastIndexOf(`/`)+1),children:`Download trace`})]}),W(`p`,{class:`trace-help`,children:i})]}):W(`span`,{class:`muted`,children:`(file missing)`})]})}var Qo=/^((Expected|Received)(?: [a-z]+)*:)(\s+)(\S.*)$/,$o=/^- Expected(?:\s+- \d+)?$/,es=/^\+ Received(?:\s+\+ \d+)?$/,ts=/^[-+ ] /;function ns(e){return[{text:e,tone:null}]}function rs(e){let t=Qo.exec(e);if(!t)return null;let[,n=``,r,i=``,a=``]=t;return[{text:`${n}${i}`,tone:null},{text:a,tone:r===`Expected`?`expected`:`received`}]}function is(e){return e.startsWith(`- `)?[{text:e,tone:`expected`}]:e.startsWith(`+ `)?[{text:e,tone:`received`}]:ns(e)}function as(e){let t=e.split(`
13
+ `),n=[],r=0;for(;r<t.length;){let e=t[r],i=t[r+1];if($o.test(e)&&i!==void 0&&es.test(i)){for(n.push([{text:e,tone:`expected`}],[{text:i,tone:`received`}]),r+=2;r<t.length&&t[r]===``;)n.push(ns(t[r++]));for(;r<t.length&&ts.test(t[r]);)n.push(is(t[r++]))}else n.push(rs(e)??ns(e)),r+=1}return n}var os=/^(>)(\s*\d+ \|.*)$/,ss=/^(\s*\|\s*)(\^+)(\s*)$/;function cs(e){return e.split(`
14
+ `).map(e=>{let t=os.exec(e);if(t)return[{text:t[1],tone:`marker`},{text:t[2],tone:`strong`}];let n=ss.exec(e);return n?[{text:n[1],tone:null},{text:n[2],tone:`marker`},...n[3]?[{text:n[3],tone:null}]:[]]:ns(e)})}function ls(e){let t=[],n=e,r=``;for(;;){let e=-1;for(let t=n.length-1;t>=0;t--)if(n[t]?.error){e=t;break}if(e===-1)return t;let i=`${r}${e}`;t.push(i),n=n[e].steps,r=`${i}.`}}function us(e){return e.category===`test.step`||e.error!==null}function ds(e,t){let n=new Set(ls(e)),r=[...n].pop(),i=(e,a)=>e.flatMap((e,o)=>{let s=`${a}${o}`,c=i(e.steps,`${s}.`);return t==="default"&&!us(e)&&c.length===0?[]:[{step:e,key:s,children:c,onFailingPath:n.has(s),failing:s===r}]});return i(e,``)}function fs(e,t){let n=[],r=e;for(let e of t){let t=r[Number(e.split(`.`).pop())];if(!t)break;n.push(t),r=t.steps}return n}function ps(e,t=5){let n=ls(e);if(n.length===0)return null;let r=fs(e,n),i=r.length>1?r[r.length-2].steps:e,a=Number(n[n.length-1].split(`.`).pop());return{path:r,preceding:i.slice(Math.max(0,a-t),a)}}function ms({lines:e}){return W(S,{children:e.map((e,t)=>W(S,{children:[t>0&&`
15
+ `,e.map((e,t)=>e.tone?W(`span`,{class:`tone-${e.tone}`,children:e.text},t):e.text)]},t))})}function hs(e){return e?e.column===void 0?`${e.file}:${e.line}`:`${e.file}:${e.line}:${e.column}`:null}function gs({error:e,group:t,color:n,secondary:r=!1}){let i=hs(e.location);return W(`article`,{class:`error-card`,children:[W(`div`,{class:`error-head`,children:[W(G,{name:e.category??`Uncategorized`,color:n}),r&&W(`span`,{class:`error-secondary`,children:`Raised after the test timeout`}),i&&W(`code`,{class:`error-location`,children:i}),t&&W(`a`,{class:`error-group-link`,href:Oa(t.signature),title:`Every test failing with this error`,children:[`View error group `,W(`span`,{class:`muted`,children:[`(`,U(t.tests.length,`test`),`)`]})]})]}),W(`pre`,{class:`message error-message`,children:W(ms,{lines:as(e.message)})}),e.snippet&&W(`pre`,{class:`code-snippet`,children:W(ms,{lines:cs(e.snippet)})}),e.stack&&e.stack!==e.message&&W(`details`,{class:`stack-details`,children:[W(`summary`,{children:[W(Y,{class:`chevron`}),`Show stack`]}),W(`pre`,{class:`stack`,children:e.stack})]})]})}function _s(e){return e.error!==null&&!e.steps.some(e=>e.error!==null)}function vs({node:e,mode:t,expanded:n,toggle:r}){let{step:i,children:a}=e,o=n.has(e.key),s=hs(i.location?{file:i.location.file,line:i.location.line}:null);return W(`li`,{class:`step${e.onFailingPath?` step-failing-path`:``}${e.failing?` step-failing`:``}`,"data-category":i.category,children:[W(`div`,{class:`step-row`,children:[a.length>0?W(`button`,{type:`button`,class:`step-toggle`,"aria-expanded":o,onClick:()=>r(e.key),children:[W(Y,{class:`chevron`}),W(`span`,{class:`visually-hidden`,children:[o?`Collapse`:`Expand`,` `,i.title]})]}):W(`span`,{class:`step-toggle-space`}),i.error?W(J,{outcome:`failed`}):W(`span`,{class:`step-icon-space`}),W(`span`,{class:`step-text`,children:[W(`span`,{class:`step-title`,children:i.title}),i.subtitle&&W(`span`,{class:`step-subtitle`,children:[` `,i.subtitle]}),t===`all`&&W(`span`,{class:`step-category`,children:i.category}),e.failing&&W(`span`,{class:`visually-hidden`,children:` (failing step)`})]}),s&&W(`code`,{class:`step-location`,children:s}),W(`span`,{class:`step-duration`,children:H(i.durationMs)})]}),i.error&&_s(i)&&W(`pre`,{class:`message step-error`,children:W(ms,{lines:as(i.error.message)})}),o&&a.length>0&&W(ys,{nodes:a,mode:t,expanded:n,toggle:r})]})}function ys({nodes:e,mode:t,expanded:n,toggle:r}){return W(`ul`,{class:`step-list`,children:e.map(e=>W(vs,{node:e,mode:t,expanded:n,toggle:r},e.key))})}function bs({steps:e,mode:t}){let n=ds(e,t),[r,i]=k(()=>new Set(ls(e)));return n.length===0?W(`p`,{class:`muted`,children:[`No `,t==="default"?`test.step or failing step`:`step`,` in this attempt.`]}):W(ys,{nodes:n,mode:t,expanded:r,toggle:e=>i(t=>{let n=new Set(t);return n.has(e)?n.delete(e):n.add(e),n})})}var xs=new TextEncoder;function Ss(e){return e<1e3?`${e} B`:e<1e6?`${(e/1e3).toFixed(1)} kB`:`${(e/1e6).toFixed(1)} MB`}function Cs({attachment:e}){let t=t=>W(`span`,{class:`attachment-meta`,children:[e.contentType,t&&` · ${t}`]});return e.body===null?W(`div`,{class:`attachment-file`,children:[e.path?W(`a`,{class:`attachment-name`,href:Q(e.path),children:e.name}):W(`span`,{class:`attachment-name`,children:[e.name,` `,W(`span`,{class:`muted`,children:`(file missing)`})]}),t(null)]}):W(`details`,{class:`attachment-body`,children:[W(`summary`,{children:[W(Y,{class:`chevron`}),W(`span`,{class:`attachment-name`,children:e.name}),t(Ss(xs.encode(e.body).length))]}),W(`pre`,{children:e.body})]})}function ws({name:e,output:t}){if(t.text===``&&!t.truncated)return null;let n=t.text.split(`
16
+ `).filter((e,t,n)=>e!==``||t<n.length-1).length;return W(`details`,{class:`output-block`,children:[W(`summary`,{children:[W(Y,{class:`chevron`}),W(`span`,{class:`output-name`,children:e}),W(`span`,{class:`muted`,children:U(n,`line`)}),t.truncated&&W(`span`,{class:`output-truncated`,children:`truncated`})]}),t.truncated&&W(`p`,{class:`output-notice`,children:`Truncated: the report keeps the first 32,768 characters of each attempt.`}),W(`pre`,{children:t.text})]})}function Ts({attachment:e,note:t=`File not found`}){return W(`span`,{class:`media-missing`,children:[W(`strong`,{children:e.name}),W(`span`,{children:t}),W(`code`,{children:e.path??`no file in the report`})]})}function Es({attachment:e,alt:t=e.name,lazy:n=!1,class:r,onClick:i}){let[a,o]=k(!1);return!e.path||a?W(Ts,{attachment:e}):W(`img`,{src:Q(e.path),alt:t,class:r,loading:n?`lazy`:void 0,decoding:`async`,onError:()=>o(!0),onClick:i})}function Ds({attachment:e,label:t=`Open original`}){return e.path?W(`a`,{class:`open-original`,href:Q(e.path),target:`_blank`,rel:`noopener`,children:t}):null}function Os({screenshots:e,open:t}){return W(`ul`,{class:`thumbs`,children:e.map((e,n)=>W(`li`,{children:W(`button`,{type:`button`,class:`thumb`,onClick:()=>t(n),children:[W(Es,{attachment:e,lazy:!0},e.path),W(`span`,{class:`thumb-name`,"aria-hidden":`true`,children:e.name})]})},n))})}function ks(e,t){let n=M(t);n.current=t,A(()=>{if(!e)return;let t=e=>{let t={ArrowLeft:-1,ArrowRight:1}[e.key];!t||e.defaultPrevented||e.ctrlKey||e.altKey||e.metaKey||e.shiftKey||mo(e.target)||e.target instanceof HTMLInputElement&&e.target.type===`range`||(e.preventDefault(),n.current(t))};return document.addEventListener(`keydown`,t),()=>document.removeEventListener(`keydown`,t)},[e])}function As({items:e,index:t,setIndex:n}){let[r,i]=k(null),a=t!==null&&r===t,o=t===null?void 0:e[t],s=r=>{t!==null&&e[t+r]&&n(t+r)};ks(o!==void 0,s);let c=()=>i(a?null:t);return W(Jo,{open:o!==void 0,onClose:()=>{n(null),i(null)},title:o?o.type===`image`?o.attachment.name:o.set.group:``,class:`lightbox${a?` actual-size`:``}`,actions:o?.type===`image`&&W(Ds,{attachment:o.attachment}),children:o&&t!==null&&W(S,{children:[W(`div`,{class:`lightbox-stage`,onClick:e=>{e.target===e.currentTarget&&n(null)},children:o.type===`image`?W(Es,{attachment:o.attachment,class:`lightbox-image`,onClick:c},o.attachment.path):W(Ko,{set:o.set,onImageClick:c},o.set.group)}),W(`div`,{class:`lightbox-bar`,children:[W(`button`,{type:`button`,class:`button pager-button`,disabled:t===0,onClick:()=>s(-1),children:`← Previous`}),W(`span`,{class:`lightbox-position`,"aria-live":`polite`,children:[t+1,` of `,e.length]}),W(`button`,{type:`button`,class:`button pager-button`,disabled:t===e.length-1,onClick:()=>s(1),children:`Next →`}),W(`button`,{type:`button`,class:`button toggle-button`,"aria-pressed":a,onClick:c,children:`Actual size`})]})]})})}function js({attachment:e}){let[t,n]=k(!1);return W(`figure`,{class:`video`,children:[e.path&&!t?W(`video`,{controls:!0,preload:`metadata`,children:W(`source`,{src:Q(e.path),type:e.contentType,onError:()=>n(!0)})}):W(Ts,{attachment:e,note:e.path?`Cannot play this video`:`File not found`}),W(`figcaption`,{children:[W(`span`,{class:`attachment-name`,children:e.name}),W(Ds,{attachment:e})]})]})}function Ms({label:e,count:t,children:n}){return t===0?null:W(`section`,{class:`attachment-group`,"aria-label":e,children:[W(`h3`,{children:[e,` `,W(`span`,{class:`muted`,children:t})]}),n]})}function Ns({attachments:e}){return W(`ul`,{class:`attachment-list`,children:e.map((e,t)=>W(`li`,{children:W(Cs,{attachment:e})},t))})}function Ps({attachments:e,playwrightVersion:t}){let n=Po(e),[r,i]=k(null),a=e=>i(e===null?null:{index:e}),o=B.value;A(()=>i(null),[o]);let s=n.files.filter(e=>e.kind===`text`),c=n.files.filter(e=>e.kind!==`text`);return W(`div`,{class:`attachment-groups`,children:[W(Ms,{label:`Screenshots`,count:n.comparisons.length+n.screenshots.length,children:[n.comparisons.map((e,t)=>W(qo,{set:e,open:()=>a(t)},e.group)),n.screenshots.length>0&&W(Os,{screenshots:n.screenshots,open:e=>a(n.comparisons.length+e)})]}),W(Ms,{label:`Videos`,count:n.videos.length,children:n.videos.map((e,t)=>W(js,{attachment:e},`${t}/${e.path}`))}),W(Ms,{label:`Traces`,count:n.traces.length,children:n.traces.map((e,n)=>W(Zo,{attachment:e,playwrightVersion:t},n))}),W(Ms,{label:`Text`,count:s.length,children:W(Ns,{attachments:s})}),W(Ms,{label:`Other`,count:c.length,children:W(Ns,{attachments:c})}),W(As,{items:Fo(n),index:r?.index??null,setIndex:a})]})}function Fs(e){return e===0?`Attempt 1`:`Retry ${e}`}function Is(e){let t=e.attempts.filter(t=>ln(e,t));return t[t.length-1]??e.attempts[e.attempts.length-1]??null}function Ls(e,t){if(t===null)return{attempt:Is(e),valid:!0};let n=e.attempts.find(e=>e.index===t);return n?{attempt:n,valid:!0}:{attempt:Is(e),valid:!1}}var Rs=`A Playwright test failed. Explain the most likely cause of the failure, say whether the problem is more likely in the test or in the application under test, and suggest a fix.`;function zs(e){let t=e.replace(/\s+$/,``),n=Math.max(2,...[...t.matchAll(/`+/g)].map(e=>e[0].length)),r="`".repeat(n+1);return`${r}\n${t}\n${r}`}function Bs(e){return e.location?`${e.location.file}:${e.location.line}:${e.location.column}`:null}function Vs(e){return e.subtitle?`${e.title} (${e.subtitle})`:e.title}function Hs(e,t,n,r){let i=[`## Error${n>1?` ${t+1} of ${n}`:``}`,``,`Category: ${e.category??`Uncategorized`}`],a=Bs(e);return a&&i.push(`Location: ${a}`),i.push(``,`Message:`,zs(e.message)),e.snippet&&i.push(``,`Code:`,zs(e.snippet)),r.includeStack&&e.stack&&e.stack!==e.message&&i.push(``,`Stack:`,zs(e.stack)),i}function Us(e,t,n){let r=e.attempts.findIndex(e=>e.index===t.index)+1,i=[Rs,``,`## Test`,``,`- Title: ${[...e.suitePath,e.title].join(` › `)}`,`- Location: ${e.file}:${e.line}`,`- Project: ${e.project||`(unnamed)`}`,`- Outcome: ${e.outcome}`,`- Attempt: ${r} of ${e.attempts.length} (${Fs(t.index).toLowerCase()}), status ${t.status}`,`- Error category: ${t.errors[0]?.category??e.category??`none`}`];e.tags.length>0&&i.push(`- Tags: ${e.tags.join(`, `)}`);let a=[...e.annotations,...t.annotations];a.length>0&&i.push(`- Annotations: ${a.map(({type:e,description:t})=>t?`${e}: ${t}`:e).join(`; `)}`),t.errors.forEach((e,r)=>i.push(``,...Hs(e,r,t.errors.length,n))),t.errors.length===0&&i.push(``,`## Error`,``,`This attempt reported no error.`);let o=ps(t.steps);return o&&(i.push(``,`## Failing step`,``,o.path.map(Vs).join(` › `)),o.preceding.length>0&&i.push(``,`Steps before it, at the same level:`,...o.preceding.map((e,t)=>`${t+1}. ${Vs(e)}`))),t.attachments.length>0&&i.push(``,`## Attachments (not included)`,``,...t.attachments.map(e=>`- ${e.name} (${e.contentType})`)),`${i.join(`
17
+ `)}\n`}var Ws={passed:`passed`,failed:`failed`,timedOut:`failed`,interrupted:`failed`,skipped:`skipped`},Gs={passed:`Passed`,failed:`Failed`,timedOut:`Timed out`,interrupted:`Interrupted`,skipped:`Skipped`};function Ks(e){return{page:`test`,id:e.id,repeatEachIndex:e.repeatEachIndex}}function qs({type:e,description:t}){return t?`${e}: ${t}`:e}function Js({test:e}){let t=Object.entries(e.dimensions).filter(([,e])=>e.length>0);return e.tags.length===0&&e.annotations.length===0&&t.length===0?null:W(`dl`,{class:`test-meta`,children:[e.tags.length>0&&W(`div`,{children:[W(`dt`,{children:`Tags`}),W(`dd`,{class:`chips`,children:e.tags.map(e=>W(`span`,{class:`tag`,children:e},e))})]}),e.annotations.length>0&&W(`div`,{children:[W(`dt`,{children:`Annotations`}),W(`dd`,{class:`chips`,children:e.annotations.map((e,t)=>W(`span`,{class:`tag`,children:qs(e)},t))})]}),t.map(([e,t])=>W(`div`,{children:[W(`dt`,{children:e}),W(`dd`,{children:t.join(`, `)})]},e))]})}function Ys({test:e,selected:t,select:n}){let r=M(null),i=t=>{let i=e.attempts[(t+e.attempts.length)%e.attempts.length];i&&(n(i),r.current?.querySelector(`[data-attempt="${i.index}"]`)?.focus())},a=e.attempts.indexOf(t);return W(`div`,{class:`attempt-tabs`,role:`tablist`,"aria-label":`Attempts`,ref:r,onKeyDown:t=>{let n={ArrowRight:a+1,ArrowLeft:a-1,Home:0,End:e.attempts.length-1}[t.key];n!==void 0&&(t.preventDefault(),i(n))},children:e.attempts.map(e=>{let r=e===t;return W(`button`,{type:`button`,role:`tab`,id:`attempt-tab-${e.index}`,class:`attempt-tab`,"data-attempt":e.index,"aria-selected":r,"aria-controls":`attempt-panel`,tabIndex:r?0:-1,onClick:()=>n(e),children:[W(J,{outcome:Ws[e.status],decorative:!0}),W(`span`,{children:Fs(e.index)}),W(`span`,{class:`visually-hidden`,children:[`, `,Gs[e.status]]}),W(`span`,{class:`attempt-duration`,children:H(e.durationMs)})]},e.index)})})}function Xs({test:e,attempt:t,params:n,groups:r,colors:i,playwrightVersion:a}){let o=n.allSteps?`all`:`default`,s=new Set(e.annotations.map(qs)),c=t.annotations.filter(e=>!s.has(qs(e)));return W(S,{children:[t.errors.length>0&&W(`section`,{class:`detail-section`,"aria-labelledby":`detail-errors`,children:[W(`h2`,{id:`detail-errors`,children:t.errors.length===1?`Error`:U(t.errors.length,`error`)}),t.errors.map((e,n)=>W(gs,{error:e,group:r.get(e.signature),color:e.category?i.get(e.category):void 0,secondary:Qt(t,n)},n))]}),t.steps.length>0&&W(`section`,{class:`detail-section`,"aria-labelledby":`detail-steps`,children:[W(`div`,{class:`section-head`,children:[W(`h2`,{id:`detail-steps`,children:`Steps`}),W(`button`,{type:`button`,class:`button toggle-button`,"aria-pressed":n.allSteps,onClick:()=>ai(Xr({...n,allSteps:!n.allSteps})),children:`Show all steps`})]}),W(bs,{steps:t.steps,mode:o},`${e.id}/${e.repeatEachIndex}/${t.index}`)]}),t.attachments.length>0&&W(`section`,{class:`detail-section`,"aria-labelledby":`detail-attachments`,children:[W(`h2`,{id:`detail-attachments`,children:`Attachments`}),W(Ps,{attachments:t.attachments,playwrightVersion:a},`${e.id}/${e.repeatEachIndex}/${t.index}`)]}),c.length>0&&W(`section`,{class:`detail-section`,"aria-labelledby":`detail-annotations`,children:[W(`h2`,{id:`detail-annotations`,children:`Annotations of this attempt`}),W(`ul`,{class:`chips`,children:c.map((e,t)=>W(`li`,{class:`tag`,children:qs(e)},t))})]}),(t.stdout.text!==``||t.stderr.text!==``||t.stdout.truncated||t.stderr.truncated)&&W(`section`,{class:`detail-section`,"aria-labelledby":`detail-output`,children:[W(`h2`,{id:`detail-output`,children:`Output`}),W(ws,{name:`stdout`,output:t.stdout}),W(ws,{name:`stderr`,output:t.stderr})]})]})}function Zs({report:e,test:t,sequence:n,groups:r,settings:i}){let a=N(()=>Mi(e.categories),[e]),o=Yr(B.value.search),s=t?Ls(t,o.attempt):null,c=s?.attempt??null;j(()=>{s&&!s.valid&&ai(Xr({...o,attempt:null}))},[s?.valid]);let l=t?lo(n,t):null,u=e=>e?()=>qt(Ks(e)):null,d=e=>{if(!t||!c)return null;let n=t.attempts[t.attempts.indexOf(c)+e];return n?()=>ai(Xr({...o,attempt:n.index})):null};if(go({j:u(l?.next),k:u(l?.previous),"[":d(-1),"]":d(1)}),!t)return W(_o,{message:`No test with this id in this report.`});let{primary:f}=Ar(t),p=an(t),m=ra(e.tests,t);return W(`div`,{class:`page test-page`,children:[W(co,{label:`Tests in the current list`,position:l?.position??null,total:n.length,outside:`Not in the current list (${U(n.length,`test`)})`,previous:u(l?.previous),next:u(l?.next),previousLabel:`Previous`,nextLabel:`Next`,keys:[`k`,`j`]}),W(`header`,{class:`test-header`,children:[W(`h1`,{class:`test-title`,children:[t.suitePath.map((e,t)=>W(`span`,{class:`title-suite`,children:[e,W(`span`,{class:`title-separator`,children:` › `})]},t)),t.title,t.repeatEachIndex>0&&W(`span`,{class:`row-note`,children:[` repeat `,t.repeatEachIndex]})]}),W(`div`,{class:`test-summary`,children:[W(J,{outcome:t.outcome,labelled:!0}),p&&W(`span`,{class:`skip-reason detail-skip`,children:sn(p)}),W(`span`,{children:Aa(t.project)}),W(`code`,{children:[t.file,`:`,t.line]}),W(`span`,{children:H(t.durationMs)}),f!==null&&W(G,{name:f,color:a.get(f)})]}),p?.kind===`notRun`&&W(`p`,{class:`skip-explanation`,children:`Playwright skipped this test without a skip annotation, usually because a dependency project or an earlier test of its serial group failed, the failure limit (--max-failures) was reached, or the run was stopped.`}),W(Js,{test:t}),W(`div`,{class:`test-actions`,children:[W(Ca,{label:`Rerun command`,help:ia,text:()=>ea([t]),children:`Copy rerun command`}),m&&W(Ca,{label:`Rerun command`,help:`For a POSIX shell (bash, zsh), run from the Playwright root directory: paths are relative to it. A file:line argument targets the line where the test is declared, and reruns every test declared on that line. The command is only valid while the file has not changed since the run.`,text:()=>ea(m.tests),children:[`Copy rerun command · `,m.label]}),c&&c.errors.length>0&&W(Ca,{label:`AI prompt`,help:`A description of this attempt's failure, in English, to paste in the AI assistant of your choice. Nothing is sent anywhere.`,text:()=>Us(t,c,{includeStack:i.aiPrompt.includeStack}),children:`Copy AI prompt`})]})]}),c&&t.attempts.length>1&&W(Ys,{test:t,selected:c,select:e=>ai(Xr({...o,attempt:e.index}))}),c&&W(`div`,{class:`attempt-panel`,id:`attempt-panel`,role:t.attempts.length>1?`tabpanel`:void 0,"aria-labelledby":t.attempts.length>1?`attempt-tab-${c.index}`:void 0,children:W(Xs,{test:t,attempt:c,params:o,groups:r,colors:a,playwrightVersion:e.run.playwrightVersion})})]})}function Qs(e){let t=lr(e);return t===null?{status:`Status`,project:`Project`,tag:`Tag`,category:`Error category`,point:`Failure point`}[e]:t}function $s(e){let t=e.lastIndexOf(`#`);return{file:e.slice(0,t),fn:e.slice(t+1)}}function ec(e,t){if(e===`status`)return q(t);if(e===`project`)return t||`(unnamed project)`;if(e===`point`){let{file:e,fn:n}=$s(t);return`${n} (${e})`}return t}function tc({facet:e,value:t,colors:n}){if(e===`status`)return W(J,{outcome:t,labelled:!0});if(e===`category`)return W(G,{name:t,color:n.get(t)});if(e===`point`){let{file:n,fn:r}=$s(t);return W(`span`,{class:`facet-value facet-point`,title:ec(e,t),children:[W(`code`,{children:r}),` `,W(`span`,{class:`facet-point-file`,children:n})]})}return W(`span`,{class:`facet-value`,children:ec(e,t)})}function nc({state:e,facet:t,values:n,counts:r,colors:i}){let a=M(null),o=e.facets[t]??[],s=Qs(t);return A(()=>{let e=e=>{let t=a.current;t?.open&&!t.contains(e.target)&&(t.open=!1)};return document.addEventListener(`pointerdown`,e),()=>document.removeEventListener(`pointerdown`,e)},[]),W(`details`,{class:`facet`,ref:a,onKeyDown:e=>{let t=a.current;e.key===`Escape`&&t?.open&&(t.open=!1,t.querySelector(`summary`)?.focus(),e.stopPropagation())},"data-facet":t,children:[W(`summary`,{class:`facet-button`,children:[W(`span`,{children:s}),o.length>0&&W(`span`,{class:`facet-selected`,children:[o.length,W(`span`,{class:`visually-hidden`,children:` selected`})]}),W(Y,{class:`chevron`})]}),W(`fieldset`,{class:`facet-menu`,children:[W(`legend`,{class:`visually-hidden`,children:s}),[...n].map(n=>{let a=r?.get(n)??0,s=o.includes(n);return W(`label`,{class:`facet-option${a===0&&!s?` facet-option-empty`:``}`,children:[W(`input`,{type:`checkbox`,checked:s,onChange:r=>ii(yr(e,t,n,r.currentTarget.checked))}),W(tc,{facet:t,value:n,colors:i}),W(`span`,{class:`facet-count`,children:[a,W(`span`,{class:`visually-hidden`,children:[` `,a===1?`test`:`tests`]})]})]},n)})]})]})}function rc({state:e,domain:t,counts:n,colors:r}){return W(`div`,{class:`facets`,role:`group`,"aria-label":`Filters`,children:[...t].filter(([e,t])=>e!==`project`||t.size>1).map(([t,i])=>W(nc,{state:e,facet:t,values:i,counts:n.get(t),colors:r},t))})}function ic(e,t){let n=[];e.q.trim()!==``&&n.push({key:`q`,label:`Search: ${e.q.trim()}`,remove:e=>({...e,q:``})});let r=new Map([...t.keys()].map((e,t)=>[e,t])),i=ir(e.facets).sort(([e],[t])=>(r.get(e)??1/0)-(r.get(t)??1/0));for(let[e,t]of i)for(let r of t)n.push({key:`${e}\u0000${r}`,label:`${Qs(e)}: ${ec(e,r)}`,remove:t=>yr(t,e,r,!1)});return n}function ac({state:e,domain:t}){let n=ic(e,t),r=M(null),i=M(null);return j(()=>{if(i.current===null)return;let e=[...r.current?.querySelectorAll(`button`)??[]],t=e[Math.min(i.current,e.length-2)]??e[e.length-1];i.current=null,t?t.focus():document.querySelector(`.facets summary`)?.focus()}),n.length===0?null:W(`div`,{class:`filter-chips`,ref:r,children:[W(`ul`,{"aria-label":`Active filters`,children:n.map((t,n)=>W(`li`,{children:W(`button`,{type:`button`,class:`chip`,"aria-label":`Remove filter ${t.label}`,onClick:()=>{i.current=n,ii(t.remove(e))},children:[W(`span`,{children:t.label}),W(_a,{})]})},t.key))}),W(`button`,{type:`button`,class:`text-button`,onClick:()=>{i.current=0,ii(br(e))},children:`Clear all`})]})}var oc=new Intl.NumberFormat(`en-US`);function $(e){return oc.format(e)}function sc(e,t){return Math.min(e,Math.max(t,0))}function cc(e,t,n){let r=e=>e===1?`test`:`tests`;return e<t?t===n?`Showing ${$(e)} of ${$(n)} ${r(n)}`:`Showing ${$(e)} of ${$(t)} matching ${r(t)} (${$(n)} in total)`:t===n?`${$(n)} ${r(n)}`:`${$(t)} of ${$(n)} ${r(n)}`}function lc(e,t,n){let r=[];for(let{name:n}of t)for(let t of new Set(e.dimensions[n]??[]))r.push({facet:cr(n),value:t,label:t,name:`${n}: ${t}`});let i=[...new Set(Cr(e.tags,n))].sort((e,t)=>e.localeCompare(t));for(let e of i)r.push({facet:`tag`,value:e,label:e,name:`Tag: ${e}`});return r}var uc=new WeakMap;function dc(e){let t=uc.get(e);if(!t){let n=Sr({dimensions:e.dimensions});t=new Map(e.tests.map(t=>[t.id,lc(t,e.dimensions,n)])),uc.set(e,t)}return t}function fc(e,t,n=4){if(e.length<=n)return{shown:[...e],hidden:0};let r=n-e.filter(t).length,i=e.filter(e=>t(e)?!0:(--r,r>=0));return{shown:i,hidden:e.length-i.length}}function pc(e,t){return e.facets[t.facet]?.includes(t.value)??!1}function mc(e,t){return yr(e,t.facet,t.value,!pc(e,t))}var hc=[{column:`status`,label:`Status`},{column:`title`,label:`Test`},{column:`project`,label:`Project`},{column:`file`,label:`File`},{column:`duration`,label:`Duration`,numeric:!0},{column:`category`,label:`Error category`},{column:`attempts`,label:`Attempts`,numeric:!0}];function gc({report:e,state:t,sorted:n}){let r=N(()=>Mi(e.categories),[e]),i=dc(e),a=N(()=>Fr(e.tests,t,Qr.value,$r.value),[e,_r({...t,sort:rr})]),o=e.tests.length,s=_r(t),c=M({viewKey:s,limit:500});c.current.viewKey!==s&&(c.current={viewKey:s,limit:500});let[,l]=k(0),u=sc(n.length,c.current.limit),d=N(()=>n.slice(0,u),[n,u]),f=cc(u,n.length,o),p=M(null),m=M(null);j(()=>{m.current!==null&&(p.current?.rows[m.current]?.querySelector(`a`)?.focus(),m.current=null)});let h=e=>{m.current=u,c.current={viewKey:s,limit:e},l(e=>e+1)};return W(`div`,{class:`page view view-tests`,children:[W(`h1`,{children:`Tests`}),o>0&&W(`div`,{class:`filter-bar`,children:[W(rc,{state:t,domain:Qr.value,counts:a,colors:r}),W(ac,{state:t,domain:Qr.value})]}),W(`p`,{class:`result-count`,"aria-live":`polite`,"aria-atomic":`true`,children:f}),W(Na,{tests:n}),o===0?W(`p`,{class:`muted`,children:`No tests in this run.`}):n.length===0?W(`div`,{class:`empty-state`,children:[W(`p`,{children:`No tests match these filters.`}),W(`button`,{type:`button`,class:`button`,onClick:()=>ii(br(t)),children:`Reset filters`})]}):W(`div`,{class:`table-scroll`,children:W(`table`,{class:`tests-table`,children:[W(`thead`,{children:W(`tr`,{children:hc.map(({column:e,label:n,numeric:r})=>{let i=t.sort.column===e;return W(`th`,{scope:`col`,class:r?`numeric`:void 0,"aria-sort":i?t.sort.direction===`asc`?`ascending`:`descending`:void 0,children:W(`button`,{type:`button`,class:`sort-button`,onClick:()=>ii({...t,sort:Vr(t.sort,e)}),children:[n,W(va,{direction:i?t.sort.direction:null,class:i?`sort-active`:`sort-idle`})]})},e)})})}),W(`tbody`,{ref:p,children:d.map(e=>W(xc,{test:e,chips:i.get(e.id)??yc,state:t,colors:r},`${e.id}/${e.repeatEachIndex}`))})]})}),u<n.length&&W(`div`,{class:`table-more`,children:[W(`p`,{children:f}),W(`button`,{type:`button`,class:`button`,onClick:()=>h(u+500),children:[`Show `,Math.min(500,n.length-u),` more`]}),W(`button`,{type:`button`,class:`button`,onClick:()=>h(n.length),children:`Show all`})]})]})}function _c({path:e}){let t=e.split(`/`);return W(S,{children:t.map((e,n)=>W(S,{children:[e,n<t.length-1&&W(S,{children:[`/`,W(`wbr`,{})]})]},n))})}function vc({test:e,colors:t}){let{primary:n,others:r}=Ar(e);return n===null?null:W(`span`,{class:`category-badges`,children:[W(G,{name:n,color:t.get(n)}),r.length>0&&W(`span`,{class:`category-more`,title:`Other ${r.length===1?`category`:`categories`} in failing attempts: ${r.join(`, `)}`,children:[W(`span`,{"aria-hidden":`true`,children:[`+`,r.length]}),W(`span`,{class:`visually-hidden`,children:[`, and `,U(r.length,`other category`,`other categories`),`: `,r.join(`, `)]})]})]})}var yc=[];function bc({chips:e,state:t}){let[n,r]=k(!1);if(e.length===0)return null;let i=e=>pc(t,e),a=fc(e,i);return W(`div`,{class:`test-chips`,role:`group`,"aria-label":`Tags and dimensions`,children:[(n?e:a.shown).map(e=>{let n=i(e),r=n?`Remove filter ${e.name}`:e.name;return W(`a`,{class:`test-chip${n?` test-chip-active`:``}`,href:ri(mc(t,e),{page:`tests`}),title:r,"aria-label":r,children:[e.label,n&&W(_a,{})]},`${e.facet}\u0000${e.value}`)}),a.hidden>0&&W(`button`,{type:`button`,class:`test-chip-more`,"aria-expanded":n,onClick:()=>r(!n),children:[n?`Show less`:`+${a.hidden}`,!n&&W(`span`,{class:`visually-hidden`,children:` more tags and dimensions`})]})]})}var xc=class extends te{shouldComponentUpdate(e){let{test:t,chips:n,state:r,colors:i}=this.props;return e.test!==t||e.chips!==n||e.state!==r||e.colors!==i}render(){return W(Sc,{...this.props})}};function Sc({test:e,chips:t,state:n,colors:r}){let i=an(e);return W(`tr`,{children:[W(`td`,{children:W(J,{outcome:e.outcome,labelled:!0})}),W(`td`,{class:`cell-title`,children:[W(`a`,{href:Da(e),children:zr(e)}),e.repeatEachIndex>0&&W(`span`,{class:`row-note`,children:[` repeat `,e.repeatEachIndex]}),i&&W(Ta,{reason:i,class:`skip-line`}),W(bc,{chips:t,state:n})]}),W(`td`,{class:`cell-project`,children:Aa(e.project)}),W(`td`,{children:W(`code`,{children:W(_c,{path:`${e.file}:${e.line}`})})}),W(`td`,{class:`numeric`,children:H(e.durationMs)}),W(`td`,{children:W(vc,{test:e,colors:r})}),W(`td`,{class:`numeric`,children:e.attempts.length})]})}function Cc({version:e}){return W(`footer`,{class:`footer`,children:[`Loupe — a reporter for Playwright `,W(`span`,{class:`muted`,children:[`· v`,e]})]})}function wc(e,t={}){if(typeof e!=`string`||e===``)return null;let n=new Date(e);if(Number.isNaN(n.getTime()))return null;let r=t.timeZone===void 0?{}:{timeZone:t.timeZone},i=new Intl.DateTimeFormat(t.locale,{year:`numeric`,month:`short`,day:`numeric`,hour:`2-digit`,minute:`2-digit`,timeZoneName:`short`,...r}),a=new Intl.DateTimeFormat(t.locale,{dateStyle:`full`,timeStyle:`long`,...r});return{utc:n.toISOString(),label:i.format(n),full:a.format(n),timeZone:i.resolvedOptions().timeZone}}var Tc=[`system`,`light`,`dark`],Ec=`loupe.theme`,Dc=L(`system`);function Oc(e){return typeof e==`string`&&Tc.includes(e)}function kc(e){let t=Tt(Ec);Dc.value=Oc(t)?t:Oc(e)?e:`system`,st(()=>{let e=document.documentElement;Dc.value===`system`?delete e.dataset.theme:e.dataset.theme=Dc.value})}function Ac(e){Dc.value=e,Et(Ec,e)}var jc={passed:`Passed`,failed:`Failed`,timedout:`Timed out`,interrupted:`Interrupted`},Mc={system:`System theme`,light:`Light theme`,dark:`Dark theme`},Nc={system:ca,light:la,dark:ua};function Pc(){return W(`div`,{class:`theme-switch`,role:`group`,"aria-label":`Theme`,children:Tc.map(e=>{let t=Nc[e];return W(`button`,{type:`button`,class:`icon-button`,"aria-pressed":Dc.value===e,title:Mc[e],onClick:()=>Ac(e),children:[W(t,{}),W(`span`,{class:`visually-hidden`,children:Mc[e]})]},e)})})}function Fc(){let[e,t]=k(!1);return go({"?":()=>t(!0)}),W(S,{children:[W(`button`,{type:`button`,class:`icon-button`,title:`Keyboard shortcuts (?)`,"aria-keyshortcuts":`?`,onClick:()=>t(!0),children:[W(xa,{}),W(`span`,{class:`visually-hidden`,children:`Keyboard shortcuts`})]}),W(Xo,{open:e,onClose:()=>t(!1)})]})}function Ic({startedAt:e,durationMs:t}){let n=N(()=>wc(e),[e]),[r,i]=k(!1);return W(`div`,{class:`run-time`,onPointerLeave:()=>i(!1),children:[W(`dt`,{class:`visually-hidden`,children:`Run`}),W(`dd`,{children:[n&&W(S,{children:[W(`time`,{dateTime:n.utc,tabIndex:0,"aria-describedby":`run-time-details`,onKeyDown:e=>e.key===`Escape`&&i(!0),onBlur:()=>i(!1),children:n.label}),` · `]}),H(t)]}),n&&W(`span`,{id:`run-time-details`,role:`tooltip`,class:`run-time-details${r?` dismissed`:``}`,children:[W(`span`,{children:n.full}),W(`span`,{children:[`Time zone: `,n.timeZone]}),W(`span`,{children:[`UTC: `,n.utc]})]})]})}function Lc({outcome:e,count:t}){let n=q(e).toLowerCase(),r=W(S,{children:[W(J,{outcome:e,decorative:!0}),W(`span`,{class:`count-value`,children:t}),W(`span`,{class:`visually-hidden`,children:[` `,n]})]});return t===0?W(`li`,{class:`count zero`,title:q(e),children:r}):W(`li`,{class:`count`,children:W(`a`,{class:`count-link`,href:ri({...ar,facets:{status:[e]}},{page:`tests`}),title:`Show the ${t} ${n} ${t===1?`test`:`tests`}`,children:r})})}function Rc({report:e,title:t}){let{run:n}=e;return W(S,{children:[W(`header`,{class:`header`,children:[W(`div`,{class:`header-main`,children:[W(`div`,{class:`header-identity`,children:[W(`div`,{class:`header-name`,children:[W(`button`,{type:`button`,class:`icon-button`,"aria-controls":`sidebar`,"aria-expanded":R.value,title:R.value?`Hide sidebar`:`Show sidebar`,onClick:At,children:[W(sa,{}),W(`span`,{class:`visually-hidden`,children:R.value?`Hide sidebar`:`Show sidebar`})]}),W(`div`,{class:`brand`,children:[W(`span`,{class:`wordmark`,children:`Loupe`}),W(`a`,{class:`title`,href:V({page:`dashboard`}),title:t,children:t})]})]}),W(`span`,{class:`run-status run-${n.status}`,children:[W(J,{outcome:n.status===`passed`?`passed`:`failed`,decorative:!0}),jc[n.status]??n.status]})]}),W(`ul`,{class:`counts`,"aria-label":`Test counts`,children:Yt.map(e=>W(Lc,{outcome:e,count:n.stats[e]},e))}),W(`dl`,{class:`run-meta`,children:[W(Ic,{startedAt:n.startedAt,durationMs:n.durationMs}),n.environment.name&&W(`div`,{children:[W(`dt`,{children:`Environment`}),W(`dd`,{children:n.environment.name})]})]})]}),W(`div`,{class:`header-tools`,children:[W(Fc,{}),W(Pc,{})]})]}),n.scope===`partial`&&W(`div`,{class:`banner banner-partial`,role:`note`,children:[W(fa,{}),W(`p`,{children:[W(`strong`,{children:`Partial run.`}),` Only part of the suite ran, so these results do not cover every test.`,n.scopeReasons.length>0&&W(S,{children:[` `,`Detected from: `,n.scopeReasons.map(So).join(`, `),`.`]})]})]})]})}function zc({roots:e,route:t,prefix:n,expandAll:r,emptyMessage:i}){let a=t.page===`test`?Ii(t.id,t.repeatEachIndex):null,[o,s]=k(()=>new Set(e.map(e=>e.key))),[c,l]=k(null),u=M(new Map),d=M(!1),f=M(!1),[p,m]=k(null),h=M(null),g=jt.value;j(()=>{g&&e.some(e=>e.key===g.key)&&(m(g.key),s(e=>e.has(g.key)?e:new Set([...e,g.key])),h.current=g.key,l(g.key))},[e,g]),j(()=>{a&&m(null)},[a]),j(()=>{if(!a)return;let t=qi(e,a);t&&(f.current=!0,l(a),s(e=>t.every(t=>e.has(t))?e:new Set([...e,...t])))},[e,a]),j(()=>{if(!r)return;let t=Ji(e);s(e=>t.every(t=>e.has(t))?e:new Set([...e,...t]))},[e,r]);let _=N(()=>Ki(e,o),[e,o]),v=N(()=>new Map(_.map((e,t)=>[e.node.key,t])),[_]),y=c!==null&&v.has(c)?c:a!==null&&v.has(a)?a:_[0]?.node.key??null;j(()=>{f.current&&a&&u.current.has(a)&&(f.current=!1,u.current.get(a)?.scrollIntoView({block:`nearest`}));let e=h.current===null?void 0:u.current.get(h.current);e&&(h.current=null,e.focus({preventScroll:!0}),e.scrollIntoView({block:`nearest`})),d.current&&y&&(d.current=!1,u.current.get(y)?.focus())});let ee=n!==``&&W(`p`,{class:`tree-prefix`,title:`Folder shared by every test file, left out of the tree`,children:[W(`span`,{class:`visually-hidden`,children:`Files in `}),n]}),b=e=>{e&&(d.current=!0,l(e.node.key))},x=(e,t)=>{s(n=>{if(n.has(e)===t)return n;let r=new Set(n);return t?r.add(e):r.delete(e),r})};return W(`div`,{class:`tree-section`,children:[W(`div`,{class:`tree-toolbar`,children:[W(`h2`,{id:`tree-heading`,children:`Tests`}),W(`button`,{type:`button`,class:`text-button`,onClick:()=>s(new Set(Ji(e))),children:`Expand all`}),W(`button`,{type:`button`,class:`text-button`,onClick:()=>s(new Set),children:`Collapse all`})]}),ee,e.length===0?W(`p`,{class:`tree-empty`,children:i}):W(`ul`,{class:`tree`,role:`tree`,"aria-labelledby":`tree-heading`,onKeyDown:e=>{if(y===null||e.altKey||e.ctrlKey||e.metaKey)return;let t=v.get(y)??0,n=_[t];if(!n)return;let{node:r}=n,i=r.kind!==`test`,a=i&&o.has(r.key);switch(e.key){case`ArrowDown`:b(_[t+1]);break;case`ArrowUp`:b(_[t-1]);break;case`Home`:b(_[0]);break;case`End`:b(_[_.length-1]);break;case`ArrowRight`:i&&!a?x(r.key,!0):a&&b(_[t+1]);break;case`ArrowLeft`:a?x(r.key,!1):n.parentKey!==null&&b(_[v.get(n.parentKey)??-1]);break;case`Enter`:case` `:r.kind===`test`?qt({page:`test`,id:r.testId,repeatEachIndex:r.repeatEachIndex}):x(r.key,!a);break;default:return}e.preventDefault()},children:_.map(e=>{let{key:t}=e.node,n={ref:e=>{e?u.current.set(t,e):u.current.delete(t)},role:`treeitem`,"aria-level":e.level,"aria-setsize":e.siblings,"aria-posinset":e.position,tabIndex:t===y?0:-1,style:{"--level":e.level},onFocus:()=>l(t)};return e.node.kind===`test`?W(`li`,{...n,class:`tree-row tree-test`,"aria-selected":t===a,children:W(Bc,{node:e.node})},t):W(`li`,{...n,class:`tree-row tree-group tree-${e.node.kind}${t===p?` revealed`:``}`,"aria-expanded":o.has(t),children:W(Hc,{node:e.node,onToggle:()=>x(t,!o.has(t))})},t)})})]})}function Bc({node:e}){return W(`a`,{class:`row-content`,tabIndex:-1,href:V({page:`test`,id:e.testId,repeatEachIndex:e.repeatEachIndex}),children:[W(J,{outcome:e.outcome}),W(`span`,{class:`row-label`,children:e.title}),e.repeatEachIndex>0&&W(`span`,{class:`row-note`,children:[`repeat `,e.repeatEachIndex]})]})}function Vc({name:e,path:t}){let[n,r]=ui(e);return W(`span`,{class:`label-part file-name`,children:[W(`span`,{class:`name-head`,"aria-hidden":`true`,children:n}),r&&W(`span`,{class:`name-tail`,"aria-hidden":`true`,children:r}),W(`span`,{class:`visually-hidden`,children:t})]})}function Hc({node:e,onToggle:t}){let{counts:n}=e,r=[U(n.total,`test`),`${n.failed} failed`,...n.flaky>0?[`${n.flaky} flaky`]:[]].join(`, `),[i=``,...a]=e.labels,o=[e.kind===`folder`?`${e.path??i}/`:e.path??i,...a].join(` › `);return W(`div`,{class:`row-content`,onClick:t,children:[W(Y,{class:`chevron`}),W(`span`,{class:`row-label`,title:o,children:[e.kind===`file`?W(Vc,{name:i,path:e.path??i}):W(`span`,{class:`label-part`,children:i}),a.map((e,t)=>W(`span`,{class:`label-part`,children:e},t))]}),W(`span`,{class:`row-counts`,title:r,children:[W(`span`,{class:`visually-hidden`,children:r}),n.failed>0&&W(`span`,{class:`badge badge-failed`,"aria-hidden":`true`,children:n.failed}),W(`span`,{class:`row-total`,"aria-hidden":`true`,children:n.total})]})]})}var Uc=200,Wc=300;function Gc({page:e,route:t,children:n,class:r}){return W(`li`,{children:W(`a`,{class:`nav-link ${r??``}`,href:V({page:e}),"aria-current":t.page===e?`page`:void 0,children:n})})}function Kc(){let e=ni.value.q,[t,n]=k(e),r=M(null),i=M(void 0);j(()=>{e.trim()!==t.trim()&&(clearTimeout(i.current),n(e))},[e]),j(()=>{let e=e=>{e.key===`/`&&ho(e)&&(e.preventDefault(),R.value?r.current?.focus():(R.value=!0,setTimeout(()=>r.current?.focus(),0)))};return document.addEventListener(`keydown`,e),()=>{document.removeEventListener(`keydown`,e),clearTimeout(i.current)}},[]);let a=e=>ii({...ni.value,q:e},`replace`);return W(`div`,{class:`search-field`,children:[W(`label`,{for:`sidebar-search`,class:`visually-hidden`,children:`Search tests`}),W(ga,{}),W(`input`,{ref:r,id:`sidebar-search`,type:`search`,placeholder:`Search tests`,autoComplete:`off`,spellcheck:!1,"aria-keyshortcuts":`/`,value:t,onInput:e=>{let t=e.currentTarget.value;n(t),clearTimeout(i.current),i.current=setTimeout(()=>a(t),Uc)},onKeyDown:e=>{e.key===`Escape`&&t!==``&&(e.preventDefault(),clearTimeout(i.current),n(``),a(``))}}),W(`kbd`,{class:`search-key`,"aria-hidden":`true`,children:`/`})]})}function qc({matched:e,route:t}){let n=ni.value,r=vr(n);return W(`div`,{class:`filter-indicator`,"aria-live":t.page===`tests`?`off`:`polite`,children:r>0&&W(`p`,{children:[W(`span`,{children:U(r,`filter`)}),` · `,W(`a`,{href:V({page:`tests`}),children:U(e,`test`)}),W(`button`,{type:`button`,class:`text-button`,onClick:()=>ii(br(n)),children:`Clear`})]})})}function Jc({report:e,tree:t,prefix:n,matched:r,route:i,open:a}){let o=e.run.errors.length,s=vr(ni.value)>0;return W(`nav`,{id:`sidebar`,class:`sidebar`,"aria-label":`Report`,hidden:!a,children:[W(`div`,{class:`sidebar-search`,role:`search`,children:[W(Kc,{}),W(qc,{matched:r,route:i})]}),W(`ul`,{class:`nav-fixed`,children:[W(Gc,{page:`dashboard`,route:i,children:[W(da,{}),W(`span`,{children:`Overview`})]}),W(Gc,{page:`errors`,route:i,class:o>0?`nav-has-run-errors`:void 0,children:[W(pa,{}),W(`span`,{children:`Errors`}),o>0&&W(`span`,{class:`nav-marker`,title:U(o,`run error`),children:[W(fa,{}),W(`span`,{class:`badge badge-failed`,children:o}),W(`span`,{class:`visually-hidden`,children:[`, `,U(o,`run error`)]})]})]}),W(Gc,{page:`health`,route:i,children:[W(ma,{}),W(`span`,{children:`Suite health`})]}),W(Gc,{page:`tests`,route:i,children:[W(ha,{}),W(`span`,{children:`Tests`})]})]}),W(zc,{roots:t,route:i,prefix:n,expandAll:s&&r<=Wc,emptyMessage:e.tests.length===0?`No tests in this run.`:`No tests match the filters.`})]})}function Yc({report:e,settings:t}){let n=ni.value,r=N(()=>Pr(e.tests,n,$r.value),[e,_r({...n,sort:rr})]),i=N(()=>si(e.tests.map(e=>e.file)),[e]),a=N(()=>Wi({projects:e.projects,tests:r},{prefix:i}),[e,r,i]),o=N(()=>new Map(e.tests.map(e=>[Ii(e.id,e.repeatEachIndex),e])),[e]),s=N(()=>Wr(e.tests,e.projects.map(e=>e.name)),[e]),c=N(()=>qr(r,n.sort,s),[r,s,n.sort.column,n.sort.direction]),l=N(()=>un(e),[e]),u=N(()=>dn(l),[l]),d=N(()=>new Map(l.map(e=>[e.signature,e])),[l]),{route:f}=B.value,p=M(null);A(()=>{(f.page!==`errors`||f.category===void 0)&&p.current?.scrollTo(0,0),kt()&&(R.value=!1)},[JSON.stringify(f)]);let m;switch(f.page){case`dashboard`:m=W(jo,{report:e,groups:l,matched:c});break;case`errors`:m=W(so,{report:e,groups:l,category:f.category});break;case`health`:m=W(bo,{report:e});break;case`tests`:m=W(gc,{report:e,state:n,sorted:c});break;case`test`:m=W(Zs,{report:e,test:o.get(Ii(f.id,f.repeatEachIndex)),sequence:c,groups:d,settings:t});break;case`group`:m=W(yo,{report:e,groups:u,group:d.get(f.signature)});break;case`not-found`:m=W(_o,{})}return W(`div`,{class:`app ${R.value?`sidebar-open`:`sidebar-closed`}`,children:[W(Rc,{report:e,title:t.title}),W(`div`,{class:`layout`,children:[W(Jc,{report:e,tree:a,prefix:i,matched:r.length,route:f,open:R.value}),W(`main`,{class:`main`,ref:p,tabIndex:-1,children:[m,W(Cc,{version:e.generator.version})]})]}),W(Yo,{}),W(`p`,{class:`visually-hidden`,role:`status`,"aria-live":`polite`,children:[bt.value.text,bt.value.seq%2==1?`\xA0`:``]})]})}var Xc={title:`Loupe report`,theme:`system`,screenshots:{defaultView:`side-by-side`},aiPrompt:{includeStack:!0}};function Zc(e){return typeof e==`object`&&!!e&&!Array.isArray(e)}function Qc(e){let t;try{t=JSON.parse(e??``)}catch{return{ok:!1,message:`The report data is missing or is not valid JSON.`}}return Zc(t)?t.schemaVersion===1?!Zc(t.run)||!Array.isArray(t.tests)||!Array.isArray(t.projects)?{ok:!1,message:`The report data is incomplete: run, projects or tests is missing.`}:{ok:!0,report:t}:{ok:!1,message:`Unsupported report schema version ${JSON.stringify(t.schemaVersion)}: this renderer reads version 1.`}:{ok:!1,message:`The report data is not a Loupe report.`}}function $c(e){try{let t=JSON.parse(e??``);return Zc(t)?{...Xc,...t,screenshots:{...Xc.screenshots,...Zc(t.screenshots)?t.screenshots:{}},aiPrompt:{...Xc.aiPrompt,...Zc(t.aiPrompt)?t.aiPrompt:{}}}:Xc}catch{return Xc}}var el=$c(document.getElementById(`loupe-settings`)?.textContent);document.title=el.title,kc(el.theme);var tl=Qc(document.getElementById(`loupe-data`)?.textContent),nl=document.getElementById(`app`)??document.body;tl.ok&&ei(tl.report),ve(tl.ok?W(Yc,{report:tl.report,settings:el}):W(`div`,{class:`load-error`,role:`alert`,children:[W(`h1`,{children:`Loupe could not open this report`}),W(`p`,{children:tl.message})]}),nl);</script>
18
+ <style>@font-face{font-family:DM Sans;font-style:normal;font-weight:400;font-display:swap;src:url(data:font/woff2;base64,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)format("woff2")}@font-face{font-family:DM Sans;font-style:normal;font-weight:600;font-display:swap;src:url(data:font/woff2;base64,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)format("woff2")}:root{--bg:#f7f5f0;--bg-card:#fff;--bg-muted:#eeeae2;--fg:#111;--fg-secondary:#666;--border:#e8e4dc;--border-control:#8a857c;--status-passed:#3e6e51;--status-failed:#b3261e;--status-flaky:#6b4a05;--status-flaky-bg:#fbf0d9;--status-skipped:#666;--diff-expected:#1f6b3a;--diff-received:#b3261e;--chip-bg:#f2efe9;--chip-fg:#4a4741;--chip-border:#d6d1c7;--chip-active-bg:#3d3a35;--chip-active-fg:#fff;--shadow:0 8px 24px #1111111f;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}@media (prefers-color-scheme:dark){:root:not([data-theme=light]){--bg:#080808;--bg-card:#0d0d0d;--bg-muted:#161616;--fg:#f0ede8;--fg-secondary:#8a8a8a;--border:#262626;--border-control:#6b6b6b;--status-passed:#7da88a;--status-failed:#f28b82;--status-flaky:#f0cf8a;--status-flaky-bg:#1f1705;--status-skipped:#8a8a8a;--diff-expected:#7fc79a;--diff-received:#f28b82;--chip-bg:#1a1a1a;--chip-fg:#c4c0ba;--chip-border:#333;--chip-active-bg:#d9d5cf;--chip-active-fg:#0d0d0d;--shadow:0 8px 24px #0009;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}:root:not([data-theme=light]) .category-badge,:root:not([data-theme=light]) .category-bar{--cat-text:var(--cat-text-dark);--cat-bg:var(--cat-bg-dark);--cat-border:var(--cat-border-dark)}}:root[data-theme=dark]{--bg:#080808;--bg-card:#0d0d0d;--bg-muted:#161616;--fg:#f0ede8;--fg-secondary:#8a8a8a;--border:#262626;--border-control:#6b6b6b;--status-passed:#7da88a;--status-failed:#f28b82;--status-flaky:#f0cf8a;--status-flaky-bg:#1f1705;--status-skipped:#8a8a8a;--diff-expected:#7fc79a;--diff-received:#f28b82;--chip-bg:#1a1a1a;--chip-fg:#c4c0ba;--chip-border:#333;--chip-active-bg:#d9d5cf;--chip-active-fg:#0d0d0d;--shadow:0 8px 24px #0009;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}:root{--font-sans:"DM Sans", system-ui, -apple-system, "Segoe UI", Roboto, sans-serif;--font-mono:ui-monospace, SFMono-Regular, Menlo, Consolas, "Liberation Mono", monospace}.category-badge,.category-bar{--cat-text:var(--cat-text-light);--cat-bg:var(--cat-bg-light);--cat-border:var(--cat-border-light)}:root[data-theme=dark] .category-badge,:root[data-theme=dark] .category-bar{--cat-text:var(--cat-text-dark);--cat-bg:var(--cat-bg-dark);--cat-border:var(--cat-border-dark)}*{box-sizing:border-box}html,body{height:100%}body{background:var(--bg);color:var(--fg);font:14px/1.5 var(--font-sans);margin:0}#app{height:100%}a{color:var(--fg);text-decoration:underline;-webkit-text-decoration-color:var(--border-control);text-decoration-color:var(--border-control);text-underline-offset:2px}a:hover{text-decoration-color:currentColor}:focus-visible{outline:2px solid var(--fg);outline-offset:2px}code,pre,kbd{font-family:var(--font-mono);font-size:12.5px}h1,h2,h3,strong,b{font-weight:600}[hidden]{display:none!important}.visually-hidden{clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.muted{color:var(--fg-secondary)}.icon{flex:none;display:block}.app{flex-direction:column;height:100%;display:flex}.layout{flex:1;min-height:0;display:flex;position:relative}.main{flex-direction:column;flex:1;min-width:0;display:flex;overflow:auto}.main:focus{outline:none}.main>.page{flex:1}.header{border-bottom:1px solid var(--border);background:var(--bg-card);grid-template-columns:minmax(0,1fr) auto;align-items:start;gap:8px 16px;padding:8px 16px;display:grid}.header-main{flex-wrap:wrap;align-items:center;gap:8px 20px;min-width:0;min-height:30px;display:flex}.header-identity{align-items:center;gap:8px 12px;min-width:0;display:flex}.header-name{align-items:center;gap:8px;min-width:0;display:flex}.header-identity .run-status{flex:none}@media (width<=440px){.header-identity{flex-wrap:wrap}}.brand{align-items:baseline;gap:10px;min-width:0;display:flex}.wordmark{color:var(--status-passed);letter-spacing:-.01em;font-size:18px;font-weight:600}.header .title{min-width:0;color:inherit;text-overflow:ellipsis;white-space:nowrap;font-size:15px;font-weight:600;text-decoration:none;overflow:hidden}.header .title:hover{text-decoration:underline}.run-status{border:1px solid;border-radius:999px;align-items:center;gap:4px;padding:1px 8px 1px 4px;font-size:12px;font-weight:600;display:inline-flex}.run-passed{color:var(--status-passed)}.run-failed,.run-timedout,.run-interrupted{color:var(--status-failed)}.counts{flex-wrap:wrap;gap:4px 12px;margin:0;padding:0;list-style:none;display:flex}.count{font-variant-numeric:tabular-nums;align-items:center;gap:4px;font-weight:600;display:flex}.count.zero{font-weight:400}.count.zero .outcome-icon{color:var(--fg-secondary)}.count-link{color:inherit;border-radius:4px;align-items:center;gap:4px;margin:-2px -4px;padding:2px 4px;text-decoration:none;display:flex}.count-link:hover{background:var(--bg-muted)}.count-link:hover .count-value{text-decoration:underline}.run-meta{color:var(--fg-secondary);flex-wrap:wrap;gap:4px 16px;margin:0;font-size:13px;display:flex}.run-meta div{gap:4px;min-width:0;display:flex}.run-meta dt:after{content:":"}.run-meta dd{color:var(--fg);text-overflow:ellipsis;white-space:nowrap;margin:0;overflow:hidden}.run-time{position:relative}.run-time dd{white-space:normal;overflow:visible}.run-time time{-webkit-text-decoration:underline dotted var(--border-control);text-decoration:underline dotted var(--border-control);text-underline-offset:3px;cursor:help;border-radius:2px}.run-time-details{z-index:20;border:1px solid var(--border-control);background:var(--bg-card);box-shadow:var(--shadow);color:var(--fg);white-space:nowrap;border-radius:6px;flex-direction:column;gap:2px;margin-top:4px;padding:8px 10px;font-size:13px;display:none;position:absolute;top:100%;left:0}.run-time-details:before{content:"";height:6px;position:absolute;bottom:100%;left:0;right:0}.run-time:hover .run-time-details,.run-time:focus-within .run-time-details{display:flex}.run-time .run-time-details.dismissed{display:none}.header-tools{align-items:center;gap:8px;display:flex}.theme-switch{border:1px solid var(--border-control);border-radius:6px;display:flex}.theme-switch .icon-button{border-radius:0}.theme-switch .icon-button:first-child{border-radius:5px 0 0 5px}.theme-switch .icon-button:last-child{border-radius:0 5px 5px 0}.theme-switch [aria-pressed=true]{background:var(--bg-muted);color:var(--fg)}.icon-button{width:30px;height:30px;color:var(--fg-secondary);cursor:pointer;background:0 0;border:0;border-radius:6px;justify-content:center;align-items:center;padding:0;display:inline-flex}.icon-button:hover{background:var(--bg-muted);color:var(--fg)}.text-button{color:var(--fg-secondary);font:inherit;cursor:pointer;background:0 0;border:0;border-radius:4px;padding:2px 6px;font-size:12px}.text-button:hover{background:var(--bg-card);color:var(--fg)}.banner{border-bottom:1px solid var(--border);background:var(--status-flaky-bg);color:var(--status-flaky);align-items:flex-start;gap:8px;padding:8px 16px;display:flex}.banner .icon{margin-top:2px}.banner p{margin:0}.outcome-icon{align-items:center;gap:6px;display:inline-flex}.outcome-passed{color:var(--status-passed)}.outcome-failed{color:var(--status-failed)}.outcome-flaky{color:var(--status-flaky)}.outcome-skipped{color:var(--status-skipped)}.outcome-text{font-weight:600}.badge{text-align:center;font-variant-numeric:tabular-nums;border-radius:999px;min-width:20px;padding:0 6px;font-size:12px;font-weight:600;line-height:16px;display:inline-block}.badge-failed{color:var(--status-failed);border:1px solid}.category-badge{border:1px solid var(--cat-border);background:var(--cat-bg);max-width:100%;color:var(--cat-text);white-space:nowrap;text-overflow:ellipsis;border-radius:999px;align-items:center;padding:0 8px;font-size:12px;font-weight:600;line-height:20px;display:inline-flex;overflow:hidden}.sidebar{border-right:1px solid var(--border);background:var(--bg-muted);flex-direction:column;flex:none;width:340px;max-width:85vw;display:flex;overflow:auto}.nav-fixed{border-bottom:1px solid var(--border);margin:0;padding:8px;list-style:none}.nav-link{color:inherit;border-radius:6px;align-items:center;gap:8px;padding:4px 8px;text-decoration:none;display:flex}.nav-link:hover{background:var(--bg-card)}.nav-link[aria-current=page]{background:var(--bg-card);box-shadow:inset 3px 0 0 var(--fg);font-weight:600}.nav-link .icon{color:var(--fg-secondary)}.nav-marker{align-items:center;gap:4px;margin-left:auto;display:inline-flex}.nav-marker .icon{color:var(--status-failed)}.sidebar-search{z-index:2;border-bottom:1px solid var(--border);background:var(--bg-muted);padding:8px 8px 0;position:sticky;top:0}.search-field{align-items:center;margin-bottom:8px;display:flex;position:relative}.search-field>.icon{color:var(--fg-secondary);pointer-events:none;position:absolute;left:8px}.search-field input{border:1px solid var(--border-control);background:var(--bg-card);width:100%;min-height:32px;color:var(--fg);font:inherit;border-radius:6px;padding:4px 30px}.search-field input::placeholder{color:var(--fg-secondary);opacity:1}.search-field input:focus-visible{outline-offset:0}.search-key{border:1px solid var(--border-control);color:var(--fg-secondary);pointer-events:none;border-radius:4px;padding:0 5px;font-size:11px;line-height:16px;position:absolute;right:8px}.search-field input:focus~.search-key,.search-field input:not(:placeholder-shown)~.search-key{display:none}.filter-indicator p{color:var(--fg-secondary);flex-wrap:wrap;align-items:center;gap:4px;margin:-2px 0 8px;padding:0 4px;font-size:13px;display:flex}.filter-indicator a{color:var(--fg);font-weight:600}.filter-indicator .text-button{text-decoration:underline;-webkit-text-decoration-color:var(--border-control);text-decoration-color:var(--border-control);text-underline-offset:2px;margin-left:auto}.tree-section{padding:8px 0}.tree-toolbar{align-items:center;gap:2px;padding:0 8px 4px 16px;display:flex}.tree-toolbar h2{color:var(--fg-secondary);text-transform:uppercase;letter-spacing:.04em;flex:1;margin:0;font-size:12px;font-weight:600}.tree-empty{color:var(--fg-secondary);padding:0 16px}.tree-prefix{color:var(--fg-secondary);font-family:var(--font-mono);text-overflow:ellipsis;white-space:nowrap;margin:0 16px 4px;font-size:12px;overflow:hidden}.tree{margin:0;padding:0 8px;list-style:none}.tree-row{outline-offset:-2px;border-radius:6px}.row-content{min-height:28px;padding:2px 8px 2px calc((var(--level) - 1) * 16px + 8px);color:inherit;cursor:pointer;align-items:center;gap:6px;text-decoration:none;display:flex}.tree-row:hover{background:var(--bg-card)}.tree-test[aria-selected=true],.tree-row.revealed{background:var(--bg-card);box-shadow:inset 3px 0 0 var(--fg)}.tree-test[aria-selected=true]{font-weight:600}.chevron{color:var(--fg-secondary);transition:transform .1s}.tree-group[aria-expanded=true]>.row-content .chevron{transform:rotate(90deg)}.tree-project>.row-content{font-weight:600}.row-label{text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;overflow:hidden}.tree-group .row-label{display:flex}.tree-group .label-part{text-overflow:ellipsis;white-space:pre;flex:0 auto;min-width:0;overflow:hidden}.label-part+.label-part:before{content:" › ";color:var(--fg-secondary)}.tree-group .file-name{display:flex}.tree-group .label-part+.label-part{flex-shrink:8}.name-head{text-overflow:ellipsis;min-width:0;overflow:hidden}.name-tail{flex:none}.row-note{color:var(--fg-secondary);font-size:12px;font-weight:400}.row-counts{flex:none;align-items:center;gap:6px;display:flex}.row-total{min-width:20px;color:var(--fg-secondary);text-align:right;font-variant-numeric:tabular-nums;font-size:12px}.page{padding:24px}.page h1{margin:0 0 12px;font-size:22px;line-height:1.3}.breadcrumb{color:var(--fg-secondary);overflow-wrap:anywhere;margin:0 0 4px;font-size:13px}.test-title{overflow-wrap:anywhere}pre.message{background:var(--bg-muted);white-space:pre-wrap;overflow-wrap:anywhere;border-radius:6px;margin:0;padding:8px 12px;overflow:auto}.run-errors{flex-direction:column;gap:16px;margin:0;padding:0;list-style:none;display:flex}.run-error{border:1px solid var(--border);border-left:3px solid var(--status-failed);background:var(--bg-card);border-radius:6px;padding:12px 16px}.run-error-meta{color:var(--fg-secondary);flex-wrap:wrap;align-items:center;gap:4px 12px;font-size:13px;display:flex}.run-error pre{background:var(--bg-muted);white-space:pre-wrap;overflow-wrap:anywhere;border-radius:6px;margin:8px 0 0;padding:8px 12px;overflow:auto}.run-error details{margin-top:8px}.run-error summary{color:var(--fg-secondary);cursor:pointer}.load-error{max-width:640px;margin:48px auto;padding:0 16px}.load-error h1{color:var(--status-failed);font-size:20px}.page{container-type:inline-size}.view{flex-direction:column;gap:16px;display:flex}.view>*,.view h1{max-width:1280px}.view>h1{margin-bottom:0}.widget{border:1px solid var(--border);background:var(--bg-card);border-radius:8px;min-width:0;padding:16px}.widget>h2{margin:0 0 12px;font-size:15px;line-height:1.3}.widget-note{color:var(--fg-secondary);margin:-8px 0 12px;font-size:13px}.widget-hint{color:var(--fg-secondary);margin:12px 0 0;font-size:13px}.widget-list{flex-direction:column;margin:0;padding:0;list-style:none;display:flex}.widget-list>li{border-top:1px solid var(--border)}.widget-list>li:first-child{border-top:0}.widget-more{margin:8px 0 0}.run-details{grid-template-columns:repeat(auto-fit,minmax(min(100%,240px),1fr));gap:16px 32px;font-size:13px;display:grid}.run-details-group h3{color:var(--fg-secondary);text-transform:uppercase;letter-spacing:.04em;margin:0 0 6px;font-size:12px;font-weight:600}.run-details dl{flex-direction:column;gap:6px;margin:0;display:flex}.run-details dl>div{grid-template-columns:84px minmax(0,1fr);align-items:baseline;gap:12px;display:grid}.run-details dt{color:var(--fg-secondary)}.run-details dd{overflow-wrap:anywhere;flex-wrap:wrap;align-items:baseline;gap:4px 8px;min-width:0;margin:0;display:flex}.run-details .copy-button{min-height:0;padding:1px 6px;font-size:12px;line-height:16px}.widget-grid{grid-template-columns:repeat(auto-fit,minmax(max(380px,50% - 8px),1fr));align-items:start;gap:16px;display:grid}.widget-grid>:last-child:nth-child(odd){grid-column:1/-1}@container (width<=900px){.widget-grid{grid-template-columns:minmax(0,1fr)}}.verdict{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px 32px;display:flex}.verdict-outcome{align-items:center;gap:10px;margin:0;font-size:22px;font-weight:600;display:flex}.verdict-outcome .icon{width:28px;height:28px}.verdict-outcome.outcome-flaky{background:var(--status-flaky-bg);border-radius:8px;padding:2px 12px 2px 8px}.verdict-meta{color:var(--fg-secondary);font-variant-numeric:tabular-nums;margin:0}.verdict-meta strong{color:var(--fg)}.outcome-bar{border-radius:5px;gap:2px;height:10px;margin:12px 0 8px;display:flex;overflow:hidden}.outcome-bar-part{flex-basis:0;min-width:4px}.bar-passed{background:var(--status-passed)}.bar-failed{background:var(--status-failed)}.bar-flaky{background:var(--status-flaky)}.bar-skipped{background:var(--status-skipped)}.outcome-legend{color:var(--fg-secondary);font-variant-numeric:tabular-nums;flex-wrap:wrap;gap:4px 16px;margin:0;padding:0;font-size:13px;list-style:none;display:flex}.outcome-legend li{align-items:center;gap:4px;display:flex}.widget-run-errors{border-left:3px solid var(--status-failed)}.widget-run-errors h2{align-items:center;gap:8px;display:flex}.widget-run-errors h2 .icon{color:var(--status-failed)}.widget-run-errors .widget-list code{text-overflow:ellipsis;white-space:nowrap;display:block;overflow:hidden}.widget-run-errors .widget-list li{padding:6px 0}.group-row{color:inherit;flex-direction:column;gap:2px;padding:8px 4px;text-decoration:none;display:flex}.group-row:hover{background:var(--bg-muted)}.group-row-head{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:4px 12px;display:flex}.group-test{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.group-row:hover .group-test{text-decoration:underline}.group-message{color:var(--fg-secondary);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.group-count{font-variant-numeric:tabular-nums;white-space:nowrap;font-weight:600}.group-split{font-variant-numeric:tabular-nums;white-space:nowrap;flex-wrap:wrap;gap:4px 12px;font-weight:600;display:inline-flex}.group-split-part{align-items:center;gap:4px;display:inline-flex}.group-row-counts{flex-wrap:wrap;align-items:center;gap:4px 10px;margin-left:auto;display:inline-flex}.group-attempts{color:var(--fg-secondary);font-variant-numeric:tabular-nums;white-space:nowrap;font-size:13px}.point-row{color:inherit;flex-direction:column;gap:4px;padding:8px 4px;text-decoration:none;display:flex}.point-row:hover{background:var(--bg-muted)}.point-fn{overflow-wrap:anywhere;font-weight:600}.point-row:hover .point-fn{text-decoration:underline}.point-where,.point-via{color:var(--fg-secondary);overflow-wrap:anywhere;font-size:13px}.point-counts{flex-wrap:wrap;align-items:center;gap:4px 12px;font-size:13px;display:flex}.point-counts .group-count{white-space:normal}.point-categories{flex-wrap:wrap;gap:4px;display:flex}.facet-point code{font-size:12.5px}.facet-point-file{color:var(--fg-secondary);font-size:12px}.category-bars{grid-template-columns:minmax(0,max-content) minmax(40px,1fr) auto;display:grid}.category-bars>li{grid-column:1/-1;grid-template-columns:subgrid;display:grid}.category-bar-row{grid-column:1/-1;grid-template-columns:subgrid;color:inherit;align-items:center;gap:8px;padding:6px 4px;text-decoration:none;display:grid}.category-bar-row:hover{background:var(--bg-muted)}.category-bar-row .category-badge{justify-self:start}.category-bar-track{height:8px;display:block}.category-bar{background:var(--cat-border);border-radius:4px;min-width:4px;height:100%;display:block}.category-list>li>details>summary{cursor:pointer;align-items:center;gap:8px;padding:8px 4px;list-style:none;display:flex}.category-list>li>details>summary::-webkit-details-marker{display:none}.category-list>li>details>summary:hover{background:var(--bg-muted)}.category-list summary .chevron{transition:transform .1s}.category-list details[open]>summary .chevron{transform:rotate(90deg)}.category-list summary .group-count{margin-left:auto}.category-list .widget-list{margin:0 0 8px 28px}.after-timeout{border-top:1px solid var(--border);margin-top:4px}.after-timeout>summary{color:var(--fg-secondary);cursor:pointer;align-items:center;gap:8px;padding:8px 4px;font-size:13px;list-style:none;display:flex}.after-timeout>summary::-webkit-details-marker{display:none}.after-timeout>summary:hover{background:var(--bg-muted);color:var(--fg)}.after-timeout>summary .chevron{transition:transform .1s}.after-timeout[open]>summary .chevron{transform:rotate(90deg)}.after-timeout>.widget-note{margin:0 0 4px 28px}.after-timeout>.widget-list{margin:0 0 8px 28px}.category-list .after-timeout{margin-left:28px}.group-note{color:var(--fg-secondary);margin:-4px 0 16px}.error-secondary{border:1px solid var(--border-control);background:var(--chip-bg);color:var(--chip-fg);border-radius:999px;padding:0 8px;font-size:12px;line-height:20px}.project-cards{flex-wrap:wrap;gap:12px;margin:0;padding:0;list-style:none;display:flex}.project-cards>li{flex:240px;min-width:0}.project-card{border:1px solid var(--border-control);background:var(--bg-card);width:100%;height:100%;color:inherit;font:inherit;text-align:left;cursor:pointer;border-radius:8px;flex-direction:column;gap:6px;padding:12px;display:flex}.project-card:hover{background:var(--bg-muted)}.project-name{text-overflow:ellipsis;white-space:nowrap;font-weight:600;overflow:hidden}.project-card .counts{flex-wrap:wrap;font-size:13px}.project-meta{color:var(--fg-secondary);font-size:13px}.data-table{border-collapse:collapse;font-variant-numeric:tabular-nums;width:100%}.data-table th,.data-table td{border-top:1px solid var(--border);text-align:right;vertical-align:top;padding:6px 8px}.data-table thead th{color:var(--fg-secondary);border-top:0;font-size:12px;font-weight:600}.data-table thead th .outcome-icon{justify-content:flex-end}.data-table th:first-child,.data-table td:first-child{text-align:left}.data-table .zero{color:var(--fg-secondary)}.data-table tbody th{overflow-wrap:anywhere;font-weight:400}.dimension-bars{grid-template-columns:minmax(0,max-content) minmax(60px,1fr) auto auto;align-items:center;gap:0 12px;margin:0;padding:0;list-style:none;display:grid}.dimension-bar-row{grid-column:1/-1;grid-template-columns:subgrid;border-top:1px solid var(--border);align-items:center;padding:6px 0;display:grid}.dimension-bar-row:first-child{border-top:0}.dimension-value-cell{overflow-wrap:anywhere;min-width:0}a.dimension-value{font-weight:600}.dimension-bar{height:10px;margin:0}.dimension-bar:empty{background:var(--bg-muted)}.dimension-bar-counts{justify-content:flex-end;gap:10px;font-size:13px;display:flex}.dimension-bar-counts .count{font-weight:600}.dimension-total{min-width:28px;color:var(--fg-secondary);text-align:right;font-variant-numeric:tabular-nums;font-size:13px}.tile-summary{margin:0 0 10px;font-size:13px}.dimension-tiles{grid-template-columns:repeat(auto-fill,minmax(140px,1fr));gap:6px;margin:0;padding:0;list-style:none;display:grid}.dimension-tiles>li{min-width:0;display:flex}.dimension-tile{color:inherit;border:1px solid var(--border);border-left:4px solid var(--tile-color);background:var(--bg-card);cursor:pointer;border-radius:6px;flex:1;align-items:center;gap:6px;min-width:0;padding:6px 8px;font-size:13px;text-decoration:none;display:flex;position:relative}span.dimension-tile{cursor:default}.dimension-tile:hover,.dimension-tile:focus-visible{background:var(--bg-muted)}.tile-failed{--tile-color:var(--status-failed)}.tile-flaky{--tile-color:var(--status-flaky);background:var(--status-flaky-bg)}.tile-passed{--tile-color:var(--status-passed)}.tile-skipped,.tile-none{--tile-color:var(--status-skipped)}.tile-failed .tile-value,.tile-flaky .tile-value{font-weight:600}.tile-value{text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;overflow:hidden}.tile-icon-none{border:1.4px dashed var(--status-skipped);border-radius:50%;flex:none;width:16px;height:16px}.tile-flag{color:var(--status-flaky)}.tile-details{z-index:5;border:1px solid var(--border-control);background:var(--bg-card);min-width:180px;max-width:280px;box-shadow:var(--shadow);color:var(--fg);overflow-wrap:anywhere;border-radius:6px;flex-direction:column;gap:2px;padding:8px 10px;font-weight:400;display:none;position:absolute;bottom:calc(100% + 6px);left:0}.tooltip-open .tile-details{display:flex}.tile-details:after{content:"";height:8px;position:absolute;top:100%;left:0;right:0}.tile-note{color:var(--status-flaky)}.dimension-table{margin-top:12px}.dimension-table>summary{color:var(--fg-secondary);cursor:pointer;align-items:center;gap:4px;font-size:13px;list-style:none;display:inline-flex}.dimension-table>summary::-webkit-details-marker{display:none}.dimension-table>summary:hover{color:var(--fg)}.dimension-table[open]>summary .chevron{transform:rotate(90deg)}.dimension-table>.data-table{margin-top:8px}.pass-rate{cursor:help}.pass-rate strong{color:var(--fg)}.hygiene-flag{color:var(--status-flaky);align-items:center;gap:4px;margin-top:2px;font-size:12px;display:flex}.test-line{align-items:center;gap:8px;padding:6px 0;display:flex}.test-line .test-text{flex:1;min-width:0}.test-line .test-text a{overflow-wrap:anywhere}.test-line .test-where{color:var(--fg-secondary);text-overflow:ellipsis;white-space:nowrap;font-size:12px;display:block;overflow:hidden}.test-line .duration{font-variant-numeric:tabular-nums;flex:none}.flaky-error{align-items:center;gap:8px;min-width:0;margin-top:2px;display:flex}.flaky-error code{color:var(--fg-secondary);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.group-meta{flex-wrap:wrap;align-items:center;gap:8px 16px;margin:0 0 16px;display:flex}.group-meta div{align-items:center;gap:6px;display:flex}.group-meta dt{color:var(--fg-secondary)}.group-meta dd{margin:0}.group-page h2{margin:24px 0 8px;font-size:16px}.affected-tests{border-collapse:collapse;width:100%}.affected-tests th,.affected-tests td{border-top:1px solid var(--border);text-align:left;vertical-align:top;overflow-wrap:anywhere;padding:6px 8px}.affected-tests thead th{color:var(--fg-secondary);border-top:0;font-size:12px;font-weight:600}.affected-tests .test-cell{align-items:flex-start;gap:6px;display:flex}.filter-bar{flex-direction:column;gap:10px;display:flex}.facets{flex-wrap:wrap;gap:8px;display:flex}.facet{position:relative}.facet-button{border:1px solid var(--border-control);background:var(--bg-card);cursor:pointer;border-radius:6px;align-items:center;gap:6px;min-height:32px;padding:4px 8px 4px 12px;list-style:none;display:inline-flex}.facet-button::-webkit-details-marker{display:none}.facet-button:hover{background:var(--bg-muted)}.facet-button .chevron{transition:transform .1s;transform:rotate(90deg)}.facet[open]>.facet-button .chevron{transform:rotate(-90deg)}.facet-selected{background:var(--fg);min-width:20px;color:var(--bg-card);text-align:center;font-variant-numeric:tabular-nums;border-radius:999px;padding:0 6px;font-size:12px;font-weight:600;line-height:18px}.facet-menu{z-index:15;border:1px solid var(--border-control);background:var(--bg-card);min-width:220px;max-width:min(360px,90vw);max-height:360px;box-shadow:var(--shadow);border-radius:6px;flex-direction:column;margin:0;padding:4px;display:flex;position:absolute;top:calc(100% + 4px);left:0;overflow:auto}.facet-option{cursor:pointer;border-radius:4px;align-items:center;gap:8px;min-height:30px;padding:2px 8px;display:flex}.facet-option:hover{background:var(--bg-muted)}.facet-option input{width:16px;height:16px;accent-color:var(--fg);flex:none;margin:0}.facet-option .facet-value,.facet-option .category-badge{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.facet-count{color:var(--fg-secondary);font-variant-numeric:tabular-nums;margin-left:auto;padding-left:12px;font-size:12px}.facet-option-empty>:not(input):not(.facet-count){opacity:.7}.filter-chips{flex-wrap:wrap;align-items:center;gap:6px;display:flex}.filter-chips ul{display:contents}.filter-chips li{list-style:none;display:flex}.chip{border:1px solid var(--border-control);background:var(--bg-muted);max-width:320px;color:var(--fg);font:inherit;cursor:pointer;border-radius:999px;align-items:center;gap:4px;padding:2px 6px 2px 10px;font-size:13px;display:inline-flex}.chip span{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.chip .icon{color:var(--fg-secondary)}.chip:hover .icon{color:var(--fg)}.result-count{color:var(--fg-secondary);font-variant-numeric:tabular-nums;margin:0}.empty-state{border:1px dashed var(--border-control);border-radius:8px;flex-direction:column;align-items:flex-start;gap:8px;padding:24px;display:flex}.empty-state p{margin:0}.button{border:1px solid var(--border-control);background:var(--bg-card);min-height:32px;color:var(--fg);font:inherit;cursor:pointer;border-radius:6px;padding:4px 12px}.button:hover{background:var(--bg-muted)}.view-tests>.table-scroll{max-width:none}.table-scroll{border:1px solid var(--border);background:var(--bg-card);border-radius:8px;overflow-x:auto}.tests-table{border-collapse:collapse;width:100%;font-size:13px}.tests-table th,.tests-table td{border-top:1px solid var(--border);text-align:left;vertical-align:top;padding:6px 10px}.tests-table thead th{background:var(--bg-card);white-space:nowrap;border-top:0;position:sticky;top:0}.tests-table .numeric{text-align:right;font-variant-numeric:tabular-nums;white-space:nowrap}.tests-table tbody tr:hover{background:var(--bg-muted)}.tests-table .outcome-icon{white-space:nowrap}.cell-title{overflow-wrap:anywhere;min-width:240px}.skip-line{width:0;min-width:100%;color:var(--fg-secondary);text-overflow:ellipsis;white-space:nowrap;font-size:12px;display:block;overflow:hidden}.cell-project{white-space:nowrap}.category-badges{flex-wrap:wrap;align-items:center;gap:4px;display:flex}.category-more{color:var(--fg-secondary);cursor:help;font-size:12px;font-weight:600}.test-chips{flex-wrap:wrap;gap:4px;margin-top:4px;display:flex}.test-chip{border:1px solid var(--chip-border);background:var(--chip-bg);max-width:100%;color:var(--chip-fg);overflow-wrap:anywhere;border-radius:4px;align-items:center;gap:2px;padding:0 6px;font-size:12px;line-height:18px;text-decoration:none;display:inline-flex}.test-chip:hover{border-color:var(--border-control);color:var(--fg)}.test-chip-active,.test-chip-active:hover{border-color:var(--chip-active-bg);background:var(--chip-active-bg);color:var(--chip-active-fg)}.test-chip .icon{flex:none;width:12px;height:12px}.test-chip-more{color:var(--fg-secondary);font:inherit;cursor:pointer;background:0 0;border:1px solid #0000;border-radius:4px;padding:0 6px;font-size:12px;line-height:18px}.test-chip-more:hover{border-color:var(--chip-border);color:var(--fg)}.table-more{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.table-more p{color:var(--fg-secondary);font-variant-numeric:tabular-nums;margin:0 8px 0 0}.sort-button{color:var(--fg-secondary);font:inherit;cursor:pointer;background:0 0;border:0;border-radius:4px;align-items:center;gap:2px;margin:-2px -4px;padding:2px 4px;font-size:12px;font-weight:600;display:inline-flex}.numeric .sort-button{flex-direction:row-reverse}.sort-button:hover{background:var(--bg-muted);color:var(--fg)}[aria-sort]>.sort-button{color:var(--fg)}.sort-idle{opacity:.5}.copy-button{align-items:center;gap:6px;display:inline-flex}.copy-button .icon,.copy-done{color:var(--fg-secondary)}.rerun-failed{flex-wrap:wrap;align-items:center;gap:4px 12px;display:flex}.rerun-note{color:var(--fg-secondary);margin:0;font-size:13px}.widget-verdict .rerun-failed{margin-top:12px}.pager{flex-wrap:wrap;align-items:center;gap:8px;margin-bottom:16px;display:flex}.pager-button{align-items:center;gap:4px;display:inline-flex}.pager-button:disabled{color:var(--fg-secondary);cursor:default}.pager-button:disabled:hover{background:var(--bg-card)}.pager-position{color:var(--fg-secondary);font-variant-numeric:tabular-nums}.chevron-back{transform:rotate(180deg)}.test-page{flex-direction:column;max-width:1280px;display:flex}.test-header{flex-direction:column;gap:10px;display:flex}.test-header h1{margin:0}.title-suite{color:var(--fg-secondary);font-weight:400}.test-summary{flex-wrap:wrap;align-items:center;gap:4px 16px;display:flex}.test-summary code,.detail-skip{overflow-wrap:anywhere}.skip-explanation{color:var(--fg-secondary);margin:0;font-size:13px}.test-meta{flex-wrap:wrap;gap:6px 24px;margin:0;font-size:13px;display:flex}.test-meta div{align-items:baseline;gap:6px;display:flex}.test-meta dt{color:var(--fg-secondary)}.test-meta dd{margin:0}.chips{flex-wrap:wrap;gap:4px;margin:0;padding:0;list-style:none;display:flex}.tag{border:1px solid var(--border-control);background:var(--bg-card);overflow-wrap:anywhere;border-radius:999px;padding:0 8px;font-size:12px;line-height:20px}.test-actions{flex-wrap:wrap;gap:8px;display:flex}.attempt-tabs{border-bottom:1px solid var(--border-control);flex-wrap:wrap;gap:4px;margin-top:20px;display:flex}.attempt-tab{color:var(--fg-secondary);font:inherit;cursor:pointer;background:0 0;border:1px solid #0000;border-radius:6px 6px 0 0;align-items:center;gap:6px;margin-bottom:-1px;padding:6px 12px;display:inline-flex}.attempt-tab:hover{background:var(--bg-muted);color:var(--fg)}.attempt-tab[aria-selected=true]{border-color:var(--border-control) var(--border-control) var(--bg);background:var(--bg);color:var(--fg);font-weight:600}.attempt-duration{color:var(--fg-secondary);font-variant-numeric:tabular-nums;font-size:12px;font-weight:400}.attempt-panel{flex-direction:column;gap:16px;margin-top:16px;display:flex}.detail-section{border:1px solid var(--border);background:var(--bg-card);border-radius:8px;flex-direction:column;gap:10px;min-width:0;padding:16px;display:flex}.detail-section h2{margin:0;font-size:15px}.section-head{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px;display:flex}.toggle-button[aria-pressed=true]{background:var(--bg-muted);box-shadow:inset 0 0 0 1px var(--fg)}.error-card{border:1px solid var(--border);border-left:3px solid var(--status-failed);border-radius:6px;flex-direction:column;gap:8px;padding:12px;display:flex}.error-head{flex-wrap:wrap;align-items:center;gap:4px 12px;font-size:13px;display:flex}.error-location{color:var(--fg-secondary);overflow-wrap:anywhere}.error-group-link{margin-left:auto}pre.code-snippet,pre.stack,.output-block pre,.attachment-body pre{background:var(--bg-muted);border-radius:6px;margin:0;padding:8px 12px;overflow:auto}pre.stack,.output-block pre,.attachment-body pre{white-space:pre-wrap;overflow-wrap:anywhere}.tone-expected{color:var(--diff-expected)}.tone-received{color:var(--diff-received)}.tone-marker{color:var(--status-failed);font-weight:600}.tone-strong{font-weight:600}.stack-details>summary,.attachment-body>summary,.output-block>summary{color:var(--fg-secondary);cursor:pointer;flex-wrap:wrap;align-items:center;gap:6px;list-style:none;display:inline-flex}.stack-details>summary::-webkit-details-marker{display:none}.attachment-body>summary::-webkit-details-marker{display:none}.output-block>summary::-webkit-details-marker{display:none}.stack-details>summary:hover,.attachment-body>summary:hover,.output-block>summary:hover{color:var(--fg)}.stack-details[open]>summary .chevron,.attachment-body[open]>summary .chevron,.output-block[open]>summary .chevron{transform:rotate(90deg)}.stack-details>pre,.attachment-body>pre,.output-block>pre{margin-top:6px}.step-list{margin:0;padding:0;list-style:none}.step-list .step-list{border-left:1px solid var(--border);margin-left:22px;padding-left:0}.step-row{border-radius:4px;align-items:center;gap:6px;min-height:28px;padding:2px 6px 2px 2px;display:flex}.step-row:hover{background:var(--bg-muted)}.step-failing-path>.step-row{box-shadow:inset 3px 0 0 var(--status-failed)}.step-failing>.step-row{background:var(--bg-muted);font-weight:600}.step-toggle{width:22px;height:22px;color:var(--fg-secondary);cursor:pointer;background:0 0;border:0;border-radius:4px;flex:none;justify-content:center;align-items:center;padding:0;display:inline-flex}.step-toggle:hover{background:var(--bg-card);color:var(--fg)}.step-toggle[aria-expanded=true] .chevron{transform:rotate(90deg)}.step-toggle-space{flex:none;width:22px}.step-icon-space{flex:none;width:16px}.step-text{overflow-wrap:anywhere;flex:1;min-width:0}.step-subtitle{color:var(--fg-secondary);font-family:var(--font-mono);font-size:12.5px;font-weight:400}.step-category{border:1px solid var(--border-control);color:var(--fg-secondary);white-space:nowrap;border-radius:4px;margin-left:8px;padding:0 6px;font-size:11px;font-weight:400}.step-location{max-width:40%;color:var(--fg-secondary);text-overflow:ellipsis;white-space:nowrap;flex:none;font-weight:400;overflow:hidden}.step-duration{min-width:56px;color:var(--fg-secondary);text-align:right;font-variant-numeric:tabular-nums;flex:none;font-size:12px;font-weight:400}pre.step-error{margin:2px 0 6px 50px;font-weight:400}.attachment-groups{flex-direction:column;gap:12px;display:flex}.attachment-group h3{margin:0 0 4px;font-size:13px}.attachment-list{flex-direction:column;gap:4px;margin:0;padding:0;list-style:none;display:flex}.attachment-file{flex-wrap:wrap;align-items:baseline;gap:4px 10px;display:flex}.attachment-name{overflow-wrap:anywhere}.attachment-body .attachment-name{color:var(--fg)}.attachment-meta{color:var(--fg-secondary);font-size:12px}.thumbs{flex-wrap:wrap;gap:12px;margin:0;padding:0;list-style:none;display:flex}.thumb{border:1px solid var(--border);background:var(--bg-card);width:184px;color:var(--fg);font:inherit;cursor:zoom-in;border-radius:8px;flex-direction:column;gap:4px;padding:6px;font-size:12px;display:flex}.thumb:hover{border-color:var(--border-control)}.thumb img{object-fit:contain;background:var(--bg-muted);border-radius:4px;width:100%;height:120px;display:block}.thumb-name{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.media-missing{border:1px dashed var(--border-control);min-height:120px;color:var(--fg-secondary);text-align:center;overflow-wrap:anywhere;border-radius:4px;flex-direction:column;justify-content:center;gap:2px;padding:8px;font-size:12px;display:flex}.media-missing strong{color:var(--fg)}.open-original{white-space:nowrap;font-size:12px}.video{margin:0 0 12px}.video video{background:#000;border-radius:6px;width:100%;max-width:960px;display:block}.video figcaption{flex-wrap:wrap;align-items:baseline;gap:4px 12px;margin-top:4px;display:flex}.dialog-actions{flex:none;align-items:center;gap:8px;display:flex}.dialog-head h2{overflow-wrap:anywhere;min-width:0}.dialog.lightbox{--stage-h:calc(100vh - 150px);width:calc(100vw - 32px);max-width:none;height:calc(100vh - 32px);max-height:none;padding:12px 16px}.lightbox[open]{flex-direction:column;display:flex}.lightbox .dialog-head{margin-bottom:8px}.lightbox-stage{flex:1;min-height:0;display:flex;overflow:auto}.lightbox-stage>*{margin:auto}.lightbox-image{max-width:100%;max-height:var(--stage-h);cursor:zoom-in;display:block}.actual-size .lightbox-image{cursor:zoom-out;max-width:none;max-height:none}.lightbox-bar{flex-wrap:wrap;justify-content:center;align-items:center;gap:8px 12px;padding-top:8px;display:flex}.lightbox-position{min-width:64px;color:var(--fg-secondary);text-align:center;font-variant-numeric:tabular-nums}.comparison-card{border:1px solid var(--border);border-radius:8px;margin-bottom:12px;padding:12px}.comparison-head{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px;margin-bottom:8px;display:flex}.comparison-head h4{font-size:13px;font-family:var(--font-mono);overflow-wrap:anywhere;margin:0;font-weight:400}.comparison{flex-direction:column;align-items:flex-start;gap:8px;min-width:0;display:flex}.lightbox-stage>.comparison{align-items:center;width:100%}.actual-size .lightbox-stage>.comparison{width:max-content}.cmp-modes{flex-wrap:wrap;gap:6px;display:flex}.cmp-image,.cmp-side img{max-width:100%;max-height:var(--stage-h,70vh);background:var(--bg-muted);cursor:zoom-in;display:block}.cmp-side{align-items:flex-start;gap:12px;max-width:100%;display:flex}.cmp-side figure{flex:0 auto;min-width:0;margin:0}.cmp-scaled{width:min(calc(var(--w) * 1px + 12px), 100%, calc(var(--stage-h,70vh) * var(--w) / var(--h) + 12px))}.cmp-scaled figure{flex-shrink:1;flex-basis:0}.cmp-side.cmp-scaled img{width:100%;max-height:none}.cmp-side figcaption,.cmp-opacity,.cmp-sizes,.cmp-hint{color:var(--fg-secondary);font-size:12px}.cmp-stack{width:min(calc(var(--w) * 1px), 100%, calc(var(--stage-h,70vh) * var(--w) / var(--h)));aspect-ratio:var(--w) / var(--h);background:var(--bg-muted);position:relative;overflow:hidden}.cmp-layer{max-width:none;height:auto;display:block;position:absolute;top:0;left:0}.cmp-top{position:absolute;inset:0}.cmp-range{opacity:0;cursor:ew-resize;width:100%;height:100%;margin:0;position:absolute;inset:0}.cmp-divider{background:var(--fg);width:2px;box-shadow:0 0 0 1px var(--bg-card);pointer-events:none;margin-left:-1px;position:absolute;top:0;bottom:0}.cmp-range:focus-visible+.cmp-divider{outline:2px solid var(--fg);outline-offset:2px}.cmp-opacity{align-items:center;gap:8px;display:flex}.cmp-opacity output{font-variant-numeric:tabular-nums;min-width:40px}.cmp-sizes{flex-wrap:wrap;gap:4px 14px;margin:0;display:flex}.cmp-hint{margin:0}.cmp-differ{color:var(--status-failed);font-weight:600}.trace-card{flex-direction:column;align-items:flex-start;gap:6px;margin-bottom:12px;display:flex}.trace-actions{flex-wrap:wrap;gap:8px;display:flex}.trace-download{align-items:center;text-decoration:none;display:inline-flex}.trace-help{color:var(--fg-secondary);margin:0;font-size:12px}.cmp-loading{background:var(--bg-muted);border-radius:4px;width:100%;height:120px}.actual-size .cmp-image,.actual-size .cmp-side img{cursor:zoom-out;max-width:none;max-height:none}.actual-size .cmp-side{max-width:none}.actual-size .cmp-scaled{width:calc(var(--w) * 1px + 12px)}.actual-size .cmp-stack{width:calc(var(--w) * 1px)}.output-block>summary .output-name{color:var(--fg);font-family:var(--font-mono)}.output-truncated{color:var(--status-flaky);border:1px solid;border-radius:4px;padding:0 6px;font-size:11px;font-weight:600}.output-notice{color:var(--status-flaky);margin:6px 0 0;font-size:13px}.dialog{border:1px solid var(--border-control);background:var(--bg-card);width:min(640px,100vw - 32px);max-height:calc(100vh - 64px);box-shadow:var(--shadow);color:var(--fg);border-radius:8px;padding:16px 20px 20px}.dialog::backdrop{background:#0006}.dialog-head{justify-content:space-between;align-items:center;gap:12px;margin-bottom:12px;display:flex}.dialog-head h2{margin:0;font-size:16px}.dialog-note{color:var(--fg-secondary);margin:12px 0 0;font-size:13px}.copy-dialog .dialog-note{margin:0 0 8px}.copy-text{border:1px solid var(--border-control);background:var(--bg-muted);width:100%;color:var(--fg);font-family:var(--font-mono);resize:vertical;border-radius:6px;padding:8px;font-size:12.5px}.shortcuts-table{border-collapse:collapse;width:100%;font-size:13px}.shortcuts-table th,.shortcuts-table td{border-top:1px solid var(--border);text-align:left;vertical-align:top;padding:6px 8px}.shortcuts-table thead th{color:var(--fg-secondary);border-top:0;font-size:12px;font-weight:600}.shortcuts-table td:first-child{white-space:nowrap}.shortcuts-table kbd{border:1px solid var(--border-control);background:var(--bg-muted);border-radius:4px;padding:0 5px;font-size:12px}.footer{border-top:1px solid var(--border);color:var(--fg-secondary);padding:16px 24px;font-size:12px}@media (width<=760px){.header{padding:8px 12px}.sidebar{z-index:10;box-shadow:var(--shadow);position:absolute;inset:0 auto 0 0}.page{padding:16px}.footer{padding:12px 16px}.affected-tests thead{display:none}.affected-tests tr{border-top:1px solid var(--border);padding:6px 0;display:block}.affected-tests td{border:0;padding:2px 0;display:block}.run-time-details{white-space:normal}.step-location{display:none}pre.step-error,.error-group-link{margin-left:0}}
17
19
  /*$vite$:1*/</style>
18
20
  </head>
19
21
  <body>