@moudle/start 0.0.1 → 0.0.2
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/lib.d.ts +9 -12
- package/dist/lib.d.ts.map +1 -1
- package/dist/lib.js +102 -28
- package/dist/lib.js.map +1 -1
- package/package.json +4 -2
package/dist/lib.d.ts
CHANGED
|
@@ -1,15 +1,12 @@
|
|
|
1
|
-
import { Request, Response } from "express";
|
|
2
1
|
import { JSX } from "react";
|
|
3
|
-
|
|
4
|
-
export
|
|
5
|
-
export type ListAPIType = {
|
|
6
|
-
[key: string]: APIType;
|
|
7
|
-
}[];
|
|
8
|
-
export type ListPageType = {
|
|
2
|
+
type PageType = JSX.Element;
|
|
3
|
+
export declare let list_page: {
|
|
9
4
|
[key: string]: PageType;
|
|
10
|
-
}
|
|
11
|
-
export
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
}
|
|
5
|
+
};
|
|
6
|
+
export interface StartParam {
|
|
7
|
+
config_api_path: string;
|
|
8
|
+
config_page_path: string;
|
|
9
|
+
}
|
|
10
|
+
export declare function start(param: StartParam): void;
|
|
11
|
+
export {};
|
|
15
12
|
//# sourceMappingURL=lib.d.ts.map
|
package/dist/lib.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"lib.d.ts","sourceRoot":"","sources":["../lib.tsx"],"names":[],"mappings":"AACA,
|
|
1
|
+
{"version":3,"file":"lib.d.ts","sourceRoot":"","sources":["../lib.tsx"],"names":[],"mappings":"AACA,OAAO,EAAE,GAAG,EAAE,MAAM,OAAO,CAAC;AAM5B,KAAK,QAAQ,GAAG,GAAG,CAAC,OAAO,CAAC;AAE5B,eAAO,IAAI,SAAS,EAAE;IAAE,CAAC,GAAG,EAAE,MAAM,GAAG,QAAQ,CAAA;CAAO,CAAC;AACvD,MAAM,WAAW,UAAU;IACzB,eAAe,EAAE,MAAM,CAAA;IACvB,gBAAgB,EAAE,MAAM,CAAA;CACzB;AACD,wBAAgB,KAAK,CAAC,KAAK,EAAE,UAAU,QAuEtC"}
|
package/dist/lib.js
CHANGED
|
@@ -1,39 +1,113 @@
|
|
|
1
1
|
"use strict";
|
|
2
|
+
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
3
|
+
if (k2 === undefined) k2 = k;
|
|
4
|
+
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
5
|
+
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
6
|
+
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
7
|
+
}
|
|
8
|
+
Object.defineProperty(o, k2, desc);
|
|
9
|
+
}) : (function(o, m, k, k2) {
|
|
10
|
+
if (k2 === undefined) k2 = k;
|
|
11
|
+
o[k2] = m[k];
|
|
12
|
+
}));
|
|
13
|
+
var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
|
|
14
|
+
Object.defineProperty(o, "default", { enumerable: true, value: v });
|
|
15
|
+
}) : function(o, v) {
|
|
16
|
+
o["default"] = v;
|
|
17
|
+
});
|
|
18
|
+
var __importStar = (this && this.__importStar) || (function () {
|
|
19
|
+
var ownKeys = function(o) {
|
|
20
|
+
ownKeys = Object.getOwnPropertyNames || function (o) {
|
|
21
|
+
var ar = [];
|
|
22
|
+
for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
|
|
23
|
+
return ar;
|
|
24
|
+
};
|
|
25
|
+
return ownKeys(o);
|
|
26
|
+
};
|
|
27
|
+
return function (mod) {
|
|
28
|
+
if (mod && mod.__esModule) return mod;
|
|
29
|
+
var result = {};
|
|
30
|
+
if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
|
|
31
|
+
__setModuleDefault(result, mod);
|
|
32
|
+
return result;
|
|
33
|
+
};
|
|
34
|
+
})();
|
|
2
35
|
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
3
36
|
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
37
|
};
|
|
5
38
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
39
|
+
exports.list_page = void 0;
|
|
6
40
|
exports.start = start;
|
|
7
|
-
const jsx_runtime_1 = require("react/jsx-runtime");
|
|
8
|
-
const react_router_1 = require("react-router");
|
|
9
41
|
const express_1 = __importDefault(require("express"));
|
|
10
|
-
const
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
const context = await handler.query(new Request(`http://localhost${req.url}`));
|
|
19
|
-
if (context instanceof Response) {
|
|
20
|
-
res.status(context.status);
|
|
21
|
-
context.headers.forEach((v, k) => res.setHeader(k, v));
|
|
22
|
-
res.send(await context.text());
|
|
23
|
-
return;
|
|
24
|
-
}
|
|
25
|
-
const router = (0, react_router_1.createStaticRouter)(handler.dataRoutes, context);
|
|
26
|
-
res.send(server_1.default.renderToString((0, jsx_runtime_1.jsx)(react_router_1.StaticRouterProvider, { router: router, context: context })));
|
|
27
|
-
}
|
|
28
|
-
const x = (0, express_1.default)();
|
|
29
|
-
for (const method_path of Object.keys(all_kv_api)) {
|
|
42
|
+
const esbuild = __importStar(require("esbuild"));
|
|
43
|
+
const fs_1 = __importDefault(require("fs"));
|
|
44
|
+
const path_1 = __importDefault(require("path"));
|
|
45
|
+
exports.list_page = {};
|
|
46
|
+
function start(param) {
|
|
47
|
+
const app = (0, express_1.default)();
|
|
48
|
+
const all_kv_api = require(param.config_api_path).default;
|
|
49
|
+
Object.entries(all_kv_api).forEach(([method_path, api]) => {
|
|
30
50
|
const [method, path] = method_path.trim().split(/\s+/g);
|
|
31
|
-
const
|
|
32
|
-
|
|
33
|
-
}
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
51
|
+
const ac_method = method.toLowerCase();
|
|
52
|
+
app[ac_method](path, api);
|
|
53
|
+
});
|
|
54
|
+
app.get('/client.js', async (req, res) => {
|
|
55
|
+
try {
|
|
56
|
+
fs_1.default.writeFileSync(path_1.default.resolve(process.cwd(), './lib-web-generated.tsx'), `
|
|
57
|
+
import { createBrowserRouter } from "react-router";
|
|
58
|
+
import { RouterProvider } from "react-router/dom";
|
|
59
|
+
const pages: Object = require('${path_1.default.resolve(param.config_page_path)}').default;
|
|
60
|
+
export const App = () => {
|
|
61
|
+
return <RouterProvider router={createBrowserRouter(Object.entries(pages).map(([path, element]) => ({ path, element })))} />
|
|
62
|
+
};
|
|
63
|
+
`);
|
|
64
|
+
const clientScript = `
|
|
65
|
+
import React from 'react';
|
|
66
|
+
import { createRoot } from 'react-dom/client';
|
|
67
|
+
import { App } from './lib-web-generated';
|
|
68
|
+
createRoot(document.getElementById('root')).render(<App />);
|
|
69
|
+
`;
|
|
70
|
+
const result = await esbuild.build({
|
|
71
|
+
stdin: {
|
|
72
|
+
contents: clientScript,
|
|
73
|
+
resolveDir: process.cwd(),
|
|
74
|
+
loader: 'tsx',
|
|
75
|
+
},
|
|
76
|
+
bundle: true,
|
|
77
|
+
minify: false,
|
|
78
|
+
write: false,
|
|
79
|
+
format: 'esm',
|
|
80
|
+
target: 'es2020',
|
|
81
|
+
define: {
|
|
82
|
+
'process.env.NODE_ENV': '"development"'
|
|
83
|
+
}
|
|
84
|
+
});
|
|
85
|
+
res.type('application/javascript');
|
|
86
|
+
res.send(result.outputFiles[0].text);
|
|
87
|
+
}
|
|
88
|
+
catch (err) {
|
|
89
|
+
console.error("Esbuild compilation error:", err);
|
|
90
|
+
res.status(500).type('text/plain').send(err.toString());
|
|
91
|
+
}
|
|
92
|
+
});
|
|
93
|
+
app.use((req, res) => {
|
|
94
|
+
res.send(`
|
|
95
|
+
<!DOCTYPE html>
|
|
96
|
+
<html lang="en">
|
|
97
|
+
<head>
|
|
98
|
+
<meta charset="UTF-8">
|
|
99
|
+
<meta name="viewport" content="width=device-width, initial-scale=1.0">
|
|
100
|
+
<title>Test</title>
|
|
101
|
+
</head>
|
|
102
|
+
<body>
|
|
103
|
+
<div id="root"></div>
|
|
104
|
+
<script type="module" src="/client.js"></script>
|
|
105
|
+
</body>
|
|
106
|
+
</html>
|
|
107
|
+
`);
|
|
108
|
+
});
|
|
109
|
+
app.listen(5000, () => {
|
|
110
|
+
console.log('Server running at http://localhost:5000');
|
|
37
111
|
});
|
|
38
112
|
}
|
|
39
113
|
//# sourceMappingURL=lib.js.map
|
package/dist/lib.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"lib.js","sourceRoot":"","sources":["../lib.tsx"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"lib.js","sourceRoot":"","sources":["../lib.tsx"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAcA,sBAuEC;AArFD,sDAAqD;AAErD,iDAAmC;AACnC,4CAAoB;AACpB,gDAAwB;AAKb,QAAA,SAAS,GAAgC,EAAE,CAAC;AAKvD,SAAgB,KAAK,CAAC,KAAiB;IACrC,MAAM,GAAG,GAAG,IAAA,iBAAO,GAAE,CAAC;IAEtB,MAAM,UAAU,GAA+B,OAAO,CAAC,KAAK,CAAC,eAAe,CAAC,CAAC,OAAO,CAAC;IACtF,MAAM,CAAC,OAAO,CAAC,UAAU,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,WAAW,EAAE,GAAG,CAAC,EAAE,EAAE;QACxD,MAAM,CAAC,MAAM,EAAE,IAAI,CAAC,GAAG,WAAW,CAAC,IAAI,EAAE,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC;QACxD,MAAM,SAAS,GAAG,MAAM,CAAC,WAAW,EAAiD,CAAC;QACtF,GAAG,CAAC,SAAS,CAAC,CAAC,IAAI,EAAE,GAAG,CAAC,CAAC;IAC5B,CAAC,CAAC,CAAC;IAEH,GAAG,CAAC,GAAG,CAAC,YAAY,EAAE,KAAK,EAAE,GAAG,EAAE,GAAG,EAAE,EAAE;QACvC,IAAI,CAAC;YACH,YAAE,CAAC,aAAa,CAAC,cAAI,CAAC,OAAO,CAAC,OAAO,CAAC,GAAG,EAAE,EAAE,yBAAyB,CAAC,EAAE;;;yCAGtC,cAAI,CAAC,OAAO,CAAC,KAAK,CAAC,gBAAgB,CAAC;;;;OAItE,CAAC,CAAC;YACH,MAAM,YAAY,GAAG;;;;;OAKpB,CAAC;YAEF,MAAM,MAAM,GAAG,MAAM,OAAO,CAAC,KAAK,CAAC;gBACjC,KAAK,EAAE;oBACL,QAAQ,EAAE,YAAY;oBACtB,UAAU,EAAE,OAAO,CAAC,GAAG,EAAE;oBACzB,MAAM,EAAE,KAAK;iBACd;gBACD,MAAM,EAAE,IAAI;gBACZ,MAAM,EAAE,KAAK;gBACb,KAAK,EAAE,KAAK;gBACZ,MAAM,EAAE,KAAK;gBACb,MAAM,EAAE,QAAQ;gBAChB,MAAM,EAAE;oBACN,sBAAsB,EAAE,eAAe;iBACxC;aACF,CAAC,CAAC;YAEH,GAAG,CAAC,IAAI,CAAC,wBAAwB,CAAC,CAAC;YACnC,GAAG,CAAC,IAAI,CAAC,MAAM,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC;QACvC,CAAC;QAAC,OAAO,GAAQ,EAAE,CAAC;YAClB,OAAO,CAAC,KAAK,CAAC,4BAA4B,EAAE,GAAG,CAAC,CAAC;YACjD,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,QAAQ,EAAE,CAAC,CAAC;QAC1D,CAAC;IACH,CAAC,CAAC,CAAC;IAEH,GAAG,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,GAAG,EAAE,EAAE;QACnB,GAAG,CAAC,IAAI,CAAC;;;;;;;;;;;;;GAaV,CAAC,CAAC;IACH,CAAC,CAAC,CAAC;IAEH,GAAG,CAAC,MAAM,CAAC,IAAI,EAAE,GAAG,EAAE;QACpB,OAAO,CAAC,GAAG,CAAC,yCAAyC,CAAC,CAAC;IACzD,CAAC,CAAC,CAAC;AACL,CAAC"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@moudle/start",
|
|
3
|
-
"version": "0.0.
|
|
3
|
+
"version": "0.0.2",
|
|
4
4
|
"description": "",
|
|
5
5
|
"main": "dist/lib.js",
|
|
6
6
|
"publishConfig": {
|
|
@@ -23,12 +23,14 @@
|
|
|
23
23
|
"@types/node": "^25.8.0",
|
|
24
24
|
"@types/react": "^19.2.14",
|
|
25
25
|
"@types/react-dom": "^19.2.3",
|
|
26
|
+
"@types/react-router-dom": "^5.3.3",
|
|
26
27
|
"typescript": "^6.0.3"
|
|
27
28
|
},
|
|
28
29
|
"dependencies": {
|
|
29
30
|
"@moudle/test": "^0.0.1",
|
|
30
31
|
"@react-router/express": "^7.15.1",
|
|
31
32
|
"express": "^5.2.1",
|
|
32
|
-
"react-dom": "^19.2.6"
|
|
33
|
+
"react-dom": "^19.2.6",
|
|
34
|
+
"react-router-dom": "^7.15.1"
|
|
33
35
|
}
|
|
34
36
|
}
|