@nlaprell/shipit 1.0.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/.cursor/commands/create_intent_from_issue.md +28 -0
- package/.cursor/commands/create_pr.md +28 -0
- package/.cursor/commands/dashboard.md +39 -0
- package/.cursor/commands/deploy.md +152 -0
- package/.cursor/commands/drift_check.md +36 -0
- package/.cursor/commands/fix.md +39 -0
- package/.cursor/commands/generate_release_plan.md +31 -0
- package/.cursor/commands/generate_roadmap.md +38 -0
- package/.cursor/commands/help.md +37 -0
- package/.cursor/commands/init_project.md +26 -0
- package/.cursor/commands/kill.md +72 -0
- package/.cursor/commands/new_intent.md +68 -0
- package/.cursor/commands/pr.md +77 -0
- package/.cursor/commands/revert-plan.md +58 -0
- package/.cursor/commands/risk.md +64 -0
- package/.cursor/commands/rollback.md +43 -0
- package/.cursor/commands/scope_project.md +53 -0
- package/.cursor/commands/ship.md +345 -0
- package/.cursor/commands/status.md +71 -0
- package/.cursor/commands/suggest.md +44 -0
- package/.cursor/commands/test_shipit.md +197 -0
- package/.cursor/commands/verify.md +50 -0
- package/.cursor/rules/architect.mdc +84 -0
- package/.cursor/rules/assumption-extractor.mdc +95 -0
- package/.cursor/rules/docs.mdc +66 -0
- package/.cursor/rules/implementer.mdc +112 -0
- package/.cursor/rules/pm.mdc +136 -0
- package/.cursor/rules/qa.mdc +97 -0
- package/.cursor/rules/security.mdc +90 -0
- package/.cursor/rules/steward.mdc +99 -0
- package/.cursor/rules/test-runner.mdc +196 -0
- package/AGENTS.md +121 -0
- package/README.md +264 -0
- package/_system/architecture/CANON.md +159 -0
- package/_system/architecture/invariants.yml +87 -0
- package/_system/architecture/project-schema.json +98 -0
- package/_system/architecture/workflow-state-layout.md +68 -0
- package/_system/artifacts/SYSTEM_STATE.md +43 -0
- package/_system/artifacts/confidence-calibration.json +16 -0
- package/_system/artifacts/dependencies.md +46 -0
- package/_system/artifacts/framework-files-manifest.json +179 -0
- package/_system/artifacts/usage.json +1 -0
- package/_system/behaviors/DO_RELEASE.md +371 -0
- package/_system/behaviors/DO_RELEASE_AI.md +329 -0
- package/_system/behaviors/PREPARE_RELEASE.md +373 -0
- package/_system/behaviors/PREPARE_RELEASE_AI.md +234 -0
- package/_system/behaviors/WORK_ROOT_PLATFORM_ISSUES.md +140 -0
- package/_system/behaviors/WORK_TEST_PLAN_ISSUES.md +380 -0
- package/_system/do-not-repeat/abandoned-designs.md +18 -0
- package/_system/do-not-repeat/bad-patterns.md +19 -0
- package/_system/do-not-repeat/failed-experiments.md +18 -0
- package/_system/do-not-repeat/rejected-libraries.md +19 -0
- package/_system/drift/baselines.md +49 -0
- package/_system/drift/metrics.md +33 -0
- package/_system/golden-data/.gitkeep +0 -0
- package/_system/golden-data/README.md +47 -0
- package/_system/reports/mutation/mutation.html +492 -0
- package/_system/security/audit-allowlist.json +4 -0
- package/bin/create-shipit-app +29 -0
- package/bin/shipit +183 -0
- package/cli/src/commands/check.js +82 -0
- package/cli/src/commands/create.js +195 -0
- package/cli/src/commands/init.js +267 -0
- package/cli/src/commands/upgrade.js +196 -0
- package/cli/src/utils/config.js +27 -0
- package/cli/src/utils/file-copy.js +144 -0
- package/cli/src/utils/gitignore-merge.js +44 -0
- package/cli/src/utils/manifest.js +105 -0
- package/cli/src/utils/package-json-merge.js +163 -0
- package/cli/src/utils/project-json-merge.js +57 -0
- package/cli/src/utils/prompts.js +30 -0
- package/cli/src/utils/stack-detection.js +56 -0
- package/cli/src/utils/stack-files.js +364 -0
- package/cli/src/utils/upgrade-backup.js +159 -0
- package/cli/src/utils/version.js +64 -0
- package/dashboard-app/README.md +73 -0
- package/dashboard-app/eslint.config.js +23 -0
- package/dashboard-app/index.html +13 -0
- package/dashboard-app/package.json +30 -0
- package/dashboard-app/pnpm-lock.yaml +2721 -0
- package/dashboard-app/public/dashboard.json +66 -0
- package/dashboard-app/public/vite.svg +1 -0
- package/dashboard-app/src/App.css +141 -0
- package/dashboard-app/src/App.tsx +155 -0
- package/dashboard-app/src/assets/react.svg +1 -0
- package/dashboard-app/src/index.css +68 -0
- package/dashboard-app/src/main.tsx +10 -0
- package/dashboard-app/tsconfig.app.json +28 -0
- package/dashboard-app/tsconfig.json +4 -0
- package/dashboard-app/tsconfig.node.json +26 -0
- package/dashboard-app/vite.config.ts +7 -0
- package/package.json +116 -0
- package/scripts/README.md +70 -0
- package/scripts/audit-check.sh +125 -0
- package/scripts/calibration-report.sh +198 -0
- package/scripts/check-readiness.sh +155 -0
- package/scripts/collect-metrics.sh +116 -0
- package/scripts/command-manifest.yml +131 -0
- package/scripts/create-test-plan-issue.sh +110 -0
- package/scripts/dashboard-start.sh +16 -0
- package/scripts/deploy.sh +170 -0
- package/scripts/drift-check.sh +93 -0
- package/scripts/execute-rollback.sh +177 -0
- package/scripts/export-dashboard-json.js +208 -0
- package/scripts/fix-intents.sh +239 -0
- package/scripts/generate-dashboard.sh +136 -0
- package/scripts/generate-docs.sh +279 -0
- package/scripts/generate-project-context.sh +142 -0
- package/scripts/generate-release-plan.sh +443 -0
- package/scripts/generate-roadmap.sh +189 -0
- package/scripts/generate-system-state.sh +95 -0
- package/scripts/gh/create-intent-from-issue.sh +82 -0
- package/scripts/gh/create-issue-from-intent.sh +59 -0
- package/scripts/gh/create-pr.sh +41 -0
- package/scripts/gh/link-issue.sh +44 -0
- package/scripts/gh/on-ship-update-issue.sh +42 -0
- package/scripts/headless/README.md +8 -0
- package/scripts/headless/call-llm.js +109 -0
- package/scripts/headless/run-phase.sh +99 -0
- package/scripts/help.sh +271 -0
- package/scripts/init-project.sh +976 -0
- package/scripts/kill-intent.sh +125 -0
- package/scripts/lib/common.sh +29 -0
- package/scripts/lib/intent.sh +61 -0
- package/scripts/lib/progress.sh +57 -0
- package/scripts/lib/suggest-next.sh +131 -0
- package/scripts/lib/validate-intents.sh +240 -0
- package/scripts/lib/verify-outputs.sh +55 -0
- package/scripts/lib/workflow_state.sh +201 -0
- package/scripts/new-intent.sh +271 -0
- package/scripts/publish-npm.sh +28 -0
- package/scripts/scope-project.sh +380 -0
- package/scripts/setup-worktrees.sh +125 -0
- package/scripts/status.sh +278 -0
- package/scripts/suggest.sh +173 -0
- package/scripts/test-headless.sh +47 -0
- package/scripts/test-shipit.sh +52 -0
- package/scripts/test-workflow-state.sh +49 -0
- package/scripts/usage-report.sh +47 -0
- package/scripts/usage.sh +58 -0
- package/scripts/validate-cursor.sh +151 -0
- package/scripts/validate-project.sh +71 -0
- package/scripts/validate-vscode.sh +146 -0
- package/scripts/verify.sh +153 -0
- package/scripts/workflow-orchestrator.sh +97 -0
- package/scripts/workflow-templates/01_analysis.md.tpl +25 -0
- package/scripts/workflow-templates/02_plan.md.tpl +30 -0
- package/scripts/workflow-templates/03_implementation.md.tpl +25 -0
- package/scripts/workflow-templates/04_verification.md.tpl +29 -0
- package/scripts/workflow-templates/05_release_notes.md.tpl +16 -0
- package/scripts/workflow-templates/05_verification_legacy.md.tpl +6 -0
- package/scripts/workflow-templates/active.md.tpl +18 -0
- package/scripts/workflow-templates/phases.yml +39 -0
- package/stryker.conf.json +8 -0
- package/work/intent/templates/api-endpoint.md +124 -0
- package/work/intent/templates/bugfix.md +116 -0
- package/work/intent/templates/frontend-feature.md +115 -0
- package/work/intent/templates/generic.md +122 -0
- package/work/intent/templates/infra-change.md +121 -0
- package/work/intent/templates/refactor.md +116 -0
|
@@ -0,0 +1,492 @@
|
|
|
1
|
+
<!DOCTYPE html>
|
|
2
|
+
<html>
|
|
3
|
+
<head>
|
|
4
|
+
<meta charset="utf-8">
|
|
5
|
+
<script>
|
|
6
|
+
var MutationTestElements=function(re){"use strict";/**
|
|
7
|
+
* @license
|
|
8
|
+
* Copyright 2019 Google LLC
|
|
9
|
+
* SPDX-License-Identifier: BSD-3-Clause
|
|
10
|
+
*/const Qt=globalThis,Cr=Qt.ShadowRoot&&(Qt.ShadyCSS===void 0||Qt.ShadyCSS.nativeShadow)&&"adoptedStyleSheets"in Document.prototype&&"replace"in CSSStyleSheet.prototype,Bn=Symbol(),Ln=new WeakMap;let ms=class{constructor(t,r,n){if(this._$cssResult$=!0,n!==Bn)throw Error("CSSResult is not constructable. Use `unsafeCSS` or `css` instead.");this.cssText=t,this.t=r}get styleSheet(){let t=this.o;const r=this.t;if(Cr&&t===void 0){const n=r!==void 0&&r.length===1;n&&(t=Ln.get(r)),t===void 0&&((this.o=t=new CSSStyleSheet).replaceSync(this.cssText),n&&Ln.set(r,t))}return t}toString(){return this.cssText}};const ve=e=>new ms(typeof e=="string"?e:e+"",void 0,Bn),vs=(e,t)=>{if(Cr)e.adoptedStyleSheets=t.map(r=>r instanceof CSSStyleSheet?r:r.styleSheet);else for(const r of t){const n=document.createElement("style"),i=Qt.litNonce;i!==void 0&&n.setAttribute("nonce",i),n.textContent=r.cssText,e.appendChild(n)}},jn=Cr?e=>e:e=>e instanceof CSSStyleSheet?(t=>{let r="";for(const n of t.cssRules)r+=n.cssText;return ve(r)})(e):e;/**
|
|
11
|
+
* @license
|
|
12
|
+
* Copyright 2017 Google LLC
|
|
13
|
+
* SPDX-License-Identifier: BSD-3-Clause
|
|
14
|
+
*/const{is:bs,defineProperty:ys,getOwnPropertyDescriptor:ws,getOwnPropertyNames:xs,getOwnPropertySymbols:$s,getPrototypeOf:ks}=Object,Xt=globalThis,Nn=Xt.trustedTypes,_s=Nn?Nn.emptyScript:"",Ss=Xt.reactiveElementPolyfillSupport,Mt=(e,t)=>e,er={toAttribute(e,t){switch(t){case Boolean:e=e?_s:null;break;case Object:case Array:e=e==null?e:JSON.stringify(e)}return e},fromAttribute(e,t){let r=e;switch(t){case Boolean:r=e!==null;break;case Number:r=e===null?null:Number(e);break;case Object:case Array:try{r=JSON.parse(e)}catch{r=null}}return r}},Mr=(e,t)=>!bs(e,t),Un={attribute:!0,type:String,converter:er,reflect:!1,hasChanged:Mr};Symbol.metadata??=Symbol("metadata"),Xt.litPropertyMetadata??=new WeakMap;let pt=class extends HTMLElement{static addInitializer(t){this._$Ei(),(this.l??=[]).push(t)}static get observedAttributes(){return this.finalize(),this._$Eh&&[...this._$Eh.keys()]}static createProperty(t,r=Un){if(r.state&&(r.attribute=!1),this._$Ei(),this.elementProperties.set(t,r),!r.noAccessor){const n=Symbol(),i=this.getPropertyDescriptor(t,n,r);i!==void 0&&ys(this.prototype,t,i)}}static getPropertyDescriptor(t,r,n){const{get:i,set:a}=ws(this.prototype,t)??{get(){return this[r]},set(s){this[r]=s}};return{get(){return i?.call(this)},set(s){const o=i?.call(this);a.call(this,s),this.requestUpdate(t,o,n)},configurable:!0,enumerable:!0}}static getPropertyOptions(t){return this.elementProperties.get(t)??Un}static _$Ei(){if(this.hasOwnProperty(Mt("elementProperties")))return;const t=ks(this);t.finalize(),t.l!==void 0&&(this.l=[...t.l]),this.elementProperties=new Map(t.elementProperties)}static finalize(){if(this.hasOwnProperty(Mt("finalized")))return;if(this.finalized=!0,this._$Ei(),this.hasOwnProperty(Mt("properties"))){const r=this.properties,n=[...xs(r),...$s(r)];for(const i of n)this.createProperty(i,r[i])}const t=this[Symbol.metadata];if(t!==null){const r=litPropertyMetadata.get(t);if(r!==void 0)for(const[n,i]of r)this.elementProperties.set(n,i)}this._$Eh=new Map;for(const[r,n]of this.elementProperties){const i=this._$Eu(r,n);i!==void 0&&this._$Eh.set(i,r)}this.elementStyles=this.finalizeStyles(this.styles)}static finalizeStyles(t){const r=[];if(Array.isArray(t)){const n=new Set(t.flat(1/0).reverse());for(const i of n)r.unshift(jn(i))}else t!==void 0&&r.push(jn(t));return r}static _$Eu(t,r){const n=r.attribute;return n===!1?void 0:typeof n=="string"?n:typeof t=="string"?t.toLowerCase():void 0}constructor(){super(),this._$Ep=void 0,this.isUpdatePending=!1,this.hasUpdated=!1,this._$Em=null,this._$Ev()}_$Ev(){this._$ES=new Promise(t=>this.enableUpdating=t),this._$AL=new Map,this._$E_(),this.requestUpdate(),this.constructor.l?.forEach(t=>t(this))}addController(t){(this._$EO??=new Set).add(t),this.renderRoot!==void 0&&this.isConnected&&t.hostConnected?.()}removeController(t){this._$EO?.delete(t)}_$E_(){const t=new Map,r=this.constructor.elementProperties;for(const n of r.keys())this.hasOwnProperty(n)&&(t.set(n,this[n]),delete this[n]);t.size>0&&(this._$Ep=t)}createRenderRoot(){const t=this.shadowRoot??this.attachShadow(this.constructor.shadowRootOptions);return vs(t,this.constructor.elementStyles),t}connectedCallback(){this.renderRoot??=this.createRenderRoot(),this.enableUpdating(!0),this._$EO?.forEach(t=>t.hostConnected?.())}enableUpdating(t){}disconnectedCallback(){this._$EO?.forEach(t=>t.hostDisconnected?.())}attributeChangedCallback(t,r,n){this._$AK(t,n)}_$EC(t,r){const n=this.constructor.elementProperties.get(t),i=this.constructor._$Eu(t,n);if(i!==void 0&&n.reflect===!0){const a=(n.converter?.toAttribute!==void 0?n.converter:er).toAttribute(r,n.type);this._$Em=t,a==null?this.removeAttribute(i):this.setAttribute(i,a),this._$Em=null}}_$AK(t,r){const n=this.constructor,i=n._$Eh.get(t);if(i!==void 0&&this._$Em!==i){const a=n.getPropertyOptions(i),s=typeof a.converter=="function"?{fromAttribute:a.converter}:a.converter?.fromAttribute!==void 0?a.converter:er;this._$Em=i,this[i]=s.fromAttribute(r,a.type),this._$Em=null}}requestUpdate(t,r,n){if(t!==void 0){if(n??=this.constructor.getPropertyOptions(t),!(n.hasChanged??Mr)(this[t],r))return;this.P(t,r,n)}this.isUpdatePending===!1&&(this._$ES=this._$ET())}P(t,r,n){this._$AL.has(t)||this._$AL.set(t,r),n.reflect===!0&&this._$Em!==t&&(this._$Ej??=new Set).add(t)}async _$ET(){this.isUpdatePending=!0;try{await this._$ES}catch(r){Promise.reject(r)}const t=this.scheduleUpdate();return t!=null&&await t,!this.isUpdatePending}scheduleUpdate(){return this.performUpdate()}performUpdate(){if(!this.isUpdatePending)return;if(!this.hasUpdated){if(this.renderRoot??=this.createRenderRoot(),this._$Ep){for(const[i,a]of this._$Ep)this[i]=a;this._$Ep=void 0}const n=this.constructor.elementProperties;if(n.size>0)for(const[i,a]of n)a.wrapped!==!0||this._$AL.has(i)||this[i]===void 0||this.P(i,this[i],a)}let t=!1;const r=this._$AL;try{t=this.shouldUpdate(r),t?(this.willUpdate(r),this._$EO?.forEach(n=>n.hostUpdate?.()),this.update(r)):this._$EU()}catch(n){throw t=!1,this._$EU(),n}t&&this._$AE(r)}willUpdate(t){}_$AE(t){this._$EO?.forEach(r=>r.hostUpdated?.()),this.hasUpdated||(this.hasUpdated=!0,this.firstUpdated(t)),this.updated(t)}_$EU(){this._$AL=new Map,this.isUpdatePending=!1}get updateComplete(){return this.getUpdateComplete()}getUpdateComplete(){return this._$ES}shouldUpdate(t){return!0}update(t){this._$Ej&&=this._$Ej.forEach(r=>this._$EC(r,this[r])),this._$EU()}updated(t){}firstUpdated(t){}};pt.elementStyles=[],pt.shadowRootOptions={mode:"open"},pt[Mt("elementProperties")]=new Map,pt[Mt("finalized")]=new Map,Ss?.({ReactiveElement:pt}),(Xt.reactiveElementVersions??=[]).push("2.0.4");/**
|
|
15
|
+
* @license
|
|
16
|
+
* Copyright 2017 Google LLC
|
|
17
|
+
* SPDX-License-Identifier: BSD-3-Clause
|
|
18
|
+
*/const Er=globalThis,tr=Er.trustedTypes,Hn=tr?tr.createPolicy("lit-html",{createHTML:e=>e}):void 0,Tr="$lit$",ze=`lit$${Math.random().toFixed(9).slice(2)}$`,Pr="?"+ze,As=`<${Pr}>`,Qe=document,Et=()=>Qe.createComment(""),Tt=e=>e===null||typeof e!="object"&&typeof e!="function",Fr=Array.isArray,Vn=e=>Fr(e)||typeof e?.[Symbol.iterator]=="function",zr=`[
|
|
19
|
+
\f\r]`,Pt=/<(?:(!--|\/[^a-zA-Z])|(\/?[a-zA-Z][^>\s]*)|(\/?$))/g,Kn=/-->/g,Wn=/>/g,Xe=RegExp(`>|${zr}(?:([^\\s"'>=/]+)(${zr}*=${zr}*(?:[^
|
|
20
|
+
\f\r"'\`<>=]|("|')|))|$)`,"g"),Zn=/'/g,qn=/"/g,Gn=/^(?:script|style|textarea|title)$/i,Yn=e=>(t,...r)=>({_$litType$:e,strings:t,values:r}),b=Yn(1),ee=Yn(2),Oe=Symbol.for("lit-noChange"),P=Symbol.for("lit-nothing"),Jn=new WeakMap,et=Qe.createTreeWalker(Qe,129);function Qn(e,t){if(!Fr(e)||!e.hasOwnProperty("raw"))throw Error("invalid template strings array");return Hn!==void 0?Hn.createHTML(t):t}const Xn=(e,t)=>{const r=e.length-1,n=[];let i,a=t===2?"<svg>":t===3?"<math>":"",s=Pt;for(let o=0;o<r;o++){const l=e[o];let u,$,v=-1,k=0;for(;k<l.length&&(s.lastIndex=k,$=s.exec(l),$!==null);)k=s.lastIndex,s===Pt?$[1]==="!--"?s=Kn:$[1]!==void 0?s=Wn:$[2]!==void 0?(Gn.test($[2])&&(i=RegExp("</"+$[2],"g")),s=Xe):$[3]!==void 0&&(s=Xe):s===Xe?$[0]===">"?(s=i??Pt,v=-1):$[1]===void 0?v=-2:(v=s.lastIndex-$[2].length,u=$[1],s=$[3]===void 0?Xe:$[3]==='"'?qn:Zn):s===qn||s===Zn?s=Xe:s===Kn||s===Wn?s=Pt:(s=Xe,i=void 0);const y=s===Xe&&e[o+1].startsWith("/>")?" ":"";a+=s===Pt?l+As:v>=0?(n.push(u),l.slice(0,v)+Tr+l.slice(v)+ze+y):l+ze+(v===-2?o:y)}return[Qn(e,a+(e[r]||"<?>")+(t===2?"</svg>":t===3?"</math>":"")),n]};class Ft{constructor({strings:t,_$litType$:r},n){let i;this.parts=[];let a=0,s=0;const o=t.length-1,l=this.parts,[u,$]=Xn(t,r);if(this.el=Ft.createElement(u,n),et.currentNode=this.el.content,r===2||r===3){const v=this.el.content.firstChild;v.replaceWith(...v.childNodes)}for(;(i=et.nextNode())!==null&&l.length<o;){if(i.nodeType===1){if(i.hasAttributes())for(const v of i.getAttributeNames())if(v.endsWith(Tr)){const k=$[s++],y=i.getAttribute(v).split(ze),C=/([.?@])?(.*)/.exec(k);l.push({type:1,index:a,name:C[2],strings:y,ctor:C[1]==="."?ti:C[1]==="?"?ri:C[1]==="@"?ni:zt}),i.removeAttribute(v)}else v.startsWith(ze)&&(l.push({type:6,index:a}),i.removeAttribute(v));if(Gn.test(i.tagName)){const v=i.textContent.split(ze),k=v.length-1;if(k>0){i.textContent=tr?tr.emptyScript:"";for(let y=0;y<k;y++)i.append(v[y],Et()),et.nextNode(),l.push({type:2,index:++a});i.append(v[k],Et())}}}else if(i.nodeType===8)if(i.data===Pr)l.push({type:2,index:a});else{let v=-1;for(;(v=i.data.indexOf(ze,v+1))!==-1;)l.push({type:7,index:a}),v+=ze.length-1}a++}}static createElement(t,r){const n=Qe.createElement("template");return n.innerHTML=t,n}}function tt(e,t,r=e,n){if(t===Oe)return t;let i=n!==void 0?r._$Co?.[n]:r._$Cl;const a=Tt(t)?void 0:t._$litDirective$;return i?.constructor!==a&&(i?._$AO?.(!1),a===void 0?i=void 0:(i=new a(e),i._$AT(e,r,n)),n!==void 0?(r._$Co??=[])[n]=i:r._$Cl=i),i!==void 0&&(t=tt(e,i._$AS(e,t.values),i,n)),t}let ei=class{constructor(t,r){this._$AV=[],this._$AN=void 0,this._$AD=t,this._$AM=r}get parentNode(){return this._$AM.parentNode}get _$AU(){return this._$AM._$AU}u(t){const{el:{content:r},parts:n}=this._$AD,i=(t?.creationScope??Qe).importNode(r,!0);et.currentNode=i;let a=et.nextNode(),s=0,o=0,l=n[0];for(;l!==void 0;){if(s===l.index){let u;l.type===2?u=new ft(a,a.nextSibling,this,t):l.type===1?u=new l.ctor(a,l.name,l.strings,this,t):l.type===6&&(u=new ii(a,this,t)),this._$AV.push(u),l=n[++o]}s!==l?.index&&(a=et.nextNode(),s++)}return et.currentNode=Qe,i}p(t){let r=0;for(const n of this._$AV)n!==void 0&&(n.strings!==void 0?(n._$AI(t,n,r),r+=n.strings.length-2):n._$AI(t[r])),r++}};class ft{get _$AU(){return this._$AM?._$AU??this._$Cv}constructor(t,r,n,i){this.type=2,this._$AH=P,this._$AN=void 0,this._$AA=t,this._$AB=r,this._$AM=n,this.options=i,this._$Cv=i?.isConnected??!0}get parentNode(){let t=this._$AA.parentNode;const r=this._$AM;return r!==void 0&&t?.nodeType===11&&(t=r.parentNode),t}get startNode(){return this._$AA}get endNode(){return this._$AB}_$AI(t,r=this){t=tt(this,t,r),Tt(t)?t===P||t==null||t===""?(this._$AH!==P&&this._$AR(),this._$AH=P):t!==this._$AH&&t!==Oe&&this._(t):t._$litType$!==void 0?this.$(t):t.nodeType!==void 0?this.T(t):Vn(t)?this.k(t):this._(t)}O(t){return this._$AA.parentNode.insertBefore(t,this._$AB)}T(t){this._$AH!==t&&(this._$AR(),this._$AH=this.O(t))}_(t){this._$AH!==P&&Tt(this._$AH)?this._$AA.nextSibling.data=t:this.T(Qe.createTextNode(t)),this._$AH=t}$(t){const{values:r,_$litType$:n}=t,i=typeof n=="number"?this._$AC(t):(n.el===void 0&&(n.el=Ft.createElement(Qn(n.h,n.h[0]),this.options)),n);if(this._$AH?._$AD===i)this._$AH.p(r);else{const a=new ei(i,this),s=a.u(this.options);a.p(r),this.T(s),this._$AH=a}}_$AC(t){let r=Jn.get(t.strings);return r===void 0&&Jn.set(t.strings,r=new Ft(t)),r}k(t){Fr(this._$AH)||(this._$AH=[],this._$AR());const r=this._$AH;let n,i=0;for(const a of t)i===r.length?r.push(n=new ft(this.O(Et()),this.O(Et()),this,this.options)):n=r[i],n._$AI(a),i++;i<r.length&&(this._$AR(n&&n._$AB.nextSibling,i),r.length=i)}_$AR(t=this._$AA.nextSibling,r){for(this._$AP?.(!1,!0,r);t&&t!==this._$AB;){const n=t.nextSibling;t.remove(),t=n}}setConnected(t){this._$AM===void 0&&(this._$Cv=t,this._$AP?.(t))}}class zt{get tagName(){return this.element.tagName}get _$AU(){return this._$AM._$AU}constructor(t,r,n,i,a){this.type=1,this._$AH=P,this._$AN=void 0,this.element=t,this.name=r,this._$AM=i,this.options=a,n.length>2||n[0]!==""||n[1]!==""?(this._$AH=Array(n.length-1).fill(new String),this.strings=n):this._$AH=P}_$AI(t,r=this,n,i){const a=this.strings;let s=!1;if(a===void 0)t=tt(this,t,r,0),s=!Tt(t)||t!==this._$AH&&t!==Oe,s&&(this._$AH=t);else{const o=t;let l,u;for(t=a[0],l=0;l<a.length-1;l++)u=tt(this,o[n+l],r,l),u===Oe&&(u=this._$AH[l]),s||=!Tt(u)||u!==this._$AH[l],u===P?t=P:t!==P&&(t+=(u??"")+a[l+1]),this._$AH[l]=u}s&&!i&&this.j(t)}j(t){t===P?this.element.removeAttribute(this.name):this.element.setAttribute(this.name,t??"")}}class ti extends zt{constructor(){super(...arguments),this.type=3}j(t){this.element[this.name]=t===P?void 0:t}}class ri extends zt{constructor(){super(...arguments),this.type=4}j(t){this.element.toggleAttribute(this.name,!!t&&t!==P)}}class ni extends zt{constructor(t,r,n,i,a){super(t,r,n,i,a),this.type=5}_$AI(t,r=this){if((t=tt(this,t,r,0)??P)===Oe)return;const n=this._$AH,i=t===P&&n!==P||t.capture!==n.capture||t.once!==n.once||t.passive!==n.passive,a=t!==P&&(n===P||i);i&&this.element.removeEventListener(this.name,this,n),a&&this.element.addEventListener(this.name,this,t),this._$AH=t}handleEvent(t){typeof this._$AH=="function"?this._$AH.call(this.options?.host??this.element,t):this._$AH.handleEvent(t)}}class ii{constructor(t,r,n){this.element=t,this.type=6,this._$AN=void 0,this._$AM=r,this.options=n}get _$AU(){return this._$AM._$AU}_$AI(t){tt(this,t)}}const Cs={M:Tr,P:ze,A:Pr,C:1,L:Xn,R:ei,D:Vn,V:tt,I:ft,H:zt,N:ri,U:ni,B:ti,F:ii},Ms=Er.litHtmlPolyfillSupport;Ms?.(Ft,ft),(Er.litHtmlVersions??=[]).push("3.2.1");const Es=(e,t,r)=>{const n=r?.renderBefore??t;let i=n._$litPart$;if(i===void 0){const a=r?.renderBefore??null;n._$litPart$=i=new ft(t.insertBefore(Et(),a),a,void 0,r??{})}return i._$AI(e),i};/**
|
|
21
|
+
* @license
|
|
22
|
+
* Copyright 2017 Google LLC
|
|
23
|
+
* SPDX-License-Identifier: BSD-3-Clause
|
|
24
|
+
*/let $e=class extends pt{constructor(){super(...arguments),this.renderOptions={host:this},this._$Do=void 0}createRenderRoot(){const t=super.createRenderRoot();return this.renderOptions.renderBefore??=t.firstChild,t}update(t){const r=this.render();this.hasUpdated||(this.renderOptions.isConnected=this.isConnected),super.update(t),this._$Do=Es(r,this.renderRoot,this.renderOptions)}connectedCallback(){super.connectedCallback(),this._$Do?.setConnected(!0)}disconnectedCallback(){super.disconnectedCallback(),this._$Do?.setConnected(!1)}render(){return Oe}};$e._$litElement$=!0,$e.finalized=!0,globalThis.litElementHydrateSupport?.({LitElement:$e});const Ts=globalThis.litElementPolyfillSupport;Ts?.({LitElement:$e}),(globalThis.litElementVersions??=[]).push("4.1.1");/**
|
|
25
|
+
* @license
|
|
26
|
+
* Copyright 2017 Google LLC
|
|
27
|
+
* SPDX-License-Identifier: BSD-3-Clause
|
|
28
|
+
*/const se=e=>(t,r)=>{r!==void 0?r.addInitializer(()=>{customElements.define(e,t)}):customElements.define(e,t)};/**
|
|
29
|
+
* @license
|
|
30
|
+
* Copyright 2017 Google LLC
|
|
31
|
+
* SPDX-License-Identifier: BSD-3-Clause
|
|
32
|
+
*/const Ps={attribute:!0,type:String,converter:er,reflect:!1,hasChanged:Mr},Fs=(e=Ps,t,r)=>{const{kind:n,metadata:i}=r;let a=globalThis.litPropertyMetadata.get(i);if(a===void 0&&globalThis.litPropertyMetadata.set(i,a=new Map),a.set(r.name,e),n==="accessor"){const{name:s}=r;return{set(o){const l=t.get.call(this);t.set.call(this,o),this.requestUpdate(s,l,e)},init(o){return o!==void 0&&this.P(s,void 0,e),o}}}if(n==="setter"){const{name:s}=r;return function(o){const l=this[s];t.call(this,o),this.requestUpdate(s,l,e)}}throw Error("Unsupported decorator location: "+n)};function I(e){return(t,r)=>typeof r=="object"?Fs(e,t,r):((n,i,a)=>{const s=i.hasOwnProperty(a);return i.constructor.createProperty(a,s?{...n,wrapped:!0}:n),s?Object.getOwnPropertyDescriptor(i,a):void 0})(e,t,r)}/**
|
|
33
|
+
* @license
|
|
34
|
+
* Copyright 2017 Google LLC
|
|
35
|
+
* SPDX-License-Identifier: BSD-3-Clause
|
|
36
|
+
*/function be(e){return I({...e,state:!0,attribute:!1})}/**
|
|
37
|
+
* @license
|
|
38
|
+
* Copyright 2017 Google LLC
|
|
39
|
+
* SPDX-License-Identifier: BSD-3-Clause
|
|
40
|
+
*/const zs=(e,t,r)=>(r.configurable=!0,r.enumerable=!0,Reflect.decorate&&typeof t!="object"&&Object.defineProperty(e,t,r),r);/**
|
|
41
|
+
* @license
|
|
42
|
+
* Copyright 2017 Google LLC
|
|
43
|
+
* SPDX-License-Identifier: BSD-3-Clause
|
|
44
|
+
*/function Or(e,t){return(r,n,i)=>{const a=s=>s.renderRoot?.querySelector(e)??null;return zs(r,n,{get(){return a(this)}})}}/**
|
|
45
|
+
* @license
|
|
46
|
+
* Copyright 2018 Google LLC
|
|
47
|
+
* SPDX-License-Identifier: BSD-3-Clause
|
|
48
|
+
*/const Ot=e=>e??P;function Os(e,t){return e.reduce((r,n)=>{const i=t(n);return Object.prototype.hasOwnProperty.call(r,i)||(r[i]=[]),r[i].push(n),r},{})}const Is="/";function ai(e,t,r){const n=Object.keys(e),i=Rs(n),a=Object.create(null);return n.forEach(s=>{const o=si(s.startsWith(t)?s.substr(t.length):s);a[si(s.substr(i.length))]=r(e[s],o)}),a}function si(e){return e.split(/\/|\\/).filter(Boolean).join("/")}function Rs(e){const t=e.map(n=>n.split(/\/|\\/).slice(0,-1));if(e.length)return t.reduce(r).join(Is);return"";function r(n,i){for(let a=0;a<n.length;a++)if(n[a]!==i[a])return n.splice(0,a);return n}}function Ds(e,t){const r=n=>n.file?`1${n.name}`:`0${n.name}`;return r(e).localeCompare(r(t))}var Me;(function(e){e[e.maxAsciiCharacter=127]="maxAsciiCharacter",e[e.lineFeed=10]="lineFeed",e[e.carriageReturn=13]="carriageReturn",e[e.lineSeparator=8232]="lineSeparator",e[e.paragraphSeparator=8233]="paragraphSeparator"})(Me||(Me={}));function Bs(e){return e===Me.lineFeed||e===Me.carriageReturn||e===Me.lineSeparator||e===Me.paragraphSeparator}function Ls(e){const t=[];let r=0,n=0;function i(a){t.push(n),n=a}for(i(0);r<e.length;){const a=e.charCodeAt(r);switch(r++,a){case Me.carriageReturn:e.charCodeAt(r)===Me.lineFeed&&r++,i(r);break;case Me.lineFeed:i(r);break;default:a>Me.maxAsciiCharacter&&Bs(a)&&i(r);break}}return t.push(n),t}function Ir(e){if(e===void 0)throw new Error("mutant.sourceFile was not defined")}class js{coveredBy;description;duration;id;killedBy;location;mutatorName;replacement;static;status;statusReason;testsCompleted;get coveredByTests(){if(this.#e.size)return Array.from(this.#e.values())}set coveredByTests(t){this.#e=new Map(t.map(r=>[r.id,r]))}get killedByTests(){if(this.#t.size)return Array.from(this.#t.values())}set killedByTests(t){this.#t=new Map(t.map(r=>[r.id,r]))}#e=new Map;#t=new Map;constructor(t){this.coveredBy=t.coveredBy,this.description=t.description,this.duration=t.duration,this.id=t.id,this.killedBy=t.killedBy,this.location=t.location,this.mutatorName=t.mutatorName,this.replacement=t.replacement,this.static=t.static,this.status=t.status,this.statusReason=t.statusReason,this.testsCompleted=t.testsCompleted}addCoveredBy(t){this.#e.set(t.id,t)}addKilledBy(t){this.#t.set(t.id,t)}getMutatedLines(){return Ir(this.sourceFile),this.sourceFile.getMutationLines(this)}getOriginalLines(){return Ir(this.sourceFile),this.sourceFile.getLines(this.location)}get fileName(){return Ir(this.sourceFile),this.sourceFile.name}update(){this.sourceFile?.result?.file&&this.sourceFile.result.updateAllMetrics()}}function oi(e){if(e===void 0)throw new Error("sourceFile.source is undefined")}class li{lineMap;getLineMap(){return oi(this.source),this.lineMap??(this.lineMap=Ls(this.source))}getLines(t){oi(this.source);const r=this.getLineMap();return this.source.substring(r[t.start.line],r[(t.end??t.start).line+1])}}class Ns extends li{name;language;source;mutants;result;constructor(t,r){super(),this.name=r,this.language=t.language,this.source=t.source,this.mutants=t.mutants.map(n=>{const i=new js(n);return i.sourceFile=this,i})}getMutationLines(t){const r=this.getLineMap(),n=r[t.location.start.line],i=r[t.location.end.line],a=r[t.location.end.line+1];return`${this.source.substr(n,t.location.start.column-1)}${t.replacement??t.description??t.mutatorName}${this.source.substring(i+t.location.end.column-1,a)}`}}class ci{parent;name;file;childResults;metrics;constructor(t,r,n,i){this.name=t,this.childResults=r,this.metrics=n,this.file=i}updateParent(t){this.parent=t,this.childResults.forEach(r=>r.updateParent(this))}updateAllMetrics(){if(this.parent!==void 0){this.parent.updateAllMetrics();return}this.updateMetrics()}updateMetrics(){if(this.file===void 0){this.childResults.forEach(r=>{r.updateMetrics()});const t=this.#e(this.childResults);if(t.length===0)return;t[0].tests?this.metrics=Dr(t):this.metrics=rr(t);return}this.file.tests?this.metrics=Dr([this.file]):this.metrics=rr([this.file])}#e(t){const r=[];return t.length===0||t.forEach(n=>{if(n.file){r.push(n.file);return}r.push(...this.#e(n.childResults))}),r}}function ui(e){if(e===void 0)throw new Error("test.sourceFile was not defined")}function Us(e){if(e===void 0)throw new Error("test.location was not defined")}var ne;(function(e){e.Killing="Killing",e.Covering="Covering",e.NotCovering="NotCovering"})(ne||(ne={}));class Hs{id;name;location;get killedMutants(){if(this.#e.size)return Array.from(this.#e.values())}get coveredMutants(){if(this.#t.size)return Array.from(this.#t.values())}#e=new Map;#t=new Map;addCovered(t){this.#t.set(t.id,t)}addKilled(t){this.#e.set(t.id,t)}constructor(t){Object.entries(t).forEach(([r,n])=>{this[r]=n})}getLines(){return ui(this.sourceFile),Us(this.location),this.sourceFile.getLines(this.location)}get fileName(){return ui(this.sourceFile),this.sourceFile.name}get status(){return this.#e.size?ne.Killing:this.#t.size?ne.Covering:ne.NotCovering}update(){this.sourceFile?.result?.file&&this.sourceFile.result.updateAllMetrics()}}class di extends li{name;tests;source;result;constructor(t,r){super(),this.name=r,this.source=t.source,this.tests=t.tests.map(n=>{const i=new Hs(n);return i.sourceFile=this,i})}}const hi=NaN,pi="All files",Vs="All tests";function Ks(e){const{files:t,testFiles:r,projectRoot:n=""}=e,i=ai(t,n,(a,s)=>new Ns(a,s));if(r&&Object.keys(r).length){const a=ai(r,n,(s,o)=>new di(s,o));return Zs(Object.values(i).flatMap(s=>s.mutants),Object.values(a).flatMap(s=>s.tests)),{systemUnderTestMetrics:Rr(pi,i,rr),testMetrics:Rr(Vs,a,Dr)}}return{systemUnderTestMetrics:Rr(pi,i,rr),testMetrics:void 0}}function Rr(e,t,r){const n=Object.keys(t);return n.length===1&&n[0]===""?gi(e,t[n[0]],r):fi(e,t,r)}function fi(e,t,r){const n=r(Object.values(t)),i=Ws(t,r);return new ci(e,i,n)}function gi(e,t,r){return new ci(e,[],r([t]),t)}function Ws(e,t){const r=Os(Object.entries(e),n=>n[0].split("/")[0]);return Object.keys(r).map(n=>{if(r[n].length>1||r[n][0][0]!==n){const i={};return r[n].forEach(a=>i[a[0].substr(n.length+1)]=a[1]),fi(n,i,t)}else{const[i,a]=r[n][0];return gi(i,a,t)}}).sort(Ds)}function Zs(e,t){const r=new Map(t.map(n=>[n.id,n]));for(const n of e){const i=n.coveredBy??[];for(const s of i){const o=r.get(s);o&&(n.addCoveredBy(o),o.addCovered(n))}const a=n.killedBy??[];for(const s of a){const o=r.get(s);o&&(n.addKilledBy(o),o.addKilled(n))}}}function Dr(e){const t=e.flatMap(n=>n.tests),r=n=>t.filter(i=>i.status===n).length;return{total:t.length,killing:r(ne.Killing),covering:r(ne.Covering),notCovering:r(ne.NotCovering)}}function rr(e){const t=e.flatMap(H=>H.mutants),r=H=>t.filter(X=>X.status===H).length,n=r("Pending"),i=r("Killed"),a=r("Timeout"),s=r("Survived"),o=r("NoCoverage"),l=r("RuntimeError"),u=r("CompileError"),$=r("Ignored"),v=a+i,k=s+o,y=v+s,C=k+v,F=l+u;return{pending:n,killed:i,timeout:a,survived:s,noCoverage:o,runtimeErrors:l,compileErrors:u,ignored:$,totalDetected:v,totalUndetected:k,totalCovered:y,totalValid:C,totalInvalid:F,mutationScore:C>0?v/C*100:hi,totalMutants:C+F+$+n,mutationScoreBasedOnCoveredCode:C>0?v/y*100||0:hi}}var Br=function(e,t){return Br=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(r,n){r.__proto__=n}||function(r,n){for(var i in n)Object.prototype.hasOwnProperty.call(n,i)&&(r[i]=n[i])},Br(e,t)};function He(e,t){if(typeof t!="function"&&t!==null)throw new TypeError("Class extends value "+String(t)+" is not a constructor or null");Br(e,t);function r(){this.constructor=e}e.prototype=t===null?Object.create(t):(r.prototype=t.prototype,new r)}function qs(e,t,r,n){function i(a){return a instanceof r?a:new r(function(s){s(a)})}return new(r||(r=Promise))(function(a,s){function o($){try{u(n.next($))}catch(v){s(v)}}function l($){try{u(n.throw($))}catch(v){s(v)}}function u($){$.done?a($.value):i($.value).then(o,l)}u((n=n.apply(e,t||[])).next())})}function mi(e,t){var r={label:0,sent:function(){if(a[0]&1)throw a[1];return a[1]},trys:[],ops:[]},n,i,a,s;return s={next:o(0),throw:o(1),return:o(2)},typeof Symbol=="function"&&(s[Symbol.iterator]=function(){return this}),s;function o(u){return function($){return l([u,$])}}function l(u){if(n)throw new TypeError("Generator is already executing.");for(;s&&(s=0,u[0]&&(r=0)),r;)try{if(n=1,i&&(a=u[0]&2?i.return:u[0]?i.throw||((a=i.return)&&a.call(i),0):i.next)&&!(a=a.call(i,u[1])).done)return a;switch(i=0,a&&(u=[u[0]&2,a.value]),u[0]){case 0:case 1:a=u;break;case 4:return r.label++,{value:u[1],done:!1};case 5:r.label++,i=u[1],u=[0];continue;case 7:u=r.ops.pop(),r.trys.pop();continue;default:if(a=r.trys,!(a=a.length>0&&a[a.length-1])&&(u[0]===6||u[0]===2)){r=0;continue}if(u[0]===3&&(!a||u[1]>a[0]&&u[1]<a[3])){r.label=u[1];break}if(u[0]===6&&r.label<a[1]){r.label=a[1],a=u;break}if(a&&r.label<a[2]){r.label=a[2],r.ops.push(u);break}a[2]&&r.ops.pop(),r.trys.pop();continue}u=t.call(e,r)}catch($){u=[6,$],i=0}finally{n=a=0}if(u[0]&5)throw u[1];return{value:u[0]?u[1]:void 0,done:!0}}}function gt(e){var t=typeof Symbol=="function"&&Symbol.iterator,r=t&&e[t],n=0;if(r)return r.call(e);if(e&&typeof e.length=="number")return{next:function(){return e&&n>=e.length&&(e=void 0),{value:e&&e[n++],done:!e}}};throw new TypeError(t?"Object is not iterable.":"Symbol.iterator is not defined.")}function mt(e,t){var r=typeof Symbol=="function"&&e[Symbol.iterator];if(!r)return e;var n=r.call(e),i,a=[],s;try{for(;(t===void 0||t-- >0)&&!(i=n.next()).done;)a.push(i.value)}catch(o){s={error:o}}finally{try{i&&!i.done&&(r=n.return)&&r.call(n)}finally{if(s)throw s.error}}return a}function It(e,t,r){if(r||arguments.length===2)for(var n=0,i=t.length,a;n<i;n++)(a||!(n in t))&&(a||(a=Array.prototype.slice.call(t,0,n)),a[n]=t[n]);return e.concat(a||Array.prototype.slice.call(t))}function vt(e){return this instanceof vt?(this.v=e,this):new vt(e)}function Gs(e,t,r){if(!Symbol.asyncIterator)throw new TypeError("Symbol.asyncIterator is not defined.");var n=r.apply(e,t||[]),i,a=[];return i={},o("next"),o("throw"),o("return",s),i[Symbol.asyncIterator]=function(){return this},i;function s(y){return function(C){return Promise.resolve(C).then(y,v)}}function o(y,C){n[y]&&(i[y]=function(F){return new Promise(function(H,X){a.push([y,F,H,X])>1||l(y,F)})},C&&(i[y]=C(i[y])))}function l(y,C){try{u(n[y](C))}catch(F){k(a[0][3],F)}}function u(y){y.value instanceof vt?Promise.resolve(y.value.v).then($,v):k(a[0][2],y)}function $(y){l("next",y)}function v(y){l("throw",y)}function k(y,C){y(C),a.shift(),a.length&&l(a[0][0],a[0][1])}}function Ys(e){if(!Symbol.asyncIterator)throw new TypeError("Symbol.asyncIterator is not defined.");var t=e[Symbol.asyncIterator],r;return t?t.call(e):(e=typeof gt=="function"?gt(e):e[Symbol.iterator](),r={},n("next"),n("throw"),n("return"),r[Symbol.asyncIterator]=function(){return this},r);function n(a){r[a]=e[a]&&function(s){return new Promise(function(o,l){s=e[a](s),i(o,l,s.done,s.value)})}}function i(a,s,o,l){Promise.resolve(l).then(function(u){a({value:u,done:o})},s)}}typeof SuppressedError=="function"&&SuppressedError;function Z(e){return typeof e=="function"}function vi(e){var t=function(n){Error.call(n),n.stack=new Error().stack},r=e(t);return r.prototype=Object.create(Error.prototype),r.prototype.constructor=r,r}var Lr=vi(function(e){return function(r){e(this),this.message=r?r.length+` errors occurred during unsubscription:
|
|
49
|
+
`+r.map(function(n,i){return i+1+") "+n.toString()}).join(`
|
|
50
|
+
`):"",this.name="UnsubscriptionError",this.errors=r}});function nr(e,t){if(e){var r=e.indexOf(t);0<=r&&e.splice(r,1)}}var bt=function(){function e(t){this.initialTeardown=t,this.closed=!1,this._parentage=null,this._finalizers=null}return e.prototype.unsubscribe=function(){var t,r,n,i,a;if(!this.closed){this.closed=!0;var s=this._parentage;if(s)if(this._parentage=null,Array.isArray(s))try{for(var o=gt(s),l=o.next();!l.done;l=o.next()){var u=l.value;u.remove(this)}}catch(F){t={error:F}}finally{try{l&&!l.done&&(r=o.return)&&r.call(o)}finally{if(t)throw t.error}}else s.remove(this);var $=this.initialTeardown;if(Z($))try{$()}catch(F){a=F instanceof Lr?F.errors:[F]}var v=this._finalizers;if(v){this._finalizers=null;try{for(var k=gt(v),y=k.next();!y.done;y=k.next()){var C=y.value;try{wi(C)}catch(F){a=a??[],F instanceof Lr?a=It(It([],mt(a)),mt(F.errors)):a.push(F)}}}catch(F){n={error:F}}finally{try{y&&!y.done&&(i=k.return)&&i.call(k)}finally{if(n)throw n.error}}}if(a)throw new Lr(a)}},e.prototype.add=function(t){var r;if(t&&t!==this)if(this.closed)wi(t);else{if(t instanceof e){if(t.closed||t._hasParent(this))return;t._addParent(this)}(this._finalizers=(r=this._finalizers)!==null&&r!==void 0?r:[]).push(t)}},e.prototype._hasParent=function(t){var r=this._parentage;return r===t||Array.isArray(r)&&r.includes(t)},e.prototype._addParent=function(t){var r=this._parentage;this._parentage=Array.isArray(r)?(r.push(t),r):r?[r,t]:t},e.prototype._removeParent=function(t){var r=this._parentage;r===t?this._parentage=null:Array.isArray(r)&&nr(r,t)},e.prototype.remove=function(t){var r=this._finalizers;r&&nr(r,t),t instanceof e&&t._removeParent(this)},e.EMPTY=function(){var t=new e;return t.closed=!0,t}(),e}(),bi=bt.EMPTY;function yi(e){return e instanceof bt||e&&"closed"in e&&Z(e.remove)&&Z(e.add)&&Z(e.unsubscribe)}function wi(e){Z(e)?e():e.unsubscribe()}var xi={onUnhandledError:null,onStoppedNotification:null,Promise:void 0,useDeprecatedSynchronousErrorHandling:!1,useDeprecatedNextContext:!1},$i={setTimeout:function(e,t){for(var r=[],n=2;n<arguments.length;n++)r[n-2]=arguments[n];return setTimeout.apply(void 0,It([e,t],mt(r)))},clearTimeout:function(e){var t=$i.delegate;return(t?.clearTimeout||clearTimeout)(e)},delegate:void 0};function ki(e){$i.setTimeout(function(){throw e})}function jr(){}function ir(e){e()}var Nr=function(e){He(t,e);function t(r){var n=e.call(this)||this;return n.isStopped=!1,r?(n.destination=r,yi(r)&&r.add(n)):n.destination=eo,n}return t.create=function(r,n,i){return new Hr(r,n,i)},t.prototype.next=function(r){this.isStopped||this._next(r)},t.prototype.error=function(r){this.isStopped||(this.isStopped=!0,this._error(r))},t.prototype.complete=function(){this.isStopped||(this.isStopped=!0,this._complete())},t.prototype.unsubscribe=function(){this.closed||(this.isStopped=!0,e.prototype.unsubscribe.call(this),this.destination=null)},t.prototype._next=function(r){this.destination.next(r)},t.prototype._error=function(r){try{this.destination.error(r)}finally{this.unsubscribe()}},t.prototype._complete=function(){try{this.destination.complete()}finally{this.unsubscribe()}},t}(bt),Js=Function.prototype.bind;function Ur(e,t){return Js.call(e,t)}var Qs=function(){function e(t){this.partialObserver=t}return e.prototype.next=function(t){var r=this.partialObserver;if(r.next)try{r.next(t)}catch(n){ar(n)}},e.prototype.error=function(t){var r=this.partialObserver;if(r.error)try{r.error(t)}catch(n){ar(n)}else ar(t)},e.prototype.complete=function(){var t=this.partialObserver;if(t.complete)try{t.complete()}catch(r){ar(r)}},e}(),Hr=function(e){He(t,e);function t(r,n,i){var a=e.call(this)||this,s;if(Z(r)||!r)s={next:r??void 0,error:n??void 0,complete:i??void 0};else{var o;a&&xi.useDeprecatedNextContext?(o=Object.create(r),o.unsubscribe=function(){return a.unsubscribe()},s={next:r.next&&Ur(r.next,o),error:r.error&&Ur(r.error,o),complete:r.complete&&Ur(r.complete,o)}):s=r}return a.destination=new Qs(s),a}return t}(Nr);function ar(e){ki(e)}function Xs(e){throw e}var eo={closed:!0,next:jr,error:Xs,complete:jr},Vr=function(){return typeof Symbol=="function"&&Symbol.observable||"@@observable"}();function Kr(e){return e}function to(e){return e.length===0?Kr:e.length===1?e[0]:function(r){return e.reduce(function(n,i){return i(n)},r)}}var fe=function(){function e(t){t&&(this._subscribe=t)}return e.prototype.lift=function(t){var r=new e;return r.source=this,r.operator=t,r},e.prototype.subscribe=function(t,r,n){var i=this,a=no(t)?t:new Hr(t,r,n);return ir(function(){var s=i,o=s.operator,l=s.source;a.add(o?o.call(a,l):l?i._subscribe(a):i._trySubscribe(a))}),a},e.prototype._trySubscribe=function(t){try{return this._subscribe(t)}catch(r){t.error(r)}},e.prototype.forEach=function(t,r){var n=this;return r=_i(r),new r(function(i,a){var s=new Hr({next:function(o){try{t(o)}catch(l){a(l),s.unsubscribe()}},error:a,complete:i});n.subscribe(s)})},e.prototype._subscribe=function(t){var r;return(r=this.source)===null||r===void 0?void 0:r.subscribe(t)},e.prototype[Vr]=function(){return this},e.prototype.pipe=function(){for(var t=[],r=0;r<arguments.length;r++)t[r]=arguments[r];return to(t)(this)},e.prototype.toPromise=function(t){var r=this;return t=_i(t),new t(function(n,i){var a;r.subscribe(function(s){return a=s},function(s){return i(s)},function(){return n(a)})})},e.create=function(t){return new e(t)},e}();function _i(e){var t;return(t=e??xi.Promise)!==null&&t!==void 0?t:Promise}function ro(e){return e&&Z(e.next)&&Z(e.error)&&Z(e.complete)}function no(e){return e&&e instanceof Nr||ro(e)&&yi(e)}function io(e){return Z(e?.lift)}function yt(e){return function(t){if(io(t))return t.lift(function(r){try{return e(r,this)}catch(n){this.error(n)}});throw new TypeError("Unable to lift unknown Observable type")}}function rt(e,t,r,n,i){return new ao(e,t,r,n,i)}var ao=function(e){He(t,e);function t(r,n,i,a,s,o){var l=e.call(this,r)||this;return l.onFinalize=s,l.shouldUnsubscribe=o,l._next=n?function(u){try{n(u)}catch($){r.error($)}}:e.prototype._next,l._error=a?function(u){try{a(u)}catch($){r.error($)}finally{this.unsubscribe()}}:e.prototype._error,l._complete=i?function(){try{i()}catch(u){r.error(u)}finally{this.unsubscribe()}}:e.prototype._complete,l}return t.prototype.unsubscribe=function(){var r;if(!this.shouldUnsubscribe||this.shouldUnsubscribe()){var n=this.closed;e.prototype.unsubscribe.call(this),!n&&((r=this.onFinalize)===null||r===void 0||r.call(this))}},t}(Nr),so=vi(function(e){return function(){e(this),this.name="ObjectUnsubscribedError",this.message="object unsubscribed"}}),Si=function(e){He(t,e);function t(){var r=e.call(this)||this;return r.closed=!1,r.currentObservers=null,r.observers=[],r.isStopped=!1,r.hasError=!1,r.thrownError=null,r}return t.prototype.lift=function(r){var n=new Ai(this,this);return n.operator=r,n},t.prototype._throwIfClosed=function(){if(this.closed)throw new so},t.prototype.next=function(r){var n=this;ir(function(){var i,a;if(n._throwIfClosed(),!n.isStopped){n.currentObservers||(n.currentObservers=Array.from(n.observers));try{for(var s=gt(n.currentObservers),o=s.next();!o.done;o=s.next()){var l=o.value;l.next(r)}}catch(u){i={error:u}}finally{try{o&&!o.done&&(a=s.return)&&a.call(s)}finally{if(i)throw i.error}}}})},t.prototype.error=function(r){var n=this;ir(function(){if(n._throwIfClosed(),!n.isStopped){n.hasError=n.isStopped=!0,n.thrownError=r;for(var i=n.observers;i.length;)i.shift().error(r)}})},t.prototype.complete=function(){var r=this;ir(function(){if(r._throwIfClosed(),!r.isStopped){r.isStopped=!0;for(var n=r.observers;n.length;)n.shift().complete()}})},t.prototype.unsubscribe=function(){this.isStopped=this.closed=!0,this.observers=this.currentObservers=null},Object.defineProperty(t.prototype,"observed",{get:function(){var r;return((r=this.observers)===null||r===void 0?void 0:r.length)>0},enumerable:!1,configurable:!0}),t.prototype._trySubscribe=function(r){return this._throwIfClosed(),e.prototype._trySubscribe.call(this,r)},t.prototype._subscribe=function(r){return this._throwIfClosed(),this._checkFinalizedStatuses(r),this._innerSubscribe(r)},t.prototype._innerSubscribe=function(r){var n=this,i=this,a=i.hasError,s=i.isStopped,o=i.observers;return a||s?bi:(this.currentObservers=null,o.push(r),new bt(function(){n.currentObservers=null,nr(o,r)}))},t.prototype._checkFinalizedStatuses=function(r){var n=this,i=n.hasError,a=n.thrownError,s=n.isStopped;i?r.error(a):s&&r.complete()},t.prototype.asObservable=function(){var r=new fe;return r.source=this,r},t.create=function(r,n){return new Ai(r,n)},t}(fe),Ai=function(e){He(t,e);function t(r,n){var i=e.call(this)||this;return i.destination=r,i.source=n,i}return t.prototype.next=function(r){var n,i;(i=(n=this.destination)===null||n===void 0?void 0:n.next)===null||i===void 0||i.call(n,r)},t.prototype.error=function(r){var n,i;(i=(n=this.destination)===null||n===void 0?void 0:n.error)===null||i===void 0||i.call(n,r)},t.prototype.complete=function(){var r,n;(n=(r=this.destination)===null||r===void 0?void 0:r.complete)===null||n===void 0||n.call(r)},t.prototype._subscribe=function(r){var n,i;return(i=(n=this.source)===null||n===void 0?void 0:n.subscribe(r))!==null&&i!==void 0?i:bi},t}(Si),oo={now:function(){return Date.now()},delegate:void 0},lo=function(e){He(t,e);function t(r,n){return e.call(this)||this}return t.prototype.schedule=function(r,n){return this},t}(bt),Ci={setInterval:function(e,t){for(var r=[],n=2;n<arguments.length;n++)r[n-2]=arguments[n];return setInterval.apply(void 0,It([e,t],mt(r)))},clearInterval:function(e){return clearInterval(e)},delegate:void 0},co=function(e){He(t,e);function t(r,n){var i=e.call(this,r,n)||this;return i.scheduler=r,i.work=n,i.pending=!1,i}return t.prototype.schedule=function(r,n){var i;if(n===void 0&&(n=0),this.closed)return this;this.state=r;var a=this.id,s=this.scheduler;return a!=null&&(this.id=this.recycleAsyncId(s,a,n)),this.pending=!0,this.delay=n,this.id=(i=this.id)!==null&&i!==void 0?i:this.requestAsyncId(s,this.id,n),this},t.prototype.requestAsyncId=function(r,n,i){return i===void 0&&(i=0),Ci.setInterval(r.flush.bind(r,this),i)},t.prototype.recycleAsyncId=function(r,n,i){if(i===void 0&&(i=0),i!=null&&this.delay===i&&this.pending===!1)return n;n!=null&&Ci.clearInterval(n)},t.prototype.execute=function(r,n){if(this.closed)return new Error("executing a cancelled action");this.pending=!1;var i=this._execute(r,n);if(i)return i;this.pending===!1&&this.id!=null&&(this.id=this.recycleAsyncId(this.scheduler,this.id,null))},t.prototype._execute=function(r,n){var i=!1,a;try{this.work(r)}catch(s){i=!0,a=s||new Error("Scheduled action threw falsy error")}if(i)return this.unsubscribe(),a},t.prototype.unsubscribe=function(){if(!this.closed){var r=this,n=r.id,i=r.scheduler,a=i.actions;this.work=this.state=this.scheduler=null,this.pending=!1,nr(a,this),n!=null&&(this.id=this.recycleAsyncId(i,n,null)),this.delay=null,e.prototype.unsubscribe.call(this)}},t}(lo),Mi=function(){function e(t,r){r===void 0&&(r=e.now),this.schedulerActionCtor=t,this.now=r}return e.prototype.schedule=function(t,r,n){return r===void 0&&(r=0),new this.schedulerActionCtor(this,t).schedule(n,r)},e.now=oo.now,e}(),uo=function(e){He(t,e);function t(r,n){n===void 0&&(n=Mi.now);var i=e.call(this,r,n)||this;return i.actions=[],i._active=!1,i}return t.prototype.flush=function(r){var n=this.actions;if(this._active){n.push(r);return}var i;this._active=!0;do if(i=r.execute(r.state,r.delay))break;while(r=n.shift());if(this._active=!1,i){for(;r=n.shift();)r.unsubscribe();throw i}},t}(Mi),Wr=new uo(co),ho=Wr,po=new fe(function(e){return e.complete()});function Ei(e){return e&&Z(e.schedule)}function Ti(e){return e[e.length-1]}function Pi(e){return Ei(Ti(e))?e.pop():void 0}function fo(e,t){return typeof Ti(e)=="number"?e.pop():t}var Zr=function(e){return e&&typeof e.length=="number"&&typeof e!="function"};function Fi(e){return Z(e?.then)}function zi(e){return Z(e[Vr])}function Oi(e){return Symbol.asyncIterator&&Z(e?.[Symbol.asyncIterator])}function Ii(e){return new TypeError("You provided "+(e!==null&&typeof e=="object"?"an invalid object":"'"+e+"'")+" where a stream was expected. You can provide an Observable, Promise, ReadableStream, Array, AsyncIterable, or Iterable.")}function go(){return typeof Symbol!="function"||!Symbol.iterator?"@@iterator":Symbol.iterator}var Ri=go();function Di(e){return Z(e?.[Ri])}function Bi(e){return Gs(this,arguments,function(){var r,n,i,a;return mi(this,function(s){switch(s.label){case 0:r=e.getReader(),s.label=1;case 1:s.trys.push([1,,9,10]),s.label=2;case 2:return[4,vt(r.read())];case 3:return n=s.sent(),i=n.value,a=n.done,a?[4,vt(void 0)]:[3,5];case 4:return[2,s.sent()];case 5:return[4,vt(i)];case 6:return[4,s.sent()];case 7:return s.sent(),[3,2];case 8:return[3,10];case 9:return r.releaseLock(),[7];case 10:return[2]}})})}function Li(e){return Z(e?.getReader)}function Ve(e){if(e instanceof fe)return e;if(e!=null){if(zi(e))return mo(e);if(Zr(e))return vo(e);if(Fi(e))return bo(e);if(Oi(e))return ji(e);if(Di(e))return yo(e);if(Li(e))return wo(e)}throw Ii(e)}function mo(e){return new fe(function(t){var r=e[Vr]();if(Z(r.subscribe))return r.subscribe(t);throw new TypeError("Provided object does not correctly implement Symbol.observable")})}function vo(e){return new fe(function(t){for(var r=0;r<e.length&&!t.closed;r++)t.next(e[r]);t.complete()})}function bo(e){return new fe(function(t){e.then(function(r){t.closed||(t.next(r),t.complete())},function(r){return t.error(r)}).then(null,ki)})}function yo(e){return new fe(function(t){var r,n;try{for(var i=gt(e),a=i.next();!a.done;a=i.next()){var s=a.value;if(t.next(s),t.closed)return}}catch(o){r={error:o}}finally{try{a&&!a.done&&(n=i.return)&&n.call(i)}finally{if(r)throw r.error}}t.complete()})}function ji(e){return new fe(function(t){xo(e,t).catch(function(r){return t.error(r)})})}function wo(e){return ji(Bi(e))}function xo(e,t){var r,n,i,a;return qs(this,void 0,void 0,function(){var s,o;return mi(this,function(l){switch(l.label){case 0:l.trys.push([0,5,6,11]),r=Ys(e),l.label=1;case 1:return[4,r.next()];case 2:if(n=l.sent(),!!n.done)return[3,4];if(s=n.value,t.next(s),t.closed)return[2];l.label=3;case 3:return[3,1];case 4:return[3,11];case 5:return o=l.sent(),i={error:o},[3,11];case 6:return l.trys.push([6,,9,10]),n&&!n.done&&(a=r.return)?[4,a.call(r)]:[3,8];case 7:l.sent(),l.label=8;case 8:return[3,10];case 9:if(i)throw i.error;return[7];case 10:return[7];case 11:return t.complete(),[2]}})})}function nt(e,t,r,n,i){n===void 0&&(n=0),i===void 0&&(i=!1);var a=t.schedule(function(){r(),i?e.add(this.schedule(null,n)):this.unsubscribe()},n);if(e.add(a),!i)return a}function Ni(e,t){return t===void 0&&(t=0),yt(function(r,n){r.subscribe(rt(n,function(i){return nt(n,e,function(){return n.next(i)},t)},function(){return nt(n,e,function(){return n.complete()},t)},function(i){return nt(n,e,function(){return n.error(i)},t)}))})}function Ui(e,t){return t===void 0&&(t=0),yt(function(r,n){n.add(e.schedule(function(){return r.subscribe(n)},t))})}function $o(e,t){return Ve(e).pipe(Ui(t),Ni(t))}function ko(e,t){return Ve(e).pipe(Ui(t),Ni(t))}function _o(e,t){return new fe(function(r){var n=0;return t.schedule(function(){n===e.length?r.complete():(r.next(e[n++]),r.closed||this.schedule())})})}function So(e,t){return new fe(function(r){var n;return nt(r,t,function(){n=e[Ri](),nt(r,t,function(){var i,a,s;try{i=n.next(),a=i.value,s=i.done}catch(o){r.error(o);return}s?r.complete():r.next(a)},0,!0)}),function(){return Z(n?.return)&&n.return()}})}function Hi(e,t){if(!e)throw new Error("Iterable cannot be null");return new fe(function(r){nt(r,t,function(){var n=e[Symbol.asyncIterator]();nt(r,t,function(){n.next().then(function(i){i.done?r.complete():r.next(i.value)})},0,!0)})})}function Ao(e,t){return Hi(Bi(e),t)}function Co(e,t){if(e!=null){if(zi(e))return $o(e,t);if(Zr(e))return _o(e,t);if(Fi(e))return ko(e,t);if(Oi(e))return Hi(e,t);if(Di(e))return So(e,t);if(Li(e))return Ao(e,t)}throw Ii(e)}function Vi(e,t){return t?Co(e,t):Ve(e)}function Mo(){for(var e=[],t=0;t<arguments.length;t++)e[t]=arguments[t];var r=Pi(e);return Vi(e,r)}function Eo(e){return e instanceof Date&&!isNaN(e)}function qr(e,t){return yt(function(r,n){var i=0;r.subscribe(rt(n,function(a){n.next(e.call(t,a,i++))}))})}var To=Array.isArray;function Po(e,t){return To(t)?e.apply(void 0,It([],mt(t))):e(t)}function Fo(e){return qr(function(t){return Po(e,t)})}function zo(e,t,r,n,i,a,s,o){var l=[],u=0,$=0,v=!1,k=function(){v&&!l.length&&!u&&t.complete()},y=function(F){return u<n?C(F):l.push(F)},C=function(F){u++;var H=!1;Ve(r(F,$++)).subscribe(rt(t,function(X){t.next(X)},function(){H=!0},void 0,function(){if(H)try{u--;for(var X=function(){var p=l.shift();s||C(p)};l.length&&u<n;)X();k()}catch(p){t.error(p)}}))};return e.subscribe(rt(t,y,function(){v=!0,k()})),function(){}}function Gr(e,t,r){return r===void 0&&(r=1/0),Z(t)?Gr(function(n,i){return qr(function(a,s){return t(n,a,i,s)})(Ve(e(n,i)))},r):(typeof t=="number"&&(r=t),yt(function(n,i){return zo(n,i,e,r)}))}function Oo(e){return e===void 0&&(e=1/0),Gr(Kr,e)}var Io=["addListener","removeListener"],Ro=["addEventListener","removeEventListener"],Do=["on","off"];function Rt(e,t,r,n){if(Z(r)&&(n=r,r=void 0),n)return Rt(e,t,r).pipe(Fo(n));var i=mt(jo(e)?Ro.map(function(o){return function(l){return e[o](t,l,r)}}):Bo(e)?Io.map(Ki(e,t)):Lo(e)?Do.map(Ki(e,t)):[],2),a=i[0],s=i[1];if(!a&&Zr(e))return Gr(function(o){return Rt(o,t,r)})(Ve(e));if(!a)throw new TypeError("Invalid event target");return new fe(function(o){var l=function(){for(var u=[],$=0;$<arguments.length;$++)u[$]=arguments[$];return o.next(1<u.length?u:u[0])};return a(l),function(){return s(l)}})}function Ki(e,t){return function(r){return function(n){return e[r](t,n)}}}function Bo(e){return Z(e.addListener)&&Z(e.removeListener)}function Lo(e){return Z(e.on)&&Z(e.off)}function jo(e){return Z(e.addEventListener)&&Z(e.removeEventListener)}function No(e,t,r){r===void 0&&(r=ho);var n=-1;return Ei(t)?r=t:n=t,new fe(function(i){var a=Eo(e)?+e-r.now():e;a<0&&(a=0);var s=0;return r.schedule(function(){i.closed||(i.next(s++),0<=n?this.schedule(void 0,n):i.complete())},a)})}function Uo(e,t){return t===void 0&&(t=Wr),No(e,e,t)}function Ho(){for(var e=[],t=0;t<arguments.length;t++)e[t]=arguments[t];var r=Pi(e),n=fo(e,1/0),i=e;return i.length?i.length===1?Ve(i[0]):Oo(n)(Vi(i,r)):po}function Vo(e){return yt(function(t,r){var n=!1,i=null;t.subscribe(rt(r,function(a){n=!0,i=a})),Ve(e).subscribe(rt(r,function(){if(n){n=!1;var a=i;i=null,r.next(a)}},jr))})}function Ko(e,t){return t===void 0&&(t=Wr),Vo(Uo(e,t))}function Wo(e,t,r){var n=Z(e)||t||r?{next:e,error:t,complete:r}:e;return n?yt(function(i,a){var s;(s=n.subscribe)===null||s===void 0||s.call(n);var o=!0;i.subscribe(rt(a,function(l){var u;(u=n.next)===null||u===void 0||u.call(n,l),a.next(l)},function(){var l;o=!1,(l=n.complete)===null||l===void 0||l.call(n),a.complete()},function(l){var u;o=!1,(u=n.error)===null||u===void 0||u.call(n,l),a.error(l)},function(){var l,u;o&&((l=n.unsubscribe)===null||l===void 0||l.call(n)),(u=n.finalize)===null||u===void 0||u.call(n)}))}):Kr}function Wi(){const e="test";try{return localStorage.setItem(e,e),localStorage.removeItem(e),!0}catch{return!1}}function Ee(e,t,r){return new CustomEvent(e,{detail:t,...r})}const sr=(e,t)=>b`<li title=${e||P} class="my-3 rounded bg-white px-2 py-3 shadow">${t}</li>`,it=(e,t)=>b`<p title=${t||P}>${e}</p>`,Zi=e=>b`<div class="mb-6 mr-6 mt-2 flex flex-col gap-4">${e}</div>`,Q=(e,t)=>b`<span role="img" aria-label="${t}">${e}</span>`;/**
|
|
51
|
+
* @license
|
|
52
|
+
* Copyright 2021 Google LLC
|
|
53
|
+
* SPDX-License-Identifier: BSD-3-Clause
|
|
54
|
+
*/let Zo=class{constructor(t,{target:r,config:n,callback:i,skipInitial:a}){this.t=new Set,this.o=!1,this.i=!1,this.h=t,r!==null&&this.t.add(r??t),this.l=n,this.o=a??this.o,this.callback=i,window.ResizeObserver?(this.u=new ResizeObserver(s=>{this.handleChanges(s),this.h.requestUpdate()}),t.addController(this)):console.warn("ResizeController error: browser does not support ResizeObserver.")}handleChanges(t){this.value=this.callback?.(t,this.u)}hostConnected(){for(const t of this.t)this.observe(t)}hostDisconnected(){this.disconnect()}async hostUpdated(){!this.o&&this.i&&this.handleChanges([]),this.i=!1}observe(t){this.t.add(t),this.u.observe(t,this.l),this.i=!0,this.h.requestUpdate()}unobserve(t){this.t.delete(t),this.u.unobserve(t)}disconnect(){this.u.disconnect()}};/**
|
|
55
|
+
* @license
|
|
56
|
+
* Copyright 2017 Google LLC
|
|
57
|
+
* SPDX-License-Identifier: BSD-3-Clause
|
|
58
|
+
*/const Yr={ATTRIBUTE:1,CHILD:2,PROPERTY:3,BOOLEAN_ATTRIBUTE:4,EVENT:5,ELEMENT:6},Jr=e=>(...t)=>({_$litDirective$:e,values:t});class Qr{constructor(t){}get _$AU(){return this._$AM._$AU}_$AT(t,r,n){this._$Ct=t,this._$AM=r,this._$Ci=n}_$AS(t,r){return this.update(t,r)}update(t,r){return this.render(...r)}}/**
|
|
59
|
+
* @license
|
|
60
|
+
* Copyright 2018 Google LLC
|
|
61
|
+
* SPDX-License-Identifier: BSD-3-Clause
|
|
62
|
+
*/const Xr=Jr(class extends Qr{constructor(e){if(super(e),e.type!==Yr.ATTRIBUTE||e.name!=="class"||e.strings?.length>2)throw Error("`classMap()` can only be used in the `class` attribute and must be the only part in the attribute.")}render(e){return" "+Object.keys(e).filter(t=>e[t]).join(" ")+" "}update(e,[t]){if(this.st===void 0){this.st=new Set,e.strings!==void 0&&(this.nt=new Set(e.strings.join(" ").split(/\s/).filter(n=>n!=="")));for(const n in t)t[n]&&!this.nt?.has(n)&&this.st.add(n);return this.render(t)}const r=e.element.classList;for(const n of this.st)n in t||(r.remove(n),this.st.delete(n));for(const n in t){const i=!!t[n];i===this.st.has(n)||this.nt?.has(n)||(i?(r.add(n),this.st.add(n)):(r.remove(n),this.st.delete(n)))}return Oe}}),qo=`*,::backdrop,:after,:before{--tw-border-spacing-x:0;--tw-border-spacing-y:0;--tw-translate-x:0;--tw-translate-y:0;--tw-rotate:0;--tw-skew-x:0;--tw-skew-y:0;--tw-scale-x:1;--tw-scale-y:1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness:proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-color:#3b82f680;--tw-ring-offset-shadow:0 0 #0000;--tw-ring-shadow:0 0 #0000;--tw-shadow:0 0 #0000;--tw-shadow-colored:0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }/*! tailwindcss v3.4.15 | MIT License | https://tailwindcss.com*/*,:after,:before{border-color:rgb(var(--mut-gray-200,228 228 231)/1);border-style:solid;border-width:0;box-sizing:border-box}:after,:before{--tw-content:""}:host,html{line-height:1.5;-webkit-text-size-adjust:100%;font-family:ui-sans-serif,system-ui,sans-serif,Apple Color Emoji,Segoe UI Emoji,Segoe UI Symbol,Noto Color Emoji;font-feature-settings:normal;font-variation-settings:normal;tab-size:4;-webkit-tap-highlight-color:transparent}body{line-height:inherit;margin:0}hr{border-top-width:1px;color:inherit;height:0}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,pre,samp{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace;font-feature-settings:normal;font-size:1em;font-variation-settings:normal}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:initial}sub{bottom:-.25em}sup{top:-.5em}table{border-collapse:collapse;border-color:inherit;text-indent:0}button,input,optgroup,select,textarea{color:inherit;font-family:inherit;font-feature-settings:inherit;font-size:100%;font-variation-settings:inherit;font-weight:inherit;letter-spacing:inherit;line-height:inherit;margin:0;padding:0}button,select{text-transform:none}button,input:where([type=button]),input:where([type=reset]),input:where([type=submit]){-webkit-appearance:button;background-color:initial;background-image:none}:-moz-focusring{outline:auto}:-moz-ui-invalid{box-shadow:none}progress{vertical-align:initial}::-webkit-inner-spin-button,::-webkit-outer-spin-button{height:auto}[type=search]{-webkit-appearance:textfield;outline-offset:-2px}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}summary{display:list-item}blockquote,dd,dl,figure,h1,h2,h3,h4,h5,h6,hr,p,pre{margin:0}fieldset{margin:0}fieldset,legend{padding:0}menu,ol,ul{list-style:none;margin:0;padding:0}dialog{padding:0}textarea{resize:vertical}input::placeholder,textarea::placeholder{color:rgb(var(--mut-gray-400,161 161 170)/1);opacity:1}[role=button],button{cursor:pointer}:disabled{cursor:default}audio,canvas,embed,iframe,img,object,svg,video{display:block;vertical-align:middle}img,video{height:auto;max-width:100%}[hidden]:where(:not([hidden=until-found])){display:none}[multiple],[type=date],[type=datetime-local],[type=email],[type=month],[type=number],[type=password],[type=search],[type=tel],[type=text],[type=time],[type=url],[type=week],input:where(:not([type])),select,textarea{-webkit-appearance:none;appearance:none;background-color:#fff;border-color:rgb(var(--mut-gray-500,113 113 122)/var(--tw-border-opacity,1));border-radius:0;border-width:1px;font-size:1rem;line-height:1.5rem;padding:.5rem .75rem;--tw-shadow:0 0 #0000}[multiple]:focus,[type=date]:focus,[type=datetime-local]:focus,[type=email]:focus,[type=month]:focus,[type=number]:focus,[type=password]:focus,[type=search]:focus,[type=tel]:focus,[type=text]:focus,[type=time]:focus,[type=url]:focus,[type=week]:focus,input:where(:not([type])):focus,select:focus,textarea:focus{outline:2px solid #0000;outline-offset:2px;--tw-ring-inset:var(--tw-empty, );--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-color:#2563eb;--tw-ring-offset-shadow:var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow:var(--tw-ring-inset) 0 0 0 calc(1px + var(--tw-ring-offset-width)) var(--tw-ring-color);border-color:#2563eb;box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}input::placeholder,textarea::placeholder{color:rgb(var(--mut-gray-500,113 113 122)/var(--tw-text-opacity,1));opacity:1}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-date-and-time-value{min-height:1.5em;text-align:inherit}::-webkit-datetime-edit{display:inline-flex}::-webkit-datetime-edit,::-webkit-datetime-edit-day-field,::-webkit-datetime-edit-hour-field,::-webkit-datetime-edit-meridiem-field,::-webkit-datetime-edit-millisecond-field,::-webkit-datetime-edit-minute-field,::-webkit-datetime-edit-month-field,::-webkit-datetime-edit-second-field,::-webkit-datetime-edit-year-field{padding-bottom:0;padding-top:0}select{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='none' viewBox='0 0 20 20'%3E%3Cpath stroke='%236b7280' stroke-linecap='round' stroke-linejoin='round' stroke-width='1.5' d='m6 8 4 4 4-4'/%3E%3C/svg%3E");background-position:right .5rem center;background-repeat:no-repeat;background-size:1.5em 1.5em;padding-right:2.5rem;-webkit-print-color-adjust:exact;print-color-adjust:exact}[multiple],[size]:where(select:not([size="1"])){background-image:none;background-position:0 0;background-repeat:unset;background-size:initial;padding-right:.75rem;-webkit-print-color-adjust:unset;print-color-adjust:unset}[type=checkbox],[type=radio]{-webkit-appearance:none;appearance:none;background-color:#fff;background-origin:border-box;border-color:rgb(var(--mut-gray-500,113 113 122)/var(--tw-border-opacity,1));border-width:1px;color:#2563eb;display:inline-block;flex-shrink:0;height:1rem;padding:0;-webkit-print-color-adjust:exact;print-color-adjust:exact;-webkit-user-select:none;user-select:none;vertical-align:middle;width:1rem;--tw-shadow:0 0 #0000}[type=checkbox]{border-radius:0}[type=radio]{border-radius:100%}[type=checkbox]:focus,[type=radio]:focus{outline:2px solid #0000;outline-offset:2px;--tw-ring-inset:var(--tw-empty, );--tw-ring-offset-width:2px;--tw-ring-offset-color:#fff;--tw-ring-color:#2563eb;--tw-ring-offset-shadow:var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow:var(--tw-ring-inset) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}[type=checkbox]:checked,[type=radio]:checked{background-color:currentColor;background-position:50%;background-repeat:no-repeat;background-size:100% 100%;border-color:#0000}[type=checkbox]:checked{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='%23fff' viewBox='0 0 16 16'%3E%3Cpath d='M12.207 4.793a1 1 0 0 1 0 1.414l-5 5a1 1 0 0 1-1.414 0l-2-2a1 1 0 0 1 1.414-1.414L6.5 9.086l4.293-4.293a1 1 0 0 1 1.414 0'/%3E%3C/svg%3E")}@media (forced-colors:active){[type=checkbox]:checked{-webkit-appearance:auto;appearance:auto}}[type=radio]:checked{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='%23fff' viewBox='0 0 16 16'%3E%3Ccircle cx='8' cy='8' r='3'/%3E%3C/svg%3E")}@media (forced-colors:active){[type=radio]:checked{-webkit-appearance:auto;appearance:auto}}[type=checkbox]:checked:focus,[type=checkbox]:checked:hover,[type=checkbox]:indeterminate,[type=radio]:checked:focus,[type=radio]:checked:hover{background-color:currentColor;border-color:#0000}[type=checkbox]:indeterminate{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='none' viewBox='0 0 16 16'%3E%3Cpath stroke='%23fff' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' d='M4 8h8'/%3E%3C/svg%3E");background-position:50%;background-repeat:no-repeat;background-size:100% 100%}@media (forced-colors:active){[type=checkbox]:indeterminate{-webkit-appearance:auto;appearance:auto}}[type=checkbox]:indeterminate:focus,[type=checkbox]:indeterminate:hover{background-color:currentColor;border-color:#0000}[type=file]{background:unset;border-color:inherit;border-radius:0;border-width:0;font-size:unset;line-height:inherit;padding:0}[type=file]:focus{outline:1px solid ButtonText;outline:1px auto -webkit-focus-ring-color}.container{margin-left:auto;margin-right:auto;width:100%}@media (min-width:640px){.container{max-width:640px}}@media (min-width:768px){.container{max-width:768px}}@media (min-width:1024px){.container{max-width:1024px}}@media (min-width:1280px){.container{max-width:1280px}}@media (min-width:1536px){.container{max-width:1536px}}@media (min-width:2000px){.container{max-width:2000px}}.sr-only{height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute;width:1px;clip:rect(0,0,0,0);border-width:0;white-space:nowrap}.pointer-events-none{pointer-events:none}.visible{visibility:visible}.static{position:static}.fixed{position:fixed}.absolute{position:absolute}.relative{position:relative}.sticky{position:sticky}.bottom-0{bottom:0}.left-0{left:0}.top-0{top:0}.top-offset{top:var(--top-offset,0)}.z-10{z-index:10}.z-20{z-index:20}.z-50{z-index:50}.float-right{float:right}.m-4{margin:1rem}.mx-1{margin-left:.25rem;margin-right:.25rem}.mx-2{margin-left:.5rem;margin-right:.5rem}.my-3{margin-bottom:.75rem;margin-top:.75rem}.my-4{margin-bottom:1rem;margin-top:1rem}.-mb-px{margin-bottom:-1px}.mb-3{margin-bottom:.75rem}.mb-4{margin-bottom:1rem}.mb-6{margin-bottom:1.5rem}.ml-1{margin-left:.25rem}.ml-2{margin-left:.5rem}.ml-4{margin-left:1rem}.ml-6{margin-left:1.5rem}.ml-auto{margin-left:auto}.mr-2{margin-right:.5rem}.mr-3{margin-right:.75rem}.mr-4{margin-right:1rem}.mr-6{margin-right:1.5rem}.mr-auto{margin-right:auto}.ms-1{margin-inline-start:.25rem}.ms-3{margin-inline-start:.75rem}.mt-2{margin-top:.5rem}.block{display:block}.inline-block{display:inline-block}.inline{display:inline}.flex{display:flex}.inline-flex{display:inline-flex}.table{display:table}.hidden{display:none}.size-4{height:1rem;width:1rem}.size-6{height:1.5rem;width:1.5rem}.h-2{height:.5rem}.h-3{height:.75rem}.h-4{height:1rem}.h-5{height:1.25rem}.h-8{height:2rem}.h-fit{height:fit-content}.h-full{height:100%}.max-h-\\[33rem\\]{max-height:33rem}.w-12{width:3rem}.w-24{width:6rem}.w-4{width:1rem}.w-5{width:1.25rem}.w-full{width:100%}.min-w-\\[24px\\]{min-width:24px}.max-w-6xl{max-width:72rem}.max-w-\\[40rem\\]{max-width:40rem}.table-auto{table-layout:auto}.rotate-180{--tw-rotate:180deg;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.cursor-help{cursor:help}.snap-y{scroll-snap-type:y var(--tw-scroll-snap-strictness)}.snap-start{scroll-snap-align:start}.flex-row{flex-direction:row}.flex-col{flex-direction:column}.flex-wrap{flex-wrap:wrap}.items-center{align-items:center}.justify-start{justify-content:flex-start}.justify-center{justify-content:center}.justify-around{justify-content:space-around}.gap-2{gap:.5rem}.gap-4{gap:1rem}.space-y-4>:not([hidden])~:not([hidden]){--tw-space-y-reverse:0;margin-bottom:calc(1rem*var(--tw-space-y-reverse));margin-top:calc(1rem*(1 - var(--tw-space-y-reverse)))}.divide-y>:not([hidden])~:not([hidden]){--tw-divide-y-reverse:0;border-bottom-width:calc(1px*var(--tw-divide-y-reverse));border-top-width:calc(1px*(1 - var(--tw-divide-y-reverse)))}.divide-gray-200>:not([hidden])~:not([hidden]){--tw-divide-opacity:1;border-color:rgb(var(--mut-gray-200,228 228 231)/var(--tw-divide-opacity,1))}.overflow-auto{overflow:auto}.overflow-hidden{overflow:hidden}.overflow-x-auto{overflow-x:auto}.overflow-y-auto{overflow-y:auto}.whitespace-pre-wrap{white-space:pre-wrap}.rounded{border-radius:.25rem}.rounded-full{border-radius:9999px}.rounded-lg{border-radius:.5rem}.rounded-md{border-radius:.375rem}.rounded-t-3xl{border-top-left-radius:1.5rem;border-top-right-radius:1.5rem}.rounded-t-lg{border-top-left-radius:.5rem;border-top-right-radius:.5rem}.border{border-width:1px}.border-0{border-width:0}.border-b{border-bottom-width:1px}.border-b-2{border-bottom-width:2px}.border-none{border-style:none}.border-gray-200{--tw-border-opacity:1;border-color:rgb(var(--mut-gray-200,228 228 231)/var(--tw-border-opacity,1))}.border-gray-300{--tw-border-opacity:1;border-color:rgb(var(--mut-gray-300,212 212 216)/var(--tw-border-opacity,1))}.border-primary-600{--tw-border-opacity:1;border-color:rgb(var(--mut-primary-600,2 132 199)/var(--tw-border-opacity,1))}.border-transparent{border-color:#0000}.bg-blue-600{--tw-bg-opacity:1;background-color:rgb(37 99 235/var(--tw-bg-opacity,1))}.bg-gray-100{--tw-bg-opacity:1;background-color:rgb(var(--mut-gray-100,244 244 245)/var(--tw-bg-opacity,1))}.bg-gray-200{--tw-bg-opacity:1;background-color:rgb(var(--mut-gray-200,228 228 231)/var(--tw-bg-opacity,1))}.bg-gray-200\\/60{background-color:rgb(var(--mut-gray-200,228 228 231)/.6)}.bg-gray-300{--tw-bg-opacity:1;background-color:rgb(var(--mut-gray-300,212 212 216)/var(--tw-bg-opacity,1))}.bg-gray-950\\/50{background-color:#03071280}.bg-green-100{--tw-bg-opacity:1;background-color:rgb(220 252 231/var(--tw-bg-opacity,1))}.bg-green-600{--tw-bg-opacity:1;background-color:rgb(22 163 74/var(--tw-bg-opacity,1))}.bg-inherit{background-color:inherit}.bg-orange-100{--tw-bg-opacity:1;background-color:rgb(255 237 213/var(--tw-bg-opacity,1))}.bg-primary-100{--tw-bg-opacity:1;background-color:rgb(var(--mut-primary-100,224 242 254)/var(--tw-bg-opacity,1))}.bg-red-100{--tw-bg-opacity:1;background-color:rgb(254 226 226/var(--tw-bg-opacity,1))}.bg-red-600{--tw-bg-opacity:1;background-color:rgb(220 38 38/var(--tw-bg-opacity,1))}.bg-transparent{background-color:initial}.bg-white{--tw-bg-opacity:1;background-color:rgb(var(--mut-white,255 255 255)/var(--tw-bg-opacity,1))}.bg-yellow-100{--tw-bg-opacity:1;background-color:rgb(254 249 195/var(--tw-bg-opacity,1))}.bg-yellow-400{--tw-bg-opacity:1;background-color:rgb(250 204 21/var(--tw-bg-opacity,1))}.bg-yellow-600{--tw-bg-opacity:1;background-color:rgb(202 138 4/var(--tw-bg-opacity,1))}.stroke-gray-800{stroke:rgb(var(--mut-gray-800,39 39 42)/1)}.p-1{padding:.25rem}.p-2{padding:.5rem}.p-3{padding:.75rem}.p-4{padding:1rem}.px-2{padding-left:.5rem;padding-right:.5rem}.px-2\\.5{padding-left:.625rem;padding-right:.625rem}.px-4{padding-left:1rem;padding-right:1rem}.py-0\\.5{padding-bottom:.125rem;padding-top:.125rem}.py-2{padding-bottom:.5rem;padding-top:.5rem}.py-3{padding-bottom:.75rem;padding-top:.75rem}.py-4{padding-bottom:1rem;padding-top:1rem}.py-6{padding-bottom:1.5rem;padding-top:1.5rem}.pb-4{padding-bottom:1rem}.pl-1{padding-left:.25rem}.pr-2{padding-right:.5rem}.pt-6{padding-top:1.5rem}.text-left{text-align:left}.text-center{text-align:center}.align-middle{vertical-align:middle}.font-sans{font-family:ui-sans-serif,system-ui,sans-serif,Apple Color Emoji,Segoe UI Emoji,Segoe UI Symbol,Noto Color Emoji}.text-5xl{font-size:3rem;line-height:1}.text-lg{font-size:1.125rem;line-height:1.75rem}.text-sm{font-size:.875rem;line-height:1.25rem}.font-bold{font-weight:700}.font-light{font-weight:300}.font-medium{font-weight:500}.font-semibold{font-weight:600}.tracking-tight{letter-spacing:-.025em}.text-gray-200{--tw-text-opacity:1;color:rgb(var(--mut-gray-200,228 228 231)/var(--tw-text-opacity,1))}.text-gray-400{--tw-text-opacity:1;color:rgb(var(--mut-gray-400,161 161 170)/var(--tw-text-opacity,1))}.text-gray-600{--tw-text-opacity:1;color:rgb(var(--mut-gray-600,82 82 91)/var(--tw-text-opacity,1))}.text-gray-700{--tw-text-opacity:1;color:rgb(var(--mut-gray-700,63 63 70)/var(--tw-text-opacity,1))}.text-gray-800{--tw-text-opacity:1;color:rgb(var(--mut-gray-800,39 39 42)/var(--tw-text-opacity,1))}.text-gray-900{--tw-text-opacity:1;color:rgb(var(--mut-gray-900,24 24 27)/var(--tw-text-opacity,1))}.text-green-700{--tw-text-opacity:1;color:rgb(21 128 61/var(--tw-text-opacity,1))}.text-green-800{--tw-text-opacity:1;color:rgb(22 101 52/var(--tw-text-opacity,1))}.text-orange-800{--tw-text-opacity:1;color:rgb(154 52 18/var(--tw-text-opacity,1))}.text-primary-500{--tw-text-opacity:1;color:rgb(var(--mut-primary-500,14 165 233)/var(--tw-text-opacity,1))}.text-primary-800{--tw-text-opacity:1;color:rgb(var(--mut-primary-800,7 89 133)/var(--tw-text-opacity,1))}.text-primary-on{--tw-text-opacity:1;color:rgb(var(--mut-primary-on,3 105 161)/var(--tw-text-opacity,1))}.text-red-700{--tw-text-opacity:1;color:rgb(185 28 28/var(--tw-text-opacity,1))}.text-red-800{--tw-text-opacity:1;color:rgb(153 27 27/var(--tw-text-opacity,1))}.text-yellow-600{--tw-text-opacity:1;color:rgb(202 138 4/var(--tw-text-opacity,1))}.text-yellow-800{--tw-text-opacity:1;color:rgb(133 77 14/var(--tw-text-opacity,1))}.underline{text-decoration-line:underline}.decoration-dotted{text-decoration-style:dotted}.opacity-0{opacity:0}.shadow{--tw-shadow:0 1px 3px 0 #0000001a,0 1px 2px -1px #0000001a;--tw-shadow-colored:0 1px 3px 0 var(--tw-shadow-color),0 1px 2px -1px var(--tw-shadow-color)}.shadow,.shadow-lg{box-shadow:var(--tw-ring-offset-shadow,0 0 #0000),var(--tw-ring-shadow,0 0 #0000),var(--tw-shadow)}.shadow-lg{--tw-shadow:0 10px 15px -3px #0000001a,0 4px 6px -4px #0000001a;--tw-shadow-colored:0 10px 15px -3px var(--tw-shadow-color),0 4px 6px -4px var(--tw-shadow-color)}.shadow-xl{--tw-shadow:0 20px 25px -5px #0000001a,0 8px 10px -6px #0000001a;--tw-shadow-colored:0 20px 25px -5px var(--tw-shadow-color),0 8px 10px -6px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow,0 0 #0000),var(--tw-ring-shadow,0 0 #0000),var(--tw-shadow)}.outline-none{outline:2px solid #0000;outline-offset:2px}.\\!ring-offset-gray-200{--tw-ring-offset-color:rgb(var(--mut-gray-200,228 228 231)/1)!important}.filter{filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}.backdrop-blur-lg{--tw-backdrop-blur:blur(16px);-webkit-backdrop-filter:var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia);backdrop-filter:var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia)}.transition-all{transition-duration:.15s;transition-property:all;transition-timing-function:cubic-bezier(.4,0,.2,1)}.transition-colors{transition-duration:.15s;transition-property:color,background-color,border-color,text-decoration-color,fill,stroke;transition-timing-function:cubic-bezier(.4,0,.2,1)}.transition-shadow{transition-duration:.15s;transition-property:box-shadow;transition-timing-function:cubic-bezier(.4,0,.2,1)}.transition-stroke-opacity{transition-duration:.15s;transition-property:stroke-opacity;transition-timing-function:cubic-bezier(.4,0,.2,1)}.after\\:text-gray-800:after{content:var(--tw-content);--tw-text-opacity:1;color:rgb(var(--mut-gray-800,39 39 42)/var(--tw-text-opacity,1))}.after\\:content-\\[\\'\\/\\'\\]:after{--tw-content:"/";content:var(--tw-content)}.even\\:bg-gray-100:nth-child(2n),.odd\\:bg-gray-100:nth-child(odd){--tw-bg-opacity:1;background-color:rgb(var(--mut-gray-100,244 244 245)/var(--tw-bg-opacity,1))}.hover\\:cursor-pointer:hover{cursor:pointer}.hover\\:border-gray-300:hover{--tw-border-opacity:1;border-color:rgb(var(--mut-gray-300,212 212 216)/var(--tw-border-opacity,1))}.hover\\:bg-gray-100:hover{--tw-bg-opacity:1;background-color:rgb(var(--mut-gray-100,244 244 245)/var(--tw-bg-opacity,1))}.hover\\:bg-gray-200:hover{--tw-bg-opacity:1;background-color:rgb(var(--mut-gray-200,228 228 231)/var(--tw-bg-opacity,1))}.hover\\:text-gray-700:hover{--tw-text-opacity:1;color:rgb(var(--mut-gray-700,63 63 70)/var(--tw-text-opacity,1))}.hover\\:text-gray-900:hover{--tw-text-opacity:1;color:rgb(var(--mut-gray-900,24 24 27)/var(--tw-text-opacity,1))}.hover\\:text-primary-on:hover{--tw-text-opacity:1;color:rgb(var(--mut-primary-on,3 105 161)/var(--tw-text-opacity,1))}.hover\\:underline:hover{text-decoration-line:underline}.focus\\:shadow-none:focus{--tw-shadow:0 0 #0000;--tw-shadow-colored:0 0 #0000;box-shadow:var(--tw-ring-offset-shadow,0 0 #0000),var(--tw-ring-shadow,0 0 #0000),var(--tw-shadow)}.focus\\:outline-none:focus{outline:2px solid #0000;outline-offset:2px}.focus\\:ring-2:focus{--tw-ring-offset-shadow:var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow:var(--tw-ring-inset) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow,0 0 #0000)}.focus\\:ring-primary-500:focus{--tw-ring-opacity:1;--tw-ring-color:rgb(var(--mut-primary-500,14 165 233)/var(--tw-ring-opacity,1))}.active\\:bg-gray-200:active,.group:hover .group-hover\\:bg-gray-200{--tw-bg-opacity:1;background-color:rgb(var(--mut-gray-200,228 228 231)/var(--tw-bg-opacity,1))}.aria-selected\\:border-b-\\[3px\\][aria-selected=true]{border-bottom-width:3px}.aria-selected\\:border-primary-700[aria-selected=true]{--tw-border-opacity:1;border-color:rgb(var(--mut-primary-700,3 105 161)/var(--tw-border-opacity,1))}.aria-selected\\:bg-primary-500[aria-selected=true]{--tw-bg-opacity:1;background-color:rgb(var(--mut-primary-500,14 165 233)/var(--tw-bg-opacity,1))}.aria-selected\\:text-gray-50[aria-selected=true]{--tw-text-opacity:1;color:rgb(var(--mut-gray-50,250 250 250)/var(--tw-text-opacity,1))}.aria-selected\\:text-primary-on[aria-selected=true]{--tw-text-opacity:1;color:rgb(var(--mut-primary-on,3 105 161)/var(--tw-text-opacity,1))}.aria-selected\\:shadow-lg[aria-selected=true]{--tw-shadow:0 10px 15px -3px #0000001a,0 4px 6px -4px #0000001a;--tw-shadow-colored:0 10px 15px -3px var(--tw-shadow-color),0 4px 6px -4px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow,0 0 #0000),var(--tw-ring-shadow,0 0 #0000),var(--tw-shadow)}.group[aria-selected=true] .group-aria-selected\\:text-gray-200{--tw-text-opacity:1;color:rgb(var(--mut-gray-200,228 228 231)/var(--tw-text-opacity,1))}.group[aria-selected=true] .group-aria-selected\\:text-primary-50{--tw-text-opacity:1;color:rgb(var(--mut-primary-50,240 249 255)/var(--tw-text-opacity,1))}.group[aria-selected=true] .group-aria-selected\\:underline{text-decoration-line:underline}@media (prefers-reduced-motion:no-preference){.motion-safe\\:transition-\\[height\\,max-width\\]{transition-duration:.15s;transition-property:height,max-width;transition-timing-function:cubic-bezier(.4,0,.2,1)}.motion-safe\\:transition-max-width{transition-duration:.15s;transition-property:max-width;transition-timing-function:cubic-bezier(.4,0,.2,1)}.motion-safe\\:duration-200{transition-duration:.2s}}@media (min-width:768px){.md\\:ml-2{margin-left:.5rem}.md\\:w-1\\/2{width:50%}.md\\:after\\:pl-1:after{content:var(--tw-content);padding-left:.25rem}}@media (min-width:1536px){.\\32xl\\:w-28{width:7rem}}`,Go="code[class*=language-],pre[class*=language-]{color:var(--prism-maintext);direction:ltr;font-family:Consolas,Monaco,Andale Mono,Ubuntu Mono,monospace;font-size:1em;-webkit-hyphens:none;hyphens:none;line-height:1.5;tab-size:4;text-align:left;white-space:pre;word-break:normal;word-spacing:normal}pre>code[class*=language-]{font-size:1em}pre[class*=language-]{border:1px solid var(--prism-border);border-radius:.25rem;margin:.5em 0;overflow:auto;padding:1em}:not(pre)>code[class*=language-],pre[class*=language-]{background:var(--prism-background)}.token.cdata,.token.comment,.token.doctype,.token.italic,.token.prolog{font-style:italic}.token.bold,.token.function,.token.important{font-weight:700}.token.namespace{opacity:.7}.token.atrule{color:var(--prism-atrule)}.token.attr{color:var(--prism-attr)}.token.attr-name{color:var(--prism-attr-name)}.token.boolean{color:var(--prism-boolean)}.token.builtin{color:var(--prism-builtin)}.token.cdata{color:var(--prism-cdata)}.token.changed{color:var(--prism-changed)}.token.char{color:var(--prism-char)}.token.comment{color:var(--prism-comment)}.token.constant{color:var(--prism-constant)}.token.deleted{color:var(--prism-deleted)}.token.doctype{color:var(--prism-doctype)}.token.entity{color:var(--prism-entity);cursor:help}.token.function{color:var(--prism-function)}.token.function-variable{color:var(--prism-function-variable,var(--prism-function))}.token.inserted{color:var(--prism-inserted)}.token.keyword{color:var(--prism-keyword)}.token.number{color:var(--prism-number)}.token.operator{color:var(--prism-operator)}.token.prolog{color:var(--prism-prolog)}.token.property{color:var(--prism-property)}.token.punctuation{color:var(--prism-punctuation)}.token.regex{color:var(--prism-regex)}.token.selector{color:var(--prism-selector)}.token.string{color:var(--prism-string)}.token.symbol{color:var(--prism-symbol)}.token.tag{color:var(--prism-tag)}.token.url{color:var(--prism-url)}.token.variable{color:var(--prism-variable)}.token.placeholder{color:var(--prism-placeholder)}.token.statement{color:var(--prism-statement)}.token.attr-value{color:var(--prism-attr-value)}.token.control{color:var(--prism-control)}.token.directive{color:var(--prism-directive)}.token.unit{color:var(--prism-unit)}.token.important{color:var(--prism-important)}.token.class-name{color:var(--prism-class-name)}",Yo=":host{--mte-drawer-height-half-open:120px}";var en=typeof globalThis<"u"?globalThis:typeof window<"u"?window:typeof global<"u"?global:typeof self<"u"?self:{};function Jo(e){return e&&e.__esModule&&Object.prototype.hasOwnProperty.call(e,"default")?e.default:e}var qi={exports:{}};(function(e){var t=typeof window<"u"?window:typeof WorkerGlobalScope<"u"&&self instanceof WorkerGlobalScope?self:{};/**
|
|
63
|
+
* Prism: Lightweight, robust, elegant syntax highlighting
|
|
64
|
+
*
|
|
65
|
+
* @license MIT <https://opensource.org/licenses/MIT>
|
|
66
|
+
* @author Lea Verou <https://lea.verou.me>
|
|
67
|
+
* @namespace
|
|
68
|
+
* @public
|
|
69
|
+
*/var r=function(n){var i=/(?:^|\s)lang(?:uage)?-([\w-]+)(?=\s|$)/i,a=0,s={},o={manual:n.Prism&&n.Prism.manual,disableWorkerMessageHandler:n.Prism&&n.Prism.disableWorkerMessageHandler,util:{encode:function p(h){return h instanceof l?new l(h.type,p(h.content),h.alias):Array.isArray(h)?h.map(p):h.replace(/&/g,"&").replace(/</g,"<").replace(/\u00a0/g," ")},type:function(p){return Object.prototype.toString.call(p).slice(8,-1)},objId:function(p){return p.__id||Object.defineProperty(p,"__id",{value:++a}),p.__id},clone:function p(h,m){m=m||{};var d,g;switch(o.util.type(h)){case"Object":if(g=o.util.objId(h),m[g])return m[g];d={},m[g]=d;for(var _ in h)h.hasOwnProperty(_)&&(d[_]=p(h[_],m));return d;case"Array":return g=o.util.objId(h),m[g]?m[g]:(d=[],m[g]=d,h.forEach(function(O,E){d[E]=p(O,m)}),d);default:return h}},getLanguage:function(p){for(;p;){var h=i.exec(p.className);if(h)return h[1].toLowerCase();p=p.parentElement}return"none"},setLanguage:function(p,h){p.className=p.className.replace(RegExp(i,"gi"),""),p.classList.add("language-"+h)},currentScript:function(){if(typeof document>"u")return null;if("currentScript"in document)return document.currentScript;try{throw new Error}catch(d){var p=(/at [^(\r\n]*\((.*):[^:]+:[^:]+\)$/i.exec(d.stack)||[])[1];if(p){var h=document.getElementsByTagName("script");for(var m in h)if(h[m].src==p)return h[m]}return null}},isActive:function(p,h,m){for(var d="no-"+h;p;){var g=p.classList;if(g.contains(h))return!0;if(g.contains(d))return!1;p=p.parentElement}return!!m}},languages:{plain:s,plaintext:s,text:s,txt:s,extend:function(p,h){var m=o.util.clone(o.languages[p]);for(var d in h)m[d]=h[d];return m},insertBefore:function(p,h,m,d){d=d||o.languages;var g=d[p],_={};for(var O in g)if(g.hasOwnProperty(O)){if(O==h)for(var E in m)m.hasOwnProperty(E)&&(_[E]=m[E]);m.hasOwnProperty(O)||(_[O]=g[O])}var q=d[p];return d[p]=_,o.languages.DFS(o.languages,function(V,ie){ie===q&&V!=p&&(this[V]=_)}),_},DFS:function p(h,m,d,g){g=g||{};var _=o.util.objId;for(var O in h)if(h.hasOwnProperty(O)){m.call(h,O,h[O],d||O);var E=h[O],q=o.util.type(E);q==="Object"&&!g[_(E)]?(g[_(E)]=!0,p(E,m,null,g)):q==="Array"&&!g[_(E)]&&(g[_(E)]=!0,p(E,m,O,g))}}},plugins:{},highlightAll:function(p,h){o.highlightAllUnder(document,p,h)},highlightAllUnder:function(p,h,m){var d={callback:m,container:p,selector:'code[class*="language-"], [class*="language-"] code, code[class*="lang-"], [class*="lang-"] code'};o.hooks.run("before-highlightall",d),d.elements=Array.prototype.slice.apply(d.container.querySelectorAll(d.selector)),o.hooks.run("before-all-elements-highlight",d);for(var g=0,_;_=d.elements[g++];)o.highlightElement(_,h===!0,d.callback)},highlightElement:function(p,h,m){var d=o.util.getLanguage(p),g=o.languages[d];o.util.setLanguage(p,d);var _=p.parentElement;_&&_.nodeName.toLowerCase()==="pre"&&o.util.setLanguage(_,d);var O=p.textContent,E={element:p,language:d,grammar:g,code:O};function q(ie){E.highlightedCode=ie,o.hooks.run("before-insert",E),E.element.innerHTML=E.highlightedCode,o.hooks.run("after-highlight",E),o.hooks.run("complete",E),m&&m.call(E.element)}if(o.hooks.run("before-sanity-check",E),_=E.element.parentElement,_&&_.nodeName.toLowerCase()==="pre"&&!_.hasAttribute("tabindex")&&_.setAttribute("tabindex","0"),!E.code){o.hooks.run("complete",E),m&&m.call(E.element);return}if(o.hooks.run("before-highlight",E),!E.grammar){q(o.util.encode(E.code));return}if(h&&n.Worker){var V=new Worker(o.filename);V.onmessage=function(ie){q(ie.data)},V.postMessage(JSON.stringify({language:E.language,code:E.code,immediateClose:!0}))}else q(o.highlight(E.code,E.grammar,E.language))},highlight:function(p,h,m){var d={code:p,grammar:h,language:m};if(o.hooks.run("before-tokenize",d),!d.grammar)throw new Error('The language "'+d.language+'" has no grammar.');return d.tokens=o.tokenize(d.code,d.grammar),o.hooks.run("after-tokenize",d),l.stringify(o.util.encode(d.tokens),d.language)},tokenize:function(p,h){var m=h.rest;if(m){for(var d in m)h[d]=m[d];delete h.rest}var g=new v;return k(g,g.head,p),$(p,g,h,g.head,0),C(g)},hooks:{all:{},add:function(p,h){var m=o.hooks.all;m[p]=m[p]||[],m[p].push(h)},run:function(p,h){var m=o.hooks.all[p];if(!(!m||!m.length))for(var d=0,g;g=m[d++];)g(h)}},Token:l};n.Prism=o;function l(p,h,m,d){this.type=p,this.content=h,this.alias=m,this.length=(d||"").length|0}l.stringify=function p(h,m){if(typeof h=="string")return h;if(Array.isArray(h)){var d="";return h.forEach(function(q){d+=p(q,m)}),d}var g={type:h.type,content:p(h.content,m),tag:"span",classes:["token",h.type],attributes:{},language:m},_=h.alias;_&&(Array.isArray(_)?Array.prototype.push.apply(g.classes,_):g.classes.push(_)),o.hooks.run("wrap",g);var O="";for(var E in g.attributes)O+=" "+E+'="'+(g.attributes[E]||"").replace(/"/g,""")+'"';return"<"+g.tag+' class="'+g.classes.join(" ")+'"'+O+">"+g.content+"</"+g.tag+">"};function u(p,h,m,d){p.lastIndex=h;var g=p.exec(m);if(g&&d&&g[1]){var _=g[1].length;g.index+=_,g[0]=g[0].slice(_)}return g}function $(p,h,m,d,g,_){for(var O in m)if(!(!m.hasOwnProperty(O)||!m[O])){var E=m[O];E=Array.isArray(E)?E:[E];for(var q=0;q<E.length;++q){if(_&&_.cause==O+","+q)return;var V=E[q],ie=V.inside,Fe=!!V.lookbehind,Se=!!V.greedy,je=V.alias;if(Se&&!V.pattern.global){var Ae=V.pattern.toString().match(/[imsuy]*$/)[0];V.pattern=RegExp(V.pattern.source,Ae+"g")}for(var Ne=V.pattern||V,B=d.next,G=g;B!==h.tail&&!(_&&G>=_.reach);G+=B.value.length,B=B.next){var L=B.value;if(h.length>p.length)return;if(!(L instanceof l)){var de=1,he;if(Se){if(he=u(Ne,G,p,Fe),!he||he.index>=p.length)break;var w=he.index,Ct=he.index+he[0].length,f=G;for(f+=B.value.length;w>=f;)B=B.next,f+=B.value.length;if(f-=B.value.length,G=f,B.value instanceof l)continue;for(var c=B;c!==h.tail&&(f<Ct||typeof c.value=="string");c=c.next)de++,f+=c.value.length;de--,L=p.slice(G,f),he.index-=G}else if(he=u(Ne,0,L,Fe),!he)continue;var w=he.index,A=he[0],M=L.slice(0,w),S=L.slice(w+A.length),x=G+L.length;_&&x>_.reach&&(_.reach=x);var z=B.prev;M&&(z=k(h,z,M),G+=M.length),y(h,z,de);var T=new l(O,ie?o.tokenize(A,ie):A,je,A);if(B=k(h,z,T),S&&k(h,B,S),de>1){var R={cause:O+","+q,reach:x};$(p,h,m,B.prev,G,R),_&&R.reach>_.reach&&(_.reach=R.reach)}}}}}}function v(){var p={value:null,prev:null,next:null},h={value:null,prev:p,next:null};p.next=h,this.head=p,this.tail=h,this.length=0}function k(p,h,m){var d=h.next,g={value:m,prev:h,next:d};return h.next=g,d.prev=g,p.length++,g}function y(p,h,m){for(var d=h.next,g=0;g<m&&d!==p.tail;g++)d=d.next;h.next=d,d.prev=h,p.length-=g}function C(p){for(var h=[],m=p.head.next;m!==p.tail;)h.push(m.value),m=m.next;return h}if(!n.document)return n.addEventListener&&(o.disableWorkerMessageHandler||n.addEventListener("message",function(p){var h=JSON.parse(p.data),m=h.language,d=h.code,g=h.immediateClose;n.postMessage(o.highlight(d,o.languages[m],m)),g&&n.close()},!1)),o;var F=o.util.currentScript();F&&(o.filename=F.src,F.hasAttribute("data-manual")&&(o.manual=!0));function H(){o.manual||o.highlightAll()}if(!o.manual){var X=document.readyState;X==="loading"||X==="interactive"&&F&&F.defer?document.addEventListener("DOMContentLoaded",H):window.requestAnimationFrame?window.requestAnimationFrame(H):window.setTimeout(H,16)}return o}(t);e.exports&&(e.exports=r),typeof en<"u"&&(en.Prism=r)})(qi);var Gi=qi.exports;Prism.languages.clike={comment:[{pattern:/(^|[^\\])\/\*[\s\S]*?(?:\*\/|$)/,lookbehind:!0,greedy:!0},{pattern:/(^|[^\\:])\/\/.*/,lookbehind:!0,greedy:!0}],string:{pattern:/(["'])(?:\\(?:\r\n|[\s\S])|(?!\1)[^\\\r\n])*\1/,greedy:!0},"class-name":{pattern:/(\b(?:class|extends|implements|instanceof|interface|new|trait)\s+|\bcatch\s+\()[\w.\\]+/i,lookbehind:!0,inside:{punctuation:/[.\\]/}},keyword:/\b(?:break|catch|continue|do|else|finally|for|function|if|in|instanceof|new|null|return|throw|try|while)\b/,boolean:/\b(?:false|true)\b/,function:/\b\w+(?=\()/,number:/\b0x[\da-f]+\b|(?:\b\d+(?:\.\d*)?|\B\.\d+)(?:e[+-]?\d+)?/i,operator:/[<>]=?|[!=]=?=?|--?|\+\+?|&&?|\|\|?|[?*/~^%]/,punctuation:/[{}[\];(),.:]/},Prism.languages.javascript=Prism.languages.extend("clike",{"class-name":[Prism.languages.clike["class-name"],{pattern:/(^|[^$\w\xA0-\uFFFF])(?!\s)[_$A-Z\xA0-\uFFFF](?:(?!\s)[$\w\xA0-\uFFFF])*(?=\.(?:constructor|prototype))/,lookbehind:!0}],keyword:[{pattern:/((?:^|\})\s*)catch\b/,lookbehind:!0},{pattern:/(^|[^.]|\.\.\.\s*)\b(?:as|assert(?=\s*\{)|async(?=\s*(?:function\b|\(|[$\w\xA0-\uFFFF]|$))|await|break|case|class|const|continue|debugger|default|delete|do|else|enum|export|extends|finally(?=\s*(?:\{|$))|for|from(?=\s*(?:['"]|$))|function|(?:get|set)(?=\s*(?:[#\[$\w\xA0-\uFFFF]|$))|if|implements|import|in|instanceof|interface|let|new|null|of|package|private|protected|public|return|static|super|switch|this|throw|try|typeof|undefined|var|void|while|with|yield)\b/,lookbehind:!0}],function:/#?(?!\s)[_$a-zA-Z\xA0-\uFFFF](?:(?!\s)[$\w\xA0-\uFFFF])*(?=\s*(?:\.\s*(?:apply|bind|call)\s*)?\()/,number:{pattern:RegExp(/(^|[^\w$])/.source+"(?:"+(/NaN|Infinity/.source+"|"+/0[bB][01]+(?:_[01]+)*n?/.source+"|"+/0[oO][0-7]+(?:_[0-7]+)*n?/.source+"|"+/0[xX][\dA-Fa-f]+(?:_[\dA-Fa-f]+)*n?/.source+"|"+/\d+(?:_\d+)*n/.source+"|"+/(?:\d+(?:_\d+)*(?:\.(?:\d+(?:_\d+)*)?)?|\.\d+(?:_\d+)*)(?:[Ee][+-]?\d+(?:_\d+)*)?/.source)+")"+/(?![\w$])/.source),lookbehind:!0},operator:/--|\+\+|\*\*=?|=>|&&=?|\|\|=?|[!=]==|<<=?|>>>?=?|[-+*/%&|^!=<>]=?|\.{3}|\?\?=?|\?\.?|[~:]/}),Prism.languages.javascript["class-name"][0].pattern=/(\b(?:class|extends|implements|instanceof|interface|new)\s+)[\w.\\]+/,Prism.languages.insertBefore("javascript","keyword",{regex:{pattern:RegExp(/((?:^|[^$\w\xA0-\uFFFF."'\])\s]|\b(?:return|yield))\s*)/.source+/\//.source+"(?:"+/(?:\[(?:[^\]\\\r\n]|\\.)*\]|\\.|[^/\\\[\r\n])+\/[dgimyus]{0,7}/.source+"|"+/(?:\[(?:[^[\]\\\r\n]|\\.|\[(?:[^[\]\\\r\n]|\\.|\[(?:[^[\]\\\r\n]|\\.)*\])*\])*\]|\\.|[^/\\\[\r\n])+\/[dgimyus]{0,7}v[dgimyus]{0,7}/.source+")"+/(?=(?:\s|\/\*(?:[^*]|\*(?!\/))*\*\/)*(?:$|[\r\n,.;:})\]]|\/\/))/.source),lookbehind:!0,greedy:!0,inside:{"regex-source":{pattern:/^(\/)[\s\S]+(?=\/[a-z]*$)/,lookbehind:!0,alias:"language-regex",inside:Prism.languages.regex},"regex-delimiter":/^\/|\/$/,"regex-flags":/^[a-z]+$/}},"function-variable":{pattern:/#?(?!\s)[_$a-zA-Z\xA0-\uFFFF](?:(?!\s)[$\w\xA0-\uFFFF])*(?=\s*[=:]\s*(?:async\s*)?(?:\bfunction\b|(?:\((?:[^()]|\([^()]*\))*\)|(?!\s)[_$a-zA-Z\xA0-\uFFFF](?:(?!\s)[$\w\xA0-\uFFFF])*)\s*=>))/,alias:"function"},parameter:[{pattern:/(function(?:\s+(?!\s)[_$a-zA-Z\xA0-\uFFFF](?:(?!\s)[$\w\xA0-\uFFFF])*)?\s*\(\s*)(?!\s)(?:[^()\s]|\s+(?![\s)])|\([^()]*\))+(?=\s*\))/,lookbehind:!0,inside:Prism.languages.javascript},{pattern:/(^|[^$\w\xA0-\uFFFF])(?!\s)[_$a-z\xA0-\uFFFF](?:(?!\s)[$\w\xA0-\uFFFF])*(?=\s*=>)/i,lookbehind:!0,inside:Prism.languages.javascript},{pattern:/(\(\s*)(?!\s)(?:[^()\s]|\s+(?![\s)])|\([^()]*\))+(?=\s*\)\s*=>)/,lookbehind:!0,inside:Prism.languages.javascript},{pattern:/((?:\b|\s|^)(?!(?:as|async|await|break|case|catch|class|const|continue|debugger|default|delete|do|else|enum|export|extends|finally|for|from|function|get|if|implements|import|in|instanceof|interface|let|new|null|of|package|private|protected|public|return|set|static|super|switch|this|throw|try|typeof|undefined|var|void|while|with|yield)(?![$\w\xA0-\uFFFF]))(?:(?!\s)[_$a-zA-Z\xA0-\uFFFF](?:(?!\s)[$\w\xA0-\uFFFF])*\s*)\(\s*|\]\s*\(\s*)(?!\s)(?:[^()\s]|\s+(?![\s)])|\([^()]*\))+(?=\s*\)\s*\{)/,lookbehind:!0,inside:Prism.languages.javascript}],constant:/\b[A-Z](?:[A-Z_]|\dx?)*\b/}),Prism.languages.insertBefore("javascript","string",{hashbang:{pattern:/^#!.*/,greedy:!0,alias:"comment"},"template-string":{pattern:/`(?:\\[\s\S]|\$\{(?:[^{}]|\{(?:[^{}]|\{[^}]*\})*\})+\}|(?!\$\{)[^\\`])*`/,greedy:!0,inside:{"template-punctuation":{pattern:/^`|`$/,alias:"string"},interpolation:{pattern:/((?:^|[^\\])(?:\\{2})*)\$\{(?:[^{}]|\{(?:[^{}]|\{[^}]*\})*\})+\}/,lookbehind:!0,inside:{"interpolation-punctuation":{pattern:/^\$\{|\}$/,alias:"punctuation"},rest:Prism.languages.javascript}},string:/[\s\S]+/}},"string-property":{pattern:/((?:^|[,{])[ \t]*)(["'])(?:\\(?:\r\n|[\s\S])|(?!\2)[^\\\r\n])*\2(?=\s*:)/m,lookbehind:!0,greedy:!0,alias:"property"}}),Prism.languages.insertBefore("javascript","operator",{"literal-property":{pattern:/((?:^|[,{])[ \t]*)(?!\s)[_$a-zA-Z\xA0-\uFFFF](?:(?!\s)[$\w\xA0-\uFFFF])*(?=\s*:)/m,lookbehind:!0,alias:"property"}}),Prism.languages.markup&&(Prism.languages.markup.tag.addInlined("script","javascript"),Prism.languages.markup.tag.addAttribute(/on(?:abort|blur|change|click|composition(?:end|start|update)|dblclick|error|focus(?:in|out)?|key(?:down|up)|load|mouse(?:down|enter|leave|move|out|over|up)|reset|resize|scroll|select|slotchange|submit|unload|wheel)/.source,"javascript")),Prism.languages.js=Prism.languages.javascript,function(e){e.languages.typescript=e.languages.extend("javascript",{"class-name":{pattern:/(\b(?:class|extends|implements|instanceof|interface|new|type)\s+)(?!keyof\b)(?!\s)[_$a-zA-Z\xA0-\uFFFF](?:(?!\s)[$\w\xA0-\uFFFF])*(?:\s*<(?:[^<>]|<(?:[^<>]|<[^<>]*>)*>)*>)?/,lookbehind:!0,greedy:!0,inside:null},builtin:/\b(?:Array|Function|Promise|any|boolean|console|never|number|string|symbol|unknown)\b/}),e.languages.typescript.keyword.push(/\b(?:abstract|declare|is|keyof|readonly|require)\b/,/\b(?:asserts|infer|interface|module|namespace|type)\b(?=\s*(?:[{_$a-zA-Z\xA0-\uFFFF]|$))/,/\btype\b(?=\s*(?:[\{*]|$))/),delete e.languages.typescript.parameter,delete e.languages.typescript["literal-property"];var t=e.languages.extend("typescript",{});delete t["class-name"],e.languages.typescript["class-name"].inside=t,e.languages.insertBefore("typescript","function",{decorator:{pattern:/@[$\w\xA0-\uFFFF]+/,inside:{at:{pattern:/^@/,alias:"operator"},function:/^[\s\S]+/}},"generic-function":{pattern:/#?(?!\s)[_$a-zA-Z\xA0-\uFFFF](?:(?!\s)[$\w\xA0-\uFFFF])*\s*<(?:[^<>]|<(?:[^<>]|<[^<>]*>)*>)*>(?=\s*\()/,greedy:!0,inside:{function:/^#?(?!\s)[_$a-zA-Z\xA0-\uFFFF](?:(?!\s)[$\w\xA0-\uFFFF])*/,generic:{pattern:/<[\s\S]+/,alias:"class-name",inside:t}}}}),e.languages.ts=e.languages.typescript}(Prism),function(e){function t(G,L){return G.replace(/<<(\d+)>>/g,function(de,he){return"(?:"+L[+he]+")"})}function r(G,L,de){return RegExp(t(G,L),"")}function n(G,L){for(var de=0;de<L;de++)G=G.replace(/<<self>>/g,function(){return"(?:"+G+")"});return G.replace(/<<self>>/g,"[^\\s\\S]")}var i={type:"bool byte char decimal double dynamic float int long object sbyte short string uint ulong ushort var void",typeDeclaration:"class enum interface record struct",contextual:"add alias and ascending async await by descending from(?=\\s*(?:\\w|$)) get global group into init(?=\\s*;) join let nameof not notnull on or orderby partial remove select set unmanaged value when where with(?=\\s*{)",other:"abstract as base break case catch checked const continue default delegate do else event explicit extern finally fixed for foreach goto if implicit in internal is lock namespace new null operator out override params private protected public readonly ref return sealed sizeof stackalloc static switch this throw try typeof unchecked unsafe using virtual volatile while yield"};function a(G){return"\\b(?:"+G.trim().replace(/ /g,"|")+")\\b"}var s=a(i.typeDeclaration),o=RegExp(a(i.type+" "+i.typeDeclaration+" "+i.contextual+" "+i.other)),l=a(i.typeDeclaration+" "+i.contextual+" "+i.other),u=a(i.type+" "+i.typeDeclaration+" "+i.other),$=n(/<(?:[^<>;=+\-*/%&|^]|<<self>>)*>/.source,2),v=n(/\((?:[^()]|<<self>>)*\)/.source,2),k=/@?\b[A-Za-z_]\w*\b/.source,y=t(/<<0>>(?:\s*<<1>>)?/.source,[k,$]),C=t(/(?!<<0>>)<<1>>(?:\s*\.\s*<<1>>)*/.source,[l,y]),F=/\[\s*(?:,\s*)*\]/.source,H=t(/<<0>>(?:\s*(?:\?\s*)?<<1>>)*(?:\s*\?)?/.source,[C,F]),X=t(/[^,()<>[\];=+\-*/%&|^]|<<0>>|<<1>>|<<2>>/.source,[$,v,F]),p=t(/\(<<0>>+(?:,<<0>>+)+\)/.source,[X]),h=t(/(?:<<0>>|<<1>>)(?:\s*(?:\?\s*)?<<2>>)*(?:\s*\?)?/.source,[p,C,F]),m={keyword:o,punctuation:/[<>()?,.:[\]]/},d=/'(?:[^\r\n'\\]|\\.|\\[Uux][\da-fA-F]{1,8})'/.source,g=/"(?:\\.|[^\\"\r\n])*"/.source,_=/@"(?:""|\\[\s\S]|[^\\"])*"(?!")/.source;e.languages.csharp=e.languages.extend("clike",{string:[{pattern:r(/(^|[^$\\])<<0>>/.source,[_]),lookbehind:!0,greedy:!0},{pattern:r(/(^|[^@$\\])<<0>>/.source,[g]),lookbehind:!0,greedy:!0}],"class-name":[{pattern:r(/(\busing\s+static\s+)<<0>>(?=\s*;)/.source,[C]),lookbehind:!0,inside:m},{pattern:r(/(\busing\s+<<0>>\s*=\s*)<<1>>(?=\s*;)/.source,[k,h]),lookbehind:!0,inside:m},{pattern:r(/(\busing\s+)<<0>>(?=\s*=)/.source,[k]),lookbehind:!0},{pattern:r(/(\b<<0>>\s+)<<1>>/.source,[s,y]),lookbehind:!0,inside:m},{pattern:r(/(\bcatch\s*\(\s*)<<0>>/.source,[C]),lookbehind:!0,inside:m},{pattern:r(/(\bwhere\s+)<<0>>/.source,[k]),lookbehind:!0},{pattern:r(/(\b(?:is(?:\s+not)?|as)\s+)<<0>>/.source,[H]),lookbehind:!0,inside:m},{pattern:r(/\b<<0>>(?=\s+(?!<<1>>|with\s*\{)<<2>>(?:\s*[=,;:{)\]]|\s+(?:in|when)\b))/.source,[h,u,k]),inside:m}],keyword:o,number:/(?:\b0(?:x[\da-f_]*[\da-f]|b[01_]*[01])|(?:\B\.\d+(?:_+\d+)*|\b\d+(?:_+\d+)*(?:\.\d+(?:_+\d+)*)?)(?:e[-+]?\d+(?:_+\d+)*)?)(?:[dflmu]|lu|ul)?\b/i,operator:/>>=?|<<=?|[-=]>|([-+&|])\1|~|\?\?=?|[-+*/%&|^!=<>]=?/,punctuation:/\?\.?|::|[{}[\];(),.:]/}),e.languages.insertBefore("csharp","number",{range:{pattern:/\.\./,alias:"operator"}}),e.languages.insertBefore("csharp","punctuation",{"named-parameter":{pattern:r(/([(,]\s*)<<0>>(?=\s*:)/.source,[k]),lookbehind:!0,alias:"punctuation"}}),e.languages.insertBefore("csharp","class-name",{namespace:{pattern:r(/(\b(?:namespace|using)\s+)<<0>>(?:\s*\.\s*<<0>>)*(?=\s*[;{])/.source,[k]),lookbehind:!0,inside:{punctuation:/\./}},"type-expression":{pattern:r(/(\b(?:default|sizeof|typeof)\s*\(\s*(?!\s))(?:[^()\s]|\s(?!\s)|<<0>>)*(?=\s*\))/.source,[v]),lookbehind:!0,alias:"class-name",inside:m},"return-type":{pattern:r(/<<0>>(?=\s+(?:<<1>>\s*(?:=>|[({]|\.\s*this\s*\[)|this\s*\[))/.source,[h,C]),inside:m,alias:"class-name"},"constructor-invocation":{pattern:r(/(\bnew\s+)<<0>>(?=\s*[[({])/.source,[h]),lookbehind:!0,inside:m,alias:"class-name"},"generic-method":{pattern:r(/<<0>>\s*<<1>>(?=\s*\()/.source,[k,$]),inside:{function:r(/^<<0>>/.source,[k]),generic:{pattern:RegExp($),alias:"class-name",inside:m}}},"type-list":{pattern:r(/\b((?:<<0>>\s+<<1>>|record\s+<<1>>\s*<<5>>|where\s+<<2>>)\s*:\s*)(?:<<3>>|<<4>>|<<1>>\s*<<5>>|<<6>>)(?:\s*,\s*(?:<<3>>|<<4>>|<<6>>))*(?=\s*(?:where|[{;]|=>|$))/.source,[s,y,k,h,o.source,v,/\bnew\s*\(\s*\)/.source]),lookbehind:!0,inside:{"record-arguments":{pattern:r(/(^(?!new\s*\()<<0>>\s*)<<1>>/.source,[y,v]),lookbehind:!0,greedy:!0,inside:e.languages.csharp},keyword:o,"class-name":{pattern:RegExp(h),greedy:!0,inside:m},punctuation:/[,()]/}},preprocessor:{pattern:/(^[\t ]*)#.*/m,lookbehind:!0,alias:"property",inside:{directive:{pattern:/(#)\b(?:define|elif|else|endif|endregion|error|if|line|nullable|pragma|region|undef|warning)\b/,lookbehind:!0,alias:"keyword"}}}});var O=g+"|"+d,E=t(/\/(?![*/])|\/\/[^\r\n]*[\r\n]|\/\*(?:[^*]|\*(?!\/))*\*\/|<<0>>/.source,[O]),q=n(t(/[^"'/()]|<<0>>|\(<<self>>*\)/.source,[E]),2),V=/\b(?:assembly|event|field|method|module|param|property|return|type)\b/.source,ie=t(/<<0>>(?:\s*\(<<1>>*\))?/.source,[C,q]);e.languages.insertBefore("csharp","class-name",{attribute:{pattern:r(/((?:^|[^\s\w>)?])\s*\[\s*)(?:<<0>>\s*:\s*)?<<1>>(?:\s*,\s*<<1>>)*(?=\s*\])/.source,[V,ie]),lookbehind:!0,greedy:!0,inside:{target:{pattern:r(/^<<0>>(?=\s*:)/.source,[V]),alias:"keyword"},"attribute-arguments":{pattern:r(/\(<<0>>*\)/.source,[q]),inside:e.languages.csharp},"class-name":{pattern:RegExp(C),inside:{punctuation:/\./}},punctuation:/[:,]/}}});var Fe=/:[^}\r\n]+/.source,Se=n(t(/[^"'/()]|<<0>>|\(<<self>>*\)/.source,[E]),2),je=t(/\{(?!\{)(?:(?![}:])<<0>>)*<<1>>?\}/.source,[Se,Fe]),Ae=n(t(/[^"'/()]|\/(?!\*)|\/\*(?:[^*]|\*(?!\/))*\*\/|<<0>>|\(<<self>>*\)/.source,[O]),2),Ne=t(/\{(?!\{)(?:(?![}:])<<0>>)*<<1>>?\}/.source,[Ae,Fe]);function B(G,L){return{interpolation:{pattern:r(/((?:^|[^{])(?:\{\{)*)<<0>>/.source,[G]),lookbehind:!0,inside:{"format-string":{pattern:r(/(^\{(?:(?![}:])<<0>>)*)<<1>>(?=\}$)/.source,[L,Fe]),lookbehind:!0,inside:{punctuation:/^:/}},punctuation:/^\{|\}$/,expression:{pattern:/[\s\S]+/,alias:"language-csharp",inside:e.languages.csharp}}},string:/[\s\S]+/}}e.languages.insertBefore("csharp","string",{"interpolation-string":[{pattern:r(/(^|[^\\])(?:\$@|@\$)"(?:""|\\[\s\S]|\{\{|<<0>>|[^\\{"])*"/.source,[je]),lookbehind:!0,greedy:!0,inside:B(je,Se)},{pattern:r(/(^|[^@\\])\$"(?:\\.|\{\{|<<0>>|[^\\"{])*"/.source,[Ne]),lookbehind:!0,greedy:!0,inside:B(Ne,Ae)}],char:{pattern:RegExp(d),greedy:!0}}),e.languages.dotnet=e.languages.cs=e.languages.csharp}(Prism),function(e){var t=/\b(?:abstract|assert|boolean|break|byte|case|catch|char|class|const|continue|default|do|double|else|enum|exports|extends|final|finally|float|for|goto|if|implements|import|instanceof|int|interface|long|module|native|new|non-sealed|null|open|opens|package|permits|private|protected|provides|public|record(?!\s*[(){}[\]<>=%~.:,;?+\-*/&|^])|requires|return|sealed|short|static|strictfp|super|switch|synchronized|this|throw|throws|to|transient|transitive|try|uses|var|void|volatile|while|with|yield)\b/,r=/(?:[a-z]\w*\s*\.\s*)*(?:[A-Z]\w*\s*\.\s*)*/.source,n={pattern:RegExp(/(^|[^\w.])/.source+r+/[A-Z](?:[\d_A-Z]*[a-z]\w*)?\b/.source),lookbehind:!0,inside:{namespace:{pattern:/^[a-z]\w*(?:\s*\.\s*[a-z]\w*)*(?:\s*\.)?/,inside:{punctuation:/\./}},punctuation:/\./}};e.languages.java=e.languages.extend("clike",{string:{pattern:/(^|[^\\])"(?:\\.|[^"\\\r\n])*"/,lookbehind:!0,greedy:!0},"class-name":[n,{pattern:RegExp(/(^|[^\w.])/.source+r+/[A-Z]\w*(?=\s+\w+\s*[;,=()]|\s*(?:\[[\s,]*\]\s*)?::\s*new\b)/.source),lookbehind:!0,inside:n.inside},{pattern:RegExp(/(\b(?:class|enum|extends|implements|instanceof|interface|new|record|throws)\s+)/.source+r+/[A-Z]\w*\b/.source),lookbehind:!0,inside:n.inside}],keyword:t,function:[e.languages.clike.function,{pattern:/(::\s*)[a-z_]\w*/,lookbehind:!0}],number:/\b0b[01][01_]*L?\b|\b0x(?:\.[\da-f_p+-]+|[\da-f_]+(?:\.[\da-f_p+-]+)?)\b|(?:\b\d[\d_]*(?:\.[\d_]*)?|\B\.\d[\d_]*)(?:e[+-]?\d[\d_]*)?[dfl]?/i,operator:{pattern:/(^|[^.])(?:<<=?|>>>?=?|->|--|\+\+|&&|\|\||::|[?:~]|[-+*/%&|^!=<>]=?)/m,lookbehind:!0},constant:/\b[A-Z][A-Z_\d]+\b/}),e.languages.insertBefore("java","string",{"triple-quoted-string":{pattern:/"""[ \t]*[\r\n](?:(?:"|"")?(?:\\.|[^"\\]))*"""/,greedy:!0,alias:"string"},char:{pattern:/'(?:\\.|[^'\\\r\n]){1,6}'/,greedy:!0}}),e.languages.insertBefore("java","class-name",{annotation:{pattern:/(^|[^.])@\w+(?:\s*\.\s*\w+)*/,lookbehind:!0,alias:"punctuation"},generics:{pattern:/<(?:[\w\s,.?]|&(?!&)|<(?:[\w\s,.?]|&(?!&)|<(?:[\w\s,.?]|&(?!&)|<(?:[\w\s,.?]|&(?!&))*>)*>)*>)*>/,inside:{"class-name":n,keyword:t,punctuation:/[<>(),.:]/,operator:/[?&|]/}},import:[{pattern:RegExp(/(\bimport\s+)/.source+r+/(?:[A-Z]\w*|\*)(?=\s*;)/.source),lookbehind:!0,inside:{namespace:n.inside.namespace,punctuation:/\./,operator:/\*/,"class-name":/\w+/}},{pattern:RegExp(/(\bimport\s+static\s+)/.source+r+/(?:\w+|\*)(?=\s*;)/.source),lookbehind:!0,alias:"static",inside:{namespace:n.inside.namespace,static:/\b\w+$/,punctuation:/\./,operator:/\*/,"class-name":/\w+/}}],namespace:{pattern:RegExp(/(\b(?:exports|import(?:\s+static)?|module|open|opens|package|provides|requires|to|transitive|uses|with)\s+)(?!<keyword>)[a-z]\w*(?:\.[a-z]\w*)*\.?/.source.replace(/<keyword>/g,function(){return t.source})),lookbehind:!0,inside:{punctuation:/\./}}})}(Prism),Prism.languages.scala=Prism.languages.extend("java",{"triple-quoted-string":{pattern:/"""[\s\S]*?"""/,greedy:!0,alias:"string"},string:{pattern:/("|')(?:\\.|(?!\1)[^\\\r\n])*\1/,greedy:!0},keyword:/<-|=>|\b(?:abstract|case|catch|class|def|derives|do|else|enum|extends|extension|final|finally|for|forSome|given|if|implicit|import|infix|inline|lazy|match|new|null|object|opaque|open|override|package|private|protected|return|sealed|self|super|this|throw|trait|transparent|try|type|using|val|var|while|with|yield)\b/,number:/\b0x(?:[\da-f]*\.)?[\da-f]+|(?:\b\d+(?:\.\d*)?|\B\.\d+)(?:e\d+)?[dfl]?/i,builtin:/\b(?:Any|AnyRef|AnyVal|Boolean|Byte|Char|Double|Float|Int|Long|Nothing|Short|String|Unit)\b/,symbol:/'[^\d\s\\]\w*/}),Prism.languages.insertBefore("scala","triple-quoted-string",{"string-interpolation":{pattern:/\b[a-z]\w*(?:"""(?:[^$]|\$(?:[^{]|\{(?:[^{}]|\{[^{}]*\})*\}))*?"""|"(?:[^$"\r\n]|\$(?:[^{]|\{(?:[^{}]|\{[^{}]*\})*\}))*")/i,greedy:!0,inside:{id:{pattern:/^\w+/,greedy:!0,alias:"function"},escape:{pattern:/\\\$"|\$[$"]/,greedy:!0,alias:"symbol"},interpolation:{pattern:/\$(?:\w+|\{(?:[^{}]|\{[^{}]*\})*\})/,greedy:!0,inside:{punctuation:/^\$\{?|\}$/,expression:{pattern:/[\s\S]+/,inside:Prism.languages.scala}}},string:/[\s\S]+/}}}),delete Prism.languages.scala["class-name"],delete Prism.languages.scala.function,delete Prism.languages.scala.constant,function(e){var t=/(?:\r?\n|\r)[ \t]*\|.+\|(?:(?!\|).)*/.source;e.languages.gherkin={pystring:{pattern:/("""|''')[\s\S]+?\1/,alias:"string"},comment:{pattern:/(^[ \t]*)#.*/m,lookbehind:!0},tag:{pattern:/(^[ \t]*)@\S*/m,lookbehind:!0},feature:{pattern:/((?:^|\r?\n|\r)[ \t]*)(?:Ability|Ahoy matey!|Arwedd|Aspekt|Besigheid Behoefte|Business Need|Caracteristica|Característica|Egenskab|Egenskap|Eiginleiki|Feature|Fīča|Fitur|Fonctionnalité|Fonksyonalite|Funcionalidade|Funcionalitat|Functionalitate|Funcţionalitate|Funcționalitate|Functionaliteit|Fungsi|Funkcia|Funkcija|Funkcionalitāte|Funkcionalnost|Funkcja|Funksie|Funktionalität|Funktionalitéit|Funzionalità|Hwaet|Hwæt|Jellemző|Karakteristik|Lastnost|Mak|Mogucnost|laH|Mogućnost|Moznosti|Možnosti|OH HAI|Omadus|Ominaisuus|Osobina|Özellik|Potrzeba biznesowa|perbogh|poQbogh malja'|Požadavek|Požiadavka|Pretty much|Qap|Qu'meH 'ut|Savybė|Tính năng|Trajto|Vermoë|Vlastnosť|Właściwość|Značilnost|Δυνατότητα|Λειτουργία|Могућност|Мөмкинлек|Особина|Свойство|Үзенчәлеклелек|Функционал|Функционалност|Функция|Функціонал|תכונה|خاصية|خصوصیت|صلاحیت|کاروبار کی ضرورت|وِیژگی|रूप लेख|ਖਾਸੀਅਤ|ਨਕਸ਼ ਨੁਹਾਰ|ਮੁਹਾਂਦਰਾ|గుణము|ಹೆಚ್ಚಳ|ความต้องการทางธุรกิจ|ความสามารถ|โครงหลัก|기능|フィーチャ|功能|機能):(?:[^:\r\n]+(?:\r?\n|\r|$))*/,lookbehind:!0,inside:{important:{pattern:/(:)[^\r\n]+/,lookbehind:!0},keyword:/[^:\r\n]+:/}},scenario:{pattern:/(^[ \t]*)(?:Abstract Scenario|Abstrakt Scenario|Achtergrond|Aer|Ær|Agtergrond|All y'all|Antecedentes|Antecedents|Atburðarás|Atburðarásir|Awww, look mate|B4|Background|Baggrund|Bakgrund|Bakgrunn|Bakgrunnur|Beispiele|Beispiller|Bối cảnh|Cefndir|Cenario|Cenário|Cenario de Fundo|Cenário de Fundo|Cenarios|Cenários|Contesto|Context|Contexte|Contexto|Conto|Contoh|Contone|Dæmi|Dasar|Dead men tell no tales|Delineacao do Cenario|Delineação do Cenário|Dis is what went down|Dữ liệu|Dyagram Senaryo|Dyagram senaryo|Egzanp|Ejemplos|Eksempler|Ekzemploj|Enghreifftiau|Esbozo do escenario|Escenari|Escenario|Esempi|Esquema de l'escenari|Esquema del escenario|Esquema do Cenario|Esquema do Cenário|EXAMPLZ|Examples|Exempel|Exemple|Exemples|Exemplos|First off|Fono|Forgatókönyv|Forgatókönyv vázlat|Fundo|Geçmiş|Grundlage|Hannergrond|ghantoH|Háttér|Heave to|Istorik|Juhtumid|Keadaan|Khung kịch bản|Khung tình huống|Kịch bản|Koncept|Konsep skenario|Kontèks|Kontekst|Kontekstas|Konteksts|Kontext|Konturo de la scenaro|Latar Belakang|lut chovnatlh|lut|lutmey|Lýsing Atburðarásar|Lýsing Dæma|MISHUN SRSLY|MISHUN|Menggariskan Senario|mo'|Náčrt Scenára|Náčrt Scénáře|Náčrt Scenáru|Oris scenarija|Örnekler|Osnova|Osnova Scenára|Osnova scénáře|Osnutek|Ozadje|Paraugs|Pavyzdžiai|Példák|Piemēri|Plan du scénario|Plan du Scénario|Plan Senaryo|Plan senaryo|Plang vum Szenario|Pozadí|Pozadie|Pozadina|Príklady|Příklady|Primer|Primeri|Primjeri|Przykłady|Raamstsenaarium|Reckon it's like|Rerefons|Scenár|Scénář|Scenarie|Scenarij|Scenarijai|Scenarijaus šablonas|Scenariji|Scenārijs|Scenārijs pēc parauga|Scenarijus|Scenario|Scénario|Scenario Amlinellol|Scenario Outline|Scenario Template|Scenariomal|Scenariomall|Scenarios|Scenariu|Scenariusz|Scenaro|Schema dello scenario|Se ðe|Se the|Se þe|Senario|Senaryo Deskripsyon|Senaryo deskripsyon|Senaryo|Senaryo taslağı|Shiver me timbers|Situācija|Situai|Situasie Uiteensetting|Situasie|Skenario konsep|Skenario|Skica|Structura scenariu|Structură scenariu|Struktura scenarija|Stsenaarium|Swa hwaer swa|Swa|Swa hwær swa|Szablon scenariusza|Szenario|Szenariogrundriss|Tapaukset|Tapaus|Tapausaihio|Taust|Tausta|Template Keadaan|Template Senario|Template Situai|The thing of it is|Tình huống|Variantai|Voorbeelde|Voorbeelden|Wharrimean is|Yo-ho-ho|You'll wanna|Założenia|Παραδείγματα|Περιγραφή Σεναρίου|Σενάρια|Σενάριο|Υπόβαθρο|Кереш|Контекст|Концепт|Мисаллар|Мисоллар|Основа|Передумова|Позадина|Предистория|Предыстория|Приклади|Пример|Примери|Примеры|Рамка на сценарий|Скица|Структура сценарија|Структура сценария|Структура сценарію|Сценарий|Сценарий структураси|Сценарийның төзелеше|Сценарији|Сценарио|Сценарій|Тарих|Үрнәкләр|דוגמאות|רקע|תבנית תרחיש|תרחיש|الخلفية|الگوی سناریو|امثلة|پس منظر|زمینه|سناریو|سيناريو|سيناريو مخطط|مثالیں|منظر نامے کا خاکہ|منظرنامہ|نمونه ها|उदाहरण|परिदृश्य|परिदृश्य रूपरेखा|पृष्ठभूमि|ਉਦਾਹਰਨਾਂ|ਪਟਕਥਾ|ਪਟਕਥਾ ਢਾਂਚਾ|ਪਟਕਥਾ ਰੂਪ ਰੇਖਾ|ਪਿਛੋਕੜ|ఉదాహరణలు|కథనం|నేపథ్యం|సన్నివేశం|ಉದಾಹರಣೆಗಳು|ಕಥಾಸಾರಾಂಶ|ವಿವರಣೆ|ಹಿನ್ನೆಲೆ|โครงสร้างของเหตุการณ์|ชุดของตัวอย่าง|ชุดของเหตุการณ์|แนวคิด|สรุปเหตุการณ์|เหตุการณ์|배경|시나리오|시나리오 개요|예|サンプル|シナリオ|シナリオアウトライン|シナリオテンプレ|シナリオテンプレート|テンプレ|例|例子|剧本|剧本大纲|劇本|劇本大綱|场景|场景大纲|場景|場景大綱|背景):[^:\r\n]*/m,lookbehind:!0,inside:{important:{pattern:/(:)[^\r\n]*/,lookbehind:!0},keyword:/[^:\r\n]+:/}},"table-body":{pattern:RegExp("("+t+")(?:"+t+")+"),lookbehind:!0,inside:{outline:{pattern:/<[^>]+>/,alias:"variable"},td:{pattern:/\s*[^\s|][^|]*/,alias:"string"},punctuation:/\|/}},"table-head":{pattern:RegExp(t),inside:{th:{pattern:/\s*[^\s|][^|]*/,alias:"variable"},punctuation:/\|/}},atrule:{pattern:/(^[ \t]+)(?:'a|'ach|'ej|7|a|A také|A taktiež|A tiež|A zároveň|Aber|Ac|Adott|Akkor|Ak|Aleshores|Ale|Ali|Allora|Alors|Als|Ama|Amennyiben|Amikor|Ampak|an|AN|Ananging|And y'all|And|Angenommen|Anrhegedig a|An|Apabila|Atès|Atesa|Atunci|Avast!|Aye|A|awer|Bagi|Banjur|Bet|Biết|Blimey!|Buh|But at the end of the day I reckon|But y'all|But|BUT|Cal|Când|Cand|Cando|Ce|Cuando|Če|Ða ðe|Ða|Dadas|Dada|Dados|Dado|DaH ghu' bejlu'|dann|Dann|Dano|Dan|Dar|Dat fiind|Data|Date fiind|Date|Dati fiind|Dati|Daţi fiind|Dați fiind|DEN|Dato|De|Den youse gotta|Dengan|Diberi|Diyelim ki|Donada|Donat|Donitaĵo|Do|Dun|Duota|Ðurh|Eeldades|Ef|Eğer ki|Entao|Então|Entón|E|En|Entonces|Epi|És|Etant donnée|Etant donné|Et|Étant données|Étant donnée|Étant donné|Etant données|Etant donnés|Étant donnés|Fakat|Gangway!|Gdy|Gegeben seien|Gegeben sei|Gegeven|Gegewe|ghu' noblu'|Gitt|Given y'all|Given|Givet|Givun|Ha|Cho|I CAN HAZ|In|Ir|It's just unbelievable|I|Ja|Jeśli|Jeżeli|Kad|Kada|Kadar|Kai|Kaj|Když|Keď|Kemudian|Ketika|Khi|Kiedy|Ko|Kuid|Kui|Kun|Lan|latlh|Le sa a|Let go and haul|Le|Lè sa a|Lè|Logo|Lorsqu'<|Lorsque|mä|Maar|Mais|Mając|Ma|Majd|Maka|Manawa|Mas|Men|Menawa|Mutta|Nalika|Nalikaning|Nanging|Når|När|Nato|Nhưng|Niin|Njuk|O zaman|Och|Og|Oletetaan|Ond|Onda|Oraz|Pak|Pero|Però|Podano|Pokiaľ|Pokud|Potem|Potom|Privzeto|Pryd|Quan|Quand|Quando|qaSDI'|Så|Sed|Se|Siis|Sipoze ke|Sipoze Ke|Sipoze|Si|Şi|Și|Soit|Stel|Tada|Tad|Takrat|Tak|Tapi|Ter|Tetapi|Tha the|Tha|Then y'all|Then|Thì|Thurh|Toda|Too right|Un|Und|ugeholl|Và|vaj|Vendar|Ve|wann|Wanneer|WEN|Wenn|When y'all|When|Wtedy|Wun|Y'know|Yeah nah|Yna|Youse know like when|Youse know when youse got|Y|Za predpokladu|Za předpokladu|Zadan|Zadani|Zadano|Zadate|Zadato|Zakładając|Zaradi|Zatati|Þa þe|Þa|Þá|Þegar|Þurh|Αλλά|Δεδομένου|Και|Όταν|Τότε|А також|Агар|Але|Али|Аммо|А|Әгәр|Әйтик|Әмма|Бирок|Ва|Вә|Дадено|Дано|Допустим|Если|Задате|Задати|Задато|И|І|К тому же|Када|Кад|Когато|Когда|Коли|Ләкин|Лекин|Нәтиҗәдә|Нехай|Но|Онда|Припустимо, що|Припустимо|Пусть|Также|Та|Тогда|Тоді|То|Унда|Һәм|Якщо|אבל|אזי|אז|בהינתן|וגם|כאשר|آنگاه|اذاً|اگر|اما|اور|با فرض|بالفرض|بفرض|پھر|تب|ثم|جب|عندما|فرض کیا|لكن|لیکن|متى|هنگامی|و|अगर|और|कदा|किन्तु|चूंकि|जब|तथा|तदा|तब|परन्तु|पर|यदि|ਅਤੇ|ਜਦੋਂ|ਜਿਵੇਂ ਕਿ|ਜੇਕਰ|ਤਦ|ਪਰ|అప్పుడు|ఈ పరిస్థితిలో|కాని|చెప్పబడినది|మరియు|ಆದರೆ|ನಂತರ|ನೀಡಿದ|ಮತ್ತು|ಸ್ಥಿತಿಯನ್ನು|กำหนดให้|ดังนั้น|แต่|เมื่อ|และ|그러면<|그리고<|단<|만약<|만일<|먼저<|조건<|하지만<|かつ<|しかし<|ただし<|ならば<|もし<|並且<|但し<|但是<|假如<|假定<|假設<|假设<|前提<|同时<|同時<|并且<|当<|當<|而且<|那么<|那麼<)(?=[ \t])/m,lookbehind:!0},string:{pattern:/"(?:\\.|[^"\\\r\n])*"|'(?:\\.|[^'\\\r\n])*'/,inside:{outline:{pattern:/<[^>]+>/,alias:"variable"}}},outline:{pattern:/<[^>]+>/,alias:"variable"}}}(Prism),function(e){for(var t=/\/\*(?:[^*/]|\*(?!\/)|\/(?!\*)|<self>)*\*\//.source,r=0;r<2;r++)t=t.replace(/<self>/g,function(){return t});t=t.replace(/<self>/g,function(){return/[^\s\S]/.source}),e.languages.rust={comment:[{pattern:RegExp(/(^|[^\\])/.source+t),lookbehind:!0,greedy:!0},{pattern:/(^|[^\\:])\/\/.*/,lookbehind:!0,greedy:!0}],string:{pattern:/b?"(?:\\[\s\S]|[^\\"])*"|b?r(#*)"(?:[^"]|"(?!\1))*"\1/,greedy:!0},char:{pattern:/b?'(?:\\(?:x[0-7][\da-fA-F]|u\{(?:[\da-fA-F]_*){1,6}\}|.)|[^\\\r\n\t'])'/,greedy:!0},attribute:{pattern:/#!?\[(?:[^\[\]"]|"(?:\\[\s\S]|[^\\"])*")*\]/,greedy:!0,alias:"attr-name",inside:{string:null}},"closure-params":{pattern:/([=(,:]\s*|\bmove\s*)\|[^|]*\||\|[^|]*\|(?=\s*(?:\{|->))/,lookbehind:!0,greedy:!0,inside:{"closure-punctuation":{pattern:/^\||\|$/,alias:"punctuation"},rest:null}},"lifetime-annotation":{pattern:/'\w+/,alias:"symbol"},"fragment-specifier":{pattern:/(\$\w+:)[a-z]+/,lookbehind:!0,alias:"punctuation"},variable:/\$\w+/,"function-definition":{pattern:/(\bfn\s+)\w+/,lookbehind:!0,alias:"function"},"type-definition":{pattern:/(\b(?:enum|struct|trait|type|union)\s+)\w+/,lookbehind:!0,alias:"class-name"},"module-declaration":[{pattern:/(\b(?:crate|mod)\s+)[a-z][a-z_\d]*/,lookbehind:!0,alias:"namespace"},{pattern:/(\b(?:crate|self|super)\s*)::\s*[a-z][a-z_\d]*\b(?:\s*::(?:\s*[a-z][a-z_\d]*\s*::)*)?/,lookbehind:!0,alias:"namespace",inside:{punctuation:/::/}}],keyword:[/\b(?:Self|abstract|as|async|await|become|box|break|const|continue|crate|do|dyn|else|enum|extern|final|fn|for|if|impl|in|let|loop|macro|match|mod|move|mut|override|priv|pub|ref|return|self|static|struct|super|trait|try|type|typeof|union|unsafe|unsized|use|virtual|where|while|yield)\b/,/\b(?:bool|char|f(?:32|64)|[ui](?:8|16|32|64|128|size)|str)\b/],function:/\b[a-z_]\w*(?=\s*(?:::\s*<|\())/,macro:{pattern:/\b\w+!/,alias:"property"},constant:/\b[A-Z_][A-Z_\d]+\b/,"class-name":/\b[A-Z]\w*\b/,namespace:{pattern:/(?:\b[a-z][a-z_\d]*\s*::\s*)*\b[a-z][a-z_\d]*\s*::(?!\s*<)/,inside:{punctuation:/::/}},number:/\b(?:0x[\dA-Fa-f](?:_?[\dA-Fa-f])*|0o[0-7](?:_?[0-7])*|0b[01](?:_?[01])*|(?:(?:\d(?:_?\d)*)?\.)?\d(?:_?\d)*(?:[Ee][+-]?\d+)?)(?:_?(?:f32|f64|[iu](?:8|16|32|64|size)?))?\b/,boolean:/\b(?:false|true)\b/,punctuation:/->|\.\.=|\.{1,3}|::|[{}[\];(),:]/,operator:/[-+*\/%!^]=?|=[=>]?|&[&=]?|\|[|=]?|<<?=?|>>?=?|[@?]/},e.languages.rust["closure-params"].inside.rest=e.languages.rust,e.languages.rust.attribute.inside.string=e.languages.rust.string}(Prism),Prism.languages.markup={comment:{pattern:/<!--(?:(?!<!--)[\s\S])*?-->/,greedy:!0},prolog:{pattern:/<\?[\s\S]+?\?>/,greedy:!0},doctype:{pattern:/<!DOCTYPE(?:[^>"'[\]]|"[^"]*"|'[^']*')+(?:\[(?:[^<"'\]]|"[^"]*"|'[^']*'|<(?!!--)|<!--(?:[^-]|-(?!->))*-->)*\]\s*)?>/i,greedy:!0,inside:{"internal-subset":{pattern:/(^[^\[]*\[)[\s\S]+(?=\]>$)/,lookbehind:!0,greedy:!0,inside:null},string:{pattern:/"[^"]*"|'[^']*'/,greedy:!0},punctuation:/^<!|>$|[[\]]/,"doctype-tag":/^DOCTYPE/i,name:/[^\s<>'"]+/}},cdata:{pattern:/<!\[CDATA\[[\s\S]*?\]\]>/i,greedy:!0},tag:{pattern:/<\/?(?!\d)[^\s>\/=$<%]+(?:\s(?:\s*[^\s>\/=]+(?:\s*=\s*(?:"[^"]*"|'[^']*'|[^\s'">=]+(?=[\s>]))|(?=[\s/>])))+)?\s*\/?>/,greedy:!0,inside:{tag:{pattern:/^<\/?[^\s>\/]+/,inside:{punctuation:/^<\/?/,namespace:/^[^\s>\/:]+:/}},"special-attr":[],"attr-value":{pattern:/=\s*(?:"[^"]*"|'[^']*'|[^\s'">=]+)/,inside:{punctuation:[{pattern:/^=/,alias:"attr-equals"},{pattern:/^(\s*)["']|["']$/,lookbehind:!0}]}},punctuation:/\/?>/,"attr-name":{pattern:/[^\s>\/]+/,inside:{namespace:/^[^\s>\/:]+:/}}}},entity:[{pattern:/&[\da-z]{1,8};/i,alias:"named-entity"},/&#x?[\da-f]{1,8};/i]},Prism.languages.markup.tag.inside["attr-value"].inside.entity=Prism.languages.markup.entity,Prism.languages.markup.doctype.inside["internal-subset"].inside=Prism.languages.markup,Prism.hooks.add("wrap",function(e){e.type==="entity"&&(e.attributes.title=e.content.replace(/&/,"&"))}),Object.defineProperty(Prism.languages.markup.tag,"addInlined",{value:function(t,r){var n={};n["language-"+r]={pattern:/(^<!\[CDATA\[)[\s\S]+?(?=\]\]>$)/i,lookbehind:!0,inside:Prism.languages[r]},n.cdata=/^<!\[CDATA\[|\]\]>$/i;var i={"included-cdata":{pattern:/<!\[CDATA\[[\s\S]*?\]\]>/i,inside:n}};i["language-"+r]={pattern:/[\s\S]+/,inside:Prism.languages[r]};var a={};a[t]={pattern:RegExp(/(<__[^>]*>)(?:<!\[CDATA\[(?:[^\]]|\](?!\]>))*\]\]>|(?!<!\[CDATA\[)[\s\S])*?(?=<\/__>)/.source.replace(/__/g,function(){return t}),"i"),lookbehind:!0,greedy:!0,inside:i},Prism.languages.insertBefore("markup","cdata",a)}}),Object.defineProperty(Prism.languages.markup.tag,"addAttribute",{value:function(e,t){Prism.languages.markup.tag.inside["special-attr"].push({pattern:RegExp(/(^|["'\s])/.source+"(?:"+e+")"+/\s*=\s*(?:"[^"]*"|'[^']*'|[^\s'">=]+(?=[\s>]))/.source,"i"),lookbehind:!0,inside:{"attr-name":/^[^\s=]+/,"attr-value":{pattern:/=[\s\S]+/,inside:{value:{pattern:/(^=\s*(["']|(?!["'])))\S[\s\S]*(?=\2$)/,lookbehind:!0,alias:[t,"language-"+t],inside:Prism.languages[t]},punctuation:[{pattern:/^=/,alias:"attr-equals"},/"|'/]}}}})}}),Prism.languages.html=Prism.languages.markup,Prism.languages.mathml=Prism.languages.markup,Prism.languages.svg=Prism.languages.markup,Prism.languages.xml=Prism.languages.extend("markup",{}),Prism.languages.ssml=Prism.languages.xml,Prism.languages.atom=Prism.languages.xml,Prism.languages.rss=Prism.languages.xml,function(e){function t(r,n){return"___"+r.toUpperCase()+n+"___"}Object.defineProperties(e.languages["markup-templating"]={},{buildPlaceholders:{value:function(r,n,i,a){if(r.language===n){var s=r.tokenStack=[];r.code=r.code.replace(i,function(o){if(typeof a=="function"&&!a(o))return o;for(var l=s.length,u;r.code.indexOf(u=t(n,l))!==-1;)++l;return s[l]=o,u}),r.grammar=e.languages.markup}}},tokenizePlaceholders:{value:function(r,n){if(r.language!==n||!r.tokenStack)return;r.grammar=e.languages[n];var i=0,a=Object.keys(r.tokenStack);function s(o){for(var l=0;l<o.length&&!(i>=a.length);l++){var u=o[l];if(typeof u=="string"||u.content&&typeof u.content=="string"){var $=a[i],v=r.tokenStack[$],k=typeof u=="string"?u:u.content,y=t(n,$),C=k.indexOf(y);if(C>-1){++i;var F=k.substring(0,C),H=new e.Token(n,e.tokenize(v,r.grammar),"language-"+n,v),X=k.substring(C+y.length),p=[];F&&p.push.apply(p,s([F])),p.push(H),X&&p.push.apply(p,s([X])),typeof u=="string"?o.splice.apply(o,[l,1].concat(p)):u.content=p}}else u.content&&s(u.content)}return o}s(r.tokens)}}})}(Prism),function(e){var t=/\/\*[\s\S]*?\*\/|\/\/.*|#(?!\[).*/,r=[{pattern:/\b(?:false|true)\b/i,alias:"boolean"},{pattern:/(::\s*)\b[a-z_]\w*\b(?!\s*\()/i,greedy:!0,lookbehind:!0},{pattern:/(\b(?:case|const)\s+)\b[a-z_]\w*(?=\s*[;=])/i,greedy:!0,lookbehind:!0},/\b(?:null)\b/i,/\b[A-Z_][A-Z0-9_]*\b(?!\s*\()/],n=/\b0b[01]+(?:_[01]+)*\b|\b0o[0-7]+(?:_[0-7]+)*\b|\b0x[\da-f]+(?:_[\da-f]+)*\b|(?:\b\d+(?:_\d+)*\.?(?:\d+(?:_\d+)*)?|\B\.\d+)(?:e[+-]?\d+)?/i,i=/<?=>|\?\?=?|\.{3}|\??->|[!=]=?=?|::|\*\*=?|--|\+\+|&&|\|\||<<|>>|[?~]|[/^|%*&<>.+-]=?/,a=/[{}\[\](),:;]/;e.languages.php={delimiter:{pattern:/\?>$|^<\?(?:php(?=\s)|=)?/i,alias:"important"},comment:t,variable:/\$+(?:\w+\b|(?=\{))/,package:{pattern:/(namespace\s+|use\s+(?:function\s+)?)(?:\\?\b[a-z_]\w*)+\b(?!\\)/i,lookbehind:!0,inside:{punctuation:/\\/}},"class-name-definition":{pattern:/(\b(?:class|enum|interface|trait)\s+)\b[a-z_]\w*(?!\\)\b/i,lookbehind:!0,alias:"class-name"},"function-definition":{pattern:/(\bfunction\s+)[a-z_]\w*(?=\s*\()/i,lookbehind:!0,alias:"function"},keyword:[{pattern:/(\(\s*)\b(?:array|bool|boolean|float|int|integer|object|string)\b(?=\s*\))/i,alias:"type-casting",greedy:!0,lookbehind:!0},{pattern:/([(,?]\s*)\b(?:array(?!\s*\()|bool|callable|(?:false|null)(?=\s*\|)|float|int|iterable|mixed|object|self|static|string)\b(?=\s*\$)/i,alias:"type-hint",greedy:!0,lookbehind:!0},{pattern:/(\)\s*:\s*(?:\?\s*)?)\b(?:array(?!\s*\()|bool|callable|(?:false|null)(?=\s*\|)|float|int|iterable|mixed|never|object|self|static|string|void)\b/i,alias:"return-type",greedy:!0,lookbehind:!0},{pattern:/\b(?:array(?!\s*\()|bool|float|int|iterable|mixed|object|string|void)\b/i,alias:"type-declaration",greedy:!0},{pattern:/(\|\s*)(?:false|null)\b|\b(?:false|null)(?=\s*\|)/i,alias:"type-declaration",greedy:!0,lookbehind:!0},{pattern:/\b(?:parent|self|static)(?=\s*::)/i,alias:"static-context",greedy:!0},{pattern:/(\byield\s+)from\b/i,lookbehind:!0},/\bclass\b/i,{pattern:/((?:^|[^\s>:]|(?:^|[^-])>|(?:^|[^:]):)\s*)\b(?:abstract|and|array|as|break|callable|case|catch|clone|const|continue|declare|default|die|do|echo|else|elseif|empty|enddeclare|endfor|endforeach|endif|endswitch|endwhile|enum|eval|exit|extends|final|finally|fn|for|foreach|function|global|goto|if|implements|include|include_once|instanceof|insteadof|interface|isset|list|match|namespace|never|new|or|parent|print|private|protected|public|readonly|require|require_once|return|self|static|switch|throw|trait|try|unset|use|var|while|xor|yield|__halt_compiler)\b/i,lookbehind:!0}],"argument-name":{pattern:/([(,]\s*)\b[a-z_]\w*(?=\s*:(?!:))/i,lookbehind:!0},"class-name":[{pattern:/(\b(?:extends|implements|instanceof|new(?!\s+self|\s+static))\s+|\bcatch\s*\()\b[a-z_]\w*(?!\\)\b/i,greedy:!0,lookbehind:!0},{pattern:/(\|\s*)\b[a-z_]\w*(?!\\)\b/i,greedy:!0,lookbehind:!0},{pattern:/\b[a-z_]\w*(?!\\)\b(?=\s*\|)/i,greedy:!0},{pattern:/(\|\s*)(?:\\?\b[a-z_]\w*)+\b/i,alias:"class-name-fully-qualified",greedy:!0,lookbehind:!0,inside:{punctuation:/\\/}},{pattern:/(?:\\?\b[a-z_]\w*)+\b(?=\s*\|)/i,alias:"class-name-fully-qualified",greedy:!0,inside:{punctuation:/\\/}},{pattern:/(\b(?:extends|implements|instanceof|new(?!\s+self\b|\s+static\b))\s+|\bcatch\s*\()(?:\\?\b[a-z_]\w*)+\b(?!\\)/i,alias:"class-name-fully-qualified",greedy:!0,lookbehind:!0,inside:{punctuation:/\\/}},{pattern:/\b[a-z_]\w*(?=\s*\$)/i,alias:"type-declaration",greedy:!0},{pattern:/(?:\\?\b[a-z_]\w*)+(?=\s*\$)/i,alias:["class-name-fully-qualified","type-declaration"],greedy:!0,inside:{punctuation:/\\/}},{pattern:/\b[a-z_]\w*(?=\s*::)/i,alias:"static-context",greedy:!0},{pattern:/(?:\\?\b[a-z_]\w*)+(?=\s*::)/i,alias:["class-name-fully-qualified","static-context"],greedy:!0,inside:{punctuation:/\\/}},{pattern:/([(,?]\s*)[a-z_]\w*(?=\s*\$)/i,alias:"type-hint",greedy:!0,lookbehind:!0},{pattern:/([(,?]\s*)(?:\\?\b[a-z_]\w*)+(?=\s*\$)/i,alias:["class-name-fully-qualified","type-hint"],greedy:!0,lookbehind:!0,inside:{punctuation:/\\/}},{pattern:/(\)\s*:\s*(?:\?\s*)?)\b[a-z_]\w*(?!\\)\b/i,alias:"return-type",greedy:!0,lookbehind:!0},{pattern:/(\)\s*:\s*(?:\?\s*)?)(?:\\?\b[a-z_]\w*)+\b(?!\\)/i,alias:["class-name-fully-qualified","return-type"],greedy:!0,lookbehind:!0,inside:{punctuation:/\\/}}],constant:r,function:{pattern:/(^|[^\\\w])\\?[a-z_](?:[\w\\]*\w)?(?=\s*\()/i,lookbehind:!0,inside:{punctuation:/\\/}},property:{pattern:/(->\s*)\w+/,lookbehind:!0},number:n,operator:i,punctuation:a};var s={pattern:/\{\$(?:\{(?:\{[^{}]+\}|[^{}]+)\}|[^{}])+\}|(^|[^\\{])\$+(?:\w+(?:\[[^\r\n\[\]]+\]|->\w+)?)/,lookbehind:!0,inside:e.languages.php},o=[{pattern:/<<<'([^']+)'[\r\n](?:.*[\r\n])*?\1;/,alias:"nowdoc-string",greedy:!0,inside:{delimiter:{pattern:/^<<<'[^']+'|[a-z_]\w*;$/i,alias:"symbol",inside:{punctuation:/^<<<'?|[';]$/}}}},{pattern:/<<<(?:"([^"]+)"[\r\n](?:.*[\r\n])*?\1;|([a-z_]\w*)[\r\n](?:.*[\r\n])*?\2;)/i,alias:"heredoc-string",greedy:!0,inside:{delimiter:{pattern:/^<<<(?:"[^"]+"|[a-z_]\w*)|[a-z_]\w*;$/i,alias:"symbol",inside:{punctuation:/^<<<"?|[";]$/}},interpolation:s}},{pattern:/`(?:\\[\s\S]|[^\\`])*`/,alias:"backtick-quoted-string",greedy:!0},{pattern:/'(?:\\[\s\S]|[^\\'])*'/,alias:"single-quoted-string",greedy:!0},{pattern:/"(?:\\[\s\S]|[^\\"])*"/,alias:"double-quoted-string",greedy:!0,inside:{interpolation:s}}];e.languages.insertBefore("php","variable",{string:o,attribute:{pattern:/#\[(?:[^"'\/#]|\/(?![*/])|\/\/.*$|#(?!\[).*$|\/\*(?:[^*]|\*(?!\/))*\*\/|"(?:\\[\s\S]|[^\\"])*"|'(?:\\[\s\S]|[^\\'])*')+\](?=\s*[a-z$#])/im,greedy:!0,inside:{"attribute-content":{pattern:/^(#\[)[\s\S]+(?=\]$)/,lookbehind:!0,inside:{comment:t,string:o,"attribute-class-name":[{pattern:/([^:]|^)\b[a-z_]\w*(?!\\)\b/i,alias:"class-name",greedy:!0,lookbehind:!0},{pattern:/([^:]|^)(?:\\?\b[a-z_]\w*)+/i,alias:["class-name","class-name-fully-qualified"],greedy:!0,lookbehind:!0,inside:{punctuation:/\\/}}],constant:r,number:n,operator:i,punctuation:a}},delimiter:{pattern:/^#\[|\]$/,alias:"punctuation"}}}}),e.hooks.add("before-tokenize",function(l){if(/<\?/.test(l.code)){var u=/<\?(?:[^"'/#]|\/(?![*/])|("|')(?:\\[\s\S]|(?!\1)[^\\])*\1|(?:\/\/|#(?!\[))(?:[^?\n\r]|\?(?!>))*(?=$|\?>|[\r\n])|#\[|\/\*(?:[^*]|\*(?!\/))*(?:\*\/|$))*?(?:\?>|$)/g;e.languages["markup-templating"].buildPlaceholders(l,"php",u)}}),e.hooks.add("after-tokenize",function(l){e.languages["markup-templating"].tokenizePlaceholders(l,"php")})}(Prism);const Yi="(if|else if|await|then|catch|each|html|debug)";Prism.languages.svelte=Prism.languages.extend("markup",{each:{pattern:new RegExp("{[#/]each(?:(?:\\{(?:(?:\\{(?:[^{}])*\\})|(?:[^{}]))*\\})|(?:[^{}]))*}"),inside:{"language-javascript":[{pattern:/(as[\s\S]*)\([\s\S]*\)(?=\s*\})/,lookbehind:!0,inside:Prism.languages.javascript},{pattern:/(as[\s]*)[\s\S]*(?=\s*)/,lookbehind:!0,inside:Prism.languages.javascript},{pattern:/(#each[\s]*)[\s\S]*(?=as)/,lookbehind:!0,inside:Prism.languages.javascript}],keyword:/[#/]each|as/,punctuation:/{|}/}},block:{pattern:new RegExp("{[#:/@]/s"+Yi+"(?:(?:\\{(?:(?:\\{(?:[^{}])*\\})|(?:[^{}]))*\\})|(?:[^{}]))*}"),inside:{punctuation:/^{|}$/,keyword:[new RegExp("[#:/@]"+Yi+"( )*"),/as/,/then/],"language-javascript":{pattern:/[\s\S]*/,inside:Prism.languages.javascript}}},tag:{pattern:/<\/?(?!\d)[^\s>\/=$<%]+(?:\s(?:\s*[^\s>\/=]+(?:\s*=\s*(?:(?:"[^"]*"|'[^']*'|[^\s'">=]+(?=[\s>]))|(?:"[^"]*"|'[^']*'|{[\s\S]+?}(?=[\s/>])))|(?=[\s/>])))+)?\s*\/?>/i,greedy:!0,inside:{tag:{pattern:/^<\/?[^\s>\/]+/i,inside:{punctuation:/^<\/?/,namespace:/^[^\s>\/:]+:/}},"language-javascript":{pattern:/\{(?:(?:\{(?:(?:\{(?:[^{}])*\})|(?:[^{}]))*\})|(?:[^{}]))*\}/,inside:Prism.languages.javascript},"attr-value":{pattern:/=\s*(?:"[^"]*"|'[^']*'|[^\s'">=]+)/i,inside:{punctuation:[/^=/,{pattern:/^(\s*)["']|["']$/,lookbehind:!0}],"language-javascript":{pattern:/{[\s\S]+}/,inside:Prism.languages.javascript}}},punctuation:/\/?>/,"attr-name":{pattern:/[^\s>\/]+/,inside:{namespace:/^[^\s>\/:]+:/}}}},"language-javascript":{pattern:/\{(?:(?:\{(?:(?:\{(?:[^{}])*\})|(?:[^{}]))*\})|(?:[^{}]))*\}/,lookbehind:!0,inside:Prism.languages.javascript}}),Prism.languages.svelte.tag.inside["attr-value"].inside.entity=Prism.languages.svelte.entity,Prism.hooks.add("wrap",e=>{e.type==="entity"&&(e.attributes.title=e.content.replace(/&/,"&"))}),Object.defineProperty(Prism.languages.svelte.tag,"addInlined",{value:function(t,r){const n={};n["language-"+r]={pattern:/(^<!\[CDATA\[)[\s\S]+?(?=\]\]>$)/i,lookbehind:!0,inside:Prism.languages[r]},n.cdata=/^<!\[CDATA\[|\]\]>$/i;const i={"included-cdata":{pattern:/<!\[CDATA\[[\s\S]*?\]\]>/i,inside:n}};i["language-"+r]={pattern:/[\s\S]+/,inside:Prism.languages[r]};const a={};a[t]={pattern:RegExp(/(<__[\s\S]*?>)(?:<!\[CDATA\[[\s\S]*?\]\]>\s*|[\s\S])*?(?=<\/__>)/.source.replace(/__/g,t),"i"),lookbehind:!0,greedy:!0,inside:i},Prism.languages.insertBefore("svelte","cdata",a)}}),Prism.languages.svelte.tag.addInlined("style","css"),Prism.languages.svelte.tag.addInlined("script","javascript"),function(){typeof Prism>"u"||typeof document>"u"||!document.createRange||(Prism.plugins.KeepMarkup=!0,Prism.hooks.add("before-highlight",function(e){if(!e.element.children.length||!Prism.util.isActive(e.element,"keep-markup",!0))return;var t=Prism.util.isActive(e.element,"drop-tokens",!1);function r(o){return!(t&&o.nodeName.toLowerCase()==="span"&&o.classList.contains("token"))}var n=0,i=[];function a(o){if(!r(o)){s(o);return}var l={element:o,posOpen:n};i.push(l),s(o),l.posClose=n}function s(o){for(var l=0,u=o.childNodes.length;l<u;l++){var $=o.childNodes[l];$.nodeType===1?a($):$.nodeType===3&&(n+=$.data.length)}}s(e.element),i.length&&(e.keepMarkup=i)}),Prism.hooks.add("after-highlight",function(e){if(e.keepMarkup&&e.keepMarkup.length){var t=function(r,n){for(var i=0,a=r.childNodes.length;i<a;i++){var s=r.childNodes[i];if(s.nodeType===1){if(!t(s,n))return!1}else s.nodeType===3&&(!n.nodeStart&&n.pos+s.data.length>n.node.posOpen&&(n.nodeStart=s,n.nodeStartPos=n.node.posOpen-n.pos),n.nodeStart&&n.pos+s.data.length>=n.node.posClose&&(n.nodeEnd=s,n.nodeEndPos=n.node.posClose-n.pos),n.pos+=s.data.length);if(n.nodeStart&&n.nodeEnd){var o=document.createRange();return o.setStart(n.nodeStart,n.nodeStartPos),o.setEnd(n.nodeEnd,n.nodeEndPos),n.node.element.innerHTML="",n.node.element.appendChild(o.extractContents()),o.insertNode(n.node.element),o.detach(),!1}}return!0};e.keepMarkup.forEach(function(r){t(e.element,{node:r,pos:0})}),e.highlightedCode=e.element.innerHTML}}))}();const ue=ve(qo),Ji=ve(Go),Qo=ve(Yo),Xo=":host{--mte-drawer-height-half-open:120px}:host([mode=closed]){height:0}:host([mode=half]){height:var(--mte-drawer-height-half-open)}:host([mode=open]){height:50%}";var Qi=Object.defineProperty,el=Object.getOwnPropertyDescriptor,Xi=e=>{throw TypeError(e)},tl=(e,t,r)=>t in e?Qi(e,t,{enumerable:!0,configurable:!0,writable:!0,value:r}):e[t]=r,Dt=(e,t,r,n)=>{for(var i=n>1?void 0:n?el(t,r):t,a=e.length-1,s;a>=0;a--)(s=e[a])&&(i=(n?s(t,r,i):s(i))||i);return n&&i&&Qi(t,r,i),i},ea=(e,t,r)=>tl(e,typeof t!="symbol"?t+"":t,r),ta=(e,t,r)=>t.has(e)||Xi("Cannot "+r),or=(e,t,r)=>(ta(e,t,"read from private field"),t.get(e)),tn=(e,t,r)=>t.has(e)?Xi("Cannot add the same private member more than once"):t instanceof WeakSet?t.add(e):t.set(e,r),ra=(e,t,r,n)=>(ta(e,t,"write to private field"),t.set(e,r),r),lr,Bt,rn;const rl=120;let at=class extends $e{constructor(){super(),tn(this,lr),tn(this,Bt),ea(this,"toggleReadMore",e=>{this.mode==="open"?this.mode="half":this.mode="open",e.preventDefault(),e.stopImmediatePropagation()}),tn(this,rn,e=>{e.key==="Escape"&&(this.mode="closed")}),this.mode="closed",this.hasDetail=!1,ra(this,Bt,new AbortController),ra(this,lr,new Zo(this,{callback:e=>{const t=e[0]?.contentRect.height??0,r=this.header?.clientHeight??0;return t-r}}))}get toggleMoreLabel(){switch(this.mode){case"half":return b`${Q("🔼","up arrow")} More`;case"open":return b`${Q("🔽","down arrow")} Less`;case"closed":return P}}connectedCallback(){super.connectedCallback(),window.addEventListener("keydown",or(this,rn),{signal:or(this,Bt).signal})}disconnectedCallback(){or(this,Bt).abort(),super.disconnectedCallback()}render(){const e=this.mode==="open",t=or(this,lr).value;return b`<aside @click="${r=>r.stopPropagation()}" class="ml-6 mr-4">
|
|
70
|
+
<header class="w-full py-4">
|
|
71
|
+
<h2>
|
|
72
|
+
<slot name="header"></slot>
|
|
73
|
+
${wt(this.hasDetail,b`<button data-testId="btnReadMoreToggle" class="ml-2 align-middle" @click="${this.toggleReadMore}">${this.toggleMoreLabel}</button>`)}
|
|
74
|
+
</h2>
|
|
75
|
+
</header>
|
|
76
|
+
<div
|
|
77
|
+
style="${t&&e?`height: ${t}px;`:P}"
|
|
78
|
+
class="${Xr({"mb-4 motion-safe:transition-max-width":!0,"overflow-y-auto":e})}"
|
|
79
|
+
>
|
|
80
|
+
<slot name="summary"></slot>
|
|
81
|
+
${wt(this.hasDetail&&this.mode==="open",b`<slot name="detail"></slot>`)}
|
|
82
|
+
</div>
|
|
83
|
+
</aside>`}};lr=new WeakMap,Bt=new WeakMap,rn=new WeakMap,ea(at,"styles",[ve(Xo),ue]),Dt([I({reflect:!0})],at.prototype,"mode",2),Dt([I({reflect:!0,type:Boolean})],at.prototype,"hasDetail",2),Dt([I({attribute:!1})],at.prototype,"toggleMoreLabel",1),Dt([Or("header")],at.prototype,"header",2),at=Dt([se("mte-drawer")],at);function wt(e,t){return e?typeof t=="function"?t():t:P}function Lt(e,t){return e==null?P:t(e)}function nl(e){switch(e){case"Killed":return"success";case"NoCoverage":return"caution";case"Survived":return"danger";case"Timeout":return"warning";case"Ignored":case"RuntimeError":case"Pending":case"CompileError":return"secondary"}}function il(e){switch(e){case ne.Killing:return"success";case ne.Covering:return"warning";case ne.NotCovering:return"caution"}}function nn(e){switch(e){case ne.Killing:return Q("✅",e);case ne.Covering:return Q("☂",e);case ne.NotCovering:return Q("🌧",e)}}function na(e){switch(e){case"Killed":return Q("✅",e);case"NoCoverage":return Q("🙈",e);case"Ignored":return Q("🤥",e);case"Survived":return Q("👽",e);case"Timeout":return Q("⏰",e);case"Pending":return Q("⌛",e);case"RuntimeError":case"CompileError":return Q("💥",e)}}function an(e){return e.replace(/&/g,"&").replace(/</g,"<").replace(/>/g,">").replace(/"/g,""").replace(/'/g,"'")}function xt(...e){const t=e.filter(Boolean).join("/");{const r=new URL(window.location.href);return new URL(`#${t}`,r).href}}function ia(e){return e.length>1?"s":""}function aa({fileName:e,location:t}){return e?`${e}${t?`:${t.start.line}:${t.start.column}`:""}`:""}function sa(e){e&&!al(e)&&e.scrollIntoView({block:"center",behavior:"smooth"})}function al(e){const{top:t,bottom:r}=e.getBoundingClientRect();return t>=0&&r<=(window.innerHeight||document.documentElement.clientHeight)-rl}const oa=new Si,sl=Ho(Mo(1),Rt(window,"hashchange").pipe(Wo(e=>e.preventDefault()))).pipe(qr(()=>window.location.hash.substr(1).split("/").filter(Boolean).map(decodeURIComponent)));var ye=(e=>(e.mutant="mutant",e.test="test",e))(ye||{});class Ie extends $e{shouldReactivate(){return!0}reactivate(){this.requestUpdate()}#e=new bt;connectedCallback(){super.connectedCallback(),this.#e.add(oa.subscribe(()=>this.shouldReactivate()&&this.reactivate()))}disconnectedCallback(){super.disconnectedCallback(),this.#e.unsubscribe()}}const ol=`:host(:not([theme=dark])){--prism-maintext:#393a34;--prism-background:#f6f8fa;--prism-border:#ddd;--prism-cdata:#998;--prism-comment:var(--prism-cdata);--prism-doctype:var(--prism-cdata);--prism-prolog:var(--prism-cdata);--prism-attr-value:#e3116c;--prism-string:var(--prism-attr-value);--prism-boolean:#36acaa;--prism-entity:var(--prism-boolean);--prism-url:var(--prism-boolean);--prism-constant:var(--prism-boolean);--prism-inserted:var(--prism-boolean);--prism-number:var(--prism-boolean);--prism-property:var(--prism-boolean);--prism-regex:var(--prism-boolean);--prism-symbol:var(--prism-boolean);--prism-variable:var(--prism-boolean);--prism-atrule:#00a4db;--prism-attr-name:var(--prism-atrule);--prism-attr:var(--prism-atrule);--prism-operator:var(--prism-maintext);--prism-punctuation:var(--prism-maintext);--prism-deleted:#9a050f;--prism-function:var(--prism-deleted);--prism-function-variable:#6f42c1;--prism-selector:#00009f;--prism-tag:var(--prism-selector);--prism-keyword:var(--prism-selector)}:host([theme=dark]){--prism-maintext:#d3d0c8;--prism-background:#1d1f21;--prism-border:rgb(var(--mut-gray-200));--prism-cdata:#7c7c7c;--prism-comment:var(--prism-cdata);--prism-doctype:var(--prism-cdata);--prism-prolog:var(--prism-cdata);--prism-punctuation:#c5c8c6;--prism-tag:#96cbfe;--prism-property:var(--prism-tag);--prism-keyword:var(--prism-tag);--prism-class-name:#ffffb6;--prism-boolean:#9c9;--prism-constant:var(--prism-boolean);--prism-symbol:#f92672;--prism-deleted:var(--prism-symbol);--prism-number:#ff73fd;--prism-inserted:#a8ff60;--prism-selector:var(--prism-inserted);--prism-attr-name:var(--prism-inserted);--prism-string:var(--prism-inserted);--prism-char:var(--prism-inserted);--prism-builtin:var(--prism-inserted);--prism-variable:#c6c5fe;--prism-operator:#ededed;--prism-entity:#ffffb6;--prism-url:#96cbfe;--prism-attr-value:#f9ee98;--prism-atrule:var(--prism-attr-value);--prism-function:#dad085;--prism-regex:#e9c062;--prism-important:#fd971f}:host(:not([theme=dark])){--mut-file-ts-color:#498ba7;--mut-file-ts-test-color:#b7b73b;--mut-file-scala-color:#b8383d;--mut-file-java-color:#b8383d;--mut-file-js-color:#b7b73b;--mut-file-js-test-color:#cc6d2e;--mut-file-php-color:#9068b0;--mut-file-html-color:#498ba7;--mut-file-csharp-color:#498ba7;--mut-file-vue-color:#7fae42;--mut-file-gherkin-color:#00a818;--mut-file-svelte-color:#b8383d;--mut-file-rust-color:#627379}:host([theme=dark]){--mut-file-ts-color:#519aba;--mut-file-ts-test-color:#cbcb41;--mut-file-scala-color:#cc3e44;--mut-file-java-color:#cc3e44;--mut-file-js-color:#cbcb41;--mut-file-js-test-color:#e37933;--mut-file-php-color:#a074c4;--mut-file-html-color:#519aba;--mut-file-csharp-color:#519aba;--mut-file-vue-color:#8dc149;--mut-file-gherkin-color:#10b828;--mut-file-svelte-color:#cc3e44;--mut-file-rust-color:#6d8086}:host(:not([theme=dark])){--mut-gray-bg:rgb(var(--mut-white,255 255 255)/1);--mut-octicon-icon-color:#498ba7;--mut-line-number:#6e7781;--mut-diff-add-bg:#e6ffec;--mut-diff-add-bg-line-number:#ccffd8;--mut-diff-add-line-number:#24292f;--mut-diff-del-bg:#ffebe9;--mut-diff-del-bg-line-number:#ffd7d5;--mut-diff-del-line-number:var(--mut-diff-add-line-number);--mut-badge-info-bg:#54c6ec;--mut-badge-info:#212529;--mut-code-lense:#919191;--mut-squiggly-Survived:url("data:image/svg+xml;charset=UTF8,<svg xmlns='http://www.w3.org/2000/svg' height='3' width='6'><g fill='%23ef4444'><path d='m5.5 0-3 3H1.1l3-3z'/><path d='m4 0 2 2V.6L5.4 0zM0 2l1 1h1.4L0 .6z'/></g></svg>");--mut-squiggly-NoCoverage:url("data:image/svg+xml;charset=UTF8,<svg xmlns='http://www.w3.org/2000/svg' height='3' width='6'><g fill='%23fb923c'><path d='m5.5 0-3 3H1.1l3-3z'/><path d='m4 0 2 2V.6L5.4 0zM0 2l1 1h1.4L0 .6z'/></g></svg>");--mut-body-bg:#fff}:host([theme=dark]){color-scheme:dark;--mut-gray-50:24 24 27;--mut-gray-100:39 39 42;--mut-gray-200:63 63 70;--mut-gray-300:82 82 91;--mut-gray-400:113 113 122;--mut-gray-500:161 161 170;--mut-gray-600:212 212 216;--mut-gray-700:228 228 231;--mut-gray-800:244 244 245;--mut-gray-900:250 250 250;--mut-primary-100:7 89 133;--mut-primary-800:224 242 254;--mut-primary-900:240 249 255;--mut-primary-on:14 165 233;--mut-body-bg:#18181b;--mut-white:var(--mut-gray-50);--mut-octicon-icon-color:#519aba;--mut-line-number:#484f58;--mut-diff-add-bg:#2ea04326;--mut-diff-add-bg-line-number:#3fb9504d;--mut-diff-add-line-number:#c9d1d9;--mut-diff-del-bg:#f8514926;--mut-diff-del-bg-line-number:#f851494d;--mut-diff-del-line-number:#c9d1d9;--mut-badge-info-bg:#17a3b8;--mut-badge-info:#fff;--mut-code-lense:#999;--mut-squiggly-Survived:url("data:image/svg+xml;charset=UTF8,<svg xmlns='http://www.w3.org/2000/svg' height='3' width='6'><g fill='%23ef4444'><path d='m5.5 0-3 3H1.1l3-3z'/><path d='m4 0 2 2V.6L5.4 0zM0 2l1 1h1.4L0 .6z'/></g></svg>");--mut-squiggly-NoCoverage:url("data:image/svg+xml;charset=UTF8,<svg xmlns='http://www.w3.org/2000/svg' height='3' width='6'><g fill='%23fb923c'><path d='m5.5 0-3 3H1.1l3-3z'/><path d='m4 0 2 2V.6L5.4 0zM0 2l1 1h1.4L0 .6z'/></g></svg>")}`;var la=Object.defineProperty,ll=Object.getOwnPropertyDescriptor,ca=e=>{throw TypeError(e)},cl=(e,t,r)=>t in e?la(e,t,{enumerable:!0,configurable:!0,writable:!0,value:r}):e[t]=r,we=(e,t,r,n)=>{for(var i=n>1?void 0:n?ll(t,r):t,a=e.length-1,s;a>=0;a--)(s=e[a])&&(i=(n?s(t,r,i):s(i))||i);return n&&i&&la(t,r,i),i},Re=(e,t,r)=>cl(e,typeof t!="symbol"?t+"":t,r),ul=(e,t,r)=>t.has(e)||ca("Cannot "+r),sn=(e,t,r)=>(ul(e,t,"read from private field"),r?r.call(e):t.get(e)),ua=(e,t,r)=>t.has(e)?ca("Cannot add the same private member more than once"):t instanceof WeakSet?t.add(e):t.set(e,r),cr,on;const dl=100;re.MutationTestReportAppComponent=class extends Ie{constructor(){super(),ua(this,cr,new AbortController),Re(this,"mutants",new Map),Re(this,"tests",new Map),ua(this,on,()=>{this.theme=this.getTheme()}),Re(this,"themeSwitch",t=>{this.theme=t.detail,Wi()&&localStorage.setItem("mutation-testing-elements-theme",this.theme)}),Re(this,"subscriptions",[]),Re(this,"source"),Re(this,"sseSubscriptions",new Set),Re(this,"theMutant"),Re(this,"theTest"),this.context={view:ye.mutant,path:[]},this.path=[]}get themeBackgroundColor(){return getComputedStyle(this).getPropertyValue("--mut-body-bg")}get title(){return this.context.result?this.titlePostfix?`${this.context.result.name} - ${this.titlePostfix}`:this.context.result.name:""}firstUpdated(){(this.path.length===0||this.path[0]!==ye.mutant&&this.path[0]!==ye.test)&&window.location.replace(xt(`${ye.mutant}`))}async loadData(){if(this.src)try{const t=await fetch(this.src);this.report=await t.json()}catch(t){const r=String(t);this.errorMessage=r}}willUpdate(t){this.report&&(this.theme||(this.theme=this.getTheme()),t.has("report")&&this.updateModel(this.report),(t.has("path")||t.has("report"))&&(this.updateContext(),this.updateTitle())),t.has("src")&&this.loadData()}updated(t){t.has("theme")&&this.theme&&this.dispatchEvent(Ee("theme-changed",{theme:this.theme,themeBackgroundColor:this.themeBackgroundColor}))}getTheme(){const t=Wi()&&localStorage.getItem("mutation-testing-elements-theme");return t||(window.matchMedia?.("(prefers-color-scheme: dark)")?.matches?"dark":"light")}updateModel(t){this.rootModel=Ks(t),r((n,i)=>{n.result=i,n.mutants.forEach(a=>this.mutants.set(a.id,a))})(this.rootModel?.systemUnderTestMetrics),r((n,i)=>{n.result=i,n.tests.forEach(a=>this.tests.set(a.id,a))})(this.rootModel?.testMetrics),this.rootModel.systemUnderTestMetrics.updateParent(),this.rootModel.testMetrics?.updateParent();function r(n){return function i(a){a?.file&&n(a.file,a),a?.childResults.forEach(s=>{i(s)})}}}updateContext(){if(this.rootModel){const t=(n,i)=>i.reduce((a,s)=>a?.childResults.find(o=>o.name===s),n),r=this.path.slice(1);this.path[0]===ye.test&&this.rootModel.testMetrics?this.context={view:ye.test,path:r,result:t(this.rootModel.testMetrics,this.path.slice(1))}:this.context={view:ye.mutant,path:r,result:t(this.rootModel.systemUnderTestMetrics,this.path.slice(1))}}}updateTitle(){document.title=this.title}connectedCallback(){super.connectedCallback(),window.matchMedia("(prefers-color-scheme: dark)").addEventListener?.("change",sn(this,on),{signal:sn(this,cr).signal}),this.subscriptions.push(sl.subscribe(t=>this.path=t)),this.initializeSse()}initializeSse(){if(!this.sse)return;this.source=new EventSource(this.sse);const t=Rt(this.source,"mutant-tested").subscribe(n=>{const i=JSON.parse(n.data);if(!this.report)return;const a=this.mutants.get(i.id);if(a!==void 0){this.theMutant=a;for(const[s,o]of Object.entries(i))this.theMutant[s]=o;i.killedBy&&i.killedBy.forEach(s=>{const o=this.tests.get(s);o!==void 0&&(this.theTest=o,o.addKilled(this.theMutant),this.theMutant.addKilledBy(o))}),i.coveredBy&&i.coveredBy.forEach(s=>{const o=this.tests.get(s);o!==void 0&&(this.theTest=o,o.addCovered(this.theMutant),this.theMutant.addCoveredBy(o))})}}),r=Rt(this.source,"mutant-tested").pipe(Ko(dl)).subscribe(()=>{this.applyChanges()});this.sseSubscriptions.add(t),this.sseSubscriptions.add(r),this.source.addEventListener("finished",()=>{this.source?.close(),this.applyChanges(),this.sseSubscriptions.forEach(n=>n.unsubscribe())})}applyChanges(){this.theMutant?.update(),this.theTest?.update(),oa.next()}disconnectedCallback(){super.disconnectedCallback(),sn(this,cr).abort(),this.subscriptions.forEach(t=>t.unsubscribe())}renderTitle(){return this.context.result?b`
|
|
84
|
+
<h1 class="text-5xl font-bold tracking-tight">
|
|
85
|
+
${this.context.result.name}${this.titlePostfix?b`<small class="text-light-muted ml-4 font-light">${this.titlePostfix}</small>`:P}
|
|
86
|
+
</h1>
|
|
87
|
+
`:P}render(){return this.context.result??this.errorMessage?b`
|
|
88
|
+
<mte-file-picker .rootModel="${this.rootModel}"></mte-file-picker>
|
|
89
|
+
<div class="container bg-white pb-4 font-sans text-gray-800 motion-safe:transition-max-width">
|
|
90
|
+
<div class="space-y-4 transition-colors">
|
|
91
|
+
${this.renderErrorMessage()}
|
|
92
|
+
<mte-theme-switch @theme-switch="${this.themeSwitch}" class="sticky top-offset z-20 float-right pt-6" .theme="${this.theme}">
|
|
93
|
+
</mte-theme-switch>
|
|
94
|
+
${this.renderTitle()} ${this.renderTabs()}
|
|
95
|
+
<mte-breadcrumb
|
|
96
|
+
@mte-file-picker-open="${()=>this.filePicker.open()}"
|
|
97
|
+
.view="${this.context.view}"
|
|
98
|
+
.path="${this.context.path}"
|
|
99
|
+
></mte-breadcrumb>
|
|
100
|
+
<mte-result-status-bar
|
|
101
|
+
detected="${Ot(this.rootModel?.systemUnderTestMetrics.metrics.totalDetected)}"
|
|
102
|
+
noCoverage="${Ot(this.rootModel?.systemUnderTestMetrics.metrics.noCoverage)}"
|
|
103
|
+
pending="${Ot(this.rootModel?.systemUnderTestMetrics.metrics.pending)}"
|
|
104
|
+
survived="${Ot(this.rootModel?.systemUnderTestMetrics.metrics.survived)}"
|
|
105
|
+
total="${Ot(this.rootModel?.systemUnderTestMetrics.metrics.totalValid)}"
|
|
106
|
+
></mte-result-status-bar>
|
|
107
|
+
${this.context.view==="mutant"&&this.context.result?b`<mte-mutant-view
|
|
108
|
+
id="mte-mutant-view"
|
|
109
|
+
.result="${this.context.result}"
|
|
110
|
+
.thresholds="${this.report.thresholds}"
|
|
111
|
+
.path="${this.path}"
|
|
112
|
+
></mte-mutant-view>`:P}
|
|
113
|
+
${this.context.view==="test"&&this.context.result?b`<mte-test-view id="mte-test-view" .result="${this.context.result}" .path="${this.path}"></mte-test-view>`:P}
|
|
114
|
+
</div>
|
|
115
|
+
</div>
|
|
116
|
+
`:b``}renderErrorMessage(){return this.errorMessage?b`<div class="my-4 rounded-lg bg-red-100 p-4 text-sm text-red-700" role="alert">${this.errorMessage}</div>`:P}renderTabs(){if(this.rootModel?.testMetrics){const t=this.context.view==="mutant",r=this.context.view==="test";return b`
|
|
117
|
+
<nav class="border-b border-gray-200 text-center text-sm font-medium text-gray-600">
|
|
118
|
+
<ul class="-mb-px flex flex-wrap" role="tablist">
|
|
119
|
+
${[{type:"mutant",isActive:t,text:"👽 Mutants"},{type:"test",isActive:r,text:"🧪 Tests"}].map(({type:n,isActive:i,text:a})=>b`<li class="mr-2" role="presentation">
|
|
120
|
+
<a
|
|
121
|
+
class="inline-block rounded-t-lg border-b-2 border-transparent p-4 transition-colors hover:border-gray-300 hover:bg-gray-200 hover:text-gray-700 aria-selected:border-b-[3px] aria-selected:border-primary-700 aria-selected:text-primary-on"
|
|
122
|
+
role="tab"
|
|
123
|
+
href="${xt(n)}"
|
|
124
|
+
aria-selected="${i}"
|
|
125
|
+
aria-controls="mte-${n}-view"
|
|
126
|
+
>${a}</a
|
|
127
|
+
>
|
|
128
|
+
</li>`)}
|
|
129
|
+
</ul>
|
|
130
|
+
</nav>
|
|
131
|
+
`}else return P}},cr=new WeakMap,on=new WeakMap,Re(re.MutationTestReportAppComponent,"styles",[Qo,ve(ol),ue]),we([I({attribute:!1})],re.MutationTestReportAppComponent.prototype,"report",2),we([I({attribute:!1})],re.MutationTestReportAppComponent.prototype,"rootModel",2),we([I()],re.MutationTestReportAppComponent.prototype,"src",2),we([I()],re.MutationTestReportAppComponent.prototype,"sse",2),we([I({attribute:!1})],re.MutationTestReportAppComponent.prototype,"errorMessage",2),we([I({attribute:!1})],re.MutationTestReportAppComponent.prototype,"context",2),we([I({type:Array})],re.MutationTestReportAppComponent.prototype,"path",2),we([I({attribute:"title-postfix"})],re.MutationTestReportAppComponent.prototype,"titlePostfix",2),we([I({reflect:!0})],re.MutationTestReportAppComponent.prototype,"theme",2),we([I({attribute:!1})],re.MutationTestReportAppComponent.prototype,"themeBackgroundColor",1),we([Or("mte-file-picker")],re.MutationTestReportAppComponent.prototype,"filePicker",2),we([I()],re.MutationTestReportAppComponent.prototype,"title",1),re.MutationTestReportAppComponent=we([se("mutation-test-report-app")],re.MutationTestReportAppComponent);/**
|
|
132
|
+
* @license
|
|
133
|
+
* Copyright 2021 Google LLC
|
|
134
|
+
* SPDX-License-Identifier: BSD-3-Clause
|
|
135
|
+
*/function*Ke(e,t){if(e!==void 0){let r=0;for(const n of e)yield t(n,r++)}}var ke=(e=>(e.csharp="cs",e.java="java",e.javascript="javascript",e.html="html",e.php="php",e.scala="scala",e.typescript="typescript",e.vue="vue",e.gherkin="gherkin",e.svelte="svelte",e.rust="rust",e))(ke||{});function hl(e){return e.substr(e.lastIndexOf(".")+1).toLocaleLowerCase()}function ln(e){switch(hl(e)){case"cs":return"cs";case"html":return"html";case"java":return"java";case"js":case"cjs":case"mjs":return"javascript";case"ts":case"tsx":case"cts":case"mts":return"typescript";case"sc":case"sbt":case"scala":return"scala";case"php":return"php";case"vue":return"vue";case"feature":return"gherkin";case"svelte":return"svelte";case"rs":return"rust";default:return}}function cn(e,t){const r=ln(t)??"plain";let n=r;return r==="vue"&&(n="html"),Gi.highlight(e,Gi.languages[n],n)}function un(e,t){let r=[];const n=[],i={column:0,line:1,offset:-1},a=[];let s=!1,o=0;for(;o<e.length;){switch(s&&!ur(e[o])&&(u(),s=!1),e[o]){case"\r":i.offset++;break;case`
|
|
136
|
+
`:k(),i.offset++,i.line++,i.column=0,s=!0;break;case"<":{const d=C();d.isClosing?H(d):F(d);break}case"&":y(m());break;default:y(e[o]);break}o++}return k(),n;function l(...d){r.push(...d)}function u(){a.forEach(d=>l(v(d)))}function $(){a.forEach(d=>l(v({...d,isClosing:!0})))}function v({attributes:d,elementName:g,isClosing:_}){return _?`</${g}>`:`<${g}${Object.entries(d??{}).reduce((O,[E,q])=>q===void 0?`${O} ${E}`:`${O} ${E}="${q}"`,"")}>`}function k(){$(),n.push(r.join("")),r=[]}function y(d){if(i.column++,i.offset++,t)for(const g of t(i))g.isClosing?H(g):(l(v(g)),a.push(g));l(d)}function C(){o++;const d=e[o]==="/"?!0:void 0;d&&o++;const g=o;for(;!ur(e[o])&&e[o]!==">";)o++;const _=e.substring(g,o),O=X();return{elementName:_,attributes:O,isClosing:d}}function F(d){a.push(d),l(v(d))}function H(d){let g;for(g=a.length-1;g>=0;g--){const _=a[g];if(d.elementName===_.elementName&&_.id===d.id){l(v(d)),a.splice(g,1);for(let O=g;O<a.length;O++)l(v(a[O]));break}l(v({..._,isClosing:!0}))}if(g===-1)throw new Error(`Cannot find corresponding opening tag for ${v(d)}`)}function X(){const d=Object.create(null);for(;o<e.length;){const g=e[o];if(g===">")return d;if(!ur(g)){const{name:_,value:O}=p();d[_]=O}o++}throw new Error(`Missing closing tag near ${e.substr(o-10)}`)}function p(){const d=o;for(;e[o]!=="=";)o++;const g=e.substring(d,o);o++;const _=h();return{name:g,value:_}}function h(){e[o]==='"'&&o++;const d=o;for(;e[o]!=='"';)o++;return e.substring(d,o)}function m(){const d=o;for(;e[o]!==";";)o++;return e.substring(d,o+1)}}function ur(e){return e===`
|
|
137
|
+
`||e===" "||e===" "}function pl(e,t){let r=0,n=t.length-1;for(;e[r]===t[r]&&r<t.length;)r++;const i=e.length-t.length;for(;e[n+i]===t[n]&&n>r;)n--;n===r&&(ur(t[r-1])||r--),n++;const a=t.substring(r,n);return["true","false"].forEach(s=>{a===s.substr(0,s.length-1)&&s.endsWith(t[n])&&n++,a===s.substr(1,s.length)&&s.startsWith(t[r-1])&&r--}),[r,n]}function dr(e,t){return e.line>t.line||e.line===t.line&&e.column>=t.column}const fl='#report-code-block{background:var(--prism-background);border:1px solid var(--prism-border);overflow-x:auto;overflow-y:visible}.line-numbers{counter-reset:mte-line-number}.line .line-number{color:var(--mut-line-number);counter-increment:mte-line-number;padding:0 10px 0 15px;text-align:right}.line .line-number:before{content:counter(mte-line-number)}.line-marker:before{content:" ";padding:0 5px}.mte-selected-Pending .mutant.Pending{border-bottom:2px solid;border-color:#a3a3a3;cursor:pointer}svg.mutant-dot.Pending{fill:#a3a3a3}.mte-selected-Killed .mutant.Killed{border-bottom:2px solid;border-color:#16a34a;cursor:pointer}svg.mutant-dot.Killed{fill:#16a34a}svg.mutant-dot.NoCoverage{fill:#f97316}svg.mutant-dot.Survived{fill:#ef4444}.mte-selected-Timeout .mutant.Timeout{border-bottom:2px solid;border-color:#fbbf24;cursor:pointer}svg.mutant-dot.Timeout{fill:#fbbf24}.mte-selected-CompileError .mutant.CompileError{border-bottom:2px solid;border-color:#a3a3a3;cursor:pointer}svg.mutant-dot.CompileError{fill:#a3a3a3}.mte-selected-RuntimeError .mutant.RuntimeError{border-bottom:2px solid;border-color:#a3a3a3;cursor:pointer}svg.mutant-dot.RuntimeError{fill:#a3a3a3}.mte-selected-Ignored .mutant.Ignored{border-bottom:2px solid;border-color:#a3a3a3;cursor:pointer}svg.mutant-dot.Ignored{fill:#a3a3a3}.mte-selected-Survived .mutant.Survived{border-bottom-style:solid;border-image-outset:6px;border-image-repeat:repeat;border-image-slice:0 0 4 0;border-image-source:var(--mut-squiggly-Survived);border-image-width:4px;cursor:pointer}.mte-selected-Survived .mutant.Survived .mutant.NoCoverage,.mte-selected-Survived .mutant.Survived .mutant.Survived{border-bottom-style:none;border-image:none}.mte-selected-NoCoverage .mutant.NoCoverage{border-bottom-style:solid;border-image-outset:6px;border-image-repeat:repeat;border-image-slice:0 0 4 0;border-image-source:var(--mut-squiggly-NoCoverage);border-image-width:4px;cursor:pointer}.mte-selected-NoCoverage .mutant.NoCoverage .mutant.NoCoverage,.mte-selected-NoCoverage .mutant.NoCoverage .mutant.Survived{border-bottom-style:none;border-image:none}.mutant-dot{cursor:pointer;margin-left:.125rem;margin-right:.125rem}.diff-old{background-color:var(--mut-diff-del-bg)}.diff-focus{background-color:var(--mut-diff-add-bg-line-number)}.diff-old .line-number{background-color:var(--mut-diff-del-bg-line-number);color:var(--mut-diff-del-line-number)}.diff-old .line-marker:before{content:"-"}.diff-new{background-color:var(--mut-diff-add-bg)}.diff-new .empty-line-number{background-color:var(--mut-diff-add-bg-line-number);color:var(--mut-diff-add-line-number)}.diff-new .line-marker:before{content:"+"}';/**
|
|
138
|
+
* @license
|
|
139
|
+
* Copyright 2017 Google LLC
|
|
140
|
+
* SPDX-License-Identifier: BSD-3-Clause
|
|
141
|
+
*/class dn extends Qr{constructor(t){if(super(t),this.it=P,t.type!==Yr.CHILD)throw Error(this.constructor.directiveName+"() can only be used in child bindings")}render(t){if(t===P||t==null)return this._t=void 0,this.it=t;if(t===Oe)return t;if(typeof t!="string")throw Error(this.constructor.directiveName+"() called with a non-string value");if(t===this.it)return this._t;this.it=t;const r=[t];return r.raw=r,this._t={_$litType$:this.constructor.resultType,strings:r,values:[]}}}dn.directiveName="unsafeHTML",dn.resultType=1;const gl=Jr(dn);function da(e,t){return e===P&&t===P?P:b`<span class="ml-1 flex flex-row items-center">${e}${t}</span>`}function ha(e,t){return b`<tr class="line"
|
|
142
|
+
><td class="line-number"></td><td class="line-marker"></td><td class="code flex"><span>${gl(e)}</span>${t}</td></tr
|
|
143
|
+
>`}const pa="M 0,5 C 0,-1.66 10,-1.66 10,5 10,7.76 7.76,10 5,10 2.24,10 0,7.76 0,5 Z",fa="M 0,0 C 0,0 10,0 10,0 10,0 5,10 5,10 5,10 0,0 0,0 Z",ml="0.4 0 0.2 1",ga=(e,t,r)=>ee`<path stroke-opacity="${r}" class="transition-stroke-opacity stroke-gray-800" d="${t}">
|
|
144
|
+
<animate values="${e};${t}" attributeName="d" dur="0.2s" begin="indefinite" calcMode="spline" keySplines="${ml}" />
|
|
145
|
+
</path>`,ma=ga(pa,fa,1),va=ga(fa,pa,0);function ba(e,t,r){e?.querySelector(`[${t}="${encodeURIComponent(r)}"] path animate`)?.beginElement()}var ya=Object.defineProperty,vl=Object.getOwnPropertyDescriptor,wa=e=>{throw TypeError(e)},bl=(e,t,r)=>t in e?ya(e,t,{enumerable:!0,configurable:!0,writable:!0,value:r}):e[t]=r,We=(e,t,r,n)=>{for(var i=n>1?void 0:n?vl(t,r):t,a=e.length-1,s;a>=0;a--)(s=e[a])&&(i=(n?s(t,r,i):s(i))||i);return n&&i&&ya(t,r,i),i},jt=(e,t,r)=>bl(e,typeof t!="symbol"?t+"":t,r),hn=(e,t,r)=>t.has(e)||wa("Cannot "+r),pn=(e,t,r)=>(hn(e,t,"read from private field"),t.get(e)),fn=(e,t,r)=>t.has(e)?wa("Cannot add the same private member more than once"):t instanceof WeakSet?t.add(e):t.set(e,r),yl=(e,t,r,n)=>(hn(e,t,"write to private field"),t.set(e,r),r),xa=(e,t,r)=>(hn(e,t,"access private method"),r),Nt,gn,hr,mn;const vn="diff-old",$a="diff-new";let Te=class extends Ie{constructor(){super(),fn(this,hr),fn(this,Nt),fn(this,gn,e=>{e.key==="Escape"&&this.selectedMutant&&this.toggleMutant(this.selectedMutant)}),jt(this,"filtersChanged",e=>{this.selectedMutantStates=e.detail.concat(["Pending"])}),jt(this,"codeClicked",e=>{if(e.stopPropagation(),e.target instanceof Element){let t=e.target;const r=[];for(;t instanceof Element;t=t.parentElement){const i=t.getAttribute("mutant-id"),a=this.mutants.find(({id:s})=>s.toString()===i);a&&r.push(a)}const n=(this.selectedMutant?r.indexOf(this.selectedMutant):-1)+1;r[n]?(this.toggleMutant(r[n]),_a()):this.selectedMutant&&(this.toggleMutant(this.selectedMutant),_a())}}),jt(this,"nextMutant",()=>{const e=this.selectedMutant?(this.mutants.indexOf(this.selectedMutant)+1)%this.mutants.length:0;this.mutants[e]&&this.toggleMutant(this.mutants[e])}),jt(this,"previousMutant",()=>{const e=this.selectedMutant?(this.mutants.indexOf(this.selectedMutant)+this.mutants.length-1)%this.mutants.length:this.mutants.length-1;this.mutants[e]&&this.toggleMutant(this.mutants[e])}),this.filters=[],this.selectedMutantStates=[],this.lines=[],this.mutants=[],yl(this,Nt,new AbortController)}connectedCallback(){super.connectedCallback(),window.addEventListener("keydown",pn(this,gn),{signal:pn(this,Nt).signal})}disconnectedCallback(){pn(this,Nt).abort(),super.disconnectedCallback()}render(){const e=new Map;for(const r of this.mutants){let n=e.get(r.location.start.line);n||(n=[],e.set(r.location.start.line,n)),n.push(r)}const t=r=>this.renderMutantDots([...e.entries()].filter(([n])=>n>r).flatMap(([,n])=>n));return b`
|
|
146
|
+
<mte-state-filter
|
|
147
|
+
allow-toggle-all
|
|
148
|
+
.filters="${this.filters}"
|
|
149
|
+
@filters-changed="${this.filtersChanged}"
|
|
150
|
+
@next=${this.nextMutant}
|
|
151
|
+
@previous=${this.previousMutant}
|
|
152
|
+
></mte-state-filter>
|
|
153
|
+
<pre
|
|
154
|
+
@click="${this.codeClicked}"
|
|
155
|
+
id="report-code-block"
|
|
156
|
+
class="line-numbers ${this.selectedMutantStates.map(r=>`mte-selected-${r}`).join(" ")} flex rounded-md py-4"
|
|
157
|
+
>
|
|
158
|
+
<code class="flex language-${this.model.language}">
|
|
159
|
+
<table>${Ke(this.lines,(r,n)=>{const i=n+1,a=this.renderMutantDots(e.get(i)),s=this.lines.length===i?t(i):P;return ha(r,da(a,s))})}</table>
|
|
160
|
+
</code>
|
|
161
|
+
</pre>
|
|
162
|
+
`}renderMutantDots(e){return e?.length?e.map(t=>ee`<svg mutant-id="${t.id}" class="mutant-dot ${this.selectedMutant?.id===t.id?"selected":""} ${t.status}" height="10" width="12">
|
|
163
|
+
<title>${ka(t)}</title>
|
|
164
|
+
${this.selectedMutant?.id===t.id?ma:va}
|
|
165
|
+
</svg>`):P}toggleMutant(e){if(this.removeCurrentDiff(),xa(this,hr,mn).call(this,e),this.selectedMutant===e){this.selectedMutant=void 0,this.dispatchEvent(Ee("mutant-selected",{selected:!1,mutant:e}));return}else this.selectedMutant&&xa(this,hr,mn).call(this,this.selectedMutant);this.selectedMutant=e;const t=this.code.querySelectorAll("tr.line");for(let i=e.location.start.line-1;i<e.location.end.line;i++)t.item(i).classList.add(vn);const r=this.highlightedReplacementRows(e),n=t.item(e.location.end.line-1);n.insertAdjacentHTML("afterend",r),sa(n),this.dispatchEvent(Ee("mutant-selected",{selected:!0,mutant:e}))}removeCurrentDiff(){const e=this.code;e.querySelectorAll(`.${vn}`).forEach(n=>n.classList.remove(vn)),e.querySelectorAll(`.${$a}`).forEach(n=>n.remove())}reactivate(){super.reactivate(),this.updateFileRepresentation()}update(e){e.has("model")&&this.model&&this.updateFileRepresentation(),(e.has("model")&&this.model||e.has("selectedMutantStates"))&&(this.mutants=this.model.mutants.filter(t=>this.selectedMutantStates.includes(t.status)).sort((t,r)=>dr(t.location.start,r.location.start)?1:-1),this.selectedMutant&&!this.mutants.includes(this.selectedMutant)&&e.has("selectedMutantStates")&&this.selectedMutantsHaveChanged(e.get("selectedMutantStates")??[])&&this.toggleMutant(this.selectedMutant)),super.update(e)}updateFileRepresentation(){this.filters=["Killed","Survived","NoCoverage","Ignored","Timeout","CompileError","RuntimeError"].filter(n=>this.model.mutants.some(i=>i.status===n)).map(n=>({enabled:[...this.selectedMutantStates,"Survived","NoCoverage","Timeout"].includes(n),count:this.model.mutants.filter(i=>i.status===n).length,status:n,label:b`${na(n)} ${n}`,context:nl(n)}));const e=cn(this.model.source,this.model.name),t=new Set,r=new Set(this.model.mutants);this.lines=un(e,function*(n){for(const i of t)dr(n,i.location.end)&&(t.delete(i),yield{elementName:"span",id:i.id,isClosing:!0});for(const i of r)dr(n,i.location.start)&&(t.add(i),r.delete(i),yield{elementName:"span",id:i.id,attributes:{class:an(`mutant border-none ${i.status}`),title:an(ka(i)),"mutant-id":an(i.id.toString())}})})}selectedMutantsHaveChanged(e){return e.length!==this.selectedMutantStates.length?!0:!e.every((t,r)=>this.selectedMutantStates[r]===t)}highlightedReplacementRows(e){const t=e.getMutatedLines().trimEnd(),r=e.getOriginalLines().trimEnd(),[n,i]=pl(r,t),a=un(cn(t,this.model.name),function*({offset:l}){l===n?yield{elementName:"span",id:"diff-focus",attributes:{class:"diff-focus"}}:l===i&&(yield{elementName:"span",id:"diff-focus",isClosing:!0})}),s=`<tr class="${$a}"><td class="empty-line-number"></td><td class="line-marker"></td><td class="code">`,o="</td></tr>";return a.map(l=>`${s}${l}${o}`).join("")}};Nt=new WeakMap,gn=new WeakMap,hr=new WeakSet,mn=function(e){ba(this.code,"mutant-id",e.id)},jt(Te,"styles",[Ji,ue,ve(fl)]),We([be()],Te.prototype,"filters",2),We([I({attribute:!1})],Te.prototype,"model",2),We([be()],Te.prototype,"selectedMutantStates",2),We([be()],Te.prototype,"selectedMutant",2),We([be()],Te.prototype,"lines",2),We([be()],Te.prototype,"mutants",2),We([Or("code")],Te.prototype,"code",2),Te=We([se("mte-file")],Te);function ka(e){return`${e.mutatorName} ${e.status}`}function _a(){window.getSelection()?.removeAllRanges()}var Sa={exports:{}};(function(e){((t,r)=>{e.exports?e.exports=r():t.fuzzysort=r()})(en,t=>{var r=(f,c)=>{if(!f||!c)return L;var w=C(f);Ae(c)||(c=y(c));var A=w.bitflags;return(A&c._bitflags)!==A?L:H(w,c)},n=(f,c,w)=>{if(!f)return w?.all?F(c,w):G;var A=C(f),M=A.bitflags,S=A.containsSpace,x=v(w?.threshold||0),z=w?.limit||Ne,T=0,R=0,j=c.length;function me(ht){T<z?(Ct.add(ht),++T):(++R,ht._score>Ct.peek()._score&&Ct.replaceTop(ht))}if(w?.key)for(var le=w.key,U=0;U<j;++U){var pe=c[U],K=je(pe,le);if(K&&(Ae(K)||(K=y(K)),(M&K._bitflags)===M)){var Y=H(A,K);Y!==L&&(Y._score<x||(Y.obj=pe,me(Y)))}}else if(w?.keys){var Ye=w.keys,Ce=Ye.length;e:for(var U=0;U<j;++U){var pe=c[U];{for(var ce=0,N=0;N<Ce;++N){var le=Ye[N],K=je(pe,le);if(!K){Fe[N]=de;continue}Ae(K)||(K=y(K)),Fe[N]=K,ce|=K._bitflags}if((M&ce)!==M)continue}if(S)for(let W=0;W<A.spaceSearches.length;W++)V[W]=B;for(var N=0;N<Ce;++N){if(K=Fe[N],K===de){Se[N]=de;continue}if(Se[N]=H(A,K,!1,S),Se[N]===L){Se[N]=de;continue}if(S)for(let J=0;J<A.spaceSearches.length;J++){if(ie[J]>-1e3&&V[J]>B){var ae=(V[J]+ie[J])/4;ae>V[J]&&(V[J]=ae)}ie[J]>V[J]&&(V[J]=ie[J])}}if(S){for(let W=0;W<A.spaceSearches.length;W++)if(V[W]===B)continue e}else{var D=!1;for(let W=0;W<Ce;W++)if(Se[W]._score!==B){D=!0;break}if(!D)continue}var xe=new l(Ce);for(let W=0;W<Ce;W++)xe[W]=Se[W];if(S){var te=0;for(let W=0;W<A.spaceSearches.length;W++)te+=V[W]}else{var te=B;for(let J=0;J<Ce;J++){var Y=xe[J];if(Y._score>-1e3&&te>B){var ae=(te+Y._score)/4;ae>te&&(te=ae)}Y._score>te&&(te=Y._score)}}if(xe.obj=pe,xe._score=te,w?.scoreFn){if(te=w.scoreFn(xe),!te)continue;te=v(te),xe._score=te}te<x||me(xe)}}else for(var U=0;U<j;++U){var K=c[U];if(K&&(Ae(K)||(K=y(K)),(M&K._bitflags)===M)){var Y=H(A,K);Y!==L&&(Y._score<x||me(Y))}}if(T===0)return G;for(var Je=new Array(T),U=T-1;U>=0;--U)Je[U]=Ct.poll();return Je.total=T+R,Je},i=(f,c="<b>",w="</b>")=>{for(var A=typeof c=="function"?c:void 0,M=f.target,S=M.length,x=f.indexes,z="",T=0,R=0,j=!1,me=[],le=0;le<S;++le){var U=M[le];if(x[R]===le){if(++R,j||(j=!0,A?(me.push(z),z=""):z+=c),R===x.length){A?(z+=U,me.push(A(z,T++)),z="",me.push(M.substr(le+1))):z+=U+w+M.substr(le+1);break}}else j&&(j=!1,A?(me.push(A(z,T++)),z=""):z+=w);z+=U}return A?me:z},a=f=>{typeof f=="number"?f=""+f:typeof f!="string"&&(f="");var c=h(f);return u(f,{_targetLower:c._lower,_targetLowerCodes:c.lowerCodes,_bitflags:c.bitflags})},s=()=>{g.clear(),_.clear()};class o{get indexes(){return this._indexes.slice(0,this._indexes.len).sort((c,w)=>c-w)}set indexes(c){return this._indexes=c}highlight(c,w){return i(this,c,w)}get score(){return $(this._score)}set score(c){this._score=v(c)}}class l extends Array{get score(){return $(this._score)}set score(c){this._score=v(c)}}var u=(f,c)=>{const w=new o;return w.target=f,w.obj=c.obj??L,w._score=c._score??B,w._indexes=c._indexes??[],w._targetLower=c._targetLower??"",w._targetLowerCodes=c._targetLowerCodes??L,w._nextBeginningIndexes=c._nextBeginningIndexes??L,w._bitflags=c._bitflags??0,w},$=f=>f===B?0:f>1?f:Math.E**(((-f+1)**.04307-1)*-2),v=f=>f===0?B:f>1?f:1-Math.pow(Math.log(f)/-2+1,1/.04307),k=f=>{typeof f=="number"?f=""+f:typeof f!="string"&&(f=""),f=f.trim();var c=h(f),w=[];if(c.containsSpace){var A=f.split(/\s+/);A=[...new Set(A)];for(var M=0;M<A.length;M++)if(A[M]!==""){var S=h(A[M]);w.push({lowerCodes:S.lowerCodes,_lower:A[M].toLowerCase(),containsSpace:!1})}}return{lowerCodes:c.lowerCodes,_lower:c._lower,containsSpace:c.containsSpace,bitflags:c.bitflags,spaceSearches:w}},y=f=>{if(f.length>999)return a(f);var c=g.get(f);return c!==void 0||(c=a(f),g.set(f,c)),c},C=f=>{if(f.length>999)return k(f);var c=_.get(f);return c!==void 0||(c=k(f),_.set(f,c)),c},F=(f,c)=>{var w=[];w.total=f.length;var A=c?.limit||Ne;if(c?.key)for(var M=0;M<f.length;M++){var S=f[M],x=je(S,c.key);if(x!=L){Ae(x)||(x=y(x));var z=u(x.target,{_score:x._score,obj:S});if(w.push(z),w.length>=A)return w}}else if(c?.keys)for(var M=0;M<f.length;M++){for(var S=f[M],T=new l(c.keys.length),R=c.keys.length-1;R>=0;--R){var x=je(S,c.keys[R]);if(!x){T[R]=de;continue}Ae(x)||(x=y(x)),x._score=B,x._indexes.len=0,T[R]=x}if(T.obj=S,T._score=B,w.push(T),w.length>=A)return w}else for(var M=0;M<f.length;M++){var x=f[M];if(x!=L&&(Ae(x)||(x=y(x)),x._score=B,x._indexes.len=0,w.push(x),w.length>=A))return w}return w},H=(f,c,w=!1,A=!1)=>{if(w===!1&&f.containsSpace)return X(f,c,A);for(var M=f._lower,S=f.lowerCodes,x=S[0],z=c._targetLowerCodes,T=S.length,R=z.length,U=0,j=0,me=0;;){var le=x===z[j];if(le){if(O[me++]=j,++U,U===T)break;x=S[U]}if(++j,j>=R)return L}var U=0,pe=!1,K=0,Y=c._nextBeginningIndexes;Y===L&&(Y=c._nextBeginningIndexes=d(c.target)),j=O[0]===0?0:Y[O[0]-1];var Ye=0;if(j!==R)for(;;)if(j>=R){if(U<=0||(++Ye,Ye>200))break;--U;var Ce=E[--K];j=Y[Ce]}else{var le=S[U]===z[j];if(le){if(E[K++]=j,++U,U===T){pe=!0;break}++j}else j=Y[j]}var ce=T<=1?-1:c._targetLower.indexOf(M,O[0]),N=!!~ce,ae=N?ce===0||c._nextBeginningIndexes[ce-1]===ce:!1;if(N&&!ae){for(var D=0;D<Y.length;D=Y[D])if(!(D<=ce)){for(var xe=0;xe<T&&S[xe]===c._targetLowerCodes[D+xe];xe++);if(xe===T){ce=D,ae=!0;break}}}var te=W=>{for(var J=0,gs=0,Ue=1;Ue<T;++Ue)W[Ue]-W[Ue-1]!==1&&(J-=W[Ue],++gs);var Ac=W[T-1]-W[0]-(T-1);if(J-=(12+Ac)*gs,W[0]!==0&&(J-=W[0]*W[0]*.2),!pe)J*=1e3;else{for(var Dn=1,Ue=Y[0];Ue<R;Ue=Y[Ue])++Dn;Dn>24&&(J*=(Dn-24)*10)}return J-=(R-T)/2,N&&(J/=1+T*T*1),ae&&(J/=1+T*T*1),J-=(R-T)/2,J};if(pe)if(ae){for(var D=0;D<T;++D)O[D]=ce+D;var Je=O,ht=te(O)}else var Je=E,ht=te(E);else{if(N)for(var D=0;D<T;++D)O[D]=ce+D;var Je=O,ht=te(Je)}c._score=ht;for(var D=0;D<T;++D)c._indexes[D]=Je[D];c._indexes.len=T;const Ar=new o;return Ar.target=c.target,Ar._score=c._score,Ar._indexes=c._indexes,Ar},X=(f,c,w)=>{for(var A=new Set,M=0,S=L,x=0,z=f.spaceSearches,T=z.length,R=0,j=()=>{for(let ae=R-1;ae>=0;ae--)c._nextBeginningIndexes[q[ae*2+0]]=q[ae*2+1]},me=!1,N=0;N<T;++N){ie[N]=B;var le=z[N];if(S=H(le,c),w){if(S===L)continue;me=!0}else if(S===L)return j(),L;var U=N===T-1;if(!U){var pe=S._indexes,K=!0;for(let D=0;D<pe.len-1;D++)if(pe[D+1]-pe[D]!==1){K=!1;break}if(K){var Y=pe[pe.len-1]+1,Ye=c._nextBeginningIndexes[Y-1];for(let D=Y-1;D>=0&&Ye===c._nextBeginningIndexes[D];D--)c._nextBeginningIndexes[D]=Y,q[R*2+0]=D,q[R*2+1]=Ye,R++}}M+=S._score/T,ie[N]=S._score/T,S._indexes[0]<x&&(M-=(x-S._indexes[0])*2),x=S._indexes[0];for(var Ce=0;Ce<S._indexes.len;++Ce)A.add(S._indexes[Ce])}if(w&&!me)return L;j();var ce=H(f,c,!0);if(ce!==L&&ce._score>M){if(w)for(var N=0;N<T;++N)ie[N]=ce._score/T;return ce}w&&(S=c),S._score=M;var N=0;for(let ae of A)S._indexes[N++]=ae;return S._indexes.len=N,S},p=f=>f.replace(new RegExp("\\p{Script=Latin}+","gu"),c=>c.normalize("NFD")).replace(/[\u0300-\u036f]/g,""),h=f=>{f=p(f);for(var c=f.length,w=f.toLowerCase(),A=[],M=0,S=!1,x=0;x<c;++x){var z=A[x]=w.charCodeAt(x);if(z===32){S=!0;continue}var T=z>=97&&z<=122?z-97:z>=48&&z<=57?26:z<=127?30:31;M|=1<<T}return{lowerCodes:A,bitflags:M,containsSpace:S,_lower:w}},m=f=>{for(var c=f.length,w=[],A=0,M=!1,S=!1,x=0;x<c;++x){var z=f.charCodeAt(x),T=z>=65&&z<=90,R=T||z>=97&&z<=122||z>=48&&z<=57,j=T&&!M||!S||!R;M=T,S=R,j&&(w[A++]=x)}return w},d=f=>{f=p(f);for(var c=f.length,w=m(f),A=[],M=w[0],S=0,x=0;x<c;++x)M>x?A[x]=M:(M=w[++S],A[x]=M===void 0?c:M);return A},g=new Map,_=new Map,O=[],E=[],q=[],V=[],ie=[],Fe=[],Se=[],je=(f,c)=>{var w=f[c];if(w!==void 0)return w;if(typeof c=="function")return c(f);var A=c;Array.isArray(c)||(A=c.split("."));for(var M=A.length,S=-1;f&&++S<M;)f=f[A[S]];return f},Ae=f=>typeof f=="object"&&typeof f._bitflags=="number",Ne=1/0,B=-Ne,G=[];G.total=0;var L=null,de=a(""),he=f=>{var c=[],w=0,A={},M=S=>{for(var x=0,z=c[x],T=1;T<w;){var R=T+1;x=T,R<w&&c[R]._score<c[T]._score&&(x=R),c[x-1>>1]=c[x],T=1+(x<<1)}for(var j=x-1>>1;x>0&&z._score<c[j]._score;j=(x=j)-1>>1)c[x]=c[j];c[x]=z};return A.add=S=>{var x=w;c[w++]=S;for(var z=x-1>>1;x>0&&S._score<c[z]._score;z=(x=z)-1>>1)c[x]=c[z];c[x]=S},A.poll=S=>{if(w!==0){var x=c[0];return c[0]=c[--w],M(),x}},A.peek=S=>{if(w!==0)return c[0]},A.replaceTop=S=>{c[0]=S,M()},A},Ct=he();return{single:r,go:n,prepare:a,cleanup:s}})})(Sa);var wl=Sa.exports;const bn=Jo(wl);/**
|
|
166
|
+
* @license
|
|
167
|
+
* Copyright 2020 Google LLC
|
|
168
|
+
* SPDX-License-Identifier: BSD-3-Clause
|
|
169
|
+
*/const{I:xl}=Cs,Aa=()=>document.createComment(""),Ut=(e,t,r)=>{const n=e._$AA.parentNode,i=t===void 0?e._$AB:t._$AA;if(r===void 0){const a=n.insertBefore(Aa(),i),s=n.insertBefore(Aa(),i);r=new xl(a,s,e,e.options)}else{const a=r._$AB.nextSibling,s=r._$AM,o=s!==e;if(o){let l;r._$AQ?.(e),r._$AM=e,r._$AP!==void 0&&(l=e._$AU)!==s._$AU&&r._$AP(l)}if(a!==i||o){let l=r._$AA;for(;l!==a;){const u=l.nextSibling;n.insertBefore(l,i),l=u}}}return r},st=(e,t,r=e)=>(e._$AI(t,r),e),$l={},kl=(e,t=$l)=>e._$AH=t,_l=e=>e._$AH,yn=e=>{e._$AP?.(!1,!0);let t=e._$AA;const r=e._$AB.nextSibling;for(;t!==r;){const n=t.nextSibling;t.remove(),t=n}};/**
|
|
170
|
+
* @license
|
|
171
|
+
* Copyright 2017 Google LLC
|
|
172
|
+
* SPDX-License-Identifier: BSD-3-Clause
|
|
173
|
+
*/const Ca=(e,t,r)=>{const n=new Map;for(let i=t;i<=r;i++)n.set(e[i],i);return n},$t=Jr(class extends Qr{constructor(e){if(super(e),e.type!==Yr.CHILD)throw Error("repeat() can only be used in text expressions")}dt(e,t,r){let n;r===void 0?r=t:t!==void 0&&(n=t);const i=[],a=[];let s=0;for(const o of e)i[s]=n?n(o,s):s,a[s]=r(o,s),s++;return{values:a,keys:i}}render(e,t,r){return this.dt(e,t,r).values}update(e,[t,r,n]){const i=_l(e),{values:a,keys:s}=this.dt(t,r,n);if(!Array.isArray(i))return this.ut=s,a;const o=this.ut??=[],l=[];let u,$,v=0,k=i.length-1,y=0,C=a.length-1;for(;v<=k&&y<=C;)if(i[v]===null)v++;else if(i[k]===null)k--;else if(o[v]===s[y])l[y]=st(i[v],a[y]),v++,y++;else if(o[k]===s[C])l[C]=st(i[k],a[C]),k--,C--;else if(o[v]===s[C])l[C]=st(i[v],a[C]),Ut(e,l[C+1],i[v]),v++,C--;else if(o[k]===s[y])l[y]=st(i[k],a[y]),Ut(e,i[v],i[k]),k--,y++;else if(u===void 0&&(u=Ca(s,y,C),$=Ca(o,v,k)),u.has(o[v]))if(u.has(o[k])){const F=$.get(s[y]),H=F!==void 0?i[F]:null;if(H===null){const X=Ut(e,i[v]);st(X,a[y]),l[y]=X}else l[y]=st(H,a[y]),Ut(e,i[v],H),i[F]=null;y++}else yn(i[k]),k--;else yn(i[v]),v++;for(;y<=C;){const F=Ut(e,l[C+1]);st(F,a[y]),l[y++]=F}for(;v<=k;){const F=i[v++];F!==null&&yn(F)}return this.ut=s,kl(e,l),Oe}}),Sl=ee`
|
|
174
|
+
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 16 16" fill="currentColor" class="size-4">
|
|
175
|
+
<path fill-rule="evenodd" d="M2 4a2 2 0 0 1 2-2h8a2 2 0 0 1 2 2v8a2 2 0 0 1-2 2H4a2 2 0 0 1-2-2V4Zm4.78 1.97a.75.75 0 0 1 0 1.06L5.81 8l.97.97a.75.75 0 1 1-1.06 1.06l-1.5-1.5a.75.75 0 0 1 0-1.06l1.5-1.5a.75.75 0 0 1 1.06 0Zm2.44 1.06a.75.75 0 0 1 1.06-1.06l1.5 1.5a.75.75 0 0 1 0 1.06l-1.5 1.5a.75.75 0 1 1-1.06-1.06l.97-.97-.97-.97Z" clip-rule="evenodd" />
|
|
176
|
+
</svg>
|
|
177
|
+
`,Ma=ee`
|
|
178
|
+
<svg xmlns="http://www.w3.org/2000/svg" fill="none" viewBox="0 0 24 24" stroke-width="1.5" stroke="currentColor" class="size-6">
|
|
179
|
+
<path
|
|
180
|
+
stroke-linecap="round"
|
|
181
|
+
stroke-linejoin="round"
|
|
182
|
+
d="m21 21-5.197-5.197m0 0A7.5 7.5 0 1 0 5.196 5.196a7.5 7.5 0 0 0 10.607 10.607Z"
|
|
183
|
+
/>
|
|
184
|
+
</svg>
|
|
185
|
+
`,Al=ee`
|
|
186
|
+
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 16 16" fill="currentColor" class="size-4">
|
|
187
|
+
<path fill-rule="evenodd" d="M2 4a2 2 0 0 1 2-2h8a2 2 0 0 1 2 2v8a2 2 0 0 1-2 2H4a2 2 0 0 1-2-2V4Zm2.22 1.97a.75.75 0 0 0 0 1.06l.97.97-.97.97a.75.75 0 1 0 1.06 1.06l1.5-1.5a.75.75 0 0 0 0-1.06l-1.5-1.5a.75.75 0 0 0-1.06 0ZM8.75 8.5a.75.75 0 0 0 0 1.5h2.5a.75.75 0 0 0 0-1.5h-2.5Z" clip-rule="evenodd" />
|
|
188
|
+
</svg>
|
|
189
|
+
`;var Ea=Object.defineProperty,Cl=Object.getOwnPropertyDescriptor,Ta=e=>{throw TypeError(e)},Ml=(e,t,r)=>t in e?Ea(e,t,{enumerable:!0,configurable:!0,writable:!0,value:r}):e[t]=r,Ht=(e,t,r,n)=>{for(var i=n>1?void 0:n?Cl(t,r):t,a=e.length-1,s;a>=0;a--)(s=e[a])&&(i=(n?s(t,r,i):s(i))||i);return n&&i&&Ea(t,r,i),i},El=(e,t,r)=>Ml(e,t+"",r),wn=(e,t,r)=>t.has(e)||Ta("Cannot "+r),oe=(e,t,r)=>(wn(e,t,"read from private field"),t.get(e)),De=(e,t,r)=>t.has(e)?Ta("Cannot add the same private member more than once"):t instanceof WeakSet?t.add(e):t.set(e,r),Pa=(e,t,r,n)=>(wn(e,t,"write to private field"),t.set(e,r),r),_e=(e,t,r)=>(wn(e,t,"access private method"),r),pr,kt,fr,ge,Fa,za,Oa,xn,Ia,Ra,Da,Ba,gr,mr,_t,$n,vr,kn;let ot=class extends $e{constructor(){super(),De(this,ge),De(this,pr,new AbortController),De(this,kt,[]),De(this,fr,""),De(this,xn,e=>{(e.ctrlKey||e.metaKey)&&e.key==="k"?oe(this,gr).call(this,e):!this.openPicker&&e.key==="/"?oe(this,gr).call(this,e):e.key==="Escape"?oe(this,_t).call(this):e.key==="ArrowUp"?_e(this,ge,Da).call(this):e.key==="ArrowDown"&&_e(this,ge,Ra).call(this),(e.key==="ArrowUp"||e.key==="ArrowDown")&&this.updateComplete.then(()=>{_e(this,ge,Ia).call(this)}),e.key==="Enter"&&_e(this,ge,Ba).call(this)}),De(this,gr,(e=null)=>{e?.preventDefault(),e?.stopPropagation(),this.openPicker=!this.openPicker}),De(this,mr,()=>{this.renderRoot.querySelector("input")?.focus()}),De(this,_t,()=>{this.openPicker=!1,this.fileIndex=0,_e(this,ge,vr).call(this,"")}),De(this,$n,e=>{this.openPicker&&(_e(this,ge,vr).call(this,e.target.value),this.fileIndex=0)}),this.openPicker=!1,this.fileIndex=0}connectedCallback(){super.connectedCallback(),Pa(this,fr,document.body.style.overflow),window.addEventListener("keydown",oe(this,xn),{signal:oe(this,pr).signal})}disconnectedCallback(){super.disconnectedCallback(),bn.cleanup(),oe(this,pr).abort()}willUpdate(e){e.has("rootModel")&&(_e(this,ge,Oa).call(this),_e(this,ge,vr).call(this,""))}updated(e){e.has("openPicker")&&(this.openPicker?(document.body.style.overflow="hidden",oe(this,mr).call(this)):document.body.style.overflow=oe(this,fr))}open(){this.openPicker=!0}render(){return this.openPicker?b`
|
|
190
|
+
<div
|
|
191
|
+
id="backdrop"
|
|
192
|
+
@click="${oe(this,_t)}"
|
|
193
|
+
class="fixed left-0 top-0 z-50 flex h-full w-full justify-center bg-gray-950/50 backdrop-blur-lg"
|
|
194
|
+
>
|
|
195
|
+
<div
|
|
196
|
+
@click="${e=>e.stopPropagation()}"
|
|
197
|
+
role="dialog"
|
|
198
|
+
aria-labelledby="file-picker-label"
|
|
199
|
+
id="picker"
|
|
200
|
+
class="m-4 flex h-fit max-h-[33rem] w-full max-w-[40rem] flex-col rounded-lg bg-gray-200/60 p-4 backdrop-blur-lg md:w-1/2"
|
|
201
|
+
>
|
|
202
|
+
<div class="mb-3 flex items-center rounded bg-gray-200/60 p-2 text-gray-800 shadow-lg">
|
|
203
|
+
<div class="mx-2 flex items-center">${Ma}</div>
|
|
204
|
+
<label id="file-picker-label" for="file-picker-input" class="sr-only">Search for a file</label>
|
|
205
|
+
<input
|
|
206
|
+
autocomplete="off"
|
|
207
|
+
id="file-picker-input"
|
|
208
|
+
@input="${oe(this,$n)}"
|
|
209
|
+
type="search"
|
|
210
|
+
style="box-shadow: none"
|
|
211
|
+
class="mr-2 w-full border-0 border-transparent bg-transparent focus:shadow-none"
|
|
212
|
+
placeholder="Search for a file (Ctrl-K)"
|
|
213
|
+
aria-controls="files"
|
|
214
|
+
/>
|
|
215
|
+
</div>
|
|
216
|
+
${_e(this,ge,Fa).call(this)}
|
|
217
|
+
</div>
|
|
218
|
+
</div>
|
|
219
|
+
`:P}};pr=new WeakMap,kt=new WeakMap,fr=new WeakMap,ge=new WeakSet,Fa=function(){return b`
|
|
220
|
+
<ul
|
|
221
|
+
id="files"
|
|
222
|
+
tabindex="-1"
|
|
223
|
+
class="flex snap-y flex-col gap-2 overflow-auto"
|
|
224
|
+
role="listbox"
|
|
225
|
+
@focusout="${oe(this,mr)}"
|
|
226
|
+
aria-labelledby="file-picker-label"
|
|
227
|
+
>
|
|
228
|
+
${wt(this.filteredFiles.length===0,()=>b`<li class="text-gray-800">No files found</li>`)}
|
|
229
|
+
${$t(this.filteredFiles,e=>e.name,({name:e,file:t,template:r},n)=>{const i=_e(this,ge,kn).call(this,t);return b`
|
|
230
|
+
<li
|
|
231
|
+
class="group snap-start rounded bg-gray-200 text-gray-900 transition-shadow aria-selected:bg-primary-500 aria-selected:text-gray-50 aria-selected:shadow-lg"
|
|
232
|
+
role="option"
|
|
233
|
+
aria-selected="${n===this.fileIndex}"
|
|
234
|
+
>
|
|
235
|
+
<a
|
|
236
|
+
tabindex="${n===this.fileIndex?0:-1}"
|
|
237
|
+
@click="${oe(this,_t)}"
|
|
238
|
+
class="flex h-full flex-wrap items-center p-2 outline-none"
|
|
239
|
+
@mousemove="${()=>this.fileIndex=n}"
|
|
240
|
+
href="${xt(i,e)}"
|
|
241
|
+
>
|
|
242
|
+
<span class="inline-flex" title="File with ${i}s">${_e(this,ge,za).call(this,i)}</span>
|
|
243
|
+
<span class="ms-1">${t.result?.name}</span>
|
|
244
|
+
<span class="mx-2">•</span>
|
|
245
|
+
<span class="text-gray-400 group-aria-selected:text-gray-200">${r??e}</span>
|
|
246
|
+
</a>
|
|
247
|
+
</li>
|
|
248
|
+
`})}
|
|
249
|
+
</ul>
|
|
250
|
+
`},za=function(e){return e===ye.mutant?Sl:Al},Oa=function(){if(!this.rootModel)return;Pa(this,kt,[]);const e=(t,r=null,n)=>{if(t){if(t.file&&t.name!==n){const i=r?`${r}/${t.name}`:t.name;oe(this,kt).push({name:i,file:t.file,prepared:bn.prepare(i)})}t.childResults.forEach(i=>{r!==n&&r&&t.name?e(i,`${r}/${t.name}`,n):(r===n||!r)&&t.name!==n?e(i,t.name,n):e(i,null,n)})}};e(this.rootModel.systemUnderTestMetrics,null,"All files"),e(this.rootModel.testMetrics,null,"All tests")},xn=new WeakMap,Ia=function(){this.renderRoot.querySelector('[aria-selected="true"] a')?.scrollIntoView({block:"nearest"})},Ra=function(){if(this.fileIndex===this.filteredFiles.length-1){this.fileIndex=0;return}this.fileIndex=Math.min(this.filteredFiles.length-1,this.fileIndex+1)},Da=function(){if(this.fileIndex===0){this.fileIndex=this.filteredFiles.length-1;return}this.fileIndex=Math.max(0,this.fileIndex-1)},Ba=function(){if(this.filteredFiles.length===0)return;const e=this.filteredFiles[this.fileIndex];window.location.href=xt(_e(this,ge,kn).call(this,e.file),e.name),oe(this,_t).call(this)},gr=new WeakMap,mr=new WeakMap,_t=new WeakMap,$n=new WeakMap,vr=function(e){e?this.filteredFiles=bn.go(e,oe(this,kt),{key:"prepared",threshold:.3,limit:500}).map(t=>({file:t.obj.file,name:t.obj.name,template:t.highlight(r=>b`<mark class="bg-inherit text-primary-500 group-aria-selected:text-primary-50 group-aria-selected:underline">${r}</mark>`)})):this.filteredFiles=oe(this,kt)},kn=function(e){return e instanceof di?ye.test:ye.mutant},El(ot,"styles",[ue]),Ht([I({attribute:!1})],ot.prototype,"rootModel",2),Ht([be()],ot.prototype,"openPicker",2),Ht([be()],ot.prototype,"filteredFiles",2),Ht([be()],ot.prototype,"fileIndex",2),ot=Ht([se("mte-file-picker")],ot);var La=Object.defineProperty,Tl=Object.getOwnPropertyDescriptor,ja=e=>{throw TypeError(e)},Pl=(e,t,r)=>t in e?La(e,t,{enumerable:!0,configurable:!0,writable:!0,value:r}):e[t]=r,_n=(e,t,r,n)=>{for(var i=n>1?void 0:n?Tl(t,r):t,a=e.length-1,s;a>=0;a--)(s=e[a])&&(i=(n?s(t,r,i):s(i))||i);return n&&i&&La(t,r,i),i},Fl=(e,t,r)=>Pl(e,t+"",r),zl=(e,t,r)=>t.has(e)||ja("Cannot "+r),Ol=(e,t,r)=>t.has(e)?ja("Cannot add the same private member more than once"):t instanceof WeakSet?t.add(e):t.set(e,r),lt=(e,t,r)=>(zl(e,t,"access private method"),r),Be,Na,Sn,An,Ua,Ha;let Vt=class extends $e{constructor(){super(...arguments),Ol(this,Be)}get rootName(){switch(this.view){case ye.mutant:return"All files";case ye.test:return"All tests"}}render(){return b`<nav class="my-4 flex rounded-md border border-primary-600 bg-primary-100 p-3 text-gray-700" aria-label="Breadcrumb">
|
|
251
|
+
<ol class="inline-flex items-center">
|
|
252
|
+
${this.path&&this.path.length>0?lt(this,Be,An).call(this,this.rootName,[]):lt(this,Be,Sn).call(this,this.rootName)}
|
|
253
|
+
${lt(this,Be,Na).call(this)}
|
|
254
|
+
</ol>
|
|
255
|
+
${lt(this,Be,Ua).call(this)}
|
|
256
|
+
</nav> `}};Be=new WeakSet,Na=function(){if(this.path){const e=this.path;return $t(e,t=>t,(t,r)=>r===e.length-1?lt(this,Be,Sn).call(this,t):lt(this,Be,An).call(this,t,e.slice(0,r+1)))}},Sn=function(e){return b`<li aria-current="page">
|
|
257
|
+
<span class="ml-1 text-sm font-medium text-gray-800 md:ml-2">${e}</span>
|
|
258
|
+
</li> `},An=function(e,t){return b`<li class="after:text-gray-800 after:content-['/'] md:after:pl-1">
|
|
259
|
+
<a
|
|
260
|
+
href="${xt(this.view,...t)}"
|
|
261
|
+
class="ml-1 text-sm font-medium text-primary-800 underline hover:text-gray-900 hover:underline md:ml-2"
|
|
262
|
+
>${e}</a
|
|
263
|
+
>
|
|
264
|
+
</li>`},Ua=function(){return b`
|
|
265
|
+
<button @click="${()=>lt(this,Be,Ha).call(this)}" class="ml-auto" title="Open file picker (Ctrl-K)">${Ma}</button>
|
|
266
|
+
`},Ha=function(){this.dispatchEvent(Ee("mte-file-picker-open",void 0))},Fl(Vt,"styles",[ue]),_n([I({type:Array,attribute:!1})],Vt.prototype,"path",2),_n([I()],Vt.prototype,"view",2),Vt=_n([se("mte-breadcrumb")],Vt);const Il=".step-button{align-items:center;border-radius:.375rem;display:inline-flex;margin-right:.5rem;--tw-bg-opacity:1;background-color:rgb(var(--mut-primary-600,2 132 199)/var(--tw-bg-opacity,1));padding:.25rem;text-align:center;--tw-text-opacity:1;color:rgb(var(--mut-white,255 255 255)/var(--tw-text-opacity,1))}.step-button:hover{--tw-bg-opacity:1;background-color:rgb(var(--mut-primary-700,3 105 161)/var(--tw-bg-opacity,1))}.step-button:focus{outline:2px solid #0000;outline-offset:2px;--tw-ring-offset-shadow:var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow:var(--tw-ring-inset) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow,0 0 #0000);--tw-ring-opacity:1;--tw-ring-color:rgb(var(--mut-primary-500,14 165 233)/var(--tw-ring-opacity,1))}";var Va=Object.defineProperty,Rl=Object.getOwnPropertyDescriptor,Dl=(e,t,r)=>t in e?Va(e,t,{enumerable:!0,configurable:!0,writable:!0,value:r}):e[t]=r,Ka=(e,t,r,n)=>{for(var i=n>1?void 0:n?Rl(t,r):t,a=e.length-1,s;a>=0;a--)(s=e[a])&&(i=(n?s(t,r,i):s(i))||i);return n&&i&&Va(t,r,i),i},Bl=(e,t,r)=>Dl(e,t+"",r);let br=class extends Ie{updated(e){e.has("filters")&&this.dispatchFiltersChangedEvent()}checkboxChanged(e,t){e.enabled=t,this.dispatchFiltersChangedEvent()}dispatchFiltersChangedEvent(){this.dispatchEvent(Ee("filters-changed",this.filters.filter(({enabled:e})=>e).map(({status:e})=>e)))}next=e=>{e.stopPropagation(),this.dispatchEvent(Ee("next",void 0,{bubbles:!0,composed:!0}))};previous=e=>{e.stopPropagation(),this.dispatchEvent(Ee("previous",void 0,{bubbles:!0,composed:!0}))};render(){return b`
|
|
267
|
+
<div class="sticky top-offset z-10 flex flex-row bg-white py-6">
|
|
268
|
+
<div class="mr-3">
|
|
269
|
+
<button title="Previous" @click=${this.previous} type="button" class="step-button">
|
|
270
|
+
<svg aria-hidden="true" class="h-4 w-4 rotate-180" fill="white" viewBox="0 0 20 20" xmlns="http://www.w3.org/2000/svg">
|
|
271
|
+
<path
|
|
272
|
+
fill-rule="evenodd"
|
|
273
|
+
d="M10.293 3.293a1 1 0 011.414 0l6 6a1 1 0 010 1.414l-6 6a1 1 0 01-1.414-1.414L14.586 11H3a1 1 0 110-2h11.586l-4.293-4.293a1 1 0 010-1.414z"
|
|
274
|
+
clip-rule="evenodd"
|
|
275
|
+
></path>
|
|
276
|
+
</svg>
|
|
277
|
+
<span class="sr-only">Select previous mutant</span>
|
|
278
|
+
</button>
|
|
279
|
+
<button title="Next" @click=${this.next} type="button" class="step-button">
|
|
280
|
+
<svg aria-hidden="true" class="h-4 w-4" fill="white" viewBox="0 0 20 20" xmlns="http://www.w3.org/2000/svg">
|
|
281
|
+
<path
|
|
282
|
+
fill-rule="evenodd"
|
|
283
|
+
d="M10.293 3.293a1 1 0 011.414 0l6 6a1 1 0 010 1.414l-6 6a1 1 0 01-1.414-1.414L14.586 11H3a1 1 0 110-2h11.586l-4.293-4.293a1 1 0 010-1.414z"
|
|
284
|
+
clip-rule="evenodd"
|
|
285
|
+
></path>
|
|
286
|
+
</svg>
|
|
287
|
+
<span class="sr-only">Select next mutant</span>
|
|
288
|
+
</button>
|
|
289
|
+
</div>
|
|
290
|
+
|
|
291
|
+
${wt(this.filters?.length,$t(this.filters,e=>e.status,e=>b`
|
|
292
|
+
<div class="mr-4 flex items-center" data-status="${e.status}">
|
|
293
|
+
<input
|
|
294
|
+
?checked="${e.enabled}"
|
|
295
|
+
id="filter-${e.status}"
|
|
296
|
+
aria-describedby="status-description"
|
|
297
|
+
type="checkbox"
|
|
298
|
+
value="${e.status}"
|
|
299
|
+
@input="${t=>this.checkboxChanged(e,t.target.checked)}"
|
|
300
|
+
class="h-5 w-5 rounded border-gray-300 bg-gray-100 text-primary-on !ring-offset-gray-200 focus:outline-none focus:ring-2 focus:ring-primary-500"
|
|
301
|
+
/>
|
|
302
|
+
|
|
303
|
+
<label
|
|
304
|
+
for="filter-${e.status}"
|
|
305
|
+
class="${this.bgForContext(e.context)} mx-2 rounded px-2.5 py-0.5 text-sm font-medium hover:cursor-pointer"
|
|
306
|
+
>
|
|
307
|
+
${e.label} (${e.count})
|
|
308
|
+
</label>
|
|
309
|
+
</div>
|
|
310
|
+
`))}
|
|
311
|
+
</div>
|
|
312
|
+
`}bgForContext(e){switch(e){case"success":return"bg-green-100 text-green-800";case"warning":return"bg-yellow-100 text-yellow-800";case"danger":return"bg-red-100 text-red-800";case"caution":return"bg-orange-100 text-orange-800";default:return"bg-gray-100 text-gray-800"}}};Bl(br,"styles",[ue,ve(Il)]),Ka([I({type:Array})],br.prototype,"filters",2),br=Ka([se("mte-state-filter")],br);const Ll='#darkTheme{position:absolute;right:100vw}#darkTheme+label{--i:0;--j:calc(1 - var(--i));display:grid;grid-gap:.15em .06em;background:hsl(199,98%,calc(var(--j)*48%));border-radius:.75em;color:#0000;cursor:pointer;height:1.5em;overflow:hidden;padding:.15em;transition:.3s;-webkit-user-select:none;user-select:none}#darkTheme+label:after,#darkTheme+label:before{content:"";height:1.2em;transition:inherit;width:1.2em}#darkTheme+label:before{background:#ff0;transform:translate(calc(var(--i)*(100% + .06em))) scale(calc(1 - var(--i)*.8));transform-origin:20% 20%;--poly:polygon(44.133707561% 12.9616872277%,50% 0%,55.866292439% 12.9616872277%,59.7057141913% 13.7777815142%,63.4387981079% 14.9907340064%,67.0246437402% 16.5872553429%,79.3892626146% 9.5491502813%,76.5165042945% 23.4834957055%,79.1429735546% 26.4004853356%,81.450146298% 29.5760361869%,83.4127446571% 32.9753562598%,97.5528258148% 34.5491502813%,87.0383127723% 44.133707561%,87.4486075533% 48.0374016409%,87.4486075533% 51.9625983591%,87.0383127723% 55.866292439%,97.5528258148% 65.4508497187%,83.4127446571% 67.0246437402%,81.450146298% 70.4239638131%,79.1429735546% 73.5995146644%,76.5165042945% 76.5165042945%,79.3892626146% 90.4508497187%,67.0246437402% 83.4127446571%,63.4387981079% 85.0092659936%,59.7057141913% 86.2222184858%,55.866292439% 87.0383127723%,50% 100%,44.133707561% 87.0383127723%,40.2942858087% 86.2222184858%,36.561201892% 85.0092659936%,32.9753562598% 83.4127446571%,20.6107373854% 90.4508497187%,23.4834957055% 76.5165042945%,20.8570264454% 73.5995146644%,18.5498537021% 70.4239638131%,16.587255343% 67.0246437402%,2.4471741856% 65.4508497188%,12.9616872286% 55.8662924391%,12.5513924487% 51.9625983594%,12.5513924508% 48.0374016414%,12.961687236% 44.1337075622%,2.4471742159% 34.5491502859%,16.587255404% 32.9753562694%,18.5498538164% 29.5760362054%,20.8570266557% 26.4004853707%,23.4834960862% 23.4834957706%,20.6107385856% 9.5491504949%,32.97535832% 16.5872557238%,36.5612054098% 14.9907346728%,40.2942917387% 13.7777826649%);clip-path:var(--poly)}#darkTheme+label:after{background:radial-gradient(circle at 19% 19%,#0000 41%,#fff 43%);border-radius:50%;grid-column:2;transform:translatey(calc(var(--i)*(-130% - .15em)))}#darkTheme:checked+label{--i:1}.check-box-container{width:2.9em}';var Wa=Object.defineProperty,jl=Object.getOwnPropertyDescriptor,Nl=(e,t,r)=>t in e?Wa(e,t,{enumerable:!0,configurable:!0,writable:!0,value:r}):e[t]=r,Za=(e,t,r,n)=>{for(var i=n>1?void 0:n?jl(t,r):t,a=e.length-1,s;a>=0;a--)(s=e[a])&&(i=(n?s(t,r,i):s(i))||i);return n&&i&&Wa(t,r,i),i},Ul=(e,t,r)=>Nl(e,t+"",r);let yr=class extends $e{dispatchThemeChangedEvent=t=>{const r=t.target.checked;this.dispatchEvent(Ee("theme-switch",r?"dark":"light"))};render(){return b`
|
|
313
|
+
<div class="check-box-container" @click="${t=>t.stopPropagation()}">
|
|
314
|
+
<input type="checkbox" @click="${this.dispatchThemeChangedEvent}" ?checked="${this.theme==="dark"}" id="darkTheme" />
|
|
315
|
+
<label for="darkTheme">Dark</label>
|
|
316
|
+
</div>
|
|
317
|
+
`}};Ul(yr,"styles",[ue,ve(Ll)]),Za([I()],yr.prototype,"theme",2),yr=Za([se("mte-theme-switch")],yr);const qa=({hasDetail:e,mode:t},r)=>b`<mte-drawer
|
|
318
|
+
class="container fixed bottom-0 z-10 rounded-t-3xl bg-gray-200/60 shadow-xl backdrop-blur-lg motion-safe:transition-[height,max-width] motion-safe:duration-200"
|
|
319
|
+
?hasDetail=${e}
|
|
320
|
+
.mode="${t}"
|
|
321
|
+
>
|
|
322
|
+
${r}
|
|
323
|
+
</mte-drawer>`;var Ga=Object.defineProperty,Hl=Object.getOwnPropertyDescriptor,Vl=(e,t,r)=>t in e?Ga(e,t,{enumerable:!0,configurable:!0,writable:!0,value:r}):e[t]=r,Cn=(e,t,r,n)=>{for(var i=n>1?void 0:n?Hl(t,r):t,a=e.length-1,s;a>=0;a--)(s=e[a])&&(i=(n?s(t,r,i):s(i))||i);return n&&i&&Ga(t,r,i),i},Kl=(e,t,r)=>Vl(e,t+"",r);const Ya=e=>`${e.name}${e.sourceFile&&e.location?` (${aa(e)})`:""}`,Ja=e=>b`<span class="whitespace-pre-wrap">${e}</span>`;let Kt=class extends Ie{constructor(){super(),this.mode="closed"}render(){return qa({hasDetail:!!(this.mutant?.killedByTests?.length||this.mutant?.coveredByTests?.length||this.mutant?.statusReason),mode:this.mode},Lt(this.mutant,e=>b`
|
|
324
|
+
<span class="align-middle text-lg" slot="header"
|
|
325
|
+
>${na(e.status)} ${e.mutatorName} ${e.status}
|
|
326
|
+
(${e.location.start.line}:${e.location.start.column})</span
|
|
327
|
+
>
|
|
328
|
+
<span slot="summary">${this.renderSummary()}</span>
|
|
329
|
+
<span slot="detail" class="block">${this.renderDetail()}</span>
|
|
330
|
+
`))}renderSummary(){return Zi(b`${this.mutant?.killedByTests?.[0]?it(b`${Q("🎯","killed")} Killed by:
|
|
331
|
+
${this.mutant.killedByTests?.[0].name}${this.mutant.killedByTests.length>1?`(and ${this.mutant.killedByTests.length-1} more)`:""}`):P}
|
|
332
|
+
${wt(this.mutant?.static,it(b`${Q("🗿","static")} Static mutant`))}
|
|
333
|
+
${Lt(this.mutant?.coveredByTests,e=>it(b`${Q("☂️","umbrella")} Covered by ${e.length}
|
|
334
|
+
test${ia(e)}${this.mutant?.status==="Survived"?" (yet still survived)":""}`))}
|
|
335
|
+
${wt(this.mutant?.statusReason?.trim(),it(b`${Q("🕵️","spy")} ${Ja(this.mutant.statusReason)}`,`Reason for the ${this.mutant.status} status`))}
|
|
336
|
+
${Lt(this.mutant?.description,e=>it(b`${Q("📖","book")} ${Ja(e)}`))}`)}renderDetail(){return b`<ul class="mb-6 mr-2">
|
|
337
|
+
${Ke(this.mutant?.killedByTests,e=>sr("This mutant was killed by this test",b`${Q("🎯","killed")} ${Ya(e)}`))}
|
|
338
|
+
${Ke(this.mutant?.coveredByTests?.filter(e=>!this.mutant?.killedByTests?.includes(e)),e=>sr("This mutant was covered by this test",b`${Q("☂️","umbrella")} ${Ya(e)}`))}
|
|
339
|
+
</ul>`}};Kl(Kt,"styles",[ue]),Cn([I({attribute:!1})],Kt.prototype,"mutant",2),Cn([I({reflect:!0})],Kt.prototype,"mode",2),Kt=Cn([se("mte-drawer-mutant")],Kt);const Wl="main{padding-bottom:var(--mte-drawer-height-half-open)}";var Qa=Object.defineProperty,Zl=Object.getOwnPropertyDescriptor,ql=(e,t,r)=>t in e?Qa(e,t,{enumerable:!0,configurable:!0,writable:!0,value:r}):e[t]=r,St=(e,t,r,n)=>{for(var i=n>1?void 0:n?Zl(t,r):t,a=e.length-1,s;a>=0;a--)(s=e[a])&&(i=(n?s(t,r,i):s(i))||i);return n&&i&&Qa(t,r,i),i},Gl=(e,t,r)=>ql(e,t+"",r);let Ze=class extends Ie{constructor(){super(),this.drawerMode="closed"}handleClick=()=>{this.drawerMode="closed"};handleMutantSelected=e=>{this.selectedMutant=e.detail.mutant,this.drawerMode=e.detail.selected?"half":"closed"};updated(e){e.has("result")&&!this.result.file&&(this.drawerMode="closed")}render(){return b`
|
|
340
|
+
<main @click="${this.handleClick}">
|
|
341
|
+
<mte-metrics-table .columns="${Yl}" .currentPath="${this.path}" .thresholds="${this.thresholds}" .model="${this.result}">
|
|
342
|
+
</mte-metrics-table>
|
|
343
|
+
${this.result.file?b`<mte-file @mutant-selected="${this.handleMutantSelected}" .model="${this.result.file}"></mte-file>`:P}
|
|
344
|
+
</main>
|
|
345
|
+
<mte-drawer-mutant .mode="${this.drawerMode}" .mutant="${this.selectedMutant}"></mte-drawer-mutant>
|
|
346
|
+
`}};Gl(Ze,"styles",[ve(Wl),ue]),St([I()],Ze.prototype,"drawerMode",2),St([I({attribute:!1})],Ze.prototype,"selectedMutant",2),St([I({attribute:!1})],Ze.prototype,"result",2),St([I({attribute:!1,reflect:!1})],Ze.prototype,"thresholds",2),St([I({attribute:!1,reflect:!1})],Ze.prototype,"path",2),Ze=St([se("mte-mutant-view")],Ze);const Yl=[{key:"mutationScore",label:"Of total",tooltip:"The percentage of mutants that were detected. The higher, the better!",category:"percentage",group:"Mutation score"},{key:"mutationScoreBasedOnCoveredCode",label:"Of covered",tooltip:"Mutation score based on only the code covered by tests",category:"percentage",group:"Mutation score"},{key:"killed",label:"Killed",tooltip:"At least one test failed while these mutants were active. This is what you want!",category:"number"},{key:"survived",label:"Survived",tooltip:"All tests passed while these mutants were active. You're missing a test for them.",category:"number"},{key:"timeout",label:"Timeout",tooltip:"Running the tests while these mutants were active resulted in a timeout. For example, an infinite loop.",category:"number"},{key:"noCoverage",label:"No coverage",tooltip:"These mutants aren't covered by one of your tests and survived as a result.",category:"number"},{key:"ignored",label:"Ignored",tooltip:"These mutants weren't tested because they are ignored. Either by user action, or for another reason.",category:"number"},{key:"runtimeErrors",label:"Runtime errors",tooltip:"Running tests when these mutants are active resulted in an error (rather than a failed test). For example: an out of memory error.",category:"number"},{key:"compileErrors",label:"Compile errors",tooltip:"Mutants that caused a compile error.",category:"number"},{key:"totalDetected",label:"Detected",tooltip:"The number of mutants detected by your tests (killed + timeout).",category:"number",width:"large",isBold:!0},{key:"totalUndetected",label:"Undetected",tooltip:"The number of mutants that are not detected by your tests (survived + no coverage).",category:"number",width:"large",isBold:!0},{key:"totalMutants",label:"Total",tooltip:"All mutants (except runtimeErrors + compileErrors)",category:"number",width:"large",isBold:!0}],Jl="main{padding-bottom:var(--mte-drawer-height-half-open)}";var Xa=Object.defineProperty,Ql=Object.getOwnPropertyDescriptor,Xl=(e,t,r)=>t in e?Xa(e,t,{enumerable:!0,configurable:!0,writable:!0,value:r}):e[t]=r,Wt=(e,t,r,n)=>{for(var i=n>1?void 0:n?Ql(t,r):t,a=e.length-1,s;a>=0;a--)(s=e[a])&&(i=(n?s(t,r,i):s(i))||i);return n&&i&&Xa(t,r,i),i},ec=(e,t,r)=>Xl(e,t+"",r);let ct=class extends Ie{constructor(){super(),this.drawerMode="closed"}handleClick=()=>{this.drawerMode="closed"};handleTestSelected=e=>{this.selectedTest=e.detail.test,this.drawerMode=e.detail.selected?"half":"closed"};updated(e){e.has("result")&&!this.result.file&&(this.drawerMode="closed")}render(){return b`
|
|
347
|
+
<main @click="${this.handleClick}">
|
|
348
|
+
<mte-metrics-table .columns="${tc}" .currentPath="${this.path}" .model="${this.result}"> </mte-metrics-table>
|
|
349
|
+
${this.result.file?b`<mte-test-file @test-selected="${this.handleTestSelected}" .model="${this.result.file}"></mte-test-file>`:P}
|
|
350
|
+
</main>
|
|
351
|
+
<mte-drawer-test .mode="${this.drawerMode}" .test="${this.selectedTest}"></mte-drawer-test>
|
|
352
|
+
`}};ec(ct,"styles",[ve(Jl),ue]),Wt([I()],ct.prototype,"drawerMode",2),Wt([I({attribute:!1})],ct.prototype,"result",2),Wt([I({attribute:!1,reflect:!1})],ct.prototype,"path",2),Wt([I({attribute:!1})],ct.prototype,"selectedTest",2),ct=Wt([se("mte-test-view")],ct);const tc=[{key:"killing",label:"Killing",tooltip:"These tests killed at least one mutant",width:"normal",category:"number"},{key:"covering",label:"Covering",tooltip:"These tests are covering at least one mutant, but not killing any of them.",width:"normal",category:"number"},{key:"notCovering",label:"Not Covering",tooltip:"These tests were not covering a mutant (and thus not killing any of them).",width:"normal",category:"number"},{key:"total",label:"Total tests",width:"large",category:"number",isBold:!0}];var es=Object.defineProperty,rc=Object.getOwnPropertyDescriptor,nc=(e,t,r)=>t in e?es(e,t,{enumerable:!0,configurable:!0,writable:!0,value:r}):e[t]=r,Zt=(e,t,r,n)=>{for(var i=n>1?void 0:n?rc(t,r):t,a=e.length-1,s;a>=0;a--)(s=e[a])&&(i=(n?s(t,r,i):s(i))||i);return n&&i&&es(t,r,i),i},ic=(e,t,r)=>nc(e,t+"",r);let ut=class extends Ie{constructor(){super(),this.currentPath=[],this.thresholds={high:80,low:60}}hasMultipleColspan=!1;willUpdate(e){e.has("columns")&&(this.hasMultipleColspan=this.columns.some(t=>t.category==="percentage"))}render(){return this.model?b`<div class="overflow-x-auto rounded-md border border-gray-200">
|
|
353
|
+
<table class="w-full table-auto text-left text-sm">${this.renderTableHeadRow()}${this.renderTableBody(this.model)} </table>
|
|
354
|
+
</div>`:P}renderTableHeadRow(){const e=this.columns.filter(r=>r.group!=="Mutation score"),t=this.columns.filter(r=>r.group==="Mutation score");return b`<thead class="border-b border-gray-200 text-center text-sm">
|
|
355
|
+
<tr>
|
|
356
|
+
<th rowspan="2" scope="col" class="px-4 py-4">
|
|
357
|
+
<div class="flex items-center justify-around">
|
|
358
|
+
<span>File / Directory</span
|
|
359
|
+
><a
|
|
360
|
+
href="https://stryker-mutator.io/docs/mutation-testing-elements/mutant-states-and-metrics"
|
|
361
|
+
target="_blank"
|
|
362
|
+
class="info-icon float-right"
|
|
363
|
+
title="What does this all mean?"
|
|
364
|
+
>${Q("ℹ","info icon")}</a
|
|
365
|
+
>
|
|
366
|
+
</div>
|
|
367
|
+
</th>
|
|
368
|
+
${t.length>0?b`<th colspan="4" class="px-2 even:bg-gray-100">Mutation Score</th>`:""}
|
|
369
|
+
${$t(e,r=>r.key,r=>this.renderTableHead(r))}
|
|
370
|
+
</tr>
|
|
371
|
+
<tr>
|
|
372
|
+
${$t(t,r=>r.key,r=>this.renderTableHead(r))}
|
|
373
|
+
</tr>
|
|
374
|
+
</thead>`}renderTableHead(e){const t=`tooltip-${e.key.toString()}`,r=e.tooltip?b`<mte-tooltip title="${e.tooltip}" id="${t}">${e.label}</mte-tooltip>`:b`<span id="${t}">${e.label}</span>`;return e.group?b` <th colspan="2" class="bg-gray-200 px-2"> ${r} </th>`:b`<th rowspan="2" class="w-24 px-2 even:bg-gray-100 2xl:w-28">
|
|
375
|
+
<div class="inline-block">${r}</div>
|
|
376
|
+
</th>`}renderTableBody(e){const t=()=>e.file?P:Ke(e.childResults,r=>{const n=[r.name];for(;!r.file&&r.childResults.length===1;)r=r.childResults[0],n.push(r.name);return this.renderRow(n.join("/"),r,...this.currentPath,...n)});return b`<tbody class="divide-y divide-gray-200">${this.renderRow(e.name,e)} ${t()}</tbody>`}renderRow(e,t,...r){return b`<tr title="${t.name}" class="group hover:bg-gray-200">
|
|
377
|
+
<td class="font-semibold">
|
|
378
|
+
<div class="flex items-center justify-start">
|
|
379
|
+
<mte-file-icon file-name="${t.name}" ?file="${t.file}" class="mx-1"></mte-file-icon> ${r.length>0?b`<a class="mr-auto inline-block w-full py-4 pr-2 hover:text-primary-on hover:underline" href="${xt(...r)}"
|
|
380
|
+
>${e}</a
|
|
381
|
+
>`:b`<span class="py-4">${t.name}</span>`}
|
|
382
|
+
</div>
|
|
383
|
+
</td>
|
|
384
|
+
${Ke(this.columns,n=>this.renderCell(n,t.metrics))}
|
|
385
|
+
</tr>`}renderCell(e,t){const r=t[e.key],n=this.hasMultipleColspan?"odd:bg-gray-100":"even:bg-gray-100";if(e.category==="percentage"){const i=!isNaN(r),a=this.determineBgColoringClass(r),s=this.determineTextColoringClass(r),o=r.toFixed(2),l=`width: ${r}%`;return b`<td class="bg-gray-100 px-4 py-4 group-hover:bg-gray-200">
|
|
386
|
+
${i?b`<div class="h-3 w-full min-w-[24px] rounded-full bg-gray-300">
|
|
387
|
+
<div
|
|
388
|
+
class="${a} h-3 rounded-full pl-1 transition-all"
|
|
389
|
+
role="progressbar"
|
|
390
|
+
aria-valuenow="${o}"
|
|
391
|
+
aria-valuemin="0"
|
|
392
|
+
aria-valuemax="100"
|
|
393
|
+
aria-describedby="tooltip-mutationScore"
|
|
394
|
+
title="${e.label}"
|
|
395
|
+
style="${l}"
|
|
396
|
+
></div>
|
|
397
|
+
</div>`:b` <span class="text-light-muted font-bold">N/A</span> `}
|
|
398
|
+
</td>
|
|
399
|
+
<td class="${s} ${n} w-12 pr-2 text-center font-bold group-hover:bg-gray-200"
|
|
400
|
+
>${i?b`<span class="transition-colors">${o}</span>`:P}</td
|
|
401
|
+
>`}return b`<td
|
|
402
|
+
class="${Xr({"font-bold":e.isBold??!1,[n]:!0})} py-4 text-center group-hover:bg-gray-200"
|
|
403
|
+
aria-describedby="${`tooltip-${e.key.toString()}`}"
|
|
404
|
+
>${r}</td
|
|
405
|
+
>`}determineBgColoringClass(e){return!isNaN(e)&&this.thresholds?e<this.thresholds.low?"bg-red-600 text-gray-200":e<this.thresholds.high?"bg-yellow-400":"bg-green-600 text-gray-200":"bg-blue-600"}determineTextColoringClass(e){return!isNaN(e)&&this.thresholds?e<this.thresholds.low?"text-red-700":e<this.thresholds.high?"text-yellow-600":"text-green-700":""}};ic(ut,"styles",[ue]),Zt([I({attribute:!1})],ut.prototype,"model",2),Zt([I({type:Array})],ut.prototype,"currentPath",2),Zt([I({type:Array})],ut.prototype,"columns",2),Zt([I({attribute:!1})],ut.prototype,"thresholds",2),ut=Zt([se("mte-metrics-table")],ut);const ac='#report-code-block{background:var(--prism-background);border:1px solid var(--prism-border);overflow-x:auto;overflow-y:visible}.line-numbers{counter-reset:mte-line-number}.line .line-number{color:var(--mut-line-number);counter-increment:mte-line-number;padding:0 10px 0 15px;text-align:right}.line .line-number:before{content:counter(mte-line-number)}.line-marker:before{content:" ";padding:0 5px}svg.test-dot.Killing{fill:#15803d}svg.test-dot.Covering{fill:#fbbf24}svg.test-dot.NotCovering{fill:#f97316}.test-dot{cursor:pointer;margin-left:.125rem;margin-right:.125rem}';var ts=Object.defineProperty,sc=Object.getOwnPropertyDescriptor,rs=e=>{throw TypeError(e)},oc=(e,t,r)=>t in e?ts(e,t,{enumerable:!0,configurable:!0,writable:!0,value:r}):e[t]=r,dt=(e,t,r,n)=>{for(var i=n>1?void 0:n?sc(t,r):t,a=e.length-1,s;a>=0;a--)(s=e[a])&&(i=(n?s(t,r,i):s(i))||i);return n&&i&&ts(t,r,i),i},wr=(e,t,r)=>oc(e,typeof t!="symbol"?t+"":t,r),Mn=(e,t,r)=>t.has(e)||rs("Cannot "+r),qt=(e,t,r)=>(Mn(e,t,"read from private field"),t.get(e)),xr=(e,t,r)=>t.has(e)?rs("Cannot add the same private member more than once"):t instanceof WeakSet?t.add(e):t.set(e,r),lc=(e,t,r,n)=>(Mn(e,t,"write to private field"),t.set(e,r),r),ns=(e,t,r)=>(Mn(e,t,"access private method"),r),Gt,En,$r,kr,Tn;let Le=class extends Ie{constructor(){super(),xr(this,kr),xr(this,Gt),xr(this,En,e=>{e.key==="Escape"&&qt(this,$r).call(this)}),wr(this,"filtersChanged",e=>{this.enabledStates=e.detail,this.selectedTest&&!this.enabledStates.includes(this.selectedTest.status)&&this.toggleTest(this.selectedTest)}),wr(this,"nextTest",()=>{const e=this.selectedTest?(this.tests.findIndex(({id:t})=>t===this.selectedTest.id)+1)%this.tests.length:0;this.selectTest(this.tests[e])}),wr(this,"previousTest",()=>{const e=this.selectedTest?(this.tests.findIndex(({id:t})=>t===this.selectedTest.id)+this.tests.length-1)%this.tests.length:this.tests.length-1;this.selectTest(this.tests[e])}),xr(this,$r,()=>{this.selectedTest&&this.toggleTest(this.selectedTest)}),this.filters=[],this.lines=[],this.enabledStates=[],this.tests=[],lc(this,Gt,new AbortController)}connectedCallback(){super.connectedCallback(),window.addEventListener("keydown",qt(this,En),{signal:qt(this,Gt).signal})}disconnectedCallback(){qt(this,Gt).abort(),super.disconnectedCallback()}toggleTest(e){ns(this,kr,Tn).call(this,e),this.selectedTest===e?(this.selectedTest=void 0,this.dispatchEvent(Ee("test-selected",{selected:!1,test:e}))):(this.selectedTest&&ns(this,kr,Tn).call(this,this.selectedTest),this.selectedTest=e,this.dispatchEvent(Ee("test-selected",{selected:!0,test:e})),sa(this.renderRoot.querySelector(`[test-id="${e.id}"]`)))}selectTest(e){e&&this.toggleTest(e)}render(){return b`
|
|
406
|
+
<mte-state-filter
|
|
407
|
+
@next=${this.nextTest}
|
|
408
|
+
@previous=${this.previousTest}
|
|
409
|
+
.filters="${this.filters}"
|
|
410
|
+
@filters-changed="${this.filtersChanged}"
|
|
411
|
+
></mte-state-filter>
|
|
412
|
+
${this.renderTestList()} ${this.renderCode()}
|
|
413
|
+
`}renderTestList(){const e=this.tests.filter(t=>!t.location);return e.length?b`<ul class="max-w-6xl">
|
|
414
|
+
${$t(e,t=>t.id,t=>b`<li class="my-3">
|
|
415
|
+
<button
|
|
416
|
+
class="w-full rounded p-3 text-left hover:bg-gray-100 active:bg-gray-200"
|
|
417
|
+
type="button"
|
|
418
|
+
data-active="${this.selectedTest===t}"
|
|
419
|
+
test-id="${t.id}"
|
|
420
|
+
@click=${r=>{r.stopPropagation(),this.toggleTest(t)}}
|
|
421
|
+
>${nn(t.status)} ${t.name} [${t.status}]
|
|
422
|
+
</button>
|
|
423
|
+
</li>`)}
|
|
424
|
+
</ul>`:P}renderCode(){if(this.model?.source){const e=new Map;for(const r of this.tests)if(r.location){let n=e.get(r.location.start.line);n||(n=[],e.set(r.location.start.line,n)),n.push(r)}const t=r=>this.renderTestDots([...e.entries()].filter(([n])=>n>r).flatMap(([,n])=>n));return b`<pre
|
|
425
|
+
id="report-code-block"
|
|
426
|
+
@click="${qt(this,$r)}"
|
|
427
|
+
class="line-numbers flex rounded-md p-1"
|
|
428
|
+
><code class="flex language-${ln(this.model.name)}">
|
|
429
|
+
<table>
|
|
430
|
+
${Ke(this.lines,(r,n)=>{const i=n+1,a=this.renderTestDots(e.get(i)),s=this.lines.length===i?t(i):P;return ha(r,da(a,s))})}</table></code></pre>`}return P}renderTestDots(e){return e?.length?e.map(t=>ee`<svg
|
|
431
|
+
test-id="${t.id}"
|
|
432
|
+
class="test-dot ${this.selectedTest?.id===t.id?"selected":""} ${t.status}"
|
|
433
|
+
@click=${r=>{r.stopPropagation(),this.toggleTest(t)}}
|
|
434
|
+
height="10"
|
|
435
|
+
width="12"
|
|
436
|
+
>
|
|
437
|
+
<title>${cc(t)}</title>
|
|
438
|
+
${this.selectedTest===t?ma:va}
|
|
439
|
+
</svg>`):P}reactivate(){super.reactivate(),this.updateFileRepresentation()}willUpdate(e){e.has("model")&&this.updateFileRepresentation(),(e.has("model")||e.has("enabledStates"))&&this.model&&(this.tests=this.model.tests.filter(t=>this.enabledStates.includes(t.status)).sort((t,r)=>t.location&&r.location?dr(t.location.start,r.location.start)?1:-1:this.model.tests.indexOf(t)-this.model.tests.indexOf(r)))}updateFileRepresentation(){if(!this.model)return;const e=this.model;this.filters=[ne.Killing,ne.Covering,ne.NotCovering].filter(t=>e.tests.some(r=>r.status===t)).map(t=>({enabled:!0,count:e.tests.filter(r=>r.status===t).length,status:t,label:b`${nn(t)} ${t}`,context:il(t)})),this.model.source&&(this.lines=un(cn(this.model.source,this.model.name)))}};Gt=new WeakMap,En=new WeakMap,$r=new WeakMap,kr=new WeakSet,Tn=function(e){ba(this.renderRoot,"test-id",e.id)},wr(Le,"styles",[Ji,ue,ve(ac)]),dt([I({attribute:!1})],Le.prototype,"model",2),dt([be()],Le.prototype,"filters",2),dt([be()],Le.prototype,"lines",2),dt([be()],Le.prototype,"enabledStates",2),dt([be()],Le.prototype,"selectedTest",2),dt([be()],Le.prototype,"tests",2),Le=dt([se("mte-test-file")],Le);function cc(e){return`${e.name} (${e.status})`}var is=Object.defineProperty,uc=Object.getOwnPropertyDescriptor,dc=(e,t,r)=>t in e?is(e,t,{enumerable:!0,configurable:!0,writable:!0,value:r}):e[t]=r,Pn=(e,t,r,n)=>{for(var i=n>1?void 0:n?uc(t,r):t,a=e.length-1,s;a>=0;a--)(s=e[a])&&(i=(n?s(t,r,i):s(i))||i);return n&&i&&is(t,r,i),i},hc=(e,t,r)=>dc(e,t+"",r);const Fn=e=>b`<code>${e.getMutatedLines()}</code> (${aa(e)})`;let Yt=class extends Ie{constructor(){super(),this.mode="closed"}render(){return qa({hasDetail:!!(this.test?.killedMutants?.length||this.test?.coveredMutants?.length),mode:this.mode},Lt(this.test,e=>b`
|
|
440
|
+
<span class="align-middle text-lg" slot="header"
|
|
441
|
+
>${nn(e.status)} ${e.name} [${e.status}]
|
|
442
|
+
${e.location?b`(${e.location.start.line}:${e.location.start.column})`:P}</span
|
|
443
|
+
>
|
|
444
|
+
<span slot="summary">${this.renderSummary()}</span>
|
|
445
|
+
<span class="block" slot="detail">${this.renderDetail()}</span>
|
|
446
|
+
`))}renderSummary(){return Zi(b`${this.test?.killedMutants?.[0]?it(b`${Q("🎯","killed")} Killed:
|
|
447
|
+
${Fn(this.test.killedMutants?.[0])}${this.test.killedMutants.length>1?b` (and ${this.test.killedMutants.length-1} more)`:""}`):P}
|
|
448
|
+
${Lt(this.test?.coveredMutants,e=>it(b`${Q("☂️","umbrella")} Covered ${e.length}
|
|
449
|
+
mutant${ia(e)}${this.test?.status===ne.Covering?" (yet didn't kill any of them)":""}`))}`)}renderDetail(){return b`<ul class="mb-6 mr-2">
|
|
450
|
+
${Ke(this.test?.killedMutants,e=>sr("This test killed this mutant",b`${Q("🎯","killed")} ${Fn(e)}`))}
|
|
451
|
+
${Ke(this.test?.coveredMutants?.filter(e=>!this.test?.killedMutants?.includes(e)),e=>sr("This test covered this mutant",b`${Q("☂️","umbrella")} ${Fn(e)}`))}
|
|
452
|
+
</ul>`}};hc(Yt,"styles",[ue]),Pn([I({attribute:!1})],Yt.prototype,"test",2),Pn([I({reflect:!0})],Yt.prototype,"mode",2),Yt=Pn([se("mte-drawer-test")],Yt);const pc="svg.cs{fill:var(--mut-file-csharp-color)}svg.html{fill:var(--mut-file-html-color)}svg.java{fill:var(--mut-file-java-color)}svg.javascript{fill:var(--mut-file-js-color)}svg.scala{fill:var(--mut-file-scala-color)}svg.typescript{fill:var(--mut-file-ts-color)}svg.php{fill:var(--mut-file-php-color)}svg.vue{fill:var(--mut-file-vue-color)}svg.octicon{fill:var(--mut-octicon-icon-color)}svg.javascript.test,svg.typescript.test{fill:var(--mut-file-js-test-color)}svg.gherkin{fill:var(--mut-file-gherkin-color)}svg.svelte{fill:var(--mut-file-svelte-color)}svg.rust{fill:var(--mut-file-rust-color)}svg{vertical-align:middle;width:20px}";var as=Object.defineProperty,fc=Object.getOwnPropertyDescriptor,gc=(e,t,r)=>t in e?as(e,t,{enumerable:!0,configurable:!0,writable:!0,value:r}):e[t]=r,zn=(e,t,r,n)=>{for(var i=n>1?void 0:n?fc(t,r):t,a=e.length-1,s;a>=0;a--)(s=e[a])&&(i=(n?s(t,r,i):s(i))||i);return n&&i&&as(t,r,i),i},mc=(e,t,r)=>gc(e,t+"",r);let Jt=class extends $e{get language(){return ln(this.fileName)}get isTestFile(){const e=this.fileName.substr(0,this.fileName.lastIndexOf(".")).toLowerCase();return e.endsWith("spec")||e.endsWith("test")}get cssClass(){return Xr({[this.language?.toString()??"unknown"]:this.isFile,test:this.isTestFile})}render(){if(!this.isFile)return ee`<svg aria-label="directory" class="octicon octicon-file-directory" viewBox="0 0 14 16" version="1.1" width="14" height="16" role="img"><path fill-rule="evenodd" d="M 13,2 H 7 V 1 C 7,0.34 6.69,0 6,0 H 1 C 0.45,0 0,0.45 0,1 v 10 c 0,0.55 0.45,1 1,1 h 12 c 0.55,0 1,-0.45 1,-1 V 3 C 14,2.45 13.55,2 13,2 Z M 6,2 H 1 V 1 h 5 z" id="path2" /></svg>`;if(!this.language)return ee`<svg aria-label="file" class="octicon octicon-file" viewBox="0 0 12 16" version="1.1" width="12" height="16" role="img"><path fill-rule="evenodd" d="M6 5H2V4h4v1zM2 8h7V7H2v1zm0 2h7V9H2v1zm0 2h7v-1H2v1zm10-7.5V14c0 .55-.45 1-1 1H1c-.55 0-1-.45-1-1V2c0-.55.45-1 1-1h7.5L12 4.5zM11 5L8 2H1v12h10V5z"></path></svg>`;switch(this.language){case ke.csharp:return ee`<svg class="${this.cssClass}" aria-label="cs" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 32 32"><g><path d="M7.1 15.9c0-1.3.2-2.4.6-3.4.4-1 .9-1.8 1.6-2.5.7-.7 1.5-1.2 2.4-1.6s1.9-.5 2.9-.5 1.9.2 2.7.6c.8.4 1.5.9 2 1.4l-2.2 2.5c-.4-.3-.7-.6-1.1-.7-.4-.1-.8-.3-1.4-.3-.5 0-.9.1-1.3.3-.4.2-.8.5-1.1.9s-.5.8-.7 1.4c-.2.6-.3 1.2-.3 1.9 0 1.5.3 2.6 1 3.3.7.8 1.5 1.2 2.6 1.2.5 0 1-.1 1.4-.3.4-.2.8-.5 1.1-.9l2.2 2.5c-.7.8-1.4 1.3-2.2 1.7-.8.4-1.7.6-2.7.6s-2-.2-2.9-.5-1.7-.8-2.4-1.5-1.1-1.7-1.5-2.7c-.5-.9-.7-2.1-.7-3.4z"/><path d="M21.8 17.1h-1l-.4 2.4h-1.2l.4-2.4h-1.2V16h1.5l.2-1.6h-1.3v-1.1h1.5l.4-2.4h1.2l-.4 2.4h1l.4-2.4h1.2l-.4 2.4H25v1.1h-1.6l-.2 1.6h1.3v1.1h-1.6l-.4 2.4h-1.2c0 .1.5-2.4.5-2.4zm-.8-1h1l.2-1.6h-1l-.2 1.6z"/></g></svg>`;case ke.html:return ee`<svg class="${this.cssClass}" aria-label="html" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 32 32"><path d="M8 15l6-5.6V12l-4.5 4 4.5 4v2.6L8 17v-2zm16 2.1l-6 5.6V20l4.6-4-4.6-4V9.3l6 5.6v2.2z"/></svg>`;case ke.java:return ee`<svg class="${this.cssClass}" aria-label="java" xmlns="http://www.w3.org/2000/svg" viewBox="-4 -4 20 20"><path class="cls-1" d="M6 0a6 6 0 1 0 6 6 6 6 0 0 0-6-6zm2.14 6.8a2.16 2.16 0 0 1-2.29 2.41 2.5 2.5 0 0 1-2-.87l.73-.92a1.52 1.52 0 0 0 1.23.59c.66 0 1.06-.42 1.06-1.32V2.8h1.26z"/></svg>`;case ke.javascript:return ee`<svg class="${this.cssClass}" aria-label="js" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 32 32"><path d="M11.4 10h2.7v7.6c0 3.4-1.6 4.6-4.3 4.6-.6 0-1.5-.1-2-.3l.3-2.2c.4.2.9.3 1.4.3 1.1 0 1.9-.5 1.9-2.4V10zm5.1 9.2c.7.4 1.9.8 3 .8 1.3 0 1.9-.5 1.9-1.3s-.6-1.2-2-1.7c-2-.7-3.3-1.8-3.3-3.6 0-2.1 1.7-3.6 4.6-3.6 1.4 0 2.4.3 3.1.6l-.6 2.2c-.5-.2-1.3-.6-2.5-.6s-1.8.5-1.8 1.2c0 .8.7 1.1 2.2 1.7 2.1.8 3.1 1.9 3.1 3.6 0 2-1.6 3.7-4.9 3.7-1.4 0-2.7-.4-3.4-.7l.6-2.3z"/></svg>`;case ke.typescript:return ee`<svg class="${this.cssClass}" aria-label="ts" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 32 32"><path d="M15.6 11.8h-3.4V22H9.7V11.8H6.3V10h9.2v1.8zm7.7 7.1c0-.5-.2-.8-.5-1.1-.3-.3-.9-.5-1.7-.8-1.4-.4-2.5-.9-3.3-1.5-.7-.6-1.1-1.3-1.1-2.3 0-1 .4-1.8 1.3-2.4.8-.6 1.9-.9 3.2-.9 1.3 0 2.4.4 3.2 1.1.8.7 1.2 1.6 1.2 2.6h-2.3c0-.6-.2-1-.6-1.4-.4-.3-.9-.5-1.6-.5-.6 0-1.1.1-1.5.4-.4.3-.5.7-.5 1.1 0 .4.2.7.6 1 .4.3 1 .5 2 .8 1.3.4 2.3.9 3 1.5.7.6 1 1.4 1 2.4s-.4 1.9-1.2 2.4c-.8.6-1.9.9-3.2.9-1.3 0-2.5-.3-3.4-1s-1.5-1.6-1.4-2.9h2.4c0 .7.2 1.2.7 1.6.4.3 1.1.5 1.8.5s1.2-.1 1.5-.4c.2-.3.4-.7.4-1.1z"/></svg>`;case ke.scala:return ee`<svg class="${this.cssClass}" aria-label="scala" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 32 32"><path d="M21.6 7v4.2c-.1.1-.1.2-.2.2-.3.3-.7.5-1.1.6-.9.3-1.9.5-2.8.7-1.6.3-3.1.5-4.7.7-.8.1-1.6.2-2.4.4V9.6c.1-.1.2-.1.4-.1 1.2-.2 2.5-.4 3.8-.5 1.9-.3 3.8-.5 5.6-1.1.5-.2 1.1-.4 1.4-.9zm0 5.6v4.2l-.2.2c-.5.4-1.1.6-1.6.8-.8.2-1.6.4-2.4.5-1 .2-1.9.3-2.9.5-1.4.2-2.7.3-4.1.6v-4.2c.1-.1.2-.1.3-.1 1.7-.2 3.4-.5 5.1-.7 1.4-.2 2.9-.5 4.3-.9.6-.2 1.1-.4 1.5-.9zM10.5 25h-.1v-4.2c.1-.1.2-.1.3-.1 1.2-.2 2.3-.3 3.5-.5 2-.3 3.9-.5 5.8-1.1.6-.2 1.2-.4 1.6-.9v4.2c-.1.2-.3.3-.5.5-.6.3-1.2.5-1.9.7-1.2.3-2.5.5-3.7.7-1.3.2-2.6.4-3.9.5-.4 0-.7.1-1.1.2z"/></svg>`;case ke.php:return ee`<svg class="${this.cssClass}" aria-label="php" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 32 32"><path d="M12.7 19.7c-.1-.6-.4-1.1-1-1.3-.2-.1-.5-.3-.7-.4-.3-.1-.6-.2-.8-.3-.2-.1-.4 0-.6.2-.1.2 0 .4.1.5.1.2.2.3.4.5.2.3.4.5.7.8.2.3.4.5.3.9-.1.7-.4 1.4-.9 1.9-.1.1-.2.1-.2.1-.3 0-.7-.2-.9-.4-.3-.3-.2-.6.1-.8.1 0 .2-.1.2-.2.2-.2.3-.4.2-.7-.1-.1-.1-.2-.2-.3-.4-.4-.9-.8-1.4-1.2-1.3-1-1.9-2.2-2-3.6-.1-1.6.3-3.1 1.1-4.5.3-.5.7-1 1.3-1.3.4-.2.8-.3 1.2-.4 1.1-.3 2.3-.5 3.5-.3 1 .2 1.8.7 2.1 1.7.2.7.3 1.3.2 2-.1 1.4-1.2 2.6-2.5 3-.6.2-.9.1-1.2-.4-.2-.3-.5-.7-.7-1.1V14c0-.1-.1-.1-.1-.2.1.6.2 1.2.5 1.7.2.3.4.5.8.5 1.3.1 2.3-.3 3.1-1.3.8-1.1 1-2.4.8-3.8 0-.3-.1-.5-.2-.8 0-.2 0-.3.2-.4.1 0 .2 0 .2-.1 1-.2 2.1-.3 3.1-.2 1.2.1 2.3.4 3.3 1.1 1.6 1 2.6 2.5 3.1 4.3.1.3.1.5.1.8 0 .2-.1.2-.3.1-.2-.1-.3-.3-.4-.4-.1-.1-.2-.3-.3-.4-.1-.1-.2-.1-.2 0s-.1.2-.1.3c-.3 1-.7 1.9-1.4 2.6-.1.1-.2.3-.2.4 0 .4-.1.8 0 1.2.1.8.2 1.7.3 2.5.1.5-.1.7-.5.9-.3.1-.6.2-1 .2h-1.6c0-.6 0-1.2-.5-1.5.1-.4.2-.8.3-1.3.1-.4 0-.7-.2-1-.2-.3-.5-.3-.8-.2-.8.5-1.6.5-2.5.2-.4-.1-.7-.1-.9.3-.2.4-.3.8-.3 1.2 0 .5.1 1.1.2 1.6 0 .3 0 .4-.3.5-.7.2-1.4.2-2 .1h-.1c0-.6 0-1.2-.7-1.5.4-.4.4-1.1.3-1.7zm-4.1-2.3c.1-.1.2-.2.2-.4.1-.3-.2-.8-.5-.9-.2-.1-.3 0-.4.1-.3.3-.5.6-.8.9 0 .1-.1.1-.1.2-.1.2 0 .4.2.4.1 0 .3 0 .4.1.4 0 .7-.1 1-.4zm0-3.3c0-.2-.2-.4-.4-.4s-.5.2-.4.5c0 .2.2.4.5.4.1-.1.3-.3.3-.5z"/></svg>`;case ke.vue:return ee`<svg class="${this.cssClass}" aria-label="vue" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 1200 1000"><path d="M600 495.9l159.1-275.4h-84.4L600 349.7l-74.6-129.2h-84.5z"/><path d="M793.7 220.5L600 555.9 406.3 220.5H277l323 559 323-559z"/></svg>`;case ke.gherkin:return ee`<svg class="${this.cssClass}" aria-label="gherkin" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 32 32"><path d="M16.129,2a12.348,12.348,0,0,0-2.35,24.465V30c7.371-1.114,13.9-6.982,14.384-14.684a12.8,12.8,0,0,0-5.9-11.667c-.223-.132-.449-.262-.682-.377s-.481-.231-.729-.33c-.079-.033-.156-.063-.235-.094-.216-.08-.435-.17-.658-.236A12.188,12.188,0,0,0,16.129,2Z" style="fill:var(--mut-file-gherkin-color)"/><path d="M18.68,6.563a1.345,1.345,0,0,0-1.178.472,5.493,5.493,0,0,0-.518.9,2.9,2.9,0,0,0,.377,3.023A3.317,3.317,0,0,0,19.763,9,2.388,2.388,0,0,0,20,8,1.411,1.411,0,0,0,18.68,6.563Zm-5.488.071A1.441,1.441,0,0,0,11.85,8,2.388,2.388,0,0,0,12.085,9a3.427,3.427,0,0,0,2.473,1.96,3.141,3.141,0,0,0-.212-3.85,1.322,1.322,0,0,0-1.154-.472Zm-3.7,3.637a1.3,1.3,0,0,0-.73,2.338,5.663,5.663,0,0,0,.895.543,3.386,3.386,0,0,0,3.179-.307,3.492,3.492,0,0,0-2.049-2.338,2.69,2.69,0,0,0-1.06-.236,1.369,1.369,0,0,0-.236,0Zm11.611,4.582a3.44,3.44,0,0,0-1.955.567A3.492,3.492,0,0,0,21.2,17.758a2.69,2.69,0,0,0,1.06.236,1.329,1.329,0,0,0,.966-2.362,5.47,5.47,0,0,0-.895-.52,3.247,3.247,0,0,0-1.225-.26Zm-10.292.071a3.247,3.247,0,0,0-1.225.26,2.575,2.575,0,0,0-.895.543A1.34,1.34,0,0,0,9.73,18.065a2.426,2.426,0,0,0,1.06-.236,3.185,3.185,0,0,0,1.955-2.338,3.366,3.366,0,0,0-1.931-.567Zm3.815,2.314a3.317,3.317,0,0,0-2.4,1.96,2.286,2.286,0,0,0-.236.968,1.4,1.4,0,0,0,2.426.992,5.492,5.492,0,0,0,.518-.9,3.109,3.109,0,0,0-.306-3.023Zm2.8.071a3.141,3.141,0,0,0,.212,3.85,1.47,1.47,0,0,0,2.5-.9,2.388,2.388,0,0,0-.236-.992,3.427,3.427,0,0,0-2.473-1.96Z" style="fill:#fff"/></svg>`;case ke.svelte:return ee`<svg class="${this.cssClass}" aria-label="svelte" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 32 32"><path d="M10.617 10.473L14.809 7.8c2.387-1.52 5.688-.812 7.359 1.58a5.123 5.123 0 01.876 3.876 4.821 4.821 0 01-.72 1.798c.524.998.7 2.142.5 3.251a4.808 4.808 0 01-1.963 3.081l-.21.14-4.192 2.672c-2.386 1.52-5.688.812-7.36-1.58a5.125 5.125 0 01-.875-3.876c.116-.642.36-1.253.72-1.798a5.065 5.065 0 01-.5-3.251 4.81 4.81 0 011.962-3.081l.21-.14L14.81 7.8l-4.192 2.672zm9.825.008a3.33 3.33 0 00-3.573-1.324c-.226.06-.444.146-.65.256l-.202.118-4.192 2.671a2.891 2.891 0 00-1.306 1.937 3.081 3.081 0 00.526 2.33 3.33 3.33 0 003.574 1.326c.226-.06.444-.147.65-.256l.201-.118 1.6-1.02a.923.923 0 01.257-.113c.407-.105.837.054 1.077.4a.931.931 0 01.158.702.873.873 0 01-.295.512l-.099.072-4.192 2.671a.923.923 0 01-.257.113 1.003 1.003 0 01-1.076-.4.94.94 0 01-.171-.49l.002-.132.014-.156-.156-.047a5.407 5.407 0 01-1.387-.645l-.252-.174-.215-.158-.08.24a2.923 2.923 0 00-.1.392 3.082 3.082 0 00.527 2.33 3.33 3.33 0 003.38 1.37l.194-.045c.226-.06.444-.146.65-.256l.202-.118 4.192-2.671a2.892 2.892 0 001.306-1.937 3.081 3.081 0 00-.526-2.331 3.33 3.33 0 00-3.574-1.325 3.05 3.05 0 00-.65.257l-.201.117-1.6 1.02a.927.927 0 01-.257.113 1.003 1.003 0 01-1.077-.4.93.93 0 01-.158-.702.871.871 0 01.295-.512l.098-.072 4.192-2.671a.923.923 0 01.258-.113c.407-.106.836.053 1.076.399a.942.942 0 01.171.49l-.002.133-.014.156.155.047c.492.148.959.365 1.388.645l.252.175.215.157.079-.24c.042-.129.076-.26.1-.392a3.082 3.082 0 00-.526-2.33z"/></svg>`;case ke.rust:return ee`<svg class="${this.cssClass}" aria-label="rust" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 32 32"><path d="M21.7 8.4V9l.1.1h.1c.3-.1.6-.1.9-.2.2-.1.4.1.3.3-.1.3-.1.6-.2.9v.1l.1.1c0 .1.1.1.2.1h.9c.2 0 .3.1.3.3v.2c-.1.3-.3.6-.4.8v.1s.1.1.1.2h.1c.3.1.6.1.9.2.2 0 .3.3.2.5-.2.3-.4.5-.5.7v.2c0 .1.1.1.2.2.3.1.5.2.8.3.2.1.3.3.1.5-.2.2-.4.4-.7.6v.3s.1.1.2.1c.2.1.4.3.7.4.2.1.2.4 0 .5-.3.2-.5.3-.8.5v.1c0 .2 0 .2.1.3.2.2.4.4.6.5.2.2.1.4-.1.5-.3.1-.6.2-.8.3 0 0-.1 0-.1.1-.1.1 0 .2 0 .3.2.2.3.4.5.7.1.1.1.3-.1.4-.1 0-.1 0-.2.1-.3 0-.5.1-.8.1h-.1c0 .1-.1.1-.1.2s0 .1.1.2c.1.2.2.5.3.7.1.1 0 .3-.1.4h-1.2c-.1.1-.1.2-.1.3.1.3.1.5.2.8.1.2-.1.4-.4.4-.3-.1-.6-.1-.9-.2H22l-.1.1s-.1.1 0 .1v.9c0 .2-.1.3-.3.3h-.2c-.3-.1-.5-.2-.8-.4h-.1c-.1 0-.2.1-.2.2 0 .3-.1.5-.1.8 0 .2-.3.3-.5.2-.2-.2-.5-.4-.7-.5h-.1c-.1 0-.2.1-.2.2-.1.3-.2.5-.3.8-.1.2-.2.2-.3.2-.1 0-.1-.1-.1-.1-.2-.2-.4-.4-.6-.7h-.2c-.1 0-.2.1-.2.2-.1.2-.3.5-.4.7-.1.2-.4.2-.5 0-.2-.3-.3-.5-.5-.8h-.2c-.1 0-.1 0-.2.1l-.6.6c-.1.1-.2.1-.4.1-.1 0-.1-.1-.1-.2l-.3-.9s0-.1-.1-.1h-.3c-.2.2-.4.3-.7.5-.4-.2-.7-.3-.7-.5-.1-.3-.1-.6-.1-.9 0 0 0-.1-.1-.1s-.1-.1-.2-.1-.1 0-.2.1c-.2.1-.5.2-.7.3-.2.1-.4 0-.4-.2V23l-.1-.1h-.1c-.3.1-.6.1-.9.2-.2.1-.4-.1-.3-.3.1-.3.1-.6.2-.9v-.1l-.1-.1H8c-.2 0-.3-.1-.3-.3v-.2c.1-.3.3-.6.4-.8v-.1s0-.1-.1-.1c0-.1-.1-.1-.1-.1-.3 0-.6-.1-.9-.1-.2 0-.3-.3-.2-.5.2-.2.4-.5.5-.7v-.1c0-.1 0-.1-.1-.2 0 0-.1-.1-.2-.1-.2-.1-.5-.2-.7-.3-.2-.1-.3-.3-.1-.5.3-.1.5-.4.8-.6v-.2c0-.1 0-.2-.1-.2-.2-.1-.5-.3-.7-.4-.2-.1-.2-.4 0-.5.3-.2.5-.3.8-.5V15l-.1-.1-.6-.6c-.1-.1-.1-.3 0-.4 0 0 .1 0 .1-.1l.9-.3v-.1c.1-.1 0-.2 0-.3-.2-.2-.3-.4-.5-.6-.1-.2 0-.5.2-.5.3-.1.6-.1.9-.2H8c0-.1.1-.1.1-.2s0-.1-.1-.2c-.1-.2-.2-.5-.3-.7-.1-.2 0-.4.2-.4H9s0-.1.1-.1v-.1c-.1-.3-.2-.6-.2-.9-.1-.2.1-.4.3-.3.3 0 .6.1.9.2h.1l.1-.1s.1-.1 0-.1V8c0-.2.1-.3.3-.3h.2c.3.1.6.3.8.4h.1s.1 0 .1-.1c.1 0 .1-.1.1-.1 0-.3.1-.6.1-.9 0-.2.3-.3.5-.2.2.2.5.4.7.5h.1c.1 0 .1 0 .2-.1 0 0 0-.1.1-.2.1-.2.2-.5.3-.7.1-.2.2-.2.4-.2l.1.1c.1.3.4.5.6.8h.1c.1 0 .2-.1.2-.1.1-.2.3-.5.4-.7.2-.2.4-.2.5-.1l.1.1c.2.3.3.5.5.8h.3c.1 0 .1-.1.1-.1.2-.2.4-.4.5-.6.1-.1.3-.1.4 0v.1c.1.3.2.6.3.8l.1.1h.2c.3-.1.6-.3.8-.5.2-.1.5 0 .5.2 0 .3.1.6.1.9 0 0 0 .1.1.1h.1c.1.1.2.1.2 0 .2-.1.5-.2.8-.3.2-.1.4 0 .4.3v.4zm-11.1 2.7h7.6c.3 0 .6 0 .9.1.6.2 1.1.5 1.4.9.3.3.5.7.5 1.2 0 .4-.1.8-.3 1.2-.2.3-.5.6-.8.8-.1.1-.2.2-.3.2.1.1.2.1.3.2.2.2.5.4.6.7.2.3.3.7.3 1 0 .1.1.2.2.3.2.2.5.2.8.2.2 0 .4-.1.5-.2.2-.2.2-.4.3-.6v-.5c0-.1 0-.1.1-.1h.7v-1.3c-.3-.1-.6-.3-.9-.4-.1-.1-.3-.1-.4-.2-.3-.1-.4-.4-.3-.8.2-.5.4-1 .7-1.5v-.1c-.4-.6-.8-1.2-1.4-1.7-1-.9-2.2-1.5-3.6-1.8h-.1c-.3.3-.6.6-1 .9-.2.2-.6.2-.8 0l-.9-.9h-.1c-.4.1-.7.2-1 .3-1.1.4-2 1-2.8 1.8-.1.1-.2.2-.2.3zm11.3 9.2h-3c-.2 0-.3 0-.4-.1-.4-.2-.6-.6-.7-1-.1-.4-.2-.7-.2-1.1 0-.2-.1-.4-.2-.6-.2-.5-.6-.8-1.1-.8h-1.8V18h1.8c.1 0 .1 0 .1.1v2c0 .1 0 .1-.1.1h-6c.2.3.4.5.6.7h.1c.4-.1.8-.2 1.2-.2.3-.1.6.1.7.4.1.4.2.9.3 1.3v.1c.8.3 1.6.6 2.4.6.7.1 1.4 0 2.1-.1.5-.1 1-.3 1.5-.5v-.1c.1-.4.2-.9.3-1.3.1-.3.3-.5.7-.4l1.2.3h.1c0-.2.2-.5.4-.7zm-11.9-7l.3.6c0 .1.1.2 0 .3 0 .2-.2.3-.3.4-.4.2-.8.4-1.2.5 0 0-.1 0-.1.1v.5c0 .7.1 1.4.3 2.2 0 0 0 .1.1.1h2.1v-4.7H10zm4.3 1.4c.1 0 .1 0 0 0h2.3c.2 0 .4 0 .6-.1.1-.1.2-.1.3-.3.1-.2.1-.5-.1-.7-.2-.2-.5-.3-.7-.3h-2.5c.1.5.1.9.1 1.4zm-6-1c0 .3.3.6.6.6s.6-.3.6-.6-.3-.6-.6-.6-.6.3-.6.6zM21 22.1c0-.3-.3-.6-.6-.6s-.6.3-.6.6.3.6.6.6.6-.2.6-.6zm-9.4-.6c-.3 0-.6.3-.6.6s.3.6.6.6.6-.3.6-.6-.3-.6-.6-.6zm5-13.1c0-.3-.2-.6-.6-.6-.3 0-.6.2-.6.6 0 .3.2.6.6.6.3 0 .5-.3.6-.6zm6.5 6c.3 0 .6-.3.6-.6s-.3-.6-.6-.6-.6.3-.6.6.2.6.6.6z"/></svg>`}}};mc(Jt,"styles",[ve(pc)]),zn([I({attribute:"file-name"})],Jt.prototype,"fileName",2),zn([I({attribute:"file",type:Boolean})],Jt.prototype,"isFile",2),Jt=zn([se("mte-file-icon")],Jt);var ss=Object.defineProperty,vc=Object.getOwnPropertyDescriptor,bc=(e,t,r)=>t in e?ss(e,t,{enumerable:!0,configurable:!0,writable:!0,value:r}):e[t]=r,os=(e,t,r,n)=>{for(var i=n>1?void 0:n?vc(t,r):t,a=e.length-1,s;a>=0;a--)(s=e[a])&&(i=(n?s(t,r,i):s(i))||i);return n&&i&&ss(t,r,i),i},yc=(e,t,r)=>bc(e,t+"",r);let _r=class extends $e{render(){return b`<span class="cursor-help underline decoration-dotted" title="${this.title}"><slot></slot></span>`}};yc(_r,"styles",[ue]),os([I({attribute:!0})],_r.prototype,"title",2),_r=os([se("mte-tooltip")],_r);/**
|
|
453
|
+
* @license
|
|
454
|
+
* Copyright 2021 Google LLC
|
|
455
|
+
* SPDX-License-Identifier: BSD-3-Clause
|
|
456
|
+
*/class wc{constructor(t,{target:r,config:n,callback:i,skipInitial:a}){this.t=new Set,this.o=!1,this.i=!1,this.h=t,r!==null&&this.t.add(r??t),this.o=a??this.o,this.callback=i,window.IntersectionObserver?(this.u=new IntersectionObserver(s=>{const o=this.i;this.i=!1,this.o&&o||(this.handleChanges(s),this.h.requestUpdate())},n),t.addController(this)):console.warn("IntersectionController error: browser does not support IntersectionObserver.")}handleChanges(t){this.value=this.callback?.(t,this.u)}hostConnected(){for(const t of this.t)this.observe(t)}hostDisconnected(){this.disconnect()}async hostUpdated(){const t=this.u.takeRecords();t.length&&this.handleChanges(t)}observe(t){this.t.add(t),this.u.observe(t),this.i=!0}unobserve(t){this.t.delete(t),this.u.unobserve(t)}disconnect(){this.u.disconnect()}}var ls=Object.defineProperty,xc=Object.getOwnPropertyDescriptor,cs=e=>{throw TypeError(e)},$c=(e,t,r)=>t in e?ls(e,t,{enumerable:!0,configurable:!0,writable:!0,value:r}):e[t]=r,At=(e,t,r,n)=>{for(var i=n>1?void 0:n?xc(t,r):t,a=e.length-1,s;a>=0;a--)(s=e[a])&&(i=(n?s(t,r,i):s(i))||i);return n&&i&&ls(t,r,i),i},kc=(e,t,r)=>$c(e,t+"",r),On=(e,t,r)=>t.has(e)||cs("Cannot "+r),_c=(e,t,r)=>(On(e,t,"read from private field"),r?r.call(e):t.get(e)),us=(e,t,r)=>t.has(e)?cs("Cannot add the same private member more than once"):t instanceof WeakSet?t.add(e):t.set(e,r),Sc=(e,t,r,n)=>(On(e,t,"write to private field"),t.set(e,r),r),qe=(e,t,r)=>(On(e,t,"access private method"),r),Sr,Pe,ds,hs,In,Rn,ps,fs;let Ge=class extends $e{constructor(){super(),us(this,Pe),us(this,Sr),this.detected=0,this.noCoverage=0,this.pending=0,this.survived=0,this.total=0,Sc(this,Sr,new wc(this,{callback:([e])=>!e.isIntersecting}))}render(){return b`
|
|
457
|
+
${qe(this,Pe,ds).call(this)}
|
|
458
|
+
<div class="my-4 rounded-md border border-gray-200 bg-white transition-all">
|
|
459
|
+
<div class="parts flex h-8 w-full overflow-hidden rounded bg-gray-200">${qe(this,Pe,hs).call(this)}</div>
|
|
460
|
+
</div>
|
|
461
|
+
`}};return Sr=new WeakMap,Pe=new WeakSet,ds=function(){return b`<div
|
|
462
|
+
class="${_c(this,Sr).value?"opacity-1":"opacity-0"} pointer-events-none fixed left-0 top-offset z-20 flex w-full justify-center transition-all"
|
|
463
|
+
>
|
|
464
|
+
<div class="container w-full bg-white py-2">
|
|
465
|
+
<div class="flex h-2 overflow-hidden rounded bg-gray-200">${qe(this,Pe,Rn).call(this).map(e=>qe(this,Pe,In).call(this,e,!0))}</div>
|
|
466
|
+
</div>
|
|
467
|
+
</div>`},hs=function(){return qe(this,Pe,Rn).call(this).map(e=>qe(this,Pe,In).call(this,e,!1))},In=function(e,t){return b`<div
|
|
468
|
+
title="${t?P:e.tooltip}"
|
|
469
|
+
style="width: ${qe(this,Pe,fs).call(this,e.amount)}%"
|
|
470
|
+
class="${qe(this,Pe,ps).call(this,e.type)} ${e.amount===0?"opacity-0":"opacity-1"} relative flex items-center overflow-hidden"
|
|
471
|
+
>${t?P:b`<span class="ms-3 font-bold text-gray-800">${e.amount}</span>`}
|
|
472
|
+
</div>`},Rn=function(){return[{type:"detected",amount:this.detected,tooltip:`killed + timeout (${this.detected})`},{type:"survived",amount:this.survived,tooltip:`survived (${this.survived})`},{type:"no coverage",amount:this.noCoverage,tooltip:`no coverage (${this.noCoverage})`},{type:"pending",amount:this.pending,tooltip:"pending"}]},ps=function(e){switch(e){case"detected":return"bg-green-600";case"survived":return"bg-red-600";case"no coverage":return"bg-yellow-600";default:return"bg-gray-200"}},fs=function(e){return this.total!==0?100*e/this.total:0},kc(Ge,"styles",[ue]),At([I({type:Number})],Ge.prototype,"detected",2),At([I({type:Number})],Ge.prototype,"noCoverage",2),At([I({type:Number})],Ge.prototype,"pending",2),At([I({type:Number})],Ge.prototype,"survived",2),At([I({type:Number})],Ge.prototype,"total",2),Ge=At([se("mte-result-status-bar")],Ge),Object.defineProperty(re,Symbol.toStringTag,{value:"Module"}),re}({});
|
|
473
|
+
|
|
474
|
+
</script>
|
|
475
|
+
</head>
|
|
476
|
+
<body>
|
|
477
|
+
<svg style="width: 80px; position:fixed; right:10px; bottom:10px; z-index:10" class="stryker-image" viewBox="0 0 1458 1458" xmlns="http://www.w3.org/2000/svg" fill-rule="evenodd" clip-rule="evenodd" stroke-linejoin="round" stroke-miterlimit="2"><path fill="none" d="M0 0h1458v1458H0z"/><clipPath id="a"><path d="M0 0h1458v1458H0z"/></clipPath><g clip-path="url(#a)"><path d="M1458 729c0 402.655-326.345 729-729 729S0 1131.655 0 729C0 326.445 326.345 0 729 0s729 326.345 729 729" fill="#e74c3c" fill-rule="nonzero"/><path d="M778.349 1456.15L576.6 1254.401l233-105 85-78.668v-64.332l-257-257-44-187-50-208 251.806-82.793L1076.6 389.401l380.14 379.15c-19.681 367.728-311.914 663.049-678.391 687.599z" fill-opacity=".3"/><path d="M753.4 329.503c41.79 0 74.579 7.83 97.925 25.444 23.571 18.015 41.69 43.956 55.167 77.097l11.662 28.679 165.733-58.183-14.137-32.13c-26.688-60.655-64.896-108.61-114.191-144.011-49.329-35.423-117.458-54.302-204.859-54.302-50.78 0-95.646 7.376-134.767 21.542-40.093 14.671-74.09 34.79-102.239 60.259-28.84 26.207-50.646 57.06-65.496 92.701-14.718 35.052-22.101 72.538-22.101 112.401 0 72.536 20.667 133.294 61.165 182.704 38.624 47.255 98.346 88.037 179.861 121.291 42.257 17.475 78.715 33.125 109.227 46.994 27.193 12.361 49.294 26.124 66.157 41.751 15.309 14.186 26.497 30.584 33.63 49.258 7.721 20.214 11.16 45.69 11.16 76.402 0 28.021-4.251 51.787-13.591 71.219-8.832 18.374-20.171 33.178-34.523 44.219-14.787 11.374-31.193 19.591-49.393 24.466-19.68 5.359-39.14 7.993-58.69 7.993-29.359 0-54.387-3.407-75.182-10.747-20.112-7.013-37.144-16.144-51.259-27.486-13.618-11.009-24.971-23.766-33.744-38.279-9.64-15.8-17.272-31.924-23.032-48.408l-10.965-31.376-161.669 60.585 10.734 30.124c10.191 28.601 24.197 56.228 42.059 82.748 18.208 27.144 41.322 51.369 69.525 72.745 27.695 21.075 60.904 38.218 99.481 51.041 37.777 12.664 82.004 19.159 132.552 19.159 49.998 0 95.818-8.321 137.611-24.622 42.228-16.471 78.436-38.992 108.835-67.291 30.719-28.597 54.631-62.103 71.834-100.642 17.263-38.56 25.923-79.392 25.923-122.248 0-54.339-8.368-100.37-24.208-138.32-16.29-38.759-38.252-71.661-65.948-98.797-26.965-26.418-58.269-48.835-93.858-67.175-33.655-17.241-69.196-33.11-106.593-47.533-35.934-13.429-65.822-26.601-89.948-39.525-22.153-11.868-40.009-24.21-53.547-37.309-11.429-11.13-19.83-23.678-24.718-37.664-5.413-15.49-7.98-33.423-7.98-53.577 0-40.883 11.293-71.522 37.086-90.539 28.443-20.825 64.985-30.658 109.311-30.658z" fill="#f1c40f" fill-rule="nonzero"/><path d="M720 0h18v113h-18zM1458 738v-18h-113v18h113zM720 1345h18v113h-18zM113 738v-18H0v18h113z"/></g></svg>
|
|
478
|
+
<mutation-test-report-app titlePostfix="Stryker">
|
|
479
|
+
Your browser doesn't support <a href="https://caniuse.com/#search=custom%20elements">custom elements</a>.
|
|
480
|
+
Please use a latest version of an evergreen browser (Firefox, Chrome, Safari, Opera, Edge, etc).
|
|
481
|
+
</mutation-test-report-app>
|
|
482
|
+
<script>
|
|
483
|
+
const app = document.querySelector('mutation-test-report-app');
|
|
484
|
+
app.report = {"files":{"src/routes/hello.ts":{"language":"typescript","mutants":[{"id":"5","mutatorName":"StringLiteral","replacement":"\"\"","statusReason":"expected { message: '' } to deeply equal { message: 'Hello, World!' }","status":"Killed","static":false,"testsCompleted":1,"killedBy":["3"],"coveredBy":["3","4"],"location":{"end":{"column":54,"line":6},"start":{"column":39,"line":6}}},{"id":"4","mutatorName":"ObjectLiteral","replacement":"{}","statusReason":"expected {} to deeply equal { message: 'Hello, World!' }","status":"Killed","static":false,"testsCompleted":1,"killedBy":["3"],"coveredBy":["3","4"],"location":{"end":{"column":56,"line":6},"start":{"column":28,"line":6}}},{"id":"2","mutatorName":"ObjectLiteral","replacement":"{}","statusReason":"expected undefined to be 'application/json' // Object.is equality","status":"Killed","static":false,"testsCompleted":1,"killedBy":["3"],"coveredBy":["3","4"],"location":{"end":{"column":62,"line":5},"start":{"column":24,"line":5}}},{"id":"1","mutatorName":"BlockStatement","replacement":"{}","statusReason":"expected +0 to be 200 // Object.is equality","status":"Killed","static":false,"testsCompleted":1,"killedBy":["3"],"coveredBy":["3","4"],"location":{"end":{"column":4,"line":7},"start":{"column":64,"line":4}}},{"id":"0","mutatorName":"BlockStatement","replacement":"{}","statusReason":"handler is not a function","status":"Killed","static":false,"testsCompleted":1,"killedBy":["3"],"coveredBy":["3","4"],"location":{"end":{"column":2,"line":8},"start":{"column":38,"line":3}}},{"id":"3","mutatorName":"StringLiteral","replacement":"\"\"","statusReason":"expected '' to be 'application/json' // Object.is equality","status":"Killed","static":false,"testsCompleted":1,"killedBy":["3"],"coveredBy":["3","4"],"location":{"end":{"column":60,"line":5},"start":{"column":42,"line":5}}}],"source":"import { IncomingMessage, ServerResponse } from 'http';\n\nexport function createHelloHandler() {\n return (_req: IncomingMessage, res: ServerResponse): void => {\n res.writeHead(200, { 'Content-Type': 'application/json' });\n res.end(JSON.stringify({ message: 'Hello, World!' }));\n };\n}\n"}},"schemaVersion":"1.0","thresholds":{"high":80,"low":60,"break":null},"testFiles":{"tests/release-plan/dependency-release-alignment.test.ts":{"tests":[{"id":"0","name":"generate-release-plan dependency release alignment does not schedule a dependency into a later release than its dependent (explicit targets)"},{"id":"1","name":"generate-release-plan dependency release alignment reports missing dependencies in a dedicated section"},{"id":"2","name":"generate-release-plan dependency release alignment does not schedule a dependency into a later release than its dependent (default targets)"}],"source":"import { execFileSync } from 'node:child_process';\nimport fs from 'node:fs';\nimport os from 'node:os';\nimport path from 'node:path';\nimport { describe, expect, it } from 'vitest';\n\nfunction writeFile(filePath: string, contents: string) {\n fs.mkdirSync(path.dirname(filePath), { recursive: true });\n fs.writeFileSync(filePath, contents, 'utf8');\n}\n\nfunction parseReleaseNumber(release: string): number {\n const m = release.match(/^R(\\d+)$/i);\n return m ? Number(m[1]) : Number.NaN;\n}\n\nfunction parsePlanIntentReleaseMap(planMd: string): Map<"+"string, number> {\n const map = new Map<"+"string, number>();\n const lines = planMd.split('\\n');\n\n let currentRelease: number | null = null;\n for (const raw of lines) {\n const line = raw.trim();\n const releaseMatch = line.match(/^##\\s+(R\\d+)\\s*$/i);\n if (releaseMatch) {\n currentRelease = parseReleaseNumber(releaseMatch[1].toUpperCase());\n continue;\n }\n\n // Lines look like: \"1. **F-001:** Title ...\"\n const intentMatch = line.match(/^\\d+\\.\\s+\\*\\*([A-Z]-\\d+):\\*\\*/i);\n if (intentMatch && currentRelease != null) {\n map.set(intentMatch[1].toUpperCase(), currentRelease);\n }\n }\n\n return map;\n}\n\nfunction runGenerateReleasePlan(cwd: string) {\n const scriptPath = path.join(process.cwd(), 'scripts', 'generate-release-plan.sh');\n execFileSync('bash', [scriptPath], {\n cwd,\n env: process.env,\n stdio: 'pipe',\n });\n}\n\ndescribe('generate-release-plan dependency release alignment', () => {\n it('does not schedule a dependency into a later release than its dependent (explicit targets)', () => {\n const tmpDir = fs.mkdtempSync(path.join(os.tmpdir(), 'shipit-release-plan-'));\n\n writeFile(\n path.join(tmpDir, 'intent', 'features', 'F-001.md'),\n `# F-001: Dependent\\n\\n## Status\\nplanned\\n\\n## Priority\\np1\\n\\n## Effort\\ns\\n\\n## Release Target\\nR1\\n\\n## Dependencies\\n- F-002\\n`\n );\n writeFile(\n path.join(tmpDir, 'intent', 'features', 'F-002.md'),\n `# F-002: Dependency\\n\\n## Status\\nplanned\\n\\n## Priority\\np2\\n\\n## Effort\\ns\\n\\n## Release Target\\nR2\\n\\n## Dependencies\\n- (none)\\n`\n );\n\n runGenerateReleasePlan(tmpDir);\n\n const planPath = path.join(tmpDir, 'release', 'plan.md');\n const plan = fs.readFileSync(planPath, 'utf8');\n const releases = parsePlanIntentReleaseMap(plan);\n\n const f001 = releases.get('F-001');\n const f002 = releases.get('F-002');\n expect(f001).toBeTypeOf('number');\n expect(f002).toBeTypeOf('number');\n if (typeof f001 !== 'number' || typeof f002 !== 'number') {\n throw new Error('Expected both F-001 and F-002 to appear in release/plan.md');\n }\n expect(f002).toBeLessThanOrEqual(f001);\n });\n\n it('reports missing dependencies in a dedicated section', () => {\n const tmpDir = fs.mkdtempSync(path.join(os.tmpdir(), 'shipit-release-plan-'));\n\n writeFile(\n path.join(tmpDir, 'intent', 'features', 'F-001.md'),\n `# F-001: Dependent\\n\\n## Status\\nplanned\\n\\n## Priority\\np1\\n\\n## Effort\\ns\\n\\n## Release Target\\nR1\\n\\n## Dependencies\\n- F-999\\n`\n );\n\n runGenerateReleasePlan(tmpDir);\n\n const planPath = path.join(tmpDir, 'release', 'plan.md');\n const plan = fs.readFileSync(planPath, 'utf8');\n\n expect(plan).toContain('## Missing Dependencies');\n expect(plan).toMatch(/-\\s+\\*\\*F-001:\\*\\*.*F-999/i);\n });\n\n it('does not schedule a dependency into a later release than its dependent (default targets)', () => {\n const tmpDir = fs.mkdtempSync(path.join(os.tmpdir(), 'shipit-release-plan-'));\n\n // Default release from priorityToRelease: p0 -> R1, p2 -> R2.\n writeFile(\n path.join(tmpDir, 'intent', 'features', 'F-001.md'),\n `# F-001: Dependent\\n\\n## Status\\nplanned\\n\\n## Priority\\np0\\n\\n## Effort\\ns\\n\\n## Dependencies\\n- F-002\\n`\n );\n writeFile(\n path.join(tmpDir, 'intent', 'features', 'F-002.md'),\n `# F-002: Dependency\\n\\n## Status\\nplanned\\n\\n## Priority\\np2\\n\\n## Effort\\ns\\n\\n## Dependencies\\n- (none)\\n`\n );\n\n runGenerateReleasePlan(tmpDir);\n\n const planPath = path.join(tmpDir, 'release', 'plan.md');\n const plan = fs.readFileSync(planPath, 'utf8');\n const releases = parsePlanIntentReleaseMap(plan);\n\n const f001 = releases.get('F-001');\n const f002 = releases.get('F-002');\n expect(f001).toBeTypeOf('number');\n expect(f002).toBeTypeOf('number');\n if (typeof f001 !== 'number' || typeof f002 !== 'number') {\n throw new Error('Expected both F-001 and F-002 to appear in release/plan.md');\n }\n expect(f002).toBeLessThanOrEqual(f001);\n });\n});\n"},"tests/routes/hello.test.ts":{"tests":[{"id":"3","name":"Hello Endpoint should return JSON with message \"Hello, World!\""},{"id":"4","name":"Hello Endpoint should respond in less than 200ms"}],"source":"import { describe, it, expect } from 'vitest';\nimport { createHelloHandler } from '../../src/routes/hello';\nimport { IncomingMessage, ServerResponse } from 'http';\n\ndescribe('Hello Endpoint', () => {\n it('should return JSON with message \"Hello, World!\"', () => {\n const handler = createHelloHandler();\n const mockRequest = {} as IncomingMessage;\n let responseBody = '';\n const mockResponse = {\n statusCode: 0,\n headers: {} as Record<"+"string, string>,\n writeHead: function (status: number, headers: Record<"+"string, string>) {\n this.statusCode = status;\n Object.assign(this.headers, headers);\n return this;\n },\n end: function (body: string) {\n responseBody = body;\n return this;\n },\n } as unknown as ServerResponse;\n\n handler(mockRequest, mockResponse);\n\n expect(mockResponse.statusCode).toBe(200);\n expect(mockResponse.headers['Content-Type']).toBe('application/json');\n const parsed = JSON.parse(responseBody);\n expect(parsed).toEqual({ message: 'Hello, World!' });\n });\n\n it('should respond in less than 200ms', () => {\n const handler = createHelloHandler();\n const mockRequest = {} as IncomingMessage;\n const mockResponse = {\n statusCode: 0,\n headers: {} as Record<"+"string, string>,\n writeHead: function (status: number, headers: Record<"+"string, string>) {\n this.statusCode = status;\n Object.assign(this.headers, headers);\n return this;\n },\n end: function () {\n return this;\n },\n } as unknown as ServerResponse;\n\n const start = Date.now();\n handler(mockRequest, mockResponse);\n const duration = Date.now() - start;\n\n expect(duration).toBeLessThan(200);\n });\n});\n"}},"projectRoot":"/Users/nicklaprell/Workspace/Agents","config":{"$schema":"./node_modules/@stryker-mutator/core/schema/stryker-schema.json","testRunner":"vitest","plugins":["@stryker-mutator/vitest-runner"],"reporters":["progress","clear-text","html"],"mutate":["src/**/*.ts"],"coverageAnalysis":"off","allowConsoleColors":true,"checkers":[],"checkerNodeArgs":[],"commandRunner":{"command":"npm test"},"clearTextReporter":{"allowColor":true,"allowEmojis":false,"logTests":true,"maxTestsToLog":3,"reportTests":true,"reportMutants":true,"reportScoreTable":true,"skipFull":false},"dashboard":{"baseUrl":"https://dashboard.stryker-mutator.io/api/reports","reportType":"full"},"dryRunOnly":false,"eventReporter":{"baseDir":"reports/mutation/events"},"ignorePatterns":[],"ignoreStatic":false,"incremental":false,"incrementalFile":"reports/stryker-incremental.json","force":false,"fileLogLevel":"off","inPlace":false,"logLevel":"info","maxConcurrentTestRunners":9007199254740991,"maxTestRunnerReuse":0,"mutator":{"plugins":null,"excludedMutations":[]},"appendPlugins":[],"htmlReporter":{"fileName":"reports/mutation/mutation.html"},"jsonReporter":{"fileName":"reports/mutation/mutation.json"},"disableTypeChecks":true,"symlinkNodeModules":true,"tempDirName":".stryker-tmp","cleanTempDir":true,"testRunnerNodeArgs":[],"thresholds":{"high":80,"low":60,"break":null},"timeoutFactor":1.5,"timeoutMS":5000,"dryRunTimeoutMinutes":5,"tsconfigFile":"tsconfig.json","warnings":true,"disableBail":false,"allowEmpty":false,"ignorers":[],"vitest":{}},"framework":{"name":"StrykerJS","version":"8.7.1","branding":{"homepageUrl":"https://stryker-mutator.io","imageUrl":"data:image/svg+xml;utf8,%3Csvg viewBox='0 0 1458 1458' xmlns='http://www.w3.org/2000/svg' fill-rule='evenodd' clip-rule='evenodd' stroke-linejoin='round' stroke-miterlimit='2'%3E%3Cpath fill='none' d='M0 0h1458v1458H0z'/%3E%3CclipPath id='a'%3E%3Cpath d='M0 0h1458v1458H0z'/%3E%3C/clipPath%3E%3Cg clip-path='url(%23a)'%3E%3Cpath d='M1458 729c0 402.655-326.345 729-729 729S0 1131.655 0 729C0 326.445 326.345 0 729 0s729 326.345 729 729' fill='%23e74c3c' fill-rule='nonzero'/%3E%3Cpath d='M778.349 1456.15L576.6 1254.401l233-105 85-78.668v-64.332l-257-257-44-187-50-208 251.806-82.793L1076.6 389.401l380.14 379.15c-19.681 367.728-311.914 663.049-678.391 687.599z' fill-opacity='.3'/%3E%3Cpath d='M753.4 329.503c41.79 0 74.579 7.83 97.925 25.444 23.571 18.015 41.69 43.956 55.167 77.097l11.662 28.679 165.733-58.183-14.137-32.13c-26.688-60.655-64.896-108.61-114.191-144.011-49.329-35.423-117.458-54.302-204.859-54.302-50.78 0-95.646 7.376-134.767 21.542-40.093 14.671-74.09 34.79-102.239 60.259-28.84 26.207-50.646 57.06-65.496 92.701-14.718 35.052-22.101 72.538-22.101 112.401 0 72.536 20.667 133.294 61.165 182.704 38.624 47.255 98.346 88.037 179.861 121.291 42.257 17.475 78.715 33.125 109.227 46.994 27.193 12.361 49.294 26.124 66.157 41.751 15.309 14.186 26.497 30.584 33.63 49.258 7.721 20.214 11.16 45.69 11.16 76.402 0 28.021-4.251 51.787-13.591 71.219-8.832 18.374-20.171 33.178-34.523 44.219-14.787 11.374-31.193 19.591-49.393 24.466-19.68 5.359-39.14 7.993-58.69 7.993-29.359 0-54.387-3.407-75.182-10.747-20.112-7.013-37.144-16.144-51.259-27.486-13.618-11.009-24.971-23.766-33.744-38.279-9.64-15.8-17.272-31.924-23.032-48.408l-10.965-31.376-161.669 60.585 10.734 30.124c10.191 28.601 24.197 56.228 42.059 82.748 18.208 27.144 41.322 51.369 69.525 72.745 27.695 21.075 60.904 38.218 99.481 51.041 37.777 12.664 82.004 19.159 132.552 19.159 49.998 0 95.818-8.321 137.611-24.622 42.228-16.471 78.436-38.992 108.835-67.291 30.719-28.597 54.631-62.103 71.834-100.642 17.263-38.56 25.923-79.392 25.923-122.248 0-54.339-8.368-100.37-24.208-138.32-16.29-38.759-38.252-71.661-65.948-98.797-26.965-26.418-58.269-48.835-93.858-67.175-33.655-17.241-69.196-33.11-106.593-47.533-35.934-13.429-65.822-26.601-89.948-39.525-22.153-11.868-40.009-24.21-53.547-37.309-11.429-11.13-19.83-23.678-24.718-37.664-5.413-15.49-7.98-33.423-7.98-53.577 0-40.883 11.293-71.522 37.086-90.539 28.443-20.825 64.985-30.658 109.311-30.658z' fill='%23f1c40f' fill-rule='nonzero'/%3E%3Cpath d='M720 0h18v113h-18zM1458 738v-18h-113v18h113zM720 1345h18v113h-18zM113 738v-18H0v18h113z'/%3E%3C/g%3E%3C/svg%3E"},"dependencies":{"typescript":"5.9.3"}}};
|
|
485
|
+
function updateTheme() {
|
|
486
|
+
document.body.style.backgroundColor = app.themeBackgroundColor;
|
|
487
|
+
}
|
|
488
|
+
app.addEventListener('theme-changed', updateTheme);
|
|
489
|
+
updateTheme();
|
|
490
|
+
</script>
|
|
491
|
+
</body>
|
|
492
|
+
</html>
|