@vercube/devkit 0.0.22 → 0.0.24

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
@@ -3,10 +3,10 @@
3
3
  <br>
4
4
  <br>
5
5
 
6
- # Vercube
7
-
8
- Next generation HTTP framework
9
-
6
+ # Vercube
7
+
8
+ Next generation HTTP framework
9
+
10
10
  <a href="https://www.npmjs.com/package/@vercube/cli">
11
11
  <img src="https://img.shields.io/npm/v/%40vercube%2Fdevkit?style=for-the-badge&logo=npm&color=%23767eff" alt="npm"/>
12
12
  </a>
@@ -16,6 +16,9 @@
16
16
  <a href="https://github.com/vercube/vercube/blob/main/LICENSE" target="_blank">
17
17
  <img src="https://img.shields.io/npm/l/%40vercube%2Fdevkit?style=for-the-badge&color=%23767eff" alt="License"/>
18
18
  </a>
19
+ <a href="https://codecov.io/gh/vercube/vercube" target="_blank">
20
+ <img src="https://img.shields.io/codecov/c/github/vercube/vercube?style=for-the-badge&color=%23767eff" alt="Coverage"/>
21
+ </a>
19
22
  <br/>
20
23
  <br/>
21
24
  </div>
@@ -23,8 +26,9 @@
23
26
  An ultra-efficient JavaScript server framework that runs anywhere - Node.js, Bun, or Deno - with unmatched flexibility and complete configurability for developers who refuse to sacrifice speed or control.
24
27
 
25
28
  ## <a name="module">DevKit Module</a>
26
- The DevKit module provides essential development tools and utilities for building and maintaining Vercube applications. It includes a powerful CLI interface, build tools, testing utilities, and development server capabilities. The module streamlines the development workflow by offering features like hot reloading, debugging tools, and project scaffolding. It's designed to enhance developer productivity while maintaining flexibility for custom build configurations and development environments.
27
29
 
30
+ The DevKit module provides essential development tools and utilities for building and maintaining Vercube applications. It includes a powerful CLI interface, build tools, testing utilities, and development server capabilities. The module streamlines the development workflow by offering features like hot reloading, debugging tools, and project scaffolding. It's designed to enhance developer productivity while maintaining flexibility for custom build configurations and development environments.
28
31
 
29
32
  ## <a name="documentation">📖 Documentation</a>
