@xyd-js/documan 0.1.0-xyd.2 → 0.1.0-xyd.20
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/build.js +28 -7
- package/dist/build.js.map +1 -1
- package/dist/dev.js +7 -17
- package/dist/dev.js.map +1 -1
- package/dist/index.js +33 -22
- package/dist/index.js.map +1 -1
- package/dist/serve.js +2 -2
- package/dist/serve.js.map +1 -1
- package/package.json +15 -18
- package/host/.react-router/types/app/+types/root.ts +0 -40
- package/host/app/root.tsx +0 -23
- package/host/app/routes.ts +0 -5
- package/host/node_modules/.vite/deps/@mdx-js_mdx.js +0 -81
- package/host/node_modules/.vite/deps/@mdx-js_mdx.js.map +0 -7
- package/host/node_modules/.vite/deps/@mdx-js_rollup.js +0 -4003
- package/host/node_modules/.vite/deps/@mdx-js_rollup.js.map +0 -7
- package/host/node_modules/.vite/deps/@radix-ui_react-icons.js +0 -7531
- package/host/node_modules/.vite/deps/@radix-ui_react-icons.js.map +0 -7
- package/host/node_modules/.vite/deps/@radix-ui_react-tabs.js +0 -917
- package/host/node_modules/.vite/deps/@radix-ui_react-tabs.js.map +0 -7
- package/host/node_modules/.vite/deps/_metadata.json +0 -157
- package/host/node_modules/.vite/deps/chunk-2TUXWMP5.js +0 -46
- package/host/node_modules/.vite/deps/chunk-2TUXWMP5.js.map +0 -7
- package/host/node_modules/.vite/deps/chunk-A76PLWFF.js +0 -23875
- package/host/node_modules/.vite/deps/chunk-A76PLWFF.js.map +0 -7
- package/host/node_modules/.vite/deps/chunk-B2TCFXA3.js +0 -27
- package/host/node_modules/.vite/deps/chunk-B2TCFXA3.js.map +0 -7
- package/host/node_modules/.vite/deps/chunk-CZACBYAQ.js +0 -3461
- package/host/node_modules/.vite/deps/chunk-CZACBYAQ.js.map +0 -7
- package/host/node_modules/.vite/deps/chunk-IVP26VTC.js +0 -21
- package/host/node_modules/.vite/deps/chunk-IVP26VTC.js.map +0 -7
- package/host/node_modules/.vite/deps/chunk-NSHFRFAV.js +0 -894
- package/host/node_modules/.vite/deps/chunk-NSHFRFAV.js.map +0 -7
- package/host/node_modules/.vite/deps/chunk-O6QCC74R.js +0 -205
- package/host/node_modules/.vite/deps/chunk-O6QCC74R.js.map +0 -7
- package/host/node_modules/.vite/deps/chunk-SBIFJFEH.js +0 -894
- package/host/node_modules/.vite/deps/chunk-SBIFJFEH.js.map +0 -7
- package/host/node_modules/.vite/deps/chunk-SURLKOJ2.js +0 -12
- package/host/node_modules/.vite/deps/chunk-SURLKOJ2.js.map +0 -7
- package/host/node_modules/.vite/deps/chunk-VENRSTQF.js +0 -21628
- package/host/node_modules/.vite/deps/chunk-VENRSTQF.js.map +0 -7
- package/host/node_modules/.vite/deps/chunk-XCGROZNW.js +0 -10609
- package/host/node_modules/.vite/deps/chunk-XCGROZNW.js.map +0 -7
- package/host/node_modules/.vite/deps/chunk-ZFDQJWTH.js +0 -928
- package/host/node_modules/.vite/deps/chunk-ZFDQJWTH.js.map +0 -7
- package/host/node_modules/.vite/deps/chunk-ZFOARUJI.js +0 -1906
- package/host/node_modules/.vite/deps/chunk-ZFOARUJI.js.map +0 -7
- package/host/node_modules/.vite/deps/gray-matter.js +0 -3492
- package/host/node_modules/.vite/deps/gray-matter.js.map +0 -7
- package/host/node_modules/.vite/deps/lucide-react.js +0 -34742
- package/host/node_modules/.vite/deps/lucide-react.js.map +0 -7
- package/host/node_modules/.vite/deps/package.json +0 -3
- package/host/node_modules/.vite/deps/react-dom.js +0 -7
- package/host/node_modules/.vite/deps/react-dom.js.map +0 -7
- package/host/node_modules/.vite/deps/react-dom_client.js +0 -39
- package/host/node_modules/.vite/deps/react-dom_client.js.map +0 -7
- package/host/node_modules/.vite/deps/react-router.js +0 -243
- package/host/node_modules/.vite/deps/react-router.js.map +0 -7
- package/host/node_modules/.vite/deps/react-router_dom.js +0 -212
- package/host/node_modules/.vite/deps/react-router_dom.js.map +0 -7
- package/host/node_modules/.vite/deps/react.js +0 -6
- package/host/node_modules/.vite/deps/react.js.map +0 -7
- package/host/node_modules/.vite/deps/react_jsx-dev-runtime.js +0 -913
- package/host/node_modules/.vite/deps/react_jsx-dev-runtime.js.map +0 -7
- package/host/node_modules/.vite/deps/react_jsx-runtime.js +0 -7
- package/host/node_modules/.vite/deps/react_jsx-runtime.js.map +0 -7
- package/host/node_modules/.vite/deps/remark-frontmatter.js +0 -428
- package/host/node_modules/.vite/deps/remark-frontmatter.js.map +0 -7
- package/host/node_modules/.vite/deps/remark-gfm.js +0 -3122
- package/host/node_modules/.vite/deps/remark-gfm.js.map +0 -7
- package/host/node_modules/.vite/deps/remark-mdx-frontmatter.js +0 -10482
- package/host/node_modules/.vite/deps/remark-mdx-frontmatter.js.map +0 -7
- package/host/node_modules/.vite/deps/unist-util-visit.js +0 -14
- package/host/node_modules/.vite/deps/unist-util-visit.js.map +0 -7
- package/host/node_modules/.vite/deps/vfile.js +0 -8
- package/host/node_modules/.vite/deps/vfile.js.map +0 -7
- package/host/package.json +0 -43
- package/host/postcss.config.cjs +0 -5
- package/host/react-router.config.ts +0 -8
- package/host/tsconfig.json +0 -22
- package/host/vite.config.ts +0 -9
- package/src/commands/build.ts +0 -4
- package/src/commands/dev.ts +0 -5
- package/src/commands/serve.ts +0 -5
- package/src/index.ts +0 -7
- package/src/run/build.ts +0 -98
- package/src/run/dev.ts +0 -76
- package/src/run/index.ts +0 -6
- package/src/run/serve.ts +0 -106
- package/tsconfig.json +0 -22
- package/tsup.config.ts +0 -81
package/dist/build.js
CHANGED
|
@@ -2,10 +2,11 @@
|
|
|
2
2
|
import path from "node:path";
|
|
3
3
|
import fs from "node:fs";
|
|
4
4
|
import { fileURLToPath } from "node:url";
|
|
5
|
+
import { execSync } from "child_process";
|
|
5
6
|
import { build as viteBuild } from "vite";
|
|
6
7
|
import tsconfigPaths from "vite-tsconfig-paths";
|
|
7
8
|
import { reactRouter } from "@xyd-js/react-router-dev/vite";
|
|
8
|
-
import { vitePlugins as xydContentVitePlugins } from "@xyd-js/content";
|
|
9
|
+
import { vitePlugins as xydContentVitePlugins } from "@xyd-js/content/vite";
|
|
9
10
|
import { pluginZero } from "@xyd-js/plugin-zero";
|
|
10
11
|
var __filename = fileURLToPath(import.meta.url);
|
|
11
12
|
var __dirname = path.dirname(__filename);
|
|
@@ -20,18 +21,39 @@ async function build() {
|
|
|
20
21
|
const packageJsonContent = {
|
|
21
22
|
type: "module",
|
|
22
23
|
scripts: {},
|
|
23
|
-
dependencies: {
|
|
24
|
+
dependencies: {
|
|
25
|
+
// TODO: better
|
|
26
|
+
"@xyd-js/content": "latest",
|
|
27
|
+
"@xyd-js/components": "latest",
|
|
28
|
+
"@xyd-js/framework": "latest",
|
|
29
|
+
"@xyd-js/theme-poetry": "latest",
|
|
30
|
+
"@react-router/node": "7.1.1",
|
|
31
|
+
"isbot": "^5"
|
|
32
|
+
},
|
|
24
33
|
devDependencies: {}
|
|
25
34
|
};
|
|
35
|
+
if (process.env.XYD_DEV_MODE) {
|
|
36
|
+
packageJsonContent.dependencies = {
|
|
37
|
+
...packageJsonContent.dependencies,
|
|
38
|
+
"@xyd-js/content": "workspace:*",
|
|
39
|
+
"@xyd-js/components": "workspace:*",
|
|
40
|
+
"@xyd-js/framework": "workspace:*",
|
|
41
|
+
"@xyd-js/theme-poetry": "workspace:*"
|
|
42
|
+
};
|
|
43
|
+
}
|
|
26
44
|
if (!fs.existsSync(buildDir)) {
|
|
27
45
|
fs.mkdirSync(buildDir, { recursive: true });
|
|
28
46
|
}
|
|
29
47
|
fs.writeFileSync(packageJsonPath, JSON.stringify(packageJsonContent, null, 2), "utf8");
|
|
48
|
+
if (process.env.XYD_DEV_MODE) {
|
|
49
|
+
execSync("pnpm i", { cwd: buildDir, stdio: "inherit" });
|
|
50
|
+
} else {
|
|
51
|
+
execSync("npm install", { cwd: buildDir, stdio: "inherit" });
|
|
52
|
+
}
|
|
30
53
|
}
|
|
31
54
|
try {
|
|
32
55
|
await viteBuild({
|
|
33
|
-
root: path.join(__dirname, "../host"),
|
|
34
|
-
// @ts-ignore
|
|
56
|
+
root: process.env.XYD_CLI ? __dirname : process.env.XYD_DOCUMAN_HOST || path.join(__dirname, "../host"),
|
|
35
57
|
plugins: [
|
|
36
58
|
...xydContentVitePlugins({
|
|
37
59
|
toc: {
|
|
@@ -50,11 +72,10 @@ async function build() {
|
|
|
50
72
|
}
|
|
51
73
|
});
|
|
52
74
|
await viteBuild({
|
|
53
|
-
root: path.join(__dirname, "../host"),
|
|
75
|
+
root: process.env.XYD_CLI ? __dirname : process.env.XYD_DOCUMAN_HOST || path.join(__dirname, "../host"),
|
|
54
76
|
build: {
|
|
55
77
|
ssr: true
|
|
56
78
|
},
|
|
57
|
-
// @ts-ignore
|
|
58
79
|
plugins: [
|
|
59
80
|
...xydContentVitePlugins({
|
|
60
81
|
toc: {
|
|
@@ -83,7 +104,7 @@ import path2 from "node:path";
|
|
|
83
104
|
import { fileURLToPath as fileURLToPath2 } from "node:url";
|
|
84
105
|
import { createServer, searchForWorkspaceRoot } from "vite";
|
|
85
106
|
import { reactRouter as reactRouter2 } from "@xyd-js/react-router-dev/vite";
|
|
86
|
-
import { vitePlugins as xydContentVitePlugins2 } from "@xyd-js/content";
|
|
107
|
+
import { vitePlugins as xydContentVitePlugins2 } from "@xyd-js/content/vite";
|
|
87
108
|
import { pluginZero as pluginZero2 } from "@xyd-js/plugin-zero";
|
|
88
109
|
var __filename2 = fileURLToPath2(import.meta.url);
|
|
89
110
|
var __dirname2 = path2.dirname(__filename2);
|
package/dist/build.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../src/run/build.ts","../src/run/dev.ts","../src/run/serve.ts","../src/commands/build.ts"],"sourcesContent":["import path from \"node:path\";\nimport fs from \"node:fs\";\nimport {fileURLToPath} from \"node:url\";\n\nimport {build as viteBuild} from 'vite';\nimport tsconfigPaths from \"vite-tsconfig-paths\";\n\nimport {reactRouter} from \"@xyd-js/react-router-dev/vite\";\n// import { reactRouter } from \"@react-router/dev/vite\";\n\nimport {vitePlugins as xydContentVitePlugins} from \"@xyd-js/content\"\nimport {pluginZero} from \"@xyd-js/plugin-zero\";\n\nconst __filename = fileURLToPath(import.meta.url);\nconst __dirname = path.dirname(__filename);\n\n// Define the main function to run the builds\nexport async function build() {\n const resp = await pluginZero()\n if (!resp) {\n throw new Error(\"PluginZero not found\")\n }\n\n const buildDir = path.join(process.cwd(), \".xyd/build\");\n\n {\n const packageJsonPath = path.join(buildDir, 'package.json');\n\n const packageJsonContent = {\n type: \"module\",\n scripts: {},\n dependencies: {},\n devDependencies: {}\n };\n\n // Ensure the build directory exists\n if (!fs.existsSync(buildDir)) {\n fs.mkdirSync(buildDir, {recursive: true});\n }\n\n // Write the package.json file\n fs.writeFileSync(packageJsonPath, JSON.stringify(packageJsonContent, null, 2), 'utf8');\n }\n\n try {\n // Build the client-side bundle\n await viteBuild({\n root: path.join(__dirname, \"../host\"),\n // @ts-ignore\n plugins: [\n ...(xydContentVitePlugins({\n toc: {\n minDepth: 2,\n }\n }) as Plugin[]),\n reactRouter({\n outDir: buildDir,\n routes: resp.routes\n }),\n tsconfigPaths(),\n ...resp.vitePlugins\n ],\n optimizeDeps: {\n include: [\"react/jsx-runtime\"],\n },\n });\n\n // Build the SSR bundle\n await viteBuild({\n root: path.join(__dirname, \"../host\"),\n build: {\n ssr: true,\n },\n // @ts-ignore\n plugins: [\n ...(xydContentVitePlugins({\n toc: {\n minDepth: 2,\n }\n }) as Plugin[]),\n reactRouter({\n outDir: buildDir,\n routes: resp.routes\n }),\n tsconfigPaths(),\n ...resp.vitePlugins\n ],\n optimizeDeps: {\n include: [\"react/jsx-runtime\"],\n },\n });\n\n console.log('Build completed successfully.'); // TODO: better message\n } catch (error) {\n console.error('Build failed:', error); // TODO: better message\n }\n}\n\n","import path from \"node:path\";\nimport {fileURLToPath} from \"node:url\";\nimport {createServer, searchForWorkspaceRoot} from \"vite\";\n\nimport {reactRouter} from \"@xyd-js/react-router-dev/vite\";\n// import { reactRouter } from \"@react-router/dev/vite\";\n\nimport {vitePlugins as xydContentVitePlugins} from \"@xyd-js/content\";\nimport {pluginZero} from \"@xyd-js/plugin-zero\";\n\nconst __filename = fileURLToPath(import.meta.url);\nconst __dirname = path.dirname(__filename);\n\nconst port = process.env.XYD_PORT ? parseInt(process.env.XYD_PORT) : 5175;\n\nexport async function dev() {\n const resp = await pluginZero()\n if (!resp) {\n throw new Error(\"PluginZero not found\")\n }\n\n const allowCwd = searchForWorkspaceRoot(process.cwd())\n\n const preview = await createServer({\n // any valid user config options, plus `mode` and `configFile`\n // configFile: path.join(__dirname, \"../src/vite/empty-config.ts\"), // TODO: bundler??\n // configFile: path.join(__dirname, \"../\"), // TODO: bundler??\n // root: path.join(__dirname, \"../\"), // TODO: bundler?\n root: process.env.XYD_DOCUMAN_HOST || path.join(__dirname, \"../host\"), // TODO: bundler?\n server: {\n port: port,\n fs: {\n allow: [\n allowCwd,\n process.env.XYD_CLI ? path.join(__dirname, \"../../\") : \"\",\n // path.join(__dirname, \"../node_modules\") // Ensure node_modules from xyd-documan is included\n ]\n }\n },\n build: {\n rollupOptions: {\n // Exclude package `B` from the client-side bundle\n external: [\"@xyd-js/uniform\", \"@xyd-js/uniform/content\", \"@xyd-js/plugin-zero\"],\n },\n },\n ssr: {\n external: [\"@xyd-js/uniform\", \"@xyd-js/uniform/content\", \"@xyd-js/plugin-zero\"],\n // noExternal: [\n // \"@xyd-js/uniform\",\n // \"@xyd-js/uniform/content\",\n // \"@xyd-js/plugin-zero\"\n // ],\n },\n optimizeDeps: {\n include: [\"react/jsx-runtime\"],\n },\n // @ts-ignore\n plugins: [ // TODO: fix plugin ts\n ...(xydContentVitePlugins({\n toc: {\n minDepth: 2,\n }\n }) as Plugin[]),\n reactRouter({\n routes: resp.routes\n }),\n ...resp.vitePlugins\n ],\n });\n\n await preview.listen(port);\n\n preview.printUrls();\n preview.bindCLIShortcuts({print: true});\n\n}","import fs from \"node:fs\";\nimport os from \"node:os\";\nimport path from \"node:path\";\nimport url from \"node:url\";\n\nimport type {ServerBuild} from \"react-router\";\nimport {createRequestHandler} from \"@react-router/express\";\nimport compression from \"compression\";\nimport express from \"express\";\nimport morgan from \"morgan\";\nimport sourceMapSupport from \"source-map-support\";\nimport getPort from \"get-port\";\n\nfunction parseNumber(raw?: string) {\n if (raw === undefined) return undefined;\n let maybe = Number(raw);\n if (Number.isNaN(maybe)) return undefined;\n return maybe;\n}\n\nexport async function serve() {\n process.env.NODE_ENV = process.env.NODE_ENV ?? \"production\";\n\n sourceMapSupport.install({\n retrieveSourceMap: function (source) {\n let match = source.startsWith(\"file://\");\n if (match) {\n let filePath = url.fileURLToPath(source);\n let sourceMapPath = `${filePath}.map`;\n if (fs.existsSync(sourceMapPath)) {\n return {\n url: source,\n map: fs.readFileSync(sourceMapPath, \"utf8\"),\n };\n }\n }\n return null;\n },\n });\n\n let port = parseNumber(process.env.PORT) ?? (await getPort({port: 3000}));\n\n let buildPathArg = path.join(process.cwd(), \".xyd/build/server/index.js\")\n\n if (!buildPathArg) {\n console.error(`\n Usage: react-router-serve <server-build-path> - e.g. react-router-serve build/server/index.js`);\n process.exit(1);\n }\n\n let buildPath = path.resolve(buildPathArg);\n\n let build: ServerBuild = await import(url.pathToFileURL(buildPath).href);\n\n let onListen = () => {\n let address =\n process.env.HOST ||\n Object.values(os.networkInterfaces())\n .flat()\n .find((ip) => String(ip?.family).includes(\"4\") && !ip?.internal)\n ?.address;\n\n if (!address) {\n console.log(`[xyd-serve] http://localhost:${port}`);\n } else {\n console.log(\n `[xyd-serve] http://localhost:${port} (http://${address}:${port})`\n );\n }\n };\n\n build = {\n ...build,\n assetsBuildDirectory: path.join(process.cwd(), \".xyd/build/client\")\n }\n\n let app = express();\n app.disable(\"x-powered-by\");\n app.use(compression());\n app.use(\n path.posix.join(build.publicPath, \"assets\"),\n express.static(path.join(build.assetsBuildDirectory, \"assets\"), {\n immutable: true,\n maxAge: \"1y\",\n })\n );\n app.use(build.publicPath, express.static(build.assetsBuildDirectory));\n app.use(express.static(\"public\", {maxAge: \"1h\"}));\n app.use(morgan(\"tiny\"));\n\n app.all(\n \"*\",\n createRequestHandler({\n build,\n mode: process.env.NODE_ENV,\n })\n );\n\n let server = process.env.HOST\n ? app.listen(port, process.env.HOST, onListen)\n : app.listen(port, onListen);\n\n [\"SIGTERM\", \"SIGINT\"].forEach((signal) => {\n process.once(signal, () => server?.close(console.error));\n });\n}\n","import {build} from \"../\"\n\n// Execute the build function\nawait build();"],"mappings":";AAAA,OAAO,UAAU;AACjB,OAAO,QAAQ;AACf,SAAQ,qBAAoB;AAE5B,SAAQ,SAAS,iBAAgB;AACjC,OAAO,mBAAmB;AAE1B,SAAQ,mBAAkB;AAG1B,SAAQ,eAAe,6BAA4B;AACnD,SAAQ,kBAAiB;AAEzB,IAAM,aAAa,cAAc,YAAY,GAAG;AAChD,IAAM,YAAY,KAAK,QAAQ,UAAU;AAGzC,eAAsB,QAAQ;AAC1B,QAAM,OAAO,MAAM,WAAW;AAC9B,MAAI,CAAC,MAAM;AACP,UAAM,IAAI,MAAM,sBAAsB;AAAA,EAC1C;AAEA,QAAM,WAAW,KAAK,KAAK,QAAQ,IAAI,GAAG,YAAY;AAEtD;AACI,UAAM,kBAAkB,KAAK,KAAK,UAAU,cAAc;AAE1D,UAAM,qBAAqB;AAAA,MACvB,MAAM;AAAA,MACN,SAAS,CAAC;AAAA,MACV,cAAc,CAAC;AAAA,MACf,iBAAiB,CAAC;AAAA,IACtB;AAGA,QAAI,CAAC,GAAG,WAAW,QAAQ,GAAG;AAC1B,SAAG,UAAU,UAAU,EAAC,WAAW,KAAI,CAAC;AAAA,IAC5C;AAGA,OAAG,cAAc,iBAAiB,KAAK,UAAU,oBAAoB,MAAM,CAAC,GAAG,MAAM;AAAA,EACzF;AAEA,MAAI;AAEA,UAAM,UAAU;AAAA,MACZ,MAAM,KAAK,KAAK,WAAW,SAAS;AAAA;AAAA,MAEpC,SAAS;AAAA,QACL,GAAI,sBAAsB;AAAA,UACtB,KAAK;AAAA,YACD,UAAU;AAAA,UACd;AAAA,QACJ,CAAC;AAAA,QACD,YAAY;AAAA,UACR,QAAQ;AAAA,UACR,QAAQ,KAAK;AAAA,QACjB,CAAC;AAAA,QACD,cAAc;AAAA,QACd,GAAG,KAAK;AAAA,MACZ;AAAA,MACA,cAAc;AAAA,QACV,SAAS,CAAC,mBAAmB;AAAA,MACjC;AAAA,IACJ,CAAC;AAGD,UAAM,UAAU;AAAA,MACZ,MAAM,KAAK,KAAK,WAAW,SAAS;AAAA,MACpC,OAAO;AAAA,QACH,KAAK;AAAA,MACT;AAAA;AAAA,MAEA,SAAS;AAAA,QACL,GAAI,sBAAsB;AAAA,UACtB,KAAK;AAAA,YACD,UAAU;AAAA,UACd;AAAA,QACJ,CAAC;AAAA,QACD,YAAY;AAAA,UACR,QAAQ;AAAA,UACR,QAAQ,KAAK;AAAA,QACjB,CAAC;AAAA,QACD,cAAc;AAAA,QACd,GAAG,KAAK;AAAA,MACZ;AAAA,MACA,cAAc;AAAA,QACV,SAAS,CAAC,mBAAmB;AAAA,MACjC;AAAA,IACJ,CAAC;AAED,YAAQ,IAAI,+BAA+B;AAAA,EAC/C,SAAS,OAAO;AACZ,YAAQ,MAAM,iBAAiB,KAAK;AAAA,EACxC;AACJ;;;AChGA,OAAOA,WAAU;AACjB,SAAQ,iBAAAC,sBAAoB;AAC5B,SAAQ,cAAc,8BAA6B;AAEnD,SAAQ,eAAAC,oBAAkB;AAG1B,SAAQ,eAAeC,8BAA4B;AACnD,SAAQ,cAAAC,mBAAiB;AAEzB,IAAMC,cAAaJ,eAAc,YAAY,GAAG;AAChD,IAAMK,aAAYN,MAAK,QAAQK,WAAU;AAEzC,IAAM,OAAO,QAAQ,IAAI,WAAW,SAAS,QAAQ,IAAI,QAAQ,IAAI;;;ACbrE,OAAOE,SAAQ;AACf,OAAO,QAAQ;AACf,OAAOC,WAAU;AACjB,OAAO,SAAS;AAGhB,SAAQ,4BAA2B;AACnC,OAAO,iBAAiB;AACxB,OAAO,aAAa;AACpB,OAAO,YAAY;AACnB,OAAO,sBAAsB;AAC7B,OAAO,aAAa;;;ACRpB,MAAM,MAAM;","names":["path","fileURLToPath","reactRouter","xydContentVitePlugins","pluginZero","__filename","__dirname","fs","path"]}
|
|
1
|
+
{"version":3,"sources":["../src/run/build.ts","../src/run/dev.ts","../src/run/serve.ts","../src/commands/build.ts"],"sourcesContent":["import path from \"node:path\";\nimport fs from \"node:fs\";\nimport {fileURLToPath} from \"node:url\";\nimport {execSync} from 'child_process';\n\nimport {build as viteBuild} from 'vite';\nimport tsconfigPaths from \"vite-tsconfig-paths\";\n\nimport {reactRouter} from \"@xyd-js/react-router-dev/vite\";\n\nimport {vitePlugins as xydContentVitePlugins} from \"@xyd-js/content/vite\"\nimport {pluginZero} from \"@xyd-js/plugin-zero\";\n\nconst __filename = fileURLToPath(import.meta.url);\nconst __dirname = path.dirname(__filename);\n\n// Define the main function to run the builds\nexport async function build() {\n const resp = await pluginZero()\n if (!resp) {\n throw new Error(\"PluginZero not found\")\n }\n\n const buildDir = path.join(process.cwd(), \".xyd/build\");\n\n {\n // TODO: probably we should have better mechanism - maybe bundle?\n\n const packageJsonPath = path.join(buildDir, 'package.json');\n\n const packageJsonContent = {\n type: \"module\",\n scripts: {},\n dependencies: { // TODO: better\n \"@xyd-js/content\": \"latest\",\n \"@xyd-js/components\": \"latest\",\n \"@xyd-js/framework\": \"latest\",\n \"@xyd-js/theme-poetry\": \"latest\",\n\n\n \"@react-router/node\": \"7.1.1\",\n \"isbot\": \"^5\"\n },\n devDependencies: {}\n };\n\n if (process.env.XYD_DEV_MODE) {\n packageJsonContent.dependencies = {\n ...packageJsonContent.dependencies,\n \"@xyd-js/content\": \"workspace:*\",\n \"@xyd-js/components\": \"workspace:*\",\n \"@xyd-js/framework\": \"workspace:*\",\n \"@xyd-js/theme-poetry\": \"workspace:*\",\n }\n }\n\n // Ensure the build directory exists\n if (!fs.existsSync(buildDir)) {\n fs.mkdirSync(buildDir, {recursive: true});\n }\n\n // Write the package.json file\n fs.writeFileSync(packageJsonPath, JSON.stringify(packageJsonContent, null, 2), 'utf8');\n\n // Install packages inside buildDir\n if (process.env.XYD_DEV_MODE) {\n execSync('pnpm i', {cwd: buildDir, stdio: 'inherit'});\n } else {\n execSync('npm install', {cwd: buildDir, stdio: 'inherit'});\n }\n }\n\n try {\n // Build the client-side bundle\n await viteBuild({\n root: process.env.XYD_CLI ? __dirname : process.env.XYD_DOCUMAN_HOST || path.join(__dirname, \"../host\"),\n plugins: [\n ...(xydContentVitePlugins({\n toc: {\n minDepth: 2,\n }\n }) as Plugin[]),\n reactRouter({\n outDir: buildDir,\n routes: resp.routes\n }),\n tsconfigPaths(),\n ...resp.vitePlugins\n ],\n optimizeDeps: {\n include: [\"react/jsx-runtime\"],\n },\n });\n\n // Build the SSR bundle\n await viteBuild({\n root: process.env.XYD_CLI ? __dirname : process.env.XYD_DOCUMAN_HOST || path.join(__dirname, \"../host\"),\n build: {\n ssr: true,\n },\n plugins: [\n ...(xydContentVitePlugins({\n toc: {\n minDepth: 2,\n }\n }) as Plugin[]),\n reactRouter({\n outDir: buildDir,\n routes: resp.routes\n }),\n tsconfigPaths(),\n ...resp.vitePlugins\n ],\n optimizeDeps: {\n include: [\"react/jsx-runtime\"],\n },\n });\n\n console.log('Build completed successfully.'); // TODO: better message\n } catch (error) {\n console.error('Build failed:', error); // TODO: better message\n }\n}\n\n","import path from \"node:path\";\nimport {fileURLToPath} from \"node:url\";\nimport {createServer, searchForWorkspaceRoot} from \"vite\";\n\nimport {reactRouter} from \"@xyd-js/react-router-dev/vite\";\n\nimport {vitePlugins as xydContentVitePlugins} from \"@xyd-js/content/vite\";\nimport {pluginZero} from \"@xyd-js/plugin-zero\";\n\nconst __filename = fileURLToPath(import.meta.url);\nconst __dirname = path.dirname(__filename);\n\nconst port = process.env.XYD_PORT ? parseInt(process.env.XYD_PORT) : 5175;\n\nexport async function dev() {\n const respPluginZero = await pluginZero()\n if (!respPluginZero) {\n throw new Error(\"PluginZero not found\")\n }\n\n const allowCwd = searchForWorkspaceRoot(process.cwd())\n\n const preview = await createServer({\n root: process.env.XYD_CLI ? __dirname : process.env.XYD_DOCUMAN_HOST || path.join(__dirname, \"../host\"), // TODO: bundler?\n server: {\n port: port,\n fs: {\n allow: [\n allowCwd,\n process.env.XYD_CLI ? path.join(__dirname, \"../../\") : \"\",\n // path.join(__dirname, \"../node_modules\") // Ensure node_modules from xyd-documan is included\n ]\n }\n },\n build: {\n rollupOptions: {\n // Exclude package `B` from the client-side bundle\n external: [\"@xyd-js/uniform\", \"@xyd-js/uniform/content\", \"@xyd-js/plugin-zero\"],\n },\n },\n ssr: {\n external: [\"@xyd-js/uniform\", \"@xyd-js/uniform/content\", \"@xyd-js/plugin-zero\"],\n },\n optimizeDeps: {\n include: [\"react/jsx-runtime\"],\n },\n plugins: [ // TODO: fix plugin ts\n ...(xydContentVitePlugins({\n toc: {\n minDepth: 2,\n }\n }) as Plugin[]),\n reactRouter({\n routes: respPluginZero.routes\n }),\n ...respPluginZero.vitePlugins\n ],\n });\n\n await preview.listen(port);\n\n preview.printUrls();\n preview.bindCLIShortcuts({print: true});\n\n}","import fs from \"node:fs\";\nimport os from \"node:os\";\nimport path from \"node:path\";\nimport url from \"node:url\";\n\nimport type {ServerBuild} from \"react-router\";\nimport {createRequestHandler} from \"@react-router/express\";\nimport compression from \"compression\";\nimport express from \"express\";\nimport morgan from \"morgan\";\nimport sourceMapSupport from \"source-map-support\";\nimport getPort from \"get-port\";\n\nfunction parseNumber(raw?: string) {\n if (raw === undefined) return undefined;\n let maybe = Number(raw);\n if (Number.isNaN(maybe)) return undefined;\n return maybe;\n}\n\nexport async function serve() {\n process.env.NODE_ENV = process.env.NODE_ENV ?? \"production\";\n\n sourceMapSupport.install({\n retrieveSourceMap: function (source) {\n let match = source.startsWith(\"file://\");\n if (match) {\n let filePath = url.fileURLToPath(source);\n let sourceMapPath = `${filePath}.map`;\n if (fs.existsSync(sourceMapPath)) {\n return {\n url: source,\n map: fs.readFileSync(sourceMapPath, \"utf8\"),\n };\n }\n }\n return null;\n },\n });\n\n let port = parseNumber(process.env.PORT) ?? (await getPort({port: 3000}));\n\n let buildPathArg = path.join(process.cwd(), \".xyd/build/server/index.js\")\n\n if (!buildPathArg) {\n console.error(`\n Usage: react-router-serve <server-build-path> - e.g. react-router-serve build/server/index.js`);\n process.exit(1);\n }\n\n let buildPath = path.resolve(buildPathArg);\n\n let build: ServerBuild = await import(url.pathToFileURL(buildPath).href);\n\n let onListen = () => {\n let address =\n process.env.HOST ||\n Object.values(os.networkInterfaces())\n .flat()\n .find((ip) => String(ip?.family).includes(\"4\") && !ip?.internal)\n ?.address;\n\n if (!address) {\n console.log(`[xyd-serve] http://localhost:${port}`);\n } else {\n console.log(\n `[xyd-serve] http://localhost:${port} (http://${address}:${port})`\n );\n }\n };\n\n build = {\n ...build,\n assetsBuildDirectory: path.join(process.cwd(), \".xyd/build/client\")\n }\n\n let app = express();\n app.disable(\"x-powered-by\");\n app.use(compression());\n app.use(\n path.posix.join(build.publicPath, \"assets\"),\n express.static(path.join(build.assetsBuildDirectory, \"assets\"), {\n immutable: true,\n maxAge: \"1y\",\n })\n );\n app.use(build.publicPath, express.static(build.assetsBuildDirectory));\n app.use(express.static(\"public\", {maxAge: \"1h\"}));\n app.use(morgan(\"tiny\"));\n\n app.all(\n \"*\",\n createRequestHandler({\n build,\n mode: process.env.NODE_ENV,\n })\n );\n\n let server = process.env.HOST\n ? app.listen(port, process.env.HOST, onListen)\n : app.listen(port, onListen);\n\n [\"SIGTERM\", \"SIGINT\"].forEach((signal) => {\n process.once(signal, () => server?.close(console.error));\n });\n}\n","import {build} from \"../\"\n\n// Execute the build function\nawait build();"],"mappings":"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","names":["path","fileURLToPath","reactRouter","xydContentVitePlugins","pluginZero","__filename","__dirname","fs","path"]}
|
package/dist/dev.js
CHANGED
|
@@ -5,7 +5,7 @@ import { fileURLToPath } from "node:url";
|
|
|
5
5
|
import { build as viteBuild } from "vite";
|
|
6
6
|
import tsconfigPaths from "vite-tsconfig-paths";
|
|
7
7
|
import { reactRouter } from "@xyd-js/react-router-dev/vite";
|
|
8
|
-
import { vitePlugins as xydContentVitePlugins } from "@xyd-js/content";
|
|
8
|
+
import { vitePlugins as xydContentVitePlugins } from "@xyd-js/content/vite";
|
|
9
9
|
import { pluginZero } from "@xyd-js/plugin-zero";
|
|
10
10
|
var __filename = fileURLToPath(import.meta.url);
|
|
11
11
|
var __dirname = path.dirname(__filename);
|
|
@@ -15,23 +15,19 @@ import path2 from "node:path";
|
|
|
15
15
|
import { fileURLToPath as fileURLToPath2 } from "node:url";
|
|
16
16
|
import { createServer, searchForWorkspaceRoot } from "vite";
|
|
17
17
|
import { reactRouter as reactRouter2 } from "@xyd-js/react-router-dev/vite";
|
|
18
|
-
import { vitePlugins as xydContentVitePlugins2 } from "@xyd-js/content";
|
|
18
|
+
import { vitePlugins as xydContentVitePlugins2 } from "@xyd-js/content/vite";
|
|
19
19
|
import { pluginZero as pluginZero2 } from "@xyd-js/plugin-zero";
|
|
20
20
|
var __filename2 = fileURLToPath2(import.meta.url);
|
|
21
21
|
var __dirname2 = path2.dirname(__filename2);
|
|
22
22
|
var port = process.env.XYD_PORT ? parseInt(process.env.XYD_PORT) : 5175;
|
|
23
23
|
async function dev() {
|
|
24
|
-
const
|
|
25
|
-
if (!
|
|
24
|
+
const respPluginZero = await pluginZero2();
|
|
25
|
+
if (!respPluginZero) {
|
|
26
26
|
throw new Error("PluginZero not found");
|
|
27
27
|
}
|
|
28
28
|
const allowCwd = searchForWorkspaceRoot(process.cwd());
|
|
29
29
|
const preview = await createServer({
|
|
30
|
-
|
|
31
|
-
// configFile: path.join(__dirname, "../src/vite/empty-config.ts"), // TODO: bundler??
|
|
32
|
-
// configFile: path.join(__dirname, "../"), // TODO: bundler??
|
|
33
|
-
// root: path.join(__dirname, "../"), // TODO: bundler?
|
|
34
|
-
root: process.env.XYD_DOCUMAN_HOST || path2.join(__dirname2, "../host"),
|
|
30
|
+
root: process.env.XYD_CLI ? __dirname2 : process.env.XYD_DOCUMAN_HOST || path2.join(__dirname2, "../host"),
|
|
35
31
|
// TODO: bundler?
|
|
36
32
|
server: {
|
|
37
33
|
port,
|
|
@@ -51,16 +47,10 @@ async function dev() {
|
|
|
51
47
|
},
|
|
52
48
|
ssr: {
|
|
53
49
|
external: ["@xyd-js/uniform", "@xyd-js/uniform/content", "@xyd-js/plugin-zero"]
|
|
54
|
-
// noExternal: [
|
|
55
|
-
// "@xyd-js/uniform",
|
|
56
|
-
// "@xyd-js/uniform/content",
|
|
57
|
-
// "@xyd-js/plugin-zero"
|
|
58
|
-
// ],
|
|
59
50
|
},
|
|
60
51
|
optimizeDeps: {
|
|
61
52
|
include: ["react/jsx-runtime"]
|
|
62
53
|
},
|
|
63
|
-
// @ts-ignore
|
|
64
54
|
plugins: [
|
|
65
55
|
// TODO: fix plugin ts
|
|
66
56
|
...xydContentVitePlugins2({
|
|
@@ -69,9 +59,9 @@ async function dev() {
|
|
|
69
59
|
}
|
|
70
60
|
}),
|
|
71
61
|
reactRouter2({
|
|
72
|
-
routes:
|
|
62
|
+
routes: respPluginZero.routes
|
|
73
63
|
}),
|
|
74
|
-
...
|
|
64
|
+
...respPluginZero.vitePlugins
|
|
75
65
|
]
|
|
76
66
|
});
|
|
77
67
|
await preview.listen(port);
|
package/dist/dev.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../src/run/build.ts","../src/run/dev.ts","../src/run/serve.ts","../src/commands/dev.ts"],"sourcesContent":["import path from \"node:path\";\nimport fs from \"node:fs\";\nimport {fileURLToPath} from \"node:url\";\n\nimport {build as viteBuild} from 'vite';\nimport tsconfigPaths from \"vite-tsconfig-paths\";\n\nimport {reactRouter} from \"@xyd-js/react-router-dev/vite\";\n// import { reactRouter } from \"@react-router/dev/vite\";\n\nimport {vitePlugins as xydContentVitePlugins} from \"@xyd-js/content\"\nimport {pluginZero} from \"@xyd-js/plugin-zero\";\n\nconst __filename = fileURLToPath(import.meta.url);\nconst __dirname = path.dirname(__filename);\n\n// Define the main function to run the builds\nexport async function build() {\n const resp = await pluginZero()\n if (!resp) {\n throw new Error(\"PluginZero not found\")\n }\n\n const buildDir = path.join(process.cwd(), \".xyd/build\");\n\n {\n const packageJsonPath = path.join(buildDir, 'package.json');\n\n const packageJsonContent = {\n type: \"module\",\n scripts: {},\n dependencies: {},\n devDependencies: {}\n };\n\n // Ensure the build directory exists\n if (!fs.existsSync(buildDir)) {\n fs.mkdirSync(buildDir, {recursive: true});\n }\n\n // Write the package.json file\n fs.writeFileSync(packageJsonPath, JSON.stringify(packageJsonContent, null, 2), 'utf8');\n }\n\n try {\n // Build the client-side bundle\n await viteBuild({\n root: path.join(__dirname, \"../host\"),\n // @ts-ignore\n plugins: [\n ...(xydContentVitePlugins({\n toc: {\n minDepth: 2,\n }\n }) as Plugin[]),\n reactRouter({\n outDir: buildDir,\n routes: resp.routes\n }),\n tsconfigPaths(),\n ...resp.vitePlugins\n ],\n optimizeDeps: {\n include: [\"react/jsx-runtime\"],\n },\n });\n\n // Build the SSR bundle\n await viteBuild({\n root: path.join(__dirname, \"../host\"),\n build: {\n ssr: true,\n },\n // @ts-ignore\n plugins: [\n ...(xydContentVitePlugins({\n toc: {\n minDepth: 2,\n }\n }) as Plugin[]),\n reactRouter({\n outDir: buildDir,\n routes: resp.routes\n }),\n tsconfigPaths(),\n ...resp.vitePlugins\n ],\n optimizeDeps: {\n include: [\"react/jsx-runtime\"],\n },\n });\n\n console.log('Build completed successfully.'); // TODO: better message\n } catch (error) {\n console.error('Build failed:', error); // TODO: better message\n }\n}\n\n","import path from \"node:path\";\nimport {fileURLToPath} from \"node:url\";\nimport {createServer, searchForWorkspaceRoot} from \"vite\";\n\nimport {reactRouter} from \"@xyd-js/react-router-dev/vite\";\n// import { reactRouter } from \"@react-router/dev/vite\";\n\nimport {vitePlugins as xydContentVitePlugins} from \"@xyd-js/content\";\nimport {pluginZero} from \"@xyd-js/plugin-zero\";\n\nconst __filename = fileURLToPath(import.meta.url);\nconst __dirname = path.dirname(__filename);\n\nconst port = process.env.XYD_PORT ? parseInt(process.env.XYD_PORT) : 5175;\n\nexport async function dev() {\n const resp = await pluginZero()\n if (!resp) {\n throw new Error(\"PluginZero not found\")\n }\n\n const allowCwd = searchForWorkspaceRoot(process.cwd())\n\n const preview = await createServer({\n // any valid user config options, plus `mode` and `configFile`\n // configFile: path.join(__dirname, \"../src/vite/empty-config.ts\"), // TODO: bundler??\n // configFile: path.join(__dirname, \"../\"), // TODO: bundler??\n // root: path.join(__dirname, \"../\"), // TODO: bundler?\n root: process.env.XYD_DOCUMAN_HOST || path.join(__dirname, \"../host\"), // TODO: bundler?\n server: {\n port: port,\n fs: {\n allow: [\n allowCwd,\n process.env.XYD_CLI ? path.join(__dirname, \"../../\") : \"\",\n // path.join(__dirname, \"../node_modules\") // Ensure node_modules from xyd-documan is included\n ]\n }\n },\n build: {\n rollupOptions: {\n // Exclude package `B` from the client-side bundle\n external: [\"@xyd-js/uniform\", \"@xyd-js/uniform/content\", \"@xyd-js/plugin-zero\"],\n },\n },\n ssr: {\n external: [\"@xyd-js/uniform\", \"@xyd-js/uniform/content\", \"@xyd-js/plugin-zero\"],\n // noExternal: [\n // \"@xyd-js/uniform\",\n // \"@xyd-js/uniform/content\",\n // \"@xyd-js/plugin-zero\"\n // ],\n },\n optimizeDeps: {\n include: [\"react/jsx-runtime\"],\n },\n // @ts-ignore\n plugins: [ // TODO: fix plugin ts\n ...(xydContentVitePlugins({\n toc: {\n minDepth: 2,\n }\n }) as Plugin[]),\n reactRouter({\n routes: resp.routes\n }),\n ...resp.vitePlugins\n ],\n });\n\n await preview.listen(port);\n\n preview.printUrls();\n preview.bindCLIShortcuts({print: true});\n\n}","import fs from \"node:fs\";\nimport os from \"node:os\";\nimport path from \"node:path\";\nimport url from \"node:url\";\n\nimport type {ServerBuild} from \"react-router\";\nimport {createRequestHandler} from \"@react-router/express\";\nimport compression from \"compression\";\nimport express from \"express\";\nimport morgan from \"morgan\";\nimport sourceMapSupport from \"source-map-support\";\nimport getPort from \"get-port\";\n\nfunction parseNumber(raw?: string) {\n if (raw === undefined) return undefined;\n let maybe = Number(raw);\n if (Number.isNaN(maybe)) return undefined;\n return maybe;\n}\n\nexport async function serve() {\n process.env.NODE_ENV = process.env.NODE_ENV ?? \"production\";\n\n sourceMapSupport.install({\n retrieveSourceMap: function (source) {\n let match = source.startsWith(\"file://\");\n if (match) {\n let filePath = url.fileURLToPath(source);\n let sourceMapPath = `${filePath}.map`;\n if (fs.existsSync(sourceMapPath)) {\n return {\n url: source,\n map: fs.readFileSync(sourceMapPath, \"utf8\"),\n };\n }\n }\n return null;\n },\n });\n\n let port = parseNumber(process.env.PORT) ?? (await getPort({port: 3000}));\n\n let buildPathArg = path.join(process.cwd(), \".xyd/build/server/index.js\")\n\n if (!buildPathArg) {\n console.error(`\n Usage: react-router-serve <server-build-path> - e.g. react-router-serve build/server/index.js`);\n process.exit(1);\n }\n\n let buildPath = path.resolve(buildPathArg);\n\n let build: ServerBuild = await import(url.pathToFileURL(buildPath).href);\n\n let onListen = () => {\n let address =\n process.env.HOST ||\n Object.values(os.networkInterfaces())\n .flat()\n .find((ip) => String(ip?.family).includes(\"4\") && !ip?.internal)\n ?.address;\n\n if (!address) {\n console.log(`[xyd-serve] http://localhost:${port}`);\n } else {\n console.log(\n `[xyd-serve] http://localhost:${port} (http://${address}:${port})`\n );\n }\n };\n\n build = {\n ...build,\n assetsBuildDirectory: path.join(process.cwd(), \".xyd/build/client\")\n }\n\n let app = express();\n app.disable(\"x-powered-by\");\n app.use(compression());\n app.use(\n path.posix.join(build.publicPath, \"assets\"),\n express.static(path.join(build.assetsBuildDirectory, \"assets\"), {\n immutable: true,\n maxAge: \"1y\",\n })\n );\n app.use(build.publicPath, express.static(build.assetsBuildDirectory));\n app.use(express.static(\"public\", {maxAge: \"1h\"}));\n app.use(morgan(\"tiny\"));\n\n app.all(\n \"*\",\n createRequestHandler({\n build,\n mode: process.env.NODE_ENV,\n })\n );\n\n let server = process.env.HOST\n ? app.listen(port, process.env.HOST, onListen)\n : app.listen(port, onListen);\n\n [\"SIGTERM\", \"SIGINT\"].forEach((signal) => {\n process.once(signal, () => server?.close(console.error));\n });\n}\n","import {dev} from \"../\"\n\n// Execute the dev function\nawait dev();\n\n"],"mappings":";AAAA,OAAO,UAAU;AACjB,OAAO,QAAQ;AACf,SAAQ,qBAAoB;AAE5B,SAAQ,SAAS,iBAAgB;AACjC,OAAO,mBAAmB;AAE1B,SAAQ,mBAAkB;AAG1B,SAAQ,eAAe,6BAA4B;AACnD,SAAQ,kBAAiB;AAEzB,IAAM,aAAa,cAAc,YAAY,GAAG;AAChD,IAAM,YAAY,KAAK,QAAQ,UAAU;;;ACdzC,OAAOA,WAAU;AACjB,SAAQ,iBAAAC,sBAAoB;AAC5B,SAAQ,cAAc,8BAA6B;AAEnD,SAAQ,eAAAC,oBAAkB;AAG1B,SAAQ,eAAeC,8BAA4B;AACnD,SAAQ,cAAAC,mBAAiB;AAEzB,IAAMC,cAAaJ,eAAc,YAAY,GAAG;AAChD,IAAMK,aAAYN,MAAK,QAAQK,WAAU;AAEzC,IAAM,OAAO,QAAQ,IAAI,WAAW,SAAS,QAAQ,IAAI,QAAQ,IAAI;AAErE,eAAsB,MAAM;AACxB,QAAM,OAAO,MAAMD,YAAW;AAC9B,MAAI,CAAC,MAAM;AACP,UAAM,IAAI,MAAM,sBAAsB;AAAA,EAC1C;AAEA,QAAM,WAAW,uBAAuB,QAAQ,IAAI,CAAC;AAErD,QAAM,UAAU,MAAM,aAAa;AAAA;AAAA;AAAA;AAAA;AAAA,IAK/B,MAAM,QAAQ,IAAI,oBAAoBJ,MAAK,KAAKM,YAAW,SAAS;AAAA;AAAA,IACpE,QAAQ;AAAA,MACJ;AAAA,MACA,IAAI;AAAA,QACA,OAAO;AAAA,UACH;AAAA,UACA,QAAQ,IAAI,UAAUN,MAAK,KAAKM,YAAW,QAAQ,IAAI;AAAA;AAAA,QAE3D;AAAA,MACJ;AAAA,IACJ;AAAA,IACA,OAAO;AAAA,MACH,eAAe;AAAA;AAAA,QAEX,UAAU,CAAC,mBAAmB,2BAA2B,qBAAqB;AAAA,MAClF;AAAA,IACJ;AAAA,IACA,KAAK;AAAA,MACD,UAAU,CAAC,mBAAmB,2BAA2B,qBAAqB;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,IAMlF;AAAA,IACA,cAAc;AAAA,MACV,SAAS,CAAC,mBAAmB;AAAA,IACjC;AAAA;AAAA,IAEA,SAAS;AAAA;AAAA,MACL,GAAIH,uBAAsB;AAAA,QACtB,KAAK;AAAA,UACD,UAAU;AAAA,QACd;AAAA,MACJ,CAAC;AAAA,MACDD,aAAY;AAAA,QACR,QAAQ,KAAK;AAAA,MACjB,CAAC;AAAA,MACD,GAAG,KAAK;AAAA,IACZ;AAAA,EACJ,CAAC;AAED,QAAM,QAAQ,OAAO,IAAI;AAEzB,UAAQ,UAAU;AAClB,UAAQ,iBAAiB,EAAC,OAAO,KAAI,CAAC;AAE1C;;;AC3EA,OAAOK,SAAQ;AACf,OAAO,QAAQ;AACf,OAAOC,WAAU;AACjB,OAAO,SAAS;AAGhB,SAAQ,4BAA2B;AACnC,OAAO,iBAAiB;AACxB,OAAO,aAAa;AACpB,OAAO,YAAY;AACnB,OAAO,sBAAsB;AAC7B,OAAO,aAAa;;;ACRpB,MAAM,IAAI;","names":["path","fileURLToPath","reactRouter","xydContentVitePlugins","pluginZero","__filename","__dirname","fs","path"]}
|
|
1
|
+
{"version":3,"sources":["../src/run/build.ts","../src/run/dev.ts","../src/run/serve.ts","../src/commands/dev.ts"],"sourcesContent":["import path from \"node:path\";\nimport fs from \"node:fs\";\nimport {fileURLToPath} from \"node:url\";\nimport {execSync} from 'child_process';\n\nimport {build as viteBuild} from 'vite';\nimport tsconfigPaths from \"vite-tsconfig-paths\";\n\nimport {reactRouter} from \"@xyd-js/react-router-dev/vite\";\n\nimport {vitePlugins as xydContentVitePlugins} from \"@xyd-js/content/vite\"\nimport {pluginZero} from \"@xyd-js/plugin-zero\";\n\nconst __filename = fileURLToPath(import.meta.url);\nconst __dirname = path.dirname(__filename);\n\n// Define the main function to run the builds\nexport async function build() {\n const resp = await pluginZero()\n if (!resp) {\n throw new Error(\"PluginZero not found\")\n }\n\n const buildDir = path.join(process.cwd(), \".xyd/build\");\n\n {\n // TODO: probably we should have better mechanism - maybe bundle?\n\n const packageJsonPath = path.join(buildDir, 'package.json');\n\n const packageJsonContent = {\n type: \"module\",\n scripts: {},\n dependencies: { // TODO: better\n \"@xyd-js/content\": \"latest\",\n \"@xyd-js/components\": \"latest\",\n \"@xyd-js/framework\": \"latest\",\n \"@xyd-js/theme-poetry\": \"latest\",\n\n\n \"@react-router/node\": \"7.1.1\",\n \"isbot\": \"^5\"\n },\n devDependencies: {}\n };\n\n if (process.env.XYD_DEV_MODE) {\n packageJsonContent.dependencies = {\n ...packageJsonContent.dependencies,\n \"@xyd-js/content\": \"workspace:*\",\n \"@xyd-js/components\": \"workspace:*\",\n \"@xyd-js/framework\": \"workspace:*\",\n \"@xyd-js/theme-poetry\": \"workspace:*\",\n }\n }\n\n // Ensure the build directory exists\n if (!fs.existsSync(buildDir)) {\n fs.mkdirSync(buildDir, {recursive: true});\n }\n\n // Write the package.json file\n fs.writeFileSync(packageJsonPath, JSON.stringify(packageJsonContent, null, 2), 'utf8');\n\n // Install packages inside buildDir\n if (process.env.XYD_DEV_MODE) {\n execSync('pnpm i', {cwd: buildDir, stdio: 'inherit'});\n } else {\n execSync('npm install', {cwd: buildDir, stdio: 'inherit'});\n }\n }\n\n try {\n // Build the client-side bundle\n await viteBuild({\n root: process.env.XYD_CLI ? __dirname : process.env.XYD_DOCUMAN_HOST || path.join(__dirname, \"../host\"),\n plugins: [\n ...(xydContentVitePlugins({\n toc: {\n minDepth: 2,\n }\n }) as Plugin[]),\n reactRouter({\n outDir: buildDir,\n routes: resp.routes\n }),\n tsconfigPaths(),\n ...resp.vitePlugins\n ],\n optimizeDeps: {\n include: [\"react/jsx-runtime\"],\n },\n });\n\n // Build the SSR bundle\n await viteBuild({\n root: process.env.XYD_CLI ? __dirname : process.env.XYD_DOCUMAN_HOST || path.join(__dirname, \"../host\"),\n build: {\n ssr: true,\n },\n plugins: [\n ...(xydContentVitePlugins({\n toc: {\n minDepth: 2,\n }\n }) as Plugin[]),\n reactRouter({\n outDir: buildDir,\n routes: resp.routes\n }),\n tsconfigPaths(),\n ...resp.vitePlugins\n ],\n optimizeDeps: {\n include: [\"react/jsx-runtime\"],\n },\n });\n\n console.log('Build completed successfully.'); // TODO: better message\n } catch (error) {\n console.error('Build failed:', error); // TODO: better message\n }\n}\n\n","import path from \"node:path\";\nimport {fileURLToPath} from \"node:url\";\nimport {createServer, searchForWorkspaceRoot} from \"vite\";\n\nimport {reactRouter} from \"@xyd-js/react-router-dev/vite\";\n\nimport {vitePlugins as xydContentVitePlugins} from \"@xyd-js/content/vite\";\nimport {pluginZero} from \"@xyd-js/plugin-zero\";\n\nconst __filename = fileURLToPath(import.meta.url);\nconst __dirname = path.dirname(__filename);\n\nconst port = process.env.XYD_PORT ? parseInt(process.env.XYD_PORT) : 5175;\n\nexport async function dev() {\n const respPluginZero = await pluginZero()\n if (!respPluginZero) {\n throw new Error(\"PluginZero not found\")\n }\n\n const allowCwd = searchForWorkspaceRoot(process.cwd())\n\n const preview = await createServer({\n root: process.env.XYD_CLI ? __dirname : process.env.XYD_DOCUMAN_HOST || path.join(__dirname, \"../host\"), // TODO: bundler?\n server: {\n port: port,\n fs: {\n allow: [\n allowCwd,\n process.env.XYD_CLI ? path.join(__dirname, \"../../\") : \"\",\n // path.join(__dirname, \"../node_modules\") // Ensure node_modules from xyd-documan is included\n ]\n }\n },\n build: {\n rollupOptions: {\n // Exclude package `B` from the client-side bundle\n external: [\"@xyd-js/uniform\", \"@xyd-js/uniform/content\", \"@xyd-js/plugin-zero\"],\n },\n },\n ssr: {\n external: [\"@xyd-js/uniform\", \"@xyd-js/uniform/content\", \"@xyd-js/plugin-zero\"],\n },\n optimizeDeps: {\n include: [\"react/jsx-runtime\"],\n },\n plugins: [ // TODO: fix plugin ts\n ...(xydContentVitePlugins({\n toc: {\n minDepth: 2,\n }\n }) as Plugin[]),\n reactRouter({\n routes: respPluginZero.routes\n }),\n ...respPluginZero.vitePlugins\n ],\n });\n\n await preview.listen(port);\n\n preview.printUrls();\n preview.bindCLIShortcuts({print: true});\n\n}","import fs from \"node:fs\";\nimport os from \"node:os\";\nimport path from \"node:path\";\nimport url from \"node:url\";\n\nimport type {ServerBuild} from \"react-router\";\nimport {createRequestHandler} from \"@react-router/express\";\nimport compression from \"compression\";\nimport express from \"express\";\nimport morgan from \"morgan\";\nimport sourceMapSupport from \"source-map-support\";\nimport getPort from \"get-port\";\n\nfunction parseNumber(raw?: string) {\n if (raw === undefined) return undefined;\n let maybe = Number(raw);\n if (Number.isNaN(maybe)) return undefined;\n return maybe;\n}\n\nexport async function serve() {\n process.env.NODE_ENV = process.env.NODE_ENV ?? \"production\";\n\n sourceMapSupport.install({\n retrieveSourceMap: function (source) {\n let match = source.startsWith(\"file://\");\n if (match) {\n let filePath = url.fileURLToPath(source);\n let sourceMapPath = `${filePath}.map`;\n if (fs.existsSync(sourceMapPath)) {\n return {\n url: source,\n map: fs.readFileSync(sourceMapPath, \"utf8\"),\n };\n }\n }\n return null;\n },\n });\n\n let port = parseNumber(process.env.PORT) ?? (await getPort({port: 3000}));\n\n let buildPathArg = path.join(process.cwd(), \".xyd/build/server/index.js\")\n\n if (!buildPathArg) {\n console.error(`\n Usage: react-router-serve <server-build-path> - e.g. react-router-serve build/server/index.js`);\n process.exit(1);\n }\n\n let buildPath = path.resolve(buildPathArg);\n\n let build: ServerBuild = await import(url.pathToFileURL(buildPath).href);\n\n let onListen = () => {\n let address =\n process.env.HOST ||\n Object.values(os.networkInterfaces())\n .flat()\n .find((ip) => String(ip?.family).includes(\"4\") && !ip?.internal)\n ?.address;\n\n if (!address) {\n console.log(`[xyd-serve] http://localhost:${port}`);\n } else {\n console.log(\n `[xyd-serve] http://localhost:${port} (http://${address}:${port})`\n );\n }\n };\n\n build = {\n ...build,\n assetsBuildDirectory: path.join(process.cwd(), \".xyd/build/client\")\n }\n\n let app = express();\n app.disable(\"x-powered-by\");\n app.use(compression());\n app.use(\n path.posix.join(build.publicPath, \"assets\"),\n express.static(path.join(build.assetsBuildDirectory, \"assets\"), {\n immutable: true,\n maxAge: \"1y\",\n })\n );\n app.use(build.publicPath, express.static(build.assetsBuildDirectory));\n app.use(express.static(\"public\", {maxAge: \"1h\"}));\n app.use(morgan(\"tiny\"));\n\n app.all(\n \"*\",\n createRequestHandler({\n build,\n mode: process.env.NODE_ENV,\n })\n );\n\n let server = process.env.HOST\n ? app.listen(port, process.env.HOST, onListen)\n : app.listen(port, onListen);\n\n [\"SIGTERM\", \"SIGINT\"].forEach((signal) => {\n process.once(signal, () => server?.close(console.error));\n });\n}\n","import {dev} from \"../\"\n\n// Execute the dev function\nawait dev();\n\n"],"mappings":";AAAA,OAAO,UAAU;AACjB,OAAO,QAAQ;AACf,SAAQ,qBAAoB;AAG5B,SAAQ,SAAS,iBAAgB;AACjC,OAAO,mBAAmB;AAE1B,SAAQ,mBAAkB;AAE1B,SAAQ,eAAe,6BAA4B;AACnD,SAAQ,kBAAiB;AAEzB,IAAM,aAAa,cAAc,YAAY,GAAG;AAChD,IAAM,YAAY,KAAK,QAAQ,UAAU;;;ACdzC,OAAOA,WAAU;AACjB,SAAQ,iBAAAC,sBAAoB;AAC5B,SAAQ,cAAc,8BAA6B;AAEnD,SAAQ,eAAAC,oBAAkB;AAE1B,SAAQ,eAAeC,8BAA4B;AACnD,SAAQ,cAAAC,mBAAiB;AAEzB,IAAMC,cAAaJ,eAAc,YAAY,GAAG;AAChD,IAAMK,aAAYN,MAAK,QAAQK,WAAU;AAEzC,IAAM,OAAO,QAAQ,IAAI,WAAW,SAAS,QAAQ,IAAI,QAAQ,IAAI;AAErE,eAAsB,MAAM;AACxB,QAAM,iBAAiB,MAAMD,YAAW;AACxC,MAAI,CAAC,gBAAgB;AACjB,UAAM,IAAI,MAAM,sBAAsB;AAAA,EAC1C;AAEA,QAAM,WAAW,uBAAuB,QAAQ,IAAI,CAAC;AAErD,QAAM,UAAU,MAAM,aAAa;AAAA,IAC/B,MAAM,QAAQ,IAAI,UAAUE,aAAY,QAAQ,IAAI,oBAAoBN,MAAK,KAAKM,YAAW,SAAS;AAAA;AAAA,IACtG,QAAQ;AAAA,MACJ;AAAA,MACA,IAAI;AAAA,QACA,OAAO;AAAA,UACH;AAAA,UACA,QAAQ,IAAI,UAAUN,MAAK,KAAKM,YAAW,QAAQ,IAAI;AAAA;AAAA,QAE3D;AAAA,MACJ;AAAA,IACJ;AAAA,IACA,OAAO;AAAA,MACH,eAAe;AAAA;AAAA,QAEX,UAAU,CAAC,mBAAmB,2BAA2B,qBAAqB;AAAA,MAClF;AAAA,IACJ;AAAA,IACA,KAAK;AAAA,MACD,UAAU,CAAC,mBAAmB,2BAA2B,qBAAqB;AAAA,IAClF;AAAA,IACA,cAAc;AAAA,MACV,SAAS,CAAC,mBAAmB;AAAA,IACjC;AAAA,IACA,SAAS;AAAA;AAAA,MACL,GAAIH,uBAAsB;AAAA,QACtB,KAAK;AAAA,UACD,UAAU;AAAA,QACd;AAAA,MACJ,CAAC;AAAA,MACDD,aAAY;AAAA,QACR,QAAQ,eAAe;AAAA,MAC3B,CAAC;AAAA,MACD,GAAG,eAAe;AAAA,IACtB;AAAA,EACJ,CAAC;AAED,QAAM,QAAQ,OAAO,IAAI;AAEzB,UAAQ,UAAU;AAClB,UAAQ,iBAAiB,EAAC,OAAO,KAAI,CAAC;AAE1C;;;AChEA,OAAOK,SAAQ;AACf,OAAO,QAAQ;AACf,OAAOC,WAAU;AACjB,OAAO,SAAS;AAGhB,SAAQ,4BAA2B;AACnC,OAAO,iBAAiB;AACxB,OAAO,aAAa;AACpB,OAAO,YAAY;AACnB,OAAO,sBAAsB;AAC7B,OAAO,aAAa;;;ACRpB,MAAM,IAAI;","names":["path","fileURLToPath","reactRouter","xydContentVitePlugins","pluginZero","__filename","__dirname","fs","path"]}
|
package/dist/index.js
CHANGED
|
@@ -2,10 +2,11 @@
|
|
|
2
2
|
import path from "node:path";
|
|
3
3
|
import fs from "node:fs";
|
|
4
4
|
import { fileURLToPath } from "node:url";
|
|
5
|
+
import { execSync } from "child_process";
|
|
5
6
|
import { build as viteBuild } from "vite";
|
|
6
7
|
import tsconfigPaths from "vite-tsconfig-paths";
|
|
7
8
|
import { reactRouter } from "@xyd-js/react-router-dev/vite";
|
|
8
|
-
import { vitePlugins as xydContentVitePlugins } from "@xyd-js/content";
|
|
9
|
+
import { vitePlugins as xydContentVitePlugins } from "@xyd-js/content/vite";
|
|
9
10
|
import { pluginZero } from "@xyd-js/plugin-zero";
|
|
10
11
|
var __filename = fileURLToPath(import.meta.url);
|
|
11
12
|
var __dirname = path.dirname(__filename);
|
|
@@ -20,18 +21,39 @@ async function build() {
|
|
|
20
21
|
const packageJsonContent = {
|
|
21
22
|
type: "module",
|
|
22
23
|
scripts: {},
|
|
23
|
-
dependencies: {
|
|
24
|
+
dependencies: {
|
|
25
|
+
// TODO: better
|
|
26
|
+
"@xyd-js/content": "latest",
|
|
27
|
+
"@xyd-js/components": "latest",
|
|
28
|
+
"@xyd-js/framework": "latest",
|
|
29
|
+
"@xyd-js/theme-poetry": "latest",
|
|
30
|
+
"@react-router/node": "7.1.1",
|
|
31
|
+
"isbot": "^5"
|
|
32
|
+
},
|
|
24
33
|
devDependencies: {}
|
|
25
34
|
};
|
|
35
|
+
if (process.env.XYD_DEV_MODE) {
|
|
36
|
+
packageJsonContent.dependencies = {
|
|
37
|
+
...packageJsonContent.dependencies,
|
|
38
|
+
"@xyd-js/content": "workspace:*",
|
|
39
|
+
"@xyd-js/components": "workspace:*",
|
|
40
|
+
"@xyd-js/framework": "workspace:*",
|
|
41
|
+
"@xyd-js/theme-poetry": "workspace:*"
|
|
42
|
+
};
|
|
43
|
+
}
|
|
26
44
|
if (!fs.existsSync(buildDir)) {
|
|
27
45
|
fs.mkdirSync(buildDir, { recursive: true });
|
|
28
46
|
}
|
|
29
47
|
fs.writeFileSync(packageJsonPath, JSON.stringify(packageJsonContent, null, 2), "utf8");
|
|
48
|
+
if (process.env.XYD_DEV_MODE) {
|
|
49
|
+
execSync("pnpm i", { cwd: buildDir, stdio: "inherit" });
|
|
50
|
+
} else {
|
|
51
|
+
execSync("npm install", { cwd: buildDir, stdio: "inherit" });
|
|
52
|
+
}
|
|
30
53
|
}
|
|
31
54
|
try {
|
|
32
55
|
await viteBuild({
|
|
33
|
-
root: path.join(__dirname, "../host"),
|
|
34
|
-
// @ts-ignore
|
|
56
|
+
root: process.env.XYD_CLI ? __dirname : process.env.XYD_DOCUMAN_HOST || path.join(__dirname, "../host"),
|
|
35
57
|
plugins: [
|
|
36
58
|
...xydContentVitePlugins({
|
|
37
59
|
toc: {
|
|
@@ -50,11 +72,10 @@ async function build() {
|
|
|
50
72
|
}
|
|
51
73
|
});
|
|
52
74
|
await viteBuild({
|
|
53
|
-
root: path.join(__dirname, "../host"),
|
|
75
|
+
root: process.env.XYD_CLI ? __dirname : process.env.XYD_DOCUMAN_HOST || path.join(__dirname, "../host"),
|
|
54
76
|
build: {
|
|
55
77
|
ssr: true
|
|
56
78
|
},
|
|
57
|
-
// @ts-ignore
|
|
58
79
|
plugins: [
|
|
59
80
|
...xydContentVitePlugins({
|
|
60
81
|
toc: {
|
|
@@ -83,23 +104,19 @@ import path2 from "node:path";
|
|
|
83
104
|
import { fileURLToPath as fileURLToPath2 } from "node:url";
|
|
84
105
|
import { createServer, searchForWorkspaceRoot } from "vite";
|
|
85
106
|
import { reactRouter as reactRouter2 } from "@xyd-js/react-router-dev/vite";
|
|
86
|
-
import { vitePlugins as xydContentVitePlugins2 } from "@xyd-js/content";
|
|
107
|
+
import { vitePlugins as xydContentVitePlugins2 } from "@xyd-js/content/vite";
|
|
87
108
|
import { pluginZero as pluginZero2 } from "@xyd-js/plugin-zero";
|
|
88
109
|
var __filename2 = fileURLToPath2(import.meta.url);
|
|
89
110
|
var __dirname2 = path2.dirname(__filename2);
|
|
90
111
|
var port = process.env.XYD_PORT ? parseInt(process.env.XYD_PORT) : 5175;
|
|
91
112
|
async function dev() {
|
|
92
|
-
const
|
|
93
|
-
if (!
|
|
113
|
+
const respPluginZero = await pluginZero2();
|
|
114
|
+
if (!respPluginZero) {
|
|
94
115
|
throw new Error("PluginZero not found");
|
|
95
116
|
}
|
|
96
117
|
const allowCwd = searchForWorkspaceRoot(process.cwd());
|
|
97
118
|
const preview = await createServer({
|
|
98
|
-
|
|
99
|
-
// configFile: path.join(__dirname, "../src/vite/empty-config.ts"), // TODO: bundler??
|
|
100
|
-
// configFile: path.join(__dirname, "../"), // TODO: bundler??
|
|
101
|
-
// root: path.join(__dirname, "../"), // TODO: bundler?
|
|
102
|
-
root: process.env.XYD_DOCUMAN_HOST || path2.join(__dirname2, "../host"),
|
|
119
|
+
root: process.env.XYD_CLI ? __dirname2 : process.env.XYD_DOCUMAN_HOST || path2.join(__dirname2, "../host"),
|
|
103
120
|
// TODO: bundler?
|
|
104
121
|
server: {
|
|
105
122
|
port,
|
|
@@ -119,16 +136,10 @@ async function dev() {
|
|
|
119
136
|
},
|
|
120
137
|
ssr: {
|
|
121
138
|
external: ["@xyd-js/uniform", "@xyd-js/uniform/content", "@xyd-js/plugin-zero"]
|
|
122
|
-
// noExternal: [
|
|
123
|
-
// "@xyd-js/uniform",
|
|
124
|
-
// "@xyd-js/uniform/content",
|
|
125
|
-
// "@xyd-js/plugin-zero"
|
|
126
|
-
// ],
|
|
127
139
|
},
|
|
128
140
|
optimizeDeps: {
|
|
129
141
|
include: ["react/jsx-runtime"]
|
|
130
142
|
},
|
|
131
|
-
// @ts-ignore
|
|
132
143
|
plugins: [
|
|
133
144
|
// TODO: fix plugin ts
|
|
134
145
|
...xydContentVitePlugins2({
|
|
@@ -137,9 +148,9 @@ async function dev() {
|
|
|
137
148
|
}
|
|
138
149
|
}),
|
|
139
150
|
reactRouter2({
|
|
140
|
-
routes:
|
|
151
|
+
routes: respPluginZero.routes
|
|
141
152
|
}),
|
|
142
|
-
...
|
|
153
|
+
...respPluginZero.vitePlugins
|
|
143
154
|
]
|
|
144
155
|
});
|
|
145
156
|
await preview.listen(port);
|
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../src/run/build.ts","../src/run/dev.ts","../src/run/serve.ts"],"sourcesContent":["import path from \"node:path\";\nimport fs from \"node:fs\";\nimport {fileURLToPath} from \"node:url\";\n\nimport {build as viteBuild} from 'vite';\nimport tsconfigPaths from \"vite-tsconfig-paths\";\n\nimport {reactRouter} from \"@xyd-js/react-router-dev/vite\";\n// import { reactRouter } from \"@react-router/dev/vite\";\n\nimport {vitePlugins as xydContentVitePlugins} from \"@xyd-js/content\"\nimport {pluginZero} from \"@xyd-js/plugin-zero\";\n\nconst __filename = fileURLToPath(import.meta.url);\nconst __dirname = path.dirname(__filename);\n\n// Define the main function to run the builds\nexport async function build() {\n const resp = await pluginZero()\n if (!resp) {\n throw new Error(\"PluginZero not found\")\n }\n\n const buildDir = path.join(process.cwd(), \".xyd/build\");\n\n {\n const packageJsonPath = path.join(buildDir, 'package.json');\n\n const packageJsonContent = {\n type: \"module\",\n scripts: {},\n dependencies: {},\n devDependencies: {}\n };\n\n // Ensure the build directory exists\n if (!fs.existsSync(buildDir)) {\n fs.mkdirSync(buildDir, {recursive: true});\n }\n\n // Write the package.json file\n fs.writeFileSync(packageJsonPath, JSON.stringify(packageJsonContent, null, 2), 'utf8');\n }\n\n try {\n // Build the client-side bundle\n await viteBuild({\n root: path.join(__dirname, \"../host\"),\n // @ts-ignore\n plugins: [\n ...(xydContentVitePlugins({\n toc: {\n minDepth: 2,\n }\n }) as Plugin[]),\n reactRouter({\n outDir: buildDir,\n routes: resp.routes\n }),\n tsconfigPaths(),\n ...resp.vitePlugins\n ],\n optimizeDeps: {\n include: [\"react/jsx-runtime\"],\n },\n });\n\n // Build the SSR bundle\n await viteBuild({\n root: path.join(__dirname, \"../host\"),\n build: {\n ssr: true,\n },\n // @ts-ignore\n plugins: [\n ...(xydContentVitePlugins({\n toc: {\n minDepth: 2,\n }\n }) as Plugin[]),\n reactRouter({\n outDir: buildDir,\n routes: resp.routes\n }),\n tsconfigPaths(),\n ...resp.vitePlugins\n ],\n optimizeDeps: {\n include: [\"react/jsx-runtime\"],\n },\n });\n\n console.log('Build completed successfully.'); // TODO: better message\n } catch (error) {\n console.error('Build failed:', error); // TODO: better message\n }\n}\n\n","import path from \"node:path\";\nimport {fileURLToPath} from \"node:url\";\nimport {createServer, searchForWorkspaceRoot} from \"vite\";\n\nimport {reactRouter} from \"@xyd-js/react-router-dev/vite\";\n// import { reactRouter } from \"@react-router/dev/vite\";\n\nimport {vitePlugins as xydContentVitePlugins} from \"@xyd-js/content\";\nimport {pluginZero} from \"@xyd-js/plugin-zero\";\n\nconst __filename = fileURLToPath(import.meta.url);\nconst __dirname = path.dirname(__filename);\n\nconst port = process.env.XYD_PORT ? parseInt(process.env.XYD_PORT) : 5175;\n\nexport async function dev() {\n const resp = await pluginZero()\n if (!resp) {\n throw new Error(\"PluginZero not found\")\n }\n\n const allowCwd = searchForWorkspaceRoot(process.cwd())\n\n const preview = await createServer({\n // any valid user config options, plus `mode` and `configFile`\n // configFile: path.join(__dirname, \"../src/vite/empty-config.ts\"), // TODO: bundler??\n // configFile: path.join(__dirname, \"../\"), // TODO: bundler??\n // root: path.join(__dirname, \"../\"), // TODO: bundler?\n root: process.env.XYD_DOCUMAN_HOST || path.join(__dirname, \"../host\"), // TODO: bundler?\n server: {\n port: port,\n fs: {\n allow: [\n allowCwd,\n process.env.XYD_CLI ? path.join(__dirname, \"../../\") : \"\",\n // path.join(__dirname, \"../node_modules\") // Ensure node_modules from xyd-documan is included\n ]\n }\n },\n build: {\n rollupOptions: {\n // Exclude package `B` from the client-side bundle\n external: [\"@xyd-js/uniform\", \"@xyd-js/uniform/content\", \"@xyd-js/plugin-zero\"],\n },\n },\n ssr: {\n external: [\"@xyd-js/uniform\", \"@xyd-js/uniform/content\", \"@xyd-js/plugin-zero\"],\n // noExternal: [\n // \"@xyd-js/uniform\",\n // \"@xyd-js/uniform/content\",\n // \"@xyd-js/plugin-zero\"\n // ],\n },\n optimizeDeps: {\n include: [\"react/jsx-runtime\"],\n },\n // @ts-ignore\n plugins: [ // TODO: fix plugin ts\n ...(xydContentVitePlugins({\n toc: {\n minDepth: 2,\n }\n }) as Plugin[]),\n reactRouter({\n routes: resp.routes\n }),\n ...resp.vitePlugins\n ],\n });\n\n await preview.listen(port);\n\n preview.printUrls();\n preview.bindCLIShortcuts({print: true});\n\n}","import fs from \"node:fs\";\nimport os from \"node:os\";\nimport path from \"node:path\";\nimport url from \"node:url\";\n\nimport type {ServerBuild} from \"react-router\";\nimport {createRequestHandler} from \"@react-router/express\";\nimport compression from \"compression\";\nimport express from \"express\";\nimport morgan from \"morgan\";\nimport sourceMapSupport from \"source-map-support\";\nimport getPort from \"get-port\";\n\nfunction parseNumber(raw?: string) {\n if (raw === undefined) return undefined;\n let maybe = Number(raw);\n if (Number.isNaN(maybe)) return undefined;\n return maybe;\n}\n\nexport async function serve() {\n process.env.NODE_ENV = process.env.NODE_ENV ?? \"production\";\n\n sourceMapSupport.install({\n retrieveSourceMap: function (source) {\n let match = source.startsWith(\"file://\");\n if (match) {\n let filePath = url.fileURLToPath(source);\n let sourceMapPath = `${filePath}.map`;\n if (fs.existsSync(sourceMapPath)) {\n return {\n url: source,\n map: fs.readFileSync(sourceMapPath, \"utf8\"),\n };\n }\n }\n return null;\n },\n });\n\n let port = parseNumber(process.env.PORT) ?? (await getPort({port: 3000}));\n\n let buildPathArg = path.join(process.cwd(), \".xyd/build/server/index.js\")\n\n if (!buildPathArg) {\n console.error(`\n Usage: react-router-serve <server-build-path> - e.g. react-router-serve build/server/index.js`);\n process.exit(1);\n }\n\n let buildPath = path.resolve(buildPathArg);\n\n let build: ServerBuild = await import(url.pathToFileURL(buildPath).href);\n\n let onListen = () => {\n let address =\n process.env.HOST ||\n Object.values(os.networkInterfaces())\n .flat()\n .find((ip) => String(ip?.family).includes(\"4\") && !ip?.internal)\n ?.address;\n\n if (!address) {\n console.log(`[xyd-serve] http://localhost:${port}`);\n } else {\n console.log(\n `[xyd-serve] http://localhost:${port} (http://${address}:${port})`\n );\n }\n };\n\n build = {\n ...build,\n assetsBuildDirectory: path.join(process.cwd(), \".xyd/build/client\")\n }\n\n let app = express();\n app.disable(\"x-powered-by\");\n app.use(compression());\n app.use(\n path.posix.join(build.publicPath, \"assets\"),\n express.static(path.join(build.assetsBuildDirectory, \"assets\"), {\n immutable: true,\n maxAge: \"1y\",\n })\n );\n app.use(build.publicPath, express.static(build.assetsBuildDirectory));\n app.use(express.static(\"public\", {maxAge: \"1h\"}));\n app.use(morgan(\"tiny\"));\n\n app.all(\n \"*\",\n createRequestHandler({\n build,\n mode: process.env.NODE_ENV,\n })\n );\n\n let server = process.env.HOST\n ? app.listen(port, process.env.HOST, onListen)\n : app.listen(port, onListen);\n\n [\"SIGTERM\", \"SIGINT\"].forEach((signal) => {\n process.once(signal, () => server?.close(console.error));\n });\n}\n"],"mappings":"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","names":["path","fileURLToPath","reactRouter","xydContentVitePlugins","pluginZero","__filename","__dirname","fs","path","port","build"]}
|
|
1
|
+
{"version":3,"sources":["../src/run/build.ts","../src/run/dev.ts","../src/run/serve.ts"],"sourcesContent":["import path from \"node:path\";\nimport fs from \"node:fs\";\nimport {fileURLToPath} from \"node:url\";\nimport {execSync} from 'child_process';\n\nimport {build as viteBuild} from 'vite';\nimport tsconfigPaths from \"vite-tsconfig-paths\";\n\nimport {reactRouter} from \"@xyd-js/react-router-dev/vite\";\n\nimport {vitePlugins as xydContentVitePlugins} from \"@xyd-js/content/vite\"\nimport {pluginZero} from \"@xyd-js/plugin-zero\";\n\nconst __filename = fileURLToPath(import.meta.url);\nconst __dirname = path.dirname(__filename);\n\n// Define the main function to run the builds\nexport async function build() {\n const resp = await pluginZero()\n if (!resp) {\n throw new Error(\"PluginZero not found\")\n }\n\n const buildDir = path.join(process.cwd(), \".xyd/build\");\n\n {\n // TODO: probably we should have better mechanism - maybe bundle?\n\n const packageJsonPath = path.join(buildDir, 'package.json');\n\n const packageJsonContent = {\n type: \"module\",\n scripts: {},\n dependencies: { // TODO: better\n \"@xyd-js/content\": \"latest\",\n \"@xyd-js/components\": \"latest\",\n \"@xyd-js/framework\": \"latest\",\n \"@xyd-js/theme-poetry\": \"latest\",\n\n\n \"@react-router/node\": \"7.1.1\",\n \"isbot\": \"^5\"\n },\n devDependencies: {}\n };\n\n if (process.env.XYD_DEV_MODE) {\n packageJsonContent.dependencies = {\n ...packageJsonContent.dependencies,\n \"@xyd-js/content\": \"workspace:*\",\n \"@xyd-js/components\": \"workspace:*\",\n \"@xyd-js/framework\": \"workspace:*\",\n \"@xyd-js/theme-poetry\": \"workspace:*\",\n }\n }\n\n // Ensure the build directory exists\n if (!fs.existsSync(buildDir)) {\n fs.mkdirSync(buildDir, {recursive: true});\n }\n\n // Write the package.json file\n fs.writeFileSync(packageJsonPath, JSON.stringify(packageJsonContent, null, 2), 'utf8');\n\n // Install packages inside buildDir\n if (process.env.XYD_DEV_MODE) {\n execSync('pnpm i', {cwd: buildDir, stdio: 'inherit'});\n } else {\n execSync('npm install', {cwd: buildDir, stdio: 'inherit'});\n }\n }\n\n try {\n // Build the client-side bundle\n await viteBuild({\n root: process.env.XYD_CLI ? __dirname : process.env.XYD_DOCUMAN_HOST || path.join(__dirname, \"../host\"),\n plugins: [\n ...(xydContentVitePlugins({\n toc: {\n minDepth: 2,\n }\n }) as Plugin[]),\n reactRouter({\n outDir: buildDir,\n routes: resp.routes\n }),\n tsconfigPaths(),\n ...resp.vitePlugins\n ],\n optimizeDeps: {\n include: [\"react/jsx-runtime\"],\n },\n });\n\n // Build the SSR bundle\n await viteBuild({\n root: process.env.XYD_CLI ? __dirname : process.env.XYD_DOCUMAN_HOST || path.join(__dirname, \"../host\"),\n build: {\n ssr: true,\n },\n plugins: [\n ...(xydContentVitePlugins({\n toc: {\n minDepth: 2,\n }\n }) as Plugin[]),\n reactRouter({\n outDir: buildDir,\n routes: resp.routes\n }),\n tsconfigPaths(),\n ...resp.vitePlugins\n ],\n optimizeDeps: {\n include: [\"react/jsx-runtime\"],\n },\n });\n\n console.log('Build completed successfully.'); // TODO: better message\n } catch (error) {\n console.error('Build failed:', error); // TODO: better message\n }\n}\n\n","import path from \"node:path\";\nimport {fileURLToPath} from \"node:url\";\nimport {createServer, searchForWorkspaceRoot} from \"vite\";\n\nimport {reactRouter} from \"@xyd-js/react-router-dev/vite\";\n\nimport {vitePlugins as xydContentVitePlugins} from \"@xyd-js/content/vite\";\nimport {pluginZero} from \"@xyd-js/plugin-zero\";\n\nconst __filename = fileURLToPath(import.meta.url);\nconst __dirname = path.dirname(__filename);\n\nconst port = process.env.XYD_PORT ? parseInt(process.env.XYD_PORT) : 5175;\n\nexport async function dev() {\n const respPluginZero = await pluginZero()\n if (!respPluginZero) {\n throw new Error(\"PluginZero not found\")\n }\n\n const allowCwd = searchForWorkspaceRoot(process.cwd())\n\n const preview = await createServer({\n root: process.env.XYD_CLI ? __dirname : process.env.XYD_DOCUMAN_HOST || path.join(__dirname, \"../host\"), // TODO: bundler?\n server: {\n port: port,\n fs: {\n allow: [\n allowCwd,\n process.env.XYD_CLI ? path.join(__dirname, \"../../\") : \"\",\n // path.join(__dirname, \"../node_modules\") // Ensure node_modules from xyd-documan is included\n ]\n }\n },\n build: {\n rollupOptions: {\n // Exclude package `B` from the client-side bundle\n external: [\"@xyd-js/uniform\", \"@xyd-js/uniform/content\", \"@xyd-js/plugin-zero\"],\n },\n },\n ssr: {\n external: [\"@xyd-js/uniform\", \"@xyd-js/uniform/content\", \"@xyd-js/plugin-zero\"],\n },\n optimizeDeps: {\n include: [\"react/jsx-runtime\"],\n },\n plugins: [ // TODO: fix plugin ts\n ...(xydContentVitePlugins({\n toc: {\n minDepth: 2,\n }\n }) as Plugin[]),\n reactRouter({\n routes: respPluginZero.routes\n }),\n ...respPluginZero.vitePlugins\n ],\n });\n\n await preview.listen(port);\n\n preview.printUrls();\n preview.bindCLIShortcuts({print: true});\n\n}","import fs from \"node:fs\";\nimport os from \"node:os\";\nimport path from \"node:path\";\nimport url from \"node:url\";\n\nimport type {ServerBuild} from \"react-router\";\nimport {createRequestHandler} from \"@react-router/express\";\nimport compression from \"compression\";\nimport express from \"express\";\nimport morgan from \"morgan\";\nimport sourceMapSupport from \"source-map-support\";\nimport getPort from \"get-port\";\n\nfunction parseNumber(raw?: string) {\n if (raw === undefined) return undefined;\n let maybe = Number(raw);\n if (Number.isNaN(maybe)) return undefined;\n return maybe;\n}\n\nexport async function serve() {\n process.env.NODE_ENV = process.env.NODE_ENV ?? \"production\";\n\n sourceMapSupport.install({\n retrieveSourceMap: function (source) {\n let match = source.startsWith(\"file://\");\n if (match) {\n let filePath = url.fileURLToPath(source);\n let sourceMapPath = `${filePath}.map`;\n if (fs.existsSync(sourceMapPath)) {\n return {\n url: source,\n map: fs.readFileSync(sourceMapPath, \"utf8\"),\n };\n }\n }\n return null;\n },\n });\n\n let port = parseNumber(process.env.PORT) ?? (await getPort({port: 3000}));\n\n let buildPathArg = path.join(process.cwd(), \".xyd/build/server/index.js\")\n\n if (!buildPathArg) {\n console.error(`\n Usage: react-router-serve <server-build-path> - e.g. react-router-serve build/server/index.js`);\n process.exit(1);\n }\n\n let buildPath = path.resolve(buildPathArg);\n\n let build: ServerBuild = await import(url.pathToFileURL(buildPath).href);\n\n let onListen = () => {\n let address =\n process.env.HOST ||\n Object.values(os.networkInterfaces())\n .flat()\n .find((ip) => String(ip?.family).includes(\"4\") && !ip?.internal)\n ?.address;\n\n if (!address) {\n console.log(`[xyd-serve] http://localhost:${port}`);\n } else {\n console.log(\n `[xyd-serve] http://localhost:${port} (http://${address}:${port})`\n );\n }\n };\n\n build = {\n ...build,\n assetsBuildDirectory: path.join(process.cwd(), \".xyd/build/client\")\n }\n\n let app = express();\n app.disable(\"x-powered-by\");\n app.use(compression());\n app.use(\n path.posix.join(build.publicPath, \"assets\"),\n express.static(path.join(build.assetsBuildDirectory, \"assets\"), {\n immutable: true,\n maxAge: \"1y\",\n })\n );\n app.use(build.publicPath, express.static(build.assetsBuildDirectory));\n app.use(express.static(\"public\", {maxAge: \"1h\"}));\n app.use(morgan(\"tiny\"));\n\n app.all(\n \"*\",\n createRequestHandler({\n build,\n mode: process.env.NODE_ENV,\n })\n );\n\n let server = process.env.HOST\n ? app.listen(port, process.env.HOST, onListen)\n : app.listen(port, onListen);\n\n [\"SIGTERM\", \"SIGINT\"].forEach((signal) => {\n process.once(signal, () => server?.close(console.error));\n });\n}\n"],"mappings":"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","names":["path","fileURLToPath","reactRouter","xydContentVitePlugins","pluginZero","__filename","__dirname","fs","path","port","build"]}
|
package/dist/serve.js
CHANGED
|
@@ -5,7 +5,7 @@ import { fileURLToPath } from "node:url";
|
|
|
5
5
|
import { build as viteBuild } from "vite";
|
|
6
6
|
import tsconfigPaths from "vite-tsconfig-paths";
|
|
7
7
|
import { reactRouter } from "@xyd-js/react-router-dev/vite";
|
|
8
|
-
import { vitePlugins as xydContentVitePlugins } from "@xyd-js/content";
|
|
8
|
+
import { vitePlugins as xydContentVitePlugins } from "@xyd-js/content/vite";
|
|
9
9
|
import { pluginZero } from "@xyd-js/plugin-zero";
|
|
10
10
|
var __filename = fileURLToPath(import.meta.url);
|
|
11
11
|
var __dirname = path.dirname(__filename);
|
|
@@ -15,7 +15,7 @@ import path2 from "node:path";
|
|
|
15
15
|
import { fileURLToPath as fileURLToPath2 } from "node:url";
|
|
16
16
|
import { createServer, searchForWorkspaceRoot } from "vite";
|
|
17
17
|
import { reactRouter as reactRouter2 } from "@xyd-js/react-router-dev/vite";
|
|
18
|
-
import { vitePlugins as xydContentVitePlugins2 } from "@xyd-js/content";
|
|
18
|
+
import { vitePlugins as xydContentVitePlugins2 } from "@xyd-js/content/vite";
|
|
19
19
|
import { pluginZero as pluginZero2 } from "@xyd-js/plugin-zero";
|
|
20
20
|
var __filename2 = fileURLToPath2(import.meta.url);
|
|
21
21
|
var __dirname2 = path2.dirname(__filename2);
|
package/dist/serve.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../src/run/build.ts","../src/run/dev.ts","../src/run/serve.ts","../src/commands/serve.ts"],"sourcesContent":["import path from \"node:path\";\nimport fs from \"node:fs\";\nimport {fileURLToPath} from \"node:url\";\n\nimport {build as viteBuild} from 'vite';\nimport tsconfigPaths from \"vite-tsconfig-paths\";\n\nimport {reactRouter} from \"@xyd-js/react-router-dev/vite\";\n// import { reactRouter } from \"@react-router/dev/vite\";\n\nimport {vitePlugins as xydContentVitePlugins} from \"@xyd-js/content\"\nimport {pluginZero} from \"@xyd-js/plugin-zero\";\n\nconst __filename = fileURLToPath(import.meta.url);\nconst __dirname = path.dirname(__filename);\n\n// Define the main function to run the builds\nexport async function build() {\n const resp = await pluginZero()\n if (!resp) {\n throw new Error(\"PluginZero not found\")\n }\n\n const buildDir = path.join(process.cwd(), \".xyd/build\");\n\n {\n const packageJsonPath = path.join(buildDir, 'package.json');\n\n const packageJsonContent = {\n type: \"module\",\n scripts: {},\n dependencies: {},\n devDependencies: {}\n };\n\n // Ensure the build directory exists\n if (!fs.existsSync(buildDir)) {\n fs.mkdirSync(buildDir, {recursive: true});\n }\n\n // Write the package.json file\n fs.writeFileSync(packageJsonPath, JSON.stringify(packageJsonContent, null, 2), 'utf8');\n }\n\n try {\n // Build the client-side bundle\n await viteBuild({\n root: path.join(__dirname, \"../host\"),\n // @ts-ignore\n plugins: [\n ...(xydContentVitePlugins({\n toc: {\n minDepth: 2,\n }\n }) as Plugin[]),\n reactRouter({\n outDir: buildDir,\n routes: resp.routes\n }),\n tsconfigPaths(),\n ...resp.vitePlugins\n ],\n optimizeDeps: {\n include: [\"react/jsx-runtime\"],\n },\n });\n\n // Build the SSR bundle\n await viteBuild({\n root: path.join(__dirname, \"../host\"),\n build: {\n ssr: true,\n },\n // @ts-ignore\n plugins: [\n ...(xydContentVitePlugins({\n toc: {\n minDepth: 2,\n }\n }) as Plugin[]),\n reactRouter({\n outDir: buildDir,\n routes: resp.routes\n }),\n tsconfigPaths(),\n ...resp.vitePlugins\n ],\n optimizeDeps: {\n include: [\"react/jsx-runtime\"],\n },\n });\n\n console.log('Build completed successfully.'); // TODO: better message\n } catch (error) {\n console.error('Build failed:', error); // TODO: better message\n }\n}\n\n","import path from \"node:path\";\nimport {fileURLToPath} from \"node:url\";\nimport {createServer, searchForWorkspaceRoot} from \"vite\";\n\nimport {reactRouter} from \"@xyd-js/react-router-dev/vite\";\n// import { reactRouter } from \"@react-router/dev/vite\";\n\nimport {vitePlugins as xydContentVitePlugins} from \"@xyd-js/content\";\nimport {pluginZero} from \"@xyd-js/plugin-zero\";\n\nconst __filename = fileURLToPath(import.meta.url);\nconst __dirname = path.dirname(__filename);\n\nconst port = process.env.XYD_PORT ? parseInt(process.env.XYD_PORT) : 5175;\n\nexport async function dev() {\n const resp = await pluginZero()\n if (!resp) {\n throw new Error(\"PluginZero not found\")\n }\n\n const allowCwd = searchForWorkspaceRoot(process.cwd())\n\n const preview = await createServer({\n // any valid user config options, plus `mode` and `configFile`\n // configFile: path.join(__dirname, \"../src/vite/empty-config.ts\"), // TODO: bundler??\n // configFile: path.join(__dirname, \"../\"), // TODO: bundler??\n // root: path.join(__dirname, \"../\"), // TODO: bundler?\n root: process.env.XYD_DOCUMAN_HOST || path.join(__dirname, \"../host\"), // TODO: bundler?\n server: {\n port: port,\n fs: {\n allow: [\n allowCwd,\n process.env.XYD_CLI ? path.join(__dirname, \"../../\") : \"\",\n // path.join(__dirname, \"../node_modules\") // Ensure node_modules from xyd-documan is included\n ]\n }\n },\n build: {\n rollupOptions: {\n // Exclude package `B` from the client-side bundle\n external: [\"@xyd-js/uniform\", \"@xyd-js/uniform/content\", \"@xyd-js/plugin-zero\"],\n },\n },\n ssr: {\n external: [\"@xyd-js/uniform\", \"@xyd-js/uniform/content\", \"@xyd-js/plugin-zero\"],\n // noExternal: [\n // \"@xyd-js/uniform\",\n // \"@xyd-js/uniform/content\",\n // \"@xyd-js/plugin-zero\"\n // ],\n },\n optimizeDeps: {\n include: [\"react/jsx-runtime\"],\n },\n // @ts-ignore\n plugins: [ // TODO: fix plugin ts\n ...(xydContentVitePlugins({\n toc: {\n minDepth: 2,\n }\n }) as Plugin[]),\n reactRouter({\n routes: resp.routes\n }),\n ...resp.vitePlugins\n ],\n });\n\n await preview.listen(port);\n\n preview.printUrls();\n preview.bindCLIShortcuts({print: true});\n\n}","import fs from \"node:fs\";\nimport os from \"node:os\";\nimport path from \"node:path\";\nimport url from \"node:url\";\n\nimport type {ServerBuild} from \"react-router\";\nimport {createRequestHandler} from \"@react-router/express\";\nimport compression from \"compression\";\nimport express from \"express\";\nimport morgan from \"morgan\";\nimport sourceMapSupport from \"source-map-support\";\nimport getPort from \"get-port\";\n\nfunction parseNumber(raw?: string) {\n if (raw === undefined) return undefined;\n let maybe = Number(raw);\n if (Number.isNaN(maybe)) return undefined;\n return maybe;\n}\n\nexport async function serve() {\n process.env.NODE_ENV = process.env.NODE_ENV ?? \"production\";\n\n sourceMapSupport.install({\n retrieveSourceMap: function (source) {\n let match = source.startsWith(\"file://\");\n if (match) {\n let filePath = url.fileURLToPath(source);\n let sourceMapPath = `${filePath}.map`;\n if (fs.existsSync(sourceMapPath)) {\n return {\n url: source,\n map: fs.readFileSync(sourceMapPath, \"utf8\"),\n };\n }\n }\n return null;\n },\n });\n\n let port = parseNumber(process.env.PORT) ?? (await getPort({port: 3000}));\n\n let buildPathArg = path.join(process.cwd(), \".xyd/build/server/index.js\")\n\n if (!buildPathArg) {\n console.error(`\n Usage: react-router-serve <server-build-path> - e.g. react-router-serve build/server/index.js`);\n process.exit(1);\n }\n\n let buildPath = path.resolve(buildPathArg);\n\n let build: ServerBuild = await import(url.pathToFileURL(buildPath).href);\n\n let onListen = () => {\n let address =\n process.env.HOST ||\n Object.values(os.networkInterfaces())\n .flat()\n .find((ip) => String(ip?.family).includes(\"4\") && !ip?.internal)\n ?.address;\n\n if (!address) {\n console.log(`[xyd-serve] http://localhost:${port}`);\n } else {\n console.log(\n `[xyd-serve] http://localhost:${port} (http://${address}:${port})`\n );\n }\n };\n\n build = {\n ...build,\n assetsBuildDirectory: path.join(process.cwd(), \".xyd/build/client\")\n }\n\n let app = express();\n app.disable(\"x-powered-by\");\n app.use(compression());\n app.use(\n path.posix.join(build.publicPath, \"assets\"),\n express.static(path.join(build.assetsBuildDirectory, \"assets\"), {\n immutable: true,\n maxAge: \"1y\",\n })\n );\n app.use(build.publicPath, express.static(build.assetsBuildDirectory));\n app.use(express.static(\"public\", {maxAge: \"1h\"}));\n app.use(morgan(\"tiny\"));\n\n app.all(\n \"*\",\n createRequestHandler({\n build,\n mode: process.env.NODE_ENV,\n })\n );\n\n let server = process.env.HOST\n ? app.listen(port, process.env.HOST, onListen)\n : app.listen(port, onListen);\n\n [\"SIGTERM\", \"SIGINT\"].forEach((signal) => {\n process.once(signal, () => server?.close(console.error));\n });\n}\n","import {serve} from \"../\"\n\n// Execute the serve function\nawait serve();\n\n"],"mappings":"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","names":["path","fileURLToPath","reactRouter","xydContentVitePlugins","pluginZero","__filename","__dirname","fs","path","port","build"]}
|
|
1
|
+
{"version":3,"sources":["../src/run/build.ts","../src/run/dev.ts","../src/run/serve.ts","../src/commands/serve.ts"],"sourcesContent":["import path from \"node:path\";\nimport fs from \"node:fs\";\nimport {fileURLToPath} from \"node:url\";\nimport {execSync} from 'child_process';\n\nimport {build as viteBuild} from 'vite';\nimport tsconfigPaths from \"vite-tsconfig-paths\";\n\nimport {reactRouter} from \"@xyd-js/react-router-dev/vite\";\n\nimport {vitePlugins as xydContentVitePlugins} from \"@xyd-js/content/vite\"\nimport {pluginZero} from \"@xyd-js/plugin-zero\";\n\nconst __filename = fileURLToPath(import.meta.url);\nconst __dirname = path.dirname(__filename);\n\n// Define the main function to run the builds\nexport async function build() {\n const resp = await pluginZero()\n if (!resp) {\n throw new Error(\"PluginZero not found\")\n }\n\n const buildDir = path.join(process.cwd(), \".xyd/build\");\n\n {\n // TODO: probably we should have better mechanism - maybe bundle?\n\n const packageJsonPath = path.join(buildDir, 'package.json');\n\n const packageJsonContent = {\n type: \"module\",\n scripts: {},\n dependencies: { // TODO: better\n \"@xyd-js/content\": \"latest\",\n \"@xyd-js/components\": \"latest\",\n \"@xyd-js/framework\": \"latest\",\n \"@xyd-js/theme-poetry\": \"latest\",\n\n\n \"@react-router/node\": \"7.1.1\",\n \"isbot\": \"^5\"\n },\n devDependencies: {}\n };\n\n if (process.env.XYD_DEV_MODE) {\n packageJsonContent.dependencies = {\n ...packageJsonContent.dependencies,\n \"@xyd-js/content\": \"workspace:*\",\n \"@xyd-js/components\": \"workspace:*\",\n \"@xyd-js/framework\": \"workspace:*\",\n \"@xyd-js/theme-poetry\": \"workspace:*\",\n }\n }\n\n // Ensure the build directory exists\n if (!fs.existsSync(buildDir)) {\n fs.mkdirSync(buildDir, {recursive: true});\n }\n\n // Write the package.json file\n fs.writeFileSync(packageJsonPath, JSON.stringify(packageJsonContent, null, 2), 'utf8');\n\n // Install packages inside buildDir\n if (process.env.XYD_DEV_MODE) {\n execSync('pnpm i', {cwd: buildDir, stdio: 'inherit'});\n } else {\n execSync('npm install', {cwd: buildDir, stdio: 'inherit'});\n }\n }\n\n try {\n // Build the client-side bundle\n await viteBuild({\n root: process.env.XYD_CLI ? __dirname : process.env.XYD_DOCUMAN_HOST || path.join(__dirname, \"../host\"),\n plugins: [\n ...(xydContentVitePlugins({\n toc: {\n minDepth: 2,\n }\n }) as Plugin[]),\n reactRouter({\n outDir: buildDir,\n routes: resp.routes\n }),\n tsconfigPaths(),\n ...resp.vitePlugins\n ],\n optimizeDeps: {\n include: [\"react/jsx-runtime\"],\n },\n });\n\n // Build the SSR bundle\n await viteBuild({\n root: process.env.XYD_CLI ? __dirname : process.env.XYD_DOCUMAN_HOST || path.join(__dirname, \"../host\"),\n build: {\n ssr: true,\n },\n plugins: [\n ...(xydContentVitePlugins({\n toc: {\n minDepth: 2,\n }\n }) as Plugin[]),\n reactRouter({\n outDir: buildDir,\n routes: resp.routes\n }),\n tsconfigPaths(),\n ...resp.vitePlugins\n ],\n optimizeDeps: {\n include: [\"react/jsx-runtime\"],\n },\n });\n\n console.log('Build completed successfully.'); // TODO: better message\n } catch (error) {\n console.error('Build failed:', error); // TODO: better message\n }\n}\n\n","import path from \"node:path\";\nimport {fileURLToPath} from \"node:url\";\nimport {createServer, searchForWorkspaceRoot} from \"vite\";\n\nimport {reactRouter} from \"@xyd-js/react-router-dev/vite\";\n\nimport {vitePlugins as xydContentVitePlugins} from \"@xyd-js/content/vite\";\nimport {pluginZero} from \"@xyd-js/plugin-zero\";\n\nconst __filename = fileURLToPath(import.meta.url);\nconst __dirname = path.dirname(__filename);\n\nconst port = process.env.XYD_PORT ? parseInt(process.env.XYD_PORT) : 5175;\n\nexport async function dev() {\n const respPluginZero = await pluginZero()\n if (!respPluginZero) {\n throw new Error(\"PluginZero not found\")\n }\n\n const allowCwd = searchForWorkspaceRoot(process.cwd())\n\n const preview = await createServer({\n root: process.env.XYD_CLI ? __dirname : process.env.XYD_DOCUMAN_HOST || path.join(__dirname, \"../host\"), // TODO: bundler?\n server: {\n port: port,\n fs: {\n allow: [\n allowCwd,\n process.env.XYD_CLI ? path.join(__dirname, \"../../\") : \"\",\n // path.join(__dirname, \"../node_modules\") // Ensure node_modules from xyd-documan is included\n ]\n }\n },\n build: {\n rollupOptions: {\n // Exclude package `B` from the client-side bundle\n external: [\"@xyd-js/uniform\", \"@xyd-js/uniform/content\", \"@xyd-js/plugin-zero\"],\n },\n },\n ssr: {\n external: [\"@xyd-js/uniform\", \"@xyd-js/uniform/content\", \"@xyd-js/plugin-zero\"],\n },\n optimizeDeps: {\n include: [\"react/jsx-runtime\"],\n },\n plugins: [ // TODO: fix plugin ts\n ...(xydContentVitePlugins({\n toc: {\n minDepth: 2,\n }\n }) as Plugin[]),\n reactRouter({\n routes: respPluginZero.routes\n }),\n ...respPluginZero.vitePlugins\n ],\n });\n\n await preview.listen(port);\n\n preview.printUrls();\n preview.bindCLIShortcuts({print: true});\n\n}","import fs from \"node:fs\";\nimport os from \"node:os\";\nimport path from \"node:path\";\nimport url from \"node:url\";\n\nimport type {ServerBuild} from \"react-router\";\nimport {createRequestHandler} from \"@react-router/express\";\nimport compression from \"compression\";\nimport express from \"express\";\nimport morgan from \"morgan\";\nimport sourceMapSupport from \"source-map-support\";\nimport getPort from \"get-port\";\n\nfunction parseNumber(raw?: string) {\n if (raw === undefined) return undefined;\n let maybe = Number(raw);\n if (Number.isNaN(maybe)) return undefined;\n return maybe;\n}\n\nexport async function serve() {\n process.env.NODE_ENV = process.env.NODE_ENV ?? \"production\";\n\n sourceMapSupport.install({\n retrieveSourceMap: function (source) {\n let match = source.startsWith(\"file://\");\n if (match) {\n let filePath = url.fileURLToPath(source);\n let sourceMapPath = `${filePath}.map`;\n if (fs.existsSync(sourceMapPath)) {\n return {\n url: source,\n map: fs.readFileSync(sourceMapPath, \"utf8\"),\n };\n }\n }\n return null;\n },\n });\n\n let port = parseNumber(process.env.PORT) ?? (await getPort({port: 3000}));\n\n let buildPathArg = path.join(process.cwd(), \".xyd/build/server/index.js\")\n\n if (!buildPathArg) {\n console.error(`\n Usage: react-router-serve <server-build-path> - e.g. react-router-serve build/server/index.js`);\n process.exit(1);\n }\n\n let buildPath = path.resolve(buildPathArg);\n\n let build: ServerBuild = await import(url.pathToFileURL(buildPath).href);\n\n let onListen = () => {\n let address =\n process.env.HOST ||\n Object.values(os.networkInterfaces())\n .flat()\n .find((ip) => String(ip?.family).includes(\"4\") && !ip?.internal)\n ?.address;\n\n if (!address) {\n console.log(`[xyd-serve] http://localhost:${port}`);\n } else {\n console.log(\n `[xyd-serve] http://localhost:${port} (http://${address}:${port})`\n );\n }\n };\n\n build = {\n ...build,\n assetsBuildDirectory: path.join(process.cwd(), \".xyd/build/client\")\n }\n\n let app = express();\n app.disable(\"x-powered-by\");\n app.use(compression());\n app.use(\n path.posix.join(build.publicPath, \"assets\"),\n express.static(path.join(build.assetsBuildDirectory, \"assets\"), {\n immutable: true,\n maxAge: \"1y\",\n })\n );\n app.use(build.publicPath, express.static(build.assetsBuildDirectory));\n app.use(express.static(\"public\", {maxAge: \"1h\"}));\n app.use(morgan(\"tiny\"));\n\n app.all(\n \"*\",\n createRequestHandler({\n build,\n mode: process.env.NODE_ENV,\n })\n );\n\n let server = process.env.HOST\n ? app.listen(port, process.env.HOST, onListen)\n : app.listen(port, onListen);\n\n [\"SIGTERM\", \"SIGINT\"].forEach((signal) => {\n process.once(signal, () => server?.close(console.error));\n });\n}\n","import {serve} from \"../\"\n\n// Execute the serve function\nawait serve();\n\n"],"mappings":"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","names":["path","fileURLToPath","reactRouter","xydContentVitePlugins","pluginZero","__filename","__dirname","fs","path","port","build"]}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@xyd-js/documan",
|
|
3
|
-
"version": "0.1.0-xyd.
|
|
3
|
+
"version": "0.1.0-xyd.20",
|
|
4
4
|
"type": "module",
|
|
5
5
|
"exports": {
|
|
6
6
|
"./package.json": "./package.json",
|
|
@@ -9,11 +9,15 @@
|
|
|
9
9
|
"./build": "./dist/build.js",
|
|
10
10
|
"./serve": "./dist/serve.js"
|
|
11
11
|
},
|
|
12
|
+
"files": [
|
|
13
|
+
"dist",
|
|
14
|
+
"package.json"
|
|
15
|
+
],
|
|
12
16
|
"dependencies": {
|
|
13
17
|
"@xyd-js/react-router-dev": "7.1.1-xyd.3",
|
|
14
|
-
"@react-router/node": "
|
|
15
|
-
"@react-router/serve": "
|
|
16
|
-
"@react-router/dev": "
|
|
18
|
+
"@react-router/node": "7.1.1",
|
|
19
|
+
"@react-router/serve": "7.1.1",
|
|
20
|
+
"@react-router/dev": "7.1.1",
|
|
17
21
|
"codehike": "^1.0.3",
|
|
18
22
|
"compression": "^1.7.5",
|
|
19
23
|
"express": "^4.21.2",
|
|
@@ -22,9 +26,9 @@
|
|
|
22
26
|
"isbot": "^5.1.17",
|
|
23
27
|
"lightningcss": "^1.27.0",
|
|
24
28
|
"morgan": "^1.10.0",
|
|
25
|
-
"react": "^
|
|
26
|
-
"react-dom": "^
|
|
27
|
-
"react-router": "
|
|
29
|
+
"react": "^19.0.0",
|
|
30
|
+
"react-dom": "^19.0.0",
|
|
31
|
+
"react-router": "7.1.1",
|
|
28
32
|
"remark-frontmatter": "^5.0.0",
|
|
29
33
|
"remark-gfm": "^4.0.0",
|
|
30
34
|
"remark-mdx-frontmatter": "^5.0.0",
|
|
@@ -32,21 +36,14 @@
|
|
|
32
36
|
"typescript": "^5.6.3",
|
|
33
37
|
"vfile": "^6.0.3",
|
|
34
38
|
"yaml": "^2.6.0",
|
|
35
|
-
"@xyd-js/content": "0.1.0-xyd.
|
|
36
|
-
"@xyd-js/
|
|
37
|
-
"@xyd-js/framework": "0.1.0-xyd.3",
|
|
38
|
-
"@xyd-js/plugin-zero": "0.1.0-xyd.2",
|
|
39
|
-
"@xyd-js/core": "0.1.0-xyd.1",
|
|
40
|
-
"@xyd-js/openapi": "0.1.0-xyd.1",
|
|
41
|
-
"@xyd-js/gql": "0.1.0-xyd.1",
|
|
42
|
-
"@xyd-js/theme-poetry": "0.1.0-xyd.2",
|
|
43
|
-
"@xyd-js/uniform": "0.1.0-xyd.3"
|
|
39
|
+
"@xyd-js/content": "0.1.0-xyd.7",
|
|
40
|
+
"@xyd-js/plugin-zero": "0.1.0-xyd.14"
|
|
44
41
|
},
|
|
45
42
|
"devDependencies": {
|
|
46
43
|
"@mdx-js/rollup": "^3.1.0",
|
|
47
44
|
"@types/node": "^22.7.5",
|
|
48
|
-
"@types/react": "^
|
|
49
|
-
"@types/react-dom": "^
|
|
45
|
+
"@types/react": "^19.0.0",
|
|
46
|
+
"@types/react-dom": "^19.0.0",
|
|
50
47
|
"@vitejs/plugin-react": "^4.3.2",
|
|
51
48
|
"autoprefixer": "^10.4.20",
|
|
52
49
|
"postcss": "^8.4.47",
|