@cedarjs/cli 4.2.0 → 4.2.1-next.258

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.
Files changed (153) hide show
  1. package/dist/cfw.js +8 -6
  2. package/dist/commands/build/buildHandler.js +43 -42
  3. package/dist/commands/build/buildPackagesTask.js +6 -6
  4. package/dist/commands/build.js +7 -1
  5. package/dist/commands/deploy/baremetal/SshExecutor.js +13 -4
  6. package/dist/commands/deploy/baremetal/baremetalHandler.js +117 -65
  7. package/dist/commands/deploy/baremetal.js +24 -3
  8. package/dist/commands/deploy/flightcontrolHandler.js +16 -14
  9. package/dist/commands/deploy/helpers/deployHandler.js +10 -5
  10. package/dist/commands/deploy/packing/nft.js +1 -2
  11. package/dist/commands/deploy/render.js +1 -1
  12. package/dist/commands/deploy/renderHandler.js +22 -12
  13. package/dist/commands/deploy/serverlessHandler.js +67 -25
  14. package/dist/commands/destroy/component/component.js +2 -3
  15. package/dist/commands/destroy/directive/directive.js +1 -3
  16. package/dist/commands/destroy/directive/directiveHandler.js +2 -4
  17. package/dist/commands/destroy/function/function.js +1 -3
  18. package/dist/commands/destroy/handlerHelpers.js +16 -16
  19. package/dist/commands/destroy/helpers.js +8 -2
  20. package/dist/commands/destroy/layout/layout.js +1 -2
  21. package/dist/commands/destroy/page/pageHandler.js +1 -1
  22. package/dist/commands/destroy/scaffold/scaffoldHandler.js +28 -9
  23. package/dist/commands/destroy/sdl/sdlHandler.js +1 -1
  24. package/dist/commands/dev/devHandler.js +25 -25
  25. package/dist/commands/dev.js +3 -0
  26. package/dist/commands/experimental/live-queries/liveQueriesHandler.js +110 -4
  27. package/dist/commands/experimental/setupInngest.js +1 -1
  28. package/dist/commands/experimental/setupInngestHandler.js +12 -11
  29. package/dist/commands/experimental/setupOpentelemetry.js +1 -1
  30. package/dist/commands/experimental/setupOpentelemetryHandler.js +11 -7
  31. package/dist/commands/experimental/setupReactCompiler.js +1 -1
  32. package/dist/commands/experimental/setupReactCompilerHandler.js +45 -30
  33. package/dist/commands/experimental/setupRscHandler.js +14 -11
  34. package/dist/commands/experimental/setupStreamingSsr.js +1 -1
  35. package/dist/commands/experimental/setupStreamingSsrHandler.js +46 -31
  36. package/dist/commands/experimental/templates/rsc/Document.tsx.template +1 -1
  37. package/dist/commands/experimental/templates/rsc/entry.client.tsx.template +8 -8
  38. package/dist/commands/experimental/templates/streamingSsr/Document.tsx.template +1 -1
  39. package/dist/commands/experimental/templates/streamingSsr/entry.client.tsx.template +6 -6
  40. package/dist/commands/experimental/util.js +3 -2
  41. package/dist/commands/generate/cell/cellHandler.js +22 -21
  42. package/dist/commands/generate/component/componentHandler.js +14 -16
  43. package/dist/commands/generate/dataMigration/dataMigration.js +24 -13
  44. package/dist/commands/generate/dbAuth/dbAuth.js +1 -0
  45. package/dist/commands/generate/dbAuth/dbAuthHandler.js +40 -30
  46. package/dist/commands/generate/directive/directiveHandler.js +12 -14
  47. package/dist/commands/generate/function/function.js +1 -0
  48. package/dist/commands/generate/function/functionHandler.js +12 -17
  49. package/dist/commands/generate/helpers.js +17 -17
  50. package/dist/commands/generate/job/job.js +1 -0
  51. package/dist/commands/generate/job/jobHandler.js +15 -17
  52. package/dist/commands/generate/layout/layoutHandler.js +13 -16
  53. package/dist/commands/generate/model/model.js +1 -0
  54. package/dist/commands/generate/model/modelHandler.js +9 -3
  55. package/dist/commands/generate/ogImage/ogImage.js +1 -0
  56. package/dist/commands/generate/ogImage/ogImageHandler.js +16 -9
  57. package/dist/commands/generate/package/packageHandler.js +32 -49
  58. package/dist/commands/generate/page/pageHandler.js +25 -22
  59. package/dist/commands/generate/realtime/realtime.js +1 -1
  60. package/dist/commands/generate/realtime/realtimeHandler.js +46 -20
  61. package/dist/commands/generate/scaffold/scaffold.js +1 -0
  62. package/dist/commands/generate/scaffold/scaffoldHandler.js +35 -27
  63. package/dist/commands/generate/script/script.js +1 -0
  64. package/dist/commands/generate/script/templates/tsconfig.json.template +14 -0
  65. package/dist/commands/generate/sdl/sdl.js +4 -3
  66. package/dist/commands/generate/sdl/sdlHandler.js +38 -18
  67. package/dist/commands/generate/secret/secret.js +19 -19
  68. package/dist/commands/generate/service/service.js +5 -5
  69. package/dist/commands/generate/service/serviceHandler.js +59 -22
  70. package/dist/commands/generate/yargsCommandHelpers.js +6 -1
  71. package/dist/commands/generate/yargsHandlerHelpers.js +18 -10
  72. package/dist/commands/generate.js +3 -10
  73. package/dist/commands/jobsHandler.js +3 -2
  74. package/dist/commands/prismaHandler.js +10 -9
  75. package/dist/commands/serve.js +84 -137
  76. package/dist/commands/serveApiHandler.js +5 -5
  77. package/dist/commands/serveBothHandler.js +10 -7
  78. package/dist/commands/serveWebHandler.js +2 -2
  79. package/dist/commands/setup/auth/auth.js +12 -6
  80. package/dist/commands/setup/cache/cacheHandler.js +11 -6
  81. package/dist/commands/setup/deploy/deploy.js +4 -3
  82. package/dist/commands/setup/deploy/helpers/helpers.js +5 -1
  83. package/dist/commands/setup/deploy/helpers/index.js +157 -5
  84. package/dist/commands/setup/deploy/providers/baremetalHandler.js +26 -4
  85. package/dist/commands/setup/deploy/providers/coherenceHandler.js +53 -25
  86. package/dist/commands/setup/deploy/providers/flightcontrolHandler.js +33 -23
  87. package/dist/commands/setup/deploy/providers/netlify.js +6 -0
  88. package/dist/commands/setup/deploy/providers/netlifyHandler.js +112 -11
  89. package/dist/commands/setup/deploy/providers/renderHandler.js +10 -5
  90. package/dist/commands/setup/deploy/providers/serverlessHandler.js +5 -3
  91. package/dist/commands/setup/deploy/providers/universal-deploy.js +11 -0
  92. package/dist/commands/setup/deploy/providers/universalDeployHandler.js +188 -0
  93. package/dist/commands/setup/deploy/providers/vercel.js +6 -0
  94. package/dist/commands/setup/deploy/providers/vercelHandler.js +113 -12
  95. package/dist/commands/setup/deploy/templates/baremetal.js +3 -2
  96. package/dist/commands/setup/deploy/templates/flightcontrol.js +60 -49
  97. package/dist/commands/setup/deploy/templates/netlify.js +2 -1
  98. package/dist/commands/setup/deploy/templates/netlifyUD.js +31 -0
  99. package/dist/commands/setup/docker/docker.js +1 -1
  100. package/dist/commands/setup/docker/dockerHandler.js +72 -37
  101. package/dist/commands/setup/docker/templates/Dockerfile.npm +119 -0
  102. package/dist/commands/setup/docker/templates/Dockerfile.pnpm +112 -0
  103. package/dist/commands/setup/docker/templates/{Dockerfile → Dockerfile.yarn} +1 -1
  104. package/dist/commands/setup/docker/templates/docker-compose.dev.yml +2 -2
  105. package/dist/commands/setup/generator/generatorHandler.js +4 -3
  106. package/dist/commands/setup/graphql/features/fragments/fragmentsHandler.js +2 -2
  107. package/dist/commands/setup/graphql/features/trustedDocuments/trustedDocumentsHandler.js +2 -2
  108. package/dist/commands/setup/i18n/i18nHandler.js +18 -15
  109. package/dist/commands/setup/jobs/jobsHandler.js +10 -5
  110. package/dist/commands/setup/mailer/mailerHandler.js +11 -9
  111. package/dist/commands/setup/package/packageHandler.js +14 -10
  112. package/dist/commands/setup/realtime/realtimeHandler.js +22 -20
  113. package/dist/commands/setup/server-file/serverFileHandler.js +16 -8
  114. package/dist/commands/setup/tsconfig/tsconfigHandler.js +5 -3
  115. package/dist/commands/setup/ui/helpers/helpers.js +5 -1
  116. package/dist/commands/setup/ui/libraries/chakra-uiHandler.js +11 -5
  117. package/dist/commands/setup/ui/libraries/mantineHandler.js +21 -13
  118. package/dist/commands/setup/ui/libraries/tailwindcssHandler.js +38 -26
  119. package/dist/commands/setup/uploads/uploadsHandler.js +7 -4
  120. package/dist/commands/setup.js +1 -2
  121. package/dist/commands/test/testHandler.js +2 -1
  122. package/dist/commands/test/testHandlerEsm.js +2 -2
  123. package/dist/commands/type-checkHandler.js +4 -6
  124. package/dist/commands/upgrade/upgradeHandler.js +2 -4
  125. package/dist/index.js +10 -4
  126. package/dist/lib/configureStorybook.js +2 -2
  127. package/dist/lib/exec.js +36 -24
  128. package/dist/lib/exit.js +19 -4
  129. package/dist/lib/extendFile.js +22 -12
  130. package/dist/lib/index.js +119 -85
  131. package/dist/lib/merge/algorithms.js +4 -1
  132. package/dist/lib/merge/index.js +76 -41
  133. package/dist/lib/merge/semanticIdentity.js +18 -6
  134. package/dist/lib/merge/strategy.js +86 -36
  135. package/dist/lib/packages.js +23 -13
  136. package/dist/lib/plugin.js +12 -5
  137. package/dist/lib/pluralHelpers.js +1 -1
  138. package/dist/lib/project.js +3 -1
  139. package/dist/lib/rollback.js +7 -7
  140. package/dist/lib/schemaHelpers.js +12 -12
  141. package/dist/lib/test.js +4 -0
  142. package/dist/lib/updateCheck.js +6 -4
  143. package/dist/middleware/checkNodeVersion.js +5 -0
  144. package/dist/plugin.js +18 -12
  145. package/dist/telemetry/exporter.js +12 -5
  146. package/dist/telemetry/index.js +4 -3
  147. package/dist/telemetry/resource.js +9 -5
  148. package/dist/telemetry/send.js +14 -10
  149. package/package.json +15 -12
  150. package/dist/commands/setup/vite/templates/vite.config.ts.template +0 -19
  151. package/dist/commands/setup/vite/vite.js +0 -38
  152. package/dist/commands/setup/vite/viteHandler.js +0 -82
  153. /package/dist/{index.d.js → global.d.js} +0 -0
