@arcgis/lumina-compiler 4.32.0-next.1 → 4.32.0-next.2
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/dist/index.js +75 -75
- package/package.json +15 -15
package/dist/index.js
CHANGED
|
@@ -1,13 +1,13 @@
|
|
|
1
|
-
import{a as _t,b as
|
|
1
|
+
import{a as _t,b as ke,c as E,d as Q,e as c}from"./chunk-BQ4U6HQL.js";import{a as $}from"./chunk-JFKSI6I7.js";import{nodeExternals as Js}from"rollup-plugin-node-externals";function or(e){let{externalize:t=[],bundleIn:n=[],...r}=e.options?.build?.dependencies??{},i={...Js({...r,include:[/^lit[-/]/u,/^@lit[-/]/u,/^lit$/u,...Array.isArray(t)?t.map(rr):[]],exclude:Array.isArray(n)?n.map(rr):[]}),configResolved(){e.isInStorybook&&(i.resolveId=void 0)}};return i}var rr=e=>e?typeof e=="string"?new RegExp(`^${e.replace(/[.*+?^${}()|[\]\\]/gu,"\\$&")}`,"u"):e:void 0;import va from"vite-plugin-dts";var Fe="customElement.js",ir="customElement.d.ts",Ve=new WeakMap,sr="playwright";function ar(e,t){let r=e.sourcePath.split(c.sep).slice(2),o=t.componentPathMapping;return r.forEach((i,s)=>{s===r.length-1?o[""]??=e.tagName:(o[i]??={},o=o[i])}),o[""]}function ae(e,t,n){if(!e.startsWith(t))return e;let r=e.slice(t.length),o=Bs(r,n);return`${t}${o}`}function Bs(e,t){let n=e.split(c.sep);n.push(".");let r=t.componentPathMapping,o=0;for(let i of n)if(r[i]===void 0){let s=r[""];return typeof s=="string"?[s,...n.slice(o,-1)].join(c.sep):e}else r=r[i],o+=1;return e}var pr=({filePath:e,content:t},n)=>{let r=e.startsWith(n.dir.distComponents)?ae(lr(e),n.dir.distComponents,n):e,o=c.dirname(e);return{filePath:r,content:Xt(t,n,e===r?o:c.dirname(r),o)}};function lr(e,t=".d.ts"){let r=(t===""?e:e.slice(0,-t.length)).split(c.sep);return r.at(Ws)!==r.at(Ks)?e:c.join(r.slice(0,-1).join(c.sep),t===""?Fe:ir)}var Ws=-1,Ks=-2,Hs=/["']\.\.?\/[^'"]+/gu,Xt=(e,t,n,r)=>e.replaceAll(Hs,o=>{let i=o.slice(1);if(!i.startsWith("./")&&!i.startsWith("../"))return o;let s=c.join(r,i),a=!i.endsWith(".js")&&!i.split("/").at(-1).includes(".")?lr(s,""):s,p=ae(a,t.dir.distComponents,t);if(n===r&&s===p)return o;let l=Y(n,p);return`${o[0]}${l}`}),Y=(e,t)=>{let n=c.relative(e,t);return n.startsWith(".")?n:`.${c.sep}${n}`};import{mappedFind as Us}from"@arcgis/components-utils";import Z from"typescript";function be(e,t){let n=Vs(t.getJsDocTags()),r=Z.displayPartsToString(t.getDocumentationComment(e))||void 0,o=n.at(-1);if(o?.text){let i=o?.text?.indexOf(`
|
|
2
2
|
|
|
3
|
-
`);i!==-1&&(r=`${r}${o.text.slice(i)}`,o.text=o.text.slice(0,i))}return{docsTags:n,description:r}}var ze="notPublic",ee="internal",
|
|
4
|
-
${e.content}`}:e,
|
|
5
|
-
`,"\\":"\\\\",'"':'\\"',"'":"\\'","`":"\\`","\u2028":"\\u2028","\u2029":"\\u2029","\x85":"\\u0085","\r\n":"\\r\\n"}));function
|
|
3
|
+
`);i!==-1&&(r=`${r}${o.text.slice(i)}`,o.text=o.text.slice(0,i))}return{docsTags:n,description:r}}var ze="notPublic",ee="internal",Vs=e=>e.map(t=>({name:t.name.toLowerCase()===ze.toLowerCase()?ee:t.name,text:t.text?.map(n=>n.text).join("")})),lt=({modifiers:e=[]},t)=>Us(e,n=>Z.isDecorator(n)&&Z.isCallExpression(n.expression)&&Z.isIdentifier(n.expression.expression)&&n.expression.expression.text===t?n.expression:void 0),Qt=e=>e!==void 0&&(Z.isLiteralExpression(e)||e.kind===Z.SyntaxKind.TrueKeyword||e.kind===Z.SyntaxKind.FalseKeyword||Z.isPrefixUnaryExpression(e)&&Z.isLiteralExpression(e.operand));function dr(e){let t=e.split("|").filter(n=>{let r=n.trim();return r!=="undefined"&&r!=="null"}).join("|").trim();return t.length===0?e:t}var fr=e=>(t,n)=>[zs,Gs,_s,qs,pr,Xs,Qs,Ys,...e.options.types?.declarationTextTransformers??[],...e.declarationTextTransformers].reduce((r,o)=>r===!1?!1:o(r,e),{filePath:t,content:n}),zs=(e,t)=>t.isInStorybook?!1:e,qs=(e,t)=>e.filePath.endsWith(cr)&&e.filePath===c.join(t.dir.dist,cr)?!1:e,cr="lumina.d.ts",Gs=(e,t)=>{let n=t.dir.dist,r=`${n}src/`;return e.filePath.startsWith(r)?{...e,filePath:`${n}${e.filePath.slice(r.length)}`}:!1},Yt=e=>e.includes("__test")||e.includes(".e2e.")||e.includes(".spec.")||e.includes(".test."),_s=e=>Yt(e.filePath)?!1:e,Xs=e=>({filePath:e.filePath,content:e.content.replaceAll(`* @${ze}`,`* @${ee}`)}),Qs=e=>e.content.includes("__esri.")?{filePath:e.filePath,content:`/// <reference types="@arcgis/core/interfaces.d.ts" />
|
|
4
|
+
${e.content}`}:e,mr=new WeakMap,Ys=(e,t)=>{let n=mr.get(t);return n||(n={regex:new RegExp(`(${t.manifestComponents.map(r=>r.name).join("|")})\\[['"\`]el['"\`]\\]`,"ug"),replacements:Object.fromEntries(t.manifestComponents.map(r=>[r.name,r.typeName]))},mr.set(t,n)),{filePath:e.filePath,content:e.content.replace(n.regex,(r,o)=>n.replacements[o])}};import Zs from"typescript";import ur from"typescript";var V=(e,t=!1)=>e.declarations?.filter(n=>n.kind==="class"&&(!t||"tagName"in n&&"customElement"in n))??[];function yr(e,t){return e===void 0?void 0:V(t).find(({name:r})=>r===e)}function De(e,t){let n=dt(t);return e.members?.find(r=>r.name===n)}function dt(e){if(!(!ur.isIdentifier(e.name)&&!ur.isStringLiteralLike(e.name)))return e.name.text}function gr(e,t,n){let r=c.relative(t,e);return n.modules.find(o=>o.path===r)}function ct(e,t,n,r){let o={compiler:e,fileManifest:e.isInPuppeteerTestBackEnd?void 0:gr(n.fileName,e.dir.root,e.manifest),transformation:t},i=n.statements,s=n.statements;return Object.defineProperty(n,"statements",{get:()=>s,configurable:!0}),r.forEach(a=>{s=a(n,o)}),Object.defineProperty(n,"statements",{value:i}),ea(n,s)}var ea=(e,t)=>Zs.factory.updateSourceFile(e,t,e.isDeclarationFile,e.referencedFiles,e.typeReferenceDirectives,e.hasNoDefaultLib,e.libReferenceDirectives),Cr=e=>`${hr}${" ".repeat(e.length-hr.length-xr.length)}${xr}`,hr="/*",xr="*/";import pe from"typescript";var Tr=e=>e.statements.map(oa),ta="@arcgis/lumina",na="LitElement",ra="PublicLitElement";function oa(e){if(pe.isImportDeclaration(e)&&pe.isStringLiteral(e.moduleSpecifier)&&e.moduleSpecifier.text===ta&&e.importClause?.namedBindings&&pe.isNamedImports(e.importClause.namedBindings)){let t=e.importClause.namedBindings.elements.findIndex(r=>(r.propertyName??r.name).text===na);if(t===-1)return e;let n=e.importClause.namedBindings.elements[t];return pe.factory.updateImportDeclaration(e,e.modifiers,pe.factory.updateImportClause(e.importClause,e.importClause.isTypeOnly,e.importClause.name,pe.factory.updateNamedImports(e.importClause.namedBindings,[...e.importClause.namedBindings.elements.slice(0,t),pe.factory.updateImportSpecifier(n,n.isTypeOnly,pe.factory.createIdentifier(ra),n.name),...e.importClause.namedBindings.elements.slice(t+1)])),e.moduleSpecifier,e.attributes)}else return e}import j from"typescript";import{isNotUndefined as fa}from"@arcgis/components-utils";import J from"typescript";import ia from"typescript";var br=5,vr=1,Sr=1,Er=3,Pr=4,mt=ia;sa(mt.createSourceMapGenerator);aa(mt.createTextWriter);pa(mt.getNewLineCharacter);var ve=mt;function sa(e){if(typeof e!="function")throw new Error("Failed to find ts.createSourceMapGenerator() function. Lumina needs to be updated to support the new TypeScript version");if(e.length!==br)throw new Error(`ts.createSourceMapGenerator() signature changed. Expected ${br} arguments. Lumina needs to be updated to support the new TypeScript version`)}function aa(e){if(typeof e!="function")throw new Error("Failed to find ts.createTextWriter() function. Lumina needs to be updated to support the new TypeScript version");if(e.length!==vr)throw new Error(`ts.createTextWriter() signature changed. Expected ${vr} arguments. Lumina needs to be updated to support the new TypeScript version`)}function pa(e){if(typeof e!="function")throw new Error("Failed to find ts.getNewLineCharacter() function. Lumina needs to be updated to support the new TypeScript version");if(e.length!==Sr)throw new Error(`ts.getNewLineCharacter() signature changed. Expected ${Sr} argument. Lumina needs to be updated to support the new TypeScript version`)}function la(e){if(typeof e!="function")throw new Error("Failed to find ts.Printer.writeFile() function. Lumina needs to be updated to support the new TypeScript version");if(e.length!==Er)throw new Error(`ts.Printer.writeFile() signature changed. Expected ${Er} arguments. Lumina needs to be updated to support the new TypeScript version`)}function da(e){if(typeof e!="function")throw new Error("Failed to find ts.Printer.writeNode() function. Lumina needs to be updated to support the new TypeScript version");if(e.length!==Pr)throw new Error(`ts.Printer.writeNode() signature changed. Expected ${Pr} arguments. Lumina needs to be updated to support the new TypeScript version`)}function $e(e){let t=wr.get(e);return t===void 0&&(t=ca(e),wr.set(e,t)),t}function ca(e){let t=ve.createPrinter(e);return la(t.writeFile),da(t.writeNode),t}var wr=new WeakMap;var Zt="_setterTypes";function Mr(e,t,n){let r=$e(n.typeScriptConfig.options);return J.factory.createPropertyDeclaration([J.factory.createModifier(J.SyntaxKind.ReadonlyKeyword)],J.factory.createIdentifier(Zt),void 0,J.factory.createTypeLiteralNode(e.map(o=>{let[i,s]=ma(o.name,o.type,r,t);return J.factory.createPropertySignature(void 0,i,o.isRequired?J.factory.createToken(J.SyntaxKind.QuestionToken):void 0,s)})),void 0)}function ma(e,t,n,r){let o=n.printNode(J.EmitHint.Unspecified,e,r),i=n.printNode(J.EmitHint.Unspecified,t,r),s=`declare class A { ${o}: ${i} }`,l=J.createSourceFile("a.d.ts",s,J.ScriptTarget.Latest,!1,J.ScriptKind.TS).statements[0].members[0];return[l.name,l.type]}var Fr=(e,t)=>t.fileManifest===void 0?e.statements:e.statements.map(n=>ua(n,e,t));function ua(e,t,n){if(j.isClassDeclaration(e)){let r=e,o=r.name?.text,i=n.fileManifest.declarations?.find(p=>p.name===o&&p.tagName);if(i===void 0)return e;let s=[],a=r.members.map(p=>ya(p,i,s)).filter(fa);return s.length>0&&a.push(Mr(s,t,n.compiler)),j.factory.updateClassDeclaration(r,r.modifiers,r.name,r.typeParameters,r.heritageClauses,a)}else return e}function ya(e,t,n){if(j.isPropertyDeclaration(e)){if(en(e))return;let r=tn(e),o=nn(t,r);return o===void 0?ga(t,r)===void 0?void 0:j.factory.updatePropertyDeclaration(e,kr(e.modifiers),e.name,void 0,ha(e.type),e.initializer):o.readonly?j.factory.updatePropertyDeclaration(e,kr(e.modifiers),e.name,void 0,e.type,e.initializer):e}else if(j.isGetAccessor(e)||j.isSetAccessor(e)){if(en(e))return;let r=nn(t,tn(e));if(r===void 0)return;if(j.isSetAccessor(e)){if(r.readonly)return;let o=r.getterType!==void 0,s=e.parameters[0].type;o&&s&&n.push({name:e.name,type:s,isRequired:r.docsTags?.some(a=>a.name==="required")??!1})}return e}else if(j.isMethodDeclaration(e))return en(e)||nn(t,tn(e))===void 0?void 0:e}var en=e=>e.modifiers?.some(t=>t.kind===j.SyntaxKind.StaticKeyword)??!1,tn=e=>j.isIdentifier(e.name)||j.isStringLiteralLike(e.name)?e.name.text:void 0,nn=(e,t)=>t===void 0?void 0:e.members?.find(n=>n.name===t),ga=(e,t)=>t===void 0?void 0:e.events?.find(n=>n.name===t);function kr(e){return e?.some(n=>n.kind===j.SyntaxKind.ReadonlyKeyword)?e:[j.factory.createModifier(j.SyntaxKind.ReadonlyKeyword),...e??[]]}function ha(e){if(e!==void 0)return j.isImportTypeNode(e)&&e.qualifier&&j.isIdentifier(e.qualifier)&&e.qualifier.escapedText==="EventEmitter"?j.factory.createTypeReferenceNode("CustomEvent",e.typeArguments):e}var xa=[Tr,Fr];function Dr(e){let t,n=Ca(e);return{name:"@arcgis/lumina:componentDtsTransformer",supports(r){return t??=new Set(e.componentFiles),r.endsWith(".tsx")&&t.has(r)},transform({id:r}){if(e.isInStorybook)return[];let o=e.typeScriptProgram.getSourceFile(r);if(!o)throw new Error(`Could not find source file: ${E(r)}`);let i=[];return e.typeScriptProgram.emit(o,(p,l)=>{i.push({path:p,content:l})},void 0,!0,{afterDeclarations:[n]}),i}}}var Ca=e=>t=>n=>ct(e,t,n,[...xa,...e.options.types?.declarationAstTransformers??[]]);var $r=e=>new Proxy(e,{get:Ta,set:ba});function Ta(e,t,n){if(t in e)return Reflect.get(e,t,n);throw new Error(`Requested unexpected property ${String(t)}`)}function ba(e,t){throw new Error(`Unexpectedly tried to set the ${String(t)} property.`)}function Ar(e){let t=e.options.types??{},n=!1,r={...t?.compilerOptions,rootDir:"."},o=va({...t,compilerOptions:r,tsconfigPath:e.typeScriptConfigPath,strictOutput:!0,afterDiagnostic(i){let s=i.length>0,a=e.viteCommand==="build";if(s&&a)throw new Error("TypeScript errors reported. See error messages above");return t?.afterDiagnostic?.(i)},beforeWriteFile:fr(e),resolvers:[{name:"@arcgis/lumina:getHostReference",supports:()=>!n,transform({program:i,host:s}){return n=!0,e.typeScriptProgram=i,e.typeScriptTypeChecker=i.getTypeChecker(),e.typeScriptHost=s,t?.typeScriptInstanceCreated?.(i,s),[]}},...t?.resolvers??[],Dr(e)]});return{...o,apply:()=>e.viteCommand==="build",async configResolved(i){r.sourceMap=i.build.sourcemap!==!1;let s=o.configResolved;if(typeof s!="function")throw new Error("Expected configResolved to be a function");await s.call(this,i)},async buildStart(i){let s=o.buildStart;if(typeof s!="function")throw new Error("Expected buildStart to be a function");let a=o.transform;if(typeof a!="function")throw new Error("Expected transform to be a function");if(await s.call(this,i),await a.call($r({}),"",c.join(e.dir.src,"__fakeFile.ts")),!n)throw new Error("Expected resolver to get called")}}}import{isNotUndefined as oc}from"@arcgis/components-utils";var Sa=/\r\n|[\\`\u0000-\u001f\t\v\f\b\r\u2028\u2029\u0085]/gu,Ea=new Map(Object.entries({" ":"\\t","\v":"\\v","\f":"\\f","\b":"\\b","\r":"\\r","\n":`
|
|
5
|
+
`,"\\":"\\\\",'"':'\\"',"'":"\\'","`":"\\`","\u2028":"\\u2028","\u2029":"\\u2029","\x85":"\\u0085","\r\n":"\\r\\n"}));function Lr(e){return`\\u${`0000${e.toString(Pa).toUpperCase()}`.slice(-wa)}`}var Pa=16,wa=4;function Ma(e,t,n){if(e.charCodeAt(0)===Da){let r=n.charCodeAt(t+e.length);return r>=$a&&r<=Aa?"\\x00":"\\0"}return Ea.get(e)||Lr(e.charCodeAt(0))}var ka=e=>e.replace(Sa,Ma),Nr=/[^\u0000-\u007F]/g;function Fa(e){return e=ka(e),Nr.test(e)?e.replace(Nr,t=>Lr(t.charCodeAt(0))):e}var Ir=Fa,Da=0,$a=48,Aa=57,Na=/\$\{/gu,jr=e=>e.replace(Na,"\\${");function Rr(e){if(e.length===0)return"";let t=e[0];if(e.includes(`
|
|
6
6
|
`)){let o=t===`
|
|
7
7
|
`,i=e.lastIndexOf(`
|
|
8
|
-
`),a=e.slice(i+1).trim().length===0,p=o?e.trimStart():e;return a?p.trimEnd():p}return e.trim().length===0?t:e}var
|
|
9
|
-
`),an=N.TypeFormatFlags.NoTruncation|N.TypeFormatFlags.WriteArrayAsGenericType|N.TypeFormatFlags.SuppressAnyReturnType|N.TypeFormatFlags.MultilineObjectLiterals|N.TypeFormatFlags.InTypeAlias,
|
|
10
|
-
`,"document.adoptedStyleSheets = [...document.adoptedStyleSheets, ",l,".styleSheet];"].join("")}else{if(p.endsWith(Xe))return a;{let l=E(c.relative(Q(),n));throw new Error(`Found a side-effect CSS import \`${a}\` in "${l}". Such import is not allowed as it won't work with shadow DOM. Please use \`import { styles } from "example.css";\` instead and then add \`static override styles = styles;\` to your component`)}}}),map:null}}}),
|
|
8
|
+
`),a=e.slice(i+1).trim().length===0,p=o?e.trimStart():e;return a?p.trimEnd():p}return e.trim().length===0?t:e}var Se=e=>jr(Ir(e)),Or=e=>!La.test(e),La=/^[^\s"'=<>`]+$/u,Ia=/[&<>]/gu,ja={"&":"&","<":"<",">":">"},ft=e=>e.replace(Ia,t=>ja[t]);import N from"typescript";import{existsSync as Ra,readFileSync as tm}from"node:fs";import{access as Oa,constants as Ja,mkdir as rm,writeFile as om}from"node:fs/promises";import{dirname as Jr,join as Br,resolve as Wr,sep as ut}from"node:path";import{fileURLToPath as Kr}from"node:url";function yt(e,t=process.cwd()){let r=(t.startsWith("file:///")?Jr(Kr(t)):Wr(t)).split(ut);for(;r.length>2;){let o=Br(...ut==="/"?["/"]:[],...r,e);if(Ra(o))return o;r.pop()}}async function Hr(e,t=process.cwd()){let r=(t.startsWith("file:///")?Jr(Kr(t)):Wr(t)).split(ut);for(;r.length>2;){let o=Br(...ut==="/"?["/"]:[],...r,e);if(await B(o))return o;r.pop()}}var B=async e=>await Oa(e,Ja.F_OK).then(()=>!0).catch(()=>!1);import{readFileSync as Ba}from"node:fs";import{readFile as Wa}from"node:fs/promises";var qe={},Ur={},Ka;function A(e){let t=e?c.resolve(e,"package.json"):Ka??=yt("package.json");return qe[t]??=JSON.parse(Ba(t,"utf-8")),qe[t]}async function le(e=Q()){let t=c.resolve(e,"package.json");if(t in qe)return qe[t];Ur[t]??=Ha(t);let n=await Ur[t];return qe[t]??=n,n}var Ha=async e=>JSON.parse(await Wa(e,"utf-8")),gt={},Vr={};async function de(e,t){if(e in gt)return gt[e];Vr[e]??=Hr(c.join("node_modules",e,"package.json"),t).then(r=>{if(r===void 0)throw new Error(`@arcgis/lumina-compiler: Unable to resolve package.json location for "${e}" package. Current working directory: ${process.cwd()}`);return c.dirname(r)});let n=await Vr[e];return gt[e]??=n,gt[e]}import{isNotUndefined as Ua}from"@arcgis/components-utils";import{readdir as Va}from"node:fs/promises";var zr=async e=>Object.fromEntries((await e.componentFilesPromise).map(t=>[rn(t),t])),rn=(e,t=c.resolve("src"))=>c.relative(t,c.join(e,"..",Fe.slice(0,-3))),Ge=async(e,t,n=t)=>await Va(n,{recursive:!0}).then(r=>{let o=r.map(i=>{if(!i.endsWith(".tsx"))return;let s=c.join(n,i);return ce(s,t)?s:void 0}).filter(Ua);return e.componentFiles=o,o}).catch(r=>{if(String(r).includes("ENOENT"))return console.log("Unable to find the src/components/ directory"),[];throw r});function ce(e,t){if(!e.startsWith(t)||!e.endsWith(".tsx"))return!1;let[n,r]=e.slice(0,-4).split(c.sep).slice(za);return n===r}var za=-2;function qr(e){return e==="boolean"?{type:"boolean",raw:e}:Number.isNaN(Number.parseFloat(e))?(e.startsWith('"')||e.startsWith("'"))&&e.startsWith(e.at(-1))?{value:e.slice(1,-1),type:"string",raw:e}:{type:e,raw:e}:{value:e,type:"number",raw:e}}var sn="@arcgis/lumina:addPropMetadata";function xt(e){let t=N.isUnionTypeNode(e)?e.types.map(ht):[ht(e)],n=new Set(t),r=n.delete("true"),o=n.delete("false");(r||o)&&n.add("boolean");let i=Array.from(n).sort();return i.length>1&&(i=i.map(s=>s.includes("=>")?`(${s})`:s)),i.map(qr)}var Ct=e=>e.map(t=>t.raw).join(" | ");function ht(e){qa.writeNode(N.EmitHint.Unspecified,e,void 0,on);let t=on.getText();return on.clear(),t}var qa=$e({removeComments:!0}),on=ve.createTextWriter(`
|
|
9
|
+
`),an=N.TypeFormatFlags.NoTruncation|N.TypeFormatFlags.WriteArrayAsGenericType|N.TypeFormatFlags.SuppressAnyReturnType|N.TypeFormatFlags.MultilineObjectLiterals|N.TypeFormatFlags.InTypeAlias,Ga=an&N.TypeFormatFlags.NodeBuilderFlagsMask,_a=Ga|N.NodeBuilderFlags.IgnoreErrors|N.NodeBuilderFlags.NoTruncation;function Xa(e,t,n){let r=new Map;_e(t,r,n);let o=t.flags&N.TypeFlags.Union?t.types.every(Gr):Gr(t),i=e.typeToTypeNode(t,void 0,_a&(o?~N.TypeFormatFlags.MultilineObjectLiterals:-1));return r.forEach(Qa),i===void 0?(console.error("Failed to convert type to type node."),N.factory.createTypeReferenceNode(N.factory.createIdentifier("unknown"),void 0)):i}var Gr=e=>e.flags&N.TypeFlags.Object?e.getProperties().length===1:!!(e.flags&N.TypeFlags.PossiblyFalsy);function Ee(e,t,n,r){let o=[],i=new Set;function s(p,l){if(!p.symbol)return;let d=l?p.aliasTypeArguments?.[0]?.symbol?.escapedName??"":p.symbol.name;if(d.startsWith("_")){let y=p.symbol.declarations?.[0];if(y?.kind===N.SyntaxKind.FunctionType){let f=y;if(f.parameters.forEach(g=>{if(!g.type)return;let C=e.getTypeFromTypeNode(g.type);_e(C,new Map,s,!0)}),f.type){let g=e.getTypeFromTypeNode(f.type);_e(g,new Map,s,!0)}}return}if(i.has(d))return;let m=l?{name:d,package:void 0,module:"index.js"}:Ya(p.symbol,d,n,r);o.push(m),i.add(d)}return{typeNode:Xa(e,t,s),references:o}}function _e(e,t,n,r=!1){if(typeof e!="object"||e===null||!("checker"in e))return;let o=e;if(t.has(o))return;let i=(o.flags&N.TypeFlags.Object)!==0&&(o.aliasTypeArguments?.[0]?.objectFlags??0&N.ObjectFlags.Class)!==0&&o.aliasSymbol?.escapedName==="ToElement";if(n?.(o,i),i||r)t.set(o,{origin:void 0,aliasSymbol:void 0,aliasTypeArguments:void 0});else{let s=o.origin,a=o.aliasSymbol,p=o.aliasTypeArguments;s&&(o.origin=void 0),a&&(o.aliasSymbol=void 0),p&&(o.aliasTypeArguments=void 0),t.set(o,{origin:s,aliasSymbol:a,aliasTypeArguments:p})}Object.entries(o).forEach(([s,a])=>{(s.includes("type")||s.includes("Type")||s==="constraint")&&s!=="resolvedBaseConstructorType"&&s!=="resolvedBaseTypes"&&s!=="typeParameters"&&s!=="typeParameter"&&(Array.isArray(a)?a.forEach(p=>_e(p,t,n,r)):_e(a,t,n,r))})}function Qa(e,t){e.origin!==void 0&&(t.origin=e.origin),e.aliasSymbol!==void 0&&(t.aliasSymbol=e.aliasSymbol),e.aliasTypeArguments!==void 0&&(t.aliasTypeArguments=e.aliasTypeArguments)}function Ya(e,t,n,r){let o=e?.declarations?.map(a=>a.getSourceFile())??[];if(o.length===0){if(t==="Array")return{name:"Array",package:"typescript",module:"lib/lib.es5.d.ts"};console.error(`${sn} Unable to resolve the declaration file name for type ${t} in ${E(n.fileName)}`)}if(o.length===0)return{name:t,package:pn,module:void 0};let{packageName:i,moduleName:s}=Za(o[0].fileName,r);return i?{name:t,package:i,module:s.length>0?s:void 0}:{name:t,package:void 0,module:s}}var pn="global:";function Za(e,t){let n=e.split("/node_modules/");if(n.length>1){let s=n.at(-1);return ln(s)}let o=e.split("/dist/");if(o.length>1){let s=o.slice(0,-1).join("/"),p=A(s).name,l=o.at(-1);return{packageName:p,moduleName:l}}return{packageName:void 0,moduleName:c.relative(t.root,tp(ep(e,t)))}}function ep(e,t){return ce(e,t.srcComponents)?c.join(t.dist,rn(e,t.src)):e.startsWith(t.src)?c.join(t.dist,e.slice(t.src.length)):e}var tp=e=>e.endsWith(".js")?e:`${e.endsWith(".ts")?e.slice(0,-3):e.endsWith(".tsx")?e.slice(0,-4):e}.d.ts`;function ln(e){let t=e.split("/"),r=e[0].startsWith("@")?2:1,o=t.slice(0,r).join("/"),i=t.slice(r).join("/");return{packageName:o,moduleName:i}}var _r=e=>e.includes("/node_modules/")||e.includes("/dist/");var np=["css","less","sass","scss","styl","stylus","pcss","postcss","sss"],Xr=new RegExp(`\\.(${np.join("|")})(\\?|$)`,"u"),rp=/^import ["'](?<specifier>[^"']+)["'];$/gmu,op=()=>"throwError",Qr="@arcgis/lumina:loadLitCss",me="?layered",Xe="?global",Yr=e=>({name:Qr,enforce:"pre",configResolved(t){let n=t.plugins.find(({name:o})=>o==="vite:css-post");if(n===void 0)throw new Error("Unable to find the vite's built-in vite:css-post plugin");let r=n.transform;if(typeof r!="function")throw new Error("Expected vite:css-post to declare a transform() function");n.transform=async function(i,s){let a=s.endsWith(me);a&&(s=s.slice(0,-me.length));let p=s.endsWith(Xe);if(p&&(s=s.slice(0,-Xe.length)),!Xr.test(s)||s.includes("?"))return await r.call(this,i,s);let l=`${s}?inline`,d=await r.call(this,i,l),{code:m,...y}=typeof d=="string"?{code:d}:d??{};return typeof m!="string"||!m.startsWith(Zr)||!m.endsWith(eo)?(console.warn(`${Qr} Expected vite:css-post to return a JS module with a string literal for ${E(s)}.`),console.log(d),d):p?(e.globalCssString=to(m),{code:"",map:{mappings:""}}):{...y,code:pp(m,e.hmrEnabled,e.shouldMinify,a),map:{mappings:""}}}},transform(t,n){if(!(n.endsWith(".js")||n.endsWith(".ts")||n.endsWith(".tsx")||e.isInStorybook&&n.endsWith(".mdx")))return;let o=0,i=_r(n);return{code:t.replaceAll(rp,(a,p)=>{if(!Xr.test(p)||p.includes("?"))return a;if(i){if((e.options.css?.sideEffectImportHandling??op)(p,n)==="drop")return Cr(a);{let m=E(c.relative(Q(),n));throw new Error(`Found a side-effect CSS import \`${a}\` in "${m}". Such import is not allowed as it won't work with shadow DOM. This file appears to be external so such import may not be under your control. To ignore this import, please set the css.sideEffectImportHandling property in useLumina() plugin to a function that will return "drop" for this import to indicate that you wish to have this style import dropped. Then, you would have to import the dropped manually in your component like so: \`import { styles } from "example.css";\` and then add \`static override styles = styles;\` to your component`)}}else if(e.isInStorybook&&dp(n,e)){let l=`storybookCss$${o}`;return o+=1,["import ",l," from ",a.slice(6),`
|
|
10
|
+
`,"document.adoptedStyleSheets = [...document.adoptedStyleSheets, ",l,".styleSheet];"].join("")}else{if(p.endsWith(Xe))return a;{let l=E(c.relative(Q(),n));throw new Error(`Found a side-effect CSS import \`${a}\` in "${l}". Such import is not allowed as it won't work with shadow DOM. Please use \`import { styles } from "example.css";\` instead and then add \`static override styles = styles;\` to your component`)}}}),map:null}}}),Zr='export default "',eo='"',ip="import { css } from '@lit/reactive-element/css-tag.js';\nexport const styles = css`",sp="`;\nexport default styles;",ap=`
|
|
11
11
|
|
|
12
12
|
if(import.meta.hot) {
|
|
13
13
|
import.meta.hot.data.styles ??= styles;
|
|
@@ -18,74 +18,74 @@ if(import.meta.hot) {
|
|
|
18
18
|
}
|
|
19
19
|
import.meta.hot.data.styles.styleSheet.replaceSync(nextExports.styles.cssText);
|
|
20
20
|
});
|
|
21
|
-
}`,
|
|
21
|
+
}`,to=e=>e.slice(Zr.length,-eo.length);function pp(e,t,n,r){let i=to(e).replaceAll('\\"','"').replaceAll("`","\\`"),s=Se(lp(i)),a=r?`@layer{${n?"":`
|
|
22
22
|
`}${s}${n?"":`
|
|
23
|
-
`}}`:s;return`${
|
|
24
|
-
`),
|
|
23
|
+
`}}`:s;return`${ip}${a}${sp}${t?ap:""}`}var lp=e=>e.replaceAll("\\n",`
|
|
24
|
+
`),dp=(e,t)=>e.endsWith(".mdx")||e.includes(".stories.")||e.includes(".story.")||e.startsWith(`${t.dir.root}stories/`);import{camelToKebab as Pp}from"@arcgis/components-utils";import{lazyMetaSubItemJoiner as wp,lazyMetaItemJoiner as un,lazyMetaGroupJoiner as Mp}from"@arcgis/lumina/config";import{create as cp}from"@custom-elements-manifest/analyzer/src/browser-entrypoint.js";import mp from"typescript";import{isNotUndefined as fp,kebabToPascal as up,uncapitalize as yp}from"@arcgis/components-utils";var Ae="@arcgis/lumina-compiler",ro="4.32.0-next.2";function dn(e,t,n){e.modules.sort((s,a)=>{let p=s.fileName.split("/"),l=p.pop(),d=p.join("/"),m=a.fileName.split("/"),y=m.pop(),f=m.join("/");return d===f?l<y?-1:1:d.startsWith(f)?1:f.startsWith(d)||d<f?-1:1});let r=cp(e);r.modules.forEach(s=>{s.path=c.relative(t.dir.root,s.path),s.exports?.forEach(a=>{typeof a.declaration.module=="string"&&(a.declaration.module=c.relative(t.dir.root,a.declaration.module))})});let o={timestamp:new Date().toISOString().split(".")[0],compiler:{name:Ae,version:ro,typescriptVersion:mp.version},...r};n||(t.componentPathMapping={});let i=o.modules.flatMap(s=>V(s,!0).map(a=>{a.sourcePath=s.path;let p=ar(a,t);return a.importPath=["components",p].join(c.sep),a.typeName=`HTML${up(a.tagName)}Element`,a}));return n?r:(t.manifest=o,t.manifestComponents=i,t.viteCommand==="build"?t.manifestComponents.forEach(s=>{gp(s,t)}):t.manifestComponents.forEach(s=>s.members?.forEach(a=>{a.kind==="field"&&a.readonly&&(a.readonly=void 0)})),t.options.manifests?.afterManifestCreate?.(o),o)}var cn=new Set(["componentOnReady"]);function gp(e,t){let n=new Map(t.manifestComponents.map(r=>[r.name,r.typeName]));e.attributes=e.attributes?.map(r=>{let o=r.fieldName,i=e.members?.find(l=>l.kind==="field"&&l.name===o);if(i===void 0)throw new Error(`Unable to find the "${o}" property for the "${r.name}" attribute in ${e.name}`);if(r.type=i.type,r.inheritedFrom=i.inheritedFrom,r.default=i.default,r.description=i.description,i.readonly&&i.reflects!==!0){i.attribute=void 0;return}if(!i.isAttributeEligible){i.attribute=void 0;return}return r}).filter(fp),e.members?.forEach(r=>{if(r.kind==="field"){let s=r;s.isAttributeEligible=void 0}if(oo(r.type,n,t),!r.inheritedFrom)return;let i=r.kind==="method"&&r.name==="componentOnReady";if(i&&(r.inheritedFrom.module=void 0,r.inheritedFrom.package="@arcgis/lumina"),i){let s=yp(e.name);r.docsTags=[{name:"example",text:`const ${s} = document.createElement("${e.tagName}");
|
|
25
25
|
document.body.append(${s});
|
|
26
26
|
${s}.componentOnReady().then(() => {
|
|
27
27
|
console.log("${e.tagName} is ready to go!");
|
|
28
|
-
});`}]}r.inheritedFrom?.module&&c.isAbsolute(r.inheritedFrom.module)&&(r.inheritedFrom.module=c.relative(t.dir.root,r.inheritedFrom.module))}),e.events?.forEach(r=>{r.inheritedFrom?.module&&c.isAbsolute(r.inheritedFrom.module)&&(r.inheritedFrom.module=c.relative(t.dir.root,r.inheritedFrom.module)),
|
|
29
|
-
setCustomElementsManifest(${
|
|
30
|
-
});`}var
|
|
31
|
-
`):`import "${n}${Xe}";`}var mn="hydrated";function
|
|
32
|
-
`)}var
|
|
33
|
-
|
|
34
|
-
`}${e.globalCssString?JSON.parse(`"${e.globalCssString}"`):""}`;function
|
|
35
|
-
`),"});",e.hmrEnabled
|
|
36
|
-
`)}var
|
|
37
|
-
export declare const defineCustomElements: import("@arcgis/lumina").DefineCustomElements;`,
|
|
38
|
-
|
|
28
|
+
});`}]}r.inheritedFrom?.module&&c.isAbsolute(r.inheritedFrom.module)&&(r.inheritedFrom.module=c.relative(t.dir.root,r.inheritedFrom.module))}),e.events?.forEach(r=>{r.inheritedFrom?.module&&c.isAbsolute(r.inheritedFrom.module)&&(r.inheritedFrom.module=c.relative(t.dir.root,r.inheritedFrom.module)),oo(r.type,n,t)})}function oo(e,t,n){e&&(e.references?.forEach(r=>hp(r,t,n)),typeof e.text=="string"&&(e.text=e.text.replaceAll(Cp,(r,o)=>t.get(o)??r)),e.values?.forEach(xp,t))}function hp(e,t,n){e.package===void 0&&(e.module?.startsWith("dist/components/")?e.module=ae(e.module,"dist/components/",n):e.module==="index.js"&&e.name&&(e.name=t.get(e.name)??e.name))}function xp(e){e.type.startsWith("ToElement<")&&(e.type=this.get(e.type.slice(10,-1))??e.type)}var Cp=/ToElement<(\w+)>/gu,Tp={kind:"method",name:"componentOnReady",return:{type:{text:"Promise<void>"}},description:"Create a promise that resolves once component is fully loaded.",type:{signature:"(): Promise<void>",references:[{name:"Promise",package:"typescript",module:"lib/lib.es5.d.ts"}]},async:!0},bp={kind:"class",description:"The base public interface for all `@arcgis/lumina` components",name:"LitElement",typeName:"LitElement",members:[Tp],attributes:[],docsTags:[],tagName:"lit-element",customElement:!0,sourcePath:"src/LitElement.ts",importPath:"",encapsulation:"shadow"},vp={timestamp:"2000-00-00T00:00:00",compiler:{name:"@arcgis/lumina",version:"X.X.X",typescriptVersion:"X.X.X"},schemaVersion:"1.0.0",modules:[{kind:"javascript-module",path:"dist/index.js",declarations:[bp],exports:[{kind:"custom-element-definition",name:"lit-element",declaration:{name:"LitElement",module:"dist/index.js"}}]}]},io={thirdPartyCEMs:[vp],states:[]};function so(e){return`import("@storybook/web-components").then(({ setCustomElementsManifest }) => {
|
|
29
|
+
setCustomElementsManifest(${Sp(e)});
|
|
30
|
+
});`}var Sp=e=>`JSON.parse(\`${JSON.stringify(JSON.stringify(e)).slice(1,-1).replaceAll('\\"','"').replaceAll("`","\\`")}\`)`;function ao(e){Ep(e);let t=e.options.css?.globalStylesPath;if(!t)return"";let n=Y(e.dir.src,t);return e.viteCommand==="serve"?[`import globalStyles from "${n}${me}";`,"document.adoptedStyleSheets = [...document.adoptedStyleSheets, globalStyles.styleSheet!];",fn("",e)].join(`
|
|
31
|
+
`):`import "${n}${Xe}";`}var mn="hydrated";function Ep(e){e.globalHydratedCssString=[":not([",e.options.css?.hydratedAttribute??mn,"]):is(",e.manifestComponents.map(t=>t.tagName).join(","),"){visibility:hidden}"].join("")}function fn(e,t){return["const globalCss = new CSSStyleSheet();",`globalCss.replaceSync("@layer{${`${t.globalHydratedCssString}${t.shouldMinify?"":"\\n\\n"}${e||""}`}}");`,"document.adoptedStyleSheets = [...document.adoptedStyleSheets, globalCss];"].join(`
|
|
32
|
+
`)}var po=e=>`${e.globalHydratedCssString}${e.shouldMinify?"":`
|
|
33
|
+
|
|
34
|
+
`}${e.globalCssString?JSON.parse(`"${e.globalCssString}"`):""}`;function lo(e){let t=e.manifestComponents.map(r=>kp(r,e));return[e.viteCommand==="build"&&e.options.build?.ssr?.stencilCompatibility?.enabled===!0?'import "@lit-labs/ssr-client/lit-element-hydrate-support.js";':"",'import { runtime } from "./runtime";','import { makeDefineCustomElements } from "@arcgis/lumina";',ao(e),e.hmrEnabled?Dp:"","",e.isInStorybook?so(e.manifest):"","","export const defineCustomElements = makeDefineCustomElements(runtime, {",t.join(`,
|
|
35
|
+
`),"});",e.hmrEnabled?$p(e.manifestComponents.map(r=>r.sourcePath)):""].join(`
|
|
36
|
+
`)}var co=`import "./index";
|
|
37
|
+
export declare const defineCustomElements: import("@arcgis/lumina").DefineCustomElements;`,kp=(e,t)=>[` "${e.tagName}": [`,`()=>import("${c.join(t.dir.root,e.sourcePath)}"),`,Fp(e),"]"].join("");function Fp(e){let{properties:t,asyncMethods:n,syncMethods:r}=yn(e),o=t.map(d=>d.join(wp)).join(un),i=n.join(un),s=r.join(un),a=[o,i,s],p=a.findLastIndex(d=>d.length>0),l=a.slice(0,p+1);return l.length>0?`"${l.join(Mp)}"`:""}function yn(e){let t=(e.members??[]).filter(i=>i.kind==="field"&&!cn.has(i.name)).map(i=>{let s=i,a=typeof s.attribute=="string",p=a&&s.attribute!==Pp(s.name);return a&&!p?[s.name]:[s.name,p?String(s.attribute):""]}),n=(e.members??[]).filter(i=>i.kind==="method"&&!cn.has(i.name)),r=n.filter(i=>i.async===!0).map(i=>i.name),o=n.filter(i=>i.async!==!0).map(i=>i.name);return{tagName:e.tagName,properties:t,asyncMethods:r,syncMethods:o}}var Dp=`import { handleHmrUpdate, handleComponentMetaUpdate } from "@arcgis/lumina";
|
|
38
|
+
`,$p=e=>`
|
|
39
39
|
if(import.meta.hot) {
|
|
40
40
|
import.meta.hot.on("component-meta-update", handleComponentMetaUpdate);
|
|
41
41
|
import.meta.hot.accept([
|
|
42
42
|
${Array.from(new Set(e)).map(t=>` "/${t}",`).join(`
|
|
43
43
|
`)}
|
|
44
44
|
], handleHmrUpdate);
|
|
45
|
-
}`;import Ee from"typescript";import V from"typescript";import{isNotUndefined as $p}from"@arcgis/components-utils";import{defaultEventBubbles as co,defaultEventCancelable as mo,defaultEventComposed as fo}from"@arcgis/lumina/config";function uo(e,t,n,r,o){let i=n.getProperty("emit");if(!i?.valueDeclaration)return;let s=i.valueDeclaration,l=e.getTypeOfSymbolAtLocation(i,s).getCallSignatures().map(m=>{let y=m.getReturnType();if(y.symbol?.name!=="CustomEvent")return;let f=e.getTypeArguments(y)?.at(0);if(f===void 0)return{original:"any",resolved:"any",references:[]};let{typeNode:g,references:C}=Se(e,f,r,o),u=gt(g);return{original:u,resolved:u,references:C}}).filter($p);if(l.length===0)return;let d=Ap(r,t);return{...Np(l),...d}}var Ct="createEvent";function Ap(e,t){if(!V.isIdentifier(t.name)&&!V.isStringLiteral(t.name))throw new Error(`Expected event property name to be an identifier or a string literal. Found ${t.name.getText(e)}`);let n=t.name.text,r={eventName:n,cancelable:mo,bubbles:co,composed:fo};if(!t.initializer||!V.isCallExpression(t.initializer))return r;let o=t.initializer;if(!V.isIdentifier(o.expression)||o.expression.text!==Ct)return r;let i=o.arguments[0];if(!i)return r;if(!V.isObjectLiteralExpression(i))throw new Error(`Expected object literal expression as first argument of ${Ct}(). Found ${n} = createEvent(${i.getText(e)})`);if(i.properties.some(s=>V.isSpreadAssignment(s)))throw new Error(`Unexpected spread syntax in ${Ct}() argument. ${Ct}() arguments must be statically parsable at compile time`);return r.cancelable=Qe(i,"cancelable")??mo,r.bubbles=Qe(i,"bubbles")??co,r.composed=Qe(i,"composed")??fo,r}function Qe(e,t){let n=e.properties.find(o=>V.isPropertyAssignment(o)&&V.isIdentifier(o.name)&&o.name.text===t);if(n===void 0)return;if(!V.isPropertyAssignment(n))throw new Error(`Expected boolean literal as ${t} property. Found ${n.getText()}`);let r=n.initializer;if(r.kind===V.SyntaxKind.TrueKeyword)return!0;if(r.kind===V.SyntaxKind.FalseKeyword)return!1;throw new Error(`Expected boolean literal as ${t} property. Found ${n.getText()}`)}var Np=e=>({isReadonly:!1,values:void 0,original:e.map(t=>t.original).join(" | "),resolved:e.map(t=>t.resolved).join(" | "),references:e.flatMap(t=>t.references),isAttributeEligible:!1});var yo=(e,t,n,r)=>{let o=Ee.isSetAccessor(r)?r.parameters[0]:r,i=n.getSourceFile(),s=e.getTypeAtLocation(o),{typeNode:a,references:p}=Se(e,s,i,t),l=Ee.isGetAccessor(r)||Ee.isSetAccessor(r)?void 0:uo(e,r,s,i,t);if(l)return l;let d=pt(n,"property");if(!d)return;let m=ht(a),y=xt(m),f=o.type?Lp(o.type.getText(i)):y,g=o.questionToken!==void 0;return{isReadonly:Ip(d),original:g&&!f.includes("null")&&!f.includes("undefined")&&!f.includes("Nil")?`${f} | undefined`:f,resolved:y,references:p,values:m.map(({raw:C,...u})=>u),isAttributeEligible:jp(d,m)}},Lp=e=>e.startsWith("| ")?e.slice(2):e;function Ip(e){let t=e.arguments[0];return!t||!Ee.isObjectLiteralExpression(t)?!1:Qe(t,"readOnly")??!1}function jp(e,t){let n=gn(t),r=e.arguments[0];return!r||!Ee.isObjectLiteralExpression(r)?n:r.properties.some(i=>Ee.isPropertyAssignment(i)&&Ee.isIdentifier(i.name)&&(i.name.text==="type"||i.name.text==="converter"||i.name.text==="attribute"))||n}var gn=e=>e.some(t=>t.type==="number"||t.type==="boolean"||t.type==="string");import ce from"typescript";function go(e){return{name:sn,analyzePhase({ts:t,node:n,context:r}){if(!t.isPropertyDeclaration(n)&&!t.isAccessor(n))return;let o=r;if(o.state===void 0)return;let{component:i,events:s}=o.state,a=Fe(i,n);if(a===void 0||a.kind!=="field")return;let p=e.typeScriptTypeChecker,l=p.getSymbolAtLocation(n.name),d=l===void 0?{}:Te(p,l);a.description=d.description??a.description;let m=ce.isGetAccessor(n)?l?.declarations?.find(ce.isSetAccessor)??n:n,y=yo(p,e.dir,n,m);if(!(typeof y=="object")){let u=o.lastAccessors[a.name];if(u!==void 0)if(u===n){if("original"in a.type)return}else return;let x=i.members.indexOf(a);i.members.splice(x,1);return}if(a.name.startsWith("on"))throw new Error(`Do not start property names with "on" as that can confuse third-party frameworks and lint rules. Found ${a.name} in ${i.name}`);let g=d.docsTags?.some(u=>u.name==="readonly")??!1,C=y.isReadonly||o.lonelyGetters.has(a.name);if(n.questionToken&&(a.hasQuestionToken=!0),a.type={text:y.resolved,original:y.original,values:y.values,references:[...a.type?.references??[],...y.references]},m!==n&&ce.isSetAccessor(m)&&ce.isGetAccessor(n)){let u=n.type,b=m.parameters[0].type?.getText(),v=u?.getText();b!==v&&v!==void 0&&(a.getterType={text:v,original:v,values:[{type:v}]})}if(a.default&&"initializer"in n&&n.initializer&&!Qt(ho(n.initializer))&&!d.docsTags?.some(u=>u.name==="default")&&(a.default=void 0),"eventName"in y){s.push(y);return}if(!g&&!C&&!d.docsTags?.some(u=>u.name==="required")&&(a.type.text=lr(a.type.text),a.type.values)){let u=a.type.values.filter(x=>x.type!=="null"&&x.type!=="undefined");u.length>0&&(a.type.values=u)}if(a.isAttributeEligible=y.isAttributeEligible,"initializer"in n&&n.initializer&&(!a.default||!a.description)){let u=n.initializer,x=p.getSymbolAtLocation(u),b=x!==void 0&&(x.flags??0)&ce.SymbolFlags.Alias?p.getAliasedSymbol(x):x,v=b?.getDeclarations()??[];if(b){let F=Te(p,b);if(F.description&&(a.description||=F?.description),(F.docsTags?.length??0)>0){let K=new Set(d.docsTags?.map(D=>D.name));d.docsTags=[...d.docsTags??[],...F.docsTags?.filter(D=>D.name==="default"?(a.default||(a.default=D.text),!1):!K.has(D.name))??[]]}}v.forEach(F=>{if(!("initializer"in F))return;let K=F;if(g||=K.modifiers?.some(D=>D.kind===ce.SyntaxKind.ReadonlyKeyword)??!1,!a.default){let D=K.initializer;Qt(D)&&(a.default=D.getText(K.getSourceFile()))}})}d.docsTags=d.docsTags?.filter(u=>u.name!=="readonly"&&u.name!=="default"&&u.name!=="deprecated"),(d.docsTags?.length??0)>0&&(a.docsTags=d.docsTags),g||C?a.readonly=!0:a.readonly=void 0,g&&!C&&(a.docsOnlyReadonly=!0),!a.default&&a.type.values&&a.type.values.length>0&&a.type.values?.every(u=>u.type==="boolean")&&(a.default="false")},moduleLinkPhase({context:t}){let{states:n}=t;n.forEach(({component:r,events:o})=>{let i=r.members??[];o?.forEach(({eventName:s,bubbles:a,cancelable:p,composed:l})=>{let d=i.findIndex(v=>v.name===s);if(d===-1)throw new Error(`Event property ${s} not found in component ${r.name}`);let m=i[d];if(m.kind!=="field")throw new Error(`Event property ${s} in ${r.name} is not a field`);if(i.splice(d,1),r.events??=[],r.events.some(v=>v.name===s))throw new Error(`Event ${s} included in ${r.name} twice`);let{default:f,kind:g,static:C,type:u,...x}=m;if(u===void 0)throw new Error(`Event property ${s} in ${r.name} is missing a type`);let b={...x,name:s,type:u,bubbles:a,cancelable:p,composed:l};r.events.push(b)})})}}}function ho(e){return ce.isSatisfiesExpression(e)||ce.isParenthesizedExpression(e)?ho(e.expression):e}import hn from"typescript";var xn="@arcgis/lumina:addMethodMetadata";function xo(e){return{name:xn,analyzePhase({node:t,ts:n,context:r}){if(!n.isMethodDeclaration(t))return;let o=r,{sourceFile:i,state:{component:s}={}}=o;if(i===void 0||s===void 0)return;let a=Fe(s,t);if(!(a===void 0||a.kind!=="method")){if(!pt(t,"method")){let p=s.members.indexOf(a);s.members.splice(p,1);return}if(e.viteCommand==="build"){let p=e.typeScriptTypeChecker,l=Rp(t,a.parameters,p,i,e.dir);a.description=l?.description??a.description,a.docsTags=l?.docsTags,a.type=l?.type??{signature:`(): ${a.return?.type?.text??"void"}`,references:[]}}Op(t)&&(a.async=!0)}}}}function Rp(e,t,n,r,o){let i=n.getSignatureFromDeclaration(e);if(i===void 0)return;e.parameters.forEach(l=>{let d=l.name;if(!hn.isIdentifier(d)){console.warn(`${xn}: Object binding patterns are not yet supported in the docs. Found ${d?.getText()} in ${e.name.getText()} in ${E(r.fileName)}`);return}let m=t?.find(x=>x.name===d.text);if(!m){console.warn(`${xn}: Unable to find the parameter ${d?.getText()} for ${e.name.getText()} in the manifest`);return}let y=n.getTypeAtLocation(l),{typeNode:f,references:g}=Se(n,y,r,o),C=ht(f),u={original:m.type?.text??l.type?.getText(r)??"unknown",text:xt(C),references:g,values:void 0};m.type=u});let s=n.getReturnTypeOfSignature(i),a=Se(n,s,r,o),p=n.signatureToString(i,e,an,hn.SignatureKind.Call);return{...Te(n,i),type:{signature:p.replace(" =>",":"),references:a.references}}}var Op=e=>e.modifiers?.some?.(t=>t.kind===hn.SyntaxKind.AsyncKeyword)??!1;import{camelToKebab as Co}from"@arcgis/components-utils";function To(e){e.members?.forEach(t=>{"attribute"in t&&typeof t.attribute=="string"&&t.attribute.toLowerCase()!==t.attribute&&(t.attribute=Co(t.attribute))}),e.attributes?.forEach(t=>{"name"in t&&typeof t.name=="string"&&t.name.toLowerCase()!==t.name&&(t.name=Co(t.name))})}import Ye from"typescript";function bo(e){return{name:"@arcgis/lumina:addComponentMetadata",analyzePhase({moduleDoc:t,node:n,ts:r,context:o}){if(!r.isClassDeclaration(n))return;let i=ur(n.name?.text,t);if(i===void 0)return;let s=o;s.state={component:i,events:[]},s.states.push(s.state);let a=!1;s.lastAccessors={};let p=new Set;if(s.lonelyGetters=new Set,n.members.forEach(l=>{if(Ye.isAccessor(l)){let d=l.name.getText();s.lastAccessors[d]=l,Ye.isSetAccessor(l)?(p.add(d),s.lonelyGetters.delete(d)):p.has(d)||s.lonelyGetters.add(d)}a||=e.viteCommand==="build"&&Ye.isPropertyDeclaration(l)&&Ye.isIdentifier(l.name)&&l.name.text==="shadowRootOptions"&&l.initializer!==void 0&&Ye.isIdentifier(l.initializer)&&l.initializer.text==="noShadowRoot"}),i.members=i.members?.filter(Cn),i.members?.forEach(l=>{l.name=Tt(l.name),"attribute"in l&&typeof l.attribute=="string"&&(l.attribute=Tt(l.attribute))}),i.attributes?.forEach(l=>{l.name=Tt(l.name),typeof l.fieldName=="string"&&(l.fieldName=Tt(l.fieldName))}),e.viteCommand==="build"){let l=e.typeScriptTypeChecker,d=i,m=n.name===void 0?void 0:l.getSymbolAtLocation(n.name),y=m===void 0?void 0:Te(l,m);d.description=y?.description??d.description,d.docsTags=y?.docsTags?.filter(f=>f.name!=="cssprop"&&f.name!=="cssproperty"&&f.name!=="csspart"&&f.name!=="slot"),d.encapsulation=a?"none":"shadow"}},moduleLinkPhase({moduleDoc:t}){U(t).forEach(n=>{To(n),e.viteCommand==="build"&&(n.members?.sort((r,o)=>r.name.localeCompare(o.name)),n.attributes?.sort((r,o)=>r.name.localeCompare(o.name)),n.events?.sort((r,o)=>r.name.localeCompare(o.name))),n.superclass?.module&&c.isAbsolute(n.superclass.module)&&(n.superclass.module=c.relative(e.dir.root,n.superclass.module))})}}}function Tt(e){return e.startsWith("'")||e.startsWith('"')?e.slice(1,-1):e.startsWith('\\"')||e.startsWith("\\'")?e.slice(2,-1*2):e}var Cn=e=>!e.name.startsWith("_")&&!e.name.startsWith("#")&&!e.static&&e.privacy!=="private"&&e.privacy!=="protected",vo=e=>e.kind==="method"&&Cn(e),Ae=e=>e.kind==="field"&&Cn(e);import{litPlugin as sl}from"@custom-elements-manifest/analyzer/src/browser-entrypoint.js";import al from"typescript";import q from"typescript";var So="Fragment",bt="DynamicHtmlTag",vt="DynamicSvgTag",Ne=Symbol("dynamic html tag name"),Ze=Symbol("dynamic svg tag name"),Eo=!0,St=new Set(["class","itemProp","itemScope","itemType","itemId","itemRef","about","datatype","inlist","property","resource","typeof","vocab"]),Et=new Set(["width","height","href","hreflang","form","download","rowSpan","colSpan","viewBox","src","exportParts","hreflang","media"]),et={button:new Set(["popoverTarget"]),input:new Set(["list","capture"]),meta:new Set(["charset"]),math:new Set(["dir","displaystyle","scriptlevel"]),menu:new Set(["label","type"]),results:new Set(["input"]),textarea:new Set(["dirname"]),quote:new Set(["cite"])},z={common:{normal:{hidden:"hidden",inert:"inert",draggable:"draggable",contentEditable:"contenteditable",popover:"popover",autofocus:"autofocus",role:"role",ariaAtomic:"aria-atomic",ariaAutoComplete:"aria-autocomplete",ariaBusy:"aria-busy",ariaBrailleLabel:"aria-braillelabel",ariaBrailleRoleDescription:"aria-brailleroledescription",ariaChecked:"aria-checked",ariaColCount:"aria-colcount",ariaColIndex:"aria-colindex",ariaColSpan:"aria-colspan",ariaCurrent:"aria-current",ariaDescription:"aria-description",ariaDisabled:"aria-disabled",ariaExpanded:"aria-expanded",ariaHasPopup:"aria-haspopup",ariaHidden:"aria-hidden",ariaInvalid:"aria-invalid",ariaKeyShortcuts:"aria-keyshortcuts",ariaLabel:"aria-label",ariaLevel:"aria-level",ariaLive:"aria-live",ariaModal:"aria-modal",ariaMultiLine:"aria-multiline",ariaMultiSelectable:"aria-multiselectable",ariaOrientation:"aria-orientation",ariaPlaceholder:"aria-placeholder",ariaPosInSet:"aria-posinset",ariaPressed:"aria-pressed",ariaReadOnly:"aria-readonly",ariaRelevant:"aria-relevant",ariaRequired:"aria-required",ariaRoleDescription:"aria-roledescription",ariaRowCount:"aria-rowcount",ariaRowIndex:"aria-rowindex",ariaRowSpan:"aria-rowspan",ariaSelected:"aria-selected",ariaSetSize:"aria-setsize",ariaSort:"aria-sort",ariaValueMax:"aria-valuemax",ariaValueMin:"aria-valuemin",ariaValueNow:"aria-valuenow",ariaValueText:"aria-valuetext",ariaColIndexText:"aria-colindextext",ariaRowIndexText:"aria-rowindextext",ariaVirtualContent:"aria-virtualcontent"},stringified:{title:"title",lang:"lang",translate:"translate",dir:"dir",accessKey:"accesskey",spellcheck:"spellcheck",autocapitalize:"autocapitalize",enterKeyHint:"enterkeyhint",inputMode:"inputmode",virtualKeyboardPolicy:"virtualkeyboardpolicy",tabIndex:"tabindex",writingSuggestions:"writingsuggestions",focusgroup:"focusgroup",id:"id",className:"class",slot:"slot",elementTiming:"elementtiming"}},perElement:{a:{stringified:{target:"target",download:"download",ping:"ping",rel:"rel",hreflang:"hreflang",type:"type",referrerPolicy:"referrerpolicy",coords:"coords",charset:"charset",name:"name",rev:"rev",shape:"shape",href:"href",interestAction:"interestaction",hrefTranslate:"hreftranslate",attributionSrc:"attributionsrc"}},area:{normal:{noHref:"nohref"},stringified:{alt:"alt",coords:"coords",download:"download",shape:"shape",target:"target",ping:"ping",rel:"rel",referrerPolicy:"referrerpolicy",href:"href",interestAction:"interestaction"}},audio:{normal:{crossOrigin:"crossorigin",autoplay:"autoplay",loop:"loop",controls:"controls",defaultMuted:"muted",disableRemotePlayback:"disableremoteplayback"},stringified:{src:"src",preload:"preload"}},base:{stringified:{href:"href",target:"target"}},blockquote:{stringified:{cite:"cite"}},body:{stringified:{text:"text",link:"link",vLink:"vlink",aLink:"alink",bgColor:"bgcolor",background:"background"}},br:{stringified:{clear:"clear"}},button:{normal:{disabled:"disabled",formNoValidate:"formnovalidate"},stringified:{formAction:"formaction",formEnctype:"formenctype",formMethod:"formmethod",formTarget:"formtarget",name:"name",type:"type",value:"value",popoverTargetAction:"popovertargetaction",command:"command",interestAction:"interestaction"}},canvas:{stringified:{width:"width",height:"height"}},caption:{stringified:{align:"align"}},col:{stringified:{span:"span",align:"align",ch:"char",chOff:"charoff",vAlign:"valign",width:"width"}},colgroup:{stringified:{span:"span",align:"align",ch:"char",chOff:"charoff",vAlign:"valign",width:"width"}},data:{stringified:{value:"value"}},del:{stringified:{cite:"cite",dateTime:"datetime"}},details:{normal:{open:"open"},stringified:{name:"name"}},dialog:{normal:{open:"open"}},div:{stringified:{align:"align"}},dl:{normal:{compact:"compact"}},embed:{stringified:{src:"src",type:"type",width:"width",height:"height",align:"align",name:"name"}},fieldset:{normal:{disabled:"disabled"},stringified:{name:"name"}},form:{normal:{noValidate:"novalidate"},stringified:{acceptCharset:"accept-charset",action:"action",autocomplete:"autocomplete",enctype:"enctype",encoding:"enctype",method:"method",name:"name",target:"target",rel:"rel"}},h1:{stringified:{align:"align"}},h2:{stringified:{align:"align"}},h3:{stringified:{align:"align"}},h4:{stringified:{align:"align"}},h5:{stringified:{align:"align"}},h6:{stringified:{align:"align"}},hr:{normal:{noShade:"noshade"},stringified:{align:"align",color:"color",size:"size",width:"width"}},html:{stringified:{version:"version"}},iframe:{normal:{allowFullscreen:"allowfullscreen",credentialless:"credentialless",allowPaymentRequest:"allowpaymentrequest",browsingTopics:"browsingtopics",adAuctionHeaders:"adauctionheaders",sharedStorageWritable:"sharedstoragewritable"},stringified:{src:"src",srcdoc:"srcdoc",name:"name",width:"width",height:"height",referrerPolicy:"referrerpolicy",csp:"csp",allow:"allow",loading:"loading",align:"align",scrolling:"scrolling",frameBorder:"frameborder",longDesc:"longdesc",marginHeight:"marginheight",marginWidth:"marginwidth",policy:"policy",privateToken:"privatetoken"}},img:{normal:{crossOrigin:"crossorigin",isMap:"ismap",width:"width",height:"height",hspace:"hspace",vspace:"vspace",sharedStorageWritable:"sharedstoragewritable"},stringified:{alt:"alt",src:"src",srcset:"srcset",sizes:"sizes",useMap:"usemap",referrerPolicy:"referrerpolicy",decoding:"decoding",fetchPriority:"fetchpriority",loading:"loading",name:"name",lowsrc:"lowsrc",align:"align",longDesc:"longdesc",border:"border",attributionSrc:"attributionsrc"}},input:{normal:{defaultChecked:"checked",disabled:"disabled",formNoValidate:"formnovalidate",height:"height",multiple:"multiple",readOnly:"readonly",required:"required",size:"size",width:"width",webkitdirectory:"webkitdirectory",incremental:"incremental"},stringified:{accept:"accept",alt:"alt",autocomplete:"autocomplete",dirName:"dirname",formAction:"formaction",formEnctype:"formenctype",formMethod:"formmethod",formTarget:"formtarget",max:"max",maxLength:"maxlength",min:"min",minLength:"minlength",name:"name",pattern:"pattern",placeholder:"placeholder",src:"src",step:"step",type:"type",defaultValue:"value",align:"align",useMap:"usemap",popoverTargetAction:"popovertargetaction",command:"command",interestAction:"interestaction"}},ins:{stringified:{cite:"cite",dateTime:"datetime"}},label:{stringified:{htmlFor:"for"}},legend:{stringified:{align:"align"}},li:{normal:{value:"value"},stringified:{type:"type"}},link:{normal:{disabled:"disabled",crossOrigin:"crossorigin"},stringified:{href:"href",rel:"rel",media:"media",hreflang:"hreflang",type:"type",as:"as",referrerPolicy:"referrerpolicy",fetchPriority:"fetchpriority",imageSrcset:"imagesrcset",imageSizes:"imagesizes",charset:"charset",rev:"rev",target:"target",integrity:"integrity"}},map:{stringified:{name:"name"}},menu:{normal:{compact:"compact"}},meta:{stringified:{name:"name",httpEquiv:"http-equiv",content:"content",media:"media",scheme:"scheme"}},meter:{normal:{value:"value",min:"min",max:"max",low:"low",high:"high",optimum:"optimum"}},object:{normal:{declare:"declare",hspace:"hspace",vspace:"vspace"},stringified:{data:"data",type:"type",name:"name",useMap:"usemap",width:"width",height:"height",align:"align",archive:"archive",code:"code",standby:"standby",codeBase:"codebase",codeType:"codetype",border:"border"}},ol:{normal:{reversed:"reversed",compact:"compact"},stringified:{start:"start",type:"type"}},optgroup:{normal:{disabled:"disabled"},stringified:{label:"label"}},option:{normal:{disabled:"disabled",defaultSelected:"selected"},stringified:{label:"label",value:"value"}},output:{stringified:{name:"name"}},p:{stringified:{align:"align"}},pre:{normal:{width:"width"}},progress:{normal:{value:"value",max:"max"}},q:{stringified:{cite:"cite"}},script:{normal:{noModule:"nomodule",async:"async",defer:"defer",crossOrigin:"crossorigin",referrerPolicy:"referrerpolicy"},stringified:{src:"src",type:"type",charset:"charset",fetchPriority:"fetchpriority",event:"event",htmlFor:"for",integrity:"integrity",attributionSrc:"attributionsrc"}},select:{normal:{disabled:"disabled",multiple:"multiple",required:"required",size:"size"},stringified:{autocomplete:"autocomplete",name:"name"}},slot:{stringified:{name:"name"}},source:{normal:{width:"width",height:"height"},stringified:{src:"src",type:"type",srcset:"srcset",sizes:"sizes",media:"media"}},style:{stringified:{media:"media",type:"type"}},table:{stringified:{align:"align",border:"border",frame:"frame",rules:"rules",summary:"summary",width:"width",bgColor:"bgcolor",cellPadding:"cellpadding",cellSpacing:"cellspacing"}},tbody:{stringified:{align:"align",ch:"char",chOff:"charoff",vAlign:"valign"}},td:{normal:{noWrap:"nowrap"},stringified:{colSpan:"colspan",rowSpan:"rowspan",headers:"headers",align:"align",axis:"axis",height:"height",width:"width",ch:"char",chOff:"charoff",vAlign:"valign",bgColor:"bgcolor",abbr:"abbr",scope:"scope"}},template:{normal:{shadowRootDelegatesFocus:"shadowrootdelegatesfocus",shadowRootClonable:"shadowrootclonable",shadowRootSerializable:"shadowrootserializable",parseparts:"parseparts"},stringified:{shadowRootMode:"shadowrootmode"}},textarea:{normal:{cols:"cols",disabled:"disabled",readOnly:"readonly",required:"required",rows:"rows"},stringified:{autocomplete:"autocomplete",dirName:"dirname",maxLength:"maxlength",minLength:"minlength",name:"name",placeholder:"placeholder",wrap:"wrap"}},tfoot:{stringified:{align:"align",ch:"char",chOff:"charoff",vAlign:"valign"}},th:{normal:{noWrap:"nowrap"},stringified:{colSpan:"colspan",rowSpan:"rowspan",headers:"headers",align:"align",axis:"axis",height:"height",width:"width",ch:"char",chOff:"charoff",vAlign:"valign",bgColor:"bgcolor",abbr:"abbr",scope:"scope"}},thead:{stringified:{align:"align",ch:"char",chOff:"charoff",vAlign:"valign"}},time:{stringified:{dateTime:"datetime"}},tr:{stringified:{align:"align",ch:"char",chOff:"charoff",vAlign:"valign",bgColor:"bgcolor"}},track:{normal:{default:"default"},stringified:{kind:"kind",src:"src",srclang:"srclang",label:"label"}},ul:{normal:{compact:"compact"},stringified:{type:"type"}},video:{normal:{width:"width",height:"height",playsInline:"playsinline",disablePictureInPicture:"disablepictureinpicture",crossOrigin:"crossorigin",autoplay:"autoplay",loop:"loop",controls:"controls",defaultMuted:"muted",disableRemotePlayback:"disableremoteplayback"},stringified:{poster:"poster",src:"src",preload:"preload"}}},ambiguousReflectedProperties:["value","defaultValue"]};Po(z.common);Object.values(z.perElement).forEach(Po);function Po(e){e?.normal&&(e.normal=Object.assign(Object.create(null),e.normal)),e?.stringified&&(e.stringified=Object.assign(Object.create(null),e.stringified))}var Tn=new Set(["itemScope"]),Pt=new Set(["abort","animationCancel","animationEnd","animationIteration","animationStart","auxClick","beforeInput","blur","canPlay","canPlayThrough","cancel","change","click","close","compositionEnd","compositionStart","compositionUpdate","contextMenu","copy","cueChange","cut","dblClick","drag","dragEnd","dragEnter","dragLeave","dragOver","dragStart","drop","durationChange","emptied","encrypted","error","focus","focusIn","focusOut","formData","fullscreenChange","fullscreenError","gotPointerCapture","input","invalid","keyDown","keyUp","load","loadStart","loadedData","loadedMetadata","lostPointerCapture","mouseDown","mouseEnter","mouseLeave","mouseMove","mouseOut","mouseOver","mouseUp","paste","pause","play","playing","pointerCancel","pointerDown","pointerEnter","pointerLeave","pointerMove","pointerOut","pointerOver","pointerUp","progress","rateChange","reset","resize","scroll","scrollEnd","securityPolicyViolation","seeked","seeking","select","selectStart","slotChange","stalled","submit","suspend","timeUpdate","toggle","touchCancel","touchEnd","touchMove","touchStart","transitionCancel","transitionEnd","transitionRun","transitionStart","volumeChange","waiting","wheel"]),wo=new Set(["area","base","br","col","command","embed","hr","img","input","keygen","link","meta","param","source","track","wbr"]),Le=new Set(["animate","animateMotion","animateTransform","circle","clipPath","defs","desc","ellipse","feBlend","feColorMatrix","feComponentTransfer","feComposite","feConvolveMatrix","feDiffuseLighting","feDisplacementMap","feDistantLight","feDropShadow","feFlood","feFuncA","feFuncB","feFuncG","feFuncR","feGaussianBlur","feImage","feMerge","feMergeNode","feMorphology","feOffset","fePointLight","feSpecularLighting","feSpotLight","feTile","feTurbulence","filter","foreignObject","g","image","line","linearGradient","marker","mask","metadata","mpath","path","pattern","polygon","polyline","radialGradient","rect","set","stop","switch","symbol","text","textPath","tspan","use","view"]),Mo=new Set(["title","svg","a","script","style"]),Ie=new Set(["annotation-xml","annotation","maction","menclose","merror","mfenced","mfrac","mi","mmultiscripts","mn","mo","mover","mpadded","mphantom","mprescripts","mroot","mrow","ms","mspace","msqrt","mstyle","msub","msubsup","msup","mtable","mtd","mtext","mtr","munder","munderover","semantics"]),je=new Set(["annotation-xml","color-profile","font-face","font-face-src","font-face-uri","font-face-format","font-face-name","missing-glyph"]);var ko="customElement",wt=new WeakMap,Ao=e=>({name:"@arcgis/lumina:addCustomElementDecorator",initialize(){wt.has(e)||wt.set(e,{}),e.declarationTextTransformers.includes(Fo)||e.declarationTextTransformers.push(Fo)},analyzePhase({node:t,moduleDoc:n,ts:r,context:o}){if(!r.isSourceFile(t)||!t.fileName.endsWith(".tsx"))return;let i=o;i.sourceFile=t,i.states=[],i.state=void 0;let s=t.text;if(s.includes(`
|
|
45
|
+
}`;import Pe from"typescript";import z from"typescript";import{isNotUndefined as Ap}from"@arcgis/components-utils";import{defaultEventBubbles as mo,defaultEventCancelable as fo,defaultEventComposed as uo}from"@arcgis/lumina/config";function yo(e,t,n,r,o){let i=n.getProperty("emit");if(!i?.valueDeclaration)return;let s=i.valueDeclaration,l=e.getTypeOfSymbolAtLocation(i,s).getCallSignatures().map(m=>{let y=m.getReturnType();if(y.symbol?.name!=="CustomEvent")return;let f=e.getTypeArguments(y)?.at(0);if(f===void 0)return{original:"any",resolved:"any",references:[]};let{typeNode:g,references:C}=Ee(e,f,r,o),u=ht(g);return{original:u,resolved:u,references:C}}).filter(Ap);if(l.length===0)return;let d=Np(r,t);return{...Lp(l),...d}}var Tt="createEvent";function Np(e,t){if(!z.isIdentifier(t.name)&&!z.isStringLiteral(t.name))throw new Error(`Expected event property name to be an identifier or a string literal. Found ${t.name.getText(e)}`);let n=t.name.text,r={eventName:n,cancelable:fo,bubbles:mo,composed:uo};if(!t.initializer||!z.isCallExpression(t.initializer))return r;let o=t.initializer;if(!z.isIdentifier(o.expression)||o.expression.text!==Tt)return r;let i=o.arguments[0];if(!i)return r;if(!z.isObjectLiteralExpression(i))throw new Error(`Expected object literal expression as first argument of ${Tt}(). Found ${n} = createEvent(${i.getText(e)})`);if(i.properties.some(s=>z.isSpreadAssignment(s)))throw new Error(`Unexpected spread syntax in ${Tt}() argument. ${Tt}() arguments must be statically parsable at compile time`);return r.cancelable=Qe(i,"cancelable")??fo,r.bubbles=Qe(i,"bubbles")??mo,r.composed=Qe(i,"composed")??uo,r}function Qe(e,t){let n=e.properties.find(o=>z.isPropertyAssignment(o)&&z.isIdentifier(o.name)&&o.name.text===t);if(n===void 0)return;if(!z.isPropertyAssignment(n))throw new Error(`Expected boolean literal as ${t} property. Found ${n.getText()}`);let r=n.initializer;if(r.kind===z.SyntaxKind.TrueKeyword)return!0;if(r.kind===z.SyntaxKind.FalseKeyword)return!1;throw new Error(`Expected boolean literal as ${t} property. Found ${n.getText()}`)}var Lp=e=>({isReadonly:!1,values:void 0,original:e.map(t=>t.original).join(" | "),resolved:e.map(t=>t.resolved).join(" | "),references:e.flatMap(t=>t.references),isAttributeEligible:!1});var go=(e,t,n,r)=>{let o=Pe.isSetAccessor(r)?r.parameters[0]:r,i=n.getSourceFile(),s=e.getTypeAtLocation(o),{typeNode:a,references:p}=Ee(e,s,i,t),l=Pe.isGetAccessor(r)||Pe.isSetAccessor(r)?void 0:yo(e,r,s,i,t);if(l)return l;let d=lt(n,"property");if(!d)return;let m=xt(a),y=Ct(m),f=o.type?Ip(o.type.getText(i)):y,g=o.questionToken!==void 0;return{isReadonly:jp(d),original:g&&!f.includes("null")&&!f.includes("undefined")&&!f.includes("Nil")?`${f} | undefined`:f,resolved:y,references:p,values:m.map(({raw:C,...u})=>u),isAttributeEligible:Rp(d,m)}},Ip=e=>e.startsWith("| ")?e.slice(2):e;function jp(e){let t=e.arguments[0];return!t||!Pe.isObjectLiteralExpression(t)?!1:Qe(t,"readOnly")??!1}function Rp(e,t){let n=gn(t),r=e.arguments[0];return!r||!Pe.isObjectLiteralExpression(r)?n:r.properties.some(i=>Pe.isPropertyAssignment(i)&&Pe.isIdentifier(i.name)&&(i.name.text==="type"||i.name.text==="converter"||i.name.text==="attribute"))||n}var gn=e=>e.some(t=>t.type==="number"||t.type==="boolean"||t.type==="string");import fe from"typescript";function ho(e){return{name:sn,analyzePhase({ts:t,node:n,context:r}){if(!t.isPropertyDeclaration(n)&&!t.isAccessor(n))return;let o=r;if(o.state===void 0)return;let{component:i,events:s}=o.state,a=De(i,n);if(a===void 0||a.kind!=="field")return;let p=e.typeScriptTypeChecker,l=p.getSymbolAtLocation(n.name),d=l===void 0?{}:be(p,l);a.description=d.description??a.description;let m=fe.isGetAccessor(n)?l?.declarations?.find(fe.isSetAccessor)??n:n,y=go(p,e.dir,n,m);if(!(typeof y=="object")){let u=o.lastAccessors[a.name];if(u!==void 0)if(u===n){if("original"in a.type)return}else return;let x=i.members.indexOf(a);i.members.splice(x,1);return}if(a.name.startsWith("on"))throw new Error(`Do not start property names with "on" as that can confuse third-party frameworks and lint rules. Found ${a.name} in ${i.name}`);let g=d.docsTags?.some(u=>u.name==="readonly")??!1,C=y.isReadonly||o.lonelyGetters.has(a.name);if(n.questionToken&&(a.hasQuestionToken=!0),a.type={text:y.resolved,original:y.original,values:y.values,references:[...a.type?.references??[],...y.references]},m!==n&&fe.isSetAccessor(m)&&fe.isGetAccessor(n)){let u=n.type,b=m.parameters[0].type?.getText(),v=u?.getText();b!==v&&v!==void 0&&(a.getterType={text:v,original:v,values:[{type:v}]})}if(a.default&&"initializer"in n&&n.initializer&&!Qt(xo(n.initializer))&&!d.docsTags?.some(u=>u.name==="default")&&(a.default=void 0),"eventName"in y){s.push(y);return}if(!g&&!C&&!d.docsTags?.some(u=>u.name==="required")&&(a.type.text=dr(a.type.text),a.type.values)){let u=a.type.values.filter(x=>x.type!=="null"&&x.type!=="undefined");u.length>0&&(a.type.values=u)}if(a.isAttributeEligible=y.isAttributeEligible,"initializer"in n&&n.initializer&&(!a.default||!a.description)){let u=n.initializer,x=p.getSymbolAtLocation(u),b=x!==void 0&&(x.flags??0)&fe.SymbolFlags.Alias?p.getAliasedSymbol(x):x,v=b?.getDeclarations()??[];if(b){let F=be(p,b);if(F.description&&(a.description||=F?.description),(F.docsTags?.length??0)>0){let K=new Set(d.docsTags?.map(D=>D.name));d.docsTags=[...d.docsTags??[],...F.docsTags?.filter(D=>D.name==="default"?(a.default||(a.default=D.text),!1):!K.has(D.name))??[]]}}v.forEach(F=>{if(!("initializer"in F))return;let K=F;if(g||=K.modifiers?.some(D=>D.kind===fe.SyntaxKind.ReadonlyKeyword)??!1,!a.default){let D=K.initializer;Qt(D)&&(a.default=D.getText(K.getSourceFile()))}})}d.docsTags=d.docsTags?.filter(u=>u.name!=="readonly"&&u.name!=="default"&&u.name!=="deprecated"),(d.docsTags?.length??0)>0&&(a.docsTags=d.docsTags),g||C?a.readonly=!0:a.readonly=void 0,g&&!C&&(a.docsOnlyReadonly=!0),!a.default&&a.type.values&&a.type.values.length>0&&a.type.values?.every(u=>u.type==="boolean")&&(a.default="false")},moduleLinkPhase({context:t}){let{states:n}=t;n.forEach(({component:r,events:o})=>{let i=r.members??[];o?.forEach(({eventName:s,bubbles:a,cancelable:p,composed:l})=>{let d=i.findIndex(v=>v.name===s);if(d===-1)throw new Error(`Event property ${s} not found in component ${r.name}`);let m=i[d];if(m.kind!=="field")throw new Error(`Event property ${s} in ${r.name} is not a field`);if(i.splice(d,1),r.events??=[],r.events.some(v=>v.name===s))throw new Error(`Event ${s} included in ${r.name} twice`);let{default:f,kind:g,static:C,type:u,...x}=m;if(u===void 0)throw new Error(`Event property ${s} in ${r.name} is missing a type`);let b={...x,name:s,type:u,bubbles:a,cancelable:p,composed:l};r.events.push(b)})})}}}function xo(e){return fe.isSatisfiesExpression(e)||fe.isParenthesizedExpression(e)?xo(e.expression):e}import hn from"typescript";var xn="@arcgis/lumina:addMethodMetadata";function Co(e){return{name:xn,analyzePhase({node:t,ts:n,context:r}){if(!n.isMethodDeclaration(t))return;let o=r,{sourceFile:i,state:{component:s}={}}=o;if(i===void 0||s===void 0)return;let a=De(s,t);if(!(a===void 0||a.kind!=="method")){if(!lt(t,"method")){let p=s.members.indexOf(a);s.members.splice(p,1);return}if(e.viteCommand==="build"){let p=e.typeScriptTypeChecker,l=Op(t,a.parameters,p,i,e.dir);a.description=l?.description??a.description,a.docsTags=l?.docsTags,a.type=l?.type??{signature:`(): ${a.return?.type?.text??"void"}`,references:[]}}Jp(t)&&(a.async=!0)}}}}function Op(e,t,n,r,o){let i=n.getSignatureFromDeclaration(e);if(i===void 0)return;e.parameters.forEach(l=>{let d=l.name;if(!hn.isIdentifier(d)){console.warn(`${xn}: Object binding patterns are not yet supported in the docs. Found ${d?.getText()} in ${e.name.getText()} in ${E(r.fileName)}`);return}let m=t?.find(x=>x.name===d.text);if(!m){console.warn(`${xn}: Unable to find the parameter ${d?.getText()} for ${e.name.getText()} in the manifest`);return}let y=n.getTypeAtLocation(l),{typeNode:f,references:g}=Ee(n,y,r,o),C=xt(f),u={original:m.type?.text??l.type?.getText(r)??"unknown",text:Ct(C),references:g,values:void 0};m.type=u});let s=n.getReturnTypeOfSignature(i),a=Ee(n,s,r,o),p=n.signatureToString(i,e,an,hn.SignatureKind.Call);return{...be(n,i),type:{signature:p.replace(" =>",":"),references:a.references}}}var Jp=e=>e.modifiers?.some?.(t=>t.kind===hn.SyntaxKind.AsyncKeyword)??!1;import{camelToKebab as To}from"@arcgis/components-utils";function bo(e){e.members?.forEach(t=>{"attribute"in t&&typeof t.attribute=="string"&&t.attribute.toLowerCase()!==t.attribute&&(t.attribute=To(t.attribute))}),e.attributes?.forEach(t=>{"name"in t&&typeof t.name=="string"&&t.name.toLowerCase()!==t.name&&(t.name=To(t.name))})}import Ye from"typescript";function vo(e){return{name:"@arcgis/lumina:addComponentMetadata",analyzePhase({moduleDoc:t,node:n,ts:r,context:o}){if(!r.isClassDeclaration(n))return;let i=yr(n.name?.text,t);if(i===void 0)return;let s=o;s.state={component:i,events:[]},s.states.push(s.state);let a=!1;s.lastAccessors={};let p=new Set;if(s.lonelyGetters=new Set,n.members.forEach(l=>{if(Ye.isAccessor(l)){let d=l.name.getText();s.lastAccessors[d]=l,Ye.isSetAccessor(l)?(p.add(d),s.lonelyGetters.delete(d)):p.has(d)||s.lonelyGetters.add(d)}a||=e.viteCommand==="build"&&Ye.isPropertyDeclaration(l)&&Ye.isIdentifier(l.name)&&l.name.text==="shadowRootOptions"&&l.initializer!==void 0&&Ye.isIdentifier(l.initializer)&&l.initializer.text==="noShadowRoot"}),i.members=i.members?.filter(Cn),i.members?.forEach(l=>{l.name=bt(l.name),"attribute"in l&&typeof l.attribute=="string"&&(l.attribute=bt(l.attribute))}),i.attributes?.forEach(l=>{l.name=bt(l.name),typeof l.fieldName=="string"&&(l.fieldName=bt(l.fieldName))}),e.viteCommand==="build"){let l=e.typeScriptTypeChecker,d=i,m=n.name===void 0?void 0:l.getSymbolAtLocation(n.name),y=m===void 0?void 0:be(l,m);d.description=y?.description??d.description,d.docsTags=y?.docsTags?.filter(f=>f.name!=="cssprop"&&f.name!=="cssproperty"&&f.name!=="csspart"&&f.name!=="slot"),d.encapsulation=a?"none":"shadow"}},moduleLinkPhase({moduleDoc:t}){V(t).forEach(n=>{bo(n),e.viteCommand==="build"&&(n.members?.sort((r,o)=>r.name.localeCompare(o.name)),n.attributes?.sort((r,o)=>r.name.localeCompare(o.name)),n.events?.sort((r,o)=>r.name.localeCompare(o.name))),n.superclass?.module&&c.isAbsolute(n.superclass.module)&&(n.superclass.module=c.relative(e.dir.root,n.superclass.module))})}}}function bt(e){return e.startsWith("'")||e.startsWith('"')?e.slice(1,-1):e.startsWith('\\"')||e.startsWith("\\'")?e.slice(2,-1*2):e}var Cn=e=>!e.name.startsWith("_")&&!e.name.startsWith("#")&&!e.static&&e.privacy!=="private"&&e.privacy!=="protected",So=e=>e.kind==="method"&&Cn(e),Ne=e=>e.kind==="field"&&Cn(e);import{litPlugin as al}from"@custom-elements-manifest/analyzer/src/browser-entrypoint.js";import pl from"typescript";import G from"typescript";var Eo="Fragment",vt="DynamicHtmlTag",St="DynamicSvgTag",Le=Symbol("dynamic html tag name"),Ze=Symbol("dynamic svg tag name"),Po=!0,Et=new Set(["class","itemProp","itemScope","itemType","itemId","itemRef","about","datatype","inlist","property","resource","typeof","vocab"]),Pt=new Set(["width","height","href","hreflang","form","download","rowSpan","colSpan","viewBox","src","exportParts","hreflang","media"]),et={button:new Set(["popoverTarget"]),input:new Set(["list","capture"]),meta:new Set(["charset"]),math:new Set(["dir","displaystyle","scriptlevel"]),menu:new Set(["label","type"]),results:new Set(["input"]),textarea:new Set(["dirname"]),quote:new Set(["cite"])},q={common:{normal:{hidden:"hidden",inert:"inert",draggable:"draggable",contentEditable:"contenteditable",popover:"popover",autofocus:"autofocus",role:"role",ariaAtomic:"aria-atomic",ariaAutoComplete:"aria-autocomplete",ariaBusy:"aria-busy",ariaBrailleLabel:"aria-braillelabel",ariaBrailleRoleDescription:"aria-brailleroledescription",ariaChecked:"aria-checked",ariaColCount:"aria-colcount",ariaColIndex:"aria-colindex",ariaColSpan:"aria-colspan",ariaCurrent:"aria-current",ariaDescription:"aria-description",ariaDisabled:"aria-disabled",ariaExpanded:"aria-expanded",ariaHasPopup:"aria-haspopup",ariaHidden:"aria-hidden",ariaInvalid:"aria-invalid",ariaKeyShortcuts:"aria-keyshortcuts",ariaLabel:"aria-label",ariaLevel:"aria-level",ariaLive:"aria-live",ariaModal:"aria-modal",ariaMultiLine:"aria-multiline",ariaMultiSelectable:"aria-multiselectable",ariaOrientation:"aria-orientation",ariaPlaceholder:"aria-placeholder",ariaPosInSet:"aria-posinset",ariaPressed:"aria-pressed",ariaReadOnly:"aria-readonly",ariaRelevant:"aria-relevant",ariaRequired:"aria-required",ariaRoleDescription:"aria-roledescription",ariaRowCount:"aria-rowcount",ariaRowIndex:"aria-rowindex",ariaRowSpan:"aria-rowspan",ariaSelected:"aria-selected",ariaSetSize:"aria-setsize",ariaSort:"aria-sort",ariaValueMax:"aria-valuemax",ariaValueMin:"aria-valuemin",ariaValueNow:"aria-valuenow",ariaValueText:"aria-valuetext",ariaColIndexText:"aria-colindextext",ariaRowIndexText:"aria-rowindextext",ariaVirtualContent:"aria-virtualcontent"},stringified:{title:"title",lang:"lang",translate:"translate",dir:"dir",accessKey:"accesskey",spellcheck:"spellcheck",autocapitalize:"autocapitalize",enterKeyHint:"enterkeyhint",inputMode:"inputmode",virtualKeyboardPolicy:"virtualkeyboardpolicy",tabIndex:"tabindex",writingSuggestions:"writingsuggestions",focusgroup:"focusgroup",id:"id",className:"class",slot:"slot",elementTiming:"elementtiming"}},perElement:{a:{stringified:{target:"target",download:"download",ping:"ping",rel:"rel",hreflang:"hreflang",type:"type",referrerPolicy:"referrerpolicy",coords:"coords",charset:"charset",name:"name",rev:"rev",shape:"shape",href:"href",interestAction:"interestaction",hrefTranslate:"hreftranslate",attributionSrc:"attributionsrc"}},area:{normal:{noHref:"nohref"},stringified:{alt:"alt",coords:"coords",download:"download",shape:"shape",target:"target",ping:"ping",rel:"rel",referrerPolicy:"referrerpolicy",href:"href",interestAction:"interestaction"}},audio:{normal:{crossOrigin:"crossorigin",autoplay:"autoplay",loop:"loop",controls:"controls",defaultMuted:"muted",disableRemotePlayback:"disableremoteplayback"},stringified:{src:"src",preload:"preload"}},base:{stringified:{href:"href",target:"target"}},blockquote:{stringified:{cite:"cite"}},body:{stringified:{text:"text",link:"link",vLink:"vlink",aLink:"alink",bgColor:"bgcolor",background:"background"}},br:{stringified:{clear:"clear"}},button:{normal:{disabled:"disabled",formNoValidate:"formnovalidate"},stringified:{formAction:"formaction",formEnctype:"formenctype",formMethod:"formmethod",formTarget:"formtarget",name:"name",type:"type",value:"value",popoverTargetAction:"popovertargetaction",command:"command",interestAction:"interestaction"}},canvas:{stringified:{width:"width",height:"height"}},caption:{stringified:{align:"align"}},col:{stringified:{span:"span",align:"align",ch:"char",chOff:"charoff",vAlign:"valign",width:"width"}},colgroup:{stringified:{span:"span",align:"align",ch:"char",chOff:"charoff",vAlign:"valign",width:"width"}},data:{stringified:{value:"value"}},del:{stringified:{cite:"cite",dateTime:"datetime"}},details:{normal:{open:"open"},stringified:{name:"name"}},dialog:{normal:{open:"open"}},div:{stringified:{align:"align"}},dl:{normal:{compact:"compact"}},embed:{stringified:{src:"src",type:"type",width:"width",height:"height",align:"align",name:"name"}},fieldset:{normal:{disabled:"disabled"},stringified:{name:"name"}},form:{normal:{noValidate:"novalidate"},stringified:{acceptCharset:"accept-charset",action:"action",autocomplete:"autocomplete",enctype:"enctype",encoding:"enctype",method:"method",name:"name",target:"target",rel:"rel"}},h1:{stringified:{align:"align"}},h2:{stringified:{align:"align"}},h3:{stringified:{align:"align"}},h4:{stringified:{align:"align"}},h5:{stringified:{align:"align"}},h6:{stringified:{align:"align"}},hr:{normal:{noShade:"noshade"},stringified:{align:"align",color:"color",size:"size",width:"width"}},html:{stringified:{version:"version"}},iframe:{normal:{allowFullscreen:"allowfullscreen",credentialless:"credentialless",allowPaymentRequest:"allowpaymentrequest",browsingTopics:"browsingtopics",adAuctionHeaders:"adauctionheaders",sharedStorageWritable:"sharedstoragewritable"},stringified:{src:"src",srcdoc:"srcdoc",name:"name",width:"width",height:"height",referrerPolicy:"referrerpolicy",csp:"csp",allow:"allow",loading:"loading",align:"align",scrolling:"scrolling",frameBorder:"frameborder",longDesc:"longdesc",marginHeight:"marginheight",marginWidth:"marginwidth",policy:"policy",privateToken:"privatetoken"}},img:{normal:{crossOrigin:"crossorigin",isMap:"ismap",width:"width",height:"height",hspace:"hspace",vspace:"vspace",sharedStorageWritable:"sharedstoragewritable"},stringified:{alt:"alt",src:"src",srcset:"srcset",sizes:"sizes",useMap:"usemap",referrerPolicy:"referrerpolicy",decoding:"decoding",fetchPriority:"fetchpriority",loading:"loading",name:"name",lowsrc:"lowsrc",align:"align",longDesc:"longdesc",border:"border",attributionSrc:"attributionsrc"}},input:{normal:{defaultChecked:"checked",disabled:"disabled",formNoValidate:"formnovalidate",height:"height",multiple:"multiple",readOnly:"readonly",required:"required",size:"size",width:"width",webkitdirectory:"webkitdirectory",incremental:"incremental"},stringified:{accept:"accept",alt:"alt",autocomplete:"autocomplete",dirName:"dirname",formAction:"formaction",formEnctype:"formenctype",formMethod:"formmethod",formTarget:"formtarget",max:"max",maxLength:"maxlength",min:"min",minLength:"minlength",name:"name",pattern:"pattern",placeholder:"placeholder",src:"src",step:"step",type:"type",defaultValue:"value",align:"align",useMap:"usemap",popoverTargetAction:"popovertargetaction",command:"command",interestAction:"interestaction"}},ins:{stringified:{cite:"cite",dateTime:"datetime"}},label:{stringified:{htmlFor:"for"}},legend:{stringified:{align:"align"}},li:{normal:{value:"value"},stringified:{type:"type"}},link:{normal:{disabled:"disabled",crossOrigin:"crossorigin"},stringified:{href:"href",rel:"rel",media:"media",hreflang:"hreflang",type:"type",as:"as",referrerPolicy:"referrerpolicy",fetchPriority:"fetchpriority",imageSrcset:"imagesrcset",imageSizes:"imagesizes",charset:"charset",rev:"rev",target:"target",integrity:"integrity"}},map:{stringified:{name:"name"}},menu:{normal:{compact:"compact"}},meta:{stringified:{name:"name",httpEquiv:"http-equiv",content:"content",media:"media",scheme:"scheme"}},meter:{normal:{value:"value",min:"min",max:"max",low:"low",high:"high",optimum:"optimum"}},object:{normal:{declare:"declare",hspace:"hspace",vspace:"vspace"},stringified:{data:"data",type:"type",name:"name",useMap:"usemap",width:"width",height:"height",align:"align",archive:"archive",code:"code",standby:"standby",codeBase:"codebase",codeType:"codetype",border:"border"}},ol:{normal:{reversed:"reversed",compact:"compact"},stringified:{start:"start",type:"type"}},optgroup:{normal:{disabled:"disabled"},stringified:{label:"label"}},option:{normal:{disabled:"disabled",defaultSelected:"selected"},stringified:{label:"label",value:"value"}},output:{stringified:{name:"name"}},p:{stringified:{align:"align"}},pre:{normal:{width:"width"}},progress:{normal:{value:"value",max:"max"}},q:{stringified:{cite:"cite"}},script:{normal:{noModule:"nomodule",async:"async",defer:"defer",crossOrigin:"crossorigin",referrerPolicy:"referrerpolicy"},stringified:{src:"src",type:"type",charset:"charset",fetchPriority:"fetchpriority",event:"event",htmlFor:"for",integrity:"integrity",attributionSrc:"attributionsrc"}},select:{normal:{disabled:"disabled",multiple:"multiple",required:"required",size:"size"},stringified:{autocomplete:"autocomplete",name:"name"}},slot:{stringified:{name:"name"}},source:{normal:{width:"width",height:"height"},stringified:{src:"src",type:"type",srcset:"srcset",sizes:"sizes",media:"media"}},style:{stringified:{media:"media",type:"type"}},table:{stringified:{align:"align",border:"border",frame:"frame",rules:"rules",summary:"summary",width:"width",bgColor:"bgcolor",cellPadding:"cellpadding",cellSpacing:"cellspacing"}},tbody:{stringified:{align:"align",ch:"char",chOff:"charoff",vAlign:"valign"}},td:{normal:{noWrap:"nowrap"},stringified:{colSpan:"colspan",rowSpan:"rowspan",headers:"headers",align:"align",axis:"axis",height:"height",width:"width",ch:"char",chOff:"charoff",vAlign:"valign",bgColor:"bgcolor",abbr:"abbr",scope:"scope"}},template:{normal:{shadowRootDelegatesFocus:"shadowrootdelegatesfocus",shadowRootClonable:"shadowrootclonable",shadowRootSerializable:"shadowrootserializable",parseparts:"parseparts"},stringified:{shadowRootMode:"shadowrootmode"}},textarea:{normal:{cols:"cols",disabled:"disabled",readOnly:"readonly",required:"required",rows:"rows"},stringified:{autocomplete:"autocomplete",dirName:"dirname",maxLength:"maxlength",minLength:"minlength",name:"name",placeholder:"placeholder",wrap:"wrap"}},tfoot:{stringified:{align:"align",ch:"char",chOff:"charoff",vAlign:"valign"}},th:{normal:{noWrap:"nowrap"},stringified:{colSpan:"colspan",rowSpan:"rowspan",headers:"headers",align:"align",axis:"axis",height:"height",width:"width",ch:"char",chOff:"charoff",vAlign:"valign",bgColor:"bgcolor",abbr:"abbr",scope:"scope"}},thead:{stringified:{align:"align",ch:"char",chOff:"charoff",vAlign:"valign"}},time:{stringified:{dateTime:"datetime"}},tr:{stringified:{align:"align",ch:"char",chOff:"charoff",vAlign:"valign",bgColor:"bgcolor"}},track:{normal:{default:"default"},stringified:{kind:"kind",src:"src",srclang:"srclang",label:"label"}},ul:{normal:{compact:"compact"},stringified:{type:"type"}},video:{normal:{width:"width",height:"height",playsInline:"playsinline",disablePictureInPicture:"disablepictureinpicture",crossOrigin:"crossorigin",autoplay:"autoplay",loop:"loop",controls:"controls",defaultMuted:"muted",disableRemotePlayback:"disableremoteplayback"},stringified:{poster:"poster",src:"src",preload:"preload"}}},ambiguousReflectedProperties:["value","defaultValue"]};wo(q.common);Object.values(q.perElement).forEach(wo);function wo(e){e?.normal&&(e.normal=Object.assign(Object.create(null),e.normal)),e?.stringified&&(e.stringified=Object.assign(Object.create(null),e.stringified))}var Tn=new Set(["itemScope"]),wt=new Set(["abort","animationCancel","animationEnd","animationIteration","animationStart","auxClick","beforeInput","blur","canPlay","canPlayThrough","cancel","change","click","close","compositionEnd","compositionStart","compositionUpdate","contextMenu","copy","cueChange","cut","dblClick","drag","dragEnd","dragEnter","dragLeave","dragOver","dragStart","drop","durationChange","emptied","encrypted","error","focus","focusIn","focusOut","formData","fullscreenChange","fullscreenError","gotPointerCapture","input","invalid","keyDown","keyUp","load","loadStart","loadedData","loadedMetadata","lostPointerCapture","mouseDown","mouseEnter","mouseLeave","mouseMove","mouseOut","mouseOver","mouseUp","paste","pause","play","playing","pointerCancel","pointerDown","pointerEnter","pointerLeave","pointerMove","pointerOut","pointerOver","pointerUp","progress","rateChange","reset","resize","scroll","scrollEnd","securityPolicyViolation","seeked","seeking","select","selectStart","slotChange","stalled","submit","suspend","timeUpdate","toggle","touchCancel","touchEnd","touchMove","touchStart","transitionCancel","transitionEnd","transitionRun","transitionStart","volumeChange","waiting","wheel"]),Mo=new Set(["area","base","br","col","command","embed","hr","img","input","keygen","link","meta","param","source","track","wbr"]),Ie=new Set(["animate","animateMotion","animateTransform","circle","clipPath","defs","desc","ellipse","feBlend","feColorMatrix","feComponentTransfer","feComposite","feConvolveMatrix","feDiffuseLighting","feDisplacementMap","feDistantLight","feDropShadow","feFlood","feFuncA","feFuncB","feFuncG","feFuncR","feGaussianBlur","feImage","feMerge","feMergeNode","feMorphology","feOffset","fePointLight","feSpecularLighting","feSpotLight","feTile","feTurbulence","filter","foreignObject","g","image","line","linearGradient","marker","mask","metadata","mpath","path","pattern","polygon","polyline","radialGradient","rect","set","stop","switch","symbol","text","textPath","tspan","use","view"]),ko=new Set(["title","svg","a","script","style"]),je=new Set(["annotation-xml","annotation","maction","menclose","merror","mfenced","mfrac","mi","mmultiscripts","mn","mo","mover","mpadded","mphantom","mprescripts","mroot","mrow","ms","mspace","msqrt","mstyle","msub","msubsup","msup","mtable","mtd","mtext","mtr","munder","munderover","semantics"]),Re=new Set(["annotation-xml","color-profile","font-face","font-face-src","font-face-uri","font-face-format","font-face-name","missing-glyph"]);var Fo="customElement",Mt=new WeakMap,No=e=>({name:"@arcgis/lumina:addCustomElementDecorator",initialize(){Mt.has(e)||Mt.set(e,{}),e.declarationTextTransformers.includes(Do)||e.declarationTextTransformers.push(Do)},analyzePhase({node:t,moduleDoc:n,ts:r,context:o}){if(!r.isSourceFile(t)||!t.fileName.endsWith(".tsx"))return;let i=o;i.sourceFile=t,i.states=[],i.state=void 0;let s=t.text;if(s.includes(`
|
|
46
46
|
@customElement(`))throw new Error(`You shouldn't call @customElement() decorator directly in your component file as it will be added automatically at build time. Found in ${E(t.fileName)}. Instead, make sure your component file has the following:
|
|
47
47
|
declare global {
|
|
48
48
|
interface DeclareElements {
|
|
49
49
|
"arcgis-your-component": ArcgisYourComponent;
|
|
50
50
|
}
|
|
51
|
-
}`);let p=bn(s);p&&(
|
|
52
|
-
`)),d===-1&&(d=e.text.indexOf(`class ${l}<`)),d===-1)throw new Error(`Unable to find the declaration of the "${l}" class in ${E(n)}`);return
|
|
53
|
-
`).filter(r=>r.includes(":")).map(r=>r.replace(";","").replaceAll('"',"").split(":")).map(([r,o])=>[r.trim(),o.trim()]).filter(([r])=>!r.startsWith("/")&&!r.startsWith("*"))}function
|
|
51
|
+
}`);let p=bn(s);p&&(Mt.get(e)[t.fileName]=p);let l=new Set;p?.forEach(([d,m])=>{if(Bp(d,m),l.has(m))throw new Error(`Unexpectedly ${m} was used to define multiple custom elements (${d} and others). Expected one tag name to correspond to one class`);l.add(m),n.exports??=[],n.exports.some(f=>f.kind==="custom-element-definition"&&f.name===d)||n.exports.push({kind:"custom-element-definition",name:d,declaration:{name:m,module:n.path}})})},packageLinkPhase({customElementsManifest:t}){t.modules.forEach(n=>{if(!n.exports)return;let r=new Set(n.exports.map(o=>o.kind==="custom-element-definition"?o.declaration.name:""));n.exports=n.exports.filter(o=>o.kind!=="js"||!r.has(o.name))})}}),Do=(e,t)=>{let{filePath:n,content:r}=e;if(!n.startsWith(t.dir.distComponents))return e;let o=Io(r);if(o){let i=r.replace(o,"");return{filePath:n,content:i}}else return e},Lo=(e,t)=>{let n=e.fileName,r=Mt.get(t.compiler)??{};if(!(n in r))return e.statements;let o=r[n],i=c.relative(c.dirname(n),c.join(t.compiler.dir.src,"runtime")),s=G.factory.createImportDeclaration(void 0,G.factory.createImportClause(!1,void 0,G.factory.createNamedImports([G.factory.createImportSpecifier(!1,void 0,G.factory.createIdentifier(Fo))])),G.factory.createStringLiteral(i)),a=o.map(([p,l])=>{let d=e.text.indexOf(`class ${l} `);if(d===-1&&(d=e.text.indexOf(`class ${l}
|
|
52
|
+
`)),d===-1&&(d=e.text.indexOf(`class ${l}<`)),d===-1)throw new Error(`Unable to find the declaration of the "${l}" class in ${E(n)}`);return G.factory.createExpressionStatement(G.factory.createCallExpression(G.factory.createIdentifier(Fo),void 0,[G.factory.createStringLiteral(p),G.factory.createIdentifier(l)]))});return[s,...e.statements,...a]};function bn(e){let t=Io(e);return t===void 0?void 0:t.split(`
|
|
53
|
+
`).filter(r=>r.includes(":")).map(r=>r.replace(";","").replaceAll('"',"").split(":")).map(([r,o])=>[r.trim(),o.trim()]).filter(([r])=>!r.startsWith("/")&&!r.startsWith("*"))}function Bp(e,t){if(!e.includes("-"))throw new Error(`Expected custom element tag name to include a hyphen. Found "${e}"`);if(e.toLowerCase()!==e)throw new Error(`Expected custom element tag name to be lowercase. Found "${e}"`);if(!$o.test(e))throw new Error(`Potentially invalid custom element name: "${e}". Expected tag name to match regex: ${$o.toString()}. This regex is stricter than what the custom elements spec allows in order to catch possible typos. Please contact Lumina maintainers if you need to loosen this check.`);if(Re.has(e))throw new Error(`"${e}" is a reserved html element tag name. Declaring components with this name is forbidden by the custom elements specification.`);let n=Ao(e),r=Ao(e.split("-").slice(1).join("-"));if(n!==t.toLowerCase()&&r!==t.toLowerCase())throw new Error(`The custom element tag name "${e}" does not seem to match the class name it is assigned to: "${t}". Make sure tag name and class name use the same characters in the same order (case insensitive, hyphens removed). The class name may omit the "Arcgis"/"Calcite" prefix if desired.`)}var $o=/^[a-z]+(?:-[a-z\d]+)+$/u,Ao=e=>e.replaceAll("-","").toLowerCase();function Io(e){let t=e.indexOf("declare global {");if(t===-1)return;let n=e.indexOf(`
|
|
54
54
|
}`,t)+2;if(e.indexOf("declare global {",n)!==-1)throw new Error(`Detected multiple "declare global {" in a single file. Declaring multiple components in a single file is supported, but they should share the same "declare global {" block. Example:
|
|
55
55
|
declare global {
|
|
56
56
|
interface DeclareElements {
|
|
57
57
|
"arcgis-test1": ArcgisTest1;
|
|
58
58
|
"arcgis-test2": ArcgisTest2;
|
|
59
59
|
}
|
|
60
|
-
}`);return e.slice(t,n)}import{readFile as
|
|
61
|
-
Error: ${String(b)}`)}}let l=
|
|
60
|
+
}`);return e.slice(t,n)}import{readFile as ei,writeFile as ll}from"node:fs/promises";import{isNotUndefined as Xo}from"@arcgis/components-utils";import{isNotUndefined as Sn}from"@arcgis/components-utils";import{readFile as vn,readdir as Wp}from"node:fs/promises";async function kt(e){return ue??=Kp(e),await ue}function Ro(){if(En===void 0)throw new Error("Component dependencies have not yet been initialized. Await componentDependenciesPromise promise first.");return En}function Ft(){if(Pn===void 0)throw new Error("Component dependencies have not yet been initialized. Await componentDependenciesPromise promise first.");return Pn}async function Kp(e){let t=A(e),n=t.dependencies??{},r=t.peerDependencies??{},i=(await Promise.all([...Object.keys(n),...Object.keys(r)].filter(s=>!Hp.has(s)).flatMap(async s=>await wn(s,e)))).filter(Sn);return En??=i,Pn=Object.fromEntries(i.flatMap(s=>Object.entries(s.components))),i}var Hp=new Set(["@arcgis/arcade-languageservice","@arcgis/components-controllers","@arcgis/components-utils","@arcgis/core","@arcgis/languages-api-utils","@arcgis/lumina","@commander-js/extra-typings","@custom-elements-manifest/analyzer","@esri/calcite-ui-icons","@floating-ui/dom","@lit-labs/ssr","@lit-labs/ssr-client","@lit/react","@types/color","@types/sortablejs","color","composed-offset-position","custom-elements-manifest","dayjs","focus-trap","interactjs","lit","lodash-es","monaco-editor","sortablejs","storybook","timezone-groups","type-fest","tslib","typescript","vscode-languageserver-textdocument","vscode-languageserver-types"]),En,Pn,ue;async function wn(e,t){let n=await de(e,t),r=await le(n),o="exports"in r,i=_p.bind(void 0,o),s="@stencil/core"in(r.dependencies??{})||"@stencil/core"in(r.devDependencies??{}),a=c.join(n,"dist/esm/loader.js");if(s?await B(a):!1){let f=await vn(a,"utf8"),g=Up(f,"bootstrapLazy("),C=f.indexOf(", options",g),u=f.slice(g,C),x=u.startsWith('JSON.parse("')?u.slice(12,-2).replaceAll('\\"','"'):u;try{let b=JSON.parse(x),v=qp(b,{packageName:e,getImportPath:i});return{packageName:e,type:"stencil",components:v}}catch(b){console.warn(`@arcgis/lit: Failed to parse dist/esm/loader.js for ${e}.
|
|
61
|
+
Error: ${String(b)}`)}}let l=jo(r.customElements);if(l){let f=c.join(n,l),g=JSON.parse(await vn(f,"utf-8")),C=Vp(g),u=Mn(g,{packageName:e,getImportPath:i});return{type:C?"@arcgis/lumina":"unknown",packageName:e,components:u}}let d=jo(r["web-types"]);if(d){let f=c.join(n,d),g=JSON.parse(await vn(f,"utf-8")),C=zp(g,{packageName:e,getImportPath:i,packageRoot:n});return{type:"unknown",packageName:e,components:C}}let m=c.join(n,"dist/components");if(await B(m)){let f=await Gp(m,{packageName:e,getImportPath:i});return{type:"unknown",packageName:e,components:f}}}var jo=e=>Array.isArray(e)?e[0]:e;function Up(e,t){let n=e.indexOf(t);return n===-1?-1:n+t.length}var Mn=(e,t)=>Object.fromEntries(e.modules.flatMap(n=>n.declarations?.filter(r=>r.kind==="class"&&"tagName"in r&&"customElement"in r).map(r=>{let o=r,i=o,s=o.tagName;return[s,{packageName:t.packageName,moduleName:i.importPath??t.getImportPath(s),propToAttribute:Object.fromEntries((o.attributes??[]).map(a=>[a.fieldName??a.name,a.name]).filter(Sn))}]})).filter(Sn)),Vp=e=>e.compiler?.name===Ae,zp=(e,t)=>Object.fromEntries((e.contributions?.html?.elements??e.contributions?.html?.tags)?.map(n=>[n.name,{packageName:t.packageName,moduleName:t.getImportPath(n.name),propToAttribute:{}}])??[]);var qp=(e,t)=>Object.fromEntries(e.flatMap(([n,r])=>r.map(([o,i,s={}])=>[i,{packageName:t.packageName,moduleName:t.getImportPath(i),propToAttribute:Object.fromEntries(Object.entries(s).filter(([a,[p]])=>p&15).map(([a,[p,l=a]])=>[a,l]))}]))),Gp=async(e,t)=>Object.fromEntries((await Wp(e)).filter(n=>n.endsWith(".d.ts")).map(n=>{let r=n.slice(0,-5);return[r,{packageName:t.packageName,moduleName:t.getImportPath(r),propToAttribute:{}}]})),_p=(e,t)=>e?`components/${t}`:`dist/components/${t}`;var Xp=e=>e.startsWith("/")?e:`/${e}`,Oe=(e,t)=>`${e}@fs${Xp(t)}`;function te(e=A(),t=!1,n=e.name==="@esri/calcite-components"){let r=e.version.includes("next"),o=t||r?"jsdev.arcgis.com":"js.arcgis.com",i=Qp(e.name),s=Yp(e.version,n);return["https://",o,i.length>0?"/":"",i,"/",s,"/"].join("")}var Qp=e=>e.split("/").pop()??e;function Yp(e,t){if(/\d+\.\d+\.\d+-(?:.*)$/u.test(e))return"next";let r=/^(?<major>\d+)\.(?<minor>\d+)\.(?<patch>\d+)/u,o=e.match(r);if(o?.groups){let{major:i,minor:s,patch:a}=o.groups,p=`${i}.${s}`;return t?`${p}.${a}`:p}return"next"}import{isNotUndefined as nl}from"@arcgis/components-utils";import{readdir as rl}from"node:fs/promises";import{build as tl}from"esbuild";import{getPreamble as Zp,identity as el}from"@arcgis/components-utils";import ye from"typescript";function Oo(e){let t=e&&c.isAbsolute(e)?e:yt(e??"tsconfig.json");if(!t)throw new Error(`Unable to find ${E(String(e))} in ${process.cwd()}. Please make sure the file exists, or provide types.tsconfigPath option to useLumina()`);let n=ye.readConfigFile(t,ye.sys.readFile);if(n.error)throw new Error(ye.formatDiagnosticsWithColorAndContext([n.error],{getCanonicalFileName:el,getCurrentDirectory:ye.sys.getCurrentDirectory,getNewLine:()=>ye.sys.newLine}));let r=ye.parseJsonConfigFileContent(n.config,ye.sys,c.dirname(t));return{path:t,config:r}}function Jo(e=A()){let t=e.version??"0.0.1";return Zp(t)}var Bo=e=>`/*!
|
|
62
62
|
${e.split(`
|
|
63
63
|
`).map(t=>` * ${t}`).join(`
|
|
64
64
|
`)}
|
|
65
|
-
*/`,L=e=>(t,n)=>{Object.defineProperty(t,n,{get(){throw new Error(`Tried to access '${String(n)}' before it was set. You can't access this property in global scope. However, it will be accessible by the time the following Vite plugin hook is called: ${e}`)},set(o){Object.defineProperty(t,n,{value:o,configurable:!0,writable:!0,enumerable:!0})},configurable:!0,enumerable:!0})};function
|
|
66
|
-
`),sourcefile:`${o}.esm.js`,resolveDir:"dist",loader:"js",...r.stdin}});let a=Date.now();console.log(`CDN was built in ${a-s}ms`)}}}async function
|
|
67
|
-
`);async function
|
|
68
|
-
`);if("cssHref"in r)return[`import styles$t${o} from "${r.cssHref}${
|
|
65
|
+
*/`,L=e=>(t,n)=>{Object.defineProperty(t,n,{get(){throw new Error(`Tried to access '${String(n)}' before it was set. You can't access this property in global scope. However, it will be accessible by the time the following Vite plugin hook is called: ${e}`)},set(o){Object.defineProperty(t,n,{value:o,configurable:!0,writable:!0,enumerable:!0})},configurable:!0,enumerable:!0})};function Dt(e){let t=e.options.target;if(t===void 0)throw new Error('TypeScript config must have a "target" property specified (or any parent tsconfig.json file if this config is extending another tsconfig.json)');let n=ye.ScriptTarget[t].toLowerCase();return n==="latest"?"esnext":n}function Je(e){if(c.isAbsolute(e))throw new Error(`Documentation file name was expected to be a relative path (relative to dist). Instead, received an absolute path: ${e}`);return ke(e)}var kn=new Set(["chunks","components","docs","types","controllers","cjs","esm","loader","utils","collection","extras","support"]),Be="cdn";function Wo(e){let{skip:t=!1,namespace:n=Be,esbuildOptions:r={}}=e.options.build?.cdn??{};if(n.toLowerCase()!==n)throw new Error(`Expected CDN namespace to be all lowercase. Received: ${n}`);if(kn.has(n))throw new Error(`Namespace name "${n}" is restricted as it collides with a well-known Lumina dist/ folder name or Stencil dist/ folder name.`);let o=n===Be?"index":n;if(e.provideAssets([{type:"dynamic",source:()=>po(e),destination:`../${o}.css`}]),!t)return{name:"@arcgis/lumina:buildCdn",async writeBundle(){if(e.isInStorybook)return;let i=e.environment,s=Date.now();await tl({bundle:!0,minify:i==="production",treeShaking:!0,sourcemap:i==="development"?"inline":e.options.build?.enableSourceMapsInProduction?"linked":!1,format:"esm",splitting:!0,outdir:e.dir.distCdn,legalComments:"none",logLevel:"warning",external:["@arcgis/core"],chunkNames:"[hash]",resolveExtensions:[".js",".json"],entryNames:`${o}.esm`,banner:{js:e.banner},target:Dt(e.typeScriptConfig),...r,define:{"process.env.CDN":"true",...r.define},stdin:{contents:['import { defineCustomElements } from "./loader";',fn(e.globalCssString,e),"defineCustomElements();"].join(`
|
|
66
|
+
`),sourcefile:`${o}.esm.js`,resolveDir:"dist",loader:"js",...r.stdin}});let a=Date.now();console.log(`CDN was built in ${a-s}ms`)}}}async function Ho(e,t,n,r){let o=await de(t),{hasCss:i,cdnName:s}=await Fn(c.join(o,"dist"))??{};if(n==="storybookBuild"){let d=await le(o),m=te(d,!0);return[...i?[{tag:"link",attrs:{rel:"stylesheet",src:`${m}${s}.css`}}]:[],{tag:"script",attrs:{type:"module",src:`${m}${s}.esm.js`}}]}let a=`${t}/dist/${s}/${s}.css${me}`,p=i?[`import styles$${r} from "${a}";`,`document.adoptedStyleSheets = [...document.adoptedStyleSheets, styles$${r}.styleSheet];`]:[],l=`${t}/dist/esm/loader.js`;return[{optimizableImports:[l],javascriptCode:[...p,`import { defineCustomElements as defineCustomElements$${r} } from "${l}";`,`defineCustomElements$${r}(globalThis.window, {`,` resourcesUrl: "${Oe(e,o)}/dist/${s}/",`,"});"]}]}async function Fn(e){let n=(await rl(e)).filter(o=>!kn.has(o)&&!o.includes(".")),r=n.find(o=>o.startsWith("arcgis-"));return r?await Ko(e,r):await Promise.all(n.map(async o=>await Ko(e,o))).then(o=>o.find(nl))}async function Ko(e,t){let n=c.join(e,t,`${t}.css`),r=c.join(e,t,"assets"),[o,i]=await Promise.all([B(n),B(r)]);return o||i?{hasCss:o,cdnName:t}:void 0}async function Uo(e,t,n,r){let o=await de(t),i=await Fn(c.join(o,"dist"));if(i===void 0)throw new Error(`Failed to infer the CDN namespace name for the ${t}`);let{cdnName:s}=i;if(n==="storybookBuild"){let p=await le(o);return{tag:"script",attrs:{type:"module",src:`${te(p,!0)}${s}.esm.js`}}}let a=`${t}/loader`;return{optimizableImports:[a],javascriptCode:[`import { defineCustomElements as defineCustomElements$${r} } from "${a}";`,`defineCustomElements$${r}({`,` resourcesUrl: "${Oe(e,o)}/dist/${s}/",`,"});"]}}var Dn="@arcgis/core",Vo=A(),$n=Dn in(Vo.dependencies??{})||Dn in(Vo.peerDependencies??{});async function qo(e,t){if(!$n)return[];let n=await de(Dn);if(t==="storybookBuild"){let r=await le(n),o=te({name:"",version:r.version},!0);return[{tag:"script",attrs:{type:"importmap"},children:JSON.stringify({imports:{"@arcgis/core/":`${o}@arcgis/core/`}})},zo(o)]}else return[zo(Oe(e,`${n}/assets/`))]}var zo=e=>({cssHref:`${e}esri/themes/light/main.css`,id:"arcgisCoreStylesheet"});async function we(e){let t=Go.get(e);return t||(t=ol(e),Go.set(e,t)),await t}var Go=new WeakMap;async function ol(e){let t=e.isInStorybook&&e.viteCommand==="build"?"storybookBuild":"lazy",n=e.viteConfig.base,r=async a=>(await Promise.all(a.map(async(p,l)=>p.type==="stencil"?await Ho(n,p.packageName,t,l):p.type==="@arcgis/lumina"?await Uo(n,p.packageName,t,l):void 0))).filter(Xo).flat(),o=await Promise.all([ue.then(r),Nn(e).then(r),qo(n,t)]),i=c.join(e.dir.src,"loader.ts");return[...e.viteCommand==="serve"?[An]:[],...o.flat(),{optimizableImports:[],javascriptCode:[`import { defineCustomElements } from "${i}";`,`defineCustomElements(${t==="storybookBuild"?`{resourcesUrl:"./${e.options.build?.cdn?.namespace??Be}/"}`:""});`]}]}var An={optimizableImports:[],javascriptCode:["globalThis.litIssuedWarnings ??= new Set();","globalThis.litIssuedWarnings.add(",'"Lit is in dev mode. Not recommended for production! See https://lit.dev/msg/dev-mode for more information.",',");"]},_o=new WeakMap;async function Nn(e){let t=e.options?.serve?.extraDependencies??[];if(t.length===0)return[];let n=_o.get(e);return n||(n=Promise.all(t.map(async r=>await wn(r))).then(r=>r.filter(Xo)),_o.set(e,n)),await n}var Ln="/@arcgis/lumina-compiler/testLitSetupFile",In="/@arcgis/lumina-compiler/testSetupFile",$t=[Ln,In],Yo=An.javascriptCode.join(`
|
|
67
|
+
`);async function Zo(e){if(!e.viteConfig.test?.browser?.enabled)return Qo(e);let n=(await we(e)).map((r,o)=>{if("javascriptCode"in r)return r.javascriptCode.join(`
|
|
68
|
+
`);if("cssHref"in r)return[`import styles$t${o} from "${r.cssHref}${me}";`,`document.adoptedStyleSheets = [...document.adoptedStyleSheets, styles$t${o}.styleSheet];`].join(`
|
|
69
69
|
`);throw new Error(`Unexpected loader type for the browser test environment: ${JSON.stringify(r)}`)}).join(`
|
|
70
70
|
|
|
71
|
-
`);return[
|
|
71
|
+
`);return[Qo(e),n].join("")}var Qo=e=>[e.isInPuppeteerTestBackEnd?il:"",sl].join(""),il=`import { setupPuppeteerTest } from "@arcgis/lumina-compiler/puppeteerTesting";
|
|
72
72
|
setupPuppeteerTest();
|
|
73
|
-
`,
|
|
73
|
+
`,sl=`import { setupLuminaTest } from "@arcgis/lumina-compiler/testing";
|
|
74
74
|
setupLuminaTest();
|
|
75
|
-
`;function
|
|
75
|
+
`;function ti(e){let t;async function n(){let u=t===void 0;u&&e.viteCommand==="serve"&&(e.typeScriptHost=pl.createCompilerHost(e.typeScriptConfig.options,!1)),t??=[al().find(({name:v})=>v==="CORE - LIT-PROPERTY-DECORATOR"),No(e),vo(e),...e.viteCommand==="build"?[ho(e)]:[],Co(e),...e.options.manifests?.plugins??[]],u||(e.componentFilesPromise=Ge(e,e.dir.srcComponents));let x=await e.componentFilesPromise,b=await dl(e,x);return dn({plugins:t,modules:b,context:io},e,!1)}function r(u,x){if(s===void 0)return!1;let b=e.getSourceFile(u,x),{modules:[v]}=dn({plugins:t,modules:[b]},e,!0),F=e.manifest.modules.findIndex(U=>U.path===v.path),K=e.manifest.modules[F],D=Array.from(e.manifest.modules);D.splice(F,1,v),e.manifest={...e.manifest,modules:D};let H=[],ie=V(v,!0);e.manifestComponents=e.manifestComponents.filter(U=>U.sourcePath===K.path?(H.push(U),!1):!0);let se=ie.length!==H.length,pt=ie.map(U=>{let Rs=H.find(Os=>Os.tagName===U.tagName)===void 0;return se||=Rs,U});return se?!1:(pt.forEach(U=>{let nr=yn(U);e.server.ws.send({type:"custom",event:"component-meta-update",data:nr}),e.manifestComponents.push(U),U.sourcePath=v.path}),g(),!0)}let o=!1,i,s,a,p,l,d="@arcgis/lumina:generateManifestPlugin",m={name:d,configResolved(){p=c.join(e.dir.root,"src","loader.ts"),l=E(p)},resolveId:u=>u===p||u===l?p:void 0,async load(u){let x=u.startsWith(Ln),b=u.startsWith(In);if(!(!u.endsWith(".tsx")&&u!==p&&!x&&!b)){if(!s&&!e.isInPuppeteerTestBackEnd){a||clearTimeout(i),a??=n().catch(F=>{throw o=!0,F});let v=await a;s??=v}return u===p?lo(e):x?Yo:b?await Zo(e):void 0}},async writeBundle(){e.isInStorybook||await ll(c.join(e.dir.dist,"loader.d.ts"),co)},async handleHotUpdate({file:u,modules:x,read:b}){let v=await y(u,b);return v===void 0?void 0:v?x:(f(),[])},configureServer(u){if(e.isInPuppeteerTestBackEnd)return;e.isInTest&&u.watcher.on("change",b=>{y(b,async()=>await ei(b,"utf8")).catch(console.error)}),u.watcher.on("add",x),u.watcher.on("unlink",x),u.watcher.on("addDir",b=>b.startsWith(e.dir.srcComponents)?void Ge(e,e.dir.srcComponents,b).then(v=>v.length>0?f():void 0):void 0),u.watcher.on("unlinkDir",b=>{e.componentFiles.some(F=>F.startsWith(b))&&f()});function x(b){ce(b,e.dir.srcComponents)&&f()}u.watcher.on("change",()=>{if(!o)return;o=!1,i=setTimeout(()=>f(!0),1e3)})}};async function y(u,x){if(!ce(u,e.dir.srcComponents))return;let v=await x();return r(u,v)}function f(u=!1){!u&&s===void 0||(s=void 0,a=void 0,g(),C())}function g(){let u=e.server.moduleGraph.getModuleById(p);u?e.server.moduleGraph.invalidateModule(u):(console.warn(`${d}: Failed to find HMR module for src/loader.ts`),e.server.moduleGraph.invalidateAll())}let C=()=>e.server.ws.send({type:"full-reload",path:c.join("/",c.relative(e.dir.root,p))});return m}async function dl(e,t){if(e.viteCommand==="build"){let n=e.typeScriptProgram.getSourceFiles(),r=new Set(t);return n.filter(o=>r.has(o.fileName))}else return await Promise.all(t.map(async n=>{let r=await ei(n,"utf8");return e.getSourceFile(n,r)}))}import cl from"mime-types";import{copyFile as ml,readFile as ri,readdir as fl,mkdir as jn,writeFile as oi}from"node:fs/promises";var ul="@arcgis/lumina:provideAssets";function ge(e,t,n=Nt){if(e.viteCommand!=="serve")throw new Error("serveAssets() is only available when Vite is running in serve mode");let r=e.serverConfigured,o=e.server.middlewares.stack.length;if(t.forEach(i=>{let s=ii(i),a=ai(e.dir,si(s)),p=gl(e.viteConfig.base,a,e.dir.distCdn);e.server.middlewares.use(p,(l,d,m)=>{let y=hl(l.url),f=s.type==="directory"?c.resolve(s.source,y.slice(1)):s.source,g=c.join(a,y),C=n.find(u=>u.match(g,e));return(typeof f=="function"?Promise.resolve(f()):ri(f)).then(u=>{let x=(typeof f=="function"?void 0:C?.transform(u.toString("utf8"),g,e))??u;d.setHeader("Cache-Control","max-age=31536000, immutable"),d.setHeader("Content-Type",cl.lookup(y)||"application/octet-stream"),d.write(x),d.end()}).catch(u=>{(s.type!=="directory"||process.env.DEBUG)&&console.error(ul,`Error occurred when trying to serve a file in response to request for "${l.originalUrl??y}":`,u),m()}),!0})}),r){let i=e.server.middlewares.stack.splice(o);e.server.middlewares.stack.splice(0,0,...i)}}async function At(e,t,n=Nt){await Promise.all(t.map(async r=>{let o=ii(r),i=ai(e.dir,si(o));if(o.type==="directory"){let s=c.resolve(o.source),p=(await fl(s,{recursive:!0,withFileTypes:!0})).filter(l=>l.isFile()).map(l=>{let d=c.resolve(l.path,l.name),m=c.relative(s,d),y=c.join(i,m);return[d,y]});await Rn(p.map(([l,d])=>d)),await Promise.all(p.map(async([l,d])=>await ni(l,d,n,e)))}else if(o.type==="file")await jn(c.dirname(i),{recursive:!0}),await ni(o.source,i,n,e);else if(o.type==="dynamic"){await jn(c.dirname(i),{recursive:!0});let s=await Promise.resolve(o.source());await oi(i,s)}}))}var ii=_t?e=>e:e=>e.type==="dynamic"?{...e,destination:ke(e.destination)}:{...e,source:ke(e.source),destination:ke(e.destination)};async function ni(e,t,n,r){let o=n.find(i=>i.match(t,r));if(o===void 0)await ml(e,t);else{let i=await ri(e,"utf8"),s=o.transform(i,t,r);await oi(t,s)}}function si(e){if(e.type==="dynamic")return e.destination;if(e.source.endsWith(c.sep)){if(e.type==="file")throw new Error(`Unexpectedly tried to provide an asset with type "file", whose source looks like a directory: ${E(e.source)}. If source is meant to be a directory, change to "type":"directory". If source is a file, make sure source path does not end with / or \\`);return e.destination}return e.destination===""?c.basename(e.source):e.destination.endsWith(c.sep)?e.type==="directory"&&e.destination===c.sep?e.destination:c.join(e.destination,c.basename(e.source)):e.destination}function ai({dist:e,distCdnAssets:t},n){let r=yl(n),o=c.join(t,r?c.relative(t,n):n),i=c.relative(e,o),s=pi(i);return c.join(e,s)}function yl(e){if(e.startsWith(c.sep)){let t=Q(),n=t.startsWith(c.sep)?t.split(c.sep)[1]??"":"";return e.startsWith(`/${n}/`)||e.startsWith("/Users/")}else return!!(!_t&&c.isAbsolute(e))}function gl(e,t,n){let r=pi(c.relative(n,t)),o=r.startsWith("/")?r.slice(1):r;return`${e}${o}`}var pi=e=>e.replaceAll("../",""),hl=(e="")=>e.split("?")[0].split("#")[0];async function Rn(e){let t=new Set(e.map(c.dirname));await Promise.all(Array.from(t,async n=>await jn(n,{recursive:!0})))}var xl={match:(e,t)=>t.environment==="production"&&e.endsWith(".json"),transform:e=>JSON.stringify(JSON.parse(e))},Nt=[xl];import{isNotUndefined as Cl}from"@arcgis/components-utils";function li(e){let t,n=()=>[...e.options.assets?.transformers??[],...Nt];return{name:"@arcgis/lumina:handleStaticAssets",configResolved(){t=Tl(e)},async configureServer(r){e.server=r,!e.isInPuppeteerTestBackEnd&&(ge(e,await t,n()),r.watcher.on("addDir",o=>{if(o.endsWith("assets")){let i=c.dirname(o);c.join(i,"/")===e.dir.root?ge(e,[ci],n()):o.startsWith(e.dir.srcComponents)&&ge(e,[di(o,i,e.dir.srcComponents)],n())}}))},async writeBundle(){await At(e,await t,n())}}}async function Tl(e){let t=B("assets"),n=await e.componentFilesPromise,r=await Promise.all(n.map(async o=>{let i=c.dirname(o),s=c.join(i,"assets");return await B(s)?di(s,i,e.dir.srcComponents):void 0}));return await t&&r.push(ci),r.filter(Cl)}var di=(e,t,n)=>({type:"directory",source:e,destination:c.relative(n,t)}),ci={type:"directory",source:"assets/",destination:""};import{mkdir as bl,writeFile as Lt}from"node:fs/promises";function mi(e){let{stencilCompatibility:t}=e.options.build?.ssr??{};if(t?.enabled===!0)return{name:"@arcgis/lumina:buildStencilHydrate",async writeBundle(){if(e.isInStorybook)return;let n=A()?.name??e.options.build?.cdn?.namespace??c.basename(e.dir.root),r=`${n}/hydrate`,o=c.resolve(e.dir.root,t.path??"hydrate"),i="index.d.ts",s="index.js",a="index.mjs",p=c.join(o,"index.d.ts"),l=c.join(o,"index.js"),d=c.join(o,"index.mjs"),m=Y(o,e.dir.dist),f=`${Array.from(new Set(e.manifestComponents.map(g=>`import "${m}/${g.importPath}";`))).join(`
|
|
76
76
|
`)}
|
|
77
|
-
export * from "@arcgis/lumina/
|
|
78
|
-
`),
|
|
77
|
+
export * from "@arcgis/lumina/stencilSsrCompatibility";`;await bl(o,{recursive:!0}),await Promise.all([Lt(c.join(o,"package.json"),`${JSON.stringify({name:r,description:`${n} component hydration app.`,type:"module",main:s,module:a,types:i,exports:{".":{types:`./${i}`,import:`./${a}`,require:`./${s}`}},dependencies:{"@arcgis/lumina":"*"}},null,2)}
|
|
78
|
+
`),Lt(p,f),Lt(l,f),Lt(d,f)])}}}var gi=e=>({name:"@arcgis/lumina:printTotalBuildSize",apply:()=>e.viteCommand==="build",configResolved(t){let n=t.plugins.find(({name:o})=>o==="vite:reporter");if(n===void 0){console.warn("Unable to find the vite's built-in vite:reporter plugin");return}let r=n.writeBundle;if(typeof r!="function")throw new Error("Expected vite:reporter to declare a writeBundle() function");n.writeBundle=async function(i,s){let a=0,p=0,l=0,d=0,m=console.log;console.log=function(...f){if(m.apply(console,f),f.length===1&&typeof f[0]=="string"){let[g,C]=f[0].match(Sl)??[];if(!g)return;d||(d=f[0].slice(0,f[0].indexOf(g)+g.length).replaceAll(El,"").length);let u=Number.parseFloat(g.replace(" kB","").replaceAll(",",""));C?(l+=Number.parseFloat(C.replace(" kB","").replaceAll(",","")),p+=u):a+=u}};try{await r.call(this,i,s)}finally{console.log=m}if(p>0){let f=l>0?p:a,g=yi(f),C=e.dir.relativeDist;console.log([ui,C,vl,"*"," ".repeat(d-`${C}*`.length-g.length),g,fi,l>0?` ${ui}\u2502 gzip: ${yi(l)}${fi}`:""].join(""))}}}}),fi="\x1B[22m\x1B[1m\x1B[22m",ui="\x1B[2m",vl="\x1B[22m\x1B[36m",Sl=/\d+(?:,\d+)?\.\d{2} kB/gu,El=/\x1B\[\d+m/gu,Pl=new Intl.NumberFormat("en",{maximumFractionDigits:2,minimumFractionDigits:2}),yi=e=>`${Pl.format(e)} kB`;import I from"typescript";import On from"typescript";var wl=["keyed","ref","repeat"],he="staticHtml",ne="staticSvg",re="html",xe="svg",Jn=Symbol("maybe HTML namespace or maybe SVG"),Bn="css",Wn="mathml",hi=[Bn,re,Wn,he,ne,xe],xi=new Set(hi),Ml=["dynamicValueDirective","safeClassMap","safeStyleMap"],kl="nothing",Ci=[...wl,...hi,...Ml,kl],We=e=>On.isJsxElement(e)||On.isJsxSelfClosingElement(e)||On.isJsxFragment(e);var Ti=e=>e.reduce((t,[n,r])=>(t[n]??=[],t[n].push(r),t),{}),tt={[re]:["lit-html","lit/html.js","lit"],[he]:["lit-html/static.js","lit/static-html.js"],[xe]:["lit-html","lit/html.js","lit"],[ne]:["lit-html/static.js","lit/static-html.js"],[Wn]:["lit-html","lit/html.js","lit"],[Bn]:["@lit/reactive-element/css-tag.js","@lit/reactive-element","lit"],safeClassMap:["@arcgis/lumina"],safeStyleMap:["@arcgis/lumina"],dynamicValueDirective:["@arcgis/lumina"],keyed:["lit-html/directives/keyed.js","lit/directives/keyed.js"],repeat:["lit-html/directives/repeat.js","lit/directives/repeat.js"],ref:["lit-html/directives/ref.js","lit/directives/ref.js"],nothing:["lit-html","lit/html.js","lit-element/lit-element.js","lit","@arcgis/lumina"]},bi=Ti(Object.entries(tt).flatMap(([e,t])=>t.map(n=>[n,e]))),It=new Set(Object.keys(bi));function vi(e,t){let n=t.importClause,r=t.moduleSpecifier;if(!I.isStringLiteral(r))return t;let o=Fl(e.sourceFile.fileName,r.text,""),i=!n?.isTypeOnly;if(i&&e.existingImportedModules.add(o),!n)return t;if(n.name){let p=n.name.text,l=n.name.text.startsWith(p[0].toUpperCase()),d=c.isAbsolute(o);i&&!n.isTypeOnly&&l&&d&&e.importedFunctionComponentsFromModules.add(o)}let s=n.namedBindings;if(!s||!I.isNamedImports(s))return t;let a=It.has(r.text);return s.elements.forEach(p=>{let l=(p.propertyName??p.name).text,d=tt[l];if(a&&d?.some(f=>f===r.text)){let f=Si(l,o);e.existingLitImports.add(f),e.importRenames[f]=p.name?.text??f}let m=l.startsWith(l[0].toUpperCase()),y=c.isAbsolute(o);i&&!p.isTypeOnly&&m&&y&&e.importedFunctionComponentsFromModules.add(o)}),t}var Si=(e,t)=>e===re&&tt.staticHtml.includes(t)?he:e===xe&&tt.staticSvg.includes(t)?ne:e,Fl=(e,t,n)=>t.startsWith(".")?c.resolve(e,"..",`${t}${n}`):t;function Ei(e){return I.isImportDeclaration(e)?Dl(this,e):e}function Dl(e,t){let n=t.importClause,r=n?.namedBindings,o=t.moduleSpecifier;if(!I.isStringLiteral(o)||!r||!I.isNamedImports(r)||!It.has(o.text))return t;let i=n.isTypeOnly,s=!1,a=r.elements.map(p=>{let l=(p.propertyName??p.name).text,d=Si(l,o.text);return e.neededImports.has(d)?(e.existingLitImports.delete(d),e.neededImports.delete(d),s=!0,I.factory.updateImportSpecifier(p,!1,p.propertyName,p.name)):i?I.factory.updateImportSpecifier(p,!0,p.propertyName,p.name):p});return bi[o.text]?.forEach(p=>{!e.neededImports.has(p)||e.existingLitImports.has(p)||(e.neededImports.delete(p),s=!0,a.push(wi(p,e)))}),s?I.factory.updateImportDeclaration(t,t.modifiers,I.factory.updateImportClause(n,!1,n.name,I.factory.updateNamedImports(r,a)),t.moduleSpecifier,t.attributes):t}function Pi(e){let t=Ti(Array.from(e.neededImports,n=>[tt[n][0],n]));return Object.entries(t).map(([n,r])=>I.factory.createImportDeclaration(void 0,I.factory.createImportClause(!1,void 0,I.factory.createNamedImports(r.map(o=>(e.neededImports.delete(o),wi(o,e))))),I.factory.createStringLiteral(n)))}function wi(e,t){let n=e===he?re:e===ne?xe:e,r=t.importRenames[e];return r===n?I.factory.createImportSpecifier(!1,void 0,I.factory.createIdentifier(n)):I.factory.createImportSpecifier(!1,I.factory.createIdentifier(n),I.factory.createIdentifier(r))}var Mi=e=>({name:"@arcgis/lumina:configureVite",async config({server:t,publicDir:n,build:{target:r,sourcemap:o,lib:i,rollupOptions:{output:s=[]}={}}={},test:a={},css:p}){let{include:l,browser:d,environment:m}=a,y={index:"src/index.ts",loader:"src/loader.ts",...await zr(e)},{loader:f,...g}=y,C={entries:Object.values(g),include:Array.from(It).filter(x=>!x.startsWith("@arcgis"))};typeof a.setupFiles=="string"?a.setupFiles=[...$t,a.setupFiles]:Array.isArray(a.setupFiles)?a.setupFiles=[...$t,...a.setupFiles]:a.setupFiles=[...$t];let u={preprocessorOptions:{scss:{api:p?.preprocessorOptions?.scss?.api??"modern-compiler"}}};if(e.isInPuppeteerTestBackEnd){if(d?.enabled===!0)throw new Error("Can't enable both Vitest browser mode and Puppeteer testing at the same time");return{test:{puppeteerLaunchOptions:e.options.puppeteerTesting?.launchOptions,puppeteerWaitForChangesDelay:e.options.puppeteerTesting?.waitForChangesDelay,globalSetup:["@arcgis/lumina-compiler/puppeteerTesting/globalSetup"],runner:"@arcgis/lumina-compiler/puppeteerTesting/runner",include:l??["**/*.e2e.?(c|m)[jt]s?(x)"],environment:m??"happy-dom"},css:u}}return{server:{open:t?.open??!0},publicDir:n??!1,build:{target:r??Dt(e.typeScriptConfig),sourcemap:o??(e.environment==="development"?"inline":e.options.build?.enableSourceMapsInProduction??!1),lib:{entry:y,formats:(i?i.formats:void 0)??["es"]},rollupOptions:{output:{chunkFileNames:(Array.isArray(s)?void 0:s.chunkFileNames)||"chunks/[name].js",banner:(Array.isArray(s)?void 0:s.banner)||e.banner,generatedCode:(Array.isArray(s)?void 0:s.generatedCode)??"es2015"}}},optimizeDeps:C,test:{include:l??[d?.enabled??!0?"**/*.e2e.?(c|m)[jt]s?(x)":"**/*.{test,spec}.?(c|m)[jt]s?(x)"],browser:{enabled:d?.enabled??!0,name:d?.name??"chromium",provider:d?.provider??sr}},css:u}}});var ki=e=>({name:"@arcgis/lumina:setAssetPath",apply:()=>e.viteCommand==="build",config:t=>({base:t.base??e.options.assets?.defaultPath??te()})});import Kn from"typescript";var Ke={vsCodeHtml:"docs/vscode.html-custom-data.json",vsCodeCss:"docs/vscode.css-custom-data.json",webTypes:"docs/web-types.json",manifest:"docs/manifest.json",stencilLikeDocsJson:"docs/docs.json"};import{readFile as $l,writeFile as Al}from"node:fs/promises";async function jt(e,t,n,r,o=A()){let i=Nl(e,n,r,o),s=c.join(t,"lumina.ts");(await B(s)?await $l(s,"utf8"):"")!==i&&await Al(s,i)}function Nl(e,t,n,r=A()){let o=e.filter(m=>m.type==="@arcgis/lumina").map(m=>`
|
|
79
79
|
/// <reference types="${m.packageName}/types/lumina" />`),i=e.filter(m=>m.type==="stencil"),s=i.map((m,y)=>`
|
|
80
80
|
import type { JSX as JSX$${y} } from "${m.packageName}/dist/types/components";`),a=i.length===0?"":`
|
|
81
81
|
|
|
82
82
|
declare global {
|
|
83
83
|
interface ImportStencilElements extends ${i.map((m,y)=>`JSX$${y}.IntrinsicElements`).join(", ")} {}
|
|
84
|
-
}`,p=r.devDependencies??{},l=n==="preview"?"matchers":n==="webdriverio"?"webdriverio":"playwright";return[...
|
|
85
|
-
/// <reference types="vitest/config" />`:"","@vitest/browser"
|
|
86
|
-
/// <reference types="@vitest/browser/jest-dom.d.ts" />`:"","@vitest/browser"
|
|
84
|
+
}`,p=r.devDependencies??{},l=n==="preview"?"matchers":n==="webdriverio"?"webdriverio":"playwright";return[...Ll,t?Il:"",p.vitest?`
|
|
85
|
+
/// <reference types="vitest/config" />`:"",p["@vitest/browser"]?`
|
|
86
|
+
/// <reference types="@vitest/browser/jest-dom.d.ts" />`:"",p["@vitest/browser"]?`
|
|
87
87
|
/// <reference types="@vitest/browser/providers/${l}" />`:"",...o,...s,a,`
|
|
88
|
-
`].join("")}var
|
|
88
|
+
`].join("")}var Ll=`/**
|
|
89
89
|
* This file is autogenerated by \`@arcgis/lumina-compiler\` - do not edit it manually.
|
|
90
90
|
* Manual edits will be overwritten.
|
|
91
91
|
*
|
|
@@ -94,19 +94,19 @@ declare global {
|
|
|
94
94
|
*
|
|
95
95
|
* If you need to provide additional typings, create a separate file.
|
|
96
96
|
*/
|
|
97
|
-
/// <reference types="@arcgis/lumina/typings" />`,
|
|
98
|
-
/// <reference types="@arcgis/core/interfaces" />`;var
|
|
99
|
-
`)}:"cssHref"in o?{tag:"link",attrs:{rel:"stylesheet",href:o.cssHref,id:o.id}}:o):void 0}},async buildStart(){if(e.viteCommand!=="serve")return;let n=(await
|
|
100
|
-
`).join("").trimStart()}export * from "./${ke}";`;return[Ni(c.join(e.dir.dist,l,jl),y),Ni(c.join(e.dir.dist,l,Rl),y)]});await Promise.all(o)}}),jl="index.js",Rl="index.d.ts",Ii=(e,t,n,r=new Set)=>t.flatMap(o=>n.has(o)?[o]:r.has(o)?[]:(r.add(o),Ii(e,e[o].referencedBy,n,r)));import xd from"typescript";import nd from"typescript";import T from"typescript";import P from"typescript";import{mappedFind as Bl,uncapitalize as ji}from"@arcgis/components-utils";import h from"typescript";function Hn(e,t){if(Ke(e))return e;{t.neededImports.add("nothing");let n=t.importRenames.nothing;return h.factory.createParenthesizedExpression(h.factory.createBinaryExpression(h.factory.createParenthesizedExpression(e),h.factory.createToken(h.SyntaxKind.QuestionQuestionToken),h.factory.createIdentifier(n)))}}function Ke(e){return typeof e=="string"||Ol.has(e.kind)||h.isConditionalExpression(e)&&Ke(e.whenTrue)&&Ke(e.whenFalse)||h.isBinaryExpression(e)&&(Jl.has(e.operatorToken.kind)||Ke(e.left)&&Ke(e.right))||(h.isParenthesizedExpression(e)||h.isSatisfiesExpression(e)||h.isAsExpression(e))&&Ke(e.expression)||h.isTaggedTemplateExpression(e)&&h.isIdentifier(e.tag)&&hi.has(e.tag.text)}var Ol=new Set([h.SyntaxKind.NumericLiteral,h.SyntaxKind.BigIntLiteral,h.SyntaxKind.StringLiteral,h.SyntaxKind.RegularExpressionLiteral,h.SyntaxKind.NoSubstitutionTemplateLiteral,h.SyntaxKind.FalseKeyword,h.SyntaxKind.NullKeyword,h.SyntaxKind.TrueKeyword,h.SyntaxKind.ArrayLiteralExpression,h.SyntaxKind.ObjectLiteralExpression,h.SyntaxKind.FunctionExpression,h.SyntaxKind.ArrowFunction,h.SyntaxKind.TypeOfExpression,h.SyntaxKind.PrefixUnaryExpression,h.SyntaxKind.PostfixUnaryExpression,h.SyntaxKind.TemplateExpression,h.SyntaxKind.ClassExpression,h.SyntaxKind.NonNullExpression]),Jl=new Set([h.SyntaxKind.PlusEqualsToken,h.SyntaxKind.MinusEqualsToken,h.SyntaxKind.AsteriskAsteriskEqualsToken,h.SyntaxKind.AsteriskEqualsToken,h.SyntaxKind.SlashEqualsToken,h.SyntaxKind.PercentEqualsToken,h.SyntaxKind.AmpersandEqualsToken,h.SyntaxKind.BarEqualsToken,h.SyntaxKind.CaretEqualsToken,h.SyntaxKind.LessThanLessThanEqualsToken,h.SyntaxKind.GreaterThanGreaterThanGreaterThanEqualsToken,h.SyntaxKind.GreaterThanGreaterThanEqualsToken,h.SyntaxKind.AmpersandToken,h.SyntaxKind.BarToken,h.SyntaxKind.CaretToken,h.SyntaxKind.EqualsEqualsToken,h.SyntaxKind.EqualsEqualsEqualsToken,h.SyntaxKind.ExclamationEqualsEqualsToken,h.SyntaxKind.ExclamationEqualsToken,h.SyntaxKind.LessThanToken,h.SyntaxKind.LessThanEqualsToken,h.SyntaxKind.GreaterThanToken,h.SyntaxKind.GreaterThanEqualsToken,h.SyntaxKind.InstanceOfKeyword,h.SyntaxKind.InKeyword,h.SyntaxKind.LessThanLessThanToken,h.SyntaxKind.GreaterThanGreaterThanToken,h.SyntaxKind.GreaterThanGreaterThanGreaterThanToken,h.SyntaxKind.PlusToken,h.SyntaxKind.MinusToken,h.SyntaxKind.AsteriskToken,h.SyntaxKind.SlashToken,h.SyntaxKind.PercentToken,h.SyntaxKind.AsteriskAsteriskToken]);var Ji={property(e,t,n,r){let o=Wl(r,n,e),i=o!==void 0;if(i){let p=Vn(t);if(p===!0)return[o.attributeName];if(p===!1)return[]}let s=t===void 0?["=",P.factory.createToken(P.SyntaxKind.TrueKeyword)]:Ot(e,t,i),a=s[0]!=="=";if(i){if(a)return[o.attributeName,...s];if(o.type==="stringified"){let[l,d]=s,m=Hn(d,e);if(!(m===d))return[o.attributeName,l,m]}}return[`.${n}`,...s]},attribute(e,t,n){let r=t===void 0||Vn(t);if(r===!0)return[n];if(r===!1)return[];let o=Ot(e,t,!0),s=o[0]!=="="?o:[o[0],Hn(o[1],e)];return[n,...s]},booleanAttribute(e,t,n){let r=t===void 0||Vn(t);return r===!0?[n]:r===!1?[]:[`?${n}`,...Ot(e,t,!1)]},event(e,t,n){if(!t||!P.isJsxExpression(t)||!t.expression)throw new Error(`Event prop value must be an expression. Found ${String(t?.getText())}`);let r=n.slice(2),o=ji(r);return[`@${Pt.has(o)?r.toLowerCase():Eo?ji(r):r}=`,...Jt(e,t)]},directives(e,t){if(!t||!P.isJsxExpression(t))throw new Error(`Directives prop must be an expression. Found ${String(t?.getText())}`);if(!t.expression||!P.isArrayLiteralExpression(t.expression))throw new Error(`Directives prop must be an array rather than a variable or ternary expression. This limitation can be relaxed in the future if needed. Still, the following are allowed: directives={[directiveA, condition ? a : b, c()]}. Found ${String(t.expression?.getText())}`);return t.expression.elements.flatMap(o=>{if(P.isSpreadElement(o))throw new Error(`Directives prop cannot contain a spread argument - it needs to be statically analyzable. This limitation can be relaxed in the future if needed. Still, the following are allowed: directives={[directiveA, condition ? a : b, c()]}. Found ${String(t.expression?.getText())}`);return G(e,o)})},ref(e,t){e.neededImports.add("ref");let n=e.importRenames.ref;if(!t||!P.isJsxExpression(t)||!t.expression)throw new Error(`ref prop value must be an expression. Found ${String(t?.getText())}`);return[P.factory.createCallExpression(P.factory.createIdentifier(n),void 0,[G(e,t.expression)])]},class:Oi,style:Oi,key:(e,t)=>[nt(t)],dynamicValue(e,t,n){e.neededImports.add("dynamicValueDirective");let r=e.importRenames.dynamicValueDirective;return[P.factory.createCallExpression(P.factory.createIdentifier(r),void 0,[P.factory.createStringLiteral(n),...t===void 0?[]:[G(e,P.isJsxExpression(t)?t.expression??P.factory.createIdentifier("undefined"):t)]])]}};function Wl(e,t,n){if(typeof e=="string"){let i=(n.externalComponents[e]??n.localComponents[e])?.propToAttribute?.[t];if(i)return{attributeName:i,type:"normal"}}let r=Un(z.common,t);if(r)return r;if(typeof e=="string"){let o=Un(z.perElement[e],t);if(o)return o}else{let o=Bl(Object.values(z.perElement),i=>{let s=Un(i,t);return s?.type==="stringified"?s:void 0});if(o)return o}}function Un(e,t){let n=e?.normal?.[t];if(n)return{attributeName:n,type:"normal"};let r=e?.stringified?.[t];if(r)return{attributeName:r,type:"stringified"}}function nt(e){if(e&&P.isJsxExpression(e)&&e.expression)return e.expression;if(e&&P.isStringLiteral(e))return e;throw new Error(`key prop value must be an expression. Found ${String(e?.getText())}`)}function Vn(e){if(e===void 0)return!0;if(e&&P.isJsxExpression(e)){if(e.expression?.kind===P.SyntaxKind.TrueKeyword||e.expression===void 0)return!0;if(e.expression?.kind===P.SyntaxKind.FalseKeyword)return!1}}function Ot(e,t,n=!1){if(Be(t))throw new Error(`Invalid JSX syntax detected or there is a bug in Lumina. Found ${t.getText()}. Expected JSX attribute value to be wrapped in { }`);if(P.isStringLiteral(t))return Ri(t,n);if(P.isJsxExpression(t)&&t.expression){if(P.isStringLiteral(t.expression))return Ri(t.expression,n);if(n){if(P.isNumericLiteral(t.expression))return[`=${t.expression.text}`];if(P.isPrefixUnaryExpression(t.expression)&&P.isNumericLiteral(t.expression.operand))return[`=${t.expression.getText(e.sourceFile)}`]}}return["=",...Jt(e,t)]}function Ri(e,t){if(!t)return["=",e];let n=e.text;if(n.length===0)return[];let r=mt(n);if(Rr(r)){let o=r.replaceAll('"',""");if(o.length>r.length){let i=r.replaceAll("'","'");if(i.length<o.length)return[`='${i}'`]}return[`="${o}"`]}else return[`=${r}`]}function Oi(e,t,n){if(t&&P.isStringLiteral(t))return[`${n}="${t.text}"`];if(!t||!P.isJsxExpression(t)||!t.expression)throw new Error(`${n} prop value must be an expression. Found ${String(t?.getText())}`);let r=t.expression;if(Kl(r)){let i=n==="class"?"safeClassMap":"safeStyleMap";e.neededImports.add(i);let s=e.importRenames[i],a=P.factory.createCallExpression(P.factory.createIdentifier(s),void 0,[G(e,r)]);return[`${n}=`,a]}else return[n,...Ot(e,t,!0)]}var Kl=e=>P.isObjectLiteralExpression(e)||P.isPropertyAccessExpression(e)||P.isIdentifier(e)||P.isCallExpression(e)||P.isBinaryExpression(e)||P.isConditionalExpression(e);import rt from"typescript";function Wi(e){if(e&&rt.isJsxExpression(e)&&e.expression&&rt.isCallExpression(e.expression)&&rt.isIdentifier(e.expression.expression)&&e.expression.expression.text in Bi&&e.expression.arguments.length<=1)return{propType:Bi[e.expression.expression.text],initializer:rt.factory.createJsxExpression(void 0,e.expression.arguments[0])}}var Bi={bindProperty:"property",bindAttribute:"attribute",bindBooleanAttribute:"booleanAttribute",bindEvent:"event"};function Ki(e,t,n){return Ul.has(e)?e:e.startsWith("on")&&t!==void 0&&rt.isJsxExpression(t)&&t.expression!==void 0?"event":St.has(e)||e.includes("-")?"attribute":!(typeof n=="string"&&n.includes("-")&&!je.has(n))&&(Et.has(e)||(n===Ze?!1:n===Ne?Object.values(et).some(s=>s.has(e)):et[n]?.has(e)===!0))?Tn.has(e)?"booleanAttribute":"attribute":n==="svg"||n==="math"||n===Ze||n!==Ne&&(Le.has(n)||Ie.has(n))?e in z.common.normal||e in z.common.stringified?"property":Tn.has(e)?"booleanAttribute":"attribute":n===Ne&&(e==="value"||e==="defaultValue")?"dynamicValue":"property"}var Hl=["class","style","ref","directives","key"],Ul=new Set(Hl);import W from"typescript";var Hi=e=>typeof e!="string"||e.trim().length>0;function ot({key:e,parts:t,litTag:n},r){let o=Vl(t);if(o.length%2===0)throw new Error("Normalized template parts array length must be odd");let[i,...s]=o;if(typeof i!="string")throw new Error("First normalized template part must be a string");if(n===void 0){if(s.length===0)return zn(r,e,W.factory.createStringLiteral(i));if(i===""&&s.length===2&&s[1]==="")return zn(r,e,typeof s[0]=="string"?W.factory.createStringLiteral(i):s[0])}let a=typeof n=="string"?n:re;r.neededImports.add(a);let p=r.importRenames[a],l=ve(i),d=W.factory.createTaggedTemplateExpression(W.factory.createIdentifier(p),void 0,s.length===0?W.factory.createNoSubstitutionTemplateLiteral(l,l):W.factory.createTemplateExpression(W.factory.createTemplateHead(l,l),zl(s)));return zn(r,e,d)}var Vl=e=>e.reduce((t,n,r)=>{let o=t.at(-1),i=typeof o=="string",s=typeof n=="string";if(i&&s)return[...t.slice(0,-1),`${o}${n}`];let p=r===e.length-1;return!s&&p?[...t,n,""]:!s&&!p?[...t,n,""]:[...t,n]},[""]);function zl(e){if(!(e.length%2===0))throw new Error("templatePartsToSpans should be called with normalized parts array without the first item");let n=e.length/2;return Array.from({length:n},(r,o)=>{let i=o*2,s=e[i];if(typeof s=="string")throw new Error("Expected to receive a normalized array of parts");let a=i+1,p=e[a];if(typeof p!="string")throw new Error("Expected to receive a normalized array of parts");let l=o===n-1,d=ve(p);return W.factory.createTemplateSpan(s,l?W.factory.createTemplateTail(d,d):W.factory.createTemplateMiddle(d,d))})}function zn(e,t,n){if(t===void 0)return n;e.neededImports.add("keyed");let r=e.importRenames.keyed;return W.factory.createCallExpression(W.factory.createIdentifier(r),void 0,[t,n])}import Gn from"typescript";var _n=(e,t)=>e.getFullText(t.sourceFile).slice(0,e.getLeadingTriviaWidth(t.sourceFile));function Xn(e,t){let n=Bt(e);return n.length===0?t:Gn.setSyntheticLeadingComments(t,n.map(r=>({...r,pos:-1,end:-1,text:Vi(e.slice(r.pos,r.end))})))}var Bt=e=>e.trim().length===0?[]:Gn.getLeadingCommentRanges(e,0)??[];function Ui(e){let t=Bt(e);if(t.length===0)return[e];let n=t.reduceRight(([o,...i],s)=>{let a=ve(Vi(qn(o).slice(s.pos,s.end)));return[qn(o).slice(0,s.pos),Gn.factory.createNoSubstitutionTemplateLiteral(a,a),qn(o).slice(s.end),...i]},[e]);(typeof n[0]!="string"||n[0].trim()!=="")&&n.unshift(" ");let r=n.at(-1);return(typeof r!="string"||r.trim()!=="")&&n.push(" "),n}var Vi=e=>e.startsWith("//")?e.slice(2):e.slice(2,-2);function qn(e){if(typeof e=="string")return e;throw new Error(`Expected string, got ${typeof e}: ${String(e)}`)}import{isNotUndefined as Yl}from"@arcgis/components-utils";import S from"typescript";function qi(e,t){if(!(S.isPropertyAccessExpression(t.expression)&&t.expression.name.text==="map"))return t;let r=t.arguments[0];if(!(t.arguments.length===1&&S.isArrowFunction(r)))return t;let i=r.parameters.at(0);if(!(typeof i=="object"&&r.parameters.length<=2))return t;let a=Wt(r.body),p=!0,l;if(zi(a))l=a;else{if(!S.isBlock(a))return t;let u=a.statements.at(-1);if(!(u&&S.isReturnStatement(u)&&u.expression))return t;let b=Wt(u.expression);if(!zi(b))return t;let v=a.statements.slice(0,-1);if(v.some(Gi))return t;p=v.length===0,l=b}let d=S.isJsxElement(l)?l.openingElement:l,m=Yn(d);if(m===-1)return t;let y=d.attributes.properties[m];if(!y||!S.isJsxAttribute(y))return t;let f=nt(y.initializer),g=ql(i,f,p);if(g===void 0)return t;e.liftedKeys.add(y.name),e.neededImports.add("repeat");let C=e.importRenames.repeat;return S.factory.updateCallExpression(t,S.factory.createIdentifier(C),t.typeArguments,[t.expression.expression,S.factory.createArrowFunction(void 0,void 0,[g],void 0,void 0,f),S.factory.updateArrowFunction(r,r.modifiers,r.typeParameters,r.parameters,r.type,r.equalsGreaterThanToken,a)])}var zi=e=>S.isJsxElement(e)||S.isJsxSelfClosingElement(e);function Gi(e){if(S.isReturnStatement(e))return!0;let t=!1;return S.visitEachChild(e,n=>(t||=Gi(n),n),void 0),t}function ql(e,t,n){let r=S.isObjectBindingPattern(e.name)?Xl(e.name,t.getText()):e.name;if(!n){let o=oe(t);if(!o||!o.every(_i,r))return}return S.factory.updateParameterDeclaration(e,e.modifiers,e.dotDotDotToken,r,e.questionToken,e.type,e.initializer)}function oe(e){if(S.isIdentifier(e))return[e.text];if(S.isPropertyAccessExpression(e))return oe(e.expression);if(S.isElementAccessExpression(e))return oe(e.argumentExpression);if(S.isConditionalExpression(e)){let t=oe(e.condition),n=oe(e.whenTrue),r=oe(e.whenFalse);return t===void 0||n===void 0||r===void 0?void 0:[...t,...n,...r]}else if(S.isBinaryExpression(e)){let t=oe(e.left),n=oe(e.right);return t===void 0||n===void 0?void 0:[...t,...n]}else{if(Gl.has(e.kind))return[];{let t=Wt(e);return t!==e?oe(t):void 0}}}var Gl=new Set([S.SyntaxKind.NumericLiteral,S.SyntaxKind.BigIntLiteral,S.SyntaxKind.StringLiteral,S.SyntaxKind.RegularExpressionLiteral,S.SyntaxKind.NoSubstitutionTemplateLiteral,S.SyntaxKind.FalseKeyword,S.SyntaxKind.NullKeyword,S.SyntaxKind.TrueKeyword]),Wt=e=>S.isAsExpression(e)||S.isNonNullExpression(e)||S.isSatisfiesExpression(e)||S.isParenthesizedExpression(e)?Wt(e.expression):e;function _i(e){let t=this;return S.isIdentifier(t)?t.text===e:t.elements.some(_l,e)}function _l(e){let t=this;return S.isOmittedExpression(e)?!1:_i.call(e.name,t)}function Xl(e,t){let n=!1,r=e.elements.filter(o=>S.isIdentifier(o.name)?t.includes(o.name.getText())||o.propertyName&&t.includes(o.name.getText()):(n=!0,!0));return n||r.length===0?e:S.factory.updateObjectBindingPattern(e,r)}var Qn=(e,t)=>t.liftedKeys.has(e);var Qi=e=>e.manifestComponents.map(({name:t,importPath:n})=>`import type { ${t} } from "./${n}";`).join(`
|
|
101
|
-
`),
|
|
102
|
-
type ${e}SetterTypes = ${e}["${Zt}"]`:"",d=p.filter(Boolean).join(", ");return[d.length===0?"":`${d}, `,l]}var
|
|
103
|
-
Found ${x.getText()}`);let{name:b,initializer:v}=x;if(T.isJsxNamespacedName(b)){let Gt=E(e.sourceFile.fileName);throw new Error(`JSX namespaced attributes are not supported. Found ${b.getText()} in "${Gt}"`)}let F=b.text,K=Wi(v),D=K?.propType??Ki(F,v,a),X=Ji[D](e,K?.initializer??v,F,a);if(X.length===0)return[];let Ce=e.compiler.shouldMinifyStrict?" ":Ui(_n(b,e));if(D==="key")return l=typeof X[0]=="object"&&!Qn(b,e)?X[0]:void 0,Array.isArray(Ce)&&Ce.some(Hi)?Ce:[];let Ue=[...Ce,...X];return D==="directives"||D==="ref"||D==="dynamicValue"?(d.push(...Ue),[]):Ue});if(d.length>0&&m.push(...d),typeof a=="string"&&Ie.has(a))throw new Error(`JSX syntax for MathML elements is not yet supported. If you need it, please request it. Otherwise, use the \`math\` function from Lit directly. Tried to use the "${a}" element`);let y=typeof a=="string"&&wo.has(a),f=Kt(n,e);if(y&&f.parts.length>0){let x=E(e.sourceFile.fileName);throw new Error(`Void HTML elements like <${a}> cannot have children. Found ${t.getText()} in "${x}"`)}let g=(p===ge||p===ne)&&f.parts.length===0,C=["<",typeof a=="string"?a:i,...m,g?`${m.length===0?"":" "}/>`:">"],u=y||g?C:[...C,...f.litTag!==void 0&&f.litTag!==p?[ot({key:void 0,...f},e)]:f.parts,"</",typeof a=="string"?a:i,">"];return{key:l,parts:u,litTag:p}}function Zl(e,t){let n=e.attributes.properties[Yn(e)];return n&&T.isJsxAttribute(n)&&!Qn(n.name,t)?nt(n.initializer):void 0}var Yn=e=>e.attributes.properties.findIndex(({name:t})=>t&&T.isIdentifier(t)&&t.text==="key");function ed(e,t,n,r){let i=(T.isJsxElement(t)?t.openingElement:t).attributes.properties.map(p=>{if(T.isJsxSpreadAttribute(p))return Xn(_n(p,e),T.factory.createSpreadAssignment(p.expression));let{name:l,initializer:d}=p;if(T.isJsxNamespacedName(l)){let f=E(e.sourceFile.fileName);throw new Error(`JSX namespaced attributes are not supported. Found ${l.getText(e.sourceFile)} in "${f}"`)}if(l.text==="key")return;let m=d===void 0?T.factory.createTrue():T.isStringLiteral(d)?d:Be(d)?Zi(e,d):G(e,d.expression??T.factory.createIdentifier("undefined")),y=we(l.text)?T.factory.createStringLiteral(l.text):l;return T.factory.createPropertyAssignment(y,m)}),{parts:s,litTag:a}=Kt(r,e);return s.length>0&&i.push(T.factory.createPropertyAssignment(T.factory.createIdentifier("children"),ot({key:void 0,parts:s,litTag:a},e))),T.factory.createCallExpression(n,void 0,[T.factory.createObjectLiteralExpression(i.filter(Yl))])}function Kt(e,t){let n,r=e.flatMap(o=>{if(T.isJsxText(o))return[t.compiler.shouldMinifyStrict?jr(o.text):o.text];if(T.isJsxExpression(o))return Jt(t,td(o));{let i=es(t,o);if(i.key===void 0&&i.litTag!==ye&&i.litTag!==ne){if(i.litTag===On)return i.parts;if(n!==void 0&&i.litTag!==void 0&&n!==i.litTag)throw new Error(`Unexpectedly found both ${n} and ${i.litTag} child elements inside the same element.`);return n=i.litTag,i.parts}else return[ot(i,t)]}});return{litTag:n,parts:r}}function td(e){return e.expression&&T.isBinaryExpression(e.expression)&&(e.expression.operatorToken.kind===T.SyntaxKind.AmpersandAmpersandToken||e.expression.operatorToken.kind===T.SyntaxKind.QuestionQuestionToken||e.expression.operatorToken.kind===T.SyntaxKind.BarBarToken)?e.expression.operatorToken.kind===T.SyntaxKind.BarBarToken&&(T.isStringLiteral(e.expression.right)||Be(e.expression.right)||T.isNumericLiteral(e.expression.right)||T.isPrefixUnaryExpression(e.expression.right)||T.isNoSubstitutionTemplateLiteral(e.expression.right)||T.isTemplateExpression(e.expression.right))?e:T.factory.updateJsxExpression(e,T.factory.createBinaryExpression(e.expression,T.factory.createToken(T.SyntaxKind.BarBarToken),T.factory.createStringLiteral(""))):e}function Jt(e,t){if(t.expression===void 0){if(e.compiler.shouldMinifyStrict)return[];let n=t.getText(e.sourceFile).slice(1,-1);return Bt(n).length===0?[]:[Xn(n,T.factory.createIdentifier("undefined"))]}return T.isStringLiteral(t.expression)?[mt(t.expression.text)]:e.compiler.viteCommand==="serve"&&e.compiler.typeScriptConfig.options.sourceMap&&!e.compiler.shouldMinifyStrict&&T.isArrowFunction(t.expression)&&!T.isBlock(t.expression.body)?[G(e,T.factory.updateArrowFunction(t.expression,t.expression.modifiers,t.expression.typeParameters,t.expression.parameters,t.expression.type,t.expression.equalsGreaterThanToken,T.factory.createBlock([T.factory.createReturnStatement(t.expression.body)],!0)))]:[G(e,t.expression)]}function ts(e){let t=jo().map(({packageName:n})=>n);return e.existingImportedModules.forEach(n=>{if(c.isAbsolute(n))return;let{packageName:r,moduleName:o}=ln(n);if(t.includes(r??"")&&(o.startsWith("dist/components")||o.startsWith("components"))){let i=E(e.sourceFile.fileName);throw new Error(`Did not expect to find any explicit imports for "${n}". Found import in ${i}. Imports for web components that your component consumes will be added automatically at build-time as appropriate for a given output target. Type-only imports are still allowed. If you believe this is an error, please notify Lumina maintainers.`)}}),[]}function ns(e){if(e.compiler.viteCommand==="serve")return e.customElementsToImport.clear(),[];let t=Ve.get(e.compiler);return t||(t={},Ve.set(e.compiler,t)),t[e.sourceFile.fileName]??={referencedBy:[],referencedTagNames:[]},t[e.sourceFile.fileName].referencedTagNames=Array.from(e.customElementsToImport),e.customElementsToImport.clear(),e.importedFunctionComponentsFromModules.forEach(n=>{let r=`${n}.tsx`;t[r]??={referencedBy:[],referencedTagNames:[]},t[r].referencedBy.push(e.sourceFile.fileName)}),[]}var rs=(e,t)=>{let n=e.pragmas;if(n?.has("jsx")??n?.has("jsxImportSource"))return e.statements;let r={compiler:t.compiler,externalComponents:kt(),localComponents:t.compiler.isInPuppeteerTestBackEnd?{}:Kn(t.compiler.manifest),sourceFile:e,transformationContext:t.transformation,importRenames:rd(e),existingImportedModules:new Set,importedFunctionComponentsFromModules:new Set,existingLitImports:new Set,customElementsToImport:new Set,neededImports:new Set,liftedKeys:new Set};e.statements.forEach(a=>{nd.isImportDeclaration(a)&&bi(r,a)});let i=G(r,e).statements;if(r.neededImports.size>0&&(i=i.map(Si,r),r.existingLitImports.size>0))throw new Error(`Expected context.existingLitImports to be empty by now. Found: ${Array.from(r.existingLitImports).join(", ")}`);let s=[Ei,ts,ns].flatMap(a=>a(r));if(r.neededImports.size>0)throw new Error(`Expected context.neededLitImports to be empty by now. Found: ${Array.from(r.neededImports).join(", ")}`);return[...s,...i]};function rd(e){return od(e),Object.fromEntries(xi.map(t=>[t,e.identifiers.has(t)?`${t}$jsx`:t]))}function od(e){if(!("identifiers"in e))throw new Error("Expected sourceFile to have an undocumented identifiers property that is a Map<string,string>. If this error is thrown, it may mean Lumina Compiler needs to be updated to support the version of TypeScript being used.")}var os=(e,t)=>{if(t.fileManifest!==void 0&&e.text.includes(`* @${ee}`))throw new Error(`Do not use @${ee} JSDoc tag as it is not yet handled correctly by doc extraction (see https://github.com/open-wc/custom-elements-manifest/issues/263). Please use @${ze} instead. Found @${ee} in ${E(c.relative(t.compiler.dir.root,e.fileName))}`);return e.statements};import k from"typescript";import R from"typescript";import{PropertyFlags as xe}from"@arcgis/lumina/config";function is(e,t,n){return t.size===0?e:[R.factory.createPropertyDeclaration([R.factory.createModifier(R.SyntaxKind.StaticKeyword),R.factory.createModifier(R.SyntaxKind.OverrideKeyword)],"properties",void 0,void 0,R.factory.createObjectLiteralExpression(Array.from(t.entries()).map(([r,o])=>R.factory.createPropertyAssignment(we(r)?R.factory.createStringLiteral(r):r,id(o,n))))),...e]}function id(e,t){let n=0,r=!0,o=e.properties.filter(a=>{if(!R.isPropertyAssignment(a)||!R.isIdentifier(a.name))return!0;let p=a.name.text,l=a.initializer,d=l.kind===R.SyntaxKind.TrueKeyword,m=l.kind===R.SyntaxKind.FalseKeyword;if(p==="attribute")return r=!1,n|=d?xe.ATTRIBUTE:0,!d&&!m;if(p==="reflect")return n|=d?xe.REFLECT:0,!1;if(p==="type"&&R.isIdentifier(l)){if(l.text==="Boolean")return n|=xe.BOOLEAN,!1;if(l.text==="Number")return n|=xe.NUMBER,!1}else{if(p==="state")return r=!1,n|=d?xe.STATE:0,!1;if(p==="readOnly")return n|=d?xe.READ_ONLY:0,!1;p==="noAccessor"&&(n|=d?xe.NO_ACCESSOR:0)}return!0});r&&(n|=xe.ATTRIBUTE);let i=t?o:e.properties,s=R.factory.createNumericLiteral(n);return i.length===0?s:R.factory.createArrayLiteralExpression([s,R.factory.createObjectLiteralExpression(i)])}import{identity as ud}from"@arcgis/components-utils";import{readFileSync as md,writeFileSync as fd}from"node:fs";import it from"typescript";import O from"typescript";import w from"typescript";import{camelToKebab as sd}from"@arcgis/components-utils";function ss(e,t,n,r,o,i){let s=-1,a=!1,p=-1,l=-1;t.options?.properties.forEach((g,C)=>{if(w.isSpreadAssignment(g))throw new Error(`Spread property assignment is not allowed in @property() as that is not statically analyzable. Found ${g.getText(r)}`);if(w.isIdentifier(g.name)){let u=g.name.text;u==="type"?s=C:u==="converter"?a=!0:u==="attribute"?p=C:u==="readOnly"&&(l=C)}});let d=i?.attribute===void 0&&p===-1,m=i?.readonly===!0&&i.docsOnlyReadonly!==!0&&l===-1,y=ad(e,t,n,r,o,i,s,p,a),f=[...d?[w.factory.createPropertyAssignment("attribute",w.factory.createFalse())]:[],...m?[w.factory.createPropertyAssignment("readOnly",w.factory.createTrue())]:[],...y!==void 0?[y]:[]];return f.length>0?t.options===void 0?w.factory.createObjectLiteralExpression(f,!1):w.factory.updateObjectLiteralExpression(t.options,[...t.options.properties,...f]):t.options}function ad(e,t,n,r,o,i,s,a,p){if(i?.attribute===void 0)return;if(t.options&&t.options.properties.length===0&&o(t.options.getStart(r),t.options.getEnd(),""),a!==-1){let g=t.options.properties[a],C=sd(i.name);if(w.isPropertyAssignment(g)&&(g.initializer.kind===w.SyntaxKind.TrueKeyword||w.isStringLiteral(g.initializer)&&g.initializer.text===C)&&gn(i.type?.values??[])){let x=t.options.properties[a+1]?.getFullStart()??g.getEnd();o(g.getFullStart(),x,"")}}let l=ld(e),d=n.compiler.viteCommand==="serve"||l!=="Other"?l:pd(i.type?.values);if(d==="Other"||i.readonly&&(d!=="Boolean"||!i.reflects))return;let m=t.options?.properties[s];if(m){let g="initializer"in m?m.initializer:void 0;if(!p&&g&&w.isIdentifier(g)){let C=`Found property "${i.name}" in "${E(r.fileName)}" that has @property({ type: ${g.text} })`,u='. If this is a false warning, you can silence it by adding "converter: undefined" option to @property()';if(g.text==="Boolean"&&d==="Number")console.warn(`${C} where as expected to see @property({ type: Number }) because the property type is number${u}`);else if(g.text==="Number"&&d==="Boolean")console.warn(`${C} where as expected to see @property({ type: Boolean }) because the property type is boolean${u}`);else if(!dd.has(g.text))console.warn(`${C}. The default Lit attribute<-->property converter does not define any behavior for @property({ type: ${g.text} }). Consider removing this "type", or adding a custom converter @property({ converter: ... }) to handle this type${u}`);else if(l!=="Other"&&g.text===l){let b=t.options.properties[s+1]?.getFullStart()??m.getEnd();o(m.getFullStart(),b,"")}}return}if(l==="Other"){let g=`type: ${d}`;if(t.options===void 0){let C=t.decorator.getEnd()-1;o(C,C,`{ ${g} }`)}else{let C=t.options.getStart(r)+1;o(C,C,` ${g},`)}}return w.factory.createPropertyAssignment(w.factory.createIdentifier("type"),w.factory.createIdentifier(d))}function pd(e){let t=!1,n=!1,r=!1;if(e?.forEach(o=>{t||=o.type==="number",n||=o.type==="boolean",r||=o.type==="string"||o.type==="any"||o.type==="unknown"}),r||=t&&n,!r){if(t)return"Number";if(n)return"Boolean"}return"Other"}function ld(e){let t=e.type??(w.isSetAccessor(e)?e.parameters[0].type:void 0);if(t===void 0){if("initializer"in e&&e.initializer){if(w.isNumericLiteral(e.initializer)||w.isPrefixUnaryExpression(e.initializer)&&e.initializer.operator===w.SyntaxKind.MinusToken&&w.isNumericLiteral(e.initializer.operand))return"Number";if(e.initializer.kind===w.SyntaxKind.FalseKeyword||e.initializer.kind===w.SyntaxKind.TrueKeyword)return"Boolean"}}else{if(t.kind===w.SyntaxKind.NumberKeyword)return"Number";if(t.kind===w.SyntaxKind.BooleanKeyword)return"Boolean"}return"Other"}var dd=new Set(["Number","Boolean","Array","Object"]);function Ht(e,t,n,r,o,i){if(t.modifiers===void 0)return t;let s=-1,a=-1;if(t.modifiers.forEach((p,l)=>{if(O.isDecorator(p)&&O.isCallExpression(p.expression)&&O.isIdentifier(p.expression.expression)){let d=p.expression.expression.text;d==="property"&&(s=l),d==="state"&&(a=l)}}),s!==-1&&a!==-1)throw new Error(`Property cannot have both @property and @state decorators. Found property that has both: ${t.getText(r)}`);if(s!==-1){let p=cd(e,t,n,r),l=as(t,s,r),d=ss(t,l,e,r,o,p),m=!1;return i!==void 0&&p&&(i.set(p.name,d??O.factory.createObjectLiteralExpression()),m=!0),l.options=d,ps(t,l,s,m)}else if(a!==-1&&i!==void 0){let p=as(t,a,r),l=O.factory.createPropertyAssignment("state",O.factory.createTrue()),d=p.options===void 0?O.factory.createObjectLiteralExpression([l]):O.factory.updateObjectLiteralExpression(p.options,[...p.options.properties,l]),m=lt(t);if(m===void 0)throw new Error("Failed to statically determine the state property name");return i.set(m,d),ps(t,p,a,!0)}else return t}function cd(e,t,n,r){let o=U(e.fileManifest??{},!0).find(s=>s.name===n)??(e.compiler.isInTest?{name:""}:void 0);if(o===void 0)return;let i=Fe(o,t)??(e.compiler.isInTest?{kind:"field",attribute:"",readonly:!1,name:"",type:void 0}:void 0);if(!(i===void 0||i.kind!=="field")){if(i.name===""){let s=lt(t);if(s===void 0)throw new Error(`Failed to statically determine the property name: ${t.getText(r)}`);i.name=s}return i}}function as(e,t,n){let r=e.modifiers[t],o=r.expression,i=o.arguments.at(0);if(i&&!O.isObjectLiteralExpression(i))throw new Error(`First argument to @property() or @state() decorator must be an object literal as otherwise it is not statically analyzable. Found ${i.getText(n)}`);return{decorator:r,callExpression:o,options:i}}function ps(e,t,n,r){if(t.callExpression.arguments.length>1)throw new Error(`Expected at most 1 argument to @property() or @state() decorator. Found ${t.callExpression.arguments.length} in ${e.getText()}`);let o=r?void 0:O.factory.updateDecorator(t.decorator,O.factory.updateCallExpression(t.callExpression,t.callExpression.expression,t.callExpression.typeArguments,t.options===void 0?[]:[t.options])),i=[...e.modifiers.slice(0,n),...o===void 0?[]:[o],...e.modifiers.slice(n+1)];return O.isGetAccessorDeclaration(e)?O.factory.updateGetAccessorDeclaration(e,i,e.name,e.parameters,e.type,e.body):O.isSetAccessorDeclaration(e)?O.factory.updateSetAccessorDeclaration(e,i,e.name,e.parameters,e.body):O.factory.updatePropertyDeclaration(e,i,e.name,e.questionToken??e.exclamationToken,e.type,e.initializer)}function ls(e,t){try{let n=md(t,"utf-8"),r=it.createSourceFile(t,n,e.compiler.typeScriptConfig.options.target??it.ScriptTarget.Latest,!1,it.ScriptKind.TSX),o=[],i=(p,l)=>it.isPropertyDeclaration(p)||it.isAccessor(p)?Ht(e,p,l,r,(...d)=>o.push(d)):p;r.statements.forEach(p=>Ut(i,p,e));let a=o.sort((p,l)=>l[0]-p[0]).reduce((p,[l,d,m])=>`${p.slice(0,l)}${m}${p.slice(d)}`,n);fd(t,a)}catch(n){console.error(`Failed applying automated edits to the ${E(t)} file.: Error ${String(n)}`)}}var ds=(e,t)=>{if(t.fileManifest===void 0&&!t.compiler.isInTest)return e.statements;let n=!1;function r(){n=!0}let o;function i(){o=new Map}let s=l=>is(l,o,t.compiler.shouldMinify),a=(l,d)=>gd(t,l,d,e,r,o),p=e.statements.map(l=>Ut(a,l,t,i,s));return!t.compiler.isInCi&&!t.compiler.isInTest&&n&&ls(t,e.fileName),p};function Ut(e,t,n,r,o=ud){if(k.isClassDeclaration(t)&&t.heritageClauses?.some(s=>s.token===k.SyntaxKind.ExtendsKeyword)){let s=!1,a=t.name?.text;r?.();let p=o(t.members.map(d=>{let m=e(d,a);return s||=m!==d,m}));return s?k.factory.updateClassDeclaration(t,t.modifiers,t.name,t.typeParameters,t.heritageClauses,p):t}return n.compiler.isInTest?k.visitEachChild(t,s=>Ut(e,s,n,r,o),n.transformation):t}var yd=new Set(["connectedCallback","disconnectedCallback"]);function gd(e,t,n,r,o,i){if(k.isMethodDeclaration(t)){let s=t.modifiers?.filter(a=>!k.isDecorator(a)||!hd(a));if(s?.length!==t.modifiers?.length)return k.factory.updateMethodDeclaration(t,s,t.asteriskToken,t.name,t.questionToken,t.typeParameters,t.parameters,t.type,t.body);if("text"in t.name&&yd.has(t.name.text)&&t.body){let a=t.name.text;return t.body.statements.some(l=>k.isExpressionStatement(l)&&k.isCallExpression(l.expression)&&k.isPropertyAccessExpression(l.expression.expression)&&l.expression.expression.expression.kind===k.SyntaxKind.SuperKeyword&&l.expression.expression.name.text===a)?t:k.factory.updateMethodDeclaration(t,t.modifiers,t.asteriskToken,t.name,t.questionToken,t.typeParameters,t.parameters,t.type,k.factory.updateBlock(t.body,[k.factory.createExpressionStatement(k.factory.createCallExpression(k.factory.createPropertyAccessExpression(k.factory.createSuper(),a),void 0,[])),...t.body.statements]))}}return k.isPropertyDeclaration(t)||k.isAccessor(t)?Ht(e,t,n,r,o,i):t}var hd=e=>k.isCallExpression(e.expression)&&k.isIdentifier(e.expression.expression)&&e.expression.expression.text==="method";var cs="makeRuntime(";function ms(e,t){let n=e.indexOf(cs);if(n===-1)throw new Error("Failed to find makeRuntime() function call in src/runtime.ts");let r=n+cs.length,o=t.options.css?.commonStylesPath;return{code:[o===void 0?"":`import commonStyles from "${Y(t.dir.src,o)}";`,e.slice(0,r),"{","defaultAssetPath:import.meta.env.BASE_URL,",'hydratedAttribute:"',t.options.css?.hydratedAttribute??mn,'",',o===void 0?"":"commonStyles","}",e.slice(r)].join(""),map:null}}var Cd=[os,rs,No,ds],us=e=>({name:"@arcgis/lumina:transformComponents",transform:{order:"pre",async handler(t,n){if(!n.endsWith(".tsx")){if(e.isInTest&&n.endsWith(".ts")&&Yt(n)&&t.includes("extends LitElement"))console.warn("It looks like you may be trying to define a component inside a test file. This is supported, but you must use the .tsx file extension for you test");else if(n===`${e.dir.src}runtime.ts`)return ms(t,e);return}let r=e.getSourceFile(n,t);await me;let i=xd.transform(r,[y=>()=>dt(e,y,r,[...e.options.types?.sourceFileTransformers??[],...Cd])]).transformed[0],s=Td(e),a=De(s),p=s.sourceMap?be.createSourceMapGenerator(e.typeScriptHost,c.basename(n),"",c.dirname(n),s):void 0,l=be.createTextWriter(be.getNewLineCharacter(s));a.writeFile(i,l,p);let d=l.getText(),m=p?.toJSON();return{code:d,map:m??null}}}}),fs=new WeakMap;function Td(e){let t=fs.get(e);if(!t){let n=e.typeScriptConfig.options;t={...n,declaration:!1,declarationMap:!1,emitDeclarationOnly:!1,sourceMap:n.sourceMap??n.inlineSourceMap,inlineSourceMap:!1,allowSyntheticDefaultImports:!0,suppressOutputPathCheck:!0,noLib:!0,noResolve:!0,skipLibCheck:!0},fs.set(e,t)}return t}var gs=e=>({name:"@arcgis/lumina:handleDynamicAssets",configureServer(t){e.server=t,!e.isInPuppeteerTestBackEnd&&ys(e).forEach(({assets:n,transformers:r})=>ue(e,n,r))},async writeBundle(){await Promise.all(ys(e).map(async({assets:t,transformers:n})=>await $t(e,t,n)))}});function ys(e){let t=[],n=e.assetsToProvide?.filter(r=>r.apply===void 0||r.apply===e.viteCommand)??[];return e.options.assets?.extra?.forEach(r=>{"type"in r?t.push(r):"assets"in r&&t.push(...r.assets)}),t.length>1&&n.push({assets:t}),e.assetsToProvide=void 0,n}import{readFile as bd}from"node:fs/promises";import{writeFileSync as vd}from"node:fs";var hs="@arcgis/lumina:updatePackageJson",xs=e=>({name:hs,apply:()=>e.viteCommand==="serve"&&e.environment==="development"&&!e.isInTest&&!e.isInCi,configResolved(){Sd(e).catch(t=>console.error(`${hs}: Failed to update package's package.json`,t))}});async function Sd(e){let t=c.join(e.dir.root,"package.json"),n=JSON.parse(await bd(t,"utf-8")),r=Ed(n,e);r&&vd(t,JSON.stringify(r,null,2))}function Ed(e,t){let n=e?.devDependencies??{};Object.keys(e?.peerDependencies??{}).forEach(y=>{y in n||console.error(`Every peerDependency must also be a devDependency, or else some tools will get confused (like Turbo Build). Found "${y}" that is not a devDependency. Please edit your package.json`)});let r=!1,o=y=>c.relative(t.dir.root,c.join(t.dir.dist,y)),i=e["css.customData"]??[],s=t.documentationFileNames,a=o(s.vsCodeCss);i.includes(a)||(e["css.customData"]=[...i,a],r=!0);let p=o(s.manifest);e.customElements!==p&&(e.customElements=p,r=!0);let l=e["html.customData"]??[],d=o(s.vsCodeHtml);l.includes(d)||(e["html.customData"]=[...l,d],r=!0);let m=o(s.webTypes);if(e["web-types"]!==m&&(r=!0,e["web-types"]=m),r)return e}import{isNotUndefined as Cs}from"@arcgis/components-utils";import{defaultEventBubbles as Pd,defaultEventCancelable as wd,defaultEventComposed as Md}from"@arcgis/lumina/config";var Ts=e=>({timestamp:e.manifest.timestamp,compiler:e.manifest.compiler,components:e.manifestComponents.map(kd),typeLibrary:{}});function kd(e){let t=e.superclass?[{name:"superclass",text:JSON.stringify(e.superclass)}]:[];return{filePath:e.sourcePath,tag:e.tagName??"",overview:"",readme:"",usage:{},docs:e.description??"",docsTags:[...e.docsTags??[],...t],encapsulation:e.encapsulation??"shadow",dependents:[],dependencies:[],dependencyGraph:{},deprecation:typeof e.deprecated=="boolean"?e.deprecated?"":void 0:e.deprecated,props:e.members?.map(Fd).filter(Cs)??[],methods:e.members?.map(Dd).filter(Cs)??[],events:e.events?.map($d)??[],styles:e.cssProperties?.map(n=>({name:n.name,annotation:"prop",docs:n.description??"",mode:void 0}))??[],slots:e.slots?.map(({name:n,description:r=""})=>({name:n,docs:r}))??[],parts:e.cssParts?.map(({name:n,description:r=""})=>({name:n,docs:r}))??[],listeners:[]}}function Fd(e){if(e.kind!=="field")return;let t=e,n=t.inheritedFrom?[{name:"inheritedFrom",text:JSON.stringify(t.inheritedFrom)}]:[],r=t.readonly?[{name:"readonly",text:""}]:[];return{name:t.name,type:t.type?.text??"unknown",complexType:t.type===void 0?void 0:{original:t.type.original,resolved:t.type.text,references:Zn(t.type.references)},mutable:!0,attr:"attribute"in t&&typeof t.attribute=="string"?t.attribute:void 0,reflectToAttr:"reflects"in t&&t.reflects===!0,docs:t.description??"",docsTags:[...t.docsTags??[],...r,...n],default:t.default??void 0,deprecation:typeof t.deprecated=="boolean"?t.deprecated?"":void 0:t.deprecated,values:t.type?.values??[],optional:t.hasQuestionToken??!1,required:t.docsTags?.some(o=>o.name==="required")??!1}}var Zn=e=>Object.fromEntries(e?.map(t=>[t.name,{location:t.package===pn?"global":t.package===void 0?"local":"import",path:typeof t.module=="string"&&typeof t.package=="string"?c.join(t.package,t.module):t.module??t.package,id:"notImplemented"}])??[]);function Dd(e){if(e.kind!=="method")return;let t=e,n=e.inheritedFrom?[{name:"inheritedFrom",text:JSON.stringify(e.inheritedFrom)}]:[],r=t.parameters?.map(({name:o,type:i,description:s})=>({name:o,type:i?.text??"unknown",docs:s??""}))??[];return{name:t.name,returns:{type:t.return?.type?.text??"void",docs:t.docsTags?.filter(({name:o})=>o==="return"||o==="returns").map(({text:o})=>o).join(`
|
|
104
|
-
`)??""},complexType:{signature:"()=>unknown",parameters:r,...t.type,return:t.return?.type?.text??"void",references:
|
|
97
|
+
/// <reference types="@arcgis/lumina/typings" />`,Il=`
|
|
98
|
+
/// <reference types="@arcgis/core/interfaces" />`;var Fi="@arcgis/lumina:dependencySupport",Rt=(e,t)=>e.viteCommand==="serve"||e.isInStorybook&&(t===void 0||t.path==="/iframe.html"),Di=e=>({name:Fi,configResolved(){Rt(e)&&e.environment==="development"&&!e.isInTest&&jl(e).catch(t=>console.error(`${Fi}: Failed to update package's src/lumina.ts`,t))},transformIndexHtml:{order:"pre",async handler(t,n){return Rt(e,n)?(await we(e)).map(o=>"javascriptCode"in o?{tag:"script",attrs:{type:"module"},children:o.javascriptCode.join(`
|
|
99
|
+
`)}:"cssHref"in o?{tag:"link",attrs:{rel:"stylesheet",href:o.cssHref,id:o.id}}:o):void 0}},async buildStart(){if(e.viteCommand!=="serve")return;let n=(await we(e)).flatMap(r=>{if("javascriptCode"in r)return r.optimizableImports;if("cssHref"in r)return[];throw new Error(`Unexpected loader type: ${JSON.stringify(r)}`)});e.viteConfig.optimizeDeps.include??=[],e.viteConfig.optimizeDeps.include.push(...n)}});async function jl(e){let n=(await Promise.all([ue,Nn(e)])).flat();await jt(n,e.dir.src,$n,e.viteConfig.test?.browser?.provider)}var Ot="@arcgis/lumina:compilerContextPlugin",M=class{constructor(t){this._typeScriptSourceFiles={};this.plugin={name:Ot,enforce:"pre",apply:(t,n)=>(this._inferBuildSetup(n,t.define),!0),configResolved:{order:"pre",handler:t=>{this.viteConfig=t;let n=t.build.minify!==!1;this.shouldMinify=n&&this.viteCommand!=="serve",this.shouldMinifyStrict=n&&(this.viteCommand!=="serve"||this.isInTest);let r=c.join(t.root,c.sep),o=c.join(r,"src",c.sep),i=c.join(o,"components",c.sep),s=c.join(c.resolve(r,t.build.outDir),c.sep),a=c.join(c.relative(r,s),c.sep),p=c.join(s,"components",c.sep),l=c.join(s,this.options.build?.cdn?.namespace??Be,c.sep),d=c.join(l,"assets",c.sep);this.dir={root:r,src:o,srcComponents:i,relativeDist:a,dist:s,distComponents:p,distCdn:l,distCdnAssets:d},t.root!==Q()?console.warn(`${Ot}: Vite's config.root is not equal process.cwd(). This is not officially supported by Lumina and may lead to unexpected behavior. Contact Lumina maintainers if you need this to be supported.`):s===r?console.warn(`${Ot}: Vite output directory is set to the root directory. This can produce unexpected behavior. Please set the output directory to a subdirectory of the root directory (i.e dist/)`):a.startsWith("..")&&console.warn(`${Ot}: Vite output directory is outside the root directory. This is not officially supported by Lumina and may lead to unexpected behavior. Contact Lumina maintainers if you need this to be supported.`),this.typeScriptConfig.options.sourceMap=t.build.sourcemap!==!1,this.isInStorybook=t.resolve.conditions.includes("storybook"),this.hmrEnabled=this.viteCommand==="serve"&&!this.isInTest&&!!(t.server?.hmr??!0),Rt(this)&&we(this).catch(console.error)}},configureServer:{order:"post",handler:()=>{this.serverConfigured=!0}}};this.isInCi=!!process.env.CI;this.declarationTextTransformers=[];this.serverConfigured=!1;this.assetsToProvide=[];this.options=t;let n=t.documentation??{};this.documentationFileNames={manifest:n.manifestFileName?Je(n.manifestFileName):Ke.manifest,stencilLikeDocsJson:n.stencilLikeDocsJsonFileName?Je(n.stencilLikeDocsJsonFileName):Ke.stencilLikeDocsJson,webTypes:n.jetBrains?.webTypesFileName?Je(n.jetBrains.webTypesFileName):Ke.webTypes,vsCodeHtml:n.vsCode?.htmlFileName?Je(n.vsCode.htmlFileName):Ke.vsCodeHtml,vsCodeCss:n.vsCode?.cssFileName?Je(n.vsCode.cssFileName):Ke.vsCodeCss},kt().catch(console.error),this.componentFilesPromise=Ge(this,c.resolve("src/components"));let r=Oo(t.types?.tsconfigPath);this.typeScriptConfigPath=r.path,this.typeScriptConfig=r.config;let o=t.build?.preamble??Jo();this.banner=Bo(o)}_inferBuildSetup({command:t,mode:n},r){this.isInTest=process.env.NODE_ENV==="test",n==="production"||n==="development"?this.environment=n:n==="test"||n==="benchmark"?(this.environment="development",this.isInTest=!0):(console.warn(`${Ae}: Vite is running in unknown mode "${n}". Assuming development`),this.environment="development"),this.viteCommand=t;let o=r?.__IS_IN_PUPPETEER__===!0,i=this.viteCommand==="serve"&&this.isInTest&&this.options.puppeteerTesting?.enabled===!0;this.isInPuppeteerTestBackEnd=i&&!o,this.isInPuppeteerTestFrontEnd=i&&o}getSourceFile(t,n){let r=this.typeScriptProgram?.getSourceFile(t);if(!r){if(this.viteCommand==="build")throw new Error(`Unable to find the TypeScript source file for ${t}`);{let i=this._typeScriptSourceFiles[t];i!==void 0&&i.text===n&&(r=i)}}return n!==r?.text&&(r=Kn.createSourceFile(t,n,r?.languageVersion??this.typeScriptConfig.options.target??Kn.ScriptTarget.Latest,!0,Kn.ScriptKind.TSX),this.viteCommand==="serve"&&(this._typeScriptSourceFiles[t]=r)),r}provideAssets(t,n,r){if(Array.isArray(this.assetsToProvide))this.assetsToProvide.push({assets:t,transformers:n,apply:r});else if(this.viteCommand==="serve")r==="serve"&&ge(this,t,n);else throw new Error("It is too late to call provideAssets() as Vite already wrote the bundle to disk. Please call provideAssets() before Vite's writeBundle()")}};$([L("buildStart() in build mode or load() serve mode")],M.prototype,"typeScriptHost",2),$([L("configResolved()")],M.prototype,"shouldMinify",2),$([L("configResolved()")],M.prototype,"shouldMinifyStrict",2),$([L("configResolved()")],M.prototype,"dir",2),$([L("load()")],M.prototype,"manifest",2),$([L("load()")],M.prototype,"manifestComponents",2),$([L("load() when in build mode")],M.prototype,"componentPathMapping",2),$([L("apply()")],M.prototype,"environment",2),$([L("apply()")],M.prototype,"isInTest",2),$([L("apply()")],M.prototype,"isInPuppeteerTestBackEnd",2),$([L("apply()")],M.prototype,"isInPuppeteerTestFrontEnd",2),$([L("configResolved()")],M.prototype,"isInStorybook",2),$([L("configResolved()")],M.prototype,"hmrEnabled",2),$([L("apply()")],M.prototype,"viteCommand",2),$([L("configResolved()")],M.prototype,"viteConfig",2),$([L("configResolved()")],M.prototype,"server",2),$([L("transform()")],M.prototype,"globalHydratedCssString",2),$([L("config()")],M.prototype,"componentFiles",2);import{writeFile as Li}from"node:fs/promises";function Ai(e,t,n){let r=Ft()[t]??Hn(e.manifest)[t];if(r===void 0){let o=E(n);throw new Error(`Unable to resolve the definition of the "${t}" custom element. Used in ${o}. If this is coming from an external package, make sure that package is installed as a peerDependency. If in development-only you wish to use a component package that is defined as a devDependency, then provide serve.extraDependencies option to useLumina()`)}return r}function Ni(e,t){return e.packageName===void 0?Y(t,e.moduleName):c.join(e.packageName,e.moduleName)}var $i=new WeakMap;function Hn(e){let t=$i.get(e);if(t)return t;let n=Mn(e,{packageName:void 0,getImportPath(){throw new Error("not supposed to be called for local components")}});return $i.set(e,n),n}var Ii=e=>({name:"@arcgis/lumina:addNonLazyImports",apply:()=>e.viteCommand==="build",generateBundle(t,n){Object.entries(n).forEach(([r,o])=>{let i=ae(r,"components/",e);if(i!==r&&(o.fileName=i),o.type==="chunk"){let s=c.dirname(c.join(e.dir.dist,r)),a=i===r?s:c.dirname(c.join(e.dir.dist,i));o.code=Xt(o.code,e,a,s)}})},async writeBundle(){if(e.isInStorybook)return;let t=Ve.get(e)??{},n=Object.entries(t),r=new Set(n.map(([i])=>i).filter(i=>ce(i,e.dir.srcComponents)));n.forEach(([i,{referencedTagNames:s,referencedBy:a}])=>{if(r.has(i)||s.length===0)return;let p=ji(t,a,r);if(p.forEach(l=>{t[l].referencedTagNames.splice(0,0,...s)}),s.length>0&&p.length===0){let l=E(i);throw new Error(`Unable to determine what files imported ${l}. This is necessary because this file referenced other web components (${s.join(", ")}), and so the compiler needs to know what component entrypoints these imports should be added to. Please double check if you are referencing ${l} in the code dynamically in the way that Lumina cannot detect, and report this issue to the Lumina maintainers.`)}});let o=n.flatMap(([i,{referencedTagNames:s}])=>{if(!r.has(i))return[];let a=c.dirname(i),p=ae(a,e.dir.srcComponents,e),l=c.relative(e.dir.src,p),d=s.map(f=>Ni(Ai(e,f,i),l)).filter(f=>f!==`./${l}`),y=`${Array.from(new Set(d),f=>`import "${f}";
|
|
100
|
+
`).join("").trimStart()}export * from "./${Fe}";`;return[Li(c.join(e.dir.dist,l,Rl),y),Li(c.join(e.dir.dist,l,Ol),y)]});await Promise.all(o)}}),Rl="index.js",Ol="index.d.ts",ji=(e,t,n,r=new Set)=>t.flatMap(o=>n.has(o)?[o]:r.has(o)?[]:(r.add(o),ji(e,e[o].referencedBy,n,r)));import Cd from"typescript";import rd from"typescript";import T from"typescript";import P from"typescript";import{mappedFind as Wl,uncapitalize as Ri}from"@arcgis/components-utils";import h from"typescript";function Un(e,t){if(He(e))return e;{t.neededImports.add("nothing");let n=t.importRenames.nothing;return h.factory.createParenthesizedExpression(h.factory.createBinaryExpression(h.factory.createParenthesizedExpression(e),h.factory.createToken(h.SyntaxKind.QuestionQuestionToken),h.factory.createIdentifier(n)))}}function He(e){return typeof e=="string"||Jl.has(e.kind)||h.isConditionalExpression(e)&&He(e.whenTrue)&&He(e.whenFalse)||h.isBinaryExpression(e)&&(Bl.has(e.operatorToken.kind)||He(e.left)&&He(e.right))||(h.isParenthesizedExpression(e)||h.isSatisfiesExpression(e)||h.isAsExpression(e))&&He(e.expression)||h.isTaggedTemplateExpression(e)&&h.isIdentifier(e.tag)&&xi.has(e.tag.text)}var Jl=new Set([h.SyntaxKind.NumericLiteral,h.SyntaxKind.BigIntLiteral,h.SyntaxKind.StringLiteral,h.SyntaxKind.RegularExpressionLiteral,h.SyntaxKind.NoSubstitutionTemplateLiteral,h.SyntaxKind.FalseKeyword,h.SyntaxKind.NullKeyword,h.SyntaxKind.TrueKeyword,h.SyntaxKind.ArrayLiteralExpression,h.SyntaxKind.ObjectLiteralExpression,h.SyntaxKind.FunctionExpression,h.SyntaxKind.ArrowFunction,h.SyntaxKind.TypeOfExpression,h.SyntaxKind.PrefixUnaryExpression,h.SyntaxKind.PostfixUnaryExpression,h.SyntaxKind.TemplateExpression,h.SyntaxKind.ClassExpression,h.SyntaxKind.NonNullExpression]),Bl=new Set([h.SyntaxKind.PlusEqualsToken,h.SyntaxKind.MinusEqualsToken,h.SyntaxKind.AsteriskAsteriskEqualsToken,h.SyntaxKind.AsteriskEqualsToken,h.SyntaxKind.SlashEqualsToken,h.SyntaxKind.PercentEqualsToken,h.SyntaxKind.AmpersandEqualsToken,h.SyntaxKind.BarEqualsToken,h.SyntaxKind.CaretEqualsToken,h.SyntaxKind.LessThanLessThanEqualsToken,h.SyntaxKind.GreaterThanGreaterThanGreaterThanEqualsToken,h.SyntaxKind.GreaterThanGreaterThanEqualsToken,h.SyntaxKind.AmpersandToken,h.SyntaxKind.BarToken,h.SyntaxKind.CaretToken,h.SyntaxKind.EqualsEqualsToken,h.SyntaxKind.EqualsEqualsEqualsToken,h.SyntaxKind.ExclamationEqualsEqualsToken,h.SyntaxKind.ExclamationEqualsToken,h.SyntaxKind.LessThanToken,h.SyntaxKind.LessThanEqualsToken,h.SyntaxKind.GreaterThanToken,h.SyntaxKind.GreaterThanEqualsToken,h.SyntaxKind.InstanceOfKeyword,h.SyntaxKind.InKeyword,h.SyntaxKind.LessThanLessThanToken,h.SyntaxKind.GreaterThanGreaterThanToken,h.SyntaxKind.GreaterThanGreaterThanGreaterThanToken,h.SyntaxKind.PlusToken,h.SyntaxKind.MinusToken,h.SyntaxKind.AsteriskToken,h.SyntaxKind.SlashToken,h.SyntaxKind.PercentToken,h.SyntaxKind.AsteriskAsteriskToken]);var Bi={property(e,t,n,r){let o=Kl(r,n,e),i=o!==void 0;if(i){let p=zn(t);if(p===!0)return[o.attributeName];if(p===!1)return[]}let s=t===void 0?["=",P.factory.createToken(P.SyntaxKind.TrueKeyword)]:Jt(e,t,i),a=s[0]!=="=";if(i){if(a)return[o.attributeName,...s];if(o.type==="stringified"){let[l,d]=s,m=Un(d,e);if(!(m===d))return[o.attributeName,l,m]}}return[`.${n}`,...s]},attribute(e,t,n){let r=t===void 0||zn(t);if(r===!0)return[n];if(r===!1)return[];let o=Jt(e,t,!0),s=o[0]!=="="?o:[o[0],Un(o[1],e)];return[n,...s]},booleanAttribute(e,t,n){let r=t===void 0||zn(t);return r===!0?[n]:r===!1?[]:[`?${n}`,...Jt(e,t,!1)]},event(e,t,n){if(!t||!P.isJsxExpression(t)||!t.expression)throw new Error(`Event prop value must be an expression. Found ${String(t?.getText())}`);let r=n.slice(2),o=Ri(r);return[`@${wt.has(o)?r.toLowerCase():Po?Ri(r):r}=`,...Bt(e,t)]},directives(e,t){if(!t||!P.isJsxExpression(t))throw new Error(`Directives prop must be an expression. Found ${String(t?.getText())}`);if(!t.expression||!P.isArrayLiteralExpression(t.expression))throw new Error(`Directives prop must be an array rather than a variable or ternary expression. Still, the following are allowed: directives={[directiveA, condition ? a : b, c()]}. Found ${String(t.expression?.getText())}`);return t.expression.elements.flatMap(o=>{if(P.isSpreadElement(o))throw new Error(`Directives prop cannot contain a spread argument - it needs to be statically analyzable. Still, the following are allowed: directives={[directiveA, condition ? a : b, c()]}. Found ${String(t.expression?.getText())}`);return _(e,o)})},ref(e,t){e.neededImports.add("ref");let n=e.importRenames.ref;if(!t||!P.isJsxExpression(t)||!t.expression)throw new Error(`ref prop value must be an expression. Found ${String(t?.getText())}`);return[P.factory.createCallExpression(P.factory.createIdentifier(n),void 0,[_(e,t.expression)])]},class:Ji,style:Ji,key:(e,t)=>[nt(t)],dynamicValue(e,t,n){e.neededImports.add("dynamicValueDirective");let r=e.importRenames.dynamicValueDirective;return[P.factory.createCallExpression(P.factory.createIdentifier(r),void 0,[P.factory.createStringLiteral(n),...t===void 0?[]:[_(e,P.isJsxExpression(t)?t.expression??P.factory.createIdentifier("undefined"):t)]])]}};function Kl(e,t,n){if(typeof e=="string"){let i=(n.externalComponents[e]??n.localComponents[e])?.propToAttribute?.[t];if(i)return{attributeName:i,type:"normal"}}let r=Vn(q.common,t);if(r)return r;if(typeof e=="string"){let o=Vn(q.perElement[e],t);if(o)return o}else{let o=Wl(Object.values(q.perElement),i=>{let s=Vn(i,t);return s?.type==="stringified"?s:void 0});if(o)return o}}function Vn(e,t){let n=e?.normal?.[t];if(n)return{attributeName:n,type:"normal"};let r=e?.stringified?.[t];if(r)return{attributeName:r,type:"stringified"}}function nt(e){if(e&&P.isJsxExpression(e)&&e.expression)return e.expression;if(e&&P.isStringLiteral(e))return e;throw new Error(`key prop value must be an expression. Found ${String(e?.getText())}`)}function zn(e){if(e===void 0)return!0;if(e&&P.isJsxExpression(e)){if(e.expression?.kind===P.SyntaxKind.TrueKeyword||e.expression===void 0)return!0;if(e.expression?.kind===P.SyntaxKind.FalseKeyword)return!1}}function Jt(e,t,n=!1){if(We(t))throw new Error(`Invalid JSX syntax detected or there is a bug in Lumina. Found ${t.getText()}. Expected JSX attribute value to be wrapped in { }`);if(P.isStringLiteral(t))return Oi(t,n);if(P.isJsxExpression(t)&&t.expression){if(P.isStringLiteral(t.expression))return Oi(t.expression,n);if(n){if(P.isNumericLiteral(t.expression))return[`=${t.expression.text}`];if(P.isPrefixUnaryExpression(t.expression)&&P.isNumericLiteral(t.expression.operand))return[`=${t.expression.getText(e.sourceFile)}`]}}return["=",...Bt(e,t)]}function Oi(e,t){if(!t)return["=",e];let n=e.text;if(n.length===0)return[];let r=ft(n);if(Or(r)){let o=r.replaceAll('"',""");if(o.length>r.length){let i=r.replaceAll("'","'");if(i.length<o.length)return[`='${i}'`]}return[`="${o}"`]}else return[`=${r}`]}function Ji(e,t,n){if(t&&P.isStringLiteral(t))return[`${n}="${t.text}"`];if(!t||!P.isJsxExpression(t)||!t.expression)throw new Error(`${n} prop value must be an expression. Found ${String(t?.getText())}`);let r=t.expression;if(Hl(r)){let i=n==="class"?"safeClassMap":"safeStyleMap";e.neededImports.add(i);let s=e.importRenames[i],a=P.factory.createCallExpression(P.factory.createIdentifier(s),void 0,[_(e,r)]);return[`${n}=`,a]}else return[n,...Jt(e,t,!0)]}var Hl=e=>P.isObjectLiteralExpression(e)||P.isPropertyAccessExpression(e)||P.isIdentifier(e)||P.isCallExpression(e)||P.isBinaryExpression(e)||P.isConditionalExpression(e);import rt from"typescript";function Ki(e){if(e&&rt.isJsxExpression(e)&&e.expression&&rt.isCallExpression(e.expression)&&rt.isIdentifier(e.expression.expression)&&e.expression.expression.text in Wi&&e.expression.arguments.length<=1)return{propType:Wi[e.expression.expression.text],initializer:rt.factory.createJsxExpression(void 0,e.expression.arguments[0])}}var Wi={bindProperty:"property",bindAttribute:"attribute",bindBooleanAttribute:"booleanAttribute",bindEvent:"event"};function Hi(e,t,n){let r=typeof n=="string"&&n[0].startsWith(n[0].toUpperCase());return Vl.has(e)&&(!r||e==="key")?e:e.startsWith("on")&&t!==void 0&&rt.isJsxExpression(t)&&t.expression!==void 0?"event":Et.has(e)||e.includes("-")?"attribute":!(typeof n=="string"&&n.includes("-")&&!Re.has(n))&&(Pt.has(e)||(n===Ze?!1:n===Le?Object.values(et).some(a=>a.has(e)):et[n]?.has(e)===!0))?Tn.has(e)?"booleanAttribute":"attribute":n==="svg"||n==="math"||n===Ze||n!==Le&&(Ie.has(n)||je.has(n))?e in q.common.normal||e in q.common.stringified?"property":Tn.has(e)?"booleanAttribute":"attribute":n===Le&&(e==="value"||e==="defaultValue")?"dynamicValue":"property"}var Ul=["class","style","ref","directives","key"],Vl=new Set(Ul);import W from"typescript";var Ui=e=>typeof e!="string"||e.trim().length>0;function ot({key:e,parts:t,litTag:n},r){let o=zl(t);if(o.length%2===0)throw new Error("Normalized template parts array length must be odd");let[i,...s]=o;if(typeof i!="string")throw new Error("First normalized template part must be a string");if(n===void 0){if(s.length===0)return qn(r,e,W.factory.createStringLiteral(i));if(i===""&&s.length===2&&s[1]==="")return qn(r,e,typeof s[0]=="string"?W.factory.createStringLiteral(i):s[0])}let a=typeof n=="string"?n:re;r.neededImports.add(a);let p=r.importRenames[a],l=Se(i),d=W.factory.createTaggedTemplateExpression(W.factory.createIdentifier(p),void 0,s.length===0?W.factory.createNoSubstitutionTemplateLiteral(l,l):W.factory.createTemplateExpression(W.factory.createTemplateHead(l,l),ql(s)));return qn(r,e,d)}var zl=e=>e.reduce((t,n,r)=>{let o=t.at(-1),i=typeof o=="string",s=typeof n=="string";if(i&&s)return[...t.slice(0,-1),`${o}${n}`];let p=r===e.length-1;return!s&&p?[...t,n,""]:!s&&!p?[...t,n,""]:[...t,n]},[""]);function ql(e){if(!(e.length%2===0))throw new Error("templatePartsToSpans should be called with normalized parts array without the first item");let n=e.length/2;return Array.from({length:n},(r,o)=>{let i=o*2,s=e[i];if(typeof s=="string")throw new Error("Expected to receive a normalized array of parts");let a=i+1,p=e[a];if(typeof p!="string")throw new Error("Expected to receive a normalized array of parts");let l=o===n-1,d=Se(p);return W.factory.createTemplateSpan(s,l?W.factory.createTemplateTail(d,d):W.factory.createTemplateMiddle(d,d))})}function qn(e,t,n){if(t===void 0)return n;e.neededImports.add("keyed");let r=e.importRenames.keyed;return W.factory.createCallExpression(W.factory.createIdentifier(r),void 0,[t,n])}import _n from"typescript";var Xn=(e,t)=>e.getFullText(t.sourceFile).slice(0,e.getLeadingTriviaWidth(t.sourceFile));function Qn(e,t){let n=Wt(e);return n.length===0?t:_n.setSyntheticLeadingComments(t,n.map(r=>({...r,pos:-1,end:-1,text:zi(e.slice(r.pos,r.end))})))}var Wt=e=>e.trim().length===0?[]:_n.getLeadingCommentRanges(e,0)??[];function Vi(e){let t=Wt(e);if(t.length===0)return[e||" "];let n=t.reduceRight(([o,...i],s)=>{let a=Se(zi(Gn(o).slice(s.pos,s.end)));return[Gn(o).slice(0,s.pos),_n.factory.createNoSubstitutionTemplateLiteral(a,a),Gn(o).slice(s.end),...i]},[e]);(typeof n[0]!="string"||n[0].trim()!=="")&&n.unshift(" ");let r=n.at(-1);return(typeof r!="string"||r.trim()!=="")&&n.push(" "),n}var zi=e=>e.startsWith("//")?e.slice(2):e.slice(2,-2);function Gn(e){if(typeof e=="string")return e;throw new Error(`Expected string, got ${typeof e}: ${String(e)}`)}import{isNotUndefined as Zl}from"@arcgis/components-utils";import S from"typescript";function Gi(e,t){if(!(S.isPropertyAccessExpression(t.expression)&&t.expression.name.text==="map"))return t;let r=t.arguments[0];if(!(t.arguments.length===1&&S.isArrowFunction(r)))return t;let i=r.parameters.at(0);if(!(typeof i=="object"&&r.parameters.length<=2))return t;let a=Kt(r.body),p=!0,l;if(qi(a))l=a;else{if(!S.isBlock(a))return t;let u=a.statements.at(-1);if(!(u&&S.isReturnStatement(u)&&u.expression))return t;let b=Kt(u.expression);if(!qi(b))return t;let v=a.statements.slice(0,-1);if(v.some(_i))return t;p=v.length===0,l=b}let d=S.isJsxElement(l)?l.openingElement:l,m=Zn(d);if(m===-1)return t;let y=d.attributes.properties[m];if(!y||!S.isJsxAttribute(y))return t;let f=nt(y.initializer),g=Gl(i,f,p);if(g===void 0)return t;e.liftedKeys.add(y.name),e.neededImports.add("repeat");let C=e.importRenames.repeat;return S.factory.updateCallExpression(t,S.factory.createIdentifier(C),t.typeArguments,[t.expression.expression,S.factory.createArrowFunction(void 0,void 0,[g],void 0,void 0,f),S.factory.updateArrowFunction(r,r.modifiers,r.typeParameters,r.parameters,r.type,r.equalsGreaterThanToken,a)])}var qi=e=>S.isJsxElement(e)||S.isJsxSelfClosingElement(e);function _i(e){if(S.isReturnStatement(e))return!0;let t=!1;return S.visitEachChild(e,n=>(t||=_i(n),n),void 0),t}function Gl(e,t,n){let r=S.isObjectBindingPattern(e.name)?Ql(e.name,t.getText()):e.name;if(!n){let o=oe(t);if(!o||!o.every(Xi,r))return}return S.factory.updateParameterDeclaration(e,e.modifiers,e.dotDotDotToken,r,e.questionToken,e.type,e.initializer)}function oe(e){if(S.isIdentifier(e))return[e.text];if(S.isPropertyAccessExpression(e))return oe(e.expression);if(S.isElementAccessExpression(e))return oe(e.argumentExpression);if(S.isConditionalExpression(e)){let t=oe(e.condition),n=oe(e.whenTrue),r=oe(e.whenFalse);return t===void 0||n===void 0||r===void 0?void 0:[...t,...n,...r]}else if(S.isBinaryExpression(e)){let t=oe(e.left),n=oe(e.right);return t===void 0||n===void 0?void 0:[...t,...n]}else{if(_l.has(e.kind))return[];{let t=Kt(e);return t!==e?oe(t):void 0}}}var _l=new Set([S.SyntaxKind.NumericLiteral,S.SyntaxKind.BigIntLiteral,S.SyntaxKind.StringLiteral,S.SyntaxKind.RegularExpressionLiteral,S.SyntaxKind.NoSubstitutionTemplateLiteral,S.SyntaxKind.FalseKeyword,S.SyntaxKind.NullKeyword,S.SyntaxKind.TrueKeyword]),Kt=e=>S.isAsExpression(e)||S.isNonNullExpression(e)||S.isSatisfiesExpression(e)||S.isParenthesizedExpression(e)?Kt(e.expression):e;function Xi(e){let t=this;return S.isIdentifier(t)?t.text===e:t.elements.some(Xl,e)}function Xl(e){let t=this;return S.isOmittedExpression(e)?!1:Xi.call(e.name,t)}function Ql(e,t){let n=!1,r=e.elements.filter(o=>S.isIdentifier(o.name)?t.includes(o.name.getText())||o.propertyName&&t.includes(o.name.getText()):(n=!0,!0));return n||r.length===0?e:S.factory.updateObjectBindingPattern(e,r)}var Yn=(e,t)=>t.liftedKeys.has(e);var Yi=e=>e.manifestComponents.map(({name:t,importPath:n})=>`import type { ${t} } from "./${n}";`).join(`
|
|
101
|
+
`),Yl=/^[a-zA-Z_$][a-zA-Z\d_$]*$/u,Me=e=>!Yl.test(e),X=e=>Me(e)?`"${e}"`:e;function Ce(e,t=[]){let n=t?.filter(m=>m.kind==="field"&&m.readonly!==!0),r=[],o=[],i=!1;n.forEach(m=>{let y=m;if(y.getterType){i=!0;return}y.docsTags?.some(g=>g.name==="required")?r.push(m.name):o.push(m.name)});let s=Qi(r),a=Qi(o),p=[s?`Required<Pick<${e}, ${s}>>`:"",a?`Partial<Pick<${e}, ${a}>>`:"",i?`${e}SetterTypes`:""],l=i?`
|
|
102
|
+
type ${e}SetterTypes = ${e}["${Zt}"]`:"",d=p.filter(Boolean).join(", ");return[d.length===0?"":`${d}, `,l]}var Qi=e=>e.map(t=>`'${t}'`).join(" | ");function _(e,t){return Zi(e,t)}function Zi(e,t){if(We(t))return es(e,t);let n=T.isCallExpression(t)?Gi(e,t):t;return T.visitEachChild(n,Zi.bind(null,e),e.transformationContext)}function es(e,t){let n=ts(e,t);return ot(n,e)}function ts(e,t){let n="children"in t?t.children:[];if(T.isJsxFragment(t))return{key:void 0,...Ht(n,e)};let o=T.isJsxElement(t)?t.openingElement:t,i=o.tagName;if(T.isJsxNamespacedName(i)){let x=E(e.sourceFile.fileName);throw new Error(`JSX namespaced elements are not supported. Found ${i.getText()} in "${x}"`)}if(!T.isIdentifier(i)||!i.text.startsWith(i.text[0].toLowerCase())&&i.text!==vt&&i.text!==St){let b=T.isIdentifier(i)&&i.text===Eo?Ht(n,e):{litTag:void 0,parts:[td(e,t,i,n)]};return{key:ed(o,e),...b}}let a=i.text===vt?Le:i.text===St?Ze:i.text,p=i.text===vt?he:i.text===St?ne:ko.has(a)?Jn:Ie.has(a)?xe:re;typeof a=="string"&&a.includes("-")&&!Re.has(a)&&e.customElementsToImport.add(a);let l,d=[],m=o.attributes.properties.flatMap(x=>{if(T.isJsxSpreadAttribute(x))throw new Error(`JSX spread attribute syntax is not supported. See alternatives: https://qawebgis.esri.com/arcgis-components/?path=/docs/references-lumina-jsx--docs#spread-attributes
|
|
103
|
+
Found ${x.getText()}`);let{name:b,initializer:v}=x;if(T.isJsxNamespacedName(b)){let se=E(e.sourceFile.fileName);throw new Error(`JSX namespaced attributes are not supported. Found ${b.getText()} in "${se}"`)}let F=b.text,K=Ki(v),D=K?.propType??Hi(F,v,a),H=Bi[D](e,K?.initializer??v,F,a);if(H.length===0)return[];let ie=e.compiler.shouldMinifyStrict?" ":Vi(Xn(b,e));return D==="key"?(l=typeof H[0]=="object"&&!Yn(b,e)?H[0]:void 0,Array.isArray(ie)&&ie.some(Ui)?ie:[]):D==="directives"||D==="ref"||D==="dynamicValue"?(d.push(...ie,...H.flatMap((se,pt)=>typeof se=="string"||pt===0||typeof H[pt-1]=="string"?se:[" ",se])),[]):[...ie,...H]});if(d.length>0&&m.push(...d),typeof a=="string"&&je.has(a))throw new Error(`JSX syntax for MathML elements is not yet supported. If you need it, please request it. Otherwise, use the \`math\` function from Lit directly. Tried to use the "${a}" element`);let y=typeof a=="string"&&Mo.has(a),f=Ht(n,e);if(y&&f.parts.length>0){let x=E(e.sourceFile.fileName);throw new Error(`Void HTML elements like <${a}> cannot have children. Found ${t.getText()} in "${x}"`)}let g=(p===xe||p===ne)&&f.parts.length===0,C=["<",typeof a=="string"?a:i,...m,g?`${m.length===0?"":" "}/>`:">"],u=y||g?C:[...C,...f.litTag!==void 0&&f.litTag!==p?[ot({key:void 0,...f},e)]:f.parts,"</",typeof a=="string"?a:i,">"];return{key:l,parts:u,litTag:p}}function ed(e,t){let n=e.attributes.properties[Zn(e)];return n&&T.isJsxAttribute(n)&&!Yn(n.name,t)?nt(n.initializer):void 0}var Zn=e=>e.attributes.properties.findIndex(({name:t})=>t&&T.isIdentifier(t)&&t.text==="key");function td(e,t,n,r){let i=(T.isJsxElement(t)?t.openingElement:t).attributes.properties.map(p=>{if(T.isJsxSpreadAttribute(p))return Qn(Xn(p,e),T.factory.createSpreadAssignment(p.expression));let{name:l,initializer:d}=p;if(T.isJsxNamespacedName(l)){let f=E(e.sourceFile.fileName);throw new Error(`JSX namespaced attributes are not supported. Found ${l.getText(e.sourceFile)} in "${f}"`)}if(l.text==="key")return;let m=d===void 0?T.factory.createTrue():T.isStringLiteral(d)?d:We(d)?es(e,d):_(e,d.expression??T.factory.createIdentifier("undefined")),y=Me(l.text)?T.factory.createStringLiteral(l.text):l;return T.factory.createPropertyAssignment(y,m)}),{parts:s,litTag:a}=Ht(r,e);return s.length>0&&i.push(T.factory.createPropertyAssignment(T.factory.createIdentifier("children"),ot({key:void 0,parts:s,litTag:a},e))),T.factory.createCallExpression(n,void 0,[T.factory.createObjectLiteralExpression(i.filter(Zl))])}function Ht(e,t){let n,r=e.flatMap(o=>{if(T.isJsxText(o))return[t.compiler.shouldMinifyStrict?Rr(o.text):o.text];if(T.isJsxExpression(o))return Bt(t,nd(o));{let i=ts(t,o);if(i.key===void 0&&i.litTag!==he&&i.litTag!==ne){if(i.litTag===Jn)return i.parts;if(n!==void 0&&i.litTag!==void 0&&n!==i.litTag)throw new Error(`Unexpectedly found both ${n} and ${i.litTag} child elements inside the same element.`);return n=i.litTag,i.parts}else return[ot(i,t)]}});return{litTag:n,parts:r}}function nd(e){return e.expression&&T.isBinaryExpression(e.expression)&&(e.expression.operatorToken.kind===T.SyntaxKind.AmpersandAmpersandToken||e.expression.operatorToken.kind===T.SyntaxKind.QuestionQuestionToken||e.expression.operatorToken.kind===T.SyntaxKind.BarBarToken)?e.expression.operatorToken.kind===T.SyntaxKind.BarBarToken&&(T.isStringLiteral(e.expression.right)||We(e.expression.right)||T.isNumericLiteral(e.expression.right)||T.isPrefixUnaryExpression(e.expression.right)||T.isNoSubstitutionTemplateLiteral(e.expression.right)||T.isTemplateExpression(e.expression.right))?e:T.factory.updateJsxExpression(e,T.factory.createBinaryExpression(e.expression,T.factory.createToken(T.SyntaxKind.BarBarToken),T.factory.createStringLiteral(""))):e}function Bt(e,t){if(t.expression===void 0){if(e.compiler.shouldMinifyStrict)return[];let n=t.getText(e.sourceFile).slice(1,-1);return Wt(n).length===0?[]:[Qn(n,T.factory.createIdentifier("undefined"))]}return T.isStringLiteral(t.expression)?[ft(t.expression.text)]:e.compiler.viteCommand==="serve"&&e.compiler.typeScriptConfig.options.sourceMap&&!e.compiler.shouldMinifyStrict&&T.isArrowFunction(t.expression)&&!T.isBlock(t.expression.body)?[_(e,T.factory.updateArrowFunction(t.expression,t.expression.modifiers,t.expression.typeParameters,t.expression.parameters,t.expression.type,t.expression.equalsGreaterThanToken,T.factory.createBlock([T.factory.createReturnStatement(t.expression.body)],!0)))]:[_(e,t.expression)]}function ns(e){let t=Ro().map(({packageName:n})=>n);return e.existingImportedModules.forEach(n=>{if(c.isAbsolute(n))return;let{packageName:r,moduleName:o}=ln(n);if(t.includes(r??"")&&(o.startsWith("dist/components")||o.startsWith("components"))){let i=E(e.sourceFile.fileName);throw new Error(`Did not expect to find any explicit imports for "${n}". Found import in ${i}. Imports for web components that your component consumes will be added automatically at build-time as appropriate for a given output target. Type-only imports are still allowed. If you believe this is an error, please notify Lumina maintainers.`)}}),[]}function rs(e){if(e.compiler.viteCommand==="serve")return e.customElementsToImport.clear(),[];let t=Ve.get(e.compiler);return t||(t={},Ve.set(e.compiler,t)),t[e.sourceFile.fileName]??={referencedBy:[],referencedTagNames:[]},t[e.sourceFile.fileName].referencedTagNames=Array.from(e.customElementsToImport),e.customElementsToImport.clear(),e.importedFunctionComponentsFromModules.forEach(n=>{let r=`${n}.tsx`;t[r]??={referencedBy:[],referencedTagNames:[]},t[r].referencedBy.push(e.sourceFile.fileName)}),[]}var os=(e,t)=>{let n=e.pragmas;if(n?.has("jsx")??n?.has("jsxImportSource"))return e.statements;let r={compiler:t.compiler,externalComponents:Ft(),localComponents:t.compiler.isInPuppeteerTestBackEnd?{}:Hn(t.compiler.manifest),sourceFile:e,transformationContext:t.transformation,importRenames:od(e),existingImportedModules:new Set,importedFunctionComponentsFromModules:new Set,existingLitImports:new Set,customElementsToImport:new Set,neededImports:new Set,liftedKeys:new Set};e.statements.forEach(a=>{rd.isImportDeclaration(a)&&vi(r,a)});let i=_(r,e).statements;if(r.neededImports.size>0&&(i=i.map(Ei,r),r.existingLitImports.size>0))throw new Error(`Expected context.existingLitImports to be empty by now. Found: ${Array.from(r.existingLitImports).join(", ")}`);let s=[Pi,ns,rs].flatMap(a=>a(r));if(r.neededImports.size>0)throw new Error(`Expected context.neededLitImports to be empty by now. Found: ${Array.from(r.neededImports).join(", ")}`);return[...s,...i]};function od(e){return id(e),Object.fromEntries(Ci.map(t=>[t,e.identifiers.has(t)?`${t}$jsx`:t]))}function id(e){if(!("identifiers"in e))throw new Error("Expected sourceFile to have an undocumented identifiers property that is a Map<string,string>. If this error is thrown, it may mean Lumina Compiler needs to be updated to support the version of TypeScript being used.")}var is=(e,t)=>{if(t.fileManifest!==void 0&&e.text.includes(`* @${ee}`))throw new Error(`Do not use @${ee} JSDoc tag as it is not yet handled correctly by doc extraction (see https://github.com/open-wc/custom-elements-manifest/issues/263). Please use @${ze} instead. Found @${ee} in ${E(c.relative(t.compiler.dir.root,e.fileName))}`);return e.statements};import k from"typescript";import R from"typescript";import{PropertyFlags as Te}from"@arcgis/lumina/config";function ss(e,t,n){return t.size===0?e:[R.factory.createPropertyDeclaration([R.factory.createModifier(R.SyntaxKind.StaticKeyword),R.factory.createModifier(R.SyntaxKind.OverrideKeyword)],"properties",void 0,void 0,R.factory.createObjectLiteralExpression(Array.from(t.entries()).map(([r,o])=>R.factory.createPropertyAssignment(Me(r)?R.factory.createStringLiteral(r):r,sd(o,n))))),...e]}function sd(e,t){let n=0,r=!0,o=e.properties.filter(a=>{if(!R.isPropertyAssignment(a)||!R.isIdentifier(a.name))return!0;let p=a.name.text,l=a.initializer,d=l.kind===R.SyntaxKind.TrueKeyword,m=l.kind===R.SyntaxKind.FalseKeyword;if(p==="attribute")return r=!1,n|=d?Te.ATTRIBUTE:0,!d&&!m;if(p==="reflect")return n|=d?Te.REFLECT:0,!1;if(p==="type"&&R.isIdentifier(l)){if(l.text==="Boolean")return n|=Te.BOOLEAN,!1;if(l.text==="Number")return n|=Te.NUMBER,!1}else{if(p==="state")return r=!1,n|=d?Te.STATE:0,!1;if(p==="readOnly")return n|=d?Te.READ_ONLY:0,!1;p==="noAccessor"&&(n|=d?Te.NO_ACCESSOR:0)}return!0});r&&(n|=Te.ATTRIBUTE);let i=t?o:e.properties,s=R.factory.createNumericLiteral(n);return i.length===0?s:R.factory.createArrayLiteralExpression([s,R.factory.createObjectLiteralExpression(i)])}import{identity as yd}from"@arcgis/components-utils";import{readFileSync as fd,writeFileSync as ud}from"node:fs";import it from"typescript";import O from"typescript";import w from"typescript";import{camelToKebab as ad}from"@arcgis/components-utils";function as(e,t,n,r,o,i){let s=-1,a=!1,p=-1,l=-1;t.options?.properties.forEach((g,C)=>{if(w.isSpreadAssignment(g))throw new Error(`Spread property assignment is not allowed in @property() as that is not statically analyzable. Found ${g.getText(r)}`);if(w.isIdentifier(g.name)){let u=g.name.text;u==="type"?s=C:u==="converter"?a=!0:u==="attribute"?p=C:u==="readOnly"&&(l=C)}});let d=i?.attribute===void 0&&p===-1,m=i?.readonly===!0&&i.docsOnlyReadonly!==!0&&l===-1,y=pd(e,t,n,r,o,i,s,p,a),f=[...d?[w.factory.createPropertyAssignment("attribute",w.factory.createFalse())]:[],...m?[w.factory.createPropertyAssignment("readOnly",w.factory.createTrue())]:[],...y!==void 0?[y]:[]];return f.length>0?t.options===void 0?w.factory.createObjectLiteralExpression(f,!1):w.factory.updateObjectLiteralExpression(t.options,[...t.options.properties,...f]):t.options}function pd(e,t,n,r,o,i,s,a,p){if(i?.attribute===void 0)return;if(t.options&&t.options.properties.length===0&&o(t.options.getStart(r),t.options.getEnd(),""),a!==-1){let g=t.options.properties[a],C=ad(i.name);if(w.isPropertyAssignment(g)&&(g.initializer.kind===w.SyntaxKind.TrueKeyword||w.isStringLiteral(g.initializer)&&g.initializer.text===C)&&gn(i.type?.values??[])){let x=t.options.properties[a+1]?.getFullStart()??g.getEnd();o(g.getFullStart(),x,"")}}let l=dd(e),d=n.compiler.viteCommand==="serve"||l!=="Other"?l:ld(i.type?.values);if(d==="Other"||i.readonly&&(d!=="Boolean"||!i.reflects))return;let m=t.options?.properties[s];if(m){let g="initializer"in m?m.initializer:void 0;if(!p&&g&&w.isIdentifier(g)){let C=`Found property "${i.name}" in "${E(r.fileName)}" that has @property({ type: ${g.text} })`,u='. If this is a false warning, you can silence it by adding "converter: undefined" option to @property()';if(g.text==="Boolean"&&d==="Number")console.warn(`${C} where as expected to see @property({ type: Number }) because the property type is number${u}`);else if(g.text==="Number"&&d==="Boolean")console.warn(`${C} where as expected to see @property({ type: Boolean }) because the property type is boolean${u}`);else if(!cd.has(g.text))console.warn(`${C}. The default Lit attribute<-->property converter does not define any behavior for @property({ type: ${g.text} }). Consider removing this "type", or adding a custom converter @property({ converter: ... }) to handle this type${u}`);else if(l!=="Other"&&g.text===l){let b=t.options.properties[s+1]?.getFullStart()??m.getEnd();o(m.getFullStart(),b,"")}}return}if(l==="Other"){let g=`type: ${d}`;if(t.options===void 0){let C=t.decorator.getEnd()-1;o(C,C,`{ ${g} }`)}else{let C=t.options.getStart(r)+1;o(C,C,` ${g},`)}}return w.factory.createPropertyAssignment(w.factory.createIdentifier("type"),w.factory.createIdentifier(d))}function ld(e){let t=!1,n=!1,r=!1;if(e?.forEach(o=>{t||=o.type==="number",n||=o.type==="boolean",r||=o.type==="string"||o.type==="any"||o.type==="unknown"}),r||=t&&n,!r){if(t)return"Number";if(n)return"Boolean"}return"Other"}function dd(e){let t=e.type??(w.isSetAccessor(e)?e.parameters[0].type:void 0);if(t===void 0){if("initializer"in e&&e.initializer){if(w.isNumericLiteral(e.initializer)||w.isPrefixUnaryExpression(e.initializer)&&e.initializer.operator===w.SyntaxKind.MinusToken&&w.isNumericLiteral(e.initializer.operand))return"Number";if(e.initializer.kind===w.SyntaxKind.FalseKeyword||e.initializer.kind===w.SyntaxKind.TrueKeyword)return"Boolean"}}else{if(t.kind===w.SyntaxKind.NumberKeyword)return"Number";if(t.kind===w.SyntaxKind.BooleanKeyword)return"Boolean"}return"Other"}var cd=new Set(["Number","Boolean","Array","Object"]);function Ut(e,t,n,r,o,i){if(t.modifiers===void 0)return t;let s=-1,a=-1;if(t.modifiers.forEach((p,l)=>{if(O.isDecorator(p)&&O.isCallExpression(p.expression)&&O.isIdentifier(p.expression.expression)){let d=p.expression.expression.text;d==="property"&&(s=l),d==="state"&&(a=l)}}),s!==-1&&a!==-1)throw new Error(`Property cannot have both @property and @state decorators. Found property that has both: ${t.getText(r)}`);if(s!==-1){let p=md(e,t,n,r),l=ps(t,s,r),d=as(t,l,e,r,o,p),m=!1;return i!==void 0&&p&&(i.set(p.name,d??O.factory.createObjectLiteralExpression()),m=!0),l.options=d,ls(t,l,s,m)}else if(a!==-1&&i!==void 0){let p=ps(t,a,r),l=O.factory.createPropertyAssignment("state",O.factory.createTrue()),d=p.options===void 0?O.factory.createObjectLiteralExpression([l]):O.factory.updateObjectLiteralExpression(p.options,[...p.options.properties,l]),m=dt(t);if(m===void 0)throw new Error("Failed to statically determine the state property name");return i.set(m,d),ls(t,p,a,!0)}else return t}function md(e,t,n,r){let o=V(e.fileManifest??{},!0).find(s=>s.name===n)??(e.compiler.isInTest?{name:""}:void 0);if(o===void 0)return;let i=De(o,t)??(e.compiler.isInTest?{kind:"field",attribute:"",readonly:!1,name:"",type:void 0}:void 0);if(!(i===void 0||i.kind!=="field")){if(i.name===""){let s=dt(t);if(s===void 0)throw new Error(`Failed to statically determine the property name: ${t.getText(r)}`);i.name=s}return i}}function ps(e,t,n){let r=e.modifiers[t],o=r.expression,i=o.arguments.at(0);if(i&&!O.isObjectLiteralExpression(i))throw new Error(`First argument to @property() or @state() decorator must be an object literal as otherwise it is not statically analyzable. Found ${i.getText(n)}`);return{decorator:r,callExpression:o,options:i}}function ls(e,t,n,r){if(t.callExpression.arguments.length>1)throw new Error(`Expected at most 1 argument to @property() or @state() decorator. Found ${t.callExpression.arguments.length} in ${e.getText()}`);let o=r?void 0:O.factory.updateDecorator(t.decorator,O.factory.updateCallExpression(t.callExpression,t.callExpression.expression,t.callExpression.typeArguments,t.options===void 0?[]:[t.options])),i=[...e.modifiers.slice(0,n),...o===void 0?[]:[o],...e.modifiers.slice(n+1)];return O.isGetAccessorDeclaration(e)?O.factory.updateGetAccessorDeclaration(e,i,e.name,e.parameters,e.type,e.body):O.isSetAccessorDeclaration(e)?O.factory.updateSetAccessorDeclaration(e,i,e.name,e.parameters,e.body):O.factory.updatePropertyDeclaration(e,i,e.name,e.questionToken??e.exclamationToken,e.type,e.initializer)}function ds(e,t){try{let n=fd(t,"utf-8"),r=it.createSourceFile(t,n,e.compiler.typeScriptConfig.options.target??it.ScriptTarget.Latest,!1,it.ScriptKind.TSX),o=[],i=(p,l)=>it.isPropertyDeclaration(p)||it.isAccessor(p)?Ut(e,p,l,r,(...d)=>o.push(d)):p;r.statements.forEach(p=>Vt(i,p,e));let a=o.sort((p,l)=>l[0]-p[0]).reduce((p,[l,d,m])=>`${p.slice(0,l)}${m}${p.slice(d)}`,n);ud(t,a)}catch(n){console.error(`Failed applying automated edits to the ${E(t)} file.: Error ${String(n)}`)}}var cs=(e,t)=>{if(t.fileManifest===void 0&&!t.compiler.isInTest)return e.statements;let n=!1;function r(){n=!0}let o;function i(){o=new Map}let s=l=>ss(l,o,t.compiler.shouldMinify),a=(l,d)=>hd(t,l,d,e,r,o),p=e.statements.map(l=>Vt(a,l,t,i,s));return!t.compiler.isInCi&&!t.compiler.isInTest&&n&&ds(t,e.fileName),p};function Vt(e,t,n,r,o=yd){if(k.isClassDeclaration(t)&&t.heritageClauses?.some(s=>s.token===k.SyntaxKind.ExtendsKeyword)){let s=!1,a=t.name?.text;r?.();let p=o(t.members.map(d=>{let m=e(d,a);return s||=m!==d,m}));return s?k.factory.updateClassDeclaration(t,t.modifiers,t.name,t.typeParameters,t.heritageClauses,p):t}return n.compiler.isInTest?k.visitEachChild(t,s=>Vt(e,s,n,r,o),n.transformation):t}var gd=new Set(["connectedCallback","disconnectedCallback"]);function hd(e,t,n,r,o,i){if(k.isMethodDeclaration(t)){let s=t.modifiers?.filter(a=>!k.isDecorator(a)||!xd(a));if(s?.length!==t.modifiers?.length)return k.factory.updateMethodDeclaration(t,s,t.asteriskToken,t.name,t.questionToken,t.typeParameters,t.parameters,t.type,t.body);if("text"in t.name&&gd.has(t.name.text)&&t.body){let a=t.name.text;return t.body.statements.some(l=>k.isExpressionStatement(l)&&k.isCallExpression(l.expression)&&k.isPropertyAccessExpression(l.expression.expression)&&l.expression.expression.expression.kind===k.SyntaxKind.SuperKeyword&&l.expression.expression.name.text===a)?t:k.factory.updateMethodDeclaration(t,t.modifiers,t.asteriskToken,t.name,t.questionToken,t.typeParameters,t.parameters,t.type,k.factory.updateBlock(t.body,[k.factory.createExpressionStatement(k.factory.createCallExpression(k.factory.createPropertyAccessExpression(k.factory.createSuper(),a),void 0,[])),...t.body.statements]))}}return k.isPropertyDeclaration(t)||k.isAccessor(t)?Ut(e,t,n,r,o,i):t}var xd=e=>k.isCallExpression(e.expression)&&k.isIdentifier(e.expression.expression)&&e.expression.expression.text==="method";var ms="makeRuntime(";function fs(e,t){let n=e.indexOf(ms);if(n===-1)throw new Error("Failed to find makeRuntime() function call in src/runtime.ts");let r=n+ms.length,o=t.options.css?.commonStylesPath;return{code:[o===void 0?"":`import commonStyles from "${Y(t.dir.src,o)}";`,e.slice(0,r),"{","defaultAssetPath:import.meta.env.BASE_URL,",'hydratedAttribute:"',t.options.css?.hydratedAttribute??mn,'",',o===void 0?"":"commonStyles","}",e.slice(r)].join(""),map:null}}var Td=[is,os,Lo,cs],ys=e=>({name:"@arcgis/lumina:transformComponents",transform:{order:"pre",async handler(t,n){if(!n.endsWith(".tsx")){if(e.isInTest&&n.endsWith(".ts")&&Yt(n)&&t.includes("extends LitElement"))console.warn("It looks like you may be trying to define a component inside a test file. This is supported, but you must use the .tsx file extension for you test");else if(n===`${e.dir.src}runtime.ts`)return fs(t,e);return}let r=e.getSourceFile(n,t);await ue;let i=Cd.transform(r,[y=>()=>ct(e,y,r,[...e.options.types?.sourceFileTransformers??[],...Td])]).transformed[0],s=bd(e),a=$e(s),p=s.sourceMap?ve.createSourceMapGenerator(e.typeScriptHost,c.basename(n),"",c.dirname(n),s):void 0,l=ve.createTextWriter(ve.getNewLineCharacter(s));a.writeFile(i,l,p);let d=l.getText(),m=p?.toJSON();return{code:d,map:m??null}}}}),us=new WeakMap;function bd(e){let t=us.get(e);if(!t){let n=e.typeScriptConfig.options;t={...n,declaration:!1,declarationMap:!1,emitDeclarationOnly:!1,sourceMap:n.sourceMap??n.inlineSourceMap,inlineSourceMap:!1,allowSyntheticDefaultImports:!0,suppressOutputPathCheck:!0,noLib:!0,noResolve:!0,skipLibCheck:!0},us.set(e,t)}return t}var hs=e=>({name:"@arcgis/lumina:handleDynamicAssets",configureServer(t){e.server=t,!e.isInPuppeteerTestBackEnd&&gs(e).forEach(({assets:n,transformers:r})=>ge(e,n,r))},async writeBundle(){await Promise.all(gs(e).map(async({assets:t,transformers:n})=>await At(e,t,n)))}});function gs(e){let t=[],n=e.assetsToProvide?.filter(r=>r.apply===void 0||r.apply===e.viteCommand)??[];return e.options.assets?.extra?.forEach(r=>{"type"in r?t.push(r):"assets"in r&&t.push(...r.assets)}),t.length>1&&n.push({assets:t}),e.assetsToProvide=void 0,n}import{readFile as vd}from"node:fs/promises";import{writeFileSync as Sd}from"node:fs";var xs="@arcgis/lumina:updatePackageJson",Cs=e=>({name:xs,apply:()=>e.viteCommand==="serve"&&e.environment==="development"&&!e.isInTest&&!e.isInCi,configResolved(){Ed(e).catch(t=>console.error(`${xs}: Failed to update package's package.json`,t))}});async function Ed(e){let t=c.join(e.dir.root,"package.json"),n=JSON.parse(await vd(t,"utf-8")),r=Pd(n,e);r&&Sd(t,JSON.stringify(r,null,2))}function Pd(e,t){let n=e?.devDependencies??{};Object.keys(e?.peerDependencies??{}).forEach(y=>{y in n||console.error(`Every peerDependency must also be a devDependency, or else some tools will get confused (like Turbo Build). Found "${y}" that is not a devDependency. Please edit your package.json`)});let r=!1,o=y=>c.relative(t.dir.root,c.join(t.dir.dist,y)),i=e["css.customData"]??[],s=t.documentationFileNames,a=o(s.vsCodeCss);i.includes(a)||(e["css.customData"]=[...i,a],r=!0);let p=o(s.manifest);e.customElements!==p&&(e.customElements=p,r=!0);let l=e["html.customData"]??[],d=o(s.vsCodeHtml);l.includes(d)||(e["html.customData"]=[...l,d],r=!0);let m=o(s.webTypes);if(e["web-types"]!==m&&(r=!0,e["web-types"]=m),r)return e}import{isNotUndefined as Ts}from"@arcgis/components-utils";import{defaultEventBubbles as wd,defaultEventCancelable as Md,defaultEventComposed as kd}from"@arcgis/lumina/config";var bs=e=>({timestamp:e.manifest.timestamp,compiler:e.manifest.compiler,components:e.manifestComponents.map(Fd),typeLibrary:{}});function Fd(e){let t=e.superclass?[{name:"superclass",text:JSON.stringify(e.superclass)}]:[];return{filePath:e.sourcePath,tag:e.tagName??"",overview:"",readme:"",usage:{},docs:e.description??"",docsTags:[...e.docsTags??[],...t],encapsulation:e.encapsulation??"shadow",dependents:[],dependencies:[],dependencyGraph:{},deprecation:typeof e.deprecated=="boolean"?e.deprecated?"":void 0:e.deprecated,props:e.members?.map(Dd).filter(Ts)??[],methods:e.members?.map($d).filter(Ts)??[],events:e.events?.map(Ad)??[],styles:e.cssProperties?.map(n=>({name:n.name,annotation:"prop",docs:n.description??"",mode:void 0}))??[],slots:e.slots?.map(({name:n,description:r=""})=>({name:n,docs:r}))??[],parts:e.cssParts?.map(({name:n,description:r=""})=>({name:n,docs:r}))??[],listeners:[]}}function Dd(e){if(e.kind!=="field")return;let t=e,n=t.inheritedFrom?[{name:"inheritedFrom",text:JSON.stringify(t.inheritedFrom)}]:[],r=t.readonly?[{name:"readonly",text:""}]:[];return{name:t.name,type:t.type?.text??"unknown",complexType:t.type===void 0?void 0:{original:t.type.original,resolved:t.type.text,references:er(t.type.references)},mutable:!0,attr:"attribute"in t&&typeof t.attribute=="string"?t.attribute:void 0,reflectToAttr:"reflects"in t&&t.reflects===!0,docs:t.description??"",docsTags:[...t.docsTags??[],...r,...n],default:t.default??void 0,deprecation:typeof t.deprecated=="boolean"?t.deprecated?"":void 0:t.deprecated,values:t.type?.values??[],optional:t.hasQuestionToken??!1,required:t.docsTags?.some(o=>o.name==="required")??!1}}var er=e=>Object.fromEntries(e?.map(t=>[t.name,{location:t.package===pn?"global":t.package===void 0?"local":"import",path:typeof t.module=="string"&&typeof t.package=="string"?c.join(t.package,t.module):t.module??t.package,id:"notImplemented"}])??[]);function $d(e){if(e.kind!=="method")return;let t=e,n=e.inheritedFrom?[{name:"inheritedFrom",text:JSON.stringify(e.inheritedFrom)}]:[],r=t.parameters?.map(({name:o,type:i,description:s})=>({name:o,type:i?.text??"unknown",docs:s??""}))??[];return{name:t.name,returns:{type:t.return?.type?.text??"void",docs:t.docsTags?.filter(({name:o})=>o==="return"||o==="returns").map(({text:o})=>o).join(`
|
|
104
|
+
`)??""},complexType:{signature:"()=>unknown",parameters:r,...t.type,return:t.return?.type?.text??"void",references:er(t.type?.references)},signature:`${t.name}${t.type?.signature??"()=>unknown"}`,parameters:r,docs:t.description??"",docsTags:[...t.docsTags??[],...n],deprecation:typeof t.deprecated=="boolean"?t.deprecated?"":void 0:t.deprecated}}function Ad(e){let t=e,n=t.inheritedFrom?[{name:"inheritedFrom",text:JSON.stringify(t.inheritedFrom)}]:[];return{event:t.name,detail:t.type.text,bubbles:t.bubbles??wd,complexType:{original:t.type.original,resolved:t.type.text,references:er(t.type.references)},cancelable:t.cancelable??Md,composed:t.composed??kd,docs:t.description??"",docsTags:[...t.docsTags??[],...n],deprecation:typeof t.deprecated=="boolean"?t.deprecated?"":void 0:t.deprecated}}import{writeFile as tr}from"node:fs/promises";var zt=e=>e.flatMap(t=>t.cssProperties?.map(n=>({name:n.name,description:n.description||void 0}))??[]),qt=e=>e.flatMap(t=>t.cssParts?.map(n=>({name:`::part(${n.name})`,description:n.description||void 0}))??[]),vs=e=>e.members?.filter(Ne).map(t=>({name:t.attribute??"",description:Ue(t.description,t.deprecated)||void 0,default:t.default,required:t.docsTags?.some(n=>n.name==="required")||void 0,value:{type:Nd(t.type?.values?.map(n=>n.type==="string"&&n.value?`"${n.value}"`:n.value??n.type))}})).filter(t=>t.name)??[],Nd=e=>e?.length===1?e[0]:e,Ue=(e="",t=!1)=>t===!1?e:`**Deprecated**${typeof t=="string"?`: ${t}`:""}. ${e}`;var st={slots:"Slots",events:"Events",cssProperties:"CSS Properties",cssParts:"CSS Parts",methods:"Methods"};function Gt(e){let t=Ld(e?.slots),n=Id(e?.events),r=jd(e?.cssProperties),o=Rd(e?.cssParts),i=Od(e?.members),s=Ue(e.description,e.deprecated).trim();return[...s?[`${s}
|
|
105
105
|
--`]:[],n,i,t,r,o].filter(Boolean).join(`
|
|
106
106
|
|
|
107
107
|
`)}var at=(e,t)=>t===void 0||t.length===0?"":`### ${e}
|
|
108
108
|
${t.join(`
|
|
109
|
-
`)}`,
|
|
109
|
+
`)}`,Ld=e=>at(st.slots,e?.map(t=>`- ${t.name?`**${t.name}**`:"_default_"} - ${t.description}`)),Id=e=>at(st.events,e?.filter(t=>t.name!==null&&t.name!==void 0).map(t=>`- **${t.name}**${t.description?` - ${t.description}`:""}`)),jd=(e=[])=>at(st.cssProperties,e?.map(t=>`- **${t.name}** - ${t.description} ${t.default?`_(default: ${t.default})_}`:""}`)),Rd=e=>at(st.cssParts,e?.map(t=>`- **${t.name}** - ${t.description}`)),Od=e=>at(st.methods,e?.filter(So).map(t=>[`- \`${t.name}${t.type.signature}\``,Ue(t.description,t.deprecated)].filter(Boolean).join(" - ")));function Es(e,t){let n=Jd(e,t),r=zt(e),o=qt(e),i=A();return{$schema:"https://raw.githubusercontent.com/JetBrains/web-types/master/schema/web-types.json",name:i.name,version:i.version,"description-markup":"markdown","default-icon":t.defaultIcon,contributions:{html:{elements:n},css:{properties:r,"pseudo-elements":o}}}}var Jd=(e,t)=>e.map(n=>{let r=t.referenceTemplate?.(n.name,n.tagName);return{name:n.tagName,description:Gt(n),"doc-url":r?.url||"",attributes:vs(n),slots:n.slots?.map(o=>({name:o.name,description:o.description})),events:Ss(n),js:{properties:Bd(n),events:Ss(n)}}}),Bd=e=>e.members?.filter(Ne).map(t=>({name:t.name,description:t.description,type:t.type?.text}))??[],Ss=e=>e.events?.map(t=>({name:t.name,type:t.type?.text,description:t.description}))??[];var Ps=(e,t)=>e?.map(n=>({name:n.tagName,description:Gt(n),attributes:Wd(n),references:t.referencesTemplate?.(n.name,n.tagName)??[]})),Wd=e=>e?.members?.filter(Ne).map(t=>({name:t.attribute??"",description:Ue(t.description,t.deprecated)||void 0,values:Kd(t)})).filter(t=>t.name)??[],Kd=e=>e.type?.values?.map(t=>t.value??"").filter(Boolean).map(t=>({name:t}))??[];var ws=(e,t)=>({$schema:"https://raw.githubusercontent.com/microsoft/vscode-html-languageservice/main/docs/customData.schema.json",version:1.1,tags:Ps(e,t)}),Ms=e=>({$schema:"https://raw.githubusercontent.com/microsoft/vscode-css-languageservice/main/docs/customData.schema.json",version:1.1,properties:zt(e),pseudoElements:qt(e)});var Hd="@arcgis/lumina:generateDocs";function ks(e){return e.provideAssets([{type:"dynamic",source:()=>JSON.stringify(bs(e),null,2),destination:c.join("../..",e.documentationFileNames.stencilLikeDocsJson)},{type:"dynamic",source:()=>JSON.stringify(e.manifest,null,2),destination:c.join("../..",e.documentationFileNames.manifest)}]),{name:Hd,async writeBundle(){if(e.isInStorybook)return;let t=c.join(e.dir.dist,e.documentationFileNames.vsCodeHtml),n=c.join(e.dir.dist,e.documentationFileNames.vsCodeCss),r=c.join(e.dir.dist,e.documentationFileNames.webTypes);await Rn([t,n,r]);let{vsCode:o,jetBrains:i,getComponentDocsUrl:s,getComponentDemoUrl:a}=e.options.documentation??{},p="",l="",d="",m={referencesTemplate:typeof s=="function"||typeof a=="function"?(f,g)=>s===void 0?[{name:"Demo",url:a(g,f)}]:a===void 0?[{name:"Docs",url:s(g,f)}]:[{name:"Docs",url:s(g,f)},{name:"Demo",url:a(g,f)}]:void 0,...o};p=JSON.stringify(ws(e.manifestComponents,m),null,2),l=JSON.stringify(Ms(e.manifestComponents),null,2);let y=m.referencesTemplate;d=JSON.stringify(Es(e.manifestComponents,{referenceTemplate:typeof y=="function"?(f,g)=>y(f,g)?.[0]:void 0,...i}),null,2),await Promise.all([tr(t,p),tr(n,l),tr(r,d)])}}}var Fs=e=>`import { h } from "@arcgis/lumina";
|
|
110
110
|
|
|
111
111
|
type EventHandler<E> = { bivarianceHack(event: E): void }["bivarianceHack"];
|
|
112
112
|
|
|
@@ -117,7 +117,7 @@ type TargetedEvent<Target extends EventTarget = EventTarget, TypedEvent extends
|
|
|
117
117
|
readonly currentTarget: Target;
|
|
118
118
|
};
|
|
119
119
|
|
|
120
|
-
${e.map(
|
|
120
|
+
${e.map(Ud).join(`
|
|
121
121
|
|
|
122
122
|
`)}
|
|
123
123
|
|
|
@@ -128,14 +128,14 @@ ${e.map(({name:t,tagName:n})=>` "${n}": Lumina${t};`).join(`
|
|
|
128
128
|
`)}
|
|
129
129
|
}
|
|
130
130
|
}
|
|
131
|
-
}`;function
|
|
132
|
-
`,r.map(s=>` ${
|
|
133
|
-
`).join(""),"}",i].join("")}function
|
|
131
|
+
}`;function Ud({name:e,typeName:t,members:n,events:r=[]}){let[o,i]=Ce(e,n);return[`interface Lumina${e} extends ${o}h.JSX.HTMLAttributes<${t}> {
|
|
132
|
+
`,r.map(s=>` ${X(`on${s.name}`)}?: EventHandler<TargetedEvent<${t}, CustomEvent<${e}["${s.name}"]["detail"]>>>;
|
|
133
|
+
`).join(""),"}",i].join("")}function Ds(e){let t=` interface IntrinsicElements extends PreactJsx.IntrinsicElements {
|
|
134
134
|
${e.map(({name:n,tagName:r})=>` "${r}": Preact${n};`).join(`
|
|
135
135
|
`)}
|
|
136
136
|
}`;return`import { JSX as PreactJsx } from "preact";
|
|
137
137
|
|
|
138
|
-
${e.map(
|
|
138
|
+
${e.map(Vd).join(`
|
|
139
139
|
|
|
140
140
|
`)}
|
|
141
141
|
|
|
@@ -146,12 +146,12 @@ ${t}
|
|
|
146
146
|
namespace h.JSX {
|
|
147
147
|
${t}
|
|
148
148
|
}
|
|
149
|
-
}`}function
|
|
150
|
-
`,r.map(s=>` ${
|
|
151
|
-
`).join(""),"}",i].join("")}function
|
|
149
|
+
}`}function Vd({name:e,typeName:t,members:n,events:r=[]}){let[o,i]=Ce(e,n);return[`interface Preact${e} extends ${o}PreactJsx.HTMLAttributes<${t}> {
|
|
150
|
+
`,r.map(s=>` ${X(`on${s.name}`)}?: PreactJsx.EventHandler<PreactJsx.TargetedEvent<${t}, CustomEvent<${e}["${s.name}"]["detail"]>>>;
|
|
151
|
+
`).join(""),"}",i].join("")}function $s(e){let t=e.map(({name:n,tagName:r})=>` "${r}": React${n};`).join(`
|
|
152
152
|
`);return`import type { Ref, HTMLAttributes, EventHandler, SyntheticEvent } from 'react';
|
|
153
153
|
|
|
154
|
-
${e.map(
|
|
154
|
+
${e.map(zd).join(`
|
|
155
155
|
|
|
156
156
|
`)}
|
|
157
157
|
|
|
@@ -175,10 +175,10 @@ declare module "react/jsx-dev-runtime" {
|
|
|
175
175
|
${t}
|
|
176
176
|
}
|
|
177
177
|
}
|
|
178
|
-
}`}function
|
|
178
|
+
}`}function zd({name:e,typeName:t,members:n,events:r=[]}){let[o,i]=Ce(e,n);return[`interface React${e} extends ${o}HTMLAttributes<${t}> {
|
|
179
179
|
`,` ref?: Ref<${t}>;
|
|
180
|
-
`,r.map(s=>` ${
|
|
181
|
-
`).join(""),"}",i].join("")}var
|
|
180
|
+
`,r.map(s=>` ${X(`on${s.name}`)}?: EventHandler<SyntheticEvent<${t}, CustomEvent<${e}["${s.name}"]["detail"]>>>;
|
|
181
|
+
`).join(""),"}",i].join("")}var As=e=>`import { JSXBase as StencilJsx } from "@stencil/core/internal";
|
|
182
182
|
|
|
183
183
|
type EventHandler<E> = { bivarianceHack(event: E): void }["bivarianceHack"];
|
|
184
184
|
|
|
@@ -189,7 +189,7 @@ type TargetedEvent<Target extends EventTarget = EventTarget, TypedEvent extends
|
|
|
189
189
|
readonly currentTarget: Target;
|
|
190
190
|
};
|
|
191
191
|
|
|
192
|
-
${e.map(
|
|
192
|
+
${e.map(qd).join(`
|
|
193
193
|
|
|
194
194
|
`)}
|
|
195
195
|
|
|
@@ -200,25 +200,25 @@ ${e.map(({name:t,tagName:n})=>` "${n}": Stencil${t};`).join(`
|
|
|
200
200
|
`)}
|
|
201
201
|
}
|
|
202
202
|
}
|
|
203
|
-
}`;function
|
|
204
|
-
`,r.map(s=>` ${
|
|
205
|
-
`).join(""),"}",i].join("")}import{mkdir as
|
|
203
|
+
}`;function qd({name:e,typeName:t,members:n,events:r=[]}){let[o,i]=Ce(e,n);return[`interface Stencil${e} extends ${o}StencilJsx.HTMLAttributes<${t}> {
|
|
204
|
+
`,r.map(s=>` ${X(`on${s.name[0].toUpperCase()}${s.name.slice(1)}`)}?: EventHandler<TargetedEvent<${t}, CustomEvent<${e}["${s.name}"]["detail"]>>>;
|
|
205
|
+
`).join(""),"}",i].join("")}import{mkdir as Qd,writeFile as Ls}from"node:fs/promises";var Ns=(e,t,n)=>[n,t,Gd(e),_d(e)].join(`
|
|
206
206
|
|
|
207
|
-
`),
|
|
207
|
+
`),Gd=e=>e.filter(t=>(t.events?.length??0)>0).map(({name:t,typeName:n})=>`export interface ${t}CustomEvent<T> extends CustomEvent<T> {
|
|
208
208
|
detail: T;
|
|
209
209
|
target: ${n};
|
|
210
210
|
}`).join(`
|
|
211
|
-
`),
|
|
211
|
+
`),_d=e=>`declare global {
|
|
212
212
|
interface HTMLElementTagNameMap {
|
|
213
213
|
${e.map(({typeName:t,tagName:n})=>` "${n}": ${t};`).join(`
|
|
214
214
|
`)}
|
|
215
215
|
}
|
|
216
216
|
|
|
217
|
-
${e.map(
|
|
217
|
+
${e.map(Xd).join(`
|
|
218
218
|
`).split(`
|
|
219
219
|
`).map(t=>t.length>0?` ${t}`:t).join(`
|
|
220
220
|
`)}
|
|
221
|
-
}`;function
|
|
221
|
+
}`;function Xd({name:e,typeName:t,events:n=[]}){let r=n.length>0;return[r?`interface ${t}EventMap {
|
|
222
222
|
${n.map(o=>` "${o.name}": ${e}["${o.name}"]["detail"];`).join(`
|
|
223
223
|
`)}
|
|
224
224
|
}
|
|
@@ -230,18 +230,18 @@ ${r?` addEventListener<K extends keyof ${t}EventMap>(type: K, listener: (this:
|
|
|
230
230
|
removeEventListener<K extends keyof ${t}EventMap>(type: K, listener: (this: ${t}, ev: ${e}CustomEvent<${t}EventMap[K]>) => any, options?: boolean | EventListenerOptions): void;
|
|
231
231
|
removeEventListener<K extends keyof HTMLElementEventMap>(type: K, listener: (this: HTMLElement, ev: HTMLElementEventMap[K]) => any, options?: boolean | EventListenerOptions): void;
|
|
232
232
|
removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void;`:""}
|
|
233
|
-
}`].join("")}function
|
|
234
|
-
${t.replaceAll("./","../")}`,o=Object.entries({react
|
|
235
|
-
${s}`));o.push(
|
|
233
|
+
}`].join("")}function Is(e){let t;return{name:"@arcgis/lumina:generateFrameworkTypes",generateBundle(){if(e.isInStorybook)return;t=Yi(e);let n=c.join(e.dir.dist,"index.d.ts");e.declarationTextTransformers.push(r=>{let{filePath:o,content:i}=r;return o===n?{filePath:o,content:Ns(e.manifestComponents,i,t)}:r})},async writeBundle(){if(e.isInStorybook)return;let n=c.join(e.dir.dist,"types");await Qd(n);let r=`/// <reference types="../index.d.ts" />
|
|
234
|
+
${t.replaceAll("./","../")}`,o=Object.entries({react:$s(e.manifestComponents),preact:Ds(e.manifestComponents),stencil:As(e.manifestComponents),lumina:Fs(e.manifestComponents)}).map(async([i,s])=>await Ls(c.join(n,`${i}.d.ts`),`${r}
|
|
235
|
+
${s}`));o.push(Ls(c.join(n,"components.d.ts"),`/**
|
|
236
236
|
* This file exists only for backwards-compatibility. Going
|
|
237
237
|
* forward, import from the package root index.d.ts file instead
|
|
238
238
|
*/
|
|
239
|
-
export * from "../";`)),await Promise.all(o)}}}import{mkdir as
|
|
239
|
+
export * from "../";`)),await Promise.all(o)}}}import{mkdir as Yd,writeFile as Zd}from"node:fs/promises";import{isNotUndefined as ec}from"@arcgis/components-utils";function js(e){return{name:"@arcgis/lumina:buildWrappers",apply:()=>e.viteCommand==="build"&&!!e.options.build?.wrappers?.length,async writeBundle(){e.isInStorybook||await Promise.all(e.options.build?.wrappers?.map(async t=>{t.type==="react18"&&await nc(e,t)})??[])}}}var tc=`
|
|
240
240
|
import React from "react";
|
|
241
241
|
import { createComponent } from "@lit/react";
|
|
242
242
|
import type { EventName } from "@lit/react";
|
|
243
243
|
import { createPrototypeProxy } from "@arcgis/lumina";
|
|
244
|
-
`;async function
|
|
244
|
+
`;async function nc(e,t){let{name:n}=A(),r=e.manifest.modules.flatMap(s=>V(s,!0).map(a=>a.docsTags?.some(p=>p.name===ee)?void 0:rc(a))).filter(ec),o=[`/// <reference types="${n}" preserve="true" />`,tc,...r].join(""),i=c.resolve(t.proxiesFile);await Yd(c.dirname(i),{recursive:!0}),await Zd(i,o)}function rc(e){let t=e.events?.map(n=>` ${X(`on${n.name}`)}: "${n.name}" as EventName<${e.typeName}["${n.name}"]>,`).join(`
|
|
245
245
|
`);return`
|
|
246
246
|
export const ${e.name} = /*@__PURE__*/ createComponent({
|
|
247
247
|
react: React,
|
|
@@ -251,4 +251,4 @@ export const ${e.name} = /*@__PURE__*/ createComponent({
|
|
|
251
251
|
${t}
|
|
252
252
|
`:""}},
|
|
253
253
|
});
|
|
254
|
-
`}function
|
|
254
|
+
`}function ic(e={}){let t=new M(e),n=[t.plugin,Mi(t),ki(t),Cs(t),Ar(t),ti(t),Is(t),ks(t),ys(t),Yr(t),li(t),hs(t),Ii(t),Di(t),or(t),Wo(t),mi(t),js(t),gi(t)].filter(oc);return n.context=t,n}var kC={initializeComponentDependencies:kt,updateLuminaTs:jt,propertyToAttributeMappings:q,findDeclaredComponents:bn,nativeEvents:wt,svgElements:Ie,mathMlElements:je,alwaysAttributes:Et,nativeAlwaysAttributes:Pt,htmlAlwaysAttributes:et,isPropertyEscapeNeeded:Me};export{kC as exportsForCodemod,te as inferCdnUrl,ic as useLumina};
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@arcgis/lumina-compiler",
|
|
3
|
-
"version": "4.32.0-next.
|
|
3
|
+
"version": "4.32.0-next.2",
|
|
4
4
|
"type": "module",
|
|
5
5
|
"main": "dist/index.js",
|
|
6
6
|
"module": "dist/index.js",
|
|
@@ -38,42 +38,42 @@
|
|
|
38
38
|
"clean": "rimraf ./dist ./build ./turbo ./node_modules"
|
|
39
39
|
},
|
|
40
40
|
"dependencies": {
|
|
41
|
-
"@arcgis/components-utils": "4.32.0-next.
|
|
41
|
+
"@arcgis/components-utils": "4.32.0-next.2",
|
|
42
42
|
"@custom-elements-manifest/analyzer": "^0.10.3",
|
|
43
43
|
"custom-elements-manifest": "^2.1.0",
|
|
44
44
|
"esbuild": "^0.24.0",
|
|
45
45
|
"js-beautify": "^1.15.1",
|
|
46
46
|
"mime-types": "^2.1.35",
|
|
47
|
-
"rollup": "^4.
|
|
47
|
+
"rollup": "^4.24.0",
|
|
48
48
|
"rollup-plugin-node-externals": "^7.1.3",
|
|
49
49
|
"sass-embedded": "^1.79.3",
|
|
50
50
|
"tslib": "^2.7.0",
|
|
51
51
|
"typescript": "~5.4.0",
|
|
52
52
|
"vite": "^5.4.8",
|
|
53
|
-
"vite-plugin-dts": "^4.2.
|
|
54
|
-
"vitest": "^2.1.
|
|
53
|
+
"vite-plugin-dts": "^4.2.3",
|
|
54
|
+
"vitest": "^2.1.2",
|
|
55
55
|
"vitest-fail-on-console": "^0.7.1"
|
|
56
56
|
},
|
|
57
57
|
"devDependencies": {
|
|
58
|
-
"@arcgis/components-build-utils": "4.32.0-next.
|
|
59
|
-
"@arcgis/lumina": "4.32.0-next.
|
|
60
|
-
"@arcgis/typescript-config": "4.32.0-next.
|
|
58
|
+
"@arcgis/components-build-utils": "4.32.0-next.2",
|
|
59
|
+
"@arcgis/lumina": "4.32.0-next.2",
|
|
60
|
+
"@arcgis/typescript-config": "4.32.0-next.2",
|
|
61
61
|
"@stencil/core": "4.20.0",
|
|
62
62
|
"@types/js-beautify": "^1",
|
|
63
63
|
"@types/mime-types": "^2",
|
|
64
64
|
"@types/node": "^20.2.5",
|
|
65
|
-
"@vitest/coverage-v8": "^2.1.
|
|
65
|
+
"@vitest/coverage-v8": "^2.1.2",
|
|
66
66
|
"concurrently": "^8.2.2",
|
|
67
67
|
"eslint": "^8.55.0",
|
|
68
|
-
"puppeteer": "^23.
|
|
68
|
+
"puppeteer": "^23.4.1",
|
|
69
69
|
"rimraf": "^5.0.0",
|
|
70
|
-
"rollup": "^4.
|
|
70
|
+
"rollup": "^4.24.0",
|
|
71
71
|
"tsup": "^8.3.0",
|
|
72
|
-
"vitest": "^2.1.
|
|
72
|
+
"vitest": "^2.1.2"
|
|
73
73
|
},
|
|
74
74
|
"peerDependencies": {
|
|
75
|
-
"@arcgis/components-controllers": "4.32.0-next.
|
|
76
|
-
"@arcgis/lumina": "4.32.0-next.
|
|
75
|
+
"@arcgis/components-controllers": "4.32.0-next.2",
|
|
76
|
+
"@arcgis/lumina": "4.32.0-next.2"
|
|
77
77
|
},
|
|
78
|
-
"gitHead": "
|
|
78
|
+
"gitHead": "8c9d6f7c0e88ea1b6ddbc00ebdb1c89069b0cbbf"
|
|
79
79
|
}
|