@cedarjs/codemods 2.2.1-next.0 → 2.2.1-rc.23
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.
- package/dist/codemods/list.yargs.js +3 -3
- package/dist/codemods/v2.x.x/configureFastify/configureFastify.yargs.js +5 -5
- package/dist/codemods/v5.x.x/updateNodeEngineTo18/updateNodeEngineTo18.js +3 -3
- package/dist/codemods/v5.x.x/upgradeToReact18/upgradeToReact18.js +7 -7
- package/dist/codemods/v6.x.x/convertJsToJsx/convertJsToJsx.js +2 -2
- package/dist/codemods/v6.x.x/updateDevFatalErrorPage/updateDevFatalErrorPage.js +4 -4
- package/dist/codemods/v7.x.x/updateGraphQLConfig/updateGraphqlConfig.js +2 -2
- package/dist/lib/cells.js +2 -2
- package/dist/lib/getRootPackageJSON.js +2 -2
- package/package.json +4 -6
|
@@ -35,7 +35,7 @@ __export(list_yargs_exports, {
|
|
|
35
35
|
handler: () => handler
|
|
36
36
|
});
|
|
37
37
|
module.exports = __toCommonJS(list_yargs_exports);
|
|
38
|
-
var
|
|
38
|
+
var import_node_fs = __toESM(require("node:fs"));
|
|
39
39
|
var import_path = __toESM(require("path"));
|
|
40
40
|
var import_yargs_parser = require("yargs-parser");
|
|
41
41
|
const command = "list <rwVersion>";
|
|
@@ -45,14 +45,14 @@ const builder = (yargs) => {
|
|
|
45
45
|
yargs.positional("rwVersion", {
|
|
46
46
|
type: "string",
|
|
47
47
|
required: true,
|
|
48
|
-
choices:
|
|
48
|
+
choices: import_node_fs.default.readdirSync(__dirname).filter((file) => !import_node_fs.default.statSync(import_path.default.join(__dirname, file)).isFile())
|
|
49
49
|
// Only list the folders
|
|
50
50
|
});
|
|
51
51
|
};
|
|
52
52
|
const handler = ({ rwVersion }) => {
|
|
53
53
|
console.log("Listing codemods for", rwVersion);
|
|
54
54
|
console.log();
|
|
55
|
-
const modsForVersion =
|
|
55
|
+
const modsForVersion = import_node_fs.default.readdirSync(import_path.default.join(__dirname, rwVersion));
|
|
56
56
|
modsForVersion.forEach((codemod) => {
|
|
57
57
|
console.log(`- npx @cedarjs/codemods ${(0, import_yargs_parser.decamelize)(codemod)}`);
|
|
58
58
|
});
|
|
@@ -33,7 +33,7 @@ __export(configureFastify_yargs_exports, {
|
|
|
33
33
|
handler: () => handler
|
|
34
34
|
});
|
|
35
35
|
module.exports = __toCommonJS(configureFastify_yargs_exports);
|
|
36
|
-
var
|
|
36
|
+
var import_node_fs = __toESM(require("node:fs"));
|
|
37
37
|
var import_path = __toESM(require("path"));
|
|
38
38
|
var import_fetch = require("@whatwg-node/fetch");
|
|
39
39
|
var import_fast_glob = __toESM(require("fast-glob"));
|
|
@@ -49,14 +49,14 @@ const handler = () => {
|
|
|
49
49
|
cwd: (0, import_project_config.getPaths)().api.base,
|
|
50
50
|
absolute: true
|
|
51
51
|
});
|
|
52
|
-
if (
|
|
52
|
+
if (import_node_fs.default.existsSync(API_SERVER_CONFIG_PATH)) {
|
|
53
53
|
await (0, import_runTransform.default)({
|
|
54
54
|
transformPath: import_path.default.join(__dirname, "configureFastify.js"),
|
|
55
55
|
targetPaths: [API_SERVER_CONFIG_PATH]
|
|
56
56
|
});
|
|
57
|
-
|
|
57
|
+
import_node_fs.default.writeFileSync(
|
|
58
58
|
API_SERVER_CONFIG_PATH,
|
|
59
|
-
await (0, import_prettify.default)(
|
|
59
|
+
await (0, import_prettify.default)(import_node_fs.default.readFileSync(API_SERVER_CONFIG_PATH, "utf-8"))
|
|
60
60
|
);
|
|
61
61
|
setOutput("All done!");
|
|
62
62
|
} else {
|
|
@@ -68,7 +68,7 @@ const handler = () => {
|
|
|
68
68
|
(0, import_project_config.getPaths)().api.base,
|
|
69
69
|
"server.config.js"
|
|
70
70
|
);
|
|
71
|
-
|
|
71
|
+
import_node_fs.default.writeFileSync(NEW_API_SERVER_CONFIG_PATH, await (0, import_prettify.default)(text));
|
|
72
72
|
setOutput(
|
|
73
73
|
"Done! No server.config.js found, so we updated your project to use the latest version."
|
|
74
74
|
);
|
|
@@ -31,14 +31,14 @@ __export(updateNodeEngineTo18_exports, {
|
|
|
31
31
|
updateNodeEngineTo18: () => updateNodeEngineTo18
|
|
32
32
|
});
|
|
33
33
|
module.exports = __toCommonJS(updateNodeEngineTo18_exports);
|
|
34
|
-
var
|
|
34
|
+
var import_node_fs = __toESM(require("node:fs"));
|
|
35
35
|
var import_path = __toESM(require("path"));
|
|
36
36
|
var import_project_config = require("@cedarjs/project-config");
|
|
37
37
|
async function updateNodeEngineTo18() {
|
|
38
38
|
const packageJSONPath = import_path.default.join((0, import_project_config.getPaths)().base, "package.json");
|
|
39
|
-
const packageJSON = JSON.parse(
|
|
39
|
+
const packageJSON = JSON.parse(import_node_fs.default.readFileSync(packageJSONPath, "utf-8"));
|
|
40
40
|
packageJSON.engines.node = "=18.x";
|
|
41
|
-
|
|
41
|
+
import_node_fs.default.writeFileSync(packageJSONPath, JSON.stringify(packageJSON, null, 2));
|
|
42
42
|
}
|
|
43
43
|
// Annotate the CommonJS export names for ESM import in node:
|
|
44
44
|
0 && (module.exports = {
|
|
@@ -33,14 +33,14 @@ __export(upgradeToReact18_exports, {
|
|
|
33
33
|
upgradeReactDepsTo18: () => upgradeReactDepsTo18
|
|
34
34
|
});
|
|
35
35
|
module.exports = __toCommonJS(upgradeToReact18_exports);
|
|
36
|
-
var
|
|
36
|
+
var import_node_fs = __toESM(require("node:fs"));
|
|
37
37
|
var import_path = __toESM(require("path"));
|
|
38
38
|
var import_cheerio = require("cheerio");
|
|
39
39
|
var import_execa = __toESM(require("execa"));
|
|
40
40
|
var import_project_config = require("@cedarjs/project-config");
|
|
41
41
|
function checkAndTransformReactRoot(taskContext) {
|
|
42
42
|
const indexHTMLFilepath = import_path.default.join((0, import_project_config.getPaths)().web.src, "index.html");
|
|
43
|
-
const indexHTML = (0, import_cheerio.load)(
|
|
43
|
+
const indexHTML = (0, import_cheerio.load)(import_node_fs.default.readFileSync(indexHTMLFilepath, "utf-8"));
|
|
44
44
|
const reactRoot = indexHTML("#redwood-app");
|
|
45
45
|
const reactRootChildren = reactRoot.children();
|
|
46
46
|
if (reactRootChildren.length) {
|
|
@@ -64,7 +64,7 @@ function checkAndTransformReactRoot(taskContext) {
|
|
|
64
64
|
}
|
|
65
65
|
indexHTML("body").append(reactRootChildren);
|
|
66
66
|
reactRoot.text("");
|
|
67
|
-
|
|
67
|
+
import_node_fs.default.writeFileSync(indexHTMLFilepath, indexHTML.html());
|
|
68
68
|
}
|
|
69
69
|
async function upgradeReactDepsTo18() {
|
|
70
70
|
const redwoodProjectPaths = (0, import_project_config.getPaths)();
|
|
@@ -73,7 +73,7 @@ async function upgradeReactDepsTo18() {
|
|
|
73
73
|
"package.json"
|
|
74
74
|
);
|
|
75
75
|
const webPackageJSON = JSON.parse(
|
|
76
|
-
|
|
76
|
+
import_node_fs.default.readFileSync(webPackageJSONPath, "utf-8")
|
|
77
77
|
);
|
|
78
78
|
const latestReactVersion = "18.2.0";
|
|
79
79
|
for (const requiredReactDep of ["react", "react-dom"]) {
|
|
@@ -84,7 +84,7 @@ async function upgradeReactDepsTo18() {
|
|
|
84
84
|
}
|
|
85
85
|
webPackageJSON.dependencies[requiredReactDep] = latestReactVersion;
|
|
86
86
|
}
|
|
87
|
-
|
|
87
|
+
import_node_fs.default.writeFileSync(webPackageJSONPath, JSON.stringify(webPackageJSON, null, 2));
|
|
88
88
|
await import_execa.default.command("yarn install", {
|
|
89
89
|
cwd: redwoodProjectPaths.base
|
|
90
90
|
});
|
|
@@ -96,12 +96,12 @@ async function checkAndUpdateCustomWebIndex(taskContext) {
|
|
|
96
96
|
webpack: import_path.default.join(redwoodProjectPaths.web.src, "index.js")
|
|
97
97
|
};
|
|
98
98
|
const customWebIndexFound = Object.entries(bundlerToCustomWebIndex).find(
|
|
99
|
-
([, filepath]) =>
|
|
99
|
+
([, filepath]) => import_node_fs.default.existsSync(filepath)
|
|
100
100
|
);
|
|
101
101
|
if (!customWebIndexFound) {
|
|
102
102
|
return;
|
|
103
103
|
}
|
|
104
|
-
|
|
104
|
+
import_node_fs.default.writeFileSync(customWebIndexFound[1], customWebIndexTemplate);
|
|
105
105
|
taskContext.setWarning(
|
|
106
106
|
[
|
|
107
107
|
`We updated the custom web index for you at ${customWebIndexFound[1]}.`,
|
|
@@ -31,13 +31,13 @@ __export(convertJsToJsx_exports, {
|
|
|
31
31
|
default: () => transform
|
|
32
32
|
});
|
|
33
33
|
module.exports = __toCommonJS(convertJsToJsx_exports);
|
|
34
|
-
var
|
|
34
|
+
var import_node_fs = __toESM(require("node:fs"));
|
|
35
35
|
function transform(file, api) {
|
|
36
36
|
const j = api.jscodeshift;
|
|
37
37
|
const ast = j(file.source);
|
|
38
38
|
const containsJSX = ast.find(j.JSXElement).length !== 0 || ast.find(j.JSXFragment).length !== 0 || ast.find(j.JSXText).length !== 0;
|
|
39
39
|
if (containsJSX) {
|
|
40
|
-
|
|
40
|
+
import_node_fs.default.renameSync(
|
|
41
41
|
file.path,
|
|
42
42
|
file.path.substring(0, file.path.lastIndexOf(".")) + ".jsx"
|
|
43
43
|
);
|
|
@@ -31,7 +31,7 @@ __export(updateDevFatalErrorPage_exports, {
|
|
|
31
31
|
updateDevFatalErrorPage: () => updateDevFatalErrorPage
|
|
32
32
|
});
|
|
33
33
|
module.exports = __toCommonJS(updateDevFatalErrorPage_exports);
|
|
34
|
-
var
|
|
34
|
+
var import_node_fs = __toESM(require("node:fs"));
|
|
35
35
|
var import_path = __toESM(require("path"));
|
|
36
36
|
var import_fetch = require("@whatwg-node/fetch");
|
|
37
37
|
var import_project_config = require("@cedarjs/project-config");
|
|
@@ -40,17 +40,17 @@ const updateDevFatalErrorPage = async () => {
|
|
|
40
40
|
const webFatalErrorPagesDir = import_path.default.join(rwPaths.web.pages, "FatalErrorPage");
|
|
41
41
|
const filename = import_path.default.join(webFatalErrorPagesDir, "FatalErrorPage");
|
|
42
42
|
const url = "https://raw.githubusercontent.com/cedarjs/cedar/aa89556781dddc4730d3c8605040dc63a1ba6c1a/packages/create-cedar-app/templates/ts/web/src/pages/FatalErrorPage/FatalErrorPage.tsx";
|
|
43
|
-
const isTsxPage =
|
|
43
|
+
const isTsxPage = import_node_fs.default.existsSync(
|
|
44
44
|
import_path.default.join(webFatalErrorPagesDir, "FatalErrorPage.tsx")
|
|
45
45
|
);
|
|
46
|
-
const isJsxPage =
|
|
46
|
+
const isJsxPage = import_node_fs.default.existsSync(
|
|
47
47
|
import_path.default.join(webFatalErrorPagesDir, "FatalErrorPage.jsx")
|
|
48
48
|
);
|
|
49
49
|
const ext = isTsxPage ? "tsx" : isJsxPage ? "jsx" : "js";
|
|
50
50
|
const res = await (0, import_fetch.fetch)(url);
|
|
51
51
|
const text = await res.text();
|
|
52
52
|
const newFatalErrorPage = `${filename}.${ext}`;
|
|
53
|
-
|
|
53
|
+
import_node_fs.default.writeFileSync(newFatalErrorPage, text);
|
|
54
54
|
};
|
|
55
55
|
// Annotate the CommonJS export names for ESM import in node:
|
|
56
56
|
0 && (module.exports = {
|
|
@@ -31,7 +31,7 @@ __export(updateGraphqlConfig_exports, {
|
|
|
31
31
|
updateGraphqlConfig: () => updateGraphqlConfig
|
|
32
32
|
});
|
|
33
33
|
module.exports = __toCommonJS(updateGraphqlConfig_exports);
|
|
34
|
-
var
|
|
34
|
+
var import_node_fs = __toESM(require("node:fs"));
|
|
35
35
|
var import_path = __toESM(require("path"));
|
|
36
36
|
var import_fetch = require("@whatwg-node/fetch");
|
|
37
37
|
var import_project_config = require("@cedarjs/project-config");
|
|
@@ -40,7 +40,7 @@ const updateGraphqlConfig = async () => {
|
|
|
40
40
|
"https://raw.githubusercontent.com/cedarjs/cedar/refs/tags/v0.4.0/packages/create-cedar-app/templates/ts/graphql.config.js"
|
|
41
41
|
);
|
|
42
42
|
const text = await res.text();
|
|
43
|
-
|
|
43
|
+
import_node_fs.default.writeFileSync(import_path.default.join((0, import_project_config.getPaths)().base, "graphql.config.js"), text);
|
|
44
44
|
};
|
|
45
45
|
// Annotate the CommonJS export names for ESM import in node:
|
|
46
46
|
0 && (module.exports = {
|
package/dist/lib/cells.js
CHANGED
|
@@ -39,7 +39,7 @@ __export(cells_exports, {
|
|
|
39
39
|
parseGqlQueryToAst: () => parseGqlQueryToAst
|
|
40
40
|
});
|
|
41
41
|
module.exports = __toCommonJS(cells_exports);
|
|
42
|
-
var
|
|
42
|
+
var import_node_fs = __toESM(require("node:fs"));
|
|
43
43
|
var import_path = __toESM(require("path"));
|
|
44
44
|
var import_core = require("@babel/core");
|
|
45
45
|
var import_parser = require("@babel/parser");
|
|
@@ -135,7 +135,7 @@ const getNamedExports = (ast) => {
|
|
|
135
135
|
return namedExports;
|
|
136
136
|
};
|
|
137
137
|
const fileToAst = (filePath) => {
|
|
138
|
-
const code =
|
|
138
|
+
const code = import_node_fs.default.readFileSync(filePath, "utf-8");
|
|
139
139
|
const isJsxFile = import_path.default.extname(filePath).match(/[jt]sx$/) || isFileInsideFolder(filePath, (0, import_project_config.getPaths)().web.base);
|
|
140
140
|
const plugins = [
|
|
141
141
|
"typescript",
|
|
@@ -31,13 +31,13 @@ __export(getRootPackageJSON_exports, {
|
|
|
31
31
|
default: () => getRootPackageJSON_default
|
|
32
32
|
});
|
|
33
33
|
module.exports = __toCommonJS(getRootPackageJSON_exports);
|
|
34
|
-
var
|
|
34
|
+
var import_node_fs = __toESM(require("node:fs"));
|
|
35
35
|
var import_path = __toESM(require("path"));
|
|
36
36
|
var import_project_config = require("@cedarjs/project-config");
|
|
37
37
|
const getRootPackageJSON = () => {
|
|
38
38
|
const rootPackageJSONPath = import_path.default.join((0, import_project_config.getPaths)().base, "package.json");
|
|
39
39
|
const rootPackageJSON = JSON.parse(
|
|
40
|
-
|
|
40
|
+
import_node_fs.default.readFileSync(rootPackageJSONPath, "utf8")
|
|
41
41
|
);
|
|
42
42
|
return [rootPackageJSON, rootPackageJSONPath];
|
|
43
43
|
};
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@cedarjs/codemods",
|
|
3
|
-
"version": "2.2.1-
|
|
3
|
+
"version": "2.2.1-rc.23",
|
|
4
4
|
"description": "Codemods to ease upgrading a CedarJS Project",
|
|
5
5
|
"repository": {
|
|
6
6
|
"type": "git",
|
|
@@ -30,7 +30,7 @@
|
|
|
30
30
|
"@babel/plugin-transform-typescript": "^7.26.8",
|
|
31
31
|
"@babel/runtime-corejs3": "7.28.4",
|
|
32
32
|
"@babel/traverse": "7.28.5",
|
|
33
|
-
"@cedarjs/project-config": "2.2.1-
|
|
33
|
+
"@cedarjs/project-config": "2.2.1-rc.23",
|
|
34
34
|
"@svgr/core": "8.1.0",
|
|
35
35
|
"@svgr/plugin-jsx": "8.1.0",
|
|
36
36
|
"@vscode/ripgrep": "1.17.0",
|
|
@@ -49,12 +49,10 @@
|
|
|
49
49
|
"yargs": "17.7.2"
|
|
50
50
|
},
|
|
51
51
|
"devDependencies": {
|
|
52
|
-
"@cedarjs/framework-tools": "2.2.1-
|
|
52
|
+
"@cedarjs/framework-tools": "2.2.1-rc.23",
|
|
53
53
|
"@types/babel__core": "7.20.5",
|
|
54
|
-
"@types/fs-extra": "11.0.4",
|
|
55
54
|
"@types/jscodeshift": "0.12.0",
|
|
56
55
|
"@types/yargs": "17.0.35",
|
|
57
|
-
"fs-extra": "11.3.3",
|
|
58
56
|
"publint": "0.3.16",
|
|
59
57
|
"tsx": "4.21.0",
|
|
60
58
|
"vitest": "3.2.4"
|
|
@@ -62,5 +60,5 @@
|
|
|
62
60
|
"publishConfig": {
|
|
63
61
|
"access": "public"
|
|
64
62
|
},
|
|
65
|
-
"gitHead": "
|
|
63
|
+
"gitHead": "24dbb96b93c3cf4a316ac2965158d378c87a76db"
|
|
66
64
|
}
|