From 5bfeebbcccb6a73fb2e4a18f89a1c4abe1c4ec66 Mon Sep 17 00:00:00 2001 From: shiro Date: Thu, 28 Mar 2024 09:47:29 +0900 Subject: [PATCH] Add article loading --- .gitignore | 2 +- app.config.ts | 5 + package.json | 31 ++-- src/app.tsx | 75 ++++---- .../articles/2024-03-25-starting-a-blog.mdx | 0 ...03-30-maping-chord-key-combos-on-linux.mdx | 0 src/entry-server.tsx | 37 ++-- src/routes/index.tsx | 28 +-- src/ssg/getArticles.ssg.ts | 18 ++ src/ssg/getArticles.ts | 1 + yarn.lock | 173 +++++++++++++++++- 11 files changed, 275 insertions(+), 95 deletions(-) rename src/{routes => }/articles/2024-03-25-starting-a-blog.mdx (100%) rename src/{routes => }/articles/2024-03-30-maping-chord-key-combos-on-linux.mdx (100%) create mode 100644 src/ssg/getArticles.ssg.ts create mode 100644 src/ssg/getArticles.ts diff --git a/.gitignore b/.gitignore index e3020c1..355f6ed 100644 --- a/.gitignore +++ b/.gitignore @@ -1,4 +1,4 @@ node_modules/ .output/ .vinxi/ -app.config.timestamp.* +app.config.timestamp* diff --git a/app.config.ts b/app.config.ts index 0e2d8ef..4e37e01 100644 --- a/app.config.ts +++ b/app.config.ts @@ -3,6 +3,7 @@ import { nodeTypes } from "@mdx-js/mdx"; import { linariaVitePlugin } from "./vite/linariaVitePlugin"; import remarkShikiTwoslash from "remark-shiki-twoslash"; import rehypeRaw from "rehype-raw"; +import compileTime from "vite-plugin-compile-time" // @ts-ignore import _mdx from "@vinxi/plugin-mdx"; @@ -48,6 +49,7 @@ export default defineConfig({ return { css: { postcss: "./postcss.config.js" }, plugins: [ + compileTime(), mdx.withImports({})({ jsx: true, jsxImportSource: "solid-js", @@ -105,3 +107,6 @@ export default defineConfig({ }; }, }); + +// solid next: +// https://github.com/solidjs/solid-docs-next/blob/fc5ec0b803f0ae2a9deb55e1c6fb7c2c60b46c87/app.config.ts diff --git a/package.json b/package.json index dad9d44..54eeef0 100644 --- a/package.json +++ b/package.json @@ -9,28 +9,29 @@ "version": "vinxi version" }, "dependencies": { + "@babel/plugin-transform-export-namespace-from": "7.24.1", + "@babel/preset-typescript": "7.24.1", + "@linaria/core": "6.1.0", + "@mdx-js/mdx": "3.0.1", "@solidjs/meta": "^0.29.2", - "@wyw-in-js/vite": "0.5.0", - "typescript": "5.4.3", "@solidjs/router": "^0.13.1", - "tailwindcss": "3.4.1", - "remark-shiki-twoslash": "^3.1.3", - "@linaria/core": "6.1.0", "@solidjs/start": "^1.0.0-rc.0", - "solid-js": "^1.8.16", + "@vinxi/plugin-mdx": "3.7.1", + "@wyw-in-js/vite": "0.5.0", "babel-plugin-transform-remove-imports": "1.7.1", - "@babel/plugin-transform-export-namespace-from": "7.24.1", - "@babel/preset-typescript": "7.24.1", - "@mdx-js/mdx": "3.0.1", - "solid-mdx": "0.0.7", - "rehype-raw": "^6.1.1", - "postcss-preset-env": "9.4.0", - "solid-labels": "0.16.0", "cssnano": "6.1.0", + "postcss-preset-env": "9.4.0", "postcss-pxtorem": "6.1.0", + "rehype-raw": "^6.1.1", + "remark-shiki-twoslash": "^3.1.3", "sass": "1.72.0", - "@vinxi/plugin-mdx": "3.7.1", - "vinxi": "^0.3.11" + "solid-js": "^1.8.16", + "solid-labels": "0.16.0", + "solid-mdx": "0.0.7", + "tailwindcss": "3.4.1", + "typescript": "5.4.3", + "vinxi": "^0.3.11", + "vite-plugin-compile-time": "0.2.1" }, "engines": { "node": ">=18" diff --git a/src/app.tsx b/src/app.tsx index cd3ac49..fd1921d 100644 --- a/src/app.tsx +++ b/src/app.tsx @@ -1,21 +1,16 @@ +import { css } from "@linaria/core"; import { MetaProvider, Title } from "@solidjs/meta"; -import { Router } from "@solidjs/router"; -import { FileRoutes } from "@solidjs/start/router"; +import { RouteDefinition, Router } from "@solidjs/router"; import { Suspense, lazy } from "solid-js"; -import { css } from "@linaria/core"; +import { config } from "~/config"; import "~/style/global.style"; import "./app.css"; -import { config } from "~/config"; const Foo = lazy(() => import("~/routes/index")); -const Article2 = lazy( - () => - import("~/routes/articles/2024-03-25-starting-a-blog.mdx"), -); -const Article = lazy( - () => - import("~/routes/articles/2024-03-30-maping-chord-key-combos-on-linux.mdx"), -); + +const articlesImportMap = import.meta.glob("./articles/*.mdx"); +const getArticleComponent = (name: string) => + articlesImportMap[`./articles/${name}.mdx`]; export default function App() { return ( @@ -35,36 +30,34 @@ export default function App() { )} > - {[ - { path: "/", component: () => }, - { - path: "/articles/:name", - component: (p) => { - return ( - { - return hi; - }, - }} - {...p} /> - ); + { + [ + { path: "/", component: () => }, + { + path: "/articles/:name", + component: (p) => { + // router bug: 'name' not in 'p', update when this is fixed + const name = p.location.pathname.replace("/articles/", ""); + const Article = lazy(getArticleComponent(name) as any); + return ( +
{ + // return hi; + // }, + } + } + {...p} + /> + ); + }, + matchFilters: { + name: (name: string) => !!getArticleComponent(name), + }, }, - }, - { - path: "/articles/2024-03-30-maping-chord-key-combos-on-linux", - component: () => ( -
{ - return hi; - }, - }} - /> - ), - }, - ]} - {/* */} + ] as RouteDefinition[] + } ); } diff --git a/src/routes/articles/2024-03-25-starting-a-blog.mdx b/src/articles/2024-03-25-starting-a-blog.mdx similarity index 100% rename from src/routes/articles/2024-03-25-starting-a-blog.mdx rename to src/articles/2024-03-25-starting-a-blog.mdx diff --git a/src/routes/articles/2024-03-30-maping-chord-key-combos-on-linux.mdx b/src/articles/2024-03-30-maping-chord-key-combos-on-linux.mdx similarity index 100% rename from src/routes/articles/2024-03-30-maping-chord-key-combos-on-linux.mdx rename to src/articles/2024-03-30-maping-chord-key-combos-on-linux.mdx diff --git a/src/entry-server.tsx b/src/entry-server.tsx index a61c52e..7f660fb 100644 --- a/src/entry-server.tsx +++ b/src/entry-server.tsx @@ -2,21 +2,22 @@ import { createHandler, StartServer } from "@solidjs/start/server"; import { config } from "~/config"; -export default createHandler(() => ( - ( - - - - - - {assets} - - -
{children}
- {scripts} - - - )} - /> -)); +export default createHandler(() => { + return ( + ( + + + + + + {assets} + + +
{children}
+ {scripts} + + + )} /> + ); +}); diff --git a/src/routes/index.tsx b/src/routes/index.tsx index 41e09a8..ccbdd42 100644 --- a/src/routes/index.tsx +++ b/src/routes/index.tsx @@ -1,24 +1,12 @@ -import { For } from "solid-js/web"; import { Title } from "@solidjs/meta"; -import Counter from "~/components/Counter"; +import { For, NoHydration } from "solid-js/web"; import Text from "~/atoms/Text.md"; -import fs from "fs"; -import path from "path"; -import { NoHydration } from "solid-js/web"; -import { config } from "~/config"; +import Counter from "~/components/Counter"; +import { getArticles } from "~/ssg/getArticles"; -const base = "./src/routes/articles"; -const list = () => { - "use server"; - return fs.readdirSync(base).map((x) => { - const raw = fs.readFileSync(path.join(base, x)).toString(); - const title = raw.split("\n")[0].slice(2); - const url = `${config.base}/articles/${x.split(".")[0]}`; - return { title, url }; - }); -}; +const list = getArticles(); -export default function Home() { +const List = () => { return (
Hello World @@ -26,7 +14,7 @@ export default function Home() {
    - + {(item) => (
  • {item.title} @@ -45,4 +33,6 @@ export default function Home() {

); -} +}; + +export default List; diff --git a/src/ssg/getArticles.ssg.ts b/src/ssg/getArticles.ssg.ts new file mode 100644 index 0000000..7744749 --- /dev/null +++ b/src/ssg/getArticles.ssg.ts @@ -0,0 +1,18 @@ +import fs from "fs"; +import path from "path"; + +const base = "./src/articles"; +export const getArticlesSSG = () => { + return fs.readdirSync(base).map((x) => { + const raw = fs.readFileSync(path.join(base, x)).toString(); + const title = raw.split("\n")[0].slice(2); + const url = `/articles/${x.split(".")[0]}`; + return { title, url }; + }); +}; + +export default async () => { + return { + data: getArticlesSSG(), + } +} diff --git a/src/ssg/getArticles.ts b/src/ssg/getArticles.ts new file mode 100644 index 0000000..daaf642 --- /dev/null +++ b/src/ssg/getArticles.ts @@ -0,0 +1 @@ +export const getArticles = () => import.meta.compileTime("./getArticles.ssg.ts"); diff --git a/yarn.lock b/yarn.lock index 0d502ca..32c1f0d 100644 --- a/yarn.lock +++ b/yarn.lock @@ -637,6 +637,11 @@ "@deno/shim-deno-test" "^0.5.0" which "^4.0.0" +"@esbuild/aix-ppc64@0.19.12": + version "0.19.12" + resolved "https://registry.npmjs.org/@esbuild/aix-ppc64/-/aix-ppc64-0.19.12.tgz#d1bc06aedb6936b3b6d313bf809a5a40387d2b7f" + integrity sha512-bmoCYyWdEL3wDQIVbcyzRyeKLgk2WtWLTWz1ZIAZF/EGbNOwSA6ew3PftJ1PqMiOOGu0OyFMzG53L0zqIpPeNA== + "@esbuild/aix-ppc64@0.20.2": version "0.20.2" resolved "https://registry.npmjs.org/@esbuild/aix-ppc64/-/aix-ppc64-0.20.2.tgz#a70f4ac11c6a1dfc18b8bbb13284155d933b9537" @@ -652,6 +657,11 @@ resolved "https://registry.npmjs.org/@esbuild/android-arm64/-/android-arm64-0.18.7.tgz#18c9206e00ecaf914c003ab7d65ff62965ba521f" integrity sha512-o0VVztxJPkfDYbaU1tA1G1iwKiBh6Zt3bX5OdHDoITMFdRg+Mgdt3nHXMEtNlIjYA/Xn6hmlOYDHjJfQUduPuw== +"@esbuild/android-arm64@0.19.12": + version "0.19.12" + resolved "https://registry.npmjs.org/@esbuild/android-arm64/-/android-arm64-0.19.12.tgz#7ad65a36cfdb7e0d429c353e00f680d737c2aed4" + integrity sha512-P0UVNGIienjZv3f5zq0DP3Nt2IE/3plFzuaS96vihvD0Hd6H/q4WXUGpCxD/E8YrSXfNyRPbpTq+T8ZQioSuPA== + "@esbuild/android-arm64@0.20.2": version "0.20.2" resolved "https://registry.npmjs.org/@esbuild/android-arm64/-/android-arm64-0.20.2.tgz#db1c9202a5bc92ea04c7b6840f1bbe09ebf9e6b9" @@ -667,6 +677,11 @@ resolved "https://registry.npmjs.org/@esbuild/android-arm/-/android-arm-0.18.7.tgz#dcdbaa2c56d3ca6de7601f2df2c5bc4e6893c325" integrity sha512-nDQ7AC5WVKOqxaip/E5YbaRgnilBMsoGKjoGLCeCOYNePaBCBDwJsLfa2fn3FEtktiLaAF990W592avsHjJ/Vg== +"@esbuild/android-arm@0.19.12": + version "0.19.12" + resolved "https://registry.npmjs.org/@esbuild/android-arm/-/android-arm-0.19.12.tgz#b0c26536f37776162ca8bde25e42040c203f2824" + integrity sha512-qg/Lj1mu3CdQlDEEiWrlC4eaPZ1KztwGJ9B6J+/6G+/4ewxJg7gqj8eVYWvao1bXrqGiW2rsBZFSX3q2lcW05w== + "@esbuild/android-arm@0.20.2": version "0.20.2" resolved "https://registry.npmjs.org/@esbuild/android-arm/-/android-arm-0.20.2.tgz#3b488c49aee9d491c2c8f98a909b785870d6e995" @@ -682,6 +697,11 @@ resolved "https://registry.npmjs.org/@esbuild/android-x64/-/android-x64-0.18.7.tgz#3295674459a520bf6a8fe1cb0e8261adf3cd5690" integrity sha512-ga8Dtpb01GorCi1dk3jEwDk3AK/3F+cR5P+//Tl0ERL2K2pK/J1f3t8hcJ+RRt3UYBV/uTL9GEnx7touX0KRPQ== +"@esbuild/android-x64@0.19.12": + version "0.19.12" + resolved "https://registry.npmjs.org/@esbuild/android-x64/-/android-x64-0.19.12.tgz#cb13e2211282012194d89bf3bfe7721273473b3d" + integrity sha512-3k7ZoUW6Q6YqhdhIaq/WZ7HwBpnFBlW905Fa4s4qWJyiNOgT1dOqDiVAQFwBH7gBRZr17gLrlFCRzF6jFh7Kew== + "@esbuild/android-x64@0.20.2": version "0.20.2" resolved "https://registry.npmjs.org/@esbuild/android-x64/-/android-x64-0.20.2.tgz#3b1628029e5576249d2b2d766696e50768449f98" @@ -697,6 +717,11 @@ resolved "https://registry.npmjs.org/@esbuild/darwin-arm64/-/darwin-arm64-0.18.7.tgz#8561468e17d3271a634b6c1281e201b463fc10be" integrity sha512-FVDOdfgyGOOISpd0b+UtA6YNbu5+RzZu7kDztjVsA/iZhGnyxbCR/vZ+B2j5yxbMZ9j3iz5uFiHIq1sl6nrZ0Q== +"@esbuild/darwin-arm64@0.19.12": + version "0.19.12" + resolved "https://registry.npmjs.org/@esbuild/darwin-arm64/-/darwin-arm64-0.19.12.tgz#cbee41e988020d4b516e9d9e44dd29200996275e" + integrity sha512-B6IeSgZgtEzGC42jsI+YYu9Z3HKRxp8ZT3cqhvliEHovq8HSX2YX8lNocDn79gCKJXOSaEot9MVYky7AKjCs8g== + "@esbuild/darwin-arm64@0.20.2": version "0.20.2" resolved "https://registry.npmjs.org/@esbuild/darwin-arm64/-/darwin-arm64-0.20.2.tgz#6e8517a045ddd86ae30c6608c8475ebc0c4000bb" @@ -712,6 +737,11 @@ resolved "https://registry.npmjs.org/@esbuild/darwin-x64/-/darwin-x64-0.18.7.tgz#9ad104e7cddbca36da7474a039bb557d33616fbd" integrity sha512-w7aeD1UjDFXqyrZQLBIPYGmLR+gJsl+7QSwmSz+nVrCZOB7cyWEkIjCF8s4inUD3ja3WtKUIqzX5S4qDnU5q7Q== +"@esbuild/darwin-x64@0.19.12": + version "0.19.12" + resolved "https://registry.npmjs.org/@esbuild/darwin-x64/-/darwin-x64-0.19.12.tgz#e37d9633246d52aecf491ee916ece709f9d5f4cd" + integrity sha512-hKoVkKzFiToTgn+41qGhsUJXFlIjxI/jSYeZf3ugemDYZldIXIxhvwN6erJGlX4t5h417iFuheZ7l+YVn05N3A== + "@esbuild/darwin-x64@0.20.2": version "0.20.2" resolved "https://registry.npmjs.org/@esbuild/darwin-x64/-/darwin-x64-0.20.2.tgz#90ed098e1f9dd8a9381695b207e1cff45540a0d0" @@ -727,6 +757,11 @@ resolved "https://registry.npmjs.org/@esbuild/freebsd-arm64/-/freebsd-arm64-0.18.7.tgz#7a34ab611dd27f25fbc14587e2c64b6447c2d25c" integrity sha512-wKyySDdoKVOPn9eDci/b3eP3EJVAVXC3b2CiaHphhCKfh4n5pWLwj7Ue96anK1HnpcZ0Uti8Sw9xq3Im0earHA== +"@esbuild/freebsd-arm64@0.19.12": + version "0.19.12" + resolved "https://registry.npmjs.org/@esbuild/freebsd-arm64/-/freebsd-arm64-0.19.12.tgz#1ee4d8b682ed363b08af74d1ea2b2b4dbba76487" + integrity sha512-4aRvFIXmwAcDBw9AueDQ2YnGmz5L6obe5kmPT8Vd+/+x/JMVKCgdcRwH6APrbpNXsPz+K653Qg8HB/oXvXVukA== + "@esbuild/freebsd-arm64@0.20.2": version "0.20.2" resolved "https://registry.npmjs.org/@esbuild/freebsd-arm64/-/freebsd-arm64-0.20.2.tgz#d71502d1ee89a1130327e890364666c760a2a911" @@ -742,6 +777,11 @@ resolved "https://registry.npmjs.org/@esbuild/freebsd-x64/-/freebsd-x64-0.18.7.tgz#8eb59bf0015e4abd5ce3fc16094eb11174167b83" integrity sha512-rbfjbgSvzWRjQMKIntogK1d2oIAiA/ZVayXfK1WjcIIMQYLg74sAoT8CZBj30+bwn13YR0t6lgIxA1mJaS2Lhw== +"@esbuild/freebsd-x64@0.19.12": + version "0.19.12" + resolved "https://registry.npmjs.org/@esbuild/freebsd-x64/-/freebsd-x64-0.19.12.tgz#37a693553d42ff77cd7126764b535fb6cc28a11c" + integrity sha512-EYoXZ4d8xtBoVN7CEwWY2IN4ho76xjYXqSXMNccFSx2lgqOG/1TBPW0yPx1bJZk94qu3tX0fycJeeQsKovA8gg== + "@esbuild/freebsd-x64@0.20.2": version "0.20.2" resolved "https://registry.npmjs.org/@esbuild/freebsd-x64/-/freebsd-x64-0.20.2.tgz#aa5ea58d9c1dd9af688b8b6f63ef0d3d60cea53c" @@ -757,6 +797,11 @@ resolved "https://registry.npmjs.org/@esbuild/linux-arm64/-/linux-arm64-0.18.7.tgz#67e406650867cff9a1efc738495180d93de2c50f" integrity sha512-cwfxKYroaD5BZ42NsfxdVU1issD2NxcuJHlCNsN5LtWq+kZMpwmIVDCJxKlgLIG7zH/4yq8lTuZJurxq058GsA== +"@esbuild/linux-arm64@0.19.12": + version "0.19.12" + resolved "https://registry.npmjs.org/@esbuild/linux-arm64/-/linux-arm64-0.19.12.tgz#be9b145985ec6c57470e0e051d887b09dddb2d4b" + integrity sha512-EoTjyYyLuVPfdPLsGVVVC8a0p1BFFvtpQDB/YLEhaXyf/5bczaGeN15QkR+O4S5LeJ92Tqotve7i1jn35qwvdA== + "@esbuild/linux-arm64@0.20.2": version "0.20.2" resolved "https://registry.npmjs.org/@esbuild/linux-arm64/-/linux-arm64-0.20.2.tgz#055b63725df678379b0f6db9d0fa85463755b2e5" @@ -772,6 +817,11 @@ resolved "https://registry.npmjs.org/@esbuild/linux-arm/-/linux-arm-0.18.7.tgz#41a753d07dbac2204e50f61e3c76a5f3182237f2" integrity sha512-GpUBqqJnQ+7qdb7NqKNVj7TgD2JnLrEdzPtatPow77Me/EQ01GE1tHKZLePqhf5thdLDb5Se2Kcf4D9WTbSjmw== +"@esbuild/linux-arm@0.19.12": + version "0.19.12" + resolved "https://registry.npmjs.org/@esbuild/linux-arm/-/linux-arm-0.19.12.tgz#207ecd982a8db95f7b5279207d0ff2331acf5eef" + integrity sha512-J5jPms//KhSNv+LO1S1TX1UWp1ucM6N6XuL6ITdKWElCu8wXP72l9MM0zDTzzeikVyqFE6U8YAV9/tFyj0ti+w== + "@esbuild/linux-arm@0.20.2": version "0.20.2" resolved "https://registry.npmjs.org/@esbuild/linux-arm/-/linux-arm-0.20.2.tgz#76b3b98cb1f87936fbc37f073efabad49dcd889c" @@ -787,6 +837,11 @@ resolved "https://registry.npmjs.org/@esbuild/linux-ia32/-/linux-ia32-0.18.7.tgz#d868c1fe7fb36afbf38a8334a3e203c1cdee4ed7" integrity sha512-SsvsGStwbArBcB/XNh+2MvUtgOLp0CR6Hn1PBWcdApCuAaMibHCDyzHS06+u/YOD1UpeXFHJZphix61HeVMH/w== +"@esbuild/linux-ia32@0.19.12": + version "0.19.12" + resolved "https://registry.npmjs.org/@esbuild/linux-ia32/-/linux-ia32-0.19.12.tgz#d0d86b5ca1562523dc284a6723293a52d5860601" + integrity sha512-Thsa42rrP1+UIGaWz47uydHSBOgTUnwBwNq59khgIwktK6x60Hivfbux9iNR0eHCHzOLjLMLfUMLCypBkZXMHA== + "@esbuild/linux-ia32@0.20.2": version "0.20.2" resolved "https://registry.npmjs.org/@esbuild/linux-ia32/-/linux-ia32-0.20.2.tgz#c0e5e787c285264e5dfc7a79f04b8b4eefdad7fa" @@ -802,6 +857,11 @@ resolved "https://registry.npmjs.org/@esbuild/linux-loong64/-/linux-loong64-0.18.7.tgz#b97efda817ed11bc37bf30de32a7a39988dbf20a" integrity sha512-WOqQ0eaWGE/e9vmbxFT2exbWuXxHuG8ld0fN7oX5f0v7W6oveUIF4DLJYVae93t1+Icv5R0NBo8wv/o4hEvxBQ== +"@esbuild/linux-loong64@0.19.12": + version "0.19.12" + resolved "https://registry.npmjs.org/@esbuild/linux-loong64/-/linux-loong64-0.19.12.tgz#9a37f87fec4b8408e682b528391fa22afd952299" + integrity sha512-LiXdXA0s3IqRRjm6rV6XaWATScKAXjI4R4LoDlvO7+yQqFdlr1Bax62sRwkVvRIrwXxvtYEHHI4dm50jAXkuAA== + "@esbuild/linux-loong64@0.20.2": version "0.20.2" resolved "https://registry.npmjs.org/@esbuild/linux-loong64/-/linux-loong64-0.20.2.tgz#a6184e62bd7cdc63e0c0448b83801001653219c5" @@ -817,6 +877,11 @@ resolved "https://registry.npmjs.org/@esbuild/linux-mips64el/-/linux-mips64el-0.18.7.tgz#2f27021be14d7dd2a6286996c4337c705a8c2c5f" integrity sha512-/dKQ3OLr2Tmj0kuf4ZJioD+qnADUEJSBaiuDbk8v5602HnNNBSGHPrEB6S8PSb8y8jWsX9MMnxqk5KpLTf86OQ== +"@esbuild/linux-mips64el@0.19.12": + version "0.19.12" + resolved "https://registry.npmjs.org/@esbuild/linux-mips64el/-/linux-mips64el-0.19.12.tgz#4ddebd4e6eeba20b509d8e74c8e30d8ace0b89ec" + integrity sha512-fEnAuj5VGTanfJ07ff0gOA6IPsvrVHLVb6Lyd1g2/ed67oU1eFzL0r9WL7ZzscD+/N6i3dWumGE1Un4f7Amf+w== + "@esbuild/linux-mips64el@0.20.2": version "0.20.2" resolved "https://registry.npmjs.org/@esbuild/linux-mips64el/-/linux-mips64el-0.20.2.tgz#d08e39ce86f45ef8fc88549d29c62b8acf5649aa" @@ -832,6 +897,11 @@ resolved "https://registry.npmjs.org/@esbuild/linux-ppc64/-/linux-ppc64-0.18.7.tgz#faea79660896105276d95a3ca06156b8e41f5517" integrity sha512-x/k1+daIqiGJt0Yhr5llFJ/zkRg1XAqcS2ntAYzS3pHogO8oIyc+LjsINgVyFCeFMFUZ9Ae9W5z2Ib05bMum3g== +"@esbuild/linux-ppc64@0.19.12": + version "0.19.12" + resolved "https://registry.npmjs.org/@esbuild/linux-ppc64/-/linux-ppc64-0.19.12.tgz#adb67dadb73656849f63cd522f5ecb351dd8dee8" + integrity sha512-nYJA2/QPimDQOh1rKWedNOe3Gfc8PabU7HT3iXWtNUbRzXS9+vgB0Fjaqr//XNbd82mCxHzik2qotuI89cfixg== + "@esbuild/linux-ppc64@0.20.2": version "0.20.2" resolved "https://registry.npmjs.org/@esbuild/linux-ppc64/-/linux-ppc64-0.20.2.tgz#8d252f0b7756ffd6d1cbde5ea67ff8fd20437f20" @@ -847,6 +917,11 @@ resolved "https://registry.npmjs.org/@esbuild/linux-riscv64/-/linux-riscv64-0.18.7.tgz#7047a31f042fefd25dd9266086d90cd44d2474c7" integrity sha512-LegTDzK9gL/sTkiZUGYLigTISwppZJvQL3MRmFgXgHrj3IzdWkPgMwEtOItK3YiFzhBSSNyKA0mSKEg4UuK8JQ== +"@esbuild/linux-riscv64@0.19.12": + version "0.19.12" + resolved "https://registry.npmjs.org/@esbuild/linux-riscv64/-/linux-riscv64-0.19.12.tgz#11bc0698bf0a2abf8727f1c7ace2112612c15adf" + integrity sha512-2MueBrlPQCw5dVJJpQdUYgeqIzDQgw3QtiAHUC4RBz9FXPrskyyU3VI1hw7C0BSKB9OduwSJ79FTCqtGMWqJHg== + "@esbuild/linux-riscv64@0.20.2": version "0.20.2" resolved "https://registry.npmjs.org/@esbuild/linux-riscv64/-/linux-riscv64-0.20.2.tgz#19f6dcdb14409dae607f66ca1181dd4e9db81300" @@ -862,6 +937,11 @@ resolved "https://registry.npmjs.org/@esbuild/linux-s390x/-/linux-s390x-0.18.7.tgz#77a3c952b19006af2e288658d3c29fb6c02c9bcb" integrity sha512-fjBl45O8ivc3Nl14hdGpbHoVtdHnYGsLpwnlv2rNyb5NOsgY3Y8EhVe/fqR9ndHgO4eL68knKxkrRveEJq+v1g== +"@esbuild/linux-s390x@0.19.12": + version "0.19.12" + resolved "https://registry.npmjs.org/@esbuild/linux-s390x/-/linux-s390x-0.19.12.tgz#e86fb8ffba7c5c92ba91fc3b27ed5a70196c3cc8" + integrity sha512-+Pil1Nv3Umes4m3AZKqA2anfhJiVmNCYkPchwFJNEJN5QxmTs1uzyy4TvmDrCRNT2ApwSari7ZIgrPeUx4UZDg== + "@esbuild/linux-s390x@0.20.2": version "0.20.2" resolved "https://registry.npmjs.org/@esbuild/linux-s390x/-/linux-s390x-0.20.2.tgz#3c830c90f1a5d7dd1473d5595ea4ebb920988685" @@ -877,6 +957,11 @@ resolved "https://registry.npmjs.org/@esbuild/linux-x64/-/linux-x64-0.18.7.tgz#bcbec77a8cb23975995edbcce1583001bdde1cf6" integrity sha512-apYLJsg3wd3hW8nEt7H++8c8rTDvwXxX7h7YeI89g1RDPCT2QSXTO/xT1BCvFa/BFFoau+yvepQg2o5556FIWQ== +"@esbuild/linux-x64@0.19.12": + version "0.19.12" + resolved "https://registry.npmjs.org/@esbuild/linux-x64/-/linux-x64-0.19.12.tgz#5f37cfdc705aea687dfe5dfbec086a05acfe9c78" + integrity sha512-B71g1QpxfwBvNrfyJdVDexenDIt1CiDN1TIXLbhOw0KhJzE78KIFGX6OJ9MrtC0oOqMWf+0xop4qEU8JrJTwCg== + "@esbuild/linux-x64@0.20.2": version "0.20.2" resolved "https://registry.npmjs.org/@esbuild/linux-x64/-/linux-x64-0.20.2.tgz#86eca35203afc0d9de0694c64ec0ab0a378f6fff" @@ -892,6 +977,11 @@ resolved "https://registry.npmjs.org/@esbuild/netbsd-x64/-/netbsd-x64-0.18.7.tgz#deb2956dc3e1b16eb451afb1701fa2b2e458fcd8" integrity sha512-f82sUnrzdoW4MiiCDn1G3RSsPH8+no+okDhkHgGTGa+5F5wZCyxdXxzR6ctsiimvyPn9FIu9Zs+MesVsBRwyTw== +"@esbuild/netbsd-x64@0.19.12": + version "0.19.12" + resolved "https://registry.npmjs.org/@esbuild/netbsd-x64/-/netbsd-x64-0.19.12.tgz#29da566a75324e0d0dd7e47519ba2f7ef168657b" + integrity sha512-3ltjQ7n1owJgFbuC61Oj++XhtzmymoCihNFgT84UAmJnxJfm4sYCiSLTXZtE00VWYpPMYc+ZQmB6xbSdVh0JWA== + "@esbuild/netbsd-x64@0.20.2": version "0.20.2" resolved "https://registry.npmjs.org/@esbuild/netbsd-x64/-/netbsd-x64-0.20.2.tgz#e771c8eb0e0f6e1877ffd4220036b98aed5915e6" @@ -907,6 +997,11 @@ resolved "https://registry.npmjs.org/@esbuild/openbsd-x64/-/openbsd-x64-0.18.7.tgz#6433ca91a6826f76b779f454fff97159f738b823" integrity sha512-1TNDfpFYhIloHeqSRbJFjHFMYtTJWgqI2+S9uCLVCWrADLl5tCe8vQKDfkM7Afz/lZyqi6qEX/Eg2KA5S7FcNQ== +"@esbuild/openbsd-x64@0.19.12": + version "0.19.12" + resolved "https://registry.npmjs.org/@esbuild/openbsd-x64/-/openbsd-x64-0.19.12.tgz#306c0acbdb5a99c95be98bdd1d47c916e7dc3ff0" + integrity sha512-RbrfTB9SWsr0kWmb9srfF+L933uMDdu9BIzdA7os2t0TXhCRjrQyCeOt6wVxr79CKD4c+p+YhCj31HBkYcXebw== + "@esbuild/openbsd-x64@0.20.2": version "0.20.2" resolved "https://registry.npmjs.org/@esbuild/openbsd-x64/-/openbsd-x64-0.20.2.tgz#9a795ae4b4e37e674f0f4d716f3e226dd7c39baf" @@ -922,6 +1017,11 @@ resolved "https://registry.npmjs.org/@esbuild/sunos-x64/-/sunos-x64-0.18.7.tgz#a79c5f91896cf787e8ee4c11787c148482a18531" integrity sha512-lBhsHaM6EYCmzQCj+xeFev+dgqTgpSRqF7qXrxp5V4waFuidTBbWgqSXY5rsLRNLOyMMCh1cA+RqF8UL30oOJQ== +"@esbuild/sunos-x64@0.19.12": + version "0.19.12" + resolved "https://registry.npmjs.org/@esbuild/sunos-x64/-/sunos-x64-0.19.12.tgz#0933eaab9af8b9b2c930236f62aae3fc593faf30" + integrity sha512-HKjJwRrW8uWtCQnQOz9qcU3mUZhTUQvi56Q8DPTLLB+DawoiQdjsYq+j+D3s9I8VFtDr+F9CjgXKKC4ss89IeA== + "@esbuild/sunos-x64@0.20.2": version "0.20.2" resolved "https://registry.npmjs.org/@esbuild/sunos-x64/-/sunos-x64-0.20.2.tgz#7df23b61a497b8ac189def6e25a95673caedb03f" @@ -937,6 +1037,11 @@ resolved "https://registry.npmjs.org/@esbuild/win32-arm64/-/win32-arm64-0.18.7.tgz#b5cb3c6c349ce4ece2e01fefe3e6cce464d39050" integrity sha512-p9ipv7rPKitXAAeufg5BzmyYZHZtFfrLGUX15+AxpTQqSZDAZd2wIusaOW5oONTf8RB53ujIqQw7W0QnZMuiUw== +"@esbuild/win32-arm64@0.19.12": + version "0.19.12" + resolved "https://registry.npmjs.org/@esbuild/win32-arm64/-/win32-arm64-0.19.12.tgz#773bdbaa1971b36db2f6560088639ccd1e6773ae" + integrity sha512-URgtR1dJnmGvX864pn1B2YUYNzjmXkuJOIqG2HdU62MVS4EHpU2946OZoTMnRUHklGtJdJZ33QfzdjGACXhn1A== + "@esbuild/win32-arm64@0.20.2": version "0.20.2" resolved "https://registry.npmjs.org/@esbuild/win32-arm64/-/win32-arm64-0.20.2.tgz#f1ae5abf9ca052ae11c1bc806fb4c0f519bacf90" @@ -952,6 +1057,11 @@ resolved "https://registry.npmjs.org/@esbuild/win32-ia32/-/win32-ia32-0.18.7.tgz#9e904fbc6d80ea7cf91bc84e72535d6926c2ba66" integrity sha512-WmNxuE+j1wUT2rK+e1Oakx3zobS1rPpQudPytGM4nxXEGv0gpXEvnZnrykRwriNFbGVCwFJoE4txayjW76LsCw== +"@esbuild/win32-ia32@0.19.12": + version "0.19.12" + resolved "https://registry.npmjs.org/@esbuild/win32-ia32/-/win32-ia32-0.19.12.tgz#000516cad06354cc84a73f0943a4aa690ef6fd67" + integrity sha512-+ZOE6pUkMOJfmxmBZElNOx72NKpIa/HFOMGzu8fqzQJ5kgf6aTGrcJaFsNiVMH4JKpMipyK+7k0n2UXN7a8YKQ== + "@esbuild/win32-ia32@0.20.2": version "0.20.2" resolved "https://registry.npmjs.org/@esbuild/win32-ia32/-/win32-ia32-0.20.2.tgz#241fe62c34d8e8461cd708277813e1d0ba55ce23" @@ -967,6 +1077,11 @@ resolved "https://registry.npmjs.org/@esbuild/win32-x64/-/win32-x64-0.18.7.tgz#d84f17fdeb3ebd595684f6cf29e76bf734a32533" integrity sha512-6RENfAwwL6dxQk/V1PxO/ejYRiOUVUaHi99hP3Dso/38jfNKFzU6YSSR/haJGNV/2wAHIgBMROQodna0IejAuA== +"@esbuild/win32-x64@0.19.12": + version "0.19.12" + resolved "https://registry.npmjs.org/@esbuild/win32-x64/-/win32-x64-0.19.12.tgz#c57c8afbb4054a3ab8317591a0b7320360b444ae" + integrity sha512-T1QyPSDCyMXaO3pzBkF96E8xMkiRYbUEZADd29SyPGabqxMViNoii+NcK7eWJAEoU6RZyEm5lVSIjTmcdoB9HA== + "@esbuild/win32-x64@0.20.2": version "0.20.2" resolved "https://registry.npmjs.org/@esbuild/win32-x64/-/win32-x64-0.20.2.tgz#9c907b21e30a52db959ba4f80bb01a0cc403d5cc" @@ -2094,6 +2209,13 @@ bundle-name@^3.0.0: dependencies: run-applescript "^5.0.0" +bundle-require@^4.0.1: + version "4.0.2" + resolved "https://registry.npmjs.org/bundle-require/-/bundle-require-4.0.2.tgz#65fc74ff14eabbba36d26c9a6161bd78fff6b29e" + integrity sha512-jwzPOChofl67PSTW2SGubV9HBQAhhR2i6nskiOThauo9dzwDUgOWQScFVaJkjEfYX+UXiD+LEx8EblQMc2wIag== + dependencies: + load-tsconfig "^0.2.3" + c12@^1.10.0: version "1.10.0" resolved "https://registry.npmjs.org/c12/-/c12-1.10.0.tgz#e1936baa26fd03a9427875554aa6aeb86077b7fb" @@ -2639,6 +2761,11 @@ detect-libc@^2.0.0: resolved "https://registry.npmjs.org/detect-libc/-/detect-libc-2.0.3.tgz#f0cd503b40f9939b894697d19ad50895e30cf700" integrity sha512-bwy0MGW55bG41VqxxypOsdSdGqLwXPI/focwgTYCFMbdUiBAxLg9CFzG08sz2aqzknwiX7Hkl0bQENjg8iLByw== +devalue@^4.3.2: + version "4.3.2" + resolved "https://registry.npmjs.org/devalue/-/devalue-4.3.2.tgz#cc44e4cf3872ac5a78229fbce3b77e57032727b5" + integrity sha512-KqFl6pOgOW+Y6wJgu80rHpo2/3H07vr8ntR9rkkFIRETewbf5GaYYcakYfiKz89K+sLsuPkQIZaXDMjUObZwWg== + devlop@^1.0.0, devlop@^1.1.0: version "1.1.0" resolved "https://registry.npmjs.org/devlop/-/devlop-1.1.0.tgz#4db7c2ca4dc6e0e834c30be70c94bbc976dc7018" @@ -2818,6 +2945,35 @@ esbuild@^0.18.20: "@esbuild/win32-ia32" "0.18.20" "@esbuild/win32-x64" "0.18.20" +esbuild@^0.19.1: + version "0.19.12" + resolved "https://registry.npmjs.org/esbuild/-/esbuild-0.19.12.tgz#dc82ee5dc79e82f5a5c3b4323a2a641827db3e04" + integrity sha512-aARqgq8roFBj054KvQr5f1sFu0D65G+miZRCuJyJ0G13Zwx7vRar5Zhn2tkQNzIXcBrNVsv/8stehpj+GAjgbg== + optionalDependencies: + "@esbuild/aix-ppc64" "0.19.12" + "@esbuild/android-arm" "0.19.12" + "@esbuild/android-arm64" "0.19.12" + "@esbuild/android-x64" "0.19.12" + "@esbuild/darwin-arm64" "0.19.12" + "@esbuild/darwin-x64" "0.19.12" + "@esbuild/freebsd-arm64" "0.19.12" + "@esbuild/freebsd-x64" "0.19.12" + "@esbuild/linux-arm" "0.19.12" + "@esbuild/linux-arm64" "0.19.12" + "@esbuild/linux-ia32" "0.19.12" + "@esbuild/linux-loong64" "0.19.12" + "@esbuild/linux-mips64el" "0.19.12" + "@esbuild/linux-ppc64" "0.19.12" + "@esbuild/linux-riscv64" "0.19.12" + "@esbuild/linux-s390x" "0.19.12" + "@esbuild/linux-x64" "0.19.12" + "@esbuild/netbsd-x64" "0.19.12" + "@esbuild/openbsd-x64" "0.19.12" + "@esbuild/sunos-x64" "0.19.12" + "@esbuild/win32-arm64" "0.19.12" + "@esbuild/win32-ia32" "0.19.12" + "@esbuild/win32-x64" "0.19.12" + esbuild@^0.20.1, esbuild@^0.20.2: version "0.20.2" resolved "https://registry.npmjs.org/esbuild/-/esbuild-0.20.2.tgz#9d6b2386561766ee6b5a55196c6d766d28c87ea1" @@ -3840,6 +3996,11 @@ listhen@^1.7.2: untun "^0.1.3" uqr "^0.1.2" +load-tsconfig@^0.2.3: + version "0.2.5" + resolved "https://registry.npmjs.org/load-tsconfig/-/load-tsconfig-0.2.5.tgz#453b8cd8961bfb912dea77eb6c168fe8cca3d3a1" + integrity sha512-IXO6OCs9yg8tMKzfPZ1YmheJbZCiEsnBdcB03l0OcfK9prKnJb96siuHCr5Fl37/yo9DnKU+TLpxzTUspw9shg== + local-pkg@^0.5.0: version "0.5.0" resolved "https://registry.npmjs.org/local-pkg/-/local-pkg-0.5.0.tgz#093d25a346bae59a99f80e75f6e9d36d7e8c925c" @@ -3909,7 +4070,7 @@ lz-string@^1.4.4: resolved "https://registry.npmjs.org/lz-string/-/lz-string-1.5.0.tgz#c1ab50f77887b712621201ba9fd4e3a6ed099941" integrity sha512-h5bgJWpxJNswbU7qCrV0tIKQCaS3blPDrqKWx+QxzuzL1zGUzij9XCWLrSLsJPu5t+eWA/ycetzYAO5IOMcWAQ== -magic-string@^0.30.0, magic-string@^0.30.3, magic-string@^0.30.5, magic-string@^0.30.8: +magic-string@^0.30.0, magic-string@^0.30.2, magic-string@^0.30.3, magic-string@^0.30.5, magic-string@^0.30.8: version "0.30.8" resolved "https://registry.npmjs.org/magic-string/-/magic-string-0.30.8.tgz#14e8624246d2bedba70d5462aa99ac9681844613" integrity sha512-ISQTe55T2ao7XtlAStud6qwYPZjE4GK1S/BeVPus4jrq6JuOnQ00YKQC581RWhR122W7msZV263KzVeLoqidyQ== @@ -6722,6 +6883,16 @@ vinxi@^0.3.11: vite "^5.1.4" zod "^3.22.2" +vite-plugin-compile-time@0.2.1: + version "0.2.1" + resolved "https://registry.npmjs.org/vite-plugin-compile-time/-/vite-plugin-compile-time-0.2.1.tgz#5c9965ba9bf8278fbfbee107830a298918aeb518" + integrity sha512-lRuoSO2wg2r0rWPLo9aeOH3s70FcuQZIhvcR7yGubbezFVsebljWf9Vtk/TlvuvBLLahfnEUyeV2FQM2sj2EYQ== + dependencies: + bundle-require "^4.0.1" + devalue "^4.3.2" + esbuild "^0.19.1" + magic-string "^0.30.2" + vite-plugin-inspect@^0.7.33: version "0.7.42" resolved "https://registry.npmjs.org/vite-plugin-inspect/-/vite-plugin-inspect-0.7.42.tgz#e055ad2ff82f3eca2f101fcfb29b5fabfe1e7366"