@arcgis/api-extractor 5.2.0-next.11 → 5.2.0-next.111

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,3736 +0,0 @@
1
- import { path as He, existsAsync as Zt, getCwd as Ri, retrievePackageJson as ct, toPosixPathSeparators as Li } from "@arcgis/components-build-utils";
2
- import { b as Ii, p as Ai, l as ki } from "./typeScript-rpB6x3rO.js";
3
- import { getDefaultBasePath as ei, buildViewUrl as Gi, getViewUrl as Ue } from "./extractor/processing/links.js";
4
- import o from "typescript";
5
- import "fs/promises";
6
- import { a as ue, b as ti, c as ht, g as me, p as J, f as et, h as ii, d as Fe, e as Fi, i as Oi, j as ni, k as Ni } from "./privateContext-CB7P40up.js";
7
- import { maybeEscapePropertyName as Dt, printTypeAlias as Rt, printInterface as wi, printFunction as Ui, printVariable as Vi, printClass as Wi, printMethod as _i, printProperty as ve, printGetterSetter as Bi, printSignature as Ki } from "./utils/partPrinter.js";
8
- import { styleText as ie } from "node:util";
9
- import { readFile as Lt, opendir as It, rm as Hi } from "node:fs/promises";
10
- import { pathIsComponentEntrypoint as $i, findDeclaredComponent as zi } from "./extractor/webComponent/findComponents.js";
11
- import { renameComponentFolder as Ve, addComponentPathMapping as ji } from "./extractor/webComponent/pathMapping.js";
12
- import { getBasename as Z, getPackageNameFromExternalSpecifier as dt, extractInitializer as $e, extractBooleanInitializer as Y, findDecorator as xe, getMemberName as De } from "./utils/astHelpers.js";
13
- import { readFileSync as Ji, existsSync as ye } from "node:fs";
14
- import { uncapitalize as qi, camelToKebab as Qi, kebabToPascal as Xi } from "@arcgis/toolkit/string";
15
- import { globalPackageIdentifier as le, mergeApiNodes as Yi, isApiMethodAsync as Zi } from "./utils/apiHelpers.js";
16
- import "@arcgis/toolkit/array";
17
- import { identity as Se } from "@arcgis/toolkit/function";
18
- import { pathToFileURL as en } from "node:url";
19
- import tn from "path";
20
- import { getWidenedLiteralType as nn, unsafeUndocumentedTs as on, unsafeGetUndocumentedPrinter as an } from "./utils/internalTypeScriptApis.js";
21
- const At = "developers.arcgis.com", kt = "next.gha.afd.arcgis.com";
22
- function va(e) {
23
- if (e.isResolvedConfig === !0)
24
- return e;
25
- const t = e.context, n = e.types, i = e.documentation, r = `${t?.cwd === void 0 ? Ri() : He.resolve(t?.cwd)}/`, l = t?.packageJson ?? ct(r);
26
- let s = t?.basePath ?? "src/";
27
- s.endsWith("/") || (s += "/");
28
- const c = "customElements" in l && "@arcgis/lumina" in (l.dependencies ?? {}), p = n?.typeCheckedExtraction ?? c, d = n?.fullTypeCheck ?? !1, m = n?.typeScriptConfig ?? (p || d ? Ii(r, n?.typeScriptConfigPath, !0) : {
29
- configPath: "",
30
- config: {
31
- options: {},
32
- fileNames: [],
33
- errors: []
34
- }
35
- });
36
- if (n?.typeScriptConfig?.config.fileNames.length === 0)
37
- throw Error(
38
- `${Ai.name}: Provided types.typeScriptConfig has no included files. If you used loadTypeScriptConfig, make sure to set resolveIncludedFiles to true.`
39
- );
40
- const u = {
41
- config: {
42
- ...m.config,
43
- options: {
44
- ...m.config.options,
45
- ...n?.compilerOptions
46
- }
47
- },
48
- configPath: m.configPath
49
- }, f = t?.dtsEmitPath === void 0 || t?.dtsEmitPath === "" ? "" : `${He.resolve(r, t.dtsEmitPath)}/`, S = f !== "", C = t?.environment ?? "production", v = C === "development", P = t?.emptyDtsEmitPath ?? (!v && S), h = i?.omitInternal ?? !1, L = n?.forceProduceDts ?? !1;
50
- if (h && (S || L))
51
- throw Error(
52
- "omitInternal must be false if emitting .d.ts files in order to produce functional types for internal APIs."
53
- );
54
- return {
55
- isResolvedConfig: !0,
56
- context: {
57
- dtsEmitPath: f,
58
- emptyDtsEmitPath: P,
59
- apiJsonEmitPath: t?.apiJsonEmitPath ?? "",
60
- environment: C,
61
- cwd: r,
62
- basePath: s,
63
- packageJson: l,
64
- logger: t?.logger ?? {
65
- // We namespace manually
66
- // eslint-disable-next-line webgis/consistent-logging
67
- info: console.log,
68
- // eslint-disable-next-line webgis/consistent-logging
69
- error: console.error
70
- },
71
- excludedDirectories: t?.excludedDirectories ?? /* @__PURE__ */ new Set(),
72
- isLuminaMinimalExtraction: t?.isLuminaMinimalExtraction ?? !1,
73
- includeLuminaPrivateComponents: t?.includeLuminaPrivateComponents ?? !1,
74
- supportApplyMixinsSyntax: t?.supportApplyMixinsSyntax ?? !1
75
- },
76
- types: {
77
- typeCheckedExtraction: p,
78
- fullTypeCheck: d,
79
- afterDiagnostic: n?.afterDiagnostic ?? Se,
80
- typeScriptInstanceCreated: n?.typeScriptInstanceCreated ?? Se,
81
- typeScriptConfigPath: m.configPath,
82
- typeScriptConfig: u,
83
- compilerOptions: u.config.options,
84
- declarationTextTransformers: n?.declarationTextTransformers ?? [],
85
- typeReplacements: n?.typeReplacements ?? {},
86
- forceProduceDts: L
87
- },
88
- documentation: {
89
- copyDocDefinitions: i?.copyDocDefinitions ?? {},
90
- noInheritMembers: i?.noInheritMembers ?? {},
91
- omitInternal: h,
92
- publicStoryUrlPrefix: i?.publicStoryUrlPrefix ?? !1,
93
- getComponentDocsUrl: i?.getComponentDocsUrl ?? !1,
94
- getComponentDemoUrl: i?.getComponentDemoUrl ?? !1,
95
- host: i?.host ?? (v ? kt : At),
96
- alternativeHost: i?.alternativeHost ?? (v ? At : kt),
97
- basePath: i?.basePath ?? ei(l.name.split("/").at(-1))
98
- },
99
- verify: {
100
- typeCheckTypes: e.verify?.typeCheckTypes ?? !1,
101
- filterTypeCheckDiagnostic: e.verify?.filterTypeCheckDiagnostic ?? (() => !0),
102
- detectBrokenLinks: e.verify?.detectBrokenLinks ?? !0
103
- },
104
- watch: {
105
- onUpdate: e.watch?.onUpdate ?? Se,
106
- // Many reads can happen in a short time (on folder moves, or if prettier re-runs)
107
- // Shorter than TypeScript's default of 250ms as we are blocked until this
108
- // timeout is complete. Short timeout for unchecked extraction as it is fast,
109
- // so doesn't need long debounce.
110
- debounceTime: e.watch?.debounceTime ?? (p || d ? 50 : 20),
111
- clearScreen: e.watch?.clearScreen ?? !1,
112
- skipWritingUnchanged: P ? !1 : e.watch?.skipWritingUnchanged ?? !0
113
- },
114
- strict: e.strict ?? !c,
115
- afterApiJsonCreate: e.afterApiJsonCreate ?? Se
116
- };
117
- }
118
- async function Sa(e, t) {
119
- const n = t !== void 0, i = e ?? process.cwd(), a = He.resolve(i, t ?? "api-extractor.config.ts"), r = await Zt(a);
120
- if (n && !r)
121
- throw Error(`The provided config file at ${a} does not exist.`);
122
- if (!r)
123
- return e === void 0 ? {} : { context: { cwd: e } };
124
- const l = (await import(en(a).href)).config;
125
- return {
126
- ...l,
127
- context: {
128
- ...l.context,
129
- cwd: l.context?.cwd ?? He.dirname(a)
130
- }
131
- };
132
- }
133
- function ga(e, t) {
134
- const n = e.context, i = t.context, a = e.types, r = t.types, l = e.documentation, s = t.documentation, c = e.verify, p = t.verify, d = e.watch, m = t.watch;
135
- return {
136
- isResolvedConfig: e.isResolvedConfig || t.isResolvedConfig || void 0,
137
- context: {
138
- dtsEmitPath: i?.dtsEmitPath ?? n?.dtsEmitPath,
139
- emptyDtsEmitPath: i?.emptyDtsEmitPath ?? n?.emptyDtsEmitPath,
140
- apiJsonEmitPath: i?.apiJsonEmitPath ?? n?.apiJsonEmitPath,
141
- environment: i?.environment ?? n?.environment,
142
- cwd: i?.cwd ?? n?.cwd,
143
- basePath: i?.basePath ?? n?.basePath,
144
- packageJson: i?.packageJson ?? n?.packageJson,
145
- logger: i?.logger ?? n?.logger,
146
- excludedDirectories: i?.excludedDirectories ?? n?.excludedDirectories,
147
- isLuminaMinimalExtraction: i?.isLuminaMinimalExtraction ?? n?.isLuminaMinimalExtraction,
148
- includeLuminaPrivateComponents: i?.includeLuminaPrivateComponents ?? n?.includeLuminaPrivateComponents,
149
- supportApplyMixinsSyntax: i?.supportApplyMixinsSyntax ?? n?.supportApplyMixinsSyntax ?? !1
150
- },
151
- types: {
152
- typeCheckedExtraction: r?.typeCheckedExtraction ?? a?.typeCheckedExtraction,
153
- fullTypeCheck: r?.fullTypeCheck ?? a?.fullTypeCheck,
154
- afterDiagnostic: Oe(r?.afterDiagnostic, a?.afterDiagnostic),
155
- typeScriptInstanceCreated: Oe(
156
- t?.types?.typeScriptInstanceCreated,
157
- e?.types?.typeScriptInstanceCreated
158
- ),
159
- typeScriptConfigPath: r?.typeScriptConfigPath ?? a?.typeScriptConfigPath,
160
- typeScriptConfig: r?.typeScriptConfig ?? a?.typeScriptConfig,
161
- compilerOptions: r?.compilerOptions ?? a?.compilerOptions,
162
- declarationTextTransformers: r?.declarationTextTransformers !== void 0 && a?.declarationTextTransformers !== void 0 ? [...a.declarationTextTransformers, ...r.declarationTextTransformers] : r?.declarationTextTransformers ?? a?.declarationTextTransformers,
163
- typeReplacements: r?.typeReplacements ?? a?.typeReplacements,
164
- forceProduceDts: r?.forceProduceDts ?? a?.forceProduceDts
165
- },
166
- documentation: {
167
- copyDocDefinitions: s?.copyDocDefinitions ?? l?.copyDocDefinitions,
168
- noInheritMembers: s?.noInheritMembers ?? l?.noInheritMembers,
169
- omitInternal: s?.omitInternal ?? l?.omitInternal,
170
- publicStoryUrlPrefix: s?.publicStoryUrlPrefix ?? l?.publicStoryUrlPrefix,
171
- getComponentDocsUrl: s?.getComponentDocsUrl ?? l?.getComponentDocsUrl,
172
- getComponentDemoUrl: s?.getComponentDemoUrl ?? l?.getComponentDemoUrl,
173
- host: s?.host ?? l?.host,
174
- alternativeHost: s?.alternativeHost ?? l?.alternativeHost,
175
- basePath: s?.basePath ?? l?.basePath
176
- },
177
- verify: {
178
- typeCheckTypes: p?.typeCheckTypes ?? c?.typeCheckTypes,
179
- filterTypeCheckDiagnostic: p?.filterTypeCheckDiagnostic ?? c?.filterTypeCheckDiagnostic,
180
- detectBrokenLinks: p?.detectBrokenLinks ?? c?.detectBrokenLinks
181
- },
182
- watch: {
183
- onUpdate: Oe(m?.onUpdate, d?.onUpdate),
184
- debounceTime: m?.debounceTime ?? d?.debounceTime,
185
- clearScreen: m?.clearScreen ?? d?.clearScreen,
186
- skipWritingUnchanged: m?.skipWritingUnchanged ?? d?.skipWritingUnchanged
187
- },
188
- strict: t.strict ?? e.strict,
189
- afterApiJsonCreate: Oe(t.afterApiJsonCreate, e.afterApiJsonCreate)
190
- };
191
- }
192
- function Oe(e, t) {
193
- const n = t === Se ? void 0 : t, i = e === Se ? void 0 : e;
194
- return n !== void 0 && i !== void 0 ? ((...a) => (n(...a), i(...a))) : i ?? n;
195
- }
196
- function Te(e) {
197
- const t = [], n = e, i = e;
198
- if (e.deprecated && t.push({
199
- name: "deprecated",
200
- text: e.deprecated === !0 ? void 0 : e.deprecated
201
- }), n.default && t.push({
202
- name: "default",
203
- text: n.default
204
- }), i.return !== void 0) {
205
- const l = i.parameters;
206
- if (l !== void 0)
207
- for (let s = 0; s < l.length; ++s) {
208
- const c = l[s];
209
- t.push({
210
- name: "param",
211
- // Add hyphen as required by TSDoc
212
- text: `${c.name}${c.description ? ` - ${c.description}` : ""}`
213
- });
214
- }
215
- i.return.description && t.push({
216
- name: "returns",
217
- text: i.return.description
218
- });
219
- }
220
- const a = e;
221
- if (a.customElement === !0) {
222
- if (a.cssProperties !== void 0)
223
- for (const l of a.cssProperties)
224
- t.push({
225
- name: "cssproperty",
226
- text: Ne(l)
227
- });
228
- if (a.cssParts !== void 0)
229
- for (const l of a.cssParts)
230
- t.push({
231
- name: "csspart",
232
- text: Ne(l)
233
- });
234
- if (a.cssStates !== void 0)
235
- for (const l of a.cssStates)
236
- t.push({
237
- name: "cssstate",
238
- text: Ne(l)
239
- });
240
- if (a.slots !== void 0)
241
- for (const l of a.slots)
242
- t.push({
243
- name: "slot",
244
- text: Ne(l)
245
- });
246
- }
247
- e.docsTags !== void 0 && t.push(...e.docsTags);
248
- const r = e.description ?? "";
249
- if (!(t.length === 0 && r.length === 0))
250
- return {
251
- description: r,
252
- docsTags: t
253
- };
254
- }
255
- function Ne(e) {
256
- const t = e, n = e.name + (t.default !== void 0 ? `=${t.default}` : ""), i = n.length > 0 ? `[${n}]` : "", a = e.description ?? "", r = a.length > 0 ? ` - ${a}` : "";
257
- return `${i}${r}`;
258
- }
259
- function rn(e) {
260
- const t = e.description ?? "", n = t.length === 0, i = e.docsTags, a = (
261
- // Has 2+ tags, or multi-line description, or single tag and single line description
262
- i.length + (n ? 0 : t.includes(`
263
- `) ? 2 : 1) > 1 || // Has a single tag, but that tag is multi-line
264
- i[0]?.text?.includes(`
265
- `) === !0
266
- );
267
- let r = "*";
268
- n ? a || (r += " ") : (a ? (r += `
269
- * `, r += Gt(t)) : r += ` ${t.replaceAll(" @", " \\@")}`, i.length > 0 && (r += `
270
- *`));
271
- for (let l = 0; l < i.length; ++l) {
272
- const s = i[l], c = `@${s.name}`, p = s.text ?? "";
273
- r += `${a ? `
274
- * ` : ""}${c}`, p.includes(`
275
- `) ? (s.name === "returns" || s.name === "param" ? r += " " : r += `
276
- * `, r += Gt(p)) : p.length > 0 && (r += ` ${p.replaceAll(" @", " \\@")}`);
277
- }
278
- return r += a ? `
279
- ` : " ", r;
280
- }
281
- const ot = 10, sn = 32, ln = 64;
282
- function Gt(e) {
283
- let t = "";
284
- const n = e.length;
285
- let i = 0;
286
- for (let a = 0; a < n; ++a) {
287
- const r = e.charCodeAt(a);
288
- if (r === ot)
289
- t += e.slice(i, a), e.charCodeAt(a + 1) === ot ? t += `
290
- *` : t += `
291
- * `, i = a + 1;
292
- else if (r === ln) {
293
- const l = a === 0 ? 0 : e.charCodeAt(a - 1);
294
- (a === 0 || l === sn || l === ot) && (t += e.slice(i, a), t += "\\@", i = a + 1);
295
- }
296
- }
297
- return i < n && (t += e.slice(i)), t;
298
- }
299
- function ne(e, t, n) {
300
- return oi(e, t, n) ?? void 0;
301
- }
302
- function ze(e, t, n, i) {
303
- const a = oi(e, t, n);
304
- return a === void 0 ? i : a ?? void 0;
305
- }
306
- function oi(e, t, n) {
307
- const i = o.getLeadingCommentRanges(n.file.text, e.pos);
308
- if (i === void 0)
309
- return;
310
- let a;
311
- for (const l of i) {
312
- const s = n.file.text.slice(l.pos, l.end);
313
- s.startsWith("/**") && (a !== void 0 && n.config.strict && n.emitError(
314
- `Found multiple JSDoc comments for the same node. This is not allowed.
315
- If one of these was meant to be a file-level comment, read the documentation: https://webgis.esri.com/references/api-extractor/api-node-kinds#module-level-documentation
316
- If this is meant to be a function overload, read the documentation: https://webgis.esri.com/references/api-extractor/api-node-kinds#function-overloads`,
317
- {
318
- file: n.file,
319
- node: e
320
- }
321
- ), a = s);
322
- }
323
- if (a === void 0)
324
- return;
325
- const r = n.config.documentation.omitInternal;
326
- return cn(a, t, r, n);
327
- }
328
- function cn(e, t, n, i) {
329
- if (t && !e.includes("* @public") && (n || !e.includes("* @internal")))
330
- return null;
331
- const a = e.length - 2;
332
- let r = 3, l = "";
333
- const s = [];
334
- let c, p, d = !1;
335
- for (; r < a; ) {
336
- let m = e.indexOf(`
337
- `, r);
338
- m === -1 && (m = a);
339
- let u = e.slice(r, m).trim();
340
- if (r = m + 1, u === "*" ? u = "" : u.startsWith("*") && (u[1] === " " ? u = u.slice(2) : i.config.strict ? i.emitError(
341
- `For consistency, include a space character after '*' in JSDoc. Did not find it in "${e}"`,
342
- {
343
- file: i.file,
344
- node: void 0
345
- }
346
- ) : u = u.slice(1)), u.startsWith("@")) {
347
- c !== void 0 && !d && s.push(
348
- N[c] ?? {
349
- name: c,
350
- text: p.trim().replaceAll("\\@", "@") || void 0
351
- }
352
- );
353
- const f = u.indexOf(" "), S = f === -1 ? u.slice(1) : u.slice(1, f);
354
- if (S === "internal") {
355
- if (n)
356
- return null;
357
- t = !1;
358
- } else S === "public" ? (t = !1, d = !0) : d = S === "privateRemarks";
359
- const C = f === -1 ? "" : u.slice(f + 1);
360
- c = S, p = C;
361
- } else c !== void 0 ? p = `${p}
362
- ${u}` : l += `${u}
363
- `;
364
- }
365
- return t ? null : (c !== void 0 && !d && s.push(
366
- N[c] ?? {
367
- name: c,
368
- text: p.trim().replaceAll("\\@", "@") || void 0
369
- }
370
- ), {
371
- description: l.trim().replaceAll("\\@", "@") || void 0,
372
- docsTags: s
373
- });
374
- }
375
- function dn(e, t) {
376
- for (let n = 0; n < t.docsTags.length; ++n) {
377
- const i = t.docsTags[n], { name: a, text: r } = i;
378
- a === "deprecated" ? e.deprecated = r || !0 : (e.docsTags ??= [], e.docsTags.push(i));
379
- }
380
- e.description = t.description;
381
- }
382
- function ai(e, t) {
383
- for (let n = 0; n < t.docsTags.length; ++n) {
384
- const i = t.docsTags[n], { name: a, text: r } = i;
385
- if (a === "deprecated")
386
- e.deprecated = r || !0;
387
- else if (i === N.private)
388
- e.privacy = "private";
389
- else if (a === "csspart")
390
- e.cssParts ??= [], e.cssParts.push(at(r));
391
- else if (a === "cssstate")
392
- e.cssStates ??= [], e.cssStates.push(at(r));
393
- else if (a === "slot")
394
- e.slots ??= [], e.slots.push(at(r));
395
- else if (a === "esriCompatibilityName") {
396
- const l = ue(e);
397
- l.esriCompatibilityNames ??= [], l.esriCompatibilityNames.push(r ?? "");
398
- } else a === "readonly" || (e.docsTags ??= [], e.docsTags.push(i));
399
- }
400
- e.description = t.description;
401
- }
402
- function pn(e, t) {
403
- const n = e, i = [];
404
- for (let a = 0; a < t.docsTags.length; ++a) {
405
- const r = t.docsTags[a], { name: l, text: s } = r;
406
- if (l === "deprecated")
407
- e.deprecated = s || !0;
408
- else if (r === N.private)
409
- e.privacy = "private";
410
- else if (l === "param")
411
- i.push(r);
412
- else if (l === "returns")
413
- n.return.description = r.text;
414
- else if (l === "esriCompatibilityName") {
415
- const c = ht(e);
416
- c.esriCompatibilityNames ??= [], c.esriCompatibilityNames.push(s ?? "");
417
- } else
418
- e.docsTags ??= [], e.docsTags.push(r);
419
- }
420
- return e.description = t.description, i;
421
- }
422
- function mn(e, t) {
423
- for (let n = 0; n < t.docsTags.length; ++n) {
424
- const i = t.docsTags[n], { name: a, text: r } = i;
425
- a === "deprecated" ? e.deprecated = r || !0 : a === "default" ? e.default = r : i === N.readonly ? e.readonly = !0 : i === N.private ? e.privacy = "private" : (e.docsTags ??= [], e.docsTags.push(i));
426
- }
427
- e.description = t.description;
428
- }
429
- function un(e, t) {
430
- for (let n = 0; n < t.docsTags.length; ++n) {
431
- const i = t.docsTags[n], { name: a, text: r } = i;
432
- if (a === "deprecated")
433
- e.deprecated = r || !0;
434
- else if (a === "default")
435
- e.default = r;
436
- else if (a !== "readonly") if (a === "esriCompatibilityName") {
437
- const l = ti(e);
438
- l.esriCompatibilityNames ??= [], l.esriCompatibilityNames.push(r ?? "");
439
- } else
440
- e.docsTags ??= [], e.docsTags.push(i);
441
- }
442
- e.description = t.description;
443
- }
444
- function fn(e, t) {
445
- for (let n = 0; n < t.docsTags.length; ++n) {
446
- const i = t.docsTags[n], { name: a, text: r } = i;
447
- a === "deprecated" ? e.deprecated = r || !0 : i === N.private ? e.privacy = "private" : (e.docsTags ??= [], e.docsTags.push(i));
448
- }
449
- e.description = t.description;
450
- }
451
- function at(e) {
452
- if (e === void 0)
453
- return {
454
- name: "",
455
- deprecated: void 0,
456
- summary: void 0,
457
- description: void 0,
458
- syntax: void 0,
459
- default: void 0
460
- };
461
- const t = e.indexOf(" - ");
462
- if (t === -1)
463
- return e.startsWith("- ") ? {
464
- name: "",
465
- deprecated: void 0,
466
- summary: void 0,
467
- description: e.slice(2),
468
- syntax: void 0,
469
- default: void 0
470
- } : {
471
- name: e,
472
- deprecated: void 0,
473
- summary: void 0,
474
- description: void 0,
475
- syntax: void 0,
476
- default: void 0
477
- };
478
- let n, i = e.slice(0, t);
479
- if (i.startsWith("[") && i.endsWith("]")) {
480
- const r = i.slice(1, -1), l = r.indexOf("=");
481
- i = r.slice(0, l), n = r.slice(l + 1);
482
- }
483
- const a = e.slice(t + 3);
484
- return {
485
- name: i,
486
- deprecated: void 0,
487
- summary: void 0,
488
- description: a,
489
- syntax: void 0,
490
- default: n
491
- };
492
- }
493
- const N = {
494
- // Create a null prototype object to avoid collisions with Object.prototype when doing lookups
495
- // eslint-disable-next-line @typescript-eslint/naming-convention
496
- __proto__: null,
497
- internal: { name: "internal", text: void 0 },
498
- private: { name: "private", text: void 0 },
499
- copyDoc: { name: "copyDoc", text: void 0 },
500
- beta: { name: "beta", text: void 0 },
501
- experimental: { name: "experimental", text: void 0 },
502
- readonly: { name: "readonly", text: void 0 },
503
- required: { name: "required", text: void 0 }
504
- }, Re = {
505
- description: void 0,
506
- docsTags: []
507
- }, Ce = {
508
- description: void 0,
509
- docsTags: [N.private]
510
- };
511
- function yn(e, t, n) {
512
- switch (t.path) {
513
- case "layers/FeatureLayer": {
514
- const i = "export default class FeatureLayer extends FeatureLayerSuperclass {", a = e.indexOf(i);
515
- if (a === -1)
516
- return n.emitError(
517
- `Hardcoded behavior error: Expected .d.ts for FeatureLayer to include "${i}".`,
518
- { file: me(t).file, node: void 0 }
519
- ), e;
520
- const r = 'get type(): "feature";', l = e.indexOf(r);
521
- if (l === -1)
522
- return n.emitError(
523
- `Hardcoded behavior error: Expected .d.ts for FeatureLayer to include "${r}".`,
524
- { file: me(t).file, node: void 0 }
525
- ), e;
526
- const s = l + r.length, c = e.lastIndexOf("/**", l);
527
- if (c === -1)
528
- return n.emitError(
529
- `Hardcoded behavior error: Expected .d.ts for FeatureLayer to include JSDoc for "${r}".`,
530
- { file: me(t).file, node: void 0 }
531
- ), e;
532
- const p = `export default class FeatureLayer extends __FeatureLayerSansType {
533
- ${e.slice(c, s)}
534
- }
535
- export abstract class __FeatureLayerSansType extends FeatureLayerSuperclass {`;
536
- return e.slice(0, a) + p + e.slice(a + i.length, c) + e.slice(s);
537
- }
538
- case "layers/OrientedImageryLayer": {
539
- const i = `import type { __FeatureLayerSansType } from "./FeatureLayer.js";
540
- `, a = `extends FeatureLayer {
541
- `, r = e.indexOf(a);
542
- return r === -1 ? (n.emitError(
543
- `Hardcoded behavior error: Expected .d.ts for ${t.path} to include "${a}".`,
544
- { file: me(t).file, node: void 0 }
545
- ), e) : i + e.slice(0, r) + `extends __FeatureLayerSansType {
546
- ` + e.slice(r + a.length);
547
- }
548
- case "widgets/support/widget":
549
- return e + `
550
-
551
- export namespace tsx {
552
- namespace JSX {
553
- interface IntrinsicElements {
554
- [elementName: string]: any;
555
- }
556
-
557
- interface Element {
558
- }
559
- }
560
- }`;
561
- default:
562
- return e;
563
- }
564
- }
565
- function Ta(e, t) {
566
- let n = `/// <reference types="../index.d.ts" />
567
- `, i = `
568
-
569
- `, a = "", r = "", l = "", s = "", c = "", p = "", d = "", m = "", u = "", f = "", S = "", C = "";
570
- for (let T = 0; T < e.length; ++T) {
571
- const R = e[T];
572
- for (let A = 0; A < R.declarations.length; ++A) {
573
- const H = R.declarations[A];
574
- if (H.customElement !== !0)
575
- continue;
576
- const V = H;
577
- if (V.privacy !== void 0 || ue(V).hasExplicitAbstract === !0)
578
- continue;
579
- const { name: G, tagName: U, pascalCaseName: F, events: W } = V;
580
- i += `import type { ${G} } from "./${R.path}/customElement.js";
581
- `, n += `import type { ${G} } from "../${R.path}/customElement.js";
582
- `;
583
- const [fe, ke] = vn(V.name, V.members);
584
- let te = "", q = "";
585
- if (W !== void 0) {
586
- for (let de = 0; de < W.length; ++de) {
587
- const Ge = W[de], xt = `EventHandler<${G}["${Ge.name}"]>`;
588
- te += ` ${Dt(`on${Ge.name}`)}?: ${xt};
589
- `, q += ` ${Dt(`on${Ge.name[0].toUpperCase()}${Ge.name.slice(1)}`)}?: ${xt};
590
- `;
591
- }
592
- a += `export interface ${F}CustomEvent<T> extends CustomEvent<T> {
593
- detail: T;
594
- target: ${G};
595
- currentTarget: ${G};
596
- }
597
- `, r += ` type HTML${F}ElementEventMap = ${G}["@eventTypes"];
598
- `;
599
- }
600
- r += ` type HTML${F}Element = ${G};
601
-
602
- `, l += ` "${U}": ${G};
603
- `, s += `interface Lumina${F} extends ${fe}h.JSX.HTMLAttributes<${G}> {
604
- ${te}}
605
-
606
- `, c += ` "${U}": Lumina${F};
607
- `, p += `interface Preact${F} extends ${fe}HTMLAttributes<${G}> {
608
- ${te}}
609
-
610
- `, d += ` "${U}": Preact${F};
611
- `, m += `interface React${F} extends ${fe}HTMLProps<${G}> {
612
- ${te}}
613
-
614
- `, u += ` "${U}": React${F};
615
- `, f += `interface Stencil${F} extends ${fe}StencilJsx.HTMLAttributes<${G}> {
616
- ${q}}
617
-
618
- `, S += ` "${U}": Stencil${F};
619
- `, ke !== "" && (C += ke);
620
- }
621
- }
622
- if (r === "") {
623
- t.vanillaComponentTypes = "";
624
- return;
625
- }
626
- const v = "@arcgis/lumina";
627
- t.vanillaComponentTypes = `${i}
628
- export { ToEvents, TargetedEvent } from "${v}";
629
-
630
- ${a}
631
-
632
- declare global {
633
- interface HTMLElementTagNameMap {
634
- ${l}
635
- }
636
-
637
- ${r}
638
- }`;
639
- const P = `import "./index.js";
640
- export declare const defineCustomElements: import("${v}").DefineCustomElements;`, h = `${t.config.context.dtsEmitPath}loader.d.ts`;
641
- t.dtsFiles.set(h, P);
642
- const L = `${n}import type { h, EventHandler } from "${v}";
643
-
644
- ${C}${s}declare module "@arcgis/lumina" {
645
- export namespace h.JSX {
646
- interface IntrinsicElements {
647
- ${c} }
648
- }
649
- }`, b = ` interface IntrinsicElements {
650
- ${d} }`, y = `${n}import { HTMLAttributes } from "preact";
651
- import type { EventHandler } from "${v}";
652
-
653
- ${C}${p}declare module 'preact' {
654
- namespace createElement.JSX {
655
- ${b}
656
- }
657
- namespace h.JSX {
658
- ${b}
659
- }
660
- }`, k = `
661
- namespace JSX {
662
- interface IntrinsicElements {
663
- ${u} }
664
- }
665
- `, D = `${n}import type { HTMLProps } from 'react';
666
- import type { EventHandler } from "${v}";
667
-
668
- ${C}${m}declare module "react" {${k}}
669
- declare module "react/jsx-runtime" {${k}}
670
- declare module "react/jsx-dev-runtime" {${k}}`, I = `${n}import { JSXBase as StencilJsx } from "@stencil/core/internal";
671
- import type { EventHandler } from "${v}";
672
-
673
- ${C}${f}interface ExposedElements {
674
- ${S}}
675
-
676
- export namespace JSX {
677
- export interface IntrinsicElements extends ExposedElements {}
678
- }
679
-
680
- declare module "@stencil/core/internal/stencil-public-runtime" {
681
- export namespace h.JSX {
682
- interface IntrinsicElements extends ExposedElements {}
683
- }
684
- }`, x = `/** @deprecated import from stencil.d.ts instead */
685
- export * from "./stencil.js";`, g = `${t.config.context.dtsEmitPath}types/`, K = `${g}lumina.d.ts`, w = `${g}preact.d.ts`, $ = `${g}react.d.ts`, B = `${g}stencil.d.ts`, E = `${g}components.d.ts`;
686
- t.dtsFiles.set(K, L), t.dtsFiles.set(w, y), t.dtsFiles.set($, D), t.dtsFiles.set(B, I), t.dtsFiles.set(E, x);
687
- }
688
- function vn(e, t) {
689
- const n = [], i = [];
690
- let a = !1;
691
- if (t !== void 0)
692
- for (let s = 0; s < t.length; ++s) {
693
- const c = t[s];
694
- if (c.kind !== "field" || c.readonly !== void 0 || c.privacy !== void 0)
695
- continue;
696
- if (c.getterType !== void 0) {
697
- a = !0;
698
- continue;
699
- }
700
- c.docsTags?.includes(N.required) === !0 ? n.push(`"${c.name}"`) : i.push(`"${c.name}"`);
701
- }
702
- let r = n.length > 0 ? `Required<Pick<${e}, ${n.join(" | ")}>>` : "";
703
- i.length > 0 && (r.length > 0 && (r += ", "), r += `Partial<Pick<${e}, ${i.join(" | ")}>>`), a && (r.length > 0 && (r += ", "), r += `${e}SetterTypes`);
704
- const l = a ? `type ${e}SetterTypes = ${e}["${ri}"];
705
- ` : "";
706
- return [r.length === 0 ? "" : `${r}, `, l];
707
- }
708
- function ha(e, t) {
709
- const n = t.moduleMap.get("index");
710
- if (n === void 0)
711
- e.unshift(Sn);
712
- else {
713
- const i = me(n);
714
- i.index.named.getAssetPath === void 0 && n.declarations.push(si), i.index.named.setAssetPath === void 0 && n.declarations.push(li);
715
- }
716
- }
717
- const ri = "@setterTypes", si = {
718
- [J]: et(),
719
- kind: "function",
720
- name: "getAssetPath",
721
- static: void 0,
722
- deprecated: void 0,
723
- summary: void 0,
724
- description: "Get a resolved path from where an asset can be loaded.",
725
- docsTags: void 0,
726
- typeParameters: void 0,
727
- parameters: [
728
- {
729
- name: "suffix",
730
- deprecated: void 0,
731
- summary: void 0,
732
- description: "The relative path for the asset.",
733
- docsTags: void 0,
734
- optional: void 0,
735
- rest: void 0,
736
- type: {
737
- text: "string",
738
- references: void 0,
739
- values: void 0,
740
- source: void 0
741
- },
742
- default: void 0
743
- }
744
- ],
745
- return: {
746
- summary: void 0,
747
- description: void 0,
748
- type: {
749
- text: "string",
750
- references: void 0,
751
- values: void 0,
752
- source: void 0
753
- }
754
- },
755
- inheritedFrom: void 0,
756
- signature: void 0,
757
- privacy: void 0,
758
- source: void 0
759
- }, li = {
760
- [J]: et(),
761
- kind: "function",
762
- name: "setAssetPath",
763
- static: void 0,
764
- deprecated: void 0,
765
- summary: void 0,
766
- description: `Used to manually set the base path where package assets (like localization
767
- and icons) can be found.
768
-
769
- By default, the package assets are loaded from
770
- \`https://js.arcgis.com/<version>/<simplified-package-name>/\`. We are hosting
771
- our assets on a CDN (Content Delivery Network) to ensure fast and reliable
772
- access. It is CORS-enabled, so you can load the assets from any domain. This
773
- is the recommended way to load the assets and avoid bundling them with your
774
- application.
775
-
776
- However, if you need to host the assets locally, you can copy them manually
777
- as part of your build process and use \`setAssetPath\` to customize where the
778
- browser will load the assets from.`,
779
- docsTags: void 0,
780
- typeParameters: void 0,
781
- parameters: [
782
- {
783
- name: "path",
784
- deprecated: void 0,
785
- summary: void 0,
786
- description: "Relative or absolute path to the assets folder.",
787
- docsTags: void 0,
788
- optional: void 0,
789
- rest: void 0,
790
- type: {
791
- text: "URL | string",
792
- references: [
793
- {
794
- name: "URL",
795
- module: void 0,
796
- package: le,
797
- viewUrl: "https://developer.mozilla.org/docs/Web/API/URL",
798
- start: 0,
799
- end: 3
800
- }
801
- ],
802
- values: void 0,
803
- source: void 0
804
- },
805
- default: void 0
806
- }
807
- ],
808
- return: {
809
- summary: void 0,
810
- description: void 0,
811
- type: {
812
- text: "void",
813
- references: void 0,
814
- values: void 0,
815
- source: void 0
816
- }
817
- },
818
- inheritedFrom: void 0,
819
- signature: void 0,
820
- privacy: void 0,
821
- source: void 0
822
- }, ci = ii(void 0, "index", {}, { class: void 0, default: void 0, named: {} });
823
- ci.importsText = "";
824
- const Sn = {
825
- [J]: ci,
826
- kind: "javascript-module",
827
- path: "index",
828
- sourcePath: "src/index.ts",
829
- deprecated: void 0,
830
- description: void 0,
831
- docsTags: void 0,
832
- summary: void 0,
833
- declarations: [si, li],
834
- exports: void 0
835
- };
836
- function pt(e, t) {
837
- let i = t.startsWith("./") ? t.slice(2) : t, a = e;
838
- for (; ; ) {
839
- const r = a.lastIndexOf("/");
840
- if (a = r === -1 ? "" : a.slice(0, r), i.startsWith("../"))
841
- i = i.slice(3);
842
- else
843
- return a === "" ? i : `${a}/${i}`;
844
- }
845
- }
846
- function gn(e, t) {
847
- let n = 0;
848
- for (; ; ) {
849
- const a = e.indexOf("/", n) + 1;
850
- if (a === 0)
851
- break;
852
- const r = e.slice(n, a), l = t.slice(n, a);
853
- if (r !== l)
854
- break;
855
- n = a;
856
- }
857
- let i = "";
858
- for (let a = n; a < e.length && (a = e.indexOf("/", a), a !== -1); ++a)
859
- i += "../";
860
- return i.length === 0 && (i = "./"), `${i}${t.slice(n)}.js`;
861
- }
862
- function Ft(e, t, n = 0) {
863
- for (; n < e.length; ++n) {
864
- const i = e[n];
865
- i.start += t, i.end += t;
866
- }
867
- return e;
868
- }
869
- function Ot(e, t) {
870
- if (e === t)
871
- return !0;
872
- if (typeof e != "object" || typeof t != "object" || e === null || t === null)
873
- return !1;
874
- if (Array.isArray(e)) {
875
- if (!Array.isArray(t) || e.length !== t.length)
876
- return !1;
877
- for (let a = 0; a < e.length; ++a)
878
- if (!Ot(e[a], t[a]))
879
- return !1;
880
- return !0;
881
- }
882
- const n = Object.keys(e), i = Object.keys(t);
883
- if (n.length !== i.length)
884
- return !1;
885
- for (let a = 0; a < n.length; ++a) {
886
- const r = n[a];
887
- if (!Ot(e[r], t[r]))
888
- return !1;
889
- }
890
- return !0;
891
- }
892
- function Ea(e, t) {
893
- const n = Te(e), i = he(n), a = me(e);
894
- if (a.index.class?.privacy !== void 0)
895
- return e.declarations.length > 1 && t.emitError(
896
- `Did not expect to find any public declarations in a module that declares a private web component. Found: ${e.declarations.filter((s) => s !== a.index.class).map((s) => s.name).join(", ")}`,
897
- { file: a.file, node: void 0 }
898
- ), "";
899
- let r = `${i}${a.importsText}`;
900
- if (r !== "" && (r += `
901
- `), a.reExports !== void 0) {
902
- for (let s = 0; s < a.reExports.length; ++s) {
903
- const c = a.reExports[s];
904
- let p = "";
905
- if (c.specifiers[0].exportName === "*") {
906
- const m = c.specifiers[0];
907
- p = (c.isTypeOnly ? "type *" : "*") + (m.aliasName ? ` as ${m.aliasName}` : "");
908
- } else {
909
- for (let m = 0; m < c.specifiers.length; ++m) {
910
- const u = c.specifiers[m];
911
- p += (m === 0 ? "{" : ",") + (c.isTypeOnly ? " type " : " ") + u.exportName + (u.aliasName ? ` as ${u.aliasName}` : "");
912
- }
913
- p += " }";
914
- }
915
- const d = c.modulePath === void 0 ? c.externalSpecifier : gn(a.dtsPath, c.modulePath);
916
- r += `export ${p} from "${d}";
917
- `;
918
- }
919
- r += `
920
- `;
921
- }
922
- if (a.namespaces !== void 0)
923
- for (let s = 0; s < a.namespaces.length; ++s)
924
- r += `${a.namespaces[s]}
925
-
926
- `;
927
- const l = e.declarations;
928
- a.constructorPropertiesInterface !== void 0 && (r += `${Nt(a.constructorPropertiesInterface)}
929
-
930
- `);
931
- for (let s = 0; s < l.length; ++s) {
932
- const c = l[s];
933
- r += Nt(c), s < l.length - 1 && (r += `
934
-
935
- `);
936
- }
937
- return t.isJsApi ? yn(r, e, t) : (t.isComponentProject && (e.exports?.[0].kind === "custom-element-definition" ? r = `/// <reference path="../../index.d.ts" />
938
- ${r}` : e.path === "index" && (r += t.vanillaComponentTypes)), r);
939
- }
940
- function he(e) {
941
- return e === void 0 ? "" : `/*${rn(e)}*/
942
- `;
943
- }
944
- function Nt(e) {
945
- let t = Te(e), n = "";
946
- if (e.kind === "class" || e.kind === "mixin")
947
- n = wt(e);
948
- else if (e.kind === "interface") {
949
- const a = ue(e);
950
- if (e.supertypes === void 0 && e.type === void 0 && e.members?.length === 1 && (e.members[0].kind === "call-signature" || e.members[0].kind === "constructor")) {
951
- const l = e.members[0];
952
- let s = di(l, !0);
953
- const c = Te(l)?.docsTags;
954
- c !== void 0 && (t = {
955
- description: t?.description,
956
- docsTags: [...c, ...t?.docsTags ?? []]
957
- });
958
- const p = s.indexOf("): ");
959
- s = `${s.slice(0, p)}) => ${s.slice(p + 3, -1)}`, n = Rt(e.name, e.typeParameters, void 0, s);
960
- } else if (a.isMixinBaseClass === !0)
961
- n = wt(e);
962
- else if (a.emitAsTypeAlias === !0) {
963
- let l = e.type?.text;
964
- const s = mt(e);
965
- s !== "" ? l = l === void 0 ? `{${s}}` : `${l} & {${s}}` : l === void 0 && e.supertypes === void 0 && (l = "{}"), n = Rt(e.name, e.typeParameters, e.supertypes, l);
966
- } else {
967
- const l = mt(e);
968
- n = wi(
969
- a.isDefaultExported === !0,
970
- e.name,
971
- e.typeParameters,
972
- e.supertypes,
973
- l
974
- );
975
- }
976
- } else if (e.kind === "function") {
977
- const a = ht(e);
978
- n = Ui(
979
- a.isDefaultExported === !0,
980
- e.name,
981
- e.typeParameters,
982
- e.parameters,
983
- e.return.type.text
984
- );
985
- } else if (e.kind === "variable") {
986
- const a = ti(e);
987
- n += Vi(a.isDefaultExported === !0, e.name, e.type.text);
988
- }
989
- return `${he(t)}${n}`;
990
- }
991
- function wt(e) {
992
- const t = ue(e), n = t.isDefaultExported === !0, i = mt(e), a = e, r = e;
993
- let l, s = a.mixins ?? r.supertypes;
994
- s === void 0 ? a.superclass !== void 0 && (l = Fe(a.superclass)) : a.superclass === void 0 && s.length === 1 ? (l = Fe(s[0]), s = void 0) : l = `${e.name}Superclass`;
995
- let c = Wi(
996
- t.hasExplicitAbstract !== void 0,
997
- n,
998
- e.name,
999
- e.typeParameters,
1000
- l,
1001
- i
1002
- );
1003
- if (s !== void 0) {
1004
- c += `
1005
- declare const ${l}:`, a.superclass !== void 0 && (c += ` typeof ${Fe(a.superclass)}`);
1006
- for (let p = 0; p < s.length; ++p) {
1007
- const d = s[p];
1008
- c += ` & typeof ${Fe(d)}`;
1009
- }
1010
- }
1011
- return c;
1012
- }
1013
- function mt(e) {
1014
- const t = e.members;
1015
- let n = "";
1016
- const i = ue(e);
1017
- if (e.kind === "mixin" && (n += `constructor(...args: any[]);
1018
- `), i.eventTypesProperty !== void 0) {
1019
- let l = hn;
1020
- if (i.eventTypesProperty.description !== void 0 || i.eventTypesProperty.docsTags !== void 0) {
1021
- const c = Te(i.eventTypesProperty);
1022
- l = he(c);
1023
- }
1024
- const s = Ut(i.eventTypesProperty);
1025
- n += `${l}${s}
1026
- `;
1027
- }
1028
- const a = e, r = e.customElement === !0;
1029
- if (t !== void 0) {
1030
- let l = "";
1031
- for (let s = 0; s < t.length; ++s) {
1032
- const c = t[s];
1033
- if (c.inheritedFrom !== void 0 || c.privacy === "private")
1034
- continue;
1035
- const d = Te(c);
1036
- n += he(d), c.kind === "field" ? (r && c.getterType !== void 0 && (l += ` ${ve(!1, !1, !1, !1, !1, c.docsTags?.includes(N.required) !== !0, c.name, c.type.text)}
1037
- `), n += Ut(c)) : n += di(c, !1), n += `
1038
- `;
1039
- }
1040
- l !== "" && (n += `${ve(!1, !1, !1, !1, !1, !1, ri, `{
1041
- ${l}}`)}
1042
- `);
1043
- }
1044
- if (r && a.events !== void 0) {
1045
- let l = e.name;
1046
- if (e.typeParameters !== void 0) {
1047
- l += "<";
1048
- for (let c = 0; c < e.typeParameters.length; ++c)
1049
- l += e.typeParameters[c].name, c < e.typeParameters.length - 1 && (l += ", ");
1050
- l += ">";
1051
- }
1052
- let s = "";
1053
- for (let c = 0; c < a.events.length; ++c) {
1054
- const p = a.events[c];
1055
- if (p.inheritedFrom === void 0) {
1056
- const d = Te(p);
1057
- n += `${he(d)}${ve(!1, !1, !1, !0, !1, !1, p.name, `import("${Tn}").TargetedEvent<this, ${p.type.text}>`)}
1058
- `;
1059
- }
1060
- s += ` ${ve(!1, !1, !1, !1, !1, !1, p.name, `${l}["${p.name}"]["detail"]`)}
1061
- `;
1062
- }
1063
- n += `${ve(!1, !1, !1, !0, !1, !1, "@eventTypes", `{
1064
- ${s}}`)}
1065
- `;
1066
- }
1067
- return n === "" ? "" : `
1068
- ${n.replaceAll(`
1069
- `, `
1070
- `).slice(0, -2)}`;
1071
- }
1072
- const Tn = "@arcgis/lumina";
1073
- function Ut(e) {
1074
- let t = "";
1075
- const n = Fi(e), i = n.isAccessor === !0, a = e.readonly === !0;
1076
- if (e.getterType !== void 0 || i && a)
1077
- t += Bi(
1078
- e.privacy !== void 0,
1079
- n.isAbstract === !0,
1080
- e.static === !0,
1081
- e.name,
1082
- e.getterType?.text ?? e.type.text,
1083
- a ? void 0 : e.type.text
1084
- );
1085
- else {
1086
- const r = n.dtsTypeOverride ?? e.type.text, l = i ? !1 : r.endsWith(" | undefined"), s = l ? r.slice(0, -12) : r;
1087
- t += ve(
1088
- e.privacy !== void 0,
1089
- n.isAbstract === !0,
1090
- e.static === !0,
1091
- a,
1092
- i,
1093
- l,
1094
- e.name,
1095
- s
1096
- );
1097
- }
1098
- return t;
1099
- }
1100
- function di(e, t) {
1101
- const n = ht(e);
1102
- return _i(
1103
- e.privacy !== void 0,
1104
- n.isAbstract === !0,
1105
- e.static === !0,
1106
- n.hasQuestionToken === !0,
1107
- e.kind === "constructor" ? t ? "new" : "constructor" : e.kind === "call-signature" ? "" : e.name,
1108
- e.typeParameters,
1109
- e.parameters,
1110
- e.return?.type.text
1111
- );
1112
- }
1113
- const hn = he({
1114
- description: void 0,
1115
- docsTags: [
1116
- {
1117
- name: "deprecated",
1118
- text: `Do not directly reference this property.
1119
- Use EventNames and EventTypes helpers from @arcgis/core/Evented`
1120
- }
1121
- ]
1122
- });
1123
- function Ca() {
1124
- const e = Date.now();
1125
- return () => (Date.now() - e) / En;
1126
- }
1127
- const En = 1e3;
1128
- function Cn(e) {
1129
- const t = e.indexOf("/");
1130
- return t === -1 ? e : e.slice(0, t);
1131
- }
1132
- function Vt(e, t, n) {
1133
- if (!n.isComponentProject || n.config.context.isLuminaMinimalExtraction || n.config.documentation.publicStoryUrlPrefix === !1)
1134
- return;
1135
- const i = e.match(Pn)?.[1];
1136
- if (i === void 0) {
1137
- n.emitError(
1138
- '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',
1139
- { file: void 0, node: void 0, scope: t.slice(n.basePath.length) }
1140
- );
1141
- return;
1142
- }
1143
- const a = [];
1144
- for (const l of e.matchAll(bn)) {
1145
- const s = l[1], c = Rn(s), p = e.indexOf("{", l.index), d = e.indexOf("}", p), m = e.slice(0, l.index).trimEnd();
1146
- let u = "";
1147
- if (m.endsWith("*/")) {
1148
- const C = m.lastIndexOf("/**");
1149
- u = m.slice(C + 3, -2).trim().replaceAll(xn, "");
1150
- }
1151
- const f = e.slice(p, d).match(Mn)?.[1] || c, S = Dn(c);
1152
- a.push({
1153
- description: `${f}${u ? `
1154
- ${u}` : ""}`,
1155
- url: `${n.config.documentation.publicStoryUrlPrefix}?path=/story/${i}--${S}&singleStory=true`,
1156
- source: void 0
1157
- });
1158
- }
1159
- if (a.length === 0) {
1160
- n.emitError(
1161
- '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',
1162
- { file: void 0, node: void 0, scope: t.slice(n.basePath.length) }
1163
- );
1164
- return;
1165
- }
1166
- const r = n.componentStories[i];
1167
- r === void 0 ? n.componentStories[i] = a : r.push(...a);
1168
- }
1169
- const Pn = /component: ["']([^"']+)["']/u, bn = /export const (\w+)/gu, Mn = /name: ["']([^"']+)["']/u, xn = /^\s*\*\s?/gmu, Dn = (e) => e.toLowerCase().replace(/[ ’–—―′¿'`~!@#$%^&*()_|+\-=?;:'",.<>{}[\]\\/]/giu, "-").replace(/-+/gu, "-").replace(/^-+/u, "").replace(/-+$/u, ""), Rn = (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();
1170
- function Ln(e, t) {
1171
- if (t.config.context.isLuminaMinimalExtraction || t.componentTagName === void 0)
1172
- return;
1173
- const n = e.moduleSpecifier.text, i = /\.(?:css|s[ac]ss|less|styl(?:us)?|postcss|pcss|sss)(\\?|$)/u;
1174
- if (!(n.startsWith(".") && i.test(n)))
1175
- return;
1176
- const r = n.split("?", 1)[0], l = tn.join(t.file.fileName, "..", r), s = Ji(l, "utf-8"), c = In(s);
1177
- c !== void 0 && (t.componentCssFileDocs = c);
1178
- }
1179
- function In(e) {
1180
- const t = [];
1181
- for (const n of e.matchAll(An)) {
1182
- const i = n.groups.name, a = n.groups.description.replaceAll(kn, " ").trim();
1183
- t.push({
1184
- name: i,
1185
- deprecated: void 0,
1186
- summary: void 0,
1187
- description: a.endsWith("*") ? a.slice(0, -1).trim() : a,
1188
- syntax: void 0,
1189
- default: void 0
1190
- });
1191
- }
1192
- return t.length === 0 ? void 0 : t;
1193
- }
1194
- const An = /@prop\s+(?<name>--[\w-]+)\s*:(?<description>[^@/]+)/gu, kn = /\n\s+\*? ?/gu;
1195
- function pi(e, t) {
1196
- if (e === void 0)
1197
- return !1;
1198
- for (let n = 0; n < e.length; ++n)
1199
- if (e[n].kind === t)
1200
- return !0;
1201
- return !1;
1202
- }
1203
- function tt(e) {
1204
- if (e.modifiers === void 0)
1205
- return 0;
1206
- for (let t = 0; t < e.modifiers.length; ++t)
1207
- if (e.modifiers[t].kind === o.SyntaxKind.ExportKeyword)
1208
- return e.modifiers[t + 1]?.kind === o.SyntaxKind.DefaultKeyword ? 2 : 1;
1209
- return 0;
1210
- }
1211
- function mi(e, t) {
1212
- return e.endsWith("Properties") && t.apiClassLikeName === e.slice(0, -10);
1213
- }
1214
- const Gn = /* @__PURE__ */ JSON.parse('{"AacBitstreamFormat":[],"AacEncoderConfig":[],"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":[],"AllAcceptedCredentialsOptions":[],"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":["https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/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":["AudioParam"],"AudioParamMap":["AudioParamMap"],"AudioProcessingEvent":["AudioProcessingEvent"],"AudioProcessingEventInit":[],"AudioSampleFormat":[],"AudioScheduledSourceNode":["AudioScheduledSourceNode"],"AudioScheduledSourceNodeEventMap":[],"AudioTimestamp":[],"AudioWorklet":["AudioWorklet"],"AudioWorkletNode":["AudioWorkletNode"],"AudioWorkletNodeEventMap":[],"AudioWorkletNodeOptions":[],"AuthenticationExtensionsClientInputs":[],"AuthenticationExtensionsClientInputsJSON":[],"AuthenticationExtensionsClientOutputs":[],"AuthenticationExtensionsClientOutputsJSON":[],"AuthenticationExtensionsLargeBlobInputs":[],"AuthenticationExtensionsLargeBlobInputsJSON":[],"AuthenticationExtensionsLargeBlobOutputs":[],"AuthenticationExtensionsLargeBlobOutputsJSON":[],"AuthenticationExtensionsPRFInputs":[],"AuthenticationExtensionsPRFInputsJSON":[],"AuthenticationExtensionsPRFOutputs":[],"AuthenticationExtensionsPRFOutputsJSON":[],"AuthenticationExtensionsPRFValues":[],"AuthenticationExtensionsPRFValuesJSON":[],"AuthenticationResponseJSON":[],"AuthenticatorAssertionResponse":["AuthenticatorAssertionResponse"],"AuthenticatorAssertionResponseJSON":[],"AuthenticatorAttachment":[],"AuthenticatorAttestationResponse":["AuthenticatorAttestationResponse"],"AuthenticatorAttestationResponseJSON":[],"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":["BaseAudioContext"],"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":["Cache"],"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":["arc"],"CanvasPathDrawingStyles":["lineCap"],"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":[],"CommandEvent":["CommandEvent"],"CommandEventInit":[],"Comment":["Comment"],"CompositeOperation":[],"CompositeOperationOrAuto":[],"CompositionEvent":["CompositionEvent"],"CompositionEventInit":[],"CompressionFormat":[],"CompressionStream":["CompressionStream"],"ComputedEffectTiming":[],"ComputedKeyframe":[],"ConcatArray":[],"confirm":["Window/confirm"],"console":[],"Console":["console"],"ConstantSourceNode":["ConstantSourceNode"],"ConstantSourceOptions":[],"ConstrainBoolean":[],"ConstrainBooleanOrDOMString":[],"ConstrainBooleanOrDOMStringParameters":[],"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":["CookieStoreManager"],"COSEAlgorithmIdentifier":[],"CountQueuingStrategy":["CountQueuingStrategy"],"createImageBitmap":["Window/createImageBitmap"],"Credential":["Credential"],"CredentialCreationOptions":[],"CredentialMediationRequirement":[],"CredentialPropertiesOutput":[],"CredentialRequestOptions":[],"CredentialsContainer":["CredentialsContainer"],"crossOriginIsolated":[],"crypto":[],"Crypto":["Crypto"],"CryptoKey":["CryptoKey"],"CryptoKeyPair":[],"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"],"CSSPageDescriptors":["CSSPageDescriptors"],"CSSPageRule":["CSSPageRule"],"CSSPerspective":["CSSPerspective"],"CSSPerspectiveValue":[],"CSSPositionTryDescriptors":["CSSPositionTryDescriptors"],"CSSPositionTryRule":["CSSPositionTryRule"],"CSSPropertyRule":["CSSPropertyRule"],"CSSRotate":["CSSRotate"],"CSSRule":["CSSRule"],"CSSRuleList":["CSSRuleList"],"CSSScale":["CSSScale"],"CSSScopeRule":["CSSScopeRule"],"CSSSkew":["CSSSkew"],"CSSSkewX":["CSSSkewX"],"CSSSkewY":["CSSSkewY"],"CSSStartingStyleRule":["CSSStartingStyleRule"],"CSSStyleDeclaration":[],"CSSStyleDeclarationBase":["CSSStyleDeclaration"],"CSSStyleProperties":["CSSStyleProperties"],"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":["CSSViewTransitionRule"],"CurrentUserDetailsOptions":[],"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":[],"DigitalCredential":[],"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":[],"globalThis":["https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/globalThis"],"GLsizei":[],"GLsizeiptr":[],"GLuint":[],"GLuint64":[],"GPU":["GPU"],"GPUAdapter":["GPUAdapter"],"GPUAdapterInfo":["GPUAdapterInfo"],"GPUAddressMode":[],"GPUAutoLayoutMode":[],"GPUBindGroup":["GPUBindGroup"],"GPUBindGroupDescriptor":[],"GPUBindGroupEntry":[],"GPUBindGroupLayout":["GPUBindGroupLayout"],"GPUBindGroupLayoutDescriptor":[],"GPUBindGroupLayoutEntry":[],"GPUBindingCommandsMixin":["setBindGroup"],"GPUBindingResource":[],"GPUBlendComponent":[],"GPUBlendFactor":[],"GPUBlendOperation":[],"GPUBlendState":[],"GPUBuffer":["GPUBuffer"],"GPUBufferBinding":[],"GPUBufferBindingLayout":[],"GPUBufferBindingType":[],"GPUBufferDescriptor":[],"GPUBufferDynamicOffset":[],"GPUBufferMapState":[],"GPUBufferUsageFlags":[],"GPUCanvasAlphaMode":[],"GPUCanvasConfiguration":[],"GPUCanvasContext":["GPUCanvasContext"],"GPUCanvasToneMapping":[],"GPUCanvasToneMappingMode":[],"GPUColor":[],"GPUColorDict":[],"GPUColorTargetState":[],"GPUColorWriteFlags":[],"GPUCommandBuffer":["GPUCommandBuffer"],"GPUCommandBufferDescriptor":[],"GPUCommandEncoder":["GPUCommandEncoder"],"GPUCommandEncoderDescriptor":[],"GPUCompareFunction":[],"GPUCompilationInfo":["GPUCompilationInfo"],"GPUCompilationMessage":["GPUCompilationMessage"],"GPUCompilationMessageType":[],"GPUComputePassDescriptor":[],"GPUComputePassEncoder":["GPUComputePassEncoder"],"GPUComputePassTimestampWrites":[],"GPUComputePipeline":["GPUComputePipeline"],"GPUComputePipelineDescriptor":[],"GPUCopyExternalImageDestInfo":[],"GPUCopyExternalImageSource":[],"GPUCopyExternalImageSourceInfo":[],"GPUCullMode":[],"GPUDebugCommandsMixin":["insertDebugMarker"],"GPUDepthBias":[],"GPUDepthStencilState":[],"GPUDevice":["GPUDevice"],"GPUDeviceDescriptor":[],"GPUDeviceEventMap":[],"GPUDeviceLostInfo":["GPUDeviceLostInfo"],"GPUDeviceLostReason":[],"GPUError":["GPUError"],"GPUErrorFilter":[],"GPUExtent3D":[],"GPUExtent3DDict":[],"GPUExternalTexture":["GPUExternalTexture"],"GPUExternalTextureBindingLayout":[],"GPUExternalTextureDescriptor":[],"GPUFeatureName":[],"GPUFilterMode":[],"GPUFlagsConstant":[],"GPUFragmentState":[],"GPUFrontFace":[],"GPUIndex32":[],"GPUIndexFormat":[],"GPUIntegerCoordinate":[],"GPUIntegerCoordinateOut":[],"GPUInternalError":["GPUInternalError"],"GPULoadOp":[],"GPUMapModeFlags":[],"GPUMipmapFilterMode":[],"GPUMultisampleState":[],"GPUObjectBase":["label"],"GPUObjectDescriptorBase":[],"GPUOrigin2D":[],"GPUOrigin2DDict":[],"GPUOrigin3D":[],"GPUOrigin3DDict":[],"GPUOutOfMemoryError":["GPUOutOfMemoryError"],"GPUPipelineBase":["getBindGroupLayout"],"GPUPipelineConstantValue":[],"GPUPipelineDescriptorBase":[],"GPUPipelineError":["GPUPipelineError"],"GPUPipelineErrorInit":[],"GPUPipelineErrorReason":[],"GPUPipelineLayout":["GPUPipelineLayout"],"GPUPipelineLayoutDescriptor":[],"GPUPowerPreference":[],"GPUPrimitiveState":[],"GPUPrimitiveTopology":[],"GPUProgrammableStage":[],"GPUQuerySet":["GPUQuerySet"],"GPUQuerySetDescriptor":[],"GPUQueryType":[],"GPUQueue":["GPUQueue"],"GPUQueueDescriptor":[],"GPURenderBundle":["GPURenderBundle"],"GPURenderBundleDescriptor":[],"GPURenderBundleEncoder":["GPURenderBundleEncoder"],"GPURenderBundleEncoderDescriptor":[],"GPURenderCommandsMixin":["draw"],"GPURenderPassColorAttachment":[],"GPURenderPassDepthStencilAttachment":[],"GPURenderPassDescriptor":[],"GPURenderPassEncoder":["GPURenderPassEncoder"],"GPURenderPassLayout":[],"GPURenderPassTimestampWrites":[],"GPURenderPipeline":["GPURenderPipeline"],"GPURenderPipelineDescriptor":[],"GPURequestAdapterOptions":[],"GPUSampleMask":[],"GPUSampler":["GPUSampler"],"GPUSamplerBindingLayout":[],"GPUSamplerBindingType":[],"GPUSamplerDescriptor":[],"GPUShaderModule":["GPUShaderModule"],"GPUShaderModuleDescriptor":[],"GPUShaderStageFlags":[],"GPUSignedOffset32":[],"GPUSize32":[],"GPUSize32Out":[],"GPUSize64":[],"GPUSize64Out":[],"GPUStencilFaceState":[],"GPUStencilOperation":[],"GPUStencilValue":[],"GPUStorageTextureAccess":[],"GPUStorageTextureBindingLayout":[],"GPUStoreOp":[],"GPUSupportedFeatures":["GPUSupportedFeatures"],"GPUSupportedLimits":["GPUSupportedLimits"],"GPUTexelCopyBufferInfo":[],"GPUTexelCopyBufferLayout":[],"GPUTexelCopyTextureInfo":[],"GPUTexture":["GPUTexture"],"GPUTextureAspect":[],"GPUTextureBindingLayout":[],"GPUTextureDescriptor":[],"GPUTextureDimension":[],"GPUTextureFormat":[],"GPUTextureSampleType":[],"GPUTextureUsageFlags":[],"GPUTextureView":["GPUTextureView"],"GPUTextureViewDescriptor":[],"GPUTextureViewDimension":[],"GPUUncapturedErrorEvent":["GPUUncapturedErrorEvent"],"GPUUncapturedErrorEventInit":[],"GPUValidationError":["GPUValidationError"],"GPUVertexAttribute":[],"GPUVertexBufferLayout":[],"GPUVertexFormat":[],"GPUVertexState":[],"GPUVertexStepMode":[],"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":["IDBDatabase"],"IDBDatabaseEventMap":[],"IDBDatabaseInfo":[],"IDBFactory":["IDBFactory"],"IDBIndex":["IDBIndex"],"IDBIndexParameters":[],"IDBKeyRange":["IDBKeyRange"],"IDBObjectStore":["IDBObjectStore"],"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":[],"ImageDataPixelFormat":[],"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":[],"DurationFormat":[],"DurationFormatDisplayOption":[],"DurationFormatLocaleMatcher":[],"DurationFormatOptions":[],"DurationFormatPart":[],"DurationFormatStyle":[],"DurationFormatUnit":[],"DurationFormatUnitSingular":[],"FormattableTemporalObject":[],"getCanonicalLocales":[],"LDMLPluralRule":[],"ListFormat":[],"ListFormatLocaleMatcher":[],"ListFormatOptions":[],"ListFormatStyle":[],"ListFormatType":[],"Locale":["getCalendars"],"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":[],"NumberFormatRangePartTypeRegistry":[],"NumberFormatRangePartTypes":[],"NumberRangeFormatPart":[],"PluralRules":[],"PluralRulesConstructor":[],"PluralRulesOptions":[],"PluralRuleType":[],"RelativeTimeFormat":[],"RelativeTimeFormatLocaleMatcher":[],"RelativeTimeFormatNumeric":[],"RelativeTimeFormatOptions":[],"RelativeTimeFormatPart":[],"RelativeTimeFormatStyle":[],"RelativeTimeFormatUnit":[],"RelativeTimeFormatUnitSingular":[],"ResolvedCollatorOptions":[],"ResolvedDateTimeFormatOptions":[],"ResolvedDisplayNamesOptions":[],"ResolvedDurationFormatOptions":[],"ResolvedListFormatOptions":[],"ResolvedNumberFormatOptions":[],"ResolvedNumberFormatOptionsUseGrouping":[],"ResolvedPluralRulesOptions":[],"ResolvedRelativeTimeFormatOptions":[],"ResolvedSegmenterOptions":[],"SegmentData":[],"Segmenter":[],"SegmenterOptions":[],"SegmentIterator":[],"Segments":[],"StringNumericLiteral":[],"supportedValuesOf":[],"TextInfo":["https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Intl/Locale/getTextInfo#return_value"],"UnicodeBCP47LocaleIdentifier":[],"WeekInfo":["https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Intl/Locale/getWeekInfo#return_value"]}],"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":["MIDIOutput"],"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":[],"NavigateEvent":["NavigateEvent"],"NavigateEventInit":[],"navigation":[],"Navigation":["Navigation"],"NavigationActivation":["NavigationActivation"],"NavigationCurrentEntryChangeEvent":["NavigationCurrentEntryChangeEvent"],"NavigationCurrentEntryChangeEventInit":[],"NavigationDestination":["NavigationDestination"],"NavigationEventMap":[],"NavigationFocusReset":[],"NavigationHistoryBehavior":[],"NavigationHistoryEntry":["NavigationHistoryEntry"],"NavigationHistoryEntryEventMap":[],"NavigationInterceptHandler":[],"NavigationInterceptOptions":[],"NavigationNavigateOptions":[],"NavigationOptions":[],"NavigationPrecommitController":["NavigationPrecommitController"],"NavigationPrecommitHandler":[],"NavigationPreloadManager":["NavigationPreloadManager"],"NavigationPreloadState":[],"NavigationReloadOptions":[],"NavigationResult":[],"NavigationScrollBehavior":[],"NavigationTimingType":[],"NavigationTransition":["NavigationTransition"],"NavigationType":[],"NavigationUpdateCurrentEntryOptions":[],"navigator":[],"Navigator":["Navigator"],"NavigatorAutomationInformation":["webdriver"],"NavigatorBadge":["clearAppBadge"],"NavigatorConcurrentHardware":["hardwareConcurrency"],"NavigatorContentUtils":["registerProtocolHandler"],"NavigatorCookies":["cookieEnabled"],"NavigatorGPU":["gpu"],"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":[],"oncommand":[],"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":[],"OrientationLockType":[],"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":[],"PaintTimingMixin":[],"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":[],"PopoverTargetAttributes":["popoverTargetAction"],"PopStateEvent":["PopStateEvent"],"PopStateEventInit":[],"PositionAlignSetting":[],"PositionCallback":[],"PositionErrorCallback":[],"PositionOptions":[],"postMessage":["DedicatedWorkerGlobalScope/postMessage"],"PredefinedColorSpace":[],"PremultiplyAlpha":[],"PresentationStyle":[],"print":["Window/print"],"ProcessingInstruction":["ProcessingInstruction"],"ProgressEvent":["ProgressEvent"],"ProgressEventInit":[],"Promise":["https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/Promise"],"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":[],"PublicKeyCredentialParameters":[],"PublicKeyCredentialRequestOptions":[],"PublicKeyCredentialRequestOptionsJSON":[],"PublicKeyCredentialRpEntity":[],"PublicKeyCredentialType":[],"PublicKeyCredentialUserEntity":[],"PublicKeyCredentialUserEntityJSON":[],"PushEncryptionKeyName":[],"PushEvent":["PushEvent"],"PushEventInit":[],"PushManager":["PushManager"],"PushManagerAttribute":["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"],"ReadableStreamBYOBReaderReadOptions":[],"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":[],"RegistrationResponseJSON":[],"releaseEvents":["Window/releaseEvents"],"RemotePlayback":["RemotePlayback"],"RemotePlaybackAvailabilityCallback":[],"RemotePlaybackEventMap":[],"RemotePlaybackState":[],"removeEventListener":[],"RenderingContext":[],"Report":[],"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":[],"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"],"RTCRtpReceiverTransform":[],"RTCRtpScriptTransform":["RTCRtpScriptTransform"],"RTCRtpScriptTransformer":["RTCRtpScriptTransformer"],"RTCRtpSender":["RTCRtpSender"],"RTCRtpSenderTransform":[],"RTCRtpSendParameters":[],"RTCRtpStreamStats":[],"RTCRtpSynchronizationSource":[],"RTCRtpTransceiver":["RTCRtpTransceiver"],"RTCRtpTransceiverDirection":[],"RTCRtpTransceiverInit":[],"RTCSctpTransport":["RTCSctpTransport"],"RTCSctpTransportEventMap":[],"RTCSctpTransportState":[],"RTCSdpType":[],"RTCSentRtpStreamStats":[],"RTCSessionDescription":["RTCSessionDescription"],"RTCSessionDescriptionCallback":[],"RTCSessionDescriptionInit":[],"RTCSetParameterOptions":[],"RTCSignalingState":[],"RTCStats":[],"RTCStatsIceCandidatePairState":[],"RTCStatsReport":["RTCStatsReport"],"RTCStatsType":[],"RTCTrackEvent":["RTCTrackEvent"],"RTCTrackEventInit":[],"RTCTransformEvent":["RTCTransformEvent"],"RTCTransportStats":[],"SafeArray":[],"Sanitizer":["allowAttribute"],"SanitizerAttribute":[],"SanitizerAttributeNamespace":[],"SanitizerConfig":[],"SanitizerElement":[],"SanitizerElementNamespace":[],"SanitizerElementNamespaceWithAttributes":[],"SanitizerElementWithAttributes":[],"SanitizerPresets":[],"scheduler":[],"Scheduler":["Scheduler"],"SchedulerPostTaskCallback":[],"SchedulerPostTaskOptions":[],"screen":[],"Screen":["Screen"],"screenLeft":[],"ScreenOrientation":["ScreenOrientation"],"ScreenOrientationEventMap":[],"screenTop":[],"screenX":[],"screenY":[],"ScriptProcessorNode":["ScriptProcessorNode"],"ScriptProcessorNodeEventMap":[],"scroll":["Window/scroll"],"ScrollAxis":[],"scrollbars":[],"ScrollBehavior":[],"scrollBy":["Window/scrollBy"],"ScrollIntoViewOptions":[],"ScrollLogicalPosition":[],"ScrollOptions":[],"ScrollRestoration":[],"ScrollSetting":[],"ScrollTimeline":["ScrollTimeline"],"ScrollTimelineOptions":[],"scrollTo":["Window/scrollTo"],"ScrollToOptions":[],"scrollX":[],"scrollY":[],"SecurityPolicyViolationEvent":["SecurityPolicyViolationEvent"],"SecurityPolicyViolationEventDisposition":[],"SecurityPolicyViolationEventInit":[],"Selection":["Selection"],"SelectionDirection":[],"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":[],"ShowPopoverOptions":[],"SlotAssignmentMode":[],"Slottable":["assignedSlot"],"SourceBuffer":["SourceBuffer"],"SourceBufferEventMap":[],"SourceBufferList":["SourceBufferList"],"SourceBufferListEventMap":[],"SpeechRecognitionAlternative":["SpeechRecognitionAlternative"],"SpeechRecognitionErrorCode":[],"SpeechRecognitionErrorEvent":["SpeechRecognitionErrorEvent"],"SpeechRecognitionErrorEventInit":[],"SpeechRecognitionEvent":["SpeechRecognitionEvent"],"SpeechRecognitionEventInit":[],"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":[],"StylePropertyMap":["StylePropertyMap"],"StylePropertyMapReadOnly":["StylePropertyMapReadOnly"],"StylePropertyMapReadOnlyIterator":[],"StyleSheet":["StyleSheet"],"StyleSheetList":["StyleSheetList"],"SubmitEvent":["SubmitEvent"],"SubmitEventInit":[],"SubtleCrypto":["SubtleCrypto"],"SuppressedError":[],"SuppressedErrorConstructor":[],"SvcOutputMetadata":[],"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":[],"TaskController":["TaskController"],"TaskControllerInit":[],"TaskPriority":[],"TaskPriorityChangeEvent":["TaskPriorityChangeEvent"],"TaskPriorityChangeEventInit":[],"TaskSignal":["TaskSignal"],"TaskSignalAnyInit":[],"TaskSignalEventMap":[],"TemplateStringsArray":[],"Temporal":[null,{"CalendarLike":[],"DateLikeObject":[],"DateTimeLikeObject":[],"DateUnit":[],"DisambiguationOptions":[],"Duration":[],"DurationConstructor":[],"DurationLike":[],"DurationLikeObject":[],"DurationRelativeToOptions":[],"DurationRoundingOptions":[],"DurationToStringOptions":[],"DurationTotalOptions":[],"Instant":[],"InstantConstructor":[],"InstantLike":[],"InstantToStringOptions":[],"Now":[null,{"instant":[],"plainDateISO":[],"plainDateTimeISO":[],"plainTimeISO":[],"timeZoneId":[],"zonedDateTimeISO":[]}],"OverflowOptions":[],"PartialTemporalLike":[],"PlainDate":[],"PlainDateConstructor":[],"PlainDateLike":[],"PlainDateTime":[],"PlainDateTimeConstructor":[],"PlainDateTimeLike":[],"PlainDateTimeToStringOptions":[],"PlainDateToStringOptions":[],"PlainDateToZonedDateTimeOptions":[],"PlainMonthDay":[],"PlainMonthDayConstructor":[],"PlainMonthDayLike":[],"PlainMonthDayToPlainDateOptions":[],"PlainTime":[],"PlainTimeConstructor":[],"PlainTimeLike":[],"PlainTimeToStringOptions":[],"PlainYearMonth":[],"PlainYearMonthConstructor":[],"PlainYearMonthLike":[],"PlainYearMonthToPlainDateOptions":[],"PluralizeUnit":[],"RoundingOptions":[],"RoundingOptionsWithLargestUnit":[],"TimeLikeObject":[],"TimeUnit":[],"TimeZoneLike":[],"ToStringRoundingOptions":[],"ToStringRoundingOptionsWithFractionalSeconds":[],"TransitionOptions":[],"YearMonthLikeObject":[],"ZonedDateTime":[],"ZonedDateTimeConstructor":[],"ZonedDateTimeFromOptions":[],"ZonedDateTimeLike":[],"ZonedDateTimeLikeObject":[],"ZonedDateTimeToStringOptions":[]}],"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"],"TimelineRangeOffset":[],"TimeRanges":["TimeRanges"],"TimerHandler":[],"ToggleEvent":["ToggleEvent"],"ToggleEventInit":[],"TogglePopoverOptions":[],"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":[],"UnknownCredentialOptions":[],"Uppercase":["https://www.typescriptlang.org/docs/handbook/utility-types.html#intrinsic-string-manipulation-types"],"URIError":[],"URIErrorConstructor":[],"URL":["URL"],"URLPattern":["URLPattern"],"URLPatternComponentResult":[],"URLPatternInit":[],"URLPatternInput":[],"URLPatternOptions":[],"URLPatternResult":[],"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":[],"ViewTimeline":["ViewTimeline"],"ViewTimelineOptions":[],"ViewTransition":["ViewTransition"],"ViewTransitionTypeSet":["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,{"AddressType":[],"AddressValue":[],"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"],"Exception":["https://developer.mozilla.org/docs/WebAssembly/Reference/JavaScript_interface/Exception"],"ExceptionOptions":[],"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"],"JSTag":[],"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":[],"Tag":["https://developer.mozilla.org/docs/WebAssembly/Reference/JavaScript_interface/Tag"],"TagType":[],"validate":["https://developer.mozilla.org/docs/WebAssembly/Reference/JavaScript_interface/validate_static"],"ValueType":[],"ValueTypeMap":[],"WebAssemblyCompileOptions":[],"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":["WEBGL_draw_buffers"],"WEBGL_lose_context":["WEBGL_lose_context"],"WEBGL_multi_draw":["WEBGL_multi_draw"],"WebGL2RenderingContext":["WebGL2RenderingContext"],"WebGL2RenderingContextBase":["beginQuery"],"WebGL2RenderingContextOverloads":["bufferData"],"WebGLActiveInfo":["WebGLActiveInfo"],"WebGLBuffer":["WebGLBuffer"],"WebGLContextAttributes":[],"WebGLContextEvent":["WebGLContextEvent"],"WebGLContextEventInit":[],"WebGLFramebuffer":["WebGLFramebuffer"],"WebGLPowerPreference":[],"WebGLProgram":["WebGLProgram"],"WebGLQuery":["WebGLQuery"],"WebGLRenderbuffer":["WebGLRenderbuffer"],"WebGLRenderingContext":["WebGLRenderingContext"],"WebGLRenderingContextBase":["drawingBufferColorSpace"],"WebGLRenderingContextOverloads":["bufferData"],"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":[],"WGSLLanguageFeatures":["WGSLLanguageFeatures"],"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"]}'), Fn = {
1215
- globals: Gn
1216
- }, ut = Object.freeze(
1217
- Object.assign(/* @__PURE__ */ Object.create(null), Fn.globals)
1218
- ), ft = "https://developer.mozilla.org/docs/Web/API/";
1219
- function ui(e, t, n = "*", i) {
1220
- if (e === "@arcgis/core")
1221
- return On(t, n, i);
1222
- }
1223
- function On(e, t, n) {
1224
- if (!(e === void 0 || e === "interfaces.d.ts")) {
1225
- const i = `https://${n.config.documentation.host}${Nn}${Z(e)}/`;
1226
- return Gi(i, t === "default" || t === "*" ? void 0 : t, void 0);
1227
- }
1228
- }
1229
- const Nn = ei("core");
1230
- function je(e, t, n, i) {
1231
- i.implicitPublicModules ??= /* @__PURE__ */ Object.create(null);
1232
- const a = i.implicitPublicModules[e];
1233
- a === void 0 ? i.implicitPublicModules[e] = {
1234
- actualModulePath: void 0,
1235
- // moduleResolution:Node16 may use .js extension to refer to non-JS files
1236
- // We strip the extension, and manually guess the extension in worker.ts
1237
- sourcePath: t.endsWith(".js") ? t.slice(0, -3) : t,
1238
- pendingNames: n === "*" ? void 0 : /* @__PURE__ */ new Set([n]),
1239
- extractedNames: /* @__PURE__ */ new Set()
1240
- } : a.pendingNames !== void 0 && n !== "*" ? a.pendingNames.add(n) : a.pendingNames = void 0;
1241
- }
1242
- function wn(e, t) {
1243
- const n = tt(e);
1244
- if (t.pendingNames === void 0)
1245
- return n > 0;
1246
- if (n === 2 && t.pendingNames.has("default"))
1247
- return !0;
1248
- const a = (e.name ?? e.declarationList?.declarations[0].name).escapedText;
1249
- return t.pendingNames.has(a);
1250
- }
1251
- function Je(e, t, n, i, a) {
1252
- const r = n.program.getTypeChecker(), l = e.flags & o.SymbolFlags.Alias ? r.getAliasedSymbol(e) : e, s = Kn(l), c = t.escapedText, p = s ?? c, d = l?.declarations?.[0];
1253
- if (d === void 0)
1254
- return n.emitError(`Unable to resolve the declaration file name for the type ${p}`, {
1255
- file: n.file,
1256
- node: void 0
1257
- }), {
1258
- name: p,
1259
- module: void 0,
1260
- package: le,
1261
- viewUrl: void 0,
1262
- start: i,
1263
- end: a
1264
- };
1265
- const m = d.getSourceFile(), { packageName: u, modulePath: f } = Vn(m.fileName, n, p);
1266
- if (u === "@arcgis/core" && f === "interfaces.js")
1267
- return n.moduleContext.importsMap.__esri = {
1268
- type: "*",
1269
- modulePath: void 0,
1270
- rawSpecifier: `${u}/${f}`,
1271
- replacementName: void 0,
1272
- actualName: void 0,
1273
- wasUsed: !0
1274
- }, {
1275
- name: "__esri",
1276
- module: f,
1277
- package: u,
1278
- viewUrl: void 0,
1279
- start: i,
1280
- end: a
1281
- };
1282
- if (u === "typescript" && f?.startsWith("lib/") === !0) {
1283
- let v = ut[p], P, h = p;
1284
- if (v === void 0) {
1285
- for (let L = d.parent; L !== void 0; L = L.parent)
1286
- if (o.isModuleDeclaration(L) && o.isIdentifier(L.name)) {
1287
- P = L.name.escapedText, v = ut[P]?.[1]?.[p], h = `${P}.${p}`, be(t, h);
1288
- break;
1289
- }
1290
- }
1291
- return {
1292
- name: h,
1293
- module: void 0,
1294
- package: le,
1295
- viewUrl: v?.[0]?.startsWith("https") === !1 ? `${ft}${v[0]}` : v?.[0] ?? void 0,
1296
- start: i,
1297
- end: i + h.length
1298
- };
1299
- }
1300
- let S = p;
1301
- if (u !== void 0 && f === void 0 && s?.startsWith("HTML") === !0 && d.parent.kind === o.SyntaxKind.ModuleBlock && d.parent.parent.kind === o.SyntaxKind.ModuleDeclaration && d.parent.parent.name.escapedText === "global") {
1302
- if (s.endsWith("Element")) {
1303
- const v = o.isInterfaceDeclaration(d) ? d.heritageClauses?.[0]?.types[0]?.expression : o.isTypeAliasDeclaration(d) && o.isTypeReferenceNode(d.type) ? d.type.typeName : void 0;
1304
- if (v !== void 0 && o.isIdentifier(v)) {
1305
- const P = r.getSymbolAtLocation(v);
1306
- if (P !== void 0) {
1307
- const h = r.getAliasedSymbol(P);
1308
- return Je(
1309
- h,
1310
- t,
1311
- n,
1312
- i,
1313
- i + h.escapedName.length
1314
- );
1315
- }
1316
- }
1317
- } else if (
1318
- // Only supporting the syntax after
1319
- // https://devtopia.esri.com/WebGIS/arcgis-web-components/pull/10794
1320
- // As this interface is not likely to be used directly.
1321
- s.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"
1322
- ) {
1323
- const v = r.getSymbolAtLocation(d.type.objectType.typeName);
1324
- if (v !== void 0) {
1325
- const P = r.getAliasedSymbol(v), h = Je(
1326
- P,
1327
- t,
1328
- n,
1329
- i,
1330
- i + P.escapedName.length
1331
- );
1332
- return be(t, c), be(t, `${h.name}["@eventTypes"]`), h;
1333
- }
1334
- }
1335
- }
1336
- if (u !== void 0 || f !== void 0) {
1337
- const v = s ?? ((f ?? u).split("/").pop()?.replaceAll(Un, "") || "type");
1338
- for (let P = 1; ; P += 1) {
1339
- const h = P === 1 ? v : `${v}${P}`;
1340
- let L = n.functionLikeTypeParameters?.has(h) === !0 || n.objectLikeTypeParameters?.has(h) === !0 || n.localDeclarations.has(h);
1341
- if (L)
1342
- continue;
1343
- const b = n.moduleContext.importsMap[h], y = b !== void 0 && (u === void 0 ? b.modulePath === f : b.rawSpecifier === u + (f === void 0 ? "" : `/${f}`));
1344
- if (y ? b.wasUsed = !0 : L = n.moduleContext.importsMap[h] !== void 0, L)
1345
- continue;
1346
- const k = h !== c;
1347
- k && (be(t, h), a = i + h.length);
1348
- const D = Hn(l), I = D === "named";
1349
- I || (S = D), u === void 0 && !n.config.strict && je(
1350
- f,
1351
- m.fileName.slice(n.basePath.length),
1352
- S,
1353
- n
1354
- ), y || (n.moduleContext.importsMap[h] = {
1355
- type: D,
1356
- modulePath: u === void 0 ? f : void 0,
1357
- rawSpecifier: u === void 0 ? "" : u + (f === void 0 ? "" : `/${f}`),
1358
- replacementName: void 0,
1359
- actualName: I && k ? s : void 0,
1360
- wasUsed: !0
1361
- });
1362
- break;
1363
- }
1364
- } else if (n.localPrivateDeclarations?.has(c) === !0)
1365
- n.localPrivateDeclarations.set(
1366
- c,
1367
- Math.abs(n.localPrivateDeclarations.get(c))
1368
- );
1369
- else {
1370
- if (d.kind === o.SyntaxKind.TypeParameter)
1371
- return {
1372
- name: c,
1373
- module: void 0,
1374
- package: void 0,
1375
- viewUrl: void 0,
1376
- start: i,
1377
- end: a
1378
- };
1379
- n.localDeclarations.has(c) || n.emitError(
1380
- `@public declaration referenced non-public ${ie("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.`,
1381
- {
1382
- file: n.file,
1383
- node: void 0
1384
- }
1385
- );
1386
- }
1387
- const C = S === "default" || S === "*" ? void 0 : s;
1388
- return u ? {
1389
- name: S,
1390
- module: f || void 0,
1391
- package: u,
1392
- viewUrl: ui(u, f ?? "", C, n),
1393
- start: i,
1394
- end: a
1395
- } : {
1396
- name: S,
1397
- module: f,
1398
- package: void 0,
1399
- viewUrl: Ue(f ?? n.apiModule.path, C, void 0, n),
1400
- start: i,
1401
- end: a
1402
- };
1403
- }
1404
- const Un = /[^a-zA-Z0-9$_]/gu;
1405
- function Vn(e, t, n) {
1406
- const i = e.lastIndexOf(rt);
1407
- if (i !== -1) {
1408
- const s = e.slice(i + rt.length), c = fi(s), p = e.slice(
1409
- 0,
1410
- i + rt.length + c.packageName.length
1411
- ), d = ct(p);
1412
- return Wt(c), c.modulePath = _t(c.modulePath, d, t, n), c;
1413
- }
1414
- const r = e.indexOf(Wn);
1415
- if (r !== -1) {
1416
- const s = e.slice(0, r), c = ct(s), p = c.name, d = e.slice(r + 1), m = _t(d, c, t, n), u = { packageName: p, modulePath: m };
1417
- return Wt(u), u;
1418
- }
1419
- if (e.startsWith(t.basePath)) {
1420
- const s = e.slice(t.basePath.length), c = Ve(Z(s), t);
1421
- return c === t.apiModule.path ? {
1422
- packageName: void 0,
1423
- modulePath: void 0
1424
- } : {
1425
- packageName: void 0,
1426
- modulePath: c
1427
- };
1428
- } else
1429
- return t.emitError(
1430
- `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)`,
1431
- {
1432
- file: t.file,
1433
- node: void 0
1434
- }
1435
- ), {
1436
- packageName: le,
1437
- modulePath: void 0
1438
- };
1439
- }
1440
- const rt = "/node_modules/", Wn = "/dist/";
1441
- function fi(e) {
1442
- const t = dt(e), n = e.length === t.length ? void 0 : e.slice(t.length + 1);
1443
- return { packageName: t, modulePath: n };
1444
- }
1445
- function Wt(e) {
1446
- e.packageName?.startsWith("@types/") === !0 && (e.packageName = e.packageName.slice(7));
1447
- }
1448
- function _t(e, t, n, i) {
1449
- const a = Z(e);
1450
- if (t.exports === void 0)
1451
- return `${a}.js`;
1452
- const r = `./${a}`, l = "@arcgis/lumina" in (t.dependencies ?? {}) && r.endsWith("/customElement") ? `${r.slice(0, -13)}index` : r;
1453
- let s = yt(t.exports, ".", l);
1454
- if (s === void 0 && (s = _n[t.name]?.(a)), s !== void 0)
1455
- return s === "." ? void 0 : s.slice(2);
1456
- const c = n.moduleContext.importsMap[i];
1457
- if (c !== void 0 && c.modulePath === void 0) {
1458
- const p = fi(c.rawSpecifier);
1459
- if (p.packageName === t.name)
1460
- return p.modulePath;
1461
- }
1462
- return n.emitError(
1463
- `Need explicit type annotation for where the ${ie("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.`,
1464
- { file: n.file, node: void 0 }
1465
- ), e;
1466
- }
1467
- const _n = {
1468
- // REFACTOR: dissolve barrel files (match @arcgis/core). then this won't be needed
1469
- "@arcgis/lumina"(e) {
1470
- 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;
1471
- }
1472
- };
1473
- function yt(e, t, n) {
1474
- if (typeof e == "string")
1475
- return Bn(t, e, n);
1476
- if (Array.isArray(e))
1477
- for (let i = 0; i < e.length; ++i) {
1478
- const a = yt(e[i], t, n);
1479
- if (a !== void 0)
1480
- return a;
1481
- }
1482
- if (typeof e == "object" && e !== null)
1483
- for (const [i, a] of Object.entries(e)) {
1484
- const l = i.startsWith(".") ? i : t, s = yt(a, l, n);
1485
- if (s !== void 0)
1486
- return s;
1487
- }
1488
- }
1489
- function Bn(e, t, n) {
1490
- const i = Z(t);
1491
- if (i === n)
1492
- return e;
1493
- const a = i.indexOf("*");
1494
- if (a === -1)
1495
- return;
1496
- const r = i.slice(0, a);
1497
- if (!n.startsWith(r))
1498
- return;
1499
- const l = i.slice(a + 1), s = n.slice(r.length), c = t.slice(i.length);
1500
- if (l === "") {
1501
- const m = Z(e), u = e.slice(m.length), f = m === e && c === "" ? ".js" : u;
1502
- return m.slice(0, -1) + s + f;
1503
- }
1504
- if (!s.endsWith(l))
1505
- return;
1506
- const p = s.slice(0, -l.length), d = e.indexOf("*");
1507
- if (d !== -1)
1508
- return e.slice(0, d) + p + e.slice(d + 1);
1509
- }
1510
- function Kn(e) {
1511
- const t = e.getDeclarations()?.[0];
1512
- 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)))
1513
- return t.name.escapedText;
1514
- const n = e.escapedName;
1515
- return n === "default" || n.startsWith("__") ? void 0 : n;
1516
- }
1517
- function Hn(e) {
1518
- return e.flags & o.SymbolFlags.ValueModule ? "*" : $n(e) ? "default" : "named";
1519
- }
1520
- function $n(e) {
1521
- const t = e.escapedName;
1522
- if (t === "default" || // CommonJS "export ="
1523
- t === "export=")
1524
- return !0;
1525
- const n = e.getDeclarations();
1526
- if (n !== void 0)
1527
- for (let i = 0; i < n.length; ++i) {
1528
- const a = n[i];
1529
- if (o.canHaveModifiers(a) && o.getModifiers(a)?.some((r) => r.kind === o.SyntaxKind.DefaultKeyword))
1530
- return !0;
1531
- }
1532
- return !1;
1533
- }
1534
- function Et(e, t, n, i) {
1535
- const a = { file: n, node: e };
1536
- return e.getText(n).includes("* @public") && i.emitError(
1537
- "@public is not permitted in nested types. See options in documentation: https://webgis.esri.com/references/api-extractor/advanced-patterns#describing-nested-object-types and https://webgis.esri.com/references/api-extractor/api-node-kinds#variables",
1538
- a
1539
- ), _(e, t, a, i);
1540
- }
1541
- const O = {
1542
- false: 0,
1543
- /**
1544
- * True for literal types. False for object types
1545
- */
1546
- shallow: 2,
1547
- true: 1
1548
- };
1549
- function _(e, t, n, i) {
1550
- if (e.kind === o.SyntaxKind.TrueKeyword || e.kind === o.SyntaxKind.FalseKeyword)
1551
- return t === O.false ? o.factory.createKeywordTypeNode(o.SyntaxKind.BooleanKeyword) : o.factory.createLiteralTypeNode(e);
1552
- if (e.kind === o.SyntaxKind.NullKeyword)
1553
- return o.factory.createLiteralTypeNode(e);
1554
- if (e.kind === o.SyntaxKind.UndefinedKeyword || o.isVoidExpression(e))
1555
- return o.factory.createKeywordTypeNode(o.SyntaxKind.UndefinedKeyword);
1556
- if (o.isStringLiteral(e) || o.isNoSubstitutionTemplateLiteral(e))
1557
- return t === O.false ? o.factory.createKeywordTypeNode(o.SyntaxKind.StringKeyword) : o.factory.createLiteralTypeNode(e);
1558
- if (o.isTemplateExpression(e))
1559
- return ge(n, t, i) ?? o.factory.createKeywordTypeNode(o.SyntaxKind.StringKeyword);
1560
- if (o.isNumericLiteral(e))
1561
- return t === O.false ? o.factory.createKeywordTypeNode(o.SyntaxKind.NumberKeyword) : o.factory.createLiteralTypeNode(e);
1562
- if (o.isBigIntLiteral(e))
1563
- return t === O.false ? o.factory.createKeywordTypeNode(o.SyntaxKind.BigIntKeyword) : o.factory.createLiteralTypeNode(e);
1564
- if (o.isAsExpression(e) || o.isTypeAssertionExpression(e))
1565
- return o.isTypeReferenceNode(e.type) && o.isIdentifier(e.type.typeName) && e.type.typeName.escapedText === "const" ? _(e.expression, O.true, n, i) : e.type;
1566
- if (o.isSatisfiesExpression(e))
1567
- return t === O.false ? e.type : _(e.expression, t, n, i);
1568
- if (o.isRegularExpressionLiteral(e))
1569
- return o.factory.createTypeReferenceNode(o.factory.createIdentifier("RegExp"));
1570
- if (o.isArrayLiteralExpression(e)) {
1571
- if (i.isInLuminaMinimalExtraction)
1572
- return we;
1573
- const a = t === O.shallow ? O.false : t, r = new Array(e.elements.length);
1574
- for (let l = 0; l < r.length; ++l) {
1575
- const s = e.elements[l];
1576
- r[l] = _(s, a, { ...n, node: s }, i);
1577
- }
1578
- return a ? o.factory.createTypeOperatorNode(o.SyntaxKind.ReadonlyKeyword, o.factory.createTupleTypeNode(r)) : o.factory.createArrayTypeNode(
1579
- r.length === 1 ? r[0] : o.factory.createUnionTypeNode(r)
1580
- );
1581
- }
1582
- if (o.isObjectLiteralExpression(e)) {
1583
- if (i.isInLuminaMinimalExtraction)
1584
- return we;
1585
- const a = t === O.shallow ? O.false : t, r = new Array(e.properties.length);
1586
- for (let l = 0; l < r.length; ++l) {
1587
- const s = e.properties[l];
1588
- r[l] = zn(s, a, { ...n, node: s }, i);
1589
- }
1590
- return o.factory.createTypeLiteralNode(r);
1591
- }
1592
- if (o.isPrefixUnaryExpression(e)) {
1593
- if (e.operator !== o.SyntaxKind.MinusToken)
1594
- return Pe(n, Q, t, i);
1595
- if (t === O.false)
1596
- return o.factory.createKeywordTypeNode(o.SyntaxKind.NumberKeyword);
1597
- {
1598
- const a = _(e.operand, t, n, i);
1599
- return o.isLiteralTypeNode(a) ? o.factory.createLiteralTypeNode(
1600
- o.factory.createPrefixUnaryExpression(o.SyntaxKind.MinusToken, a.literal)
1601
- ) : Pe(n, Q, t, i);
1602
- }
1603
- }
1604
- if (o.isParenthesizedExpression(e))
1605
- return _(e.expression, t, n, i);
1606
- if (o.isNewExpression(e)) {
1607
- if (i.isInLuminaMinimalExtraction)
1608
- return we;
1609
- if (o.isIdentifier(e.expression)) {
1610
- const r = e.expression.escapedText;
1611
- let l = e.typeArguments, s = !1;
1612
- if ((r === "Set" || r === "WeakSet") && l === void 0)
1613
- if (e.arguments?.[0] !== void 0) {
1614
- const c = _(
1615
- e.arguments[0],
1616
- t,
1617
- { ...n, node: e.arguments[0] },
1618
- i
1619
- );
1620
- c.kind === o.SyntaxKind.ArrayType && (l = [c.elementType]);
1621
- } else
1622
- s = !0;
1623
- else
1624
- s ||= (r === "Map" || r === "WeakMap") && l?.length !== 2;
1625
- if (!s)
1626
- return o.factory.createTypeReferenceNode(e.expression, l);
1627
- }
1628
- const a = _(e.expression, t, n, i);
1629
- if (o.isTypeReferenceNode(a))
1630
- return a;
1631
- }
1632
- if (o.isConditionalExpression(e))
1633
- return o.factory.createUnionTypeNode([
1634
- _(e.whenTrue, t, { ...n, node: e.whenTrue }, i),
1635
- _(e.whenFalse, t, { ...n, node: e.whenFalse }, i)
1636
- ]);
1637
- if (o.isIdentifier(e))
1638
- return ge(n, t, i) ?? o.factory.createTypeQueryNode(e);
1639
- if (o.isPropertyAccessExpression(e) && o.isIdentifier(e.name)) {
1640
- const a = ge(n, t, i);
1641
- if (a !== void 0)
1642
- return a;
1643
- const r = _(e.expression, t, n, i);
1644
- return o.isTypeQueryNode(r) ? o.factory.createTypeQueryNode(o.factory.createQualifiedName(r.exprName, e.name)) : r === vt ? vt : Pe(n, Q, t, i);
1645
- }
1646
- if (o.isCallExpression(e)) {
1647
- const a = e.expression, r = e.arguments.at(0);
1648
- if (o.isPropertyAccessExpression(a) && o.isIdentifier(a.expression) && o.isIdentifier(a.name)) {
1649
- if (a.expression.escapedText === "Collection" && a.name.escapedText === "ofType" && r !== void 0 && o.isIdentifier(r))
1650
- return o.factory.createTypeReferenceNode(a.expression, [
1651
- o.factory.createTypeReferenceNode(r)
1652
- ]);
1653
- if (a.expression.escapedText === "Symbol" && a.name.escapedText === "for")
1654
- return Kt(t);
1655
- } else if (o.isIdentifier(a) && a.escapedText === "Symbol")
1656
- return Kt(t);
1657
- const l = ge(n, t, i);
1658
- if (l !== void 0)
1659
- return l;
1660
- const s = _(a, t, n, i);
1661
- return o.isTypeQueryNode(s) ? o.factory.createTypeReferenceNode(o.factory.createIdentifier("ReturnType"), [
1662
- o.factory.createTypeQueryNode(s.exprName, e.typeArguments)
1663
- ]) : Pe(n, Q, t, i);
1664
- }
1665
- if (o.isArrowFunction(e)) {
1666
- if (i.isInLuminaMinimalExtraction)
1667
- return we;
1668
- const a = t === O.shallow ? O.false : t;
1669
- return o.factory.createFunctionTypeNode(
1670
- e.typeParameters,
1671
- St(e.parameters, a, n, i),
1672
- e.type ?? (o.isBlock(e.body) ? qe(e, i) ?? X(n, Q, i) : _(e.body, a, n, i))
1673
- );
1674
- }
1675
- return Pe(n, Q, t, i);
1676
- }
1677
- function zn(e, t, n, i) {
1678
- const a = t === O.false ? void 0 : Yn;
1679
- return o.isPropertyAssignment(e) ? o.factory.createPropertySignature(
1680
- a,
1681
- e.name,
1682
- void 0,
1683
- _(e.initializer, t, { ...n, node: e.initializer }, i)
1684
- ) : o.isShorthandPropertyAssignment(e) ? o.factory.createPropertySignature(
1685
- a,
1686
- e.name,
1687
- void 0,
1688
- ge(n, t, i) ?? o.factory.createTypeQueryNode(o.factory.createIdentifier(e.name.escapedText))
1689
- ) : o.isSpreadAssignment(e) ? o.factory.createPropertySignature(
1690
- a,
1691
- "_spread",
1692
- void 0,
1693
- X(n, Q, i)
1694
- ) : o.isMethodDeclaration(e) ? o.factory.createPropertySignature(
1695
- a,
1696
- e.name,
1697
- void 0,
1698
- o.factory.createFunctionTypeNode(
1699
- e.typeParameters,
1700
- St(e.parameters, t, n, i),
1701
- e.type ?? qe(e, i) ?? X(n, Q, i)
1702
- )
1703
- ) : o.isGetAccessorDeclaration(e) ? o.factory.createGetAccessorDeclaration(
1704
- void 0,
1705
- e.name,
1706
- // Should always be empty
1707
- e.parameters,
1708
- e.type ?? qe(e, i) ?? X(n, Q, i),
1709
- void 0
1710
- ) : o.factory.createSetAccessorDeclaration(
1711
- void 0,
1712
- e.name,
1713
- St(e.parameters, t, n, i),
1714
- void 0
1715
- );
1716
- }
1717
- function Pe(e, t, n, i) {
1718
- return ge(e, n, i) ?? X(e, t, i);
1719
- }
1720
- function ge(e, t, n) {
1721
- const i = n.program?.getTypeChecker?.();
1722
- if (i !== void 0 && e.node !== void 0) {
1723
- let a;
1724
- const r = t === O.false;
1725
- if (r && e.node.kind === o.SyntaxKind.Identifier) {
1726
- const s = i.getSymbolAtLocation(e.node);
1727
- a = s === void 0 ? void 0 : i.getTypeOfSymbol(s);
1728
- }
1729
- a ??= i.getTypeAtLocation(e.node);
1730
- const l = r ? nn(i, a) : a;
1731
- return it(i, l);
1732
- }
1733
- }
1734
- function it(e, t) {
1735
- const n = t.flags & o.TypeFlags.Union ? t.types.every(Bt) : Bt(t);
1736
- return e.typeToTypeNode(
1737
- t,
1738
- void 0,
1739
- qn & (n ? ~o.TypeFormatFlags.MultilineObjectLiterals : -1)
1740
- );
1741
- }
1742
- const jn = o.TypeFormatFlags.NoTruncation | o.TypeFormatFlags.WriteArrayAsGenericType | o.TypeFormatFlags.SuppressAnyReturnType | o.TypeFormatFlags.MultilineObjectLiterals, Jn = jn & o.TypeFormatFlags.NodeBuilderFlagsMask, qn = Jn | o.NodeBuilderFlags.IgnoreErrors | o.NodeBuilderFlags.NoTruncation, Bt = (e) => e.flags & o.TypeFlags.Object ? e.getProperties().length === 1 : !!(e.flags & o.TypeFlags.PossiblyFalsy);
1743
- function qe(e, t) {
1744
- const n = t.program?.getTypeChecker?.();
1745
- if (n === void 0)
1746
- return;
1747
- const i = n.getSignatureFromDeclaration(e);
1748
- if (i === void 0)
1749
- return;
1750
- const a = n.getReturnTypeOfSignature(i);
1751
- return it(n, a);
1752
- }
1753
- function Qn(e, t) {
1754
- const n = t.program?.getTypeChecker?.();
1755
- if (n === void 0)
1756
- return;
1757
- const i = n.getTypeAtLocation(e);
1758
- return it(n, i);
1759
- }
1760
- function X(e, t, n) {
1761
- return n.isInLuminaMinimalExtraction || n.emitError(t, e), vt;
1762
- }
1763
- const Q = "Failed to infer the type of the expression. Please provide an explicit type annotation or simplify the expression.", vt = o.factory.createKeywordTypeNode(o.SyntaxKind.AnyKeyword), we = o.factory.createKeywordTypeNode(o.SyntaxKind.UnknownKeyword), We = o.factory.createKeywordTypeNode(o.SyntaxKind.VoidKeyword), Xn = o.factory.createToken(o.SyntaxKind.ReadonlyKeyword), Yn = [Xn];
1764
- function St(e, t, n, i) {
1765
- const a = new Array(e.length);
1766
- for (let r = 0; r < a.length; ++r) {
1767
- const l = e[r];
1768
- a[r] = l.initializer === void 0 && o.isIdentifier(l.name) ? l : o.factory.createParameterDeclaration(
1769
- void 0,
1770
- l.dotDotDotToken,
1771
- o.isIdentifier(l.name) ? l.name : o.factory.createIdentifier(`parameter${r}`),
1772
- l.questionToken,
1773
- l.type ?? (l.initializer === void 0 ? X({ ...n, node: l }, Q, i) : _(
1774
- l.initializer,
1775
- t,
1776
- {
1777
- ...n,
1778
- node: l.initializer
1779
- },
1780
- i
1781
- ))
1782
- );
1783
- }
1784
- return a;
1785
- }
1786
- function Kt(e) {
1787
- return e === O.false ? o.factory.createKeywordTypeNode(o.SyntaxKind.SymbolKeyword) : o.factory.createTypeOperatorNode(
1788
- o.SyntaxKind.UniqueKeyword,
1789
- o.factory.createKeywordTypeNode(o.SyntaxKind.SymbolKeyword)
1790
- );
1791
- }
1792
- function Zn(e, t) {
1793
- const n = t.program?.getTypeChecker?.();
1794
- if (n === void 0 || !eo(e.exprName, t))
1795
- return;
1796
- const i = n.getTypeAtLocation(e.exprName);
1797
- return it(n, i);
1798
- }
1799
- function eo(e, t) {
1800
- return e.kind === o.SyntaxKind.QualifiedName ? to(e.left) : t.moduleContext.importsMap[e.escapedText]?.rawSpecifier.endsWith(".json") === !0;
1801
- }
1802
- function to(e) {
1803
- for (; e !== void 0; )
1804
- if (e.kind === o.SyntaxKind.QualifiedName)
1805
- e = e.left;
1806
- else if (e.kind === o.SyntaxKind.Identifier)
1807
- return e.escapedText === "this";
1808
- return !1;
1809
- }
1810
- function j(e, t) {
1811
- if (M = t, _e.clear(), z = [], Qe.clear(), e.pos !== -1 && e.getText(M.file).includes("* @public") && M.emitError(
1812
- "@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/references/api-extractor/advanced-patterns#describing-nested-object-types",
1813
- { file: M.file, node: e }
1814
- ), e.kind === o.SyntaxKind.Identifier || e.kind === o.SyntaxKind.QualifiedName)
1815
- Be(e);
1816
- else if (o.isFunctionTypeNode(e) || o.isConstructorTypeNode(e)) {
1817
- const i = e.typeParameters;
1818
- if (i !== void 0)
1819
- for (let a = 0; a < i.length; ++a) {
1820
- const r = i[a];
1821
- Qe.add(r.name.escapedText);
1822
- }
1823
- }
1824
- return io.writeNode(o.EmitHint.Unspecified, e, void 0, _e), {
1825
- text: _e.getText(),
1826
- references: z.length > 0 ? z : void 0,
1827
- values: void 0,
1828
- source: void 0
1829
- };
1830
- }
1831
- let M;
1832
- const pe = (e, t, n) => {
1833
- switch (t.kind) {
1834
- case o.SyntaxKind.TypeReference:
1835
- const i = t, a = i.typeName;
1836
- switch (a.escapedText) {
1837
- case "nil":
1838
- return pe(e, no, n);
1839
- // Used in public typings in 88 files
1840
- // REFACTOR: consider refactoring out Const usages in public API to
1841
- // reduce divergence
1842
- case "Const":
1843
- return pe(e, i.typeArguments[0], n);
1844
- // In component public types, Lumina's "component" and "el" have the same type
1845
- case "ToElement":
1846
- if (M.isComponentProject)
1847
- return pe(e, i.typeArguments[0], n);
1848
- break;
1849
- /**
1850
- * @see https://webgis.esri.com/references/api-extractor/advanced-patterns#publicprivate-type-divergence
1851
- */
1852
- case "PublicApiNarrowType":
1853
- case "PublicApiRelaxType":
1854
- return pe(e, i.typeArguments[1], n);
1855
- }
1856
- Be(a);
1857
- break;
1858
- case o.SyntaxKind.TypeQuery:
1859
- const l = Zn(t, M);
1860
- if (l !== void 0)
1861
- return pe(e, l, n);
1862
- Be(t.exprName, oo);
1863
- break;
1864
- case o.SyntaxKind.PropertyAccessExpression:
1865
- Be(t);
1866
- break;
1867
- case o.SyntaxKind.InferType:
1868
- case o.SyntaxKind.MappedType:
1869
- const c = t.typeParameter;
1870
- Qe.add(c.name.escapedText);
1871
- break;
1872
- case o.SyntaxKind.TypeLiteral:
1873
- const p = t;
1874
- p.members.length === 1 && ("emitNode" in p && (p.emitNode ??= {}), o.setEmitFlags(p, o.EmitFlags.SingleLine));
1875
- break;
1876
- case o.SyntaxKind.IndexedAccessType:
1877
- const d = t;
1878
- if (
1879
- // In public types, Lumina's "component" and "el" have the same type
1880
- // Thus print ArcgisHome["el"] as just ArcgisHome
1881
- M.isComponentProject && d.indexType.kind === o.SyntaxKind.LiteralType && d.indexType.literal.text === "el"
1882
- )
1883
- return pe(e, d.objectType, n);
1884
- break;
1885
- case o.SyntaxKind.ImportType:
1886
- M.emitError(
1887
- `\`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." : ""}`,
1888
- { file: M.file, node: t }
1889
- );
1890
- break;
1891
- }
1892
- n(e, t), Xe !== void 0 && (yi(), Xe = void 0);
1893
- }, io = an(
1894
- {},
1895
- {
1896
- onEmitNode: pe
1897
- }
1898
- ), no = o.factory.createIdentifier("null | undefined"), _e = on.createTextWriter(`
1899
- `), oo = 7, Qe = /* @__PURE__ */ new Set();
1900
- let z;
1901
- function Be(e, t = 0) {
1902
- const n = [];
1903
- let i = e;
1904
- for (; i !== void 0; )
1905
- if (i.kind === o.SyntaxKind.Identifier) {
1906
- n.push(i);
1907
- break;
1908
- } else if (i.kind === o.SyntaxKind.QualifiedName)
1909
- n.push(i.right), i = i.left;
1910
- else if (i.kind === o.SyntaxKind.PropertyAccessExpression) {
1911
- const S = i.name;
1912
- n.push(S), i = i.expression;
1913
- }
1914
- const a = n.at(-1), r = a.escapedText, l = _e.getTextPos() + t;
1915
- let s = l + r.length;
1916
- const c = a;
1917
- if (c.pos === -1 && c.symbol !== void 0) {
1918
- z.push(
1919
- Je(c.symbol, c, M, l, s)
1920
- );
1921
- return;
1922
- }
1923
- if (M.functionLikeTypeParameters?.has(r) === !0) {
1924
- z.push({
1925
- name: r,
1926
- module: void 0,
1927
- package: void 0,
1928
- viewUrl: void 0,
1929
- start: l,
1930
- end: s
1931
- });
1932
- return;
1933
- }
1934
- if (M.objectLikeTypeParameters?.has(r) === !0) {
1935
- z.push({
1936
- name: r,
1937
- module: void 0,
1938
- package: void 0,
1939
- viewUrl: void 0,
1940
- start: l,
1941
- end: s
1942
- });
1943
- return;
1944
- }
1945
- if (M.localDeclarations.has(r)) {
1946
- z.push({
1947
- name: r,
1948
- module: void 0,
1949
- package: void 0,
1950
- viewUrl: Ue(
1951
- M.apiModule.path,
1952
- r === M.exportDefaultName ? void 0 : r,
1953
- void 0,
1954
- M
1955
- ),
1956
- start: l,
1957
- end: s
1958
- });
1959
- return;
1960
- }
1961
- if (M.localPrivateDeclarations?.has(r) === !0) {
1962
- M.localPrivateDeclarations.set(r, Math.abs(M.localPrivateDeclarations.get(r))), z.push({
1963
- name: r,
1964
- module: void 0,
1965
- package: void 0,
1966
- viewUrl: Ue(
1967
- M.apiModule.path,
1968
- r === M.exportDefaultName ? void 0 : r,
1969
- void 0,
1970
- M
1971
- ),
1972
- start: l,
1973
- end: s
1974
- });
1975
- return;
1976
- }
1977
- const d = M.moduleContext.importsMap[r];
1978
- if (d !== void 0) {
1979
- d.wasUsed = !0;
1980
- const S = d.type === "named";
1981
- d.replacementName !== void 0 && (be(a, d.replacementName), s = l + d.replacementName.length), d.replacementName !== void 0 && (M.functionLikeTypeParameters?.has(d.replacementName) === !0 || M.objectLikeTypeParameters?.has(d.replacementName) === !0) && M.emitError(
1982
- `Can't do a type replacement of ${ie("green", r)} to ${ie("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.`,
1983
- { file: M.file, node: e }
1984
- );
1985
- const C = S ? d.actualName ?? d.replacementName ?? r : void 0;
1986
- if (d.modulePath === void 0) {
1987
- if (M.config.strict) {
1988
- const h = dt(d.rawSpecifier);
1989
- M.runtimeDependencyNames.has(h) || M.emitError(
1990
- h === "esri" ? `Found unexpected absolute path import of ${ie("red", C ?? d.type)} from ${ie("red", d.rawSpecifier)}. Did you mean to use a relative import instead?` : `Type ${ie("red", C ?? d.type)} imported from ${ie("red", h)} cannot be referenced in public types as this dependency is not declared as a "dependency" in the package.json`,
1991
- { file: M.file, node: e }
1992
- );
1993
- }
1994
- } else M.config.strict || je(
1995
- d.modulePath,
1996
- d.rawSpecifier === "" ? d.modulePath : pt(
1997
- M.apiModule.sourcePath.slice(M.config.context.basePath.length),
1998
- d.rawSpecifier
1999
- ),
2000
- S ? C : d.type,
2001
- M
2002
- );
2003
- let v, P = d.modulePath;
2004
- P === void 0 && (v = dt(d.rawSpecifier), P = d.rawSpecifier.length === v.length ? void 0 : d.rawSpecifier.slice(v.length + 1)), z.push({
2005
- name: C ?? d.type,
2006
- module: P,
2007
- package: v,
2008
- viewUrl: d.modulePath === void 0 ? ui(v, P, S ? r : d.type, M) : Ue(d.modulePath, C, void 0, M),
2009
- start: l,
2010
- end: s
2011
- });
2012
- return;
2013
- }
2014
- const m = ut[r];
2015
- if (m !== void 0) {
2016
- z.push({
2017
- name: r,
2018
- module: void 0,
2019
- package: le,
2020
- viewUrl: m[0]?.startsWith("https") === !1 ? `${ft}${m[0]}` : m[0] ?? void 0,
2021
- start: l,
2022
- end: s
2023
- });
2024
- let S = m;
2025
- if (S.length > 1) {
2026
- let C = n.length - 2, v = s + 1;
2027
- for (; S[1] !== void 0 && C >= 0; ) {
2028
- const P = n[C--];
2029
- if (S = S[1][P.escapedText], S === void 0)
2030
- M.emitError("Failed to resolve the definition of the type reference", {
2031
- file: M.file,
2032
- node: e
2033
- });
2034
- else {
2035
- const h = v + P.escapedText.length;
2036
- z.push({
2037
- name: P.escapedText,
2038
- module: void 0,
2039
- package: le,
2040
- viewUrl: S[0]?.startsWith("https") === !1 ? `${ft}${S[0]}` : S[0] ?? void 0,
2041
- start: v,
2042
- end: h
2043
- }), v = h + 1;
2044
- }
2045
- }
2046
- }
2047
- return;
2048
- }
2049
- if (Qe.has(r))
2050
- return;
2051
- const f = M.program?.getTypeChecker?.()?.getSymbolAtLocation(a);
2052
- if (f !== void 0) {
2053
- z.push(Je(f, a, M, l, s));
2054
- return;
2055
- }
2056
- M.emitError(
2057
- "Failed to resolve the definition of the type reference. Ensure it has @public or refactor out its usage from the public API type",
2058
- { file: M.file, node: e }
2059
- );
2060
- }
2061
- function be(e, t) {
2062
- const n = e.escapedText;
2063
- Xe = e, gt = t, yi(), gt = n;
2064
- }
2065
- let Xe, gt;
2066
- function yi() {
2067
- Xe.escapedText = gt;
2068
- }
2069
- function nt(e, t, n) {
2070
- if (e === void 0 || n.isInLuminaMinimalExtraction) {
2071
- t ? n.objectLikeTypeParameters = void 0 : n.functionLikeTypeParameters = void 0;
2072
- return;
2073
- }
2074
- const i = new Array(e.length), a = t ? ao : ro;
2075
- a.clear();
2076
- for (let r = 0; r < e.length; ++r) {
2077
- const l = e[r], s = l.name.escapedText;
2078
- a.add(s);
2079
- const c = {
2080
- name: s,
2081
- constraint: void 0,
2082
- default: void 0,
2083
- const: void 0,
2084
- in: void 0,
2085
- out: void 0
2086
- };
2087
- if (l.modifiers !== void 0)
2088
- for (let p = 0; p < l.modifiers.length; ++p) {
2089
- const d = l.modifiers[p];
2090
- d.kind === o.SyntaxKind.ConstKeyword ? c.const = !0 : d.kind === o.SyntaxKind.InKeyword ? c.in = !0 : d.kind === o.SyntaxKind.OutKeyword && (c.out = !0);
2091
- }
2092
- i[r] = c;
2093
- }
2094
- t ? n.objectLikeTypeParameters = a : n.functionLikeTypeParameters = a;
2095
- for (let r = 0; r < e.length; ++r) {
2096
- const l = e[r], s = l.constraint, c = l.default;
2097
- s !== void 0 && (i[r].constraint = j(s, n)), c !== void 0 && (i[r].default = j(c, n));
2098
- }
2099
- return i;
2100
- }
2101
- const ao = /* @__PURE__ */ new Set(), ro = /* @__PURE__ */ new Set();
2102
- function Ee(e, t, n) {
2103
- if (!o.isIdentifier(e) && !o.isQualifiedName(e) && !o.isPropertyAccessExpression(e))
2104
- return n.emitError(
2105
- "Expected the type nodes in the extends clause to be Identifier, QualifiedName or PropertyAccessExpression.",
2106
- { file: n.file, node: e }
2107
- ), {
2108
- [J]: "Record<never, Error>",
2109
- name: "error",
2110
- module: void 0,
2111
- package: void 0,
2112
- viewUrl: void 0,
2113
- typeArguments: void 0
2114
- };
2115
- const i = j(e, n), a = i.references?.[0] ?? {
2116
- module: void 0,
2117
- package: void 0,
2118
- viewUrl: void 0
2119
- };
2120
- let r, l;
2121
- if (r = i.text, t !== void 0) {
2122
- l = new Array(t.length), r += "<";
2123
- for (let s = 0; s < t.length; ++s) {
2124
- const c = t[s], p = j(c, n);
2125
- l[s] = p, r += p.text, s < t.length - 1 && (r += ", ");
2126
- }
2127
- r += ">";
2128
- }
2129
- return {
2130
- /**
2131
- * If referenced type is imported as default, the `name` will be `default`,
2132
- * which is not a name suitable for .d.ts emit. So we preserve the original
2133
- * type string in a temporary field.
2134
- */
2135
- [J]: r,
2136
- name: i.references?.length === 1 ? i.references[0].name : i.text,
2137
- module: a.module,
2138
- package: a.package,
2139
- viewUrl: a.viewUrl,
2140
- typeArguments: l
2141
- };
2142
- }
2143
- function Ct(e) {
2144
- return o.isTypeReferenceNode(e) && (e.typeName.escapedText === "PublicApiNarrowType" || e.typeName.escapedText === "PublicApiRelaxType") ? e.typeArguments[1] : e;
2145
- }
2146
- function so(e) {
2147
- return e.expression.escapedText === "PublicApiNarrowType" || e.expression.escapedText === "PublicApiRelaxType" ? e.typeArguments[1] : e;
2148
- }
2149
- const vi = { text: "unknown", references: void 0, values: void 0, source: void 0 }, lo = {
2150
- text: "Promise<unknown>",
2151
- references: void 0,
2152
- values: void 0,
2153
- source: void 0
2154
- }, co = {
2155
- text: "Record<string, unknown> | undefined",
2156
- references: [
2157
- {
2158
- name: "Record",
2159
- module: void 0,
2160
- package: le,
2161
- viewUrl: "https://www.typescriptlang.org/docs/handbook/utility-types.html#recordkeys-type",
2162
- start: 0,
2163
- end: 6
2164
- }
2165
- ],
2166
- values: void 0,
2167
- source: void 0
2168
- };
2169
- function po(e, t) {
2170
- if (t.isInLuminaMinimalExtraction)
2171
- return;
2172
- const n = qi(e.name), i = {
2173
- [J]: mo,
2174
- kind: "method",
2175
- name: "componentOnReady",
2176
- static: void 0,
2177
- deprecated: void 0,
2178
- summary: void 0,
2179
- description: "Creates a promise that resolves once the component is fully loaded.",
2180
- docsTags: [
2181
- {
2182
- name: "example",
2183
- text: `\`\`\`js
2184
- const ${n} = document.createElement("${e.tagName}");
2185
- document.body.append(${n});
2186
- await ${n}.componentOnReady();
2187
- console.log("${e.tagName} is ready to go!");
2188
- \`\`\``
2189
- }
2190
- ],
2191
- typeParameters: void 0,
2192
- parameters: void 0,
2193
- return: uo,
2194
- // Must include .inheritedFrom for this member so that it is excluded from
2195
- // .d.ts printing (TypeScript inherits it from PublicLitElement) and from
2196
- // the docs search index.
2197
- inheritedFrom: fo,
2198
- signature: "(): Promise<this>",
2199
- privacy: void 0,
2200
- source: void 0
2201
- };
2202
- e.members.push(i);
2203
- const a = [], r = t.config.documentation.getComponentDocsUrl, l = t.config.documentation.getComponentDemoUrl, s = typeof r == "function" ? r(e.tagName, e.name) : void 0, c = typeof l == "function" ? l(e.tagName, e.name) : void 0;
2204
- typeof s == "string" && a.push({
2205
- description: "Docs",
2206
- url: s,
2207
- source: void 0
2208
- }), typeof c == "string" && a.push({
2209
- description: "Demo",
2210
- url: c,
2211
- source: void 0
2212
- });
2213
- const p = t.componentStories[e.tagName];
2214
- if (typeof p == "object" && a.push(...p), t.componentCssFileDocs !== void 0) {
2215
- e.cssProperties ??= [];
2216
- const d = new Set(e.cssProperties.map((m) => m.name));
2217
- e.cssProperties = [
2218
- ...e.cssProperties,
2219
- ...t.componentCssFileDocs.filter((m) => !d.has(m.name))
2220
- ], t.componentCssFileDocs = void 0;
2221
- }
2222
- a.length > 0 && (e.demos = a);
2223
- }
2224
- const mo = et(), uo = {
2225
- summary: void 0,
2226
- description: void 0,
2227
- type: {
2228
- text: "Promise<this>",
2229
- references: [
2230
- {
2231
- name: "Promise",
2232
- module: "lib/lib.es5.d.ts",
2233
- package: "typescript",
2234
- viewUrl: void 0,
2235
- start: 0,
2236
- end: 7
2237
- }
2238
- ],
2239
- values: void 0,
2240
- source: void 0
2241
- }
2242
- }, fo = {
2243
- name: "this",
2244
- module: void 0,
2245
- package: void 0,
2246
- viewUrl: void 0
2247
- }, yo = ce, vo = ce, So = ce, go = ce, To = ce, ho = ce, Eo = ce, Si = ce;
2248
- function ce(e, t, n, i, a) {
2249
- if (i.docsTags === void 0 || n === void 0)
2250
- return;
2251
- const r = i.docsTags.indexOf(N.copyDoc);
2252
- if (r === -1)
2253
- return;
2254
- const l = i.name;
2255
- let s = n?.[l];
2256
- s === void 0 && e.emitError(
2257
- "@copyDoc tag was used, but failed to find copyDoc definition for it. Documentation: https://webgis.esri.com/references/api-extractor/tags-reference#copydoc)",
2258
- {
2259
- file: e.file,
2260
- node: t
2261
- }
2262
- ), !(typeof s == "function" && (s = s(i, a, e.apiModule), s === void 0)) && Yi(s, i, r);
2263
- }
2264
- function Pt(e, t, n) {
2265
- n.apiModule.exports.push({
2266
- kind: e.customElement === !0 ? "custom-element-definition" : e.kind === "interface" || e.kind === "mixin" ? "ts" : "js",
2267
- name: t ? "default" : e.tagName ?? e.name,
2268
- deprecated: void 0,
2269
- declaration: {
2270
- name: e.name,
2271
- module: void 0,
2272
- package: void 0,
2273
- viewUrl: void 0
2274
- }
2275
- });
2276
- }
2277
- const Co = Ae, st = Ae, Po = Ae, Ht = Ae, $t = Ae;
2278
- function Ae(e, t, n, i) {
2279
- if (t === void 0) {
2280
- i.emitError("Computed function/method names are not yet supported.", {
2281
- file: i.file,
2282
- node: e
2283
- });
2284
- return;
2285
- }
2286
- const a = n ?? e, r = n !== void 0 && !o.isVariableStatement(n), l = o.isMethodDeclaration(e), s = o.isMethodSignature(e), c = l || s || r, p = n !== void 0 && o.isVariableStatement(n), m = o.isFunctionDeclaration(e) || p, u = !r && !p && o.isFunctionTypeNode(e) || o.isCallSignatureDeclaration(e), f = o.isConstructorDeclaration(e), S = f || o.isConstructSignatureDeclaration(e) || o.isConstructorTypeNode(e), C = i.isInLuminaMinimalExtraction || i.jsDoc === Ce, v = et();
2287
- let P, h, L = !1, b = !1;
2288
- if (!m && a.modifiers !== void 0)
2289
- for (let E = 0; E < a.modifiers.length; ++E)
2290
- switch (a.modifiers[E].kind) {
2291
- case o.SyntaxKind.StaticKeyword:
2292
- P = !0;
2293
- break;
2294
- case o.SyntaxKind.ProtectedKeyword:
2295
- h = "protected";
2296
- break;
2297
- case o.SyntaxKind.AbstractKeyword:
2298
- L = !0;
2299
- break;
2300
- case o.SyntaxKind.AsyncKeyword:
2301
- b = !0;
2302
- break;
2303
- }
2304
- const y = {
2305
- [J]: v,
2306
- kind: c ? "method" : m ? "function" : u ? "call-signature" : S ? "constructor" : void 0,
2307
- name: S || u ? void 0 : t,
2308
- static: P,
2309
- deprecated: void 0,
2310
- summary: void 0,
2311
- description: void 0,
2312
- docsTags: void 0,
2313
- typeParameters: nt(e.typeParameters, !1, i),
2314
- parameters: [],
2315
- return: f ? void 0 : {
2316
- summary: void 0,
2317
- description: void 0,
2318
- type: C ? b ? lo : vi : j(
2319
- e.type ?? qe(e, i) ?? X(
2320
- { file: i.file, node: e },
2321
- "@public function must have a return type annotation",
2322
- i
2323
- ),
2324
- i
2325
- )
2326
- },
2327
- inheritedFrom: void 0,
2328
- signature: void 0,
2329
- privacy: h,
2330
- source: void 0
2331
- }, k = y, D = pn(y, i.jsDoc), I = C ? [] : e.parameters;
2332
- let x = D.length, g = !1, K = 0;
2333
- for (let E = 0; E < I.length; ++E) {
2334
- const T = I[E], A = o.isIdentifier(T.name) ? T.name.escapedText : void 0;
2335
- if (A === "this") {
2336
- K -= 1;
2337
- continue;
2338
- }
2339
- const V = f && A !== void 0 && T.modifiers !== void 0 && T.modifiers.length > 0 ? ne(T, !0, i) : void 0;
2340
- if (V !== void 0) {
2341
- K -= 1, x += 1, i.jsDoc = V;
2342
- const q = Ti(T, A, !1, i);
2343
- if (q === void 0)
2344
- continue;
2345
- i.apiObject.members.push(q);
2346
- const de = {
2347
- name: A,
2348
- deprecated: void 0,
2349
- summary: void 0,
2350
- description: q.description,
2351
- docsTags: void 0,
2352
- optional: void 0,
2353
- rest: T.dotDotDotToken ? !0 : void 0,
2354
- type: q.type,
2355
- default: q.default
2356
- };
2357
- de.optional = zt(T, de), y.parameters.push(de);
2358
- continue;
2359
- }
2360
- let G = D[E + K]?.text, U, F;
2361
- if (!i.config.strict && (G === void 0 || A === void 0) && (G = A ?? `parameter${E}`), G === void 0) {
2362
- i.emitError(
2363
- `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/references/api-extractor/tags-reference#param)${S ? " and https://webgis.esri.com/references/api-extractor/api-node-kinds#constructor" : ""}`,
2364
- { file: i.file, node: T }
2365
- ), g = !0;
2366
- break;
2367
- }
2368
- const W = G.indexOf(" ");
2369
- if (U = W === -1 ? G : G.slice(0, W), F = W === -1 ? "" : G.slice(W + 1).trim(), (F.startsWith("- ") || F.startsWith(`-
2370
- `)) && (F = F.slice(2).trim()), A !== void 0 && A !== U && `_${U}` !== A) {
2371
- const q = U.startsWith("[") || U.endsWith("]");
2372
- if (i.config.strict) {
2373
- i.emitError(
2374
- `The '${A}' TypeScript parameter name does not match the @param tag at position ${E}, '${U}'${q ? ". If you meant to mark the parameter as optional, use TypeScript's `?` syntax or `=` default value syntax instead of JSDoc [square brackets]" : ""}`,
2375
- {
2376
- file: i.file,
2377
- node: T
2378
- }
2379
- ), g = !0;
2380
- break;
2381
- } else
2382
- U = A.startsWith("_") ? A.slice(1) : A;
2383
- }
2384
- const fe = T.type ?? (T.initializer === void 0 ? X(
2385
- { file: i.file, node: T },
2386
- `Public parameter ${U} must have a type annotation or a default value`,
2387
- i
2388
- ) : Et(T.initializer, O.false, i.file, i)), ke = j(fe, i), te = {
2389
- name: U,
2390
- deprecated: void 0,
2391
- summary: void 0,
2392
- description: F || void 0,
2393
- docsTags: void 0,
2394
- optional: void 0,
2395
- rest: T.dotDotDotToken ? !0 : void 0,
2396
- type: ke,
2397
- default: $e(T.initializer, void 0, i.file)
2398
- };
2399
- te.optional = zt(T, te), y.parameters.push(te);
2400
- }
2401
- if (i.config.strict && !g && !i.isInLuminaMinimalExtraction && x !== y.parameters.length && i.emitError(
2402
- `Expected @param tags to match the number of parameters on a public function. Found ${D.length} @param tags for ${y.parameters.length} TypeScript parameters. Documentation: https://webgis.esri.com/references/api-extractor/tags-reference#param)${S ? " and https://webgis.esri.com/references/api-extractor/api-node-kinds#constructor" : ""}`,
2403
- { file: i.file, node: e }
2404
- ), y.parameters.length === 0)
2405
- y.parameters = void 0;
2406
- else {
2407
- let E = !0;
2408
- for (let T = y.parameters.length - 1; T >= 0; T--) {
2409
- const R = y.parameters[T];
2410
- E &&= R.optional === !0 || R.rest === !0 || R.default !== void 0, !E && R.optional && (R.optional = void 0, R.type.text.endsWith(" | undefined") || (R.type.text += " | undefined"));
2411
- }
2412
- }
2413
- l && i.componentTagName !== void 0 && (k.signature = Ki(k), b && !Zi(k) && i.emitError("Public method marked as async must have a Promise<SomeType> return type annotation.", {
2414
- file: i.file,
2415
- node: e
2416
- })), i.functionLikeTypeParameters = void 0;
2417
- const w = m ? tt(a) : 0, $ = m && i.exportDefaultName === t, B = w === 2 || $;
2418
- return m && (B ? Pt(y, !0, i) : w === 0 && i.config.strict && i.emitError("Expected @public function to be exported using named or default export.", {
2419
- file: i.file,
2420
- node: e
2421
- })), i.produceDts && (c || S || u ? (L && (v.isAbstract = !0), v.hasQuestionToken = a.questionToken !== void 0 ? !0 : void 0) : v.isDefaultExported = B || void 0), c ? vo(
2422
- i,
2423
- n ?? e,
2424
- i.config.documentation.copyDocDefinitions.methods,
2425
- y,
2426
- i.apiObject
2427
- ) : m && go(
2428
- i,
2429
- n ?? e,
2430
- i.config.documentation.copyDocDefinitions.functions,
2431
- y,
2432
- i.apiModule
2433
- ), y;
2434
- }
2435
- const zt = (e, t) => (
2436
- // Keep ? as is
2437
- e.questionToken !== void 0 || // If had default value internally, but not publicly, add ?
2438
- e.initializer !== void 0 && t.default === void 0 ? !0 : void 0
2439
- );
2440
- function bo(e, t, n) {
2441
- return Tt(), Me(e, t), bt && t !== void 0 && n !== void 0 && (Tt(), Mt(t.getTypeAtLocation(n))), gi();
2442
- }
2443
- function Mo(e) {
2444
- return Tt(), Mt(e), gi();
2445
- }
2446
- let Le = !1, oe = !1, ae = !1, Ie = !1, re = !1, bt = !1;
2447
- const se = [], ee = [];
2448
- function Tt() {
2449
- Le = !1, oe = !1, ae = !1, Ie = !1, re = !1, bt = !1, se.length = 0, ee.length = 0;
2450
- }
2451
- function gi() {
2452
- if (!ae && !Ie && !re && !Le)
2453
- return;
2454
- const e = [];
2455
- if (se.length > 0)
2456
- for (let t = 0; t < se.length; ++t)
2457
- e.push({ type: "string", value: se[t] });
2458
- else ae && e.push(xo);
2459
- if (ee.length > 0)
2460
- for (let t = 0; t < ee.length; ++t)
2461
- e.push({ type: "number", value: ee[t] });
2462
- else re && e.push(Do);
2463
- return Ie && e.push(Ro), Le ? e.push(Lo) : oe && e.push(Io), e;
2464
- }
2465
- const xo = { type: "string", value: void 0 }, Do = { type: "number", value: void 0 }, Ro = { type: "boolean", value: void 0 }, Lo = { type: "any", value: void 0 }, Io = { type: "object", value: void 0 };
2466
- function Me(e, t) {
2467
- switch (e.kind) {
2468
- case o.SyntaxKind.BooleanKeyword:
2469
- case o.SyntaxKind.TrueKeyword:
2470
- case o.SyntaxKind.FalseKeyword:
2471
- Ie = !0;
2472
- return;
2473
- case o.SyntaxKind.NumberKeyword:
2474
- re = !0;
2475
- return;
2476
- case o.SyntaxKind.StringKeyword:
2477
- case o.SyntaxKind.TemplateLiteralType:
2478
- ae = !0;
2479
- return;
2480
- case o.SyntaxKind.AnyKeyword:
2481
- Le = !0;
2482
- return;
2483
- case o.SyntaxKind.LiteralType:
2484
- Me(e.literal, t);
2485
- return;
2486
- case o.SyntaxKind.StringLiteral:
2487
- case o.SyntaxKind.NoSubstitutionTemplateLiteral:
2488
- ae = !0, se.push(e.text);
2489
- return;
2490
- case o.SyntaxKind.NumericLiteral:
2491
- re = !0, ee.push(e.text);
2492
- return;
2493
- case o.SyntaxKind.PrefixUnaryExpression:
2494
- const n = e.operand;
2495
- n.kind === o.SyntaxKind.NumericLiteral ? (ee.push(`-${n.text}`), re = !0) : oe = !0;
2496
- return;
2497
- case o.SyntaxKind.VoidKeyword:
2498
- case o.SyntaxKind.UndefinedKeyword:
2499
- case o.SyntaxKind.NullKeyword:
2500
- return;
2501
- case o.SyntaxKind.UnionType:
2502
- const i = e.types, a = Math.min(i.length, Ye);
2503
- for (let l = 0; l < a; ++l)
2504
- Me(i[l], t);
2505
- i.length > Ye && (se.length = 0, ee.length = 0);
2506
- return;
2507
- case o.SyntaxKind.ParenthesizedType:
2508
- Me(e.type, t);
2509
- return;
2510
- case o.SyntaxKind.TypeQuery:
2511
- case o.SyntaxKind.IndexedAccessType:
2512
- case o.SyntaxKind.ImportType:
2513
- case o.SyntaxKind.TypeReference:
2514
- t === void 0 ? oe = !0 : Mt(
2515
- t.getTypeFromTypeNode(
2516
- e
2517
- )
2518
- );
2519
- return;
2520
- case o.SyntaxKind.TypeOperator:
2521
- const r = e;
2522
- r.operator === o.SyntaxKind.KeyOfKeyword ? ae = !0 : r.operator === o.SyntaxKind.ReadonlyKeyword ? Me(r.type, t) : oe = !0;
2523
- return;
2524
- /*case ts.SyntaxKind.UnknownKeyword:
2525
- case ts.SyntaxKind.FunctionType:
2526
- case ts.SyntaxKind.ConstructorType:
2527
- case ts.SyntaxKind.ThisKeyword:
2528
- case ts.SyntaxKind.ConditionalType:
2529
- case ts.SyntaxKind.ArrayType:
2530
- case ts.SyntaxKind.TupleType:
2531
- case ts.SyntaxKind.IntersectionType:
2532
- case ts.SyntaxKind.ObjectKeyword:
2533
- case ts.SyntaxKind.SymbolKeyword:*/
2534
- default:
2535
- oe = !0;
2536
- return;
2537
- }
2538
- }
2539
- const Ye = 40;
2540
- function Mt(e) {
2541
- if (e.isUnion()) {
2542
- const t = Math.min(e.types.length, Ye);
2543
- for (let n = 0; n < t; ++n)
2544
- jt(e.types[n]);
2545
- e.types.length > Ye && (se.length = 0, ee.length = 0);
2546
- } else
2547
- jt(e);
2548
- }
2549
- function jt(e) {
2550
- const t = e.flags;
2551
- let n = !1;
2552
- if (t & o.TypeFlags.StringLiteral ? (n = !0, ae = !0, se.push(e.value)) : t & o.TypeFlags.StringLike && (n = !0, ae = !0), t & o.TypeFlags.NumberLiteral ? (n = !0, re = !0, ee.push(e.value.toString())) : t & o.TypeFlags.NumberLike && (n = !0, re = !0), t & o.TypeFlags.BooleanLike && (n = !0, Ie = !0), t & o.TypeFlags.Any) {
2553
- if (e.intrinsicName === "error") {
2554
- oe = !0, bt = !0;
2555
- return;
2556
- }
2557
- Le = !0, n = !0;
2558
- }
2559
- t & Ao || n || (oe = !0);
2560
- }
2561
- const Ao = o.TypeFlags.Null | o.TypeFlags.VoidLike, Pa = (e) => e.map(ko).join(" | "), ko = (e) => e.type === "string" && e.value !== void 0 ? `"${e.value}"` : e.value ?? e.type;
2562
- function Go(e, t, n) {
2563
- let i;
2564
- const a = e.initializer;
2565
- let r;
2566
- if (e.questionToken !== void 0)
2567
- return;
2568
- if (e.type !== void 0)
2569
- o.isTypeReferenceNode(e.type) && e.type.typeName.escapedText === "EventEmitter" && (i = e.type.typeArguments?.[0] ?? We);
2570
- else if (a !== void 0 && o.isCallExpression(a)) {
2571
- const s = a.expression;
2572
- if (o.isIdentifier(s)) {
2573
- const c = s.escapedText;
2574
- c === Ke ? (i = a.typeArguments?.[0] ?? We, r = a.arguments[0]) : c === "reEmitEvent" ? i = a.typeArguments?.[0] ?? We : c.startsWith("use") && (i = Jt(e, n));
2575
- } else if (o.isCallExpression(s) && o.isIdentifier(s.expression)) {
2576
- const c = s.expression.escapedText;
2577
- if (c === "usePropertyChange") {
2578
- const p = [];
2579
- for (let d = 0; d < a.arguments.length; ++d) {
2580
- const m = a.arguments[d];
2581
- o.isStringLiteral(m) && p.push(o.factory.createLiteralTypeNode(m));
2582
- }
2583
- if (p.length === 0)
2584
- return;
2585
- i = o.factory.createTypeLiteralNode([
2586
- o.factory.createPropertySignature(
2587
- void 0,
2588
- "name",
2589
- void 0,
2590
- p.length === 1 ? p[0] : o.factory.createUnionTypeNode(p)
2591
- )
2592
- ]);
2593
- } else c.startsWith("use") && (i = Jt(e, n));
2594
- }
2595
- }
2596
- if (i === void 0)
2597
- return;
2598
- const l = {
2599
- name: t,
2600
- deprecated: void 0,
2601
- summary: void 0,
2602
- description: void 0,
2603
- docsTags: void 0,
2604
- type: j(i, n),
2605
- inheritedFrom: void 0,
2606
- privacy: void 0,
2607
- bubbles: void 0,
2608
- cancelable: void 0,
2609
- composed: void 0
2610
- };
2611
- return fn(l, n.jsDoc), r !== void 0 && Fo(e, r, l, n), So(
2612
- n,
2613
- e,
2614
- n.config.documentation.copyDocDefinitions.events,
2615
- l,
2616
- n.apiObject
2617
- ), l;
2618
- }
2619
- const Ke = "createEvent";
2620
- function Fo(e, t, n, i) {
2621
- if (t !== void 0) {
2622
- if (!o.isObjectLiteralExpression(t)) {
2623
- i.emitError(`Expected object literal expression as first argument of ${Ke}().`, {
2624
- file: i.file,
2625
- node: e
2626
- });
2627
- return;
2628
- }
2629
- if (t.properties.some(o.isSpreadAssignment)) {
2630
- i.emitError(
2631
- `Unexpected spread syntax in ${Ke}() argument. ${Ke}() arguments must be statically parsable at compile time`,
2632
- {
2633
- file: i.file,
2634
- node: e
2635
- }
2636
- );
2637
- return;
2638
- }
2639
- for (const a of t.properties)
2640
- !o.isPropertyAssignment(a) || !o.isIdentifier(a.name) || (a.name.text === "cancelable" && !Y(a.initializer, i) && (n.cancelable = !1), a.name.text === "bubbles" && !Y(a.initializer, i) && (n.bubbles = !1), a.name.text === "composed" && !Y(a.initializer, i) && (n.composed = !1));
2641
- }
2642
- }
2643
- function Jt(e, t) {
2644
- const n = t.program?.getTypeChecker?.();
2645
- if (n === void 0)
2646
- return;
2647
- const i = n.getTypeAtLocation(e);
2648
- if (!((i.aliasSymbol ?? i.symbol)?.name === "EventEmitter"))
2649
- return;
2650
- const r = n.getTypeArguments(i);
2651
- if (r.length === 0)
2652
- return We;
2653
- const l = r[0];
2654
- return n.typeToTypeNode(l, e, o.NodeBuilderFlags.NoTruncation);
2655
- }
2656
- function Ti(e, t, n, i) {
2657
- if (t === void 0) {
2658
- i.emitError("Computed property names are not yet supported", { file: i.file, node: e });
2659
- return;
2660
- }
2661
- const a = e, r = xe(a.modifiers, "property") ?? (i.pairedSetter === void 0 ? void 0 : xe(i.pairedSetter.modifiers, "property")), l = r?.arguments[0], s = l !== void 0 && o.isObjectLiteralExpression(l) ? l.properties : void 0, c = o.isPropertyDeclaration(e) || o.isPropertySignature(e), p = o.isGetAccessor(e), d = Oi(), m = i.isInLuminaMinimalExtraction || i.jsDoc === Ce;
2662
- let u = !1, f = !1, S, C = !1, v, P, h;
2663
- if (c && e.modifiers !== void 0)
2664
- for (let E = 0; E < e.modifiers.length; ++E)
2665
- switch (e.modifiers[E].kind) {
2666
- case o.SyntaxKind.ReadonlyKeyword:
2667
- u = !0;
2668
- continue;
2669
- case o.SyntaxKind.AccessorKeyword:
2670
- f = !0;
2671
- continue;
2672
- case o.SyntaxKind.ProtectedKeyword:
2673
- S = "protected";
2674
- continue;
2675
- case o.SyntaxKind.StaticKeyword:
2676
- v = !0;
2677
- continue;
2678
- case o.SyntaxKind.AbstractKeyword:
2679
- C = !0;
2680
- continue;
2681
- }
2682
- n ||= u || p && i.pairedSetter === void 0;
2683
- const L = i.apiObject.customElement === !0;
2684
- let b = !1;
2685
- if (i.moduleHasAccessorLikeClass)
2686
- if (s !== void 0) {
2687
- for (let E = 0; E < s.length; ++E) {
2688
- const T = s[E];
2689
- if (!o.isPropertyAssignment(T)) {
2690
- b ||= o.isSpreadAssignment(T);
2691
- continue;
2692
- }
2693
- const R = T.name.escapedText;
2694
- R === "readOnly" && Y(T.initializer, i) ? n = !0 : R === "constructOnly" && Y(T.initializer, i) ? d.isConstructorOnly = !0 : R === "type" ? d.hasAutoCasting = !0 : R === "types" && Oo(
2695
- d,
2696
- T.initializer?.kind === o.SyntaxKind.ObjectLiteralExpression ? T.initializer : void 0
2697
- );
2698
- }
2699
- b && d.hasAutoCasting === void 0 && (d.hasAutoCasting = !0, d.autoCastingRequiresType = !0);
2700
- } else l !== void 0 && (d.hasAutoCasting = !0, d.autoCastingRequiresType = !0);
2701
- else if (L) {
2702
- const E = i.apiObject;
2703
- if (r === void 0) {
2704
- if (m)
2705
- return;
2706
- {
2707
- const T = c && !v ? Go(e, t, i) : void 0;
2708
- if (T !== void 0) {
2709
- E.events ??= [], E.events.push(T);
2710
- return;
2711
- } else !i.config.strict && hi(e) ? (S = "protected", P = !1, i.jsDoc = {
2712
- ...i.jsDoc,
2713
- docsTags: [...i.jsDoc.docsTags, N.internal]
2714
- }) : r === void 0 && i.emitError(
2715
- "Public properties on a Lumina component must have a @property() decorator for lazy-loading compatibility.",
2716
- {
2717
- file: i.file,
2718
- node: e
2719
- }
2720
- );
2721
- }
2722
- } else if (s !== void 0)
2723
- for (let T = 0; T < s.length; ++T) {
2724
- const R = s[T];
2725
- if (!(!o.isPropertyAssignment(R) || !o.isIdentifier(R.name)))
2726
- switch (R.name.escapedText) {
2727
- case "attribute":
2728
- o.isStringLiteral(R.initializer) ? P = R.initializer.text : P = Y(R.initializer, i);
2729
- continue;
2730
- case "reflect":
2731
- Y(R.initializer, i) && (P ??= !0, h = !0);
2732
- continue;
2733
- case "readOnly":
2734
- Y(R.initializer, i) && (n = !0);
2735
- continue;
2736
- case "type":
2737
- case "converter":
2738
- P ??= !0;
2739
- continue;
2740
- }
2741
- }
2742
- }
2743
- const y = i.pairedSetter ?? (o.isSetAccessor(e) ? e : void 0), k = n ? void 0 : y;
2744
- f ||= r !== void 0 || p || y !== void 0, d.isAccessor = f || void 0;
2745
- const D = k?.parameters[0].type, I = a.type;
2746
- let x = D ?? I;
2747
- if (x === void 0) {
2748
- const E = k?.parameters[0].initializer ?? e.initializer;
2749
- if (c && E !== void 0 && o.isArrowFunction(E)) {
2750
- if (n)
2751
- return $t(E, t, e, i);
2752
- qt(e, i);
2753
- }
2754
- x = E === void 0 ? Qn(e, i) ?? X(
2755
- { file: i.file, node: e },
2756
- "Public property must have a type annotation or a default value",
2757
- i
2758
- ) : Et(E, n ? O.shallow : O.false, i.file, i);
2759
- } else if (x = Ct(x), c && o.isFunctionTypeNode(x)) {
2760
- if (n)
2761
- return $t(x, t, e, i);
2762
- qt(e, i);
2763
- }
2764
- const g = {
2765
- [J]: d,
2766
- kind: "field",
2767
- name: t,
2768
- static: v,
2769
- deprecated: void 0,
2770
- summary: void 0,
2771
- description: void 0,
2772
- docsTags: void 0,
2773
- // In minimal extraction, we care only for type.values (set below)
2774
- type: m ? { ...vi } : j(x, i),
2775
- getterType: void 0,
2776
- default: void 0,
2777
- readonly: n || void 0,
2778
- inheritedFrom: void 0,
2779
- privacy: S,
2780
- source: void 0,
2781
- attribute: !L || P === !1 ? void 0 : typeof P == "string" ? P : Qi(t),
2782
- reflects: h,
2783
- docsOnlyReadonly: void 0
2784
- };
2785
- mn(g, i.jsDoc);
2786
- const K = g.default;
2787
- L && t === "messageOverrides" && (d.dtsTypeOverride = g.type.text, g.type = co);
2788
- const w = L && r !== void 0;
2789
- if (w) {
2790
- !n && g.readonly === !0 && (g.docsOnlyReadonly = !0);
2791
- const E = i.program?.getTypeChecker?.();
2792
- g.type.values = E !== 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) ? Mo(E.getTypeAtLocation(y?.parameters[0] ?? e)) : bo(x, E, y?.parameters[0] ?? e), (P === void 0 && g.type.values === void 0 && !i.config.context.isLuminaMinimalExtraction || g.readonly && !g.reflects) && (g.attribute = void 0);
2793
- const T = E !== void 0 && o.isPropertyDeclaration(e) && // BUG: should not check node.type here? but do check in property.getterType below
2794
- 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);
2795
- if (("initializer" in e && e.initializer !== void 0 && (!g.default || !g.description) || T) && !m) {
2796
- const R = e.initializer, A = E?.getSymbolAtLocation(R), H = A !== void 0 && ((A.flags ?? 0) & o.SymbolFlags.Alias) !== 0 ? E?.getAliasedSymbol(A) : A;
2797
- let V, G;
2798
- const U = H?.getDeclarations();
2799
- if (U !== void 0)
2800
- for (let F = 0; F < U.length; ++F) {
2801
- const W = U[F];
2802
- V ??= o.isGetAccessor(W) ? W : void 0, G ??= o.isSetAccessor(W) ? W : void 0, "initializer" in W && (g.default = $e(
2803
- W.initializer,
2804
- g.default,
2805
- W.getSourceFile()
2806
- ));
2807
- }
2808
- if (T && V?.type !== void 0 && G !== void 0 && V.type.getText() !== G.parameters[0]?.type?.getText()) {
2809
- const F = V.getSourceFile(), W = i.file;
2810
- i.file = F, g.getterType = {
2811
- text: j(V.type, i).text,
2812
- references: void 0,
2813
- values: void 0,
2814
- source: void 0
2815
- }, i.file = W;
2816
- }
2817
- }
2818
- }
2819
- if (I !== void 0 && D !== void 0 && !m && // Quick perf check: type is definitely the same if raw type string matches.
2820
- // More reliable check follows in processing/index.ts, where printed normalized
2821
- // type string is compared.
2822
- I.getText(i.file) !== D.getText(i.file) ? g.getterType = j(I, i) : g.readonly === !0 && g.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) && (g.readonly === !0 && d.isConstructorOnly !== !0 ? d.hasAutoCasting = void 0 : g.getterType ??= {
2823
- ...g.type,
2824
- references: g.type.references === void 0 ? void 0 : [...g.type.references]
2825
- }), n && x.kind === o.SyntaxKind.LiteralType || (g.default = $e(
2826
- e.initializer,
2827
- g.default,
2828
- i.file
2829
- )), w) {
2830
- const E = K === void 0 && g.default === "true";
2831
- g.type.values?.length === 1 && g.type.values[0].type === "boolean" && (g.default === void 0 ? g.default = "false" : E && g.deprecated === void 0 && (i.loggedBooleanWarning || i.config.context.logger.error(
2832
- `${ki}Boolean properties should default to "false". Found default value "true" in ${i.apiObject.name}.${g.name}. See https://webgis.esri.com/references/lumina/properties#boolean-properties`
2833
- ), i.loggedBooleanWarning = !0));
2834
- }
2835
- return yo(
2836
- i,
2837
- e,
2838
- i.config.documentation.copyDocDefinitions?.properties,
2839
- g,
2840
- i.apiObject
2841
- ), i.produceDts && C && (d.isAbstract = !0), c && e.questionToken !== void 0 && (g.type.text.endsWith(" | undefined") || (g.type.text = // Don't need to wrap non-accessors in |undefined as we replace |undefined
2842
- // with ? during printing
2843
- f && (x.kind === o.SyntaxKind.FunctionType || x.kind === o.SyntaxKind.ConstructorType || x.kind === o.SyntaxKind.ConditionalType || x.kind === o.SyntaxKind.InferType) ? `(${g.type.text}) | undefined` : `${g.type.text} | undefined`), g.getterType !== void 0 && !g.getterType.text.endsWith(" | undefined") && (g.getterType.text += " | undefined")), g;
2844
- }
2845
- function qt(e, t) {
2846
- if (!t.config.strict)
2847
- return;
2848
- const n = t.jsDoc.docsTags;
2849
- for (let i = 0; i < n.length; ++i) {
2850
- const a = n[i].name;
2851
- if (a === "param" || a === "returns") {
2852
- t.emitError(
2853
- "@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.",
2854
- {
2855
- file: t.file,
2856
- node: e
2857
- }
2858
- );
2859
- return;
2860
- }
2861
- }
2862
- }
2863
- function Oo(e, t) {
2864
- if (e.hasAutoCasting = !0, e.autoCastingRequiresType = !0, t !== void 0)
2865
- for (let n = 0; n < t.properties.length; ++n) {
2866
- const i = t.properties[n];
2867
- if (o.isPropertyAssignment(i) && i.name.escapedText === "defaultKeyValue" && o.isStringLiteral(i.initializer)) {
2868
- e.autoCastingDefaultType = i.initializer.text;
2869
- return;
2870
- }
2871
- }
2872
- }
2873
- const hi = (e) => o.isPropertyDeclaration(e) && e.initializer !== void 0 && o.isCallExpression(e.initializer) && o.isIdentifier(e.initializer.expression) && e.initializer.expression.escapedText === "useT9n";
2874
- function Ze(e, t) {
2875
- const n = o.isClassDeclaration(e);
2876
- let i = e.name.escapedText;
2877
- const a = n ? t.componentTagName : void 0, r = !n && mi(i, t);
2878
- let l = e.heritageClauses === void 0 || r ? void 0 : e.heritageClauses[0]?.token === o.SyntaxKind.ExtendsKeyword ? e.heritageClauses[0] : e.heritageClauses[1]?.token === o.SyntaxKind.ExtendsKeyword ? e.heritageClauses[1] : void 0;
2879
- 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) {
2880
- wo(i, l.types[0].typeArguments[0], t);
2881
- return;
2882
- }
2883
- const s = 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";
2884
- s && (l = void 0, i = t.mixinName);
2885
- const c = ni(), p = {
2886
- [J]: c,
2887
- kind: n ? "class" : "interface",
2888
- name: i,
2889
- customElement: a === void 0 ? void 0 : !0,
2890
- tagName: a,
2891
- privacy: void 0,
2892
- pascalCaseName: a === void 0 ? void 0 : (
2893
- /**
2894
- * We use the tag name rather than the class name to generate the
2895
- * type name because the class name may not start with the library
2896
- * prefix (Arcgis), where as tag name always does. This also matches
2897
- * Stencil's behavior.
2898
- */
2899
- Xi(a)
2900
- ),
2901
- deprecated: void 0,
2902
- summary: void 0,
2903
- description: void 0,
2904
- docsTags: void 0,
2905
- demos: void 0,
2906
- typeParameters: s ? void 0 : nt(e.typeParameters, !0, t),
2907
- superclass: void 0,
2908
- supertypes: void 0,
2909
- mixins: void 0,
2910
- encapsulation: void 0,
2911
- formAssociated: void 0,
2912
- members: [],
2913
- attributes: void 0,
2914
- events: void 0,
2915
- slots: void 0,
2916
- cssParts: void 0,
2917
- cssProperties: void 0,
2918
- cssStates: void 0,
2919
- type: void 0,
2920
- source: void 0,
2921
- // REFACTOR: remove this deprecated property
2922
- importPath: a === void 0 ? void 0 : t.apiModule.path
2923
- }, d = p, m = d, u = d;
2924
- ai(p, t.jsDoc);
2925
- const f = r ? (
2926
- // Members will be added during post-processing
2927
- !1
2928
- ) : Ei(d, e.members, i, t);
2929
- s && (t.mixinMixins !== void 0 && (m.mixins = t.mixinMixins), f && t.emitError("Mixin class is not expected to have a @public constructor", { file: t.file, node: e })), l === void 0 ? a !== void 0 && m.superclass === void 0 && t.emitError(
2930
- "Lumina web component must extend LitElement class. Found a class that does not extend any class.",
2931
- {
2932
- file: t.file,
2933
- node: e
2934
- }
2935
- ) : No(l, n, p, e, t), a !== void 0 && po(m, t), d.members.length === 0 && (a === void 0 && (d.members = void 0), r && (t.moduleContext.constructorPropertiesInterface = u));
2936
- const S = t.exportDefaultName === i, C = tt(e), v = S || C === 2;
2937
- return (v || a !== void 0) && Pt(d, v, t), n ? (a === void 0 ? ho(
2938
- t,
2939
- e,
2940
- t.config.documentation.copyDocDefinitions.classes,
2941
- m,
2942
- t.apiModule
2943
- ) : Eo(
2944
- t,
2945
- e,
2946
- t.config.documentation.copyDocDefinitions.customElements,
2947
- m,
2948
- t.apiModule
2949
- ), t.moduleHasClass && t.config.strict && t.emitError(
2950
- "A module may only export at most one public class/mixin/custom element. Documentation: https://webgis.esri.com/references/api-extractor/api-node-kinds#module-level-documentation",
2951
- { file: t.file, node: e }
2952
- ), t.moduleHasClass = !0) : Si(
2953
- t,
2954
- e,
2955
- t.config.documentation.copyDocDefinitions.interfaces,
2956
- u,
2957
- t.apiModule
2958
- ), t.produceDts && (c.isDefaultExported = v || void 0, n && (!s && (!S && C === 0) && t.config.strict && t.emitError("Expected @public class to be exported using named or default export.", {
2959
- file: t.file,
2960
- node: e
2961
- }), pi(e.modifiers, o.SyntaxKind.AbstractKeyword) ? c.hasExplicitAbstract = !0 : !f && (t.config.strict || a !== void 0) && (c.hasExplicitAbstract = !1))), t.objectLikeTypeParameters = void 0, d;
2962
- }
2963
- function No(e, t, n, i, a) {
2964
- for (let r = 0; r < e.types.length; ++r) {
2965
- const l = e.types[r];
2966
- if (t) {
2967
- let s = l.typeArguments, c = l.expression;
2968
- if (o.isCallExpression(c)) {
2969
- do {
2970
- const d = c.expression;
2971
- if (o.isPropertyAccessExpression(d) && o.isIdentifier(d.expression) && o.isIdentifier(d.name) && d.expression.escapedText === "Collection" && d.name.escapedText === "ofType") {
2972
- const m = c.arguments[0];
2973
- if (!o.isIdentifier(m)) {
2974
- a.emitError("Expected the argument to Collection.ofType to be an identifier.", {
2975
- file: a.file,
2976
- node: m
2977
- });
2978
- break;
2979
- }
2980
- s = [o.factory.createTypeReferenceNode(m)], c = d.expression;
2981
- } else {
2982
- n.mixins ??= [];
2983
- const m = c.expression;
2984
- n.mixins.unshift(
2985
- Ee(m, c.typeArguments, a)
2986
- ), c = c.arguments[0];
2987
- }
2988
- } while (o.isCallExpression(c));
2989
- if (o.isClassExpression(c)) {
2990
- (c.members.length !== 0 || c.heritageClauses !== void 0) && a.emitError(
2991
- "The only supported inline class expression is an empty class. Extract into a separate named class",
2992
- { file: a.file, node: c }
2993
- );
2994
- break;
2995
- } else o.isExpressionWithTypeArguments(c) && (s = c.typeArguments, c = c.expression);
2996
- }
2997
- const p = Ee(
2998
- c,
2999
- a.isInLuminaMinimalExtraction ? void 0 : s,
3000
- a
3001
- );
3002
- if (a.isComponentProject && p.name === "LitElement") {
3003
- p.name = "HTMLElement", p.package = le, p.viewUrl = "https://developer.mozilla.org/docs/Web/API/HTMLElement";
3004
- const d = a.moduleContext.importsMap.LitElement;
3005
- d === void 0 ? a.emitError("API Extractor bug: Expected LitElement import to be defined", {
3006
- file: a.file,
3007
- node: i
3008
- }) : d.actualName = "PublicLitElement";
3009
- }
3010
- n.superclass = p;
3011
- break;
3012
- } else {
3013
- const s = so(l);
3014
- let c = s, p;
3015
- if (o.isExpressionWithTypeArguments(s))
3016
- c = s.expression, p = s.typeArguments;
3017
- else if (o.isTypeReferenceNode(s) && (c = s.typeName, p = s.typeArguments, c.escapedText === "Record" && p?.length === 2 && p[0].kind === o.SyntaxKind.NeverKeyword && p[1].kind === o.SyntaxKind.NeverKeyword))
3018
- continue;
3019
- n.supertypes ??= [], n.supertypes.push(
3020
- Ee(c, p, a)
3021
- );
3022
- }
3023
- }
3024
- }
3025
- function Ei(e, t, n, i) {
3026
- i.apiObject = e;
3027
- const a = e.customElement === !0, r = e.members, l = t.length;
3028
- let s, c = t[0], p, d = De(c?.name), m = !1;
3029
- for (let u = 0; u < l; ++u) {
3030
- if (s = c, c = t[u + 1], p = d, d = De(c?.name), i.pairedSetter !== void 0) {
3031
- i.pairedSetter = void 0;
3032
- continue;
3033
- }
3034
- if (p === void 0 && s.name?.kind === o.SyntaxKind.PrivateIdentifier)
3035
- continue;
3036
- c !== void 0 && p === d && (o.isGetAccessor(c) ? (i.pairedSetter = s, s = c) : o.isSetAccessor(c) && (i.pairedSetter = c));
3037
- let f = ne(s, !0, i) ?? (i.pairedSetter === void 0 ? void 0 : ne(i.pairedSetter, !0, i));
3038
- if (f === void 0 && !i.config.strict && (a ? p !== void 0 && Qt(s, i.pairedSetter, !0) : !pi(s.modifiers, o.SyntaxKind.PrivateKeyword))) {
3039
- const C = i.pairedSetter === void 0 ? ze(s, !1, i, Re) : ne(s, !1, i) ?? ze(i.pairedSetter, !1, i, Re);
3040
- C?.docsTags.includes(N.private) === !0 ? a && i.config.context.includeLuminaPrivateComponents ? f = Ce : f = void 0 : f = C;
3041
- } else f === void 0 && a && i.config.context.includeLuminaPrivateComponents && Qt(s, i.pairedSetter, !1) && (f = Ce);
3042
- if (f === void 0) {
3043
- a && o.isPropertyDeclaration(s) && o.isIdentifier(s.name) && (s.name.escapedText === "shadowRootOptions" && s.initializer !== void 0 && o.isIdentifier(s.initializer) && s.initializer.escapedText === "noShadowRoot" && (i.apiObject.encapsulation = "none"), s.name.escapedText === "formAssociated" && s.initializer !== void 0 && Y(s.initializer, i) && (i.apiObject.formAssociated = !0));
3044
- continue;
3045
- }
3046
- i.jsDoc = f;
3047
- let S;
3048
- o.isPropertyDeclaration(s) || o.isPropertyAssignment(s) || o.isGetAccessorDeclaration(s) || o.isSetAccessorDeclaration(s) || o.isPropertySignature(s) ? S = Ti(s, p, !1, i) : o.isMethodDeclaration(s) || o.isMethodSignature(s) ? S = st(s, p, void 0, i) : o.isConstructorDeclaration(s) || o.isConstructSignatureDeclaration(s) ? (m = !0, S = st(s, n, void 0, i)) : o.isCallSignatureDeclaration(s) ? S = st(s, n, void 0, i) : o.isIndexSignatureDeclaration(s) && e.kind === "interface" ? (lt.members.splice(
3049
- 0,
3050
- lt.members.length,
3051
- s
3052
- ), Ci(e, lt, i), ue(e).emitAsTypeAlias = !0) : i.emitError(`@public used on unsupported member kind: ${o.SyntaxKind[s.kind]}`, {
3053
- file: i.file,
3054
- node: s
3055
- }), S !== void 0 && r.push(S);
3056
- }
3057
- return i.apiObject = void 0, m;
3058
- }
3059
- const lt = o.factory.createTypeLiteralNode(void 0);
3060
- function Qt(e, t, n) {
3061
- if (e.kind === o.SyntaxKind.PropertyDeclaration || e.kind === o.SyntaxKind.GetAccessor || e.kind === o.SyntaxKind.SetAccessor) {
3062
- const i = e;
3063
- if ((xe(i.modifiers, "property") ?? (t === void 0 ? void 0 : xe(t.modifiers, "property"))) !== void 0)
3064
- return !0;
3065
- if (!n)
3066
- return !1;
3067
- if (hi(e))
3068
- return !0;
3069
- if (i.modifiers !== void 0)
3070
- for (let r = 0; r < (i.modifiers?.length ?? 0); ++r) {
3071
- const l = i.modifiers[r];
3072
- if (l.kind === o.SyntaxKind.PrivateKeyword || l.kind === o.SyntaxKind.ProtectedKeyword || l.kind === o.SyntaxKind.StaticKeyword)
3073
- return !1;
3074
- }
3075
- 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;
3076
- } else return e.kind === o.SyntaxKind.MethodDeclaration ? xe(e.modifiers, "method") !== void 0 : !1;
3077
- }
3078
- function Ci(e, t, n) {
3079
- const i = j(t, n);
3080
- if (e.type === void 0)
3081
- e.type = i;
3082
- else {
3083
- const a = `${e.type.text} &
3084
- `, r = a.length;
3085
- e.type = {
3086
- text: `${a}${i.text}`,
3087
- references: i.references === void 0 ? e.type.references : e.type.references === void 0 ? Ft(i.references, r) : [...e.type.references, ...Ft(i.references, r)],
3088
- values: void 0,
3089
- source: void 0
3090
- };
3091
- }
3092
- }
3093
- function wo(e, t, n) {
3094
- if (!o.isTypeQueryNode(t)) {
3095
- n.emitError("Expected a TypeQueryNode for applyMixins syntax", { file: n.file, node: t });
3096
- return;
3097
- }
3098
- if (!o.isIdentifier(t.exprName)) {
3099
- n.emitError("Expected an Identifier for the expression name in applyMixins syntax", {
3100
- file: n.file,
3101
- node: t
3102
- });
3103
- return;
3104
- }
3105
- const i = t.exprName.escapedText;
3106
- let a;
3107
- for (let s = n.file.statements.length - 1; s >= 0; --s) {
3108
- const c = n.file.statements[s];
3109
- if (!o.isVariableStatement(c))
3110
- continue;
3111
- const p = c.declarationList.declarations[0];
3112
- if (o.isIdentifier(p.name) && p.name?.escapedText === i) {
3113
- a = p;
3114
- break;
3115
- }
3116
- }
3117
- if (a === void 0) {
3118
- n.emitError(`Could not find variable declaration for ${i} in applyMixins syntax`, {
3119
- file: n.file,
3120
- node: t
3121
- });
3122
- return;
3123
- }
3124
- if (a.initializer === void 0 || !o.isAsExpression(a.initializer) || !o.isArrayLiteralExpression(a.initializer.expression)) {
3125
- n.emitError(
3126
- `Expected an 'as' expression with an array literal for the initializer of ${i} in applyMixins syntax`,
3127
- {
3128
- file: n.file,
3129
- node: a
3130
- }
3131
- );
3132
- return;
3133
- }
3134
- const r = n.apiModule.declarations.at(-1);
3135
- if (r?.kind !== "class" || r.name !== e) {
3136
- n.emitError(
3137
- `Expected the ${e} class to be defined right before the ${e} interface`,
3138
- {
3139
- file: n.file,
3140
- node: t
3141
- }
3142
- );
3143
- return;
3144
- }
3145
- const l = a.initializer.expression.elements;
3146
- r.mixins ??= [];
3147
- for (let s = 0; s < l.length; ++s) {
3148
- const c = l[s];
3149
- if (!o.isIdentifier(c)) {
3150
- n.emitError(`Expected an Identifier in the mixins array for ${i} in applyMixins syntax`, {
3151
- file: n.file,
3152
- node: c
3153
- });
3154
- return;
3155
- }
3156
- r.mixins.unshift(Ee(c, void 0, n));
3157
- }
3158
- }
3159
- function Uo(e, t) {
3160
- const n = e.type, i = e.name.escapedText, a = mi(i, t), r = ni(), l = {
3161
- [J]: r,
3162
- kind: "interface",
3163
- name: i,
3164
- customElement: void 0,
3165
- tagName: void 0,
3166
- privacy: void 0,
3167
- pascalCaseName: void 0,
3168
- deprecated: void 0,
3169
- summary: void 0,
3170
- description: void 0,
3171
- docsTags: void 0,
3172
- demos: void 0,
3173
- typeParameters: nt(e.typeParameters, !0, t),
3174
- superclass: void 0,
3175
- supertypes: void 0,
3176
- mixins: void 0,
3177
- encapsulation: void 0,
3178
- formAssociated: void 0,
3179
- members: [],
3180
- attributes: void 0,
3181
- events: void 0,
3182
- slots: void 0,
3183
- cssParts: void 0,
3184
- cssProperties: void 0,
3185
- cssStates: void 0,
3186
- type: void 0,
3187
- source: void 0,
3188
- importPath: void 0
3189
- }, s = l;
3190
- if (ai(l, t.jsDoc), a)
3191
- t.moduleContext.constructorPropertiesInterface = s;
3192
- else {
3193
- r.emitAsTypeAlias = !0;
3194
- const c = o.isIntersectionTypeNode(n) ? n.types : [n];
3195
- for (let p = 0; p < c.length; ++p) {
3196
- const d = Ct(c[p]);
3197
- if (o.isTypeLiteralNode(d))
3198
- Ei(s, d.members, i, t);
3199
- else if (o.isTypeReferenceNode(d))
3200
- s.supertypes ??= [], s.supertypes.push(Ee(d.typeName, d.typeArguments, t));
3201
- else if (o.isFunctionTypeNode(d) || o.isConstructorTypeNode(d)) {
3202
- if (t.jsDoc = Re, s.docsTags !== void 0) {
3203
- t.jsDoc = { ...Re, docsTags: [] };
3204
- for (let m = 0; m < s.docsTags.length; ++m) {
3205
- const u = s.docsTags[m];
3206
- (u.name === "param" || u.name === "returns") && (t.jsDoc.docsTags.push(u), s.docsTags.splice(m, 1), m -= 1);
3207
- }
3208
- s.docsTags.length === 0 && (s.docsTags = void 0);
3209
- }
3210
- s.members.push(Po(d, i, void 0, t));
3211
- } else
3212
- Ci(s, d, t);
3213
- }
3214
- }
3215
- return t.objectLikeTypeParameters = void 0, Si(
3216
- t,
3217
- e,
3218
- t.config.documentation.copyDocDefinitions.interfaces,
3219
- s,
3220
- t.apiModule
3221
- ), s.members.length === 0 && (s.members = void 0), s;
3222
- }
3223
- function Vo(e, t, n) {
3224
- const i = e.initializer, a = i.body;
3225
- let r, l;
3226
- for (let d = 0; d < a.statements.length; ++d) {
3227
- const m = a.statements[d];
3228
- if (o.isVariableStatement(m)) {
3229
- const u = m.declarationList.declarations[0];
3230
- if (!o.isIdentifier(u.name) || u.name?.escapedText !== "TypedBase")
3231
- continue;
3232
- let f = u.initializer.expression.expression;
3233
- for (; o.isCallExpression(f); ) {
3234
- const S = f.expression;
3235
- r ??= [], r.push(Ee(S, f.typeArguments, n)), f = f.arguments[0];
3236
- }
3237
- } else o.isClassDeclaration(m) && (l = m);
3238
- }
3239
- if (l === void 0) {
3240
- n.emitError(`Failed to find class declaration inside the mixin ${t}`, {
3241
- file: n.file,
3242
- node: e
3243
- });
3244
- return;
3245
- }
3246
- nt(
3247
- // Skip the TBase type parameter - non-public implementation detail
3248
- i.typeParameters.length === 1 ? void 0 : i.typeParameters.slice(1),
3249
- !0,
3250
- n
3251
- ) !== void 0 && n.emitError(
3252
- "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/sdk/contributing/core/core/mixins#limitations-of-mixins",
3253
- {
3254
- file: n.file,
3255
- node: e
3256
- }
3257
- ), n.mixinName = t, n.mixinMixins = r;
3258
- const p = Ze(l, n);
3259
- return p.kind = "mixin", p;
3260
- }
3261
- function Wo(e, t, n) {
3262
- const i = n.moduleHasClass;
3263
- n.moduleHasClass = !1;
3264
- const a = o.factory.createClassDeclaration(
3265
- [o.factory.createModifier(o.SyntaxKind.ExportKeyword)],
3266
- t,
3267
- void 0,
3268
- [
3269
- o.factory.createHeritageClause(o.SyntaxKind.ExtendsKeyword, [
3270
- o.factory.createExpressionWithTypeArguments(e, void 0)
3271
- ])
3272
- ],
3273
- []
3274
- ), r = Ze(a, n), l = r, s = ue(l);
3275
- return l.kind = "interface", l.supertypes = r.mixins, r.mixins = void 0, r.superclass !== void 0 && (l.supertypes ??= [], l.supertypes.unshift(r.superclass), r.superclass = void 0), n.moduleHasClass = i, s.isMixinBaseClass = !0, l;
3276
- }
3277
- function _o(e, t) {
3278
- const n = e.declarationList.declarations;
3279
- n.length !== 1 && t.emitError("Public variable statements must have only a single variable declarations. Found multiple.", {
3280
- file: t.file,
3281
- node: e
3282
- });
3283
- const i = n[0], a = i.name;
3284
- if (!o.isIdentifier(a)) {
3285
- t.config.strict && t.emitError("Expected public variable names to be an identifier.", {
3286
- file: t.file,
3287
- node: e
3288
- });
3289
- return;
3290
- }
3291
- const r = a.escapedText, l = t.exportDefaultName === r;
3292
- if (tt(e) === 0 && !l && t.config.strict && t.emitError("Expected @public variable to be exported as named or default export.", {
3293
- file: t.file,
3294
- node: e
3295
- }), t.mixinName !== void 0 && i.initializer !== void 0 && o.isCallExpression(i.initializer) && o.isIdentifier(i.initializer.expression) && i.initializer.expression.escapedText === t.mixinName)
3296
- return Wo(i.initializer, r, t);
3297
- let c = i.type;
3298
- const p = (e.declarationList.flags & o.NodeFlags.Const) !== 0;
3299
- if (c === void 0) {
3300
- const f = i.initializer;
3301
- if (f !== void 0 && o.isArrowFunction(f) && p)
3302
- return f.typeParameters?.at(0)?.name?.escapedText === "TBase" ? Vo(i, r, t) : Ht(f, r, e, t);
3303
- f === void 0 ? c = X(
3304
- { file: t.file, node: i },
3305
- "Public variable must have a type annotation or a default value",
3306
- t
3307
- ) : c = Et(f, p ? O.shallow : O.false, t.file, t);
3308
- } else if (c = Ct(c), o.isFunctionTypeNode(c))
3309
- return Ht(c, r, e, t);
3310
- const d = Ni(), m = {
3311
- [J]: d,
3312
- kind: "variable",
3313
- name: r,
3314
- deprecated: void 0,
3315
- summary: void 0,
3316
- description: void 0,
3317
- docsTags: void 0,
3318
- source: void 0,
3319
- type: j(c, t),
3320
- default: void 0
3321
- };
3322
- return un(m, t.jsDoc), p && c.kind === o.SyntaxKind.LiteralType || (m.default = $e(i.initializer, m.default, t.file)), To(
3323
- t,
3324
- e,
3325
- t.config.documentation.copyDocDefinitions.variables,
3326
- m,
3327
- t.apiModule
3328
- ), l && (Pt(m, !0, t), t.produceDts && (d.isDefaultExported = !0)), m;
3329
- }
3330
- function Pi(e, t, n) {
3331
- const i = n.statementJsDocs[t];
3332
- if (i !== void 0) {
3333
- if (n.jsDoc = i, o.isClassDeclaration(e))
3334
- return Ze(e, n);
3335
- if (o.isFunctionDeclaration(e))
3336
- return Co(e, e.name.escapedText, void 0, n);
3337
- if (o.isInterfaceDeclaration(e))
3338
- return Ze(e, n);
3339
- if (o.isTypeAliasDeclaration(e))
3340
- return Uo(e, n);
3341
- if (o.isVariableStatement(e))
3342
- return _o(e, n);
3343
- }
3344
- }
3345
- function Bo(e, t) {
3346
- const n = t.apiModule.declarations, i = e.statements;
3347
- for (let a = 0; a < i.length; ++a) {
3348
- const r = i[a], l = Pi(r, a, t);
3349
- l !== void 0 && n.push(l);
3350
- }
3351
- }
3352
- function Ko(e, t) {
3353
- const n = e.fileName.slice(t.config.context.cwd.length), i = t.watchFiles?.get(n);
3354
- if (i !== void 0) {
3355
- if (i.module !== void 0)
3356
- return i.module;
3357
- if (i.isEmptyModule)
3358
- return;
3359
- }
3360
- const a = n.slice(t.config.context.basePath.length), r = Z(a), l = Ve(r, t, !0), s = t.componentTagName === void 0 ? l : `${l}/customElement`;
3361
- t.mixinName = void 0, t.moduleHasClass = !1, t.apiClassLikeName = void 0, t.isInLuminaMinimalExtraction = t.config.context.isLuminaMinimalExtraction;
3362
- const c = /* @__PURE__ */ Object.create(null), p = t.localDeclarations;
3363
- p.clear();
3364
- const d = t.localPrivateDeclarations;
3365
- d?.clear(), t.exportDefaultName = void 0;
3366
- let m;
3367
- const u = {
3368
- class: void 0,
3369
- default: void 0,
3370
- named: /* @__PURE__ */ Object.create(null)
3371
- }, f = ii(e, s, c, u);
3372
- t.moduleContext = f;
3373
- const S = t.implicitPublicModules?.[l];
3374
- let C = !1;
3375
- const v = t.isJsApi && l.startsWith("applications/");
3376
- t.statementJsDocs.length = 0;
3377
- for (let b = 0; b < e.statements.length; ++b) {
3378
- const y = e.statements[b], 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;
3379
- let D;
3380
- if (
3381
- // Only look at web components in Lumina's dev server
3382
- t.isInLuminaMinimalExtraction
3383
- )
3384
- D = y.kind === o.SyntaxKind.ClassDeclaration && t.componentTagName !== void 0 && y.heritageClauses !== void 0 && y.modifiers !== void 0 ? Re : void 0;
3385
- else if (k) {
3386
- if (D = ne(y, !0, t), D === void 0 && !t.config.strict) {
3387
- const I = ze(y, !1, t, {
3388
- description: void 0,
3389
- docsTags: []
3390
- }), x = y.kind === o.SyntaxKind.ClassDeclaration && t.componentTagName !== void 0 && y.heritageClauses !== void 0 && y.modifiers !== void 0;
3391
- I?.docsTags.includes(N.private) === !0 ? x && t.config.context.includeLuminaPrivateComponents ? (D = Ce, t.isInLuminaMinimalExtraction = !0) : D = void 0 : I !== void 0 && (x || S !== void 0 && wn(y, S)) && (D = I);
3392
- } else D === void 0 && t.componentTagName !== void 0 && t.config.context.includeLuminaPrivateComponents && y.kind === o.SyntaxKind.ClassDeclaration && // Avoid the following from being falsely considered a component class
3393
- // https://devtopia.esri.com/WebGIS/arcgis-web-components/blob/223ebb8df0067bf332013a4cfc6032152c14fe58/packages/common-packages/common-components/src/components/ramp-color/ramp-color.tsx#L19-L26
3394
- y.heritageClauses !== void 0 && y.modifiers !== void 0 && (D = Ce, t.isInLuminaMinimalExtraction = !0);
3395
- D !== void 0 && !t.config.strict && y.kind === o.SyntaxKind.ClassDeclaration && t.componentTagName !== void 0 && y.heritageClauses !== void 0 && y.modifiers !== void 0 && D.docsTags.includes(N.internal) && (C = !0);
3396
- }
3397
- if (t.statementJsDocs[b] = D, k || b === 0 && (m = ne(e, !0, t)), D !== void 0)
3398
- v && D.docsTags.push(N.internal), p.add(
3399
- (y.name ?? y.declarationList?.declarations[0].name).escapedText
3400
- ), 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);
3401
- else if (o.isImportDeclaration(y)) {
3402
- const I = y.importClause;
3403
- if (I === void 0)
3404
- continue;
3405
- const x = y.moduleSpecifier.text, g = !x.startsWith("."), K = g ? x : Z(x), w = g ? void 0 : Ve(pt(r, K), t), $ = w === void 0 ? void 0 : t.config.types.typeReplacements[w];
3406
- if (Ln(y, t), I.name !== void 0) {
3407
- const E = I.name.escapedText, T = $?.[E], R = T?.[1], A = T?.[0] ?? w;
3408
- c[E] = {
3409
- type: T?.[2] ?? "default",
3410
- modulePath: A,
3411
- rawSpecifier: x,
3412
- replacementName: R,
3413
- actualName: void 0,
3414
- wasUsed: !1
3415
- };
3416
- }
3417
- const B = I.namedBindings;
3418
- if (B === void 0)
3419
- continue;
3420
- if (B.kind === o.SyntaxKind.NamespaceImport) {
3421
- const E = B.name.escapedText, T = $?.[E], R = T?.[1], A = T?.[0] ?? w;
3422
- c[E] = {
3423
- type: "*",
3424
- modulePath: A,
3425
- rawSpecifier: x,
3426
- replacementName: R,
3427
- actualName: void 0,
3428
- wasUsed: !1
3429
- };
3430
- } else
3431
- for (let E = 0; E < B.elements.length; ++E) {
3432
- const T = B.elements[E], R = T.propertyName === void 0 ? void 0 : T.propertyName.escapedText ?? T.propertyName.text, A = T.name.escapedText, H = $?.[R ?? A], V = H?.[1], G = H?.[0] ?? w;
3433
- c[A] = {
3434
- type: H?.[2] ?? "named",
3435
- modulePath: G,
3436
- rawSpecifier: x,
3437
- replacementName: V,
3438
- actualName: H === void 0 ? R : void 0,
3439
- wasUsed: !1
3440
- };
3441
- }
3442
- } else if (o.isExportAssignment(y)) {
3443
- if (o.isIdentifier(y.expression)) {
3444
- const I = y.expression.escapedText;
3445
- t.exportDefaultName = I, !p.has(I) && d?.has(I) === !0 && S?.pendingNames?.has("default") === !0 && d.set(I, Math.abs(d.get(I)));
3446
- }
3447
- } else if (o.isExportDeclaration(y) && y.moduleSpecifier !== void 0 && !t.isInLuminaMinimalExtraction) {
3448
- if (ne(y, !0, t) !== void 0) {
3449
- const x = y.moduleSpecifier.text, g = !x.startsWith("."), K = g ? x : pt(r, Z(x)), w = g ? void 0 : Ve(K, t);
3450
- f.reExports ??= [];
3451
- const $ = [];
3452
- if (y.exportClause?.kind === o.SyntaxKind.NamedExports) {
3453
- const B = y.exportClause.elements;
3454
- for (let E = 0; E < B.length; ++E) {
3455
- const T = B[E], R = De(T.name), A = T.propertyName === void 0 ? void 0 : De(T.propertyName), H = A ?? R, V = A === void 0 ? void 0 : R;
3456
- $.push({
3457
- exportName: H,
3458
- aliasName: V,
3459
- isTypeOnly: y.isTypeOnly
3460
- }), !t.config.strict && w !== void 0 && je(w, K, H, t);
3461
- }
3462
- } else
3463
- $.push({
3464
- exportName: "*",
3465
- aliasName: y.exportClause === void 0 ? void 0 : De(y.exportClause.name),
3466
- isTypeOnly: !1
3467
- }), !t.config.strict && w !== void 0 && je(w, K, "*", t);
3468
- f.reExports.push({
3469
- modulePath: w,
3470
- externalSpecifier: g ? x : void 0,
3471
- isTypeOnly: y.isTypeOnly,
3472
- specifiers: $
3473
- });
3474
- }
3475
- } else o.isModuleDeclaration(y) ? ne(y, !0, t) !== void 0 && (f.namespaces ??= [], f.namespaces.push(y.getFullText(e))) : d !== void 0 && k && d.set(
3476
- (y.name ?? y.declarationList?.declarations[0].name).escapedText,
3477
- -b
3478
- );
3479
- }
3480
- const P = t.config.types.typeReplacements[l];
3481
- if (P !== void 0) {
3482
- const b = Object.keys(P);
3483
- for (let y = 0; y < b.length; ++y) {
3484
- const k = b[y], D = P[k];
3485
- c[k] = {
3486
- type: D[2],
3487
- modulePath: D[0],
3488
- rawSpecifier: "",
3489
- replacementName: D[1],
3490
- actualName: void 0,
3491
- wasUsed: !1
3492
- };
3493
- }
3494
- }
3495
- t.moduleHasAccessorLikeClass = c.subclass?.rawSpecifier.includes("accessorSupport") ?? !1;
3496
- const h = {
3497
- [J]: f,
3498
- kind: "javascript-module",
3499
- path: l,
3500
- sourcePath: n,
3501
- deprecated: void 0,
3502
- description: void 0,
3503
- docsTags: void 0,
3504
- summary: void 0,
3505
- declarations: [],
3506
- exports: []
3507
- };
3508
- if (t.apiModule = h, Bo(e, t), d !== void 0) {
3509
- let b = !1;
3510
- do {
3511
- b = !1;
3512
- for (const [y, k] of d)
3513
- if (k > 0 || Object.is(k, 0)) {
3514
- d.delete(y), p.add(y), b = !0;
3515
- const D = e.statements[k], I = ze(D, !1, t, {
3516
- description: void 0,
3517
- docsTags: []
3518
- });
3519
- if (I === void 0)
3520
- continue;
3521
- if (I.docsTags.includes(N.private))
3522
- t.emitError(
3523
- `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.`,
3524
- {
3525
- file: e,
3526
- node: D
3527
- }
3528
- );
3529
- else {
3530
- C && !I.docsTags.includes(N.internal) && I.docsTags.push(N.internal), t.statementJsDocs[k] = I;
3531
- const g = Pi(D, k, t);
3532
- g !== void 0 && h.declarations.push(g);
3533
- }
3534
- }
3535
- } while (b);
3536
- }
3537
- if (h.declarations.length === 0 && f.reExports === void 0 && f.namespaces === void 0) {
3538
- i !== void 0 && (i.isEmptyModule = !0);
3539
- return;
3540
- }
3541
- t.moduleMap.set(l, h), t.watchFiles !== void 0 && (i === void 0 ? t.watchFiles.set(h.sourcePath, {
3542
- file: f.file,
3543
- module: h,
3544
- previousModule: void 0,
3545
- isEmptyModule: !1,
3546
- dependencies: /* @__PURE__ */ new Set(),
3547
- dependents: /* @__PURE__ */ new Map(),
3548
- docLinks: [],
3549
- hasDirtyLinks: !1,
3550
- wasRemoved: !1
3551
- }) : i.module = h);
3552
- const L = t.componentTagName === void 0 ? h.exports[0]?.declaration.name : void 0;
3553
- h.exports.length === 0 && (h.exports = void 0);
3554
- for (let b = 0; b < h.declarations.length; ++b) {
3555
- const y = h.declarations[b];
3556
- (y.kind === "class" || y.kind === "mixin") && (u.class = y), L === y.name && (u.default = y), u.named[y.name] = y;
3557
- }
3558
- return m !== void 0 && (t.moduleHasClass ? t.emitError(
3559
- "A module that exports a class must have JSDoc attached to the class, rather than module-top JSDoc. See https://webgis.esri.com/references/api-extractor/api-node-kinds#module-level-documentation",
3560
- {
3561
- file: e,
3562
- start: 0,
3563
- length: e.statements[0]?.getStart(e) ?? 1,
3564
- node: void 0
3565
- }
3566
- ) : (v && m.docsTags.push(N.internal), dn(h, m))), h;
3567
- }
3568
- async function ba(e) {
3569
- const t = [], n = e.basePath, i = e.config.context.excludedDirectories, a = `${e.basePath}components/`, r = [], l = !e.config.strict || e.config.context.includeLuminaPrivateComponents;
3570
- e.componentPathMapping = /* @__PURE__ */ Object.create(null);
3571
- const s = e.isComponentProject ? (m) => $i(m, a) : () => !1, c = e.isComponentProject ? p : d;
3572
- if (e.program === void 0)
3573
- await Di(n, i, async (m) => {
3574
- if (bi(m))
3575
- return;
3576
- const u = await Lt(m);
3577
- if (m.includes(".stories.")) {
3578
- const C = u.toString("utf8");
3579
- Vt(C, m, e);
3580
- return;
3581
- }
3582
- const f = s(m);
3583
- if (f && l || // Exclude files before paying .toString() cost
3584
- u.includes(jo) && (u.includes(Jo) || u.includes(qo))) {
3585
- const C = u.toString("utf8"), v = Yt(m, C);
3586
- c(v, f);
3587
- }
3588
- });
3589
- else {
3590
- const m = e.program.getSourceFiles();
3591
- for (let u = 0; u < m.length; ++u) {
3592
- const f = m[u], S = f.fileName;
3593
- if (!Ho(S, e))
3594
- continue;
3595
- if (S.includes(".stories.")) {
3596
- Vt(f.text, S, e);
3597
- continue;
3598
- }
3599
- const C = s(S);
3600
- (C && l || f.text.includes(Mi) || f.text.includes(xi)) && c(f, C);
3601
- }
3602
- }
3603
- function p(m, u) {
3604
- r.push(m);
3605
- const f = u ? zi(m.text)?.[0] : void 0;
3606
- if (f !== void 0) {
3607
- const S = m.fileName.slice(e.basePath.length);
3608
- ji(f, e, S);
3609
- }
3610
- }
3611
- function d(m) {
3612
- e.file = m;
3613
- const u = Ko(m, e);
3614
- u !== void 0 && t.push(u);
3615
- }
3616
- for (let m = 0; m < r.length; ++m)
3617
- d(r[m]);
3618
- if (e.implicitPublicModules !== void 0) {
3619
- let m = !1;
3620
- do {
3621
- m = !1;
3622
- for (const u in e.implicitPublicModules) {
3623
- const f = e.implicitPublicModules[u], S = f.actualModulePath ?? u, C = e.moduleMap.get(S);
3624
- if (f.extractedNames === void 0)
3625
- continue;
3626
- if (f.pendingNames !== void 0) {
3627
- const L = e.watchFiles?.get(e.config.context.basePath + f.sourcePath);
3628
- let y = !(L !== void 0 && L.module === void 0 && !L.isEmptyModule);
3629
- const k = C === void 0 ? void 0 : me(C).index;
3630
- for (const D of f.pendingNames)
3631
- if (!f.extractedNames.has(D) && (k === void 0 || (D === "default" ? k.default === void 0 : k.named[D] === void 0))) {
3632
- y = !1;
3633
- break;
3634
- }
3635
- if (y)
3636
- continue;
3637
- }
3638
- if (C !== void 0) {
3639
- t.splice(t.indexOf(C), 1);
3640
- const L = e.watchFiles?.get(C.sourcePath);
3641
- L !== void 0 && (L.module = void 0);
3642
- }
3643
- m = !0, f.extractedNames = f.pendingNames === void 0 ? void 0 : new Set(f.pendingNames);
3644
- let v = e.basePath + f.sourcePath, P = !1, h = e.program?.getSourceFile(v) ?? e.program?.getSourceFile(`${v}.ts`) ?? e.program?.getSourceFile(`${v}.tsx`) ?? e.program?.getSourceFile(`${v}.d.ts`);
3645
- 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 && (P = !0)), e.program === void 0) {
3646
- if (Z(v) === v) {
3647
- const b = v;
3648
- v = ye(`${b}.ts`) ? `${b}.ts` : ye(`${b}.tsx`) ? `${b}.tsx` : ye(`${b}.d.ts`) ? `${b}.d.ts` : void 0, v === void 0 && (v = ye(`${b}/index.ts`) ? `${b}/index.ts` : ye(`${b}/index.tsx`) ? `${b}/index.tsx` : ye(`${b}/index.d.ts`) ? `${b}/index.d.ts` : void 0, v !== void 0 && (P = !0));
3649
- }
3650
- v !== void 0 && (h = Yt(v, await Lt(v, "utf8")));
3651
- }
3652
- if (h !== void 0) {
3653
- const L = h.fileName.slice(e.basePath.length);
3654
- L !== f.sourcePath && (f.sourcePath = L), P && (f.actualModulePath = `${S}/index`), d(h);
3655
- }
3656
- }
3657
- } while (m);
3658
- }
3659
- return t;
3660
- }
3661
- const Ho = (e, t) => $o(e) && zo(e, t), $o = (e) => (e.endsWith(".ts") || e.endsWith(".tsx")) && !bi(e), bi = (e) => e.includes("__test") || e.includes(".e2e.") || e.includes(".spec.") || e.includes(".test."), zo = (e, t) => e.startsWith(t.basePath) && !t.config.context.excludedDirectories.has(
3662
- Cn(e.slice(t.basePath.length))
3663
- ) && !e.includes("node_modules"), Xt = 32, jo = 64, Mi = "@public", Jo = Buffer.from(Mi), xi = "@internal", qo = Buffer.from(xi);
3664
- async function Ma(e) {
3665
- await Zt(e) && await Di(e, /* @__PURE__ */ new Set(), Hi);
3666
- }
3667
- async function Di(e, t, n) {
3668
- const i = [], a = [];
3669
- for await (const d of await It(e)) {
3670
- const m = `${e}${d.name}`;
3671
- d.isDirectory() && !t.has(d.name) ? a.push(m) : (d.name.endsWith(".ts") || d.name.endsWith(".tsx")) && i.push(m);
3672
- }
3673
- const r = i.length === 0 ? [] : [i], l = Promise.withResolvers();
3674
- function s(d) {
3675
- l.reject(d), r.length = 0;
3676
- }
3677
- let c = Xt;
3678
- for (let d = 0; d < Xt; ++d)
3679
- p().catch(s);
3680
- async function p() {
3681
- for (; ; )
3682
- if (r.length === 0 && a.length > 0) {
3683
- const d = a.shift(), m = [];
3684
- for await (const u of await It(d, { recursive: !0 }))
3685
- u.isFile() && (u.name.endsWith(".ts") || u.name.endsWith(".tsx")) && m.push(`${Li(u.parentPath)}/${u.name}`);
3686
- if (m.length === 0)
3687
- continue;
3688
- r.push(m);
3689
- } else if (r.length > 0) {
3690
- const d = r[0], m = d.shift();
3691
- d.length === 0 && r.shift(), await n(m);
3692
- } else {
3693
- c -= 1, c === 0 && l.resolve();
3694
- return;
3695
- }
3696
- }
3697
- return await l.promise;
3698
- }
3699
- function Yt(e, t) {
3700
- return o.createSourceFile(
3701
- e,
3702
- t,
3703
- {
3704
- languageVersion: o.ScriptTarget.Latest,
3705
- impliedNodeFormat: o.ModuleKind.ESNext,
3706
- // TypeScript parses too much around @param, @property and @deprecated tags
3707
- // It also parses out inline tags. We have to put them back together
3708
- // (overhead and complexity). Plus, it is a bit too tolerant - we want
3709
- // to disallow some ambiguous behavior to improve consistency.
3710
- // So, we disable JSDoc parsing and do it ourselves.
3711
- jsDocParsingMode: o.JSDocParsingMode.ParseNone
3712
- },
3713
- !1,
3714
- e.endsWith("ts") ? o.ScriptKind.TS : o.ScriptKind.TSX
3715
- );
3716
- }
3717
- export {
3718
- gn as a,
3719
- ha as b,
3720
- Ma as c,
3721
- Ea as d,
3722
- ba as e,
3723
- Ca as f,
3724
- $o as g,
3725
- zo as h,
3726
- Ho as i,
3727
- bi as j,
3728
- Yt as k,
3729
- Sa as l,
3730
- ga as m,
3731
- Ot as n,
3732
- Ft as o,
3733
- Ta as p,
3734
- va as r,
3735
- Pa as t
3736
- };