@arcgis/codemod 5.2.0-next.93 → 5.2.0-next.95

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,311 +0,0 @@
1
- var C = (t, s) => (s = Symbol[t]) ? s : /* @__PURE__ */ Symbol.for("Symbol." + t), D = (t) => {
2
- throw TypeError(t);
3
- };
4
- var T = (t, s, e) => {
5
- if (s != null) {
6
- typeof s != "object" && typeof s != "function" && D("Object expected");
7
- var n, o;
8
- e && (n = s[C("asyncDispose")]), n === void 0 && (n = s[C("dispose")], e && (o = n)), typeof n != "function" && D("Object not disposable"), o && (n = function() {
9
- try {
10
- o.call(this);
11
- } catch (i) {
12
- return Promise.reject(i);
13
- }
14
- }), t.push([e, n, s]);
15
- } else e && t.push([e]);
16
- return s;
17
- }, P = (t, s, e) => {
18
- var n = typeof SuppressedError == "function" ? SuppressedError : function(r, a, c, d) {
19
- return d = Error(c), d.name = "SuppressedError", d.error = r, d.suppressed = a, d;
20
- }, o = (r) => s = e ? new n(r, s, "An error was suppressed during disposal") : (e = !0, r), i = (r) => {
21
- for (; r = t.pop(); )
22
- try {
23
- var a = r[1] && r[1].call(r[2]);
24
- if (r[0]) return Promise.resolve(a).then(i, (c) => (o(c), i()));
25
- } catch (c) {
26
- o(c);
27
- }
28
- if (e) throw s;
29
- };
30
- return i();
31
- };
32
- import { c as N } from "./useProjectInstance-JISA7BBD.js";
33
- import { g as B } from "./cli-BG_bddFb.js";
34
- import { SyntaxKind as f } from "ts-morph";
35
- import { existsAsync as S } from "@arcgis/node-toolkit/file";
36
- import { readFile as J, writeFile as K } from "node:fs/promises";
37
- const ne = {
38
- meta: {
39
- needsTypeInformation: !1
40
- },
41
- async run() {
42
- for (const o of B.projectsData) {
43
- var t = [];
44
- try {
45
- const i = T(t, N(o));
46
- for (const r of i.getCodemodFiles()) {
47
- const a = r.getExtension();
48
- if (a !== ".tsx" || !r.getFullText().includes("interface DeclareElements"))
49
- continue;
50
- const c = g(r);
51
- if (c === void 0)
52
- continue;
53
- const d = j(c);
54
- if (r.getFirstChildByKind(f.ModuleDeclaration) === void 0)
55
- continue;
56
- const $ = F(c);
57
- $ !== void 0 && O(r, c, $, d);
58
- const u = r.getFilePath().slice(0, -a.length + 1);
59
- let l;
60
- if (await S(`${u}css`) ? l = `${u}css` : await S(`${u}scss`) && (l = `${u}scss`), l === void 0)
61
- continue;
62
- const A = await J(l, "utf8"), p = w(A);
63
- p !== void 0 && (p.properties.length > 0 && E(r, p.properties, d), await K(l, p.newCssText, "utf8"));
64
- }
65
- } catch (s) {
66
- var e = s, n = !0;
67
- } finally {
68
- P(t, e, n);
69
- }
70
- }
71
- }
72
- };
73
- function w(t) {
74
- const s = [], e = L(t);
75
- let n = t;
76
- for (const o of e.toReversed()) {
77
- const i = o.description.replaceAll(U, " ").trim(), r = i.endsWith("*") ? i.slice(0, -1).trim() : i, a = M(r);
78
- s.unshift({
79
- name: o.name,
80
- deprecated: a.deprecated,
81
- description: a.description
82
- });
83
- const c = o.index, d = c + o.text.length;
84
- n = `${n.slice(0, c)}${n.slice(d)}`;
85
- }
86
- if (n = n.replaceAll(G, "").replaceAll(Q, ""), !(e.length === 0 && n === t))
87
- return { newCssText: n, properties: s };
88
- }
89
- function L(t) {
90
- const s = [];
91
- for (const e of t.matchAll(q))
92
- e.index !== void 0 && s.push({
93
- index: e.index,
94
- text: e[0],
95
- name: e.groups.name,
96
- description: e.groups.description
97
- });
98
- for (const e of t.matchAll(H))
99
- e.index !== void 0 && s.push({
100
- index: e.index,
101
- text: e[0],
102
- name: e.groups.name,
103
- description: e.groups.description
104
- });
105
- return s.toSorted((e, n) => e.index - n.index);
106
- }
107
- function E(t, s, e) {
108
- const n = t.getFirstChildByKindOrThrow(f.ModuleDeclaration);
109
- t.insertText(
110
- n.getEnd(),
111
- `
112
-
113
- ${y(s, e)}`
114
- );
115
- }
116
- function W(t) {
117
- return g(t) !== void 0;
118
- }
119
- function g(t) {
120
- return t.getClasses().find((s) => s.hasExportKeyword() && s.getExtends() !== void 0);
121
- }
122
- function j(t) {
123
- const s = t.getJsDocs()[0]?.getTags().map((e) => e.getTagName()) ?? [];
124
- if (!s.includes("private")) {
125
- if (s.includes("internal"))
126
- return "internal";
127
- if (s.includes("public"))
128
- return "public";
129
- }
130
- }
131
- function y(t, s) {
132
- return [
133
- 'declare module "@arcgis/lumina" {',
134
- " interface DeclareCssProperties {",
135
- ...t.map((n) => {
136
- const o = [];
137
- return n.description !== void 0 && o.push(` * ${n.description}`), s !== void 0 && o.push(` * @${s}`), n.deprecated !== void 0 && o.push(` * @deprecated ${n.deprecated}`), [
138
- ...o.length > 0 ? [" /**", ...o, " */"] : [],
139
- ` "${n.name}": "*";`
140
- ].join(`
141
- `);
142
- }),
143
- " }",
144
- "}"
145
- ].join(`
146
- `);
147
- }
148
- function F(t) {
149
- const s = t.getJsDocs()[0];
150
- if (s === void 0)
151
- return;
152
- const e = {
153
- slots: [],
154
- cssParts: [],
155
- cssStates: []
156
- };
157
- for (const i of s.getTags()) {
158
- const r = i.getTagName();
159
- if (r !== "slot" && r !== "csspart" && r !== "cssstate")
160
- continue;
161
- const a = I(z(r, i.getText()) ?? i.getCommentText());
162
- i.remove(), r === "slot" ? e.slots.push(a) : r === "csspart" ? e.cssParts.push(a) : e.cssStates.push(a);
163
- }
164
- return e.slots.length > 0 || e.cssParts.length > 0 || e.cssStates.length > 0 ? (s.getTags().length === 0 && (s.getCommentText()?.trim() ?? "") === "" && s.remove(), e) : void 0;
165
- }
166
- function I(t) {
167
- if (t === void 0)
168
- return {
169
- name: "",
170
- deprecated: void 0,
171
- description: void 0,
172
- default: void 0
173
- };
174
- const s = t.indexOf(" - ");
175
- if (s === -1)
176
- return t.startsWith("- ") ? m({
177
- name: "",
178
- description: t.slice(2),
179
- default: void 0
180
- }) : m({
181
- name: t,
182
- description: void 0,
183
- default: void 0
184
- });
185
- let e, n = t.slice(0, s);
186
- if (n.startsWith("[") && n.endsWith("]")) {
187
- const o = n.slice(1, -1), i = o.indexOf("=");
188
- i === -1 ? n = o : (n = o.slice(0, i), e = o.slice(i + 1));
189
- }
190
- return m({
191
- name: n,
192
- description: t.slice(s + 3),
193
- default: e
194
- });
195
- }
196
- function z(t, s) {
197
- const e = `@${t}`, n = s.trim();
198
- if (!n.startsWith(e))
199
- return;
200
- const o = n.slice(e.length).split(/\r?\n/u).map((i) => i.replace(/^\s*\*\s?/u, "").trim()).filter((i) => i.length > 0).join(" ").trim();
201
- return o.length > 0 ? o : void 0;
202
- }
203
- function m(t) {
204
- const s = M(t.description);
205
- return {
206
- name: t.name.trim(),
207
- description: s.description,
208
- deprecated: s.deprecated,
209
- default: t.default
210
- };
211
- }
212
- function M(t) {
213
- const s = t?.trim();
214
- if (s?.startsWith("[Deprecated] ")) {
215
- const e = s.slice(13).trim(), n = e.indexOf(". ");
216
- return n !== -1 ? {
217
- description: e.slice(n + 2).trim(),
218
- deprecated: e.slice(0, n + 1).trim()
219
- } : {
220
- description: void 0,
221
- deprecated: e
222
- };
223
- }
224
- return {
225
- description: s,
226
- deprecated: void 0
227
- };
228
- }
229
- function O(t, s, e, n) {
230
- const o = s.getName();
231
- if (o === void 0)
232
- return;
233
- let i = s;
234
- const r = [];
235
- if (e.cssStates.length > 0 && t.getInterface(`${o}CssStates`) === void 0 && r.push(R(o, e.cssStates, n)), e.cssParts.length > 0 && t.getTypeAlias(`${o}CssParts`) === void 0 && r.push(b(o, e.cssParts, n)), e.slots.length > 0 && t.getInterface(`${o}Slots`) === void 0 && r.push(V(o, e.slots, n)), r.length > 0) {
236
- const v = t.getFirstChildByKindOrThrow(f.ModuleDeclaration);
237
- t.insertText(v.getEnd(), `
238
-
239
- ${r.join(`
240
-
241
- `)}`), i = t.getClassOrThrow(o);
242
- }
243
- const a = i.getFirstChildByKindOrThrow(f.OpenBraceToken), c = [], d = i.getText();
244
- e.cssStates.length > 0 && !d.includes('["@cssStates"]') && c.push(h("@cssStates", `${o}CssStates`, n)), e.slots.length > 0 && !d.includes('["@slots"]') && c.push(h("@slots", `${o}Slots`, n)), e.cssParts.length > 0 && !d.includes('["@cssParts"]') && c.push(h("@cssParts", `${o}CssParts`, n)), c.length > 0 && i.insertText(a.getEnd(), `
245
-
246
- ${c.join(`
247
-
248
- `)}
249
- `);
250
- }
251
- function R(t, s, e) {
252
- const n = s.filter((o) => o.name.length > 0).map((o) => x(o.name, "boolean", o, e));
253
- return [
254
- ...e !== void 0 ? [`/** @${e} */`] : [],
255
- `interface ${t}CssStates {`,
256
- ...n,
257
- "}"
258
- ].join(`
259
- `);
260
- }
261
- function b(t, s, e) {
262
- const n = s.filter((o) => o.name.length > 0).map((o) => x(o.name, "Node", o, e));
263
- return [
264
- ...e !== void 0 ? [`/** @${e} */`] : [],
265
- `type ${t}CssParts = {`,
266
- ...n,
267
- "};"
268
- ].join(`
269
- `);
270
- }
271
- function V(t, s, e) {
272
- const n = s.map((o) => x(o.name, "Node[]", o, e));
273
- return [
274
- ...e !== void 0 ? [`/** @${e} */`] : [],
275
- `interface ${t}Slots {`,
276
- ...n,
277
- "}"
278
- ].join(`
279
- `);
280
- }
281
- function x(t, s, e, n) {
282
- const o = t.length > 0 ? t : "", i = k(e, n), r = JSON.stringify(o);
283
- return [...i, ` ${r}: ${s};`].join(`
284
- `);
285
- }
286
- function k(t, s) {
287
- const e = [];
288
- if (t.description !== void 0 && e.push(...t.description.split(`
289
- `).map((o) => ` * ${o}`)), s !== void 0 && e.push(` * @${s}`), t.default !== void 0 && e.push(` * @default ${t.default}`), t.deprecated !== void 0 && e.push(` * @deprecated ${t.deprecated}`), e.length === 0)
290
- return [];
291
- const n = [" /**", ...e];
292
- return n.push(" */"), n;
293
- }
294
- function h(t, s, e) {
295
- return e === void 0 ? ` override ["${t}"]!: ${s};` : ` /** @${e} */
296
- override ["${t}"]!: ${s};`;
297
- }
298
- const q = /^\s*\*?\s*@prop\s+(?<name>--[\w-]+)(?:\s*:\s*|\s+-\s+)(?<description>[^@/]+?)(?=^\s*\*?\s*@|^\s*\*+\/)/gmu, H = /\/\*\*\s*@prop\s+(?<name>--[\w-]+)(?::\s*|\s+-\s+)(?<description>[^]*?)\s*\*\/\s*/gu, G = /\/\*\*\r?\n[\t ]*\* CSS Custom Properties\r?\n[\t ]*\*\r?\n[\t ]*\* These properties can be overridden using the component's tag as selector\.\r?\n(?:[\t ]*\*\s*\r?\n)*[\t ]*\*\/(?:[\t ]*\r?\n)*/gu, Q = /\/\*\*\s*(?:\r?\n\s*\*\s*)*\r?\n\s*\*\/\s*/gu, U = /\r?\n\s+\*? ?/gu, oe = {
299
- parseStyleDocs: w,
300
- addDeclareCssProperties: E,
301
- hasExportedExtendedClass: W,
302
- getExportedExtendedClass: g,
303
- getVisibilityTag: j,
304
- parseComponentExtrasTag: I,
305
- collectAndRemoveComponentExtras: F,
306
- addComponentExtrasTypesAndMembers: O
307
- };
308
- export {
309
- ne as codemod,
310
- oe as exportsForTests
311
- };
@@ -1,74 +0,0 @@
1
- var c = (t, e) => (e = Symbol[t]) ? e : /* @__PURE__ */ Symbol.for("Symbol." + t), d = (t) => {
2
- throw TypeError(t);
3
- };
4
- var g = (t, e, s) => {
5
- if (e != null) {
6
- typeof e != "object" && typeof e != "function" && d("Object expected");
7
- var i, r;
8
- s && (i = e[c("asyncDispose")]), i === void 0 && (i = e[c("dispose")], s && (r = i)), typeof i != "function" && d("Object not disposable"), r && (i = function() {
9
- try {
10
- r.call(this);
11
- } catch (n) {
12
- return Promise.reject(n);
13
- }
14
- }), t.push([s, i, e]);
15
- } else s && t.push([s]);
16
- return e;
17
- }, f = (t, e, s) => {
18
- var i = typeof SuppressedError == "function" ? SuppressedError : function(o, a, l, m) {
19
- return m = Error(l), m.name = "SuppressedError", m.error = o, m.suppressed = a, m;
20
- }, r = (o) => e = s ? new i(o, e, "An error was suppressed during disposal") : (s = !0, o), n = (o) => {
21
- for (; o = t.pop(); )
22
- try {
23
- var a = o[1] && o[1].call(o[2]);
24
- if (o[0]) return Promise.resolve(a).then(n, (l) => (r(l), n()));
25
- } catch (l) {
26
- r(l);
27
- }
28
- if (s) throw e;
29
- };
30
- return n();
31
- };
32
- import { p } from "./actions-Dk0H5GL7.js";
33
- import { c as k } from "./useProjectInstance-JISA7BBD.js";
34
- import { p as C } from "./cli-BG_bddFb.js";
35
- const j = {
36
- meta: {
37
- needsTypeInformation: !1
38
- },
39
- run(t) {
40
- for (const n of t) {
41
- var e = [];
42
- try {
43
- const o = g(e, k(n));
44
- for (const a of o.getCodemodFiles())
45
- p(a, {
46
- "@arcgis/toolkit/intl": {
47
- getElementLocale: { do: "rename", specifier: "@arcgis/toolkit/intl/dom" },
48
- startLocaleObserver: { do: "rename", specifier: "@arcgis/toolkit/intl/dom" },
49
- LocaleObserverResult: { do: "rename", specifier: "@arcgis/toolkit/intl/dom" }
50
- },
51
- "@arcgis/toolkit/dom": {
52
- slotChangeHasContent: { do: "rename", specifier: "@arcgis/toolkit/dom/slots" },
53
- slotChangeGetTextContent: { do: "rename", specifier: "@arcgis/toolkit/dom/slots" },
54
- slotChangeHasTextContent: { do: "rename", specifier: "@arcgis/toolkit/dom/slots" },
55
- slotChangeHasAssignedNode: { do: "rename", specifier: "@arcgis/toolkit/dom/slots" },
56
- slotChangeGetAssignedNodes: { do: "rename", specifier: "@arcgis/toolkit/dom/slots" },
57
- slotChangeHasAssignedElement: { do: "rename", specifier: "@arcgis/toolkit/dom/slots" },
58
- slotChangeGetAssignedElements: { do: "rename", specifier: "@arcgis/toolkit/dom/slots" },
59
- getSlotAssignedElements: { do: "rename", specifier: "@arcgis/toolkit/dom/slots" },
60
- resolveReferenceElement: { do: "rename", specifier: "@arcgis/toolkit/dom/referenceElement" }
61
- }
62
- });
63
- } catch (s) {
64
- var i = s, r = !0;
65
- } finally {
66
- f(e, i, r);
67
- }
68
- }
69
- C();
70
- }
71
- };
72
- export {
73
- j as codemod
74
- };
@@ -1,47 +0,0 @@
1
- import { Project as p } from "ts-morph";
2
- import { log as d } from "@arcgis/toolkit/log";
3
- import { path as f } from "@arcgis/node-toolkit/path";
4
- import { g as t, d as m } from "./cli-BG_bddFb.js";
5
- import { styleText as s } from "node:util";
6
- function y(e) {
7
- if (t.project !== void 0)
8
- throw Error(
9
- "A different ts-morph Project is already in use. Dispose of it before creating a new one. Example: using project = createProjectInstance(...)"
10
- );
11
- const i = t.codemod.meta.needsTypeInformation, o = new p({
12
- // If tsconfig is missing, or project is untyped, use a permissive and
13
- // compatible default config
14
- compilerOptions: e.typeScriptConfig?.compilerOptions ?? {
15
- ...m,
16
- // Read types from JSDoc annotations if present
17
- checkJs: i
18
- },
19
- // We take care of reading the config file
20
- tsConfigFilePath: void 0,
21
- // We add files manually below
22
- skipAddingFilesFromTsConfig: !0,
23
- // We call this manually if needed below.
24
- skipFileDependencyResolution: !0,
25
- skipLoadingLibFiles: !i
26
- }), l = e.filePaths.map((n) => o.addSourceFileAtPath(n));
27
- i && o.resolveSourceFileDependencies();
28
- const r = f.relative(process.cwd(), e.cwd);
29
- process.stdout.write(""), d(
30
- "info",
31
- s("blue", r === "" ? process.cwd() : r),
32
- `Running the codemod on ${s("blue", String(e.filePaths.length))} file${e.filePaths.length !== 1 ? "s" : ""}${e.packageJson?.contents.name === void 0 ? "" : ` from ${s("blue", e.packageJson.contents.name)}`}`
33
- );
34
- const c = {
35
- [Symbol.dispose]() {
36
- o.saveSync(), o.getRootDirectories().forEach((n) => n.forget()), t.project = void 0;
37
- },
38
- projectData: e,
39
- // Resolved dependencies support type checking but are not codemod targets.
40
- getCodemodFiles: () => l,
41
- tsMorph: o
42
- };
43
- return t.project = c, c;
44
- }
45
- export {
46
- y as c
47
- };