From d8ef7c9709672f6d28ca7a121dcf09d2a17967c5 Mon Sep 17 00:00:00 2001 From: Nikhil Saraf Date: Sat, 2 Dec 2023 20:09:54 +0530 Subject: [PATCH] docs(changeset): fix: clean up old console logs --- .changeset/silver-hotels-grab.md | 7 + docs/package.json | 2 +- examples/vanilla/spa/app/client.tsx | 33 +---- examples/vanilla/spa/app/inline.tsx | 13 ++ packages/vinxi-directives/package.json | 1 + .../vinxi-server-functions/server-runtime.js | 1 - packages/vinxi/bin/cli.mjs | 2 +- packages/vinxi/lib/app.js | 14 +- packages/vinxi/lib/router-modes.js | 132 +++++++++--------- packages/vinxi/package.json | 1 + pnpm-lock.yaml | 84 ++++++++--- 11 files changed, 164 insertions(+), 126 deletions(-) create mode 100644 .changeset/silver-hotels-grab.md create mode 100644 examples/vanilla/spa/app/inline.tsx diff --git a/.changeset/silver-hotels-grab.md b/.changeset/silver-hotels-grab.md new file mode 100644 index 00000000..40fadf0f --- /dev/null +++ b/.changeset/silver-hotels-grab.md @@ -0,0 +1,7 @@ +--- +"@vinxi/server-functions": patch +"@vinxi/plugin-directives": patch +"vinxi": patch +--- + +fix: clean up old console logs diff --git a/docs/package.json b/docs/package.json index 7fc2efae..6c901ed1 100644 --- a/docs/package.json +++ b/docs/package.json @@ -29,7 +29,7 @@ "react-dom": "0.0.0-experimental-dddfe6882-20231005", "tailwindcss": "^3.3.3", "unist-util-visit": "^5.0.0", - "vinxi": "0.0.34", + "vinxi": "0.0.47", "vite-plugin-inspect": "^0.7.38", "vite-tsconfig-paths": "^4.2.0", "wouter": "^2.11.0", diff --git a/examples/vanilla/spa/app/client.tsx b/examples/vanilla/spa/app/client.tsx index 670d7756..7276b641 100644 --- a/examples/vanilla/spa/app/client.tsx +++ b/examples/vanilla/spa/app/client.tsx @@ -1,38 +1,9 @@ /// import "vinxi/client"; -import { sayHello } from "./actions"; -import { world } from "./server-functions"; import "./style.css"; +import { world2 } from "./inline"; -export async function world2(x) { - "use server"; - console.log("hello world 2", x); -} - -async function world3(x, y) { - "use server"; - console.log("hello world 3", x, y); -} - -const world4 = async (x, y) => { - "use server"; - console.log("hello world 4", x, y); -}; - -const world5 = async (x) => { - "use server"; - console.log("hello world 4", x); -}; - -console.log( - await world(), - await world2(1), - await world3(2, 3), - await world4(5, 6), - await sayHello(), - await world5({ hello: 1, world: "aasd", x: true }), -); -console.log("Hello world!"); +await world2(10); document.getElementById("app").innerHTML = `Hello World`; diff --git a/examples/vanilla/spa/app/inline.tsx b/examples/vanilla/spa/app/inline.tsx new file mode 100644 index 00000000..35da6246 --- /dev/null +++ b/examples/vanilla/spa/app/inline.tsx @@ -0,0 +1,13 @@ +import { sayHello } from "./actions"; +import { world } from "./server-functions"; + +export async function world2(x) { + "use server"; + await world3(x, 1); + console.log("hello world 2", x); +} + +async function world3(x, y) { + "use server"; + console.log("hello world 3", x, y); +} diff --git a/packages/vinxi-directives/package.json b/packages/vinxi-directives/package.json index 4ed8a63a..da0b8d6f 100644 --- a/packages/vinxi-directives/package.json +++ b/packages/vinxi-directives/package.json @@ -29,6 +29,7 @@ "vinxi": "^0.0.48" }, "dependencies": { + "@babel/parser": "^7.23.5", "acorn": "^8.10.0", "acorn-jsx": "^5.3.2", "acorn-loose": "^8.3.0", diff --git a/packages/vinxi-server-functions/server-runtime.js b/packages/vinxi-server-functions/server-runtime.js index 05df5ebd..bc0953cd 100644 --- a/packages/vinxi-server-functions/server-runtime.js +++ b/packages/vinxi-server-functions/server-runtime.js @@ -1,5 +1,4 @@ export function createServerReference(fn, id, name) { - console.log("creating reference"); return new Proxy(fn, { get(target, prop, receiver) { if (prop === "url") { diff --git a/packages/vinxi/bin/cli.mjs b/packages/vinxi/bin/cli.mjs index 8bf3401b..3d9dc934 100755 --- a/packages/vinxi/bin/cli.mjs +++ b/packages/vinxi/bin/cli.mjs @@ -186,7 +186,7 @@ const command = defineCommand({ }, async run({ args }) { process.env.PORT ??= args.port ?? 3000; - process.env.HOST ??= args.host; + process.env.HOST ??= args.host ?? "0.0.0.0"; await import(process.cwd() + "/.output/server/index.mjs"); }, }, diff --git a/packages/vinxi/lib/app.js b/packages/vinxi/lib/app.js index 43db1dba..4293cfa9 100644 --- a/packages/vinxi/lib/app.js +++ b/packages/vinxi/lib/app.js @@ -4,15 +4,15 @@ import resolve from "resolve"; import { isMainThread } from "worker_threads"; import invariant, { InvariantError } from "./invariant.js"; -import { c, consola, log, withLogger } from "./logger.js"; +import { c, consola, withLogger } from "./logger.js"; import { resolveRouterConfig, routerSchema } from "./router-modes.js"; -/** @typedef {{ - devtools?: boolean; - routers?: import("./router-modes.js").RouterSchemaInput[]; - name?: - string; - server?: import('nitropack').NitroConfig; +/** @typedef {{ + devtools?: boolean; + routers?: import("./router-modes.js").RouterSchemaInput[]; + name?: + string; + server?: import('nitropack').NitroConfig; root?: string }} AppOptions */ diff --git a/packages/vinxi/lib/router-modes.js b/packages/vinxi/lib/router-modes.js index 9f4d86d7..71b34902 100644 --- a/packages/vinxi/lib/router-modes.js +++ b/packages/vinxi/lib/router-modes.js @@ -1,5 +1,4 @@ -import { setHeader } from "h3"; -import * as v from "zod"; +import * as z from "zod"; import { isMainThread } from "node:worker_threads"; @@ -7,74 +6,74 @@ import invariant from "./invariant.js"; import { handlerModule, join } from "./path.js"; import { resolve } from "./resolve.js"; -export { v }; +export { z }; /** * @typedef {{ routes?: CompiledRouter; devServer?: import('vite').ViteDevServer; appWorker?: import('./app-worker-client.js').AppWorkerClient; mode: import("./router-mode.js").RouterMode }} Internals * @typedef {{ getRoutes(): Promise; } & EventTarget} CompiledRouter * @typedef {(router: RouterSchemaInput, app: import("./app.js").AppOptions) => CompiledRouter} RouterStyleFn * */ -export const staticRouterSchema = v.object({ - name: v.string(), - base: v.optional(v.string().default("/")), - mode: v.literal("static"), - dir: v.string(), - root: v.optional(v.string()), +export const staticRouterSchema = z.object({ + name: z.string(), + base: z.optional(z.string().default("/")), + mode: z.literal("static"), + dir: z.string(), + root: z.optional(z.string()), }); -export const buildRouterSchema = v.object({ - name: v.string(), - base: v.optional(v.string().default("/")), - root: v.optional(v.string()), - mode: v.literal("build"), - handler: v.string(), - /** @type {v.ZodOptionalType>} */ - routes: v.optional(v.custom((value) => value !== null)), - extensions: v.array(v.string()).optional(), - outDir: v.string().optional(), - target: v.literal("browser"), - plugins: v.optional(v.custom((value) => typeof value === "function")), +export const buildRouterSchema = z.object({ + name: z.string(), + base: z.optional(z.string().default("/")), + root: z.optional(z.string()), + mode: z.literal("build"), + handler: z.string(), + /** @type {z.ZodOptionalType>} */ + routes: z.optional(z.custom((value) => value !== null)), + extensions: z.array(z.string()).optional(), + outDir: z.string().optional(), + target: z.literal("browser").optional().default("browser"), + plugins: z.optional(z.custom((value) => typeof value === "function")), }); -export const handlerRouterSchema = v.object({ - name: v.string(), - base: v.optional(v.string().default("/")), - root: v.optional(v.string()), +export const handlerRouterSchema = z.object({ + name: z.string(), + base: z.optional(z.string().default("/")), + root: z.optional(z.string()), - mode: v.literal("handler"), + mode: z.literal("handler"), - build: v.optional(v.boolean()), - worker: v.optional(v.boolean()), - handler: v.string(), - middleware: v.optional(v.string()), - /** @type {v.ZodOptionalType>} */ - routes: v.optional(v.custom((value) => value !== null)), - outDir: v.string().optional(), - target: v.literal("server").optional().default("server"), - plugins: v.optional(v.custom((value) => typeof value === "function")), + build: z.optional(z.boolean()), + worker: z.optional(z.boolean()), + handler: z.string(), + middleware: z.optional(z.string()), + /** @type {z.ZodOptionalType>} */ + routes: z.optional(z.custom((value) => value !== null)), + outDir: z.string().optional(), + target: z.literal("server").optional().default("server"), + plugins: z.optional(z.custom((value) => typeof value === "function")), }); -export const spaRouterSchema = v.object({ - name: v.string(), - base: v.optional(v.string().default("/")), - root: v.optional(v.string()), - mode: v.literal("spa"), - /** @type {v.ZodOptionalType>} */ - routes: v.optional(v.custom((value) => value !== null)), - handler: v.string(), - outDir: v.string().optional(), - target: v.literal("browser").optional().default("browser"), - plugins: v.optional(v.custom((value) => typeof value === "function")), +export const spaRouterSchema = z.object({ + name: z.string(), + base: z.optional(z.string().default("/")), + root: z.optional(z.string()), + mode: z.literal("spa"), + /** @type {z.ZodOptionalType>} */ + routes: z.optional(z.custom((value) => value !== null)), + handler: z.string(), + outDir: z.string().optional(), + target: z.literal("browser").optional().default("browser"), + plugins: z.optional(z.custom((value) => typeof value === "function")), }); -const customRouterSchema = v.object({ - name: v.string(), - base: v.optional(v.string().default("/")), - root: v.optional(v.string()), - mode: v.object({ - resolveConfig: v.function().args(v.any(), v.any()).returns(v.any()), +const customRouterSchema = z.object({ + name: z.string(), + base: z.optional(z.string().default("/")), + root: z.optional(z.string()), + mode: z.object({ + resolveConfig: z.function().args(z.any(), z.any()).returns(z.any()), }), - /** @type {v.ZodOptionalType>} */ - routes: v.optional(v.custom((value) => value !== null)), - handler: v.string(), - outDir: v.string().optional(), - target: v.literal("server"), - plugins: v.optional(v.custom((value) => typeof value === "function")), + /** @type {z.ZodOptionalType>} */ + routes: z.optional(z.custom((value) => value !== null)), + handler: z.string(), + outDir: z.string().optional(), + target: z.literal("server"), + plugins: z.optional(z.custom((value) => typeof value === "function")), }); export const routerSchema = { static: staticRouterSchema, @@ -83,20 +82,19 @@ export const routerSchema = { handler: handlerRouterSchema, custom: customRouterSchema, }; -/** @typedef {v.infer & { outDir: string; base: string; order: number; root: string; internals: Internals }} BuildRouterSchema */ -/** @typedef {v.infer & { outDir: string; base: string; order: number; root: string; internals: Internals }} CustomRouterSchema */ -/** @typedef {v.infer & { outDir: string; base: string; order: number; internals: Internals }} StaticRouterSchema */ -/** @typedef {v.infer & { outDir: string; base: string; order: number; root: string; internals: Internals }} HandlerRouterSchema */ -/** @typedef {v.infer & { outDir: string; base: string; order: number; root: string; internals: Internals }} SPARouterSchema */ +/** @typedef {z.infer & { outDir: string; base: string; order: number; root: string; internals: Internals }} BuildRouterSchema */ +/** @typedef {z.infer & { outDir: string; base: string; order: number; root: string; internals: Internals }} CustomRouterSchema */ +/** @typedef {z.infer & { outDir: string; base: string; order: number; internals: Internals }} StaticRouterSchema */ +/** @typedef {z.infer & { outDir: string; base: string; order: number; root: string; internals: Internals }} HandlerRouterSchema */ +/** @typedef {z.infer & { outDir: string; base: string; order: number; root: string; internals: Internals }} SPARouterSchema */ /** @typedef {(HandlerRouterSchema | BuildRouterSchema | SPARouterSchema | StaticRouterSchema | CustomRouterSchema )} RouterSchema */ -/** @typedef {(v.infer | v.infer | v.infer | v.infer | v.infer)} RouterSchemaInput */ +/** @typedef {(z.infer | z.infer | z.infer | z.infer | z.infer)} RouterSchemaInput */ /** * @template X - * @template T * @param {X} schema - * @param {import("./router-mode.js").RouterMode>} mode - * @returns {import("./router-mode.js").RouterMode>} + * @param {import("./router-mode.js").RouterMode>} mode + * @returns {import("./router-mode.js").RouterMode>} */ export function createRouterMode(schema, mode) { return mode; diff --git a/packages/vinxi/package.json b/packages/vinxi/package.json index 1995aafb..2b4424db 100644 --- a/packages/vinxi/package.json +++ b/packages/vinxi/package.json @@ -176,6 +176,7 @@ }, "devDependencies": { "@types/node": "^18.17.11", + "@types/resolve": "^1.20.6", "prettier": "^2.8.8" } } diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index 3600d8fa..50188339 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -95,7 +95,7 @@ importers: version: 0.7.41(rollup@4.2.0)(vite@4.5.0) vite-tsconfig-paths: specifier: ^4.2.0 - version: 4.2.1(typescript@5.1.6)(vite@4.5.0) + version: 4.2.1(typescript@5.0.4)(vite@4.5.0) wouter: specifier: ^2.11.0 version: 2.12.1(react@0.0.0-experimental-dddfe6882-20231005) @@ -119,7 +119,7 @@ importers: specifier: ^1.5.10 version: 1.5.10 '@vinxi/react-server': - specifier: 0.0.28 + specifier: 0.0.33 version: link:../../../../packages/vinxi-react-server '@vinxi/react-server-dom': specifier: 0.0.3 @@ -159,10 +159,10 @@ importers: specifier: 0.0.3 version: 0.0.3(react-dom@0.0.0-experimental-035a41c4e-20230704)(react@0.0.0-experimental-035a41c4e-20230704)(vite@4.5.0) '@vinxi/server-components': - specifier: 0.0.40 + specifier: 0.0.44 version: link:../../../../packages/vinxi-server-components '@vinxi/server-functions': - specifier: 0.0.40 + specifier: 0.0.45 version: link:../../../../packages/vinxi-server-functions '@vitejs/plugin-react': specifier: ^4.0.4 @@ -762,7 +762,7 @@ importers: specifier: ^1.5.10 version: 1.5.10 '@vinxi/server-functions': - specifier: 0.0.40 + specifier: 0.0.45 version: link:../../../packages/vinxi-server-functions autoprefixer: specifier: ^10.4.15 @@ -780,7 +780,7 @@ importers: specifier: ^1.5.10 version: 1.5.10 '@vinxi/server-functions': - specifier: 0.0.40 + specifier: 0.0.45 version: link:../../../packages/vinxi-server-functions '@vitejs/plugin-react': specifier: ^4.0.4 @@ -979,6 +979,9 @@ importers: '@types/node': specifier: ^18.17.11 version: 18.18.8 + '@types/resolve': + specifier: ^1.20.6 + version: 1.20.6 prettier: specifier: ^2.8.8 version: 2.8.8 @@ -1082,6 +1085,9 @@ importers: packages/vinxi-directives: dependencies: + '@babel/parser': + specifier: ^7.23.5 + version: 7.23.5 acorn: specifier: ^8.10.0 version: 8.11.2 @@ -1200,10 +1206,10 @@ importers: specifier: ^0.0.3 version: 0.0.3(react-dom@0.0.0-experimental-035a41c4e-20230704)(react@0.0.0-experimental-035a41c4e-20230704)(vite@4.5.0) '@vinxi/server-components': - specifier: 0.0.40 + specifier: 0.0.44 version: link:../vinxi-server-components '@vinxi/server-functions': - specifier: 0.0.40 + specifier: 0.0.45 version: link:../vinxi-server-functions '@vitejs/plugin-react': specifier: ^4.0.4 @@ -1229,7 +1235,7 @@ importers: version: 6.2.1 vite-tsconfig-paths: specifier: ^4.2.0 - version: 4.2.1(typescript@5.1.6)(vite@4.5.0) + version: 4.2.1(typescript@5.1.6) devDependencies: vinxi: specifier: 0.0.48 @@ -1238,7 +1244,7 @@ importers: packages/vinxi-server-components: dependencies: '@vinxi/plugin-directives': - specifier: 0.0.40 + specifier: 0.0.44 version: link:../vinxi-directives acorn: specifier: ^8.10.0 @@ -1269,7 +1275,7 @@ importers: packages/vinxi-server-functions: dependencies: '@vinxi/plugin-directives': - specifier: 0.0.40 + specifier: 0.0.44 version: link:../vinxi-directives acorn: specifier: ^8.10.0 @@ -1416,10 +1422,10 @@ importers: specifier: 0.0.3 version: 0.0.3(react-dom@0.0.0-experimental-035a41c4e-20230704)(react@0.0.0-experimental-035a41c4e-20230704)(vite@4.5.0) '@vinxi/server-components': - specifier: 0.0.40 + specifier: 0.0.44 version: link:../../../packages/vinxi-server-components '@vinxi/server-functions': - specifier: 0.0.40 + specifier: 0.0.45 version: link:../../../packages/vinxi-server-functions '@vitejs/plugin-react': specifier: ^4.0.4 @@ -1711,7 +1717,7 @@ packages: resolution: {integrity: sha512-oLcVCTeIFadUoArDTwpluncplrYBmTCCZZgXCbgNGvOBBiSDDK3eWO4b/+eOTli5tKv1lg+a5/NAXg+nTcei1w==} engines: {node: '>=6.9.0'} dependencies: - '@babel/types': 7.17.0 + '@babel/types': 7.23.0 jsesc: 2.5.2 source-map: 0.5.7 dev: true @@ -1887,7 +1893,15 @@ packages: engines: {node: '>=6.0.0'} hasBin: true dependencies: - '@babel/types': 7.17.0 + '@babel/types': 7.23.0 + + /@babel/parser@7.23.5: + resolution: {integrity: sha512-hOOqoiNXrmGdFbhgCzu6GiURxUgM27Xwd/aPuu8RfHEZPBzL1Z54okAHAQjXfcQNwvrlkAmAp4SlRTZ45vlthQ==} + engines: {node: '>=6.0.0'} + hasBin: true + dependencies: + '@babel/types': 7.23.0 + dev: false /@babel/plugin-syntax-jsx@7.22.5(@babel/core@7.23.2): resolution: {integrity: sha512-gvyP4hZrgrs/wWMaocvxZ44Hw0b3W8Pe+cMxc8V1ULQ07oh8VNbIRaoD1LRZVTvD+0nieDKjfgKg89sD7rrKrg==} @@ -2027,6 +2041,7 @@ packages: dependencies: '@babel/helper-validator-identifier': 7.22.20 to-fast-properties: 2.0.0 + dev: true /@babel/types@7.23.0: resolution: {integrity: sha512-0oIyUfKoI3mSqMvsxBdclDwxXKXAUA8v/apZbc+iSyARYou1o8ZGDxbUYyLFoW2arqS2jDGqJuZvv1d/io1axg==} @@ -5585,6 +5600,10 @@ packages: resolution: {integrity: sha512-BKGK0T1VgB1zD+PwQR4RRf0ais3NyvH1qjLUrHI5SEiccYaJrhLstLuoXFWJ+2Op9whGizSPUMGPJY/Qtb/A2w==} dev: true + /@types/resolve@1.20.6: + resolution: {integrity: sha512-A4STmOXPhMUtHH+S6ymgE2GiBSMqf4oTvcQZMcHzokuTLVYzXTB8ttjcgxOVaAp2lGwEdzZ0J+cRbbeevQj1UQ==} + dev: true + /@types/scheduler@0.16.5: resolution: {integrity: sha512-s/FPdYRmZR8SjLWGMCuax7r3qCWQw9QKHzXVukAuuIJkXkDRwp+Pu5LMIVFi0Fxbav35WURicYr8u1QsoybnQw==} @@ -8866,7 +8885,7 @@ packages: /magicast@0.2.11: resolution: {integrity: sha512-6saXbRDA1HMkqbsvHOU6HBjCVgZT460qheRkLhJQHWAbhXoWESI3Kn/dGGXyKs15FFKR85jsUqFx2sMK0wy/5g==} dependencies: - '@babel/parser': 7.23.0 + '@babel/parser': 7.23.5 '@babel/types': 7.23.0 recast: 0.23.4 dev: false @@ -11185,6 +11204,19 @@ packages: /ts-interface-checker@0.1.13: resolution: {integrity: sha512-Y/arvbn+rrz3JCKl9C4kVNfTfSm2/mEp5FSz5EsZSANGPSlQrpRI5M4PKF+mJnE52jOO90PnPSc3Ur3bTQw0gA==} + /tsconfck@2.1.2(typescript@5.0.4): + resolution: {integrity: sha512-ghqN1b0puy3MhhviwO2kGF8SeMDNhEbnKxjK7h6+fvY9JAxqvXi8y5NAHSQv687OVboS2uZIByzGd45/YxrRHg==} + engines: {node: ^14.13.1 || ^16 || >=18} + hasBin: true + peerDependencies: + typescript: ^4.3.5 || ^5.0.0 + peerDependenciesMeta: + typescript: + optional: true + dependencies: + typescript: 5.0.4 + dev: false + /tsconfck@2.1.2(typescript@5.1.6): resolution: {integrity: sha512-ghqN1b0puy3MhhviwO2kGF8SeMDNhEbnKxjK7h6+fvY9JAxqvXi8y5NAHSQv687OVboS2uZIByzGd45/YxrRHg==} engines: {node: ^14.13.1 || ^16 || >=18} @@ -12003,7 +12035,7 @@ packages: - supports-color dev: false - /vite-tsconfig-paths@4.2.1(typescript@5.1.6)(vite@4.5.0): + /vite-tsconfig-paths@4.2.1(typescript@5.0.4)(vite@4.5.0): resolution: {integrity: sha512-GNUI6ZgPqT3oervkvzU+qtys83+75N/OuDaQl7HmOqFTb0pjZsuARrRipsyJhJ3enqV8beI1xhGbToR4o78nSQ==} peerDependencies: vite: '*' @@ -12013,13 +12045,29 @@ packages: dependencies: debug: 4.3.4 globrex: 0.1.2 - tsconfck: 2.1.2(typescript@5.1.6) + tsconfck: 2.1.2(typescript@5.0.4) vite: 4.5.0(@types/node@14.18.63) transitivePeerDependencies: - supports-color - typescript dev: false + /vite-tsconfig-paths@4.2.1(typescript@5.1.6): + resolution: {integrity: sha512-GNUI6ZgPqT3oervkvzU+qtys83+75N/OuDaQl7HmOqFTb0pjZsuARrRipsyJhJ3enqV8beI1xhGbToR4o78nSQ==} + peerDependencies: + vite: '*' + peerDependenciesMeta: + vite: + optional: true + dependencies: + debug: 4.3.4 + globrex: 0.1.2 + tsconfck: 2.1.2(typescript@5.1.6) + transitivePeerDependencies: + - supports-color + - typescript + dev: false + /vite@4.3.9(@types/node@18.18.8): resolution: {integrity: sha512-qsTNZjO9NoJNW7KnOrgYwczm0WctJ8m/yqYAMAK9Lxt4SoySUfS5S8ia9K7JHpa3KEeMfyF8LoJ3c5NeBJy6pg==} engines: {node: ^14.18.0 || >=16.0.0}