toshiki-notebook/assets/application_vitepress-plugin-shiki-twoslash_api_annotations.md.12240143.js

95 lines
34 KiB
JavaScript
Raw Blame History

This file contains invisible Unicode characters

This file contains invisible Unicode characters that are indistinguishable to humans but may be processed differently by a computer. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

import{_ as r,c as n,z as s,E as e,B as p,a,R as o,G as c,o as t}from"./chunks/framework.ade46834.js";const Oo=JSON.parse('{"title":"Meta Annotations","description":"Annotations provide a way to provide outside commentary on your code.","frontmatter":{"description":"Annotations provide a way to provide outside commentary on your code.","title":"Meta Annotations"},"headers":[],"relativePath":"application/vitepress-plugin-shiki-twoslash/api/annotations.md","filePath":"application/vitepress-plugin-shiki-twoslash/api/annotations.md","lastUpdated":1694655530000}'),i={name:"application/vitepress-plugin-shiki-twoslash/api/annotations.md"},d=s("h1",{id:"queries",tabindex:"-1"},[a("Queries "),s("a",{class:"header-anchor",href:"#queries","aria-label":'Permalink to "Queries"'},"")],-1),_=s("p",null,"Sometimes the thing you want to say is about the code, annotations provide a way to provide outside commentary on your code.",-1),y=s("h2",{id:"annotate-left-right-overrides-text",tabindex:"-1"},[s("code",null,"@annotate: [left|right] [overrides] - [text]"),a(),s("a",{class:"header-anchor",href:"#annotate-left-right-overrides-text","aria-label":'Permalink to "`@annotate: [left|right] [overrides] - [text]`"'},"")],-1),h=s("p",null,"Annotate has a lot more controls than most of the other Twoslash commands, because each use of it probably needs to feel a bit different. Here's an example based on the TypeScript home page, click it to get it running so we can talk about what it does:",-1),u={class:"vp-code-group vp-adaptive-theme"},m=o('<div class="tabs"><input type="radio" name="group-0kIUP" id="tab-EoJQAaE" checked="checked"><label for="tab-EoJQAaE">output</label><input type="radio" name="group-0kIUP" id="tab-KvRP1xM"><label for="tab-KvRP1xM">markdown</label></div>',1),g={class:"blocks"},B={class:"language-ts vp-adaptive-theme active line-numbers-mode"},v=s("button",{title:"Copy Code",class:"copy"},null,-1),b=s("span",{class:"lang"},"ts",-1),f={class:"language-ts"},D={class:"tag-container"},T={class:"shiki solarized-dark twoslash lsp",style:{"background-color":"#002B36",color:"#839496"},active:"true"},w=s("div",{class:"language-id"},"ts",-1),A={class:"code-container"},q=s("div",{class:"line"},[s("span",{style:{color:"#93A1A1"}},"function"),s("span",{style:{color:"#839496"}}," "),s("span",{style:{color:"#268BD2"}},[s("data-lsp",{lsp:"function compact(arr: any): any"},"compact")]),s("span",{style:{color:"#839496"}},[a("("),s("data-lsp",{lsp:"(parameter) arr: any"},"arr"),a(") {")])],-1),C={class:"line"},x=s("span",{style:{color:"#839496"}}," ",-1),k=s("span",{style:{color:"#859900"}},"if",-1),S=s("span",{style:{color:"#839496"}}," (",-1),P={style:{color:"#268BD2"}},I=s("data-lsp",{lsp:"any"},"orr",-1),E=s("span",{style:{color:"#839496"}},[a("."),s("data-lsp",{lsp:"any"},"length"),a()],-1),V=o('<span style="color:#859900;">&gt;</span><span style="color:#839496;"> </span><span style="color:#D33682;">10</span><span style="color:#839496;">) </span><span style="color:#859900;">return</span><span style="color:#839496;"> </span>',6),R=s("span",{style:{color:"#268BD2"}},[s("data-lsp",{lsp:"(parameter) arr: any"},"arr")],-1),N=s("span",{style:{color:"#839496"}},".",-1),M=s("span",{style:{color:"#268BD2"}},[s("data-lsp",{lsp:"any"},"trim")],-1),z=o('<span style="color:#839496;">(</span><span style="color:#D33682;">0</span><span style="color:#839496;">, </span><span style="color:#D33682;">10</span><span style="color:#839496;">)</span>',5),L=s("span",{class:"error"},[s("span",null,"Cannot find name 'orr'."),s("span",{class:"code"},"2304")],-1),F=s("span",{class:"error-behind"},"Cannot find name 'orr'.",-1),O=s("div",{class:"line"},[s("span",{style:{color:"#839496"}}," "),s("span",{style:{color:"#859900"}},"return"),s("span",{style:{color:"#839496"}}," "),s("span",{style:{color:"#268BD2"}},[s("data-lsp",{lsp:"(parameter) arr: any"},"arr")])],-1),J=s("div",{class:"line"},[s("span",{style:{color:"#839496"}},"}")],-1),Q={class:"twoslash-annotation left",style:{top:"0rem"}},X={style:{transform:"translateX(8px) translateY(27px) rotate(90deg)"},width:"40",height:"40",viewBox:"0 0 40 40",fill:"none",xmlns:"http://www.w3.org/2000/svg"},Y=s("path",{d:"M1 39C1.5 32.7511 6.1 17.5173 20.5 6.57333M11.5 4.04L27 0.999998C24.8333 4.88444 20.5 13.16 20.5 15.1867",stroke:"black"},null,-1),H=s("p",{class:"twoslash-annotation-text",style:{transform:"rotate(3deg)"}},"Discovered a typo, the param is arr, not orr!",-1),K={class:"tag-container"},U={class:"shiki solarized-light twoslash lsp",style:{"background-color":"#FDF6E3",color:"#657B83"},active:"true"},$=s("div",{class:"language-id"},"ts",-1),j={class:"code-container"},G=s("div",{class:"line"},[s("span",{style:{color:"#586E75"}},"function"),s("span",{style:{color:"#657B83"}}," "),s("span",{style:{color:"#268BD2"}},[s("data-lsp",{lsp:"function compact(arr: any): any"},"compact")]),s("span",{style:{color:"#657B83"}},[a("("),s("data-lsp",{lsp:"(parameter) arr: any"},"arr"),a(") {")])],-1),W={class:"line"},Z=s("span",{style:{color:"#657B83"}}," ",-1),ss=s("span",{style:{color:"#859900"}},"if",-1),as=s("span",{style:{color:"#657B83"}}," (",-1),os={style:{color:"#268BD2"}},ns=s("data-lsp",{lsp:"any"},"orr",-1),ts=s("span",{style:{color:"#657B83"}},[a("."),s("data-lsp",{lsp:"any"},"length"),a()],-1),ls=o('<span style="color:#859900;">&gt;</span><span style="color:#657B83;"> </span><span style="color:#D33682;">10</span><span style="color:#657B83;">) </span><span style="color:#859900;">return</span><span style="color:#657B83;"> </span>',6),es=s("span",{style:{color:"#268BD2"}},[s("data-lsp",{lsp:"(parameter) arr: any"},"arr")],-1),ps=s("span",{style:{color:"#657B83"}},".",-1),rs=s("span",{style:{color:"#268BD2"}},[s("data-lsp",{lsp:"any"},"trim")],-1),cs=o('<span style="color:#657B83;">(</span><span style="color:#D33682;">0</span><span style="color:#657B83;">, </span><span style="color:#D33682;">10</span><span style="color:#657B83;">)</span>',5),is=s("span",{class:"error"},[s("span",null,"Cannot find name 'orr'."),s("span",{class:"code"},"2304")],-1),ds=s("span",{class:"error-behind"},"Cannot find name 'orr'.",-1),_s=s("div",{class:"line"},[s("span",{style:{color:"#657B83"}}," "),s("span",{style:{color:"#859900"}},"return"),s("span",{style:{color:"#657B83"}}," "),s("span",{style:{color:"#268BD2"}},[s("data-lsp",{lsp:"(parameter) arr: any"},"arr")])],-1),ys=s("div",{class:"line"},[s("span",{style:{color:"#657B83"}},"}")],-1),hs={class:"twoslash-annotation left",style:{top:"0rem"}},us={style:{transform:"translateX(8px) translateY(27px) rotate(90deg)"},width:"40",height:"40",viewBox:"0 0 40 40",fill:"none",xmlns:"http://www.w3.org/2000/svg"},ms=s("path",{d:"M1 39C1.5 32.7511 6.1 17.5173 20.5 6.57333M11.5 4.04L27 0.999998C24.8333 4.88444 20.5 13.16 20.5 15.1867",stroke:"black"},null,-1),gs=s("p",{class:"twoslash-annotation-text",style:{transform:"rotate(3deg)"}},"Discovered a typo, the param is arr, not orr!",-1),Bs=s("div",{class:"line-numbers-wrapper","aria-hidden":"true"},[s("span",{class:"line-number"},"1"),s("br")],-1),vs=o(`<div class="language-md vp-adaptive-theme line-numbers-mode"><button title="Copy Code" class="copy"></button><span class="lang">md</span><pre class="shiki solarized-dark vp-code-dark"><code><span class="line"><span style="color:#839496;">\`\`\`ts twoslash</span></span>
<span class="line"><span style="color:#586E75;font-style:italic;">// @errors: 2304</span></span>
<span class="line"><span style="color:#586E75;font-style:italic;">// @strict: false</span></span>
<span class="line"></span>
<span class="line"><span style="color:#93A1A1;font-weight:bold;">function</span><span style="color:#839496;"> </span><span style="color:#268BD2;">compact</span><span style="color:#839496;">(arr) {</span></span>
<span class="line"><span style="color:#839496;"> </span><span style="color:#859900;">if</span><span style="color:#839496;"> (</span><span style="color:#268BD2;">orr</span><span style="color:#839496;">.length </span><span style="color:#859900;">&gt;</span><span style="color:#839496;"> </span><span style="color:#D33682;">10</span><span style="color:#839496;">) </span><span style="color:#859900;">return</span><span style="color:#839496;"> </span><span style="color:#268BD2;">arr</span><span style="color:#839496;">.</span><span style="color:#268BD2;">trim</span><span style="color:#839496;">(</span><span style="color:#D33682;">0</span><span style="color:#839496;">, </span><span style="color:#D33682;">10</span><span style="color:#839496;">)</span></span>
<span class="line"><span style="color:#839496;"> </span><span style="color:#859900;">return</span><span style="color:#839496;"> </span><span style="color:#268BD2;">arr</span></span>
<span class="line"><span style="color:#839496;">}</span></span>
<span class="line"><span style="color:#586E75;font-style:italic;">// @annotate: left { &quot;arrowRot&quot;: &quot;90deg 8px 27px&quot;, &quot;textDegree&quot;: &quot;3deg&quot;, &quot;top&quot;: &quot;0rem&quot; } - Discovered a typo, the param is arr, not orr!</span></span>
<span class="line"><span style="color:#839496;">\`\`\`</span></span></code></pre><pre class="shiki solarized-light vp-code-light"><code><span class="line"><span style="color:#657B83;">\`\`\`ts twoslash</span></span>
<span class="line"><span style="color:#93A1A1;font-style:italic;">// @errors: 2304</span></span>
<span class="line"><span style="color:#93A1A1;font-style:italic;">// @strict: false</span></span>
<span class="line"></span>
<span class="line"><span style="color:#586E75;font-weight:bold;">function</span><span style="color:#657B83;"> </span><span style="color:#268BD2;">compact</span><span style="color:#657B83;">(arr) {</span></span>
<span class="line"><span style="color:#657B83;"> </span><span style="color:#859900;">if</span><span style="color:#657B83;"> (</span><span style="color:#268BD2;">orr</span><span style="color:#657B83;">.length </span><span style="color:#859900;">&gt;</span><span style="color:#657B83;"> </span><span style="color:#D33682;">10</span><span style="color:#657B83;">) </span><span style="color:#859900;">return</span><span style="color:#657B83;"> </span><span style="color:#268BD2;">arr</span><span style="color:#657B83;">.</span><span style="color:#268BD2;">trim</span><span style="color:#657B83;">(</span><span style="color:#D33682;">0</span><span style="color:#657B83;">, </span><span style="color:#D33682;">10</span><span style="color:#657B83;">)</span></span>
<span class="line"><span style="color:#657B83;"> </span><span style="color:#859900;">return</span><span style="color:#657B83;"> </span><span style="color:#268BD2;">arr</span></span>
<span class="line"><span style="color:#657B83;">}</span></span>
<span class="line"><span style="color:#93A1A1;font-style:italic;">// @annotate: left { &quot;arrowRot&quot;: &quot;90deg 8px 27px&quot;, &quot;textDegree&quot;: &quot;3deg&quot;, &quot;top&quot;: &quot;0rem&quot; } - Discovered a typo, the param is arr, not orr!</span></span>
<span class="line"><span style="color:#657B83;">\`\`\`</span></span></code></pre><div class="line-numbers-wrapper" aria-hidden="true"><span class="line-number">1</span><br><span class="line-number">2</span><br><span class="line-number">3</span><br><span class="line-number">4</span><br><span class="line-number">5</span><br><span class="line-number">6</span><br><span class="line-number">7</span><br><span class="line-number">8</span><br><span class="line-number">9</span><br><span class="line-number">10</span><br></div></div>`,1),bs=o("<p>First up, cool — it adds some text to the left hand side of the code. It features quite a few different options, so lets go through them one by one:</p><ul><li><p><code>left</code> or <code>right</code>: It&#39;s currently <code>left</code>. It&#39;s worth noting the arrow flips also, and <code>90deg</code> isn&#39;t a great option. Let&#39;s look at that next.</p></li><li><p><code>{ &quot;arrrowRot&quot;: &quot;90deg 8px 27px&quot; }</code> - This JSON object is used to manipulate the annotation, you have 3 controls for arrow positioning and rotation: <code>degrees x y</code>. I recommend keeping those in degrees and px, but it&#39;s your life. These are overrides from defaults which are okay, but not really something you ever want to ship.</p></li><li><p><code>{ &quot;textDegree&quot;: &quot;3deg&quot; }</code> - Rotates the text, you probably want something between <code>-3deg</code> and <code>3deg</code>. Optional, defaults to <code>0</code>.</p></li><li><p><code>{ &quot;top&quot;: &quot;0rem&quot; }</code> - Sets the y coordinates for the annotation relative to the code sample, if it&#39;s not included then it becomes <code>[lineNum]rem</code>.</p></li></ul><p>What&#39;s not included in this sample is <code>flipped</code>, which can be used to flip the arrow&#39;s orientation. Here&#39;s some examples:</p><p>A horizontal right example:</p>",4),fs={class:"vp-code-group vp-adaptive-theme"},Ds=o('<div class="tabs"><input type="radio" name="group-LNBWB" id="tab-cOssjDJ" checked="checked"><label for="tab-cOssjDJ">output</label><input type="radio" name="group-LNBWB" id="tab-LAO2hCM"><label for="tab-LAO2hCM">markdown</label></div>',1),Ts={class:"blocks"},ws={class:"language-ts vp-adaptive-theme active line-numbers-mode"},As=s("button",{title:"Copy Code",class:"copy"},null,-1),qs=s("span",{class:"lang"},"ts",-1),Cs={class:"language-ts"},xs={class:"tag-container"},ks={class:"shiki solarized-dark twoslash lsp",style:{"background-color":"#002B36",color:"#839496"},active:"true"},Ss=s("div",{class:"language-id"},"ts",-1),Ps={class:"code-container"},Is=s("div",{class:"line"},[s("span",{style:{color:"#93A1A1"}},"function"),s("span",{style:{color:"#839496"}}," "),s("span",{style:{color:"#268BD2"}},[s("data-lsp",{lsp:"function compact(arr: any): any"},"compact")]),s("span",{style:{color:"#839496"}},[a("("),s("data-lsp",{lsp:"(parameter) arr: any"},"arr"),a(") {")])],-1),Es={class:"line"},Vs=s("span",{style:{color:"#839496"}}," ",-1),Rs=s("span",{style:{color:"#859900"}},"if",-1),Ns=s("span",{style:{color:"#839496"}}," (",-1),Ms={style:{color:"#268BD2"}},zs=s("data-lsp",{lsp:"any"},"orr",-1),Ls=s("span",{style:{color:"#839496"}},[a("."),s("data-lsp",{lsp:"any"},"length"),a()],-1),Fs=o('<span style="color:#859900;">&gt;</span><span style="color:#839496;"> </span><span style="color:#D33682;">10</span><span style="color:#839496;">) </span><span style="color:#859900;">return</span><span style="color:#839496;"> </span>',6),Os=s("span",{style:{color:"#268BD2"}},[s("data-lsp",{lsp:"(parameter) arr: any"},"arr")],-1),Js=s("span",{style:{color:"#839496"}},".",-1),Qs=s("span",{style:{color:"#268BD2"}},[s("data-lsp",{lsp:"any"},"trim")],-1),Xs=o('<span style="color:#839496;">(</span><span style="color:#D33682;">0</span><span style="color:#839496;">, </span><span style="color:#D33682;">10</span><span style="color:#839496;">)</span>',5),Ys=s("span",{class:"error"},[s("span",null,"Cannot find name 'orr'."),s("span",{class:"code"},"2304")],-1),Hs=s("span",{class:"error-behind"},"Cannot find name 'orr'.",-1),Ks=s("div",{class:"line"},[s("span",{style:{color:"#839496"}}," "),s("span",{style:{color:"#859900"}},"return"),s("span",{style:{color:"#839496"}}," "),s("span",{style:{color:"#268BD2"}},[s("data-lsp",{lsp:"(parameter) arr: any"},"arr")])],-1),Us=s("div",{class:"line"},[s("span",{style:{color:"#839496"}},"}")],-1),$s={class:"twoslash-annotation right",style:{top:"3rem"}},js={style:{transform:"translateX(-10px) translateY(-10px) rotate(-50deg)"},width:"40",height:"40",viewBox:"0 0 40 40",fill:"none",xmlns:"http://www.w3.org/2000/svg"},Gs=s("path",{d:"M27 39C26.5 32.7511 21.9 17.5173 7.5 6.57333M16.5 4.04L0.999999 0.999998C3.16667 4.88444 7.5 13.16 7.5 15.1867",stroke:"black"},null,-1),Ws=s("p",{class:"twoslash-annotation-text",style:{transform:"rotate(0deg)"}},"Discovered a typo, the param is arr, not orr!",-1),Zs={class:"tag-container"},sa={class:"shiki solarized-light twoslash lsp",style:{"background-color":"#FDF6E3",color:"#657B83"},active:"true"},aa=s("div",{class:"language-id"},"ts",-1),oa={class:"code-container"},na=s("div",{class:"line"},[s("span",{style:{color:"#586E75"}},"function"),s("span",{style:{color:"#657B83"}}," "),s("span",{style:{color:"#268BD2"}},[s("data-lsp",{lsp:"function compact(arr: any): any"},"compact")]),s("span",{style:{color:"#657B83"}},[a("("),s("data-lsp",{lsp:"(parameter) arr: any"},"arr"),a(") {")])],-1),ta={class:"line"},la=s("span",{style:{color:"#657B83"}}," ",-1),ea=s("span",{style:{color:"#859900"}},"if",-1),pa=s("span",{style:{color:"#657B83"}}," (",-1),ra={style:{color:"#268BD2"}},ca=s("data-lsp",{lsp:"any"},"orr",-1),ia=s("span",{style:{color:"#657B83"}},[a("."),s("data-lsp",{lsp:"any"},"length"),a()],-1),da=o('<span style="color:#859900;">&gt;</span><span style="color:#657B83;"> </span><span style="color:#D33682;">10</span><span style="color:#657B83;">) </span><span style="color:#859900;">return</span><span style="color:#657B83;"> </span>',6),_a=s("span",{style:{color:"#268BD2"}},[s("data-lsp",{lsp:"(parameter) arr: any"},"arr")],-1),ya=s("span",{style:{color:"#657B83"}},".",-1),ha=s("span",{style:{color:"#268BD2"}},[s("data-lsp",{lsp:"any"},"trim")],-1),ua=o('<span style="color:#657B83;">(</span><span style="color:#D33682;">0</span><span style="color:#657B83;">, </span><span style="color:#D33682;">10</span><span style="color:#657B83;">)</span>',5),ma=s("span",{class:"error"},[s("span",null,"Cannot find name 'orr'."),s("span",{class:"code"},"2304")],-1),ga=s("span",{class:"error-behind"},"Cannot find name 'orr'.",-1),Ba=s("div",{class:"line"},[s("span",{style:{color:"#657B83"}}," "),s("span",{style:{color:"#859900"}},"return"),s("span",{style:{color:"#657B83"}}," "),s("span",{style:{color:"#268BD2"}},[s("data-lsp",{lsp:"(parameter) arr: any"},"arr")])],-1),va=s("div",{class:"line"},[s("span",{style:{color:"#657B83"}},"}")],-1),ba={class:"twoslash-annotation right",style:{top:"3rem"}},fa={style:{transform:"translateX(-10px) translateY(-10px) rotate(-50deg)"},width:"40",height:"40",viewBox:"0 0 40 40",fill:"none",xmlns:"http://www.w3.org/2000/svg"},Da=s("path",{d:"M27 39C26.5 32.7511 21.9 17.5173 7.5 6.57333M16.5 4.04L0.999999 0.999998C3.16667 4.88444 7.5 13.16 7.5 15.1867",stroke:"black"},null,-1),Ta=s("p",{class:"twoslash-annotation-text",style:{transform:"rotate(0deg)"}},"Discovered a typo, the param is arr, not orr!",-1),wa=s("div",{class:"line-numbers-wrapper","aria-hidden":"true"},[s("span",{class:"line-number"},"1"),s("br")],-1),Aa=o(`<div class="language-md vp-adaptive-theme line-numbers-mode"><button title="Copy Code" class="copy"></button><span class="lang">md</span><pre class="shiki solarized-dark vp-code-dark"><code><span class="line"><span style="color:#839496;">\`\`\`ts twoslash</span></span>
<span class="line"><span style="color:#586E75;font-style:italic;">// @errors: 2304</span></span>
<span class="line"><span style="color:#586E75;font-style:italic;">// @strict: false</span></span>
<span class="line"></span>
<span class="line"><span style="color:#93A1A1;font-weight:bold;">function</span><span style="color:#839496;"> </span><span style="color:#268BD2;">compact</span><span style="color:#839496;">(arr) {</span></span>
<span class="line"><span style="color:#839496;"> </span><span style="color:#859900;">if</span><span style="color:#839496;"> (</span><span style="color:#268BD2;">orr</span><span style="color:#839496;">.length </span><span style="color:#859900;">&gt;</span><span style="color:#839496;"> </span><span style="color:#D33682;">10</span><span style="color:#839496;">) </span><span style="color:#859900;">return</span><span style="color:#839496;"> </span><span style="color:#268BD2;">arr</span><span style="color:#839496;">.</span><span style="color:#268BD2;">trim</span><span style="color:#839496;">(</span><span style="color:#D33682;">0</span><span style="color:#839496;">, </span><span style="color:#D33682;">10</span><span style="color:#839496;">)</span></span>
<span class="line"><span style="color:#839496;"> </span><span style="color:#859900;">return</span><span style="color:#839496;"> </span><span style="color:#268BD2;">arr</span></span>
<span class="line"><span style="color:#839496;">}</span></span>
<span class="line"><span style="color:#586E75;font-style:italic;">// @annotate: left { &quot;arrowRot&quot;: &quot;90deg 8px 27px&quot;, &quot;textDegree&quot;: &quot;3deg&quot;, &quot;top&quot;: &quot;0rem&quot; } - Discovered a typo, the param is arr, not orr!</span></span>
<span class="line"><span style="color:#839496;">\`\`\`</span></span></code></pre><pre class="shiki solarized-light vp-code-light"><code><span class="line"><span style="color:#657B83;">\`\`\`ts twoslash</span></span>
<span class="line"><span style="color:#93A1A1;font-style:italic;">// @errors: 2304</span></span>
<span class="line"><span style="color:#93A1A1;font-style:italic;">// @strict: false</span></span>
<span class="line"></span>
<span class="line"><span style="color:#586E75;font-weight:bold;">function</span><span style="color:#657B83;"> </span><span style="color:#268BD2;">compact</span><span style="color:#657B83;">(arr) {</span></span>
<span class="line"><span style="color:#657B83;"> </span><span style="color:#859900;">if</span><span style="color:#657B83;"> (</span><span style="color:#268BD2;">orr</span><span style="color:#657B83;">.length </span><span style="color:#859900;">&gt;</span><span style="color:#657B83;"> </span><span style="color:#D33682;">10</span><span style="color:#657B83;">) </span><span style="color:#859900;">return</span><span style="color:#657B83;"> </span><span style="color:#268BD2;">arr</span><span style="color:#657B83;">.</span><span style="color:#268BD2;">trim</span><span style="color:#657B83;">(</span><span style="color:#D33682;">0</span><span style="color:#657B83;">, </span><span style="color:#D33682;">10</span><span style="color:#657B83;">)</span></span>
<span class="line"><span style="color:#657B83;"> </span><span style="color:#859900;">return</span><span style="color:#657B83;"> </span><span style="color:#268BD2;">arr</span></span>
<span class="line"><span style="color:#657B83;">}</span></span>
<span class="line"><span style="color:#93A1A1;font-style:italic;">// @annotate: left { &quot;arrowRot&quot;: &quot;90deg 8px 27px&quot;, &quot;textDegree&quot;: &quot;3deg&quot;, &quot;top&quot;: &quot;0rem&quot; } - Discovered a typo, the param is arr, not orr!</span></span>
<span class="line"><span style="color:#657B83;">\`\`\`</span></span></code></pre><div class="line-numbers-wrapper" aria-hidden="true"><span class="line-number">1</span><br><span class="line-number">2</span><br><span class="line-number">3</span><br><span class="line-number">4</span><br><span class="line-number">5</span><br><span class="line-number">6</span><br><span class="line-number">7</span><br><span class="line-number">8</span><br><span class="line-number">9</span><br><span class="line-number">10</span><br></div></div>`,1),qa=s("p",null,"Upside down arrow pointing at the error, using flipped to re-flip the arrow:",-1),Ca={class:"vp-code-group vp-adaptive-theme"},xa=o('<div class="tabs"><input type="radio" name="group-gkaSb" id="tab-7briG28" checked="checked"><label for="tab-7briG28">output</label><input type="radio" name="group-gkaSb" id="tab-zQKHPoI"><label for="tab-zQKHPoI">markdown</label></div>',1),ka={class:"blocks"},Sa={class:"language-ts vp-adaptive-theme active line-numbers-mode"},Pa=s("button",{title:"Copy Code",class:"copy"},null,-1),Ia=s("span",{class:"lang"},"ts",-1),Ea={class:"language-ts"},Va={class:"tag-container"},Ra={class:"shiki solarized-dark twoslash lsp",style:{"background-color":"#002B36",color:"#839496"},active:"true"},Na=s("div",{class:"language-id"},"ts",-1),Ma={class:"code-container"},za=s("div",{class:"line"},[s("span",{style:{color:"#93A1A1"}},"function"),s("span",{style:{color:"#839496"}}," "),s("span",{style:{color:"#268BD2"}},[s("data-lsp",{lsp:"function compact(arr: any): any"},"compact")]),s("span",{style:{color:"#839496"}},[a("("),s("data-lsp",{lsp:"(parameter) arr: any"},"arr"),a(") {")])],-1),La={class:"line"},Fa=s("span",{style:{color:"#839496"}}," ",-1),Oa=s("span",{style:{color:"#859900"}},"if",-1),Ja=s("span",{style:{color:"#839496"}}," (",-1),Qa={style:{color:"#268BD2"}},Xa=s("data-lsp",{lsp:"any"},"orr",-1),Ya=s("span",{style:{color:"#839496"}},[a("."),s("data-lsp",{lsp:"any"},"length"),a()],-1),Ha=o('<span style="color:#859900;">&gt;</span><span style="color:#839496;"> </span><span style="color:#D33682;">10</span><span style="color:#839496;">) </span><span style="color:#859900;">return</span><span style="color:#839496;"> </span>',6),Ka=s("span",{style:{color:"#268BD2"}},[s("data-lsp",{lsp:"(parameter) arr: any"},"arr")],-1),Ua=s("span",{style:{color:"#839496"}},".",-1),$a=s("span",{style:{color:"#268BD2"}},[s("data-lsp",{lsp:"any"},"trim")],-1),ja=o('<span style="color:#839496;">(</span><span style="color:#D33682;">0</span><span style="color:#839496;">, </span><span style="color:#D33682;">10</span><span style="color:#839496;">)</span>',5),Ga=s("span",{class:"error"},[s("span",null,"Cannot find name 'orr'."),s("span",{class:"code"},"2304")],-1),Wa=s("span",{class:"error-behind"},"Cannot find name 'orr'.",-1),Za=s("div",{class:"line"},[s("span",{style:{color:"#839496"}}," "),s("span",{style:{color:"#859900"}},"return"),s("span",{style:{color:"#839496"}}," "),s("span",{style:{color:"#268BD2"}},[s("data-lsp",{lsp:"(parameter) arr: any"},"arr")])],-1),so=s("div",{class:"line"},[s("span",{style:{color:"#839496"}},"}")],-1),ao={class:"twoslash-annotation right",style:{top:"-0.7rem"}},oo={style:{transform:"translateX(8px) translateY(46px) rotate(190deg)"},width:"40",height:"40",viewBox:"0 0 40 40",fill:"none",xmlns:"http://www.w3.org/2000/svg"},no=s("path",{d:"M1 39C1.5 32.7511 6.1 17.5173 20.5 6.57333M11.5 4.04L27 0.999998C24.8333 4.88444 20.5 13.16 20.5 15.1867",stroke:"black"},null,-1),to=s("p",{class:"twoslash-annotation-text",style:{transform:"rotate(-3deg)"}},"Discovered a typo, the param is arr, not orr!",-1),lo={class:"tag-container"},eo={class:"shiki solarized-light twoslash lsp",style:{"background-color":"#FDF6E3",color:"#657B83"},active:"true"},po=s("div",{class:"language-id"},"ts",-1),ro={class:"code-container"},co=s("div",{class:"line"},[s("span",{style:{color:"#586E75"}},"function"),s("span",{style:{color:"#657B83"}}," "),s("span",{style:{color:"#268BD2"}},[s("data-lsp",{lsp:"function compact(arr: any): any"},"compact")]),s("span",{style:{color:"#657B83"}},[a("("),s("data-lsp",{lsp:"(parameter) arr: any"},"arr"),a(") {")])],-1),io={class:"line"},_o=s("span",{style:{color:"#657B83"}}," ",-1),yo=s("span",{style:{color:"#859900"}},"if",-1),ho=s("span",{style:{color:"#657B83"}}," (",-1),uo={style:{color:"#268BD2"}},mo=s("data-lsp",{lsp:"any"},"orr",-1),go=s("span",{style:{color:"#657B83"}},[a("."),s("data-lsp",{lsp:"any"},"length"),a()],-1),Bo=o('<span style="color:#859900;">&gt;</span><span style="color:#657B83;"> </span><span style="color:#D33682;">10</span><span style="color:#657B83;">) </span><span style="color:#859900;">return</span><span style="color:#657B83;"> </span>',6),vo=s("span",{style:{color:"#268BD2"}},[s("data-lsp",{lsp:"(parameter) arr: any"},"arr")],-1),bo=s("span",{style:{color:"#657B83"}},".",-1),fo=s("span",{style:{color:"#268BD2"}},[s("data-lsp",{lsp:"any"},"trim")],-1),Do=o('<span style="color:#657B83;">(</span><span style="color:#D33682;">0</span><span style="color:#657B83;">, </span><span style="color:#D33682;">10</span><span style="color:#657B83;">)</span>',5),To=s("span",{class:"error"},[s("span",null,"Cannot find name 'orr'."),s("span",{class:"code"},"2304")],-1),wo=s("span",{class:"error-behind"},"Cannot find name 'orr'.",-1),Ao=s("div",{class:"line"},[s("span",{style:{color:"#657B83"}}," "),s("span",{style:{color:"#859900"}},"return"),s("span",{style:{color:"#657B83"}}," "),s("span",{style:{color:"#268BD2"}},[s("data-lsp",{lsp:"(parameter) arr: any"},"arr")])],-1),qo=s("div",{class:"line"},[s("span",{style:{color:"#657B83"}},"}")],-1),Co={class:"twoslash-annotation right",style:{top:"-0.7rem"}},xo={style:{transform:"translateX(8px) translateY(46px) rotate(190deg)"},width:"40",height:"40",viewBox:"0 0 40 40",fill:"none",xmlns:"http://www.w3.org/2000/svg"},ko=s("path",{d:"M1 39C1.5 32.7511 6.1 17.5173 20.5 6.57333M11.5 4.04L27 0.999998C24.8333 4.88444 20.5 13.16 20.5 15.1867",stroke:"black"},null,-1),So=s("p",{class:"twoslash-annotation-text",style:{transform:"rotate(-3deg)"}},"Discovered a typo, the param is arr, not orr!",-1),Po=s("div",{class:"line-numbers-wrapper","aria-hidden":"true"},[s("span",{class:"line-number"},"1"),s("br")],-1),Io=o(`<div class="language-md vp-adaptive-theme line-numbers-mode"><button title="Copy Code" class="copy"></button><span class="lang">md</span><pre class="shiki solarized-dark vp-code-dark"><code><span class="line"><span style="color:#839496;">\`\`\`ts twoslash</span></span>
<span class="line"><span style="color:#586E75;font-style:italic;">// @errors: 2304</span></span>
<span class="line"><span style="color:#586E75;font-style:italic;">// @strict: false</span></span>
<span class="line"></span>
<span class="line"><span style="color:#93A1A1;font-weight:bold;">function</span><span style="color:#839496;"> </span><span style="color:#268BD2;">compact</span><span style="color:#839496;">(arr) {</span></span>
<span class="line"><span style="color:#839496;"> </span><span style="color:#859900;">if</span><span style="color:#839496;"> (</span><span style="color:#268BD2;">orr</span><span style="color:#839496;">.length </span><span style="color:#859900;">&gt;</span><span style="color:#839496;"> </span><span style="color:#D33682;">10</span><span style="color:#839496;">) </span><span style="color:#859900;">return</span><span style="color:#839496;"> </span><span style="color:#268BD2;">arr</span><span style="color:#839496;">.</span><span style="color:#268BD2;">trim</span><span style="color:#839496;">(</span><span style="color:#D33682;">0</span><span style="color:#839496;">, </span><span style="color:#D33682;">10</span><span style="color:#839496;">)</span></span>
<span class="line"><span style="color:#839496;"> </span><span style="color:#859900;">return</span><span style="color:#839496;"> </span><span style="color:#268BD2;">arr</span></span>
<span class="line"><span style="color:#839496;">}</span></span>
<span class="line"><span style="color:#586E75;font-style:italic;">// @annotate: left { &quot;arrowRot&quot;: &quot;90deg 8px 27px&quot;, &quot;textDegree&quot;: &quot;3deg&quot;, &quot;top&quot;: &quot;0rem&quot; } - Discovered a typo, the param is arr, not orr!</span></span>
<span class="line"><span style="color:#839496;">\`\`\`</span></span></code></pre><pre class="shiki solarized-light vp-code-light"><code><span class="line"><span style="color:#657B83;">\`\`\`ts twoslash</span></span>
<span class="line"><span style="color:#93A1A1;font-style:italic;">// @errors: 2304</span></span>
<span class="line"><span style="color:#93A1A1;font-style:italic;">// @strict: false</span></span>
<span class="line"></span>
<span class="line"><span style="color:#586E75;font-weight:bold;">function</span><span style="color:#657B83;"> </span><span style="color:#268BD2;">compact</span><span style="color:#657B83;">(arr) {</span></span>
<span class="line"><span style="color:#657B83;"> </span><span style="color:#859900;">if</span><span style="color:#657B83;"> (</span><span style="color:#268BD2;">orr</span><span style="color:#657B83;">.length </span><span style="color:#859900;">&gt;</span><span style="color:#657B83;"> </span><span style="color:#D33682;">10</span><span style="color:#657B83;">) </span><span style="color:#859900;">return</span><span style="color:#657B83;"> </span><span style="color:#268BD2;">arr</span><span style="color:#657B83;">.</span><span style="color:#268BD2;">trim</span><span style="color:#657B83;">(</span><span style="color:#D33682;">0</span><span style="color:#657B83;">, </span><span style="color:#D33682;">10</span><span style="color:#657B83;">)</span></span>
<span class="line"><span style="color:#657B83;"> </span><span style="color:#859900;">return</span><span style="color:#657B83;"> </span><span style="color:#268BD2;">arr</span></span>
<span class="line"><span style="color:#657B83;">}</span></span>
<span class="line"><span style="color:#93A1A1;font-style:italic;">// @annotate: left { &quot;arrowRot&quot;: &quot;90deg 8px 27px&quot;, &quot;textDegree&quot;: &quot;3deg&quot;, &quot;top&quot;: &quot;0rem&quot; } - Discovered a typo, the param is arr, not orr!</span></span>
<span class="line"><span style="color:#657B83;">\`\`\`</span></span></code></pre><div class="line-numbers-wrapper" aria-hidden="true"><span class="line-number">1</span><br><span class="line-number">2</span><br><span class="line-number">3</span><br><span class="line-number">4</span><br><span class="line-number">5</span><br><span class="line-number">6</span><br><span class="line-number">7</span><br><span class="line-number">8</span><br><span class="line-number">9</span><br><span class="line-number">10</span><br></div></div>`,1);function Eo(Vo,Ro,No,Mo,zo,Lo){const l=c("data-err");return t(),n("div",null,[d,_,y,h,s("div",u,[m,s("div",g,[s("div",B,[v,b,s("pre",null,[s("code",f,[s("div",D,[s("pre",T,[w,s("div",A,[s("code",null,[q,s("div",C,[x,k,S,s("span",P,[e(l,null,{default:p(()=>[I]),_:1})]),E,V,R,N,M,z]),L,F,O,J])])]),a(`
`),s("div",Q,[a(`
`),(t(),n("svg",X,[a(`
`),Y,a(`
`)])),a(`
`),H,a(`
`)])]),a(`
`),s("div",K,[s("pre",U,[$,s("div",j,[s("code",null,[G,s("div",W,[Z,ss,as,s("span",os,[e(l,null,{default:p(()=>[ns]),_:1})]),ts,ls,es,ps,rs,cs]),is,ds,_s,ys])])]),a(`
`),s("div",hs,[a(`
`),(t(),n("svg",us,[a(`
`),ms,a(`
`)])),a(`
`),gs,a(`
`)])])])]),Bs]),vs])]),bs,s("div",fs,[Ds,s("div",Ts,[s("div",ws,[As,qs,s("pre",null,[s("code",Cs,[s("div",xs,[s("pre",ks,[Ss,s("div",Ps,[s("code",null,[Is,s("div",Es,[Vs,Rs,Ns,s("span",Ms,[e(l,null,{default:p(()=>[zs]),_:1})]),Ls,Fs,Os,Js,Qs,Xs]),Ys,Hs,Ks,Us])])]),a(`
`),s("div",$s,[a(`
`),(t(),n("svg",js,[a(`
`),Gs,a(`
`)])),a(`
`),Ws,a(`
`)])]),a(`
`),s("div",Zs,[s("pre",sa,[aa,s("div",oa,[s("code",null,[na,s("div",ta,[la,ea,pa,s("span",ra,[e(l,null,{default:p(()=>[ca]),_:1})]),ia,da,_a,ya,ha,ua]),ma,ga,Ba,va])])]),a(`
`),s("div",ba,[a(`
`),(t(),n("svg",fa,[a(`
`),Da,a(`
`)])),a(`
`),Ta,a(`
`)])])])]),wa]),Aa])]),qa,s("div",Ca,[xa,s("div",ka,[s("div",Sa,[Pa,Ia,s("pre",null,[s("code",Ea,[s("div",Va,[s("pre",Ra,[Na,s("div",Ma,[s("code",null,[za,s("div",La,[Fa,Oa,Ja,s("span",Qa,[e(l,null,{default:p(()=>[Xa]),_:1})]),Ya,Ha,Ka,Ua,$a,ja]),Ga,Wa,Za,so])])]),a(`
`),s("div",ao,[a(`
`),(t(),n("svg",oo,[a(`
`),no,a(`
`)])),a(`
`),to,a(`
`)])]),a(`
`),s("div",lo,[s("pre",eo,[po,s("div",ro,[s("code",null,[co,s("div",io,[_o,yo,ho,s("span",uo,[e(l,null,{default:p(()=>[mo]),_:1})]),go,Bo,vo,bo,fo,Do]),To,wo,Ao,qo])])]),a(`
`),s("div",Co,[a(`
`),(t(),n("svg",xo,[a(`
`),ko,a(`
`)])),a(`
`),So,a(`
`)])])])]),Po]),Io])])])}const Jo=r(i,[["render",Eo]]);export{Oo as __pageData,Jo as default};