svelte-typecheck 0.1.4 → 0.1.5
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/README.md +1 -0
- package/cli.js +2 -2
- package/index.js +1 -1
- package/package.json +1 -1
- package/{shared-82qr6q6f.js → shared-0bqrrt0s.js} +3 -3
- package/shared-hmmvdprg.js +1 -0
- package/shared-zgnhwdjy.js +2 -0
- package/shims/shims.d.ts +8 -0
- package/shared-m8wdjzat.js +0 -1
- package/shared-w4h7jdyd.js +0 -2
package/README.md
CHANGED
|
@@ -132,6 +132,7 @@ What svelte-typecheck does that svelte-check doesn't:
|
|
|
132
132
|
- **A syntax error in a TS or JS file** stops `tsc` and the other CLI checkers from type-checking at all, so only syntax errors are reported until it's fixed; svelte-check's language service reports the type errors in other files too. A component's syntax errors don't do this.
|
|
133
133
|
- **Svelte 3 and 4 with `lang="ts"` and no preprocessors**: svelte-check strips the types with a fallback preprocessor and reports the compiler's warnings; here the compiler can't read the script, so there are none.
|
|
134
134
|
- **`--out-dir` outside the project** can't find its packages from the generated code; the default is inside `node_modules`.
|
|
135
|
+
- **`<svelte:element this={tag}>` whose tag may be any element**, such as a component's generic `Tag extends keyof HTMLElementTagNameMap`: svelte-check reports TypeScript's "union type too complex" and checks none of the element's attributes; here its attributes are checked as an element's. An attribute error on it names the attributes' type with the tag widened: `keyof HTMLElementTagNameMap extends Tag ? string : Tag`.
|
|
135
136
|
|
|
136
137
|
### API
|
|
137
138
|
|
package/cli.js
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
#!/usr/bin/env node
|
|
2
|
-
import"./shared-
|
|
2
|
+
import"./shared-zgnhwdjy.js";import{EmitError,typecheck2,watch2,createBaseline2,applyBaseline2}from"./shared-0bqrrt0s.js";import{readFileSync as readFileSync2,writeFileSync}from"node:fs";import{resolve}from"node:path";import{parseArgs}from"node:util";import{readFileSync}from"node:fs";import{relative,sep}from"node:path";var OUTPUT_FORMATS=["human","human-verbose","machine","machine-verbose"];function colors(force){let env=process.env,enabled=force??(env.FORCE_COLOR!==void 0?env.FORCE_COLOR!=="0":env.NO_COLOR===void 0&&Boolean(process.stdout.isTTY)&&env.TERM!=="dumb"),paint=(open,close)=>(text)=>enabled?`\x1B[${open}m${text}\x1B[${close}m`:text;return{red:paint(31,39),yellow:paint(33,39),green:paint(32,39),cyan:paint(36,39),magenta:paint(35,39)}}function lineOf(text,line){return text.split(`
|
|
3
3
|
`)[line-1]??""}function codeFrame(d,c){let text;try{text=readFileSync(d.file,"utf-8")}catch{return""}let endLine=d.endLine??d.line,endColumn=d.endColumn??d.column,first=lineOf(text,d.line),last=lineOf(text,endLine),middle=d.line===endLine?first.slice(0,d.column-1)+c.magenta(first.slice(d.column-1,endColumn-1))+first.slice(endColumn-1):first.slice(0,d.column-1)+c.magenta([first.slice(d.column-1),...text.split(`
|
|
4
4
|
`).slice(d.line,endLine-1),last.slice(0,endColumn-1)].join(`
|
|
5
5
|
`))+last.slice(endColumn-1),before=d.line>1?`${lineOf(text,d.line-1)}
|
|
@@ -70,6 +70,6 @@ svelte-typecheck's own:
|
|
|
70
70
|
|
|
71
71
|
Exits 1 on an error, or a warning with --fail-on-warnings.`;async function main(argv){let values;try{values=parse(argv).values}catch(error){return console.error(`${error.message}
|
|
72
72
|
|
|
73
|
-
${HELP}`),1}if(values.help)return console.log(HELP),0;if(values.version){let{version}=await import("./shared-
|
|
73
|
+
${HELP}`),1}if(values.help)return console.log(HELP),0;if(values.version){let{version}=await import("./shared-hmmvdprg.js");return console.log(version),0}let format=formatOf(values.output),out=writer(format,(text)=>process.stdout.write(text),colors(colorFlag(values.color,values["no-color"]))),options={workspace:values.workspace??".",tsconfig:values["no-tsconfig"]?!1:values.tsconfig,ignore:values.ignore?.split(","),config:values.config,checker:values.checker??(values.tsgo||values["tsgo-experimental-api"]?"tsgo":void 0),components:values.components,outDir:values["out-dir"],declarations:!values["no-declarations"],svelte:values.svelte,diagnosticSources:values["diagnostic-sources"]?.split(",").map((source)=>source.trim()),compilerWarnings:parseCompilerWarnings(values["compiler-warnings"]),incremental:!values["no-incremental"]};if(values.changed||values.since)try{options.only=changedFiles(process.cwd(),values.since)}catch(error){return out.failure(error),1}let baselinePath=values.baseline&&resolve(values.baseline);if(values["update-baseline"]&&!baselinePath)return out.failure(Error("--update-baseline needs --baseline <file>")),1;let strict=values["strict-baseline"];if(strict&&!baselinePath)return out.failure(Error("--strict-baseline needs --baseline <file>")),1;for(let flag of["update-baseline","strict-baseline"])if(values[flag]&&(values.changed||values.since))return out.failure(Error(`--${flag} takes every file's: drop --changed`)),1;let baseline;if(baselinePath&&!values["update-baseline"])try{baseline=JSON.parse(readFileSync2(baselinePath,"utf-8"))}catch{return out.failure(Error(`No baseline at ${baselinePath}: write one with --update-baseline`)),1}let errorsOnly=values.threshold==="error",failOnWarnings=values["fail-on-warnings"],report=(result,watching)=>{if(result instanceof Error)return out.failure(result instanceof EmitError?Error(`${result.message}
|
|
74
74
|
This is a svelte-typecheck bug; please report it.`):result),1;if(baselinePath&&values["update-baseline"]){let written=createBaseline2(result.diagnostics,result.workspace);return writeFileSync(baselinePath,`${JSON.stringify(written,null,2)}
|
|
75
75
|
`),out.note(`Wrote ${result.diagnostics.length} diagnostics to ${baselinePath}`),0}let known=baseline?applyBaseline2(result.diagnostics,baseline,result.workspace):void 0,shown=known?known.diagnostics:result.diagnostics;out.start(result.workspace,watching&&!values.preserveWatchOutput);for(let d of shown)if(!errorsOnly||d.severity==="error")out.diagnostic(d,result.workspace);for(let f of result.failed)out.failure(Error(`${f.file}: failed to parse: ${f.message}`));let summary=summarize(shown,result.components);if(known?.known)out.note(`${known.known} more in the baseline, not shown`);if(known?.fixed)out.note(`${known.fixed} in the baseline are fixed: --update-baseline drops them`);if(result.skipped>0)out.note(`${result.skipped} more in files the changes don't reach, not shown`);return out.completion(summary,watching),summary.errors>0||result.failed.length>0||failOnWarnings&&summary.warnings>0||strict&&(known?.fixed??0)>0?1:0};if(values.watch)return watch2(options,(result)=>report(result,!0)),new Promise(()=>{});try{return report(await typecheck2(options),!1)}catch(error){return report(error,!1)}}function formatOf(output){if(output&&OUTPUT_FORMATS.includes(output))return output;return process.env.CLAUDECODE==="1"?"machine":"human-verbose"}function parse(argv){return parseArgs({args:argv,options:{workspace:{type:"string"},output:{type:"string"},tsconfig:{type:"string"},"no-tsconfig":{type:"boolean",default:!1},ignore:{type:"string"},config:{type:"string"},"diagnostic-sources":{type:"string"},threshold:{type:"string"},"compiler-warnings":{type:"string"},"fail-on-warnings":{type:"boolean",default:!1},color:{type:"boolean",default:!1},"no-color":{type:"boolean",default:!1},tsgo:{type:"boolean",default:!1},incremental:{type:"boolean",default:!1},"no-incremental":{type:"boolean",default:!1},watch:{type:"boolean",default:!1},preserveWatchOutput:{type:"boolean",default:!1},"tsgo-experimental-api":{type:"boolean",default:!1},checker:{type:"string"},components:{type:"string",multiple:!0},"out-dir":{type:"string"},"no-declarations":{type:"boolean",default:!1},svelte:{type:"string"},changed:{type:"boolean",default:!1},baseline:{type:"string"},"update-baseline":{type:"boolean",default:!1},"strict-baseline":{type:"boolean",default:!1},since:{type:"string"},help:{type:"boolean",short:"h",default:!1},version:{type:"boolean",short:"v",default:!1}}})}function parseCompilerWarnings(list){if(!list)return;let levels={};for(let entry of list.split(",")){let[code,level]=entry.trim().split(":");if(code&&(level==="ignore"||level==="error"))levels[code]=level}return levels}function colorFlag(on,off){if(on)return!0;if(off)return!1;return}process.exitCode=await main(process.argv.slice(2));
|
package/index.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
import"./shared-
|
|
1
|
+
import"./shared-zgnhwdjy.js";import{compilerDiagnostics2,typecheck2,watch2,createBaseline2,applyBaseline2}from"./shared-0bqrrt0s.js";export{applyBaseline2 as applyBaseline,compilerDiagnostics2 as compilerDiagnostics,createBaseline2 as createBaseline,typecheck2 as typecheck,watch2 as watch};
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "svelte-typecheck",
|
|
3
|
-
"version": "0.1.
|
|
3
|
+
"version": "0.1.5",
|
|
4
4
|
"license": "MIT",
|
|
5
5
|
"description": "A drop-in svelte-check replacement that checks with tsc, tsgo, tsrs or bun check. Up to 11x faster, zero dependencies.",
|
|
6
6
|
"author": "Eric Liu (https://github.com/metonym)",
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import{version2}from"./shared-w4h7jdyd.js";import{spawn}from"node:child_process";import{createHash}from"node:crypto";import{existsSync as existsSync4,readFileSync as readFileSync4,statSync}from"node:fs";import{mkdir,readFile,rm,writeFile}from"node:fs/promises";import{createRequire as createRequire4}from"node:module";import{basename as basename3,dirname as dirname5,join as join6,relative as relative2,resolve as resolve3,sep as sep2}from"node:path";import{fileURLToPath}from"node:url";var REGEX_LANG_ATTRIBUTE=/<!--[\s\S]*?-->|<script\s+(?:[^>]*|(?:[^=>'"/]+=(?:"[^"]*"|'[^']*'|[^>\s]+)\s+)*)lang=(["'])?([^"' >]+)\1[^>]*>/y;function withoutByteOrderMark(source){return source.charCodeAt(0)===65279?source.slice(1):source}function isDigit(code){return code>=48&&code<=57}function isWhitespace(code){if(code===32||code<=13&&code>=9)return!0;if(code<160)return!1;return code===160||code===5760||code>=8192&&code<=8202||code===8232||code===8233||code===8239||code===8287||code===12288||code===65279}function skipWhitespace(source,from){let index=from;while(index<source.length&&isWhitespace(source.charCodeAt(index)))index++;return index}function isTypeScript(source){let index=source.indexOf("<");while(index!==-1){let next=source.charCodeAt(index+1);if(next===33||next===115){REGEX_LANG_ATTRIBUTE.lastIndex=index;let match=REGEX_LANG_ATTRIBUTE.exec(source);if(match){if(next===115)return match[2]==="ts";index=source.indexOf("<",REGEX_LANG_ATTRIBUTE.lastIndex);continue}}index=source.indexOf("<",index+1)}return!1}function closingScriptTag(source,from){let close=source.indexOf("</script",from);while(close!==-1){if(source.charCodeAt(skipWhitespace(source,close+8))===GT)return close;close=source.indexOf("</script",close+8)}return-1}function closingScriptTagEnd(source,close){return skipWhitespace(source,close+8)+1}var VOID_ELEMENTS=new Set("area base br col command embed hr img input keygen link meta param source track wbr".split(" "));function isVoid(name){return VOID_ELEMENTS.has(name)||name.charCodeAt(0)===33&&name.toLowerCase()==="!doctype"}function styleContentEnd(source,from){let index=from;while(index<source.length){let code=source.charCodeAt(index);if(code===47&&source.charCodeAt(index+1)===42){let end=source.indexOf("*/",index+2);index=end===-1?source.length:end+2}else if(code===34||code===39){index++;while(index<source.length){let next=source.charCodeAt(index);if(next===code||next===10)break;index+=next===92?2:1}index++}else if(code===60&&source.startsWith("</style",index))break;else index++}return Math.min(index,source.length)}var DOUBLE_QUOTE=34,SINGLE_QUOTE=39,SLASH=47,EQUALS=61,GT=62,isQuote=(code)=>code===DOUBLE_QUOTE||code===SINGLE_QUOTE;function nameEnd(source,from,isAttribute){let i=from;for(;i<source.length;i++){let code=source.charCodeAt(i);if(isWhitespace(code)||code===SLASH||code===GT)break;if(isAttribute&&(isQuote(code)||code===EQUALS))break}return i}function endsUnquotedValue(source,i){let code=source.charCodeAt(i);return isWhitespace(code)||isQuote(code)||code===EQUALS||code===60||code===GT||code===96||code===SLASH&&source.charCodeAt(i+1)===GT}var STATEMENT_START=0,OPERATOR=1,BLOCK_OPENER=2,VALUE=3,PAREN=0,HEAD_PAREN=1,BLOCK=2,OBJECT=3,TEMPLATE=4,HEAD=4,IMPORT=5,EXPORT=6,REQUIRE=7,KEYWORDS={await:OPERATOR,case:OPERATOR,default:OPERATOR,delete:OPERATOR,extends:OPERATOR,in:OPERATOR,instanceof:OPERATOR,new:OPERATOR,of:OPERATOR,return:OPERATOR,throw:OPERATOR,typeof:OPERATOR,void:OPERATOR,yield:OPERATOR,do:BLOCK_OPENER,else:BLOCK_OPENER,finally:BLOCK_OPENER,try:BLOCK_OPENER,for:HEAD,if:HEAD,while:HEAD,with:HEAD,import:IMPORT,export:EXPORT,require:REQUIRE},LONGEST_KEYWORD=10,KEYWORDS_BY_KEY=Array(keywordKey(128,0)).fill(null);for(let entry of Object.entries(KEYWORDS)){let key=keywordKey(entry[0].charCodeAt(0),entry[0].length),entries=KEYWORDS_BY_KEY[key]??[];entries.push(entry),KEYWORDS_BY_KEY[key]=entries}function keywordKey(first,length){return first*(LONGEST_KEYWORD+1)+length}function wordKind(source,start,end){let first=source.charCodeAt(start);if(first>=128||end-start>LONGEST_KEYWORD)return VALUE;let key=keywordKey(first,end-start),entries=KEYWORDS_BY_KEY[key];if(entries===null)return VALUE;for(let i=0;i<entries.length;i++)if(source.startsWith(entries[i][0],start))return entries[i][1];return VALUE}var ASCII_WORD=new Uint8Array(128);for(let range of["az","AZ","09","__","$$","\\\\"])for(let code=range.charCodeAt(0);code<=range.charCodeAt(1);code++)ASCII_WORD[code]=1;function isWordCode(code){return code>=128?!isWhitespace(code):ASCII_WORD[code]===1}function scan(source,localExports,parseAt,exportLists=!1){tokenize(source,lastStatementKeyword(source,localExports,exportLists),localExports,exportLists,parseAt,void 0,void 0)}function tokenize(source,last,localExports,exportLists,parseAt,literal,call){let stack=[],pos=source.startsWith("#!")?lineEnd(source,2):0,prev=STATEMENT_START,afterDot=!1,head=!1,decorators=-1,statementEnd=()=>{if(prev=STATEMENT_START,stack.length===0)decorators=-1};while(pos<=last){let code=source.charCodeAt(pos);if(code===32||code===10||isWhitespace(code)){pos++;continue}if(code===47){let end=commentEnd(source,pos);if(end!==-1){pos=end;continue}}let wasAfterDot=afterDot,wasHead=head;if(afterDot=!1,head=!1,isWordCode(code)||code===35){let start=pos;pos=wordEnd(source,pos+1);let kind=wasAfterDot?VALUE:wordKind(source,start,pos);if(call!==void 0&&(kind===IMPORT||kind===REQUIRE))call(start,prev===STATEMENT_START||prev===VALUE);if(parseAt!==void 0&&stack.length===0&&(kind===EXPORT?localExports||isReexport(source,pos,exportLists):kind===IMPORT&&isImportDeclaration(source,pos)))pos=Math.max(pos,parseAt(decorators!==-1&&kind===EXPORT?decorators:start,start)),statementEnd();else if(kind===EXPORT)prev=BLOCK_OPENER;else if(kind===HEAD)head=!0,prev=VALUE;else prev=kind===OPERATOR||kind===BLOCK_OPENER?kind:VALUE;continue}switch(pos++,code){case 34:case 39:{let start=pos-1;pos=stringEnd(source,pos,code),literal?.(start,pos,!1),prev=VALUE;break}case 96:{let start=pos;pos=templateEnd(source,pos,stack),literal?.(start,quasiEnd(source,pos),!0),prev=source.charCodeAt(pos-1)===123?OPERATOR:VALUE;break}case 47:{let end=prev===VALUE?-1:regexEnd(source,pos);if(end===-1)prev=OPERATOR;else pos=wordCodesEnd(source,end),prev=VALUE;break}case 40:stack.push(wasHead?HEAD_PAREN:PAREN),prev=OPERATOR;break;case 41:prev=stack.pop()===HEAD_PAREN?BLOCK_OPENER:VALUE;break;case 123:stack.push(prev===OPERATOR?OBJECT:BLOCK),prev=STATEMENT_START;break;case 125:{let open=stack.pop();if(open===TEMPLATE){let start=pos;pos=templateEnd(source,pos,stack),literal?.(start,quasiEnd(source,pos),!0),prev=source.charCodeAt(pos-1)===123?OPERATOR:VALUE}else if(open===OBJECT)prev=VALUE;else statementEnd();break}case 59:statementEnd();break;case 44:prev=stack[stack.length-1]===OBJECT?STATEMENT_START:OPERATOR;break;case 93:prev=VALUE;break;case 46:if(isDigit(source.charCodeAt(pos)))pos=wordCodesEnd(source,pos),prev=VALUE;else if(source.startsWith("..",pos))pos+=2,prev=OPERATOR;else afterDot=!0,prev=OPERATOR;break;case 63:if(source.charCodeAt(pos)===46&&!isDigit(source.charCodeAt(pos+1)))pos++,afterDot=!0;prev=OPERATOR;break;case 33:prev=prev===VALUE&&!isWhitespace(source.charCodeAt(pos-2))?VALUE:OPERATOR;break;case 43:case 45:if(source.charCodeAt(pos)===code&&prev===VALUE)pos++;else prev=OPERATOR;break;case 61:if(prev=source.charCodeAt(pos)===62?BLOCK_OPENER:OPERATOR,prev===BLOCK_OPENER)pos++;break;case 64:if(stack.length===0&&decorators===-1)decorators=pos-1;prev=OPERATOR;break;default:prev=OPERATOR}}}function closingBracket(source,from,word){let length=source.length,stack=[],pos=from,prev=OPERATOR,afterDot=!1;while(pos<length){let code=source.charCodeAt(pos);if(code===32||code===10||isWhitespace(code)){pos++;continue}if(code===47){let end=commentEnd(source,pos);if(end!==-1){pos=end;continue}}let wasAfterDot=afterDot;if(afterDot=!1,isWordCode(code)||code===35){let start=pos;if(pos=wordEnd(source,pos+1),!wasAfterDot&&word?.(start,pos))return-1;let kind=wasAfterDot?VALUE:wordKind(source,start,pos);prev=kind===OPERATOR||kind===BLOCK_OPENER||kind===HEAD?OPERATOR:VALUE;continue}switch(pos++,code){case 34:case 39:pos=stringEnd(source,pos,code),prev=VALUE;break;case 96:pos=templateEnd(source,pos,stack),prev=source.charCodeAt(pos-1)===123?OPERATOR:VALUE;break;case 47:{let end=prev===VALUE?-1:regexEnd(source,pos);if(end===-1)prev=OPERATOR;else pos=wordCodesEnd(source,end),prev=VALUE;break}case 40:stack.push(PAREN),prev=OPERATOR;break;case 41:if(stack.length===0)return pos-1;stack.pop(),prev=VALUE;break;case 123:stack.push(prev===OPERATOR?OBJECT:BLOCK),prev=STATEMENT_START;break;case 125:{if(stack.length===0)return pos-1;let open=stack.pop();if(open===TEMPLATE)pos=templateEnd(source,pos,stack),prev=source.charCodeAt(pos-1)===123?OPERATOR:VALUE;else prev=open===OBJECT?VALUE:STATEMENT_START;break}case 93:prev=VALUE;break;case 46:if(isDigit(source.charCodeAt(pos)))pos=wordCodesEnd(source,pos),prev=VALUE;else if(source.startsWith("..",pos))pos+=2,prev=OPERATOR;else afterDot=!0,prev=OPERATOR;break;case 63:if(source.charCodeAt(pos)===46&&!isDigit(source.charCodeAt(pos+1)))pos++,afterDot=!0;prev=OPERATOR;break;case 33:prev=prev===VALUE&&!isWhitespace(source.charCodeAt(pos-2))?VALUE:OPERATOR;break;case 43:case 45:if(source.charCodeAt(pos)===code&&prev===VALUE)pos++;else prev=OPERATOR;break;case 61:if(source.charCodeAt(pos)===62)pos++;prev=OPERATOR;break;default:prev=OPERATOR}}return length}function isLineBreak(code){return code===10||code===13||code===8232||code===8233}function lineEnd(source,pos){for(let i=pos;i<source.length;i++)if(isLineBreak(source.charCodeAt(i)))return i;return source.length}function commentEnd(source,slash){let next=source.charCodeAt(slash+1);if(next===47)return lineEnd(source,slash+2);if(next!==42)return-1;let end=source.indexOf("*/",slash+2);return end===-1?source.length:end+2}function wordEnd(source,pos){let i=pos;while(i<source.length){let code=source.charCodeAt(i);if(code===92)i+=2;else if(isWordCode(code))i++;else break}return i}function wordCodesEnd(source,pos){let i=pos;while(i<source.length&&isWordCode(source.charCodeAt(i)))i++;return i}function stringEnd(source,pos,quote){for(let i=pos;i<source.length;i++){let code=source.charCodeAt(i);if(code===quote)return i+1;if(code===92)i+=source.startsWith(`\r
|
|
1
|
+
import{version2}from"./shared-zgnhwdjy.js";import{spawn}from"node:child_process";import{createHash}from"node:crypto";import{existsSync as existsSync4,readFileSync as readFileSync4,statSync}from"node:fs";import{mkdir,readFile,rm,writeFile}from"node:fs/promises";import{createRequire as createRequire4}from"node:module";import{basename as basename3,dirname as dirname5,join as join6,relative as relative2,resolve as resolve3,sep as sep2}from"node:path";import{fileURLToPath}from"node:url";var REGEX_LANG_ATTRIBUTE=/<!--[\s\S]*?-->|<script\s+(?:[^>]*|(?:[^=>'"/]+=(?:"[^"]*"|'[^']*'|[^>\s]+)\s+)*)lang=(["'])?([^"' >]+)\1[^>]*>/y;function withoutByteOrderMark(source){return source.charCodeAt(0)===65279?source.slice(1):source}function isDigit(code){return code>=48&&code<=57}function isWhitespace(code){if(code===32||code<=13&&code>=9)return!0;if(code<160)return!1;return code===160||code===5760||code>=8192&&code<=8202||code===8232||code===8233||code===8239||code===8287||code===12288||code===65279}function skipWhitespace(source,from){let index=from;while(index<source.length&&isWhitespace(source.charCodeAt(index)))index++;return index}function isTypeScript(source){let index=source.indexOf("<");while(index!==-1){let next=source.charCodeAt(index+1);if(next===33||next===115){REGEX_LANG_ATTRIBUTE.lastIndex=index;let match=REGEX_LANG_ATTRIBUTE.exec(source);if(match){if(next===115)return match[2]==="ts";index=source.indexOf("<",REGEX_LANG_ATTRIBUTE.lastIndex);continue}}index=source.indexOf("<",index+1)}return!1}function closingScriptTag(source,from){let close=source.indexOf("</script",from);while(close!==-1){if(source.charCodeAt(skipWhitespace(source,close+8))===GT)return close;close=source.indexOf("</script",close+8)}return-1}function closingScriptTagEnd(source,close){return skipWhitespace(source,close+8)+1}var VOID_ELEMENTS=new Set("area base br col command embed hr img input keygen link meta param source track wbr".split(" "));function isVoid(name){return VOID_ELEMENTS.has(name)||name.charCodeAt(0)===33&&name.toLowerCase()==="!doctype"}function styleContentEnd(source,from){let index=from;while(index<source.length){let code=source.charCodeAt(index);if(code===47&&source.charCodeAt(index+1)===42){let end=source.indexOf("*/",index+2);index=end===-1?source.length:end+2}else if(code===34||code===39){index++;while(index<source.length){let next=source.charCodeAt(index);if(next===code||next===10)break;index+=next===92?2:1}index++}else if(code===60&&source.startsWith("</style",index))break;else index++}return Math.min(index,source.length)}var DOUBLE_QUOTE=34,SINGLE_QUOTE=39,SLASH=47,EQUALS=61,GT=62,isQuote=(code)=>code===DOUBLE_QUOTE||code===SINGLE_QUOTE;function nameEnd(source,from,isAttribute){let i=from;for(;i<source.length;i++){let code=source.charCodeAt(i);if(isWhitespace(code)||code===SLASH||code===GT)break;if(isAttribute&&(isQuote(code)||code===EQUALS))break}return i}function endsUnquotedValue(source,i){let code=source.charCodeAt(i);return isWhitespace(code)||isQuote(code)||code===EQUALS||code===60||code===GT||code===96||code===SLASH&&source.charCodeAt(i+1)===GT}var STATEMENT_START=0,OPERATOR=1,BLOCK_OPENER=2,VALUE=3,PAREN=0,HEAD_PAREN=1,BLOCK=2,OBJECT=3,TEMPLATE=4,HEAD=4,IMPORT=5,EXPORT=6,REQUIRE=7,KEYWORDS={await:OPERATOR,case:OPERATOR,default:OPERATOR,delete:OPERATOR,extends:OPERATOR,in:OPERATOR,instanceof:OPERATOR,new:OPERATOR,of:OPERATOR,return:OPERATOR,throw:OPERATOR,typeof:OPERATOR,void:OPERATOR,yield:OPERATOR,do:BLOCK_OPENER,else:BLOCK_OPENER,finally:BLOCK_OPENER,try:BLOCK_OPENER,for:HEAD,if:HEAD,while:HEAD,with:HEAD,import:IMPORT,export:EXPORT,require:REQUIRE},LONGEST_KEYWORD=10,KEYWORDS_BY_KEY=Array(keywordKey(128,0)).fill(null);for(let entry of Object.entries(KEYWORDS)){let key=keywordKey(entry[0].charCodeAt(0),entry[0].length),entries=KEYWORDS_BY_KEY[key]??[];entries.push(entry),KEYWORDS_BY_KEY[key]=entries}function keywordKey(first,length){return first*(LONGEST_KEYWORD+1)+length}function wordKind(source,start,end){let first=source.charCodeAt(start);if(first>=128||end-start>LONGEST_KEYWORD)return VALUE;let key=keywordKey(first,end-start),entries=KEYWORDS_BY_KEY[key];if(entries===null)return VALUE;for(let i=0;i<entries.length;i++)if(source.startsWith(entries[i][0],start))return entries[i][1];return VALUE}var ASCII_WORD=new Uint8Array(128);for(let range of["az","AZ","09","__","$$","\\\\"])for(let code=range.charCodeAt(0);code<=range.charCodeAt(1);code++)ASCII_WORD[code]=1;function isWordCode(code){return code>=128?!isWhitespace(code):ASCII_WORD[code]===1}function scan(source,localExports,parseAt,exportLists=!1){tokenize(source,lastStatementKeyword(source,localExports,exportLists),localExports,exportLists,parseAt,void 0,void 0)}function tokenize(source,last,localExports,exportLists,parseAt,literal,call){let stack=[],pos=source.startsWith("#!")?lineEnd(source,2):0,prev=STATEMENT_START,afterDot=!1,head=!1,decorators=-1,statementEnd=()=>{if(prev=STATEMENT_START,stack.length===0)decorators=-1};while(pos<=last){let code=source.charCodeAt(pos);if(code===32||code===10||isWhitespace(code)){pos++;continue}if(code===47){let end=commentEnd(source,pos);if(end!==-1){pos=end;continue}}let wasAfterDot=afterDot,wasHead=head;if(afterDot=!1,head=!1,isWordCode(code)||code===35){let start=pos;pos=wordEnd(source,pos+1);let kind=wasAfterDot?VALUE:wordKind(source,start,pos);if(call!==void 0&&(kind===IMPORT||kind===REQUIRE))call(start,prev===STATEMENT_START||prev===VALUE);if(parseAt!==void 0&&stack.length===0&&(kind===EXPORT?localExports||isReexport(source,pos,exportLists):kind===IMPORT&&isImportDeclaration(source,pos)))pos=Math.max(pos,parseAt(decorators!==-1&&kind===EXPORT?decorators:start,start)),statementEnd();else if(kind===EXPORT)prev=BLOCK_OPENER;else if(kind===HEAD)head=!0,prev=VALUE;else prev=kind===OPERATOR||kind===BLOCK_OPENER?kind:VALUE;continue}switch(pos++,code){case 34:case 39:{let start=pos-1;pos=stringEnd(source,pos,code),literal?.(start,pos,!1),prev=VALUE;break}case 96:{let start=pos;pos=templateEnd(source,pos,stack),literal?.(start,quasiEnd(source,pos),!0),prev=source.charCodeAt(pos-1)===123?OPERATOR:VALUE;break}case 47:{let end=prev===VALUE?-1:regexEnd(source,pos);if(end===-1)prev=OPERATOR;else pos=wordCodesEnd(source,end),prev=VALUE;break}case 40:stack.push(wasHead?HEAD_PAREN:PAREN),prev=OPERATOR;break;case 41:prev=stack.pop()===HEAD_PAREN?BLOCK_OPENER:VALUE;break;case 123:stack.push(prev===OPERATOR?OBJECT:BLOCK),prev=STATEMENT_START;break;case 125:{let open=stack.pop();if(open===TEMPLATE){let start=pos;pos=templateEnd(source,pos,stack),literal?.(start,quasiEnd(source,pos),!0),prev=source.charCodeAt(pos-1)===123?OPERATOR:VALUE}else if(open===OBJECT)prev=VALUE;else statementEnd();break}case 59:statementEnd();break;case 44:prev=stack[stack.length-1]===OBJECT?STATEMENT_START:OPERATOR;break;case 93:prev=VALUE;break;case 46:if(isDigit(source.charCodeAt(pos)))pos=wordCodesEnd(source,pos),prev=VALUE;else if(source.startsWith("..",pos))pos+=2,prev=OPERATOR;else afterDot=!0,prev=OPERATOR;break;case 63:if(source.charCodeAt(pos)===46&&!isDigit(source.charCodeAt(pos+1)))pos++,afterDot=!0;prev=OPERATOR;break;case 33:prev=prev===VALUE&&!isWhitespace(source.charCodeAt(pos-2))?VALUE:OPERATOR;break;case 43:case 45:if(source.charCodeAt(pos)===code&&prev===VALUE)pos++;else prev=OPERATOR;break;case 61:if(prev=source.charCodeAt(pos)===62?BLOCK_OPENER:OPERATOR,prev===BLOCK_OPENER)pos++;break;case 64:if(stack.length===0&&decorators===-1)decorators=pos-1;prev=OPERATOR;break;default:prev=OPERATOR}}}function closingBracket(source,from,word){let length=source.length,stack=[],pos=from,prev=OPERATOR,afterDot=!1;while(pos<length){let code=source.charCodeAt(pos);if(code===32||code===10||isWhitespace(code)){pos++;continue}if(code===47){let end=commentEnd(source,pos);if(end!==-1){pos=end;continue}}let wasAfterDot=afterDot;if(afterDot=!1,isWordCode(code)||code===35){let start=pos;if(pos=wordEnd(source,pos+1),!wasAfterDot&&word?.(start,pos))return-1;let kind=wasAfterDot?VALUE:wordKind(source,start,pos);prev=kind===OPERATOR||kind===BLOCK_OPENER||kind===HEAD?OPERATOR:VALUE;continue}switch(pos++,code){case 34:case 39:pos=stringEnd(source,pos,code),prev=VALUE;break;case 96:pos=templateEnd(source,pos,stack),prev=source.charCodeAt(pos-1)===123?OPERATOR:VALUE;break;case 47:{let end=prev===VALUE?-1:regexEnd(source,pos);if(end===-1)prev=OPERATOR;else pos=wordCodesEnd(source,end),prev=VALUE;break}case 40:stack.push(PAREN),prev=OPERATOR;break;case 41:if(stack.length===0)return pos-1;stack.pop(),prev=VALUE;break;case 123:stack.push(prev===OPERATOR?OBJECT:BLOCK),prev=STATEMENT_START;break;case 125:{if(stack.length===0)return pos-1;let open=stack.pop();if(open===TEMPLATE)pos=templateEnd(source,pos,stack),prev=source.charCodeAt(pos-1)===123?OPERATOR:VALUE;else prev=open===OBJECT?VALUE:STATEMENT_START;break}case 93:prev=VALUE;break;case 46:if(isDigit(source.charCodeAt(pos)))pos=wordCodesEnd(source,pos),prev=VALUE;else if(source.startsWith("..",pos))pos+=2,prev=OPERATOR;else afterDot=!0,prev=OPERATOR;break;case 63:if(source.charCodeAt(pos)===46&&!isDigit(source.charCodeAt(pos+1)))pos++,afterDot=!0;prev=OPERATOR;break;case 33:prev=prev===VALUE&&!isWhitespace(source.charCodeAt(pos-2))?VALUE:OPERATOR;break;case 43:case 45:if(source.charCodeAt(pos)===code&&prev===VALUE)pos++;else prev=OPERATOR;break;case 61:if(source.charCodeAt(pos)===62)pos++;prev=OPERATOR;break;default:prev=OPERATOR}}return length}function isLineBreak(code){return code===10||code===13||code===8232||code===8233}function lineEnd(source,pos){for(let i=pos;i<source.length;i++)if(isLineBreak(source.charCodeAt(i)))return i;return source.length}function commentEnd(source,slash){let next=source.charCodeAt(slash+1);if(next===47)return lineEnd(source,slash+2);if(next!==42)return-1;let end=source.indexOf("*/",slash+2);return end===-1?source.length:end+2}function wordEnd(source,pos){let i=pos;while(i<source.length){let code=source.charCodeAt(i);if(code===92)i+=2;else if(isWordCode(code))i++;else break}return i}function wordCodesEnd(source,pos){let i=pos;while(i<source.length&&isWordCode(source.charCodeAt(i)))i++;return i}function stringEnd(source,pos,quote){for(let i=pos;i<source.length;i++){let code=source.charCodeAt(i);if(code===quote)return i+1;if(code===92)i+=source.startsWith(`\r
|
|
2
2
|
`,i+1)?2:1;else if(code===10||code===13)return i}return source.length}function templateEnd(source,pos,stack){for(let i=pos;i<source.length;i++){let code=source.charCodeAt(i);if(code===96)return i+1;if(code===92)i++;else if(code===36&&source.charCodeAt(i+1)===123)return stack.push(TEMPLATE),i+2}return source.length}function quasiEnd(source,pos){let code=source.charCodeAt(pos-1);if(code===96)return pos-1;if(code===123&&source.charCodeAt(pos-2)===36)return pos-2;return pos}function regexEnd(source,pos){let inClass=!1;for(let i=pos;i<source.length;i++){let code=source.charCodeAt(i);if(isLineBreak(code))return-1;if(code===92)i++;else if(code===91)inClass=!0;else if(code===93)inClass=!1;else if(code===47&&!inClass)return i+1}return-1}function skipTrivia(source,pos){let i=pos;while(i<source.length){let code=source.charCodeAt(i);if(isWhitespace(code)){i++;continue}let end=code===47?commentEnd(source,i):-1;if(end===-1)return i;i=end}return source.length}function isWordAt(source,pos,word){return source.charCodeAt(pos)===word.charCodeAt(0)&&source.startsWith(word,pos)&&!isWordCode(source.charCodeAt(pos+word.length))}function isImportDeclaration(source,pos){let code=source.charCodeAt(skipTrivia(source,pos));return code!==40&&code!==46}function isReexport(source,pos,lists){let i=skipTrivia(source,pos);if(isWordAt(source,i,"import"))return!0;if(isWordAt(source,i,"type"))i=skipTrivia(source,i+4);let code=source.charCodeAt(i);if(code===42)return!0;if(code!==123)return!1;if(lists)return!0;for(i++;i<source.length;i++){let inner=source.charCodeAt(i);if(inner===125)break;if(inner===34||inner===39)i=stringEnd(source,i+1,inner)-1;else if(inner===47)i=Math.max(i,skipTrivia(source,i)-1)}return isWordAt(source,skipTrivia(source,i+1),"from")}var STATEMENT_KEYWORD=/import|export/g;function lastStatementKeyword(source,localExports,exportLists){let last=-1;STATEMENT_KEYWORD.lastIndex=0;for(let match=STATEMENT_KEYWORD.exec(source);match!==null;match=STATEMENT_KEYWORD.exec(source)){let start=match.index,end=start+6;if(!isWordCode(source.charCodeAt(start-1))&&!isWordCode(source.charCodeAt(end))&&(source.charCodeAt(start)===105?isImportDeclaration(source,end):localExports||isReexport(source,end,exportLists)))last=start}return last}var AUTOCLOSING_CHILDREN={li:["li"],dt:["dt","dd"],dd:["dt","dd"],p:"address article aside blockquote div dl fieldset footer form h1 h2 h3 h4 h5 h6 header hgroup hr main menu nav ol p pre section table ul".split(" "),rt:["rt","rp"],rp:["rt","rp"],optgroup:["optgroup"],option:["option","optgroup"],thead:["tbody","tfoot"],tbody:["tbody","tfoot"],tfoot:["tbody"],tr:["tr","tbody"],td:["td","th","tr"],th:["td","th","tr"]};function closingTagOmitted(current,next){return Object.hasOwn(AUTOCLOSING_CHILDREN,current)&&AUTOCLOSING_CHILDREN[current].includes(next)}var BLOCK2="{",LT=60,GT2=62,SLASH2=47,EQUALS2=61,BRACE=123,REGEX_CLOSING_STYLE_TAG_END=/\s*>/y,REGEX_CLOSING_TEXTAREA=/<\/textarea(\s[^>]*)?>/iy,SECTION_TAG_NAMES=["cript","tyle","velte:options"],CLOSING_OPTIONS_TAG="</svelte:options";function lexComponent2(input){let source=withoutByteOrderMark(input).trimEnd();return lex(source,isTypeScript(source),null)}function topLevelTags(source){let found={tags:[],comments:[]};return lex(source,!1,found),found}function lex(source,typescript,found){let component={typescript,instance:null,module:null,css:null,options:null},last=lastSectionTag(source),stack=[],i=0;while(i<=last){let code=source.charCodeAt(i);if(code===LT)i=readTag(source,i,stack,component,found);else if(code===BRACE)i=readMustache(source,i,stack);else i++}return component}function lastSectionTag(source){let last=-1,i=source.indexOf("<s");while(i!==-1){let end=sectionTagNameEnd(source,i+2);if(end!==-1){let code=source.charCodeAt(end);if(end===source.length||isWhitespace(code)||code===SLASH2||code===GT2)last=i}i=source.indexOf("<s",i+2)}return last}function sectionTagNameEnd(source,from){for(let name of SECTION_TAG_NAMES)if(source.startsWith(name,from))return from+name.length;return-1}function expressionEnd(source,from){return Math.min(closingBracket(source,from)+1,source.length)}function readMustache(source,start,stack){let i=skipWhitespace(source,start+1),code=source.charCodeAt(i),next=source.charCodeAt(i+1);if(code===35||code===58||code===64||code===SLASH2&&next!==SLASH2&&next!==42){i++;while(i<source.length){let letter=source.charCodeAt(i);if(letter<97||letter>122)break;i++}if(code===35)stack.push(BLOCK2);else if(code===SLASH2){let open=stack.lastIndexOf(BLOCK2);if(open!==-1)stack.length=open}}return expressionEnd(source,i)}function readTag(source,start,stack,component,found){if(source.startsWith("!--",start+1)){let close=source.indexOf("-->",start+4),end=close===-1?source.length:close+3;if(found&&stack.length===0)found.comments.push(start,end);return end}if(source.charCodeAt(start+1)===SLASH2){let nameStart=start+2,name=source.slice(nameStart,nameEnd(source,nameStart,!1)),open=stack.lastIndexOf(name);if(open!==-1)stack.length=open;return eatGreaterThan(source,skipWhitespace(source,nameStart+name.length))}let name=source.slice(start+1,nameEnd(source,start+1,!1)),i=skipWhitespace(source,start+1+name.length),parent=stack[stack.length-1];if(parent!==void 0&&closingTagOmitted(parent,name))stack.pop();let topLevel=stack.length===0;if(found&&topLevel&&(name==="script"||name==="style"||name==="svelte:options"))found.tags.push(start);if(topLevel&&(name==="script"||name==="style")){let attributes=[];if(i=eatGreaterThan(source,readStaticAttributes(source,i,attributes)),name==="script"){let script=readScript(source,start,i,attributes);if(script.context==="module")component.module??=script;else component.instance??=script;return script.end}let css=readStyle(source,start,i,attributes);return component.css??=css,css.end}let attributes=topLevel&&name==="svelte:options"?[]:null;if(i=readAttributes(source,i,attributes),source.charCodeAt(i)===SLASH2||isVoid(name)){if(source.charCodeAt(i)===SLASH2)i++;i=eatGreaterThan(source,i)}else{if(i=eatGreaterThan(source,i),name==="textarea")return textareaEnd(source,i);if(name==="script"||name==="style"){let closer=`</${name}>`,close=source.indexOf(closer,i);return close===-1?source.length:close+closer.length}if(attributes&&source.startsWith(CLOSING_OPTIONS_TAG,i))i=eatGreaterThan(source,skipWhitespace(source,i+CLOSING_OPTIONS_TAG.length));else return stack.push(name),i}if(attributes)component.options??={start,end:i,attributes};return i}function eatGreaterThan(source,i){return source.charCodeAt(i)===GT2?i+1:i}function readScript(source,start,contentStart,attributes){let close=closingScriptTag(source,contentStart),contentEnd=close===-1?source.length:close,module=attributes.some((attribute)=>attribute.name==="module"||attribute.name==="context");return{start,end:close===-1?source.length:closingScriptTagEnd(source,close),context:module?"module":"default",attributes,content:{start:contentStart,end:contentEnd}}}function readStyle(source,start,contentStart,attributes){let contentEnd=styleContentEnd(source,contentStart),end=contentEnd;if(source.startsWith("</style",end)){end+=7,REGEX_CLOSING_STYLE_TAG_END.lastIndex=end;let close=REGEX_CLOSING_STYLE_TAG_END.exec(source);if(close)end+=close[0].length}return{start,end,attributes,content:{start:contentStart,end:contentEnd}}}function readStaticAttributes(source,from,into){let i=from;for(;;){let start=i,end=nameEnd(source,i,!0);if(end===start)return i;i=end;let value=!0;if(source.charCodeAt(i)===EQUALS2){let at=skipWhitespace(source,i+1),quote=source.charCodeAt(at),valueEnd=-1;if(isQuote(quote)){let close=source.indexOf(source[at],at+1);if(close!==-1)valueEnd=close+1}if(valueEnd===-1){valueEnd=at;while(valueEnd<source.length&&source.charCodeAt(valueEnd)!==GT2&&!isWhitespace(source.charCodeAt(valueEnd)))valueEnd++}let quotes=isQuote(quote)?1:0;value=source.slice(at+quotes,valueEnd-quotes),i=valueEnd}into.push({name:source.slice(start,end),value,start,end:i}),i=skipWhitespace(source,i)}}function readAttributes(source,from,into){let i=from;for(;;){for(;;){if(source.startsWith("/*",i)){let end=source.indexOf("*/",i+2);i=end===-1?source.length:end+2}else if(source.startsWith("//",i)){let end=source.indexOf(`
|
|
3
3
|
`,i+2);i=end===-1?source.length:end}else break;i=skipWhitespace(source,i)}let start=i;if(source.charCodeAt(i)===BRACE){i=skipWhitespace(source,expressionEnd(source,i+1));continue}let nameEndAt=nameEnd(source,i,!0);if(nameEndAt===start)return i;let end=nameEndAt,value=!0;if(i=skipWhitespace(source,nameEndAt),source.charCodeAt(i)===EQUALS2){let at=skipWhitespace(source,i+1);end=source.startsWith("/>",at)?at+1:attributeValueEnd(source,at),value=isQuote(source.charCodeAt(at))?source.slice(at+1,Math.max(at+1,end-1)):source.slice(at,end),i=skipWhitespace(source,end)}into?.push({name:source.slice(start,nameEndAt),value,start,end})}}function attributeValueEnd(source,from){let quote=source.charCodeAt(from);if(isQuote(quote)){let i=from+1;while(i<source.length){let code=source.charCodeAt(i);if(code===quote)return i+1;i=code===BRACE?expressionEnd(source,i+1):i+1}return source.length}let i=from;while(i<source.length&&!endsUnquotedValue(source,i))i=source.charCodeAt(i)===BRACE?expressionEnd(source,i+1):i+1;return i}function textareaEnd(source,from){let i=from;while(i<source.length){let code=source.charCodeAt(i);if(code===LT){if(REGEX_CLOSING_TEXTAREA.lastIndex=i,REGEX_CLOSING_TEXTAREA.test(source))return REGEX_CLOSING_TEXTAREA.lastIndex}i=code===BRACE?expressionEnd(source,i+1):i+1}return source.length}function lexImportsExports(source,options={}){let lexer=new Lexer(source);lexer.exportLists=options.exportLists??!1;let statements=[];return scan(source,!1,(_start,keyword)=>{let statement=lexer.statement(keyword);return statements.push(statement),statement.end},lexer.exportLists),statements}class Lexer{source;pos=0;end=0;escapeEnd=0;exportLists=!1;constructor(source){this.source=source}statement(keyword){this.pos=this.end=keyword+6;let statement={kind:this.source.charCodeAt(keyword)===105?"import":"export",start:keyword,end:0,source:null,typeOnly:!1,specifiers:[]};if(!(statement.kind==="import"?this.import(statement):this.export(statement)))statement.source=null,statement.specifiers=[];return statement.end=this.end,statement}import(statement){let module=this.string();if(module!==null)return statement.source=module,this.finish();if(this.isWord("type")){let next=this.peekAfter(4);if(next===123||next===42||isIdentifierStart(next)&&!this.isWordAfter(4,"from"))statement.typeOnly=!0,this.advance(4)}let{specifiers,typeOnly}=statement,next=this.at();if(next!==123&&next!==42){let start=this.pos,local=this.name();if(local===null)return!1;if(this.at()===61)return this.importEquals();if(specifiers.push({kind:"default",imported:"default",local,typeOnly,start,end:this.end}),!this.eat(44))return this.from(statement);next=this.at()}if(next===42){let start=this.pos;if(this.advance(1),!this.eatWord("as"))return!1;let local=this.name();if(local===null)return!1;return specifiers.push({kind:"namespace",imported:"*",local,typeOnly,start,end:this.end}),this.from(statement)}if(!this.eat(123))return!1;while(!this.eat(125)){let start=this.skip(),named=this.typeModifier()||typeOnly,name=this.name(),imported=name??this.string()?.value;if(imported===void 0)return!1;let local=name;if(this.eatWord("as"))local=this.name();if(local===null)return!1;if(specifiers.push({kind:"named",imported,local,typeOnly:named,start,end:this.end}),!this.eat(44)&&this.at()!==125)return!1}return this.from(statement)}export(statement){if(this.eatWord("import")){if(this.isWord("type")&&isIdentifierStart(this.peekAfter(4))&&!this.isWordAfter(4,"from"))statement.typeOnly=!0,this.advance(4);return this.name()!==null&&this.at()===61&&this.importEquals()}if(this.isWord("type")){let next=this.peekAfter(4);if(next===123||next===42)statement.typeOnly=!0,this.advance(4)}let{specifiers,typeOnly}=statement;if(this.at()===42){let start=this.pos;this.advance(1);let exported=null;if(this.eatWord("as")){if(exported=this.moduleExportName(),exported===null)return!1}return specifiers.push({kind:exported===null?"all":"namespace",local:"*",exported,typeOnly,start,end:this.end}),this.from(statement)}if(!this.eat(123))return!1;while(!this.eat(125)){let start=this.skip(),named=this.typeModifier()||typeOnly,local=this.moduleExportName();if(local===null)return!1;let exported=local;if(this.eatWord("as"))exported=this.moduleExportName();if(exported===null)return!1;if(specifiers.push({kind:"named",local,exported,typeOnly:named,start,end:this.end}),!this.eat(44)&&this.at()!==125)return!1}if(this.exportLists&&!this.isWord("from")){for(let specifier of specifiers)specifier.kind="local";return this.eat(59),!0}return this.from(statement)}dynamicImport(start,member){let isImport=this.source.charCodeAt(start)===105;this.pos=this.end=start+(isImport?6:7);let kind=isImport?"import":"require";if(isImport&&this.eat(46)){if(!this.eatWord("meta")||!this.eat(46)||!this.eatWord("glob")||!this.typeArguments())return null;kind="glob"}if(!this.eat(40))return null;let argument=this.skip(),source=this.string()??this.template(),close=this.at()===41?this.pos:-1;if(close===-1){if(this.at()!==44)source=null;close=closingBracket(this.source,argument)}if(member&&kind!=="glob"){let after=this.source.charCodeAt(skipTrivia(this.source,close+1));if(after===123||after===58)return null}return{kind,source,start,end:Math.min(close+1,this.source.length)}}typeArguments(){if(this.at()!==60)return!0;let source=this.source,depth=0;for(let i=this.pos;i<source.length;i=skipTrivia(source,i+1)){let code=source.charCodeAt(i);if(code===34||code===39||code===96){let end=source.indexOf(source[i],i+1);if(end===-1)return!1;i=end}else if(code===60)depth++;else if(code===62&&source.charCodeAt(i-1)!==61){if(--depth===0)return this.advance(i+1-this.pos),!0}}return!1}template(){let source=this.source,start=this.skip();if(source.charCodeAt(start)!==96)return null;for(let i=start+1;i<source.length;i++){let code=source.charCodeAt(i);if(code===96){let value=this.cooked(start+1,i,!0);if(value===null)return null;return this.advance(i+1-start),{value,start,end:i+1}}if(code===92)i++;else if(code===36&&source.charCodeAt(i+1)===123)return null}return null}typeModifier(){if(!this.isWord("type"))return!1;let next=this.peekAfter(4);if(next===34||next===39||isIdentifierStart(next)&&!this.isWordAfter(4,"as"))return this.advance(4),!0;return!1}importEquals(){if(this.advance(1),this.isWord("require")&&this.peekAfter(7)===40){if(this.advance(7),this.eat(40),this.string()===null||!this.eat(41))return!1}else do if(this.name()===null)return!1;while(this.eat(46));return this.eat(59),!0}from(statement){if(!this.eatWord("from"))return!1;return statement.source=this.string(),statement.source!==null&&this.finish()}finish(){let keyword=this.isWord("with")?4:0;if(this.isWord("assert")&&lineEnd(this.source,this.end)>=this.pos)keyword=6;if(keyword!==0&&this.peekAfter(keyword)===123){this.advance(keyword),this.eat(123);while(!this.eat(125))if(this.string()===null&&this.name()===null&&!this.eat(58)&&!this.eat(44))return!1}return this.eat(59),!0}skip(){return this.pos=skipTrivia(this.source,this.pos),this.pos}at(){return this.source.charCodeAt(this.skip())}advance(length){this.pos+=length,this.end=this.pos}peekAfter(length){return this.source.charCodeAt(skipTrivia(this.source,this.pos+length))}isWordAfter(length,word){return isWordAt(this.source,skipTrivia(this.source,this.pos+length),word)}eat(code){if(this.at()!==code)return!1;return this.advance(1),!0}isWord(word){return isWordAt(this.source,this.skip(),word)}eatWord(word){if(!this.isWord(word))return!1;return this.advance(word.length),!0}moduleExportName(){return this.name()??this.string()?.value??null}name(){let source=this.source,start=this.skip();if(!isWordCode(source.charCodeAt(start))||isDigit(source.charCodeAt(start)))return null;let value="",chunk=start,i=start;while(i<source.length){let code=source.charCodeAt(i);if(code===92){if(source.charCodeAt(i+1)!==117)return null;let escaped=this.unicodeEscape(i+2);if(escaped===null)return null;value+=source.slice(chunk,i)+escaped,i=chunk=this.escapeEnd}else if(isWordCode(code))i++;else break}return this.advance(i-start),value+source.slice(chunk,i)}string(){let source=this.source,start=this.skip(),quote=source.charCodeAt(start);if(quote!==34&"e!==39)return null;let value="",chunk=start+1;for(let i=chunk;i<source.length;){let code=source.charCodeAt(i);if(code===quote)return this.advance(i+1-start),{value:value+source.slice(chunk,i),start,end:i+1};if(code===10||code===13)return null;if(code===92){let escaped=this.escape(i+1);if(escaped===null)return null;value+=source.slice(chunk,i)+escaped,i=chunk=this.escapeEnd}else i++}return null}cooked(from,to,template){let source=this.source,value="",chunk=from;for(let i=from;i<to;){let code=source.charCodeAt(i);if(code===92){let escaped=this.escape(i+1);if(escaped===null)return null;value+=source.slice(chunk,i)+escaped,i=chunk=this.escapeEnd}else if(code===13&&template)value+=`${source.slice(chunk,i)}
|
|
4
4
|
`,i+=source.charCodeAt(i+1)===10?2:1,chunk=i;else i++}return value+source.slice(chunk,to)}escape(pos){let code=this.source.charCodeAt(pos);switch(this.escapeEnd=pos+1,code){case 110:return`
|
|
@@ -34,9 +34,9 @@ If you expect this syntax to work, here are some suggestions: `+(inScript?'\nIf
|
|
|
34
34
|
${tags.join(`
|
|
35
35
|
`)}
|
|
36
36
|
*/
|
|
37
|
-
`}if(typeParams.length>0)generics=`<${typeParams.join(", ")}>`;let storeAfter=new Map,storeAtStart=[],seenStores=new Set,storeUses=new Map;for(let scope of[scopes.instance,scopes.module])for(let b of scope?.declarations?.values()??[])for(let r of b.references){if(!r.store)continue;if(storeUses.set(b.name,[...storeUses.get(b.name)??[],r.node.start]),seenStores.has(b.name))continue;seenStores.add(b.name);let decl=b.declaration,top=scope===scopes.instance&&b.kind!=="import"?body.find((s)=>decl&&s.start<=decl.start&&decl.end<=s.end):void 0;if(top)storeAfter.set(top.end,[...storeAfter.get(top.end)??[],b.name]);else storeAtStart.push(b.name)}let storeDeclarations=[],declareStore=(name)=>{let start=out.code.length;out.raw(`let $${name} = __sveltets_2_store_get(${name});`),storeDeclarations.push({start,end:out.code.length,name,uses:storeUses.get(name)??[]})},attrValue=(value)=>{if(value===!0)return out.raw("true");let parts=Array.isArray(value)?value:[value];if(parts.length===1&&parts[0].type==="ExpressionTag")return out.raw("(").copy(parts[0].expression.start,parts[0].expression.end).raw(")");if(parts.every((p)=>p.type==="Text"))return out.from(parts[0]?.start??0,()=>out.raw(JSON.stringify(parts.map((p)=>p.data).join(""))));out.raw("`");for(let p of parts)if(p.type==="Text")out.raw(p.data.replace(/[`\\]|\$\{/g,(c)=>`\\${c}`));else out.raw("${").copy(p.expression.start,p.expression.end).raw("}");return out.raw("`")},key=(attribute,name)=>out.from(attribute.start,()=>out.raw(JSON.stringify(name))).raw(":"),nameAt=(attribute)=>source.indexOf(":",attribute.start)+1,expression=(node)=>out.raw("(").copy(node.start,node.end).raw(")"),directiveCall=(a,tag,extra="")=>{let at=nameAt(a);out.copy(at,at+a.name.length);let equals=a.expression?source.lastIndexOf("=",a.expression.start):at+a.name.length-1;if(out.from(equals,()=>out.raw(`(svelteHTML.mapElementTag(${tag})${extra}`)),a.expression)out.raw(",").copy(a.expression.start,a.expression.end);out.raw(")")},directives=(node,elementId,tag)=>{for(let a of node.attributes??[])if(a.type==="BindDirective"){if(a.name==="this")out.copy(a.expression.start,a.expression.end).raw(` = ${elementId};`);else if(!isGetSet(a.expression))widen(a.expression)}else if(a.type==="ClassDirective")expression(a.expression).raw(";");else if(a.type==="StyleDirective")if(a.value===!0){let at=nameAt(a);out.copy(at,at+a.name.length).raw(";")}else attrValue(a.value).raw(";");else if(a.type==="AnimateDirective")out.raw("__sveltets_2_ensureAnimation("),directiveCall(a,tag,",__sveltets_2_AnimationMove"),out.raw(");");else if(a.type==="TransitionDirective")transitions.push([a.start,a.end]),out.raw("__sveltets_2_ensureTransition("),directiveCall(a,tag),out.raw(");")},shorthandOf=(a)=>{let value=Array.isArray(a.value)?a.value[0]:a.value;return source[a.start]==="{"&&value?.type==="ExpressionTag"&&value.expression.type==="Identifier"?value.expression:void 0},elementAttribute=(a,inComponent)=>{if(a.type==="Attribute"){if(inComponent&&a.name==="slot")return;let shorthand=shorthandOf(a);if(shorthand){out.copy(shorthand.start,shorthand.end).raw(",");return}if(a.name.startsWith("data-")){out.raw("...__sveltets_2_empty({"),key(a,a.name),attrValue(a.value).raw("}),");return}key(a,a.name);let only=Array.isArray(a.value)&&a.value.length===1?a.value[0]:null;if(a.value===!0&&a.name==="popover")out.raw('""');else if(only?.type==="Text"&&NUMBER_ATTRIBUTES.has(a.name.toLowerCase())&&only.data.trim()!==""&&!Number.isNaN(Number(only.data)))out.copy(only.start,only.end);else attrValue(a.value);out.raw(",")}else if(a.type==="SpreadAttribute")out.raw("...").copy(a.expression.start,a.expression.end).raw(",");else if(a.type==="OnDirective"){if(key(a,`on:${a.name}`),a.expression)expression(a.expression);else out.raw("undefined"),forwarded.set(a.name,`__sveltets_2_mapElementEvent(${JSON.stringify(a.name)})`);out.raw(",")}else if(a.type==="BindDirective"&&a.name!=="this")key(a,`bind:${a.name}`),bound(a.expression).raw(",");else if(a.type==="AttachTag")attach(a)},widen=(e)=>{let target=e;while(TS_WRAPPER.test(target.type))target=target.expression;out.raw("() => ").copy(target.start,target.end).raw(" = __sveltets_2_any(null);")},isGetSet=(e)=>e.type==="SequenceExpression"&&e.expressions.length===2,bound=(e)=>{if(!isGetSet(e))return expression(e);let[get,set]=e.expressions;return out.raw("__sveltets_2_get_set_binding(").copy(get.start,get.end).raw(","),out.copy(set.start,set.end).raw(")")},attach=(a)=>out.raw('[Symbol("@attach")]:').copy(a.expression.start,a.expression.end).raw(","),attributeKey=(a)=>{if(a.type==="Attribute")return a.name;if(a.type==="OnDirective")return`on:${a.name}`;if(a.type==="BindDirective")return`bind:${a.name}`;return null},element=(node,tag,tagText,inComponent)=>{let id=`$$_el${uid++}`,boundary=node.type==="SvelteBoundary",objectAt=node.type==="RegularElement"?node.start+node.name.length:node.tag?.
|
|
37
|
+
`}if(typeParams.length>0)generics=`<${typeParams.join(", ")}>`;let storeAfter=new Map,storeAtStart=[],seenStores=new Set,storeUses=new Map;for(let scope of[scopes.instance,scopes.module])for(let b of scope?.declarations?.values()??[])for(let r of b.references){if(!r.store)continue;if(storeUses.set(b.name,[...storeUses.get(b.name)??[],r.node.start]),seenStores.has(b.name))continue;seenStores.add(b.name);let decl=b.declaration,top=scope===scopes.instance&&b.kind!=="import"?body.find((s)=>decl&&s.start<=decl.start&&decl.end<=s.end):void 0;if(top)storeAfter.set(top.end,[...storeAfter.get(top.end)??[],b.name]);else storeAtStart.push(b.name)}let storeDeclarations=[],declareStore=(name)=>{let start=out.code.length;out.raw(`let $${name} = __sveltets_2_store_get(${name});`),storeDeclarations.push({start,end:out.code.length,name,uses:storeUses.get(name)??[]})},attrValue=(value)=>{if(value===!0)return out.raw("true");let parts=Array.isArray(value)?value:[value];if(parts.length===1&&parts[0].type==="ExpressionTag")return out.raw("(").copy(parts[0].expression.start,parts[0].expression.end).raw(")");if(parts.every((p)=>p.type==="Text"))return out.from(parts[0]?.start??0,()=>out.raw(JSON.stringify(parts.map((p)=>p.data).join(""))));out.raw("`");for(let p of parts)if(p.type==="Text")out.raw(p.data.replace(/[`\\]|\$\{/g,(c)=>`\\${c}`));else out.raw("${").copy(p.expression.start,p.expression.end).raw("}");return out.raw("`")},key=(attribute,name)=>out.from(attribute.start,()=>out.raw(JSON.stringify(name))).raw(":"),nameAt=(attribute)=>source.indexOf(":",attribute.start)+1,expression=(node)=>out.raw("(").copy(node.start,node.end).raw(")"),directiveCall=(a,tag,extra="")=>{let at=nameAt(a);out.copy(at,at+a.name.length);let equals=a.expression?source.lastIndexOf("=",a.expression.start):at+a.name.length-1;if(out.from(equals,()=>out.raw(`(svelteHTML.mapElementTag(${tag})${extra}`)),a.expression)out.raw(",").copy(a.expression.start,a.expression.end);out.raw(")")},directives=(node,elementId,tag)=>{for(let a of node.attributes??[])if(a.type==="BindDirective"){if(a.name==="this")out.copy(a.expression.start,a.expression.end).raw(` = ${elementId};`);else if(!isGetSet(a.expression))widen(a.expression)}else if(a.type==="ClassDirective")expression(a.expression).raw(";");else if(a.type==="StyleDirective")if(a.value===!0){let at=nameAt(a);out.copy(at,at+a.name.length).raw(";")}else attrValue(a.value).raw(";");else if(a.type==="AnimateDirective")out.raw("__sveltets_2_ensureAnimation("),directiveCall(a,tag,",__sveltets_2_AnimationMove"),out.raw(");");else if(a.type==="TransitionDirective")transitions.push([a.start,a.end]),out.raw("__sveltets_2_ensureTransition("),directiveCall(a,tag),out.raw(");")},shorthandOf=(a)=>{let value=Array.isArray(a.value)?a.value[0]:a.value;return source[a.start]==="{"&&value?.type==="ExpressionTag"&&value.expression.type==="Identifier"?value.expression:void 0},elementAttribute=(a,inComponent)=>{if(a.type==="Attribute"){if(inComponent&&a.name==="slot")return;let shorthand=shorthandOf(a);if(shorthand){out.copy(shorthand.start,shorthand.end).raw(",");return}if(a.name.startsWith("data-")){out.raw("...__sveltets_2_empty({"),key(a,a.name),attrValue(a.value).raw("}),");return}key(a,a.name);let only=Array.isArray(a.value)&&a.value.length===1?a.value[0]:null;if(a.value===!0&&a.name==="popover")out.raw('""');else if(only?.type==="Text"&&NUMBER_ATTRIBUTES.has(a.name.toLowerCase())&&only.data.trim()!==""&&!Number.isNaN(Number(only.data)))out.copy(only.start,only.end);else attrValue(a.value);out.raw(",")}else if(a.type==="SpreadAttribute")out.raw("...").copy(a.expression.start,a.expression.end).raw(",");else if(a.type==="OnDirective"){if(key(a,`on:${a.name}`),a.expression)expression(a.expression);else out.raw("undefined"),forwarded.set(a.name,`__sveltets_2_mapElementEvent(${JSON.stringify(a.name)})`);out.raw(",")}else if(a.type==="BindDirective"&&a.name!=="this")key(a,`bind:${a.name}`),bound(a.expression).raw(",");else if(a.type==="AttachTag")attach(a)},widen=(e)=>{let target=e;while(TS_WRAPPER.test(target.type))target=target.expression;out.raw("() => ").copy(target.start,target.end).raw(" = __sveltets_2_any(null);")},isGetSet=(e)=>e.type==="SequenceExpression"&&e.expressions.length===2,bound=(e)=>{if(!isGetSet(e))return expression(e);let[get,set]=e.expressions;return out.raw("__sveltets_2_get_set_binding(").copy(get.start,get.end).raw(","),out.copy(set.start,set.end).raw(")")},attach=(a)=>out.raw('[Symbol("@attach")]:').copy(a.expression.start,a.expression.end).raw(","),attributeKey=(a)=>{if(a.type==="Attribute")return a.name;if(a.type==="OnDirective")return`on:${a.name}`;if(a.type==="BindDirective")return`bind:${a.name}`;return null},element=(node,tag,tagText,inComponent)=>{let id=`$$_el${uid++}`,boundary=node.type==="SvelteBoundary",objectAt=node.type==="RegularElement"?node.start+node.name.length:node.tag?.end??node.start+1,seen=new Set,repeats=[];out.raw("{");let actions=[];for(let a of node.attributes??[]){if(a.type!=="UseDirective")continue;let action=`$$_action${uid++}`;actions.push(action),out.raw(`const ${action} = __sveltets_2_ensureAction(`),directiveCall(a,tagText),out.raw(");")}out.raw(`const ${id} = `),out.from(node.type==="SvelteElement"?node.start:node.start+1,()=>{if(out.raw("svelteHTML.createElement("),tag(),out.raw(", "),actions.length>0)out.raw(`__sveltets_2_union(${actions.join(",")}), `);out.from(objectAt,()=>out.raw("{"));for(let a of node.attributes??[]){let k=attributeKey(a);if(k!==null&&seen.has(k))repeats.push(a);else{if(k!==null)seen.add(k);elementAttribute(a,inComponent)}}if(boundary){for(let c of node.fragment.nodes)if(c.type==="SnippetBlock")snippetProp(c)}out.raw("})")}),out.raw(";");for(let a of repeats)out.from(objectAt,()=>{out.raw("svelteHTML.createElement("),tag(),out.raw(", {"),elementAttribute(a,inComponent),out.raw("});")});directives(node,id,tagText),fragment(node.fragment,!boundary),out.raw(`}
|
|
38
38
|
`)},slotOf=(slotted)=>(slotted.attributes??[]).find((a)=>a.type==="Attribute"&&a.name==="slot"),lets=(node)=>(node.attributes??[]).filter((a)=>a.type==="LetDirective"),destructureLets=(letDirectives,from,slotted)=>{let slotEnd=slotted?slotOf(slotted).end-1:1/0;if(letDirectives.length===0){if(!slotted)return;let binds=(slotted.attributes??[]).some((a)=>a.type==="BindDirective");out.from(binds?slotEnd:slotted.start,()=>out.raw(from)).raw(";");return}out.raw("const {");for(let d of letDirectives){let at=nameAt(d);if(d.expression)out.raw(`${d.name}:`).copy(d.expression.start,d.expression.end);else out.copy(at,at+d.name.length);out.raw(",")}out.raw("} = ");let last=letDirectives.at(-1).end,after=WHITESPACE.test(source[last]??"")?last:last-1;out.from(Math.min(after,slotEnd),()=>out.raw(from)),out.raw(";")},component=(node,ctor,inComponent=!1)=>{let id=`$$_c${uid++}`,children=node.fragment?.nodes??[],snippets=children.filter((c)=>c.type==="SnippetBlock"),named=children.filter((c)=>c.type!=="SnippetBlock"&&slotOf(c)),rest=children.filter((c)=>c.type!=="SnippetBlock"&&!slotOf(c)),hasDefault=rest.some((c)=>c.type!=="Text"||c.data.trim())&&!snippets.some((s)=>s.expression.name==="children");out.raw(`{ const ${id}C = __sveltets_2_ensureComponent(`),ctor(),out.raw("); "),out.from(node.start+1,()=>{if(out.raw(`const ${id} = new ${id}C({ target: __sveltets_2_any(), props: {`),hasDefault&&svelte>=5)out.raw("children:() => { return __sveltets_2_any(0); },");for(let a of node.attributes??[])if(a.type==="Attribute"){if(inComponent&&a.name==="slot")continue;let shorthand=shorthandOf(a);if(shorthand)out.copy(shorthand.start,shorthand.end).raw(",");else key(a,a.name),attrValue(a.value).raw(",")}else if(a.type==="SpreadAttribute")out.raw("...").copy(a.expression.start,a.expression.end).raw(",");else if(a.type==="BindDirective"&&a.name!=="this")if(out.from(nameAt(a),()=>out.raw(JSON.stringify(a.name))).raw(":"),isGetSet(a.expression))bound(a.expression).raw(",");else out.copy(a.expression.start,a.expression.end).raw(",");else if(a.type==="AttachTag")attach(a);for(let s of snippets)snippetProp(s);out.raw("} });")});for(let a of node.attributes??[])if(a.type==="BindDirective")if(a.name==="this")out.copy(a.expression.start,a.expression.end).raw(` = ${id};`);else{if(!isGetSet(a.expression))widen(a.expression);if(svelte>=5){let start=out.code.length;out.raw(`${id}.$$bindings`),bindingChecks.push({start,end:out.code.length,from:a.start,to:a.end}),out.raw(` = ${JSON.stringify(a.name)};`)}}else if(a.type==="OnDirective"&&!a.expression){if(!forwarded.has(a.name))forwarded.set(a.name,"__sveltets_2_any(0)")}else if(a.type==="OnDirective"&&a.expression)out.from(nameAt(a),()=>out.raw(`${id}.$on(${JSON.stringify(a.name)}, `)),out.copy(a.expression.start,a.expression.end).raw(");");out.raw("{"),destructureLets(lets(node),`${id}.$$slot_def.default`),consts(rest);for(let c of rest)child(c,!0);out.raw("}");for(let c of named){if(out.raw("{"),destructureLets(lets(c),`${id}.$$slot_def[${JSON.stringify(textOf(slotOf(c)))}]`,c),c.type==="SvelteFragment")fragment(c.fragment);else child(c,!0);out.raw("}")}out.raw(`}
|
|
39
|
-
`)},child=(node,inComponent=!1)=>{switch(node.type){case"Text":case"Comment":case"DebugTag":case"ConstTag":return;case"ExpressionTag":case"HtmlTag":return expression(node.expression).raw(";");case"RenderTag":return out.raw(";__sveltets_2_ensureSnippet(").copy(node.expression.start,node.expression.end).raw(");");case"RegularElement":return element(node,()=>out.raw(JSON.stringify(node.name)),JSON.stringify(node.name),inComponent);case"SvelteElement":return element(node,()=>expression(node.tag),"__sveltets_2_any(0)",inComponent);case"SvelteWindow":case"SvelteBody":case"SvelteDocument":return element(node,()=>out.raw(JSON.stringify(node.name)),"__sveltets_2_any(0)",!1);case"SvelteBoundary":return element(node,()=>out.raw('"svelte:boundary"'),"__sveltets_2_any(0)",!1);case"SvelteHead":case"SvelteFragment":case"TitleElement":return fragment(node.fragment);case"SvelteOptions":return;case"Component":return component(node,()=>{let at=node.start+1;out.copy(at,at+node.name.length)},inComponent);case"SvelteComponent":return component(node,()=>expression(node.expression),inComponent);case"SvelteSelf":return component(node,()=>out.raw("__sveltets_2_any(0)"));case"SlotElement":{let nameAttr=(node.attributes??[]).find((a)=>a.type==="Attribute"&&a.name==="name");if(slots.set(nameAttr?textOf(nameAttr):"default",node.attributes??[]),typed.has("$$Slots")){let name=JSON.stringify(nameAttr?textOf(nameAttr):"default");if(out.raw("__sveltets_createSlot("),nameAttr?.value?.[0])out.from(nameAttr.value[0].start,()=>out.raw(name));else out.raw(name);out.raw(", {")}else out.raw("({");for(let a of node.attributes??[])if(a.type==="Attribute"&&a.name!=="name")key(a,a.name),attrValue(a.value).raw(",");else if(a.type==="SpreadAttribute")out.raw("...").copy(a.expression.start,a.expression.end).raw(",");return out.raw("});{"),fragment(node.fragment),out.raw(`}
|
|
39
|
+
`)},child=(node,inComponent=!1)=>{switch(node.type){case"Text":case"Comment":case"DebugTag":case"ConstTag":return;case"ExpressionTag":case"HtmlTag":return expression(node.expression).raw(";");case"RenderTag":return out.raw(";__sveltets_2_ensureSnippet(").copy(node.expression.start,node.expression.end).raw(");");case"RegularElement":return element(node,()=>out.raw(JSON.stringify(node.name)),JSON.stringify(node.name),inComponent);case"SvelteElement":return element(node,()=>{out.raw("__sveltets_2_elementTag("),expression(node.tag),out.raw(")")},"__sveltets_2_any(0)",inComponent);case"SvelteWindow":case"SvelteBody":case"SvelteDocument":return element(node,()=>out.raw(JSON.stringify(node.name)),"__sveltets_2_any(0)",!1);case"SvelteBoundary":return element(node,()=>out.raw('"svelte:boundary"'),"__sveltets_2_any(0)",!1);case"SvelteHead":case"SvelteFragment":case"TitleElement":return fragment(node.fragment);case"SvelteOptions":return;case"Component":return component(node,()=>{let at=node.start+1;out.copy(at,at+node.name.length)},inComponent);case"SvelteComponent":return component(node,()=>expression(node.expression),inComponent);case"SvelteSelf":return component(node,()=>out.raw("__sveltets_2_any(0)"));case"SlotElement":{let nameAttr=(node.attributes??[]).find((a)=>a.type==="Attribute"&&a.name==="name");if(slots.set(nameAttr?textOf(nameAttr):"default",node.attributes??[]),typed.has("$$Slots")){let name=JSON.stringify(nameAttr?textOf(nameAttr):"default");if(out.raw("__sveltets_createSlot("),nameAttr?.value?.[0])out.from(nameAttr.value[0].start,()=>out.raw(name));else out.raw(name);out.raw(", {")}else out.raw("({");for(let a of node.attributes??[])if(a.type==="Attribute"&&a.name!=="name")key(a,a.name),attrValue(a.value).raw(",");else if(a.type==="SpreadAttribute")out.raw("...").copy(a.expression.start,a.expression.end).raw(",");return out.raw("});{"),fragment(node.fragment),out.raw(`}
|
|
40
40
|
`)}case"IfBlock":if(out.raw("if ("),expression(node.test).raw(") {"),fragment(node.consequent),out.raw("}"),node.alternate)out.raw(" else {"),fragment(node.alternate),out.raw("}");return out.raw(`
|
|
41
41
|
`);case"EachBlock":if(out.raw("for (let "),node.context)out.copy(node.context.start,node.context.end);else out.raw("$$_item");if(out.raw(" of __sveltets_2_ensureArray("),out.copy(node.expression.start,node.expression.end).raw(")) {"),node.index)out.raw(`let ${node.index} = 1;`);if(node.key)expression(node.key).raw(";");if(fragment(node.body),out.raw("}"),node.fallback)out.raw("{"),fragment(node.fallback),out.raw("}");return out.raw(`
|
|
42
42
|
`);case"AwaitBlock":{let p=`$$_p${uid++}`;if(out.raw(`{ const ${p} = `),expression(node.expression).raw(";{"),fragment(node.pending),out.raw("}{ const "),node.value)out.copy(node.value.start,node.value.end);else out.raw("$$_v");if(out.raw(` = await ${p};`),fragment(node.then),out.raw("}{ const "),node.error)out.copy(node.error.start,node.error.end);else out.raw("$$_e");return out.raw(" = __sveltets_2_any(0);"),fragment(node.catch),out.raw(`}}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{version2,package_default}from"./shared-zgnhwdjy.js";export{package_default as default,version2 as version};
|
package/shims/shims.d.ts
CHANGED
|
@@ -416,3 +416,11 @@ declare function __sveltets_2_get_set_binding<T>(
|
|
|
416
416
|
get: (() => T) | null | undefined,
|
|
417
417
|
set: (t: T) => void,
|
|
418
418
|
): T;
|
|
419
|
+
/**
|
|
420
|
+
* A `<svelte:element>` tag, as `string` when it may be any element (a
|
|
421
|
+
* component's generic tag): typed as every element's tag, its attributes
|
|
422
|
+
* are a union TypeScript can't represent. A smaller union keeps its tags.
|
|
423
|
+
*/
|
|
424
|
+
declare function __sveltets_2_elementTag<T extends string>(
|
|
425
|
+
tag: T | undefined | null,
|
|
426
|
+
): keyof HTMLElementTagNameMap extends T ? string : T;
|
package/shared-m8wdjzat.js
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import{version2,package_default}from"./shared-w4h7jdyd.js";export{package_default as default,version2 as version};
|
package/shared-w4h7jdyd.js
DELETED