@arcgis/api-extractor 5.1.0-next.70 → 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,3686 +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-Y5GxUXJJ.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 ie, b as Zt, c as Tt, g as ae, p as Y, l as Ze, o as ei, f as Ai, e as De, m as ki, q as Fi, r as wi, s as ti, t as Ni } from "./apiHelpers-dNwlX631.js";
7
- import { maybeEscapePropertyName as xt, printTypeAlias as Rt, printInterface as Oi, printFunction as Gi, printVariable as Vi, printClass as Wi, printMethod as _i, printProperty as fe, printGetterSetter as Ki, printSignature as Hi } from "./utils/partPrinter.js";
8
- import oe from "chalk";
9
- 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 ee, getPackageNameFromExternalSpecifier as ct, extractInitializer as Be, extractBooleanInitializer as Z, 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", v = t?.emptyDtsEmitPath ?? (!E && u !== "");
49
- return {
50
- isResolvedConfig: !0,
51
- context: {
52
- dtsEmitPath: u,
53
- emptyDtsEmitPath: v,
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: v ? !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
- V[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), v = t && E === "public";
336
- m ||= v, d ||= t && E === "internal", p = v || E === "privateRemarks";
337
- const b = g === -1 ? "" : u.slice(g + 1);
338
- r = E, c = b;
339
- } 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
- V[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 === V.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 = ie(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 === V.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 === V.readonly ? e.readonly = !0 : i === V.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 === V.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 V = {
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: [V.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/OrientedImageryLayer": {
518
- const i = `import type { __FeatureLayerSansType } from "./FeatureLayer.js";
519
- `, a = `extends FeatureLayer {
520
- `, s = e.indexOf(a);
521
- return s === -1 ? (n.emitError(
522
- `Hardcoded behavior error: Expected .d.ts for ${t.path} to include "${a}".`,
523
- { file: ae(t).file, node: void 0 }
524
- ), e) : i + e.slice(0, s) + `extends __FeatureLayerSansType {
525
- ` + e.slice(s + a.length);
526
- }
527
- case "widgets/support/widget":
528
- return e + `
529
-
530
- export namespace tsx {
531
- namespace JSX {
532
- interface IntrinsicElements {
533
- [elementName: string]: any;
534
- }
535
-
536
- interface Element {
537
- }
538
- }
539
- }`;
540
- default:
541
- return e;
542
- }
543
- }
544
- function ua(e, t) {
545
- let n = `/// <reference types="../index.d.ts" />
546
- `, i = `
547
-
548
- `, a = "", s = "", l = "", r = "", c = "", m = "", d = "", p = "", f = "", u = "", g = "", E = "";
549
- for (let S = 0; S < e.length; ++S) {
550
- const R = e[S];
551
- for (let A = 0; A < R.declarations.length; ++A) {
552
- const W = R.declarations[A];
553
- if (W.customElement !== !0)
554
- continue;
555
- const _ = W;
556
- if (_.privacy !== void 0 || ie(_).hasExplicitAbstract === !0)
557
- continue;
558
- const { name: F, tagName: N, pascalCaseName: w, events: H } = _;
559
- i += `import type { ${F} } from "./${R.path}/customElement.js";
560
- `, n += `import type { ${F} } from "../${R.path}/customElement.js";
561
- `;
562
- const [me, ke] = un(_.name, _.members);
563
- let ne = "", q = "";
564
- if (H !== void 0) {
565
- for (let pe = 0; pe < H.length; ++pe) {
566
- const Fe = H[pe], Pt = `EventHandler<${F}["${Fe.name}"]>`;
567
- ne += ` ${xt(`on${Fe.name}`)}?: ${Pt};
568
- `, q += ` ${xt(`on${Fe.name[0].toUpperCase()}${Fe.name.slice(1)}`)}?: ${Pt};
569
- `;
570
- }
571
- a += `export interface ${w}CustomEvent<T> extends CustomEvent<T> {
572
- detail: T;
573
- target: ${F};
574
- currentTarget: ${F};
575
- }
576
- `, s += ` type HTML${w}ElementEventMap = ${F}["@eventTypes"];
577
- `;
578
- }
579
- s += ` type HTML${w}Element = ${F};
580
-
581
- `, l += ` "${N}": ${F};
582
- `, r += `interface Lumina${w} extends ${me}h.JSX.HTMLAttributes<${F}> {
583
- ${ne}}
584
-
585
- `, c += ` "${N}": Lumina${w};
586
- `, m += `interface Preact${w} extends ${me}HTMLAttributes<${F}> {
587
- ${ne}}
588
-
589
- `, d += ` "${N}": Preact${w};
590
- `, p += `interface React${w} extends ${me}HTMLProps<${F}> {
591
- ${ne}}
592
-
593
- `, f += ` "${N}": React${w};
594
- `, u += `interface Stencil${w} extends ${me}StencilJsx.HTMLAttributes<${F}> {
595
- ${q}}
596
-
597
- `, g += ` "${N}": Stencil${w};
598
- `, ke !== "" && (E += ke);
599
- }
600
- }
601
- if (s === "") {
602
- t.vanillaComponentTypes = "";
603
- return;
604
- }
605
- const v = "@arcgis/lumina";
606
- t.vanillaComponentTypes = `${i}
607
- export { ToEvents, TargetedEvent } from "${v}";
608
-
609
- ${a}
610
-
611
- declare global {
612
- interface HTMLElementTagNameMap {
613
- ${l}
614
- }
615
-
616
- ${s}
617
- }`;
618
- const b = `import "./index.js";
619
- export declare const defineCustomElements: import("${v}").DefineCustomElements;`, h = `${t.config.context.dtsEmitPath}loader.d.ts`;
620
- t.dtsFiles.set(h, b);
621
- const L = `${n}import type { h, EventHandler } from "${v}";
622
-
623
- ${E}${r}declare module "@arcgis/lumina" {
624
- export namespace h.JSX {
625
- interface IntrinsicElements {
626
- ${c} }
627
- }
628
- }`, I = ` interface IntrinsicElements {
629
- ${d} }`, y = `${n}import { HTMLAttributes } from "preact";
630
- import type { EventHandler } from "${v}";
631
-
632
- ${E}${m}declare module 'preact' {
633
- namespace createElement.JSX {
634
- ${I}
635
- }
636
- namespace h.JSX {
637
- ${I}
638
- }
639
- }`, k = `
640
- namespace JSX {
641
- interface IntrinsicElements {
642
- ${f} }
643
- }
644
- `, P = `${n}import type { HTMLProps } from 'react';
645
- import type { EventHandler } from "${v}";
646
-
647
- ${E}${p}declare module "react" {${k}}
648
- declare module "react/jsx-runtime" {${k}}
649
- declare module "react/jsx-dev-runtime" {${k}}`, D = `${n}import { JSXBase as StencilJsx } from "@stencil/core/internal";
650
- import type { EventHandler } from "${v}";
651
-
652
- ${E}${u}interface ExposedElements {
653
- ${g}}
654
-
655
- export namespace JSX {
656
- export interface IntrinsicElements extends ExposedElements {}
657
- }
658
-
659
- declare module "@stencil/core/internal/stencil-public-runtime" {
660
- export namespace h.JSX {
661
- interface IntrinsicElements extends ExposedElements {}
662
- }
663
- }`, x = `/** @deprecated import from stencil.d.ts instead */
664
- export * from "./stencil.js";`, T = `${t.config.context.dtsEmitPath}types/`, K = `${T}lumina.d.ts`, O = `${T}preact.d.ts`, J = `${T}react.d.ts`, $ = `${T}stencil.d.ts`, C = `${T}components.d.ts`;
665
- t.dtsFiles.set(K, L), t.dtsFiles.set(O, y), t.dtsFiles.set(J, P), t.dtsFiles.set($, D), t.dtsFiles.set(C, x);
666
- }
667
- function un(e, t) {
668
- const n = [], i = [];
669
- let a = !1;
670
- if (t !== void 0)
671
- for (let r = 0; r < t.length; ++r) {
672
- const c = t[r];
673
- if (c.kind !== "field" || c.readonly !== void 0 || c.privacy !== void 0)
674
- continue;
675
- if (c.getterType !== void 0) {
676
- a = !0;
677
- continue;
678
- }
679
- c.docsTags?.includes(V.required) === !0 ? n.push(`"${c.name}"`) : i.push(`"${c.name}"`);
680
- }
681
- let s = n.length > 0 ? `Required<Pick<${e}, ${n.join(" | ")}>>` : "";
682
- i.length > 0 && (s.length > 0 && (s += ", "), s += `Partial<Pick<${e}, ${i.join(" | ")}>>`), a && (s.length > 0 && (s += ", "), s += `${e}SetterTypes`);
683
- const l = a ? `type ${e}SetterTypes = ${e}["${ni}"];
684
- ` : "";
685
- return [s.length === 0 ? "" : `${s}, `, l];
686
- }
687
- function fa(e, t) {
688
- const n = t.moduleMap.get("index");
689
- if (n === void 0)
690
- e.unshift(fn);
691
- else {
692
- const i = ae(n);
693
- i.index.named.getAssetPath === void 0 && n.declarations.push(oi), i.index.named.setAssetPath === void 0 && n.declarations.push(ai);
694
- }
695
- }
696
- const ni = "@setterTypes", oi = {
697
- [Y]: Ze(),
698
- kind: "function",
699
- name: "getAssetPath",
700
- static: void 0,
701
- deprecated: void 0,
702
- summary: void 0,
703
- description: "Get a resolved path from where an asset can be loaded.",
704
- docsTags: void 0,
705
- typeParameters: void 0,
706
- parameters: [
707
- {
708
- name: "suffix",
709
- deprecated: void 0,
710
- summary: void 0,
711
- description: "The relative path for the asset.",
712
- docsTags: void 0,
713
- optional: void 0,
714
- rest: void 0,
715
- type: {
716
- text: "string",
717
- references: void 0,
718
- values: void 0,
719
- source: void 0
720
- },
721
- default: void 0
722
- }
723
- ],
724
- return: {
725
- summary: void 0,
726
- description: void 0,
727
- type: {
728
- text: "string",
729
- references: void 0,
730
- values: void 0,
731
- source: void 0
732
- }
733
- },
734
- inheritedFrom: void 0,
735
- signature: void 0,
736
- privacy: void 0,
737
- source: void 0
738
- }, ai = {
739
- [Y]: Ze(),
740
- kind: "function",
741
- name: "setAssetPath",
742
- static: void 0,
743
- deprecated: void 0,
744
- summary: void 0,
745
- description: `Used to manually set the base path where package assets (like localization
746
- and icons) can be found.
747
-
748
- By default, the package assets are loaded from
749
- \`https://js.arcgis.com/<version>/<simplified-package-name>/\`. We are hosting
750
- our assets on a CDN (Content Delivery Network) to ensure fast and reliable
751
- access. It is CORS-enabled, so you can load the assets from any domain. This
752
- is the recommended way to load the assets and avoid bundling them with your
753
- application.
754
-
755
- However, if you need to host the assets locally, you can copy them manually
756
- as part of your build process and use \`setAssetPath\` to customize where the
757
- browser will load the assets from.`,
758
- docsTags: void 0,
759
- typeParameters: void 0,
760
- parameters: [
761
- {
762
- name: "path",
763
- deprecated: void 0,
764
- summary: void 0,
765
- description: "Relative or absolute path to the assets folder.",
766
- docsTags: void 0,
767
- optional: void 0,
768
- rest: void 0,
769
- type: {
770
- text: "URL | string",
771
- references: [
772
- {
773
- name: "URL",
774
- module: void 0,
775
- package: "global:",
776
- viewUrl: "https://developer.mozilla.org/docs/Web/API/URL",
777
- start: 0,
778
- end: 3
779
- }
780
- ],
781
- values: void 0,
782
- source: void 0
783
- },
784
- default: void 0
785
- }
786
- ],
787
- return: {
788
- summary: void 0,
789
- description: void 0,
790
- type: {
791
- text: "void",
792
- references: void 0,
793
- values: void 0,
794
- source: void 0
795
- }
796
- },
797
- inheritedFrom: void 0,
798
- signature: void 0,
799
- privacy: void 0,
800
- source: void 0
801
- }, si = ei(void 0, "index", {}, { class: void 0, default: void 0, named: {} });
802
- si.importsText = "";
803
- const fn = {
804
- [Y]: si,
805
- kind: "javascript-module",
806
- path: "index",
807
- sourcePath: "src/index.ts",
808
- deprecated: void 0,
809
- description: void 0,
810
- docsTags: void 0,
811
- summary: void 0,
812
- declarations: [oi, ai],
813
- exports: void 0
814
- };
815
- function ya(e, t) {
816
- const n = Te(e), i = he(n), a = ae(e);
817
- if (a.index.class?.privacy !== void 0)
818
- return e.declarations.length > 1 && t.emitError(
819
- `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(", ")}`,
820
- { file: a.file, node: void 0 }
821
- ), "";
822
- let s = `${i}${a.importsText}`;
823
- if (s !== "" && (s += `
824
- `), a.reExports !== void 0) {
825
- for (let r = 0; r < a.reExports.length; ++r) {
826
- const c = a.reExports[r];
827
- let m = "";
828
- if (c.specifiers[0].exportName === "*") {
829
- const d = c.specifiers[0];
830
- m = (c.isTypeOnly ? "type *" : "*") + (d.aliasName ? ` as ${d.aliasName}` : "");
831
- } else {
832
- for (let d = 0; d < c.specifiers.length; ++d) {
833
- const p = c.specifiers[d];
834
- m += (d === 0 ? "{" : ",") + (c.isTypeOnly ? " type " : " ") + p.exportName + (p.aliasName ? ` as ${p.aliasName}` : "");
835
- }
836
- m += " }";
837
- }
838
- s += `export ${m} from "${c.specifier}";
839
- `;
840
- }
841
- s += `
842
- `;
843
- }
844
- if (a.namespaces !== void 0)
845
- for (let r = 0; r < a.namespaces.length; ++r)
846
- s += `${a.namespaces[r]}
847
-
848
- `;
849
- const l = e.declarations;
850
- a.constructorPropertiesInterface !== void 0 && (s += `${Ft(a.constructorPropertiesInterface)}
851
-
852
- `);
853
- for (let r = 0; r < l.length; ++r) {
854
- const c = l[r];
855
- s += Ft(c), r < l.length - 1 && (s += `
856
-
857
- `);
858
- }
859
- return t.isJsApi ? mn(s, e, t) : (t.isComponentProject && (e.exports?.[0].kind === "custom-element-definition" ? s = `/// <reference path="../../index.d.ts" />
860
- ${s}` : e.path === "index" && (s += t.vanillaComponentTypes)), s);
861
- }
862
- function he(e) {
863
- return e === void 0 ? "" : `/*${nn(e)}*/
864
- `;
865
- }
866
- function Ft(e) {
867
- let t = Te(e), n = "";
868
- if (e.kind === "class" || e.kind === "mixin")
869
- n = wt(e);
870
- else if (e.kind === "interface") {
871
- const a = ie(e);
872
- if (e.supertypes === void 0 && e.type === void 0 && e.members?.length === 1 && (e.members[0].kind === "call-signature" || e.members[0].kind === "constructor")) {
873
- const l = e.members[0];
874
- let r = ri(l, !0);
875
- const c = Te(l)?.docsTags;
876
- c !== void 0 && (t = {
877
- description: t?.description,
878
- docsTags: [...c, ...t?.docsTags ?? []]
879
- });
880
- const m = r.indexOf("): ");
881
- r = `${r.slice(0, m)}) => ${r.slice(m + 3, -1)}`, n = Rt(e.name, e.typeParameters, void 0, r);
882
- } else if (a.isMixinBaseClass === !0)
883
- n = wt(e);
884
- else if (a.emitAsTypeAlias === !0) {
885
- let l = e.type?.text;
886
- const r = dt(e);
887
- r !== "" ? l = l === void 0 ? `{${r}}` : `${l} & {${r}}` : l === void 0 && a.superTypesText === void 0 && (l = "{}"), n = Rt(
888
- e.name,
889
- e.typeParameters,
890
- a.superTypesText,
891
- l
892
- );
893
- } else {
894
- const l = dt(e);
895
- n = Oi(
896
- a.isDefaultExported === !0,
897
- e.name,
898
- e.typeParameters,
899
- a.superTypesText,
900
- l
901
- );
902
- }
903
- } else if (e.kind === "function") {
904
- const a = Tt(e);
905
- n = Gi(
906
- a.isDefaultExported === !0,
907
- e.name,
908
- e.typeParameters,
909
- e.parameters,
910
- e.return.type.text
911
- );
912
- } else if (e.kind === "variable") {
913
- const a = Zt(e);
914
- n += Vi(a.isDefaultExported === !0, e.name, e.type.text);
915
- }
916
- return `${he(t)}${n}`;
917
- }
918
- function wt(e) {
919
- const t = ie(e), n = t.isDefaultExported === !0, i = dt(e), a = e, s = e;
920
- let l, r = a.mixins ?? s.supertypes;
921
- if (r === void 0)
922
- t.superClassText !== void 0 && (l = t.superClassText);
923
- else if (t.superClassText === void 0 && r.length === 1) {
924
- const m = r[0];
925
- l = m.printableText, m.printableText = void 0, r = void 0;
926
- } else
927
- l = `${e.name}Superclass`;
928
- let c = Wi(
929
- t.hasExplicitAbstract !== void 0,
930
- n,
931
- e.name,
932
- e.typeParameters,
933
- l,
934
- i
935
- );
936
- if (r !== void 0) {
937
- c += `
938
- declare const ${l}:`, t.superClassText !== void 0 && (c += ` typeof ${t.superClassText}`);
939
- for (let m = 0; m < r.length; ++m) {
940
- const d = r[m];
941
- c += ` & typeof ${d.printableText}`, d.printableText = void 0;
942
- }
943
- }
944
- return c;
945
- }
946
- function dt(e) {
947
- const t = e.members;
948
- let n = "";
949
- const i = ie(e);
950
- if (e.kind === "mixin" && (n += `constructor(...args: any[]);
951
- `), i.eventTypesProperty !== void 0) {
952
- let l = vn;
953
- if (i.eventTypesProperty.description !== void 0 || i.eventTypesProperty.docsTags !== void 0) {
954
- const c = Te(i.eventTypesProperty);
955
- l = he(c);
956
- }
957
- const r = Nt(i.eventTypesProperty);
958
- n += `${l}${r}
959
- `;
960
- }
961
- const a = e, s = e.customElement === !0;
962
- if (t !== void 0) {
963
- let l = "";
964
- for (let r = 0; r < t.length; ++r) {
965
- const c = t[r];
966
- if (c.inheritedFrom !== void 0 || c.privacy === "private")
967
- continue;
968
- const d = Te(c);
969
- n += he(d), c.kind === "field" ? (s && c.getterType !== void 0 && (l += ` ${fe(!1, !1, !1, !1, !1, c.docsTags?.includes(V.required) !== !0, c.name, c.type.text)}
970
- `), n += Nt(c)) : n += ri(c, !1), n += `
971
- `;
972
- }
973
- l !== "" && (n += `${fe(!1, !1, !1, !1, !1, !1, ni, `{
974
- ${l}}`)}
975
- `);
976
- }
977
- if (s && a.events !== void 0) {
978
- let l = e.name;
979
- if (e.typeParameters !== void 0) {
980
- l += "<";
981
- for (let c = 0; c < e.typeParameters.length; ++c)
982
- l += e.typeParameters[c].name, c < e.typeParameters.length - 1 && (l += ", ");
983
- l += ">";
984
- }
985
- let r = "";
986
- for (let c = 0; c < a.events.length; ++c) {
987
- const m = a.events[c];
988
- if (m.inheritedFrom === void 0) {
989
- const d = Te(m);
990
- n += `${he(d)}${fe(!1, !1, !1, !0, !1, !1, m.name, `import("${yn}").TargetedEvent<this, ${m.type.text}>`)}
991
- `;
992
- }
993
- r += ` ${fe(!1, !1, !1, !1, !1, !1, m.name, `${l}["${m.name}"]["detail"]`)}
994
- `;
995
- }
996
- n += `${fe(!1, !1, !1, !0, !1, !1, "@eventTypes", `{
997
- ${r}}`)}
998
- `;
999
- }
1000
- return n === "" ? "" : `
1001
- ${n.replaceAll(`
1002
- `, `
1003
- `).slice(0, -2)}`;
1004
- }
1005
- const yn = "@arcgis/lumina";
1006
- function Nt(e) {
1007
- let t = "";
1008
- const n = Ai(e), i = n.isAccessor === !0, a = e.readonly === !0;
1009
- if (e.getterType !== void 0 || i && a)
1010
- t += Ki(
1011
- e.privacy !== void 0,
1012
- n.isAbstract === !0,
1013
- e.static === !0,
1014
- e.name,
1015
- e.getterType?.text ?? e.type.text,
1016
- a ? void 0 : e.type.text
1017
- );
1018
- else {
1019
- const s = n.dtsTypeOverride ?? e.type.text, l = i ? !1 : s.endsWith(" | undefined"), r = l ? s.slice(0, -12) : s;
1020
- t += fe(
1021
- e.privacy !== void 0,
1022
- n.isAbstract === !0,
1023
- e.static === !0,
1024
- a,
1025
- i,
1026
- l,
1027
- e.name,
1028
- r
1029
- );
1030
- }
1031
- return t;
1032
- }
1033
- function ri(e, t) {
1034
- const n = Tt(e);
1035
- return _i(
1036
- e.privacy !== void 0,
1037
- n.isAbstract === !0,
1038
- e.static === !0,
1039
- n.hasQuestionToken === !0,
1040
- e.kind === "constructor" ? t ? "new" : "constructor" : e.kind === "call-signature" ? "" : e.name,
1041
- e.typeParameters,
1042
- e.parameters,
1043
- e.return?.type.text
1044
- );
1045
- }
1046
- const vn = he({
1047
- description: void 0,
1048
- docsTags: [
1049
- {
1050
- name: "deprecated",
1051
- text: `Do not directly reference this property.
1052
- Use EventNames and EventTypes helpers from @arcgis/core/Evented`
1053
- }
1054
- ]
1055
- });
1056
- function va() {
1057
- const e = Date.now();
1058
- return () => (Date.now() - e) / gn;
1059
- }
1060
- const gn = 1e3;
1061
- function Sn(e) {
1062
- const t = e.indexOf("/");
1063
- return t === -1 ? e : e.slice(0, t);
1064
- }
1065
- function Ot(e, t, n) {
1066
- if (!n.isComponentProject || n.config.context.isLuminaMinimalExtraction || n.config.documentation.publicStoryUrlPrefix === !1)
1067
- return;
1068
- const i = e.match(Tn)?.[1];
1069
- if (i === void 0) {
1070
- n.emitError(
1071
- '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',
1072
- { file: void 0, node: void 0, scope: t.slice(n.basePath.length) }
1073
- );
1074
- return;
1075
- }
1076
- const a = [];
1077
- for (const l of e.matchAll(hn)) {
1078
- const r = l[1], c = Mn(r), m = e.indexOf("{", l.index), d = e.indexOf("}", m), p = e.slice(0, l.index).trimEnd();
1079
- let f = "";
1080
- if (p.endsWith("*/")) {
1081
- const E = p.lastIndexOf("/**");
1082
- f = p.slice(E + 3, -2).trim().replaceAll(Cn, "");
1083
- }
1084
- const u = e.slice(m, d).match(En)?.[1] || c, g = bn(c);
1085
- a.push({
1086
- description: `${u}${f ? `
1087
- ${f}` : ""}`,
1088
- url: `${n.config.documentation.publicStoryUrlPrefix}?path=/story/${i}--${g}&singleStory=true`,
1089
- source: void 0
1090
- });
1091
- }
1092
- if (a.length === 0) {
1093
- n.emitError(
1094
- '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',
1095
- { file: void 0, node: void 0, scope: t.slice(n.basePath.length) }
1096
- );
1097
- return;
1098
- }
1099
- const s = n.componentStories[i];
1100
- s === void 0 ? n.componentStories[i] = a : s.push(...a);
1101
- }
1102
- 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();
1103
- function pt(e, t) {
1104
- let i = t.startsWith("./") ? t.slice(2) : t, a = e;
1105
- for (; ; ) {
1106
- const s = a.lastIndexOf("/");
1107
- if (a = s === -1 ? "" : a.slice(0, s), i.startsWith("../"))
1108
- i = i.slice(3);
1109
- else
1110
- return a === "" ? i : `${a}/${i}`;
1111
- }
1112
- }
1113
- function ye(e, t) {
1114
- let n = 0;
1115
- for (; ; ) {
1116
- const a = e.indexOf("/", n) + 1;
1117
- if (a === 0)
1118
- break;
1119
- const s = e.slice(n, a), l = t.slice(n, a);
1120
- if (s !== l)
1121
- break;
1122
- n = a;
1123
- }
1124
- let i = "";
1125
- for (let a = n; a < e.length && (a = e.indexOf("/", a), a !== -1); ++a)
1126
- i += "../";
1127
- return i.length === 0 && (i = "./"), `${i}${t.slice(n)}`;
1128
- }
1129
- function Gt(e, t, n = 0) {
1130
- for (; n < e.length; ++n) {
1131
- const i = e[n];
1132
- i.start += t, i.end += t;
1133
- }
1134
- return e;
1135
- }
1136
- function Vt(e, t) {
1137
- if (e === t)
1138
- return !0;
1139
- if (typeof e != "object" || typeof t != "object" || e === null || t === null)
1140
- return !1;
1141
- if (Array.isArray(e)) {
1142
- if (!Array.isArray(t) || e.length !== t.length)
1143
- return !1;
1144
- for (let a = 0; a < e.length; ++a)
1145
- if (!Vt(e[a], t[a]))
1146
- return !1;
1147
- return !0;
1148
- }
1149
- const n = Object.keys(e), i = Object.keys(t);
1150
- if (n.length !== i.length)
1151
- return !1;
1152
- for (let a = 0; a < n.length; ++a) {
1153
- const s = n[a];
1154
- if (!Vt(e[s], t[s]))
1155
- return !1;
1156
- }
1157
- return !0;
1158
- }
1159
- function Pn(e, t) {
1160
- if (t.config.context.isLuminaMinimalExtraction || t.componentTagName === void 0)
1161
- return;
1162
- const n = e.moduleSpecifier.text, i = /\.(?:css|s[ac]ss|less|styl(?:us)?|postcss|pcss|sss)(\\?|$)/u;
1163
- if (!(n.startsWith(".") && i.test(n)))
1164
- return;
1165
- const s = n.split("?", 1)[0], l = Yi.join(t.file.fileName, "..", s), r = ji(l, "utf-8"), c = xn(r);
1166
- c !== void 0 && (t.componentCssFileDocs = c);
1167
- }
1168
- function xn(e) {
1169
- const t = [];
1170
- for (const n of e.matchAll(Rn)) {
1171
- const i = n.groups.name, a = n.groups.description.replaceAll(Dn, " ").trim();
1172
- t.push({
1173
- name: i,
1174
- deprecated: void 0,
1175
- summary: void 0,
1176
- description: a.endsWith("*") ? a.slice(0, -1).trim() : a,
1177
- syntax: void 0,
1178
- default: void 0
1179
- });
1180
- }
1181
- return t.length === 0 ? void 0 : t;
1182
- }
1183
- const Rn = /@prop\s+(?<name>--[\w-]+)\s*:(?<description>[^@/]+)/gu, Dn = /\n\s+\*? ?/gu;
1184
- function li(e, t) {
1185
- if (e === void 0)
1186
- return !1;
1187
- for (let n = 0; n < e.length; ++n)
1188
- if (e[n].kind === t)
1189
- return !0;
1190
- return !1;
1191
- }
1192
- function et(e) {
1193
- if (e.modifiers === void 0)
1194
- return 0;
1195
- for (let t = 0; t < e.modifiers.length; ++t)
1196
- if (e.modifiers[t].kind === o.SyntaxKind.ExportKeyword)
1197
- return e.modifiers[t + 1]?.kind === o.SyntaxKind.DefaultKeyword ? 2 : 1;
1198
- return 0;
1199
- }
1200
- function ci(e, t) {
1201
- return e.endsWith("Properties") && t.apiClassLikeName === e.slice(0, -10);
1202
- }
1203
- 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 = {
1204
- globals: Ln
1205
- }, mt = Object.freeze(
1206
- Object.assign(/* @__PURE__ */ Object.create(null), In.globals)
1207
- ), ut = "https://developer.mozilla.org/docs/Web/API/";
1208
- function di(e, t, n = "*", i) {
1209
- if (e === "@arcgis/core")
1210
- return An(t, n, i);
1211
- }
1212
- function An(e, t, n) {
1213
- if (!(e === void 0 || e === "interfaces.d.ts")) {
1214
- const i = `https://${n.config.documentation.host}${kn}${ee(e)}/`;
1215
- return Ii(i, t === "default" || t === "*" ? void 0 : t, void 0);
1216
- }
1217
- }
1218
- const kn = Yt("core");
1219
- function ze(e, t, n, i) {
1220
- i.implicitPublicModules ??= /* @__PURE__ */ Object.create(null);
1221
- const a = i.implicitPublicModules[e];
1222
- a === void 0 ? i.implicitPublicModules[e] = {
1223
- actualModulePath: void 0,
1224
- // moduleResolution:Node16 may use .js extension to refer to non-JS files
1225
- sourcePath: t.endsWith(".js") ? t.slice(0, -3) : t,
1226
- pendingNames: n === "*" ? void 0 : /* @__PURE__ */ new Set([n]),
1227
- extractedNames: /* @__PURE__ */ new Set()
1228
- } : a.pendingNames !== void 0 && n !== "*" ? a.pendingNames.add(n) : a.pendingNames = void 0;
1229
- }
1230
- function Fn(e, t) {
1231
- const n = et(e);
1232
- if (t.pendingNames === void 0)
1233
- return n > 0;
1234
- if (n === 2 && t.pendingNames.has("default"))
1235
- return !0;
1236
- const a = (e.name ?? e.declarationList?.declarations[0].name).escapedText;
1237
- return t.pendingNames.has(a);
1238
- }
1239
- function je(e, t, n, i, a) {
1240
- const s = n.program.getTypeChecker(), l = e.flags & o.SymbolFlags.Alias ? s.getAliasedSymbol(e) : e, r = Wn(l), c = t.escapedText, m = r ?? c, d = l?.declarations?.[0];
1241
- if (d === void 0)
1242
- return n.emitError(`Unable to resolve the declaration file name for the type ${m}`, {
1243
- file: n.file,
1244
- node: void 0
1245
- }), {
1246
- name: m,
1247
- module: void 0,
1248
- package: De,
1249
- viewUrl: void 0,
1250
- start: i,
1251
- end: a
1252
- };
1253
- const p = d.getSourceFile(), { packageName: f, modulePath: u } = Nn(p.fileName, n, m);
1254
- if (f === "@arcgis/core" && u === "interfaces.js")
1255
- return n.moduleContext.importsMap.__esri = {
1256
- type: "*",
1257
- modulePath: void 0,
1258
- specifier: `${f}/${u}`,
1259
- replacementName: void 0,
1260
- actualName: void 0,
1261
- wasUsed: !0
1262
- }, {
1263
- name: "__esri",
1264
- module: u,
1265
- package: f,
1266
- viewUrl: void 0,
1267
- start: i,
1268
- end: a
1269
- };
1270
- if (f === "typescript" && u?.startsWith("lib/") === !0) {
1271
- let v = mt[m], b, h = m;
1272
- if (v === void 0) {
1273
- for (let L = d.parent; L !== void 0; L = L.parent)
1274
- if (o.isModuleDeclaration(L) && o.isIdentifier(L.name)) {
1275
- b = L.name.escapedText, v = mt[b]?.[1]?.[m], h = `${b}.${m}`, Me(t, h);
1276
- break;
1277
- }
1278
- }
1279
- return {
1280
- name: h,
1281
- module: void 0,
1282
- package: De,
1283
- viewUrl: v?.[0]?.startsWith("https") === !1 ? `${ut}${v[0]}` : v?.[0] ?? void 0,
1284
- start: i,
1285
- end: i + h.length
1286
- };
1287
- }
1288
- let g = m;
1289
- if (f !== void 0 && u === void 0 && r?.startsWith("HTML") === !0 && d.parent.kind === o.SyntaxKind.ModuleBlock && d.parent.parent.kind === o.SyntaxKind.ModuleDeclaration && d.parent.parent.name.escapedText === "global") {
1290
- if (r.endsWith("Element")) {
1291
- const v = o.isInterfaceDeclaration(d) ? d.heritageClauses?.[0]?.types[0]?.expression : o.isTypeAliasDeclaration(d) && o.isTypeReferenceNode(d.type) ? d.type.typeName : void 0;
1292
- if (v !== void 0 && o.isIdentifier(v)) {
1293
- const b = s.getSymbolAtLocation(v);
1294
- if (b !== void 0) {
1295
- const h = s.getAliasedSymbol(b);
1296
- return je(
1297
- h,
1298
- t,
1299
- n,
1300
- i,
1301
- i + h.escapedName.length
1302
- );
1303
- }
1304
- }
1305
- } else if (
1306
- // Only supporting the syntax after
1307
- // https://devtopia.esri.com/WebGIS/arcgis-web-components/pull/10794
1308
- // As this interface is not likely to be used directly.
1309
- r.endsWith("ElementEventMap") && o.isTypeAliasDeclaration(d) && o.isIndexedAccessTypeNode(d.type) && o.isTypeReferenceNode(d.type.objectType) && o.isIdentifier(d.type.objectType.typeName) && o.isLiteralTypeNode(d.type.indexType) && o.isStringLiteral(d.type.indexType.literal) && d.type.indexType.literal.text === "@eventTypes"
1310
- ) {
1311
- const v = s.getSymbolAtLocation(d.type.objectType.typeName);
1312
- if (v !== void 0) {
1313
- const b = s.getAliasedSymbol(v), h = je(
1314
- b,
1315
- t,
1316
- n,
1317
- i,
1318
- i + b.escapedName.length
1319
- );
1320
- return Me(t, c), Me(t, `${h.name}["@eventTypes"]`), h;
1321
- }
1322
- }
1323
- }
1324
- if (f !== void 0 || u !== void 0) {
1325
- const v = r ?? ((u ?? f).split("/").pop()?.replaceAll(wn, "") || "type");
1326
- for (let b = 1; ; b += 1) {
1327
- const h = b === 1 ? v : `${v}${b}`;
1328
- let L = n.functionLikeTypeParameters?.has(h) === !0 || n.objectLikeTypeParameters?.has(h) === !0 || n.localDeclarations.has(h);
1329
- if (L)
1330
- continue;
1331
- const I = n.moduleContext.importsMap[h], y = I !== void 0 && (f === void 0 ? I.modulePath === u : I.specifier === f + (u === void 0 ? "" : `/${u}`));
1332
- if (y ? I.wasUsed = !0 : L = n.moduleContext.importsMap[h] !== void 0, L)
1333
- continue;
1334
- const k = h !== c;
1335
- k && (Me(t, h), a = i + h.length);
1336
- const P = _n(l), D = P === "named";
1337
- D || (g = P), f === void 0 && !n.config.strict && ze(
1338
- u,
1339
- p.fileName.slice(n.basePath.length),
1340
- g,
1341
- n
1342
- ), y || (n.moduleContext.importsMap[h] = {
1343
- type: P,
1344
- modulePath: f === void 0 ? u : void 0,
1345
- specifier: f === void 0 ? ye(ae(n.apiModule).dtsPath, u) : f + (u === void 0 ? "" : `/${u}`),
1346
- replacementName: void 0,
1347
- actualName: D && k ? r : void 0,
1348
- wasUsed: !0
1349
- });
1350
- break;
1351
- }
1352
- } else if (n.localPrivateDeclarations?.has(c) === !0)
1353
- n.localPrivateDeclarations.set(
1354
- c,
1355
- Math.abs(n.localPrivateDeclarations.get(c))
1356
- );
1357
- else {
1358
- if (d.kind === o.SyntaxKind.TypeParameter)
1359
- return {
1360
- name: c,
1361
- module: void 0,
1362
- package: void 0,
1363
- viewUrl: void 0,
1364
- start: i,
1365
- end: a
1366
- };
1367
- n.localDeclarations.has(c) || n.emitError(
1368
- `@public declaration referenced non-public ${oe.red(c)}. Either mark it @public or refactor out the reference. Note that Enums are not supported in public docs per https://devtopia.esri.com/WebGIS/arcgis-js-api/discussions/73576.`,
1369
- {
1370
- file: n.file,
1371
- node: void 0
1372
- }
1373
- );
1374
- }
1375
- const E = g === "default" || g === "*" ? void 0 : r;
1376
- return f ? {
1377
- name: g,
1378
- module: u || void 0,
1379
- package: f,
1380
- viewUrl: di(f, u ?? "", E, n),
1381
- start: i,
1382
- end: a
1383
- } : {
1384
- name: g,
1385
- module: u,
1386
- package: void 0,
1387
- viewUrl: Ge(u ?? n.apiModule.path, E, void 0, n),
1388
- start: i,
1389
- end: a
1390
- };
1391
- }
1392
- const wn = /[^a-zA-Z0-9$_]/gu;
1393
- function Nn(e, t, n) {
1394
- const i = e.lastIndexOf(at);
1395
- if (i !== -1) {
1396
- const r = e.slice(i + at.length), c = pi(r), m = e.slice(
1397
- 0,
1398
- i + at.length + c.packageName.length
1399
- ), d = lt(m);
1400
- return Wt(c), c.modulePath = _t(c.modulePath, d, t, n), c;
1401
- }
1402
- const s = e.indexOf(On);
1403
- if (s !== -1) {
1404
- const r = e.slice(0, s), c = lt(r), m = c.name, d = e.slice(s + 1), p = _t(d, c, t, n), f = { packageName: m, modulePath: p };
1405
- return Wt(f), f;
1406
- }
1407
- if (e.startsWith(t.basePath)) {
1408
- const r = e.slice(t.basePath.length), c = Ve(ee(r), t);
1409
- return c === t.apiModule.path ? {
1410
- packageName: void 0,
1411
- modulePath: void 0
1412
- } : {
1413
- packageName: void 0,
1414
- modulePath: c
1415
- };
1416
- } else
1417
- return t.emitError(
1418
- `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)`,
1419
- {
1420
- file: t.file,
1421
- node: void 0
1422
- }
1423
- ), {
1424
- packageName: De,
1425
- modulePath: void 0
1426
- };
1427
- }
1428
- const at = "/node_modules/", On = "/dist/";
1429
- function pi(e) {
1430
- const t = ct(e), n = e.length === t.length ? void 0 : e.slice(t.length + 1);
1431
- return { packageName: t, modulePath: n };
1432
- }
1433
- function Wt(e) {
1434
- e.packageName?.startsWith("@types/") === !0 && (e.packageName = e.packageName.slice(7));
1435
- }
1436
- function _t(e, t, n, i) {
1437
- const a = ee(e);
1438
- if (t.exports === void 0)
1439
- return `${a}.js`;
1440
- const s = `./${a}`, l = "@arcgis/lumina" in (t.dependencies ?? {}) && s.endsWith("/customElement") ? `${s.slice(0, -13)}index` : s;
1441
- let r = ft(t.exports, ".", l);
1442
- if (r === void 0 && (r = Gn[t.name]?.(a)), r !== void 0)
1443
- return r === "." ? void 0 : r.slice(2);
1444
- const c = n.moduleContext.importsMap[i];
1445
- if (c !== void 0 && c.modulePath === void 0) {
1446
- const m = pi(c.specifier);
1447
- if (m.packageName === t.name)
1448
- return m.modulePath;
1449
- }
1450
- return n.emitError(
1451
- `Need explicit type annotation for where the ${oe.red(i)} from ${t.name}/${e} is being used implicitly. Reason: Unable to find an "exports" compatible import path to insert the import of this type in the emitted .d.ts.`,
1452
- { file: n.file, node: void 0 }
1453
- ), e;
1454
- }
1455
- const Gn = {
1456
- // REFACTOR: dissolve barrel files (match @arcgis/core). then this won't be needed
1457
- "@arcgis/lumina"(e) {
1458
- return e.startsWith("dist/globalTypes/") || e.startsWith("dist/typings/") ? "./globalTypes" : e.startsWith("dist/controllers/accessor/") ? "./controllers/accessor" : e.startsWith("dist/controllers/") ? "./controllers" : e.startsWith("dist/jsx/") || !e.slice(5).includes("/") ? "." : void 0;
1459
- }
1460
- };
1461
- function ft(e, t, n) {
1462
- if (typeof e == "string")
1463
- return Vn(t, e, n);
1464
- if (Array.isArray(e))
1465
- for (let i = 0; i < e.length; ++i) {
1466
- const a = ft(e[i], t, n);
1467
- if (a !== void 0)
1468
- return a;
1469
- }
1470
- if (typeof e == "object" && e !== null)
1471
- for (const [i, a] of Object.entries(e)) {
1472
- const l = i.startsWith(".") ? i : t, r = ft(a, l, n);
1473
- if (r !== void 0)
1474
- return r;
1475
- }
1476
- }
1477
- function Vn(e, t, n) {
1478
- const i = ee(t);
1479
- if (i === n)
1480
- return e;
1481
- const a = i.indexOf("*");
1482
- if (a === -1)
1483
- return;
1484
- const s = i.slice(0, a);
1485
- if (!n.startsWith(s))
1486
- return;
1487
- const l = i.slice(a + 1), r = n.slice(s.length), c = t.slice(i.length);
1488
- if (l === "") {
1489
- const p = ee(e), f = e.slice(p.length), u = p === e && c === "" ? ".js" : f;
1490
- return p.slice(0, -1) + r + u;
1491
- }
1492
- if (!r.endsWith(l))
1493
- return;
1494
- const m = r.slice(0, -l.length), d = e.indexOf("*");
1495
- if (d !== -1)
1496
- return e.slice(0, d) + m + e.slice(d + 1);
1497
- }
1498
- function Wn(e) {
1499
- const t = e.getDeclarations()?.[0];
1500
- if (t !== void 0 && ((o.isClassDeclaration(t) || o.isFunctionDeclaration(t) || o.isInterfaceDeclaration(t) || o.isTypeAliasDeclaration(t) || o.isEnumDeclaration(t)) && t.name !== void 0 && o.isIdentifier(t.name) || o.isVariableDeclaration(t) && o.isIdentifier(t.name) || o.isBindingElement(t) && o.isIdentifier(t.name)))
1501
- return t.name.escapedText;
1502
- const n = e.escapedName;
1503
- return n === "default" || n.startsWith("__") ? void 0 : n;
1504
- }
1505
- function _n(e) {
1506
- return e.flags & o.SymbolFlags.ValueModule ? "*" : Kn(e) ? "default" : "named";
1507
- }
1508
- function Kn(e) {
1509
- const t = e.escapedName;
1510
- if (t === "default" || // CommonJS "export ="
1511
- t === "export=")
1512
- return !0;
1513
- const n = e.getDeclarations();
1514
- if (n !== void 0)
1515
- for (let i = 0; i < n.length; ++i) {
1516
- const a = n[i];
1517
- if (o.canHaveModifiers(a) && o.getModifiers(a)?.some((s) => s.kind === o.SyntaxKind.DefaultKeyword))
1518
- return !0;
1519
- }
1520
- return !1;
1521
- }
1522
- function ht(e, t, n, i) {
1523
- const a = { file: n, node: e };
1524
- return e.getText(n).includes("* @public") && i.emitError(
1525
- "@public is not permitted in nested types. See options in documentation: https://webgis.esri.com/webgis/core/core/documenting-api#describing-nested-object-types and https://webgis.esri.com/webgis/core/core/documenting-api#variables",
1526
- a
1527
- ), B(e, t, a, i);
1528
- }
1529
- const G = {
1530
- false: 0,
1531
- /**
1532
- * True for literal types. False for object types
1533
- */
1534
- shallow: 2,
1535
- true: 1
1536
- };
1537
- function B(e, t, n, i) {
1538
- if (e.kind === o.SyntaxKind.TrueKeyword || e.kind === o.SyntaxKind.FalseKeyword)
1539
- return t === G.false ? o.factory.createKeywordTypeNode(o.SyntaxKind.BooleanKeyword) : o.factory.createLiteralTypeNode(e);
1540
- if (e.kind === o.SyntaxKind.NullKeyword)
1541
- return o.factory.createLiteralTypeNode(e);
1542
- if (e.kind === o.SyntaxKind.UndefinedKeyword || o.isVoidExpression(e))
1543
- return o.factory.createKeywordTypeNode(o.SyntaxKind.UndefinedKeyword);
1544
- if (o.isStringLiteral(e) || o.isNoSubstitutionTemplateLiteral(e))
1545
- return t === G.false ? o.factory.createKeywordTypeNode(o.SyntaxKind.StringKeyword) : o.factory.createLiteralTypeNode(e);
1546
- if (o.isTemplateExpression(e))
1547
- return Se(n, t, i) ?? o.factory.createKeywordTypeNode(o.SyntaxKind.StringKeyword);
1548
- if (o.isNumericLiteral(e))
1549
- return t === G.false ? o.factory.createKeywordTypeNode(o.SyntaxKind.NumberKeyword) : o.factory.createLiteralTypeNode(e);
1550
- if (o.isBigIntLiteral(e))
1551
- return t === G.false ? o.factory.createKeywordTypeNode(o.SyntaxKind.BigIntKeyword) : o.factory.createLiteralTypeNode(e);
1552
- if (o.isAsExpression(e) || o.isTypeAssertionExpression(e))
1553
- return o.isTypeReferenceNode(e.type) && o.isIdentifier(e.type.typeName) && e.type.typeName.escapedText === "const" ? B(e.expression, G.true, n, i) : e.type;
1554
- if (o.isSatisfiesExpression(e))
1555
- return t === G.false ? e.type : B(e.expression, t, n, i);
1556
- if (o.isRegularExpressionLiteral(e))
1557
- return o.factory.createTypeReferenceNode(o.factory.createIdentifier("RegExp"));
1558
- if (o.isArrayLiteralExpression(e)) {
1559
- if (i.isInLuminaMinimalExtraction)
1560
- return Oe;
1561
- const a = t === G.shallow ? G.false : t, s = new Array(e.elements.length);
1562
- for (let l = 0; l < s.length; ++l) {
1563
- const r = e.elements[l];
1564
- s[l] = B(r, a, { ...n, node: r }, i);
1565
- }
1566
- return a ? o.factory.createTypeOperatorNode(o.SyntaxKind.ReadonlyKeyword, o.factory.createTupleTypeNode(s)) : o.factory.createArrayTypeNode(
1567
- s.length === 1 ? s[0] : o.factory.createUnionTypeNode(s)
1568
- );
1569
- }
1570
- if (o.isObjectLiteralExpression(e)) {
1571
- if (i.isInLuminaMinimalExtraction)
1572
- return Oe;
1573
- const a = t === G.shallow ? G.false : t, s = new Array(e.properties.length);
1574
- for (let l = 0; l < s.length; ++l) {
1575
- const r = e.properties[l];
1576
- s[l] = Hn(r, a, { ...n, node: r }, i);
1577
- }
1578
- return o.factory.createTypeLiteralNode(s);
1579
- }
1580
- if (o.isPrefixUnaryExpression(e)) {
1581
- if (e.operator !== o.SyntaxKind.MinusToken)
1582
- return be(n, X, t, i);
1583
- if (t === G.false)
1584
- return o.factory.createKeywordTypeNode(o.SyntaxKind.NumberKeyword);
1585
- {
1586
- const a = B(e.operand, t, n, i);
1587
- return o.isLiteralTypeNode(a) ? o.factory.createLiteralTypeNode(
1588
- o.factory.createPrefixUnaryExpression(o.SyntaxKind.MinusToken, a.literal)
1589
- ) : be(n, X, t, i);
1590
- }
1591
- }
1592
- if (o.isParenthesizedExpression(e))
1593
- return B(e.expression, t, n, i);
1594
- if (o.isNewExpression(e)) {
1595
- if (i.isInLuminaMinimalExtraction)
1596
- return Oe;
1597
- if (o.isIdentifier(e.expression)) {
1598
- const s = e.expression.escapedText;
1599
- let l = e.typeArguments, r = !1;
1600
- if ((s === "Set" || s === "WeakSet") && l === void 0)
1601
- if (e.arguments?.[0] !== void 0) {
1602
- const c = B(
1603
- e.arguments[0],
1604
- t,
1605
- { ...n, node: e.arguments[0] },
1606
- i
1607
- );
1608
- c.kind === o.SyntaxKind.ArrayType && (l = [c.elementType]);
1609
- } else
1610
- r = !0;
1611
- else
1612
- r ||= (s === "Map" || s === "WeakMap") && l?.length !== 2;
1613
- if (!r)
1614
- return o.factory.createTypeReferenceNode(e.expression, l);
1615
- }
1616
- const a = B(e.expression, t, n, i);
1617
- if (o.isTypeReferenceNode(a))
1618
- return a;
1619
- }
1620
- if (o.isConditionalExpression(e))
1621
- return o.factory.createUnionTypeNode([
1622
- B(e.whenTrue, t, { ...n, node: e.whenTrue }, i),
1623
- B(e.whenFalse, t, { ...n, node: e.whenFalse }, i)
1624
- ]);
1625
- if (o.isIdentifier(e))
1626
- return Se(n, t, i) ?? o.factory.createTypeQueryNode(e);
1627
- if (o.isPropertyAccessExpression(e) && o.isIdentifier(e.name)) {
1628
- const a = Se(n, t, i);
1629
- if (a !== void 0)
1630
- return a;
1631
- const s = B(e.expression, t, n, i);
1632
- return o.isTypeQueryNode(s) ? o.factory.createTypeQueryNode(o.factory.createQualifiedName(s.exprName, e.name)) : s === yt ? yt : be(n, X, t, i);
1633
- }
1634
- if (o.isCallExpression(e)) {
1635
- const a = e.expression, s = e.arguments.at(0);
1636
- 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))
1637
- return o.factory.createTypeReferenceNode(a.expression, [
1638
- o.factory.createTypeReferenceNode(s)
1639
- ]);
1640
- const l = Se(n, t, i);
1641
- if (l !== void 0)
1642
- return l;
1643
- const r = B(a, t, n, i);
1644
- return o.isTypeQueryNode(r) ? o.factory.createTypeReferenceNode(o.factory.createIdentifier("ReturnType"), [
1645
- o.factory.createTypeQueryNode(r.exprName, e.typeArguments)
1646
- ]) : be(n, X, t, i);
1647
- }
1648
- if (o.isArrowFunction(e)) {
1649
- if (i.isInLuminaMinimalExtraction)
1650
- return Oe;
1651
- const a = t === G.shallow ? G.false : t;
1652
- return o.factory.createFunctionTypeNode(
1653
- e.typeParameters,
1654
- vt(e.parameters, a, n, i),
1655
- e.type ?? (o.isBlock(e.body) ? Je(e, i) ?? Q(n, X, i) : B(e.body, a, n, i))
1656
- );
1657
- }
1658
- return be(n, X, t, i);
1659
- }
1660
- function Hn(e, t, n, i) {
1661
- const a = t === G.false ? void 0 : Jn;
1662
- return o.isPropertyAssignment(e) ? o.factory.createPropertySignature(
1663
- a,
1664
- e.name,
1665
- void 0,
1666
- B(e.initializer, t, { ...n, node: e.initializer }, i)
1667
- ) : o.isShorthandPropertyAssignment(e) ? o.factory.createPropertySignature(
1668
- a,
1669
- e.name,
1670
- void 0,
1671
- Se(n, t, i) ?? o.factory.createTypeQueryNode(o.factory.createIdentifier(e.name.escapedText))
1672
- ) : o.isSpreadAssignment(e) ? o.factory.createPropertySignature(
1673
- a,
1674
- "_spread",
1675
- void 0,
1676
- Q(n, X, i)
1677
- ) : o.isMethodDeclaration(e) ? o.factory.createPropertySignature(
1678
- a,
1679
- e.name,
1680
- void 0,
1681
- o.factory.createFunctionTypeNode(
1682
- e.typeParameters,
1683
- vt(e.parameters, t, n, i),
1684
- e.type ?? Je(e, i) ?? Q(n, X, i)
1685
- )
1686
- ) : o.isGetAccessorDeclaration(e) ? o.factory.createGetAccessorDeclaration(
1687
- void 0,
1688
- e.name,
1689
- // Should always be empty
1690
- e.parameters,
1691
- e.type ?? Je(e, i) ?? Q(n, X, i),
1692
- void 0
1693
- ) : o.factory.createSetAccessorDeclaration(
1694
- void 0,
1695
- e.name,
1696
- vt(e.parameters, t, n, i),
1697
- void 0
1698
- );
1699
- }
1700
- function be(e, t, n, i) {
1701
- return Se(e, n, i) ?? Q(e, t, i);
1702
- }
1703
- function Se(e, t, n) {
1704
- const i = n.program?.getTypeChecker?.();
1705
- if (i !== void 0 && e.node !== void 0) {
1706
- let a;
1707
- const s = t === G.false;
1708
- if (s && e.node.kind === o.SyntaxKind.Identifier) {
1709
- const r = i.getSymbolAtLocation(e.node);
1710
- a = r === void 0 ? void 0 : i.getTypeOfSymbol(r);
1711
- }
1712
- a ??= i.getTypeAtLocation(e.node);
1713
- const l = s ? Zi(i, a) : a;
1714
- return tt(i, l);
1715
- }
1716
- }
1717
- function tt(e, t) {
1718
- const n = t.flags & o.TypeFlags.Union ? t.types.every(Kt) : Kt(t);
1719
- return e.typeToTypeNode(
1720
- t,
1721
- void 0,
1722
- Un & (n ? ~o.TypeFormatFlags.MultilineObjectLiterals : -1)
1723
- );
1724
- }
1725
- 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);
1726
- function Je(e, t) {
1727
- const n = t.program?.getTypeChecker?.();
1728
- if (n === void 0)
1729
- return;
1730
- const i = n.getSignatureFromDeclaration(e);
1731
- if (i === void 0)
1732
- return;
1733
- const a = n.getReturnTypeOfSignature(i);
1734
- return tt(n, a);
1735
- }
1736
- function zn(e, t) {
1737
- const n = t.program?.getTypeChecker?.();
1738
- if (n === void 0)
1739
- return;
1740
- const i = n.getTypeAtLocation(e);
1741
- return tt(n, i);
1742
- }
1743
- function Q(e, t, n) {
1744
- return n.isInLuminaMinimalExtraction || n.emitError(t, e), yt;
1745
- }
1746
- const X = "Failed to infer the type of the expression. Please provide an explicit type annotation or simplify the expression.", yt = o.factory.createKeywordTypeNode(o.SyntaxKind.AnyKeyword), Oe = o.factory.createKeywordTypeNode(o.SyntaxKind.UnknownKeyword), We = o.factory.createKeywordTypeNode(o.SyntaxKind.VoidKeyword), jn = o.factory.createToken(o.SyntaxKind.ReadonlyKeyword), Jn = [jn];
1747
- function vt(e, t, n, i) {
1748
- const a = new Array(e.length);
1749
- for (let s = 0; s < a.length; ++s) {
1750
- const l = e[s];
1751
- a[s] = l.initializer === void 0 && o.isIdentifier(l.name) ? l : o.factory.createParameterDeclaration(
1752
- void 0,
1753
- l.dotDotDotToken,
1754
- o.isIdentifier(l.name) ? l.name : o.factory.createIdentifier(`parameter${s}`),
1755
- l.questionToken,
1756
- l.type ?? (l.initializer === void 0 ? Q({ ...n, node: l }, X, i) : B(
1757
- l.initializer,
1758
- t,
1759
- {
1760
- ...n,
1761
- node: l.initializer
1762
- },
1763
- i
1764
- ))
1765
- );
1766
- }
1767
- return a;
1768
- }
1769
- function qn(e, t) {
1770
- const n = t.program?.getTypeChecker?.();
1771
- if (n === void 0 || !Xn(e.exprName, t))
1772
- return;
1773
- const i = n.getTypeAtLocation(e.exprName);
1774
- return tt(n, i);
1775
- }
1776
- function Xn(e, t) {
1777
- return e.kind === o.SyntaxKind.QualifiedName ? Qn(e.left) : t.moduleContext.importsMap[e.escapedText]?.specifier.endsWith(".json") === !0;
1778
- }
1779
- function Qn(e) {
1780
- for (; e !== void 0; )
1781
- if (e.kind === o.SyntaxKind.QualifiedName)
1782
- e = e.left;
1783
- else if (e.kind === o.SyntaxKind.Identifier)
1784
- return e.escapedText === "this";
1785
- return !1;
1786
- }
1787
- function z(e, t) {
1788
- if (M = t, _e.clear(), U = [], qe.clear(), e.pos !== -1 && e.getText(M.file).includes("* @public") && M.emitError(
1789
- "@public JSDoc tag may only appear in interfaces, top-level of type alias, or top-level intersection inside a type-alias. @public JSDoc tag inside inline object literal types or deeper aliases is not supported as such are tricky to represent in the docs UI. Refactor out the type into a separate top-level interface/type-alias. Documentation: https://webgis.esri.com/webgis/core/core/documenting-api#describing-nested-object-types",
1790
- { file: M.file, node: e }
1791
- ), e.kind === o.SyntaxKind.Identifier || e.kind === o.SyntaxKind.QualifiedName)
1792
- Ke(e);
1793
- else if (o.isFunctionTypeNode(e) || o.isConstructorTypeNode(e)) {
1794
- const i = e.typeParameters;
1795
- if (i !== void 0)
1796
- for (let a = 0; a < i.length; ++a) {
1797
- const s = i[a];
1798
- qe.add(s.name.escapedText);
1799
- }
1800
- }
1801
- return Yn.writeNode(o.EmitHint.Unspecified, e, void 0, _e), {
1802
- text: _e.getText(),
1803
- references: U.length > 0 ? U : void 0,
1804
- values: void 0,
1805
- source: void 0
1806
- };
1807
- }
1808
- let M;
1809
- const ve = (e, t, n) => {
1810
- switch (t.kind) {
1811
- case o.SyntaxKind.TypeReference:
1812
- const i = t, a = i.typeName;
1813
- switch (a.escapedText) {
1814
- case "nil":
1815
- return ve(e, Zn, n);
1816
- // Used in public typings in 88 files
1817
- // REFACTOR: consider refactoring out Const usages in public API to
1818
- // reduce divergence
1819
- case "Const":
1820
- // In public types, Lumina's "component" and "el" have the same type
1821
- // eslint-disable-next-line no-fallthrough
1822
- case "ToElement":
1823
- return ve(e, i.typeArguments[0], n);
1824
- /**
1825
- * @see https://webgis.esri.com/webgis/core/core/documenting-api#publicprivate-type-divergence
1826
- */
1827
- case "PublicApiNarrowType":
1828
- case "PublicApiRelaxType":
1829
- return ve(e, i.typeArguments[1], n);
1830
- }
1831
- Ke(a);
1832
- break;
1833
- case o.SyntaxKind.TypeQuery:
1834
- const l = qn(t, M);
1835
- if (l !== void 0)
1836
- return ve(e, l, n);
1837
- Ke(t.exprName, eo);
1838
- break;
1839
- case o.SyntaxKind.PropertyAccessExpression:
1840
- Ke(t);
1841
- break;
1842
- case o.SyntaxKind.InferType:
1843
- case o.SyntaxKind.MappedType:
1844
- const c = t.typeParameter;
1845
- qe.add(c.name.escapedText);
1846
- break;
1847
- case o.SyntaxKind.TypeLiteral:
1848
- const m = t;
1849
- m.members.length === 1 && ("emitNode" in m && (m.emitNode ??= {}), o.setEmitFlags(m, o.EmitFlags.SingleLine));
1850
- break;
1851
- case o.SyntaxKind.IndexedAccessType:
1852
- const d = t;
1853
- if (
1854
- // In public types, Lumina's "component" and "el" have the same type
1855
- // Thus print ArcgisHome["el"] as just ArcgisHome
1856
- M.isComponentProject && d.indexType.kind === o.SyntaxKind.LiteralType && d.indexType.literal.text === "el"
1857
- )
1858
- return ve(e, d.objectType, n);
1859
- break;
1860
- case o.SyntaxKind.ImportType:
1861
- M.emitError(
1862
- `\`import()\` syntax inside types is not supported - refactor to import the type at the top of the file${t.pos === -1 ? ". The import() syntax might also be inserted by TypeScript if you are referencing a type that is not otherwise accessible - refactor such cases by adding explicit type annotation." : ""}`,
1863
- { file: M.file, node: t }
1864
- );
1865
- break;
1866
- }
1867
- n(e, t), Xe !== void 0 && (mi(), Xe = void 0);
1868
- }, Yn = tn(
1869
- {},
1870
- {
1871
- onEmitNode: ve
1872
- }
1873
- ), Zn = o.factory.createIdentifier("null | undefined"), _e = en.createTextWriter(`
1874
- `), eo = 7, qe = /* @__PURE__ */ new Set();
1875
- let U;
1876
- function Ke(e, t = 0) {
1877
- const n = [];
1878
- let i = e;
1879
- for (; i !== void 0; )
1880
- if (i.kind === o.SyntaxKind.Identifier) {
1881
- n.push(i);
1882
- break;
1883
- } else if (i.kind === o.SyntaxKind.QualifiedName)
1884
- n.push(i.right), i = i.left;
1885
- else if (i.kind === o.SyntaxKind.PropertyAccessExpression) {
1886
- const g = i.name;
1887
- n.push(g), i = i.expression;
1888
- }
1889
- const a = n.at(-1), s = a.escapedText, l = _e.getTextPos() + t;
1890
- let r = l + s.length;
1891
- const c = a;
1892
- if (c.pos === -1 && c.symbol !== void 0) {
1893
- U.push(
1894
- je(c.symbol, c, M, l, r)
1895
- );
1896
- return;
1897
- }
1898
- if (M.functionLikeTypeParameters?.has(s) === !0) {
1899
- U.push({
1900
- name: s,
1901
- module: void 0,
1902
- package: void 0,
1903
- viewUrl: void 0,
1904
- start: l,
1905
- end: r
1906
- });
1907
- return;
1908
- }
1909
- if (M.objectLikeTypeParameters?.has(s) === !0) {
1910
- U.push({
1911
- name: s,
1912
- module: void 0,
1913
- package: void 0,
1914
- viewUrl: void 0,
1915
- start: l,
1916
- end: r
1917
- });
1918
- return;
1919
- }
1920
- if (M.localDeclarations.has(s)) {
1921
- U.push({
1922
- name: s,
1923
- module: void 0,
1924
- package: void 0,
1925
- viewUrl: Ge(
1926
- M.apiModule.path,
1927
- s === M.exportDefaultName ? void 0 : s,
1928
- void 0,
1929
- M
1930
- ),
1931
- start: l,
1932
- end: r
1933
- });
1934
- return;
1935
- }
1936
- if (M.localPrivateDeclarations?.has(s) === !0) {
1937
- M.localPrivateDeclarations.set(s, Math.abs(M.localPrivateDeclarations.get(s))), U.push({
1938
- name: s,
1939
- module: void 0,
1940
- package: void 0,
1941
- viewUrl: Ge(
1942
- M.apiModule.path,
1943
- s === M.exportDefaultName ? void 0 : s,
1944
- void 0,
1945
- M
1946
- ),
1947
- start: l,
1948
- end: r
1949
- });
1950
- return;
1951
- }
1952
- const d = M.moduleContext.importsMap[s];
1953
- if (d !== void 0) {
1954
- d.wasUsed = !0;
1955
- const g = d.type === "named";
1956
- d.replacementName !== void 0 && (Me(a, d.replacementName), r = l + d.replacementName.length), d.replacementName !== void 0 && (M.functionLikeTypeParameters?.has(d.replacementName) === !0 || M.objectLikeTypeParameters?.has(d.replacementName) === !0) && M.emitError(
1957
- `Can't do a type replacement of ${oe.green(s)} to ${oe.red(d.replacementName)} as the latter name conflicts with a type parameter name in the current scope. Rename the type parameter or refactor out the type replacement.`,
1958
- { file: M.file, node: e }
1959
- );
1960
- const E = g ? d.actualName ?? d.replacementName ?? s : void 0;
1961
- if (d.modulePath === void 0) {
1962
- if (M.config.strict) {
1963
- const h = ct(d.specifier);
1964
- M.runtimeDependencyNames.has(h) || M.emitError(
1965
- h === "esri" ? `Found unexpected absolute path import of ${oe.red(E ?? d.type)} from ${oe.red(d.specifier)}. Did you mean to use a relative import instead?` : `Type ${oe.red(E ?? d.type)} imported from ${oe.red(h)} cannot be referenced in public types as this dependency is not declared as a "dependency" in the package.json`,
1966
- { file: M.file, node: e }
1967
- );
1968
- }
1969
- } else M.config.strict || ze(
1970
- d.modulePath,
1971
- pt(
1972
- M.apiModule.sourcePath.slice(M.config.context.basePath.length),
1973
- d.specifier
1974
- ),
1975
- g ? E : d.type,
1976
- M
1977
- );
1978
- let v, b = d.modulePath;
1979
- b === void 0 && (v = ct(d.specifier), b = d.specifier.length === v.length ? void 0 : d.specifier.slice(v.length + 1)), U.push({
1980
- name: E ?? d.type,
1981
- module: b,
1982
- package: v,
1983
- viewUrl: d.modulePath === void 0 ? di(v, b, g ? s : d.type, M) : Ge(d.modulePath, E, void 0, M),
1984
- start: l,
1985
- end: r
1986
- });
1987
- return;
1988
- }
1989
- const p = mt[s];
1990
- if (p !== void 0) {
1991
- U.push({
1992
- name: s,
1993
- module: void 0,
1994
- package: De,
1995
- viewUrl: p[0]?.startsWith("https") === !1 ? `${ut}${p[0]}` : p[0] ?? void 0,
1996
- start: l,
1997
- end: r
1998
- });
1999
- let g = p;
2000
- if (g.length > 1) {
2001
- let E = n.length - 2, v = r + 1;
2002
- for (; g[1] !== void 0 && E >= 0; ) {
2003
- const b = n[E--];
2004
- if (g = g[1][b.escapedText], g === void 0)
2005
- M.emitError("Failed to resolve the definition of the type reference", {
2006
- file: M.file,
2007
- node: e
2008
- });
2009
- else {
2010
- const h = v + b.escapedText.length;
2011
- U.push({
2012
- name: b.escapedText,
2013
- module: void 0,
2014
- package: De,
2015
- viewUrl: g[0]?.startsWith("https") === !1 ? `${ut}${g[0]}` : g[0] ?? void 0,
2016
- start: v,
2017
- end: h
2018
- }), v = h + 1;
2019
- }
2020
- }
2021
- }
2022
- return;
2023
- }
2024
- if (qe.has(s))
2025
- return;
2026
- const u = M.program?.getTypeChecker?.()?.getSymbolAtLocation(a);
2027
- if (u !== void 0) {
2028
- U.push(je(u, a, M, l, r));
2029
- return;
2030
- }
2031
- M.emitError(
2032
- "Failed to resolve the definition of the type reference. Ensure it has @public or refactor out its usage from the public API type",
2033
- { file: M.file, node: e }
2034
- );
2035
- }
2036
- function Me(e, t) {
2037
- const n = e.escapedText;
2038
- Xe = e, gt = t, mi(), gt = n;
2039
- }
2040
- let Xe, gt;
2041
- function mi() {
2042
- Xe.escapedText = gt;
2043
- }
2044
- function it(e, t, n) {
2045
- if (e === void 0 || n.isInLuminaMinimalExtraction) {
2046
- t ? n.objectLikeTypeParameters = void 0 : n.functionLikeTypeParameters = void 0;
2047
- return;
2048
- }
2049
- const i = new Array(e.length), a = t ? to : io;
2050
- a.clear();
2051
- for (let s = 0; s < e.length; ++s) {
2052
- const l = e[s], r = l.name.escapedText;
2053
- a.add(r);
2054
- const c = {
2055
- name: r,
2056
- constraint: void 0,
2057
- default: void 0,
2058
- const: void 0,
2059
- in: void 0,
2060
- out: void 0
2061
- };
2062
- if (l.modifiers !== void 0)
2063
- for (let m = 0; m < l.modifiers.length; ++m) {
2064
- const d = l.modifiers[m];
2065
- d.kind === o.SyntaxKind.ConstKeyword ? c.const = !0 : d.kind === o.SyntaxKind.InKeyword ? c.in = !0 : d.kind === o.SyntaxKind.OutKeyword && (c.out = !0);
2066
- }
2067
- i[s] = c;
2068
- }
2069
- t ? n.objectLikeTypeParameters = a : n.functionLikeTypeParameters = a;
2070
- for (let s = 0; s < e.length; ++s) {
2071
- const l = e[s], r = l.constraint, c = l.default;
2072
- r !== void 0 && (i[s].constraint = z(r, n)), c !== void 0 && (i[s].default = z(c, n));
2073
- }
2074
- return i;
2075
- }
2076
- const to = /* @__PURE__ */ new Set(), io = /* @__PURE__ */ new Set();
2077
- function Ee(e, t, n) {
2078
- if (!o.isIdentifier(e) && !o.isQualifiedName(e) && !o.isPropertyAccessExpression(e))
2079
- return n.emitError(
2080
- "Expected the type nodes in the extends clause to be Identifier, QualifiedName or PropertyAccessExpression.",
2081
- { file: n.file, node: e }
2082
- ), {
2083
- name: "error",
2084
- module: void 0,
2085
- package: void 0,
2086
- viewUrl: void 0,
2087
- typeArguments: void 0,
2088
- printableText: n.produceDts ? "Record<never, Error>" : void 0
2089
- };
2090
- const i = z(e, n), a = i.references?.[0] ?? {
2091
- module: void 0,
2092
- package: void 0,
2093
- viewUrl: void 0
2094
- };
2095
- let s, l;
2096
- if (s = i.text, t !== void 0) {
2097
- l = new Array(t.length), s += "<";
2098
- for (let c = 0; c < t.length; ++c) {
2099
- const m = t[c], d = z(m, n);
2100
- l[c] = d, s += d.text, c < t.length - 1 && (s += ", ");
2101
- }
2102
- s += ">";
2103
- }
2104
- return {
2105
- name: i.references?.length === 1 ? i.references[0].name : i.text,
2106
- module: a.module,
2107
- package: a.package,
2108
- viewUrl: a.viewUrl,
2109
- typeArguments: l,
2110
- /**
2111
- * If referenced type is imported as default, the `name` will be `default`,
2112
- * which is not a name suitable for .d.ts emit. So we preserve the original
2113
- * type string in a temporary field.
2114
- */
2115
- printableText: s
2116
- };
2117
- }
2118
- function Et(e) {
2119
- return o.isTypeReferenceNode(e) && (e.typeName.escapedText === "PublicApiNarrowType" || e.typeName.escapedText === "PublicApiRelaxType") ? e.typeArguments[1] : e;
2120
- }
2121
- function no(e) {
2122
- return e.expression.escapedText === "PublicApiNarrowType" || e.expression.escapedText === "PublicApiRelaxType" ? e.typeArguments[1] : e;
2123
- }
2124
- const ui = { text: "unknown", references: void 0, values: void 0, source: void 0 }, oo = {
2125
- text: "Promise<unknown>",
2126
- references: void 0,
2127
- values: void 0,
2128
- source: void 0
2129
- }, ao = {
2130
- text: "Record<string, unknown> | undefined",
2131
- references: [
2132
- {
2133
- name: "Record",
2134
- module: void 0,
2135
- package: "global:",
2136
- viewUrl: "https://www.typescriptlang.org/docs/handbook/utility-types.html#recordkeys-type",
2137
- start: 0,
2138
- end: 6
2139
- }
2140
- ],
2141
- values: void 0,
2142
- source: void 0
2143
- };
2144
- function so(e, t) {
2145
- if (t.isInLuminaMinimalExtraction)
2146
- return;
2147
- const n = Ji(e.name), i = {
2148
- [Y]: ro,
2149
- kind: "method",
2150
- name: "componentOnReady",
2151
- static: void 0,
2152
- deprecated: void 0,
2153
- summary: void 0,
2154
- description: "Creates a promise that resolves once the component is fully loaded.",
2155
- docsTags: [
2156
- {
2157
- name: "example",
2158
- text: `\`\`\`js
2159
- const ${n} = document.createElement("${e.tagName}");
2160
- document.body.append(${n});
2161
- await ${n}.componentOnReady();
2162
- console.log("${e.tagName} is ready to go!");
2163
- \`\`\``
2164
- }
2165
- ],
2166
- typeParameters: void 0,
2167
- parameters: void 0,
2168
- return: lo,
2169
- inheritedFrom: e.superclass,
2170
- signature: "(): Promise<this>",
2171
- privacy: void 0,
2172
- source: void 0
2173
- };
2174
- e.members.push(i);
2175
- 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;
2176
- typeof r == "string" && a.push({
2177
- description: "Docs",
2178
- url: r,
2179
- source: void 0
2180
- }), typeof c == "string" && a.push({
2181
- description: "Demo",
2182
- url: c,
2183
- source: void 0
2184
- });
2185
- const m = t.componentStories[e.tagName];
2186
- if (typeof m == "object" && a.push(...m), t.componentCssFileDocs !== void 0) {
2187
- e.cssProperties ??= [];
2188
- const d = new Set(e.cssProperties.map((p) => p.name));
2189
- e.cssProperties = [
2190
- ...e.cssProperties,
2191
- ...t.componentCssFileDocs.filter((p) => !d.has(p.name))
2192
- ], t.componentCssFileDocs = void 0;
2193
- }
2194
- a.length > 0 && (e.demos = a);
2195
- }
2196
- const ro = Ze(), lo = {
2197
- summary: void 0,
2198
- description: void 0,
2199
- type: {
2200
- text: "Promise<this>",
2201
- references: [
2202
- {
2203
- name: "Promise",
2204
- module: "lib/lib.es5.d.ts",
2205
- package: "typescript",
2206
- viewUrl: void 0,
2207
- start: 0,
2208
- end: 7
2209
- }
2210
- ],
2211
- values: void 0,
2212
- source: void 0
2213
- }
2214
- }, co = de, po = de, mo = de, uo = de, fo = de, yo = de, vo = de, fi = de;
2215
- function de(e, t, n, i, a) {
2216
- if (i.docsTags === void 0 || n === void 0)
2217
- return;
2218
- const s = i.docsTags.indexOf(V.copyDoc);
2219
- if (s === -1)
2220
- return;
2221
- const l = i.name;
2222
- let r = n?.[l];
2223
- r === void 0 && e.emitError(
2224
- "@copyDoc tag was used, but failed to find copyDoc definition for it. Documentation: https://webgis.esri.com/webgis/core/core/documenting-api#copydoc",
2225
- {
2226
- file: e.file,
2227
- node: t
2228
- }
2229
- ), !(typeof r == "function" && (r = r(i, a, e.apiModule), r === void 0)) && ki(r, i, s);
2230
- }
2231
- function Ct(e, t, n) {
2232
- n.apiModule.exports.push({
2233
- kind: e.customElement === !0 ? "custom-element-definition" : e.kind === "interface" || e.kind === "mixin" ? "ts" : "js",
2234
- name: t ? "default" : e.tagName ?? e.name,
2235
- deprecated: void 0,
2236
- declaration: {
2237
- name: e.name,
2238
- module: void 0,
2239
- package: void 0,
2240
- viewUrl: void 0
2241
- }
2242
- });
2243
- }
2244
- const go = Ae, st = Ae, So = Ae, Ht = Ae, $t = Ae;
2245
- function Ae(e, t, n, i) {
2246
- if (t === void 0) {
2247
- i.emitError("Computed function/method names are not yet supported.", {
2248
- file: i.file,
2249
- node: e
2250
- });
2251
- return;
2252
- }
2253
- const a = n ?? e, s = n !== void 0 && !o.isVariableStatement(n), l = o.isMethodDeclaration(e), r = o.isMethodSignature(e), c = l || r || s, m = n !== void 0 && o.isVariableStatement(n), p = o.isFunctionDeclaration(e) || m, f = !s && !m && o.isFunctionTypeNode(e) || o.isCallSignatureDeclaration(e), u = o.isConstructorDeclaration(e), g = u || o.isConstructSignatureDeclaration(e) || o.isConstructorTypeNode(e), E = i.isInLuminaMinimalExtraction || i.jsDoc === Ce, v = Ze();
2254
- let b, h, L = !1, I = !1;
2255
- if (!p && a.modifiers !== void 0)
2256
- for (let C = 0; C < a.modifiers.length; ++C)
2257
- switch (a.modifiers[C].kind) {
2258
- case o.SyntaxKind.StaticKeyword:
2259
- b = !0;
2260
- break;
2261
- case o.SyntaxKind.ProtectedKeyword:
2262
- h = "protected";
2263
- break;
2264
- case o.SyntaxKind.AbstractKeyword:
2265
- L = !0;
2266
- break;
2267
- case o.SyntaxKind.AsyncKeyword:
2268
- I = !0;
2269
- break;
2270
- }
2271
- const y = {
2272
- [Y]: v,
2273
- kind: c ? "method" : p ? "function" : f ? "call-signature" : g ? "constructor" : void 0,
2274
- name: g || f ? void 0 : t,
2275
- static: b,
2276
- deprecated: void 0,
2277
- summary: void 0,
2278
- description: void 0,
2279
- docsTags: void 0,
2280
- typeParameters: it(e.typeParameters, !1, i),
2281
- parameters: [],
2282
- return: u ? void 0 : {
2283
- summary: void 0,
2284
- description: void 0,
2285
- type: E ? I ? oo : ui : z(
2286
- e.type ?? Je(e, i) ?? Q(
2287
- { file: i.file, node: e },
2288
- "@public function must have a return type annotation",
2289
- i
2290
- ),
2291
- i
2292
- )
2293
- },
2294
- inheritedFrom: void 0,
2295
- signature: void 0,
2296
- privacy: h,
2297
- source: void 0
2298
- }, k = y, P = ln(y, i.jsDoc), D = E ? [] : e.parameters;
2299
- let x = P.length, T = !1, K = 0;
2300
- for (let C = 0; C < D.length; ++C) {
2301
- const S = D[C], A = o.isIdentifier(S.name) ? S.name.escapedText : void 0;
2302
- if (A === "this") {
2303
- K -= 1;
2304
- continue;
2305
- }
2306
- const _ = u && A !== void 0 && S.modifiers !== void 0 && S.modifiers.length > 0 ? j(S, !0, i) : void 0;
2307
- if (_ !== void 0) {
2308
- K -= 1, x += 1, i.jsDoc = _;
2309
- const q = vi(S, A, !1, i);
2310
- if (q === void 0)
2311
- continue;
2312
- i.apiObject.members.push(q);
2313
- const pe = {
2314
- name: A,
2315
- deprecated: void 0,
2316
- summary: void 0,
2317
- description: q.description,
2318
- docsTags: void 0,
2319
- optional: void 0,
2320
- rest: S.dotDotDotToken ? !0 : void 0,
2321
- type: q.type,
2322
- default: q.default
2323
- };
2324
- pe.optional = Bt(S, pe), y.parameters.push(pe);
2325
- continue;
2326
- }
2327
- let F = P[C + K]?.text, N, w;
2328
- if (!i.config.strict && (F === void 0 || A === void 0) && (F = A ?? `parameter${C}`), F === void 0) {
2329
- i.emitError(
2330
- `Expected @param tag for every parameter on a public function. If you need to include a non-public parameter on a public function, see https://webgis.esri.com/webgis/core/core/documenting-api#param${g ? " and https://webgis.esri.com/webgis/core/core/documenting-api#constructor" : ""}`,
2331
- { file: i.file, node: S }
2332
- ), T = !0;
2333
- break;
2334
- }
2335
- const H = F.indexOf(" ");
2336
- if (N = H === -1 ? F : F.slice(0, H), w = H === -1 ? "" : F.slice(H + 1).trim(), (w.startsWith("- ") || w.startsWith(`-
2337
- `)) && (w = w.slice(2).trim()), A !== void 0 && A !== N && `_${N}` !== A) {
2338
- const q = N.startsWith("[") || N.endsWith("]");
2339
- if (i.config.strict) {
2340
- i.emitError(
2341
- `The '${A}' TypeScript parameter name does not match the @param tag at position ${C}, '${N}'${q ? ". If you meant to mark the parameter as optional, use TypeScript's `?` syntax or `=` default value syntax instead of JSDoc [square brackets]" : ""}`,
2342
- {
2343
- file: i.file,
2344
- node: S
2345
- }
2346
- ), T = !0;
2347
- break;
2348
- } else
2349
- N = A.startsWith("_") ? A.slice(1) : A;
2350
- }
2351
- const me = S.type ?? (S.initializer === void 0 ? Q(
2352
- { file: i.file, node: S },
2353
- `Public parameter ${N} must have a type annotation or a default value`,
2354
- i
2355
- ) : ht(S.initializer, G.false, i.file, i)), ke = z(me, i), ne = {
2356
- name: N,
2357
- deprecated: void 0,
2358
- summary: void 0,
2359
- description: w || void 0,
2360
- docsTags: void 0,
2361
- optional: void 0,
2362
- rest: S.dotDotDotToken ? !0 : void 0,
2363
- type: ke,
2364
- default: Be(S.initializer, void 0, i.file)
2365
- };
2366
- ne.optional = Bt(S, ne), y.parameters.push(ne);
2367
- }
2368
- if (i.config.strict && !T && x !== y.parameters.length && i.emitError(
2369
- `Expected @param tags to match the number of parameters on a public function. Found ${P.length} @param tags for ${y.parameters.length} TypeScript parameters. Documentation: https://webgis.esri.com/webgis/core/core/documenting-api#param${g ? " and https://webgis.esri.com/webgis/core/core/documenting-api#constructor" : ""}`,
2370
- { file: i.file, node: e }
2371
- ), y.parameters.length === 0)
2372
- y.parameters = void 0;
2373
- else {
2374
- let C = !0;
2375
- for (let S = y.parameters.length - 1; S >= 0; S--) {
2376
- const R = y.parameters[S];
2377
- C &&= R.optional === !0 || R.rest === !0 || R.default !== void 0, !C && R.optional && (R.optional = void 0, R.type.text.endsWith(" | undefined") || (R.type.text += " | undefined"));
2378
- }
2379
- }
2380
- l && i.componentTagName !== void 0 && (k.signature = Hi(k), I && !Fi(k) && i.emitError("Public method marked as async must have a Promise<SomeType> return type annotation.", {
2381
- file: i.file,
2382
- node: e
2383
- })), i.functionLikeTypeParameters = void 0;
2384
- const O = p ? et(a) : 0, J = p && i.exportDefaultName === t, $ = O === 2 || J;
2385
- return p && ($ ? Ct(y, !0, i) : O === 0 && i.config.strict && i.emitError("Expected @public function to be exported using named or default export.", {
2386
- file: i.file,
2387
- node: e
2388
- })), i.produceDts && (c || g || f ? (L && (v.isAbstract = !0), v.hasQuestionToken = a.questionToken !== void 0 ? !0 : void 0) : v.isDefaultExported = $ || void 0), c ? po(
2389
- i,
2390
- n ?? e,
2391
- i.config.documentation.copyDocDefinitions.methods,
2392
- y,
2393
- i.apiObject
2394
- ) : p && uo(
2395
- i,
2396
- n ?? e,
2397
- i.config.documentation.copyDocDefinitions.functions,
2398
- y,
2399
- i.apiModule
2400
- ), y;
2401
- }
2402
- const Bt = (e, t) => (
2403
- // Keep ? as is
2404
- e.questionToken !== void 0 || // If had default value internally, but not publicly, add ?
2405
- e.initializer !== void 0 && t.default === void 0 ? !0 : void 0
2406
- );
2407
- function To(e, t, n) {
2408
- return St(), Pe(e, t), bt && t !== void 0 && n !== void 0 && (St(), Mt(t.getTypeAtLocation(n))), yi();
2409
- }
2410
- function ho(e) {
2411
- return St(), Mt(e), yi();
2412
- }
2413
- let Le = !1, se = !1, re = !1, Ie = !1, le = !1, bt = !1;
2414
- const ce = [], te = [];
2415
- function St() {
2416
- Le = !1, se = !1, re = !1, Ie = !1, le = !1, bt = !1, ce.length = 0, te.length = 0;
2417
- }
2418
- function yi() {
2419
- if (!re && !Ie && !le && !Le)
2420
- return;
2421
- const e = [];
2422
- if (ce.length > 0)
2423
- for (let t = 0; t < ce.length; ++t)
2424
- e.push({ type: "string", value: ce[t] });
2425
- else re && e.push(Eo);
2426
- if (te.length > 0)
2427
- for (let t = 0; t < te.length; ++t)
2428
- e.push({ type: "number", value: te[t] });
2429
- else le && e.push(Co);
2430
- return Ie && e.push(bo), Le ? e.push(Mo) : se && e.push(Po), e;
2431
- }
2432
- 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 };
2433
- function Pe(e, t) {
2434
- switch (e.kind) {
2435
- case o.SyntaxKind.BooleanKeyword:
2436
- case o.SyntaxKind.TrueKeyword:
2437
- case o.SyntaxKind.FalseKeyword:
2438
- Ie = !0;
2439
- return;
2440
- case o.SyntaxKind.NumberKeyword:
2441
- le = !0;
2442
- return;
2443
- case o.SyntaxKind.StringKeyword:
2444
- case o.SyntaxKind.TemplateLiteralType:
2445
- re = !0;
2446
- return;
2447
- case o.SyntaxKind.AnyKeyword:
2448
- Le = !0;
2449
- return;
2450
- case o.SyntaxKind.LiteralType:
2451
- Pe(e.literal, t);
2452
- return;
2453
- case o.SyntaxKind.StringLiteral:
2454
- case o.SyntaxKind.NoSubstitutionTemplateLiteral:
2455
- re = !0, ce.push(e.text);
2456
- return;
2457
- case o.SyntaxKind.NumericLiteral:
2458
- le = !0, te.push(e.text);
2459
- return;
2460
- case o.SyntaxKind.PrefixUnaryExpression:
2461
- const n = e.operand;
2462
- n.kind === o.SyntaxKind.NumericLiteral ? (te.push(`-${n.text}`), le = !0) : se = !0;
2463
- return;
2464
- case o.SyntaxKind.VoidKeyword:
2465
- case o.SyntaxKind.UndefinedKeyword:
2466
- case o.SyntaxKind.NullKeyword:
2467
- return;
2468
- case o.SyntaxKind.UnionType:
2469
- const i = e.types, a = Math.min(i.length, Qe);
2470
- for (let l = 0; l < a; ++l)
2471
- Pe(i[l], t);
2472
- i.length > Qe && (ce.length = 0, te.length = 0);
2473
- return;
2474
- case o.SyntaxKind.ParenthesizedType:
2475
- Pe(e.type, t);
2476
- return;
2477
- case o.SyntaxKind.TypeQuery:
2478
- case o.SyntaxKind.IndexedAccessType:
2479
- case o.SyntaxKind.ImportType:
2480
- case o.SyntaxKind.TypeReference:
2481
- t === void 0 ? se = !0 : Mt(
2482
- t.getTypeFromTypeNode(
2483
- e
2484
- )
2485
- );
2486
- return;
2487
- case o.SyntaxKind.TypeOperator:
2488
- const s = e;
2489
- s.operator === o.SyntaxKind.KeyOfKeyword ? re = !0 : s.operator === o.SyntaxKind.ReadonlyKeyword ? Pe(s.type, t) : se = !0;
2490
- return;
2491
- /*case ts.SyntaxKind.UnknownKeyword:
2492
- case ts.SyntaxKind.FunctionType:
2493
- case ts.SyntaxKind.ConstructorType:
2494
- case ts.SyntaxKind.ThisKeyword:
2495
- case ts.SyntaxKind.ConditionalType:
2496
- case ts.SyntaxKind.ArrayType:
2497
- case ts.SyntaxKind.TupleType:
2498
- case ts.SyntaxKind.IntersectionType:
2499
- case ts.SyntaxKind.ObjectKeyword:
2500
- case ts.SyntaxKind.SymbolKeyword:*/
2501
- default:
2502
- se = !0;
2503
- return;
2504
- }
2505
- }
2506
- const Qe = 40;
2507
- function Mt(e) {
2508
- if (e.isUnion()) {
2509
- const t = Math.min(e.types.length, Qe);
2510
- for (let n = 0; n < t; ++n)
2511
- Ut(e.types[n]);
2512
- e.types.length > Qe && (ce.length = 0, te.length = 0);
2513
- } else
2514
- Ut(e);
2515
- }
2516
- function Ut(e) {
2517
- const t = e.flags;
2518
- let n = !1;
2519
- if (t & o.TypeFlags.StringLiteral ? (n = !0, re = !0, ce.push(e.value)) : t & o.TypeFlags.StringLike && (n = !0, re = !0), t & o.TypeFlags.NumberLiteral ? (n = !0, le = !0, te.push(e.value.toString())) : t & o.TypeFlags.NumberLike && (n = !0, le = !0), t & o.TypeFlags.BooleanLike && (n = !0, Ie = !0), t & o.TypeFlags.Any) {
2520
- if (e.intrinsicName === "error") {
2521
- se = !0, bt = !0;
2522
- return;
2523
- }
2524
- Le = !0, n = !0;
2525
- }
2526
- t & xo || n || (se = !0);
2527
- }
2528
- 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;
2529
- function Do(e, t, n) {
2530
- let i;
2531
- const a = e.initializer;
2532
- let s;
2533
- if (e.questionToken !== void 0)
2534
- return;
2535
- if (e.type !== void 0)
2536
- o.isTypeReferenceNode(e.type) && e.type.typeName.escapedText === "EventEmitter" && (i = e.type.typeArguments?.[0] ?? We);
2537
- else if (a !== void 0 && o.isCallExpression(a)) {
2538
- const r = a.expression;
2539
- if (o.isIdentifier(r)) {
2540
- const c = r.escapedText;
2541
- c === He ? (i = a.typeArguments?.[0] ?? We, s = a.arguments[0]) : c === "reEmitEvent" ? i = a.typeArguments?.[0] ?? We : c.startsWith("use") && (i = zt(e, n));
2542
- } else if (o.isCallExpression(r) && o.isIdentifier(r.expression)) {
2543
- const c = r.expression.escapedText;
2544
- if (c === "usePropertyChange") {
2545
- const m = [];
2546
- for (let d = 0; d < a.arguments.length; ++d) {
2547
- const p = a.arguments[d];
2548
- o.isStringLiteral(p) && m.push(o.factory.createLiteralTypeNode(p));
2549
- }
2550
- if (m.length === 0)
2551
- return;
2552
- i = o.factory.createTypeLiteralNode([
2553
- o.factory.createPropertySignature(
2554
- void 0,
2555
- "name",
2556
- void 0,
2557
- m.length === 1 ? m[0] : o.factory.createUnionTypeNode(m)
2558
- )
2559
- ]);
2560
- } else c.startsWith("use") && (i = zt(e, n));
2561
- }
2562
- }
2563
- if (i === void 0)
2564
- return;
2565
- const l = {
2566
- name: t,
2567
- deprecated: void 0,
2568
- summary: void 0,
2569
- description: void 0,
2570
- docsTags: void 0,
2571
- type: z(i, n),
2572
- inheritedFrom: void 0,
2573
- privacy: void 0,
2574
- bubbles: void 0,
2575
- cancelable: void 0,
2576
- composed: void 0
2577
- };
2578
- return pn(l, n.jsDoc), s !== void 0 && Lo(e, s, l, n), mo(
2579
- n,
2580
- e,
2581
- n.config.documentation.copyDocDefinitions.events,
2582
- l,
2583
- n.apiObject
2584
- ), l;
2585
- }
2586
- const He = "createEvent";
2587
- function Lo(e, t, n, i) {
2588
- if (t !== void 0) {
2589
- if (!o.isObjectLiteralExpression(t)) {
2590
- i.emitError(`Expected object literal expression as first argument of ${He}().`, {
2591
- file: i.file,
2592
- node: e
2593
- });
2594
- return;
2595
- }
2596
- if (t.properties.some(o.isSpreadAssignment)) {
2597
- i.emitError(
2598
- `Unexpected spread syntax in ${He}() argument. ${He}() arguments must be statically parsable at compile time`,
2599
- {
2600
- file: i.file,
2601
- node: e
2602
- }
2603
- );
2604
- return;
2605
- }
2606
- for (const a of t.properties)
2607
- !o.isPropertyAssignment(a) || !o.isIdentifier(a.name) || (a.name.text === "cancelable" && !Z(a.initializer, i) && (n.cancelable = !1), a.name.text === "bubbles" && !Z(a.initializer, i) && (n.bubbles = !1), a.name.text === "composed" && !Z(a.initializer, i) && (n.composed = !1));
2608
- }
2609
- }
2610
- function zt(e, t) {
2611
- const n = t.program?.getTypeChecker?.();
2612
- if (n === void 0)
2613
- return;
2614
- const i = n.getTypeAtLocation(e);
2615
- if (!((i.aliasSymbol ?? i.symbol)?.name === "EventEmitter"))
2616
- return;
2617
- const s = n.getTypeArguments(i);
2618
- if (s.length === 0)
2619
- return We;
2620
- const l = s[0];
2621
- return n.typeToTypeNode(l, e, o.NodeBuilderFlags.NoTruncation);
2622
- }
2623
- function vi(e, t, n, i) {
2624
- if (t === void 0) {
2625
- i.emitError("Computed property names are not yet supported", { file: i.file, node: e });
2626
- return;
2627
- }
2628
- const a = e, s = xe(a.modifiers, "property") ?? (i.pairedSetter === void 0 ? void 0 : xe(i.pairedSetter.modifiers, "property")), l = s?.arguments[0], r = l !== void 0 && o.isObjectLiteralExpression(l) ? l.properties : void 0, c = o.isPropertyDeclaration(e) || o.isPropertySignature(e), m = o.isGetAccessor(e), d = wi(), p = i.isInLuminaMinimalExtraction || i.jsDoc === Ce;
2629
- let f = !1, u = !1, g, E = !1, v, b, h;
2630
- if (c && e.modifiers !== void 0)
2631
- for (let C = 0; C < e.modifiers.length; ++C)
2632
- switch (e.modifiers[C].kind) {
2633
- case o.SyntaxKind.ReadonlyKeyword:
2634
- f = !0;
2635
- continue;
2636
- case o.SyntaxKind.AccessorKeyword:
2637
- u = !0;
2638
- continue;
2639
- case o.SyntaxKind.ProtectedKeyword:
2640
- g = "protected";
2641
- continue;
2642
- case o.SyntaxKind.StaticKeyword:
2643
- v = !0;
2644
- continue;
2645
- case o.SyntaxKind.AbstractKeyword:
2646
- E = !0;
2647
- continue;
2648
- }
2649
- n ||= f || m && i.pairedSetter === void 0;
2650
- const L = i.apiObject.customElement === !0;
2651
- let I = !1;
2652
- if (i.moduleHasAccessorLikeClass)
2653
- if (r !== void 0) {
2654
- for (let C = 0; C < r.length; ++C) {
2655
- const S = r[C];
2656
- if (!o.isPropertyAssignment(S)) {
2657
- I ||= o.isSpreadAssignment(S);
2658
- continue;
2659
- }
2660
- const R = S.name.escapedText;
2661
- R === "readOnly" && Z(S.initializer, i) ? n = !0 : R === "constructOnly" && Z(S.initializer, i) ? d.isConstructorOnly = !0 : R === "type" ? d.hasAutoCasting = !0 : R === "types" && Io(
2662
- d,
2663
- S.initializer?.kind === o.SyntaxKind.ObjectLiteralExpression ? S.initializer : void 0
2664
- );
2665
- }
2666
- I && d.hasAutoCasting === void 0 && (d.hasAutoCasting = !0, d.autoCastingRequiresType = !0);
2667
- } else l !== void 0 && (d.hasAutoCasting = !0, d.autoCastingRequiresType = !0);
2668
- else if (L) {
2669
- const C = i.apiObject;
2670
- if (s === void 0) {
2671
- if (p)
2672
- return;
2673
- {
2674
- const S = c && !v ? Do(e, t, i) : void 0;
2675
- if (S !== void 0) {
2676
- C.events ??= [], C.events.push(S);
2677
- return;
2678
- } else !i.config.strict && gi(e) ? (g = "protected", b = !1, i.jsDoc = {
2679
- ...i.jsDoc,
2680
- docsTags: [...i.jsDoc.docsTags, V.internal]
2681
- }) : s === void 0 && i.emitError(
2682
- "Public properties on a Lumina component must have a @property() decorator for lazy-loading compatibility.",
2683
- {
2684
- file: i.file,
2685
- node: e
2686
- }
2687
- );
2688
- }
2689
- } else if (r !== void 0)
2690
- for (let S = 0; S < r.length; ++S) {
2691
- const R = r[S];
2692
- if (!(!o.isPropertyAssignment(R) || !o.isIdentifier(R.name)))
2693
- switch (R.name.escapedText) {
2694
- case "attribute":
2695
- o.isStringLiteral(R.initializer) ? b = R.initializer.text : b = Z(R.initializer, i);
2696
- continue;
2697
- case "reflect":
2698
- Z(R.initializer, i) && (b ??= !0, h = !0);
2699
- continue;
2700
- case "readOnly":
2701
- Z(R.initializer, i) && (n = !0);
2702
- continue;
2703
- case "type":
2704
- case "converter":
2705
- b ??= !0;
2706
- continue;
2707
- }
2708
- }
2709
- }
2710
- const y = i.pairedSetter ?? (o.isSetAccessor(e) ? e : void 0), k = n ? void 0 : y;
2711
- u ||= s !== void 0 || m || y !== void 0, d.isAccessor = u || void 0;
2712
- const P = k?.parameters[0].type, D = a.type;
2713
- let x = P ?? D;
2714
- if (x === void 0) {
2715
- const C = k?.parameters[0].initializer ?? e.initializer;
2716
- if (c && C !== void 0 && o.isArrowFunction(C)) {
2717
- if (n)
2718
- return $t(C, t, e, i);
2719
- jt(e, i);
2720
- }
2721
- x = C === void 0 ? zn(e, i) ?? Q(
2722
- { file: i.file, node: e },
2723
- "Public property must have a type annotation or a default value",
2724
- i
2725
- ) : ht(C, n ? G.shallow : G.false, i.file, i);
2726
- } else if (x = Et(x), c && o.isFunctionTypeNode(x)) {
2727
- if (n)
2728
- return $t(x, t, e, i);
2729
- jt(e, i);
2730
- }
2731
- const T = {
2732
- [Y]: d,
2733
- kind: "field",
2734
- name: t,
2735
- static: v,
2736
- deprecated: void 0,
2737
- summary: void 0,
2738
- description: void 0,
2739
- docsTags: void 0,
2740
- // In minimal extraction, we care only for type.values (set below)
2741
- type: p ? { ...ui } : z(x, i),
2742
- getterType: void 0,
2743
- default: void 0,
2744
- readonly: n || void 0,
2745
- inheritedFrom: void 0,
2746
- privacy: g,
2747
- source: void 0,
2748
- attribute: !L || b === !1 ? void 0 : typeof b == "string" ? b : qi(t),
2749
- reflects: h,
2750
- docsOnlyReadonly: void 0
2751
- };
2752
- cn(T, i.jsDoc);
2753
- const K = T.default;
2754
- L && t === "messageOverrides" && (d.dtsTypeOverride = T.type.text, T.type = ao);
2755
- const O = L && s !== void 0;
2756
- if (O) {
2757
- !n && T.readonly === !0 && (T.docsOnlyReadonly = !0);
2758
- const C = i.program?.getTypeChecker?.();
2759
- T.type.values = C !== void 0 && x.pos === -1 && (x.kind === o.SyntaxKind.TypeQuery || x.kind === o.SyntaxKind.IndexedAccessType || x.kind === o.SyntaxKind.ImportType || x.kind === o.SyntaxKind.TypeReference) ? ho(C.getTypeAtLocation(y?.parameters[0] ?? e)) : To(x, C, y?.parameters[0] ?? e), (b === void 0 && T.type.values === void 0 && !i.config.context.isLuminaMinimalExtraction || T.readonly && !T.reflects) && (T.attribute = void 0);
2760
- const S = C !== void 0 && o.isPropertyDeclaration(e) && // BUG: should not check node.type here? but do check in property.getterType below
2761
- e.type !== void 0 && e.initializer !== void 0 && o.isPropertyAccessExpression(e.initializer) && o.isPropertyAccessExpression(e.initializer.expression) && e.initializer.expression.expression.kind === o.SyntaxKind.ThisKeyword && o.isIdentifier(e.initializer.expression.name) && o.isIdentifier(e.initializer.name);
2762
- if (("initializer" in e && e.initializer !== void 0 && (!T.default || !T.description) || S) && !p) {
2763
- const R = e.initializer, A = C?.getSymbolAtLocation(R), W = A !== void 0 && ((A.flags ?? 0) & o.SymbolFlags.Alias) !== 0 ? C?.getAliasedSymbol(A) : A;
2764
- let _, F;
2765
- const N = W?.getDeclarations();
2766
- if (N !== void 0)
2767
- for (let w = 0; w < N.length; ++w) {
2768
- const H = N[w];
2769
- _ ??= o.isGetAccessor(H) ? H : void 0, F ??= o.isSetAccessor(H) ? H : void 0, "initializer" in H && (T.default = Be(
2770
- H.initializer,
2771
- T.default,
2772
- H.getSourceFile()
2773
- ));
2774
- }
2775
- S && _?.type !== void 0 && F !== void 0 && _.type.getText() !== F.parameters[0]?.type?.getText() && (T.getterType = {
2776
- text: z(_.type, i).text,
2777
- references: void 0,
2778
- values: void 0,
2779
- source: void 0
2780
- });
2781
- }
2782
- }
2783
- if (D !== void 0 && P !== void 0 && !p && // Quick perf check: type is definitely the same if raw type string matches.
2784
- // More reliable check follows in processing/index.ts, where printed normalized
2785
- // type string is compared.
2786
- D.getText(i.file) !== P.getText(i.file) ? T.getterType = z(D, i) : T.readonly === !0 && T.name === "type" && x.kind === o.SyntaxKind.LiteralType && x.literal.kind === o.SyntaxKind.StringLiteral && (i.moduleContext.typeName = x.literal.text), (d.hasAutoCasting === !0 || d.isConstructorOnly === !0) && (T.readonly === !0 && d.isConstructorOnly !== !0 ? d.hasAutoCasting = void 0 : T.getterType ??= {
2787
- ...T.type,
2788
- references: T.type.references === void 0 ? void 0 : [...T.type.references]
2789
- }), n && x.kind === o.SyntaxKind.LiteralType || (T.default = Be(
2790
- e.initializer,
2791
- T.default,
2792
- i.file
2793
- )), O) {
2794
- const C = K === void 0 && T.default === "true";
2795
- T.type.values?.length === 1 && T.type.values[0].type === "boolean" && (T.default === void 0 ? T.default = "false" : C && T.deprecated === void 0 && (i.loggedBooleanWarning || i.config.context.logger.error(
2796
- `${Li}Boolean properties should default to "false". Found default value "true" in ${i.apiObject.name}.${T.name}. See https://webgis.esri.com/references/lumina/properties#boolean-properties`
2797
- ), i.loggedBooleanWarning = !0));
2798
- }
2799
- return co(
2800
- i,
2801
- e,
2802
- i.config.documentation.copyDocDefinitions?.properties,
2803
- T,
2804
- i.apiObject
2805
- ), i.produceDts && E && (d.isAbstract = !0), c && e.questionToken !== void 0 && (T.type.text.endsWith(" | undefined") || (T.type.text = // Don't need to wrap non-accessors in |undefined as we replace |undefined
2806
- // with ? during printing
2807
- u && (x.kind === o.SyntaxKind.FunctionType || x.kind === o.SyntaxKind.ConstructorType || x.kind === o.SyntaxKind.ConditionalType || x.kind === o.SyntaxKind.InferType) ? `(${T.type.text}) | undefined` : `${T.type.text} | undefined`), T.getterType !== void 0 && !T.getterType.text.endsWith(" | undefined") && (T.getterType.text += " | undefined")), T;
2808
- }
2809
- function jt(e, t) {
2810
- if (!t.config.strict)
2811
- return;
2812
- const n = t.jsDoc.docsTags;
2813
- for (let i = 0; i < n.length; ++i) {
2814
- const a = n[i].name;
2815
- if (a === "param" || a === "returns") {
2816
- t.emitError(
2817
- "@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.",
2818
- {
2819
- file: t.file,
2820
- node: e
2821
- }
2822
- );
2823
- return;
2824
- }
2825
- }
2826
- }
2827
- function Io(e, t) {
2828
- if (e.hasAutoCasting = !0, e.autoCastingRequiresType = !0, t !== void 0)
2829
- for (let n = 0; n < t.properties.length; ++n) {
2830
- const i = t.properties[n];
2831
- if (o.isPropertyAssignment(i) && i.name.escapedText === "defaultKeyValue" && o.isStringLiteral(i.initializer)) {
2832
- e.autoCastingDefaultType = i.initializer.text;
2833
- return;
2834
- }
2835
- }
2836
- }
2837
- const gi = (e) => o.isPropertyDeclaration(e) && e.initializer !== void 0 && o.isCallExpression(e.initializer) && o.isIdentifier(e.initializer.expression) && e.initializer.expression.escapedText === "useT9n";
2838
- function Ye(e, t) {
2839
- const n = o.isClassDeclaration(e);
2840
- let i = e.name.escapedText;
2841
- const a = n ? t.componentTagName : void 0, s = !n && ci(i, t);
2842
- if (t.file.fileName.includes("serial-chart-model"))
2843
- debugger;
2844
- 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;
2845
- 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) {
2846
- ko(i, l.types[0].typeArguments[0], t);
2847
- return;
2848
- }
2849
- 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";
2850
- r && (l = void 0, i = t.mixinName);
2851
- const c = ti(), m = {
2852
- [Y]: c,
2853
- kind: n ? "class" : "interface",
2854
- name: i,
2855
- customElement: a === void 0 ? void 0 : !0,
2856
- tagName: a,
2857
- privacy: void 0,
2858
- pascalCaseName: a === void 0 ? void 0 : (
2859
- /**
2860
- * We use the tag name rather than the class name to generate the
2861
- * type name because the class name may not start with the library
2862
- * prefix (Arcgis), where as tag name always does. This also matches
2863
- * Stencil's behavior.
2864
- */
2865
- Xi(a)
2866
- ),
2867
- deprecated: void 0,
2868
- summary: void 0,
2869
- description: void 0,
2870
- docsTags: void 0,
2871
- demos: void 0,
2872
- typeParameters: r ? void 0 : it(e.typeParameters, !0, t),
2873
- superclass: void 0,
2874
- supertypes: void 0,
2875
- mixins: void 0,
2876
- encapsulation: void 0,
2877
- formAssociated: 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), v = g || E === 2;
2903
- return (v || a !== void 0) && Ct(d, v, 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 = v || void 0, n && (!r && (!g && E === 0) && t.config.strict && t.emitError("Expected @public class to be exported using named or default export.", {
2925
- 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(
2964
- c,
2965
- a.isInLuminaMinimalExtraction ? void 0 : r,
2966
- a
2967
- );
2968
- if (m.name === "LitElement") {
2969
- m.name = "PublicLitElement", m.module = "PublicLitElement", m.package = "@arcgis/lumina";
2970
- const p = a.moduleContext.importsMap.LitElement;
2971
- p === void 0 ? a.emitError("Expected LitElement import to be defined", { file: a.file, node: i }) : p.actualName = "PublicLitElement";
2972
- }
2973
- const d = ie(n);
2974
- d.superClassText = m.printableText, m.printableText = void 0, n.superclass = m;
2975
- break;
2976
- } else {
2977
- const r = no(l);
2978
- let c = r, m;
2979
- if (o.isExpressionWithTypeArguments(r))
2980
- c = r.expression, m = r.typeArguments;
2981
- else if (o.isTypeReferenceNode(r) && (c = r.typeName, m = r.typeArguments, c.escapedText === "Record" && m?.length === 2 && m[0].kind === o.SyntaxKind.NeverKeyword && m[1].kind === o.SyntaxKind.NeverKeyword))
2982
- continue;
2983
- const d = Ee(c, m, a), p = ie(n);
2984
- p.superTypesText ??= [], p.superTypesText.push(d.printableText), d.printableText = void 0, n.supertypes ??= [], n.supertypes.push(d);
2985
- }
2986
- }
2987
- }
2988
- function Si(e, t, n, i) {
2989
- i.apiObject = e;
2990
- const a = e.customElement === !0, s = e.members, l = t.length;
2991
- let r, c = t[0], m, d = Re(c?.name), p = !1;
2992
- for (let f = 0; f < l; ++f) {
2993
- if (r = c, c = t[f + 1], m = d, d = Re(c?.name), i.pairedSetter !== void 0) {
2994
- i.pairedSetter = void 0;
2995
- continue;
2996
- }
2997
- if (m === void 0 && r.name?.kind === o.SyntaxKind.PrivateIdentifier)
2998
- continue;
2999
- c !== void 0 && m === d && (o.isGetAccessor(c) ? (i.pairedSetter = r, r = c) : o.isSetAccessor(c) && (i.pairedSetter = c));
3000
- let u = j(r, !0, i) ?? (i.pairedSetter === void 0 ? void 0 : j(i.pairedSetter, !0, i));
3001
- if (u === void 0 && !i.config.strict && (a ? m !== void 0 && Jt(r, i.pairedSetter, !0) : !li(r.modifiers, o.SyntaxKind.PrivateKeyword))) {
3002
- const E = j(r, !1, i) ?? (i.pairedSetter === void 0 ? void 0 : j(i.pairedSetter, !1, i)) ?? Ue;
3003
- E.docsTags.includes(V.private) ? a && i.config.context.includeLuminaPrivateComponents ? u = Ce : u = void 0 : u = E;
3004
- } else u === void 0 && a && i.config.context.includeLuminaPrivateComponents && Jt(r, i.pairedSetter, !1) && (u = Ce);
3005
- if (u === void 0) {
3006
- a && o.isPropertyDeclaration(r) && o.isIdentifier(r.name) && (r.name.escapedText === "shadowRootOptions" && r.initializer !== void 0 && o.isIdentifier(r.initializer) && r.initializer.escapedText === "noShadowRoot" && (i.apiObject.encapsulation = "none"), r.name.escapedText === "formAssociated" && r.initializer !== void 0 && Z(r.initializer, i) && (i.apiObject.formAssociated = !0));
3007
- continue;
3008
- }
3009
- i.jsDoc = u;
3010
- let g;
3011
- 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(
3012
- 0,
3013
- rt.members.length,
3014
- r
3015
- ), Ti(e, rt, i), ie(e).emitAsTypeAlias = !0) : i.emitError(`@public used on unsupported member kind: ${o.SyntaxKind[r.kind]}`, {
3016
- file: i.file,
3017
- node: r
3018
- }), g !== void 0 && s.push(g);
3019
- }
3020
- return i.apiObject = void 0, p;
3021
- }
3022
- const rt = o.factory.createTypeLiteralNode(void 0);
3023
- function Jt(e, t, n) {
3024
- if (e.kind === o.SyntaxKind.PropertyDeclaration || e.kind === o.SyntaxKind.GetAccessor || e.kind === o.SyntaxKind.SetAccessor) {
3025
- const i = e;
3026
- if ((xe(i.modifiers, "property") ?? (t === void 0 ? void 0 : xe(t.modifiers, "property"))) !== void 0)
3027
- return !0;
3028
- if (!n)
3029
- return !1;
3030
- if (gi(e))
3031
- return !0;
3032
- if (i.modifiers !== void 0)
3033
- for (let s = 0; s < (i.modifiers?.length ?? 0); ++s) {
3034
- const l = i.modifiers[s];
3035
- if (l.kind === o.SyntaxKind.PrivateKeyword || l.kind === o.SyntaxKind.ProtectedKeyword || l.kind === o.SyntaxKind.StaticKeyword)
3036
- return !1;
3037
- }
3038
- 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;
3039
- } else return e.kind === o.SyntaxKind.MethodDeclaration ? xe(e.modifiers, "method") !== void 0 : !1;
3040
- }
3041
- function Ti(e, t, n) {
3042
- const i = z(t, n);
3043
- if (e.type === void 0)
3044
- e.type = i;
3045
- else {
3046
- const a = `${e.type.text} &
3047
- `, s = a.length;
3048
- e.type = {
3049
- text: `${a}${i.text}`,
3050
- references: i.references === void 0 ? e.type.references : e.type.references === void 0 ? Gt(i.references, s) : [...e.type.references, ...Gt(i.references, s)],
3051
- values: void 0,
3052
- source: void 0
3053
- };
3054
- }
3055
- }
3056
- function ko(e, t, n) {
3057
- if (!o.isTypeQueryNode(t)) {
3058
- n.emitError("Expected a TypeQueryNode for applyMixins syntax", { file: n.file, node: t });
3059
- return;
3060
- }
3061
- if (!o.isIdentifier(t.exprName)) {
3062
- n.emitError("Expected an Identifier for the expression name in applyMixins syntax", {
3063
- file: n.file,
3064
- node: t
3065
- });
3066
- return;
3067
- }
3068
- const i = t.exprName.escapedText;
3069
- let a;
3070
- for (let r = n.file.statements.length - 1; r >= 0; --r) {
3071
- const c = n.file.statements[r];
3072
- if (!o.isVariableStatement(c))
3073
- continue;
3074
- const m = c.declarationList.declarations[0];
3075
- if (o.isIdentifier(m.name) && m.name?.escapedText === i) {
3076
- a = m;
3077
- break;
3078
- }
3079
- }
3080
- if (a === void 0) {
3081
- n.emitError(`Could not find variable declaration for ${i} in applyMixins syntax`, {
3082
- file: n.file,
3083
- node: t
3084
- });
3085
- return;
3086
- }
3087
- if (a.initializer === void 0 || !o.isAsExpression(a.initializer) || !o.isArrayLiteralExpression(a.initializer.expression)) {
3088
- n.emitError(
3089
- `Expected an 'as' expression with an array literal for the initializer of ${i} in applyMixins syntax`,
3090
- {
3091
- file: n.file,
3092
- node: a
3093
- }
3094
- );
3095
- return;
3096
- }
3097
- const s = n.apiModule.declarations.at(-1);
3098
- if (s?.kind !== "class" || s.name !== e) {
3099
- n.emitError(
3100
- `Expected the ${e} class to be defined right before the ${e} interface`,
3101
- {
3102
- file: n.file,
3103
- node: t
3104
- }
3105
- );
3106
- return;
3107
- }
3108
- const l = a.initializer.expression.elements;
3109
- s.mixins ??= [];
3110
- for (let r = 0; r < l.length; ++r) {
3111
- const c = l[r];
3112
- if (!o.isIdentifier(c)) {
3113
- n.emitError(`Expected an Identifier in the mixins array for ${i} in applyMixins syntax`, {
3114
- file: n.file,
3115
- node: c
3116
- });
3117
- return;
3118
- }
3119
- s.mixins.unshift(Ee(c, void 0, n));
3120
- }
3121
- }
3122
- function Fo(e, t) {
3123
- const n = e.type, i = e.name.escapedText, a = ci(i, t), s = ti(), l = {
3124
- [Y]: s,
3125
- kind: "interface",
3126
- name: i,
3127
- customElement: void 0,
3128
- tagName: void 0,
3129
- privacy: void 0,
3130
- pascalCaseName: void 0,
3131
- deprecated: void 0,
3132
- summary: void 0,
3133
- description: void 0,
3134
- docsTags: void 0,
3135
- demos: void 0,
3136
- typeParameters: it(e.typeParameters, !0, t),
3137
- superclass: void 0,
3138
- supertypes: void 0,
3139
- mixins: void 0,
3140
- encapsulation: void 0,
3141
- formAssociated: void 0,
3142
- members: [],
3143
- attributes: void 0,
3144
- events: void 0,
3145
- slots: void 0,
3146
- cssParts: void 0,
3147
- cssProperties: void 0,
3148
- cssStates: void 0,
3149
- type: void 0,
3150
- source: void 0,
3151
- importPath: void 0
3152
- }, r = l;
3153
- ii(l, t.jsDoc);
3154
- let c;
3155
- if (a)
3156
- t.moduleContext.constructorPropertiesInterface = r;
3157
- else {
3158
- s.emitAsTypeAlias = !0;
3159
- const m = o.isIntersectionTypeNode(n) ? n.types : [n];
3160
- for (let d = 0; d < m.length; ++d) {
3161
- const p = Et(m[d]);
3162
- if (o.isTypeLiteralNode(p))
3163
- Si(r, p.members, i, t);
3164
- else if (o.isTypeReferenceNode(p)) {
3165
- r.supertypes ??= [];
3166
- const f = Ee(p.typeName, p.typeArguments, t);
3167
- c ??= [], c.push(f.printableText), f.printableText = void 0, r.supertypes.push(f);
3168
- } else if (o.isFunctionTypeNode(p) || o.isConstructorTypeNode(p)) {
3169
- if (t.jsDoc = Ue, r.docsTags !== void 0) {
3170
- t.jsDoc = { ...Ue, docsTags: [] };
3171
- for (let f = 0; f < r.docsTags.length; ++f) {
3172
- const u = r.docsTags[f];
3173
- (u.name === "param" || u.name === "returns") && (t.jsDoc.docsTags.push(u), r.docsTags.splice(f, 1), f -= 1);
3174
- }
3175
- r.docsTags.length === 0 && (r.docsTags = void 0);
3176
- }
3177
- r.members.push(So(p, i, void 0, t));
3178
- } else
3179
- Ti(r, p, t);
3180
- }
3181
- }
3182
- return t.objectLikeTypeParameters = void 0, fi(
3183
- t,
3184
- e,
3185
- t.config.documentation.copyDocDefinitions.interfaces,
3186
- r,
3187
- t.apiModule
3188
- ), t.produceDts && c !== void 0 && (s.superTypesText = c), r.members.length === 0 && (r.members = void 0), r;
3189
- }
3190
- function wo(e, t, n) {
3191
- const i = e.initializer, a = i.body;
3192
- let s, l;
3193
- for (let d = 0; d < a.statements.length; ++d) {
3194
- const p = a.statements[d];
3195
- if (o.isVariableStatement(p)) {
3196
- const f = p.declarationList.declarations[0];
3197
- if (!o.isIdentifier(f.name) || f.name?.escapedText !== "TypedBase")
3198
- continue;
3199
- let u = f.initializer.expression.expression;
3200
- for (; o.isCallExpression(u); ) {
3201
- const g = u.expression;
3202
- s ??= [], s.push(Ee(g, u.typeArguments, n)), u = u.arguments[0];
3203
- }
3204
- } else o.isClassDeclaration(p) && (l = p);
3205
- }
3206
- if (l === void 0) {
3207
- n.emitError(`Failed to find class declaration inside the mixin ${t}`, {
3208
- file: n.file,
3209
- node: e
3210
- });
3211
- return;
3212
- }
3213
- it(
3214
- // Skip the TBase type parameter - non-public implementation detail
3215
- i.typeParameters.length === 1 ? void 0 : i.typeParameters.slice(1),
3216
- !0,
3217
- n
3218
- ) !== void 0 && n.emitError(
3219
- "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",
3220
- {
3221
- file: n.file,
3222
- node: e
3223
- }
3224
- ), n.mixinName = t, n.mixinMixins = s;
3225
- const m = Ye(l, n);
3226
- return m.kind = "mixin", m;
3227
- }
3228
- function No(e, t, n) {
3229
- const i = n.moduleHasClass;
3230
- n.moduleHasClass = !1;
3231
- const a = o.factory.createClassDeclaration(
3232
- [o.factory.createModifier(o.SyntaxKind.ExportKeyword)],
3233
- t,
3234
- void 0,
3235
- [
3236
- o.factory.createHeritageClause(o.SyntaxKind.ExtendsKeyword, [
3237
- o.factory.createExpressionWithTypeArguments(e, void 0)
3238
- ])
3239
- ],
3240
- []
3241
- ), s = Ye(a, n), l = s, r = ie(l);
3242
- return l.kind = "interface", l.supertypes = s.mixins, s.mixins = void 0, s.superclass !== void 0 && (s.superclass.printableText = r.superClassText, l.supertypes ??= [], l.supertypes.unshift(s.superclass), r.superClassText = void 0, s.superclass = void 0), n.moduleHasClass = i, r.isMixinBaseClass = !0, l;
3243
- }
3244
- function Oo(e, t) {
3245
- const n = e.declarationList.declarations;
3246
- n.length !== 1 && t.emitError("Public variable statements must have only a single variable declarations. Found multiple.", {
3247
- file: t.file,
3248
- node: e
3249
- });
3250
- const i = n[0], a = i.name;
3251
- if (!o.isIdentifier(a)) {
3252
- t.config.strict && t.emitError("Expected public variable names to be an identifier.", {
3253
- file: t.file,
3254
- node: e
3255
- });
3256
- return;
3257
- }
3258
- const s = a.escapedText, l = t.exportDefaultName === s;
3259
- if (et(e) === 0 && !l && t.config.strict && t.emitError("Expected @public variable to be exported as named or default export.", {
3260
- file: t.file,
3261
- node: e
3262
- }), t.mixinName !== void 0 && i.initializer !== void 0 && o.isCallExpression(i.initializer) && o.isIdentifier(i.initializer.expression) && i.initializer.expression.escapedText === t.mixinName)
3263
- return No(i.initializer, s, t);
3264
- let c = i.type;
3265
- const m = (e.declarationList.flags & o.NodeFlags.Const) !== 0;
3266
- if (c === void 0) {
3267
- const u = i.initializer;
3268
- if (u !== void 0 && o.isArrowFunction(u) && m)
3269
- return u.typeParameters?.at(0)?.name?.escapedText === "TBase" ? wo(i, s, t) : Ht(u, s, e, t);
3270
- u === void 0 ? c = Q(
3271
- { file: t.file, node: i },
3272
- "Public variable must have a type annotation or a default value",
3273
- t
3274
- ) : c = ht(u, m ? G.shallow : G.false, t.file, t);
3275
- } else if (c = Et(c), o.isFunctionTypeNode(c))
3276
- return Ht(c, s, e, t);
3277
- const d = Ni(), p = {
3278
- [Y]: d,
3279
- kind: "variable",
3280
- name: s,
3281
- deprecated: void 0,
3282
- summary: void 0,
3283
- description: void 0,
3284
- docsTags: void 0,
3285
- source: void 0,
3286
- type: z(c, t),
3287
- default: void 0
3288
- };
3289
- return dn(p, t.jsDoc), m && c.kind === o.SyntaxKind.LiteralType || (p.default = Be(i.initializer, p.default, t.file)), fo(
3290
- t,
3291
- e,
3292
- t.config.documentation.copyDocDefinitions.variables,
3293
- p,
3294
- t.apiModule
3295
- ), l && (Ct(p, !0, t), t.produceDts && (d.isDefaultExported = !0)), p;
3296
- }
3297
- function hi(e, t, n) {
3298
- const i = n.statementJsDocs[t];
3299
- if (i !== void 0) {
3300
- if (n.jsDoc = i, o.isClassDeclaration(e))
3301
- return Ye(e, n);
3302
- if (o.isFunctionDeclaration(e))
3303
- return go(e, e.name.escapedText, void 0, n);
3304
- if (o.isInterfaceDeclaration(e))
3305
- return Ye(e, n);
3306
- if (o.isTypeAliasDeclaration(e))
3307
- return Fo(e, n);
3308
- if (o.isVariableStatement(e))
3309
- return Oo(e, n);
3310
- }
3311
- }
3312
- function Go(e, t) {
3313
- const n = t.apiModule.declarations, i = e.statements;
3314
- for (let a = 0; a < i.length; ++a) {
3315
- const s = i[a], l = hi(s, a, t);
3316
- l !== void 0 && n.push(l);
3317
- }
3318
- }
3319
- function Vo(e, t) {
3320
- const n = e.fileName.slice(t.config.context.cwd.length), i = t.watchFiles?.get(n);
3321
- if (i !== void 0) {
3322
- if (i.module !== void 0)
3323
- return i.module;
3324
- if (i.isEmptyModule)
3325
- return;
3326
- }
3327
- const a = n.slice(t.config.context.basePath.length), s = ee(a), l = Ve(s, t, !0), r = t.componentTagName === void 0 ? l : `${l}/customElement`;
3328
- t.mixinName = void 0, t.moduleHasClass = !1, t.apiClassLikeName = void 0, t.isInLuminaMinimalExtraction = t.config.context.isLuminaMinimalExtraction;
3329
- const c = /* @__PURE__ */ Object.create(null), m = t.localDeclarations;
3330
- m.clear();
3331
- const d = t.localPrivateDeclarations;
3332
- d?.clear(), t.exportDefaultName = void 0;
3333
- let p;
3334
- const f = {
3335
- class: void 0,
3336
- default: void 0,
3337
- named: /* @__PURE__ */ Object.create(null)
3338
- }, u = ei(e, r, c, f);
3339
- t.moduleContext = u;
3340
- const g = t.implicitPublicModules?.[l];
3341
- let E = !1;
3342
- const v = t.isJsApi && l.startsWith("applications/");
3343
- t.statementJsDocs.length = 0;
3344
- for (let I = 0; I < e.statements.length; ++I) {
3345
- const y = e.statements[I], k = y.kind === o.SyntaxKind.ClassDeclaration || y.kind === o.SyntaxKind.FunctionDeclaration || y.kind === o.SyntaxKind.InterfaceDeclaration || y.kind === o.SyntaxKind.TypeAliasDeclaration || y.kind === o.SyntaxKind.VariableStatement;
3346
- let P;
3347
- if (
3348
- // Only look at web components in Lumina's dev server
3349
- t.isInLuminaMinimalExtraction
3350
- )
3351
- P = y.kind === o.SyntaxKind.ClassDeclaration && t.componentTagName !== void 0 && y.heritageClauses !== void 0 && y.modifiers !== void 0 ? Ue : void 0;
3352
- else if (k) {
3353
- if (P = j(y, !0, t), P === void 0 && !t.config.strict) {
3354
- const D = j(y, !1, t) ?? { description: void 0, docsTags: [] }, x = y.kind === o.SyntaxKind.ClassDeclaration && t.componentTagName !== void 0 && y.heritageClauses !== void 0 && y.modifiers !== void 0;
3355
- D.docsTags.includes(V.private) ? x && t.config.context.includeLuminaPrivateComponents ? (P = Ce, t.isInLuminaMinimalExtraction = !0) : P = void 0 : (x || g !== void 0 && Fn(y, g)) && (P = D);
3356
- } else P === void 0 && t.componentTagName !== void 0 && t.config.context.includeLuminaPrivateComponents && y.kind === o.SyntaxKind.ClassDeclaration && (P = Ce, t.isInLuminaMinimalExtraction = !0);
3357
- P !== void 0 && !t.config.strict && y.kind === o.SyntaxKind.ClassDeclaration && t.componentTagName !== void 0 && y.heritageClauses !== void 0 && y.modifiers !== void 0 && P.docsTags.includes(V.internal) && (E = !0);
3358
- }
3359
- if (t.statementJsDocs[I] = P, k || I === 0 && (p = j(e, !0, t)), P !== void 0)
3360
- v && P.docsTags.push(V.internal), m.add(
3361
- (y.name ?? y.declarationList?.declarations[0].name).escapedText
3362
- ), y.kind === o.SyntaxKind.ClassDeclaration ? t.apiClassLikeName = y.name?.escapedText : y.kind === o.SyntaxKind.VariableStatement && y.declarationList.declarations[0].initializer?.kind === o.SyntaxKind.ArrowFunction && (t.apiClassLikeName = y.declarationList.declarations[0].name.escapedText);
3363
- else if (o.isImportDeclaration(y)) {
3364
- const D = y.importClause;
3365
- if (D === void 0)
3366
- continue;
3367
- const x = y.moduleSpecifier.text, T = !x.startsWith("."), K = T ? x : ee(x), O = T ? void 0 : Ve(pt(s, K), t), J = O === void 0 ? void 0 : t.config.types.typeReplacements[O];
3368
- if (Pn(y, t), D.name !== void 0) {
3369
- const C = D.name.escapedText, S = J?.[C], R = S?.[1], A = S === void 0 ? !T && x.endsWith(".json") ? x : K : ye(r, S[0]), W = S?.[0] ?? O;
3370
- c[C] = {
3371
- type: S?.[2] ?? "default",
3372
- modulePath: W,
3373
- specifier: A,
3374
- replacementName: R,
3375
- actualName: void 0,
3376
- wasUsed: !1
3377
- };
3378
- }
3379
- const $ = D.namedBindings;
3380
- if ($ === void 0)
3381
- continue;
3382
- if ($.kind === o.SyntaxKind.NamespaceImport) {
3383
- const C = $.name.escapedText, S = J?.[C], R = S?.[1], A = S === void 0 ? K : ye(r, S[0]), W = S?.[0] ?? O;
3384
- c[C] = {
3385
- type: "*",
3386
- modulePath: W,
3387
- specifier: A,
3388
- replacementName: R,
3389
- actualName: void 0,
3390
- wasUsed: !1
3391
- };
3392
- } else
3393
- for (let C = 0; C < $.elements.length; ++C) {
3394
- const S = $.elements[C], R = S.propertyName === void 0 ? void 0 : S.propertyName.escapedText ?? S.propertyName.text, A = S.name.escapedText, W = J?.[R ?? A], _ = W?.[1], F = W === void 0 ? K : ye(r, W[0]), N = W?.[0] ?? O;
3395
- c[A] = {
3396
- type: W?.[2] ?? "named",
3397
- modulePath: N,
3398
- specifier: F,
3399
- replacementName: _,
3400
- actualName: W === void 0 ? R : void 0,
3401
- wasUsed: !1
3402
- };
3403
- }
3404
- } else if (o.isExportAssignment(y)) {
3405
- if (o.isIdentifier(y.expression)) {
3406
- const D = y.expression.escapedText;
3407
- t.exportDefaultName = D, !m.has(D) && d?.has(D) === !0 && g?.pendingNames?.has("default") === !0 && d.set(D, Math.abs(d.get(D)));
3408
- }
3409
- } else if (o.isExportDeclaration(y) && y.moduleSpecifier !== void 0 && !t.isInLuminaMinimalExtraction) {
3410
- if (j(y, !0, t) !== void 0) {
3411
- const x = y.moduleSpecifier.text, T = !x.startsWith("."), K = T ? x : pt(s, ee(x)), O = T ? void 0 : Ve(K, t), J = T ? x : ye(r, O);
3412
- u.reExports ??= [];
3413
- const $ = [];
3414
- if (y.exportClause?.kind === o.SyntaxKind.NamedExports) {
3415
- const C = y.exportClause.elements;
3416
- for (let S = 0; S < C.length; ++S) {
3417
- const R = C[S], A = Re(R.name), W = R.propertyName === void 0 ? void 0 : Re(R.propertyName), _ = W ?? A, F = W === void 0 ? void 0 : A;
3418
- $.push({
3419
- exportName: _,
3420
- aliasName: F,
3421
- isTypeOnly: y.isTypeOnly
3422
- }), !t.config.strict && O !== void 0 && ze(O, K, _, t);
3423
- }
3424
- } else
3425
- $.push({
3426
- exportName: "*",
3427
- aliasName: y.exportClause === void 0 ? void 0 : Re(y.exportClause.name),
3428
- isTypeOnly: !1
3429
- }), !t.config.strict && O !== void 0 && ze(O, K, "*", t);
3430
- u.reExports.push({
3431
- modulePath: O,
3432
- specifier: J,
3433
- isTypeOnly: y.isTypeOnly,
3434
- specifiers: $
3435
- });
3436
- }
3437
- } else o.isModuleDeclaration(y) ? j(y, !0, t) !== void 0 && (u.namespaces ??= [], u.namespaces.push(y.getFullText(e))) : d !== void 0 && k && d.set(
3438
- (y.name ?? y.declarationList?.declarations[0].name).escapedText,
3439
- -I
3440
- );
3441
- }
3442
- const b = t.config.types.typeReplacements[l];
3443
- if (b !== void 0) {
3444
- const I = Object.keys(b);
3445
- for (let y = 0; y < I.length; ++y) {
3446
- const k = I[y], P = b[k];
3447
- c[k] = {
3448
- type: P[2],
3449
- modulePath: P[0],
3450
- specifier: ye(r, P[0]),
3451
- replacementName: P[1],
3452
- actualName: void 0,
3453
- wasUsed: !1
3454
- };
3455
- }
3456
- }
3457
- t.moduleHasAccessorLikeClass = c.subclass?.specifier.includes("accessorSupport") ?? !1;
3458
- const h = {
3459
- [Y]: u,
3460
- kind: "javascript-module",
3461
- path: l,
3462
- sourcePath: n,
3463
- deprecated: void 0,
3464
- description: void 0,
3465
- docsTags: void 0,
3466
- summary: void 0,
3467
- declarations: [],
3468
- exports: []
3469
- };
3470
- if (t.apiModule = h, Go(e, t), d !== void 0) {
3471
- let I = !1;
3472
- do {
3473
- I = !1;
3474
- for (const [y, k] of d)
3475
- if (k > 0 || Object.is(k, 0)) {
3476
- d.delete(y), m.add(y), I = !0;
3477
- const P = e.statements[k], D = j(P, !1, t) ?? { description: void 0, docsTags: [] };
3478
- if (D.docsTags.includes(V.private))
3479
- t.emitError(
3480
- `Declaration "${y}" is marked @private but is used by public API in the same file. Either refactor our its reference or remove the @private tag.`,
3481
- {
3482
- file: e,
3483
- node: P
3484
- }
3485
- );
3486
- else {
3487
- E && !D.docsTags.includes(V.internal) && D.docsTags.push(V.internal), t.statementJsDocs[k] = D;
3488
- const T = hi(P, k, t);
3489
- T !== void 0 && h.declarations.push(T);
3490
- }
3491
- }
3492
- } while (I);
3493
- }
3494
- if (h.declarations.length === 0 && u.reExports === void 0 && u.namespaces === void 0) {
3495
- i !== void 0 && (i.isEmptyModule = !0);
3496
- return;
3497
- }
3498
- t.moduleMap.set(l, h), t.watchFiles !== void 0 && (i === void 0 ? t.watchFiles.set(h.sourcePath, {
3499
- file: u.file,
3500
- module: h,
3501
- previousModule: void 0,
3502
- isEmptyModule: !1,
3503
- dependencies: /* @__PURE__ */ new Set(),
3504
- dependents: /* @__PURE__ */ new Map(),
3505
- docLinks: [],
3506
- hasDirtyLinks: !1,
3507
- wasRemoved: !1
3508
- }) : i.module = h);
3509
- const L = t.componentTagName === void 0 ? h.exports[0]?.declaration.name : void 0;
3510
- h.exports.length === 0 && (h.exports = void 0);
3511
- for (let I = 0; I < h.declarations.length; ++I) {
3512
- const y = h.declarations[I];
3513
- (y.kind === "class" || y.kind === "mixin") && (f.class = y), L === y.name && (f.default = y), f.named[y.name] = y;
3514
- }
3515
- return p !== void 0 && (t.moduleHasClass ? t.emitError(
3516
- "A module that exports a class must have JSDoc attached to the class, rather than module-top JSDoc. See https://webgis.esri.com/webgis/core/core/documenting-api#module-documentation",
3517
- {
3518
- file: e,
3519
- start: 0,
3520
- length: e.statements[0]?.getStart(e) ?? 1,
3521
- node: void 0
3522
- }
3523
- ) : (v && p.docsTags.push(V.internal), rn(h, p))), h;
3524
- }
3525
- async function Sa(e) {
3526
- const t = [], n = e.basePath, i = e.config.context.excludedDirectories, a = `${e.basePath}components/`, s = [], l = !e.config.strict || e.config.context.includeLuminaPrivateComponents;
3527
- e.componentPathMapping = /* @__PURE__ */ Object.create(null);
3528
- const r = e.isComponentProject ? (p) => Bi(p, a) : () => !1, c = e.isComponentProject ? m : d;
3529
- if (e.program === void 0)
3530
- await Mi(n, i, async (p) => {
3531
- if (Ei(p))
3532
- return;
3533
- const f = await Dt(p);
3534
- if (p.includes(".stories.")) {
3535
- const E = f.toString("utf8");
3536
- Ot(E, p, e);
3537
- return;
3538
- }
3539
- const u = r(p);
3540
- if (u && l || // Exclude files before paying .toString() cost
3541
- f.includes(Ho) && (f.includes($o) || f.includes(Bo))) {
3542
- const E = f.toString("utf8"), v = Xt(p, E);
3543
- c(v, u);
3544
- }
3545
- });
3546
- else {
3547
- const p = e.program.getSourceFiles();
3548
- for (let f = 0; f < p.length; ++f) {
3549
- const u = p[f], g = u.fileName;
3550
- if (!Wo(g, e))
3551
- continue;
3552
- if (g.includes(".stories.")) {
3553
- Ot(u.text, g, e);
3554
- continue;
3555
- }
3556
- const E = r(g);
3557
- (E && l || u.text.includes(Ci) || u.text.includes(bi)) && c(u, E);
3558
- }
3559
- }
3560
- function m(p, f) {
3561
- s.push(p);
3562
- const u = f ? Ui(p.text)?.[0] : void 0;
3563
- if (u !== void 0) {
3564
- const g = p.fileName.slice(e.basePath.length);
3565
- zi(u, e, g);
3566
- }
3567
- }
3568
- function d(p) {
3569
- e.file = p;
3570
- const f = Vo(p, e);
3571
- f !== void 0 && t.push(f);
3572
- }
3573
- for (let p = 0; p < s.length; ++p)
3574
- d(s[p]);
3575
- if (e.implicitPublicModules !== void 0) {
3576
- let p = !1;
3577
- do {
3578
- p = !1;
3579
- for (const f in e.implicitPublicModules) {
3580
- const u = e.implicitPublicModules[f], g = u.actualModulePath ?? f, E = e.moduleMap.get(g);
3581
- if (u.extractedNames === void 0)
3582
- continue;
3583
- if (u.pendingNames !== void 0) {
3584
- const L = e.watchFiles?.get(e.config.context.basePath + u.sourcePath);
3585
- let y = !(L !== void 0 && L.module === void 0 && !L.isEmptyModule);
3586
- const k = E === void 0 ? void 0 : ae(E).index;
3587
- for (const P of u.pendingNames)
3588
- if (!u.extractedNames.has(P) && (k === void 0 || (P === "default" ? k.default === void 0 : k.named[P] === void 0))) {
3589
- y = !1;
3590
- break;
3591
- }
3592
- if (y)
3593
- continue;
3594
- }
3595
- if (E !== void 0) {
3596
- t.splice(t.indexOf(E), 1);
3597
- const L = e.watchFiles?.get(E.sourcePath);
3598
- L !== void 0 && (L.module = void 0);
3599
- }
3600
- p = !0, u.extractedNames = u.pendingNames === void 0 ? void 0 : new Set(u.pendingNames);
3601
- let v = e.basePath + u.sourcePath, b = !1, h = e.program?.getSourceFile(v) ?? e.program?.getSourceFile(`${v}.ts`) ?? e.program?.getSourceFile(`${v}.tsx`) ?? e.program?.getSourceFile(`${v}.d.ts`);
3602
- if (h === void 0 && (h = e.program?.getSourceFile(`${v}/index.ts`) ?? e.program?.getSourceFile(`${v}/index.tsx`) ?? e.program?.getSourceFile(`${v}/index.d.ts`), h !== void 0 && (b = !0)), e.program === void 0 && (ee(v) === v && (v = ue(`${v}.ts`) ? `${v}.ts` : ue(`${v}.tsx`) ? `${v}.tsx` : ue(`${v}.d.ts`) ? `${v}.d.ts` : void 0, v === void 0 && (v = ue(`${v}/index.ts`) ? `${v}/index.ts` : ue(`${v}/index.tsx`) ? `${v}/index.tsx` : ue(`${v}/index.d.ts`) ? `${v}/index.d.ts` : void 0, v !== void 0 && (b = !0))), v !== void 0 && (h = Xt(v, await Dt(v, "utf8")))), h !== void 0) {
3603
- const L = h.fileName.slice(e.basePath.length);
3604
- L !== u.sourcePath && (u.sourcePath = L), b && (u.actualModulePath = `${g}/index`), d(h);
3605
- }
3606
- }
3607
- } while (p);
3608
- }
3609
- return t;
3610
- }
3611
- const Wo = (e, t) => _o(e) && Ko(e, t), _o = (e) => (e.endsWith(".ts") || e.endsWith(".tsx")) && !Ei(e), Ei = (e) => e.includes("__test") || e.includes(".e2e.") || e.includes(".spec.") || e.includes(".test."), Ko = (e, t) => e.startsWith(t.basePath) && !t.config.context.excludedDirectories.has(
3612
- Sn(e.slice(t.basePath.length))
3613
- ) && !e.includes("node_modules"), qt = 32, Ho = 64, Ci = "@public", $o = Buffer.from(Ci), bi = "@internal", Bo = Buffer.from(bi);
3614
- async function Ta(e) {
3615
- await Qt(e) && await Mi(e, /* @__PURE__ */ new Set(), $i);
3616
- }
3617
- async function Mi(e, t, n) {
3618
- const i = [], a = [];
3619
- for await (const d of await Lt(e)) {
3620
- const p = `${e}${d.name}`;
3621
- d.isDirectory() && !t.has(d.name) ? a.push(p) : (d.name.endsWith(".ts") || d.name.endsWith(".tsx")) && i.push(p);
3622
- }
3623
- const s = i.length === 0 ? [] : [i], l = Promise.withResolvers();
3624
- function r(d) {
3625
- l.reject(d), s.length = 0;
3626
- }
3627
- let c = qt;
3628
- for (let d = 0; d < qt; ++d)
3629
- m().catch(r);
3630
- async function m() {
3631
- for (; ; )
3632
- if (s.length === 0 && a.length > 0) {
3633
- const d = a.shift(), p = [];
3634
- for await (const f of await Lt(d, { recursive: !0 }))
3635
- f.isFile() && (f.name.endsWith(".ts") || f.name.endsWith(".tsx")) && p.push(`${xi(f.parentPath)}/${f.name}`);
3636
- if (p.length === 0)
3637
- continue;
3638
- s.push(p);
3639
- } else if (s.length > 0) {
3640
- const d = s[0], p = d.shift();
3641
- d.length === 0 && s.shift(), await n(p);
3642
- } else {
3643
- c -= 1, c === 0 && l.resolve();
3644
- return;
3645
- }
3646
- }
3647
- return await l.promise;
3648
- }
3649
- function Xt(e, t) {
3650
- return o.createSourceFile(
3651
- e,
3652
- t,
3653
- {
3654
- languageVersion: o.ScriptTarget.Latest,
3655
- impliedNodeFormat: o.ModuleKind.ESNext,
3656
- // TypeScript parses too much around @param, @property and @deprecated tags
3657
- // It also parses out inline tags. We have to put them back together
3658
- // (overhead and complexity). Plus, it is a bit too tolerant - we want
3659
- // to disallow some ambiguous behavior to improve consistency.
3660
- // So, we disable JSDoc parsing and do it ourselves.
3661
- jsDocParsingMode: o.JSDocParsingMode.ParseNone
3662
- },
3663
- !1,
3664
- e.endsWith("ts") ? o.ScriptKind.TS : o.ScriptKind.TSX
3665
- );
3666
- }
3667
- export {
3668
- ye as a,
3669
- fa as b,
3670
- Ta as c,
3671
- ya as d,
3672
- Sa as e,
3673
- va as f,
3674
- _o as g,
3675
- Ko as h,
3676
- Wo as i,
3677
- Ei as j,
3678
- Xt as k,
3679
- pa as l,
3680
- ma as m,
3681
- Vt as n,
3682
- Gt as o,
3683
- ua as p,
3684
- da as r,
3685
- ga as t
3686
- };