@arcgis/lumina-compiler 4.33.0-next.25 → 4.33.0-next.26

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.
Files changed (2) hide show
  1. package/dist/index.js +48 -48
  2. package/package.json +5 -5
package/dist/index.js CHANGED
@@ -1,13 +1,13 @@
1
- import{a as A}from"./chunk-JFKSI6I7.js";import{nodeExternals as ks}from"rollup-plugin-node-externals";function Yn(e){let{externalize:t=[],bundleIn:n=[],...r}=e.options?.build?.dependencies??{},o={...ks({...r,include:[/^lit[-/]/u,/^@lit[-/]/u,/^lit$/u,...Array.isArray(t)?t.map(Qn):[]],exclude:Array.isArray(n)?n.map(Qn):[]}),configResolved(){e.isInStorybook&&(o.resolveId=void 0)}};return o}var Qn=e=>e?typeof e=="string"?new RegExp(`^${e.replace(/[.*+?^${}()|[\]\\]/gu,"\\$&")}`,"u"):e:void 0;import da from"vite-plugin-dts";var Te="customElement.js",Wt="customElement.d.ts",Zn="playwright";import{path as te}from"@arcgis/components-build-utils";import{path as Ht}from"@arcgis/components-build-utils";function er(e,t,n){let i=n.split(Ht.sep).slice(2),o=t._componentPathMapping;return i.forEach((s,a)=>{a===i.length-1?o[""]??=e:(o[s]??={},o=o[s])}),o[""]}function ee(e,t,n){if(!e.startsWith(t))return e;let r=e.slice(t.length),i=Is(r,n);return`${t}${i}`}function Is(e,t){let n=e.split(Ht.sep);n.push(".");let r=t._componentPathMapping,i=0;for(let o of n)if(r[o]===void 0){let s=r[""];return typeof s=="string"?[s,...n.slice(i,-1)].join(Ht.sep):e}else r=r[o],i+=1;return e}var tr=({filePath:e,content:t},n)=>{let r=e.startsWith(n.dir.distComponents)?ee(nr(e),n.dir.distComponents,n):e,i=te.dirname(e),o=r.endsWith(Wt),s=Kt(t,n,e===r?i:te.dirname(r),i),a=o?$s(s):s;return{filePath:r,content:a}};function nr(e,t=".d.ts"){let r=(t===""?e:e.slice(0,-t.length)).split(te.sep);return r.at(Ns)!==r.at(Ls)?e:te.join(r.slice(0,-1).join(te.sep),t===""?Te:Wt)}var Ns=-1,Ls=-2,Rs=/["']\.\.?\/[^'"]+/gu,Kt=(e,t,n,r)=>e.replaceAll(Rs,i=>{let o=i.slice(1);if(!o.startsWith("./")&&!o.startsWith("../"))return i;let s=te.join(r,o),a=!o.endsWith(".js")&&!o.split("/").at(-1).includes(".")?nr(s,""):s,p=ee(a,t.dir.distComponents,t);if(n===r&&s===p)return i;let l=q(n,p);return`${i[0]}${l}`}),q=(e,t)=>{let n=te.relative(e,t);return n.startsWith(".")?n:`.${te.sep}${n}`};function $s(e){return`/// <reference types="../../index.d.ts" />
1
+ import{a as A}from"./chunk-JFKSI6I7.js";import{nodeExternals as ks}from"rollup-plugin-node-externals";function Yn(e){let{externalize:t=[],bundleIn:n=[],...r}=e.options?.build?.dependencies??{},o={...ks({...r,include:[/^lit[-/]/u,/^@lit[-/]/u,/^lit$/u,...Array.isArray(t)?t.map(Qn):[]],exclude:Array.isArray(n)?n.map(Qn):[]}),configResolved(){e.isInStorybook&&(o.resolveId=void 0)}};return o}var Qn=e=>e?typeof e=="string"?new RegExp(`^${e.replace(/[.*+?^${}()|[\]\\]/gu,"\\$&")}`,"u"):e:void 0;import da from"vite-plugin-dts";var Te="customElement.js",Wt="customElement.d.ts",Zn="playwright";import{path as te}from"@arcgis/components-build-utils";import{path as Ht}from"@arcgis/components-build-utils";function er(e,t,n){let i=n.split(Ht.sep).slice(2),o=t._componentPathMapping;return i.forEach((s,a)=>{a===i.length-1?o[""]??=e:(o[s]??={},o=o[s])}),o[""]}function ee(e,t,n){if(!e.startsWith(t))return e;let r=e.slice(t.length),i=Is(r,n);return`${t}${i}`}function Is(e,t){let n=e.split(Ht.sep);n.push(".");let r=t._componentPathMapping,i=0;for(let o of n)if(r[o]===void 0){let s=r[""];return typeof s=="string"?[s,...n.slice(i,-1)].join(Ht.sep):e}else r=r[o],i+=1;return e}var tr=({filePath:e,content:t},n)=>{let r=e.startsWith(n.dir.distComponents)?ee(nr(e),n.dir.distComponents,n):e,i=te.dirname(e),o=r.endsWith(Wt),s=Kt(t,n,e===r?i:te.dirname(r),i),a=o?Rs(s):s;return{filePath:r,content:a}};function nr(e,t=".d.ts"){let r=(t===""?e:e.slice(0,-t.length)).split(te.sep);return r.at(Ns)!==r.at(Ls)?e:te.join(r.slice(0,-1).join(te.sep),t===""?Te:Wt)}var Ns=-1,Ls=-2,$s=/["']\.\.?\/[^'"]+/gu,Kt=(e,t,n,r)=>e.replaceAll($s,i=>{let o=i.slice(1);if(!o.startsWith("./")&&!o.startsWith("../"))return i;let s=te.join(r,o),a=!o.endsWith(".js")&&!o.split("/").at(-1).includes(".")?nr(s,""):s,p=ee(a,t.dir.distComponents,t);if(n===r&&s===p)return i;let l=q(n,p);return`${i[0]}${l}`}),q=(e,t)=>{let n=te.relative(e,t);return n.startsWith(".")?n:`.${te.sep}${n}`};function Rs(e){return`/// <reference types="../../index.d.ts" />
2
2
  ${e}`}import{path as Ms}from"@arcgis/components-build-utils";import _ from"typescript";import{path as _t}from"@arcgis/components-build-utils";var rr="customElement",ir=(e,t)=>{let{filePath:n,content:r}=e;if(!n.startsWith(t.dir.distComponents))return e;let i=sr(r);if(i===void 0)return e;{let o=r.replace(i,"");return{filePath:n,content:o}}},or=(e,t)=>{let n=[];if(t.apiModule?.declarations.forEach(o=>{"customElement"in o&&n.push(_.factory.createExpressionStatement(_.factory.createCallExpression(_.factory.createIdentifier(rr),void 0,[_.factory.createStringLiteral(o.tagName),_.factory.createIdentifier(o.name)])))}),n.length===0)return e.statements;let r=_t.relative(_t.dirname(e.fileName),_t.join(t.compiler.dir.src,"runtime"));return[_.factory.createImportDeclaration(void 0,_.factory.createImportClause(!1,void 0,_.factory.createNamedImports([_.factory.createImportSpecifier(!1,void 0,_.factory.createIdentifier(rr))])),_.factory.createStringLiteral(r)),...e.statements,...n]};function et(e){let t=sr(e);return t===void 0?void 0:t.split(`
3
3
  `).filter(r=>r.includes(":")).map(r=>r.replace(";","").replaceAll('"',"").replaceAll("'","").split(":")).map(([r,i])=>[r.trim(),i.trim()]).filter(([r])=>!r.startsWith("/")&&!r.startsWith("*"))}function sr(e){let t=e.indexOf("declare global {");if(t===-1)return;let n=e.indexOf(`
4
4
  }`,t)+2;return e.slice(t,n)}var pr=e=>(t,n)=>[Js,Os,Bs,js,tr,Ws,Hs,ir,...e.options.types?.declarationTextTransformers??[],...e._declarationTextTransformers].reduce((r,i)=>r===!1?!1:i(r,e),{filePath:t,content:n}),Js=(e,t)=>t.isInStorybook?!1:e,js=(e,t)=>e.filePath.endsWith(ar)&&e.filePath===Ms.join(t.dir.dist,ar)?!1:e,ar="lumina.d.ts",Os=(e,t)=>{let n=t.dir.dist,r=`${n}src/`;return e.filePath.startsWith(r)?{...e,filePath:`${n}${e.filePath.slice(r.length)}`}:!1},je=e=>e.includes("__test")||e.includes(".e2e.")||e.includes(".spec.")||e.includes(".test."),Bs=e=>je(e.filePath)?!1:e,Ws=e=>e.content.includes("__esri.")?{filePath:e.filePath,content:`/// <reference types="@arcgis/core/interfaces.d.ts" />
5
- ${e.content}`}:e,Hs=(e,t)=>{t._htmlElementReferencesReplacer??={regex:new RegExp(`(${t.apiJsonComponents.map(r=>r.name).join("|")})\\[['"\`]el['"\`]\\]`,"ug"),replacements:Object.fromEntries(t.apiJsonComponents.map(r=>[r.name,`HTML${r.pascalCaseName}Element`]))};let n=t._htmlElementReferencesReplacer;return{filePath:e.filePath,content:e.content.replace(n.regex,(r,i)=>n.replacements[i])}};import Us from"typescript";import{path as Ks}from"@arcgis/components-build-utils";import{getMemberName as _s}from"@arcgis/api-extractor";function lr(e,t){let n=_s(t.name);return e.members.find(r=>r.name===n)}function cr(e,t,n){let r=Ks.relative(t,e);return n.modules.find(i=>i.path===r)}function tt(e,t,n,r){let i={compiler:e,apiModule:e.isInPuppeteerTestBackEnd?void 0:cr(n.fileName,e.dir.root,e.privateApiJson),transformation:t},o=n.statements,s=n.statements;return Object.defineProperty(n,"statements",{get:()=>s,configurable:!0}),r.forEach(a=>{s=a(n,i)}),Object.defineProperty(n,"statements",{value:o}),Vs(n,s)}var Vs=(e,t)=>Us.factory.updateSourceFile(e,t,e.isDeclarationFile,e.referencedFiles,e.typeReferenceDirectives,e.hasNoDefaultLib,e.libReferenceDirectives),ur=e=>`${dr}${" ".repeat(e.length-dr.length-mr.length)}${mr}`,dr="/*",mr="*/";import U from"typescript";var fr=e=>e.statements.map(Xs),zs="@arcgis/lumina",qs="LitElement",Gs="PublicLitElement",Ut="TargetedEvent";function Xs(e){if(U.isImportDeclaration(e)&&U.isStringLiteral(e.moduleSpecifier)&&e.moduleSpecifier.text===zs&&e.importClause?.namedBindings&&U.isNamedImports(e.importClause.namedBindings)){let t=e.importClause.namedBindings.elements.findIndex(r=>(r.propertyName??r.name).text===qs);if(t===-1)return e;let n=e.importClause.namedBindings.elements[t];return U.factory.updateImportDeclaration(e,e.modifiers,U.factory.updateImportClause(e.importClause,e.importClause.isTypeOnly,e.importClause.name,U.factory.updateNamedImports(e.importClause.namedBindings,[...e.importClause.namedBindings.elements.slice(0,t),U.factory.updateImportSpecifier(n,n.isTypeOnly,U.factory.createIdentifier(Gs),n.name),...e.importClause.namedBindings.elements.slice(t+1),U.factory.createImportSpecifier(!e.importClause.isTypeOnly,void 0,U.factory.createIdentifier(Ut))])),e.moduleSpecifier,e.attributes)}else return e}import v from"typescript";import{isNotUndefined as Ys}from"@arcgis/components-utils";import O from"typescript";var Vt="_setterTypes";function yr(e,t,n){return O.factory.createPropertyDeclaration([O.factory.createModifier(O.SyntaxKind.ReadonlyKeyword)],O.factory.createIdentifier(Vt),void 0,O.factory.createTypeLiteralNode(e.map(r=>{let[i,o]=Qs(r.name,r.type,n._typeScriptPrinter,t);return O.factory.createPropertySignature(void 0,i,r.isRequired?void 0:O.factory.createToken(O.SyntaxKind.QuestionToken),o)})),void 0)}function Qs(e,t,n,r){let i=n.printNode(O.EmitHint.Unspecified,e,r),o=n.printNode(O.EmitHint.Unspecified,t,r),s=`declare class A { ${i}: ${o} }`,l=O.createSourceFile("a.d.ts",s,O.ScriptTarget.Latest,!1,O.ScriptKind.TS).statements[0].members[0];return[l.name,l.type]}import{getMemberName as Zs}from"@arcgis/api-extractor";import{toSystemPathSeparators as ea}from"@arcgis/components-build-utils";var hr=(e,t)=>t.apiModule===void 0?e.statements:e.statements.map(n=>ta(n,e,t));function ta(e,t,n){if(v.isClassDeclaration(e)){let r=e,i=r.name?.text,o=n.apiModule.declarations.find(l=>l.name===i&&"customElement"in l);if(o===void 0)return e;let s=n.compiler._typeDependencies.get(o.tagName),a=[],p=r.members.map(l=>na(l,o,a,s,t)).filter(Ys);return a.length>0&&p.push(yr(a,t,n.compiler)),v.factory.updateClassDeclaration(r,r.modifiers,r.name,r.typeParameters,r.heritageClauses?.filter(l=>l.token!==v.SyntaxKind.ImplementsKeyword),p)}else return e}function na(e,t,n,r,i){let o=e.name===void 0?void 0:Zs(e.name);if(o===void 0)return;let s=r?.has(o)??!1,a=t.members.find(p=>p.name===o);if(a?.privacy!==void 0)return s?nt(e):void 0;if(v.isPropertyDeclaration(e))return a===void 0?t.events?.find(l=>l.name===o)===void 0?s?nt(e):void 0:v.factory.updatePropertyDeclaration(e,gr(e.modifiers),e.name,void 0,ra(e.type,i),e.initializer):a.readonly===!0?v.factory.updatePropertyDeclaration(e,gr(e.modifiers),e.name,void 0,e.type,e.initializer):e;if(v.isGetAccessor(e)||v.isSetAccessor(e)){if(a===void 0)return s?nt(e):void 0;if(v.isSetAccessor(e)){if(a.readonly===!0)return;let p=a.getterTypeDiffers!==void 0,c=e.parameters[0].type;p&&c!==void 0&&n.push({name:e.name,type:c,isRequired:a.docsTags?.some(d=>d.name==="required")??!1})}return e}else if(v.isMethodDeclaration(e))return a===void 0?s?nt(e):void 0:e}function nt(e){if(v.isPropertyDeclaration(e)){let t=rt(e.modifiers);if(t!==e.modifiers)return v.factory.updatePropertyDeclaration(e,t,e.name,e.questionToken,e.type,e.initializer)}else if(v.isGetAccessor(e)){let t=rt(e.modifiers);if(t!==e.modifiers)return v.factory.updateGetAccessorDeclaration(e,t,e.name,e.parameters,e.type,e.body)}else if(v.isSetAccessor(e)){let t=rt(e.modifiers);if(t!==e.modifiers)return v.factory.updateSetAccessorDeclaration(e,t,e.name,e.parameters,e.body)}else if(v.isMethodDeclaration(e)){let t=rt(e.modifiers);if(t!==e.modifiers)return v.factory.updateMethodDeclaration(e,t,e.asteriskToken,e.name,e.questionToken,e.typeParameters,e.parameters,e.type,e.body)}return e}function gr(e){return e?.some(n=>n.kind===v.SyntaxKind.ReadonlyKeyword)?e:[v.factory.createModifier(v.SyntaxKind.ReadonlyKeyword),...e??[]]}function rt(e){return e?.some(n=>n.kind===v.SyntaxKind.PrivateKeyword)?e:[v.factory.createModifier(v.SyntaxKind.PrivateKeyword),...(e??[]).filter(n=>n.kind!==v.SyntaxKind.PublicKeyword&&n.kind!==v.SyntaxKind.ProtectedKeyword)]}function ra(e,t){if(e===void 0)return;let n=v.isImportTypeNode(e)&&e.qualifier&&v.isIdentifier(e.qualifier)&&e.qualifier.escapedText==="EventEmitter"?e.typeArguments??[]:v.isTypeReferenceNode(e)&&v.isIdentifier(e.typeName)&&e.typeName.escapedText==="EventEmitter"?e.typeArguments??[]:void 0;return typeof n=="object"?v.factory.createTypeReferenceNode(Ut,[v.factory.createThisTypeNode(),...n]):(console.warn(`Unhandled event type node: ${e.getFullText(t)} (in ${ea(t.fileName)}). Double check you are using events correctly or report this issue to Lumina maintainers`),e)}import{toSystemPathSeparators as sa}from"@arcgis/components-build-utils";import ia from"typescript";var Cr=e=>e.statements.map(oa);function oa(e){if(ia.isImportDeclaration(e)){let t=e.moduleSpecifier.text;if(t.endsWith(".json"))throw new Error(`Found a .json import (${t}) in a .d.ts file. This can cause TypeScript errors for consumers of your package. See alternative options: https://devtopia.esri.com/WebGIS/arcgis-web-components/issues/2047`)}return e}var aa=[fr,hr,Cr];function xr(e){let t,n=pa(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 i=e.typeScriptProgram.getSourceFile(r);if(i===void 0)throw new Error(`Could not find source file: ${sa(r)}`);let o=[];return e.typeScriptProgram.emit(i,(p,l)=>{o.push({path:p,content:l})},void 0,!0,{afterDeclarations:[n]}),o}}}var pa=e=>t=>n=>tt(e,t,n,[...aa,...e.options.types?.declarationAstTransformers??[]]);import{path as ma}from"@arcgis/components-build-utils";var Tr=e=>new Proxy(e,{get:la,set:ca});function la(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 br(e){let t=e.options.types??{},n=!1,r={...t?.compilerOptions,rootDir:"."},i=da({...t,compilerOptions:r,tsconfigPath:e.options.types?.tsconfigPath,strictOutput:!0,afterDiagnostic(o){let s=o.length>0,a=e.viteCommand==="build";if(s&&a)throw new Error("TypeScript errors reported. See error messages above");return t?.afterDiagnostic?.(o)},beforeWriteFile:pr(e),resolvers:[{name:"@arcgis/lumina:getHostReference",supports:()=>!n,transform({program:o,host:s}){return n=!0,e.typeScriptProgram=o,e.typeScriptTypeChecker=o.getTypeChecker(),e.typeScriptHost=s,t?.typeScriptInstanceCreated?.(o,s),[]}},...t?.resolvers??[],xr(e)]});return{...i,apply:()=>e.viteCommand==="build",async configResolved(o){r.sourceMap=o.build.sourcemap!==!1;let s=i.configResolved;if(typeof s!="function")throw new Error("Expected configResolved to be a function");await s.call(this,o)},async buildStart(o){let s=i.buildStart;if(typeof s!="function")throw new Error("Expected buildStart to be a function");let a=i.transform;if(typeof a!="function")throw new Error("Expected transform to be a function");if(await s.call(this,o),await a.call(Tr({}),"",ma.join(e.dir.src,"__fakeFile.ts")),!n)throw new Error("Expected resolver to get called")}}}import{isNotUndefined as Gd}from"@arcgis/components-utils";var ua=/\r\n|[\\`\u0000-\u001f\t\v\f\b\r\u2028\u2029\u0085]/gu,fa=new Map(Object.entries({" ":"\\t","\v":"\\v","\f":"\\f","\b":"\\b","\r":"\\r","\n":`
5
+ ${e.content}`}:e,Hs=(e,t)=>{t._htmlElementReferencesReplacer??={regex:new RegExp(`(${t.apiJsonComponents.map(r=>r.name).join("|")})\\[['"\`]el['"\`]\\]`,"ug"),replacements:Object.fromEntries(t.apiJsonComponents.map(r=>[r.name,`HTML${r.pascalCaseName}Element`]))};let n=t._htmlElementReferencesReplacer;return{filePath:e.filePath,content:e.content.replace(n.regex,(r,i)=>n.replacements[i])}};import Us from"typescript";import{path as Ks}from"@arcgis/components-build-utils";import{getMemberName as _s}from"@arcgis/api-extractor";function lr(e,t){let n=_s(t.name);return e.members.find(r=>r.name===n)}function cr(e,t,n){let r=Ks.relative(t,e);return n.modules.find(i=>i.path===r)}function tt(e,t,n,r){let i={compiler:e,apiModule:e.isInPuppeteerTestBackEnd?void 0:cr(n.fileName,e.dir.root,e.privateApiJson),transformation:t},o=n.statements,s=n.statements;return Object.defineProperty(n,"statements",{get:()=>s,configurable:!0}),r.forEach(a=>{s=a(n,i)}),Object.defineProperty(n,"statements",{value:o}),Vs(n,s)}var Vs=(e,t)=>Us.factory.updateSourceFile(e,t,e.isDeclarationFile,e.referencedFiles,e.typeReferenceDirectives,e.hasNoDefaultLib,e.libReferenceDirectives),ur=e=>`${dr}${" ".repeat(e.length-dr.length-mr.length)}${mr}`,dr="/*",mr="*/";import U from"typescript";var fr=e=>e.statements.map(Xs),zs="@arcgis/lumina",qs="LitElement",Gs="PublicLitElement",Ut="TargetedEvent";function Xs(e){if(U.isImportDeclaration(e)&&U.isStringLiteral(e.moduleSpecifier)&&e.moduleSpecifier.text===zs&&e.importClause?.namedBindings&&U.isNamedImports(e.importClause.namedBindings)){let t=e.importClause.namedBindings.elements.findIndex(r=>(r.propertyName??r.name).text===qs);if(t===-1)return e;let n=e.importClause.namedBindings.elements[t];return U.factory.updateImportDeclaration(e,e.modifiers,U.factory.updateImportClause(e.importClause,e.importClause.isTypeOnly,e.importClause.name,U.factory.updateNamedImports(e.importClause.namedBindings,[...e.importClause.namedBindings.elements.slice(0,t),U.factory.updateImportSpecifier(n,n.isTypeOnly,U.factory.createIdentifier(Gs),n.name),...e.importClause.namedBindings.elements.slice(t+1),U.factory.createImportSpecifier(!e.importClause.isTypeOnly,void 0,U.factory.createIdentifier(Ut))])),e.moduleSpecifier,e.attributes)}else return e}import v from"typescript";import{isNotUndefined as Ys}from"@arcgis/components-utils";import O from"typescript";var Vt="_setterTypes";function yr(e,t,n){return O.factory.createPropertyDeclaration([O.factory.createModifier(O.SyntaxKind.ReadonlyKeyword)],O.factory.createIdentifier(Vt),void 0,O.factory.createTypeLiteralNode(e.map(r=>{let[i,o]=Qs(r.name,r.type,n._typeScriptPrinter,t);return O.factory.createPropertySignature(void 0,i,r.isRequired?void 0:O.factory.createToken(O.SyntaxKind.QuestionToken),o)})),void 0)}function Qs(e,t,n,r){let i=n.printNode(O.EmitHint.Unspecified,e,r),o=n.printNode(O.EmitHint.Unspecified,t,r),s=`declare class A { ${i}: ${o} }`,l=O.createSourceFile("a.d.ts",s,O.ScriptTarget.Latest,!1,O.ScriptKind.TS).statements[0].members[0];return[l.name,l.type]}import{getMemberName as Zs}from"@arcgis/api-extractor";import{toSystemPathSeparators as ea}from"@arcgis/components-build-utils";var hr=(e,t)=>t.apiModule===void 0?e.statements:e.statements.map(n=>ta(n,e,t));function ta(e,t,n){if(v.isClassDeclaration(e)){let r=e,i=r.name?.text,o=n.apiModule.declarations.find(l=>l.name===i&&"customElement"in l);if(o===void 0)return e;let s=n.compiler._typeDependencies.get(o.tagName),a=[],p=r.members.map(l=>na(l,o,a,s,t)).filter(Ys);return a.length>0&&p.push(yr(a,t,n.compiler)),v.factory.updateClassDeclaration(r,r.modifiers,r.name,r.typeParameters,r.heritageClauses?.filter(l=>l.token!==v.SyntaxKind.ImplementsKeyword),p)}else return e}function na(e,t,n,r,i){let o=e.name===void 0?void 0:Zs(e.name);if(o===void 0)return;let s=r?.has(o)??!1,a=t.members.find(p=>p.name===o);if(a?.privacy!==void 0)return s?nt(e):void 0;if(v.isPropertyDeclaration(e))return a===void 0?t.events?.find(l=>l.name===o)===void 0?s?nt(e):void 0:v.factory.updatePropertyDeclaration(e,gr(e.modifiers),e.name,void 0,ra(e.type,i),e.initializer):a.readonly===!0?v.factory.updatePropertyDeclaration(e,gr(e.modifiers),e.name,void 0,e.type,e.initializer):e;if(v.isGetAccessor(e)||v.isSetAccessor(e)){if(a===void 0)return s?nt(e):void 0;if(v.isSetAccessor(e)){if(a.readonly===!0)return;let p=a.getterTypeDiffers!==void 0,c=e.parameters[0].type;p&&c!==void 0&&n.push({name:e.name,type:c,isRequired:a.docsTags?.some(d=>d.name==="required")??!1})}return e}else if(v.isMethodDeclaration(e))return a===void 0?s?nt(e):void 0:e}function nt(e){if(v.isPropertyDeclaration(e)){let t=rt(e.modifiers);if(t!==e.modifiers)return v.factory.updatePropertyDeclaration(e,t,e.name,e.questionToken,e.type,e.initializer)}else if(v.isGetAccessor(e)){let t=rt(e.modifiers);if(t!==e.modifiers)return v.factory.updateGetAccessorDeclaration(e,t,e.name,e.parameters,e.type,e.body)}else if(v.isSetAccessor(e)){let t=rt(e.modifiers);if(t!==e.modifiers)return v.factory.updateSetAccessorDeclaration(e,t,e.name,e.parameters,e.body)}else if(v.isMethodDeclaration(e)){let t=rt(e.modifiers);if(t!==e.modifiers)return v.factory.updateMethodDeclaration(e,t,e.asteriskToken,e.name,e.questionToken,e.typeParameters,e.parameters,e.type,e.body)}return e}function gr(e){return e?.some(n=>n.kind===v.SyntaxKind.ReadonlyKeyword)?e:[v.factory.createModifier(v.SyntaxKind.ReadonlyKeyword),...e??[]]}function rt(e){return e?.some(n=>n.kind===v.SyntaxKind.PrivateKeyword)?e:[v.factory.createModifier(v.SyntaxKind.PrivateKeyword),...(e??[]).filter(n=>n.kind!==v.SyntaxKind.PublicKeyword&&n.kind!==v.SyntaxKind.ProtectedKeyword)]}function ra(e,t){if(e===void 0)return;let n=v.isImportTypeNode(e)&&e.qualifier&&v.isIdentifier(e.qualifier)&&e.qualifier.escapedText==="EventEmitter"?e.typeArguments??[]:v.isTypeReferenceNode(e)&&v.isIdentifier(e.typeName)&&e.typeName.escapedText==="EventEmitter"?e.typeArguments??[]:void 0;return typeof n=="object"?v.factory.createTypeReferenceNode(Ut,[v.factory.createThisTypeNode(),...n]):(console.warn(`Unhandled event type node: ${e.getFullText(t)} (in ${ea(t.fileName)}). Double check you are using events correctly or report this issue to Lumina maintainers`),e)}import{toSystemPathSeparators as sa}from"@arcgis/components-build-utils";import ia from"typescript";var Cr=e=>e.statements.map(oa);function oa(e){if(ia.isImportDeclaration(e)){let t=e.moduleSpecifier.text;if(t.endsWith(".json"))throw new Error(`Found a .json import (${t}) in a .d.ts file. This can cause TypeScript errors for consumers of your package. See alternative options: https://devtopia.esri.com/WebGIS/arcgis-web-components/issues/2047`)}return e}var aa=[fr,hr,Cr];function xr(e){let t,n=pa(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 i=e.typeScriptProgram.getSourceFile(r);if(i===void 0)throw new Error(`Could not find source file: ${sa(r)}`);let o=[];return e.typeScriptProgram.emit(i,(p,l)=>{o.push({path:p,content:l})},void 0,!0,{afterDeclarations:[n]}),o}}}var pa=e=>t=>n=>tt(e,t,n,[...aa,...e.options.types?.declarationAstTransformers??[]]);import{path as ma}from"@arcgis/components-build-utils";var Tr=e=>new Proxy(e,{get:la,set:ca});function la(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 br(e){let t=e.options.types??{},n=!1,r={...t?.compilerOptions,rootDir:"."},i=da({...t,compilerOptions:r,tsconfigPath:e.options.types?.tsconfigPath,strictOutput:!0,afterDiagnostic(o){let s=o.length>0,a=e.viteCommand==="build";if(s&&a)throw new Error("TypeScript errors reported. See error messages above");return t?.afterDiagnostic?.(o)},beforeWriteFile:pr(e),resolvers:[{name:"@arcgis/lumina:getHostReference",supports:()=>!n,transform({program:o,host:s}){return n=!0,e.typeScriptProgram=o,e.typeScriptTypeChecker=o.getTypeChecker(),e.typeScriptHost=s,t?.typeScriptInstanceCreated?.(o,s),[]}},...t?.resolvers??[],xr(e)]});return{...i,apply:()=>e.viteCommand==="build",async configResolved(o){r.sourceMap=o.build.sourcemap!==!1;let s=i.configResolved;if(typeof s!="function")throw new Error("Expected configResolved to be a function");await s.call(this,o)},async buildStart(o){let s=i.buildStart;if(typeof s!="function")throw new Error("Expected buildStart to be a function");let a=i.transform;if(typeof a!="function")throw new Error("Expected transform to be a function");if(await s.call(this,o),await a.call(Tr({}),"",ma.join(e.dir.src,"__fakeFile.ts")),!n)throw new Error("Expected resolver to get called")}}}import{isNotUndefined as Xd}from"@arcgis/components-utils";var ua=/\r\n|[\\`\u0000-\u001f\t\v\f\b\r\u2028\u2029\u0085]/gu,fa=new Map(Object.entries({" ":"\\t","\v":"\\v","\f":"\\f","\b":"\\b","\r":"\\r","\n":`
6
6
  `,"\\":"\\\\",'"':'\\"',"'":"\\'","`":"\\`","\u2028":"\\u2028","\u2029":"\\u2029","\x85":"\\u0085","\r\n":"\\r\\n"}));function vr(e){return`\\u${`0000${e.toString(ya).toUpperCase()}`.slice(-ga)}`}var ya=16,ga=4;function ha(e,t,n){if(e.charCodeAt(0)===Ta){let r=n.charCodeAt(t+e.length);return r>=ba&&r<=Sa?"\\x00":"\\0"}return fa.get(e)||vr(e.charCodeAt(0))}var Ca=e=>e.replace(ua,ha),Sr=/[^\u0000-\u007F]/g;function xa(e){return e=Ca(e),Sr.test(e)?e.replace(Sr,t=>vr(t.charCodeAt(0))):e}var Er=xa,Ta=0,ba=48,Sa=57,va=/\$\{/gu,wr=e=>e.replace(va,"\\${");function Pr(e){if(e.length===0)return"";let t=e[0];if(e.includes(`
7
7
  `)){let i=t===`
8
8
  `,o=e.lastIndexOf(`
9
- `),a=e.slice(o+1).trim().length===0,p=i?e.trimStart():e;return a?p.trimEnd():p}return e.trim().length===0?t:e}var ue=e=>wr(Er(e)),Ar=e=>!Ea.test(e),Ea=/^[^\s"'=<>`]+$/u,wa=/[&<>]/gu,Pa={"&":"&amp;","<":"&lt;",">":"&gt;"},it=e=>e.replace(wa,t=>Pa[t]);import R from"typescript";import{path as Yt,toSystemPathSeparators as Wa,retrievePackageJson as Ha}from"@arcgis/components-build-utils";import{isNotUndefined as Aa}from"@arcgis/components-utils";import{readdir as Da}from"node:fs/promises";import{path as Oe}from"@arcgis/components-build-utils";var Dr=async e=>Object.fromEntries((await e.componentFilesPromise).map(t=>[zt(t),t])),zt=(e,t=Oe.resolve("src"))=>Oe.relative(t,Oe.join(e,"..",Te.slice(0,-3))),be=async(e,t,n=t)=>await Da(n,{recursive:!0}).catch(r=>{if(String(r).includes("ENOENT"))return console.error(`@arcgis/lumina: Unable to find the ${n} directory (cwd: ${process.cwd()})`),[];throw r}).then(r=>{let i=r.map(o=>{if(!o.endsWith(".tsx"))return;let s=Oe.join(n,o);return ne(s,t)?s:void 0}).filter(Aa);return e.componentFiles=i,i});function ne(e,t){if(!e.startsWith(t)||!e.endsWith(".tsx"))return!1;let[n,r]=e.slice(0,-4).split(Oe.sep).slice(Fa);return n===r}var Fa=-2;import ka from"typescript";var Fr=5,kr=1,Ir=1,Nr=3,Lr=4,ot=ka;Ia(ot.createSourceMapGenerator);Na(ot.createTextWriter);La(ot.getNewLineCharacter);var fe=ot;function Ia(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!==Fr)throw new Error(`ts.createSourceMapGenerator() signature changed. Expected ${Fr} arguments. Lumina needs to be updated to support the new TypeScript version`)}function Na(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!==kr)throw new Error(`ts.createTextWriter() signature changed. Expected ${kr} arguments. Lumina needs to be updated to support the new TypeScript version`)}function La(e){if(typeof e!="function")throw new Error("Failed to find ts.getNewLineCharacter() function. Lumina needs to be updated to support the new TypeScript version");if(e.length!==Ir)throw new Error(`ts.getNewLineCharacter() signature changed. Expected ${Ir} argument. Lumina needs to be updated to support the new TypeScript version`)}function Ra(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!==Nr)throw new Error(`ts.Printer.writeFile() signature changed. Expected ${Nr} arguments. Lumina needs to be updated to support the new TypeScript version`)}function $a(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!==Lr)throw new Error(`ts.Printer.writeNode() signature changed. Expected ${Lr} arguments. Lumina needs to be updated to support the new TypeScript version`)}function st(e){let t=fe.createPrinter(e);return Ra(t.writeFile),$a(t.writeNode),t}import{globalPackageIdentifier as Ka}from"@arcgis/api-extractor";import{mappedFind as _a}from"@arcgis/components-utils";import Ma from"typescript";function Gt(e){let t=Ma.isUnionTypeNode(e)?e.types.map(qt):[qt(e)],n=new Set(t),r=n.delete("true"),i=n.delete("false");(r||i)&&n.add("boolean");let o=Array.from(n).sort();if(o.length>1&&(o=o.map(s=>s.includes("=>")?`(${s})`:s)),!(o.length>Ja))return o.map(ja)}var Ja=40,Rr=e=>e?.some(t=>t.type==="number"||t.type==="boolean"||t.type==="string"||t.type==="any")??!1,$r=e=>e.length===1&&e[0].type!=="string"&&e[0].type!=="number"&&e[0].type!=="boolean"&&e[0].type!=="any"?void 0:e,at=e=>e.map(Xt).join(" | "),Xt=e=>e.type==="string"&&e.value!==void 0?`"${e.value}"`:e.value??e.type;function ja(e){return e==="boolean"?{type:"boolean"}:Number.isNaN(Number.parseFloat(e))?e.startsWith('"')||e.startsWith("'")?{value:e.slice(1,-1),type:"string"}:{type:e}:{value:e,type:"number"}}import Oa from"typescript";var Mr=(e,t,n,r)=>{let i=e.typeScriptTypeChecker,o=Oa.isSetAccessor(t)?t.parameters[0]:t,s=i.getTypeAtLocation(o),a=!n;return ye(i,s,r,e.dir,a)};function Jr(e,t){if(e.length===0)return;let n=t.matchAll(Ba),r=[];for(let i of n){let o=e.find(s=>s.name===i[0]);o!==void 0&&r.push({...o,start:i.index,end:i.index+o.name.length})}return r.length===0?void 0:r}var Ba=/"[^"]+"|'[^"]+'|\w+/gu;function ye(e,t,n,r,i=!1){let{typeNode:o,references:s}=Or(e,t,n,r),a=Gt(o);a===void 0&&({typeNode:o,references:s}=Or(e,t,n,r,!1),a=Gt(o)??[]);let p=i?a.filter(m=>m.type!=="null"&&m.type!=="undefined"):a,l=at(p),c=$r(p),d=Jr(s,l);return{text:l,references:d,values:c}}function qt(e){Ua.writeNode(R.EmitHint.Unspecified,e,void 0,Qt);let t=Qt.getText();return Qt.clear(),t}var Ua=st({removeComments:!0}),Qt=fe.createTextWriter(`
10
- `),Zt=R.TypeFormatFlags.NoTruncation|R.TypeFormatFlags.WriteArrayAsGenericType|R.TypeFormatFlags.SuppressAnyReturnType|R.TypeFormatFlags.MultilineObjectLiterals,Va=Zt&R.TypeFormatFlags.NodeBuilderFlagsMask,za=Va|R.NodeBuilderFlags.IgnoreErrors|R.NodeBuilderFlags.NoTruncation;function qa(e,t,n,r=!0){let i=new Map;Se(t,i,n,r);let o=t.flags&R.TypeFlags.Union?t.types.every(jr):jr(t),s=e.typeToTypeNode(t,void 0,za&(o?~R.TypeFormatFlags.MultilineObjectLiterals:-1));return i.forEach(Ga),s===void 0?(console.error("Failed to convert type to type node."),R.factory.createTypeReferenceNode(R.factory.createIdentifier("unknown"),void 0)):s}var jr=e=>e.flags&R.TypeFlags.Object?e.getProperties().length===1:!!(e.flags&R.TypeFlags.PossiblyFalsy);function Or(e,t,n,r,i=!0){let o=[],s=new Set;function a(l,c){let d=l.aliasSymbol??l.symbol;if(d===void 0)return;let m=c?l.aliasTypeArguments?.[0]?.symbol?.escapedName??"":d.name;if(m.startsWith("_")){let f=d.declarations?.[0];if(f?.kind===R.SyntaxKind.FunctionType){let h=f;if(h.parameters.forEach(y=>{if(y.type===void 0)return;let T=e.getTypeFromTypeNode(y.type);Se(T,new Map,a,!1)}),h.type!==void 0){let y=e.getTypeFromTypeNode(h.type);Se(y,new Map,a,!1)}}return}if(s.has(m))return;let u=c?{name:m,package:void 0,module:"index.js"}:Xa(d,m,n,r);o.push(u),s.add(m)}return{typeNode:qa(e,t,a,i),references:o}}function Se(e,t,n,r=!0){if(typeof e!="object"||e===null||!("checker"in e))return;let i=e;if(t.has(i))return;let o=(i.flags&R.TypeFlags.Object)!==0&&(i.aliasTypeArguments?.[0]?.objectFlags??0&R.ObjectFlags.Class)!==0&&i.aliasSymbol?.escapedName==="ToElement";n?.(i,o);let s=i.origin;if(o||!r)t.set(i,{origin:void 0,aliasSymbol:void 0,aliasTypeArguments:void 0}),Se(s,t,n,r);else{let a=i.aliasSymbol,p=i.aliasTypeArguments;s!==void 0&&(i.origin=void 0),a!==void 0&&(i.aliasSymbol=void 0),p!==void 0&&(i.aliasTypeArguments=void 0),t.set(i,{origin:s,aliasSymbol:a,aliasTypeArguments:p})}Object.entries(i).forEach(([a,p])=>{(a.includes("type")||a.includes("Type")||a==="constraint")&&a!=="resolvedBaseConstructorType"&&a!=="resolvedBaseTypes"&&a!=="typeParameters"&&a!=="typeParameter"&&(Array.isArray(p)?p.forEach(l=>Se(l,t,n,r)):Se(p,t,n,r))})}function Ga(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 Xa(e,t,n,r){let i=e?.declarations?.map(a=>a.getSourceFile())??[];if(i.length===0){if(t==="Array")return{name:"Array",package:"typescript",module:"lib/lib.es5.d.ts"};console.error(`@arcgis/lumina: Unable to resolve the declaration file name for type ${t} in ${Wa(n.fileName)}`)}if(i.length===0)return{name:t,package:Ka,module:void 0};let{packageName:o,moduleName:s}=Qa(i[0].fileName,r);return o?{name:t,package:o,module:s.length>0?s:void 0,viewUrl:o==="@arcgis/core"&&s==="interfaces.d.ts"?ep(e,i[0]):void 0}:{name:t,package:void 0,module:s}}function Qa(e,t){let n=e.split("/node_modules/");if(n.length>1){let s=n.at(-1);return en(s)}let i=e.split("/dist/");if(i.length>1){let s=i.slice(0,-1).join("/"),p=Ha(s).name,l=i.at(-1);return{packageName:p,moduleName:l}}return{packageName:void 0,moduleName:Yt.relative(t.root,Za(Ya(e,t)))}}function Ya(e,t){return ne(e,t.srcComponents)?Yt.join(t.dist,zt(e,t.src)):e.startsWith(t.src)?Yt.join(t.dist,e.slice(t.src.length)):e}var Za=e=>e.endsWith(".js")||e.endsWith(".d.ts")?e:`${e.endsWith(".ts")?e.slice(0,-3):e.endsWith(".tsx")?e.slice(0,-4):e}.d.ts`;function en(e){let t=e.split("/"),r=e[0].startsWith("@")?2:1,i=t.slice(0,r).join("/"),o=t.slice(r).join("/");return{packageName:i,moduleName:o}}var Wr=e=>e.includes("/node_modules/")||e.includes("/dist/");function ep(e,t){let n=e.declarations;if(n!==void 0)for(let r of n){let i=Br(r,t);if(i!==void 0)return i;if(!("members"in r))continue;let o=r.members;for(let s of o){let a=Br(s,t);if(a!==void 0)return a}}}function Br(e,t){let n=e.jsDoc?.[0]?.comment;if(Array.isArray(n))return _a(n,r=>{if(!R.isJSDocLinkLike(r))return;let i=r.getText(t);if(i.endsWith("Read more...}"))return i.split(" ")[1]?.split("#")[0]})}import{getCwd as Kr,path as _r,toSystemPathSeparators as tn}from"@arcgis/components-build-utils";function Hr(e){let t=[];for(let n of e.matchAll(tp)){let r=n.groups.name,i=n.groups.description.replaceAll(np," ").trim();t.push({name:r,description:i.endsWith("*")?i.slice(0,-1).trim():i})}return t.length===0?void 0:t}var tp=/@prop\s+(?<name>--[\w-]+)\s*:(?<description>[^@/]+)/gu,np=/\n\s+\*? ?/gu;var rp=["css","less","sass","scss","styl","stylus","pcss","postcss","sss"],ve=new RegExp(`\\.(${rp.join("|")})(\\?|$)`,"u"),ip=/^import ["'](?<specifier>[^"']+)["'];$/gmu,op=()=>"throwError",Ur="@arcgis/lumina:loadLitCss",B="?layered",Be="?global",Vr=e=>({name:Ur,enforce:"pre",configResolved(t){let n=t.plugins.find(({name:i})=>i==="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(o,s){let a=s.endsWith(B);a&&(s=s.slice(0,-B.length));let p=s.endsWith(Be);if(p&&(s=s.slice(0,-Be.length)),!ve.test(s)||s.includes("?"))return await r.call(this,o,s);let l=`${s}?inline`,c=await r.call(this,o,l),{code:d,...m}=typeof c=="string"?{code:c}:c??{};if(typeof d!="string"||!d.startsWith(zr)||!d.endsWith(qr))return console.warn(`${Ur} Expected vite:css-post to return a JS module with a string literal for ${tn(s)}.`),console.log(c),c;if(p)return e._globalCssString=Gr(d),{code:"",map:{mappings:""}};{let u=e.isFullApiExtraction?Hr(o):void 0;if(u!==void 0){e._cssDocs??=new Map,e._cssDocs.set(s,u);let f=e._cssImports.get(s);if(f!==void 0){for(let h of e.apiJsonComponents)if(f.has(h.tagName))if(h.cssProperties===void 0)h.cssProperties=Array.from(u);else{let y=new Set(h.cssProperties.map(T=>T.name));h.cssProperties=[...h.cssProperties,...u.filter(T=>!y.has(T.name))]}}}return{...m,code:lp(d,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 i=0,o=Wr(n),s=!1,a=t.replaceAll(ip,(p,l)=>{if(!ve.test(l)||l.includes("?"))return p;if(o){if((e.options.css?.sideEffectImportHandling??op)(l,n)==="drop")return s=!0,ur(p);{let m=tn(_r.relative(Kr(),n));throw new Error(`Found a side-effect CSS import \`${p}\` in "${m}". Such import is not allowed as it won't work with shadow DOM. This file appears to be external so such import may not be under your control. To ignore this import, please set the css.sideEffectImportHandling property in useLumina() plugin to a function that will return "drop" for this import to indicate that you wish to have this style import dropped. Then, you would have to import the dropped manually in your component like so: \`import { styles } from "example.css";\` and then add \`static override styles = styles;\` to your component`)}}else if(e.isInStorybook&&dp(n,e)){s=!0;let c=`storybookCss$${i}`;return i+=1,["import ",c," from ",p.slice(6),`
9
+ `),a=e.slice(o+1).trim().length===0,p=i?e.trimStart():e;return a?p.trimEnd():p}return e.trim().length===0?t:e}var ue=e=>wr(Er(e)),Ar=e=>!Ea.test(e),Ea=/^[^\s"'=<>`]+$/u,wa=/[&<>]/gu,Pa={"&":"&amp;","<":"&lt;",">":"&gt;"},it=e=>e.replace(wa,t=>Pa[t]);import $ from"typescript";import{path as Yt,toSystemPathSeparators as Wa,retrievePackageJson as Ha}from"@arcgis/components-build-utils";import{isNotUndefined as Aa}from"@arcgis/components-utils";import{readdir as Da}from"node:fs/promises";import{path as Oe}from"@arcgis/components-build-utils";var Dr=async e=>Object.fromEntries((await e.componentFilesPromise).map(t=>[zt(t),t])),zt=(e,t=Oe.resolve("src"))=>Oe.relative(t,Oe.join(e,"..",Te.slice(0,-3))),be=async(e,t,n=t)=>await Da(n,{recursive:!0}).catch(r=>{if(String(r).includes("ENOENT"))return console.error(`@arcgis/lumina: Unable to find the ${n} directory (cwd: ${process.cwd()})`),[];throw r}).then(r=>{let i=r.map(o=>{if(!o.endsWith(".tsx"))return;let s=Oe.join(n,o);return ne(s,t)?s:void 0}).filter(Aa);return e.componentFiles=i,i});function ne(e,t){if(!e.startsWith(t)||!e.endsWith(".tsx"))return!1;let[n,r]=e.slice(0,-4).split(Oe.sep).slice(Fa);return n===r}var Fa=-2;import ka from"typescript";var Fr=5,kr=1,Ir=1,Nr=3,Lr=4,ot=ka;Ia(ot.createSourceMapGenerator);Na(ot.createTextWriter);La(ot.getNewLineCharacter);var fe=ot;function Ia(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!==Fr)throw new Error(`ts.createSourceMapGenerator() signature changed. Expected ${Fr} arguments. Lumina needs to be updated to support the new TypeScript version`)}function Na(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!==kr)throw new Error(`ts.createTextWriter() signature changed. Expected ${kr} arguments. Lumina needs to be updated to support the new TypeScript version`)}function La(e){if(typeof e!="function")throw new Error("Failed to find ts.getNewLineCharacter() function. Lumina needs to be updated to support the new TypeScript version");if(e.length!==Ir)throw new Error(`ts.getNewLineCharacter() signature changed. Expected ${Ir} argument. Lumina needs to be updated to support the new TypeScript version`)}function $a(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!==Nr)throw new Error(`ts.Printer.writeFile() signature changed. Expected ${Nr} arguments. Lumina needs to be updated to support the new TypeScript version`)}function Ra(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!==Lr)throw new Error(`ts.Printer.writeNode() signature changed. Expected ${Lr} arguments. Lumina needs to be updated to support the new TypeScript version`)}function st(e){let t=fe.createPrinter(e);return $a(t.writeFile),Ra(t.writeNode),t}import{globalPackageIdentifier as Ka}from"@arcgis/api-extractor";import{mappedFind as _a}from"@arcgis/components-utils";import Ma from"typescript";function Gt(e){let t=Ma.isUnionTypeNode(e)?e.types.map(qt):[qt(e)],n=new Set(t),r=n.delete("true"),i=n.delete("false");(r||i)&&n.add("boolean");let o=Array.from(n).sort();if(o.length>1&&(o=o.map(s=>s.includes("=>")?`(${s})`:s)),!(o.length>Ja))return o.map(ja)}var Ja=40,$r=e=>e?.some(t=>t.type==="number"||t.type==="boolean"||t.type==="string"||t.type==="any")??!1,Rr=e=>e.length===1&&e[0].type!=="string"&&e[0].type!=="number"&&e[0].type!=="boolean"&&e[0].type!=="any"?void 0:e,at=e=>e.map(Xt).join(" | "),Xt=e=>e.type==="string"&&e.value!==void 0?`"${e.value}"`:e.value??e.type;function ja(e){return e==="boolean"?{type:"boolean"}:Number.isNaN(Number.parseFloat(e))?e.startsWith('"')||e.startsWith("'")?{value:e.slice(1,-1),type:"string"}:{type:e}:{value:e,type:"number"}}import Oa from"typescript";var Mr=(e,t,n,r)=>{let i=e.typeScriptTypeChecker,o=Oa.isSetAccessor(t)?t.parameters[0]:t,s=i.getTypeAtLocation(o),a=!n;return ye(i,s,r,e.dir,a)};function Jr(e,t){if(e.length===0)return;let n=t.matchAll(Ba),r=[];for(let i of n){let o=e.find(s=>s.name===i[0]);o!==void 0&&r.push({...o,start:i.index,end:i.index+o.name.length})}return r.length===0?void 0:r}var Ba=/"[^"]+"|'[^"]+'|\w+/gu;function ye(e,t,n,r,i=!1){let{typeNode:o,references:s}=Or(e,t,n,r),a=Gt(o);a===void 0&&({typeNode:o,references:s}=Or(e,t,n,r,!1),a=Gt(o)??[]);let p=i?a.filter(m=>m.type!=="null"&&m.type!=="undefined"):a,l=at(p),c=Rr(p),d=Jr(s,l);return{text:l,references:d,values:c}}function qt(e){Ua.writeNode($.EmitHint.Unspecified,e,void 0,Qt);let t=Qt.getText();return Qt.clear(),t}var Ua=st({removeComments:!0}),Qt=fe.createTextWriter(`
10
+ `),Zt=$.TypeFormatFlags.NoTruncation|$.TypeFormatFlags.WriteArrayAsGenericType|$.TypeFormatFlags.SuppressAnyReturnType|$.TypeFormatFlags.MultilineObjectLiterals,Va=Zt&$.TypeFormatFlags.NodeBuilderFlagsMask,za=Va|$.NodeBuilderFlags.IgnoreErrors|$.NodeBuilderFlags.NoTruncation;function qa(e,t,n,r=!0){let i=new Map;Se(t,i,n,r);let o=t.flags&$.TypeFlags.Union?t.types.every(jr):jr(t),s=e.typeToTypeNode(t,void 0,za&(o?~$.TypeFormatFlags.MultilineObjectLiterals:-1));return i.forEach(Ga),s===void 0?(console.error("Failed to convert type to type node."),$.factory.createTypeReferenceNode($.factory.createIdentifier("unknown"),void 0)):s}var jr=e=>e.flags&$.TypeFlags.Object?e.getProperties().length===1:!!(e.flags&$.TypeFlags.PossiblyFalsy);function Or(e,t,n,r,i=!0){let o=[],s=new Set;function a(l,c){let d=l.aliasSymbol??l.symbol;if(d===void 0)return;let m=c?l.aliasTypeArguments?.[0]?.symbol?.escapedName??"":d.name;if(m.startsWith("_")){let f=d.declarations?.[0];if(f?.kind===$.SyntaxKind.FunctionType){let h=f;if(h.parameters.forEach(y=>{if(y.type===void 0)return;let T=e.getTypeFromTypeNode(y.type);Se(T,new Map,a,!1)}),h.type!==void 0){let y=e.getTypeFromTypeNode(h.type);Se(y,new Map,a,!1)}}return}if(s.has(m))return;let u=c?{name:m,package:void 0,module:"index.js"}:Xa(d,m,n,r);o.push(u),s.add(m)}return{typeNode:qa(e,t,a,i),references:o}}function Se(e,t,n,r=!0){if(typeof e!="object"||e===null||!("checker"in e))return;let i=e;if(t.has(i))return;let o=(i.flags&$.TypeFlags.Object)!==0&&(i.aliasTypeArguments?.[0]?.objectFlags??0&$.ObjectFlags.Class)!==0&&i.aliasSymbol?.escapedName==="ToElement";n?.(i,o);let s=i.origin;if(o||!r)t.set(i,{origin:void 0,aliasSymbol:void 0,aliasTypeArguments:void 0}),Se(s,t,n,r);else{let a=i.aliasSymbol,p=i.aliasTypeArguments;s!==void 0&&(i.origin=void 0),a!==void 0&&(i.aliasSymbol=void 0),p!==void 0&&(i.aliasTypeArguments=void 0),t.set(i,{origin:s,aliasSymbol:a,aliasTypeArguments:p})}Object.entries(i).forEach(([a,p])=>{(a.includes("type")||a.includes("Type")||a==="constraint")&&a!=="resolvedBaseConstructorType"&&a!=="resolvedBaseTypes"&&a!=="typeParameters"&&a!=="typeParameter"&&(Array.isArray(p)?p.forEach(l=>Se(l,t,n,r)):Se(p,t,n,r))})}function Ga(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 Xa(e,t,n,r){let i=e?.declarations?.map(a=>a.getSourceFile())??[];if(i.length===0){if(t==="Array")return{name:"Array",package:"typescript",module:"lib/lib.es5.d.ts"};console.error(`@arcgis/lumina: Unable to resolve the declaration file name for type ${t} in ${Wa(n.fileName)}`)}if(i.length===0)return{name:t,package:Ka,module:void 0};let{packageName:o,moduleName:s}=Qa(i[0].fileName,r);return o?{name:t,package:o,module:s.length>0?s:void 0,viewUrl:o==="@arcgis/core"&&s==="interfaces.d.ts"?ep(e,i[0]):void 0}:{name:t,package:void 0,module:s}}function Qa(e,t){let n=e.split("/node_modules/");if(n.length>1){let s=n.at(-1);return en(s)}let i=e.split("/dist/");if(i.length>1){let s=i.slice(0,-1).join("/"),p=Ha(s).name,l=i.at(-1);return{packageName:p,moduleName:l}}return{packageName:void 0,moduleName:Yt.relative(t.root,Za(Ya(e,t)))}}function Ya(e,t){return ne(e,t.srcComponents)?Yt.join(t.dist,zt(e,t.src)):e.startsWith(t.src)?Yt.join(t.dist,e.slice(t.src.length)):e}var Za=e=>e.endsWith(".js")||e.endsWith(".d.ts")?e:`${e.endsWith(".ts")?e.slice(0,-3):e.endsWith(".tsx")?e.slice(0,-4):e}.d.ts`;function en(e){let t=e.split("/"),r=e[0].startsWith("@")?2:1,i=t.slice(0,r).join("/"),o=t.slice(r).join("/");return{packageName:i,moduleName:o}}var Wr=e=>e.includes("/node_modules/")||e.includes("/dist/");function ep(e,t){let n=e.declarations;if(n!==void 0)for(let r of n){let i=Br(r,t);if(i!==void 0)return i;if(!("members"in r))continue;let o=r.members;for(let s of o){let a=Br(s,t);if(a!==void 0)return a}}}function Br(e,t){let n=e.jsDoc?.[0]?.comment;if(Array.isArray(n))return _a(n,r=>{if(!$.isJSDocLinkLike(r))return;let i=r.getText(t);if(i.endsWith("Read more...}"))return i.split(" ")[1]})}import{getCwd as Kr,path as _r,toSystemPathSeparators as tn}from"@arcgis/components-build-utils";function Hr(e){let t=[];for(let n of e.matchAll(tp)){let r=n.groups.name,i=n.groups.description.replaceAll(np," ").trim();t.push({name:r,description:i.endsWith("*")?i.slice(0,-1).trim():i})}return t.length===0?void 0:t}var tp=/@prop\s+(?<name>--[\w-]+)\s*:(?<description>[^@/]+)/gu,np=/\n\s+\*? ?/gu;var rp=["css","less","sass","scss","styl","stylus","pcss","postcss","sss"],ve=new RegExp(`\\.(${rp.join("|")})(\\?|$)`,"u"),ip=/^import ["'](?<specifier>[^"']+)["'];$/gmu,op=()=>"throwError",Ur="@arcgis/lumina:loadLitCss",B="?layered",Be="?global",Vr=e=>({name:Ur,enforce:"pre",configResolved(t){let n=t.plugins.find(({name:i})=>i==="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(o,s){let a=s.endsWith(B);a&&(s=s.slice(0,-B.length));let p=s.endsWith(Be);if(p&&(s=s.slice(0,-Be.length)),!ve.test(s)||s.includes("?"))return await r.call(this,o,s);let l=`${s}?inline`,c=await r.call(this,o,l),{code:d,...m}=typeof c=="string"?{code:c}:c??{};if(typeof d!="string"||!d.startsWith(zr)||!d.endsWith(qr))return console.warn(`${Ur} Expected vite:css-post to return a JS module with a string literal for ${tn(s)}.`),console.log(c),c;if(p)return e._globalCssString=Gr(d),{code:"",map:{mappings:""}};{let u=e.isFullApiExtraction?Hr(o):void 0;if(u!==void 0){e._cssDocs??=new Map,e._cssDocs.set(s,u);let f=e._cssImports.get(s);if(f!==void 0){for(let h of e.apiJsonComponents)if(f.has(h.tagName))if(h.cssProperties===void 0)h.cssProperties=Array.from(u);else{let y=new Set(h.cssProperties.map(T=>T.name));h.cssProperties=[...h.cssProperties,...u.filter(T=>!y.has(T.name))]}}}return{...m,code:lp(d,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 i=0,o=Wr(n),s=!1,a=t.replaceAll(ip,(p,l)=>{if(!ve.test(l)||l.includes("?"))return p;if(o){if((e.options.css?.sideEffectImportHandling??op)(l,n)==="drop")return s=!0,ur(p);{let m=tn(_r.relative(Kr(),n));throw new Error(`Found a side-effect CSS import \`${p}\` in "${m}". Such import is not allowed as it won't work with shadow DOM. This file appears to be external so such import may not be under your control. To ignore this import, please set the css.sideEffectImportHandling property in useLumina() plugin to a function that will return "drop" for this import to indicate that you wish to have this style import dropped. Then, you would have to import the dropped manually in your component like so: \`import { styles } from "example.css";\` and then add \`static override styles = styles;\` to your component`)}}else if(e.isInStorybook&&dp(n,e)){s=!0;let c=`storybookCss$${i}`;return i+=1,["import ",c," from ",p.slice(6),`
11
11
  `,"document.adoptedStyleSheets = [...document.adoptedStyleSheets, ",c,".styleSheet];"].join("")}else{if(l.endsWith(Be))return p;{let c=tn(_r.relative(Kr(),n));throw new Error(`Found a side-effect CSS import \`${p}\` in "${c}". 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`)}}});return s?{code:a,map:null}:void 0}}),zr='export default "',qr='"',sp="import { css } from '@lit/reactive-element/css-tag.js';\nexport const styles = css`",ap="`;\nexport default styles;",pp=`
12
12
 
13
13
  if(import.meta.hot) {
@@ -22,63 +22,63 @@ if(import.meta.hot) {
22
22
  }`,Gr=e=>e.slice(zr.length,-qr.length);function lp(e,t,n,r){let o=Gr(e).replaceAll('\\"','"').replaceAll("`","\\`").replaceAll("\\r",""),s=ue(cp(o)),a=r?`@layer{${n?"":`
23
23
  `}${s}${n?"":`
24
24
  `}}`:s;return`${sp}${a}${ap}${t?pp:""}`}var cp=e=>e.replaceAll("\\n",`
25
- `),dp=(e,t)=>e.endsWith(".mdx")||e.includes(".stories.")||e.includes(".story.")||e.startsWith(`${t.dir.root}stories/`);import{camelToKebab as fp}from"@arcgis/components-utils";import{lazyMetaSubItemJoiner as yp,lazyMetaItemJoiner as on,lazyMetaGroupJoiner as gp}from"@arcgis/lumina/config";import{path as hp}from"@arcgis/components-build-utils";function Xr(e){return`import("@storybook/web-components").then(({ setCustomElementsManifest }) => {
25
+ `),dp=(e,t)=>e.endsWith(".mdx")||e.includes(".stories.")||e.includes(".story.")||e.startsWith(`${t.dir.root}stories/`);import{camelToKebab as yp}from"@arcgis/components-utils";import{lazyMetaSubItemJoiner as gp,lazyMetaItemJoiner as on,lazyMetaGroupJoiner as hp}from"@arcgis/lumina/config";import{path as Cp}from"@arcgis/components-build-utils";function Xr(e){return`import("@storybook/web-components").then(({ setCustomElementsManifest }) => {
26
26
  setCustomElementsManifest(${mp(e)});
27
- });`}var mp=e=>`JSON.parse(\`${JSON.stringify(JSON.stringify(e)).slice(1,-1).replaceAll('\\"','"').replaceAll("`","\\`")}\`)`;function Qr(e){up(e);let t=e.options.css?.globalStylesPath;if(t===void 0)return"";let n=q(e.dir.src,t);return e.viteCommand==="serve"||e.isInStorybook?[`import globalStyles from "${n}${B}";`,"document.adoptedStyleSheets = [...document.adoptedStyleSheets, globalStyles.styleSheet!];",rn("",e)].join(`
28
- `):`import "${n}${Be}";`}var nn="hydrated";function up(e){e._globalHydratedCssString=[":not([",e.options.css?.hydratedAttribute??nn,"]):is(",e.apiJsonComponents.map(t=>t.tagName).join(","),"){visibility:hidden}"].join("")}function rn(e,t){return["const globalCss = new CSSStyleSheet();",`globalCss.replaceSync("@layer{${`${t._globalHydratedCssString}${t.shouldMinify?"":"\\n\\n"}${e||""}`}}");`,"document.adoptedStyleSheets = [...document.adoptedStyleSheets, globalCss];"].join(`
27
+ });`}var mp=e=>`JSON.parse(\`${up(JSON.stringify(JSON.stringify(e)).slice(1,-1))}\`)`;function up(e){return e.replaceAll('\\"','"').replaceAll("`","\\`").replaceAll("${","\\${")}function Qr(e){fp(e);let t=e.options.css?.globalStylesPath;if(t===void 0)return"";let n=q(e.dir.src,t);return e.viteCommand==="serve"||e.isInStorybook?[`import globalStyles from "${n}${B}";`,"document.adoptedStyleSheets = [...document.adoptedStyleSheets, globalStyles.styleSheet!];",rn("",e)].join(`
28
+ `):`import "${n}${Be}";`}var nn="hydrated";function fp(e){e._globalHydratedCssString=[":not([",e.options.css?.hydratedAttribute??nn,"]):is(",e.apiJsonComponents.map(t=>t.tagName).join(","),"){visibility:hidden}"].join("")}function rn(e,t){return["const globalCss = new CSSStyleSheet();",`globalCss.replaceSync("@layer{${`${t._globalHydratedCssString}${t.shouldMinify?"":"\\n\\n"}${e||""}`}}");`,"document.adoptedStyleSheets = [...document.adoptedStyleSheets, globalCss];"].join(`
29
29
  `)}var Yr=e=>`${e._globalHydratedCssString}${e.shouldMinify?"":`
30
30
 
31
- `}${e._globalCssString?JSON.parse(`"${e._globalCssString}"`):""}`;function Zr(e){let t=[],n=[];for(let i of e.privateApiJson.modules){t.push(i.path);for(let o of i.declarations)"customElement"in o&&n.push(Cp(o,e,i.path))}return[e.viteCommand==="build"&&e.options.build?.ssr?.stencilCompatibility?.enabled===!0?'import "@lit-labs/ssr-client/lit-element-hydrate-support.js";':"",'import { runtime } from "./runtime";','import { makeDefineCustomElements } from "@arcgis/lumina";',Qr(e),e.hmrEnabled?Tp:"","",e.isInStorybook?Xr(e.apiJson):"","","export const defineCustomElements = makeDefineCustomElements(runtime, {",n.join(`,
32
- `),"});",e.hmrEnabled?bp(t):""].join(`
31
+ `}${e._globalCssString?JSON.parse(`"${e._globalCssString}"`):""}`;function Zr(e){let t=[],n=[];for(let i of e.privateApiJson.modules){t.push(i.path);for(let o of i.declarations)"customElement"in o&&n.push(xp(o,e,i.path))}return[e.viteCommand==="build"&&e.options.build?.ssr?.stencilCompatibility?.enabled===!0?'import "@lit-labs/ssr-client/lit-element-hydrate-support.js";':"",'import { runtime } from "./runtime";','import { makeDefineCustomElements } from "@arcgis/lumina";',Qr(e),e.hmrEnabled?bp:"","",e.isInStorybook?Xr(e.apiJson):"","","export const defineCustomElements = makeDefineCustomElements(runtime, {",n.join(`,
32
+ `),"});",e.hmrEnabled?Sp(t):""].join(`
33
33
  `)}var ei=`import "./index";
34
- export declare const defineCustomElements: import("@arcgis/lumina").DefineCustomElements;`,Cp=(e,t,n)=>[` "${e.tagName}": [`,`()=>import("${hp.join(t.dir.root,n)}"),`,xp(e),"]"].join("");function xp(e){let{properties:t,asyncMethods:n,syncMethods:r}=sn(e),i=t.map(c=>c.join(yp)).join(on),o=n.join(on),s=r.join(on),a=[i,o,s],p=a.findLastIndex(c=>c.length>0),l=a.slice(0,p+1);return l.length>0?`"${l.join(gp)}"`:""}function sn(e){let t=e.members.filter(o=>o.kind==="field").map(o=>{let s=typeof o.attribute=="string",a=s&&o.attribute!==fp(o.name);return s&&!a?[o.name]:[o.name,a?String(o.attribute):""]}),n=e.members.filter(o=>o.kind==="method"&&o.name!=="componentOnReady"),r=n.filter(o=>o.async===!0).map(o=>o.name),i=n.filter(o=>o.async!==!0).map(o=>o.name);return{tagName:e.tagName,properties:t,asyncMethods:r,syncMethods:i}}var Tp=`import { handleHmrUpdate, handleComponentMetaUpdate } from "@arcgis/lumina/hmrSupport";
35
- `,bp=e=>`
34
+ export declare const defineCustomElements: import("@arcgis/lumina").DefineCustomElements;`,xp=(e,t,n)=>[` "${e.tagName}": [`,`()=>import("${Cp.join(t.dir.root,n)}"),`,Tp(e),"]"].join("");function Tp(e){let{properties:t,asyncMethods:n,syncMethods:r}=sn(e),i=t.map(c=>c.join(gp)).join(on),o=n.join(on),s=r.join(on),a=[i,o,s],p=a.findLastIndex(c=>c.length>0),l=a.slice(0,p+1);return l.length>0?`"${l.join(hp)}"`:""}function sn(e){let t=e.members.filter(o=>o.kind==="field").map(o=>{let s=typeof o.attribute=="string",a=s&&o.attribute!==yp(o.name);return s&&!a?[o.name]:[o.name,a?String(o.attribute):""]}),n=e.members.filter(o=>o.kind==="method"&&o.name!=="componentOnReady"),r=n.filter(o=>o.async===!0).map(o=>o.name),i=n.filter(o=>o.async!==!0).map(o=>o.name);return{tagName:e.tagName,properties:t,asyncMethods:r,syncMethods:i}}var bp=`import { handleHmrUpdate, handleComponentMetaUpdate } from "@arcgis/lumina/hmrSupport";
35
+ `,Sp=e=>`
36
36
  if(import.meta.hot) {
37
37
  import.meta.hot.on("component-meta-update", handleComponentMetaUpdate);
38
38
  import.meta.hot.accept([
39
39
  ${e.map(t=>` "/${t}",`).join(`
40
40
  `)}
41
41
  ], handleHmrUpdate);
42
- }`;import Jp from"typescript";import D from"typescript";import{ApiExtractor as kp,getMemberName as si,hasIgnoredModifier as Ip,setDefaultFromInitializer as ai}from"@arcgis/api-extractor";import{camelToKebab as Np,kebabToPascal as Lp,uncapitalize as Rp}from"@arcgis/components-utils";import{mappedFind as Sp}from"@arcgis/components-utils";import pt from"typescript";function lt(e,t){let n=wp(t.getJsDocTags()),r=pt.displayPartsToString(t.getDocumentationComment(e));r=r.replaceAll(ti,ni);{let i=n.at(-1),o=i?.text?.indexOf(vp);o!==void 0&&o!==-1&&(r+=i.text.slice(o),i.text=i.text?.slice(0,o))}return{docsTags:n,description:r||void 0}}var vp=`
42
+ }`;import jp from"typescript";import D from"typescript";import{ApiExtractor as Ip,getMemberName as si,hasIgnoredModifier as Np,setDefaultFromInitializer as ai}from"@arcgis/api-extractor";import{camelToKebab as Lp,kebabToPascal as $p,uncapitalize as Rp}from"@arcgis/components-utils";import{mappedFind as vp}from"@arcgis/components-utils";import pt from"typescript";function lt(e,t){let n=Pp(t.getJsDocTags()),r=pt.displayPartsToString(t.getDocumentationComment(e));r=r.replaceAll(ti,ni);{let i=n.at(-1),o=i?.text?.indexOf(Ep);o!==void 0&&o!==-1&&(r+=i.text.slice(o),i.text=i.text?.slice(0,o))}return{docsTags:n,description:r||void 0}}var Ep=`
43
43
 
44
- [Read more...]`,Ep="internal",ti=/\{@link(?:code|plain)? ([^}]+)\}/gu;function ni(e,t){let n=t.indexOf(" ");n===-1&&(n=t.length);let r=t.slice(0,n);return`[${t.slice(n+1)||r}](${r})`}var wp=e=>e.map(t=>({name:t.name,text:t.text?.map(n=>n.text).join("").replaceAll(ti,ni)})),pn=({modifiers:e=[]},t)=>Sp(e,n=>pt.isDecorator(n)&&pt.isCallExpression(n.expression)&&pt.isIdentifier(n.expression.expression)&&n.expression.expression.text===t?n.expression:void 0);function re(e,t,n,r){let i=t.getSymbolAtLocation(e);if(r??=i===void 0?void 0:lt(t,i),r!==void 0){for(let o of r.docsTags){let{name:s,text:a}=o;s==="deprecated"?n.deprecated=a||!0:s==="summary"?n.summary=a:s==="default"?n.default=a:s==="readonly"?n.readonly=!0:s==="notPublic"?(console.warn("The @notPublic JSDoc tag is deprecated. Use @internal or @private instead."),n.docsTags??=[],n.docsTags.push({name:Ep,text:a})):s==="private"?n.privacy="private":s==="csspart"?n.cssParts.push(an(a)):s==="cssstate"?n.cssStates.push(an(a)):s==="slot"?n.slots.push(an(a)):(n.docsTags??=[],n.docsTags.push(o))}n.description=r.description}}function an(e){if(e===void 0)return{name:""};let t=e.indexOf(" - ");if(t===-1)return e.startsWith("- ")?{name:"",description:e.slice(2)}:{name:e};let n,r=e.slice(0,t);if(r.startsWith("[")&&r.endsWith("]")){let o=r.slice(1,-1),s=o.indexOf("=");r=o.slice(0,s),n=o.slice(s+1)}let i=e.slice(t+3);return{name:r,default:n,description:i}}import ln from"typescript";import{toSystemPathSeparators as Pp}from"@arcgis/components-build-utils";var Ap="@arcgis/lumina:addMethodMetadata";function ri(e,t,n,r,i){let o=n.getSignatureFromDeclaration(e);if(o===void 0)return;for(let l of e.parameters){if(!ln.isIdentifier(l.name)){console.warn(`${Ap}: Object binding patterns are not yet supported in the docs. Found ${l.name?.getText(r)} in ${e.name.getText(r)} in ${Pp(r.fileName)}`);return}let c=n.getTypeAtLocation(l),d=ye(n,c,r,i);t.parameters.push({name:l.name.text,default:l.initializer?.getText(r),optional:l.questionToken?!0:void 0,rest:l.dotDotDotToken?!0:void 0,type:d})}t.parameters.length===0&&(t.parameters=void 0);let s=n.getReturnTypeOfSignature(o),a=ye(n,s,r,i),p=n.signatureToString(o,e,Zt,ln.SignatureKind.Call);re(e.name,n,t),t.return={type:a},t.signature=p.replace(" =>",":")}var ii=e=>e.modifiers?.some?.(t=>t.kind===ln.SyntaxKind.AsyncKeyword)??!1;import ie from"typescript";function oi(e,t,n,r){let i=n.typeScriptTypeChecker,s=i.getTypeAtLocation(e).getProperty("emit");if(s?.valueDeclaration===void 0)return;let a=s.valueDeclaration,p=i.getTypeOfSymbolAtLocation(s,a);for(let l of p.getCallSignatures()){let c=l.getReturnType();if(c.symbol?.name!=="CustomEvent")continue;let d=i.getTypeArguments(c)?.at(0);if(d===void 0)continue;let m=ye(i,d,r,n.dir),u={name:t,summary:void 0,description:void 0,type:m,inheritedFrom:void 0,deprecated:void 0,docsTags:void 0,bubbles:void 0,cancelable:void 0,composed:void 0,privacy:void 0};return re(e.name,i,u),Dp(e,u,r),u.privacy===void 0?u:void 0}}var ct="createEvent";function Dp(e,t,n){if(!e.initializer||!ie.isCallExpression(e.initializer))return;let r=e.initializer;if(!ie.isIdentifier(r.expression)||r.expression.text!==ct)return;let i=r.arguments[0];if(i!==void 0){if(!ie.isObjectLiteralExpression(i))throw new Error(`Expected object literal expression as first argument of ${ct}(). Found ${t.name} = createEvent(${i.getText(n)})`);if(i.properties.some(o=>ie.isSpreadAssignment(o)))throw new Error(`Unexpected spread syntax in ${ct}() argument. ${ct}() arguments must be statically parsable at compile time`);for(let o of i.properties)!ie.isPropertyAssignment(o)||!ie.isIdentifier(o.name)||(o.name.text==="cancelable"&&!ge(o.initializer,n)&&(t.cancelable=!1),o.name.text==="bubbles"&&!ge(o.initializer,n)&&(t.bubbles=!1),o.name.text==="composed"&&!ge(o.initializer,n)&&(t.composed=!1))}}function ge(e,t){if(e.kind===ie.SyntaxKind.TrueKeyword)return!0;if(e.kind===ie.SyntaxKind.FalseKeyword)return!1;throw new Error(`Expected boolean literal. Instead found ${e?.getText(t)}`)}var Ee="@arcgis/lumina-compiler";import{path as $p}from"@arcgis/components-build-utils";var He=class extends kp{constructor(n,r){super({isFullApiExtraction:n.isFullApiExtraction,cwd:n.dir.root});this.context=n;this.isPathOnly=r;this.localCssImports=void 0;this.localDeclaredComponents=void 0;this.componentHtmlTypes=new Map;this.apiComponent=void 0;this.pairedSetter=void 0;this._resolvedInheritance=new Map}extract(n){let r=super.extract(n);return r.compiler.name=Ee,r}extractModules(n){let r=super.extractModules(n);for(let i of r)for(let o of i.declarations)"customElement"in o&&(this.context.isFullApiExtraction&&pi(o,this.context,this.componentHtmlTypes),this.inheritMembers(o,r),this.context.isFullApiExtraction&&(o.members.sort(cn),o.attributes?.sort(cn),o.events?.sort(cn)));return r}extractDeclarations(n){return this.localDeclaredComponents=new Map(et(n.text)?.map(([r,i])=>[i,r])??[]),this.localDeclaredComponents.size===0?[]:super.extractDeclarations(n)}extractDeclaration(n){if(this.context.isFullApiExtraction&&D.isImportDeclaration(n)){this.collectCssImports(n);return}if(D.isClassDeclaration(n))return this.extractComponentDeclaration(n)}collectCssImports(n){let r=n.moduleSpecifier.text;if(!(r.startsWith(".")&&ve.test(r)))return;let o=$p.join(this.file.fileName,"..",r);this.localCssImports??=new Set,this.localCssImports.add(o)}extractComponentDeclaration(n){if(n.name===void 0)return;let r=n.name.text,i=this.localDeclaredComponents.get(r);if(i===void 0)return;let o={kind:"class",customElement:!0,name:r,tagName:i,deprecated:void 0,summary:void 0,description:void 0,demos:void 0,docsTags:void 0,superclass:We,encapsulation:void 0,pascalCaseName:Lp(i),privacy:void 0,importPath:"",members:[],attributes:[],events:[],slots:[],cssParts:[],cssProperties:[],cssStates:[]},s=n.heritageClauses?.find(a=>a.token===D.SyntaxKind.ExtendsKeyword)?.types[0]?.expression;if(s===void 0)throw new Error(`Lumina component must extend LitElement class. Found ${r} in ${this.apiModule.path} that does not extend any class.`);if(D.isIdentifier(s)){let a=s.text;a!==We.name&&(o.superclass={name:a})}if(this.apiComponent=o,o.members=this.extractComponentMembers(n),this.context.isFullApiExtraction){o.attributes=this.inferAttributes(o.members),this.componentHtmlTypes.set(r,`HTML${o.pascalCaseName}Element`);let a=er(i,this.context,this.apiModule.path);if(o.importPath=`components/${a}`,this.localCssImports!==void 0){for(let m of this.localCssImports){let u=this.context._cssImports.get(m);u===void 0?this.context._cssImports.set(m,new Set([o.tagName])):u.add(o.tagName);let f=this.context._cssDocs?.get(m);f!==void 0&&(o.cssProperties=f)}this.localCssImports=void 0}re(n.name,this.context.typeScriptTypeChecker,o);let p=Rp(o.name);o.members.push({kind:"method",name:"componentOnReady",return:{type:{text:"Promise<void>",references:[{module:"lib/lib.es5.d.ts",name:"Promise",package:"typescript",start:0,end:7}]}},description:"Create a promise that resolves once component is fully loaded.",signature:"(): Promise<void>",async:!0,inheritedFrom:We,docsTags:[{name:"example",text:`const ${p} = document.createElement("${o.tagName}");
44
+ [Read more...]`,wp="internal",ti=/\{@link(?:code|plain)? ([^}]+)\}/gu;function ni(e,t){let n=t.indexOf(" ");n===-1&&(n=t.length);let r=t.slice(0,n);return`[${t.slice(n+1)||r}](${r})`}var Pp=e=>e.map(t=>({name:t.name,text:t.text?.map(n=>n.text).join("").replaceAll(ti,ni)})),pn=({modifiers:e=[]},t)=>vp(e,n=>pt.isDecorator(n)&&pt.isCallExpression(n.expression)&&pt.isIdentifier(n.expression.expression)&&n.expression.expression.text===t?n.expression:void 0);function re(e,t,n,r){let i=t.getSymbolAtLocation(e);if(r??=i===void 0?void 0:lt(t,i),r!==void 0){for(let o of r.docsTags){let{name:s,text:a}=o;s==="deprecated"?n.deprecated=a||!0:s==="summary"?n.summary=a:s==="default"?n.default=a:s==="readonly"?n.readonly=!0:s==="notPublic"?(console.warn("The @notPublic JSDoc tag is deprecated. Use @internal or @private instead."),n.docsTags??=[],n.docsTags.push({name:wp,text:a})):s==="private"?n.privacy="private":s==="csspart"?n.cssParts.push(an(a)):s==="cssstate"?n.cssStates.push(an(a)):s==="slot"?n.slots.push(an(a)):(n.docsTags??=[],n.docsTags.push(o))}n.description=r.description}}function an(e){if(e===void 0)return{name:""};let t=e.indexOf(" - ");if(t===-1)return e.startsWith("- ")?{name:"",description:e.slice(2)}:{name:e};let n,r=e.slice(0,t);if(r.startsWith("[")&&r.endsWith("]")){let o=r.slice(1,-1),s=o.indexOf("=");r=o.slice(0,s),n=o.slice(s+1)}let i=e.slice(t+3);return{name:r,default:n,description:i}}import ln from"typescript";import{toSystemPathSeparators as Ap}from"@arcgis/components-build-utils";var Dp="@arcgis/lumina:addMethodMetadata";function ri(e,t,n,r,i){let o=n.getSignatureFromDeclaration(e);if(o===void 0)return;for(let l of e.parameters){if(!ln.isIdentifier(l.name)){console.warn(`${Dp}: Object binding patterns are not yet supported in the docs. Found ${l.name?.getText(r)} in ${e.name.getText(r)} in ${Ap(r.fileName)}`);return}let c=n.getTypeAtLocation(l),d=ye(n,c,r,i);t.parameters.push({name:l.name.text,default:l.initializer?.getText(r),optional:l.questionToken?!0:void 0,rest:l.dotDotDotToken?!0:void 0,type:d})}t.parameters.length===0&&(t.parameters=void 0);let s=n.getReturnTypeOfSignature(o),a=ye(n,s,r,i),p=n.signatureToString(o,e,Zt,ln.SignatureKind.Call);re(e.name,n,t),t.return={type:a},t.signature=p.replace(" =>",":")}var ii=e=>e.modifiers?.some?.(t=>t.kind===ln.SyntaxKind.AsyncKeyword)??!1;import ie from"typescript";function oi(e,t,n,r){let i=n.typeScriptTypeChecker,s=i.getTypeAtLocation(e).getProperty("emit");if(s?.valueDeclaration===void 0)return;let a=s.valueDeclaration,p=i.getTypeOfSymbolAtLocation(s,a);for(let l of p.getCallSignatures()){let c=l.getReturnType();if(c.symbol?.name!=="CustomEvent")continue;let d=i.getTypeArguments(c)?.at(0);if(d===void 0)continue;let m=ye(i,d,r,n.dir),u={name:t,summary:void 0,description:void 0,type:m,inheritedFrom:void 0,deprecated:void 0,docsTags:void 0,bubbles:void 0,cancelable:void 0,composed:void 0,privacy:void 0};return re(e.name,i,u),Fp(e,u,r),u.privacy===void 0?u:void 0}}var ct="createEvent";function Fp(e,t,n){if(!e.initializer||!ie.isCallExpression(e.initializer))return;let r=e.initializer;if(!ie.isIdentifier(r.expression)||r.expression.text!==ct)return;let i=r.arguments[0];if(i!==void 0){if(!ie.isObjectLiteralExpression(i))throw new Error(`Expected object literal expression as first argument of ${ct}(). Found ${t.name} = createEvent(${i.getText(n)})`);if(i.properties.some(o=>ie.isSpreadAssignment(o)))throw new Error(`Unexpected spread syntax in ${ct}() argument. ${ct}() arguments must be statically parsable at compile time`);for(let o of i.properties)!ie.isPropertyAssignment(o)||!ie.isIdentifier(o.name)||(o.name.text==="cancelable"&&!ge(o.initializer,n)&&(t.cancelable=!1),o.name.text==="bubbles"&&!ge(o.initializer,n)&&(t.bubbles=!1),o.name.text==="composed"&&!ge(o.initializer,n)&&(t.composed=!1))}}function ge(e,t){if(e.kind===ie.SyntaxKind.TrueKeyword)return!0;if(e.kind===ie.SyntaxKind.FalseKeyword)return!1;throw new Error(`Expected boolean literal. Instead found ${e?.getText(t)}`)}var Ee="@arcgis/lumina-compiler";import{path as Mp}from"@arcgis/components-build-utils";var He=class extends Ip{constructor(n,r){super({isFullApiExtraction:n.isFullApiExtraction,cwd:n.dir.root});this.context=n;this.isPathOnly=r;this.localCssImports=void 0;this.localDeclaredComponents=void 0;this.componentHtmlTypes=new Map;this.apiComponent=void 0;this.pairedSetter=void 0;this._resolvedInheritance=new Map}extract(n){let r=super.extract(n);return r.compiler.name=Ee,r}extractModules(n){let r=super.extractModules(n);for(let i of r)for(let o of i.declarations)"customElement"in o&&(this.context.isFullApiExtraction&&pi(o,this.context,this.componentHtmlTypes),this.inheritMembers(o,r),this.context.isFullApiExtraction&&(o.members.sort(cn),o.attributes?.sort(cn),o.events?.sort(cn)));return r}extractDeclarations(n){return this.localDeclaredComponents=new Map(et(n.text)?.map(([r,i])=>[i,r])??[]),this.localDeclaredComponents.size===0?[]:super.extractDeclarations(n)}extractDeclaration(n){if(this.context.isFullApiExtraction&&D.isImportDeclaration(n)){this.collectCssImports(n);return}if(D.isClassDeclaration(n))return this.extractComponentDeclaration(n)}collectCssImports(n){let r=n.moduleSpecifier.text;if(!(r.startsWith(".")&&ve.test(r)))return;let o=Mp.join(this.file.fileName,"..",r);this.localCssImports??=new Set,this.localCssImports.add(o)}extractComponentDeclaration(n){if(n.name===void 0)return;let r=n.name.text,i=this.localDeclaredComponents.get(r);if(i===void 0)return;let o={kind:"class",customElement:!0,name:r,tagName:i,deprecated:void 0,summary:void 0,description:void 0,demos:void 0,docsTags:void 0,superclass:We,encapsulation:void 0,pascalCaseName:$p(i),privacy:void 0,importPath:"",members:[],attributes:[],events:[],slots:[],cssParts:[],cssProperties:[],cssStates:[]},s=n.heritageClauses?.find(a=>a.token===D.SyntaxKind.ExtendsKeyword)?.types[0]?.expression;if(s===void 0)throw new Error(`Lumina component must extend LitElement class. Found ${r} in ${this.apiModule.path} that does not extend any class.`);if(D.isIdentifier(s)){let a=s.text;a!==We.name&&(o.superclass={name:a})}if(this.apiComponent=o,o.members=this.extractComponentMembers(n),this.context.isFullApiExtraction){o.attributes=this.inferAttributes(o.members),this.componentHtmlTypes.set(r,`HTML${o.pascalCaseName}Element`);let a=er(i,this.context,this.apiModule.path);if(o.importPath=`components/${a}`,this.localCssImports!==void 0){for(let m of this.localCssImports){let u=this.context._cssImports.get(m);u===void 0?this.context._cssImports.set(m,new Set([o.tagName])):u.add(o.tagName);let f=this.context._cssDocs?.get(m);f!==void 0&&(o.cssProperties=f)}this.localCssImports=void 0}re(n.name,this.context.typeScriptTypeChecker,o);let p=Rp(o.name);o.members.push({kind:"method",name:"componentOnReady",return:{type:{text:"Promise<void>",references:[{module:"lib/lib.es5.d.ts",name:"Promise",package:"typescript",start:0,end:7}]}},description:"Create a promise that resolves once component is fully loaded.",signature:"(): Promise<void>",async:!0,inheritedFrom:We,docsTags:[{name:"example",text:`const ${p} = document.createElement("${o.tagName}");
45
45
  document.body.append(${p});
46
46
  ${p}.componentOnReady().then(() => {
47
47
  console.log("${o.tagName} is ready to go!");
48
- });`}]});let l=[],c=this.context.options.documentation?.getComponentDocsUrl?.(i,r),d=this.context.options.documentation?.getComponentDemoUrl?.(i,r);typeof c=="string"&&l.push({description:"Docs",url:c}),typeof d=="string"&&l.push({description:"Demo",url:d}),l.length>0&&(o.demos=l),o.cssProperties.length===0&&(o.cssProperties=void 0),o.cssParts.length===0&&(o.cssParts=void 0),o.slots.length===0&&(o.slots=void 0),o.attributes.length===0&&(o.attributes=void 0),o.events.length===0&&(o.events=void 0),o.cssStates.length===0&&(o.cssStates=void 0)}return o}extractComponentMembers(n){let r=[],i=n.members.length,o,s=n.members[0],a,p=s?.name!==void 0?si(s.name):void 0;for(let l=0;l<i;l++){if(o=s,s=n.members[l+1],a=p,p=s?.name!==void 0?si(s.name):void 0,this.pairedSetter!==void 0){this.pairedSetter=void 0;continue}s!==void 0&&a===p&&(D.isGetAccessor(s)?(this.pairedSetter=o,o=s):D.isSetAccessor(s)&&(this.pairedSetter=s));let c=this.extractComponentMember(o,a);c!==void 0&&r.push(c)}return r}extractComponentMember(n,r){if(Ip(n)||r===void 0){D.isPropertyDeclaration(n)&&D.isIdentifier(n.name)&&n.name.text==="shadowRootOptions"&&n.initializer!==void 0&&D.isIdentifier(n.initializer)&&n.initializer.text==="noShadowRoot"&&(this.apiComponent.encapsulation="none");return}return D.isPropertyDeclaration(n)||D.isGetAccessor(n)||D.isSetAccessor(n)?this.extractComponentField(n,r):D.isMethodDeclaration(n)?this.extractComponentMethod(n,r):void 0}extractComponentField(n,r){let i=this.findPropertyOptions(n);this.pairedSetter!==void 0&&(i??=this.findPropertyOptions(this.pairedSetter));let o=D.isPropertyDeclaration(n);if(i===void 0){if(o&&this.context.isFullApiExtraction){let c=this.extractComponentEvent(n,r);c!==void 0&&this.apiComponent.events.push(c)}return}let s,a=!1,p=!1;for(let c of i)!D.isPropertyAssignment(c)||!D.isIdentifier(c.name)||(c.name.text==="attribute"&&(D.isStringLiteral(c.initializer)?s=c.initializer.text:s=ge(c.initializer,this.file)),c.name.text==="reflect"&&ge(c.initializer,this.file)&&(a=!0),c.name.text==="readOnly"&&ge(c.initializer,this.file)&&(p=!0),(c.name.text==="type"||c.name.text==="converter")&&(s??=!0));let l={kind:"field",name:r,summary:void 0,description:void 0,type:{text:""},default:void 0,deprecated:void 0,readonly:p||(o?n.modifiers?.some(c=>c.kind===D.SyntaxKind.ReadonlyKeyword):D.isGetAccessor(n)&&this.pairedSetter===void 0)?!0:void 0,attribute:s===!1?void 0:typeof s=="string"?s:Np(r),reflects:a||void 0,docsTags:void 0,getterTypeDiffers:void 0,docsOnlyReadonly:void 0,inheritedFrom:void 0,privacy:void 0};return this.context.isFullApiExtraction&&(this.extractComponentFieldDetails(n,l),(s===void 0&&(l.type.values===void 0||!Rr(l.type.values))||l.readonly&&!l.reflects)&&(l.attribute=void 0)),l}extractComponentEvent(n,r){return oi(n,r,this.context,this.file)}extractComponentFieldDetails(n,r){let i=r.readonly===!0,o=this.context.typeScriptTypeChecker,s=o.getSymbolAtLocation(n.name),a=s===void 0?void 0:lt(o,s),p=new Set(a?.docsTags.map(h=>h.name)??[]);re(n.name,this.context.typeScriptTypeChecker,r,a);let l=!i&&r.readonly===!0;if(this.context.viteCommand==="build"){let T=(D.isSetAccessor(n)?n.parameters[0]?.type:n.type)?.getText(this.file)?.match(Mp)??[];for(let E of T){let b=this.context._typeDependencies.get(this.apiComponent.tagName);b===void 0?this.context._typeDependencies.set(this.apiComponent.tagName,new Set([E])):b.add(E)}}let c=this.pairedSetter??n,d=r.docsTags?.some(h=>h.name==="required")??!1;r.type=Mr(this.context,c,d,this.file);let m=r.default;ai(n,r,this.file);let u=m===void 0&&r.default==="true";if("initializer"in n&&n.initializer!==void 0&&(!r.default||!r.description)){let h=n.initializer,y=o.getSymbolAtLocation(h),T=y!==void 0&&(y.flags??0)&D.SymbolFlags.Alias?o.getAliasedSymbol(y):y,E=T?.getDeclarations()??[];if(T!==void 0){let b=lt(o,T);if(b.docsTags.length>0){b.docsTags=b.docsTags.filter(j=>!p.has(j.name));let $=r.description;re(n.name,o,r,b),b.docsTags.forEach(j=>{p.add(j.name)}),r.description=$??r.description}else r.description||=b.description}E.forEach(b=>{if(!("initializer"in b))return;let $=b;l||=$.modifiers?.some(j=>j.kind===D.SyntaxKind.ReadonlyKeyword)??!1,ai($,r,$.getSourceFile())})}if(l&&(r.readonly=!0,i||(r.docsOnlyReadonly=!0)),r.type.values&&r.type.values.length>0&&r.type.values?.every(h=>h.type==="boolean")&&(r.default?u&&this.context.viteCommand==="build"&&r.deprecated===void 0&&this.context.logLintError("booleanMustDefaultFalse",this.file.fileName,`Boolean properties must default to "false". Found default value "true" in ${this.apiComponent.name}.${r.name}`):r.default="false"),this.pairedSetter!==void 0&&!r.readonly){let h=this.pairedSetter.parameters.at(0)?.type?.getText(this.file),y=n.type?.getText(this.file);h!==y&&y!==void 0&&h!==void 0&&(r.getterTypeDiffers=!0)}}findPropertyOptions(n){let r=pn(n,"property");return r===void 0?void 0:r.arguments?.find(D.isObjectLiteralExpression)?.properties??[]}extractComponentMethod(n,r){if(pn(n,"method")===void 0)return;let i={kind:"method",name:r,summary:void 0,description:void 0,deprecated:void 0,parameters:[],return:void 0,inheritedFrom:void 0,docsTags:void 0,signature:"",async:ii(n)?!0:void 0,privacy:void 0};if(this.context.isFullApiExtraction){let o=this.context.typeScriptTypeChecker;ri(n,i,o,this.file,this.context.dir)}return i}inferAttributes(n){let r=[];for(let i of n){if(i.kind!=="field"||i.attribute===void 0||i.privacy!==void 0)continue;let o=i.type.values?.filter(s=>s.type==="number"||s.type==="string"||s.type==="boolean");r.push({name:i.attribute,summary:i.summary,description:i.description,inheritedFrom:i.inheritedFrom,type:o===void 0||o.length===0?i.type:{text:at(o),references:void 0,values:o},default:i.default,fieldName:i.name,deprecated:i.deprecated})}return r}inferExport(n){if("customElement"in n)return this.inferCustomElementExport(n)}inferCustomElementExport(n){return{kind:"custom-element-definition",name:n.tagName,declaration:{name:n.name,module:this.apiModule.path}}}inheritMembers(n,r,i=n.superclass,o,s,a){let p=i.name;if(p===void 0||p===We.name)return;let l=this._resolvedInheritance.get(p)??this.resolveInheritance(p,r)??(this.isPathOnly?this.resolveInheritance(p,this.context.privateApiJson.modules):void 0);if(l!==void 0){o??=new Set(n.members.map(c=>c.name));for(let c of l.members)o.has(c.name)||(n.members.push({...c,inheritedFrom:i}),o.add(c.name));if(l.attributes!==void 0){n.attributes??=[],s??=new Set(n.attributes.map(c=>c.name));for(let c of l.attributes)s.has(c.name)||(n.attributes.push({...c,inheritedFrom:i}),s.add(c.name))}if(l.events!==void 0){n.events??=[],a=new Set(n.events.map(c=>c.name));for(let c of l.events)a.has(c.name)||(n.events.push({...c,inheritedFrom:i}),a.add(c.name))}l.superclass.name!==We.name&&this.inheritMembers(n,r,l.superclass,o,s,a),i.module=l.importPath}}resolveInheritance(n,r){for(let i of r)for(let o of i.declarations)if("customElement"in o&&n===o.name)return this._resolvedInheritance.set(n,o),o;this._resolvedInheritance.set(n,void 0)}},We={name:"LitElement",package:"@arcgis/lumina"},cn=(e,t)=>e.name.localeCompare(t.name),Mp=/(?<=this.)[\w$]+/gu;import{readFile as jp}from"node:fs/promises";async function li(e,t){t||(e.componentFilesPromise=be(e,e.dir.srcComponents));let n=await e.componentFilesPromise,r=await Hp(e,n);e._componentPathMapping={},e._localDefinedComponents=void 0;let i=di(r,e,!1);e.privateApiJson=i;let[o,s]=mi(i);return e.apiJsonComponents=s,e.apiJson=o,i}function ci(e,t,n){let r=e.getSourceFile(t,n),i=di([r],e,!0),o=i.modules[0];{let m=mi(i)[0].modules[0],u=e.apiJson.modules.findIndex(y=>y.path===m.path),f=e.apiJson.modules[u],h=Array.from(e.apiJson.modules);h.splice(u,1,m),e.apiJson={...e.apiJson,modules:h},e.apiJsonComponents=e.apiJsonComponents.filter(y=>!f.declarations.includes(y));for(let y of m.declarations)"customElement"in y&&e.apiJsonComponents.push(y)}let s=e.privateApiJson.modules.findIndex(m=>m.path===o.path),a=e.privateApiJson.modules[s],p=Array.from(e.privateApiJson.modules);p.splice(s,1,o),e.privateApiJson={...e.privateApiJson,modules:p};let l=!1,c=a.declarations.filter(m=>"customElement"in m),d=[];for(let m of o.declarations)if("customElement"in m){let f=c.find(h=>h.tagName===m.tagName)===void 0;l||=f,d.push(m)}return l||=d.length!==c.length,l?void 0:d}function di(e,t,n){let r=t.options.apiJson?.Extractor??He,o=new r(t,n).extract(e);return t.options.apiJson?.afterCreate?.(o,n),o}function mi(e){let t={...e,modules:[]},n=[];for(let r of e.modules){let i={...r,declarations:[]};for(let o of r.declarations)if("customElement"in o&&o.privacy===void 0){let s={...o,members:o.members.filter(a=>a.privacy===void 0)};i.declarations.push(s),n.push(s)}i.declarations.length>0&&t.modules.push(i)}return[t,n]}function pi(e,t,n){e.members.forEach(r=>{if(r.kind==="field")dt(r.type,n,t);else if(dt(r.return?.type,n,t),r.parameters!==void 0)for(let i of r.parameters)dt(i.type,n,t)}),e.events?.forEach(r=>{dt(r.type,n,t)})}function dt(e,t,n){e!==void 0&&(e.references?.forEach(r=>Op(r,t,n)),e.text=e.text.replaceAll(Wp,(r,i)=>t.get(i)??r),e.values?.forEach(Bp,t))}function Op(e,t,n){e.package===void 0&&(e.module?.startsWith("dist/components/")===!0?e.module=ee(e.module,"dist/components/",n):e.module==="index.js"&&e.name&&(e.name=t.get(e.name)??e.name))}function Bp(e){e.type.startsWith("ToElement<")&&(e.type=this.get(e.type.slice(10,-1))??e.type)}var Wp=/ToElement<(\w+)>/gu;async function Hp(e,t){if(e.viteCommand==="serve"&&(Object.hasOwn(e,"typeScriptHost")||(e.typeScriptHost=Jp.createCompilerHost(e.typeScriptConfig,!1))),e.typeScriptProgram!==void 0){let n=e.typeScriptProgram.getSourceFiles(),r=new Set(t);return n.filter(i=>r.has(i.fileName))}else return await Promise.all(t.map(async n=>{let r=await jp(n,"utf8");return e.getSourceFile(n,r)}))}import{readFile as Ec,writeFile as wc}from"node:fs/promises";import{path as kt,toSystemPathSeparators as Pc}from"@arcgis/components-build-utils";import{isNotUndefined as Fo}from"@arcgis/components-utils";import{isNotUndefined as Kp}from"@arcgis/components-utils";import{existsAsync as ui}from"@arcgis/components-build-utils";import{readFile as dn,readdir as _p}from"node:fs/promises";import{asyncRetrievePackageJson as Up,fetchPackageLocation as Vp,retrievePackageJson as zp,path as mt}from"@arcgis/components-build-utils";async function ut(e){return oe??=qp(e),await oe}function yi(){if(mn===void 0)throw new Error("Component dependencies have not yet been initialized. Await componentDependenciesPromise promise first.");return mn}function ft(){if(un===void 0)throw new Error("Component dependencies have not yet been initialized. Await componentDependenciesPromise promise first.");return un}async function qp(e){let t=zp(e),n=t.dependencies??{},r=t.peerDependencies??{},o=(await Promise.all([...Object.keys(n),...Object.keys(r)].filter(s=>!Gp.has(s)).flatMap(async s=>await fn(s,e)))).filter(Kp);return mn??=o,un=Object.fromEntries(o.flatMap(s=>Object.entries(s.components))),o}var Gp=new Set(["@arcgis/arcade-languageservice","@arcgis/components-controllers","@arcgis/components-build-utils","@arcgis/components-utils","@arcgis/core","@arcgis/core-adapter","@arcgis/languages-api-utils","@arcgis/languages-sdk-specs","@arcgis/lumina","@commander-js/extra-typings","@custom-elements-manifest/analyzer","@esri/calcite-ui-icons","@floating-ui/dom","@lit-labs/ssr","@lit-labs/ssr-client","@lit/react","@types/color","@types/sortablejs","color","composed-offset-position","custom-elements-manifest","dayjs","focus-trap","interactjs","lit","lodash-es","monaco-editor","sortablejs","storybook","timezone-groups","type-fest","tslib","typescript","vscode-languageserver-textdocument","vscode-languageserver-types"]),mn,un,oe;async function fn(e,t){let n=await Vp(e,t),r=await Up(n),i="exports"in r,o=tl.bind(void 0,i),s="@stencil/core"in(r.dependencies??{})||"@stencil/core"in(r.devDependencies??{}),a=mt.join(n,"dist/esm/loader.js");if(s?await ui(a):!1){let u=await dn(a,"utf8"),f=Xp(u,"bootstrapLazy("),h=u.indexOf(", options",f),y=u.slice(f,h),T=y.startsWith('JSON.parse("')?y.slice(12,-2).replaceAll('\\"','"'):y;try{let E=JSON.parse(T),b=Zp(E,{packageName:e,getImportPath:o});return{packageName:e,type:"stencil",components:b}}catch(E){console.warn(`@arcgis/lumina: Failed to parse dist/esm/loader.js for ${e}.
49
- Error: ${String(E)}`)}}let l=fi(r.customElements);if(l!=null){let u=mt.join(n,l),f=JSON.parse(await dn(u,"utf-8")),h=Qp(f),y=yn(f,{packageName:e,getImportPath:o});return{type:h?"@arcgis/lumina":"unknown",packageName:e,components:y}}let c=fi(r["web-types"]);if(c!=null){let u=mt.join(n,c),f=JSON.parse(await dn(u,"utf-8")),h=Yp(f,{packageName:e,getImportPath:o,packageRoot:n});return{type:"unknown",packageName:e,components:h}}let d=mt.join(n,"dist/components");if(await ui(d)){let u=await el(d,{packageName:e,getImportPath:o});return{type:"unknown",packageName:e,components:u}}}var fi=e=>Array.isArray(e)?e[0]:e;function Xp(e,t){let n=e.indexOf(t);return n===-1?-1:n+t.length}function yn(e,t){let n={};for(let r of e.modules)if(r.declarations!==void 0)for(let i of r.declarations){if(!("tagName"in i))continue;let o=i,s=o,a=o.tagName;n[a]={packageName:t.packageName,moduleName:s.importPath??t.getImportPath(a),propToAttribute:Object.fromEntries((o.attributes??[]).map(p=>[p.fieldName??p.name,p.name]))}}return n}var Qp=e=>e.compiler?.name===Ee,Yp=(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 Zp=(e,t)=>Object.fromEntries(e.flatMap(([n,r])=>r.map(([i,o,s={}])=>[o,{packageName:t.packageName,moduleName:t.getImportPath(o),propToAttribute:Object.fromEntries(Object.entries(s).filter(([a,[p]])=>p&15).map(([a,[p,l=a]])=>[a,l]))}]))),el=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:{}}]})),tl=(e,t)=>e?`components/${t}`:`dist/components/${t}.js`;import{asyncRetrievePackageJson as hc,fetchPackageLocation as Cc}from"@arcgis/components-build-utils";var nl=e=>e.startsWith("/")?e:`/${e}`,we=(e,t)=>`${e}@fs${nl(t)}`;import{retrievePackageJson as rl}from"@arcgis/components-build-utils";function G(e=rl(),t=!1,n=e.name==="@esri/calcite-components"){let r=e.version.includes("next");if(e.name==="@esri/calcite-components"&&r)return`https://cdn.jsdelivr.net/npm/@esri/calcite-components@${e.version}/dist/calcite/`;let i=t||r?"jsdev.arcgis.com":"js.arcgis.com",o=il(e.name),s=ol(e.version,n);return["https://",i,o.length>0?"/":"",o,"/",s,"/"].join("")}var il=e=>e.split("/").pop()??e;function ol(e,t){if(/\d+\.\d+\.\d+-(?:.*)$/u.test(e))return"next";let r=/^(?<major>\d+)\.(?<minor>\d+)\.(?<patch>\d+)/u,i=e.match(r);if(i?.groups!==void 0){let{major:o,minor:s,patch:a}=i.groups,p=`${o}.${s}`;return t?`${p}.${a}`:p}return"next"}import{isNotUndefined as uc}from"@arcgis/components-utils";import{readdir as fc}from"node:fs/promises";import{path as Mn}from"@arcgis/components-build-utils";import{existsAsync as wo}from"@arcgis/components-build-utils";import{asyncRetrievePackageJson as yc,fetchPackageLocation as gc}from"@arcgis/components-build-utils";import{build as oc}from"esbuild";import{findPath as Yl,path as yo,toSystemPathSeparators as Zl}from"@arcgis/components-build-utils";import{Deferred as ec,identity as tc}from"@arcgis/components-utils";import K from"typescript";import Xl from"typescript";import jl from"typescript";import gn from"typescript";var sl=["keyed","ref","repeat","live"],se="staticHtml",X="staticSvg",Q="html",ae="svg",hn=Symbol("maybe HTML namespace or maybe SVG"),Cn="css",xn="mathml",gi=[Cn,Q,xn,se,X,ae],hi=new Set(gi),al=["safeClassMap","safeStyleMap"],pl="nothing",Ci=[...sl,...gi,...al,pl],Pe=e=>gn.isJsxElement(e)||gn.isJsxSelfClosingElement(e)||gn.isJsxFragment(e);import x from"typescript";import S from"typescript";var xi="Fragment",yt="DynamicHtmlTag",gt="DynamicSvgTag",he=Symbol("dynamic html tag name"),Ke=Symbol("dynamic svg tag name"),Ti=!0,ht=new Set(["class","itemProp","itemScope","itemType","itemId","itemRef","about","datatype","inlist","property","resource","typeof","vocab"]),Ct=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"]),iframe:new Set(["sandbox"]),link:new Set(["sizes"]),meta:new Set(["charset"]),math:new Set(["dir","displaystyle","scriptlevel"]),menu:new Set(["label","type"])},W={common:{reflected:{hidden:"hidden",inert:"inert",draggable:"draggable",contentEditable:"contenteditable",popover:"popover",autofocus:"autofocus",role:"role",ariaAtomic:"aria-atomic",ariaAutoComplete:"aria-autocomplete",ariaBusy:"aria-busy",ariaBrailleLabel:"aria-braillelabel",ariaBrailleRoleDescription:"aria-brailleroledescription",ariaChecked:"aria-checked",ariaColCount:"aria-colcount",ariaColIndex:"aria-colindex",ariaColSpan:"aria-colspan",ariaCurrent:"aria-current",ariaDescription:"aria-description",ariaDisabled:"aria-disabled",ariaExpanded:"aria-expanded",ariaHasPopup:"aria-haspopup",ariaHidden:"aria-hidden",ariaInvalid:"aria-invalid",ariaKeyShortcuts:"aria-keyshortcuts",ariaLabel:"aria-label",ariaLevel:"aria-level",ariaLive:"aria-live",ariaModal:"aria-modal",ariaMultiLine:"aria-multiline",ariaMultiSelectable:"aria-multiselectable",ariaOrientation:"aria-orientation",ariaPlaceholder:"aria-placeholder",ariaPosInSet:"aria-posinset",ariaPressed:"aria-pressed",ariaReadOnly:"aria-readonly",ariaRelevant:"aria-relevant",ariaRequired:"aria-required",ariaRoleDescription:"aria-roledescription",ariaRowCount:"aria-rowcount",ariaRowIndex:"aria-rowindex",ariaRowSpan:"aria-rowspan",ariaSelected:"aria-selected",ariaSetSize:"aria-setsize",ariaSort:"aria-sort",ariaValueMax:"aria-valuemax",ariaValueMin:"aria-valuemin",ariaValueNow:"aria-valuenow",ariaValueText:"aria-valuetext",ariaColIndexText:"aria-colindextext",ariaRowIndexText:"aria-rowindextext",ariaVirtualContent:"aria-virtualcontent"},stringifiedReflected:{title:"title",lang:"lang",translate:"translate",dir:"dir",accessKey:"accesskey",spellcheck:"spellcheck",autocapitalize:"autocapitalize",enterKeyHint:"enterkeyhint",inputMode:"inputmode",virtualKeyboardPolicy:"virtualkeyboardpolicy",tabIndex:"tabindex",writingSuggestions:"writingsuggestions",focusgroup:"focusgroup",id:"id",className:"class",slot:"slot",elementTiming:"elementtiming"},stringifiedNonReflected:{innerText:"",nonce:"",innerHTML:""}},perElement:{a:{stringifiedReflected:{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"},stringifiedNonReflected:{text:""}},area:{reflected:{noHref:"nohref"},stringifiedReflected:{alt:"alt",coords:"coords",download:"download",shape:"shape",target:"target",ping:"ping",rel:"rel",referrerPolicy:"referrerpolicy",href:"href",interestAction:"interestaction"}},audio:{reflected:{crossOrigin:"crossorigin",autoplay:"autoplay",loop:"loop",controls:"controls",defaultMuted:"muted",disableRemotePlayback:"disableremoteplayback"},stringifiedReflected:{src:"src",preload:"preload"}},base:{stringifiedReflected:{href:"href",target:"target"}},blockquote:{stringifiedReflected:{cite:"cite"}},body:{stringifiedReflected:{text:"text",link:"link",vLink:"vlink",aLink:"alink",bgColor:"bgcolor",background:"background"}},br:{stringifiedReflected:{clear:"clear"}},button:{reflected:{disabled:"disabled",formNoValidate:"formnovalidate"},stringifiedReflected:{formAction:"formaction",formEnctype:"formenctype",formMethod:"formmethod",formTarget:"formtarget",name:"name",type:"type",value:"value",popoverTargetAction:"popovertargetaction",command:"command",interestAction:"interestaction"}},canvas:{stringifiedReflected:{width:"width",height:"height"}},caption:{stringifiedReflected:{align:"align"}},col:{stringifiedReflected:{span:"span",align:"align",ch:"char",chOff:"charoff",vAlign:"valign",width:"width"}},colgroup:{stringifiedReflected:{span:"span",align:"align",ch:"char",chOff:"charoff",vAlign:"valign",width:"width"}},data:{stringifiedReflected:{value:"value"}},del:{stringifiedReflected:{cite:"cite",dateTime:"datetime"}},details:{reflected:{open:"open"},stringifiedReflected:{name:"name"}},dialog:{reflected:{open:"open"},stringifiedNonReflected:{returnValue:""}},div:{stringifiedReflected:{align:"align"}},dl:{reflected:{compact:"compact"}},embed:{stringifiedReflected:{src:"src",type:"type",width:"width",height:"height",align:"align",name:"name"}},fieldset:{reflected:{disabled:"disabled"},stringifiedReflected:{name:"name"}},form:{reflected:{noValidate:"novalidate"},stringifiedReflected:{acceptCharset:"accept-charset",action:"action",autocomplete:"autocomplete",enctype:"enctype",encoding:"enctype",method:"method",name:"name",target:"target",rel:"rel"}},h1:{stringifiedReflected:{align:"align"}},h2:{stringifiedReflected:{align:"align"}},h3:{stringifiedReflected:{align:"align"}},h4:{stringifiedReflected:{align:"align"}},h5:{stringifiedReflected:{align:"align"}},h6:{stringifiedReflected:{align:"align"}},hr:{reflected:{noShade:"noshade"},stringifiedReflected:{align:"align",color:"color",size:"size",width:"width"}},html:{stringifiedReflected:{version:"version"}},iframe:{reflected:{allowFullscreen:"allowfullscreen",credentialless:"credentialless",allowPaymentRequest:"allowpaymentrequest",browsingTopics:"browsingtopics",adAuctionHeaders:"adauctionheaders",sharedStorageWritable:"sharedstoragewritable"},stringifiedReflected:{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:{reflected:{crossOrigin:"crossorigin",isMap:"ismap",width:"width",height:"height",hspace:"hspace",vspace:"vspace",sharedStorageWritable:"sharedstoragewritable"},stringifiedReflected:{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:{reflected:{defaultChecked:"checked",disabled:"disabled",formNoValidate:"formnovalidate",height:"height",multiple:"multiple",readOnly:"readonly",required:"required",size:"size",width:"width",webkitdirectory:"webkitdirectory",incremental:"incremental"},stringifiedReflected:{accept:"accept",alt:"alt",autocomplete:"autocomplete",dirName:"dirname",formAction:"formaction",formEnctype:"formenctype",formMethod:"formmethod",formTarget:"formtarget",max:"max",maxLength:"maxlength",min:"min",minLength:"minlength",name:"name",pattern:"pattern",placeholder:"placeholder",src:"src",step:"step",type:"type",defaultValue:"value",align:"align",useMap:"usemap",popoverTargetAction:"popovertargetaction",command:"command",interestAction:"interestaction"},stringifiedNonReflected:{value:""}},ins:{stringifiedReflected:{cite:"cite",dateTime:"datetime"}},label:{stringifiedReflected:{htmlFor:"for"}},legend:{stringifiedReflected:{align:"align"}},li:{reflected:{value:"value"},stringifiedReflected:{type:"type"}},link:{reflected:{disabled:"disabled",crossOrigin:"crossorigin"},stringifiedReflected:{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:{stringifiedReflected:{name:"name"}},menu:{reflected:{compact:"compact"}},meta:{stringifiedReflected:{name:"name",httpEquiv:"http-equiv",content:"content",media:"media",scheme:"scheme"}},meter:{reflected:{value:"value",min:"min",max:"max",low:"low",high:"high",optimum:"optimum"}},object:{reflected:{declare:"declare",hspace:"hspace",vspace:"vspace"},stringifiedReflected:{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:{reflected:{reversed:"reversed",compact:"compact"},stringifiedReflected:{start:"start",type:"type"}},optgroup:{reflected:{disabled:"disabled"},stringifiedReflected:{label:"label"}},option:{reflected:{disabled:"disabled",defaultSelected:"selected"},stringifiedReflected:{label:"label",value:"value"},stringifiedNonReflected:{text:""}},output:{stringifiedReflected:{name:"name"},stringifiedNonReflected:{defaultValue:"",value:""}},p:{stringifiedReflected:{align:"align"}},pre:{reflected:{width:"width"}},progress:{reflected:{value:"value",max:"max"}},q:{stringifiedReflected:{cite:"cite"}},script:{reflected:{noModule:"nomodule",async:"async",defer:"defer",crossOrigin:"crossorigin",referrerPolicy:"referrerpolicy"},stringifiedReflected:{src:"src",type:"type",charset:"charset",fetchPriority:"fetchpriority",event:"event",htmlFor:"for",integrity:"integrity",attributionSrc:"attributionsrc"},stringifiedNonReflected:{text:""}},select:{reflected:{disabled:"disabled",multiple:"multiple",required:"required",size:"size"},stringifiedReflected:{autocomplete:"autocomplete",name:"name"}},slot:{stringifiedReflected:{name:"name"}},source:{reflected:{width:"width",height:"height"},stringifiedReflected:{src:"src",type:"type",srcset:"srcset",sizes:"sizes",media:"media"}},style:{stringifiedReflected:{media:"media",type:"type"}},table:{stringifiedReflected:{align:"align",border:"border",frame:"frame",rules:"rules",summary:"summary",width:"width",bgColor:"bgcolor",cellPadding:"cellpadding",cellSpacing:"cellspacing"}},tbody:{stringifiedReflected:{align:"align",ch:"char",chOff:"charoff",vAlign:"valign"}},td:{reflected:{noWrap:"nowrap"},stringifiedReflected:{colSpan:"colspan",rowSpan:"rowspan",headers:"headers",align:"align",axis:"axis",height:"height",width:"width",ch:"char",chOff:"charoff",vAlign:"valign",bgColor:"bgcolor",abbr:"abbr",scope:"scope"}},template:{reflected:{shadowRootDelegatesFocus:"shadowrootdelegatesfocus",shadowRootClonable:"shadowrootclonable",shadowRootSerializable:"shadowrootserializable",parseparts:"parseparts"},stringifiedReflected:{shadowRootMode:"shadowrootmode"}},textarea:{reflected:{cols:"cols",disabled:"disabled",readOnly:"readonly",required:"required",rows:"rows"},stringifiedReflected:{autocomplete:"autocomplete",dirName:"dirname",maxLength:"maxlength",minLength:"minlength",name:"name",placeholder:"placeholder",wrap:"wrap"},stringifiedNonReflected:{defaultValue:"",value:""}},tfoot:{stringifiedReflected:{align:"align",ch:"char",chOff:"charoff",vAlign:"valign"}},th:{reflected:{noWrap:"nowrap"},stringifiedReflected:{colSpan:"colspan",rowSpan:"rowspan",headers:"headers",align:"align",axis:"axis",height:"height",width:"width",ch:"char",chOff:"charoff",vAlign:"valign",bgColor:"bgcolor",abbr:"abbr",scope:"scope"}},thead:{stringifiedReflected:{align:"align",ch:"char",chOff:"charoff",vAlign:"valign"}},time:{stringifiedReflected:{dateTime:"datetime"}},title:{stringifiedNonReflected:{text:""}},tr:{stringifiedReflected:{align:"align",ch:"char",chOff:"charoff",vAlign:"valign",bgColor:"bgcolor"}},track:{reflected:{default:"default"},stringifiedReflected:{kind:"kind",src:"src",srclang:"srclang",label:"label"}},ul:{reflected:{compact:"compact"},stringifiedReflected:{type:"type"}},video:{reflected:{width:"width",height:"height",playsInline:"playsinline",disablePictureInPicture:"disablepictureinpicture",crossOrigin:"crossorigin",autoplay:"autoplay",loop:"loop",controls:"controls",defaultMuted:"muted",disableRemotePlayback:"disableremoteplayback"},stringifiedReflected:{poster:"poster",src:"src",preload:"preload"}}}};bi(W.common);Object.values(W.perElement).forEach(bi);function bi(e){e?.reflected!==void 0&&(e.reflected=Object.assign(Object.create(null),e.reflected)),e?.stringifiedReflected!==void 0&&(e.stringifiedReflected=Object.assign(Object.create(null),e.stringifiedReflected)),e?.stringifiedNonReflected!==void 0&&(e.stringifiedNonReflected=Object.assign(Object.create(null),e.stringifiedNonReflected))}var Tn=new Set(["itemScope"]),xt=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"]),Si=new Set(["area","base","br","col","command","embed","hr","img","input","keygen","link","meta","param","source","track","wbr"]),Ae=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"]),vi=new Set(["title","svg","a","script","style"]),De=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"]),Tt=new Set(["annotation-xml","color-profile","font-face","font-face-src","font-face-uri","font-face-format","font-face-name","missing-glyph"]);import{mappedFind as Ei,uncapitalize as wi}from"@arcgis/components-utils";import g from"typescript";function bn(e,t,n){if(Fe(e))return e;{n===void 0&&t.neededImports.add("nothing");let r=t.importRenames.nothing;return g.factory.createParenthesizedExpression(g.factory.createBinaryExpression(g.factory.createParenthesizedExpression(e),g.factory.createToken(g.SyntaxKind.QuestionQuestionToken),typeof n=="string"?g.factory.createStringLiteral(n):g.factory.createIdentifier(r)))}}function Fe(e){return typeof e=="string"||ll.has(e.kind)||g.isConditionalExpression(e)&&Fe(e.whenTrue)&&Fe(e.whenFalse)||g.isBinaryExpression(e)&&(cl.has(e.operatorToken.kind)||Fe(e.left)&&Fe(e.right))||(g.isParenthesizedExpression(e)||g.isSatisfiesExpression(e)||g.isAsExpression(e))&&Fe(e.expression)||g.isTaggedTemplateExpression(e)&&g.isIdentifier(e.tag)&&hi.has(e.tag.text)}var ll=new Set([g.SyntaxKind.NumericLiteral,g.SyntaxKind.BigIntLiteral,g.SyntaxKind.StringLiteral,g.SyntaxKind.RegularExpressionLiteral,g.SyntaxKind.NoSubstitutionTemplateLiteral,g.SyntaxKind.FalseKeyword,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]),cl=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 Di={property(e,t,n,r){let i=dl(r,n,e),o=i?.type==="stringifiedReflected",s=i?.type==="reflected"||o;if(s){let m=vn(t);if(m===!0)return[i.name];if(m===!1)return[]}let a=t===void 0?["=",S.factory.createToken(S.SyntaxKind.TrueKeyword)]:bt(e,t,s),p=a[0]!=="=";if(s&&p)return[i.name,...a];let[l,c]=a,d=i?.type==="stringifiedNonReflected";if(o||d){let m=bn(c,e,d?"":void 0),f=n==="value"&&(r==="input"||r==="textarea"||r===he)?ul(m,e):m;if(f!==c)return[d?`.${n}`:i.name,l,f]}return[`.${n}`,...a]},attribute(e,t,n){let r=t===void 0||vn(t);if(r===!0)return[n];if(r===!1)return[];let i=bt(e,t,!0),s=i[0]!=="="?i:[i[0],bn(i[1],e)];return[n,...s]},booleanAttribute(e,t,n){let r=t===void 0||vn(t);return r===!0?[n]:r===!1?[]:[`?${n}`,...bt(e,t,!1)]},event(e,t,n){if(t===void 0||!S.isJsxExpression(t)||t.expression===void 0)throw new Error(`Event prop value must be an expression. Found ${String(t?.getText(e.sourceFile))}`);let r=n.slice(2),i=wi(r);return[`@${xt.has(i)?r.toLowerCase():Ti?wi(r):r}=`,...St(e,t,void 0)]},directives(e,t){if(t===void 0||!S.isJsxExpression(t))throw new Error(`Directives prop must be an expression. Found ${String(t?.getText(e.sourceFile))}`);if(t.expression===void 0||!S.isArrayLiteralExpression(t.expression))throw new Error(`Directives prop must be an array rather than a variable or ternary expression. Still, the following are allowed: directives={[directiveA, condition ? a : b, c()]}. Found ${String(t.expression?.getText(e.sourceFile))}`);return t.expression.elements.flatMap(i=>{if(S.isSpreadElement(i))throw new Error(`Directives prop cannot contain a spread argument - it needs to be statically analyzable. Still, the following are allowed: directives={[directiveA, condition ? a : b, c()]}. Found ${String(t.expression?.getText(e.sourceFile))}`);return V(e,void 0,i)})},ref(e,t){e.neededImports.add("ref");let n=e.importRenames.ref;if(t===void 0||!S.isJsxExpression(t)||t.expression===void 0)throw new Error(`ref prop value must be an expression. Found ${String(t?.getText(e.sourceFile))}`);return[S.factory.createCallExpression(S.factory.createIdentifier(n),void 0,[V(e,void 0,t.expression)])]},class:Ai,style:Ai,key:(e,t)=>[Ue(t,e.sourceFile)]};function dl(e,t,n){if(typeof e=="string"){let o=(n.externalComponents[e]??n.localComponents[e])?.propToAttribute?.[t];if(o!==void 0)return{name:o,type:"reflected"}}let r=Sn(W.common,t);if(r!==void 0)return r;if(typeof e=="string"){let i=Sn(W.perElement[e],t);if(i!==void 0)return i}else{let i=Object.values(W.perElement).map(s=>Sn(s,t)),o=Ei(i,s=>s?.type==="stringifiedNonReflected"?s:void 0)??Ei(i,s=>s?.type==="stringifiedReflected"?s:void 0);if(o!==void 0)return o}}function Sn(e,t){let n=e?.reflected?.[t];if(n!==void 0)return{name:n,type:"reflected"};let r=e?.stringifiedReflected?.[t];if(r!==void 0)return{name:r,type:"stringifiedReflected"};let i=e?.stringifiedNonReflected?.[t];if(i!==void 0)return{name:i,type:"stringifiedNonReflected"}}function Ue(e,t){if(e!==void 0&&S.isJsxExpression(e)&&e.expression!==void 0)return e.expression;if(e!==void 0&&S.isStringLiteral(e))return e;throw new Error(`key prop value must be an expression. Found ${String(e?.getText(t))}`)}function vn(e){if(e===void 0)return!0;if(S.isJsxExpression(e)){if(e.expression?.kind===S.SyntaxKind.TrueKeyword||e.expression===void 0)return!0;if(e.expression?.kind===S.SyntaxKind.FalseKeyword)return!1}}function bt(e,t,n=!1){if(Pe(t))throw new Error(`Invalid JSX syntax detected or there is a bug in Lumina. Found ${t.getText(e.sourceFile)}. Expected JSX attribute value to be wrapped in { }`);if(S.isStringLiteral(t))return Pi(t,n);if(S.isJsxExpression(t)&&t.expression){if(S.isStringLiteral(t.expression))return Pi(t.expression,n);if(n){if(S.isNumericLiteral(t.expression))return[`=${t.expression.text}`];if(S.isPrefixUnaryExpression(t.expression)&&S.isNumericLiteral(t.expression.operand))return[`=${t.expression.getText(e.sourceFile)}`]}}return["=",...St(e,t,void 0)]}function Pi(e,t){if(!t)return["=",e];let n=e.text;if(n.length===0)return[];let r=it(n);if(Ar(r)){let i=r.replaceAll('"',"&#34;");if(i.length>r.length){let o=r.replaceAll("'","&#39;");if(o.length<i.length)return[`='${o}'`]}return[`="${i}"`]}else return[`=${r}`]}function Ai(e,t,n){if(t!==void 0&&S.isStringLiteral(t))return[`${n}="${t.text}"`];if(t===void 0||!S.isJsxExpression(t)||t.expression===void 0)throw new Error(`${n} prop value must be an expression. Found ${String(t?.getText(e.sourceFile))}`);let r=t.expression;if(ml(r)){let o=n==="class"?"safeClassMap":"safeStyleMap";e.neededImports.add(o);let s=e.importRenames[o],a=S.factory.createCallExpression(S.factory.createIdentifier(s),void 0,[V(e,void 0,r)]);return[`${n}=`,a]}else return[n,...bt(e,t,!0)]}var ml=e=>S.isObjectLiteralExpression(e)||S.isPropertyAccessExpression(e)||S.isIdentifier(e)||S.isCallExpression(e)||S.isBinaryExpression(e)||S.isConditionalExpression(e);function ul(e,t){t.neededImports.add("live");let n=t.importRenames.live;return S.factory.createCallExpression(S.factory.createIdentifier(n),void 0,[typeof e=="string"?S.factory.createStringLiteral(e):e])}import Ve from"typescript";function ki(e){if(e&&Ve.isJsxExpression(e)&&e.expression&&Ve.isCallExpression(e.expression)&&Ve.isIdentifier(e.expression.expression)&&e.expression.expression.text in Fi&&e.expression.arguments.length<=1)return{propType:Fi[e.expression.expression.text],initializer:Ve.factory.createJsxExpression(void 0,e.expression.arguments[0])}}var Fi={bindProperty:"property",bindAttribute:"attribute",bindBooleanAttribute:"booleanAttribute",bindEvent:"event"};function Ii(e,t,n){return yl.has(e)?e:e.startsWith("on")&&t!==void 0&&Ve.isJsxExpression(t)&&t.expression!==void 0?"event":(ht.has(e)||e.includes("-"))&&(e!=="itemId"||n!=="arcgis-map"&&n!=="arcgis-scene")?"attribute":!(typeof n=="string"&&n.includes("-")&&!Tt.has(n))&&(Ct.has(e)||(n===Ke?!1:n===he?Object.values(_e).some(s=>s.has(e)):_e[n]?.has(e)===!0))?Tn.has(e)?"booleanAttribute":"attribute":n==="svg"||n==="math"||n===Ke||n!==he&&(Ae.has(n)||De.has(n))?e in W.common.reflected||e in W.common.stringifiedReflected||e in W.common.stringifiedNonReflected?"property":Tn.has(e)?"booleanAttribute":"attribute":"property"}var fl=["class","style","ref","directives","key"],yl=new Set(fl);import H from"typescript";var Ni=e=>typeof e!="string"||e.trim().length>0;function ze({key:e,parts:t,litTag:n},r){let i=gl(t);if(i.length%2===0)throw new Error("Normalized template parts array length must be odd");let[o,...s]=i;if(typeof o!="string")throw new Error("First normalized template part must be a string");if(n===void 0){if(s.length===0)return En(r,e,H.factory.createStringLiteral(o));if(o===""&&s.length===2&&s[1]==="")return En(r,e,typeof s[0]=="string"?H.factory.createStringLiteral(o):s[0])}let a=typeof n=="string"?n:Q;r.neededImports.add(a);let p=r.importRenames[a],l=ue(o),c=H.factory.createTaggedTemplateExpression(H.factory.createIdentifier(p),void 0,s.length===0?H.factory.createNoSubstitutionTemplateLiteral(l,l):H.factory.createTemplateExpression(H.factory.createTemplateHead(l,l),hl(s)));return En(r,e,c)}var gl=e=>e.reduce((t,n,r)=>{let i=t.at(-1),o=typeof i=="string",s=typeof n=="string";if(o&&s)return[...t.slice(0,-1),`${i}${n}`];let p=r===e.length-1;return!s&&p?[...t,n,""]:!s&&!p?[...t,n,""]:[...t,n]},[""]);function hl(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,i)=>{let o=i*2,s=e[o];if(typeof s=="string")throw new Error("Expected to receive a normalized array of parts");let a=o+1,p=e[a];if(typeof p!="string")throw new Error("Expected to receive a normalized array of parts");let l=i===n-1,c=ue(p);return H.factory.createTemplateSpan(s,l?H.factory.createTemplateTail(c,c):H.factory.createTemplateMiddle(c,c))})}function En(e,t,n){if(t===void 0)return n;e.neededImports.add("keyed");let r=e.importRenames.keyed;return H.factory.createCallExpression(H.factory.createIdentifier(r),void 0,[t,n])}import Pn from"typescript";var An=(e,t)=>e.getFullText(t.sourceFile).slice(0,e.getLeadingTriviaWidth(t.sourceFile));function Dn(e,t){let n=vt(e);return n.length===0?t:Pn.setSyntheticLeadingComments(t,n.map(r=>({...r,pos:-1,end:-1,text:Ri(e.slice(r.pos,r.end))})))}var vt=e=>e.trim().length===0?[]:Pn.getLeadingCommentRanges(e,0)??[];function Li(e){let t=vt(e);if(t.length===0)return[e||" "];let n=t.reduceRight(([i,...o],s)=>{let a=ue(Ri(wn(i).slice(s.pos,s.end)));return[wn(i).slice(0,s.pos),Pn.factory.createNoSubstitutionTemplateLiteral(a,a),wn(i).slice(s.end),...o]},[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 Ri=e=>e.startsWith("//")?e.slice(2):e.slice(2,-2);function wn(e){if(typeof e=="string")return e;throw new Error(`Expected string, got ${typeof e}: ${String(e)}`)}import{isNotUndefined as Al}from"@arcgis/components-utils";import C from"typescript";import{mappedFind as Cl}from"@arcgis/components-utils";import{toSystemPathSeparators as xl}from"@arcgis/components-build-utils";function Mi(e,t){if(!(C.isPropertyAccessExpression(t.expression)&&t.expression.name.text==="map"))return t;let r=t.arguments[0];if(!(t.arguments.length===1&&C.isArrowFunction(r)))return t;let o=r.parameters.at(0);if(!(typeof o=="object"&&r.parameters.length<=2))return t;let a=ke(r.body),p=!0,l;if($i(a))l=a;else{if(!C.isBlock(a))return t;let y=a.statements.at(-1);if(!(y&&C.isReturnStatement(y)&&y.expression))return t;let E=ke(y.expression);if(!$i(E))return t;let b=a.statements.slice(0,-1);if(b.some(Ji))return t;p=b.length===0,l=E}let c=C.isJsxElement(l)?l.openingElement:l,d=kn(c);if(d===-1)return t;let m=c.attributes.properties[d];if(m===void 0||!C.isJsxAttribute(m))return t;let u=Ue(m.initializer,e.sourceFile),f=Tl(o,r,u,p,e);if(f===void 0)return t;e.liftedKeys.add(m.name),e.neededImports.add("repeat");let h=e.importRenames.repeat;return C.factory.updateCallExpression(t,C.factory.createIdentifier(h),t.typeArguments,[t.expression.expression,C.factory.createArrowFunction(void 0,void 0,[f],void 0,void 0,u),C.factory.updateArrowFunction(r,r.modifiers,r.typeParameters,r.parameters,r.type,r.equalsGreaterThanToken,a)])}var $i=e=>C.isJsxElement(e)||C.isJsxSelfClosingElement(e);function Ji(e){if(C.isReturnStatement(e))return!0;let t=!1;return C.visitEachChild(e,n=>(t||=Ji(n),n),void 0),t}function Tl(e,t,n,r,i){let o=Y(n);if(o===void 0)return;let s=ji(e.name,o),a=t.parameters.at(1);if(a!==void 0&&C.isIdentifier(a.name)&&o.every(Et,a.name)){console.warn(`It looks like you are trying to use .map() index as a key={} prop value in ${xl(i.sourceFile.fileName)}. Doing so is potentially pointless and may cause performance degradation. In Lit it is safe to omit the key={} prop. If you really mean to use index as the key, then use the keyed() Lit directive directly, rather than the JSX key={} prop.`);return}if(!r){let p=Sl(o,s,t);if(p===void 0)return;s=p}return C.factory.updateParameterDeclaration(e,e.modifiers,e.dotDotDotToken,s,e.questionToken,e.type,e.initializer)}function Y(e){if(C.isIdentifier(e))return[e.text];if(C.isPropertyAccessExpression(e))return Y(e.expression);if(C.isElementAccessExpression(e))return Y(e.argumentExpression);if(C.isConditionalExpression(e)){let t=Y(e.condition),n=Y(e.whenTrue),r=Y(e.whenFalse);return t===void 0||n===void 0||r===void 0?void 0:[...t,...n,...r]}else if(C.isBinaryExpression(e)){let t=Y(e.left),n=Y(e.right);return t===void 0||n===void 0?void 0:[...t,...n]}else{if(bl.has(e.kind))return[];{let t=ke(e);return t!==e?Y(t):void 0}}}var bl=new Set([C.SyntaxKind.NumericLiteral,C.SyntaxKind.BigIntLiteral,C.SyntaxKind.StringLiteral,C.SyntaxKind.RegularExpressionLiteral,C.SyntaxKind.NoSubstitutionTemplateLiteral,C.SyntaxKind.FalseKeyword,C.SyntaxKind.NullKeyword,C.SyntaxKind.TrueKeyword]),ke=e=>C.isAsExpression(e)||C.isNonNullExpression(e)||C.isSatisfiesExpression(e)||C.isParenthesizedExpression(e)?ke(e.expression):e,ji=(e,t)=>C.isObjectBindingPattern(e)?wl(e,t):e;function Sl(e,t,n){if(e.every(Et,t))return t;if(C.isIdentifier(t)){let r=C.isBlock(n.body)?Cl(n.body.statements,o=>vl(o,t)):void 0;if(r===void 0)return;let i=ji(r,e);if(e.every(Et,i))return i}}function vl(e,t){if(!C.isVariableStatement(e)||!(e.declarationList.flags&C.NodeFlags.Const))return;let n=e.declarationList.declarations[0];return n?.initializer&&C.isIdentifier(n.initializer)&&n.initializer.text===t.text?n.name:void 0}function Et(e){let t=this;return C.isIdentifier(t)?t.text===e:t.elements.some(El,e)}function El(e){let t=this;return C.isOmittedExpression(e)?!1:Et.call(e.name,t)}function wl(e,t){let n=!1,r=e.elements.filter(i=>C.isIdentifier(i.name)?t.includes(i.name.text):(n=!0,!0));return n||r.length===0?e:C.factory.updateObjectBindingPattern(e,r)}var Fn=(e,t)=>t.liftedKeys.has(e);import{toSystemPathSeparators as wt}from"@arcgis/components-build-utils";var Bi=e=>e.apiJsonComponents.map(({name:t,importPath:n})=>`import type { ${t} } from "./${n}";`).join(`
50
- `),Pl=/^[a-zA-Z_$][a-zA-Z\d_$]*$/u,Ce=e=>!Pl.test(e),z=e=>Ce(e)?`"${e}"`:e;function pe(e,t){let n=[],r=[],i=!1;t?.forEach(c=>{if(c.kind!=="field"||c.readonly)return;let d=c;if(d.getterTypeDiffers){i=!0;return}d.docsTags?.some(u=>u.name==="required")?n.push(c.name):r.push(c.name)});let o=Oi(n),s=Oi(r),a=[o?`Required<Pick<${e}, ${o}>>`:"",s?`Partial<Pick<${e}, ${s}>>`:"",i?`${e}SetterTypes`:""],p=i?`
51
- type ${e}SetterTypes = ${e}["${Vt}"]`:"",l=a.filter(Boolean).join(", ");return[l.length===0?"":`${l}, `,p]}var Oi=e=>e.map(t=>`'${t}'`).join(" | ");function V(e,t,n){if(Pe(n))return Wi(e,n);let r=x.isCallExpression(n)?Mi(e,n):n,i=x.visitEachChild(r,V.bind(null,e,t!==void 0&&x.isBinaryExpression(t)?void 0:n),e.transformationContext);return t!==void 0&&x.isBinaryExpression(n)&&(x.isJsxExpression(t)||Pe(ke(n.right)))?kl(i):i}function Wi(e,t){let n=Hi(e,t);return ze(n,e)}function Hi(e,t){let n="children"in t?t.children:[];if(x.isJsxFragment(t))return{key:void 0,...Pt(n,e)};let i=x.isJsxElement(t)?t.openingElement:t,o=i.tagName;if(x.isJsxNamespacedName(o)){let E=wt(e.sourceFile.fileName);throw new Error(`JSX namespaced elements are not supported. Found ${o.getText(e.sourceFile)} in "${E}"`)}if(!x.isIdentifier(o)||!o.text.startsWith(o.text[0].toLowerCase())&&o.text!==yt&&o.text!==gt){let b=x.isIdentifier(o)&&o.text===xi?Pt(n,e):{litTag:void 0,parts:[Fl(e,t,o,n)]};return{key:Dl(i,e),...b}}let a=o.text===yt?he:o.text===gt?Ke:o.text,p=o.text===yt?se:o.text===gt?X:vi.has(a)?hn:Ae.has(a)?ae:Q,l;typeof a=="string"&&a.includes("-")&&!Tt.has(a)&&(e.customElementsToImport.add(a),e.compiler.viteCommand==="build"&&(l=Il(e,a)));let c,d=[],m=i.attributes.properties.flatMap(E=>{if(x.isJsxSpreadAttribute(E))throw new Error(`JSX spread attribute syntax is not supported. See alternatives: https://qawebgis.esri.com/components/lumina/jsx#spread-attributes
52
- Found ${E.getText(e.sourceFile)}`);let{name:b,initializer:$}=E;if(x.isJsxNamespacedName(b)){let Je=wt(e.sourceFile.fileName);throw new Error(`JSX namespaced attributes are not supported. Found ${b.getText(e.sourceFile)} in "${Je}"`)}let j=b.text,Bt=ki($),me=Bt?.propType??Ii(j,$,a);l?.delete(j);let Z=Di[me](e,Bt?.initializer??$,j,a);if(Z.length===0)return[];let Me=e.compiler.shouldMinifyJsx?" ":Li(An(b,e));return me==="key"?(c=typeof Z[0]=="object"&&!Fn(b,e)?Z[0]:void 0,Array.isArray(Me)&&Me.some(Ni)?Me:[]):me==="directives"||me==="ref"?(d.push(...Me,...Z.flatMap((Je,Xn)=>typeof Je=="string"||Xn===0||typeof Z[Xn-1]=="string"?Je:[" ",Je])),[]):[...Me,...Z]});if(l!==void 0&&l.size>0&&e.compiler.logLintError("mustIncludeAllRequiredProperties",e.sourceFile.fileName,`Missing required properties for <${a}> in ${e.sourceFile.fileName.slice(e.compiler.dir.root.length)}: ${Array.from(l).join(", ")}`),d.length>0&&m.push(...d),typeof a=="string"&&De.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 u=typeof a=="string"&&Si.has(a),f=Pt(n,e);if(u&&f.parts.length>0){let E=wt(e.sourceFile.fileName);throw new Error(`Void HTML elements like <${a}> cannot have children. Found ${t.getText(e.sourceFile)} in "${E}"`)}let h=(p===ae||p===X)&&f.parts.length===0,y=["<",typeof a=="string"?a:o,...m,h?`${m.length===0?"":" "}/>`:">"],T=u||h?y:[...y,...f.litTag!==void 0&&f.litTag!==p?[ze({key:void 0,...f},e)]:f.parts,"</",typeof a=="string"?a:o,">"];return{key:c,parts:T,litTag:p}}function Dl(e,t){let n=e.attributes.properties[kn(e)];return n&&x.isJsxAttribute(n)&&!Fn(n.name,t)?Ue(n.initializer,t.sourceFile):void 0}var kn=e=>e.attributes.properties.findIndex(({name:t})=>t&&x.isIdentifier(t)&&t.text==="key");function Fl(e,t,n,r){let o=(x.isJsxElement(t)?t.openingElement:t).attributes.properties.map(p=>{if(x.isJsxSpreadAttribute(p))return Dn(An(p,e),x.factory.createSpreadAssignment(p.expression));let{name:l,initializer:c}=p;if(x.isJsxNamespacedName(l)){let u=wt(e.sourceFile.fileName);throw new Error(`JSX namespaced attributes are not supported. Found ${l.getText(e.sourceFile)} in "${u}"`)}if(l.text==="key")return;let d=c===void 0?x.factory.createTrue():x.isStringLiteral(c)?c:Pe(c)?Wi(e,c):V(e,void 0,c.expression??x.factory.createIdentifier("undefined")),m=Ce(l.text)?x.factory.createStringLiteral(l.text):l;return x.factory.createPropertyAssignment(m,d)}),{parts:s,litTag:a}=Pt(r,e);return s.length>0&&o.push(x.factory.createPropertyAssignment(x.factory.createIdentifier("children"),ze({key:void 0,parts:s,litTag:a},e))),x.factory.createCallExpression(n,void 0,[x.factory.createObjectLiteralExpression(o.filter(Al))])}function Pt(e,t){let n,r=e.flatMap(i=>{if(x.isJsxText(i))return[t.compiler.shouldMinifyJsx?Pr(i.text):i.text];if(x.isJsxExpression(i))return St(t,i,i);{let o=Hi(t,i);if(o.key===void 0&&o.litTag!==se&&o.litTag!==X){if(o.litTag===hn)return o.parts;if(n!==void 0&&o.litTag!==void 0&&n!==o.litTag)throw new Error(`Unexpectedly found both ${n} and ${o.litTag} child elements inside the same element.`);return n=o.litTag,o.parts}else return[ze(o,t)]}});return{litTag:n,parts:r}}function kl(e){return e.operatorToken.kind===x.SyntaxKind.AmpersandAmpersandToken?x.factory.createBinaryExpression(e,x.factory.createToken(x.SyntaxKind.BarBarToken),x.factory.createStringLiteral("")):e}function St(e,t,n){if(t.expression===void 0){if(e.compiler.shouldMinifyJsx)return[];let r=t.getText(e.sourceFile).slice(1,-1);return vt(r).length===0?[]:[Dn(r,x.factory.createIdentifier("undefined"))]}return x.isStringLiteral(t.expression)?[it(t.expression.text)]:e.compiler.viteCommand==="serve"&&e.compiler.typeScriptConfig.sourceMap&&!e.compiler.shouldMinifyJsx&&x.isArrowFunction(t.expression)&&!x.isBlock(t.expression.body)?[V(e,n,x.factory.updateArrowFunction(t.expression,t.expression.modifiers,t.expression.typeParameters,t.expression.parameters,t.expression.type,t.expression.equalsGreaterThanToken,x.factory.createBlock([x.factory.createReturnStatement(t.expression.body)],!0)))]:[V(e,n,t.expression)]}function Il(e,t){if(t in e.localComponents)for(let r of e.compiler.privateApiJson.modules)for(let i of r.declarations){if(!("customElement"in i)||i.tagName!==t)continue;let o=new Set;for(let s of i.members)s.kind==="field"&&s.docsTags?.some(a=>a.name==="required")===!0&&o.add(s.name);return o}}import k from"typescript";import{path as In}from"@arcgis/components-build-utils";var Ki=e=>e.reduce((t,[n,r])=>(t[n]??=[],t[n].push(r),t),{}),qe={[Q]:["lit-html","lit/html.js","lit"],[se]:["lit-html/static.js","lit/static-html.js"],[ae]:["lit-html","lit/html.js","lit"],[X]:["lit-html/static.js","lit/static-html.js"],[xn]:["lit-html","lit/html.js","lit"],[Cn]:["@lit/reactive-element/css-tag.js","@lit/reactive-element","lit"],safeClassMap:["@arcgis/lumina"],safeStyleMap:["@arcgis/lumina"],keyed:["lit-html/directives/keyed.js","lit/directives/keyed.js"],live:["lit-html/directives/live.js","lit/directives/live.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"]},_i=Ki(Object.entries(qe).flatMap(([e,t])=>t.map(n=>[n,e]))),At=new Set(Object.keys(_i));function Ui(e,t){let n=t.importClause,r=t.moduleSpecifier;if(!k.isStringLiteral(r))return t;let i=Nl(e.sourceFile.fileName,r.text,""),o=!n?.isTypeOnly;if(o&&e.existingImportedModules.add(i),n===void 0)return t;if(e.isInLightDomComponent&&r.text.startsWith(".")&&ve.test(r.text)&&!r.text.includes("?"))return k.factory.updateImportDeclaration(t,t.modifiers,n,k.factory.createStringLiteral(r.text+B),t.attributes);if(n.name!==void 0){let p=n.name.text,l=n.name.text.startsWith(p[0].toUpperCase()),c=In.isAbsolute(i);o&&!n.isTypeOnly&&l&&c&&e.importedFunctionComponentsFromModules.add(i)}let s=n.namedBindings;if(s===void 0||!k.isNamedImports(s))return t;let a=At.has(r.text);return s.elements.forEach(p=>{let l=(p.propertyName??p.name).text,c=qe[l];if(a){if(c?.some(u=>u===r.text)){let u=Vi(l,i);e.existingLitImports.add(u),e.importRenames[u]=p.name?.text??u}}else(p.name.text==="h"||p.name.text==="createElement")&&(e.hasNonLuminaJsxImport=!0);let d=l.startsWith(l[0].toUpperCase()),m=In.isAbsolute(i);o&&!p.isTypeOnly&&d&&m&&e.importedFunctionComponentsFromModules.add(i)}),t}var Vi=(e,t)=>e===Q&&qe.staticHtml.includes(t)?se:e===ae&&qe.staticSvg.includes(t)?X:e,Nl=(e,t,n)=>t.startsWith(".")?In.resolve(e,"..",`${t}${n}`):t;function zi(e){return k.isImportDeclaration(e)?Ll(this,e):e}function Ll(e,t){let n=t.importClause,r=n?.namedBindings,i=t.moduleSpecifier;if(!k.isStringLiteral(i)||!r||!k.isNamedImports(r)||!At.has(i.text))return t;let o=n.isTypeOnly,s=!1,a=r.elements.map(p=>{let l=(p.propertyName??p.name).text,c=Vi(l,i.text);return e.neededImports.has(c)?(e.existingLitImports.delete(c),e.neededImports.delete(c),s=!0,k.factory.updateImportSpecifier(p,!1,p.propertyName,p.name)):o?k.factory.updateImportSpecifier(p,!0,p.propertyName,p.name):p});return _i[i.text]?.forEach(p=>{!e.neededImports.has(p)||e.existingLitImports.has(p)||(e.neededImports.delete(p),s=!0,a.push(Gi(p,e)))}),s?k.factory.updateImportDeclaration(t,t.modifiers,k.factory.updateImportClause(n,!1,n.name,k.factory.updateNamedImports(r,a)),t.moduleSpecifier,t.attributes):t}function qi(e){let t=Ki(Array.from(e.neededImports,n=>[qe[n][0],n]));return Object.entries(t).map(([n,r])=>k.factory.createImportDeclaration(void 0,k.factory.createImportClause(!1,void 0,k.factory.createNamedImports(r.map(i=>(e.neededImports.delete(i),Gi(i,e))))),k.factory.createStringLiteral(n)))}function Gi(e,t){let n=e===se?Q:e===X?ae:e,r=t.importRenames[e];return r===n?k.factory.createImportSpecifier(!1,void 0,k.factory.createIdentifier(n)):k.factory.createImportSpecifier(!1,k.factory.createIdentifier(n),k.factory.createIdentifier(r))}import{path as Rl,toSystemPathSeparators as $l}from"@arcgis/components-build-utils";function Xi(e){let t=yi().map(({packageName:n})=>n);return e.existingImportedModules.forEach(n=>{if(Rl.isAbsolute(n))return;let{packageName:r,moduleName:i}=en(n);if(t.includes(r??"")&&(i.startsWith("dist/components")||i.startsWith("components"))){let o=$l(e.sourceFile.fileName);throw new Error(`Did not expect to find any explicit imports for "${n}". Found import in ${o}. 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 Qi(e){if(e.compiler.viteCommand==="serve")return e.customElementsToImport.clear(),[];let t=e.compiler._customElementDependencies;return 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)}),[]}import{path as Ml,toSystemPathSeparators as Jl}from"@arcgis/components-build-utils";function Yi(e,t,n){let r=ft()[t]??Nn(e)[t];if(r===void 0){let i=Jl(n);throw new Error(`Unable to resolve the definition of the "${t}" custom element. Used in ${i}. If this is coming from an external package, make sure that package is installed as a peerDependency or a dependency. 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 Zi(e,t){return e.packageName===void 0?q(t,e.moduleName):Ml.join(e.packageName,e.moduleName)}function Nn(e){return e._localDefinedComponents??=yn(e.privateApiJson,{packageName:void 0,getImportPath(){throw new Error("Not supposed to be called for local components")}}),e._localDefinedComponents}var eo=(e,t)=>{let n=e.pragmas;if(n?.has("jsx")===!0||n?.has("jsxImportSource")===!0)return e.statements;let r={compiler:t.compiler,externalComponents:ft(),localComponents:t.compiler.isInPuppeteerTestBackEnd?{}:Nn(t.compiler),sourceFile:e,transformationContext:t.transformation,importRenames:Ol(e),existingImportedModules:new Set,importedFunctionComponentsFromModules:new Set,existingLitImports:new Set,customElementsToImport:new Set,neededImports:new Set,liftedKeys:new Set,hasNonLuminaJsxImport:!1,isInLightDomComponent:t.apiModule?.declarations.some(s=>"customElement"in s&&s.encapsulation!==void 0)??!1},i=[];if(e.statements.every(s=>{if(jl.isImportDeclaration(s)){if(i.push(Ui(r,s)),r.hasNonLuminaJsxImport)return!1}else i.push(V(r,void 0,s));return!0}),r.hasNonLuminaJsxImport)return e.statements;if(r.neededImports.size>0&&(i=i.map(zi,r),r.existingLitImports.size>0))throw new Error(`Expected context.existingLitImports to be empty by now. Found: ${Array.from(r.existingLitImports).join(", ")}`);let o=[qi,Xi,Qi].flatMap(s=>s(r));if(r.neededImports.size>0)throw new Error(`Expected context.neededLitImports to be empty by now. Found: ${Array.from(r.neededImports).join(", ")}`);return[...o,...i]};function Ol(e){return Bl(e),Object.fromEntries(Ci.map(t=>[t,e.identifiers.has(t)?`${t}$jsx`:t]))}function Bl(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 I from"typescript";import M from"typescript";import{PropertyFlags as le}from"@arcgis/lumina/config";function to(e,t,n){return t.size===0?e:[M.factory.createPropertyDeclaration([M.factory.createModifier(M.SyntaxKind.StaticKeyword),M.factory.createModifier(M.SyntaxKind.OverrideKeyword)],"properties",void 0,void 0,M.factory.createObjectLiteralExpression(Array.from(t.entries()).map(([r,i])=>M.factory.createPropertyAssignment(Ce(r)?M.factory.createStringLiteral(r):r,Wl(i,n))))),...e]}function Wl(e,t){let n=0,r=!0,i=e.properties.filter(a=>{if(!M.isPropertyAssignment(a)||!M.isIdentifier(a.name))return!0;let p=a.name.text,l=a.initializer,c=l.kind===M.SyntaxKind.TrueKeyword,d=l.kind===M.SyntaxKind.FalseKeyword;if(p==="attribute")return r=!1,n|=c?le.ATTRIBUTE:0,!c&&!d;if(p==="reflect")return n|=c?le.REFLECT:0,!1;if(p==="type"&&M.isIdentifier(l)){if(l.text==="Boolean")return n|=le.BOOLEAN,!1;if(l.text==="Number")return n|=le.NUMBER,!1}else{if(p==="state")return r=!1,n|=c?le.STATE:0,!1;if(p==="readOnly")return n|=c?le.READ_ONLY:0,!1;p==="noAccessor"&&(n|=c?le.NO_ACCESSOR:0)}return!0});r&&(n|=le.ATTRIBUTE);let o=t?i:e.properties,s=M.factory.createNumericLiteral(n);return o.length===0?s:M.factory.createArrayLiteralExpression([s,M.factory.createObjectLiteralExpression(o)])}import{identity as Vl}from"@arcgis/components-utils";import J from"typescript";import N from"typescript";function no(e,t,n,r,i){let o=-1,s=-1,a=-1;t.options?.properties.forEach((m,u)=>{if(N.isSpreadAssignment(m))throw new Error(`Spread property assignment is not allowed in @property() as that is not statically analyzable. Found ${m.getText(r)}`);if(N.isIdentifier(m.name)){let f=m.name.text;f==="type"?o=u:f==="attribute"?s=u:f==="readOnly"&&(a=u)}});let p=i?.attribute===void 0&&s===-1,l=i?.readonly===!0&&i.docsOnlyReadonly!==!0&&a===-1,c=Hl(e,t,n,i,o),d=[...p?[N.factory.createPropertyAssignment("attribute",N.factory.createFalse())]:[],...l?[N.factory.createPropertyAssignment("readOnly",N.factory.createTrue())]:[],...c!==void 0?[c]:[]];return d.length>0?t.options===void 0?N.factory.createObjectLiteralExpression(d,!1):N.factory.updateObjectLiteralExpression(t.options,[...t.options.properties,...d]):t.options}function Hl(e,t,n,r,i){if(r?.attribute===void 0)return;let o=_l(e),s=n.compiler.viteCommand==="serve"||o!=="Other"?o:Kl(r.type.values);return s==="Other"||r.readonly&&(s!=="Boolean"||!r.reflects)||t.options?.properties[i]!==void 0?void 0:N.factory.createPropertyAssignment(N.factory.createIdentifier("type"),N.factory.createIdentifier(s))}function Kl(e){let t=!1,n=!1,r=!1;if(e?.forEach(i=>{t||=i.type==="number",n||=i.type==="boolean",r||=i.type==="string"||i.type==="any"||i.type==="unknown"}),r||=t&&n,!r){if(t)return"Number";if(n)return"Boolean"}return"Other"}function _l(e){let t=e.type??(N.isSetAccessor(e)?e.parameters[0].type:void 0);if(t===void 0){if("initializer"in e&&e.initializer!==void 0){if(N.isNumericLiteral(e.initializer)||N.isPrefixUnaryExpression(e.initializer)&&e.initializer.operator===N.SyntaxKind.MinusToken&&N.isNumericLiteral(e.initializer.operand))return"Number";if(e.initializer.kind===N.SyntaxKind.FalseKeyword||e.initializer.kind===N.SyntaxKind.TrueKeyword)return"Boolean"}}else{if(t.kind===N.SyntaxKind.NumberKeyword)return"Number";if(t.kind===N.SyntaxKind.BooleanKeyword)return"Boolean"}return"Other"}import{getMemberName as oo}from"@arcgis/api-extractor";function so(e,t,n,r,i){if(t.modifiers===void 0)return t;let o=-1,s=-1;if(t.modifiers.forEach((a,p)=>{if(J.isDecorator(a)&&J.isCallExpression(a.expression)&&J.isIdentifier(a.expression.expression)){let l=a.expression.expression.text;l==="property"&&(o=p),l==="state"&&(s=p)}}),o!==-1){let a=Ul(e,t,n,r),p=ro(t,o,r),l=no(t,p,e,r,a),c=!1;return i!==void 0&&a&&(i.set(a.name,l??J.factory.createObjectLiteralExpression()),c=!0),p.options=l,io(t,p,o,c)}else if(s!==-1&&i!==void 0){let a=ro(t,s,r),p=J.factory.createPropertyAssignment("state",J.factory.createTrue()),l=a.options===void 0?J.factory.createObjectLiteralExpression([p]):J.factory.updateObjectLiteralExpression(a.options,[...a.options.properties,p]),c=oo(t.name);if(c===void 0)throw new Error("Failed to statically determine the state property name");return i.set(c,l),io(t,a,s,!0)}else return t}function Ul(e,t,n,r){let i=e.apiModule?.declarations.find(s=>s.name===n)??(e.compiler.isInTest?{name:"",members:[]}:void 0);if(i===void 0)return;let o=lr(i,t)??(e.compiler.isInTest?{kind:"field",attribute:"",readonly:!1,name:"",type:{text:""}}:void 0);if(!(o===void 0||o.kind!=="field")){if(o.name===""){let s=oo(t.name);if(s===void 0)throw new Error(`Failed to statically determine the property name: ${t.getText(r)}`);o.name=s}return o}}function ro(e,t,n){let r=e.modifiers[t],i=r.expression,o=i.arguments.at(0);if(o&&!J.isObjectLiteralExpression(o))throw new Error(`First argument to @property() or @state() decorator must be an object literal as otherwise it is not statically analyzable. Found ${o.getText(n)}`);return{decorator:r,callExpression:i,options:o}}function io(e,t,n,r){let i=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])),o=[...e.modifiers.slice(0,n),...i===void 0?[]:[i],...e.modifiers.slice(n+1)];return J.isGetAccessorDeclaration(e)?J.factory.updateGetAccessorDeclaration(e,o,e.name,e.parameters,e.type,e.body):J.isSetAccessorDeclaration(e)?J.factory.updateSetAccessorDeclaration(e,o,e.name,e.parameters,e.body):J.factory.updatePropertyDeclaration(e,o,e.name,e.questionToken??e.exclamationToken,e.type,e.initializer)}var ao=(e,t)=>{if(t.apiModule===void 0&&!t.compiler.isInTest)return e.statements;let n;function r(){n=new Map}let i=a=>to(a,n,t.compiler.shouldMinify),o=(a,p)=>ql(t,a,p,e,n);return e.statements.map(a=>po(o,a,t,r,i))};function po(e,t,n,r,i=Vl){if(I.isClassDeclaration(t)&&t.heritageClauses?.some(s=>s.token===I.SyntaxKind.ExtendsKeyword)){let s=!1,a=t.name?.text;r?.();let p=i(t.members.map(c=>{let d=e(c,a);return s||=d!==c,d}));return s?I.factory.updateClassDeclaration(t,t.modifiers,t.name,t.typeParameters,t.heritageClauses,p):t}return n.compiler.isInTest?I.visitEachChild(t,s=>po(e,s,n,r,i),n.transformation):t}var zl=new Set(["connectedCallback","disconnectedCallback"]);function ql(e,t,n,r,i){if(I.isMethodDeclaration(t)){let o=t.modifiers?.filter(s=>!I.isDecorator(s)||!Gl(s));if(o?.length!==t.modifiers?.length)return I.factory.updateMethodDeclaration(t,o,t.asteriskToken,t.name,t.questionToken,t.typeParameters,t.parameters,t.type,t.body);if("text"in t.name&&zl.has(t.name.text)&&t.body){let s=t.name.text;return t.body.statements.some(p=>I.isExpressionStatement(p)&&I.isCallExpression(p.expression)&&I.isPropertyAccessExpression(p.expression.expression)&&p.expression.expression.expression.kind===I.SyntaxKind.SuperKeyword&&p.expression.expression.name.text===s)?t:I.factory.updateMethodDeclaration(t,t.modifiers,t.asteriskToken,t.name,t.questionToken,t.typeParameters,t.parameters,t.type,I.factory.updateBlock(t.body,[I.factory.createExpressionStatement(I.factory.createCallExpression(I.factory.createPropertyAccessExpression(I.factory.createSuper(),s),void 0,[])),...t.body.statements]))}}return I.isPropertyDeclaration(t)||I.isAccessor(t)?so(e,t,n,r,i):t}var Gl=e=>I.isCallExpression(e.expression)&&I.isIdentifier(e.expression.expression)&&e.expression.expression.text==="method";import{path as mo}from"@arcgis/components-build-utils";var lo="makeRuntime(";function co(e,t){let n=e.indexOf(lo);if(n===-1)throw new Error("Failed to find makeRuntime() function call in src/runtime.ts");let r=n+lo.length,i=t.options.css?.commonStylesPath;return{code:[i===void 0?"":`import commonStyles from "${q(t.dir.src,i)}";`,e.slice(0,r),"{","defaultAssetPath:import.meta.env.BASE_URL,",'hydratedAttribute:"',t.options.css?.hydratedAttribute??nn,'",',i===void 0?"":"commonStyles","}",e.slice(r)].join(""),map:null}}var Ql=[eo,or,ao],uo=e=>({name:"@arcgis/lumina:transformComponents",transform:{order:"pre",async handler(t,n){if(!n.endsWith(".tsx")){if(e.isInTest&&n.endsWith(".ts")&&je(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 co(t,e);return}let r=e.getSourceFile(n,t);await oe;let o=Xl.transform(r,[m=>()=>tt(e,m,r,[...e.options.types?.sourceFileTransformers??[],...Ql])]).transformed[0],s=e._compilerOptionsForPrinter,a=e._typeScriptPrinter,p=s.sourceMap?fe.createSourceMapGenerator(e.typeScriptHost,mo.basename(n),"",mo.dirname(n),s):void 0,l=fe.createTextWriter(fe.getNewLineCharacter(s));a.writeFile(o,l,p);let c=l.getText(),d=p?.toJSON();return{code:c,map:d??null}}}});function fo(e){let t=e.typeScriptConfig;return{...t,declaration:!1,declarationMap:!1,emitDeclarationOnly:!1,sourceMap:t.sourceMap??t.inlineSourceMap,inlineSourceMap:!1,allowSyntheticDefaultImports:!0,suppressOutputPathCheck:!0,noLib:!0,noResolve:!0,skipLibCheck:!0}}function go(e){let t=e.options.types?.tsconfigPath,n=t&&yo.isAbsolute(t)?t:Yl(t??"tsconfig.json");if(n===void 0)throw new Error(`Unable to find ${Zl(String(t))} in ${process.cwd()}. Please make sure the file exists, or provide types.tsconfigPath option to useLumina()`);let r=K.readConfigFile(n,K.sys.readFile);if(r.error!==void 0)throw new Error(K.formatDiagnosticsWithColorAndContext([r.error],{getCanonicalFileName:tc,getCurrentDirectory:K.sys.getCurrentDirectory,getNewLine:()=>K.sys.newLine}));let i={...r.config,include:[],files:[],exclude:[]},o=K.parseJsonConfigFileContent(i,K.sys,yo.dirname(n));e.typeScriptConfig=o.options,e.typeScriptConfigPath=n}function Dt(e){let t=e.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=K.ScriptTarget[t].toLowerCase();return n==="latest"?"esnext":n}function ho(e,t){if(e.isInStorybook&&e.viteCommand==="serve"){let n=(s,a,p,...l)=>{let c=s.filter(d=>(!d.includes(".stories.")||d.endsWith(".tsx"))&&!je(d));return e.typeScriptHost=p,K.createAbstractBuilder(c,a,p,...l)},r=K.createWatchCompilerHost(e.typeScriptConfigPath,{preserveWatchOutput:!0},K.sys,n),i=50,o=r.setTimeout;r.setTimeout=o===void 0?void 0:(s,a,...p)=>o(s,p[0]==="timerToUpdateProgram"?i:a,...p),r.afterProgramCreate=s=>{e.typeScriptProgram=s.getProgram(),e.typeScriptTypeChecker=e.typeScriptProgram.getTypeChecker(),e._typeScriptReload?.resolve(),e._typeScriptReload=new ec},e.typeScriptWatchProgram=K.createWatchProgram(r),e.typeScriptConfig=e.typeScriptProgram.getCompilerOptions()}e.typeScriptConfig.sourceMap=t,e._compilerOptionsForPrinter=fo(e),e._typeScriptPrinter=st(e._compilerOptionsForPrinter)}import{writeFile as sc}from"node:fs/promises";import{asyncRetrievePackageJson as nc,fetchPackageLocation as rc,retrievePackageJson as ic}from"@arcgis/components-build-utils";var Ln="@arcgis/core",Co=ic(),Ge=Ln in(Co.dependencies??{})||Ln in(Co.peerDependencies??{});async function To(e,t){if(!Ge)return[];let n=await rc(Ln);if(t==="storybookBuild"){let r=await nc(n),i=G({name:"",version:r.version},!0);return[{tag:"script",attrs:{type:"importmap"},children:JSON.stringify({imports:{"@arcgis/core/":`${i}@arcgis/core/`}})},xo(i)]}else return[xo(we(e,`${n}/assets/`))]}var xo=e=>({cssHref:`${e}esri/themes/light/main.css`,id:"arcgisCoreStylesheet"});var $n=new Set(["chunks","components","docs","types","controllers","cjs","esm","loader","utils","collection","extras","support"]),Ie="cdn";function So(e){let{skip:t=!1,namespace:n=Ie,esbuildOptions:r={}}=e.options.build?.cdn??{};if(n.toLowerCase()!==n)throw new Error(`Expected CDN namespace to be all lowercase. Received: ${n}`);if($n.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 i=n===Ie?"index":n;if(e.provideAssets([{type:"dynamic",source:()=>Yr(e),destination:`../${i}.css`}]),!t)return{name:"@arcgis/lumina:buildCdn",async writeBundle(){if(e.isInStorybook)return;let o=Date.now(),s=await ac(e,i,r);await pc(s,i);let a=Date.now();console.log(`CDN was built in ${a-o}ms`)}}}async function ac(e,t,n){let r=e.environment;return await oc({bundle:!0,minify:r==="production",treeShaking:!0,sourcemap:r==="development"?"inline":e.options.build?.enableSourceMapsInProduction?"linked":!1,format:"esm",splitting:!0,write:!1,outdir:e.dir.distCdn,legalComments:"none",logLevel:"warning",external:["@arcgis/core"],chunkNames:"[hash]",resolveExtensions:[".js",".json"],entryNames:Eo(t),banner:{js:e.banner},target:Dt(e.typeScriptConfig),...n,plugins:[...e.options.build?.ssr?.stencilCompatibility?.enabled===!0?[{name:"@arcgis/lumina:drop-lit-ssr-import",setup(i){i.onResolve({filter:/^@lit-labs\/ssr-client\//u},o=>({path:o.path,namespace:"@arcgis/lumina:drop-lit-ssr-import"})),i.onLoad({filter:/^/u,namespace:"@arcgis/lumina:drop-lit-ssr-import"},()=>({contents:'""',loader:"json"}))}}]:[],...n?.plugins??[]],define:{"process.env.CDN":"true",...n.define},stdin:{contents:`import { defineCustomElements } from "./loader";
48
+ });`}]});let l=[],c=this.context.options.documentation?.getComponentDocsUrl?.(i,r),d=this.context.options.documentation?.getComponentDemoUrl?.(i,r);typeof c=="string"&&l.push({description:"Docs",url:c}),typeof d=="string"&&l.push({description:"Demo",url:d}),l.length>0&&(o.demos=l),o.cssProperties.length===0&&(o.cssProperties=void 0),o.cssParts.length===0&&(o.cssParts=void 0),o.slots.length===0&&(o.slots=void 0),o.attributes.length===0&&(o.attributes=void 0),o.events.length===0&&(o.events=void 0),o.cssStates.length===0&&(o.cssStates=void 0)}return o}extractComponentMembers(n){let r=[],i=n.members.length,o,s=n.members[0],a,p=s?.name!==void 0?si(s.name):void 0;for(let l=0;l<i;l++){if(o=s,s=n.members[l+1],a=p,p=s?.name!==void 0?si(s.name):void 0,this.pairedSetter!==void 0){this.pairedSetter=void 0;continue}s!==void 0&&a===p&&(D.isGetAccessor(s)?(this.pairedSetter=o,o=s):D.isSetAccessor(s)&&(this.pairedSetter=s));let c=this.extractComponentMember(o,a);c!==void 0&&r.push(c)}return r}extractComponentMember(n,r){if(Np(n)||r===void 0){D.isPropertyDeclaration(n)&&D.isIdentifier(n.name)&&n.name.text==="shadowRootOptions"&&n.initializer!==void 0&&D.isIdentifier(n.initializer)&&n.initializer.text==="noShadowRoot"&&(this.apiComponent.encapsulation="none");return}return D.isPropertyDeclaration(n)||D.isGetAccessor(n)||D.isSetAccessor(n)?this.extractComponentField(n,r):D.isMethodDeclaration(n)?this.extractComponentMethod(n,r):void 0}extractComponentField(n,r){let i=this.findPropertyOptions(n);this.pairedSetter!==void 0&&(i??=this.findPropertyOptions(this.pairedSetter));let o=D.isPropertyDeclaration(n);if(i===void 0){if(o&&this.context.isFullApiExtraction){let c=this.extractComponentEvent(n,r);c!==void 0&&this.apiComponent.events.push(c)}return}let s,a=!1,p=!1;for(let c of i)!D.isPropertyAssignment(c)||!D.isIdentifier(c.name)||(c.name.text==="attribute"&&(D.isStringLiteral(c.initializer)?s=c.initializer.text:s=ge(c.initializer,this.file)),c.name.text==="reflect"&&ge(c.initializer,this.file)&&(a=!0),c.name.text==="readOnly"&&ge(c.initializer,this.file)&&(p=!0),(c.name.text==="type"||c.name.text==="converter")&&(s??=!0));let l={kind:"field",name:r,summary:void 0,description:void 0,type:{text:""},default:void 0,deprecated:void 0,readonly:p||(o?n.modifiers?.some(c=>c.kind===D.SyntaxKind.ReadonlyKeyword):D.isGetAccessor(n)&&this.pairedSetter===void 0)?!0:void 0,attribute:s===!1?void 0:typeof s=="string"?s:Lp(r),reflects:a||void 0,docsTags:void 0,getterTypeDiffers:void 0,docsOnlyReadonly:void 0,inheritedFrom:void 0,privacy:void 0};return this.context.isFullApiExtraction&&(this.extractComponentFieldDetails(n,l),(s===void 0&&(l.type.values===void 0||!$r(l.type.values))||l.readonly&&!l.reflects)&&(l.attribute=void 0)),l}extractComponentEvent(n,r){return oi(n,r,this.context,this.file)}extractComponentFieldDetails(n,r){let i=r.readonly===!0,o=this.context.typeScriptTypeChecker,s=o.getSymbolAtLocation(n.name),a=s===void 0?void 0:lt(o,s),p=new Set(a?.docsTags.map(h=>h.name)??[]);re(n.name,this.context.typeScriptTypeChecker,r,a);let l=!i&&r.readonly===!0;if(this.context.viteCommand==="build"){let T=(D.isSetAccessor(n)?n.parameters[0]?.type:n.type)?.getText(this.file)?.match(Jp)??[];for(let E of T){let b=this.context._typeDependencies.get(this.apiComponent.tagName);b===void 0?this.context._typeDependencies.set(this.apiComponent.tagName,new Set([E])):b.add(E)}}let c=this.pairedSetter??n,d=r.docsTags?.some(h=>h.name==="required")??!1;r.type=Mr(this.context,c,d,this.file);let m=r.default;ai(n,r,this.file);let u=m===void 0&&r.default==="true";if("initializer"in n&&n.initializer!==void 0&&(!r.default||!r.description)){let h=n.initializer,y=o.getSymbolAtLocation(h),T=y!==void 0&&(y.flags??0)&D.SymbolFlags.Alias?o.getAliasedSymbol(y):y,E=T?.getDeclarations()??[];if(T!==void 0){let b=lt(o,T);if(b.docsTags.length>0){b.docsTags=b.docsTags.filter(j=>!p.has(j.name));let R=r.description;re(n.name,o,r,b),b.docsTags.forEach(j=>{p.add(j.name)}),r.description=R??r.description}else r.description||=b.description}E.forEach(b=>{if(!("initializer"in b))return;let R=b;l||=R.modifiers?.some(j=>j.kind===D.SyntaxKind.ReadonlyKeyword)??!1,ai(R,r,R.getSourceFile())})}if(l&&(r.readonly=!0,i||(r.docsOnlyReadonly=!0)),r.type.values&&r.type.values.length>0&&r.type.values?.every(h=>h.type==="boolean")&&(r.default?u&&this.context.viteCommand==="build"&&r.deprecated===void 0&&this.context.logLintError("booleanMustDefaultFalse",this.file.fileName,`Boolean properties must default to "false". Found default value "true" in ${this.apiComponent.name}.${r.name}`):r.default="false"),this.pairedSetter!==void 0&&!r.readonly){let h=this.pairedSetter.parameters.at(0)?.type?.getText(this.file),y=n.type?.getText(this.file);h!==y&&y!==void 0&&h!==void 0&&(r.getterTypeDiffers=!0)}}findPropertyOptions(n){let r=pn(n,"property");return r===void 0?void 0:r.arguments?.find(D.isObjectLiteralExpression)?.properties??[]}extractComponentMethod(n,r){if(pn(n,"method")===void 0)return;let i={kind:"method",name:r,summary:void 0,description:void 0,deprecated:void 0,parameters:[],return:void 0,inheritedFrom:void 0,docsTags:void 0,signature:"",async:ii(n)?!0:void 0,privacy:void 0};if(this.context.isFullApiExtraction){let o=this.context.typeScriptTypeChecker;ri(n,i,o,this.file,this.context.dir)}return i}inferAttributes(n){let r=[];for(let i of n){if(i.kind!=="field"||i.attribute===void 0||i.privacy!==void 0)continue;let o=i.type.values?.filter(s=>s.type==="number"||s.type==="string"||s.type==="boolean");r.push({name:i.attribute,summary:i.summary,description:i.description,inheritedFrom:i.inheritedFrom,type:o===void 0||o.length===0?i.type:{text:at(o),references:void 0,values:o},default:i.default,fieldName:i.name,deprecated:i.deprecated})}return r}inferExport(n){if("customElement"in n)return this.inferCustomElementExport(n)}inferCustomElementExport(n){return{kind:"custom-element-definition",name:n.tagName,declaration:{name:n.name,module:this.apiModule.path}}}inheritMembers(n,r,i=n.superclass,o,s,a){let p=i.name;if(p===void 0||p===We.name)return;let l=this._resolvedInheritance.get(p)??this.resolveInheritance(p,r)??(this.isPathOnly?this.resolveInheritance(p,this.context.privateApiJson.modules):void 0);if(l!==void 0){o??=new Set(n.members.map(c=>c.name));for(let c of l.members)o.has(c.name)||(n.members.push({...c,inheritedFrom:i}),o.add(c.name));if(l.attributes!==void 0){n.attributes??=[],s??=new Set(n.attributes.map(c=>c.name));for(let c of l.attributes)s.has(c.name)||(n.attributes.push({...c,inheritedFrom:i}),s.add(c.name))}if(l.events!==void 0){n.events??=[],a=new Set(n.events.map(c=>c.name));for(let c of l.events)a.has(c.name)||(n.events.push({...c,inheritedFrom:i}),a.add(c.name))}l.superclass.name!==We.name&&this.inheritMembers(n,r,l.superclass,o,s,a),i.module=l.importPath}}resolveInheritance(n,r){for(let i of r)for(let o of i.declarations)if("customElement"in o&&n===o.name)return this._resolvedInheritance.set(n,o),o;this._resolvedInheritance.set(n,void 0)}},We={name:"LitElement",package:"@arcgis/lumina"},cn=(e,t)=>e.name.localeCompare(t.name),Jp=/(?<=this.)[\w$]+/gu;import{readFile as Op}from"node:fs/promises";async function li(e,t){t||(e.componentFilesPromise=be(e,e.dir.srcComponents));let n=await e.componentFilesPromise,r=await Kp(e,n);e._componentPathMapping={},e._localDefinedComponents=void 0;let i=di(r,e,!1);e.privateApiJson=i;let[o,s]=mi(i);return e.apiJsonComponents=s,e.apiJson=o,i}function ci(e,t,n){let r=e.getSourceFile(t,n),i=di([r],e,!0),o=i.modules[0];{let m=mi(i)[0].modules[0],u=e.apiJson.modules.findIndex(y=>y.path===m.path),f=e.apiJson.modules[u],h=Array.from(e.apiJson.modules);h.splice(u,1,m),e.apiJson={...e.apiJson,modules:h},e.apiJsonComponents=e.apiJsonComponents.filter(y=>!f.declarations.includes(y));for(let y of m.declarations)"customElement"in y&&e.apiJsonComponents.push(y)}let s=e.privateApiJson.modules.findIndex(m=>m.path===o.path),a=e.privateApiJson.modules[s],p=Array.from(e.privateApiJson.modules);p.splice(s,1,o),e.privateApiJson={...e.privateApiJson,modules:p};let l=!1,c=a.declarations.filter(m=>"customElement"in m),d=[];for(let m of o.declarations)if("customElement"in m){let f=c.find(h=>h.tagName===m.tagName)===void 0;l||=f,d.push(m)}return l||=d.length!==c.length,l?void 0:d}function di(e,t,n){let r=t.options.apiJson?.Extractor??He,o=new r(t,n).extract(e);return t.options.apiJson?.afterCreate?.(o,n),o}function mi(e){let t={...e,modules:[]},n=[];for(let r of e.modules){let i={...r,declarations:[]};for(let o of r.declarations)if("customElement"in o&&o.privacy===void 0){let s={...o,members:o.members.filter(a=>a.privacy===void 0)};i.declarations.push(s),n.push(s)}i.declarations.length>0&&t.modules.push(i)}return[t,n]}function pi(e,t,n){e.members.forEach(r=>{if(r.kind==="field")dt(r.type,n,t);else if(dt(r.return?.type,n,t),r.parameters!==void 0)for(let i of r.parameters)dt(i.type,n,t)}),e.events?.forEach(r=>{dt(r.type,n,t)})}function dt(e,t,n){e!==void 0&&(e.references?.forEach(r=>Bp(r,t,n)),e.text=e.text.replaceAll(Hp,(r,i)=>t.get(i)??r),e.values?.forEach(Wp,t))}function Bp(e,t,n){e.package===void 0&&(e.module?.startsWith("dist/components/")===!0?e.module=ee(e.module,"dist/components/",n):e.module==="index.js"&&e.name&&(e.name=t.get(e.name)??e.name))}function Wp(e){e.type.startsWith("ToElement<")&&(e.type=this.get(e.type.slice(10,-1))??e.type)}var Hp=/ToElement<(\w+)>/gu;async function Kp(e,t){if(e.viteCommand==="serve"&&(Object.hasOwn(e,"typeScriptHost")||(e.typeScriptHost=jp.createCompilerHost(e.typeScriptConfig,!1))),e.typeScriptProgram!==void 0){let n=e.typeScriptProgram.getSourceFiles(),r=new Set(t);return n.filter(i=>r.has(i.fileName))}else return await Promise.all(t.map(async n=>{let r=await Op(n,"utf8");return e.getSourceFile(n,r)}))}import{readFile as wc,writeFile as Pc}from"node:fs/promises";import{path as kt,toSystemPathSeparators as Ac}from"@arcgis/components-build-utils";import{isNotUndefined as Fo}from"@arcgis/components-utils";import{isNotUndefined as _p}from"@arcgis/components-utils";import{existsAsync as ui}from"@arcgis/components-build-utils";import{readFile as dn,readdir as Up}from"node:fs/promises";import{asyncRetrievePackageJson as Vp,fetchPackageLocation as zp,retrievePackageJson as qp,path as mt}from"@arcgis/components-build-utils";async function ut(e){return oe??=Gp(e),await oe}function yi(){if(mn===void 0)throw new Error("Component dependencies have not yet been initialized. Await componentDependenciesPromise promise first.");return mn}function ft(){if(un===void 0)throw new Error("Component dependencies have not yet been initialized. Await componentDependenciesPromise promise first.");return un}async function Gp(e){let t=qp(e),n=t.dependencies??{},r=t.peerDependencies??{},o=(await Promise.all([...Object.keys(n),...Object.keys(r)].filter(s=>!Xp.has(s)).flatMap(async s=>await fn(s,e)))).filter(_p);return mn??=o,un=Object.fromEntries(o.flatMap(s=>Object.entries(s.components))),o}var Xp=new Set(["@arcgis/arcade-languageservice","@arcgis/components-controllers","@arcgis/components-build-utils","@arcgis/components-utils","@arcgis/core","@arcgis/core-adapter","@arcgis/languages-api-utils","@arcgis/languages-sdk-specs","@arcgis/lumina","@commander-js/extra-typings","@custom-elements-manifest/analyzer","@esri/calcite-ui-icons","@floating-ui/dom","@lit-labs/ssr","@lit-labs/ssr-client","@lit/react","@types/color","@types/sortablejs","color","composed-offset-position","custom-elements-manifest","dayjs","focus-trap","interactjs","lit","lodash-es","monaco-editor","sortablejs","storybook","timezone-groups","type-fest","tslib","typescript","vscode-languageserver-textdocument","vscode-languageserver-types"]),mn,un,oe;async function fn(e,t){let n=await zp(e,t),r=await Vp(n),i="exports"in r,o=nl.bind(void 0,i),s="@stencil/core"in(r.dependencies??{})||"@stencil/core"in(r.devDependencies??{}),a=mt.join(n,"dist/esm/loader.js");if(s?await ui(a):!1){let u=await dn(a,"utf8"),f=Qp(u,"bootstrapLazy("),h=u.indexOf(", options",f),y=u.slice(f,h),T=y.startsWith('JSON.parse("')?y.slice(12,-2).replaceAll('\\"','"'):y;try{let E=JSON.parse(T),b=el(E,{packageName:e,getImportPath:o});return{packageName:e,type:"stencil",components:b}}catch(E){console.warn(`@arcgis/lumina: Failed to parse dist/esm/loader.js for ${e}.
49
+ Error: ${String(E)}`)}}let l=fi(r.customElements);if(l!=null){let u=mt.join(n,l),f=JSON.parse(await dn(u,"utf-8")),h=Yp(f),y=yn(f,{packageName:e,getImportPath:o});return{type:h?"@arcgis/lumina":"unknown",packageName:e,components:y}}let c=fi(r["web-types"]);if(c!=null){let u=mt.join(n,c),f=JSON.parse(await dn(u,"utf-8")),h=Zp(f,{packageName:e,getImportPath:o,packageRoot:n});return{type:"unknown",packageName:e,components:h}}let d=mt.join(n,"dist/components");if(await ui(d)){let u=await tl(d,{packageName:e,getImportPath:o});return{type:"unknown",packageName:e,components:u}}}var fi=e=>Array.isArray(e)?e[0]:e;function Qp(e,t){let n=e.indexOf(t);return n===-1?-1:n+t.length}function yn(e,t){let n={};for(let r of e.modules)if(r.declarations!==void 0)for(let i of r.declarations){if(!("tagName"in i))continue;let o=i,s=o,a=o.tagName;n[a]={packageName:t.packageName,moduleName:s.importPath??t.getImportPath(a),propToAttribute:Object.fromEntries((o.attributes??[]).map(p=>[p.fieldName??p.name,p.name]))}}return n}var Yp=e=>e.compiler?.name===Ee,Zp=(e,t)=>Object.fromEntries((e.contributions?.html?.elements??e.contributions?.html?.tags)?.map(n=>[n.name,{packageName:t.packageName,moduleName:t.getImportPath(n.name),propToAttribute:{}}])??[]);var el=(e,t)=>Object.fromEntries(e.flatMap(([n,r])=>r.map(([i,o,s={}])=>[o,{packageName:t.packageName,moduleName:t.getImportPath(o),propToAttribute:Object.fromEntries(Object.entries(s).filter(([a,[p]])=>p&15).map(([a,[p,l=a]])=>[a,l]))}]))),tl=async(e,t)=>Object.fromEntries((await Up(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:{}}]})),nl=(e,t)=>e?`components/${t}`:`dist/components/${t}.js`;import{asyncRetrievePackageJson as Cc,fetchPackageLocation as xc}from"@arcgis/components-build-utils";var rl=e=>e.startsWith("/")?e:`/${e}`,we=(e,t)=>`${e}@fs${rl(t)}`;import{retrievePackageJson as il}from"@arcgis/components-build-utils";function G(e=il(),t=!1,n=e.name==="@esri/calcite-components"){let r=e.version.includes("next");if(e.name==="@esri/calcite-components"&&r)return`https://cdn.jsdelivr.net/npm/@esri/calcite-components@${e.version}/dist/calcite/`;let i=t||r?"jsdev.arcgis.com":"js.arcgis.com",o=ol(e.name),s=sl(e.version,n);return["https://",i,o.length>0?"/":"",o,"/",s,"/"].join("")}var ol=e=>e.split("/").pop()??e;function sl(e,t){if(/\d+\.\d+\.\d+-(?:.*)$/u.test(e))return"next";let r=/^(?<major>\d+)\.(?<minor>\d+)\.(?<patch>\d+)/u,i=e.match(r);if(i?.groups!==void 0){let{major:o,minor:s,patch:a}=i.groups,p=`${o}.${s}`;return t?`${p}.${a}`:p}return"next"}import{isNotUndefined as fc}from"@arcgis/components-utils";import{readdir as yc}from"node:fs/promises";import{path as Mn}from"@arcgis/components-build-utils";import{existsAsync as wo}from"@arcgis/components-build-utils";import{asyncRetrievePackageJson as gc,fetchPackageLocation as hc}from"@arcgis/components-build-utils";import{build as sc}from"esbuild";import{findPath as Zl,path as yo,toSystemPathSeparators as ec}from"@arcgis/components-build-utils";import{Deferred as tc,identity as nc}from"@arcgis/components-utils";import K from"typescript";import Ql from"typescript";import Ol from"typescript";import gn from"typescript";var al=["keyed","ref","repeat","live"],se="staticHtml",X="staticSvg",Q="html",ae="svg",hn=Symbol("maybe HTML namespace or maybe SVG"),Cn="css",xn="mathml",gi=[Cn,Q,xn,se,X,ae],hi=new Set(gi),pl=["safeClassMap","safeStyleMap"],ll="nothing",Ci=[...al,...gi,...pl,ll],Pe=e=>gn.isJsxElement(e)||gn.isJsxSelfClosingElement(e)||gn.isJsxFragment(e);import x from"typescript";import S from"typescript";var xi="Fragment",yt="DynamicHtmlTag",gt="DynamicSvgTag",he=Symbol("dynamic html tag name"),Ke=Symbol("dynamic svg tag name"),Ti=!0,ht=new Set(["class","itemProp","itemScope","itemType","itemId","itemRef","about","datatype","inlist","property","resource","typeof","vocab"]),Ct=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"]),iframe:new Set(["sandbox"]),link:new Set(["sizes"]),meta:new Set(["charset"]),math:new Set(["dir","displaystyle","scriptlevel"]),menu:new Set(["label","type"])},W={common:{reflected:{hidden:"hidden",inert:"inert",draggable:"draggable",contentEditable:"contenteditable",popover:"popover",autofocus:"autofocus",role:"role",ariaAtomic:"aria-atomic",ariaAutoComplete:"aria-autocomplete",ariaBusy:"aria-busy",ariaBrailleLabel:"aria-braillelabel",ariaBrailleRoleDescription:"aria-brailleroledescription",ariaChecked:"aria-checked",ariaColCount:"aria-colcount",ariaColIndex:"aria-colindex",ariaColSpan:"aria-colspan",ariaCurrent:"aria-current",ariaDescription:"aria-description",ariaDisabled:"aria-disabled",ariaExpanded:"aria-expanded",ariaHasPopup:"aria-haspopup",ariaHidden:"aria-hidden",ariaInvalid:"aria-invalid",ariaKeyShortcuts:"aria-keyshortcuts",ariaLabel:"aria-label",ariaLevel:"aria-level",ariaLive:"aria-live",ariaModal:"aria-modal",ariaMultiLine:"aria-multiline",ariaMultiSelectable:"aria-multiselectable",ariaOrientation:"aria-orientation",ariaPlaceholder:"aria-placeholder",ariaPosInSet:"aria-posinset",ariaPressed:"aria-pressed",ariaReadOnly:"aria-readonly",ariaRelevant:"aria-relevant",ariaRequired:"aria-required",ariaRoleDescription:"aria-roledescription",ariaRowCount:"aria-rowcount",ariaRowIndex:"aria-rowindex",ariaRowSpan:"aria-rowspan",ariaSelected:"aria-selected",ariaSetSize:"aria-setsize",ariaSort:"aria-sort",ariaValueMax:"aria-valuemax",ariaValueMin:"aria-valuemin",ariaValueNow:"aria-valuenow",ariaValueText:"aria-valuetext",ariaColIndexText:"aria-colindextext",ariaRowIndexText:"aria-rowindextext",ariaVirtualContent:"aria-virtualcontent"},stringifiedReflected:{title:"title",lang:"lang",translate:"translate",dir:"dir",accessKey:"accesskey",spellcheck:"spellcheck",autocapitalize:"autocapitalize",enterKeyHint:"enterkeyhint",inputMode:"inputmode",virtualKeyboardPolicy:"virtualkeyboardpolicy",tabIndex:"tabindex",writingSuggestions:"writingsuggestions",focusgroup:"focusgroup",id:"id",className:"class",slot:"slot",elementTiming:"elementtiming"},stringifiedNonReflected:{innerText:"",nonce:"",innerHTML:""}},perElement:{a:{stringifiedReflected:{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"},stringifiedNonReflected:{text:""}},area:{reflected:{noHref:"nohref"},stringifiedReflected:{alt:"alt",coords:"coords",download:"download",shape:"shape",target:"target",ping:"ping",rel:"rel",referrerPolicy:"referrerpolicy",href:"href",interestAction:"interestaction"}},audio:{reflected:{crossOrigin:"crossorigin",autoplay:"autoplay",loop:"loop",controls:"controls",defaultMuted:"muted",disableRemotePlayback:"disableremoteplayback"},stringifiedReflected:{src:"src",preload:"preload"}},base:{stringifiedReflected:{href:"href",target:"target"}},blockquote:{stringifiedReflected:{cite:"cite"}},body:{stringifiedReflected:{text:"text",link:"link",vLink:"vlink",aLink:"alink",bgColor:"bgcolor",background:"background"}},br:{stringifiedReflected:{clear:"clear"}},button:{reflected:{disabled:"disabled",formNoValidate:"formnovalidate"},stringifiedReflected:{formAction:"formaction",formEnctype:"formenctype",formMethod:"formmethod",formTarget:"formtarget",name:"name",type:"type",value:"value",popoverTargetAction:"popovertargetaction",command:"command",interestAction:"interestaction"}},canvas:{stringifiedReflected:{width:"width",height:"height"}},caption:{stringifiedReflected:{align:"align"}},col:{stringifiedReflected:{span:"span",align:"align",ch:"char",chOff:"charoff",vAlign:"valign",width:"width"}},colgroup:{stringifiedReflected:{span:"span",align:"align",ch:"char",chOff:"charoff",vAlign:"valign",width:"width"}},data:{stringifiedReflected:{value:"value"}},del:{stringifiedReflected:{cite:"cite",dateTime:"datetime"}},details:{reflected:{open:"open"},stringifiedReflected:{name:"name"}},dialog:{reflected:{open:"open"},stringifiedNonReflected:{returnValue:""}},div:{stringifiedReflected:{align:"align"}},dl:{reflected:{compact:"compact"}},embed:{stringifiedReflected:{src:"src",type:"type",width:"width",height:"height",align:"align",name:"name"}},fieldset:{reflected:{disabled:"disabled"},stringifiedReflected:{name:"name"}},form:{reflected:{noValidate:"novalidate"},stringifiedReflected:{acceptCharset:"accept-charset",action:"action",autocomplete:"autocomplete",enctype:"enctype",encoding:"enctype",method:"method",name:"name",target:"target",rel:"rel"}},h1:{stringifiedReflected:{align:"align"}},h2:{stringifiedReflected:{align:"align"}},h3:{stringifiedReflected:{align:"align"}},h4:{stringifiedReflected:{align:"align"}},h5:{stringifiedReflected:{align:"align"}},h6:{stringifiedReflected:{align:"align"}},hr:{reflected:{noShade:"noshade"},stringifiedReflected:{align:"align",color:"color",size:"size",width:"width"}},html:{stringifiedReflected:{version:"version"}},iframe:{reflected:{allowFullscreen:"allowfullscreen",credentialless:"credentialless",allowPaymentRequest:"allowpaymentrequest",browsingTopics:"browsingtopics",adAuctionHeaders:"adauctionheaders",sharedStorageWritable:"sharedstoragewritable"},stringifiedReflected:{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:{reflected:{crossOrigin:"crossorigin",isMap:"ismap",width:"width",height:"height",hspace:"hspace",vspace:"vspace",sharedStorageWritable:"sharedstoragewritable"},stringifiedReflected:{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:{reflected:{defaultChecked:"checked",disabled:"disabled",formNoValidate:"formnovalidate",height:"height",multiple:"multiple",readOnly:"readonly",required:"required",size:"size",width:"width",webkitdirectory:"webkitdirectory",incremental:"incremental"},stringifiedReflected:{accept:"accept",alt:"alt",autocomplete:"autocomplete",dirName:"dirname",formAction:"formaction",formEnctype:"formenctype",formMethod:"formmethod",formTarget:"formtarget",max:"max",maxLength:"maxlength",min:"min",minLength:"minlength",name:"name",pattern:"pattern",placeholder:"placeholder",src:"src",step:"step",type:"type",defaultValue:"value",align:"align",useMap:"usemap",popoverTargetAction:"popovertargetaction",command:"command",interestAction:"interestaction"},stringifiedNonReflected:{value:""}},ins:{stringifiedReflected:{cite:"cite",dateTime:"datetime"}},label:{stringifiedReflected:{htmlFor:"for"}},legend:{stringifiedReflected:{align:"align"}},li:{reflected:{value:"value"},stringifiedReflected:{type:"type"}},link:{reflected:{disabled:"disabled",crossOrigin:"crossorigin"},stringifiedReflected:{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:{stringifiedReflected:{name:"name"}},menu:{reflected:{compact:"compact"}},meta:{stringifiedReflected:{name:"name",httpEquiv:"http-equiv",content:"content",media:"media",scheme:"scheme"}},meter:{reflected:{value:"value",min:"min",max:"max",low:"low",high:"high",optimum:"optimum"}},object:{reflected:{declare:"declare",hspace:"hspace",vspace:"vspace"},stringifiedReflected:{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:{reflected:{reversed:"reversed",compact:"compact"},stringifiedReflected:{start:"start",type:"type"}},optgroup:{reflected:{disabled:"disabled"},stringifiedReflected:{label:"label"}},option:{reflected:{disabled:"disabled",defaultSelected:"selected"},stringifiedReflected:{label:"label",value:"value"},stringifiedNonReflected:{text:""}},output:{stringifiedReflected:{name:"name"},stringifiedNonReflected:{defaultValue:"",value:""}},p:{stringifiedReflected:{align:"align"}},pre:{reflected:{width:"width"}},progress:{reflected:{value:"value",max:"max"}},q:{stringifiedReflected:{cite:"cite"}},script:{reflected:{noModule:"nomodule",async:"async",defer:"defer",crossOrigin:"crossorigin",referrerPolicy:"referrerpolicy"},stringifiedReflected:{src:"src",type:"type",charset:"charset",fetchPriority:"fetchpriority",event:"event",htmlFor:"for",integrity:"integrity",attributionSrc:"attributionsrc"},stringifiedNonReflected:{text:""}},select:{reflected:{disabled:"disabled",multiple:"multiple",required:"required",size:"size"},stringifiedReflected:{autocomplete:"autocomplete",name:"name"}},slot:{stringifiedReflected:{name:"name"}},source:{reflected:{width:"width",height:"height"},stringifiedReflected:{src:"src",type:"type",srcset:"srcset",sizes:"sizes",media:"media"}},style:{stringifiedReflected:{media:"media",type:"type"}},table:{stringifiedReflected:{align:"align",border:"border",frame:"frame",rules:"rules",summary:"summary",width:"width",bgColor:"bgcolor",cellPadding:"cellpadding",cellSpacing:"cellspacing"}},tbody:{stringifiedReflected:{align:"align",ch:"char",chOff:"charoff",vAlign:"valign"}},td:{reflected:{noWrap:"nowrap"},stringifiedReflected:{colSpan:"colspan",rowSpan:"rowspan",headers:"headers",align:"align",axis:"axis",height:"height",width:"width",ch:"char",chOff:"charoff",vAlign:"valign",bgColor:"bgcolor",abbr:"abbr",scope:"scope"}},template:{reflected:{shadowRootDelegatesFocus:"shadowrootdelegatesfocus",shadowRootClonable:"shadowrootclonable",shadowRootSerializable:"shadowrootserializable",parseparts:"parseparts"},stringifiedReflected:{shadowRootMode:"shadowrootmode"}},textarea:{reflected:{cols:"cols",disabled:"disabled",readOnly:"readonly",required:"required",rows:"rows"},stringifiedReflected:{autocomplete:"autocomplete",dirName:"dirname",maxLength:"maxlength",minLength:"minlength",name:"name",placeholder:"placeholder",wrap:"wrap"},stringifiedNonReflected:{defaultValue:"",value:""}},tfoot:{stringifiedReflected:{align:"align",ch:"char",chOff:"charoff",vAlign:"valign"}},th:{reflected:{noWrap:"nowrap"},stringifiedReflected:{colSpan:"colspan",rowSpan:"rowspan",headers:"headers",align:"align",axis:"axis",height:"height",width:"width",ch:"char",chOff:"charoff",vAlign:"valign",bgColor:"bgcolor",abbr:"abbr",scope:"scope"}},thead:{stringifiedReflected:{align:"align",ch:"char",chOff:"charoff",vAlign:"valign"}},time:{stringifiedReflected:{dateTime:"datetime"}},title:{stringifiedNonReflected:{text:""}},tr:{stringifiedReflected:{align:"align",ch:"char",chOff:"charoff",vAlign:"valign",bgColor:"bgcolor"}},track:{reflected:{default:"default"},stringifiedReflected:{kind:"kind",src:"src",srclang:"srclang",label:"label"}},ul:{reflected:{compact:"compact"},stringifiedReflected:{type:"type"}},video:{reflected:{width:"width",height:"height",playsInline:"playsinline",disablePictureInPicture:"disablepictureinpicture",crossOrigin:"crossorigin",autoplay:"autoplay",loop:"loop",controls:"controls",defaultMuted:"muted",disableRemotePlayback:"disableremoteplayback"},stringifiedReflected:{poster:"poster",src:"src",preload:"preload"}}}};bi(W.common);Object.values(W.perElement).forEach(bi);function bi(e){e?.reflected!==void 0&&(e.reflected=Object.assign(Object.create(null),e.reflected)),e?.stringifiedReflected!==void 0&&(e.stringifiedReflected=Object.assign(Object.create(null),e.stringifiedReflected)),e?.stringifiedNonReflected!==void 0&&(e.stringifiedNonReflected=Object.assign(Object.create(null),e.stringifiedNonReflected))}var Tn=new Set(["itemScope"]),xt=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"]),Si=new Set(["area","base","br","col","command","embed","hr","img","input","keygen","link","meta","param","source","track","wbr"]),Ae=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"]),vi=new Set(["title","svg","a","script","style"]),De=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"]),Tt=new Set(["annotation-xml","color-profile","font-face","font-face-src","font-face-uri","font-face-format","font-face-name","missing-glyph"]);import{mappedFind as Ei,uncapitalize as wi}from"@arcgis/components-utils";import g from"typescript";function bn(e,t,n){if(Fe(e))return e;{n===void 0&&t.neededImports.add("nothing");let r=t.importRenames.nothing;return g.factory.createParenthesizedExpression(g.factory.createBinaryExpression(g.factory.createParenthesizedExpression(e),g.factory.createToken(g.SyntaxKind.QuestionQuestionToken),typeof n=="string"?g.factory.createStringLiteral(n):g.factory.createIdentifier(r)))}}function Fe(e){return typeof e=="string"||cl.has(e.kind)||g.isConditionalExpression(e)&&Fe(e.whenTrue)&&Fe(e.whenFalse)||g.isBinaryExpression(e)&&(dl.has(e.operatorToken.kind)||Fe(e.left)&&Fe(e.right))||(g.isParenthesizedExpression(e)||g.isSatisfiesExpression(e)||g.isAsExpression(e))&&Fe(e.expression)||g.isTaggedTemplateExpression(e)&&g.isIdentifier(e.tag)&&hi.has(e.tag.text)}var cl=new Set([g.SyntaxKind.NumericLiteral,g.SyntaxKind.BigIntLiteral,g.SyntaxKind.StringLiteral,g.SyntaxKind.RegularExpressionLiteral,g.SyntaxKind.NoSubstitutionTemplateLiteral,g.SyntaxKind.FalseKeyword,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]),dl=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 Di={property(e,t,n,r){let i=ml(r,n,e),o=i?.type==="stringifiedReflected",s=i?.type==="reflected"||o;if(s){let m=vn(t);if(m===!0)return[i.name];if(m===!1)return[]}let a=t===void 0?["=",S.factory.createToken(S.SyntaxKind.TrueKeyword)]:bt(e,t,s),p=a[0]!=="=";if(s&&p)return[i.name,...a];let[l,c]=a,d=i?.type==="stringifiedNonReflected";if(o||d){let m=bn(c,e,d?"":void 0),f=n==="value"&&(r==="input"||r==="textarea"||r===he)?fl(m,e):m;if(f!==c)return[d?`.${n}`:i.name,l,f]}return[`.${n}`,...a]},attribute(e,t,n){let r=t===void 0||vn(t);if(r===!0)return[n];if(r===!1)return[];let i=bt(e,t,!0),s=i[0]!=="="?i:[i[0],bn(i[1],e)];return[n,...s]},booleanAttribute(e,t,n){let r=t===void 0||vn(t);return r===!0?[n]:r===!1?[]:[`?${n}`,...bt(e,t,!1)]},event(e,t,n){if(t===void 0||!S.isJsxExpression(t)||t.expression===void 0)throw new Error(`Event prop value must be an expression. Found ${String(t?.getText(e.sourceFile))}`);let r=n.slice(2),i=wi(r);return[`@${xt.has(i)?r.toLowerCase():Ti?wi(r):r}=`,...St(e,t,void 0)]},directives(e,t){if(t===void 0||!S.isJsxExpression(t))throw new Error(`Directives prop must be an expression. Found ${String(t?.getText(e.sourceFile))}`);if(t.expression===void 0||!S.isArrayLiteralExpression(t.expression))throw new Error(`Directives prop must be an array rather than a variable or ternary expression. Still, the following are allowed: directives={[directiveA, condition ? a : b, c()]}. Found ${String(t.expression?.getText(e.sourceFile))}`);return t.expression.elements.flatMap(i=>{if(S.isSpreadElement(i))throw new Error(`Directives prop cannot contain a spread argument - it needs to be statically analyzable. Still, the following are allowed: directives={[directiveA, condition ? a : b, c()]}. Found ${String(t.expression?.getText(e.sourceFile))}`);return V(e,void 0,i)})},ref(e,t){e.neededImports.add("ref");let n=e.importRenames.ref;if(t===void 0||!S.isJsxExpression(t)||t.expression===void 0)throw new Error(`ref prop value must be an expression. Found ${String(t?.getText(e.sourceFile))}`);return[S.factory.createCallExpression(S.factory.createIdentifier(n),void 0,[V(e,void 0,t.expression)])]},class:Ai,style:Ai,key:(e,t)=>[Ue(t,e.sourceFile)]};function ml(e,t,n){if(typeof e=="string"){let o=(n.externalComponents[e]??n.localComponents[e])?.propToAttribute?.[t];if(o!==void 0)return{name:o,type:"reflected"}}let r=Sn(W.common,t);if(r!==void 0)return r;if(typeof e=="string"){let i=Sn(W.perElement[e],t);if(i!==void 0)return i}else{let i=Object.values(W.perElement).map(s=>Sn(s,t)),o=Ei(i,s=>s?.type==="stringifiedNonReflected"?s:void 0)??Ei(i,s=>s?.type==="stringifiedReflected"?s:void 0);if(o!==void 0)return o}}function Sn(e,t){let n=e?.reflected?.[t];if(n!==void 0)return{name:n,type:"reflected"};let r=e?.stringifiedReflected?.[t];if(r!==void 0)return{name:r,type:"stringifiedReflected"};let i=e?.stringifiedNonReflected?.[t];if(i!==void 0)return{name:i,type:"stringifiedNonReflected"}}function Ue(e,t){if(e!==void 0&&S.isJsxExpression(e)&&e.expression!==void 0)return e.expression;if(e!==void 0&&S.isStringLiteral(e))return e;throw new Error(`key prop value must be an expression. Found ${String(e?.getText(t))}`)}function vn(e){if(e===void 0)return!0;if(S.isJsxExpression(e)){if(e.expression?.kind===S.SyntaxKind.TrueKeyword||e.expression===void 0)return!0;if(e.expression?.kind===S.SyntaxKind.FalseKeyword)return!1}}function bt(e,t,n=!1){if(Pe(t))throw new Error(`Invalid JSX syntax detected or there is a bug in Lumina. Found ${t.getText(e.sourceFile)}. Expected JSX attribute value to be wrapped in { }`);if(S.isStringLiteral(t))return Pi(t,n);if(S.isJsxExpression(t)&&t.expression){if(S.isStringLiteral(t.expression))return Pi(t.expression,n);if(n){if(S.isNumericLiteral(t.expression))return[`=${t.expression.text}`];if(S.isPrefixUnaryExpression(t.expression)&&S.isNumericLiteral(t.expression.operand))return[`=${t.expression.getText(e.sourceFile)}`]}}return["=",...St(e,t,void 0)]}function Pi(e,t){if(!t)return["=",e];let n=e.text;if(n.length===0)return[];let r=it(n);if(Ar(r)){let i=r.replaceAll('"',"&#34;");if(i.length>r.length){let o=r.replaceAll("'","&#39;");if(o.length<i.length)return[`='${o}'`]}return[`="${i}"`]}else return[`=${r}`]}function Ai(e,t,n){if(t!==void 0&&S.isStringLiteral(t))return[`${n}="${t.text}"`];if(t===void 0||!S.isJsxExpression(t)||t.expression===void 0)throw new Error(`${n} prop value must be an expression. Found ${String(t?.getText(e.sourceFile))}`);let r=t.expression;if(ul(r)){let o=n==="class"?"safeClassMap":"safeStyleMap";e.neededImports.add(o);let s=e.importRenames[o],a=S.factory.createCallExpression(S.factory.createIdentifier(s),void 0,[V(e,void 0,r)]);return[`${n}=`,a]}else return[n,...bt(e,t,!0)]}var ul=e=>S.isObjectLiteralExpression(e)||S.isPropertyAccessExpression(e)||S.isIdentifier(e)||S.isCallExpression(e)||S.isBinaryExpression(e)||S.isConditionalExpression(e);function fl(e,t){t.neededImports.add("live");let n=t.importRenames.live;return S.factory.createCallExpression(S.factory.createIdentifier(n),void 0,[typeof e=="string"?S.factory.createStringLiteral(e):e])}import Ve from"typescript";function ki(e){if(e&&Ve.isJsxExpression(e)&&e.expression&&Ve.isCallExpression(e.expression)&&Ve.isIdentifier(e.expression.expression)&&e.expression.expression.text in Fi&&e.expression.arguments.length<=1)return{propType:Fi[e.expression.expression.text],initializer:Ve.factory.createJsxExpression(void 0,e.expression.arguments[0])}}var Fi={bindProperty:"property",bindAttribute:"attribute",bindBooleanAttribute:"booleanAttribute",bindEvent:"event"};function Ii(e,t,n){return gl.has(e)?e:e.startsWith("on")&&t!==void 0&&Ve.isJsxExpression(t)&&t.expression!==void 0?"event":(ht.has(e)||e.includes("-"))&&(e!=="itemId"||n!=="arcgis-map"&&n!=="arcgis-scene")?"attribute":!(typeof n=="string"&&n.includes("-")&&!Tt.has(n))&&(Ct.has(e)||(n===Ke?!1:n===he?Object.values(_e).some(s=>s.has(e)):_e[n]?.has(e)===!0))?Tn.has(e)?"booleanAttribute":"attribute":n==="svg"||n==="math"||n===Ke||n!==he&&(Ae.has(n)||De.has(n))?e in W.common.reflected||e in W.common.stringifiedReflected||e in W.common.stringifiedNonReflected?"property":Tn.has(e)?"booleanAttribute":"attribute":"property"}var yl=["class","style","ref","directives","key"],gl=new Set(yl);import H from"typescript";var Ni=e=>typeof e!="string"||e.trim().length>0;function ze({key:e,parts:t,litTag:n},r){let i=hl(t);if(i.length%2===0)throw new Error("Normalized template parts array length must be odd");let[o,...s]=i;if(typeof o!="string")throw new Error("First normalized template part must be a string");if(n===void 0){if(s.length===0)return En(r,e,H.factory.createStringLiteral(o));if(o===""&&s.length===2&&s[1]==="")return En(r,e,typeof s[0]=="string"?H.factory.createStringLiteral(o):s[0])}let a=typeof n=="string"?n:Q;r.neededImports.add(a);let p=r.importRenames[a],l=ue(o),c=H.factory.createTaggedTemplateExpression(H.factory.createIdentifier(p),void 0,s.length===0?H.factory.createNoSubstitutionTemplateLiteral(l,l):H.factory.createTemplateExpression(H.factory.createTemplateHead(l,l),Cl(s)));return En(r,e,c)}var hl=e=>e.reduce((t,n,r)=>{let i=t.at(-1),o=typeof i=="string",s=typeof n=="string";if(o&&s)return[...t.slice(0,-1),`${i}${n}`];let p=r===e.length-1;return!s&&p?[...t,n,""]:!s&&!p?[...t,n,""]:[...t,n]},[""]);function Cl(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,i)=>{let o=i*2,s=e[o];if(typeof s=="string")throw new Error("Expected to receive a normalized array of parts");let a=o+1,p=e[a];if(typeof p!="string")throw new Error("Expected to receive a normalized array of parts");let l=i===n-1,c=ue(p);return H.factory.createTemplateSpan(s,l?H.factory.createTemplateTail(c,c):H.factory.createTemplateMiddle(c,c))})}function En(e,t,n){if(t===void 0)return n;e.neededImports.add("keyed");let r=e.importRenames.keyed;return H.factory.createCallExpression(H.factory.createIdentifier(r),void 0,[t,n])}import Pn from"typescript";var An=(e,t)=>e.getFullText(t.sourceFile).slice(0,e.getLeadingTriviaWidth(t.sourceFile));function Dn(e,t){let n=vt(e);return n.length===0?t:Pn.setSyntheticLeadingComments(t,n.map(r=>({...r,pos:-1,end:-1,text:$i(e.slice(r.pos,r.end))})))}var vt=e=>e.trim().length===0?[]:Pn.getLeadingCommentRanges(e,0)??[];function Li(e){let t=vt(e);if(t.length===0)return[e||" "];let n=t.reduceRight(([i,...o],s)=>{let a=ue($i(wn(i).slice(s.pos,s.end)));return[wn(i).slice(0,s.pos),Pn.factory.createNoSubstitutionTemplateLiteral(a,a),wn(i).slice(s.end),...o]},[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 $i=e=>e.startsWith("//")?e.slice(2):e.slice(2,-2);function wn(e){if(typeof e=="string")return e;throw new Error(`Expected string, got ${typeof e}: ${String(e)}`)}import{isNotUndefined as Dl}from"@arcgis/components-utils";import C from"typescript";import{mappedFind as xl}from"@arcgis/components-utils";import{toSystemPathSeparators as Tl}from"@arcgis/components-build-utils";function Mi(e,t){if(!(C.isPropertyAccessExpression(t.expression)&&t.expression.name.text==="map"))return t;let r=t.arguments[0];if(!(t.arguments.length===1&&C.isArrowFunction(r)))return t;let o=r.parameters.at(0);if(!(typeof o=="object"&&r.parameters.length<=2))return t;let a=ke(r.body),p=!0,l;if(Ri(a))l=a;else{if(!C.isBlock(a))return t;let y=a.statements.at(-1);if(!(y&&C.isReturnStatement(y)&&y.expression))return t;let E=ke(y.expression);if(!Ri(E))return t;let b=a.statements.slice(0,-1);if(b.some(Ji))return t;p=b.length===0,l=E}let c=C.isJsxElement(l)?l.openingElement:l,d=kn(c);if(d===-1)return t;let m=c.attributes.properties[d];if(m===void 0||!C.isJsxAttribute(m))return t;let u=Ue(m.initializer,e.sourceFile),f=bl(o,r,u,p,e);if(f===void 0)return t;e.liftedKeys.add(m.name),e.neededImports.add("repeat");let h=e.importRenames.repeat;return C.factory.updateCallExpression(t,C.factory.createIdentifier(h),t.typeArguments,[t.expression.expression,C.factory.createArrowFunction(void 0,void 0,[f],void 0,void 0,u),C.factory.updateArrowFunction(r,r.modifiers,r.typeParameters,r.parameters,r.type,r.equalsGreaterThanToken,a)])}var Ri=e=>C.isJsxElement(e)||C.isJsxSelfClosingElement(e);function Ji(e){if(C.isReturnStatement(e))return!0;let t=!1;return C.visitEachChild(e,n=>(t||=Ji(n),n),void 0),t}function bl(e,t,n,r,i){let o=Y(n);if(o===void 0)return;let s=ji(e.name,o),a=t.parameters.at(1);if(a!==void 0&&C.isIdentifier(a.name)&&o.every(Et,a.name)){console.warn(`It looks like you are trying to use .map() index as a key={} prop value in ${Tl(i.sourceFile.fileName)}. Doing so is potentially pointless and may cause performance degradation. In Lit it is safe to omit the key={} prop. If you really mean to use index as the key, then use the keyed() Lit directive directly, rather than the JSX key={} prop.`);return}if(!r){let p=vl(o,s,t);if(p===void 0)return;s=p}return C.factory.updateParameterDeclaration(e,e.modifiers,e.dotDotDotToken,s,e.questionToken,e.type,e.initializer)}function Y(e){if(C.isIdentifier(e))return[e.text];if(C.isPropertyAccessExpression(e))return Y(e.expression);if(C.isElementAccessExpression(e))return Y(e.argumentExpression);if(C.isConditionalExpression(e)){let t=Y(e.condition),n=Y(e.whenTrue),r=Y(e.whenFalse);return t===void 0||n===void 0||r===void 0?void 0:[...t,...n,...r]}else if(C.isBinaryExpression(e)){let t=Y(e.left),n=Y(e.right);return t===void 0||n===void 0?void 0:[...t,...n]}else{if(Sl.has(e.kind))return[];{let t=ke(e);return t!==e?Y(t):void 0}}}var Sl=new Set([C.SyntaxKind.NumericLiteral,C.SyntaxKind.BigIntLiteral,C.SyntaxKind.StringLiteral,C.SyntaxKind.RegularExpressionLiteral,C.SyntaxKind.NoSubstitutionTemplateLiteral,C.SyntaxKind.FalseKeyword,C.SyntaxKind.NullKeyword,C.SyntaxKind.TrueKeyword]),ke=e=>C.isAsExpression(e)||C.isNonNullExpression(e)||C.isSatisfiesExpression(e)||C.isParenthesizedExpression(e)?ke(e.expression):e,ji=(e,t)=>C.isObjectBindingPattern(e)?Pl(e,t):e;function vl(e,t,n){if(e.every(Et,t))return t;if(C.isIdentifier(t)){let r=C.isBlock(n.body)?xl(n.body.statements,o=>El(o,t)):void 0;if(r===void 0)return;let i=ji(r,e);if(e.every(Et,i))return i}}function El(e,t){if(!C.isVariableStatement(e)||!(e.declarationList.flags&C.NodeFlags.Const))return;let n=e.declarationList.declarations[0];return n?.initializer&&C.isIdentifier(n.initializer)&&n.initializer.text===t.text?n.name:void 0}function Et(e){let t=this;return C.isIdentifier(t)?t.text===e:t.elements.some(wl,e)}function wl(e){let t=this;return C.isOmittedExpression(e)?!1:Et.call(e.name,t)}function Pl(e,t){let n=!1,r=e.elements.filter(i=>C.isIdentifier(i.name)?t.includes(i.name.text):(n=!0,!0));return n||r.length===0?e:C.factory.updateObjectBindingPattern(e,r)}var Fn=(e,t)=>t.liftedKeys.has(e);import{toSystemPathSeparators as wt}from"@arcgis/components-build-utils";var Bi=e=>e.apiJsonComponents.map(({name:t,importPath:n})=>`import type { ${t} } from "./${n}";`).join(`
50
+ `),Al=/^[a-zA-Z_$][a-zA-Z\d_$]*$/u,Ce=e=>!Al.test(e),z=e=>Ce(e)?`"${e}"`:e;function pe(e,t){let n=[],r=[],i=!1;t?.forEach(c=>{if(c.kind!=="field"||c.readonly)return;let d=c;if(d.getterTypeDiffers){i=!0;return}d.docsTags?.some(u=>u.name==="required")?n.push(c.name):r.push(c.name)});let o=Oi(n),s=Oi(r),a=[o?`Required<Pick<${e}, ${o}>>`:"",s?`Partial<Pick<${e}, ${s}>>`:"",i?`${e}SetterTypes`:""],p=i?`
51
+ type ${e}SetterTypes = ${e}["${Vt}"]`:"",l=a.filter(Boolean).join(", ");return[l.length===0?"":`${l}, `,p]}var Oi=e=>e.map(t=>`'${t}'`).join(" | ");function V(e,t,n){if(Pe(n))return Wi(e,n);let r=x.isCallExpression(n)?Mi(e,n):n,i=x.visitEachChild(r,V.bind(null,e,t!==void 0&&x.isBinaryExpression(t)?void 0:n),e.transformationContext);return t!==void 0&&x.isBinaryExpression(n)&&(x.isJsxExpression(t)||Pe(ke(n.right)))?Il(i):i}function Wi(e,t){let n=Hi(e,t);return ze(n,e)}function Hi(e,t){let n="children"in t?t.children:[];if(x.isJsxFragment(t))return{key:void 0,...Pt(n,e)};let i=x.isJsxElement(t)?t.openingElement:t,o=i.tagName;if(x.isJsxNamespacedName(o)){let E=wt(e.sourceFile.fileName);throw new Error(`JSX namespaced elements are not supported. Found ${o.getText(e.sourceFile)} in "${E}"`)}if(!x.isIdentifier(o)||!o.text.startsWith(o.text[0].toLowerCase())&&o.text!==yt&&o.text!==gt){let b=x.isIdentifier(o)&&o.text===xi?Pt(n,e):{litTag:void 0,parts:[kl(e,t,o,n)]};return{key:Fl(i,e),...b}}let a=o.text===yt?he:o.text===gt?Ke:o.text,p=o.text===yt?se:o.text===gt?X:vi.has(a)?hn:Ae.has(a)?ae:Q,l;typeof a=="string"&&a.includes("-")&&!Tt.has(a)&&(e.customElementsToImport.add(a),e.compiler.viteCommand==="build"&&(l=Nl(e,a)));let c,d=[],m=i.attributes.properties.flatMap(E=>{if(x.isJsxSpreadAttribute(E))throw new Error(`JSX spread attribute syntax is not supported. See alternatives: https://qawebgis.esri.com/components/lumina/jsx#spread-attributes
52
+ Found ${E.getText(e.sourceFile)}`);let{name:b,initializer:R}=E;if(x.isJsxNamespacedName(b)){let Je=wt(e.sourceFile.fileName);throw new Error(`JSX namespaced attributes are not supported. Found ${b.getText(e.sourceFile)} in "${Je}"`)}let j=b.text,Bt=ki(R),me=Bt?.propType??Ii(j,R,a);l?.delete(j);let Z=Di[me](e,Bt?.initializer??R,j,a);if(Z.length===0)return[];let Me=e.compiler.shouldMinifyJsx?" ":Li(An(b,e));return me==="key"?(c=typeof Z[0]=="object"&&!Fn(b,e)?Z[0]:void 0,Array.isArray(Me)&&Me.some(Ni)?Me:[]):me==="directives"||me==="ref"?(d.push(...Me,...Z.flatMap((Je,Xn)=>typeof Je=="string"||Xn===0||typeof Z[Xn-1]=="string"?Je:[" ",Je])),[]):[...Me,...Z]});if(l!==void 0&&l.size>0&&e.compiler.logLintError("mustIncludeAllRequiredProperties",e.sourceFile.fileName,`Missing required properties for <${a}> in ${e.sourceFile.fileName.slice(e.compiler.dir.root.length)}: ${Array.from(l).join(", ")}`),d.length>0&&m.push(...d),typeof a=="string"&&De.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 u=typeof a=="string"&&Si.has(a),f=Pt(n,e);if(u&&f.parts.length>0){let E=wt(e.sourceFile.fileName);throw new Error(`Void HTML elements like <${a}> cannot have children. Found ${t.getText(e.sourceFile)} in "${E}"`)}let h=(p===ae||p===X)&&f.parts.length===0,y=["<",typeof a=="string"?a:o,...m,h?`${m.length===0?"":" "}/>`:">"],T=u||h?y:[...y,...f.litTag!==void 0&&f.litTag!==p?[ze({key:void 0,...f},e)]:f.parts,"</",typeof a=="string"?a:o,">"];return{key:c,parts:T,litTag:p}}function Fl(e,t){let n=e.attributes.properties[kn(e)];return n&&x.isJsxAttribute(n)&&!Fn(n.name,t)?Ue(n.initializer,t.sourceFile):void 0}var kn=e=>e.attributes.properties.findIndex(({name:t})=>t&&x.isIdentifier(t)&&t.text==="key");function kl(e,t,n,r){let o=(x.isJsxElement(t)?t.openingElement:t).attributes.properties.map(p=>{if(x.isJsxSpreadAttribute(p))return Dn(An(p,e),x.factory.createSpreadAssignment(p.expression));let{name:l,initializer:c}=p;if(x.isJsxNamespacedName(l)){let u=wt(e.sourceFile.fileName);throw new Error(`JSX namespaced attributes are not supported. Found ${l.getText(e.sourceFile)} in "${u}"`)}if(l.text==="key")return;let d=c===void 0?x.factory.createTrue():x.isStringLiteral(c)?c:Pe(c)?Wi(e,c):V(e,void 0,c.expression??x.factory.createIdentifier("undefined")),m=Ce(l.text)?x.factory.createStringLiteral(l.text):l;return x.factory.createPropertyAssignment(m,d)}),{parts:s,litTag:a}=Pt(r,e);return s.length>0&&o.push(x.factory.createPropertyAssignment(x.factory.createIdentifier("children"),ze({key:void 0,parts:s,litTag:a},e))),x.factory.createCallExpression(n,void 0,[x.factory.createObjectLiteralExpression(o.filter(Dl))])}function Pt(e,t){let n,r=e.flatMap(i=>{if(x.isJsxText(i))return[t.compiler.shouldMinifyJsx?Pr(i.text):i.text];if(x.isJsxExpression(i))return St(t,i,i);{let o=Hi(t,i);if(o.key===void 0&&o.litTag!==se&&o.litTag!==X){if(o.litTag===hn)return o.parts;if(n!==void 0&&o.litTag!==void 0&&n!==o.litTag)throw new Error(`Unexpectedly found both ${n} and ${o.litTag} child elements inside the same element.`);return n=o.litTag,o.parts}else return[ze(o,t)]}});return{litTag:n,parts:r}}function Il(e){return e.operatorToken.kind===x.SyntaxKind.AmpersandAmpersandToken?x.factory.createBinaryExpression(e,x.factory.createToken(x.SyntaxKind.BarBarToken),x.factory.createStringLiteral("")):e}function St(e,t,n){if(t.expression===void 0){if(e.compiler.shouldMinifyJsx)return[];let r=t.getText(e.sourceFile).slice(1,-1);return vt(r).length===0?[]:[Dn(r,x.factory.createIdentifier("undefined"))]}return x.isStringLiteral(t.expression)?[it(t.expression.text)]:e.compiler.viteCommand==="serve"&&e.compiler.typeScriptConfig.sourceMap&&!e.compiler.shouldMinifyJsx&&x.isArrowFunction(t.expression)&&!x.isBlock(t.expression.body)?[V(e,n,x.factory.updateArrowFunction(t.expression,t.expression.modifiers,t.expression.typeParameters,t.expression.parameters,t.expression.type,t.expression.equalsGreaterThanToken,x.factory.createBlock([x.factory.createReturnStatement(t.expression.body)],!0)))]:[V(e,n,t.expression)]}function Nl(e,t){if(t in e.localComponents)for(let r of e.compiler.privateApiJson.modules)for(let i of r.declarations){if(!("customElement"in i)||i.tagName!==t)continue;let o=new Set;for(let s of i.members)s.kind==="field"&&s.docsTags?.some(a=>a.name==="required")===!0&&o.add(s.name);return o}}import k from"typescript";import{path as In}from"@arcgis/components-build-utils";var Ki=e=>e.reduce((t,[n,r])=>(t[n]??=[],t[n].push(r),t),{}),qe={[Q]:["lit-html","lit/html.js","lit"],[se]:["lit-html/static.js","lit/static-html.js"],[ae]:["lit-html","lit/html.js","lit"],[X]:["lit-html/static.js","lit/static-html.js"],[xn]:["lit-html","lit/html.js","lit"],[Cn]:["@lit/reactive-element/css-tag.js","@lit/reactive-element","lit"],safeClassMap:["@arcgis/lumina"],safeStyleMap:["@arcgis/lumina"],keyed:["lit-html/directives/keyed.js","lit/directives/keyed.js"],live:["lit-html/directives/live.js","lit/directives/live.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"]},_i=Ki(Object.entries(qe).flatMap(([e,t])=>t.map(n=>[n,e]))),At=new Set(Object.keys(_i));function Ui(e,t){let n=t.importClause,r=t.moduleSpecifier;if(!k.isStringLiteral(r))return t;let i=Ll(e.sourceFile.fileName,r.text,""),o=!n?.isTypeOnly;if(o&&e.existingImportedModules.add(i),n===void 0)return t;if(e.isInLightDomComponent&&r.text.startsWith(".")&&ve.test(r.text)&&!r.text.includes("?"))return k.factory.updateImportDeclaration(t,t.modifiers,n,k.factory.createStringLiteral(r.text+B),t.attributes);if(n.name!==void 0){let p=n.name.text,l=n.name.text.startsWith(p[0].toUpperCase()),c=In.isAbsolute(i);o&&!n.isTypeOnly&&l&&c&&e.importedFunctionComponentsFromModules.add(i)}let s=n.namedBindings;if(s===void 0||!k.isNamedImports(s))return t;let a=At.has(r.text);return s.elements.forEach(p=>{let l=(p.propertyName??p.name).text,c=qe[l];if(a){if(c?.some(u=>u===r.text)){let u=Vi(l,i);e.existingLitImports.add(u),e.importRenames[u]=p.name?.text??u}}else(p.name.text==="h"||p.name.text==="createElement")&&(e.hasNonLuminaJsxImport=!0);let d=l.startsWith(l[0].toUpperCase()),m=In.isAbsolute(i);o&&!p.isTypeOnly&&d&&m&&e.importedFunctionComponentsFromModules.add(i)}),t}var Vi=(e,t)=>e===Q&&qe.staticHtml.includes(t)?se:e===ae&&qe.staticSvg.includes(t)?X:e,Ll=(e,t,n)=>t.startsWith(".")?In.resolve(e,"..",`${t}${n}`):t;function zi(e){return k.isImportDeclaration(e)?$l(this,e):e}function $l(e,t){let n=t.importClause,r=n?.namedBindings,i=t.moduleSpecifier;if(!k.isStringLiteral(i)||!r||!k.isNamedImports(r)||!At.has(i.text))return t;let o=n.isTypeOnly,s=!1,a=r.elements.map(p=>{let l=(p.propertyName??p.name).text,c=Vi(l,i.text);return e.neededImports.has(c)?(e.existingLitImports.delete(c),e.neededImports.delete(c),s=!0,k.factory.updateImportSpecifier(p,!1,p.propertyName,p.name)):o?k.factory.updateImportSpecifier(p,!0,p.propertyName,p.name):p});return _i[i.text]?.forEach(p=>{!e.neededImports.has(p)||e.existingLitImports.has(p)||(e.neededImports.delete(p),s=!0,a.push(Gi(p,e)))}),s?k.factory.updateImportDeclaration(t,t.modifiers,k.factory.updateImportClause(n,!1,n.name,k.factory.updateNamedImports(r,a)),t.moduleSpecifier,t.attributes):t}function qi(e){let t=Ki(Array.from(e.neededImports,n=>[qe[n][0],n]));return Object.entries(t).map(([n,r])=>k.factory.createImportDeclaration(void 0,k.factory.createImportClause(!1,void 0,k.factory.createNamedImports(r.map(i=>(e.neededImports.delete(i),Gi(i,e))))),k.factory.createStringLiteral(n)))}function Gi(e,t){let n=e===se?Q:e===X?ae:e,r=t.importRenames[e];return r===n?k.factory.createImportSpecifier(!1,void 0,k.factory.createIdentifier(n)):k.factory.createImportSpecifier(!1,k.factory.createIdentifier(n),k.factory.createIdentifier(r))}import{path as Rl,toSystemPathSeparators as Ml}from"@arcgis/components-build-utils";function Xi(e){let t=yi().map(({packageName:n})=>n);return e.existingImportedModules.forEach(n=>{if(Rl.isAbsolute(n))return;let{packageName:r,moduleName:i}=en(n);if(t.includes(r??"")&&(i.startsWith("dist/components")||i.startsWith("components"))){let o=Ml(e.sourceFile.fileName);throw new Error(`Did not expect to find any explicit imports for "${n}". Found import in ${o}. 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 Qi(e){if(e.compiler.viteCommand==="serve")return e.customElementsToImport.clear(),[];let t=e.compiler._customElementDependencies;return 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)}),[]}import{path as Jl,toSystemPathSeparators as jl}from"@arcgis/components-build-utils";function Yi(e,t,n){let r=ft()[t]??Nn(e)[t];if(r===void 0){let i=jl(n);throw new Error(`Unable to resolve the definition of the "${t}" custom element. Used in ${i}. If this is coming from an external package, make sure that package is installed as a peerDependency or a dependency. 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 Zi(e,t){return e.packageName===void 0?q(t,e.moduleName):Jl.join(e.packageName,e.moduleName)}function Nn(e){return e._localDefinedComponents??=yn(e.privateApiJson,{packageName:void 0,getImportPath(){throw new Error("Not supposed to be called for local components")}}),e._localDefinedComponents}var eo=(e,t)=>{let n=e.pragmas;if(n?.has("jsx")===!0||n?.has("jsxImportSource")===!0)return e.statements;let r={compiler:t.compiler,externalComponents:ft(),localComponents:t.compiler.isInPuppeteerTestBackEnd?{}:Nn(t.compiler),sourceFile:e,transformationContext:t.transformation,importRenames:Bl(e),existingImportedModules:new Set,importedFunctionComponentsFromModules:new Set,existingLitImports:new Set,customElementsToImport:new Set,neededImports:new Set,liftedKeys:new Set,hasNonLuminaJsxImport:!1,isInLightDomComponent:t.apiModule?.declarations.some(s=>"customElement"in s&&s.encapsulation!==void 0)??!1},i=[];if(e.statements.every(s=>{if(Ol.isImportDeclaration(s)){if(i.push(Ui(r,s)),r.hasNonLuminaJsxImport)return!1}else i.push(V(r,void 0,s));return!0}),r.hasNonLuminaJsxImport)return e.statements;if(r.neededImports.size>0&&(i=i.map(zi,r),r.existingLitImports.size>0))throw new Error(`Expected context.existingLitImports to be empty by now. Found: ${Array.from(r.existingLitImports).join(", ")}`);let o=[qi,Xi,Qi].flatMap(s=>s(r));if(r.neededImports.size>0)throw new Error(`Expected context.neededLitImports to be empty by now. Found: ${Array.from(r.neededImports).join(", ")}`);return[...o,...i]};function Bl(e){return Wl(e),Object.fromEntries(Ci.map(t=>[t,e.identifiers.has(t)?`${t}$jsx`:t]))}function Wl(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 I from"typescript";import M from"typescript";import{PropertyFlags as le}from"@arcgis/lumina/config";function to(e,t,n){return t.size===0?e:[M.factory.createPropertyDeclaration([M.factory.createModifier(M.SyntaxKind.StaticKeyword),M.factory.createModifier(M.SyntaxKind.OverrideKeyword)],"properties",void 0,void 0,M.factory.createObjectLiteralExpression(Array.from(t.entries()).map(([r,i])=>M.factory.createPropertyAssignment(Ce(r)?M.factory.createStringLiteral(r):r,Hl(i,n))))),...e]}function Hl(e,t){let n=0,r=!0,i=e.properties.filter(a=>{if(!M.isPropertyAssignment(a)||!M.isIdentifier(a.name))return!0;let p=a.name.text,l=a.initializer,c=l.kind===M.SyntaxKind.TrueKeyword,d=l.kind===M.SyntaxKind.FalseKeyword;if(p==="attribute")return r=!1,n|=c?le.ATTRIBUTE:0,!c&&!d;if(p==="reflect")return n|=c?le.REFLECT:0,!1;if(p==="type"&&M.isIdentifier(l)){if(l.text==="Boolean")return n|=le.BOOLEAN,!1;if(l.text==="Number")return n|=le.NUMBER,!1}else{if(p==="state")return r=!1,n|=c?le.STATE:0,!1;if(p==="readOnly")return n|=c?le.READ_ONLY:0,!1;p==="noAccessor"&&(n|=c?le.NO_ACCESSOR:0)}return!0});r&&(n|=le.ATTRIBUTE);let o=t?i:e.properties,s=M.factory.createNumericLiteral(n);return o.length===0?s:M.factory.createArrayLiteralExpression([s,M.factory.createObjectLiteralExpression(o)])}import{identity as zl}from"@arcgis/components-utils";import J from"typescript";import N from"typescript";function no(e,t,n,r,i){let o=-1,s=-1,a=-1;t.options?.properties.forEach((m,u)=>{if(N.isSpreadAssignment(m))throw new Error(`Spread property assignment is not allowed in @property() as that is not statically analyzable. Found ${m.getText(r)}`);if(N.isIdentifier(m.name)){let f=m.name.text;f==="type"?o=u:f==="attribute"?s=u:f==="readOnly"&&(a=u)}});let p=i?.attribute===void 0&&s===-1,l=i?.readonly===!0&&i.docsOnlyReadonly!==!0&&a===-1,c=Kl(e,t,n,i,o),d=[...p?[N.factory.createPropertyAssignment("attribute",N.factory.createFalse())]:[],...l?[N.factory.createPropertyAssignment("readOnly",N.factory.createTrue())]:[],...c!==void 0?[c]:[]];return d.length>0?t.options===void 0?N.factory.createObjectLiteralExpression(d,!1):N.factory.updateObjectLiteralExpression(t.options,[...t.options.properties,...d]):t.options}function Kl(e,t,n,r,i){if(r?.attribute===void 0)return;let o=Ul(e),s=n.compiler.viteCommand==="serve"||o!=="Other"?o:_l(r.type.values);return s==="Other"||r.readonly&&(s!=="Boolean"||!r.reflects)||t.options?.properties[i]!==void 0?void 0:N.factory.createPropertyAssignment(N.factory.createIdentifier("type"),N.factory.createIdentifier(s))}function _l(e){let t=!1,n=!1,r=!1;if(e?.forEach(i=>{t||=i.type==="number",n||=i.type==="boolean",r||=i.type==="string"||i.type==="any"||i.type==="unknown"}),r||=t&&n,!r){if(t)return"Number";if(n)return"Boolean"}return"Other"}function Ul(e){let t=e.type??(N.isSetAccessor(e)?e.parameters[0].type:void 0);if(t===void 0){if("initializer"in e&&e.initializer!==void 0){if(N.isNumericLiteral(e.initializer)||N.isPrefixUnaryExpression(e.initializer)&&e.initializer.operator===N.SyntaxKind.MinusToken&&N.isNumericLiteral(e.initializer.operand))return"Number";if(e.initializer.kind===N.SyntaxKind.FalseKeyword||e.initializer.kind===N.SyntaxKind.TrueKeyword)return"Boolean"}}else{if(t.kind===N.SyntaxKind.NumberKeyword)return"Number";if(t.kind===N.SyntaxKind.BooleanKeyword)return"Boolean"}return"Other"}import{getMemberName as oo}from"@arcgis/api-extractor";function so(e,t,n,r,i){if(t.modifiers===void 0)return t;let o=-1,s=-1;if(t.modifiers.forEach((a,p)=>{if(J.isDecorator(a)&&J.isCallExpression(a.expression)&&J.isIdentifier(a.expression.expression)){let l=a.expression.expression.text;l==="property"&&(o=p),l==="state"&&(s=p)}}),o!==-1){let a=Vl(e,t,n,r),p=ro(t,o,r),l=no(t,p,e,r,a),c=!1;return i!==void 0&&a&&(i.set(a.name,l??J.factory.createObjectLiteralExpression()),c=!0),p.options=l,io(t,p,o,c)}else if(s!==-1&&i!==void 0){let a=ro(t,s,r),p=J.factory.createPropertyAssignment("state",J.factory.createTrue()),l=a.options===void 0?J.factory.createObjectLiteralExpression([p]):J.factory.updateObjectLiteralExpression(a.options,[...a.options.properties,p]),c=oo(t.name);if(c===void 0)throw new Error("Failed to statically determine the state property name");return i.set(c,l),io(t,a,s,!0)}else return t}function Vl(e,t,n,r){let i=e.apiModule?.declarations.find(s=>s.name===n)??(e.compiler.isInTest?{name:"",members:[]}:void 0);if(i===void 0)return;let o=lr(i,t)??(e.compiler.isInTest?{kind:"field",attribute:"",readonly:!1,name:"",type:{text:""}}:void 0);if(!(o===void 0||o.kind!=="field")){if(o.name===""){let s=oo(t.name);if(s===void 0)throw new Error(`Failed to statically determine the property name: ${t.getText(r)}`);o.name=s}return o}}function ro(e,t,n){let r=e.modifiers[t],i=r.expression,o=i.arguments.at(0);if(o&&!J.isObjectLiteralExpression(o))throw new Error(`First argument to @property() or @state() decorator must be an object literal as otherwise it is not statically analyzable. Found ${o.getText(n)}`);return{decorator:r,callExpression:i,options:o}}function io(e,t,n,r){let i=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])),o=[...e.modifiers.slice(0,n),...i===void 0?[]:[i],...e.modifiers.slice(n+1)];return J.isGetAccessorDeclaration(e)?J.factory.updateGetAccessorDeclaration(e,o,e.name,e.parameters,e.type,e.body):J.isSetAccessorDeclaration(e)?J.factory.updateSetAccessorDeclaration(e,o,e.name,e.parameters,e.body):J.factory.updatePropertyDeclaration(e,o,e.name,e.questionToken??e.exclamationToken,e.type,e.initializer)}var ao=(e,t)=>{if(t.apiModule===void 0&&!t.compiler.isInTest)return e.statements;let n;function r(){n=new Map}let i=a=>to(a,n,t.compiler.shouldMinify),o=(a,p)=>Gl(t,a,p,e,n);return e.statements.map(a=>po(o,a,t,r,i))};function po(e,t,n,r,i=zl){if(I.isClassDeclaration(t)&&t.heritageClauses?.some(s=>s.token===I.SyntaxKind.ExtendsKeyword)){let s=!1,a=t.name?.text;r?.();let p=i(t.members.map(c=>{let d=e(c,a);return s||=d!==c,d}));return s?I.factory.updateClassDeclaration(t,t.modifiers,t.name,t.typeParameters,t.heritageClauses,p):t}return n.compiler.isInTest?I.visitEachChild(t,s=>po(e,s,n,r,i),n.transformation):t}var ql=new Set(["connectedCallback","disconnectedCallback"]);function Gl(e,t,n,r,i){if(I.isMethodDeclaration(t)){let o=t.modifiers?.filter(s=>!I.isDecorator(s)||!Xl(s));if(o?.length!==t.modifiers?.length)return I.factory.updateMethodDeclaration(t,o,t.asteriskToken,t.name,t.questionToken,t.typeParameters,t.parameters,t.type,t.body);if("text"in t.name&&ql.has(t.name.text)&&t.body){let s=t.name.text;return t.body.statements.some(p=>I.isExpressionStatement(p)&&I.isCallExpression(p.expression)&&I.isPropertyAccessExpression(p.expression.expression)&&p.expression.expression.expression.kind===I.SyntaxKind.SuperKeyword&&p.expression.expression.name.text===s)?t:I.factory.updateMethodDeclaration(t,t.modifiers,t.asteriskToken,t.name,t.questionToken,t.typeParameters,t.parameters,t.type,I.factory.updateBlock(t.body,[I.factory.createExpressionStatement(I.factory.createCallExpression(I.factory.createPropertyAccessExpression(I.factory.createSuper(),s),void 0,[])),...t.body.statements]))}}return I.isPropertyDeclaration(t)||I.isAccessor(t)?so(e,t,n,r,i):t}var Xl=e=>I.isCallExpression(e.expression)&&I.isIdentifier(e.expression.expression)&&e.expression.expression.text==="method";import{path as mo}from"@arcgis/components-build-utils";var lo="makeRuntime(";function co(e,t){let n=e.indexOf(lo);if(n===-1)throw new Error("Failed to find makeRuntime() function call in src/runtime.ts");let r=n+lo.length,i=t.options.css?.commonStylesPath;return{code:[i===void 0?"":`import commonStyles from "${q(t.dir.src,i)}";`,e.slice(0,r),"{","defaultAssetPath:import.meta.env.BASE_URL,",'hydratedAttribute:"',t.options.css?.hydratedAttribute??nn,'",',i===void 0?"":"commonStyles","}",e.slice(r)].join(""),map:null}}var Yl=[eo,or,ao],uo=e=>({name:"@arcgis/lumina:transformComponents",transform:{order:"pre",async handler(t,n){if(!n.endsWith(".tsx")){if(e.isInTest&&n.endsWith(".ts")&&je(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 co(t,e);return}let r=e.getSourceFile(n,t);await oe;let o=Ql.transform(r,[m=>()=>tt(e,m,r,[...e.options.types?.sourceFileTransformers??[],...Yl])]).transformed[0],s=e._compilerOptionsForPrinter,a=e._typeScriptPrinter,p=s.sourceMap?fe.createSourceMapGenerator(e.typeScriptHost,mo.basename(n),"",mo.dirname(n),s):void 0,l=fe.createTextWriter(fe.getNewLineCharacter(s));a.writeFile(o,l,p);let c=l.getText(),d=p?.toJSON();return{code:c,map:d??null}}}});function fo(e){let t=e.typeScriptConfig;return{...t,declaration:!1,declarationMap:!1,emitDeclarationOnly:!1,sourceMap:t.sourceMap??t.inlineSourceMap,inlineSourceMap:!1,allowSyntheticDefaultImports:!0,suppressOutputPathCheck:!0,noLib:!0,noResolve:!0,skipLibCheck:!0}}function go(e){let t=e.options.types?.tsconfigPath,n=t&&yo.isAbsolute(t)?t:Zl(t??"tsconfig.json");if(n===void 0)throw new Error(`Unable to find ${ec(String(t))} in ${process.cwd()}. Please make sure the file exists, or provide types.tsconfigPath option to useLumina()`);let r=K.readConfigFile(n,K.sys.readFile);if(r.error!==void 0)throw new Error(K.formatDiagnosticsWithColorAndContext([r.error],{getCanonicalFileName:nc,getCurrentDirectory:K.sys.getCurrentDirectory,getNewLine:()=>K.sys.newLine}));let i={...r.config,include:[],files:[],exclude:[]},o=K.parseJsonConfigFileContent(i,K.sys,yo.dirname(n));e.typeScriptConfig=o.options,e.typeScriptConfigPath=n}function Dt(e){let t=e.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=K.ScriptTarget[t].toLowerCase();return n==="latest"?"esnext":n}function ho(e,t){if(e.isInStorybook&&e.viteCommand==="serve"){let n=(s,a,p,...l)=>{let c=s.filter(d=>(!d.includes(".stories.")||d.endsWith(".tsx"))&&!je(d));return e.typeScriptHost=p,K.createAbstractBuilder(c,a,p,...l)},r=K.createWatchCompilerHost(e.typeScriptConfigPath,{preserveWatchOutput:!0},K.sys,n),i=50,o=r.setTimeout;r.setTimeout=o===void 0?void 0:(s,a,...p)=>o(s,p[0]==="timerToUpdateProgram"?i:a,...p),r.afterProgramCreate=s=>{e.typeScriptProgram=s.getProgram(),e.typeScriptTypeChecker=e.typeScriptProgram.getTypeChecker(),e._typeScriptReload?.resolve(),e._typeScriptReload=new tc},e.typeScriptWatchProgram=K.createWatchProgram(r),e.typeScriptConfig=e.typeScriptProgram.getCompilerOptions()}e.typeScriptConfig.sourceMap=t,e._compilerOptionsForPrinter=fo(e),e._typeScriptPrinter=st(e._compilerOptionsForPrinter)}import{writeFile as ac}from"node:fs/promises";import{asyncRetrievePackageJson as rc,fetchPackageLocation as ic,retrievePackageJson as oc}from"@arcgis/components-build-utils";var Ln="@arcgis/core",Co=oc(),Ge=Ln in(Co.dependencies??{})||Ln in(Co.peerDependencies??{});async function To(e,t){if(!Ge)return[];let n=await ic(Ln);if(t==="storybookBuild"){let r=await rc(n),i=G({name:"",version:r.version},!0);return[{tag:"script",attrs:{type:"importmap"},children:JSON.stringify({imports:{"@arcgis/core/":`${i}@arcgis/core/`}})},xo(i)]}else return[xo(we(e,`${n}/assets/`))]}var xo=e=>({cssHref:`${e}esri/themes/light/main.css`,id:"arcgisCoreStylesheet"});var Rn=new Set(["chunks","components","docs","types","controllers","cjs","esm","loader","utils","collection","extras","support"]),Ie="cdn";function So(e){let{skip:t=!1,namespace:n=Ie,esbuildOptions:r={}}=e.options.build?.cdn??{};if(n.toLowerCase()!==n)throw new Error(`Expected CDN namespace to be all lowercase. Received: ${n}`);if(Rn.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 i=n===Ie?"index":n;if(e.provideAssets([{type:"dynamic",source:()=>Yr(e),destination:`../${i}.css`}]),!t)return{name:"@arcgis/lumina:buildCdn",async writeBundle(){if(e.isInStorybook)return;let o=Date.now(),s=await pc(e,i,r);await lc(s,i);let a=Date.now();console.log(`CDN was built in ${a-o}ms`)}}}async function pc(e,t,n){let r=e.environment;return await sc({bundle:!0,minify:r==="production",treeShaking:!0,sourcemap:r==="development"?"inline":e.options.build?.enableSourceMapsInProduction?"linked":!1,format:"esm",splitting:!0,write:!1,outdir:e.dir.distCdn,legalComments:"external",logLevel:"warning",external:["@arcgis/core"],chunkNames:"[hash]",resolveExtensions:[".js",".json"],entryNames:Eo(t),banner:{js:e.banner},target:Dt(e.typeScriptConfig),...n,plugins:[...e.options.build?.ssr?.stencilCompatibility?.enabled===!0?[{name:"@arcgis/lumina:drop-lit-ssr-import",setup(i){i.onResolve({filter:/^@lit-labs\/ssr-client\//u},o=>({path:o.path,namespace:"@arcgis/lumina:drop-lit-ssr-import"})),i.onLoad({filter:/^/u,namespace:"@arcgis/lumina:drop-lit-ssr-import"},()=>({contents:'""',loader:"json"}))}}]:[],...n?.plugins??[]],define:{"process.env.CDN":"true",...n.define},stdin:{contents:`import { defineCustomElements } from "./loader";
53
53
  ${rn(e._globalCssString,e)}
54
54
  /**
55
55
  * We use import.meta.url to get the path to the current file
56
56
  * and pass it to defineCustomElements to set the resources url.
57
57
  * The script's file name will be stripped inside defineCustomElements.
58
58
  **/
59
- defineCustomElements({resourcesUrl: import.meta.url});`,sourcefile:`${t}-entry.js`,resolveDir:"dist",loader:"js",...n.stdin}})}async function pc(e,t){let n=`${Eo(t)}.js`;await Promise.all(e.outputFiles.map(async r=>{let i=r.text;r.path.endsWith(n)&&Ge&&(i=`${i.trimEnd()}${lc}`),i=cc(i),i=mc(i),await sc(r.path,i)}))}var lc='{window.$arcgis||Object.defineProperty(window,"$arcgis",{configurable:!1,enumerable:!0,writable:!1,value:{},});var a=$arcgis;a.l=x=>x.map?Promise.all(x.map(a.l)):(!a?.forceESM&&a?.import||(x=>import(x+".js").then(m=>m.default??m)))("@arcgis/core/"+x)}';function cc(e){return e.replaceAll(dc,(t,n)=>`$arcgis.l("${vo(n)}")`)}var dc=/(?<![.\w\d])import\("@arcgis\/core\/([^"]+)"\)/gu,vo=e=>e.endsWith(".js")?e.slice(0,-3):e;function mc(e){let t=e.length,n=[];for(;t>-1&&(t=e.lastIndexOf(Rn,t-1),t!==-1);){let r=t,i=e.indexOf('"',t+Rn.length)+1;if(i===0)continue;let o=vo(e.slice(t+Rn.length,i-1));for(!(n.length>0)||e.slice(i,n.at(0).from)===";"||(e=bo(e,n.splice(0)));t>-1;){t=e.lastIndexOf("import",t-1);let p=e.slice(t+6,r);if(p.startsWith(" ")){let l=e.slice(t+7,r-1);n.unshift({clause:l,specifier:o,from:t,to:i});break}else if(p.startsWith("*as ")){let l=e.slice(t+10,r-1);n.unshift({clause:l,specifier:o,from:t,to:i});break}else if(p.startsWith("{")){let l=e.slice(t+6,r).replaceAll(" as ",":");n.unshift({clause:l,specifier:o,from:t,to:i});break}}}return e=bo(e,n),e}var Rn='from"@arcgis/core/';function bo(e,t){if(t.length===0)return e;if(t.length===1){let{clause:n,specifier:r,from:i,to:o}=t[0],s=e.slice(0,i),a=e.slice(o),l=`var${n.startsWith("{")?"":" "}${n}=await $arcgis.l("${r}")`;return`${s}${l}${a}`}else{let n=t[0].from,r=t.at(-1).to,i=e.slice(0,n),o=e.slice(r),s=t.map(({clause:l})=>l).join(","),a=t.map(({specifier:l})=>`"${l}"`).join(","),p=`var[${s}]=await $arcgis.l([${a}])`;return`${i}${p}${o}`}}function Eo(e){return`${e}.esm`}async function Ao(e,t,n,r){let i=await gc(t),{hasCss:o,cdnName:s}=await Jn(Mn.join(i,"dist"))??{};if(n==="storybookBuild"){let c=await yc(i),d=G(c,!0);return[...o?[{tag:"link",attrs:{rel:"stylesheet",src:`${d}${s}.css`}}]:[],{tag:"script",attrs:{type:"module",src:`${d}${s}.esm.js`}}]}let a=`${t}/dist/${s}/${s}.css${B}`,p=o?[`import styles$${r} from "${a}";`,`document.adoptedStyleSheets = [...document.adoptedStyleSheets, styles$${r}.styleSheet];`]:[],l=`${t}/dist/esm/loader.js`;return[{optimizableImports:[l],javascriptCode:[...p,`import { defineCustomElements as defineCustomElements$${r} } from "${l}";`,`defineCustomElements$${r}(globalThis.window, {`,` resourcesUrl: "${we(e,i)}/dist/${s}/",`,"});"]}]}async function Jn(e){let n=(await fc(e)).filter(i=>!$n.has(i)&&!i.includes(".")),r=n.find(i=>i.startsWith("arcgis-"));return r===void 0?await Promise.all(n.map(async i=>await Po(e,i))).then(i=>i.find(uc)):await Po(e,r)}async function Po(e,t){let n=Mn.join(e,t,`${t}.css`),r=Mn.join(e,t,"assets"),[i,o]=await Promise.all([wo(n),wo(r)]);return i||o?{hasCss:i,cdnName:t}:void 0}import{path as xc}from"@arcgis/components-build-utils";async function Do(e,t,n,r){let i=await Cc(t),o=await Jn(xc.join(i,"dist"));if(o===void 0)throw new Error(`Failed to infer the CDN namespace name for the ${t}`);let{cdnName:s,hasCss:a}=o;if(n==="storybookBuild"){let d=await hc(i);return{tag:"script",attrs:{type:"module",src:`${G(d,!0)}${s}.esm.js`}}}let p=`${t}/${s}/${s}.css${B}`,l=a?[`import styles$${r} from "${p}";`,`document.adoptedStyleSheets = [...document.adoptedStyleSheets, styles$${r}.styleSheet];`]:[],c=`${t}/loader`;return{optimizableImports:[c,p],javascriptCode:[...l,`import { defineCustomElements as defineCustomElements$${r} } from "${c}";`,`defineCustomElements$${r}({`,` resourcesUrl: "${we(e,i)}/dist/${s}/",`,"});"]}}import{path as Tc}from"@arcgis/components-build-utils";async function xe(e){return e._loadersCache??=bc(e),await e._loadersCache}async function bc(e){let t=e.isInStorybook&&e.viteCommand==="build"?"storybookBuild":"lazy",n=e.viteConfig.base,r=async a=>(await Promise.all(a.map(async(p,l)=>p.type==="stencil"?await Ao(n,p.packageName,t,l):p.type==="@arcgis/lumina"?await Do(n,p.packageName,t,l):void 0))).filter(Fo).flat(),i=await Promise.all([oe.then(r),On(e).then(r),To(n,t)]),o=Tc.join(e.dir.src,"loader.ts");return[...e.viteCommand==="serve"?[jn]:[],...i.flat(),{optimizableImports:[],javascriptCode:[`import { defineCustomElements } from "${o}";`,"window.devOnly$ownTagNames = new Set();",`defineCustomElements(${t==="storybookBuild"?`{resourcesUrl:"./${e.options.build?.cdn?.namespace??Ie}/"}`:""});`]}]}var jn={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.",',");"]};async function On(e){let t=e.options?.serve?.extraDependencies??[];return t.length===0?[]:(e._serveOnlyDependencies??=Promise.all(t.map(async n=>await fn(n))).then(n=>n.filter(Fo)),await e._serveOnlyDependencies)}var Bn="/@arcgis/lumina-compiler/testLitSetupFile",Wn="/@arcgis/lumina-compiler/testSetupFile",Ft=[Bn,Wn],Io=jn.javascriptCode.join(`
59
+ defineCustomElements({resourcesUrl: import.meta.url});`,sourcefile:`${t}-entry.js`,resolveDir:"dist",loader:"js",...n.stdin}})}async function lc(e,t){let n=`${Eo(t)}.js`;await Promise.all(e.outputFiles.map(async r=>{let i=r.text;r.path.endsWith(n)&&Ge?i=`${i.trimEnd()}${cc}`:(i=dc(i),i=uc(i)),await ac(r.path,i)}))}var cc='{window.$arcgis||Object.defineProperty(window,"$arcgis",{configurable:!1,enumerable:!0,writable:!1,value:{},});var a=$arcgis;a.l=x=>x.map?Promise.all(x.map(a.l)):(!a?.forceESM&&a?.import||(x=>import(x+".js").then(m=>m.default??m)))("@arcgis/core/"+x)}';function dc(e){return e.replaceAll(mc,(t,n)=>`$arcgis.l("${vo(n)}")`)}var mc=/(?<![.\w\d])import\("@arcgis\/core\/([^"]+)"\)/gu,vo=e=>e.endsWith(".js")?e.slice(0,-3):e;function uc(e){let t=e.length,n=[];for(;t>-1&&(t=e.lastIndexOf($n,t-1),t!==-1);){if(e.slice(t-4,t)!=="from"&&e.slice(t-6,t)!=="import")continue;let r=t-4,i=e.indexOf('"',t+$n.length)+1;if(i===0)continue;let o=vo(e.slice(t+$n.length,i-1));if(o.length===0)continue;for(!(n.length>0)||e.slice(i,n.at(0).from)===";"||(e=bo(e,n.splice(0)));t>-1;){t=e.lastIndexOf("import",t-1);let p=e.slice(t+6,r);if(p.startsWith(" ")){let l=e.slice(t+7,r-1);n.unshift({clause:l,specifier:o,from:t,to:i});break}else if(p.startsWith("*as ")){let l=e.slice(t+10,r-1);n.unshift({clause:l,specifier:o,from:t,to:i});break}else if(p.startsWith("{")){let l=e.slice(t+6,r).replaceAll(" as ",":");n.unshift({clause:l,specifier:o,from:t,to:i});break}else if(p===""){n.unshift({clause:"",specifier:o,from:t,to:i});break}}}return e=bo(e,n),e}var $n='"@arcgis/core/';function bo(e,t){if(t.length===0)return e;if(t.length===1){let{clause:n,specifier:r,from:i,to:o}=t[0],s=e.slice(0,i),a=e.slice(o),p=n.startsWith("{")?"":" ",c=`${n===""?"":`var${p}${n}=`}await $arcgis.l("${r}")`;return`${s}${c}${a}`}else{let n=t[0].from,r=t.at(-1).to,i=e.slice(0,n),o=e.slice(r),s=t.findLastIndex(({clause:d})=>d.length>0),a=t.slice(0,s+1).map(({clause:d})=>d).join(","),p=t.map(({specifier:d})=>`"${d}"`).join(","),c=`${a===""?"":`var[${a}]=`}await $arcgis.l([${p}])`;return`${i}${c}${o}`}}function Eo(e){return`${e}.esm`}async function Ao(e,t,n,r){let i=await hc(t),{hasCss:o,cdnName:s}=await Jn(Mn.join(i,"dist"))??{};if(n==="storybookBuild"){let c=await gc(i),d=G(c,!0);return[...o?[{tag:"link",attrs:{rel:"stylesheet",src:`${d}${s}.css`}}]:[],{tag:"script",attrs:{type:"module",src:`${d}${s}.esm.js`}}]}let a=`${t}/dist/${s}/${s}.css${B}`,p=o?[`import styles$${r} from "${a}";`,`document.adoptedStyleSheets = [...document.adoptedStyleSheets, styles$${r}.styleSheet];`]:[],l=`${t}/dist/esm/loader.js`;return[{optimizableImports:[l],javascriptCode:[...p,`import { defineCustomElements as defineCustomElements$${r} } from "${l}";`,`defineCustomElements$${r}(globalThis.window, {`,` resourcesUrl: "${we(e,i)}/dist/${s}/",`,"});"]}]}async function Jn(e){let n=(await yc(e)).filter(i=>!Rn.has(i)&&!i.includes(".")),r=n.find(i=>i.startsWith("arcgis-"));return r===void 0?await Promise.all(n.map(async i=>await Po(e,i))).then(i=>i.find(fc)):await Po(e,r)}async function Po(e,t){let n=Mn.join(e,t,`${t}.css`),r=Mn.join(e,t,"assets"),[i,o]=await Promise.all([wo(n),wo(r)]);return i||o?{hasCss:i,cdnName:t}:void 0}import{path as Tc}from"@arcgis/components-build-utils";async function Do(e,t,n,r){let i=await xc(t),o=await Jn(Tc.join(i,"dist"));if(o===void 0)throw new Error(`Failed to infer the CDN namespace name for the ${t}`);let{cdnName:s,hasCss:a}=o;if(n==="storybookBuild"){let d=await Cc(i);return{tag:"script",attrs:{type:"module",src:`${G(d,!0)}${s}.esm.js`}}}let p=`${t}/${s}/${s}.css${B}`,l=a?[`import styles$${r} from "${p}";`,`document.adoptedStyleSheets = [...document.adoptedStyleSheets, styles$${r}.styleSheet];`]:[],c=`${t}/loader`;return{optimizableImports:[c,p],javascriptCode:[...l,`import { defineCustomElements as defineCustomElements$${r} } from "${c}";`,`defineCustomElements$${r}({`,` resourcesUrl: "${we(e,i)}/dist/${s}/",`,"});"]}}import{path as bc}from"@arcgis/components-build-utils";async function xe(e){return e._loadersCache??=Sc(e),await e._loadersCache}async function Sc(e){let t=e.isInStorybook&&e.viteCommand==="build"?"storybookBuild":"lazy",n=e.viteConfig.base,r=async a=>(await Promise.all(a.map(async(p,l)=>p.type==="stencil"?await Ao(n,p.packageName,t,l):p.type==="@arcgis/lumina"?await Do(n,p.packageName,t,l):void 0))).filter(Fo).flat(),i=await Promise.all([oe.then(r),On(e).then(r),To(n,t)]),o=bc.join(e.dir.src,"loader.ts");return[...e.viteCommand==="serve"?[jn]:[],...i.flat(),{optimizableImports:[],javascriptCode:[`import { defineCustomElements } from "${o}";`,"window.devOnly$ownTagNames = new Set();",`defineCustomElements(${t==="storybookBuild"?`{resourcesUrl:"./${e.options.build?.cdn?.namespace??Ie}/"}`:""});`]}]}var jn={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.",',");"]};async function On(e){let t=e.options?.serve?.extraDependencies??[];return t.length===0?[]:(e._serveOnlyDependencies??=Promise.all(t.map(async n=>await fn(n))).then(n=>n.filter(Fo)),await e._serveOnlyDependencies)}var Bn="/@arcgis/lumina-compiler/testLitSetupFile",Wn="/@arcgis/lumina-compiler/testSetupFile",Ft=[Bn,Wn],Io=jn.javascriptCode.join(`
60
60
  `);async function No(e){if(!e.viteConfig.test?.browser?.enabled)return ko(e);let n=(await xe(e)).map((r,i)=>{if("javascriptCode"in r)return r.javascriptCode.join(`
61
61
  `);if("cssHref"in r)return[`import styles$t${i} from "${r.cssHref}${B}";`,`document.adoptedStyleSheets = [...document.adoptedStyleSheets, styles$t${i}.styleSheet];`].join(`
62
62
  `);throw new Error(`Unexpected loader type for the browser test environment: ${JSON.stringify(r)}`)}).join(`
63
63
 
64
- `);return[ko(e),n].join("")}var ko=e=>[e.isInPuppeteerTestBackEnd?Sc:"",vc].join(""),Sc=`import { setupPuppeteerTest } from "@arcgis/lumina-compiler/puppeteerTesting";
64
+ `);return[ko(e),n].join("")}var ko=e=>[e.isInPuppeteerTestBackEnd?vc:"",Ec].join(""),vc=`import { setupPuppeteerTest } from "@arcgis/lumina-compiler/puppeteerTesting";
65
65
  setupPuppeteerTest();
66
- `,vc=`import { setupLuminaTest } from "@arcgis/lumina-compiler/testing";
66
+ `,Ec=`import { setupLuminaTest } from "@arcgis/lumina-compiler/testing";
67
67
  setupLuminaTest();
68
- `;function Lo(e){let t=!0,n=!1,r,i,o,s,a,p="@arcgis/lumina:generateVirtualFiles",l={name:p,configResolved(){s=kt.join(e.dir.root,"src","loader.ts"),a=Pc(s)},resolveId:f=>f===s||f===a?s:void 0,async load(f){let h=f.startsWith(Bn),y=f.startsWith(Wn);if(!(!f.endsWith(".tsx")&&f!==s&&!h&&!y)){if(i===void 0&&!e.isInPuppeteerTestBackEnd){o===void 0&&clearTimeout(r),o??=li(e,t).catch(E=>{throw n=!0,E}),t=!1;let T=await o;i??=T}return f===s?Zr(e):h?Io:y?await No(e):void 0}},async writeBundle(){e.isInStorybook||await wc(kt.join(e.dir.dist,"loader.d.ts"),ei)},async handleHotUpdate({file:f,modules:h,read:y}){let T=await c(f,y);return T===void 0?void 0:T?h:(d(),[])},configureServer(f){if(e.isInPuppeteerTestBackEnd)return;e.isInTest&&f.watcher.on("change",y=>{c(y,async()=>await Ec(y,"utf8")).catch(console.error)}),f.watcher.on("add",h),f.watcher.on("unlink",h),f.watcher.on("addDir",y=>y.startsWith(e.dir.srcComponents)?void be(e,e.dir.srcComponents,y).then(T=>T.length>0?d():void 0):void 0),f.watcher.on("unlinkDir",y=>{e.componentFiles.some(E=>E.startsWith(y))&&d()});function h(y){ne(y,e.dir.srcComponents)&&d()}f.watcher.on("change",()=>{if(!n)return;n=!1,r=setTimeout(()=>d(!0),1e3)})},buildEnd(){e.typeScriptWatchProgram?.close()}};async function c(f,h){if(i===void 0)return!1;let y;if(e.isInStorybook){y=await h();let b=e.typeScriptProgram.getSourceFile(f);if(b===void 0)return;if(!(b.text===y)){let me;await Promise.race([e._typeScriptReload.promise,new Promise(Z=>{me=setTimeout(()=>{console.log("Timed out waiting for TypeScript to finish type-checking. This may be a bug"),Z(void 0)},1e4)})]),clearTimeout(me)}}if(!ne(f,e.dir.srcComponents))return;y??=await h();let E=ci(e,f,y);if(E===void 0)return!1;for(let b of E){let $=sn(b);e.server.ws.send({type:"custom",event:"component-meta-update",data:$})}return m(),!0}function d(f=!1){!f&&i===void 0||(i=void 0,o=void 0,m(),u())}function m(){let f=e.server.moduleGraph.getModuleById(s);f===void 0?(console.warn(`${p}: Failed to find HMR module for src/loader.ts`),e.server.moduleGraph.invalidateAll()):e.server.moduleGraph.invalidateModule(f)}let u=()=>e.server.ws.send({type:"full-reload",path:kt.join("/",kt.relative(e.dir.root,s))});return l}import Ac from"mime-types";import{copyFile as Dc,readFile as $o,readdir as Fc,mkdir as Kn,writeFile as Mo}from"node:fs/promises";import{getCwd as kc,path as P,toPosixPathSeparators as Hn,toSystemPathSeparators as Ic}from"@arcgis/components-build-utils";import{isPosix as Jo}from"@arcgis/components-build-utils";var Nc="@arcgis/lumina:provideAssets";function ce(e,t,n=Nt){if(e.viteCommand!=="serve")throw new Error("serveAssets() is only available when Vite is running in serve mode");let r=e._serverConfigured,i=e.server.middlewares.stack.length;if(t.forEach(o=>{let s=jo(o),a=Bo(e.dir,Oo(s)),p=Rc(e.viteConfig.base,a,e.dir.distCdn);e.server.middlewares.use(p,(l,c,d)=>{let m=$c(l.url),u=s.type==="directory"?P.resolve(s.source,m.slice(1)):s.source,f=P.join(a,m),h=n.find(y=>y.match(f,e));return(typeof u=="function"?Promise.resolve(u()):$o(u)).then(y=>{let T=(typeof u=="function"?void 0:h?.transform(y.toString("utf8"),f,e))??y;c.setHeader("Cache-Control","max-age=31536000, immutable"),c.setHeader("Content-Type",Ac.lookup(m)||"application/octet-stream"),c.write(T),c.end()}).catch(y=>{(s.type!=="directory"||process.env.DEBUG)&&console.error(Nc,`Error occurred when trying to serve a file in response to request for "${l.originalUrl??m}":`,y),d()}),!0})}),r){let o=e.server.middlewares.stack.splice(i);e.server.middlewares.stack.splice(0,0,...o)}}async function It(e,t,n=Nt){await Promise.all(t.map(async r=>{let i=jo(r),o=Bo(e.dir,Oo(i));if(i.type==="directory"){let s=P.resolve(i.source),p=(await Fc(s,{recursive:!0,withFileTypes:!0})).filter(l=>l.isFile()).map(l=>{let c=P.resolve(l.parentPath,l.name),d=P.relative(s,c),m=P.join(o,d);return[c,m]});await _n(p.map(([l,c])=>c)),await Promise.all(p.map(async([l,c])=>await Ro(l,c,n,e)))}else if(i.type==="file")await Kn(P.dirname(o),{recursive:!0}),await Ro(i.source,o,n,e);else if(i.type==="dynamic"){await Kn(P.dirname(o),{recursive:!0});let s=await Promise.resolve(i.source());await Mo(o,s)}}))}var jo=Jo?e=>e:e=>e.type==="dynamic"?{...e,destination:Hn(e.destination)}:{...e,source:Hn(e.source),destination:Hn(e.destination)};async function Ro(e,t,n,r){let i=n.find(o=>o.match(t,r));if(i===void 0)await Dc(e,t);else{let o=await $o(e,"utf8"),s=i.transform(o,t,r);await Mo(t,s)}}function Oo(e){if(e.type==="dynamic")return e.destination;if(e.source.endsWith(P.sep)){if(e.type==="file")throw new Error(`Unexpectedly tried to provide an asset with type "file", whose source looks like a directory: ${Ic(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===""?P.basename(e.source):e.destination.endsWith(P.sep)?e.type==="directory"&&e.destination===P.sep?e.destination:P.join(e.destination,P.basename(e.source)):e.destination}function Bo({dist:e,distCdnAssets:t},n){let r=Lc(n),i=P.join(t,r?P.relative(t,n):n),o=P.relative(e,i),s=Wo(o);return P.join(e,s)}function Lc(e){if(e.startsWith(P.sep)){let t=kc(),n=t.startsWith(P.sep)?t.split(P.sep)[1]??"":"";return e.startsWith(`/${n}/`)||e.startsWith("/Users/")}else return!!(!Jo&&P.isAbsolute(e))}function Rc(e,t,n){let r=Wo(P.relative(n,t)),i=r.startsWith("/")?r.slice(1):r;return`${e}${i}`}var Wo=e=>e.replaceAll("../",""),$c=(e="")=>e.split("?")[0].split("#")[0];async function _n(e){let t=new Set(e.map(P.dirname));await Promise.all(Array.from(t,async n=>await Kn(n,{recursive:!0})))}var Mc={match:(e,t)=>t.environment==="production"&&e.endsWith(".json"),transform:e=>JSON.stringify(JSON.parse(e))},Nt=[Mc];import{isNotUndefined as Jc}from"@arcgis/components-utils";import{existsAsync as Ho}from"@arcgis/components-build-utils";import{path as Xe}from"@arcgis/components-build-utils";function Ko(e){let t,n=()=>[...e.options.assets?.transformers??[],...Nt];return{name:"@arcgis/lumina:handleStaticAssets",configResolved(){t=jc(e)},async configureServer(r){e.server=r,!e.isInPuppeteerTestBackEnd&&(ce(e,await t,n()),r.watcher.on("addDir",i=>{if(i.endsWith("assets")){let o=Xe.dirname(i);Xe.join(o,"/")===e.dir.root?ce(e,[Uo],n()):i.startsWith(e.dir.srcComponents)&&ce(e,[_o(i,o)],n())}}))},async writeBundle(){await It(e,await t,n())}}}async function jc(e){let t=Ho("assets"),n=await e.componentFilesPromise,r=await Promise.all(n.map(async i=>{let o=Xe.dirname(i),s=Xe.join(o,"assets");return await Ho(s)?_o(s,o):void 0}));return await t&&r.push(Uo),r.filter(Jc)}var _o=(e,t)=>({type:"directory",source:e,destination:Xe.basename(t)}),Uo={type:"directory",source:"assets/",destination:""};import{path as Ne}from"@arcgis/components-build-utils";import{mkdir as Oc,writeFile as Lt}from"node:fs/promises";import{retrievePackageJson as Bc}from"@arcgis/components-build-utils";function Vo(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=Bc()?.name??e.options.build?.cdn?.namespace??Ne.basename(e.dir.root),r=`${n}/hydrate`,i=Ne.resolve(e.dir.root,t.path??"hydrate"),o="index.d.ts",s="index.js",a="index.mjs",p=Ne.join(i,"index.d.ts"),l=Ne.join(i,"index.js"),c=Ne.join(i,"index.mjs"),d=q(i,e.dir.dist),u=`${Array.from(new Set(e.apiJsonComponents.map(f=>`import "${d}/${f.importPath}";`))).join(`
68
+ `;function Lo(e){let t=!0,n=!1,r,i,o,s,a,p="@arcgis/lumina:generateVirtualFiles",l={name:p,configResolved(){s=kt.join(e.dir.root,"src","loader.ts"),a=Ac(s)},resolveId:f=>f===s||f===a?s:void 0,async load(f){let h=f.startsWith(Bn),y=f.startsWith(Wn);if(!(!f.endsWith(".tsx")&&f!==s&&!h&&!y)){if(i===void 0&&!e.isInPuppeteerTestBackEnd){o===void 0&&clearTimeout(r),o??=li(e,t).catch(E=>{throw n=!0,E}),t=!1;let T=await o;i??=T}return f===s?Zr(e):h?Io:y?await No(e):void 0}},async writeBundle(){e.isInStorybook||await Pc(kt.join(e.dir.dist,"loader.d.ts"),ei)},async handleHotUpdate({file:f,modules:h,read:y}){let T=await c(f,y);return T===void 0?void 0:T?h:(d(),[])},configureServer(f){if(e.isInPuppeteerTestBackEnd)return;e.isInTest&&f.watcher.on("change",y=>{c(y,async()=>await wc(y,"utf8")).catch(console.error)}),f.watcher.on("add",h),f.watcher.on("unlink",h),f.watcher.on("addDir",y=>y.startsWith(e.dir.srcComponents)?void be(e,e.dir.srcComponents,y).then(T=>T.length>0?d():void 0):void 0),f.watcher.on("unlinkDir",y=>{e.componentFiles.some(E=>E.startsWith(y))&&d()});function h(y){ne(y,e.dir.srcComponents)&&d()}f.watcher.on("change",()=>{if(!n)return;n=!1,r=setTimeout(()=>d(!0),1e3)})},buildEnd(){e.typeScriptWatchProgram?.close()}};async function c(f,h){if(i===void 0)return!1;let y;if(e.isInStorybook){y=await h();let b=e.typeScriptProgram.getSourceFile(f);if(b===void 0)return;if(!(b.text===y)){let me;await Promise.race([e._typeScriptReload.promise,new Promise(Z=>{me=setTimeout(()=>{console.log("Timed out waiting for TypeScript to finish type-checking. This may be a bug"),Z(void 0)},1e4)})]),clearTimeout(me)}}if(!ne(f,e.dir.srcComponents))return;y??=await h();let E=ci(e,f,y);if(E===void 0)return!1;for(let b of E){let R=sn(b);e.server.ws.send({type:"custom",event:"component-meta-update",data:R})}return m(),!0}function d(f=!1){!f&&i===void 0||(i=void 0,o=void 0,m(),u())}function m(){let f=e.server.moduleGraph.getModuleById(s);f===void 0?(console.warn(`${p}: Failed to find HMR module for src/loader.ts`),e.server.moduleGraph.invalidateAll()):e.server.moduleGraph.invalidateModule(f)}let u=()=>e.server.ws.send({type:"full-reload",path:kt.join("/",kt.relative(e.dir.root,s))});return l}import Dc from"mime-types";import{copyFile as Fc,readFile as Ro,readdir as kc,mkdir as Kn,writeFile as Mo}from"node:fs/promises";import{getCwd as Ic,path as P,toPosixPathSeparators as Hn,toSystemPathSeparators as Nc}from"@arcgis/components-build-utils";import{isPosix as Jo}from"@arcgis/components-build-utils";var Lc="@arcgis/lumina:provideAssets";function ce(e,t,n=Nt){if(e.viteCommand!=="serve")throw new Error("serveAssets() is only available when Vite is running in serve mode");let r=e._serverConfigured,i=e.server.middlewares.stack.length;if(t.forEach(o=>{let s=jo(o),a=Bo(e.dir,Oo(s)),p=Rc(e.viteConfig.base,a,e.dir.distCdn);e.server.middlewares.use(p,(l,c,d)=>{let m=Mc(l.url),u=s.type==="directory"?P.resolve(s.source,m.slice(1)):s.source,f=P.join(a,m),h=n.find(y=>y.match(f,e));return(typeof u=="function"?Promise.resolve(u()):Ro(u)).then(y=>{let T=(typeof u=="function"?void 0:h?.transform(y.toString("utf8"),f,e))??y;c.setHeader("Cache-Control","max-age=31536000, immutable"),c.setHeader("Content-Type",Dc.lookup(m)||"application/octet-stream"),c.write(T),c.end()}).catch(y=>{(s.type!=="directory"||process.env.DEBUG)&&console.error(Lc,`Error occurred when trying to serve a file in response to request for "${l.originalUrl??m}":`,y),d()}),!0})}),r){let o=e.server.middlewares.stack.splice(i);e.server.middlewares.stack.splice(0,0,...o)}}async function It(e,t,n=Nt){await Promise.all(t.map(async r=>{let i=jo(r),o=Bo(e.dir,Oo(i));if(i.type==="directory"){let s=P.resolve(i.source),p=(await kc(s,{recursive:!0,withFileTypes:!0})).filter(l=>l.isFile()).map(l=>{let c=P.resolve(l.parentPath,l.name),d=P.relative(s,c),m=P.join(o,d);return[c,m]});await _n(p.map(([l,c])=>c)),await Promise.all(p.map(async([l,c])=>await $o(l,c,n,e)))}else if(i.type==="file")await Kn(P.dirname(o),{recursive:!0}),await $o(i.source,o,n,e);else if(i.type==="dynamic"){await Kn(P.dirname(o),{recursive:!0});let s=await Promise.resolve(i.source());await Mo(o,s)}}))}var jo=Jo?e=>e:e=>e.type==="dynamic"?{...e,destination:Hn(e.destination)}:{...e,source:Hn(e.source),destination:Hn(e.destination)};async function $o(e,t,n,r){let i=n.find(o=>o.match(t,r));if(i===void 0)await Fc(e,t);else{let o=await Ro(e,"utf8"),s=i.transform(o,t,r);await Mo(t,s)}}function Oo(e){if(e.type==="dynamic")return e.destination;if(e.source.endsWith(P.sep)){if(e.type==="file")throw new Error(`Unexpectedly tried to provide an asset with type "file", whose source looks like a directory: ${Nc(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===""?P.basename(e.source):e.destination.endsWith(P.sep)?e.type==="directory"&&e.destination===P.sep?e.destination:P.join(e.destination,P.basename(e.source)):e.destination}function Bo({dist:e,distCdnAssets:t},n){let r=$c(n),i=P.join(t,r?P.relative(t,n):n),o=P.relative(e,i),s=Wo(o);return P.join(e,s)}function $c(e){if(e.startsWith(P.sep)){let t=Ic(),n=t.startsWith(P.sep)?t.split(P.sep)[1]??"":"";return e.startsWith(`/${n}/`)||e.startsWith("/Users/")}else return!!(!Jo&&P.isAbsolute(e))}function Rc(e,t,n){let r=Wo(P.relative(n,t)),i=r.startsWith("/")?r.slice(1):r;return`${e}${i}`}var Wo=e=>e.replaceAll("../",""),Mc=(e="")=>e.split("?")[0].split("#")[0];async function _n(e){let t=new Set(e.map(P.dirname));await Promise.all(Array.from(t,async n=>await Kn(n,{recursive:!0})))}var Jc={match:(e,t)=>t.environment==="production"&&e.endsWith(".json"),transform:e=>JSON.stringify(JSON.parse(e))},Nt=[Jc];import{isNotUndefined as jc}from"@arcgis/components-utils";import{existsAsync as Ho}from"@arcgis/components-build-utils";import{path as Xe}from"@arcgis/components-build-utils";function Ko(e){let t,n=()=>[...e.options.assets?.transformers??[],...Nt];return{name:"@arcgis/lumina:handleStaticAssets",configResolved(){t=Oc(e)},async configureServer(r){e.server=r,!e.isInPuppeteerTestBackEnd&&(ce(e,await t,n()),r.watcher.on("addDir",i=>{if(i.endsWith("assets")){let o=Xe.dirname(i);Xe.join(o,"/")===e.dir.root?ce(e,[Uo],n()):i.startsWith(e.dir.srcComponents)&&ce(e,[_o(i,o)],n())}}))},async writeBundle(){await It(e,await t,n())}}}async function Oc(e){let t=Ho("assets"),n=await e.componentFilesPromise,r=await Promise.all(n.map(async i=>{let o=Xe.dirname(i),s=Xe.join(o,"assets");return await Ho(s)?_o(s,o):void 0}));return await t&&r.push(Uo),r.filter(jc)}var _o=(e,t)=>({type:"directory",source:e,destination:Xe.basename(t)}),Uo={type:"directory",source:"assets/",destination:""};import{path as Ne}from"@arcgis/components-build-utils";import{mkdir as Bc,writeFile as Lt}from"node:fs/promises";import{retrievePackageJson as Wc}from"@arcgis/components-build-utils";function Vo(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=Wc()?.name??e.options.build?.cdn?.namespace??Ne.basename(e.dir.root),r=`${n}/hydrate`,i=Ne.resolve(e.dir.root,t.path??"hydrate"),o="index.d.ts",s="index.js",a="index.mjs",p=Ne.join(i,"index.d.ts"),l=Ne.join(i,"index.js"),c=Ne.join(i,"index.mjs"),d=q(i,e.dir.dist),u=`${Array.from(new Set(e.apiJsonComponents.map(f=>`import "${d}/${f.importPath}";`))).join(`
69
69
  `)}
70
- export * from "@arcgis/lumina/stencilSsrCompatibility";`;await Oc(i,{recursive:!0}),await Promise.all([Lt(Ne.join(i,"package.json"),`${JSON.stringify({name:r,description:`${n} component hydration app.`,type:"module",main:s,module:a,types:o,exports:{".":{types:`./${o}`,import:`./${a}`,require:`./${s}`}},dependencies:{"@arcgis/lumina":"*"}},null,2)}
71
- `),Lt(p,u),Lt(l,u),Lt(c,u)])}}}var Xo=e=>({name:"@arcgis/lumina:printTotalBuildSize",apply:()=>e.viteCommand==="build",configResolved(t){let n=t.plugins.find(({name:i})=>i==="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(o,s){let a=0,p=0,l=0,c=0,d=console.log;console.log=function(...u){if(d.apply(console,u),u.length===1&&typeof u[0]=="string"){let[f,h]=u[0].match(Hc)??[];if(!f)return;c||(c=u[0].slice(0,u[0].indexOf(f)+f.length).replaceAll(Kc,"").length);let y=Number.parseFloat(f.replace(" kB","").replaceAll(",",""));h?(l+=Number.parseFloat(h.replace(" kB","").replaceAll(",","")),p+=y):a+=y}};try{await r.call(this,o,s)}finally{console.log=d}if(p>0){let u=l>0?p:a,f=Go(u),h=e.dir.relativeDist;console.log([qo,h,Wc,"*"," ".repeat(c-`${h}*`.length-f.length),f,zo,l>0?` ${qo}\u2502 gzip: ${Go(l)}${zo}`:""].join(""))}}}}),zo="\x1B[22m\x1B[1m\x1B[22m",qo="\x1B[2m",Wc="\x1B[22m\x1B[36m",Hc=/\d+(?:,\d+)?\.\d{2} kB/gu,Kc=/\x1B\[\d+m/gu,_c=new Intl.NumberFormat("en",{maximumFractionDigits:2,minimumFractionDigits:2}),Go=e=>`${_c.format(e)} kB`;var Qo=e=>({name:"@arcgis/lumina:configureVite",async config({server:t,publicDir:n,build:{cssMinify:r,target:i,sourcemap:o,lib:s,rollupOptions:{output:a=[]}={}}={},test:p={},css:l}){let{include:c,browser:d,environment:m,forceRerunTriggers:u}=p,f={index:"src/index.ts",loader:"src/loader.ts",...await Dr(e)},{loader:h,...y}=f,T=e.environment==="development"||e.isInTest?{"process.env.ESRI_INTERNAL":"true"}:void 0,E=!import.meta.url.includes("node_modules"),b={entries:Object.values(y),include:Array.from(At).filter(j=>!j.startsWith("@arcgis")),exclude:E?["@arcgis/lumina","@arcgis/components-controllers","@arcgis/components-utils","@arcgis/core-adapter"]:void 0};typeof p.setupFiles=="string"?p.setupFiles=[...Ft,p.setupFiles]:Array.isArray(p.setupFiles)?p.setupFiles=[...Ft,...p.setupFiles]:p.setupFiles=[...Ft];let $={preprocessorOptions:{scss:{api:l?.preprocessorOptions?.scss?.api??"modern-compiler"}}};if(e.isInPuppeteerTestBackEnd){if(d?.enabled===!0)throw new Error("Can't enable both Vitest browser mode and Puppeteer testing at the same time");return{test:{puppeteerLaunchOptions:e.options.puppeteerTesting?.launchOptions,puppeteerWaitForChangesDelay:e.options.puppeteerTesting?.waitForChangesDelay,globalSetup:["@arcgis/lumina-compiler/puppeteerTesting/globalSetup"],runner:"@arcgis/lumina-compiler/puppeteerTesting/runner",include:c?void 0:["**/*.{e2e,spec}.?(c|m)[jt]s?(x)"],environment:m??"happy-dom",forceRerunTriggers:u===void 0?["**/*.{ts,tsx}"]:void 0},css:$,optimizeDeps:b,define:T}}return{server:{open:t?.open??!0},publicDir:n??!1,build:{cssMinify:r??(e.environment==="production"?!0:void 0),target:i??Dt(e.typeScriptConfig),sourcemap:o??(e.environment==="development"?"inline":e.options.build?.enableSourceMapsInProduction??!1),lib:{entry:f,formats:(s?s.formats:void 0)??["es"]},rollupOptions:{output:{chunkFileNames:(Array.isArray(a)?void 0:a.chunkFileNames)||"chunks/[name].js",banner:(Array.isArray(a)?void 0:a.banner)||e.banner,generatedCode:(Array.isArray(a)?void 0:a.generatedCode)??"es2015"}}},optimizeDeps:b,define:T,test:{include:c?void 0:[d?.enabled??!0?"**/*.e2e.?(c|m)[jt]s?(x)":"**/*.{test,spec}.?(c|m)[jt]s?(x)"],browser:{enabled:e.isInPuppeteerTestFrontEnd?!1:d?.enabled??!0,name:d?.name??"chromium",provider:d?.provider??Zn}},css:$}}});var Yo=e=>({name:"@arcgis/lumina:setAssetPath",apply:()=>e.viteCommand==="build",config:t=>({base:t.base??e.options.assets?.defaultPath??G()})});import Vn from"typescript";import{path as Uc,retrievePackageJson as Vc,toPosixPathSeparators as zc}from"@arcgis/components-build-utils";import{getPreamble as qc}from"@arcgis/components-utils";function Zo(e=Vc()){let t=e.version??"0.0.1";return qc(t)}var es=e=>`/*! ${e} */`,F=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(i){Object.defineProperty(this,n,{value:i,configurable:!0,writable:!0,enumerable:!0})},configurable:!0,enumerable:!0})};function Le(e){if(Uc.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 zc(e)}var Re={vsCodeHtml:"docs/vscode.html-custom-data.json",vsCodeCss:"docs/vscode.css-custom-data.json",webTypes:"docs/web-types.json",apiJson:"docs/api.json",stencilLikeDocsJson:"docs/docs.json"};import{existsAsync as Gc}from"@arcgis/components-build-utils";import{readFile as Xc}from"node:fs/promises";import{retrievePackageJson as ts}from"@arcgis/components-build-utils";import{path as Qc}from"@arcgis/components-build-utils";import{writeFileSync as Yc}from"node:fs";async function Rt(e,t,n,r,i=ts()){let o=Zc(e,n,r,i),s=Qc.join(t,"lumina.ts");if((await Gc(s)?await Xc(s,"utf8"):"")===o)return!1;if(process.env.CI)throw new Error("lumina.ts is out of date. Start the vite dev server or build locally at least once to update lumina.ts and commit the updated file");return Yc(s,o),!0}function Zc(e,t,n,r=ts()){let i=e.filter(d=>d.type==="@arcgis/lumina").map(d=>`
70
+ export * from "@arcgis/lumina/stencilSsrCompatibility";`;await Bc(i,{recursive:!0}),await Promise.all([Lt(Ne.join(i,"package.json"),`${JSON.stringify({name:r,description:`${n} component hydration app.`,type:"module",main:s,module:a,types:o,exports:{".":{types:`./${o}`,import:`./${a}`,require:`./${s}`}},dependencies:{"@arcgis/lumina":"*"}},null,2)}
71
+ `),Lt(p,u),Lt(l,u),Lt(c,u)])}}}var Xo=e=>({name:"@arcgis/lumina:printTotalBuildSize",apply:()=>e.viteCommand==="build",configResolved(t){let n=t.plugins.find(({name:i})=>i==="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(o,s){let a=0,p=0,l=0,c=0,d=console.log;console.log=function(...u){if(d.apply(console,u),u.length===1&&typeof u[0]=="string"){let[f,h]=u[0].match(Kc)??[];if(!f)return;c||(c=u[0].slice(0,u[0].indexOf(f)+f.length).replaceAll(_c,"").length);let y=Number.parseFloat(f.replace(" kB","").replaceAll(",",""));h?(l+=Number.parseFloat(h.replace(" kB","").replaceAll(",","")),p+=y):a+=y}};try{await r.call(this,o,s)}finally{console.log=d}if(p>0){let u=l>0?p:a,f=Go(u),h=e.dir.relativeDist;console.log([qo,h,Hc,"*"," ".repeat(c-`${h}*`.length-f.length),f,zo,l>0?` ${qo}\u2502 gzip: ${Go(l)}${zo}`:""].join(""))}}}}),zo="\x1B[22m\x1B[1m\x1B[22m",qo="\x1B[2m",Hc="\x1B[22m\x1B[36m",Kc=/\d+(?:,\d+)?\.\d{2} kB/gu,_c=/\x1B\[\d+m/gu,Uc=new Intl.NumberFormat("en",{maximumFractionDigits:2,minimumFractionDigits:2}),Go=e=>`${Uc.format(e)} kB`;var Qo=e=>({name:"@arcgis/lumina:configureVite",async config({server:t,publicDir:n,build:{cssMinify:r,target:i,sourcemap:o,lib:s,rollupOptions:{output:a=[]}={}}={},test:p={},css:l}){let{include:c,browser:d,environment:m,forceRerunTriggers:u}=p,f={index:"src/index.ts",loader:"src/loader.ts",...await Dr(e)},{loader:h,...y}=f,T=e.environment==="development"||e.isInTest?{"process.env.ESRI_INTERNAL":"true"}:void 0,E=!import.meta.url.includes("node_modules"),b={entries:Object.values(y),include:Array.from(At).filter(j=>!j.startsWith("@arcgis")),exclude:E?["@arcgis/lumina","@arcgis/components-controllers","@arcgis/components-utils","@arcgis/core-adapter"]:void 0};typeof p.setupFiles=="string"?p.setupFiles=[...Ft,p.setupFiles]:Array.isArray(p.setupFiles)?p.setupFiles=[...Ft,...p.setupFiles]:p.setupFiles=[...Ft];let R={preprocessorOptions:{scss:{api:l?.preprocessorOptions?.scss?.api??"modern-compiler"}}};if(e.isInPuppeteerTestBackEnd){if(d?.enabled===!0)throw new Error("Can't enable both Vitest browser mode and Puppeteer testing at the same time");return{test:{puppeteerLaunchOptions:e.options.puppeteerTesting?.launchOptions,puppeteerWaitForChangesDelay:e.options.puppeteerTesting?.waitForChangesDelay,globalSetup:["@arcgis/lumina-compiler/puppeteerTesting/globalSetup"],runner:"@arcgis/lumina-compiler/puppeteerTesting/runner",include:c?void 0:["**/*.{e2e,spec}.?(c|m)[jt]s?(x)"],environment:m??"happy-dom",forceRerunTriggers:u===void 0?["**/*.{ts,tsx}"]:void 0},css:R,optimizeDeps:b,define:T}}return{server:{open:t?.open??!0},publicDir:n??!1,build:{cssMinify:r??(e.environment==="production"?!0:void 0),target:i??Dt(e.typeScriptConfig),sourcemap:o??(e.environment==="development"?"inline":e.options.build?.enableSourceMapsInProduction??!1),lib:{entry:f,formats:(s?s.formats:void 0)??["es"]},rollupOptions:{output:{chunkFileNames:(Array.isArray(a)?void 0:a.chunkFileNames)||"chunks/[name].js",banner:(Array.isArray(a)?void 0:a.banner)||e.banner,generatedCode:(Array.isArray(a)?void 0:a.generatedCode)??"es2015"}}},optimizeDeps:b,define:T,test:{include:c?void 0:[d?.enabled??!0?"**/*.e2e.?(c|m)[jt]s?(x)":"**/*.{test,spec}.?(c|m)[jt]s?(x)"],browser:{enabled:e.isInPuppeteerTestFrontEnd?!1:d?.enabled??!0,name:d?.name??"chromium",provider:d?.provider??Zn}},css:R}}});var Yo=e=>({name:"@arcgis/lumina:setAssetPath",apply:()=>e.viteCommand==="build",config:t=>({base:t.base??e.options.assets?.defaultPath??G()})});import Vn from"typescript";import{path as Vc,retrievePackageJson as zc,toPosixPathSeparators as qc}from"@arcgis/components-build-utils";import{getPreamble as Gc}from"@arcgis/components-utils";function Zo(e=zc()){let t=e.version??"0.0.1";return Gc(t)}var es=e=>`/*! ${e} */`,F=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(i){Object.defineProperty(this,n,{value:i,configurable:!0,writable:!0,enumerable:!0})},configurable:!0,enumerable:!0})};function Le(e){if(Vc.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 qc(e)}var $e={vsCodeHtml:"docs/vscode.html-custom-data.json",vsCodeCss:"docs/vscode.css-custom-data.json",webTypes:"docs/web-types.json",apiJson:"docs/api.json",stencilLikeDocsJson:"docs/docs.json"};import{existsAsync as Xc}from"@arcgis/components-build-utils";import{readFile as Qc}from"node:fs/promises";import{retrievePackageJson as ts}from"@arcgis/components-build-utils";import{path as Yc}from"@arcgis/components-build-utils";import{writeFileSync as Zc}from"node:fs";async function $t(e,t,n,r,i=ts()){let o=ed(e,n,r,i),s=Yc.join(t,"lumina.ts");if((await Xc(s)?await Qc(s,"utf8"):"")===o)return!1;if(process.env.CI)throw new Error("lumina.ts is out of date. Start the vite dev server or build locally at least once to update lumina.ts and commit the updated file");return Zc(s,o),!0}function ed(e,t,n,r=ts()){let i=e.filter(d=>d.type==="@arcgis/lumina").map(d=>`
72
72
  /// <reference types="${d.packageName}/types/lumina" />`),o=e.filter(d=>d.type==="stencil"),s=o.map((d,m)=>`
73
73
  import type { JSX as JSX$${m} } from "${d.packageName}/dist/types/components";`),a=o.length===0?"":`
74
74
 
75
75
  declare module "@arcgis/lumina" {
76
76
  interface ImportStencilElements extends ${o.map((d,m)=>`JSX$${m}.IntrinsicElements`).join(", ")} {}
77
- }`,p=r.devDependencies??{},l=n==="preview"?"matchers":n==="webdriverio"?"webdriverio":"playwright";return[...ed,t?td:"",p.vitest?`
77
+ }`,p=r.devDependencies??{},l=n==="preview"?"matchers":n==="webdriverio"?"webdriverio":"playwright";return[...td,t?nd:"",p.vitest?`
78
78
  /// <reference types="vitest/config" />`:"",p["@vitest/browser"]?`
79
79
  /// <reference types="@vitest/browser/jest-dom.d.ts" />`:"",p["@vitest/browser"]?`
80
80
  /// <reference types="@vitest/browser/providers/${l}" />`:"",...i,...s,a,`
81
- `].join("")}var ed=`/**
81
+ `].join("")}var td=`/**
82
82
  * This file is autogenerated by \`@arcgis/lumina-compiler\` - do not edit it manually.
83
83
  * Manual edits will be overwritten.
84
84
  *
@@ -87,17 +87,17 @@ declare module "@arcgis/lumina" {
87
87
  *
88
88
  * If you need to provide additional typings, create a separate file.
89
89
  */
90
- /// <reference types="@arcgis/lumina/typings" />`,td=`
91
- /// <reference types="@arcgis/core/interfaces" />`;import nd from"chalk";var ns="@arcgis/lumina:dependencySupport",Un=(e,t)=>e.viteCommand==="serve"&&(!e.isInTest||!e.viteConfig.test?.browser?.enabled)||e.isInStorybook&&(t===void 0||t.path==="/iframe.html"),rs=e=>({name:ns,configResolved(){!e.isInTest&&!e.isInStorybook&&(e._updateLuminaTsPromise=rd(e).catch(t=>console.error(`${ns}: Failed to update package's src/lumina.ts`,t)))},transformIndexHtml:{order:"pre",async handler(t,n){return Un(e,n)?(await xe(e)).map(i=>"javascriptCode"in i?{tag:"script",attrs:{type:"module"},children:i.javascriptCode.join(`
92
- `)}:"cssHref"in i?{tag:"link",attrs:{rel:"stylesheet",href:i.cssHref,id:i.id}}:i):void 0}},async buildStart(){if(e.viteCommand!=="serve")return;let n=(await xe(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 buildEnd(){await e._updateLuminaTsPromise}});async function rd(e){let n=(await Promise.all([oe,On(e)])).flat();if(!await Rt(n,e.dir.src,Ge,e.viteConfig.test?.browser?.provider))return;let i=!1;function o(){i||console.warn(id),i=!0}process.on("exit",()=>{o(),clearTimeout(a)});let a=setTimeout(o,2e3)}var id=nd.greenBright(`lumina.ts has been updated (potentially because your dependencies changed). Please commit the updated file.
93
- If build failed with TypeScript errors, try running the build again to check whether new lumina.ts resolves the errors.`);import{getCwd as od,path as L}from"@arcgis/components-build-utils";var $t="@arcgis/lumina:compilerContextPlugin",w=class{constructor(t){this.typeScriptProgram=void 0;this.typeScriptTypeChecker=void 0;this.typeScriptWatchProgram=void 0;this._typeScriptSourceFiles=new Map;this._typeScriptReload=void 0;this._plugin={name:$t,enforce:"pre",apply:(t,n)=>(this._inferBuildSetup(n,t.define),!0),configResolved:{order:"pre",handler:t=>{this.viteConfig=t;let n=t.build.minify!==!1;this.shouldMinify=n&&this.viteCommand!=="serve",Object.hasOwn(this,"shouldMinifyJsx")||(this.shouldMinifyJsx=this.viteCommand!=="serve"||this.isInTest);let r=L.join(t.root,L.sep),i=L.join(r,"src",L.sep),o=L.join(i,"components",L.sep),s=L.join(L.resolve(r,t.build.outDir),L.sep),a=L.join(L.relative(r,s),L.sep),p=L.join(s,"components",L.sep),l=L.join(s,this.options.build?.cdn?.namespace??Ie,L.sep),c=L.join(l,"assets",L.sep);if(this.dir={root:r,src:i,srcComponents:o,relativeDist:a,dist:s,distComponents:p,distCdn:l,distCdnAssets:c},t.root!==od())throw new Error(`${$t}: Vite's config.root is not equal process.cwd(). This is not officially supported by Lumina and may lead to unexpected behavior. If you need this to be supported, comment on https://devtopia.esri.com/WebGIS/arcgis-web-components/issues/2126 or contact Lumina maintainers.`);s===r?console.warn(`${$t}: Vite output directory is set to the root directory. This can produce unexpected behavior. Please set the output directory to a subdirectory of the root directory (i.e dist/)`):a.startsWith("..")&&console.warn(`${$t}: 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.isInStorybook=t.resolve.conditions.includes("storybook"),this.isFullApiExtraction=this.viteCommand==="build"||this.isInStorybook,this.hmrEnabled=this.viteCommand==="serve"&&!this.isInTest&&!!(t.server?.hmr??!0),ho(this,t.build.sourcemap!==!1),Un(this)&&xe(this).catch(console.error)}},configureServer:{order:"post",handler:()=>{this._serverConfigured=!0}}};this._localDefinedComponents=void 0;this._cssImports=new Map;this._cssDocs=void 0;this.isInCi=!!process.env.CI;this._declarationTextTransformers=[];this._serverConfigured=!1;this.assetsToProvide=[];this._globalCssString=void 0;this._loadersCache=void 0;this._serveOnlyDependencies=void 0;this._customElementDependencies={};this._htmlElementReferencesReplacer=void 0;this._typeDependencies=new Map;this._silencedRules=void 0;this._updateLuminaTsPromise=void 0;this.options=t;let n=t.documentation??{};this._documentationFileNames={apiJson:n.apiJsonFileName===!1?void 0:n.apiJsonFileName?Le(n.apiJsonFileName):Re.apiJson,stencilLikeDocsJson:n.stencilLikeDocsJsonFileName===!1?void 0:n.stencilLikeDocsJsonFileName?Le(n.stencilLikeDocsJsonFileName):Re.stencilLikeDocsJson,webTypes:n.jetBrains===!1?void 0:n.jetBrains?.webTypesFileName?Le(n.jetBrains.webTypesFileName):Re.webTypes,vsCodeHtml:n.vsCode===!1?void 0:n.vsCode?.htmlFileName?Le(n.vsCode.htmlFileName):Re.vsCodeHtml,vsCodeCss:n.vsCode===!1?void 0:n.vsCode?.cssFileName?Le(n.vsCode.cssFileName):Re.vsCodeCss},ut().catch(console.error),this.componentFilesPromise=be(this,L.resolve("src/components")),go(this);let r=t.build?.preamble??Zo();this.banner=es(r)}_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(`${Ee}: Vite is running in unknown mode "${n}". Assuming development`),this.environment="development"),this.viteCommand=t;let i=r?.__IS_IN_PUPPETEER__===!0,o=this.viteCommand==="serve"&&this.isInTest&&this.options.puppeteerTesting?.enabled===!0;this.isInPuppeteerTestBackEnd=o&&!i,this.isInPuppeteerTestFrontEnd=o&&i,n==="production"&&(this._silencedRules=this.options.linting?.silence)}getSourceFile(t,n){let r=this.typeScriptProgram?.getSourceFile(t);if(r!==void 0){if(this.isInStorybook&&this.viteCommand==="serve")return r}else{if(this.viteCommand==="build"||this.isInStorybook)throw new Error(`Unable to find the TypeScript source file for ${t}`);{let o=this._typeScriptSourceFiles.get(t);o!==void 0&&o.text===n&&(r=o)}}return n!==r?.text&&(r=Vn.createSourceFile(t,n,r?.languageVersion??this.typeScriptConfig.target??Vn.ScriptTarget.Latest,!1,Vn.ScriptKind.TSX),this.viteCommand==="serve"&&this._typeScriptSourceFiles.set(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"&&ce(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()")}logLintError(t,n,r){let i=this._silencedRules?.[t]?.includes(n.slice(this.dir.root.length))!==!0;console.error(r),i&&(process.exitCode=1)}};A([F("buildStart() in build mode or load() serve mode")],w.prototype,"typeScriptHost",2),A([F("configResolved()")],w.prototype,"shouldMinify",2),A([F("configResolved()")],w.prototype,"shouldMinifyJsx",2),A([F("configResolved()")],w.prototype,"dir",2),A([F("load()")],w.prototype,"apiJson",2),A([F("load()")],w.prototype,"apiJsonComponents",2),A([F("load()")],w.prototype,"privateApiJson",2),A([F("load() when in build mode")],w.prototype,"_componentPathMapping",2),A([F("apply()")],w.prototype,"environment",2),A([F("apply()")],w.prototype,"isInTest",2),A([F("apply()")],w.prototype,"isInPuppeteerTestBackEnd",2),A([F("apply()")],w.prototype,"isInPuppeteerTestFrontEnd",2),A([F("configResolved()")],w.prototype,"isInStorybook",2),A([F("configResolved()")],w.prototype,"hmrEnabled",2),A([F("apply()")],w.prototype,"viteCommand",2),A([F("configResolved()")],w.prototype,"isFullApiExtraction",2),A([F("configResolved()")],w.prototype,"viteConfig",2),A([F("configResolved()")],w.prototype,"server",2),A([F("transform()")],w.prototype,"_globalHydratedCssString",2),A([F("config()")],w.prototype,"componentFiles",2),A([F("configResolved()")],w.prototype,"_compilerOptionsForPrinter",2),A([F("configResolved()")],w.prototype,"_typeScriptPrinter",2);import{path as de,toSystemPathSeparators as sd}from"@arcgis/components-build-utils";import{writeFile as is}from"node:fs/promises";var ss=e=>({name:"@arcgis/lumina:addNonLazyImports",apply:()=>e.viteCommand==="build",generateBundle(t,n){Object.entries(n).forEach(([r,i])=>{let o=ee(r,"components/",e);if(o!==r&&(i.fileName=o),i.type==="chunk"){let s=de.dirname(de.join(e.dir.dist,r)),a=o===r?s:de.dirname(de.join(e.dir.dist,o));i.code=Kt(i.code,e,a,s)}})},async writeBundle(){if(e.isInStorybook)return;let t=e._customElementDependencies,n=Object.entries(t),r=new Set(n.map(([o])=>o).filter(o=>ne(o,e.dir.srcComponents)));n.forEach(([o,{referencedTagNames:s,referencedBy:a}])=>{if(r.has(o)||s.length===0)return;let p=as(t,a,r);if(p.forEach(l=>{t[l].referencedTagNames.splice(0,0,...s)}),s.length>0&&p.length===0){let l=sd(o);throw new Error(`Unable to determine what files imported ${l}. This is necessary because this file referenced other web components (${s.join(", ")}), and so the compiler needs to know what component entrypoints these imports should be added to. Please double check if you are referencing ${l} in the code dynamically in the way that Lumina cannot detect, and report this issue to the Lumina maintainers.`)}});let i=n.flatMap(([o,{referencedTagNames:s}])=>{if(!r.has(o))return[];let a=de.dirname(o),p=ee(a,e.dir.srcComponents,e),l=de.relative(e.dir.src,p),c=s.map(u=>Zi(Yi(e,u,o),l)).filter(u=>u!==`./${l}`).map(u=>u.startsWith(".")?`${u}/${os}`:u),m=`${Array.from(new Set(c),u=>`import "${u}";
94
- `).join("").trimStart()}export * from "./${Te}";`;return[is(de.join(e.dir.dist,l,os),m),is(de.join(e.dir.dist,l,ad),m)]});await Promise.all(i)}}),os="index.js",ad="index.d.ts",as=(e,t,n,r=new Set)=>t.flatMap(i=>n.has(i)?[i]:r.has(i)?[]:(r.add(i),as(e,e[i].referencedBy,n,r)));var ls=e=>({name:"@arcgis/lumina:handleDynamicAssets",configureServer(t){e.server=t,!e.isInPuppeteerTestBackEnd&&ps(e).forEach(({assets:n,transformers:r})=>ce(e,n,r))},async writeBundle(){await Promise.all(ps(e).map(async({assets:t,transformers:n})=>await It(e,t,n)))}});function ps(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 pd}from"node:fs/promises";import{writeFileSync as ld}from"node:fs";import{path as zn}from"@arcgis/components-build-utils";var cs="@arcgis/lumina:updatePackageJson",ds=e=>({name:cs,apply:()=>e.viteCommand==="serve"&&e.environment==="development"&&!e.isInTest&&!e.isInCi,configResolved(){cd(e).catch(t=>console.error(`${cs}: Failed to update package's package.json`,t))}});async function cd(e){let t=zn.join(e.dir.root,"package.json"),n=JSON.parse(await pd(t,"utf-8")),r=dd(n,e);r&&ld(t,JSON.stringify(r,null,2))}function dd(e,t){let n=e?.devDependencies??{};Object.keys(e?.peerDependencies??{}).forEach(s=>{s in n||console.error(`Every peerDependency must also be a devDependency, or else some tools will get confused (like Turbo Build). Found "${s}" that is not a devDependency. Please edit your package.json`)});let r=!1,i=s=>zn.relative(t.dir.root,zn.join(t.dir.dist,s)),o=t._documentationFileNames;if(o.vsCodeCss!==void 0){let s=e["css.customData"]??[],a=i(o.vsCodeCss);s.includes(a)||(e["css.customData"]=[...s,a],r=!0)}if(o.apiJson!==void 0){let s=i(o.apiJson);e.customElements!==s&&(e.customElements=s,r=!0)}if(o.vsCodeHtml!==void 0){let s=e["html.customData"]??[],a=i(o.vsCodeHtml);s.includes(a)||(e["html.customData"]=[...s,a],r=!0)}if(o.webTypes!==void 0){let s=i(o.webTypes);e["web-types"]!==s&&(r=!0,e["web-types"]=s)}if(r)return e}import{isNotUndefined as ms}from"@arcgis/components-utils";import{path as md}from"@arcgis/components-build-utils";import{globalPackageIdentifier as ud}from"@arcgis/api-extractor";var us=e=>({timestamp:e.apiJson.timestamp,compiler:e.apiJson.compiler,components:fd(e),typeLibrary:{}});function fd(e){let t=[];for(let n of e.apiJson.modules)for(let r of n.declarations)"customElement"in r&&t.push(yd(r,n.path));return t}function yd(e,t){let n=e.superclass?[{name:"superclass",text:JSON.stringify(e.superclass)}]:[];return{filePath:t,tag:e.tagName??"",overview:"",readme:"",usage:{},docs:e.description??"",docsTags:[...e.docsTags??[],...n],encapsulation:e.encapsulation??"shadow",dependents:[],dependencies:[],dependencyGraph:{},deprecation:typeof e.deprecated=="boolean"?e.deprecated?"":void 0:e.deprecated,props:e.members.map(gd).filter(ms),methods:e.members.map(hd).filter(ms),events:e.events?.map(Cd)??[],styles:e.cssProperties?.map(r=>({name:r.name,annotation:"prop",docs:r.description??"",mode:void 0}))??[],slots:e.slots?.map(({name:r,description:i=""})=>({name:r,docs:i}))??[],parts:e.cssParts?.map(({name:r,description:i=""})=>({name:r,docs:i}))??[],listeners:[]}}function gd(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:""}]:[],i=t.docsTags?.some(o=>o.name==="required")??!1;return{name:e.name,type:t.type?.text??"unknown",complexType:t.type===void 0?void 0:{original:t.type.text,resolved:t.type.text,references:qn(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:!i,required:i}}var qn=e=>Object.fromEntries(e?.map(t=>[t.name,{location:t.package===ud?"global":t.package===void 0?"local":"import",path:typeof t.module=="string"&&typeof t.package=="string"?md.join(t.package,t.module):t.module??t.package,id:"notImplemented"}])??[]);function hd(e){if(e.kind!=="method")return;let t=e,n=e.inheritedFrom?[{name:"inheritedFrom",text:JSON.stringify(e.inheritedFrom)}]:[],r=t.parameters?.map(({name:i,type:o,description:s})=>({name:i,type:o?.text??"unknown",docs:s??""}))??[];return{name:e.name,returns:{type:t.return?.type?.text??"void",docs:t.docsTags?.filter(({name:i})=>i==="return"||i==="returns").map(({text:i})=>i).join(`
95
- `)??""},complexType:{signature:t.signature??"()=>unknown",parameters:r,return:t.return?.type?.text??"void",references:qn([...t.return?.type?.references??[],...t.parameters?.flatMap(i=>i.type.references??[])??[]])},signature:`${t.name}${t.signature??"()=>unknown"}`,parameters:r,docs:t.description??"",docsTags:[...t.docsTags??[],...n],deprecation:typeof t.deprecated=="boolean"?t.deprecated?"":void 0:t.deprecated}}function Cd(e){let t=e.inheritedFrom?[{name:"inheritedFrom",text:JSON.stringify(e.inheritedFrom)}]:[];return{event:e.name,detail:e.type.text,bubbles:e.bubbles??!0,complexType:{original:e.type.text,resolved:e.type.text,references:qn(e.type.references)},cancelable:e.cancelable??!0,composed:e.composed??!0,docs:e.description??"",docsTags:[...e.docsTags??[],...t],deprecation:typeof e.deprecated=="boolean"?e.deprecated?"":void 0:e.deprecated}}import{path as Ze}from"@arcgis/components-build-utils";import{writeFile as Gn}from"node:fs/promises";import{retrievePackageJson as Pd}from"@arcgis/components-build-utils";var Mt=e=>e.flatMap(t=>t.cssProperties?.map(n=>({name:n.name,description:n.description||void 0}))??[]),Jt=e=>e.flatMap(t=>t.cssParts?.map(n=>({name:`::part(${n.name})`,description:n.description||void 0}))??[]),fs=e=>e.attributes?.map(t=>({name:t.name??"",description:$e(t.description,t.deprecated)||void 0,default:t.default,value:{type:xd(t.type.values?.map(Xt))}}))??[],xd=e=>e?.length===1?e[0]:e,$e=(e="",t=!1)=>t===!1?e:`**Deprecated**${typeof t=="string"?`: ${t}`:""}. ${e}`;import{isApiMethod as Td}from"@arcgis/api-extractor";var Qe={slots:"Slots",events:"Events",cssProperties:"CSS Properties",cssParts:"CSS Parts",methods:"Methods"};function jt(e){let t=bd(e.slots),n=Sd(e.events),r=vd(e.cssProperties),i=Ed(e.cssParts),o=wd(e.members),s=$e(e.description,e.deprecated).trim();return[...s?[`${s}
90
+ /// <reference types="@arcgis/lumina/typings" />`,nd=`
91
+ /// <reference types="@arcgis/core/interfaces" />`;import rd from"chalk";var ns="@arcgis/lumina:dependencySupport",Un=(e,t)=>e.viteCommand==="serve"&&(!e.isInTest||!e.viteConfig.test?.browser?.enabled)||e.isInStorybook&&(t===void 0||t.path==="/iframe.html"),rs=e=>({name:ns,configResolved(){!e.isInTest&&!e.isInStorybook&&(e._updateLuminaTsPromise=id(e).catch(t=>console.error(`${ns}: Failed to update package's src/lumina.ts`,t)))},transformIndexHtml:{order:"pre",async handler(t,n){return Un(e,n)?(await xe(e)).map(i=>"javascriptCode"in i?{tag:"script",attrs:{type:"module"},children:i.javascriptCode.join(`
92
+ `)}:"cssHref"in i?{tag:"link",attrs:{rel:"stylesheet",href:i.cssHref,id:i.id}}:i):void 0}},async buildStart(){if(e.viteCommand!=="serve")return;let n=(await xe(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 buildEnd(){await e._updateLuminaTsPromise}});async function id(e){let n=(await Promise.all([oe,On(e)])).flat();if(!await $t(n,e.dir.src,Ge,e.viteConfig.test?.browser?.provider))return;let i=!1;function o(){i||console.warn(od),i=!0}process.on("exit",()=>{o(),clearTimeout(a)});let a=setTimeout(o,2e3)}var od=rd.greenBright(`lumina.ts has been updated (potentially because your dependencies changed). Please commit the updated file.
93
+ If build failed with TypeScript errors, try running the build again to check whether new lumina.ts resolves the errors.`);import{getCwd as sd,path as L}from"@arcgis/components-build-utils";var Rt="@arcgis/lumina:compilerContextPlugin",w=class{constructor(t){this.typeScriptProgram=void 0;this.typeScriptTypeChecker=void 0;this.typeScriptWatchProgram=void 0;this._typeScriptSourceFiles=new Map;this._typeScriptReload=void 0;this._plugin={name:Rt,enforce:"pre",apply:(t,n)=>(this._inferBuildSetup(n,t.define),!0),configResolved:{order:"pre",handler:t=>{this.viteConfig=t;let n=t.build.minify!==!1;this.shouldMinify=n&&this.viteCommand!=="serve",Object.hasOwn(this,"shouldMinifyJsx")||(this.shouldMinifyJsx=this.viteCommand!=="serve"||this.isInTest);let r=L.join(t.root,L.sep),i=L.join(r,"src",L.sep),o=L.join(i,"components",L.sep),s=L.join(L.resolve(r,t.build.outDir),L.sep),a=L.join(L.relative(r,s),L.sep),p=L.join(s,"components",L.sep),l=L.join(s,this.options.build?.cdn?.namespace??Ie,L.sep),c=L.join(l,"assets",L.sep);if(this.dir={root:r,src:i,srcComponents:o,relativeDist:a,dist:s,distComponents:p,distCdn:l,distCdnAssets:c},t.root!==sd())throw new Error(`${Rt}: Vite's config.root is not equal process.cwd(). This is not officially supported by Lumina and may lead to unexpected behavior. If you need this to be supported, comment on https://devtopia.esri.com/WebGIS/arcgis-web-components/issues/2126 or contact Lumina maintainers.`);s===r?console.warn(`${Rt}: Vite output directory is set to the root directory. This can produce unexpected behavior. Please set the output directory to a subdirectory of the root directory (i.e dist/)`):a.startsWith("..")&&console.warn(`${Rt}: 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.isInStorybook=t.resolve.conditions.includes("storybook"),this.isFullApiExtraction=this.viteCommand==="build"||this.isInStorybook,this.hmrEnabled=this.viteCommand==="serve"&&!this.isInTest&&!!(t.server?.hmr??!0),ho(this,t.build.sourcemap!==!1),Un(this)&&xe(this).catch(console.error)}},configureServer:{order:"post",handler:()=>{this._serverConfigured=!0}}};this._localDefinedComponents=void 0;this._cssImports=new Map;this._cssDocs=void 0;this.isInCi=!!process.env.CI;this._declarationTextTransformers=[];this._serverConfigured=!1;this.assetsToProvide=[];this._globalCssString=void 0;this._loadersCache=void 0;this._serveOnlyDependencies=void 0;this._customElementDependencies={};this._htmlElementReferencesReplacer=void 0;this._typeDependencies=new Map;this._silencedRules=void 0;this._updateLuminaTsPromise=void 0;this.options=t;let n=t.documentation??{};this._documentationFileNames={apiJson:n.apiJsonFileName===!1?void 0:n.apiJsonFileName?Le(n.apiJsonFileName):$e.apiJson,stencilLikeDocsJson:n.stencilLikeDocsJsonFileName===!1?void 0:n.stencilLikeDocsJsonFileName?Le(n.stencilLikeDocsJsonFileName):$e.stencilLikeDocsJson,webTypes:n.jetBrains===!1?void 0:n.jetBrains?.webTypesFileName?Le(n.jetBrains.webTypesFileName):$e.webTypes,vsCodeHtml:n.vsCode===!1?void 0:n.vsCode?.htmlFileName?Le(n.vsCode.htmlFileName):$e.vsCodeHtml,vsCodeCss:n.vsCode===!1?void 0:n.vsCode?.cssFileName?Le(n.vsCode.cssFileName):$e.vsCodeCss},ut().catch(console.error),this.componentFilesPromise=be(this,L.resolve("src/components")),go(this);let r=t.build?.preamble??Zo();this.banner=es(r)}_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(`${Ee}: Vite is running in unknown mode "${n}". Assuming development`),this.environment="development"),this.viteCommand=t;let i=r?.__IS_IN_PUPPETEER__===!0,o=this.viteCommand==="serve"&&this.isInTest&&this.options.puppeteerTesting?.enabled===!0;this.isInPuppeteerTestBackEnd=o&&!i,this.isInPuppeteerTestFrontEnd=o&&i,n==="production"&&(this._silencedRules=this.options.linting?.silence)}getSourceFile(t,n){let r=this.typeScriptProgram?.getSourceFile(t);if(r!==void 0){if(this.isInStorybook&&this.viteCommand==="serve")return r}else{if(this.viteCommand==="build"||this.isInStorybook)throw new Error(`Unable to find the TypeScript source file for ${t}`);{let o=this._typeScriptSourceFiles.get(t);o!==void 0&&o.text===n&&(r=o)}}return n!==r?.text&&(r=Vn.createSourceFile(t,n,r?.languageVersion??this.typeScriptConfig.target??Vn.ScriptTarget.Latest,!1,Vn.ScriptKind.TSX),this.viteCommand==="serve"&&this._typeScriptSourceFiles.set(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"&&ce(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()")}logLintError(t,n,r){let i=this._silencedRules?.[t]?.includes(n.slice(this.dir.root.length))!==!0;console.error(r),i&&(process.exitCode=1)}};A([F("buildStart() in build mode or load() serve mode")],w.prototype,"typeScriptHost",2),A([F("configResolved()")],w.prototype,"shouldMinify",2),A([F("configResolved()")],w.prototype,"shouldMinifyJsx",2),A([F("configResolved()")],w.prototype,"dir",2),A([F("load()")],w.prototype,"apiJson",2),A([F("load()")],w.prototype,"apiJsonComponents",2),A([F("load()")],w.prototype,"privateApiJson",2),A([F("load() when in build mode")],w.prototype,"_componentPathMapping",2),A([F("apply()")],w.prototype,"environment",2),A([F("apply()")],w.prototype,"isInTest",2),A([F("apply()")],w.prototype,"isInPuppeteerTestBackEnd",2),A([F("apply()")],w.prototype,"isInPuppeteerTestFrontEnd",2),A([F("configResolved()")],w.prototype,"isInStorybook",2),A([F("configResolved()")],w.prototype,"hmrEnabled",2),A([F("apply()")],w.prototype,"viteCommand",2),A([F("configResolved()")],w.prototype,"isFullApiExtraction",2),A([F("configResolved()")],w.prototype,"viteConfig",2),A([F("configResolved()")],w.prototype,"server",2),A([F("transform()")],w.prototype,"_globalHydratedCssString",2),A([F("config()")],w.prototype,"componentFiles",2),A([F("configResolved()")],w.prototype,"_compilerOptionsForPrinter",2),A([F("configResolved()")],w.prototype,"_typeScriptPrinter",2);import{path as de,toSystemPathSeparators as ad}from"@arcgis/components-build-utils";import{writeFile as is}from"node:fs/promises";var ss=e=>({name:"@arcgis/lumina:addNonLazyImports",apply:()=>e.viteCommand==="build",generateBundle(t,n){Object.entries(n).forEach(([r,i])=>{let o=ee(r,"components/",e);if(o!==r&&(i.fileName=o),i.type==="chunk"){let s=de.dirname(de.join(e.dir.dist,r)),a=o===r?s:de.dirname(de.join(e.dir.dist,o));i.code=Kt(i.code,e,a,s)}})},async writeBundle(){if(e.isInStorybook)return;let t=e._customElementDependencies,n=Object.entries(t),r=new Set(n.map(([o])=>o).filter(o=>ne(o,e.dir.srcComponents)));n.forEach(([o,{referencedTagNames:s,referencedBy:a}])=>{if(r.has(o)||s.length===0)return;let p=as(t,a,r);if(p.forEach(l=>{t[l].referencedTagNames.splice(0,0,...s)}),s.length>0&&p.length===0){let l=ad(o);throw new Error(`Unable to determine what files imported ${l}. This is necessary because this file referenced other web components (${s.join(", ")}), and so the compiler needs to know what component entrypoints these imports should be added to. Please double check if you are referencing ${l} in the code dynamically in the way that Lumina cannot detect, and report this issue to the Lumina maintainers.`)}});let i=n.flatMap(([o,{referencedTagNames:s}])=>{if(!r.has(o))return[];let a=de.dirname(o),p=ee(a,e.dir.srcComponents,e),l=de.relative(e.dir.src,p),c=s.map(u=>Zi(Yi(e,u,o),l)).filter(u=>u!==`./${l}`).map(u=>u.startsWith(".")?`${u}/${os}`:u),m=`${Array.from(new Set(c),u=>`import "${u}";
94
+ `).join("").trimStart()}export * from "./${Te}";`;return[is(de.join(e.dir.dist,l,os),m),is(de.join(e.dir.dist,l,pd),m)]});await Promise.all(i)}}),os="index.js",pd="index.d.ts",as=(e,t,n,r=new Set)=>t.flatMap(i=>n.has(i)?[i]:r.has(i)?[]:(r.add(i),as(e,e[i].referencedBy,n,r)));var ls=e=>({name:"@arcgis/lumina:handleDynamicAssets",configureServer(t){e.server=t,!e.isInPuppeteerTestBackEnd&&ps(e).forEach(({assets:n,transformers:r})=>ce(e,n,r))},async writeBundle(){await Promise.all(ps(e).map(async({assets:t,transformers:n})=>await It(e,t,n)))}});function ps(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 ld}from"node:fs/promises";import{writeFileSync as cd}from"node:fs";import{path as zn}from"@arcgis/components-build-utils";var cs="@arcgis/lumina:updatePackageJson",ds=e=>({name:cs,apply:()=>e.viteCommand==="serve"&&e.environment==="development"&&!e.isInTest&&!e.isInCi,configResolved(){dd(e).catch(t=>console.error(`${cs}: Failed to update package's package.json`,t))}});async function dd(e){let t=zn.join(e.dir.root,"package.json"),n=JSON.parse(await ld(t,"utf-8")),r=md(n,e);r&&cd(t,JSON.stringify(r,null,2))}function md(e,t){let n=e?.devDependencies??{};Object.keys(e?.peerDependencies??{}).forEach(s=>{s in n||console.error(`Every peerDependency must also be a devDependency, or else some tools will get confused (like Turbo Build). Found "${s}" that is not a devDependency. Please edit your package.json`)});let r=!1,i=s=>zn.relative(t.dir.root,zn.join(t.dir.dist,s)),o=t._documentationFileNames;if(o.vsCodeCss!==void 0){let s=e["css.customData"]??[],a=i(o.vsCodeCss);s.includes(a)||(e["css.customData"]=[...s,a],r=!0)}if(o.apiJson!==void 0){let s=i(o.apiJson);e.customElements!==s&&(e.customElements=s,r=!0)}if(o.vsCodeHtml!==void 0){let s=e["html.customData"]??[],a=i(o.vsCodeHtml);s.includes(a)||(e["html.customData"]=[...s,a],r=!0)}if(o.webTypes!==void 0){let s=i(o.webTypes);e["web-types"]!==s&&(r=!0,e["web-types"]=s)}if(r)return e}import{isNotUndefined as ms}from"@arcgis/components-utils";import{path as ud}from"@arcgis/components-build-utils";import{globalPackageIdentifier as fd}from"@arcgis/api-extractor";var us=e=>({timestamp:e.apiJson.timestamp,compiler:e.apiJson.compiler,components:yd(e),typeLibrary:{}});function yd(e){let t=[];for(let n of e.apiJson.modules)for(let r of n.declarations)"customElement"in r&&t.push(gd(r,n.path));return t}function gd(e,t){let n=e.superclass?[{name:"superclass",text:JSON.stringify(e.superclass)}]:[];return{filePath:t,tag:e.tagName??"",overview:"",readme:"",usage:{},docs:e.description??"",docsTags:[...e.docsTags??[],...n],encapsulation:e.encapsulation??"shadow",dependents:[],dependencies:[],dependencyGraph:{},deprecation:typeof e.deprecated=="boolean"?e.deprecated?"":void 0:e.deprecated,props:e.members.map(hd).filter(ms),methods:e.members.map(Cd).filter(ms),events:e.events?.map(xd)??[],styles:e.cssProperties?.map(r=>({name:r.name,annotation:"prop",docs:r.description??"",mode:void 0}))??[],slots:e.slots?.map(({name:r,description:i=""})=>({name:r,docs:i}))??[],parts:e.cssParts?.map(({name:r,description:i=""})=>({name:r,docs:i}))??[],listeners:[]}}function hd(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:""}]:[],i=t.docsTags?.some(o=>o.name==="required")??!1;return{name:e.name,type:t.type?.text??"unknown",complexType:t.type===void 0?void 0:{original:t.type.text,resolved:t.type.text,references:qn(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:!i,required:i}}var qn=e=>Object.fromEntries(e?.map(t=>[t.name,{location:t.package===fd?"global":t.package===void 0?"local":"import",path:typeof t.module=="string"&&typeof t.package=="string"?ud.join(t.package,t.module):t.module??t.package,id:"notImplemented"}])??[]);function Cd(e){if(e.kind!=="method")return;let t=e,n=e.inheritedFrom?[{name:"inheritedFrom",text:JSON.stringify(e.inheritedFrom)}]:[],r=t.parameters?.map(({name:i,type:o,description:s})=>({name:i,type:o?.text??"unknown",docs:s??""}))??[];return{name:e.name,returns:{type:t.return?.type?.text??"void",docs:t.docsTags?.filter(({name:i})=>i==="return"||i==="returns").map(({text:i})=>i).join(`
95
+ `)??""},complexType:{signature:t.signature??"()=>unknown",parameters:r,return:t.return?.type?.text??"void",references:qn([...t.return?.type?.references??[],...t.parameters?.flatMap(i=>i.type.references??[])??[]])},signature:`${t.name}${t.signature??"()=>unknown"}`,parameters:r,docs:t.description??"",docsTags:[...t.docsTags??[],...n],deprecation:typeof t.deprecated=="boolean"?t.deprecated?"":void 0:t.deprecated}}function xd(e){let t=e.inheritedFrom?[{name:"inheritedFrom",text:JSON.stringify(e.inheritedFrom)}]:[];return{event:e.name,detail:e.type.text,bubbles:e.bubbles??!0,complexType:{original:e.type.text,resolved:e.type.text,references:qn(e.type.references)},cancelable:e.cancelable??!0,composed:e.composed??!0,docs:e.description??"",docsTags:[...e.docsTags??[],...t],deprecation:typeof e.deprecated=="boolean"?e.deprecated?"":void 0:e.deprecated}}import{path as Ze}from"@arcgis/components-build-utils";import{writeFile as Gn}from"node:fs/promises";import{retrievePackageJson as Ad}from"@arcgis/components-build-utils";var Mt=e=>e.flatMap(t=>t.cssProperties?.map(n=>({name:n.name,description:n.description||void 0}))??[]),Jt=e=>e.flatMap(t=>t.cssParts?.map(n=>({name:`::part(${n.name})`,description:n.description||void 0}))??[]),fs=e=>e.attributes?.map(t=>({name:t.name??"",description:Re(t.description,t.deprecated)||void 0,default:t.default,value:{type:Td(t.type.values?.map(Xt))}}))??[],Td=e=>e?.length===1?e[0]:e,Re=(e="",t=!1)=>t===!1?e:`**Deprecated**${typeof t=="string"?`: ${t}`:""}. ${e}`;import{isApiMethod as bd}from"@arcgis/api-extractor";var Qe={slots:"Slots",events:"Events",cssProperties:"CSS Properties",cssParts:"CSS Parts",methods:"Methods"};function jt(e){let t=Sd(e.slots),n=vd(e.events),r=Ed(e.cssProperties),i=wd(e.cssParts),o=Pd(e.members),s=Re(e.description,e.deprecated).trim();return[...s?[`${s}
96
96
  --`]:[],n,o,t,r,i].filter(Boolean).join(`
97
97
 
98
98
  `)}var Ye=(e,t)=>t===void 0||t.length===0?"":`### ${e}
99
99
  ${t.join(`
100
- `)}`,bd=e=>Ye(Qe.slots,e?.map(t=>`- ${t.name?`**${t.name}**`:"_default_"} - ${t.description}`)),Sd=e=>Ye(Qe.events,e?.filter(t=>t.name!==null&&t.name!==void 0).map(t=>`- **${t.name}**${t.description?` - ${t.description}`:""}`)),vd=(e=[])=>Ye(Qe.cssProperties,e?.map(t=>`- **${t.name}** - ${t.description} ${t.default?`_(default: ${t.default})_}`:""}`)),Ed=e=>Ye(Qe.cssParts,e?.map(t=>`- **${t.name}** - ${t.description}`)),wd=e=>Ye(Qe.methods,e.filter(Td).map(t=>[`- \`${t.name}${t.signature}\``,$e(t.description,t.deprecated)].filter(Boolean).join(" - ")));import{isApiProperty as Ad}from"@arcgis/api-extractor";function gs(e,t){let n=Dd(e),r=Mt(e),i=Jt(e),o=Pd();return{$schema:"https://raw.githubusercontent.com/JetBrains/web-types/master/schema/web-types.json",name:o.name,version:o.version,"description-markup":"markdown","default-icon":t.defaultIcon,contributions:{html:{elements:n},css:{properties:r,"pseudo-elements":i}}}}var Dd=e=>e.map(t=>({name:t.tagName,description:jt(t),"doc-url":t.demos?.[0]?.url,attributes:fs(t),slots:t.slots?.map(n=>({name:n.name,description:n.description})),events:ys(t),js:{properties:Fd(t),events:ys(t)}})),Fd=e=>e.members.filter(Ad).map(t=>({name:t.name,description:t.description,type:t.type?.text}))??[],ys=e=>e.events?.map(t=>({name:t.name,type:t.type?.text,description:t.description}))??[];var hs=e=>e.map(t=>({name:t.tagName,description:jt(t),attributes:kd(t),references:t.demos?.map(n=>({name:n.description,url:n.url}))??[]})),kd=e=>e.attributes?.map(t=>({name:t.name,description:$e(t.description,t.deprecated)||void 0,values:Id(t)}))??[],Id=e=>e.type.values?.map(t=>t.value??"").filter(Boolean).map(t=>({name:t}))??[];var Cs=e=>({$schema:"https://raw.githubusercontent.com/microsoft/vscode-html-languageservice/main/docs/customData.schema.json",version:1.1,tags:hs(e)}),xs=e=>({$schema:"https://raw.githubusercontent.com/microsoft/vscode-css-languageservice/main/docs/customData.schema.json",version:1.1,properties:Mt(e),pseudoElements:Jt(e)});import{isNotUndefined as Nd}from"@arcgis/components-utils";var Ld="@arcgis/lumina:generateDocs";function Ts(e){return e._documentationFileNames.stencilLikeDocsJson!==void 0&&e.provideAssets([{type:"dynamic",source:()=>JSON.stringify(us(e),null,2),destination:Ze.join("../..",e._documentationFileNames.stencilLikeDocsJson)}]),e._documentationFileNames.apiJson!==void 0&&e.provideAssets([{type:"dynamic",source:()=>JSON.stringify(e.apiJson,null,2),destination:Ze.join("../..",e._documentationFileNames.apiJson)}]),{name:Ld,async writeBundle(){if(e.isInStorybook)return;let{jetBrains:t}=e.options.documentation??{},n=e._documentationFileNames,r=n.vsCodeHtml===void 0?void 0:Ze.join(e.dir.dist,n.vsCodeHtml),i=n.vsCodeCss===void 0?void 0:Ze.join(e.dir.dist,n.vsCodeCss),o=n.webTypes===void 0?void 0:Ze.join(e.dir.dist,n.webTypes),s=[r,i,o].filter(Nd);if(s.length===0)return;await _n(s);let a=[];if(r!==void 0){let p=JSON.stringify(Cs(e.apiJsonComponents),null,2);a.push(Gn(r,p))}if(i!==void 0){let p=JSON.stringify(xs(e.apiJsonComponents),null,2);a.push(Gn(i,p))}if(o!==void 0){let p=gs(e.apiJsonComponents,typeof t=="object"?t:{});a.push(Gn(o,JSON.stringify(p,null,2)))}await Promise.all(a)}}}var bs=e=>`import type { h, EventHandler } from "@arcgis/lumina";
100
+ `)}`,Sd=e=>Ye(Qe.slots,e?.map(t=>`- ${t.name?`**${t.name}**`:"_default_"} - ${t.description}`)),vd=e=>Ye(Qe.events,e?.filter(t=>t.name!==null&&t.name!==void 0).map(t=>`- **${t.name}**${t.description?` - ${t.description}`:""}`)),Ed=(e=[])=>Ye(Qe.cssProperties,e?.map(t=>`- **${t.name}** - ${t.description} ${t.default?`_(default: ${t.default})_}`:""}`)),wd=e=>Ye(Qe.cssParts,e?.map(t=>`- **${t.name}** - ${t.description}`)),Pd=e=>Ye(Qe.methods,e.filter(bd).map(t=>[`- \`${t.name}${t.signature}\``,Re(t.description,t.deprecated)].filter(Boolean).join(" - ")));import{isApiProperty as Dd}from"@arcgis/api-extractor";function gs(e,t){let n=Fd(e),r=Mt(e),i=Jt(e),o=Ad();return{$schema:"https://raw.githubusercontent.com/JetBrains/web-types/master/schema/web-types.json",name:o.name,version:o.version,"description-markup":"markdown","default-icon":t.defaultIcon,contributions:{html:{elements:n},css:{properties:r,"pseudo-elements":i}}}}var Fd=e=>e.map(t=>({name:t.tagName,description:jt(t),"doc-url":t.demos?.[0]?.url,attributes:fs(t),slots:t.slots?.map(n=>({name:n.name,description:n.description})),events:ys(t),js:{properties:kd(t),events:ys(t)}})),kd=e=>e.members.filter(Dd).map(t=>({name:t.name,description:t.description,type:t.type?.text}))??[],ys=e=>e.events?.map(t=>({name:t.name,type:t.type?.text,description:t.description}))??[];var hs=e=>e.map(t=>({name:t.tagName,description:jt(t),attributes:Id(t),references:t.demos?.map(n=>({name:n.description,url:n.url}))??[]})),Id=e=>e.attributes?.map(t=>({name:t.name,description:Re(t.description,t.deprecated)||void 0,values:Nd(t)}))??[],Nd=e=>e.type.values?.map(t=>t.value??"").filter(Boolean).map(t=>({name:t}))??[];var Cs=e=>({$schema:"https://raw.githubusercontent.com/microsoft/vscode-html-languageservice/main/docs/customData.schema.json",version:1.1,tags:hs(e)}),xs=e=>({$schema:"https://raw.githubusercontent.com/microsoft/vscode-css-languageservice/main/docs/customData.schema.json",version:1.1,properties:Mt(e),pseudoElements:Jt(e)});import{isNotUndefined as Ld}from"@arcgis/components-utils";var $d="@arcgis/lumina:generateDocs";function Ts(e){return e._documentationFileNames.stencilLikeDocsJson!==void 0&&e.provideAssets([{type:"dynamic",source:()=>JSON.stringify(us(e),null,2),destination:Ze.join("../..",e._documentationFileNames.stencilLikeDocsJson)}]),e._documentationFileNames.apiJson!==void 0&&e.provideAssets([{type:"dynamic",source:()=>JSON.stringify(e.apiJson,null,2),destination:Ze.join("../..",e._documentationFileNames.apiJson)}]),{name:$d,async writeBundle(){if(e.isInStorybook)return;let{jetBrains:t}=e.options.documentation??{},n=e._documentationFileNames,r=n.vsCodeHtml===void 0?void 0:Ze.join(e.dir.dist,n.vsCodeHtml),i=n.vsCodeCss===void 0?void 0:Ze.join(e.dir.dist,n.vsCodeCss),o=n.webTypes===void 0?void 0:Ze.join(e.dir.dist,n.webTypes),s=[r,i,o].filter(Ld);if(s.length===0)return;await _n(s);let a=[];if(r!==void 0){let p=JSON.stringify(Cs(e.apiJsonComponents),null,2);a.push(Gn(r,p))}if(i!==void 0){let p=JSON.stringify(xs(e.apiJsonComponents),null,2);a.push(Gn(i,p))}if(o!==void 0){let p=gs(e.apiJsonComponents,typeof t=="object"?t:{});a.push(Gn(o,JSON.stringify(p,null,2)))}await Promise.all(a)}}}var bs=e=>`import type { h, EventHandler } from "@arcgis/lumina";
101
101
 
102
102
  ${e.map(Rd).join(`
103
103
 
@@ -118,7 +118,7 @@ ${e.map(({pascalCaseName:n,tagName:r})=>` "${r}": Preact${n};`).join(`
118
118
  }`;return`import { JSX as PreactJsx } from "preact";
119
119
  import type { EventHandler } from "@arcgis/lumina";
120
120
 
121
- ${e.map($d).join(`
121
+ ${e.map(Md).join(`
122
122
 
123
123
  `)}
124
124
 
@@ -129,13 +129,13 @@ ${t}
129
129
  namespace h.JSX {
130
130
  ${t}
131
131
  }
132
- }`}function $d({name:e,pascalCaseName:t,members:n,events:r=[]}){let[i,o]=pe(e,n);return[`interface Preact${t} extends ${i}PreactJsx.HTMLAttributes<HTML${t}Element> {
132
+ }`}function Md({name:e,pascalCaseName:t,members:n,events:r=[]}){let[i,o]=pe(e,n);return[`interface Preact${t} extends ${i}PreactJsx.HTMLAttributes<HTML${t}Element> {
133
133
  `,r.map(s=>` ${z(`on${s.name}`)}?: EventHandler<HTML${t}Element["${s.name}"]>;
134
134
  `).join(""),"}",o].join("")}function vs(e){let t=e.map(({pascalCaseName:n,tagName:r})=>` "${r}": React${n};`).join(`
135
135
  `);return`import type { HTMLProps } from 'react';
136
136
  import type { EventHandler } from "@arcgis/lumina";
137
137
 
138
- ${e.map(Md).join(`
138
+ ${e.map(Jd).join(`
139
139
 
140
140
  `)}
141
141
 
@@ -159,12 +159,12 @@ declare module "react/jsx-dev-runtime" {
159
159
  ${t}
160
160
  }
161
161
  }
162
- }`}function Md({name:e,pascalCaseName:t,members:n,events:r=[]}){let[i,o]=pe(e,n);return[`interface React${t} extends ${i}HTMLProps<HTML${t}Element> {
162
+ }`}function Jd({name:e,pascalCaseName:t,members:n,events:r=[]}){let[i,o]=pe(e,n);return[`interface React${t} extends ${i}HTMLProps<HTML${t}Element> {
163
163
  `,r.map(s=>` ${z(`on${s.name}`)}?: EventHandler<HTML${t}Element["${s.name}"]>;
164
164
  `).join(""),"}",o].join("")}var Es=e=>`import { JSXBase as StencilJsx } from "@stencil/core/internal";
165
165
  import type { EventHandler } from "@arcgis/lumina";
166
166
 
167
- ${e.map(Jd).join(`
167
+ ${e.map(jd).join(`
168
168
 
169
169
  `)}
170
170
 
@@ -181,16 +181,16 @@ declare module "@stencil/core/internal/stencil-public-runtime" {
181
181
  export namespace h.JSX {
182
182
  interface IntrinsicElements extends ExposedElements {}
183
183
  }
184
- }`;function Jd({name:e,pascalCaseName:t,members:n,events:r=[]}){let[i,o]=pe(e,n);return[`interface Stencil${t} extends ${i}StencilJsx.HTMLAttributes<HTML${t}Element> {
184
+ }`;function jd({name:e,pascalCaseName:t,members:n,events:r=[]}){let[i,o]=pe(e,n);return[`interface Stencil${t} extends ${i}StencilJsx.HTMLAttributes<HTML${t}Element> {
185
185
  `,r.map(s=>` ${z(`on${s.name[0].toUpperCase()}${s.name.slice(1)}`)}?: EventHandler<HTML${t}Element["${s.name}"]>;
186
- `).join(""),"}",o].join("")}import{mkdir as Wd,writeFile as Ps}from"node:fs/promises";var ws=(e,t,n)=>[n,t,jd(e),Od(e)].join(`
186
+ `).join(""),"}",o].join("")}import{mkdir as Hd,writeFile as Ps}from"node:fs/promises";var ws=(e,t,n)=>[n,t,Od(e),Bd(e)].join(`
187
187
 
188
- `),jd=e=>e.filter(t=>(t.events?.length??0)>0).map(({pascalCaseName:t})=>`export interface ${t}CustomEvent<T> extends CustomEvent<T> {
188
+ `),Od=e=>e.filter(t=>(t.events?.length??0)>0).map(({pascalCaseName:t})=>`export interface ${t}CustomEvent<T> extends CustomEvent<T> {
189
189
  detail: T;
190
190
  target: HTML${t}Element;
191
191
  currentTarget: HTML${t}Element;
192
192
  }`).join(`
193
- `),Od=e=>`export { ToEvents, TargetedEvent } from "@arcgis/lumina";
193
+ `),Bd=e=>`export { ToEvents, TargetedEvent } from "@arcgis/lumina";
194
194
 
195
195
  declare global {
196
196
  interface HTMLElementTagNameMap {
@@ -198,11 +198,11 @@ ${e.map(({pascalCaseName:t,tagName:n})=>` "${n}": HTML${t}Element;`).join(`
198
198
  `)}
199
199
  }
200
200
 
201
- ${e.map(Bd).join(`
201
+ ${e.map(Wd).join(`
202
202
  `).split(`
203
203
  `).map(t=>t.length>0?` ${t}`:t).join(`
204
204
  `)}
205
- }`;function Bd({name:e,pascalCaseName:t,events:n=[]}){let r=n.length>0,i=`${t}CustomEvent`,o=`HTML${t}Element`;return[r?`interface ${o}EventMap {
205
+ }`;function Wd({name:e,pascalCaseName:t,events:n=[]}){let r=n.length>0,i=`${t}CustomEvent`,o=`HTML${t}Element`;return[r?`interface ${o}EventMap {
206
206
  ${n.map(s=>` "${s.name}": ${e}["${s.name}"]["detail"];`).join(`
207
207
  `)}
208
208
  }
@@ -214,16 +214,16 @@ ${r?` addEventListener<K extends keyof ${o}EventMap>(type: K, listener: (this:
214
214
  removeEventListener<K extends keyof ${o}EventMap>(type: K, listener: (this: ${o}, ev: ${i}<${o}EventMap[K]>) => any, options?: boolean | EventListenerOptions): void;
215
215
  removeEventListener<K extends keyof HTMLElementEventMap>(type: K, listener: (this: HTMLElement, ev: HTMLElementEventMap[K]) => any, options?: boolean | EventListenerOptions): void;
216
216
  removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void;`:""}
217
- }`].join("")}import{path as Ot}from"@arcgis/components-build-utils";function As(e){let t;return{name:"@arcgis/lumina:generateFrameworkTypes",generateBundle(){if(e.isInStorybook)return;t=Bi(e);let n=Ot.join(e.dir.dist,"index.d.ts");e._declarationTextTransformers.push(r=>{let{filePath:i,content:o}=r;return i===n?{filePath:i,content:ws(e.apiJsonComponents,o,t)}:r})},async writeBundle(){if(e.isInStorybook)return;let n=Ot.join(e.dir.dist,"types");await Wd(n);let r=`/// <reference types="../index.d.ts" />
217
+ }`].join("")}import{path as Ot}from"@arcgis/components-build-utils";function As(e){let t;return{name:"@arcgis/lumina:generateFrameworkTypes",generateBundle(){if(e.isInStorybook)return;t=Bi(e);let n=Ot.join(e.dir.dist,"index.d.ts");e._declarationTextTransformers.push(r=>{let{filePath:i,content:o}=r;return i===n?{filePath:i,content:ws(e.apiJsonComponents,o,t)}:r})},async writeBundle(){if(e.isInStorybook)return;let n=Ot.join(e.dir.dist,"types");await Hd(n);let r=`/// <reference types="../index.d.ts" />
218
218
  ${t.replaceAll("./","../")}`,i=Object.entries({react:vs(e.apiJsonComponents),preact:Ss(e.apiJsonComponents),stencil:Es(e.apiJsonComponents),lumina:bs(e.apiJsonComponents)}).map(async([o,s])=>await Ps(Ot.join(n,`${o}.d.ts`),`${r}
219
- ${s}`));i.push(Ps(Ot.join(n,"components.d.ts"),'export * from "./stencil";')),await Promise.all(i)}}}import{mkdir as Hd,writeFile as Kd}from"node:fs/promises";import{retrievePackageJson as _d}from"@arcgis/components-build-utils";import{path as Ds}from"@arcgis/components-build-utils";import{capitalize as Ud}from"@arcgis/components-utils";function Fs(e){return{name:"@arcgis/lumina:buildWrappers",apply:()=>e.viteCommand==="build"&&!!e.options.build?.wrappers?.length,async writeBundle(){e.isInStorybook||await Promise.all(e.options.build?.wrappers?.map(async t=>{t.type==="react18"&&await zd(e,t)})??[])}}}var Vd=`
219
+ ${s}`));i.push(Ps(Ot.join(n,"components.d.ts"),'export * from "./stencil";')),await Promise.all(i)}}}import{mkdir as Kd,writeFile as _d}from"node:fs/promises";import{retrievePackageJson as Ud}from"@arcgis/components-build-utils";import{path as Ds}from"@arcgis/components-build-utils";import{capitalize as Vd}from"@arcgis/components-utils";function Fs(e){return{name:"@arcgis/lumina:buildWrappers",apply:()=>e.viteCommand==="build"&&!!e.options.build?.wrappers?.length,async writeBundle(){e.isInStorybook||await Promise.all(e.options.build?.wrappers?.map(async t=>{t.type==="react18"&&await qd(e,t)})??[])}}}var zd=`
220
220
  import React from "react";
221
221
  import { createComponent } from "@lit/react";
222
222
  import type { EventName } from "@lit/react";
223
223
  import { makeReactWrapperFactory, getReactWrapperOptions } from "@arcgis/lumina";
224
224
 
225
225
  const createWrapper = /*@__PURE__*/ makeReactWrapperFactory(React, createComponent) as typeof createComponent;
226
- `;async function zd(e,t){let{name:n}=_d(),r=[];for(let s of e.apiJson.modules)for(let a of s.declarations)"customElement"in a&&r.push(qd(a));let i=[`/// <reference types="${n}" preserve="true" />`,Vd,...r].join(""),o=Ds.resolve(t.proxiesFile);await Hd(Ds.dirname(o),{recursive:!0}),await Kd(o,i)}function qd(e){let t=e.events?.map(n=>` ${z(`on${Ud(n.name)}`)}: "${n.name}" as EventName<HTML${e.pascalCaseName}Element["${n.name}"]>,`).join(`
226
+ `;async function qd(e,t){let{name:n}=Ud(),r=[];for(let s of e.apiJson.modules)for(let a of s.declarations)"customElement"in a&&r.push(Gd(a));let i=[`/// <reference types="${n}" preserve="true" />`,zd,...r].join(""),o=Ds.resolve(t.proxiesFile);await Kd(Ds.dirname(o),{recursive:!0}),await _d(o,i)}function Gd(e){let t=e.events?.map(n=>` ${z(`on${Vd(n.name)}`)}: "${n.name}" as EventName<HTML${e.pascalCaseName}Element["${n.name}"]>,`).join(`
227
227
  `);return`
228
228
  export const ${e.pascalCaseName} = /*@__PURE__*/ createWrapper(
229
229
  getReactWrapperOptions(
@@ -233,4 +233,4 @@ ${t}
233
233
  `:""}}
234
234
  )
235
235
  );
236
- `}function Xd(e={}){let t=new w(e),n=[t._plugin,Qo(t),Yo(t),ds(t),br(t),Lo(t),As(t),Ts(t),uo(t),Vr(t),Ko(t),ls(t),ss(t),rs(t),Yn(t),So(t),Vo(t),Fs(t),Xo(t)].filter(Gd);return n.context=t,n}var Zx={initializeComponentDependencies:ut,updateLuminaTs:Rt,propertyToAttributeMappings:W,findDeclaredComponents:et,nativeEvents:xt,svgElements:Ae,mathMlElements:De,alwaysAttributes:ht,nativeAlwaysAttributes:Ct,htmlAlwaysAttributes:_e,isPropertyEscapeNeeded:Ce};export{He as LuminaApiExtractor,Zx as exportsForCodemod,G as inferCdnUrl,Xd as useLumina};
236
+ `}function Qd(e={}){let t=new w(e),n=[t._plugin,Qo(t),Yo(t),ds(t),br(t),Lo(t),As(t),Ts(t),uo(t),Vr(t),Ko(t),ls(t),ss(t),rs(t),Yn(t),So(t),Vo(t),Fs(t),Xo(t)].filter(Xd);return n.context=t,n}var eT={initializeComponentDependencies:ut,updateLuminaTs:$t,propertyToAttributeMappings:W,findDeclaredComponents:et,nativeEvents:xt,svgElements:Ae,mathMlElements:De,alwaysAttributes:ht,nativeAlwaysAttributes:Ct,htmlAlwaysAttributes:_e,isPropertyEscapeNeeded:Ce};export{He as LuminaApiExtractor,eT as exportsForCodemod,G as inferCdnUrl,Qd as useLumina};
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@arcgis/lumina-compiler",
3
- "version": "4.33.0-next.25",
3
+ "version": "4.33.0-next.26",
4
4
  "type": "module",
5
5
  "main": "dist/index.js",
6
6
  "module": "dist/index.js",
@@ -18,9 +18,9 @@
18
18
  ],
19
19
  "license": "SEE LICENSE IN LICENSE.md",
20
20
  "dependencies": {
21
- "@arcgis/api-extractor": "4.33.0-next.25",
22
- "@arcgis/components-build-utils": "4.33.0-next.25",
23
- "@arcgis/components-utils": "4.33.0-next.25",
21
+ "@arcgis/api-extractor": "4.33.0-next.26",
22
+ "@arcgis/components-build-utils": "4.33.0-next.26",
23
+ "@arcgis/components-utils": "4.33.0-next.26",
24
24
  "chalk": "^5.3.0",
25
25
  "esbuild": "^0.24.0",
26
26
  "js-beautify": "^1.15.1",
@@ -36,6 +36,6 @@
36
36
  "vitest-fail-on-console": "^0.7.1"
37
37
  },
38
38
  "peerDependencies": {
39
- "@arcgis/lumina": "~4.33.0-next.25"
39
+ "@arcgis/lumina": "~4.33.0-next.26"
40
40
  }
41
41
  }