30
- Comprehensive documentation is available at [vercube.dev](https://vercube.dev). There you'll find detailed module descriptions, project information, guides, and everything else you need to know about Vercube.
33
+
34
+ Comprehensive documentation is available at [vercube.dev](https://vercube.dev). There you'll find detailed module descriptions, project information, guides, and everything else you need to know about Vercube.
package/dist/index.d.mts CHANGED
@@ -1,5 +1,5 @@
1
- import { Hookable } from "hookable";
2
1
  import { ConfigTypes, DeepPartial } from "@vercube/core";
2
+ import { Hookable } from "hookable";
3
3
  import { Worker } from "node:worker_threads";
4
4
 
5
5
  //#region src/Types/DevKitTypes.d.ts
package/dist/index.mjs CHANGED
@@ -1,12 +1,12 @@
1
1
  import { builtinModules } from "node:module";
2
- import { createHooks } from "hookable";
3
2
  import { loadVercubeConfig } from "@vercube/core";
3
+ import { createHooks } from "hookable";
4
4
  import { rolldown, watch as watch$1 } from "rolldown";
5
5
  import { resolve } from "pathe";
6
6
  import UnpluginIsolatedDecl from "unplugin-isolated-decl/rolldown";
7
7
  import consola from "consola";
8
- import { resolve as resolve$1 } from "node:path";
9
8
  import { fork } from "node:child_process";
9
+ import { resolve as resolve$1 } from "node:path";
10
10
 
11
11
  //#region src/Common/App.ts
12
12
  /**
@@ -30,7 +30,7 @@ async function createVercube(cfg) {
30
30
  //#region src/Bundlers/Rolldown/Config.ts
31
31
  /**
32
32
  * Generates a Rolldown configuration based on the provided build options.
33
- *
33
+ *
34
34
  * @param {ConfigTypes.BuildOptions} [ctx] - Build configuration options
35
35
  * @returns {Promise<RolldownOptions>} A promise that resolves to the Rolldown configuration
36
36
  */
@@ -39,9 +39,17 @@ async function getRolldownConfig(ctx) {
39
39
  const pkg = (await import(resolve(root, "package.json"), { with: { type: "json" } })).default;
40
40
  const input = ctx?.entry ?? "src/index.ts";
41
41
  const output = ctx?.output?.dir ?? "dist";
42
+ const tsconfig = ctx?.tsconfig ?? "tsconfig.json";
43
+ const dts = ctx?.dts ?? true;
44
+ const customPlugins = ctx?.plugins ?? [];
45
+ const defaultPlugins = [];
46
+ if (dts) defaultPlugins.push(UnpluginIsolatedDecl({
47
+ transformer: "oxc",
48
+ patchCjsDefaultExport: true
49
+ }));
42
50
  return {
43
- input: { index: input },
44
- resolve: { tsconfigFilename: resolve(root, "tsconfig.json") },
51
+ input: typeof input === "string" ? { index: input } : input,
52
+ tsconfig: resolve(root, tsconfig),
45
53
  define: { ...ctx?.define },
46
54
  external: [
47
55
  ...builtinModules,
@@ -60,10 +68,7 @@ async function getRolldownConfig(ctx) {
60
68
  onwarn: (warning, warn) => {
61
69
  if (!warning.code || !["CIRCULAR_DEPENDENCY"].includes(warning.code)) warn(warning);
62
70
  },
63
- plugins: [UnpluginIsolatedDecl({
64
- transformer: "oxc",
65
- patchCjsDefaultExport: true
66
- })]
71
+ plugins: [...defaultPlugins, ...customPlugins]
67
72
  };
68
73
  }
69
74
 
@@ -71,7 +76,7 @@ async function getRolldownConfig(ctx) {
71
76
  //#region src/Bundlers/Rolldown/Build.ts
72
77
  /**
73
78
  * Builds the application using Rolldown bundler
74
- *
79
+ *
75
80
  * @async
76
81
  * @function build
77
82
  * @param {ConfigTypes.BuildOptions} ctx - The build context and configuration options
@@ -96,11 +101,10 @@ async function build$1(ctx) {
96
101
  */
97
102
  async function watch$2(app) {
98
103
  const bundlerConfig = await getRolldownConfig(app.config.build);
99
- const watcher = watch$1({
104
+ watch$1({
100
105
  ...bundlerConfig,
101
106
  onwarn: () => {}
102
- });
103
- watcher.on("event", (event) => {
107
+ }).on("event", (event) => {
104
108
  switch (event.code) {
105
109
  case "START":
106
110
  app.hooks.callHook("bundler-watch:init");
@@ -146,8 +150,7 @@ function getWatchFunc(bundler) {
146
150
  */
147
151
  async function build(app) {
148
152
  const bundler = app?.config?.build?.bundler ?? "rolldown";
149
- const build$2 = getBuildFunc(bundler);
150
- await build$2(app?.config?.build);
153
+ await getBuildFunc(bundler)(app?.config?.build);
151
154
  }
152
155
 
153
156
  //#endregion
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@vercube/devkit",
3
- "version": "0.0.22",
3
+ "version": "0.0.24",
4
4
  "description": "Devkit module for Vercube framework",
5
5
  "repository": {
6
6
  "type": "git",
@@ -22,16 +22,16 @@
22
22
  "README.md"
23
23
  ],
24
24
  "dependencies": {
25
- "@oxc-project/runtime": "0.82.1",
25
+ "@oxc-project/runtime": "0.91.0",
26
26
  "consola": "3.4.2",
27
- "dotenv": "17.2.1",
27
+ "dotenv": "17.2.2",
28
28
  "hookable": "5.5.3",
29
- "oxc-parser": "0.82.1",
30
- "oxc-transform": "0.82.1",
29
+ "oxc-parser": "0.91.0",
30
+ "oxc-transform": "0.91.0",
31
31
  "pathe": "2.0.3",
32
- "rolldown": "1.0.0-beta.32",
33
- "unplugin-isolated-decl": "0.15.0",
34
- "@vercube/core": "0.0.22"
32
+ "rolldown": "1.0.0-beta.39",
33
+ "unplugin-isolated-decl": "0.15.2",
34
+ "@vercube/core": "0.0.24"
35
35
  },
36
36
  "publishConfig": {
37
37
  "access": "public"