jeasx 0.0.3 → 0.0.4

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/README.md CHANGED
@@ -1,3 +1,5 @@
1
1
  # Jeasx - server side rendering with the ease of JSX
2
2
 
3
- Please visit <https://github.com/jeasx/jeasx-starter> to get started.
3
+ This is the `jeasx` core repository.
4
+
5
+ Please visit <https://github.com/jeasx/quickstart> to get started.
package/cli.js CHANGED
@@ -1,34 +1,55 @@
1
1
  #!/usr/bin/env node
2
- import fs from "node:fs";
3
-
4
- export {};
2
+ import fs from "node:fs/promises";
5
3
 
6
4
  switch (process.argv[2]) {
7
5
  case "start":
8
- await import("./server.js");
6
+ await start();
9
7
  break;
10
8
 
11
9
  case "build":
12
- process.argv[2] = "routes";
13
- process.argv[3] = "js";
14
- process.argv[4] = "css";
15
- clearDist();
16
- await import("./esbuild.config.js");
10
+ await build();
17
11
  break;
18
12
 
19
13
  case "dev":
20
- process.env.NODE_ENV = "development";
21
- process.argv[2] = "start";
22
- process.argv[3] ??= "node_modules/jeasx/ecosystem.config.cjs";
23
- clearDist();
24
- await import("pm2/lib/binaries/Runtime4Docker.js");
14
+ await dev();
15
+ break;
16
+
17
+ case "clean":
18
+ await clean();
19
+ break;
20
+
21
+ case "help":
22
+ console.info(`Usage: jeasx [start|build|dev|clean|help]`);
25
23
  break;
26
24
 
27
25
  default:
28
- console.info(`❌ Error: Unknown command '${process.argv[2]}'.`);
26
+ console.info(
27
+ `❌ Error: Unknown command '${process.argv[2]}'.\nUse 'jeasx help' for options.`
28
+ );
29
29
  process.exit(1);
30
30
  }
31
31
 
32
- function clearDist() {
33
- fs.rmSync("dist", { recursive: true, force: true });
32
+ async function start() {
33
+ await import("./server.js");
34
+ }
35
+
36
+ async function build() {
37
+ process.argv = process.argv.splice(0, 2);
38
+ await clean();
39
+ await import("./esbuild.config.js");
40
+ }
41
+
42
+ async function dev() {
43
+ process.env.NODE_ENV = "development";
44
+ process.argv[2] = "start";
45
+ process.argv[3] ??= "node_modules/jeasx/ecosystem.config.cjs";
46
+ await clean();
47
+ // @ts-ignore
48
+ await import("pm2/bin/pm2-runtime");
34
49
  }
50
+
51
+ async function clean() {
52
+ await fs.rm("dist", { recursive: true, force: true });
53
+ }
54
+
55
+ export {};
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "jeasx",
3
- "version": "0.0.3",
3
+ "version": "0.0.4",
4
4
  "description": "Jeasx - server side rendering with the ease of JSX",
5
5
  "keywords": [
6
6
  "jsx",
@@ -35,6 +35,6 @@
35
35
  "pm2": "5.3.0"
36
36
  },
37
37
  "scripts": {
38
- "build": "esbuild --platform=node --format=esm --outfile=serverless.js serverless.ts"
38
+ "build": "esbuild --platform=node --format=esm --outdir=. serverless.ts"
39
39
  }
40
40
  }
package/serverless.js CHANGED
@@ -54,7 +54,7 @@ serverless.all("*", async (request, reply) => {
54
54
  const modulePath = join(process.cwd(), "dist", pathname);
55
55
  try {
56
56
  (await stat(modulePath)).isFile();
57
- } catch (error) {
57
+ } catch {
58
58
  continue;
59
59
  }
60
60
  const hash = process.env.NODE_ENV === "development" ? "?" + createHash("sha1").update(await readFile(modulePath, "utf-8")).digest("hex") : "";
package/serverless.ts CHANGED
@@ -77,7 +77,7 @@ serverless.all("*", async (request, reply) => {
77
77
 
78
78
  try {
79
79
  (await stat(modulePath)).isFile();
80
- } catch (error) {
80
+ } catch {
81
81
  continue;
82
82
  }
83
83