@arcgis/api-extractor 5.1.0-next.7 → 5.1.0-next.70

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.
@@ -1,15 +1,15 @@
1
1
  import { path as $e, existsAsync as Qt, getCwd as Pi, retrievePackageJson as lt, toPosixPathSeparators as xi } from "@arcgis/components-build-utils";
2
- import { b as Ri, p as Di, l as Li } from "./typeScript-Bf6MlJE-.js";
2
+ import { b as Ri, p as Di, l as Li } from "./typeScript-Y5GxUXJJ.js";
3
3
  import { getDefaultBasePath as Yt, buildViewUrl as Ii, getViewUrl as Ge } from "./extractor/processing/links.js";
4
4
  import o from "typescript";
5
5
  import "fs/promises";
6
- import { a as te, c as Tt, b as Zt, g as ae, l as Ze, o as ei, p as Y, f as Ai, e as De, m as ki, q as Fi, r as wi, s as ti, t as Ni } from "./apiHelpers-BYzO767m.js";
7
- import { maybeEscapePropertyName as xt, printTypeAlias as Rt, printInterface as Oi, printFunction as Gi, printVariable as Vi, printClass as _i, printMethod as Wi, printProperty as fe, printGetterSetter as Ki, printSignature as Hi } from "./utils/partPrinter.js";
8
- import ne from "chalk";
6
+ import { a as ie, b as Zt, c as Tt, g as ae, p as Y, l as Ze, o as ei, f as Ai, e as De, m as ki, q as Fi, r as wi, s as ti, t as Ni } from "./apiHelpers-dNwlX631.js";
7
+ import { maybeEscapePropertyName as xt, printTypeAlias as Rt, printInterface as Oi, printFunction as Gi, printVariable as Vi, printClass as Wi, printMethod as _i, printProperty as fe, printGetterSetter as Ki, printSignature as Hi } from "./utils/partPrinter.js";
8
+ import oe from "chalk";
9
9
  import { readFile as Dt, opendir as Lt, rm as $i } from "node:fs/promises";
10
10
  import { pathIsComponentEntrypoint as Bi, findDeclaredComponent as Ui } from "./extractor/webComponent/findComponents.js";
11
11
  import { renameComponentFolder as Ve, addComponentPathMapping as zi } from "./extractor/webComponent/pathMapping.js";
12
- import { getBasename as Z, getPackageNameFromExternalSpecifier as ct, extractInitializer as Be, extractBooleanInitializer as oe, findDecorator as xe, getMemberName as Re } from "./utils/astHelpers.js";
12
+ import { getBasename as ee, getPackageNameFromExternalSpecifier as ct, extractInitializer as Be, extractBooleanInitializer as Z, findDecorator as xe, getMemberName as Re } from "./utils/astHelpers.js";
13
13
  import { readFileSync as ji, existsSync as ue } from "node:fs";
14
14
  import "util";
15
15
  import { uncapitalize as Ji, camelToKebab as qi, kebabToPascal as Xi } from "@arcgis/toolkit/string";
@@ -45,12 +45,12 @@ function da(e) {
45
45
  }
46
46
  },
47
47
  configPath: p.configPath
48
- }, u = t?.dtsEmitPath === void 0 || t?.dtsEmitPath === "" ? "" : `${$e.resolve(s, t.dtsEmitPath)}/`, g = t?.environment ?? "production", E = g === "development", y = t?.emptyDtsEmitPath ?? (!E && u !== "");
48
+ }, u = t?.dtsEmitPath === void 0 || t?.dtsEmitPath === "" ? "" : `${$e.resolve(s, t.dtsEmitPath)}/`, g = t?.environment ?? "production", E = g === "development", v = t?.emptyDtsEmitPath ?? (!E && u !== "");
49
49
  return {
50
50
  isResolvedConfig: !0,
51
51
  context: {
52
52
  dtsEmitPath: u,
53
- emptyDtsEmitPath: y,
53
+ emptyDtsEmitPath: v,
54
54
  apiJsonEmitPath: t?.apiJsonEmitPath ?? "",
55
55
  environment: g,
56
56
  cwd: s,
@@ -103,7 +103,7 @@ function da(e) {
103
103
  // so doesn't need long debounce.
104
104
  debounceTime: e.watch?.debounceTime ?? (m || d ? 50 : 20),
105
105
  clearScreen: e.watch?.clearScreen ?? !1,
106
- skipWritingUnchanged: y ? !1 : e.watch?.skipWritingUnchanged ?? !0
106
+ skipWritingUnchanged: v ? !1 : e.watch?.skipWritingUnchanged ?? !0
107
107
  },
108
108
  strict: e.strict ?? !c,
109
109
  afterApiJsonCreate: e.afterApiJsonCreate ?? ge
@@ -327,22 +327,22 @@ function sn(e, t, n) {
327
327
  }
328
328
  ) : u = u.slice(1)), u.startsWith("@")) {
329
329
  r !== void 0 && !p && l.push(
330
- W[r] ?? {
330
+ V[r] ?? {
331
331
  name: r,
332
332
  text: c.trim().replaceAll("\\@", "@") || void 0
333
333
  }
334
334
  );
335
- const g = u.indexOf(" "), E = g === -1 ? u.slice(1) : u.slice(1, g), y = t && E === "public";
336
- m ||= y, d ||= t && E === "internal", p = y || E === "privateRemarks";
337
- const h = g === -1 ? "" : u.slice(g + 1);
338
- r = E, c = h;
335
+ const g = u.indexOf(" "), E = g === -1 ? u.slice(1) : u.slice(1, g), v = t && E === "public";
336
+ m ||= v, d ||= t && E === "internal", p = v || E === "privateRemarks";
337
+ const b = g === -1 ? "" : u.slice(g + 1);
338
+ r = E, c = b;
339
339
  } else r !== void 0 ? c = `${c}
340
340
  ${u}` : s += `${u}
341
341
  `;
342
342
  }
343
343
  if (!(!m && !d))