@@ -8,9 +8,11 @@ import { v4 as uuidv4, validate as validateUUID } from "uuid";
8
8
  import { getPaths, getRawConfig } from "@cedarjs/project-config";
9
9
  import { RWProject } from "@cedarjs/structure/dist/model/RWProject";
10
10
  import {
11
- name as packageName,
12
- version as packageVersion
11
+ name as _packageName,
12
+ version as _packageVersion
13
13
  } from "../../package.js";
14
+ const packageName = _packageName;
15
+ const packageVersion = _packageVersion;
14
16
  async function getResources() {
15
17
  let UID = uuidv4();
16
18
  try {
@@ -29,7 +31,7 @@ async function getResources() {
29
31
  fs.writeFileSync(telemetryFile, UID);
30
32
  }
31
33
  }
32
- } catch (_error) {
34
+ } catch {
33
35
  }
34
36
  const info = JSON.parse(
35
37
  await envinfo.run(
@@ -57,7 +59,9 @@ async function getResources() {
57
59
  const experiments = Object.keys(getRawConfig()["experimental"] || {});
58
60
  const project = new RWProject();
59
61
  const routes = project.getRouter().routes;
60
- const prerenderedRoutes = routes.filter((route) => route.hasPrerender);
62
+ const prerenderedRoutes = routes.filter(
63
+ (route) => route.hasPrerender
64
+ );
61
65
  const complexity = [
62
66
  routes.length,
63
67
  prerenderedRoutes.length,
@@ -79,7 +83,7 @@ async function getResources() {
79
83
  "cpu.count": cpu.physicalCores,
80
84
  "memory.gb": Math.round(mem.total / 1073741824),
81
85
  "env.node_env": process.env.NODE_ENV || null,
82
- "ci.redwood": !!process.env.REDWOOD_CI,
86
+ "ci.redwood": !!process.env.CEDAR_CI,
83
87
  "ci.isci": ci.isCI,
84
88
  "dev.environment": developmentEnvironment,
85
89
  complexity,
@@ -1,15 +1,16 @@
1
1
  import fs from "node:fs";
2
2
  import path from "path";
3
+ import { ExportResultCode } from "@opentelemetry/core";
3
4
  import { OTLPTraceExporter } from "@opentelemetry/exporter-trace-otlp-http";
4
5
  import { Resource } from "@opentelemetry/resources";
5
6
  import { getPaths } from "@cedarjs/project-config";
6
7
  import { getResources } from "./resource.js";
7
8
  async function main() {
8
9
  console.log(
9
- "You can disable telemetry by:\n - setting the 'REDWOOD_DISABLE_TELEMETRY' environment variable\n - passing the '--no-telemetry' flag when using the CLI"
10
+ "You can disable telemetry by:\n - setting the 'CEDAR_DISABLE_TELEMETRY' environment variable\n - passing the '--no-telemetry' flag when using the CLI"
10
11
  );
11
12
  console.log(
12
- "Information about Redwood telemetry can be found at:\n - https://telemetry.redwoodjs.com\n"
13
+ "Information about Cedar telemetry can be found at:\n - https://telemetry.redwoodjs.com\n"
13
14
  );
14
15
  const telemetryDir = path.join(getPaths().generated.base, "telemetry");
15
16
  fs.mkdirSync(telemetryDir, { recursive: true });
@@ -20,7 +21,7 @@ async function main() {
20
21
  const customResourceData = await getResources();
21
22
  console.timeEnd("Computed resource information");
22
23
  const resource = Resource.default().merge(new Resource(customResourceData));
23
- const url = process.env.REDWOOD_REDIRECT_TELEMETRY || "https://quark.quantumparticle.io/v1/traces";
24
+ const url = process.env.CEDAR_REDIRECT_TELEMETRY || process.env.REDWOOD_REDIRECT_TELEMETRY || "https://quark.quantumparticle.io/v1/traces";
24
25
  const traceExporter = new OTLPTraceExporter({
25
26
  url
26
27
  });
@@ -53,14 +54,17 @@ async function main() {
53
54
  span.spanContext = () => span._spanContext;
54
55
  span.events = [];
55
56
  }
56
- traceExporter.export(spans, ({ code, error }) => {
57
- if (code !== 0) {
58
- console.error("Encountered:");
59
- console.error(error);
60
- console.error("while exporting the following spans:");
61
- console.error(spans);
57
+ traceExporter.export(
58
+ spans,
59
+ ({ code, error }) => {
60
+ if (code !== ExportResultCode.SUCCESS) {
61
+ console.error("Encountered:");
62
+ console.error(error);
63
+ console.error("while exporting the following spans:");
64
+ console.error(spans);
65
+ }
62
66
  }
63
- });
67
+ );
64
68
  fs.writeFileSync(
65
69
  path.join(telemetryDir, `_${file}`),
66
70
  JSON.stringify(spans, null, 2)
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@cedarjs/cli",
3
- "version": "4.2.0",
3
+ "version": "4.2.1-next.258",
4
4
  "description": "The CedarJS Command Line",
5
5
  "repository": {
6
6
  "type": "git",
@@ -31,8 +31,8 @@
31
31
  "test:watch": "vitest watch"
32
32
  },
33
33
  "dependencies": {
34
- "@babel/parser": "7.29.3",
35
- "@babel/preset-typescript": "7.28.5",
34
+ "@babel/parser": "7.29.7",
35
+ "@babel/preset-typescript": "7.29.7",
36
36
  "@cedarjs/api-server": "4.2.0",
37
37
  "@cedarjs/cli-helpers": "4.2.0",
38
38
  "@cedarjs/fastify-web": "4.2.0",
@@ -45,16 +45,17 @@
45
45
  "@cedarjs/vite": "4.2.0",
46
46
  "@cedarjs/web-server": "4.2.0",
47
47
  "@listr2/prompt-adapter-enquirer": "4.2.1",
48
- "@opentelemetry/api": "1.9.0",
48
+ "@opentelemetry/api": "1.9.1",
49
49
  "@opentelemetry/core": "1.30.1",
50
50
  "@opentelemetry/exporter-trace-otlp-http": "0.57.2",
51
51
  "@opentelemetry/resources": "1.30.1",
52
52
  "@opentelemetry/sdk-trace-node": "1.30.1",
53
- "@opentelemetry/semantic-conventions": "1.38.0",
53
+ "@opentelemetry/semantic-conventions": "1.41.1",
54
54
  "@prisma/internals": "7.8.0",
55
55
  "ansis": "4.2.0",
56
56
  "archiver": "7.0.1",
57
57
  "boxen": "5.1.2",
58
+ "camel-case": "4.1.2",
58
59
  "camelcase": "6.3.0",
59
60
  "change-case": "4.1.2",
60
61
  "ci-info": "4.4.0",
@@ -76,15 +77,16 @@
76
77
  "pascalcase": "1.0.0",
77
78
  "pluralize": "8.0.0",
78
79
  "portfinder": "1.0.38",
79
- "prettier": "3.8.3",
80
+ "prettier": "3.8.4",
80
81
  "prisma": "7.8.0",
81
82
  "prompts": "2.4.2",
82
83
  "recast": "0.23.11",
83
84
  "rimraf": "6.1.3",
84
85
  "semver": "7.7.4",
85
86
  "smol-toml": "1.6.1",
87
+ "srvx": "0.11.16",
86
88
  "string-env-interpolation": "1.0.1",
87
- "systeminformation": "5.31.5",
89
+ "systeminformation": "5.31.7",
88
90
  "termi-link": "1.1.0",
89
91
  "title-case": "3.0.3",
90
92
  "unionfs": "4.6.0",
@@ -92,15 +94,16 @@
92
94
  "yargs": "17.7.2"
93
95
  },
94
96
  "devDependencies": {
95
- "@babel/cli": "7.28.6",
97
+ "@babel/cli": "7.29.7",
96
98
  "@babel/core": "^7.26.10",
99
+ "@prisma/dmmf": "7.8.0",
97
100
  "@types/archiver": "^7.0.0",
98
- "memfs": "4.57.2",
101
+ "memfs": "4.57.7",
99
102
  "node-ssh": "13.2.1",
100
- "ts-dedent": "2.2.0",
101
- "tsx": "4.21.0",
103
+ "ts-dedent": "2.3.0",
104
+ "tsx": "4.22.4",
102
105
  "typescript": "5.9.3",
103
- "vitest": "3.2.4"
106
+ "vitest": "3.2.6"
104
107
  },
105
108
  "engines": {
106
109
  "node": ">=24"
@@ -1,19 +0,0 @@
1
- import dns from 'dns'
2
-
3
- import { defineConfig, UserConfig } from 'vite'
4
-
5
- import redwood from '@cedarjs/vite'
6
-
7
- // See: https://vitejs.dev/config/server-options.html#server-host
8
- // So that Vite will load on local instead of 127.0.0.1
9
- dns.setDefaultResultOrder('verbatim')
10
-
11
- /**
12
- * https://vitejs.dev/config/
13
- * @type {import('vite').UserConfig}
14
- */
15
- const viteConfig: UserConfig = {
16
- plugins: [redwood()],
17
- }
18
-
19
- export default defineConfig(viteConfig)
@@ -1,38 +0,0 @@
1
- import { recordTelemetryAttributes } from "@cedarjs/cli-helpers";
2
- const command = "vite";
3
- const description = "Configure the web side to use Vite";
4
- const builder = (yargs) => {
5
- yargs.option("force", {
6
- alias: "f",
7
- default: false,
8
- description: "Overwrite existing configuration",
9
- type: "boolean"
10
- });
11
- yargs.option("verbose", {
12
- alias: "v",
13
- default: false,
14
- description: "Print more logs",
15
- type: "boolean"
16
- });
17
- yargs.option("add-package", {
18
- default: true,
19
- description: "Allows you to skip adding the @cedarjs/vite package. Useful for testing",
20
- type: "boolean"
21
- });
22
- };
23
- const handler = async (options) => {
24
- recordTelemetryAttributes({
25
- command: "setup vite",
26
- force: options.force,
27
- verbose: options.verbose,
28
- addPackage: options.addPackage
29
- });
30
- const { handler: handler2 } = await import("./viteHandler.js");
31
- return handler2(options);
32
- };
33
- export {
34
- builder,
35
- command,
36
- description,
37
- handler
38
- };
@@ -1,82 +0,0 @@
1
- import fs from "node:fs";
2
- import path from "path";
3
- import { Listr } from "listr2";
4
- import { addWebPackages, colors as c } from "@cedarjs/cli-helpers";
5
- import { errorTelemetry } from "@cedarjs/telemetry";
6
- import { getPaths, transformTSToJS, writeFile } from "../../../lib/index.js";
7
- import { isTypeScriptProject } from "../../../lib/project.js";
8
- const { version } = JSON.parse(
9
- fs.readFileSync(
10
- path.resolve(import.meta.dirname, "../../../../package.json"),
11
- "utf-8"
12
- )
13
- );
14
- const handler = async ({ force, verbose, addPackage }) => {
15
- const ts = isTypeScriptProject();
16
- const tasks = new Listr(
17
- [
18
- {
19
- title: "Adding vite.config.js...",
20
- task: async () => {
21
- const viteConfigPath = `${getPaths().web.base}/vite.config.${ts ? "ts" : "js"}`;
22
- const templateContent = fs.readFileSync(
23
- path.resolve(
24
- import.meta.dirname,
25
- "templates",
26
- "vite.config.ts.template"
27
- ),
28
- "utf-8"
29
- );
30
- const viteConfigContent = ts ? templateContent : await transformTSToJS(viteConfigPath, templateContent);
31
- return writeFile(viteConfigPath, viteConfigContent, {
32
- overwriteExisting: force
33
- });
34
- }
35
- },
36
- {
37
- title: "Creating new entry point in `web/src/entry.client.{jsx,tsx}`...",
38
- task: () => {
39
- const entryPointFile = path.join(
40
- getPaths().web.src,
41
- `entry.client.${ts ? "tsx" : "jsx"}`
42
- );
43
- const content = fs.readFileSync(
44
- path.join(
45
- getPaths().base,
46
- // NOTE we're copying over the index.js before babel transform
47
- "node_modules/@cedarjs/web/src/entry/index.js"
48
- ),
49
- "utf-8"
50
- ).replace("~redwood-app-root", "./App");
51
- return writeFile(entryPointFile, content, {
52
- overwriteExisting: force
53
- });
54
- }
55
- },
56
- {
57
- // @NOTE: make sure its added as a dev package.
58
- ...addWebPackages(["-D", `@cedarjs/vite@${version}`]),
59
- title: "Adding @cedarjs/vite dev dependency to web side...",
60
- skip: () => {
61
- if (!addPackage) {
62
- return "Skipping package install, you will need to add @cedarjs/vite manaually as a dev-dependency on the web workspace";
63
- }
64
- }
65
- }
66
- ],
67
- {
68
- rendererOptions: { collapseSubtasks: false },
69
- renderer: verbose ? "verbose" : "default"
70
- }
71
- );
72
- try {
73
- await tasks.run();
74
- } catch (e) {
75
- errorTelemetry(process.argv, e.message);
76
- console.error(c.error(e.message));
77
- process.exit(e?.exitCode || 1);
78
- }
79
- };
80
- export {
81
- handler
82
- };
File without changes