@valbuild/cli 0.12.0
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/.babelrc.json +5 -0
- package/CHANGELOG.md +0 -0
- package/bin.js +3 -0
- package/cli/dist/valbuild-cli-cli.cjs.d.ts +2 -0
- package/cli/dist/valbuild-cli-cli.cjs.d.ts.map +1 -0
- package/cli/dist/valbuild-cli-cli.cjs.dev.js +123 -0
- package/cli/dist/valbuild-cli-cli.cjs.js +7 -0
- package/cli/dist/valbuild-cli-cli.cjs.prod.js +123 -0
- package/cli/dist/valbuild-cli-cli.esm.js +113 -0
- package/cli/package.json +4 -0
- package/dist/declarations/src/cli.d.ts +1 -0
- package/dist/declarations/src/logger.d.ts +2 -0
- package/package.json +33 -0
- package/tsconfig.json +10 -0
package/CHANGELOG.md
ADDED
File without changes
|
package/bin.js
ADDED
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"file":"valbuild-cli-cli.cjs.d.ts","sourceRoot":"","sources":["../../dist/declarations/src/cli.d.ts"],"names":[],"mappings":"AAAA"}
|
@@ -0,0 +1,123 @@
|
|
1
|
+
'use strict';
|
2
|
+
|
3
|
+
var path = require('path');
|
4
|
+
var meow = require('meow');
|
5
|
+
var server = require('@valbuild/server');
|
6
|
+
var chalk = require('chalk');
|
7
|
+
var express = require('express');
|
8
|
+
var cors = require('cors');
|
9
|
+
var node_http = require('node:http');
|
10
|
+
var LocalValServer = require('@valbuild/server/src/LocalValServer');
|
11
|
+
|
12
|
+
function _interopDefault (e) { return e && e.__esModule ? e : { 'default': e }; }
|
13
|
+
|
14
|
+
var path__default = /*#__PURE__*/_interopDefault(path);
|
15
|
+
var meow__default = /*#__PURE__*/_interopDefault(meow);
|
16
|
+
var chalk__default = /*#__PURE__*/_interopDefault(chalk);
|
17
|
+
var express__default = /*#__PURE__*/_interopDefault(express);
|
18
|
+
var cors__default = /*#__PURE__*/_interopDefault(cors);
|
19
|
+
|
20
|
+
function error(...message) {
|
21
|
+
console.error(chalk__default["default"].red(...message));
|
22
|
+
}
|
23
|
+
function info(...message) {
|
24
|
+
console.log(...message);
|
25
|
+
}
|
26
|
+
|
27
|
+
async function serve({
|
28
|
+
root,
|
29
|
+
port,
|
30
|
+
cfg
|
31
|
+
}) {
|
32
|
+
const projectRoot = root ? path__default["default"].resolve(root) : process.cwd();
|
33
|
+
const service = await server.createService(projectRoot, {
|
34
|
+
valConfigPath: cfg ?? "./val.config"
|
35
|
+
});
|
36
|
+
const valReqHandler = server.createRequestHandler(new LocalValServer.LocalValServer({
|
37
|
+
service
|
38
|
+
}));
|
39
|
+
const app = express__default["default"]();
|
40
|
+
// TODO: Properly configure CORS
|
41
|
+
app.use(cors__default["default"](), valReqHandler);
|
42
|
+
const server$1 = node_http.createServer(app);
|
43
|
+
await new Promise(resolve => {
|
44
|
+
server$1.listen(port, resolve);
|
45
|
+
});
|
46
|
+
info(`Root is ${projectRoot}`);
|
47
|
+
info(`Config is ${service.valConfigPath}`);
|
48
|
+
info(`Listening on port ${port}`);
|
49
|
+
let handled = false;
|
50
|
+
const handleInterrupt = async () => {
|
51
|
+
if (handled) return;
|
52
|
+
handled = true;
|
53
|
+
info("Shutting down...");
|
54
|
+
server$1.close(err => {
|
55
|
+
if (!err) return;
|
56
|
+
error(err.toString());
|
57
|
+
});
|
58
|
+
};
|
59
|
+
process.on("SIGINT", handleInterrupt);
|
60
|
+
process.on("SIGTERM", handleInterrupt);
|
61
|
+
return new Promise(resolve => {
|
62
|
+
server$1.on("close", () => {
|
63
|
+
service.dispose();
|
64
|
+
resolve();
|
65
|
+
});
|
66
|
+
});
|
67
|
+
}
|
68
|
+
async function main() {
|
69
|
+
const {
|
70
|
+
input,
|
71
|
+
flags,
|
72
|
+
showHelp
|
73
|
+
} = meow__default["default"](`
|
74
|
+
Usage
|
75
|
+
$ val [command]
|
76
|
+
Commands
|
77
|
+
serve Run val development server
|
78
|
+
|
79
|
+
Options
|
80
|
+
--help Show this message
|
81
|
+
--port [port], -p [port] Set server port (default 4123)
|
82
|
+
--root [root], -r [root] Set project root directory (default process.cwd())
|
83
|
+
--cfg [cfg], -c [cfg] Set path to config relative to root (default ./val.config)
|
84
|
+
`, {
|
85
|
+
flags: {
|
86
|
+
port: {
|
87
|
+
type: "number",
|
88
|
+
alias: "p",
|
89
|
+
default: 4123
|
90
|
+
},
|
91
|
+
root: {
|
92
|
+
type: "string",
|
93
|
+
alias: "r"
|
94
|
+
},
|
95
|
+
cfg: {
|
96
|
+
type: "string",
|
97
|
+
alias: "c"
|
98
|
+
}
|
99
|
+
},
|
100
|
+
hardRejection: false
|
101
|
+
});
|
102
|
+
if (input.length === 0) {
|
103
|
+
return showHelp();
|
104
|
+
}
|
105
|
+
if (input.length !== 1) {
|
106
|
+
return error(`Unknown command "${input.join(" ")}"`);
|
107
|
+
}
|
108
|
+
const [command] = input;
|
109
|
+
switch (command) {
|
110
|
+
case "serve":
|
111
|
+
return serve({
|
112
|
+
root: flags.root,
|
113
|
+
port: flags.port,
|
114
|
+
cfg: flags.cfg
|
115
|
+
});
|
116
|
+
default:
|
117
|
+
return error(`Unknown command "${input.join(" ")}"`);
|
118
|
+
}
|
119
|
+
}
|
120
|
+
void main().catch(err => {
|
121
|
+
error(err);
|
122
|
+
process.exitCode = 1;
|
123
|
+
});
|
@@ -0,0 +1,123 @@
|
|
1
|
+
'use strict';
|
2
|
+
|
3
|
+
var path = require('path');
|
4
|
+
var meow = require('meow');
|
5
|
+
var server = require('@valbuild/server');
|
6
|
+
var chalk = require('chalk');
|
7
|
+
var express = require('express');
|
8
|
+
var cors = require('cors');
|
9
|
+
var node_http = require('node:http');
|
10
|
+
var LocalValServer = require('@valbuild/server/src/LocalValServer');
|
11
|
+
|
12
|
+
function _interopDefault (e) { return e && e.__esModule ? e : { 'default': e }; }
|
13
|
+
|
14
|
+
var path__default = /*#__PURE__*/_interopDefault(path);
|
15
|
+
var meow__default = /*#__PURE__*/_interopDefault(meow);
|
16
|
+
var chalk__default = /*#__PURE__*/_interopDefault(chalk);
|
17
|
+
var express__default = /*#__PURE__*/_interopDefault(express);
|
18
|
+
var cors__default = /*#__PURE__*/_interopDefault(cors);
|
19
|
+
|
20
|
+
function error(...message) {
|
21
|
+
console.error(chalk__default["default"].red(...message));
|
22
|
+
}
|
23
|
+
function info(...message) {
|
24
|
+
console.log(...message);
|
25
|
+
}
|
26
|
+
|
27
|
+
async function serve({
|
28
|
+
root,
|
29
|
+
port,
|
30
|
+
cfg
|
31
|
+
}) {
|
32
|
+
const projectRoot = root ? path__default["default"].resolve(root) : process.cwd();
|
33
|
+
const service = await server.createService(projectRoot, {
|
34
|
+
valConfigPath: cfg ?? "./val.config"
|
35
|
+
});
|
36
|
+
const valReqHandler = server.createRequestHandler(new LocalValServer.LocalValServer({
|
37
|
+
service
|
38
|
+
}));
|
39
|
+
const app = express__default["default"]();
|
40
|
+
// TODO: Properly configure CORS
|
41
|
+
app.use(cors__default["default"](), valReqHandler);
|
42
|
+
const server$1 = node_http.createServer(app);
|
43
|
+
await new Promise(resolve => {
|
44
|
+
server$1.listen(port, resolve);
|
45
|
+
});
|
46
|
+
info(`Root is ${projectRoot}`);
|
47
|
+
info(`Config is ${service.valConfigPath}`);
|
48
|
+
info(`Listening on port ${port}`);
|
49
|
+
let handled = false;
|
50
|
+
const handleInterrupt = async () => {
|
51
|
+
if (handled) return;
|
52
|
+
handled = true;
|
53
|
+
info("Shutting down...");
|
54
|
+
server$1.close(err => {
|
55
|
+
if (!err) return;
|
56
|
+
error(err.toString());
|
57
|
+
});
|
58
|
+
};
|
59
|
+
process.on("SIGINT", handleInterrupt);
|
60
|
+
process.on("SIGTERM", handleInterrupt);
|
61
|
+
return new Promise(resolve => {
|
62
|
+
server$1.on("close", () => {
|
63
|
+
service.dispose();
|
64
|
+
resolve();
|
65
|
+
});
|
66
|
+
});
|
67
|
+
}
|
68
|
+
async function main() {
|
69
|
+
const {
|
70
|
+
input,
|
71
|
+
flags,
|
72
|
+
showHelp
|
73
|
+
} = meow__default["default"](`
|
74
|
+
Usage
|
75
|
+
$ val [command]
|
76
|
+
Commands
|
77
|
+
serve Run val development server
|
78
|
+
|
79
|
+
Options
|
80
|
+
--help Show this message
|
81
|
+
--port [port], -p [port] Set server port (default 4123)
|
82
|
+
--root [root], -r [root] Set project root directory (default process.cwd())
|
83
|
+
--cfg [cfg], -c [cfg] Set path to config relative to root (default ./val.config)
|
84
|
+
`, {
|
85
|
+
flags: {
|
86
|
+
port: {
|
87
|
+
type: "number",
|
88
|
+
alias: "p",
|
89
|
+
default: 4123
|
90
|
+
},
|
91
|
+
root: {
|
92
|
+
type: "string",
|
93
|
+
alias: "r"
|
94
|
+
},
|
95
|
+
cfg: {
|
96
|
+
type: "string",
|
97
|
+
alias: "c"
|
98
|
+
}
|
99
|
+
},
|
100
|
+
hardRejection: false
|
101
|
+
});
|
102
|
+
if (input.length === 0) {
|
103
|
+
return showHelp();
|
104
|
+
}
|
105
|
+
if (input.length !== 1) {
|
106
|
+
return error(`Unknown command "${input.join(" ")}"`);
|
107
|
+
}
|
108
|
+
const [command] = input;
|
109
|
+
switch (command) {
|
110
|
+
case "serve":
|
111
|
+
return serve({
|
112
|
+
root: flags.root,
|
113
|
+
port: flags.port,
|
114
|
+
cfg: flags.cfg
|
115
|
+
});
|
116
|
+
default:
|
117
|
+
return error(`Unknown command "${input.join(" ")}"`);
|
118
|
+
}
|
119
|
+
}
|
120
|
+
void main().catch(err => {
|
121
|
+
error(err);
|
122
|
+
process.exitCode = 1;
|
123
|
+
});
|
@@ -0,0 +1,113 @@
|
|
1
|
+
import path from 'path';
|
2
|
+
import meow from 'meow';
|
3
|
+
import { createService, createRequestHandler } from '@valbuild/server';
|
4
|
+
import chalk from 'chalk';
|
5
|
+
import express from 'express';
|
6
|
+
import cors from 'cors';
|
7
|
+
import { createServer } from 'node:http';
|
8
|
+
import { LocalValServer } from '@valbuild/server/src/LocalValServer';
|
9
|
+
|
10
|
+
function error(...message) {
|
11
|
+
console.error(chalk.red(...message));
|
12
|
+
}
|
13
|
+
function info(...message) {
|
14
|
+
console.log(...message);
|
15
|
+
}
|
16
|
+
|
17
|
+
async function serve({
|
18
|
+
root,
|
19
|
+
port,
|
20
|
+
cfg
|
21
|
+
}) {
|
22
|
+
const projectRoot = root ? path.resolve(root) : process.cwd();
|
23
|
+
const service = await createService(projectRoot, {
|
24
|
+
valConfigPath: cfg ?? "./val.config"
|
25
|
+
});
|
26
|
+
const valReqHandler = createRequestHandler(new LocalValServer({
|
27
|
+
service
|
28
|
+
}));
|
29
|
+
const app = express();
|
30
|
+
// TODO: Properly configure CORS
|
31
|
+
app.use(cors(), valReqHandler);
|
32
|
+
const server = createServer(app);
|
33
|
+
await new Promise(resolve => {
|
34
|
+
server.listen(port, resolve);
|
35
|
+
});
|
36
|
+
info(`Root is ${projectRoot}`);
|
37
|
+
info(`Config is ${service.valConfigPath}`);
|
38
|
+
info(`Listening on port ${port}`);
|
39
|
+
let handled = false;
|
40
|
+
const handleInterrupt = async () => {
|
41
|
+
if (handled) return;
|
42
|
+
handled = true;
|
43
|
+
info("Shutting down...");
|
44
|
+
server.close(err => {
|
45
|
+
if (!err) return;
|
46
|
+
error(err.toString());
|
47
|
+
});
|
48
|
+
};
|
49
|
+
process.on("SIGINT", handleInterrupt);
|
50
|
+
process.on("SIGTERM", handleInterrupt);
|
51
|
+
return new Promise(resolve => {
|
52
|
+
server.on("close", () => {
|
53
|
+
service.dispose();
|
54
|
+
resolve();
|
55
|
+
});
|
56
|
+
});
|
57
|
+
}
|
58
|
+
async function main() {
|
59
|
+
const {
|
60
|
+
input,
|
61
|
+
flags,
|
62
|
+
showHelp
|
63
|
+
} = meow(`
|
64
|
+
Usage
|
65
|
+
$ val [command]
|
66
|
+
Commands
|
67
|
+
serve Run val development server
|
68
|
+
|
69
|
+
Options
|
70
|
+
--help Show this message
|
71
|
+
--port [port], -p [port] Set server port (default 4123)
|
72
|
+
--root [root], -r [root] Set project root directory (default process.cwd())
|
73
|
+
--cfg [cfg], -c [cfg] Set path to config relative to root (default ./val.config)
|
74
|
+
`, {
|
75
|
+
flags: {
|
76
|
+
port: {
|
77
|
+
type: "number",
|
78
|
+
alias: "p",
|
79
|
+
default: 4123
|
80
|
+
},
|
81
|
+
root: {
|
82
|
+
type: "string",
|
83
|
+
alias: "r"
|
84
|
+
},
|
85
|
+
cfg: {
|
86
|
+
type: "string",
|
87
|
+
alias: "c"
|
88
|
+
}
|
89
|
+
},
|
90
|
+
hardRejection: false
|
91
|
+
});
|
92
|
+
if (input.length === 0) {
|
93
|
+
return showHelp();
|
94
|
+
}
|
95
|
+
if (input.length !== 1) {
|
96
|
+
return error(`Unknown command "${input.join(" ")}"`);
|
97
|
+
}
|
98
|
+
const [command] = input;
|
99
|
+
switch (command) {
|
100
|
+
case "serve":
|
101
|
+
return serve({
|
102
|
+
root: flags.root,
|
103
|
+
port: flags.port,
|
104
|
+
cfg: flags.cfg
|
105
|
+
});
|
106
|
+
default:
|
107
|
+
return error(`Unknown command "${input.join(" ")}"`);
|
108
|
+
}
|
109
|
+
}
|
110
|
+
void main().catch(err => {
|
111
|
+
error(err);
|
112
|
+
process.exitCode = 1;
|
113
|
+
});
|
package/cli/package.json
ADDED
@@ -0,0 +1 @@
|
|
1
|
+
export {};
|
package/package.json
ADDED
@@ -0,0 +1,33 @@
|
|
1
|
+
{
|
2
|
+
"name": "@valbuild/cli",
|
3
|
+
"version": "0.12.0",
|
4
|
+
"description": "Val CLI tools",
|
5
|
+
"bin": {
|
6
|
+
"val": "./bin.js"
|
7
|
+
},
|
8
|
+
"exports": {
|
9
|
+
"./cli": {
|
10
|
+
"module": "./cli/dist/valbuild-cli-cli.esm.js",
|
11
|
+
"default": "./cli/dist/valbuild-cli-cli.cjs.js"
|
12
|
+
},
|
13
|
+
"./package.json": "./package.json"
|
14
|
+
},
|
15
|
+
"scripts": {
|
16
|
+
"typecheck": "tsc --noEmit"
|
17
|
+
},
|
18
|
+
"dependencies": {
|
19
|
+
"@valbuild/server": "~0.12.0",
|
20
|
+
"chalk": "^4.1.2",
|
21
|
+
"cors": "^2.8.5",
|
22
|
+
"express": "^4.18.2",
|
23
|
+
"meow": "^9.0.0"
|
24
|
+
},
|
25
|
+
"preconstruct": {
|
26
|
+
"entrypoints": [
|
27
|
+
"cli.ts"
|
28
|
+
]
|
29
|
+
},
|
30
|
+
"engines": {
|
31
|
+
"node": ">=16.0.0"
|
32
|
+
}
|
33
|
+
}
|