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

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,3677 +0,0 @@
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";
3
- import { getDefaultBasePath as Yt, buildViewUrl as Ii, getViewUrl as Ge } from "./extractor/processing/links.js";
4
- import o from "typescript";
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";
9
- import { readFile as Dt, opendir as Lt, rm as $i } from "node:fs/promises";
10
- import { pathIsComponentEntrypoint as Bi, findDeclaredComponent as Ui } from "./extractor/webComponent/findComponents.js";
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";
13
- import { readFileSync as ji, existsSync as ue } from "node:fs";
14
- import "util";
15
- import { uncapitalize as Ji, camelToKebab as qi, kebabToPascal as Xi } from "@arcgis/toolkit/string";
16
- import { identity as ge } from "@arcgis/toolkit/function";
17
- import { pathToFileURL as Qi } from "node:url";
18
- import Yi from "path";
19
- import { getWidenedLiteralType as Zi, unsafeUndocumentedTs as en, unsafeGetUndocumentedPrinter as tn } from "./utils/internalTypeScriptApis.js";
20
- const It = "developers.arcgis.com", At = "next.gha.afd.arcgis.com";
21
- function da(e) {
22
- if (e.isResolvedConfig === !0)
23
- return e;
24
- const t = e.context, n = e.types, i = e.documentation, s = `${t?.cwd === void 0 ? Pi() : $e.resolve(t?.cwd)}/`, l = t?.packageJson ?? lt(s);
25
- let r = t?.basePath ?? "src/";
26
- r.endsWith("/") || (r += "/");
27
- const c = "customElements" in l && "@arcgis/lumina" in (l.dependencies ?? {}), m = n?.typeCheckedExtraction ?? c, d = n?.fullTypeCheck ?? !1, p = n?.typeScriptConfig ?? (m || d ? Ri(s, n?.typeScriptConfigPath, !0) : {
28
- configPath: "",
29
- config: {
30
- options: {},
31
- fileNames: [],
32
- errors: []
33
- }
34
- });
35
- if (n?.typeScriptConfig?.config.fileNames.length === 0)
36
- throw Error(
37
- `${Di.name}: Provided types.typeScriptConfig has no included files. If you used loadTypeScriptConfig, make sure to set resolveIncludedFiles to true.`
38
- );
39
- const f = {
40
- config: {
41
- ...p.config,
42
- options: {
43
- ...p.config.options,
44
- ...n?.compilerOptions
45
- }
46
- },
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 !== "");
49
- return {
50
- isResolvedConfig: !0,
51
- context: {
52
- dtsEmitPath: u,
53
- emptyDtsEmitPath: y,
54
- apiJsonEmitPath: t?.apiJsonEmitPath ?? "",
55
- environment: g,
56
- cwd: s,
57
- basePath: r,
58
- packageJson: l,
59
- logger: t?.logger ?? {
60
- // We namespace manually
61
- // eslint-disable-next-line webgis/consistent-logging
62
- info: console.log,
63
- // eslint-disable-next-line webgis/consistent-logging
64
- error: console.error
65
- },
66
- excludedDirectories: t?.excludedDirectories ?? /* @__PURE__ */ new Set(),
67
- isLuminaMinimalExtraction: t?.isLuminaMinimalExtraction ?? !1,
68
- includeLuminaPrivateComponents: t?.includeLuminaPrivateComponents ?? !1,
69
- supportApplyMixinsSyntax: t?.supportApplyMixinsSyntax ?? !1
70
- },
71
- types: {
72
- typeCheckedExtraction: m,
73
- fullTypeCheck: d,
74
- afterDiagnostic: n?.afterDiagnostic ?? ge,
75
- typeScriptInstanceCreated: n?.typeScriptInstanceCreated ?? ge,
76
- typeScriptConfigPath: p.configPath,
77
- typeScriptConfig: f,
78
- compilerOptions: f.config.options,
79
- declarationTextTransformers: n?.declarationTextTransformers ?? [],
80
- typeReplacements: n?.typeReplacements ?? {},
81
- forceProduceDts: n?.forceProduceDts ?? !1
82
- },
83
- documentation: {
84
- copyDocDefinitions: i?.copyDocDefinitions ?? {},
85
- noInheritMembers: i?.noInheritMembers ?? {},
86
- publicStoryUrlPrefix: i?.publicStoryUrlPrefix ?? !1,
87
- getComponentDocsUrl: i?.getComponentDocsUrl ?? !1,
88
- getComponentDemoUrl: i?.getComponentDemoUrl ?? !1,
89
- host: i?.host ?? (E ? At : It),
90
- alternativeHost: i?.alternativeHost ?? (E ? It : At),
91
- basePath: i?.basePath ?? Yt(l.name.split("/").at(-1))
92
- },
93
- verify: {
94
- typeCheckTypes: e.verify?.typeCheckTypes ?? !1,
95
- filterTypeCheckDiagnostic: e.verify?.filterTypeCheckDiagnostic ?? (() => !0),
96
- detectBrokenLinks: e.verify?.detectBrokenLinks ?? !0
97
- },
98
- watch: {
99
- onUpdate: e.watch?.onUpdate ?? ge,
100
- // Many reads can happen in a short time (on folder moves, or if prettier re-runs)
101
- // Shorter than TypeScript's default of 250ms as we are blocked until this
102
- // timeout is complete. Short timeout for unchecked extraction as it is fast,
103
- // so doesn't need long debounce.
104
- debounceTime: e.watch?.debounceTime ?? (m || d ? 50 : 20),
105
- clearScreen: e.watch?.clearScreen ?? !1,
106
- skipWritingUnchanged: y ? !1 : e.watch?.skipWritingUnchanged ?? !0
107
- },
108
- strict: e.strict ?? !c,
109
- afterApiJsonCreate: e.afterApiJsonCreate ?? ge
110
- };
111
- }
112
- async function pa(e = process.cwd(), t) {
113
- const n = t !== void 0, i = $e.resolve(e, t ?? "api-extractor.config.ts"), a = await Qt(i);
114
- if (n && !a)
115
- throw Error(`The provided config file at ${i} does not exist.`);
116
- if (!a)
117
- return {};
118
- const s = (await import(Qi(i).href)).config;
119
- return {
120
- ...s,
121
- context: {
122
- ...s.context,
123
- cwd: s.context?.cwd ?? $e.dirname(i)
124
- }
125
- };
126
- }
127
- function ma(e, t) {
128
- const n = e.context, i = t.context, a = e.types, s = t.types, l = e.documentation, r = t.documentation, c = e.verify, m = t.verify, d = e.watch, p = t.watch;
129
- return {
130
- isResolvedConfig: e.isResolvedConfig || t.isResolvedConfig || void 0,
131
- context: {
132
- dtsEmitPath: i?.dtsEmitPath ?? n?.dtsEmitPath,
133
- emptyDtsEmitPath: i?.emptyDtsEmitPath ?? n?.emptyDtsEmitPath,
134
- apiJsonEmitPath: i?.apiJsonEmitPath ?? n?.apiJsonEmitPath,
135
- environment: i?.environment ?? n?.environment,
136
- cwd: i?.cwd ?? n?.cwd,
137
- basePath: i?.basePath ?? n?.basePath,
138
- packageJson: i?.packageJson ?? n?.packageJson,
139
- logger: i?.logger ?? n?.logger,
140
- excludedDirectories: i?.excludedDirectories ?? n?.excludedDirectories,
141
- isLuminaMinimalExtraction: i?.isLuminaMinimalExtraction ?? n?.isLuminaMinimalExtraction,
142
- includeLuminaPrivateComponents: i?.includeLuminaPrivateComponents ?? n?.includeLuminaPrivateComponents,
143
- supportApplyMixinsSyntax: i?.supportApplyMixinsSyntax ?? n?.supportApplyMixinsSyntax ?? !1
144
- },
145
- types: {
146
- typeCheckedExtraction: s?.typeCheckedExtraction ?? a?.typeCheckedExtraction,
147
- fullTypeCheck: s?.fullTypeCheck ?? a?.fullTypeCheck,
148
- afterDiagnostic: we(s?.afterDiagnostic, a?.afterDiagnostic),
149
- typeScriptInstanceCreated: we(
150
- t?.types?.typeScriptInstanceCreated,
151
- e?.types?.typeScriptInstanceCreated
152
- ),
153
- typeScriptConfigPath: s?.typeScriptConfigPath ?? a?.typeScriptConfigPath,
154
- typeScriptConfig: s?.typeScriptConfig ?? a?.typeScriptConfig,
155
- compilerOptions: s?.compilerOptions ?? a?.compilerOptions,
156
- declarationTextTransformers: s?.declarationTextTransformers !== void 0 && a?.declarationTextTransformers !== void 0 ? [...a.declarationTextTransformers, ...s.declarationTextTransformers] : s?.declarationTextTransformers ?? a?.declarationTextTransformers,
157
- typeReplacements: s?.typeReplacements ?? a?.typeReplacements,
158
- forceProduceDts: s?.forceProduceDts ?? a?.forceProduceDts
159
- },
160
- documentation: {
161
- copyDocDefinitions: r?.copyDocDefinitions ?? l?.copyDocDefinitions,
162
- noInheritMembers: r?.noInheritMembers ?? l?.noInheritMembers,
163
- publicStoryUrlPrefix: r?.publicStoryUrlPrefix ?? l?.publicStoryUrlPrefix,
164
- getComponentDocsUrl: r?.getComponentDocsUrl ?? l?.getComponentDocsUrl,
165
- getComponentDemoUrl: r?.getComponentDemoUrl ?? l?.getComponentDemoUrl,
166
- host: r?.host ?? l?.host,
167
- alternativeHost: r?.alternativeHost ?? l?.alternativeHost,
168
- basePath: r?.basePath ?? l?.basePath
169
- },
170
- verify: {
171
- typeCheckTypes: m?.typeCheckTypes ?? c?.typeCheckTypes,
172
- filterTypeCheckDiagnostic: m?.filterTypeCheckDiagnostic ?? c?.filterTypeCheckDiagnostic,
173
- detectBrokenLinks: m?.detectBrokenLinks ?? c?.detectBrokenLinks
174
- },
175
- watch: {
176
- onUpdate: we(p?.onUpdate, d?.onUpdate),
177
- debounceTime: p?.debounceTime ?? d?.debounceTime,
178
- clearScreen: p?.clearScreen ?? d?.clearScreen,
179
- skipWritingUnchanged: p?.skipWritingUnchanged ?? d?.skipWritingUnchanged
180
- },
181
- strict: t.strict ?? e.strict,
182
- afterApiJsonCreate: we(t.afterApiJsonCreate, e.afterApiJsonCreate)
183
- };
184
- }
185
- function we(e, t) {
186
- const n = t === ge ? void 0 : t, i = e === ge ? void 0 : e;
187
- return n !== void 0 && i !== void 0 ? ((...a) => (n(...a), i(...a))) : i ?? n;
188
- }
189
- function Te(e) {
190
- const t = [], n = e, i = e;
191
- if (e.deprecated && t.push({
192
- name: "deprecated",
193
- text: e.deprecated === !0 ? void 0 : e.deprecated
194
- }), n.default && t.push({
195
- name: "default",
196
- text: n.default
197
- }), i.return !== void 0) {
198
- const l = i.parameters;
199
- if (l !== void 0)
200
- for (let r = 0; r < l.length; ++r) {
201
- const c = l[r];
202
- t.push({
203
- name: "param",
204
- // Add hyphen as required by TSDoc
205
- text: `${c.name}${c.description ? ` - ${c.description}` : ""}`
206
- });
207
- }
208
- i.return.description && t.push({
209
- name: "returns",
210
- text: i.return.description
211
- });
212
- }
213
- const a = e;
214
- if (a.customElement === !0) {
215
- if (a.cssProperties !== void 0)
216
- for (const l of a.cssProperties)
217
- t.push({
218
- name: "cssproperty",
219
- text: Ne(l)
220
- });
221
- if (a.cssParts !== void 0)
222
- for (const l of a.cssParts)
223
- t.push({
224
- name: "csspart",
225
- text: Ne(l)
226
- });
227
- if (a.cssStates !== void 0)
228
- for (const l of a.cssStates)
229
- t.push({
230
- name: "cssstate",
231
- text: Ne(l)
232
- });
233
- if (a.slots !== void 0)
234
- for (const l of a.slots)
235
- t.push({
236
- name: "slot",
237
- text: Ne(l)
238
- });
239
- }
240
- e.docsTags !== void 0 && t.push(...e.docsTags);
241
- const s = e.description ?? "";
242
- if (!(t.length === 0 && s.length === 0))
243
- return {
244
- description: s,
245
- docsTags: t
246
- };
247
- }
248
- function Ne(e) {
249
- const t = e, n = e.name + (t.default !== void 0 ? `=${t.default}` : ""), i = n.length > 0 ? `[${n}]` : "", a = e.description ?? "", s = a.length > 0 ? ` - ${a}` : "";
250
- return `${i}${s}`;
251
- }
252
- function nn(e) {
253
- const t = e.description ?? "", n = t.length === 0, i = e.docsTags, a = (
254
- // Has 2+ tags, or multi-line description, or single tag and single line description
255
- i.length + (n ? 0 : t.includes(`
256
- `) ? 2 : 1) > 1 || // Has a single tag, but that tag is multi-line
257
- i[0]?.text?.includes(`
258
- `) === !0
259
- );
260
- let s = "*";
261
- n ? a || (s += " ") : (a ? (s += `
262
- * `, s += kt(t)) : s += ` ${t.replaceAll(" @", " \\@")}`, i.length > 0 && (s += `
263
- *`));
264
- for (let l = 0; l < i.length; ++l) {
265
- const r = i[l], c = `@${r.name}`, m = r.text ?? "";
266
- s += `${a ? `
267
- * ` : ""}${c}`, m.includes(`
268
- `) ? (r.name === "returns" || r.name === "param" ? s += " " : s += `
269
- * `, s += kt(m)) : m.length > 0 && (s += ` ${m.replaceAll(" @", " \\@")}`);
270
- }
271
- return s += a ? `
272
- ` : " ", s;
273
- }
274
- const nt = 10, on = 32, an = 64;
275
- function kt(e) {
276
- let t = "";
277
- const n = e.length;
278
- let i = 0;
279
- for (let a = 0; a < n; ++a) {
280
- const s = e.charCodeAt(a);
281
- if (s === nt)
282
- t += e.slice(i, a), e.charCodeAt(a + 1) === nt ? t += `
283
- *` : t += `
284
- * `, i = a + 1;
285
- else if (s === an) {
286
- const l = a === 0 ? 0 : e.charCodeAt(a - 1);
287
- (a === 0 || l === on || l === nt) && (t += e.slice(i, a), t += "\\@", i = a + 1);
288
- }
289
- }
290
- return i < n && (t += e.slice(i)), t;
291
- }
292
- function j(e, t, n) {
293
- const i = o.getLeadingCommentRanges(n.file.text, e.pos);
294
- if (i === void 0)
295
- return;
296
- let a;
297
- for (const s of i) {
298
- const l = n.file.text.slice(s.pos, s.end);
299
- l.startsWith("/**") && (a !== void 0 && n.config.strict && n.emitError(
300
- `Found multiple JSDoc comments for the same node. This is not allowed.
301
- If one of these was meant to be a file-level comment, read the documentation: https://webgis.esri.com/webgis/core/core/documenting-api#module-level-documentation
302
- If this is meant to be a function overload, read the documentation: https://webgis.esri.com/webgis/core/core/documenting-api#function-overloads`,
303
- {
304
- file: n.file,
305
- node: e
306
- }
307
- ), a = l);
308
- }
309
- if (a !== void 0 && !(t && !a.includes("* @public") && !a.includes("* @internal")))
310
- return sn(a, t, n);
311
- }
312
- function sn(e, t, n) {
313
- const i = e.length - 2;
314
- let a = 3, s = "";
315
- const l = [];
316
- let r, c, m = !t, d = !t, p = !1;
317
- for (; a < i; ) {
318
- let f = e.indexOf(`
319
- `, a);
320
- f === -1 && (f = i);
321
- let u = e.slice(a, f).trim();
322
- if (a = f + 1, u === "*" ? u = "" : u.startsWith("*") && (u[1] === " " ? u = u.slice(2) : n.config.strict ? n.emitError(
323
- `For consistency, include a space character after '*' in JSDoc. Did not find it in "${e}"`,
324
- {
325
- file: n.file,
326
- node: void 0
327
- }
328
- ) : u = u.slice(1)), u.startsWith("@")) {
329
- r !== void 0 && !p && l.push(
330
- W[r] ?? {
331
- name: r,
332
- text: c.trim().replaceAll("\\@", "@") || void 0
333
- }
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;
339
- } else r !== void 0 ? c = `${c}
340
- ${u}` : s += `${u}
341
- `;
342
- }
343
- if (!(!m && !d))
344
- return r !== void 0 && !p && l.push(
345
- W[r] ?? {
346
- name: r,
347
- text: c.trim().replaceAll("\\@", "@") || void 0
348
- }
349
- ), {
350
- description: s.trim().replaceAll("\\@", "@") || void 0,
351
- docsTags: l
352
- };
353
- }
354
- function rn(e, t) {
355
- for (let n = 0; n < t.docsTags.length; ++n) {
356
- const i = t.docsTags[n], { name: a, text: s } = i;
357
- a === "deprecated" ? e.deprecated = s || !0 : (e.docsTags ??= [], e.docsTags.push(i));
358
- }
359
- e.description = t.description;
360
- }
361
- function ii(e, t) {
362
- for (let n = 0; n < t.docsTags.length; ++n) {
363
- const i = t.docsTags[n], { name: a, text: s } = i;
364
- if (a === "deprecated")
365
- e.deprecated = s || !0;
366
- else if (i === W.private)
367
- e.privacy = "private";
368
- else if (a === "csspart")
369
- e.cssParts ??= [], e.cssParts.push(ot(s));
370
- else if (a === "cssstate")
371
- e.cssStates ??= [], e.cssStates.push(ot(s));
372
- else if (a === "slot")
373
- e.slots ??= [], e.slots.push(ot(s));
374
- else if (a === "esriCompatibilityName") {
375
- const l = te(e);
376
- l.esriCompatibilityNames ??= [], l.esriCompatibilityNames.push(s ?? "");
377
- } else a === "readonly" || (e.docsTags ??= [], e.docsTags.push(i));
378
- }
379
- e.description = t.description;
380
- }
381
- function ln(e, t) {
382
- const n = e, i = [];
383
- for (let a = 0; a < t.docsTags.length; ++a) {
384
- const s = t.docsTags[a], { name: l, text: r } = s;
385
- if (l === "deprecated")
386
- e.deprecated = r || !0;
387
- else if (s === W.private)
388
- e.privacy = "private";
389
- else if (l === "param")
390
- i.push(s);
391
- else if (l === "returns")
392
- n.return.description = s.text;
393
- else if (l === "esriCompatibilityName") {
394
- const c = Tt(e);
395
- c.esriCompatibilityNames ??= [], c.esriCompatibilityNames.push(r ?? "");
396
- } else
397
- e.docsTags ??= [], e.docsTags.push(s);
398
- }
399
- return e.description = t.description, i;
400
- }
401
- function cn(e, t) {
402
- for (let n = 0; n < t.docsTags.length; ++n) {
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));
405
- }
406
- e.description = t.description;
407
- }
408
- function dn(e, t) {
409
- for (let n = 0; n < t.docsTags.length; ++n) {
410
- const i = t.docsTags[n], { name: a, text: s } = i;
411
- if (a === "deprecated")
412
- e.deprecated = s || !0;
413
- else if (a === "default")
414
- e.default = s;
415
- else if (a !== "readonly") if (a === "esriCompatibilityName") {
416
- const l = Zt(e);
417
- l.esriCompatibilityNames ??= [], l.esriCompatibilityNames.push(s ?? "");
418
- } else
419
- e.docsTags ??= [], e.docsTags.push(i);
420
- }
421
- e.description = t.description;
422
- }
423
- function pn(e, t) {
424
- for (let n = 0; n < t.docsTags.length; ++n) {
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));
427
- }
428
- e.description = t.description;
429
- }
430
- function ot(e) {
431
- if (e === void 0)
432
- return {
433
- name: "",
434
- deprecated: void 0,
435
- summary: void 0,
436
- description: void 0,
437
- syntax: void 0,
438
- default: void 0
439
- };
440
- const t = e.indexOf(" - ");
441
- if (t === -1)
442
- return e.startsWith("- ") ? {
443
- name: "",
444
- deprecated: void 0,
445
- summary: void 0,
446
- description: e.slice(2),
447
- syntax: void 0,
448
- default: void 0
449
- } : {
450
- name: e,
451
- deprecated: void 0,
452
- summary: void 0,
453
- description: void 0,
454
- syntax: void 0,
455
- default: void 0
456
- };
457
- let n, i = e.slice(0, t);
458
- if (i.startsWith("[") && i.endsWith("]")) {
459
- const s = i.slice(1, -1), l = s.indexOf("=");
460
- i = s.slice(0, l), n = s.slice(l + 1);
461
- }
462
- const a = e.slice(t + 3);
463
- return {
464
- name: i,
465
- deprecated: void 0,
466
- summary: void 0,
467
- description: a,
468
- syntax: void 0,
469
- default: n
470
- };
471
- }
472
- const W = {
473
- // Create a null prototype object to avoid collisions with Object.prototype when doing lookups
474
- // eslint-disable-next-line @typescript-eslint/naming-convention
475
- __proto__: null,
476
- internal: { name: "internal", text: void 0 },
477
- private: { name: "private", text: void 0 },
478
- copyDoc: { name: "copyDoc", text: void 0 },
479
- beta: { name: "beta", text: void 0 },
480
- experimental: { name: "experimental", text: void 0 },
481
- readonly: { name: "readonly", text: void 0 },
482
- required: { name: "required", text: void 0 }
483
- }, Ue = {
484
- description: void 0,
485
- docsTags: []
486
- }, Ce = {
487
- description: void 0,
488
- docsTags: [W.private]
489
- };
490
- function mn(e, t, n) {
491
- switch (t.path) {
492
- case "layers/FeatureLayer": {
493
- const i = "export default class FeatureLayer extends FeatureLayerSuperclass {", a = e.indexOf(i);
494
- if (a === -1)
495
- return n.emitError(
496
- `Hardcoded behavior error: Expected .d.ts for FeatureLayer to include "${i}".`,
497
- { file: ae(t).file, node: void 0 }
498
- ), e;
499
- const s = 'get type(): "feature";', l = e.indexOf(s);
500
- if (l === -1)
501
- return n.emitError(
502
- `Hardcoded behavior error: Expected .d.ts for FeatureLayer to include "${s}".`,
503
- { file: ae(t).file, node: void 0 }
504
- ), e;
505
- const r = l + s.length, c = e.lastIndexOf("/**", l);
506
- if (c === -1)
507
- return n.emitError(
508
- `Hardcoded behavior error: Expected .d.ts for FeatureLayer to include JSDoc for "${s}".`,
509
- { file: ae(t).file, node: void 0 }
510
- ), e;
511
- const m = `export default class FeatureLayer extends __FeatureLayerSansType {
512
- ${e.slice(c, r)}
513
- }
514
- export abstract class __FeatureLayerSansType extends FeatureLayerSuperclass {`;
515
- return e.slice(0, a) + m + e.slice(a + i.length, c) + e.slice(r);
516
- }
517
- case "layers/CSVLayer":
518
- case "layers/OrientedImageryLayer": {
519
- const i = `import type { __FeatureLayerSansType } from "./FeatureLayer.js";
520
- `, a = `extends FeatureLayer {
521
- `, s = e.indexOf(a);
522
- return s === -1 ? (n.emitError(
523
- `Hardcoded behavior error: Expected .d.ts for ${t.path} to include "${a}".`,
524
- { file: ae(t).file, node: void 0 }
525
- ), e) : i + e.slice(0, s) + `extends __FeatureLayerSansType {
526
- ` + e.slice(s + a.length);
527
- }
528
- case "widgets/support/widget":
529
- return e + `
530
-
531
- export namespace tsx {
532
- namespace JSX {
533
- interface IntrinsicElements {
534
- [elementName: string]: any;
535
- }
536
-
537
- interface Element {
538
- }
539
- }
540
- }`;
541
- default:
542
- return e;
543
- }
544
- }
545
- function ua(e, t) {
546
- let n = `/// <reference types="../index.d.ts" />
547
- `, i = `
548
-
549
- `, 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)
555
- continue;
556
- const _ = J;
557
- if (_.privacy !== void 0 || te(_).hasExplicitAbstract === !0)
558
- 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";
562
- `;
563
- 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};
569
- `, q += ` ${xt(`on${Fe.name[0].toUpperCase()}${Fe.name.slice(1)}`)}?: ${Pt};
570
- `;
571
- }
572
- a += `export interface ${w}CustomEvent<T> extends CustomEvent<T> {
573
- detail: T;
574
- target: ${F};
575
- currentTarget: ${F};
576
- }
577
- `, s += ` type HTML${w}ElementEventMap = ${F}["@eventTypes"];
578
- `;
579
- }
580
- s += ` type HTML${w}Element = ${F};
581
-
582
- `, l += ` "${G}": ${F};
583
- `, r += `interface Lumina${w} extends ${me}h.JSX.HTMLAttributes<${F}> {
584
- ${ie}}
585
-
586
- `, c += ` "${G}": Lumina${w};
587
- `, m += `interface Preact${w} extends ${me}HTMLAttributes<${F}> {
588
- ${ie}}
589
-
590
- `, d += ` "${G}": Preact${w};
591
- `, p += `interface React${w} extends ${me}HTMLProps<${F}> {
592
- ${ie}}
593
-
594
- `, f += ` "${G}": React${w};
595
- `, u += `interface Stencil${w} extends ${me}StencilJsx.HTMLAttributes<${F}> {
596
- ${q}}
597
-
598
- `, g += ` "${G}": Stencil${w};
599
- `, ke !== "" && (E += ke);
600
- }
601
- }
602
- if (s === "") {
603
- t.vanillaComponentTypes = "";
604
- return;
605
- }
606
- const y = "@arcgis/lumina";
607
- t.vanillaComponentTypes = `${i}
608
- export { ToEvents, TargetedEvent } from "${y}";
609
-
610
- ${a}
611
-
612
- declare global {
613
- interface HTMLElementTagNameMap {
614
- ${l}
615
- }
616
-
617
- ${s}
618
- }`;
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}";
623
-
624
- ${E}${r}declare module "@arcgis/lumina" {
625
- export namespace h.JSX {
626
- interface IntrinsicElements {
627
- ${c} }
628
- }
629
- }`, v = ` interface IntrinsicElements {
630
- ${d} }`, x = `${n}import { HTMLAttributes } from "preact";
631
- import type { EventHandler } from "${y}";
632
-
633
- ${E}${m}declare module 'preact' {
634
- namespace createElement.JSX {
635
- ${v}
636
- }
637
- namespace h.JSX {
638
- ${v}
639
- }
640
- }`, R = `
641
- namespace JSX {
642
- interface IntrinsicElements {
643
- ${f} }
644
- }
645
- `, I = `${n}import type { HTMLProps } from 'react';
646
- import type { EventHandler } from "${y}";
647
-
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}";
652
-
653
- ${E}${u}interface ExposedElements {
654
- ${g}}
655
-
656
- export namespace JSX {
657
- export interface IntrinsicElements extends ExposedElements {}
658
- }
659
-
660
- declare module "@stencil/core/internal/stencil-public-runtime" {
661
- export namespace h.JSX {
662
- interface IntrinsicElements extends ExposedElements {}
663
- }
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);
667
- }
668
- function un(e, t) {
669
- const n = [], i = [];
670
- let a = !1;
671
- if (t !== void 0)
672
- for (let r = 0; r < t.length; ++r) {
673
- const c = t[r];
674
- if (c.kind !== "field" || c.readonly !== void 0 || c.privacy !== void 0)
675
- continue;
676
- if (c.getterType !== void 0) {
677
- a = !0;
678
- continue;
679
- }
680
- c.docsTags?.includes(W.required) === !0 ? n.push(`"${c.name}"`) : i.push(`"${c.name}"`);
681
- }
682
- let s = n.length > 0 ? `Required<Pick<${e}, ${n.join(" | ")}>>` : "";
683
- i.length > 0 && (s.length > 0 && (s += ", "), s += `Partial<Pick<${e}, ${i.join(" | ")}>>`), a && (s.length > 0 && (s += ", "), s += `${e}SetterTypes`);
684
- const l = a ? `type ${e}SetterTypes = ${e}["${ni}"];
685
- ` : "";
686
- return [s.length === 0 ? "" : `${s}, `, l];
687
- }
688
- function fa(e, t) {
689
- const n = t.moduleMap.get("index");
690
- if (n === void 0)
691
- e.unshift(fn);
692
- else {
693
- const i = ae(n);
694
- i.index.named.getAssetPath === void 0 && n.declarations.push(oi), i.index.named.setAssetPath === void 0 && n.declarations.push(ai);
695
- }
696
- }
697
- const ni = "@setterTypes", oi = {
698
- [Y]: Ze(),
699
- kind: "function",
700
- name: "getAssetPath",
701
- static: void 0,
702
- deprecated: void 0,
703
- summary: void 0,
704
- description: "Get a resolved path from where an asset can be loaded.",
705
- docsTags: void 0,
706
- typeParameters: void 0,
707
- parameters: [
708
- {
709
- name: "suffix",
710
- deprecated: void 0,
711
- summary: void 0,
712
- description: "The relative path for the asset.",
713
- docsTags: void 0,
714
- optional: void 0,
715
- rest: void 0,
716
- type: {
717
- text: "string",
718
- references: void 0,
719
- values: void 0,
720
- source: void 0
721
- },
722
- default: void 0
723
- }
724
- ],
725
- return: {
726
- summary: void 0,
727
- description: void 0,
728
- type: {
729
- text: "string",
730
- references: void 0,
731
- values: void 0,
732
- source: void 0
733
- }
734
- },
735
- inheritedFrom: void 0,
736
- signature: void 0,
737
- privacy: void 0,
738
- source: void 0
739
- }, ai = {
740
- [Y]: Ze(),
741
- kind: "function",
742
- name: "setAssetPath",
743
- static: void 0,
744
- deprecated: void 0,
745
- summary: void 0,
746
- description: `Used to manually set the base path where package assets (like localization
747
- and icons) can be found.
748
-
749
- By default, the package assets are loaded from
750
- \`https://js.arcgis.com/<version>/<simplified-package-name>/\`. We are hosting
751
- our assets on a CDN (Content Delivery Network) to ensure fast and reliable
752
- access. It is CORS-enabled, so you can load the assets from any domain. This
753
- is the recommended way to load the assets and avoid bundling them with your
754
- application.
755
-
756
- However, if you need to host the assets locally, you can copy them manually
757
- as part of your build process and use \`setAssetPath\` to customize where the
758
- browser will load the assets from.`,
759
- docsTags: void 0,
760
- typeParameters: void 0,
761
- parameters: [
762
- {
763
- name: "path",
764
- deprecated: void 0,
765
- summary: void 0,
766
- description: "Relative or absolute path to the assets folder.",
767
- docsTags: void 0,
768
- optional: void 0,
769
- rest: void 0,
770
- type: {
771
- text: "URL | string",
772
- references: [
773
- {
774
- name: "URL",
775
- module: void 0,
776
- package: "global:",
777
- viewUrl: "https://developer.mozilla.org/docs/Web/API/URL",
778
- start: 0,
779
- end: 3
780
- }
781
- ],
782
- values: void 0,
783
- source: void 0
784
- },
785
- default: void 0
786
- }
787
- ],
788
- return: {
789
- summary: void 0,
790
- description: void 0,
791
- type: {
792
- text: "void",
793
- references: void 0,
794
- values: void 0,
795
- source: void 0
796
- }
797
- },
798
- inheritedFrom: void 0,
799
- signature: void 0,
800
- privacy: void 0,
801
- source: void 0
802
- }, si = ei(void 0, "index", {}, { class: void 0, default: void 0, named: {} });
803
- si.importsText = "";
804
- const fn = {
805
- [Y]: si,
806
- kind: "javascript-module",
807
- path: "index",
808
- sourcePath: "src/index.ts",
809
- deprecated: void 0,
810
- description: void 0,
811
- docsTags: void 0,
812
- summary: void 0,
813
- declarations: [oi, ai],
814
- exports: void 0
815
- };
816
- function ya(e, t) {
817
- const n = Te(e), i = he(n), a = ae(e);
818
- if (a.index.class?.privacy !== void 0)
819
- return e.declarations.length > 1 && t.emitError(
820
- `Did not expect to find any public declarations in a module that declares a private web component. Found: ${e.declarations.filter((r) => r !== a.index.class).map((r) => r.name).join(", ")}`,
821
- { file: a.file, node: void 0 }
822
- ), "";
823
- let s = `${i}${a.importsText}`;
824
- if (s !== "" && (s += `
825
- `), a.reExports !== void 0) {
826
- for (let r = 0; r < a.reExports.length; ++r) {
827
- const c = a.reExports[r];
828
- let m = "";
829
- if (c.specifiers[0].exportName === "*") {
830
- const d = c.specifiers[0];
831
- m = (c.isTypeOnly ? "type *" : "*") + (d.aliasName ? ` as ${d.aliasName}` : "");
832
- } else {
833
- for (let d = 0; d < c.specifiers.length; ++d) {
834
- const p = c.specifiers[d];
835
- m += (d === 0 ? "{" : ",") + (c.isTypeOnly ? " type " : " ") + p.exportName + (p.aliasName ? ` as ${p.aliasName}` : "");
836
- }
837
- m += " }";
838
- }
839
- s += `export ${m} from "${c.specifier}";
840
- `;
841
- }
842
- s += `
843
- `;
844
- }
845
- if (a.namespaces !== void 0)
846
- for (let r = 0; r < a.namespaces.length; ++r)
847
- s += `${a.namespaces[r]}
848
-
849
- `;
850
- const l = e.declarations;
851
- a.constructorPropertiesInterface !== void 0 && (s += `${Ft(a.constructorPropertiesInterface)}
852
-
853
- `);
854
- for (let r = 0; r < l.length; ++r) {
855
- const c = l[r];
856
- s += Ft(c), r < l.length - 1 && (s += `
857
-
858
- `);
859
- }
860
- return t.isJsApi ? mn(s, e, t) : (t.isComponentProject && (e.exports?.[0].kind === "custom-element-definition" ? s = `/// <reference path="../../index.d.ts" />
861
- ${s}` : e.path === "index" && (s += t.vanillaComponentTypes)), s);
862
- }
863
- function he(e) {
864
- return e === void 0 ? "" : `/*${nn(e)}*/
865
- `;
866
- }
867
- function Ft(e) {
868
- let t = Te(e), n = "";
869
- if (e.kind === "class" || e.kind === "mixin")
870
- n = wt(e);
871
- else if (e.kind === "interface") {
872
- const a = te(e);
873
- 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
- const l = e.members[0];
875
- let r = ri(l, !0);
876
- const c = Te(l)?.docsTags;
877
- c !== void 0 && (t = {
878
- description: t?.description,
879
- docsTags: [...c, ...t?.docsTags ?? []]
880
- });
881
- const m = r.indexOf("): ");
882
- r = `${r.slice(0, m)}) => ${r.slice(m + 3, -1)}`, n = Rt(e.name, e.typeParameters, void 0, r);
883
- } else if (a.isMixinBaseClass === !0)
884
- n = wt(e);
885
- else if (a.emitAsTypeAlias === !0) {
886
- let l = e.type?.text;
887
- const r = dt(e);
888
- r !== "" ? l = l === void 0 ? `{${r}}` : `${l} & {${r}}` : l === void 0 && a.superTypesText === void 0 && (l = "{}"), n = Rt(
889
- e.name,
890
- e.typeParameters,
891
- a.superTypesText,
892
- l
893
- );
894
- } else {
895
- const l = dt(e);
896
- n = Oi(
897
- a.isDefaultExported === !0,
898
- e.name,
899
- e.typeParameters,
900
- a.superTypesText,
901
- l
902
- );
903
- }
904
- } else if (e.kind === "function") {
905
- const a = Tt(e);
906
- n = Gi(
907
- a.isDefaultExported === !0,
908
- e.name,
909
- e.typeParameters,
910
- e.parameters,
911
- e.return.type.text
912
- );
913
- } else if (e.kind === "variable") {
914
- const a = Zt(e);
915
- n += Vi(a.isDefaultExported === !0, e.name, e.type.text);
916
- }
917
- return `${he(t)}${n}`;
918
- }
919
- function wt(e) {
920
- const t = te(e), n = t.isDefaultExported === !0, i = dt(e), a = e, s = e;
921
- let l, r = a.mixins ?? s.supertypes;
922
- if (r === void 0)
923
- t.superClassText !== void 0 && (l = t.superClassText);
924
- else if (t.superClassText === void 0 && r.length === 1) {
925
- const m = r[0];
926
- l = m.printableText, m.printableText = void 0, r = void 0;
927
- } else
928
- l = `${e.name}Superclass`;
929
- let c = _i(
930
- t.hasExplicitAbstract !== void 0,
931
- n,
932
- e.name,
933
- e.typeParameters,
934
- l,
935
- i
936
- );
937
- if (r !== void 0) {
938
- c += `
939
- declare const ${l}:`, t.superClassText !== void 0 && (c += ` typeof ${t.superClassText}`);
940
- for (let m = 0; m < r.length; ++m) {
941
- const d = r[m];
942
- c += ` & typeof ${d.printableText}`, d.printableText = void 0;
943
- }
944
- }
945
- return c;
946
- }
947
- function dt(e) {
948
- const t = e.members;
949
- let n = "";
950
- const i = te(e);
951
- if (e.kind === "mixin" && (n += `constructor(...args: any[]);
952
- `), i.eventTypesProperty !== void 0) {
953
- let l = vn;
954
- if (i.eventTypesProperty.description !== void 0 || i.eventTypesProperty.docsTags !== void 0) {
955
- const c = Te(i.eventTypesProperty);
956
- l = he(c);
957
- }
958
- const r = Nt(i.eventTypesProperty);
959
- n += `${l}${r}
960
- `;
961
- }
962
- const a = e, s = e.customElement === !0;
963
- if (t !== void 0) {
964
- let l = "";
965
- for (let r = 0; r < t.length; ++r) {
966
- const c = t[r];
967
- if (c.inheritedFrom !== void 0 || c.privacy === "private")
968
- continue;
969
- 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)}
971
- `), n += Nt(c)) : n += ri(c, !1), n += `
972
- `;
973
- }
974
- l !== "" && (n += `${fe(!1, !1, !1, !1, !1, !1, ni, `{
975
- ${l}}`)}
976
- `);
977
- }
978
- if (s && a.events !== void 0) {
979
- let l = e.name;
980
- if (e.typeParameters !== void 0) {
981
- l += "<";
982
- for (let c = 0; c < e.typeParameters.length; ++c)
983
- l += e.typeParameters[c].name, c < e.typeParameters.length - 1 && (l += ", ");
984
- l += ">";
985
- }
986
- let r = "";
987
- for (let c = 0; c < a.events.length; ++c) {
988
- const m = a.events[c];
989
- if (m.inheritedFrom === void 0) {
990
- const d = Te(m);
991
- n += `${he(d)}${fe(!1, !1, !1, !0, !1, !1, m.name, `import("${yn}").TargetedEvent<this, ${m.type.text}>`)}
992
- `;
993
- }
994
- r += ` ${fe(!1, !1, !1, !1, !1, !1, m.name, `${l}["${m.name}"]["detail"]`)}
995
- `;
996
- }
997
- n += `${fe(!1, !1, !1, !0, !1, !1, "@eventTypes", `{
998
- ${r}}`)}
999
- `;
1000
- }
1001
- return n === "" ? "" : `
1002
- ${n.replaceAll(`
1003
- `, `
1004
- `).slice(0, -2)}`;
1005
- }
1006
- const yn = "@arcgis/lumina";
1007
- function Nt(e) {
1008
- let t = "";
1009
- const n = Ai(e), i = n.isAccessor === !0, a = e.readonly === !0;
1010
- if (e.getterType !== void 0 || i && a)
1011
- t += Ki(
1012
- e.privacy !== void 0,
1013
- n.isAbstract === !0,
1014
- e.static === !0,
1015
- e.name,
1016
- e.getterType?.text ?? e.type.text,
1017
- a ? void 0 : e.type.text
1018
- );
1019
- else {
1020
- const s = n.dtsTypeOverride ?? e.type.text, l = i ? !1 : s.endsWith(" | undefined"), r = l ? s.slice(0, -12) : s;
1021
- t += fe(
1022
- e.privacy !== void 0,
1023
- n.isAbstract === !0,
1024
- e.static === !0,
1025
- a,
1026
- i,
1027
- l,
1028
- e.name,
1029
- r
1030
- );
1031
- }
1032
- return t;
1033
- }
1034
- function ri(e, t) {
1035
- const n = Tt(e);
1036
- return Wi(
1037
- e.privacy !== void 0,
1038
- n.isAbstract === !0,
1039
- e.static === !0,
1040
- n.hasQuestionToken === !0,
1041
- e.kind === "constructor" ? t ? "new" : "constructor" : e.kind === "call-signature" ? "" : e.name,
1042
- e.typeParameters,
1043
- e.parameters,
1044
- e.return?.type.text
1045
- );
1046
- }
1047
- const vn = he({
1048
- description: void 0,
1049
- docsTags: [
1050
- {
1051
- name: "deprecated",
1052
- text: `Do not directly reference this property.
1053
- Use EventNames and EventTypes helpers from @arcgis/core/Evented`
1054
- }
1055
- ]
1056
- });
1057
- function va() {
1058
- const e = Date.now();
1059
- return () => (Date.now() - e) / gn;
1060
- }
1061
- const gn = 1e3;
1062
- function Sn(e) {
1063
- const t = e.indexOf("/");
1064
- return t === -1 ? e : e.slice(0, t);
1065
- }
1066
- function Ot(e, t, n) {
1067
- if (!n.isComponentProject || n.config.context.isLuminaMinimalExtraction || n.config.documentation.publicStoryUrlPrefix === !1)
1068
- return;
1069
- const i = e.match(Tn)?.[1];
1070
- if (i === void 0) {
1071
- n.emitError(
1072
- 'Failed to find component tag name. Make sure the "component" property is present in the story meta. Documentation: https://webgis.esri.com/references/support-packages/storybook',
1073
- { file: void 0, node: void 0, scope: t.slice(n.basePath.length) }
1074
- );
1075
- return;
1076
- }
1077
- const a = [];
1078
- for (const l of e.matchAll(hn)) {
1079
- const r = l[1], c = Mn(r), m = e.indexOf("{", l.index), d = e.indexOf("}", m), p = e.slice(0, l.index).trimEnd();
1080
- let f = "";
1081
- if (p.endsWith("*/")) {
1082
- const E = p.lastIndexOf("/**");
1083
- f = p.slice(E + 3, -2).trim().replaceAll(Cn, "");
1084
- }
1085
- const u = e.slice(m, d).match(En)?.[1] || c, g = bn(c);
1086
- a.push({
1087
- description: `${u}${f ? `
1088
- ${f}` : ""}`,
1089
- url: `${n.config.documentation.publicStoryUrlPrefix}?path=/story/${i}--${g}&singleStory=true`,
1090
- source: void 0
1091
- });
1092
- }
1093
- if (a.length === 0) {
1094
- n.emitError(
1095
- 'Failed to find any stories. Make sure stories are defined using expected format and have a "name" property. Documentation: https://webgis.esri.com/references/support-packages/storybook',
1096
- { file: void 0, node: void 0, scope: t.slice(n.basePath.length) }
1097
- );
1098
- return;
1099
- }
1100
- const s = n.componentStories[i];
1101
- s === void 0 ? n.componentStories[i] = a : s.push(...a);
1102
- }
1103
- const Tn = /component: ["']([^"']+)["']/u, hn = /export const (\w+)/gu, En = /name: ["']([^"']+)["']/u, Cn = /^\s*\*\s?/gmu, bn = (e) => e.toLowerCase().replace(/[ ’–—―′¿'`~!@#$%^&*()_|+\-=?;:'",.<>{}[\]\\/]/giu, "-").replace(/-+/gu, "-").replace(/^-+/u, "").replace(/-+$/u, ""), Mn = (e) => e.replace(/_/gu, " ").replace(/-/gu, " ").replace(/\./gu, " ").replace(/([^\n])([A-Z])([a-z])/gu, (t, n, i, a) => `${n} ${i}${a}`).replace(/([a-z])([A-Z])/gu, (t, n, i) => `${n} ${i}`).replace(/([a-z])([0-9])/giu, (t, n, i) => `${n} ${i}`).replace(/([0-9])([a-z])/giu, (t, n, i) => `${n} ${i}`).replace(/(\s|^)(\w)/gu, (t, n, i) => `${n}${i.toUpperCase()}`).replace(/ +/gu, " ").trim();
1104
- function pt(e, t) {
1105
- let i = t.startsWith("./") ? t.slice(2) : t, a = e;
1106
- for (; ; ) {
1107
- const s = a.lastIndexOf("/");
1108
- if (a = s === -1 ? "" : a.slice(0, s), i.startsWith("../"))
1109
- i = i.slice(3);
1110
- else
1111
- return a === "" ? i : `${a}/${i}`;
1112
- }
1113
- }
1114
- function ye(e, t) {
1115
- let n = 0;
1116
- for (; ; ) {
1117
- const a = e.indexOf("/", n) + 1;
1118
- if (a === 0)
1119
- break;
1120
- const s = e.slice(n, a), l = t.slice(n, a);
1121
- if (s !== l)
1122
- break;
1123
- n = a;
1124
- }
1125
- let i = "";
1126
- for (let a = n; a < e.length && (a = e.indexOf("/", a), a !== -1); ++a)
1127
- i += "../";
1128
- return i.length === 0 && (i = "./"), `${i}${t.slice(n)}`;
1129
- }
1130
- function Gt(e, t, n = 0) {
1131
- for (; n < e.length; ++n) {
1132
- const i = e[n];
1133
- i.start += t, i.end += t;
1134
- }
1135
- return e;
1136
- }
1137
- function Vt(e, t) {
1138
- if (e === t)
1139
- return !0;
1140
- if (typeof e != "object" || typeof t != "object" || e === null || t === null)
1141
- return !1;
1142
- if (Array.isArray(e)) {
1143
- if (!Array.isArray(t) || e.length !== t.length)
1144
- return !1;
1145
- for (let a = 0; a < e.length; ++a)
1146
- if (!Vt(e[a], t[a]))
1147
- return !1;
1148
- return !0;
1149
- }
1150
- const n = Object.keys(e), i = Object.keys(t);
1151
- if (n.length !== i.length)
1152
- return !1;
1153
- for (let a = 0; a < n.length; ++a) {
1154
- const s = n[a];
1155
- if (!Vt(e[s], t[s]))
1156
- return !1;
1157
- }
1158
- return !0;
1159
- }
1160
- function Pn(e, t) {
1161
- if (t.config.context.isLuminaMinimalExtraction || t.componentTagName === void 0)
1162
- return;
1163
- const n = e.moduleSpecifier.text, i = /\.(?:css|s[ac]ss|less|styl(?:us)?|postcss|pcss|sss)(\\?|$)/u;
1164
- if (!(n.startsWith(".") && i.test(n)))
1165
- return;
1166
- const s = n.split("?", 1)[0], l = Yi.join(t.file.fileName, "..", s), r = ji(l, "utf-8"), c = xn(r);
1167
- c !== void 0 && (t.componentCssFileDocs = c);
1168
- }
1169
- function xn(e) {
1170
- const t = [];
1171
- for (const n of e.matchAll(Rn)) {
1172
- const i = n.groups.name, a = n.groups.description.replaceAll(Dn, " ").trim();
1173
- t.push({
1174
- name: i,
1175
- deprecated: void 0,
1176
- summary: void 0,
1177
- description: a.endsWith("*") ? a.slice(0, -1).trim() : a,
1178
- syntax: void 0,
1179
- default: void 0
1180
- });
1181
- }
1182
- return t.length === 0 ? void 0 : t;
1183
- }
1184
- const Rn = /@prop\s+(?<name>--[\w-]+)\s*:(?<description>[^@/]+)/gu, Dn = /\n\s+\*? ?/gu;
1185
- function li(e, t) {
1186
- if (e === void 0)
1187
- return !1;
1188
- for (let n = 0; n < e.length; ++n)
1189
- if (e[n].kind === t)
1190
- return !0;
1191
- return !1;
1192
- }
1193
- function et(e) {
1194
- if (e.modifiers === void 0)
1195
- return 0;
1196
- for (let t = 0; t < e.modifiers.length; ++t)
1197
- if (e.modifiers[t].kind === o.SyntaxKind.ExportKeyword)
1198
- return e.modifiers[t + 1]?.kind === o.SyntaxKind.DefaultKeyword ? 2 : 1;
1199
- return 0;
1200
- }
1201
- function ci(e, t) {
1202
- return e.endsWith("Properties") && t.apiClassLikeName === e.slice(0, -10);
1203
- }
1204
- const Ln = /* @__PURE__ */ JSON.parse('{"AbortController":["AbortController"],"AbortSignal":["AbortSignal"],"AbortSignalEventMap":[],"AbstractRange":["AbstractRange"],"AbstractWorker":["error_event"],"AbstractWorkerEventMap":[],"ActiveXObject":[],"addEventListener":[],"AddEventListenerOptions":[],"AddressErrors":[],"AesCbcParams":[],"AesCtrParams":[],"AesDerivedKeyParams":[],"AesGcmParams":[],"AesKeyAlgorithm":[],"AesKeyGenParams":[],"AggregateError":[],"AggregateErrorConstructor":[],"alert":["Window/alert"],"Algorithm":[],"AlgorithmIdentifier":[],"AlignSetting":[],"AllowSharedBufferSource":[],"AlphaOption":[],"AnalyserNode":["AnalyserNode"],"AnalyserOptions":[],"ANGLE_instanced_arrays":["ANGLE_instanced_arrays"],"Animatable":["animate"],"Animation":["Animation"],"AnimationEffect":["AnimationEffect"],"AnimationEvent":["AnimationEvent"],"AnimationEventInit":[],"AnimationEventMap":[],"AnimationFrameProvider":["cancelAnimationFrame"],"AnimationPlaybackEvent":["AnimationPlaybackEvent"],"AnimationPlaybackEventInit":[],"AnimationPlayState":[],"AnimationReplaceState":[],"AnimationTimeline":["AnimationTimeline"],"AppendMode":[],"ARIAMixin":["ariaActiveDescendantElement"],"Array":["https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/Array"],"ArrayBuffer":["https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/ArrayBuffer"],"ArrayBufferConstructor":[],"ArrayBufferLike":[],"ArrayBufferTypes":[],"ArrayBufferView":[],"ArrayConstructor":[],"ArrayIterator":[],"ArrayLike":[],"AssignedNodesOptions":[],"AsyncDisposable":[],"AsyncDisposableStack":[],"AsyncDisposableStackConstructor":[],"AsyncGenerator":[],"AsyncGeneratorFunction":[],"AsyncGeneratorFunctionConstructor":[],"AsyncIterable":[],"AsyncIterableIterator":[],"AsyncIterator":[],"AsyncIteratorObject":[],"atob":["Window/atob"],"Atomics":[],"AttestationConveyancePreference":[],"Attr":["Attr"],"Audio":[],"AudioBuffer":["AudioBuffer"],"AudioBufferOptions":[],"AudioBufferSourceNode":["AudioBufferSourceNode"],"AudioBufferSourceOptions":[],"AudioConfiguration":[],"AudioContext":["AudioContext"],"AudioContextLatencyCategory":[],"AudioContextOptions":[],"AudioContextState":[],"AudioData":["AudioData"],"AudioDataCopyToOptions":[],"AudioDataInit":[],"AudioDataOutputCallback":[],"AudioDecoder":["AudioDecoder"],"AudioDecoderConfig":[],"AudioDecoderEventMap":[],"AudioDecoderInit":[],"AudioDecoderSupport":[],"AudioDestinationNode":["AudioDestinationNode"],"AudioEncoder":["AudioEncoder"],"AudioEncoderConfig":[],"AudioEncoderEventMap":[],"AudioEncoderInit":[],"AudioEncoderSupport":[],"AudioListener":["AudioListener"],"AudioNode":["AudioNode"],"AudioNodeOptions":[],"AudioParam":["setValueCurveAtTime"],"AudioParamMap":["AudioParamMap"],"AudioProcessingEvent":["AudioProcessingEvent"],"AudioProcessingEventInit":[],"AudioSampleFormat":[],"AudioScheduledSourceNode":["AudioScheduledSourceNode"],"AudioScheduledSourceNodeEventMap":[],"AudioTimestamp":[],"AudioWorklet":["AudioWorklet"],"AudioWorkletNode":["AudioWorkletNode"],"AudioWorkletNodeEventMap":[],"AudioWorkletNodeOptions":[],"AuthenticationExtensionsClientInputs":[],"AuthenticationExtensionsClientInputsJSON":[],"AuthenticationExtensionsClientOutputs":[],"AuthenticationExtensionsLargeBlobInputs":[],"AuthenticationExtensionsLargeBlobInputsJSON":[],"AuthenticationExtensionsLargeBlobOutputs":[],"AuthenticationExtensionsPRFInputs":[],"AuthenticationExtensionsPRFInputsJSON":[],"AuthenticationExtensionsPRFOutputs":[],"AuthenticationExtensionsPRFValues":[],"AuthenticationExtensionsPRFValuesJSON":[],"AuthenticatorAssertionResponse":["AuthenticatorAssertionResponse"],"AuthenticatorAttachment":[],"AuthenticatorAttestationResponse":["AuthenticatorAttestationResponse"],"AuthenticatorResponse":["AuthenticatorResponse"],"AuthenticatorSelectionCriteria":[],"AuthenticatorTransport":[],"AutoFill":[],"AutoFillAddressKind":[],"AutoFillBase":[],"AutoFillContactField":[],"AutoFillContactKind":[],"AutoFillCredentialField":[],"AutoFillField":[],"AutoFillNormalField":[],"AutoFillSection":[],"AutoKeyword":[],"AutomationRate":[],"AvcBitstreamFormat":[],"AvcEncoderConfig":[],"Awaited":["https://www.typescriptlang.org/docs/handbook/utility-types.html#awaitedtype"],"BarProp":["BarProp"],"Base64URLString":[],"BaseAudioContext":["createIIRFilter"],"BaseAudioContextEventMap":[],"BeforeUnloadEvent":["BeforeUnloadEvent"],"BigInt":[],"BigInt64Array":[],"BigInt64ArrayConstructor":[],"BigIntConstructor":[],"BigInteger":[],"BigIntToLocaleStringOptions":[],"BigUint64Array":["https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/Uint64Array"],"BigUint64ArrayConstructor":[],"BinaryType":[],"BiquadFilterNode":["BiquadFilterNode"],"BiquadFilterOptions":[],"BiquadFilterType":[],"BitrateMode":[],"Blob":["Blob"],"BlobCallback":[],"BlobEvent":["BlobEvent"],"BlobEventInit":[],"BlobPart":[],"BlobPropertyBag":[],"blur":["Window/blur"],"Body":["body"],"BodyInit":[],"Boolean":[],"BooleanConstructor":[],"BroadcastChannel":["BroadcastChannel"],"BroadcastChannelEventMap":[],"btoa":["Window/btoa"],"BufferSource":[],"BuiltinIteratorReturn":[],"ByteLengthQueuingStrategy":["ByteLengthQueuingStrategy"],"Cache":["addAll"],"CacheQueryOptions":[],"caches":[],"CacheStorage":["CacheStorage"],"CallableFunction":[],"cancelAnimationFrame":["DedicatedWorkerGlobalScope/cancelAnimationFrame"],"cancelIdleCallback":["Window/cancelIdleCallback"],"CanPlayTypeResult":[],"CanvasCaptureMediaStreamTrack":["CanvasCaptureMediaStreamTrack"],"CanvasCompositing":["globalAlpha"],"CanvasDirection":[],"CanvasDrawImage":["drawImage"],"CanvasDrawPath":["beginPath"],"CanvasFillRule":[],"CanvasFillStrokeStyles":["fillStyle"],"CanvasFilters":["filter"],"CanvasFontKerning":[],"CanvasFontStretch":[],"CanvasFontVariantCaps":[],"CanvasGradient":["CanvasGradient"],"CanvasImageData":["createImageData"],"CanvasImageSmoothing":["imageSmoothingEnabled"],"CanvasImageSource":[],"CanvasLineCap":[],"CanvasLineJoin":[],"CanvasPath":["roundRect"],"CanvasPathDrawingStyles":["setLineDash"],"CanvasPattern":["CanvasPattern"],"CanvasRect":["clearRect"],"CanvasRenderingContext2D":["CanvasRenderingContext2D"],"CanvasRenderingContext2DSettings":[],"CanvasSettings":["getContextAttributes"],"CanvasShadowStyles":["shadowBlur"],"CanvasState":["isContextLost"],"CanvasText":["fillText"],"CanvasTextAlign":[],"CanvasTextBaseline":[],"CanvasTextDrawingStyles":["direction"],"CanvasTextRendering":[],"CanvasTransform":["getTransform"],"CanvasUserInterface":["drawFocusIfNeeded"],"Capitalize":["https://www.typescriptlang.org/docs/handbook/utility-types.html#intrinsic-string-manipulation-types"],"captureEvents":["Window/captureEvents"],"CaretPosition":["CaretPosition"],"CaretPositionFromPointOptions":[],"CDATASection":["CDATASection"],"ChannelCountMode":[],"ChannelInterpretation":[],"ChannelMergerNode":["ChannelMergerNode"],"ChannelMergerOptions":[],"ChannelSplitterNode":["ChannelSplitterNode"],"ChannelSplitterOptions":[],"CharacterData":["CharacterData"],"CheckVisibilityOptions":[],"ChildNode":["after"],"ClassAccessorDecoratorContext":[],"ClassAccessorDecoratorResult":[],"ClassAccessorDecoratorTarget":[],"ClassDecorator":[],"ClassDecoratorContext":[],"ClassFieldDecoratorContext":[],"ClassGetterDecoratorContext":[],"ClassMemberDecoratorContext":[],"ClassMethodDecoratorContext":[],"ClassSetterDecoratorContext":[],"clearInterval":["Window/clearInterval"],"clearTimeout":["Window/clearTimeout"],"Client":["Client"],"clientInformation":[],"ClientQueryOptions":[],"ClientRect":[],"Clients":["Clients"],"ClientTypes":[],"Clipboard":["Clipboard"],"ClipboardEvent":["ClipboardEvent"],"ClipboardEventInit":[],"ClipboardItem":["ClipboardItem"],"ClipboardItemData":[],"ClipboardItemOptions":[],"ClipboardItems":[],"close":["DedicatedWorkerGlobalScope/close"],"closed":[],"CloseEvent":["CloseEvent"],"CloseEventInit":[],"CodecState":[],"ColorGamut":[],"ColorSpaceConversion":[],"Comment":["Comment"],"CompositeOperation":[],"CompositeOperationOrAuto":[],"CompositionEvent":["CompositionEvent"],"CompositionEventInit":[],"CompressionFormat":[],"CompressionStream":["CompressionStream"],"ComputedEffectTiming":[],"ComputedKeyframe":[],"ConcatArray":[],"confirm":["Window/confirm"],"console":[],"Console":["console"],"ConstantSourceNode":["ConstantSourceNode"],"ConstantSourceOptions":[],"ConstrainBoolean":[],"ConstrainBooleanParameters":[],"ConstrainDOMString":[],"ConstrainDOMStringParameters":[],"ConstrainDouble":[],"ConstrainDoubleRange":[],"ConstrainULong":[],"ConstrainULongRange":[],"ConstructorParameters":["https://www.typescriptlang.org/docs/handbook/utility-types.html#constructorparameterstype"],"ContentVisibilityAutoStateChangeEvent":["ContentVisibilityAutoStateChangeEvent"],"ContentVisibilityAutoStateChangeEventInit":[],"ConvolverNode":["ConvolverNode"],"ConvolverOptions":[],"CookieChangeEvent":["CookieChangeEvent"],"CookieChangeEventInit":[],"CookieInit":[],"CookieList":[],"CookieListItem":[],"CookieSameSite":[],"cookieStore":[],"CookieStore":["CookieStore"],"CookieStoreDeleteOptions":[],"CookieStoreEventMap":[],"CookieStoreGetOptions":[],"CookieStoreManager":["subscribe"],"COSEAlgorithmIdentifier":[],"CountQueuingStrategy":["CountQueuingStrategy"],"createImageBitmap":["Window/createImageBitmap"],"Credential":["Credential"],"CredentialCreationOptions":[],"CredentialMediationRequirement":[],"CredentialPropertiesOutput":[],"CredentialRequestOptions":[],"CredentialsContainer":["CredentialsContainer"],"crossOriginIsolated":[],"crypto":[],"Crypto":["Crypto"],"CryptoKey":["CryptoKey"],"CryptoKeyPair":[],"CSPViolationReportBody":["CSPViolationReportBody"],"CSS":[null,{"cap":[],"ch":["CSS/factory_functions_static"],"cm":["CSS/factory_functions_static"],"cqb":["CSS/factory_functions_static"],"cqh":["CSS/factory_functions_static"],"cqi":["CSS/factory_functions_static"],"cqmax":["CSS/factory_functions_static"],"cqmin":["CSS/factory_functions_static"],"cqw":["CSS/factory_functions_static"],"deg":["CSS/factory_functions_static"],"dpcm":["CSS/factory_functions_static"],"dpi":["CSS/factory_functions_static"],"dppx":["CSS/factory_functions_static"],"dvb":["CSS/factory_functions_static"],"dvh":["CSS/factory_functions_static"],"dvi":["CSS/factory_functions_static"],"dvmax":["CSS/factory_functions_static"],"dvmin":["CSS/factory_functions_static"],"dvw":["CSS/factory_functions_static"],"em":["CSS/factory_functions_static"],"escape":["CSS/escape_static"],"ex":["CSS/factory_functions_static"],"fr":["CSS/factory_functions_static"],"grad":["CSS/factory_functions_static"],"highlights":[],"Hz":["CSS/factory_functions_static"],"ic":[],"kHz":["CSS/factory_functions_static"],"lh":[],"lvb":["CSS/factory_functions_static"],"lvh":["CSS/factory_functions_static"],"lvi":["CSS/factory_functions_static"],"lvmax":["CSS/factory_functions_static"],"lvmin":["CSS/factory_functions_static"],"lvw":["CSS/factory_functions_static"],"mm":["CSS/factory_functions_static"],"ms":["CSS/factory_functions_static"],"number":["CSS/factory_functions_static"],"pc":["CSS/factory_functions_static"],"percent":["CSS/factory_functions_static"],"pt":["CSS/factory_functions_static"],"px":["CSS/factory_functions_static"],"Q":["CSS/factory_functions_static"],"rad":["CSS/factory_functions_static"],"rcap":[],"rch":[],"registerProperty":["CSS/registerProperty_static"],"rem":["CSS/factory_functions_static"],"rex":[],"ric":[],"rlh":[],"s":["CSS/factory_functions_static"],"supports":["CSS/supports_static"],"svb":["CSS/factory_functions_static"],"svh":["CSS/factory_functions_static"],"svi":["CSS/factory_functions_static"],"svmax":["CSS/factory_functions_static"],"svmin":["CSS/factory_functions_static"],"svw":["CSS/factory_functions_static"],"turn":["CSS/factory_functions_static"],"vb":["CSS/factory_functions_static"],"vh":["CSS/factory_functions_static"],"vi":["CSS/factory_functions_static"],"vmax":["CSS/factory_functions_static"],"vmin":["CSS/factory_functions_static"],"vw":["CSS/factory_functions_static"]}],"CSSAnimation":["CSSAnimation"],"CSSConditionRule":["CSSConditionRule"],"CSSContainerRule":["CSSContainerRule"],"CSSCounterStyleRule":["CSSCounterStyleRule"],"CSSFontFaceRule":["CSSFontFaceRule"],"CSSFontFeatureValuesRule":["CSSFontFeatureValuesRule"],"CSSFontPaletteValuesRule":["CSSFontPaletteValuesRule"],"CSSGroupingRule":["CSSGroupingRule"],"CSSImageValue":["CSSImageValue"],"CSSImportRule":["CSSImportRule"],"CSSKeyframeRule":["CSSKeyframeRule"],"CSSKeyframesRule":["CSSKeyframesRule"],"CSSKeywordish":[],"CSSKeywordValue":["CSSKeywordValue"],"CSSLayerBlockRule":["CSSLayerBlockRule"],"CSSLayerStatementRule":["CSSLayerStatementRule"],"CSSMathClamp":[],"CSSMathInvert":["CSSMathInvert"],"CSSMathMax":["CSSMathMax"],"CSSMathMin":["CSSMathMin"],"CSSMathNegate":["CSSMathNegate"],"CSSMathOperator":[],"CSSMathProduct":["CSSMathProduct"],"CSSMathSum":["CSSMathSum"],"CSSMathValue":["CSSMathValue"],"CSSMatrixComponent":["CSSMatrixComponent"],"CSSMatrixComponentOptions":[],"CSSMediaRule":["CSSMediaRule"],"CSSNamespaceRule":["CSSNamespaceRule"],"CSSNestedDeclarations":["CSSNestedDeclarations"],"CSSNumberish":[],"CSSNumericArray":["CSSNumericArray"],"CSSNumericBaseType":[],"CSSNumericType":[],"CSSNumericValue":["CSSNumericValue"],"CSSPageRule":["CSSPageRule"],"CSSPerspective":["CSSPerspective"],"CSSPerspectiveValue":[],"CSSPropertyRule":["CSSPropertyRule"],"CSSRotate":["CSSRotate"],"CSSRule":["CSSRule"],"CSSRuleList":["CSSRuleList"],"CSSScale":["CSSScale"],"CSSScopeRule":["CSSScopeRule"],"CSSSkew":["CSSSkew"],"CSSSkewX":["CSSSkewX"],"CSSSkewY":["CSSSkewY"],"CSSStartingStyleRule":["CSSStartingStyleRule"],"CSSStyleDeclaration":["CSSStyleDeclaration"],"CSSStyleRule":["CSSStyleRule"],"CSSStyleSheet":["CSSStyleSheet"],"CSSStyleSheetInit":[],"CSSStyleValue":["CSSStyleValue"],"CSSSupportsRule":["CSSSupportsRule"],"CSSTransformComponent":["CSSTransformComponent"],"CSSTransformValue":["CSSTransformValue"],"CSSTransition":["CSSTransition"],"CSSTranslate":["CSSTranslate"],"CSSUnitValue":["CSSUnitValue"],"CSSUnparsedSegment":[],"CSSUnparsedValue":["CSSUnparsedValue"],"CSSVariableReferenceValue":["CSSVariableReferenceValue"],"CSSViewTransitionRule":[],"CustomElementConstructor":[],"CustomElementRegistry":["CustomElementRegistry"],"customElements":[],"CustomEvent":["CustomEvent"],"CustomEventInit":[],"CustomStateSet":["CustomStateSet"],"DataTransfer":["DataTransfer"],"DataTransferItem":["DataTransferItem"],"DataTransferItemList":["DataTransferItemList"],"DataView":[],"DataViewConstructor":[],"Date":["https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/Date"],"DateConstructor":[],"DecodeErrorCallback":[],"DecodeSuccessCallback":[],"decodeURI":[],"decodeURIComponent":[],"DecompressionStream":["DecompressionStream"],"DecoratorContext":[],"DecoratorMetadata":[],"DecoratorMetadataObject":[],"DedicatedWorkerGlobalScope":["DedicatedWorkerGlobalScope"],"DedicatedWorkerGlobalScopeEventMap":[],"DelayNode":["DelayNode"],"DelayOptions":[],"DeviceMotionEvent":["DeviceMotionEvent"],"DeviceMotionEventAcceleration":["DeviceMotionEventAcceleration"],"DeviceMotionEventAccelerationInit":[],"DeviceMotionEventInit":[],"DeviceMotionEventRotationRate":["DeviceMotionEventRotationRate"],"DeviceMotionEventRotationRateInit":[],"DeviceOrientationEvent":["DeviceOrientationEvent"],"DeviceOrientationEventInit":[],"devicePixelRatio":[],"DirectionSetting":[],"dispatchEvent":["EventTarget/dispatchEvent"],"DisplayCaptureSurfaceType":[],"DisplayMediaStreamOptions":[],"Disposable":[],"DisposableStack":[],"DisposableStackConstructor":[],"DistanceModelType":[],"document":[],"Document":["Document"],"DocumentEventMap":[],"DocumentFragment":["DocumentFragment"],"DocumentOrShadowRoot":["activeElement"],"DocumentReadyState":[],"DocumentTimeline":["DocumentTimeline"],"DocumentTimelineOptions":[],"DocumentType":["DocumentType"],"DocumentVisibilityState":[],"DOMException":["DOMException"],"DOMHighResTimeStamp":[],"DOMImplementation":["DOMImplementation"],"DOMMatrix":["DOMMatrix"],"DOMMatrix2DInit":[],"DOMMatrixInit":[],"DOMMatrixReadOnly":["DOMMatrixReadOnly"],"DOMParser":["DOMParser"],"DOMParserSupportedType":[],"DOMPoint":["DOMPoint"],"DOMPointInit":[],"DOMPointReadOnly":["DOMPointReadOnly"],"DOMQuad":["DOMQuad"],"DOMQuadInit":[],"DOMRect":["DOMRect"],"DOMRectInit":[],"DOMRectList":["DOMRectList"],"DOMRectReadOnly":["DOMRectReadOnly"],"DOMStringList":["DOMStringList"],"DOMStringMap":["DOMStringMap"],"DOMTokenList":["DOMTokenList"],"DoubleRange":[],"DragEvent":["DragEvent"],"DragEventInit":[],"DynamicsCompressorNode":["DynamicsCompressorNode"],"DynamicsCompressorOptions":[],"EcdhKeyDeriveParams":[],"EcdsaParams":[],"EcKeyAlgorithm":[],"EcKeyGenParams":[],"EcKeyImportParams":[],"EffectTiming":[],"Element":["Element"],"ElementContentEditable":["contentEditable"],"ElementCreationOptions":[],"ElementCSSInlineStyle":["attributeStyleMap"],"ElementDefinitionOptions":[],"ElementEventMap":[],"ElementInternals":["ElementInternals"],"ElementTagNameMap":[],"EncodedAudioChunk":["EncodedAudioChunk"],"EncodedAudioChunkInit":[],"EncodedAudioChunkMetadata":[],"EncodedAudioChunkOutputCallback":[],"EncodedAudioChunkType":[],"EncodedVideoChunk":["EncodedVideoChunk"],"EncodedVideoChunkInit":[],"EncodedVideoChunkMetadata":[],"EncodedVideoChunkOutputCallback":[],"EncodedVideoChunkType":[],"encodeURI":[],"encodeURIComponent":[],"EndingType":[],"EndOfStreamError":[],"Enumerator":[],"EnumeratorConstructor":[],"EpochTimeStamp":[],"Error":["https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/Error"],"ErrorCallback":[],"ErrorConstructor":[],"ErrorEvent":["ErrorEvent"],"ErrorEventInit":[],"ErrorOptions":[],"escape":[],"eval":[],"EvalError":[],"EvalErrorConstructor":[],"event":[],"Event":["Event"],"EventCounts":["EventCounts"],"EventInit":[],"EventListener":[],"EventListenerObject":[],"EventListenerOptions":[],"EventListenerOrEventListenerObject":[],"EventModifierInit":[],"EventSource":["EventSource"],"EventSourceEventMap":[],"EventSourceInit":[],"EventTarget":["EventTarget"],"Exclude":["https://www.typescriptlang.org/docs/handbook/utility-types.html#excludeuniontype-excludedmembers"],"EXT_blend_minmax":["EXT_blend_minmax"],"EXT_color_buffer_float":["EXT_color_buffer_float"],"EXT_color_buffer_half_float":["EXT_color_buffer_half_float"],"EXT_float_blend":["EXT_float_blend"],"EXT_frag_depth":["EXT_frag_depth"],"EXT_shader_texture_lod":["EXT_shader_texture_lod"],"EXT_sRGB":["EXT_sRGB"],"EXT_texture_compression_bptc":["EXT_texture_compression_bptc"],"EXT_texture_compression_rgtc":["EXT_texture_compression_rgtc"],"EXT_texture_filter_anisotropic":["EXT_texture_filter_anisotropic"],"EXT_texture_norm16":["EXT_texture_norm16"],"ExtendableCookieChangeEvent":["ExtendableCookieChangeEvent"],"ExtendableCookieChangeEventInit":[],"ExtendableEvent":["ExtendableEvent"],"ExtendableEventInit":[],"ExtendableMessageEvent":["ExtendableMessageEvent"],"ExtendableMessageEventInit":[],"external":[],"External":[],"Extract":["https://www.typescriptlang.org/docs/handbook/utility-types.html#extracttype-union"],"fetch":["Window/fetch"],"FetchEvent":["FetchEvent"],"FetchEventInit":[],"File":["File"],"FileCallback":[],"FileList":["FileList"],"FilePropertyBag":[],"FileReader":["FileReader"],"FileReaderEventMap":[],"FileReaderSync":["FileReaderSync"],"FileSystem":["FileSystem"],"FileSystemCreateWritableOptions":[],"FileSystemDirectoryEntry":["FileSystemDirectoryEntry"],"FileSystemDirectoryHandle":["FileSystemDirectoryHandle"],"FileSystemDirectoryHandleAsyncIterator":[],"FileSystemDirectoryReader":["FileSystemDirectoryReader"],"FileSystemEntriesCallback":[],"FileSystemEntry":["FileSystemEntry"],"FileSystemEntryCallback":[],"FileSystemFileEntry":["FileSystemFileEntry"],"FileSystemFileHandle":["FileSystemFileHandle"],"FileSystemFlags":[],"FileSystemGetDirectoryOptions":[],"FileSystemGetFileOptions":[],"FileSystemHandle":["FileSystemHandle"],"FileSystemHandleKind":[],"FileSystemReadWriteOptions":[],"FileSystemRemoveOptions":[],"FileSystemSyncAccessHandle":["FileSystemSyncAccessHandle"],"FileSystemWritableFileStream":["FileSystemWritableFileStream"],"FileSystemWriteChunkType":[],"FillLightMode":[],"FillMode":[],"FinalizationRegistry":[],"FinalizationRegistryConstructor":[],"FlatArray":[],"Float16Array":[],"Float16ArrayConstructor":[],"Float32Array":["https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/Float32Array"],"Float32ArrayConstructor":[],"Float32List":[],"Float64Array":["https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/Float64Array"],"Float64ArrayConstructor":[],"focus":["Window/focus"],"FocusEvent":["FocusEvent"],"FocusEventInit":[],"FocusOptions":[],"FontDisplay":[],"FontFace":["FontFace"],"FontFaceDescriptors":[],"FontFaceLoadStatus":[],"FontFaceSet":["FontFaceSet"],"FontFaceSetEventMap":[],"FontFaceSetLoadEvent":["FontFaceSetLoadEvent"],"FontFaceSetLoadEventInit":[],"FontFaceSetLoadStatus":[],"FontFaceSource":["fonts"],"fonts":[],"FormData":["FormData"],"FormDataEntryValue":[],"FormDataEvent":["FormDataEvent"],"FormDataEventInit":[],"FormDataIterator":[],"FragmentDirective":["FragmentDirective"],"frameElement":[],"FrameRequestCallback":[],"frames":[],"FrameType":[],"FullscreenNavigationUI":[],"FullscreenOptions":[],"Function":["https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/Function"],"FunctionConstructor":[],"FunctionStringCallback":[],"GainNode":["GainNode"],"GainOptions":[],"Gamepad":["Gamepad"],"GamepadButton":["GamepadButton"],"GamepadEffectParameters":[],"GamepadEvent":["GamepadEvent"],"GamepadEventInit":[],"GamepadHapticActuator":["GamepadHapticActuator"],"GamepadHapticEffectType":[],"GamepadHapticsResult":[],"GamepadMappingType":[],"Generator":[],"GeneratorFunction":[],"GeneratorFunctionConstructor":[],"GenericTransformStream":["readable"],"Geolocation":["Geolocation"],"GeolocationCoordinates":["GeolocationCoordinates"],"GeolocationPosition":["GeolocationPosition"],"GeolocationPositionError":["GeolocationPositionError"],"GetAnimationsOptions":[],"GetComposedRangesOptions":[],"getComputedStyle":["Window/getComputedStyle"],"GetHTMLOptions":[],"GetNotificationOptions":[],"GetRootNodeOptions":[],"getSelection":["Window/getSelection"],"GLbitfield":[],"GLboolean":[],"GLclampf":[],"GLenum":[],"GLfloat":[],"GLint":[],"GLint64":[],"GLintptr":[],"global":[],"GlobalCompositeOperation":[],"GlobalEventHandlers":["abort_event"],"GlobalEventHandlersEventMap":[],"GLsizei":[],"GLsizeiptr":[],"GLuint":[],"GLuint64":[],"GPUError":["GPUError"],"HardwareAcceleration":[],"HashAlgorithmIdentifier":[],"HashChangeEvent":["HashChangeEvent"],"HashChangeEventInit":[],"HdrMetadataType":[],"Headers":["Headers"],"HeadersInit":[],"HeadersIterator":[],"Highlight":["Highlight"],"HighlightRegistry":["HighlightRegistry"],"HighlightType":[],"history":[],"History":["History"],"HkdfParams":[],"HmacImportParams":[],"HmacKeyAlgorithm":[],"HmacKeyGenParams":[],"HTMLAllCollection":["HTMLAllCollection"],"HTMLAnchorElement":["HTMLAnchorElement"],"HTMLAreaElement":["HTMLAreaElement"],"HTMLAudioElement":["HTMLAudioElement"],"HTMLBaseElement":["HTMLBaseElement"],"HTMLBodyElement":["HTMLBodyElement"],"HTMLBodyElementEventMap":[],"HTMLBRElement":["HTMLBRElement"],"HTMLButtonElement":["HTMLButtonElement"],"HTMLCanvasElement":["HTMLCanvasElement"],"HTMLCollection":["namedItem"],"HTMLCollectionBase":["HTMLCollection"],"HTMLCollectionOf":[],"HTMLDataElement":["HTMLDataElement"],"HTMLDataListElement":["HTMLDataListElement"],"HTMLDetailsElement":["HTMLDetailsElement"],"HTMLDialogElement":["HTMLDialogElement"],"HTMLDirectoryElement":[],"HTMLDivElement":["HTMLDivElement"],"HTMLDListElement":["HTMLDListElement"],"HTMLDocument":[],"HTMLElement":["HTMLElement"],"HTMLElementDeprecatedTagNameMap":[],"HTMLElementEventMap":[],"HTMLElementTagNameMap":[],"HTMLEmbedElement":["HTMLEmbedElement"],"HTMLFieldSetElement":["HTMLFieldSetElement"],"HTMLFontElement":["HTMLFontElement"],"HTMLFormControlsCollection":["HTMLFormControlsCollection"],"HTMLFormElement":["HTMLFormElement"],"HTMLFrameElement":[],"HTMLFrameSetElement":["HTMLFrameSetElement"],"HTMLFrameSetElementEventMap":[],"HTMLHeadElement":["HTMLHeadElement"],"HTMLHeadingElement":["HTMLHeadingElement"],"HTMLHRElement":["HTMLHRElement"],"HTMLHtmlElement":["HTMLHtmlElement"],"HTMLHyperlinkElementUtils":["hash"],"HTMLIFrameElement":["HTMLIFrameElement"],"HTMLImageElement":["HTMLImageElement"],"HTMLInputElement":["HTMLInputElement"],"HTMLLabelElement":["HTMLLabelElement"],"HTMLLegendElement":["HTMLLegendElement"],"HTMLLIElement":["HTMLLIElement"],"HTMLLinkElement":["HTMLLinkElement"],"HTMLMapElement":["HTMLMapElement"],"HTMLMarqueeElement":["HTMLMarqueeElement"],"HTMLMediaElement":["HTMLMediaElement"],"HTMLMediaElementEventMap":[],"HTMLMenuElement":["HTMLMenuElement"],"HTMLMetaElement":["HTMLMetaElement"],"HTMLMeterElement":["HTMLMeterElement"],"HTMLModElement":["HTMLModElement"],"HTMLObjectElement":["HTMLObjectElement"],"HTMLOListElement":["HTMLOListElement"],"HTMLOptGroupElement":["HTMLOptGroupElement"],"HTMLOptionElement":["HTMLOptionElement"],"HTMLOptionsCollection":["HTMLOptionsCollection"],"HTMLOrSVGElement":["autofocus"],"HTMLOrSVGImageElement":[],"HTMLOrSVGScriptElement":[],"HTMLOutputElement":["HTMLOutputElement"],"HTMLParagraphElement":["HTMLParagraphElement"],"HTMLParamElement":["HTMLParamElement"],"HTMLPictureElement":["HTMLPictureElement"],"HTMLPreElement":["HTMLPreElement"],"HTMLProgressElement":["HTMLProgressElement"],"HTMLQuoteElement":["HTMLQuoteElement"],"HTMLScriptElement":["HTMLScriptElement"],"HTMLSelectElement":["HTMLSelectElement"],"HTMLSlotElement":["HTMLSlotElement"],"HTMLSourceElement":["HTMLSourceElement"],"HTMLSpanElement":["HTMLSpanElement"],"HTMLStyleElement":["HTMLStyleElement"],"HTMLTableCaptionElement":["HTMLTableCaptionElement"],"HTMLTableCellElement":["HTMLTableCellElement"],"HTMLTableColElement":["HTMLTableColElement"],"HTMLTableDataCellElement":[],"HTMLTableElement":["HTMLTableElement"],"HTMLTableHeaderCellElement":[],"HTMLTableRowElement":["HTMLTableRowElement"],"HTMLTableSectionElement":["HTMLTableSectionElement"],"HTMLTemplateElement":["HTMLTemplateElement"],"HTMLTextAreaElement":["HTMLTextAreaElement"],"HTMLTimeElement":["HTMLTimeElement"],"HTMLTitleElement":["HTMLTitleElement"],"HTMLTrackElement":["HTMLTrackElement"],"HTMLUListElement":["HTMLUListElement"],"HTMLUnknownElement":["HTMLUnknownElement"],"HTMLVideoElement":["HTMLVideoElement"],"HTMLVideoElementEventMap":[],"IArguments":[],"IDBCursor":["IDBCursor"],"IDBCursorDirection":[],"IDBCursorWithValue":["IDBCursorWithValue"],"IDBDatabase":["transaction"],"IDBDatabaseEventMap":[],"IDBDatabaseInfo":[],"IDBFactory":["IDBFactory"],"IDBIndex":["IDBIndex"],"IDBIndexParameters":[],"IDBKeyRange":["IDBKeyRange"],"IDBObjectStore":["createIndex"],"IDBObjectStoreParameters":[],"IDBOpenDBRequest":["IDBOpenDBRequest"],"IDBOpenDBRequestEventMap":[],"IDBRequest":["IDBRequest"],"IDBRequestEventMap":[],"IDBRequestReadyState":[],"IDBTransaction":["IDBTransaction"],"IDBTransactionDurability":[],"IDBTransactionEventMap":[],"IDBTransactionMode":[],"IDBTransactionOptions":[],"IDBValidKey":[],"IDBVersionChangeEvent":["IDBVersionChangeEvent"],"IDBVersionChangeEventInit":[],"IdleDeadline":["IdleDeadline"],"IdleRequestCallback":[],"IdleRequestOptions":[],"IIRFilterNode":["IIRFilterNode"],"IIRFilterOptions":[],"Image":[],"ImageBitmap":["ImageBitmap"],"ImageBitmapOptions":[],"ImageBitmapRenderingContext":["ImageBitmapRenderingContext"],"ImageBitmapRenderingContextSettings":[],"ImageBitmapSource":[],"ImageBufferSource":[],"ImageCapture":["ImageCapture"],"ImageData":["ImageData"],"ImageDataArray":[],"ImageDataSettings":[],"ImageDecodeOptions":[],"ImageDecoder":["ImageDecoder"],"ImageDecodeResult":[],"ImageDecoderInit":[],"ImageEncodeOptions":[],"ImageOrientation":[],"ImageSmoothingQuality":[],"ImageTrack":["ImageTrack"],"ImageTrackList":["ImageTrackList"],"ImportAssertions":[],"ImportAttributes":[],"ImportCallOptions":[],"ImportMeta":[],"ImportNodeOptions":[],"importScripts":["WorkerGlobalScope/importScripts"],"indexedDB":[],"Infinity":[],"innerHeight":[],"innerWidth":[],"InputDeviceInfo":["InputDeviceInfo"],"InputEvent":["InputEvent"],"InputEventInit":[],"InsertPosition":[],"InstanceType":["https://www.typescriptlang.org/docs/handbook/utility-types.html#instancetypetype"],"Int16Array":["https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/Int16Array"],"Int16ArrayConstructor":[],"Int32Array":["https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/Int32Array"],"Int32ArrayConstructor":[],"Int32List":[],"Int8Array":["https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/Int8Array"],"Int8ArrayConstructor":[],"IntersectionObserver":["IntersectionObserver"],"IntersectionObserverCallback":[],"IntersectionObserverEntry":["IntersectionObserverEntry"],"IntersectionObserverInit":[],"Intl":[null,{"Collator":[],"CollatorConstructor":[],"CollatorOptions":[],"DateTimeFormat":["https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/DateTimeFormat"],"DateTimeFormatConstructor":[],"DateTimeFormatOptions":["https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/Intl/DateTimeFormat/DateTimeFormat"],"DateTimeFormatPart":[],"DateTimeFormatPartTypes":[],"DateTimeFormatPartTypesRegistry":[],"DateTimeRangeFormatPart":[],"DisplayNames":[],"DisplayNamesFallback":[],"DisplayNamesLanguageDisplay":[],"DisplayNamesOptions":[],"DisplayNamesType":[],"getCanonicalLocales":[],"LDMLPluralRule":[],"ListFormat":[],"ListFormatLocaleMatcher":[],"ListFormatOptions":[],"ListFormatStyle":[],"ListFormatType":[],"Locale":[],"LocaleCollationCaseFirst":[],"LocaleHourCycleKey":[],"LocaleOptions":[],"LocalesArgument":[],"NumberFormat":["https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/NumberFormat"],"NumberFormatConstructor":[],"NumberFormatOptions":["https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/Intl/NumberFormat/NumberFormat"],"NumberFormatOptionsCurrencyDisplay":[],"NumberFormatOptionsCurrencyDisplayRegistry":[],"NumberFormatOptionsSignDisplay":[],"NumberFormatOptionsSignDisplayRegistry":[],"NumberFormatOptionsStyle":[],"NumberFormatOptionsStyleRegistry":[],"NumberFormatOptionsUseGrouping":[],"NumberFormatOptionsUseGroupingRegistry":[],"NumberFormatPart":[],"NumberFormatPartTypeRegistry":[],"NumberFormatPartTypes":[],"NumberRangeFormatPart":[],"PluralRules":[],"PluralRulesConstructor":[],"PluralRulesOptions":[],"PluralRuleType":[],"RelativeTimeFormat":[],"RelativeTimeFormatLocaleMatcher":[],"RelativeTimeFormatNumeric":[],"RelativeTimeFormatOptions":[],"RelativeTimeFormatPart":[],"RelativeTimeFormatStyle":[],"RelativeTimeFormatUnit":[],"RelativeTimeFormatUnitSingular":[],"ResolvedCollatorOptions":[],"ResolvedDateTimeFormatOptions":[],"ResolvedDisplayNamesOptions":[],"ResolvedListFormatOptions":[],"ResolvedNumberFormatOptions":[],"ResolvedNumberFormatOptionsUseGrouping":[],"ResolvedPluralRulesOptions":[],"ResolvedRelativeTimeFormatOptions":[],"ResolvedSegmenterOptions":[],"SegmentData":[],"Segmenter":[],"SegmenterOptions":[],"SegmentIterator":[],"Segments":[],"StringNumericLiteral":[],"supportedValuesOf":[],"UnicodeBCP47LocaleIdentifier":[]}],"isFinite":[],"isNaN":[],"isSecureContext":[],"Iterable":[],"IterableIterator":[],"IterationCompositeOperation":[],"Iterator":["https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/Iterator"],"IteratorConstructor":[],"IteratorObject":[],"IteratorObjectConstructor":[],"IteratorResult":[],"IteratorReturnResult":[],"IteratorYieldResult":[],"ITextWriter":[],"JSON":[],"JsonWebKey":[],"KeyAlgorithm":[],"KeyboardEvent":["KeyboardEvent"],"KeyboardEventInit":[],"KeyFormat":[],"Keyframe":[],"KeyframeAnimationOptions":[],"KeyframeEffect":["KeyframeEffect"],"KeyframeEffectOptions":[],"KeySystemTrackConfiguration":[],"KeyType":[],"KeyUsage":[],"KHR_parallel_shader_compile":["KHR_parallel_shader_compile"],"LargestContentfulPaint":["LargestContentfulPaint"],"LatencyMode":[],"length":[],"LineAlignSetting":[],"LineAndPositionSetting":[],"LinkStyle":["sheet"],"localStorage":[],"location":[],"Location":["Location"],"locationbar":[],"Lock":["Lock"],"LockGrantedCallback":[],"LockInfo":[],"LockManager":["LockManager"],"LockManagerSnapshot":[],"LockMode":[],"LockOptions":[],"LoginStatus":[],"Lowercase":["https://www.typescriptlang.org/docs/handbook/utility-types.html#intrinsic-string-manipulation-types"],"Map":["https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/Map"],"MapConstructor":[],"MapIterator":[],"matchMedia":["Window/matchMedia"],"Math":[],"MathMLElement":["MathMLElement"],"MathMLElementEventMap":[],"MathMLElementTagNameMap":[],"MediaCapabilities":["MediaCapabilities"],"MediaCapabilitiesDecodingInfo":[],"MediaCapabilitiesEncodingInfo":[],"MediaCapabilitiesInfo":[],"MediaCapabilitiesKeySystemConfiguration":[],"MediaConfiguration":[],"MediaDecodingConfiguration":[],"MediaDecodingType":[],"MediaDeviceInfo":["MediaDeviceInfo"],"MediaDeviceKind":[],"MediaDevices":["MediaDevices"],"MediaDevicesEventMap":[],"MediaElementAudioSourceNode":["MediaElementAudioSourceNode"],"MediaElementAudioSourceOptions":[],"MediaEncodingConfiguration":[],"MediaEncodingType":[],"MediaEncryptedEvent":["MediaEncryptedEvent"],"MediaEncryptedEventInit":[],"MediaError":["MediaError"],"MediaImage":[],"MediaKeyMessageEvent":["MediaKeyMessageEvent"],"MediaKeyMessageEventInit":[],"MediaKeyMessageType":[],"MediaKeys":["MediaKeys"],"MediaKeySession":["MediaKeySession"],"MediaKeySessionClosedReason":[],"MediaKeySessionEventMap":[],"MediaKeySessionType":[],"MediaKeysPolicy":[],"MediaKeysRequirement":[],"MediaKeyStatus":[],"MediaKeyStatusMap":["MediaKeyStatusMap"],"MediaKeyStatusMapIterator":[],"MediaKeySystemAccess":["MediaKeySystemAccess"],"MediaKeySystemConfiguration":[],"MediaKeySystemMediaCapability":[],"MediaList":["MediaList"],"MediaMetadata":["MediaMetadata"],"MediaMetadataInit":[],"MediaPositionState":[],"MediaProvider":[],"MediaQueryList":["MediaQueryList"],"MediaQueryListEvent":["MediaQueryListEvent"],"MediaQueryListEventInit":[],"MediaQueryListEventMap":[],"MediaRecorder":["MediaRecorder"],"MediaRecorderEventMap":[],"MediaRecorderOptions":[],"MediaSession":["MediaSession"],"MediaSessionAction":[],"MediaSessionActionDetails":[],"MediaSessionActionHandler":[],"MediaSessionPlaybackState":[],"MediaSettingsRange":[],"MediaSource":["MediaSource"],"MediaSourceEventMap":[],"MediaSourceHandle":["MediaSourceHandle"],"MediaStream":["MediaStream"],"MediaStreamAudioDestinationNode":["MediaStreamAudioDestinationNode"],"MediaStreamAudioSourceNode":["MediaStreamAudioSourceNode"],"MediaStreamAudioSourceOptions":[],"MediaStreamConstraints":[],"MediaStreamEventMap":[],"MediaStreamTrack":["MediaStreamTrack"],"MediaStreamTrackEvent":["MediaStreamTrackEvent"],"MediaStreamTrackEventInit":[],"MediaStreamTrackEventMap":[],"MediaStreamTrackProcessor":["MediaStreamTrackProcessor"],"MediaStreamTrackProcessorInit":[],"MediaStreamTrackState":[],"MediaTrackCapabilities":[],"MediaTrackConstraints":[],"MediaTrackConstraintSet":[],"MediaTrackSettings":[],"MediaTrackSupportedConstraints":[],"menubar":[],"MessageChannel":["MessageChannel"],"MessageEvent":["MessageEvent"],"MessageEventInit":[],"MessageEventSource":[],"MessageEventTarget":["message_event"],"MessageEventTargetEventMap":[],"MessagePort":["MessagePort"],"MessagePortEventMap":[],"MethodDecorator":[],"MIDIAccess":["MIDIAccess"],"MIDIAccessEventMap":[],"MIDIConnectionEvent":["MIDIConnectionEvent"],"MIDIConnectionEventInit":[],"MIDIInput":["MIDIInput"],"MIDIInputEventMap":[],"MIDIInputMap":["MIDIInputMap"],"MIDIMessageEvent":["MIDIMessageEvent"],"MIDIMessageEventInit":[],"MIDIOptions":[],"MIDIOutput":["send"],"MIDIOutputMap":["MIDIOutputMap"],"MIDIPort":["MIDIPort"],"MIDIPortConnectionState":[],"MIDIPortDeviceState":[],"MIDIPortEventMap":[],"MIDIPortType":[],"MimeType":["MimeType"],"MimeTypeArray":["MimeTypeArray"],"MouseEvent":["MouseEvent"],"MouseEventInit":[],"moveBy":["Window/moveBy"],"moveTo":["Window/moveTo"],"MultiCacheQueryOptions":[],"MutationCallback":[],"MutationObserver":["MutationObserver"],"MutationObserverInit":[],"MutationRecord":["MutationRecord"],"MutationRecordType":[],"name":[],"NamedCurve":[],"NamedNodeMap":["NamedNodeMap"],"NaN":[],"NavigationActivation":["NavigationActivation"],"NavigationHistoryEntry":["NavigationHistoryEntry"],"NavigationHistoryEntryEventMap":[],"NavigationPreloadManager":["NavigationPreloadManager"],"NavigationPreloadState":[],"NavigationTimingType":[],"NavigationType":[],"navigator":[],"Navigator":["requestMediaKeySystemAccess"],"NavigatorAutomationInformation":["webdriver"],"NavigatorBadge":["clearAppBadge"],"NavigatorConcurrentHardware":["hardwareConcurrency"],"NavigatorContentUtils":["registerProtocolHandler"],"NavigatorCookies":["cookieEnabled"],"NavigatorID":["appCodeName"],"NavigatorLanguage":["language"],"NavigatorLocks":["locks"],"NavigatorLogin":["NavigatorLogin"],"NavigatorOnLine":["onLine"],"NavigatorPlugins":["mimeTypes"],"NavigatorStorage":["storage"],"NewableFunction":[],"Node":["Node"],"NodeFilter":[],"NodeIterator":["NodeIterator"],"NodeList":["NodeList"],"NodeListOf":[],"NoInfer":["https://www.typescriptlang.org/docs/handbook/utility-types.html#noinfertype"],"NonDocumentTypeChildNode":["nextElementSibling"],"NonElementParentNode":["getElementById"],"NonNullable":["https://www.typescriptlang.org/docs/handbook/utility-types.html#extracttype-union"],"Notification":["Notification"],"NotificationDirection":[],"NotificationEvent":["NotificationEvent"],"NotificationEventInit":[],"NotificationEventMap":[],"NotificationOptions":[],"NotificationPermission":[],"NotificationPermissionCallback":[],"Number":[],"NumberConstructor":[],"Object":[],"ObjectConstructor":[],"OES_draw_buffers_indexed":["OES_draw_buffers_indexed"],"OES_element_index_uint":["OES_element_index_uint"],"OES_fbo_render_mipmap":["OES_fbo_render_mipmap"],"OES_standard_derivatives":["OES_standard_derivatives"],"OES_texture_float":["OES_texture_float"],"OES_texture_float_linear":["OES_texture_float_linear"],"OES_texture_half_float":["OES_texture_half_float"],"OES_texture_half_float_linear":["OES_texture_half_float_linear"],"OES_vertex_array_object":["OES_vertex_array_object"],"OfflineAudioCompletionEvent":["OfflineAudioCompletionEvent"],"OfflineAudioCompletionEventInit":[],"OfflineAudioContext":["OfflineAudioContext"],"OfflineAudioContextEventMap":[],"OfflineAudioContextOptions":[],"OffscreenCanvas":["OffscreenCanvas"],"OffscreenCanvasEventMap":[],"OffscreenCanvasRenderingContext2D":["OffscreenCanvasRenderingContext2D"],"OffscreenRenderingContext":[],"OffscreenRenderingContextId":[],"Omit":["https://www.typescriptlang.org/docs/handbook/utility-types.html#omittype-keys"],"OmitThisParameter":["https://www.typescriptlang.org/docs/handbook/utility-types.html#omitthisparametertype"],"onabort":[],"onafterprint":[],"onanimationcancel":[],"onanimationend":[],"onanimationiteration":[],"onanimationstart":[],"onauxclick":[],"onbeforeinput":[],"onbeforematch":[],"onbeforeprint":[],"onbeforetoggle":[],"onbeforeunload":[],"OnBeforeUnloadEventHandler":[],"OnBeforeUnloadEventHandlerNonNull":[],"onblur":[],"oncancel":[],"oncanplay":[],"oncanplaythrough":[],"onchange":[],"onclick":[],"onclose":[],"oncontextlost":[],"oncontextmenu":[],"oncontextrestored":[],"oncopy":[],"oncuechange":[],"oncut":[],"ondblclick":[],"ondevicemotion":[],"ondeviceorientation":[],"ondeviceorientationabsolute":[],"ondrag":[],"ondragend":[],"ondragenter":[],"ondragleave":[],"ondragover":[],"ondragstart":[],"ondrop":[],"ondurationchange":[],"onemptied":[],"onended":[],"onerror":[],"OnErrorEventHandler":[],"OnErrorEventHandlerNonNull":[],"onfocus":[],"onformdata":[],"ongamepadconnected":[],"ongamepaddisconnected":[],"ongotpointercapture":[],"onhashchange":[],"oninput":[],"oninvalid":[],"onkeydown":[],"onkeypress":[],"onkeyup":[],"onlanguagechange":[],"onload":[],"onloadeddata":[],"onloadedmetadata":[],"onloadstart":[],"onlostpointercapture":[],"onmessage":[],"onmessageerror":[],"onmousedown":[],"onmouseenter":[],"onmouseleave":[],"onmousemove":[],"onmouseout":[],"onmouseover":[],"onmouseup":[],"onoffline":[],"ononline":[],"onorientationchange":[],"onpagehide":[],"onpagereveal":[],"onpageshow":[],"onpageswap":[],"onpaste":[],"onpause":[],"onplay":[],"onplaying":[],"onpointercancel":[],"onpointerdown":[],"onpointerenter":[],"onpointerleave":[],"onpointermove":[],"onpointerout":[],"onpointerover":[],"onpointerrawupdate":[],"onpointerup":[],"onpopstate":[],"onprogress":[],"onratechange":[],"onrejectionhandled":[],"onreset":[],"onresize":[],"onrtctransform":[],"onscroll":[],"onscrollend":[],"onsecuritypolicyviolation":[],"onseeked":[],"onseeking":[],"onselect":[],"onselectionchange":[],"onselectstart":[],"onslotchange":[],"onstalled":[],"onstorage":[],"onsubmit":[],"onsuspend":[],"ontimeupdate":[],"ontoggle":[],"ontouchcancel":[],"ontouchend":[],"ontouchmove":[],"ontouchstart":[],"ontransitioncancel":[],"ontransitionend":[],"ontransitionrun":[],"ontransitionstart":[],"onunhandledrejection":[],"onunload":[],"onvolumechange":[],"onwaiting":[],"onwebkitanimationend":[],"onwebkitanimationiteration":[],"onwebkitanimationstart":[],"onwebkittransitionend":[],"onwheel":[],"open":["Window/open"],"opener":[],"Option":[],"OptionalEffectTiming":[],"OptionalPostfixToken":[],"OptionalPrefixToken":[],"OpusBitstreamFormat":[],"OpusEncoderConfig":[],"orientation":[],"OrientationType":[],"origin":[],"originAgentCluster":[],"OscillatorNode":["OscillatorNode"],"OscillatorOptions":[],"OscillatorType":[],"outerHeight":[],"outerWidth":[],"OverconstrainedError":["OverconstrainedError"],"OverSampleType":[],"OVR_multiview2":["OVR_multiview2"],"PageRevealEvent":["PageRevealEvent"],"PageRevealEventInit":[],"PageSwapEvent":["PageSwapEvent"],"PageSwapEventInit":[],"PageTransitionEvent":["PageTransitionEvent"],"PageTransitionEventInit":[],"pageXOffset":[],"pageYOffset":[],"PannerNode":["PannerNode"],"PannerOptions":[],"PanningModelType":[],"ParameterDecorator":[],"Parameters":["https://www.typescriptlang.org/docs/handbook/utility-types.html#parameterstype"],"parent":[],"ParentNode":["childElementCount"],"parseFloat":[],"parseInt":[],"Partial":["https://www.typescriptlang.org/docs/handbook/utility-types.html#partialtype"],"Path2D":["Path2D"],"PayerErrors":[],"PaymentAddress":["ContactAddress"],"PaymentComplete":[],"PaymentCurrencyAmount":[],"PaymentDetailsBase":[],"PaymentDetailsInit":[],"PaymentDetailsModifier":[],"PaymentDetailsUpdate":[],"PaymentItem":[],"PaymentMethodChangeEvent":["PaymentMethodChangeEvent"],"PaymentMethodChangeEventInit":[],"PaymentMethodData":[],"PaymentOptions":[],"PaymentRequest":["PaymentRequest"],"PaymentRequestEventMap":[],"PaymentRequestUpdateEvent":["PaymentRequestUpdateEvent"],"PaymentRequestUpdateEventInit":[],"PaymentResponse":["PaymentResponse"],"PaymentResponseEventMap":[],"PaymentShippingOption":[],"PaymentShippingType":[],"PaymentValidationErrors":[],"Pbkdf2Params":[],"performance":[],"Performance":["Performance"],"PerformanceEntry":["PerformanceEntry"],"PerformanceEntryList":[],"PerformanceEventMap":[],"PerformanceEventTiming":["PerformanceEventTiming"],"PerformanceMark":["PerformanceMark"],"PerformanceMarkOptions":[],"PerformanceMeasure":["PerformanceMeasure"],"PerformanceMeasureOptions":[],"PerformanceNavigation":["PerformanceNavigation"],"PerformanceNavigationTiming":["PerformanceNavigationTiming"],"PerformanceObserver":["PerformanceObserver"],"PerformanceObserverCallback":[],"PerformanceObserverEntryList":["PerformanceObserverEntryList"],"PerformanceObserverInit":[],"PerformancePaintTiming":["PerformancePaintTiming"],"PerformanceResourceTiming":["PerformanceResourceTiming"],"PerformanceServerTiming":["PerformanceServerTiming"],"PerformanceTiming":["PerformanceTiming"],"PeriodicWave":["PeriodicWave"],"PeriodicWaveConstraints":[],"PeriodicWaveOptions":[],"PermissionDescriptor":[],"PermissionName":[],"Permissions":["Permissions"],"PermissionState":[],"PermissionStatus":["PermissionStatus"],"PermissionStatusEventMap":[],"personalbar":[],"PhotoCapabilities":[],"PhotoSettings":[],"Pick":["https://www.typescriptlang.org/docs/handbook/utility-types.html#picktype-keys"],"PictureInPictureEvent":["PictureInPictureEvent"],"PictureInPictureEventInit":[],"PictureInPictureWindow":["PictureInPictureWindow"],"PictureInPictureWindowEventMap":[],"PlaneLayout":[],"PlaybackDirection":[],"Plugin":["Plugin"],"PluginArray":["PluginArray"],"PointerEvent":["PointerEvent"],"PointerEventInit":[],"PointerLockOptions":[],"PopoverInvokerElement":["popoverTargetAction"],"PopStateEvent":["PopStateEvent"],"PopStateEventInit":[],"PositionAlignSetting":[],"PositionCallback":[],"PositionErrorCallback":[],"PositionOptions":[],"postMessage":["DedicatedWorkerGlobalScope/postMessage"],"PredefinedColorSpace":[],"PremultiplyAlpha":[],"PresentationStyle":[],"print":["Window/print"],"ProcessingInstruction":["ProcessingInstruction"],"ProgressEvent":["ProgressEvent"],"ProgressEventInit":[],"Promise":["https://next.gha.afd.arcgis.com/javascript/latest/programming-patterns/"],"PromiseConstructor":[],"PromiseConstructorLike":[],"PromiseFulfilledResult":[],"PromiseLike":[],"PromiseRejectedResult":[],"PromiseRejectionEvent":["PromiseRejectionEvent"],"PromiseRejectionEventInit":[],"PromiseSettledResult":[],"PromiseWithResolvers":[],"prompt":["Window/prompt"],"PropertyDecorator":[],"PropertyDefinition":[],"PropertyDescriptor":[],"PropertyDescriptorMap":[],"PropertyIndexedKeyframes":[],"PropertyKey":[],"Proxy":[],"ProxyConstructor":[],"ProxyHandler":[],"PublicKeyCredential":["PublicKeyCredential"],"PublicKeyCredentialClientCapabilities":[],"PublicKeyCredentialCreationOptions":[],"PublicKeyCredentialCreationOptionsJSON":[],"PublicKeyCredentialDescriptor":[],"PublicKeyCredentialDescriptorJSON":[],"PublicKeyCredentialEntity":[],"PublicKeyCredentialJSON":[],"PublicKeyCredentialParameters":[],"PublicKeyCredentialRequestOptions":[],"PublicKeyCredentialRequestOptionsJSON":[],"PublicKeyCredentialRpEntity":[],"PublicKeyCredentialType":[],"PublicKeyCredentialUserEntity":[],"PublicKeyCredentialUserEntityJSON":[],"PushEncryptionKeyName":[],"PushEvent":["PushEvent"],"PushEventInit":[],"PushManager":["PushManager"],"PushMessageData":["PushMessageData"],"PushMessageDataInit":[],"PushSubscription":["PushSubscription"],"PushSubscriptionChangeEvent":[],"PushSubscriptionChangeEventInit":[],"PushSubscriptionJSON":[],"PushSubscriptionOptions":["PushSubscriptionOptions"],"PushSubscriptionOptionsInit":[],"queueMicrotask":["Window/queueMicrotask"],"QueuingStrategy":[],"QueuingStrategyInit":[],"QueuingStrategySize":[],"RadioNodeList":["RadioNodeList"],"Range":["Range"],"RangeError":[],"RangeErrorConstructor":[],"ReadableByteStreamController":["ReadableByteStreamController"],"ReadableStream":["ReadableStream"],"ReadableStreamAsyncIterator":[],"ReadableStreamBYOBReader":["ReadableStreamBYOBReader"],"ReadableStreamBYOBRequest":["ReadableStreamBYOBRequest"],"ReadableStreamController":[],"ReadableStreamDefaultController":["ReadableStreamDefaultController"],"ReadableStreamDefaultReader":["ReadableStreamDefaultReader"],"ReadableStreamGenericReader":["closed"],"ReadableStreamGetReaderOptions":[],"ReadableStreamIteratorOptions":[],"ReadableStreamReadDoneResult":[],"ReadableStreamReader":[],"ReadableStreamReaderMode":[],"ReadableStreamReadResult":[],"ReadableStreamReadValueResult":[],"ReadableStreamType":[],"ReadableWritablePair":[],"Readonly":["https://www.typescriptlang.org/docs/handbook/utility-types.html#readonlytype"],"ReadonlyArray":[],"ReadonlyMap":[],"ReadonlySet":[],"ReadonlySetLike":[],"ReadyState":[],"Record":["https://www.typescriptlang.org/docs/handbook/utility-types.html#recordkeys-type"],"RecordingState":[],"RedEyeReduction":[],"ReferenceError":[],"ReferenceErrorConstructor":[],"ReferrerPolicy":[],"Reflect":[null,{"apply":[],"construct":[],"defineProperty":[],"deleteProperty":[],"get":[],"getOwnPropertyDescriptor":[],"getPrototypeOf":[],"has":[],"isExtensible":[],"ownKeys":[],"preventExtensions":[],"set":[],"setPrototypeOf":[]}],"RegExp":["https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/RegExp"],"RegExpConstructor":[],"RegExpExecArray":[],"RegExpIndicesArray":[],"RegExpMatchArray":[],"RegExpStringIterator":[],"RegistrationOptions":[],"releaseEvents":["Window/releaseEvents"],"RemotePlayback":["RemotePlayback"],"RemotePlaybackAvailabilityCallback":[],"RemotePlaybackEventMap":[],"RemotePlaybackState":[],"removeEventListener":[],"RenderingContext":[],"Report":["Report"],"ReportBody":["ReportBody"],"reportError":["Window/reportError"],"ReportingObserver":["ReportingObserver"],"ReportingObserverCallback":[],"ReportingObserverOptions":[],"ReportList":[],"Request":["Request"],"requestAnimationFrame":["DedicatedWorkerGlobalScope/requestAnimationFrame"],"RequestCache":[],"RequestCredentials":[],"RequestDestination":[],"requestIdleCallback":["Window/requestIdleCallback"],"RequestInfo":[],"RequestInit":[],"RequestMode":[],"RequestPriority":[],"RequestRedirect":[],"Required":["https://www.typescriptlang.org/docs/handbook/utility-types.html#requiredtype"],"ResidentKeyRequirement":[],"resizeBy":["Window/resizeBy"],"ResizeObserver":["ResizeObserver"],"ResizeObserverBoxOptions":[],"ResizeObserverCallback":[],"ResizeObserverEntry":["ResizeObserverEntry"],"ResizeObserverOptions":[],"ResizeObserverSize":["ResizeObserverSize"],"ResizeQuality":[],"resizeTo":["Window/resizeTo"],"Response":["Response"],"ResponseInit":[],"ResponseType":[],"ReturnType":["https://www.typescriptlang.org/docs/handbook/utility-types.html#returntypetype"],"RsaHashedImportParams":[],"RsaHashedKeyAlgorithm":[],"RsaHashedKeyGenParams":[],"RsaKeyAlgorithm":[],"RsaKeyGenParams":[],"RsaOaepParams":[],"RsaOtherPrimesInfo":[],"RsaPssParams":[],"RTCAnswerOptions":[],"RTCBundlePolicy":[],"RTCCertificate":["RTCCertificate"],"RTCCertificateExpiration":[],"RTCConfiguration":[],"RTCDataChannel":["RTCDataChannel"],"RTCDataChannelEvent":["RTCDataChannelEvent"],"RTCDataChannelEventInit":[],"RTCDataChannelEventMap":[],"RTCDataChannelInit":[],"RTCDataChannelState":[],"RTCDegradationPreference":[],"RTCDtlsFingerprint":[],"RTCDtlsRole":[],"RTCDtlsTransport":["RTCDtlsTransport"],"RTCDtlsTransportEventMap":[],"RTCDtlsTransportState":[],"RTCDTMFSender":["RTCDTMFSender"],"RTCDTMFSenderEventMap":[],"RTCDTMFToneChangeEvent":["RTCDTMFToneChangeEvent"],"RTCDTMFToneChangeEventInit":[],"RTCEncodedAudioFrame":["RTCEncodedAudioFrame"],"RTCEncodedAudioFrameMetadata":[],"RTCEncodedFrameMetadata":[],"RTCEncodedVideoFrame":["RTCEncodedVideoFrame"],"RTCEncodedVideoFrameMetadata":[],"RTCEncodedVideoFrameType":[],"RTCError":["RTCError"],"RTCErrorDetailType":[],"RTCErrorEvent":["RTCErrorEvent"],"RTCErrorEventInit":[],"RTCErrorInit":[],"RTCIceCandidate":["RTCIceCandidate"],"RTCIceCandidateInit":[],"RTCIceCandidatePair":[],"RTCIceCandidatePairStats":[],"RTCIceCandidateType":[],"RTCIceComponent":[],"RTCIceConnectionState":[],"RTCIceGathererState":[],"RTCIceGatheringState":[],"RTCIceProtocol":[],"RTCIceRole":[],"RTCIceServer":[],"RTCIceTcpCandidateType":[],"RTCIceTransport":["RTCIceTransport"],"RTCIceTransportEventMap":[],"RTCIceTransportPolicy":[],"RTCIceTransportState":[],"RTCInboundRtpStreamStats":[],"RTCLocalIceCandidateInit":[],"RTCLocalSessionDescriptionInit":[],"RTCOfferAnswerOptions":[],"RTCOfferOptions":[],"RTCOutboundRtpStreamStats":[],"RTCPeerConnection":["RTCPeerConnection"],"RTCPeerConnectionErrorCallback":[],"RTCPeerConnectionEventMap":[],"RTCPeerConnectionIceErrorEvent":["RTCPeerConnectionIceErrorEvent"],"RTCPeerConnectionIceErrorEventInit":[],"RTCPeerConnectionIceEvent":["RTCPeerConnectionIceEvent"],"RTCPeerConnectionIceEventInit":[],"RTCPeerConnectionState":[],"RTCPriorityType":[],"RTCQualityLimitationReason":[],"RTCReceivedRtpStreamStats":[],"RTCRtcpMuxPolicy":[],"RTCRtcpParameters":[],"RTCRtpCapabilities":[],"RTCRtpCodec":[],"RTCRtpCodecParameters":[],"RTCRtpCodingParameters":[],"RTCRtpContributingSource":[],"RTCRtpEncodingParameters":[],"RTCRtpHeaderExtensionCapability":[],"RTCRtpHeaderExtensionParameters":[],"RTCRtpParameters":[],"RTCRtpReceiveParameters":[],"RTCRtpReceiver":["RTCRtpReceiver"],"RTCRtpScriptTransform":["RTCRtpScriptTransform"],"RTCRtpScriptTransformer":["RTCRtpScriptTransformer"],"RTCRtpSender":["RTCRtpSender"],"RTCRtpSendParameters":[],"RTCRtpStreamStats":[],"RTCRtpSynchronizationSource":[],"RTCRtpTransceiver":["setCodecPreferences"],"RTCRtpTransceiverDirection":[],"RTCRtpTransceiverInit":[],"RTCRtpTransform":[],"RTCSctpTransport":["RTCSctpTransport"],"RTCSctpTransportEventMap":[],"RTCSctpTransportState":[],"RTCSdpType":[],"RTCSentRtpStreamStats":[],"RTCSessionDescription":["RTCSessionDescription"],"RTCSessionDescriptionCallback":[],"RTCSessionDescriptionInit":[],"RTCSetParameterOptions":[],"RTCSignalingState":[],"RTCStats":[],"RTCStatsIceCandidatePairState":[],"RTCStatsReport":["RTCStatsReport"],"RTCStatsType":[],"RTCTrackEvent":["RTCTrackEvent"],"RTCTrackEventInit":[],"RTCTransformEvent":["RTCTransformEvent"],"RTCTransportStats":[],"SafeArray":[],"screen":[],"Screen":["Screen"],"screenLeft":[],"ScreenOrientation":["ScreenOrientation"],"ScreenOrientationEventMap":[],"screenTop":[],"screenX":[],"screenY":[],"ScriptProcessorNode":["ScriptProcessorNode"],"ScriptProcessorNodeEventMap":[],"scroll":["Window/scroll"],"scrollbars":[],"ScrollBehavior":[],"scrollBy":["Window/scrollBy"],"ScrollIntoViewOptions":[],"ScrollLogicalPosition":[],"ScrollOptions":[],"ScrollRestoration":[],"ScrollSetting":[],"scrollTo":["Window/scrollTo"],"ScrollToOptions":[],"scrollX":[],"scrollY":[],"SecurityPolicyViolationEvent":["SecurityPolicyViolationEvent"],"SecurityPolicyViolationEventDisposition":[],"SecurityPolicyViolationEventInit":[],"Selection":["Selection"],"SelectionMode":[],"self":[],"ServiceWorker":["ServiceWorker"],"ServiceWorkerContainer":["ServiceWorkerContainer"],"ServiceWorkerContainerEventMap":[],"ServiceWorkerEventMap":[],"ServiceWorkerGlobalScope":["ServiceWorkerGlobalScope"],"ServiceWorkerGlobalScopeEventMap":[],"ServiceWorkerRegistration":["ServiceWorkerRegistration"],"ServiceWorkerRegistrationEventMap":[],"ServiceWorkerState":[],"ServiceWorkerUpdateViaCache":[],"sessionStorage":[],"Set":["https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/Set"],"SetConstructor":[],"setInterval":["Window/setInterval"],"SetIterator":[],"setTimeout":["Window/setTimeout"],"ShadowRoot":["ShadowRoot"],"ShadowRootEventMap":[],"ShadowRootInit":[],"ShadowRootMode":[],"SharedArrayBuffer":[],"SharedArrayBufferConstructor":[],"ShareData":[],"SharedWorker":["SharedWorker"],"SharedWorkerGlobalScope":["SharedWorkerGlobalScope"],"SharedWorkerGlobalScopeEventMap":[],"SlotAssignmentMode":[],"Slottable":["assignedSlot"],"SourceBuffer":["SourceBuffer"],"SourceBufferEventMap":[],"SourceBufferList":["SourceBufferList"],"SourceBufferListEventMap":[],"SpeechRecognitionAlternative":["SpeechRecognitionAlternative"],"SpeechRecognitionResult":["SpeechRecognitionResult"],"SpeechRecognitionResultList":["SpeechRecognitionResultList"],"speechSynthesis":[],"SpeechSynthesis":["SpeechSynthesis"],"SpeechSynthesisErrorCode":[],"SpeechSynthesisErrorEvent":["SpeechSynthesisErrorEvent"],"SpeechSynthesisErrorEventInit":[],"SpeechSynthesisEvent":["SpeechSynthesisEvent"],"SpeechSynthesisEventInit":[],"SpeechSynthesisEventMap":[],"SpeechSynthesisUtterance":["SpeechSynthesisUtterance"],"SpeechSynthesisUtteranceEventMap":[],"SpeechSynthesisVoice":["SpeechSynthesisVoice"],"StartViewTransitionOptions":[],"StaticRange":["StaticRange"],"StaticRangeInit":[],"status":[],"statusbar":[],"StereoPannerNode":["StereoPannerNode"],"StereoPannerOptions":[],"stop":["Window/stop"],"Storage":["Storage"],"StorageEstimate":[],"StorageEvent":["StorageEvent"],"StorageEventInit":[],"StorageManager":["StorageManager"],"StreamPipeOptions":[],"String":[],"StringConstructor":[],"StringIterator":[],"structuredClone":["Window/structuredClone"],"StructuredSerializeOptions":[],"StyleMedia":[],"StylePropertyMap":["StylePropertyMap"],"StylePropertyMapReadOnly":["StylePropertyMapReadOnly"],"StylePropertyMapReadOnlyIterator":[],"StyleSheet":["StyleSheet"],"StyleSheetList":["StyleSheetList"],"SubmitEvent":["SubmitEvent"],"SubmitEventInit":[],"SubtleCrypto":["deriveKey"],"SuppressedError":[],"SuppressedErrorConstructor":[],"SVGAElement":["SVGAElement"],"SVGAngle":["SVGAngle"],"SVGAnimatedAngle":["SVGAnimatedAngle"],"SVGAnimatedBoolean":["SVGAnimatedBoolean"],"SVGAnimatedEnumeration":["SVGAnimatedEnumeration"],"SVGAnimatedInteger":["SVGAnimatedInteger"],"SVGAnimatedLength":["SVGAnimatedLength"],"SVGAnimatedLengthList":["SVGAnimatedLengthList"],"SVGAnimatedNumber":["SVGAnimatedNumber"],"SVGAnimatedNumberList":["SVGAnimatedNumberList"],"SVGAnimatedPoints":["animatedPoints"],"SVGAnimatedPreserveAspectRatio":["SVGAnimatedPreserveAspectRatio"],"SVGAnimatedRect":["SVGAnimatedRect"],"SVGAnimatedString":["SVGAnimatedString"],"SVGAnimatedTransformList":["SVGAnimatedTransformList"],"SVGAnimateElement":["SVGAnimateElement"],"SVGAnimateMotionElement":["SVGAnimateMotionElement"],"SVGAnimateTransformElement":["SVGAnimateTransformElement"],"SVGAnimationElement":["SVGAnimationElement"],"SVGBoundingBoxOptions":[],"SVGCircleElement":["SVGCircleElement"],"SVGClipPathElement":["SVGClipPathElement"],"SVGComponentTransferFunctionElement":["SVGComponentTransferFunctionElement"],"SVGDefsElement":["SVGDefsElement"],"SVGDescElement":["SVGDescElement"],"SVGElement":["SVGElement"],"SVGElementEventMap":[],"SVGElementTagNameMap":[],"SVGEllipseElement":["SVGEllipseElement"],"SVGFEBlendElement":["SVGFEBlendElement"],"SVGFEColorMatrixElement":["SVGFEColorMatrixElement"],"SVGFEComponentTransferElement":["SVGFEComponentTransferElement"],"SVGFECompositeElement":["SVGFECompositeElement"],"SVGFEConvolveMatrixElement":["SVGFEConvolveMatrixElement"],"SVGFEDiffuseLightingElement":["SVGFEDiffuseLightingElement"],"SVGFEDisplacementMapElement":["SVGFEDisplacementMapElement"],"SVGFEDistantLightElement":["SVGFEDistantLightElement"],"SVGFEDropShadowElement":["SVGFEDropShadowElement"],"SVGFEFloodElement":["SVGFEFloodElement"],"SVGFEFuncAElement":["SVGFEFuncAElement"],"SVGFEFuncBElement":["SVGFEFuncBElement"],"SVGFEFuncGElement":["SVGFEFuncGElement"],"SVGFEFuncRElement":["SVGFEFuncRElement"],"SVGFEGaussianBlurElement":["SVGFEGaussianBlurElement"],"SVGFEImageElement":["SVGFEImageElement"],"SVGFEMergeElement":["SVGFEMergeElement"],"SVGFEMergeNodeElement":["SVGFEMergeNodeElement"],"SVGFEMorphologyElement":["SVGFEMorphologyElement"],"SVGFEOffsetElement":["SVGFEOffsetElement"],"SVGFEPointLightElement":["SVGFEPointLightElement"],"SVGFESpecularLightingElement":["SVGFESpecularLightingElement"],"SVGFESpotLightElement":["SVGFESpotLightElement"],"SVGFETileElement":["SVGFETileElement"],"SVGFETurbulenceElement":["SVGFETurbulenceElement"],"SVGFilterElement":["SVGFilterElement"],"SVGFilterPrimitiveStandardAttributes":["height"],"SVGFitToViewBox":["preserveAspectRatio"],"SVGForeignObjectElement":["SVGForeignObjectElement"],"SVGGElement":["SVGGElement"],"SVGGeometryElement":["SVGGeometryElement"],"SVGGradientElement":["SVGGradientElement"],"SVGGraphicsElement":["SVGGraphicsElement"],"SVGImageElement":["SVGImageElement"],"SVGLength":["SVGLength"],"SVGLengthList":["SVGLengthList"],"SVGLinearGradientElement":["SVGLinearGradientElement"],"SVGLineElement":["SVGLineElement"],"SVGMarkerElement":["SVGMarkerElement"],"SVGMaskElement":["SVGMaskElement"],"SVGMatrix":[],"SVGMetadataElement":["SVGMetadataElement"],"SVGMPathElement":["SVGMPathElement"],"SVGNumber":["SVGNumber"],"SVGNumberList":["SVGNumberList"],"SVGPathElement":["SVGPathElement"],"SVGPatternElement":["SVGPatternElement"],"SVGPoint":[],"SVGPointList":["SVGPointList"],"SVGPolygonElement":["SVGPolygonElement"],"SVGPolylineElement":["SVGPolylineElement"],"SVGPreserveAspectRatio":["SVGPreserveAspectRatio"],"SVGRadialGradientElement":["SVGRadialGradientElement"],"SVGRect":[],"SVGRectElement":["SVGRectElement"],"SVGScriptElement":["SVGScriptElement"],"SVGSetElement":["SVGSetElement"],"SVGStopElement":["SVGStopElement"],"SVGStringList":["SVGStringList"],"SVGStyleElement":["SVGStyleElement"],"SVGSVGElement":["SVGSVGElement"],"SVGSVGElementEventMap":[],"SVGSwitchElement":["SVGSwitchElement"],"SVGSymbolElement":["SVGSymbolElement"],"SVGTests":["requiredExtensions"],"SVGTextContentElement":["SVGTextContentElement"],"SVGTextElement":["SVGTextElement"],"SVGTextPathElement":["SVGTextPathElement"],"SVGTextPositioningElement":["SVGTextPositioningElement"],"SVGTitleElement":["SVGTitleElement"],"SVGTransform":["SVGTransform"],"SVGTransformList":["SVGTransformList"],"SVGTSpanElement":["SVGTSpanElement"],"SVGUnitTypes":["SVGUnitTypes"],"SVGURIReference":["href"],"SVGUseElement":["SVGUseElement"],"SVGViewElement":["SVGViewElement"],"Symbol":[],"SymbolConstructor":[],"SyntaxError":[],"SyntaxErrorConstructor":[],"TemplateStringsArray":[],"TexImageSource":[],"Text":["Text"],"TextDecodeOptions":[],"TextDecoder":["TextDecoder"],"TextDecoderCommon":["encoding"],"TextDecoderOptions":[],"TextDecoderStream":["TextDecoderStream"],"TextEncoder":["TextEncoder"],"TextEncoderCommon":["encoding"],"TextEncoderEncodeIntoResult":[],"TextEncoderStream":["TextEncoderStream"],"TextEvent":["TextEvent"],"TextMetrics":["TextMetrics"],"TextStreamBase":[],"TextStreamReader":[],"TextStreamWriter":[],"TextTrack":["TextTrack"],"TextTrackCue":["TextTrackCue"],"TextTrackCueEventMap":[],"TextTrackCueList":["TextTrackCueList"],"TextTrackEventMap":[],"TextTrackKind":[],"TextTrackList":["TextTrackList"],"TextTrackListEventMap":[],"TextTrackMode":[],"ThisParameterType":["https://www.typescriptlang.org/docs/handbook/utility-types.html#thisparametertypetype"],"ThisType":["https://www.typescriptlang.org/docs/handbook/utility-types.html#thistypetype"],"TimeRanges":["TimeRanges"],"TimerHandler":[],"ToggleEvent":["ToggleEvent"],"ToggleEventInit":[],"toolbar":[],"top":[],"Touch":["Touch"],"TouchEvent":["TouchEvent"],"TouchEventInit":[],"TouchInit":[],"TouchList":["TouchList"],"TouchType":[],"TrackEvent":["TrackEvent"],"TrackEventInit":[],"Transferable":[],"TransferFunction":[],"Transformer":[],"TransformerFlushCallback":[],"TransformerStartCallback":[],"TransformerTransformCallback":[],"TransformStream":["TransformStream"],"TransformStreamDefaultController":["TransformStreamDefaultController"],"TransitionEvent":["TransitionEvent"],"TransitionEventInit":[],"TreeWalker":["TreeWalker"],"TypedPropertyDescriptor":[],"TypeError":[],"TypeErrorConstructor":[],"UIEvent":["UIEvent"],"UIEventInit":[],"Uint16Array":["https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/Uint16Array"],"Uint16ArrayConstructor":[],"Uint32Array":["https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/Uint32Array"],"Uint32ArrayConstructor":[],"Uint32List":[],"Uint8Array":["https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/Uint8Array"],"Uint8ArrayConstructor":[],"Uint8ClampedArray":["https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/Uint8ClampedArray"],"Uint8ClampedArrayConstructor":[],"ULongRange":[],"Uncapitalize":["https://www.typescriptlang.org/docs/handbook/utility-types.html#intrinsic-string-manipulation-types"],"UnderlyingByteSource":[],"UnderlyingDefaultSource":[],"UnderlyingSink":[],"UnderlyingSinkAbortCallback":[],"UnderlyingSinkCloseCallback":[],"UnderlyingSinkStartCallback":[],"UnderlyingSinkWriteCallback":[],"UnderlyingSource":[],"UnderlyingSourceCancelCallback":[],"UnderlyingSourcePullCallback":[],"UnderlyingSourceStartCallback":[],"unescape":[],"Uppercase":["https://www.typescriptlang.org/docs/handbook/utility-types.html#intrinsic-string-manipulation-types"],"URIError":[],"URIErrorConstructor":[],"URL":["URL"],"URLSearchParams":["URLSearchParams"],"URLSearchParamsIterator":[],"UserActivation":["UserActivation"],"UserVerificationRequirement":[],"ValidityState":["ValidityState"],"ValidityStateFlags":[],"VarDate":[],"VBArray":[],"VBArrayConstructor":[],"VibratePattern":[],"VideoColorPrimaries":[],"VideoColorSpace":["VideoColorSpace"],"VideoColorSpaceInit":[],"VideoConfiguration":[],"VideoDecoder":["VideoDecoder"],"VideoDecoderConfig":[],"VideoDecoderEventMap":[],"VideoDecoderInit":[],"VideoDecoderSupport":[],"VideoEncoder":["VideoEncoder"],"VideoEncoderBitrateMode":[],"VideoEncoderConfig":[],"VideoEncoderEncodeOptions":[],"VideoEncoderEncodeOptionsForAvc":[],"VideoEncoderEventMap":[],"VideoEncoderInit":[],"VideoEncoderSupport":[],"VideoFacingModeEnum":[],"VideoFrame":["VideoFrame"],"VideoFrameBufferInit":[],"VideoFrameCallbackMetadata":[],"VideoFrameCopyToOptions":[],"VideoFrameInit":[],"VideoFrameOutputCallback":[],"VideoFrameRequestCallback":[],"VideoMatrixCoefficients":[],"VideoPixelFormat":[],"VideoPlaybackQuality":["VideoPlaybackQuality"],"VideoTransferCharacteristics":[],"ViewTransition":["ViewTransition"],"ViewTransitionTypeSet":[],"ViewTransitionUpdateCallback":[],"visualViewport":[],"VisualViewport":["VisualViewport"],"VisualViewportEventMap":[],"VoidFunction":[],"VTTCue":["VTTCue"],"VTTRegion":["VTTRegion"],"WakeLock":["WakeLock"],"WakeLockSentinel":["WakeLockSentinel"],"WakeLockSentinelEventMap":[],"WakeLockType":[],"WaveShaperNode":["WaveShaperNode"],"WaveShaperOptions":[],"WeakKey":[],"WeakKeyTypes":[],"WeakMap":[],"WeakMapConstructor":[],"WeakRef":[],"WeakRefConstructor":[],"WeakSet":[],"WeakSetConstructor":[],"WebAssembly":[null,{"compile":["https://developer.mozilla.org/docs/WebAssembly/Reference/JavaScript_interface/compile_static"],"CompileError":[],"compileStreaming":["https://developer.mozilla.org/docs/WebAssembly/Reference/JavaScript_interface/compileStreaming_static"],"Exports":[],"ExportValue":[],"Global":["https://developer.mozilla.org/docs/WebAssembly/Reference/JavaScript_interface/Global"],"GlobalDescriptor":[],"ImportExportKind":[],"Imports":[],"ImportValue":[],"Instance":["https://developer.mozilla.org/docs/WebAssembly/Reference/JavaScript_interface/Instance"],"instantiate":["https://developer.mozilla.org/docs/WebAssembly/Reference/JavaScript_interface/instantiate_static"],"instantiateStreaming":["https://developer.mozilla.org/docs/WebAssembly/Reference/JavaScript_interface/instantiateStreaming_static"],"LinkError":[],"Memory":["https://developer.mozilla.org/docs/WebAssembly/Reference/JavaScript_interface/Memory"],"MemoryDescriptor":[],"Module":["https://developer.mozilla.org/docs/WebAssembly/Reference/JavaScript_interface/Module"],"ModuleExportDescriptor":[],"ModuleImportDescriptor":[],"ModuleImports":[],"RuntimeError":[],"Table":["https://developer.mozilla.org/docs/WebAssembly/Reference/JavaScript_interface/Table"],"TableDescriptor":[],"TableKind":[],"validate":["https://developer.mozilla.org/docs/WebAssembly/Reference/JavaScript_interface/validate_static"],"ValueType":[],"ValueTypeMap":[],"WebAssemblyInstantiatedSource":[]}],"WebCodecsErrorCallback":[],"WEBGL_color_buffer_float":["WEBGL_color_buffer_float"],"WEBGL_compressed_texture_astc":["WEBGL_compressed_texture_astc"],"WEBGL_compressed_texture_etc":["WEBGL_compressed_texture_etc"],"WEBGL_compressed_texture_etc1":["WEBGL_compressed_texture_etc1"],"WEBGL_compressed_texture_pvrtc":["WEBGL_compressed_texture_pvrtc"],"WEBGL_compressed_texture_s3tc":["WEBGL_compressed_texture_s3tc"],"WEBGL_compressed_texture_s3tc_srgb":["WEBGL_compressed_texture_s3tc_srgb"],"WEBGL_debug_renderer_info":["WEBGL_debug_renderer_info"],"WEBGL_debug_shaders":["WEBGL_debug_shaders"],"WEBGL_depth_texture":["WEBGL_depth_texture"],"WEBGL_draw_buffers":["drawBuffersWEBGL"],"WEBGL_lose_context":["WEBGL_lose_context"],"WEBGL_multi_draw":["multiDrawArraysInstancedWEBGL"],"WebGL2RenderingContext":["WebGL2RenderingContext"],"WebGL2RenderingContextBase":["clearBuffer"],"WebGL2RenderingContextOverloads":["uniform"],"WebGLActiveInfo":["WebGLActiveInfo"],"WebGLBuffer":["WebGLBuffer"],"WebGLContextAttributes":[],"WebGLContextEvent":["WebGLContextEvent"],"WebGLContextEventInit":[],"WebGLFramebuffer":["WebGLFramebuffer"],"WebGLPowerPreference":[],"WebGLProgram":["WebGLProgram"],"WebGLQuery":["WebGLQuery"],"WebGLRenderbuffer":["WebGLRenderbuffer"],"WebGLRenderingContext":["WebGLRenderingContext"],"WebGLRenderingContextBase":["vertexAttrib"],"WebGLRenderingContextOverloads":["uniform"],"WebGLSampler":["WebGLSampler"],"WebGLShader":["WebGLShader"],"WebGLShaderPrecisionFormat":["WebGLShaderPrecisionFormat"],"WebGLSync":["WebGLSync"],"WebGLTexture":["WebGLTexture"],"WebGLTransformFeedback":["WebGLTransformFeedback"],"WebGLUniformLocation":["WebGLUniformLocation"],"WebGLVertexArrayObject":["WebGLVertexArrayObject"],"WebGLVertexArrayObjectOES":["WebGLVertexArrayObject"],"WebKitCSSMatrix":[],"webkitURL":[],"WebSocket":["WebSocket"],"WebSocketEventMap":[],"WebTransport":["WebTransport"],"WebTransportBidirectionalStream":["WebTransportBidirectionalStream"],"WebTransportCloseInfo":[],"WebTransportCongestionControl":[],"WebTransportDatagramDuplexStream":["WebTransportDatagramDuplexStream"],"WebTransportError":["WebTransportError"],"WebTransportErrorOptions":[],"WebTransportErrorSource":[],"WebTransportHash":[],"WebTransportOptions":[],"WebTransportSendOptions":[],"WebTransportSendStreamOptions":[],"WheelEvent":["WheelEvent"],"WheelEventInit":[],"window":[],"Window":["Window"],"WindowClient":["WindowClient"],"WindowEventHandlers":["afterprint_event"],"WindowEventHandlersEventMap":[],"WindowEventMap":[],"WindowLocalStorage":["localStorage"],"WindowOrWorkerGlobalScope":["caches"],"WindowPostMessageOptions":[],"WindowProxy":[],"WindowSessionStorage":["sessionStorage"],"Worker":["Worker"],"WorkerEventMap":[],"WorkerGlobalScope":["WorkerGlobalScope"],"WorkerGlobalScopeEventMap":[],"WorkerLocation":["WorkerLocation"],"WorkerNavigator":["WorkerNavigator"],"WorkerOptions":[],"WorkerType":[],"Worklet":["Worklet"],"WorkletOptions":[],"WritableStream":["WritableStream"],"WritableStreamDefaultController":["WritableStreamDefaultController"],"WritableStreamDefaultWriter":["WritableStreamDefaultWriter"],"WriteCommandType":[],"WriteParams":[],"WScript":[],"WSH":[],"XMLDocument":["XMLDocument"],"XMLHttpRequest":["XMLHttpRequest"],"XMLHttpRequestBodyInit":[],"XMLHttpRequestEventMap":[],"XMLHttpRequestEventTarget":["XMLHttpRequestEventTarget"],"XMLHttpRequestEventTargetEventMap":[],"XMLHttpRequestResponseType":[],"XMLHttpRequestUpload":["XMLHttpRequestUpload"],"XMLSerializer":["XMLSerializer"],"XPathEvaluator":["XPathEvaluator"],"XPathEvaluatorBase":["createExpression"],"XPathExpression":["XPathExpression"],"XPathNSResolver":[],"XPathResult":["XPathResult"],"XSLTProcessor":["XSLTProcessor"]}'), In = {
1205
- globals: Ln
1206
- }, mt = Object.freeze(
1207
- Object.assign(/* @__PURE__ */ Object.create(null), In.globals)
1208
- ), ut = "https://developer.mozilla.org/docs/Web/API/";
1209
- function di(e, t, n = "*", i) {
1210
- if (e === "@arcgis/core")
1211
- return An(t, n, i);
1212
- }
1213
- function An(e, t, n) {
1214
- if (!(e === void 0 || e === "interfaces.d.ts")) {
1215
- const i = `https://${n.config.documentation.host}${kn}${Z(e)}/`;
1216
- return Ii(i, t === "default" || t === "*" ? void 0 : t, void 0);
1217
- }
1218
- }
1219
- const kn = Yt("core");
1220
- function ze(e, t, n, i) {
1221
- i.implicitPublicModules ??= /* @__PURE__ */ Object.create(null);
1222
- const a = i.implicitPublicModules[e];
1223
- a === void 0 ? i.implicitPublicModules[e] = {
1224
- actualModulePath: void 0,
1225
- // moduleResolution:Node16 may use .js extension to refer to non-JS files
1226
- sourcePath: t.endsWith(".js") ? t.slice(0, -3) : t,
1227
- pendingNames: n === "*" ? void 0 : /* @__PURE__ */ new Set([n]),
1228
- extractedNames: /* @__PURE__ */ new Set()
1229
- } : a.pendingNames !== void 0 && n !== "*" ? a.pendingNames.add(n) : a.pendingNames = void 0;
1230
- }
1231
- function Fn(e, t) {
1232
- const n = et(e);
1233
- if (t.pendingNames === void 0)
1234
- return n > 0;
1235
- if (n === 2 && t.pendingNames.has("default"))
1236
- return !0;
1237
- const a = (e.name ?? e.declarationList?.declarations[0].name).escapedText;
1238
- return t.pendingNames.has(a);
1239
- }
1240
- 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];
1242
- if (d === void 0)
1243
- return n.emitError(`Unable to resolve the declaration file name for the type ${m}`, {
1244
- file: n.file,
1245
- node: void 0
1246
- }), {
1247
- name: m,
1248
- module: void 0,
1249
- package: De,
1250
- viewUrl: void 0,
1251
- start: i,
1252
- end: a
1253
- };
1254
- const p = d.getSourceFile(), { packageName: f, modulePath: u } = Nn(p.fileName, n, m);
1255
- if (f === "@arcgis/core" && u === "interfaces.js")
1256
- return n.moduleContext.importsMap.__esri = {
1257
- type: "*",
1258
- modulePath: void 0,
1259
- specifier: `${f}/${u}`,
1260
- replacementName: void 0,
1261
- actualName: void 0,
1262
- wasUsed: !0
1263
- }, {
1264
- name: "__esri",
1265
- module: u,
1266
- package: f,
1267
- viewUrl: void 0,
1268
- start: i,
1269
- end: a
1270
- };
1271
- 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);
1277
- break;
1278
- }
1279
- }
1280
- return {
1281
- name: M,
1282
- module: void 0,
1283
- package: De,
1284
- viewUrl: y?.[0]?.startsWith("https") === !1 ? `${ut}${y[0]}` : y?.[0] ?? void 0,
1285
- start: i,
1286
- end: i + M.length
1287
- };
1288
- }
1289
- let g = m;
1290
- 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
- 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);
1297
- return je(
1298
- M,
1299
- t,
1300
- n,
1301
- i,
1302
- i + M.escapedName.length
1303
- );
1304
- }
1305
- }
1306
- } else if (
1307
- // Only supporting the syntax after
1308
- // https://devtopia.esri.com/WebGIS/arcgis-web-components/pull/10794
1309
- // As this interface is not likely to be used directly.
1310
- 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
- ) {
1312
- const y = s.getSymbolAtLocation(d.type.objectType.typeName);
1313
- if (y !== void 0) {
1314
- const h = s.getAliasedSymbol(y), M = je(
1315
- h,
1316
- t,
1317
- n,
1318
- i,
1319
- i + h.escapedName.length
1320
- );
1321
- return Me(t, c), Me(t, `${M.name}["@eventTypes"]`), M;
1322
- }
1323
- }
1324
- }
1325
- 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)
1331
- 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)
1334
- 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(
1339
- u,
1340
- p.fileName.slice(n.basePath.length),
1341
- g,
1342
- n
1343
- ), x || (n.moduleContext.importsMap[M] = {
1344
- type: I,
1345
- modulePath: f === void 0 ? u : void 0,
1346
- specifier: f === void 0 ? ye(ae(n.apiModule).dtsPath, u) : f + (u === void 0 ? "" : `/${u}`),
1347
- replacementName: void 0,
1348
- actualName: k && R ? r : void 0,
1349
- wasUsed: !0
1350
- });
1351
- break;
1352
- }
1353
- } else if (n.localPrivateDeclarations?.has(c) === !0)
1354
- n.localPrivateDeclarations.set(
1355
- c,
1356
- Math.abs(n.localPrivateDeclarations.get(c))
1357
- );
1358
- else {
1359
- if (d.kind === o.SyntaxKind.TypeParameter)
1360
- return {
1361
- name: c,
1362
- module: void 0,
1363
- package: void 0,
1364
- viewUrl: void 0,
1365
- start: i,
1366
- end: a
1367
- };
1368
- 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.`,
1370
- {
1371
- file: n.file,
1372
- node: void 0
1373
- }
1374
- );
1375
- }
1376
- const E = g === "default" || g === "*" ? void 0 : r;
1377
- return f ? {
1378
- name: g,
1379
- module: u || void 0,
1380
- package: f,
1381
- viewUrl: di(f, u ?? "", E, n),
1382
- start: i,
1383
- end: a
1384
- } : {
1385
- name: g,
1386
- module: u,
1387
- package: void 0,
1388
- viewUrl: Ge(u ?? n.apiModule.path, E, void 0, n),
1389
- start: i,
1390
- end: a
1391
- };
1392
- }
1393
- const wn = /[^a-zA-Z0-9$_]/gu;
1394
- function Nn(e, t, n) {
1395
- const i = e.lastIndexOf(at);
1396
- if (i !== -1) {
1397
- const r = e.slice(i + at.length), c = pi(r), m = e.slice(
1398
- 0,
1399
- i + at.length + c.packageName.length
1400
- ), d = lt(m);
1401
- return _t(c), c.modulePath = Wt(c.modulePath, d, t, n), c;
1402
- }
1403
- const s = e.indexOf(On);
1404
- 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;
1407
- }
1408
- if (e.startsWith(t.basePath)) {
1409
- const r = e.slice(t.basePath.length), c = Ve(Z(r), t);
1410
- return c === t.apiModule.path ? {
1411
- packageName: void 0,
1412
- modulePath: void 0
1413
- } : {
1414
- packageName: void 0,
1415
- modulePath: c
1416
- };
1417
- } else
1418
- return t.emitError(
1419
- `Unable to determine if the referenced type ${n} from ${e} is a local type, or external library usage (it is outside of ${t.basePath}, yet not in node_modules)`,
1420
- {
1421
- file: t.file,
1422
- node: void 0
1423
- }
1424
- ), {
1425
- packageName: De,
1426
- modulePath: void 0
1427
- };
1428
- }
1429
- const at = "/node_modules/", On = "/dist/";
1430
- function pi(e) {
1431
- const t = ct(e), n = e.length === t.length ? void 0 : e.slice(t.length + 1);
1432
- return { packageName: t, modulePath: n };
1433
- }
1434
- function _t(e) {
1435
- e.packageName?.startsWith("@types/") === !0 && (e.packageName = e.packageName.slice(7));
1436
- }
1437
- function Wt(e, t, n, i) {
1438
- const a = Z(e);
1439
- if (t.exports === void 0)
1440
- return `${a}.js`;
1441
- const s = `./${a}`, l = "@arcgis/lumina" in (t.dependencies ?? {}) && s.endsWith("/customElement") ? `${s.slice(0, -13)}index` : s;
1442
- let r = ft(t.exports, ".", l);
1443
- if (r === void 0 && (r = Gn[t.name]?.(a)), r !== void 0)
1444
- return r === "." ? void 0 : r.slice(2);
1445
- const c = n.moduleContext.importsMap[i];
1446
- if (c !== void 0 && c.modulePath === void 0) {
1447
- const m = pi(c.specifier);
1448
- if (m.packageName === t.name)
1449
- return m.modulePath;
1450
- }
1451
- 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.`,
1453
- { file: n.file, node: void 0 }
1454
- ), e;
1455
- }
1456
- const Gn = {
1457
- // REFACTOR: dissolve barrel files (match @arcgis/core). then this won't be needed
1458
- "@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;
1460
- }
1461
- };
1462
- function ft(e, t, n) {
1463
- if (typeof e == "string")
1464
- return Vn(t, e, n);
1465
- if (Array.isArray(e))
1466
- for (let i = 0; i < e.length; ++i) {
1467
- const a = ft(e[i], t, n);
1468
- if (a !== void 0)
1469
- return a;
1470
- }
1471
- if (typeof e == "object" && e !== null)
1472
- for (const [i, a] of Object.entries(e)) {
1473
- const l = i.startsWith(".") ? i : t, r = ft(a, l, n);
1474
- if (r !== void 0)
1475
- return r;
1476
- }
1477
- }
1478
- function Vn(e, t, n) {
1479
- const i = Z(t);
1480
- if (i === n)
1481
- return e;
1482
- const a = i.indexOf("*");
1483
- if (a === -1)
1484
- return;
1485
- const s = i.slice(0, a);
1486
- if (!n.startsWith(s))
1487
- return;
1488
- const l = i.slice(a + 1), r = n.slice(s.length), c = t.slice(i.length);
1489
- if (l === "") {
1490
- const p = Z(e), f = e.slice(p.length), u = p === e && c === "" ? ".js" : f;
1491
- return p.slice(0, -1) + r + u;
1492
- }
1493
- if (!r.endsWith(l))
1494
- return;
1495
- const m = r.slice(0, -l.length), d = e.indexOf("*");
1496
- if (d !== -1)
1497
- return e.slice(0, d) + m + e.slice(d + 1);
1498
- }
1499
- function _n(e) {
1500
- const t = e.getDeclarations()?.[0];
1501
- 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
- return t.name.escapedText;
1503
- const n = e.escapedName;
1504
- return n === "default" || n.startsWith("__") ? void 0 : n;
1505
- }
1506
- function Wn(e) {
1507
- return e.flags & o.SymbolFlags.ValueModule ? "*" : Kn(e) ? "default" : "named";
1508
- }
1509
- function Kn(e) {
1510
- const t = e.escapedName;
1511
- if (t === "default" || // CommonJS "export ="
1512
- t === "export=")
1513
- return !0;
1514
- const n = e.getDeclarations();
1515
- if (n !== void 0)
1516
- for (let i = 0; i < n.length; ++i) {
1517
- const a = n[i];
1518
- if (o.canHaveModifiers(a) && o.getModifiers(a)?.some((s) => s.kind === o.SyntaxKind.DefaultKeyword))
1519
- return !0;
1520
- }
1521
- return !1;
1522
- }
1523
- function ht(e, t, n, i) {
1524
- const a = { file: n, node: e };
1525
- return e.getText(n).includes("* @public") && i.emitError(
1526
- "@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
- a
1528
- ), H(e, t, a, i);
1529
- }
1530
- const O = {
1531
- false: 0,
1532
- /**
1533
- * True for literal types. False for object types
1534
- */
1535
- shallow: 2,
1536
- true: 1
1537
- };
1538
- function H(e, t, n, i) {
1539
- 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);
1541
- if (e.kind === o.SyntaxKind.NullKeyword)
1542
- return o.factory.createLiteralTypeNode(e);
1543
- if (e.kind === o.SyntaxKind.UndefinedKeyword || o.isVoidExpression(e))
1544
- return o.factory.createKeywordTypeNode(o.SyntaxKind.UndefinedKeyword);
1545
- if (o.isStringLiteral(e) || o.isNoSubstitutionTemplateLiteral(e))
1546
- return t === O.false ? o.factory.createKeywordTypeNode(o.SyntaxKind.StringKeyword) : o.factory.createLiteralTypeNode(e);
1547
- if (o.isTemplateExpression(e))
1548
- return Se(n, t, i) ?? o.factory.createKeywordTypeNode(o.SyntaxKind.StringKeyword);
1549
- if (o.isNumericLiteral(e))
1550
- return t === O.false ? o.factory.createKeywordTypeNode(o.SyntaxKind.NumberKeyword) : o.factory.createLiteralTypeNode(e);
1551
- if (o.isBigIntLiteral(e))
1552
- return t === O.false ? o.factory.createKeywordTypeNode(o.SyntaxKind.BigIntKeyword) : o.factory.createLiteralTypeNode(e);
1553
- 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;
1555
- if (o.isSatisfiesExpression(e))
1556
- return t === O.false ? e.type : H(e.expression, t, n, i);
1557
- if (o.isRegularExpressionLiteral(e))
1558
- return o.factory.createTypeReferenceNode(o.factory.createIdentifier("RegExp"));
1559
- if (o.isArrayLiteralExpression(e)) {
1560
- if (i.isInLuminaMinimalExtraction)
1561
- return Oe;
1562
- const a = t === O.shallow ? O.false : t, s = new Array(e.elements.length);
1563
- for (let l = 0; l < s.length; ++l) {
1564
- const r = e.elements[l];
1565
- s[l] = H(r, a, { ...n, node: r }, i);
1566
- }
1567
- return a ? o.factory.createTypeOperatorNode(o.SyntaxKind.ReadonlyKeyword, o.factory.createTupleTypeNode(s)) : o.factory.createArrayTypeNode(
1568
- s.length === 1 ? s[0] : o.factory.createUnionTypeNode(s)
1569
- );
1570
- }
1571
- if (o.isObjectLiteralExpression(e)) {
1572
- if (i.isInLuminaMinimalExtraction)
1573
- return Oe;
1574
- const a = t === O.shallow ? O.false : t, s = new Array(e.properties.length);
1575
- for (let l = 0; l < s.length; ++l) {
1576
- const r = e.properties[l];
1577
- s[l] = Hn(r, a, { ...n, node: r }, i);
1578
- }
1579
- return o.factory.createTypeLiteralNode(s);
1580
- }
1581
- if (o.isPrefixUnaryExpression(e)) {
1582
- if (e.operator !== o.SyntaxKind.MinusToken)
1583
- return be(n, X, t, i);
1584
- if (t === O.false)
1585
- return o.factory.createKeywordTypeNode(o.SyntaxKind.NumberKeyword);
1586
- {
1587
- const a = H(e.operand, t, n, i);
1588
- return o.isLiteralTypeNode(a) ? o.factory.createLiteralTypeNode(
1589
- o.factory.createPrefixUnaryExpression(o.SyntaxKind.MinusToken, a.literal)
1590
- ) : be(n, X, t, i);
1591
- }
1592
- }
1593
- if (o.isParenthesizedExpression(e))
1594
- return H(e.expression, t, n, i);
1595
- if (o.isNewExpression(e)) {
1596
- if (i.isInLuminaMinimalExtraction)
1597
- return Oe;
1598
- if (o.isIdentifier(e.expression)) {
1599
- const s = e.expression.escapedText;
1600
- let l = e.typeArguments, r = !1;
1601
- if ((s === "Set" || s === "WeakSet") && l === void 0)
1602
- if (e.arguments?.[0] !== void 0) {
1603
- const c = H(
1604
- e.arguments[0],
1605
- t,
1606
- { ...n, node: e.arguments[0] },
1607
- i
1608
- );
1609
- c.kind === o.SyntaxKind.ArrayType && (l = [c.elementType]);
1610
- } else
1611
- r = !0;
1612
- else
1613
- r ||= (s === "Map" || s === "WeakMap") && l?.length !== 2;
1614
- if (!r)
1615
- return o.factory.createTypeReferenceNode(e.expression, l);
1616
- }
1617
- const a = H(e.expression, t, n, i);
1618
- if (o.isTypeReferenceNode(a))
1619
- return a;
1620
- }
1621
- if (o.isConditionalExpression(e))
1622
- return o.factory.createUnionTypeNode([
1623
- H(e.whenTrue, t, { ...n, node: e.whenTrue }, i),
1624
- H(e.whenFalse, t, { ...n, node: e.whenFalse }, i)
1625
- ]);
1626
- if (o.isIdentifier(e))
1627
- return Se(n, t, i) ?? o.factory.createTypeQueryNode(e);
1628
- if (o.isPropertyAccessExpression(e) && o.isIdentifier(e.name)) {
1629
- const a = Se(n, t, i);
1630
- if (a !== void 0)
1631
- return a;
1632
- const s = H(e.expression, t, n, i);
1633
- return o.isTypeQueryNode(s) ? o.factory.createTypeQueryNode(o.factory.createQualifiedName(s.exprName, e.name)) : s === yt ? yt : be(n, X, t, i);
1634
- }
1635
- if (o.isCallExpression(e)) {
1636
- const a = e.expression, s = e.arguments.at(0);
1637
- if (o.isPropertyAccessExpression(a) && o.isIdentifier(a.expression) && o.isIdentifier(a.name) && a.expression.escapedText === "Collection" && a.name.escapedText === "ofType" && s !== void 0 && o.isIdentifier(s))
1638
- return o.factory.createTypeReferenceNode(a.expression, [
1639
- o.factory.createTypeReferenceNode(s)
1640
- ]);
1641
- const l = Se(n, t, i);
1642
- if (l !== void 0)
1643
- return l;
1644
- const r = H(a, t, n, i);
1645
- return o.isTypeQueryNode(r) ? o.factory.createTypeReferenceNode(o.factory.createIdentifier("ReturnType"), [
1646
- o.factory.createTypeQueryNode(r.exprName, e.typeArguments)
1647
- ]) : be(n, X, t, i);
1648
- }
1649
- if (o.isArrowFunction(e)) {
1650
- if (i.isInLuminaMinimalExtraction)
1651
- return Oe;
1652
- const a = t === O.shallow ? O.false : t;
1653
- return o.factory.createFunctionTypeNode(
1654
- e.typeParameters,
1655
- 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))
1657
- );
1658
- }
1659
- return be(n, X, t, i);
1660
- }
1661
- function Hn(e, t, n, i) {
1662
- const a = t === O.false ? void 0 : Jn;
1663
- return o.isPropertyAssignment(e) ? o.factory.createPropertySignature(
1664
- a,
1665
- e.name,
1666
- void 0,
1667
- H(e.initializer, t, { ...n, node: e.initializer }, i)
1668
- ) : o.isShorthandPropertyAssignment(e) ? o.factory.createPropertySignature(
1669
- a,
1670
- e.name,
1671
- void 0,
1672
- Se(n, t, i) ?? o.factory.createTypeQueryNode(o.factory.createIdentifier(e.name.escapedText))
1673
- ) : o.isSpreadAssignment(e) ? o.factory.createPropertySignature(
1674
- a,
1675
- "_spread",
1676
- void 0,
1677
- Q(n, X, i)
1678
- ) : o.isMethodDeclaration(e) ? o.factory.createPropertySignature(
1679
- a,
1680
- e.name,
1681
- void 0,
1682
- o.factory.createFunctionTypeNode(
1683
- e.typeParameters,
1684
- vt(e.parameters, t, n, i),
1685
- e.type ?? Je(e, i) ?? Q(n, X, i)
1686
- )
1687
- ) : o.isGetAccessorDeclaration(e) ? o.factory.createGetAccessorDeclaration(
1688
- void 0,
1689
- e.name,
1690
- // Should always be empty
1691
- e.parameters,
1692
- e.type ?? Je(e, i) ?? Q(n, X, i),
1693
- void 0
1694
- ) : o.factory.createSetAccessorDeclaration(
1695
- void 0,
1696
- e.name,
1697
- vt(e.parameters, t, n, i),
1698
- void 0
1699
- );
1700
- }
1701
- function be(e, t, n, i) {
1702
- return Se(e, n, i) ?? Q(e, t, i);
1703
- }
1704
- function Se(e, t, n) {
1705
- const i = n.program?.getTypeChecker?.();
1706
- if (i !== void 0 && e.node !== void 0) {
1707
- let a;
1708
- const s = t === O.false;
1709
- if (s && e.node.kind === o.SyntaxKind.Identifier) {
1710
- const r = i.getSymbolAtLocation(e.node);
1711
- a = r === void 0 ? void 0 : i.getTypeOfSymbol(r);
1712
- }
1713
- a ??= i.getTypeAtLocation(e.node);
1714
- const l = s ? Zi(i, a) : a;
1715
- return tt(i, l);
1716
- }
1717
- }
1718
- function tt(e, t) {
1719
- const n = t.flags & o.TypeFlags.Union ? t.types.every(Kt) : Kt(t);
1720
- return e.typeToTypeNode(
1721
- t,
1722
- void 0,
1723
- Un & (n ? ~o.TypeFormatFlags.MultilineObjectLiterals : -1)
1724
- );
1725
- }
1726
- const $n = o.TypeFormatFlags.NoTruncation | o.TypeFormatFlags.WriteArrayAsGenericType | o.TypeFormatFlags.SuppressAnyReturnType | o.TypeFormatFlags.MultilineObjectLiterals, Bn = $n & o.TypeFormatFlags.NodeBuilderFlagsMask, Un = Bn | o.NodeBuilderFlags.IgnoreErrors | o.NodeBuilderFlags.NoTruncation, Kt = (e) => e.flags & o.TypeFlags.Object ? e.getProperties().length === 1 : !!(e.flags & o.TypeFlags.PossiblyFalsy);
1727
- function Je(e, t) {
1728
- const n = t.program?.getTypeChecker?.();
1729
- if (n === void 0)
1730
- return;
1731
- const i = n.getSignatureFromDeclaration(e);
1732
- if (i === void 0)
1733
- return;
1734
- const a = n.getReturnTypeOfSignature(i);
1735
- return tt(n, a);
1736
- }
1737
- function zn(e, t) {
1738
- const n = t.program?.getTypeChecker?.();
1739
- if (n === void 0)
1740
- return;
1741
- const i = n.getTypeAtLocation(e);
1742
- return tt(n, i);
1743
- }
1744
- function Q(e, t, n) {
1745
- return n.isInLuminaMinimalExtraction || n.emitError(t, e), yt;
1746
- }
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];
1748
- function vt(e, t, n, i) {
1749
- const a = new Array(e.length);
1750
- for (let s = 0; s < a.length; ++s) {
1751
- const l = e[s];
1752
- a[s] = l.initializer === void 0 && o.isIdentifier(l.name) ? l : o.factory.createParameterDeclaration(
1753
- void 0,
1754
- l.dotDotDotToken,
1755
- o.isIdentifier(l.name) ? l.name : o.factory.createIdentifier(`parameter${s}`),
1756
- l.questionToken,
1757
- l.type ?? (l.initializer === void 0 ? Q({ ...n, node: l }, X, i) : H(
1758
- l.initializer,
1759
- t,
1760
- {
1761
- ...n,
1762
- node: l.initializer
1763
- },
1764
- i
1765
- ))
1766
- );
1767
- }
1768
- return a;
1769
- }
1770
- function qn(e, t) {
1771
- const n = t.program?.getTypeChecker?.();
1772
- if (n === void 0 || !Xn(e.exprName, t))
1773
- return;
1774
- const i = n.getTypeAtLocation(e.exprName);
1775
- return tt(n, i);
1776
- }
1777
- function Xn(e, t) {
1778
- return e.kind === o.SyntaxKind.QualifiedName ? Qn(e.left) : t.moduleContext.importsMap[e.escapedText]?.specifier.endsWith(".json") === !0;
1779
- }
1780
- function Qn(e) {
1781
- for (; e !== void 0; )
1782
- if (e.kind === o.SyntaxKind.QualifiedName)
1783
- e = e.left;
1784
- else if (e.kind === o.SyntaxKind.Identifier)
1785
- return e.escapedText === "this";
1786
- return !1;
1787
- }
1788
- function z(e, t) {
1789
- if (P = t, We.clear(), U = [], qe.clear(), e.pos !== -1 && e.getText(P.file).includes("* @public") && P.emitError(
1790
- "@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 }
1792
- ), e.kind === o.SyntaxKind.Identifier || e.kind === o.SyntaxKind.QualifiedName)
1793
- Ke(e);
1794
- else if (o.isFunctionTypeNode(e) || o.isConstructorTypeNode(e)) {
1795
- const i = e.typeParameters;
1796
- if (i !== void 0)
1797
- for (let a = 0; a < i.length; ++a) {
1798
- const s = i[a];
1799
- qe.add(s.name.escapedText);
1800
- }
1801
- }
1802
- return Yn.writeNode(o.EmitHint.Unspecified, e, void 0, We), {
1803
- text: We.getText(),
1804
- references: U.length > 0 ? U : void 0,
1805
- values: void 0,
1806
- source: void 0
1807
- };
1808
- }
1809
- let P;
1810
- const ve = (e, t, n) => {
1811
- switch (t.kind) {
1812
- case o.SyntaxKind.TypeReference:
1813
- const i = t, a = i.typeName;
1814
- switch (a.escapedText) {
1815
- case "nil":
1816
- return ve(e, Zn, n);
1817
- // Used in public typings in 88 files
1818
- // REFACTOR: consider refactoring out Const usages in public API to
1819
- // reduce divergence
1820
- case "Const":
1821
- // In public types, Lumina's "component" and "el" have the same type
1822
- // eslint-disable-next-line no-fallthrough
1823
- case "ToElement":
1824
- return ve(e, i.typeArguments[0], n);
1825
- /**
1826
- * @see https://webgis.esri.com/webgis/core/core/documenting-api#publicprivate-type-divergence
1827
- */
1828
- case "PublicApiNarrowType":
1829
- case "PublicApiRelaxType":
1830
- return ve(e, i.typeArguments[1], n);
1831
- }
1832
- Ke(a);
1833
- break;
1834
- case o.SyntaxKind.TypeQuery:
1835
- const l = qn(t, P);
1836
- if (l !== void 0)
1837
- return ve(e, l, n);
1838
- Ke(t.exprName, eo);
1839
- break;
1840
- case o.SyntaxKind.PropertyAccessExpression:
1841
- Ke(t);
1842
- break;
1843
- case o.SyntaxKind.InferType:
1844
- case o.SyntaxKind.MappedType:
1845
- const c = t.typeParameter;
1846
- qe.add(c.name.escapedText);
1847
- break;
1848
- case o.SyntaxKind.TypeLiteral:
1849
- const m = t;
1850
- m.members.length === 1 && ("emitNode" in m && (m.emitNode ??= {}), o.setEmitFlags(m, o.EmitFlags.SingleLine));
1851
- break;
1852
- case o.SyntaxKind.IndexedAccessType:
1853
- const d = t;
1854
- if (
1855
- // In public types, Lumina's "component" and "el" have the same type
1856
- // Thus print ArcgisHome["el"] as just ArcgisHome
1857
- P.isComponentProject && d.indexType.kind === o.SyntaxKind.LiteralType && d.indexType.literal.text === "el"
1858
- )
1859
- return ve(e, d.objectType, n);
1860
- break;
1861
- case o.SyntaxKind.ImportType:
1862
- P.emitError(
1863
- `\`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 }
1865
- );
1866
- break;
1867
- }
1868
- n(e, t), Xe !== void 0 && (mi(), Xe = void 0);
1869
- }, Yn = tn(
1870
- {},
1871
- {
1872
- onEmitNode: ve
1873
- }
1874
- ), Zn = o.factory.createIdentifier("null | undefined"), We = en.createTextWriter(`
1875
- `), eo = 7, qe = /* @__PURE__ */ new Set();
1876
- let U;
1877
- function Ke(e, t = 0) {
1878
- const n = [];
1879
- let i = e;
1880
- for (; i !== void 0; )
1881
- if (i.kind === o.SyntaxKind.Identifier) {
1882
- n.push(i);
1883
- break;
1884
- } else if (i.kind === o.SyntaxKind.QualifiedName)
1885
- n.push(i.right), i = i.left;
1886
- else if (i.kind === o.SyntaxKind.PropertyAccessExpression) {
1887
- const g = i.name;
1888
- n.push(g), i = i.expression;
1889
- }
1890
- const a = n.at(-1), s = a.escapedText, l = We.getTextPos() + t;
1891
- let r = l + s.length;
1892
- const c = a;
1893
- if (c.pos === -1 && c.symbol !== void 0) {
1894
- U.push(
1895
- je(c.symbol, c, P, l, r)
1896
- );
1897
- return;
1898
- }
1899
- if (P.functionLikeTypeParameters?.has(s) === !0) {
1900
- U.push({
1901
- name: s,
1902
- module: void 0,
1903
- package: void 0,
1904
- viewUrl: void 0,
1905
- start: l,
1906
- end: r
1907
- });
1908
- return;
1909
- }
1910
- if (P.objectLikeTypeParameters?.has(s) === !0) {
1911
- U.push({
1912
- name: s,
1913
- module: void 0,
1914
- package: void 0,
1915
- viewUrl: void 0,
1916
- start: l,
1917
- end: r
1918
- });
1919
- return;
1920
- }
1921
- if (P.localDeclarations.has(s)) {
1922
- U.push({
1923
- name: s,
1924
- module: void 0,
1925
- package: void 0,
1926
- viewUrl: Ge(
1927
- P.apiModule.path,
1928
- s === P.exportDefaultName ? void 0 : s,
1929
- void 0,
1930
- P
1931
- ),
1932
- start: l,
1933
- end: r
1934
- });
1935
- return;
1936
- }
1937
- if (P.localPrivateDeclarations?.has(s) === !0) {
1938
- P.localPrivateDeclarations.set(s, Math.abs(P.localPrivateDeclarations.get(s))), U.push({
1939
- name: s,
1940
- module: void 0,
1941
- package: void 0,
1942
- viewUrl: Ge(
1943
- P.apiModule.path,
1944
- s === P.exportDefaultName ? void 0 : s,
1945
- void 0,
1946
- P
1947
- ),
1948
- start: l,
1949
- end: r
1950
- });
1951
- return;
1952
- }
1953
- const d = P.moduleContext.importsMap[s];
1954
- if (d !== void 0) {
1955
- d.wasUsed = !0;
1956
- 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 }
1960
- );
1961
- const E = g ? d.actualName ?? d.replacementName ?? s : void 0;
1962
- 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 }
1968
- );
1969
- }
1970
- } else P.config.strict || ze(
1971
- d.modulePath,
1972
- pt(
1973
- P.apiModule.sourcePath.slice(P.config.context.basePath.length),
1974
- d.specifier
1975
- ),
1976
- g ? E : d.type,
1977
- P
1978
- );
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({
1981
- 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),
1985
- start: l,
1986
- end: r
1987
- });
1988
- return;
1989
- }
1990
- const p = mt[s];
1991
- if (p !== void 0) {
1992
- U.push({
1993
- name: s,
1994
- module: void 0,
1995
- package: De,
1996
- viewUrl: p[0]?.startsWith("https") === !1 ? `${ut}${p[0]}` : p[0] ?? void 0,
1997
- start: l,
1998
- end: r
1999
- });
2000
- let g = p;
2001
- if (g.length > 1) {
2002
- let E = n.length - 2, y = r + 1;
2003
- 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,
2008
- node: e
2009
- });
2010
- else {
2011
- const M = y + h.escapedText.length;
2012
- U.push({
2013
- name: h.escapedText,
2014
- module: void 0,
2015
- package: De,
2016
- viewUrl: g[0]?.startsWith("https") === !1 ? `${ut}${g[0]}` : g[0] ?? void 0,
2017
- start: y,
2018
- end: M
2019
- }), y = M + 1;
2020
- }
2021
- }
2022
- }
2023
- return;
2024
- }
2025
- if (qe.has(s))
2026
- return;
2027
- const u = P.program?.getTypeChecker?.()?.getSymbolAtLocation(a);
2028
- if (u !== void 0) {
2029
- U.push(je(u, a, P, l, r));
2030
- return;
2031
- }
2032
- P.emitError(
2033
- "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 }
2035
- );
2036
- }
2037
- function Me(e, t) {
2038
- const n = e.escapedText;
2039
- Xe = e, gt = t, mi(), gt = n;
2040
- }
2041
- let Xe, gt;
2042
- function mi() {
2043
- Xe.escapedText = gt;
2044
- }
2045
- function it(e, t, n) {
2046
- if (e === void 0 || n.isInLuminaMinimalExtraction) {
2047
- t ? n.objectLikeTypeParameters = void 0 : n.functionLikeTypeParameters = void 0;
2048
- return;
2049
- }
2050
- const i = new Array(e.length), a = t ? to : io;
2051
- a.clear();
2052
- for (let s = 0; s < e.length; ++s) {
2053
- const l = e[s], r = l.name.escapedText;
2054
- a.add(r);
2055
- const c = {
2056
- name: r,
2057
- constraint: void 0,
2058
- default: void 0,
2059
- const: void 0,
2060
- in: void 0,
2061
- out: void 0
2062
- };
2063
- if (l.modifiers !== void 0)
2064
- for (let m = 0; m < l.modifiers.length; ++m) {
2065
- const d = l.modifiers[m];
2066
- d.kind === o.SyntaxKind.ConstKeyword ? c.const = !0 : d.kind === o.SyntaxKind.InKeyword ? c.in = !0 : d.kind === o.SyntaxKind.OutKeyword && (c.out = !0);
2067
- }
2068
- i[s] = c;
2069
- }
2070
- t ? n.objectLikeTypeParameters = a : n.functionLikeTypeParameters = a;
2071
- for (let s = 0; s < e.length; ++s) {
2072
- const l = e[s], r = l.constraint, c = l.default;
2073
- r !== void 0 && (i[s].constraint = z(r, n)), c !== void 0 && (i[s].default = z(c, n));
2074
- }
2075
- return i;
2076
- }
2077
- const to = /* @__PURE__ */ new Set(), io = /* @__PURE__ */ new Set();
2078
- function Ee(e, t, n) {
2079
- if (!o.isIdentifier(e) && !o.isQualifiedName(e) && !o.isPropertyAccessExpression(e))
2080
- return n.emitError(
2081
- "Expected the type nodes in the extends clause to be Identifier, QualifiedName or PropertyAccessExpression.",
2082
- { file: n.file, node: e }
2083
- ), {
2084
- name: "error",
2085
- module: void 0,
2086
- package: void 0,
2087
- viewUrl: void 0,
2088
- typeArguments: void 0,
2089
- printableText: n.produceDts ? "Record<never, Error>" : void 0
2090
- };
2091
- const i = z(e, n), a = i.references?.[0] ?? {
2092
- module: void 0,
2093
- package: void 0,
2094
- viewUrl: void 0
2095
- };
2096
- let s, l;
2097
- if (s = i.text, t !== void 0) {
2098
- l = new Array(t.length), s += "<";
2099
- for (let c = 0; c < t.length; ++c) {
2100
- const m = t[c], d = z(m, n);
2101
- l[c] = d, s += d.text, c < t.length - 1 && (s += ", ");
2102
- }
2103
- s += ">";
2104
- }
2105
- return {
2106
- name: i.references?.length === 1 ? i.references[0].name : i.text,
2107
- module: a.module,
2108
- package: a.package,
2109
- viewUrl: a.viewUrl,
2110
- typeArguments: l,
2111
- /**
2112
- * If referenced type is imported as default, the `name` will be `default`,
2113
- * which is not a name suitable for .d.ts emit. So we preserve the original
2114
- * type string in a temporary field.
2115
- */
2116
- printableText: s
2117
- };
2118
- }
2119
- function Et(e) {
2120
- return o.isTypeReferenceNode(e) && (e.typeName.escapedText === "PublicApiNarrowType" || e.typeName.escapedText === "PublicApiRelaxType") ? e.typeArguments[1] : e;
2121
- }
2122
- function no(e) {
2123
- return e.expression.escapedText === "PublicApiNarrowType" || e.expression.escapedText === "PublicApiRelaxType" ? e.typeArguments[1] : e;
2124
- }
2125
- const ui = { text: "unknown", references: void 0, values: void 0, source: void 0 }, oo = {
2126
- text: "Promise<unknown>",
2127
- references: void 0,
2128
- values: void 0,
2129
- source: void 0
2130
- }, ao = {
2131
- text: "Record<string, unknown> | undefined",
2132
- references: [
2133
- {
2134
- name: "Record",
2135
- module: void 0,
2136
- package: "global:",
2137
- viewUrl: "https://www.typescriptlang.org/docs/handbook/utility-types.html#recordkeys-type",
2138
- start: 0,
2139
- end: 6
2140
- }
2141
- ],
2142
- values: void 0,
2143
- source: void 0
2144
- };
2145
- function so(e, t) {
2146
- if (t.isInLuminaMinimalExtraction)
2147
- return;
2148
- const n = Ji(e.name), i = {
2149
- [Y]: ro,
2150
- kind: "method",
2151
- name: "componentOnReady",
2152
- static: void 0,
2153
- deprecated: void 0,
2154
- summary: void 0,
2155
- description: "Creates a promise that resolves once the component is fully loaded.",
2156
- docsTags: [
2157
- {
2158
- name: "example",
2159
- text: `\`\`\`js
2160
- const ${n} = document.querySelector("${e.tagName}");
2161
- document.body.append(${n});
2162
- await ${n}.componentOnReady();
2163
- console.log("${e.tagName} is ready to go!");
2164
- \`\`\``
2165
- }
2166
- ],
2167
- typeParameters: void 0,
2168
- parameters: void 0,
2169
- return: lo,
2170
- inheritedFrom: e.superclass,
2171
- signature: "(): Promise<this>",
2172
- privacy: void 0,
2173
- source: void 0
2174
- };
2175
- e.members.push(i);
2176
- const a = [], s = t.config.documentation.getComponentDocsUrl, l = t.config.documentation.getComponentDemoUrl, r = typeof s == "function" ? s(e.tagName, e.name) : void 0, c = typeof l == "function" ? l(e.tagName, e.name) : void 0;
2177
- typeof r == "string" && a.push({
2178
- description: "Docs",
2179
- url: r,
2180
- source: void 0
2181
- }), typeof c == "string" && a.push({
2182
- description: "Demo",
2183
- url: c,
2184
- source: void 0
2185
- });
2186
- const m = t.componentStories[e.tagName];
2187
- if (typeof m == "object" && a.push(...m), t.componentCssFileDocs !== void 0) {
2188
- e.cssProperties ??= [];
2189
- const d = new Set(e.cssProperties.map((p) => p.name));
2190
- e.cssProperties = [
2191
- ...e.cssProperties,
2192
- ...t.componentCssFileDocs.filter((p) => !d.has(p.name))
2193
- ], t.componentCssFileDocs = void 0;
2194
- }
2195
- a.length > 0 && (e.demos = a);
2196
- }
2197
- const ro = Ze(), lo = {
2198
- summary: void 0,
2199
- description: void 0,
2200
- type: {
2201
- text: "Promise<this>",
2202
- references: [
2203
- {
2204
- name: "Promise",
2205
- module: "lib/lib.es5.d.ts",
2206
- package: "typescript",
2207
- viewUrl: void 0,
2208
- start: 0,
2209
- end: 7
2210
- }
2211
- ],
2212
- values: void 0,
2213
- source: void 0
2214
- }
2215
- }, co = de, po = de, mo = de, uo = de, fo = de, yo = de, vo = de, fi = de;
2216
- function de(e, t, n, i, a) {
2217
- if (i.docsTags === void 0 || n === void 0)
2218
- return;
2219
- const s = i.docsTags.indexOf(W.copyDoc);
2220
- if (s === -1)
2221
- return;
2222
- const l = i.name;
2223
- let r = n?.[l];
2224
- r === void 0 && e.emitError(
2225
- "@copyDoc tag was used, but failed to find copyDoc definition for it. Documentation: https://webgis.esri.com/webgis/core/core/documenting-api#copydoc",
2226
- {
2227
- file: e.file,
2228
- node: t
2229
- }
2230
- ), !(typeof r == "function" && (r = r(i, a, e.apiModule), r === void 0)) && ki(r, i, s);
2231
- }
2232
- function Ct(e, t, n) {
2233
- n.apiModule.exports.push({
2234
- kind: e.customElement === !0 ? "custom-element-definition" : e.kind === "interface" || e.kind === "mixin" ? "ts" : "js",
2235
- name: t ? "default" : e.tagName ?? e.name,
2236
- deprecated: void 0,
2237
- declaration: {
2238
- name: e.name,
2239
- module: void 0,
2240
- package: void 0,
2241
- viewUrl: void 0
2242
- }
2243
- });
2244
- }
2245
- const go = Ae, st = Ae, So = Ae, Ht = Ae, $t = Ae;
2246
- function Ae(e, t, n, i) {
2247
- if (t === void 0) {
2248
- i.emitError("Computed function/method names are not yet supported.", {
2249
- file: i.file,
2250
- node: e
2251
- });
2252
- return;
2253
- }
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;
2256
- if (!p && a.modifiers !== void 0)
2257
- for (let T = 0; T < a.modifiers.length; ++T)
2258
- switch (a.modifiers[T].kind) {
2259
- case o.SyntaxKind.StaticKeyword:
2260
- h = !0;
2261
- break;
2262
- case o.SyntaxKind.ProtectedKeyword:
2263
- M = "protected";
2264
- break;
2265
- case o.SyntaxKind.AbstractKeyword:
2266
- b = !0;
2267
- break;
2268
- case o.SyntaxKind.AsyncKeyword:
2269
- v = !0;
2270
- break;
2271
- }
2272
- const x = {
2273
- [Y]: y,
2274
- kind: c ? "method" : p ? "function" : f ? "call-signature" : g ? "constructor" : void 0,
2275
- name: g || f ? void 0 : t,
2276
- static: h,
2277
- deprecated: void 0,
2278
- summary: void 0,
2279
- description: void 0,
2280
- docsTags: void 0,
2281
- typeParameters: it(e.typeParameters, !1, i),
2282
- parameters: [],
2283
- return: u ? void 0 : {
2284
- summary: void 0,
2285
- description: void 0,
2286
- type: E ? v ? oo : ui : z(
2287
- e.type ?? Je(e, i) ?? Q(
2288
- { file: i.file, node: e },
2289
- "@public function must have a return type annotation",
2290
- i
2291
- ),
2292
- i
2293
- )
2294
- },
2295
- inheritedFrom: void 0,
2296
- signature: void 0,
2297
- privacy: M,
2298
- 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;
2303
- if (A === "this") {
2304
- N -= 1;
2305
- continue;
2306
- }
2307
- const _ = u && A !== void 0 && C.modifiers !== void 0 && C.modifiers.length > 0 ? j(C, !0, i) : void 0;
2308
- if (_ !== void 0) {
2309
- N -= 1, D += 1, i.jsDoc = _;
2310
- const q = vi(C, A, !1, i);
2311
- if (q === void 0)
2312
- continue;
2313
- i.apiObject.members.push(q);
2314
- const pe = {
2315
- name: A,
2316
- deprecated: void 0,
2317
- summary: void 0,
2318
- description: q.description,
2319
- docsTags: void 0,
2320
- optional: void 0,
2321
- rest: C.dotDotDotToken ? !0 : void 0,
2322
- type: q.type,
2323
- default: q.default
2324
- };
2325
- pe.optional = Bt(C, pe), x.parameters.push(pe);
2326
- continue;
2327
- }
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) {
2330
- i.emitError(
2331
- `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;
2334
- break;
2335
- }
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("]");
2340
- if (i.config.strict) {
2341
- 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]" : ""}`,
2343
- {
2344
- file: i.file,
2345
- node: C
2346
- }
2347
- ), S = !0;
2348
- break;
2349
- } else
2350
- G = A.startsWith("_") ? A.slice(1) : A;
2351
- }
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`,
2355
- i
2356
- ) : ht(C.initializer, O.false, i.file, i)), ke = z(me, i), ie = {
2357
- name: G,
2358
- deprecated: void 0,
2359
- summary: void 0,
2360
- description: w || void 0,
2361
- docsTags: void 0,
2362
- optional: void 0,
2363
- rest: C.dotDotDotToken ? !0 : void 0,
2364
- type: ke,
2365
- default: Be(C.initializer, void 0, i.file)
2366
- };
2367
- ie.optional = Bt(C, ie), x.parameters.push(ie);
2368
- }
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" : ""}`,
2371
- { file: i.file, node: e }
2372
- ), x.parameters.length === 0)
2373
- x.parameters = void 0;
2374
- 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");
2379
- }
2380
- }
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.", {
2382
- file: i.file,
2383
- node: e
2384
- })), 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.", {
2387
- file: i.file,
2388
- 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(
2390
- i,
2391
- n ?? e,
2392
- i.config.documentation.copyDocDefinitions.methods,
2393
- x,
2394
- i.apiObject
2395
- ) : p && uo(
2396
- i,
2397
- n ?? e,
2398
- i.config.documentation.copyDocDefinitions.functions,
2399
- x,
2400
- i.apiModule
2401
- ), x;
2402
- }
2403
- const Bt = (e, t) => (
2404
- // Keep ? as is
2405
- e.questionToken !== void 0 || // If had default value internally, but not publicly, add ?
2406
- e.initializer !== void 0 && t.default === void 0 ? !0 : void 0
2407
- );
2408
- function To(e, t, n) {
2409
- return St(), Pe(e, t), bt && t !== void 0 && n !== void 0 && (St(), Mt(t.getTypeAtLocation(n))), yi();
2410
- }
2411
- function ho(e) {
2412
- return St(), Mt(e), yi();
2413
- }
2414
- let Le = !1, se = !1, re = !1, Ie = !1, le = !1, bt = !1;
2415
- const ce = [], ee = [];
2416
- function St() {
2417
- Le = !1, se = !1, re = !1, Ie = !1, le = !1, bt = !1, ce.length = 0, ee.length = 0;
2418
- }
2419
- function yi() {
2420
- if (!re && !Ie && !le && !Le)
2421
- return;
2422
- const e = [];
2423
- if (ce.length > 0)
2424
- for (let t = 0; t < ce.length; ++t)
2425
- e.push({ type: "string", value: ce[t] });
2426
- 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] });
2430
- else le && e.push(Co);
2431
- return Ie && e.push(bo), Le ? e.push(Mo) : se && e.push(Po), e;
2432
- }
2433
- const Eo = { type: "string", value: void 0 }, Co = { type: "number", value: void 0 }, bo = { type: "boolean", value: void 0 }, Mo = { type: "any", value: void 0 }, Po = { type: "object", value: void 0 };
2434
- function Pe(e, t) {
2435
- switch (e.kind) {
2436
- case o.SyntaxKind.BooleanKeyword:
2437
- case o.SyntaxKind.TrueKeyword:
2438
- case o.SyntaxKind.FalseKeyword:
2439
- Ie = !0;
2440
- return;
2441
- case o.SyntaxKind.NumberKeyword:
2442
- le = !0;
2443
- return;
2444
- case o.SyntaxKind.StringKeyword:
2445
- case o.SyntaxKind.TemplateLiteralType:
2446
- re = !0;
2447
- return;
2448
- case o.SyntaxKind.AnyKeyword:
2449
- Le = !0;
2450
- return;
2451
- case o.SyntaxKind.LiteralType:
2452
- Pe(e.literal, t);
2453
- return;
2454
- case o.SyntaxKind.StringLiteral:
2455
- case o.SyntaxKind.NoSubstitutionTemplateLiteral:
2456
- re = !0, ce.push(e.text);
2457
- return;
2458
- case o.SyntaxKind.NumericLiteral:
2459
- le = !0, ee.push(e.text);
2460
- return;
2461
- case o.SyntaxKind.PrefixUnaryExpression:
2462
- const n = e.operand;
2463
- n.kind === o.SyntaxKind.NumericLiteral ? (ee.push(`-${n.text}`), le = !0) : se = !0;
2464
- return;
2465
- case o.SyntaxKind.VoidKeyword:
2466
- case o.SyntaxKind.UndefinedKeyword:
2467
- case o.SyntaxKind.NullKeyword:
2468
- return;
2469
- case o.SyntaxKind.UnionType:
2470
- const i = e.types, a = Math.min(i.length, Qe);
2471
- for (let l = 0; l < a; ++l)
2472
- Pe(i[l], t);
2473
- i.length > Qe && (ce.length = 0, ee.length = 0);
2474
- return;
2475
- case o.SyntaxKind.ParenthesizedType:
2476
- Pe(e.type, t);
2477
- return;
2478
- case o.SyntaxKind.TypeQuery:
2479
- case o.SyntaxKind.IndexedAccessType:
2480
- case o.SyntaxKind.ImportType:
2481
- case o.SyntaxKind.TypeReference:
2482
- t === void 0 ? se = !0 : Mt(
2483
- t.getTypeFromTypeNode(
2484
- e
2485
- )
2486
- );
2487
- return;
2488
- case o.SyntaxKind.TypeOperator:
2489
- const s = e;
2490
- s.operator === o.SyntaxKind.KeyOfKeyword ? re = !0 : s.operator === o.SyntaxKind.ReadonlyKeyword ? Pe(s.type, t) : se = !0;
2491
- return;
2492
- /*case ts.SyntaxKind.UnknownKeyword:
2493
- case ts.SyntaxKind.FunctionType:
2494
- case ts.SyntaxKind.ConstructorType:
2495
- case ts.SyntaxKind.ThisKeyword:
2496
- case ts.SyntaxKind.ConditionalType:
2497
- case ts.SyntaxKind.ArrayType:
2498
- case ts.SyntaxKind.TupleType:
2499
- case ts.SyntaxKind.IntersectionType:
2500
- case ts.SyntaxKind.ObjectKeyword:
2501
- case ts.SyntaxKind.SymbolKeyword:*/
2502
- default:
2503
- se = !0;
2504
- return;
2505
- }
2506
- }
2507
- const Qe = 40;
2508
- function Mt(e) {
2509
- if (e.isUnion()) {
2510
- const t = Math.min(e.types.length, Qe);
2511
- for (let n = 0; n < t; ++n)
2512
- Ut(e.types[n]);
2513
- e.types.length > Qe && (ce.length = 0, ee.length = 0);
2514
- } else
2515
- Ut(e);
2516
- }
2517
- function Ut(e) {
2518
- const t = e.flags;
2519
- 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) {
2521
- if (e.intrinsicName === "error") {
2522
- se = !0, bt = !0;
2523
- return;
2524
- }
2525
- Le = !0, n = !0;
2526
- }
2527
- t & xo || n || (se = !0);
2528
- }
2529
- const xo = o.TypeFlags.Null | o.TypeFlags.VoidLike, ga = (e) => e.map(Ro).join(" | "), Ro = (e) => e.type === "string" && e.value !== void 0 ? `"${e.value}"` : e.value ?? e.type;
2530
- function Do(e, t, n) {
2531
- let i;
2532
- const a = e.initializer;
2533
- let s;
2534
- if (e.questionToken !== void 0)
2535
- return;
2536
- if (e.type !== void 0)
2537
- o.isTypeReferenceNode(e.type) && e.type.typeName.escapedText === "EventEmitter" && (i = e.type.typeArguments?.[0] ?? _e);
2538
- else if (a !== void 0 && o.isCallExpression(a)) {
2539
- const r = a.expression;
2540
- if (o.isIdentifier(r)) {
2541
- 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));
2543
- } else if (o.isCallExpression(r) && o.isIdentifier(r.expression)) {
2544
- const c = r.expression.escapedText;
2545
- if (c === "usePropertyChange") {
2546
- const m = [];
2547
- for (let d = 0; d < a.arguments.length; ++d) {
2548
- const p = a.arguments[d];
2549
- o.isStringLiteral(p) && m.push(o.factory.createLiteralTypeNode(p));
2550
- }
2551
- if (m.length === 0)
2552
- return;
2553
- i = o.factory.createTypeLiteralNode([
2554
- o.factory.createPropertySignature(
2555
- void 0,
2556
- "name",
2557
- void 0,
2558
- m.length === 1 ? m[0] : o.factory.createUnionTypeNode(m)
2559
- )
2560
- ]);
2561
- } else c.startsWith("use") && (i = zt(e, n));
2562
- }
2563
- }
2564
- if (i === void 0)
2565
- return;
2566
- const l = {
2567
- name: t,
2568
- deprecated: void 0,
2569
- summary: void 0,
2570
- description: void 0,
2571
- docsTags: void 0,
2572
- type: z(i, n),
2573
- inheritedFrom: void 0,
2574
- privacy: void 0,
2575
- bubbles: void 0,
2576
- cancelable: void 0,
2577
- composed: void 0
2578
- };
2579
- return pn(l, n.jsDoc), s !== void 0 && Lo(e, s, l, n), mo(
2580
- n,
2581
- e,
2582
- n.config.documentation.copyDocDefinitions.events,
2583
- l,
2584
- n.apiObject
2585
- ), l;
2586
- }
2587
- const He = "createEvent";
2588
- function Lo(e, t, n, i) {
2589
- if (t !== void 0) {
2590
- if (!o.isObjectLiteralExpression(t)) {
2591
- i.emitError(`Expected object literal expression as first argument of ${He}().`, {
2592
- file: i.file,
2593
- node: e
2594
- });
2595
- return;
2596
- }
2597
- if (t.properties.some(o.isSpreadAssignment)) {
2598
- i.emitError(
2599
- `Unexpected spread syntax in ${He}() argument. ${He}() arguments must be statically parsable at compile time`,
2600
- {
2601
- file: i.file,
2602
- node: e
2603
- }
2604
- );
2605
- return;
2606
- }
2607
- 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));
2609
- }
2610
- }
2611
- function zt(e, t) {
2612
- const n = t.program?.getTypeChecker?.();
2613
- if (n === void 0)
2614
- return;
2615
- const i = n.getTypeAtLocation(e);
2616
- if (!((i.aliasSymbol ?? i.symbol)?.name === "EventEmitter"))
2617
- return;
2618
- const s = n.getTypeArguments(i);
2619
- if (s.length === 0)
2620
- return _e;
2621
- const l = s[0];
2622
- return n.typeToTypeNode(l, e, o.NodeBuilderFlags.NoTruncation);
2623
- }
2624
- function vi(e, t, n, i) {
2625
- if (t === void 0) {
2626
- i.emitError("Computed property names are not yet supported", { file: i.file, node: e });
2627
- return;
2628
- }
2629
- 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;
2631
- if (c && e.modifiers !== void 0)
2632
- for (let T = 0; T < e.modifiers.length; ++T)
2633
- switch (e.modifiers[T].kind) {
2634
- case o.SyntaxKind.ReadonlyKeyword:
2635
- f = !0;
2636
- continue;
2637
- case o.SyntaxKind.AccessorKeyword:
2638
- u = !0;
2639
- continue;
2640
- case o.SyntaxKind.ProtectedKeyword:
2641
- g = "protected";
2642
- continue;
2643
- case o.SyntaxKind.StaticKeyword:
2644
- y = !0;
2645
- continue;
2646
- case o.SyntaxKind.AbstractKeyword:
2647
- E = !0;
2648
- continue;
2649
- }
2650
- n ||= f || m && i.pairedSetter === void 0;
2651
- const b = i.apiObject.customElement === !0;
2652
- let v = !1;
2653
- if (i.moduleHasAccessorLikeClass)
2654
- 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);
2659
- continue;
2660
- }
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(
2663
- d,
2664
- C.initializer?.kind === o.SyntaxKind.ObjectLiteralExpression ? C.initializer : void 0
2665
- );
2666
- }
2667
- v && d.hasAutoCasting === void 0 && (d.hasAutoCasting = !0, d.autoCastingRequiresType = !0);
2668
- } else l !== void 0 && (d.hasAutoCasting = !0, d.autoCastingRequiresType = !0);
2669
- else if (b) {
2670
- const T = i.apiObject;
2671
- if (s === void 0) {
2672
- if (p)
2673
- return;
2674
- {
2675
- const C = c && !y ? Do(e, t, i) : void 0;
2676
- if (C !== void 0) {
2677
- T.events ??= [], T.events.push(C);
2678
- return;
2679
- } else !i.config.strict && gi(e) ? (g = "protected", h = !1, i.jsDoc = {
2680
- ...i.jsDoc,
2681
- docsTags: [...i.jsDoc.docsTags, W.internal]
2682
- }) : s === void 0 && i.emitError(
2683
- "Public properties on a Lumina component must have a @property() decorator for lazy-loading compatibility.",
2684
- {
2685
- file: i.file,
2686
- node: e
2687
- }
2688
- );
2689
- }
2690
- } 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) {
2695
- case "attribute":
2696
- o.isStringLiteral(L.initializer) ? h = L.initializer.text : h = oe(L.initializer, i);
2697
- continue;
2698
- case "reflect":
2699
- oe(L.initializer, i) && (h ??= !0, M = !0);
2700
- continue;
2701
- case "readOnly":
2702
- oe(L.initializer, i) && (n = !0);
2703
- continue;
2704
- case "type":
2705
- case "converter":
2706
- h ??= !0;
2707
- continue;
2708
- }
2709
- }
2710
- }
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)) {
2718
- if (n)
2719
- return $t(T, t, e, i);
2720
- jt(e, i);
2721
- }
2722
- D = T === void 0 ? zn(e, i) ?? Q(
2723
- { file: i.file, node: e },
2724
- "Public property must have a type annotation or a default value",
2725
- i
2726
- ) : ht(T, n ? O.shallow : O.false, i.file, i);
2727
- } else if (D = Et(D), c && o.isFunctionTypeNode(D)) {
2728
- if (n)
2729
- return $t(D, t, e, i);
2730
- jt(e, i);
2731
- }
2732
- const S = {
2733
- [Y]: d,
2734
- kind: "field",
2735
- name: t,
2736
- static: y,
2737
- deprecated: void 0,
2738
- summary: void 0,
2739
- description: void 0,
2740
- docsTags: void 0,
2741
- // In minimal extraction, we care only for type.values (set below)
2742
- type: p ? { ...ui } : z(D, i),
2743
- getterType: void 0,
2744
- default: void 0,
2745
- readonly: n || void 0,
2746
- inheritedFrom: void 0,
2747
- privacy: g,
2748
- source: void 0,
2749
- attribute: !b || h === !1 ? void 0 : typeof h == "string" ? h : qi(t),
2750
- reflects: M,
2751
- docsOnlyReadonly: void 0
2752
- };
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
2762
- 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;
2765
- 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()
2774
- ));
2775
- }
2776
- C && _?.type !== void 0 && F !== void 0 && _.type.getText() !== F.parameters[0]?.type?.getText() && (S.getterType = {
2777
- text: z(_.type, i).text,
2778
- references: void 0,
2779
- values: void 0,
2780
- source: void 0
2781
- });
2782
- }
2783
- }
2784
- if (k !== void 0 && I !== void 0 && !p && // Quick perf check: type is definitely the same if raw type string matches.
2785
- // More reliable check follows in processing/index.ts, where printed normalized
2786
- // 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(
2791
- e.initializer,
2792
- S.default,
2793
- 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`
2798
- ), i.loggedBooleanWarning = !0));
2799
- }
2800
- return co(
2801
- i,
2802
- e,
2803
- i.config.documentation.copyDocDefinitions?.properties,
2804
- S,
2805
- 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
2807
- // 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;
2809
- }
2810
- function jt(e, t) {
2811
- if (!t.config.strict)
2812
- return;
2813
- const n = t.jsDoc.docsTags;
2814
- for (let i = 0; i < n.length; ++i) {
2815
- const a = n[i].name;
2816
- if (a === "param" || a === "returns") {
2817
- t.emitError(
2818
- "@param and @returns tags are only allowed on method-like properties. If this property is intended to be documented as a method, please add the 'readonly' modifier.",
2819
- {
2820
- file: t.file,
2821
- node: e
2822
- }
2823
- );
2824
- return;
2825
- }
2826
- }
2827
- }
2828
- function Io(e, t) {
2829
- if (e.hasAutoCasting = !0, e.autoCastingRequiresType = !0, t !== void 0)
2830
- for (let n = 0; n < t.properties.length; ++n) {
2831
- const i = t.properties[n];
2832
- if (o.isPropertyAssignment(i) && i.name.escapedText === "defaultKeyValue" && o.isStringLiteral(i.initializer)) {
2833
- e.autoCastingDefaultType = i.initializer.text;
2834
- return;
2835
- }
2836
- }
2837
- }
2838
- const gi = (e) => o.isPropertyDeclaration(e) && e.initializer !== void 0 && o.isCallExpression(e.initializer) && o.isIdentifier(e.initializer.expression) && e.initializer.expression.escapedText === "useT9n";
2839
- function Ye(e, t) {
2840
- const n = o.isClassDeclaration(e);
2841
- let i = e.name.escapedText;
2842
- const a = n ? t.componentTagName : void 0, s = !n && ci(i, t);
2843
- if (t.file.fileName.includes("serial-chart-model"))
2844
- debugger;
2845
- let l = e.heritageClauses === void 0 || s ? void 0 : e.heritageClauses[0]?.token === o.SyntaxKind.ExtendsKeyword ? e.heritageClauses[0] : e.heritageClauses[1]?.token === o.SyntaxKind.ExtendsKeyword ? e.heritageClauses[1] : void 0;
2846
- if (t.config.context.supportApplyMixinsSyntax && !n && l?.types.length === 1 && o.isExpressionWithTypeArguments(l.types[0]) && l.types[0].expression.escapedText === "MixinInstances" && l.types[0].typeArguments?.length === 1) {
2847
- ko(i, l.types[0].typeArguments[0], t);
2848
- return;
2849
- }
2850
- const r = n && t.mixinName !== void 0 && l !== void 0 && o.isExpressionWithTypeArguments(l.types[0]) && o.isIdentifier(l.types[0].expression) && l.types[0].expression.escapedText === "TypedBase";
2851
- r && (l = void 0, i = t.mixinName);
2852
- const c = ti(), m = {
2853
- [Y]: c,
2854
- kind: n ? "class" : "interface",
2855
- name: i,
2856
- customElement: a === void 0 ? void 0 : !0,
2857
- tagName: a,
2858
- privacy: void 0,
2859
- pascalCaseName: a === void 0 ? void 0 : (
2860
- /**
2861
- * We use the tag name rather than the class name to generate the
2862
- * type name because the class name may not start with the library
2863
- * prefix (Arcgis), where as tag name always does. This also matches
2864
- * Stencil's behavior.
2865
- */
2866
- Xi(a)
2867
- ),
2868
- deprecated: void 0,
2869
- summary: void 0,
2870
- description: void 0,
2871
- docsTags: void 0,
2872
- demos: void 0,
2873
- typeParameters: r ? void 0 : it(e.typeParameters, !0, t),
2874
- superclass: void 0,
2875
- supertypes: void 0,
2876
- mixins: void 0,
2877
- encapsulation: void 0,
2878
- members: [],
2879
- attributes: void 0,
2880
- events: void 0,
2881
- slots: void 0,
2882
- cssParts: void 0,
2883
- cssProperties: void 0,
2884
- cssStates: void 0,
2885
- type: void 0,
2886
- source: void 0,
2887
- // REFACTOR: remove this deprecated property
2888
- importPath: a === void 0 ? void 0 : t.apiModule.path
2889
- }, d = m, p = d, f = d;
2890
- ii(m, t.jsDoc);
2891
- const u = s ? (
2892
- // Members will be added during post-processing
2893
- !1
2894
- ) : Si(d, e.members, i, t);
2895
- r && (t.mixinMixins !== void 0 && (p.mixins = t.mixinMixins), u && t.emitError("Mixin class is not expected to have a @public constructor", { file: t.file, node: e })), l === void 0 ? a !== void 0 && p.superclass === void 0 && t.emitError(
2896
- "Lumina web component must extend LitElement class. Found a class that does not extend any class.",
2897
- {
2898
- file: t.file,
2899
- node: e
2900
- }
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(
2904
- t,
2905
- e,
2906
- t.config.documentation.copyDocDefinitions.classes,
2907
- p,
2908
- t.apiModule
2909
- ) : vo(
2910
- t,
2911
- e,
2912
- t.config.documentation.copyDocDefinitions.customElements,
2913
- p,
2914
- t.apiModule
2915
- ), t.moduleHasClass && t.config.strict && t.emitError(
2916
- "A module may only export at most one public class/mixin/custom element. Documentation: https://webgis.esri.com/webgis/core/core/documenting-api#class",
2917
- { file: t.file, node: e }
2918
- ), t.moduleHasClass = !0) : fi(
2919
- t,
2920
- e,
2921
- t.config.documentation.copyDocDefinitions.interfaces,
2922
- f,
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.", {
2925
- file: t.file,
2926
- node: e
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;
2928
- }
2929
- function Ao(e, t, n, i, a) {
2930
- for (let s = 0; s < e.types.length; ++s) {
2931
- const l = e.types[s];
2932
- if (t) {
2933
- let r = l.typeArguments, c = l.expression;
2934
- if (o.isCallExpression(c)) {
2935
- do {
2936
- const p = c.expression;
2937
- if (o.isPropertyAccessExpression(p) && o.isIdentifier(p.expression) && o.isIdentifier(p.name) && p.expression.escapedText === "Collection" && p.name.escapedText === "ofType") {
2938
- const f = c.arguments[0];
2939
- if (!o.isIdentifier(f)) {
2940
- a.emitError("Expected the argument to Collection.ofType to be an identifier.", {
2941
- file: a.file,
2942
- node: f
2943
- });
2944
- break;
2945
- }
2946
- r = [o.factory.createTypeReferenceNode(f)], c = p.expression;
2947
- } else {
2948
- n.mixins ??= [];
2949
- const f = c.expression;
2950
- n.mixins.unshift(
2951
- Ee(f, c.typeArguments, a)
2952
- ), c = c.arguments[0];
2953
- }
2954
- } while (o.isCallExpression(c));
2955
- if (o.isClassExpression(c)) {
2956
- (c.members.length !== 0 || c.heritageClauses !== void 0) && a.emitError(
2957
- "The only supported inline class expression is an empty class. Extract into a separate named class",
2958
- { file: a.file, node: c }
2959
- );
2960
- break;
2961
- } else o.isExpressionWithTypeArguments(c) && (r = c.typeArguments, c = c.expression);
2962
- }
2963
- const m = Ee(c, r, a);
2964
- if (m.name === "LitElement") {
2965
- m.name = "PublicLitElement", m.module = "PublicLitElement", m.package = "@arcgis/lumina";
2966
- const p = a.moduleContext.importsMap.LitElement;
2967
- p === void 0 ? a.emitError("Expected LitElement import to be defined", { file: a.file, node: i }) : p.actualName = "PublicLitElement";
2968
- }
2969
- const d = te(n);
2970
- d.superClassText = m.printableText, m.printableText = void 0, n.superclass = m;
2971
- break;
2972
- } else {
2973
- const r = no(l);
2974
- let c = r, m;
2975
- if (o.isExpressionWithTypeArguments(r))
2976
- c = r.expression, m = r.typeArguments;
2977
- 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
- continue;
2979
- const d = Ee(c, m, a), p = te(n);
2980
- p.superTypesText ??= [], p.superTypesText.push(d.printableText), d.printableText = void 0, n.supertypes ??= [], n.supertypes.push(d);
2981
- }
2982
- }
2983
- }
2984
- function Si(e, t, n, i) {
2985
- i.apiObject = e;
2986
- const a = e.customElement === !0, s = e.members, l = t.length;
2987
- let r, c = t[0], m, d = Re(c?.name), p = !1;
2988
- for (let f = 0; f < l; ++f) {
2989
- if (r = c, c = t[f + 1], m = d, d = Re(c?.name), i.pairedSetter !== void 0) {
2990
- i.pairedSetter = void 0;
2991
- continue;
2992
- }
2993
- if (m === void 0 && r.name?.kind === o.SyntaxKind.PrivateIdentifier)
2994
- continue;
2995
- c !== void 0 && m === d && (o.isGetAccessor(c) ? (i.pairedSetter = r, r = c) : o.isSetAccessor(c) && (i.pairedSetter = c));
2996
- let u = j(r, !0, i) ?? (i.pairedSetter === void 0 ? void 0 : j(i.pairedSetter, !0, i));
2997
- if (u === void 0 && !i.config.strict && (a ? m !== void 0 && Jt(r, i.pairedSetter, !0) : !li(r.modifiers, o.SyntaxKind.PrivateKeyword))) {
2998
- 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;
3000
- } else u === void 0 && a && i.config.context.includeLuminaPrivateComponents && Jt(r, i.pairedSetter, !1) && (u = Ce);
3001
- 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");
3003
- continue;
3004
- }
3005
- i.jsDoc = u;
3006
- let g;
3007
- o.isPropertyDeclaration(r) || o.isPropertyAssignment(r) || o.isGetAccessorDeclaration(r) || o.isSetAccessorDeclaration(r) || o.isPropertySignature(r) ? g = vi(r, m, !1, i) : o.isMethodDeclaration(r) || o.isMethodSignature(r) ? g = st(r, m, void 0, i) : o.isConstructorDeclaration(r) || o.isConstructSignatureDeclaration(r) ? (p = !0, g = st(r, n, void 0, i)) : o.isCallSignatureDeclaration(r) ? g = st(r, n, void 0, i) : o.isIndexSignatureDeclaration(r) && e.kind === "interface" ? (rt.members.splice(
3008
- 0,
3009
- rt.members.length,
3010
- r
3011
- ), Ti(e, rt, i), te(e).emitAsTypeAlias = !0) : i.emitError(`@public used on unsupported member kind: ${o.SyntaxKind[r.kind]}`, {
3012
- file: i.file,
3013
- node: r
3014
- }), g !== void 0 && s.push(g);
3015
- }
3016
- return i.apiObject = void 0, p;
3017
- }
3018
- const rt = o.factory.createTypeLiteralNode(void 0);
3019
- function Jt(e, t, n) {
3020
- if (e.kind === o.SyntaxKind.PropertyDeclaration || e.kind === o.SyntaxKind.GetAccessor || e.kind === o.SyntaxKind.SetAccessor) {
3021
- const i = e;
3022
- if ((xe(i.modifiers, "property") ?? (t === void 0 ? void 0 : xe(t.modifiers, "property"))) !== void 0)
3023
- return !0;
3024
- if (!n)
3025
- return !1;
3026
- if (gi(e))
3027
- return !0;
3028
- if (i.modifiers !== void 0)
3029
- for (let s = 0; s < (i.modifiers?.length ?? 0); ++s) {
3030
- const l = i.modifiers[s];
3031
- if (l.kind === o.SyntaxKind.PrivateKeyword || l.kind === o.SyntaxKind.ProtectedKeyword || l.kind === o.SyntaxKind.StaticKeyword)
3032
- return !1;
3033
- }
3034
- return e.kind === o.SyntaxKind.PropertyDeclaration && i.initializer !== void 0 && o.isCallExpression(i.initializer) ? o.isIdentifier(i.initializer.expression) && (i.initializer.expression.escapedText === "createEvent" || i.initializer.expression.escapedText === "useCloseEvent" || i.initializer.expression.escapedText === "useArcgisLoadError" || i.initializer.expression.escapedText === "useArcgisViewReadyError" || i.initializer.expression.escapedText === "reEmitEvent") || o.isCallExpression(i.initializer.expression) && o.isIdentifier(i.initializer.expression.expression) && i.initializer.expression.expression.escapedText === "usePropertyChange" : !1;
3035
- } else return e.kind === o.SyntaxKind.MethodDeclaration ? xe(e.modifiers, "method") !== void 0 : !1;
3036
- }
3037
- function Ti(e, t, n) {
3038
- const i = z(t, n);
3039
- if (e.type === void 0)
3040
- e.type = i;
3041
- else {
3042
- const a = `${e.type.text} &
3043
- `, s = a.length;
3044
- e.type = {
3045
- text: `${a}${i.text}`,
3046
- references: i.references === void 0 ? e.type.references : e.type.references === void 0 ? Gt(i.references, s) : [...e.type.references, ...Gt(i.references, s)],
3047
- values: void 0,
3048
- source: void 0
3049
- };
3050
- }
3051
- }
3052
- function ko(e, t, n) {
3053
- if (!o.isTypeQueryNode(t)) {
3054
- n.emitError("Expected a TypeQueryNode for applyMixins syntax", { file: n.file, node: t });
3055
- return;
3056
- }
3057
- if (!o.isIdentifier(t.exprName)) {
3058
- n.emitError("Expected an Identifier for the expression name in applyMixins syntax", {
3059
- file: n.file,
3060
- node: t
3061
- });
3062
- return;
3063
- }
3064
- const i = t.exprName.escapedText;
3065
- let a;
3066
- for (let r = n.file.statements.length - 1; r >= 0; --r) {
3067
- const c = n.file.statements[r];
3068
- if (!o.isVariableStatement(c))
3069
- continue;
3070
- const m = c.declarationList.declarations[0];
3071
- if (o.isIdentifier(m.name) && m.name?.escapedText === i) {
3072
- a = m;
3073
- break;
3074
- }
3075
- }
3076
- if (a === void 0) {
3077
- n.emitError(`Could not find variable declaration for ${i} in applyMixins syntax`, {
3078
- file: n.file,
3079
- node: t
3080
- });
3081
- return;
3082
- }
3083
- if (a.initializer === void 0 || !o.isAsExpression(a.initializer) || !o.isArrayLiteralExpression(a.initializer.expression)) {
3084
- n.emitError(
3085
- `Expected an 'as' expression with an array literal for the initializer of ${i} in applyMixins syntax`,
3086
- {
3087
- file: n.file,
3088
- node: a
3089
- }
3090
- );
3091
- return;
3092
- }
3093
- const s = n.apiModule.declarations.at(-1);
3094
- if (s?.kind !== "class" || s.name !== e) {
3095
- n.emitError(
3096
- `Expected the ${e} class to be defined right before the ${e} interface`,
3097
- {
3098
- file: n.file,
3099
- node: t
3100
- }
3101
- );
3102
- return;
3103
- }
3104
- const l = a.initializer.expression.elements;
3105
- s.mixins ??= [];
3106
- for (let r = 0; r < l.length; ++r) {
3107
- const c = l[r];
3108
- if (!o.isIdentifier(c)) {
3109
- n.emitError(`Expected an Identifier in the mixins array for ${i} in applyMixins syntax`, {
3110
- file: n.file,
3111
- node: c
3112
- });
3113
- return;
3114
- }
3115
- s.mixins.unshift(Ee(c, void 0, n));
3116
- }
3117
- }
3118
- function Fo(e, t) {
3119
- const n = e.type, i = e.name.escapedText, a = ci(i, t), s = ti(), l = {
3120
- [Y]: s,
3121
- kind: "interface",
3122
- name: i,
3123
- customElement: void 0,
3124
- tagName: void 0,
3125
- privacy: void 0,
3126
- pascalCaseName: void 0,
3127
- deprecated: void 0,
3128
- summary: void 0,
3129
- description: void 0,
3130
- docsTags: void 0,
3131
- demos: void 0,
3132
- typeParameters: it(e.typeParameters, !0, t),
3133
- superclass: void 0,
3134
- supertypes: void 0,
3135
- mixins: void 0,
3136
- encapsulation: void 0,
3137
- members: [],
3138
- attributes: void 0,
3139
- events: void 0,
3140
- slots: void 0,
3141
- cssParts: void 0,
3142
- cssProperties: void 0,
3143
- cssStates: void 0,
3144
- type: void 0,
3145
- source: void 0,
3146
- importPath: void 0
3147
- }, r = l;
3148
- ii(l, t.jsDoc);
3149
- let c;
3150
- if (a)
3151
- t.moduleContext.constructorPropertiesInterface = r;
3152
- else {
3153
- s.emitAsTypeAlias = !0;
3154
- const m = o.isIntersectionTypeNode(n) ? n.types : [n];
3155
- for (let d = 0; d < m.length; ++d) {
3156
- const p = Et(m[d]);
3157
- if (o.isTypeLiteralNode(p))
3158
- Si(r, p.members, i, t);
3159
- else if (o.isTypeReferenceNode(p)) {
3160
- r.supertypes ??= [];
3161
- const f = Ee(p.typeName, p.typeArguments, t);
3162
- c ??= [], c.push(f.printableText), f.printableText = void 0, r.supertypes.push(f);
3163
- } else if (o.isFunctionTypeNode(p) || o.isConstructorTypeNode(p)) {
3164
- if (t.jsDoc = Ue, r.docsTags !== void 0) {
3165
- t.jsDoc = { ...Ue, docsTags: [] };
3166
- for (let f = 0; f < r.docsTags.length; ++f) {
3167
- const u = r.docsTags[f];
3168
- (u.name === "param" || u.name === "returns") && (t.jsDoc.docsTags.push(u), r.docsTags.splice(f, 1), f -= 1);
3169
- }
3170
- r.docsTags.length === 0 && (r.docsTags = void 0);
3171
- }
3172
- r.members.push(So(p, i, void 0, t));
3173
- } else
3174
- Ti(r, p, t);
3175
- }
3176
- }
3177
- return t.objectLikeTypeParameters = void 0, fi(
3178
- t,
3179
- e,
3180
- t.config.documentation.copyDocDefinitions.interfaces,
3181
- r,
3182
- t.apiModule
3183
- ), t.produceDts && c !== void 0 && (s.superTypesText = c), r.members.length === 0 && (r.members = void 0), r;
3184
- }
3185
- function wo(e, t, n) {
3186
- const i = e.initializer, a = i.body;
3187
- let s, l;
3188
- for (let d = 0; d < a.statements.length; ++d) {
3189
- const p = a.statements[d];
3190
- if (o.isVariableStatement(p)) {
3191
- const f = p.declarationList.declarations[0];
3192
- if (!o.isIdentifier(f.name) || f.name?.escapedText !== "TypedBase")
3193
- continue;
3194
- let u = f.initializer.expression.expression;
3195
- for (; o.isCallExpression(u); ) {
3196
- const g = u.expression;
3197
- s ??= [], s.push(Ee(g, u.typeArguments, n)), u = u.arguments[0];
3198
- }
3199
- } else o.isClassDeclaration(p) && (l = p);
3200
- }
3201
- if (l === void 0) {
3202
- n.emitError(`Failed to find class declaration inside the mixin ${t}`, {
3203
- file: n.file,
3204
- node: e
3205
- });
3206
- return;
3207
- }
3208
- it(
3209
- // Skip the TBase type parameter - non-public implementation detail
3210
- i.typeParameters.length === 1 ? void 0 : i.typeParameters.slice(1),
3211
- !0,
3212
- n
3213
- ) !== void 0 && n.emitError(
3214
- "Type parameters are not yet supported in public mixins (the first TBase type parameter is a special case). See workaround in https://webgis.esri.com/webgis/core/core/mixins#limitations-of-mixins",
3215
- {
3216
- file: n.file,
3217
- node: e
3218
- }
3219
- ), n.mixinName = t, n.mixinMixins = s;
3220
- const m = Ye(l, n);
3221
- return m.kind = "mixin", m;
3222
- }
3223
- function No(e, t, n) {
3224
- const i = n.moduleHasClass;
3225
- n.moduleHasClass = !1;
3226
- const a = o.factory.createClassDeclaration(
3227
- [o.factory.createModifier(o.SyntaxKind.ExportKeyword)],
3228
- t,
3229
- void 0,
3230
- [
3231
- o.factory.createHeritageClause(o.SyntaxKind.ExtendsKeyword, [
3232
- o.factory.createExpressionWithTypeArguments(e, void 0)
3233
- ])
3234
- ],
3235
- []
3236
- ), s = Ye(a, n), l = s, r = te(l);
3237
- 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
- }
3239
- function Oo(e, t) {
3240
- const n = e.declarationList.declarations;
3241
- n.length !== 1 && t.emitError("Public variable statements must have only a single variable declarations. Found multiple.", {
3242
- file: t.file,
3243
- node: e
3244
- });
3245
- const i = n[0], a = i.name;
3246
- if (!o.isIdentifier(a)) {
3247
- t.config.strict && t.emitError("Expected public variable names to be an identifier.", {
3248
- file: t.file,
3249
- node: e
3250
- });
3251
- return;
3252
- }
3253
- const s = a.escapedText, l = t.exportDefaultName === s;
3254
- if (et(e) === 0 && !l && t.config.strict && t.emitError("Expected @public variable to be exported as named or default export.", {
3255
- file: t.file,
3256
- node: e
3257
- }), t.mixinName !== void 0 && i.initializer !== void 0 && o.isCallExpression(i.initializer) && o.isIdentifier(i.initializer.expression) && i.initializer.expression.escapedText === t.mixinName)
3258
- return No(i.initializer, s, t);
3259
- let c = i.type;
3260
- const m = (e.declarationList.flags & o.NodeFlags.Const) !== 0;
3261
- if (c === void 0) {
3262
- const u = i.initializer;
3263
- if (u !== void 0 && o.isArrowFunction(u) && m)
3264
- return u.typeParameters?.at(0)?.name?.escapedText === "TBase" ? wo(i, s, t) : Ht(u, s, e, t);
3265
- u === void 0 ? c = Q(
3266
- { file: t.file, node: i },
3267
- "Public variable must have a type annotation or a default value",
3268
- t
3269
- ) : c = ht(u, m ? O.shallow : O.false, t.file, t);
3270
- } else if (c = Et(c), o.isFunctionTypeNode(c))
3271
- return Ht(c, s, e, t);
3272
- const d = Ni(), p = {
3273
- [Y]: d,
3274
- kind: "variable",
3275
- name: s,
3276
- deprecated: void 0,
3277
- summary: void 0,
3278
- description: void 0,
3279
- docsTags: void 0,
3280
- source: void 0,
3281
- type: z(c, t),
3282
- default: void 0
3283
- };
3284
- return dn(p, t.jsDoc), m && c.kind === o.SyntaxKind.LiteralType || (p.default = Be(i.initializer, p.default, t.file)), fo(
3285
- t,
3286
- e,
3287
- t.config.documentation.copyDocDefinitions.variables,
3288
- p,
3289
- t.apiModule
3290
- ), l && (Ct(p, !0, t), t.produceDts && (d.isDefaultExported = !0)), p;
3291
- }
3292
- function hi(e, t, n) {
3293
- const i = n.statementJsDocs[t];
3294
- if (i !== void 0) {
3295
- if (n.jsDoc = i, o.isClassDeclaration(e))
3296
- return Ye(e, n);
3297
- if (o.isFunctionDeclaration(e))
3298
- return go(e, e.name.escapedText, void 0, n);
3299
- if (o.isInterfaceDeclaration(e))
3300
- return Ye(e, n);
3301
- if (o.isTypeAliasDeclaration(e))
3302
- return Fo(e, n);
3303
- if (o.isVariableStatement(e))
3304
- return Oo(e, n);
3305
- }
3306
- }
3307
- function Go(e, t) {
3308
- const n = t.apiModule.declarations, i = e.statements;
3309
- for (let a = 0; a < i.length; ++a) {
3310
- const s = i[a], l = hi(s, a, t);
3311
- l !== void 0 && n.push(l);
3312
- }
3313
- }
3314
- function Vo(e, t) {
3315
- const n = e.fileName.slice(t.config.context.cwd.length), i = t.watchFiles?.get(n);
3316
- if (i !== void 0) {
3317
- if (i.module !== void 0)
3318
- return i.module;
3319
- if (i.isEmptyModule)
3320
- return;
3321
- }
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`;
3323
- t.mixinName = void 0, t.moduleHasClass = !1, t.apiClassLikeName = void 0, t.isInLuminaMinimalExtraction = t.config.context.isLuminaMinimalExtraction;
3324
- const c = /* @__PURE__ */ Object.create(null), m = t.localDeclarations;
3325
- m.clear();
3326
- const d = t.localPrivateDeclarations;
3327
- d?.clear(), t.exportDefaultName = void 0;
3328
- let p;
3329
- const f = {
3330
- class: void 0,
3331
- default: void 0,
3332
- named: /* @__PURE__ */ Object.create(null)
3333
- }, u = ei(e, r, c, f);
3334
- t.moduleContext = u;
3335
- const g = t.implicitPublicModules?.[l], E = t.isJsApi && l.startsWith("applications/");
3336
- 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;
3340
- if (
3341
- // Only look at web components in Lumina's dev server
3342
- t.isInLuminaMinimalExtraction
3343
- )
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)
3357
- 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,
3366
- actualName: void 0,
3367
- wasUsed: !1
3368
- };
3369
- }
3370
- const $ = I.namedBindings;
3371
- if ($ === void 0)
3372
- continue;
3373
- 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] = {
3376
- type: "*",
3377
- modulePath: A,
3378
- specifier: L,
3379
- replacementName: C,
3380
- actualName: void 0,
3381
- wasUsed: !1
3382
- };
3383
- } 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,
3392
- wasUsed: !1
3393
- };
3394
- }
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)));
3399
- }
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);
3403
- u.reExports ??= [];
3404
- 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;
3409
- $.push({
3410
- exportName: J,
3411
- aliasName: _,
3412
- isTypeOnly: v.isTypeOnly
3413
- }), !t.config.strict && N !== void 0 && ze(N, S, J, t);
3414
- }
3415
- } else
3416
- $.push({
3417
- exportName: "*",
3418
- aliasName: v.exportClause === void 0 ? void 0 : Re(v.exportClause.name),
3419
- isTypeOnly: !1
3420
- }), !t.config.strict && N !== void 0 && ze(N, S, "*", t);
3421
- u.reExports.push({
3422
- modulePath: N,
3423
- specifier: B,
3424
- isTypeOnly: v.isTypeOnly,
3425
- specifiers: $
3426
- });
3427
- }
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
3431
- );
3432
- }
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],
3443
- actualName: void 0,
3444
- wasUsed: !1
3445
- };
3446
- }
3447
- }
3448
- t.moduleHasAccessorLikeClass = c.subclass?.specifier.includes("accessorSupport") ?? !1;
3449
- const h = {
3450
- [Y]: u,
3451
- kind: "javascript-module",
3452
- path: l,
3453
- sourcePath: n,
3454
- deprecated: void 0,
3455
- description: void 0,
3456
- docsTags: void 0,
3457
- summary: void 0,
3458
- declarations: [],
3459
- exports: []
3460
- };
3461
- if (t.apiModule = h, Go(e, t), d !== void 0) {
3462
- let b = !1;
3463
- 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))
3470
- 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.`,
3472
- {
3473
- file: e,
3474
- node: R
3475
- }
3476
- );
3477
- else {
3478
- t.statementJsDocs[x] = I;
3479
- const D = hi(R, x, t);
3480
- D !== void 0 && h.declarations.push(D);
3481
- }
3482
- }
3483
- } while (b);
3484
- }
3485
- if (h.declarations.length === 0 && u.reExports === void 0 && u.namespaces === void 0) {
3486
- i !== void 0 && (i.isEmptyModule = !0);
3487
- return;
3488
- }
3489
- t.moduleMap.set(l, h), t.watchFiles !== void 0 && (i === void 0 ? t.watchFiles.set(h.sourcePath, {
3490
- file: u.file,
3491
- module: h,
3492
- previousModule: void 0,
3493
- isEmptyModule: !1,
3494
- dependencies: /* @__PURE__ */ new Set(),
3495
- dependents: /* @__PURE__ */ new Map(),
3496
- docLinks: [],
3497
- hasDirtyLinks: !1,
3498
- wasRemoved: !1
3499
- }) : i.module = h);
3500
- const M = t.componentTagName === void 0 ? h.exports[0]?.declaration.name : void 0;
3501
- 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;
3505
- }
3506
- return p !== void 0 && (t.moduleHasClass ? t.emitError(
3507
- "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",
3508
- {
3509
- file: e,
3510
- start: 0,
3511
- length: e.statements[0]?.getStart(e) ?? 1,
3512
- node: void 0
3513
- }
3514
- ) : (E && p.docsTags.push(W.internal), rn(h, p))), h;
3515
- }
3516
- async function Sa(e) {
3517
- const t = [], n = e.basePath, i = e.config.context.excludedDirectories, a = `${e.basePath}components/`, s = [], l = !e.config.strict || e.config.context.includeLuminaPrivateComponents;
3518
- e.componentPathMapping = /* @__PURE__ */ Object.create(null);
3519
- const r = e.isComponentProject ? (p) => Bi(p, a) : () => !1, c = e.isComponentProject ? m : d;
3520
- if (e.program === void 0)
3521
- await Mi(n, i, async (p) => {
3522
- if (Ei(p))
3523
- return;
3524
- const f = await Dt(p);
3525
- if (p.includes(".stories.")) {
3526
- const E = f.toString("utf8");
3527
- Ot(E, p, e);
3528
- return;
3529
- }
3530
- const u = r(p);
3531
- if (u && l || // Exclude files before paying .toString() cost
3532
- f.includes(Ho) && (f.includes($o) || f.includes(Bo))) {
3533
- const E = f.toString("utf8"), y = Xt(p, E);
3534
- c(y, u);
3535
- }
3536
- });
3537
- else {
3538
- const p = e.program.getSourceFiles();
3539
- for (let f = 0; f < p.length; ++f) {
3540
- const u = p[f], g = u.fileName;
3541
- if (!_o(g, e))
3542
- continue;
3543
- if (g.includes(".stories.")) {
3544
- Ot(u.text, g, e);
3545
- continue;
3546
- }
3547
- const E = r(g);
3548
- (E && l || u.text.includes(Ci) || u.text.includes(bi)) && c(u, E);
3549
- }
3550
- }
3551
- function m(p, f) {
3552
- s.push(p);
3553
- const u = f ? Ui(p.text)?.[0] : void 0;
3554
- if (u !== void 0) {
3555
- const g = p.fileName.slice(e.basePath.length);
3556
- zi(u, e, g);
3557
- }
3558
- }
3559
- function d(p) {
3560
- e.file = p;
3561
- const f = Vo(p, e);
3562
- f !== void 0 && t.push(f);
3563
- }
3564
- for (let p = 0; p < s.length; ++p)
3565
- d(s[p]);
3566
- if (e.implicitPublicModules !== void 0) {
3567
- let p = !1;
3568
- do {
3569
- p = !1;
3570
- for (const f in e.implicitPublicModules) {
3571
- const u = e.implicitPublicModules[f], g = u.actualModulePath ?? f, E = e.moduleMap.get(g);
3572
- if (u.extractedNames === void 0)
3573
- continue;
3574
- 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;
3581
- break;
3582
- }
3583
- if (x)
3584
- continue;
3585
- }
3586
- if (E !== void 0) {
3587
- t.splice(t.indexOf(E), 1);
3588
- const b = e.watchFiles?.get(E.sourcePath);
3589
- b !== void 0 && (b.module = void 0);
3590
- }
3591
- 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);
3596
- }
3597
- }
3598
- } while (p);
3599
- }
3600
- return t;
3601
- }
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(
3603
- Sn(e.slice(t.basePath.length))
3604
- ) && !e.includes("node_modules"), qt = 32, Ho = 64, Ci = "@public", $o = Buffer.from(Ci), bi = "@internal", Bo = Buffer.from(bi);
3605
- async function Ta(e) {
3606
- await Qt(e) && await Mi(e, /* @__PURE__ */ new Set(), $i);
3607
- }
3608
- async function Mi(e, t, n) {
3609
- const i = [], a = [];
3610
- for await (const d of await Lt(e)) {
3611
- const p = `${e}${d.name}`;
3612
- d.isDirectory() && !t.has(d.name) ? a.push(p) : (d.name.endsWith(".ts") || d.name.endsWith(".tsx")) && i.push(p);
3613
- }
3614
- const s = i.length === 0 ? [] : [i], l = Promise.withResolvers();
3615
- function r(d) {
3616
- l.reject(d), s.length = 0;
3617
- }
3618
- let c = qt;
3619
- for (let d = 0; d < qt; ++d)
3620
- m().catch(r);
3621
- async function m() {
3622
- for (; ; )
3623
- if (s.length === 0 && a.length > 0) {
3624
- const d = a.shift(), p = [];
3625
- for await (const f of await Lt(d, { recursive: !0 }))
3626
- f.isFile() && (f.name.endsWith(".ts") || f.name.endsWith(".tsx")) && p.push(`${xi(f.parentPath)}/${f.name}`);
3627
- if (p.length === 0)
3628
- continue;
3629
- s.push(p);
3630
- } else if (s.length > 0) {
3631
- const d = s[0], p = d.shift();
3632
- d.length === 0 && s.shift(), await n(p);
3633
- } else {
3634
- c -= 1, c === 0 && l.resolve();
3635
- return;
3636
- }
3637
- }
3638
- return await l.promise;
3639
- }
3640
- function Xt(e, t) {
3641
- return o.createSourceFile(
3642
- e,
3643
- t,
3644
- {
3645
- languageVersion: o.ScriptTarget.Latest,
3646
- impliedNodeFormat: o.ModuleKind.ESNext,
3647
- // TypeScript parses too much around @param, @property and @deprecated tags
3648
- // It also parses out inline tags. We have to put them back together
3649
- // (overhead and complexity). Plus, it is a bit too tolerant - we want
3650
- // to disallow some ambiguous behavior to improve consistency.
3651
- // So, we disable JSDoc parsing and do it ourselves.
3652
- jsDocParsingMode: o.JSDocParsingMode.ParseNone
3653
- },
3654
- !1,
3655
- e.endsWith("ts") ? o.ScriptKind.TS : o.ScriptKind.TSX
3656
- );
3657
- }
3658
- export {
3659
- ye as a,
3660
- fa as b,
3661
- Ta as c,
3662
- va as d,
3663
- Sa as e,
3664
- ya as f,
3665
- Wo as g,
3666
- Ko as h,
3667
- _o as i,
3668
- Ei as j,
3669
- Xt as k,
3670
- pa as l,
3671
- ma as m,
3672
- Vt as n,
3673
- Gt as o,
3674
- ua as p,
3675
- da as r,
3676
- ga as t
3677
- };