@arcgis/lumina-compiler 4.31.0-next.120 → 4.31.0-next.121
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 +16 -16
- package/package.json +7 -44
package/dist/index.js
CHANGED
|
@@ -1,11 +1,11 @@
|
|
|
1
|
-
import{a as N}from"./chunk-JFKSI6I7.js";import{nodeExternals as Ms}from"rollup-plugin-node-externals";function er(e){let{externalize:t=[],bundleIn:n=[],...r}=e.options?.build?.dependencies??{},i={...Ms({...r,include:[/^lit[-/]/u,/^@lit[-/]/u,/^lit$/u,...Array.isArray(t)?t.map(Zn):[]],exclude:Array.isArray(n)?n.map(Zn):[]}),configResolved(){e.isInStorybook&&(i.resolveId=void 0)}};return i}var Zn=e=>e?typeof e=="string"?new RegExp(`^${e.replace(/[.*+?^${}()|[\]\\]/gu,"\\$&")}`,"u"):e:void 0;import ua from"vite-plugin-dts";var we="customElement.js",tr="customElement.d.ts",He=new WeakMap,nr="playwright";import{path as ne}from"@arcgis/components-build-utils";import{path as Ht}from"@arcgis/components-build-utils";function rr(e,t){let r=e.sourcePath.split(Ht.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 te(e,t,n){if(!e.startsWith(t))return e;let r=e.slice(t.length),o=
|
|
1
|
+
import{a as N}from"./chunk-JFKSI6I7.js";import{nodeExternals as Ms}from"rollup-plugin-node-externals";function er(e){let{externalize:t=[],bundleIn:n=[],...r}=e.options?.build?.dependencies??{},i={...Ms({...r,include:[/^lit[-/]/u,/^@lit[-/]/u,/^lit$/u,...Array.isArray(t)?t.map(Zn):[]],exclude:Array.isArray(n)?n.map(Zn):[]}),configResolved(){e.isInStorybook&&(i.resolveId=void 0)}};return i}var Zn=e=>e?typeof e=="string"?new RegExp(`^${e.replace(/[.*+?^${}()|[\]\\]/gu,"\\$&")}`,"u"):e:void 0;import ua from"vite-plugin-dts";var we="customElement.js",tr="customElement.d.ts",He=new WeakMap,nr="playwright";import{path as ne}from"@arcgis/components-build-utils";import{path as Ht}from"@arcgis/components-build-utils";function rr(e,t){let r=e.sourcePath.split(Ht.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 te(e,t,n){if(!e.startsWith(t))return e;let r=e.slice(t.length),o=ks(r,n);return`${t}${o}`}function ks(e,t){let n=e.split(Ht.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(Ht.sep):e}else r=r[i],o+=1;return e}var or=({filePath:e,content:t},n)=>{let r=e.startsWith(n.dir.distComponents)?te(ir(e),n.dir.distComponents,n):e,o=ne.dirname(e);return{filePath:r,content:Wt(t,n,e===r?o:ne.dirname(r),o)}};function ir(e,t=".d.ts"){let r=(t===""?e:e.slice(0,-t.length)).split(ne.sep);return r.at(Fs)!==r.at(Ds)?e:ne.join(r.slice(0,-1).join(ne.sep),t===""?we:tr)}var Fs=-1,Ds=-2,As=/["']\.\.?\/[^'"]+/gu,Wt=(e,t,n,r)=>e.replaceAll(As,o=>{let i=o.slice(1);if(!i.startsWith("./")&&!i.startsWith("../"))return o;let s=ne.join(r,i),a=!i.endsWith(".js")&&!i.split("/").at(-1).includes(".")?ir(s,""):s,l=te(a,t.dir.distComponents,t);if(n===r&&s===l)return o;let p=_(n,l);return`${o[0]}${p}`}),_=(e,t)=>{let n=ne.relative(e,t);return n.startsWith(".")?n:`.${ne.sep}${n}`};import{mappedFind as Ns}from"@arcgis/components-utils";import X from"typescript";function ge(e,t){let n=$s(t.getJsDocTags()),r=X.displayPartsToString(t.getDocumentationComment(e))||void 0,o=n.at(-1);if(o?.text){let i=o?.text?.indexOf(`
|
|
2
2
|
|
|
3
3
|
`);i!==-1&&(r=`${r}${o.text.slice(i)}`,o.text=o.text.slice(0,i))}return{docsTags:n,description:r}}var We="notPublic",Q="internal",$s=e=>e.map(t=>({name:t.name.toLowerCase()===We.toLowerCase()?Q:t.name,text:t.text?.map(n=>n.text).join("")})),rt=({modifiers:e=[]},t)=>Ns(e,n=>X.isDecorator(n)&&X.isCallExpression(n.expression)&&X.isIdentifier(n.expression.expression)&&n.expression.expression.text===t?n.expression:void 0),Kt=e=>e!==void 0&&(X.isLiteralExpression(e)||e.kind===X.SyntaxKind.TrueKeyword||e.kind===X.SyntaxKind.FalseKeyword||X.isPrefixUnaryExpression(e)&&X.isLiteralExpression(e.operand));function sr(e){let t=e.split("|").filter(n=>{let r=n.trim();return r!=="undefined"&&r!=="null"}).join("|").trim();return t.length===0?e:t}import{path as Is}from"@arcgis/components-build-utils";var lr=e=>(t,n)=>[Ls,Rs,Os,js,or,Js,Bs,Hs,...e.options.types?.declarationTextTransformers??[],...e.declarationTextTransformers].reduce((r,o)=>r===!1?!1:o(r,e),{filePath:t,content:n}),Ls=(e,t)=>t.isInStorybook?!1:e,js=(e,t)=>e.filePath.endsWith(ar)&&e.filePath===Is.join(t.dir.dist,ar)?!1:e,ar="lumina.d.ts",Rs=(e,t)=>{let n=t.dir.dist,r=`${n}src/`;return e.filePath.startsWith(r)?{...e,filePath:`${n}${e.filePath.slice(r.length)}`}:!1},Ut=e=>e.includes("__test")||e.includes(".e2e.")||e.includes(".spec.")||e.includes(".test."),Os=e=>Ut(e.filePath)?!1:e,Js=e=>({filePath:e.filePath,content:e.content.replaceAll(`* @${We}`,`* @${Q}`)}),Bs=e=>e.content.includes("__esri.")?{filePath:e.filePath,content:`/// <reference types="@arcgis/core/interfaces.d.ts" />
|
|
4
|
-
${e.content}`}:e,pr=new WeakMap,Hs=(e,t)=>{let n=pr.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]))},pr.set(t,n)),{filePath:e.filePath,content:e.content.replace(n.regex,(r,o)=>n.replacements[o])}};import Ks from"typescript";import dr from"typescript";import{path as Ws}from"@arcgis/components-build-utils";var W=(e,t=!1)=>e.declarations?.filter(n=>n.kind==="class"&&(!t||"tagName"in n&&"customElement"in n))??[];function mr(e,t){return e===void 0?void 0:W(t).find(({name:r})=>r===e)}function Pe(e,t){let n=ot(t);return e.members?.find(r=>r.name===n)}function ot(e){if(!(!dr.isIdentifier(e.name)&&!dr.isStringLiteralLike(e.name)))return e.name.text}function cr(e,t,n){let r=Ws.relative(t,e);return n.modules.find(o=>o.path===r)}function it(e,t,n,r){let o={compiler:e,fileManifest:e.isInPuppeteerTestBackEnd?void 0:cr(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}),Us(n,s)}var Us=(e,t)=>Ks.factory.updateSourceFile(e,t,e.isDeclarationFile,e.referencedFiles,e.typeReferenceDirectives,e.hasNoDefaultLib,e.libReferenceDirectives),yr=e=>`${ur}${" ".repeat(e.length-ur.length-fr.length)}${fr}`,ur="/*",fr="*/";import re from"typescript";var gr=e=>e.statements.map(Gs),zs="@arcgis/lumina",Vs="LitElement",qs="PublicLitElement";function Gs(e){if(re.isImportDeclaration(e)&&re.isStringLiteral(e.moduleSpecifier)&&e.moduleSpecifier.text===zs&&e.importClause?.namedBindings&&re.isNamedImports(e.importClause.namedBindings)){let t=e.importClause.namedBindings.elements.findIndex(r=>(r.propertyName??r.name).text===Vs);if(t===-1)return e;let n=e.importClause.namedBindings.elements[t];return re.factory.updateImportDeclaration(e,e.modifiers,re.factory.updateImportClause(e.importClause,e.importClause.isTypeOnly,e.importClause.name,re.factory.updateNamedImports(e.importClause.namedBindings,[...e.importClause.namedBindings.elements.slice(0,t),re.factory.updateImportSpecifier(n,n.isTypeOnly,re.factory.createIdentifier(qs),n.name),...e.importClause.namedBindings.elements.slice(t+1)])),e.moduleSpecifier,e.attributes)}else return e}import $ from"typescript";import{isNotUndefined as ra}from"@arcgis/components-utils";import O from"typescript";import _s from"typescript";var hr=5,xr=1,Cr=1,Tr=3,br=4,st=_s;Xs(st.createSourceMapGenerator);Qs(st.createTextWriter);Ys(st.getNewLineCharacter);var he=st;function Xs(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!==hr)throw new Error(`ts.createSourceMapGenerator() signature changed. Expected ${hr} arguments. Lumina needs to be updated to support the new TypeScript version`)}function Qs(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!==xr)throw new Error(`ts.createTextWriter() signature changed. Expected ${xr} arguments. Lumina needs to be updated to support the new TypeScript version`)}function Ys(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!==Cr)throw new Error(`ts.getNewLineCharacter() signature changed. Expected ${Cr} argument. Lumina needs to be updated to support the new TypeScript version`)}function Zs(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!==Tr)throw new Error(`ts.Printer.writeFile() signature changed. Expected ${Tr} arguments. Lumina needs to be updated to support the new TypeScript version`)}function ea(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!==br)throw new Error(`ts.Printer.writeNode() signature changed. Expected ${br} arguments. Lumina needs to be updated to support the new TypeScript version`)}function Me(e){let t=vr.get(e);return t===void 0&&(t=ta(e),vr.set(e,t)),t}function ta(e){let t=he.createPrinter(e);return Zs(t.writeFile),ea(t.writeNode),t}var vr=new WeakMap;var zt="_setterTypes";function Sr(e,t,n){let r=Me(n.typeScriptConfig.options);return O.factory.createPropertyDeclaration([O.factory.createModifier(O.SyntaxKind.ReadonlyKeyword)],O.factory.createIdentifier(zt),void 0,O.factory.createTypeLiteralNode(e.map(o=>{let[i,s]=na(o.name,o.type,r,t);return O.factory.createPropertySignature(void 0,i,o.isRequired?O.factory.createToken(O.SyntaxKind.QuestionToken):void 0,s)})),void 0)}function na(e,t,n,r){let o=n.printNode(O.EmitHint.Unspecified,e,r),i=n.printNode(O.EmitHint.Unspecified,t,r),s=`declare class A { ${o}: ${i} }`,p=O.createSourceFile("a.d.ts",s,O.ScriptTarget.Latest,!1,O.ScriptKind.TS).statements[0].members[0];return[p.name,p.type]}var wr=(e,t)=>t.fileManifest===void 0?e.statements:e.statements.map(n=>oa(n,e,t));function oa(e,t,n){if($.isClassDeclaration(e)){let r=e,o=r.name?.text,i=n.fileManifest.declarations?.find(l=>l.name===o&&l.tagName);if(i===void 0)return e;let s=[],a=r.members.map(l=>ia(l,i,s)).filter(ra);return s.length>0&&a.push(Sr(s,t,n.compiler)),$.factory.updateClassDeclaration(r,r.modifiers,r.name,r.typeParameters,r.heritageClauses,a)}else return e}function ia(e,t,n){if($.isPropertyDeclaration(e)){if(Vt(e))return;let r=qt(e),o=Gt(t,r);return o===void 0?sa(t,r)===void 0?void 0:$.factory.updatePropertyDeclaration(e,Er(e.modifiers),e.name,void 0,aa(e.type),e.initializer):o.readonly?$.factory.updatePropertyDeclaration(e,Er(e.modifiers),e.name,void 0,e.type,e.initializer):e}else if($.isGetAccessor(e)||$.isSetAccessor(e)){if(Vt(e))return;let r=Gt(t,qt(e));if(r===void 0)return;if($.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($.isMethodDeclaration(e))return Vt(e)||Gt(t,qt(e))===void 0?void 0:e}var Vt=e=>e.modifiers?.some(t=>t.kind===$.SyntaxKind.StaticKeyword)??!1,qt=e=>$.isIdentifier(e.name)||$.isStringLiteralLike(e.name)?e.name.text:void 0,Gt=(e,t)=>t===void 0?void 0:e.members?.find(n=>n.name===t),sa=(e,t)=>t===void 0?void 0:e.events?.find(n=>n.name===t);function Er(e){return e?.some(n=>n.kind===$.SyntaxKind.ReadonlyKeyword)?e:[$.factory.createModifier($.SyntaxKind.ReadonlyKeyword),...e??[]]}function aa(e){if(e!==void 0)return $.isImportTypeNode(e)&&e.qualifier&&$.isIdentifier(e.qualifier)&&e.qualifier.escapedText==="EventEmitter"?$.factory.createTypeReferenceNode("CustomEvent",e.typeArguments):e}import{toSystemPathSeparators as pa}from"@arcgis/components-build-utils";var la=[gr,wr];function Pr(e){let t,n=da(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: ${pa(r)}`);let i=[];return e.typeScriptProgram.emit(o,(l,p)=>{i.push({path:l,content:p})},void 0,!0,{afterDeclarations:[n]}),i}}}var da=e=>t=>n=>it(e,t,n,[...la,...e.options.types?.declarationAstTransformers??[]]);import{path as fa}from"@arcgis/components-build-utils";var Mr=e=>new Proxy(e,{get:ma,set:ca});function ma(e,t,n){if(t in e)return Reflect.get(e,t,n);throw new Error(`Requested unexpected property ${String(t)}`)}function ca(e,t){throw new Error(`Unexpectedly tried to set the ${String(t)} property.`)}function
|
|
5
|
-
`,"\\":"\\\\",'"':'\\"',"'":"\\'","`":"\\`","\u2028":"\\u2028","\u2029":"\\u2029","\x85":"\\u0085","\r\n":"\\r\\n"}));function Dr(e){return`\\u${`0000${e.toString(ha).toUpperCase()}`.slice(-xa)}`}var ha=16,xa=4;function Ca(e,t,n){if(e.charCodeAt(0)===va){let r=n.charCodeAt(t+e.length);return r>=Sa&&r<=Ea?"\\x00":"\\0"}return ga.get(e)||Dr(e.charCodeAt(0))}var Ta=e=>e.replace(ya,Ca),
|
|
4
|
+
${e.content}`}:e,pr=new WeakMap,Hs=(e,t)=>{let n=pr.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]))},pr.set(t,n)),{filePath:e.filePath,content:e.content.replace(n.regex,(r,o)=>n.replacements[o])}};import Ks from"typescript";import dr from"typescript";import{path as Ws}from"@arcgis/components-build-utils";var W=(e,t=!1)=>e.declarations?.filter(n=>n.kind==="class"&&(!t||"tagName"in n&&"customElement"in n))??[];function mr(e,t){return e===void 0?void 0:W(t).find(({name:r})=>r===e)}function Pe(e,t){let n=ot(t);return e.members?.find(r=>r.name===n)}function ot(e){if(!(!dr.isIdentifier(e.name)&&!dr.isStringLiteralLike(e.name)))return e.name.text}function cr(e,t,n){let r=Ws.relative(t,e);return n.modules.find(o=>o.path===r)}function it(e,t,n,r){let o={compiler:e,fileManifest:e.isInPuppeteerTestBackEnd?void 0:cr(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}),Us(n,s)}var Us=(e,t)=>Ks.factory.updateSourceFile(e,t,e.isDeclarationFile,e.referencedFiles,e.typeReferenceDirectives,e.hasNoDefaultLib,e.libReferenceDirectives),yr=e=>`${ur}${" ".repeat(e.length-ur.length-fr.length)}${fr}`,ur="/*",fr="*/";import re from"typescript";var gr=e=>e.statements.map(Gs),zs="@arcgis/lumina",Vs="LitElement",qs="PublicLitElement";function Gs(e){if(re.isImportDeclaration(e)&&re.isStringLiteral(e.moduleSpecifier)&&e.moduleSpecifier.text===zs&&e.importClause?.namedBindings&&re.isNamedImports(e.importClause.namedBindings)){let t=e.importClause.namedBindings.elements.findIndex(r=>(r.propertyName??r.name).text===Vs);if(t===-1)return e;let n=e.importClause.namedBindings.elements[t];return re.factory.updateImportDeclaration(e,e.modifiers,re.factory.updateImportClause(e.importClause,e.importClause.isTypeOnly,e.importClause.name,re.factory.updateNamedImports(e.importClause.namedBindings,[...e.importClause.namedBindings.elements.slice(0,t),re.factory.updateImportSpecifier(n,n.isTypeOnly,re.factory.createIdentifier(qs),n.name),...e.importClause.namedBindings.elements.slice(t+1)])),e.moduleSpecifier,e.attributes)}else return e}import $ from"typescript";import{isNotUndefined as ra}from"@arcgis/components-utils";import O from"typescript";import _s from"typescript";var hr=5,xr=1,Cr=1,Tr=3,br=4,st=_s;Xs(st.createSourceMapGenerator);Qs(st.createTextWriter);Ys(st.getNewLineCharacter);var he=st;function Xs(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!==hr)throw new Error(`ts.createSourceMapGenerator() signature changed. Expected ${hr} arguments. Lumina needs to be updated to support the new TypeScript version`)}function Qs(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!==xr)throw new Error(`ts.createTextWriter() signature changed. Expected ${xr} arguments. Lumina needs to be updated to support the new TypeScript version`)}function Ys(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!==Cr)throw new Error(`ts.getNewLineCharacter() signature changed. Expected ${Cr} argument. Lumina needs to be updated to support the new TypeScript version`)}function Zs(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!==Tr)throw new Error(`ts.Printer.writeFile() signature changed. Expected ${Tr} arguments. Lumina needs to be updated to support the new TypeScript version`)}function ea(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!==br)throw new Error(`ts.Printer.writeNode() signature changed. Expected ${br} arguments. Lumina needs to be updated to support the new TypeScript version`)}function Me(e){let t=vr.get(e);return t===void 0&&(t=ta(e),vr.set(e,t)),t}function ta(e){let t=he.createPrinter(e);return Zs(t.writeFile),ea(t.writeNode),t}var vr=new WeakMap;var zt="_setterTypes";function Sr(e,t,n){let r=Me(n.typeScriptConfig.options);return O.factory.createPropertyDeclaration([O.factory.createModifier(O.SyntaxKind.ReadonlyKeyword)],O.factory.createIdentifier(zt),void 0,O.factory.createTypeLiteralNode(e.map(o=>{let[i,s]=na(o.name,o.type,r,t);return O.factory.createPropertySignature(void 0,i,o.isRequired?O.factory.createToken(O.SyntaxKind.QuestionToken):void 0,s)})),void 0)}function na(e,t,n,r){let o=n.printNode(O.EmitHint.Unspecified,e,r),i=n.printNode(O.EmitHint.Unspecified,t,r),s=`declare class A { ${o}: ${i} }`,p=O.createSourceFile("a.d.ts",s,O.ScriptTarget.Latest,!1,O.ScriptKind.TS).statements[0].members[0];return[p.name,p.type]}var wr=(e,t)=>t.fileManifest===void 0?e.statements:e.statements.map(n=>oa(n,e,t));function oa(e,t,n){if($.isClassDeclaration(e)){let r=e,o=r.name?.text,i=n.fileManifest.declarations?.find(l=>l.name===o&&l.tagName);if(i===void 0)return e;let s=[],a=r.members.map(l=>ia(l,i,s)).filter(ra);return s.length>0&&a.push(Sr(s,t,n.compiler)),$.factory.updateClassDeclaration(r,r.modifiers,r.name,r.typeParameters,r.heritageClauses,a)}else return e}function ia(e,t,n){if($.isPropertyDeclaration(e)){if(Vt(e))return;let r=qt(e),o=Gt(t,r);return o===void 0?sa(t,r)===void 0?void 0:$.factory.updatePropertyDeclaration(e,Er(e.modifiers),e.name,void 0,aa(e.type),e.initializer):o.readonly?$.factory.updatePropertyDeclaration(e,Er(e.modifiers),e.name,void 0,e.type,e.initializer):e}else if($.isGetAccessor(e)||$.isSetAccessor(e)){if(Vt(e))return;let r=Gt(t,qt(e));if(r===void 0)return;if($.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($.isMethodDeclaration(e))return Vt(e)||Gt(t,qt(e))===void 0?void 0:e}var Vt=e=>e.modifiers?.some(t=>t.kind===$.SyntaxKind.StaticKeyword)??!1,qt=e=>$.isIdentifier(e.name)||$.isStringLiteralLike(e.name)?e.name.text:void 0,Gt=(e,t)=>t===void 0?void 0:e.members?.find(n=>n.name===t),sa=(e,t)=>t===void 0?void 0:e.events?.find(n=>n.name===t);function Er(e){return e?.some(n=>n.kind===$.SyntaxKind.ReadonlyKeyword)?e:[$.factory.createModifier($.SyntaxKind.ReadonlyKeyword),...e??[]]}function aa(e){if(e!==void 0)return $.isImportTypeNode(e)&&e.qualifier&&$.isIdentifier(e.qualifier)&&e.qualifier.escapedText==="EventEmitter"?$.factory.createTypeReferenceNode("CustomEvent",e.typeArguments):e}import{toSystemPathSeparators as pa}from"@arcgis/components-build-utils";var la=[gr,wr];function Pr(e){let t,n=da(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: ${pa(r)}`);let i=[];return e.typeScriptProgram.emit(o,(l,p)=>{i.push({path:l,content:p})},void 0,!0,{afterDeclarations:[n]}),i}}}var da=e=>t=>n=>it(e,t,n,[...la,...e.options.types?.declarationAstTransformers??[]]);import{path as fa}from"@arcgis/components-build-utils";var Mr=e=>new Proxy(e,{get:ma,set:ca});function ma(e,t,n){if(t in e)return Reflect.get(e,t,n);throw new Error(`Requested unexpected property ${String(t)}`)}function ca(e,t){throw new Error(`Unexpectedly tried to set the ${String(t)} property.`)}function kr(e){let t=e.options.types??{},n=!1,r={...t?.compilerOptions,rootDir:"."},o=ua({...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:lr(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??[],Pr(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(Mr({}),"",fa.join(e.dir.src,"__fakeFile.ts")),!n)throw new Error("Expected resolver to get called")}}}import{isNotUndefined as vm}from"@arcgis/components-utils";var ya=/\r\n|[\\`\u0000-\u001f\t\v\f\b\r\u2028\u2029\u0085]/gu,ga=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 Dr(e){return`\\u${`0000${e.toString(ha).toUpperCase()}`.slice(-xa)}`}var ha=16,xa=4;function Ca(e,t,n){if(e.charCodeAt(0)===va){let r=n.charCodeAt(t+e.length);return r>=Sa&&r<=Ea?"\\x00":"\\0"}return ga.get(e)||Dr(e.charCodeAt(0))}var Ta=e=>e.replace(ya,Ca),Fr=/[^\u0000-\u007F]/g;function ba(e){return e=Ta(e),Fr.test(e)?e.replace(Fr,t=>Dr(t.charCodeAt(0))):e}var Ar=ba,va=0,Sa=48,Ea=57,wa=/\$\{/gu,Nr=e=>e.replace(wa,"\\${");function $r(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,l=o?e.trimStart():e;return a?l.trimEnd():l}return e.trim().length===0?t:e}var xe=e=>Nr(Ar(e)),Ir=e=>!Pa.test(e),Pa=/^[^\s"'=<>`]+$/u,Ma=/[&<>]/gu,
|
|
8
|
+
`),a=e.slice(i+1).trim().length===0,l=o?e.trimStart():e;return a?l.trimEnd():l}return e.trim().length===0?t:e}var xe=e=>Nr(Ar(e)),Ir=e=>!Pa.test(e),Pa=/^[^\s"'=<>`]+$/u,Ma=/[&<>]/gu,ka={"&":"&","<":"<",">":">"},at=e=>e.replace(Ma,t=>ka[t]);import R from"typescript";import{path as Qt,toSystemPathSeparators as Na,retrievePackageJson as $a}from"@arcgis/components-build-utils";import{isNotUndefined as Fa}from"@arcgis/components-utils";import{readdir as Da}from"node:fs/promises";import{path as Ke}from"@arcgis/components-build-utils";var Lr=async e=>Object.fromEntries((await e.componentFilesPromise).map(t=>[_t(t),t])),_t=(e,t=Ke.resolve("src"))=>Ke.relative(t,Ke.join(e,"..",we.slice(0,-3))),Ue=async(e,t,n=t)=>await Da(n,{recursive:!0}).then(r=>{let o=r.map(i=>{if(!i.endsWith(".tsx"))return;let s=Ke.join(n,i);return oe(s,t)?s:void 0}).filter(Fa);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 oe(e,t){if(!e.startsWith(t)||!e.endsWith(".tsx"))return!1;let[n,r]=e.slice(0,-4).split(Ke.sep).slice(Aa);return n===r}var Aa=-2;function jr(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 Zt="@arcgis/lumina:addPropMetadata";function lt(e){let t=R.isUnionTypeNode(e)?e.types.map(pt):[pt(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(jr)}var dt=e=>e.map(t=>t.raw).join(" | ");function pt(e){Ia.writeNode(R.EmitHint.Unspecified,e,void 0,Xt);let t=Xt.getText();return Xt.clear(),t}var Ia=Me({removeComments:!0}),Xt=he.createTextWriter(`
|
|
9
9
|
`),La=R.TypeFormatFlags.NoTruncation|R.TypeFormatFlags.WriteArrayAsGenericType|R.TypeFormatFlags.SuppressAnyReturnType|R.TypeFormatFlags.MultilineObjectLiterals|R.TypeFormatFlags.InTypeAlias|R.TypeFormatFlags.InElementType,ja=La&R.TypeFormatFlags.NodeBuilderFlagsMask,Ra=ja|R.NodeBuilderFlags.IgnoreErrors|R.NodeBuilderFlags.NoTruncation;function Oa(e,t,n){let r=new Map;Yt(t,r,n);let o=e.typeToTypeNode(t,void 0,Ra);return r.forEach(Ja),o===void 0?(console.error("Failed to convert type to type node."),R.factory.createTypeReferenceNode(R.factory.createIdentifier("unknown"),void 0)):o}function Ce(e,t,n,r){let o=[],i=new Set;return{typeNode:Oa(e,t,(a,l)=>{if(!a.symbol)return;let p=l?a.aliasTypeArguments?.[0]?.symbol?.escapedName??"":a.symbol.name;if(i.has(p)||p.startsWith("_"))return;let d=l?{name:p,package:void 0,module:"index.js"}:Ba(a.symbol,p,n,r);o.push(d),i.add(p)}),references:o}}function Yt(e,t,n){if(typeof e!="object"||e===null||!("checker"in e))return;let r=e;if(t.has(r))return;let o=(r.flags&R.TypeFlags.Object)!==0&&(r.aliasTypeArguments?.[0]?.objectFlags??0&R.ObjectFlags.Class)!==0&&r.aliasSymbol?.escapedName==="ToElement";if(n?.(r,o),o)t.set(r,{origin:void 0,aliasSymbol:void 0,aliasTypeArguments:void 0});else{let i=r.origin,s=r.aliasSymbol,a=r.aliasTypeArguments;i&&(r.origin=void 0),s&&(r.aliasSymbol=void 0),a&&(r.aliasTypeArguments=void 0),t.set(r,{origin:i,aliasSymbol:s,aliasTypeArguments:a})}Object.entries(r).forEach(([i,s])=>{(i.includes("type")||i.includes("Type")||i==="constraint")&&i!=="resolvedBaseConstructorType"&&i!=="resolvedBaseTypes"&&i!=="typeParameters"&&i!=="typeParameter"&&(Array.isArray(s)?s.forEach(a=>Yt(a,t,n)):Yt(s,t,n))})}function Ja(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 Ba(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(`${Zt} Unable to resolve the declaration file name for type ${t} in ${Na(n.fileName)}`)}if(o.length===0)return{name:t,package:en,module:void 0};let{packageName:i,moduleName:s}=Ha(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 en="global:";function Ha(e,t){let n=e.split("/node_modules/");if(n.length>1){let s=n.at(-1);return tn(s)}let o=e.split("/dist/");if(o.length>1){let s=o.slice(0,-1).join("/"),l=$a(s).name,p=o.at(-1);return{packageName:l,moduleName:p}}return{packageName:void 0,moduleName:Qt.relative(t.root,Ka(Wa(e,t)))}}function Wa(e,t){return oe(e,t.srcComponents)?Qt.join(t.dist,_t(e,t.src)):e.startsWith(t.src)?Qt.join(t.dist,e.slice(t.src.length)):e}var Ka=e=>e.endsWith(".js")?e:`${e.endsWith(".ts")?e.slice(0,-3):e.endsWith(".tsx")?e.slice(0,-4):e}.d.ts`;function tn(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 Rr=e=>e.includes("/node_modules/")||e.includes("/dist/");import{getCwd as Or,path as Jr,toSystemPathSeparators as nn}from"@arcgis/components-build-utils";var Ua=["css","less","sass","scss","styl","stylus","pcss","postcss","sss"],Br=new RegExp(`\\.(${Ua.join("|")})(\\?|$)`,"u"),za=/^import ["'](?<specifier>[^"']+)["'];$/gmu,Va=()=>"throwError",Hr="@arcgis/lumina:loadLitCss",ie="?layered",ze="?global",Wr=e=>({name:Hr,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(ie);a&&(s=s.slice(0,-ie.length));let l=s.endsWith(ze);if(l&&(s=s.slice(0,-ze.length)),!Br.test(s)||s.includes("?"))return await r.call(this,i,s);let p=`${s}?inline`,d=await r.call(this,i,p),{code:m,...f}=typeof d=="string"?{code:d}:d??{};return typeof m!="string"||!m.startsWith(Kr)||!m.endsWith(Ur)?(console.warn(`${Hr} Expected vite:css-post to return a JS module with a string literal for ${nn(s)}.`),console.log(d),d):l?(e.globalCssString=zr(m),{code:"",map:{mappings:""}}):{...f,code:Xa(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=Rr(n);return{code:t.replaceAll(za,(a,l)=>{if(!Br.test(l)||l.includes("?"))return a;if(i){if((e.options.css?.sideEffectImportHandling??Va)(l,n)==="drop")return yr(a);{let m=nn(Jr.relative(Or(),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&&Ya(n,e)){let p=`storybookCss$${o}`;return o+=1,["import ",p," from ",a.slice(6),`
|
|
10
10
|
`,"document.adoptedStyleSheets = [...document.adoptedStyleSheets, ",p,".styleSheet];"].join("")}else{if(l.endsWith(ze))return a;{let p=nn(Jr.relative(Or(),n));throw new Error(`Found a side-effect CSS import \`${a}\` in "${p}". 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}}}),Kr='export default "',Ur='"',qa="import { css } from '@lit/reactive-element/css-tag.js';\nexport const styles = css`",Ga="`;\nexport default styles;",_a=`
|
|
11
11
|
|
|
@@ -21,7 +21,7 @@ if(import.meta.hot) {
|
|
|
21
21
|
}`,zr=e=>e.slice(Kr.length,-Ur.length);function Xa(e,t,n,r){let i=zr(e).replaceAll('\\"','"').replaceAll("`","\\`"),s=xe(Qa(i)),a=r?`@layer{${n?"":`
|
|
22
22
|
`}${s}${n?"":`
|
|
23
23
|
`}}`:s;return`${qa}${a}${Ga}${t?_a:""}`}var Qa=e=>e.replaceAll("\\n",`
|
|
24
|
-
`),Ya=(e,t)=>e.endsWith(".mdx")||e.includes(".stories.")||e.includes(".story.")||e.startsWith(`${t.dir.root}stories/`);import{camelToKebab as up}from"@arcgis/components-utils";import{lazyMetaSubItemJoiner as fp,lazyMetaItemJoiner as pn,lazyMetaGroupJoiner as yp}from"@arcgis/lumina/config";import{create as Za}from"@custom-elements-manifest/analyzer/src/browser-entrypoint.js";import ep from"typescript";import{path as Te}from"@arcgis/components-build-utils";import{isNotUndefined as tp,kebabToPascal as np,uncapitalize as rp}from"@arcgis/components-utils";var
|
|
24
|
+
`),Ya=(e,t)=>e.endsWith(".mdx")||e.includes(".stories.")||e.includes(".story.")||e.startsWith(`${t.dir.root}stories/`);import{camelToKebab as up}from"@arcgis/components-utils";import{lazyMetaSubItemJoiner as fp,lazyMetaItemJoiner as pn,lazyMetaGroupJoiner as yp}from"@arcgis/lumina/config";import{create as Za}from"@custom-elements-manifest/analyzer/src/browser-entrypoint.js";import ep from"typescript";import{path as Te}from"@arcgis/components-build-utils";import{isNotUndefined as tp,kebabToPascal as np,uncapitalize as rp}from"@arcgis/components-utils";var ke="@arcgis/lumina-compiler",qr="4.31.0-next.121";function rn(e,t,n){e.modules.sort((s,a)=>{let l=s.fileName.split("/"),p=l.pop(),d=l.join("/"),m=a.fileName.split("/"),f=m.pop(),c=m.join("/");return d===c?p<f?-1:1:d.startsWith(c)?1:c.startsWith(d)||d<c?-1:1});let r=Za(e);r.modules.forEach(s=>{s.path=Te.relative(t.dir.root,s.path),s.exports?.forEach(a=>{typeof a.declaration.module=="string"&&(a.declaration.module=Te.relative(t.dir.root,a.declaration.module))})});let o={timestamp:new Date().toISOString().split(".")[0],compiler:{name:ke,version:qr,typescriptVersion:ep.version},...r};n||(t.componentPathMapping={});let i=o.modules.flatMap(s=>W(s,!0).map(a=>{a.sourcePath=s.path;let l=rr(a,t);return a.importPath=["components",l].join(Te.sep),a.typeName=`HTML${np(a.tagName)}Element`,a}));return n?r:(t.manifest=o,t.manifestComponents=i,t.viteCommand==="build"?t.manifestComponents.forEach(s=>{op(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 on=new Set(["componentOnReady"]);function op(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(p=>p.kind==="field"&&p.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(tp),e.members?.forEach(r=>{if(r.kind==="field"){let s=r;s.isAttributeEligible=void 0}if(Gr(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=rp(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!");
|
|
@@ -42,7 +42,7 @@ if(import.meta.hot) {
|
|
|
42
42
|
${Array.from(new Set(e)).map(t=>` "/${t}",`).join(`
|
|
43
43
|
`)}
|
|
44
44
|
], handleHmrUpdate);
|
|
45
|
-
}`;import be from"typescript";import K from"typescript";import{isNotUndefined as bp}from"@arcgis/components-utils";import{defaultEventBubbles as to,defaultEventCancelable as no,defaultEventComposed as ro}from"@arcgis/lumina/config";function oo(e,t,n,r,o){let i=n.getProperty("emit");if(!i?.valueDeclaration)return;let s=i.valueDeclaration,p=e.getTypeOfSymbolAtLocation(i,s).getCallSignatures().map(m=>{let f=m.getReturnType();if(f.symbol?.name!=="CustomEvent")return;let c=e.getTypeArguments(f)?.at(0);if(c===void 0)return{original:"any",resolved:"any",references:[]};let{typeNode:y,references:x}=Ce(e,c,r,o),u=pt(y);return{original:u,resolved:u,references:x}}).filter(bp);if(p.length===0)return;let d=vp(r,t);return{...Sp(p),...d}}var mt="createEvent";function vp(e,t){if(!K.isIdentifier(t.name)&&!K.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:no,bubbles:to,composed:ro};if(!t.initializer||!K.isCallExpression(t.initializer))return r;let o=t.initializer;if(!K.isIdentifier(o.expression)||o.expression.text!==mt)return r;let i=o.arguments[0];if(!i)return r;if(!K.isObjectLiteralExpression(i))throw new Error(`Expected object literal expression as first argument of ${mt}(). Found ${n} = createEvent(${i.getText(e)})`);if(i.properties.some(s=>K.isSpreadAssignment(s)))throw new Error(`Unexpected spread syntax in ${mt}() argument. ${mt}() arguments must be statically parsable at compile time`);return r.cancelable=Ve(i,"cancelable")??no,r.bubbles=Ve(i,"bubbles")??to,r.composed=Ve(i,"composed")??ro,r}function Ve(e,t){let n=e.properties.find(o=>K.isPropertyAssignment(o)&&K.isIdentifier(o.name)&&o.name.text===t);if(n===void 0)return;if(!K.isPropertyAssignment(n))throw new Error(`Expected boolean literal as ${t} property. Found ${n.getText()}`);let r=n.initializer;if(r.kind===K.SyntaxKind.TrueKeyword)return!0;if(r.kind===K.SyntaxKind.FalseKeyword)return!1;throw new Error(`Expected boolean literal as ${t} property. Found ${n.getText()}`)}var Sp=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 io=(e,t,n,r)=>{let o=be.isSetAccessor(r)?r.parameters[0]:r,i=n.getSourceFile(),s=e.getTypeAtLocation(o),{typeNode:a,references:l}=Ce(e,s,i,t),p=be.isGetAccessor(r)||be.isSetAccessor(r)?void 0:oo(e,r,s,i,t);if(p)return p;let d=rt(n,"property");if(!d)return;let m=lt(a),f=dt(m),c=o.type?Ep(o.type.getText(i)):f,y=o.questionToken!==void 0;return{isReadonly:wp(d),original:y&&!c.includes("null")&&!c.includes("undefined")&&!c.includes("Nil")?`${c} | undefined`:c,resolved:f,references:l,values:m.map(({raw:x,...u})=>u),isAttributeEligible:Pp(d,m)}},Ep=e=>e.startsWith("| ")?e.slice(2):e;function wp(e){let t=e.arguments[0];return!t||!be.isObjectLiteralExpression(t)?!1:Ve(t,"readOnly")??!1}function Pp(e,t){let n=dn(t),r=e.arguments[0];return!r||!be.isObjectLiteralExpression(r)?n:r.properties.some(i=>be.isPropertyAssignment(i)&&be.isIdentifier(i.name)&&(i.name.text==="type"||i.name.text==="converter"||i.name.text==="attribute"))||n}var dn=e=>e.some(t=>t.type==="number"||t.type==="boolean"||t.type==="string");import se from"typescript";function so(e){return{name:Zt,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=Pe(i,n);if(a===void 0||a.kind!=="field")return;let l=e.typeScriptTypeChecker,p=l.getSymbolAtLocation(n.name),d=p===void 0?{}:ge(l,p);a.description=d.description??a.description;let m=se.isGetAccessor(n)?p?.declarations?.find(se.isSetAccessor)??n:n,f=io(l,e.dir,n,m);if(!(typeof f=="object")){let u=o.lastAccessors[a.name];if(u!==void 0)if(u===n){if("original"in a.type)return}else return;let C=i.members.indexOf(a);i.members.splice(C,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 y=d.docsTags?.some(u=>u.name==="readonly")??!1,x=f.isReadonly||o.lonelyGetters.has(a.name);if(n.questionToken&&(a.hasQuestionToken=!0),a.type={text:f.resolved,original:f.original,values:f.values,references:[...a.type?.references??[],...f.references]},m!==n&&se.isSetAccessor(m)&&se.isGetAccessor(n)){let u=n.type,h=m.parameters[0].type?.getText(),b=u?.getText();h!==b&&b!==void 0&&(a.getterType={text:b,original:b,values:[{type:b}]})}if(a.default&&"initializer"in n&&n.initializer&&!Kt(ao(n.initializer))&&!d.docsTags?.some(u=>u.name==="default")&&(a.default=void 0),"eventName"in f){s.push(f);return}if(!y&&!x&&!d.docsTags?.some(u=>u.name==="required")&&(a.type.text=sr(a.type.text),a.type.values)){let u=a.type.values.filter(C=>C.type!=="null"&&C.type!=="undefined");u.length>0&&(a.type.values=u)}if(a.isAttributeEligible=f.isAttributeEligible,"initializer"in n&&n.initializer&&(!a.default||!a.description)){let u=n.initializer,C=l.getSymbolAtLocation(u),h=C!==void 0&&(C.flags??0)&se.SymbolFlags.Alias?l.getAliasedSymbol(C):C,b=h?.getDeclarations()??[];if(h){let A=ge(l,h);if(A.description&&(a.description||=A?.description),(A.docsTags?.length??0)>0){let B=new Set(d.docsTags?.map(F=>F.name));d.docsTags=[...d.docsTags??[],...A.docsTags?.filter(F=>F.name==="default"?(a.default||(a.default=F.text),!1):!B.has(F.name))??[]]}}b.forEach(A=>{if(!("initializer"in A))return;let B=A;if(y||=B.modifiers?.some(F=>F.kind===se.SyntaxKind.ReadonlyKeyword)??!1,!a.default){let F=B.initializer;Kt(F)&&(a.default=F.getText(B.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),y||x?a.readonly=!0:a.readonly=void 0,y&&!x&&(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:l,composed:p})=>{let d=i.findIndex(b=>b.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(b=>b.name===s))throw new Error(`Event ${s} included in ${r.name} twice`);let{default:c,kind:y,static:x,type:u,...C}=m;if(u===void 0)throw new Error(`Event property ${s} in ${r.name} is missing a type`);let h={...C,name:s,type:u,bubbles:a,cancelable:l,composed:p};r.events.push(h)})})}}}function ao(e){return se.isSatisfiesExpression(e)||se.isParenthesizedExpression(e)?ao(e.expression):e}import ve from"typescript";import{toSystemPathSeparators as Mp}from"@arcgis/components-build-utils";var mn="@arcgis/lumina:addMethodMetadata";function po(e){return{name:mn,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=Pe(s,t);if(!(a===void 0||a.kind!=="method")){if(!rt(t,"method")){let l=s.members.indexOf(a);s.members.splice(l,1);return}if(e.viteCommand==="build"){let l=e.typeScriptTypeChecker,p=Fp(t,a.parameters,l,i,e.dir);a.description=p?.description??a.description,a.docsTags=p?.docsTags,a.type=p?.type??{signature:`()=>${a.return?.type?.text??"void"}`,references:[]}}Dp(t)&&(a.async=!0)}}}}function Fp(e,t,n,r,o){let i=n.getSignatureFromDeclaration(e);if(i===void 0)return;e.parameters.forEach(p=>{let d=p.name;if(!ve.isIdentifier(d)){console.warn(`${mn}: Object binding patterns are not yet supported in the docs. Found ${d?.getText()} in ${e.name.getText()} in ${Mp(r.fileName)}`);return}let m=t?.find(C=>C.name===d.text);if(!m){console.warn(`${mn}: Unable to find the parameter ${d?.getText()} for ${e.name.getText()} in the manifest`);return}let f=n.getTypeAtLocation(p),{typeNode:c,references:y}=Ce(n,f,r,o),x=lt(c),u={original:m.type?.text??p.type?.getText(r)??"unknown",text:dt(x),references:y,values:void 0};m.type=u});let s=n.getReturnTypeOfSignature(i),a=Ce(n,s,r,o),l=n.signatureToString(i,e,kp,ve.SignatureKind.Call);return{...ge(n,i),type:{signature:l,references:a.references}}}var kp=ve.TypeFormatFlags.WriteArrowStyleSignature|ve.TypeFormatFlags.NoTruncation|ve.TypeFormatFlags.MultilineObjectLiterals|ve.TypeFormatFlags.InTypeAlias,Dp=e=>e.modifiers?.some?.(t=>t.kind===ve.SyntaxKind.AsyncKeyword)??!1;import{camelToKebab as lo}from"@arcgis/components-utils";function mo(e){e.members?.forEach(t=>{"attribute"in t&&typeof t.attribute=="string"&&t.attribute.toLowerCase()!==t.attribute&&(t.attribute=lo(t.attribute))}),e.attributes?.forEach(t=>{"name"in t&&typeof t.name=="string"&&t.name.toLowerCase()!==t.name&&(t.name=lo(t.name))})}import qe from"typescript";import{path as co}from"@arcgis/components-build-utils";function uo(e){return{name:"@arcgis/lumina:addComponentMetadata",analyzePhase({moduleDoc:t,node:n,ts:r,context:o}){if(!r.isClassDeclaration(n))return;let i=mr(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 l=new Set;if(s.lonelyGetters=new Set,n.members.forEach(p=>{if(qe.isAccessor(p)){let d=p.name.getText();s.lastAccessors[d]=p,qe.isSetAccessor(p)?(l.add(d),s.lonelyGetters.delete(d)):l.has(d)||s.lonelyGetters.add(d)}a||=e.viteCommand==="build"&&qe.isPropertyDeclaration(p)&&qe.isIdentifier(p.name)&&p.name.text==="shadowRootOptions"&&p.initializer!==void 0&&qe.isIdentifier(p.initializer)&&p.initializer.text==="noShadowRoot"}),i.members=i.members?.filter(Ap),i.members?.forEach(p=>{p.name=ct(p.name),"attribute"in p&&typeof p.attribute=="string"&&(p.attribute=ct(p.attribute))}),i.attributes?.forEach(p=>{p.name=ct(p.name),typeof p.fieldName=="string"&&(p.fieldName=ct(p.fieldName))}),e.viteCommand==="build"){let p=e.typeScriptTypeChecker,d=i,m=n.name===void 0?void 0:p.getSymbolAtLocation(n.name),f=m===void 0?void 0:ge(p,m);d.description=f?.description??d.description,d.docsTags=f?.docsTags?.filter(c=>c.name!=="cssprop"&&c.name!=="cssproperty"&&c.name!=="csspart"&&c.name!=="slot"),d.encapsulation=a?"none":"shadow"}},moduleLinkPhase({moduleDoc:t}){W(t).forEach(n=>{mo(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&&co.isAbsolute(n.superclass.module)&&(n.superclass.module=co.relative(e.dir.root,n.superclass.module))})}}}function ct(e){return e.startsWith("'")||e.startsWith('"')?e.slice(1,-1):e.startsWith('\\"')||e.startsWith("\\'")?e.slice(2,-1*2):e}var Ap=e=>!e.name.startsWith("_")&&!e.static&&e.privacy!=="private"&&e.privacy!=="protected";import{litPlugin as gl}from"@custom-elements-manifest/analyzer/src/browser-entrypoint.js";import hl from"typescript";import z from"typescript";var fo="Fragment",ut="DynamicHtmlTag",ft="DynamicSvgTag",ke=Symbol("dynamic html tag name"),Ge=Symbol("dynamic svg tag name"),yo=!0,yt=new Set(["id","class","tabIndex","role","itemProp","itemScope","itemType","itemId","itemRef","about","datatype","inlist","property","resource","typeof","vocab"]),gt=new Set(["width","height","href","hreflang","form","download","rowSpan","colSpan","viewBox","src","exportParts","hreflang","media"]),_e={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"])},U={common:{normal:{translate:"translate",hidden:"hidden",inert:"inert",draggable:"draggable",spellcheck:"spellcheck",contentEditable:"contenteditable",popover:"popover",autofocus:"autofocus",tabIndex:"tabindex",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",dir:"dir",accessKey:"accesskey",autocapitalize:"autocapitalize",enterKeyHint:"enterkeyhint",inputMode:"inputmode",virtualKeyboardPolicy:"virtualkeyboardpolicy",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:{normal:{width:"width",height:"height"}},caption:{stringified:{align:"align"}},col:{normal:{span:"span"},stringified:{align:"align",ch:"char",chOff:"charoff",vAlign:"valign",width:"width"}},colgroup:{normal:{span:"span"},stringified:{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",maxLength:"maxlength",minLength:"minlength",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",min:"min",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",start:"start",compact:"compact"},stringified:{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:{colSpan:"colspan",rowSpan:"rowspan",noWrap:"nowrap"},stringified:{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",maxLength:"maxlength",minLength:"minlength",readOnly:"readonly",required:"required",rows:"rows"},stringified:{autocomplete:"autocomplete",dirName:"dirname",name:"name",placeholder:"placeholder",wrap:"wrap"}},tfoot:{stringified:{align:"align",ch:"char",chOff:"charoff",vAlign:"valign"}},th:{normal:{colSpan:"colspan",rowSpan:"rowspan",noWrap:"nowrap"},stringified:{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"]};go(U.common);Object.values(U.perElement).forEach(go);function go(e){e?.normal&&(e.normal=Object.assign(Object.create(null),e.normal)),e?.stringified&&(e.stringified=Object.assign(Object.create(null),e.stringified))}var cn=new Set(["itemScope"]),ht=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"]),ho=new Set(["area","base","br","col","command","embed","hr","img","input","keygen","link","meta","param","source","track","wbr"]),De=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"]),xo=new Set(["title","svg","a","script","style"]),Ae=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"]),Ne=new Set(["annotation-xml","color-profile","font-face","font-face-src","font-face-uri","font-face-format","font-face-name","missing-glyph"]);import{path as un,toSystemPathSeparators as So}from"@arcgis/components-build-utils";var Co="customElement",xt=new WeakMap,Eo=e=>({name:"@arcgis/lumina:addCustomElementDecorator",initialize(){xt.has(e)||xt.set(e,{}),e.declarationTextTransformers.includes(To)||e.declarationTextTransformers.push(To)},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 be from"typescript";import K from"typescript";import{isNotUndefined as bp}from"@arcgis/components-utils";import{defaultEventBubbles as to,defaultEventCancelable as no,defaultEventComposed as ro}from"@arcgis/lumina/config";function oo(e,t,n,r,o){let i=n.getProperty("emit");if(!i?.valueDeclaration)return;let s=i.valueDeclaration,p=e.getTypeOfSymbolAtLocation(i,s).getCallSignatures().map(m=>{let f=m.getReturnType();if(f.symbol?.name!=="CustomEvent")return;let c=e.getTypeArguments(f)?.at(0);if(c===void 0)return{original:"any",resolved:"any",references:[]};let{typeNode:y,references:x}=Ce(e,c,r,o),u=pt(y);return{original:u,resolved:u,references:x}}).filter(bp);if(p.length===0)return;let d=vp(r,t);return{...Sp(p),...d}}var mt="createEvent";function vp(e,t){if(!K.isIdentifier(t.name)&&!K.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:no,bubbles:to,composed:ro};if(!t.initializer||!K.isCallExpression(t.initializer))return r;let o=t.initializer;if(!K.isIdentifier(o.expression)||o.expression.text!==mt)return r;let i=o.arguments[0];if(!i)return r;if(!K.isObjectLiteralExpression(i))throw new Error(`Expected object literal expression as first argument of ${mt}(). Found ${n} = createEvent(${i.getText(e)})`);if(i.properties.some(s=>K.isSpreadAssignment(s)))throw new Error(`Unexpected spread syntax in ${mt}() argument. ${mt}() arguments must be statically parsable at compile time`);return r.cancelable=Ve(i,"cancelable")??no,r.bubbles=Ve(i,"bubbles")??to,r.composed=Ve(i,"composed")??ro,r}function Ve(e,t){let n=e.properties.find(o=>K.isPropertyAssignment(o)&&K.isIdentifier(o.name)&&o.name.text===t);if(n===void 0)return;if(!K.isPropertyAssignment(n))throw new Error(`Expected boolean literal as ${t} property. Found ${n.getText()}`);let r=n.initializer;if(r.kind===K.SyntaxKind.TrueKeyword)return!0;if(r.kind===K.SyntaxKind.FalseKeyword)return!1;throw new Error(`Expected boolean literal as ${t} property. Found ${n.getText()}`)}var Sp=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 io=(e,t,n,r)=>{let o=be.isSetAccessor(r)?r.parameters[0]:r,i=n.getSourceFile(),s=e.getTypeAtLocation(o),{typeNode:a,references:l}=Ce(e,s,i,t),p=be.isGetAccessor(r)||be.isSetAccessor(r)?void 0:oo(e,r,s,i,t);if(p)return p;let d=rt(n,"property");if(!d)return;let m=lt(a),f=dt(m),c=o.type?Ep(o.type.getText(i)):f,y=o.questionToken!==void 0;return{isReadonly:wp(d),original:y&&!c.includes("null")&&!c.includes("undefined")&&!c.includes("Nil")?`${c} | undefined`:c,resolved:f,references:l,values:m.map(({raw:x,...u})=>u),isAttributeEligible:Pp(d,m)}},Ep=e=>e.startsWith("| ")?e.slice(2):e;function wp(e){let t=e.arguments[0];return!t||!be.isObjectLiteralExpression(t)?!1:Ve(t,"readOnly")??!1}function Pp(e,t){let n=dn(t),r=e.arguments[0];return!r||!be.isObjectLiteralExpression(r)?n:r.properties.some(i=>be.isPropertyAssignment(i)&&be.isIdentifier(i.name)&&(i.name.text==="type"||i.name.text==="converter"||i.name.text==="attribute"))||n}var dn=e=>e.some(t=>t.type==="number"||t.type==="boolean"||t.type==="string");import se from"typescript";function so(e){return{name:Zt,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=Pe(i,n);if(a===void 0||a.kind!=="field")return;let l=e.typeScriptTypeChecker,p=l.getSymbolAtLocation(n.name),d=p===void 0?{}:ge(l,p);a.description=d.description??a.description;let m=se.isGetAccessor(n)?p?.declarations?.find(se.isSetAccessor)??n:n,f=io(l,e.dir,n,m);if(!(typeof f=="object")){let u=o.lastAccessors[a.name];if(u!==void 0)if(u===n){if("original"in a.type)return}else return;let C=i.members.indexOf(a);i.members.splice(C,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 y=d.docsTags?.some(u=>u.name==="readonly")??!1,x=f.isReadonly||o.lonelyGetters.has(a.name);if(n.questionToken&&(a.hasQuestionToken=!0),a.type={text:f.resolved,original:f.original,values:f.values,references:[...a.type?.references??[],...f.references]},m!==n&&se.isSetAccessor(m)&&se.isGetAccessor(n)){let u=n.type,h=m.parameters[0].type?.getText(),b=u?.getText();h!==b&&b!==void 0&&(a.getterType={text:b,original:b,values:[{type:b}]})}if(a.default&&"initializer"in n&&n.initializer&&!Kt(ao(n.initializer))&&!d.docsTags?.some(u=>u.name==="default")&&(a.default=void 0),"eventName"in f){s.push(f);return}if(!y&&!x&&!d.docsTags?.some(u=>u.name==="required")&&(a.type.text=sr(a.type.text),a.type.values)){let u=a.type.values.filter(C=>C.type!=="null"&&C.type!=="undefined");u.length>0&&(a.type.values=u)}if(a.isAttributeEligible=f.isAttributeEligible,"initializer"in n&&n.initializer&&(!a.default||!a.description)){let u=n.initializer,C=l.getSymbolAtLocation(u),h=C!==void 0&&(C.flags??0)&se.SymbolFlags.Alias?l.getAliasedSymbol(C):C,b=h?.getDeclarations()??[];if(h){let A=ge(l,h);if(A.description&&(a.description||=A?.description),(A.docsTags?.length??0)>0){let B=new Set(d.docsTags?.map(k=>k.name));d.docsTags=[...d.docsTags??[],...A.docsTags?.filter(k=>k.name==="default"?(a.default||(a.default=k.text),!1):!B.has(k.name))??[]]}}b.forEach(A=>{if(!("initializer"in A))return;let B=A;if(y||=B.modifiers?.some(k=>k.kind===se.SyntaxKind.ReadonlyKeyword)??!1,!a.default){let k=B.initializer;Kt(k)&&(a.default=k.getText(B.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),y||x?a.readonly=!0:a.readonly=void 0,y&&!x&&(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:l,composed:p})=>{let d=i.findIndex(b=>b.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(b=>b.name===s))throw new Error(`Event ${s} included in ${r.name} twice`);let{default:c,kind:y,static:x,type:u,...C}=m;if(u===void 0)throw new Error(`Event property ${s} in ${r.name} is missing a type`);let h={...C,name:s,type:u,bubbles:a,cancelable:l,composed:p};r.events.push(h)})})}}}function ao(e){return se.isSatisfiesExpression(e)||se.isParenthesizedExpression(e)?ao(e.expression):e}import ve from"typescript";import{toSystemPathSeparators as Mp}from"@arcgis/components-build-utils";var mn="@arcgis/lumina:addMethodMetadata";function po(e){return{name:mn,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=Pe(s,t);if(!(a===void 0||a.kind!=="method")){if(!rt(t,"method")){let l=s.members.indexOf(a);s.members.splice(l,1);return}if(e.viteCommand==="build"){let l=e.typeScriptTypeChecker,p=kp(t,a.parameters,l,i,e.dir);a.description=p?.description??a.description,a.docsTags=p?.docsTags,a.type=p?.type??{signature:`()=>${a.return?.type?.text??"void"}`,references:[]}}Dp(t)&&(a.async=!0)}}}}function kp(e,t,n,r,o){let i=n.getSignatureFromDeclaration(e);if(i===void 0)return;e.parameters.forEach(p=>{let d=p.name;if(!ve.isIdentifier(d)){console.warn(`${mn}: Object binding patterns are not yet supported in the docs. Found ${d?.getText()} in ${e.name.getText()} in ${Mp(r.fileName)}`);return}let m=t?.find(C=>C.name===d.text);if(!m){console.warn(`${mn}: Unable to find the parameter ${d?.getText()} for ${e.name.getText()} in the manifest`);return}let f=n.getTypeAtLocation(p),{typeNode:c,references:y}=Ce(n,f,r,o),x=lt(c),u={original:m.type?.text??p.type?.getText(r)??"unknown",text:dt(x),references:y,values:void 0};m.type=u});let s=n.getReturnTypeOfSignature(i),a=Ce(n,s,r,o),l=n.signatureToString(i,e,Fp,ve.SignatureKind.Call);return{...ge(n,i),type:{signature:l,references:a.references}}}var Fp=ve.TypeFormatFlags.WriteArrowStyleSignature|ve.TypeFormatFlags.NoTruncation|ve.TypeFormatFlags.MultilineObjectLiterals|ve.TypeFormatFlags.InTypeAlias,Dp=e=>e.modifiers?.some?.(t=>t.kind===ve.SyntaxKind.AsyncKeyword)??!1;import{camelToKebab as lo}from"@arcgis/components-utils";function mo(e){e.members?.forEach(t=>{"attribute"in t&&typeof t.attribute=="string"&&t.attribute.toLowerCase()!==t.attribute&&(t.attribute=lo(t.attribute))}),e.attributes?.forEach(t=>{"name"in t&&typeof t.name=="string"&&t.name.toLowerCase()!==t.name&&(t.name=lo(t.name))})}import qe from"typescript";import{path as co}from"@arcgis/components-build-utils";function uo(e){return{name:"@arcgis/lumina:addComponentMetadata",analyzePhase({moduleDoc:t,node:n,ts:r,context:o}){if(!r.isClassDeclaration(n))return;let i=mr(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 l=new Set;if(s.lonelyGetters=new Set,n.members.forEach(p=>{if(qe.isAccessor(p)){let d=p.name.getText();s.lastAccessors[d]=p,qe.isSetAccessor(p)?(l.add(d),s.lonelyGetters.delete(d)):l.has(d)||s.lonelyGetters.add(d)}a||=e.viteCommand==="build"&&qe.isPropertyDeclaration(p)&&qe.isIdentifier(p.name)&&p.name.text==="shadowRootOptions"&&p.initializer!==void 0&&qe.isIdentifier(p.initializer)&&p.initializer.text==="noShadowRoot"}),i.members=i.members?.filter(Ap),i.members?.forEach(p=>{p.name=ct(p.name),"attribute"in p&&typeof p.attribute=="string"&&(p.attribute=ct(p.attribute))}),i.attributes?.forEach(p=>{p.name=ct(p.name),typeof p.fieldName=="string"&&(p.fieldName=ct(p.fieldName))}),e.viteCommand==="build"){let p=e.typeScriptTypeChecker,d=i,m=n.name===void 0?void 0:p.getSymbolAtLocation(n.name),f=m===void 0?void 0:ge(p,m);d.description=f?.description??d.description,d.docsTags=f?.docsTags?.filter(c=>c.name!=="cssprop"&&c.name!=="cssproperty"&&c.name!=="csspart"&&c.name!=="slot"),d.encapsulation=a?"none":"shadow"}},moduleLinkPhase({moduleDoc:t}){W(t).forEach(n=>{mo(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&&co.isAbsolute(n.superclass.module)&&(n.superclass.module=co.relative(e.dir.root,n.superclass.module))})}}}function ct(e){return e.startsWith("'")||e.startsWith('"')?e.slice(1,-1):e.startsWith('\\"')||e.startsWith("\\'")?e.slice(2,-1*2):e}var Ap=e=>!e.name.startsWith("_")&&!e.static&&e.privacy!=="private"&&e.privacy!=="protected";import{litPlugin as gl}from"@custom-elements-manifest/analyzer/src/browser-entrypoint.js";import hl from"typescript";import z from"typescript";var fo="Fragment",ut="DynamicHtmlTag",ft="DynamicSvgTag",Fe=Symbol("dynamic html tag name"),Ge=Symbol("dynamic svg tag name"),yo=!0,yt=new Set(["id","class","tabIndex","role","itemProp","itemScope","itemType","itemId","itemRef","about","datatype","inlist","property","resource","typeof","vocab"]),gt=new Set(["width","height","href","hreflang","form","download","rowSpan","colSpan","viewBox","src","exportParts","hreflang","media"]),_e={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"])},U={common:{normal:{translate:"translate",hidden:"hidden",inert:"inert",draggable:"draggable",spellcheck:"spellcheck",contentEditable:"contenteditable",popover:"popover",autofocus:"autofocus",tabIndex:"tabindex",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",dir:"dir",accessKey:"accesskey",autocapitalize:"autocapitalize",enterKeyHint:"enterkeyhint",inputMode:"inputmode",virtualKeyboardPolicy:"virtualkeyboardpolicy",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:{normal:{width:"width",height:"height"}},caption:{stringified:{align:"align"}},col:{normal:{span:"span"},stringified:{align:"align",ch:"char",chOff:"charoff",vAlign:"valign",width:"width"}},colgroup:{normal:{span:"span"},stringified:{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",maxLength:"maxlength",minLength:"minlength",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",min:"min",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",start:"start",compact:"compact"},stringified:{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:{colSpan:"colspan",rowSpan:"rowspan",noWrap:"nowrap"},stringified:{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",maxLength:"maxlength",minLength:"minlength",readOnly:"readonly",required:"required",rows:"rows"},stringified:{autocomplete:"autocomplete",dirName:"dirname",name:"name",placeholder:"placeholder",wrap:"wrap"}},tfoot:{stringified:{align:"align",ch:"char",chOff:"charoff",vAlign:"valign"}},th:{normal:{colSpan:"colspan",rowSpan:"rowspan",noWrap:"nowrap"},stringified:{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"]};go(U.common);Object.values(U.perElement).forEach(go);function go(e){e?.normal&&(e.normal=Object.assign(Object.create(null),e.normal)),e?.stringified&&(e.stringified=Object.assign(Object.create(null),e.stringified))}var cn=new Set(["itemScope"]),ht=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"]),ho=new Set(["area","base","br","col","command","embed","hr","img","input","keygen","link","meta","param","source","track","wbr"]),De=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"]),xo=new Set(["title","svg","a","script","style"]),Ae=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"]),Ne=new Set(["annotation-xml","color-profile","font-face","font-face-src","font-face-uri","font-face-format","font-face-name","missing-glyph"]);import{path as un,toSystemPathSeparators as So}from"@arcgis/components-build-utils";var Co="customElement",xt=new WeakMap,Eo=e=>({name:"@arcgis/lumina:addCustomElementDecorator",initialize(){xt.has(e)||xt.set(e,{}),e.declarationTextTransformers.includes(To)||e.declarationTextTransformers.push(To)},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 ${So(t.fileName)}. Instead, make sure your component file has the following:
|
|
47
47
|
declare global {
|
|
48
48
|
interface DeclareElements {
|
|
@@ -57,13 +57,13 @@ declare global {
|
|
|
57
57
|
"arcgis-test1": ArcgisTest1;
|
|
58
58
|
"arcgis-test2": ArcgisTest2;
|
|
59
59
|
}
|
|
60
|
-
}`);return e.slice(t,n)}import{readFile as qo,writeFile as xl}from"node:fs/promises";import{path as Et,toSystemPathSeparators as Cl}from"@arcgis/components-build-utils";import{isNotUndefined as Ko}from"@arcgis/components-utils";import{isNotUndefined as gn}from"@arcgis/components-utils";import{existsAsync as Mo}from"@arcgis/components-build-utils";import{readFile as yn,readdir as $p}from"node:fs/promises";import{asyncRetrievePackageJson as Ip,fetchPackageLocation as Lp,retrievePackageJson as jp}from"@arcgis/components-build-utils";import{path as Ct}from"@arcgis/components-build-utils";async function Tt(e){return ae??=Rp(e),await ae}function
|
|
61
|
-
Error: ${String(h)}`)}}let p=
|
|
60
|
+
}`);return e.slice(t,n)}import{readFile as qo,writeFile as xl}from"node:fs/promises";import{path as Et,toSystemPathSeparators as Cl}from"@arcgis/components-build-utils";import{isNotUndefined as Ko}from"@arcgis/components-utils";import{isNotUndefined as gn}from"@arcgis/components-utils";import{existsAsync as Mo}from"@arcgis/components-build-utils";import{readFile as yn,readdir as $p}from"node:fs/promises";import{asyncRetrievePackageJson as Ip,fetchPackageLocation as Lp,retrievePackageJson as jp}from"@arcgis/components-build-utils";import{path as Ct}from"@arcgis/components-build-utils";async function Tt(e){return ae??=Rp(e),await ae}function Fo(){if(hn===void 0)throw new Error("Component dependencies have not yet been initialized. Await componentDependenciesPromise promise first.");return hn}function bt(){if(xn===void 0)throw new Error("Component dependencies have not yet been initialized. Await componentDependenciesPromise promise first.");return xn}async function Rp(e){let n=jp(e).peerDependencies??{},o=(await Promise.all(Object.keys(n).flatMap(async i=>await Cn(i,e)))).filter(gn);return hn??=o,xn=Object.fromEntries(o.flatMap(i=>Object.entries(i.components))),o}var hn,xn,ae;async function Cn(e,t){let n=await Lp(e,t),r=await Ip(n),o="exports"in r,i=Kp.bind(void 0,o),s="@stencil/core"in(r.dependencies??{})||"@stencil/core"in(r.devDependencies??{}),a=Ct.join(n,"dist/esm/loader.js");if(s?await Mo(a):!1){let c=await yn(a,"utf8"),y=Op(c,"bootstrapLazy("),x=c.indexOf(", options",y),u=c.slice(y,x),C=u.startsWith('JSON.parse("')?u.slice(12,-2).replaceAll('\\"','"'):u;try{let h=JSON.parse(C),b=Hp(h,{packageName:e,getImportPath:i});return{packageName:e,type:"stencil",components:b}}catch(h){console.warn(`@arcgis/lit: Failed to parse dist/esm/loader.js for ${e}.
|
|
61
|
+
Error: ${String(h)}`)}}let p=ko(r.customElements);if(p){let c=Ct.join(n,p),y=JSON.parse(await yn(c,"utf-8")),x=Jp(y),u=Tn(y,{packageName:e,getImportPath:i});return{type:x?"@arcgis/lumina":"unknown",packageName:e,components:u}}let d=ko(r["web-types"]);if(d){let c=Ct.join(n,d),y=JSON.parse(await yn(c,"utf-8")),x=Bp(y,{packageName:e,getImportPath:i,packageRoot:n});return{type:"unknown",packageName:e,components:x}}let m=Ct.join(n,"dist/components");if(await Mo(m)){let c=await Wp(m,{packageName:e,getImportPath:i});return{type:"unknown",packageName:e,components:c}}}var ko=e=>Array.isArray(e)?e[0]:e;function Op(e,t){let n=e.indexOf(t);return n===-1?-1:n+t.length}var Tn=(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(gn))}]})).filter(gn)),Jp=e=>e.compiler?.name===ke,Bp=(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 Hp=(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,[l]])=>l&15).map(([a,[l,p=a]])=>[a,p]))}]))),Wp=async(e,t)=>Object.fromEntries((await $p(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:{}}]})),Kp=(e,t)=>e?`components/${t}`:`dist/components/${t}`;import{asyncRetrievePackageJson as il,fetchPackageLocation as sl}from"@arcgis/components-build-utils";var Up=e=>e.startsWith("/")?e:`/${e}`,$e=(e,t)=>`${e}@fs${Up(t)}`;import{retrievePackageJson as zp}from"@arcgis/components-build-utils";function Y(e=zp(),t=!1,n=e.name==="@esri/calcite-components"){let r=e.version.includes("next"),o=t||r?"jsdev.arcgis.com":"js.arcgis.com",i=Vp(e.name),s=qp(e.version,n);return["https://",o,i.length>0?"/":"",i,"/",s,"/"].join("")}var Vp=e=>e.split("/").pop()??e;function qp(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,l=`${i}.${s}`;return t?`${l}.${a}`:l}return"next"}import{isNotUndefined as tl}from"@arcgis/components-utils";import{readdir as nl}from"node:fs/promises";import{path as Sn}from"@arcgis/components-build-utils";import{existsAsync as Io}from"@arcgis/components-build-utils";import{asyncRetrievePackageJson as rl,fetchPackageLocation as ol}from"@arcgis/components-build-utils";import{build as el}from"esbuild";import{findPath as Gp,path as bn,retrievePackageJson as _p,toPosixPathSeparators as Xp,toSystemPathSeparators as Qp}from"@arcgis/components-build-utils";import{getPreamble as Yp,identity as Zp}from"@arcgis/components-utils";import pe from"typescript";function Do(e){let t=e&&bn.isAbsolute(e)?e:Gp(e??"tsconfig.json");if(!t)throw new Error(`Unable to find ${Qp(String(e))} in ${process.cwd()}. Please make sure the file exists, or provide types.tsconfigPath option to useLumina()`);let n=pe.readConfigFile(t,pe.sys.readFile);if(n.error)throw new Error(pe.formatDiagnosticsWithColorAndContext([n.error],{getCanonicalFileName:Zp,getCurrentDirectory:pe.sys.getCurrentDirectory,getNewLine:()=>pe.sys.newLine}));let r=pe.parseJsonConfigFileContent(n.config,pe.sys,bn.dirname(t));return{path:t,config:r}}function Ao(e=_p()){let t=e.version??"0.0.1";return Yp(t)}var No=e=>`/*!
|
|
62
62
|
${e.split(`
|
|
63
63
|
`).map(t=>` * ${t}`).join(`
|
|
64
64
|
`)}
|
|
65
65
|
*/`,I=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 vt(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=pe.ScriptTarget[t].toLowerCase();return n==="latest"?"esnext":n}function Ie(e){if(bn.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 Xp(e)}var vn=new Set(["chunks","components","docs","types","controllers","cjs","esm","loader","utils","collection","extras","support"]),Le="cdn";function $o(e){let{skip:t=!1,namespace:n=Le,esbuildOptions:r={}}=e.options.build?.cdn??{};if(n.toLowerCase()!==n)throw new Error(`Expected CDN namespace to be all lowercase. Received: ${n}`);if(vn.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===Le?"index":n;if(e.provideAssets([{type:"dynamic",source:()=>Yr(e),destination:`../${o}.css`}]),!t)return{name:"@arcgis/lumina:buildCdn",async writeBundle(){if(e.isInStorybook)return;let i=e.environment,s=Date.now();await el({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:vt(e.typeScriptConfig),...r,define:{"process.env.CDN":"true",...r.define},stdin:{contents:['import { defineCustomElements } from "./loader";',an(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 jo(e,t,n,r){let o=await ol(t),{hasCss:i,cdnName:s}=await En(Sn.join(o,"dist"))??{};if(n==="storybookBuild"){let d=await rl(o),m=Y(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${ie}`,l=i?[`import styles$${r} from "${a}";`,`document.adoptedStyleSheets = [...document.adoptedStyleSheets, styles$${r}.styleSheet];`]:[],p=`${t}/dist/esm/loader.js`;return[{optimizableImports:[p],javascriptCode:[...l,`import { defineCustomElements as defineCustomElements$${r} } from "${p}";`,`defineCustomElements$${r}(globalThis.window, {`,` resourcesUrl: "${$e(e,o)}/dist/${s}/",`,"});"]}]}async function En(e){let n=(await nl(e)).filter(o=>!vn.has(o)&&!o.includes(".")),r=n.find(o=>o.startsWith("arcgis-"));return r?await Lo(e,r):await Promise.all(n.map(async o=>await Lo(e,o))).then(o=>o.find(tl))}async function Lo(e,t){let n=Sn.join(e,t,`${t}.css`),r=Sn.join(e,t,"assets"),[o,i]=await Promise.all([Io(n),Io(r)]);return o||i?{hasCss:o,cdnName:t}:void 0}import{path as al}from"@arcgis/components-build-utils";async function Ro(e,t,n,r){let o=await sl(t),i=await En(al.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 l=await il(o);return{tag:"script",attrs:{type:"module",src:`${Y(l,!0)}${s}.esm.js`}}}let a=`${t}/loader`;return{optimizableImports:[a],javascriptCode:[`import { defineCustomElements as defineCustomElements$${r} } from "${a}";`,`defineCustomElements$${r}({`,` resourcesUrl: "${$e(e,o)}/dist/${s}/",`,"});"]}}import{asyncRetrievePackageJson as pl,fetchPackageLocation as ll,retrievePackageJson as dl}from"@arcgis/components-build-utils";var Jo="@arcgis/core",ml=dl(),wn=Jo in(ml.peerDependencies??{});async function Bo(e,t){if(!wn)return[];let n=await ll(Jo);if(t==="storybookBuild"){let r=await pl(n),o=Y({name:"",version:r.version},!0);return[{tag:"script",attrs:{type:"importmap"},children:JSON.stringify({imports:{"@arcgis/core/":`${o}@arcgis/core/`}})},Oo(o)]}else return[Oo($e(e,`${n}/assets/`))]}var Oo=e=>({cssHref:`${e}esri/themes/light/main.css`,id:"arcgisCoreStylesheet"});import{path as cl}from"@arcgis/components-build-utils";async function Se(e){let t=Ho.get(e);return t||(t=ul(e),Ho.set(e,t)),await t}var Ho=new WeakMap;async function ul(e){let t=e.isInStorybook&&e.viteCommand==="build"?"storybookBuild":"lazy",n=e.viteConfig.base,r=async a=>(await Promise.all(a.map(async(l,p)=>l.type==="stencil"?await jo(n,l.packageName,t,p):l.type==="@arcgis/lumina"?await Ro(n,l.packageName,t,p):void 0))).filter(Ko).flat(),o=await Promise.all([ae.then(r),Mn(e).then(r),Bo(n,t)]),i=cl.join(e.dir.src,"loader.ts");return[...e.viteCommand==="serve"?[Pn]:[],...o.flat(),{optimizableImports:[],javascriptCode:[`import { defineCustomElements } from "${i}";`,`defineCustomElements(${t==="storybookBuild"?`{resourcesUrl:"./${e.options.build?.cdn?.namespace??Le}/"}`:""});`]}]}var Pn={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.",',");"]},Wo=new WeakMap;async function Mn(e){let t=e.options?.serve?.extraDependencies??[];if(t.length===0)return[];let n=Wo.get(e);return n||(n=Promise.all(t.map(async r=>await Cn(r))).then(r=>r.filter(Ko)),Wo.set(e,n)),await n}var
|
|
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 jo(e,t,n,r){let o=await ol(t),{hasCss:i,cdnName:s}=await En(Sn.join(o,"dist"))??{};if(n==="storybookBuild"){let d=await rl(o),m=Y(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${ie}`,l=i?[`import styles$${r} from "${a}";`,`document.adoptedStyleSheets = [...document.adoptedStyleSheets, styles$${r}.styleSheet];`]:[],p=`${t}/dist/esm/loader.js`;return[{optimizableImports:[p],javascriptCode:[...l,`import { defineCustomElements as defineCustomElements$${r} } from "${p}";`,`defineCustomElements$${r}(globalThis.window, {`,` resourcesUrl: "${$e(e,o)}/dist/${s}/",`,"});"]}]}async function En(e){let n=(await nl(e)).filter(o=>!vn.has(o)&&!o.includes(".")),r=n.find(o=>o.startsWith("arcgis-"));return r?await Lo(e,r):await Promise.all(n.map(async o=>await Lo(e,o))).then(o=>o.find(tl))}async function Lo(e,t){let n=Sn.join(e,t,`${t}.css`),r=Sn.join(e,t,"assets"),[o,i]=await Promise.all([Io(n),Io(r)]);return o||i?{hasCss:o,cdnName:t}:void 0}import{path as al}from"@arcgis/components-build-utils";async function Ro(e,t,n,r){let o=await sl(t),i=await En(al.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 l=await il(o);return{tag:"script",attrs:{type:"module",src:`${Y(l,!0)}${s}.esm.js`}}}let a=`${t}/loader`;return{optimizableImports:[a],javascriptCode:[`import { defineCustomElements as defineCustomElements$${r} } from "${a}";`,`defineCustomElements$${r}({`,` resourcesUrl: "${$e(e,o)}/dist/${s}/",`,"});"]}}import{asyncRetrievePackageJson as pl,fetchPackageLocation as ll,retrievePackageJson as dl}from"@arcgis/components-build-utils";var Jo="@arcgis/core",ml=dl(),wn=Jo in(ml.peerDependencies??{});async function Bo(e,t){if(!wn)return[];let n=await ll(Jo);if(t==="storybookBuild"){let r=await pl(n),o=Y({name:"",version:r.version},!0);return[{tag:"script",attrs:{type:"importmap"},children:JSON.stringify({imports:{"@arcgis/core/":`${o}@arcgis/core/`}})},Oo(o)]}else return[Oo($e(e,`${n}/assets/`))]}var Oo=e=>({cssHref:`${e}esri/themes/light/main.css`,id:"arcgisCoreStylesheet"});import{path as cl}from"@arcgis/components-build-utils";async function Se(e){let t=Ho.get(e);return t||(t=ul(e),Ho.set(e,t)),await t}var Ho=new WeakMap;async function ul(e){let t=e.isInStorybook&&e.viteCommand==="build"?"storybookBuild":"lazy",n=e.viteConfig.base,r=async a=>(await Promise.all(a.map(async(l,p)=>l.type==="stencil"?await jo(n,l.packageName,t,p):l.type==="@arcgis/lumina"?await Ro(n,l.packageName,t,p):void 0))).filter(Ko).flat(),o=await Promise.all([ae.then(r),Mn(e).then(r),Bo(n,t)]),i=cl.join(e.dir.src,"loader.ts");return[...e.viteCommand==="serve"?[Pn]:[],...o.flat(),{optimizableImports:[],javascriptCode:[`import { defineCustomElements } from "${i}";`,`defineCustomElements(${t==="storybookBuild"?`{resourcesUrl:"./${e.options.build?.cdn?.namespace??Le}/"}`:""});`]}]}var Pn={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.",',");"]},Wo=new WeakMap;async function Mn(e){let t=e.options?.serve?.extraDependencies??[];if(t.length===0)return[];let n=Wo.get(e);return n||(n=Promise.all(t.map(async r=>await Cn(r))).then(r=>r.filter(Ko)),Wo.set(e,n)),await n}var kn="/@arcgis/lumina-compiler/testLitSetupFile",Fn="/@arcgis/lumina-compiler/testSetupFile",St=[kn,Fn],zo=Pn.javascriptCode.join(`
|
|
67
67
|
`);async function Vo(e){if(!e.viteConfig.test?.browser?.enabled)return Uo(e);let n=(await Se(e)).map((r,o)=>{if("javascriptCode"in r)return r.javascriptCode.join(`
|
|
68
68
|
`);if("cssHref"in r)return[`import styles$t${o} from "${r.cssHref}${ie}";`,`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(`
|
|
@@ -72,10 +72,10 @@ ${e.split(`
|
|
|
72
72
|
setupPuppeteerTest();
|
|
73
73
|
`,yl=`import { setupLuminaTest } from "@arcgis/lumina-compiler/testing";
|
|
74
74
|
setupLuminaTest();
|
|
75
|
-
`;function Go(e){let t;async function n(){let u=t===void 0;u&&e.viteCommand==="serve"&&(e.typeScriptHost=hl.createCompilerHost(e.typeScriptConfig.options,!1)),t??=[gl().find(({name:b})=>b==="CORE - LIT-PROPERTY-DECORATOR"),Eo(e),uo(e),...e.viteCommand==="build"?[so(e)]:[],po(e),...e.options.manifests?.plugins??[]],u||(e.componentFilesPromise=Ue(e,e.dir.srcComponents));let C=await e.componentFilesPromise,h=await Tl(e,C);return rn({plugins:t,modules:h,context:_r},e,!1)}function r(u,C){if(s===void 0)return!1;let h=e.getSourceFile(u,C),{modules:[b]}=rn({plugins:t,modules:[h]},e,!0),A=e.manifest.modules.findIndex(H=>H.path===b.path),B=e.manifest.modules[A],
|
|
75
|
+
`;function Go(e){let t;async function n(){let u=t===void 0;u&&e.viteCommand==="serve"&&(e.typeScriptHost=hl.createCompilerHost(e.typeScriptConfig.options,!1)),t??=[gl().find(({name:b})=>b==="CORE - LIT-PROPERTY-DECORATOR"),Eo(e),uo(e),...e.viteCommand==="build"?[so(e)]:[],po(e),...e.options.manifests?.plugins??[]],u||(e.componentFilesPromise=Ue(e,e.dir.srcComponents));let C=await e.componentFilesPromise,h=await Tl(e,C);return rn({plugins:t,modules:h,context:_r},e,!1)}function r(u,C){if(s===void 0)return!1;let h=e.getSourceFile(u,C),{modules:[b]}=rn({plugins:t,modules:[h]},e,!0),A=e.manifest.modules.findIndex(H=>H.path===b.path),B=e.manifest.modules[A],k=Array.from(e.manifest.modules);k.splice(A,1,b),e.manifest={...e.manifest,modules:k};let G=[],ye=W(b,!0);e.manifestComponents=e.manifestComponents.filter(H=>H.sourcePath===B.path?(G.push(H),!1):!0);let Be=ye.length!==G.length,Bt=ye.map(H=>{let ws=G.find(Ps=>Ps.tagName===H.tagName)===void 0;return Be||=ws,H});return Be?!1:(Bt.forEach(H=>{let Yn=ln(H);e.server.ws.send({type:"custom",event:"component-meta-update",data:Yn}),e.manifestComponents.push(H),H.sourcePath=b.path}),y(),!0)}let o=!1,i,s,a,l,p,d="@arcgis/lumina:generateManifestPlugin",m={name:d,configResolved(){l=Et.join(e.dir.root,"src","loader.ts"),p=Cl(l)},resolveId:u=>u===l||u===p?l:void 0,async load(u){let C=u.startsWith(kn),h=u.startsWith(Fn);if(!(!u.endsWith(".tsx")&&u!==l&&!C&&!h)){if(!s&&!e.isInPuppeteerTestBackEnd){a||clearTimeout(i),a??=n().catch(A=>{throw o=!0,A});let b=await a;s??=b}return u===l?Zr(e):C?zo:h?await Vo(e):void 0}},async writeBundle(){e.isInStorybook||await xl(Et.join(e.dir.dist,"loader.d.ts"),eo)},async handleHotUpdate({file:u,modules:C,read:h}){let b=await f(u,h);return b===void 0?void 0:b?C:(c(),[])},configureServer(u){if(e.isInPuppeteerTestBackEnd)return;e.isInTest&&u.watcher.on("change",h=>{f(h,async()=>await qo(h,"utf8")).catch(console.error)}),u.watcher.on("add",C),u.watcher.on("unlink",C),u.watcher.on("addDir",h=>h.startsWith(e.dir.srcComponents)?void Ue(e,e.dir.srcComponents,h).then(b=>b.length>0?c():void 0):void 0),u.watcher.on("unlinkDir",h=>{e.componentFiles.some(A=>A.startsWith(h))&&c()});function C(h){oe(h,e.dir.srcComponents)&&c()}u.watcher.on("change",()=>{if(!o)return;o=!1,i=setTimeout(()=>c(!0),1e3)})}};async function f(u,C){if(!oe(u,e.dir.srcComponents))return;let b=await C();return r(u,b)}function c(u=!1){!u&&s===void 0||(s=void 0,a=void 0,y(),x())}function y(){let u=e.server.moduleGraph.getModuleById(l);u?e.server.moduleGraph.invalidateModule(u):(console.warn(`${d}: Failed to find HMR module for src/loader.ts`),e.server.moduleGraph.invalidateAll())}let x=()=>e.server.ws.send({type:"full-reload",path:Et.join("/",Et.relative(e.dir.root,l))});return m}async function Tl(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 qo(n,"utf8");return e.getSourceFile(n,r)}))}import bl from"mime-types";import{copyFile as vl,readFile as Xo,readdir as Sl,mkdir as An,writeFile as Qo}from"node:fs/promises";import{getCwd as El,path as S,toPosixPathSeparators as Dn,toSystemPathSeparators as wl}from"@arcgis/components-build-utils";import{isPosix as Yo}from"@arcgis/components-build-utils";var Pl="@arcgis/lumina:provideAssets";function le(e,t,n=Pt){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=Zo(i),a=ti(e.dir,ei(s)),l=kl(e.viteConfig.base,a,e.dir.distCdn);e.server.middlewares.use(l,(p,d,m)=>{let f=Fl(p.url),c=s.type==="directory"?S.resolve(s.source,f.slice(1)):s.source,y=S.join(a,f),x=n.find(u=>u.match(y,e));return(typeof c=="function"?Promise.resolve(c()):Xo(c)).then(u=>{let C=(typeof c=="function"?void 0:x?.transform(u.toString("utf8"),y,e))??u;d.setHeader("Cache-Control","max-age=31536000, immutable"),d.setHeader("Content-Type",bl.lookup(f)||"application/octet-stream"),d.write(C),d.end()}).catch(u=>{(s.type!=="directory"||process.env.DEBUG)&&console.error(Pl,`Error occurred when trying to serve a file in response to request for "${p.originalUrl??f}":`,u),m()}),!0})}),r){let i=e.server.middlewares.stack.splice(o);e.server.middlewares.stack.splice(0,0,...i)}}async function wt(e,t,n=Pt){await Promise.all(t.map(async r=>{let o=Zo(r),i=ti(e.dir,ei(o));if(o.type==="directory"){let s=S.resolve(o.source),l=(await Sl(s,{recursive:!0,withFileTypes:!0})).filter(p=>p.isFile()).map(p=>{let d=S.resolve(p.path,p.name),m=S.relative(s,d),f=S.join(i,m);return[d,f]});await Nn(l.map(([p,d])=>d)),await Promise.all(l.map(async([p,d])=>await _o(p,d,n,e)))}else if(o.type==="file")await An(S.dirname(i),{recursive:!0}),await _o(o.source,i,n,e);else if(o.type==="dynamic"){await An(S.dirname(i),{recursive:!0});let s=await Promise.resolve(o.source());await Qo(i,s)}}))}var Zo=Yo?e=>e:e=>e.type==="dynamic"?{...e,destination:Dn(e.destination)}:{...e,source:Dn(e.source),destination:Dn(e.destination)};async function _o(e,t,n,r){let o=n.find(i=>i.match(t,r));if(o===void 0)await vl(e,t);else{let i=await Xo(e,"utf8"),s=o.transform(i,t,r);await Qo(t,s)}}function ei(e){if(e.type==="dynamic")return e.destination;if(e.source.endsWith(S.sep)){if(e.type==="file")throw new Error(`Unexpectedly tried to provide an asset with type "file", whose source looks like a directory: ${wl(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===""?S.basename(e.source):e.destination.endsWith(S.sep)?e.type==="directory"&&e.destination===S.sep?e.destination:S.join(e.destination,S.basename(e.source)):e.destination}function ti({dist:e,distCdnAssets:t},n){let r=Ml(n),o=S.join(t,r?S.relative(t,n):n),i=S.relative(e,o),s=ni(i);return S.join(e,s)}function Ml(e){if(e.startsWith(S.sep)){let t=El(),n=t.startsWith(S.sep)?t.split(S.sep)[1]??"":"";return e.startsWith(`/${n}/`)||e.startsWith("/Users/")}else return!!(!Yo&&S.isAbsolute(e))}function kl(e,t,n){let r=ni(S.relative(n,t)),o=r.startsWith("/")?r.slice(1):r;return`${e}${o}`}var ni=e=>e.replaceAll("../",""),Fl=(e="")=>e.split("?")[0].split("#")[0];async function Nn(e){let t=new Set(e.map(S.dirname));await Promise.all(Array.from(t,async n=>await An(n,{recursive:!0})))}var Dl={match:(e,t)=>t.environment==="production"&&e.endsWith(".json"),transform:e=>JSON.stringify(JSON.parse(e))},Pt=[Dl];import{isNotUndefined as Al}from"@arcgis/components-utils";import{existsAsync as ri}from"@arcgis/components-build-utils";import{path as Xe}from"@arcgis/components-build-utils";function oi(e){let t,n=()=>[...e.options.assets?.transformers??[],...Pt];return{name:"@arcgis/lumina:handleStaticAssets",configResolved(){t=Nl(e)},async configureServer(r){e.server=r,!e.isInPuppeteerTestBackEnd&&(le(e,await t,n()),r.watcher.on("addDir",o=>{if(o.endsWith("assets")){let i=Xe.dirname(o);Xe.join(i,"/")===e.dir.root?le(e,[si],n()):o.startsWith(e.dir.srcComponents)&&le(e,[ii(o,i,e.dir.srcComponents)],n())}}))},async writeBundle(){await wt(e,await t,n())}}}async function Nl(e){let t=ri("assets"),n=await e.componentFilesPromise,r=await Promise.all(n.map(async o=>{let i=Xe.dirname(o),s=Xe.join(i,"assets");return await ri(s)?ii(s,i,e.dir.srcComponents):void 0}));return await t&&r.push(si),r.filter(Al)}var ii=(e,t,n)=>({type:"directory",source:e,destination:Xe.relative(n,t)}),si={type:"directory",source:"assets/",destination:""};import{path as je}from"@arcgis/components-build-utils";import{mkdir as $l,writeFile as Mt}from"node:fs/promises";import{retrievePackageJson as Il}from"@arcgis/components-build-utils";function ai(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=Il()?.name??e.options.build?.cdn?.namespace??je.basename(e.dir.root),r=`${n}/hydrate`,o=je.resolve(e.dir.root,t.path??"hydrate"),i="index.d.ts",s="index.js",a="index.mjs",l=je.join(o,"index.d.ts"),p=je.join(o,"index.js"),d=je.join(o,"index.mjs"),m=_(o,e.dir.dist),c=`${Array.from(new Set(e.manifestComponents.map(y=>`import "${m}/${y.importPath}";`))).join(`
|
|
76
76
|
`)}
|
|
77
77
|
export * from "@arcgis/lumina/stencil-ssr-compatibility";`;await $l(o,{recursive:!0}),await Promise.all([Mt(je.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
|
-
`),Mt(l,c),Mt(p,c),Mt(d,c)])}}}var mi=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,l=0,p=0,d=0,m=console.log;console.log=function(...c){if(m.apply(console,c),c.length===1&&typeof c[0]=="string"){let[y,x]=c[0].match(jl)??[];if(!y)return;d||(d=c[0].slice(0,c[0].indexOf(y)+y.length).replaceAll(Rl,"").length);let u=Number.parseFloat(y.replace(" kB","").replaceAll(",",""));x?(p+=Number.parseFloat(x.replace(" kB","").replaceAll(",","")),l+=u):a+=u}};try{await r.call(this,i,s)}finally{console.log=m}if(l>0){let c=p>0?l:a,y=di(c),x=e.dir.relativeDist;console.log([li,x,Ll,"*"," ".repeat(d-`${x}*`.length-y.length),y,pi,p>0?` ${li}\u2502 gzip: ${di(p)}${pi}`:""].join(""))}}}}),pi="\x1B[22m\x1B[1m\x1B[22m",li="\x1B[2m",Ll="\x1B[22m\x1B[36m",jl=/\d+(?:,\d+)?\.\d{2} kB/gu,Rl=/\x1B\[\d+m/gu,Ol=new Intl.NumberFormat("en",{maximumFractionDigits:2,minimumFractionDigits:2}),di=e=>`${Ol.format(e)} kB`;import
|
|
78
|
+
`),Mt(l,c),Mt(p,c),Mt(d,c)])}}}var mi=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,l=0,p=0,d=0,m=console.log;console.log=function(...c){if(m.apply(console,c),c.length===1&&typeof c[0]=="string"){let[y,x]=c[0].match(jl)??[];if(!y)return;d||(d=c[0].slice(0,c[0].indexOf(y)+y.length).replaceAll(Rl,"").length);let u=Number.parseFloat(y.replace(" kB","").replaceAll(",",""));x?(p+=Number.parseFloat(x.replace(" kB","").replaceAll(",","")),l+=u):a+=u}};try{await r.call(this,i,s)}finally{console.log=m}if(l>0){let c=p>0?l:a,y=di(c),x=e.dir.relativeDist;console.log([li,x,Ll,"*"," ".repeat(d-`${x}*`.length-y.length),y,pi,p>0?` ${li}\u2502 gzip: ${di(p)}${pi}`:""].join(""))}}}}),pi="\x1B[22m\x1B[1m\x1B[22m",li="\x1B[2m",Ll="\x1B[22m\x1B[36m",jl=/\d+(?:,\d+)?\.\d{2} kB/gu,Rl=/\x1B\[\d+m/gu,Ol=new Intl.NumberFormat("en",{maximumFractionDigits:2,minimumFractionDigits:2}),di=e=>`${Ol.format(e)} kB`;import F from"typescript";import $n from"typescript";var Jl=["keyed","ref","repeat"],de="staticHtml",Z="staticSvg",ee="html",me="svg",In=Symbol("maybe HTML namespace or maybe SVG"),Ln="css",jn="mathml",ci=[Ln,ee,jn,de,Z,me],ui=new Set(ci),Bl=["dynamicValueDirective","safeClassMap","safeStyleMap"],Hl="nothing",fi=[...Jl,...ci,...Bl,Hl],Re=e=>$n.isJsxElement(e)||$n.isJsxSelfClosingElement(e)||$n.isJsxFragment(e);import{path as Rn}from"@arcgis/components-build-utils";var yi=e=>e.reduce((t,[n,r])=>(t[n]??=[],t[n].push(r),t),{}),Qe={[ee]:["lit-html","lit/html.js","lit"],[de]:["lit-html/static.js","lit/static-html.js"],[me]:["lit-html","lit/html.js","lit"],[Z]:["lit-html/static.js","lit/static-html.js"],[jn]:["lit-html","lit/html.js","lit"],[Ln]:["@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"]},gi=yi(Object.entries(Qe).flatMap(([e,t])=>t.map(n=>[n,e]))),kt=new Set(Object.keys(gi));function hi(e,t){let n=t.importClause,r=t.moduleSpecifier;if(!F.isStringLiteral(r))return t;let o=Wl(e.sourceFile.fileName,r.text,""),i=!n?.isTypeOnly;if(i&&e.existingImportedModules.add(o),!n)return t;if(n.name){let l=n.name.text,p=n.name.text.startsWith(l[0].toUpperCase()),d=Rn.isAbsolute(o);i&&!n.isTypeOnly&&p&&d&&e.importedFunctionComponentsFromModules.add(o)}let s=n.namedBindings;if(!s||!F.isNamedImports(s))return t;let a=kt.has(r.text);return s.elements.forEach(l=>{let p=(l.propertyName??l.name).text,d=Qe[p];if(a&&d?.some(c=>c===r.text)){let c=xi(p,o);e.existingLitImports.add(c),e.importRenames[c]=l.name?.text??c}let m=p.startsWith(p[0].toUpperCase()),f=Rn.isAbsolute(o);i&&!l.isTypeOnly&&m&&f&&e.importedFunctionComponentsFromModules.add(o)}),t}var xi=(e,t)=>e===ee&&Qe.staticHtml.includes(t)?de:e===me&&Qe.staticSvg.includes(t)?Z:e,Wl=(e,t,n)=>t.startsWith(".")?Rn.resolve(e,"..",`${t}${n}`):t;function Ci(e){return F.isImportDeclaration(e)?Kl(this,e):e}function Kl(e,t){let n=t.importClause,r=n?.namedBindings,o=t.moduleSpecifier;if(!F.isStringLiteral(o)||!r||!F.isNamedImports(r)||!kt.has(o.text))return t;let i=n.isTypeOnly,s=!1,a=r.elements.map(l=>{let p=(l.propertyName??l.name).text,d=xi(p,o.text);return e.neededImports.has(d)?(e.existingLitImports.delete(d),e.neededImports.delete(d),s=!0,F.factory.updateImportSpecifier(l,!1,l.propertyName,l.name)):i?F.factory.updateImportSpecifier(l,!0,l.propertyName,l.name):l});return gi[o.text]?.forEach(l=>{!e.neededImports.has(l)||e.existingLitImports.has(l)||(e.neededImports.delete(l),s=!0,a.push(bi(l,e)))}),s?F.factory.updateImportDeclaration(t,t.modifiers,F.factory.updateImportClause(n,!1,n.name,F.factory.updateNamedImports(r,a)),t.moduleSpecifier,t.attributes):t}function Ti(e){let t=yi(Array.from(e.neededImports,n=>[Qe[n][0],n]));return Object.entries(t).map(([n,r])=>F.factory.createImportDeclaration(void 0,F.factory.createImportClause(!1,void 0,F.factory.createNamedImports(r.map(o=>(e.neededImports.delete(o),bi(o,e))))),F.factory.createStringLiteral(n)))}function bi(e,t){let n=e===de?ee:e===Z?me:e,r=t.importRenames[e];return r===n?F.factory.createImportSpecifier(!1,void 0,F.factory.createIdentifier(n)):F.factory.createImportSpecifier(!1,F.factory.createIdentifier(n),F.factory.createIdentifier(r))}var vi=e=>({name:"@arcgis/lumina:configureVite",async config({server:t,publicDir:n,build:{target:r,sourcemap:o,lib:i,rollupOptions:{output:s=[]}={}}={},test:a={}}){let{include:l,browser:p,environment:d}=a,m={index:"src/index.ts",loader:"src/loader.ts",...await Lr(e)},{loader:f,...c}=m,y={entries:Object.values(c),include:Array.from(kt).filter(x=>!x.startsWith("@arcgis"))};if(typeof a.setupFiles=="string"?a.setupFiles=[...St,a.setupFiles]:Array.isArray(a.setupFiles)?a.setupFiles=[...St,...a.setupFiles]:a.setupFiles=[...St],e.isInPuppeteerTestBackEnd){if(p?.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,globalSetup:["@arcgis/lumina-compiler/puppeteerTesting/globalSetup"],runner:"@arcgis/lumina-compiler/puppeteerTesting/runner",include:l??["**/*.e2e.?(c|m)[jt]s?(x)"],environment:d??"happy-dom"}}}return{server:{open:t?.open??!0},publicDir:n??!1,build:{target:r??vt(e.typeScriptConfig),sourcemap:o??(e.environment==="development"?"inline":e.options.build?.enableSourceMapsInProduction??!1),lib:{entry:m,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:y,test:{include:l??[p?.enabled??!0?"**/*.e2e.?(c|m)[jt]s?(x)":"**/*.{test,spec}.?(c|m)[jt]s?(x)"],browser:{enabled:p?.enabled??!0,name:p?.name??"chromium",provider:p?.provider??nr}}}}});var Si=e=>({name:"@arcgis/lumina:setAssetPath",apply:()=>e.viteCommand==="build",config:t=>({base:t.base??e.options.assets?.defaultPath??Y()})});import On from"typescript";var Oe={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{existsAsync as Ul}from"@arcgis/components-build-utils";import{readFile as zl,writeFile as Vl}from"node:fs/promises";import{retrievePackageJson as ql}from"@arcgis/components-build-utils";import{path as Gl}from"@arcgis/components-build-utils";async function Ft(e,t,n,r){let o=_l(e,n,r),i=Gl.join(t,"lumina.ts");(await Ul(i)?await zl(i,"utf8"):"")!==o&&await Vl(i,o)}function _l(e,t,n,r=ql()){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,f)=>`
|
|
80
80
|
import type { JSX as JSX$${f} } from "${m.packageName}/dist/types/components";`),a=i.length===0?"":`
|
|
81
81
|
|
|
@@ -96,11 +96,11 @@ declare global {
|
|
|
96
96
|
*/
|
|
97
97
|
/// <reference types="@arcgis/lumina/typings" />`,Ql=`
|
|
98
98
|
/// <reference types="@arcgis/core/interfaces" />`;var Ei="@arcgis/lumina:dependencySupport",Dt=(e,t)=>e.viteCommand==="serve"||e.isInStorybook&&(t===void 0||t.path==="/iframe.html"),wi=e=>({name:Ei,configResolved(){Dt(e)&&e.environment==="development"&&!e.isInTest&&Yl(e).catch(t=>console.error(`${Ei}: Failed to update package's src/lumina.ts`,t))},transformIndexHtml:{order:"pre",async handler(t,n){return Dt(e,n)?(await Se(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 Se(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 Yl(e){let n=(await Promise.all([ae,Mn(e)])).flat();await
|
|
100
|
-
`).join("").trimStart()}export * from "./${we}";`;return[ki(ce.join(e.dir.dist,p,rd),f),ki(ce.join(e.dir.dist,p,od),f)]});await Promise.all(o)}}),rd="index.js",od="index.d.ts",Ai=(e,t,n,r=new Set)=>t.flatMap(o=>n.has(o)?[o]:r.has(o)?[]:(r.add(o),Ai(e,e[o].referencedBy,n,r)));import Kd from"typescript";import Sd from"typescript";import T from"typescript";import v from"typescript";import{mappedFind as ad,uncapitalize as Ni}from"@arcgis/components-utils";import g from"typescript";function Bn(e,t){if(Je(e))return e;{t.neededImports.add("nothing");let n=t.importRenames.nothing;return g.factory.createParenthesizedExpression(g.factory.createBinaryExpression(g.factory.createParenthesizedExpression(e),g.factory.createToken(g.SyntaxKind.QuestionQuestionToken),g.factory.createIdentifier(n)))}}function Je(e){return typeof e=="string"||id.has(e.kind)||g.isConditionalExpression(e)&&Je(e.whenTrue)&&Je(e.whenFalse)||g.isBinaryExpression(e)&&(sd.has(e.operatorToken.kind)||Je(e.left)&&Je(e.right))||(g.isParenthesizedExpression(e)||g.isSatisfiesExpression(e)||g.isAsExpression(e))&&Je(e.expression)||g.isTaggedTemplateExpression(e)&&g.isIdentifier(e.tag)&&ui.has(e.tag.text)}var id=new Set([g.SyntaxKind.NumericLiteral,g.SyntaxKind.BigIntLiteral,g.SyntaxKind.StringLiteral,g.SyntaxKind.RegularExpressionLiteral,g.SyntaxKind.NoSubstitutionTemplateLiteral,g.SyntaxKind.FalseKeyword,g.SyntaxKind.NullKeyword,g.SyntaxKind.TrueKeyword,g.SyntaxKind.ArrayLiteralExpression,g.SyntaxKind.ObjectLiteralExpression,g.SyntaxKind.FunctionExpression,g.SyntaxKind.ArrowFunction,g.SyntaxKind.TypeOfExpression,g.SyntaxKind.PrefixUnaryExpression,g.SyntaxKind.PostfixUnaryExpression,g.SyntaxKind.TemplateExpression,g.SyntaxKind.ClassExpression,g.SyntaxKind.NonNullExpression]),sd=new Set([g.SyntaxKind.PlusEqualsToken,g.SyntaxKind.MinusEqualsToken,g.SyntaxKind.AsteriskAsteriskEqualsToken,g.SyntaxKind.AsteriskEqualsToken,g.SyntaxKind.SlashEqualsToken,g.SyntaxKind.PercentEqualsToken,g.SyntaxKind.AmpersandEqualsToken,g.SyntaxKind.BarEqualsToken,g.SyntaxKind.CaretEqualsToken,g.SyntaxKind.LessThanLessThanEqualsToken,g.SyntaxKind.GreaterThanGreaterThanGreaterThanEqualsToken,g.SyntaxKind.GreaterThanGreaterThanEqualsToken,g.SyntaxKind.AmpersandToken,g.SyntaxKind.BarToken,g.SyntaxKind.CaretToken,g.SyntaxKind.EqualsEqualsToken,g.SyntaxKind.EqualsEqualsEqualsToken,g.SyntaxKind.ExclamationEqualsEqualsToken,g.SyntaxKind.ExclamationEqualsToken,g.SyntaxKind.LessThanToken,g.SyntaxKind.LessThanEqualsToken,g.SyntaxKind.GreaterThanToken,g.SyntaxKind.GreaterThanEqualsToken,g.SyntaxKind.InstanceOfKeyword,g.SyntaxKind.InKeyword,g.SyntaxKind.LessThanLessThanToken,g.SyntaxKind.GreaterThanGreaterThanToken,g.SyntaxKind.GreaterThanGreaterThanGreaterThanToken,g.SyntaxKind.PlusToken,g.SyntaxKind.MinusToken,g.SyntaxKind.AsteriskToken,g.SyntaxKind.SlashToken,g.SyntaxKind.PercentToken,g.SyntaxKind.AsteriskAsteriskToken]);var Li={property(e,t,n,r){let o=pd(r,n,e),i=o!==void 0;if(i){let l=Wn(t);if(l===!0)return[o.attributeName];if(l===!1)return[]}let s=t===void 0?["=",v.factory.createToken(v.SyntaxKind.TrueKeyword)]:Nt(e,t,i),a=s[0]!=="=";if(i){if(a)return[o.attributeName,...s];if(o.type==="stringified"){let[p,d]=s,m=Bn(d,e);if(!(m===d))return[o.attributeName,p,m]}}return[`.${n}`,...s]},attribute(e,t,n){let r=t===void 0||Wn(t);if(r===!0)return[n];if(r===!1)return[];let o=Nt(e,t,!0),s=o[0]!=="="?o:[o[0],Bn(o[1],e)];return[n,...s]},booleanAttribute(e,t,n){let r=t===void 0||Wn(t);return r===!0?[n]:r===!1?[]:[`?${n}`,...Nt(e,t,!1)]},event(e,t,n){if(!t||!v.isJsxExpression(t)||!t.expression)throw new Error(`Event prop value must be an expression. Found ${String(t?.getText())}`);let r=n.slice(2),o=Ni(r);return[`@${ht.has(o)?r.toLowerCase():yo?Ni(r):r}=`,...$t(e,t)]},directives(e,t){if(!t||!v.isJsxExpression(t))throw new Error(`Directives prop must be an expression. Found ${String(t?.getText())}`);if(!t.expression||!v.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(v.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 V(e,o)})},ref(e,t){e.neededImports.add("ref");let n=e.importRenames.ref;if(!t||!v.isJsxExpression(t)||!t.expression)throw new Error(`ref prop value must be an expression. Found ${String(t?.getText())}`);return[v.factory.createCallExpression(v.factory.createIdentifier(n),void 0,[V(e,t.expression)])]},class:Ii,style:Ii,key:(e,t)=>[Ye(t)],dynamicValue(e,t,n){e.neededImports.add("dynamicValueDirective");let r=e.importRenames.dynamicValueDirective;return[v.factory.createCallExpression(v.factory.createIdentifier(r),void 0,[v.factory.createStringLiteral(n),...t===void 0?[]:[V(e,v.isJsxExpression(t)?t.expression??v.factory.createIdentifier("undefined"):t)]])]}};function pd(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=Hn(U.common,t);if(r)return r;if(typeof e=="string"){let o=Hn(U.perElement[e],t);if(o)return o}else{let o=ad(Object.values(U.perElement),i=>{let s=Hn(i,t);return s?.type==="stringified"?s:void 0});if(o)return o}}function Hn(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 Ye(e){if(e&&v.isJsxExpression(e)&&e.expression)return e.expression;if(e&&v.isStringLiteral(e))return e;throw new Error(`key prop value must be an expression. Found ${String(e?.getText())}`)}function Wn(e){if(e===void 0)return!0;if(e&&v.isJsxExpression(e)){if(e.expression?.kind===v.SyntaxKind.TrueKeyword||e.expression===void 0)return!0;if(e.expression?.kind===v.SyntaxKind.FalseKeyword)return!1}}function Nt(e,t,n=!1){if(Re(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(v.isStringLiteral(t))return $i(t,n);if(v.isJsxExpression(t)&&t.expression){if(v.isStringLiteral(t.expression))return $i(t.expression,n);if(n){if(v.isNumericLiteral(t.expression))return[`=${t.expression.text}`];if(v.isPrefixUnaryExpression(t.expression)&&v.isNumericLiteral(t.expression.operand))return[`=${t.expression.getText(e.sourceFile)}`]}}return["=",...$t(e,t)]}function $i(e,t){if(!t)return["=",e];let n=e.text;if(n.length===0)return[];let r=at(n);if(Ir(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 Ii(e,t,n){if(t&&v.isStringLiteral(t))return[`${n}="${t.text}"`];if(!t||!v.isJsxExpression(t)||!t.expression)throw new Error(`${n} prop value must be an expression. Found ${String(t?.getText())}`);let r=t.expression;if(ld(r)){let i=n==="class"?"safeClassMap":"safeStyleMap";e.neededImports.add(i);let s=e.importRenames[i],a=v.factory.createCallExpression(v.factory.createIdentifier(s),void 0,[V(e,r)]);return[`${n}=`,a]}else return[n,...Nt(e,t,!0)]}var ld=e=>v.isObjectLiteralExpression(e)||v.isPropertyAccessExpression(e)||v.isIdentifier(e)||v.isCallExpression(e)||v.isBinaryExpression(e)||v.isConditionalExpression(e);import Ze from"typescript";function Ri(e){if(e&&Ze.isJsxExpression(e)&&e.expression&&Ze.isCallExpression(e.expression)&&Ze.isIdentifier(e.expression.expression)&&e.expression.expression.text in ji&&e.expression.arguments.length<=1)return{propType:ji[e.expression.expression.text],initializer:Ze.factory.createJsxExpression(void 0,e.expression.arguments[0])}}var ji={bindProperty:"property",bindAttribute:"attribute",bindBooleanAttribute:"booleanAttribute",bindEvent:"event"};function Oi(e,t,n){return md.has(e)?e:e.startsWith("on")&&t!==void 0&&Ze.isJsxExpression(t)&&t.expression!==void 0?"event":yt.has(e)||e.includes("-")?"attribute":!(typeof n=="string"&&n.includes("-")&&!Ne.has(n))&&(gt.has(e)||(n===Ge?!1:n===ke?Object.values(_e).some(s=>s.has(e)):_e[n]?.has(e)===!0))?cn.has(e)?"booleanAttribute":"attribute":n==="svg"||n==="math"||n===Ge||n!==ke&&(De.has(n)||Ae.has(n))?e in U.common.normal||e in U.common.stringified?"property":cn.has(e)?"booleanAttribute":"attribute":n===ke&&(e==="value"||e==="defaultValue")?"dynamicValue":"property"}var dd=["class","style","ref","directives","key"],md=new Set(dd);import J from"typescript";var Ji=e=>typeof e!="string"||e.trim().length>0;function et({key:e,parts:t,litTag:n},r){let o=cd(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 Kn(r,e,J.factory.createStringLiteral(i));if(i===""&&s.length===2&&s[1]==="")return Kn(r,e,typeof s[0]=="string"?J.factory.createStringLiteral(i):s[0])}let a=typeof n=="string"?n:ee;r.neededImports.add(a);let l=r.importRenames[a],p=xe(i),d=J.factory.createTaggedTemplateExpression(J.factory.createIdentifier(l),void 0,s.length===0?J.factory.createNoSubstitutionTemplateLiteral(p,p):J.factory.createTemplateExpression(J.factory.createTemplateHead(p,p),ud(s)));return Kn(r,e,d)}var cd=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 l=r===e.length-1;return!s&&l?[...t,n,""]:!s&&!l?[...t,n,""]:[...t,n]},[""]);function ud(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,l=e[a];if(typeof l!="string")throw new Error("Expected to receive a normalized array of parts");let p=o===n-1,d=xe(l);return J.factory.createTemplateSpan(s,p?J.factory.createTemplateTail(d,d):J.factory.createTemplateMiddle(d,d))})}function Kn(e,t,n){if(t===void 0)return n;e.neededImports.add("keyed");let r=e.importRenames.keyed;return J.factory.createCallExpression(J.factory.createIdentifier(r),void 0,[t,n])}import zn from"typescript";var Vn=(e,t)=>e.getFullText(t.sourceFile).slice(0,e.getLeadingTriviaWidth(t.sourceFile));function qn(e,t){let n=It(e);return n.length===0?t:zn.setSyntheticLeadingComments(t,n.map(r=>({...r,pos:-1,end:-1,text:Hi(e.slice(r.pos,r.end))})))}var It=e=>e.trim().length===0?[]:zn.getLeadingCommentRanges(e,0)??[];function Bi(e){let t=It(e);if(t.length===0)return[e];let n=t.reduceRight(([o,...i],s)=>{let a=xe(Hi(Un(o).slice(s.pos,s.end)));return[Un(o).slice(0,s.pos),zn.factory.createNoSubstitutionTemplateLiteral(a,a),Un(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 Hi=e=>e.startsWith("//")?e.slice(2):e.slice(2,-2);function Un(e){if(typeof e=="string")return e;throw new Error(`Expected string, got ${typeof e}: ${String(e)}`)}import{isNotUndefined as hd}from"@arcgis/components-utils";import M from"typescript";function Wi(e,t){if(!(M.isPropertyAccessExpression(t.expression)&&t.expression.name.text==="map"))return t;let r=t.arguments[0];if(!(t.arguments.length===1&&M.isArrowFunction(r)))return t;let i=r.parameters.at(0);if(!(typeof i=="object"&&r.parameters.length<=2))return t;let a=M.isParenthesizedExpression(r.body)?r.body.expression:r.body;if(!M.isJsxElement(a)&&!M.isJsxSelfClosingElement(a))return t;let l=M.isJsxElement(a)?a.openingElement:a,p=Gn(l);if(p===-1)return t;let d=l.attributes.properties[p],m=d&&M.isJsxAttribute(d)?Ye(d.initializer):void 0;if(!m)return t;let f=Array.from(l.attributes.properties);f.splice(p,1);let c=M.factory.updateJsxAttributes(l.attributes,f);e.neededImports.add("repeat");let y=e.importRenames.repeat;return M.factory.updateCallExpression(t,M.factory.createIdentifier(y),t.typeArguments,[t.expression.expression,M.factory.createArrowFunction(void 0,void 0,[fd(i,m)],void 0,void 0,m),M.factory.updateArrowFunction(r,r.modifiers,r.typeParameters,r.parameters,r.type,r.equalsGreaterThanToken,M.isJsxElement(a)?M.factory.updateJsxElement(a,M.factory.updateJsxOpeningElement(a.openingElement,a.openingElement.tagName,a.openingElement.typeArguments,c),a.children,a.closingElement):M.factory.updateJsxSelfClosingElement(a,a.tagName,a.typeArguments,c))])}function fd(e,t){return M.factory.updateParameterDeclaration(e,e.modifiers,e.dotDotDotToken,M.isObjectBindingPattern(e.name)?yd(e.name,t.getText()):e.name,e.questionToken,e.type,e.initializer)}function yd(e,t){let n=!1,r=e.elements.filter(o=>M.isIdentifier(o.name)?t.includes(o.name.getText())||o.propertyName&&t.includes(o.name.getText()):(n=!0,!0));return n||r.length===0?e:M.factory.updateObjectBindingPattern(e,r)}import{toSystemPathSeparators as Lt}from"@arcgis/components-build-utils";var Ui=e=>e.manifestComponents.map(({name:t,importPath:n})=>`import type { ${t} } from "./${n}";`).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 Se(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 Yl(e){let n=(await Promise.all([ae,Mn(e)])).flat();await Ft(n,e.dir.src,wn,e.viteConfig.test?.browser?.provider)}import{getCwd as Zl,path as D}from"@arcgis/components-build-utils";var At="@arcgis/lumina:compilerContextPlugin",w=class{constructor(t){this._typeScriptSourceFiles={};this.plugin={name:At,enforce:"pre",apply:(t,n)=>(this._inferBuildSetup(n,t.define),!0),configResolved:{order:"pre",handler:t=>{this.viteConfig=t,this.shouldMinify=this.viteCommand!=="serve"&&t.build.minify!==!1;let n=D.join(t.root,D.sep),r=D.join(n,"src",D.sep),o=D.join(r,"components",D.sep),i=D.join(D.resolve(n,t.build.outDir),D.sep),s=D.join(D.relative(n,i),D.sep),a=D.join(i,"components",D.sep),l=D.join(i,this.options.build?.cdn?.namespace??Le,D.sep),p=D.join(l,"assets",D.sep);this.dir={root:n,src:r,srcComponents:o,relativeDist:s,dist:i,distComponents:a,distCdn:l,distCdnAssets:p},t.root!==Zl()?console.warn(`${At}: 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.`):i===n?console.warn(`${At}: 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/)`):s.startsWith("..")&&console.warn(`${At}: 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),Dt(this)&&Se(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?Ie(n.manifestFileName):Oe.manifest,stencilLikeDocsJson:n.stencilLikeDocsJsonFileName?Ie(n.stencilLikeDocsJsonFileName):Oe.stencilLikeDocsJson,webTypes:n.jetBrains?.webTypesFileName?Ie(n.jetBrains.webTypesFileName):Oe.webTypes,vsCodeHtml:n.vsCode?.htmlFileName?Ie(n.vsCode.htmlFileName):Oe.vsCodeHtml,vsCodeCss:n.vsCode?.cssFileName?Ie(n.vsCode.cssFileName):Oe.vsCodeCss},Tt().catch(console.error),this.componentFilesPromise=Ue(this,D.resolve("src/components"));let r=Do(t.types?.tsconfigPath);this.typeScriptConfigPath=r.path,this.typeScriptConfig=r.config;let o=t.build?.preamble??Ao();this.banner=No(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(`${ke}: 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=On.createSourceFile(t,n,r?.languageVersion??this.typeScriptConfig.options.target??On.ScriptTarget.Latest,!0,On.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"&&le(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()")}};N([I("buildStart() in build mode or load() serve mode")],w.prototype,"typeScriptHost",2),N([I("configResolved()")],w.prototype,"shouldMinify",2),N([I("configResolved()")],w.prototype,"dir",2),N([I("load()")],w.prototype,"manifest",2),N([I("load()")],w.prototype,"manifestComponents",2),N([I("load() when in build mode")],w.prototype,"componentPathMapping",2),N([I("apply()")],w.prototype,"environment",2),N([I("apply()")],w.prototype,"isInTest",2),N([I("apply()")],w.prototype,"isInPuppeteerTestBackEnd",2),N([I("apply()")],w.prototype,"isInPuppeteerTestFrontEnd",2),N([I("configResolved()")],w.prototype,"isInStorybook",2),N([I("configResolved()")],w.prototype,"hmrEnabled",2),N([I("apply()")],w.prototype,"viteCommand",2),N([I("configResolved()")],w.prototype,"viteConfig",2),N([I("configResolved()")],w.prototype,"server",2),N([I("transform()")],w.prototype,"globalHydratedCssString",2),N([I("config()")],w.prototype,"componentFiles",2);import{path as ce,toSystemPathSeparators as nd}from"@arcgis/components-build-utils";import{writeFile as Fi}from"node:fs/promises";import{path as ed,toSystemPathSeparators as td}from"@arcgis/components-build-utils";function Mi(e,t,n){let r=bt()[t]??Jn(e.manifest)[t];if(r===void 0){let o=td(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 ki(e,t){return e.packageName===void 0?_(t,e.moduleName):ed.join(e.packageName,e.moduleName)}var Pi=new WeakMap;function Jn(e){let t=Pi.get(e);if(t)return t;let n=Tn(e,{packageName:void 0,getImportPath(){throw new Error("not supposed to be called for local components")}});return Pi.set(e,n),n}var Di=e=>({name:"@arcgis/lumina:addNonLazyImports",apply:()=>e.viteCommand==="build",generateBundle(t,n){Object.entries(n).forEach(([r,o])=>{let i=te(r,"components/",e);if(i!==r&&(o.fileName=i),o.type==="chunk"){let s=ce.dirname(ce.join(e.dir.dist,r)),a=i===r?s:ce.dirname(ce.join(e.dir.dist,i));o.code=Wt(o.code,e,a,s)}})},async writeBundle(){if(e.isInStorybook)return;let t=He.get(e)??{},n=Object.entries(t),r=new Set(n.map(([i])=>i).filter(i=>oe(i,e.dir.srcComponents)));n.forEach(([i,{referencedTagNames:s,referencedBy:a}])=>{if(r.has(i)||s.length===0)return;let l=Ai(t,a,r);if(l.forEach(p=>{t[p].referencedTagNames.splice(0,0,...s)}),s.length>0&&l.length===0){let p=nd(i);throw new Error(`Unable to determine what files imported ${p}. 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 ${p} 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=ce.dirname(i),l=te(a,e.dir.srcComponents,e),p=ce.relative(e.dir.src,l),d=s.map(c=>ki(Mi(e,c,i),p)).filter(c=>c!==`./${p}`),f=`${Array.from(new Set(d),c=>`import "${c}";
|
|
100
|
+
`).join("").trimStart()}export * from "./${we}";`;return[Fi(ce.join(e.dir.dist,p,rd),f),Fi(ce.join(e.dir.dist,p,od),f)]});await Promise.all(o)}}),rd="index.js",od="index.d.ts",Ai=(e,t,n,r=new Set)=>t.flatMap(o=>n.has(o)?[o]:r.has(o)?[]:(r.add(o),Ai(e,e[o].referencedBy,n,r)));import Kd from"typescript";import Sd from"typescript";import T from"typescript";import v from"typescript";import{mappedFind as ad,uncapitalize as Ni}from"@arcgis/components-utils";import g from"typescript";function Bn(e,t){if(Je(e))return e;{t.neededImports.add("nothing");let n=t.importRenames.nothing;return g.factory.createParenthesizedExpression(g.factory.createBinaryExpression(g.factory.createParenthesizedExpression(e),g.factory.createToken(g.SyntaxKind.QuestionQuestionToken),g.factory.createIdentifier(n)))}}function Je(e){return typeof e=="string"||id.has(e.kind)||g.isConditionalExpression(e)&&Je(e.whenTrue)&&Je(e.whenFalse)||g.isBinaryExpression(e)&&(sd.has(e.operatorToken.kind)||Je(e.left)&&Je(e.right))||(g.isParenthesizedExpression(e)||g.isSatisfiesExpression(e)||g.isAsExpression(e))&&Je(e.expression)||g.isTaggedTemplateExpression(e)&&g.isIdentifier(e.tag)&&ui.has(e.tag.text)}var id=new Set([g.SyntaxKind.NumericLiteral,g.SyntaxKind.BigIntLiteral,g.SyntaxKind.StringLiteral,g.SyntaxKind.RegularExpressionLiteral,g.SyntaxKind.NoSubstitutionTemplateLiteral,g.SyntaxKind.FalseKeyword,g.SyntaxKind.NullKeyword,g.SyntaxKind.TrueKeyword,g.SyntaxKind.ArrayLiteralExpression,g.SyntaxKind.ObjectLiteralExpression,g.SyntaxKind.FunctionExpression,g.SyntaxKind.ArrowFunction,g.SyntaxKind.TypeOfExpression,g.SyntaxKind.PrefixUnaryExpression,g.SyntaxKind.PostfixUnaryExpression,g.SyntaxKind.TemplateExpression,g.SyntaxKind.ClassExpression,g.SyntaxKind.NonNullExpression]),sd=new Set([g.SyntaxKind.PlusEqualsToken,g.SyntaxKind.MinusEqualsToken,g.SyntaxKind.AsteriskAsteriskEqualsToken,g.SyntaxKind.AsteriskEqualsToken,g.SyntaxKind.SlashEqualsToken,g.SyntaxKind.PercentEqualsToken,g.SyntaxKind.AmpersandEqualsToken,g.SyntaxKind.BarEqualsToken,g.SyntaxKind.CaretEqualsToken,g.SyntaxKind.LessThanLessThanEqualsToken,g.SyntaxKind.GreaterThanGreaterThanGreaterThanEqualsToken,g.SyntaxKind.GreaterThanGreaterThanEqualsToken,g.SyntaxKind.AmpersandToken,g.SyntaxKind.BarToken,g.SyntaxKind.CaretToken,g.SyntaxKind.EqualsEqualsToken,g.SyntaxKind.EqualsEqualsEqualsToken,g.SyntaxKind.ExclamationEqualsEqualsToken,g.SyntaxKind.ExclamationEqualsToken,g.SyntaxKind.LessThanToken,g.SyntaxKind.LessThanEqualsToken,g.SyntaxKind.GreaterThanToken,g.SyntaxKind.GreaterThanEqualsToken,g.SyntaxKind.InstanceOfKeyword,g.SyntaxKind.InKeyword,g.SyntaxKind.LessThanLessThanToken,g.SyntaxKind.GreaterThanGreaterThanToken,g.SyntaxKind.GreaterThanGreaterThanGreaterThanToken,g.SyntaxKind.PlusToken,g.SyntaxKind.MinusToken,g.SyntaxKind.AsteriskToken,g.SyntaxKind.SlashToken,g.SyntaxKind.PercentToken,g.SyntaxKind.AsteriskAsteriskToken]);var Li={property(e,t,n,r){let o=pd(r,n,e),i=o!==void 0;if(i){let l=Wn(t);if(l===!0)return[o.attributeName];if(l===!1)return[]}let s=t===void 0?["=",v.factory.createToken(v.SyntaxKind.TrueKeyword)]:Nt(e,t,i),a=s[0]!=="=";if(i){if(a)return[o.attributeName,...s];if(o.type==="stringified"){let[p,d]=s,m=Bn(d,e);if(!(m===d))return[o.attributeName,p,m]}}return[`.${n}`,...s]},attribute(e,t,n){let r=t===void 0||Wn(t);if(r===!0)return[n];if(r===!1)return[];let o=Nt(e,t,!0),s=o[0]!=="="?o:[o[0],Bn(o[1],e)];return[n,...s]},booleanAttribute(e,t,n){let r=t===void 0||Wn(t);return r===!0?[n]:r===!1?[]:[`?${n}`,...Nt(e,t,!1)]},event(e,t,n){if(!t||!v.isJsxExpression(t)||!t.expression)throw new Error(`Event prop value must be an expression. Found ${String(t?.getText())}`);let r=n.slice(2),o=Ni(r);return[`@${ht.has(o)?r.toLowerCase():yo?Ni(r):r}=`,...$t(e,t)]},directives(e,t){if(!t||!v.isJsxExpression(t))throw new Error(`Directives prop must be an expression. Found ${String(t?.getText())}`);if(!t.expression||!v.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(v.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 V(e,o)})},ref(e,t){e.neededImports.add("ref");let n=e.importRenames.ref;if(!t||!v.isJsxExpression(t)||!t.expression)throw new Error(`ref prop value must be an expression. Found ${String(t?.getText())}`);return[v.factory.createCallExpression(v.factory.createIdentifier(n),void 0,[V(e,t.expression)])]},class:Ii,style:Ii,key:(e,t)=>[Ye(t)],dynamicValue(e,t,n){e.neededImports.add("dynamicValueDirective");let r=e.importRenames.dynamicValueDirective;return[v.factory.createCallExpression(v.factory.createIdentifier(r),void 0,[v.factory.createStringLiteral(n),...t===void 0?[]:[V(e,v.isJsxExpression(t)?t.expression??v.factory.createIdentifier("undefined"):t)]])]}};function pd(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=Hn(U.common,t);if(r)return r;if(typeof e=="string"){let o=Hn(U.perElement[e],t);if(o)return o}else{let o=ad(Object.values(U.perElement),i=>{let s=Hn(i,t);return s?.type==="stringified"?s:void 0});if(o)return o}}function Hn(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 Ye(e){if(e&&v.isJsxExpression(e)&&e.expression)return e.expression;if(e&&v.isStringLiteral(e))return e;throw new Error(`key prop value must be an expression. Found ${String(e?.getText())}`)}function Wn(e){if(e===void 0)return!0;if(e&&v.isJsxExpression(e)){if(e.expression?.kind===v.SyntaxKind.TrueKeyword||e.expression===void 0)return!0;if(e.expression?.kind===v.SyntaxKind.FalseKeyword)return!1}}function Nt(e,t,n=!1){if(Re(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(v.isStringLiteral(t))return $i(t,n);if(v.isJsxExpression(t)&&t.expression){if(v.isStringLiteral(t.expression))return $i(t.expression,n);if(n){if(v.isNumericLiteral(t.expression))return[`=${t.expression.text}`];if(v.isPrefixUnaryExpression(t.expression)&&v.isNumericLiteral(t.expression.operand))return[`=${t.expression.getText(e.sourceFile)}`]}}return["=",...$t(e,t)]}function $i(e,t){if(!t)return["=",e];let n=e.text;if(n.length===0)return[];let r=at(n);if(Ir(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 Ii(e,t,n){if(t&&v.isStringLiteral(t))return[`${n}="${t.text}"`];if(!t||!v.isJsxExpression(t)||!t.expression)throw new Error(`${n} prop value must be an expression. Found ${String(t?.getText())}`);let r=t.expression;if(ld(r)){let i=n==="class"?"safeClassMap":"safeStyleMap";e.neededImports.add(i);let s=e.importRenames[i],a=v.factory.createCallExpression(v.factory.createIdentifier(s),void 0,[V(e,r)]);return[`${n}=`,a]}else return[n,...Nt(e,t,!0)]}var ld=e=>v.isObjectLiteralExpression(e)||v.isPropertyAccessExpression(e)||v.isIdentifier(e)||v.isCallExpression(e)||v.isBinaryExpression(e)||v.isConditionalExpression(e);import Ze from"typescript";function Ri(e){if(e&&Ze.isJsxExpression(e)&&e.expression&&Ze.isCallExpression(e.expression)&&Ze.isIdentifier(e.expression.expression)&&e.expression.expression.text in ji&&e.expression.arguments.length<=1)return{propType:ji[e.expression.expression.text],initializer:Ze.factory.createJsxExpression(void 0,e.expression.arguments[0])}}var ji={bindProperty:"property",bindAttribute:"attribute",bindBooleanAttribute:"booleanAttribute",bindEvent:"event"};function Oi(e,t,n){return md.has(e)?e:e.startsWith("on")&&t!==void 0&&Ze.isJsxExpression(t)&&t.expression!==void 0?"event":yt.has(e)||e.includes("-")?"attribute":!(typeof n=="string"&&n.includes("-")&&!Ne.has(n))&&(gt.has(e)||(n===Ge?!1:n===Fe?Object.values(_e).some(s=>s.has(e)):_e[n]?.has(e)===!0))?cn.has(e)?"booleanAttribute":"attribute":n==="svg"||n==="math"||n===Ge||n!==Fe&&(De.has(n)||Ae.has(n))?e in U.common.normal||e in U.common.stringified?"property":cn.has(e)?"booleanAttribute":"attribute":n===Fe&&(e==="value"||e==="defaultValue")?"dynamicValue":"property"}var dd=["class","style","ref","directives","key"],md=new Set(dd);import J from"typescript";var Ji=e=>typeof e!="string"||e.trim().length>0;function et({key:e,parts:t,litTag:n},r){let o=cd(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 Kn(r,e,J.factory.createStringLiteral(i));if(i===""&&s.length===2&&s[1]==="")return Kn(r,e,typeof s[0]=="string"?J.factory.createStringLiteral(i):s[0])}let a=typeof n=="string"?n:ee;r.neededImports.add(a);let l=r.importRenames[a],p=xe(i),d=J.factory.createTaggedTemplateExpression(J.factory.createIdentifier(l),void 0,s.length===0?J.factory.createNoSubstitutionTemplateLiteral(p,p):J.factory.createTemplateExpression(J.factory.createTemplateHead(p,p),ud(s)));return Kn(r,e,d)}var cd=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 l=r===e.length-1;return!s&&l?[...t,n,""]:!s&&!l?[...t,n,""]:[...t,n]},[""]);function ud(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,l=e[a];if(typeof l!="string")throw new Error("Expected to receive a normalized array of parts");let p=o===n-1,d=xe(l);return J.factory.createTemplateSpan(s,p?J.factory.createTemplateTail(d,d):J.factory.createTemplateMiddle(d,d))})}function Kn(e,t,n){if(t===void 0)return n;e.neededImports.add("keyed");let r=e.importRenames.keyed;return J.factory.createCallExpression(J.factory.createIdentifier(r),void 0,[t,n])}import zn from"typescript";var Vn=(e,t)=>e.getFullText(t.sourceFile).slice(0,e.getLeadingTriviaWidth(t.sourceFile));function qn(e,t){let n=It(e);return n.length===0?t:zn.setSyntheticLeadingComments(t,n.map(r=>({...r,pos:-1,end:-1,text:Hi(e.slice(r.pos,r.end))})))}var It=e=>e.trim().length===0?[]:zn.getLeadingCommentRanges(e,0)??[];function Bi(e){let t=It(e);if(t.length===0)return[e];let n=t.reduceRight(([o,...i],s)=>{let a=xe(Hi(Un(o).slice(s.pos,s.end)));return[Un(o).slice(0,s.pos),zn.factory.createNoSubstitutionTemplateLiteral(a,a),Un(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 Hi=e=>e.startsWith("//")?e.slice(2):e.slice(2,-2);function Un(e){if(typeof e=="string")return e;throw new Error(`Expected string, got ${typeof e}: ${String(e)}`)}import{isNotUndefined as hd}from"@arcgis/components-utils";import M from"typescript";function Wi(e,t){if(!(M.isPropertyAccessExpression(t.expression)&&t.expression.name.text==="map"))return t;let r=t.arguments[0];if(!(t.arguments.length===1&&M.isArrowFunction(r)))return t;let i=r.parameters.at(0);if(!(typeof i=="object"&&r.parameters.length<=2))return t;let a=M.isParenthesizedExpression(r.body)?r.body.expression:r.body;if(!M.isJsxElement(a)&&!M.isJsxSelfClosingElement(a))return t;let l=M.isJsxElement(a)?a.openingElement:a,p=Gn(l);if(p===-1)return t;let d=l.attributes.properties[p],m=d&&M.isJsxAttribute(d)?Ye(d.initializer):void 0;if(!m)return t;let f=Array.from(l.attributes.properties);f.splice(p,1);let c=M.factory.updateJsxAttributes(l.attributes,f);e.neededImports.add("repeat");let y=e.importRenames.repeat;return M.factory.updateCallExpression(t,M.factory.createIdentifier(y),t.typeArguments,[t.expression.expression,M.factory.createArrowFunction(void 0,void 0,[fd(i,m)],void 0,void 0,m),M.factory.updateArrowFunction(r,r.modifiers,r.typeParameters,r.parameters,r.type,r.equalsGreaterThanToken,M.isJsxElement(a)?M.factory.updateJsxElement(a,M.factory.updateJsxOpeningElement(a.openingElement,a.openingElement.tagName,a.openingElement.typeArguments,c),a.children,a.closingElement):M.factory.updateJsxSelfClosingElement(a,a.tagName,a.typeArguments,c))])}function fd(e,t){return M.factory.updateParameterDeclaration(e,e.modifiers,e.dotDotDotToken,M.isObjectBindingPattern(e.name)?yd(e.name,t.getText()):e.name,e.questionToken,e.type,e.initializer)}function yd(e,t){let n=!1,r=e.elements.filter(o=>M.isIdentifier(o.name)?t.includes(o.name.getText())||o.propertyName&&t.includes(o.name.getText()):(n=!0,!0));return n||r.length===0?e:M.factory.updateObjectBindingPattern(e,r)}import{toSystemPathSeparators as Lt}from"@arcgis/components-build-utils";var Ui=e=>e.manifestComponents.map(({name:t,importPath:n})=>`import type { ${t} } from "./${n}";`).join(`
|
|
101
101
|
`),gd=/^[a-zA-Z_$][a-zA-Z\d_$]*$/u,Ee=e=>!gd.test(e),q=e=>Ee(e)?`"${e}"`:e;function ue(e,t=[]){let n=t?.filter(m=>m.kind==="field"&&m.readonly!==!0),r=[],o=[],i=!1;n.forEach(m=>{let f=m;if(f.getterType){i=!0;return}f.docsTags?.some(y=>y.name==="required")?r.push(m.name):o.push(m.name)});let s=Ki(r),a=Ki(o),l=[s?`Required<Pick<${e}, ${s}>>`:"",a?`Partial<Pick<${e}, ${a}>>`:"",i?`${e}SetterTypes`:""],p=i?`
|
|
102
|
-
type ${e}SetterTypes = ${e}["${zt}"]`:"",d=l.filter(Boolean).join(", ");return[d.length===0?"":`${d}, `,p]}var Ki=e=>e.map(t=>`'${t}'`).join(" | ");function V(e,t){return zi(e,t)}function zi(e,t){if(Re(t))return Vi(e,t);let n=T.isCallExpression(t)?Wi(e,t):t;return T.visitEachChild(n,zi.bind(null,e),e.transformationContext)}function Vi(e,t){let n=qi(e,t);return et(n,e)}function qi(e,t){let n="children"in t?t.children:[];if(T.isJsxFragment(t))return{key:void 0,...jt(n,e)};let o=T.isJsxElement(t)?t.openingElement:t,i=o.tagName;if(T.isJsxNamespacedName(i)){let C=Lt(e.sourceFile.fileName);throw new Error(`JSX namespaced elements are not supported. Found ${i.getText()} in "${C}"`)}if(!T.isIdentifier(i)||!i.text.startsWith(i.text[0].toLowerCase())&&i.text!==ut&&i.text!==ft){let h=T.isIdentifier(i)&&i.text===fo?jt(n,e):{litTag:void 0,parts:[Cd(e,t,i,n)]};return{key:xd(o),...h}}let a=i.text===ut?
|
|
103
|
-
Found ${C.getText()}`);let{name:h,initializer:b}=C;if(T.isJsxNamespacedName(h)){let Bt=Lt(e.sourceFile.fileName);throw new Error(`JSX namespaced attributes are not supported. Found ${h.getText()} in "${Bt}"`)}let A=h.text,B=Ri(b),F=B?.propType??Oi(A,b,a),G=Li[F](e,B?.initializer??b,A,a);if(G.length===0)return[];let ye=e.compiler.shouldMinify?" ":Bi(Vn(h,e));if(F==="key")return p=typeof G[0]=="object"?G[0]:void 0,Array.isArray(ye)&&ye.some(Ji)?ye:[];let Be=[...ye,...G];return F==="directives"||F==="ref"||F==="dynamicValue"?(d.push(...Be),[]):Be});if(d.length>0&&m.push(...d),typeof a=="string"&&Ae.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 f=typeof a=="string"&&ho.has(a),c=jt(n,e);if(f&&c.parts.length>0){let C=Lt(e.sourceFile.fileName);throw new Error(`Void HTML elements like <${a}> cannot have children. Found ${t.getText()} in "${C}"`)}let y=(l===me||l===Z)&&c.parts.length===0,x=["<",typeof a=="string"?a:i,...m,y?`${m.length===0?"":" "}/>`:">"],u=f||y?x:[...x,...c.litTag!==void 0&&c.litTag!==l?[et({key:void 0,...c},e)]:c.parts,"</",typeof a=="string"?a:i,">"];return{key:p,parts:u,litTag:l}}function xd(e){let t=e.attributes.properties[Gn(e)];return t&&T.isJsxAttribute(t)?Ye(t.initializer):void 0}var Gn=e=>e.attributes.properties.findIndex(({name:t})=>t&&T.isIdentifier(t)&&t.text==="key");function Cd(e,t,n,r){let i=(T.isJsxElement(t)?t.openingElement:t).attributes.properties.map(l=>{if(T.isJsxSpreadAttribute(l))return qn(Vn(l,e),T.factory.createSpreadAssignment(l.expression));let{name:p,initializer:d}=l;if(T.isJsxNamespacedName(p)){let c=Lt(e.sourceFile.fileName);throw new Error(`JSX namespaced attributes are not supported. Found ${p.getText(e.sourceFile)} in "${c}"`)}if(p.text==="key")return;let m=d===void 0?T.factory.createTrue():T.isStringLiteral(d)?d:Re(d)?Vi(e,d):V(e,d.expression??T.factory.createIdentifier("undefined")),f=Ee(p.text)?T.factory.createStringLiteral(p.text):p;return T.factory.createPropertyAssignment(f,m)}),{parts:s,litTag:a}=jt(r,e);return s.length>0&&i.push(T.factory.createPropertyAssignment(T.factory.createIdentifier("children"),et({key:void 0,parts:s,litTag:a},e))),T.factory.createCallExpression(n,void 0,[T.factory.createObjectLiteralExpression(i.filter(hd))])}function jt(e,t){let n,r=e.flatMap(o=>{if(T.isJsxText(o))return[t.compiler.shouldMinify?$r(o.text):o.text];if(T.isJsxExpression(o))return $t(t,Td(o));{let i=qi(t,o);if(i.key===void 0&&i.litTag!==de&&i.litTag!==Z){if(i.litTag===In)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[et(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)||Re(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 $t(e,t){if(t.expression===void 0){if(e.compiler.shouldMinify)return[];let n=t.getText(e.sourceFile).slice(1,-1);return It(n).length===0?[]:[qn(n,T.factory.createIdentifier("undefined"))]}return T.isStringLiteral(t.expression)?[at(t.expression.text)]:e.compiler.viteCommand==="serve"&&e.compiler.typeScriptConfig.options.sourceMap&&!e.compiler.shouldMinify&&T.isArrowFunction(t.expression)&&!T.isBlock(t.expression.body)?[V(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)))]:[V(e,t.expression)]}import{path as bd,toSystemPathSeparators as vd}from"@arcgis/components-build-utils";function Gi(e){let t=ko().map(({packageName:n})=>n);return e.existingImportedModules.forEach(n=>{if(bd.isAbsolute(n))return;let{packageName:r,moduleName:o}=tn(n);if(t.includes(r??"")&&(o.startsWith("dist/components")||o.startsWith("components"))){let i=vd(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 _i(e){if(e.compiler.viteCommand==="serve")return e.customElementsToImport.clear(),[];let t=He.get(e.compiler);return t||(t={},He.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 Xi=(e,t)=>{let n=e.pragmas;if(n?.has("jsx")??n?.has("jsxImportSource"))return e.statements;let r={compiler:t.compiler,externalComponents:bt(),localComponents:t.compiler.isInPuppeteerTestBackEnd?{}:Jn(t.compiler.manifest),sourceFile:e,transformationContext:t.transformation,importRenames:Ed(e),existingImportedModules:new Set,importedFunctionComponentsFromModules:new Set,existingLitImports:new Set,customElementsToImport:new Set,neededImports:new Set};e.statements.forEach(a=>{Sd.isImportDeclaration(a)&&hi(r,a)});let i=V(r,e).statements;if(r.neededImports.size>0&&(i=i.map(Ci,r),r.existingLitImports.size>0))throw new Error(`Expected context.existingLitImports to be empty by now. Found: ${Array.from(r.existingLitImports).join(", ")}`);let s=[Ti,Gi,_i].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 Ed(e){return wd(e),Object.fromEntries(fi.map(t=>[t,e.identifiers.has(t)?`${t}$jsx`:t]))}function wd(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.")}import{path as Pd,toSystemPathSeparators as Md}from"@arcgis/components-build-utils";var Qi=(e,t)=>{if(t.fileManifest!==void 0&&e.text.includes(`* @${Q}`))throw new Error(`Do not use @${Q} 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 @${We} instead. Found @${Q} in ${Md(Pd.relative(t.compiler.dir.root,e.fileName))}`);return e.statements};import P from"typescript";import L from"typescript";import{PropertyFlags as fe}from"@arcgis/lumina/config";function Yi(e,t,n){return t.size===0?e:[L.factory.createPropertyDeclaration([L.factory.createModifier(L.SyntaxKind.StaticKeyword),L.factory.createModifier(L.SyntaxKind.OverrideKeyword)],"properties",void 0,void 0,L.factory.createObjectLiteralExpression(Array.from(t.entries()).map(([r,o])=>L.factory.createPropertyAssignment(Ee(r)?L.factory.createStringLiteral(r):r,Fd(o,n))))),...e]}function Fd(e,t){let n=0,r=!0,o=e.properties.filter(a=>{if(!L.isPropertyAssignment(a)||!L.isIdentifier(a.name))return!0;let l=a.name.text,p=a.initializer,d=p.kind===L.SyntaxKind.TrueKeyword,m=p.kind===L.SyntaxKind.FalseKeyword;if(l==="attribute")return r=!1,n|=d?fe.ATTRIBUTE:0,!d&&!m;if(l==="reflect")return n|=d?fe.REFLECT:0,!1;if(l==="type"&&L.isIdentifier(p)){if(p.text==="Boolean")return n|=fe.BOOLEAN,!1;if(p.text==="Number")return n|=fe.NUMBER,!1}else{if(l==="state")return r=!1,n|=d?fe.STATE:0,!1;if(l==="readOnly")return n|=d?fe.READ_ONLY:0,!1;l==="noAccessor"&&(n|=d?fe.NO_ACCESSOR:0)}return!0});r&&(n|=fe.ATTRIBUTE);let i=t?o:e.properties,s=L.factory.createNumericLiteral(n);return i.length===0?s:L.factory.createArrayLiteralExpression([s,L.factory.createObjectLiteralExpression(i)])}import{identity as Jd}from"@arcgis/components-utils";import{readFileSync as jd,writeFileSync as Rd}from"node:fs";import tt from"typescript";import{toSystemPathSeparators as Od}from"@arcgis/components-build-utils";import j from"typescript";import E from"typescript";import{camelToKebab as kd}from"@arcgis/components-utils";import{toSystemPathSeparators as Dd}from"@arcgis/components-build-utils";function Zi(e,t,n,r,o,i){let s=-1,a=!1,l=-1,p=-1;t.options?.properties.forEach((y,x)=>{if(E.isSpreadAssignment(y))throw new Error(`Spread property assignment is not allowed in @property() as that is not statically analyzable. Found ${y.getText(r)}`);if(E.isIdentifier(y.name)){let u=y.name.text;u==="type"?s=x:u==="converter"?a=!0:u==="attribute"?l=x:u==="readOnly"&&(p=x)}});let d=i?.attribute===void 0&&l===-1,m=i?.readonly===!0&&i.docsOnlyReadonly!==!0&&p===-1,f=Ad(e,t,n,r,o,i,s,l,a),c=[...d?[E.factory.createPropertyAssignment("attribute",E.factory.createFalse())]:[],...m?[E.factory.createPropertyAssignment("readOnly",E.factory.createTrue())]:[],...f!==void 0?[f]:[]];return c.length>0?t.options===void 0?E.factory.createObjectLiteralExpression(c,!1):E.factory.updateObjectLiteralExpression(t.options,[...t.options.properties,...c]):t.options}function Ad(e,t,n,r,o,i,s,a,l){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 y=t.options.properties[a],x=kd(i.name);if(E.isPropertyAssignment(y)&&(y.initializer.kind===E.SyntaxKind.TrueKeyword||E.isStringLiteral(y.initializer)&&y.initializer.text===x)&&dn(i.type?.values??[])){let C=t.options.properties[a+1]?.getFullStart()??y.getEnd();o(y.getFullStart(),C,"")}}let p=$d(e),d=n.compiler.viteCommand==="serve"||p!=="Other"?p:Nd(i.type?.values);if(d==="Other"||i.readonly&&(d!=="Boolean"||!i.reflects))return;let m=t.options?.properties[s];if(m){let y="initializer"in m?m.initializer:void 0;if(!l&&y&&E.isIdentifier(y)){let x=`Found property "${i.name}" in "${Dd(r.fileName)}" that has @property({ type: ${y.text} })`,u='. If this is a false warning, you can silence it by adding "converter: undefined" option to @property()';if(y.text==="Boolean"&&d==="Number")console.warn(`${x} where as expected to see @property({ type: Number }) because the property type is number${u}`);else if(y.text==="Number"&&d==="Boolean")console.warn(`${x} where as expected to see @property({ type: Boolean }) because the property type is boolean${u}`);else if(!Id.has(y.text))console.warn(`${x}. The default Lit attribute<-->property converter does not define any behavior for @property({ type: ${y.text} }). Consider removing this "type", or adding a custom converter @property({ converter: ... }) to handle this type${u}`);else if(p!=="Other"&&y.text===p){let h=t.options.properties[s+1]?.getFullStart()??m.getEnd();o(m.getFullStart(),h,"")}}return}if(p==="Other"){let y=`type: ${d}`;if(t.options===void 0){let x=t.decorator.getEnd()-1;o(x,x,`{ ${y} }`)}else{let x=t.options.getStart(r)+1;o(x,x,` ${y},`)}}return E.factory.createPropertyAssignment(E.factory.createIdentifier("type"),E.factory.createIdentifier(d))}function Nd(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 $d(e){let t=e.type??(E.isSetAccessor(e)?e.parameters[0].type:void 0);if(t===void 0){if("initializer"in e&&e.initializer){if(E.isNumericLiteral(e.initializer)||E.isPrefixUnaryExpression(e.initializer)&&e.initializer.operator===E.SyntaxKind.MinusToken&&E.isNumericLiteral(e.initializer.operand))return"Number";if(e.initializer.kind===E.SyntaxKind.FalseKeyword||e.initializer.kind===E.SyntaxKind.TrueKeyword)return"Boolean"}}else{if(t.kind===E.SyntaxKind.NumberKeyword)return"Number";if(t.kind===E.SyntaxKind.BooleanKeyword)return"Boolean"}return"Other"}var Id=new Set(["Number","Boolean","Array","Object"]);function Rt(e,t,n,r,o,i){if(t.modifiers===void 0)return t;let s=-1,a=-1;if(t.modifiers.forEach((l,p)=>{if(j.isDecorator(l)&&j.isCallExpression(l.expression)&&j.isIdentifier(l.expression.expression)){let d=l.expression.expression.text;d==="property"&&(s=p),d==="state"&&(a=p)}}),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 l=Ld(e,t,n,r),p=es(t,s,r),d=Zi(t,p,e,r,o,l),m=!1;return i!==void 0&&l&&(i.set(l.name,d??j.factory.createObjectLiteralExpression()),m=!0),p.options=d,ts(t,p,s,m)}else if(a!==-1&&i!==void 0){let l=es(t,a,r),p=j.factory.createPropertyAssignment("state",j.factory.createTrue()),d=l.options===void 0?j.factory.createObjectLiteralExpression([p]):j.factory.updateObjectLiteralExpression(l.options,[...l.options.properties,p]),m=ot(t);if(m===void 0)throw new Error("Failed to statically determine the state property name");return i.set(m,d),ts(t,l,a,!0)}else return t}function Ld(e,t,n,r){let o=W(e.fileManifest??{},!0).find(s=>s.name===n)??(e.compiler.isInTest?{name:""}:void 0);if(o===void 0)return;let i=Pe(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=ot(t);if(s===void 0)throw new Error(`Failed to statically determine the property name: ${t.getText(r)}`);i.name=s}return i}}function es(e,t,n){let r=e.modifiers[t],o=r.expression,i=o.arguments.at(0);if(i&&!j.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 ts(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:j.factory.updateDecorator(t.decorator,j.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 j.isGetAccessorDeclaration(e)?j.factory.updateGetAccessorDeclaration(e,i,e.name,e.parameters,e.type,e.body):j.isSetAccessorDeclaration(e)?j.factory.updateSetAccessorDeclaration(e,i,e.name,e.parameters,e.body):j.factory.updatePropertyDeclaration(e,i,e.name,e.questionToken??e.exclamationToken,e.type,e.initializer)}function ns(e,t){try{let n=jd(t,"utf-8"),r=tt.createSourceFile(t,n,e.compiler.typeScriptConfig.options.target??tt.ScriptTarget.Latest,!1,tt.ScriptKind.TSX),o=[],i=(l,p)=>tt.isPropertyDeclaration(l)||tt.isAccessor(l)?Rt(e,l,p,r,(...d)=>o.push(d)):l;r.statements.forEach(l=>Ot(i,l,e));let a=o.sort((l,p)=>p[0]-l[0]).reduce((l,[p,d,m])=>`${l.slice(0,p)}${m}${l.slice(d)}`,n);Rd(t,a)}catch(n){console.error(`Failed applying automated edits to the ${Od(t)} file.: Error ${String(n)}`)}}var rs=(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=p=>Yi(p,o,t.compiler.shouldMinify),a=(p,d)=>Hd(t,p,d,e,r,o),l=e.statements.map(p=>Ot(a,p,t,i,s));return!t.compiler.isInCi&&!t.compiler.isInTest&&n&&ns(t,e.fileName),l};function Ot(e,t,n,r,o=Jd){if(P.isClassDeclaration(t)&&t.heritageClauses?.some(s=>s.token===P.SyntaxKind.ExtendsKeyword)){let s=!1,a=t.name?.text;r?.();let l=o(t.members.map(d=>{let m=e(d,a);return s||=m!==d,m}));return s?P.factory.updateClassDeclaration(t,t.modifiers,t.name,t.typeParameters,t.heritageClauses,l):t}return n.compiler.isInTest?P.visitEachChild(t,s=>Ot(e,s,n,r,o),n.transformation):t}var Bd=new Set(["connectedCallback","disconnectedCallback"]);function Hd(e,t,n,r,o,i){if(P.isMethodDeclaration(t)&&t.modifiers){let s=t.modifiers.filter(a=>!P.isDecorator(a)||!Wd(a));if(s.length!==t.modifiers.length)return P.factory.updateMethodDeclaration(t,s,t.asteriskToken,t.name,t.questionToken,t.typeParameters,t.parameters,t.type,t.body);if("text"in t.name&&Bd.has(t.name.text)&&t.body){let a=t.name.text;return t.body.statements.some(p=>P.isExpressionStatement(p)&&P.isCallExpression(p.expression)&&P.isPropertyAccessExpression(p.expression.expression)&&p.expression.expression.expression.kind===P.SyntaxKind.SuperKeyword&&p.expression.expression.name.text===a)?t:P.factory.updateMethodDeclaration(t,t.modifiers,t.asteriskToken,t.name,t.questionToken,t.typeParameters,t.parameters,t.type,P.factory.updateBlock(t.body,[P.factory.createExpressionStatement(P.factory.createCallExpression(P.factory.createPropertyAccessExpression(P.factory.createSuper(),a),void 0,[])),...t.body.statements]))}}return P.isPropertyDeclaration(t)||P.isAccessor(t)?Rt(e,t,n,r,o,i):t}var Wd=e=>P.isCallExpression(e.expression)&&P.isIdentifier(e.expression.expression)&&e.expression.expression.text==="method";import{path as ss}from"@arcgis/components-build-utils";var os="makeRuntime(";function is(e,t){let n=e.indexOf(os);if(n===-1)throw new Error("Failed to find makeRuntime() function call in src/runtime.ts");let r=n+os.length,o=t.options.css?.commonStylesPath;return{code:[o===void 0?"":`import commonStyles from "${_(t.dir.src,o)}";`,e.slice(0,r),"{","defaultAssetPath:import.meta.env.BASE_URL,",'hydratedAttribute:"',t.options.css?.hydratedAttribute??sn,'",',o===void 0?"":"commonStyles","}",e.slice(r)].join(""),map:null}}var Ud=[Qi,Xi,wo,rs],ps=e=>({name:"@arcgis/lumina:transformComponents",transform:{order:"pre",async handler(t,n){if(!n.endsWith(".tsx")){if(e.isInTest&&n.endsWith(".ts")&&Ut(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 is(t,e);return}let r=e.getSourceFile(n,t);await ae;let i=Kd.transform(r,[f=>()=>it(e,f,r,[...e.options.types?.sourceFileTransformers??[],...Ud])]).transformed[0],s=zd(e),a=Me(s),l=s.sourceMap?he.createSourceMapGenerator(e.typeScriptHost,ss.basename(n),"",ss.dirname(n),s):void 0,p=he.createTextWriter(he.getNewLineCharacter(s));a.writeFile(i,p,l);let d=p.getText(),m=l?.toJSON();return{code:d,map:m??null}}}}),as=new WeakMap;function zd(e){let t=as.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},as.set(e,t)}return t}var ds=e=>({name:"@arcgis/lumina:handleDynamicAssets",configureServer(t){e.server=t,!e.isInPuppeteerTestBackEnd&&ls(e).forEach(({assets:n,transformers:r})=>le(e,n,r))},async writeBundle(){await Promise.all(ls(e).map(async({assets:t,transformers:n})=>await wt(e,t,n)))}});function ls(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 qd}from"node:fs";import{path as _n}from"@arcgis/components-build-utils";var ms="@arcgis/lumina:updatePackageJson",cs=e=>({name:ms,apply:()=>e.viteCommand==="serve"&&e.environment==="development"&&!e.isInTest&&!e.isInCi,configResolved(){Gd(e).catch(t=>console.error(`${ms}: Failed to update package's package.json`,t))}});async function Gd(e){let t=_n.join(e.dir.root,"package.json"),n=JSON.parse(await Vd(t,"utf-8")),r=_d(n,e);r&&qd(t,JSON.stringify(r,null,2))}function _d(e,t){let n=e?.devDependencies??{};Object.keys(e?.peerDependencies??{}).forEach(f=>{f in n||console.error(`Every peerDependency must also be a devDependency, or else some tools will get confused (like Turbo Build). Found "${f}" that is not a devDependency. Please edit your package.json`)});let r=!1,o=f=>_n.relative(t.dir.root,_n.join(t.dir.dist,f)),i=e["css.customData"]??[],s=t.documentationFileNames,a=o(s.vsCodeCss);i.includes(a)||(e["css.customData"]=[...i,a],r=!0);let l=o(s.manifest);e.customElements!==l&&(e.customElements=l,r=!0);let p=e["html.customData"]??[],d=o(s.vsCodeHtml);p.includes(d)||(e["html.customData"]=[...p,d],r=!0);let m=o(s.webTypes);if(e["web-types"]!==m&&(r=!0,e["web-types"]=m),r)return e}import{getVsCodeCssCustomData as om,getVsCodeHtmlCustomData as im}from"custom-element-vs-code-integration";import{isNotUndefined as us}from"@arcgis/components-utils";import{defaultEventBubbles as Xd,defaultEventCancelable as Qd,defaultEventComposed as Yd}from"@arcgis/lumina/config";import{path as Zd}from"@arcgis/components-build-utils";var fs=e=>({timestamp:e.manifest.timestamp,compiler:e.manifest.compiler,components:e.manifestComponents.map(em),typeLibrary:{}});function em(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(tm).filter(us)??[],methods:e.members?.map(nm).filter(us)??[],events:e.events?.map(rm)??[],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 tm(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:Xn(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 Xn=e=>Object.fromEntries(e?.map(t=>[t.name,{location:t.package===en?"global":t.package===void 0?"local":"import",path:typeof t.module=="string"&&typeof t.package=="string"?Zd.join(t.package,t.module):t.module??t.package,id:"notImplemented"}])??[]);function nm(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(`
|
|
102
|
+
type ${e}SetterTypes = ${e}["${zt}"]`:"",d=l.filter(Boolean).join(", ");return[d.length===0?"":`${d}, `,p]}var Ki=e=>e.map(t=>`'${t}'`).join(" | ");function V(e,t){return zi(e,t)}function zi(e,t){if(Re(t))return Vi(e,t);let n=T.isCallExpression(t)?Wi(e,t):t;return T.visitEachChild(n,zi.bind(null,e),e.transformationContext)}function Vi(e,t){let n=qi(e,t);return et(n,e)}function qi(e,t){let n="children"in t?t.children:[];if(T.isJsxFragment(t))return{key:void 0,...jt(n,e)};let o=T.isJsxElement(t)?t.openingElement:t,i=o.tagName;if(T.isJsxNamespacedName(i)){let C=Lt(e.sourceFile.fileName);throw new Error(`JSX namespaced elements are not supported. Found ${i.getText()} in "${C}"`)}if(!T.isIdentifier(i)||!i.text.startsWith(i.text[0].toLowerCase())&&i.text!==ut&&i.text!==ft){let h=T.isIdentifier(i)&&i.text===fo?jt(n,e):{litTag:void 0,parts:[Cd(e,t,i,n)]};return{key:xd(o),...h}}let a=i.text===ut?Fe:i.text===ft?Ge:i.text,l=i.text===ut?de:i.text===ft?Z:xo.has(a)?In:De.has(a)?me:ee;typeof a=="string"&&a.includes("-")&&!Ne.has(a)&&e.customElementsToImport.add(a);let p,d=[],m=o.attributes.properties.flatMap(C=>{if(T.isJsxSpreadAttribute(C))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 ${C.getText()}`);let{name:h,initializer:b}=C;if(T.isJsxNamespacedName(h)){let Bt=Lt(e.sourceFile.fileName);throw new Error(`JSX namespaced attributes are not supported. Found ${h.getText()} in "${Bt}"`)}let A=h.text,B=Ri(b),k=B?.propType??Oi(A,b,a),G=Li[k](e,B?.initializer??b,A,a);if(G.length===0)return[];let ye=e.compiler.shouldMinify?" ":Bi(Vn(h,e));if(k==="key")return p=typeof G[0]=="object"?G[0]:void 0,Array.isArray(ye)&&ye.some(Ji)?ye:[];let Be=[...ye,...G];return k==="directives"||k==="ref"||k==="dynamicValue"?(d.push(...Be),[]):Be});if(d.length>0&&m.push(...d),typeof a=="string"&&Ae.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 f=typeof a=="string"&&ho.has(a),c=jt(n,e);if(f&&c.parts.length>0){let C=Lt(e.sourceFile.fileName);throw new Error(`Void HTML elements like <${a}> cannot have children. Found ${t.getText()} in "${C}"`)}let y=(l===me||l===Z)&&c.parts.length===0,x=["<",typeof a=="string"?a:i,...m,y?`${m.length===0?"":" "}/>`:">"],u=f||y?x:[...x,...c.litTag!==void 0&&c.litTag!==l?[et({key:void 0,...c},e)]:c.parts,"</",typeof a=="string"?a:i,">"];return{key:p,parts:u,litTag:l}}function xd(e){let t=e.attributes.properties[Gn(e)];return t&&T.isJsxAttribute(t)?Ye(t.initializer):void 0}var Gn=e=>e.attributes.properties.findIndex(({name:t})=>t&&T.isIdentifier(t)&&t.text==="key");function Cd(e,t,n,r){let i=(T.isJsxElement(t)?t.openingElement:t).attributes.properties.map(l=>{if(T.isJsxSpreadAttribute(l))return qn(Vn(l,e),T.factory.createSpreadAssignment(l.expression));let{name:p,initializer:d}=l;if(T.isJsxNamespacedName(p)){let c=Lt(e.sourceFile.fileName);throw new Error(`JSX namespaced attributes are not supported. Found ${p.getText(e.sourceFile)} in "${c}"`)}if(p.text==="key")return;let m=d===void 0?T.factory.createTrue():T.isStringLiteral(d)?d:Re(d)?Vi(e,d):V(e,d.expression??T.factory.createIdentifier("undefined")),f=Ee(p.text)?T.factory.createStringLiteral(p.text):p;return T.factory.createPropertyAssignment(f,m)}),{parts:s,litTag:a}=jt(r,e);return s.length>0&&i.push(T.factory.createPropertyAssignment(T.factory.createIdentifier("children"),et({key:void 0,parts:s,litTag:a},e))),T.factory.createCallExpression(n,void 0,[T.factory.createObjectLiteralExpression(i.filter(hd))])}function jt(e,t){let n,r=e.flatMap(o=>{if(T.isJsxText(o))return[t.compiler.shouldMinify?$r(o.text):o.text];if(T.isJsxExpression(o))return $t(t,Td(o));{let i=qi(t,o);if(i.key===void 0&&i.litTag!==de&&i.litTag!==Z){if(i.litTag===In)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[et(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)||Re(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 $t(e,t){if(t.expression===void 0){if(e.compiler.shouldMinify)return[];let n=t.getText(e.sourceFile).slice(1,-1);return It(n).length===0?[]:[qn(n,T.factory.createIdentifier("undefined"))]}return T.isStringLiteral(t.expression)?[at(t.expression.text)]:e.compiler.viteCommand==="serve"&&e.compiler.typeScriptConfig.options.sourceMap&&!e.compiler.shouldMinify&&T.isArrowFunction(t.expression)&&!T.isBlock(t.expression.body)?[V(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)))]:[V(e,t.expression)]}import{path as bd,toSystemPathSeparators as vd}from"@arcgis/components-build-utils";function Gi(e){let t=Fo().map(({packageName:n})=>n);return e.existingImportedModules.forEach(n=>{if(bd.isAbsolute(n))return;let{packageName:r,moduleName:o}=tn(n);if(t.includes(r??"")&&(o.startsWith("dist/components")||o.startsWith("components"))){let i=vd(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 _i(e){if(e.compiler.viteCommand==="serve")return e.customElementsToImport.clear(),[];let t=He.get(e.compiler);return t||(t={},He.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 Xi=(e,t)=>{let n=e.pragmas;if(n?.has("jsx")??n?.has("jsxImportSource"))return e.statements;let r={compiler:t.compiler,externalComponents:bt(),localComponents:t.compiler.isInPuppeteerTestBackEnd?{}:Jn(t.compiler.manifest),sourceFile:e,transformationContext:t.transformation,importRenames:Ed(e),existingImportedModules:new Set,importedFunctionComponentsFromModules:new Set,existingLitImports:new Set,customElementsToImport:new Set,neededImports:new Set};e.statements.forEach(a=>{Sd.isImportDeclaration(a)&&hi(r,a)});let i=V(r,e).statements;if(r.neededImports.size>0&&(i=i.map(Ci,r),r.existingLitImports.size>0))throw new Error(`Expected context.existingLitImports to be empty by now. Found: ${Array.from(r.existingLitImports).join(", ")}`);let s=[Ti,Gi,_i].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 Ed(e){return wd(e),Object.fromEntries(fi.map(t=>[t,e.identifiers.has(t)?`${t}$jsx`:t]))}function wd(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.")}import{path as Pd,toSystemPathSeparators as Md}from"@arcgis/components-build-utils";var Qi=(e,t)=>{if(t.fileManifest!==void 0&&e.text.includes(`* @${Q}`))throw new Error(`Do not use @${Q} 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 @${We} instead. Found @${Q} in ${Md(Pd.relative(t.compiler.dir.root,e.fileName))}`);return e.statements};import P from"typescript";import L from"typescript";import{PropertyFlags as fe}from"@arcgis/lumina/config";function Yi(e,t,n){return t.size===0?e:[L.factory.createPropertyDeclaration([L.factory.createModifier(L.SyntaxKind.StaticKeyword),L.factory.createModifier(L.SyntaxKind.OverrideKeyword)],"properties",void 0,void 0,L.factory.createObjectLiteralExpression(Array.from(t.entries()).map(([r,o])=>L.factory.createPropertyAssignment(Ee(r)?L.factory.createStringLiteral(r):r,kd(o,n))))),...e]}function kd(e,t){let n=0,r=!0,o=e.properties.filter(a=>{if(!L.isPropertyAssignment(a)||!L.isIdentifier(a.name))return!0;let l=a.name.text,p=a.initializer,d=p.kind===L.SyntaxKind.TrueKeyword,m=p.kind===L.SyntaxKind.FalseKeyword;if(l==="attribute")return r=!1,n|=d?fe.ATTRIBUTE:0,!d&&!m;if(l==="reflect")return n|=d?fe.REFLECT:0,!1;if(l==="type"&&L.isIdentifier(p)){if(p.text==="Boolean")return n|=fe.BOOLEAN,!1;if(p.text==="Number")return n|=fe.NUMBER,!1}else{if(l==="state")return r=!1,n|=d?fe.STATE:0,!1;if(l==="readOnly")return n|=d?fe.READ_ONLY:0,!1;l==="noAccessor"&&(n|=d?fe.NO_ACCESSOR:0)}return!0});r&&(n|=fe.ATTRIBUTE);let i=t?o:e.properties,s=L.factory.createNumericLiteral(n);return i.length===0?s:L.factory.createArrayLiteralExpression([s,L.factory.createObjectLiteralExpression(i)])}import{identity as Jd}from"@arcgis/components-utils";import{readFileSync as jd,writeFileSync as Rd}from"node:fs";import tt from"typescript";import{toSystemPathSeparators as Od}from"@arcgis/components-build-utils";import j from"typescript";import E from"typescript";import{camelToKebab as Fd}from"@arcgis/components-utils";import{toSystemPathSeparators as Dd}from"@arcgis/components-build-utils";function Zi(e,t,n,r,o,i){let s=-1,a=!1,l=-1,p=-1;t.options?.properties.forEach((y,x)=>{if(E.isSpreadAssignment(y))throw new Error(`Spread property assignment is not allowed in @property() as that is not statically analyzable. Found ${y.getText(r)}`);if(E.isIdentifier(y.name)){let u=y.name.text;u==="type"?s=x:u==="converter"?a=!0:u==="attribute"?l=x:u==="readOnly"&&(p=x)}});let d=i?.attribute===void 0&&l===-1,m=i?.readonly===!0&&i.docsOnlyReadonly!==!0&&p===-1,f=Ad(e,t,n,r,o,i,s,l,a),c=[...d?[E.factory.createPropertyAssignment("attribute",E.factory.createFalse())]:[],...m?[E.factory.createPropertyAssignment("readOnly",E.factory.createTrue())]:[],...f!==void 0?[f]:[]];return c.length>0?t.options===void 0?E.factory.createObjectLiteralExpression(c,!1):E.factory.updateObjectLiteralExpression(t.options,[...t.options.properties,...c]):t.options}function Ad(e,t,n,r,o,i,s,a,l){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 y=t.options.properties[a],x=Fd(i.name);if(E.isPropertyAssignment(y)&&(y.initializer.kind===E.SyntaxKind.TrueKeyword||E.isStringLiteral(y.initializer)&&y.initializer.text===x)&&dn(i.type?.values??[])){let C=t.options.properties[a+1]?.getFullStart()??y.getEnd();o(y.getFullStart(),C,"")}}let p=$d(e),d=n.compiler.viteCommand==="serve"||p!=="Other"?p:Nd(i.type?.values);if(d==="Other"||i.readonly&&(d!=="Boolean"||!i.reflects))return;let m=t.options?.properties[s];if(m){let y="initializer"in m?m.initializer:void 0;if(!l&&y&&E.isIdentifier(y)){let x=`Found property "${i.name}" in "${Dd(r.fileName)}" that has @property({ type: ${y.text} })`,u='. If this is a false warning, you can silence it by adding "converter: undefined" option to @property()';if(y.text==="Boolean"&&d==="Number")console.warn(`${x} where as expected to see @property({ type: Number }) because the property type is number${u}`);else if(y.text==="Number"&&d==="Boolean")console.warn(`${x} where as expected to see @property({ type: Boolean }) because the property type is boolean${u}`);else if(!Id.has(y.text))console.warn(`${x}. The default Lit attribute<-->property converter does not define any behavior for @property({ type: ${y.text} }). Consider removing this "type", or adding a custom converter @property({ converter: ... }) to handle this type${u}`);else if(p!=="Other"&&y.text===p){let h=t.options.properties[s+1]?.getFullStart()??m.getEnd();o(m.getFullStart(),h,"")}}return}if(p==="Other"){let y=`type: ${d}`;if(t.options===void 0){let x=t.decorator.getEnd()-1;o(x,x,`{ ${y} }`)}else{let x=t.options.getStart(r)+1;o(x,x,` ${y},`)}}return E.factory.createPropertyAssignment(E.factory.createIdentifier("type"),E.factory.createIdentifier(d))}function Nd(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 $d(e){let t=e.type??(E.isSetAccessor(e)?e.parameters[0].type:void 0);if(t===void 0){if("initializer"in e&&e.initializer){if(E.isNumericLiteral(e.initializer)||E.isPrefixUnaryExpression(e.initializer)&&e.initializer.operator===E.SyntaxKind.MinusToken&&E.isNumericLiteral(e.initializer.operand))return"Number";if(e.initializer.kind===E.SyntaxKind.FalseKeyword||e.initializer.kind===E.SyntaxKind.TrueKeyword)return"Boolean"}}else{if(t.kind===E.SyntaxKind.NumberKeyword)return"Number";if(t.kind===E.SyntaxKind.BooleanKeyword)return"Boolean"}return"Other"}var Id=new Set(["Number","Boolean","Array","Object"]);function Rt(e,t,n,r,o,i){if(t.modifiers===void 0)return t;let s=-1,a=-1;if(t.modifiers.forEach((l,p)=>{if(j.isDecorator(l)&&j.isCallExpression(l.expression)&&j.isIdentifier(l.expression.expression)){let d=l.expression.expression.text;d==="property"&&(s=p),d==="state"&&(a=p)}}),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 l=Ld(e,t,n,r),p=es(t,s,r),d=Zi(t,p,e,r,o,l),m=!1;return i!==void 0&&l&&(i.set(l.name,d??j.factory.createObjectLiteralExpression()),m=!0),p.options=d,ts(t,p,s,m)}else if(a!==-1&&i!==void 0){let l=es(t,a,r),p=j.factory.createPropertyAssignment("state",j.factory.createTrue()),d=l.options===void 0?j.factory.createObjectLiteralExpression([p]):j.factory.updateObjectLiteralExpression(l.options,[...l.options.properties,p]),m=ot(t);if(m===void 0)throw new Error("Failed to statically determine the state property name");return i.set(m,d),ts(t,l,a,!0)}else return t}function Ld(e,t,n,r){let o=W(e.fileManifest??{},!0).find(s=>s.name===n)??(e.compiler.isInTest?{name:""}:void 0);if(o===void 0)return;let i=Pe(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=ot(t);if(s===void 0)throw new Error(`Failed to statically determine the property name: ${t.getText(r)}`);i.name=s}return i}}function es(e,t,n){let r=e.modifiers[t],o=r.expression,i=o.arguments.at(0);if(i&&!j.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 ts(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:j.factory.updateDecorator(t.decorator,j.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 j.isGetAccessorDeclaration(e)?j.factory.updateGetAccessorDeclaration(e,i,e.name,e.parameters,e.type,e.body):j.isSetAccessorDeclaration(e)?j.factory.updateSetAccessorDeclaration(e,i,e.name,e.parameters,e.body):j.factory.updatePropertyDeclaration(e,i,e.name,e.questionToken??e.exclamationToken,e.type,e.initializer)}function ns(e,t){try{let n=jd(t,"utf-8"),r=tt.createSourceFile(t,n,e.compiler.typeScriptConfig.options.target??tt.ScriptTarget.Latest,!1,tt.ScriptKind.TSX),o=[],i=(l,p)=>tt.isPropertyDeclaration(l)||tt.isAccessor(l)?Rt(e,l,p,r,(...d)=>o.push(d)):l;r.statements.forEach(l=>Ot(i,l,e));let a=o.sort((l,p)=>p[0]-l[0]).reduce((l,[p,d,m])=>`${l.slice(0,p)}${m}${l.slice(d)}`,n);Rd(t,a)}catch(n){console.error(`Failed applying automated edits to the ${Od(t)} file.: Error ${String(n)}`)}}var rs=(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=p=>Yi(p,o,t.compiler.shouldMinify),a=(p,d)=>Hd(t,p,d,e,r,o),l=e.statements.map(p=>Ot(a,p,t,i,s));return!t.compiler.isInCi&&!t.compiler.isInTest&&n&&ns(t,e.fileName),l};function Ot(e,t,n,r,o=Jd){if(P.isClassDeclaration(t)&&t.heritageClauses?.some(s=>s.token===P.SyntaxKind.ExtendsKeyword)){let s=!1,a=t.name?.text;r?.();let l=o(t.members.map(d=>{let m=e(d,a);return s||=m!==d,m}));return s?P.factory.updateClassDeclaration(t,t.modifiers,t.name,t.typeParameters,t.heritageClauses,l):t}return n.compiler.isInTest?P.visitEachChild(t,s=>Ot(e,s,n,r,o),n.transformation):t}var Bd=new Set(["connectedCallback","disconnectedCallback"]);function Hd(e,t,n,r,o,i){if(P.isMethodDeclaration(t)&&t.modifiers){let s=t.modifiers.filter(a=>!P.isDecorator(a)||!Wd(a));if(s.length!==t.modifiers.length)return P.factory.updateMethodDeclaration(t,s,t.asteriskToken,t.name,t.questionToken,t.typeParameters,t.parameters,t.type,t.body);if("text"in t.name&&Bd.has(t.name.text)&&t.body){let a=t.name.text;return t.body.statements.some(p=>P.isExpressionStatement(p)&&P.isCallExpression(p.expression)&&P.isPropertyAccessExpression(p.expression.expression)&&p.expression.expression.expression.kind===P.SyntaxKind.SuperKeyword&&p.expression.expression.name.text===a)?t:P.factory.updateMethodDeclaration(t,t.modifiers,t.asteriskToken,t.name,t.questionToken,t.typeParameters,t.parameters,t.type,P.factory.updateBlock(t.body,[P.factory.createExpressionStatement(P.factory.createCallExpression(P.factory.createPropertyAccessExpression(P.factory.createSuper(),a),void 0,[])),...t.body.statements]))}}return P.isPropertyDeclaration(t)||P.isAccessor(t)?Rt(e,t,n,r,o,i):t}var Wd=e=>P.isCallExpression(e.expression)&&P.isIdentifier(e.expression.expression)&&e.expression.expression.text==="method";import{path as ss}from"@arcgis/components-build-utils";var os="makeRuntime(";function is(e,t){let n=e.indexOf(os);if(n===-1)throw new Error("Failed to find makeRuntime() function call in src/runtime.ts");let r=n+os.length,o=t.options.css?.commonStylesPath;return{code:[o===void 0?"":`import commonStyles from "${_(t.dir.src,o)}";`,e.slice(0,r),"{","defaultAssetPath:import.meta.env.BASE_URL,",'hydratedAttribute:"',t.options.css?.hydratedAttribute??sn,'",',o===void 0?"":"commonStyles","}",e.slice(r)].join(""),map:null}}var Ud=[Qi,Xi,wo,rs],ps=e=>({name:"@arcgis/lumina:transformComponents",transform:{order:"pre",async handler(t,n){if(!n.endsWith(".tsx")){if(e.isInTest&&n.endsWith(".ts")&&Ut(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 is(t,e);return}let r=e.getSourceFile(n,t);await ae;let i=Kd.transform(r,[f=>()=>it(e,f,r,[...e.options.types?.sourceFileTransformers??[],...Ud])]).transformed[0],s=zd(e),a=Me(s),l=s.sourceMap?he.createSourceMapGenerator(e.typeScriptHost,ss.basename(n),"",ss.dirname(n),s):void 0,p=he.createTextWriter(he.getNewLineCharacter(s));a.writeFile(i,p,l);let d=p.getText(),m=l?.toJSON();return{code:d,map:m??null}}}}),as=new WeakMap;function zd(e){let t=as.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},as.set(e,t)}return t}var ds=e=>({name:"@arcgis/lumina:handleDynamicAssets",configureServer(t){e.server=t,!e.isInPuppeteerTestBackEnd&&ls(e).forEach(({assets:n,transformers:r})=>le(e,n,r))},async writeBundle(){await Promise.all(ls(e).map(async({assets:t,transformers:n})=>await wt(e,t,n)))}});function ls(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 qd}from"node:fs";import{path as _n}from"@arcgis/components-build-utils";var ms="@arcgis/lumina:updatePackageJson",cs=e=>({name:ms,apply:()=>e.viteCommand==="serve"&&e.environment==="development"&&!e.isInTest&&!e.isInCi,configResolved(){Gd(e).catch(t=>console.error(`${ms}: Failed to update package's package.json`,t))}});async function Gd(e){let t=_n.join(e.dir.root,"package.json"),n=JSON.parse(await Vd(t,"utf-8")),r=_d(n,e);r&&qd(t,JSON.stringify(r,null,2))}function _d(e,t){let n=e?.devDependencies??{};Object.keys(e?.peerDependencies??{}).forEach(f=>{f in n||console.error(`Every peerDependency must also be a devDependency, or else some tools will get confused (like Turbo Build). Found "${f}" that is not a devDependency. Please edit your package.json`)});let r=!1,o=f=>_n.relative(t.dir.root,_n.join(t.dir.dist,f)),i=e["css.customData"]??[],s=t.documentationFileNames,a=o(s.vsCodeCss);i.includes(a)||(e["css.customData"]=[...i,a],r=!0);let l=o(s.manifest);e.customElements!==l&&(e.customElements=l,r=!0);let p=e["html.customData"]??[],d=o(s.vsCodeHtml);p.includes(d)||(e["html.customData"]=[...p,d],r=!0);let m=o(s.webTypes);if(e["web-types"]!==m&&(r=!0,e["web-types"]=m),r)return e}import{getVsCodeCssCustomData as om,getVsCodeHtmlCustomData as im}from"custom-element-vs-code-integration";import{isNotUndefined as us}from"@arcgis/components-utils";import{defaultEventBubbles as Xd,defaultEventCancelable as Qd,defaultEventComposed as Yd}from"@arcgis/lumina/config";import{path as Zd}from"@arcgis/components-build-utils";var fs=e=>({timestamp:e.manifest.timestamp,compiler:e.manifest.compiler,components:e.manifestComponents.map(em),typeLibrary:{}});function em(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(tm).filter(us)??[],methods:e.members?.map(nm).filter(us)??[],events:e.events?.map(rm)??[],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 tm(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:Xn(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 Xn=e=>Object.fromEntries(e?.map(t=>[t.name,{location:t.package===en?"global":t.package===void 0?"local":"import",path:typeof t.module=="string"&&typeof t.package=="string"?Zd.join(t.package,t.module):t.module??t.package,id:"notImplemented"}])??[]);function nm(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
104
|
`)??""},complexType:{signature:"()=>unknown",parameters:r,...t.type,return:t.return?.type?.text??"void",references:Xn(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 rm(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??Xd,complexType:{original:t.type.original,resolved:t.type.text,references:Xn(t.type.references)},cancelable:t.cancelable??Qd,composed:t.composed??Yd,docs:t.description??"",docsTags:[...t.docsTags??[],...n],deprecation:typeof t.deprecated=="boolean"?t.deprecated?"":void 0:t.deprecated}}import{path as nt}from"@arcgis/components-build-utils";import{writeFile as Qn}from"node:fs/promises";var sm="@arcgis/lumina:generateDocs";function ys(e){return e.provideAssets([{type:"dynamic",source:()=>JSON.stringify(fs(e),null,2),destination:nt.join("../..",e.documentationFileNames.stencilLikeDocsJson)},{type:"dynamic",source:()=>JSON.stringify(e.manifest,null,2),destination:nt.join("../..",e.documentationFileNames.manifest)}]),{name:sm,async writeBundle(){if(e.isInStorybook)return;let t=nt.join(e.dir.dist,e.documentationFileNames.vsCodeHtml),n=nt.join(e.dir.dist,e.documentationFileNames.vsCodeCss),r=nt.join(e.dir.dist,e.documentationFileNames.webTypes),o=Nn([t,n,r]),i=import("custom-element-jet-brains-integration"),[{getWebTypesData:s}]=await Promise.all([i,o]),a=e.manifest,{vsCode:l,jetBrains:p,getComponentDocsUrl:d,getComponentDemoUrl:m}=e.options.documentation??{},f=l?.hideLogs!==!1&&p?.hideLogs!==!1,c=console.log;f&&(console.log=()=>{});let y="",x="",u="";try{let C={hideLogs:!0,referencesTemplate:typeof d=="function"||typeof m=="function"?(h,b)=>d===void 0?[{name:"Demo",url:m(b,h)}]:m===void 0?[{name:"Docs",url:d(b,h)}]:[{name:"Docs",url:d(b,h)},{name:"Demo",url:m(b,h)}]:void 0,...l};y=JSON.stringify(JSON.parse(im(a,C)),null,2),x=JSON.stringify(JSON.parse(om(a,C)),null,2),u=JSON.stringify(JSON.parse(s(a,{hideLogs:!0,referenceTemplate:typeof d=="function"||typeof m=="function"?(h,b)=>typeof d=="function"?{name:"Docs",url:d(b,h)}:{name:"Demo",url:m(b,h)}:void 0,...p})),null,2)}finally{f&&(console.log=c)}await Promise.all([Qn(t,y),Qn(n,x),Qn(r,u)])}}}var gs=e=>`import { h } from "@arcgis/lumina";
|
|
105
105
|
|
|
106
106
|
type EventHandler<E> = { bivarianceHack(event: E): void }["bivarianceHack"];
|
|
@@ -246,4 +246,4 @@ export const ${e.name} = /*@__PURE__*/ createComponent({
|
|
|
246
246
|
${t}
|
|
247
247
|
`:""}},
|
|
248
248
|
});
|
|
249
|
-
`}function Sm(e={}){let t=new w(e),n=[t.plugin,vi(t),Si(t),cs(t),
|
|
249
|
+
`}function Sm(e={}){let t=new w(e),n=[t.plugin,vi(t),Si(t),cs(t),kr(t),Go(t),vs(t),ys(t),ps(t),Wr(t),oi(t),ds(t),Di(t),wi(t),er(t),$o(t),ai(t),Es(t),mi(t)].filter(vm);return n.context=t,n}var cC={initializeComponentDependencies:Tt,updateLuminaTs:Ft,propertyToAttributeMappings:U,findDeclaredComponents:fn,nativeEvents:ht,svgElements:De,mathMlElements:Ae,alwaysAttributes:yt,nativeAlwaysAttributes:gt,htmlAlwaysAttributes:_e,isPropertyEscapeNeeded:Ee};export{cC as exportsForCodemod,Y as inferCdnUrl,Sm as useLumina};
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@arcgis/lumina-compiler",
|
|
3
|
-
"version": "4.31.0-next.
|
|
3
|
+
"version": "4.31.0-next.121",
|
|
4
4
|
"type": "module",
|
|
5
5
|
"main": "dist/index.js",
|
|
6
6
|
"module": "dist/index.js",
|
|
@@ -16,30 +16,10 @@
|
|
|
16
16
|
"files": [
|
|
17
17
|
"dist/"
|
|
18
18
|
],
|
|
19
|
-
"publishConfig": {
|
|
20
|
-
"registry": "https://registry.npmjs.org/",
|
|
21
|
-
"access": "public"
|
|
22
|
-
},
|
|
23
19
|
"license": "SEE LICENSE IN LICENSE.md",
|
|
24
|
-
"scripts": {
|
|
25
|
-
"build": "tsup --minify",
|
|
26
|
-
"build:dev": "tsup --sourcemap",
|
|
27
|
-
"watch": "yarn build:dev --watch",
|
|
28
|
-
"test": "concurrently \"yarn test:unit\" \"yarn test:snapshot\" \"yarn test:browser:run\"",
|
|
29
|
-
"test:unit": "vitest run",
|
|
30
|
-
"test:unit:watch": "vitest --watch",
|
|
31
|
-
"coverage": "vitest run --coverage",
|
|
32
|
-
"test:snapshot": "yarn workspace @arcgis-test/lit-confidence test",
|
|
33
|
-
"test:update": "yarn workspace @arcgis-test/lit-confidence test:update",
|
|
34
|
-
"test:browser": "yarn workspace @arcgis-test/lit-confidence test:browser",
|
|
35
|
-
"test:browser:run": "yarn workspace @arcgis-test/lit-confidence test:browser:run",
|
|
36
|
-
"ci-test": "concurrently --passthrough-arguments \"vitest related --run --passWithNoTests -- {@}\" \"yarn test:snapshot\"",
|
|
37
|
-
"lint-test": "concurrently --passthrough-arguments \"vitest related --run --passWithNoTests -- {@}\" \"yarn test:snapshot\" \"yarn test:browser:run\"",
|
|
38
|
-
"clean": "rimraf ./dist ./build ./turbo ./node_modules"
|
|
39
|
-
},
|
|
40
20
|
"dependencies": {
|
|
41
|
-
"@arcgis/components-build-utils": "4.31.0-next.
|
|
42
|
-
"@arcgis/components-utils": "4.31.0-next.
|
|
21
|
+
"@arcgis/components-build-utils": "4.31.0-next.121",
|
|
22
|
+
"@arcgis/components-utils": "4.31.0-next.121",
|
|
43
23
|
"@custom-elements-manifest/analyzer": "^0.10.3",
|
|
44
24
|
"custom-element-jet-brains-integration": "^1.6.2",
|
|
45
25
|
"custom-element-vs-code-integration": "^1.4.1",
|
|
@@ -57,25 +37,8 @@
|
|
|
57
37
|
"vitest": "^2.1.1",
|
|
58
38
|
"vitest-fail-on-console": "^0.7.1"
|
|
59
39
|
},
|
|
60
|
-
"devDependencies": {
|
|
61
|
-
"@arcgis/lumina": "4.31.0-next.120",
|
|
62
|
-
"@arcgis/typescript-config": "4.31.0-next.120",
|
|
63
|
-
"@stencil/core": "4.20.0",
|
|
64
|
-
"@types/js-beautify": "^1",
|
|
65
|
-
"@types/mime-types": "^2",
|
|
66
|
-
"@types/node": "^20.2.5",
|
|
67
|
-
"@vitest/coverage-v8": "^2.1.1",
|
|
68
|
-
"concurrently": "^8.2.2",
|
|
69
|
-
"eslint": "^8.55.0",
|
|
70
|
-
"puppeteer": "^23.3.0",
|
|
71
|
-
"rimraf": "^5.0.0",
|
|
72
|
-
"rollup": "^4.13.0",
|
|
73
|
-
"tsup": "^8.2.4",
|
|
74
|
-
"vitest": "^2.1.1"
|
|
75
|
-
},
|
|
76
40
|
"peerDependencies": {
|
|
77
|
-
"@arcgis/components-controllers": "4.31.0-next.
|
|
78
|
-
"@arcgis/lumina": "4.31.0-next.
|
|
79
|
-
}
|
|
80
|
-
|
|
81
|
-
}
|
|
41
|
+
"@arcgis/components-controllers": "~4.31.0-next.121",
|
|
42
|
+
"@arcgis/lumina": "~4.31.0-next.121"
|
|
43
|
+
}
|
|
44
|
+
}
|