344
344
  return r !== void 0 && !p && l.push(
345
- W[r] ?? {
345
+ V[r] ?? {
346
346
  name: r,
347
347
  text: c.trim().replaceAll("\\@", "@") || void 0
348
348
  }
@@ -363,7 +363,7 @@ function ii(e, t) {
363
363
  const i = t.docsTags[n], { name: a, text: s } = i;
364
364
  if (a === "deprecated")
365
365
  e.deprecated = s || !0;
366
- else if (i === W.private)
366
+ else if (i === V.private)
367
367
  e.privacy = "private";
368
368
  else if (a === "csspart")
369
369
  e.cssParts ??= [], e.cssParts.push(ot(s));
@@ -372,7 +372,7 @@ function ii(e, t) {
372
372
  else if (a === "slot")
373
373
  e.slots ??= [], e.slots.push(ot(s));
374
374
  else if (a === "esriCompatibilityName") {
375
- const l = te(e);
375
+ const l = ie(e);
376
376
  l.esriCompatibilityNames ??= [], l.esriCompatibilityNames.push(s ?? "");
377
377
  } else a === "readonly" || (e.docsTags ??= [], e.docsTags.push(i));
378
378
  }
@@ -384,7 +384,7 @@ function ln(e, t) {
384
384
  const s = t.docsTags[a], { name: l, text: r } = s;
385
385
  if (l === "deprecated")
386
386
  e.deprecated = r || !0;
387
- else if (s === W.private)
387
+ else if (s === V.private)
388
388
  e.privacy = "private";
389
389
  else if (l === "param")
390
390
  i.push(s);
@@ -401,7 +401,7 @@ function ln(e, t) {
401
401
  function cn(e, t) {
402
402
  for (let n = 0; n < t.docsTags.length; ++n) {
403
403
  const i = t.docsTags[n], { name: a, text: s } = i;
404
- a === "deprecated" ? e.deprecated = s || !0 : a === "default" ? e.default = s : i === W.readonly ? e.readonly = !0 : i === W.private ? e.privacy = "private" : (e.docsTags ??= [], e.docsTags.push(i));
404
+ a === "deprecated" ? e.deprecated = s || !0 : a === "default" ? e.default = s : i === V.readonly ? e.readonly = !0 : i === V.private ? e.privacy = "private" : (e.docsTags ??= [], e.docsTags.push(i));
405
405
  }
406
406
  e.description = t.description;
407
407
  }
@@ -423,7 +423,7 @@ function dn(e, t) {
423
423
  function pn(e, t) {
424
424
  for (let n = 0; n < t.docsTags.length; ++n) {
425
425
  const i = t.docsTags[n], { name: a, text: s } = i;
426
- a === "deprecated" ? e.deprecated = s || !0 : i === W.private ? e.privacy = "private" : (e.docsTags ??= [], e.docsTags.push(i));
426
+ a === "deprecated" ? e.deprecated = s || !0 : i === V.private ? e.privacy = "private" : (e.docsTags ??= [], e.docsTags.push(i));
427
427
  }
428
428
  e.description = t.description;
429
429
  }
@@ -469,7 +469,7 @@ function ot(e) {
469
469
  default: n
470
470
  };
471
471
  }
472
- const W = {
472
+ const V = {
473
473
  // Create a null prototype object to avoid collisions with Object.prototype when doing lookups
474
474
  // eslint-disable-next-line @typescript-eslint/naming-convention
475
475
  __proto__: null,
@@ -485,7 +485,7 @@ const W = {
485
485
  docsTags: []
486
486
  }, Ce = {
487
487
  description: void 0,
488
- docsTags: [W.private]
488
+ docsTags: [V.private]
489
489
  };
490
490
  function mn(e, t, n) {
491
491
  switch (t.path) {
@@ -514,7 +514,6 @@ function mn(e, t, n) {
514
514
  export abstract class __FeatureLayerSansType extends FeatureLayerSuperclass {`;
515
515
  return e.slice(0, a) + m + e.slice(a + i.length, c) + e.slice(r);
516
516
  }
517
- case "layers/CSVLayer":
518
517
  case "layers/OrientedImageryLayer": {
519
518
  const i = `import type { __FeatureLayerSansType } from "./FeatureLayer.js";
520
519
  `, a = `extends FeatureLayer {
@@ -547,25 +546,25 @@ function ua(e, t) {
547
546
  `, i = `
548
547
 
549
548
  `, a = "", s = "", l = "", r = "", c = "", m = "", d = "", p = "", f = "", u = "", g = "", E = "";
550
- for (let C = 0; C < e.length; ++C) {
551
- const L = e[C];
552
- for (let A = 0; A < L.declarations.length; ++A) {
553
- const J = L.declarations[A];
554
- if (J.customElement !== !0)
549
+ for (let S = 0; S < e.length; ++S) {
550
+ const R = e[S];
551
+ for (let A = 0; A < R.declarations.length; ++A) {
552
+ const W = R.declarations[A];
553
+ if (W.customElement !== !0)
555
554
  continue;
556
- const _ = J;
557
- if (_.privacy !== void 0 || te(_).hasExplicitAbstract === !0)
555
+ const _ = W;
556
+ if (_.privacy !== void 0 || ie(_).hasExplicitAbstract === !0)
558
557
  continue;
559
- const { name: F, tagName: G, pascalCaseName: w, events: K } = _;
560
- i += `import type { ${F} } from "./${L.path}/customElement.js";
561
- `, n += `import type { ${F} } from "../${L.path}/customElement.js";
558
+ const { name: F, tagName: N, pascalCaseName: w, events: H } = _;
559
+ i += `import type { ${F} } from "./${R.path}/customElement.js";
560
+ `, n += `import type { ${F} } from "../${R.path}/customElement.js";
562
561
  `;
563
562
  const [me, ke] = un(_.name, _.members);
564
- let ie = "", q = "";
565
- if (K !== void 0) {
566
- for (let pe = 0; pe < K.length; ++pe) {
567
- const Fe = K[pe], Pt = `EventHandler<${F}["${Fe.name}"]>`;
568
- ie += ` ${xt(`on${Fe.name}`)}?: ${Pt};
563
+ let ne = "", q = "";
564
+ if (H !== void 0) {
565
+ for (let pe = 0; pe < H.length; ++pe) {
566
+ const Fe = H[pe], Pt = `EventHandler<${F}["${Fe.name}"]>`;
567
+ ne += ` ${xt(`on${Fe.name}`)}?: ${Pt};
569
568
  `, q += ` ${xt(`on${Fe.name[0].toUpperCase()}${Fe.name.slice(1)}`)}?: ${Pt};
570
569
  `;
571
570
  }
@@ -579,23 +578,23 @@ function ua(e, t) {
579
578
  }
580
579
  s += ` type HTML${w}Element = ${F};
581
580
 
582
- `, l += ` "${G}": ${F};
581
+ `, l += ` "${N}": ${F};
583
582
  `, r += `interface Lumina${w} extends ${me}h.JSX.HTMLAttributes<${F}> {
584
- ${ie}}
583
+ ${ne}}
585
584
 
586
- `, c += ` "${G}": Lumina${w};
585
+ `, c += ` "${N}": Lumina${w};
587
586
  `, m += `interface Preact${w} extends ${me}HTMLAttributes<${F}> {
588
- ${ie}}
587
+ ${ne}}
589
588
 
590
- `, d += ` "${G}": Preact${w};
589
+ `, d += ` "${N}": Preact${w};
591
590
  `, p += `interface React${w} extends ${me}HTMLProps<${F}> {
592
- ${ie}}
591
+ ${ne}}
593
592
 
594
- `, f += ` "${G}": React${w};
593
+ `, f += ` "${N}": React${w};
595
594
  `, u += `interface Stencil${w} extends ${me}StencilJsx.HTMLAttributes<${F}> {
596
595
  ${q}}
597
596
 
598
- `, g += ` "${G}": Stencil${w};
597
+ `, g += ` "${N}": Stencil${w};
599
598
  `, ke !== "" && (E += ke);
600
599
  }
601
600
  }
@@ -603,9 +602,9 @@ ${q}}
603
602
  t.vanillaComponentTypes = "";
604
603
  return;
605
604
  }
606
- const y = "@arcgis/lumina";
605
+ const v = "@arcgis/lumina";
607
606
  t.vanillaComponentTypes = `${i}
608
- export { ToEvents, TargetedEvent } from "${y}";
607
+ export { ToEvents, TargetedEvent } from "${v}";
609
608
 
610
609
  ${a}
611
610
 
@@ -616,39 +615,39 @@ ${l}
616
615
 
617
616
  ${s}
618
617
  }`;
619
- const h = `import "./index.js";
620
- export declare const defineCustomElements: import("${y}").DefineCustomElements;`, M = `${t.config.context.dtsEmitPath}loader.d.ts`;
621
- t.dtsFiles.set(M, h);
622
- const b = `${n}import type { h, EventHandler } from "${y}";
618
+ const b = `import "./index.js";
619
+ export declare const defineCustomElements: import("${v}").DefineCustomElements;`, h = `${t.config.context.dtsEmitPath}loader.d.ts`;
620
+ t.dtsFiles.set(h, b);
621
+ const L = `${n}import type { h, EventHandler } from "${v}";
623
622
 
624
623
  ${E}${r}declare module "@arcgis/lumina" {
625
624
  export namespace h.JSX {
626
625
  interface IntrinsicElements {
627
626
  ${c} }
628
627
  }
629
- }`, v = ` interface IntrinsicElements {
630
- ${d} }`, x = `${n}import { HTMLAttributes } from "preact";
631
- import type { EventHandler } from "${y}";
628
+ }`, I = ` interface IntrinsicElements {
629
+ ${d} }`, y = `${n}import { HTMLAttributes } from "preact";
630
+ import type { EventHandler } from "${v}";
632
631
 
633
632
  ${E}${m}declare module 'preact' {
634
633
  namespace createElement.JSX {
635
- ${v}
634
+ ${I}
636
635
  }
637
636
  namespace h.JSX {
638
- ${v}
637
+ ${I}
639
638
  }
640
- }`, R = `
639
+ }`, k = `
641
640
  namespace JSX {
642
641
  interface IntrinsicElements {
643
642
  ${f} }
644
643
  }
645
- `, I = `${n}import type { HTMLProps } from 'react';
646
- import type { EventHandler } from "${y}";
644
+ `, P = `${n}import type { HTMLProps } from 'react';
645
+ import type { EventHandler } from "${v}";
647
646
 
648
- ${E}${p}declare module "react" {${R}}
649
- declare module "react/jsx-runtime" {${R}}
650
- declare module "react/jsx-dev-runtime" {${R}}`, k = `${n}import { JSXBase as StencilJsx } from "@stencil/core/internal";
651
- import type { EventHandler } from "${y}";
647
+ ${E}${p}declare module "react" {${k}}
648
+ declare module "react/jsx-runtime" {${k}}
649
+ declare module "react/jsx-dev-runtime" {${k}}`, D = `${n}import { JSXBase as StencilJsx } from "@stencil/core/internal";
650
+ import type { EventHandler } from "${v}";
652
651
 
653
652
  ${E}${u}interface ExposedElements {
654
653
  ${g}}
@@ -661,9 +660,9 @@ declare module "@stencil/core/internal/stencil-public-runtime" {
661
660
  export namespace h.JSX {
662
661
  interface IntrinsicElements extends ExposedElements {}
663
662
  }
664
- }`, D = `/** @deprecated import from stencil.d.ts instead */
665
- export * from "./stencil.js";`, S = `${t.config.context.dtsEmitPath}types/`, N = `${S}lumina.d.ts`, B = `${S}preact.d.ts`, $ = `${S}react.d.ts`, V = `${S}stencil.d.ts`, T = `${S}components.d.ts`;
666
- t.dtsFiles.set(N, b), t.dtsFiles.set(B, x), t.dtsFiles.set($, I), t.dtsFiles.set(V, k), t.dtsFiles.set(T, D);
663
+ }`, x = `/** @deprecated import from stencil.d.ts instead */
664
+ export * from "./stencil.js";`, T = `${t.config.context.dtsEmitPath}types/`, K = `${T}lumina.d.ts`, O = `${T}preact.d.ts`, J = `${T}react.d.ts`, $ = `${T}stencil.d.ts`, C = `${T}components.d.ts`;
665
+ t.dtsFiles.set(K, L), t.dtsFiles.set(O, y), t.dtsFiles.set(J, P), t.dtsFiles.set($, D), t.dtsFiles.set(C, x);
667
666
  }
668
667
  function un(e, t) {
669
668
  const n = [], i = [];
@@ -677,7 +676,7 @@ function un(e, t) {
677
676
  a = !0;
678
677
  continue;
679
678
  }
680
- c.docsTags?.includes(W.required) === !0 ? n.push(`"${c.name}"`) : i.push(`"${c.name}"`);
679
+ c.docsTags?.includes(V.required) === !0 ? n.push(`"${c.name}"`) : i.push(`"${c.name}"`);
681
680
  }
682
681
  let s = n.length > 0 ? `Required<Pick<${e}, ${n.join(" | ")}>>` : "";
683
682
  i.length > 0 && (s.length > 0 && (s += ", "), s += `Partial<Pick<${e}, ${i.join(" | ")}>>`), a && (s.length > 0 && (s += ", "), s += `${e}SetterTypes`);
@@ -869,7 +868,7 @@ function Ft(e) {
869
868
  if (e.kind === "class" || e.kind === "mixin")
870
869
  n = wt(e);
871
870
  else if (e.kind === "interface") {
872
- const a = te(e);
871
+ const a = ie(e);
873
872
  if (e.supertypes === void 0 && e.type === void 0 && e.members?.length === 1 && (e.members[0].kind === "call-signature" || e.members[0].kind === "constructor")) {
874
873
  const l = e.members[0];
875
874
  let r = ri(l, !0);
@@ -917,7 +916,7 @@ function Ft(e) {
917
916
  return `${he(t)}${n}`;
918
917
  }
919
918
  function wt(e) {
920
- const t = te(e), n = t.isDefaultExported === !0, i = dt(e), a = e, s = e;
919
+ const t = ie(e), n = t.isDefaultExported === !0, i = dt(e), a = e, s = e;
921
920
  let l, r = a.mixins ?? s.supertypes;
922
921
  if (r === void 0)
923
922
  t.superClassText !== void 0 && (l = t.superClassText);
@@ -926,7 +925,7 @@ function wt(e) {
926
925
  l = m.printableText, m.printableText = void 0, r = void 0;
927
926
  } else
928
927
  l = `${e.name}Superclass`;
929
- let c = _i(
928
+ let c = Wi(
930
929
  t.hasExplicitAbstract !== void 0,
931
930
  n,
932
931
  e.name,
@@ -947,7 +946,7 @@ declare const ${l}:`, t.superClassText !== void 0 && (c += ` typeof ${t.superCla
947
946
  function dt(e) {
948
947
  const t = e.members;
949
948
  let n = "";
950
- const i = te(e);
949
+ const i = ie(e);
951
950
  if (e.kind === "mixin" && (n += `constructor(...args: any[]);
952
951
  `), i.eventTypesProperty !== void 0) {
953
952
  let l = vn;
@@ -967,7 +966,7 @@ function dt(e) {
967
966
  if (c.inheritedFrom !== void 0 || c.privacy === "private")
968
967
  continue;
969
968
  const d = Te(c);
970
- n += he(d), c.kind === "field" ? (s && c.getterType !== void 0 && (l += ` ${fe(!1, !1, !1, !1, !1, c.docsTags?.includes(W.required) !== !0, c.name, c.type.text)}
969
+ n += he(d), c.kind === "field" ? (s && c.getterType !== void 0 && (l += ` ${fe(!1, !1, !1, !1, !1, c.docsTags?.includes(V.required) !== !0, c.name, c.type.text)}
971
970
  `), n += Nt(c)) : n += ri(c, !1), n += `
972
971
  `;
973
972
  }
@@ -1033,7 +1032,7 @@ function Nt(e) {
1033
1032
  }
1034
1033
  function ri(e, t) {
1035
1034
  const n = Tt(e);
1036
- return Wi(
1035
+ return _i(
1037
1036
  e.privacy !== void 0,
1038
1037
  n.isAbstract === !0,
1039
1038
  e.static === !0,
@@ -1212,7 +1211,7 @@ function di(e, t, n = "*", i) {
1212
1211
  }
1213
1212
  function An(e, t, n) {
1214
1213
  if (!(e === void 0 || e === "interfaces.d.ts")) {
1215
- const i = `https://${n.config.documentation.host}${kn}${Z(e)}/`;
1214
+ const i = `https://${n.config.documentation.host}${kn}${ee(e)}/`;
1216
1215
  return Ii(i, t === "default" || t === "*" ? void 0 : t, void 0);
1217
1216
  }
1218
1217
  }
@@ -1238,7 +1237,7 @@ function Fn(e, t) {
1238
1237
  return t.pendingNames.has(a);
1239
1238
  }
1240
1239
  function je(e, t, n, i, a) {
1241
- const s = n.program.getTypeChecker(), l = e.flags & o.SymbolFlags.Alias ? s.getAliasedSymbol(e) : e, r = _n(l), c = t.escapedText, m = r ?? c, d = l?.declarations?.[0];
1240
+ const s = n.program.getTypeChecker(), l = e.flags & o.SymbolFlags.Alias ? s.getAliasedSymbol(e) : e, r = Wn(l), c = t.escapedText, m = r ?? c, d = l?.declarations?.[0];
1242
1241
  if (d === void 0)
1243
1242
  return n.emitError(`Unable to resolve the declaration file name for the type ${m}`, {
1244
1243
  file: n.file,
@@ -1269,37 +1268,37 @@ function je(e, t, n, i, a) {
1269
1268
  end: a
1270
1269
  };
1271
1270
  if (f === "typescript" && u?.startsWith("lib/") === !0) {
1272
- let y = mt[m], h, M = m;
1273
- if (y === void 0) {
1274
- for (let b = d.parent; b !== void 0; b = b.parent)
1275
- if (o.isModuleDeclaration(b) && o.isIdentifier(b.name)) {
1276
- h = b.name.escapedText, y = mt[h]?.[1]?.[m], M = `${h}.${m}`, Me(t, M);
1271
+ let v = mt[m], b, h = m;
1272
+ if (v === void 0) {
1273
+ for (let L = d.parent; L !== void 0; L = L.parent)
1274
+ if (o.isModuleDeclaration(L) && o.isIdentifier(L.name)) {
1275
+ b = L.name.escapedText, v = mt[b]?.[1]?.[m], h = `${b}.${m}`, Me(t, h);
1277
1276
  break;
1278
1277
  }
1279
1278
  }
1280
1279
  return {
1281
- name: M,
1280
+ name: h,
1282
1281
  module: void 0,
1283
1282
  package: De,
1284
- viewUrl: y?.[0]?.startsWith("https") === !1 ? `${ut}${y[0]}` : y?.[0] ?? void 0,
1283
+ viewUrl: v?.[0]?.startsWith("https") === !1 ? `${ut}${v[0]}` : v?.[0] ?? void 0,
1285
1284
  start: i,
1286
- end: i + M.length
1285
+ end: i + h.length
1287
1286
  };
1288
1287
  }
1289
1288
  let g = m;
1290
1289
  if (f !== void 0 && u === void 0 && r?.startsWith("HTML") === !0 && d.parent.kind === o.SyntaxKind.ModuleBlock && d.parent.parent.kind === o.SyntaxKind.ModuleDeclaration && d.parent.parent.name.escapedText === "global") {
1291
1290
  if (r.endsWith("Element")) {
1292
- const y = o.isInterfaceDeclaration(d) ? d.heritageClauses?.[0]?.types[0]?.expression : o.isTypeAliasDeclaration(d) && o.isTypeReferenceNode(d.type) ? d.type.typeName : void 0;
1293
- if (y !== void 0 && o.isIdentifier(y)) {
1294
- const h = s.getSymbolAtLocation(y);
1295
- if (h !== void 0) {
1296
- const M = s.getAliasedSymbol(h);
1291
+ const v = o.isInterfaceDeclaration(d) ? d.heritageClauses?.[0]?.types[0]?.expression : o.isTypeAliasDeclaration(d) && o.isTypeReferenceNode(d.type) ? d.type.typeName : void 0;
1292
+ if (v !== void 0 && o.isIdentifier(v)) {
1293
+ const b = s.getSymbolAtLocation(v);
1294
+ if (b !== void 0) {
1295
+ const h = s.getAliasedSymbol(b);
1297
1296
  return je(
1298
- M,
1297
+ h,
1299
1298
  t,
1300
1299
  n,
1301
1300
  i,
1302
- i + M.escapedName.length
1301
+ i + h.escapedName.length
1303
1302
  );
1304
1303
  }
1305
1304
  }
@@ -1309,43 +1308,43 @@ function je(e, t, n, i, a) {
1309
1308
  // As this interface is not likely to be used directly.
1310
1309
  r.endsWith("ElementEventMap") && o.isTypeAliasDeclaration(d) && o.isIndexedAccessTypeNode(d.type) && o.isTypeReferenceNode(d.type.objectType) && o.isIdentifier(d.type.objectType.typeName) && o.isLiteralTypeNode(d.type.indexType) && o.isStringLiteral(d.type.indexType.literal) && d.type.indexType.literal.text === "@eventTypes"
1311
1310
  ) {
1312
- const y = s.getSymbolAtLocation(d.type.objectType.typeName);
1313
- if (y !== void 0) {
1314
- const h = s.getAliasedSymbol(y), M = je(
1315
- h,
1311
+ const v = s.getSymbolAtLocation(d.type.objectType.typeName);
1312
+ if (v !== void 0) {
1313
+ const b = s.getAliasedSymbol(v), h = je(
1314
+ b,
1316
1315
  t,
1317
1316
  n,
1318
1317
  i,
1319
- i + h.escapedName.length
1318
+ i + b.escapedName.length
1320
1319
  );
1321
- return Me(t, c), Me(t, `${M.name}["@eventTypes"]`), M;
1320
+ return Me(t, c), Me(t, `${h.name}["@eventTypes"]`), h;
1322
1321
  }
1323
1322
  }
1324
1323
  }
1325
1324
  if (f !== void 0 || u !== void 0) {
1326
- const y = r ?? ((u ?? f).split("/").pop()?.replaceAll(wn, "") || "type");
1327
- for (let h = 1; ; h += 1) {
1328
- const M = h === 1 ? y : `${y}${h}`;
1329
- let b = n.functionLikeTypeParameters?.has(M) === !0 || n.objectLikeTypeParameters?.has(M) === !0 || n.localDeclarations.has(M);
1330
- if (b)
1325
+ const v = r ?? ((u ?? f).split("/").pop()?.replaceAll(wn, "") || "type");
1326
+ for (let b = 1; ; b += 1) {
1327
+ const h = b === 1 ? v : `${v}${b}`;
1328
+ let L = n.functionLikeTypeParameters?.has(h) === !0 || n.objectLikeTypeParameters?.has(h) === !0 || n.localDeclarations.has(h);
1329
+ if (L)
1331
1330
  continue;
1332
- const v = n.moduleContext.importsMap[M], x = v !== void 0 && (f === void 0 ? v.modulePath === u : v.specifier === f + (u === void 0 ? "" : `/${u}`));
1333
- if (x ? v.wasUsed = !0 : b = n.moduleContext.importsMap[M] !== void 0, b)
1331
+ const I = n.moduleContext.importsMap[h], y = I !== void 0 && (f === void 0 ? I.modulePath === u : I.specifier === f + (u === void 0 ? "" : `/${u}`));
1332
+ if (y ? I.wasUsed = !0 : L = n.moduleContext.importsMap[h] !== void 0, L)
1334
1333
  continue;
1335
- const R = M !== c;
1336
- R && (Me(t, M), a = i + M.length);
1337
- const I = Wn(l), k = I === "named";
1338
- k || (g = I), f === void 0 && !n.config.strict && ze(
1334
+ const k = h !== c;
1335
+ k && (Me(t, h), a = i + h.length);
1336
+ const P = _n(l), D = P === "named";
1337
+ D || (g = P), f === void 0 && !n.config.strict && ze(
1339
1338
  u,
1340
1339
  p.fileName.slice(n.basePath.length),
1341
1340
  g,
1342
1341
  n
1343
- ), x || (n.moduleContext.importsMap[M] = {
1344
- type: I,
1342
+ ), y || (n.moduleContext.importsMap[h] = {
1343
+ type: P,
1345
1344
  modulePath: f === void 0 ? u : void 0,
1346
1345
  specifier: f === void 0 ? ye(ae(n.apiModule).dtsPath, u) : f + (u === void 0 ? "" : `/${u}`),
1347
1346
  replacementName: void 0,
1348
- actualName: k && R ? r : void 0,
1347
+ actualName: D && k ? r : void 0,
1349
1348
  wasUsed: !0
1350
1349
  });
1351
1350
  break;
@@ -1366,7 +1365,7 @@ function je(e, t, n, i, a) {
1366
1365
  end: a
1367
1366
  };
1368
1367
  n.localDeclarations.has(c) || n.emitError(
1369
- `@public declaration referenced non-public ${ne.red(c)}. Either mark it @public or refactor out the reference. Note that Enums are not supported in public docs per https://devtopia.esri.com/WebGIS/arcgis-js-api/discussions/73576.`,
1368
+ `@public declaration referenced non-public ${oe.red(c)}. Either mark it @public or refactor out the reference. Note that Enums are not supported in public docs per https://devtopia.esri.com/WebGIS/arcgis-js-api/discussions/73576.`,
1370
1369
  {
1371
1370
  file: n.file,
1372
1371
  node: void 0
@@ -1398,15 +1397,15 @@ function Nn(e, t, n) {
1398
1397
  0,
1399
1398
  i + at.length + c.packageName.length
1400
1399
  ), d = lt(m);
1401
- return _t(c), c.modulePath = Wt(c.modulePath, d, t, n), c;
1400
+ return Wt(c), c.modulePath = _t(c.modulePath, d, t, n), c;
1402
1401
  }
1403
1402
  const s = e.indexOf(On);
1404
1403
  if (s !== -1) {
1405
- const r = e.slice(0, s), c = lt(r), m = c.name, d = e.slice(s + 1), p = Wt(d, c, t, n), f = { packageName: m, modulePath: p };
1406
- return _t(f), f;
1404
+ const r = e.slice(0, s), c = lt(r), m = c.name, d = e.slice(s + 1), p = _t(d, c, t, n), f = { packageName: m, modulePath: p };
1405
+ return Wt(f), f;
1407
1406
  }
1408
1407
  if (e.startsWith(t.basePath)) {
1409
- const r = e.slice(t.basePath.length), c = Ve(Z(r), t);
1408
+ const r = e.slice(t.basePath.length), c = Ve(ee(r), t);
1410
1409
  return c === t.apiModule.path ? {
1411
1410
  packageName: void 0,
1412
1411
  modulePath: void 0
@@ -1431,11 +1430,11 @@ function pi(e) {
1431
1430
  const t = ct(e), n = e.length === t.length ? void 0 : e.slice(t.length + 1);
1432
1431
  return { packageName: t, modulePath: n };
1433
1432
  }
1434
- function _t(e) {
1433
+ function Wt(e) {
1435
1434
  e.packageName?.startsWith("@types/") === !0 && (e.packageName = e.packageName.slice(7));
1436
1435
  }
1437
- function Wt(e, t, n, i) {
1438
- const a = Z(e);
1436
+ function _t(e, t, n, i) {
1437
+ const a = ee(e);
1439
1438
  if (t.exports === void 0)
1440
1439
  return `${a}.js`;
1441
1440
  const s = `./${a}`, l = "@arcgis/lumina" in (t.dependencies ?? {}) && s.endsWith("/customElement") ? `${s.slice(0, -13)}index` : s;
@@ -1449,14 +1448,14 @@ function Wt(e, t, n, i) {
1449
1448
  return m.modulePath;
1450
1449
  }
1451
1450
  return n.emitError(
1452
- `Need explicit type annotation for where the ${ne.red(i)} from ${t.name}/${e} is being used implicitly. Reason: Unable to find an "exports" compatible import path to insert the import of this type in the emitted .d.ts.`,
1451
+ `Need explicit type annotation for where the ${oe.red(i)} from ${t.name}/${e} is being used implicitly. Reason: Unable to find an "exports" compatible import path to insert the import of this type in the emitted .d.ts.`,
1453
1452
  { file: n.file, node: void 0 }
1454
1453
  ), e;
1455
1454
  }
1456
1455
  const Gn = {
1457
1456
  // REFACTOR: dissolve barrel files (match @arcgis/core). then this won't be needed
1458
1457
  "@arcgis/lumina"(e) {
1459
- return e.startsWith("dist/typings/") ? "./typings" : e.startsWith("dist/controllers/accessor/") ? "./controllers/accessor" : e.startsWith("dist/controllers/") ? "./controllers" : e.startsWith("dist/jsx/") || !e.slice(5).includes("/") ? "." : void 0;
1458
+ return e.startsWith("dist/globalTypes/") || e.startsWith("dist/typings/") ? "./globalTypes" : e.startsWith("dist/controllers/accessor/") ? "./controllers/accessor" : e.startsWith("dist/controllers/") ? "./controllers" : e.startsWith("dist/jsx/") || !e.slice(5).includes("/") ? "." : void 0;
1460
1459
  }
1461
1460
  };
1462
1461
  function ft(e, t, n) {
@@ -1476,7 +1475,7 @@ function ft(e, t, n) {
1476
1475
  }
1477
1476
  }
1478
1477
  function Vn(e, t, n) {
1479
- const i = Z(t);
1478
+ const i = ee(t);
1480
1479
  if (i === n)
1481
1480
  return e;
1482
1481
  const a = i.indexOf("*");
@@ -1487,7 +1486,7 @@ function Vn(e, t, n) {
1487
1486
  return;
1488
1487
  const l = i.slice(a + 1), r = n.slice(s.length), c = t.slice(i.length);
1489
1488
  if (l === "") {
1490
- const p = Z(e), f = e.slice(p.length), u = p === e && c === "" ? ".js" : f;
1489
+ const p = ee(e), f = e.slice(p.length), u = p === e && c === "" ? ".js" : f;
1491
1490
  return p.slice(0, -1) + r + u;
1492
1491
  }
1493
1492
  if (!r.endsWith(l))
@@ -1496,14 +1495,14 @@ function Vn(e, t, n) {
1496
1495
  if (d !== -1)
1497
1496
  return e.slice(0, d) + m + e.slice(d + 1);
1498
1497
  }
1499
- function _n(e) {
1498
+ function Wn(e) {
1500
1499
  const t = e.getDeclarations()?.[0];
1501
1500
  if (t !== void 0 && ((o.isClassDeclaration(t) || o.isFunctionDeclaration(t) || o.isInterfaceDeclaration(t) || o.isTypeAliasDeclaration(t) || o.isEnumDeclaration(t)) && t.name !== void 0 && o.isIdentifier(t.name) || o.isVariableDeclaration(t) && o.isIdentifier(t.name) || o.isBindingElement(t) && o.isIdentifier(t.name)))
1502
1501
  return t.name.escapedText;
1503
1502
  const n = e.escapedName;
1504
1503
  return n === "default" || n.startsWith("__") ? void 0 : n;
1505
1504
  }
1506
- function Wn(e) {
1505
+ function _n(e) {
1507
1506
  return e.flags & o.SymbolFlags.ValueModule ? "*" : Kn(e) ? "default" : "named";
1508
1507
  }
1509
1508
  function Kn(e) {
@@ -1525,9 +1524,9 @@ function ht(e, t, n, i) {
1525
1524
  return e.getText(n).includes("* @public") && i.emitError(
1526
1525
  "@public is not permitted in nested types. See options in documentation: https://webgis.esri.com/webgis/core/core/documenting-api#describing-nested-object-types and https://webgis.esri.com/webgis/core/core/documenting-api#variables",
1527
1526
  a
1528
- ), H(e, t, a, i);
1527
+ ), B(e, t, a, i);
1529
1528
  }
1530
- const O = {
1529
+ const G = {
1531
1530
  false: 0,
1532
1531
  /**
1533
1532
  * True for literal types. False for object types
@@ -1535,34 +1534,34 @@ const O = {
1535
1534
  shallow: 2,
1536
1535
  true: 1
1537
1536
  };
1538
- function H(e, t, n, i) {
1537
+ function B(e, t, n, i) {
1539
1538
  if (e.kind === o.SyntaxKind.TrueKeyword || e.kind === o.SyntaxKind.FalseKeyword)
1540
- return t === O.false ? o.factory.createKeywordTypeNode(o.SyntaxKind.BooleanKeyword) : o.factory.createLiteralTypeNode(e);
1539
+ return t === G.false ? o.factory.createKeywordTypeNode(o.SyntaxKind.BooleanKeyword) : o.factory.createLiteralTypeNode(e);
1541
1540
  if (e.kind === o.SyntaxKind.NullKeyword)
1542
1541
  return o.factory.createLiteralTypeNode(e);
1543
1542
  if (e.kind === o.SyntaxKind.UndefinedKeyword || o.isVoidExpression(e))
1544
1543
  return o.factory.createKeywordTypeNode(o.SyntaxKind.UndefinedKeyword);
1545
1544
  if (o.isStringLiteral(e) || o.isNoSubstitutionTemplateLiteral(e))
1546
- return t === O.false ? o.factory.createKeywordTypeNode(o.SyntaxKind.StringKeyword) : o.factory.createLiteralTypeNode(e);
1545
+ return t === G.false ? o.factory.createKeywordTypeNode(o.SyntaxKind.StringKeyword) : o.factory.createLiteralTypeNode(e);
1547
1546
  if (o.isTemplateExpression(e))
1548
1547
  return Se(n, t, i) ?? o.factory.createKeywordTypeNode(o.SyntaxKind.StringKeyword);
1549
1548
  if (o.isNumericLiteral(e))
1550
- return t === O.false ? o.factory.createKeywordTypeNode(o.SyntaxKind.NumberKeyword) : o.factory.createLiteralTypeNode(e);
1549
+ return t === G.false ? o.factory.createKeywordTypeNode(o.SyntaxKind.NumberKeyword) : o.factory.createLiteralTypeNode(e);
1551
1550
  if (o.isBigIntLiteral(e))
1552
- return t === O.false ? o.factory.createKeywordTypeNode(o.SyntaxKind.BigIntKeyword) : o.factory.createLiteralTypeNode(e);
1551
+ return t === G.false ? o.factory.createKeywordTypeNode(o.SyntaxKind.BigIntKeyword) : o.factory.createLiteralTypeNode(e);
1553
1552
  if (o.isAsExpression(e) || o.isTypeAssertionExpression(e))
1554
- return o.isTypeReferenceNode(e.type) && o.isIdentifier(e.type.typeName) && e.type.typeName.escapedText === "const" ? H(e.expression, O.true, n, i) : e.type;
1553
+ return o.isTypeReferenceNode(e.type) && o.isIdentifier(e.type.typeName) && e.type.typeName.escapedText === "const" ? B(e.expression, G.true, n, i) : e.type;
1555
1554
  if (o.isSatisfiesExpression(e))
1556
- return t === O.false ? e.type : H(e.expression, t, n, i);
1555
+ return t === G.false ? e.type : B(e.expression, t, n, i);
1557
1556
  if (o.isRegularExpressionLiteral(e))
1558
1557
  return o.factory.createTypeReferenceNode(o.factory.createIdentifier("RegExp"));
1559
1558
  if (o.isArrayLiteralExpression(e)) {
1560
1559
  if (i.isInLuminaMinimalExtraction)
1561
1560
  return Oe;
1562
- const a = t === O.shallow ? O.false : t, s = new Array(e.elements.length);
1561
+ const a = t === G.shallow ? G.false : t, s = new Array(e.elements.length);
1563
1562
  for (let l = 0; l < s.length; ++l) {
1564
1563
  const r = e.elements[l];
1565
- s[l] = H(r, a, { ...n, node: r }, i);
1564
+ s[l] = B(r, a, { ...n, node: r }, i);
1566
1565
  }
1567
1566
  return a ? o.factory.createTypeOperatorNode(o.SyntaxKind.ReadonlyKeyword, o.factory.createTupleTypeNode(s)) : o.factory.createArrayTypeNode(
1568
1567
  s.length === 1 ? s[0] : o.factory.createUnionTypeNode(s)
@@ -1571,7 +1570,7 @@ function H(e, t, n, i) {
1571
1570
  if (o.isObjectLiteralExpression(e)) {
1572
1571
  if (i.isInLuminaMinimalExtraction)
1573
1572
  return Oe;
1574
- const a = t === O.shallow ? O.false : t, s = new Array(e.properties.length);
1573
+ const a = t === G.shallow ? G.false : t, s = new Array(e.properties.length);
1575
1574
  for (let l = 0; l < s.length; ++l) {
1576
1575
  const r = e.properties[l];
1577
1576
  s[l] = Hn(r, a, { ...n, node: r }, i);
@@ -1581,17 +1580,17 @@ function H(e, t, n, i) {
1581
1580
  if (o.isPrefixUnaryExpression(e)) {
1582
1581
  if (e.operator !== o.SyntaxKind.MinusToken)
1583
1582
  return be(n, X, t, i);
1584
- if (t === O.false)
1583
+ if (t === G.false)
1585
1584
  return o.factory.createKeywordTypeNode(o.SyntaxKind.NumberKeyword);
1586
1585
  {
1587
- const a = H(e.operand, t, n, i);
1586
+ const a = B(e.operand, t, n, i);
1588
1587
  return o.isLiteralTypeNode(a) ? o.factory.createLiteralTypeNode(
1589
1588
  o.factory.createPrefixUnaryExpression(o.SyntaxKind.MinusToken, a.literal)
1590
1589
  ) : be(n, X, t, i);
1591
1590
  }
1592
1591
  }
1593
1592
  if (o.isParenthesizedExpression(e))
1594
- return H(e.expression, t, n, i);
1593
+ return B(e.expression, t, n, i);
1595
1594
  if (o.isNewExpression(e)) {
1596
1595
  if (i.isInLuminaMinimalExtraction)
1597
1596
  return Oe;
@@ -1600,7 +1599,7 @@ function H(e, t, n, i) {
1600
1599
  let l = e.typeArguments, r = !1;
1601
1600
  if ((s === "Set" || s === "WeakSet") && l === void 0)
1602
1601
  if (e.arguments?.[0] !== void 0) {
1603
- const c = H(
1602
+ const c = B(
1604
1603
  e.arguments[0],
1605
1604
  t,
1606
1605
  { ...n, node: e.arguments[0] },
@@ -1614,14 +1613,14 @@ function H(e, t, n, i) {
1614
1613
  if (!r)
1615
1614
  return o.factory.createTypeReferenceNode(e.expression, l);
1616
1615
  }
1617
- const a = H(e.expression, t, n, i);
1616
+ const a = B(e.expression, t, n, i);
1618
1617
  if (o.isTypeReferenceNode(a))
1619
1618
  return a;
1620
1619
  }
1621
1620
  if (o.isConditionalExpression(e))
1622
1621
  return o.factory.createUnionTypeNode([
1623
- H(e.whenTrue, t, { ...n, node: e.whenTrue }, i),
1624
- H(e.whenFalse, t, { ...n, node: e.whenFalse }, i)
1622
+ B(e.whenTrue, t, { ...n, node: e.whenTrue }, i),
1623
+ B(e.whenFalse, t, { ...n, node: e.whenFalse }, i)
1625
1624
  ]);
1626
1625
  if (o.isIdentifier(e))
1627
1626
  return Se(n, t, i) ?? o.factory.createTypeQueryNode(e);
@@ -1629,7 +1628,7 @@ function H(e, t, n, i) {
1629
1628
  const a = Se(n, t, i);
1630
1629
  if (a !== void 0)
1631
1630
  return a;
1632
- const s = H(e.expression, t, n, i);
1631
+ const s = B(e.expression, t, n, i);
1633
1632
  return o.isTypeQueryNode(s) ? o.factory.createTypeQueryNode(o.factory.createQualifiedName(s.exprName, e.name)) : s === yt ? yt : be(n, X, t, i);
1634
1633
  }
1635
1634
  if (o.isCallExpression(e)) {
@@ -1641,7 +1640,7 @@ function H(e, t, n, i) {
1641
1640
  const l = Se(n, t, i);
1642
1641
  if (l !== void 0)
1643
1642
  return l;
1644
- const r = H(a, t, n, i);
1643
+ const r = B(a, t, n, i);
1645
1644
  return o.isTypeQueryNode(r) ? o.factory.createTypeReferenceNode(o.factory.createIdentifier("ReturnType"), [
1646
1645
  o.factory.createTypeQueryNode(r.exprName, e.typeArguments)
1647
1646
  ]) : be(n, X, t, i);
@@ -1649,22 +1648,22 @@ function H(e, t, n, i) {
1649
1648
  if (o.isArrowFunction(e)) {
1650
1649
  if (i.isInLuminaMinimalExtraction)
1651
1650
  return Oe;
1652
- const a = t === O.shallow ? O.false : t;
1651
+ const a = t === G.shallow ? G.false : t;
1653
1652
  return o.factory.createFunctionTypeNode(
1654
1653
  e.typeParameters,
1655
1654
  vt(e.parameters, a, n, i),
1656
- e.type ?? (o.isBlock(e.body) ? Je(e, i) ?? Q(n, X, i) : H(e.body, a, n, i))
1655
+ e.type ?? (o.isBlock(e.body) ? Je(e, i) ?? Q(n, X, i) : B(e.body, a, n, i))
1657
1656
  );
1658
1657
  }
1659
1658
  return be(n, X, t, i);
1660
1659
  }
1661
1660
  function Hn(e, t, n, i) {
1662
- const a = t === O.false ? void 0 : Jn;
1661
+ const a = t === G.false ? void 0 : Jn;
1663
1662
  return o.isPropertyAssignment(e) ? o.factory.createPropertySignature(
1664
1663
  a,
1665
1664
  e.name,
1666
1665
  void 0,
1667
- H(e.initializer, t, { ...n, node: e.initializer }, i)
1666
+ B(e.initializer, t, { ...n, node: e.initializer }, i)
1668
1667
  ) : o.isShorthandPropertyAssignment(e) ? o.factory.createPropertySignature(
1669
1668
  a,
1670
1669
  e.name,
@@ -1705,7 +1704,7 @@ function Se(e, t, n) {
1705
1704
  const i = n.program?.getTypeChecker?.();
1706
1705
  if (i !== void 0 && e.node !== void 0) {
1707
1706
  let a;
1708
- const s = t === O.false;
1707
+ const s = t === G.false;
1709
1708
  if (s && e.node.kind === o.SyntaxKind.Identifier) {
1710
1709
  const r = i.getSymbolAtLocation(e.node);
1711
1710
  a = r === void 0 ? void 0 : i.getTypeOfSymbol(r);
@@ -1744,7 +1743,7 @@ function zn(e, t) {
1744
1743
  function Q(e, t, n) {
1745
1744
  return n.isInLuminaMinimalExtraction || n.emitError(t, e), yt;
1746
1745
  }
1747
- const X = "Failed to infer the type of the expression. Please provide an explicit type annotation or simplify the expression.", yt = o.factory.createKeywordTypeNode(o.SyntaxKind.AnyKeyword), Oe = o.factory.createKeywordTypeNode(o.SyntaxKind.UnknownKeyword), _e = o.factory.createKeywordTypeNode(o.SyntaxKind.VoidKeyword), jn = o.factory.createToken(o.SyntaxKind.ReadonlyKeyword), Jn = [jn];
1746
+ const X = "Failed to infer the type of the expression. Please provide an explicit type annotation or simplify the expression.", yt = o.factory.createKeywordTypeNode(o.SyntaxKind.AnyKeyword), Oe = o.factory.createKeywordTypeNode(o.SyntaxKind.UnknownKeyword), We = o.factory.createKeywordTypeNode(o.SyntaxKind.VoidKeyword), jn = o.factory.createToken(o.SyntaxKind.ReadonlyKeyword), Jn = [jn];
1748
1747
  function vt(e, t, n, i) {
1749
1748
  const a = new Array(e.length);
1750
1749
  for (let s = 0; s < a.length; ++s) {
@@ -1754,7 +1753,7 @@ function vt(e, t, n, i) {
1754
1753
  l.dotDotDotToken,
1755
1754
  o.isIdentifier(l.name) ? l.name : o.factory.createIdentifier(`parameter${s}`),
1756
1755
  l.questionToken,
1757
- l.type ?? (l.initializer === void 0 ? Q({ ...n, node: l }, X, i) : H(
1756
+ l.type ?? (l.initializer === void 0 ? Q({ ...n, node: l }, X, i) : B(
1758
1757
  l.initializer,
1759
1758
  t,
1760
1759
  {
@@ -1786,9 +1785,9 @@ function Qn(e) {
1786
1785
  return !1;
1787
1786
  }
1788
1787
  function z(e, t) {
1789
- if (P = t, We.clear(), U = [], qe.clear(), e.pos !== -1 && e.getText(P.file).includes("* @public") && P.emitError(
1788
+ if (M = t, _e.clear(), U = [], qe.clear(), e.pos !== -1 && e.getText(M.file).includes("* @public") && M.emitError(
1790
1789
  "@public JSDoc tag may only appear in interfaces, top-level of type alias, or top-level intersection inside a type-alias. @public JSDoc tag inside inline object literal types or deeper aliases is not supported as such are tricky to represent in the docs UI. Refactor out the type into a separate top-level interface/type-alias. Documentation: https://webgis.esri.com/webgis/core/core/documenting-api#describing-nested-object-types",
1791
- { file: P.file, node: e }
1790
+ { file: M.file, node: e }
1792
1791
  ), e.kind === o.SyntaxKind.Identifier || e.kind === o.SyntaxKind.QualifiedName)
1793
1792
  Ke(e);
1794
1793
  else if (o.isFunctionTypeNode(e) || o.isConstructorTypeNode(e)) {
@@ -1799,14 +1798,14 @@ function z(e, t) {
1799
1798
  qe.add(s.name.escapedText);
1800
1799
  }
1801
1800
  }
1802
- return Yn.writeNode(o.EmitHint.Unspecified, e, void 0, We), {
1803
- text: We.getText(),
1801
+ return Yn.writeNode(o.EmitHint.Unspecified, e, void 0, _e), {
1802
+ text: _e.getText(),
1804
1803
  references: U.length > 0 ? U : void 0,
1805
1804
  values: void 0,
1806
1805
  source: void 0
1807
1806
  };
1808
1807
  }
1809
- let P;
1808
+ let M;
1810
1809
  const ve = (e, t, n) => {
1811
1810
  switch (t.kind) {
1812
1811
  case o.SyntaxKind.TypeReference:
@@ -1832,7 +1831,7 @@ const ve = (e, t, n) => {
1832
1831
  Ke(a);
1833
1832
  break;
1834
1833
  case o.SyntaxKind.TypeQuery:
1835
- const l = qn(t, P);
1834
+ const l = qn(t, M);
1836
1835
  if (l !== void 0)
1837
1836
  return ve(e, l, n);
1838
1837
  Ke(t.exprName, eo);
@@ -1854,14 +1853,14 @@ const ve = (e, t, n) => {
1854
1853
  if (
1855
1854
  // In public types, Lumina's "component" and "el" have the same type
1856
1855
  // Thus print ArcgisHome["el"] as just ArcgisHome
1857
- P.isComponentProject && d.indexType.kind === o.SyntaxKind.LiteralType && d.indexType.literal.text === "el"
1856
+ M.isComponentProject && d.indexType.kind === o.SyntaxKind.LiteralType && d.indexType.literal.text === "el"
1858
1857
  )
1859
1858
  return ve(e, d.objectType, n);
1860
1859
  break;
1861
1860
  case o.SyntaxKind.ImportType:
1862
- P.emitError(
1861
+ M.emitError(
1863
1862
  `\`import()\` syntax inside types is not supported - refactor to import the type at the top of the file${t.pos === -1 ? ". The import() syntax might also be inserted by TypeScript if you are referencing a type that is not otherwise accessible - refactor such cases by adding explicit type annotation." : ""}`,
1864
- { file: P.file, node: t }
1863
+ { file: M.file, node: t }
1865
1864
  );
1866
1865
  break;
1867
1866
  }
@@ -1871,7 +1870,7 @@ const ve = (e, t, n) => {
1871
1870
  {
1872
1871
  onEmitNode: ve
1873
1872
  }
1874
- ), Zn = o.factory.createIdentifier("null | undefined"), We = en.createTextWriter(`
1873
+ ), Zn = o.factory.createIdentifier("null | undefined"), _e = en.createTextWriter(`
1875
1874
  `), eo = 7, qe = /* @__PURE__ */ new Set();
1876
1875
  let U;
1877
1876
  function Ke(e, t = 0) {
@@ -1887,16 +1886,16 @@ function Ke(e, t = 0) {
1887
1886
  const g = i.name;
1888
1887
  n.push(g), i = i.expression;
1889
1888
  }
1890
- const a = n.at(-1), s = a.escapedText, l = We.getTextPos() + t;
1889
+ const a = n.at(-1), s = a.escapedText, l = _e.getTextPos() + t;
1891
1890
  let r = l + s.length;
1892
1891
  const c = a;
1893
1892
  if (c.pos === -1 && c.symbol !== void 0) {
1894
1893
  U.push(
1895
- je(c.symbol, c, P, l, r)
1894
+ je(c.symbol, c, M, l, r)
1896
1895
  );
1897
1896
  return;
1898
1897
  }
1899
- if (P.functionLikeTypeParameters?.has(s) === !0) {
1898
+ if (M.functionLikeTypeParameters?.has(s) === !0) {
1900
1899
  U.push({
1901
1900
  name: s,
1902
1901
  module: void 0,
@@ -1907,7 +1906,7 @@ function Ke(e, t = 0) {
1907
1906
  });
1908
1907
  return;
1909
1908
  }
1910
- if (P.objectLikeTypeParameters?.has(s) === !0) {
1909
+ if (M.objectLikeTypeParameters?.has(s) === !0) {
1911
1910
  U.push({
1912
1911
  name: s,
1913
1912
  module: void 0,
@@ -1918,70 +1917,70 @@ function Ke(e, t = 0) {
1918
1917
  });
1919
1918
  return;
1920
1919
  }
1921
- if (P.localDeclarations.has(s)) {
1920
+ if (M.localDeclarations.has(s)) {
1922
1921
  U.push({
1923
1922
  name: s,
1924
1923
  module: void 0,
1925
1924
  package: void 0,
1926
1925
  viewUrl: Ge(
1927
- P.apiModule.path,
1928
- s === P.exportDefaultName ? void 0 : s,
1926
+ M.apiModule.path,
1927
+ s === M.exportDefaultName ? void 0 : s,
1929
1928
  void 0,
1930
- P
1929
+ M
1931
1930
  ),
1932
1931
  start: l,
1933
1932
  end: r
1934
1933
  });
1935
1934
  return;
1936
1935
  }
1937
- if (P.localPrivateDeclarations?.has(s) === !0) {
1938
- P.localPrivateDeclarations.set(s, Math.abs(P.localPrivateDeclarations.get(s))), U.push({
1936
+ if (M.localPrivateDeclarations?.has(s) === !0) {
1937
+ M.localPrivateDeclarations.set(s, Math.abs(M.localPrivateDeclarations.get(s))), U.push({
1939
1938
  name: s,
1940
1939
  module: void 0,
1941
1940
  package: void 0,
1942
1941
  viewUrl: Ge(
1943
- P.apiModule.path,
1944
- s === P.exportDefaultName ? void 0 : s,
1942
+ M.apiModule.path,
1943
+ s === M.exportDefaultName ? void 0 : s,
1945
1944
  void 0,
1946
- P
1945
+ M
1947
1946
  ),
1948
1947
  start: l,
1949
1948
  end: r
1950
1949
  });
1951
1950
  return;
1952
1951
  }
1953
- const d = P.moduleContext.importsMap[s];
1952
+ const d = M.moduleContext.importsMap[s];
1954
1953
  if (d !== void 0) {
1955
1954
  d.wasUsed = !0;
1956
1955
  const g = d.type === "named";
1957
- d.replacementName !== void 0 && (Me(a, d.replacementName), r = l + d.replacementName.length), d.replacementName !== void 0 && (P.functionLikeTypeParameters?.has(d.replacementName) === !0 || P.objectLikeTypeParameters?.has(d.replacementName) === !0) && P.emitError(
1958
- `Can't do a type replacement of ${ne.green(s)} to ${ne.red(d.replacementName)} as the latter name conflicts with a type parameter name in the current scope. Rename the type parameter or refactor out the type replacement.`,
1959
- { file: P.file, node: e }
1956
+ d.replacementName !== void 0 && (Me(a, d.replacementName), r = l + d.replacementName.length), d.replacementName !== void 0 && (M.functionLikeTypeParameters?.has(d.replacementName) === !0 || M.objectLikeTypeParameters?.has(d.replacementName) === !0) && M.emitError(
1957
+ `Can't do a type replacement of ${oe.green(s)} to ${oe.red(d.replacementName)} as the latter name conflicts with a type parameter name in the current scope. Rename the type parameter or refactor out the type replacement.`,
1958
+ { file: M.file, node: e }
1960
1959
  );
1961
1960
  const E = g ? d.actualName ?? d.replacementName ?? s : void 0;
1962
1961
  if (d.modulePath === void 0) {
1963
- if (P.config.strict) {
1964
- const M = ct(d.specifier);
1965
- P.runtimeDependencyNames.has(M) || P.emitError(
1966
- M === "esri" ? `Found unexpected absolute path import of ${ne.red(E ?? d.type)} from ${ne.red(d.specifier)}. Did you mean to use a relative import instead?` : `Type ${ne.red(E ?? d.type)} imported from ${ne.red(M)} cannot be referenced in public types as this dependency is not declared as a "dependency" in the package.json`,
1967
- { file: P.file, node: e }
1962
+ if (M.config.strict) {
1963
+ const h = ct(d.specifier);
1964
+ M.runtimeDependencyNames.has(h) || M.emitError(
1965
+ h === "esri" ? `Found unexpected absolute path import of ${oe.red(E ?? d.type)} from ${oe.red(d.specifier)}. Did you mean to use a relative import instead?` : `Type ${oe.red(E ?? d.type)} imported from ${oe.red(h)} cannot be referenced in public types as this dependency is not declared as a "dependency" in the package.json`,
1966
+ { file: M.file, node: e }
1968
1967
  );
1969
1968
  }
1970
- } else P.config.strict || ze(
1969
+ } else M.config.strict || ze(
1971
1970
  d.modulePath,
1972
1971
  pt(
1973
- P.apiModule.sourcePath.slice(P.config.context.basePath.length),
1972
+ M.apiModule.sourcePath.slice(M.config.context.basePath.length),
1974
1973
  d.specifier
1975
1974
  ),
1976
1975
  g ? E : d.type,
1977
- P
1976
+ M
1978
1977
  );
1979
- let y, h = d.modulePath;
1980
- h === void 0 && (y = ct(d.specifier), h = d.specifier.length === y.length ? void 0 : d.specifier.slice(y.length + 1)), U.push({
1978
+ let v, b = d.modulePath;
1979
+ b === void 0 && (v = ct(d.specifier), b = d.specifier.length === v.length ? void 0 : d.specifier.slice(v.length + 1)), U.push({
1981
1980
  name: E ?? d.type,
1982
- module: h,
1983
- package: y,
1984
- viewUrl: d.modulePath === void 0 ? di(y, h, g ? s : d.type, P) : Ge(d.modulePath, E, void 0, P),
1981
+ module: b,
1982
+ package: v,
1983
+ viewUrl: d.modulePath === void 0 ? di(v, b, g ? s : d.type, M) : Ge(d.modulePath, E, void 0, M),
1985
1984
  start: l,
1986
1985
  end: r
1987
1986
  });
@@ -1999,24 +1998,24 @@ function Ke(e, t = 0) {
1999
1998
  });
2000
1999
  let g = p;
2001
2000
  if (g.length > 1) {
2002
- let E = n.length - 2, y = r + 1;
2001
+ let E = n.length - 2, v = r + 1;
2003
2002
  for (; g[1] !== void 0 && E >= 0; ) {
2004
- const h = n[E--];
2005
- if (g = g[1][h.escapedText], g === void 0)
2006
- P.emitError("Failed to resolve the definition of the type reference", {
2007
- file: P.file,
2003
+ const b = n[E--];
2004
+ if (g = g[1][b.escapedText], g === void 0)
2005
+ M.emitError("Failed to resolve the definition of the type reference", {
2006
+ file: M.file,
2008
2007
  node: e
2009
2008
  });
2010
2009
  else {
2011
- const M = y + h.escapedText.length;
2010
+ const h = v + b.escapedText.length;
2012
2011
  U.push({
2013
- name: h.escapedText,
2012
+ name: b.escapedText,
2014
2013
  module: void 0,
2015
2014
  package: De,
2016
2015
  viewUrl: g[0]?.startsWith("https") === !1 ? `${ut}${g[0]}` : g[0] ?? void 0,
2017
- start: y,
2018
- end: M
2019
- }), y = M + 1;
2016
+ start: v,
2017
+ end: h
2018
+ }), v = h + 1;
2020
2019
  }
2021
2020
  }
2022
2021
  }
@@ -2024,14 +2023,14 @@ function Ke(e, t = 0) {
2024
2023
  }
2025
2024
  if (qe.has(s))
2026
2025
  return;
2027
- const u = P.program?.getTypeChecker?.()?.getSymbolAtLocation(a);
2026
+ const u = M.program?.getTypeChecker?.()?.getSymbolAtLocation(a);
2028
2027
  if (u !== void 0) {
2029
- U.push(je(u, a, P, l, r));
2028
+ U.push(je(u, a, M, l, r));
2030
2029
  return;
2031
2030
  }
2032
- P.emitError(
2031
+ M.emitError(
2033
2032
  "Failed to resolve the definition of the type reference. Ensure it has @public or refactor out its usage from the public API type",
2034
- { file: P.file, node: e }
2033
+ { file: M.file, node: e }
2035
2034
  );
2036
2035
  }
2037
2036
  function Me(e, t) {
@@ -2157,7 +2156,7 @@ function so(e, t) {
2157
2156
  {
2158
2157
  name: "example",
2159
2158
  text: `\`\`\`js
2160
- const ${n} = document.querySelector("${e.tagName}");
2159
+ const ${n} = document.createElement("${e.tagName}");
2161
2160
  document.body.append(${n});
2162
2161
  await ${n}.componentOnReady();
2163
2162
  console.log("${e.tagName} is ready to go!");
@@ -2216,7 +2215,7 @@ const ro = Ze(), lo = {
2216
2215
  function de(e, t, n, i, a) {
2217
2216
  if (i.docsTags === void 0 || n === void 0)
2218
2217
  return;
2219
- const s = i.docsTags.indexOf(W.copyDoc);
2218
+ const s = i.docsTags.indexOf(V.copyDoc);
2220
2219
  if (s === -1)
2221
2220
  return;
2222
2221
  const l = i.name;
@@ -2251,29 +2250,29 @@ function Ae(e, t, n, i) {
2251
2250
  });
2252
2251
  return;
2253
2252
  }
2254
- const a = n ?? e, s = n !== void 0 && !o.isVariableStatement(n), l = o.isMethodDeclaration(e), r = o.isMethodSignature(e), c = l || r || s, m = n !== void 0 && o.isVariableStatement(n), p = o.isFunctionDeclaration(e) || m, f = !s && !m && o.isFunctionTypeNode(e) || o.isCallSignatureDeclaration(e), u = o.isConstructorDeclaration(e), g = u || o.isConstructSignatureDeclaration(e) || o.isConstructorTypeNode(e), E = i.isInLuminaMinimalExtraction || i.jsDoc === Ce, y = Ze();
2255
- let h, M, b = !1, v = !1;
2253
+ const a = n ?? e, s = n !== void 0 && !o.isVariableStatement(n), l = o.isMethodDeclaration(e), r = o.isMethodSignature(e), c = l || r || s, m = n !== void 0 && o.isVariableStatement(n), p = o.isFunctionDeclaration(e) || m, f = !s && !m && o.isFunctionTypeNode(e) || o.isCallSignatureDeclaration(e), u = o.isConstructorDeclaration(e), g = u || o.isConstructSignatureDeclaration(e) || o.isConstructorTypeNode(e), E = i.isInLuminaMinimalExtraction || i.jsDoc === Ce, v = Ze();
2254
+ let b, h, L = !1, I = !1;
2256
2255
  if (!p && a.modifiers !== void 0)
2257
- for (let T = 0; T < a.modifiers.length; ++T)
2258
- switch (a.modifiers[T].kind) {
2256
+ for (let C = 0; C < a.modifiers.length; ++C)
2257
+ switch (a.modifiers[C].kind) {
2259
2258
  case o.SyntaxKind.StaticKeyword:
2260
- h = !0;
2259
+ b = !0;
2261
2260
  break;
2262
2261
  case o.SyntaxKind.ProtectedKeyword:
2263
- M = "protected";
2262
+ h = "protected";
2264
2263
  break;
2265
2264
  case o.SyntaxKind.AbstractKeyword:
2266
- b = !0;
2265
+ L = !0;
2267
2266
  break;
2268
2267
  case o.SyntaxKind.AsyncKeyword:
2269
- v = !0;
2268
+ I = !0;
2270
2269
  break;
2271
2270
  }
2272
- const x = {
2273
- [Y]: y,
2271
+ const y = {
2272
+ [Y]: v,
2274
2273
  kind: c ? "method" : p ? "function" : f ? "call-signature" : g ? "constructor" : void 0,
2275
2274
  name: g || f ? void 0 : t,
2276
- static: h,
2275
+ static: b,
2277
2276
  deprecated: void 0,
2278
2277
  summary: void 0,
2279
2278
  description: void 0,
@@ -2283,7 +2282,7 @@ function Ae(e, t, n, i) {
2283
2282
  return: u ? void 0 : {
2284
2283
  summary: void 0,
2285
2284
  description: void 0,
2286
- type: E ? v ? oo : ui : z(
2285
+ type: E ? I ? oo : ui : z(
2287
2286
  e.type ?? Je(e, i) ?? Q(
2288
2287
  { file: i.file, node: e },
2289
2288
  "@public function must have a return type annotation",
@@ -2294,20 +2293,20 @@ function Ae(e, t, n, i) {
2294
2293
  },
2295
2294
  inheritedFrom: void 0,
2296
2295
  signature: void 0,
2297
- privacy: M,
2296
+ privacy: h,
2298
2297
  source: void 0
2299
- }, R = x, I = ln(x, i.jsDoc), k = E ? [] : e.parameters;
2300
- let D = I.length, S = !1, N = 0;
2301
- for (let T = 0; T < k.length; ++T) {
2302
- const C = k[T], A = o.isIdentifier(C.name) ? C.name.escapedText : void 0;
2298
+ }, k = y, P = ln(y, i.jsDoc), D = E ? [] : e.parameters;
2299
+ let x = P.length, T = !1, K = 0;
2300
+ for (let C = 0; C < D.length; ++C) {
2301
+ const S = D[C], A = o.isIdentifier(S.name) ? S.name.escapedText : void 0;
2303
2302
  if (A === "this") {
2304
- N -= 1;
2303
+ K -= 1;
2305
2304
  continue;
2306
2305
  }
2307
- const _ = u && A !== void 0 && C.modifiers !== void 0 && C.modifiers.length > 0 ? j(C, !0, i) : void 0;
2306
+ const _ = u && A !== void 0 && S.modifiers !== void 0 && S.modifiers.length > 0 ? j(S, !0, i) : void 0;
2308
2307
  if (_ !== void 0) {
2309
- N -= 1, D += 1, i.jsDoc = _;
2310
- const q = vi(C, A, !1, i);
2308
+ K -= 1, x += 1, i.jsDoc = _;
2309
+ const q = vi(S, A, !1, i);
2311
2310
  if (q === void 0)
2312
2311
  continue;
2313
2312
  i.apiObject.members.push(q);
@@ -2318,87 +2317,87 @@ function Ae(e, t, n, i) {
2318
2317
  description: q.description,
2319
2318
  docsTags: void 0,
2320
2319
  optional: void 0,
2321
- rest: C.dotDotDotToken ? !0 : void 0,
2320
+ rest: S.dotDotDotToken ? !0 : void 0,
2322
2321
  type: q.type,
2323
2322
  default: q.default
2324
2323
  };
2325
- pe.optional = Bt(C, pe), x.parameters.push(pe);
2324
+ pe.optional = Bt(S, pe), y.parameters.push(pe);
2326
2325
  continue;
2327
2326
  }
2328
- let F = I[T + N]?.text, G, w;
2329
- if (!i.config.strict && (F === void 0 || A === void 0) && (F = A ?? `parameter${T}`), F === void 0) {
2327
+ let F = P[C + K]?.text, N, w;
2328
+ if (!i.config.strict && (F === void 0 || A === void 0) && (F = A ?? `parameter${C}`), F === void 0) {
2330
2329
  i.emitError(
2331
2330
  `Expected @param tag for every parameter on a public function. If you need to include a non-public parameter on a public function, see https://webgis.esri.com/webgis/core/core/documenting-api#param${g ? " and https://webgis.esri.com/webgis/core/core/documenting-api#constructor" : ""}`,
2332
- { file: i.file, node: C }
2333
- ), S = !0;
2331
+ { file: i.file, node: S }
2332
+ ), T = !0;
2334
2333
  break;
2335
2334
  }
2336
- const K = F.indexOf(" ");
2337
- if (G = K === -1 ? F : F.slice(0, K), w = K === -1 ? "" : F.slice(K + 1).trim(), (w.startsWith("- ") || w.startsWith(`-
2338
- `)) && (w = w.slice(2).trim()), A !== void 0 && A !== G && `_${G}` !== A) {
2339
- const q = G.startsWith("[") || G.endsWith("]");
2335
+ const H = F.indexOf(" ");
2336
+ if (N = H === -1 ? F : F.slice(0, H), w = H === -1 ? "" : F.slice(H + 1).trim(), (w.startsWith("- ") || w.startsWith(`-
2337
+ `)) && (w = w.slice(2).trim()), A !== void 0 && A !== N && `_${N}` !== A) {
2338
+ const q = N.startsWith("[") || N.endsWith("]");
2340
2339
  if (i.config.strict) {
2341
2340
  i.emitError(
2342
- `The '${A}' TypeScript parameter name does not match the @param tag at position ${T}, '${G}'${q ? ". If you meant to mark the parameter as optional, use TypeScript's `?` syntax or `=` default value syntax instead of JSDoc [square brackets]" : ""}`,
2341
+ `The '${A}' TypeScript parameter name does not match the @param tag at position ${C}, '${N}'${q ? ". If you meant to mark the parameter as optional, use TypeScript's `?` syntax or `=` default value syntax instead of JSDoc [square brackets]" : ""}`,
2343
2342
  {
2344
2343
  file: i.file,
2345
- node: C
2344
+ node: S
2346
2345
  }
2347
- ), S = !0;
2346
+ ), T = !0;
2348
2347
  break;
2349
2348
  } else
2350
- G = A.startsWith("_") ? A.slice(1) : A;
2349
+ N = A.startsWith("_") ? A.slice(1) : A;
2351
2350
  }
2352
- const me = C.type ?? (C.initializer === void 0 ? Q(
2353
- { file: i.file, node: C },
2354
- `Public parameter ${G} must have a type annotation or a default value`,
2351
+ const me = S.type ?? (S.initializer === void 0 ? Q(
2352
+ { file: i.file, node: S },
2353
+ `Public parameter ${N} must have a type annotation or a default value`,
2355
2354
  i
2356
- ) : ht(C.initializer, O.false, i.file, i)), ke = z(me, i), ie = {
2357
- name: G,
2355
+ ) : ht(S.initializer, G.false, i.file, i)), ke = z(me, i), ne = {
2356
+ name: N,
2358
2357
  deprecated: void 0,
2359
2358
  summary: void 0,
2360
2359
  description: w || void 0,
2361
2360
  docsTags: void 0,
2362
2361
  optional: void 0,
2363
- rest: C.dotDotDotToken ? !0 : void 0,
2362
+ rest: S.dotDotDotToken ? !0 : void 0,
2364
2363
  type: ke,
2365
- default: Be(C.initializer, void 0, i.file)
2364
+ default: Be(S.initializer, void 0, i.file)
2366
2365
  };
2367
- ie.optional = Bt(C, ie), x.parameters.push(ie);
2366
+ ne.optional = Bt(S, ne), y.parameters.push(ne);
2368
2367
  }
2369
- if (i.config.strict && !S && D !== x.parameters.length && i.emitError(
2370
- `Expected @param tags to match the number of parameters on a public function. Found ${I.length} @param tags for ${x.parameters.length} TypeScript parameters. Documentation: https://webgis.esri.com/webgis/core/core/documenting-api#param${g ? " and https://webgis.esri.com/webgis/core/core/documenting-api#constructor" : ""}`,
2368
+ if (i.config.strict && !T && x !== y.parameters.length && i.emitError(
2369
+ `Expected @param tags to match the number of parameters on a public function. Found ${P.length} @param tags for ${y.parameters.length} TypeScript parameters. Documentation: https://webgis.esri.com/webgis/core/core/documenting-api#param${g ? " and https://webgis.esri.com/webgis/core/core/documenting-api#constructor" : ""}`,
2371
2370
  { file: i.file, node: e }
2372
- ), x.parameters.length === 0)
2373
- x.parameters = void 0;
2371
+ ), y.parameters.length === 0)
2372
+ y.parameters = void 0;
2374
2373
  else {
2375
- let T = !0;
2376
- for (let C = x.parameters.length - 1; C >= 0; C--) {
2377
- const L = x.parameters[C];
2378
- T &&= L.optional === !0 || L.rest === !0, !T && L.optional && (L.optional = void 0, L.type.text += " | undefined");
2374
+ let C = !0;
2375
+ for (let S = y.parameters.length - 1; S >= 0; S--) {
2376
+ const R = y.parameters[S];
2377
+ C &&= R.optional === !0 || R.rest === !0 || R.default !== void 0, !C && R.optional && (R.optional = void 0, R.type.text.endsWith(" | undefined") || (R.type.text += " | undefined"));
2379
2378
  }
2380
2379
  }
2381
- l && i.componentTagName !== void 0 && (R.signature = Hi(R), v && !Fi(R) && i.emitError("Public method marked as async must have a Promise<SomeType> return type annotation.", {
2380
+ l && i.componentTagName !== void 0 && (k.signature = Hi(k), I && !Fi(k) && i.emitError("Public method marked as async must have a Promise<SomeType> return type annotation.", {
2382
2381
  file: i.file,
2383
2382
  node: e
2384
2383
  })), i.functionLikeTypeParameters = void 0;
2385
- const B = p ? et(a) : 0, $ = p && i.exportDefaultName === t, V = B === 2 || $;
2386
- return p && (V ? Ct(x, !0, i) : B === 0 && i.config.strict && i.emitError("Expected @public function to be exported using named or default export.", {
2384
+ const O = p ? et(a) : 0, J = p && i.exportDefaultName === t, $ = O === 2 || J;
2385
+ return p && ($ ? Ct(y, !0, i) : O === 0 && i.config.strict && i.emitError("Expected @public function to be exported using named or default export.", {
2387
2386
  file: i.file,
2388
2387
  node: e
2389
- })), i.produceDts && (c || g || f ? (b && (y.isAbstract = !0), y.hasQuestionToken = a.questionToken !== void 0 ? !0 : void 0) : y.isDefaultExported = V || void 0), c ? po(
2388
+ })), i.produceDts && (c || g || f ? (L && (v.isAbstract = !0), v.hasQuestionToken = a.questionToken !== void 0 ? !0 : void 0) : v.isDefaultExported = $ || void 0), c ? po(
2390
2389
  i,
2391
2390
  n ?? e,
2392
2391
  i.config.documentation.copyDocDefinitions.methods,
2393
- x,
2392
+ y,
2394
2393
  i.apiObject
2395
2394
  ) : p && uo(
2396
2395
  i,
2397
2396
  n ?? e,
2398
2397
  i.config.documentation.copyDocDefinitions.functions,
2399
- x,
2398
+ y,
2400
2399
  i.apiModule
2401
- ), x;
2400
+ ), y;
2402
2401
  }
2403
2402
  const Bt = (e, t) => (
2404
2403
  // Keep ? as is
@@ -2412,9 +2411,9 @@ function ho(e) {
2412
2411
  return St(), Mt(e), yi();
2413
2412
  }
2414
2413
  let Le = !1, se = !1, re = !1, Ie = !1, le = !1, bt = !1;
2415
- const ce = [], ee = [];
2414
+ const ce = [], te = [];
2416
2415
  function St() {
2417
- Le = !1, se = !1, re = !1, Ie = !1, le = !1, bt = !1, ce.length = 0, ee.length = 0;
2416
+ Le = !1, se = !1, re = !1, Ie = !1, le = !1, bt = !1, ce.length = 0, te.length = 0;
2418
2417
  }
2419
2418
  function yi() {
2420
2419
  if (!re && !Ie && !le && !Le)
@@ -2424,9 +2423,9 @@ function yi() {
2424
2423
  for (let t = 0; t < ce.length; ++t)
2425
2424
  e.push({ type: "string", value: ce[t] });
2426
2425
  else re && e.push(Eo);
2427
- if (ee.length > 0)
2428
- for (let t = 0; t < ee.length; ++t)
2429
- e.push({ type: "number", value: ee[t] });
2426
+ if (te.length > 0)
2427
+ for (let t = 0; t < te.length; ++t)
2428
+ e.push({ type: "number", value: te[t] });
2430
2429
  else le && e.push(Co);
2431
2430
  return Ie && e.push(bo), Le ? e.push(Mo) : se && e.push(Po), e;
2432
2431
  }
@@ -2456,11 +2455,11 @@ function Pe(e, t) {
2456
2455
  re = !0, ce.push(e.text);
2457
2456
  return;
2458
2457
  case o.SyntaxKind.NumericLiteral:
2459
- le = !0, ee.push(e.text);
2458
+ le = !0, te.push(e.text);
2460
2459
  return;
2461
2460
  case o.SyntaxKind.PrefixUnaryExpression:
2462
2461
  const n = e.operand;
2463
- n.kind === o.SyntaxKind.NumericLiteral ? (ee.push(`-${n.text}`), le = !0) : se = !0;
2462
+ n.kind === o.SyntaxKind.NumericLiteral ? (te.push(`-${n.text}`), le = !0) : se = !0;
2464
2463
  return;
2465
2464
  case o.SyntaxKind.VoidKeyword:
2466
2465
  case o.SyntaxKind.UndefinedKeyword:
@@ -2470,7 +2469,7 @@ function Pe(e, t) {
2470
2469
  const i = e.types, a = Math.min(i.length, Qe);
2471
2470
  for (let l = 0; l < a; ++l)
2472
2471
  Pe(i[l], t);
2473
- i.length > Qe && (ce.length = 0, ee.length = 0);
2472
+ i.length > Qe && (ce.length = 0, te.length = 0);
2474
2473
  return;
2475
2474
  case o.SyntaxKind.ParenthesizedType:
2476
2475
  Pe(e.type, t);
@@ -2510,14 +2509,14 @@ function Mt(e) {
2510
2509
  const t = Math.min(e.types.length, Qe);
2511
2510
  for (let n = 0; n < t; ++n)
2512
2511
  Ut(e.types[n]);
2513
- e.types.length > Qe && (ce.length = 0, ee.length = 0);
2512
+ e.types.length > Qe && (ce.length = 0, te.length = 0);
2514
2513
  } else
2515
2514
  Ut(e);
2516
2515
  }
2517
2516
  function Ut(e) {
2518
2517
  const t = e.flags;
2519
2518
  let n = !1;
2520
- if (t & o.TypeFlags.StringLiteral ? (n = !0, re = !0, ce.push(e.value)) : t & o.TypeFlags.StringLike && (n = !0, re = !0), t & o.TypeFlags.NumberLiteral ? (n = !0, le = !0, ee.push(e.value.toString())) : t & o.TypeFlags.NumberLike && (n = !0, le = !0), t & o.TypeFlags.BooleanLike && (n = !0, Ie = !0), t & o.TypeFlags.Any) {
2519
+ if (t & o.TypeFlags.StringLiteral ? (n = !0, re = !0, ce.push(e.value)) : t & o.TypeFlags.StringLike && (n = !0, re = !0), t & o.TypeFlags.NumberLiteral ? (n = !0, le = !0, te.push(e.value.toString())) : t & o.TypeFlags.NumberLike && (n = !0, le = !0), t & o.TypeFlags.BooleanLike && (n = !0, Ie = !0), t & o.TypeFlags.Any) {
2521
2520
  if (e.intrinsicName === "error") {
2522
2521
  se = !0, bt = !0;
2523
2522
  return;
@@ -2534,12 +2533,12 @@ function Do(e, t, n) {
2534
2533
  if (e.questionToken !== void 0)
2535
2534
  return;
2536
2535
  if (e.type !== void 0)
2537
- o.isTypeReferenceNode(e.type) && e.type.typeName.escapedText === "EventEmitter" && (i = e.type.typeArguments?.[0] ?? _e);
2536
+ o.isTypeReferenceNode(e.type) && e.type.typeName.escapedText === "EventEmitter" && (i = e.type.typeArguments?.[0] ?? We);
2538
2537
  else if (a !== void 0 && o.isCallExpression(a)) {
2539
2538
  const r = a.expression;
2540
2539
  if (o.isIdentifier(r)) {
2541
2540
  const c = r.escapedText;
2542
- c === He ? (i = a.typeArguments?.[0] ?? _e, s = a.arguments[0]) : c === "reEmitEvent" ? i = a.typeArguments?.[0] ?? _e : c.startsWith("use") && (i = zt(e, n));
2541
+ c === He ? (i = a.typeArguments?.[0] ?? We, s = a.arguments[0]) : c === "reEmitEvent" ? i = a.typeArguments?.[0] ?? We : c.startsWith("use") && (i = zt(e, n));
2543
2542
  } else if (o.isCallExpression(r) && o.isIdentifier(r.expression)) {
2544
2543
  const c = r.expression.escapedText;
2545
2544
  if (c === "usePropertyChange") {
@@ -2605,7 +2604,7 @@ function Lo(e, t, n, i) {
2605
2604
  return;
2606
2605
  }
2607
2606
  for (const a of t.properties)
2608
- !o.isPropertyAssignment(a) || !o.isIdentifier(a.name) || (a.name.text === "cancelable" && !oe(a.initializer, i) && (n.cancelable = !1), a.name.text === "bubbles" && !oe(a.initializer, i) && (n.bubbles = !1), a.name.text === "composed" && !oe(a.initializer, i) && (n.composed = !1));
2607
+ !o.isPropertyAssignment(a) || !o.isIdentifier(a.name) || (a.name.text === "cancelable" && !Z(a.initializer, i) && (n.cancelable = !1), a.name.text === "bubbles" && !Z(a.initializer, i) && (n.bubbles = !1), a.name.text === "composed" && !Z(a.initializer, i) && (n.composed = !1));
2609
2608
  }
2610
2609
  }
2611
2610
  function zt(e, t) {
@@ -2617,7 +2616,7 @@ function zt(e, t) {
2617
2616
  return;
2618
2617
  const s = n.getTypeArguments(i);
2619
2618
  if (s.length === 0)
2620
- return _e;
2619
+ return We;
2621
2620
  const l = s[0];
2622
2621
  return n.typeToTypeNode(l, e, o.NodeBuilderFlags.NoTruncation);
2623
2622
  }
@@ -2627,10 +2626,10 @@ function vi(e, t, n, i) {
2627
2626
  return;
2628
2627
  }
2629
2628
  const a = e, s = xe(a.modifiers, "property") ?? (i.pairedSetter === void 0 ? void 0 : xe(i.pairedSetter.modifiers, "property")), l = s?.arguments[0], r = l !== void 0 && o.isObjectLiteralExpression(l) ? l.properties : void 0, c = o.isPropertyDeclaration(e) || o.isPropertySignature(e), m = o.isGetAccessor(e), d = wi(), p = i.isInLuminaMinimalExtraction || i.jsDoc === Ce;
2630
- let f = !1, u = !1, g, E = !1, y, h, M;
2629
+ let f = !1, u = !1, g, E = !1, v, b, h;
2631
2630
  if (c && e.modifiers !== void 0)
2632
- for (let T = 0; T < e.modifiers.length; ++T)
2633
- switch (e.modifiers[T].kind) {
2631
+ for (let C = 0; C < e.modifiers.length; ++C)
2632
+ switch (e.modifiers[C].kind) {
2634
2633
  case o.SyntaxKind.ReadonlyKeyword:
2635
2634
  f = !0;
2636
2635
  continue;
@@ -2641,44 +2640,44 @@ function vi(e, t, n, i) {
2641
2640
  g = "protected";
2642
2641
  continue;
2643
2642
  case o.SyntaxKind.StaticKeyword:
2644
- y = !0;
2643
+ v = !0;
2645
2644
  continue;
2646
2645
  case o.SyntaxKind.AbstractKeyword:
2647
2646
  E = !0;
2648
2647
  continue;
2649
2648
  }
2650
2649
  n ||= f || m && i.pairedSetter === void 0;
2651
- const b = i.apiObject.customElement === !0;
2652
- let v = !1;
2650
+ const L = i.apiObject.customElement === !0;
2651
+ let I = !1;
2653
2652
  if (i.moduleHasAccessorLikeClass)
2654
2653
  if (r !== void 0) {
2655
- for (let T = 0; T < r.length; ++T) {
2656
- const C = r[T];
2657
- if (!o.isPropertyAssignment(C)) {
2658
- v ||= o.isSpreadAssignment(C);
2654
+ for (let C = 0; C < r.length; ++C) {
2655
+ const S = r[C];
2656
+ if (!o.isPropertyAssignment(S)) {
2657
+ I ||= o.isSpreadAssignment(S);
2659
2658
  continue;
2660
2659
  }
2661
- const L = C.name.escapedText;
2662
- L === "readOnly" && oe(C.initializer, i) ? n = !0 : L === "constructOnly" && oe(C.initializer, i) ? d.isConstructorOnly = !0 : L === "type" ? d.hasAutoCasting = !0 : L === "types" && Io(
2660
+ const R = S.name.escapedText;
2661
+ R === "readOnly" && Z(S.initializer, i) ? n = !0 : R === "constructOnly" && Z(S.initializer, i) ? d.isConstructorOnly = !0 : R === "type" ? d.hasAutoCasting = !0 : R === "types" && Io(
2663
2662
  d,
2664
- C.initializer?.kind === o.SyntaxKind.ObjectLiteralExpression ? C.initializer : void 0
2663
+ S.initializer?.kind === o.SyntaxKind.ObjectLiteralExpression ? S.initializer : void 0
2665
2664
  );
2666
2665
  }
2667
- v && d.hasAutoCasting === void 0 && (d.hasAutoCasting = !0, d.autoCastingRequiresType = !0);
2666
+ I && d.hasAutoCasting === void 0 && (d.hasAutoCasting = !0, d.autoCastingRequiresType = !0);
2668
2667
  } else l !== void 0 && (d.hasAutoCasting = !0, d.autoCastingRequiresType = !0);
2669
- else if (b) {
2670
- const T = i.apiObject;
2668
+ else if (L) {
2669
+ const C = i.apiObject;
2671
2670
  if (s === void 0) {
2672
2671
  if (p)
2673
2672
  return;
2674
2673
  {
2675
- const C = c && !y ? Do(e, t, i) : void 0;
2676
- if (C !== void 0) {
2677
- T.events ??= [], T.events.push(C);
2674
+ const S = c && !v ? Do(e, t, i) : void 0;
2675
+ if (S !== void 0) {
2676
+ C.events ??= [], C.events.push(S);
2678
2677
  return;
2679
- } else !i.config.strict && gi(e) ? (g = "protected", h = !1, i.jsDoc = {
2678
+ } else !i.config.strict && gi(e) ? (g = "protected", b = !1, i.jsDoc = {
2680
2679
  ...i.jsDoc,
2681
- docsTags: [...i.jsDoc.docsTags, W.internal]
2680
+ docsTags: [...i.jsDoc.docsTags, V.internal]
2682
2681
  }) : s === void 0 && i.emitError(
2683
2682
  "Public properties on a Lumina component must have a @property() decorator for lazy-loading compatibility.",
2684
2683
  {
@@ -2688,92 +2687,92 @@ function vi(e, t, n, i) {
2688
2687
  );
2689
2688
  }
2690
2689
  } else if (r !== void 0)
2691
- for (let C = 0; C < r.length; ++C) {
2692
- const L = r[C];
2693
- if (!(!o.isPropertyAssignment(L) || !o.isIdentifier(L.name)))
2694
- switch (L.name.escapedText) {
2690
+ for (let S = 0; S < r.length; ++S) {
2691
+ const R = r[S];
2692
+ if (!(!o.isPropertyAssignment(R) || !o.isIdentifier(R.name)))
2693
+ switch (R.name.escapedText) {
2695
2694
  case "attribute":
2696
- o.isStringLiteral(L.initializer) ? h = L.initializer.text : h = oe(L.initializer, i);
2695
+ o.isStringLiteral(R.initializer) ? b = R.initializer.text : b = Z(R.initializer, i);
2697
2696
  continue;
2698
2697
  case "reflect":
2699
- oe(L.initializer, i) && (h ??= !0, M = !0);
2698
+ Z(R.initializer, i) && (b ??= !0, h = !0);
2700
2699
  continue;
2701
2700
  case "readOnly":
2702
- oe(L.initializer, i) && (n = !0);
2701
+ Z(R.initializer, i) && (n = !0);
2703
2702
  continue;
2704
2703
  case "type":
2705
2704
  case "converter":
2706
- h ??= !0;
2705
+ b ??= !0;
2707
2706
  continue;
2708
2707
  }
2709
2708
  }
2710
2709
  }
2711
- const x = i.pairedSetter ?? (o.isSetAccessor(e) ? e : void 0), R = n ? void 0 : x;
2712
- u ||= s !== void 0 || m || x !== void 0, d.isAccessor = u || void 0;
2713
- const I = R?.parameters[0].type, k = a.type;
2714
- let D = I ?? k;
2715
- if (D === void 0) {
2716
- const T = R?.parameters[0].initializer ?? e.initializer;
2717
- if (c && T !== void 0 && o.isArrowFunction(T)) {
2710
+ const y = i.pairedSetter ?? (o.isSetAccessor(e) ? e : void 0), k = n ? void 0 : y;
2711
+ u ||= s !== void 0 || m || y !== void 0, d.isAccessor = u || void 0;
2712
+ const P = k?.parameters[0].type, D = a.type;
2713
+ let x = P ?? D;
2714
+ if (x === void 0) {
2715
+ const C = k?.parameters[0].initializer ?? e.initializer;
2716
+ if (c && C !== void 0 && o.isArrowFunction(C)) {
2718
2717
  if (n)
2719
- return $t(T, t, e, i);
2718
+ return $t(C, t, e, i);
2720
2719
  jt(e, i);
2721
2720
  }
2722
- D = T === void 0 ? zn(e, i) ?? Q(
2721
+ x = C === void 0 ? zn(e, i) ?? Q(
2723
2722
  { file: i.file, node: e },
2724
2723
  "Public property must have a type annotation or a default value",
2725
2724
  i
2726
- ) : ht(T, n ? O.shallow : O.false, i.file, i);
2727
- } else if (D = Et(D), c && o.isFunctionTypeNode(D)) {
2725
+ ) : ht(C, n ? G.shallow : G.false, i.file, i);
2726
+ } else if (x = Et(x), c && o.isFunctionTypeNode(x)) {
2728
2727
  if (n)
2729
- return $t(D, t, e, i);
2728
+ return $t(x, t, e, i);
2730
2729
  jt(e, i);
2731
2730
  }
2732
- const S = {
2731
+ const T = {
2733
2732
  [Y]: d,
2734
2733
  kind: "field",
2735
2734
  name: t,
2736
- static: y,
2735
+ static: v,
2737
2736
  deprecated: void 0,
2738
2737
  summary: void 0,
2739
2738
  description: void 0,
2740
2739
  docsTags: void 0,
2741
2740
  // In minimal extraction, we care only for type.values (set below)
2742
- type: p ? { ...ui } : z(D, i),
2741
+ type: p ? { ...ui } : z(x, i),
2743
2742
  getterType: void 0,
2744
2743
  default: void 0,
2745
2744
  readonly: n || void 0,
2746
2745
  inheritedFrom: void 0,
2747
2746
  privacy: g,
2748
2747
  source: void 0,
2749
- attribute: !b || h === !1 ? void 0 : typeof h == "string" ? h : qi(t),
2750
- reflects: M,
2748
+ attribute: !L || b === !1 ? void 0 : typeof b == "string" ? b : qi(t),
2749
+ reflects: h,
2751
2750
  docsOnlyReadonly: void 0
2752
2751
  };
2753
- cn(S, i.jsDoc);
2754
- const N = S.default;
2755
- b && t === "messageOverrides" && (d.dtsTypeOverride = S.type.text, S.type = ao);
2756
- const B = b && s !== void 0;
2757
- if (B) {
2758
- !n && S.readonly === !0 && (S.docsOnlyReadonly = !0);
2759
- const T = i.program?.getTypeChecker?.();
2760
- S.type.values = T !== void 0 && D.pos === -1 && (D.kind === o.SyntaxKind.TypeQuery || D.kind === o.SyntaxKind.IndexedAccessType || D.kind === o.SyntaxKind.ImportType || D.kind === o.SyntaxKind.TypeReference) ? ho(T.getTypeAtLocation(x?.parameters[0] ?? e)) : To(D, T, x?.parameters[0] ?? e), (h === void 0 && S.type.values === void 0 && !i.config.context.isLuminaMinimalExtraction || S.readonly && !S.reflects) && (S.attribute = void 0);
2761
- const C = T !== void 0 && o.isPropertyDeclaration(e) && // BUG: should not check node.type here? but do check in property.getterType below
2752
+ cn(T, i.jsDoc);
2753
+ const K = T.default;
2754
+ L && t === "messageOverrides" && (d.dtsTypeOverride = T.type.text, T.type = ao);
2755
+ const O = L && s !== void 0;
2756
+ if (O) {
2757
+ !n && T.readonly === !0 && (T.docsOnlyReadonly = !0);
2758
+ const C = i.program?.getTypeChecker?.();
2759
+ T.type.values = C !== void 0 && x.pos === -1 && (x.kind === o.SyntaxKind.TypeQuery || x.kind === o.SyntaxKind.IndexedAccessType || x.kind === o.SyntaxKind.ImportType || x.kind === o.SyntaxKind.TypeReference) ? ho(C.getTypeAtLocation(y?.parameters[0] ?? e)) : To(x, C, y?.parameters[0] ?? e), (b === void 0 && T.type.values === void 0 && !i.config.context.isLuminaMinimalExtraction || T.readonly && !T.reflects) && (T.attribute = void 0);
2760
+ const S = C !== void 0 && o.isPropertyDeclaration(e) && // BUG: should not check node.type here? but do check in property.getterType below
2762
2761
  e.type !== void 0 && e.initializer !== void 0 && o.isPropertyAccessExpression(e.initializer) && o.isPropertyAccessExpression(e.initializer.expression) && e.initializer.expression.expression.kind === o.SyntaxKind.ThisKeyword && o.isIdentifier(e.initializer.expression.name) && o.isIdentifier(e.initializer.name);
2763
- if (("initializer" in e && e.initializer !== void 0 && (!S.default || !S.description) || C) && !p) {
2764
- const L = e.initializer, A = T?.getSymbolAtLocation(L), J = A !== void 0 && ((A.flags ?? 0) & o.SymbolFlags.Alias) !== 0 ? T?.getAliasedSymbol(A) : A;
2762
+ if (("initializer" in e && e.initializer !== void 0 && (!T.default || !T.description) || S) && !p) {
2763
+ const R = e.initializer, A = C?.getSymbolAtLocation(R), W = A !== void 0 && ((A.flags ?? 0) & o.SymbolFlags.Alias) !== 0 ? C?.getAliasedSymbol(A) : A;
2765
2764
  let _, F;
2766
- const G = J?.getDeclarations();
2767
- if (G !== void 0)
2768
- for (let w = 0; w < G.length; ++w) {
2769
- const K = G[w];
2770
- _ ??= o.isGetAccessor(K) ? K : void 0, F ??= o.isSetAccessor(K) ? K : void 0, "initializer" in K && (S.default = Be(
2771
- K.initializer,
2772
- S.default,
2773
- K.getSourceFile()
2765
+ const N = W?.getDeclarations();
2766
+ if (N !== void 0)
2767
+ for (let w = 0; w < N.length; ++w) {
2768
+ const H = N[w];
2769
+ _ ??= o.isGetAccessor(H) ? H : void 0, F ??= o.isSetAccessor(H) ? H : void 0, "initializer" in H && (T.default = Be(
2770
+ H.initializer,
2771
+ T.default,
2772
+ H.getSourceFile()
2774
2773
  ));
2775
2774
  }
2776
- C && _?.type !== void 0 && F !== void 0 && _.type.getText() !== F.parameters[0]?.type?.getText() && (S.getterType = {
2775
+ S && _?.type !== void 0 && F !== void 0 && _.type.getText() !== F.parameters[0]?.type?.getText() && (T.getterType = {
2777
2776
  text: z(_.type, i).text,
2778
2777
  references: void 0,
2779
2778
  values: void 0,
@@ -2781,31 +2780,31 @@ function vi(e, t, n, i) {
2781
2780
  });
2782
2781
  }
2783
2782
  }
2784
- if (k !== void 0 && I !== void 0 && !p && // Quick perf check: type is definitely the same if raw type string matches.
2783
+ if (D !== void 0 && P !== void 0 && !p && // Quick perf check: type is definitely the same if raw type string matches.
2785
2784
  // More reliable check follows in processing/index.ts, where printed normalized
2786
2785
  // type string is compared.
2787
- k.getText(i.file) !== I.getText(i.file) ? S.getterType = z(k, i) : S.readonly === !0 && S.name === "type" && D.kind === o.SyntaxKind.LiteralType && D.literal.kind === o.SyntaxKind.StringLiteral && (i.moduleContext.typeName = D.literal.text), (d.hasAutoCasting === !0 || d.isConstructorOnly === !0) && (S.readonly === !0 && d.isConstructorOnly !== !0 ? d.hasAutoCasting = void 0 : S.getterType ??= {
2788
- ...S.type,
2789
- references: S.type.references === void 0 ? void 0 : [...S.type.references]
2790
- }), n && D.kind === o.SyntaxKind.LiteralType || (S.default = Be(
2786
+ D.getText(i.file) !== P.getText(i.file) ? T.getterType = z(D, i) : T.readonly === !0 && T.name === "type" && x.kind === o.SyntaxKind.LiteralType && x.literal.kind === o.SyntaxKind.StringLiteral && (i.moduleContext.typeName = x.literal.text), (d.hasAutoCasting === !0 || d.isConstructorOnly === !0) && (T.readonly === !0 && d.isConstructorOnly !== !0 ? d.hasAutoCasting = void 0 : T.getterType ??= {
2787
+ ...T.type,
2788
+ references: T.type.references === void 0 ? void 0 : [...T.type.references]
2789
+ }), n && x.kind === o.SyntaxKind.LiteralType || (T.default = Be(
2791
2790
  e.initializer,
2792
- S.default,
2791
+ T.default,
2793
2792
  i.file
2794
- )), B) {
2795
- const T = N === void 0 && S.default === "true";
2796
- S.type.values?.length === 1 && S.type.values[0].type === "boolean" && (S.default === void 0 ? S.default = "false" : T && S.deprecated === void 0 && (i.loggedBooleanWarning || i.config.context.logger.error(
2797
- `${Li}Boolean properties should default to "false". Found default value "true" in ${i.apiObject.name}.${S.name}. See https://webgis.esri.com/references/lumina/properties#boolean-properties`
2793
+ )), O) {
2794
+ const C = K === void 0 && T.default === "true";
2795
+ T.type.values?.length === 1 && T.type.values[0].type === "boolean" && (T.default === void 0 ? T.default = "false" : C && T.deprecated === void 0 && (i.loggedBooleanWarning || i.config.context.logger.error(
2796
+ `${Li}Boolean properties should default to "false". Found default value "true" in ${i.apiObject.name}.${T.name}. See https://webgis.esri.com/references/lumina/properties#boolean-properties`
2798
2797
  ), i.loggedBooleanWarning = !0));
2799
2798
  }
2800
2799
  return co(
2801
2800
  i,
2802
2801
  e,
2803
2802
  i.config.documentation.copyDocDefinitions?.properties,
2804
- S,
2803
+ T,
2805
2804
  i.apiObject
2806
- ), i.produceDts && E && (d.isAbstract = !0), c && e.questionToken !== void 0 && (S.type.text.endsWith(" | undefined") || (S.type.text = // Don't need to wrap non-accessors in |undefined as we replace |undefined
2805
+ ), i.produceDts && E && (d.isAbstract = !0), c && e.questionToken !== void 0 && (T.type.text.endsWith(" | undefined") || (T.type.text = // Don't need to wrap non-accessors in |undefined as we replace |undefined
2807
2806
  // with ? during printing
2808
- u && (D.kind === o.SyntaxKind.FunctionType || D.kind === o.SyntaxKind.ConstructorType || D.kind === o.SyntaxKind.ConditionalType || D.kind === o.SyntaxKind.InferType) ? `(${S.type.text}) | undefined` : `${S.type.text} | undefined`), S.getterType !== void 0 && !S.getterType.text.endsWith(" | undefined") && (S.getterType.text += " | undefined")), S;
2807
+ u && (x.kind === o.SyntaxKind.FunctionType || x.kind === o.SyntaxKind.ConstructorType || x.kind === o.SyntaxKind.ConditionalType || x.kind === o.SyntaxKind.InferType) ? `(${T.type.text}) | undefined` : `${T.type.text} | undefined`), T.getterType !== void 0 && !T.getterType.text.endsWith(" | undefined") && (T.getterType.text += " | undefined")), T;
2809
2808
  }
2810
2809
  function jt(e, t) {
2811
2810
  if (!t.config.strict)
@@ -2875,6 +2874,7 @@ function Ye(e, t) {
2875
2874
  supertypes: void 0,
2876
2875
  mixins: void 0,
2877
2876
  encapsulation: void 0,
2877
+ formAssociated: void 0,
2878
2878
  members: [],
2879
2879
  attributes: void 0,
2880
2880
  events: void 0,
@@ -2899,8 +2899,8 @@ function Ye(e, t) {
2899
2899
  node: e
2900
2900
  }
2901
2901
  ) : Ao(l, n, m, e, t), a !== void 0 && so(p, t), d.members.length === 0 && (a === void 0 && (d.members = void 0), s && (t.moduleContext.constructorPropertiesInterface = f));
2902
- const g = t.exportDefaultName === i, E = et(e), y = g || E === 2;
2903
- return (y || a !== void 0) && Ct(d, y, t), n ? (a === void 0 ? yo(
2902
+ const g = t.exportDefaultName === i, E = et(e), v = g || E === 2;
2903
+ return (v || a !== void 0) && Ct(d, v, t), n ? (a === void 0 ? yo(
2904
2904
  t,
2905
2905
  e,
2906
2906
  t.config.documentation.copyDocDefinitions.classes,
@@ -2921,7 +2921,7 @@ function Ye(e, t) {
2921
2921
  t.config.documentation.copyDocDefinitions.interfaces,
2922
2922
  f,
2923
2923
  t.apiModule
2924
- ), t.produceDts && (c.isDefaultExported = y || void 0, n && (!r && (!g && E === 0) && t.config.strict && t.emitError("Expected @public class to be exported using named or default export.", {
2924
+ ), t.produceDts && (c.isDefaultExported = v || void 0, n && (!r && (!g && E === 0) && t.config.strict && t.emitError("Expected @public class to be exported using named or default export.", {
2925
2925
  file: t.file,
2926
2926
  node: e
2927
2927
  }), li(e.modifiers, o.SyntaxKind.AbstractKeyword) ? c.hasExplicitAbstract = !0 : !u && (t.config.strict || a !== void 0) && (c.hasExplicitAbstract = !1))), t.objectLikeTypeParameters = void 0, d;
@@ -2960,13 +2960,17 @@ function Ao(e, t, n, i, a) {
2960
2960
  break;
2961
2961
  } else o.isExpressionWithTypeArguments(c) && (r = c.typeArguments, c = c.expression);
2962
2962
  }
2963
- const m = Ee(c, r, a);
2963
+ const m = Ee(
2964
+ c,
2965
+ a.isInLuminaMinimalExtraction ? void 0 : r,
2966
+ a
2967
+ );
2964
2968
  if (m.name === "LitElement") {
2965
2969
  m.name = "PublicLitElement", m.module = "PublicLitElement", m.package = "@arcgis/lumina";
2966
2970
  const p = a.moduleContext.importsMap.LitElement;
2967
2971
  p === void 0 ? a.emitError("Expected LitElement import to be defined", { file: a.file, node: i }) : p.actualName = "PublicLitElement";
2968
2972
  }
2969
- const d = te(n);
2973
+ const d = ie(n);
2970
2974
  d.superClassText = m.printableText, m.printableText = void 0, n.superclass = m;
2971
2975
  break;
2972
2976
  } else {
@@ -2976,7 +2980,7 @@ function Ao(e, t, n, i, a) {
2976
2980
  c = r.expression, m = r.typeArguments;
2977
2981
  else if (o.isTypeReferenceNode(r) && (c = r.typeName, m = r.typeArguments, c.escapedText === "Record" && m?.length === 2 && m[0].kind === o.SyntaxKind.NeverKeyword && m[1].kind === o.SyntaxKind.NeverKeyword))
2978
2982
  continue;
2979
- const d = Ee(c, m, a), p = te(n);
2983
+ const d = Ee(c, m, a), p = ie(n);
2980
2984
  p.superTypesText ??= [], p.superTypesText.push(d.printableText), d.printableText = void 0, n.supertypes ??= [], n.supertypes.push(d);
2981
2985
  }
2982
2986
  }
@@ -2996,10 +3000,10 @@ function Si(e, t, n, i) {
2996
3000
  let u = j(r, !0, i) ?? (i.pairedSetter === void 0 ? void 0 : j(i.pairedSetter, !0, i));
2997
3001
  if (u === void 0 && !i.config.strict && (a ? m !== void 0 && Jt(r, i.pairedSetter, !0) : !li(r.modifiers, o.SyntaxKind.PrivateKeyword))) {
2998
3002
  const E = j(r, !1, i) ?? (i.pairedSetter === void 0 ? void 0 : j(i.pairedSetter, !1, i)) ?? Ue;
2999
- E.docsTags.includes(W.private) ? a && i.config.context.includeLuminaPrivateComponents ? u = Ce : u = void 0 : u = E;
3003
+ E.docsTags.includes(V.private) ? a && i.config.context.includeLuminaPrivateComponents ? u = Ce : u = void 0 : u = E;
3000
3004
  } else u === void 0 && a && i.config.context.includeLuminaPrivateComponents && Jt(r, i.pairedSetter, !1) && (u = Ce);
3001
3005
  if (u === void 0) {
3002
- a && o.isPropertyDeclaration(r) && o.isIdentifier(r.name) && r.name.escapedText === "shadowRootOptions" && r.initializer !== void 0 && o.isIdentifier(r.initializer) && r.initializer.escapedText === "noShadowRoot" && (i.apiObject.encapsulation = "none");
3006
+ a && o.isPropertyDeclaration(r) && o.isIdentifier(r.name) && (r.name.escapedText === "shadowRootOptions" && r.initializer !== void 0 && o.isIdentifier(r.initializer) && r.initializer.escapedText === "noShadowRoot" && (i.apiObject.encapsulation = "none"), r.name.escapedText === "formAssociated" && r.initializer !== void 0 && Z(r.initializer, i) && (i.apiObject.formAssociated = !0));
3003
3007
  continue;
3004
3008
  }
3005
3009
  i.jsDoc = u;
@@ -3008,7 +3012,7 @@ function Si(e, t, n, i) {
3008
3012
  0,
3009
3013
  rt.members.length,
3010
3014
  r
3011
- ), Ti(e, rt, i), te(e).emitAsTypeAlias = !0) : i.emitError(`@public used on unsupported member kind: ${o.SyntaxKind[r.kind]}`, {
3015
+ ), Ti(e, rt, i), ie(e).emitAsTypeAlias = !0) : i.emitError(`@public used on unsupported member kind: ${o.SyntaxKind[r.kind]}`, {
3012
3016
  file: i.file,
3013
3017
  node: r
3014
3018
  }), g !== void 0 && s.push(g);
@@ -3134,6 +3138,7 @@ function Fo(e, t) {
3134
3138
  supertypes: void 0,
3135
3139
  mixins: void 0,
3136
3140
  encapsulation: void 0,
3141
+ formAssociated: void 0,
3137
3142
  members: [],
3138
3143
  attributes: void 0,
3139
3144
  events: void 0,
@@ -3233,7 +3238,7 @@ function No(e, t, n) {
3233
3238
  ])
3234
3239
  ],
3235
3240
  []
3236
- ), s = Ye(a, n), l = s, r = te(l);
3241
+ ), s = Ye(a, n), l = s, r = ie(l);
3237
3242
  return l.kind = "interface", l.supertypes = s.mixins, s.mixins = void 0, s.superclass !== void 0 && (s.superclass.printableText = r.superClassText, l.supertypes ??= [], l.supertypes.unshift(s.superclass), r.superClassText = void 0, s.superclass = void 0), n.moduleHasClass = i, r.isMixinBaseClass = !0, l;
3238
3243
  }
3239
3244
  function Oo(e, t) {
@@ -3266,7 +3271,7 @@ function Oo(e, t) {
3266
3271
  { file: t.file, node: i },
3267
3272
  "Public variable must have a type annotation or a default value",
3268
3273
  t
3269
- ) : c = ht(u, m ? O.shallow : O.false, t.file, t);
3274
+ ) : c = ht(u, m ? G.shallow : G.false, t.file, t);
3270
3275
  } else if (c = Et(c), o.isFunctionTypeNode(c))
3271
3276
  return Ht(c, s, e, t);
3272
3277
  const d = Ni(), p = {
@@ -3319,7 +3324,7 @@ function Vo(e, t) {
3319
3324
  if (i.isEmptyModule)
3320
3325
  return;
3321
3326
  }
3322
- const a = n.slice(t.config.context.basePath.length), s = Z(a), l = Ve(s, t, !0), r = t.componentTagName === void 0 ? l : `${l}/customElement`;
3327
+ const a = n.slice(t.config.context.basePath.length), s = ee(a), l = Ve(s, t, !0), r = t.componentTagName === void 0 ? l : `${l}/customElement`;
3323
3328
  t.mixinName = void 0, t.moduleHasClass = !1, t.apiClassLikeName = void 0, t.isInLuminaMinimalExtraction = t.config.context.isLuminaMinimalExtraction;
3324
3329
  const c = /* @__PURE__ */ Object.create(null), m = t.localDeclarations;
3325
3330
  m.clear();
@@ -3332,114 +3337,118 @@ function Vo(e, t) {
3332
3337
  named: /* @__PURE__ */ Object.create(null)
3333
3338
  }, u = ei(e, r, c, f);
3334
3339
  t.moduleContext = u;
3335
- const g = t.implicitPublicModules?.[l], E = t.isJsApi && l.startsWith("applications/");
3340
+ const g = t.implicitPublicModules?.[l];
3341
+ let E = !1;
3342
+ const v = t.isJsApi && l.startsWith("applications/");
3336
3343
  t.statementJsDocs.length = 0;
3337
- for (let b = 0; b < e.statements.length; ++b) {
3338
- const v = e.statements[b], x = v.kind === o.SyntaxKind.ClassDeclaration || v.kind === o.SyntaxKind.FunctionDeclaration || v.kind === o.SyntaxKind.InterfaceDeclaration || v.kind === o.SyntaxKind.TypeAliasDeclaration || v.kind === o.SyntaxKind.VariableStatement;
3339
- let R;
3344
+ for (let I = 0; I < e.statements.length; ++I) {
3345
+ const y = e.statements[I], k = y.kind === o.SyntaxKind.ClassDeclaration || y.kind === o.SyntaxKind.FunctionDeclaration || y.kind === o.SyntaxKind.InterfaceDeclaration || y.kind === o.SyntaxKind.TypeAliasDeclaration || y.kind === o.SyntaxKind.VariableStatement;
3346
+ let P;
3340
3347
  if (
3341
3348
  // Only look at web components in Lumina's dev server
3342
3349
  t.isInLuminaMinimalExtraction
3343
3350
  )
3344
- R = v.kind === o.SyntaxKind.ClassDeclaration && t.componentTagName !== void 0 && v.heritageClauses !== void 0 && v.modifiers !== void 0 ? Ue : void 0;
3345
- else if (x)
3346
- if (R = j(v, !0, t), R === void 0 && !t.config.strict) {
3347
- const I = j(v, !1, t) ?? { description: void 0, docsTags: [] }, k = v.kind === o.SyntaxKind.ClassDeclaration && t.componentTagName !== void 0 && v.heritageClauses !== void 0 && v.modifiers !== void 0;
3348
- I.docsTags.includes(W.private) ? k && t.config.context.includeLuminaPrivateComponents ? (R = Ce, t.isInLuminaMinimalExtraction = !0) : R = void 0 : (k || g !== void 0 && Fn(v, g)) && (R = I);
3349
- } else R === void 0 && t.componentTagName !== void 0 && t.config.context.includeLuminaPrivateComponents && v.kind === o.SyntaxKind.ClassDeclaration && (R = Ce, t.isInLuminaMinimalExtraction = !0);
3350
- if (t.statementJsDocs[b] = R, x || b === 0 && (p = j(e, !0, t)), R !== void 0)
3351
- E && R.docsTags.push(W.internal), m.add(
3352
- (v.name ?? v.declarationList?.declarations[0].name).escapedText
3353
- ), v.kind === o.SyntaxKind.ClassDeclaration ? t.apiClassLikeName = v.name?.escapedText : v.kind === o.SyntaxKind.VariableStatement && v.declarationList.declarations[0].initializer?.kind === o.SyntaxKind.ArrowFunction && (t.apiClassLikeName = v.declarationList.declarations[0].name.escapedText);
3354
- else if (o.isImportDeclaration(v)) {
3355
- const I = v.importClause;
3356
- if (I === void 0)
3351
+ P = y.kind === o.SyntaxKind.ClassDeclaration && t.componentTagName !== void 0 && y.heritageClauses !== void 0 && y.modifiers !== void 0 ? Ue : void 0;
3352
+ else if (k) {
3353
+ if (P = j(y, !0, t), P === void 0 && !t.config.strict) {
3354
+ const D = j(y, !1, t) ?? { description: void 0, docsTags: [] }, x = y.kind === o.SyntaxKind.ClassDeclaration && t.componentTagName !== void 0 && y.heritageClauses !== void 0 && y.modifiers !== void 0;
3355
+ D.docsTags.includes(V.private) ? x && t.config.context.includeLuminaPrivateComponents ? (P = Ce, t.isInLuminaMinimalExtraction = !0) : P = void 0 : (x || g !== void 0 && Fn(y, g)) && (P = D);
3356
+ } else P === void 0 && t.componentTagName !== void 0 && t.config.context.includeLuminaPrivateComponents && y.kind === o.SyntaxKind.ClassDeclaration && (P = Ce, t.isInLuminaMinimalExtraction = !0);
3357
+ P !== void 0 && !t.config.strict && y.kind === o.SyntaxKind.ClassDeclaration && t.componentTagName !== void 0 && y.heritageClauses !== void 0 && y.modifiers !== void 0 && P.docsTags.includes(V.internal) && (E = !0);
3358
+ }
3359
+ if (t.statementJsDocs[I] = P, k || I === 0 && (p = j(e, !0, t)), P !== void 0)
3360
+ v && P.docsTags.push(V.internal), m.add(
3361
+ (y.name ?? y.declarationList?.declarations[0].name).escapedText
3362
+ ), y.kind === o.SyntaxKind.ClassDeclaration ? t.apiClassLikeName = y.name?.escapedText : y.kind === o.SyntaxKind.VariableStatement && y.declarationList.declarations[0].initializer?.kind === o.SyntaxKind.ArrowFunction && (t.apiClassLikeName = y.declarationList.declarations[0].name.escapedText);
3363
+ else if (o.isImportDeclaration(y)) {
3364
+ const D = y.importClause;
3365
+ if (D === void 0)
3357
3366
  continue;
3358
- const k = v.moduleSpecifier.text, D = !k.startsWith("."), S = D ? k : Z(k), N = D ? void 0 : Ve(pt(s, S), t), B = N === void 0 ? void 0 : t.config.types.typeReplacements[N];
3359
- if (Pn(v, t), I.name !== void 0) {
3360
- const V = I.name.escapedText, T = B?.[V], C = T?.[1], L = T === void 0 ? !D && k.endsWith(".json") ? k : S : ye(r, T[0]), A = T?.[0] ?? N;
3361
- c[V] = {
3362
- type: T?.[2] ?? "default",
3363
- modulePath: A,
3364
- specifier: L,
3365
- replacementName: C,
3367
+ const x = y.moduleSpecifier.text, T = !x.startsWith("."), K = T ? x : ee(x), O = T ? void 0 : Ve(pt(s, K), t), J = O === void 0 ? void 0 : t.config.types.typeReplacements[O];
3368
+ if (Pn(y, t), D.name !== void 0) {
3369
+ const C = D.name.escapedText, S = J?.[C], R = S?.[1], A = S === void 0 ? !T && x.endsWith(".json") ? x : K : ye(r, S[0]), W = S?.[0] ?? O;
3370
+ c[C] = {
3371
+ type: S?.[2] ?? "default",
3372
+ modulePath: W,
3373
+ specifier: A,
3374
+ replacementName: R,
3366
3375
  actualName: void 0,
3367
3376
  wasUsed: !1
3368
3377
  };
3369
3378
  }
3370
- const $ = I.namedBindings;
3379
+ const $ = D.namedBindings;
3371
3380
  if ($ === void 0)
3372
3381
  continue;
3373
3382
  if ($.kind === o.SyntaxKind.NamespaceImport) {
3374
- const V = $.name.escapedText, T = B?.[V], C = T?.[1], L = T === void 0 ? S : ye(r, T[0]), A = T?.[0] ?? N;
3375
- c[V] = {
3383
+ const C = $.name.escapedText, S = J?.[C], R = S?.[1], A = S === void 0 ? K : ye(r, S[0]), W = S?.[0] ?? O;
3384
+ c[C] = {
3376
3385
  type: "*",
3377
- modulePath: A,
3378
- specifier: L,
3379
- replacementName: C,
3386
+ modulePath: W,
3387
+ specifier: A,
3388
+ replacementName: R,
3380
3389
  actualName: void 0,
3381
3390
  wasUsed: !1
3382
3391
  };
3383
3392
  } else
3384
- for (let V = 0; V < $.elements.length; ++V) {
3385
- const T = $.elements[V], C = T.propertyName === void 0 ? void 0 : T.propertyName.escapedText ?? T.propertyName.text, L = T.name.escapedText, A = B?.[C ?? L], J = A?.[1], _ = A === void 0 ? S : ye(r, A[0]), F = A?.[0] ?? N;
3386
- c[L] = {
3387
- type: A?.[2] ?? "named",
3388
- modulePath: F,
3389
- specifier: _,
3390
- replacementName: J,
3391
- actualName: A === void 0 ? C : void 0,
3393
+ for (let C = 0; C < $.elements.length; ++C) {
3394
+ const S = $.elements[C], R = S.propertyName === void 0 ? void 0 : S.propertyName.escapedText ?? S.propertyName.text, A = S.name.escapedText, W = J?.[R ?? A], _ = W?.[1], F = W === void 0 ? K : ye(r, W[0]), N = W?.[0] ?? O;
3395
+ c[A] = {
3396
+ type: W?.[2] ?? "named",
3397
+ modulePath: N,
3398
+ specifier: F,
3399
+ replacementName: _,
3400
+ actualName: W === void 0 ? R : void 0,
3392
3401
  wasUsed: !1
3393
3402
  };
3394
3403
  }
3395
- } else if (o.isExportAssignment(v)) {
3396
- if (o.isIdentifier(v.expression)) {
3397
- const I = v.expression.escapedText;
3398
- t.exportDefaultName = I, !m.has(I) && d?.has(I) === !0 && g?.pendingNames?.has("default") === !0 && d.set(I, Math.abs(d.get(I)));
3404
+ } else if (o.isExportAssignment(y)) {
3405
+ if (o.isIdentifier(y.expression)) {
3406
+ const D = y.expression.escapedText;
3407
+ t.exportDefaultName = D, !m.has(D) && d?.has(D) === !0 && g?.pendingNames?.has("default") === !0 && d.set(D, Math.abs(d.get(D)));
3399
3408
  }
3400
- } else if (o.isExportDeclaration(v) && v.moduleSpecifier !== void 0 && !t.isInLuminaMinimalExtraction) {
3401
- if (j(v, !0, t) !== void 0) {
3402
- const k = v.moduleSpecifier.text, D = !k.startsWith("."), S = D ? k : pt(s, Z(k)), N = D ? void 0 : Ve(S, t), B = D ? k : ye(r, N);
3409
+ } else if (o.isExportDeclaration(y) && y.moduleSpecifier !== void 0 && !t.isInLuminaMinimalExtraction) {
3410
+ if (j(y, !0, t) !== void 0) {
3411
+ const x = y.moduleSpecifier.text, T = !x.startsWith("."), K = T ? x : pt(s, ee(x)), O = T ? void 0 : Ve(K, t), J = T ? x : ye(r, O);
3403
3412
  u.reExports ??= [];
3404
3413
  const $ = [];
3405
- if (v.exportClause?.kind === o.SyntaxKind.NamedExports) {
3406
- const V = v.exportClause.elements;
3407
- for (let T = 0; T < V.length; ++T) {
3408
- const C = V[T], L = Re(C.name), A = C.propertyName === void 0 ? void 0 : Re(C.propertyName), J = A ?? L, _ = A === void 0 ? void 0 : L;
3414
+ if (y.exportClause?.kind === o.SyntaxKind.NamedExports) {
3415
+ const C = y.exportClause.elements;
3416
+ for (let S = 0; S < C.length; ++S) {
3417
+ const R = C[S], A = Re(R.name), W = R.propertyName === void 0 ? void 0 : Re(R.propertyName), _ = W ?? A, F = W === void 0 ? void 0 : A;
3409
3418
  $.push({
3410
- exportName: J,
3411
- aliasName: _,
3412
- isTypeOnly: v.isTypeOnly
3413
- }), !t.config.strict && N !== void 0 && ze(N, S, J, t);
3419
+ exportName: _,
3420
+ aliasName: F,
3421
+ isTypeOnly: y.isTypeOnly
3422
+ }), !t.config.strict && O !== void 0 && ze(O, K, _, t);
3414
3423
  }
3415
3424
  } else
3416
3425
  $.push({
3417
3426
  exportName: "*",
3418
- aliasName: v.exportClause === void 0 ? void 0 : Re(v.exportClause.name),
3427
+ aliasName: y.exportClause === void 0 ? void 0 : Re(y.exportClause.name),
3419
3428
  isTypeOnly: !1
3420
- }), !t.config.strict && N !== void 0 && ze(N, S, "*", t);
3429
+ }), !t.config.strict && O !== void 0 && ze(O, K, "*", t);
3421
3430
  u.reExports.push({
3422
- modulePath: N,
3423
- specifier: B,
3424
- isTypeOnly: v.isTypeOnly,
3431
+ modulePath: O,
3432
+ specifier: J,
3433
+ isTypeOnly: y.isTypeOnly,
3425
3434
  specifiers: $
3426
3435
  });
3427
3436
  }
3428
- } else o.isModuleDeclaration(v) ? j(v, !0, t) !== void 0 && (u.namespaces ??= [], u.namespaces.push(v.getFullText(e))) : d !== void 0 && x && d.set(
3429
- (v.name ?? v.declarationList?.declarations[0].name).escapedText,
3430
- -b
3437
+ } else o.isModuleDeclaration(y) ? j(y, !0, t) !== void 0 && (u.namespaces ??= [], u.namespaces.push(y.getFullText(e))) : d !== void 0 && k && d.set(
3438
+ (y.name ?? y.declarationList?.declarations[0].name).escapedText,
3439
+ -I
3431
3440
  );
3432
3441
  }
3433
- const y = t.config.types.typeReplacements[l];
3434
- if (y !== void 0) {
3435
- const b = Object.keys(y);
3436
- for (let v = 0; v < b.length; ++v) {
3437
- const x = b[v], R = y[x];
3438
- c[x] = {
3439
- type: R[2],
3440
- modulePath: R[0],
3441
- specifier: ye(r, R[0]),
3442
- replacementName: R[1],
3442
+ const b = t.config.types.typeReplacements[l];
3443
+ if (b !== void 0) {
3444
+ const I = Object.keys(b);
3445
+ for (let y = 0; y < I.length; ++y) {
3446
+ const k = I[y], P = b[k];
3447
+ c[k] = {
3448
+ type: P[2],
3449
+ modulePath: P[0],
3450
+ specifier: ye(r, P[0]),
3451
+ replacementName: P[1],
3443
3452
  actualName: void 0,
3444
3453
  wasUsed: !1
3445
3454
  };
@@ -3459,28 +3468,28 @@ function Vo(e, t) {
3459
3468
  exports: []
3460
3469
  };
3461
3470
  if (t.apiModule = h, Go(e, t), d !== void 0) {
3462
- let b = !1;
3471
+ let I = !1;
3463
3472
  do {
3464
- b = !1;
3465
- for (const [v, x] of d)
3466
- if (x > 0 || Object.is(x, 0)) {
3467
- d.delete(v), m.add(v), b = !0;
3468
- const R = e.statements[x], I = j(R, !1, t) ?? { description: void 0, docsTags: [] };
3469
- if (I.docsTags.includes(W.private))
3473
+ I = !1;
3474
+ for (const [y, k] of d)
3475
+ if (k > 0 || Object.is(k, 0)) {
3476
+ d.delete(y), m.add(y), I = !0;
3477
+ const P = e.statements[k], D = j(P, !1, t) ?? { description: void 0, docsTags: [] };
3478
+ if (D.docsTags.includes(V.private))
3470
3479
  t.emitError(
3471
- `Declaration "${v}" is marked @private but is used by public API in the same file. Either refactor our its reference or remove the @private tag.`,
3480
+ `Declaration "${y}" is marked @private but is used by public API in the same file. Either refactor our its reference or remove the @private tag.`,
3472
3481
  {
3473
3482
  file: e,
3474
- node: R
3483
+ node: P
3475
3484
  }
3476
3485
  );
3477
3486
  else {
3478
- t.statementJsDocs[x] = I;
3479
- const D = hi(R, x, t);
3480
- D !== void 0 && h.declarations.push(D);
3487
+ E && !D.docsTags.includes(V.internal) && D.docsTags.push(V.internal), t.statementJsDocs[k] = D;
3488
+ const T = hi(P, k, t);
3489
+ T !== void 0 && h.declarations.push(T);
3481
3490
  }
3482
3491
  }
3483
- } while (b);
3492
+ } while (I);
3484
3493
  }
3485
3494
  if (h.declarations.length === 0 && u.reExports === void 0 && u.namespaces === void 0) {
3486
3495
  i !== void 0 && (i.isEmptyModule = !0);
@@ -3497,11 +3506,11 @@ function Vo(e, t) {
3497
3506
  hasDirtyLinks: !1,
3498
3507
  wasRemoved: !1
3499
3508
  }) : i.module = h);
3500
- const M = t.componentTagName === void 0 ? h.exports[0]?.declaration.name : void 0;
3509
+ const L = t.componentTagName === void 0 ? h.exports[0]?.declaration.name : void 0;
3501
3510
  h.exports.length === 0 && (h.exports = void 0);
3502
- for (let b = 0; b < h.declarations.length; ++b) {
3503
- const v = h.declarations[b];
3504
- (v.kind === "class" || v.kind === "mixin") && (f.class = v), M === v.name && (f.default = v), f.named[v.name] = v;
3511
+ for (let I = 0; I < h.declarations.length; ++I) {
3512
+ const y = h.declarations[I];
3513
+ (y.kind === "class" || y.kind === "mixin") && (f.class = y), L === y.name && (f.default = y), f.named[y.name] = y;
3505
3514
  }
3506
3515
  return p !== void 0 && (t.moduleHasClass ? t.emitError(
3507
3516
  "A module that exports a class must have JSDoc attached to the class, rather than module-top JSDoc. See https://webgis.esri.com/webgis/core/core/documenting-api#module-documentation",
@@ -3511,7 +3520,7 @@ function Vo(e, t) {
3511
3520
  length: e.statements[0]?.getStart(e) ?? 1,
3512
3521
  node: void 0
3513
3522
  }
3514
- ) : (E && p.docsTags.push(W.internal), rn(h, p))), h;
3523
+ ) : (v && p.docsTags.push(V.internal), rn(h, p))), h;
3515
3524
  }
3516
3525
  async function Sa(e) {
3517
3526
  const t = [], n = e.basePath, i = e.config.context.excludedDirectories, a = `${e.basePath}components/`, s = [], l = !e.config.strict || e.config.context.includeLuminaPrivateComponents;
@@ -3530,15 +3539,15 @@ async function Sa(e) {
3530
3539
  const u = r(p);
3531
3540
  if (u && l || // Exclude files before paying .toString() cost
3532
3541
  f.includes(Ho) && (f.includes($o) || f.includes(Bo))) {
3533
- const E = f.toString("utf8"), y = Xt(p, E);
3534
- c(y, u);
3542
+ const E = f.toString("utf8"), v = Xt(p, E);
3543
+ c(v, u);
3535
3544
  }
3536
3545
  });
3537
3546
  else {
3538
3547
  const p = e.program.getSourceFiles();
3539
3548
  for (let f = 0; f < p.length; ++f) {
3540
3549
  const u = p[f], g = u.fileName;
3541
- if (!_o(g, e))
3550
+ if (!Wo(g, e))
3542
3551
  continue;
3543
3552
  if (g.includes(".stories.")) {
3544
3553
  Ot(u.text, g, e);
@@ -3572,34 +3581,34 @@ async function Sa(e) {
3572
3581
  if (u.extractedNames === void 0)
3573
3582
  continue;
3574
3583
  if (u.pendingNames !== void 0) {
3575
- const b = e.watchFiles?.get(e.config.context.basePath + u.sourcePath);
3576
- let x = !(b !== void 0 && b.module === void 0 && !b.isEmptyModule);
3577
- const R = E === void 0 ? void 0 : ae(E).index;
3578
- for (const I of u.pendingNames)
3579
- if (!u.extractedNames.has(I) && (R === void 0 || (I === "default" ? R.default === void 0 : R.named[I] === void 0))) {
3580
- x = !1;
3584
+ const L = e.watchFiles?.get(e.config.context.basePath + u.sourcePath);
3585
+ let y = !(L !== void 0 && L.module === void 0 && !L.isEmptyModule);
3586
+ const k = E === void 0 ? void 0 : ae(E).index;
3587
+ for (const P of u.pendingNames)
3588
+ if (!u.extractedNames.has(P) && (k === void 0 || (P === "default" ? k.default === void 0 : k.named[P] === void 0))) {
3589
+ y = !1;
3581
3590
  break;
3582
3591
  }
3583
- if (x)
3592
+ if (y)
3584
3593
  continue;
3585
3594
  }
3586
3595
  if (E !== void 0) {
3587
3596
  t.splice(t.indexOf(E), 1);
3588
- const b = e.watchFiles?.get(E.sourcePath);
3589
- b !== void 0 && (b.module = void 0);
3597
+ const L = e.watchFiles?.get(E.sourcePath);
3598
+ L !== void 0 && (L.module = void 0);
3590
3599
  }
3591
3600
  p = !0, u.extractedNames = u.pendingNames === void 0 ? void 0 : new Set(u.pendingNames);
3592
- let y = e.basePath + u.sourcePath, h = !1, M = e.program?.getSourceFile(y) ?? e.program?.getSourceFile(`${y}.ts`) ?? e.program?.getSourceFile(`${y}.tsx`) ?? e.program?.getSourceFile(`${y}.d.ts`);
3593
- if (M === void 0 && (M = e.program?.getSourceFile(`${y}/index.ts`) ?? e.program?.getSourceFile(`${y}/index.tsx`) ?? e.program?.getSourceFile(`${y}/index.d.ts`), M !== void 0 && (h = !0)), e.program === void 0 && (Z(y) === y && (y = ue(`${y}.ts`) ? `${y}.ts` : ue(`${y}.tsx`) ? `${y}.tsx` : ue(`${y}.d.ts`) ? `${y}.d.ts` : void 0, y === void 0 && (y = ue(`${y}/index.ts`) ? `${y}/index.ts` : ue(`${y}/index.tsx`) ? `${y}/index.tsx` : ue(`${y}/index.d.ts`) ? `${y}/index.d.ts` : void 0, y !== void 0 && (h = !0))), y !== void 0 && (M = Xt(y, await Dt(y, "utf8")))), M !== void 0) {
3594
- const b = M.fileName.slice(e.basePath.length);
3595
- b !== u.sourcePath && (u.sourcePath = b), h && (u.actualModulePath = `${g}/index`), d(M);
3601
+ let v = e.basePath + u.sourcePath, b = !1, h = e.program?.getSourceFile(v) ?? e.program?.getSourceFile(`${v}.ts`) ?? e.program?.getSourceFile(`${v}.tsx`) ?? e.program?.getSourceFile(`${v}.d.ts`);
3602
+ if (h === void 0 && (h = e.program?.getSourceFile(`${v}/index.ts`) ?? e.program?.getSourceFile(`${v}/index.tsx`) ?? e.program?.getSourceFile(`${v}/index.d.ts`), h !== void 0 && (b = !0)), e.program === void 0 && (ee(v) === v && (v = ue(`${v}.ts`) ? `${v}.ts` : ue(`${v}.tsx`) ? `${v}.tsx` : ue(`${v}.d.ts`) ? `${v}.d.ts` : void 0, v === void 0 && (v = ue(`${v}/index.ts`) ? `${v}/index.ts` : ue(`${v}/index.tsx`) ? `${v}/index.tsx` : ue(`${v}/index.d.ts`) ? `${v}/index.d.ts` : void 0, v !== void 0 && (b = !0))), v !== void 0 && (h = Xt(v, await Dt(v, "utf8")))), h !== void 0) {
3603
+ const L = h.fileName.slice(e.basePath.length);
3604
+ L !== u.sourcePath && (u.sourcePath = L), b && (u.actualModulePath = `${g}/index`), d(h);
3596
3605
  }
3597
3606
  }
3598
3607
  } while (p);
3599
3608
  }
3600
3609
  return t;
3601
3610
  }
3602
- const _o = (e, t) => Wo(e) && Ko(e, t), Wo = (e) => (e.endsWith(".ts") || e.endsWith(".tsx")) && !Ei(e), Ei = (e) => e.includes("__test") || e.includes(".e2e.") || e.includes(".spec.") || e.includes(".test."), Ko = (e, t) => e.startsWith(t.basePath) && !t.config.context.excludedDirectories.has(
3611
+ const Wo = (e, t) => _o(e) && Ko(e, t), _o = (e) => (e.endsWith(".ts") || e.endsWith(".tsx")) && !Ei(e), Ei = (e) => e.includes("__test") || e.includes(".e2e.") || e.includes(".spec.") || e.includes(".test."), Ko = (e, t) => e.startsWith(t.basePath) && !t.config.context.excludedDirectories.has(
3603
3612
  Sn(e.slice(t.basePath.length))
3604
3613
  ) && !e.includes("node_modules"), qt = 32, Ho = 64, Ci = "@public", $o = Buffer.from(Ci), bi = "@internal", Bo = Buffer.from(bi);
3605
3614
  async function Ta(e) {
@@ -3659,12 +3668,12 @@ export {
3659
3668
  ye as a,
3660
3669
  fa as b,
3661
3670
  Ta as c,
3662
- va as d,
3671
+ ya as d,
3663
3672
  Sa as e,
3664
- ya as f,
3665
- Wo as g,
3673
+ va as f,
3674
+ _o as g,
3666
3675
  Ko as h,
3667
- _o as i,
3676
+ Wo as i,
3668
3677
  Ei as j,
3669
3678
  Xt as k,
3670
3679
  pa as l,